@elastic/eui 102.0.0 → 102.1.0-snapshot.1746441787383

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 (258) hide show
  1. package/dist/eui_theme_borealis_dark.json +1 -1
  2. package/es/components/accessibility/skip_link/skip_link.js +7 -0
  3. package/es/components/badge/color_utils.js +1 -3
  4. package/es/components/badge/notification_badge/badge_notification.styles.js +6 -1
  5. package/es/components/breadcrumbs/_breadcrumb_content.styles.js +6 -3
  6. package/es/components/button/button.js +7 -0
  7. package/es/components/button/button_display/_button_display.js +1 -1
  8. package/es/components/button/button_display/_button_display.styles.js +11 -2
  9. package/es/components/button/button_display/_button_display_content.styles.js +6 -3
  10. package/es/components/button/button_empty/button_empty.js +7 -0
  11. package/es/components/button/button_empty/button_empty.styles.js +9 -12
  12. package/es/components/button/button_group/button_group.js +5 -0
  13. package/es/components/button/button_group/button_group.styles.js +5 -3
  14. package/es/components/button/button_group/button_group_button.js +19 -9
  15. package/es/components/button/button_group/button_group_button.styles.js +43 -19
  16. package/es/components/button/button_icon/button_icon.js +11 -2
  17. package/es/components/card/card.js +7 -0
  18. package/es/components/card/card_select/card_select.js +7 -0
  19. package/es/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +7 -0
  20. package/es/components/color_picker/color_picker.js +13 -8
  21. package/es/components/color_picker/hue.js +27 -6
  22. package/es/components/color_picker/hue.styles.js +3 -2
  23. package/es/components/color_picker/saturation.js +16 -11
  24. package/es/components/color_picker/saturation.styles.js +2 -1
  25. package/es/components/datagrid/body/cell/data_grid_cell.js +7 -0
  26. package/es/components/datagrid/body/cell/data_grid_cell_actions.js +2 -2
  27. package/es/components/datagrid/body/cell/data_grid_cell_actions.styles.js +1 -1
  28. package/es/components/datagrid/body/data_grid_body.js +7 -0
  29. package/es/components/datagrid/body/data_grid_body_custom.js +7 -0
  30. package/es/components/datagrid/body/data_grid_body_virtualized.js +7 -0
  31. package/es/components/datagrid/body/header/data_grid_header_cell.js +7 -0
  32. package/es/components/datagrid/controls/column_sorting.js +7 -0
  33. package/es/components/datagrid/controls/data_grid_toolbar_control.js +18 -1
  34. package/es/components/datagrid/utils/in_memory.js +7 -0
  35. package/es/components/date_picker/auto_refresh/auto_refresh.js +7 -0
  36. package/es/components/filter_group/filter_button.js +98 -24
  37. package/es/components/filter_group/filter_button.styles.js +51 -15
  38. package/es/components/filter_group/filter_group.styles.js +18 -6
  39. package/es/components/header/header_links/header_link.js +7 -0
  40. package/es/components/header/header_section/header_section_item_button.js +7 -0
  41. package/es/components/list_group/list_group.js +7 -0
  42. package/es/components/list_group/list_group_item.js +7 -0
  43. package/es/components/list_group/list_group_item_extra_action.js +7 -0
  44. package/es/components/list_group/pinnable_list_group/pinnable_list_group.js +7 -0
  45. package/es/components/pagination/pagination_button.js +7 -0
  46. package/es/components/search_bar/filters/field_value_selection_filter.js +1 -0
  47. package/es/components/search_bar/filters/field_value_toggle_filter.js +3 -1
  48. package/es/components/search_bar/filters/field_value_toggle_group_filter.js +3 -1
  49. package/es/components/search_bar/filters/is_filter.js +3 -1
  50. package/es/components/search_bar/search_bar.a11y.js +3 -3
  51. package/es/components/table/table_header_cell.js +30 -12
  52. package/es/components/tool_tip/tool_tip.js +4 -1
  53. package/es/global_styling/mixins/_button.js +108 -31
  54. package/es/global_styling/mixins/_color.js +9 -2
  55. package/es/services/theme/index.js +2 -1
  56. package/es/services/theme/provider.js +28 -2
  57. package/es/services/theme/theme_variant.js +22 -0
  58. package/es/test/index.d.ts +2 -1
  59. package/es/themes/amsterdam/global_styling/variables/_buttons.js +348 -147
  60. package/es/themes/amsterdam/global_styling/variables/_components.js +229 -224
  61. package/es/themes/amsterdam/theme.js +2 -1
  62. package/eui.d.ts +919 -701
  63. package/lib/components/accessibility/skip_link/skip_link.js +7 -0
  64. package/lib/components/badge/color_utils.js +1 -3
  65. package/lib/components/badge/notification_badge/badge_notification.styles.js +6 -1
  66. package/lib/components/breadcrumbs/_breadcrumb_content.styles.js +5 -2
  67. package/lib/components/button/button.js +7 -0
  68. package/lib/components/button/button_display/_button_display.js +1 -1
  69. package/lib/components/button/button_display/_button_display.styles.js +11 -2
  70. package/lib/components/button/button_display/_button_display_content.styles.js +6 -3
  71. package/lib/components/button/button_empty/button_empty.js +7 -0
  72. package/lib/components/button/button_empty/button_empty.styles.js +10 -11
  73. package/lib/components/button/button_group/button_group.js +5 -0
  74. package/lib/components/button/button_group/button_group.styles.js +5 -3
  75. package/lib/components/button/button_group/button_group_button.js +18 -8
  76. package/lib/components/button/button_group/button_group_button.styles.js +41 -17
  77. package/lib/components/button/button_icon/button_icon.js +10 -1
  78. package/lib/components/card/card.js +7 -0
  79. package/lib/components/card/card_select/card_select.js +7 -0
  80. package/lib/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +7 -0
  81. package/lib/components/color_picker/color_picker.js +13 -8
  82. package/lib/components/color_picker/hue.js +26 -5
  83. package/lib/components/color_picker/hue.styles.js +3 -2
  84. package/lib/components/color_picker/saturation.js +16 -11
  85. package/lib/components/color_picker/saturation.styles.js +2 -1
  86. package/lib/components/datagrid/body/cell/data_grid_cell.js +7 -0
  87. package/lib/components/datagrid/body/cell/data_grid_cell_actions.js +2 -2
  88. package/lib/components/datagrid/body/cell/data_grid_cell_actions.styles.js +1 -1
  89. package/lib/components/datagrid/body/data_grid_body.js +7 -0
  90. package/lib/components/datagrid/body/data_grid_body_custom.js +7 -0
  91. package/lib/components/datagrid/body/data_grid_body_virtualized.js +7 -0
  92. package/lib/components/datagrid/body/header/data_grid_header_cell.js +7 -0
  93. package/lib/components/datagrid/controls/column_sorting.js +7 -0
  94. package/lib/components/datagrid/controls/data_grid_toolbar_control.js +18 -1
  95. package/lib/components/datagrid/utils/in_memory.js +7 -0
  96. package/lib/components/date_picker/auto_refresh/auto_refresh.js +7 -0
  97. package/lib/components/filter_group/filter_button.js +96 -22
  98. package/lib/components/filter_group/filter_button.styles.js +51 -15
  99. package/lib/components/filter_group/filter_group.styles.js +18 -6
  100. package/lib/components/header/header_links/header_link.js +7 -0
  101. package/lib/components/header/header_section/header_section_item_button.js +7 -0
  102. package/lib/components/list_group/list_group.js +7 -0
  103. package/lib/components/list_group/list_group_item.js +7 -0
  104. package/lib/components/list_group/list_group_item_extra_action.js +7 -0
  105. package/lib/components/list_group/pinnable_list_group/pinnable_list_group.js +7 -0
  106. package/lib/components/pagination/pagination_button.js +7 -0
  107. package/lib/components/search_bar/filters/field_value_selection_filter.js +1 -0
  108. package/lib/components/search_bar/filters/field_value_toggle_filter.js +3 -1
  109. package/lib/components/search_bar/filters/field_value_toggle_group_filter.js +3 -1
  110. package/lib/components/search_bar/filters/is_filter.js +3 -1
  111. package/lib/components/search_bar/search_bar.a11y.js +3 -3
  112. package/lib/components/table/table_header_cell.js +28 -10
  113. package/lib/components/tool_tip/tool_tip.js +4 -1
  114. package/lib/global_styling/mixins/_button.js +106 -30
  115. package/lib/global_styling/mixins/_color.js +11 -4
  116. package/lib/services/theme/index.js +41 -1
  117. package/lib/services/theme/provider.js +28 -2
  118. package/lib/services/theme/theme_variant.js +28 -0
  119. package/lib/test/index.d.ts +2 -1
  120. package/lib/themes/amsterdam/global_styling/variables/_buttons.js +348 -147
  121. package/lib/themes/amsterdam/global_styling/variables/_components.js +229 -224
  122. package/lib/themes/amsterdam/theme.js +2 -1
  123. package/optimize/es/components/badge/color_utils.js +1 -3
  124. package/optimize/es/components/badge/notification_badge/badge_notification.styles.js +6 -1
  125. package/optimize/es/components/breadcrumbs/_breadcrumb_content.styles.js +6 -3
  126. package/optimize/es/components/button/button_display/_button_display.js +1 -1
  127. package/optimize/es/components/button/button_display/_button_display.styles.js +11 -2
  128. package/optimize/es/components/button/button_display/_button_display_content.styles.js +6 -3
  129. package/optimize/es/components/button/button_empty/button_empty.styles.js +9 -12
  130. package/optimize/es/components/button/button_group/button_group.styles.js +5 -3
  131. package/optimize/es/components/button/button_group/button_group_button.js +12 -8
  132. package/optimize/es/components/button/button_group/button_group_button.styles.js +43 -19
  133. package/optimize/es/components/button/button_icon/button_icon.js +4 -2
  134. package/optimize/es/components/color_picker/color_picker.js +13 -8
  135. package/optimize/es/components/color_picker/hue.js +22 -6
  136. package/optimize/es/components/color_picker/hue.styles.js +3 -2
  137. package/optimize/es/components/color_picker/saturation.js +16 -11
  138. package/optimize/es/components/color_picker/saturation.styles.js +2 -1
  139. package/optimize/es/components/datagrid/body/cell/data_grid_cell_actions.js +2 -2
  140. package/optimize/es/components/datagrid/body/cell/data_grid_cell_actions.styles.js +1 -1
  141. package/optimize/es/components/datagrid/controls/data_grid_toolbar_control.js +11 -1
  142. package/optimize/es/components/filter_group/filter_button.js +78 -21
  143. package/optimize/es/components/filter_group/filter_button.styles.js +51 -15
  144. package/optimize/es/components/filter_group/filter_group.styles.js +18 -6
  145. package/optimize/es/components/search_bar/filters/field_value_selection_filter.js +1 -0
  146. package/optimize/es/components/search_bar/filters/field_value_toggle_filter.js +3 -1
  147. package/optimize/es/components/search_bar/filters/field_value_toggle_group_filter.js +3 -1
  148. package/optimize/es/components/search_bar/filters/is_filter.js +3 -1
  149. package/optimize/es/components/search_bar/search_bar.a11y.js +3 -3
  150. package/optimize/es/components/table/table_header_cell.js +26 -11
  151. package/optimize/es/components/tool_tip/tool_tip.js +4 -1
  152. package/optimize/es/global_styling/mixins/_button.js +103 -31
  153. package/optimize/es/global_styling/mixins/_color.js +4 -2
  154. package/optimize/es/services/theme/index.js +2 -1
  155. package/optimize/es/services/theme/provider.js +28 -2
  156. package/optimize/es/services/theme/theme_variant.js +22 -0
  157. package/optimize/es/test/index.d.ts +2 -1
  158. package/optimize/es/themes/amsterdam/global_styling/variables/_buttons.js +348 -147
  159. package/optimize/es/themes/amsterdam/global_styling/variables/_components.js +229 -224
  160. package/optimize/es/themes/amsterdam/theme.js +2 -1
  161. package/optimize/lib/components/badge/color_utils.js +1 -3
  162. package/optimize/lib/components/badge/notification_badge/badge_notification.styles.js +6 -1
  163. package/optimize/lib/components/breadcrumbs/_breadcrumb_content.styles.js +5 -2
  164. package/optimize/lib/components/button/button_display/_button_display.js +1 -1
  165. package/optimize/lib/components/button/button_display/_button_display.styles.js +11 -2
  166. package/optimize/lib/components/button/button_display/_button_display_content.styles.js +6 -3
  167. package/optimize/lib/components/button/button_empty/button_empty.styles.js +10 -11
  168. package/optimize/lib/components/button/button_group/button_group.styles.js +5 -3
  169. package/optimize/lib/components/button/button_group/button_group_button.js +11 -7
  170. package/optimize/lib/components/button/button_group/button_group_button.styles.js +41 -17
  171. package/optimize/lib/components/button/button_icon/button_icon.js +3 -1
  172. package/optimize/lib/components/color_picker/color_picker.js +13 -8
  173. package/optimize/lib/components/color_picker/hue.js +21 -5
  174. package/optimize/lib/components/color_picker/hue.styles.js +3 -2
  175. package/optimize/lib/components/color_picker/saturation.js +16 -11
  176. package/optimize/lib/components/color_picker/saturation.styles.js +2 -1
  177. package/optimize/lib/components/datagrid/body/cell/data_grid_cell_actions.js +2 -2
  178. package/optimize/lib/components/datagrid/body/cell/data_grid_cell_actions.styles.js +1 -1
  179. package/optimize/lib/components/datagrid/controls/data_grid_toolbar_control.js +11 -1
  180. package/optimize/lib/components/filter_group/filter_button.js +76 -19
  181. package/optimize/lib/components/filter_group/filter_button.styles.js +51 -15
  182. package/optimize/lib/components/filter_group/filter_group.styles.js +18 -6
  183. package/optimize/lib/components/search_bar/filters/field_value_selection_filter.js +1 -0
  184. package/optimize/lib/components/search_bar/filters/field_value_toggle_filter.js +3 -1
  185. package/optimize/lib/components/search_bar/filters/field_value_toggle_group_filter.js +3 -1
  186. package/optimize/lib/components/search_bar/filters/is_filter.js +3 -1
  187. package/optimize/lib/components/search_bar/search_bar.a11y.js +3 -3
  188. package/optimize/lib/components/table/table_header_cell.js +25 -11
  189. package/optimize/lib/components/tool_tip/tool_tip.js +4 -1
  190. package/optimize/lib/global_styling/mixins/_button.js +101 -30
  191. package/optimize/lib/global_styling/mixins/_color.js +4 -2
  192. package/optimize/lib/services/theme/index.js +41 -1
  193. package/optimize/lib/services/theme/provider.js +28 -2
  194. package/optimize/lib/services/theme/theme_variant.js +28 -0
  195. package/optimize/lib/test/index.d.ts +2 -1
  196. package/optimize/lib/themes/amsterdam/global_styling/variables/_buttons.js +348 -147
  197. package/optimize/lib/themes/amsterdam/global_styling/variables/_components.js +229 -224
  198. package/optimize/lib/themes/amsterdam/theme.js +2 -1
  199. package/package.json +7 -6
  200. package/test-env/components/accessibility/skip_link/skip_link.js +7 -0
  201. package/test-env/components/badge/color_utils.js +1 -3
  202. package/test-env/components/badge/notification_badge/badge_notification.styles.js +6 -1
  203. package/test-env/components/breadcrumbs/_breadcrumb_content.styles.js +5 -2
  204. package/test-env/components/button/button.js +7 -0
  205. package/test-env/components/button/button_display/_button_display.js +1 -1
  206. package/test-env/components/button/button_display/_button_display.styles.js +11 -2
  207. package/test-env/components/button/button_display/_button_display_content.styles.js +6 -3
  208. package/test-env/components/button/button_empty/button_empty.js +7 -0
  209. package/test-env/components/button/button_empty/button_empty.styles.js +10 -11
  210. package/test-env/components/button/button_group/button_group.js +5 -0
  211. package/test-env/components/button/button_group/button_group.styles.js +5 -3
  212. package/test-env/components/button/button_group/button_group_button.js +18 -8
  213. package/test-env/components/button/button_group/button_group_button.styles.js +41 -17
  214. package/test-env/components/button/button_icon/button_icon.js +10 -1
  215. package/test-env/components/card/card.js +7 -0
  216. package/test-env/components/card/card_select/card_select.js +7 -0
  217. package/test-env/components/collapsible_nav_beta/_kibana_solution/collapsible_nav_kibana_solution.js +7 -0
  218. package/test-env/components/color_picker/color_picker.js +13 -8
  219. package/test-env/components/color_picker/hue.js +21 -5
  220. package/test-env/components/color_picker/hue.styles.js +3 -2
  221. package/test-env/components/color_picker/saturation.js +16 -11
  222. package/test-env/components/color_picker/saturation.styles.js +2 -1
  223. package/test-env/components/datagrid/body/cell/data_grid_cell.js +7 -0
  224. package/test-env/components/datagrid/body/cell/data_grid_cell_actions.js +2 -2
  225. package/test-env/components/datagrid/body/cell/data_grid_cell_actions.styles.js +1 -1
  226. package/test-env/components/datagrid/body/data_grid_body.js +7 -0
  227. package/test-env/components/datagrid/body/data_grid_body_custom.js +7 -0
  228. package/test-env/components/datagrid/body/data_grid_body_virtualized.js +7 -0
  229. package/test-env/components/datagrid/body/header/data_grid_header_cell.js +7 -0
  230. package/test-env/components/datagrid/controls/column_sorting.js +7 -0
  231. package/test-env/components/datagrid/controls/data_grid_toolbar_control.js +18 -1
  232. package/test-env/components/datagrid/utils/in_memory.js +7 -0
  233. package/test-env/components/date_picker/auto_refresh/auto_refresh.js +7 -0
  234. package/test-env/components/filter_group/filter_button.js +96 -22
  235. package/test-env/components/filter_group/filter_button.styles.js +51 -15
  236. package/test-env/components/filter_group/filter_group.styles.js +18 -6
  237. package/test-env/components/header/header_links/header_link.js +7 -0
  238. package/test-env/components/header/header_section/header_section_item_button.js +7 -0
  239. package/test-env/components/list_group/list_group.js +7 -0
  240. package/test-env/components/list_group/list_group_item.js +7 -0
  241. package/test-env/components/list_group/list_group_item_extra_action.js +7 -0
  242. package/test-env/components/list_group/pinnable_list_group/pinnable_list_group.js +7 -0
  243. package/test-env/components/pagination/pagination_button.js +7 -0
  244. package/test-env/components/search_bar/filters/field_value_selection_filter.js +1 -0
  245. package/test-env/components/search_bar/filters/field_value_toggle_filter.js +3 -1
  246. package/test-env/components/search_bar/filters/field_value_toggle_group_filter.js +3 -1
  247. package/test-env/components/search_bar/filters/is_filter.js +3 -1
  248. package/test-env/components/search_bar/search_bar.a11y.js +3 -3
  249. package/test-env/components/table/table_header_cell.js +26 -12
  250. package/test-env/components/tool_tip/tool_tip.js +4 -1
  251. package/test-env/global_styling/mixins/_button.js +101 -30
  252. package/test-env/global_styling/mixins/_color.js +4 -2
  253. package/test-env/services/theme/index.js +41 -1
  254. package/test-env/services/theme/provider.js +28 -2
  255. package/test-env/services/theme/theme_variant.js +28 -0
  256. package/test-env/themes/amsterdam/global_styling/variables/_buttons.js +348 -147
  257. package/test-env/themes/amsterdam/global_styling/variables/_components.js +229 -224
  258. package/test-env/themes/amsterdam/theme.js +2 -1
@@ -162,6 +162,13 @@ EuiPinnableListGroup.propTypes = {
162
162
  iconType: _propTypes.default.oneOfType([_propTypes.default.oneOf(["accessibility", "addDataApp", "advancedSettingsApp", "agentApp", "aggregate", "analyzeEvent", "annotation", "anomalyChart", "anomalySwimLane", "apmApp", "apmTrace", "appSearchApp", "apps", "arrowDown", "arrowLeft", "arrowRight", "arrowUp", "arrowStart", "arrowEnd", "article", "asterisk", "at", "auditbeatApp", "beaker", "bell", "bellSlash", "beta", "bolt", "boxesHorizontal", "boxesVertical", "branch", "branchUser", "broom", "brush", "bug", "bullseye", "calendar", "canvasApp", "casesApp", "changePointDetection", "check", "checkCircle", "checkInCircleFilled", "cheer", "classificationJob", "clickLeft", "clickRight", "clock", "clockCounter", "cloudDrizzle", "cloudStormy", "cloudSunny", "cluster", "code", "codeApp", "color", "comment", "compute", "console", "consoleApp", "container", "continuityAbove", "continuityAboveBelow", "continuityBelow", "continuityWithin", "contrast", "contrastHigh", "controls", "controlsHorizontal", "controlsVertical", "copy", "copyClipboard", "createAdvancedJob", "createGenericJob", "createGeoJob", "createMultiMetricJob", "createPopulationJob", "createSingleMetricJob", "cross", "crossClusterReplicationApp", "crossInCircle", "crosshairs", "currency", "cut", "dashboardApp", "dataVisualizer", "database", "desktop", "devToolsApp", "diff", "discoverApp", "discuss", "document", "documentEdit", "documentation", "documents", "dot", "dotInCircle", "doubleArrowLeft", "doubleArrowRight", "download", "editorAlignCenter", "editorAlignLeft", "editorAlignRight", "editorBold", "editorChecklist", "editorCodeBlock", "editorComment", "editorDistributeHorizontal", "editorDistributeVertical", "editorHeading", "editorItalic", "editorItemAlignBottom", "editorItemAlignCenter", "editorItemAlignLeft", "editorItemAlignMiddle", "editorItemAlignRight", "editorItemAlignTop", "editorLink", "editorOrderedList", "editorPositionBottomLeft", "editorPositionBottomRight", "editorPositionTopLeft", "editorPositionTopRight", "editorRedo", "editorStrike", "editorTable", "editorUnderline", "editorUndo", "editorUnorderedList", "email", "empty", "emsApp", "endpoint", "eql", "eraser", "error", "errorFilled", "esqlVis", "exit", "expand", "expandMini", "export", "exportAction", "eye", "eyeClosed", "faceHappy", "faceNeutral", "faceSad", "fieldStatistics", "filebeatApp", "filter", "filterExclude", "filterIgnore", "filterInclude", "filterInCircle", "flask", "flag", "fleetApp", "fold", "folderCheck", "folderClosed", "folderExclamation", "folderOpen", "frameNext", "framePrevious", "fullScreen", "fullScreenExit", "function", "gear", "gisApp", "glasses", "globe", "grab", "grabHorizontal", "grabOmnidirectional", "gradient", "graphApp", "grid", "grokApp", "heart", "heartbeatApp", "heatmap", "help", "home", "iInCircle", "image", "importAction", "index", "indexClose", "indexEdit", "indexFlush", "indexManagementApp", "indexMapping", "indexOpen", "indexPatternApp", "indexRollupApp", "indexRuntime", "indexSettings", "indexTemporary", "infinity", "inputOutput", "inspect", "invert", "ip", "key", "keyboard", "kqlField", "kqlFunction", "kqlOperand", "kqlSelector", "kqlValue", "kubernetesNode", "kubernetesPod", "launch", "layers", "lensApp", "lettering", "lineDashed", "lineDotted", "lineSolid", "link", "list", "listAdd", "lock", "lockOpen", "logPatternAnalysis", "logRateAnalysis", "logoAWS", "logoAWSMono", "logoAerospike", "logoApache", "logoAppSearch", "logoAzure", "logoAzureMono", "logoBeats", "logoBusinessAnalytics", "logoCeph", "logoCloud", "logoCloudEnterprise", "logoCode", "logoCodesandbox", "logoCouchbase", "logoDocker", "logoDropwizard", "logoElastic", "logoElasticStack", "logoElasticsearch", "logoEnterpriseSearch", "logoEtcd", "logoGCP", "logoGCPMono", "logoGithub", "logoGmail", "logoGolang", "logoGoogleG", "logoHAproxy", "logoIBM", "logoIBMMono", "logoKafka", "logoKibana", "logoKubernetes", "logoLogging", "logoLogstash", "logoMaps", "logoMemcached", "logoMetrics", "logoMongodb", "logoMySQL", "logoNginx", "logoObservability", "logoOsquery", "logoPhp", "logoPostgres", "logoPrometheus", "logoRabbitmq", "logoRedis", "logoSecurity", "logoSiteSearch", "logoSketch", "logoSlack", "logoUptime", "logoVulnerabilityManagement", "logoWebhook", "logoWindows", "logoWorkplaceSearch", "logsApp", "logstashFilter", "logstashIf", "logstashInput", "logstashOutput", "logstashQueue", "machineLearningApp", "magnet", "magnifyWithExclamation", "magnifyWithMinus", "magnifyWithPlus", "managementApp", "mapMarker", "memory", "menu", "menuDown", "menuLeft", "menuRight", "menuUp", "merge", "metricbeatApp", "metricsApp", "minimize", "minus", "minusInCircle", "minusInCircleFilled", "minusInSquare", "mobile", "monitoringApp", "moon", "move", "namespace", "nested", "newChat", "node", "notebookApp", "number", "offline", "online", "outlierDetectionJob", "package", "packetbeatApp", "pageSelect", "pagesSelect", "palette", "paperClip", "partial", "pause", "payment", "pencil", "percent", "pin", "pinFilled", "pipeBreaks", "pipelineApp", "pipeNoBreaks", "pivot", "play", "playFilled", "plugs", "plus", "plusInCircle", "plusInCircleFilled", "plusInSquare", "popout", "push", "questionInCircle", "quote", "readOnly", "recentlyViewedApp", "refresh", "regressionJob", "reporter", "reportingApp", "returnKey", "save", "savedObjectsApp", "scale", "search", "searchProfilerApp", "section", "securityAnalyticsApp", "securityApp", "securitySignal", "securitySignalDetected", "securitySignalResolved", "sessionViewer", "shard", "share", "singleMetricViewer", "snowflake", "sortAscending", "sortDescending", "sortDown", "sortLeft", "sortRight", "sortUp", "sortable", "spaces", "spacesApp", "sparkles", "sqlApp", "starEmpty", "starEmptySpace", "starFilled", "starFilledSpace", "starMinusEmpty", "starMinusFilled", "starPlusEmpty", "starPlusFilled", "stats", "stop", "stopFilled", "stopSlash", "storage", "string", "submodule", "sun", "swatchInput", "symlink", "tableDensityCompact", "tableDensityExpanded", "tableDensityNormal", "tableOfContents", "tag", "tear", "temperature", "timeline", "timelineWithArrow", "timelionApp", "timeRefresh", "timeslider", "training", "transitionLeftIn", "transitionLeftOut", "transitionTopIn", "transitionTopOut", "trash", "unfold", "unlink", "upgradeAssistantApp", "uptimeApp", "user", "userAvatar", "users", "usersRolesApp", "vector", "videoPlayer", "visArea", "visAreaStacked", "visBarHorizontal", "visBarHorizontalStacked", "visBarVertical", "visBarVerticalStacked", "visGauge", "visGoal", "visLine", "visMapCoordinate", "visMapRegion", "visMetric", "visPie", "visTable", "visTagCloud", "visText", "visTimelion", "visVega", "visVisualBuilder", "visualizeApp", "vulnerabilityManagementApp", "warning", "warningFilled", "alert", "watchesApp", "web", "wordWrap", "wordWrapDisabled", "workplaceSearchApp", "wrench", "tokenAlias", "tokenAnnotation", "tokenArray", "tokenBinary", "tokenBoolean", "tokenClass", "tokenCompletionSuggester", "tokenConstant", "tokenDate", "tokenDimension", "tokenElement", "tokenEnum", "tokenEnumMember", "tokenEvent", "tokenException", "tokenField", "tokenFile", "tokenFlattened", "tokenFunction", "tokenGeo", "tokenHistogram", "tokenInterface", "tokenIP", "tokenJoin", "tokenKey", "tokenKeyword", "tokenMethod", "tokenMetricCounter", "tokenMetricGauge", "tokenModule", "tokenNamespace", "tokenNested", "tokenNull", "tokenNumber", "tokenObject", "tokenOperator", "tokenPackage", "tokenParameter", "tokenPercolator", "tokenProperty", "tokenRange", "tokenRankFeature", "tokenRankFeatures", "tokenRepo", "tokenSearchType", "tokenSemanticText", "tokenShape", "tokenString", "tokenStruct", "tokenSymbol", "tokenTag", "tokenText", "tokenTokenCount", "tokenVariable", "tokenVectorDense", "tokenDenseVector", "tokenVectorSparse"]).isRequired, _propTypes.default.string.isRequired, _propTypes.default.elementType.isRequired]).isRequired,
163
163
  /**
164
164
  * Any of the named color palette options.
165
+ *
166
+ * Do not use the following colors for standalone buttons directly,
167
+ * they exist to serve other components:
168
+ * - accent
169
+ * - warning
170
+ * - neutral
171
+ * - risk
165
172
  */
166
173
  color: _propTypes.default.any,
167
174
  "aria-label": _propTypes.default.string,
@@ -75,6 +75,13 @@ EuiPaginationButton.propTypes = {
75
75
  onClick: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.func]),
76
76
  /**
77
77
  * Any of the named color palette options.
78
+ *
79
+ * Do not use the following colors for standalone buttons directly,
80
+ * they exist to serve other components:
81
+ * - accent
82
+ * - warning
83
+ * - neutral
84
+ * - risk
78
85
  */
79
86
  color: _propTypes.default.any,
80
87
  size: _propTypes.default.any,
@@ -293,6 +293,7 @@ var FieldValueSelectionFilter = exports.FieldValueSelectionFilter = /*#__PURE__*
293
293
  return (0, _react2.jsx)(_filter_group.EuiFilterButton, {
294
294
  iconType: "arrowDown",
295
295
  iconSide: "right",
296
+ isSelected: active,
296
297
  hasActiveFilters: active,
297
298
  numActiveFilters: active ? activeItemsCount : undefined,
298
299
  grow: true,
@@ -80,8 +80,10 @@ var FieldValueToggleFilter = exports.FieldValueToggleFilter = /*#__PURE__*/funct
80
80
  };
81
81
  return (0, _react2.jsx)(_filter_group.EuiFilterButton, {
82
82
  onClick: onClick,
83
+ isSelected: hasActiveFilters,
83
84
  hasActiveFilters: hasActiveFilters,
84
- "aria-pressed": !!hasActiveFilters
85
+ "aria-pressed": !!hasActiveFilters,
86
+ isToggle: true
85
87
  }, name);
86
88
  }
87
89
  }]);
@@ -81,9 +81,11 @@ var FieldValueToggleGroupFilter = exports.FieldValueToggleGroupFilter = /*#__PUR
81
81
  return (0, _react2.jsx)(_filter_group.EuiFilterButton, {
82
82
  key: key,
83
83
  onClick: onClick,
84
+ isSelected: active,
84
85
  hasActiveFilters: active,
85
86
  "aria-pressed": !!active,
86
- withNext: !isLastItem
87
+ withNext: !isLastItem,
88
+ isToggle: true
87
89
  }, name);
88
90
  });
89
91
  }
@@ -76,8 +76,10 @@ var IsFilter = exports.IsFilter = /*#__PURE__*/function (_Component) {
76
76
  };
77
77
  return (0, _react2.jsx)(_filter_group.EuiFilterButton, {
78
78
  onClick: onClick,
79
+ isSelected: hasActiveFilters,
79
80
  hasActiveFilters: hasActiveFilters,
80
- "aria-pressed": !!hasActiveFilters
81
+ "aria-pressed": !!hasActiveFilters,
82
+ isToggle: true
81
83
  }, name);
82
84
  }
83
85
  }]);
@@ -194,7 +194,7 @@ describe('EuiSearchBar', function () {
194
194
  cy.checkAxe();
195
195
  });
196
196
  it('has zero violations after filtering on Open items', function () {
197
- cy.get('button.euiButtonEmpty').first().focus();
197
+ cy.get('button.euiFilterButton').first().focus();
198
198
  cy.realPress('Enter');
199
199
  cy.get('table.euiTable tbody').find('tr').should('have.length', 3);
200
200
  cy.checkAxe();
@@ -205,12 +205,12 @@ describe('EuiSearchBar', function () {
205
205
  cy.checkAxe();
206
206
  });
207
207
  it('has zero violations after filtering by Tags', function () {
208
- cy.get('button.euiButtonEmpty').last().focus();
208
+ cy.get('button.euiFilterButton').last().focus();
209
209
  cy.realPress('Enter');
210
210
  cy.realPress('ArrowDown');
211
211
  cy.realPress('Enter');
212
212
  cy.realPress('Escape');
213
- cy.get('button.euiButtonEmpty').last().should('have.focus');
213
+ cy.get('button.euiFilterButton').last().should('have.focus');
214
214
  cy.get('table.euiTable tbody').find('tr').should('have.length', 3);
215
215
  cy.checkAxe();
216
216
  cy.repeatRealPress(['Shift', 'Tab'], 3);
@@ -6,8 +6,9 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.EuiTableHeaderCell = void 0;
8
8
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
9
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
12
  var _react = _interopRequireDefault(require("react"));
12
13
  var _classnames = _interopRequireDefault(require("classnames"));
13
14
  var _services = require("../../services");
@@ -22,7 +23,8 @@ var _table_cell_content = require("./_table_cell_content");
22
23
  var _table_cells_shared = require("./table_cells_shared.styles");
23
24
  var _react2 = require("@emotion/react");
24
25
  var _excluded = ["children", "align", "onSort", "isSorted", "isSortAscending", "className", "scope", "mobileOptions", "width", "style", "readOnly", "tooltipProps", "description", "append"];
25
- /*
26
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
27
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } /*
26
28
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
27
29
  * or more contributor license agreements. Licensed under the Elastic License
28
30
  * 2.0 and the Server Side Public License, v 1; you may not use this file except
@@ -38,6 +40,21 @@ var CellContents = function CellContents(_ref) {
38
40
  canSort = _ref.canSort,
39
41
  isSorted = _ref.isSorted,
40
42
  isSortAscending = _ref.isSortAscending;
43
+ var tooltipIcon = tooltipProps ? canSort ? (0, _react2.jsx)(_icon.EuiIcon, (0, _extends2.default)({
44
+ className: "euiTableSortIcon",
45
+ type: tooltipProps.icon || 'questionInCircle',
46
+ size: "m",
47
+ color: "subdued"
48
+ }, tooltipProps.iconProps)) : (0, _react2.jsx)(_tool_tip.EuiIconTip, (0, _extends2.default)({
49
+ content: tooltipProps.content,
50
+ type: tooltipProps.icon || 'questionInCircle',
51
+ size: "m",
52
+ color: "subdued",
53
+ position: "top",
54
+ iconProps: _objectSpread({
55
+ role: 'button'
56
+ }, tooltipProps.iconProps)
57
+ }, tooltipProps.tooltipProps)) : null;
41
58
  return (0, _react2.jsx)(_table_cell_content.EuiTableCellContent, {
42
59
  className: className,
43
60
  align: align,
@@ -58,14 +75,7 @@ var CellContents = function CellContents(_ref) {
58
75
  className: "eui-textTruncate"
59
76
  }, children);
60
77
  });
61
- }), description && (0, _react2.jsx)(_accessibility.EuiScreenReaderOnly, null, (0, _react2.jsx)("span", null, description)), tooltipProps && (0, _react2.jsx)(_tool_tip.EuiIconTip, (0, _extends2.default)({
62
- content: tooltipProps.content,
63
- type: tooltipProps.icon || 'questionInCircle',
64
- size: "m",
65
- color: "subdued",
66
- position: "top",
67
- iconProps: tooltipProps.iconProps
68
- }, tooltipProps.tooltipProps)), isSorted ? (0, _react2.jsx)(_icon.EuiIcon, {
78
+ }), description && (0, _react2.jsx)(_accessibility.EuiScreenReaderOnly, null, (0, _react2.jsx)("span", null, description)), tooltipIcon, isSorted ? (0, _react2.jsx)(_icon.EuiIcon, {
69
79
  className: "euiTableSortIcon",
70
80
  type: isSortAscending ? 'sortUp' : 'sortDown',
71
81
  size: "m"
@@ -127,7 +137,11 @@ var EuiTableHeaderCell = exports.EuiTableHeaderCell = function EuiTableHeaderCel
127
137
  role: "columnheader",
128
138
  "aria-sort": ariaSortValue,
129
139
  style: inlineStyles
130
- }, rest), canSort ? (0, _react2.jsx)("button", {
140
+ }, rest), canSort ? (0, _react2.jsx)(_tool_tip.EuiToolTip, (0, _extends2.default)({
141
+ content: tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.content
142
+ }, tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.tooltipProps, {
143
+ display: "block"
144
+ }), (0, _react2.jsx)("button", {
131
145
  type: "button",
132
146
  css: styles.euiTableHeaderCell__button,
133
147
  className: (0, _classnames.default)('euiTableHeaderButton', {
@@ -135,7 +149,7 @@ var EuiTableHeaderCell = exports.EuiTableHeaderCell = function EuiTableHeaderCel
135
149
  }),
136
150
  onClick: onSort,
137
151
  "data-test-subj": "tableHeaderSortButton"
138
- }, (0, _react2.jsx)(CellContents, cellContentsProps)) : (0, _react2.jsx)(CellContents, cellContentsProps), append);
152
+ }, (0, _react2.jsx)(CellContents, cellContentsProps))) : (0, _react2.jsx)(CellContents, cellContentsProps), append);
139
153
  };
140
154
  EuiTableHeaderCell.propTypes = {
141
155
  className: _propTypes.default.string,
@@ -180,7 +180,10 @@ var EuiToolTip = exports.EuiToolTip = /*#__PURE__*/function (_Component) {
180
180
  });
181
181
  (0, _defineProperty2.default)(_this, "onEscapeKey", function (event) {
182
182
  if (event.key === _services.keys.ESCAPE) {
183
- if (_this.state.visible) event.stopPropagation();
183
+ // when the tooltip is only visual, we don't want it to add an additional key stop
184
+ if (!_this.props.disableScreenReaderOutput) {
185
+ if (_this.state.visible) event.stopPropagation();
186
+ }
184
187
  _this.setState({
185
188
  hasFocus: false
186
189
  }); // Allows mousing over back into the tooltip to work correctly
@@ -4,12 +4,14 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.useEuiButtonFocusCSS = exports.useEuiButtonColorCSS = exports.euiButtonSizeMap = exports.euiButtonFillColor = exports.euiButtonEmptyColor = exports.euiButtonColor = exports.BUTTON_DISPLAYS = exports.BUTTON_COLORS = void 0;
7
+ exports.useEuiButtonFocusCSS = exports.useEuiButtonColorCSS = exports.highContrastHoverIndicatorStyles = exports.euiButtonSizeMap = exports.euiButtonFillColor = exports.euiButtonEmptyColor = exports.euiButtonColor = exports.SEVERITY_COLORS = exports.EXTENDED_BUTTON_COLORS = exports.BUTTON_DISPLAYS = exports.BUTTON_COLORS = void 0;
8
8
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
9
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
11
  var _react = require("@emotion/react");
11
12
  var _euiThemeCommon = require("@elastic/eui-theme-common");
12
13
  var _services = require("../../services");
14
+ var _functions = require("../functions");
13
15
  var _templateObject;
14
16
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
15
17
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } /*
@@ -19,8 +21,30 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
19
21
  * in compliance with, at your election, the Elastic License 2.0 or the Server
20
22
  * Side Public License, v 1.
21
23
  */
22
- var BUTTON_COLORS = exports.BUTTON_COLORS = ['text', 'accent', 'accentSecondary', 'primary', 'neutral', 'success', 'warning', 'risk', 'danger'];
24
+ /** Tentative usage; these exist only to be used as button directly when used within other components */
25
+ var SEVERITY_COLORS = exports.SEVERITY_COLORS = ['neutral', 'risk'];
26
+ var BUTTON_COLORS = exports.BUTTON_COLORS = ['text', 'accent', 'accentSecondary', 'primary', 'success', 'warning', 'danger'];
27
+ var EXTENDED_BUTTON_COLORS = exports.EXTENDED_BUTTON_COLORS = [].concat(BUTTON_COLORS, SEVERITY_COLORS);
23
28
  var BUTTON_DISPLAYS = exports.BUTTON_DISPLAYS = ['base', 'fill', 'empty'];
29
+ var getButtonVariantTokenValues = function getButtonVariantTokenValues(_ref, color, variant) {
30
+ var euiTheme = _ref.euiTheme,
31
+ highContrastMode = _ref.highContrastMode;
32
+ var backgroundTokenBase = variant === 'base' ? 'background' : "background".concat(variant.charAt(0).toUpperCase() + variant.slice(1));
33
+ var textTokenBase = variant === 'filled' ? 'textColorFilled' : 'textColor';
34
+ var backgroundTokenName = (0, _euiThemeCommon.getTokenName)(backgroundTokenBase, color);
35
+ var textTokenName = (0, _euiThemeCommon.getTokenName)(textTokenBase, color);
36
+ var backgroundHoverTokenName = (0, _euiThemeCommon.getTokenName)(backgroundTokenBase, color, 'hover');
37
+ var backgroundActiveTokenName = (0, _euiThemeCommon.getTokenName)(backgroundTokenBase, color, 'active');
38
+ var highContrastForeground = ['warning', 'neutral', 'risk'].includes(color) ? euiTheme.colors.ink : color === 'disabled' ? euiTheme.components.buttons[textTokenName] : euiTheme.colors.textInverse;
39
+ var foreground = variant === 'filled' ? highContrastMode ? highContrastForeground : euiTheme.components.buttons[textTokenName] : euiTheme.components.buttons[textTokenName];
40
+ return {
41
+ color: foreground,
42
+ background: euiTheme.components.buttons[backgroundTokenName],
43
+ backgroundHover: euiTheme.components.buttons[backgroundHoverTokenName],
44
+ backgroundActive: euiTheme.components.buttons[backgroundActiveTokenName]
45
+ };
46
+ };
47
+
24
48
  /**
25
49
  * Creates the `base` version of button styles with proper text contrast.
26
50
  * @param euiThemeContext
@@ -28,11 +52,9 @@ var BUTTON_DISPLAYS = exports.BUTTON_DISPLAYS = ['base', 'fill', 'empty'];
28
52
  * @returns Style object `{ backgroundColor, color }`
29
53
  */
30
54
  var euiButtonColor = exports.euiButtonColor = function euiButtonColor(euiThemeContext, color) {
31
- var euiTheme = euiThemeContext.euiTheme;
32
- var backgroundTokenName = (0, _euiThemeCommon.getTokenName)('background', color);
33
- var textTokenName = (0, _euiThemeCommon.getTokenName)('textColor', color);
34
- var foreground = euiTheme.components.buttons[textTokenName];
35
- var background = euiTheme.components.buttons[backgroundTokenName];
55
+ var buttonColors = getButtonVariantTokenValues(euiThemeContext, color, 'base');
56
+ var foreground = buttonColors.color;
57
+ var background = buttonColors.background;
36
58
  return _objectSpread({
37
59
  color: background === 'transparent' || color === 'disabled' ? foreground : (0, _services.makeHighContrastColor)(foreground)(background),
38
60
  backgroundColor: background
@@ -46,13 +68,9 @@ var euiButtonColor = exports.euiButtonColor = function euiButtonColor(euiThemeCo
46
68
  * @returns Style object `{ backgroundColor, color }`
47
69
  */
48
70
  var euiButtonFillColor = exports.euiButtonFillColor = function euiButtonFillColor(euiThemeContext, color) {
49
- var euiTheme = euiThemeContext.euiTheme,
50
- highContrastMode = euiThemeContext.highContrastMode;
51
- var backgroundTokenName = (0, _euiThemeCommon.getTokenName)('backgroundFilled', color);
52
- var textColorTokenName = (0, _euiThemeCommon.getTokenName)('textColorFilled', color);
53
- var highContrastForeground = ['warning', 'neutral', 'risk'].includes(color) ? euiTheme.colors.ink : color === 'disabled' ? euiTheme.components.buttons[textColorTokenName] : euiTheme.colors.textInverse;
54
- var foreground = highContrastMode ? highContrastForeground : euiTheme.components.buttons[textColorTokenName];
55
- var background = euiTheme.components.buttons[backgroundTokenName];
71
+ var buttonColors = getButtonVariantTokenValues(euiThemeContext, color, 'filled');
72
+ var foreground = buttonColors.color;
73
+ var background = buttonColors.background;
56
74
  return _objectSpread({
57
75
  color: foreground,
58
76
  backgroundColor: background
@@ -76,9 +94,9 @@ var euiButtonEmptyColor = exports.euiButtonEmptyColor = function euiButtonEmptyC
76
94
  break;
77
95
  default:
78
96
  {
79
- var backgroundToken = (0, _euiThemeCommon.getTokenName)('backgroundEmpty', color, 'hover');
97
+ var buttonColors = getButtonVariantTokenValues(euiThemeContext, color, 'empty');
80
98
  foreground = euiButtonColor(euiThemeContext, color).color;
81
- background = euiThemeContext.euiTheme.components.buttons[backgroundToken];
99
+ background = buttonColors.backgroundHover;
82
100
  break;
83
101
  }
84
102
  }
@@ -91,7 +109,7 @@ var euiButtonEmptyColor = exports.euiButtonEmptyColor = function euiButtonEmptyC
91
109
  /**
92
110
  * Given the button display type, returns the Emotion based color keys.
93
111
  * @param options Button display type
94
- * @returns An object of `_EuiButtonColor` keys including `disabled`
112
+ * @returns An object of `_EuiExtendedButtonColor` keys including `disabled`
95
113
  */
96
114
  var useEuiButtonColorCSS = exports.useEuiButtonColorCSS = function useEuiButtonColorCSS() {
97
115
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
@@ -101,21 +119,37 @@ var useEuiButtonColorCSS = exports.useEuiButtonColorCSS = function useEuiButtonC
101
119
  return colorsDisplaysMap[display];
102
120
  };
103
121
  var euiButtonDisplaysColors = function euiButtonDisplaysColors(euiThemeContext) {
104
- var COLORS = [].concat(BUTTON_COLORS, ['disabled']);
122
+ var euiTheme = euiThemeContext.euiTheme;
123
+ var isRefreshVariant = (0, _services.isEuiThemeRefreshVariant)(euiThemeContext, 'buttonVariant');
124
+ var COLORS = [].concat((0, _toConsumableArray2.default)(EXTENDED_BUTTON_COLORS), ['disabled']);
105
125
  var displaysColorsMap = {};
106
126
  BUTTON_DISPLAYS.forEach(function (display) {
107
127
  displaysColorsMap[display] = {};
108
128
  COLORS.forEach(function (color) {
109
129
  switch (display) {
110
130
  case 'base':
111
- displaysColorsMap[display][color] = /*#__PURE__*/(0, _react.css)(euiButtonColor(euiThemeContext, color), ";;label:displaysColorsMap-display-color;");
112
- break;
131
+ {
132
+ var buttonColors = getButtonVariantTokenValues(euiThemeContext, color, 'base');
133
+ var borderStyle = color === 'text' && "\n border: ".concat(euiTheme.border.width.thin, " solid ").concat(euiTheme.colors.borderBasePlain, ";\n ");
134
+ var refreshVariantStyles = isRefreshVariant && "\n ".concat(_interactionStyles(euiThemeContext, buttonColors, 'overlay'), "\n ").concat(borderStyle, "\n ");
135
+ displaysColorsMap[display][color] = /*#__PURE__*/(0, _react.css)(euiButtonColor(euiThemeContext, color), " ", refreshVariantStyles, ";;label:displaysColorsMap-display-color;");
136
+ break;
137
+ }
113
138
  case 'fill':
114
- displaysColorsMap[display][color] = /*#__PURE__*/(0, _react.css)(euiButtonFillColor(euiThemeContext, color), "outline-color:", euiThemeContext.colorMode === 'DARK' && color === 'text' ? 'currentColor' : euiThemeContext.euiTheme.colors.fullShade, ";;label:displaysColorsMap-display-color;");
115
- break;
139
+ {
140
+ var _buttonColors = getButtonVariantTokenValues(euiThemeContext, color, 'filled');
141
+ var _refreshVariantStyles = isRefreshVariant && _interactionStyles(euiThemeContext, _buttonColors);
142
+ displaysColorsMap[display][color] = /*#__PURE__*/(0, _react.css)(euiButtonFillColor(euiThemeContext, color), "outline-color:", euiThemeContext.colorMode === 'DARK' && color === 'text' ? 'currentColor' : euiThemeContext.euiTheme.colors.fullShade, ";", _refreshVariantStyles, ";;label:displaysColorsMap-display-color;");
143
+ break;
144
+ }
116
145
  case 'empty':
117
- displaysColorsMap[display][color] = /*#__PURE__*/(0, _react.css)("color:", euiButtonEmptyColor(euiThemeContext, color).color, ";&:focus,&:active{background-color:", euiButtonEmptyColor(euiThemeContext, color).backgroundColor, ";};label:displaysColorsMap-display-color;");
118
- break;
146
+ {
147
+ var _buttonColors2 = getButtonVariantTokenValues(euiThemeContext, color, 'empty');
148
+ var classicVariantStyles = !isRefreshVariant && "\n &:focus,\n &:active {\n background-color: ".concat(euiButtonEmptyColor(euiThemeContext, color).backgroundColor, ";\n }\n ");
149
+ var _refreshVariantStyles2 = isRefreshVariant && _interactionStyles(euiThemeContext, _buttonColors2, 'overlay');
150
+ displaysColorsMap[display][color] = /*#__PURE__*/(0, _react.css)("color:", euiButtonEmptyColor(euiThemeContext, color).color, ";", classicVariantStyles, " ", _refreshVariantStyles2, ";;label:displaysColorsMap-display-color;");
151
+ break;
152
+ }
119
153
  }
120
154
 
121
155
  // Tweak auto-generated Emotion label/className output
@@ -134,9 +168,10 @@ var useEuiButtonFocusCSS = exports.useEuiButtonFocusCSS = function useEuiButtonF
134
168
  return (0, _services.useEuiMemoizedStyles)(euiButtonFocusCSS);
135
169
  };
136
170
  var euiButtonFocusAnimation = (0, _react.keyframes)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n 50% {\n transform: translateY(1px);\n }\n"])));
137
- var euiButtonFocusCSS = function euiButtonFocusCSS(_ref) {
138
- var euiTheme = _ref.euiTheme;
139
- var focusCSS = /*#__PURE__*/(0, _react.css)(_euiThemeCommon.euiCanAnimate, "{transition:transform ", euiTheme.animation.normal, " ease-in-out,background-color ", euiTheme.animation.normal, " ease-in-out;&:hover:not(:disabled){transform:translateY(-1px);}&:focus{animation:", euiButtonFocusAnimation, " ", euiTheme.animation.normal, " ", euiTheme.animation.bounce, ";}&:active:not(:disabled){transform:translateY(1px);}};label:focusCSS;");
171
+ var euiButtonFocusCSS = function euiButtonFocusCSS(euiThemeContext) {
172
+ var euiTheme = euiThemeContext.euiTheme;
173
+ var isRefreshVariant = (0, _services.isEuiThemeRefreshVariant)(euiThemeContext, 'buttonVariant');
174
+ var focusCSS = isRefreshVariant ? /*#__PURE__*/(0, _react.css)(";label:focusCSS;") : /*#__PURE__*/(0, _react.css)(_euiThemeCommon.euiCanAnimate, "{transition:transform ", euiTheme.animation.normal, " ease-in-out,background-color ", euiTheme.animation.normal, " ease-in-out;&:hover:not(:disabled){transform:translateY(-1px);}&:focus{animation:", euiButtonFocusAnimation, " ", euiTheme.animation.normal, " ", euiTheme.animation.bounce, ";}&:active:not(:disabled){transform:translateY(1px);}};label:focusCSS;");
140
175
  // Remove the auto-generated label.
141
176
  // We could typically avoid a label by using a plain string `` instead of css``,
142
177
  // but we need css`` for keyframes`` to work for the focus animation
@@ -148,27 +183,63 @@ var euiButtonFocusCSS = function euiButtonFocusCSS(_ref) {
148
183
  * Map of `size` props to various sizings/scales
149
184
  * that should remain consistent across all buttons
150
185
  */
151
- var euiButtonSizeMap = exports.euiButtonSizeMap = function euiButtonSizeMap(_ref2) {
152
- var euiTheme = _ref2.euiTheme;
186
+ var euiButtonSizeMap = exports.euiButtonSizeMap = function euiButtonSizeMap(euiThemeContext) {
187
+ var euiTheme = euiThemeContext.euiTheme;
188
+ var isRefreshVariant = (0, _services.isEuiThemeRefreshVariant)(euiThemeContext, 'buttonVariant');
153
189
  return {
154
190
  xs: {
191
+ minWidth: euiTheme.base * (isRefreshVariant ? 6 : 7),
155
192
  height: euiTheme.size.l,
156
193
  radius: euiTheme.border.radius.small,
157
194
  fontScale: 'xs'
158
195
  },
159
196
  s: {
197
+ minWidth: euiTheme.base * (isRefreshVariant ? 6 : 7),
160
198
  height: euiTheme.size.xl,
161
199
  radius: euiTheme.border.radius.small,
162
200
  fontScale: 's'
163
201
  },
164
202
  m: {
203
+ minWidth: euiTheme.base * 7,
165
204
  height: euiTheme.size.xxl,
166
- radius: euiTheme.border.radius.medium,
205
+ radius: isRefreshVariant ? euiTheme.border.radius.small : euiTheme.border.radius.medium,
167
206
  fontScale: 's'
168
207
  }
169
208
  };
170
209
  };
171
210
 
211
+ /**
212
+ * internal styles util for applying button background color on hover
213
+ */
214
+ var _interactionStyles = function _interactionStyles(euiThemeContext, buttonColors) {
215
+ var type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'fill';
216
+ var isRefreshVariant = (0, _services.isEuiThemeRefreshVariant)(euiThemeContext, 'buttonVariant');
217
+ if (!isRefreshVariant) return "";
218
+ var baseStyles = function baseStyles() {
219
+ // button hover is applied as pseudo element with a transparent background-color
220
+ if (type === 'overlay') {
221
+ return "\n position: relative;\n overflow: hidden;\n\n &:hover:not(:disabled) {\n &::before {\n content: '';\n position: absolute;\n /* should stay under the content */\n z-index: 0;\n inset: 0;\n background-color: ".concat(buttonColors.backgroundHover, ";\n pointer-events: none;\n }\n }\n\n &:active:not(:disabled) {\n &::before {\n ").concat((0, _functions.logicalCSS)('width', '100%'), "\n ").concat((0, _functions.logicalCSS)('height', '100%'), "\n\n content: '';\n position: absolute;\n inset: 0;\n background-color: ").concat(buttonColors.backgroundActive, ";\n }\n }\n ");
222
+ }
223
+
224
+ // button hover is applied as opaque color
225
+ return "\n &:hover:not(:disabled) {\n background-color: ".concat(buttonColors.backgroundHover, ";\n }\n\n &:active:not(:disabled) {\n background-color: ").concat(buttonColors.backgroundActive, ";\n }\n ");
226
+ };
227
+ return " \n ".concat((0, _functions.highContrastModeStyles)(euiThemeContext, {
228
+ none: baseStyles(),
229
+ forced: "\n position: relative;\n overflow: hidden;\n\n ".concat(highContrastHoverIndicatorStyles(euiThemeContext), "\n ")
230
+ }), "\n ");
231
+ };
232
+
233
+ /**
234
+ * creates a bottom border on hover/focus to ensure a visible change as forced mode removed background colors
235
+ */
236
+ var highContrastHoverIndicatorStyles = exports.highContrastHoverIndicatorStyles = function highContrastHoverIndicatorStyles(_ref2) {
237
+ var euiTheme = _ref2.euiTheme;
238
+ return "\n &:hover:not(:disabled) {\n transition: none;\n\n /* using pseudo border to be able to control the color */\n &::after {\n content: '';\n position: absolute;\n inset: ".concat(euiTheme.border.width.thin, ";\n border: ").concat(euiTheme.border.width.thick, " solid var(--highContrastHoverIndicatorColor, ").concat(euiTheme.border.color, ");\n border-radius: ").concat((0, _euiThemeCommon.mathWithUnits)(euiTheme.border.radius.small, function (x) {
239
+ return x / 2;
240
+ }), ";\n background-color: transparent;\n pointer-events: none;\n }\n }\n");
241
+ };
242
+
172
243
  /**
173
244
  * Internal util for high contrast button borders
174
245
  */
@@ -6,9 +6,11 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.useEuiBorderColorCSS = exports.useEuiBackgroundColorCSS = exports.useEuiBackgroundColor = exports.euiBorderColor = exports.euiBackgroundColor = exports.BACKGROUND_COLORS = void 0;
8
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
10
  var _react = require("@emotion/react");
10
- var _services = require("../../services");
11
11
  var _euiThemeCommon = require("@elastic/eui-theme-common");
12
+ var _services = require("../../services");
13
+ var _button = require("./_button");
12
14
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
13
15
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } /*
14
16
  * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
@@ -17,7 +19,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
17
19
  * in compliance with, at your election, the Elastic License 2.0 or the Server
18
20
  * Side Public License, v 1.
19
21
  */
20
- var BACKGROUND_COLORS = exports.BACKGROUND_COLORS = ['transparent', 'plain', 'subdued', 'highlighted', 'accent', 'accentSecondary', 'primary', 'neutral', 'success', 'warning', 'risk', 'danger'];
22
+ var BACKGROUND_COLORS = exports.BACKGROUND_COLORS = ['transparent', 'plain', 'subdued', 'highlighted', 'accent', 'accentSecondary', 'primary', 'success', 'warning', 'danger'].concat((0, _toConsumableArray2.default)(_button.SEVERITY_COLORS));
21
23
  /**
22
24
  * @deprecated - use background tokens directly
23
25
  * @returns A single background color with optional alpha transparency
@@ -3,6 +3,34 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ var _exportNames = {
7
+ EuiSystemContext: true,
8
+ EuiThemeContext: true,
9
+ EuiNestedThemeContext: true,
10
+ EuiModificationsContext: true,
11
+ EuiColorModeContext: true,
12
+ EuiHighContrastModeContext: true,
13
+ useEuiTheme: true,
14
+ withEuiTheme: true,
15
+ RenderWithEuiTheme: true,
16
+ useEuiThemeCSSVariables: true,
17
+ EuiThemeProvider: true,
18
+ useEuiMemoizedStyles: true,
19
+ withEuiStylesMemoizer: true,
20
+ RenderWithEuiStylesMemoizer: true,
21
+ getEuiDevProviderWarning: true,
22
+ setEuiDevProviderWarning: true,
23
+ buildTheme: true,
24
+ computed: true,
25
+ isInverseColorMode: true,
26
+ getColorMode: true,
27
+ getComputed: true,
28
+ getOn: true,
29
+ mergeDeep: true,
30
+ setOn: true,
31
+ Computed: true,
32
+ COLOR_MODES_STANDARD: true
33
+ };
6
34
  Object.defineProperty(exports, "COLOR_MODES_STANDARD", {
7
35
  enumerable: true,
8
36
  get: function get() {
@@ -165,4 +193,16 @@ var _provider = require("./provider");
165
193
  var _style_memoization = require("./style_memoization");
166
194
  var _warning = require("./warning");
167
195
  var _utils = require("./utils");
168
- var _types = require("./types");
196
+ var _types = require("./types");
197
+ var _theme_variant = require("./theme_variant");
198
+ Object.keys(_theme_variant).forEach(function (key) {
199
+ if (key === "default" || key === "__esModule") return;
200
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
201
+ if (key in exports && exports[key] === _theme_variant[key]) return;
202
+ Object.defineProperty(exports, key, {
203
+ enumerable: true,
204
+ get: function get() {
205
+ return _theme_variant[key];
206
+ }
207
+ });
208
+ });
@@ -140,9 +140,35 @@ var EuiThemeProvider = exports.EuiThemeProvider = function EuiThemeProvider(_ref
140
140
  }, [highContrastMode]);
141
141
  (0, _react2.useEffect)(function () {
142
142
  if (!isParentTheme.current) {
143
- setTheme((0, _utils.getComputed)(system, (0, _utils.buildTheme)(modificationsWithHighContrast, "_".concat(system.key)), colorMode, highContrastMode));
143
+ /* Enables recomputation of component colors when flags are overridden on the provider
144
+ by adding the respective key to modifications to trigger a recomputation. */
145
+ // TODO: remove once visual refresh is completed and flags are obsolete
146
+ var flagsToRecompute = [{
147
+ flag: 'buttonVariant',
148
+ componentKey: 'buttons'
149
+ }];
150
+ var keys = {};
151
+ var forceRecomputeComponents = flagsToRecompute.some(function (item) {
152
+ var _modifications$flags, _modifications$compon;
153
+ if (Object.keys((_modifications$flags = modifications.flags) !== null && _modifications$flags !== void 0 ? _modifications$flags : {}).includes(item.flag) && !Object.keys((_modifications$compon = modifications.components) !== null && _modifications$compon !== void 0 ? _modifications$compon : {}).includes(item.componentKey)) {
154
+ keys[item.componentKey] = {
155
+ LIGHT: {},
156
+ DARK: {}
157
+ };
158
+ return true;
159
+ }
160
+ return false;
161
+ });
162
+ var componentModifications = forceRecomputeComponents ? {
163
+ components: keys
164
+ } : {};
165
+
166
+ // force recomputing of color & component tokens based on flag changes
167
+ var enhancedModifications = _objectSpread(_objectSpread({}, modificationsWithHighContrast), componentModifications);
168
+ var rebuiltTheme = (0, _utils.getComputed)(system, (0, _utils.buildTheme)(enhancedModifications, "_".concat(system.key)), colorMode, highContrastMode);
169
+ setTheme(rebuiltTheme);
144
170
  }
145
- }, [colorMode, highContrastMode, system, modificationsWithHighContrast]);
171
+ }, [colorMode, highContrastMode, system, modificationsWithHighContrast, modifications]);
146
172
  var _useState9 = (0, _react2.useState)(),
147
173
  _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
148
174
  themeCSSVariables = _useState10[0],
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useEuiThemeRefreshVariant = exports.isEuiThemeRefreshVariant = void 0;
7
+ var _hooks = require("./hooks");
8
+ /*
9
+ * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
10
+ * or more contributor license agreements. Licensed under the Elastic License
11
+ * 2.0 and the Server Side Public License, v 1; you may not use this file except
12
+ * in compliance with, at your election, the Elastic License 2.0 or the Server
13
+ * Side Public License, v 1.
14
+ */
15
+
16
+ var isEuiThemeRefreshVariant = exports.isEuiThemeRefreshVariant = function isEuiThemeRefreshVariant(_ref, flag) {
17
+ var euiTheme = _ref.euiTheme;
18
+ return euiTheme.flags[flag] === 'refresh';
19
+ };
20
+
21
+ /**
22
+ * Util to retrieve visual variant for UI elements
23
+ * Note: Temporary only - will be removed once the visual refresh is completed.
24
+ */
25
+ var useEuiThemeRefreshVariant = exports.useEuiThemeRefreshVariant = function useEuiThemeRefreshVariant(flag) {
26
+ var euiThemeContext = (0, _hooks.useEuiTheme)();
27
+ return isEuiThemeRefreshVariant(euiThemeContext, flag);
28
+ };