1
0
Fork 0
mirror of https://github.com/silenty4ng/k5web synced 2025-04-10 02:29:31 +00:00
k5web/index.html
2025-04-03 19:57:53 +08:00

194 lines
No EOL
6.3 KiB
HTML

<!DOCTYPE html>
<html lang="zh-cmn">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="shortcut icon" href="k5web.png" type="image/png" />
<title>K5Web</title>
<meta name="description" content="一款 K5/K6 在线写频工具,使用应第一时间备份配置及校准数据,提供信道管理、设置管理、备份还原、固件升级等功能。"/>
<meta name="keywords" content="k5web,uv-k5,uv-k6,chirp,k5,k6">
<style>
::-webkit-scrollbar {
width: 12px;
height: 4px;
}
::-webkit-scrollbar-thumb {
border: 4px solid transparent;
background-clip: padding-box;
border-radius: 7px;
background-color: var(--color-text-4);
}
::-webkit-scrollbar-thumb:hover {
background-color: var(--color-text-3);
}
</style>
<style>
#loading-mask {
position: fixed;
left: 0;
top: 0;
height: 100%;
width: 100%;
background: #fff;
user-select: none;
z-index: 9999;
overflow: hidden;
}
.loading-wrapper {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -100%);
}
.loading-dot {
animation: antRotate 1.2s infinite linear;
transform: rotate(45deg);
position: relative;
display: inline-block;
font-size: 64px;
font-size: 2.5vw;
width: 64px;
width: 2.5vw;
height: 64px;
height: 2.5vw;
box-sizing: border-box;
}
.loading-dot i {
width: 22px;
width: 0.859vw;
height: 22px;
height: 0.859vw;
position: absolute;
display: block;
background-color: #1890ff;
border-radius: 100%;
transform: scale(0.75);
transform-origin: 50% 50%;
opacity: 0.3;
animation: antSpinMove 1s infinite linear alternate;
}
.loading-dot i:nth-child(1) {
top: 0;
left: 0;
}
.loading-dot i:nth-child(2) {
top: 0;
right: 0;
-webkit-animation-delay: 0.4s;
animation-delay: 0.4s;
}
.loading-dot i:nth-child(3) {
right: 0;
bottom: 0;
-webkit-animation-delay: 0.8s;
animation-delay: 0.8s;
}
.loading-dot i:nth-child(4) {
bottom: 0;
left: 0;
-webkit-animation-delay: 1.2s;
animation-delay: 1.2s;
}
@keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
@-webkit-keyframes antRotate {
to {
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}
}
@keyframes antSpinMove {
to {
opacity: 1;
}
}
@-webkit-keyframes antSpinMove {
to {
opacity: 1;
}
}
</style>
<script src="serial.js"></script>
<meta name="builtTime" content="20250403115517">
<script type="module" crossorigin src="./assets/index.a2ee1052.js"></script>
<link rel="modulepreload" crossorigin href="./assets/@intlify.b8ed1d74.js">
<link rel="modulepreload" crossorigin href="./assets/@vue.2faf1d8e.js">
<link rel="modulepreload" crossorigin href="./assets/vue.24dcbee8.js">
<link rel="modulepreload" crossorigin href="./assets/resize-detector.a8854a64.js">
<link rel="modulepreload" crossorigin href="./assets/tslib.c6ba9914.js">
<link rel="modulepreload" crossorigin href="./assets/zrender.ce26131e.js">
<link rel="modulepreload" crossorigin href="./assets/echarts.5b0e6023.js">
<link rel="modulepreload" crossorigin href="./assets/vue-echarts.29561399.js">
<link rel="modulepreload" crossorigin href="./assets/b-tween.8dd4e2fe.js">
<link rel="modulepreload" crossorigin href="./assets/dayjs.08dc07e5.js">
<link rel="modulepreload" crossorigin href="./assets/b-validate.1fdaeb97.js">
<link rel="modulepreload" crossorigin href="./assets/number-precision.5cddbed2.js">
<link rel="modulepreload" crossorigin href="./assets/resize-observer-polyfill.2b976e6e.js">
<link rel="modulepreload" crossorigin href="./assets/compute-scroll-into-view.17358474.js">
<link rel="modulepreload" crossorigin href="./assets/scroll-into-view-if-needed.0a5da943.js">
<link rel="modulepreload" crossorigin href="./assets/@arco-design.95e0b031.js">
<link rel="modulepreload" crossorigin href="./assets/vue-router.425aabc5.js">
<link rel="modulepreload" crossorigin href="./assets/nprogress.77f16b3e.js">
<link rel="modulepreload" crossorigin href="./assets/mitt.550594b0.js">
<link rel="modulepreload" crossorigin href="./assets/vue-demi.1e0b7689.js">
<link rel="modulepreload" crossorigin href="./assets/pinia.510425a1.js">
<link rel="modulepreload" crossorigin href="./assets/axios.234ce069.js">
<link rel="modulepreload" crossorigin href="./assets/vue-i18n.4b9acc8b.js">
<link rel="modulepreload" crossorigin href="./assets/@vueuse.c5c16882.js">
<link rel="modulepreload" crossorigin href="./assets/aegis-web-sdk.088ecaea.js">
<link rel="modulepreload" crossorigin href="./assets/@zxing.8654f0db.js">
<link rel="modulepreload" crossorigin href="./assets/tdesign-icons-vue-next.514651cc.js">
<link rel="modulepreload" crossorigin href="./assets/sortablejs.b2e3c7c4.js">
<link rel="modulepreload" crossorigin href="./assets/@popperjs.f3f73334.js">
<link rel="modulepreload" crossorigin href="./assets/tdesign-vue-next.62a9d0ce.js">
<link rel="modulepreload" crossorigin href="./assets/vue-matomo.ed94ba67.js">
<link rel="stylesheet" href="./assets/@arco-design.2b8b31ee.css">
<link rel="stylesheet" href="./assets/nprogress.8b89e2e0.css">
<link rel="stylesheet" href="./assets/tdesign-icons-vue-next.8494edcb.css">
<link rel="stylesheet" href="./assets/tdesign-vue-next.875637ac.css">
<link rel="stylesheet" href="./assets/index.565c3a6b.css">
</head>
<body>
<div id="app">
<div id="loading-mask">
<div class="loading-wrapper">
<span class="loading-dot loading-dot-spin"><i></i><i></i><i></i><i></i></span>
</div>
</div>
</div>
<script>
(async ()=>{
let wakeLock = null;
try {
wakeLock = await navigator.wakeLock.request("screen");
} catch {}
document.addEventListener("visibilitychange", async () => {
if (wakeLock !== null && document.visibilityState === "visible") {
wakeLock = await navigator.wakeLock.request("screen");
}
});
})();
</script>
</body>
</html>