新增AE代理按钮,支持多语言,点击新窗口打开内网地址

This commit is contained in:
2026-07-29 18:29:49 +08:00
parent 5406b14b5c
commit 7151501f76
5 changed files with 52 additions and 47 deletions
+8 -26
View File
@@ -1281,9 +1281,6 @@
"arm64"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1301,9 +1298,6 @@
"arm64"
],
"dev": true,
"libc": [
"musl"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1321,9 +1315,6 @@
"ppc64"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1341,9 +1332,6 @@
"s390x"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1361,9 +1349,6 @@
"x64"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MIT",
"optional": true,
"os": [
@@ -1381,9 +1366,6 @@
"x64"
],
"dev": true,
"libc": [
"musl"
],
"license": "MIT",
"optional": true,
"os": [
@@ -2557,16 +2539,16 @@
}
},
"node_modules/form-data": {
"version": "4.0.5",
"resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.5.tgz",
"integrity": "sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==",
"version": "4.0.6",
"resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.6.tgz",
"integrity": "sha512-vKatAh4SlVfgbv+YtmhiRjhEMJsYpsG1Y2rMQtR+SVSbytsSD1YGzDIcrAJmdFec88u/+VoGmxnl+80gL1tRCQ==",
"license": "MIT",
"dependencies": {
"asynckit": "^0.4.0",
"combined-stream": "^1.0.8",
"es-set-tostringtag": "^2.1.0",
"hasown": "^2.0.2",
"mime-types": "^2.1.12"
"hasown": "^2.0.4",
"mime-types": "^2.1.35"
},
"engines": {
"node": ">= 6"
@@ -2715,9 +2697,9 @@
}
},
"node_modules/hasown": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
"integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.4.tgz",
"integrity": "sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==",
"license": "MIT",
"dependencies": {
"function-bind": "^1.1.2"
@@ -59,7 +59,7 @@ const navItems = computed(() => [
{ label: t("appname.purchase"), to: "/purchase" },
{ label: t("appname.work_order"), to: "/work_order" },
{ label: t("appname.warehouse"), to: "/warehouse" },
{ label: t("appname.ae_proxy"), href: "http://192.168.3.116:8187/asteamobile/", external: true },
]);
</script>
@@ -87,14 +87,24 @@ const navItems = computed(() => [
<!-- Desktop Nav -->
<nav class="hidden flex-1 items-center gap-1 md:flex">
<RouterLink
v-for="item in navItems"
:key="item.to"
:to="item.to"
:class="[normalClass, isActive(item.to) && activeClass]"
>
{{ item.label }}
</RouterLink>
<template v-for="item in navItems" :key="item.to || item.href">
<a
v-if="item.external"
:href="item.href"
target="_blank"
rel="noopener"
:class="normalClass"
>
{{ item.label }}
</a>
<RouterLink
v-else
:to="item.to"
:class="[normalClass, isActive(item.to) && activeClass]"
>
{{ item.label }}
</RouterLink>
</template>
</nav>
<!-- Right actions -->
@@ -284,15 +294,26 @@ const navItems = computed(() => [
class="border-t border-gray-200 bg-white px-4 pb-4 pt-2 dark:border-dk-muted dark:bg-dk-base md:hidden"
>
<nav class="flex flex-col gap-1">
<RouterLink
v-for="item in navItems"
:key="item.to"
:to="item.to"
:class="['rounded-md px-3 py-2 text-sm font-medium text-gray-600 hover:bg-gray-100 dark:text-dk-subtle dark:hover:bg-dk-card', isActive(item.to) && 'bg-blue-50 text-blue-600 dark:bg-dk-card dark:text-blue-400']"
@click="mobileMenuOpen = false"
>
{{ item.label }}
</RouterLink>
<template v-for="item in navItems" :key="item.to || item.href">
<a
v-if="item.external"
:href="item.href"
target="_blank"
rel="noopener"
class="rounded-md px-3 py-2 text-sm font-medium text-gray-600 hover:bg-gray-100 dark:text-dk-subtle dark:hover:bg-dk-card"
@click="mobileMenuOpen = false"
>
{{ item.label }}
</a>
<RouterLink
v-else
:to="item.to"
:class="['rounded-md px-3 py-2 text-sm font-medium text-gray-600 hover:bg-gray-100 dark:text-dk-subtle dark:hover:bg-dk-card', isActive(item.to) && 'bg-blue-50 text-blue-600 dark:bg-dk-card dark:text-blue-400']"
@click="mobileMenuOpen = false"
>
{{ item.label }}
</RouterLink>
</template>
</nav>
<hr class="my-3 border-gray-200 dark:border-dk-muted" />
<div class="flex items-center gap-2">
+2 -1
View File
@@ -37,7 +37,8 @@
"warehouse_items": "Items Overview",
"work_order": "Work Order",
"calendar": "Calendar",
"aichat": "AI Assistant"
"aichat": "AI Assistant",
"ae_proxy": "AE Proxy"
},
"aichat": {
"title": "AI Assistant",
+2 -1
View File
@@ -37,7 +37,8 @@
"warehouse_items": "物品总览",
"work_order": "工单",
"calendar": "日历",
"aichat": "AI 助手"
"aichat": "AI 助手",
"ae_proxy": "AE代理"
},
"aichat": {
"title": "AI 助手",
+1 -1
View File
@@ -42,7 +42,7 @@ export default defineConfig({
server: {
proxy: {
"/api": {
target: "http://127.0.0.1:8080",
target: "http://192.168.13.105",
changeOrigin: true,
},
},