Commit 321b2238 authored by nanahira's avatar nanahira

thirdeye

parent c5652e8e
Pipeline #6776 failed with stages
in 42 seconds
#!/bin/bash #!/bin/bash
npm install --save \ npm install --save \
source-map-support \ source-map-support \
koishi-utils-schemagen koishi-thirdeye
npm install --save-dev \ npm install --save-dev \
@types/node \ @types/node \
......
import 'source-map-support/register'; import 'source-map-support/register';
import { DefineSchema } from 'koishi-utils-schemagen'; import { DefineSchema } from 'koishi-thirdeye';
export class MyPluginConfig { export class MyPluginConfig {
@DefineSchema({ desc: '命令名', default: 'cmd' }) @DefineSchema({ desc: '命令名', default: 'cmd' })
......
import 'source-map-support/register'; import 'source-map-support/register';
import { Context, Schema } from 'koishi'; import { Context } from 'koishi';
import { MyPlugin } from './plugin';
import { MyPluginConfig, MyPluginConfigLike } from './config'; import { MyPluginConfig, MyPluginConfigLike } from './config';
import { schemaFromClass } from 'koishi-utils-schemagen'; import { KoishiPlugin, InjectConfig } from 'koishi-thirdeye';
export * from './config'; export * from './config';
export * from './plugin';
declare module 'koishi' { declare module 'koishi' {
interface Modules { interface Modules {
...@@ -12,8 +10,9 @@ declare module 'koishi' { ...@@ -12,8 +10,9 @@ declare module 'koishi' {
} }
} }
export const name = 'myplugin'; @KoishiPlugin({ name: 'myplugin', schema: MyPluginConfig })
export const schema: Schema<MyPluginConfigLike> = schemaFromClass(MyPluginConfig); export default class MyPlugin {
export function apply(ctx: Context, config: MyPluginConfigLike) { constructor(private ctx: Context, config: MyPluginConfigLike) {}
ctx.plugin(MyPlugin, config); @InjectConfig()
private config: MyPluginConfig;
} }
import 'source-map-support/register';
import { Context } from 'koishi';
import { MyPluginConfig, MyPluginConfigLike } from './config';
import { schemaTransform } from 'koishi-utils-schemagen';
export class MyPlugin {
private config: MyPluginConfig;
constructor(private ctx: Context, _config: MyPluginConfigLike) {
this.config = schemaTransform(MyPluginConfig, _config);
}
}
...@@ -32,7 +32,7 @@ module.exports = { ...@@ -32,7 +32,7 @@ module.exports = {
...(packAll ...(packAll
? {} ? {}
: { : {
'koishi-utils-schemagen': 'koishi-utils-schemagen', 'koishi-thirdeye': 'koishi-thirdeye',
}), }),
}, },
}; };
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment