mirror of
https://github.com/NapNeko/NapCatQQ.git
synced 2025-07-19 12:03:37 +00:00
refactor: react webui
This commit is contained in:
@@ -7,4 +7,10 @@ ipcMain.handle('napcat_get_webtoken', async (event, arg) => {
|
||||
});
|
||||
ipcMain.on('open_external_url', (event, url) => {
|
||||
shell.openExternal(url);
|
||||
});
|
||||
ipcMain.handle('napcat_get_reactweb', async (event, arg) => {
|
||||
let url = new URL(await napcat.NCgetWebUiUrl());
|
||||
let port = url.port;
|
||||
let token = url.searchParams.get('token');
|
||||
return `https://napcat.152710.xyz/web_login?back=http://127.0.0.1:${port}&token=${token}`;
|
||||
});
|
@@ -5,6 +5,9 @@ const napcat = {
|
||||
},
|
||||
openExternalUrl: async (url) => {
|
||||
ipcRenderer.send('open_external_url', url);
|
||||
},
|
||||
getWebUiUrlReact: async () => {
|
||||
return ipcRenderer.invoke('napcat_get_reactweb');
|
||||
}
|
||||
};
|
||||
// 在window对象下导出只读对象
|
||||
|
@@ -1,12 +1,16 @@
|
||||
export const onSettingWindowCreated = async (view) => {
|
||||
let webui = await window.napcat.getWebUiUrl();
|
||||
let webuiReact = await window.napcat.getWebUiUrlReact();
|
||||
view.innerHTML = `
|
||||
<setting-section data-title="">
|
||||
<setting-panel>
|
||||
<setting-list data-direction="column">
|
||||
<setting-item>
|
||||
<setting-button data-type="primary" class="nc_openwebui">在QQ内打开配置页面</setting-button>
|
||||
<setting-button data-type="primary" class="nc_openwebui_ex">在默认浏览器打开配置页面</setting-button>
|
||||
<setting-button data-type="primary" class="nc_openwebui">在QQ内打开配置页面(VUE)</setting-button>
|
||||
<setting-button data-type="primary" class="nc_openwebui_ex">在默认浏览器打开配置页面(VUE)</setting-button>
|
||||
</setting-item>
|
||||
<setting-item>
|
||||
<setting-button data-type="primary" class="nc_openwebui_ex_react">在默认浏览器打开配置页面(React)</setting-button>
|
||||
</setting-item>
|
||||
<setting-item>
|
||||
<div>
|
||||
@@ -18,12 +22,18 @@ export const onSettingWindowCreated = async (view) => {
|
||||
</setting-panel>
|
||||
</setting-section>
|
||||
`;
|
||||
|
||||
view.querySelector('.nc_openwebui').addEventListener('click', () => {
|
||||
window.open(webui, '_blank');
|
||||
});
|
||||
view.querySelector('.nc_openwebui_ex').addEventListener('click', () => {
|
||||
window.napcat.openExternalUrl(webui);
|
||||
});
|
||||
|
||||
view.querySelector('.nc_openwebui_ex_react').addEventListener('click', () => {
|
||||
window.napcat.openExternalUrl(webuiReact);
|
||||
});
|
||||
|
||||
view.querySelector('.nc_webui').innerText = webui;
|
||||
|
||||
// 添加点击复制功能
|
||||
|
@@ -69,7 +69,9 @@ export async function InitWebUi(logger: LogWrapper, pathWrapper: NapCatPathWrapp
|
||||
logger.log(`[NapCat] [WebUi] Current WebUi is running at http://${config.host}:${config.port}${config.prefix}`);
|
||||
logger.log(`[NapCat] [WebUi] Login Token is ${config.token}`);
|
||||
logger.log(`[NapCat] [WebUi] WebUi User Panel Url: ${createUrl(config.host, port, path, searchParams)}`);
|
||||
logger.log(`[NapCat] [WebUi] WebUi Local Panel Url: https://napcat.152710.xyz/web_login?back=http://${config.host}:${config.port}${config.prefix}&token=${config.token}`);
|
||||
logger.log(`[NapCat] [WebUi] WebUi Local Panel Url: ${createUrl('127.0.0.1', port, path, searchParams)}`);
|
||||
logger.log(`[NapCat] [WebUi] WebUi User Panel Url: https://napcat.152710.xyz/web_login?back=http://127.0.0.1:${config.port}${config.prefix}&token=${config.token}`);
|
||||
|
||||
// 获取公网地址
|
||||
try {
|
||||
|
Reference in New Issue
Block a user