summaryrefslogtreecommitdiff
path: root/frontend/src/index.tsx
diff options
context:
space:
mode:
authorJonas Dellinger <jonas@dellinger.dev>2022-05-26 13:30:14 +0200
committerJonas Dellinger <jonas@dellinger.dev>2022-05-26 13:30:14 +0200
commit71dd0ea449469ed38e784b9c73b673eece680446 (patch)
tree15914a2b7979296b8c04cac0e75191eb9f955919 /frontend/src/index.tsx
parenta06efc08bc01a4a014d916ff1e219a0f17d0c480 (diff)
parent4b923c1dc70eaa4a3ca58d9e9f3218785b2fe919 (diff)
downloaddecky-loader-71dd0ea449469ed38e784b9c73b673eece680446.tar.gz
decky-loader-71dd0ea449469ed38e784b9c73b673eece680446.zip
Cleanup after merge
Diffstat (limited to 'frontend/src/index.tsx')
-rw-r--r--frontend/src/index.tsx25
1 files changed, 25 insertions, 0 deletions
diff --git a/frontend/src/index.tsx b/frontend/src/index.tsx
new file mode 100644
index 00000000..89194777
--- /dev/null
+++ b/frontend/src/index.tsx
@@ -0,0 +1,25 @@
+import PluginLoader from './plugin-loader';
+
+declare global {
+ interface Window {
+ DeckyPluginLoader: PluginLoader;
+ importDeckyPlugin: Function;
+ syncDeckyPlugins: Function;
+ }
+}
+
+window.DeckyPluginLoader?.dismountAll();
+
+window.DeckyPluginLoader = new PluginLoader();
+window.importDeckyPlugin = function (name: string) {
+ window.DeckyPluginLoader?.importPlugin(name);
+};
+
+window.syncDeckyPlugins = async function () {
+ const plugins = await (await fetch('http://127.0.0.1:1337/plugins')).json();
+ for (const plugin of plugins) {
+ window.DeckyPluginLoader?.importPlugin(plugin);
+ }
+};
+
+setTimeout(() => window.syncDeckyPlugins(), 5000);