@elastic/eui 93.2.0 → 93.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (418) hide show
  1. package/dist/eui_charts_theme.d.ts +9 -0
  2. package/dist/eui_charts_theme.js +56 -14
  3. package/dist/eui_charts_theme.js.map +1 -1
  4. package/dist/eui_theme_dark.css +3 -0
  5. package/dist/eui_theme_dark.min.css +1 -1
  6. package/dist/eui_theme_light.css +3 -0
  7. package/dist/eui_theme_light.min.css +1 -1
  8. package/es/components/breadcrumbs/_breadcrumb_content.js +362 -0
  9. package/es/components/breadcrumbs/_breadcrumb_content.styles.js +48 -0
  10. package/es/components/breadcrumbs/breadcrumb.js +10 -324
  11. package/es/components/breadcrumbs/breadcrumb.styles.js +5 -27
  12. package/es/components/breadcrumbs/breadcrumbs.js +8 -6
  13. package/es/components/breadcrumbs/types.js +1 -0
  14. package/es/components/button/button_display/_button_display.js +2 -3
  15. package/es/components/button/button_empty/button_empty.js +2 -3
  16. package/es/components/button/button_group/button_group.js +19 -7
  17. package/es/components/button/button_group/button_group.styles.js +11 -14
  18. package/es/components/button/button_group/button_group_button.js +59 -5
  19. package/es/components/button/button_group/button_group_button.styles.js +39 -3
  20. package/es/components/button/button_icon/button_icon.js +4 -5
  21. package/es/components/button/button_icon/button_icon.styles.js +11 -3
  22. package/es/components/datagrid/body/cell/data_grid_cell.js +102 -59
  23. package/es/components/datagrid/body/cell/data_grid_cell_actions.js +24 -18
  24. package/es/components/datagrid/body/cell/data_grid_cell_popover.js +64 -56
  25. package/es/components/datagrid/body/cell/data_grid_cell_wrapper.js +34 -31
  26. package/es/components/datagrid/body/cell/index.js +1 -1
  27. package/es/components/datagrid/body/data_grid_body.js +14 -0
  28. package/es/components/datagrid/body/data_grid_body_custom.js +54 -35
  29. package/es/components/datagrid/body/data_grid_body_virtualized.js +87 -56
  30. package/es/components/datagrid/body/data_grid_row_manager.js +7 -5
  31. package/es/components/datagrid/body/footer/use_data_grid_footer.js +1 -2
  32. package/es/components/datagrid/body/header/data_grid_control_header_cell.js +5 -4
  33. package/es/components/datagrid/body/header/data_grid_header_cell.js +73 -53
  34. package/es/components/datagrid/body/header/data_grid_header_row.js +15 -551
  35. package/es/components/datagrid/body/header/use_data_grid_header.js +7 -6
  36. package/es/components/datagrid/controls/column_selector.js +126 -123
  37. package/es/components/datagrid/controls/column_sorting.js +605 -103
  38. package/es/components/datagrid/controls/column_sorting_draggable.js +24 -22
  39. package/es/components/datagrid/controls/display_selector.js +109 -107
  40. package/es/components/datagrid/data_grid.a11y.js +13 -12
  41. package/es/components/datagrid/data_grid.js +47 -22
  42. package/es/components/datagrid/utils/col_widths.js +12 -8
  43. package/es/components/datagrid/utils/focus.js +10 -8
  44. package/es/components/datagrid/utils/grid_height_width.js +31 -30
  45. package/es/components/datagrid/utils/ref.js +1 -1
  46. package/es/components/datagrid/utils/row_heights.js +2 -2
  47. package/es/components/datagrid/utils/sorting.js +29 -27
  48. package/es/components/date_picker/super_date_picker/super_date_picker.js +9 -0
  49. package/es/components/date_picker/super_date_picker/super_update_button.js +57 -29
  50. package/es/components/facet/facet_button.styles.js +1 -2
  51. package/es/components/flex/flex_grid.js +22 -8
  52. package/es/components/flex/flex_grid.styles.js +13 -6
  53. package/es/components/flex/flex_group.js +10 -11
  54. package/es/components/flex/flex_item.js +9 -11
  55. package/es/components/flex/flex_item.styles.js +107 -122
  56. package/es/components/flyout/flyout.js +16 -18
  57. package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +7 -7
  58. package/es/components/icon/icon.js +13 -16
  59. package/es/components/icon/icon.styles.js +6 -9
  60. package/es/components/link/external_link_icon.js +11 -8
  61. package/es/components/link/link.js +2 -3
  62. package/es/components/link/link.styles.js +4 -10
  63. package/es/components/modal/confirm_modal.js +2 -1
  64. package/es/components/modal/modal.js +12 -3
  65. package/es/components/observer/resize_observer/resize_observer.js +15 -24
  66. package/es/components/page/page_header/page_header_content.js +4 -2
  67. package/es/components/progress/progress.styles.js +2 -2
  68. package/es/components/skeleton/skeleton_circle.js +2 -3
  69. package/es/components/skeleton/skeleton_rectangle.js +2 -3
  70. package/es/components/skeleton/skeleton_text.js +16 -12
  71. package/es/components/skeleton/skeleton_title.js +2 -3
  72. package/es/components/spacer/spacer.js +2 -3
  73. package/es/components/text/text.js +2 -3
  74. package/es/components/text/text_align.js +1 -2
  75. package/es/components/text/text_align.styles.js +5 -7
  76. package/es/components/text/text_color.js +2 -3
  77. package/es/components/title/title.js +2 -3
  78. package/es/components/title/title.styles.js +0 -7
  79. package/es/components/toast/global_toast_list.js +70 -73
  80. package/es/components/toast/toast.js +27 -42
  81. package/es/components/toast/toast.styles.js +2 -17
  82. package/es/global_styling/mixins/_typography.js +17 -6
  83. package/es/services/color/eui_palettes.js +21 -13
  84. package/es/services/color/index.js +1 -1
  85. package/es/services/hooks/index.js +1 -0
  86. package/es/services/hooks/useDeepEqual.js +23 -0
  87. package/es/services/index.js +1 -1
  88. package/es/services/theme/index.js +1 -1
  89. package/es/services/theme/style_memoization.js +47 -14
  90. package/es/themes/amsterdam/global_styling/mixins/button.js +47 -24
  91. package/eui.d.ts +2862 -2748
  92. package/i18ntokens.json +267 -267
  93. package/lib/components/breadcrumbs/_breadcrumb_content.js +372 -0
  94. package/lib/components/breadcrumbs/_breadcrumb_content.styles.js +55 -0
  95. package/lib/components/breadcrumbs/breadcrumb.js +11 -328
  96. package/lib/components/breadcrumbs/breadcrumb.styles.js +5 -29
  97. package/lib/components/breadcrumbs/breadcrumbs.js +7 -5
  98. package/lib/components/breadcrumbs/types.js +5 -0
  99. package/lib/components/button/button_display/_button_display.js +1 -2
  100. package/lib/components/button/button_empty/button_empty.js +1 -2
  101. package/lib/components/button/button_group/button_group.js +18 -6
  102. package/lib/components/button/button_group/button_group.styles.js +11 -14
  103. package/lib/components/button/button_group/button_group_button.js +59 -5
  104. package/lib/components/button/button_group/button_group_button.styles.js +45 -11
  105. package/lib/components/button/button_icon/button_icon.js +3 -4
  106. package/lib/components/button/button_icon/button_icon.styles.js +10 -2
  107. package/lib/components/datagrid/body/cell/data_grid_cell.js +100 -58
  108. package/lib/components/datagrid/body/cell/data_grid_cell_actions.js +24 -18
  109. package/lib/components/datagrid/body/cell/data_grid_cell_popover.js +63 -55
  110. package/lib/components/datagrid/body/cell/data_grid_cell_wrapper.js +34 -31
  111. package/lib/components/datagrid/body/cell/index.js +2 -2
  112. package/lib/components/datagrid/body/data_grid_body.js +14 -0
  113. package/lib/components/datagrid/body/data_grid_body_custom.js +53 -34
  114. package/lib/components/datagrid/body/data_grid_body_virtualized.js +86 -55
  115. package/lib/components/datagrid/body/data_grid_row_manager.js +6 -4
  116. package/lib/components/datagrid/body/footer/use_data_grid_footer.js +1 -2
  117. package/lib/components/datagrid/body/header/data_grid_control_header_cell.js +8 -4
  118. package/lib/components/datagrid/body/header/data_grid_header_cell.js +72 -52
  119. package/lib/components/datagrid/body/header/data_grid_header_row.js +14 -550
  120. package/lib/components/datagrid/body/header/use_data_grid_header.js +7 -6
  121. package/lib/components/datagrid/controls/column_selector.js +126 -123
  122. package/lib/components/datagrid/controls/column_sorting.js +615 -110
  123. package/lib/components/datagrid/controls/column_sorting_draggable.js +27 -22
  124. package/lib/components/datagrid/controls/display_selector.js +109 -107
  125. package/lib/components/datagrid/data_grid.a11y.js +13 -12
  126. package/lib/components/datagrid/data_grid.js +45 -20
  127. package/lib/components/datagrid/utils/col_widths.js +12 -8
  128. package/lib/components/datagrid/utils/focus.js +10 -8
  129. package/lib/components/datagrid/utils/grid_height_width.js +29 -28
  130. package/lib/components/datagrid/utils/ref.js +1 -1
  131. package/lib/components/datagrid/utils/row_heights.js +1 -1
  132. package/lib/components/datagrid/utils/sorting.js +31 -29
  133. package/lib/components/date_picker/super_date_picker/super_date_picker.js +9 -0
  134. package/lib/components/date_picker/super_date_picker/super_update_button.js +57 -29
  135. package/lib/components/facet/facet_button.styles.js +1 -2
  136. package/lib/components/flex/flex_grid.js +23 -7
  137. package/lib/components/flex/flex_grid.styles.js +13 -6
  138. package/lib/components/flex/flex_group.js +10 -10
  139. package/lib/components/flex/flex_item.js +13 -13
  140. package/lib/components/flex/flex_item.styles.js +107 -122
  141. package/lib/components/flyout/flyout.js +16 -18
  142. package/lib/components/header/header_breadcrumbs/header_breadcrumbs.js +7 -7
  143. package/lib/components/icon/icon.js +12 -15
  144. package/lib/components/icon/icon.styles.js +5 -8
  145. package/lib/components/link/external_link_icon.js +10 -7
  146. package/lib/components/link/link.js +1 -2
  147. package/lib/components/link/link.styles.js +6 -14
  148. package/lib/components/modal/confirm_modal.js +2 -1
  149. package/lib/components/modal/modal.js +12 -3
  150. package/lib/components/observer/resize_observer/resize_observer.js +15 -24
  151. package/lib/components/page/page_header/page_header_content.js +4 -2
  152. package/lib/components/progress/progress.styles.js +1 -1
  153. package/lib/components/skeleton/skeleton_circle.js +1 -2
  154. package/lib/components/skeleton/skeleton_rectangle.js +1 -2
  155. package/lib/components/skeleton/skeleton_text.js +18 -11
  156. package/lib/components/skeleton/skeleton_title.js +1 -2
  157. package/lib/components/spacer/spacer.js +1 -2
  158. package/lib/components/text/text.js +1 -2
  159. package/lib/components/text/text_align.js +1 -2
  160. package/lib/components/text/text_align.styles.js +5 -7
  161. package/lib/components/text/text_color.js +1 -2
  162. package/lib/components/title/title.js +1 -2
  163. package/lib/components/title/title.styles.js +2 -10
  164. package/lib/components/toast/global_toast_list.js +68 -71
  165. package/lib/components/toast/toast.js +25 -40
  166. package/lib/components/toast/toast.styles.js +11 -25
  167. package/lib/global_styling/mixins/_typography.js +27 -19
  168. package/lib/services/color/eui_palettes.js +24 -14
  169. package/lib/services/color/index.js +14 -0
  170. package/lib/services/hooks/index.js +11 -0
  171. package/lib/services/hooks/useDeepEqual.js +30 -0
  172. package/lib/services/index.js +15 -1
  173. package/lib/services/theme/index.js +6 -0
  174. package/lib/services/theme/style_memoization.js +49 -16
  175. package/lib/themes/amsterdam/global_styling/mixins/button.js +49 -25
  176. package/optimize/es/components/breadcrumbs/_breadcrumb_content.js +153 -0
  177. package/optimize/es/components/breadcrumbs/_breadcrumb_content.styles.js +48 -0
  178. package/optimize/es/components/breadcrumbs/breadcrumb.js +10 -109
  179. package/optimize/es/components/breadcrumbs/breadcrumb.styles.js +5 -27
  180. package/optimize/es/components/breadcrumbs/breadcrumbs.js +4 -4
  181. package/optimize/es/components/breadcrumbs/types.js +1 -0
  182. package/optimize/es/components/button/button_display/_button_display.js +2 -3
  183. package/optimize/es/components/button/button_empty/button_empty.js +2 -3
  184. package/optimize/es/components/button/button_group/button_group.js +5 -7
  185. package/optimize/es/components/button/button_group/button_group.styles.js +11 -14
  186. package/optimize/es/components/button/button_group/button_group_button.js +36 -4
  187. package/optimize/es/components/button/button_group/button_group_button.styles.js +39 -3
  188. package/optimize/es/components/button/button_icon/button_icon.js +4 -5
  189. package/optimize/es/components/button/button_icon/button_icon.styles.js +8 -3
  190. package/optimize/es/components/datagrid/body/cell/data_grid_cell.js +83 -56
  191. package/optimize/es/components/datagrid/body/cell/data_grid_cell_actions.js +24 -18
  192. package/optimize/es/components/datagrid/body/cell/data_grid_cell_popover.js +64 -56
  193. package/optimize/es/components/datagrid/body/cell/data_grid_cell_wrapper.js +34 -31
  194. package/optimize/es/components/datagrid/body/cell/index.js +1 -1
  195. package/optimize/es/components/datagrid/body/data_grid_body_custom.js +40 -35
  196. package/optimize/es/components/datagrid/body/data_grid_body_virtualized.js +71 -49
  197. package/optimize/es/components/datagrid/body/data_grid_row_manager.js +7 -5
  198. package/optimize/es/components/datagrid/body/footer/use_data_grid_footer.js +1 -2
  199. package/optimize/es/components/datagrid/body/header/data_grid_control_header_cell.js +4 -3
  200. package/optimize/es/components/datagrid/body/header/data_grid_header_cell.js +65 -49
  201. package/optimize/es/components/datagrid/body/header/data_grid_header_row.js +15 -13
  202. package/optimize/es/components/datagrid/body/header/use_data_grid_header.js +7 -6
  203. package/optimize/es/components/datagrid/controls/column_selector.js +126 -123
  204. package/optimize/es/components/datagrid/controls/column_sorting.js +121 -103
  205. package/optimize/es/components/datagrid/controls/column_sorting_draggable.js +24 -22
  206. package/optimize/es/components/datagrid/controls/display_selector.js +109 -107
  207. package/optimize/es/components/datagrid/data_grid.a11y.js +13 -12
  208. package/optimize/es/components/datagrid/data_grid.js +47 -22
  209. package/optimize/es/components/datagrid/utils/col_widths.js +9 -5
  210. package/optimize/es/components/datagrid/utils/focus.js +10 -8
  211. package/optimize/es/components/datagrid/utils/grid_height_width.js +31 -30
  212. package/optimize/es/components/datagrid/utils/ref.js +1 -1
  213. package/optimize/es/components/datagrid/utils/row_heights.js +2 -2
  214. package/optimize/es/components/datagrid/utils/sorting.js +29 -27
  215. package/optimize/es/components/date_picker/super_date_picker/super_update_button.js +49 -29
  216. package/optimize/es/components/facet/facet_button.styles.js +1 -2
  217. package/optimize/es/components/flex/flex_grid.js +19 -8
  218. package/optimize/es/components/flex/flex_grid.styles.js +13 -6
  219. package/optimize/es/components/flex/flex_group.js +9 -10
  220. package/optimize/es/components/flex/flex_item.js +9 -11
  221. package/optimize/es/components/flex/flex_item.styles.js +107 -122
  222. package/optimize/es/components/flyout/flyout.js +16 -18
  223. package/optimize/es/components/header/header_breadcrumbs/header_breadcrumbs.js +3 -5
  224. package/optimize/es/components/icon/icon.js +13 -16
  225. package/optimize/es/components/icon/icon.styles.js +6 -9
  226. package/optimize/es/components/link/external_link_icon.js +11 -8
  227. package/optimize/es/components/link/link.js +2 -3
  228. package/optimize/es/components/link/link.styles.js +4 -10
  229. package/optimize/es/components/modal/confirm_modal.js +2 -1
  230. package/optimize/es/components/modal/modal.js +6 -2
  231. package/optimize/es/components/observer/resize_observer/resize_observer.js +15 -24
  232. package/optimize/es/components/progress/progress.styles.js +2 -2
  233. package/optimize/es/components/skeleton/skeleton_circle.js +2 -3
  234. package/optimize/es/components/skeleton/skeleton_rectangle.js +2 -3
  235. package/optimize/es/components/skeleton/skeleton_text.js +16 -12
  236. package/optimize/es/components/skeleton/skeleton_title.js +2 -3
  237. package/optimize/es/components/spacer/spacer.js +2 -3
  238. package/optimize/es/components/text/text.js +2 -3
  239. package/optimize/es/components/text/text_align.js +1 -2
  240. package/optimize/es/components/text/text_align.styles.js +5 -7
  241. package/optimize/es/components/text/text_color.js +2 -3
  242. package/optimize/es/components/title/title.js +2 -3
  243. package/optimize/es/components/title/title.styles.js +0 -7
  244. package/optimize/es/components/toast/global_toast_list.js +70 -73
  245. package/optimize/es/components/toast/toast.js +27 -42
  246. package/optimize/es/components/toast/toast.styles.js +2 -17
  247. package/optimize/es/global_styling/mixins/_typography.js +14 -6
  248. package/optimize/es/services/color/eui_palettes.js +21 -13
  249. package/optimize/es/services/color/index.js +1 -1
  250. package/optimize/es/services/hooks/index.js +1 -0
  251. package/optimize/es/services/hooks/useDeepEqual.js +23 -0
  252. package/optimize/es/services/index.js +1 -1
  253. package/optimize/es/services/theme/index.js +1 -1
  254. package/optimize/es/services/theme/style_memoization.js +47 -14
  255. package/optimize/es/themes/amsterdam/global_styling/mixins/button.js +47 -24
  256. package/optimize/lib/components/breadcrumbs/_breadcrumb_content.js +163 -0
  257. package/optimize/lib/components/breadcrumbs/_breadcrumb_content.styles.js +55 -0
  258. package/optimize/lib/components/breadcrumbs/breadcrumb.js +10 -112
  259. package/optimize/lib/components/breadcrumbs/breadcrumb.styles.js +5 -29
  260. package/optimize/lib/components/breadcrumbs/breadcrumbs.js +3 -3
  261. package/optimize/lib/components/breadcrumbs/types.js +5 -0
  262. package/optimize/lib/components/button/button_display/_button_display.js +1 -2
  263. package/optimize/lib/components/button/button_empty/button_empty.js +1 -2
  264. package/optimize/lib/components/button/button_group/button_group.js +4 -6
  265. package/optimize/lib/components/button/button_group/button_group.styles.js +11 -14
  266. package/optimize/lib/components/button/button_group/button_group_button.js +37 -5
  267. package/optimize/lib/components/button/button_group/button_group_button.styles.js +45 -11
  268. package/optimize/lib/components/button/button_icon/button_icon.js +3 -4
  269. package/optimize/lib/components/button/button_icon/button_icon.styles.js +8 -2
  270. package/optimize/lib/components/datagrid/body/cell/data_grid_cell.js +81 -55
  271. package/optimize/lib/components/datagrid/body/cell/data_grid_cell_actions.js +24 -18
  272. package/optimize/lib/components/datagrid/body/cell/data_grid_cell_popover.js +63 -55
  273. package/optimize/lib/components/datagrid/body/cell/data_grid_cell_wrapper.js +34 -31
  274. package/optimize/lib/components/datagrid/body/cell/index.js +2 -2
  275. package/optimize/lib/components/datagrid/body/data_grid_body_custom.js +39 -34
  276. package/optimize/lib/components/datagrid/body/data_grid_body_virtualized.js +72 -50
  277. package/optimize/lib/components/datagrid/body/data_grid_row_manager.js +6 -4
  278. package/optimize/lib/components/datagrid/body/footer/use_data_grid_footer.js +1 -2
  279. package/optimize/lib/components/datagrid/body/header/data_grid_control_header_cell.js +8 -4
  280. package/optimize/lib/components/datagrid/body/header/data_grid_header_cell.js +65 -49
  281. package/optimize/lib/components/datagrid/body/header/data_grid_header_row.js +14 -12
  282. package/optimize/lib/components/datagrid/body/header/use_data_grid_header.js +7 -6
  283. package/optimize/lib/components/datagrid/controls/column_selector.js +126 -123
  284. package/optimize/lib/components/datagrid/controls/column_sorting.js +125 -107
  285. package/optimize/lib/components/datagrid/controls/column_sorting_draggable.js +27 -22
  286. package/optimize/lib/components/datagrid/controls/display_selector.js +109 -107
  287. package/optimize/lib/components/datagrid/data_grid.a11y.js +13 -12
  288. package/optimize/lib/components/datagrid/data_grid.js +45 -20
  289. package/optimize/lib/components/datagrid/utils/col_widths.js +9 -5
  290. package/optimize/lib/components/datagrid/utils/focus.js +10 -8
  291. package/optimize/lib/components/datagrid/utils/grid_height_width.js +29 -28
  292. package/optimize/lib/components/datagrid/utils/ref.js +1 -1
  293. package/optimize/lib/components/datagrid/utils/row_heights.js +1 -1
  294. package/optimize/lib/components/datagrid/utils/sorting.js +31 -29
  295. package/optimize/lib/components/date_picker/super_date_picker/super_update_button.js +49 -29
  296. package/optimize/lib/components/facet/facet_button.styles.js +1 -2
  297. package/optimize/lib/components/flex/flex_grid.js +21 -7
  298. package/optimize/lib/components/flex/flex_grid.styles.js +13 -6
  299. package/optimize/lib/components/flex/flex_group.js +9 -9
  300. package/optimize/lib/components/flex/flex_item.js +13 -13
  301. package/optimize/lib/components/flex/flex_item.styles.js +107 -122
  302. package/optimize/lib/components/flyout/flyout.js +16 -18
  303. package/optimize/lib/components/header/header_breadcrumbs/header_breadcrumbs.js +3 -5
  304. package/optimize/lib/components/icon/icon.js +12 -15
  305. package/optimize/lib/components/icon/icon.styles.js +5 -8
  306. package/optimize/lib/components/link/external_link_icon.js +10 -7
  307. package/optimize/lib/components/link/link.js +1 -2
  308. package/optimize/lib/components/link/link.styles.js +6 -14
  309. package/optimize/lib/components/modal/confirm_modal.js +2 -1
  310. package/optimize/lib/components/modal/modal.js +6 -2
  311. package/optimize/lib/components/observer/resize_observer/resize_observer.js +15 -24
  312. package/optimize/lib/components/progress/progress.styles.js +1 -1
  313. package/optimize/lib/components/skeleton/skeleton_circle.js +1 -2
  314. package/optimize/lib/components/skeleton/skeleton_rectangle.js +1 -2
  315. package/optimize/lib/components/skeleton/skeleton_text.js +18 -11
  316. package/optimize/lib/components/skeleton/skeleton_title.js +1 -2
  317. package/optimize/lib/components/spacer/spacer.js +1 -2
  318. package/optimize/lib/components/text/text.js +1 -2
  319. package/optimize/lib/components/text/text_align.js +1 -2
  320. package/optimize/lib/components/text/text_align.styles.js +5 -7
  321. package/optimize/lib/components/text/text_color.js +1 -2
  322. package/optimize/lib/components/title/title.js +1 -2
  323. package/optimize/lib/components/title/title.styles.js +2 -10
  324. package/optimize/lib/components/toast/global_toast_list.js +68 -71
  325. package/optimize/lib/components/toast/toast.js +25 -40
  326. package/optimize/lib/components/toast/toast.styles.js +11 -25
  327. package/optimize/lib/global_styling/mixins/_typography.js +25 -19
  328. package/optimize/lib/services/color/eui_palettes.js +24 -14
  329. package/optimize/lib/services/color/index.js +14 -0
  330. package/optimize/lib/services/hooks/index.js +11 -0
  331. package/optimize/lib/services/hooks/useDeepEqual.js +30 -0
  332. package/optimize/lib/services/index.js +15 -1
  333. package/optimize/lib/services/theme/index.js +6 -0
  334. package/optimize/lib/services/theme/style_memoization.js +49 -16
  335. package/optimize/lib/themes/amsterdam/global_styling/mixins/button.js +49 -26
  336. package/package.json +3 -3
  337. package/src/components/datagrid/_data_grid_data_row.scss +4 -0
  338. package/test-env/components/breadcrumbs/_breadcrumb_content.js +363 -0
  339. package/test-env/components/breadcrumbs/_breadcrumb_content.styles.js +55 -0
  340. package/test-env/components/breadcrumbs/breadcrumb.js +11 -323
  341. package/test-env/components/breadcrumbs/breadcrumb.styles.js +5 -29
  342. package/test-env/components/breadcrumbs/breadcrumbs.js +7 -5
  343. package/test-env/components/breadcrumbs/types.js +5 -0
  344. package/test-env/components/button/button_display/_button_display.js +1 -2
  345. package/test-env/components/button/button_empty/button_empty.js +1 -2
  346. package/test-env/components/button/button_group/button_group.js +18 -6
  347. package/test-env/components/button/button_group/button_group.styles.js +11 -14
  348. package/test-env/components/button/button_group/button_group_button.js +56 -5
  349. package/test-env/components/button/button_group/button_group_button.styles.js +45 -11
  350. package/test-env/components/button/button_icon/button_icon.js +3 -4
  351. package/test-env/components/button/button_icon/button_icon.styles.js +8 -2
  352. package/test-env/components/datagrid/body/cell/data_grid_cell.js +100 -58
  353. package/test-env/components/datagrid/body/cell/data_grid_cell_actions.js +24 -18
  354. package/test-env/components/datagrid/body/cell/data_grid_cell_popover.js +63 -55
  355. package/test-env/components/datagrid/body/cell/data_grid_cell_wrapper.js +34 -31
  356. package/test-env/components/datagrid/body/cell/index.js +2 -2
  357. package/test-env/components/datagrid/body/data_grid_body.js +14 -0
  358. package/test-env/components/datagrid/body/data_grid_body_custom.js +53 -34
  359. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +86 -55
  360. package/test-env/components/datagrid/body/data_grid_row_manager.js +6 -4
  361. package/test-env/components/datagrid/body/footer/use_data_grid_footer.js +1 -2
  362. package/test-env/components/datagrid/body/header/data_grid_control_header_cell.js +8 -4
  363. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +72 -52
  364. package/test-env/components/datagrid/body/header/data_grid_header_row.js +14 -550
  365. package/test-env/components/datagrid/body/header/use_data_grid_header.js +7 -6
  366. package/test-env/components/datagrid/controls/column_selector.js +126 -123
  367. package/test-env/components/datagrid/controls/column_sorting.js +607 -106
  368. package/test-env/components/datagrid/controls/column_sorting_draggable.js +27 -22
  369. package/test-env/components/datagrid/controls/display_selector.js +109 -107
  370. package/test-env/components/datagrid/data_grid.a11y.js +13 -12
  371. package/test-env/components/datagrid/data_grid.js +45 -20
  372. package/test-env/components/datagrid/utils/col_widths.js +9 -5
  373. package/test-env/components/datagrid/utils/focus.js +10 -8
  374. package/test-env/components/datagrid/utils/grid_height_width.js +29 -28
  375. package/test-env/components/datagrid/utils/ref.js +1 -1
  376. package/test-env/components/datagrid/utils/row_heights.js +1 -1
  377. package/test-env/components/datagrid/utils/sorting.js +31 -29
  378. package/test-env/components/date_picker/super_date_picker/super_date_picker.js +9 -0
  379. package/test-env/components/date_picker/super_date_picker/super_update_button.js +57 -29
  380. package/test-env/components/facet/facet_button.styles.js +1 -2
  381. package/test-env/components/flex/flex_grid.js +21 -7
  382. package/test-env/components/flex/flex_grid.styles.js +13 -6
  383. package/test-env/components/flex/flex_group.js +10 -10
  384. package/test-env/components/flex/flex_item.js +13 -13
  385. package/test-env/components/flex/flex_item.styles.js +107 -122
  386. package/test-env/components/header/header_breadcrumbs/header_breadcrumbs.js +7 -7
  387. package/test-env/components/icon/icon.styles.js +5 -8
  388. package/test-env/components/link/external_link_icon.js +10 -7
  389. package/test-env/components/link/link.js +1 -2
  390. package/test-env/components/link/link.styles.js +6 -14
  391. package/test-env/components/modal/confirm_modal.js +2 -1
  392. package/test-env/components/modal/modal.js +12 -3
  393. package/test-env/components/page/page_header/page_header_content.js +4 -2
  394. package/test-env/components/progress/progress.styles.js +1 -1
  395. package/test-env/components/skeleton/skeleton_circle.js +1 -2
  396. package/test-env/components/skeleton/skeleton_rectangle.js +1 -2
  397. package/test-env/components/skeleton/skeleton_text.js +18 -11
  398. package/test-env/components/skeleton/skeleton_title.js +1 -2
  399. package/test-env/components/spacer/spacer.js +1 -2
  400. package/test-env/components/text/text.js +1 -2
  401. package/test-env/components/text/text_align.js +1 -2
  402. package/test-env/components/text/text_align.styles.js +5 -7
  403. package/test-env/components/text/text_color.js +1 -2
  404. package/test-env/components/title/title.js +1 -2
  405. package/test-env/components/title/title.styles.js +2 -10
  406. package/test-env/components/toast/global_toast_list.js +68 -71
  407. package/test-env/components/toast/toast.js +25 -40
  408. package/test-env/components/toast/toast.styles.js +11 -25
  409. package/test-env/global_styling/mixins/_typography.js +25 -19
  410. package/test-env/services/color/eui_palettes.js +24 -14
  411. package/test-env/services/color/index.js +14 -0
  412. package/test-env/services/hooks/index.js +11 -0
  413. package/test-env/services/hooks/useDeepEqual.js +30 -0
  414. package/test-env/services/index.js +15 -1
  415. package/test-env/services/theme/index.js +6 -0
  416. package/test-env/services/theme/style_memoization.js +49 -16
  417. package/test-env/themes/amsterdam/global_styling/mixins/button.js +49 -26
  418. package/src/themes/charts/theme.scss +0 -5
@@ -12,128 +12,113 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
12
12
  * in compliance with, at your election, the Elastic License 2.0 or the Server
13
13
  * Side Public License, v 1.
14
14
  */
15
- var _ref = process.env.NODE_ENV === "production" ? {
16
- name: "n7polf-10",
17
- styles: "flex-grow:10;label:10;"
18
- } : {
19
- name: "n7polf-10",
20
- styles: "flex-grow:10;label:10;",
21
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
22
- };
23
- var _ref2 = process.env.NODE_ENV === "production" ? {
24
- name: "1tyr8p6-9",
25
- styles: "flex-grow:9;label:9;"
26
- } : {
27
- name: "1tyr8p6-9",
28
- styles: "flex-grow:9;label:9;",
29
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
30
- };
31
- var _ref3 = process.env.NODE_ENV === "production" ? {
32
- name: "fjdgzc-8",
33
- styles: "flex-grow:8;label:8;"
34
- } : {
35
- name: "fjdgzc-8",
36
- styles: "flex-grow:8;label:8;",
37
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
38
- };
39
- var _ref4 = process.env.NODE_ENV === "production" ? {
40
- name: "fvh3nz-7",
41
- styles: "flex-grow:7;label:7;"
42
- } : {
43
- name: "fvh3nz-7",
44
- styles: "flex-grow:7;label:7;",
45
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
46
- };
47
- var _ref5 = process.env.NODE_ENV === "production" ? {
48
- name: "1in9iiy-6",
49
- styles: "flex-grow:6;label:6;"
50
- } : {
51
- name: "1in9iiy-6",
52
- styles: "flex-grow:6;label:6;",
53
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
54
- };
55
- var _ref6 = process.env.NODE_ENV === "production" ? {
56
- name: "1cx5fxs-5",
57
- styles: "flex-grow:5;label:5;"
58
- } : {
59
- name: "1cx5fxs-5",
60
- styles: "flex-grow:5;label:5;",
61
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
62
- };
63
- var _ref7 = process.env.NODE_ENV === "production" ? {
64
- name: "k4pnsg-4",
65
- styles: "flex-grow:4;label:4;"
66
- } : {
67
- name: "k4pnsg-4",
68
- styles: "flex-grow:4;label:4;",
69
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
70
- };
71
- var _ref8 = process.env.NODE_ENV === "production" ? {
72
- name: "1sl79ay-3",
73
- styles: "flex-grow:3;label:3;"
74
- } : {
75
- name: "1sl79ay-3",
76
- styles: "flex-grow:3;label:3;",
77
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
78
- };
79
- var _ref9 = process.env.NODE_ENV === "production" ? {
80
- name: "1l86xxh-2",
81
- styles: "flex-grow:2;label:2;"
82
- } : {
83
- name: "1l86xxh-2",
84
- styles: "flex-grow:2;label:2;",
85
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
86
- };
87
- var _ref10 = process.env.NODE_ENV === "production" ? {
88
- name: "1v6uyoj-1",
89
- styles: "flex-grow:1;label:1;"
90
- } : {
91
- name: "1v6uyoj-1",
92
- styles: "flex-grow:1;label:1;",
93
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
94
- };
95
- var _ref11 = process.env.NODE_ENV === "production" ? {
96
- name: "tr4wer-grow",
97
- styles: "flex-basis:0%;label:grow;"
98
- } : {
99
- name: "tr4wer-grow",
100
- styles: "flex-basis:0%;label:grow;",
101
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
102
- };
103
- var _ref12 = process.env.NODE_ENV === "production" ? {
104
- name: "1pat7n0-growZero",
105
- styles: "flex-grow:0;flex-basis:auto;label:growZero;"
106
- } : {
107
- name: "1pat7n0-growZero",
108
- styles: "flex-grow:0;flex-basis:auto;label:growZero;",
109
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
110
- };
111
- var _ref13 = process.env.NODE_ENV === "production" ? {
112
- name: "19hf44n-euiFlexItem",
113
- styles: "display:flex;flex-direction:column;label:euiFlexItem;"
114
- } : {
115
- name: "19hf44n-euiFlexItem",
116
- styles: "display:flex;flex-direction:column;label:euiFlexItem;",
117
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
118
- };
119
- var euiFlexItemStyles = function euiFlexItemStyles() {
120
- return {
121
- // 1. Allow EuiPanels to expand to fill the item.
122
- euiFlexItem: _ref13,
123
- growZero: _ref12,
124
- grow: _ref11,
125
- growSizes: {
126
- '1': _ref10,
127
- '2': _ref9,
128
- '3': _ref8,
129
- '4': _ref7,
130
- '5': _ref6,
131
- '6': _ref5,
132
- '7': _ref4,
133
- '8': _ref3,
134
- '9': _ref2,
135
- '10': _ref
15
+ var euiFlexItemStyles = {
16
+ // 1. Allow EuiPanels to expand to fill the item.
17
+ euiFlexItem: process.env.NODE_ENV === "production" ? {
18
+ name: "19hf44n-euiFlexItem",
19
+ styles: "display:flex;flex-direction:column;label:euiFlexItem;"
20
+ } : {
21
+ name: "19hf44n-euiFlexItem",
22
+ styles: "display:flex;flex-direction:column;label:euiFlexItem;",
23
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
24
+ },
25
+ growZero: process.env.NODE_ENV === "production" ? {
26
+ name: "1pat7n0-growZero",
27
+ styles: "flex-grow:0;flex-basis:auto;label:growZero;"
28
+ } : {
29
+ name: "1pat7n0-growZero",
30
+ styles: "flex-grow:0;flex-basis:auto;label:growZero;",
31
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
32
+ },
33
+ grow: process.env.NODE_ENV === "production" ? {
34
+ name: "tr4wer-grow",
35
+ styles: "flex-basis:0%;label:grow;"
36
+ } : {
37
+ name: "tr4wer-grow",
38
+ styles: "flex-basis:0%;label:grow;",
39
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
40
+ },
41
+ growSizes: {
42
+ '1': process.env.NODE_ENV === "production" ? {
43
+ name: "1v6uyoj-1",
44
+ styles: "flex-grow:1;label:1;"
45
+ } : {
46
+ name: "1v6uyoj-1",
47
+ styles: "flex-grow:1;label:1;",
48
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
49
+ },
50
+ '2': process.env.NODE_ENV === "production" ? {
51
+ name: "1l86xxh-2",
52
+ styles: "flex-grow:2;label:2;"
53
+ } : {
54
+ name: "1l86xxh-2",
55
+ styles: "flex-grow:2;label:2;",
56
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
57
+ },
58
+ '3': process.env.NODE_ENV === "production" ? {
59
+ name: "1sl79ay-3",
60
+ styles: "flex-grow:3;label:3;"
61
+ } : {
62
+ name: "1sl79ay-3",
63
+ styles: "flex-grow:3;label:3;",
64
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
65
+ },
66
+ '4': process.env.NODE_ENV === "production" ? {
67
+ name: "k4pnsg-4",
68
+ styles: "flex-grow:4;label:4;"
69
+ } : {
70
+ name: "k4pnsg-4",
71
+ styles: "flex-grow:4;label:4;",
72
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
73
+ },
74
+ '5': process.env.NODE_ENV === "production" ? {
75
+ name: "1cx5fxs-5",
76
+ styles: "flex-grow:5;label:5;"
77
+ } : {
78
+ name: "1cx5fxs-5",
79
+ styles: "flex-grow:5;label:5;",
80
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
81
+ },
82
+ '6': process.env.NODE_ENV === "production" ? {
83
+ name: "1in9iiy-6",
84
+ styles: "flex-grow:6;label:6;"
85
+ } : {
86
+ name: "1in9iiy-6",
87
+ styles: "flex-grow:6;label:6;",
88
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
89
+ },
90
+ '7': process.env.NODE_ENV === "production" ? {
91
+ name: "fvh3nz-7",
92
+ styles: "flex-grow:7;label:7;"
93
+ } : {
94
+ name: "fvh3nz-7",
95
+ styles: "flex-grow:7;label:7;",
96
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
97
+ },
98
+ '8': process.env.NODE_ENV === "production" ? {
99
+ name: "fjdgzc-8",
100
+ styles: "flex-grow:8;label:8;"
101
+ } : {
102
+ name: "fjdgzc-8",
103
+ styles: "flex-grow:8;label:8;",
104
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
105
+ },
106
+ '9': process.env.NODE_ENV === "production" ? {
107
+ name: "1tyr8p6-9",
108
+ styles: "flex-grow:9;label:9;"
109
+ } : {
110
+ name: "1tyr8p6-9",
111
+ styles: "flex-grow:9;label:9;",
112
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
113
+ },
114
+ '10': process.env.NODE_ENV === "production" ? {
115
+ name: "n7polf-10",
116
+ styles: "flex-grow:10;label:10;"
117
+ } : {
118
+ name: "n7polf-10",
119
+ styles: "flex-grow:10;label:10;",
120
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
136
121
  }
137
- };
122
+ }
138
123
  };
139
124
  exports.euiFlexItemStyles = euiFlexItemStyles;
@@ -10,9 +10,9 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
12
  var _classnames = _interopRequireDefault(require("classnames"));
13
+ var _services = require("../../../services");
13
14
  var _breadcrumbs = require("../../breadcrumbs");
14
15
  var _header_breadcrumbs = require("./header_breadcrumbs.styles");
15
- var _services = require("../../../services");
16
16
  var _react2 = require("@emotion/react");
17
17
  var _excluded = ["className", "breadcrumbs"];
18
18
  /*
@@ -27,15 +27,13 @@ var EuiHeaderBreadcrumbs = function EuiHeaderBreadcrumbs(_ref) {
27
27
  breadcrumbs = _ref.breadcrumbs,
28
28
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
29
29
  var classes = (0, _classnames.default)('euiHeaderBreadcrumbs', className);
30
- var euiTheme = (0, _services.useEuiTheme)();
31
- var styles = (0, _header_breadcrumbs.euiHeaderBreadcrumbsStyles)(euiTheme);
32
- var cssHeaderBreadcrumbStyles = [styles.euiHeaderBreadcrumbs];
30
+ var styles = (0, _services.useEuiMemoizedStyles)(_header_breadcrumbs.euiHeaderBreadcrumbsStyles);
33
31
  return (0, _react2.jsx)(_breadcrumbs.EuiBreadcrumbs, (0, _extends2.default)({
34
32
  max: 4,
35
33
  truncate: true,
36
34
  breadcrumbs: breadcrumbs,
37
35
  className: classes,
38
- css: cssHeaderBreadcrumbStyles,
36
+ css: styles.euiHeaderBreadcrumbs,
39
37
  type: "application"
40
38
  }, rest));
41
39
  };
@@ -94,12 +92,14 @@ EuiHeaderBreadcrumbs.propTypes = {
94
92
  */
95
93
  "aria-current": _propTypes.default.any,
96
94
  /**
97
- * Creates a breadcrumb that toggles a popover dialog
95
+ * Creates a breadcrumb that toggles a popover dialog. Takes any rendered node(s),
96
+ * or a render function that will pass callback allowing you to close the
97
+ * breadcrumb popover from within your popover content.
98
98
  *
99
99
  * If passed, both `href` and `onClick` will be ignored - the breadcrumb's
100
100
  * click behavior should only trigger a popover.
101
101
  */
102
- popoverContent: _propTypes.default.node,
102
+ popoverContent: _propTypes.default.oneOfType([_propTypes.default.node.isRequired, _propTypes.default.func.isRequired]),
103
103
  /**
104
104
  * Allows customizing the popover if necessary. Accepts any props that
105
105
  * [EuiPopover](/#/layout/popover) accepts, except for props that control state.
@@ -16,9 +16,6 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
16
16
  * in compliance with, at your election, the Elastic License 2.0 or the Server
17
17
  * Side Public License, v 1.
18
18
  */
19
- var iconSize = function iconSize(size) {
20
- return "\n ".concat((0, _global_styling.logicalCSS)('width', size), ";\n ").concat((0, _global_styling.logicalCSS)('height', size), ";\n ");
21
- };
22
19
  var iconLoadingOpacity = 0.05;
23
20
  exports.iconLoadingOpacity = iconLoadingOpacity;
24
21
  var iconLoading = (0, _react.keyframes)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n 0% {\n opacity: ", ";\n }\n\n 100% {\n opacity: 1;\n }\n"])), iconLoadingOpacity);
@@ -58,11 +55,11 @@ var euiIconStyles = function euiIconStyles(_ref3) {
58
55
  logoElasticOutline: _ref,
59
56
  // Sizes
60
57
  original: /*#__PURE__*/(0, _react.css)(";label:original;"),
61
- s: /*#__PURE__*/(0, _react.css)(iconSize(euiTheme.size.m), ";label:s;"),
62
- m: /*#__PURE__*/(0, _react.css)(iconSize(euiTheme.size.base), ";label:m;"),
63
- l: /*#__PURE__*/(0, _react.css)(iconSize(euiTheme.size.l), ";label:l;"),
64
- xl: /*#__PURE__*/(0, _react.css)(iconSize(euiTheme.size.xl), ";label:xl;"),
65
- xxl: /*#__PURE__*/(0, _react.css)(iconSize(euiTheme.size.xxl), ";label:xxl;"),
58
+ s: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalSizeCSS)(euiTheme.size.m), ";label:s;"),
59
+ m: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalSizeCSS)(euiTheme.size.base), ";label:m;"),
60
+ l: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalSizeCSS)(euiTheme.size.l), ";label:l;"),
61
+ xl: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalSizeCSS)(euiTheme.size.xl), ";label:xl;"),
62
+ xxl: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalSizeCSS)(euiTheme.size.xxl), ";label:xxl;"),
66
63
  // Variants
67
64
  // App icons are two-toned. This provides the base color.
68
65
  app: /*#__PURE__*/(0, _react.css)("fill:", euiTheme.colors.text, ";.euiIcon__fillSecondary{fill:", euiTheme.colors.successText, ";};label:app;"),
@@ -27,16 +27,19 @@ var _excluded = ["target", "external"];
27
27
  * DRY util for indicating external links both via icon and to
28
28
  * screen readers. Used internally by at EuiLink and EuiListGroupItem
29
29
  */
30
- var EuiExternalLinkIcon = function EuiExternalLinkIcon(_ref) {
31
- var target = _ref.target,
32
- external = _ref.external,
33
- rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
34
- var _useEuiTheme = (0, _services.useEuiTheme)(),
35
- euiTheme = _useEuiTheme.euiTheme;
30
+ var iconStyle = function iconStyle(_ref) {
31
+ var euiTheme = _ref.euiTheme;
32
+ return (0, _global_styling.logicalStyle)('margin-left', euiTheme.size.xs);
33
+ };
34
+ var EuiExternalLinkIcon = function EuiExternalLinkIcon(_ref2) {
35
+ var target = _ref2.target,
36
+ external = _ref2.external,
37
+ rest = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
38
+ var iconCssStyle = (0, _services.useEuiMemoizedStyles)(iconStyle);
36
39
  var showExternalLinkIcon = target === '_blank' && external !== false || external === true;
37
40
  var iconAriaLabel = (0, _i18n.useEuiI18n)('euiExternalLinkIcon.ariaLabel', 'External link');
38
41
  return (0, _react2.jsx)(_react.default.Fragment, null, showExternalLinkIcon && (0, _react2.jsx)(_icon.EuiIcon, (0, _extends2.default)({
39
- css: (0, _global_styling.logicalStyle)('margin-left', euiTheme.size.xs),
42
+ css: iconCssStyle,
40
43
  "aria-label": iconAriaLabel,
41
44
  size: "s",
42
45
  type: "popout"
@@ -45,8 +45,7 @@ var EuiLink = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
45
45
  onClick = _ref.onClick,
46
46
  _disabled = _ref.disabled,
47
47
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
48
- var euiTheme = (0, _services.useEuiTheme)();
49
- var styles = (0, _link.euiLinkStyles)(euiTheme);
48
+ var styles = (0, _services.useEuiMemoizedStyles)(_link.euiLinkStyles);
50
49
  var cssStyles = [styles.euiLink];
51
50
  var isHrefValid = !href || (0, _href_validator.validateHref)(href);
52
51
  var disabled = _disabled || !isHrefValid;
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.euiLinkStyles = exports.euiLinkHoverCSS = exports.euiLinkFocusCSS = exports.euiLinkCSS = void 0;
6
+ exports.euiLinkStyles = exports.euiLinkCSS = void 0;
7
7
  var _react = require("@emotion/react");
8
8
  var _global_styling = require("../../global_styling");
9
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)."; } /*
@@ -13,20 +13,9 @@ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringif
13
13
  * in compliance with, at your election, the Elastic License 2.0 or the Server
14
14
  * Side Public License, v 1.
15
15
  */
16
- var _colorCSS = function _colorCSS(color) {
17
- return "\n color: ".concat(color, ";\n\n &:target {\n color: darken(").concat(color, ", 10%);\n }\n ");
18
- };
19
- var euiLinkHoverCSS = function euiLinkHoverCSS() {
20
- return "\n text-decoration: underline;\n ";
21
- };
22
- exports.euiLinkHoverCSS = euiLinkHoverCSS;
23
- var euiLinkFocusCSS = function euiLinkFocusCSS(euiTheme) {
24
- return "\n text-decoration: underline;\n text-decoration-thickness: ".concat(euiTheme.border.width.thick, ";\n ");
25
- };
26
- exports.euiLinkFocusCSS = euiLinkFocusCSS;
27
16
  var euiLinkCSS = function euiLinkCSS(euiThemeContext) {
28
17
  var euiTheme = euiThemeContext.euiTheme;
29
- return "\n font-weight: ".concat(euiTheme.font.weight.medium, ";\n ").concat((0, _global_styling.logicalTextAlignCSS)('left'), "\n\n &:hover {\n ").concat(euiLinkHoverCSS(), "\n }\n\n &:focus {\n ").concat((0, _global_styling.euiFocusRing)(euiThemeContext, 'outset'), "\n ").concat(euiLinkFocusCSS(euiTheme), "\n }\n ");
18
+ return "\n font-weight: ".concat(euiTheme.font.weight.medium, ";\n ").concat((0, _global_styling.logicalTextAlignCSS)('left'), "\n\n &:hover {\n text-decoration: underline;\n }\n\n &:focus {\n ").concat((0, _global_styling.euiFocusRing)(euiThemeContext, 'outset'), "\n text-decoration: underline;\n text-decoration-thickness: ").concat(euiTheme.border.width.thick, ";\n }\n ");
30
19
  };
31
20
  exports.euiLinkCSS = euiLinkCSS;
32
21
  var _ref = process.env.NODE_ENV === "production" ? {
@@ -53,4 +42,7 @@ var euiLinkStyles = function euiLinkStyles(euiThemeContext) {
53
42
  text: /*#__PURE__*/(0, _react.css)(_colorCSS(euiTheme.colors.text), ";label:text;")
54
43
  };
55
44
  };
56
- exports.euiLinkStyles = euiLinkStyles;
45
+ exports.euiLinkStyles = euiLinkStyles;
46
+ var _colorCSS = function _colorCSS(color) {
47
+ return "\n color: ".concat(color, ";\n\n &:target {\n color: darken(").concat(color, ", 10%);\n }\n ");
48
+ };
@@ -84,7 +84,8 @@ var EuiConfirmModal = function EuiConfirmModal(_ref) {
84
84
  return (0, _react2.jsx)(_modal.EuiModal, (0, _extends2.default)({
85
85
  className: classes,
86
86
  css: cssStyles,
87
- onClose: onCancel
87
+ onClose: onCancel,
88
+ role: "alertdialog"
88
89
  }, rest), modalTitle, message && (0, _react2.jsx)(_modal_body.EuiModalBody, null, (0, _react2.jsx)(_text.EuiText, {
89
90
  "data-test-subj": "confirmModalBodyText"
90
91
  }, message)), (0, _react2.jsx)(_modal_footer.EuiModalFooter, null, (0, _react2.jsx)(_button.EuiButtonEmpty, {
@@ -18,7 +18,7 @@ var _overlay_mask = require("../overlay_mask");
18
18
  var _i18n = require("../i18n");
19
19
  var _modal = require("./modal.styles");
20
20
  var _react2 = require("@emotion/react");
21
- var _excluded = ["className", "children", "initialFocus", "onClose", "maxWidth", "style"];
21
+ var _excluded = ["className", "children", "initialFocus", "onClose", "maxWidth", "role", "style"];
22
22
  /*
23
23
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
24
24
  * or more contributor license agreements. Licensed under the Elastic License
@@ -35,6 +35,8 @@ var EuiModal = function EuiModal(_ref) {
35
35
  onClose = _ref.onClose,
36
36
  _ref$maxWidth = _ref.maxWidth,
37
37
  maxWidth = _ref$maxWidth === void 0 ? true : _ref$maxWidth,
38
+ _ref$role = _ref.role,
39
+ role = _ref$role === void 0 ? 'dialog' : _ref$role,
38
40
  style = _ref.style,
39
41
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
40
42
  var onKeyDown = function onKeyDown(event) {
@@ -64,7 +66,9 @@ var EuiModal = function EuiModal(_ref) {
64
66
  className: classes,
65
67
  onKeyDown: onKeyDown,
66
68
  tabIndex: 0,
67
- style: newStyle
69
+ style: newStyle,
70
+ role: role,
71
+ "aria-modal": true
68
72
  }, rest), (0, _react2.jsx)(_i18n.EuiI18n, {
69
73
  token: "euiModal.closeModal",
70
74
  default: "Closes this modal window"
@@ -99,5 +103,10 @@ EuiModal.propTypes = {
99
103
  * Specifies what element should initially have focus.
100
104
  * Can be a DOM node, or a selector string (which will be passed to document.querySelector() to find the DOM node), or a function that returns a DOM node.
101
105
  */
102
- initialFocus: _propTypes.default.oneOfType([_propTypes.default.any.isRequired, _propTypes.default.func.isRequired, _propTypes.default.string.isRequired])
106
+ initialFocus: _propTypes.default.oneOfType([_propTypes.default.any.isRequired, _propTypes.default.func.isRequired, _propTypes.default.string.isRequired]),
107
+ /**
108
+ * Identifies a modal dialog to screen readers. Modal dialogs that confirm destructive actions
109
+ * or need a user's attention should use "alertdialog".
110
+ */
111
+ role: _propTypes.default.oneOf(["dialog", "alertdialog"])
103
112
  };
@@ -301,12 +301,14 @@ EuiPageHeaderContent.propTypes = {
301
301
  */
302
302
  "aria-current": _propTypes.default.any,
303
303
  /**
304
- * Creates a breadcrumb that toggles a popover dialog
304
+ * Creates a breadcrumb that toggles a popover dialog. Takes any rendered node(s),
305
+ * or a render function that will pass callback allowing you to close the
306
+ * breadcrumb popover from within your popover content.
305
307
  *
306
308
  * If passed, both `href` and `onClick` will be ignored - the breadcrumb's
307
309
  * click behavior should only trigger a popover.
308
310
  */
309
- popoverContent: _propTypes.default.node,
311
+ popoverContent: _propTypes.default.oneOfType([_propTypes.default.node.isRequired, _propTypes.default.func.isRequired]),
310
312
  /**
311
313
  * Allows customizing the popover if necessary. Accepts any props that
312
314
  * [EuiPopover](/#/layout/popover) accepts, except for props that control state.
@@ -67,7 +67,7 @@ var euiProgressStyles = function euiProgressStyles(_ref3, isNative) {
67
67
  // https://css-tricks.com/html5-progress-element/
68
68
  // Good resource if you need to work in here. There's some gotchas with
69
69
  // dealing with cross-browser progress bars.
70
- native: /*#__PURE__*/(0, _react.css)("display:block;", (0, _global_styling.logicalCSS)('width', '100%'), " appearance:none;border:none;border-radius:", euiTheme.size.s, ";&::-webkit-progress-bar{background-color:", euiTheme.colors.lightShade, ";}", crossBrowserProgressValue('transition: width ${euiTheme.animation.normal} linear;'), ";;label:native;"),
70
+ native: /*#__PURE__*/(0, _react.css)("display:block;", (0, _global_styling.logicalCSS)('width', '100%'), " appearance:none;border:none;border-radius:", euiTheme.size.s, ";&::-webkit-progress-bar{background-color:", euiTheme.colors.lightShade, ";}", _global_styling.euiCanAnimate, "{/* Note: FF/Mozilla doesn't actually support animating the native progress bar\n @see https://bugzilla.mozilla.org/show_bug.cgi?id=662351 */", crossBrowserProgressValue("transition: width ".concat(euiTheme.animation.normal, " linear")), ";};label:native;"),
71
71
  // An indeterminate bar has an unreliable end time. Because of a Firefox animation issue,
72
72
  // we apply this style to a <div> instead of a <progress> element.
73
73
  // See https://css-tricks.com/html5-progress-element/ for more info.
@@ -37,8 +37,7 @@ var EuiSkeletonCircle = function EuiSkeletonCircle(_ref) {
37
37
  ariaWrapperProps = _ref.ariaWrapperProps,
38
38
  children = _ref.children,
39
39
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
40
- var euiTheme = (0, _services.useEuiTheme)();
41
- var styles = (0, _skeleton_circle.euiSkeletonCircleStyles)(euiTheme);
40
+ var styles = (0, _services.useEuiMemoizedStyles)(_skeleton_circle.euiSkeletonCircleStyles);
42
41
  var cssStyles = [styles.euiSkeletonCircle, styles[size]];
43
42
  return (0, _react2.jsx)(_skeleton_loading.EuiSkeletonLoading, (0, _extends2.default)({
44
43
  isLoading: isLoading,
@@ -46,8 +46,7 @@ var EuiSkeletonRectangle = function EuiSkeletonRectangle(_ref) {
46
46
  ariaWrapperProps = _ref.ariaWrapperProps,
47
47
  children = _ref.children,
48
48
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
49
- var euiTheme = (0, _services.useEuiTheme)();
50
- var styles = (0, _skeleton_rectangle.euiSkeletonRectangleStyles)(euiTheme);
49
+ var styles = (0, _services.useEuiMemoizedStyles)(_skeleton_rectangle.euiSkeletonRectangleStyles);
51
50
  var cssStyles = [styles.euiSkeletonRectangle, styles[borderRadius]];
52
51
  return (0, _react2.jsx)(_skeleton_loading.EuiSkeletonLoading, (0, _extends2.default)({
53
52
  isLoading: isLoading,
@@ -1,13 +1,14 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.LINES = exports.EuiSkeletonText = void 0;
8
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
- var _react = _interopRequireDefault(require("react"));
11
+ var _react = _interopRequireWildcard(require("react"));
11
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
12
13
  var _classnames = _interopRequireDefault(require("classnames"));
13
14
  var _services = require("../../services");
@@ -22,6 +23,8 @@ var _excluded = ["isLoading", "lines", "size", "className", "contentAriaLabel",
22
23
  * in compliance with, at your election, the Elastic License 2.0 or the Server
23
24
  * Side Public License, v 1.
24
25
  */
26
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
27
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
25
28
  var LINES = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
26
29
  exports.LINES = LINES;
27
30
  var EuiSkeletonText = function EuiSkeletonText(_ref) {
@@ -39,16 +42,20 @@ var EuiSkeletonText = function EuiSkeletonText(_ref) {
39
42
  ariaWrapperProps = _ref.ariaWrapperProps,
40
43
  children = _ref.children,
41
44
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
42
- var euiTheme = (0, _services.useEuiTheme)();
43
- var styles = (0, _skeleton_text.euiSkeletonTextStyles)(euiTheme);
44
- var lineCssStyles = [styles.euiSkeletonText, styles[size]];
45
- var lineElements = [];
46
- for (var i = 0; i < lines; i++) {
47
- lineElements.push((0, _react2.jsx)("span", {
48
- key: i,
49
- css: lineCssStyles
50
- }));
51
- }
45
+ var styles = (0, _services.useEuiMemoizedStyles)(_skeleton_text.euiSkeletonTextStyles);
46
+ var cssStyles = (0, _react.useMemo)(function () {
47
+ return [styles.euiSkeletonText, styles[size]];
48
+ }, [styles, size]);
49
+ var lineElements = (0, _react.useMemo)(function () {
50
+ var lineElements = [];
51
+ for (var i = 0; i < lines; i++) {
52
+ lineElements.push((0, _react2.jsx)("span", {
53
+ key: i,
54
+ css: cssStyles
55
+ }));
56
+ }
57
+ return lineElements;
58
+ }, [lines, cssStyles]);
52
59
  return (0, _react2.jsx)(_skeleton_loading.EuiSkeletonLoading, (0, _extends2.default)({
53
60
  isLoading: isLoading,
54
61
  loadingContent: (0, _react2.jsx)("span", (0, _extends2.default)({
@@ -35,8 +35,7 @@ var EuiSkeletonTitle = function EuiSkeletonTitle(_ref) {
35
35
  ariaWrapperProps = _ref.ariaWrapperProps,
36
36
  children = _ref.children,
37
37
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
38
- var euiTheme = (0, _services.useEuiTheme)();
39
- var styles = (0, _skeleton_title.euiSkeletonTitleStyles)(euiTheme);
38
+ var styles = (0, _services.useEuiMemoizedStyles)(_skeleton_title.euiSkeletonTitleStyles);
40
39
  var cssStyles = [styles.euiSkeletonTitle, styles[size]];
41
40
  return (0, _react2.jsx)(_skeleton_loading.EuiSkeletonLoading, (0, _extends2.default)({
42
41
  isLoading: isLoading,
@@ -29,8 +29,7 @@ var EuiSpacer = function EuiSpacer(_ref) {
29
29
  _ref$size = _ref.size,
30
30
  size = _ref$size === void 0 ? 'l' : _ref$size,
31
31
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
32
- var euiTheme = (0, _services.useEuiTheme)();
33
- var styles = (0, _spacer.euiSpacerStyles)(euiTheme);
32
+ var styles = (0, _services.useEuiMemoizedStyles)(_spacer.euiSpacerStyles);
34
33
  var classes = (0, _classnames.default)('euiSpacer', (0, _defineProperty2.default)({}, "euiSpacer--".concat(size), size), className);
35
34
  var cssStyles = [styles.euiSpacer, styles[size]];
36
35
  return (0, _react2.jsx)("div", (0, _extends2.default)({
@@ -35,8 +35,7 @@ var EuiText = function EuiText(_ref) {
35
35
  children = _ref.children,
36
36
  className = _ref.className,
37
37
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
38
- var euiTheme = (0, _services.useEuiTheme)();
39
- var styles = (0, _text.euiTextStyles)(euiTheme);
38
+ var styles = (0, _services.useEuiMemoizedStyles)(_text.euiTextStyles);
40
39
  var cssStyles = [styles.euiText, !grow ? styles.constrainedWidth : undefined, styles[size]];
41
40
  var classes = (0, _classnames.default)('euiText', className);
42
41
  var text = (0, _react2.jsx)("div", (0, _extends2.default)({
@@ -34,8 +34,7 @@ var EuiTextAlign = function EuiTextAlign(_ref) {
34
34
  _ref$cloneElement = _ref.cloneElement,
35
35
  cloneElement = _ref$cloneElement === void 0 ? false : _ref$cloneElement,
36
36
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
37
- var styles = (0, _text_align.euiTextAlignStyles)();
38
- var cssStyles = [styles.euiTextAlign, styles[textAlign]];
37
+ var cssStyles = [_text_align.euiTextAlignStyles.euiTextAlign, _text_align.euiTextAlignStyles[textAlign]];
39
38
  var props = _objectSpread({
40
39
  css: cssStyles
41
40
  }, rest);
@@ -14,12 +14,10 @@ var _global_styling = require("../../global_styling");
14
14
  * Side Public License, v 1.
15
15
  */
16
16
 
17
- var euiTextAlignStyles = function euiTextAlignStyles() {
18
- return {
19
- euiTextAlign: /*#__PURE__*/(0, _react.css)(";label:euiTextAlign;"),
20
- left: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalTextAlignCSS)('left'), ";;label:left;"),
21
- right: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalTextAlignCSS)('right'), ";;label:right;"),
22
- center: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalTextAlignCSS)('center'), ";;label:center;")
23
- };
17
+ var euiTextAlignStyles = {
18
+ euiTextAlign: /*#__PURE__*/(0, _react.css)(";label:euiTextAlign;"),
19
+ left: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalTextAlignCSS)('left'), ";;label:left;"),
20
+ right: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalTextAlignCSS)('right'), ";;label:right;"),
21
+ center: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalTextAlignCSS)('center'), ";;label:center;")
24
22
  };
25
23
  exports.euiTextAlignStyles = euiTextAlignStyles;