agentworkshop 0.7.11 → 0.7.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.output/nitro.json +1 -1
- package/.output/public/_nuxt/{BLzCac9K2.js → CcwJ2mrD2.js} +1 -1
- package/.output/public/_nuxt/CvYfzHYz.js +1 -0
- package/.output/public/_nuxt/{B5CYgFAD.js → D2JyEL28.js} +4 -4
- package/.output/public/_nuxt/{CGx-mtWf.js → D8xY-Yjc.js} +1 -1
- package/.output/public/_nuxt/DaE5saZg.js +1 -0
- package/.output/public/_nuxt/Dsdy4Ua-.js +1 -0
- package/.output/public/_nuxt/{B8WV7GzS.js → E88a-JCG.js} +1 -1
- package/.output/public/_nuxt/bAFueD6a.js +1 -0
- package/.output/public/_nuxt/builds/latest.json +1 -1
- package/.output/public/_nuxt/builds/meta/54e22640-4fd0-4fee-9077-31d4d4bb7969.json +1 -0
- package/.output/public/_nuxt/dcw.rpqpOYQ8.css +1 -0
- package/.output/public/_nuxt/entry.Bv_GCmPP.css +1 -0
- package/.output/public/_nuxt/hb_ceMJP.js +1 -0
- package/.output/public/_nuxt/logs.BS1sb41K.css +1 -0
- package/.output/public/_nuxt/pages.BkE-AfIb.css +1 -0
- package/.output/public/_nuxt/permissions.DTRtZeTw.css +1 -0
- package/.output/public/_nuxt/plugins.BcSEwwGb.css +1 -0
- package/.output/public/_nuxt/tokens.rW1xHxRW.css +1 -0
- package/.output/public/_nuxt/workshop.CbymC2LY.css +1 -0
- package/.output/server/chunks/_/nitro.mjs +772 -772
- package/.output/server/chunks/build/{dcw-DqjHrl5Z.mjs → dcw-B0dtiHFG.mjs} +43 -43
- package/.output/server/chunks/build/dcw-B0dtiHFG.mjs.map +1 -0
- package/.output/server/chunks/build/{default-YcUHc1Ev.mjs → default-DdV642BY.mjs} +23 -2
- package/.output/server/chunks/build/{default-YcUHc1Ev.mjs.map → default-DdV642BY.mjs.map} +1 -1
- package/.output/server/chunks/build/{logs-Co854R4y.mjs → logs-Crf6f1IC.mjs} +34 -34
- package/.output/server/chunks/build/{logs-Co854R4y.mjs.map → logs-Crf6f1IC.mjs.map} +1 -1
- package/.output/server/chunks/build/{pages-DPC1Vp6w.mjs → pages-BmRUbGUi.mjs} +28 -18
- package/.output/server/chunks/build/pages-BmRUbGUi.mjs.map +1 -0
- package/.output/server/chunks/build/{permissions-Eu9e6hfZ.mjs → permissions-CxEgXic0.mjs} +12 -12
- package/.output/server/chunks/build/{permissions-Eu9e6hfZ.mjs.map → permissions-CxEgXic0.mjs.map} +1 -1
- package/.output/server/chunks/build/{plugins-D84mvK9G.mjs → plugins-wLIKHcIE.mjs} +17 -17
- package/.output/server/chunks/build/plugins-wLIKHcIE.mjs.map +1 -0
- package/.output/server/chunks/build/{tokens-CZpnEDVf.mjs → tokens-BKLzcdMg.mjs} +44 -75
- package/.output/server/chunks/build/tokens-BKLzcdMg.mjs.map +1 -0
- package/.output/server/chunks/build/{workshop-Crsai2Y9.mjs → workshop-CTcYDq2i.mjs} +21 -16
- package/.output/server/chunks/build/{workshop-Crsai2Y9.mjs.map → workshop-CTcYDq2i.mjs.map} +1 -1
- package/.output/server/chunks/routes/renderer.mjs +1 -1
- package/.output/server/chunks/virtual/entry.mjs +12 -10
- package/.output/server/chunks/virtual/precomputed.mjs +1 -1
- package/.output/server/package.json +1 -1
- package/app/assets/css/main.css +161 -0
- package/app/components/AwChart.vue +12 -2
- package/app/composables/useRouteMeta.ts +8 -1
- package/app/pages/dcw/index.vue +1079 -1079
- package/app/pages/index.vue +7 -2
- package/app/pages/logs/index.vue +621 -621
- package/app/pages/permissions/index.vue +330 -327
- package/app/pages/plugins/index.vue +6 -3
- package/app/pages/tokens.vue +9 -13
- package/app/pages/workshop/index.vue +3 -1
- package/i18n/locales/en.ts +1944 -1943
- package/i18n/locales/zh-CN.ts +1943 -1942
- package/package.json +1 -1
- package/scripts/_dbg-kicker-check.mjs +11 -0
- package/scripts/_dbg-perms-e2e.mjs +3 -3
- package/scripts/_dbg-plugins-e2e.mjs +1 -1
- package/scripts/_dbg-swatch-check.mjs +10 -0
- package/scripts/_dbg-ui-shots.mjs +28 -0
- package/server/data/dcw-rollback.json +6 -6
- package/server/data/dcws.json +345 -345
- package/.output/public/_nuxt/Bckshc9V.js +0 -1
- package/.output/public/_nuxt/D7jiode2.js +0 -1
- package/.output/public/_nuxt/DEaY_uvR.js +0 -1
- package/.output/public/_nuxt/builds/meta/88479a5b-ce6a-400f-9737-1cc9f54b1fe5.json +0 -1
- package/.output/public/_nuxt/d_Sz9KGm.js +0 -1
- package/.output/public/_nuxt/dcw.DcDjwvqv.css +0 -1
- package/.output/public/_nuxt/entry.B03HBJGC.css +0 -1
- package/.output/public/_nuxt/logs.BO-BSyjm.css +0 -1
- package/.output/public/_nuxt/pages.CytEOfUs.css +0 -1
- package/.output/public/_nuxt/permissions.CwZo6t1V.css +0 -1
- package/.output/public/_nuxt/plugins.Clsky_kl.css +0 -1
- package/.output/public/_nuxt/tJuVvBSl.js +0 -1
- package/.output/public/_nuxt/tokens.BPLe9ioQ.css +0 -1
- package/.output/public/_nuxt/workshop.BIdoGfoC.css +0 -1
- package/.output/server/chunks/build/dcw-DqjHrl5Z.mjs.map +0 -1
- package/.output/server/chunks/build/pages-DPC1Vp6w.mjs.map +0 -1
- package/.output/server/chunks/build/plugins-D84mvK9G.mjs.map +0 -1
- package/.output/server/chunks/build/tokens-CZpnEDVf.mjs.map +0 -1
package/app/assets/css/main.css
CHANGED
|
@@ -1255,3 +1255,164 @@ ul.task-list {
|
|
|
1255
1255
|
animation-duration: 200ms !important;
|
|
1256
1256
|
}
|
|
1257
1257
|
}
|
|
1258
|
+
|
|
1259
|
+
/* ============================================================
|
|
1260
|
+
* Warm Editorial · v2 polish(0.7.12)
|
|
1261
|
+
* 评审驱动的五笔:图表色板归位 / 表格系统细化 / 空态组件 / 页眉归队 / 动效补全。
|
|
1262
|
+
* 原则不变:transform/opacity only;reduced-motion 收敛;反 AI 味。
|
|
1263
|
+
* ============================================================ */
|
|
1264
|
+
|
|
1265
|
+
:root {
|
|
1266
|
+
/* 图表调色板:暖纸体系的同类色序(替代 ECharts 默认荧光绿/蓝绿琥珀三连) */
|
|
1267
|
+
--chart-1: #4a6b57; /* 墨绿 —— 首序 */
|
|
1268
|
+
--chart-2: #8aa07c; /* 苔绿 */
|
|
1269
|
+
--chart-3: #c9a26a; /* 琥珀纸 */
|
|
1270
|
+
--chart-4: #b3714f; /* 陶赭 */
|
|
1271
|
+
--chart-5: #6f8296; /* 青灰 */
|
|
1272
|
+
--chart-track: color-mix(in srgb, var(--ink) 8%, transparent);
|
|
1273
|
+
|
|
1274
|
+
/* 动效时长刻度(animate 规范:UI <300ms;hover 100-160;浮层 150-250) */
|
|
1275
|
+
--dur-press: 120ms;
|
|
1276
|
+
--dur-control: 160ms;
|
|
1277
|
+
--dur-overlay: 220ms;
|
|
1278
|
+
}
|
|
1279
|
+
|
|
1280
|
+
/* ── 图表:坐标轴/图例融入油墨体系;数据序用暖纸色板 ── */
|
|
1281
|
+
.aw-chart .ant-table,
|
|
1282
|
+
.aw-chart text {
|
|
1283
|
+
font-family: var(--font-body);
|
|
1284
|
+
}
|
|
1285
|
+
|
|
1286
|
+
/* ── 表格系统细化:数字等宽 / 行内操作渐显 / 表头字距 ── */
|
|
1287
|
+
.ant-table .ant-table-cell {
|
|
1288
|
+
font-variant-numeric: tabular-nums;
|
|
1289
|
+
}
|
|
1290
|
+
|
|
1291
|
+
.ant-table .ant-table-tbody > tr {
|
|
1292
|
+
transition: background-color var(--transition-fast);
|
|
1293
|
+
}
|
|
1294
|
+
|
|
1295
|
+
/* 行内操作默认半隐,行悬停渐显(降低常驻视觉噪音;触屏/键盘可达性不受影响) */
|
|
1296
|
+
@media (hover: hover) and (pointer: fine) {
|
|
1297
|
+
.ant-table .ant-table-tbody .row-quiet {
|
|
1298
|
+
opacity: 0.45;
|
|
1299
|
+
transition: opacity var(--transition-fast);
|
|
1300
|
+
}
|
|
1301
|
+
|
|
1302
|
+
.ant-table .ant-table-tbody > tr:hover .row-quiet,
|
|
1303
|
+
.ant-table .ant-table-tbody > tr:focus-within .row-quiet {
|
|
1304
|
+
opacity: 1;
|
|
1305
|
+
}
|
|
1306
|
+
}
|
|
1307
|
+
|
|
1308
|
+
/* ── 空态:细线一道 + 衬线一句 + 导语(拒绝大块剪影图形) ── */
|
|
1309
|
+
.aw-empty {
|
|
1310
|
+
display: flex;
|
|
1311
|
+
flex-direction: column;
|
|
1312
|
+
gap: 10px;
|
|
1313
|
+
align-items: center;
|
|
1314
|
+
padding: 72px 0;
|
|
1315
|
+
text-align: center;
|
|
1316
|
+
}
|
|
1317
|
+
|
|
1318
|
+
.aw-empty::before {
|
|
1319
|
+
content: '';
|
|
1320
|
+
width: 44px;
|
|
1321
|
+
height: 1px;
|
|
1322
|
+
background: var(--ink-fainter);
|
|
1323
|
+
}
|
|
1324
|
+
|
|
1325
|
+
.aw-empty .aw-empty-title {
|
|
1326
|
+
font-family: var(--font-display);
|
|
1327
|
+
font-size: 19px;
|
|
1328
|
+
color: var(--ink-soft);
|
|
1329
|
+
}
|
|
1330
|
+
|
|
1331
|
+
.aw-empty .aw-empty-sub {
|
|
1332
|
+
max-width: 46ch;
|
|
1333
|
+
font-size: 12.5px;
|
|
1334
|
+
color: var(--ink-faint);
|
|
1335
|
+
}
|
|
1336
|
+
|
|
1337
|
+
/* ── 状态呼吸点:运行中/live 信号(2s 缓呼吸;reduced-motion 静止) ── */
|
|
1338
|
+
.aw-live-dot {
|
|
1339
|
+
display: inline-block;
|
|
1340
|
+
width: 7px;
|
|
1341
|
+
height: 7px;
|
|
1342
|
+
margin-right: 6px;
|
|
1343
|
+
vertical-align: 1px;
|
|
1344
|
+
border-radius: 50%;
|
|
1345
|
+
background: var(--tone-live-dot, #b9770e);
|
|
1346
|
+
}
|
|
1347
|
+
|
|
1348
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
1349
|
+
.aw-live-dot {
|
|
1350
|
+
animation: aw-breathe 2.2s ease-in-out infinite;
|
|
1351
|
+
}
|
|
1352
|
+
|
|
1353
|
+
@keyframes aw-breathe {
|
|
1354
|
+
0%, 100% { opacity: 1; }
|
|
1355
|
+
50% { opacity: 0.35; }
|
|
1356
|
+
}
|
|
1357
|
+
}
|
|
1358
|
+
|
|
1359
|
+
/* ── 卡片悬停抬升:统一递给所有 .aw-liftable(4px 上移 + hairline 转墨) ── */
|
|
1360
|
+
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
|
|
1361
|
+
.aw-liftable {
|
|
1362
|
+
transition:
|
|
1363
|
+
transform var(--dur-control) var(--ease-out-quart),
|
|
1364
|
+
border-color var(--transition-fast),
|
|
1365
|
+
box-shadow var(--dur-control) var(--ease-out-quart);
|
|
1366
|
+
}
|
|
1367
|
+
|
|
1368
|
+
.aw-liftable:hover {
|
|
1369
|
+
transform: translateY(-3px);
|
|
1370
|
+
border-color: color-mix(in srgb, var(--ink) 24%, transparent);
|
|
1371
|
+
box-shadow: 0 6px 18px rgb(12 10 9 / 7%);
|
|
1372
|
+
}
|
|
1373
|
+
}
|
|
1374
|
+
|
|
1375
|
+
/* ── 页面进场编排的网格扩展:stagger 之前只覆盖 6 个子元素,补到 12(卡片墙/表格页) ── */
|
|
1376
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
1377
|
+
.aw-stagger > :nth-child(7) { animation-delay: 0.3s; }
|
|
1378
|
+
.aw-stagger > :nth-child(8) { animation-delay: 0.35s; }
|
|
1379
|
+
.aw-stagger > :nth-child(9) { animation-delay: 0.4s; }
|
|
1380
|
+
.aw-stagger > :nth-child(10) { animation-delay: 0.45s; }
|
|
1381
|
+
.aw-stagger > :nth-child(11) { animation-delay: 0.5s; }
|
|
1382
|
+
.aw-stagger > :nth-child(12) { animation-delay: 0.55s; }
|
|
1383
|
+
}
|
|
1384
|
+
|
|
1385
|
+
/* ── 表头对齐:左对齐与正文一致(数字列右对齐由页面按列声明) ── */
|
|
1386
|
+
.ant-table .ant-table-thead > tr > th {
|
|
1387
|
+
text-align: left;
|
|
1388
|
+
}
|
|
1389
|
+
|
|
1390
|
+
/* ── 空表占位:替换 ant 默认黑色团状图形为细线风格 ── */
|
|
1391
|
+
.ant-empty-image {
|
|
1392
|
+
display: flex;
|
|
1393
|
+
justify-content: center;
|
|
1394
|
+
}
|
|
1395
|
+
|
|
1396
|
+
.ant-empty-image svg {
|
|
1397
|
+
width: 44px;
|
|
1398
|
+
height: 44px;
|
|
1399
|
+
fill: none;
|
|
1400
|
+
stroke: var(--ink-fainter);
|
|
1401
|
+
stroke-width: 1.25;
|
|
1402
|
+
opacity: 0.8;
|
|
1403
|
+
}
|
|
1404
|
+
|
|
1405
|
+
.ant-empty-description {
|
|
1406
|
+
color: var(--ink-faint);
|
|
1407
|
+
font-size: 12.5px;
|
|
1408
|
+
}
|
|
1409
|
+
|
|
1410
|
+
/* ── tokens 吊销:安静墨灰,悬停转红(红色只留给确认瞬间) ── */
|
|
1411
|
+
.tok-revoke {
|
|
1412
|
+
color: var(--ink-faint) !important;
|
|
1413
|
+
transition: color var(--transition-fast);
|
|
1414
|
+
}
|
|
1415
|
+
|
|
1416
|
+
.tok-revoke:hover {
|
|
1417
|
+
color: var(--tone-danger-dot, #c25a4e) !important;
|
|
1418
|
+
}
|
|
@@ -10,6 +10,7 @@ import {
|
|
|
10
10
|
TooltipComponent,
|
|
11
11
|
} from 'echarts/components'
|
|
12
12
|
import VChart from 'vue-echarts'
|
|
13
|
+
import { computed } from 'vue'
|
|
13
14
|
import type { PropType } from 'vue'
|
|
14
15
|
import type { EChartsOption } from 'echarts'
|
|
15
16
|
|
|
@@ -27,18 +28,27 @@ use([
|
|
|
27
28
|
DataZoomComponent,
|
|
28
29
|
])
|
|
29
30
|
|
|
30
|
-
|
|
31
|
+
/** Warm Editorial 图表色序(替代 ECharts 默认荧光绿/蓝;与 main.css --chart-* 同源) */
|
|
32
|
+
const EDITORIAL_PALETTE = ['#4a6b57', '#8aa07c', '#c9a26a', '#b3714f', '#6f8296', '#4e4e4e']
|
|
33
|
+
|
|
34
|
+
const props = defineProps({
|
|
31
35
|
option: {
|
|
32
36
|
type: Object as PropType<EChartsOption>,
|
|
33
37
|
required: true,
|
|
34
38
|
},
|
|
35
39
|
})
|
|
40
|
+
|
|
41
|
+
// 未显式给 color 的图表统一走编辑色板;给了的尊重页面意图
|
|
42
|
+
const merged = computed<EChartsOption>(() => ({
|
|
43
|
+
color: EDITORIAL_PALETTE,
|
|
44
|
+
...props.option,
|
|
45
|
+
}))
|
|
36
46
|
</script>
|
|
37
47
|
|
|
38
48
|
<template>
|
|
39
49
|
<VChart
|
|
40
50
|
v-bind="$attrs"
|
|
41
|
-
:option="
|
|
51
|
+
:option="merged"
|
|
42
52
|
autoresize
|
|
43
53
|
/>
|
|
44
54
|
</template>
|
|
@@ -26,6 +26,11 @@ export function useRouteMeta() {
|
|
|
26
26
|
'/workshop/channel-templates': { key: 'meta.ctpl', icon: 'i-tabler-layout-grid-add' },
|
|
27
27
|
'/town': { key: 'menu.town', icon: 'i-tabler-map-2' },
|
|
28
28
|
'/tokens': { key: 'menu.tokens', icon: 'i-tabler-key' },
|
|
29
|
+
'/daq': { key: 'menu.daq', icon: 'i-tabler-activity' },
|
|
30
|
+
'/dcw': { key: 'menu.dcw', icon: 'i-tabler-settings-automation' },
|
|
31
|
+
'/logs': { key: 'menu.logs', icon: 'i-tabler-list-details' },
|
|
32
|
+
'/permissions': { key: 'menu.permissions', icon: 'i-tabler-shield-lock' },
|
|
33
|
+
'/plugins': { key: 'menu.plugins', icon: 'i-tabler-puzzle' },
|
|
29
34
|
'/users': { key: 'menu.users', icon: 'i-tabler-users-group' },
|
|
30
35
|
'/monitor': { key: 'menu.monitor', icon: 'i-tabler-cpu' },
|
|
31
36
|
'/settings': { key: 'menu.settings', icon: 'i-tabler-settings' },
|
|
@@ -43,7 +48,9 @@ export function useRouteMeta() {
|
|
|
43
48
|
return { title: name ?? `${t('header.workspace')} ${id.slice(0, 6)}`, icon: 'i-tabler-console' }
|
|
44
49
|
}
|
|
45
50
|
|
|
46
|
-
|
|
51
|
+
// 单段动态路径(daqs/dcws 等)取末段;纯 slug 至少首字母大写,不再裸显示
|
|
52
|
+
const last = path.split('/').filter(Boolean).pop() ?? '·'
|
|
53
|
+
return { title: last.charAt(0).toUpperCase() + last.slice(1), icon: 'i-tabler-point' }
|
|
47
54
|
}
|
|
48
55
|
|
|
49
56
|
return { metaFor }
|