feat: 新的资源包加载逻辑
feat: 主题商店支持
This commit is contained in:
@ -1,6 +1,5 @@
|
||||
from nonebot.plugin import PluginMetadata
|
||||
|
||||
from liteyuki.utils.language import get_default_lang
|
||||
from .core import *
|
||||
from .loader import *
|
||||
from .runtime import *
|
||||
|
@ -14,6 +14,7 @@ from liteyuki.utils.language import get_user_lang
|
||||
from liteyuki.utils.ly_typing import T_Bot, T_MessageEvent
|
||||
from liteyuki.utils.message import Markdown as md
|
||||
from liteyuki.utils.reloader import Reloader
|
||||
from liteyuki.utils.resource import get_loaded_resource_packs, load_resources
|
||||
|
||||
require("nonebot_plugin_alconna"), require("nonebot_plugin_htmlrender")
|
||||
from nonebot_plugin_alconna import on_alconna, Alconna, Args, Subcommand, Arparma
|
||||
@ -45,6 +46,14 @@ reload_liteyuki = on_alconna(
|
||||
permission=SUPERUSER
|
||||
)
|
||||
|
||||
reload_resources = on_alconna(
|
||||
aliases={"重载资源"},
|
||||
command=Alconna(
|
||||
"reload-resources"
|
||||
),
|
||||
permission=SUPERUSER
|
||||
)
|
||||
|
||||
cmd_config = on_alconna(
|
||||
aliases={"配置"},
|
||||
command=Alconna(
|
||||
@ -153,6 +162,17 @@ async def _(result: Arparma, event: T_MessageEvent, bot: T_Bot):
|
||||
await md.send_md(reply, bot, event=event)
|
||||
|
||||
|
||||
@reload_resources.handle()
|
||||
async def _(event: T_MessageEvent):
|
||||
ulang = get_user_lang(str(event.user_id))
|
||||
load_resources()
|
||||
await reload_resources.finish(
|
||||
ulang.get("liteyuki.reload_resources_success",
|
||||
NUM=len(get_loaded_resource_packs())
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
@switch_image_mode.handle()
|
||||
async def _(bot: T_Bot, event: T_MessageEvent):
|
||||
global markdown_image
|
||||
|
@ -1,20 +1,15 @@
|
||||
import os.path
|
||||
import shutil
|
||||
|
||||
import nonebot.plugin
|
||||
|
||||
from liteyuki.utils import init_log
|
||||
from liteyuki.utils.data_manager import InstalledPlugin, plugin_db
|
||||
from liteyuki.utils.resource import load_resource_from_dir
|
||||
from liteyuki.utils.resource import load_resource_from_dir, load_resources
|
||||
from liteyuki.utils.tools import check_for_package
|
||||
|
||||
# 加载默认资源和语言
|
||||
RESOURCE_PATH = "liteyuki/resources"
|
||||
load_resource_from_dir(RESOURCE_PATH)
|
||||
load_resources()
|
||||
init_log()
|
||||
# 加载其他资源包
|
||||
if os.path.exists("resources"):
|
||||
for resource in os.listdir("resources"):
|
||||
load_resource_from_dir(os.path.join("resources", resource))
|
||||
|
||||
nonebot.plugin.load_plugins("liteyuki/plugins")
|
||||
nonebot.plugin.load_plugins("plugins")
|
||||
|
@ -144,10 +144,13 @@ async def get_stats_data(self_id: str = None, lang: str = None) -> dict:
|
||||
if disk_usage.total > 0:
|
||||
disk_data.append(
|
||||
{
|
||||
"name" : disk.device,
|
||||
"total" : disk_total_show,
|
||||
"free" : disk_free_show,
|
||||
"percent": disk_usage.percent,
|
||||
"name" : disk.device,
|
||||
"total" : disk_total_show,
|
||||
"free" : disk_free_show,
|
||||
"percent" : disk_usage.percent,
|
||||
"usedValue" : disk_usage.used,
|
||||
"freeValue" : disk_usage.free,
|
||||
"totalValue": disk_usage.total,
|
||||
}
|
||||
)
|
||||
|
||||
@ -164,14 +167,17 @@ async def get_stats_data(self_id: str = None, lang: str = None) -> dict:
|
||||
|
||||
cpu_info = get_cpu_info()
|
||||
templ = {
|
||||
"plugin" : len(nonebot.get_loaded_plugins()),
|
||||
"version" : __VERSION__,
|
||||
"system" : platform.platform(),
|
||||
"cpu" : [
|
||||
{
|
||||
"name" : "USED",
|
||||
"value": psutil.cpu_percent(interval=1)
|
||||
"value": psutil.cpu_percent()
|
||||
},
|
||||
{
|
||||
"name" : "FREE",
|
||||
"value": 100 - psutil.cpu_percent(interval=1)
|
||||
"value": 100 - psutil.cpu_percent()
|
||||
}
|
||||
],
|
||||
"mem" : [
|
||||
@ -221,6 +227,7 @@ async def get_stats_data(self_id: str = None, lang: str = None) -> dict:
|
||||
"cpu_trans" : ulang.get("main.monitor.cpu"),
|
||||
"mem_trans" : ulang.get("main.monitor.memory"),
|
||||
"swap_trans" : ulang.get("main.monitor.swap"),
|
||||
"disk_trans" : ulang.get("main.monitor.disk"),
|
||||
"used_trans" : ulang.get("main.monitor.used"),
|
||||
"free_trans" : ulang.get("main.monitor.free"),
|
||||
"total_trans": ulang.get("main.monitor.total"),
|
||||
|
Reference in New Issue
Block a user