修复管理页面错误

This commit is contained in:
snltty
2024-08-30 14:31:21 +08:00
parent 85274cc6c6
commit 51244fe4d8
23 changed files with 98 additions and 53 deletions

View File

@@ -33,11 +33,11 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.ACTIONS_TOKEN }}
with:
tag_name: v1.2.7
release_name: v1.2.7.${{ steps.date.outputs.today }}
tag_name: v1.2.8
release_name: v1.2.8.${{ steps.date.outputs.today }}
draft: false
prerelease: false
body: "1. 修复BUG打洞导致的网卡读取数据堵塞表现为连接失败\r\n2. windows路由工具单独下载\r\n3. 修复配置信息同步错误\r\n4. 新增简单管理页面\r\n5. 修复域名解析失败的问题"
body: "1. 修复管理页面数据表格绑定错误,导致的信息显示错误\r\n2. 将程序分发给他人进行组网时可删除web文件夹让其仅能使用简单管理页面管理自身"
- name: upload-win-x86-oss
id: upload-win-x86-oss
uses: tvrcgo/oss-action@v0.1.1
@@ -47,7 +47,7 @@ jobs:
key-secret: ${{ secrets.ALIYUN_OSS_SECRET }}
bucket: ide-qbcode
asset-path: ./public/publish-zip/linker-win-x86.zip
target-path: /downloads/linker/v1.2.7/linker-win-x86.zip
target-path: /downloads/linker/v1.2.8/linker-win-x86.zip
- name: upload-win-x86
id: upload-win-x86
uses: actions/upload-release-asset@master
@@ -67,7 +67,7 @@ jobs:
key-secret: ${{ secrets.ALIYUN_OSS_SECRET }}
bucket: ide-qbcode
asset-path: ./public/publish-zip/linker-win-x64.zip
target-path: /downloads/linker/v1.2.7/linker-win-x64.zip
target-path: /downloads/linker/v1.2.8/linker-win-x64.zip
- name: upload-win-x64
id: upload-win-x64
uses: actions/upload-release-asset@master
@@ -87,7 +87,7 @@ jobs:
key-secret: ${{ secrets.ALIYUN_OSS_SECRET }}
bucket: ide-qbcode
asset-path: ./public/publish-zip/linker-win-arm64.zip
target-path: /downloads/linker/v1.2.7/linker-win-arm64.zip
target-path: /downloads/linker/v1.2.8/linker-win-arm64.zip
- name: upload-win-arm64
id: upload-win-arm64
uses: actions/upload-release-asset@master
@@ -107,7 +107,7 @@ jobs:
key-secret: ${{ secrets.ALIYUN_OSS_SECRET }}
bucket: ide-qbcode
asset-path: ./public/publish-zip/linker-linux-x64.zip
target-path: /downloads/linker/v1.2.7/linker-linux-x64.zip
target-path: /downloads/linker/v1.2.8/linker-linux-x64.zip
- name: upload-linux-x64
id: upload-linux-x64
uses: actions/upload-release-asset@master
@@ -127,7 +127,7 @@ jobs:
key-secret: ${{ secrets.ALIYUN_OSS_SECRET }}
bucket: ide-qbcode
asset-path: ./public/publish-zip/linker-linux-arm.zip
target-path: /downloads/linker/v1.2.7/linker-linux-arm.zip
target-path: /downloads/linker/v1.2.8/linker-linux-arm.zip
- name: upload-linux-arm
id: upload-linux-arm
uses: actions/upload-release-asset@master
@@ -147,7 +147,7 @@ jobs:
key-secret: ${{ secrets.ALIYUN_OSS_SECRET }}
bucket: ide-qbcode
asset-path: ./public/publish-zip/linker-linux-arm64.zip
target-path: /downloads/linker/v1.2.7/linker-linux-arm64.zip
target-path: /downloads/linker/v1.2.8/linker-linux-arm64.zip
- name: upload-linux-arm64
id: upload-linux-arm64
uses: actions/upload-release-asset@master
@@ -167,7 +167,7 @@ jobs:
key-secret: ${{ secrets.ALIYUN_OSS_SECRET }}
bucket: ide-qbcode
asset-path: ./public/publish-zip/linker-linux-musl-x64.zip
target-path: /downloads/linker/v1.2.7/linker-linux-musl-x64.zip
target-path: /downloads/linker/v1.2.8/linker-linux-musl-x64.zip
- name: upload-linux-musl-x64
id: upload-linux-musl-x64
uses: actions/upload-release-asset@master
@@ -187,7 +187,7 @@ jobs:
key-secret: ${{ secrets.ALIYUN_OSS_SECRET }}
bucket: ide-qbcode
asset-path: ./public/publish-zip/linker-linux-musl-arm.zip
target-path: /downloads/linker/v1.2.7/linker-linux-musl-arm.zip
target-path: /downloads/linker/v1.2.8/linker-linux-musl-arm.zip
- name: upload-linux-musl-arm
id: upload-linux-musl-arm
uses: actions/upload-release-asset@master
@@ -207,7 +207,7 @@ jobs:
key-secret: ${{ secrets.ALIYUN_OSS_SECRET }}
bucket: ide-qbcode
asset-path: ./public/publish-zip/linker-linux-musl-arm64.zip
target-path: /downloads/linker/v1.2.7/linker-linux-musl-arm64.zip
target-path: /downloads/linker/v1.2.8/linker-linux-musl-arm64.zip
- name: upload-linux-musl-arm64
id: upload-linux-musl-arm64
uses: actions/upload-release-asset@master
@@ -227,7 +227,7 @@ jobs:
key-secret: ${{ secrets.ALIYUN_OSS_SECRET }}
bucket: ide-qbcode
asset-path: ./public/publish-zip/linker-osx-x64.zip
target-path: /downloads/linker/v1.2.7/linker-osx-x64.zip
target-path: /downloads/linker/v1.2.8/linker-osx-x64.zip
- name: upload-osx-x64
id: upload-osx-x64
uses: actions/upload-release-asset@master
@@ -247,7 +247,7 @@ jobs:
key-secret: ${{ secrets.ALIYUN_OSS_SECRET }}
bucket: ide-qbcode
asset-path: ./public/publish-zip/linker-osx-arm64.zip
target-path: /downloads/linker/v1.2.7/linker-osx-arm64.zip
target-path: /downloads/linker/v1.2.8/linker-osx-arm64.zip
- name: upload-osx-arm64
id: upload-osx-arm64
uses: actions/upload-release-asset@master
@@ -277,7 +277,7 @@ jobs:
key-secret: ${{ secrets.ALIYUN_OSS_SECRET }}
bucket: ide-qbcode
asset-path: ./public/publish-zip/linker-windows-route.zip
target-path: /downloads/linker/v1.2.7/linker-windows-route.zip
target-path: /downloads/linker/v1.2.8/linker-windows-route.zip
- name: upload-windows-route
id: upload-windows-route
uses: actions/upload-release-asset@master

View File

@@ -14,9 +14,9 @@
<Copyright>snltty</Copyright>
<PackageProjectUrl>https://github.com/snltty/linker</PackageProjectUrl>
<RepositoryUrl>https://github.com/snltty/linker</RepositoryUrl>
<Version>1.2.7</Version>
<AssemblyVersion>1.2.7</AssemblyVersion>
<FileVersion>1.2.7</FileVersion>
<Version>1.2.8</Version>
<AssemblyVersion>1.2.8</AssemblyVersion>
<FileVersion>1.2.8</FileVersion>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
<DebugType>full</DebugType>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<project ver="10" name="linker.tray.win" libEmbed="true" icon="..\linker\favicon.ico" ui="win" output="linker.tray.win.exe" CompanyName="snltty" FileDescription="linker.tray.win" LegalCopyright="Copyright (C) snltty 2024" ProductName="linker.tray.win" InternalName="linker.install.win" FileVersion="0.0.0.72" ProductVersion="0.0.0.72" publishDir="/dist/" dstrip="false" local="false" ignored="false">
<project ver="10" name="linker.tray.win" libEmbed="true" icon="..\linker\favicon.ico" ui="win" output="linker.tray.win.exe" CompanyName="snltty" FileDescription="linker.tray.win" LegalCopyright="Copyright (C) snltty 2024" ProductName="linker.tray.win" InternalName="linker.install.win" FileVersion="0.0.0.80" ProductVersion="0.0.0.80" publishDir="/dist/" dstrip="false" local="false" ignored="false">
<file name="main.aardio" path="main.aardio" comment="main.aardio"/>
<folder name="资源文件" path="res" embed="true" local="false" ignored="false">
<file name="favicon.ico" path="res\favicon.ico" comment="res\favicon.ico"/>
@@ -9,4 +9,47 @@
<file name="net.aardio" path="net.aardio" comment="net.aardio"/>
<file name="full.aardio" path="full.aardio" comment="full.aardio"/>
</folder>
<folder name="web" path="web" comment="web" local="true" embed="true" ignored="false">
<file name="alpine.svg" path="web\alpine.svg" comment="web\alpine.svg"/>
<file name="android.svg" path="web\android.svg" comment="web\android.svg"/>
<file name="centos.svg" path="web\centos.svg" comment="web\centos.svg"/>
<file name="debian.svg" path="web\debian.svg" comment="web\debian.svg"/>
<file name="docker.svg" path="web\docker.svg" comment="web\docker.svg"/>
<file name="favicon.ico" path="web\favicon.ico" comment="web\favicon.ico"/>
<file name="favicon1.ico" path="web\favicon1.ico" comment="web\favicon1.ico"/>
<file name="index.html" path="web\index.html" comment="web\index.html"/>
<file name="ios.svg" path="web\ios.svg" comment="web\ios.svg"/>
<file name="linux.svg" path="web\linux.svg" comment="web\linux.svg"/>
<file name="logo.png" path="web\logo.png" comment="web\logo.png"/>
<file name="logo1.png" path="web\logo1.png" comment="web\logo1.png"/>
<file name="rocky.svg" path="web\rocky.svg" comment="web\rocky.svg"/>
<file name="system.svg" path="web\system.svg" comment="web\system.svg"/>
<file name="ubuntu.svg" path="web\ubuntu.svg" comment="web\ubuntu.svg"/>
<file name="windows.svg" path="web\windows.svg" comment="web\windows.svg"/>
<file name="细胞.png" path="web\细胞.png" comment="web\细胞.png"/>
<file name="细胞1.png" path="web\细胞1.png" comment="web\细胞1.png"/>
<folder name="css" path="web\css" comment="web\css">
<file name="161.1904d0c1.css" path="web\css\161.1904d0c1.css" comment="web\css\161.1904d0c1.css"/>
<file name="193.8536a4ec.css" path="web\css\193.8536a4ec.css" comment="web\css\193.8536a4ec.css"/>
<file name="295.0d822e3c.css" path="web\css\295.0d822e3c.css" comment="web\css\295.0d822e3c.css"/>
<file name="603.93ce4b66.css" path="web\css\603.93ce4b66.css" comment="web\css\603.93ce4b66.css"/>
<file name="904.54641a6b.css" path="web\css\904.54641a6b.css" comment="web\css\904.54641a6b.css"/>
<file name="app.0f5db304.css" path="web\css\app.0f5db304.css" comment="web\css\app.0f5db304.css"/>
<file name="chunk-vendors.d8267b33.css" path="web\css\chunk-vendors.d8267b33.css" comment="web\css\chunk-vendors.d8267b33.css"/>
</folder>
<folder name="img" path="web\img" comment="web\img">
<file name="logo.892cb2fb.png" path="web\img\logo.892cb2fb.png" comment="web\img\logo.892cb2fb.png"/>
</folder>
<folder name="js" path="web\js" comment="web\js">
<file name="161.19dd185b.js" path="web\js\161.19dd185b.js" comment="web\js\161.19dd185b.js"/>
<file name="193.41d776e6.js" path="web\js\193.41d776e6.js" comment="web\js\193.41d776e6.js"/>
<file name="295.b146a038.js" path="web\js\295.b146a038.js" comment="web\js\295.b146a038.js"/>
<file name="370.0a2511bc.js" path="web\js\370.0a2511bc.js" comment="web\js\370.0a2511bc.js"/>
<file name="422.5c525d61.js" path="web\js\422.5c525d61.js" comment="web\js\422.5c525d61.js"/>
<file name="603.2a1eab70.js" path="web\js\603.2a1eab70.js" comment="web\js\603.2a1eab70.js"/>
<file name="904.a5d7ab42.js" path="web\js\904.a5d7ab42.js" comment="web\js\904.a5d7ab42.js"/>
<file name="app.842662e0.js" path="web\js\app.842662e0.js" comment="web\js\app.842662e0.js"/>
<file name="chunk-vendors.710dc716.js" path="web\js\chunk-vendors.710dc716.js" comment="web\js\chunk-vendors.710dc716.js"/>
</folder>
</folder>
</project>

Binary file not shown.

View File

@@ -247,8 +247,14 @@ mainForm.btnWebNet.oncommand = function(id,event){
netFrm.show();
}
mainForm.btnWebFull.oncommand = function(id,event){
var fullFrm = mainForm.loadForm("/full.aardio");
fullFrm.show();
import fsys;
if(io.exist("./web/index.html"))
{
var fullFrm = mainForm.loadForm("/full.aardio");
fullFrm.show();
}else{
win.msgbox("不存在",null,null,mainForm.hwnd,1000);
}
}
mainForm.checkService();

View File

@@ -1 +1 @@
.dropdown[data-v-435a8a16]{border:1px solid #ddd;padding:.4rem;font-size:1.3rem;border-radius:.4rem;position:relative}.dropdown .el-icon[data-v-435a8a16]{vertical-align:middle}.dropdown .badge[data-v-435a8a16]{position:absolute;right:-1rem;top:-50%;border-radius:10px;background-color:#f1ae05;color:#fff;padding:.2rem .6rem;font-size:1.2rem}a[data-v-78e781fb]{color:#666;text-decoration:underline}a.green[data-v-78e781fb]{color:green;font-weight:700}a.download[data-v-78e781fb]{margin-left:.6rem}a.download .el-icon[data-v-78e781fb]{vertical-align:middle;font-weight:700;margin-left:.3rem}a.download .el-icon.loading[data-v-78e781fb]{animation:loading-78e781fb 1s linear infinite}@keyframes loading-78e781fb{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a[data-v-2b2bf7e2]{color:#666;text-decoration:underline}a.green[data-v-2b2bf7e2]{color:green;font-weight:700}img.system[data-v-2b2bf7e2]{height:1.6rem;vertical-align:middle;margin-right:.4rem}.ipaddress span[data-v-e7fa483e]{vertical-align:middle}.el-input[data-v-e7fa483e]{width:15rem;margin-right:.6rem}.el-icon.loading[data-v-c09e38f6],a.loading[data-v-c09e38f6]{vertical-align:middle;font-weight:700;animation:loading-c09e38f6 1s linear infinite}.el-switch.is-disabled[data-v-c09e38f6]{opacity:1}.el-input[data-v-c09e38f6]{width:8rem}.gateway[data-v-c09e38f6]{background:linear-gradient(90deg,#c5b260,#858585,#c5b260,#858585);-webkit-background-clip:text;-webkit-text-fill-color:hsla(0,0%,100%,0)}.gateway.green[data-v-c09e38f6]{background:linear-gradient(90deg,#e4bb10,green,#e4bb10,green);-webkit-background-clip:text;-webkit-text-fill-color:hsla(0,0%,100%,0)}.delay[data-v-c09e38f6]{position:absolute;right:0;bottom:0;line-height:normal}.switch-btn[data-v-c09e38f6]{font-size:1.5rem}@keyframes loading-c09e38f6{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.el-switch.is-disabled[data-v-22dd5fdf]{opacity:1}.upgrade-wrap[data-v-22dd5fdf]{border:1px solid #ddd;margin-bottom:2rem;padding:0 0 1rem 0}.el-switch.is-disabled[data-v-c257d30c]{opacity:1}.green[data-v-c257d30c]{font-weight:700}.el-switch.is-disabled[data-v-98329976]{opacity:1}a[data-v-36ba4048]{text-decoration:underline;font-weight:700}.head[data-v-2c1a8404]{padding-bottom:1rem}.green[data-v-2c1a8404]{color:green;font-weight:700}.error[data-v-2c1a8404]{font-weight:700}.error .el-icon[data-v-2c1a8404]{vertical-align:text-bottom}.el-select[data-v-3a13c86f]{width:12rem}.head[data-v-3a13c86f]{padding-bottom:1rem}.foot[data-v-3a13c86f]{padding-top:1rem}.page-wrap[data-v-3a13c86f]{display:inline-block}.head[data-v-5e37381c]{padding-bottom:1rem}.error[data-v-5e37381c]{font-weight:700}.error .el-icon[data-v-5e37381c]{vertical-align:text-bottom}.el-select[data-v-5512121a]{width:12rem}.head[data-v-5512121a]{padding-bottom:1rem}.foot[data-v-5512121a]{padding-top:1rem}.page-wrap[data-v-5512121a]{display:inline-block}.head[data-v-4760aa5d]{padding-bottom:1rem}.table-sort.el-table th.el-table__cell.is-leaf{border-bottom:0}.table-sort.el-table .el-table__inner-wrapper:before{height:0}.table-sort th[data-v-6aa4e468]{border-bottom:0}.home-list-wrap[data-v-6aa4e468]{padding:1rem}.home-list-wrap .page[data-v-6aa4e468]{padding-top:1rem}.home-list-wrap .page-wrap[data-v-6aa4e468]{display:inline-block}
.dropdown[data-v-435a8a16]{border:1px solid #ddd;padding:.4rem;font-size:1.3rem;border-radius:.4rem;position:relative}.dropdown .el-icon[data-v-435a8a16]{vertical-align:middle}.dropdown .badge[data-v-435a8a16]{position:absolute;right:-1rem;top:-50%;border-radius:10px;background-color:#f1ae05;color:#fff;padding:.2rem .6rem;font-size:1.2rem}a[data-v-260a68e5]{color:#666;text-decoration:underline}a.green[data-v-260a68e5]{color:green;font-weight:700}a.download[data-v-260a68e5]{margin-left:.6rem}a.download .el-icon[data-v-260a68e5]{vertical-align:middle;font-weight:700;margin-left:.3rem}a.download .el-icon.loading[data-v-260a68e5]{animation:loading-260a68e5 1s linear infinite}@keyframes loading-260a68e5{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a[data-v-43ee8088]{color:#666;text-decoration:underline}a.green[data-v-43ee8088]{color:green;font-weight:700}img.system[data-v-43ee8088]{height:1.6rem;vertical-align:middle;margin-right:.4rem}.ipaddress span[data-v-e7fa483e]{vertical-align:middle}.el-input[data-v-e7fa483e]{width:15rem;margin-right:.6rem}.el-icon.loading[data-v-4aa9109b],a.loading[data-v-4aa9109b]{vertical-align:middle;font-weight:700;animation:loading-4aa9109b 1s linear infinite}.el-switch.is-disabled[data-v-4aa9109b]{opacity:1}.el-input[data-v-4aa9109b]{width:8rem}.gateway[data-v-4aa9109b]{background:linear-gradient(90deg,#c5b260,#858585,#c5b260,#858585);-webkit-background-clip:text;-webkit-text-fill-color:hsla(0,0%,100%,0)}.gateway.green[data-v-4aa9109b]{background:linear-gradient(90deg,#e4bb10,green,#e4bb10,green);-webkit-background-clip:text;-webkit-text-fill-color:hsla(0,0%,100%,0)}.delay[data-v-4aa9109b]{position:absolute;right:0;bottom:0;line-height:normal}.switch-btn[data-v-4aa9109b]{font-size:1.5rem}@keyframes loading-4aa9109b{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.el-switch.is-disabled[data-v-22dd5fdf]{opacity:1}.upgrade-wrap[data-v-22dd5fdf]{border:1px solid #ddd;margin-bottom:2rem;padding:0 0 1rem 0}.el-switch.is-disabled[data-v-c257d30c]{opacity:1}.green[data-v-c257d30c]{font-weight:700}.el-switch.is-disabled[data-v-98329976]{opacity:1}a[data-v-36ba4048]{text-decoration:underline;font-weight:700}.head[data-v-2c1a8404]{padding-bottom:1rem}.green[data-v-2c1a8404]{color:green;font-weight:700}.error[data-v-2c1a8404]{font-weight:700}.error .el-icon[data-v-2c1a8404]{vertical-align:text-bottom}.el-select[data-v-3a13c86f]{width:12rem}.head[data-v-3a13c86f]{padding-bottom:1rem}.foot[data-v-3a13c86f]{padding-top:1rem}.page-wrap[data-v-3a13c86f]{display:inline-block}.head[data-v-5e37381c]{padding-bottom:1rem}.error[data-v-5e37381c]{font-weight:700}.error .el-icon[data-v-5e37381c]{vertical-align:text-bottom}.el-select[data-v-5512121a]{width:12rem}.head[data-v-5512121a]{padding-bottom:1rem}.foot[data-v-5512121a]{padding-top:1rem}.page-wrap[data-v-5512121a]{display:inline-block}.head[data-v-4760aa5d]{padding-bottom:1rem}.table-sort.el-table th.el-table__cell.is-leaf{border-bottom:0}.table-sort.el-table .el-table__inner-wrapper:before{height:0}.table-sort th[data-v-6aa4e468]{border-bottom:0}.home-list-wrap[data-v-6aa4e468]{padding:1rem}.home-list-wrap .page[data-v-6aa4e468]{padding-top:1rem}.home-list-wrap .page-wrap[data-v-6aa4e468]{display:inline-block}

View File

@@ -1 +1 @@
.head-wrap[data-v-85710086]{background-color:#fff;padding:1rem;border-bottom:1px solid #ddd;box-shadow:1px 2px 3px rgba(0,0,0,.05);font-size:1.4rem}.head-wrap span.label[data-v-85710086]{line-height:2.4rem;margin-right:.6rem;color:#555}a[data-v-78e781fb]{color:#666;text-decoration:underline}a.green[data-v-78e781fb]{color:green;font-weight:700}a.download[data-v-78e781fb]{margin-left:.6rem}a.download .el-icon[data-v-78e781fb]{vertical-align:middle;font-weight:700;margin-left:.3rem}a.download .el-icon.loading[data-v-78e781fb]{animation:loading-78e781fb 1s linear infinite}@keyframes loading-78e781fb{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a[data-v-2b2bf7e2]{color:#666;text-decoration:underline}a.green[data-v-2b2bf7e2]{color:green;font-weight:700}img.system[data-v-2b2bf7e2]{height:1.6rem;vertical-align:middle;margin-right:.4rem}.el-icon.loading[data-v-c09e38f6],a.loading[data-v-c09e38f6]{vertical-align:middle;font-weight:700;animation:loading-c09e38f6 1s linear infinite}.el-switch.is-disabled[data-v-c09e38f6]{opacity:1}.el-input[data-v-c09e38f6]{width:8rem}.gateway[data-v-c09e38f6]{background:linear-gradient(90deg,#c5b260,#858585,#c5b260,#858585);-webkit-background-clip:text;-webkit-text-fill-color:hsla(0,0%,100%,0)}.gateway.green[data-v-c09e38f6]{background:linear-gradient(90deg,#e4bb10,green,#e4bb10,green);-webkit-background-clip:text;-webkit-text-fill-color:hsla(0,0%,100%,0)}.delay[data-v-c09e38f6]{position:absolute;right:0;bottom:0;line-height:normal}.switch-btn[data-v-c09e38f6]{font-size:1.5rem}@keyframes loading-c09e38f6{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.el-switch.is-disabled[data-v-9e9e60a4]{opacity:1}.upgrade-wrap[data-v-9e9e60a4]{border:1px solid #ddd;margin-bottom:2rem;padding:0 0 1rem 0}.net-list-wrap ul[data-v-09f507a4]{padding:2rem 2rem 1rem 2rem}.net-list-wrap ul li[data-v-09f507a4]{margin-bottom:1rem;border:1px solid #ddd;background-color:#fff;font-size:1.3rem;border-radius:.4rem}.net-list-wrap ul li dt[data-v-09f507a4]{padding:.6rem;border-bottom:1px solid #ddd}.net-list-wrap ul li dd.tuntap[data-v-09f507a4]{padding:1rem;position:relative}.net-list-wrap .page[data-v-09f507a4]{padding:.6rem 0;border-top:1px solid #ddd;background-color:#f5f5f5;box-shadow:-1px -2px 3px rgba(0,0,0,.05)}.net-list-wrap .page-wrap[data-v-09f507a4]{display:inline-block}.status-api-wrap[data-v-86c4bd96]{padding-right:2rem}.status-api-wrap a[data-v-86c4bd96]{color:#333}.status-api-wrap span[data-v-86c4bd96]{border-radius:1rem;background-color:rgba(0,0,0,.1);padding:0 .6rem;margin-left:.2rem}.status-api-wrap.connected a[data-v-86c4bd96]{color:green;font-weight:700}.status-api-wrap.connected span[data-v-86c4bd96]{background-color:green;color:#fff}.status-api-wrap .el-icon[data-v-86c4bd96]{vertical-align:text-top}.status-server-wrap[data-v-d4c02b68]{padding-right:.5rem}.status-server-wrap a[data-v-d4c02b68]{color:#333}.status-server-wrap a+a[data-v-d4c02b68]{margin-left:.6rem}.status-server-wrap.connected a[data-v-d4c02b68]{color:green;font-weight:700}.status-server-wrap .el-icon[data-v-d4c02b68]{vertical-align:text-bottom}.status-server-wrap a.download .el-icon[data-v-d4c02b68]{font-weight:700;margin-left:.3rem}.status-server-wrap a.download .el-icon.loading[data-v-d4c02b68]{animation:loading-d4c02b68 1s linear infinite}@keyframes loading-d4c02b68{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.status-wrap[data-v-1c2e083d]{border-top:1px solid #ddd;background-color:#f5f5f5;height:3rem;line-height:3rem;font-size:1.2rem;color:#555}.status-wrap .copy[data-v-1c2e083d]{padding-left:.5rem}.status-wrap .copy a[data-v-1c2e083d]{color:#555}.status-wrap a.download[data-v-1c2e083d]{margin-left:.6rem}.status-wrap a.download .el-icon[data-v-1c2e083d]{vertical-align:text-bottom;font-weight:700;margin-left:.3rem}.status-wrap a.download .el-icon.loading[data-v-1c2e083d]{animation:loading 1s linear infinite}.net-wrap[data-v-fae0ef60]{box-sizing:border-box;background-color:#fafafa;width:100%;max-width:39rem;height:100%;position:absolute;left:50%;top:50%;transform:translateX(-50%) translateY(-50%)}
.head-wrap[data-v-85710086]{background-color:#fff;padding:1rem;border-bottom:1px solid #ddd;box-shadow:1px 2px 3px rgba(0,0,0,.05);font-size:1.4rem}.head-wrap span.label[data-v-85710086]{line-height:2.4rem;margin-right:.6rem;color:#555}a[data-v-260a68e5]{color:#666;text-decoration:underline}a.green[data-v-260a68e5]{color:green;font-weight:700}a.download[data-v-260a68e5]{margin-left:.6rem}a.download .el-icon[data-v-260a68e5]{vertical-align:middle;font-weight:700;margin-left:.3rem}a.download .el-icon.loading[data-v-260a68e5]{animation:loading-260a68e5 1s linear infinite}@keyframes loading-260a68e5{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a[data-v-43ee8088]{color:#666;text-decoration:underline}a.green[data-v-43ee8088]{color:green;font-weight:700}img.system[data-v-43ee8088]{height:1.6rem;vertical-align:middle;margin-right:.4rem}.el-icon.loading[data-v-4aa9109b],a.loading[data-v-4aa9109b]{vertical-align:middle;font-weight:700;animation:loading-4aa9109b 1s linear infinite}.el-switch.is-disabled[data-v-4aa9109b]{opacity:1}.el-input[data-v-4aa9109b]{width:8rem}.gateway[data-v-4aa9109b]{background:linear-gradient(90deg,#c5b260,#858585,#c5b260,#858585);-webkit-background-clip:text;-webkit-text-fill-color:hsla(0,0%,100%,0)}.gateway.green[data-v-4aa9109b]{background:linear-gradient(90deg,#e4bb10,green,#e4bb10,green);-webkit-background-clip:text;-webkit-text-fill-color:hsla(0,0%,100%,0)}.delay[data-v-4aa9109b]{position:absolute;right:0;bottom:0;line-height:normal}.switch-btn[data-v-4aa9109b]{font-size:1.5rem}@keyframes loading-4aa9109b{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.el-switch.is-disabled[data-v-9e9e60a4]{opacity:1}.upgrade-wrap[data-v-9e9e60a4]{border:1px solid #ddd;margin-bottom:2rem;padding:0 0 1rem 0}.net-list-wrap ul[data-v-09f507a4]{padding:2rem 2rem 1rem 2rem}.net-list-wrap ul li[data-v-09f507a4]{margin-bottom:1rem;border:1px solid #ddd;background-color:#fff;font-size:1.3rem;border-radius:.4rem}.net-list-wrap ul li dt[data-v-09f507a4]{padding:.6rem;border-bottom:1px solid #ddd}.net-list-wrap ul li dd.tuntap[data-v-09f507a4]{padding:1rem;position:relative}.net-list-wrap .page[data-v-09f507a4]{padding:.6rem 0;border-top:1px solid #ddd;background-color:#f5f5f5;box-shadow:-1px -2px 3px rgba(0,0,0,.05)}.net-list-wrap .page-wrap[data-v-09f507a4]{display:inline-block}.status-api-wrap[data-v-86c4bd96]{padding-right:2rem}.status-api-wrap a[data-v-86c4bd96]{color:#333}.status-api-wrap span[data-v-86c4bd96]{border-radius:1rem;background-color:rgba(0,0,0,.1);padding:0 .6rem;margin-left:.2rem}.status-api-wrap.connected a[data-v-86c4bd96]{color:green;font-weight:700}.status-api-wrap.connected span[data-v-86c4bd96]{background-color:green;color:#fff}.status-api-wrap .el-icon[data-v-86c4bd96]{vertical-align:text-top}.status-server-wrap[data-v-d4c02b68]{padding-right:.5rem}.status-server-wrap a[data-v-d4c02b68]{color:#333}.status-server-wrap a+a[data-v-d4c02b68]{margin-left:.6rem}.status-server-wrap.connected a[data-v-d4c02b68]{color:green;font-weight:700}.status-server-wrap .el-icon[data-v-d4c02b68]{vertical-align:text-bottom}.status-server-wrap a.download .el-icon[data-v-d4c02b68]{font-weight:700;margin-left:.3rem}.status-server-wrap a.download .el-icon.loading[data-v-d4c02b68]{animation:loading-d4c02b68 1s linear infinite}@keyframes loading-d4c02b68{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.status-wrap[data-v-1c2e083d]{border-top:1px solid #ddd;background-color:#f5f5f5;height:3rem;line-height:3rem;font-size:1.2rem;color:#555}.status-wrap .copy[data-v-1c2e083d]{padding-left:.5rem}.status-wrap .copy a[data-v-1c2e083d]{color:#555}.status-wrap a.download[data-v-1c2e083d]{margin-left:.6rem}.status-wrap a.download .el-icon[data-v-1c2e083d]{vertical-align:text-bottom;font-weight:700;margin-left:.3rem}.status-wrap a.download .el-icon.loading[data-v-1c2e083d]{animation:loading 1s linear infinite}.net-wrap[data-v-fae0ef60]{box-sizing:border-box;background-color:#fafafa;width:100%;max-width:39rem;height:100%;position:absolute;left:50%;top:50%;transform:translateX(-50%) translateY(-50%)}

View File

@@ -1 +1 @@
<!doctype html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="favicon.ico"><title>linker.web</title><script defer="defer" src="js/chunk-vendors.710dc716.js"></script><script defer="defer" src="js/app.4fbc876f.js"></script><link href="css/chunk-vendors.d8267b33.css" rel="stylesheet"><link href="css/app.0f5db304.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but linker.web doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>
<!doctype html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="favicon.ico"><title>linker.web</title><script defer="defer" src="js/chunk-vendors.710dc716.js"></script><script defer="defer" src="js/app.39912eca.js"></script><link href="css/chunk-vendors.d8267b33.css" rel="stylesheet"><link href="css/app.0f5db304.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but linker.web doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -9,7 +9,7 @@
<JsonSerializerIsReflectionEnabledByDefault>true</JsonSerializerIsReflectionEnabledByDefault>
<EnablePreviewFeatures>true</EnablePreviewFeatures>
<Title>linker tun</Title>
<Version>1.2.7</Version>
<Version>1.2.8</Version>
<Authors>snltty</Authors>
<Company>snltty</Company>
<Description>linker tun</Description>
@@ -17,8 +17,8 @@
<PackageProjectUrl>https://github.com/snltty/linker</PackageProjectUrl>
<RepositoryUrl>https://github.com/snltty/linker</RepositoryUrl>
<PackageReleaseNotes>linker tun</PackageReleaseNotes>
<AssemblyVersion>1.2.7</AssemblyVersion>
<FileVersion>1.2.7</FileVersion>
<AssemblyVersion>1.2.8</AssemblyVersion>
<FileVersion>1.2.8</FileVersion>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">

View File

@@ -9,7 +9,7 @@
<JsonSerializerIsReflectionEnabledByDefault>true</JsonSerializerIsReflectionEnabledByDefault>
<EnablePreviewFeatures>true</EnablePreviewFeatures>
<Title>linker tunnel</Title>
<Version>1.2.7</Version>
<Version>1.2.8</Version>
<Authors>snltty</Authors>
<Company>snltty</Company>
<Description>linker tunnel</Description>
@@ -17,8 +17,8 @@
<PackageProjectUrl>https://github.com/snltty/linker</PackageProjectUrl>
<RepositoryUrl>https://github.com/snltty/linker</RepositoryUrl>
<PackageReleaseNotes>linker tunnel</PackageReleaseNotes>
<AssemblyVersion>1.2.7</AssemblyVersion>
<FileVersion>1.2.7</FileVersion>
<AssemblyVersion>1.2.8</AssemblyVersion>
<FileVersion>1.2.8</FileVersion>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">

View File

@@ -9,6 +9,7 @@
</template>
<a href="javascript:;" @click="handleEdit" title="此客户端的设备名" :class="{green:item.Connected}">{{item.MachineName }}</a>
<strong v-if="item.isSelf"> - (<el-icon><StarFilled /></el-icon> 本机) </strong>
<!-- <p>{{ item }}</p> -->
</div>
</template>
@@ -34,7 +35,7 @@ export default {
return {
item:props.item,tuntap,handleEdit
item:computed(()=>props.item),tuntap,handleEdit
}
}
}

View File

@@ -105,7 +105,7 @@ export default {
}
return {
item:props.item,tuntap,showDelay, handleTuntap, handleTuntapIP,handleTuntapRefresh
item:computed(()=>props.item),tuntap,showDelay, handleTuntap, handleTuntapIP,handleTuntapRefresh
}
}
}

View File

@@ -141,7 +141,7 @@ export default {
}
return {
item:props.item,updater,updaterText,updaterColor,handleUpdate
item:computed(()=>props.item),updater,updaterText,updaterColor,handleUpdate
}
}
}

View File

@@ -88,6 +88,7 @@ export const provideTuntap = () => {
const sort = Object.values(tuntap.value.list).filter(c => c.IP).sort((a, b) => {
const arrA = a.IP.split('.').map(c => Number(c));
const arrB = b.IP.split('.').map(c => Number(c));
for (let i = 0; i < arrA.length; i++) {
if (arrA[i] != arrB[i]) {
return arrA[i] - arrB[i];

View File

@@ -17,20 +17,17 @@
<EnablePreviewFeatures>true</EnablePreviewFeatures>
<ServerGarbageCollection>false</ServerGarbageCollection>
<Title>linker</Title>
<Version>1.2.7</Version>
<Version>1.2.8</Version>
<Authors>snltty</Authors>
<Company>snltty</Company>
<Description>1. 修复BUG打洞导致的网卡读取数据堵塞表现为连接失败
2. windows路由工具单独下载
3. 修复配置信息同步错误
4. 新增简单管理页面
5. 修复域名解析失败的问题</Description>
<Description>1. 修复管理页面数据表格绑定错误,导致的信息显示错误
2. 将程序分发给他人进行组网时可删除web文件夹让其仅能使用简单管理页面管理自身</Description>
<Copyright>snltty</Copyright>
<PackageProjectUrl>https://github.com/snltty/linker</PackageProjectUrl>
<RepositoryUrl>https://github.com/snltty/linker</RepositoryUrl>
<PackageReleaseNotes>linker</PackageReleaseNotes>
<AssemblyVersion>1.2.7</AssemblyVersion>
<FileVersion>1.2.7</FileVersion>
<AssemblyVersion>1.2.8</AssemblyVersion>
<FileVersion>1.2.8</FileVersion>
</PropertyGroup>

View File

@@ -9,7 +9,7 @@ namespace linker.plugins.client.args
{
private List<ISignInArgs> startups;
public SignInArgsTransfer(ServiceProvider serviceProvider, FileConfig config)
public SignInArgsTransfer(ServiceProvider serviceProvider)
{
var types = ReflectionHelper.GetInterfaceSchieves(typeof(ISignInArgs));
startups = types.Select(c => serviceProvider.GetService(c) as ISignInArgs).Where(c => c != null).ToList();

View File

@@ -1,7 +1,4 @@
v1.2.7
2024-08-29 16:47:56
1. 修复BUG打洞导致的网卡读取数据堵塞表现为连接失败
2. windows路由工具单独下载
3. 修复配置信息同步错误
4. 新增简单管理页面
5. 修复域名解析失败的问题
v1.2.8
2024-08-30 14:31:21
1. 修复管理页面数据表格绑定错误,导致的信息显示错误
2. 将程序分发给他人进行组网时可删除web文件夹让其仅能使用简单管理页面管理自身