@grafana/scenes 4.12.0 → 4.12.1--canary.704.8799450327.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.
|
@@ -25,17 +25,29 @@ function VizPanelMenuRenderer({ model }) {
|
|
|
25
25
|
}, []);
|
|
26
26
|
const renderItems = (items2) => {
|
|
27
27
|
return items2.map(
|
|
28
|
-
(item) =>
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
28
|
+
(item) => {
|
|
29
|
+
switch (item.type) {
|
|
30
|
+
case "divider":
|
|
31
|
+
return /* @__PURE__ */ React.createElement(Menu.Divider, {
|
|
32
|
+
key: item.text
|
|
33
|
+
});
|
|
34
|
+
case "group":
|
|
35
|
+
return /* @__PURE__ */ React.createElement(Menu.Group, {
|
|
36
|
+
key: item.text,
|
|
37
|
+
label: item.text
|
|
38
|
+
}, item.subMenu ? renderItems(item.subMenu) : void 0);
|
|
39
|
+
default:
|
|
40
|
+
return /* @__PURE__ */ React.createElement(Menu.Item, {
|
|
41
|
+
key: item.text,
|
|
42
|
+
label: item.text,
|
|
43
|
+
icon: item.iconClassName,
|
|
44
|
+
childItems: item.subMenu ? renderItems(item.subMenu) : void 0,
|
|
45
|
+
url: item.href,
|
|
46
|
+
onClick: item.onClick,
|
|
47
|
+
shortcut: item.shortcut
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
}
|
|
39
51
|
);
|
|
40
52
|
};
|
|
41
53
|
return /* @__PURE__ */ React.createElement(Menu, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VizPanelMenu.js","sources":["../../../../src/components/VizPanel/VizPanelMenu.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { PanelMenuItem } from '@grafana/data';\nimport { Menu } from '@grafana/ui';\nimport { SceneObjectBase } from '../../core/SceneObjectBase';\nimport { SceneComponentProps, SceneObjectState } from '../../core/types';\n\ninterface VizPanelMenuState extends SceneObjectState {\n items?: PanelMenuItem[];\n}\n\nexport class VizPanelMenu extends SceneObjectBase<VizPanelMenuState> {\n static Component = VizPanelMenuRenderer;\n\n // Allows adding menu items dynamically\n public addItem(item: PanelMenuItem) {\n this.setState({\n items: this.state.items ? [...this.state.items, item] : [item],\n });\n }\n\n // Allows replacing all menu items\n public setItems(items: PanelMenuItem[]) {\n this.setState({\n items,\n });\n }\n}\n\nfunction VizPanelMenuRenderer({ model }: SceneComponentProps<VizPanelMenu>) {\n const { items = [] } = model.useState();\n const ref = React.useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (ref.current) {\n ref.current.focus();\n }\n }, []);\n\n const renderItems = (items: PanelMenuItem[]) => {\n return items.map((item) =>\n item.type
|
|
1
|
+
{"version":3,"file":"VizPanelMenu.js","sources":["../../../../src/components/VizPanel/VizPanelMenu.tsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport { PanelMenuItem } from '@grafana/data';\nimport { Menu } from '@grafana/ui';\nimport { SceneObjectBase } from '../../core/SceneObjectBase';\nimport { SceneComponentProps, SceneObjectState } from '../../core/types';\n\ninterface VizPanelMenuState extends SceneObjectState {\n items?: PanelMenuItem[];\n}\n\nexport class VizPanelMenu extends SceneObjectBase<VizPanelMenuState> {\n static Component = VizPanelMenuRenderer;\n\n // Allows adding menu items dynamically\n public addItem(item: PanelMenuItem) {\n this.setState({\n items: this.state.items ? [...this.state.items, item] : [item],\n });\n }\n\n // Allows replacing all menu items\n public setItems(items: PanelMenuItem[]) {\n this.setState({\n items,\n });\n }\n}\n\nfunction VizPanelMenuRenderer({ model }: SceneComponentProps<VizPanelMenu>) {\n const { items = [] } = model.useState();\n const ref = React.useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (ref.current) {\n ref.current.focus();\n }\n }, []);\n\n const renderItems = (items: PanelMenuItem[]) => {\n return items.map((item) =>\n {\n switch (item.type) {\n case 'divider':\n return <Menu.Divider key={item.text} />;\n case 'group':\n return (\n <Menu.Group key={item.text} label={item.text}>\n {item.subMenu ? renderItems(item.subMenu) : undefined}\n </Menu.Group>\n );\n default:\n return (\n <Menu.Item\n key={item.text}\n label={item.text}\n icon={item.iconClassName}\n childItems={item.subMenu ? renderItems(item.subMenu) : undefined}\n url={item.href}\n onClick={item.onClick}\n shortcut={item.shortcut}\n />\n );\n }\n }\n );\n };\n\n return <Menu ref={ref}>{renderItems(items)}</Menu>;\n}\n"],"names":["items"],"mappings":";;;;AAUO,MAAM,qBAAqB,eAAmC,CAAA;AAAA,EAI5D,QAAQ,IAAqB,EAAA;AAClC,IAAA,IAAA,CAAK,QAAS,CAAA;AAAA,MACZ,KAAO,EAAA,IAAA,CAAK,KAAM,CAAA,KAAA,GAAQ,CAAC,GAAG,IAAK,CAAA,KAAA,CAAM,KAAO,EAAA,IAAI,CAAI,GAAA,CAAC,IAAI,CAAA;AAAA,KAC9D,CAAA,CAAA;AAAA,GACH;AAAA,EAGO,SAAS,KAAwB,EAAA;AACtC,IAAA,IAAA,CAAK,QAAS,CAAA;AAAA,MACZ,KAAA;AAAA,KACD,CAAA,CAAA;AAAA,GACH;AACF,CAAA;AAhBa,YAAA,CACJ,SAAY,GAAA,oBAAA,CAAA;AAiBrB,SAAS,oBAAA,CAAqB,EAAE,KAAA,EAA4C,EAAA;AAC1E,EAAA,MAAM,EAAE,KAAQ,GAAA,EAAG,EAAA,GAAI,MAAM,QAAS,EAAA,CAAA;AACtC,EAAM,MAAA,GAAA,GAAM,KAAM,CAAA,MAAA,CAAuB,IAAI,CAAA,CAAA;AAE7C,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,IAAI,OAAS,EAAA;AACf,MAAA,GAAA,CAAI,QAAQ,KAAM,EAAA,CAAA;AAAA,KACpB;AAAA,GACF,EAAG,EAAE,CAAA,CAAA;AAEL,EAAM,MAAA,WAAA,GAAc,CAACA,MAA2B,KAAA;AAC9C,IAAA,OAAOA,MAAM,CAAA,GAAA;AAAA,MAAI,CAAC,IAChB,KAAA;AACE,QAAA,QAAQ,IAAK,CAAA,IAAA;AAAA,UACN,KAAA,SAAA;AACH,YAAO,uBAAA,KAAA,CAAA,aAAA,CAAC,KAAK,OAAL,EAAA;AAAA,cAAa,KAAK,IAAK,CAAA,IAAA;AAAA,aAAM,CAAA,CAAA;AAAA,UAClC,KAAA,OAAA;AACH,YACE,uBAAA,KAAA,CAAA,aAAA,CAAC,KAAK,KAAL,EAAA;AAAA,cAAW,KAAK,IAAK,CAAA,IAAA;AAAA,cAAM,OAAO,IAAK,CAAA,IAAA;AAAA,aAAA,EACrC,KAAK,OAAU,GAAA,WAAA,CAAY,IAAK,CAAA,OAAO,IAAI,KAC9C,CAAA,CAAA,CAAA;AAAA,UAAA;AAGF,YACE,uBAAA,KAAA,CAAA,aAAA,CAAC,KAAK,IAAL,EAAA;AAAA,cACC,KAAK,IAAK,CAAA,IAAA;AAAA,cACV,OAAO,IAAK,CAAA,IAAA;AAAA,cACZ,MAAM,IAAK,CAAA,aAAA;AAAA,cACX,YAAY,IAAK,CAAA,OAAA,GAAU,WAAY,CAAA,IAAA,CAAK,OAAO,CAAI,GAAA,KAAA,CAAA;AAAA,cACvD,KAAK,IAAK,CAAA,IAAA;AAAA,cACV,SAAS,IAAK,CAAA,OAAA;AAAA,cACd,UAAU,IAAK,CAAA,QAAA;AAAA,aACjB,CAAA,CAAA;AAAA,SAAA;AAAA,OAGR;AAAA,KACF,CAAA;AAAA,GACF,CAAA;AAEA,EAAA,uBAAQ,KAAA,CAAA,aAAA,CAAA,IAAA,EAAA;AAAA,IAAK,GAAA;AAAA,GAAW,EAAA,WAAA,CAAY,KAAK,CAAE,CAAA,CAAA;AAC7C;;;;"}
|
package/dist/index.js
CHANGED
|
@@ -7590,17 +7590,29 @@ function VizPanelMenuRenderer({ model }) {
|
|
|
7590
7590
|
}, []);
|
|
7591
7591
|
const renderItems = (items2) => {
|
|
7592
7592
|
return items2.map(
|
|
7593
|
-
(item) =>
|
|
7594
|
-
|
|
7595
|
-
|
|
7596
|
-
|
|
7597
|
-
|
|
7598
|
-
|
|
7599
|
-
|
|
7600
|
-
|
|
7601
|
-
|
|
7602
|
-
|
|
7603
|
-
|
|
7593
|
+
(item) => {
|
|
7594
|
+
switch (item.type) {
|
|
7595
|
+
case "divider":
|
|
7596
|
+
return /* @__PURE__ */ React__default["default"].createElement(ui.Menu.Divider, {
|
|
7597
|
+
key: item.text
|
|
7598
|
+
});
|
|
7599
|
+
case "group":
|
|
7600
|
+
return /* @__PURE__ */ React__default["default"].createElement(ui.Menu.Group, {
|
|
7601
|
+
key: item.text,
|
|
7602
|
+
label: item.text
|
|
7603
|
+
}, item.subMenu ? renderItems(item.subMenu) : void 0);
|
|
7604
|
+
default:
|
|
7605
|
+
return /* @__PURE__ */ React__default["default"].createElement(ui.Menu.Item, {
|
|
7606
|
+
key: item.text,
|
|
7607
|
+
label: item.text,
|
|
7608
|
+
icon: item.iconClassName,
|
|
7609
|
+
childItems: item.subMenu ? renderItems(item.subMenu) : void 0,
|
|
7610
|
+
url: item.href,
|
|
7611
|
+
onClick: item.onClick,
|
|
7612
|
+
shortcut: item.shortcut
|
|
7613
|
+
});
|
|
7614
|
+
}
|
|
7615
|
+
}
|
|
7604
7616
|
);
|
|
7605
7617
|
};
|
|
7606
7618
|
return /* @__PURE__ */ React__default["default"].createElement(ui.Menu, {
|