mirror of
https://github.com/LLOneBot/LLOneBot.git
synced 2024-11-22 01:56:33 +00:00
merge main
This commit is contained in:
commit
5cf45a452b
@ -30,18 +30,14 @@ async function onSettingWindowCreated(view: Element) {
|
|||||||
const doc = parser.parseFromString([
|
const doc = parser.parseFromString([
|
||||||
'<div>',
|
'<div>',
|
||||||
`<style>${StyleRaw}</style>`,
|
`<style>${StyleRaw}</style>`,
|
||||||
`<setting-section>
|
`<setting-section id="llonebot-error">
|
||||||
<setting-panel>
|
<setting-panel><pre><code></code></pre></setting-panel>
|
||||||
<setting-list data-direction="column" class="new">
|
</setting-section>`,
|
||||||
<setting-item data-direction="row">
|
|
||||||
<setting-text class="llonebot-update-title">正在检查LLOneBot版本中</setting-text>
|
|
||||||
<setting-button data-type="secondary" class="llonebot-update-button">请稍后</setting-button>
|
|
||||||
</setting-item>
|
|
||||||
</setting-list>
|
|
||||||
</setting-panel>
|
|
||||||
<setting-section>`,
|
|
||||||
SettingList([
|
SettingList([
|
||||||
'<div id="llonebot-error" class="llonebot-error"></div>',
|
SettingItem(
|
||||||
|
'<span id="llonebot-update-title">正在检查 LLOneBot 更新</span>', null,
|
||||||
|
SettingButton('请稍候', 'llonebot-update-button', 'secondary'),
|
||||||
|
),
|
||||||
]),
|
]),
|
||||||
SettingList([
|
SettingList([
|
||||||
SettingItem('启用 HTTP 服务', null,
|
SettingItem('启用 HTTP 服务', null,
|
||||||
@ -98,7 +94,7 @@ async function onSettingWindowCreated(view: Element) {
|
|||||||
`<div class="q-input" style="width:210px;"><input class="q-input__inner" data-config-key="token" type="text" value="${config.token}" placeholder="未设置" /></div>`,
|
`<div class="q-input" style="width:210px;"><input class="q-input__inner" data-config-key="token" type="text" value="${config.token}" placeholder="未设置" /></div>`,
|
||||||
),
|
),
|
||||||
SettingItem(
|
SettingItem(
|
||||||
'启用CQ码上报格式,不启用则为消息段格式',
|
'新消息上报格式',
|
||||||
'如客户端无特殊需求推荐保持默认设置,两者的详细差异可参考 <a href="javascript:LiteLoader.api.openExternal(\'https://github.com/botuniverse/onebot-11/tree/master/message#readme\');">OneBot v11 文档</a>',
|
'如客户端无特殊需求推荐保持默认设置,两者的详细差异可参考 <a href="javascript:LiteLoader.api.openExternal(\'https://github.com/botuniverse/onebot-11/tree/master/message#readme\');">OneBot v11 文档</a>',
|
||||||
SettingSelect([
|
SettingSelect([
|
||||||
{text: '消息段', value: 'array'},
|
{text: '消息段', value: 'array'},
|
||||||
@ -182,18 +178,20 @@ async function onSettingWindowCreated(view: Element) {
|
|||||||
'</div>',
|
'</div>',
|
||||||
].join(''), "text/html");
|
].join(''), "text/html");
|
||||||
|
|
||||||
let errorEle = <HTMLElement>doc.querySelector("#llonebot-error");
|
|
||||||
errorEle.style.display = 'none';
|
|
||||||
const showError = async () => {
|
const showError = async () => {
|
||||||
setTimeout(async () => {
|
await (new Promise((res) => setTimeout(() => res(true), 1000)));
|
||||||
let errMessage = await window.llonebot.getError();
|
|
||||||
console.log(errMessage)
|
const errDom = doc.querySelector('#llonebot-error');
|
||||||
errMessage = errMessage.replace(/\n/g, '<br>')
|
const errCodeDom = errDom.querySelector('code');
|
||||||
errorEle.innerHTML = errMessage;
|
const errMsg = await window.llonebot.getError();
|
||||||
errorEle.style.display = errMessage ? 'flex' : 'none';
|
|
||||||
}, 1000)
|
if (!errMsg) return;
|
||||||
|
|
||||||
|
errDom.classList.add('show');
|
||||||
|
errCodeDom.innerHTML = errMsg;
|
||||||
}
|
}
|
||||||
showError().then()
|
showError().then();
|
||||||
|
|
||||||
// 外链按钮
|
// 外链按钮
|
||||||
doc.querySelector('#open-github').addEventListener('click', () => {
|
doc.querySelector('#open-github').addEventListener('click', () => {
|
||||||
window.LiteLoader.api.openExternal('https://github.com/LLOneBot/LLOneBot')
|
window.LiteLoader.api.openExternal('https://github.com/LLOneBot/LLOneBot')
|
||||||
@ -335,33 +333,39 @@ async function onSettingWindowCreated(view: Element) {
|
|||||||
});
|
});
|
||||||
// 更新逻辑
|
// 更新逻辑
|
||||||
async function checkVersionFunc(ResultVersion: CheckVersion) {
|
async function checkVersionFunc(ResultVersion: CheckVersion) {
|
||||||
console.log(ResultVersion);
|
const titleDom = view.querySelector<HTMLSpanElement>("#llonebot-update-title")!;
|
||||||
|
const buttonDom = view.querySelector<HTMLButtonElement>("#llonebot-update-button")!;
|
||||||
|
|
||||||
if (ResultVersion.version === "") {
|
if (ResultVersion.version === "") {
|
||||||
view.querySelector(".llonebot-update-title").innerHTML = "检查更新失败";
|
titleDom.innerHTML = "检查更新失败";
|
||||||
view.querySelector(".llonebot-update-button").innerHTML = "点击重试";
|
buttonDom.innerHTML = "点击重试";
|
||||||
view.querySelector(".llonebot-update-button").addEventListener("click", async () => {
|
|
||||||
|
buttonDom.addEventListener("click", async () => {
|
||||||
window.llonebot.checkVersion().then(checkVersionFunc);
|
window.llonebot.checkVersion().then(checkVersionFunc);
|
||||||
});
|
});
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!ResultVersion.result) {
|
if (!ResultVersion.result) {
|
||||||
view.querySelector(".llonebot-update-title").innerHTML = "当前已是最新版本 V" + ResultVersion.version;
|
titleDom.innerHTML = "当前已是最新版本 v" + ResultVersion.version;
|
||||||
view.querySelector(".llonebot-update-button").innerHTML = "无需更新";
|
buttonDom.innerHTML = "无需更新";
|
||||||
} else {
|
} else {
|
||||||
view.querySelector(".llonebot-update-title").innerHTML = "已检测到最新版本 V" + ResultVersion.version;
|
titleDom.innerHTML = "已检测到最新版本 v" + ResultVersion.version;
|
||||||
view.querySelector(".llonebot-update-button").innerHTML = "点击更新";
|
buttonDom.innerHTML = "点击更新";
|
||||||
|
buttonDom.dataset.type = 'primary';
|
||||||
|
|
||||||
const update = async () => {
|
const update = async () => {
|
||||||
view.querySelector(".llonebot-update-button").innerHTML = "正在更新中...";
|
buttonDom.innerHTML = "正在更新中...";
|
||||||
const result = await window.llonebot.updateLLOneBot();
|
const result = await window.llonebot.updateLLOneBot();
|
||||||
if (result) {
|
if (result) {
|
||||||
view.querySelector(".llonebot-update-button").innerHTML = "更新完成请重启";
|
buttonDom.innerHTML = "更新完成,请重启";
|
||||||
view.querySelector(".llonebot-update-button").removeEventListener("click", update);
|
|
||||||
} else {
|
} else {
|
||||||
view.querySelector(".llonebot-update-button").innerHTML = "更新失败前往仓库下载";
|
buttonDom.innerHTML = "更新失败,前往仓库下载";
|
||||||
view.querySelector(".llonebot-update-button").removeEventListener("click", update);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
buttonDom.removeEventListener("click", update);
|
||||||
}
|
}
|
||||||
view.querySelector(".llonebot-update-button").addEventListener("click", update);
|
buttonDom.addEventListener("click", update);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
window.llonebot.checkVersion().then(checkVersionFunc);
|
window.llonebot.checkVersion().then(checkVersionFunc);
|
||||||
@ -369,7 +373,6 @@ async function onSettingWindowCreated(view: Element) {
|
|||||||
if (JSON.stringify(ob11Config) === JSON.stringify(config.ob11)) return;
|
if (JSON.stringify(ob11Config) === JSON.stringify(config.ob11)) return;
|
||||||
config.ob11 = ob11Config;
|
config.ob11 = ob11Config;
|
||||||
window.llonebot.setConfig(true, config);
|
window.llonebot.setConfig(true, config);
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -157,9 +157,24 @@ ob-setting-select::part(option-list) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#llonebot-error {
|
#llonebot-error {
|
||||||
padding-top: 10px;
|
display: none;
|
||||||
padding-bottom: 10px;
|
|
||||||
overflow: visible;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#llonebot-error setting-panel {
|
||||||
|
background: rgba(255, 0, 0, 0.5);
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
#llonebot-error setting-panel pre {
|
||||||
|
margin: 0;
|
||||||
|
padding: 16px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
#llonebot-error setting-panel pre code {
|
||||||
|
font-family: 'FiraCode Nerd Font', 'Fira Code', 'Cascadia Code', Consolas, 'Courier New', monospace;
|
||||||
|
}
|
||||||
|
|
||||||
|
#llonebot-error.show {
|
||||||
|
display: block;
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user