@splunk/dashboard-toolbar 29.1.0 → 29.3.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 (232) hide show
  1. package/CollapsibleToolbar.js +7 -13
  2. package/CollapsibleToolbar.js.map +2 -2
  3. package/IconButton.js +4 -5
  4. package/IconButton.js.map +1 -1
  5. package/ItemGroup.js +2 -3
  6. package/ItemGroup.js.map +1 -1
  7. package/PopoverItemButton.js +1 -2
  8. package/PopoverItemButton.js.map +1 -1
  9. package/Toolbar.js +2 -3
  10. package/Toolbar.js.map +1 -1
  11. package/buttons/Charts.js +8 -9
  12. package/buttons/Charts.js.map +1 -1
  13. package/buttons/Config.js +6 -7
  14. package/buttons/Config.js.map +1 -1
  15. package/buttons/ContentExport.js +6 -7
  16. package/buttons/ContentExport.js.map +1 -1
  17. package/buttons/Data.js +6 -7
  18. package/buttons/Data.js.map +1 -1
  19. package/buttons/EmptyVisualization.js +6 -7
  20. package/buttons/EmptyVisualization.js.map +1 -1
  21. package/buttons/ExportDashboardButton.js +9 -17
  22. package/buttons/ExportDashboardButton.js.map +4 -4
  23. package/buttons/Fullscreen.js +6 -7
  24. package/buttons/Fullscreen.js.map +1 -1
  25. package/buttons/GridLineSwitch.js +2 -3
  26. package/buttons/GridLineSwitch.js.map +1 -1
  27. package/buttons/HelpButton.js +6 -9
  28. package/buttons/HelpButton.js.map +2 -2
  29. package/buttons/IconGallery.js +6 -7
  30. package/buttons/IconGallery.js.map +1 -1
  31. package/buttons/Image.js +6 -7
  32. package/buttons/Image.js.map +1 -1
  33. package/buttons/ImageGallery.js +6 -7
  34. package/buttons/ImageGallery.js.map +1 -1
  35. package/buttons/Inputs.js +8 -9
  36. package/buttons/Inputs.js.map +1 -1
  37. package/buttons/Markdown.js +6 -7
  38. package/buttons/Markdown.js.map +1 -1
  39. package/buttons/ModeSwitch.js +2 -3
  40. package/buttons/ModeSwitch.js.map +1 -1
  41. package/buttons/Redo.js +6 -7
  42. package/buttons/Redo.js.map +1 -1
  43. package/buttons/Shapes.js +7 -8
  44. package/buttons/Shapes.js.map +1 -1
  45. package/buttons/Source.js +44 -22
  46. package/buttons/Source.js.map +4 -4
  47. package/buttons/Undo.js +6 -7
  48. package/buttons/Undo.js.map +1 -1
  49. package/buttons/index.js +343 -204
  50. package/buttons/index.js.map +4 -4
  51. package/groups/ActionsGroup.js +4 -5
  52. package/groups/ActionsGroup.js.map +1 -1
  53. package/groups/ControlGroup.js +111 -106
  54. package/groups/ControlGroup.js.map +4 -4
  55. package/groups/EditingGroup.js +129 -127
  56. package/groups/EditingGroup.js.map +4 -4
  57. package/groups/EditorGroup.js +133 -114
  58. package/groups/EditorGroup.js.map +4 -4
  59. package/groups/EditorsControlGroup.js +150 -131
  60. package/groups/EditorsControlGroup.js.map +4 -4
  61. package/groups/HistoryGroup.js +113 -108
  62. package/groups/HistoryGroup.js.map +4 -4
  63. package/groups/SidebarControlGroup.js +115 -110
  64. package/groups/SidebarControlGroup.js.map +4 -4
  65. package/groups/VisualizationGroup.js +131 -126
  66. package/groups/VisualizationGroup.js.map +4 -4
  67. package/groups/index.js +181 -165
  68. package/groups/index.js.map +4 -4
  69. package/index.js +327 -193
  70. package/index.js.map +4 -4
  71. package/module/CollapsibleToolbar.js +11 -11
  72. package/module/IconButton.js +6 -6
  73. package/module/Item.js +3 -3
  74. package/module/ItemGroup.js +7 -7
  75. package/module/PopoverItemButton.js +4 -4
  76. package/module/Toolbar.js +6 -6
  77. package/module/buttons/Charts.js +15 -15
  78. package/module/buttons/Config.js +9 -9
  79. package/module/buttons/ContentExport.js +9 -9
  80. package/module/buttons/Data.js +10 -10
  81. package/module/buttons/EmptyVisualization.js +9 -9
  82. package/module/buttons/ExportDashboardButton.js +7 -8
  83. package/module/buttons/Fullscreen.js +9 -9
  84. package/module/buttons/GridLineSwitch.js +8 -8
  85. package/module/buttons/HelpButton.js +11 -11
  86. package/module/buttons/IconGallery.js +11 -11
  87. package/module/buttons/Image.js +9 -9
  88. package/module/buttons/ImageGallery.js +12 -12
  89. package/module/buttons/Inputs.js +11 -11
  90. package/module/buttons/Markdown.js +8 -8
  91. package/module/buttons/ModeSwitch.js +9 -9
  92. package/module/buttons/Redo.js +8 -8
  93. package/module/buttons/Shapes.js +13 -13
  94. package/module/buttons/Source.js +9 -8
  95. package/module/buttons/Undo.js +8 -8
  96. package/module/buttons/index.js +44 -40
  97. package/module/chunks/{chunk-HTZYYFJO.js → chunk-2KBENXG3.js} +2 -2
  98. package/module/chunks/{chunk-CXXSJOFS.js → chunk-2QBSLWJJ.js} +2 -2
  99. package/module/chunks/{chunk-LKIWD6NR.js → chunk-3MBRWVZS.js} +11 -14
  100. package/module/chunks/chunk-3MBRWVZS.js.map +7 -0
  101. package/module/chunks/{chunk-AD6EIRYL.js → chunk-47MSCQAS.js} +10 -11
  102. package/module/chunks/{chunk-AD6EIRYL.js.map → chunk-47MSCQAS.js.map} +1 -1
  103. package/module/chunks/chunk-4NRVBOUP.js +28 -0
  104. package/module/chunks/{chunk-2G23SAZZ.js.map → chunk-4NRVBOUP.js.map} +1 -1
  105. package/module/chunks/{chunk-UERW7LTA.js → chunk-4Y6PRJOC.js} +7 -8
  106. package/module/chunks/{chunk-UERW7LTA.js.map → chunk-4Y6PRJOC.js.map} +1 -1
  107. package/module/chunks/{chunk-SMDUMR2P.js → chunk-56627Y63.js} +12 -13
  108. package/module/chunks/{chunk-SMDUMR2P.js.map → chunk-56627Y63.js.map} +1 -1
  109. package/module/chunks/{chunk-3QT355V5.js → chunk-5D7CUYUH.js} +2 -2
  110. package/module/chunks/{chunk-TLNR3NED.js → chunk-5FZAZ2XU.js} +8 -9
  111. package/module/chunks/{chunk-TLNR3NED.js.map → chunk-5FZAZ2XU.js.map} +1 -1
  112. package/module/chunks/{chunk-AG73TP3S.js → chunk-6MLJBCIJ.js} +9 -12
  113. package/module/chunks/{chunk-AG73TP3S.js.map → chunk-6MLJBCIJ.js.map} +1 -1
  114. package/module/chunks/{chunk-GIXERSIF.js → chunk-6SUOFSGJ.js} +9 -10
  115. package/module/chunks/{chunk-GIXERSIF.js.map → chunk-6SUOFSGJ.js.map} +1 -1
  116. package/module/chunks/{chunk-3NDLE64O.js → chunk-ACSHFRXI.js} +7 -8
  117. package/module/chunks/{chunk-3NDLE64O.js.map → chunk-ACSHFRXI.js.map} +1 -1
  118. package/module/chunks/{chunk-Q4EASNDZ.js → chunk-BSXRAEA2.js} +9 -10
  119. package/module/chunks/{chunk-Q4EASNDZ.js.map → chunk-BSXRAEA2.js.map} +1 -1
  120. package/module/chunks/{chunk-SELLU76G.js → chunk-C3NA7YCT.js} +7 -10
  121. package/module/chunks/{chunk-SELLU76G.js.map → chunk-C3NA7YCT.js.map} +1 -1
  122. package/module/chunks/{chunk-LATZ7CUV.js → chunk-D27CPPHI.js} +4 -7
  123. package/module/chunks/{chunk-LATZ7CUV.js.map → chunk-D27CPPHI.js.map} +1 -1
  124. package/module/chunks/{chunk-HXK4QHPR.js → chunk-FREEN2T3.js} +3 -3
  125. package/module/chunks/{chunk-I7XN7DKU.js → chunk-GAXH7J77.js} +2 -2
  126. package/module/chunks/{chunk-5TGHI5GV.js → chunk-GFSNM45K.js} +2 -2
  127. package/module/chunks/{chunk-L2MCGOFY.js → chunk-HOKI2CUB.js} +2 -2
  128. package/module/chunks/{chunk-QPUZLO5O.js → chunk-IIPBKMJD.js} +2 -2
  129. package/module/chunks/{chunk-JHFAWC4B.js → chunk-IITJ2NKO.js} +8 -9
  130. package/module/chunks/{chunk-JHFAWC4B.js.map → chunk-IITJ2NKO.js.map} +1 -1
  131. package/module/chunks/{chunk-KDMM6KX4.js → chunk-JGTSF7O4.js} +8 -9
  132. package/module/chunks/{chunk-KDMM6KX4.js.map → chunk-JGTSF7O4.js.map} +1 -1
  133. package/module/chunks/{chunk-3R73WRRN.js → chunk-JOFJS4UX.js} +13 -14
  134. package/module/chunks/{chunk-3R73WRRN.js.map → chunk-JOFJS4UX.js.map} +1 -1
  135. package/module/chunks/{chunk-ZCC73T4R.js → chunk-K4QITIOD.js} +31 -15
  136. package/module/chunks/chunk-K4QITIOD.js.map +7 -0
  137. package/module/chunks/{chunk-DU4JCIM3.js → chunk-KUPEYUWA.js} +2 -2
  138. package/module/chunks/{chunk-GUWB2JIP.js → chunk-L3N7HHJU.js} +10 -11
  139. package/module/chunks/{chunk-GUWB2JIP.js.map → chunk-L3N7HHJU.js.map} +1 -1
  140. package/module/chunks/{chunk-YBGLF5LF.js → chunk-LGNNSZ2O.js} +13 -14
  141. package/module/chunks/{chunk-YBGLF5LF.js.map → chunk-LGNNSZ2O.js.map} +1 -1
  142. package/module/chunks/chunk-MFIWFQAS.js +31 -0
  143. package/module/chunks/{chunk-FLMBGMR4.js.map → chunk-MFIWFQAS.js.map} +1 -1
  144. package/module/chunks/{chunk-BDLV2ADM.js → chunk-MRXRYL4Y.js} +3 -3
  145. package/module/chunks/{chunk-2GRHFRZD.js → chunk-MTPPRK4H.js} +14 -15
  146. package/module/chunks/{chunk-2GRHFRZD.js.map → chunk-MTPPRK4H.js.map} +1 -1
  147. package/module/chunks/{chunk-ANTP4L4N.js → chunk-MWYPBMHI.js} +13 -14
  148. package/module/chunks/{chunk-ANTP4L4N.js.map → chunk-MWYPBMHI.js.map} +1 -1
  149. package/module/chunks/{chunk-WPBXWBTX.js → chunk-NKC5QFQ5.js} +7 -8
  150. package/module/chunks/{chunk-WPBXWBTX.js.map → chunk-NKC5QFQ5.js.map} +1 -1
  151. package/module/chunks/{chunk-4L4BWEM7.js → chunk-O74T4JNL.js} +2 -2
  152. package/module/chunks/{chunk-AIH4ILPH.js → chunk-ODHRJQTV.js} +11 -15
  153. package/module/chunks/chunk-ODHRJQTV.js.map +7 -0
  154. package/module/chunks/{chunk-PMXVITCC.js → chunk-OSX3RDKV.js} +2 -2
  155. package/module/chunks/{chunk-E5POXMHH.js → chunk-PMZ2AWNS.js} +11 -12
  156. package/module/chunks/{chunk-E5POXMHH.js.map → chunk-PMZ2AWNS.js.map} +1 -1
  157. package/module/chunks/{chunk-5CXOMUN4.js → chunk-PVT2JFAW.js} +6 -7
  158. package/module/chunks/{chunk-5CXOMUN4.js.map → chunk-PVT2JFAW.js.map} +1 -1
  159. package/module/chunks/{chunk-3DNLXDXA.js → chunk-Q67T3UVN.js} +8 -9
  160. package/module/chunks/{chunk-3DNLXDXA.js.map → chunk-Q67T3UVN.js.map} +1 -1
  161. package/module/chunks/{chunk-HPEHWRJP.js → chunk-QSKQE2FQ.js} +190 -62
  162. package/module/chunks/chunk-QSKQE2FQ.js.map +7 -0
  163. package/module/chunks/{chunk-N3HJVTLY.js → chunk-RIR6YMJC.js} +17 -23
  164. package/module/chunks/chunk-RIR6YMJC.js.map +7 -0
  165. package/module/chunks/{chunk-BXDA2XH4.js → chunk-RQY6BB7F.js} +2 -2
  166. package/module/chunks/{chunk-6L4PTRMO.js → chunk-RZJ2PCV4.js} +2 -2
  167. package/module/chunks/{chunk-7CJM54O3.js → chunk-UOT4CE2C.js} +8 -11
  168. package/module/chunks/{chunk-7CJM54O3.js.map → chunk-UOT4CE2C.js.map} +1 -1
  169. package/module/chunks/{chunk-4PUMQWA5.js → chunk-VCWH2JHM.js} +5 -6
  170. package/module/chunks/{chunk-4PUMQWA5.js.map → chunk-VCWH2JHM.js.map} +1 -1
  171. package/module/chunks/{chunk-PHOUPWEN.js → chunk-VE4HUG27.js} +2 -2
  172. package/module/chunks/{chunk-B5OBVUF5.js → chunk-VQIRZ53C.js} +1 -3
  173. package/module/chunks/{chunk-SRI3BMZH.js → chunk-WADWICSE.js} +9 -10
  174. package/module/chunks/{chunk-SRI3BMZH.js.map → chunk-WADWICSE.js.map} +1 -1
  175. package/module/chunks/{chunk-AROBR6WM.js → chunk-X4VCE6GS.js} +10 -11
  176. package/module/chunks/{chunk-AROBR6WM.js.map → chunk-X4VCE6GS.js.map} +1 -1
  177. package/module/chunks/{chunk-6VIKADMF.js → chunk-XIZP3DYZ.js} +2 -2
  178. package/module/chunks/{chunk-BR42RPXM.js → chunk-YMZGQ7CB.js} +8 -9
  179. package/module/chunks/{chunk-BR42RPXM.js.map → chunk-YMZGQ7CB.js.map} +1 -1
  180. package/module/chunks/{chunk-SPVRIPCR.js → chunk-ZSBWP6MR.js} +18 -19
  181. package/module/chunks/{chunk-SPVRIPCR.js.map → chunk-ZSBWP6MR.js.map} +1 -1
  182. package/module/groups/ActionsGroup.js +7 -7
  183. package/module/groups/ControlGroup.js +42 -42
  184. package/module/groups/EditingGroup.js +42 -42
  185. package/module/groups/EditorGroup.js +42 -42
  186. package/module/groups/EditorsControlGroup.js +42 -42
  187. package/module/groups/HistoryGroup.js +42 -42
  188. package/module/groups/SidebarControlGroup.js +42 -42
  189. package/module/groups/VisualizationGroup.js +42 -42
  190. package/module/groups/index.js +49 -49
  191. package/module/index.js +55 -51
  192. package/package.json +24 -26
  193. package/types/CollapsibleToolbar.d.ts.map +1 -1
  194. package/types/buttons/AIAssistant/AIAssistant.d.ts +3 -0
  195. package/types/buttons/AIAssistant/AIAssistant.d.ts.map +1 -0
  196. package/types/buttons/AIAssistant/index.d.ts +2 -0
  197. package/types/buttons/AIAssistant/index.d.ts.map +1 -0
  198. package/types/buttons/Display/Display.d.ts +8 -0
  199. package/types/buttons/Display/Display.d.ts.map +1 -0
  200. package/types/buttons/Display/index.d.ts +2 -0
  201. package/types/buttons/Display/index.d.ts.map +1 -0
  202. package/types/buttons/ExportDashboardButton.d.ts.map +1 -1
  203. package/types/buttons/HelpButton.d.ts.map +1 -1
  204. package/types/buttons/Source.d.ts +1 -1
  205. package/types/buttons/Source.d.ts.map +1 -1
  206. package/types/buttons/Zoom/Zoom.d.ts.map +1 -1
  207. package/types/buttons/index.d.ts +2 -0
  208. package/types/buttons/index.d.ts.map +1 -1
  209. package/module/chunks/chunk-2G23SAZZ.js +0 -29
  210. package/module/chunks/chunk-AIH4ILPH.js.map +0 -7
  211. package/module/chunks/chunk-FLMBGMR4.js +0 -32
  212. package/module/chunks/chunk-HPEHWRJP.js.map +0 -7
  213. package/module/chunks/chunk-LKIWD6NR.js.map +0 -7
  214. package/module/chunks/chunk-N3HJVTLY.js.map +0 -7
  215. package/module/chunks/chunk-ZCC73T4R.js.map +0 -7
  216. /package/module/chunks/{chunk-HTZYYFJO.js.map → chunk-2KBENXG3.js.map} +0 -0
  217. /package/module/chunks/{chunk-CXXSJOFS.js.map → chunk-2QBSLWJJ.js.map} +0 -0
  218. /package/module/chunks/{chunk-3QT355V5.js.map → chunk-5D7CUYUH.js.map} +0 -0
  219. /package/module/chunks/{chunk-HXK4QHPR.js.map → chunk-FREEN2T3.js.map} +0 -0
  220. /package/module/chunks/{chunk-I7XN7DKU.js.map → chunk-GAXH7J77.js.map} +0 -0
  221. /package/module/chunks/{chunk-5TGHI5GV.js.map → chunk-GFSNM45K.js.map} +0 -0
  222. /package/module/chunks/{chunk-L2MCGOFY.js.map → chunk-HOKI2CUB.js.map} +0 -0
  223. /package/module/chunks/{chunk-QPUZLO5O.js.map → chunk-IIPBKMJD.js.map} +0 -0
  224. /package/module/chunks/{chunk-DU4JCIM3.js.map → chunk-KUPEYUWA.js.map} +0 -0
  225. /package/module/chunks/{chunk-BDLV2ADM.js.map → chunk-MRXRYL4Y.js.map} +0 -0
  226. /package/module/chunks/{chunk-4L4BWEM7.js.map → chunk-O74T4JNL.js.map} +0 -0
  227. /package/module/chunks/{chunk-PMXVITCC.js.map → chunk-OSX3RDKV.js.map} +0 -0
  228. /package/module/chunks/{chunk-BXDA2XH4.js.map → chunk-RQY6BB7F.js.map} +0 -0
  229. /package/module/chunks/{chunk-6L4PTRMO.js.map → chunk-RZJ2PCV4.js.map} +0 -0
  230. /package/module/chunks/{chunk-PHOUPWEN.js.map → chunk-VE4HUG27.js.map} +0 -0
  231. /package/module/chunks/{chunk-B5OBVUF5.js.map → chunk-VQIRZ53C.js.map} +0 -0
  232. /package/module/chunks/{chunk-6VIKADMF.js.map → chunk-XIZP3DYZ.js.map} +0 -0
package/index.js CHANGED
@@ -25,7 +25,6 @@ var __spreadValues = (a, b) => {
25
25
  return a;
26
26
  };
27
27
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
28
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
29
28
  var __objRest = (source, exclude) => {
30
29
  var target = {};
31
30
  for (var prop in source)
@@ -84,6 +83,7 @@ var __async = (__this, __arguments, generator) => {
84
83
  // src/index.ts
85
84
  var src_exports = {};
86
85
  __export(src_exports, {
86
+ AIAssistant: () => AIAssistant,
87
87
  ActionsGroup: () => ActionsGroup_default,
88
88
  Charts: () => Charts_default,
89
89
  CollapsibleToolbar: () => CollapsibleToolbar_default,
@@ -91,6 +91,7 @@ __export(src_exports, {
91
91
  ContentExport: () => ContentExport_default,
92
92
  ControlGroup: () => ControlGroup_default,
93
93
  Data: () => Data_default,
94
+ Display: () => Display,
94
95
  EditingGroup: () => EditingGroup_default,
95
96
  EditorGroup: () => EditorGroup_default,
96
97
  EditorsControlGroup: () => EditorsControlGroup_default,
@@ -240,7 +241,7 @@ var StyledDropdownIcon = styled_components_default(CaretDown_default)`
240
241
  `;
241
242
  var iconSize = 24;
242
243
  var menuIconSize = 20;
243
- var prepareIcon = /* @__PURE__ */ __name((_a) => {
244
+ var prepareIcon = (_a) => {
244
245
  var _b = _a, {
245
246
  Icon,
246
247
  screenReaderContent,
@@ -252,8 +253,8 @@ var prepareIcon = /* @__PURE__ */ __name((_a) => {
252
253
  ]);
253
254
  const size = isMenu ? menuIconSize : iconSize;
254
255
  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));
255
- }, "prepareIcon");
256
- var IconButton = /* @__PURE__ */ __name((_a) => {
256
+ };
257
+ var IconButton = (_a) => {
257
258
  var _b = _a, {
258
259
  icon: icon9,
259
260
  buttonRef,
@@ -282,7 +283,7 @@ var IconButton = /* @__PURE__ */ __name((_a) => {
282
283
  "data-clickable": true
283
284
  }
284
285
  ));
285
- }, "IconButton");
286
+ };
286
287
  var IconButton_default = IconButton;
287
288
 
288
289
  // src/CollapsibleToolbar.tsx
@@ -317,16 +318,10 @@ var transition = styled_components_exports.css`
317
318
  var ExpandButton = styled_components_default(Button_default)`
318
319
  // To get specific enough to override the default Button styling
319
320
  && {
320
- // We shrink the button a bit when the toolbar is expanded since it
321
- // switches to a circle button and needs a bit more space to breath
322
321
  height: ${({ expanded }) => expanded ? `${TOOLBAR_HEIGHT - 4}px` : `${TOOLBAR_HEIGHT}px`};
323
322
  width: ${({ expanded }) => expanded ? `${TOOLBAR_HEIGHT - 4}px` : `${TOOLBAR_HEIGHT}px`};
324
323
  margin: ${({ expanded }) => expanded ? "0 4px 0 4px" : "0"};
325
- padding: 0;
326
- border: none;
327
- box-shadow: none;
328
- background-color: ${themes_exports.variables.backgroundColorNavigation};
329
- border-radius: ${(props) => props.expanded ? "40px" : "0 0 0 20px"};
324
+ border-radius: ${(props) => props.expanded ? "" : "0 0 0 20px"};
330
325
  transition-property: border-radius, height, width, margin-right;
331
326
  ${transition}
332
327
  }
@@ -334,7 +329,7 @@ var ExpandButton = styled_components_default(Button_default)`
334
329
  var expandedIcon = /* @__PURE__ */ react_default.createElement(react_default.Fragment, null, /* @__PURE__ */ react_default.createElement(ChevronRight_default, { width: iconSize, height: iconSize }), /* @__PURE__ */ react_default.createElement(ScreenReaderContent_default, null, (0, i18n_exports._)("Expanded")));
335
330
  var collapsedIcon = /* @__PURE__ */ react_default.createElement(react_default.Fragment, null, /* @__PURE__ */ react_default.createElement(ChevronLeft_default, { width: iconSize, height: iconSize }), /* @__PURE__ */ react_default.createElement(ScreenReaderContent_default, null, (0, i18n_exports._)("Collapsed")));
336
331
  var DEFAULT_PRESET_MAP = Object.freeze({});
337
- var CollapsibleToolbar = /* @__PURE__ */ __name(({
332
+ var CollapsibleToolbar = ({
338
333
  preset = DEFAULT_PRESET_MAP,
339
334
  dashboardApi,
340
335
  initialExpanded = true,
@@ -366,9 +361,9 @@ var CollapsibleToolbar = /* @__PURE__ */ __name(({
366
361
  );
367
362
  (0, react_exports.useEffect)(() => {
368
363
  const toolbarApiRef = {
369
- toggle: /* @__PURE__ */ __name(() => handleExpandToggle(), "toggle"),
370
- expand: /* @__PURE__ */ __name(() => setExpanded(true), "expand"),
371
- collapse: /* @__PURE__ */ __name(() => setExpanded(false), "collapse")
364
+ toggle: () => handleExpandToggle(),
365
+ expand: () => setExpanded(true),
366
+ collapse: () => setExpanded(false)
372
367
  };
373
368
  apiRegistry.registerToolbarApi(toolbarApiRef);
374
369
  return () => {
@@ -378,6 +373,7 @@ var CollapsibleToolbar = /* @__PURE__ */ __name(({
378
373
  return /* @__PURE__ */ react_default.createElement(ToolbarWrapper, { "data-test": "dashboard-toolbar" }, /* @__PURE__ */ react_default.createElement(StyledTransitionOpen, { animation: "slideFromRight", open: expanded }, /* @__PURE__ */ react_default.createElement(ToolbarItemsWrapper, { "data-test": "toolbar-items" }, injectedToolbarItems)), /* @__PURE__ */ react_default.createElement(
379
374
  ExpandButton,
380
375
  {
376
+ appearance: "subtle",
381
377
  "data-test": "expand-button",
382
378
  expanded,
383
379
  onClick: handleExpandToggle,
@@ -385,7 +381,7 @@ var CollapsibleToolbar = /* @__PURE__ */ __name(({
385
381
  "data-clickable": true
386
382
  }
387
383
  ));
388
- }, "CollapsibleToolbar");
384
+ };
389
385
  CollapsibleToolbar.displayName = "CollapsibleToolbar";
390
386
  var CollapsibleToolbar_default = CollapsibleToolbar;
391
387
 
@@ -416,7 +412,7 @@ var Group = styled_components_default.div.attrs({
416
412
  flex-direction: row;
417
413
  gap: ${(props) => props.gap};
418
414
  `;
419
- var ItemGroup = /* @__PURE__ */ __name((_a) => {
415
+ var ItemGroup = (_a) => {
420
416
  var _b = _a, {
421
417
  children,
422
418
  borders = true,
@@ -432,7 +428,7 @@ var ItemGroup = /* @__PURE__ */ __name((_a) => {
432
428
  );
433
429
  const separator = borders ? /* @__PURE__ */ react_default.createElement(ItemSeparator_default, null) : null;
434
430
  return /* @__PURE__ */ react_default.createElement(react_default.Fragment, null, /* @__PURE__ */ react_default.createElement(Group, { gap: (0, dashboard_utils_exports.toPx)(gap, 2) }, items), separator);
435
- }, "ItemGroup");
431
+ };
436
432
  var ItemGroup_default = ItemGroup;
437
433
 
438
434
  // src/PopoverItemButton.tsx
@@ -452,7 +448,7 @@ var StyledLabel = styled_components_default.span`
452
448
  overflow: hidden;
453
449
  flex: 0 1 auto;
454
450
  `;
455
- var PopoverItemButton = /* @__PURE__ */ __name(({ icon: icon9, label }) => /* @__PURE__ */ react_default.createElement(StyledContentWrapper, null, icon9 && /* @__PURE__ */ react_default.createElement(StyledIcon, null, icon9), label && /* @__PURE__ */ react_default.createElement(StyledLabel, { "data-test": "label-title" }, label)), "PopoverItemButton");
451
+ var PopoverItemButton = ({ icon: icon9, label }) => /* @__PURE__ */ react_default.createElement(StyledContentWrapper, null, icon9 && /* @__PURE__ */ react_default.createElement(StyledIcon, null, icon9), label && /* @__PURE__ */ react_default.createElement(StyledLabel, { "data-test": "label-title" }, label));
456
452
  var PopoverItemButton_default = PopoverItemButton;
457
453
 
458
454
  // esm-externals:@splunk/themes/mixins
@@ -490,7 +486,7 @@ var RightAlignItems = styled_components_default.div`
490
486
  gap: ${themes_exports.variables.spacingSmall};
491
487
  margin-inline-end: ${themes_exports.variables.spacingSmall};
492
488
  `;
493
- var Toolbar = /* @__PURE__ */ __name(({
489
+ var Toolbar = ({
494
490
  activePanel,
495
491
  dashboardApi,
496
492
  mode,
@@ -567,48 +563,101 @@ var Toolbar = /* @__PURE__ */ __name(({
567
563
  },
568
564
  rightAlignItems
569
565
  ));
570
- }, "Toolbar");
566
+ };
571
567
  Toolbar.displayName = "Toolbar";
572
568
  var Toolbar_default = Toolbar;
573
569
 
570
+ // esm-externals:@splunk/dashboard-ui
571
+ var dashboard_ui_exports = {};
572
+ __export(dashboard_ui_exports, {
573
+ default: () => dashboard_ui_default
574
+ });
575
+ var defaultImport15 = __toESM(require("@splunk/dashboard-ui"));
576
+ __reExport(dashboard_ui_exports, require("@splunk/dashboard-ui"));
577
+ var dashboard_ui_default = "default" in defaultImport15 ? defaultImport15.default : defaultImport15;
578
+
579
+ // esm-externals:@splunk/react-ui/Tooltip
580
+ var Tooltip_exports = {};
581
+ __export(Tooltip_exports, {
582
+ default: () => Tooltip_default
583
+ });
584
+ var defaultImport16 = __toESM(require("@splunk/react-ui/Tooltip"));
585
+ __reExport(Tooltip_exports, require("@splunk/react-ui/Tooltip"));
586
+ var Tooltip_default = "default" in defaultImport16 ? defaultImport16.default : defaultImport16;
587
+
588
+ // src/buttons/AIAssistant/AIAssistant.tsx
589
+ var aiButtonStyle = { height: "100%" };
590
+ var EmptyComponent = () => null;
591
+ var AIAssistant = () => {
592
+ var _a;
593
+ const { allowDashboardAIAssistant } = (0, dashboard_context_exports.useFeatureFlags)();
594
+ const { AIButton } = (_a = (0, dashboard_context_exports.useMicrofrontendContext)().microfrontendProxy) != null ? _a : {};
595
+ const dashboardApi = (0, dashboard_context_exports.useDashboardApi)();
596
+ const { colorScheme, density, family } = (0, themes_exports.useSplunkTheme)();
597
+ const handleError = (0, react_exports.useCallback)((error) => {
598
+ dashboard_utils_exports.console.error((0, i18n_exports._)("Error loading AI Assistant:"), error);
599
+ return /* @__PURE__ */ react_default.createElement(EmptyComponent, null);
600
+ }, []);
601
+ const handleClick = (0, react_exports.useCallback)(() => {
602
+ dashboardApi.openPanel({
603
+ activePanel: "config",
604
+ panelProps: {
605
+ showAIPanel: true
606
+ }
607
+ });
608
+ }, [dashboardApi]);
609
+ if (!allowDashboardAIAssistant || !AIButton) {
610
+ return null;
611
+ }
612
+ return /* @__PURE__ */ react_default.createElement(dashboard_ui_exports.ErrorBoundary, { render: handleError }, /* @__PURE__ */ react_default.createElement(Item_default, null, /* @__PURE__ */ react_default.createElement(react_exports.Suspense, { key: "ai-assistant", fallback: null }, /* @__PURE__ */ react_default.createElement(
613
+ Tooltip_default,
614
+ {
615
+ contentRelationship: "label",
616
+ content: (0, i18n_exports._)("AI Assistant")
617
+ },
618
+ /* @__PURE__ */ react_default.createElement(
619
+ AIButton,
620
+ {
621
+ "data-test": "ai-button",
622
+ onClick: handleClick,
623
+ colorScheme,
624
+ style: aiButtonStyle,
625
+ density,
626
+ family
627
+ }
628
+ )
629
+ ))));
630
+ };
631
+
574
632
  // esm-externals:@splunk/react-ui/Dropdown
575
633
  var Dropdown_exports = {};
576
634
  __export(Dropdown_exports, {
577
635
  default: () => Dropdown_default
578
636
  });
579
- var defaultImport15 = __toESM(require("@splunk/react-ui/Dropdown"));
637
+ var defaultImport17 = __toESM(require("@splunk/react-ui/Dropdown"));
580
638
  __reExport(Dropdown_exports, require("@splunk/react-ui/Dropdown"));
581
- var Dropdown_default = "default" in defaultImport15 ? defaultImport15.default : defaultImport15;
639
+ var Dropdown_default = "default" in defaultImport17 ? defaultImport17.default : defaultImport17;
582
640
 
583
641
  // esm-externals:@splunk/react-ui/Menu
584
642
  var Menu_exports = {};
585
643
  __export(Menu_exports, {
586
644
  default: () => Menu_default
587
645
  });
588
- var defaultImport16 = __toESM(require("@splunk/react-ui/Menu"));
646
+ var defaultImport18 = __toESM(require("@splunk/react-ui/Menu"));
589
647
  __reExport(Menu_exports, require("@splunk/react-ui/Menu"));
590
- var Menu_default = "default" in defaultImport16 ? defaultImport16.default : defaultImport16;
648
+ var Menu_default = "default" in defaultImport18 ? defaultImport18.default : defaultImport18;
591
649
 
592
650
  // esm-externals:@splunk/react-icons/ChartColumn
593
651
  var ChartColumn_exports = {};
594
652
  __export(ChartColumn_exports, {
595
653
  default: () => ChartColumn_default
596
654
  });
597
- var defaultImport17 = __toESM(require("@splunk/react-icons/ChartColumn"));
655
+ var defaultImport19 = __toESM(require("@splunk/react-icons/ChartColumn"));
598
656
  __reExport(ChartColumn_exports, require("@splunk/react-icons/ChartColumn"));
599
- var ChartColumn_default = "default" in defaultImport17 ? defaultImport17.default : defaultImport17;
600
-
601
- // esm-externals:@splunk/dashboard-ui
602
- var dashboard_ui_exports = {};
603
- __export(dashboard_ui_exports, {
604
- default: () => dashboard_ui_default
605
- });
606
- var defaultImport18 = __toESM(require("@splunk/dashboard-ui"));
607
- __reExport(dashboard_ui_exports, require("@splunk/dashboard-ui"));
608
- var dashboard_ui_default = "default" in defaultImport18 ? defaultImport18.default : defaultImport18;
657
+ var ChartColumn_default = "default" in defaultImport19 ? defaultImport19.default : defaultImport19;
609
658
 
610
659
  // src/hooks/useDropdown.ts
611
- var useDropdown = /* @__PURE__ */ __name(({
660
+ var useDropdown = ({
612
661
  isContentClickClose = true
613
662
  }) => {
614
663
  const [isOpen, setIsOpen] = (0, react_exports.useState)(false);
@@ -641,7 +690,7 @@ var useDropdown = /* @__PURE__ */ __name(({
641
690
  handleForceClose,
642
691
  setHasChildModal
643
692
  };
644
- }, "useDropdown");
693
+ };
645
694
  var useDropdown_default = useDropdown;
646
695
 
647
696
  // src/components/StyledButton.tsx
@@ -677,7 +726,7 @@ var focusToggleReasons = [
677
726
  "escapeKey",
678
727
  "tabKey"
679
728
  ];
680
- var getVisualizationListFromTaxonomy = /* @__PURE__ */ __name(({
729
+ var getVisualizationListFromTaxonomy = ({
681
730
  taxonomy,
682
731
  handleCreateVisualization
683
732
  }) => taxonomy.reduce(
@@ -713,8 +762,8 @@ var getVisualizationListFromTaxonomy = /* @__PURE__ */ __name(({
713
762
  );
714
763
  },
715
764
  []
716
- ), "getVisualizationListFromTaxonomy");
717
- var Charts = /* @__PURE__ */ __name(({ dashboardApi, preset }) => {
765
+ );
766
+ var Charts = ({ dashboardApi, preset }) => {
718
767
  const { showNewDataForViz = true } = (0, dashboard_context_exports.useFeatureFlags)();
719
768
  const { family } = (0, themes_exports.useSplunkTheme)();
720
769
  const { handleForceClose, handleRequestClose, handleRequestOpen, isOpen } = useDropdown_default({
@@ -784,7 +833,7 @@ var Charts = /* @__PURE__ */ __name(({ dashboardApi, preset }) => {
784
833
  },
785
834
  renderScrollableMenu
786
835
  ));
787
- }, "Charts");
836
+ };
788
837
  var Charts_default = Charts;
789
838
 
790
839
  // esm-externals:@splunk/react-icons/Cog
@@ -792,16 +841,16 @@ var Cog_exports = {};
792
841
  __export(Cog_exports, {
793
842
  default: () => Cog_default
794
843
  });
795
- var defaultImport19 = __toESM(require("@splunk/react-icons/Cog"));
844
+ var defaultImport20 = __toESM(require("@splunk/react-icons/Cog"));
796
845
  __reExport(Cog_exports, require("@splunk/react-icons/Cog"));
797
- var Cog_default = "default" in defaultImport19 ? defaultImport19.default : defaultImport19;
846
+ var Cog_default = "default" in defaultImport20 ? defaultImport20.default : defaultImport20;
798
847
 
799
848
  // src/buttons/Config.tsx
800
849
  var configurationIcon = prepareIcon({
801
850
  Icon: Cog_default,
802
851
  screenReaderContent: (0, i18n_exports._)("Configuration")
803
852
  });
804
- var Config = /* @__PURE__ */ __name(({ dashboardApi }) => {
853
+ var Config = ({ dashboardApi }) => {
805
854
  const configButtonRef = (0, dashboard_context_exports.useToolbarRef)("config");
806
855
  const handleClick = (0, react_exports.useCallback)(() => {
807
856
  const isOpen = (dashboardApi == null ? void 0 : dashboardApi.getOpenedPanel()) === "config";
@@ -825,7 +874,7 @@ var Config = /* @__PURE__ */ __name(({ dashboardApi }) => {
825
874
  icon: configurationIcon
826
875
  }
827
876
  );
828
- }, "Config");
877
+ };
829
878
  var Config_default = Config;
830
879
 
831
880
  // esm-externals:@splunk/react-icons/ArrowBroadUnderbarDown
@@ -833,16 +882,16 @@ var ArrowBroadUnderbarDown_exports = {};
833
882
  __export(ArrowBroadUnderbarDown_exports, {
834
883
  default: () => ArrowBroadUnderbarDown_default
835
884
  });
836
- var defaultImport20 = __toESM(require("@splunk/react-icons/ArrowBroadUnderbarDown"));
885
+ var defaultImport21 = __toESM(require("@splunk/react-icons/ArrowBroadUnderbarDown"));
837
886
  __reExport(ArrowBroadUnderbarDown_exports, require("@splunk/react-icons/ArrowBroadUnderbarDown"));
838
- var ArrowBroadUnderbarDown_default = "default" in defaultImport20 ? defaultImport20.default : defaultImport20;
887
+ var ArrowBroadUnderbarDown_default = "default" in defaultImport21 ? defaultImport21.default : defaultImport21;
839
888
 
840
889
  // src/buttons/ContentExport.tsx
841
890
  var icon = prepareIcon({
842
891
  Icon: ArrowBroadUnderbarDown_default,
843
892
  screenReaderContent: (0, i18n_exports._)("Export")
844
893
  });
845
- var ContentExport = /* @__PURE__ */ __name(({ disabled, onClick }) => /* @__PURE__ */ react_default.createElement(
894
+ var ContentExport = ({ disabled, onClick }) => /* @__PURE__ */ react_default.createElement(
846
895
  IconButton_default,
847
896
  {
848
897
  testLabel: "content-export-button",
@@ -850,7 +899,7 @@ var ContentExport = /* @__PURE__ */ __name(({ disabled, onClick }) => /* @__PURE
850
899
  disabled: !!disabled,
851
900
  icon
852
901
  }
853
- ), "ContentExport");
902
+ );
854
903
  var ContentExport_default = ContentExport;
855
904
 
856
905
  // esm-externals:@splunk/react-icons/CylinderMulti
@@ -858,16 +907,16 @@ var CylinderMulti_exports = {};
858
907
  __export(CylinderMulti_exports, {
859
908
  default: () => CylinderMulti_default
860
909
  });
861
- var defaultImport21 = __toESM(require("@splunk/react-icons/CylinderMulti"));
910
+ var defaultImport22 = __toESM(require("@splunk/react-icons/CylinderMulti"));
862
911
  __reExport(CylinderMulti_exports, require("@splunk/react-icons/CylinderMulti"));
863
- var CylinderMulti_default = "default" in defaultImport21 ? defaultImport21.default : defaultImport21;
912
+ var CylinderMulti_default = "default" in defaultImport22 ? defaultImport22.default : defaultImport22;
864
913
 
865
914
  // src/buttons/Data.tsx
866
915
  var dataInputIcon = prepareIcon({
867
916
  Icon: CylinderMulti_default,
868
917
  screenReaderContent: (0, i18n_exports._)("Data source overview")
869
918
  });
870
- var Data = /* @__PURE__ */ __name(({ dashboardApi }) => {
919
+ var Data = ({ dashboardApi }) => {
871
920
  const dataButtonRef = (0, dashboard_context_exports.useToolbarRef)("dataOverview");
872
921
  const handleClick = (0, react_exports.useCallback)(() => {
873
922
  const isOpen = (dashboardApi == null ? void 0 : dashboardApi.getOpenedPanel()) === "dataOverview";
@@ -894,24 +943,116 @@ var Data = /* @__PURE__ */ __name(({ dashboardApi }) => {
894
943
  icon: dataInputIcon
895
944
  }
896
945
  );
897
- }, "Data");
946
+ };
898
947
  var Data_default = Data;
899
948
 
949
+ // esm-externals:@splunk/react-icons/Checkmark
950
+ var Checkmark_exports = {};
951
+ __export(Checkmark_exports, {
952
+ default: () => Checkmark_default
953
+ });
954
+ var defaultImport23 = __toESM(require("@splunk/react-icons/Checkmark"));
955
+ __reExport(Checkmark_exports, require("@splunk/react-icons/Checkmark"));
956
+ var Checkmark_default = "default" in defaultImport23 ? defaultImport23.default : defaultImport23;
957
+
958
+ // src/buttons/Display/Display.tsx
959
+ var menuStyle = {
960
+ minWidth: "150px"
961
+ };
962
+ var CheckmarkPlaceholder = styled_components_default.span`
963
+ display: inline-block;
964
+ width: 16px;
965
+ `;
966
+ var Display = ({
967
+ appearance = "default",
968
+ dashboardApi
969
+ }) => {
970
+ var _a;
971
+ const globalInputs = (0, dashboard_state_exports.useSelector)(dashboard_state_exports.selectGlobalInputs);
972
+ const hasGlobalInputs = ((_a = globalInputs == null ? void 0 : globalInputs.length) != null ? _a : 0) > 0;
973
+ const areInputsCollapsed = (0, dashboard_state_exports.useSelector)(dashboard_state_exports.selectAreGlobalItemsCollapsed);
974
+ const showInputs = !areInputsCollapsed;
975
+ const handleInputsToggle = (0, react_exports.useCallback)(() => {
976
+ dashboardApi == null ? void 0 : dashboardApi.setAreGlobalInputsCollapsed({
977
+ collapsed: !areInputsCollapsed
978
+ });
979
+ }, [dashboardApi, areInputsCollapsed]);
980
+ const { handleRequestClose, handleRequestOpen, isOpen } = useDropdown_default({
981
+ isContentClickClose: true
982
+ });
983
+ const buttonToggle2 = (0, react_exports.useMemo)(
984
+ () => /* @__PURE__ */ react_default.createElement(
985
+ Button_default,
986
+ {
987
+ "data-clickable": true,
988
+ "data-test": "display-dropdown-button",
989
+ appearance,
990
+ isMenu: true,
991
+ "aria-label": (0, i18n_exports._)("Display options")
992
+ },
993
+ (0, i18n_exports._)("Display")
994
+ ),
995
+ [appearance]
996
+ );
997
+ const checkmarkIcon = (0, react_exports.useMemo)(() => {
998
+ return showInputs ? /* @__PURE__ */ react_default.createElement(Checkmark_default, null) : /* @__PURE__ */ react_default.createElement(CheckmarkPlaceholder, null);
999
+ }, [showInputs]);
1000
+ const dropdownMenuChildren = (0, react_exports.useMemo)(() => {
1001
+ const items = [];
1002
+ if (hasGlobalInputs) {
1003
+ items.push(
1004
+ /* @__PURE__ */ react_default.createElement(
1005
+ Menu_default.Item,
1006
+ {
1007
+ key: "inputs-item",
1008
+ "data-test": "inputs-menu-item",
1009
+ onClick: handleInputsToggle,
1010
+ startAdornment: checkmarkIcon
1011
+ },
1012
+ (0, i18n_exports._)("Inputs")
1013
+ )
1014
+ );
1015
+ }
1016
+ return items;
1017
+ }, [hasGlobalInputs, handleInputsToggle, checkmarkIcon]);
1018
+ if (dropdownMenuChildren.length === 0) {
1019
+ return null;
1020
+ }
1021
+ return /* @__PURE__ */ react_default.createElement(Tooltip_default, { contentRelationship: "label", content: (0, i18n_exports._)("Display") }, /* @__PURE__ */ react_default.createElement(
1022
+ Dropdown_default,
1023
+ {
1024
+ onRequestClose: handleRequestClose,
1025
+ onRequestOpen: handleRequestOpen,
1026
+ open: isOpen,
1027
+ toggle: buttonToggle2
1028
+ },
1029
+ /* @__PURE__ */ react_default.createElement(
1030
+ Menu_default,
1031
+ {
1032
+ style: menuStyle,
1033
+ focusMode: "normal",
1034
+ "aria-label": (0, i18n_exports._)("Display options")
1035
+ },
1036
+ dropdownMenuChildren
1037
+ )
1038
+ ));
1039
+ };
1040
+
900
1041
  // esm-externals:@splunk/react-icons/Square
901
1042
  var Square_exports = {};
902
1043
  __export(Square_exports, {
903
1044
  default: () => Square_default
904
1045
  });
905
- var defaultImport22 = __toESM(require("@splunk/react-icons/Square"));
1046
+ var defaultImport24 = __toESM(require("@splunk/react-icons/Square"));
906
1047
  __reExport(Square_exports, require("@splunk/react-icons/Square"));
907
- var Square_default = "default" in defaultImport22 ? defaultImport22.default : defaultImport22;
1048
+ var Square_default = "default" in defaultImport24 ? defaultImport24.default : defaultImport24;
908
1049
 
909
1050
  // src/buttons/EmptyVisualization.tsx
910
1051
  var icon2 = prepareIcon({
911
1052
  Icon: Square_default,
912
1053
  screenReaderContent: (0, i18n_exports._)("Add rectangle")
913
1054
  });
914
- var EmptyVisualization = /* @__PURE__ */ __name(({ dashboardApi }) => {
1055
+ var EmptyVisualization = ({ dashboardApi }) => {
915
1056
  const handleClick = (0, react_exports.useCallback)(() => __async(null, null, function* () {
916
1057
  dashboardApi == null ? void 0 : dashboardApi.createVisualization({
917
1058
  visualizationDefinition: {
@@ -934,16 +1075,17 @@ var EmptyVisualization = /* @__PURE__ */ __name(({ dashboardApi }) => {
934
1075
  icon: icon2
935
1076
  }
936
1077
  );
937
- }, "EmptyVisualization");
1078
+ };
938
1079
  var EmptyVisualization_default = EmptyVisualization;
939
1080
 
940
1081
  // src/buttons/ExportDashboardButton.tsx
941
1082
  var downloadIcon = /* @__PURE__ */ react_default.createElement(ArrowBroadUnderbarDown_default, null);
942
- var ExportDashboardButton = /* @__PURE__ */ __name(({
1083
+ var ExportDashboardButton = ({
943
1084
  appearance = "secondary",
944
1085
  scale = 1
945
1086
  }) => {
946
1087
  const [open, setOpen] = (0, react_exports.useState)(false);
1088
+ const buttonRef = (0, react_exports.useRef)(null);
947
1089
  const handleOpen = (0, react_exports.useCallback)(() => {
948
1090
  setOpen(true);
949
1091
  }, []);
@@ -953,6 +1095,7 @@ var ExportDashboardButton = /* @__PURE__ */ __name(({
953
1095
  return /* @__PURE__ */ react_default.createElement(react_default.Fragment, null, /* @__PURE__ */ react_default.createElement(
954
1096
  Button_default,
955
1097
  {
1098
+ elementRef: buttonRef,
956
1099
  icon: downloadIcon,
957
1100
  key: "export-dashboard-button",
958
1101
  "data-clickable": true,
@@ -967,10 +1110,10 @@ var ExportDashboardButton = /* @__PURE__ */ __name(({
967
1110
  open,
968
1111
  onModalClose: handleClose,
969
1112
  scale,
970
- returnFocus: dashboard_utils_exports.noop
1113
+ returnFocus: buttonRef
971
1114
  }
972
1115
  ));
973
- }, "ExportDashboardButton");
1116
+ };
974
1117
  var ExportDashboardButton_default = ExportDashboardButton;
975
1118
 
976
1119
  // esm-externals:@splunk/react-icons/ChevronsOut
@@ -978,16 +1121,16 @@ var ChevronsOut_exports = {};
978
1121
  __export(ChevronsOut_exports, {
979
1122
  default: () => ChevronsOut_default
980
1123
  });
981
- var defaultImport23 = __toESM(require("@splunk/react-icons/ChevronsOut"));
1124
+ var defaultImport25 = __toESM(require("@splunk/react-icons/ChevronsOut"));
982
1125
  __reExport(ChevronsOut_exports, require("@splunk/react-icons/ChevronsOut"));
983
- var ChevronsOut_default = "default" in defaultImport23 ? defaultImport23.default : defaultImport23;
1126
+ var ChevronsOut_default = "default" in defaultImport25 ? defaultImport25.default : defaultImport25;
984
1127
 
985
1128
  // src/buttons/Fullscreen.tsx
986
1129
  var icon3 = prepareIcon({
987
1130
  Icon: ChevronsOut_default,
988
1131
  screenReaderContent: (0, i18n_exports._)("Fullscreen")
989
1132
  });
990
- var FullScreen = /* @__PURE__ */ __name(({ dashboardApi }) => {
1133
+ var FullScreen = ({ dashboardApi }) => {
991
1134
  const isFullscreen = !!(0, dashboard_state_exports.useSelector)(dashboard_state_exports.selectFullscreenElement);
992
1135
  const handleClick = (0, react_exports.useCallback)(() => {
993
1136
  dashboardApi == null ? void 0 : dashboardApi.enterFullscreen();
@@ -1001,7 +1144,7 @@ var FullScreen = /* @__PURE__ */ __name(({ dashboardApi }) => {
1001
1144
  icon: icon3
1002
1145
  }
1003
1146
  );
1004
- }, "FullScreen");
1147
+ };
1005
1148
  var Fullscreen_default = FullScreen;
1006
1149
 
1007
1150
  // esm-externals:@splunk/react-ui/Switch
@@ -1009,9 +1152,9 @@ var Switch_exports = {};
1009
1152
  __export(Switch_exports, {
1010
1153
  default: () => Switch_default
1011
1154
  });
1012
- var defaultImport24 = __toESM(require("@splunk/react-ui/Switch"));
1155
+ var defaultImport26 = __toESM(require("@splunk/react-ui/Switch"));
1013
1156
  __reExport(Switch_exports, require("@splunk/react-ui/Switch"));
1014
- var Switch_default = "default" in defaultImport24 ? defaultImport24.default : defaultImport24;
1157
+ var Switch_default = "default" in defaultImport26 ? defaultImport26.default : defaultImport26;
1015
1158
 
1016
1159
  // src/buttons/GridLineSwitch.tsx
1017
1160
  var SwitchContainer = styled_components_default.div`
@@ -1020,7 +1163,7 @@ var SwitchContainer = styled_components_default.div`
1020
1163
  flex-direction: row;
1021
1164
  gap: ${themes_exports.variables.spacingSmall};
1022
1165
  `;
1023
- var GridLineSwitch = /* @__PURE__ */ __name(({
1166
+ var GridLineSwitch = ({
1024
1167
  dashboardApi,
1025
1168
  mode,
1026
1169
  showSeparator,
@@ -1051,7 +1194,7 @@ var GridLineSwitch = /* @__PURE__ */ __name(({
1051
1194
  },
1052
1195
  (0, i18n_exports._)("Gridlines")
1053
1196
  ), separator);
1054
- }, "GridLineSwitch");
1197
+ };
1055
1198
  var GridLineSwitch_default = GridLineSwitch;
1056
1199
 
1057
1200
  // esm-externals:@splunk/react-icons/ChartSingleValueIcon
@@ -1059,9 +1202,9 @@ var ChartSingleValueIcon_exports = {};
1059
1202
  __export(ChartSingleValueIcon_exports, {
1060
1203
  default: () => ChartSingleValueIcon_default
1061
1204
  });
1062
- var defaultImport25 = __toESM(require("@splunk/react-icons/ChartSingleValueIcon"));
1205
+ var defaultImport27 = __toESM(require("@splunk/react-icons/ChartSingleValueIcon"));
1063
1206
  __reExport(ChartSingleValueIcon_exports, require("@splunk/react-icons/ChartSingleValueIcon"));
1064
- var ChartSingleValueIcon_default = "default" in defaultImport25 ? defaultImport25.default : defaultImport25;
1207
+ var ChartSingleValueIcon_default = "default" in defaultImport27 ? defaultImport27.default : defaultImport27;
1065
1208
 
1066
1209
  // src/buttons/IconGallery.tsx
1067
1210
  var MenusContainer = styled_components_default.div`
@@ -1077,7 +1220,7 @@ var focusToggleReasons2 = [
1077
1220
  "escapeKey",
1078
1221
  "tabKey"
1079
1222
  ];
1080
- var IconGallery = /* @__PURE__ */ __name(({ dashboardApi }) => {
1223
+ var IconGallery = ({ dashboardApi }) => {
1081
1224
  const {
1082
1225
  handleForceClose,
1083
1226
  handleRequestClose,
@@ -1134,7 +1277,7 @@ var IconGallery = /* @__PURE__ */ __name(({ dashboardApi }) => {
1134
1277
  }
1135
1278
  ))
1136
1279
  ));
1137
- }, "IconGallery");
1280
+ };
1138
1281
  var IconGallery_default = IconGallery;
1139
1282
 
1140
1283
  // esm-externals:@splunk/react-icons/QuestionCircle
@@ -1142,12 +1285,11 @@ var QuestionCircle_exports = {};
1142
1285
  __export(QuestionCircle_exports, {
1143
1286
  default: () => QuestionCircle_default
1144
1287
  });
1145
- var defaultImport26 = __toESM(require("@splunk/react-icons/QuestionCircle"));
1288
+ var defaultImport28 = __toESM(require("@splunk/react-icons/QuestionCircle"));
1146
1289
  __reExport(QuestionCircle_exports, require("@splunk/react-icons/QuestionCircle"));
1147
- var QuestionCircle_default = "default" in defaultImport26 ? defaultImport26.default : defaultImport26;
1290
+ var QuestionCircle_default = "default" in defaultImport28 ? defaultImport28.default : defaultImport28;
1148
1291
 
1149
1292
  // src/buttons/HelpButton.tsx
1150
- var focusToggleReasons3 = [];
1151
1293
  var HelpIcon = prepareIcon({
1152
1294
  Icon: QuestionCircle_default,
1153
1295
  screenReaderContent: (0, i18n_exports._)("Help links"),
@@ -1162,7 +1304,7 @@ var ButtonToggle2 = /* @__PURE__ */ react_default.createElement(
1162
1304
  icon: HelpIcon
1163
1305
  }
1164
1306
  );
1165
- var HelpButton = /* @__PURE__ */ __name(({ helpLinks = [] }) => {
1307
+ var HelpButton = ({ helpLinks = [] }) => {
1166
1308
  const { handleRequestClose, handleRequestOpen, isOpen } = useDropdown_default({
1167
1309
  isContentClickClose: true
1168
1310
  });
@@ -1200,7 +1342,6 @@ var HelpButton = /* @__PURE__ */ __name(({ helpLinks = [] }) => {
1200
1342
  return /* @__PURE__ */ react_default.createElement(Item_default, null, /* @__PURE__ */ react_default.createElement(
1201
1343
  Dropdown_default,
1202
1344
  {
1203
- focusToggleReasons: focusToggleReasons3,
1204
1345
  onRequestClose: handleRequestClose,
1205
1346
  onRequestOpen: handleRequestOpen,
1206
1347
  open: isOpen,
@@ -1208,7 +1349,7 @@ var HelpButton = /* @__PURE__ */ __name(({ helpLinks = [] }) => {
1208
1349
  },
1209
1350
  /* @__PURE__ */ react_default.createElement(Menu_default, null, HelpLinks)
1210
1351
  ));
1211
- }, "HelpButton");
1352
+ };
1212
1353
  var HelpButton_default = HelpButton;
1213
1354
 
1214
1355
  // esm-externals:@splunk/react-icons/Picture
@@ -1216,16 +1357,16 @@ var Picture_exports = {};
1216
1357
  __export(Picture_exports, {
1217
1358
  default: () => Picture_default
1218
1359
  });
1219
- var defaultImport27 = __toESM(require("@splunk/react-icons/Picture"));
1360
+ var defaultImport29 = __toESM(require("@splunk/react-icons/Picture"));
1220
1361
  __reExport(Picture_exports, require("@splunk/react-icons/Picture"));
1221
- var Picture_default = "default" in defaultImport27 ? defaultImport27.default : defaultImport27;
1362
+ var Picture_default = "default" in defaultImport29 ? defaultImport29.default : defaultImport29;
1222
1363
 
1223
1364
  // src/buttons/Image.tsx
1224
1365
  var icon4 = prepareIcon({
1225
1366
  Icon: Picture_default,
1226
1367
  screenReaderContent: (0, i18n_exports._)("Add image")
1227
1368
  });
1228
- var Image = /* @__PURE__ */ __name(({ dashboardApi }) => {
1369
+ var Image = ({ dashboardApi }) => {
1229
1370
  const handleClick = (0, react_exports.useCallback)(() => __async(null, null, function* () {
1230
1371
  dashboardApi == null ? void 0 : dashboardApi.createVisualization({
1231
1372
  visualizationDefinition: {
@@ -1247,7 +1388,7 @@ var Image = /* @__PURE__ */ __name(({ dashboardApi }) => {
1247
1388
  icon: icon4
1248
1389
  }
1249
1390
  );
1250
- }, "Image");
1391
+ };
1251
1392
  var Image_default = Image;
1252
1393
 
1253
1394
  // src/buttons/ImageGallery.tsx
@@ -1269,8 +1410,8 @@ var ButtonToggle3 = /* @__PURE__ */ react_default.createElement(
1269
1410
  icon: imageGalleryDropdown
1270
1411
  }
1271
1412
  );
1272
- var focusToggleReasons4 = [];
1273
- var ImageGallery = /* @__PURE__ */ __name(({ dashboardApi }) => {
1413
+ var focusToggleReasons3 = [];
1414
+ var ImageGallery = ({ dashboardApi }) => {
1274
1415
  const {
1275
1416
  handleForceClose,
1276
1417
  handleRequestClose,
@@ -1301,7 +1442,7 @@ var ImageGallery = /* @__PURE__ */ __name(({ dashboardApi }) => {
1301
1442
  return /* @__PURE__ */ react_default.createElement(Item_default, null, /* @__PURE__ */ react_default.createElement(
1302
1443
  Dropdown_default,
1303
1444
  {
1304
- focusToggleReasons: focusToggleReasons4,
1445
+ focusToggleReasons: focusToggleReasons3,
1305
1446
  onRequestClose: handleRequestClose,
1306
1447
  onRequestOpen: handleRequestOpen,
1307
1448
  open: isOpen,
@@ -1315,7 +1456,7 @@ var ImageGallery = /* @__PURE__ */ __name(({ dashboardApi }) => {
1315
1456
  }
1316
1457
  ))
1317
1458
  ));
1318
- }, "ImageGallery");
1459
+ };
1319
1460
  var ImageGallery_default = ImageGallery;
1320
1461
 
1321
1462
  // esm-externals:lodash
@@ -1323,30 +1464,30 @@ var lodash_exports = {};
1323
1464
  __export(lodash_exports, {
1324
1465
  default: () => lodash_default
1325
1466
  });
1326
- var defaultImport28 = __toESM(require("lodash"));
1467
+ var defaultImport30 = __toESM(require("lodash"));
1327
1468
  __reExport(lodash_exports, require("lodash"));
1328
- var lodash_default = "default" in defaultImport28 ? defaultImport28.default : defaultImport28;
1469
+ var lodash_default = "default" in defaultImport30 ? defaultImport30.default : defaultImport30;
1329
1470
 
1330
1471
  // esm-externals:@splunk/react-icons/SlidersTripleHorizontal
1331
1472
  var SlidersTripleHorizontal_exports = {};
1332
1473
  __export(SlidersTripleHorizontal_exports, {
1333
1474
  default: () => SlidersTripleHorizontal_default
1334
1475
  });
1335
- var defaultImport29 = __toESM(require("@splunk/react-icons/SlidersTripleHorizontal"));
1476
+ var defaultImport31 = __toESM(require("@splunk/react-icons/SlidersTripleHorizontal"));
1336
1477
  __reExport(SlidersTripleHorizontal_exports, require("@splunk/react-icons/SlidersTripleHorizontal"));
1337
- var SlidersTripleHorizontal_default = "default" in defaultImport29 ? defaultImport29.default : defaultImport29;
1478
+ var SlidersTripleHorizontal_default = "default" in defaultImport31 ? defaultImport31.default : defaultImport31;
1338
1479
 
1339
1480
  // esm-externals:@splunk/dashboard-definition
1340
1481
  var dashboard_definition_exports = {};
1341
1482
  __export(dashboard_definition_exports, {
1342
1483
  default: () => dashboard_definition_default
1343
1484
  });
1344
- var defaultImport30 = __toESM(require("@splunk/dashboard-definition"));
1485
+ var defaultImport32 = __toESM(require("@splunk/dashboard-definition"));
1345
1486
  __reExport(dashboard_definition_exports, require("@splunk/dashboard-definition"));
1346
- var dashboard_definition_default = "default" in defaultImport30 ? defaultImport30.default : defaultImport30;
1487
+ var dashboard_definition_default = "default" in defaultImport32 ? defaultImport32.default : defaultImport32;
1347
1488
 
1348
1489
  // src/buttons/Inputs.tsx
1349
- var focusToggleReasons5 = [
1490
+ var focusToggleReasons4 = [
1350
1491
  "escapeKey",
1351
1492
  "tabKey"
1352
1493
  ];
@@ -1365,7 +1506,7 @@ var ButtonToggle4 = /* @__PURE__ */ react_default.createElement(
1365
1506
  icon: addInputIcon
1366
1507
  }
1367
1508
  );
1368
- var onCreateInputClickFactory = /* @__PURE__ */ __name(({
1509
+ var onCreateInputClickFactory = ({
1369
1510
  type,
1370
1511
  defaultConfig,
1371
1512
  tokenPrefix,
@@ -1386,8 +1527,8 @@ var onCreateInputClickFactory = /* @__PURE__ */ __name(({
1386
1527
  }
1387
1528
  dashboardApi.addInput(newConfig);
1388
1529
  dashboardApi.openPanel({ activePanel: "config" });
1389
- }, "onCreateInputClickFactory");
1390
- var Inputs = /* @__PURE__ */ __name(({
1530
+ };
1531
+ var Inputs = ({
1391
1532
  dashboardApi,
1392
1533
  preset = DEFAULT_PRESET_MAP2
1393
1534
  }) => {
@@ -1452,7 +1593,7 @@ var Inputs = /* @__PURE__ */ __name(({
1452
1593
  return /* @__PURE__ */ react_default.createElement(Item_default, null, /* @__PURE__ */ react_default.createElement(
1453
1594
  Dropdown_default,
1454
1595
  {
1455
- focusToggleReasons: focusToggleReasons5,
1596
+ focusToggleReasons: focusToggleReasons4,
1456
1597
  onRequestClose: handleRequestClose,
1457
1598
  onRequestOpen: handleRequestOpen,
1458
1599
  open: isOpen,
@@ -1460,7 +1601,7 @@ var Inputs = /* @__PURE__ */ __name(({
1460
1601
  },
1461
1602
  /* @__PURE__ */ react_default.createElement(Menu_default, null, InputTypeButtons)
1462
1603
  ));
1463
- }, "Inputs");
1604
+ };
1464
1605
  var Inputs_default = Inputs;
1465
1606
 
1466
1607
  // esm-externals:@splunk/react-icons/Markdown
@@ -1468,16 +1609,16 @@ var Markdown_exports = {};
1468
1609
  __export(Markdown_exports, {
1469
1610
  default: () => Markdown_default
1470
1611
  });
1471
- var defaultImport31 = __toESM(require("@splunk/react-icons/Markdown"));
1612
+ var defaultImport33 = __toESM(require("@splunk/react-icons/Markdown"));
1472
1613
  __reExport(Markdown_exports, require("@splunk/react-icons/Markdown"));
1473
- var Markdown_default = "default" in defaultImport31 ? defaultImport31.default : defaultImport31;
1614
+ var Markdown_default = "default" in defaultImport33 ? defaultImport33.default : defaultImport33;
1474
1615
 
1475
1616
  // src/buttons/Markdown.tsx
1476
1617
  var icon5 = prepareIcon({
1477
1618
  Icon: Markdown_default,
1478
1619
  screenReaderContent: (0, i18n_exports._)("Add markdown text")
1479
1620
  });
1480
- var Markdown = /* @__PURE__ */ __name(({ dashboardApi }) => {
1621
+ var Markdown = ({ dashboardApi }) => {
1481
1622
  const handleClick = (0, react_exports.useCallback)(() => {
1482
1623
  dashboardApi == null ? void 0 : dashboardApi.createVisualization({
1483
1624
  visualizationDefinition: {
@@ -1499,11 +1640,11 @@ var Markdown = /* @__PURE__ */ __name(({ dashboardApi }) => {
1499
1640
  icon: icon5
1500
1641
  }
1501
1642
  );
1502
- }, "Markdown");
1643
+ };
1503
1644
  var Markdown_default2 = Markdown;
1504
1645
 
1505
1646
  // src/buttons/ModeSwitch.tsx
1506
- var ModeSwitch = /* @__PURE__ */ __name(() => {
1647
+ var ModeSwitch = () => {
1507
1648
  const mode = (0, dashboard_state_exports.useSelector)(dashboard_state_exports.selectMode);
1508
1649
  const dashboardApi = (0, dashboard_context_exports.useDashboardApi)();
1509
1650
  const appearance = mode === "edit" ? "secondary" : "primary";
@@ -1523,7 +1664,7 @@ var ModeSwitch = /* @__PURE__ */ __name(() => {
1523
1664
  onClick: handleClick
1524
1665
  }
1525
1666
  ));
1526
- }, "ModeSwitch");
1667
+ };
1527
1668
  var ModeSwitch_default = ModeSwitch;
1528
1669
 
1529
1670
  // esm-externals:@splunk/react-icons/ArrowBowRight
@@ -1531,16 +1672,16 @@ var ArrowBowRight_exports = {};
1531
1672
  __export(ArrowBowRight_exports, {
1532
1673
  default: () => ArrowBowRight_default
1533
1674
  });
1534
- var defaultImport32 = __toESM(require("@splunk/react-icons/ArrowBowRight"));
1675
+ var defaultImport34 = __toESM(require("@splunk/react-icons/ArrowBowRight"));
1535
1676
  __reExport(ArrowBowRight_exports, require("@splunk/react-icons/ArrowBowRight"));
1536
- var ArrowBowRight_default = "default" in defaultImport32 ? defaultImport32.default : defaultImport32;
1677
+ var ArrowBowRight_default = "default" in defaultImport34 ? defaultImport34.default : defaultImport34;
1537
1678
 
1538
1679
  // src/buttons/Redo.tsx
1539
1680
  var icon6 = prepareIcon({
1540
1681
  Icon: ArrowBowRight_default,
1541
1682
  screenReaderContent: (0, i18n_exports._)("Redo")
1542
1683
  });
1543
- var Redo = /* @__PURE__ */ __name(({ dashboardApi }) => {
1684
+ var Redo = ({ dashboardApi }) => {
1544
1685
  const [canRedo, setCanRedo] = (0, react_exports.useState)(
1545
1686
  () => {
1546
1687
  var _a;
@@ -1576,7 +1717,7 @@ var Redo = /* @__PURE__ */ __name(({ dashboardApi }) => {
1576
1717
  icon: icon6
1577
1718
  }
1578
1719
  );
1579
- }, "Redo");
1720
+ };
1580
1721
  var Redo_default = Redo;
1581
1722
 
1582
1723
  // esm-externals:@splunk/react-icons/Circle
@@ -1584,27 +1725,27 @@ var Circle_exports = {};
1584
1725
  __export(Circle_exports, {
1585
1726
  default: () => Circle_default
1586
1727
  });
1587
- var defaultImport33 = __toESM(require("@splunk/react-icons/Circle"));
1728
+ var defaultImport35 = __toESM(require("@splunk/react-icons/Circle"));
1588
1729
  __reExport(Circle_exports, require("@splunk/react-icons/Circle"));
1589
- var Circle_default = "default" in defaultImport33 ? defaultImport33.default : defaultImport33;
1730
+ var Circle_default = "default" in defaultImport35 ? defaultImport35.default : defaultImport35;
1590
1731
 
1591
1732
  // esm-externals:@splunk/react-icons/Line
1592
1733
  var Line_exports = {};
1593
1734
  __export(Line_exports, {
1594
1735
  default: () => Line_default
1595
1736
  });
1596
- var defaultImport34 = __toESM(require("@splunk/react-icons/Line"));
1737
+ var defaultImport36 = __toESM(require("@splunk/react-icons/Line"));
1597
1738
  __reExport(Line_exports, require("@splunk/react-icons/Line"));
1598
- var Line_default = "default" in defaultImport34 ? defaultImport34.default : defaultImport34;
1739
+ var Line_default = "default" in defaultImport36 ? defaultImport36.default : defaultImport36;
1599
1740
 
1600
1741
  // esm-externals:@splunk/react-icons/ShapesVariety
1601
1742
  var ShapesVariety_exports = {};
1602
1743
  __export(ShapesVariety_exports, {
1603
1744
  default: () => ShapesVariety_default
1604
1745
  });
1605
- var defaultImport35 = __toESM(require("@splunk/react-icons/ShapesVariety"));
1746
+ var defaultImport37 = __toESM(require("@splunk/react-icons/ShapesVariety"));
1606
1747
  __reExport(ShapesVariety_exports, require("@splunk/react-icons/ShapesVariety"));
1607
- var ShapesVariety_default = "default" in defaultImport35 ? defaultImport35.default : defaultImport35;
1748
+ var ShapesVariety_default = "default" in defaultImport37 ? defaultImport37.default : defaultImport37;
1608
1749
 
1609
1750
  // src/buttons/Shapes.tsx
1610
1751
  var shapesDropdown = prepareIcon({
@@ -1621,14 +1762,14 @@ var ButtonToggle5 = /* @__PURE__ */ react_default.createElement(
1621
1762
  icon: shapesDropdown
1622
1763
  }
1623
1764
  );
1624
- var focusToggleReasons6 = [
1765
+ var focusToggleReasons5 = [
1625
1766
  "escapeKey",
1626
1767
  "tabKey"
1627
1768
  ];
1628
1769
  var circleIcon = /* @__PURE__ */ react_default.createElement(Circle_default, null);
1629
1770
  var uncheckedBoxIcon = /* @__PURE__ */ react_default.createElement(Square_default, null);
1630
1771
  var lineIcon = /* @__PURE__ */ react_default.createElement(Line_default, null);
1631
- var Shapes = /* @__PURE__ */ __name(({ dashboardApi, layoutType }) => {
1772
+ var Shapes = ({ dashboardApi, layoutType }) => {
1632
1773
  const supportLine = layoutType === "absolute";
1633
1774
  const { handleRequestClose, handleRequestOpen, isOpen } = useDropdown_default({
1634
1775
  isContentClickClose: true
@@ -1648,7 +1789,7 @@ var Shapes = /* @__PURE__ */ __name(({ dashboardApi, layoutType }) => {
1648
1789
  return /* @__PURE__ */ react_default.createElement(Item_default, null, /* @__PURE__ */ react_default.createElement(
1649
1790
  Dropdown_default,
1650
1791
  {
1651
- focusToggleReasons: focusToggleReasons6,
1792
+ focusToggleReasons: focusToggleReasons5,
1652
1793
  onRequestClose: handleRequestClose,
1653
1794
  onRequestOpen: handleRequestOpen,
1654
1795
  open: isOpen,
@@ -1704,7 +1845,7 @@ var Shapes = /* @__PURE__ */ __name(({ dashboardApi, layoutType }) => {
1704
1845
  )
1705
1846
  ))
1706
1847
  ));
1707
- }, "Shapes");
1848
+ };
1708
1849
  var Shapes_default = Shapes;
1709
1850
 
1710
1851
  // esm-externals:@splunk/react-icons/WindowChevronsSlash
@@ -1712,24 +1853,38 @@ var WindowChevronsSlash_exports = {};
1712
1853
  __export(WindowChevronsSlash_exports, {
1713
1854
  default: () => WindowChevronsSlash_default
1714
1855
  });
1715
- var defaultImport36 = __toESM(require("@splunk/react-icons/WindowChevronsSlash"));
1856
+ var defaultImport38 = __toESM(require("@splunk/react-icons/WindowChevronsSlash"));
1716
1857
  __reExport(WindowChevronsSlash_exports, require("@splunk/react-icons/WindowChevronsSlash"));
1717
- var WindowChevronsSlash_default = "default" in defaultImport36 ? defaultImport36.default : defaultImport36;
1858
+ var WindowChevronsSlash_default = "default" in defaultImport38 ? defaultImport38.default : defaultImport38;
1718
1859
 
1719
1860
  // src/buttons/Source.tsx
1720
1861
  var icon7 = prepareIcon({
1721
1862
  Icon: WindowChevronsSlash_default,
1722
1863
  screenReaderContent: (0, i18n_exports._)("Source code")
1723
1864
  });
1724
- var Source = /* @__PURE__ */ __name(({ disabled = false, onClick }) => /* @__PURE__ */ react_default.createElement(
1725
- IconButton_default,
1726
- {
1727
- testLabel: "source-button",
1728
- onClick,
1729
- disabled,
1730
- icon: icon7
1731
- }
1732
- ), "Source");
1865
+ var Source = ({ disabled = false, onClick }) => {
1866
+ const sourceButtonRef = (0, dashboard_context_exports.useToolbarRef)("source");
1867
+ const setReturnPoint = (0, dashboard_context_exports.useRestoreFocus)(sourceButtonRef);
1868
+ const onSourceClick = (0, react_exports.useCallback)(
1869
+ (event, data) => {
1870
+ if (onClick) {
1871
+ onClick(event, data);
1872
+ setReturnPoint();
1873
+ }
1874
+ },
1875
+ [onClick, setReturnPoint]
1876
+ );
1877
+ return /* @__PURE__ */ react_default.createElement(
1878
+ IconButton_default,
1879
+ {
1880
+ testLabel: "source-button",
1881
+ onClick: onSourceClick,
1882
+ disabled,
1883
+ icon: icon7,
1884
+ buttonRef: sourceButtonRef
1885
+ }
1886
+ );
1887
+ };
1733
1888
  var Source_default = Source;
1734
1889
 
1735
1890
  // esm-externals:@splunk/react-icons/ListToken
@@ -1737,25 +1892,16 @@ var ListToken_exports = {};
1737
1892
  __export(ListToken_exports, {
1738
1893
  default: () => ListToken_default
1739
1894
  });
1740
- var defaultImport37 = __toESM(require("@splunk/react-icons/ListToken"));
1895
+ var defaultImport39 = __toESM(require("@splunk/react-icons/ListToken"));
1741
1896
  __reExport(ListToken_exports, require("@splunk/react-icons/ListToken"));
1742
- var ListToken_default = "default" in defaultImport37 ? defaultImport37.default : defaultImport37;
1743
-
1744
- // esm-externals:@splunk/react-ui/Tooltip
1745
- var Tooltip_exports = {};
1746
- __export(Tooltip_exports, {
1747
- default: () => Tooltip_default
1748
- });
1749
- var defaultImport38 = __toESM(require("@splunk/react-ui/Tooltip"));
1750
- __reExport(Tooltip_exports, require("@splunk/react-ui/Tooltip"));
1751
- var Tooltip_default = "default" in defaultImport38 ? defaultImport38.default : defaultImport38;
1897
+ var ListToken_default = "default" in defaultImport39 ? defaultImport39.default : defaultImport39;
1752
1898
 
1753
1899
  // src/buttons/tokenManager/TokenManager.tsx
1754
1900
  var tokenManagerIcon = prepareIcon({
1755
1901
  Icon: ListToken_default,
1756
1902
  screenReaderContent: (0, i18n_exports._)("Token manager")
1757
1903
  });
1758
- var TokenManager = /* @__PURE__ */ __name(({ dashboardApi }) => {
1904
+ var TokenManager = ({ dashboardApi }) => {
1759
1905
  const { showTokenManager } = (0, dashboard_context_exports.useFeatureFlags)();
1760
1906
  const handleClick = (0, react_exports.useCallback)(() => {
1761
1907
  const isOpen = (dashboardApi == null ? void 0 : dashboardApi.getOpenedPanel()) === "tokenManager";
@@ -1789,23 +1935,23 @@ var TokenManager = /* @__PURE__ */ __name(({ dashboardApi }) => {
1789
1935
  }
1790
1936
  )
1791
1937
  );
1792
- }, "TokenManager");
1938
+ };
1793
1939
 
1794
1940
  // esm-externals:@splunk/react-icons/ArrowBowLeft
1795
1941
  var ArrowBowLeft_exports = {};
1796
1942
  __export(ArrowBowLeft_exports, {
1797
1943
  default: () => ArrowBowLeft_default
1798
1944
  });
1799
- var defaultImport39 = __toESM(require("@splunk/react-icons/ArrowBowLeft"));
1945
+ var defaultImport40 = __toESM(require("@splunk/react-icons/ArrowBowLeft"));
1800
1946
  __reExport(ArrowBowLeft_exports, require("@splunk/react-icons/ArrowBowLeft"));
1801
- var ArrowBowLeft_default = "default" in defaultImport39 ? defaultImport39.default : defaultImport39;
1947
+ var ArrowBowLeft_default = "default" in defaultImport40 ? defaultImport40.default : defaultImport40;
1802
1948
 
1803
1949
  // src/buttons/Undo.tsx
1804
1950
  var icon8 = prepareIcon({
1805
1951
  Icon: ArrowBowLeft_default,
1806
1952
  screenReaderContent: (0, i18n_exports._)("Undo")
1807
1953
  });
1808
- var Undo = /* @__PURE__ */ __name(({ dashboardApi }) => {
1954
+ var Undo = ({ dashboardApi }) => {
1809
1955
  const [canUndo, setCanUndo] = (0, react_exports.useState)(
1810
1956
  () => {
1811
1957
  var _a;
@@ -1841,18 +1987,9 @@ var Undo = /* @__PURE__ */ __name(({ dashboardApi }) => {
1841
1987
  icon: icon8
1842
1988
  }
1843
1989
  );
1844
- }, "Undo");
1990
+ };
1845
1991
  var Undo_default = Undo;
1846
1992
 
1847
- // esm-externals:@splunk/dashboard-telemetry
1848
- var dashboard_telemetry_exports = {};
1849
- __export(dashboard_telemetry_exports, {
1850
- default: () => dashboard_telemetry_default
1851
- });
1852
- var defaultImport40 = __toESM(require("@splunk/dashboard-telemetry"));
1853
- __reExport(dashboard_telemetry_exports, require("@splunk/dashboard-telemetry"));
1854
- var dashboard_telemetry_default = "default" in defaultImport40 ? defaultImport40.default : defaultImport40;
1855
-
1856
1993
  // esm-externals:@splunk/ui-utils/format
1857
1994
  var format_exports = {};
1858
1995
  __export(format_exports, {
@@ -1868,10 +2005,10 @@ var buttonStyle = {
1868
2005
  borderTopLeftRadius: 0,
1869
2006
  borderBottomLeftRadius: 0
1870
2007
  };
1871
- var menuStyle = {
2008
+ var menuStyle2 = {
1872
2009
  width: "200px"
1873
2010
  };
1874
- var ZoomMenu = /* @__PURE__ */ __name(({
2011
+ var ZoomMenu = ({
1875
2012
  dashboardApi,
1876
2013
  appearance = "default",
1877
2014
  currentScale,
@@ -2009,14 +2146,14 @@ var ZoomMenu = /* @__PURE__ */ __name(({
2009
2146
  /* @__PURE__ */ react_default.createElement(
2010
2147
  Menu_default,
2011
2148
  {
2012
- style: menuStyle,
2149
+ style: menuStyle2,
2013
2150
  focusMode: "normal",
2014
2151
  "aria-label": (0, i18n_exports._)("Zoom level")
2015
2152
  },
2016
2153
  dropdownMenuChildren
2017
2154
  )
2018
2155
  );
2019
- }, "ZoomMenu");
2156
+ };
2020
2157
 
2021
2158
  // esm-externals:@splunk/react-ui/Number
2022
2159
  var Number_exports = {};
@@ -2037,7 +2174,7 @@ var StyledNumber = styled_components_default(Number_default)`
2037
2174
  var StyledEndAdornment = styled_components_default.span`
2038
2175
  color: ${themes_exports.variables.contentColorActive};
2039
2176
  `;
2040
- var ZoomNumber = /* @__PURE__ */ __name(({
2177
+ var ZoomNumber = ({
2041
2178
  currentScale,
2042
2179
  onScaleChange
2043
2180
  }) => {
@@ -2069,7 +2206,7 @@ var ZoomNumber = /* @__PURE__ */ __name(({
2069
2206
  append: true
2070
2207
  }
2071
2208
  );
2072
- }, "ZoomNumber");
2209
+ };
2073
2210
 
2074
2211
  // src/buttons/Zoom/Zoom.tsx
2075
2212
  var Container = styled_components_default.div`
@@ -2079,41 +2216,38 @@ var Container = styled_components_default.div`
2079
2216
  gap: ${themes_exports.variables.spacingSmall};
2080
2217
  `;
2081
2218
  var StyledTooltip = styled_components_default(Tooltip_default)`
2082
- width: 110px;
2219
+ width: 90px;
2083
2220
  & span {
2084
2221
  display: flex;
2085
2222
  }
2086
2223
  `;
2087
- var Zoom = /* @__PURE__ */ __name(({
2224
+ var Zoom = ({
2088
2225
  showSeparator = true,
2089
2226
  appearance = "default",
2090
2227
  mode = "view"
2091
2228
  }) => {
2092
2229
  const [currentScale, setCurrentScale] = (0, react_exports.useState)(100);
2093
2230
  const [scaleType, setScaleType] = (0, react_exports.useState)(null);
2094
- const telemetry = (0, dashboard_telemetry_exports.useTelemetryApi)();
2095
2231
  const dashboardApi = (0, dashboard_context_exports.useDashboardApi)();
2232
+ const dispatch = (0, dashboard_state_exports.useDispatch)();
2096
2233
  const handleZoom = (0, react_exports.useCallback)((level) => {
2097
2234
  if (level) {
2098
2235
  setCurrentScale(Math.round(level * 100));
2099
2236
  }
2100
2237
  }, []);
2101
- const emitTelemetry = (0, react_exports.useMemo)(
2102
- () => (0, lodash_exports.debounce)(telemetry.emit.bind(telemetry), 500),
2103
- [telemetry]
2238
+ const debouncedDispatch = (0, react_exports.useMemo)(
2239
+ () => (0, lodash_exports.debounce)(dispatch, 500),
2240
+ [dispatch]
2104
2241
  );
2105
2242
  (0, react_exports.useEffect)(() => {
2106
- emitTelemetry({
2107
- pageAction: "dashboard.zoom",
2108
- source: "toolbar",
2109
- event: "dashboard.zoom_level_change",
2110
- metadata: {
2243
+ debouncedDispatch(
2244
+ (0, dashboard_state_exports.zoomLevelChanged)({
2111
2245
  scale: currentScale,
2112
2246
  scaleType,
2113
2247
  mode
2114
- }
2115
- });
2116
- }, [currentScale, scaleType, emitTelemetry, mode]);
2248
+ })
2249
+ );
2250
+ }, [currentScale, scaleType, mode, debouncedDispatch]);
2117
2251
  const activeTabId = (0, dashboard_state_exports.useSelector)(dashboard_state_exports.selectActiveTab);
2118
2252
  (0, react_exports.useEffect)(() => {
2119
2253
  var _a;
@@ -2159,10 +2293,10 @@ var Zoom = /* @__PURE__ */ __name(({
2159
2293
  }
2160
2294
  )
2161
2295
  ), separator);
2162
- }, "Zoom");
2296
+ };
2163
2297
 
2164
2298
  // src/groups/ActionsGroup.tsx
2165
- var menuStyle2 = {
2299
+ var menuStyle3 = {
2166
2300
  width: "180px"
2167
2301
  };
2168
2302
  var buttonToggle = /* @__PURE__ */ react_default.createElement(
@@ -2175,7 +2309,7 @@ var buttonToggle = /* @__PURE__ */ react_default.createElement(
2175
2309
  appearance: "subtle"
2176
2310
  }
2177
2311
  );
2178
- var ActionsGroup = /* @__PURE__ */ __name(({ children }) => {
2312
+ var ActionsGroup = ({ children }) => {
2179
2313
  const { handleRequestClose, handleRequestOpen, isOpen } = useDropdown_default({
2180
2314
  isContentClickClose: true
2181
2315
  });
@@ -2187,17 +2321,17 @@ var ActionsGroup = /* @__PURE__ */ __name(({ children }) => {
2187
2321
  open: isOpen,
2188
2322
  toggle: buttonToggle
2189
2323
  },
2190
- /* @__PURE__ */ react_default.createElement(Menu_default, { style: menuStyle2 }, children)
2324
+ /* @__PURE__ */ react_default.createElement(Menu_default, { style: menuStyle3 }, children)
2191
2325
  );
2192
- }, "ActionsGroup");
2326
+ };
2193
2327
  var ActionsGroup_default = ActionsGroup;
2194
2328
 
2195
2329
  // src/groups/ControlGroup.tsx
2196
- var ControlGroup = /* @__PURE__ */ __name((props) => /* @__PURE__ */ react_default.createElement(ItemGroup_default, __spreadValues({}, props), /* @__PURE__ */ react_default.createElement(Fullscreen_default, null)), "ControlGroup");
2330
+ var ControlGroup = (props) => /* @__PURE__ */ react_default.createElement(ItemGroup_default, __spreadValues({}, props), /* @__PURE__ */ react_default.createElement(Fullscreen_default, null));
2197
2331
  var ControlGroup_default = ControlGroup;
2198
2332
 
2199
2333
  // src/groups/EditingGroup.tsx
2200
- var EditingGroup = /* @__PURE__ */ __name((props) => {
2334
+ var EditingGroup = (props) => {
2201
2335
  const { enableModeSwitch = true, borders = true, layoutType } = props;
2202
2336
  const { spacingSmall } = (0, themes_exports.useSplunkTheme)();
2203
2337
  const modeSwitch = (0, react_exports.useMemo)(() => {
@@ -2210,33 +2344,33 @@ var EditingGroup = /* @__PURE__ */ __name((props) => {
2210
2344
  return layoutType === "absolute" ? [/* @__PURE__ */ react_default.createElement(Zoom, { key: "zoom", showSeparator: borders })] : null;
2211
2345
  }, [layoutType, borders]);
2212
2346
  return /* @__PURE__ */ react_default.createElement(ItemGroup_default, __spreadProps(__spreadValues({}, props), { borders: false, gap: spacingSmall }), /* @__PURE__ */ react_default.createElement(GridLineSwitch_default, { showSeparator: enableModeSwitch && borders }), zoomControl, modeSwitch);
2213
- }, "EditingGroup");
2347
+ };
2214
2348
  var EditingGroup_default = EditingGroup;
2215
2349
 
2216
2350
  // src/groups/EditorGroup.tsx
2217
- var EditorGroup = /* @__PURE__ */ __name((props) => {
2351
+ var EditorGroup = (props) => {
2218
2352
  var _a;
2219
2353
  return /* @__PURE__ */ react_default.createElement(ItemGroup_default, __spreadValues({ borders: false }, props), /* @__PURE__ */ react_default.createElement(Source_default, { onClick: (_a = props.sourceButtonOnClick) != null ? _a : dashboard_utils_exports.noop }));
2220
- }, "EditorGroup");
2354
+ };
2221
2355
  var EditorGroup_default = EditorGroup;
2222
2356
 
2223
2357
  // src/groups/EditorsControlGroup.tsx
2224
- var EditorsControlGroup = /* @__PURE__ */ __name((props) => {
2358
+ var EditorsControlGroup = (props) => {
2225
2359
  var _a;
2226
2360
  return /* @__PURE__ */ react_default.createElement(ItemGroup_default, __spreadValues({ borders: false }, props), /* @__PURE__ */ react_default.createElement(Config_default, null), /* @__PURE__ */ react_default.createElement(Data_default, null), /* @__PURE__ */ react_default.createElement(TokenManager, null), /* @__PURE__ */ react_default.createElement(Source_default, { onClick: (_a = props.sourceButtonOnClick) != null ? _a : dashboard_utils_exports.noop }));
2227
- }, "EditorsControlGroup");
2361
+ };
2228
2362
  var EditorsControlGroup_default = EditorsControlGroup;
2229
2363
 
2230
2364
  // src/groups/HistoryGroup.tsx
2231
- var HistoryGroup = /* @__PURE__ */ __name((props) => /* @__PURE__ */ react_default.createElement(ItemGroup_default, __spreadValues({}, props), /* @__PURE__ */ react_default.createElement(Undo_default, null), /* @__PURE__ */ react_default.createElement(Redo_default, null)), "HistoryGroup");
2365
+ var HistoryGroup = (props) => /* @__PURE__ */ react_default.createElement(ItemGroup_default, __spreadValues({}, props), /* @__PURE__ */ react_default.createElement(Undo_default, null), /* @__PURE__ */ react_default.createElement(Redo_default, null));
2232
2366
  var HistoryGroup_default = HistoryGroup;
2233
2367
 
2234
2368
  // src/groups/SidebarControlGroup.tsx
2235
- var SidebarControlGroup = /* @__PURE__ */ __name((props) => /* @__PURE__ */ react_default.createElement(ItemGroup_default, __spreadValues({}, props), /* @__PURE__ */ react_default.createElement(Config_default, null), /* @__PURE__ */ react_default.createElement(Data_default, null), /* @__PURE__ */ react_default.createElement(TokenManager, null)), "SidebarControlGroup");
2369
+ var SidebarControlGroup = (props) => /* @__PURE__ */ react_default.createElement(ItemGroup_default, __spreadValues({}, props), /* @__PURE__ */ react_default.createElement(Config_default, null), /* @__PURE__ */ react_default.createElement(Data_default, null), /* @__PURE__ */ react_default.createElement(TokenManager, null));
2236
2370
  var SidebarControlGroup_default = SidebarControlGroup;
2237
2371
 
2238
2372
  // src/groups/VisualizationGroup.tsx
2239
- var VisualizationGroup = /* @__PURE__ */ __name((props) => {
2373
+ var VisualizationGroup = (props) => {
2240
2374
  const buttons = (0, react_exports.useMemo)(() => {
2241
2375
  if (props.layoutType === "grid") {
2242
2376
  return [
@@ -2257,6 +2391,6 @@ var VisualizationGroup = /* @__PURE__ */ __name((props) => {
2257
2391
  ];
2258
2392
  }, [props.layoutType]);
2259
2393
  return /* @__PURE__ */ react_default.createElement(ItemGroup_default, __spreadValues({}, props), buttons);
2260
- }, "VisualizationGroup");
2394
+ };
2261
2395
  var VisualizationGroup_default = VisualizationGroup;
2262
2396
  //# sourceMappingURL=index.js.map