diff options
Diffstat (limited to 'frontend/src/components/settings/pages')
| -rw-r--r-- | frontend/src/components/settings/pages/PluginList.tsx | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/frontend/src/components/settings/pages/PluginList.tsx b/frontend/src/components/settings/pages/PluginList.tsx new file mode 100644 index 00000000..4fd2c063 --- /dev/null +++ b/frontend/src/components/settings/pages/PluginList.tsx @@ -0,0 +1,32 @@ +import { DialogButton, staticClasses } from 'decky-frontend-lib'; +import { FaTrash } from 'react-icons/fa'; + +export default function PluginList() { + const plugins = window.DeckyPluginLoader?.getPlugins(); + + if (plugins.length === 0) { + return ( + <div> + <p>No plugins installed</p> + </div> + ); + } + + return ( + <ul style={{ listStyleType: 'none' }}> + {window.DeckyPluginLoader?.getPlugins().map(({ name }) => ( + <li style={{ display: 'flex', flexDirection: 'row', alignItems: 'center' }}> + <span>{name}</span> + <div className={staticClasses.Title} style={{ marginLeft: 'auto', boxShadow: 'none' }}> + <DialogButton + style={{ height: '40px', width: '40px', padding: '10px 12px' }} + onClick={() => window.DeckyPluginLoader.uninstall_plugin(name)} + > + <FaTrash /> + </DialogButton> + </div> + </li> + ))} + </ul> + ); +} |
