@elastic/eui 70.4.0 → 71.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 (572) hide show
  1. package/dist/eui_charts_theme.js +10673 -5106
  2. package/dist/eui_charts_theme.js.map +1 -1
  3. package/dist/eui_theme_dark.css +10 -715
  4. package/dist/eui_theme_dark.json +2 -161
  5. package/dist/eui_theme_dark.json.d.ts +0 -159
  6. package/dist/eui_theme_dark.min.css +1 -1
  7. package/dist/eui_theme_light.css +10 -715
  8. package/dist/eui_theme_light.json +2 -161
  9. package/dist/eui_theme_light.json.d.ts +0 -159
  10. package/dist/eui_theme_light.min.css +1 -1
  11. package/es/components/avatar/avatar.js +1 -1
  12. package/es/components/badge/badge.js +1 -1
  13. package/es/components/badge/badge.styles.js +2 -2
  14. package/es/components/badge/beta_badge/beta_badge.js +1 -1
  15. package/es/components/basic_table/basic_table.js +1 -1
  16. package/es/components/basic_table/collapsed_item_actions.js +1 -1
  17. package/es/components/basic_table/in_memory_table.js +14 -6
  18. package/es/components/breadcrumbs/breadcrumb.js +2 -1
  19. package/es/components/breadcrumbs/breadcrumb.styles.js +3 -3
  20. package/es/components/breadcrumbs/breadcrumbs.a11y.js +58 -0
  21. package/es/components/button/_button_content_deprecated.js +1 -1
  22. package/es/components/button/button_display/_button_display.js +1 -1
  23. package/es/components/button/button_display/_button_display.styles.js +2 -2
  24. package/es/components/button/button_display/_button_display_content.js +1 -1
  25. package/es/components/button/button_empty/button_empty.js +1 -1
  26. package/es/components/button/button_group/button_group.js +1 -1
  27. package/es/components/button/button_group/button_group_button.js +1 -1
  28. package/es/components/button/button_icon/button_icon.js +1 -1
  29. package/es/components/call_out/call_out.js +1 -1
  30. package/es/components/card/card.a11y.js +154 -0
  31. package/es/components/card/card.js +1 -1
  32. package/es/components/code/code.styles.js +2 -1
  33. package/es/components/code/code_block_virtualized.js +30 -12
  34. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  35. package/es/components/color_picker/color_picker.a11y.js +73 -0
  36. package/es/components/color_picker/color_stops/color_stops.js +23 -21
  37. package/es/components/combo_box/combo_box.a11y.js +112 -0
  38. package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +1 -1
  39. package/es/components/comment_list/comment.js +2 -2
  40. package/es/components/comment_list/comment_event.js +1 -1
  41. package/es/components/comment_list/comment_list.js +2 -2
  42. package/es/components/comment_list/comment_timeline.js +1 -1
  43. package/es/components/control_bar/control_bar.a11y.js +143 -0
  44. package/es/components/copy/copy.a11y.js +73 -0
  45. package/es/components/datagrid/body/data_grid_body.js +13 -13
  46. package/es/components/datagrid/body/data_grid_cell.js +24 -24
  47. package/es/components/datagrid/body/header/data_grid_header_cell.js +12 -12
  48. package/es/components/datagrid/body/header/data_grid_header_row.js +13 -13
  49. package/es/components/datagrid/controls/column_sorting_draggable.js +1 -1
  50. package/es/components/datagrid/data_grid.js +13 -13
  51. package/es/components/datagrid/utils/in_memory.js +12 -12
  52. package/es/components/date_picker/date_picker.js +2 -2
  53. package/es/components/date_picker/date_picker_range.js +1 -1
  54. package/es/components/drag_and_drop/drag_and_drop.a11y.js +114 -0
  55. package/es/components/empty_prompt/empty_prompt.js +1 -1
  56. package/es/components/expression/expression.styles.js +3 -3
  57. package/es/components/facet/facet_button.js +1 -1
  58. package/es/components/form/field_number/field_number.js +1 -1
  59. package/es/components/form/field_text/field_text.js +2 -2
  60. package/es/components/form/form_control_layout/form_control_layout.js +2 -2
  61. package/es/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  62. package/es/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  63. package/es/components/form/range/dual_range.js +237 -189
  64. package/es/components/form/range/dual_range.styles.js +15 -0
  65. package/es/components/form/range/range.js +137 -92
  66. package/es/components/form/range/range.styles.js +98 -0
  67. package/es/components/form/range/range_draggable.js +23 -24
  68. package/es/components/form/range/range_draggable.styles.js +52 -0
  69. package/es/components/form/range/range_highlight.js +62 -29
  70. package/es/components/form/range/range_highlight.styles.js +34 -0
  71. package/es/components/form/range/range_input.js +18 -8
  72. package/es/components/form/range/range_input.styles.js +14 -0
  73. package/es/components/form/range/range_label.js +11 -6
  74. package/es/components/form/range/range_label.styles.js +20 -0
  75. package/es/components/form/range/range_levels.js +101 -93
  76. package/es/components/form/range/range_levels.styles.js +36 -0
  77. package/es/components/form/range/range_levels_colors.js +43 -0
  78. package/es/components/form/range/range_slider.js +28 -25
  79. package/es/components/form/range/range_slider.styles.js +28 -0
  80. package/es/components/form/range/range_thumb.js +7 -9
  81. package/es/components/form/range/range_thumb.styles.js +35 -0
  82. package/es/components/form/range/range_ticks.js +80 -76
  83. package/es/components/form/range/range_ticks.styles.js +83 -0
  84. package/es/components/form/range/range_tooltip.js +41 -45
  85. package/es/components/form/range/range_tooltip.styles.js +46 -0
  86. package/es/components/form/range/range_track.js +151 -155
  87. package/es/components/form/range/range_track.styles.js +19 -0
  88. package/es/components/form/range/range_wrapper.js +7 -11
  89. package/es/components/form/range/range_wrapper.styles.js +40 -0
  90. package/es/components/form/range/types.js +1 -0
  91. package/es/components/header/header_links/header_link.js +1 -1
  92. package/es/components/header/header_links/header_links.js +1 -1
  93. package/es/components/header/header_logo.js +1 -1
  94. package/es/components/icon/assets/article.js +43 -0
  95. package/es/components/icon/assets/discuss.js +41 -0
  96. package/es/components/icon/assets/dotInCircle.js +43 -0
  97. package/es/components/icon/assets/issue.js +51 -0
  98. package/es/components/icon/icon.js +1 -1
  99. package/es/components/icon/icon_map.js +3 -0
  100. package/es/components/key_pad_menu/key_pad_menu_item.js +1 -1
  101. package/es/components/list_group/list_group.js +2 -2
  102. package/es/components/list_group/list_group_item.js +2 -2
  103. package/es/components/list_group/list_group_item.styles.js +2 -2
  104. package/es/components/list_group/list_group_item_extra_action.js +1 -1
  105. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  106. package/es/components/loading/loading_logo.js +1 -1
  107. package/es/components/loading/loading_spinner.styles.js +8 -4
  108. package/es/components/markdown_editor/markdown_editor.js +2 -2
  109. package/es/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  110. package/es/components/markdown_editor/markdown_editor_footer.js +1 -1
  111. package/es/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  112. package/es/components/markdown_editor/markdown_format.styles.js +2 -2
  113. package/es/components/modal/modal.a11y.js +1 -1
  114. package/es/components/modal/modal_header.styles.js +2 -1
  115. package/es/components/notification/notification_event.js +2 -2
  116. package/es/components/notification/notification_event_meta.js +1 -1
  117. package/es/components/page/page_header/page_header_content.js +1 -1
  118. package/es/components/pagination/pagination.a11y.js +58 -0
  119. package/es/components/pagination/pagination_button.js +1 -1
  120. package/es/components/popover/popover_footer.styles.js +2 -2
  121. package/es/components/popover/popover_title.styles.js +2 -2
  122. package/es/components/selectable/selectable_list/selectable_list.js +1 -1
  123. package/es/components/selectable/selectable_list/selectable_list_item.js +1 -1
  124. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  125. package/es/components/side_nav/side_nav.a11y.js +323 -0
  126. package/es/components/suggest/suggest.js +1 -1
  127. package/es/components/suggest/suggest_item.js +1 -1
  128. package/es/components/table/table_header_button.js +1 -1
  129. package/es/components/text/text.styles.js +3 -1
  130. package/es/components/timeline/timeline_item_icon.js +1 -1
  131. package/es/components/toast/global_toast_list.js +1 -1
  132. package/es/components/toast/toast.js +1 -1
  133. package/es/components/token/token.styles.js +4 -2
  134. package/es/components/tool_tip/icon_tip.js +1 -1
  135. package/es/components/tool_tip/tool_tip.styles.js +3 -1
  136. package/es/global_styling/functions/index.js +1 -0
  137. package/es/global_styling/functions/logical_shorthands.js +179 -0
  138. package/es/global_styling/functions/logicals.js +61 -5
  139. package/es/global_styling/functions/logicals.json +12 -1
  140. package/es/services/theme/hooks.js +14 -17
  141. package/eui.d.ts +555 -319
  142. package/i18ntokens.json +16 -16
  143. package/lib/components/avatar/avatar.js +1 -1
  144. package/lib/components/badge/badge.js +1 -1
  145. package/lib/components/badge/badge.styles.js +1 -1
  146. package/lib/components/badge/beta_badge/beta_badge.js +1 -1
  147. package/lib/components/basic_table/basic_table.js +1 -1
  148. package/lib/components/basic_table/collapsed_item_actions.js +1 -1
  149. package/lib/components/basic_table/in_memory_table.js +14 -6
  150. package/lib/components/breadcrumbs/breadcrumb.js +2 -1
  151. package/lib/components/breadcrumbs/breadcrumb.styles.js +2 -2
  152. package/lib/components/breadcrumbs/breadcrumbs.a11y.js +65 -0
  153. package/lib/components/button/_button_content_deprecated.js +1 -1
  154. package/lib/components/button/button_display/_button_display.js +1 -1
  155. package/lib/components/button/button_display/_button_display.styles.js +1 -1
  156. package/lib/components/button/button_display/_button_display_content.js +1 -1
  157. package/lib/components/button/button_empty/button_empty.js +1 -1
  158. package/lib/components/button/button_group/button_group.js +1 -1
  159. package/lib/components/button/button_group/button_group_button.js +1 -1
  160. package/lib/components/button/button_icon/button_icon.js +1 -1
  161. package/lib/components/call_out/call_out.js +1 -1
  162. package/lib/components/card/card.a11y.js +159 -0
  163. package/lib/components/card/card.js +1 -1
  164. package/lib/components/code/code.styles.js +3 -1
  165. package/lib/components/code/code_block_virtualized.js +31 -12
  166. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  167. package/lib/components/color_picker/color_picker.a11y.js +73 -0
  168. package/lib/components/color_picker/color_stops/color_stops.js +23 -21
  169. package/lib/components/combo_box/combo_box.a11y.js +114 -0
  170. package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +1 -1
  171. package/lib/components/comment_list/comment.js +2 -2
  172. package/lib/components/comment_list/comment_event.js +1 -1
  173. package/lib/components/comment_list/comment_list.js +2 -2
  174. package/lib/components/comment_list/comment_timeline.js +1 -1
  175. package/lib/components/control_bar/control_bar.a11y.js +148 -0
  176. package/lib/components/copy/copy.a11y.js +78 -0
  177. package/lib/components/datagrid/body/data_grid_body.js +13 -13
  178. package/lib/components/datagrid/body/data_grid_cell.js +24 -24
  179. package/lib/components/datagrid/body/header/data_grid_header_cell.js +12 -12
  180. package/lib/components/datagrid/body/header/data_grid_header_row.js +13 -13
  181. package/lib/components/datagrid/controls/column_sorting_draggable.js +1 -1
  182. package/lib/components/datagrid/data_grid.js +13 -13
  183. package/lib/components/datagrid/utils/in_memory.js +12 -12
  184. package/lib/components/date_picker/date_picker.js +2 -2
  185. package/lib/components/date_picker/date_picker_range.js +1 -1
  186. package/lib/components/drag_and_drop/drag_and_drop.a11y.js +122 -0
  187. package/lib/components/empty_prompt/empty_prompt.js +1 -1
  188. package/lib/components/expression/expression.styles.js +2 -2
  189. package/lib/components/facet/facet_button.js +1 -1
  190. package/lib/components/form/field_number/field_number.js +1 -1
  191. package/lib/components/form/field_text/field_text.js +2 -2
  192. package/lib/components/form/form_control_layout/form_control_layout.js +2 -2
  193. package/lib/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  194. package/lib/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  195. package/lib/components/form/range/dual_range.js +245 -192
  196. package/lib/components/form/range/dual_range.styles.js +26 -0
  197. package/lib/components/form/range/range.js +143 -95
  198. package/lib/components/form/range/range.styles.js +135 -0
  199. package/lib/components/form/range/range_draggable.js +30 -23
  200. package/lib/components/form/range/range_draggable.styles.js +58 -0
  201. package/lib/components/form/range/range_highlight.js +72 -29
  202. package/lib/components/form/range/range_highlight.styles.js +54 -0
  203. package/lib/components/form/range/range_input.js +27 -8
  204. package/lib/components/form/range/range_input.styles.js +24 -0
  205. package/lib/components/form/range/range_label.js +12 -6
  206. package/lib/components/form/range/range_label.styles.js +32 -0
  207. package/lib/components/form/range/range_levels.js +106 -95
  208. package/lib/components/form/range/range_levels.styles.js +52 -0
  209. package/lib/components/form/range/range_levels_colors.js +60 -0
  210. package/lib/components/form/range/range_slider.js +31 -24
  211. package/lib/components/form/range/range_slider.styles.js +44 -0
  212. package/lib/components/form/range/range_thumb.js +9 -9
  213. package/lib/components/form/range/range_thumb.styles.js +40 -0
  214. package/lib/components/form/range/range_ticks.js +88 -78
  215. package/lib/components/form/range/range_ticks.styles.js +89 -0
  216. package/lib/components/form/range/range_tooltip.js +53 -49
  217. package/lib/components/form/range/range_tooltip.styles.js +61 -0
  218. package/lib/components/form/range/range_track.js +149 -156
  219. package/lib/components/form/range/range_track.styles.js +30 -0
  220. package/lib/components/form/range/range_wrapper.js +9 -11
  221. package/lib/components/form/range/range_wrapper.styles.js +43 -0
  222. package/lib/components/form/range/types.js +5 -0
  223. package/lib/components/header/header_links/header_link.js +1 -1
  224. package/lib/components/header/header_links/header_links.js +1 -1
  225. package/lib/components/header/header_logo.js +1 -1
  226. package/lib/components/icon/assets/article.js +50 -0
  227. package/lib/components/icon/assets/discuss.js +48 -0
  228. package/lib/components/icon/assets/dotInCircle.js +50 -0
  229. package/lib/components/icon/assets/issue.js +59 -0
  230. package/lib/components/icon/icon.js +1 -1
  231. package/lib/components/icon/icon_map.js +3 -0
  232. package/lib/components/icon/svgs/article.svg +10 -0
  233. package/lib/components/icon/svgs/discuss.svg +4 -0
  234. package/lib/components/icon/svgs/dotInCircle.svg +4 -0
  235. package/lib/components/key_pad_menu/key_pad_menu_item.js +1 -1
  236. package/lib/components/list_group/list_group.js +2 -2
  237. package/lib/components/list_group/list_group_item.js +2 -2
  238. package/lib/components/list_group/list_group_item.styles.js +1 -1
  239. package/lib/components/list_group/list_group_item_extra_action.js +1 -1
  240. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  241. package/lib/components/loading/loading_logo.js +1 -1
  242. package/lib/components/loading/loading_spinner.styles.js +7 -3
  243. package/lib/components/markdown_editor/markdown_editor.js +2 -2
  244. package/lib/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  245. package/lib/components/markdown_editor/markdown_editor_footer.js +1 -1
  246. package/lib/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  247. package/lib/components/markdown_editor/markdown_format.styles.js +1 -1
  248. package/lib/components/modal/modal.a11y.js +1 -1
  249. package/lib/components/modal/modal_header.styles.js +3 -1
  250. package/lib/components/notification/notification_event.js +2 -2
  251. package/lib/components/notification/notification_event_meta.js +1 -1
  252. package/lib/components/page/page_header/page_header_content.js +1 -1
  253. package/lib/components/pagination/pagination.a11y.js +60 -0
  254. package/lib/components/popover/popover_footer.styles.js +1 -1
  255. package/lib/components/popover/popover_title.styles.js +1 -1
  256. package/lib/components/selectable/selectable_list/selectable_list.js +1 -1
  257. package/lib/components/selectable/selectable_list/selectable_list_item.js +1 -1
  258. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  259. package/lib/components/side_nav/side_nav.a11y.js +328 -0
  260. package/lib/components/suggest/suggest.js +1 -1
  261. package/lib/components/suggest/suggest_item.js +1 -1
  262. package/lib/components/table/table_header_button.js +1 -1
  263. package/lib/components/text/text.styles.js +3 -1
  264. package/lib/components/timeline/timeline_item_icon.js +1 -1
  265. package/lib/components/toast/global_toast_list.js +1 -1
  266. package/lib/components/toast/toast.js +1 -1
  267. package/lib/components/token/token.styles.js +3 -1
  268. package/lib/components/tool_tip/icon_tip.js +1 -1
  269. package/lib/components/tool_tip/tool_tip.styles.js +3 -1
  270. package/lib/global_styling/functions/index.js +13 -0
  271. package/lib/global_styling/functions/logical_shorthands.js +187 -0
  272. package/lib/global_styling/functions/logicals.js +70 -11
  273. package/lib/global_styling/functions/logicals.json +12 -1
  274. package/lib/services/theme/hooks.js +14 -17
  275. package/optimize/es/components/badge/badge.styles.js +2 -2
  276. package/optimize/es/components/breadcrumbs/breadcrumb.js +2 -1
  277. package/optimize/es/components/breadcrumbs/breadcrumb.styles.js +3 -3
  278. package/optimize/es/components/breadcrumbs/breadcrumbs.a11y.js +58 -0
  279. package/optimize/es/components/button/button_display/_button_display.styles.js +2 -2
  280. package/optimize/es/components/card/card.a11y.js +144 -0
  281. package/optimize/es/components/code/code.styles.js +2 -1
  282. package/optimize/es/components/code/code_block_virtualized.js +26 -12
  283. package/optimize/es/components/color_picker/color_picker.a11y.js +63 -0
  284. package/optimize/es/components/color_picker/color_stops/color_stops.js +23 -21
  285. package/optimize/es/components/combo_box/combo_box.a11y.js +102 -0
  286. package/optimize/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +1 -1
  287. package/optimize/es/components/control_bar/control_bar.a11y.js +133 -0
  288. package/optimize/es/components/copy/copy.a11y.js +63 -0
  289. package/optimize/es/components/drag_and_drop/drag_and_drop.a11y.js +104 -0
  290. package/optimize/es/components/expression/expression.styles.js +3 -3
  291. package/optimize/es/components/form/range/dual_range.js +159 -151
  292. package/optimize/es/components/form/range/dual_range.styles.js +15 -0
  293. package/optimize/es/components/form/range/range.js +66 -57
  294. package/optimize/es/components/form/range/range.styles.js +98 -0
  295. package/optimize/es/components/form/range/range_draggable.js +23 -18
  296. package/optimize/es/components/form/range/range_draggable.styles.js +52 -0
  297. package/optimize/es/components/form/range/range_highlight.js +61 -24
  298. package/optimize/es/components/form/range/range_highlight.styles.js +34 -0
  299. package/optimize/es/components/form/range/range_input.js +13 -4
  300. package/optimize/es/components/form/range/range_input.styles.js +14 -0
  301. package/optimize/es/components/form/range/range_label.js +7 -5
  302. package/optimize/es/components/form/range/range_label.styles.js +20 -0
  303. package/optimize/es/components/form/range/range_levels.js +87 -66
  304. package/optimize/es/components/form/range/range_levels.styles.js +36 -0
  305. package/optimize/es/components/form/range/range_levels_colors.js +43 -0
  306. package/optimize/es/components/form/range/range_slider.js +24 -11
  307. package/optimize/es/components/form/range/range_slider.styles.js +28 -0
  308. package/optimize/es/components/form/range/range_thumb.js +7 -3
  309. package/optimize/es/components/form/range/range_thumb.styles.js +35 -0
  310. package/optimize/es/components/form/range/range_ticks.js +61 -52
  311. package/optimize/es/components/form/range/range_ticks.styles.js +83 -0
  312. package/optimize/es/components/form/range/range_tooltip.js +40 -37
  313. package/optimize/es/components/form/range/range_tooltip.styles.js +46 -0
  314. package/optimize/es/components/form/range/range_track.js +116 -131
  315. package/optimize/es/components/form/range/range_track.styles.js +19 -0
  316. package/optimize/es/components/form/range/range_wrapper.js +7 -4
  317. package/optimize/es/components/form/range/range_wrapper.styles.js +40 -0
  318. package/optimize/es/components/form/range/types.js +1 -0
  319. package/optimize/es/components/icon/assets/article.js +39 -0
  320. package/optimize/es/components/icon/assets/discuss.js +37 -0
  321. package/optimize/es/components/icon/assets/dotInCircle.js +39 -0
  322. package/optimize/es/components/icon/assets/issue.js +47 -0
  323. package/optimize/es/components/icon/icon_map.js +3 -0
  324. package/optimize/es/components/list_group/list_group_item.styles.js +2 -2
  325. package/optimize/es/components/loading/loading_spinner.styles.js +8 -4
  326. package/optimize/es/components/markdown_editor/markdown_editor.js +1 -1
  327. package/optimize/es/components/markdown_editor/markdown_format.styles.js +2 -2
  328. package/optimize/es/components/modal/modal.a11y.js +1 -1
  329. package/optimize/es/components/modal/modal_header.styles.js +2 -1
  330. package/optimize/es/components/pagination/pagination.a11y.js +48 -0
  331. package/optimize/es/components/popover/popover_footer.styles.js +2 -2
  332. package/optimize/es/components/popover/popover_title.styles.js +2 -2
  333. package/optimize/es/components/side_nav/side_nav.a11y.js +313 -0
  334. package/optimize/es/components/text/text.styles.js +3 -1
  335. package/optimize/es/components/token/token.styles.js +4 -2
  336. package/optimize/es/components/tool_tip/tool_tip.styles.js +3 -1
  337. package/optimize/es/global_styling/functions/index.js +1 -0
  338. package/optimize/es/global_styling/functions/logical_shorthands.js +169 -0
  339. package/optimize/es/global_styling/functions/logicals.js +47 -5
  340. package/optimize/es/global_styling/functions/logicals.json +12 -1
  341. package/optimize/es/services/theme/hooks.js +14 -17
  342. package/optimize/lib/components/badge/badge.styles.js +1 -1
  343. package/optimize/lib/components/breadcrumbs/breadcrumb.js +2 -1
  344. package/optimize/lib/components/breadcrumbs/breadcrumb.styles.js +2 -2
  345. package/optimize/lib/components/breadcrumbs/breadcrumbs.a11y.js +65 -0
  346. package/optimize/lib/components/button/button_display/_button_display.styles.js +1 -1
  347. package/optimize/lib/components/card/card.a11y.js +159 -0
  348. package/optimize/lib/components/code/code.styles.js +3 -1
  349. package/optimize/lib/components/code/code_block_virtualized.js +27 -19
  350. package/optimize/lib/components/color_picker/color_picker.a11y.js +71 -0
  351. package/optimize/lib/components/color_picker/color_stops/color_stops.js +23 -21
  352. package/optimize/lib/components/combo_box/combo_box.a11y.js +114 -0
  353. package/optimize/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +1 -1
  354. package/optimize/lib/components/control_bar/control_bar.a11y.js +148 -0
  355. package/optimize/lib/components/copy/copy.a11y.js +78 -0
  356. package/optimize/lib/components/drag_and_drop/drag_and_drop.a11y.js +122 -0
  357. package/optimize/lib/components/expression/expression.styles.js +2 -2
  358. package/optimize/lib/components/form/range/dual_range.js +165 -152
  359. package/optimize/lib/components/form/range/dual_range.styles.js +26 -0
  360. package/optimize/lib/components/form/range/range.js +71 -60
  361. package/optimize/lib/components/form/range/range.styles.js +135 -0
  362. package/optimize/lib/components/form/range/range_draggable.js +30 -17
  363. package/optimize/lib/components/form/range/range_draggable.styles.js +58 -0
  364. package/optimize/lib/components/form/range/range_highlight.js +71 -24
  365. package/optimize/lib/components/form/range/range_highlight.styles.js +54 -0
  366. package/optimize/lib/components/form/range/range_input.js +22 -4
  367. package/optimize/lib/components/form/range/range_input.styles.js +24 -0
  368. package/optimize/lib/components/form/range/range_label.js +8 -5
  369. package/optimize/lib/components/form/range/range_label.styles.js +32 -0
  370. package/optimize/lib/components/form/range/range_levels.js +94 -72
  371. package/optimize/lib/components/form/range/range_levels.styles.js +52 -0
  372. package/optimize/lib/components/form/range/range_levels_colors.js +60 -0
  373. package/optimize/lib/components/form/range/range_slider.js +28 -10
  374. package/optimize/lib/components/form/range/range_slider.styles.js +44 -0
  375. package/optimize/lib/components/form/range/range_thumb.js +9 -3
  376. package/optimize/lib/components/form/range/range_thumb.styles.js +40 -0
  377. package/optimize/lib/components/form/range/range_ticks.js +73 -57
  378. package/optimize/lib/components/form/range/range_ticks.styles.js +89 -0
  379. package/optimize/lib/components/form/range/range_tooltip.js +47 -38
  380. package/optimize/lib/components/form/range/range_tooltip.styles.js +61 -0
  381. package/optimize/lib/components/form/range/range_track.js +118 -139
  382. package/optimize/lib/components/form/range/range_track.styles.js +30 -0
  383. package/optimize/lib/components/form/range/range_wrapper.js +9 -4
  384. package/optimize/lib/components/form/range/range_wrapper.styles.js +43 -0
  385. package/optimize/lib/components/form/range/types.js +5 -0
  386. package/optimize/lib/components/icon/assets/article.js +49 -0
  387. package/optimize/lib/components/icon/assets/discuss.js +47 -0
  388. package/optimize/lib/components/icon/assets/dotInCircle.js +49 -0
  389. package/optimize/lib/components/icon/assets/issue.js +58 -0
  390. package/optimize/lib/components/icon/icon_map.js +3 -0
  391. package/optimize/lib/components/icon/svgs/article.svg +10 -0
  392. package/optimize/lib/components/icon/svgs/discuss.svg +4 -0
  393. package/optimize/lib/components/icon/svgs/dotInCircle.svg +4 -0
  394. package/optimize/lib/components/list_group/list_group_item.styles.js +1 -1
  395. package/optimize/lib/components/loading/loading_spinner.styles.js +7 -3
  396. package/optimize/lib/components/markdown_editor/markdown_editor.js +1 -1
  397. package/optimize/lib/components/markdown_editor/markdown_format.styles.js +1 -1
  398. package/optimize/lib/components/modal/modal.a11y.js +1 -1
  399. package/optimize/lib/components/modal/modal_header.styles.js +3 -1
  400. package/optimize/lib/components/pagination/pagination.a11y.js +60 -0
  401. package/optimize/lib/components/popover/popover_footer.styles.js +1 -1
  402. package/optimize/lib/components/popover/popover_title.styles.js +1 -1
  403. package/optimize/lib/components/side_nav/side_nav.a11y.js +328 -0
  404. package/optimize/lib/components/text/text.styles.js +3 -1
  405. package/optimize/lib/components/token/token.styles.js +3 -1
  406. package/optimize/lib/components/tool_tip/tool_tip.styles.js +3 -1
  407. package/optimize/lib/global_styling/functions/index.js +13 -0
  408. package/optimize/lib/global_styling/functions/logical_shorthands.js +184 -0
  409. package/optimize/lib/global_styling/functions/logicals.js +58 -11
  410. package/optimize/lib/global_styling/functions/logicals.json +12 -1
  411. package/optimize/lib/services/theme/hooks.js +14 -17
  412. package/package.json +3 -5
  413. package/src/components/color_picker/color_stops/_color_stops.scss +1 -1
  414. package/src/components/form/_index.scss +0 -1
  415. package/src/global_styling/mixins/_range.scss +41 -4
  416. package/src/global_styling/variables/_form.scss +2 -4
  417. package/src/themes/amsterdam/global_styling/mixins/_index.scss +1 -1
  418. package/src/themes/amsterdam/overrides/_color_stops.scss +1 -1
  419. package/src/themes/amsterdam/overrides/_index.scss +0 -9
  420. package/test-env/components/avatar/avatar.js +1 -1
  421. package/test-env/components/badge/badge.js +1 -1
  422. package/test-env/components/badge/badge.styles.js +1 -1
  423. package/test-env/components/badge/beta_badge/beta_badge.js +1 -1
  424. package/test-env/components/basic_table/basic_table.js +1 -1
  425. package/test-env/components/basic_table/collapsed_item_actions.js +1 -1
  426. package/test-env/components/basic_table/in_memory_table.js +14 -6
  427. package/test-env/components/breadcrumbs/breadcrumb.js +2 -1
  428. package/test-env/components/breadcrumbs/breadcrumb.styles.js +2 -2
  429. package/test-env/components/breadcrumbs/breadcrumbs.a11y.js +65 -0
  430. package/test-env/components/button/_button_content_deprecated.js +1 -1
  431. package/test-env/components/button/button_display/_button_display.js +1 -1
  432. package/test-env/components/button/button_display/_button_display.styles.js +1 -1
  433. package/test-env/components/button/button_display/_button_display_content.js +1 -1
  434. package/test-env/components/button/button_empty/button_empty.js +1 -1
  435. package/test-env/components/button/button_group/button_group.js +1 -1
  436. package/test-env/components/button/button_group/button_group_button.js +1 -1
  437. package/test-env/components/button/button_icon/button_icon.js +1 -1
  438. package/test-env/components/call_out/call_out.js +1 -1
  439. package/test-env/components/card/card.a11y.js +159 -0
  440. package/test-env/components/card/card.js +1 -1
  441. package/test-env/components/code/code.styles.js +3 -1
  442. package/test-env/components/code/code_block_virtualized.js +27 -19
  443. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +1 -1
  444. package/test-env/components/color_picker/color_picker.a11y.js +71 -0
  445. package/test-env/components/color_picker/color_stops/color_stops.js +23 -21
  446. package/test-env/components/combo_box/combo_box.a11y.js +114 -0
  447. package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +1 -1
  448. package/test-env/components/comment_list/comment.js +2 -2
  449. package/test-env/components/comment_list/comment_event.js +1 -1
  450. package/test-env/components/comment_list/comment_list.js +2 -2
  451. package/test-env/components/comment_list/comment_timeline.js +1 -1
  452. package/test-env/components/control_bar/control_bar.a11y.js +148 -0
  453. package/test-env/components/copy/copy.a11y.js +78 -0
  454. package/test-env/components/datagrid/body/data_grid_body.js +13 -13
  455. package/test-env/components/datagrid/body/data_grid_cell.js +24 -24
  456. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +12 -12
  457. package/test-env/components/datagrid/body/header/data_grid_header_row.js +13 -13
  458. package/test-env/components/datagrid/controls/column_sorting_draggable.js +1 -1
  459. package/test-env/components/datagrid/data_grid.js +13 -13
  460. package/test-env/components/datagrid/utils/in_memory.js +12 -12
  461. package/test-env/components/date_picker/date_picker.js +2 -2
  462. package/test-env/components/date_picker/date_picker_range.js +1 -1
  463. package/test-env/components/drag_and_drop/drag_and_drop.a11y.js +122 -0
  464. package/test-env/components/empty_prompt/empty_prompt.js +1 -1
  465. package/test-env/components/expression/expression.styles.js +2 -2
  466. package/test-env/components/facet/facet_button.js +1 -1
  467. package/test-env/components/form/field_number/field_number.js +1 -1
  468. package/test-env/components/form/field_text/field_text.js +2 -2
  469. package/test-env/components/form/form_control_layout/form_control_layout.js +2 -2
  470. package/test-env/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -1
  471. package/test-env/components/form/form_control_layout/form_control_layout_icons.js +2 -2
  472. package/test-env/components/form/range/dual_range.js +244 -190
  473. package/test-env/components/form/range/dual_range.styles.js +26 -0
  474. package/test-env/components/form/range/range.js +143 -95
  475. package/test-env/components/form/range/range.styles.js +135 -0
  476. package/test-env/components/form/range/range_draggable.js +30 -23
  477. package/test-env/components/form/range/range_draggable.styles.js +58 -0
  478. package/test-env/components/form/range/range_highlight.js +72 -29
  479. package/test-env/components/form/range/range_highlight.styles.js +54 -0
  480. package/test-env/components/form/range/range_input.js +27 -8
  481. package/test-env/components/form/range/range_input.styles.js +24 -0
  482. package/test-env/components/form/range/range_label.js +12 -6
  483. package/test-env/components/form/range/range_label.styles.js +32 -0
  484. package/test-env/components/form/range/range_levels.js +103 -83
  485. package/test-env/components/form/range/range_levels.styles.js +52 -0
  486. package/test-env/components/form/range/range_levels_colors.js +60 -0
  487. package/test-env/components/form/range/range_slider.js +31 -24
  488. package/test-env/components/form/range/range_slider.styles.js +44 -0
  489. package/test-env/components/form/range/range_thumb.js +9 -9
  490. package/test-env/components/form/range/range_thumb.styles.js +40 -0
  491. package/test-env/components/form/range/range_ticks.js +88 -78
  492. package/test-env/components/form/range/range_ticks.styles.js +89 -0
  493. package/test-env/components/form/range/range_tooltip.js +53 -49
  494. package/test-env/components/form/range/range_tooltip.styles.js +61 -0
  495. package/test-env/components/form/range/range_track.js +143 -151
  496. package/test-env/components/form/range/range_track.styles.js +30 -0
  497. package/test-env/components/form/range/range_wrapper.js +9 -11
  498. package/test-env/components/form/range/range_wrapper.styles.js +43 -0
  499. package/test-env/components/form/range/types.js +5 -0
  500. package/test-env/components/header/header_links/header_link.js +1 -1
  501. package/test-env/components/header/header_links/header_links.js +1 -1
  502. package/test-env/components/header/header_logo.js +1 -1
  503. package/test-env/components/icon/assets/article.js +49 -0
  504. package/test-env/components/icon/assets/discuss.js +47 -0
  505. package/test-env/components/icon/assets/dotInCircle.js +49 -0
  506. package/test-env/components/icon/assets/issue.js +58 -0
  507. package/test-env/components/icon/icon_map.js +3 -0
  508. package/test-env/components/key_pad_menu/key_pad_menu_item.js +1 -1
  509. package/test-env/components/list_group/list_group.js +2 -2
  510. package/test-env/components/list_group/list_group_item.js +2 -2
  511. package/test-env/components/list_group/list_group_item.styles.js +1 -1
  512. package/test-env/components/list_group/list_group_item_extra_action.js +1 -1
  513. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +4 -4
  514. package/test-env/components/loading/loading_logo.js +1 -1
  515. package/test-env/components/loading/loading_spinner.styles.js +7 -3
  516. package/test-env/components/markdown_editor/markdown_editor.js +2 -2
  517. package/test-env/components/markdown_editor/markdown_editor_drop_zone.js +1 -1
  518. package/test-env/components/markdown_editor/markdown_editor_footer.js +1 -1
  519. package/test-env/components/markdown_editor/markdown_editor_toolbar.js +1 -1
  520. package/test-env/components/markdown_editor/markdown_format.styles.js +1 -1
  521. package/test-env/components/modal/modal.a11y.js +1 -1
  522. package/test-env/components/modal/modal_header.styles.js +3 -1
  523. package/test-env/components/notification/notification_event.js +2 -2
  524. package/test-env/components/notification/notification_event_meta.js +1 -1
  525. package/test-env/components/page/page_header/page_header_content.js +1 -1
  526. package/test-env/components/pagination/pagination.a11y.js +60 -0
  527. package/test-env/components/popover/popover_footer.styles.js +1 -1
  528. package/test-env/components/popover/popover_title.styles.js +1 -1
  529. package/test-env/components/selectable/selectable_list/selectable_list.js +1 -1
  530. package/test-env/components/selectable/selectable_list/selectable_list_item.js +1 -1
  531. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +1 -1
  532. package/test-env/components/side_nav/side_nav.a11y.js +328 -0
  533. package/test-env/components/suggest/suggest.js +1 -1
  534. package/test-env/components/suggest/suggest_item.js +1 -1
  535. package/test-env/components/table/table_header_button.js +1 -1
  536. package/test-env/components/text/text.styles.js +3 -1
  537. package/test-env/components/timeline/timeline_item_icon.js +1 -1
  538. package/test-env/components/toast/global_toast_list.js +1 -1
  539. package/test-env/components/toast/toast.js +1 -1
  540. package/test-env/components/token/token.styles.js +3 -1
  541. package/test-env/components/tool_tip/icon_tip.js +1 -1
  542. package/test-env/components/tool_tip/tool_tip.styles.js +3 -1
  543. package/test-env/global_styling/functions/index.js +13 -0
  544. package/test-env/global_styling/functions/logical_shorthands.js +184 -0
  545. package/test-env/global_styling/functions/logicals.js +58 -11
  546. package/test-env/global_styling/functions/logicals.json +12 -1
  547. package/test-env/services/theme/hooks.js +14 -17
  548. package/src/components/form/range/_dual_range.scss +0 -7
  549. package/src/components/form/range/_index.scss +0 -13
  550. package/src/components/form/range/_range.scss +0 -7
  551. package/src/components/form/range/_range_draggable.scss +0 -35
  552. package/src/components/form/range/_range_highlight.scss +0 -25
  553. package/src/components/form/range/_range_input.scss +0 -10
  554. package/src/components/form/range/_range_label.scss +0 -18
  555. package/src/components/form/range/_range_levels.scss +0 -43
  556. package/src/components/form/range/_range_slider.scss +0 -133
  557. package/src/components/form/range/_range_thumb.scss +0 -19
  558. package/src/components/form/range/_range_ticks.scss +0 -88
  559. package/src/components/form/range/_range_tooltip.scss +0 -97
  560. package/src/components/form/range/_range_track.scss +0 -15
  561. package/src/components/form/range/_range_wrapper.scss +0 -20
  562. package/src/themes/amsterdam/global_styling/mixins/_range.scss +0 -57
  563. package/src/themes/amsterdam/overrides/_breadcrumbs.scss +0 -0
  564. package/src/themes/amsterdam/overrides/_range.scss +0 -3
  565. package/src/themes/amsterdam/overrides/_range_draggable.scss +0 -25
  566. package/src/themes/amsterdam/overrides/_range_highlight.scss +0 -31
  567. package/src/themes/amsterdam/overrides/_range_levels.scss +0 -32
  568. package/src/themes/amsterdam/overrides/_range_slider.scss +0 -54
  569. package/src/themes/amsterdam/overrides/_range_thumb.scss +0 -22
  570. package/src/themes/amsterdam/overrides/_range_ticks.scss +0 -42
  571. package/src/themes/amsterdam/overrides/_range_tooltip.scss +0 -3
  572. package/src/themes/amsterdam/overrides/_range_track.scss +0 -110
@@ -1,7 +1,13 @@
1
- var _excluded = ["className", "disabled", "id", "max", "min", "name", "step", "onChange", "tabIndex", "value", "style", "showTicks", "showRange", "hasFocus", "compressed"];
1
+ var _excluded = ["className", "disabled", "id", "max", "min", "name", "step", "onChange", "tabIndex", "value", "style", "showTicks", "showRange", "thumbColor"];
2
2
 
3
3
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
4
4
 
5
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
6
+
7
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
8
+
9
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
10
+
5
11
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
6
12
 
7
13
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
@@ -13,9 +19,13 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
13
19
  * in compliance with, at your election, the Elastic License 2.0 or the Server
14
20
  * Side Public License, v 1.
15
21
  */
16
- import React, { forwardRef } from 'react';
22
+ import React, { forwardRef, useMemo } from 'react';
17
23
  import PropTypes from "prop-types";
18
24
  import classNames from 'classnames';
25
+ import { useEuiTheme } from '../../../services';
26
+ import { logicalStyles } from '../../../global_styling';
27
+ import { euiRangeLevelColor } from './range_levels_colors';
28
+ import { euiRangeSliderStyles, euiRangeSliderThumbStyles } from './range_slider.styles';
19
29
  import { jsx as ___EmotionJSX } from "@emotion/react";
20
30
  export var EuiRangeSlider = /*#__PURE__*/forwardRef(function (_ref, ref) {
21
31
  var className = _ref.className,
@@ -31,49 +41,42 @@ export var EuiRangeSlider = /*#__PURE__*/forwardRef(function (_ref, ref) {
31
41
  style = _ref.style,
32
42
  showTicks = _ref.showTicks,
33
43
  showRange = _ref.showRange,
34
- hasFocus = _ref.hasFocus,
35
- compressed = _ref.compressed,
44
+ thumbColor = _ref.thumbColor,
36
45
  rest = _objectWithoutProperties(_ref, _excluded);
37
46
 
38
- var classes = classNames('euiRangeSlider', {
39
- 'euiRangeSlider--hasTicks': showTicks,
40
- 'euiRangeSlider--hasFocus': hasFocus,
41
- 'euiRangeSlider--hasRange': showRange,
42
- 'euiRangeSlider--compressed': compressed
43
- }, className);
47
+ var classes = classNames('euiRangeSlider', className);
48
+ var euiTheme = useEuiTheme();
49
+ var styles = euiRangeSliderStyles(euiTheme);
50
+ var thumbStyles = euiRangeSliderThumbStyles(euiTheme);
51
+ var cssStyles = [styles.euiRangeSlider, showTicks && styles.hasTicks, showRange && styles.hasRange, thumbColor && thumbStyles.thumb];
52
+ var sliderStyle = useMemo(function () {
53
+ return logicalStyles(_objectSpread({
54
+ color: thumbColor && euiRangeLevelColor(thumbColor, euiTheme.euiTheme)
55
+ }, style));
56
+ }, [thumbColor, euiTheme, style]);
44
57
  return ___EmotionJSX("input", _extends({
45
58
  ref: ref,
46
59
  type: "range",
47
60
  id: id,
48
61
  name: name,
49
62
  className: classes,
63
+ css: cssStyles,
50
64
  min: min,
51
65
  max: max,
52
66
  step: step,
53
67
  value: value,
54
68
  disabled: disabled,
55
69
  onChange: onChange,
56
- style: style,
70
+ style: sliderStyle,
57
71
  tabIndex: tabIndex
58
72
  }, rest));
59
73
  });
60
74
  EuiRangeSlider.propTypes = {
75
+ onChange: PropTypes.any,
76
+ thumbColor: PropTypes.oneOfType([PropTypes.any.isRequired, PropTypes.any.isRequired]),
61
77
  className: PropTypes.string,
62
78
  "aria-label": PropTypes.string,
63
79
  "data-test-subj": PropTypes.string,
64
- css: PropTypes.any,
65
- id: PropTypes.string,
66
- name: PropTypes.string,
67
- min: PropTypes.number.isRequired,
68
- max: PropTypes.number.isRequired,
69
- step: PropTypes.number,
70
- compressed: PropTypes.bool,
71
- isLoading: PropTypes.bool,
72
- hasFocus: PropTypes.bool,
73
- showRange: PropTypes.bool,
74
- showTicks: PropTypes.bool,
75
- disabled: PropTypes.bool,
76
- tabIndex: PropTypes.number,
77
- onChange: PropTypes.any
80
+ css: PropTypes.any
78
81
  };
79
82
  EuiRangeSlider.displayName = 'EuiRangeSlider';
@@ -0,0 +1,28 @@
1
+ /*
2
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
3
+ * or more contributor license agreements. Licensed under the Elastic License
4
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
5
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
6
+ * Side Public License, v 1.
7
+ */
8
+ import { css } from '@emotion/react';
9
+ import { transparentize } from '../../../services';
10
+ import { euiCustomControl } from '../form.styles';
11
+ import { euiRangeThumbStyle, euiRangeThumbPerBrowser, euiRangeVariables, euiRangeTrackPerBrowser, euiRangeThumbFocus } from './range.styles';
12
+ export var euiRangeSliderStyles = function euiRangeSliderStyles(euiThemeContext) {
13
+ var range = euiRangeVariables(euiThemeContext);
14
+ return {
15
+ // Base
16
+ euiRangeSlider: /*#__PURE__*/css("appearance:none;background:transparent;inline-size:100%;block-size:100%;position:relative;cursor:pointer;z-index:", range.thumbZIndex, ";", euiRangeThumbPerBrowser("\n ".concat(euiCustomControl(euiThemeContext, {
17
+ type: 'round'
18
+ }), ";\n ").concat(euiRangeThumbStyle(euiThemeContext), ";\n ")), " &:disabled{cursor:not-allowed;", euiRangeThumbPerBrowser('cursor: not-allowed'), ";}&::-webkit-slider-thumb{-webkit-appearance:none;}&:focus{outline:none;}&:focus-visible{", euiRangeThumbPerBrowser(euiRangeThumbFocus(euiThemeContext)), " &~.euiRangeTooltip .euiRangeTooltip__value{transform:translateX(0) translateY(-50%) scale(1.1);}};label:euiRangeSlider;"),
19
+ hasTicks: /*#__PURE__*/css("block-size:", range.thumbHeight, ";;label:hasTicks;"),
20
+ hasRange: /*#__PURE__*/css(euiRangeTrackPerBrowser("\n background-color: transparent;\n border-color: ".concat(transparentize(range.trackBorderColor, 0.6), ";\n ")), ";;label:hasRange;"),
21
+ hasLevels: /*#__PURE__*/css(euiRangeThumbPerBrowser("background-color: ".concat(range.thumbBackgroundColor)), ";;label:hasLevels;")
22
+ };
23
+ };
24
+ export var euiRangeSliderThumbStyles = function euiRangeSliderThumbStyles(euiThemeContext) {
25
+ return {
26
+ thumb: /*#__PURE__*/css(euiRangeThumbPerBrowser('background-color: currentcolor'), " &:focus-visible{", euiRangeThumbPerBrowser(euiRangeThumbFocus(euiThemeContext, 'currentcolor')), ";};label:thumb;")
27
+ };
28
+ };
@@ -16,6 +16,8 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
16
16
  import React from 'react';
17
17
  import PropTypes from "prop-types";
18
18
  import classNames from 'classnames';
19
+ import { useEuiTheme } from '../../../services';
20
+ import { euiRangeThumbStyles } from './range_thumb.styles';
19
21
  import { jsx as ___EmotionJSX } from "@emotion/react";
20
22
  export var EuiRangeThumb = function EuiRangeThumb(_ref) {
21
23
  var className = _ref.className,
@@ -30,11 +32,13 @@ export var EuiRangeThumb = function EuiRangeThumb(_ref) {
30
32
  tabIndex = _ref.tabIndex,
31
33
  rest = _objectWithoutProperties(_ref, _excluded);
32
34
 
33
- var classes = classNames('euiRangeThumb', {
34
- 'euiRangeThumb--hasTicks': showTicks
35
- }, className);
35
+ var classes = classNames('euiRangeThumb', className);
36
+ var euiTheme = useEuiTheme();
37
+ var styles = euiRangeThumbStyles(euiTheme);
38
+ var cssStyles = [styles.euiRangeThumb, showTicks && styles.hasTicks];
36
39
  var commonAttrs = {
37
40
  className: classes,
41
+ css: cssStyles,
38
42
  role: 'slider',
39
43
  'aria-valuemin': min,
40
44
  'aria-valuemax': max,
@@ -50,12 +54,6 @@ export var EuiRangeThumb = function EuiRangeThumb(_ref) {
50
54
  }, commonAttrs, rest)) : ___EmotionJSX("div", _extends({}, commonAttrs, rest));
51
55
  };
52
56
  EuiRangeThumb.propTypes = {
53
- min: PropTypes.number.isRequired,
54
- max: PropTypes.number.isRequired,
55
- value: PropTypes.oneOfType([PropTypes.number.isRequired, PropTypes.string.isRequired]),
56
- disabled: PropTypes.bool,
57
- showInput: PropTypes.bool,
58
- showTicks: PropTypes.bool,
59
57
  className: PropTypes.string,
60
58
  "aria-label": PropTypes.string,
61
59
  "data-test-subj": PropTypes.string,
@@ -0,0 +1,35 @@
1
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
2
+
3
+ /*
4
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
5
+ * or more contributor license agreements. Licensed under the Elastic License
6
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
7
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
8
+ * Side Public License, v 1.
9
+ */
10
+ import { css } from '@emotion/react';
11
+ import { mathWithUnits } from '../../../global_styling';
12
+ import { euiRangeThumbStyle, euiRangeThumbFocus, euiRangeVariables } from './range.styles';
13
+ import { euiCustomControl } from '../form.styles';
14
+
15
+ var _ref = process.env.NODE_ENV === "production" ? {
16
+ name: "9ugg7u-hasTicks",
17
+ styles: "inset-block-start:0;margin-block-start:0;label:hasTicks;"
18
+ } : {
19
+ name: "9ugg7u-hasTicks",
20
+ styles: "inset-block-start:0;margin-block-start:0;label:hasTicks;",
21
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
22
+ };
23
+
24
+ export var euiRangeThumbStyles = function euiRangeThumbStyles(euiThemeContext) {
25
+ var range = euiRangeVariables(euiThemeContext);
26
+ return {
27
+ // Base
28
+ euiRangeThumb: /*#__PURE__*/css(euiCustomControl(euiThemeContext, {
29
+ type: 'round'
30
+ }), ";", euiRangeThumbStyle(euiThemeContext), ";content:'';position:absolute;inset-inline-start:0;inset-block-start:50%;margin-block-start:", mathWithUnits(range.thumbHeight, function (x) {
31
+ return x / 2 * -1;
32
+ }), ";pointer-events:none;z-index:", range.thumbZIndex, ";&:focus{", euiRangeThumbFocus(euiThemeContext), ";outline:none;};label:euiRangeThumb;"),
33
+ hasTicks: _ref
34
+ };
35
+ };
@@ -12,6 +12,8 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
12
12
 
13
13
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
14
 
15
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
16
+
15
17
  /*
16
18
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
17
19
  * or more contributor license agreements. Licensed under the Elastic License
@@ -19,65 +21,72 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
19
21
  * in compliance with, at your election, the Elastic License 2.0 or the Server
20
22
  * Side Public License, v 1.
21
23
  */
22
- import React from 'react';
24
+ import React, { useMemo } from 'react';
23
25
  import PropTypes from "prop-types";
24
- import classNames from 'classnames';
25
- import { calculateThumbPosition, EUI_THUMB_SIZE } from './utils';
26
+ import { useEuiTheme } from '../../../services';
27
+ import { logicalStyles } from '../../../global_styling';
26
28
  import { useInnerText } from '../../inner_text';
29
+ import { calculateThumbPosition, EUI_THUMB_SIZE } from './utils';
30
+ import { euiRangeTicksStyles, euiRangeTickStyles } from './range_ticks.styles';
27
31
  import { jsx as ___EmotionJSX } from "@emotion/react";
28
32
 
29
33
  var EuiTickValue = function EuiTickValue(_ref) {
30
34
  var disabled = _ref.disabled,
31
- customTicks = _ref.ticks,
35
+ ticks = _ref.ticks,
32
36
  min = _ref.min,
33
37
  max = _ref.max,
34
38
  value = _ref.value,
35
39
  onChange = _ref.onChange,
36
40
  percentageWidth = _ref.percentageWidth,
37
41
  tickValue = _ref.tickValue,
38
- ticksRef = _ref.ticksRef;
39
- var tickStyle = {};
40
- var tickObject = customTicks ? customTicks.find(function (o) {
41
- return o.value === tickValue;
42
- }) : {
43
- value: tickValue,
44
- label: tickValue
45
- };
42
+ compressed = _ref.compressed,
43
+ trackWidth = _ref.trackWidth;
44
+ var euiTheme = useEuiTheme();
45
+ var hasCustomTicks = !!ticks;
46
+ var tickObject = useMemo(function () {
47
+ return hasCustomTicks ? ticks.find(function (o) {
48
+ return o.value === tickValue;
49
+ }) : {
50
+ value: tickValue,
51
+ label: tickValue
52
+ };
53
+ }, [hasCustomTicks, ticks, tickValue]);
46
54
  var isMinTick = (tickObject === null || tickObject === void 0 ? void 0 : tickObject.value) === min;
47
55
  var isMaxTick = (tickObject === null || tickObject === void 0 ? void 0 : tickObject.value) === max;
48
56
  var label = tickObject ? tickObject.label : tickValue; // Math worked out by trial and error
49
57
  // Shifts the label into the reserved margin of EuiRangeTrack
50
58
 
51
- var labelShiftVal = (isMinTick || isMaxTick) && label.length > 3 ? Math.min(label.length * 0.25, 1.25) : 0;
52
-
53
- if (isMaxTick && !!labelShiftVal) {
54
- tickStyle.right = '0%';
55
- } else {
56
- var _ticksRef$current$cli, _ticksRef$current;
57
-
58
- var trackWidth = (_ticksRef$current$cli = (_ticksRef$current = ticksRef.current) === null || _ticksRef$current === void 0 ? void 0 : _ticksRef$current.clientWidth) !== null && _ticksRef$current$cli !== void 0 ? _ticksRef$current$cli : 0;
59
- var position = calculateThumbPosition(tickValue, min, max, trackWidth);
60
- var thumbOffset = labelShiftVal ? 0 : EUI_THUMB_SIZE / 2;
61
- tickStyle.left = "calc(".concat(position, "% + ").concat(thumbOffset, "px)");
62
- }
63
-
64
- tickStyle.maxWidth = customTicks ? undefined : "".concat(percentageWidth, "%");
65
- var pseudoShift = {};
66
-
67
- if (labelShiftVal) {
68
- var labelShift = isMaxTick ? 'marginRight' : 'marginLeft';
69
- tickStyle[labelShift] = "-".concat(labelShiftVal, "em");
70
- pseudoShift[labelShift] = "calc(".concat(labelShiftVal, "em + 4px)"); // 4px derived from .euiRangeTicks left/right offset
71
- }
59
+ var labelShiftVal = useMemo(function () {
60
+ return (isMinTick || isMaxTick) && label.length > 3 ? Math.min(label.length * 0.25, 1.25) : 0;
61
+ }, [isMinTick, isMaxTick, label]);
62
+ var tickStyle = useMemo(function () {
63
+ var styles = {};
64
+ var shift = "-".concat(labelShiftVal, "em");
65
+
66
+ if (isMaxTick && labelShiftVal) {
67
+ styles.right = '0%';
68
+ styles.marginRight = shift;
69
+ } else {
70
+ var position = calculateThumbPosition(tickValue, min, max, trackWidth);
71
+ var thumbOffset = labelShiftVal ? 0 : EUI_THUMB_SIZE / 2;
72
+ styles.left = "calc(".concat(position, "% + ").concat(thumbOffset, "px)");
73
+ if (labelShiftVal) styles.marginLeft = shift;
74
+ }
75
+
76
+ styles.maxWidth = hasCustomTicks ? undefined : "".concat(percentageWidth, "%");
77
+ return logicalStyles(styles);
78
+ }, [isMaxTick, labelShiftVal, trackWidth, tickValue, min, max, hasCustomTicks, percentageWidth]); // Some ticks need an actual DOM element instead of using a ::before
72
79
 
73
80
  var pseudoTick = tickObject && !!labelShiftVal && (isMinTick || isMaxTick);
74
- var tickClasses = classNames('euiRangeTick', {
75
- 'euiRangeTick--selected': value === tickValue,
76
- 'euiRangeTick--isCustom': customTicks,
77
- 'euiRangeTick--isMin': labelShiftVal && isMinTick,
78
- 'euiRangeTick--isMax': labelShiftVal && isMaxTick,
79
- 'euiRangeTick--hasTickMark': pseudoTick
80
- });
81
+ var pseudoShift = useMemo(function () {
82
+ if (!labelShiftVal) return {};
83
+ var marginProperty = isMaxTick ? 'marginRight' : 'marginLeft';
84
+ var tickOffset = euiTheme.euiTheme.size.xs; // xs derived from .euiRangeTicks left/right offset
85
+
86
+ return logicalStyles(_defineProperty({}, marginProperty, "calc(".concat(labelShiftVal, "em + ").concat(tickOffset, ")")));
87
+ }, [labelShiftVal, isMaxTick, euiTheme.euiTheme.size.xs]);
88
+ var styles = euiRangeTickStyles(euiTheme);
89
+ var cssTickStyles = [styles.euiRangeTick, value === String(tickValue) && styles.selected, hasCustomTicks && styles.isCustom, labelShiftVal && isMinTick && styles.isMin, labelShiftVal && isMaxTick && styles.isMax, !pseudoTick && styles.hasPseudoTickMark, compressed ? styles.compressed : styles.regular];
81
90
 
82
91
  var _useInnerText = useInnerText(),
83
92
  _useInnerText2 = _slicedToArray(_useInnerText, 2),
@@ -86,7 +95,8 @@ var EuiTickValue = function EuiTickValue(_ref) {
86
95
 
87
96
  return ___EmotionJSX("button", {
88
97
  type: "button",
89
- className: tickClasses,
98
+ className: "euiRangeTick",
99
+ css: cssTickStyles,
90
100
  value: tickValue,
91
101
  disabled: disabled,
92
102
  onClick: onChange,
@@ -96,25 +106,25 @@ var EuiTickValue = function EuiTickValue(_ref) {
96
106
  title: typeof label === 'string' ? label : innerText
97
107
  }, pseudoTick && ___EmotionJSX("span", {
98
108
  className: "euiRangeTick__pseudo",
109
+ css: styles.euiRangeTick__pseudo,
99
110
  "aria-hidden": true,
100
111
  style: pseudoShift
101
112
  }), label);
102
113
  };
103
114
 
104
115
  EuiTickValue.propTypes = {
105
- ticks: PropTypes.arrayOf(PropTypes.shape({
106
- value: PropTypes.number.isRequired,
107
- label: PropTypes.node.isRequired
108
- }).isRequired),
109
116
  tickSequence: PropTypes.arrayOf(PropTypes.number.isRequired).isRequired,
110
- value: PropTypes.oneOfType([PropTypes.number.isRequired, PropTypes.string.isRequired, PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string.isRequired, PropTypes.number.isRequired]).isRequired).isRequired]),
111
- min: PropTypes.number.isRequired,
112
- max: PropTypes.number.isRequired,
113
- compressed: PropTypes.bool,
114
- interval: PropTypes.number,
115
- disabled: PropTypes.bool,
117
+ trackWidth: PropTypes.number.isRequired,
116
118
  onChange: PropTypes.func,
117
- ticksRef: PropTypes.any.isRequired,
119
+ value: PropTypes.oneOfType([PropTypes.oneOfType([PropTypes.string.isRequired, PropTypes.number.isRequired]).isRequired, PropTypes.any.isRequired]),
120
+ max: PropTypes.number.isRequired,
121
+ min: PropTypes.number.isRequired,
122
+
123
+ /**
124
+ * The number to increment or decrement between each interval
125
+ * @default 1
126
+ */
127
+ step: PropTypes.number,
118
128
  tickValue: PropTypes.any.isRequired,
119
129
  percentageWidth: PropTypes.number.isRequired
120
130
  };
@@ -123,40 +133,34 @@ export var EuiRangeTicks = function EuiRangeTicks(props) {
123
133
  tickSequence = props.tickSequence,
124
134
  max = props.max,
125
135
  min = props.min,
126
- _props$interval = props.interval,
127
- interval = _props$interval === void 0 ? 1 : _props$interval,
128
- compressed = props.compressed;
129
- var ticksRef = React.useRef(null); // Calculate the width of each tick mark
130
-
131
- var percentageWidth = interval / (max - min + interval) * 100;
132
- var classes = classNames('euiRangeTicks', {
133
- 'euiRangeTicks--compressed': compressed,
134
- 'euiRangeTicks--isCustom': ticks
135
- });
136
+ _props$tickInterval = props.tickInterval,
137
+ tickInterval = _props$tickInterval === void 0 ? 1 : _props$tickInterval,
138
+ compressed = props.compressed; // Calculate the width of each tick mark
139
+
140
+ var percentageWidth = useMemo(function () {
141
+ return tickInterval / (max - min + tickInterval) * 100;
142
+ }, [tickInterval, min, max]);
143
+ var euiTheme = useEuiTheme();
144
+ var styles = euiRangeTicksStyles(euiTheme);
145
+ var cssStyles = [styles.euiRangeTicks, compressed ? styles.compressed : styles.regular, ticks && styles.isCustom];
136
146
  return ___EmotionJSX("div", {
137
- className: classes,
138
- ref: ticksRef
147
+ className: "euiRangeTicks",
148
+ css: cssStyles
139
149
  }, tickSequence.map(function (tickValue) {
140
150
  return ___EmotionJSX(EuiTickValue, _extends({
141
151
  key: tickValue
142
152
  }, props, {
143
153
  percentageWidth: percentageWidth,
144
- tickValue: tickValue,
145
- ticksRef: ticksRef
154
+ tickValue: tickValue
146
155
  }));
147
156
  }));
148
157
  };
149
158
  EuiRangeTicks.propTypes = {
150
- ticks: PropTypes.arrayOf(PropTypes.shape({
151
- value: PropTypes.number.isRequired,
152
- label: PropTypes.node.isRequired
153
- }).isRequired),
154
159
  tickSequence: PropTypes.arrayOf(PropTypes.number.isRequired).isRequired,
155
- value: PropTypes.oneOfType([PropTypes.number.isRequired, PropTypes.string.isRequired, PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string.isRequired, PropTypes.number.isRequired]).isRequired).isRequired]),
156
- min: PropTypes.number.isRequired,
160
+ trackWidth: PropTypes.number.isRequired,
161
+ onChange: PropTypes.func,
162
+ value: PropTypes.oneOfType([PropTypes.oneOfType([PropTypes.string.isRequired, PropTypes.number.isRequired]).isRequired, PropTypes.any.isRequired]),
157
163
  max: PropTypes.number.isRequired,
158
- compressed: PropTypes.bool,
159
- interval: PropTypes.number,
160
- disabled: PropTypes.bool,
161
- onChange: PropTypes.func
164
+ min: PropTypes.number.isRequired,
165
+ step: PropTypes.number
162
166
  };
@@ -0,0 +1,83 @@
1
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
2
+
3
+ /*
4
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
5
+ * or more contributor license agreements. Licensed under the Elastic License
6
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
7
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
8
+ * Side Public License, v 1.
9
+ */
10
+ import { css } from '@emotion/react';
11
+ import { logicalCSS, logicalSizeCSS, logicalCSSWithFallback, euiFontSize, mathWithUnits } from '../../../global_styling';
12
+ import { euiRangeVariables } from './range.styles';
13
+
14
+ var tickStyles = function tickStyles(_ref4, range) {
15
+ var euiTheme = _ref4.euiTheme;
16
+ return "\n position: absolute;\n ".concat(logicalCSS('top', 0), ";\n ").concat(logicalSizeCSS(euiTheme.size.xs, euiTheme.size.xs), ";\n background-color: ").concat(euiTheme.colors.lightShade, ";\n inline-size: ").concat(range.tickWidth, ";\n block-size: ").concat(range.tickHeight, ";\n border-radius: ").concat(euiTheme.border.radius.small, ";\n ");
17
+ };
18
+
19
+ var _ref3 = process.env.NODE_ENV === "production" ? {
20
+ name: "1sbhdc4-euiRangeTicks",
21
+ styles: "position:absolute;inset-inline:0;display:flex;label:euiRangeTicks;"
22
+ } : {
23
+ name: "1sbhdc4-euiRangeTicks",
24
+ styles: "position:absolute;inset-inline:0;display:flex;label:euiRangeTicks;",
25
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
26
+ };
27
+
28
+ export var euiRangeTicksStyles = function euiRangeTicksStyles(euiThemeContext) {
29
+ var range = euiRangeVariables(euiThemeContext);
30
+ return {
31
+ // Base
32
+ euiRangeTicks: _ref3,
33
+ isCustom: /*#__PURE__*/css("inset-inline:", mathWithUnits(range.thumbWidth, function (x) {
34
+ return x / 8;
35
+ }), ";;label:isCustom;"),
36
+ // compressed and non-compressed styles
37
+ regular: /*#__PURE__*/css("block-size:", mathWithUnits([range.height, range.thumbHeight], function (x, y) {
38
+ return x - y;
39
+ }), ";inset-block-start:", range.thumbHeight, ";;label:regular;"),
40
+ compressed: /*#__PURE__*/css("block-size:", mathWithUnits([range.compressedHeight, range.trackBottomPositionWithTicks], function (x, y) {
41
+ return x - y;
42
+ }), ";inset-block-start:", mathWithUnits([range.thumbHeight, range.trackHeight], function (x, y) {
43
+ return x - (x - y) / 2;
44
+ }), ";;label:compressed;")
45
+ };
46
+ };
47
+
48
+ var _ref = process.env.NODE_ENV === "production" ? {
49
+ name: "jgvly2-isMax",
50
+ styles: "transform:translateX(0);.euiRangeTick__pseudo{inset-inline-end:0;};label:isMax;"
51
+ } : {
52
+ name: "jgvly2-isMax",
53
+ styles: "transform:translateX(0);.euiRangeTick__pseudo{inset-inline-end:0;};label:isMax;",
54
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
55
+ };
56
+
57
+ var _ref2 = process.env.NODE_ENV === "production" ? {
58
+ name: "1nx14mu-isMin",
59
+ styles: "transform:translateX(0);.euiRangeTick__pseudo{inset-inline-start:0;};label:isMin;"
60
+ } : {
61
+ name: "1nx14mu-isMin",
62
+ styles: "transform:translateX(0);.euiRangeTick__pseudo{inset-inline-start:0;};label:isMin;",
63
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
64
+ };
65
+
66
+ export var euiRangeTickStyles = function euiRangeTickStyles(euiThemeContext) {
67
+ var euiTheme = euiThemeContext.euiTheme;
68
+ var range = euiRangeVariables(euiThemeContext);
69
+ return {
70
+ // Base
71
+ euiRangeTick: /*#__PURE__*/css(logicalCSSWithFallback('overflow-x', 'hidden'), " ", logicalCSSWithFallback('overflow-y', 'hidden'), " text-overflow:ellipsis;font-size:", euiFontSize(euiThemeContext, 'xs').fontSize, ";position:absolute;transform:translateX(-50%);&:disabled{cursor:not-allowed;}&:enabled:hover,&:focus{color:", range.focusColor, ";};label:euiRangeTick;"),
72
+ // compressed and non-compressed styles
73
+ compressed: /*#__PURE__*/css(logicalCSS('padding-top', euiTheme.size.s), ";&::before{", logicalCSS('margin-top', euiTheme.size.xxs), ";};label:compressed;"),
74
+ regular: /*#__PURE__*/css(logicalCSS('padding-top', euiTheme.size.m), ";;label:regular;"),
75
+ selected: /*#__PURE__*/css("font-weight:", euiTheme.font.weight.medium, ";color:", range.focusColor, ";;label:selected;"),
76
+ isCustom: /*#__PURE__*/css(logicalCSSWithFallback('overflow-x', 'hidden'), ";;label:isCustom;"),
77
+ // Tick marks can use either a ::before pseudo element or a span __pseudo node
78
+ hasPseudoTickMark: /*#__PURE__*/css("&::before{", tickStyles(euiThemeContext, range), " content:'';inset-inline-start:calc(50% - ", range.thumbBorderWidth, ");};label:hasPseudoTickMark;"),
79
+ euiRangeTick__pseudo: /*#__PURE__*/css(tickStyles(euiThemeContext, range), ";;label:euiRangeTick__pseudo;"),
80
+ isMin: _ref2,
81
+ isMax: _ref
82
+ };
83
+ };
@@ -5,9 +5,11 @@
5
5
  * in compliance with, at your election, the Elastic License 2.0 or the Server
6
6
  * Side Public License, v 1.
7
7
  */
8
- import React from 'react';
8
+ import React, { useMemo } from 'react';
9
9
  import PropTypes from "prop-types";
10
- import classNames from 'classnames';
10
+ import { useEuiTheme } from '../../../services';
11
+ import { logicalStyles } from '../../../global_styling';
12
+ import { euiRangeTooltipStyles, euiRangeTooltipValueStyles } from './range_tooltip.styles';
11
13
  import { jsx as ___EmotionJSX } from "@emotion/react";
12
14
  export var EuiRangeTooltip = function EuiRangeTooltip(_ref) {
13
15
  var value = _ref.value,
@@ -16,58 +18,52 @@ export var EuiRangeTooltip = function EuiRangeTooltip(_ref) {
16
18
  max = _ref.max,
17
19
  min = _ref.min,
18
20
  name = _ref.name,
19
- showTicks = _ref.showTicks,
20
- compressed = _ref.compressed;
21
- var classes = classNames('euiRangeTooltip', {
22
- 'euiRangeTooltip--compressed': compressed
23
- }); // Calculate the left position based on value
21
+ showTicks = _ref.showTicks;
22
+ // Calculate the left position based on value
23
+ var valuePosition = useMemo(function () {
24
+ var val = 0;
24
25
 
25
- var val = 0;
26
+ if (typeof value === 'number') {
27
+ val = value;
28
+ } else if (typeof value === 'string') {
29
+ val = parseFloat(value);
30
+ }
26
31
 
27
- if (typeof value === 'number') {
28
- val = value;
29
- } else if (typeof value === 'string') {
30
- val = parseFloat(value);
31
- }
32
+ var decimal = (val - min) / (max - min); // Must be between 0-100%
32
33
 
33
- var decimal = (val - min) / (max - min); // Must be between 0-100%
34
+ var valuePosition = decimal <= 1 ? decimal : 1;
35
+ return valuePosition >= 0 ? valuePosition : 0;
36
+ }, [value, min, max]); // Change left/right position based on value (half way point)
34
37
 
35
- var valuePosition = decimal <= 1 ? decimal : 1;
36
- valuePosition = valuePosition >= 0 ? valuePosition : 0;
37
- var valuePositionSide;
38
- var valuePositionStyle;
39
-
40
- if (valuePosition > 0.5) {
41
- valuePositionSide = 'left';
42
- valuePositionStyle = {
43
- right: "".concat((1 - valuePosition) * 100, "%")
44
- };
45
- } else {
46
- valuePositionSide = 'right';
47
- valuePositionStyle = {
48
- left: "".concat(valuePosition * 100, "%")
49
- };
50
- } // Change left/right position based on value (half way point)
51
-
52
-
53
- var valueClasses = classNames('euiRangeTooltip__value', "euiRangeTooltip__value--".concat(valuePositionSide), {
54
- 'euiRangeTooltip__value--hasTicks': showTicks
55
- });
38
+ var valuePositionSide = useMemo(function () {
39
+ return valuePosition > 0.5 ? 'left' : 'right';
40
+ }, [valuePosition]);
41
+ var valuePositionStyle = useMemo(function () {
42
+ if (valuePositionSide === 'left') {
43
+ return logicalStyles({
44
+ right: "".concat((1 - valuePosition) * 100, "%")
45
+ });
46
+ } else if (valuePositionSide === 'right') {
47
+ return logicalStyles({
48
+ left: "".concat(valuePosition * 100, "%")
49
+ });
50
+ }
51
+ }, [valuePosition, valuePositionSide]);
52
+ var euiTheme = useEuiTheme();
53
+ var styles = euiRangeTooltipStyles(euiTheme);
54
+ var cssStyles = [styles.euiRangeTooltip];
55
+ var valueStyles = euiRangeTooltipValueStyles(euiTheme);
56
+ var cssValueStyles = [valueStyles.euiRangeTooltip__value, valueStyles[valuePositionSide], showTicks && valueStyles.hasTicks];
56
57
  return ___EmotionJSX("div", {
57
- className: classes
58
+ className: "euiRangeTooltip",
59
+ css: cssStyles
58
60
  }, ___EmotionJSX("output", {
59
- className: valueClasses,
61
+ className: "euiRangeTooltip__value",
62
+ css: cssValueStyles,
60
63
  htmlFor: name,
61
64
  style: valuePositionStyle
62
65
  }, valuePrepend, value, valueAppend));
63
66
  };
64
67
  EuiRangeTooltip.propTypes = {
65
- value: PropTypes.oneOfType([PropTypes.number.isRequired, PropTypes.string.isRequired]),
66
- valueAppend: PropTypes.node,
67
- valuePrepend: PropTypes.node,
68
- max: PropTypes.number.isRequired,
69
- min: PropTypes.number.isRequired,
70
- name: PropTypes.string,
71
- showTicks: PropTypes.bool,
72
- compressed: PropTypes.bool
68
+ name: PropTypes.string
73
69
  };