@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,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/buttons/Config.tsx", "react", "@splunk/ui-utils/i18n", "@splunk/react-icons/Cog", "@splunk/dashboard-context", "@splunk/react-icons/CaretDown", "@splunk/react-ui/ScreenReaderContent", "@splunk/react-ui/Button", "styled-components", "../src/Item.tsx", "../src/IconButton.tsx"],
|
|
4
|
+
"sourcesContent": ["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", "\nimport * as defaultImport from \"react\";\nexport * from \"react\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/ui-utils/i18n\";\nexport * from \"@splunk/ui-utils/i18n\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-icons/Cog\";\nexport * from \"@splunk/react-icons/Cog\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/dashboard-context\";\nexport * from \"@splunk/dashboard-context\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-icons/CaretDown\";\nexport * from \"@splunk/react-icons/CaretDown\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-ui/ScreenReaderContent\";\nexport * from \"@splunk/react-ui/ScreenReaderContent\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-ui/Button\";\nexport * from \"@splunk/react-ui/Button\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"styled-components\";\nexport * from \"styled-components\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import styled from 'styled-components';\n\nexport default styled.div``;\n", "import React from 'react';\nimport type SVG from '@splunk/react-icons/SVG';\nimport DropdownIcon from '@splunk/react-icons/CaretDown';\nimport ScreenReaderContent from '@splunk/react-ui/ScreenReaderContent';\nimport Button, { type ButtonPropsBase } from '@splunk/react-ui/Button';\nimport styled from 'styled-components';\nimport ToolbarItem from './Item';\nimport type { ToolbarButtonProps } from './types/common';\n\nconst StyledDropdownIcon = styled(DropdownIcon)`\n margin-left: -5px;\n`;\n\nexport const iconSize = 24;\nexport const menuIconSize = 20;\n\ninterface PrepareIconProps extends React.ComponentProps<typeof SVG> {\n Icon: React.ComponentType<React.ComponentProps<typeof SVG>>;\n screenReaderContent?: string;\n isMenu?: boolean;\n variant?: 'filled' | 'outline' | 'none';\n}\n\n/**\n * Button adds a bunch of padding when there's any child elements even if they don't display anything (screenReaderContent)\n * This bundles the primary icon, a menu caret and screenReaderContent as an icon when needed.\n * Additionally accepts any properties of any react-icons element to be applied to primary icon\n * @param {Object} arg\n * @param {React.ElementType} arg.Icon The primary icon\n * @param {boolean} [arg.isMenu=false] Display a menu caret\n * @param {string} [arg.screenReaderContent] A label for the icon\n * @param {string} [arg.variant] Fill the icon, or not\n * @returns {JSX.Element}\n */\nexport const prepareIcon = ({\n Icon,\n screenReaderContent,\n isMenu = false,\n ...props\n}: PrepareIconProps) => {\n const size = isMenu ? menuIconSize : iconSize;\n return (\n <>\n <Icon width={size} height={size} {...props} />\n {isMenu && (\n <StyledDropdownIcon variant=\"filled\" width={9} height={size} />\n )}\n {screenReaderContent && (\n <ScreenReaderContent>{screenReaderContent}</ScreenReaderContent>\n )}\n </>\n );\n};\n\nexport interface IconButtonProps extends ToolbarButtonProps {\n icon?: JSX.Element;\n onClick?: ButtonPropsBase['onClick'];\n label?: string;\n buttonRef?: React.RefObject<HTMLButtonElement>;\n testLabel?: string;\n disabled?: boolean;\n}\n\nconst IconButton = ({\n icon,\n buttonRef,\n disabled = false,\n onClick,\n label,\n testLabel,\n ...rest\n}: IconButtonProps): JSX.Element => {\n return (\n <ToolbarItem {...rest}>\n <Button\n elementRef={buttonRef}\n onClick={onClick}\n disabled={disabled}\n appearance=\"subtle\"\n icon={icon}\n label={label}\n data-test={testLabel}\n data-clickable\n />\n </ToolbarItem>\n );\n};\n\nexport default IconButton;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,199 @@
|
|
|
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
|
+
"use strict";
|
|
5
|
+
var __create = Object.create;
|
|
6
|
+
var __defProp = Object.defineProperty;
|
|
7
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
8
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
9
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
10
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
11
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
12
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
13
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
14
|
+
var __spreadValues = (a, b) => {
|
|
15
|
+
for (var prop in b || (b = {}))
|
|
16
|
+
if (__hasOwnProp.call(b, prop))
|
|
17
|
+
__defNormalProp(a, prop, b[prop]);
|
|
18
|
+
if (__getOwnPropSymbols)
|
|
19
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
20
|
+
if (__propIsEnum.call(b, prop))
|
|
21
|
+
__defNormalProp(a, prop, b[prop]);
|
|
22
|
+
}
|
|
23
|
+
return a;
|
|
24
|
+
};
|
|
25
|
+
var __objRest = (source, exclude) => {
|
|
26
|
+
var target = {};
|
|
27
|
+
for (var prop in source)
|
|
28
|
+
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
29
|
+
target[prop] = source[prop];
|
|
30
|
+
if (source != null && __getOwnPropSymbols)
|
|
31
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
32
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
33
|
+
target[prop] = source[prop];
|
|
34
|
+
}
|
|
35
|
+
return target;
|
|
36
|
+
};
|
|
37
|
+
var __export = (target, all) => {
|
|
38
|
+
for (var name in all)
|
|
39
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
40
|
+
};
|
|
41
|
+
var __copyProps = (to, from, except, desc) => {
|
|
42
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
43
|
+
for (let key of __getOwnPropNames(from))
|
|
44
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
45
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
46
|
+
}
|
|
47
|
+
return to;
|
|
48
|
+
};
|
|
49
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
50
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
51
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
52
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
53
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
54
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
55
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
56
|
+
mod
|
|
57
|
+
));
|
|
58
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
59
|
+
|
|
60
|
+
// src/buttons/ContentExport.tsx
|
|
61
|
+
var ContentExport_exports = {};
|
|
62
|
+
__export(ContentExport_exports, {
|
|
63
|
+
default: () => ContentExport_default
|
|
64
|
+
});
|
|
65
|
+
module.exports = __toCommonJS(ContentExport_exports);
|
|
66
|
+
|
|
67
|
+
// esm-externals:react
|
|
68
|
+
var react_exports = {};
|
|
69
|
+
__export(react_exports, {
|
|
70
|
+
default: () => react_default
|
|
71
|
+
});
|
|
72
|
+
var defaultImport = __toESM(require("react"));
|
|
73
|
+
__reExport(react_exports, require("react"));
|
|
74
|
+
var react_default = "default" in defaultImport ? defaultImport.default : defaultImport;
|
|
75
|
+
|
|
76
|
+
// esm-externals:@splunk/ui-utils/i18n
|
|
77
|
+
var i18n_exports = {};
|
|
78
|
+
__export(i18n_exports, {
|
|
79
|
+
default: () => i18n_default
|
|
80
|
+
});
|
|
81
|
+
var defaultImport2 = __toESM(require("@splunk/ui-utils/i18n"));
|
|
82
|
+
__reExport(i18n_exports, require("@splunk/ui-utils/i18n"));
|
|
83
|
+
var i18n_default = "default" in defaultImport2 ? defaultImport2.default : defaultImport2;
|
|
84
|
+
|
|
85
|
+
// esm-externals:@splunk/react-icons/ArrowBroadUnderbarDown
|
|
86
|
+
var ArrowBroadUnderbarDown_exports = {};
|
|
87
|
+
__export(ArrowBroadUnderbarDown_exports, {
|
|
88
|
+
default: () => ArrowBroadUnderbarDown_default
|
|
89
|
+
});
|
|
90
|
+
var defaultImport3 = __toESM(require("@splunk/react-icons/ArrowBroadUnderbarDown"));
|
|
91
|
+
__reExport(ArrowBroadUnderbarDown_exports, require("@splunk/react-icons/ArrowBroadUnderbarDown"));
|
|
92
|
+
var ArrowBroadUnderbarDown_default = "default" in defaultImport3 ? defaultImport3.default : defaultImport3;
|
|
93
|
+
|
|
94
|
+
// esm-externals:@splunk/react-icons/CaretDown
|
|
95
|
+
var CaretDown_exports = {};
|
|
96
|
+
__export(CaretDown_exports, {
|
|
97
|
+
default: () => CaretDown_default
|
|
98
|
+
});
|
|
99
|
+
var defaultImport4 = __toESM(require("@splunk/react-icons/CaretDown"));
|
|
100
|
+
__reExport(CaretDown_exports, require("@splunk/react-icons/CaretDown"));
|
|
101
|
+
var CaretDown_default = "default" in defaultImport4 ? defaultImport4.default : defaultImport4;
|
|
102
|
+
|
|
103
|
+
// esm-externals:@splunk/react-ui/ScreenReaderContent
|
|
104
|
+
var ScreenReaderContent_exports = {};
|
|
105
|
+
__export(ScreenReaderContent_exports, {
|
|
106
|
+
default: () => ScreenReaderContent_default
|
|
107
|
+
});
|
|
108
|
+
var defaultImport5 = __toESM(require("@splunk/react-ui/ScreenReaderContent"));
|
|
109
|
+
__reExport(ScreenReaderContent_exports, require("@splunk/react-ui/ScreenReaderContent"));
|
|
110
|
+
var ScreenReaderContent_default = "default" in defaultImport5 ? defaultImport5.default : defaultImport5;
|
|
111
|
+
|
|
112
|
+
// esm-externals:@splunk/react-ui/Button
|
|
113
|
+
var Button_exports = {};
|
|
114
|
+
__export(Button_exports, {
|
|
115
|
+
default: () => Button_default
|
|
116
|
+
});
|
|
117
|
+
var defaultImport6 = __toESM(require("@splunk/react-ui/Button"));
|
|
118
|
+
__reExport(Button_exports, require("@splunk/react-ui/Button"));
|
|
119
|
+
var Button_default = "default" in defaultImport6 ? defaultImport6.default : defaultImport6;
|
|
120
|
+
|
|
121
|
+
// esm-externals:styled-components
|
|
122
|
+
var styled_components_exports = {};
|
|
123
|
+
__export(styled_components_exports, {
|
|
124
|
+
default: () => styled_components_default
|
|
125
|
+
});
|
|
126
|
+
var defaultImport7 = __toESM(require("styled-components"));
|
|
127
|
+
__reExport(styled_components_exports, require("styled-components"));
|
|
128
|
+
var styled_components_default = "default" in defaultImport7 ? defaultImport7.default : defaultImport7;
|
|
129
|
+
|
|
130
|
+
// src/Item.tsx
|
|
131
|
+
var Item_default = styled_components_default.div``;
|
|
132
|
+
|
|
133
|
+
// src/IconButton.tsx
|
|
134
|
+
var StyledDropdownIcon = styled_components_default(CaretDown_default)`
|
|
135
|
+
margin-left: -5px;
|
|
136
|
+
`;
|
|
137
|
+
var iconSize = 24;
|
|
138
|
+
var menuIconSize = 20;
|
|
139
|
+
var prepareIcon = (_a) => {
|
|
140
|
+
var _b = _a, {
|
|
141
|
+
Icon,
|
|
142
|
+
screenReaderContent,
|
|
143
|
+
isMenu = false
|
|
144
|
+
} = _b, props = __objRest(_b, [
|
|
145
|
+
"Icon",
|
|
146
|
+
"screenReaderContent",
|
|
147
|
+
"isMenu"
|
|
148
|
+
]);
|
|
149
|
+
const size = isMenu ? menuIconSize : iconSize;
|
|
150
|
+
return /* @__PURE__ */ react_default.createElement(react_default.Fragment, null, /* @__PURE__ */ react_default.createElement(Icon, __spreadValues({ width: size, height: size }, props)), isMenu && /* @__PURE__ */ react_default.createElement(StyledDropdownIcon, { variant: "filled", width: 9, height: size }), screenReaderContent && /* @__PURE__ */ react_default.createElement(ScreenReaderContent_default, null, screenReaderContent));
|
|
151
|
+
};
|
|
152
|
+
var IconButton = (_a) => {
|
|
153
|
+
var _b = _a, {
|
|
154
|
+
icon: icon2,
|
|
155
|
+
buttonRef,
|
|
156
|
+
disabled = false,
|
|
157
|
+
onClick,
|
|
158
|
+
label,
|
|
159
|
+
testLabel
|
|
160
|
+
} = _b, rest = __objRest(_b, [
|
|
161
|
+
"icon",
|
|
162
|
+
"buttonRef",
|
|
163
|
+
"disabled",
|
|
164
|
+
"onClick",
|
|
165
|
+
"label",
|
|
166
|
+
"testLabel"
|
|
167
|
+
]);
|
|
168
|
+
return /* @__PURE__ */ react_default.createElement(Item_default, __spreadValues({}, rest), /* @__PURE__ */ react_default.createElement(
|
|
169
|
+
Button_default,
|
|
170
|
+
{
|
|
171
|
+
elementRef: buttonRef,
|
|
172
|
+
onClick,
|
|
173
|
+
disabled,
|
|
174
|
+
appearance: "subtle",
|
|
175
|
+
icon: icon2,
|
|
176
|
+
label,
|
|
177
|
+
"data-test": testLabel,
|
|
178
|
+
"data-clickable": true
|
|
179
|
+
}
|
|
180
|
+
));
|
|
181
|
+
};
|
|
182
|
+
var IconButton_default = IconButton;
|
|
183
|
+
|
|
184
|
+
// src/buttons/ContentExport.tsx
|
|
185
|
+
var icon = prepareIcon({
|
|
186
|
+
Icon: ArrowBroadUnderbarDown_default,
|
|
187
|
+
screenReaderContent: (0, i18n_exports._)("Export")
|
|
188
|
+
});
|
|
189
|
+
var ContentExport = ({ disabled, onClick }) => /* @__PURE__ */ react_default.createElement(
|
|
190
|
+
IconButton_default,
|
|
191
|
+
{
|
|
192
|
+
testLabel: "content-export-button",
|
|
193
|
+
onClick,
|
|
194
|
+
disabled: !!disabled,
|
|
195
|
+
icon
|
|
196
|
+
}
|
|
197
|
+
);
|
|
198
|
+
var ContentExport_default = ContentExport;
|
|
199
|
+
//# sourceMappingURL=ContentExport.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/buttons/ContentExport.tsx", "react", "@splunk/ui-utils/i18n", "@splunk/react-icons/ArrowBroadUnderbarDown", "@splunk/react-icons/CaretDown", "@splunk/react-ui/ScreenReaderContent", "@splunk/react-ui/Button", "styled-components", "../src/Item.tsx", "../src/IconButton.tsx"],
|
|
4
|
+
"sourcesContent": ["import React, { type ComponentProps } from 'react';\nimport { _ } from '@splunk/ui-utils/i18n';\nimport ArrowBroadUnderbarDown from '@splunk/react-icons/ArrowBroadUnderbarDown';\nimport IconButton, { prepareIcon } from '../IconButton';\nimport type { ToolbarButtonProps } from '../types/common';\n\nexport interface ContentExportProps extends ToolbarButtonProps {\n disabled?: boolean;\n onClick?: ComponentProps<typeof IconButton>['onClick'];\n}\n\nconst icon = prepareIcon({\n Icon: ArrowBroadUnderbarDown,\n screenReaderContent: _('Export'),\n});\n\nconst ContentExport = ({ disabled, onClick }: ContentExportProps) => (\n <IconButton\n testLabel=\"content-export-button\"\n onClick={onClick}\n disabled={!!disabled}\n icon={icon}\n />\n);\n\nexport default ContentExport;\n", "\nimport * as defaultImport from \"react\";\nexport * from \"react\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/ui-utils/i18n\";\nexport * from \"@splunk/ui-utils/i18n\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-icons/ArrowBroadUnderbarDown\";\nexport * from \"@splunk/react-icons/ArrowBroadUnderbarDown\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-icons/CaretDown\";\nexport * from \"@splunk/react-icons/CaretDown\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-ui/ScreenReaderContent\";\nexport * from \"@splunk/react-ui/ScreenReaderContent\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-ui/Button\";\nexport * from \"@splunk/react-ui/Button\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"styled-components\";\nexport * from \"styled-components\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import styled from 'styled-components';\n\nexport default styled.div``;\n", "import React from 'react';\nimport type SVG from '@splunk/react-icons/SVG';\nimport DropdownIcon from '@splunk/react-icons/CaretDown';\nimport ScreenReaderContent from '@splunk/react-ui/ScreenReaderContent';\nimport Button, { type ButtonPropsBase } from '@splunk/react-ui/Button';\nimport styled from 'styled-components';\nimport ToolbarItem from './Item';\nimport type { ToolbarButtonProps } from './types/common';\n\nconst StyledDropdownIcon = styled(DropdownIcon)`\n margin-left: -5px;\n`;\n\nexport const iconSize = 24;\nexport const menuIconSize = 20;\n\ninterface PrepareIconProps extends React.ComponentProps<typeof SVG> {\n Icon: React.ComponentType<React.ComponentProps<typeof SVG>>;\n screenReaderContent?: string;\n isMenu?: boolean;\n variant?: 'filled' | 'outline' | 'none';\n}\n\n/**\n * Button adds a bunch of padding when there's any child elements even if they don't display anything (screenReaderContent)\n * This bundles the primary icon, a menu caret and screenReaderContent as an icon when needed.\n * Additionally accepts any properties of any react-icons element to be applied to primary icon\n * @param {Object} arg\n * @param {React.ElementType} arg.Icon The primary icon\n * @param {boolean} [arg.isMenu=false] Display a menu caret\n * @param {string} [arg.screenReaderContent] A label for the icon\n * @param {string} [arg.variant] Fill the icon, or not\n * @returns {JSX.Element}\n */\nexport const prepareIcon = ({\n Icon,\n screenReaderContent,\n isMenu = false,\n ...props\n}: PrepareIconProps) => {\n const size = isMenu ? menuIconSize : iconSize;\n return (\n <>\n <Icon width={size} height={size} {...props} />\n {isMenu && (\n <StyledDropdownIcon variant=\"filled\" width={9} height={size} />\n )}\n {screenReaderContent && (\n <ScreenReaderContent>{screenReaderContent}</ScreenReaderContent>\n )}\n </>\n );\n};\n\nexport interface IconButtonProps extends ToolbarButtonProps {\n icon?: JSX.Element;\n onClick?: ButtonPropsBase['onClick'];\n label?: string;\n buttonRef?: React.RefObject<HTMLButtonElement>;\n testLabel?: string;\n disabled?: boolean;\n}\n\nconst IconButton = ({\n icon,\n buttonRef,\n disabled = false,\n onClick,\n label,\n testLabel,\n ...rest\n}: IconButtonProps): JSX.Element => {\n return (\n <ToolbarItem {...rest}>\n <Button\n elementRef={buttonRef}\n onClick={onClick}\n disabled={disabled}\n appearance=\"subtle\"\n icon={icon}\n label={label}\n data-test={testLabel}\n data-clickable\n />\n </ToolbarItem>\n );\n};\n\nexport default IconButton;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA;AAAA;AAAA;AAAA;AACA,oBAA+B;AAC/B,0BAAc;AACd,IAAO,gBAAS,aAAa,gBAA8B,wBAAU;;;ACHrE;AAAA;AAAA;AAAA;AACA,IAAAA,iBAA+B;AAC/B,yBAAc;AACd,IAAO,eAAS,aAAaA,iBAA8B,yBAAUA;;;ACHrE;AAAA;AAAA;AAAA;AACA,IAAAC,iBAA+B;AAC/B,2CAAc;AACd,IAAO,iCAAS,aAAaA,iBAA8B,yBAAUA;;;ACHrE;AAAA;AAAA;AAAA;AACA,IAAAC,iBAA+B;AAC/B,8BAAc;AACd,IAAO,oBAAS,aAAaA,iBAA8B,yBAAUA;;;ACHrE;AAAA;AAAA;AAAA;AACA,IAAAC,iBAA+B;AAC/B,wCAAc;AACd,IAAO,8BAAS,aAAaA,iBAA8B,yBAAUA;;;ACHrE;AAAA;AAAA;AAAA;AACA,IAAAC,iBAA+B;AAC/B,2BAAc;AACd,IAAO,iBAAS,aAAaA,iBAA8B,yBAAUA;;;ACHrE;AAAA;AAAA;AAAA;AACA,IAAAC,iBAA+B;AAC/B,sCAAc;AACd,IAAO,4BAAS,aAAaA,iBAA8B,yBAAUA;;;ACDrE,IAAO,eAAQ,0BAAO;;;ACOtB,IAAM,qBAAqB,0BAAO,iBAAY;AAAA;AAAA;AAIvC,IAAM,WAAW;AACjB,IAAM,eAAe;AAoBrB,IAAM,cAAc,CAAC,OAKJ;AALI,eACxB;AAAA;AAAA,IACA;AAAA,IACA,SAAS;AAAA,EArCb,IAkC4B,IAIrB,kBAJqB,IAIrB;AAAA,IAHH;AAAA,IACA;AAAA,IACA;AAAA;AAGA,QAAM,OAAO,SAAS,eAAe;AACrC,SACI,0EACI,4CAAC,uBAAK,OAAO,MAAM,QAAQ,QAAU,MAAO,GAC3C,UACG,4CAAC,sBAAmB,SAAQ,UAAS,OAAO,GAAG,QAAQ,MAAM,GAEhE,uBACG,4CAAC,mCAAqB,mBAAoB,CAElD;AAER;AAWA,IAAM,aAAa,CAAC,OAQgB;AARhB,eAChB;AAAA,UAAAC;AAAA,IACA;AAAA,IACA,WAAW;AAAA,IACX;AAAA,IACA;AAAA,IACA;AAAA,EArEJ,IA+DoB,IAOb,iBAPa,IAOb;AAAA,IANH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGA,SACI,4CAAC,iCAAgB,OACb;AAAA,IAAC;AAAA;AAAA,MACG,YAAY;AAAA,MACZ;AAAA,MACA;AAAA,MACA,YAAW;AAAA,MACX,MAAMA;AAAA,MACN;AAAA,MACA,aAAW;AAAA,MACX,kBAAc;AAAA;AAAA,EAClB,CACJ;AAER;AAEA,IAAO,qBAAQ;;;AT7Ef,IAAM,OAAO,YAAY;AAAA,EACrB,MAAM;AAAA,EACN,yBAAqB,gBAAE,QAAQ;AACnC,CAAC;AAED,IAAM,gBAAgB,CAAC,EAAE,UAAU,QAAQ,MACvC;AAAA,EAAC;AAAA;AAAA,IACG,WAAU;AAAA,IACV;AAAA,IACA,UAAU,CAAC,CAAC;AAAA,IACZ;AAAA;AACJ;AAGJ,IAAO,wBAAQ;",
|
|
6
|
+
"names": ["defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "icon"]
|
|
7
|
+
}
|
package/buttons/Data.js
ADDED
|
@@ -0,0 +1,236 @@
|
|
|
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
|
+
"use strict";
|
|
5
|
+
var __create = Object.create;
|
|
6
|
+
var __defProp = Object.defineProperty;
|
|
7
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
8
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
9
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
10
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
11
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
12
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
13
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
14
|
+
var __spreadValues = (a, b) => {
|
|
15
|
+
for (var prop in b || (b = {}))
|
|
16
|
+
if (__hasOwnProp.call(b, prop))
|
|
17
|
+
__defNormalProp(a, prop, b[prop]);
|
|
18
|
+
if (__getOwnPropSymbols)
|
|
19
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
20
|
+
if (__propIsEnum.call(b, prop))
|
|
21
|
+
__defNormalProp(a, prop, b[prop]);
|
|
22
|
+
}
|
|
23
|
+
return a;
|
|
24
|
+
};
|
|
25
|
+
var __objRest = (source, exclude) => {
|
|
26
|
+
var target = {};
|
|
27
|
+
for (var prop in source)
|
|
28
|
+
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
29
|
+
target[prop] = source[prop];
|
|
30
|
+
if (source != null && __getOwnPropSymbols)
|
|
31
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
32
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
33
|
+
target[prop] = source[prop];
|
|
34
|
+
}
|
|
35
|
+
return target;
|
|
36
|
+
};
|
|
37
|
+
var __export = (target, all) => {
|
|
38
|
+
for (var name in all)
|
|
39
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
40
|
+
};
|
|
41
|
+
var __copyProps = (to, from, except, desc) => {
|
|
42
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
43
|
+
for (let key of __getOwnPropNames(from))
|
|
44
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
45
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
46
|
+
}
|
|
47
|
+
return to;
|
|
48
|
+
};
|
|
49
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
50
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
51
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
52
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
53
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
54
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
55
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
56
|
+
mod
|
|
57
|
+
));
|
|
58
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
59
|
+
|
|
60
|
+
// src/buttons/Data.tsx
|
|
61
|
+
var Data_exports = {};
|
|
62
|
+
__export(Data_exports, {
|
|
63
|
+
default: () => Data_default
|
|
64
|
+
});
|
|
65
|
+
module.exports = __toCommonJS(Data_exports);
|
|
66
|
+
|
|
67
|
+
// esm-externals:react
|
|
68
|
+
var react_exports = {};
|
|
69
|
+
__export(react_exports, {
|
|
70
|
+
default: () => react_default
|
|
71
|
+
});
|
|
72
|
+
var defaultImport = __toESM(require("react"));
|
|
73
|
+
__reExport(react_exports, require("react"));
|
|
74
|
+
var react_default = "default" in defaultImport ? defaultImport.default : defaultImport;
|
|
75
|
+
|
|
76
|
+
// esm-externals:@splunk/ui-utils/i18n
|
|
77
|
+
var i18n_exports = {};
|
|
78
|
+
__export(i18n_exports, {
|
|
79
|
+
default: () => i18n_default
|
|
80
|
+
});
|
|
81
|
+
var defaultImport2 = __toESM(require("@splunk/ui-utils/i18n"));
|
|
82
|
+
__reExport(i18n_exports, require("@splunk/ui-utils/i18n"));
|
|
83
|
+
var i18n_default = "default" in defaultImport2 ? defaultImport2.default : defaultImport2;
|
|
84
|
+
|
|
85
|
+
// esm-externals:@splunk/react-icons/CylinderMulti
|
|
86
|
+
var CylinderMulti_exports = {};
|
|
87
|
+
__export(CylinderMulti_exports, {
|
|
88
|
+
default: () => CylinderMulti_default
|
|
89
|
+
});
|
|
90
|
+
var defaultImport3 = __toESM(require("@splunk/react-icons/CylinderMulti"));
|
|
91
|
+
__reExport(CylinderMulti_exports, require("@splunk/react-icons/CylinderMulti"));
|
|
92
|
+
var CylinderMulti_default = "default" in defaultImport3 ? defaultImport3.default : defaultImport3;
|
|
93
|
+
|
|
94
|
+
// esm-externals:@splunk/dashboard-context
|
|
95
|
+
var dashboard_context_exports = {};
|
|
96
|
+
__export(dashboard_context_exports, {
|
|
97
|
+
default: () => dashboard_context_default
|
|
98
|
+
});
|
|
99
|
+
var defaultImport4 = __toESM(require("@splunk/dashboard-context"));
|
|
100
|
+
__reExport(dashboard_context_exports, require("@splunk/dashboard-context"));
|
|
101
|
+
var dashboard_context_default = "default" in defaultImport4 ? defaultImport4.default : defaultImport4;
|
|
102
|
+
|
|
103
|
+
// esm-externals:@splunk/dashboard-state
|
|
104
|
+
var dashboard_state_exports = {};
|
|
105
|
+
__export(dashboard_state_exports, {
|
|
106
|
+
default: () => dashboard_state_default
|
|
107
|
+
});
|
|
108
|
+
var defaultImport5 = __toESM(require("@splunk/dashboard-state"));
|
|
109
|
+
__reExport(dashboard_state_exports, require("@splunk/dashboard-state"));
|
|
110
|
+
var dashboard_state_default = "default" in defaultImport5 ? defaultImport5.default : defaultImport5;
|
|
111
|
+
|
|
112
|
+
// esm-externals:@splunk/react-icons/CaretDown
|
|
113
|
+
var CaretDown_exports = {};
|
|
114
|
+
__export(CaretDown_exports, {
|
|
115
|
+
default: () => CaretDown_default
|
|
116
|
+
});
|
|
117
|
+
var defaultImport6 = __toESM(require("@splunk/react-icons/CaretDown"));
|
|
118
|
+
__reExport(CaretDown_exports, require("@splunk/react-icons/CaretDown"));
|
|
119
|
+
var CaretDown_default = "default" in defaultImport6 ? defaultImport6.default : defaultImport6;
|
|
120
|
+
|
|
121
|
+
// esm-externals:@splunk/react-ui/ScreenReaderContent
|
|
122
|
+
var ScreenReaderContent_exports = {};
|
|
123
|
+
__export(ScreenReaderContent_exports, {
|
|
124
|
+
default: () => ScreenReaderContent_default
|
|
125
|
+
});
|
|
126
|
+
var defaultImport7 = __toESM(require("@splunk/react-ui/ScreenReaderContent"));
|
|
127
|
+
__reExport(ScreenReaderContent_exports, require("@splunk/react-ui/ScreenReaderContent"));
|
|
128
|
+
var ScreenReaderContent_default = "default" in defaultImport7 ? defaultImport7.default : defaultImport7;
|
|
129
|
+
|
|
130
|
+
// esm-externals:@splunk/react-ui/Button
|
|
131
|
+
var Button_exports = {};
|
|
132
|
+
__export(Button_exports, {
|
|
133
|
+
default: () => Button_default
|
|
134
|
+
});
|
|
135
|
+
var defaultImport8 = __toESM(require("@splunk/react-ui/Button"));
|
|
136
|
+
__reExport(Button_exports, require("@splunk/react-ui/Button"));
|
|
137
|
+
var Button_default = "default" in defaultImport8 ? defaultImport8.default : defaultImport8;
|
|
138
|
+
|
|
139
|
+
// esm-externals:styled-components
|
|
140
|
+
var styled_components_exports = {};
|
|
141
|
+
__export(styled_components_exports, {
|
|
142
|
+
default: () => styled_components_default
|
|
143
|
+
});
|
|
144
|
+
var defaultImport9 = __toESM(require("styled-components"));
|
|
145
|
+
__reExport(styled_components_exports, require("styled-components"));
|
|
146
|
+
var styled_components_default = "default" in defaultImport9 ? defaultImport9.default : defaultImport9;
|
|
147
|
+
|
|
148
|
+
// src/Item.tsx
|
|
149
|
+
var Item_default = styled_components_default.div``;
|
|
150
|
+
|
|
151
|
+
// src/IconButton.tsx
|
|
152
|
+
var StyledDropdownIcon = styled_components_default(CaretDown_default)`
|
|
153
|
+
margin-left: -5px;
|
|
154
|
+
`;
|
|
155
|
+
var iconSize = 24;
|
|
156
|
+
var menuIconSize = 20;
|
|
157
|
+
var prepareIcon = (_a) => {
|
|
158
|
+
var _b = _a, {
|
|
159
|
+
Icon,
|
|
160
|
+
screenReaderContent,
|
|
161
|
+
isMenu = false
|
|
162
|
+
} = _b, props = __objRest(_b, [
|
|
163
|
+
"Icon",
|
|
164
|
+
"screenReaderContent",
|
|
165
|
+
"isMenu"
|
|
166
|
+
]);
|
|
167
|
+
const size = isMenu ? menuIconSize : iconSize;
|
|
168
|
+
return /* @__PURE__ */ react_default.createElement(react_default.Fragment, null, /* @__PURE__ */ react_default.createElement(Icon, __spreadValues({ width: size, height: size }, props)), isMenu && /* @__PURE__ */ react_default.createElement(StyledDropdownIcon, { variant: "filled", width: 9, height: size }), screenReaderContent && /* @__PURE__ */ react_default.createElement(ScreenReaderContent_default, null, screenReaderContent));
|
|
169
|
+
};
|
|
170
|
+
var IconButton = (_a) => {
|
|
171
|
+
var _b = _a, {
|
|
172
|
+
icon,
|
|
173
|
+
buttonRef,
|
|
174
|
+
disabled = false,
|
|
175
|
+
onClick,
|
|
176
|
+
label,
|
|
177
|
+
testLabel
|
|
178
|
+
} = _b, rest = __objRest(_b, [
|
|
179
|
+
"icon",
|
|
180
|
+
"buttonRef",
|
|
181
|
+
"disabled",
|
|
182
|
+
"onClick",
|
|
183
|
+
"label",
|
|
184
|
+
"testLabel"
|
|
185
|
+
]);
|
|
186
|
+
return /* @__PURE__ */ react_default.createElement(Item_default, __spreadValues({}, rest), /* @__PURE__ */ react_default.createElement(
|
|
187
|
+
Button_default,
|
|
188
|
+
{
|
|
189
|
+
elementRef: buttonRef,
|
|
190
|
+
onClick,
|
|
191
|
+
disabled,
|
|
192
|
+
appearance: "subtle",
|
|
193
|
+
icon,
|
|
194
|
+
label,
|
|
195
|
+
"data-test": testLabel,
|
|
196
|
+
"data-clickable": true
|
|
197
|
+
}
|
|
198
|
+
));
|
|
199
|
+
};
|
|
200
|
+
var IconButton_default = IconButton;
|
|
201
|
+
|
|
202
|
+
// src/buttons/Data.tsx
|
|
203
|
+
var dataInputIcon = prepareIcon({
|
|
204
|
+
Icon: CylinderMulti_default,
|
|
205
|
+
screenReaderContent: (0, i18n_exports._)("Data source overview")
|
|
206
|
+
});
|
|
207
|
+
var Data = ({ dashboardApi }) => {
|
|
208
|
+
const dataButtonRef = (0, dashboard_context_exports.useToolbarRef)("dataOverview");
|
|
209
|
+
const handleClick = (0, react_exports.useCallback)(() => {
|
|
210
|
+
const isOpen = (dashboardApi == null ? void 0 : dashboardApi.getOpenedPanel()) === "dataOverview";
|
|
211
|
+
if (isOpen) {
|
|
212
|
+
dashboardApi.closePanel();
|
|
213
|
+
} else {
|
|
214
|
+
(0, dashboard_state_exports.batch)(() => {
|
|
215
|
+
dashboardApi == null ? void 0 : dashboardApi.selectVisualization([]);
|
|
216
|
+
dashboardApi == null ? void 0 : dashboardApi.openPanel({
|
|
217
|
+
activePanel: "dataOverview",
|
|
218
|
+
panelProps: {
|
|
219
|
+
focusOnOpen: true
|
|
220
|
+
}
|
|
221
|
+
});
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
}, [dashboardApi]);
|
|
225
|
+
return /* @__PURE__ */ react_default.createElement(
|
|
226
|
+
IconButton_default,
|
|
227
|
+
{
|
|
228
|
+
buttonRef: dataButtonRef,
|
|
229
|
+
testLabel: "data-button",
|
|
230
|
+
onClick: handleClick,
|
|
231
|
+
icon: dataInputIcon
|
|
232
|
+
}
|
|
233
|
+
);
|
|
234
|
+
};
|
|
235
|
+
var Data_default = Data;
|
|
236
|
+
//# sourceMappingURL=Data.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/buttons/Data.tsx", "react", "@splunk/ui-utils/i18n", "@splunk/react-icons/CylinderMulti", "@splunk/dashboard-context", "@splunk/dashboard-state", "@splunk/react-icons/CaretDown", "@splunk/react-ui/ScreenReaderContent", "@splunk/react-ui/Button", "styled-components", "../src/Item.tsx", "../src/IconButton.tsx"],
|
|
4
|
+
"sourcesContent": ["import React, { useCallback } from 'react';\nimport { _ } from '@splunk/ui-utils/i18n';\n\nimport DataInput from '@splunk/react-icons/CylinderMulti';\n\nimport { useToolbarRef } from '@splunk/dashboard-context';\nimport { batch } from '@splunk/dashboard-state';\n\nimport IconButton, { prepareIcon } from '../IconButton';\nimport type { ToolbarButtonProps } from '../types/common';\n\nconst dataInputIcon = prepareIcon({\n Icon: DataInput,\n 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", "\nimport * as defaultImport from \"react\";\nexport * from \"react\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/ui-utils/i18n\";\nexport * from \"@splunk/ui-utils/i18n\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-icons/CylinderMulti\";\nexport * from \"@splunk/react-icons/CylinderMulti\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/dashboard-context\";\nexport * from \"@splunk/dashboard-context\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/dashboard-state\";\nexport * from \"@splunk/dashboard-state\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-icons/CaretDown\";\nexport * from \"@splunk/react-icons/CaretDown\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-ui/ScreenReaderContent\";\nexport * from \"@splunk/react-ui/ScreenReaderContent\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"@splunk/react-ui/Button\";\nexport * from \"@splunk/react-ui/Button\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "\nimport * as defaultImport from \"styled-components\";\nexport * from \"styled-components\";\nexport default ('default' in defaultImport ? defaultImport.default : defaultImport);\n", "import styled from 'styled-components';\n\nexport default styled.div``;\n", "import React from 'react';\nimport type SVG from '@splunk/react-icons/SVG';\nimport DropdownIcon from '@splunk/react-icons/CaretDown';\nimport ScreenReaderContent from '@splunk/react-ui/ScreenReaderContent';\nimport Button, { type ButtonPropsBase } from '@splunk/react-ui/Button';\nimport styled from 'styled-components';\nimport ToolbarItem from './Item';\nimport type { ToolbarButtonProps } from './types/common';\n\nconst StyledDropdownIcon = styled(DropdownIcon)`\n margin-left: -5px;\n`;\n\nexport const iconSize = 24;\nexport const menuIconSize = 20;\n\ninterface PrepareIconProps extends React.ComponentProps<typeof SVG> {\n Icon: React.ComponentType<React.ComponentProps<typeof SVG>>;\n screenReaderContent?: string;\n isMenu?: boolean;\n variant?: 'filled' | 'outline' | 'none';\n}\n\n/**\n * Button adds a bunch of padding when there's any child elements even if they don't display anything (screenReaderContent)\n * This bundles the primary icon, a menu caret and screenReaderContent as an icon when needed.\n * Additionally accepts any properties of any react-icons element to be applied to primary icon\n * @param {Object} arg\n * @param {React.ElementType} arg.Icon The primary icon\n * @param {boolean} [arg.isMenu=false] Display a menu caret\n * @param {string} [arg.screenReaderContent] A label for the icon\n * @param {string} [arg.variant] Fill the icon, or not\n * @returns {JSX.Element}\n */\nexport const prepareIcon = ({\n Icon,\n screenReaderContent,\n isMenu = false,\n ...props\n}: PrepareIconProps) => {\n const size = isMenu ? menuIconSize : iconSize;\n return (\n <>\n <Icon width={size} height={size} {...props} />\n {isMenu && (\n <StyledDropdownIcon variant=\"filled\" width={9} height={size} />\n )}\n {screenReaderContent && (\n <ScreenReaderContent>{screenReaderContent}</ScreenReaderContent>\n )}\n </>\n );\n};\n\nexport interface IconButtonProps extends ToolbarButtonProps {\n icon?: JSX.Element;\n onClick?: ButtonPropsBase['onClick'];\n label?: string;\n buttonRef?: React.RefObject<HTMLButtonElement>;\n testLabel?: string;\n disabled?: boolean;\n}\n\nconst IconButton = ({\n icon,\n buttonRef,\n disabled = false,\n onClick,\n label,\n testLabel,\n ...rest\n}: IconButtonProps): JSX.Element => {\n return (\n <ToolbarItem {...rest}>\n <Button\n elementRef={buttonRef}\n onClick={onClick}\n disabled={disabled}\n appearance=\"subtle\"\n icon={icon}\n label={label}\n data-test={testLabel}\n data-clickable\n />\n </ToolbarItem>\n );\n};\n\nexport default IconButton;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport", "defaultImport"]
|
|
7
|
+
}
|