diff options
| author | Jonas Dellinger <jonas@dellinger.dev> | 2022-05-13 23:18:19 +0200 |
|---|---|---|
| committer | Jonas Dellinger <jonas@dellinger.dev> | 2022-05-13 23:18:19 +0200 |
| commit | 5a6001026860aca724bf5aa871da93a5edabe12c (patch) | |
| tree | 636b97e480473aa739908699a6ad8c9876b85727 | |
| parent | 52f6ca1c587df2cc74b986bc82419c867c404f47 (diff) | |
| download | decky-bazzite-buddy-5a6001026860aca724bf5aa871da93a5edabe12c.tar.gz decky-bazzite-buddy-5a6001026860aca724bf5aa871da93a5edabe12c.zip | |
Actuall add decky-frontend-lib and remove some old code
| -rw-r--r-- | package-lock.json | 57 | ||||
| -rw-r--r-- | package.json | 3 | ||||
| -rw-r--r-- | plugin.json | 2 | ||||
| -rw-r--r-- | rollup.config.js | 2 | ||||
| -rw-r--r-- | src/index.tsx | 71 |
5 files changed, 84 insertions, 51 deletions
diff --git a/package-lock.json b/package-lock.json index d09be53..6c52c3b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,11 +9,12 @@ "version": "0.0.1", "license": "GPL-2.0-or-later", "dependencies": { - "decky-frontend-lib": "file:../decky-frontend-lib", + "decky-frontend-lib": "^0.0.2", "react-icons": "^4.3.1" }, "devDependencies": { "@rollup/plugin-commonjs": "^21.1.0", + "@rollup/plugin-json": "^4.1.0", "@rollup/plugin-node-resolve": "^13.2.1", "@rollup/plugin-replace": "^4.0.0", "@rollup/plugin-typescript": "^8.3.2", @@ -26,17 +27,18 @@ } }, "../decky-frontend-lib": { - "version": "0.0.1", + "version": "0.0.2", + "extraneous": true, "license": "GPL-2.0-or-later", - "dependencies": { - "moduleraid": "^6.0.0" - }, "devDependencies": { + "@types/jest": "^27.4.1", "@types/react": "16.14.0", "import-sort-style-module": "^6.0.0", + "jest": "^27.5.1", "prettier-plugin-import-sort": "^0.0.7", - "react": "16.14.0", + "react": "^16.14.0", "shx": "^0.3.4", + "ts-jest": "^27.1.4", "typescript": "^4.6.3" }, "peerDependencies": { @@ -64,6 +66,18 @@ "rollup": "^2.38.3" } }, + "node_modules/@rollup/plugin-json": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-4.1.0.tgz", + "integrity": "sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^3.0.8" + }, + "peerDependencies": { + "rollup": "^1.20.0 || ^2.0.0" + } + }, "node_modules/@rollup/plugin-node-resolve": { "version": "13.2.1", "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.2.1.tgz", @@ -535,8 +549,12 @@ "dev": true }, "node_modules/decky-frontend-lib": { - "resolved": "../decky-frontend-lib", - "link": true + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/decky-frontend-lib/-/decky-frontend-lib-0.0.2.tgz", + "integrity": "sha512-XyxSLrkvEjA0oDsPnV30cyMgzqSOKMp3riAkk1e0iEItvt26m4w4iGPD7JO1rtXquWpSEvYB9SCmhlrX/3COXA==", + "peerDependencies": { + "react": "16.14.0" + } }, "node_modules/deepmerge": { "version": "4.2.2", @@ -1409,6 +1427,15 @@ "resolve": "^1.17.0" } }, + "@rollup/plugin-json": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-4.1.0.tgz", + "integrity": "sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.0.8" + } + }, "@rollup/plugin-node-resolve": { "version": "13.2.1", "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.2.1.tgz", @@ -1810,16 +1837,10 @@ "dev": true }, "decky-frontend-lib": { - "version": "file:../decky-frontend-lib", - "requires": { - "@types/react": "16.14.0", - "import-sort-style-module": "^6.0.0", - "moduleraid": "^6.0.0", - "prettier-plugin-import-sort": "^0.0.7", - "react": "16.14.0", - "shx": "^0.3.4", - "typescript": "^4.6.3" - } + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/decky-frontend-lib/-/decky-frontend-lib-0.0.2.tgz", + "integrity": "sha512-XyxSLrkvEjA0oDsPnV30cyMgzqSOKMp3riAkk1e0iEItvt26m4w4iGPD7JO1rtXquWpSEvYB9SCmhlrX/3COXA==", + "requires": {} }, "deepmerge": { "version": "4.2.2", diff --git a/package.json b/package.json index bc8cdab..9013924 100644 --- a/package.json +++ b/package.json @@ -26,6 +26,7 @@ "homepage": "https://github.com/SteamDeckHomebrew/decky-plugin-template#readme", "devDependencies": { "@rollup/plugin-commonjs": "^21.1.0", + "@rollup/plugin-json": "^4.1.0", "@rollup/plugin-node-resolve": "^13.2.1", "@rollup/plugin-replace": "^4.0.0", "@rollup/plugin-typescript": "^8.3.2", @@ -37,7 +38,7 @@ "shx": "^0.3.4" }, "dependencies": { - "decky-frontend-lib": "file:../decky-frontend-lib", + "decky-frontend-lib": "^0.0.2", "react-icons": "^4.3.1" } } diff --git a/plugin.json b/plugin.json index 491d812..60ec4fb 100644 --- a/plugin.json +++ b/plugin.json @@ -2,5 +2,5 @@ "name": "Example Plugin", "author": "John Doe", "frontend_bundle": "dist/example-plugin.js", - "flags": ["hot_reload", "_root"] + "flags": ["debug", "_root"] } diff --git a/rollup.config.js b/rollup.config.js index 52abadb..6e8c396 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -1,4 +1,5 @@ import commonjs from '@rollup/plugin-commonjs'; +import json from '@rollup/plugin-json'; import { nodeResolve } from '@rollup/plugin-node-resolve'; import replace from '@rollup/plugin-replace'; import typescript from '@rollup/plugin-typescript'; @@ -10,6 +11,7 @@ export default defineConfig({ commonjs(), nodeResolve(), typescript(), + json(), replace({ preventAssignment: false, 'process.env.NODE_ENV': JSON.stringify('production'), diff --git a/src/index.tsx b/src/index.tsx index 56301a7..f10ca4f 100644 --- a/src/index.tsx +++ b/src/index.tsx @@ -1,50 +1,59 @@ import { Button, definePlugin, - PanelSection, - PanelSectionRow, + Menu, + MenuItem, ServerAPI, - TabTitle, + showModal, + staticClasses, } from "decky-frontend-lib"; -import { useState, VFC } from "react"; +import { VFC } from "react"; import { FaShip } from "react-icons/fa"; -interface AddMethodArgs { - left: number; - right: number; -} +// interface AddMethodArgs { +// left: number; +// right: number; +// } -const Content: VFC<{ serverAPI: ServerAPI }> = ({ serverAPI }) => { - const [result, setResult] = useState<number | undefined>(); +const Content: VFC<{ serverAPI: ServerAPI }> = ({}) => { + // const [result, setResult] = useState<number | undefined>(); - const onClick = async () => { - const result = await serverAPI.callPluginMethod<AddMethodArgs, number>( - "add", - { - left: 2, - right: 2, - } - ); - if (result.success) { - setResult(result.result); - } - }; + // const onClick = async () => { + // const result = await serverAPI.callPluginMethod<AddMethodArgs, number>( + // "add", + // { + // left: 2, + // right: 2, + // } + // ); + // if (result.success) { + // setResult(result.result); + // } + // }; return ( - <PanelSection> - <PanelSectionRow> - <Button layout="below" bottomSeparator={false} onClick={onClick}> - What is 2+2? - </Button> - <div>Server says: {result}</div> - </PanelSectionRow> - </PanelSection> + <div> + <Button + onClick={(e) => + showModal( + <Menu label="Menu" cancelText="CAAAANCEL" onCancel={() => {}}> + <MenuItem onSelected={() => {}}>Item #1</MenuItem> + <MenuItem onSelected={() => {}}>Item #2</MenuItem> + <MenuItem onSelected={() => {}}>Item #3</MenuItem> + </Menu>, + e.currentTarget ?? window + ) + } + > + Server says yolo + </Button> + </div> ); }; export default definePlugin((serverApi) => { return { - title: <TabTitle>Example Plugin</TabTitle>, + title: <div className={staticClasses.Title}>Example Plugin</div>, content: <Content serverAPI={serverApi} />, icon: <FaShip />, }; |
