xiao_002
This commit is contained in:
@@ -18,6 +18,7 @@ export default defineConfig({
|
|||||||
vue(),
|
vue(),
|
||||||
AutoImport({
|
AutoImport({
|
||||||
resolvers: [ElementPlusResolver()]
|
resolvers: [ElementPlusResolver()]
|
||||||
|
|
||||||
}),
|
}),
|
||||||
Components({
|
Components({
|
||||||
resolvers: [ElementPlusResolver()]
|
resolvers: [ElementPlusResolver()]
|
||||||
@@ -27,7 +28,7 @@ export default defineConfig({
|
|||||||
proxy: {
|
proxy: {
|
||||||
"/api": {
|
"/api": {
|
||||||
// target: "http://127.0.0.1:8000/", // 目标服务器地址
|
// target: "http://127.0.0.1:8000/", // 目标服务器地址
|
||||||
target: "https://six.sixgou.com/", // 目标服务器地址
|
target: "https://xiao.sixgou.com/", // 目标服务器地址
|
||||||
changeOrigin: true, // 开启跨域
|
changeOrigin: true, // 开启跨域
|
||||||
// 重写路径,将 /api/six_demo/demo 重写为 /six_demo/demo
|
// 重写路径,将 /api/six_demo/demo 重写为 /six_demo/demo
|
||||||
rewrite: (path) => path.replace(/^\/api/, "")
|
rewrite: (path) => path.replace(/^\/api/, "")
|
||||||
|
|||||||
@@ -31,8 +31,10 @@
|
|||||||
"electron-updater": "^6.3.9",
|
"electron-updater": "^6.3.9",
|
||||||
"element-plus": "^2.14.2",
|
"element-plus": "^2.14.2",
|
||||||
"node-global-key-listener": "^0.3.0",
|
"node-global-key-listener": "^0.3.0",
|
||||||
|
"node-hid": "^3.4.0",
|
||||||
"pinia": "^3.0.4",
|
"pinia": "^3.0.4",
|
||||||
"pinia-plugin-persistedstate": "^4.7.1",
|
"pinia-plugin-persistedstate": "^4.7.1",
|
||||||
|
"serialport": "^13.0.0",
|
||||||
"unplugin-element-plus": "^0.11.2",
|
"unplugin-element-plus": "^0.11.2",
|
||||||
"vue-echarts": "^8.0.1",
|
"vue-echarts": "^8.0.1",
|
||||||
"vue-next-wxlogin": "^1.0.4",
|
"vue-next-wxlogin": "^1.0.4",
|
||||||
|
|||||||
+10
-15
@@ -2,8 +2,7 @@ import { app, BrowserWindow, ipcMain, screen, shell } from "electron";
|
|||||||
import { join } from "path";
|
import { join } from "path";
|
||||||
import { electronApp, is, optimizer } from "@electron-toolkit/utils";
|
import { electronApp, is, optimizer } from "@electron-toolkit/utils";
|
||||||
import icon from "../../resources/icon.png?asset";
|
import icon from "../../resources/icon.png?asset";
|
||||||
|
import { OninitScannerSerialPort监听电子秤 } from "./监听电子秤";
|
||||||
import { initGlobalScanner } from "./key";
|
|
||||||
//
|
//
|
||||||
|
|
||||||
|
|
||||||
@@ -32,11 +31,15 @@ app.on("second-instance", (_, argv) => {
|
|||||||
const url = argv.find(arg => arg.startsWith("myapp://"));
|
const url = argv.find(arg => arg.startsWith("myapp://"));
|
||||||
if (url) {
|
if (url) {
|
||||||
console.log("✅ Windows/Linux 收到 myapp:", url);
|
console.log("✅ Windows/Linux 收到 myapp:", url);
|
||||||
|
let uri = new URL(url);
|
||||||
|
const paramsObj = Object.fromEntries(uri.searchParams.entries());
|
||||||
|
if (mainWindow && mainWindow.webContents) {
|
||||||
|
mainWindow.webContents.send("wx", paramsObj);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
function createWindow(windowWidth: number = 1920, windowHeight: number = 997): void {
|
function createWindow(windowWidth: number = 1920, windowHeight: number = 997): void {
|
||||||
|
|
||||||
mainWindow = new BrowserWindow({
|
mainWindow = new BrowserWindow({
|
||||||
width: windowWidth, // 设置窗口宽度
|
width: windowWidth, // 设置窗口宽度
|
||||||
height: windowHeight, //设置窗口高度
|
height: windowHeight, //设置窗口高度
|
||||||
@@ -58,7 +61,8 @@ function createWindow(windowWidth: number = 1920, windowHeight: number = 997): v
|
|||||||
webSecurity: true
|
webSecurity: true
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
initGlobalScanner(mainWindow); // ★ 现在 mainWindow 已经有值了
|
// initScanner();
|
||||||
|
OninitScannerSerialPort监听电子秤(mainWindow);
|
||||||
// 可以打开,开发者工具
|
// 可以打开,开发者工具
|
||||||
mainWindow.webContents.openDevTools();
|
mainWindow.webContents.openDevTools();
|
||||||
// 关键:修改 CSP 允许连接 six.sixgou.com
|
// 关键:修改 CSP 允许连接 six.sixgou.com
|
||||||
@@ -136,14 +140,5 @@ app.on("window-all-closed", () => {
|
|||||||
// app.quit(); // ✅ macOS / Windows 都退出
|
// app.quit(); // ✅ macOS / Windows 都退出
|
||||||
});
|
});
|
||||||
|
|
||||||
//在这个文件里,你可以包含你应用的具体主要流程的其他部分
|
// 在应用入口处注册退出事件
|
||||||
// code. You can also put them in separate files and require them here.
|
|
||||||
// app.on("browser-window-blur", (event) => {
|
|
||||||
// console.log(event, "失去光标会触发的");
|
|
||||||
// });
|
|
||||||
// app.on("browser-window-focus", () => {
|
|
||||||
// console.log("获取光标时得到光标");
|
|
||||||
// });
|
|
||||||
// app.on("did-resign-active", () => {
|
|
||||||
// console.log("切换时的触发 实测,切换了别的app的会触发的事件");
|
|
||||||
// });
|
|
||||||
|
|||||||
@@ -0,0 +1,43 @@
|
|||||||
|
import { DelimiterParser, SerialPort } from "serialport";
|
||||||
|
import { BrowserWindow } from "electron";
|
||||||
|
|
||||||
|
export function OninitScannerSerialPort监听电子秤(mainWindow: BrowserWindow) {
|
||||||
|
SerialPort.list().then((ports) => {
|
||||||
|
console.log(ports, typeof ports);
|
||||||
|
const scalePort = ports.find(p => {
|
||||||
|
return p.vendorId === "0403" && p.productId === "6001";
|
||||||
|
}
|
||||||
|
);
|
||||||
|
if (!scalePort) {
|
||||||
|
console.error("❌ 未找到电子秤串口");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
console.log("✅ 找到电子秤串口:", scalePort.path);
|
||||||
|
const port = new SerialPort({
|
||||||
|
// path: "/dev/tty.usbserial-A5069RR4",
|
||||||
|
path: scalePort.path, // ✅ 动态获取,自动适配各平台
|
||||||
|
baudRate: 9600
|
||||||
|
}, (res) => {
|
||||||
|
console.log(res, "为null时,说明没有报错");
|
||||||
|
});
|
||||||
|
|
||||||
|
// 以 0x03 0x04 作为帧分隔符
|
||||||
|
const parser = port.pipe(new DelimiterParser({ delimiter: [0x03, 0x04] }));
|
||||||
|
// const parser = port.pipe(new DelimiterParser({ delimiter: [0x60] }));
|
||||||
|
|
||||||
|
parser.on("data", (frame) => {
|
||||||
|
const text = frame.toString("ascii").trim();
|
||||||
|
// 提取重量数值
|
||||||
|
const match = text.match(/[+-]?\d+\.\d+/);
|
||||||
|
if (match) {
|
||||||
|
mainWindow.webContents.send("电子秤", parseFloat(match[0]));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
parser.on("error", (err) => {
|
||||||
|
console.error("❌ 串口错误:", err.message);
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -14,7 +14,7 @@
|
|||||||
img-src 'self' data: *;
|
img-src 'self' data: *;
|
||||||
font-src *;
|
font-src *;
|
||||||
frame-src 'self' https://open.weixin.qq.com https://*.open.weixin.qq.com;
|
frame-src 'self' https://open.weixin.qq.com https://*.open.weixin.qq.com;
|
||||||
connect-src 'self' https://six.sixgou.com http://localhost:5173 https://res.wx.qq.com https://at.alicdn.com https://open.weixin.qq.com https://datav.aliyun.com ws://127.0.0.1:8000;
|
connect-src 'self' https://six.sixgou.com http://localhost:5173 https://res.wx.qq.com https://at.alicdn.com https://open.weixin.qq.com https://datav.aliyun.com ws://127.0.0.1:8000 https://xiao.sixgou.com;
|
||||||
"
|
"
|
||||||
/>
|
/>
|
||||||
<link href="https://hudie.xiao.band/static/wx-login.css">
|
<link href="https://hudie.xiao.band/static/wx-login.css">
|
||||||
|
|||||||
@@ -2,24 +2,22 @@
|
|||||||
|
|
||||||
import { onMounted, ref } from "vue";
|
import { onMounted, ref } from "vue";
|
||||||
import { useRouter } from "vue-router";
|
import { useRouter } from "vue-router";
|
||||||
import { useMainXiaoStore } from "@renderer/stores";
|
|
||||||
import { instance } from "@renderer/utils/request";
|
|
||||||
|
|
||||||
let xiaoMain = useMainXiaoStore();
|
|
||||||
let loading = ref(false);
|
let loading = ref(false);
|
||||||
const router_path = useRouter();
|
const router_path = useRouter();
|
||||||
// router_path.push({ name: "图表页" });
|
// router_path.push({ name: "图表页" });
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
// router_path.push({ name: "登陆页" });
|
// router_path.push({ name: "登陆页" });
|
||||||
instance.post<string>("https://six.sixgou.com/demo/xiaozizi/", {},
|
|
||||||
{ headers: { "Authorization": xiaoMain.weChatUserInfo?.token } }
|
|
||||||
).then((data) => {
|
|
||||||
console.log(data);
|
|
||||||
router_path.replace({ name: "学习页面" });
|
router_path.replace({ name: "学习页面" });
|
||||||
}).catch((error) => {
|
// instance.post<string>("https://six.sixgou.com/demo/xiaozizi/", {},
|
||||||
console.log("错误被捕获了", error);
|
// { headers: { "Authorization": xiaoMain.weChatUserInfo?.token } }
|
||||||
router_path.replace({ name: "登陆页" });
|
// ).then((data) => {
|
||||||
});
|
// console.log(data);
|
||||||
|
// router_path.replace({ name: "学习页面" });
|
||||||
|
// }).catch((error) => {
|
||||||
|
// console.log("错误被捕获了", error);
|
||||||
|
// router_path.replace({ name: "登陆页" });
|
||||||
|
// });
|
||||||
});
|
});
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
|
|
||||||
// 判断是否为 Electron 生产环境
|
// 判断是否为 Electron 生产环境
|
||||||
console.log(import.meta.env.MODE);
|
console.log(import.meta.env.MODE, "URL import.meta.env.PROD 这里的值,是生产环境,判断用的");
|
||||||
export const instance = axios.create({
|
export const instance = axios.create({
|
||||||
// 开发环境用相对路径(走 Vite 代理)
|
// 开发环境用相对路径(走 Vite 代理)
|
||||||
// 生产环境用完整 URL import.meta.env.PROD 这里的值,是生产环境,判断用的
|
// 生产环境用完整 URL import.meta.env.PROD 这里的值,是生产环境,判断用的
|
||||||
baseURL: import.meta.env.PROD ? "https://six.sixgou.com" : "/api"
|
baseURL: import.meta.env.PROD ? "https://xiao.sixgou.com" : "/api"
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -1,17 +1,35 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import ThemeToggle from "@renderer/通用组件/主题切换组件.vue";
|
import ThemeToggle from "@renderer/通用组件/主题切换组件.vue";
|
||||||
import { onMounted, ref } from "vue";
|
import { onMounted, ref } from "vue";
|
||||||
|
import { instance } from "@renderer/utils/request";
|
||||||
|
import { watchThrottled } from "@vueuse/core";
|
||||||
|
|
||||||
|
const 电子秤重量 = ref();
|
||||||
|
watchThrottled(电子秤重量, (value, oldValue, onCleanup) => {
|
||||||
|
console.log(value, oldValue, onCleanup);
|
||||||
|
},
|
||||||
|
{ throttle: 300 }
|
||||||
|
);
|
||||||
const code_list = ref<Array<string>>([]);
|
const code_list = ref<Array<string>>([]);
|
||||||
onMounted(async () => {
|
onMounted(async () => {
|
||||||
window.electron.ipcRenderer.on("扫码", (_, args: string) => {
|
window.electron.ipcRenderer.on("扫码", (_, args: string) => {
|
||||||
console.log(args, "扫码结果");
|
console.log(args, "扫码结果");
|
||||||
code_list.value.push(args);
|
code_list.value.push(args);
|
||||||
|
instance.post("/demopay/qrCode/", {
|
||||||
|
auth_code: args
|
||||||
|
});
|
||||||
|
});
|
||||||
|
// 还需要监听电子秤的数值
|
||||||
|
window.electron.ipcRenderer.on("电子秤", (_, args: string) => {
|
||||||
|
电子秤重量.value = args;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
const 向主进程发送ping事件 = async (): Promise<void> => {
|
const 向主进程发送ping事件 = async (): Promise<void> => {
|
||||||
window.electron.ipcRenderer.send("ping", "前端发送来的消息哟");
|
window.electron.ipcRenderer.send("ping", "前端发送来的消息哟");
|
||||||
};
|
};
|
||||||
|
const 发起请求 = async (): Promise<void> => {
|
||||||
|
await instance.post("/demo/中文/", {});
|
||||||
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
@@ -21,12 +39,17 @@
|
|||||||
<div>
|
<div>
|
||||||
<el-button type="danger" @click="向主进程发送ping事件">向主进程发送ping事件</el-button>
|
<el-button type="danger" @click="向主进程发送ping事件">向主进程发送ping事件</el-button>
|
||||||
</div>
|
</div>
|
||||||
|
<div>
|
||||||
|
<el-button type="danger" @click="发起请求">测试请求</el-button>
|
||||||
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<div class="" v-for="(value,index) in code_list" v-bind:key="index">
|
<div class="" v-for="(value,index) in code_list" v-bind:key="index">
|
||||||
<div>{{ value }}</div>
|
<div>{{ value }}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div>
|
||||||
|
电子秤重量{{ 电子秤重量 }}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
|||||||
@@ -27,18 +27,13 @@
|
|||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { onMounted, ref } from "vue";
|
import { onMounted, ref } from "vue";
|
||||||
import { useRouter } from "vue-router";
|
|
||||||
|
|
||||||
const input = ref("");
|
const input = ref("");
|
||||||
|
|
||||||
let router = useRouter();
|
|
||||||
const 测试跨域 = async (): Promise<void> => {
|
const 测试跨域 = async (): Promise<void> => {
|
||||||
console.log("========");
|
console.log("========");
|
||||||
};
|
};
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
window.on发送登陆状态事件((res) => {
|
|
||||||
console.log("===============", res);
|
|
||||||
router.push({ name: "学习页面" });
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -20,7 +20,7 @@
|
|||||||
id: "login_container",
|
id: "login_container",
|
||||||
appid: "wx6c9d4541e0285d02",
|
appid: "wx6c9d4541e0285d02",
|
||||||
scope: "snsapi_login",
|
scope: "snsapi_login",
|
||||||
redirect_uri: "https://six.sixgou.com/web/auth/get_code/",
|
redirect_uri: "https://xiao.sixgou.com/web/auth/get_code/",
|
||||||
// redirect_uri: "myapp://login/callback",
|
// redirect_uri: "myapp://login/callback",
|
||||||
state: "xiaozizi",
|
state: "xiaozizi",
|
||||||
style: "black",
|
style: "black",
|
||||||
@@ -37,6 +37,7 @@
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
|
|||||||
@@ -34,7 +34,7 @@
|
|||||||
let router = useRouter();
|
let router = useRouter();
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
window.electron.ipcRenderer.on("wx", (_, args: WeChatUserInfoType) => {
|
window.electron.ipcRenderer.on("wx", (_, args: WeChatUserInfoType) => {
|
||||||
console.log(args);
|
console.log("路由触发了,在这里拿到路由的值", args);
|
||||||
xiaoMain.weChatUserInfo = args;
|
xiaoMain.weChatUserInfo = args;
|
||||||
router.push({ name: "学习页面" });
|
router.push({ name: "学习页面" });
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -1049,6 +1049,102 @@
|
|||||||
resolved "https://registry.npmmirror.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.62.2.tgz#3671ce3f9b928d5c01f879792d5c0b60ae14d4ad"
|
resolved "https://registry.npmmirror.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.62.2.tgz#3671ce3f9b928d5c01f879792d5c0b60ae14d4ad"
|
||||||
integrity sha512-BfzEnDJOt9T8M989/lA37EcJgat01wLRnoi5dQf3QzOH7jzpqTAzdDbVfRljVr5r+jzKqpbHeyOfAaXxAd0PAA==
|
integrity sha512-BfzEnDJOt9T8M989/lA37EcJgat01wLRnoi5dQf3QzOH7jzpqTAzdDbVfRljVr5r+jzKqpbHeyOfAaXxAd0PAA==
|
||||||
|
|
||||||
|
"@serialport/binding-mock@10.2.2":
|
||||||
|
version "10.2.2"
|
||||||
|
resolved "https://registry.npmmirror.com/@serialport/binding-mock/-/binding-mock-10.2.2.tgz#d322a8116a97806addda13c62f50e73d16125874"
|
||||||
|
integrity sha512-HAFzGhk9OuFMpuor7aT5G1ChPgn5qSsklTFOTUX72Rl6p0xwcSVsRtG/xaGp6bxpN7fI9D/S8THLBWbBgS6ldw==
|
||||||
|
dependencies:
|
||||||
|
"@serialport/bindings-interface" "^1.2.1"
|
||||||
|
debug "^4.3.3"
|
||||||
|
|
||||||
|
"@serialport/bindings-cpp@13.0.0":
|
||||||
|
version "13.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/@serialport/bindings-cpp/-/bindings-cpp-13.0.0.tgz#d8a06881c1f9ce59c28fb22e23ad72062963b26d"
|
||||||
|
integrity sha512-r25o4Bk/vaO1LyUfY/ulR6hCg/aWiN6Wo2ljVlb4Pj5bqWGcSRC4Vse4a9AcapuAu/FeBzHCbKMvRQeCuKjzIQ==
|
||||||
|
dependencies:
|
||||||
|
"@serialport/bindings-interface" "1.2.2"
|
||||||
|
"@serialport/parser-readline" "12.0.0"
|
||||||
|
debug "4.4.0"
|
||||||
|
node-addon-api "8.3.0"
|
||||||
|
node-gyp-build "4.8.4"
|
||||||
|
|
||||||
|
"@serialport/bindings-interface@1.2.2", "@serialport/bindings-interface@^1.2.1":
|
||||||
|
version "1.2.2"
|
||||||
|
resolved "https://registry.npmmirror.com/@serialport/bindings-interface/-/bindings-interface-1.2.2.tgz#c4ae9c1c85e26b02293f62f37435478d90baa460"
|
||||||
|
integrity sha512-CJaUd5bLvtM9c5dmO9rPBHPXTa9R2UwpkJ0wdh9JCYcbrPWsKz+ErvR0hBLeo7NPeiFdjFO4sonRljiw4d2XiA==
|
||||||
|
|
||||||
|
"@serialport/parser-byte-length@13.0.0":
|
||||||
|
version "13.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/@serialport/parser-byte-length/-/parser-byte-length-13.0.0.tgz#173b3f94ff24f30a617faef396579bb876082c3c"
|
||||||
|
integrity sha512-32yvqeTAqJzAEtX5zCrN1Mej56GJ5h/cVFsCDPbF9S1ZSC9FWjOqNAgtByseHfFTSTs/4ZBQZZcZBpolt8sUng==
|
||||||
|
|
||||||
|
"@serialport/parser-cctalk@13.0.0":
|
||||||
|
version "13.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/@serialport/parser-cctalk/-/parser-cctalk-13.0.0.tgz#d1fc988454b49241d744d581dbb3d5ec4df5af5a"
|
||||||
|
integrity sha512-RErAe57g9gvnlieVYGIn1xymb1bzNXb2QtUQd14FpmbQQYlcrmuRnJwKa1BgTCujoCkhtaTtgHlbBWOxm8U2uA==
|
||||||
|
|
||||||
|
"@serialport/parser-delimiter@12.0.0":
|
||||||
|
version "12.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/@serialport/parser-delimiter/-/parser-delimiter-12.0.0.tgz#43d3687f982829cc9b48ee0b21f2de80d0f19778"
|
||||||
|
integrity sha512-gu26tVt5lQoybhorLTPsH2j2LnX3AOP2x/34+DUSTNaUTzu2fBXw+isVjQJpUBFWu6aeQRZw5bJol5X9Gxjblw==
|
||||||
|
|
||||||
|
"@serialport/parser-delimiter@13.0.0":
|
||||||
|
version "13.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/@serialport/parser-delimiter/-/parser-delimiter-13.0.0.tgz#5d342004cfc5af30f4694e18a4d3407a66ca1eec"
|
||||||
|
integrity sha512-Qqyb0FX1avs3XabQqNaZSivyVbl/yl0jywImp7ePvfZKLwx7jBZjvL+Hawt9wIG6tfq6zbFM24vzCCK7REMUig==
|
||||||
|
|
||||||
|
"@serialport/parser-inter-byte-timeout@13.0.0":
|
||||||
|
version "13.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/@serialport/parser-inter-byte-timeout/-/parser-inter-byte-timeout-13.0.0.tgz#e0b696ebe921ba9a120088bd012ef413d61d7f40"
|
||||||
|
integrity sha512-a0w0WecTW7bD2YHWrpTz1uyiWA2fDNym0kjmPeNSwZ2XCP+JbirZt31l43m2ey6qXItTYVuQBthm75sPVeHnGA==
|
||||||
|
|
||||||
|
"@serialport/parser-packet-length@13.0.0":
|
||||||
|
version "13.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/@serialport/parser-packet-length/-/parser-packet-length-13.0.0.tgz#fcb80de042720c8c029cf912a9ec268f5fa6ec87"
|
||||||
|
integrity sha512-60ZDDIqYRi0Xs2SPZUo4Jr5LLIjtb+rvzPKMJCohrO6tAqSDponcNpcB1O4W21mKTxYjqInSz+eMrtk0LLfZIg==
|
||||||
|
|
||||||
|
"@serialport/parser-readline@12.0.0":
|
||||||
|
version "12.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/@serialport/parser-readline/-/parser-readline-12.0.0.tgz#50e992004d7a84d5a12e0b016adb9021d3a72fbb"
|
||||||
|
integrity sha512-O7cywCWC8PiOMvo/gglEBfAkLjp/SENEML46BXDykfKP5mTPM46XMaX1L0waWU6DXJpBgjaL7+yX6VriVPbN4w==
|
||||||
|
dependencies:
|
||||||
|
"@serialport/parser-delimiter" "12.0.0"
|
||||||
|
|
||||||
|
"@serialport/parser-readline@13.0.0":
|
||||||
|
version "13.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/@serialport/parser-readline/-/parser-readline-13.0.0.tgz#624594a1af030949eaea9873a4c50fe6c464f85e"
|
||||||
|
integrity sha512-dov3zYoyf0dt1Sudd1q42VVYQ4WlliF0MYvAMA3MOyiU1IeG4hl0J6buBA2w4gl3DOCC05tGgLDN/3yIL81gsA==
|
||||||
|
dependencies:
|
||||||
|
"@serialport/parser-delimiter" "13.0.0"
|
||||||
|
|
||||||
|
"@serialport/parser-ready@13.0.0":
|
||||||
|
version "13.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/@serialport/parser-ready/-/parser-ready-13.0.0.tgz#f56b289632426fb50da79222106e09a602df5f41"
|
||||||
|
integrity sha512-JNUQA+y2Rfs4bU+cGYNqOPnNMAcayhhW+XJZihSLQXOHcZsFnOa2F9YtMg9VXRWIcnHldHYtisp62Etjlw24bw==
|
||||||
|
|
||||||
|
"@serialport/parser-regex@13.0.0":
|
||||||
|
version "13.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/@serialport/parser-regex/-/parser-regex-13.0.0.tgz#0de6d1b8224d5b14c6ad5208c30a842cb5c0d312"
|
||||||
|
integrity sha512-m7HpIf56G5XcuDdA3DB34Z0pJiwxNRakThEHjSa4mG05OnWYv0IG8l2oUyYfuGMowQWaVnQ+8r+brlPxGVH+eA==
|
||||||
|
|
||||||
|
"@serialport/parser-slip-encoder@13.0.0":
|
||||||
|
version "13.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/@serialport/parser-slip-encoder/-/parser-slip-encoder-13.0.0.tgz#961439d6aa0f519c05dcabbfc47a8cfea068fedd"
|
||||||
|
integrity sha512-fUHZEExm6izJ7rg0A1yjXwu4sOzeBkPAjDZPfb+XQoqgtKAk+s+HfICiYn7N2QU9gyaeCO8VKgWwi+b/DowYOg==
|
||||||
|
|
||||||
|
"@serialport/parser-spacepacket@13.0.0":
|
||||||
|
version "13.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/@serialport/parser-spacepacket/-/parser-spacepacket-13.0.0.tgz#3f2ff34e9b4c32ead1d50db50cd1a27b49f154d6"
|
||||||
|
integrity sha512-DoXJ3mFYmyD8X/8931agJvrBPxqTaYDsPoly9/cwQSeh/q4EjQND9ySXBxpWz5WcpyCU4jOuusqCSAPsbB30Eg==
|
||||||
|
|
||||||
|
"@serialport/stream@13.0.0":
|
||||||
|
version "13.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/@serialport/stream/-/stream-13.0.0.tgz#12f04da9429809bb3ace2e9b7369b82ba1d39f0a"
|
||||||
|
integrity sha512-F7xLJKsjGo2WuEWMSEO1SimRcOA+WtWICsY13r0ahx8s2SecPQH06338g28OT7cW7uRXI7oEQAk62qh5gHJW3g==
|
||||||
|
dependencies:
|
||||||
|
"@serialport/bindings-interface" "1.2.2"
|
||||||
|
debug "4.4.0"
|
||||||
|
|
||||||
"@sindresorhus/is@^4.0.0":
|
"@sindresorhus/is@^4.0.0":
|
||||||
version "4.6.0"
|
version "4.6.0"
|
||||||
resolved "https://registry.npmmirror.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f"
|
resolved "https://registry.npmmirror.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f"
|
||||||
@@ -1938,13 +2034,20 @@ dayjs@^1.11.20:
|
|||||||
resolved "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.21.tgz#57f87562e62de76f3c704bd2b8d522fc33068eb2"
|
resolved "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.21.tgz#57f87562e62de76f3c704bd2b8d522fc33068eb2"
|
||||||
integrity sha512-98IT+HOahAisibz/yjKbzuOBwYcjJ7BCLPzARyHiyEBmRz4fatF+KPJszEHXsGYjUG234aH/cOjW1wwTbKUZlA==
|
integrity sha512-98IT+HOahAisibz/yjKbzuOBwYcjJ7BCLPzARyHiyEBmRz4fatF+KPJszEHXsGYjUG234aH/cOjW1wwTbKUZlA==
|
||||||
|
|
||||||
debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.4.0, debug@^4.4.3:
|
debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4, debug@^4.4.0, debug@^4.4.3:
|
||||||
version "4.4.3"
|
version "4.4.3"
|
||||||
resolved "https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a"
|
resolved "https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a"
|
||||||
integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==
|
integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==
|
||||||
dependencies:
|
dependencies:
|
||||||
ms "^2.1.3"
|
ms "^2.1.3"
|
||||||
|
|
||||||
|
debug@4.4.0:
|
||||||
|
version "4.4.0"
|
||||||
|
resolved "https://registry.npmmirror.com/debug/-/debug-4.4.0.tgz#2b3f2aea2ffeb776477460267377dc8710faba8a"
|
||||||
|
integrity sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==
|
||||||
|
dependencies:
|
||||||
|
ms "^2.1.3"
|
||||||
|
|
||||||
decompress-response@^6.0.0:
|
decompress-response@^6.0.0:
|
||||||
version "6.0.0"
|
version "6.0.0"
|
||||||
resolved "https://registry.npmmirror.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc"
|
resolved "https://registry.npmmirror.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc"
|
||||||
@@ -3243,11 +3346,21 @@ node-abi@^4.2.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
semver "^7.6.3"
|
semver "^7.6.3"
|
||||||
|
|
||||||
|
node-addon-api@8.3.0:
|
||||||
|
version "8.3.0"
|
||||||
|
resolved "https://registry.npmmirror.com/node-addon-api/-/node-addon-api-8.3.0.tgz#ec3763f18befc1cdf66d11e157ce44d5eddc0603"
|
||||||
|
integrity sha512-8VOpLHFrOQlAH+qA0ZzuGRlALRA6/LVh8QJldbrC4DY0hXoMP0l4Acq8TzFC018HztWiRqyCEj2aTWY2UvnJUg==
|
||||||
|
|
||||||
node-addon-api@^7.0.0:
|
node-addon-api@^7.0.0:
|
||||||
version "7.1.1"
|
version "7.1.1"
|
||||||
resolved "https://registry.npmmirror.com/node-addon-api/-/node-addon-api-7.1.1.tgz#1aba6693b0f255258a049d621329329322aad558"
|
resolved "https://registry.npmmirror.com/node-addon-api/-/node-addon-api-7.1.1.tgz#1aba6693b0f255258a049d621329329322aad558"
|
||||||
integrity sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==
|
integrity sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==
|
||||||
|
|
||||||
|
node-addon-api@^8.9.0:
|
||||||
|
version "8.9.1"
|
||||||
|
resolved "https://registry.npmmirror.com/node-addon-api/-/node-addon-api-8.9.1.tgz#f40a3c0f087d767e7b2961172158badb3b49697c"
|
||||||
|
integrity sha512-4eUQWVPCUUUiBjLnHS3cXWeC6ryoPUc0U3rP7IuzapoGbzMqd/r6KKO0clr0b+snQhsrueFEhCZDdK+LK7hxKg==
|
||||||
|
|
||||||
node-api-version@^0.2.1:
|
node-api-version@^0.2.1:
|
||||||
version "0.2.1"
|
version "0.2.1"
|
||||||
resolved "https://registry.npmmirror.com/node-api-version/-/node-api-version-0.2.1.tgz#19bad54f6d65628cbee4e607a325e4488ace2de9"
|
resolved "https://registry.npmmirror.com/node-api-version/-/node-api-version-0.2.1.tgz#19bad54f6d65628cbee4e607a325e4488ace2de9"
|
||||||
@@ -3262,6 +3375,11 @@ node-global-key-listener@^0.3.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
sudo-prompt "^9.2.1"
|
sudo-prompt "^9.2.1"
|
||||||
|
|
||||||
|
node-gyp-build@4.8.4:
|
||||||
|
version "4.8.4"
|
||||||
|
resolved "https://registry.npmmirror.com/node-gyp-build/-/node-gyp-build-4.8.4.tgz#8a70ee85464ae52327772a90d66c6077a900cfc8"
|
||||||
|
integrity sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==
|
||||||
|
|
||||||
node-gyp@^12.2.0:
|
node-gyp@^12.2.0:
|
||||||
version "12.4.0"
|
version "12.4.0"
|
||||||
resolved "https://registry.npmmirror.com/node-gyp/-/node-gyp-12.4.0.tgz#2d017b6ea1ca9294dbbee75be533728f49257024"
|
resolved "https://registry.npmmirror.com/node-gyp/-/node-gyp-12.4.0.tgz#2d017b6ea1ca9294dbbee75be533728f49257024"
|
||||||
@@ -3278,6 +3396,14 @@ node-gyp@^12.2.0:
|
|||||||
undici "^6.25.0"
|
undici "^6.25.0"
|
||||||
which "^6.0.0"
|
which "^6.0.0"
|
||||||
|
|
||||||
|
node-hid@^3.4.0:
|
||||||
|
version "3.4.0"
|
||||||
|
resolved "https://registry.npmmirror.com/node-hid/-/node-hid-3.4.0.tgz#dca0b7eb00eb9ee8bc652ef0437e30ed1889fba4"
|
||||||
|
integrity sha512-Br7EO3bJARAJBdtcsGzF/Vs5TjfbkaMdglqLQ+Rk9GOGgVqv5DxYUVH5znLerJU+OfBWw8sd552Ujcprz1bG9g==
|
||||||
|
dependencies:
|
||||||
|
node-addon-api "^8.9.0"
|
||||||
|
pkg-prebuilds "^1.1.0"
|
||||||
|
|
||||||
node-int64@^0.4.0:
|
node-int64@^0.4.0:
|
||||||
version "0.4.0"
|
version "0.4.0"
|
||||||
resolved "https://registry.npmmirror.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b"
|
resolved "https://registry.npmmirror.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b"
|
||||||
@@ -3441,6 +3567,11 @@ pinia@^3.0.4:
|
|||||||
dependencies:
|
dependencies:
|
||||||
"@vue/devtools-api" "^7.7.7"
|
"@vue/devtools-api" "^7.7.7"
|
||||||
|
|
||||||
|
pkg-prebuilds@^1.1.0:
|
||||||
|
version "1.1.0"
|
||||||
|
resolved "https://registry.npmmirror.com/pkg-prebuilds/-/pkg-prebuilds-1.1.0.tgz#2e475a4cd0318d3ef595698b351463e06c3c293a"
|
||||||
|
integrity sha512-jyai+KTQ2OwbN6iRYw88XbYOMgtpoSYJpjYebx7d9ihqz3txNi3ucsBt3va0iVWe6svSlaqpijMHFF/eJCMZzg==
|
||||||
|
|
||||||
pkg-types@^1.3.1:
|
pkg-types@^1.3.1:
|
||||||
version "1.3.1"
|
version "1.3.1"
|
||||||
resolved "https://registry.npmmirror.com/pkg-types/-/pkg-types-1.3.1.tgz#bd7cc70881192777eef5326c19deb46e890917df"
|
resolved "https://registry.npmmirror.com/pkg-types/-/pkg-types-1.3.1.tgz#bd7cc70881192777eef5326c19deb46e890917df"
|
||||||
@@ -3923,6 +4054,26 @@ serialize-error@^7.0.1:
|
|||||||
dependencies:
|
dependencies:
|
||||||
type-fest "^0.13.1"
|
type-fest "^0.13.1"
|
||||||
|
|
||||||
|
serialport@^13.0.0:
|
||||||
|
version "13.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/serialport/-/serialport-13.0.0.tgz#f92a8c04e1b0ba5550bdf01224df27f7919b14c4"
|
||||||
|
integrity sha512-PHpnTd8isMGPfFTZNCzOZp9m4mAJSNWle9Jxu6BPTcWq7YXl5qN7tp8Sgn0h+WIGcD6JFz5QDgixC2s4VW7vzg==
|
||||||
|
dependencies:
|
||||||
|
"@serialport/binding-mock" "10.2.2"
|
||||||
|
"@serialport/bindings-cpp" "13.0.0"
|
||||||
|
"@serialport/parser-byte-length" "13.0.0"
|
||||||
|
"@serialport/parser-cctalk" "13.0.0"
|
||||||
|
"@serialport/parser-delimiter" "13.0.0"
|
||||||
|
"@serialport/parser-inter-byte-timeout" "13.0.0"
|
||||||
|
"@serialport/parser-packet-length" "13.0.0"
|
||||||
|
"@serialport/parser-readline" "13.0.0"
|
||||||
|
"@serialport/parser-ready" "13.0.0"
|
||||||
|
"@serialport/parser-regex" "13.0.0"
|
||||||
|
"@serialport/parser-slip-encoder" "13.0.0"
|
||||||
|
"@serialport/parser-spacepacket" "13.0.0"
|
||||||
|
"@serialport/stream" "13.0.0"
|
||||||
|
debug "4.4.0"
|
||||||
|
|
||||||
shebang-command@^2.0.0:
|
shebang-command@^2.0.0:
|
||||||
version "2.0.0"
|
version "2.0.0"
|
||||||
resolved "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
|
resolved "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
|
||||||
|
|||||||
Reference in New Issue
Block a user