This commit is contained in:
jxxghp
2023-09-07 16:05:48 +08:00
parent 7efcde89b9
commit a9db0f6bbf
9 changed files with 144 additions and 6 deletions

View File

@ -0,0 +1,132 @@
from typing import Any, List, Dict, Tuple
from app.plugins import _PluginBase
class BrushFlow(_PluginBase):
# 插件名称
plugin_name = "站点刷流"
# 插件描述
plugin_desc = "自动托管刷流,将会默认提高对应站点的种子刷新频率。"
# 插件图标
plugin_icon = "fileupload.png"
# 主题色
plugin_color = "#EC5665"
# 插件版本
plugin_version = "1.0"
# 插件作者
plugin_author = "jxxghp"
# 作者主页
author_url = "https://github.com/jxxghp"
# 插件配置项ID前缀
plugin_config_prefix = "brushflow_"
# 加载顺序
plugin_order = 21
# 可使用的用户级别
auth_level = 3
# 私有属性
_enabled = False
_notify = True
_onlyonce = False
def init_plugin(self, config: dict = None):
if config:
self._enabled = config.get("enabled")
self._notify = config.get("notify")
self._onlyonce = config.get("onlyonce")
def get_state(self) -> bool:
return self._enabled
@staticmethod
def get_command() -> List[Dict[str, Any]]:
pass
def get_api(self) -> List[Dict[str, Any]]:
pass
def get_form(self) -> Tuple[List[dict], Dict[str, Any]]:
"""
拼装插件配置页面需要返回两块数据1、页面配置2、数据结构
"""
request_options = ["POST", "GET"]
return [
{
'component': 'VForm',
'content': [
{
'component': 'VRow',
'content': [
{
'component': 'VCol',
'props': {
'cols': 12,
'md': 4
},
'content': [
{
'component': 'VSwitch',
'props': {
'model': 'enabled',
'label': '启用插件',
}
}
]
},
{
'component': 'VCol',
'props': {
'cols': 12,
'md': 4
},
'content': [
{
'component': 'VSwitch',
'props': {
'model': 'enabled',
'label': '发送通知',
}
}
]
},
{
'component': 'VCol',
'props': {
'cols': 12,
'md': 4
},
'content': [
{
'component': 'VSwitch',
'props': {
'model': 'onlyonce',
'label': '立即运行一次',
}
}
]
}
]
},
{
'component': 'VRow',
'content': [
]
},
]
}
], {
"enabled": False,
"notify": True,
"onlyonce": False,
}
def get_page(self) -> List[dict]:
pass
def stop_service(self):
"""
退出插件
"""
pass