feat(AT-CMD): init

This commit is contained in:
kerms 2025-05-31 19:50:44 +02:00
parent dccf5feaa8
commit 12b56e80d6
8 changed files with 153 additions and 2 deletions

125
package-lock.json generated
View File

@ -15,6 +15,7 @@
"pinia": "^2.1.7",
"vue": "^3.4.21",
"vue-draggable-plus": "^0.4.1",
"vue-grid-layout-v3": "^3.1.2",
"vue-i18n": "^9.10.2",
"vue-router": "^4.3.0",
"vuetify": "^3.6.5"
@ -274,6 +275,102 @@
"integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==",
"dev": true
},
"node_modules/@interactjs/actions": {
"version": "1.10.27",
"resolved": "https://registry.npmjs.org/@interactjs/actions/-/actions-1.10.27.tgz",
"integrity": "sha512-FCRg5KwB+stkPcAMx/Cn0fgGP6p4LyMX9S/Upcn/W+hpYme31bPi54PCqmOebzz6myTthN6zFf9jMyLOqtI/gg==",
"optionalDependencies": {
"@interactjs/interact": "1.10.27"
},
"peerDependencies": {
"@interactjs/core": "1.10.27",
"@interactjs/utils": "1.10.27"
}
},
"node_modules/@interactjs/auto-scroll": {
"version": "1.10.27",
"resolved": "https://registry.npmjs.org/@interactjs/auto-scroll/-/auto-scroll-1.10.27.tgz",
"integrity": "sha512-zPg5TnVsZv+9Hnt4qnbxLvBMf+rIWHkoJVoSETEbLNaj90C8hIyr0pVwukSUySSgDhCgQ7np0f3pg4INLq9beQ==",
"optionalDependencies": {
"@interactjs/interact": "1.10.27"
},
"peerDependencies": {
"@interactjs/utils": "1.10.27"
}
},
"node_modules/@interactjs/auto-start": {
"version": "1.10.27",
"resolved": "https://registry.npmjs.org/@interactjs/auto-start/-/auto-start-1.10.27.tgz",
"integrity": "sha512-ECLBO/nxmaF1knncJKIE5F7la3KKRgEkn0Cu2JTPOYj9xy/LpfYElo3wkRHsodgOqF651nR70GK2/IzPR2lO9A==",
"optionalDependencies": {
"@interactjs/interact": "1.10.27"
},
"peerDependencies": {
"@interactjs/core": "1.10.27",
"@interactjs/utils": "1.10.27"
}
},
"node_modules/@interactjs/core": {
"version": "1.10.27",
"resolved": "https://registry.npmjs.org/@interactjs/core/-/core-1.10.27.tgz",
"integrity": "sha512-SliUr/3ZbLAdED8LokzYzWHWMdCB5Cq+UnpXuRy+BIod1j97m4IUFf/D1iIKUBBjBcucgXbz28z96WnenVCB7Q==",
"peerDependencies": {
"@interactjs/utils": "1.10.27"
}
},
"node_modules/@interactjs/dev-tools": {
"version": "1.10.27",
"resolved": "https://registry.npmjs.org/@interactjs/dev-tools/-/dev-tools-1.10.27.tgz",
"integrity": "sha512-YolmBwRaKH1gWbvyLeV3m5QSwtD38lOZnCBA87PCAlcd9PQAC2gb03fEPeEyD336bE20oLB8f0WZt4Wre+afiw==",
"optionalDependencies": {
"@interactjs/interact": "1.10.27",
"vue": "3"
},
"peerDependencies": {
"@interactjs/modifiers": "1.10.27",
"@interactjs/utils": "1.10.27"
}
},
"node_modules/@interactjs/interact": {
"version": "1.10.27",
"resolved": "https://registry.npmjs.org/@interactjs/interact/-/interact-1.10.27.tgz",
"integrity": "sha512-XdH3A2UUzjEFGGJgFuJlhiz99tE8jB8xNh/DmnoMuL6uOQPxNA+sWRnzEVjG0+zY2P3/dbhEpi4Cn3FLPzydwA==",
"dependencies": {
"@interactjs/core": "1.10.27",
"@interactjs/utils": "1.10.27"
}
},
"node_modules/@interactjs/modifiers": {
"version": "1.10.27",
"resolved": "https://registry.npmjs.org/@interactjs/modifiers/-/modifiers-1.10.27.tgz",
"integrity": "sha512-ei/qfoQ+9/8k6WzNzdNqHI6cWkIV576N4Ap16r5CoqOWwhA6Xzj3OMHf1g0t1O4eSq2HdJsVJn3eLNfw9HsbeQ==",
"dependencies": {
"@interactjs/snappers": "1.10.27"
},
"optionalDependencies": {
"@interactjs/interact": "1.10.27"
},
"peerDependencies": {
"@interactjs/core": "1.10.27",
"@interactjs/utils": "1.10.27"
}
},
"node_modules/@interactjs/snappers": {
"version": "1.10.27",
"resolved": "https://registry.npmjs.org/@interactjs/snappers/-/snappers-1.10.27.tgz",
"integrity": "sha512-HZLZ0XSi6HI08OmTv/HKG6AltQoaKAALLQ+KDW92utj3XSgw7oren0KsWUKPhaPg3Av7R1jFQd08s+uafqIlLw==",
"optionalDependencies": {
"@interactjs/interact": "1.10.27"
},
"peerDependencies": {
"@interactjs/utils": "1.10.27"
}
},
"node_modules/@interactjs/utils": {
"version": "1.10.27",
"resolved": "https://registry.npmjs.org/@interactjs/utils/-/utils-1.10.27.tgz",
"integrity": "sha512-+qfLOio2OxQqg1cXSnRaCl+N8MQDQLDS9w+aOGxH8YLAhIMyt7Asxx/46//sT8orgsi16pmlBPtngPHT9s8zKw=="
},
"node_modules/@intlify/core-base": {
"version": "9.10.2",
"resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.10.2.tgz",
@ -1436,6 +1533,11 @@
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
"dev": true
},
"node_modules/batch-processor": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/batch-processor/-/batch-processor-1.0.0.tgz",
"integrity": "sha512-xoLQD8gmmR32MeuBHgH0Tzd5PuSZx71ZsbhVxOCRbgktZEPe4SQy7s9Z50uPp0F/f7iw2XmkHN2xkgbMfckMDA=="
},
"node_modules/binary-extensions": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz",
@ -2098,6 +2200,14 @@
}
}
},
"node_modules/element-resize-detector": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/element-resize-detector/-/element-resize-detector-1.2.4.tgz",
"integrity": "sha512-Fl5Ftk6WwXE0wqCgNoseKWndjzZlDCwuPTcoVZfCP9R3EHQF8qUtr3YUPNETegRBOKqQKPW3n4kiIWngGi8tKg==",
"dependencies": {
"batch-processor": "1.0.0"
}
},
"node_modules/emoji-regex": {
"version": "9.2.2",
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
@ -5114,6 +5224,21 @@
"eslint": ">=6.0.0"
}
},
"node_modules/vue-grid-layout-v3": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/vue-grid-layout-v3/-/vue-grid-layout-v3-3.1.2.tgz",
"integrity": "sha512-4VB6pel2OklFNnFSUVg4wXwx/fKuKKvnhleLyscwk5ay7aEFk+HghcVKbComg+EgMvjuPzZ7hgIES3FlxuVK6w==",
"dependencies": {
"@interactjs/actions": "^1.10.27",
"@interactjs/auto-scroll": "^1.10.27",
"@interactjs/auto-start": "^1.10.27",
"@interactjs/dev-tools": "^1.10.27",
"@interactjs/interact": "^1.10.27",
"@interactjs/modifiers": "^1.10.27",
"element-resize-detector": "^1.2.4",
"mitt": "^3.0.1"
}
},
"node_modules/vue-i18n": {
"version": "9.10.2",
"resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.10.2.tgz",

View File

@ -23,6 +23,7 @@
"pinia": "^2.1.7",
"vue": "^3.4.21",
"vue-draggable-plus": "^0.4.1",
"vue-grid-layout-v3": "^3.1.2",
"vue-i18n": "^9.10.2",
"vue-router": "^4.3.0",
"vuetify": "^3.6.5"

View File

@ -37,6 +37,7 @@ export default {
wifi: "Wi-Fi",
about: "About",
uart: "Uart",
at: "AT Command",
feedback: "Feedback",
close: "Close",
update: "Update",

View File

@ -37,6 +37,7 @@ export default {
wifi: "Wi-Fi",
about: "À propos",
uart: "Uart",
at: "Commande AT",
feedback: "Feedback",
close: "Fermer",
update: "Mise à jour",

View File

@ -37,6 +37,7 @@ export default {
wifi: "Wi-Fi",
about: "关于",
uart: "UART",
at: "AT命令",
feedback: "反馈",
close: "关闭",
update: "更新",

View File

@ -5,6 +5,7 @@ import About from '@/views/About.vue'
import Uart from '@/views/Uart.vue'
import Page404 from '@/views/404.vue'
import Update from '@/views/Update.vue'
import AtCommand from '@/views/AtCommand.vue'
import {translate} from "@/locales";
import {isOTAEnabled} from "@/composables/buildMode";
import {reactive, watch} from "vue";
@ -66,6 +67,10 @@ const router = createRouter({
path: '/uart:ext(.*)',
meta: { titleKey: 'page.uart' },
component: Uart,
}, {
path: '/at:ext(.*)',
meta: { titleKey: 'page.at' },
component: AtCommand,
}, {
path: '/feedback:ext(.*)',
meta: { titleKey: 'page.feedback' },

14
src/views/AtCommand.vue Normal file
View File

@ -0,0 +1,14 @@
<script setup lang="ts">
import { GridLayout, GridItem } from 'vue-grid-layout-v3'
</script>
<template>
<div class="">
</div>
</template>
<style scoped>
</style>

View File

@ -194,11 +194,14 @@ const menuItems: ComputedRef<Item[]> = computed(() => ([
const sideBarItems: ComputedRef<Item[]> = computed(() => {
const items: Item[] = [
{
name: translate("page.wifi"),
href: "/wifi",
}, {
name: translate("page.uart"),
href: "/uart",
}, {
name: translate("page.wifi"),
href: "/wifi",
name: translate("page.at"),
href: "/at",
}, {
name: translate("page.about"),
href: "/about",