@splunk/dashboard-toolbar 29.5.2 → 29.6.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 (206) hide show
  1. package/IconButton.js +18 -56
  2. package/IconButton.js.map +1 -1
  3. package/ItemGroup.js +6 -24
  4. package/ItemGroup.js.map +1 -1
  5. package/Toolbar.js +6 -14
  6. package/Toolbar.js.map +1 -1
  7. package/buttons/Charts.js +14 -47
  8. package/buttons/Charts.js.map +1 -1
  9. package/buttons/Config.js +21 -59
  10. package/buttons/Config.js.map +1 -1
  11. package/buttons/ContentExport.js +18 -56
  12. package/buttons/ContentExport.js.map +1 -1
  13. package/buttons/Data.js +21 -59
  14. package/buttons/Data.js.map +1 -1
  15. package/buttons/EmptyVisualization.js +22 -80
  16. package/buttons/EmptyVisualization.js.map +1 -1
  17. package/buttons/Fullscreen.js +22 -80
  18. package/buttons/Fullscreen.js.map +1 -1
  19. package/buttons/GridLineSwitch.js +2 -3
  20. package/buttons/GridLineSwitch.js.map +1 -1
  21. package/buttons/HelpButton.js +11 -44
  22. package/buttons/HelpButton.js.map +1 -1
  23. package/buttons/IconGallery.js +15 -68
  24. package/buttons/IconGallery.js.map +1 -1
  25. package/buttons/Image.js +22 -80
  26. package/buttons/Image.js.map +1 -1
  27. package/buttons/ImageGallery.js +15 -68
  28. package/buttons/ImageGallery.js.map +1 -1
  29. package/buttons/Inputs.js +19 -49
  30. package/buttons/Inputs.js.map +1 -1
  31. package/buttons/Markdown.js +20 -58
  32. package/buttons/Markdown.js.map +1 -1
  33. package/buttons/ModeSwitch.js +1 -1
  34. package/buttons/ModeSwitch.js.map +1 -1
  35. package/buttons/Redo.js +21 -63
  36. package/buttons/Redo.js.map +1 -1
  37. package/buttons/Shapes.js +13 -46
  38. package/buttons/Shapes.js.map +1 -1
  39. package/buttons/Source.js +18 -56
  40. package/buttons/Source.js.map +1 -1
  41. package/buttons/Undo.js +21 -63
  42. package/buttons/Undo.js.map +1 -1
  43. package/buttons/index.js +87 -157
  44. package/buttons/index.js.map +1 -1
  45. package/groups/ControlGroup.js +34 -99
  46. package/groups/ControlGroup.js.map +1 -1
  47. package/groups/EditingGroup.js +30 -69
  48. package/groups/EditingGroup.js.map +1 -1
  49. package/groups/EditorGroup.js +30 -78
  50. package/groups/EditorGroup.js.map +1 -1
  51. package/groups/EditorsControlGroup.js +39 -87
  52. package/groups/EditorsControlGroup.js.map +1 -1
  53. package/groups/HistoryGroup.js +36 -89
  54. package/groups/HistoryGroup.js.map +1 -1
  55. package/groups/SidebarControlGroup.js +39 -84
  56. package/groups/SidebarControlGroup.js.map +1 -1
  57. package/groups/VisualizationGroup.js +56 -118
  58. package/groups/VisualizationGroup.js.map +1 -1
  59. package/groups/index.js +92 -170
  60. package/groups/index.js.map +1 -1
  61. package/index.js +106 -194
  62. package/index.js.map +1 -1
  63. package/module/CollapsibleToolbar.js +11 -11
  64. package/module/IconButton.js +6 -6
  65. package/module/Item.js +3 -3
  66. package/module/ItemGroup.js +7 -7
  67. package/module/PopoverItemButton.js +4 -4
  68. package/module/Toolbar.js +6 -6
  69. package/module/buttons/Charts.js +15 -15
  70. package/module/buttons/Config.js +9 -9
  71. package/module/buttons/ContentExport.js +9 -9
  72. package/module/buttons/Data.js +10 -10
  73. package/module/buttons/EmptyVisualization.js +9 -9
  74. package/module/buttons/ExportDashboardButton.js +8 -8
  75. package/module/buttons/Fullscreen.js +9 -9
  76. package/module/buttons/GridLineSwitch.js +8 -8
  77. package/module/buttons/HelpButton.js +11 -11
  78. package/module/buttons/IconGallery.js +11 -11
  79. package/module/buttons/Image.js +9 -9
  80. package/module/buttons/ImageGallery.js +12 -12
  81. package/module/buttons/Inputs.js +11 -11
  82. package/module/buttons/Markdown.js +8 -8
  83. package/module/buttons/ModeSwitch.js +9 -9
  84. package/module/buttons/Redo.js +8 -8
  85. package/module/buttons/Shapes.js +13 -13
  86. package/module/buttons/Source.js +9 -9
  87. package/module/buttons/Undo.js +8 -8
  88. package/module/buttons/index.js +40 -40
  89. package/module/chunks/{chunk-KDWTCNVM.js → chunk-37TNXIHV.js} +8 -12
  90. package/module/chunks/{chunk-KDWTCNVM.js.map → chunk-37TNXIHV.js.map} +1 -1
  91. package/module/chunks/{chunk-GMMN7SOC.js → chunk-3PEWQDKC.js} +2 -2
  92. package/module/chunks/{chunk-ZV4AQ5DL.js → chunk-6C2NOEOI.js} +2 -2
  93. package/module/chunks/{chunk-VSD7VGBN.js → chunk-A4O2G7H7.js} +6 -6
  94. package/module/chunks/{chunk-RZWTF3BK.js → chunk-A4S4A2N5.js} +25 -39
  95. package/module/chunks/{chunk-RZWTF3BK.js.map → chunk-A4S4A2N5.js.map} +1 -1
  96. package/module/chunks/{chunk-6NLVLUCU.js → chunk-A6YRCP43.js} +2 -2
  97. package/module/chunks/chunk-AFH5LL74.js +26 -0
  98. package/module/chunks/{chunk-UCI2OCYF.js → chunk-B4IRCRYC.js} +12 -20
  99. package/module/chunks/{chunk-UCI2OCYF.js.map → chunk-B4IRCRYC.js.map} +1 -1
  100. package/module/chunks/{chunk-SJNT4MK5.js → chunk-DONX4ISJ.js} +6 -6
  101. package/module/chunks/{chunk-NTQBWCZU.js → chunk-EDGMTRPE.js} +8 -8
  102. package/module/chunks/{chunk-NTQBWCZU.js.map → chunk-EDGMTRPE.js.map} +1 -1
  103. package/module/chunks/chunk-EGORPP2V.js +34 -0
  104. package/module/chunks/{chunk-E7EUH33R.js.map → chunk-EGORPP2V.js.map} +1 -1
  105. package/module/chunks/{chunk-UNYHHA4F.js → chunk-EPMHIBVT.js} +10 -11
  106. package/module/chunks/{chunk-UNYHHA4F.js.map → chunk-EPMHIBVT.js.map} +1 -1
  107. package/module/chunks/{chunk-EUFLSUPO.js → chunk-ETTOVWKF.js} +14 -17
  108. package/module/chunks/{chunk-EUFLSUPO.js.map → chunk-ETTOVWKF.js.map} +1 -1
  109. package/module/chunks/{chunk-IHFVJPGQ.js → chunk-EVRV5ZFT.js} +2 -2
  110. package/module/chunks/{chunk-I6AJG47U.js → chunk-EZBGH5QE.js} +2 -2
  111. package/module/chunks/{chunk-TQIO5WSS.js → chunk-GGU3N3OR.js} +5 -5
  112. package/module/chunks/{chunk-RKJ7RKNK.js → chunk-GQJXWXKY.js} +2 -2
  113. package/module/chunks/{chunk-U5YCUIDK.js → chunk-HGF7R67S.js} +9 -12
  114. package/module/chunks/{chunk-U5YCUIDK.js.map → chunk-HGF7R67S.js.map} +1 -1
  115. package/module/chunks/{chunk-ZEITW5IL.js → chunk-HNLSR2U2.js} +10 -10
  116. package/module/chunks/{chunk-ZEITW5IL.js.map → chunk-HNLSR2U2.js.map} +1 -1
  117. package/module/chunks/{chunk-6RWX6HA7.js → chunk-HSIAXTEQ.js} +9 -12
  118. package/module/chunks/{chunk-6RWX6HA7.js.map → chunk-HSIAXTEQ.js.map} +1 -1
  119. package/module/chunks/{chunk-RZRB3MPG.js → chunk-I3Y2YMOQ.js} +32 -35
  120. package/module/chunks/{chunk-RZRB3MPG.js.map → chunk-I3Y2YMOQ.js.map} +1 -1
  121. package/module/chunks/{chunk-RFWUOGJ3.js → chunk-ICS6CLF6.js} +2 -2
  122. package/module/chunks/{chunk-5IFDFRGD.js → chunk-JMJ4YG2J.js} +8 -12
  123. package/module/chunks/{chunk-5IFDFRGD.js.map → chunk-JMJ4YG2J.js.map} +1 -1
  124. package/module/chunks/{chunk-QH53L2XQ.js → chunk-K4W7W6HJ.js} +7 -10
  125. package/module/chunks/{chunk-QH53L2XQ.js.map → chunk-K4W7W6HJ.js.map} +1 -1
  126. package/module/chunks/{chunk-C3GFY32L.js → chunk-KIWM3XWB.js} +2 -2
  127. package/module/chunks/{chunk-UUMIWWJE.js → chunk-KLSA6FGU.js} +13 -13
  128. package/module/chunks/{chunk-UUMIWWJE.js.map → chunk-KLSA6FGU.js.map} +1 -1
  129. package/module/chunks/{chunk-4SWPK2TU.js → chunk-KTJRF2VW.js} +3 -3
  130. package/module/chunks/{chunk-P5YTSVEV.js → chunk-L5IQTYSU.js} +9 -9
  131. package/module/chunks/{chunk-P5YTSVEV.js.map → chunk-L5IQTYSU.js.map} +1 -1
  132. package/module/chunks/{chunk-WSTQTULM.js → chunk-MDZOPP2X.js} +3 -3
  133. package/module/chunks/{chunk-VITMNUKV.js → chunk-MJ7HLEFT.js} +2 -2
  134. package/module/chunks/{chunk-HMQY5XLG.js → chunk-MTBEBUIU.js} +8 -12
  135. package/module/chunks/{chunk-HMQY5XLG.js.map → chunk-MTBEBUIU.js.map} +1 -1
  136. package/module/chunks/{chunk-YMIK47DX.js → chunk-O3KEDXFD.js} +14 -15
  137. package/module/chunks/{chunk-YMIK47DX.js.map → chunk-O3KEDXFD.js.map} +1 -1
  138. package/module/chunks/{chunk-RPNGCVZL.js → chunk-OBDH7GEY.js} +2 -2
  139. package/module/chunks/{chunk-2MOF5ZP7.js → chunk-OE5GQ3FG.js} +7 -7
  140. package/module/chunks/{chunk-XWRMHLAP.js → chunk-OOGFGU4X.js} +2 -2
  141. package/module/chunks/{chunk-DM27U6AI.js → chunk-OUC7QEXH.js} +18 -17
  142. package/module/chunks/{chunk-DM27U6AI.js.map → chunk-OUC7QEXH.js.map} +1 -1
  143. package/module/chunks/{chunk-E3IBH4RN.js → chunk-P23RJTRF.js} +10 -10
  144. package/module/chunks/{chunk-VGHYIDZA.js → chunk-P2G7HULR.js} +5 -8
  145. package/module/chunks/{chunk-VGHYIDZA.js.map → chunk-P2G7HULR.js.map} +1 -1
  146. package/module/chunks/{chunk-KMWIB6DC.js → chunk-P7X3KHUG.js} +6 -9
  147. package/module/chunks/{chunk-KMWIB6DC.js.map → chunk-P7X3KHUG.js.map} +1 -1
  148. package/module/chunks/{chunk-BDFUA6X7.js → chunk-PDTV2ZHG.js} +9 -14
  149. package/module/chunks/{chunk-BDFUA6X7.js.map → chunk-PDTV2ZHG.js.map} +1 -1
  150. package/module/chunks/{chunk-RJ5FWZWY.js → chunk-PKNBH4OS.js} +11 -18
  151. package/module/chunks/{chunk-RJ5FWZWY.js.map → chunk-PKNBH4OS.js.map} +1 -1
  152. package/module/chunks/{chunk-JIIPUMEA.js → chunk-PZA4F4AY.js} +2 -2
  153. package/module/chunks/{chunk-V3YGNO27.js → chunk-Q5OC2QQV.js} +2 -2
  154. package/module/chunks/{chunk-KGSEQL62.js → chunk-QQWQ2KSF.js} +2 -2
  155. package/module/chunks/{chunk-MUXHFVOC.js → chunk-RL6UDJ3E.js} +10 -11
  156. package/module/chunks/{chunk-MUXHFVOC.js.map → chunk-RL6UDJ3E.js.map} +1 -1
  157. package/module/chunks/{chunk-SFYQQARV.js → chunk-SJBQOPBI.js} +3 -3
  158. package/module/chunks/{chunk-RS2VRN2X.js → chunk-VENUU6C7.js} +7 -7
  159. package/module/chunks/{chunk-RS2VRN2X.js.map → chunk-VENUU6C7.js.map} +1 -1
  160. package/module/chunks/{chunk-DQZGTQ2Z.js → chunk-WOYP7J2K.js} +9 -9
  161. package/module/chunks/chunk-X74ALD2D.js +25 -0
  162. package/module/chunks/{chunk-PUNHFOXB.js.map → chunk-X74ALD2D.js.map} +1 -1
  163. package/module/chunks/{chunk-YH3LWJKQ.js → chunk-Y4MM4UJB.js} +17 -17
  164. package/module/chunks/{chunk-YH3LWJKQ.js.map → chunk-Y4MM4UJB.js.map} +1 -1
  165. package/module/chunks/{chunk-FMSKWHRK.js → chunk-YK4XZUC2.js} +11 -14
  166. package/module/chunks/{chunk-FMSKWHRK.js.map → chunk-YK4XZUC2.js.map} +1 -1
  167. package/module/groups/ActionsGroup.js +7 -7
  168. package/module/groups/ControlGroup.js +42 -42
  169. package/module/groups/EditingGroup.js +42 -42
  170. package/module/groups/EditorGroup.js +42 -42
  171. package/module/groups/EditorsControlGroup.js +42 -42
  172. package/module/groups/HistoryGroup.js +42 -42
  173. package/module/groups/SidebarControlGroup.js +42 -42
  174. package/module/groups/VisualizationGroup.js +42 -42
  175. package/module/groups/index.js +49 -49
  176. package/module/index.js +51 -51
  177. package/package.json +22 -22
  178. package/module/chunks/chunk-E7EUH33R.js +0 -40
  179. package/module/chunks/chunk-PUNHFOXB.js +0 -31
  180. package/module/chunks/chunk-VQIRZ53C.js +0 -79
  181. package/types/groups/HistoryGroup.test.d.ts +0 -2
  182. package/types/groups/HistoryGroup.test.d.ts.map +0 -1
  183. /package/module/chunks/{chunk-GMMN7SOC.js.map → chunk-3PEWQDKC.js.map} +0 -0
  184. /package/module/chunks/{chunk-ZV4AQ5DL.js.map → chunk-6C2NOEOI.js.map} +0 -0
  185. /package/module/chunks/{chunk-VSD7VGBN.js.map → chunk-A4O2G7H7.js.map} +0 -0
  186. /package/module/chunks/{chunk-6NLVLUCU.js.map → chunk-A6YRCP43.js.map} +0 -0
  187. /package/module/chunks/{chunk-VQIRZ53C.js.map → chunk-AFH5LL74.js.map} +0 -0
  188. /package/module/chunks/{chunk-SJNT4MK5.js.map → chunk-DONX4ISJ.js.map} +0 -0
  189. /package/module/chunks/{chunk-IHFVJPGQ.js.map → chunk-EVRV5ZFT.js.map} +0 -0
  190. /package/module/chunks/{chunk-I6AJG47U.js.map → chunk-EZBGH5QE.js.map} +0 -0
  191. /package/module/chunks/{chunk-TQIO5WSS.js.map → chunk-GGU3N3OR.js.map} +0 -0
  192. /package/module/chunks/{chunk-RKJ7RKNK.js.map → chunk-GQJXWXKY.js.map} +0 -0
  193. /package/module/chunks/{chunk-RFWUOGJ3.js.map → chunk-ICS6CLF6.js.map} +0 -0
  194. /package/module/chunks/{chunk-C3GFY32L.js.map → chunk-KIWM3XWB.js.map} +0 -0
  195. /package/module/chunks/{chunk-4SWPK2TU.js.map → chunk-KTJRF2VW.js.map} +0 -0
  196. /package/module/chunks/{chunk-WSTQTULM.js.map → chunk-MDZOPP2X.js.map} +0 -0
  197. /package/module/chunks/{chunk-VITMNUKV.js.map → chunk-MJ7HLEFT.js.map} +0 -0
  198. /package/module/chunks/{chunk-RPNGCVZL.js.map → chunk-OBDH7GEY.js.map} +0 -0
  199. /package/module/chunks/{chunk-2MOF5ZP7.js.map → chunk-OE5GQ3FG.js.map} +0 -0
  200. /package/module/chunks/{chunk-XWRMHLAP.js.map → chunk-OOGFGU4X.js.map} +0 -0
  201. /package/module/chunks/{chunk-E3IBH4RN.js.map → chunk-P23RJTRF.js.map} +0 -0
  202. /package/module/chunks/{chunk-JIIPUMEA.js.map → chunk-PZA4F4AY.js.map} +0 -0
  203. /package/module/chunks/{chunk-V3YGNO27.js.map → chunk-Q5OC2QQV.js.map} +0 -0
  204. /package/module/chunks/{chunk-KGSEQL62.js.map → chunk-QQWQ2KSF.js.map} +0 -0
  205. /package/module/chunks/{chunk-SFYQQARV.js.map → chunk-SJBQOPBI.js.map} +0 -0
  206. /package/module/chunks/{chunk-DQZGTQ2Z.js.map → chunk-WOYP7J2K.js.map} +0 -0
@@ -6,34 +6,8 @@ var __create = Object.create;
6
6
  var __defProp = Object.defineProperty;
7
7
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
8
8
  var __getOwnPropNames = Object.getOwnPropertyNames;
9
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
10
9
  var __getProtoOf = Object.getPrototypeOf;
11
10
  var __hasOwnProp = Object.prototype.hasOwnProperty;
12
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
13
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
14
- var __spreadValues = (a, b) => {
15
- for (var prop in b || (b = {}))
16
- if (__hasOwnProp.call(b, prop))
17
- __defNormalProp(a, prop, b[prop]);
18
- if (__getOwnPropSymbols)
19
- for (var prop of __getOwnPropSymbols(b)) {
20
- if (__propIsEnum.call(b, prop))
21
- __defNormalProp(a, prop, b[prop]);
22
- }
23
- return a;
24
- };
25
- var __objRest = (source, exclude) => {
26
- var target = {};
27
- for (var prop in source)
28
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
29
- target[prop] = source[prop];
30
- if (source != null && __getOwnPropSymbols)
31
- for (var prop of __getOwnPropSymbols(source)) {
32
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
33
- target[prop] = source[prop];
34
- }
35
- return target;
36
- };
37
11
  var __export = (target, all) => {
38
12
  for (var name in all)
39
13
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -145,37 +119,25 @@ var StyledDropdownIcon = styled_components_default(CaretDown_default)`
145
119
  `;
146
120
  var iconSize = 24;
147
121
  var menuIconSize = 20;
148
- var prepareIcon = (_a) => {
149
- var _b = _a, {
150
- Icon,
151
- screenReaderContent,
152
- isMenu = false
153
- } = _b, props = __objRest(_b, [
154
- "Icon",
155
- "screenReaderContent",
156
- "isMenu"
157
- ]);
122
+ var prepareIcon = ({
123
+ Icon,
124
+ screenReaderContent,
125
+ isMenu = false,
126
+ ...props
127
+ }) => {
158
128
  const size = isMenu ? menuIconSize : iconSize;
159
- return /* @__PURE__ */ react_default.createElement(react_default.Fragment, null, /* @__PURE__ */ react_default.createElement(Icon, __spreadValues({ width: size, height: size }, props)), isMenu && /* @__PURE__ */ react_default.createElement(StyledDropdownIcon, { variant: "filled", width: 9, height: size }), screenReaderContent && /* @__PURE__ */ react_default.createElement(ScreenReaderContent_default, null, screenReaderContent));
129
+ return /* @__PURE__ */ react_default.createElement(react_default.Fragment, null, /* @__PURE__ */ react_default.createElement(Icon, { width: size, height: size, ...props }), isMenu && /* @__PURE__ */ react_default.createElement(StyledDropdownIcon, { variant: "filled", width: 9, height: size }), screenReaderContent && /* @__PURE__ */ react_default.createElement(ScreenReaderContent_default, null, screenReaderContent));
160
130
  };
161
- var IconButton = (_a) => {
162
- var _b = _a, {
163
- icon: icon2,
164
- buttonRef,
165
- disabled = false,
166
- onClick,
167
- label,
168
- tooltipContent,
169
- testLabel
170
- } = _b, rest = __objRest(_b, [
171
- "icon",
172
- "buttonRef",
173
- "disabled",
174
- "onClick",
175
- "label",
176
- "tooltipContent",
177
- "testLabel"
178
- ]);
131
+ var IconButton = ({
132
+ icon: icon2,
133
+ buttonRef,
134
+ disabled = false,
135
+ onClick,
136
+ label,
137
+ tooltipContent,
138
+ testLabel,
139
+ ...rest
140
+ }) => {
179
141
  const button = /* @__PURE__ */ react_default.createElement(
180
142
  Button_default,
181
143
  {
@@ -189,7 +151,7 @@ var IconButton = (_a) => {
189
151
  "data-clickable": true
190
152
  }
191
153
  );
192
- return /* @__PURE__ */ react_default.createElement(Item_default, __spreadValues({}, rest), tooltipContent ? /* @__PURE__ */ react_default.createElement(Tooltip_default, { contentRelationship: "label", content: tooltipContent }, button) : button);
154
+ return /* @__PURE__ */ react_default.createElement(Item_default, { ...rest }, tooltipContent ? /* @__PURE__ */ react_default.createElement(Tooltip_default, { contentRelationship: "label", content: tooltipContent }, button) : button);
193
155
  };
194
156
  var IconButton_default = IconButton;
195
157
 
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/buttons/ContentExport.tsx", "esm-externals:react", "esm-externals:@splunk/ui-utils/i18n", "esm-externals:@splunk/react-icons/ArrowBroadUnderbarDown", "esm-externals:@splunk/react-icons/CaretDown", "esm-externals:@splunk/react-ui/ScreenReaderContent", "esm-externals:@splunk/react-ui/Button", "esm-externals:@splunk/react-ui/Tooltip", "esm-externals:styled-components", "../src/Item.tsx", "../src/IconButton.tsx"],
4
4
  "sourcesContent": ["import React, { type ComponentProps } from 'react';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport ArrowBroadUnderbarDown from '@splunk/react-icons/ArrowBroadUnderbarDown';\nimport IconButton, { prepareIcon } from '../IconButton';\nimport type { ToolbarButtonProps } from '../types/common';\n\nexport interface ContentExportProps extends ToolbarButtonProps {\n disabled?: boolean;\n onClick?: ComponentProps<typeof IconButton>['onClick'];\n}\n\nconst icon = prepareIcon({\n Icon: ArrowBroadUnderbarDown,\n});\n\nconst ContentExport = ({ disabled, onClick }: ContentExportProps) => (\n <IconButton\n testLabel=\"content-export-button\"\n onClick={onClick}\n disabled={!!disabled}\n icon={icon}\n tooltipContent={_('Export')}\n />\n);\n\nexport default ContentExport;\n", "import * as defaultImport from \"react\";\nexport * from \"react\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/ui-utils/i18n\";\nexport * from \"@splunk/ui-utils/i18n\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/react-icons/ArrowBroadUnderbarDown\";\nexport * from \"@splunk/react-icons/ArrowBroadUnderbarDown\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/react-icons/CaretDown\";\nexport * from \"@splunk/react-icons/CaretDown\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/react-ui/ScreenReaderContent\";\nexport * from \"@splunk/react-ui/ScreenReaderContent\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/react-ui/Button\";\nexport * from \"@splunk/react-ui/Button\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/react-ui/Tooltip\";\nexport * from \"@splunk/react-ui/Tooltip\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"styled-components\";\nexport * from \"styled-components\";\nexport default defaultImport.default;\n", "import styled from 'styled-components';\n\nexport default styled.div``;\n", "import React from 'react';\nimport type SVG from '@splunk/react-icons/SVG';\nimport DropdownIcon from '@splunk/react-icons/CaretDown';\nimport ScreenReaderContent from '@splunk/react-ui/ScreenReaderContent';\nimport Button, { type ButtonPropsBase } from '@splunk/react-ui/Button';\nimport Tooltip from '@splunk/react-ui/Tooltip';\nimport styled from 'styled-components';\nimport ToolbarItem from './Item';\nimport type { ToolbarButtonProps } from './types/common';\n\nconst StyledDropdownIcon = styled(DropdownIcon)`\n margin-left: -5px;\n`;\n\nexport const iconSize = 24;\nexport const menuIconSize = 20;\n\ninterface PrepareIconProps extends React.ComponentProps<typeof SVG> {\n Icon: React.ComponentType<React.ComponentProps<typeof SVG>>;\n screenReaderContent?: string;\n isMenu?: boolean;\n variant?: 'filled' | 'outline' | 'none';\n}\n\n/**\n * Button adds a bunch of padding when there's any child elements even if they don't display anything (screenReaderContent)\n * This bundles the primary icon, a menu caret and screenReaderContent as an icon when needed.\n * Additionally accepts any properties of any react-icons element to be applied to primary icon\n * @param {Object} arg\n * @param {React.ElementType} arg.Icon The primary icon\n * @param {boolean} [arg.isMenu=false] Display a menu caret\n * @param {string} [arg.screenReaderContent] A label for the icon\n * @param {string} [arg.variant] Fill the icon, or not\n * @returns {JSX.Element}\n */\nexport const prepareIcon = ({\n Icon,\n screenReaderContent,\n isMenu = false,\n ...props\n}: PrepareIconProps) => {\n const size = isMenu ? menuIconSize : iconSize;\n return (\n <>\n <Icon width={size} height={size} {...props} />\n {isMenu && (\n <StyledDropdownIcon variant=\"filled\" width={9} height={size} />\n )}\n {screenReaderContent && (\n <ScreenReaderContent>{screenReaderContent}</ScreenReaderContent>\n )}\n </>\n );\n};\n\nexport interface IconButtonProps extends ToolbarButtonProps {\n icon?: JSX.Element;\n onClick?: ButtonPropsBase['onClick'];\n label?: string;\n tooltipContent?: string;\n buttonRef?: React.RefObject<HTMLButtonElement>;\n testLabel?: string;\n disabled?: boolean;\n}\n\nconst IconButton = ({\n icon,\n buttonRef,\n disabled = false,\n onClick,\n label,\n tooltipContent,\n testLabel,\n ...rest\n}: IconButtonProps): JSX.Element => {\n const button = (\n <Button\n elementRef={buttonRef}\n onClick={onClick}\n disabled={disabled}\n appearance=\"subtle\"\n icon={icon}\n label={label}\n data-test={testLabel}\n data-clickable\n />\n );\n\n return (\n <ToolbarItem {...rest}>\n {tooltipContent ? (\n <Tooltip contentRelationship=\"label\" content={tooltipContent}>\n {button}\n </Tooltip>\n ) : (\n button\n )}\n </ToolbarItem>\n );\n};\n\nexport default IconButton;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA;AAAA;AAAA;AAAA;AAAA,oBAA+B;AAC/B,0BAAc;AACd,IAAO,gBAAS,aAAa,gBAA8B,wBAAU;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAA,iBAA+B;AAC/B,yBAAc;AACd,IAAO,eAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,2CAAc;AACd,IAAO,iCAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,8BAAc;AACd,IAAO,oBAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,wCAAc;AACd,IAAO,8BAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,2BAAc;AACd,IAAO,iBAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,4BAAc;AACd,IAAO,kBAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,sCAAc;AACd,IAAO,4BAAsB;;;ACA7B,IAAO,eAAQ,0BAAO;;;ACQtB,IAAM,qBAAqB,0BAAO,iBAAY;AAAA;AAAA;AAIvC,IAAM,WAAW;AACjB,IAAM,eAAe;AAoBrB,IAAM,cAAc,CAAC,OAKJ;AALI,eACxB;AAAA;AAAA,IACA;AAAA,IACA,SAAS;AAAA,EAtCb,IAmC4B,IAIrB,kBAJqB,IAIrB;AAAA,IAHH;AAAA,IACA;AAAA,IACA;AAAA;AAGA,QAAM,OAAO,SAAS,eAAe;AACrC,SACI,0EACI,4CAAC,uBAAK,OAAO,MAAM,QAAQ,QAAU,MAAO,GAC3C,UACG,4CAAC,sBAAmB,SAAQ,UAAS,OAAO,GAAG,QAAQ,MAAM,GAEhE,uBACG,4CAAC,mCAAqB,mBAAoB,CAElD;AAER;AAYA,IAAM,aAAa,CAAC,OASgB;AAThB,eAChB;AAAA,UAAAC;AAAA,IACA;AAAA,IACA,WAAW;AAAA,IACX;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAxEJ,IAiEoB,IAQb,iBARa,IAQb;AAAA,IAPH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGA,QAAM,SACF;AAAA,IAAC;AAAA;AAAA,MACG,YAAY;AAAA,MACZ;AAAA,MACA;AAAA,MACA,YAAW;AAAA,MACX,MAAMA;AAAA,MACN;AAAA,MACA,aAAW;AAAA,MACX,kBAAc;AAAA;AAAA,EAClB;AAGJ,SACI,4CAAC,iCAAgB,OACZ,iBACG,4CAAC,mBAAQ,qBAAoB,SAAQ,SAAS,kBACzC,MACL,IAEA,MAER;AAER;AAEA,IAAO,qBAAQ;;;AV1Ff,IAAM,OAAO,YAAY;AAAA,EACrB,MAAM;AACV,CAAC;AAED,IAAM,gBAAgB,CAAC,EAAE,UAAU,QAAQ,MACvC;AAAA,EAAC;AAAA;AAAA,IACG,WAAU;AAAA,IACV;AAAA,IACA,UAAU,CAAC,CAAC;AAAA,IACZ;AAAA,IACA,oBAAgB,gBAAE,QAAQ;AAAA;AAC9B;AAGJ,IAAO,wBAAQ;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA;AAAA;AAAA;AAAA;AAAA,oBAA+B;AAC/B,0BAAc;AACd,IAAO,gBAAS,aAAa,gBAA8B,wBAAU;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAA,iBAA+B;AAC/B,yBAAc;AACd,IAAO,eAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,2CAAc;AACd,IAAO,iCAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,8BAAc;AACd,IAAO,oBAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,wCAAc;AACd,IAAO,8BAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,2BAAc;AACd,IAAO,iBAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,4BAAc;AACd,IAAO,kBAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,sCAAc;AACd,IAAO,4BAAsB;;;ACA7B,IAAO,eAAQ,0BAAO;;;ACQtB,IAAM,qBAAqB,0BAAO,iBAAY;AAAA;AAAA;AAIvC,IAAM,WAAW;AACjB,IAAM,eAAe;AAoBrB,IAAM,cAAc,CAAC;AAAA,EACxB;AAAA,EACA;AAAA,EACA,SAAS;AAAA,EACT,GAAG;AACP,MAAwB;AACpB,QAAM,OAAO,SAAS,eAAe;AACrC,SACI,0EACI,4CAAC,QAAK,OAAO,MAAM,QAAQ,MAAO,GAAG,OAAO,GAC3C,UACG,4CAAC,sBAAmB,SAAQ,UAAS,OAAO,GAAG,QAAQ,MAAM,GAEhE,uBACG,4CAAC,mCAAqB,mBAAoB,CAElD;AAER;AAYA,IAAM,aAAa,CAAC;AAAA,EAChB,MAAAC;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACP,MAAoC;AAChC,QAAM,SACF;AAAA,IAAC;AAAA;AAAA,MACG,YAAY;AAAA,MACZ;AAAA,MACA;AAAA,MACA,YAAW;AAAA,MACX,MAAMA;AAAA,MACN;AAAA,MACA,aAAW;AAAA,MACX,kBAAc;AAAA;AAAA,EAClB;AAGJ,SACI,4CAAC,gBAAa,GAAG,QACZ,iBACG,4CAAC,mBAAQ,qBAAoB,SAAQ,SAAS,kBACzC,MACL,IAEA,MAER;AAER;AAEA,IAAO,qBAAQ;;;AV1Ff,IAAM,OAAO,YAAY;AAAA,EACrB,MAAM;AACV,CAAC;AAED,IAAM,gBAAgB,CAAC,EAAE,UAAU,QAAQ,MACvC;AAAA,EAAC;AAAA;AAAA,IACG,WAAU;AAAA,IACV;AAAA,IACA,UAAU,CAAC,CAAC;AAAA,IACZ;AAAA,IACA,oBAAgB,gBAAE,QAAQ;AAAA;AAC9B;AAGJ,IAAO,wBAAQ;",
6
6
  "names": ["defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "icon"]
7
7
  }
package/buttons/Data.js CHANGED
@@ -6,34 +6,8 @@ var __create = Object.create;
6
6
  var __defProp = Object.defineProperty;
7
7
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
8
8
  var __getOwnPropNames = Object.getOwnPropertyNames;
9
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
10
9
  var __getProtoOf = Object.getPrototypeOf;
11
10
  var __hasOwnProp = Object.prototype.hasOwnProperty;
12
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
13
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
14
- var __spreadValues = (a, b) => {
15
- for (var prop in b || (b = {}))
16
- if (__hasOwnProp.call(b, prop))
17
- __defNormalProp(a, prop, b[prop]);
18
- if (__getOwnPropSymbols)
19
- for (var prop of __getOwnPropSymbols(b)) {
20
- if (__propIsEnum.call(b, prop))
21
- __defNormalProp(a, prop, b[prop]);
22
- }
23
- return a;
24
- };
25
- var __objRest = (source, exclude) => {
26
- var target = {};
27
- for (var prop in source)
28
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
29
- target[prop] = source[prop];
30
- if (source != null && __getOwnPropSymbols)
31
- for (var prop of __getOwnPropSymbols(source)) {
32
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
33
- target[prop] = source[prop];
34
- }
35
- return target;
36
- };
37
11
  var __export = (target, all) => {
38
12
  for (var name in all)
39
13
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -163,37 +137,25 @@ var StyledDropdownIcon = styled_components_default(CaretDown_default)`
163
137
  `;
164
138
  var iconSize = 24;
165
139
  var menuIconSize = 20;
166
- var prepareIcon = (_a) => {
167
- var _b = _a, {
168
- Icon,
169
- screenReaderContent,
170
- isMenu = false
171
- } = _b, props = __objRest(_b, [
172
- "Icon",
173
- "screenReaderContent",
174
- "isMenu"
175
- ]);
140
+ var prepareIcon = ({
141
+ Icon,
142
+ screenReaderContent,
143
+ isMenu = false,
144
+ ...props
145
+ }) => {
176
146
  const size = isMenu ? menuIconSize : iconSize;
177
- return /* @__PURE__ */ react_default.createElement(react_default.Fragment, null, /* @__PURE__ */ react_default.createElement(Icon, __spreadValues({ width: size, height: size }, props)), isMenu && /* @__PURE__ */ react_default.createElement(StyledDropdownIcon, { variant: "filled", width: 9, height: size }), screenReaderContent && /* @__PURE__ */ react_default.createElement(ScreenReaderContent_default, null, screenReaderContent));
147
+ return /* @__PURE__ */ react_default.createElement(react_default.Fragment, null, /* @__PURE__ */ react_default.createElement(Icon, { width: size, height: size, ...props }), isMenu && /* @__PURE__ */ react_default.createElement(StyledDropdownIcon, { variant: "filled", width: 9, height: size }), screenReaderContent && /* @__PURE__ */ react_default.createElement(ScreenReaderContent_default, null, screenReaderContent));
178
148
  };
179
- var IconButton = (_a) => {
180
- var _b = _a, {
181
- icon,
182
- buttonRef,
183
- disabled = false,
184
- onClick,
185
- label,
186
- tooltipContent,
187
- testLabel
188
- } = _b, rest = __objRest(_b, [
189
- "icon",
190
- "buttonRef",
191
- "disabled",
192
- "onClick",
193
- "label",
194
- "tooltipContent",
195
- "testLabel"
196
- ]);
149
+ var IconButton = ({
150
+ icon,
151
+ buttonRef,
152
+ disabled = false,
153
+ onClick,
154
+ label,
155
+ tooltipContent,
156
+ testLabel,
157
+ ...rest
158
+ }) => {
197
159
  const button = /* @__PURE__ */ react_default.createElement(
198
160
  Button_default,
199
161
  {
@@ -207,7 +169,7 @@ var IconButton = (_a) => {
207
169
  "data-clickable": true
208
170
  }
209
171
  );
210
- return /* @__PURE__ */ react_default.createElement(Item_default, __spreadValues({}, rest), tooltipContent ? /* @__PURE__ */ react_default.createElement(Tooltip_default, { contentRelationship: "label", content: tooltipContent }, button) : button);
172
+ return /* @__PURE__ */ react_default.createElement(Item_default, { ...rest }, tooltipContent ? /* @__PURE__ */ react_default.createElement(Tooltip_default, { contentRelationship: "label", content: tooltipContent }, button) : button);
211
173
  };
212
174
  var IconButton_default = IconButton;
213
175
 
@@ -218,13 +180,13 @@ var dataInputIcon = prepareIcon({
218
180
  var Data = ({ dashboardApi }) => {
219
181
  const dataButtonRef = (0, dashboard_context_exports.useToolbarRef)("dataOverview");
220
182
  const handleClick = (0, react_exports.useCallback)(() => {
221
- const isOpen = (dashboardApi == null ? void 0 : dashboardApi.getOpenedPanel()) === "dataOverview";
183
+ const isOpen = dashboardApi?.getOpenedPanel() === "dataOverview";
222
184
  if (isOpen) {
223
185
  dashboardApi.closePanel();
224
186
  } else {
225
187
  (0, dashboard_state_exports.batch)(() => {
226
- dashboardApi == null ? void 0 : dashboardApi.selectVisualization([]);
227
- dashboardApi == null ? void 0 : dashboardApi.openPanel({
188
+ dashboardApi?.selectVisualization([]);
189
+ dashboardApi?.openPanel({
228
190
  activePanel: "dataOverview",
229
191
  panelProps: {
230
192
  focusOnOpen: true
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/buttons/Data.tsx", "esm-externals:react", "esm-externals:@splunk/ui-utils/i18n", "esm-externals:@splunk/react-icons/CylinderMulti", "esm-externals:@splunk/dashboard-context", "esm-externals:@splunk/dashboard-state", "esm-externals:@splunk/react-icons/CaretDown", "esm-externals:@splunk/react-ui/ScreenReaderContent", "esm-externals:@splunk/react-ui/Button", "esm-externals:@splunk/react-ui/Tooltip", "esm-externals:styled-components", "../src/Item.tsx", "../src/IconButton.tsx"],
4
4
  "sourcesContent": ["import React, { useCallback } from 'react';\nimport { _ } from '@splunk/ui-utils/i18n';\n\nimport DataInput from '@splunk/react-icons/CylinderMulti';\n\nimport { useToolbarRef } from '@splunk/dashboard-context';\nimport { batch } from '@splunk/dashboard-state';\n\nimport IconButton, { prepareIcon } from '../IconButton';\nimport type { ToolbarButtonProps } from '../types/common';\n\nconst dataInputIcon = prepareIcon({\n Icon: DataInput,\n});\n\n/**\n * Button that toggle data overview panel\n */\nconst Data = ({ dashboardApi }: ToolbarButtonProps) => {\n const dataButtonRef = useToolbarRef('dataOverview');\n\n const handleClick = useCallback(() => {\n const isOpen = dashboardApi?.getOpenedPanel() === 'dataOverview';\n if (isOpen) {\n dashboardApi.closePanel();\n } else {\n batch(() => {\n // Deselect all selected visualizations\n dashboardApi?.selectVisualization([]);\n // Open data overview panel\n dashboardApi?.openPanel({\n activePanel: 'dataOverview',\n panelProps: {\n focusOnOpen: true,\n },\n });\n });\n }\n }, [dashboardApi]);\n\n return (\n <IconButton\n buttonRef={dataButtonRef}\n testLabel=\"data-button\"\n onClick={handleClick}\n icon={dataInputIcon}\n tooltipContent={_('Data source overview')}\n />\n );\n};\n\nexport default Data;\n", "import * as defaultImport from \"react\";\nexport * from \"react\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/ui-utils/i18n\";\nexport * from \"@splunk/ui-utils/i18n\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/react-icons/CylinderMulti\";\nexport * from \"@splunk/react-icons/CylinderMulti\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/dashboard-context\";\nexport * from \"@splunk/dashboard-context\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/dashboard-state\";\nexport * from \"@splunk/dashboard-state\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/react-icons/CaretDown\";\nexport * from \"@splunk/react-icons/CaretDown\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/react-ui/ScreenReaderContent\";\nexport * from \"@splunk/react-ui/ScreenReaderContent\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/react-ui/Button\";\nexport * from \"@splunk/react-ui/Button\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/react-ui/Tooltip\";\nexport * from \"@splunk/react-ui/Tooltip\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"styled-components\";\nexport * from \"styled-components\";\nexport default defaultImport.default;\n", "import styled from 'styled-components';\n\nexport default styled.div``;\n", "import React from 'react';\nimport type SVG from '@splunk/react-icons/SVG';\nimport DropdownIcon from '@splunk/react-icons/CaretDown';\nimport ScreenReaderContent from '@splunk/react-ui/ScreenReaderContent';\nimport Button, { type ButtonPropsBase } from '@splunk/react-ui/Button';\nimport Tooltip from '@splunk/react-ui/Tooltip';\nimport styled from 'styled-components';\nimport ToolbarItem from './Item';\nimport type { ToolbarButtonProps } from './types/common';\n\nconst StyledDropdownIcon = styled(DropdownIcon)`\n margin-left: -5px;\n`;\n\nexport const iconSize = 24;\nexport const menuIconSize = 20;\n\ninterface PrepareIconProps extends React.ComponentProps<typeof SVG> {\n Icon: React.ComponentType<React.ComponentProps<typeof SVG>>;\n screenReaderContent?: string;\n isMenu?: boolean;\n variant?: 'filled' | 'outline' | 'none';\n}\n\n/**\n * Button adds a bunch of padding when there's any child elements even if they don't display anything (screenReaderContent)\n * This bundles the primary icon, a menu caret and screenReaderContent as an icon when needed.\n * Additionally accepts any properties of any react-icons element to be applied to primary icon\n * @param {Object} arg\n * @param {React.ElementType} arg.Icon The primary icon\n * @param {boolean} [arg.isMenu=false] Display a menu caret\n * @param {string} [arg.screenReaderContent] A label for the icon\n * @param {string} [arg.variant] Fill the icon, or not\n * @returns {JSX.Element}\n */\nexport const prepareIcon = ({\n Icon,\n screenReaderContent,\n isMenu = false,\n ...props\n}: PrepareIconProps) => {\n const size = isMenu ? menuIconSize : iconSize;\n return (\n <>\n <Icon width={size} height={size} {...props} />\n {isMenu && (\n <StyledDropdownIcon variant=\"filled\" width={9} height={size} />\n )}\n {screenReaderContent && (\n <ScreenReaderContent>{screenReaderContent}</ScreenReaderContent>\n )}\n </>\n );\n};\n\nexport interface IconButtonProps extends ToolbarButtonProps {\n icon?: JSX.Element;\n onClick?: ButtonPropsBase['onClick'];\n label?: string;\n tooltipContent?: string;\n buttonRef?: React.RefObject<HTMLButtonElement>;\n testLabel?: string;\n disabled?: boolean;\n}\n\nconst IconButton = ({\n icon,\n buttonRef,\n disabled = false,\n onClick,\n label,\n tooltipContent,\n testLabel,\n ...rest\n}: IconButtonProps): JSX.Element => {\n const button = (\n <Button\n elementRef={buttonRef}\n onClick={onClick}\n disabled={disabled}\n appearance=\"subtle\"\n icon={icon}\n label={label}\n data-test={testLabel}\n data-clickable\n />\n );\n\n return (\n <ToolbarItem {...rest}>\n {tooltipContent ? (\n <Tooltip contentRelationship=\"label\" content={tooltipContent}>\n {button}\n </Tooltip>\n ) : (\n button\n )}\n </ToolbarItem>\n );\n};\n\nexport default IconButton;\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": ["defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport"]
7
7
  }
@@ -6,34 +6,8 @@ var __create = Object.create;
6
6
  var __defProp = Object.defineProperty;
7
7
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
8
8
  var __getOwnPropNames = Object.getOwnPropertyNames;
9
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
10
9
  var __getProtoOf = Object.getPrototypeOf;
11
10
  var __hasOwnProp = Object.prototype.hasOwnProperty;
12
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
13
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
14
- var __spreadValues = (a, b) => {
15
- for (var prop in b || (b = {}))
16
- if (__hasOwnProp.call(b, prop))
17
- __defNormalProp(a, prop, b[prop]);
18
- if (__getOwnPropSymbols)
19
- for (var prop of __getOwnPropSymbols(b)) {
20
- if (__propIsEnum.call(b, prop))
21
- __defNormalProp(a, prop, b[prop]);
22
- }
23
- return a;
24
- };
25
- var __objRest = (source, exclude) => {
26
- var target = {};
27
- for (var prop in source)
28
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
29
- target[prop] = source[prop];
30
- if (source != null && __getOwnPropSymbols)
31
- for (var prop of __getOwnPropSymbols(source)) {
32
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
33
- target[prop] = source[prop];
34
- }
35
- return target;
36
- };
37
11
  var __export = (target, all) => {
38
12
  for (var name in all)
39
13
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -56,26 +30,6 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
56
30
  mod
57
31
  ));
58
32
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
59
- var __async = (__this, __arguments, generator) => {
60
- return new Promise((resolve, reject) => {
61
- var fulfilled = (value) => {
62
- try {
63
- step(generator.next(value));
64
- } catch (e) {
65
- reject(e);
66
- }
67
- };
68
- var rejected = (value) => {
69
- try {
70
- step(generator.throw(value));
71
- } catch (e) {
72
- reject(e);
73
- }
74
- };
75
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
76
- step((generator = generator.apply(__this, __arguments)).next());
77
- });
78
- };
79
33
 
80
34
  // src/buttons/EmptyVisualization.tsx
81
35
  var EmptyVisualization_exports = {};
@@ -165,37 +119,25 @@ var StyledDropdownIcon = styled_components_default(CaretDown_default)`
165
119
  `;
166
120
  var iconSize = 24;
167
121
  var menuIconSize = 20;
168
- var prepareIcon = (_a) => {
169
- var _b = _a, {
170
- Icon,
171
- screenReaderContent,
172
- isMenu = false
173
- } = _b, props = __objRest(_b, [
174
- "Icon",
175
- "screenReaderContent",
176
- "isMenu"
177
- ]);
122
+ var prepareIcon = ({
123
+ Icon,
124
+ screenReaderContent,
125
+ isMenu = false,
126
+ ...props
127
+ }) => {
178
128
  const size = isMenu ? menuIconSize : iconSize;
179
- return /* @__PURE__ */ react_default.createElement(react_default.Fragment, null, /* @__PURE__ */ react_default.createElement(Icon, __spreadValues({ width: size, height: size }, props)), isMenu && /* @__PURE__ */ react_default.createElement(StyledDropdownIcon, { variant: "filled", width: 9, height: size }), screenReaderContent && /* @__PURE__ */ react_default.createElement(ScreenReaderContent_default, null, screenReaderContent));
129
+ return /* @__PURE__ */ react_default.createElement(react_default.Fragment, null, /* @__PURE__ */ react_default.createElement(Icon, { width: size, height: size, ...props }), isMenu && /* @__PURE__ */ react_default.createElement(StyledDropdownIcon, { variant: "filled", width: 9, height: size }), screenReaderContent && /* @__PURE__ */ react_default.createElement(ScreenReaderContent_default, null, screenReaderContent));
180
130
  };
181
- var IconButton = (_a) => {
182
- var _b = _a, {
183
- icon: icon2,
184
- buttonRef,
185
- disabled = false,
186
- onClick,
187
- label,
188
- tooltipContent,
189
- testLabel
190
- } = _b, rest = __objRest(_b, [
191
- "icon",
192
- "buttonRef",
193
- "disabled",
194
- "onClick",
195
- "label",
196
- "tooltipContent",
197
- "testLabel"
198
- ]);
131
+ var IconButton = ({
132
+ icon: icon2,
133
+ buttonRef,
134
+ disabled = false,
135
+ onClick,
136
+ label,
137
+ tooltipContent,
138
+ testLabel,
139
+ ...rest
140
+ }) => {
199
141
  const button = /* @__PURE__ */ react_default.createElement(
200
142
  Button_default,
201
143
  {
@@ -209,7 +151,7 @@ var IconButton = (_a) => {
209
151
  "data-clickable": true
210
152
  }
211
153
  );
212
- return /* @__PURE__ */ react_default.createElement(Item_default, __spreadValues({}, rest), tooltipContent ? /* @__PURE__ */ react_default.createElement(Tooltip_default, { contentRelationship: "label", content: tooltipContent }, button) : button);
154
+ return /* @__PURE__ */ react_default.createElement(Item_default, { ...rest }, tooltipContent ? /* @__PURE__ */ react_default.createElement(Tooltip_default, { contentRelationship: "label", content: tooltipContent }, button) : button);
213
155
  };
214
156
  var IconButton_default = IconButton;
215
157
 
@@ -218,8 +160,8 @@ var icon = prepareIcon({
218
160
  Icon: Square_default
219
161
  });
220
162
  var EmptyVisualization = ({ dashboardApi }) => {
221
- const handleClick = (0, react_exports.useCallback)(() => __async(null, null, function* () {
222
- dashboardApi == null ? void 0 : dashboardApi.createVisualization({
163
+ const handleClick = (0, react_exports.useCallback)(async () => {
164
+ dashboardApi?.createVisualization({
223
165
  visualizationDefinition: {
224
166
  type: "splunk.rectangle",
225
167
  options: {
@@ -228,10 +170,10 @@ var EmptyVisualization = ({ dashboardApi }) => {
228
170
  }
229
171
  }
230
172
  });
231
- dashboardApi == null ? void 0 : dashboardApi.openPanel({
173
+ dashboardApi?.openPanel({
232
174
  activePanel: "config"
233
175
  });
234
- }), [dashboardApi]);
176
+ }, [dashboardApi]);
235
177
  return /* @__PURE__ */ react_default.createElement(
236
178
  IconButton_default,
237
179
  {
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/buttons/EmptyVisualization.tsx", "esm-externals:react", "esm-externals:@splunk/ui-utils/i18n", "esm-externals:@splunk/react-icons/Square", "esm-externals:@splunk/react-icons/CaretDown", "esm-externals:@splunk/react-ui/ScreenReaderContent", "esm-externals:@splunk/react-ui/Button", "esm-externals:@splunk/react-ui/Tooltip", "esm-externals:styled-components", "../src/Item.tsx", "../src/IconButton.tsx"],
4
4
  "sourcesContent": ["import React, { useCallback } from 'react';\n\nimport { _ } from '@splunk/ui-utils/i18n';\nimport BoxUnchecked from '@splunk/react-icons/Square';\n\nimport IconButton, { prepareIcon } from '../IconButton';\nimport type { ToolbarButtonProps } from '../types/common';\n\nconst icon = prepareIcon({\n Icon: BoxUnchecked,\n});\n\n/**\n * Button that creates a empty viz\n */\nconst EmptyVisualization = ({ dashboardApi }: ToolbarButtonProps) => {\n const handleClick = useCallback(async () => {\n dashboardApi?.createVisualization({\n visualizationDefinition: {\n type: 'splunk.rectangle',\n options: {\n fillColor: 'transparent',\n strokeColor: 'transparent',\n },\n },\n });\n\n dashboardApi?.openPanel({\n activePanel: 'config',\n });\n }, [dashboardApi]);\n\n return (\n <IconButton\n testLabel=\"empty-viz-button\"\n onClick={handleClick}\n icon={icon}\n tooltipContent={_('Add rectangle')}\n />\n );\n};\n\nexport default EmptyVisualization;\n", "import * as defaultImport from \"react\";\nexport * from \"react\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/ui-utils/i18n\";\nexport * from \"@splunk/ui-utils/i18n\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/react-icons/Square\";\nexport * from \"@splunk/react-icons/Square\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/react-icons/CaretDown\";\nexport * from \"@splunk/react-icons/CaretDown\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/react-ui/ScreenReaderContent\";\nexport * from \"@splunk/react-ui/ScreenReaderContent\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/react-ui/Button\";\nexport * from \"@splunk/react-ui/Button\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"@splunk/react-ui/Tooltip\";\nexport * from \"@splunk/react-ui/Tooltip\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import * as defaultImport from \"styled-components\";\nexport * from \"styled-components\";\nexport default defaultImport.default;\n", "import styled from 'styled-components';\n\nexport default styled.div``;\n", "import React from 'react';\nimport type SVG from '@splunk/react-icons/SVG';\nimport DropdownIcon from '@splunk/react-icons/CaretDown';\nimport ScreenReaderContent from '@splunk/react-ui/ScreenReaderContent';\nimport Button, { type ButtonPropsBase } from '@splunk/react-ui/Button';\nimport Tooltip from '@splunk/react-ui/Tooltip';\nimport styled from 'styled-components';\nimport ToolbarItem from './Item';\nimport type { ToolbarButtonProps } from './types/common';\n\nconst StyledDropdownIcon = styled(DropdownIcon)`\n margin-left: -5px;\n`;\n\nexport const iconSize = 24;\nexport const menuIconSize = 20;\n\ninterface PrepareIconProps extends React.ComponentProps<typeof SVG> {\n Icon: React.ComponentType<React.ComponentProps<typeof SVG>>;\n screenReaderContent?: string;\n isMenu?: boolean;\n variant?: 'filled' | 'outline' | 'none';\n}\n\n/**\n * Button adds a bunch of padding when there's any child elements even if they don't display anything (screenReaderContent)\n * This bundles the primary icon, a menu caret and screenReaderContent as an icon when needed.\n * Additionally accepts any properties of any react-icons element to be applied to primary icon\n * @param {Object} arg\n * @param {React.ElementType} arg.Icon The primary icon\n * @param {boolean} [arg.isMenu=false] Display a menu caret\n * @param {string} [arg.screenReaderContent] A label for the icon\n * @param {string} [arg.variant] Fill the icon, or not\n * @returns {JSX.Element}\n */\nexport const prepareIcon = ({\n Icon,\n screenReaderContent,\n isMenu = false,\n ...props\n}: PrepareIconProps) => {\n const size = isMenu ? menuIconSize : iconSize;\n return (\n <>\n <Icon width={size} height={size} {...props} />\n {isMenu && (\n <StyledDropdownIcon variant=\"filled\" width={9} height={size} />\n )}\n {screenReaderContent && (\n <ScreenReaderContent>{screenReaderContent}</ScreenReaderContent>\n )}\n </>\n );\n};\n\nexport interface IconButtonProps extends ToolbarButtonProps {\n icon?: JSX.Element;\n onClick?: ButtonPropsBase['onClick'];\n label?: string;\n tooltipContent?: string;\n buttonRef?: React.RefObject<HTMLButtonElement>;\n testLabel?: string;\n disabled?: boolean;\n}\n\nconst IconButton = ({\n icon,\n buttonRef,\n disabled = false,\n onClick,\n label,\n tooltipContent,\n testLabel,\n ...rest\n}: IconButtonProps): JSX.Element => {\n const button = (\n <Button\n elementRef={buttonRef}\n onClick={onClick}\n disabled={disabled}\n appearance=\"subtle\"\n icon={icon}\n label={label}\n data-test={testLabel}\n data-clickable\n />\n );\n\n return (\n <ToolbarItem {...rest}>\n {tooltipContent ? (\n <Tooltip contentRelationship=\"label\" content={tooltipContent}>\n {button}\n </Tooltip>\n ) : (\n button\n )}\n </ToolbarItem>\n );\n};\n\nexport default IconButton;\n"],
5
- "mappings": "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",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA;AAAA;AAAA;AAAA;AAAA,oBAA+B;AAC/B,0BAAc;AACd,IAAO,gBAAS,aAAa,gBAA8B,wBAAU;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAA,iBAA+B;AAC/B,yBAAc;AACd,IAAO,eAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,2BAAc;AACd,IAAO,iBAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,8BAAc;AACd,IAAO,oBAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,wCAAc;AACd,IAAO,8BAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,2BAAc;AACd,IAAO,iBAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,4BAAc;AACd,IAAO,kBAAS,aAAaA,iBAA8B,yBAAUA;;;ACFrE;AAAA;AAAA;AAAA;AAAA,IAAAC,iBAA+B;AAC/B,sCAAc;AACd,IAAO,4BAAsB;;;ACA7B,IAAO,eAAQ,0BAAO;;;ACQtB,IAAM,qBAAqB,0BAAO,iBAAY;AAAA;AAAA;AAIvC,IAAM,WAAW;AACjB,IAAM,eAAe;AAoBrB,IAAM,cAAc,CAAC;AAAA,EACxB;AAAA,EACA;AAAA,EACA,SAAS;AAAA,EACT,GAAG;AACP,MAAwB;AACpB,QAAM,OAAO,SAAS,eAAe;AACrC,SACI,0EACI,4CAAC,QAAK,OAAO,MAAM,QAAQ,MAAO,GAAG,OAAO,GAC3C,UACG,4CAAC,sBAAmB,SAAQ,UAAS,OAAO,GAAG,QAAQ,MAAM,GAEhE,uBACG,4CAAC,mCAAqB,mBAAoB,CAElD;AAER;AAYA,IAAM,aAAa,CAAC;AAAA,EAChB,MAAAC;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACP,MAAoC;AAChC,QAAM,SACF;AAAA,IAAC;AAAA;AAAA,MACG,YAAY;AAAA,MACZ;AAAA,MACA;AAAA,MACA,YAAW;AAAA,MACX,MAAMA;AAAA,MACN;AAAA,MACA,aAAW;AAAA,MACX,kBAAc;AAAA;AAAA,EAClB;AAGJ,SACI,4CAAC,gBAAa,GAAG,QACZ,iBACG,4CAAC,mBAAQ,qBAAoB,SAAQ,SAAS,kBACzC,MACL,IAEA,MAER;AAER;AAEA,IAAO,qBAAQ;;;AV7Ff,IAAM,OAAO,YAAY;AAAA,EACrB,MAAM;AACV,CAAC;AAKD,IAAM,qBAAqB,CAAC,EAAE,aAAa,MAA0B;AACjE,QAAM,kBAAc,2BAAY,YAAY;AACxC,kBAAc,oBAAoB;AAAA,MAC9B,yBAAyB;AAAA,QACrB,MAAM;AAAA,QACN,SAAS;AAAA,UACL,WAAW;AAAA,UACX,aAAa;AAAA,QACjB;AAAA,MACJ;AAAA,IACJ,CAAC;AAED,kBAAc,UAAU;AAAA,MACpB,aAAa;AAAA,IACjB,CAAC;AAAA,EACL,GAAG,CAAC,YAAY,CAAC;AAEjB,SACI;AAAA,IAAC;AAAA;AAAA,MACG,WAAU;AAAA,MACV,SAAS;AAAA,MACT;AAAA,MACA,oBAAgB,gBAAE,eAAe;AAAA;AAAA,EACrC;AAER;AAEA,IAAO,6BAAQ;",
6
6
  "names": ["defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "icon"]
7
7
  }
@@ -6,34 +6,8 @@ var __create = Object.create;
6
6
  var __defProp = Object.defineProperty;
7
7
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
8
8
  var __getOwnPropNames = Object.getOwnPropertyNames;
9
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
10
9
  var __getProtoOf = Object.getPrototypeOf;
11
10
  var __hasOwnProp = Object.prototype.hasOwnProperty;
12
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
13
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
14
- var __spreadValues = (a, b) => {
15
- for (var prop in b || (b = {}))
16
- if (__hasOwnProp.call(b, prop))
17
- __defNormalProp(a, prop, b[prop]);
18
- if (__getOwnPropSymbols)
19
- for (var prop of __getOwnPropSymbols(b)) {
20
- if (__propIsEnum.call(b, prop))
21
- __defNormalProp(a, prop, b[prop]);
22
- }
23
- return a;
24
- };
25
- var __objRest = (source, exclude) => {
26
- var target = {};
27
- for (var prop in source)
28
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
29
- target[prop] = source[prop];
30
- if (source != null && __getOwnPropSymbols)
31
- for (var prop of __getOwnPropSymbols(source)) {
32
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
33
- target[prop] = source[prop];
34
- }
35
- return target;
36
- };
37
11
  var __export = (target, all) => {
38
12
  for (var name in all)
39
13
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -56,26 +30,6 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
56
30
  mod
57
31
  ));
58
32
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
59
- var __async = (__this, __arguments, generator) => {
60
- return new Promise((resolve, reject) => {
61
- var fulfilled = (value) => {
62
- try {
63
- step(generator.next(value));
64
- } catch (e) {
65
- reject(e);
66
- }
67
- };
68
- var rejected = (value) => {
69
- try {
70
- step(generator.throw(value));
71
- } catch (e) {
72
- reject(e);
73
- }
74
- };
75
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
76
- step((generator = generator.apply(__this, __arguments)).next());
77
- });
78
- };
79
33
 
80
34
  // src/buttons/Fullscreen.tsx
81
35
  var Fullscreen_exports = {};
@@ -174,37 +128,25 @@ var StyledDropdownIcon = styled_components_default(CaretDown_default)`
174
128
  `;
175
129
  var iconSize = 24;
176
130
  var menuIconSize = 20;
177
- var prepareIcon = (_a) => {
178
- var _b = _a, {
179
- Icon,
180
- screenReaderContent,
181
- isMenu = false
182
- } = _b, props = __objRest(_b, [
183
- "Icon",
184
- "screenReaderContent",
185
- "isMenu"
186
- ]);
131
+ var prepareIcon = ({
132
+ Icon,
133
+ screenReaderContent,
134
+ isMenu = false,
135
+ ...props
136
+ }) => {
187
137
  const size = isMenu ? menuIconSize : iconSize;
188
- return /* @__PURE__ */ react_default.createElement(react_default.Fragment, null, /* @__PURE__ */ react_default.createElement(Icon, __spreadValues({ width: size, height: size }, props)), isMenu && /* @__PURE__ */ react_default.createElement(StyledDropdownIcon, { variant: "filled", width: 9, height: size }), screenReaderContent && /* @__PURE__ */ react_default.createElement(ScreenReaderContent_default, null, screenReaderContent));
138
+ return /* @__PURE__ */ react_default.createElement(react_default.Fragment, null, /* @__PURE__ */ react_default.createElement(Icon, { width: size, height: size, ...props }), isMenu && /* @__PURE__ */ react_default.createElement(StyledDropdownIcon, { variant: "filled", width: 9, height: size }), screenReaderContent && /* @__PURE__ */ react_default.createElement(ScreenReaderContent_default, null, screenReaderContent));
189
139
  };
190
- var IconButton = (_a) => {
191
- var _b = _a, {
192
- icon: icon2,
193
- buttonRef,
194
- disabled = false,
195
- onClick,
196
- label,
197
- tooltipContent,
198
- testLabel
199
- } = _b, rest = __objRest(_b, [
200
- "icon",
201
- "buttonRef",
202
- "disabled",
203
- "onClick",
204
- "label",
205
- "tooltipContent",
206
- "testLabel"
207
- ]);
140
+ var IconButton = ({
141
+ icon: icon2,
142
+ buttonRef,
143
+ disabled = false,
144
+ onClick,
145
+ label,
146
+ tooltipContent,
147
+ testLabel,
148
+ ...rest
149
+ }) => {
208
150
  const button = /* @__PURE__ */ react_default.createElement(
209
151
  Button_default,
210
152
  {
@@ -218,7 +160,7 @@ var IconButton = (_a) => {
218
160
  "data-clickable": true
219
161
  }
220
162
  );
221
- return /* @__PURE__ */ react_default.createElement(Item_default, __spreadValues({}, rest), tooltipContent ? /* @__PURE__ */ react_default.createElement(Tooltip_default, { contentRelationship: "label", content: tooltipContent }, button) : button);
163
+ return /* @__PURE__ */ react_default.createElement(Item_default, { ...rest }, tooltipContent ? /* @__PURE__ */ react_default.createElement(Tooltip_default, { contentRelationship: "label", content: tooltipContent }, button) : button);
222
164
  };
223
165
  var IconButton_default = IconButton;
224
166
 
@@ -234,7 +176,7 @@ var useToolbarButtonClick = (event, onClick) => {
234
176
  })
235
177
  );
236
178
  }
237
- onClick == null ? void 0 : onClick(...args);
179
+ onClick?.(...args);
238
180
  },
239
181
  [dispatch, event, onClick]
240
182
  );
@@ -246,9 +188,9 @@ var icon = prepareIcon({
246
188
  });
247
189
  var FullScreen = ({ dashboardApi }) => {
248
190
  const isFullscreen = !!(0, dashboard_state_exports.useSelector)(dashboard_state_exports.selectFullscreenElement);
249
- const enterFullscreen = (0, react_exports.useCallback)(() => __async(null, null, function* () {
250
- yield dashboardApi == null ? void 0 : dashboardApi.enterFullscreen();
251
- }), [dashboardApi]);
191
+ const enterFullscreen = (0, react_exports.useCallback)(async () => {
192
+ await dashboardApi?.enterFullscreen();
193
+ }, [dashboardApi]);
252
194
  const handleClick = useToolbarButtonClick("fullscreen", enterFullscreen);
253
195
  return /* @__PURE__ */ react_default.createElement(
254
196
  IconButton_default,