summaryrefslogtreecommitdiff
path: root/packages/frontend/src/plugin.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/frontend/src/plugin.ts')
-rw-r--r--packages/frontend/src/plugin.ts17
1 files changed, 9 insertions, 8 deletions
diff --git a/packages/frontend/src/plugin.ts b/packages/frontend/src/plugin.ts
index f32c991828..a41d0bc217 100644
--- a/packages/frontend/src/plugin.ts
+++ b/packages/frontend/src/plugin.ts
@@ -26,7 +26,7 @@ export type Plugin = {
version: string;
author?: string;
description?: string;
- permissions?: string[];
+ permissions?: (typeof Misskey.permissions)[number][];
};
export type AiScriptPluginMeta = {
@@ -34,7 +34,7 @@ export type AiScriptPluginMeta = {
version: string;
author: string;
description?: string;
- permissions?: string[];
+ permissions?: (typeof Misskey.permissions)[number][];
config?: Record<string, any>;
};
@@ -49,7 +49,7 @@ async function getParser(): Promise<Parser> {
export function isSupportedAiScriptVersion(version: string): boolean {
try {
return (compareVersions(version, '0.12.0') >= 0);
- } catch (err) {
+ } catch (_) {
return false;
}
}
@@ -72,7 +72,7 @@ export async function parsePluginMeta(code: string): Promise<AiScriptPluginMeta>
try {
const parser = await getParser();
ast = parser.parse(code);
- } catch (err) {
+ } catch (_) {
throw new Error('Aiscript syntax error');
}
@@ -97,7 +97,7 @@ export async function parsePluginMeta(code: string): Promise<AiScriptPluginMeta>
version: version as string,
author: author as string,
description: description as string | undefined,
- permissions: permissions as string[] | undefined,
+ permissions: permissions as (typeof Misskey.permissions)[number][] | undefined,
config: config as Record<string, any> | undefined,
};
}
@@ -106,8 +106,9 @@ export async function authorizePlugin(plugin: Plugin) {
if (plugin.permissions == null || plugin.permissions.length === 0) return;
if (Object.hasOwn(store.s.pluginTokens, plugin.installId)) return;
- const token = await new Promise<string>(async (res, rej) => {
- const { dispose } = await os.popupAsyncWithDialog(import('@/components/MkTokenGenerateWindow.vue').then(x => x.default), {
+ const token = await new Promise<string>((res, rej) => {
+ let dispose: () => void;
+ os.popupAsyncWithDialog(import('@/components/MkTokenGenerateWindow.vue').then(x => x.default), {
title: i18n.ts.tokenRequested,
information: i18n.ts.pluginTokenRequestedDescription,
initialName: plugin.name,
@@ -123,7 +124,7 @@ export async function authorizePlugin(plugin: Plugin) {
res(token);
},
closed: () => dispose(),
- });
+ }).then(d => dispose = d.dispose, err => rej(err));
});
store.set('pluginTokens', {