@elastic/eui 63.0.1 → 64.0.1

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 (851) hide show
  1. package/dist/eui_charts_theme.js +330 -330
  2. package/dist/eui_charts_theme.js.map +1 -1
  3. package/dist/eui_theme_dark.css +3 -356
  4. package/dist/eui_theme_dark.json +0 -1
  5. package/dist/eui_theme_dark.json.d.ts +0 -1
  6. package/dist/eui_theme_dark.min.css +1 -1
  7. package/dist/eui_theme_light.css +3 -356
  8. package/dist/eui_theme_light.json +0 -1
  9. package/dist/eui_theme_light.json.d.ts +0 -1
  10. package/dist/eui_theme_light.min.css +1 -1
  11. package/es/components/accessibility/screen_reader_live/screen_reader_live.js +2 -2
  12. package/es/components/accessibility/skip_link/skip_link.js +2 -0
  13. package/es/components/accordion/accordion.js +18 -7
  14. package/es/components/accordion/accordion.styles.js +4 -1
  15. package/es/components/aspect_ratio/aspect_ratio.js +10 -18
  16. package/es/components/avatar/avatar.js +1 -0
  17. package/es/components/badge/badge.js +1 -0
  18. package/es/components/badge/badge_group/badge_group.js +1 -0
  19. package/es/components/badge/beta_badge/beta_badge.js +1 -0
  20. package/es/components/badge/notification_badge/badge_notification.js +2 -1
  21. package/es/components/basic_table/basic_table.js +5 -2
  22. package/es/components/basic_table/collapsed_item_actions.js +1 -2
  23. package/es/components/basic_table/in_memory_table.js +8 -3
  24. package/es/components/beacon/beacon.js +1 -0
  25. package/es/components/bottom_bar/bottom_bar.js +2 -0
  26. package/es/components/breadcrumbs/breadcrumb.js +1 -0
  27. package/es/components/breadcrumbs/breadcrumb.styles.js +2 -2
  28. package/es/components/breadcrumbs/breadcrumbs.js +2 -0
  29. package/es/components/button/_button_content_deprecated.js +3 -1
  30. package/es/components/button/button.js +4 -0
  31. package/es/components/button/button_display/_button_display.js +2 -0
  32. package/es/components/button/button_display/_button_display_content.js +3 -1
  33. package/es/components/button/button_empty/button_empty.js +3 -1
  34. package/es/components/button/button_group/button_group.js +4 -1
  35. package/es/components/button/button_group/button_group_button.js +2 -0
  36. package/es/components/button/button_icon/button_icon.js +1 -0
  37. package/es/components/call_out/call_out.js +1 -0
  38. package/es/components/card/card.js +3 -1
  39. package/es/components/card/card_select.js +3 -1
  40. package/es/components/code/code.js +1 -0
  41. package/es/components/code/code_block.js +1 -0
  42. package/es/components/collapsible_nav/collapsible_nav.js +8 -48
  43. package/es/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +9 -1
  44. package/es/components/color_picker/color_palette_display/color_palette_display.js +1 -0
  45. package/es/components/color_picker/color_palette_display/color_palette_display_fixed.js +1 -0
  46. package/es/components/color_picker/color_palette_display/color_palette_display_gradient.js +1 -0
  47. package/es/components/color_picker/color_palette_picker/color_palette_picker.js +7 -3
  48. package/es/components/color_picker/color_picker.js +1 -0
  49. package/es/components/color_picker/color_picker_swatch.js +1 -0
  50. package/es/components/color_picker/color_stops/color_stop_thumb.js +1 -0
  51. package/es/components/color_picker/color_stops/color_stops.js +2 -1
  52. package/es/components/color_picker/hue.js +1 -0
  53. package/es/components/color_picker/saturation.js +1 -0
  54. package/es/components/combo_box/combo_box.js +2 -1
  55. package/es/components/combo_box/combo_box_input/combo_box_input.js +6 -3
  56. package/es/components/combo_box/combo_box_input/combo_box_pill.js +6 -3
  57. package/es/components/combo_box/combo_box_options_list/combo_box_option.js +6 -3
  58. package/es/components/combo_box/combo_box_options_list/combo_box_options_list.js +13 -6
  59. package/es/components/comment_list/comment.js +1 -0
  60. package/es/components/comment_list/comment_event.js +2 -1
  61. package/es/components/comment_list/comment_list.js +2 -0
  62. package/es/components/comment_list/comment_timeline.js +2 -1
  63. package/es/components/context_menu/context_menu.js +3 -1
  64. package/es/components/context_menu/context_menu_item.js +1 -0
  65. package/es/components/context_menu/context_menu_panel.js +1 -0
  66. package/es/components/control_bar/control_bar.js +3 -0
  67. package/es/components/copy/copy.js +2 -1
  68. package/es/components/datagrid/body/data_grid_body.js +12 -0
  69. package/es/components/datagrid/body/data_grid_cell.js +24 -0
  70. package/es/components/datagrid/body/header/data_grid_header_cell.js +12 -0
  71. package/es/components/datagrid/body/header/data_grid_header_row.js +13 -0
  72. package/es/components/datagrid/data_grid.js +13 -0
  73. package/es/components/datagrid/utils/in_memory.js +12 -0
  74. package/es/components/date_picker/auto_refresh/auto_refresh.js +3 -1
  75. package/es/components/date_picker/date_picker.js +1 -0
  76. package/es/components/date_picker/date_picker_range.js +45 -4
  77. package/es/components/date_picker/super_date_picker/super_date_picker.js +2 -0
  78. package/es/components/description_list/description_list.js +5 -2
  79. package/es/components/description_list/description_list_description.js +4 -2
  80. package/es/components/description_list/description_list_title.js +4 -2
  81. package/es/components/drag_and_drop/draggable.js +2 -1
  82. package/es/components/drag_and_drop/droppable.js +2 -1
  83. package/es/components/empty_prompt/empty_prompt.js +1 -0
  84. package/es/components/error_boundary/error_boundary.js +1 -0
  85. package/es/components/expression/expression.js +1 -0
  86. package/es/components/facet/facet_button.js +2 -1
  87. package/es/components/facet/facet_group.js +1 -0
  88. package/es/components/filter_group/filter_group.js +1 -0
  89. package/es/components/filter_group/filter_select_item.js +2 -1
  90. package/es/components/flex/flex_grid.js +1 -0
  91. package/es/components/flex/flex_group.js +2 -1
  92. package/es/components/flex/flex_item.js +1 -0
  93. package/es/components/flyout/flyout.js +7 -34
  94. package/es/components/flyout/flyout_body.js +1 -0
  95. package/es/components/flyout/flyout_footer.js +2 -1
  96. package/es/components/flyout/flyout_header.js +1 -0
  97. package/es/components/focus_trap/focus_trap.js +1 -0
  98. package/es/components/form/checkbox/checkbox.js +4 -2
  99. package/es/components/form/checkbox/checkbox_group.js +2 -0
  100. package/es/components/form/described_form_group/described_form_group.js +1 -0
  101. package/es/components/form/field_number/field_number.js +1 -0
  102. package/es/components/form/field_password/field_password.js +1 -0
  103. package/es/components/form/field_search/field_search.js +2 -1
  104. package/es/components/form/field_text/field_text.js +1 -0
  105. package/es/components/form/file_picker/file_picker.js +2 -1
  106. package/es/components/form/form.js +1 -0
  107. package/es/components/form/form_control_layout/form_control_layout.js +2 -0
  108. package/es/components/form/form_control_layout/form_control_layout_clear_button.js +1 -0
  109. package/es/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -0
  110. package/es/components/form/form_control_layout/form_control_layout_icons.js +1 -0
  111. package/es/components/form/form_error_text/form_error_text.js +2 -1
  112. package/es/components/form/form_fieldset/form_fieldset.js +3 -1
  113. package/es/components/form/form_fieldset/form_legend.js +1 -0
  114. package/es/components/form/form_help_text/form_help_text.js +2 -1
  115. package/es/components/form/form_label/form_label.js +2 -1
  116. package/es/components/form/form_row/form_row.js +1 -0
  117. package/es/components/form/radio/radio.js +3 -1
  118. package/es/components/form/radio/radio_group.js +2 -0
  119. package/es/components/form/range/dual_range.js +2 -1
  120. package/es/components/form/range/range.js +4 -2
  121. package/es/components/form/range/range_levels.js +2 -1
  122. package/es/components/form/range/range_slider.js +1 -0
  123. package/es/components/form/range/range_thumb.js +2 -1
  124. package/es/components/form/range/range_track.js +2 -1
  125. package/es/components/form/range/range_wrapper.js +2 -1
  126. package/es/components/form/select/select.js +1 -0
  127. package/es/components/form/super_select/super_select.js +1 -0
  128. package/es/components/form/switch/switch.js +3 -1
  129. package/es/components/form/text_area/text_area.js +1 -0
  130. package/es/components/form/validatable_control/validatable_control.js +1 -0
  131. package/es/components/header/header.js +3 -2
  132. package/es/components/header/header_alert/header_alert.js +1 -0
  133. package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +2 -0
  134. package/es/components/header/header_links/header_link.js +2 -0
  135. package/es/components/header/header_links/header_links.js +8 -1
  136. package/es/components/header/header_logo.js +1 -0
  137. package/es/components/header/header_section/header_section.js +1 -0
  138. package/es/components/header/header_section/header_section_item.js +1 -0
  139. package/es/components/health/health.js +1 -0
  140. package/es/components/highlight/highlight.js +1 -0
  141. package/es/components/horizontal_rule/horizontal_rule.js +2 -1
  142. package/es/components/icon/icon.js +1 -0
  143. package/es/components/image/image.js +1 -0
  144. package/es/components/image/image_button.styles.js +1 -1
  145. package/es/components/key_pad_menu/key_pad_menu.js +1 -0
  146. package/es/components/key_pad_menu/key_pad_menu_item.js +1 -0
  147. package/es/components/link/link.js +1 -0
  148. package/es/components/link/link.styles.js +6 -5
  149. package/es/components/list_group/list_group.js +3 -0
  150. package/es/components/list_group/list_group_item.js +2 -0
  151. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +5 -0
  152. package/es/components/loading/loading_chart.js +1 -0
  153. package/es/components/loading/loading_content.js +1 -0
  154. package/es/components/loading/loading_elastic.js +1 -0
  155. package/es/components/loading/loading_logo.js +1 -0
  156. package/es/components/loading/loading_spinner.js +1 -0
  157. package/es/components/mark/mark.js +1 -0
  158. package/es/components/markdown_editor/markdown_editor.js +2 -0
  159. package/es/components/markdown_editor/markdown_editor_text_area.js +1 -0
  160. package/es/components/markdown_editor/markdown_editor_toolbar.js +1 -0
  161. package/es/components/markdown_editor/markdown_format.js +1 -0
  162. package/es/components/modal/modal_body.js +2 -1
  163. package/es/components/modal/modal_footer.js +2 -1
  164. package/es/components/modal/modal_header.js +2 -1
  165. package/es/components/modal/modal_header_title.js +2 -1
  166. package/es/components/notification/notification_event.js +4 -1
  167. package/es/components/notification/notification_event_read_button.js +1 -0
  168. package/es/components/notification/notification_event_read_icon.js +1 -0
  169. package/es/components/overlay_mask/overlay_mask.js +3 -1
  170. package/es/components/page/page.js +1 -0
  171. package/es/components/page/page_content/page_content.js +1 -0
  172. package/es/components/page/page_content/page_content_body.js +1 -0
  173. package/es/components/page/page_content/page_content_header.js +2 -1
  174. package/es/components/page/page_content/page_content_header_section.js +2 -1
  175. package/es/components/page/page_header/page_header.js +1 -0
  176. package/es/components/page/page_header/page_header_content.js +4 -0
  177. package/es/components/page/page_header/page_header_section.js +2 -1
  178. package/es/components/page/page_section/page_section.js +1 -0
  179. package/es/components/page/page_side_bar/page_side_bar.js +2 -1
  180. package/es/components/page/page_sidebar/page_sidebar.js +5 -2
  181. package/es/components/page/page_template.js +7 -1
  182. package/es/components/page_template/empty_prompt/page_empty_prompt.js +1 -0
  183. package/es/components/page_template/outer/page_outer.js +2 -1
  184. package/es/components/page_template/page_template.js +9 -2
  185. package/es/components/pagination/pagination.js +1 -0
  186. package/es/components/pagination/pagination_button.js +2 -0
  187. package/es/components/panel/panel.js +2 -1
  188. package/es/components/panel/split_panel/split_panel.js +2 -1
  189. package/es/components/popover/input_popover.js +1 -0
  190. package/es/components/popover/popover.js +10 -2
  191. package/es/components/popover/popover_arrow/_popover_arrow.js +1 -0
  192. package/es/components/popover/popover_footer.js +1 -0
  193. package/es/components/popover/popover_panel/_popover_panel.js +1 -0
  194. package/es/components/popover/popover_panel/_popover_panel.styles.js +3 -2
  195. package/es/components/popover/popover_title.js +1 -0
  196. package/es/components/progress/progress.js +1 -0
  197. package/es/components/provider/cache/cache_provider.js +9 -3
  198. package/es/components/resizable_container/resizable_button.js +2 -1
  199. package/es/components/resizable_container/resizable_container.js +2 -1
  200. package/es/components/resizable_container/resizable_panel.js +2 -1
  201. package/es/components/search_bar/search_bar.js +3 -1
  202. package/es/components/selectable/selectable.js +2 -0
  203. package/es/components/selectable/selectable_list/selectable_list.js +4 -0
  204. package/es/components/selectable/selectable_list/selectable_list_item.js +2 -0
  205. package/es/components/selectable/selectable_message/selectable_message.js +1 -0
  206. package/es/components/selectable/selectable_templates/selectable_template_sitewide.js +5 -1
  207. package/es/components/side_nav/side_nav.js +1 -0
  208. package/es/components/spacer/spacer.js +1 -0
  209. package/es/components/stat/stat.js +1 -0
  210. package/es/components/steps/step.js +1 -0
  211. package/es/components/steps/step_horizontal.js +2 -1
  212. package/es/components/steps/step_number.js +2 -1
  213. package/es/components/steps/steps.js +2 -1
  214. package/es/components/steps/steps_horizontal.js +2 -1
  215. package/es/components/steps/sub_steps.js +2 -1
  216. package/es/components/suggest/suggest.js +2 -0
  217. package/es/components/suggest/suggest_item.js +1 -0
  218. package/es/components/table/mobile/table_header_mobile.js +2 -1
  219. package/es/components/table/mobile/table_sort_mobile_item.js +2 -1
  220. package/es/components/table/table.js +2 -1
  221. package/es/components/table/table_body.js +1 -0
  222. package/es/components/table/table_footer.js +2 -1
  223. package/es/components/table/table_footer_cell.js +1 -0
  224. package/es/components/table/table_header.js +1 -0
  225. package/es/components/table/table_header_button.js +1 -0
  226. package/es/components/table/table_header_cell.js +1 -0
  227. package/es/components/table/table_header_cell_checkbox.js +1 -0
  228. package/es/components/table/table_row.js +1 -0
  229. package/es/components/table/table_row_cell.js +1 -0
  230. package/es/components/table/table_row_cell_checkbox.js +2 -1
  231. package/es/components/tabs/tab.js +1 -0
  232. package/es/components/tabs/tabbed_content/tabbed_content.js +7 -3
  233. package/es/components/text/text.js +1 -0
  234. package/es/components/text/text.styles.js +1 -1
  235. package/es/components/text/text_align.js +1 -0
  236. package/es/components/text/text_color.js +1 -0
  237. package/es/components/timeline/timeline.js +4 -2
  238. package/es/components/timeline/timeline_item.js +2 -1
  239. package/es/components/title/title.js +1 -0
  240. package/es/components/toast/global_toast_list.js +4 -2
  241. package/es/components/toast/global_toast_list.styles.js +2 -2
  242. package/es/components/toast/global_toast_list_item.js +1 -0
  243. package/es/components/toast/toast.js +2 -1
  244. package/es/components/tool_tip/tool_tip_popover.js +1 -0
  245. package/es/components/tour/tour.js +1 -214
  246. package/es/components/tour/tour.styles.js +57 -0
  247. package/es/components/tour/tour_step.js +36 -6
  248. package/es/components/tour/tour_step_indicator.js +23 -14
  249. package/es/components/tree_view/tree_view.js +1 -0
  250. package/es/global_styling/functions/logicals.js +16 -2
  251. package/es/global_styling/mixins/_helpers.js +11 -4
  252. package/es/global_styling/mixins/_responsive.js +18 -14
  253. package/es/global_styling/mixins/_states.js +3 -4
  254. package/es/global_styling/mixins/_typography.js +3 -1
  255. package/es/global_styling/reset/global_styles.js +1 -1
  256. package/es/global_styling/utility/utility.js +10 -2
  257. package/es/global_styling/variables/breakpoint.js +2 -1
  258. package/es/services/breakpoint/_sorting.js +41 -0
  259. package/es/services/breakpoint/current_breakpoint.js +19 -6
  260. package/es/services/breakpoint/index.js +2 -2
  261. package/es/services/breakpoint/is_within_hooks.js +67 -0
  262. package/es/services/index.js +1 -1
  263. package/eui.d.ts +268 -375
  264. package/i18ntokens.json +24 -24
  265. package/lib/components/accessibility/screen_reader_live/screen_reader_live.js +2 -2
  266. package/lib/components/accessibility/skip_link/skip_link.js +2 -0
  267. package/lib/components/accordion/accordion.js +18 -7
  268. package/lib/components/accordion/accordion.styles.js +4 -1
  269. package/lib/components/aspect_ratio/aspect_ratio.js +10 -20
  270. package/lib/components/avatar/avatar.js +1 -0
  271. package/lib/components/badge/badge.js +1 -0
  272. package/lib/components/badge/badge_group/badge_group.js +1 -0
  273. package/lib/components/badge/beta_badge/beta_badge.js +1 -0
  274. package/lib/components/badge/notification_badge/badge_notification.js +2 -1
  275. package/lib/components/basic_table/basic_table.js +5 -2
  276. package/lib/components/basic_table/collapsed_item_actions.js +1 -2
  277. package/lib/components/basic_table/in_memory_table.js +8 -3
  278. package/lib/components/beacon/beacon.js +1 -0
  279. package/lib/components/bottom_bar/bottom_bar.js +2 -0
  280. package/lib/components/breadcrumbs/breadcrumb.js +1 -0
  281. package/lib/components/breadcrumbs/breadcrumb.styles.js +2 -2
  282. package/lib/components/breadcrumbs/breadcrumbs.js +2 -0
  283. package/lib/components/button/_button_content_deprecated.js +3 -1
  284. package/lib/components/button/button.js +4 -0
  285. package/lib/components/button/button_display/_button_display.js +2 -0
  286. package/lib/components/button/button_display/_button_display_content.js +3 -1
  287. package/lib/components/button/button_empty/button_empty.js +3 -1
  288. package/lib/components/button/button_group/button_group.js +4 -1
  289. package/lib/components/button/button_group/button_group_button.js +2 -0
  290. package/lib/components/button/button_icon/button_icon.js +1 -0
  291. package/lib/components/call_out/call_out.js +1 -0
  292. package/lib/components/card/card.js +3 -1
  293. package/lib/components/card/card_select.js +3 -1
  294. package/lib/components/code/code.js +1 -0
  295. package/lib/components/code/code_block.js +1 -0
  296. package/lib/components/collapsible_nav/collapsible_nav.js +6 -46
  297. package/lib/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +9 -1
  298. package/lib/components/color_picker/color_palette_display/color_palette_display.js +1 -0
  299. package/lib/components/color_picker/color_palette_display/color_palette_display_fixed.js +1 -0
  300. package/lib/components/color_picker/color_palette_display/color_palette_display_gradient.js +1 -0
  301. package/lib/components/color_picker/color_palette_picker/color_palette_picker.js +7 -3
  302. package/lib/components/color_picker/color_picker.js +1 -0
  303. package/lib/components/color_picker/color_picker_swatch.js +1 -0
  304. package/lib/components/color_picker/color_stops/color_stop_thumb.js +1 -0
  305. package/lib/components/color_picker/color_stops/color_stops.js +2 -1
  306. package/lib/components/color_picker/hue.js +1 -0
  307. package/lib/components/color_picker/saturation.js +1 -0
  308. package/lib/components/combo_box/combo_box.js +2 -1
  309. package/lib/components/combo_box/combo_box_input/combo_box_input.js +6 -3
  310. package/lib/components/combo_box/combo_box_input/combo_box_pill.js +6 -3
  311. package/lib/components/combo_box/combo_box_options_list/combo_box_option.js +6 -3
  312. package/lib/components/combo_box/combo_box_options_list/combo_box_options_list.js +13 -6
  313. package/lib/components/comment_list/comment.js +1 -0
  314. package/lib/components/comment_list/comment_event.js +2 -1
  315. package/lib/components/comment_list/comment_list.js +2 -0
  316. package/lib/components/comment_list/comment_timeline.js +2 -1
  317. package/lib/components/context_menu/context_menu.js +3 -1
  318. package/lib/components/context_menu/context_menu_item.js +1 -0
  319. package/lib/components/context_menu/context_menu_panel.js +1 -0
  320. package/lib/components/control_bar/control_bar.js +3 -0
  321. package/lib/components/copy/copy.js +2 -1
  322. package/lib/components/datagrid/body/data_grid_body.js +12 -0
  323. package/lib/components/datagrid/body/data_grid_cell.js +24 -0
  324. package/lib/components/datagrid/body/header/data_grid_header_cell.js +12 -0
  325. package/lib/components/datagrid/body/header/data_grid_header_row.js +13 -0
  326. package/lib/components/datagrid/data_grid.js +13 -0
  327. package/lib/components/datagrid/utils/in_memory.js +12 -0
  328. package/lib/components/date_picker/auto_refresh/auto_refresh.js +3 -1
  329. package/lib/components/date_picker/date_picker.js +1 -0
  330. package/lib/components/date_picker/date_picker_range.js +45 -4
  331. package/lib/components/date_picker/super_date_picker/super_date_picker.js +2 -0
  332. package/lib/components/description_list/description_list.js +5 -2
  333. package/lib/components/description_list/description_list_description.js +2 -1
  334. package/lib/components/description_list/description_list_title.js +2 -1
  335. package/lib/components/drag_and_drop/draggable.js +2 -1
  336. package/lib/components/drag_and_drop/droppable.js +2 -1
  337. package/lib/components/empty_prompt/empty_prompt.js +1 -0
  338. package/lib/components/error_boundary/error_boundary.js +1 -0
  339. package/lib/components/expression/expression.js +1 -0
  340. package/lib/components/facet/facet_button.js +2 -1
  341. package/lib/components/facet/facet_group.js +1 -0
  342. package/lib/components/filter_group/filter_group.js +1 -0
  343. package/lib/components/filter_group/filter_select_item.js +2 -1
  344. package/lib/components/flex/flex_grid.js +1 -0
  345. package/lib/components/flex/flex_group.js +2 -1
  346. package/lib/components/flex/flex_item.js +1 -0
  347. package/lib/components/flyout/flyout.js +6 -33
  348. package/lib/components/flyout/flyout_body.js +1 -0
  349. package/lib/components/flyout/flyout_footer.js +2 -1
  350. package/lib/components/flyout/flyout_header.js +1 -0
  351. package/lib/components/focus_trap/focus_trap.js +1 -0
  352. package/lib/components/form/checkbox/checkbox.js +4 -2
  353. package/lib/components/form/checkbox/checkbox_group.js +2 -0
  354. package/lib/components/form/described_form_group/described_form_group.js +1 -0
  355. package/lib/components/form/field_number/field_number.js +1 -0
  356. package/lib/components/form/field_password/field_password.js +1 -0
  357. package/lib/components/form/field_search/field_search.js +2 -1
  358. package/lib/components/form/field_text/field_text.js +1 -0
  359. package/lib/components/form/file_picker/file_picker.js +2 -1
  360. package/lib/components/form/form.js +1 -0
  361. package/lib/components/form/form_control_layout/form_control_layout.js +2 -0
  362. package/lib/components/form/form_control_layout/form_control_layout_clear_button.js +1 -0
  363. package/lib/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -0
  364. package/lib/components/form/form_control_layout/form_control_layout_icons.js +1 -0
  365. package/lib/components/form/form_error_text/form_error_text.js +2 -1
  366. package/lib/components/form/form_fieldset/form_fieldset.js +3 -1
  367. package/lib/components/form/form_fieldset/form_legend.js +1 -0
  368. package/lib/components/form/form_help_text/form_help_text.js +2 -1
  369. package/lib/components/form/form_label/form_label.js +2 -1
  370. package/lib/components/form/form_row/form_row.js +1 -0
  371. package/lib/components/form/radio/radio.js +3 -1
  372. package/lib/components/form/radio/radio_group.js +2 -0
  373. package/lib/components/form/range/dual_range.js +2 -1
  374. package/lib/components/form/range/range.js +4 -2
  375. package/lib/components/form/range/range_levels.js +2 -1
  376. package/lib/components/form/range/range_slider.js +1 -0
  377. package/lib/components/form/range/range_thumb.js +2 -1
  378. package/lib/components/form/range/range_track.js +2 -1
  379. package/lib/components/form/range/range_wrapper.js +2 -1
  380. package/lib/components/form/select/select.js +1 -0
  381. package/lib/components/form/super_select/super_select.js +1 -0
  382. package/lib/components/form/switch/switch.js +3 -1
  383. package/lib/components/form/text_area/text_area.js +1 -0
  384. package/lib/components/form/validatable_control/validatable_control.js +1 -0
  385. package/lib/components/header/header.js +3 -2
  386. package/lib/components/header/header_alert/header_alert.js +1 -0
  387. package/lib/components/header/header_breadcrumbs/header_breadcrumbs.js +2 -0
  388. package/lib/components/header/header_links/header_link.js +2 -0
  389. package/lib/components/header/header_links/header_links.js +8 -1
  390. package/lib/components/header/header_logo.js +1 -0
  391. package/lib/components/header/header_section/header_section.js +1 -0
  392. package/lib/components/header/header_section/header_section_item.js +1 -0
  393. package/lib/components/health/health.js +1 -0
  394. package/lib/components/highlight/highlight.js +1 -0
  395. package/lib/components/horizontal_rule/horizontal_rule.js +2 -1
  396. package/lib/components/icon/icon.js +1 -0
  397. package/lib/components/image/image.js +1 -0
  398. package/lib/components/image/image_button.styles.js +1 -1
  399. package/lib/components/key_pad_menu/key_pad_menu.js +1 -0
  400. package/lib/components/key_pad_menu/key_pad_menu_item.js +1 -0
  401. package/lib/components/link/link.js +1 -0
  402. package/lib/components/link/link.styles.js +6 -5
  403. package/lib/components/list_group/list_group.js +3 -0
  404. package/lib/components/list_group/list_group_item.js +2 -0
  405. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +5 -0
  406. package/lib/components/loading/loading_chart.js +1 -0
  407. package/lib/components/loading/loading_content.js +1 -0
  408. package/lib/components/loading/loading_elastic.js +1 -0
  409. package/lib/components/loading/loading_logo.js +1 -0
  410. package/lib/components/loading/loading_spinner.js +1 -0
  411. package/lib/components/mark/mark.js +1 -0
  412. package/lib/components/markdown_editor/markdown_editor.js +2 -0
  413. package/lib/components/markdown_editor/markdown_editor_text_area.js +1 -0
  414. package/lib/components/markdown_editor/markdown_editor_toolbar.js +1 -0
  415. package/lib/components/markdown_editor/markdown_format.js +1 -0
  416. package/lib/components/modal/modal_body.js +2 -1
  417. package/lib/components/modal/modal_footer.js +2 -1
  418. package/lib/components/modal/modal_header.js +2 -1
  419. package/lib/components/modal/modal_header_title.js +2 -1
  420. package/lib/components/notification/notification_event.js +4 -1
  421. package/lib/components/notification/notification_event_read_button.js +1 -0
  422. package/lib/components/overlay_mask/overlay_mask.js +3 -1
  423. package/lib/components/page/page.js +1 -0
  424. package/lib/components/page/page_content/page_content.js +1 -0
  425. package/lib/components/page/page_content/page_content_body.js +1 -0
  426. package/lib/components/page/page_content/page_content_header.js +2 -1
  427. package/lib/components/page/page_content/page_content_header_section.js +2 -1
  428. package/lib/components/page/page_header/page_header.js +1 -0
  429. package/lib/components/page/page_header/page_header_content.js +4 -0
  430. package/lib/components/page/page_header/page_header_section.js +2 -1
  431. package/lib/components/page/page_section/page_section.js +1 -0
  432. package/lib/components/page/page_side_bar/page_side_bar.js +2 -1
  433. package/lib/components/page/page_sidebar/page_sidebar.js +5 -2
  434. package/lib/components/page/page_template.js +7 -1
  435. package/lib/components/page_template/empty_prompt/page_empty_prompt.js +1 -0
  436. package/lib/components/page_template/outer/page_outer.js +2 -1
  437. package/lib/components/page_template/page_template.js +9 -2
  438. package/lib/components/pagination/pagination.js +1 -0
  439. package/lib/components/panel/panel.js +2 -1
  440. package/lib/components/panel/split_panel/split_panel.js +2 -1
  441. package/lib/components/popover/input_popover.js +1 -0
  442. package/lib/components/popover/popover.js +10 -2
  443. package/lib/components/popover/popover_arrow/_popover_arrow.js +1 -0
  444. package/lib/components/popover/popover_footer.js +1 -0
  445. package/lib/components/popover/popover_panel/_popover_panel.js +1 -0
  446. package/lib/components/popover/popover_panel/_popover_panel.styles.js +5 -3
  447. package/lib/components/popover/popover_title.js +1 -0
  448. package/lib/components/progress/progress.js +1 -0
  449. package/lib/components/provider/cache/cache_provider.js +11 -3
  450. package/lib/components/resizable_container/resizable_button.js +2 -1
  451. package/lib/components/resizable_container/resizable_container.js +2 -1
  452. package/lib/components/resizable_container/resizable_panel.js +2 -1
  453. package/lib/components/search_bar/search_bar.js +3 -1
  454. package/lib/components/selectable/selectable.js +2 -0
  455. package/lib/components/selectable/selectable_list/selectable_list.js +4 -0
  456. package/lib/components/selectable/selectable_list/selectable_list_item.js +2 -0
  457. package/lib/components/selectable/selectable_message/selectable_message.js +1 -0
  458. package/lib/components/selectable/selectable_templates/selectable_template_sitewide.js +5 -1
  459. package/lib/components/side_nav/side_nav.js +1 -0
  460. package/lib/components/spacer/spacer.js +1 -0
  461. package/lib/components/stat/stat.js +1 -0
  462. package/lib/components/steps/step.js +1 -0
  463. package/lib/components/steps/step_horizontal.js +2 -1
  464. package/lib/components/steps/step_number.js +2 -1
  465. package/lib/components/steps/steps.js +2 -1
  466. package/lib/components/steps/steps_horizontal.js +2 -1
  467. package/lib/components/steps/sub_steps.js +2 -1
  468. package/lib/components/suggest/suggest.js +2 -0
  469. package/lib/components/suggest/suggest_item.js +1 -0
  470. package/lib/components/table/mobile/table_header_mobile.js +2 -1
  471. package/lib/components/table/mobile/table_sort_mobile_item.js +2 -1
  472. package/lib/components/table/table.js +2 -1
  473. package/lib/components/table/table_body.js +1 -0
  474. package/lib/components/table/table_footer.js +2 -1
  475. package/lib/components/table/table_footer_cell.js +1 -0
  476. package/lib/components/table/table_header.js +1 -0
  477. package/lib/components/table/table_header_button.js +1 -0
  478. package/lib/components/table/table_header_cell.js +1 -0
  479. package/lib/components/table/table_header_cell_checkbox.js +1 -0
  480. package/lib/components/table/table_row.js +1 -0
  481. package/lib/components/table/table_row_cell.js +1 -0
  482. package/lib/components/table/table_row_cell_checkbox.js +2 -1
  483. package/lib/components/tabs/tab.js +1 -0
  484. package/lib/components/tabs/tabbed_content/tabbed_content.js +7 -3
  485. package/lib/components/text/text.js +1 -0
  486. package/lib/components/text/text.styles.js +1 -1
  487. package/lib/components/text/text_align.js +1 -0
  488. package/lib/components/text/text_color.js +1 -0
  489. package/lib/components/timeline/timeline.js +4 -2
  490. package/lib/components/timeline/timeline_item.js +2 -1
  491. package/lib/components/title/title.js +1 -0
  492. package/lib/components/toast/global_toast_list.js +4 -2
  493. package/lib/components/toast/global_toast_list.styles.js +1 -1
  494. package/lib/components/toast/global_toast_list_item.js +1 -0
  495. package/lib/components/toast/toast.js +2 -1
  496. package/lib/components/tool_tip/tool_tip_popover.js +1 -0
  497. package/lib/components/tour/tour.js +1 -71
  498. package/lib/components/tour/tour.styles.js +79 -0
  499. package/lib/components/tour/tour_step.js +31 -5
  500. package/lib/components/tour/tour_step_indicator.js +22 -19
  501. package/lib/components/tree_view/tree_view.js +1 -0
  502. package/lib/global_styling/functions/logicals.js +21 -4
  503. package/lib/global_styling/mixins/_helpers.js +17 -6
  504. package/lib/global_styling/mixins/_responsive.js +18 -14
  505. package/lib/global_styling/mixins/_states.js +3 -4
  506. package/lib/global_styling/mixins/_typography.js +4 -1
  507. package/lib/global_styling/reset/global_styles.js +1 -1
  508. package/lib/global_styling/utility/utility.js +16 -3
  509. package/lib/global_styling/variables/breakpoint.js +3 -1
  510. package/lib/services/breakpoint/_sorting.js +53 -0
  511. package/lib/services/breakpoint/current_breakpoint.js +19 -5
  512. package/lib/services/breakpoint/index.js +4 -17
  513. package/lib/services/breakpoint/is_within_hooks.js +82 -0
  514. package/lib/services/index.js +14 -42
  515. package/optimize/es/components/accessibility/screen_reader_live/screen_reader_live.js +2 -2
  516. package/optimize/es/components/accordion/accordion.js +9 -5
  517. package/optimize/es/components/accordion/accordion.styles.js +4 -1
  518. package/optimize/es/components/aspect_ratio/aspect_ratio.js +9 -18
  519. package/optimize/es/components/basic_table/collapsed_item_actions.js +1 -2
  520. package/optimize/es/components/breadcrumbs/breadcrumb.styles.js +2 -2
  521. package/optimize/es/components/collapsible_nav/collapsible_nav.js +3 -38
  522. package/optimize/es/components/date_picker/date_picker_range.js +29 -3
  523. package/optimize/es/components/description_list/description_list_description.js +2 -1
  524. package/optimize/es/components/description_list/description_list_title.js +2 -1
  525. package/optimize/es/components/flyout/flyout.js +7 -34
  526. package/optimize/es/components/header/header.js +2 -2
  527. package/optimize/es/components/image/image_button.styles.js +1 -1
  528. package/optimize/es/components/link/link.styles.js +6 -5
  529. package/optimize/es/components/overlay_mask/overlay_mask.js +2 -1
  530. package/optimize/es/components/page/page_sidebar/page_sidebar.js +3 -1
  531. package/optimize/es/components/page_template/page_template.js +3 -1
  532. package/optimize/es/components/popover/popover.js +3 -1
  533. package/optimize/es/components/popover/popover_panel/_popover_panel.styles.js +3 -2
  534. package/optimize/es/components/provider/cache/cache_provider.js +9 -3
  535. package/optimize/es/components/text/text.styles.js +1 -1
  536. package/optimize/es/components/toast/global_toast_list.styles.js +2 -2
  537. package/optimize/es/components/tour/tour.styles.js +57 -0
  538. package/optimize/es/components/tour/tour_step.js +30 -6
  539. package/optimize/es/components/tour/tour_step_indicator.js +19 -12
  540. package/optimize/es/global_styling/functions/logicals.js +16 -2
  541. package/optimize/es/global_styling/mixins/_helpers.js +11 -4
  542. package/optimize/es/global_styling/mixins/_responsive.js +18 -14
  543. package/optimize/es/global_styling/mixins/_states.js +3 -4
  544. package/optimize/es/global_styling/mixins/_typography.js +3 -1
  545. package/optimize/es/global_styling/reset/global_styles.js +1 -1
  546. package/optimize/es/global_styling/utility/utility.js +10 -2
  547. package/optimize/es/global_styling/variables/breakpoint.js +2 -1
  548. package/optimize/es/services/breakpoint/_sorting.js +31 -0
  549. package/optimize/es/services/breakpoint/current_breakpoint.js +19 -6
  550. package/optimize/es/services/breakpoint/index.js +2 -2
  551. package/optimize/es/services/breakpoint/is_within_hooks.js +67 -0
  552. package/optimize/es/services/index.js +1 -1
  553. package/optimize/lib/components/accessibility/screen_reader_live/screen_reader_live.js +2 -2
  554. package/optimize/lib/components/accordion/accordion.js +9 -5
  555. package/optimize/lib/components/accordion/accordion.styles.js +4 -1
  556. package/optimize/lib/components/aspect_ratio/aspect_ratio.js +9 -20
  557. package/optimize/lib/components/basic_table/collapsed_item_actions.js +1 -2
  558. package/optimize/lib/components/breadcrumbs/breadcrumb.styles.js +2 -2
  559. package/optimize/lib/components/collapsible_nav/collapsible_nav.js +1 -37
  560. package/optimize/lib/components/date_picker/date_picker_range.js +29 -3
  561. package/optimize/lib/components/flyout/flyout.js +6 -33
  562. package/optimize/lib/components/header/header.js +2 -2
  563. package/optimize/lib/components/image/image_button.styles.js +1 -1
  564. package/optimize/lib/components/link/link.styles.js +6 -5
  565. package/optimize/lib/components/overlay_mask/overlay_mask.js +2 -1
  566. package/optimize/lib/components/page/page_sidebar/page_sidebar.js +3 -1
  567. package/optimize/lib/components/page_template/page_template.js +3 -1
  568. package/optimize/lib/components/popover/popover.js +3 -1
  569. package/optimize/lib/components/popover/popover_panel/_popover_panel.styles.js +5 -3
  570. package/optimize/lib/components/provider/cache/cache_provider.js +11 -3
  571. package/optimize/lib/components/text/text.styles.js +1 -1
  572. package/optimize/lib/components/toast/global_toast_list.styles.js +1 -1
  573. package/optimize/lib/components/tour/tour.styles.js +79 -0
  574. package/optimize/lib/components/tour/tour_step.js +30 -5
  575. package/optimize/lib/components/tour/tour_step_indicator.js +20 -17
  576. package/optimize/lib/global_styling/functions/logicals.js +21 -4
  577. package/optimize/lib/global_styling/mixins/_helpers.js +17 -6
  578. package/optimize/lib/global_styling/mixins/_responsive.js +18 -14
  579. package/optimize/lib/global_styling/mixins/_states.js +3 -4
  580. package/optimize/lib/global_styling/mixins/_typography.js +4 -1
  581. package/optimize/lib/global_styling/reset/global_styles.js +1 -1
  582. package/optimize/lib/global_styling/utility/utility.js +16 -3
  583. package/optimize/lib/global_styling/variables/breakpoint.js +3 -1
  584. package/optimize/lib/services/breakpoint/_sorting.js +45 -0
  585. package/optimize/lib/services/breakpoint/current_breakpoint.js +19 -5
  586. package/optimize/lib/services/breakpoint/index.js +4 -17
  587. package/optimize/lib/services/breakpoint/is_within_hooks.js +82 -0
  588. package/optimize/lib/services/index.js +14 -42
  589. package/package.json +2 -1
  590. package/src/components/index.scss +0 -1
  591. package/src/global_styling/mixins/_helpers.scss +9 -0
  592. package/src/global_styling/utility/_utility.scss +0 -127
  593. package/test-env/components/accessibility/screen_reader_live/screen_reader_live.js +2 -2
  594. package/test-env/components/accessibility/skip_link/skip_link.js +2 -0
  595. package/test-env/components/accordion/accordion.js +18 -7
  596. package/test-env/components/accordion/accordion.styles.js +4 -1
  597. package/test-env/components/aspect_ratio/aspect_ratio.js +10 -20
  598. package/test-env/components/avatar/avatar.js +1 -0
  599. package/test-env/components/badge/badge.js +1 -0
  600. package/test-env/components/badge/badge_group/badge_group.js +1 -0
  601. package/test-env/components/badge/beta_badge/beta_badge.js +1 -0
  602. package/test-env/components/badge/notification_badge/badge_notification.js +2 -1
  603. package/test-env/components/basic_table/basic_table.js +5 -2
  604. package/test-env/components/basic_table/collapsed_item_actions.js +1 -2
  605. package/test-env/components/basic_table/in_memory_table.js +8 -3
  606. package/test-env/components/beacon/beacon.js +1 -0
  607. package/test-env/components/bottom_bar/bottom_bar.js +2 -0
  608. package/test-env/components/breadcrumbs/breadcrumb.js +1 -0
  609. package/test-env/components/breadcrumbs/breadcrumb.styles.js +2 -2
  610. package/test-env/components/breadcrumbs/breadcrumbs.js +2 -0
  611. package/test-env/components/button/_button_content_deprecated.js +3 -1
  612. package/test-env/components/button/button.js +4 -0
  613. package/test-env/components/button/button_display/_button_display.js +2 -0
  614. package/test-env/components/button/button_display/_button_display_content.js +3 -1
  615. package/test-env/components/button/button_empty/button_empty.js +3 -1
  616. package/test-env/components/button/button_group/button_group.js +4 -1
  617. package/test-env/components/button/button_group/button_group_button.js +2 -0
  618. package/test-env/components/button/button_icon/button_icon.js +1 -0
  619. package/test-env/components/call_out/call_out.js +1 -0
  620. package/test-env/components/card/card.js +3 -1
  621. package/test-env/components/card/card_select.js +3 -1
  622. package/test-env/components/collapsible_nav/collapsible_nav.js +6 -40
  623. package/test-env/components/collapsible_nav/collapsible_nav_group/collapsible_nav_group.js +9 -1
  624. package/test-env/components/color_picker/color_palette_display/color_palette_display.js +1 -0
  625. package/test-env/components/color_picker/color_palette_display/color_palette_display_fixed.js +1 -0
  626. package/test-env/components/color_picker/color_palette_display/color_palette_display_gradient.js +1 -0
  627. package/test-env/components/color_picker/color_palette_picker/color_palette_picker.js +7 -3
  628. package/test-env/components/color_picker/color_picker.js +1 -0
  629. package/test-env/components/color_picker/color_picker_swatch.js +1 -0
  630. package/test-env/components/color_picker/color_stops/color_stop_thumb.js +1 -0
  631. package/test-env/components/color_picker/color_stops/color_stops.js +2 -1
  632. package/test-env/components/color_picker/hue.js +1 -0
  633. package/test-env/components/color_picker/saturation.js +1 -0
  634. package/test-env/components/combo_box/combo_box.js +2 -1
  635. package/test-env/components/combo_box/combo_box_input/combo_box_input.js +6 -3
  636. package/test-env/components/combo_box/combo_box_input/combo_box_pill.js +6 -3
  637. package/test-env/components/combo_box/combo_box_options_list/combo_box_option.js +6 -3
  638. package/test-env/components/combo_box/combo_box_options_list/combo_box_options_list.js +13 -6
  639. package/test-env/components/comment_list/comment.js +1 -0
  640. package/test-env/components/comment_list/comment_event.js +2 -1
  641. package/test-env/components/comment_list/comment_list.js +2 -0
  642. package/test-env/components/comment_list/comment_timeline.js +2 -1
  643. package/test-env/components/context_menu/context_menu.js +3 -1
  644. package/test-env/components/context_menu/context_menu_item.js +1 -0
  645. package/test-env/components/context_menu/context_menu_panel.js +1 -0
  646. package/test-env/components/control_bar/control_bar.js +3 -0
  647. package/test-env/components/copy/copy.js +2 -1
  648. package/test-env/components/datagrid/body/data_grid_body.js +12 -0
  649. package/test-env/components/datagrid/body/data_grid_cell.js +24 -0
  650. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +12 -0
  651. package/test-env/components/datagrid/body/header/data_grid_header_row.js +13 -0
  652. package/test-env/components/datagrid/data_grid.js +13 -0
  653. package/test-env/components/datagrid/utils/in_memory.js +12 -0
  654. package/test-env/components/date_picker/auto_refresh/auto_refresh.js +3 -1
  655. package/test-env/components/date_picker/date_picker.js +1 -0
  656. package/test-env/components/date_picker/date_picker_range.js +45 -4
  657. package/test-env/components/date_picker/super_date_picker/super_date_picker.js +2 -0
  658. package/test-env/components/description_list/description_list.js +5 -2
  659. package/test-env/components/description_list/description_list_description.js +2 -1
  660. package/test-env/components/description_list/description_list_title.js +2 -1
  661. package/test-env/components/drag_and_drop/draggable.js +2 -1
  662. package/test-env/components/drag_and_drop/droppable.js +2 -1
  663. package/test-env/components/empty_prompt/empty_prompt.js +1 -0
  664. package/test-env/components/error_boundary/error_boundary.js +1 -0
  665. package/test-env/components/expression/expression.js +1 -0
  666. package/test-env/components/facet/facet_button.js +2 -1
  667. package/test-env/components/facet/facet_group.js +1 -0
  668. package/test-env/components/filter_group/filter_group.js +1 -0
  669. package/test-env/components/filter_group/filter_select_item.js +2 -1
  670. package/test-env/components/flex/flex_grid.js +1 -0
  671. package/test-env/components/flex/flex_group.js +2 -1
  672. package/test-env/components/flex/flex_item.js +1 -0
  673. package/test-env/components/flyout/flyout_body.js +1 -0
  674. package/test-env/components/flyout/flyout_footer.js +2 -1
  675. package/test-env/components/flyout/flyout_header.js +1 -0
  676. package/test-env/components/form/checkbox/checkbox.js +4 -2
  677. package/test-env/components/form/checkbox/checkbox_group.js +2 -0
  678. package/test-env/components/form/described_form_group/described_form_group.js +1 -0
  679. package/test-env/components/form/field_number/field_number.js +1 -0
  680. package/test-env/components/form/field_password/field_password.js +1 -0
  681. package/test-env/components/form/field_search/field_search.js +2 -1
  682. package/test-env/components/form/field_text/field_text.js +1 -0
  683. package/test-env/components/form/file_picker/file_picker.js +2 -1
  684. package/test-env/components/form/form.js +1 -0
  685. package/test-env/components/form/form_control_layout/form_control_layout.js +2 -0
  686. package/test-env/components/form/form_control_layout/form_control_layout_clear_button.js +1 -0
  687. package/test-env/components/form/form_control_layout/form_control_layout_custom_icon.js +1 -0
  688. package/test-env/components/form/form_control_layout/form_control_layout_icons.js +1 -0
  689. package/test-env/components/form/form_error_text/form_error_text.js +2 -1
  690. package/test-env/components/form/form_fieldset/form_fieldset.js +3 -1
  691. package/test-env/components/form/form_fieldset/form_legend.js +1 -0
  692. package/test-env/components/form/form_help_text/form_help_text.js +2 -1
  693. package/test-env/components/form/form_label/form_label.js +2 -1
  694. package/test-env/components/form/form_row/form_row.js +1 -0
  695. package/test-env/components/form/radio/radio.js +3 -1
  696. package/test-env/components/form/radio/radio_group.js +2 -0
  697. package/test-env/components/form/range/dual_range.js +2 -1
  698. package/test-env/components/form/range/range.js +4 -2
  699. package/test-env/components/form/range/range_levels.js +2 -1
  700. package/test-env/components/form/range/range_slider.js +1 -0
  701. package/test-env/components/form/range/range_thumb.js +2 -1
  702. package/test-env/components/form/range/range_track.js +2 -1
  703. package/test-env/components/form/range/range_wrapper.js +2 -1
  704. package/test-env/components/form/select/select.js +1 -0
  705. package/test-env/components/form/super_select/super_select.js +1 -0
  706. package/test-env/components/form/switch/switch.js +3 -1
  707. package/test-env/components/form/text_area/text_area.js +1 -0
  708. package/test-env/components/form/validatable_control/validatable_control.js +1 -0
  709. package/test-env/components/header/header.js +3 -2
  710. package/test-env/components/header/header_alert/header_alert.js +1 -0
  711. package/test-env/components/header/header_breadcrumbs/header_breadcrumbs.js +2 -0
  712. package/test-env/components/header/header_links/header_link.js +2 -0
  713. package/test-env/components/header/header_links/header_links.js +8 -1
  714. package/test-env/components/header/header_logo.js +1 -0
  715. package/test-env/components/header/header_section/header_section.js +1 -0
  716. package/test-env/components/header/header_section/header_section_item.js +1 -0
  717. package/test-env/components/health/health.js +1 -0
  718. package/test-env/components/highlight/highlight.js +1 -0
  719. package/test-env/components/horizontal_rule/horizontal_rule.js +2 -1
  720. package/test-env/components/image/image.js +1 -0
  721. package/test-env/components/image/image_button.styles.js +1 -1
  722. package/test-env/components/key_pad_menu/key_pad_menu.js +1 -0
  723. package/test-env/components/key_pad_menu/key_pad_menu_item.js +1 -0
  724. package/test-env/components/link/link.js +1 -0
  725. package/test-env/components/link/link.styles.js +6 -5
  726. package/test-env/components/list_group/list_group.js +3 -0
  727. package/test-env/components/list_group/list_group_item.js +2 -0
  728. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +5 -0
  729. package/test-env/components/loading/loading_chart.js +1 -0
  730. package/test-env/components/loading/loading_content.js +1 -0
  731. package/test-env/components/loading/loading_elastic.js +1 -0
  732. package/test-env/components/loading/loading_logo.js +1 -0
  733. package/test-env/components/loading/loading_spinner.js +1 -0
  734. package/test-env/components/mark/mark.js +1 -0
  735. package/test-env/components/markdown_editor/markdown_editor.js +2 -0
  736. package/test-env/components/markdown_editor/markdown_editor_text_area.js +1 -0
  737. package/test-env/components/markdown_editor/markdown_editor_toolbar.js +1 -0
  738. package/test-env/components/markdown_editor/markdown_format.js +1 -0
  739. package/test-env/components/modal/modal_body.js +2 -1
  740. package/test-env/components/modal/modal_footer.js +2 -1
  741. package/test-env/components/modal/modal_header.js +2 -1
  742. package/test-env/components/modal/modal_header_title.js +2 -1
  743. package/test-env/components/notification/notification_event.js +4 -1
  744. package/test-env/components/notification/notification_event_read_button.js +1 -0
  745. package/test-env/components/overlay_mask/overlay_mask.js +3 -1
  746. package/test-env/components/page/page.js +1 -0
  747. package/test-env/components/page/page_content/page_content.js +1 -0
  748. package/test-env/components/page/page_content/page_content_body.js +1 -0
  749. package/test-env/components/page/page_content/page_content_header.js +2 -1
  750. package/test-env/components/page/page_content/page_content_header_section.js +2 -1
  751. package/test-env/components/page/page_header/page_header.js +1 -0
  752. package/test-env/components/page/page_header/page_header_content.js +4 -0
  753. package/test-env/components/page/page_header/page_header_section.js +2 -1
  754. package/test-env/components/page/page_section/page_section.js +1 -0
  755. package/test-env/components/page/page_side_bar/page_side_bar.js +2 -1
  756. package/test-env/components/page/page_sidebar/page_sidebar.js +5 -2
  757. package/test-env/components/page/page_template.js +7 -1
  758. package/test-env/components/page_template/empty_prompt/page_empty_prompt.js +1 -0
  759. package/test-env/components/page_template/outer/page_outer.js +2 -1
  760. package/test-env/components/page_template/page_template.js +9 -2
  761. package/test-env/components/pagination/pagination.js +1 -0
  762. package/test-env/components/panel/panel.js +2 -1
  763. package/test-env/components/panel/split_panel/split_panel.js +2 -1
  764. package/test-env/components/popover/input_popover.js +1 -0
  765. package/test-env/components/popover/popover.js +10 -2
  766. package/test-env/components/popover/popover_arrow/_popover_arrow.js +1 -0
  767. package/test-env/components/popover/popover_footer.js +1 -0
  768. package/test-env/components/popover/popover_panel/_popover_panel.js +1 -0
  769. package/test-env/components/popover/popover_panel/_popover_panel.styles.js +5 -3
  770. package/test-env/components/popover/popover_title.js +1 -0
  771. package/test-env/components/progress/progress.js +1 -0
  772. package/test-env/components/provider/cache/cache_provider.js +11 -3
  773. package/test-env/components/resizable_container/resizable_button.js +2 -1
  774. package/test-env/components/resizable_container/resizable_container.js +2 -1
  775. package/test-env/components/resizable_container/resizable_panel.js +2 -1
  776. package/test-env/components/search_bar/search_bar.js +3 -1
  777. package/test-env/components/selectable/selectable.js +2 -0
  778. package/test-env/components/selectable/selectable_list/selectable_list.js +4 -0
  779. package/test-env/components/selectable/selectable_list/selectable_list_item.js +2 -0
  780. package/test-env/components/selectable/selectable_message/selectable_message.js +1 -0
  781. package/test-env/components/selectable/selectable_templates/selectable_template_sitewide.js +5 -1
  782. package/test-env/components/side_nav/side_nav.js +1 -0
  783. package/test-env/components/spacer/spacer.js +1 -0
  784. package/test-env/components/stat/stat.js +1 -0
  785. package/test-env/components/steps/step.js +1 -0
  786. package/test-env/components/steps/step_horizontal.js +2 -1
  787. package/test-env/components/steps/step_number.js +2 -1
  788. package/test-env/components/steps/steps.js +2 -1
  789. package/test-env/components/steps/steps_horizontal.js +2 -1
  790. package/test-env/components/steps/sub_steps.js +2 -1
  791. package/test-env/components/suggest/suggest.js +2 -0
  792. package/test-env/components/suggest/suggest_item.js +1 -0
  793. package/test-env/components/table/mobile/table_header_mobile.js +2 -1
  794. package/test-env/components/table/mobile/table_sort_mobile_item.js +2 -1
  795. package/test-env/components/table/table.js +2 -1
  796. package/test-env/components/table/table_body.js +1 -0
  797. package/test-env/components/table/table_footer.js +2 -1
  798. package/test-env/components/table/table_footer_cell.js +1 -0
  799. package/test-env/components/table/table_header.js +1 -0
  800. package/test-env/components/table/table_header_button.js +1 -0
  801. package/test-env/components/table/table_header_cell.js +1 -0
  802. package/test-env/components/table/table_header_cell_checkbox.js +1 -0
  803. package/test-env/components/table/table_row.js +1 -0
  804. package/test-env/components/table/table_row_cell.js +1 -0
  805. package/test-env/components/table/table_row_cell_checkbox.js +2 -1
  806. package/test-env/components/tabs/tab.js +1 -0
  807. package/test-env/components/tabs/tabbed_content/tabbed_content.js +7 -3
  808. package/test-env/components/text/text.js +1 -0
  809. package/test-env/components/text/text.styles.js +1 -1
  810. package/test-env/components/text/text_align.js +1 -0
  811. package/test-env/components/text/text_color.js +1 -0
  812. package/test-env/components/timeline/timeline.js +4 -2
  813. package/test-env/components/timeline/timeline_item.js +2 -1
  814. package/test-env/components/title/title.js +1 -0
  815. package/test-env/components/toast/global_toast_list.js +4 -2
  816. package/test-env/components/toast/global_toast_list.styles.js +1 -1
  817. package/test-env/components/toast/global_toast_list_item.js +1 -0
  818. package/test-env/components/toast/toast.js +2 -1
  819. package/test-env/components/tool_tip/tool_tip_popover.js +1 -0
  820. package/test-env/components/tour/tour.js +1 -71
  821. package/test-env/components/tour/tour.styles.js +79 -0
  822. package/test-env/components/tour/tour_step.js +31 -5
  823. package/test-env/components/tour/tour_step_indicator.js +24 -20
  824. package/test-env/components/tree_view/tree_view.js +1 -0
  825. package/test-env/global_styling/functions/logicals.js +21 -4
  826. package/test-env/global_styling/mixins/_helpers.js +17 -6
  827. package/test-env/global_styling/mixins/_responsive.js +18 -14
  828. package/test-env/global_styling/mixins/_states.js +3 -4
  829. package/test-env/global_styling/mixins/_typography.js +4 -1
  830. package/test-env/global_styling/reset/global_styles.js +1 -1
  831. package/test-env/global_styling/utility/utility.js +16 -3
  832. package/test-env/global_styling/variables/breakpoint.js +3 -1
  833. package/test-env/services/breakpoint/_sorting.js +45 -0
  834. package/test-env/services/breakpoint/current_breakpoint.js +19 -5
  835. package/test-env/services/breakpoint/current_breakpoint_hook.js +9 -2
  836. package/test-env/services/breakpoint/index.js +4 -17
  837. package/test-env/services/breakpoint/is_within_hooks.js +82 -0
  838. package/test-env/services/index.js +14 -42
  839. package/es/services/breakpoint/breakpoint.js +0 -86
  840. package/es/services/breakpoint/useIsWithinBreakpoints.js +0 -24
  841. package/lib/services/breakpoint/breakpoint.js +0 -105
  842. package/lib/services/breakpoint/useIsWithinBreakpoints.js +0 -34
  843. package/optimize/es/services/breakpoint/breakpoint.js +0 -86
  844. package/optimize/es/services/breakpoint/useIsWithinBreakpoints.js +0 -24
  845. package/optimize/lib/services/breakpoint/breakpoint.js +0 -105
  846. package/optimize/lib/services/breakpoint/useIsWithinBreakpoints.js +0 -34
  847. package/src/components/tour/_index.scss +0 -2
  848. package/src/components/tour/_tour.scss +0 -68
  849. package/src/components/tour/_tour_step_indicator.scss +0 -3
  850. package/test-env/services/breakpoint/breakpoint.js +0 -105
  851. package/test-env/services/breakpoint/useIsWithinBreakpoints.js +0 -34
@@ -0,0 +1,57 @@
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 { shade, tint, COLOR_MODES_STANDARD } from '../../services';
10
+ import { logicalCSS } from '../../global_styling';
11
+ import { openAnimationTiming } from '../popover/popover_panel/_popover_panel.styles';
12
+ import { popoverArrowSize } from '../popover/popover_arrow/_popover_arrow.styles';
13
+
14
+ var backgroundColor = function backgroundColor(color, colorMode) {
15
+ return colorMode === COLOR_MODES_STANDARD.dark ? shade(color, 0.45) : tint(color, 0.5);
16
+ };
17
+
18
+ export var euiTourStyles = function euiTourStyles(_ref) {
19
+ var euiTheme = _ref.euiTheme,
20
+ colorMode = _ref.colorMode;
21
+ return {
22
+ // Targets EuiPopoverPanel
23
+ euiTour: /*#__PURE__*/css("&[data-popover-open='true']{[class*='euiTourBeacon']{opacity:1;}}[data-popover-arrow='top']{&:before{", logicalCSS('border-top-color', backgroundColor(euiTheme.colors.lightestShade, colorMode)), ";}};label:euiTour;")
24
+ };
25
+ };
26
+ export var euiTourBeaconStyles = function euiTourBeaconStyles(_ref2) {
27
+ var euiTheme = _ref2.euiTheme;
28
+ var arrowSize = euiTheme.size[popoverArrowSize];
29
+ var arrowSizeInt = parseInt(arrowSize, 10);
30
+ return {
31
+ // Base
32
+ euiTourBeacon: /*#__PURE__*/css("pointer-events:none;position:absolute;opacity:0;transition:opacity 0s ", euiTheme.animation[openAnimationTiming], ";;label:euiTourBeacon;"),
33
+ // Positions
34
+ right: /*#__PURE__*/css(logicalCSS('top', "".concat(arrowSizeInt / 2, "px")), ";", logicalCSS('left', "".concat(arrowSizeInt * -2, "px")), ";;label:right;"),
35
+ left: /*#__PURE__*/css(logicalCSS('top', "".concat(arrowSizeInt / 2, "px")), ";", logicalCSS('left', arrowSize), ";;label:left;"),
36
+ top: /*#__PURE__*/css(logicalCSS('top', arrowSize), ";", logicalCSS('left', "".concat(arrowSizeInt / 2, "px")), ";;label:top;"),
37
+ bottom: /*#__PURE__*/css(logicalCSS('top', "".concat(arrowSizeInt * -2, "px")), ";", logicalCSS('left', "".concat(arrowSizeInt / 2, "px")), ";;label:bottom;")
38
+ };
39
+ };
40
+ export var euiTourHeaderStyles = function euiTourHeaderStyles(_ref3) {
41
+ var euiTheme = _ref3.euiTheme;
42
+ return {
43
+ // Base
44
+ euiTourHeader: /*#__PURE__*/css(logicalCSS('border-bottom', 'none'), ";", logicalCSS('margin-bottom', euiTheme.size.s), ";;label:euiTourHeader;"),
45
+ // Elements
46
+ euiTourHeader__title: /*#__PURE__*/css(logicalCSS('margin-top', 0), ";;label:euiTourHeader__title;"),
47
+ euiTourHeader__subtitle: /*#__PURE__*/css("color:", euiTheme.colors.subduedText, ";;label:euiTourHeader__subtitle;")
48
+ };
49
+ };
50
+ export var euiTourFooterStyles = function euiTourFooterStyles(_ref4) {
51
+ var euiTheme = _ref4.euiTheme,
52
+ colorMode = _ref4.colorMode;
53
+ return {
54
+ // Base
55
+ euiTourFooter: /*#__PURE__*/css("background-color:", backgroundColor(euiTheme.colors.lightestShade, colorMode), ";", logicalCSS('border-bottom-left-radius', euiTheme.border.radius.medium), ";", logicalCSS('border-bottom-right-radius', euiTheme.border.radius.medium), ";;label:euiTourFooter;")
56
+ };
57
+ };
@@ -49,7 +49,8 @@ import { EuiI18n } from '../i18n';
49
49
  import { EuiPopover, EuiPopoverFooter, EuiPopoverTitle, EuiWrappingPopover } from '../popover';
50
50
  import { EuiTitle } from '../title';
51
51
  import { EuiTourStepIndicator } from './tour_step_indicator';
52
- import { useGeneratedHtmlId, findElementBySelectorOrRef } from '../../services';
52
+ import { useGeneratedHtmlId, findElementBySelectorOrRef, useEuiTheme } from '../../services';
53
+ import { euiTourStyles, euiTourBeaconStyles, euiTourFooterStyles, euiTourHeaderStyles } from './tour.styles';
53
54
  import { jsx as ___EmotionJSX } from "@emotion/react";
54
55
  export var EuiTourStep = function EuiTourStep(_ref) {
55
56
  var _ref$anchorPosition = _ref.anchorPosition,
@@ -91,6 +92,16 @@ export var EuiTourStep = function EuiTourStep(_ref) {
91
92
 
92
93
  var animationFrameId = useRef();
93
94
  var anchorNode = useRef(null);
95
+
96
+ var _useState3 = useState(),
97
+ _useState4 = _slicedToArray(_useState3, 2),
98
+ popoverPosition = _useState4[0],
99
+ setPopoverPosition = _useState4[1];
100
+
101
+ var onPositionChange = function onPositionChange(position) {
102
+ setPopoverPosition(position);
103
+ };
104
+
94
105
  useEffect(function () {
95
106
  if (anchor) {
96
107
  animationFrameId.current = window.requestAnimationFrame(function () {
@@ -104,6 +115,12 @@ export var EuiTourStep = function EuiTourStep(_ref) {
104
115
  };
105
116
  }, [anchor]);
106
117
  var classes = classNames('euiTour', className);
118
+ var euiTheme = useEuiTheme();
119
+ var tourStyles = euiTourStyles(euiTheme);
120
+ var headerStyles = euiTourHeaderStyles(euiTheme);
121
+ var footerStyles = euiTourFooterStyles(euiTheme);
122
+ var beaconStyles = euiTourBeaconStyles(euiTheme);
123
+ var beaconCss = [beaconStyles.euiTourBeacon, popoverPosition && beaconStyles[popoverPosition]];
107
124
  var finishButtonProps = {
108
125
  color: 'text',
109
126
  flush: 'right',
@@ -164,11 +181,16 @@ export var EuiTourStep = function EuiTourStep(_ref) {
164
181
  ownFocus: false,
165
182
  panelClassName: classes,
166
183
  panelStyle: style,
184
+ panelProps: {
185
+ css: tourStyles.euiTour
186
+ },
167
187
  offset: hasBeacon ? 10 : 0,
168
188
  'aria-labelledby': titleId,
169
189
  arrowChildren: hasBeacon && ___EmotionJSX(EuiBeacon, {
190
+ css: beaconCss,
170
191
  className: "euiTour__beacon"
171
- })
192
+ }),
193
+ onPositionChange: onPositionChange
172
194
  }, rest);
173
195
 
174
196
  var layout = ___EmotionJSX("div", {
@@ -177,17 +199,19 @@ export var EuiTourStep = function EuiTourStep(_ref) {
177
199
  maxWidth: maxWidth
178
200
  }
179
201
  }, ___EmotionJSX(EuiPopoverTitle, {
202
+ css: headerStyles.euiTourHeader,
180
203
  className: "euiTourHeader",
181
204
  id: titleId
182
205
  }, subtitle && ___EmotionJSX(EuiTitle, {
183
- size: "xxxs",
184
- className: "euiTourHeader__subtitle"
206
+ css: headerStyles.euiTourHeader__subtitle,
207
+ size: "xxxs"
185
208
  }, ___EmotionJSX("h2", null, subtitle)), ___EmotionJSX(EuiTitle, {
186
- size: "xxs",
187
- className: "euiTourHeader__title"
209
+ css: headerStyles.euiTourHeader__title,
210
+ size: "xxs"
188
211
  }, subtitle ? ___EmotionJSX("h3", null, title) : ___EmotionJSX("h2", null, title))), ___EmotionJSX("div", {
189
212
  className: "euiTour__content"
190
213
  }, content), ___EmotionJSX(EuiPopoverFooter, {
214
+ css: footerStyles.euiTourFooter,
191
215
  className: "euiTourFooter"
192
216
  }, footer));
193
217
 
@@ -209,6 +233,7 @@ EuiTourStep.propTypes = {
209
233
  */
210
234
  "aria-label": PropTypes.string,
211
235
  "data-test-subj": PropTypes.string,
236
+ css: PropTypes.any,
212
237
 
213
238
  /**
214
239
  * Class name passed to the direct parent of the button
@@ -349,6 +374,11 @@ EuiTourStep.propTypes = {
349
374
  */
350
375
  "aria-labelledby": PropTypes.string,
351
376
 
377
+ /**
378
+ * Function callback for when the popover positon changes
379
+ */
380
+ onPositionChange: PropTypes.func,
381
+
352
382
  /**
353
383
  * Element to which the tour step popover attaches when open
354
384
  */
@@ -6,6 +6,10 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
6
6
 
7
7
  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; }
8
8
 
9
+ 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)."; }
10
+
11
+ import PropTypes from "prop-types";
12
+
9
13
  /*
10
14
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
11
15
  * or more contributor license agreements. Licensed under the Elastic License
@@ -14,25 +18,28 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
14
18
  * Side Public License, v 1.
15
19
  */
16
20
  import React from 'react';
17
- import PropTypes from "prop-types";
18
21
  import classNames from 'classnames';
19
- import { keysOf } from '../common';
22
+ import { css } from '@emotion/react';
20
23
  import { EuiIcon } from '../icon';
21
24
  import { EuiI18n } from '../i18n';
22
25
  import { jsx as ___EmotionJSX } from "@emotion/react";
23
- var statusToClassNameMap = {
24
- complete: 'euiTourStepIndicator--complete',
25
- incomplete: 'euiTourStepIndicator--incomplete',
26
- active: 'euiTourStepIndicator--active'
26
+
27
+ var _ref = process.env.NODE_ENV === "production" ? {
28
+ name: "1v4nm53-EuiTourStepIndicator",
29
+ styles: "display:inline-block;label:EuiTourStepIndicator;"
30
+ } : {
31
+ name: "1v4nm53-EuiTourStepIndicator",
32
+ styles: "display:inline-block;label:EuiTourStepIndicator;",
33
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
27
34
  };
28
- export var STATUS = keysOf(statusToClassNameMap);
29
- export var EuiTourStepIndicator = function EuiTourStepIndicator(_ref) {
30
- var className = _ref.className,
31
- number = _ref.number,
32
- status = _ref.status,
33
- rest = _objectWithoutProperties(_ref, _excluded);
34
35
 
35
- var classes = classNames('euiTourStepIndicator', status ? statusToClassNameMap[status] : undefined, className);
36
+ export var EuiTourStepIndicator = function EuiTourStepIndicator(_ref2) {
37
+ var className = _ref2.className,
38
+ number = _ref2.number,
39
+ status = _ref2.status,
40
+ rest = _objectWithoutProperties(_ref2, _excluded);
41
+
42
+ var classes = classNames('euiTourStepIndicator', className);
36
43
  var indicatorIcon;
37
44
 
38
45
  if (status === 'active') {
@@ -83,6 +90,7 @@ export var EuiTourStepIndicator = function EuiTourStepIndicator(_ref) {
83
90
  }
84
91
  }, function (ariaLabel) {
85
92
  return ___EmotionJSX("li", _extends({
93
+ css: _ref,
86
94
  className: classes,
87
95
  "aria-label": ariaLabel
88
96
  }, rest), indicatorIcon);
@@ -93,5 +101,6 @@ EuiTourStepIndicator.propTypes = {
93
101
  status: PropTypes.oneOf(["complete", "incomplete", "active"]).isRequired,
94
102
  className: PropTypes.string,
95
103
  "aria-label": PropTypes.string,
96
- "data-test-subj": PropTypes.string
104
+ "data-test-subj": PropTypes.string,
105
+ css: PropTypes.any
97
106
  };
@@ -360,6 +360,7 @@ _defineProperty(EuiTreeView, "contextType", EuiTreeViewContext);
360
360
  EuiTreeView.propTypes = {
361
361
  className: PropTypes.string,
362
362
  "data-test-subj": PropTypes.string,
363
+ css: PropTypes.any,
363
364
 
364
365
  /** An array of EuiTreeViewNodes
365
366
  */
@@ -62,8 +62,8 @@ var logicalSize = {
62
62
  'min-width': 'min-inline-size'
63
63
  };
64
64
  var logicalOverflow = {
65
- 'overflow-x': 'overflow-block',
66
- 'overflow-y': 'overflow-inline'
65
+ 'overflow-x': 'overflow-inline',
66
+ 'overflow-y': 'overflow-block'
67
67
  };
68
68
  var logicalBorders = {
69
69
  'border-horizontal': 'border-inline',
@@ -107,6 +107,20 @@ export var LOGICAL_PROPERTIES = keysOf(logicals);
107
107
  export var logicalCSS = function logicalCSS(property, value) {
108
108
  return "".concat(logicals[property], ": ").concat(value, ";");
109
109
  };
110
+ /**
111
+ * Some logical properties are not yet fully supported by all browsers.
112
+ * For those cases, we should use the old property as a fallback for
113
+ * browsers missing support, while allowing supporting browsers to use
114
+ * the logical properties.
115
+ *
116
+ * Examples:
117
+ * https://caniuse.com/?search=overflow-block
118
+ * https://caniuse.com/mdn-css_properties_float_flow_relative_values
119
+ */
120
+
121
+ export var logicalCSSWithFallback = function logicalCSSWithFallback(property, value) {
122
+ return "\n ".concat(property, ": ").concat(value, ";\n ").concat(logicalCSS(property, value), "\n");
123
+ };
110
124
  /**
111
125
  *
112
126
  * @param property A string that is a valid CSS logical property
@@ -7,6 +7,7 @@
7
7
  */
8
8
  import { useEuiTheme } from '../../services/theme';
9
9
  import { transparentize } from '../../services/color';
10
+ import { logicalCSS, logicalCSSWithFallback } from '../functions';
10
11
  /**
11
12
  * Set scroll bar appearance on Chrome (and firefox).
12
13
  * All parameters are optional and default to specific global settings.
@@ -34,7 +35,7 @@ export var euiScrollBarStyles = function euiScrollBarStyles(_ref) {
34
35
  // so it's being added to this mixin for allowing support wherever custom scrollbars are
35
36
 
36
37
  var firefoxSupport = "scrollbar-color: ".concat(thumbColor, " ").concat(trackColor, ";");
37
- return "scrollbar-width: ".concat(width, ";\n\n &::-webkit-scrollbar {\n width: ").concat(scrollBarSize, ";\n height: ").concat(scrollBarSize, ";\n }\n\n &::-webkit-scrollbar-thumb {\n background-color: ").concat(thumbColor, ";\n background-clip: content-box;\n border-radius: ").concat(scrollBarSize, ";\n border: ").concat(scrollBarCorner, " solid ").concat(trackColor, ";\n }\n\n &::-webkit-scrollbar-corner,\n &::-webkit-scrollbar-track {\n background-color: ").concat(trackColor, ";\n }\n\n ").concat(firefoxSupport, "\n ");
38
+ return "scrollbar-width: ".concat(width, ";\n\n &::-webkit-scrollbar {\n ").concat(logicalCSS('width', scrollBarSize), "\n ").concat(logicalCSS('height', scrollBarSize), "\n }\n\n &::-webkit-scrollbar-thumb {\n background-color: ").concat(thumbColor, ";\n background-clip: content-box;\n border-radius: ").concat(scrollBarSize, ";\n border: ").concat(scrollBarCorner, " solid ").concat(trackColor, ";\n }\n\n &::-webkit-scrollbar-corner,\n &::-webkit-scrollbar-track {\n background-color: ").concat(trackColor, ";\n }\n\n ").concat(firefoxSupport, "\n ");
38
39
  };
39
40
  export var useEuiScrollBar = function useEuiScrollBar(options) {
40
41
  var euiTheme = useEuiTheme();
@@ -82,12 +83,11 @@ var euiOverflowShadowStyles = function euiOverflowShadowStyles(_ref3) {
82
83
  */
83
84
 
84
85
 
85
- // TODO: How do we use Emotion to output the CSS class utilities instead?
86
86
  export var euiYScroll = function euiYScroll(euiTheme) {
87
87
  var _ref5 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
88
88
  height = _ref5.height;
89
89
 
90
- return "\n ".concat(euiScrollBarStyles(euiTheme), "\n height: ").concat(height || '100%', ";\n overflow-y: auto;\n overflow-x: hidden;\n &:focus {\n outline: none; /* 1 */\n }\n");
90
+ return "\n ".concat(euiScrollBarStyles(euiTheme), "\n ").concat(logicalCSS('height', height || '100%'), "\n ").concat(logicalCSSWithFallback('overflow-y', 'auto'), "\n ").concat(logicalCSSWithFallback('overflow-x', 'hidden'), "\n &:focus {\n outline: none; /* 1 */\n }\n");
91
91
  };
92
92
  export var useEuiYScroll = function useEuiYScroll() {
93
93
  var _ref6 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
@@ -118,7 +118,7 @@ export var useEuiYScrollWithShadows = function useEuiYScrollWithShadows() {
118
118
  });
119
119
  };
120
120
  export var euiXScroll = function euiXScroll(euiTheme) {
121
- return "\n ".concat(euiScrollBarStyles(euiTheme), "\n overflow-x: auto;\n &:focus {\n outline: none; /* 1 */\n }\n");
121
+ return "\n ".concat(euiScrollBarStyles(euiTheme), "\n ").concat(logicalCSSWithFallback('overflow-x', 'auto'), "\n &:focus {\n outline: none; /* 1 */\n }\n");
122
122
  };
123
123
  export var useEuiXScroll = function useEuiXScroll() {
124
124
  var euiTheme = useEuiTheme();
@@ -158,4 +158,11 @@ export var useEuiOverflowScroll = function useEuiOverflowScroll(direction) {
158
158
  direction: direction,
159
159
  mask: mask
160
160
  });
161
+ };
162
+ /**
163
+ * For quickly applying a full-height element whether using flex or not
164
+ */
165
+
166
+ export var euiFullHeight = function euiFullHeight() {
167
+ return "\n ".concat(logicalCSS('height', '100%'), "\n flex: 1 1 auto;\n overflow: hidden;\n");
161
168
  };
@@ -5,39 +5,43 @@
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 { sortMapBySmallToLargeValues } from '../../services/breakpoint/_sorting';
8
9
  import { useEuiTheme } from '../../services/theme/hooks';
9
- import { EuiThemeBreakpoints } from '../variables';
10
+
10
11
  /**
11
12
  * Generates a CSS media query rule string based on the input breakpoint ranges.
12
- * Examples:
13
+ * Examples with default theme breakpoints:
14
+ *
13
15
  * euiBreakpoint(['s']) becomes `@media only screen and (min-width: 575px) and (max-width: 767px)`
14
16
  * euiBreakpoint(['s', 'l']) becomes `@media only screen and (min-width: 575px) and (max-width: 1199px)`
15
17
  *
16
- * Use the `xs` and `xl` sizes to generate media queries with only min/max-width.
17
- * Examples:
18
+ * Use the smallest and largest sizes to generate media queries with only min/max-width.
19
+ * Examples with default theme breakpoints:
20
+ *
18
21
  * euiBreakpoint(['xs', 'm']) becomes `@media only screen and (max-width: 991px)`
19
22
  * euiBreakpoint(['l', 'xl']) becomes `@media only screen and (min-width: 992px)`
20
23
  */
21
-
22
24
  export var euiBreakpoint = function euiBreakpoint(_ref, sizes) {
23
25
  var euiTheme = _ref.euiTheme;
24
- // Ensure the array is in the correct ascending size order
26
+ // Ensure we inherit any theme breakpoint overrides & sort by small to large
27
+ var orderedBreakpoints = Object.keys(sortMapBySmallToLargeValues(euiTheme.breakpoint)); // Ensure the sizes array is in the correct ascending size order
28
+
25
29
  var orderedSizes = sizes.sort(function (a, b) {
26
- return EuiThemeBreakpoints.indexOf(a) - EuiThemeBreakpoints.indexOf(b);
30
+ return orderedBreakpoints.indexOf(a) - orderedBreakpoints.indexOf(b);
27
31
  });
28
32
  var firstBreakpoint = orderedSizes[0];
29
33
  var minBreakpointSize = euiTheme.breakpoint[firstBreakpoint];
30
34
  var lastBreakpoint = orderedSizes[sizes.length - 1];
31
- var maxBreakpointSize; // To get the correct screen range, we set the max-width
32
- // to the next breakpoint size in the sizes array
35
+ var maxBreakpointSize; // To get the correct screen range, we set the max-width to the next breakpoint
36
+ // size in the sizes array (unless the size is already the largest breakpoint)
33
37
 
34
- if (lastBreakpoint !== 'xl') {
35
- var nextBreakpoint = EuiThemeBreakpoints.indexOf(lastBreakpoint) + 1;
36
- maxBreakpointSize = euiTheme.breakpoint[EuiThemeBreakpoints[nextBreakpoint]];
38
+ if (lastBreakpoint !== orderedBreakpoints[orderedBreakpoints.length - 1]) {
39
+ var nextBreakpoint = orderedBreakpoints.indexOf(lastBreakpoint) + 1;
40
+ maxBreakpointSize = euiTheme.breakpoint[orderedBreakpoints[nextBreakpoint]];
37
41
  }
38
42
 
39
- return ['@media only screen', minBreakpointSize ? "(min-width: ".concat(minBreakpointSize, "px)") : false, // If xs/0, don't render a min-width
40
- maxBreakpointSize ? "(max-width: ".concat(maxBreakpointSize - 1, "px)") : false // If xl/undefined, don't render a max-width
43
+ return ['@media only screen', minBreakpointSize ? "(min-width: ".concat(minBreakpointSize, "px)") : false, // If 0, don't render a min-width
44
+ maxBreakpointSize ? "(max-width: ".concat(maxBreakpointSize - 1, "px)") : false // If undefined, don't render a max-width
41
45
  ].filter(Boolean).join(' and ');
42
46
  };
43
47
  export var useEuiBreakpoint = function useEuiBreakpoint(sizes) {
@@ -15,7 +15,8 @@ import { useEuiTheme } from '../../services';
15
15
  * @param offset Accepts a specific measurement or 'inset', 'outset' or 'center' to adjust outline position
16
16
  * @param color Accepts any CSS color, **Note: only works in -webkit-**
17
17
  */
18
- export var euiFocusRing = function euiFocusRing(euiTheme) {
18
+ export var euiFocusRing = function euiFocusRing(_ref) {
19
+ var euiTheme = _ref.euiTheme;
19
20
  var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'center';
20
21
  var options = arguments.length > 2 ? arguments[2] : undefined;
21
22
  // Width is enforced as a constant at the global theme layer
@@ -40,9 +41,7 @@ export var euiFocusRing = function euiFocusRing(euiTheme) {
40
41
  return "\n outline: ".concat(outlineWidth, " solid ").concat(outlineColor, ";\n outline-offset: ").concat(outlineOffset, ";\n\n // \uD83D\uDC40 Chrome respects :focus-visible and allows coloring the `auto` style\n &:focus-visible {\n outline-style: auto;\n }\n\n // \uD83D\uDE45\u200D\u2640\uFE0F But Chrome also needs to have the outline forcefully removed from regular `:focus` state\n &:not(:focus-visible) {\n outline: none;\n }\n ");
41
42
  };
42
43
  export var useEuiFocusRing = function useEuiFocusRing(offset, color) {
43
- var _useEuiTheme = useEuiTheme(),
44
- euiTheme = _useEuiTheme.euiTheme;
45
-
44
+ var euiTheme = useEuiTheme();
46
45
  return euiFocusRing(euiTheme, offset, {
47
46
  color: color
48
47
  });
@@ -7,6 +7,7 @@
7
7
  */
8
8
  import { euiLineHeightFromBaseline, euiFontSizeFromScale } from '../functions/typography';
9
9
  import { useEuiTheme } from '../../services/theme/hooks';
10
+ import { logicalCSS } from '../functions';
10
11
 
11
12
  /**
12
13
  * Returns font-size and line-height
@@ -36,7 +37,8 @@ export var euiTextBreakWord = function euiTextBreakWord() {
36
37
 
37
38
  export var euiTextTruncate = function euiTextTruncate() {
38
39
  var maxWidth = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '100%';
39
- return "\n max-width: ".concat(maxWidth, "; // Ensure that the node has a maximum width after which truncation can occur\n overflow: hidden !important;\n text-overflow: ellipsis !important;\n white-space: nowrap !important;\n");
40
+ return "\n ".concat(logicalCSS('max-width', maxWidth) // Ensure that the node has a maximum width after which truncation can occur
41
+ , "\n overflow: hidden !important;\n text-overflow: ellipsis !important;\n white-space: nowrap !important;\n");
40
42
  };
41
43
  /**
42
44
  * Fixed-width numbers for tabular data
@@ -42,7 +42,7 @@ export var EuiGlobalStyles = function EuiGlobalStyles(_ref) {
42
42
  * Final styles
43
43
  */
44
44
 
45
- var styles = /*#__PURE__*/css(reset, " html{", scrollbarStyles, " ", fontReset, " text-size-adjust:100%;font-kerning:normal;height:100%;background-color:", colors.body, ";color:", colors.text, ";}code,pre,kbd,samp{font-family:", font.familyCode, ";}input,textarea,select{", fontReset, ";}button{font-family:", font.family, ";}em{font-style:italic;}strong{font-weight:", font.weight.bold, ";}*:focus{", euiFocusRing(euiTheme), ";}::selection{background:", transparentize(colors.primary, colorMode === 'LIGHT' ? 0.1 : 0.2), ";}a{color:", colors.primaryText, ";&,&:hover,&:focus{text-decoration:none;}}.euiBody-hasPortalContent{position:relative;};label:styles;");
45
+ var styles = /*#__PURE__*/css(reset, " html{", scrollbarStyles, " ", fontReset, " text-size-adjust:100%;font-kerning:normal;height:100%;background-color:", colors.body, ";color:", colors.text, ";}code,pre,kbd,samp{font-family:", font.familyCode, ";}input,textarea,select{", fontReset, ";}button{font-family:", font.family, ";}em{font-style:italic;}strong{font-weight:", font.weight.bold, ";}*:focus{", euiFocusRing(euiThemeContext), ";}::selection{background:", transparentize(colors.primary, colorMode === 'LIGHT' ? 0.1 : 0.2), ";}a{color:", colors.primaryText, ";&,&:hover,&:focus{text-decoration:none;}}.euiBody-hasPortalContent{position:relative;};label:styles;");
46
46
  return ___EmotionJSX(Global, {
47
47
  styles: styles
48
48
  });
@@ -7,11 +7,19 @@
7
7
  */
8
8
  import React from 'react';
9
9
  import { Global, css } from '@emotion/react';
10
+ import { useEuiTheme } from '../../services/theme/hooks';
10
11
  import { euiScreenReaderOnly } from '../../components/accessibility/screen_reader_only/screen_reader_only.styles';
12
+ import { euiFullHeight, euiTextBreakWord, euiTextTruncate, euiNumberFormat, euiScrollBarStyles, euiYScroll, euiXScroll, euiYScrollWithShadows, euiXScrollWithShadows, euiBreakpoint } from '../mixins';
13
+ import { logicalCSS } from '../functions';
11
14
  import { jsx as ___EmotionJSX } from "@emotion/react";
12
- var globalStyles = /*#__PURE__*/css(".euiScreenReaderOnly{", euiScreenReaderOnly(), ";};label:globalStyles;");
15
+ export var globalStyles = function globalStyles(euiThemeContext) {
16
+ return /*#__PURE__*/css(".euiScreenReaderOnly{", euiScreenReaderOnly(), ";}.eui-alignBaseline{vertical-align:baseline!important;}.eui-alignBottom{vertical-align:bottom!important;}.eui-alignMiddle{vertical-align:middle!important;}.eui-alignTop{vertical-align:top!important;}.eui-displayBlock{display:block!important;}.eui-displayInline{display:inline!important;}.eui-displayInlineBlock{display:inline-block!important;}.eui-fullWidth{display:block!important;", logicalCSS('width', '100% !important'), ";}.eui-fullHeight{", euiFullHeight(), ";}.eui-textCenter{text-align:center!important;}.eui-textLeft{text-align:start!important;}.eui-textRight{text-align:end!important;}.eui-textNoWrap{white-space:nowrap!important;}.eui-textInheritColor{color:inherit!important;}.eui-textBreakWord{", euiTextBreakWord(), ";}.eui-textBreakAll{overflow-wrap:break-word!important;word-break:break-all!important;}.eui-textBreakNormal{overflow-wrap:normal!important;word-wrap:normal!important;word-break:normal!important;}.eui-textTruncate{", euiTextTruncate(), ";}.eui-textNumber{", euiNumberFormat(euiThemeContext), ";}.eui-scrollBar{", euiScrollBarStyles(euiThemeContext), ";}.eui-yScroll{", euiYScroll(euiThemeContext), ";}.eui-xScroll{", euiXScroll(euiThemeContext), ";}.eui-yScrollWithShadows{", euiYScrollWithShadows(euiThemeContext), ";}.eui-xScrollWithShadows{", euiXScrollWithShadows(euiThemeContext), ";}[class*='eui-showFor']{display:none!important;}", Object.keys(euiThemeContext.euiTheme.breakpoint).map(function (size) {
17
+ return "\n .eui-hideFor--".concat(size, " {\n ").concat(euiBreakpoint(euiThemeContext, [size]), " {\n display: none !important;\n }\n }\n .eui-showFor--").concat(size, " {\n ").concat(euiBreakpoint(euiThemeContext, [size]), " {\n display: inline !important;\n }\n }\n .eui-showFor--").concat(size, "--block {\n ").concat(euiBreakpoint(euiThemeContext, [size]), " {\n display: block !important;\n }\n }\n .eui-showFor--").concat(size, "--inlineBlock {\n ").concat(euiBreakpoint(euiThemeContext, [size]), " {\n display: inline-block !important;\n }\n }\n .eui-showFor--").concat(size, "--flex {\n ").concat(euiBreakpoint(euiThemeContext, [size]), " {\n display: flex !important;\n }\n }");
18
+ }), ";;label:globalStyles;");
19
+ };
13
20
  export var EuiUtilityClasses = function EuiUtilityClasses() {
21
+ var euiTheme = useEuiTheme();
14
22
  return ___EmotionJSX(Global, {
15
- styles: globalStyles
23
+ styles: globalStyles(euiTheme)
16
24
  });
17
25
  };
@@ -5,4 +5,5 @@
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
- export var EuiThemeBreakpoints = ['xs', 's', 'm', 'l', 'xl'];
8
+ export var EuiThemeBreakpoints = ['xs', 's', 'm', 'l', 'xl']; // This type cannot be a string enum / must be a generic string
9
+ // in case consumers add custom breakpoint sizes, such as xxl or xxs
@@ -0,0 +1,41 @@
1
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
+
3
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
+
5
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
6
+
7
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
8
+
9
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
10
+
11
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
12
+
13
+ /*
14
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
15
+ * or more contributor license agreements. Licensed under the Elastic License
16
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
17
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
18
+ * Side Public License, v 1.
19
+ */
20
+ export var sortMapByLargeToSmallValues = function sortMapByLargeToSmallValues(breakpointsMap) {
21
+ return Object.fromEntries(Object.entries(breakpointsMap).sort(function (_ref, _ref2) {
22
+ var _ref3 = _slicedToArray(_ref, 2),
23
+ a = _ref3[1];
24
+
25
+ var _ref4 = _slicedToArray(_ref2, 2),
26
+ b = _ref4[1];
27
+
28
+ return b - a;
29
+ }));
30
+ };
31
+ export var sortMapBySmallToLargeValues = function sortMapBySmallToLargeValues(breakpointsMap) {
32
+ return Object.fromEntries(Object.entries(breakpointsMap).sort(function (_ref5, _ref6) {
33
+ var _ref7 = _slicedToArray(_ref5, 2),
34
+ a = _ref7[1];
35
+
36
+ var _ref8 = _slicedToArray(_ref6, 2),
37
+ b = _ref8[1];
38
+
39
+ return a - b;
40
+ }));
41
+ };
@@ -17,10 +17,11 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
17
17
  * in compliance with, at your election, the Elastic License 2.0 or the Server
18
18
  * Side Public License, v 1.
19
19
  */
20
- import React, { createContext, useState, useEffect } from 'react';
20
+ import React, { createContext, useState, useEffect, useMemo, useCallback } from 'react';
21
+ import { keysOf } from '../../components/common';
21
22
  import { useEuiTheme } from '../theme';
22
23
  import { throttle } from '../throttle';
23
- import { getBreakpoint } from './breakpoint';
24
+ import { sortMapByLargeToSmallValues } from './_sorting';
24
25
  import { jsx as ___EmotionJSX } from "@emotion/react";
25
26
  export var CurrentEuiBreakpointContext = /*#__PURE__*/createContext(undefined);
26
27
  /**
@@ -31,23 +32,35 @@ export var CurrentEuiBreakpointContext = /*#__PURE__*/createContext(undefined);
31
32
  export var CurrentEuiBreakpointProvider = function CurrentEuiBreakpointProvider(_ref) {
32
33
  var children = _ref.children;
33
34
 
35
+ // Obtain the breakpoints map from the EUI theme
34
36
  var _useEuiTheme = useEuiTheme(),
35
- breakpoints = _useEuiTheme.euiTheme.breakpoint;
37
+ breakpoints = _useEuiTheme.euiTheme.breakpoint; // Ensure the breakpoints map is sorted from largest value to smallest
36
38
 
37
- var _useState = useState(typeof window !== 'undefined' ? getBreakpoint(window.innerWidth, breakpoints) : undefined),
39
+
40
+ var sortedBreakpoints = useMemo(function () {
41
+ return sortMapByLargeToSmallValues(breakpoints);
42
+ }, [breakpoints]); // Find the breakpoint (key) whose value is <= windowWidth starting with largest first
43
+
44
+ var getBreakpoint = useCallback(function (width) {
45
+ return keysOf(sortedBreakpoints).find(function (key) {
46
+ return sortedBreakpoints[key] <= width;
47
+ });
48
+ }, [sortedBreakpoints]);
49
+
50
+ var _useState = useState(typeof window !== 'undefined' ? getBreakpoint(window.innerWidth) : undefined),
38
51
  _useState2 = _slicedToArray(_useState, 2),
39
52
  currentBreakpoint = _useState2[0],
40
53
  setCurrentBreakpoint = _useState2[1];
41
54
 
42
55
  useEffect(function () {
43
56
  var onWindowResize = throttle(function () {
44
- setCurrentBreakpoint(getBreakpoint(window.innerWidth, breakpoints));
57
+ setCurrentBreakpoint(getBreakpoint(window.innerWidth));
45
58
  }, 50);
46
59
  window.addEventListener('resize', onWindowResize);
47
60
  return function () {
48
61
  return window.removeEventListener('resize', onWindowResize);
49
62
  };
50
- }, [breakpoints]);
63
+ }, [getBreakpoint]);
51
64
  return ___EmotionJSX(CurrentEuiBreakpointContext.Provider, {
52
65
  value: currentBreakpoint
53
66
  }, children);
@@ -5,7 +5,7 @@
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
- export * from './breakpoint';
9
8
  export * from './current_breakpoint';
10
9
  export * from './current_breakpoint_hook';
11
- export * from './useIsWithinBreakpoints';
10
+ export * from './is_within_hooks';
11
+ export {};
@@ -0,0 +1,67 @@
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 { useEuiTheme } from '../theme';
9
+ import { useCurrentEuiBreakpoint } from './current_breakpoint_hook';
10
+ /**
11
+ * Given an array of breakpoint keys, this hook returns true or false
12
+ * if the breakpoint size of the current window width falls within
13
+ * any of the named breakpoints.
14
+ *
15
+ * @param {EuiThemeBreakpoint[]} sizes An array of named EUI breakpoints
16
+ * @param {boolean} isResponsive Some components have the option to turn off responsive behavior.
17
+ * Since hooks can't be called conditionally, it's easier to pass the condition into the hook
18
+ * @returns {boolean} Returns `true` if current breakpoint name is included in `sizes`
19
+ */
20
+
21
+ export var useIsWithinBreakpoints = function useIsWithinBreakpoints(sizes) {
22
+ var isResponsive = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
23
+ var currentBreakpoint = useCurrentEuiBreakpoint();
24
+ return currentBreakpoint && isResponsive ? sizes.includes(currentBreakpoint) : false;
25
+ };
26
+ /**
27
+ * Given a max breakpoint key, this hook returns true if the breakpoint size
28
+ * of the current window width falls within the max breakpoint or any below,
29
+ * and false otherwise
30
+ *
31
+ * @param {EuiThemeBreakpoint} max The named max breakpoint to check against
32
+ * @returns {boolean} Will return `false` if it can't find a value for the `max` breakpoint
33
+ */
34
+
35
+ export function useIsWithinMaxBreakpoint(max) {
36
+ var _useEuiTheme = useEuiTheme(),
37
+ breakpoints = _useEuiTheme.euiTheme.breakpoint;
38
+
39
+ var currentBreakpoint = useCurrentEuiBreakpoint();
40
+
41
+ if (currentBreakpoint == null || breakpoints[max] == null) {
42
+ return false;
43
+ }
44
+
45
+ return breakpoints[currentBreakpoint] <= breakpoints[max];
46
+ }
47
+ /**
48
+ * Given a min breakpoint key, this hook returns true if the breakpoint size
49
+ * of the current window width falls within the min breakpoint or any above,
50
+ * and false otherwise
51
+ *
52
+ * @param {EuiThemeBreakpoint} min The named min breakpoint to check against
53
+ * @returns {boolean} Will return `false` if it can't find a value for the `min` breakpoint
54
+ */
55
+
56
+ export function useIsWithinMinBreakpoint(min) {
57
+ var _useEuiTheme2 = useEuiTheme(),
58
+ breakpoints = _useEuiTheme2.euiTheme.breakpoint;
59
+
60
+ var currentBreakpoint = useCurrentEuiBreakpoint();
61
+
62
+ if (currentBreakpoint == null || breakpoints[min] == null) {
63
+ return false;
64
+ }
65
+
66
+ return breakpoints[currentBreakpoint] >= breakpoints[min];
67
+ }