summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJonas Dellinger <jonas@dellinger.dev>2022-05-30 22:23:13 +0200
committerJonas Dellinger <jonas@dellinger.dev>2022-05-30 22:23:19 +0200
commitd8870f20620fc459ed284f652eb204366e6e317d (patch)
tree9caed1e7a8e0697dfb856d4b76fa9876c4d5cf4f /src
parent82320806496a456a67bd87a844e278c535269b75 (diff)
downloaddecky-bazzite-buddy-d8870f20620fc459ed284f652eb204366e6e317d.tar.gz
decky-bazzite-buddy-d8870f20620fc459ed284f652eb204366e6e317d.zip
Update lib, show example of router
Diffstat (limited to 'src')
-rw-r--r--src/index.tsx32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/index.tsx b/src/index.tsx
index 8fd3a48..89de1b7 100644
--- a/src/index.tsx
+++ b/src/index.tsx
@@ -1,10 +1,12 @@
import {
ButtonItem,
definePlugin,
+ DialogButton,
Menu,
MenuItem,
PanelSection,
PanelSectionRow,
+ Router,
ServerAPI,
showModal,
staticClasses,
@@ -60,14 +62,44 @@ const Content: VFC<{ serverAPI: ServerAPI }> = ({}) => {
<img src={logo} />
</div>
</PanelSectionRow>
+
+ <PanelSectionRow>
+ <ButtonItem
+ layout="below"
+ onClick={() => {
+ Router.CloseSideMenus();
+ Router.Navigate("/decky-plugin-test");
+ }}
+ >
+ Router
+ </ButtonItem>
+ </PanelSectionRow>
</PanelSection>
);
};
+const DeckyPluginRouterTest: VFC = () => {
+ return (
+ <div style={{ marginTop: "50px", color: "white" }}>
+ Hello World!
+ <DialogButton onClick={() => Router.NavigateToStore()}>
+ Go to Store
+ </DialogButton>
+ </div>
+ );
+};
+
export default definePlugin((serverApi: ServerAPI) => {
+ serverApi.routerHook.addRoute("/decky-plugin-test", DeckyPluginRouterTest, {
+ exact: true,
+ });
+
return {
title: <div className={staticClasses.Title}>Example Plugin</div>,
content: <Content serverAPI={serverApi} />,
icon: <FaShip />,
+ onDismount() {
+ serverApi.routerHook.removeRoute("/decky-plugin-test");
+ },
};
});