gs-eant-comp 3.3.0 → 3.3.2
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/dist/AiCenter-lVo4-j0u.js +298 -0
- package/dist/{NotificationCenter-DYK_tiZk.js → CommonNotificationCenter-CevII2_B.js} +20 -20
- package/dist/{OrderCenter-DYxx0AVB.js → CommonOrderCenter-BpQL3QpU.js} +10 -10
- package/dist/ContainerManager-Cm2cAxLn.js +536 -0
- package/dist/{ActivityFeed-DI9hNxV4.js → MobileActivityFeed-CgSNUDdr.js} +11 -11
- package/dist/{BannerCarousel-CC_uykla.js → MobileBanner-Bsz39Sk2.js} +11 -11
- package/dist/MobileHomeConfig-D8nuNVH0.js +212 -0
- package/dist/{NoticeList-gioopR6r.js → MobileNoticeList-78HOxabl.js} +12 -12
- package/dist/{QuickActions-BdAibhSL.js → MobileQuickActions-gbEi_P0b.js} +7 -7
- package/dist/{QuickMenu-VY9bW-XU.js → MobileQuickMenu-DjRdanKb.js} +13 -13
- package/dist/{ShoppingCart-Bv7KU5Qh.js → MobileShoppingCart-c0W6yhjj.js} +25 -25
- package/dist/{StatCard-DkTQeLrf.js → MobileStatCard-DO_o0V-r.js} +18 -18
- package/dist/{TodoList-Bskuy_aU.js → MobileTodoList-Do11D8qm.js} +12 -12
- package/dist/{ActivityTable-C6yju1oZ.js → PcActivityTable-BTmxzVEs.js} +3 -3
- package/dist/PcAiSummary-Ba8XA8mg.js +286 -0
- package/dist/PcHomeConfig-mb_y3sS3.js +59 -0
- package/dist/{QuickActionsPanel-CU778wqz.js → PcQuickActions-DYLjB2_G.js} +9 -9
- package/dist/{StatCards-BWasvRXQ.js → PcStatCards-Dz0dK1tS.js} +13 -13
- package/dist/PcWorkspaceEntry-DFJIHAt9.js +45 -0
- package/dist/gs-eant-comp.css +1 -1
- package/dist/gs-eant-comp.js +22 -27
- package/dist/gs-eant-comp.umd.cjs +4 -4
- package/dist/index-ReaL9JbY.js +10071 -0
- package/package.json +2 -1
- package/dist/index--CCglFst.js +0 -9683
|
@@ -0,0 +1,298 @@
|
|
|
1
|
+
import { ref as k, computed as x, resolveComponent as m, createElementBlock as d, openBlock as c, createElementVNode as t, createVNode as i, withCtx as o, createTextVNode as a, Fragment as b, renderList as f, toDisplayString as l, normalizeClass as N, normalizeStyle as V, createStaticVNode as z } from "vue";
|
|
2
|
+
import { message as B } from "ant-design-vue";
|
|
3
|
+
import { _ as L } from "./index-ReaL9JbY.js";
|
|
4
|
+
const E = { class: "ai-center" }, F = { class: "ai-center-hero" }, O = { class: "ai-center-hero-actions" }, P = { class: "row g-3 mt-1" }, Q = { class: "ai-stat-card" }, D = { class: "d-flex align-items-center justify-content-between mb-3" }, R = { class: "small text-muted" }, U = { class: "ai-stat-value" }, q = { class: "small text-muted mt-2" }, G = { class: "ai-center-layout mt-3" }, H = { class: "ai-center-main" }, J = { class: "ai-panel" }, K = { class: "d-flex align-items-center justify-content-between gap-3 mb-3" }, W = { class: "ai-task-list" }, X = ["onClick"], Y = { class: "d-flex align-items-start justify-content-between gap-3" }, Z = { class: "min-w-0" }, tt = { class: "fw-semibold text-truncate" }, et = { class: "small text-muted mt-1" }, st = { class: "small text-muted mt-3" }, lt = { class: "ai-panel mt-3" }, it = { class: "d-flex align-items-center justify-content-between gap-3 mb-3" }, ot = { class: "mb-0" }, at = { class: "row g-3" }, nt = { class: "col-12 col-xl-7" }, dt = { class: "ai-result-card h-100" }, ct = { class: "d-flex align-items-center justify-content-between mb-3" }, rt = { class: "col-12 col-xl-5" }, ut = { class: "ai-result-card h-100" }, mt = { class: "text-muted mb-3" }, vt = { class: "ai-mini-chart d-flex align-items-end gap-2" }, pt = ["title"], _t = { class: "ai-center-side" }, bt = { class: "ai-panel" }, ft = { class: "ai-config-line" }, gt = { class: "d-flex gap-2 mt-3" }, yt = { class: "ai-panel mt-3" }, kt = { class: "d-flex flex-column gap-2" }, xt = { class: "fw-semibold" }, It = { class: "small text-muted" }, wt = /* @__PURE__ */ Object.assign({
|
|
5
|
+
name: "AiCenter"
|
|
6
|
+
}, {
|
|
7
|
+
__name: "AiCenter",
|
|
8
|
+
setup(At) {
|
|
9
|
+
const v = k("全部"), g = k("task-001"), I = ["全部", "运行中", "已完成", "待查看", "失败"], w = [
|
|
10
|
+
{ title: "运行中", value: "2", tag: "处理中", color: "blue", description: "AI 正在生成分析结果" },
|
|
11
|
+
{ title: "已完成", value: "18", tag: "本周", color: "green", description: "可查看的历史任务结果" },
|
|
12
|
+
{ title: "待查看", value: "3", tag: "提醒", color: "orange", description: "已完成但用户尚未查看" },
|
|
13
|
+
{ title: "失败任务", value: "1", tag: "需处理", color: "red", description: "接口异常或配置不可用" }
|
|
14
|
+
], p = [
|
|
15
|
+
{
|
|
16
|
+
id: "task-001",
|
|
17
|
+
title: "最近 7 天操作日志异常分析",
|
|
18
|
+
source: "AI 小助手",
|
|
19
|
+
time: "10:24",
|
|
20
|
+
status: "待查看",
|
|
21
|
+
color: "orange",
|
|
22
|
+
resultType: "表格 + 摘要",
|
|
23
|
+
summary: "识别夜间高频访问、权限变更和连续失败操作。",
|
|
24
|
+
detail: "本次分析发现 3 类风险线索,建议优先核查菜单管理、角色管理和接口管理相关记录。"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
id: "task-002",
|
|
28
|
+
title: "系统基础管理巡检报告",
|
|
29
|
+
source: "定时任务",
|
|
30
|
+
time: "09:42",
|
|
31
|
+
status: "已完成",
|
|
32
|
+
color: "green",
|
|
33
|
+
resultType: "报告",
|
|
34
|
+
summary: "汇总菜单、角色、用户、接口配置的健康状态。",
|
|
35
|
+
detail: "整体状态稳定,部分角色权限覆盖范围偏大,建议后续做一次权限边界核查。"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
id: "task-003",
|
|
39
|
+
title: "菜单访问热度统计",
|
|
40
|
+
source: "AI 指令库",
|
|
41
|
+
time: "昨天",
|
|
42
|
+
status: "已完成",
|
|
43
|
+
color: "green",
|
|
44
|
+
resultType: "图表",
|
|
45
|
+
summary: "按菜单聚合访问次数,生成访问热度分布。",
|
|
46
|
+
detail: "菜单管理和流程中心访问较集中,可作为后续首页快捷入口优化依据。"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
id: "task-004",
|
|
50
|
+
title: "SQL 查询任务:接口失败重试",
|
|
51
|
+
source: "AI 小助手",
|
|
52
|
+
time: "昨天",
|
|
53
|
+
status: "运行中",
|
|
54
|
+
color: "blue",
|
|
55
|
+
resultType: "SQL",
|
|
56
|
+
summary: "正在生成只读查询并预览结果。",
|
|
57
|
+
detail: "任务正在执行中,完成后将通过消息提醒通知用户查看。"
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
id: "task-005",
|
|
61
|
+
title: "Token 连接测试",
|
|
62
|
+
source: "配置中心",
|
|
63
|
+
time: "周一",
|
|
64
|
+
status: "失败",
|
|
65
|
+
color: "red",
|
|
66
|
+
resultType: "配置",
|
|
67
|
+
summary: "在线模型调用失败,需要检查 Token 或网络状态。",
|
|
68
|
+
detail: "当前 Token 连接异常,建议重新配置后执行连接测试。"
|
|
69
|
+
}
|
|
70
|
+
], A = [
|
|
71
|
+
{ title: "模块", dataIndex: "module", key: "module" },
|
|
72
|
+
{ title: "风险类型", dataIndex: "risk", key: "risk" },
|
|
73
|
+
{ title: "次数", dataIndex: "count", key: "count" },
|
|
74
|
+
{ title: "建议", dataIndex: "advice", key: "advice" }
|
|
75
|
+
], T = [
|
|
76
|
+
{ key: 1, module: "菜单管理", risk: "权限变更", count: 8, advice: "核查操作人" },
|
|
77
|
+
{ key: 2, module: "角色管理", risk: "高频访问", count: 13, advice: "确认访问来源" },
|
|
78
|
+
{ key: 3, module: "接口管理", risk: "失败重试", count: 6, advice: "检查接口状态" }
|
|
79
|
+
], C = [
|
|
80
|
+
{ label: "菜单", value: 72 },
|
|
81
|
+
{ label: "角色", value: 88 },
|
|
82
|
+
{ label: "用户", value: 46 },
|
|
83
|
+
{ label: "接口", value: 64 },
|
|
84
|
+
{ label: "流程", value: 58 }
|
|
85
|
+
], h = [
|
|
86
|
+
{ title: "任务结果管理", description: "查看 AI 产出的表格、图表和报告", icon: "icon-dashboard" },
|
|
87
|
+
{ title: "模型与 Token 配置", description: "维护在线模型和本地模型接入信息", icon: "icon-setting" },
|
|
88
|
+
{ title: "指令库联动", description: "承接 AI 小助手中的指令任务", icon: "icon-appstore" },
|
|
89
|
+
{ title: "消息提醒", description: "任务完成后通过铃铛通知用户", icon: "icon-bell" }
|
|
90
|
+
], $ = x(() => v.value === "全部" ? p : p.filter((n) => n.status === v.value)), y = x(() => p.find((n) => n.id === g.value) || p[0]), r = (n) => {
|
|
91
|
+
B.info(`${n}:当前为静态设计预览`);
|
|
92
|
+
};
|
|
93
|
+
return (n, e) => {
|
|
94
|
+
const u = m("a-button"), _ = m("a-tag"), j = m("a-segmented"), S = m("a-table"), M = m("a-icon");
|
|
95
|
+
return c(), d("div", E, [
|
|
96
|
+
t("section", F, [
|
|
97
|
+
e[8] || (e[8] = t("div", null, [
|
|
98
|
+
t("div", { class: "small text-muted mb-2" }, "AI 智能中心"),
|
|
99
|
+
t("h2", { class: "mb-2" }, "统一管理 AI 任务、结果与配置"),
|
|
100
|
+
t("p", { class: "mb-0 text-muted" }, " AI 小助手负责发起任务,消息提醒负责通知完成,这里负责查看结果、跟踪状态和维护接入配置。 ")
|
|
101
|
+
], -1)),
|
|
102
|
+
t("div", O, [
|
|
103
|
+
i(u, {
|
|
104
|
+
type: "primary",
|
|
105
|
+
onClick: e[0] || (e[0] = (s) => r("新建 AI 任务"))
|
|
106
|
+
}, {
|
|
107
|
+
default: o(() => [...e[6] || (e[6] = [
|
|
108
|
+
a(" 新建 AI 任务 ", -1)
|
|
109
|
+
])]),
|
|
110
|
+
_: 1
|
|
111
|
+
}),
|
|
112
|
+
i(u, {
|
|
113
|
+
onClick: e[1] || (e[1] = (s) => r("同步任务状态"))
|
|
114
|
+
}, {
|
|
115
|
+
default: o(() => [...e[7] || (e[7] = [
|
|
116
|
+
a(" 同步状态 ", -1)
|
|
117
|
+
])]),
|
|
118
|
+
_: 1
|
|
119
|
+
})
|
|
120
|
+
])
|
|
121
|
+
]),
|
|
122
|
+
t("section", P, [
|
|
123
|
+
(c(), d(b, null, f(w, (s) => t("div", {
|
|
124
|
+
key: s.title,
|
|
125
|
+
class: "col-6 col-xl-3"
|
|
126
|
+
}, [
|
|
127
|
+
t("div", Q, [
|
|
128
|
+
t("div", D, [
|
|
129
|
+
t("span", R, l(s.title), 1),
|
|
130
|
+
i(_, {
|
|
131
|
+
color: s.color
|
|
132
|
+
}, {
|
|
133
|
+
default: o(() => [
|
|
134
|
+
a(l(s.tag), 1)
|
|
135
|
+
]),
|
|
136
|
+
_: 2
|
|
137
|
+
}, 1032, ["color"])
|
|
138
|
+
]),
|
|
139
|
+
t("div", U, l(s.value), 1),
|
|
140
|
+
t("div", q, l(s.description), 1)
|
|
141
|
+
])
|
|
142
|
+
])), 64))
|
|
143
|
+
]),
|
|
144
|
+
t("section", G, [
|
|
145
|
+
t("main", H, [
|
|
146
|
+
t("div", J, [
|
|
147
|
+
t("div", K, [
|
|
148
|
+
e[9] || (e[9] = t("div", null, [
|
|
149
|
+
t("div", { class: "small text-muted" }, "任务列表"),
|
|
150
|
+
t("h4", { class: "mb-0" }, "AI 任务流")
|
|
151
|
+
], -1)),
|
|
152
|
+
i(j, {
|
|
153
|
+
value: v.value,
|
|
154
|
+
"onUpdate:value": e[2] || (e[2] = (s) => v.value = s),
|
|
155
|
+
options: I
|
|
156
|
+
}, null, 8, ["value"])
|
|
157
|
+
]),
|
|
158
|
+
t("div", W, [
|
|
159
|
+
(c(!0), d(b, null, f($.value, (s) => (c(), d("button", {
|
|
160
|
+
key: s.id,
|
|
161
|
+
class: N(["ai-task-item", { active: s.id === g.value }]),
|
|
162
|
+
onClick: (Tt) => g.value = s.id
|
|
163
|
+
}, [
|
|
164
|
+
t("div", Y, [
|
|
165
|
+
t("div", Z, [
|
|
166
|
+
t("div", tt, l(s.title), 1),
|
|
167
|
+
t("div", et, l(s.source) + " · " + l(s.time), 1)
|
|
168
|
+
]),
|
|
169
|
+
i(_, {
|
|
170
|
+
color: s.color
|
|
171
|
+
}, {
|
|
172
|
+
default: o(() => [
|
|
173
|
+
a(l(s.status), 1)
|
|
174
|
+
]),
|
|
175
|
+
_: 2
|
|
176
|
+
}, 1032, ["color"])
|
|
177
|
+
]),
|
|
178
|
+
t("div", st, l(s.summary), 1)
|
|
179
|
+
], 10, X))), 128))
|
|
180
|
+
])
|
|
181
|
+
]),
|
|
182
|
+
t("div", lt, [
|
|
183
|
+
t("div", it, [
|
|
184
|
+
t("div", null, [
|
|
185
|
+
e[10] || (e[10] = t("div", { class: "small text-muted" }, "结果预览", -1)),
|
|
186
|
+
t("h4", ot, l(y.value.title), 1)
|
|
187
|
+
]),
|
|
188
|
+
i(u, {
|
|
189
|
+
type: "link",
|
|
190
|
+
class: "px-0",
|
|
191
|
+
onClick: e[3] || (e[3] = (s) => r("查看完整结果"))
|
|
192
|
+
}, {
|
|
193
|
+
default: o(() => [...e[11] || (e[11] = [
|
|
194
|
+
a(" 查看完整结果 ", -1)
|
|
195
|
+
])]),
|
|
196
|
+
_: 1
|
|
197
|
+
})
|
|
198
|
+
]),
|
|
199
|
+
t("div", at, [
|
|
200
|
+
t("div", nt, [
|
|
201
|
+
t("div", dt, [
|
|
202
|
+
t("div", ct, [
|
|
203
|
+
e[12] || (e[12] = t("div", { class: "fw-semibold" }, "结构化数据", -1)),
|
|
204
|
+
i(_, null, {
|
|
205
|
+
default: o(() => [
|
|
206
|
+
a(l(y.value.resultType), 1)
|
|
207
|
+
]),
|
|
208
|
+
_: 1
|
|
209
|
+
})
|
|
210
|
+
]),
|
|
211
|
+
i(S, {
|
|
212
|
+
size: "small",
|
|
213
|
+
columns: A,
|
|
214
|
+
"data-source": T,
|
|
215
|
+
pagination: !1
|
|
216
|
+
})
|
|
217
|
+
])
|
|
218
|
+
]),
|
|
219
|
+
t("div", rt, [
|
|
220
|
+
t("div", ut, [
|
|
221
|
+
e[13] || (e[13] = t("div", { class: "fw-semibold mb-3" }, "分析摘要", -1)),
|
|
222
|
+
t("p", mt, l(y.value.detail), 1),
|
|
223
|
+
t("div", vt, [
|
|
224
|
+
(c(), d(b, null, f(C, (s) => t("span", {
|
|
225
|
+
key: s.label,
|
|
226
|
+
style: V({ height: s.value + "%" }),
|
|
227
|
+
title: `${s.label}:${s.value}`
|
|
228
|
+
}, null, 12, pt)), 64))
|
|
229
|
+
]),
|
|
230
|
+
e[14] || (e[14] = t("div", { class: "small text-muted mt-3" }, "后续可替换为真实图表、报告或跳转详情页。", -1))
|
|
231
|
+
])
|
|
232
|
+
])
|
|
233
|
+
])
|
|
234
|
+
])
|
|
235
|
+
]),
|
|
236
|
+
t("aside", _t, [
|
|
237
|
+
t("div", bt, [
|
|
238
|
+
e[19] || (e[19] = t("div", { class: "small text-muted" }, "接入配置", -1)),
|
|
239
|
+
e[20] || (e[20] = t("h4", { class: "mb-3" }, "API / Token", -1)),
|
|
240
|
+
t("div", ft, [
|
|
241
|
+
e[16] || (e[16] = t("span", null, "连接状态", -1)),
|
|
242
|
+
i(_, { color: "green" }, {
|
|
243
|
+
default: o(() => [...e[15] || (e[15] = [
|
|
244
|
+
a("已配置", -1)
|
|
245
|
+
])]),
|
|
246
|
+
_: 1
|
|
247
|
+
})
|
|
248
|
+
]),
|
|
249
|
+
e[21] || (e[21] = z('<div class="ai-config-line" data-v-56ec860c><span data-v-56ec860c>模型来源</span><strong data-v-56ec860c>online</strong></div><div class="ai-config-line" data-v-56ec860c><span data-v-56ec860c>默认模型</span><strong data-v-56ec860c>MiniMax-M2.7</strong></div><div class="ai-token-box mt-3" data-v-56ec860c><div class="small text-muted mb-2" data-v-56ec860c>Token</div><div class="fw-semibold" data-v-56ec860c>sk-••••••••••••••••••••</div></div>', 3)),
|
|
250
|
+
t("div", gt, [
|
|
251
|
+
i(u, {
|
|
252
|
+
block: "",
|
|
253
|
+
onClick: e[4] || (e[4] = (s) => r("测试连接"))
|
|
254
|
+
}, {
|
|
255
|
+
default: o(() => [...e[17] || (e[17] = [
|
|
256
|
+
a("测试连接", -1)
|
|
257
|
+
])]),
|
|
258
|
+
_: 1
|
|
259
|
+
}),
|
|
260
|
+
i(u, {
|
|
261
|
+
block: "",
|
|
262
|
+
type: "primary",
|
|
263
|
+
onClick: e[5] || (e[5] = (s) => r("编辑配置"))
|
|
264
|
+
}, {
|
|
265
|
+
default: o(() => [...e[18] || (e[18] = [
|
|
266
|
+
a("编辑配置", -1)
|
|
267
|
+
])]),
|
|
268
|
+
_: 1
|
|
269
|
+
})
|
|
270
|
+
])
|
|
271
|
+
]),
|
|
272
|
+
t("div", yt, [
|
|
273
|
+
e[22] || (e[22] = t("div", { class: "small text-muted" }, "能力入口", -1)),
|
|
274
|
+
e[23] || (e[23] = t("h4", { class: "mb-3" }, "可用能力", -1)),
|
|
275
|
+
t("div", kt, [
|
|
276
|
+
(c(), d(b, null, f(h, (s) => t("div", {
|
|
277
|
+
key: s.title,
|
|
278
|
+
class: "ai-capability-item"
|
|
279
|
+
}, [
|
|
280
|
+
i(M, {
|
|
281
|
+
type: s.icon
|
|
282
|
+
}, null, 8, ["type"]),
|
|
283
|
+
t("div", null, [
|
|
284
|
+
t("div", xt, l(s.title), 1),
|
|
285
|
+
t("div", It, l(s.description), 1)
|
|
286
|
+
])
|
|
287
|
+
])), 64))
|
|
288
|
+
])
|
|
289
|
+
])
|
|
290
|
+
])
|
|
291
|
+
])
|
|
292
|
+
]);
|
|
293
|
+
};
|
|
294
|
+
}
|
|
295
|
+
}), jt = /* @__PURE__ */ L(wt, [["__scopeId", "data-v-56ec860c"]]);
|
|
296
|
+
export {
|
|
297
|
+
jt as default
|
|
298
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ref as M, computed as d, createElementBlock as n, openBlock as r, createElementVNode as e, createStaticVNode as x, createCommentVNode as
|
|
2
|
-
import { _ as H } from "./index
|
|
1
|
+
import { ref as M, computed as d, createElementBlock as n, openBlock as r, createElementVNode as e, createStaticVNode as x, createCommentVNode as l, toDisplayString as s, Fragment as k, renderList as p, normalizeClass as f, createTextVNode as B, normalizeStyle as j } from "vue";
|
|
2
|
+
import { _ as H } from "./index-ReaL9JbY.js";
|
|
3
3
|
const A = { class: "notif-center" }, V = { class: "notif-header" }, N = { class: "header-right" }, L = {
|
|
4
4
|
key: 0,
|
|
5
5
|
class: "unread-badge"
|
|
@@ -13,7 +13,7 @@ const A = { class: "notif-center" }, V = { class: "notif-header" }, N = { class:
|
|
|
13
13
|
key: 0,
|
|
14
14
|
class: "empty-state"
|
|
15
15
|
}, G = { class: "empty-text" }, J = {
|
|
16
|
-
__name: "
|
|
16
|
+
__name: "CommonNotificationCenter",
|
|
17
17
|
props: {
|
|
18
18
|
notifications: {
|
|
19
19
|
type: Array,
|
|
@@ -63,44 +63,44 @@ const A = { class: "notif-center" }, V = { class: "notif-header" }, N = { class:
|
|
|
63
63
|
},
|
|
64
64
|
emits: ["read", "action"],
|
|
65
65
|
setup(_, { emit: y }) {
|
|
66
|
-
const
|
|
66
|
+
const a = _, g = y, i = M("all"), u = [
|
|
67
67
|
{ key: "all", label: "全部", count: 0 },
|
|
68
68
|
{ key: "order", label: "订单", count: 1 },
|
|
69
69
|
{ key: "system", label: "系统", count: 1 },
|
|
70
70
|
{ key: "course", label: "课程", count: 0 }
|
|
71
|
-
],
|
|
71
|
+
], b = d(() => u.find((o) => o.key === i.value)?.label || ""), h = d(() => a.notifications.filter((o) => !o.read).length), v = d(() => i.value === "all" ? a.notifications : a.notifications.filter((o) => o.type === i.value)), m = (o) => {
|
|
72
72
|
o.read || (o.read = !0, g("read", o));
|
|
73
|
-
},
|
|
74
|
-
|
|
73
|
+
}, w = () => {
|
|
74
|
+
a.notifications.forEach((o) => o.read = !0);
|
|
75
75
|
};
|
|
76
|
-
return (o,
|
|
76
|
+
return (o, c) => (r(), n("div", A, [
|
|
77
77
|
e("div", V, [
|
|
78
|
-
|
|
78
|
+
c[0] || (c[0] = x('<div class="header-left" data-v-97cb5b7c><span class="header-icon" data-v-97cb5b7c><svg viewBox="0 0 24 24" width="20" height="20" fill="none" data-v-97cb5b7c><path d="M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-v-97cb5b7c></path><path d="M13.73 21a2 2 0 0 1-3.46 0" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-v-97cb5b7c></path></svg></span><span class="header-title" data-v-97cb5b7c>消息通知</span></div>', 1)),
|
|
79
79
|
e("div", N, [
|
|
80
|
-
h.value > 0 ? (r(), n("span", L, s(h.value), 1)) :
|
|
80
|
+
h.value > 0 ? (r(), n("span", L, s(h.value), 1)) : l("", !0),
|
|
81
81
|
e("button", {
|
|
82
82
|
class: "mark-read",
|
|
83
83
|
type: "button",
|
|
84
|
-
onClick:
|
|
84
|
+
onClick: w
|
|
85
85
|
}, "全部已读")
|
|
86
86
|
])
|
|
87
87
|
]),
|
|
88
88
|
e("div", T, [
|
|
89
89
|
(r(), n(k, null, p(u, (t) => e("button", {
|
|
90
90
|
key: t.key,
|
|
91
|
-
class: f(["tab-btn", { active:
|
|
91
|
+
class: f(["tab-btn", { active: i.value === t.key }]),
|
|
92
92
|
type: "button",
|
|
93
|
-
onClick: (
|
|
93
|
+
onClick: (C) => i.value = t.key
|
|
94
94
|
}, [
|
|
95
95
|
B(s(t.label) + " ", 1),
|
|
96
|
-
t.count > 0 ? (r(), n("span", z, s(t.count), 1)) :
|
|
96
|
+
t.count > 0 ? (r(), n("span", z, s(t.count), 1)) : l("", !0)
|
|
97
97
|
], 10, I)), 64))
|
|
98
98
|
]),
|
|
99
99
|
e("div", E, [
|
|
100
100
|
(r(!0), n(k, null, p(v.value, (t) => (r(), n("div", {
|
|
101
101
|
key: t.id,
|
|
102
102
|
class: f(["notif-item", { unread: !t.read }]),
|
|
103
|
-
onClick: (
|
|
103
|
+
onClick: (C) => m(t)
|
|
104
104
|
}, [
|
|
105
105
|
e("div", {
|
|
106
106
|
class: "notif-icon-wrap",
|
|
@@ -116,10 +116,10 @@ const A = { class: "notif-center" }, V = { class: "notif-header" }, N = { class:
|
|
|
116
116
|
e("div", $, s(t.desc), 1),
|
|
117
117
|
e("div", F, s(t.time), 1)
|
|
118
118
|
]),
|
|
119
|
-
t.read ?
|
|
119
|
+
t.read ? l("", !0) : (r(), n("div", O))
|
|
120
120
|
], 10, R))), 128)),
|
|
121
121
|
v.value.length === 0 ? (r(), n("div", q, [
|
|
122
|
-
|
|
122
|
+
c[1] || (c[1] = e("div", { class: "empty-icon" }, [
|
|
123
123
|
e("svg", {
|
|
124
124
|
viewBox: "0 0 24 24",
|
|
125
125
|
width: "32",
|
|
@@ -135,12 +135,12 @@ const A = { class: "notif-center" }, V = { class: "notif-header" }, N = { class:
|
|
|
135
135
|
})
|
|
136
136
|
])
|
|
137
137
|
], -1)),
|
|
138
|
-
e("div", G, "暂无" + s(
|
|
139
|
-
])) :
|
|
138
|
+
e("div", G, "暂无" + s(b.value) + "消息", 1)
|
|
139
|
+
])) : l("", !0)
|
|
140
140
|
])
|
|
141
141
|
]));
|
|
142
142
|
}
|
|
143
|
-
}, Q = /* @__PURE__ */ H(J, [["__scopeId", "data-v-
|
|
143
|
+
}, Q = /* @__PURE__ */ H(J, [["__scopeId", "data-v-97cb5b7c"]]);
|
|
144
144
|
export {
|
|
145
145
|
Q as default
|
|
146
146
|
};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { createElementBlock as s, openBlock as o, createStaticVNode as
|
|
2
|
-
import { _ as k } from "./index
|
|
1
|
+
import { createElementBlock as s, openBlock as o, createStaticVNode as _, createElementVNode as e, Fragment as l, renderList as r, toDisplayString as a, createCommentVNode as p, normalizeStyle as f, normalizeClass as c } from "vue";
|
|
2
|
+
import { _ as k } from "./index-ReaL9JbY.js";
|
|
3
3
|
const g = { class: "order-center" }, y = { class: "stats-row" }, C = { class: "stat-value" }, B = { class: "stat-label" }, w = { class: "order-list" }, x = { class: "order-main" }, M = { class: "order-info" }, S = { class: "order-name" }, V = { class: "order-meta" }, A = { class: "order-date" }, N = { class: "order-id" }, j = { class: "order-right" }, z = { class: "order-amount" }, E = {
|
|
4
4
|
key: 0,
|
|
5
5
|
class: "order-actions"
|
|
6
6
|
}, I = ["onClick"], O = {
|
|
7
|
-
__name: "
|
|
7
|
+
__name: "CommonOrderCenter",
|
|
8
8
|
props: {
|
|
9
9
|
orders: {
|
|
10
10
|
type: Array,
|
|
@@ -50,18 +50,18 @@ const g = { class: "order-center" }, y = { class: "stats-row" }, C = { class: "s
|
|
|
50
50
|
},
|
|
51
51
|
emits: ["action"],
|
|
52
52
|
setup(u, { emit: h }) {
|
|
53
|
-
const v = h,
|
|
53
|
+
const v = h, m = [
|
|
54
54
|
{ value: "3", label: "全部订单" },
|
|
55
55
|
{ value: "1", label: "进行中" },
|
|
56
56
|
{ value: "1", label: "已完成" },
|
|
57
57
|
{ value: "1", label: "待支付" }
|
|
58
|
-
],
|
|
58
|
+
], b = (i, n) => {
|
|
59
59
|
v("action", { order: i, action: n });
|
|
60
60
|
};
|
|
61
61
|
return (i, n) => (o(), s("div", g, [
|
|
62
|
-
n[0] || (n[0] =
|
|
62
|
+
n[0] || (n[0] = _('<div class="order-header" data-v-87e3236b><div class="header-left" data-v-87e3236b><span class="header-icon" data-v-87e3236b><svg viewBox="0 0 24 24" width="20" height="20" fill="none" data-v-87e3236b><path d="M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-v-87e3236b></path><path d="M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v0a2 2 0 0 1-2 2h-2a2 2 0 0 1-2-2Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-v-87e3236b></path><path d="M9 12h6M9 16h4" stroke="currentColor" stroke-width="2" stroke-linecap="round" data-v-87e3236b></path></svg></span><span class="header-title" data-v-87e3236b>订单中心</span></div><button class="header-more" type="button" data-v-87e3236b>全部订单 ›</button></div>', 1)),
|
|
63
63
|
e("div", y, [
|
|
64
|
-
(o(), s(l, null, r(
|
|
64
|
+
(o(), s(l, null, r(m, (t) => e("div", {
|
|
65
65
|
key: t.label,
|
|
66
66
|
class: "stat-item"
|
|
67
67
|
}, [
|
|
@@ -98,14 +98,14 @@ const g = { class: "order-center" }, y = { class: "stats-row" }, C = { class: "s
|
|
|
98
98
|
key: d.label,
|
|
99
99
|
class: c(["action-btn", d.type]),
|
|
100
100
|
type: "button",
|
|
101
|
-
onClick: (D) =>
|
|
101
|
+
onClick: (D) => b(t, d)
|
|
102
102
|
}, a(d.label), 11, I))), 128))
|
|
103
|
-
])) :
|
|
103
|
+
])) : p("", !0)
|
|
104
104
|
]))), 128))
|
|
105
105
|
])
|
|
106
106
|
]));
|
|
107
107
|
}
|
|
108
|
-
}, L = /* @__PURE__ */ k(O, [["__scopeId", "data-v-
|
|
108
|
+
}, L = /* @__PURE__ */ k(O, [["__scopeId", "data-v-87e3236b"]]);
|
|
109
109
|
export {
|
|
110
110
|
L as default
|
|
111
111
|
};
|