@splunk/dashboard-toolbar 29.0.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.
- package/CollapsibleToolbar.js +261 -0
- package/CollapsibleToolbar.js.map +7 -0
- package/IconButton.js +168 -0
- package/IconButton.js.map +7 -0
- package/Item.js +52 -0
- package/Item.js.map +7 -0
- package/ItemGroup.js +127 -0
- package/ItemGroup.js.map +7 -0
- package/LICENSE.md +14 -0
- package/PopoverItemButton.js +78 -0
- package/PopoverItemButton.js.map +7 -0
- package/README.md +9 -0
- package/Toolbar.js +192 -0
- package/Toolbar.js.map +7 -0
- package/buttons/Charts.js +384 -0
- package/buttons/Charts.js.map +7 -0
- package/buttons/Config.js +224 -0
- package/buttons/Config.js.map +7 -0
- package/buttons/ContentExport.js +199 -0
- package/buttons/ContentExport.js.map +7 -0
- package/buttons/Data.js +236 -0
- package/buttons/Data.js.map +7 -0
- package/buttons/EmptyVisualization.js +234 -0
- package/buttons/EmptyVisualization.js.map +7 -0
- package/buttons/ExportDashboardButton.js +130 -0
- package/buttons/ExportDashboardButton.js.map +7 -0
- package/buttons/Fullscreen.js +214 -0
- package/buttons/Fullscreen.js.map +7 -0
- package/buttons/GridLineSwitch.js +145 -0
- package/buttons/GridLineSwitch.js.map +7 -0
- package/buttons/HelpButton.js +277 -0
- package/buttons/HelpButton.js.map +7 -0
- package/buttons/IconGallery.js +303 -0
- package/buttons/IconGallery.js.map +7 -0
- package/buttons/Image.js +233 -0
- package/buttons/Image.js.map +7 -0
- package/buttons/ImageGallery.js +300 -0
- package/buttons/ImageGallery.js.map +7 -0
- package/buttons/Inputs.js +348 -0
- package/buttons/Inputs.js.map +7 -0
- package/buttons/Markdown.js +213 -0
- package/buttons/Markdown.js.map +7 -0
- package/buttons/ModeSwitch.js +121 -0
- package/buttons/ModeSwitch.js.map +7 -0
- package/buttons/Redo.js +227 -0
- package/buttons/Redo.js.map +7 -0
- package/buttons/Shapes.js +357 -0
- package/buttons/Shapes.js.map +7 -0
- package/buttons/Source.js +199 -0
- package/buttons/Source.js.map +7 -0
- package/buttons/Undo.js +227 -0
- package/buttons/Undo.js.map +7 -0
- package/buttons/index.js +1857 -0
- package/buttons/index.js.map +7 -0
- package/groups/ActionsGroup.js +153 -0
- package/groups/ActionsGroup.js.map +7 -0
- package/groups/ControlGroup.js +701 -0
- package/groups/ControlGroup.js.map +7 -0
- package/groups/EditingGroup.js +1029 -0
- package/groups/EditingGroup.js.map +7 -0
- package/groups/EditorGroup.js +698 -0
- package/groups/EditorGroup.js.map +7 -0
- package/groups/EditorsControlGroup.js +753 -0
- package/groups/EditorsControlGroup.js.map +7 -0
- package/groups/HistoryGroup.js +761 -0
- package/groups/HistoryGroup.js.map +7 -0
- package/groups/SidebarControlGroup.js +740 -0
- package/groups/SidebarControlGroup.js.map +7 -0
- package/groups/VisualizationGroup.js +1218 -0
- package/groups/VisualizationGroup.js.map +7 -0
- package/groups/index.js +1778 -0
- package/groups/index.js.map +7 -0
- package/index.js +2245 -0
- package/index.js.map +7 -0
- package/module/CollapsibleToolbar.js +20 -0
- package/module/CollapsibleToolbar.js.map +7 -0
- package/module/IconButton.js +21 -0
- package/module/IconButton.js.map +7 -0
- package/module/Item.js +12 -0
- package/module/Item.js.map +7 -0
- package/module/ItemGroup.js +16 -0
- package/module/ItemGroup.js.map +7 -0
- package/module/PopoverItemButton.js +13 -0
- package/module/PopoverItemButton.js.map +7 -0
- package/module/Toolbar.js +15 -0
- package/module/Toolbar.js.map +7 -0
- package/module/buttons/Charts.js +26 -0
- package/module/buttons/Charts.js.map +7 -0
- package/module/buttons/Config.js +18 -0
- package/module/buttons/Config.js.map +7 -0
- package/module/buttons/ContentExport.js +18 -0
- package/module/buttons/ContentExport.js.map +7 -0
- package/module/buttons/Data.js +19 -0
- package/module/buttons/Data.js.map +7 -0
- package/module/buttons/EmptyVisualization.js +18 -0
- package/module/buttons/EmptyVisualization.js.map +7 -0
- package/module/buttons/ExportDashboardButton.js +17 -0
- package/module/buttons/ExportDashboardButton.js.map +7 -0
- package/module/buttons/Fullscreen.js +18 -0
- package/module/buttons/Fullscreen.js.map +7 -0
- package/module/buttons/GridLineSwitch.js +17 -0
- package/module/buttons/GridLineSwitch.js.map +7 -0
- package/module/buttons/HelpButton.js +20 -0
- package/module/buttons/HelpButton.js.map +7 -0
- package/module/buttons/IconGallery.js +20 -0
- package/module/buttons/IconGallery.js.map +7 -0
- package/module/buttons/Image.js +18 -0
- package/module/buttons/Image.js.map +7 -0
- package/module/buttons/ImageGallery.js +21 -0
- package/module/buttons/ImageGallery.js.map +7 -0
- package/module/buttons/Inputs.js +20 -0
- package/module/buttons/Inputs.js.map +7 -0
- package/module/buttons/Markdown.js +17 -0
- package/module/buttons/Markdown.js.map +7 -0
- package/module/buttons/ModeSwitch.js +18 -0
- package/module/buttons/ModeSwitch.js.map +7 -0
- package/module/buttons/Redo.js +17 -0
- package/module/buttons/Redo.js.map +7 -0
- package/module/buttons/Shapes.js +22 -0
- package/module/buttons/Shapes.js.map +7 -0
- package/module/buttons/Source.js +17 -0
- package/module/buttons/Source.js.map +7 -0
- package/module/buttons/Undo.js +17 -0
- package/module/buttons/Undo.js.map +7 -0
- package/module/buttons/index.js +108 -0
- package/module/buttons/index.js.map +7 -0
- package/module/chunks/chunk-2QMHWIV5.js +175 -0
- package/module/chunks/chunk-2QMHWIV5.js.map +7 -0
- package/module/chunks/chunk-4OLWQA6K.js +83 -0
- package/module/chunks/chunk-4OLWQA6K.js.map +7 -0
- package/module/chunks/chunk-52TYQW2Y.js +23 -0
- package/module/chunks/chunk-52TYQW2Y.js.map +7 -0
- package/module/chunks/chunk-72YLBMXL.js +199 -0
- package/module/chunks/chunk-72YLBMXL.js.map +7 -0
- package/module/chunks/chunk-734QWOYU.js +56 -0
- package/module/chunks/chunk-734QWOYU.js.map +7 -0
- package/module/chunks/chunk-A3BAVEME.js +77 -0
- package/module/chunks/chunk-A3BAVEME.js.map +7 -0
- package/module/chunks/chunk-AWNWXBE4.js +68 -0
- package/module/chunks/chunk-AWNWXBE4.js.map +7 -0
- package/module/chunks/chunk-B2LPQWLD.js +74 -0
- package/module/chunks/chunk-B2LPQWLD.js.map +7 -0
- package/module/chunks/chunk-BLXVTG4B.js +65 -0
- package/module/chunks/chunk-BLXVTG4B.js.map +7 -0
- package/module/chunks/chunk-BRGYD3MR.js +23 -0
- package/module/chunks/chunk-BRGYD3MR.js.map +7 -0
- package/module/chunks/chunk-BSMCGXVQ.js +22 -0
- package/module/chunks/chunk-BSMCGXVQ.js.map +7 -0
- package/module/chunks/chunk-CFGNNO2V.js +143 -0
- package/module/chunks/chunk-CFGNNO2V.js.map +7 -0
- package/module/chunks/chunk-E2DI77AU.js +15 -0
- package/module/chunks/chunk-E2DI77AU.js.map +7 -0
- package/module/chunks/chunk-ECEBJH6K.js +112 -0
- package/module/chunks/chunk-ECEBJH6K.js.map +7 -0
- package/module/chunks/chunk-ETJ5YPF3.js +31 -0
- package/module/chunks/chunk-ETJ5YPF3.js.map +7 -0
- package/module/chunks/chunk-FSOMEJXM.js +49 -0
- package/module/chunks/chunk-FSOMEJXM.js.map +7 -0
- package/module/chunks/chunk-FVGABOJM.js +37 -0
- package/module/chunks/chunk-FVGABOJM.js.map +7 -0
- package/module/chunks/chunk-G6N5OMKL.js +22 -0
- package/module/chunks/chunk-G6N5OMKL.js.map +7 -0
- package/module/chunks/chunk-GRIJP4FT.js +172 -0
- package/module/chunks/chunk-GRIJP4FT.js.map +7 -0
- package/module/chunks/chunk-GWAXQYWY.js +105 -0
- package/module/chunks/chunk-GWAXQYWY.js.map +7 -0
- package/module/chunks/chunk-HIICL66H.js +22 -0
- package/module/chunks/chunk-HIICL66H.js.map +7 -0
- package/module/chunks/chunk-HXY4TSUO.js +22 -0
- package/module/chunks/chunk-HXY4TSUO.js.map +7 -0
- package/module/chunks/chunk-IAEE4XLH.js +58 -0
- package/module/chunks/chunk-IAEE4XLH.js.map +7 -0
- package/module/chunks/chunk-IGGLU44N.js +22 -0
- package/module/chunks/chunk-IGGLU44N.js.map +7 -0
- package/module/chunks/chunk-IQG5GSSX.js +77 -0
- package/module/chunks/chunk-IQG5GSSX.js.map +7 -0
- package/module/chunks/chunk-J2TRUM5N.js +23 -0
- package/module/chunks/chunk-J2TRUM5N.js.map +7 -0
- package/module/chunks/chunk-J5CY2G3T.js +52 -0
- package/module/chunks/chunk-J5CY2G3T.js.map +7 -0
- package/module/chunks/chunk-JILFF3WY.js +122 -0
- package/module/chunks/chunk-JILFF3WY.js.map +7 -0
- package/module/chunks/chunk-JLYV2H24.js +21 -0
- package/module/chunks/chunk-JLYV2H24.js.map +7 -0
- package/module/chunks/chunk-JXPIKVRZ.js +48 -0
- package/module/chunks/chunk-JXPIKVRZ.js.map +7 -0
- package/module/chunks/chunk-KEARZQAT.js +57 -0
- package/module/chunks/chunk-KEARZQAT.js.map +7 -0
- package/module/chunks/chunk-KJLRQLFH.js +28 -0
- package/module/chunks/chunk-KJLRQLFH.js.map +7 -0
- package/module/chunks/chunk-L4ZPYLUY.js +25 -0
- package/module/chunks/chunk-L4ZPYLUY.js.map +7 -0
- package/module/chunks/chunk-NCPTJ5RB.js +185 -0
- package/module/chunks/chunk-NCPTJ5RB.js.map +7 -0
- package/module/chunks/chunk-NIACHGAA.js +25 -0
- package/module/chunks/chunk-NIACHGAA.js.map +7 -0
- package/module/chunks/chunk-NJF2IOVV.js +22 -0
- package/module/chunks/chunk-NJF2IOVV.js.map +7 -0
- package/module/chunks/chunk-NWVLNDCF.js +23 -0
- package/module/chunks/chunk-NWVLNDCF.js.map +7 -0
- package/module/chunks/chunk-OIQNUT2X.js +36 -0
- package/module/chunks/chunk-OIQNUT2X.js.map +7 -0
- package/module/chunks/chunk-OSDOIGWB.js +23 -0
- package/module/chunks/chunk-OSDOIGWB.js.map +7 -0
- package/module/chunks/chunk-OTGQ73VF.js +63 -0
- package/module/chunks/chunk-OTGQ73VF.js.map +7 -0
- package/module/chunks/chunk-QU7RW3YZ.js +39 -0
- package/module/chunks/chunk-QU7RW3YZ.js.map +7 -0
- package/module/chunks/chunk-RODBPKID.js +64 -0
- package/module/chunks/chunk-RODBPKID.js.map +7 -0
- package/module/chunks/chunk-SIFZZCPT.js +439 -0
- package/module/chunks/chunk-SIFZZCPT.js.map +7 -0
- package/module/chunks/chunk-UPZBDSS7.js +59 -0
- package/module/chunks/chunk-UPZBDSS7.js.map +7 -0
- package/module/chunks/chunk-UVD66GCR.js +4 -0
- package/module/chunks/chunk-UVD66GCR.js.map +7 -0
- package/module/chunks/chunk-VQIRZ53C.js +79 -0
- package/module/chunks/chunk-VQIRZ53C.js.map +7 -0
- package/module/chunks/chunk-WFAY6ABE.js +28 -0
- package/module/chunks/chunk-WFAY6ABE.js.map +7 -0
- package/module/chunks/chunk-X2HLBQUA.js +64 -0
- package/module/chunks/chunk-X2HLBQUA.js.map +7 -0
- package/module/chunks/chunk-X7ATHE2S.js +23 -0
- package/module/chunks/chunk-X7ATHE2S.js.map +7 -0
- package/module/chunks/chunk-XUK4ZKWN.js +52 -0
- package/module/chunks/chunk-XUK4ZKWN.js.map +7 -0
- package/module/chunks/chunk-YKT3CRI6.js +23 -0
- package/module/chunks/chunk-YKT3CRI6.js.map +7 -0
- package/module/chunks/chunk-YPVMTO2L.js +111 -0
- package/module/chunks/chunk-YPVMTO2L.js.map +7 -0
- package/module/groups/ActionsGroup.js +16 -0
- package/module/groups/ActionsGroup.js.map +7 -0
- package/module/groups/ControlGroup.js +51 -0
- package/module/groups/ControlGroup.js.map +7 -0
- package/module/groups/EditingGroup.js +51 -0
- package/module/groups/EditingGroup.js.map +7 -0
- package/module/groups/EditorGroup.js +51 -0
- package/module/groups/EditorGroup.js.map +7 -0
- package/module/groups/EditorsControlGroup.js +51 -0
- package/module/groups/EditorsControlGroup.js.map +7 -0
- package/module/groups/HistoryGroup.js +51 -0
- package/module/groups/HistoryGroup.js.map +7 -0
- package/module/groups/SidebarControlGroup.js +51 -0
- package/module/groups/SidebarControlGroup.js.map +7 -0
- package/module/groups/VisualizationGroup.js +51 -0
- package/module/groups/VisualizationGroup.js.map +7 -0
- package/module/groups/index.js +80 -0
- package/module/groups/index.js.map +7 -0
- package/module/index.js +163 -0
- package/module/index.js.map +7 -0
- package/module/package.json +1 -0
- package/package.json +68 -0
- package/tsconfig.json +9 -0
- package/types/CollapsibleToolbar.d.ts +12 -0
- package/types/CollapsibleToolbar.d.ts.map +1 -0
- package/types/IconButton.d.ts +35 -0
- package/types/IconButton.d.ts.map +1 -0
- package/types/Item.d.ts +3 -0
- package/types/Item.d.ts.map +1 -0
- package/types/ItemGroup.d.ts +14 -0
- package/types/ItemGroup.d.ts.map +1 -0
- package/types/PopoverItemButton.d.ts +12 -0
- package/types/PopoverItemButton.d.ts.map +1 -0
- package/types/Toolbar.d.ts +14 -0
- package/types/Toolbar.d.ts.map +1 -0
- package/types/buttons/Charts.d.ts +19 -0
- package/types/buttons/Charts.d.ts.map +1 -0
- package/types/buttons/Config.d.ts +8 -0
- package/types/buttons/Config.d.ts.map +1 -0
- package/types/buttons/ContentExport.d.ts +10 -0
- package/types/buttons/ContentExport.d.ts.map +1 -0
- package/types/buttons/Data.d.ts +8 -0
- package/types/buttons/Data.d.ts.map +1 -0
- package/types/buttons/EmptyVisualization.d.ts +8 -0
- package/types/buttons/EmptyVisualization.d.ts.map +1 -0
- package/types/buttons/ExportDashboardButton.d.ts +10 -0
- package/types/buttons/ExportDashboardButton.d.ts.map +1 -0
- package/types/buttons/Fullscreen.d.ts +8 -0
- package/types/buttons/Fullscreen.d.ts.map +1 -0
- package/types/buttons/GridLineSwitch.d.ts +8 -0
- package/types/buttons/GridLineSwitch.d.ts.map +1 -0
- package/types/buttons/HelpButton.d.ts +16 -0
- package/types/buttons/HelpButton.d.ts.map +1 -0
- package/types/buttons/IconGallery.d.ts +8 -0
- package/types/buttons/IconGallery.d.ts.map +1 -0
- package/types/buttons/Image.d.ts +8 -0
- package/types/buttons/Image.d.ts.map +1 -0
- package/types/buttons/ImageGallery.d.ts +8 -0
- package/types/buttons/ImageGallery.d.ts.map +1 -0
- package/types/buttons/Inputs.d.ts +8 -0
- package/types/buttons/Inputs.d.ts.map +1 -0
- package/types/buttons/Markdown.d.ts +7 -0
- package/types/buttons/Markdown.d.ts.map +1 -0
- package/types/buttons/ModeSwitch.d.ts +7 -0
- package/types/buttons/ModeSwitch.d.ts.map +1 -0
- package/types/buttons/Redo.d.ts +5 -0
- package/types/buttons/Redo.d.ts.map +1 -0
- package/types/buttons/Shapes.d.ts +8 -0
- package/types/buttons/Shapes.d.ts.map +1 -0
- package/types/buttons/Source.d.ts +13 -0
- package/types/buttons/Source.d.ts.map +1 -0
- package/types/buttons/Undo.d.ts +5 -0
- package/types/buttons/Undo.d.ts.map +1 -0
- package/types/buttons/Zoom/Zoom.d.ts +8 -0
- package/types/buttons/Zoom/Zoom.d.ts.map +1 -0
- package/types/buttons/Zoom/ZoomMenu.d.ts +12 -0
- package/types/buttons/Zoom/ZoomMenu.d.ts.map +1 -0
- package/types/buttons/Zoom/ZoomNumber.d.ts +8 -0
- package/types/buttons/Zoom/ZoomNumber.d.ts.map +1 -0
- package/types/buttons/Zoom/index.d.ts +2 -0
- package/types/buttons/Zoom/index.d.ts.map +1 -0
- package/types/buttons/index.d.ts +26 -0
- package/types/buttons/index.d.ts.map +1 -0
- package/types/buttons/tokenManager/TokenManager.d.ts +7 -0
- package/types/buttons/tokenManager/TokenManager.d.ts.map +1 -0
- package/types/buttons/tokenManager/index.d.ts +2 -0
- package/types/buttons/tokenManager/index.d.ts.map +1 -0
- package/types/components/ItemSeparator.d.ts +3 -0
- package/types/components/ItemSeparator.d.ts.map +1 -0
- package/types/components/StyledButton.d.ts +2 -0
- package/types/components/StyledButton.d.ts.map +1 -0
- package/types/groups/ActionsGroup.d.ts +10 -0
- package/types/groups/ActionsGroup.d.ts.map +1 -0
- package/types/groups/ControlGroup.d.ts +8 -0
- package/types/groups/ControlGroup.d.ts.map +1 -0
- package/types/groups/EditingGroup.d.ts +11 -0
- package/types/groups/EditingGroup.d.ts.map +1 -0
- package/types/groups/EditorGroup.d.ts +8 -0
- package/types/groups/EditorGroup.d.ts.map +1 -0
- package/types/groups/EditorsControlGroup.d.ts +8 -0
- package/types/groups/EditorsControlGroup.d.ts.map +1 -0
- package/types/groups/HistoryGroup.d.ts +8 -0
- package/types/groups/HistoryGroup.d.ts.map +1 -0
- package/types/groups/HistoryGroup.test.d.ts +2 -0
- package/types/groups/HistoryGroup.test.d.ts.map +1 -0
- package/types/groups/SidebarControlGroup.d.ts +8 -0
- package/types/groups/SidebarControlGroup.d.ts.map +1 -0
- package/types/groups/VisualizationGroup.d.ts +8 -0
- package/types/groups/VisualizationGroup.d.ts.map +1 -0
- package/types/groups/index.d.ts +11 -0
- package/types/groups/index.d.ts.map +1 -0
- package/types/hooks/useDropdown.d.ts +25 -0
- package/types/hooks/useDropdown.d.ts.map +1 -0
- package/types/index.d.ts +16 -0
- package/types/index.d.ts.map +1 -0
- package/types/types/common.d.ts +13 -0
- package/types/types/common.d.ts.map +1 -0
|
@@ -0,0 +1,77 @@
|
|
|
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
|
+
i18n_exports
|
|
6
|
+
} from "./chunk-BSMCGXVQ.js";
|
|
7
|
+
import {
|
|
8
|
+
IconButton_default,
|
|
9
|
+
prepareIcon
|
|
10
|
+
} from "./chunk-GWAXQYWY.js";
|
|
11
|
+
import {
|
|
12
|
+
react_default,
|
|
13
|
+
react_exports
|
|
14
|
+
} from "./chunk-NWVLNDCF.js";
|
|
15
|
+
import {
|
|
16
|
+
__export,
|
|
17
|
+
__reExport
|
|
18
|
+
} from "./chunk-VQIRZ53C.js";
|
|
19
|
+
|
|
20
|
+
// esm-externals:@splunk/react-icons/ArrowBowLeft
|
|
21
|
+
var ArrowBowLeft_exports = {};
|
|
22
|
+
__export(ArrowBowLeft_exports, {
|
|
23
|
+
default: () => ArrowBowLeft_default
|
|
24
|
+
});
|
|
25
|
+
__reExport(ArrowBowLeft_exports, ArrowBowLeft_star);
|
|
26
|
+
import * as defaultImport from "@splunk/react-icons/ArrowBowLeft";
|
|
27
|
+
import * as ArrowBowLeft_star from "@splunk/react-icons/ArrowBowLeft";
|
|
28
|
+
var ArrowBowLeft_default = "default" in defaultImport ? defaultImport.default : defaultImport;
|
|
29
|
+
|
|
30
|
+
// src/buttons/Undo.tsx
|
|
31
|
+
var icon = prepareIcon({
|
|
32
|
+
Icon: ArrowBowLeft_default,
|
|
33
|
+
screenReaderContent: (0, i18n_exports._)("Undo")
|
|
34
|
+
});
|
|
35
|
+
var Undo = ({ dashboardApi }) => {
|
|
36
|
+
const [canUndo, setCanUndo] = (0, react_exports.useState)(
|
|
37
|
+
() => {
|
|
38
|
+
var _a;
|
|
39
|
+
return (_a = dashboardApi == null ? void 0 : dashboardApi.canUndo()) != null ? _a : false;
|
|
40
|
+
}
|
|
41
|
+
);
|
|
42
|
+
const onDefinitionChange = (0, react_exports.useCallback)(() => {
|
|
43
|
+
var _a;
|
|
44
|
+
setCanUndo((_a = dashboardApi == null ? void 0 : dashboardApi.canUndo()) != null ? _a : false);
|
|
45
|
+
}, [dashboardApi]);
|
|
46
|
+
(0, react_exports.useEffect)(() => {
|
|
47
|
+
if (!(dashboardApi == null ? void 0 : dashboardApi.historyManager)) {
|
|
48
|
+
return () => void 0;
|
|
49
|
+
}
|
|
50
|
+
return dashboardApi.historyManager.subscribe({
|
|
51
|
+
onAdd: onDefinitionChange,
|
|
52
|
+
onUndo: onDefinitionChange,
|
|
53
|
+
onRedo: onDefinitionChange
|
|
54
|
+
});
|
|
55
|
+
}, [dashboardApi, onDefinitionChange]);
|
|
56
|
+
const handleClick = (0, react_exports.useCallback)(() => {
|
|
57
|
+
if (!dashboardApi) {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
dashboardApi.undo({ source: "toolbar" });
|
|
61
|
+
}, [dashboardApi]);
|
|
62
|
+
return /* @__PURE__ */ react_default.createElement(
|
|
63
|
+
IconButton_default,
|
|
64
|
+
{
|
|
65
|
+
testLabel: "undo-button",
|
|
66
|
+
onClick: handleClick,
|
|
67
|
+
disabled: !canUndo,
|
|
68
|
+
icon
|
|
69
|
+
}
|
|
70
|
+
);
|
|
71
|
+
};
|
|
72
|
+
var Undo_default = Undo;
|
|
73
|
+
|
|
74
|
+
export {
|
|
75
|
+
Undo_default
|
|
76
|
+
};
|
|
77
|
+
//# sourceMappingURL=chunk-A3BAVEME.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["@splunk/react-icons/ArrowBowLeft", "../../src/buttons/Undo.tsx"],
|
|
4
|
+
"sourcesContent": ["\nimport * as defaultImport from \"@splunk/react-icons/ArrowBowLeft\";\nexport * from \"@splunk/react-icons/ArrowBowLeft\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import React, { useCallback, useEffect, useState } from 'react';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport UndoIcon from '@splunk/react-icons/ArrowBowLeft';\nimport IconButton, { prepareIcon } from '../IconButton';\nimport type { ToolbarButtonProps } from '../types/common';\n\nconst icon = prepareIcon({\n Icon: UndoIcon,\n screenReaderContent: _('Undo'),\n});\n\nconst Undo = ({ dashboardApi }: ToolbarButtonProps) => {\n // TODO: replace when history management is done in redux\n // mode changes can cause the button to mount while there is an undo state\n const [canUndo, setCanUndo] = useState(\n () => dashboardApi?.canUndo() ?? false\n );\n\n const onDefinitionChange = useCallback(() => {\n setCanUndo(dashboardApi?.canUndo() ?? false);\n }, [dashboardApi]);\n\n useEffect(() => {\n if (!dashboardApi?.historyManager) {\n return () => undefined;\n }\n // Dirty hack to get the history manager.\n return dashboardApi.historyManager.subscribe({\n onAdd: onDefinitionChange,\n onUndo: onDefinitionChange,\n onRedo: onDefinitionChange,\n });\n }, [dashboardApi, onDefinitionChange]);\n\n const handleClick = useCallback(() => {\n if (!dashboardApi) {\n return;\n }\n\n dashboardApi.undo({ source: 'toolbar' });\n }, [dashboardApi]);\n\n return (\n <IconButton\n testLabel=\"undo-button\"\n onClick={handleClick}\n disabled={!canUndo}\n icon={icon}\n />\n );\n};\n\nexport default Undo;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAEA;AADA,YAAY,mBAAmB;AAC/B,mCAAc;AACd,IAAO,uBAAS,aAAa,gBAA8B,wBAAU;;;ACGrE,IAAM,OAAO,YAAY;AAAA,EACrB,MAAM;AAAA,EACN,yBAAqB,gBAAE,MAAM;AACjC,CAAC;AAED,IAAM,OAAO,CAAC,EAAE,aAAa,MAA0B;AAGnD,QAAM,CAAC,SAAS,UAAU,QAAI;AAAA,IAC1B,MAAG;AAfX;AAec,gEAAc,cAAd,YAA2B;AAAA;AAAA,EACrC;AAEA,QAAM,yBAAqB,2BAAY,MAAM;AAlBjD;AAmBQ,gBAAW,kDAAc,cAAd,YAA2B,KAAK;AAAA,EAC/C,GAAG,CAAC,YAAY,CAAC;AAEjB,+BAAU,MAAM;AACZ,QAAI,EAAC,6CAAc,iBAAgB;AAC/B,aAAO,MAAM;AAAA,IACjB;AAEA,WAAO,aAAa,eAAe,UAAU;AAAA,MACzC,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,QAAQ;AAAA,IACZ,CAAC;AAAA,EACL,GAAG,CAAC,cAAc,kBAAkB,CAAC;AAErC,QAAM,kBAAc,2BAAY,MAAM;AAClC,QAAI,CAAC,cAAc;AACf;AAAA,IACJ;AAEA,iBAAa,KAAK,EAAE,QAAQ,UAAU,CAAC;AAAA,EAC3C,GAAG,CAAC,YAAY,CAAC;AAEjB,SACI;AAAA,IAAC;AAAA;AAAA,MACG,WAAU;AAAA,MACV,SAAS;AAAA,MACT,UAAU,CAAC;AAAA,MACX;AAAA;AAAA,EACJ;AAER;AAEA,IAAO,eAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
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
|
+
dashboard_context_exports
|
|
6
|
+
} from "./chunk-G6N5OMKL.js";
|
|
7
|
+
import {
|
|
8
|
+
i18n_exports
|
|
9
|
+
} from "./chunk-BSMCGXVQ.js";
|
|
10
|
+
import {
|
|
11
|
+
IconButton_default,
|
|
12
|
+
prepareIcon
|
|
13
|
+
} from "./chunk-GWAXQYWY.js";
|
|
14
|
+
import {
|
|
15
|
+
react_default,
|
|
16
|
+
react_exports
|
|
17
|
+
} from "./chunk-NWVLNDCF.js";
|
|
18
|
+
import {
|
|
19
|
+
__export,
|
|
20
|
+
__reExport
|
|
21
|
+
} from "./chunk-VQIRZ53C.js";
|
|
22
|
+
|
|
23
|
+
// esm-externals:@splunk/react-icons/Cog
|
|
24
|
+
var Cog_exports = {};
|
|
25
|
+
__export(Cog_exports, {
|
|
26
|
+
default: () => Cog_default
|
|
27
|
+
});
|
|
28
|
+
__reExport(Cog_exports, Cog_star);
|
|
29
|
+
import * as defaultImport from "@splunk/react-icons/Cog";
|
|
30
|
+
import * as Cog_star from "@splunk/react-icons/Cog";
|
|
31
|
+
var Cog_default = "default" in defaultImport ? defaultImport.default : defaultImport;
|
|
32
|
+
|
|
33
|
+
// src/buttons/Config.tsx
|
|
34
|
+
var configurationIcon = prepareIcon({
|
|
35
|
+
Icon: Cog_default,
|
|
36
|
+
screenReaderContent: (0, i18n_exports._)("Configuration")
|
|
37
|
+
});
|
|
38
|
+
var Config = ({ dashboardApi }) => {
|
|
39
|
+
const configButtonRef = (0, dashboard_context_exports.useToolbarRef)("config");
|
|
40
|
+
const handleClick = (0, react_exports.useCallback)(() => {
|
|
41
|
+
const isOpen = (dashboardApi == null ? void 0 : dashboardApi.getOpenedPanel()) === "config";
|
|
42
|
+
if (isOpen) {
|
|
43
|
+
dashboardApi == null ? void 0 : dashboardApi.closePanel();
|
|
44
|
+
} else {
|
|
45
|
+
dashboardApi == null ? void 0 : dashboardApi.openPanel({
|
|
46
|
+
activePanel: "config",
|
|
47
|
+
panelProps: {
|
|
48
|
+
focusOnOpen: true
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
}, [dashboardApi]);
|
|
53
|
+
return /* @__PURE__ */ react_default.createElement(
|
|
54
|
+
IconButton_default,
|
|
55
|
+
{
|
|
56
|
+
buttonRef: configButtonRef,
|
|
57
|
+
testLabel: "config-button",
|
|
58
|
+
onClick: handleClick,
|
|
59
|
+
icon: configurationIcon
|
|
60
|
+
}
|
|
61
|
+
);
|
|
62
|
+
};
|
|
63
|
+
var Config_default = Config;
|
|
64
|
+
|
|
65
|
+
export {
|
|
66
|
+
Config_default
|
|
67
|
+
};
|
|
68
|
+
//# sourceMappingURL=chunk-AWNWXBE4.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["@splunk/react-icons/Cog", "../../src/buttons/Config.tsx"],
|
|
4
|
+
"sourcesContent": ["\nimport * as defaultImport from \"@splunk/react-icons/Cog\";\nexport * from \"@splunk/react-icons/Cog\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import React, { useCallback } from 'react';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport Configuration from '@splunk/react-icons/Cog';\nimport { useToolbarRef } from '@splunk/dashboard-context';\nimport IconButton, { prepareIcon } from '../IconButton';\nimport type { ToolbarButtonProps } from '../types/common';\n\nconst configurationIcon = prepareIcon({\n Icon: Configuration,\n screenReaderContent: _('Configuration'),\n});\n\n/**\n * Button that toggle open config panel\n */\nconst Config = ({ dashboardApi }: ToolbarButtonProps) => {\n const configButtonRef = useToolbarRef('config');\n\n const handleClick = useCallback(() => {\n const isOpen = dashboardApi?.getOpenedPanel() === 'config';\n if (isOpen) {\n dashboardApi?.closePanel();\n } else {\n // Open config panel\n dashboardApi?.openPanel({\n activePanel: 'config',\n panelProps: {\n focusOnOpen: true,\n },\n });\n }\n }, [dashboardApi]);\n\n return (\n <IconButton\n buttonRef={configButtonRef}\n testLabel=\"config-button\"\n onClick={handleClick}\n icon={configurationIcon}\n />\n );\n};\n\nexport default Config;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAEA;AADA,YAAY,mBAAmB;AAC/B,0BAAc;AACd,IAAO,cAAS,aAAa,gBAA8B,wBAAU;;;ACIrE,IAAM,oBAAoB,YAAY;AAAA,EAClC,MAAM;AAAA,EACN,yBAAqB,gBAAE,eAAe;AAC1C,CAAC;AAKD,IAAM,SAAS,CAAC,EAAE,aAAa,MAA0B;AACrD,QAAM,sBAAkB,yCAAc,QAAQ;AAE9C,QAAM,kBAAc,2BAAY,MAAM;AAClC,UAAM,UAAS,6CAAc,sBAAqB;AAClD,QAAI,QAAQ;AACR,mDAAc;AAAA,IAClB,OAAO;AAEH,mDAAc,UAAU;AAAA,QACpB,aAAa;AAAA,QACb,YAAY;AAAA,UACR,aAAa;AAAA,QACjB;AAAA,MACJ;AAAA,IACJ;AAAA,EACJ,GAAG,CAAC,YAAY,CAAC;AAEjB,SACI;AAAA,IAAC;AAAA;AAAA,MACG,WAAW;AAAA,MACX,WAAU;AAAA,MACV,SAAS;AAAA,MACT,MAAM;AAAA;AAAA,EACV;AAER;AAEA,IAAO,iBAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
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
|
+
dashboard_context_exports
|
|
6
|
+
} from "./chunk-G6N5OMKL.js";
|
|
7
|
+
import {
|
|
8
|
+
i18n_exports
|
|
9
|
+
} from "./chunk-BSMCGXVQ.js";
|
|
10
|
+
import {
|
|
11
|
+
IconButton_default,
|
|
12
|
+
prepareIcon
|
|
13
|
+
} from "./chunk-GWAXQYWY.js";
|
|
14
|
+
import {
|
|
15
|
+
dashboard_state_exports
|
|
16
|
+
} from "./chunk-NJF2IOVV.js";
|
|
17
|
+
import {
|
|
18
|
+
react_default,
|
|
19
|
+
react_exports
|
|
20
|
+
} from "./chunk-NWVLNDCF.js";
|
|
21
|
+
import {
|
|
22
|
+
__export,
|
|
23
|
+
__reExport
|
|
24
|
+
} from "./chunk-VQIRZ53C.js";
|
|
25
|
+
|
|
26
|
+
// esm-externals:@splunk/react-icons/CylinderMulti
|
|
27
|
+
var CylinderMulti_exports = {};
|
|
28
|
+
__export(CylinderMulti_exports, {
|
|
29
|
+
default: () => CylinderMulti_default
|
|
30
|
+
});
|
|
31
|
+
__reExport(CylinderMulti_exports, CylinderMulti_star);
|
|
32
|
+
import * as defaultImport from "@splunk/react-icons/CylinderMulti";
|
|
33
|
+
import * as CylinderMulti_star from "@splunk/react-icons/CylinderMulti";
|
|
34
|
+
var CylinderMulti_default = "default" in defaultImport ? defaultImport.default : defaultImport;
|
|
35
|
+
|
|
36
|
+
// src/buttons/Data.tsx
|
|
37
|
+
var dataInputIcon = prepareIcon({
|
|
38
|
+
Icon: CylinderMulti_default,
|
|
39
|
+
screenReaderContent: (0, i18n_exports._)("Data source overview")
|
|
40
|
+
});
|
|
41
|
+
var Data = ({ dashboardApi }) => {
|
|
42
|
+
const dataButtonRef = (0, dashboard_context_exports.useToolbarRef)("dataOverview");
|
|
43
|
+
const handleClick = (0, react_exports.useCallback)(() => {
|
|
44
|
+
const isOpen = (dashboardApi == null ? void 0 : dashboardApi.getOpenedPanel()) === "dataOverview";
|
|
45
|
+
if (isOpen) {
|
|
46
|
+
dashboardApi.closePanel();
|
|
47
|
+
} else {
|
|
48
|
+
(0, dashboard_state_exports.batch)(() => {
|
|
49
|
+
dashboardApi == null ? void 0 : dashboardApi.selectVisualization([]);
|
|
50
|
+
dashboardApi == null ? void 0 : dashboardApi.openPanel({
|
|
51
|
+
activePanel: "dataOverview",
|
|
52
|
+
panelProps: {
|
|
53
|
+
focusOnOpen: true
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
}, [dashboardApi]);
|
|
59
|
+
return /* @__PURE__ */ react_default.createElement(
|
|
60
|
+
IconButton_default,
|
|
61
|
+
{
|
|
62
|
+
buttonRef: dataButtonRef,
|
|
63
|
+
testLabel: "data-button",
|
|
64
|
+
onClick: handleClick,
|
|
65
|
+
icon: dataInputIcon
|
|
66
|
+
}
|
|
67
|
+
);
|
|
68
|
+
};
|
|
69
|
+
var Data_default = Data;
|
|
70
|
+
|
|
71
|
+
export {
|
|
72
|
+
Data_default
|
|
73
|
+
};
|
|
74
|
+
//# sourceMappingURL=chunk-B2LPQWLD.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["@splunk/react-icons/CylinderMulti", "../../src/buttons/Data.tsx"],
|
|
4
|
+
"sourcesContent": ["\nimport * as defaultImport from \"@splunk/react-icons/CylinderMulti\";\nexport * from \"@splunk/react-icons/CylinderMulti\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import React, { useCallback } from 'react';\nimport { _ } from '@splunk/ui-utils/i18n';\n\nimport DataInput from '@splunk/react-icons/CylinderMulti';\n\nimport { useToolbarRef } from '@splunk/dashboard-context';\nimport { batch } from '@splunk/dashboard-state';\n\nimport IconButton, { prepareIcon } from '../IconButton';\nimport type { ToolbarButtonProps } from '../types/common';\n\nconst dataInputIcon = prepareIcon({\n Icon: DataInput,\n screenReaderContent: _('Data source overview'),\n});\n\n/**\n * Button that toggle data overview panel\n */\nconst Data = ({ dashboardApi }: ToolbarButtonProps) => {\n const dataButtonRef = useToolbarRef('dataOverview');\n\n const handleClick = useCallback(() => {\n const isOpen = dashboardApi?.getOpenedPanel() === 'dataOverview';\n if (isOpen) {\n dashboardApi.closePanel();\n } else {\n batch(() => {\n // Deselect all selected visualizations\n dashboardApi?.selectVisualization([]);\n // Open data overview panel\n dashboardApi?.openPanel({\n activePanel: 'dataOverview',\n panelProps: {\n focusOnOpen: true,\n },\n });\n });\n }\n }, [dashboardApi]);\n\n return (\n <IconButton\n buttonRef={dataButtonRef}\n testLabel=\"data-button\"\n onClick={handleClick}\n icon={dataInputIcon}\n />\n );\n};\n\nexport default Data;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAEA;AADA,YAAY,mBAAmB;AAC/B,oCAAc;AACd,IAAO,wBAAS,aAAa,gBAA8B,wBAAU;;;ACQrE,IAAM,gBAAgB,YAAY;AAAA,EAC9B,MAAM;AAAA,EACN,yBAAqB,gBAAE,sBAAsB;AACjD,CAAC;AAKD,IAAM,OAAO,CAAC,EAAE,aAAa,MAA0B;AACnD,QAAM,oBAAgB,yCAAc,cAAc;AAElD,QAAM,kBAAc,2BAAY,MAAM;AAClC,UAAM,UAAS,6CAAc,sBAAqB;AAClD,QAAI,QAAQ;AACR,mBAAa,WAAW;AAAA,IAC5B,OAAO;AACH,yCAAM,MAAM;AAER,qDAAc,oBAAoB,CAAC;AAEnC,qDAAc,UAAU;AAAA,UACpB,aAAa;AAAA,UACb,YAAY;AAAA,YACR,aAAa;AAAA,UACjB;AAAA,QACJ;AAAA,MACJ,CAAC;AAAA,IACL;AAAA,EACJ,GAAG,CAAC,YAAY,CAAC;AAEjB,SACI;AAAA,IAAC;AAAA;AAAA,MACG,WAAW;AAAA,MACX,WAAU;AAAA,MACV,SAAS;AAAA,MACT,MAAM;AAAA;AAAA,EACV;AAER;AAEA,IAAO,eAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
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
|
+
ArrowBroadUnderbarDown_default,
|
|
6
|
+
ArrowBroadUnderbarDown_exports
|
|
7
|
+
} from "./chunk-J2TRUM5N.js";
|
|
8
|
+
import {
|
|
9
|
+
dashboard_utils_exports
|
|
10
|
+
} from "./chunk-HXY4TSUO.js";
|
|
11
|
+
import {
|
|
12
|
+
dashboard_ui_exports
|
|
13
|
+
} from "./chunk-HIICL66H.js";
|
|
14
|
+
import {
|
|
15
|
+
i18n_exports
|
|
16
|
+
} from "./chunk-BSMCGXVQ.js";
|
|
17
|
+
import {
|
|
18
|
+
Button_default,
|
|
19
|
+
Button_exports
|
|
20
|
+
} from "./chunk-YKT3CRI6.js";
|
|
21
|
+
import {
|
|
22
|
+
react_default,
|
|
23
|
+
react_exports
|
|
24
|
+
} from "./chunk-NWVLNDCF.js";
|
|
25
|
+
|
|
26
|
+
// src/buttons/ExportDashboardButton.tsx
|
|
27
|
+
var downloadIcon = /* @__PURE__ */ react_default.createElement(ArrowBroadUnderbarDown_default, null);
|
|
28
|
+
var ExportDashboardButton = ({
|
|
29
|
+
appearance = "secondary",
|
|
30
|
+
scale = 1
|
|
31
|
+
}) => {
|
|
32
|
+
const [open, setOpen] = (0, react_exports.useState)(false);
|
|
33
|
+
const handleOpen = (0, react_exports.useCallback)(() => {
|
|
34
|
+
setOpen(true);
|
|
35
|
+
}, []);
|
|
36
|
+
const handleClose = (0, react_exports.useCallback)(() => {
|
|
37
|
+
setOpen(false);
|
|
38
|
+
}, []);
|
|
39
|
+
return /* @__PURE__ */ react_default.createElement(react_default.Fragment, null, /* @__PURE__ */ react_default.createElement(
|
|
40
|
+
Button_default,
|
|
41
|
+
{
|
|
42
|
+
icon: downloadIcon,
|
|
43
|
+
key: "export-dashboard-button",
|
|
44
|
+
"data-clickable": true,
|
|
45
|
+
"data-test": "export-dashboard-button",
|
|
46
|
+
label: (0, i18n_exports._)("Download"),
|
|
47
|
+
appearance: appearance || "secondary",
|
|
48
|
+
onClick: handleOpen
|
|
49
|
+
}
|
|
50
|
+
), /* @__PURE__ */ react_default.createElement(
|
|
51
|
+
dashboard_ui_exports.ExportDashboardModal,
|
|
52
|
+
{
|
|
53
|
+
open,
|
|
54
|
+
onModalClose: handleClose,
|
|
55
|
+
scale,
|
|
56
|
+
returnFocus: dashboard_utils_exports.noop
|
|
57
|
+
}
|
|
58
|
+
));
|
|
59
|
+
};
|
|
60
|
+
var ExportDashboardButton_default = ExportDashboardButton;
|
|
61
|
+
|
|
62
|
+
export {
|
|
63
|
+
ExportDashboardButton_default
|
|
64
|
+
};
|
|
65
|
+
//# sourceMappingURL=chunk-BLXVTG4B.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/buttons/ExportDashboardButton.tsx"],
|
|
4
|
+
"sourcesContent": ["import React, { useCallback, useState } from 'react';\nimport type { ButtonPropsBase } from '@splunk/react-ui/Button';\nimport Download from '@splunk/react-icons/ArrowBroadUnderbarDown';\nimport { ExportDashboardModal } from '@splunk/dashboard-ui';\nimport { noop } from '@splunk/dashboard-utils';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport Button from '@splunk/react-ui/Button';\nimport type { ToolbarButtonProps } from '../types/common';\n\n// this icon should be sized consistent with the adjacent text, it does not need screenreader content\nconst downloadIcon = <Download />;\n\nexport interface ExportDashboardButtonProps extends ToolbarButtonProps {\n appearance?: ButtonPropsBase['appearance'];\n scale?: number;\n}\n\nconst ExportDashboardButton = ({\n appearance = 'secondary',\n scale = 1,\n}: ExportDashboardButtonProps) => {\n const [open, setOpen] = useState(false);\n\n const handleOpen = useCallback(() => {\n setOpen(true);\n }, []);\n\n const handleClose = useCallback(() => {\n setOpen(false);\n }, []);\n\n return (\n <>\n <Button\n icon={downloadIcon}\n key=\"export-dashboard-button\"\n data-clickable\n data-test=\"export-dashboard-button\"\n label={_('Download')}\n appearance={appearance || 'secondary'}\n onClick={handleOpen}\n />\n <ExportDashboardModal\n open={open}\n onModalClose={handleClose}\n scale={scale}\n returnFocus={noop}\n />\n </>\n );\n};\n\nexport default ExportDashboardButton;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,IAAM,eAAe,4CAAC,oCAAS;AAO/B,IAAM,wBAAwB,CAAC;AAAA,EAC3B,aAAa;AAAA,EACb,QAAQ;AACZ,MAAkC;AAC9B,QAAM,CAAC,MAAM,OAAO,QAAI,wBAAS,KAAK;AAEtC,QAAM,iBAAa,2BAAY,MAAM;AACjC,YAAQ,IAAI;AAAA,EAChB,GAAG,CAAC,CAAC;AAEL,QAAM,kBAAc,2BAAY,MAAM;AAClC,YAAQ,KAAK;AAAA,EACjB,GAAG,CAAC,CAAC;AAEL,SACI,0EACI;AAAA,IAAC;AAAA;AAAA,MACG,MAAM;AAAA,MACN,KAAI;AAAA,MACJ,kBAAc;AAAA,MACd,aAAU;AAAA,MACV,WAAO,gBAAE,UAAU;AAAA,MACnB,YAAY,cAAc;AAAA,MAC1B,SAAS;AAAA;AAAA,EACb,GACA;AAAA,IAAC;AAAA;AAAA,MACG;AAAA,MACA,cAAc;AAAA,MACd;AAAA,MACA,aAAa;AAAA;AAAA,EACjB,CACJ;AAER;AAEA,IAAO,gCAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
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
|
+
__export,
|
|
6
|
+
__reExport
|
|
7
|
+
} from "./chunk-VQIRZ53C.js";
|
|
8
|
+
|
|
9
|
+
// esm-externals:styled-components
|
|
10
|
+
var styled_components_exports = {};
|
|
11
|
+
__export(styled_components_exports, {
|
|
12
|
+
default: () => styled_components_default
|
|
13
|
+
});
|
|
14
|
+
__reExport(styled_components_exports, styled_components_star);
|
|
15
|
+
import * as defaultImport from "styled-components";
|
|
16
|
+
import * as styled_components_star from "styled-components";
|
|
17
|
+
var styled_components_default = "default" in defaultImport ? defaultImport.default : defaultImport;
|
|
18
|
+
|
|
19
|
+
export {
|
|
20
|
+
styled_components_default,
|
|
21
|
+
styled_components_exports
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=chunk-BRGYD3MR.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["styled-components"],
|
|
4
|
+
"sourcesContent": ["\nimport * as defaultImport from \"styled-components\";\nexport * from \"styled-components\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAEA;AADA,YAAY,mBAAmB;AAC/B,wCAAc;AACd,IAAO,4BAAS,aAAa,gBAA8B,wBAAU;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
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
|
+
__export,
|
|
6
|
+
__reExport
|
|
7
|
+
} from "./chunk-VQIRZ53C.js";
|
|
8
|
+
|
|
9
|
+
// esm-externals:@splunk/ui-utils/i18n
|
|
10
|
+
var i18n_exports = {};
|
|
11
|
+
__export(i18n_exports, {
|
|
12
|
+
default: () => i18n_default
|
|
13
|
+
});
|
|
14
|
+
__reExport(i18n_exports, i18n_star);
|
|
15
|
+
import * as defaultImport from "@splunk/ui-utils/i18n";
|
|
16
|
+
import * as i18n_star from "@splunk/ui-utils/i18n";
|
|
17
|
+
var i18n_default = "default" in defaultImport ? defaultImport.default : defaultImport;
|
|
18
|
+
|
|
19
|
+
export {
|
|
20
|
+
i18n_exports
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=chunk-BSMCGXVQ.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["@splunk/ui-utils/i18n"],
|
|
4
|
+
"sourcesContent": ["\nimport * as defaultImport from \"@splunk/ui-utils/i18n\";\nexport * from \"@splunk/ui-utils/i18n\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAEA;AADA,YAAY,mBAAmB;AAC/B,2BAAc;AACd,IAAO,eAAS,aAAa,gBAA8B,wBAAU;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,143 @@
|
|
|
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
|
+
dashboard_state_exports
|
|
6
|
+
} from "./chunk-NJF2IOVV.js";
|
|
7
|
+
import {
|
|
8
|
+
themes_exports
|
|
9
|
+
} from "./chunk-IGGLU44N.js";
|
|
10
|
+
import {
|
|
11
|
+
react_default,
|
|
12
|
+
react_exports
|
|
13
|
+
} from "./chunk-NWVLNDCF.js";
|
|
14
|
+
import {
|
|
15
|
+
styled_components_default,
|
|
16
|
+
styled_components_exports
|
|
17
|
+
} from "./chunk-BRGYD3MR.js";
|
|
18
|
+
import {
|
|
19
|
+
__export,
|
|
20
|
+
__reExport
|
|
21
|
+
} from "./chunk-VQIRZ53C.js";
|
|
22
|
+
|
|
23
|
+
// esm-externals:@splunk/themes/mixins
|
|
24
|
+
var mixins_exports = {};
|
|
25
|
+
__export(mixins_exports, {
|
|
26
|
+
default: () => mixins_default
|
|
27
|
+
});
|
|
28
|
+
__reExport(mixins_exports, mixins_star);
|
|
29
|
+
import * as defaultImport from "@splunk/themes/mixins";
|
|
30
|
+
import * as mixins_star from "@splunk/themes/mixins";
|
|
31
|
+
var mixins_default = "default" in defaultImport ? defaultImport.default : defaultImport;
|
|
32
|
+
|
|
33
|
+
// src/Toolbar.tsx
|
|
34
|
+
var ToolbarWrapper = styled_components_default.div`
|
|
35
|
+
${(0, mixins_exports.reset)("flex")};
|
|
36
|
+
justify-content: space-between;
|
|
37
|
+
color: ${themes_exports.variables.contentColorDefault};
|
|
38
|
+
padding: 5px 5px 5px 8px;
|
|
39
|
+
border-bottom-width: 1px;
|
|
40
|
+
border-bottom-style: solid;
|
|
41
|
+
border-bottom-color: ${themes_exports.variables.borderColor};
|
|
42
|
+
flex-wrap: wrap;
|
|
43
|
+
flex-shrink: 0;
|
|
44
|
+
background-color: ${themes_exports.variables.backgroundColorNavigation};
|
|
45
|
+
`;
|
|
46
|
+
var LeftAlignItems = styled_components_default.div`
|
|
47
|
+
flex-grow: 1;
|
|
48
|
+
display: flex;
|
|
49
|
+
flex-direction: row;
|
|
50
|
+
gap: ${themes_exports.variables.spacingSmall};
|
|
51
|
+
`;
|
|
52
|
+
var RightAlignItems = styled_components_default.div`
|
|
53
|
+
flex-basis: auto;
|
|
54
|
+
display: flex;
|
|
55
|
+
flex-direction: row;
|
|
56
|
+
gap: ${themes_exports.variables.spacingSmall};
|
|
57
|
+
margin-inline-end: ${themes_exports.variables.spacingSmall};
|
|
58
|
+
`;
|
|
59
|
+
var Toolbar = ({
|
|
60
|
+
activePanel,
|
|
61
|
+
dashboardApi,
|
|
62
|
+
mode,
|
|
63
|
+
preset,
|
|
64
|
+
toolbarItems
|
|
65
|
+
}) => {
|
|
66
|
+
const layoutType = (0, dashboard_state_exports.useSelector)(dashboard_state_exports.selectLayoutType);
|
|
67
|
+
const toolbarRef = (0, react_exports.useRef)(null);
|
|
68
|
+
const injectDashboardProps = (0, react_exports.useCallback)(
|
|
69
|
+
(items) => {
|
|
70
|
+
const buttonProps = {
|
|
71
|
+
activePanel,
|
|
72
|
+
dashboardApi,
|
|
73
|
+
layoutType,
|
|
74
|
+
mode,
|
|
75
|
+
preset
|
|
76
|
+
};
|
|
77
|
+
return items.map((item) => react_default.cloneElement(item, buttonProps));
|
|
78
|
+
},
|
|
79
|
+
[activePanel, dashboardApi, layoutType, mode, preset]
|
|
80
|
+
);
|
|
81
|
+
const leftAlignItems = (0, react_exports.useMemo)(() => {
|
|
82
|
+
const items = toolbarItems.filter(
|
|
83
|
+
(item) => {
|
|
84
|
+
var _a;
|
|
85
|
+
return ((_a = item.props) == null ? void 0 : _a.align) !== "right";
|
|
86
|
+
}
|
|
87
|
+
);
|
|
88
|
+
return injectDashboardProps(items);
|
|
89
|
+
}, [toolbarItems, injectDashboardProps]);
|
|
90
|
+
const rightAlignItems = (0, react_exports.useMemo)(() => {
|
|
91
|
+
const items = toolbarItems.filter(
|
|
92
|
+
(item) => {
|
|
93
|
+
var _a;
|
|
94
|
+
return ((_a = item.props) == null ? void 0 : _a.align) === "right";
|
|
95
|
+
}
|
|
96
|
+
);
|
|
97
|
+
return injectDashboardProps(items);
|
|
98
|
+
}, [toolbarItems, injectDashboardProps]);
|
|
99
|
+
const observerRef = (0, react_exports.useRef)(null);
|
|
100
|
+
const isFirstRender = (0, react_exports.useRef)(true);
|
|
101
|
+
(0, react_exports.useEffect)(() => {
|
|
102
|
+
if (isFirstRender.current) {
|
|
103
|
+
isFirstRender.current = false;
|
|
104
|
+
return void 0;
|
|
105
|
+
}
|
|
106
|
+
observerRef.current = new MutationObserver(() => {
|
|
107
|
+
var _a, _b;
|
|
108
|
+
const firstFocusableButton = (_a = toolbarRef.current) == null ? void 0 : _a.querySelector(
|
|
109
|
+
'button:not([disabled]):not([aria-disabled="true"]):not([tabindex="-1"])'
|
|
110
|
+
);
|
|
111
|
+
firstFocusableButton == null ? void 0 : firstFocusableButton.focus();
|
|
112
|
+
(_b = observerRef.current) == null ? void 0 : _b.disconnect();
|
|
113
|
+
});
|
|
114
|
+
if (toolbarRef.current) {
|
|
115
|
+
observerRef.current.observe(toolbarRef.current, {
|
|
116
|
+
childList: true,
|
|
117
|
+
subtree: true
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
return () => {
|
|
121
|
+
var _a;
|
|
122
|
+
(_a = observerRef.current) == null ? void 0 : _a.disconnect();
|
|
123
|
+
};
|
|
124
|
+
}, [mode]);
|
|
125
|
+
if (!toolbarItems.length) {
|
|
126
|
+
return null;
|
|
127
|
+
}
|
|
128
|
+
return /* @__PURE__ */ react_default.createElement(ToolbarWrapper, { "data-test": "dashboard-toolbar", ref: toolbarRef }, /* @__PURE__ */ react_default.createElement(LeftAlignItems, { key: "left-align-items", "data-test": "left-align-items" }, leftAlignItems), /* @__PURE__ */ react_default.createElement(
|
|
129
|
+
RightAlignItems,
|
|
130
|
+
{
|
|
131
|
+
key: "right-align-items",
|
|
132
|
+
"data-test": "right-align-items"
|
|
133
|
+
},
|
|
134
|
+
rightAlignItems
|
|
135
|
+
));
|
|
136
|
+
};
|
|
137
|
+
Toolbar.displayName = "Toolbar";
|
|
138
|
+
var Toolbar_default = Toolbar;
|
|
139
|
+
|
|
140
|
+
export {
|
|
141
|
+
Toolbar_default
|
|
142
|
+
};
|
|
143
|
+
//# sourceMappingURL=chunk-CFGNNO2V.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["@splunk/themes/mixins", "../../src/Toolbar.tsx"],
|
|
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;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
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
|
+
styled_components_default,
|
|
6
|
+
styled_components_exports
|
|
7
|
+
} from "./chunk-BRGYD3MR.js";
|
|
8
|
+
|
|
9
|
+
// src/Item.tsx
|
|
10
|
+
var Item_default = styled_components_default.div``;
|
|
11
|
+
|
|
12
|
+
export {
|
|
13
|
+
Item_default
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=chunk-E2DI77AU.js.map
|