@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
@@ -1,18 +1,20 @@
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.GUTTER_SIZES = exports.EuiFlexGrid = exports.DIRECTIONS = exports.ALIGN_ITEMS = void 0;
8
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
- var _react = _interopRequireDefault(require("react"));
12
+ var _react = _interopRequireWildcard(require("react"));
11
13
  var _classnames = _interopRequireDefault(require("classnames"));
12
14
  var _services = require("../../services");
13
15
  var _flex_grid = require("./flex_grid.styles");
14
16
  var _react2 = require("@emotion/react");
15
- var _excluded = ["children", "className", "gutterSize", "direction", "alignItems", "responsive", "columns", "component"];
17
+ var _excluded = ["children", "className", "style", "gutterSize", "direction", "alignItems", "responsive", "columns", "component"];
16
18
  /*
17
19
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
18
20
  * or more contributor license agreements. Licensed under the Elastic License
@@ -20,6 +22,10 @@ var _excluded = ["children", "className", "gutterSize", "direction", "alignItems
20
22
  * in compliance with, at your election, the Elastic License 2.0 or the Server
21
23
  * Side Public License, v 1.
22
24
  */
25
+ 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); }
26
+ 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; }
27
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
28
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
23
29
  var DIRECTIONS = ['row', 'column'];
24
30
  exports.DIRECTIONS = DIRECTIONS;
25
31
  var ALIGN_ITEMS = ['stretch', 'start', 'end', 'center', 'baseline'];
@@ -29,6 +35,7 @@ exports.GUTTER_SIZES = GUTTER_SIZES;
29
35
  var EuiFlexGrid = function EuiFlexGrid(_ref) {
30
36
  var children = _ref.children,
31
37
  className = _ref.className,
38
+ style = _ref.style,
32
39
  _ref$gutterSize = _ref.gutterSize,
33
40
  gutterSize = _ref$gutterSize === void 0 ? 'l' : _ref$gutterSize,
34
41
  _ref$direction = _ref.direction,
@@ -42,14 +49,21 @@ var EuiFlexGrid = function EuiFlexGrid(_ref) {
42
49
  _ref$component = _ref.component,
43
50
  Component = _ref$component === void 0 ? 'div' : _ref$component,
44
51
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
45
- var gridTemplateRows = direction === 'column' ? Math.ceil(_react.default.Children.count(children) / columns) : 0;
46
- var euiTheme = (0, _services.useEuiTheme)();
47
- var styles = (0, _flex_grid.euiFlexGridStyles)(euiTheme, gridTemplateRows);
48
- var cssStyles = [styles.euiFlexGrid, styles.gutterSizes[gutterSize], styles.direction[direction], styles.alignItems[alignItems], styles.columnCount[columns], responsive && styles.responsive];
49
52
  var classes = (0, _classnames.default)('euiFlexGrid', className);
53
+ var styles = (0, _services.useEuiMemoizedStyles)(_flex_grid.euiFlexGridStyles);
54
+ var cssStyles = [styles.euiFlexGrid, styles.gutterSizes[gutterSize], styles.direction[direction], styles.alignItems[alignItems], styles.columnCount[columns], responsive && styles.responsive];
55
+ var columnDirectionStyles = (0, _react.useMemo)(function () {
56
+ if (direction === 'column') {
57
+ var rowsToRender = Math.ceil(_react.default.Children.count(children) / columns);
58
+ return {
59
+ gridTemplateRows: "repeat(".concat(rowsToRender, ", 1fr)")
60
+ };
61
+ }
62
+ }, [direction, columns, children]);
50
63
  return (0, _react2.jsx)(Component, (0, _extends2.default)({
51
64
  css: cssStyles,
52
- className: classes
65
+ className: classes,
66
+ style: columnDirectionStyles ? _objectSpread(_objectSpread({}, style), columnDirectionStyles) : style
53
67
  }, rest), children);
54
68
  };
55
69
  exports.EuiFlexGrid = EuiFlexGrid;
@@ -86,6 +86,14 @@ var _ref9 = process.env.NODE_ENV === "production" ? {
86
86
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
87
87
  };
88
88
  var _ref10 = process.env.NODE_ENV === "production" ? {
89
+ name: "1t690q7-column",
90
+ styles: "grid-auto-flow:column;label:column;"
91
+ } : {
92
+ name: "1t690q7-column",
93
+ styles: "grid-auto-flow:column;label:column;",
94
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
95
+ };
96
+ var _ref11 = process.env.NODE_ENV === "production" ? {
89
97
  name: "1uinx0j-euiFlexGrid",
90
98
  styles: "display:grid;label:euiFlexGrid;"
91
99
  } : {
@@ -93,18 +101,17 @@ var _ref10 = process.env.NODE_ENV === "production" ? {
93
101
  styles: "display:grid;label:euiFlexGrid;",
94
102
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
95
103
  };
96
- // Note: the only way to get column direction working with `display: grid`
97
- // the same way `display: flex` works is to manually set `grid-template-rows`,
98
- // calculated based on the number of children in the grid
99
104
  var euiFlexGridStyles = function euiFlexGridStyles(euiThemeContext) {
100
- var gridTemplateRows = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
101
105
  var euiTheme = euiThemeContext.euiTheme;
102
106
  return {
103
- euiFlexGrid: _ref10,
107
+ euiFlexGrid: _ref11,
104
108
  responsive: /*#__PURE__*/(0, _react.css)((0, _global_styling.euiMaxBreakpoint)(euiThemeContext, 'm'), "{grid-template-columns:repeat(1, 1fr);grid-auto-flow:row;};label:responsive;"),
105
109
  direction: {
106
110
  row: /*#__PURE__*/(0, _react.css)(";label:row;"),
107
- column: /*#__PURE__*/(0, _react.css)("grid-auto-flow:column;grid-template-rows:repeat(", gridTemplateRows, ", 1fr);;label:column;")
111
+ // Note: the only way to get column direction working with `display: grid`
112
+ // the same way `display: flex` works is to manually set `grid-template-rows`,
113
+ // calculated based on the number of children in the grid
114
+ column: _ref10
108
115
  },
109
116
  columnCount: {
110
117
  '1': _ref9,
@@ -5,7 +5,7 @@ var _typeof = require("@babel/runtime/helpers/typeof");
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.JUSTIFY_CONTENTS = exports.GUTTER_SIZES = exports.EuiFlexGroup = exports.DIRECTIONS = exports.ALIGN_ITEMS = void 0;
8
+ exports.JUSTIFY_CONTENTS = exports.GUTTER_SIZES = exports.EuiFlexGroup = exports.DIRECTIONS = exports.COMPONENT_TYPES = exports.ALIGN_ITEMS = void 0;
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
11
  var _react = _interopRequireWildcard(require("react"));
@@ -31,9 +31,8 @@ var JUSTIFY_CONTENTS = ['flexStart', 'flexEnd', 'center', 'spaceBetween', 'space
31
31
  exports.JUSTIFY_CONTENTS = JUSTIFY_CONTENTS;
32
32
  var DIRECTIONS = ['row', 'rowReverse', 'column', 'columnReverse'];
33
33
  exports.DIRECTIONS = DIRECTIONS;
34
- var isValidElement = function isValidElement(component) {
35
- return ['div', 'span'].includes(component);
36
- };
34
+ var COMPONENT_TYPES = ['div', 'span'];
35
+ exports.COMPONENT_TYPES = COMPONENT_TYPES;
37
36
  var EuiFlexGroup = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
38
37
  var children = _ref.children,
39
38
  className = _ref.className,
@@ -52,13 +51,14 @@ var EuiFlexGroup = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
52
51
  _ref$component = _ref.component,
53
52
  component = _ref$component === void 0 ? 'div' : _ref$component,
54
53
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
55
- var euiTheme = (0, _services.useEuiTheme)();
56
- var styles = (0, _flex_group.euiFlexGroupStyles)(euiTheme);
54
+ var styles = (0, _services.useEuiMemoizedStyles)(_flex_group.euiFlexGroupStyles);
57
55
  var cssStyles = [styles.euiFlexGroup, responsive && !direction.includes('column') && styles.responsive, wrap && styles.wrap, styles.gutterSizes[gutterSize], styles.justifyContent[justifyContent], styles.alignItems[alignItems], styles.direction[direction]];
58
56
  var classes = (0, _classnames.default)('euiFlexGroup', className);
59
- if (!isValidElement(component)) {
60
- throw new Error("".concat(component, " is not a valid element type. Use `div` or `span`."));
61
- }
57
+ (0, _react.useEffect)(function () {
58
+ if (!COMPONENT_TYPES.includes(component)) {
59
+ throw new Error("".concat(component, " is not a valid element type. Use `div` or `span`."));
60
+ }
61
+ }, [component]);
62
62
  return component === 'span' ? (0, _react2.jsx)("span", (0, _extends2.default)({
63
63
  css: cssStyles,
64
64
  className: classes,
@@ -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
- exports.VALID_GROW_VALUES = exports.EuiFlexItem = void 0;
8
+ exports.EuiFlexItem = 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 _classnames = _interopRequireDefault(require("classnames"));
12
13
  var _flex_item = require("./flex_item.styles");
13
14
  var _react2 = require("@emotion/react");
@@ -19,6 +20,9 @@ var _excluded = ["children", "className", "grow", "component"];
19
20
  * in compliance with, at your election, the Elastic License 2.0 or the Server
20
21
  * Side Public License, v 1.
21
22
  */
23
+ 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); }
24
+ 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
+ var VALID_GROW_VALUES = [null, undefined, true, false, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
22
26
  var EuiFlexItem = function EuiFlexItem(_ref) {
23
27
  var children = _ref.children,
24
28
  className = _ref.className,
@@ -27,20 +31,16 @@ var EuiFlexItem = function EuiFlexItem(_ref) {
27
31
  _ref$component = _ref.component,
28
32
  Component = _ref$component === void 0 ? 'div' : _ref$component,
29
33
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
30
- validateGrowValue(grow);
31
- var styles = (0, _flex_item.euiFlexItemStyles)();
32
- var cssStyles = [styles.euiFlexItem, !grow ? styles.growZero : styles.grow, grow && (typeof grow === 'number' ? styles.growSizes[grow] : styles.growSizes['1'])];
34
+ (0, _react.useEffect)(function () {
35
+ if (VALID_GROW_VALUES.indexOf(grow) === -1) {
36
+ throw new Error("Prop `grow` passed to `EuiFlexItem` must be a boolean or an integer between 0 and 10, received `".concat(grow, "`"));
37
+ }
38
+ }, [grow]);
39
+ var cssStyles = [_flex_item.euiFlexItemStyles.euiFlexItem, !grow ? _flex_item.euiFlexItemStyles.growZero : _flex_item.euiFlexItemStyles.grow, grow && (typeof grow === 'number' ? _flex_item.euiFlexItemStyles.growSizes[grow] : _flex_item.euiFlexItemStyles.growSizes['1'])];
33
40
  var classes = (0, _classnames.default)('euiFlexItem', className);
34
41
  return (0, _react2.jsx)(Component, (0, _extends2.default)({
35
42
  css: cssStyles,
36
43
  className: classes
37
44
  }, rest), children);
38
45
  };
39
- exports.EuiFlexItem = EuiFlexItem;
40
- var VALID_GROW_VALUES = [null, undefined, true, false, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
41
- exports.VALID_GROW_VALUES = VALID_GROW_VALUES;
42
- function validateGrowValue(value) {
43
- if (VALID_GROW_VALUES.indexOf(value) === -1) {
44
- throw new Error("Prop `grow` passed to `EuiFlexItem` must be a boolean or an integer between 0 and 10, received `".concat(value, "`"));
45
- }
46
- }
46
+ exports.EuiFlexItem = EuiFlexItem;
@@ -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;
@@ -100,33 +100,31 @@ var EuiFlyout = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
100
100
  resizeRef = _useState2[0],
101
101
  setResizeRef = _useState2[1];
102
102
  var setRef = (0, _services.useCombinedRefs)([setResizeRef, ref]);
103
- // TODO: Allow this hook to be conditional
104
- var dimensions = (0, _resize_observer.useResizeObserver)(resizeRef);
103
+ var _useResizeObserver = (0, _resize_observer.useResizeObserver)(isPushed ? resizeRef : null, 'width'),
104
+ width = _useResizeObserver.width;
105
105
  (0, _react.useEffect)(function () {
106
- // This class doesn't actually do anything by EUI, but is nice to add for consumers (JIC)
107
- document.body.classList.add('euiBody--hasFlyout');
108
-
109
106
  /**
110
107
  * Accomodate for the `isPushed` state by adding padding to the body equal to the width of the element
111
108
  */
112
109
  if (isPushed) {
113
- if (side === 'right') {
114
- document.body.style.paddingInlineEnd = "".concat(dimensions.width, "px");
115
- } else if (side === 'left') {
116
- document.body.style.paddingInlineStart = "".concat(dimensions.width, "px");
117
- }
110
+ var paddingSide = side === 'left' ? 'paddingInlineStart' : 'paddingInlineEnd';
111
+ document.body.style[paddingSide] = "".concat(width, "px");
112
+ return function () {
113
+ document.body.style[paddingSide] = '';
114
+ };
118
115
  }
116
+ }, [isPushed, side, width]);
117
+
118
+ /**
119
+ * This class doesn't actually do anything by EUI, but is nice to add for consumers (JIC)
120
+ */
121
+ (0, _react.useEffect)(function () {
122
+ document.body.classList.add('euiBody--hasFlyout');
119
123
  return function () {
124
+ // Remove the hasFlyout class when the flyout is unmounted
120
125
  document.body.classList.remove('euiBody--hasFlyout');
121
- if (isPushed) {
122
- if (side === 'right') {
123
- document.body.style.paddingInlineEnd = '';
124
- } else if (side === 'left') {
125
- document.body.style.paddingInlineStart = '';
126
- }
127
- }
128
126
  };
129
- }, [side, dimensions, isPushed]);
127
+ }, []);
130
128
 
131
129
  /**
132
130
  * ESC key closes flyout (always?)
@@ -9,9 +9,9 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
9
9
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
10
  var _react = _interopRequireDefault(require("react"));
11
11
  var _classnames = _interopRequireDefault(require("classnames"));
12
+ var _services = require("../../../services");
12
13
  var _breadcrumbs = require("../../breadcrumbs");
13
14
  var _header_breadcrumbs = require("./header_breadcrumbs.styles");
14
- var _services = require("../../../services");
15
15
  var _react2 = require("@emotion/react");
16
16
  var _excluded = ["className", "breadcrumbs"];
17
17
  /*
@@ -26,15 +26,13 @@ var EuiHeaderBreadcrumbs = function EuiHeaderBreadcrumbs(_ref) {
26
26
  breadcrumbs = _ref.breadcrumbs,
27
27
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
28
28
  var classes = (0, _classnames.default)('euiHeaderBreadcrumbs', className);
29
- var euiTheme = (0, _services.useEuiTheme)();
30
- var styles = (0, _header_breadcrumbs.euiHeaderBreadcrumbsStyles)(euiTheme);
31
- var cssHeaderBreadcrumbStyles = [styles.euiHeaderBreadcrumbs];
29
+ var styles = (0, _services.useEuiMemoizedStyles)(_header_breadcrumbs.euiHeaderBreadcrumbsStyles);
32
30
  return (0, _react2.jsx)(_breadcrumbs.EuiBreadcrumbs, (0, _extends2.default)({
33
31
  max: 4,
34
32
  truncate: true,
35
33
  breadcrumbs: breadcrumbs,
36
34
  className: classes,
37
- css: cssHeaderBreadcrumbStyles,
35
+ css: styles.euiHeaderBreadcrumbs,
38
36
  type: "application"
39
37
  }, rest));
40
38
  };
@@ -31,7 +31,7 @@ var _services = require("../../services");
31
31
  var _named_colors = require("./named_colors");
32
32
  var _icon = require("./icon.styles");
33
33
  var _react3 = require("@emotion/react");
34
- var _excluded = ["type", "size", "color", "className", "tabIndex", "title", "onIconLoad", "theme", "style"];
34
+ var _excluded = ["type", "size", "color", "className", "tabIndex", "title", "onIconLoad", "style", "stylesMemoizer"];
35
35
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
36
36
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
37
37
  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); }
@@ -200,8 +200,8 @@ var EuiIconClass = /*#__PURE__*/function (_PureComponent) {
200
200
  tabIndex = _this$props.tabIndex,
201
201
  title = _this$props.title,
202
202
  onIconLoad = _this$props.onIconLoad,
203
- theme = _this$props.theme,
204
203
  style = _this$props.style,
204
+ stylesMemoizer = _this$props.stylesMemoizer,
205
205
  rest = (0, _objectWithoutProperties2.default)(_this$props, _excluded);
206
206
  var _this$state = this.state,
207
207
  isLoading = _this$state.isLoading,
@@ -223,7 +223,7 @@ var EuiIconClass = /*#__PURE__*/function (_PureComponent) {
223
223
  var classes = (0, _classnames.default)('euiIcon', className);
224
224
 
225
225
  // Emotion styles
226
- var styles = (0, _icon.euiIconStyles)(theme);
226
+ var styles = stylesMemoizer(_icon.euiIconStyles);
227
227
  var cssStyles = [styles.euiIcon, styles[size], color && (0, _named_colors.isNamedColor)(color) && styles[color], isCustomColor && styles.customColor, isElasticLogoOutline && styles.logoElasticOutline, isAppIcon && !appIconHasColor && styles.app, isLoading && styles.isLoading, !isLoading && neededLoading && styles.isLoaded];
228
228
  var icon = this.state.icon || _empty.icon;
229
229
  if (typeof icon === 'string') {
@@ -240,35 +240,32 @@ var EuiIconClass = /*#__PURE__*/function (_PureComponent) {
240
240
 
241
241
  // If it's an empty icon, or if there is no aria-label, aria-labelledby, or title it gets aria-hidden true
242
242
  var isAriaHidden = icon === _empty.icon || !(this.props['aria-label'] || this.props['aria-labelledby'] || this.props.title);
243
- var hideIconEmpty = isAriaHidden && {
244
- 'aria-hidden': true
245
- };
246
- var titleId;
247
243
 
248
244
  // If no aria-label or aria-labelledby is provided but there's a title, a titleId is generated
249
245
  // The svg aria-labelledby attribute gets this titleId
250
246
  // The svg title element gets this titleId as an id
251
- if (!this.props['aria-label'] && !this.props['aria-labelledby'] && title) {
252
- titleId = {
253
- titleId: generateId()
254
- };
255
- }
247
+ var titleId = !this.props['aria-label'] && !this.props['aria-labelledby'] && title ? {
248
+ titleId: generateId()
249
+ } : undefined;
256
250
  return (0, _react3.jsx)(Svg, (0, _extends2.default)({
257
251
  className: classes,
258
252
  style: optionalCustomStyles,
259
253
  css: cssStyles,
260
254
  tabIndex: tabIndex,
261
255
  role: "img",
262
- title: title,
256
+ title: title
257
+ }, titleId, {
263
258
  "data-icon-type": iconTitle,
264
259
  "data-is-loaded": isLoaded || undefined,
265
260
  "data-is-loading": isLoading || undefined
266
- }, titleId, rest, hideIconEmpty));
261
+ }, rest, {
262
+ "aria-hidden": isAriaHidden || undefined
263
+ }));
267
264
  }
268
265
  }
269
266
  }]);
270
267
  return EuiIconClass;
271
268
  }(_react.PureComponent);
272
269
  exports.EuiIconClass = EuiIconClass;
273
- var EuiIcon = (0, _services.withEuiTheme)(EuiIconClass);
270
+ var EuiIcon = (0, _services.withEuiStylesMemoizer)(EuiIconClass);
274
271
  exports.EuiIcon = EuiIcon;
@@ -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;"),