Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
I
init-things
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nanahira
init-things
Commits
019ed62e
Commit
019ed62e
authored
Oct 17, 2021
by
nanahira
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
use ConfigLike
parent
5f982606
Pipeline
#6292
passed with stages
in 1 minute and 1 second
Changes
3
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
7 additions
and
5 deletions
+7
-5
things/koishi-plugin-init/src/config.ts
things/koishi-plugin-init/src/config.ts
+2
-0
things/koishi-plugin-init/src/index.ts
things/koishi-plugin-init/src/index.ts
+2
-2
things/koishi-plugin-init/src/plugin.ts
things/koishi-plugin-init/src/plugin.ts
+3
-3
No files found.
things/koishi-plugin-init/src/config.ts
View file @
019ed62e
...
...
@@ -5,3 +5,5 @@ export class MyPluginConfig {
@
DefineSchema
({
desc
:
'
命令名
'
,
default
:
'
cmd
'
})
commandName
:
string
;
}
export
type
MyPluginConfigLike
=
Partial
<
MyPluginConfig
>
;
things/koishi-plugin-init/src/index.ts
View file @
019ed62e
import
'
source-map-support/register
'
;
import
{
Context
}
from
'
koishi
'
;
import
{
MyPlugin
}
from
'
./plugin
'
;
import
{
MyPluginConfig
}
from
'
./config
'
;
import
{
MyPluginConfig
Like
}
from
'
./config
'
;
export
{
MyPluginConfig
}
from
'
./config
'
;
export
const
name
=
'
myplugin
'
;
const
plugin
=
new
MyPlugin
();
export
const
schema
=
plugin
.
schema
;
export
function
apply
(
ctx
:
Context
,
config
:
Partial
<
MyPluginConfig
>
)
{
export
function
apply
(
ctx
:
Context
,
config
:
Partial
<
MyPluginConfig
Like
>
)
{
ctx
.
plugin
(
plugin
,
config
);
}
things/koishi-plugin-init/src/plugin.ts
View file @
019ed62e
import
'
source-map-support/register
'
;
import
{
Context
,
Schema
}
from
'
koishi
'
;
import
{
MyPluginConfig
}
from
'
./config
'
;
import
{
MyPluginConfig
,
MyPluginConfigLike
}
from
'
./config
'
;
import
{
schemaFromClass
,
schemaTransform
}
from
'
koishi-utils-schemagen
'
;
export
class
MyPlugin
{
private
config
:
MyPluginConfig
;
private
ctx
:
Context
;
name
=
'
myplugin-main
'
;
schema
:
Schema
<
MyPluginConfig
>
=
schemaFromClass
(
MyPluginConfig
);
apply
(
ctx
:
Context
,
config
:
Partial
<
MyPluginConfig
>
)
{
schema
:
Schema
<
MyPluginConfig
Like
>
=
schemaFromClass
(
MyPluginConfig
);
apply
(
ctx
:
Context
,
config
:
MyPluginConfigLike
)
{
this
.
ctx
=
ctx
;
this
.
config
=
schemaTransform
(
MyPluginConfig
,
config
);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment