mirror of
https://github.com/sim1222/misskey.git
synced 2025-07-17 00:10:02 +09:00
@ -25,6 +25,8 @@ import { isDeviceDarkmode } from './scripts/is-device-darkmode';
|
||||
import createStore from './store';
|
||||
import { clientDb, get, count } from './db';
|
||||
import { setI18nContexts } from './scripts/set-i18n-contexts';
|
||||
import { createPluginEnv } from './scripts/aiscript/api';
|
||||
import { AiScript } from '@syuilo/aiscript';
|
||||
|
||||
Vue.use(Vuex);
|
||||
Vue.use(VueHotkey);
|
||||
@ -231,6 +233,35 @@ os.init(async () => {
|
||||
//store.commit('instance/set', );
|
||||
});
|
||||
|
||||
for (const plugin of store.state.deviceUser.plugins) {
|
||||
console.info('Plugin installed:', plugin.name, 'v' + plugin.version);
|
||||
|
||||
const aiscript = new AiScript(createPluginEnv(app, {
|
||||
plugin: plugin,
|
||||
storageKey: 'plugins:' + plugin.id
|
||||
}), {
|
||||
in: (q) => {
|
||||
return new Promise(ok => {
|
||||
app.dialog({
|
||||
title: q,
|
||||
input: {}
|
||||
}).then(({ canceled, result: a }) => {
|
||||
ok(a);
|
||||
});
|
||||
});
|
||||
},
|
||||
out: (value) => {
|
||||
console.log(value);
|
||||
},
|
||||
log: (type, params) => {
|
||||
},
|
||||
});
|
||||
|
||||
store.commit('initPlugin', { plugin, aiscript });
|
||||
|
||||
aiscript.exec(plugin.ast);
|
||||
}
|
||||
|
||||
if (store.getters.isSignedIn) {
|
||||
const main = os.stream.useSharedConnection('main');
|
||||
|
||||
|
Reference in New Issue
Block a user