mirror of
https://github.com/Melledy/Grasscutter.git
synced 2024-11-23 12:36:06 +00:00
Add a plugin schema
This commit is contained in:
parent
2416dd66e5
commit
04a58d43d5
49
plugin-schema.json
Normal file
49
plugin-schema.json
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
{
|
||||||
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
||||||
|
"title": "JSON schema for a Grasscutter Plugin",
|
||||||
|
"type": "object",
|
||||||
|
"additionalProperties": true,
|
||||||
|
"definitions": {
|
||||||
|
"plugin-name": {
|
||||||
|
"type": "string",
|
||||||
|
"pattern": "^[A-Za-z\\d_.-]+$"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": [ "name", "description", "mainClass" ],
|
||||||
|
"properties": {
|
||||||
|
"name": {
|
||||||
|
"description": "The unique name of plugin.",
|
||||||
|
"$ref": "#/definitions/plugin-name"
|
||||||
|
},
|
||||||
|
"mainClass": {
|
||||||
|
"description": "The plugin's initial class file.",
|
||||||
|
"type": "string",
|
||||||
|
"pattern": "^(?!org\\.bukkit\\.)([a-zA-Z_$][a-zA-Z\\d_$]*\\.)*[a-zA-Z_$][a-zA-Z\\d_$]*$"
|
||||||
|
},
|
||||||
|
"version": {
|
||||||
|
"description": "A plugin revision identifier.",
|
||||||
|
"type": [ "string", "number" ]
|
||||||
|
},
|
||||||
|
"description": {
|
||||||
|
"description": "Human readable plugin summary.",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"author": {
|
||||||
|
"description": "The plugin author.",
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"authors": {
|
||||||
|
"description": "The plugin contributors.",
|
||||||
|
"type": "array",
|
||||||
|
"items": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"website": {
|
||||||
|
"title": "Website",
|
||||||
|
"description": "The URL to the plugin's site",
|
||||||
|
"type": "string",
|
||||||
|
"format": "uri"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user