@elastic/eui 86.0.0 → 87.1.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 (413) hide show
  1. package/dist/eui_charts_theme.js +7589 -7237
  2. package/dist/eui_charts_theme.js.map +1 -1
  3. package/dist/eui_theme_dark.css +0 -182
  4. package/dist/eui_theme_dark.min.css +1 -1
  5. package/dist/eui_theme_light.css +0 -182
  6. package/dist/eui_theme_light.min.css +1 -1
  7. package/es/components/accordion/accordion.js +82 -35
  8. package/es/components/auto_sizer/index.js +1 -1
  9. package/es/components/basic_table/basic_table.js +49 -34
  10. package/es/components/basic_table/in_memory_table.js +30 -11
  11. package/es/components/basic_table/pagination_bar.js +16 -11
  12. package/es/components/bottom_bar/bottom_bar.js +9 -2
  13. package/es/components/breadcrumbs/breadcrumb.js +219 -42
  14. package/es/components/breadcrumbs/breadcrumbs.js +162 -2
  15. package/es/components/code/code_block_virtualized.js +25 -17
  16. package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +206 -12
  17. package/es/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +17 -2
  18. package/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +70 -0
  19. package/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.styles.js +32 -0
  20. package/es/components/collapsible_nav_beta/collapsible_nav_button/index.js +9 -0
  21. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +138 -0
  22. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.styles.js +39 -0
  23. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +111 -0
  24. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +184 -0
  25. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +38 -0
  26. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/index.js +9 -0
  27. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +6 -6
  28. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  29. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +32 -23
  30. package/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +4 -4
  31. package/es/components/collapsible_nav_beta/context.js +14 -0
  32. package/es/components/color_picker/color_palette_picker/color_palette_picker.js +1 -1
  33. package/es/components/control_bar/control_bar.js +162 -2
  34. package/es/components/datagrid/body/data_grid_body.js +17 -31
  35. package/es/components/datagrid/body/data_grid_body_custom.js +17 -31
  36. package/es/components/datagrid/body/data_grid_body_virtualized.js +17 -31
  37. package/es/components/datagrid/body/data_grid_cell.js +30 -62
  38. package/es/components/datagrid/body/header/data_grid_header_cell.js +16 -6
  39. package/es/components/datagrid/body/header/data_grid_header_row.js +16 -6
  40. package/es/components/datagrid/data_grid.js +32 -10
  41. package/es/components/datagrid/utils/data_grid_pagination.js +9 -6
  42. package/es/components/datagrid/utils/in_memory.js +16 -6
  43. package/es/components/date_picker/date_picker_range.js +5 -2
  44. package/es/components/date_picker/super_date_picker/date_popover/date_popover_button.js +1 -1
  45. package/es/components/date_picker/super_date_picker/super_date_picker.a11y.js +1 -1
  46. package/es/components/date_picker/super_date_picker/super_date_picker.js +10 -4
  47. package/es/components/date_picker/super_date_picker/super_update_button.js +5 -2
  48. package/es/components/empty_prompt/empty_prompt.js +0 -1
  49. package/es/components/filter_group/filter_group.a11y.js +2 -2
  50. package/es/components/flyout/flyout.js +9 -7
  51. package/es/components/flyout/flyout_body.js +15 -3
  52. package/es/components/focus_trap/focus_trap.js +91 -13
  53. package/es/components/form/range/dual_range.js +33 -6
  54. package/es/components/form/range/range.js +31 -6
  55. package/es/components/form/super_select/super_select.js +1 -1
  56. package/es/components/header/header.a11y.js +1 -5
  57. package/es/components/header/header.js +4 -9
  58. package/es/components/header/header.styles.js +6 -4
  59. package/es/components/header/header_alert/header_alert.js +14 -6
  60. package/es/components/header/header_alert/header_alert.styles.js +21 -0
  61. package/es/components/header/header_breadcrumbs/header_breadcrumbs.js +162 -2
  62. package/es/components/header/header_links/header_links.js +14 -19
  63. package/es/components/header/header_links/header_links.styles.js +41 -0
  64. package/es/components/header/header_section/header_section.js +7 -11
  65. package/es/components/header/header_section/header_section.styles.js +38 -0
  66. package/es/components/header/header_section/header_section_item.js +12 -16
  67. package/es/components/header/header_section/header_section_item.styles.js +16 -0
  68. package/es/components/header/header_section/header_section_item_button.js +9 -2
  69. package/es/components/header/header_section/header_section_item_button.styles.js +44 -0
  70. package/es/components/list_group/list_group.js +6 -1
  71. package/es/components/list_group/list_group_item.js +25 -9
  72. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +11 -1
  73. package/es/components/page/page_header/page_header_content.js +162 -2
  74. package/es/components/page/page_sidebar/page_sidebar.js +2 -2
  75. package/es/components/page/page_template.js +8 -1
  76. package/es/components/page_template/page_template.js +13 -5
  77. package/es/components/popover/input_popover.js +24 -9
  78. package/es/components/popover/popover.js +4 -6
  79. package/es/components/portal/portal.js +44 -14
  80. package/es/components/provider/component_defaults/component_defaults.js +73 -0
  81. package/es/components/provider/component_defaults/index.js +9 -0
  82. package/es/components/provider/index.js +2 -1
  83. package/es/components/provider/provider.js +5 -1
  84. package/es/components/selectable/selectable_list/selectable_list.js +97 -79
  85. package/es/components/steps/step.styles.js +2 -1
  86. package/es/components/steps/step_horizontal.styles.js +2 -1
  87. package/es/components/steps/step_number.styles.js +3 -2
  88. package/es/components/table/table_pagination/index.js +4 -1
  89. package/es/components/table/table_pagination/table_pagination.js +24 -15
  90. package/es/components/table/table_pagination/table_pagination_defaults.js +32 -0
  91. package/es/components/tool_tip/icon_tip.js +7 -5
  92. package/es/components/tool_tip/tool_tip.js +8 -15
  93. package/es/components/tool_tip/tool_tip_anchor.js +5 -14
  94. package/es/components/tour/tour_step.js +2 -7
  95. package/eui.d.ts +2459 -2129
  96. package/i18ntokens.json +188 -116
  97. package/lib/components/accordion/accordion.js +82 -35
  98. package/lib/components/auto_sizer/index.js +11 -7
  99. package/lib/components/basic_table/basic_table.js +49 -34
  100. package/lib/components/basic_table/in_memory_table.js +31 -12
  101. package/lib/components/basic_table/pagination_bar.js +18 -14
  102. package/lib/components/bottom_bar/bottom_bar.js +9 -2
  103. package/lib/components/breadcrumbs/breadcrumb.js +219 -42
  104. package/lib/components/breadcrumbs/breadcrumbs.js +14 -2
  105. package/lib/components/code/code_block_virtualized.js +25 -17
  106. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +216 -17
  107. package/lib/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +22 -9
  108. package/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +80 -0
  109. package/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.styles.js +37 -0
  110. package/lib/components/collapsible_nav_beta/collapsible_nav_button/index.js +12 -0
  111. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +148 -0
  112. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.styles.js +45 -0
  113. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +117 -0
  114. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +194 -0
  115. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +44 -0
  116. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/index.js +12 -0
  117. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +6 -6
  118. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  119. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +35 -23
  120. package/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +4 -4
  121. package/lib/components/collapsible_nav_beta/context.js +21 -0
  122. package/lib/components/color_picker/color_palette_picker/color_palette_picker.js +1 -1
  123. package/lib/components/control_bar/control_bar.js +14 -2
  124. package/lib/components/datagrid/body/data_grid_body.js +17 -31
  125. package/lib/components/datagrid/body/data_grid_body_custom.js +17 -31
  126. package/lib/components/datagrid/body/data_grid_body_virtualized.js +17 -31
  127. package/lib/components/datagrid/body/data_grid_cell.js +30 -62
  128. package/lib/components/datagrid/body/header/data_grid_header_cell.js +16 -6
  129. package/lib/components/datagrid/body/header/data_grid_header_row.js +16 -6
  130. package/lib/components/datagrid/data_grid.js +32 -10
  131. package/lib/components/datagrid/utils/data_grid_pagination.js +8 -5
  132. package/lib/components/datagrid/utils/in_memory.js +16 -6
  133. package/lib/components/date_picker/date_picker_range.js +5 -2
  134. package/lib/components/date_picker/super_date_picker/date_popover/date_popover_button.js +1 -1
  135. package/lib/components/date_picker/super_date_picker/super_date_picker.a11y.js +1 -1
  136. package/lib/components/date_picker/super_date_picker/super_date_picker.js +10 -4
  137. package/lib/components/date_picker/super_date_picker/super_update_button.js +5 -2
  138. package/lib/components/empty_prompt/empty_prompt.js +4 -5
  139. package/lib/components/filter_group/filter_group.a11y.js +2 -2
  140. package/lib/components/flyout/flyout.js +9 -7
  141. package/lib/components/flyout/flyout_body.js +15 -3
  142. package/lib/components/focus_trap/focus_trap.js +92 -14
  143. package/lib/components/form/range/dual_range.js +33 -6
  144. package/lib/components/form/range/range.js +14 -6
  145. package/lib/components/form/super_select/super_select.js +1 -1
  146. package/lib/components/header/header.a11y.js +1 -5
  147. package/lib/components/header/header.js +4 -9
  148. package/lib/components/header/header.styles.js +6 -4
  149. package/lib/components/header/header_alert/header_alert.js +13 -5
  150. package/lib/components/header/header_alert/header_alert.styles.js +28 -0
  151. package/lib/components/header/header_breadcrumbs/header_breadcrumbs.js +14 -2
  152. package/lib/components/header/header_links/header_links.js +13 -166
  153. package/lib/components/header/header_links/header_links.styles.js +46 -0
  154. package/lib/components/header/header_section/header_section.js +7 -11
  155. package/lib/components/header/header_section/header_section.styles.js +43 -0
  156. package/lib/components/header/header_section/header_section_item.js +12 -16
  157. package/lib/components/header/header_section/header_section_item.styles.js +23 -0
  158. package/lib/components/header/header_section/header_section_item_button.js +9 -2
  159. package/lib/components/header/header_section/header_section_item_button.styles.js +49 -0
  160. package/lib/components/list_group/list_group.js +6 -1
  161. package/lib/components/list_group/list_group_item.js +24 -9
  162. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +11 -1
  163. package/lib/components/page/page_header/page_header_content.js +14 -2
  164. package/lib/components/page/page_sidebar/page_sidebar.js +1 -1
  165. package/lib/components/page/page_template.js +8 -1
  166. package/lib/components/page_template/page_template.js +13 -5
  167. package/lib/components/popover/input_popover.js +23 -8
  168. package/lib/components/popover/popover.js +4 -6
  169. package/lib/components/portal/portal.js +48 -17
  170. package/lib/components/provider/component_defaults/component_defaults.js +83 -0
  171. package/lib/components/provider/component_defaults/index.js +16 -0
  172. package/lib/components/provider/index.js +14 -1
  173. package/lib/components/provider/provider.js +5 -1
  174. package/lib/components/selectable/selectable_list/selectable_list.js +97 -79
  175. package/lib/components/steps/step.styles.js +2 -1
  176. package/lib/components/steps/step_horizontal.styles.js +2 -1
  177. package/lib/components/steps/step_number.styles.js +3 -2
  178. package/lib/components/table/table_pagination/index.js +14 -1
  179. package/lib/components/table/table_pagination/table_pagination.js +24 -15
  180. package/lib/components/table/table_pagination/table_pagination_defaults.js +38 -0
  181. package/lib/components/tool_tip/icon_tip.js +7 -5
  182. package/lib/components/tool_tip/tool_tip.js +9 -16
  183. package/lib/components/tool_tip/tool_tip_anchor.js +5 -13
  184. package/optimize/es/components/accordion/accordion.js +82 -35
  185. package/optimize/es/components/auto_sizer/index.js +1 -1
  186. package/optimize/es/components/basic_table/basic_table.js +41 -32
  187. package/optimize/es/components/basic_table/in_memory_table.js +14 -10
  188. package/optimize/es/components/basic_table/pagination_bar.js +16 -11
  189. package/optimize/es/components/breadcrumbs/breadcrumb.js +58 -41
  190. package/optimize/es/components/code/code_block_virtualized.js +25 -17
  191. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +154 -12
  192. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +17 -2
  193. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +62 -0
  194. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.styles.js +32 -0
  195. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_button/index.js +9 -0
  196. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +62 -0
  197. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.styles.js +39 -0
  198. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +36 -0
  199. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +98 -0
  200. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +38 -0
  201. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsed/index.js +9 -0
  202. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  203. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +23 -14
  204. package/optimize/es/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +4 -4
  205. package/optimize/es/components/collapsible_nav_beta/context.js +14 -0
  206. package/optimize/es/components/datagrid/data_grid.js +9 -1
  207. package/optimize/es/components/datagrid/utils/data_grid_pagination.js +9 -6
  208. package/optimize/es/components/date_picker/date_picker_range.js +5 -2
  209. package/optimize/es/components/date_picker/super_date_picker/super_date_picker.a11y.js +1 -1
  210. package/optimize/es/components/filter_group/filter_group.a11y.js +2 -2
  211. package/optimize/es/components/flyout/flyout.js +9 -7
  212. package/optimize/es/components/flyout/flyout_body.js +4 -2
  213. package/optimize/es/components/focus_trap/focus_trap.js +13 -8
  214. package/optimize/es/components/form/range/dual_range.js +7 -4
  215. package/optimize/es/components/form/range/range.js +5 -4
  216. package/optimize/es/components/header/header.a11y.js +1 -5
  217. package/optimize/es/components/header/header.js +4 -5
  218. package/optimize/es/components/header/header.styles.js +6 -4
  219. package/optimize/es/components/header/header_alert/header_alert.js +14 -6
  220. package/optimize/es/components/header/header_alert/header_alert.styles.js +21 -0
  221. package/optimize/es/components/header/header_links/header_links.js +11 -11
  222. package/optimize/es/components/header/header_links/header_links.styles.js +41 -0
  223. package/optimize/es/components/header/header_section/header_section.js +7 -11
  224. package/optimize/es/components/header/header_section/header_section.styles.js +38 -0
  225. package/optimize/es/components/header/header_section/header_section_item.js +12 -11
  226. package/optimize/es/components/header/header_section/header_section_item.styles.js +16 -0
  227. package/optimize/es/components/header/header_section/header_section_item_button.js +9 -2
  228. package/optimize/es/components/header/header_section/header_section_item_button.styles.js +44 -0
  229. package/optimize/es/components/list_group/list_group_item.js +16 -8
  230. package/optimize/es/components/page/page_sidebar/page_sidebar.js +2 -2
  231. package/optimize/es/components/page_template/page_template.js +13 -5
  232. package/optimize/es/components/popover/input_popover.js +13 -8
  233. package/optimize/es/components/popover/popover.js +2 -3
  234. package/optimize/es/components/portal/portal.js +17 -12
  235. package/optimize/es/components/provider/component_defaults/component_defaults.js +50 -0
  236. package/optimize/es/components/provider/component_defaults/index.js +9 -0
  237. package/optimize/es/components/provider/index.js +2 -1
  238. package/optimize/es/components/provider/provider.js +5 -1
  239. package/optimize/es/components/selectable/selectable_list/selectable_list.js +97 -79
  240. package/optimize/es/components/steps/step.styles.js +2 -1
  241. package/optimize/es/components/steps/step_horizontal.styles.js +2 -1
  242. package/optimize/es/components/steps/step_number.styles.js +3 -2
  243. package/optimize/es/components/table/table_pagination/index.js +4 -1
  244. package/optimize/es/components/table/table_pagination/table_pagination.js +18 -15
  245. package/optimize/es/components/table/table_pagination/table_pagination_defaults.js +29 -0
  246. package/optimize/es/components/tool_tip/tool_tip.js +3 -13
  247. package/optimize/es/components/tool_tip/tool_tip_anchor.js +4 -8
  248. package/optimize/lib/components/accordion/accordion.js +82 -35
  249. package/optimize/lib/components/auto_sizer/index.js +11 -7
  250. package/optimize/lib/components/basic_table/basic_table.js +41 -32
  251. package/optimize/lib/components/basic_table/in_memory_table.js +21 -17
  252. package/optimize/lib/components/basic_table/pagination_bar.js +18 -14
  253. package/optimize/lib/components/breadcrumbs/breadcrumb.js +58 -41
  254. package/optimize/lib/components/code/code_block_virtualized.js +25 -17
  255. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +156 -11
  256. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +22 -9
  257. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +72 -0
  258. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.styles.js +37 -0
  259. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_button/index.js +12 -0
  260. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +72 -0
  261. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.styles.js +45 -0
  262. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +42 -0
  263. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +108 -0
  264. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +44 -0
  265. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsed/index.js +12 -0
  266. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  267. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +26 -14
  268. package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +4 -4
  269. package/optimize/lib/components/collapsible_nav_beta/context.js +21 -0
  270. package/optimize/lib/components/datagrid/data_grid.js +9 -1
  271. package/optimize/lib/components/datagrid/utils/data_grid_pagination.js +8 -5
  272. package/optimize/lib/components/date_picker/date_picker_range.js +5 -2
  273. package/optimize/lib/components/date_picker/super_date_picker/super_date_picker.a11y.js +1 -1
  274. package/optimize/lib/components/filter_group/filter_group.a11y.js +2 -2
  275. package/optimize/lib/components/flyout/flyout.js +9 -7
  276. package/optimize/lib/components/flyout/flyout_body.js +4 -2
  277. package/optimize/lib/components/focus_trap/focus_trap.js +14 -9
  278. package/optimize/lib/components/form/range/dual_range.js +7 -4
  279. package/optimize/lib/components/form/range/range.js +5 -4
  280. package/optimize/lib/components/header/header.a11y.js +1 -5
  281. package/optimize/lib/components/header/header.js +4 -5
  282. package/optimize/lib/components/header/header.styles.js +6 -4
  283. package/optimize/lib/components/header/header_alert/header_alert.js +13 -5
  284. package/optimize/lib/components/header/header_alert/header_alert.styles.js +28 -0
  285. package/optimize/lib/components/header/header_links/header_links.js +11 -11
  286. package/optimize/lib/components/header/header_links/header_links.styles.js +46 -0
  287. package/optimize/lib/components/header/header_section/header_section.js +7 -11
  288. package/optimize/lib/components/header/header_section/header_section.styles.js +43 -0
  289. package/optimize/lib/components/header/header_section/header_section_item.js +12 -11
  290. package/optimize/lib/components/header/header_section/header_section_item.styles.js +23 -0
  291. package/optimize/lib/components/header/header_section/header_section_item_button.js +9 -2
  292. package/optimize/lib/components/header/header_section/header_section_item_button.styles.js +49 -0
  293. package/optimize/lib/components/list_group/list_group_item.js +16 -8
  294. package/optimize/lib/components/page/page_sidebar/page_sidebar.js +1 -1
  295. package/optimize/lib/components/page_template/page_template.js +13 -5
  296. package/optimize/lib/components/popover/input_popover.js +12 -7
  297. package/optimize/lib/components/popover/popover.js +2 -3
  298. package/optimize/lib/components/portal/portal.js +22 -15
  299. package/optimize/lib/components/provider/component_defaults/component_defaults.js +61 -0
  300. package/optimize/lib/components/provider/component_defaults/index.js +16 -0
  301. package/optimize/lib/components/provider/index.js +14 -1
  302. package/optimize/lib/components/provider/provider.js +5 -1
  303. package/optimize/lib/components/selectable/selectable_list/selectable_list.js +97 -79
  304. package/optimize/lib/components/steps/step.styles.js +2 -1
  305. package/optimize/lib/components/steps/step_horizontal.styles.js +2 -1
  306. package/optimize/lib/components/steps/step_number.styles.js +3 -2
  307. package/optimize/lib/components/table/table_pagination/index.js +14 -1
  308. package/optimize/lib/components/table/table_pagination/table_pagination.js +18 -15
  309. package/optimize/lib/components/table/table_pagination/table_pagination_defaults.js +36 -0
  310. package/optimize/lib/components/tool_tip/tool_tip.js +3 -13
  311. package/optimize/lib/components/tool_tip/tool_tip_anchor.js +4 -8
  312. package/package.json +13 -15
  313. package/src/components/index.scss +0 -1
  314. package/src/global_styling/variables/_header.scss +0 -6
  315. package/src/themes/amsterdam/overrides/_index.scss +0 -1
  316. package/test-env/components/accordion/accordion.js +82 -35
  317. package/test-env/components/auto_sizer/index.js +11 -7
  318. package/test-env/components/basic_table/basic_table.js +49 -34
  319. package/test-env/components/basic_table/in_memory_table.js +37 -18
  320. package/test-env/components/basic_table/pagination_bar.js +18 -14
  321. package/test-env/components/bottom_bar/bottom_bar.js +9 -2
  322. package/test-env/components/breadcrumbs/breadcrumb.js +219 -42
  323. package/test-env/components/breadcrumbs/breadcrumbs.js +14 -2
  324. package/test-env/components/code/code_block_virtualized.js +25 -17
  325. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +197 -12
  326. package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.styles.js +22 -9
  327. package/test-env/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.js +79 -0
  328. package/test-env/components/collapsible_nav_beta/collapsible_nav_button/collapsible_nav_button.styles.js +37 -0
  329. package/test-env/components/collapsible_nav_beta/collapsible_nav_button/index.js +12 -0
  330. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.js +147 -0
  331. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_button.styles.js +45 -0
  332. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_item.js +116 -0
  333. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.js +188 -0
  334. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/collapsed_nav_popover.styles.js +44 -0
  335. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsed/index.js +12 -0
  336. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.js +6 -6
  337. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_accordion.styles.js +1 -1
  338. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_item.js +35 -23
  339. package/test-env/components/collapsible_nav_beta/collapsible_nav_item/collapsible_nav_link.js +4 -4
  340. package/test-env/components/collapsible_nav_beta/context.js +21 -0
  341. package/test-env/components/color_picker/color_palette_picker/color_palette_picker.js +1 -1
  342. package/test-env/components/control_bar/control_bar.js +14 -2
  343. package/test-env/components/datagrid/body/data_grid_body.js +17 -31
  344. package/test-env/components/datagrid/body/data_grid_body_custom.js +17 -31
  345. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +17 -31
  346. package/test-env/components/datagrid/body/data_grid_cell.js +30 -62
  347. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +16 -6
  348. package/test-env/components/datagrid/body/header/data_grid_header_row.js +16 -6
  349. package/test-env/components/datagrid/data_grid.js +32 -10
  350. package/test-env/components/datagrid/utils/data_grid_pagination.js +8 -5
  351. package/test-env/components/datagrid/utils/in_memory.js +16 -6
  352. package/test-env/components/date_picker/date_picker_range.js +5 -2
  353. package/test-env/components/date_picker/super_date_picker/date_popover/date_popover_button.js +1 -1
  354. package/test-env/components/date_picker/super_date_picker/super_date_picker.a11y.js +1 -1
  355. package/test-env/components/date_picker/super_date_picker/super_date_picker.js +10 -4
  356. package/test-env/components/date_picker/super_date_picker/super_update_button.js +5 -2
  357. package/test-env/components/empty_prompt/empty_prompt.js +4 -5
  358. package/test-env/components/filter_group/filter_group.a11y.js +2 -2
  359. package/test-env/components/flyout/flyout_body.js +15 -3
  360. package/test-env/components/form/range/dual_range.js +33 -6
  361. package/test-env/components/form/range/range.js +14 -6
  362. package/test-env/components/form/super_select/super_select.js +1 -1
  363. package/test-env/components/header/header.a11y.js +1 -5
  364. package/test-env/components/header/header.js +4 -9
  365. package/test-env/components/header/header.styles.js +6 -4
  366. package/test-env/components/header/header_alert/header_alert.js +13 -5
  367. package/test-env/components/header/header_alert/header_alert.styles.js +28 -0
  368. package/test-env/components/header/header_breadcrumbs/header_breadcrumbs.js +14 -2
  369. package/test-env/components/header/header_links/header_links.js +13 -166
  370. package/test-env/components/header/header_links/header_links.styles.js +46 -0
  371. package/test-env/components/header/header_section/header_section.js +7 -11
  372. package/test-env/components/header/header_section/header_section.styles.js +43 -0
  373. package/test-env/components/header/header_section/header_section_item.js +12 -16
  374. package/test-env/components/header/header_section/header_section_item.styles.js +23 -0
  375. package/test-env/components/header/header_section/header_section_item_button.js +9 -2
  376. package/test-env/components/header/header_section/header_section_item_button.styles.js +49 -0
  377. package/test-env/components/list_group/list_group.js +6 -1
  378. package/test-env/components/list_group/list_group_item.js +22 -9
  379. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +11 -1
  380. package/test-env/components/page/page_header/page_header_content.js +14 -2
  381. package/test-env/components/page/page_sidebar/page_sidebar.js +1 -1
  382. package/test-env/components/page/page_template.js +8 -1
  383. package/test-env/components/page_template/page_template.js +13 -5
  384. package/test-env/components/popover/input_popover.js +23 -8
  385. package/test-env/components/popover/popover.js +4 -6
  386. package/test-env/components/portal/portal.js +49 -17
  387. package/test-env/components/provider/component_defaults/component_defaults.js +81 -0
  388. package/test-env/components/provider/component_defaults/index.js +16 -0
  389. package/test-env/components/provider/index.js +14 -1
  390. package/test-env/components/provider/provider.js +5 -1
  391. package/test-env/components/selectable/selectable_list/selectable_list.js +97 -79
  392. package/test-env/components/steps/step.styles.js +2 -1
  393. package/test-env/components/steps/step_horizontal.styles.js +2 -1
  394. package/test-env/components/steps/step_number.styles.js +3 -2
  395. package/test-env/components/table/table_pagination/index.js +14 -1
  396. package/test-env/components/table/table_pagination/table_pagination.js +24 -15
  397. package/test-env/components/table/table_pagination/table_pagination_defaults.js +36 -0
  398. package/test-env/components/tool_tip/icon_tip.js +7 -5
  399. package/test-env/components/tool_tip/tool_tip.js +9 -16
  400. package/test-env/components/tool_tip/tool_tip_anchor.js +5 -11
  401. package/src/components/header/_index.scss +0 -3
  402. package/src/components/header/header_alert/_header_alert.scss +0 -40
  403. package/src/components/header/header_alert/_index.scss +0 -1
  404. package/src/components/header/header_links/_header_link.scss +0 -13
  405. package/src/components/header/header_links/_header_links.scss +0 -16
  406. package/src/components/header/header_links/_index.scss +0 -4
  407. package/src/components/header/header_links/_variables.scss +0 -6
  408. package/src/components/header/header_section/_header_section.scss +0 -14
  409. package/src/components/header/header_section/_header_section_item.scss +0 -44
  410. package/src/components/header/header_section/_header_section_item_button.scss +0 -40
  411. package/src/components/header/header_section/_index.scss +0 -3
  412. package/src/components/portal/__snapshots__/_index.scss +0 -1
  413. package/src/themes/amsterdam/overrides/_header.scss +0 -4
@@ -6,4 +6,7 @@
6
6
  * Side Public License, v 1.
7
7
  */
8
8
 
9
- export { EuiTablePagination } from './table_pagination';
9
+ export { EuiTablePagination } from './table_pagination';
10
+
11
+ // Not public top-level exports
12
+ export { useEuiTablePaginationDefaults, euiTablePaginationDefaults } from './table_pagination_defaults';
@@ -17,20 +17,22 @@ import { EuiFlexGroup, EuiFlexItem } from '../../flex';
17
17
  import { EuiPagination } from '../../pagination';
18
18
  import { EuiPopover } from '../../popover';
19
19
  import { EuiI18n } from '../../i18n';
20
+ import { usePropsWithComponentDefaults } from '../../provider/component_defaults';
21
+ import { euiTablePaginationDefaults } from './table_pagination_defaults';
20
22
  import { jsx as ___EmotionJSX } from "@emotion/react";
21
- export var EuiTablePagination = function EuiTablePagination(_ref) {
22
- var activePage = _ref.activePage,
23
- _ref$itemsPerPage = _ref.itemsPerPage,
24
- itemsPerPage = _ref$itemsPerPage === void 0 ? 50 : _ref$itemsPerPage,
25
- _ref$itemsPerPageOpti = _ref.itemsPerPageOptions,
26
- itemsPerPageOptions = _ref$itemsPerPageOpti === void 0 ? [10, 20, 50, 100] : _ref$itemsPerPageOpti,
27
- _ref$showPerPageOptio = _ref.showPerPageOptions,
28
- showPerPageOptions = _ref$showPerPageOptio === void 0 ? true : _ref$showPerPageOptio,
29
- _ref$onChangeItemsPer = _ref.onChangeItemsPerPage,
30
- onChangeItemsPerPage = _ref$onChangeItemsPer === void 0 ? function () {} : _ref$onChangeItemsPer,
31
- onChangePage = _ref.onChangePage,
32
- pageCount = _ref.pageCount,
33
- rest = _objectWithoutProperties(_ref, _excluded);
23
+ export var EuiTablePagination = function EuiTablePagination(props) {
24
+ var _usePropsWithComponen = usePropsWithComponentDefaults('EuiTablePagination', props),
25
+ activePage = _usePropsWithComponen.activePage,
26
+ _usePropsWithComponen2 = _usePropsWithComponen.itemsPerPage,
27
+ itemsPerPage = _usePropsWithComponen2 === void 0 ? euiTablePaginationDefaults.itemsPerPage : _usePropsWithComponen2,
28
+ _usePropsWithComponen3 = _usePropsWithComponen.itemsPerPageOptions,
29
+ itemsPerPageOptions = _usePropsWithComponen3 === void 0 ? euiTablePaginationDefaults.itemsPerPageOptions : _usePropsWithComponen3,
30
+ _usePropsWithComponen4 = _usePropsWithComponen.showPerPageOptions,
31
+ showPerPageOptions = _usePropsWithComponen4 === void 0 ? euiTablePaginationDefaults.showPerPageOptions : _usePropsWithComponen4,
32
+ onChangeItemsPerPage = _usePropsWithComponen.onChangeItemsPerPage,
33
+ onChangePage = _usePropsWithComponen.onChangePage,
34
+ pageCount = _usePropsWithComponen.pageCount,
35
+ rest = _objectWithoutProperties(_usePropsWithComponen, _excluded);
34
36
  var _useState = useState(false),
35
37
  _useState2 = _slicedToArray(_useState, 2),
36
38
  isPopoverOpen = _useState2[0],
@@ -64,7 +66,7 @@ export var EuiTablePagination = function EuiTablePagination(_ref) {
64
66
  icon: itemsPerPageOption === itemsPerPage ? 'check' : 'empty',
65
67
  onClick: function onClick() {
66
68
  closePopover();
67
- onChangeItemsPerPage(itemsPerPageOption);
69
+ onChangeItemsPerPage === null || onChangeItemsPerPage === void 0 ? void 0 : onChangeItemsPerPage(itemsPerPageOption);
68
70
  },
69
71
  "data-test-subj": "tablePagination-".concat(itemsPerPageOption, "-rows")
70
72
  }, itemsPerPageOption === 0 ? ___EmotionJSX(EuiI18n, {
@@ -86,7 +88,8 @@ export var EuiTablePagination = function EuiTablePagination(_ref) {
86
88
  panelPaddingSize: "none",
87
89
  anchorPosition: "upRight"
88
90
  }, ___EmotionJSX(EuiContextMenuPanel, {
89
- items: items
91
+ items: items,
92
+ "data-test-subj": "tablePaginationRowOptions"
90
93
  }));
91
94
  return ___EmotionJSX(EuiFlexGroup, {
92
95
  justifyContent: "spaceBetween",
@@ -0,0 +1,29 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ 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; }
3
+ 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) { _defineProperty(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; }
4
+ /*
5
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
6
+ * or more contributor license agreements. Licensed under the Elastic License
7
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
8
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
9
+ * Side Public License, v 1.
10
+ */
11
+
12
+ import { useMemo } from 'react';
13
+ import { useComponentDefaults } from '../../provider/component_defaults';
14
+ /**
15
+ * Table pagination prop defaults live in a separate file because
16
+ * they'll be reused by basic tables and datagrids as fallbacks
17
+ */
18
+
19
+ export var euiTablePaginationDefaults = {
20
+ itemsPerPage: 10,
21
+ itemsPerPageOptions: [10, 25, 50],
22
+ showPerPageOptions: true
23
+ };
24
+ export var useEuiTablePaginationDefaults = function useEuiTablePaginationDefaults() {
25
+ var consumerDefaults = useComponentDefaults().EuiTablePagination;
26
+ return useMemo(function () {
27
+ return _objectSpread(_objectSpread({}, euiTablePaginationDefaults), consumerDefaults);
28
+ }, [consumerDefaults]);
29
+ };
@@ -20,7 +20,6 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
20
20
 
21
21
  import React, { Component } from 'react';
22
22
  import classNames from 'classnames';
23
- import { keysOf } from '../common';
24
23
  import { findPopoverPosition, htmlIdGenerator } from '../../services';
25
24
  import { enqueueStateChange } from '../../services/react';
26
25
  import { EuiResizeObserver } from '../observer/resize_observer';
@@ -30,21 +29,12 @@ import { EuiToolTipAnchor } from './tool_tip_anchor';
30
29
  import { EuiToolTipArrow } from './tool_tip_arrow';
31
30
  import { toolTipManager } from './tool_tip_manager';
32
31
  import { jsx as ___EmotionJSX } from "@emotion/react";
33
- var positionsToClassNameMap = {
34
- top: 'euiToolTip--top',
35
- right: 'euiToolTip--right',
36
- bottom: 'euiToolTip--bottom',
37
- left: 'euiToolTip--left'
38
- };
39
- export var POSITIONS = keysOf(positionsToClassNameMap);
32
+ export var POSITIONS = ['top', 'right', 'bottom', 'left'];
33
+ var DISPLAYS = ['inlineBlock', 'block'];
40
34
  var delayToMsMap = {
41
35
  regular: 250,
42
36
  long: 250 * 5
43
37
  };
44
- var displayToClassNameMap = {
45
- inlineBlock: undefined,
46
- block: 'euiToolTipAnchor--displayBlock'
47
- };
48
38
  var DEFAULT_TOOLTIP_STYLES = {
49
39
  // position the tooltip content near the top-left
50
40
  // corner of the window so it can't create scrollbars
@@ -255,7 +245,7 @@ export var EuiToolTip = /*#__PURE__*/function (_Component) {
255
245
  onFocus: this.onFocus,
256
246
  onMouseOver: this.showToolTip,
257
247
  onMouseOut: this.onMouseOut,
258
- id: this.state.id,
248
+ id: id,
259
249
  className: anchorClasses,
260
250
  display: display,
261
251
  isVisible: visible
@@ -1,9 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
3
  var _excluded = ["onBlur", "onFocus", "onMouseOver", "onMouseOut", "id", "className", "children", "display", "isVisible"];
5
- 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; }
6
- 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) { _defineProperty(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; }
7
4
  /*
8
5
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
9
6
  * or more contributor license agreements. Licensed under the Elastic License
@@ -39,7 +36,7 @@ export var EuiToolTipAnchor = /*#__PURE__*/forwardRef(function (_ref, ref) {
39
36
  className: classes,
40
37
  onMouseOver: onMouseOver,
41
38
  onMouseOut: onMouseOut
42
- }), /*#__PURE__*/cloneElement(children, _objectSpread({
39
+ }), /*#__PURE__*/cloneElement(children, {
43
40
  onFocus: function onFocus(e) {
44
41
  _onFocus();
45
42
  children.props.onFocus && children.props.onFocus(e);
@@ -47,10 +44,9 @@ export var EuiToolTipAnchor = /*#__PURE__*/forwardRef(function (_ref, ref) {
47
44
  onBlur: function onBlur(e) {
48
45
  _onBlur();
49
46
  children.props.onBlur && children.props.onBlur(e);
50
- }
51
- }, isVisible && {
52
- 'aria-describedby': id
53
- })))
47
+ },
48
+ 'aria-describedby': isVisible ? classNames(id, children.props['aria-describedby']) : children.props['aria-describedby']
49
+ }))
54
50
  );
55
51
  });
56
52
  EuiToolTipAnchor.displayName = 'EuiToolTipAnchor';
@@ -17,6 +17,7 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
17
17
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
18
18
  var _react = _interopRequireWildcard(require("react"));
19
19
  var _classnames = _interopRequireDefault(require("classnames"));
20
+ var _tabbable = require("tabbable");
20
21
  var _loading = require("../loading");
21
22
  var _resize_observer = require("../observer/resize_observer");
22
23
  var _text = require("../text");
@@ -51,33 +52,68 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
51
52
  _this = _super.call.apply(_super, [this].concat(args));
52
53
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "childContent", null);
53
54
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "childWrapper", null);
55
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "tabbableChildren", null);
54
56
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", {
55
57
  isOpen: _this.props.forceState ? _this.props.forceState === 'open' : _this.props.initialIsOpen
56
58
  });
57
59
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setChildContentHeight", function () {
58
- var forceState = _this.props.forceState;
59
60
  requestAnimationFrame(function () {
60
- var height = _this.childContent && (forceState ? forceState === 'open' : _this.state.isOpen) ? _this.childContent.clientHeight : 0;
61
+ var height = _this.childContent && _this.isOpen ? _this.childContent.clientHeight : 0;
61
62
  _this.childWrapper && _this.childWrapper.setAttribute('style', (0, _global_styling.logicalCSS)('height', "".concat(height, "px")));
62
63
  });
63
64
  });
64
65
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onToggle", function () {
65
66
  var forceState = _this.props.forceState;
66
67
  if (forceState) {
67
- _this.props.onToggle && _this.props.onToggle(forceState === 'open' ? false : true);
68
+ var _this$props$onToggle, _this$props;
69
+ (_this$props$onToggle = (_this$props = _this.props).onToggle) === null || _this$props$onToggle === void 0 ? void 0 : _this$props$onToggle.call(_this$props, forceState === 'open' ? false : true);
68
70
  } else {
69
71
  _this.setState(function (prevState) {
70
72
  return {
71
73
  isOpen: !prevState.isOpen
72
74
  };
73
75
  }, function () {
76
+ var _this$props$onToggle2, _this$props2;
74
77
  if (_this.state.isOpen && _this.childWrapper) {
75
78
  _this.childWrapper.focus();
76
79
  }
77
- _this.props.onToggle && _this.props.onToggle(_this.state.isOpen);
80
+ (_this$props$onToggle2 = (_this$props2 = _this.props).onToggle) === null || _this$props$onToggle2 === void 0 ? void 0 : _this$props$onToggle2.call(_this$props2, _this.state.isOpen);
78
81
  });
79
82
  }
80
83
  });
84
+ // When accordions are closed, tabbable children should not be present in the tab order
85
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "preventTabbing", function () {
86
+ if (_this.childContent) {
87
+ // Re-check for children on every close - content can change dynamically
88
+ _this.tabbableChildren = (0, _tabbable.tabbable)(_this.childContent);
89
+ _this.tabbableChildren.forEach(function (element) {
90
+ // If the element has an existing `tabIndex` set, make sure we can restore it
91
+ var originalTabIndex = element.getAttribute('tabIndex');
92
+ if (originalTabIndex) {
93
+ element.setAttribute('data-original-tabindex', originalTabIndex);
94
+ }
95
+ element.setAttribute('tabIndex', '-1');
96
+ });
97
+ }
98
+ });
99
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "enableTabbing", function () {
100
+ // If no tabbable children were set, we don't need to re-enable anything
101
+ if (_this.tabbableChildren) {
102
+ _this.tabbableChildren.forEach(function (element) {
103
+ var originalTabIndex = element.getAttribute('data-original-tabindex');
104
+ if (originalTabIndex) {
105
+ // If the element originally had an existing `tabIndex` set, restore it
106
+ element.setAttribute('tabIndex', originalTabIndex);
107
+ element.removeAttribute('data-original-tabindex');
108
+ } else {
109
+ // If not, remove the tabIndex property
110
+ element.removeAttribute('tabIndex');
111
+ }
112
+ });
113
+ // Cleanup - unset the list of children
114
+ _this.tabbableChildren = null;
115
+ }
116
+ });
81
117
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "setChildContentRef", function (node) {
82
118
  _this.childContent = node;
83
119
  });
@@ -92,44 +128,55 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
92
128
  return _this;
93
129
  }
94
130
  (0, _createClass2.default)(EuiAccordionClass, [{
131
+ key: "isOpen",
132
+ get: function get() {
133
+ return this.props.forceState ? this.props.forceState === 'open' : this.state.isOpen;
134
+ }
135
+ }, {
95
136
  key: "componentDidMount",
96
137
  value: function componentDidMount() {
97
138
  this.setChildContentHeight();
139
+ if (!this.isOpen) this.preventTabbing();
98
140
  }
99
141
  }, {
100
142
  key: "componentDidUpdate",
101
- value: function componentDidUpdate() {
143
+ value: function componentDidUpdate(prevProps, prevState) {
102
144
  this.setChildContentHeight();
145
+ if (prevProps.forceState === 'open' && this.props.forceState === 'closed' || prevState.isOpen === true && this.state.isOpen === false) {
146
+ this.preventTabbing();
147
+ }
148
+ if (prevProps.forceState === 'closed' && this.props.forceState === 'open' || prevState.isOpen === false && this.state.isOpen === true) {
149
+ this.enableTabbing();
150
+ }
103
151
  }
104
152
  }, {
105
153
  key: "render",
106
154
  value: function render() {
107
155
  var _buttonProps$id,
108
156
  _this2 = this;
109
- var _this$props = this.props,
110
- children = _this$props.children,
111
- buttonContent = _this$props.buttonContent,
112
- className = _this$props.className,
113
- id = _this$props.id,
114
- _this$props$element = _this$props.element,
115
- Element = _this$props$element === void 0 ? 'div' : _this$props$element,
116
- buttonClassName = _this$props.buttonClassName,
117
- buttonContentClassName = _this$props.buttonContentClassName,
118
- extraAction = _this$props.extraAction,
119
- paddingSize = _this$props.paddingSize,
120
- initialIsOpen = _this$props.initialIsOpen,
121
- arrowDisplay = _this$props.arrowDisplay,
122
- forceState = _this$props.forceState,
123
- isLoading = _this$props.isLoading,
124
- isLoadingMessage = _this$props.isLoadingMessage,
125
- isDisabled = _this$props.isDisabled,
126
- buttonProps = _this$props.buttonProps,
127
- _this$props$buttonEle = _this$props.buttonElement,
128
- _ButtonElement = _this$props$buttonEle === void 0 ? 'button' : _this$props$buttonEle,
129
- arrowProps = _this$props.arrowProps,
130
- theme = _this$props.theme,
131
- rest = (0, _objectWithoutProperties2.default)(_this$props, _excluded);
132
- var isOpen = forceState ? forceState === 'open' : this.state.isOpen;
157
+ var _this$props3 = this.props,
158
+ children = _this$props3.children,
159
+ buttonContent = _this$props3.buttonContent,
160
+ className = _this$props3.className,
161
+ id = _this$props3.id,
162
+ _this$props3$element = _this$props3.element,
163
+ Element = _this$props3$element === void 0 ? 'div' : _this$props3$element,
164
+ buttonClassName = _this$props3.buttonClassName,
165
+ buttonContentClassName = _this$props3.buttonContentClassName,
166
+ extraAction = _this$props3.extraAction,
167
+ paddingSize = _this$props3.paddingSize,
168
+ initialIsOpen = _this$props3.initialIsOpen,
169
+ arrowDisplay = _this$props3.arrowDisplay,
170
+ forceState = _this$props3.forceState,
171
+ isLoading = _this$props3.isLoading,
172
+ isLoadingMessage = _this$props3.isLoadingMessage,
173
+ isDisabled = _this$props3.isDisabled,
174
+ buttonProps = _this$props3.buttonProps,
175
+ _this$props3$buttonEl = _this$props3.buttonElement,
176
+ _ButtonElement = _this$props3$buttonEl === void 0 ? 'button' : _this$props3$buttonEl,
177
+ arrowProps = _this$props3.arrowProps,
178
+ theme = _this$props3.theme,
179
+ rest = (0, _objectWithoutProperties2.default)(_this$props3, _excluded);
133
180
 
134
181
  // Force button element to be a legend if the element is a fieldset
135
182
  var ButtonElement = Element === 'fieldset' ? 'legend' : _ButtonElement;
@@ -138,7 +185,7 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
138
185
  // Force visibility of arrow button if button element is not focusable
139
186
  var _arrowDisplay = arrowDisplay === 'none' && !buttonElementIsFocusable ? 'left' : arrowDisplay;
140
187
  var classes = (0, _classnames.default)('euiAccordion', {
141
- 'euiAccordion-isOpen': isOpen
188
+ 'euiAccordion-isOpen': this.isOpen
142
189
  }, className);
143
190
  var childrenClasses = (0, _classnames.default)('euiAccordion__children', {
144
191
  'euiAccordion__children-isLoading': isLoading
@@ -146,7 +193,7 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
146
193
  var buttonClasses = (0, _classnames.default)('euiAccordion__button', buttonClassName, buttonProps === null || buttonProps === void 0 ? void 0 : buttonProps.className);
147
194
  var buttonContentClasses = (0, _classnames.default)('euiAccordion__buttonContent', buttonContentClassName);
148
195
  var iconButtonClasses = (0, _classnames.default)('euiAccordion__iconButton', {
149
- 'euiAccordion__iconButton-isOpen': isOpen,
196
+ 'euiAccordion__iconButton-isOpen': this.isOpen,
150
197
  'euiAccordion__iconButton--right': _arrowDisplay === 'right'
151
198
  }, arrowProps === null || arrowProps === void 0 ? void 0 : arrowProps.className);
152
199
 
@@ -156,9 +203,9 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
156
203
  var childrenStyles = (0, _accordion.euiAccordionChildrenStyles)(theme);
157
204
  var cssChildrenStyles = [childrenStyles.euiAccordion__children, isLoading && childrenStyles.isLoading, paddingSize && paddingSize !== 'none' && childrenStyles[paddingSize]];
158
205
  var childWrapperStyles = (0, _accordion.euiAccordionChildWrapperStyles)(theme);
159
- var cssChildWrapperStyles = [childWrapperStyles.euiAccordion__childWrapper, isOpen && childWrapperStyles.isOpen];
206
+ var cssChildWrapperStyles = [childWrapperStyles.euiAccordion__childWrapper, this.isOpen && childWrapperStyles.isOpen];
160
207
  var iconButtonStyles = (0, _accordion.euiAccordionIconButtonStyles)(theme);
161
- var cssIconButtonStyles = [iconButtonStyles.euiAccordion__iconButton, isOpen && iconButtonStyles.isOpen, _arrowDisplay === 'right' && iconButtonStyles.arrowRight, arrowProps === null || arrowProps === void 0 ? void 0 : arrowProps.css];
208
+ var cssIconButtonStyles = [iconButtonStyles.euiAccordion__iconButton, this.isOpen && iconButtonStyles.isOpen, _arrowDisplay === 'right' && iconButtonStyles.arrowRight, arrowProps === null || arrowProps === void 0 ? void 0 : arrowProps.css];
162
209
  var optionalActionStyles = (0, _accordion.euiAccordionOptionalActionStyles)();
163
210
  var cssOptionalActionStyles = [optionalActionStyles.euiAccordion__optionalAction];
164
211
  var spinnerStyles = (0, _accordion.euiAccordionSpinnerStyles)(theme);
@@ -176,7 +223,7 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
176
223
  iconType: "arrowRight",
177
224
  onClick: this.onToggle,
178
225
  "aria-controls": id,
179
- "aria-expanded": isOpen,
226
+ "aria-expanded": this.isOpen,
180
227
  "aria-labelledby": buttonId,
181
228
  tabIndex: buttonElementIsFocusable ? -1 : 0,
182
229
  isDisabled: isDisabled
@@ -210,7 +257,7 @@ var EuiAccordionClass = /*#__PURE__*/function (_Component) {
210
257
  "aria-controls": id
211
258
  // `aria-expanded` is only a valid attribute on interactive controls - axe-core throws a violation otherwise
212
259
  ,
213
- "aria-expanded": ButtonElement === 'button' ? isOpen : undefined,
260
+ "aria-expanded": ButtonElement === 'button' ? this.isOpen : undefined,
214
261
  onClick: isDisabled ? undefined : this.onToggle,
215
262
  type: ButtonElement === 'button' ? 'button' : undefined,
216
263
  disabled: ButtonElement === 'button' ? isDisabled : undefined
@@ -3,10 +3,14 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- Object.defineProperty(exports, "EuiAutoSizer", {
7
- enumerable: true,
8
- get: function get() {
9
- return _auto_sizer.EuiAutoSizer;
10
- }
11
- });
12
- var _auto_sizer = require("./auto_sizer");
6
+ var _auto_sizer = require("./auto_sizer");
7
+ Object.keys(_auto_sizer).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _auto_sizer[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _auto_sizer[key];
14
+ }
15
+ });
16
+ });
@@ -24,6 +24,8 @@ var _predicate = require("../../services/predicate");
24
24
  var _objects = require("../../services/objects");
25
25
  var _flex = require("../flex");
26
26
  var _form = require("../form");
27
+ var _component_defaults = require("../provider/component_defaults");
28
+ var _table_pagination = require("../table/table_pagination");
27
29
  var _table = require("../table");
28
30
  var _collapsed_item_actions = require("./collapsed_item_actions");
29
31
  var _expanded_item_actions = require("./expanded_item_actions");
@@ -219,6 +221,12 @@ var EuiBasicTable = /*#__PURE__*/function (_Component) {
219
221
  value: function componentDidUpdate() {
220
222
  this.getInitialSelection();
221
223
  }
224
+ }, {
225
+ key: "pageSize",
226
+ get: function get() {
227
+ var _ref5, _this$props$paginatio, _this$props$paginatio2, _this$context$EuiTabl;
228
+ return (_ref5 = (_this$props$paginatio = (_this$props$paginatio2 = this.props.pagination) === null || _this$props$paginatio2 === void 0 ? void 0 : _this$props$paginatio2.pageSize) !== null && _this$props$paginatio !== void 0 ? _this$props$paginatio : (_this$context$EuiTabl = this.context.EuiTablePagination) === null || _this$context$EuiTabl === void 0 ? void 0 : _this$context$EuiTabl.itemsPerPage) !== null && _ref5 !== void 0 ? _ref5 : _table_pagination.euiTablePaginationDefaults.itemsPerPage;
229
+ }
222
230
  }, {
223
231
  key: "getInitialSelection",
224
232
  value: function getInitialSelection() {
@@ -243,7 +251,7 @@ var EuiBasicTable = /*#__PURE__*/function (_Component) {
243
251
  if (hasPagination(props)) {
244
252
  criteria.page = {
245
253
  index: props.pagination.pageIndex,
246
- size: props.pagination.pageSize
254
+ size: this.pageSize
247
255
  };
248
256
  }
249
257
  if (props.sorting) {
@@ -433,7 +441,7 @@ var EuiBasicTable = /*#__PURE__*/function (_Component) {
433
441
  var itemCount = items.length;
434
442
  var totalItemCount = pagination ? pagination.totalItemCount : itemCount;
435
443
  var page = pagination ? pagination.pageIndex + 1 : 1;
436
- var pageCount = pagination !== null && pagination !== void 0 && pagination.pageSize ? Math.ceil(pagination.totalItemCount / pagination.pageSize) : 1;
444
+ var pageCount = pagination ? Math.ceil(pagination.totalItemCount / this.pageSize) : 1;
437
445
  var captionElement;
438
446
  if (tableCaption) {
439
447
  if (pagination) {
@@ -501,16 +509,16 @@ var EuiBasicTable = /*#__PURE__*/function (_Component) {
501
509
  }, this.renderSelectAll(false)));
502
510
  }
503
511
  columns.forEach(function (column, index) {
504
- var _ref5 = column,
505
- field = _ref5.field,
506
- width = _ref5.width,
507
- name = _ref5.name,
508
- align = _ref5.align,
509
- dataType = _ref5.dataType,
510
- sortable = _ref5.sortable,
511
- mobileOptions = _ref5.mobileOptions,
512
- readOnly = _ref5.readOnly,
513
- description = _ref5.description;
512
+ var _ref6 = column,
513
+ field = _ref6.field,
514
+ width = _ref6.width,
515
+ name = _ref6.name,
516
+ align = _ref6.align,
517
+ dataType = _ref6.dataType,
518
+ sortable = _ref6.sortable,
519
+ mobileOptions = _ref6.mobileOptions,
520
+ readOnly = _ref6.readOnly,
521
+ description = _ref6.description;
514
522
  var columnAlign = align || _this3.getAlignForDataType(dataType);
515
523
 
516
524
  // actions column
@@ -555,8 +563,8 @@ var EuiBasicTable = /*#__PURE__*/function (_Component) {
555
563
  sortable: true
556
564
  });
557
565
  }
558
- var _ref6 = column,
559
- _sortable = _ref6.sortable;
566
+ var _ref7 = column,
567
+ _sortable = _ref7.sortable;
560
568
  if (_sortable) {
561
569
  var _sortDirection = _this3.resolveColumnSortDirection(column);
562
570
  sorting.isSorted = !!_sortDirection;
@@ -597,10 +605,10 @@ var EuiBasicTable = /*#__PURE__*/function (_Component) {
597
605
  items: items,
598
606
  pagination: pagination
599
607
  });
600
- var _ref7 = column,
601
- mobileOptions = _ref7.mobileOptions,
602
- field = _ref7.field,
603
- align = _ref7.align;
608
+ var _ref8 = column,
609
+ mobileOptions = _ref8.mobileOptions,
610
+ field = _ref8.field,
611
+ align = _ref8.align;
604
612
  if (mobileOptions !== null && mobileOptions !== void 0 && mobileOptions.only) {
605
613
  return; // exclude columns that only exist for mobile headers
606
614
  }
@@ -637,7 +645,7 @@ var EuiBasicTable = /*#__PURE__*/function (_Component) {
637
645
  } else {
638
646
  content = items.map(function (item, index) {
639
647
  // if there's pagination the item's index must be adjusted to the where it is in the whole dataset
640
- var tableItemIndex = hasPagination(_this4.props) && _this4.props.pagination.pageSize > 0 ? _this4.props.pagination.pageIndex * _this4.props.pagination.pageSize + index : index;
648
+ var tableItemIndex = hasPagination(_this4.props) && _this4.pageSize > 0 ? _this4.props.pagination.pageIndex * _this4.pageSize + index : index;
641
649
  return _this4.renderItemRow(item, tableItemIndex);
642
650
  });
643
651
  }
@@ -862,19 +870,19 @@ var EuiBasicTable = /*#__PURE__*/function (_Component) {
862
870
  }, {
863
871
  key: "renderItemCell",
864
872
  value: function renderItemCell(item, column, key, content, setScopeRow) {
865
- var _ref8 = column,
866
- align = _ref8.align,
867
- render = _ref8.render,
868
- dataType = _ref8.dataType,
869
- isExpander = _ref8.isExpander,
870
- textOnly = _ref8.textOnly,
871
- name = _ref8.name,
872
- field = _ref8.field,
873
- description = _ref8.description,
874
- sortable = _ref8.sortable,
875
- footer = _ref8.footer,
876
- mobileOptions = _ref8.mobileOptions,
877
- rest = (0, _objectWithoutProperties2.default)(_ref8, _excluded2);
873
+ var _ref9 = column,
874
+ align = _ref9.align,
875
+ render = _ref9.render,
876
+ dataType = _ref9.dataType,
877
+ isExpander = _ref9.isExpander,
878
+ textOnly = _ref9.textOnly,
879
+ name = _ref9.name,
880
+ field = _ref9.field,
881
+ description = _ref9.description,
882
+ sortable = _ref9.sortable,
883
+ footer = _ref9.footer,
884
+ mobileOptions = _ref9.mobileOptions,
885
+ rest = (0, _objectWithoutProperties2.default)(_ref9, _excluded2);
878
886
  var columnAlign = align || this.getAlignForDataType(dataType);
879
887
  var cellPropsCallback = this.props.cellProps;
880
888
  var cellProps = getCellProps(item, column, cellPropsCallback);
@@ -969,6 +977,7 @@ var EuiBasicTable = /*#__PURE__*/function (_Component) {
969
977
  return EuiBasicTable;
970
978
  }(_react.Component);
971
979
  exports.EuiBasicTable = EuiBasicTable;
980
+ (0, _defineProperty2.default)(EuiBasicTable, "contextType", _component_defaults.EuiComponentDefaultsContext);
972
981
  (0, _defineProperty2.default)(EuiBasicTable, "defaultProps", {
973
982
  responsive: true,
974
983
  tableLayout: 'fixed',