@splunk/dashboard-toolbar 29.0.0 → 29.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (229) hide show
  1. package/CollapsibleToolbar.js +6 -5
  2. package/CollapsibleToolbar.js.map +2 -2
  3. package/IconButton.js +5 -4
  4. package/IconButton.js.map +2 -2
  5. package/Item.js.map +1 -1
  6. package/ItemGroup.js +3 -2
  7. package/ItemGroup.js.map +2 -2
  8. package/PopoverItemButton.js +2 -1
  9. package/PopoverItemButton.js.map +2 -2
  10. package/README.md +1 -1
  11. package/Toolbar.js +3 -2
  12. package/Toolbar.js.map +2 -2
  13. package/buttons/Charts.js +13 -9
  14. package/buttons/Charts.js.map +3 -3
  15. package/buttons/Config.js +7 -6
  16. package/buttons/Config.js.map +2 -2
  17. package/buttons/ContentExport.js +7 -6
  18. package/buttons/ContentExport.js.map +2 -2
  19. package/buttons/Data.js +7 -6
  20. package/buttons/Data.js.map +2 -2
  21. package/buttons/EmptyVisualization.js +8 -7
  22. package/buttons/EmptyVisualization.js.map +2 -2
  23. package/buttons/ExportDashboardButton.js +3 -2
  24. package/buttons/ExportDashboardButton.js.map +2 -2
  25. package/buttons/Fullscreen.js +7 -6
  26. package/buttons/Fullscreen.js.map +2 -2
  27. package/buttons/GridLineSwitch.js +3 -2
  28. package/buttons/GridLineSwitch.js.map +2 -2
  29. package/buttons/HelpButton.js +7 -6
  30. package/buttons/HelpButton.js.map +2 -2
  31. package/buttons/IconGallery.js +12 -8
  32. package/buttons/IconGallery.js.map +3 -3
  33. package/buttons/Image.js +8 -7
  34. package/buttons/Image.js.map +2 -2
  35. package/buttons/ImageGallery.js +8 -7
  36. package/buttons/ImageGallery.js.map +2 -2
  37. package/buttons/Inputs.js +13 -9
  38. package/buttons/Inputs.js.map +3 -3
  39. package/buttons/Markdown.js +7 -6
  40. package/buttons/Markdown.js.map +2 -2
  41. package/buttons/ModeSwitch.js +3 -2
  42. package/buttons/ModeSwitch.js.map +2 -2
  43. package/buttons/Redo.js +7 -6
  44. package/buttons/Redo.js.map +2 -2
  45. package/buttons/Shapes.js +12 -8
  46. package/buttons/Shapes.js.map +3 -3
  47. package/buttons/Source.js +7 -6
  48. package/buttons/Source.js.map +2 -2
  49. package/buttons/Undo.js +7 -6
  50. package/buttons/Undo.js.map +2 -2
  51. package/buttons/index.js +84 -67
  52. package/buttons/index.js.map +3 -3
  53. package/groups/ActionsGroup.js +5 -4
  54. package/groups/ActionsGroup.js.map +2 -2
  55. package/groups/ControlGroup.js +10 -9
  56. package/groups/ControlGroup.js.map +3 -3
  57. package/groups/EditingGroup.js +19 -18
  58. package/groups/EditingGroup.js.map +3 -3
  59. package/groups/EditorGroup.js +11 -10
  60. package/groups/EditorGroup.js.map +3 -3
  61. package/groups/EditorsControlGroup.js +51 -15
  62. package/groups/EditorsControlGroup.js.map +3 -3
  63. package/groups/HistoryGroup.js +12 -11
  64. package/groups/HistoryGroup.js.map +3 -3
  65. package/groups/SidebarControlGroup.js +47 -11
  66. package/groups/SidebarControlGroup.js.map +3 -3
  67. package/groups/VisualizationGroup.js +49 -36
  68. package/groups/VisualizationGroup.js.map +3 -3
  69. package/groups/index.js +118 -70
  70. package/groups/index.js.map +3 -3
  71. package/index.js +107 -90
  72. package/index.js.map +3 -3
  73. package/module/CollapsibleToolbar.js +11 -11
  74. package/module/IconButton.js +6 -6
  75. package/module/Item.js +3 -3
  76. package/module/ItemGroup.js +7 -7
  77. package/module/PopoverItemButton.js +4 -4
  78. package/module/Toolbar.js +6 -6
  79. package/module/buttons/Charts.js +15 -15
  80. package/module/buttons/Config.js +9 -9
  81. package/module/buttons/ContentExport.js +9 -9
  82. package/module/buttons/Data.js +10 -10
  83. package/module/buttons/EmptyVisualization.js +9 -9
  84. package/module/buttons/ExportDashboardButton.js +8 -8
  85. package/module/buttons/Fullscreen.js +9 -9
  86. package/module/buttons/GridLineSwitch.js +8 -8
  87. package/module/buttons/HelpButton.js +11 -11
  88. package/module/buttons/IconGallery.js +11 -11
  89. package/module/buttons/Image.js +9 -9
  90. package/module/buttons/ImageGallery.js +12 -12
  91. package/module/buttons/Inputs.js +11 -11
  92. package/module/buttons/Markdown.js +8 -8
  93. package/module/buttons/ModeSwitch.js +9 -9
  94. package/module/buttons/Redo.js +8 -8
  95. package/module/buttons/Shapes.js +13 -13
  96. package/module/buttons/Source.js +8 -8
  97. package/module/buttons/Undo.js +8 -8
  98. package/module/buttons/index.js +40 -40
  99. package/module/chunks/chunk-2G23SAZZ.js +29 -0
  100. package/module/chunks/{chunk-KJLRQLFH.js.map → chunk-2G23SAZZ.js.map} +1 -1
  101. package/module/chunks/{chunk-YPVMTO2L.js → chunk-2GRHFRZD.js} +16 -15
  102. package/module/chunks/{chunk-YPVMTO2L.js.map → chunk-2GRHFRZD.js.map} +1 -1
  103. package/module/chunks/{chunk-IAEE4XLH.js → chunk-3DNLXDXA.js} +9 -8
  104. package/module/chunks/{chunk-IAEE4XLH.js.map → chunk-3DNLXDXA.js.map} +2 -2
  105. package/module/chunks/{chunk-IQG5GSSX.js → chunk-3NDLE64O.js} +8 -7
  106. package/module/chunks/{chunk-IQG5GSSX.js.map → chunk-3NDLE64O.js.map} +2 -2
  107. package/module/chunks/{chunk-YKT3CRI6.js → chunk-3QT355V5.js} +2 -2
  108. package/module/chunks/{chunk-YKT3CRI6.js.map → chunk-3QT355V5.js.map} +1 -1
  109. package/module/chunks/{chunk-NCPTJ5RB.js → chunk-3R73WRRN.js} +18 -14
  110. package/module/chunks/chunk-3R73WRRN.js.map +7 -0
  111. package/module/chunks/{chunk-BRGYD3MR.js → chunk-4L4BWEM7.js} +2 -2
  112. package/module/chunks/{chunk-BRGYD3MR.js.map → chunk-4L4BWEM7.js.map} +1 -1
  113. package/module/chunks/{chunk-RODBPKID.js → chunk-4PUMQWA5.js} +6 -5
  114. package/module/chunks/{chunk-RODBPKID.js.map → chunk-4PUMQWA5.js.map} +2 -2
  115. package/module/chunks/{chunk-L4ZPYLUY.js → chunk-5CXOMUN4.js} +7 -6
  116. package/module/chunks/{chunk-L4ZPYLUY.js.map → chunk-5CXOMUN4.js.map} +1 -1
  117. package/module/chunks/{chunk-X7ATHE2S.js → chunk-5TGHI5GV.js} +2 -2
  118. package/module/chunks/{chunk-X7ATHE2S.js.map → chunk-5TGHI5GV.js.map} +1 -1
  119. package/module/chunks/{chunk-NJF2IOVV.js → chunk-6L4PTRMO.js} +2 -2
  120. package/module/chunks/{chunk-NJF2IOVV.js.map → chunk-6L4PTRMO.js.map} +1 -1
  121. package/module/chunks/{chunk-E2DI77AU.js → chunk-6VIKADMF.js} +2 -2
  122. package/module/chunks/{chunk-UPZBDSS7.js → chunk-7CJM54O3.js} +11 -8
  123. package/module/chunks/{chunk-UPZBDSS7.js.map → chunk-7CJM54O3.js.map} +1 -1
  124. package/module/chunks/{chunk-GWAXQYWY.js → chunk-AD6EIRYL.js} +11 -10
  125. package/module/chunks/{chunk-GWAXQYWY.js.map → chunk-AD6EIRYL.js.map} +2 -2
  126. package/module/chunks/{chunk-J5CY2G3T.js → chunk-AG73TP3S.js} +12 -9
  127. package/module/chunks/{chunk-J5CY2G3T.js.map → chunk-AG73TP3S.js.map} +1 -1
  128. package/module/chunks/{chunk-BLXVTG4B.js → chunk-AIH4ILPH.js} +12 -9
  129. package/module/chunks/{chunk-BLXVTG4B.js.map → chunk-AIH4ILPH.js.map} +1 -1
  130. package/module/chunks/{chunk-GRIJP4FT.js → chunk-ANTP4L4N.js} +18 -14
  131. package/module/chunks/chunk-ANTP4L4N.js.map +7 -0
  132. package/module/chunks/{chunk-4OLWQA6K.js → chunk-AROBR6WM.js} +11 -10
  133. package/module/chunks/{chunk-4OLWQA6K.js.map → chunk-AROBR6WM.js.map} +2 -2
  134. package/module/chunks/{chunk-VQIRZ53C.js → chunk-B5OBVUF5.js} +3 -1
  135. package/module/chunks/{chunk-NIACHGAA.js → chunk-BDLV2ADM.js} +3 -3
  136. package/module/chunks/{chunk-CFGNNO2V.js → chunk-BR42RPXM.js} +9 -8
  137. package/module/chunks/{chunk-CFGNNO2V.js.map → chunk-BR42RPXM.js.map} +2 -2
  138. package/module/chunks/{chunk-HIICL66H.js → chunk-BXDA2XH4.js} +2 -2
  139. package/module/chunks/{chunk-HIICL66H.js.map → chunk-BXDA2XH4.js.map} +1 -1
  140. package/module/chunks/{chunk-NWVLNDCF.js → chunk-CXXSJOFS.js} +2 -2
  141. package/module/chunks/{chunk-NWVLNDCF.js.map → chunk-CXXSJOFS.js.map} +1 -1
  142. package/module/chunks/{chunk-OSDOIGWB.js → chunk-DU4JCIM3.js} +2 -2
  143. package/module/chunks/{chunk-OSDOIGWB.js.map → chunk-DU4JCIM3.js.map} +1 -1
  144. package/module/chunks/{chunk-FVGABOJM.js → chunk-E5POXMHH.js} +15 -11
  145. package/module/chunks/chunk-E5POXMHH.js.map +7 -0
  146. package/module/chunks/chunk-FLMBGMR4.js +32 -0
  147. package/module/chunks/chunk-FLMBGMR4.js.map +7 -0
  148. package/module/chunks/{chunk-734QWOYU.js → chunk-GIXERSIF.js} +11 -10
  149. package/module/chunks/{chunk-734QWOYU.js.map → chunk-GIXERSIF.js.map} +1 -1
  150. package/module/chunks/{chunk-JXPIKVRZ.js → chunk-GUWB2JIP.js} +11 -10
  151. package/module/chunks/{chunk-JXPIKVRZ.js.map → chunk-GUWB2JIP.js.map} +1 -1
  152. package/module/chunks/{chunk-SIFZZCPT.js → chunk-HPEHWRJP.js} +31 -26
  153. package/module/chunks/chunk-HPEHWRJP.js.map +7 -0
  154. package/module/chunks/{chunk-52TYQW2Y.js → chunk-HTZYYFJO.js} +2 -2
  155. package/module/chunks/{chunk-52TYQW2Y.js.map → chunk-HTZYYFJO.js.map} +1 -1
  156. package/module/chunks/{chunk-JLYV2H24.js → chunk-HXK4QHPR.js} +3 -3
  157. package/module/chunks/{chunk-BSMCGXVQ.js → chunk-I7XN7DKU.js} +2 -2
  158. package/module/chunks/{chunk-BSMCGXVQ.js.map → chunk-I7XN7DKU.js.map} +1 -1
  159. package/module/chunks/{chunk-AWNWXBE4.js → chunk-JHFAWC4B.js} +9 -8
  160. package/module/chunks/{chunk-AWNWXBE4.js.map → chunk-JHFAWC4B.js.map} +2 -2
  161. package/module/chunks/{chunk-XUK4ZKWN.js → chunk-KDMM6KX4.js} +9 -8
  162. package/module/chunks/{chunk-XUK4ZKWN.js.map → chunk-KDMM6KX4.js.map} +1 -1
  163. package/module/chunks/{chunk-G6N5OMKL.js → chunk-L2MCGOFY.js} +2 -2
  164. package/module/chunks/{chunk-G6N5OMKL.js.map → chunk-L2MCGOFY.js.map} +1 -1
  165. package/module/chunks/{chunk-OIQNUT2X.js → chunk-LATZ7CUV.js} +7 -4
  166. package/module/chunks/{chunk-OIQNUT2X.js.map → chunk-LATZ7CUV.js.map} +1 -1
  167. package/module/chunks/{chunk-ECEBJH6K.js → chunk-LKIWD6NR.js} +12 -11
  168. package/module/chunks/{chunk-ECEBJH6K.js.map → chunk-LKIWD6NR.js.map} +2 -2
  169. package/module/chunks/{chunk-2QMHWIV5.js → chunk-N3HJVTLY.js} +16 -15
  170. package/module/chunks/{chunk-2QMHWIV5.js.map → chunk-N3HJVTLY.js.map} +2 -2
  171. package/module/chunks/{chunk-J2TRUM5N.js → chunk-PHOUPWEN.js} +2 -2
  172. package/module/chunks/{chunk-J2TRUM5N.js.map → chunk-PHOUPWEN.js.map} +1 -1
  173. package/module/chunks/{chunk-HXY4TSUO.js → chunk-PMXVITCC.js} +2 -2
  174. package/module/chunks/{chunk-HXY4TSUO.js.map → chunk-PMXVITCC.js.map} +1 -1
  175. package/module/chunks/{chunk-B2LPQWLD.js → chunk-Q4EASNDZ.js} +10 -9
  176. package/module/chunks/{chunk-B2LPQWLD.js.map → chunk-Q4EASNDZ.js.map} +2 -2
  177. package/module/chunks/{chunk-IGGLU44N.js → chunk-QPUZLO5O.js} +2 -2
  178. package/module/chunks/{chunk-IGGLU44N.js.map → chunk-QPUZLO5O.js.map} +1 -1
  179. package/module/chunks/{chunk-QU7RW3YZ.js → chunk-SELLU76G.js} +10 -7
  180. package/module/chunks/{chunk-QU7RW3YZ.js.map → chunk-SELLU76G.js.map} +1 -1
  181. package/module/chunks/{chunk-JILFF3WY.js → chunk-SMDUMR2P.js} +18 -14
  182. package/module/chunks/chunk-SMDUMR2P.js.map +7 -0
  183. package/module/chunks/{chunk-72YLBMXL.js → chunk-SPVRIPCR.js} +23 -19
  184. package/module/chunks/chunk-SPVRIPCR.js.map +7 -0
  185. package/module/chunks/{chunk-KEARZQAT.js → chunk-SRI3BMZH.js} +11 -10
  186. package/module/chunks/{chunk-KEARZQAT.js.map → chunk-SRI3BMZH.js.map} +1 -1
  187. package/module/chunks/{chunk-ETJ5YPF3.js → chunk-TLNR3NED.js} +9 -8
  188. package/module/chunks/{chunk-ETJ5YPF3.js.map → chunk-TLNR3NED.js.map} +1 -1
  189. package/module/chunks/{chunk-OTGQ73VF.js → chunk-UERW7LTA.js} +8 -7
  190. package/module/chunks/{chunk-OTGQ73VF.js.map → chunk-UERW7LTA.js.map} +2 -2
  191. package/module/chunks/{chunk-A3BAVEME.js → chunk-WPBXWBTX.js} +8 -7
  192. package/module/chunks/{chunk-A3BAVEME.js.map → chunk-WPBXWBTX.js.map} +2 -2
  193. package/module/chunks/{chunk-X2HLBQUA.js → chunk-YBGLF5LF.js} +14 -13
  194. package/module/chunks/{chunk-X2HLBQUA.js.map → chunk-YBGLF5LF.js.map} +1 -1
  195. package/module/chunks/{chunk-FSOMEJXM.js → chunk-ZCC73T4R.js} +8 -7
  196. package/module/chunks/{chunk-FSOMEJXM.js.map → chunk-ZCC73T4R.js.map} +2 -2
  197. package/module/groups/ActionsGroup.js +7 -7
  198. package/module/groups/ControlGroup.js +42 -42
  199. package/module/groups/EditingGroup.js +42 -42
  200. package/module/groups/EditorGroup.js +42 -42
  201. package/module/groups/EditorsControlGroup.js +42 -42
  202. package/module/groups/HistoryGroup.js +42 -42
  203. package/module/groups/SidebarControlGroup.js +42 -42
  204. package/module/groups/VisualizationGroup.js +42 -42
  205. package/module/groups/index.js +49 -49
  206. package/module/index.js +51 -51
  207. package/package.json +18 -18
  208. package/types/buttons/Charts.d.ts.map +1 -1
  209. package/types/buttons/IconGallery.d.ts.map +1 -1
  210. package/types/buttons/Inputs.d.ts.map +1 -1
  211. package/types/buttons/Shapes.d.ts.map +1 -1
  212. package/types/buttons/tokenManager/TokenManager.d.ts +1 -1
  213. package/types/buttons/tokenManager/TokenManager.d.ts.map +1 -1
  214. package/types/groups/EditorsControlGroup.d.ts.map +1 -1
  215. package/types/groups/SidebarControlGroup.d.ts.map +1 -1
  216. package/module/chunks/chunk-72YLBMXL.js.map +0 -7
  217. package/module/chunks/chunk-FVGABOJM.js.map +0 -7
  218. package/module/chunks/chunk-GRIJP4FT.js.map +0 -7
  219. package/module/chunks/chunk-JILFF3WY.js.map +0 -7
  220. package/module/chunks/chunk-KJLRQLFH.js +0 -28
  221. package/module/chunks/chunk-NCPTJ5RB.js.map +0 -7
  222. package/module/chunks/chunk-SIFZZCPT.js.map +0 -7
  223. package/module/chunks/chunk-WFAY6ABE.js +0 -28
  224. package/module/chunks/chunk-WFAY6ABE.js.map +0 -7
  225. package/tsconfig.json +0 -9
  226. /package/module/chunks/{chunk-E2DI77AU.js.map → chunk-6VIKADMF.js.map} +0 -0
  227. /package/module/chunks/{chunk-VQIRZ53C.js.map → chunk-B5OBVUF5.js.map} +0 -0
  228. /package/module/chunks/{chunk-NIACHGAA.js.map → chunk-BDLV2ADM.js.map} +0 -0
  229. /package/module/chunks/{chunk-JLYV2H24.js.map → chunk-HXK4QHPR.js.map} +0 -0
@@ -3,22 +3,23 @@ SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
3
3
  in part without a valid written license from Splunk Inc. is PROHIBITED. */
4
4
  import {
5
5
  dashboard_state_exports
6
- } from "./chunk-NJF2IOVV.js";
6
+ } from "./chunk-6L4PTRMO.js";
7
7
  import {
8
8
  themes_exports
9
- } from "./chunk-IGGLU44N.js";
9
+ } from "./chunk-QPUZLO5O.js";
10
10
  import {
11
11
  react_default,
12
12
  react_exports
13
- } from "./chunk-NWVLNDCF.js";
13
+ } from "./chunk-CXXSJOFS.js";
14
14
  import {
15
15
  styled_components_default,
16
16
  styled_components_exports
17
- } from "./chunk-BRGYD3MR.js";
17
+ } from "./chunk-4L4BWEM7.js";
18
18
  import {
19
19
  __export,
20
+ __name,
20
21
  __reExport
21
- } from "./chunk-VQIRZ53C.js";
22
+ } from "./chunk-B5OBVUF5.js";
22
23
 
23
24
  // esm-externals:@splunk/themes/mixins
24
25
  var mixins_exports = {};
@@ -56,7 +57,7 @@ var RightAlignItems = styled_components_default.div`
56
57
  gap: ${themes_exports.variables.spacingSmall};
57
58
  margin-inline-end: ${themes_exports.variables.spacingSmall};
58
59
  `;
59
- var Toolbar = ({
60
+ var Toolbar = /* @__PURE__ */ __name(({
60
61
  activePanel,
61
62
  dashboardApi,
62
63
  mode,
@@ -133,11 +134,11 @@ var Toolbar = ({
133
134
  },
134
135
  rightAlignItems
135
136
  ));
136
- };
137
+ }, "Toolbar");
137
138
  Toolbar.displayName = "Toolbar";
138
139
  var Toolbar_default = Toolbar;
139
140
 
140
141
  export {
141
142
  Toolbar_default
142
143
  };
143
- //# sourceMappingURL=chunk-CFGNNO2V.js.map
144
+ //# sourceMappingURL=chunk-BR42RPXM.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["@splunk/themes/mixins", "../../src/Toolbar.tsx"],
3
+ "sources": ["esm-externals:@splunk/themes/mixins", "../../src/Toolbar.tsx"],
4
4
  "sourcesContent": ["\nimport * as defaultImport from \"@splunk/themes/mixins\";\nexport * from \"@splunk/themes/mixins\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import React, { useCallback, useEffect, useMemo, useRef } from 'react';\nimport styled from 'styled-components';\nimport { variables } from '@splunk/themes';\nimport { reset } from '@splunk/themes/mixins';\nimport { selectLayoutType, useSelector } from '@splunk/dashboard-state';\nimport type { ToolbarButtonProps } from './types/common';\n\nconst ToolbarWrapper = styled.div`\n ${reset('flex')};\n justify-content: space-between;\n color: ${variables.contentColorDefault};\n padding: 5px 5px 5px 8px;\n border-bottom-width: 1px;\n border-bottom-style: solid;\n border-bottom-color: ${variables.borderColor};\n flex-wrap: wrap;\n flex-shrink: 0;\n background-color: ${variables.backgroundColorNavigation};\n`;\n\nconst LeftAlignItems = styled.div`\n flex-grow: 1;\n display: flex;\n flex-direction: row;\n gap: ${variables.spacingSmall};\n`;\n\nconst RightAlignItems = styled.div`\n flex-basis: auto;\n display: flex;\n flex-direction: row;\n gap: ${variables.spacingSmall};\n margin-inline-end: ${variables.spacingSmall};\n`;\n\nexport type ToolbarProps = ToolbarButtonProps & {\n toolbarItems: React.ReactElement[];\n};\n\n/**\n * Dashboard Toolbar\n */\nconst Toolbar = ({\n activePanel,\n dashboardApi,\n mode,\n preset,\n toolbarItems,\n}: ToolbarProps) => {\n const layoutType = useSelector(selectLayoutType);\n const toolbarRef = useRef<HTMLDivElement | null>(null);\n\n /**\n * merge dashboard props with current item props\n * so that item have access to dashboard api and other stuff\n */\n const injectDashboardProps = useCallback(\n (items: React.ReactElement[]): React.ReactElement[] => {\n const buttonProps: ToolbarButtonProps = {\n activePanel,\n dashboardApi,\n layoutType,\n mode,\n preset,\n };\n\n return items.map((item) => React.cloneElement(item, buttonProps));\n },\n [activePanel, dashboardApi, layoutType, mode, preset]\n );\n\n const leftAlignItems = useMemo(() => {\n const items = toolbarItems.filter(\n (item) => item.props?.align !== 'right'\n );\n return injectDashboardProps(items);\n }, [toolbarItems, injectDashboardProps]);\n\n const rightAlignItems = useMemo(() => {\n const items = toolbarItems.filter(\n (item) => item.props?.align === 'right'\n );\n return injectDashboardProps(items);\n }, [toolbarItems, injectDashboardProps]);\n\n const observerRef = useRef<MutationObserver | null>(null);\n const isFirstRender = useRef(true);\n\n useEffect(() => {\n if (isFirstRender.current) {\n isFirstRender.current = false;\n return undefined;\n }\n\n observerRef.current = new MutationObserver(() => {\n const firstFocusableButton = toolbarRef.current?.querySelector(\n 'button:not([disabled]):not([aria-disabled=\"true\"]):not([tabindex=\"-1\"])'\n ) as HTMLButtonElement;\n\n firstFocusableButton?.focus();\n observerRef.current?.disconnect();\n });\n\n if (toolbarRef.current) {\n observerRef.current.observe(toolbarRef.current, {\n childList: true,\n subtree: true,\n });\n }\n\n return () => {\n observerRef.current?.disconnect();\n };\n }, [mode]);\n\n if (!toolbarItems.length) {\n return null;\n }\n\n return (\n <ToolbarWrapper data-test=\"dashboard-toolbar\" ref={toolbarRef}>\n <LeftAlignItems key=\"left-align-items\" data-test=\"left-align-items\">\n {leftAlignItems}\n </LeftAlignItems>\n <RightAlignItems\n key=\"right-align-items\"\n data-test=\"right-align-items\"\n >\n {rightAlignItems}\n </RightAlignItems>\n </ToolbarWrapper>\n );\n};\n\nToolbar.displayName = 'Toolbar';\nexport default Toolbar;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAEA;AADA,YAAY,mBAAmB;AAC/B,6BAAc;AACd,IAAO,iBAAS,aAAa,gBAA8B,wBAAU;;;ACIrE,IAAM,iBAAiB,0BAAO;AAAA,UACxB,sBAAM,MAAM,CAAC;AAAA;AAAA,aAEN,yBAAU,mBAAmB;AAAA;AAAA;AAAA;AAAA,2BAIf,yBAAU,WAAW;AAAA;AAAA;AAAA,wBAGxB,yBAAU,yBAAyB;AAAA;AAG3D,IAAM,iBAAiB,0BAAO;AAAA;AAAA;AAAA;AAAA,WAInB,yBAAU,YAAY;AAAA;AAGjC,IAAM,kBAAkB,0BAAO;AAAA;AAAA;AAAA;AAAA,WAIpB,yBAAU,YAAY;AAAA,yBACR,yBAAU,YAAY;AAAA;AAU/C,IAAM,UAAU,CAAC;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ,MAAoB;AAChB,QAAM,iBAAa,qCAAY,wCAAgB;AAC/C,QAAM,iBAAa,sBAA8B,IAAI;AAMrD,QAAM,2BAAuB;AAAA,IACzB,CAAC,UAAsD;AACnD,YAAM,cAAkC;AAAA,QACpC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACJ;AAEA,aAAO,MAAM,IAAI,CAAC,SAAS,cAAM,aAAa,MAAM,WAAW,CAAC;AAAA,IACpE;AAAA,IACA,CAAC,aAAa,cAAc,YAAY,MAAM,MAAM;AAAA,EACxD;AAEA,QAAM,qBAAiB,uBAAQ,MAAM;AACjC,UAAM,QAAQ,aAAa;AAAA,MACvB,CAAC,SAAM;AAzEnB;AAyEsB,2BAAK,UAAL,mBAAY,WAAU;AAAA;AAAA,IACpC;AACA,WAAO,qBAAqB,KAAK;AAAA,EACrC,GAAG,CAAC,cAAc,oBAAoB,CAAC;AAEvC,QAAM,sBAAkB,uBAAQ,MAAM;AAClC,UAAM,QAAQ,aAAa;AAAA,MACvB,CAAC,SAAM;AAhFnB;AAgFsB,2BAAK,UAAL,mBAAY,WAAU;AAAA;AAAA,IACpC;AACA,WAAO,qBAAqB,KAAK;AAAA,EACrC,GAAG,CAAC,cAAc,oBAAoB,CAAC;AAEvC,QAAM,kBAAc,sBAAgC,IAAI;AACxD,QAAM,oBAAgB,sBAAO,IAAI;AAEjC,+BAAU,MAAM;AACZ,QAAI,cAAc,SAAS;AACvB,oBAAc,UAAU;AACxB,aAAO;AAAA,IACX;AAEA,gBAAY,UAAU,IAAI,iBAAiB,MAAM;AA9FzD;AA+FY,YAAM,wBAAuB,gBAAW,YAAX,mBAAoB;AAAA,QAC7C;AAAA;AAGJ,mEAAsB;AACtB,wBAAY,YAAZ,mBAAqB;AAAA,IACzB,CAAC;AAED,QAAI,WAAW,SAAS;AACpB,kBAAY,QAAQ,QAAQ,WAAW,SAAS;AAAA,QAC5C,WAAW;AAAA,QACX,SAAS;AAAA,MACb,CAAC;AAAA,IACL;AAEA,WAAO,MAAM;AA9GrB;AA+GY,wBAAY,YAAZ,mBAAqB;AAAA,IACzB;AAAA,EACJ,GAAG,CAAC,IAAI,CAAC;AAET,MAAI,CAAC,aAAa,QAAQ;AACtB,WAAO;AAAA,EACX;AAEA,SACI,4CAAC,kBAAe,aAAU,qBAAoB,KAAK,cAC/C,4CAAC,kBAAe,KAAI,oBAAmB,aAAU,sBAC5C,cACL,GACA;AAAA,IAAC;AAAA;AAAA,MACG,KAAI;AAAA,MACJ,aAAU;AAAA;AAAA,IAET;AAAA,EACL,CACJ;AAER;AAEA,QAAQ,cAAc;AACtB,IAAO,kBAAQ;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAEA;AADA,YAAY,mBAAmB;AAC/B,6BAAc;AACd,IAAO,iBAAS,aAAa,gBAA8B,wBAAU;;;ACIrE,IAAM,iBAAiB,0BAAO;AAAA,UACxB,sBAAM,MAAM,CAAC;AAAA;AAAA,aAEN,yBAAU,mBAAmB;AAAA;AAAA;AAAA;AAAA,2BAIf,yBAAU,WAAW;AAAA;AAAA;AAAA,wBAGxB,yBAAU,yBAAyB;AAAA;AAG3D,IAAM,iBAAiB,0BAAO;AAAA;AAAA;AAAA;AAAA,WAInB,yBAAU,YAAY;AAAA;AAGjC,IAAM,kBAAkB,0BAAO;AAAA;AAAA;AAAA;AAAA,WAIpB,yBAAU,YAAY;AAAA,yBACR,yBAAU,YAAY;AAAA;AAU/C,IAAM,UAAU,wBAAC;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ,MAAoB;AAChB,QAAM,iBAAa,qCAAY,wCAAgB;AAC/C,QAAM,iBAAa,sBAA8B,IAAI;AAMrD,QAAM,2BAAuB;AAAA,IACzB,CAAC,UAAsD;AACnD,YAAM,cAAkC;AAAA,QACpC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACJ;AAEA,aAAO,MAAM,IAAI,CAAC,SAAS,cAAM,aAAa,MAAM,WAAW,CAAC;AAAA,IACpE;AAAA,IACA,CAAC,aAAa,cAAc,YAAY,MAAM,MAAM;AAAA,EACxD;AAEA,QAAM,qBAAiB,uBAAQ,MAAM;AACjC,UAAM,QAAQ,aAAa;AAAA,MACvB,CAAC,SAAM;AAzEnB;AAyEsB,2BAAK,UAAL,mBAAY,WAAU;AAAA;AAAA,IACpC;AACA,WAAO,qBAAqB,KAAK;AAAA,EACrC,GAAG,CAAC,cAAc,oBAAoB,CAAC;AAEvC,QAAM,sBAAkB,uBAAQ,MAAM;AAClC,UAAM,QAAQ,aAAa;AAAA,MACvB,CAAC,SAAM;AAhFnB;AAgFsB,2BAAK,UAAL,mBAAY,WAAU;AAAA;AAAA,IACpC;AACA,WAAO,qBAAqB,KAAK;AAAA,EACrC,GAAG,CAAC,cAAc,oBAAoB,CAAC;AAEvC,QAAM,kBAAc,sBAAgC,IAAI;AACxD,QAAM,oBAAgB,sBAAO,IAAI;AAEjC,+BAAU,MAAM;AACZ,QAAI,cAAc,SAAS;AACvB,oBAAc,UAAU;AACxB,aAAO;AAAA,IACX;AAEA,gBAAY,UAAU,IAAI,iBAAiB,MAAM;AA9FzD;AA+FY,YAAM,wBAAuB,gBAAW,YAAX,mBAAoB;AAAA,QAC7C;AAAA;AAGJ,mEAAsB;AACtB,wBAAY,YAAZ,mBAAqB;AAAA,IACzB,CAAC;AAED,QAAI,WAAW,SAAS;AACpB,kBAAY,QAAQ,QAAQ,WAAW,SAAS;AAAA,QAC5C,WAAW;AAAA,QACX,SAAS;AAAA,MACb,CAAC;AAAA,IACL;AAEA,WAAO,MAAM;AA9GrB;AA+GY,wBAAY,YAAZ,mBAAqB;AAAA,IACzB;AAAA,EACJ,GAAG,CAAC,IAAI,CAAC;AAET,MAAI,CAAC,aAAa,QAAQ;AACtB,WAAO;AAAA,EACX;AAEA,SACI,4CAAC,kBAAe,aAAU,qBAAoB,KAAK,cAC/C,4CAAC,kBAAe,KAAI,oBAAmB,aAAU,sBAC5C,cACL,GACA;AAAA,IAAC;AAAA;AAAA,MACG,KAAI;AAAA,MACJ,aAAU;AAAA;AAAA,IAET;AAAA,EACL,CACJ;AAER,GA1FgB;AA4FhB,QAAQ,cAAc;AACtB,IAAO,kBAAQ;",
6
6
  "names": []
7
7
  }
@@ -4,7 +4,7 @@ in part without a valid written license from Splunk Inc. is PROHIBITED. */
4
4
  import {
5
5
  __export,
6
6
  __reExport
7
- } from "./chunk-VQIRZ53C.js";
7
+ } from "./chunk-B5OBVUF5.js";
8
8
 
9
9
  // esm-externals:@splunk/dashboard-ui
10
10
  var dashboard_ui_exports = {};
@@ -19,4 +19,4 @@ var dashboard_ui_default = "default" in defaultImport ? defaultImport.default :
19
19
  export {
20
20
  dashboard_ui_exports
21
21
  };
22
- //# sourceMappingURL=chunk-HIICL66H.js.map
22
+ //# sourceMappingURL=chunk-BXDA2XH4.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["@splunk/dashboard-ui"],
3
+ "sources": ["esm-externals:@splunk/dashboard-ui"],
4
4
  "sourcesContent": ["\nimport * as defaultImport from \"@splunk/dashboard-ui\";\nexport * from \"@splunk/dashboard-ui\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n"],
5
5
  "mappings": ";;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAEA;AADA,YAAY,mBAAmB;AAC/B,mCAAc;AACd,IAAO,uBAAS,aAAa,gBAA8B,wBAAU;",
6
6
  "names": []
@@ -4,7 +4,7 @@ in part without a valid written license from Splunk Inc. is PROHIBITED. */
4
4
  import {
5
5
  __export,
6
6
  __reExport
7
- } from "./chunk-VQIRZ53C.js";
7
+ } from "./chunk-B5OBVUF5.js";
8
8
 
9
9
  // esm-externals:react
10
10
  var react_exports = {};
@@ -20,4 +20,4 @@ export {
20
20
  react_default,
21
21
  react_exports
22
22
  };
23
- //# sourceMappingURL=chunk-NWVLNDCF.js.map
23
+ //# sourceMappingURL=chunk-CXXSJOFS.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["react"],
3
+ "sources": ["esm-externals:react"],
4
4
  "sourcesContent": ["\nimport * as defaultImport from \"react\";\nexport * from \"react\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n"],
5
5
  "mappings": ";;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAEA;AADA,YAAY,mBAAmB;AAC/B,4BAAc;AACd,IAAO,gBAAS,aAAa,gBAA8B,wBAAU;",
6
6
  "names": []
@@ -4,7 +4,7 @@ in part without a valid written license from Splunk Inc. is PROHIBITED. */
4
4
  import {
5
5
  __export,
6
6
  __reExport
7
- } from "./chunk-VQIRZ53C.js";
7
+ } from "./chunk-B5OBVUF5.js";
8
8
 
9
9
  // esm-externals:@splunk/react-icons/Picture
10
10
  var Picture_exports = {};
@@ -20,4 +20,4 @@ export {
20
20
  Picture_default,
21
21
  Picture_exports
22
22
  };
23
- //# sourceMappingURL=chunk-OSDOIGWB.js.map
23
+ //# sourceMappingURL=chunk-DU4JCIM3.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["@splunk/react-icons/Picture"],
3
+ "sources": ["esm-externals:@splunk/react-icons/Picture"],
4
4
  "sourcesContent": ["\nimport * as defaultImport from \"@splunk/react-icons/Picture\";\nexport * from \"@splunk/react-icons/Picture\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n"],
5
5
  "mappings": ";;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAEA;AADA,YAAY,mBAAmB;AAC/B,8BAAc;AACd,IAAO,kBAAS,aAAa,gBAA8B,wBAAU;",
6
6
  "names": []
@@ -1,37 +1,41 @@
1
1
  /* Copyright © 2020 Splunk Inc.
2
2
  SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
3
3
  in part without a valid written license from Splunk Inc. is PROHIBITED. */
4
+ import {
5
+ TokenManager
6
+ } from "./chunk-HPEHWRJP.js";
4
7
  import {
5
8
  Source_default
6
- } from "./chunk-FSOMEJXM.js";
9
+ } from "./chunk-ZCC73T4R.js";
7
10
  import {
8
11
  Config_default
9
- } from "./chunk-AWNWXBE4.js";
12
+ } from "./chunk-JHFAWC4B.js";
10
13
  import {
11
14
  Data_default
12
- } from "./chunk-B2LPQWLD.js";
15
+ } from "./chunk-Q4EASNDZ.js";
13
16
  import {
14
17
  ItemGroup_default
15
- } from "./chunk-XUK4ZKWN.js";
18
+ } from "./chunk-KDMM6KX4.js";
16
19
  import {
17
20
  dashboard_utils_exports
18
- } from "./chunk-HXY4TSUO.js";
21
+ } from "./chunk-PMXVITCC.js";
19
22
  import {
20
23
  react_default,
21
24
  react_exports
22
- } from "./chunk-NWVLNDCF.js";
25
+ } from "./chunk-CXXSJOFS.js";
23
26
  import {
27
+ __name,
24
28
  __spreadValues
25
- } from "./chunk-VQIRZ53C.js";
29
+ } from "./chunk-B5OBVUF5.js";
26
30
 
27
31
  // src/groups/EditorsControlGroup.tsx
28
- var EditorsControlGroup = (props) => {
32
+ var EditorsControlGroup = /* @__PURE__ */ __name((props) => {
29
33
  var _a;
30
- 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(Source_default, { onClick: (_a = props.sourceButtonOnClick) != null ? _a : dashboard_utils_exports.noop }));
31
- };
34
+ 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 }));
35
+ }, "EditorsControlGroup");
32
36
  var EditorsControlGroup_default = EditorsControlGroup;
33
37
 
34
38
  export {
35
39
  EditorsControlGroup_default
36
40
  };
37
- //# sourceMappingURL=chunk-FVGABOJM.js.map
41
+ //# sourceMappingURL=chunk-E5POXMHH.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/groups/EditorsControlGroup.tsx"],
4
+ "sourcesContent": ["import React from 'react';\nimport { noop } from '@splunk/dashboard-utils';\nimport { Config, Data, TokenManager, Source } from '../buttons';\nimport ItemGroup from '../ItemGroup';\n\n/**\n * group that controls dashboard editors\n */\nconst EditorsControlGroup = (props: React.ComponentProps<typeof ItemGroup>) => (\n <ItemGroup borders={false} {...props}>\n <Config />\n <Data />\n <TokenManager />\n <Source onClick={props.sourceButtonOnClick ?? noop} />\n </ItemGroup>\n);\n\nexport default EditorsControlGroup;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,IAAM,sBAAsB,wBAAC,UAA+C;AAR5E;AASI,qDAAC,oCAAU,SAAS,SAAW,QAC3B,4CAAC,oBAAO,GACR,4CAAC,kBAAK,GACN,4CAAC,kBAAa,GACd,4CAAC,kBAAO,UAAS,WAAM,wBAAN,YAA6B,8BAAM,CACxD;AAAA,GANwB;AAS5B,IAAO,8BAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,32 @@
1
+ /* Copyright © 2020 Splunk Inc.
2
+ SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
3
+ in part without a valid written license from Splunk Inc. is PROHIBITED. */
4
+ import {
5
+ TokenManager
6
+ } from "./chunk-HPEHWRJP.js";
7
+ import {
8
+ Config_default
9
+ } from "./chunk-JHFAWC4B.js";
10
+ import {
11
+ Data_default
12
+ } from "./chunk-Q4EASNDZ.js";
13
+ import {
14
+ ItemGroup_default
15
+ } from "./chunk-KDMM6KX4.js";
16
+ import {
17
+ react_default,
18
+ react_exports
19
+ } from "./chunk-CXXSJOFS.js";
20
+ import {
21
+ __name,
22
+ __spreadValues
23
+ } from "./chunk-B5OBVUF5.js";
24
+
25
+ // src/groups/SidebarControlGroup.tsx
26
+ 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");
27
+ var SidebarControlGroup_default = SidebarControlGroup;
28
+
29
+ export {
30
+ SidebarControlGroup_default
31
+ };
32
+ //# sourceMappingURL=chunk-FLMBGMR4.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/groups/SidebarControlGroup.tsx"],
4
+ "sourcesContent": ["import React from 'react';\nimport ItemGroup from '../ItemGroup';\nimport { Config, Data, TokenManager } from '../buttons';\n\n/**\n * group that controls dashboard sidebar\n */\nconst SidebarControlGroup = (props: React.ComponentProps<typeof ItemGroup>) => (\n <ItemGroup {...props}>\n <Config />\n <Data />\n <TokenManager />\n </ItemGroup>\n);\n\nexport default SidebarControlGroup;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAOA,IAAM,sBAAsB,wBAAC,UACzB,4CAAC,sCAAc,QACX,4CAAC,oBAAO,GACR,4CAAC,kBAAK,GACN,4CAAC,kBAAa,CAClB,GALwB;AAQ5B,IAAO,8BAAQ;",
6
+ "names": []
7
+ }
@@ -4,29 +4,30 @@ in part without a valid written license from Splunk Inc. is PROHIBITED. */
4
4
  import {
5
5
  Picture_default,
6
6
  Picture_exports
7
- } from "./chunk-OSDOIGWB.js";
7
+ } from "./chunk-DU4JCIM3.js";
8
8
  import {
9
9
  i18n_exports
10
- } from "./chunk-BSMCGXVQ.js";
10
+ } from "./chunk-I7XN7DKU.js";
11
11
  import {
12
12
  IconButton_default,
13
13
  prepareIcon
14
- } from "./chunk-GWAXQYWY.js";
14
+ } from "./chunk-AD6EIRYL.js";
15
15
  import {
16
16
  react_default,
17
17
  react_exports
18
- } from "./chunk-NWVLNDCF.js";
18
+ } from "./chunk-CXXSJOFS.js";
19
19
  import {
20
- __async
21
- } from "./chunk-VQIRZ53C.js";
20
+ __async,
21
+ __name
22
+ } from "./chunk-B5OBVUF5.js";
22
23
 
23
24
  // src/buttons/Image.tsx
24
25
  var icon = prepareIcon({
25
26
  Icon: Picture_default,
26
27
  screenReaderContent: (0, i18n_exports._)("Add image")
27
28
  });
28
- var Image = ({ dashboardApi }) => {
29
- const handleClick = (0, react_exports.useCallback)(() => __async(void 0, null, function* () {
29
+ var Image = /* @__PURE__ */ __name(({ dashboardApi }) => {
30
+ const handleClick = (0, react_exports.useCallback)(() => __async(null, null, function* () {
30
31
  dashboardApi == null ? void 0 : dashboardApi.createVisualization({
31
32
  visualizationDefinition: {
32
33
  type: "splunk.image",
@@ -47,10 +48,10 @@ var Image = ({ dashboardApi }) => {
47
48
  icon
48
49
  }
49
50
  );
50
- };
51
+ }, "Image");
51
52
  var Image_default = Image;
52
53
 
53
54
  export {
54
55
  Image_default
55
56
  };
56
- //# sourceMappingURL=chunk-734QWOYU.js.map
57
+ //# sourceMappingURL=chunk-GIXERSIF.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/buttons/Image.tsx"],
4
4
  "sourcesContent": ["import React, { useCallback } from 'react';\n\nimport { _ } from '@splunk/ui-utils/i18n';\nimport Picture from '@splunk/react-icons/Picture';\n\nimport IconButton, { prepareIcon } from '../IconButton';\nimport type { ToolbarButtonProps } from '../types/common';\n\nconst icon = prepareIcon({\n Icon: Picture,\n screenReaderContent: _('Add image'),\n});\n\n/**\n * Button that create a empty image\n */\nconst Image = ({ dashboardApi }: ToolbarButtonProps) => {\n const handleClick = useCallback(async () => {\n dashboardApi?.createVisualization({\n visualizationDefinition: {\n type: 'splunk.image',\n options: {\n preserveAspectRatio: true,\n },\n },\n });\n\n dashboardApi?.openPanel({\n activePanel: 'config',\n });\n }, [dashboardApi]);\n\n return (\n <IconButton\n testLabel=\"image-button\"\n onClick={handleClick}\n icon={icon}\n />\n );\n};\n\nexport default Image;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAQA,IAAM,OAAO,YAAY;AAAA,EACrB,MAAM;AAAA,EACN,yBAAqB,gBAAE,WAAW;AACtC,CAAC;AAKD,IAAM,QAAQ,CAAC,EAAE,aAAa,MAA0B;AACpD,QAAM,kBAAc,2BAAY,MAAY;AACxC,iDAAc,oBAAoB;AAAA,MAC9B,yBAAyB;AAAA,QACrB,MAAM;AAAA,QACN,SAAS;AAAA,UACL,qBAAqB;AAAA,QACzB;AAAA,MACJ;AAAA,IACJ;AAEA,iDAAc,UAAU;AAAA,MACpB,aAAa;AAAA,IACjB;AAAA,EACJ,IAAG,CAAC,YAAY,CAAC;AAEjB,SACI;AAAA,IAAC;AAAA;AAAA,MACG,WAAU;AAAA,MACV,SAAS;AAAA,MACT;AAAA;AAAA,EACJ;AAER;AAEA,IAAO,gBAAQ;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAQA,IAAM,OAAO,YAAY;AAAA,EACrB,MAAM;AAAA,EACN,yBAAqB,gBAAE,WAAW;AACtC,CAAC;AAKD,IAAM,QAAQ,wBAAC,EAAE,aAAa,MAA0B;AACpD,QAAM,kBAAc,2BAAY,MAAY;AACxC,iDAAc,oBAAoB;AAAA,MAC9B,yBAAyB;AAAA,QACrB,MAAM;AAAA,QACN,SAAS;AAAA,UACL,qBAAqB;AAAA,QACzB;AAAA,MACJ;AAAA,IACJ;AAEA,iDAAc,UAAU;AAAA,MACpB,aAAa;AAAA,IACjB;AAAA,EACJ,IAAG,CAAC,YAAY,CAAC;AAEjB,SACI;AAAA,IAAC;AAAA;AAAA,MACG,WAAU;AAAA,MACV,SAAS;AAAA,MACT;AAAA;AAAA,EACJ;AAER,GAvBc;AAyBd,IAAO,gBAAQ;",
6
6
  "names": []
7
7
  }
@@ -3,30 +3,31 @@ SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
3
3
  in part without a valid written license from Splunk Inc. is PROHIBITED. */
4
4
  import {
5
5
  Zoom
6
- } from "./chunk-SIFZZCPT.js";
6
+ } from "./chunk-HPEHWRJP.js";
7
7
  import {
8
8
  ModeSwitch_default
9
- } from "./chunk-J5CY2G3T.js";
9
+ } from "./chunk-AG73TP3S.js";
10
10
  import {
11
11
  GridLineSwitch_default
12
- } from "./chunk-4OLWQA6K.js";
12
+ } from "./chunk-AROBR6WM.js";
13
13
  import {
14
14
  ItemGroup_default
15
- } from "./chunk-XUK4ZKWN.js";
15
+ } from "./chunk-KDMM6KX4.js";
16
16
  import {
17
17
  themes_exports
18
- } from "./chunk-IGGLU44N.js";
18
+ } from "./chunk-QPUZLO5O.js";
19
19
  import {
20
20
  react_default,
21
21
  react_exports
22
- } from "./chunk-NWVLNDCF.js";
22
+ } from "./chunk-CXXSJOFS.js";
23
23
  import {
24
+ __name,
24
25
  __spreadProps,
25
26
  __spreadValues
26
- } from "./chunk-VQIRZ53C.js";
27
+ } from "./chunk-B5OBVUF5.js";
27
28
 
28
29
  // src/groups/EditingGroup.tsx
29
- var EditingGroup = (props) => {
30
+ var EditingGroup = /* @__PURE__ */ __name((props) => {
30
31
  const { enableModeSwitch = true, borders = true, layoutType } = props;
31
32
  const { spacingSmall } = (0, themes_exports.useSplunkTheme)();
32
33
  const modeSwitch = (0, react_exports.useMemo)(() => {
@@ -39,10 +40,10 @@ var EditingGroup = (props) => {
39
40
  return layoutType === "absolute" ? [/* @__PURE__ */ react_default.createElement(Zoom, { key: "zoom", showSeparator: borders })] : null;
40
41
  }, [layoutType, borders]);
41
42
  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);
42
- };
43
+ }, "EditingGroup");
43
44
  var EditingGroup_default = EditingGroup;
44
45
 
45
46
  export {
46
47
  EditingGroup_default
47
48
  };
48
- //# sourceMappingURL=chunk-JXPIKVRZ.js.map
49
+ //# sourceMappingURL=chunk-GUWB2JIP.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/groups/EditingGroup.tsx"],
4
4
  "sourcesContent": ["import React, { useMemo } from 'react';\nimport { useSplunkTheme } from '@splunk/themes';\nimport ItemGroup from '../ItemGroup';\nimport { GridLineSwitch, ModeSwitch, Zoom } from '../buttons';\n\nexport type EditingGroupProps = {\n enableModeSwitch?: boolean;\n} & React.ComponentProps<typeof ItemGroup>;\n\n/**\n * Group of standard editing controls (gridline, zoom, mode)\n */\nconst EditingGroup = (props: EditingGroupProps) => {\n const { enableModeSwitch = true, borders = true, layoutType } = props;\n const { spacingSmall } = useSplunkTheme();\n\n const modeSwitch = useMemo(() => {\n if (!enableModeSwitch) {\n return null;\n }\n\n return <ModeSwitch />;\n }, [enableModeSwitch]);\n\n const zoomControl = useMemo(() => {\n return layoutType === 'absolute'\n ? [<Zoom key=\"zoom\" showSeparator={borders} />]\n : null;\n }, [layoutType, borders]);\n\n return (\n <ItemGroup {...props} borders={false} gap={spacingSmall}>\n <GridLineSwitch showSeparator={enableModeSwitch && borders} />\n {zoomControl}\n {modeSwitch}\n </ItemGroup>\n );\n};\n\nexport default EditingGroup;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,IAAM,eAAe,CAAC,UAA6B;AAC/C,QAAM,EAAE,mBAAmB,MAAM,UAAU,MAAM,WAAW,IAAI;AAChE,QAAM,EAAE,aAAa,QAAI,+BAAe;AAExC,QAAM,iBAAa,uBAAQ,MAAM;AAC7B,QAAI,CAAC,kBAAkB;AACnB,aAAO;AAAA,IACX;AAEA,WAAO,4CAAC,wBAAW;AAAA,EACvB,GAAG,CAAC,gBAAgB,CAAC;AAErB,QAAM,kBAAc,uBAAQ,MAAM;AAC9B,WAAO,eAAe,aAChB,CAAC,4CAAC,QAAK,KAAI,QAAO,eAAe,SAAS,CAAE,IAC5C;AAAA,EACV,GAAG,CAAC,YAAY,OAAO,CAAC;AAExB,SACI,4CAAC,oDAAc,QAAd,EAAqB,SAAS,OAAO,KAAK,iBACvC,4CAAC,0BAAe,eAAe,oBAAoB,SAAS,GAC3D,aACA,UACL;AAER;AAEA,IAAO,uBAAQ;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,IAAM,eAAe,wBAAC,UAA6B;AAC/C,QAAM,EAAE,mBAAmB,MAAM,UAAU,MAAM,WAAW,IAAI;AAChE,QAAM,EAAE,aAAa,QAAI,+BAAe;AAExC,QAAM,iBAAa,uBAAQ,MAAM;AAC7B,QAAI,CAAC,kBAAkB;AACnB,aAAO;AAAA,IACX;AAEA,WAAO,4CAAC,wBAAW;AAAA,EACvB,GAAG,CAAC,gBAAgB,CAAC;AAErB,QAAM,kBAAc,uBAAQ,MAAM;AAC9B,WAAO,eAAe,aAChB,CAAC,4CAAC,QAAK,KAAI,QAAO,eAAe,SAAS,CAAE,IAC5C;AAAA,EACV,GAAG,CAAC,YAAY,OAAO,CAAC;AAExB,SACI,4CAAC,oDAAc,QAAd,EAAqB,SAAS,OAAO,KAAK,iBACvC,4CAAC,0BAAe,eAAe,oBAAoB,SAAS,GAC3D,aACA,UACL;AAER,GAzBqB;AA2BrB,IAAO,uBAAQ;",
6
6
  "names": []
7
7
  }
@@ -3,57 +3,58 @@ SPLUNK CONFIDENTIAL – Use or disclosure of this material in whole or
3
3
  in part without a valid written license from Splunk Inc. is PROHIBITED. */
4
4
  import {
5
5
  lodash_exports
6
- } from "./chunk-NCPTJ5RB.js";
6
+ } from "./chunk-3R73WRRN.js";
7
7
  import {
8
8
  dashboard_utils_exports
9
- } from "./chunk-HXY4TSUO.js";
9
+ } from "./chunk-PMXVITCC.js";
10
10
  import {
11
11
  ItemSeparator_default
12
- } from "./chunk-NIACHGAA.js";
12
+ } from "./chunk-BDLV2ADM.js";
13
13
  import {
14
14
  dashboard_ui_exports
15
- } from "./chunk-HIICL66H.js";
15
+ } from "./chunk-BXDA2XH4.js";
16
16
  import {
17
17
  Menu_default,
18
18
  Menu_exports
19
- } from "./chunk-X7ATHE2S.js";
19
+ } from "./chunk-5TGHI5GV.js";
20
20
  import {
21
21
  Dropdown_default,
22
22
  Dropdown_exports,
23
23
  useDropdown_default
24
- } from "./chunk-RODBPKID.js";
24
+ } from "./chunk-4PUMQWA5.js";
25
25
  import {
26
26
  dashboard_context_exports
27
- } from "./chunk-G6N5OMKL.js";
27
+ } from "./chunk-L2MCGOFY.js";
28
28
  import {
29
29
  i18n_exports
30
- } from "./chunk-BSMCGXVQ.js";
30
+ } from "./chunk-I7XN7DKU.js";
31
31
  import {
32
32
  IconButton_default,
33
33
  prepareIcon
34
- } from "./chunk-GWAXQYWY.js";
34
+ } from "./chunk-AD6EIRYL.js";
35
35
  import {
36
36
  Button_default,
37
37
  Button_exports
38
- } from "./chunk-YKT3CRI6.js";
38
+ } from "./chunk-3QT355V5.js";
39
39
  import {
40
40
  dashboard_state_exports
41
- } from "./chunk-NJF2IOVV.js";
41
+ } from "./chunk-6L4PTRMO.js";
42
42
  import {
43
43
  themes_exports
44
- } from "./chunk-IGGLU44N.js";
44
+ } from "./chunk-QPUZLO5O.js";
45
45
  import {
46
46
  react_default,
47
47
  react_exports
48
- } from "./chunk-NWVLNDCF.js";
48
+ } from "./chunk-CXXSJOFS.js";
49
49
  import {
50
50
  styled_components_default,
51
51
  styled_components_exports
52
- } from "./chunk-BRGYD3MR.js";
52
+ } from "./chunk-4L4BWEM7.js";
53
53
  import {
54
54
  __export,
55
+ __name,
55
56
  __reExport
56
- } from "./chunk-VQIRZ53C.js";
57
+ } from "./chunk-B5OBVUF5.js";
57
58
 
58
59
  // esm-externals:@splunk/react-icons/ListToken
59
60
  var ListToken_exports = {};
@@ -80,20 +81,24 @@ var tokenManagerIcon = prepareIcon({
80
81
  Icon: ListToken_default,
81
82
  screenReaderContent: (0, i18n_exports._)("Token manager")
82
83
  });
83
- var TokenManager = ({ dashboardApi }) => {
84
+ var TokenManager = /* @__PURE__ */ __name(({ dashboardApi }) => {
85
+ const { showTokenManager } = (0, dashboard_context_exports.useFeatureFlags)();
84
86
  const handleClick = (0, react_exports.useCallback)(() => {
85
- const isOpen = (dashboardApi == null ? void 0 : dashboardApi.getOpenedPanel()) === "tokens";
87
+ const isOpen = (dashboardApi == null ? void 0 : dashboardApi.getOpenedPanel()) === "tokenManager";
86
88
  if (isOpen) {
87
89
  dashboardApi == null ? void 0 : dashboardApi.closePanel();
88
90
  } else {
89
91
  dashboardApi == null ? void 0 : dashboardApi.openPanel({
90
- activePanel: "tokens",
92
+ activePanel: "tokenManager",
91
93
  panelProps: {
92
94
  focusOnOpen: true
93
95
  }
94
96
  });
95
97
  }
96
98
  }, [dashboardApi]);
99
+ if (!showTokenManager) {
100
+ return null;
101
+ }
97
102
  return /* @__PURE__ */ react_default.createElement(
98
103
  Tooltip_default,
99
104
  {
@@ -110,7 +115,7 @@ var TokenManager = ({ dashboardApi }) => {
110
115
  }
111
116
  )
112
117
  );
113
- };
118
+ }, "TokenManager");
114
119
 
115
120
  // esm-externals:@splunk/dashboard-telemetry
116
121
  var dashboard_telemetry_exports = {};
@@ -141,7 +146,7 @@ var buttonStyle = {
141
146
  var menuStyle = {
142
147
  width: "200px"
143
148
  };
144
- var ZoomMenu = ({
149
+ var ZoomMenu = /* @__PURE__ */ __name(({
145
150
  dashboardApi,
146
151
  appearance = "default",
147
152
  currentScale,
@@ -286,7 +291,7 @@ var ZoomMenu = ({
286
291
  dropdownMenuChildren
287
292
  )
288
293
  );
289
- };
294
+ }, "ZoomMenu");
290
295
 
291
296
  // esm-externals:@splunk/react-ui/Number
292
297
  var Number_exports = {};
@@ -308,7 +313,7 @@ var StyledNumber = styled_components_default(Number_default)`
308
313
  var StyledEndAdornment = styled_components_default.span`
309
314
  color: ${themes_exports.variables.contentColorActive};
310
315
  `;
311
- var ZoomNumber = ({
316
+ var ZoomNumber = /* @__PURE__ */ __name(({
312
317
  currentScale,
313
318
  onScaleChange
314
319
  }) => {
@@ -340,7 +345,7 @@ var ZoomNumber = ({
340
345
  append: true
341
346
  }
342
347
  );
343
- };
348
+ }, "ZoomNumber");
344
349
 
345
350
  // src/buttons/Zoom/Zoom.tsx
346
351
  var Container = styled_components_default.div`
@@ -355,7 +360,7 @@ var StyledTooltip = styled_components_default(Tooltip_default)`
355
360
  display: flex;
356
361
  }
357
362
  `;
358
- var Zoom = ({
363
+ var Zoom = /* @__PURE__ */ __name(({
359
364
  showSeparator = true,
360
365
  appearance = "default",
361
366
  mode = "view"
@@ -430,10 +435,10 @@ var Zoom = ({
430
435
  }
431
436
  )
432
437
  ), separator);
433
- };
438
+ }, "Zoom");
434
439
 
435
440
  export {
436
441
  TokenManager,
437
442
  Zoom
438
443
  };
439
- //# sourceMappingURL=chunk-SIFZZCPT.js.map
444
+ //# sourceMappingURL=chunk-HPEHWRJP.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["esm-externals:@splunk/react-icons/ListToken", "esm-externals:@splunk/react-ui/Tooltip", "../../src/buttons/tokenManager/TokenManager.tsx", "esm-externals:@splunk/dashboard-telemetry", "esm-externals:@splunk/ui-utils/format", "../../src/buttons/Zoom/ZoomMenu.tsx", "esm-externals:@splunk/react-ui/Number", "../../src/buttons/Zoom/ZoomNumber.tsx", "../../src/buttons/Zoom/Zoom.tsx"],
4
+ "sourcesContent": ["\nimport * as defaultImport from \"@splunk/react-icons/ListToken\";\nexport * from \"@splunk/react-icons/ListToken\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-ui/Tooltip\";\nexport * from \"@splunk/react-ui/Tooltip\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import React, { useCallback } from 'react';\nimport { useFeatureFlags } from '@splunk/dashboard-context';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport ListToken from '@splunk/react-icons/ListToken';\nimport Tooltip from '@splunk/react-ui/Tooltip';\nimport IconButton, { prepareIcon } from '../../IconButton';\nimport type { ToolbarButtonProps } from '../../types/common';\n\nconst tokenManagerIcon = prepareIcon({\n Icon: ListToken,\n screenReaderContent: _('Token manager'),\n});\n\n/**\n * Button that toggles open token manager panel\n */\nexport const TokenManager = ({ dashboardApi }: ToolbarButtonProps) => {\n const { showTokenManager } = useFeatureFlags();\n\n const handleClick = useCallback(() => {\n const isOpen = dashboardApi?.getOpenedPanel() === 'tokenManager';\n if (isOpen) {\n dashboardApi?.closePanel();\n } else {\n // Open tokens panel\n dashboardApi?.openPanel({\n activePanel: 'tokenManager',\n panelProps: {\n focusOnOpen: true,\n },\n });\n }\n }, [dashboardApi]);\n\n if (!showTokenManager) {\n return null;\n }\n\n return (\n <Tooltip\n contentRelationship=\"label\"\n content={_('Token manager')}\n data-test-label=\"token-manager-button\"\n >\n <IconButton\n testLabel=\"token-manager-button\"\n onClick={handleClick}\n icon={tokenManagerIcon}\n />\n </Tooltip>\n );\n};\n", "\nimport * as defaultImport from \"@splunk/dashboard-telemetry\";\nexport * from \"@splunk/dashboard-telemetry\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/ui-utils/format\";\nexport * from \"@splunk/ui-utils/format\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import React, { useCallback, useMemo } from 'react';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport Dropdown from '@splunk/react-ui/Dropdown';\nimport Menu from '@splunk/react-ui/Menu';\nimport Button, { type ButtonPropsBase } from '@splunk/react-ui/Button';\nimport { isMac } from '@splunk/dashboard-utils';\nimport { sprintf } from '@splunk/ui-utils/format';\nimport useDropdown from '../../hooks/useDropdown';\nimport type { ToolbarButtonProps } from '../../types/common';\n\nconst zoomLevels = [25, 50, 100, 150, 200];\n\nconst buttonStyle = {\n borderTopLeftRadius: 0,\n borderBottomLeftRadius: 0,\n};\n\nconst menuStyle = {\n width: '200px',\n};\n\nexport interface ZoomMenuProps {\n appearance?: ButtonPropsBase['appearance'];\n dashboardApi: ToolbarButtonProps['dashboardApi'];\n currentScale: number;\n setCurrentScale: (scale: number) => void;\n scaleType: 'auto' | 'fit' | null;\n setScaleType: (type: 'auto' | 'fit' | null) => void;\n}\n\nexport const ZoomMenu = ({\n dashboardApi,\n appearance = 'default',\n currentScale,\n setCurrentScale,\n scaleType,\n setScaleType,\n}: ZoomMenuProps): JSX.Element => {\n const handleZoomOutClick = useCallback(() => {\n setScaleType(null);\n dashboardApi?.zoomOut();\n }, [setScaleType, dashboardApi]);\n\n const handleZoomInClick = useCallback(() => {\n setScaleType(null);\n dashboardApi?.zoomIn();\n }, [setScaleType, dashboardApi]);\n\n const handleScaleChange = useCallback(\n (scale: number) => () => {\n setCurrentScale(scale);\n setScaleType(null);\n dashboardApi?.setScale({ scale: scale / 100 });\n },\n [setScaleType, setCurrentScale, dashboardApi]\n );\n\n const handleFitToWidthClick = useCallback(() => {\n setScaleType('fit');\n dashboardApi?.fitToWidth();\n }, [setScaleType, dashboardApi]);\n\n const handleAutoClick = useCallback(() => {\n setScaleType('auto');\n dashboardApi?.fitToWidth({ maxScale: 1 });\n }, [setScaleType, dashboardApi]);\n\n const { handleRequestClose, handleRequestOpen, isOpen } = useDropdown({\n isContentClickClose: true,\n });\n\n const buttonToggle = (\n <Button\n data-clickable\n data-test=\"zoom-dropdown-button\"\n style={buttonStyle}\n appearance={appearance}\n isMenu\n aria-label={sprintf(_('Zoom level, %(currentScale)s%%'), {\n currentScale,\n })}\n />\n );\n\n const isMacOS = useMemo(() => isMac(), []);\n\n const dropdownMenuChildren = useMemo(() => {\n const zoomButtons = zoomLevels.map((percent) => {\n return (\n <Menu.Item\n data-test={`${percent}-percent`}\n onClick={handleScaleChange(percent)}\n key={percent}\n selectable\n selected={currentScale === percent && !scaleType}\n >\n {`${percent}%`}\n </Menu.Item>\n );\n });\n return [\n <Menu.Item\n data-test=\"auto\"\n onClick={handleAutoClick}\n key=\"auto\"\n selectable\n selected={scaleType === 'auto'}\n >\n {_('Auto')}\n </Menu.Item>,\n <Menu.Item\n data-test=\"fit-to-width\"\n onClick={handleFitToWidthClick}\n key=\"fit-to-width\"\n description={isMacOS ? _('Ctrl Cmd 0') : _('Ctrl Alt 0')}\n descriptionPosition=\"right\"\n selectable\n selected={scaleType === 'fit'}\n >\n {_('Fit')}\n </Menu.Item>,\n <Menu.Divider key=\"menu-divider-1\" />,\n ...zoomButtons,\n <Menu.Divider key=\"menu-divider-2\" />,\n <Menu.Item\n data-test=\"zoom-in\"\n onClick={handleZoomInClick}\n key=\"zoom-in\"\n description={isMacOS ? _('Ctrl Cmd =') : _('Ctrl Alt =')}\n descriptionPosition=\"right\"\n selectable\n >\n {_('Zoom in')}\n </Menu.Item>,\n <Menu.Item\n data-test=\"zoom-out\"\n onClick={handleZoomOutClick}\n key=\"zoom-out\"\n description={isMacOS ? _('Ctrl Cmd -') : _('Ctrl Alt -')}\n descriptionPosition=\"right\"\n selectable\n >\n {_('Zoom out')}\n </Menu.Item>,\n ];\n }, [\n currentScale,\n handleAutoClick,\n scaleType,\n handleFitToWidthClick,\n isMacOS,\n handleZoomInClick,\n handleZoomOutClick,\n handleScaleChange,\n ]);\n\n return (\n <Dropdown\n onRequestClose={handleRequestClose}\n onRequestOpen={handleRequestOpen}\n open={isOpen}\n toggle={buttonToggle}\n retainFocus\n >\n <Menu\n style={menuStyle}\n focusMode=\"normal\"\n aria-label={_('Zoom level')}\n >\n {dropdownMenuChildren}\n </Menu>\n </Dropdown>\n );\n};\n", "\nimport * as defaultImport from \"@splunk/react-ui/Number\";\nexport * from \"@splunk/react-ui/Number\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import React, { useCallback } from 'react';\nimport styled from 'styled-components';\nimport Number from '@splunk/react-ui/Number';\nimport { variables } from '@splunk/themes';\nimport { useNumberInput, type OnValueChangeType } from '@splunk/dashboard-ui';\n\nconst StyledNumber = styled(Number)`\n padding-right: ${variables.spacingSmall};\n & > input {\n text-align: right;\n }\n`;\n\nconst StyledEndAdornment = styled.span`\n color: ${variables.contentColorActive};\n`;\n\ninterface ZoomNumberProps {\n currentScale: number;\n onScaleChange: (scale: number) => () => void;\n}\n\nexport const ZoomNumber = ({\n currentScale,\n onScaleChange,\n}: ZoomNumberProps) => {\n const onValueChange = useCallback<OnValueChangeType>(\n (e, value = 100) => {\n onScaleChange(value as number)();\n },\n [onScaleChange]\n );\n const { handleChange, handleBlur, handleFocus, handleKeyPress } =\n useNumberInput({\n value: currentScale,\n onValueChange,\n });\n\n return (\n <StyledNumber\n value={currentScale}\n onChange={handleChange}\n onKeyDown={handleKeyPress}\n onBlur={handleBlur}\n onFocus={handleFocus}\n step={5}\n min={1}\n max={10000}\n roundTo={0}\n endAdornment={<StyledEndAdornment>%</StyledEndAdornment>}\n hideStepButtons\n data-test=\"zoom-number\"\n append\n />\n );\n};\n", "import React, { useCallback, useMemo, useState, useEffect } from 'react';\nimport styled from 'styled-components';\nimport { debounce } from 'lodash';\n\nimport { _ } from '@splunk/ui-utils/i18n';\nimport { variables } from '@splunk/themes';\nimport Tooltip from '@splunk/react-ui/Tooltip';\nimport type { ButtonPropsBase } from '@splunk/react-ui/Button';\n\nimport { useDashboardApi } from '@splunk/dashboard-context';\nimport { useTelemetryApi } from '@splunk/dashboard-telemetry';\nimport { selectActiveTab, useSelector } from '@splunk/dashboard-state';\n\nimport type { ToolbarButtonProps } from '../../types/common';\nimport ItemSeparator from '../../components/ItemSeparator';\nimport { ZoomMenu } from './ZoomMenu';\nimport { ZoomNumber } from './ZoomNumber';\n\nconst Container = styled.div`\n margin-inline-end: 0;\n display: flex;\n min-width: 96px;\n gap: ${variables.spacingSmall};\n`;\n\nconst StyledTooltip = styled(Tooltip)`\n width: 110px;\n & span {\n display: flex;\n }\n`;\n\nexport interface ZoomProps extends ToolbarButtonProps {\n appearance?: ButtonPropsBase['appearance'];\n showSeparator?: boolean;\n}\n\nexport const Zoom = ({\n showSeparator = true,\n appearance = 'default',\n mode = 'view',\n}: ZoomProps): JSX.Element => {\n const [currentScale, setCurrentScale] = useState(100);\n const [scaleType, setScaleType] = useState<'auto' | 'fit' | null>(null);\n const telemetry = useTelemetryApi();\n const dashboardApi = useDashboardApi();\n\n const handleZoom = useCallback((level?: number) => {\n if (level) {\n setCurrentScale(Math.round(level * 100));\n }\n }, []);\n\n const emitTelemetry = useMemo(\n () => debounce(telemetry.emit.bind(telemetry), 500),\n [telemetry]\n );\n\n useEffect(() => {\n emitTelemetry({\n pageAction: 'dashboard.zoom',\n source: 'toolbar',\n event: 'dashboard.zoom_level_change',\n metadata: {\n scale: currentScale,\n scaleType,\n mode,\n },\n });\n }, [currentScale, scaleType, emitTelemetry, mode]);\n\n const activeTabId = useSelector(selectActiveTab);\n useEffect(() => {\n const subscription = dashboardApi\n ?.getZoomLevel()\n ?.subscribe({ next: handleZoom });\n\n return () => {\n subscription?.unsubscribe();\n };\n }, [dashboardApi, activeTabId, handleZoom]);\n\n const separator = useMemo(\n () => (showSeparator ? <ItemSeparator key=\"item-separator\" /> : null),\n [showSeparator]\n );\n\n const handleScaleChange = useCallback(\n (scale: number) => () => {\n setCurrentScale(scale);\n setScaleType(null);\n dashboardApi?.setScale({ scale: scale / 100 });\n },\n [dashboardApi]\n );\n\n return (\n <Container>\n <StyledTooltip\n contentRelationship=\"label\"\n content={_('Zoom level')}\n >\n <ZoomNumber\n currentScale={currentScale}\n onScaleChange={handleScaleChange}\n />\n <ZoomMenu\n dashboardApi={dashboardApi}\n appearance={appearance}\n currentScale={currentScale}\n setCurrentScale={setCurrentScale}\n scaleType={scaleType}\n setScaleType={setScaleType}\n />\n </StyledTooltip>\n {separator}\n </Container>\n );\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["defaultImport", "defaultImport", "defaultImport", "defaultImport"]
7
+ }
@@ -4,7 +4,7 @@ in part without a valid written license from Splunk Inc. is PROHIBITED. */
4
4
  import {
5
5
  __export,
6
6
  __reExport
7
- } from "./chunk-VQIRZ53C.js";
7
+ } from "./chunk-B5OBVUF5.js";
8
8
 
9
9
  // esm-externals:@splunk/react-icons/Square
10
10
  var Square_exports = {};
@@ -20,4 +20,4 @@ export {
20
20
  Square_default,
21
21
  Square_exports
22
22
  };
23
- //# sourceMappingURL=chunk-52TYQW2Y.js.map
23
+ //# sourceMappingURL=chunk-HTZYYFJO.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["@splunk/react-icons/Square"],
3
+ "sources": ["esm-externals:@splunk/react-icons/Square"],
4
4
  "sourcesContent": ["\nimport * as defaultImport from \"@splunk/react-icons/Square\";\nexport * from \"@splunk/react-icons/Square\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n"],
5
5
  "mappings": ";;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAEA;AADA,YAAY,mBAAmB;AAC/B,6BAAc;AACd,IAAO,iBAAS,aAAa,gBAA8B,wBAAU;",
6
6
  "names": []