gs-eant-comp 3.3.0 → 3.3.1

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.
Files changed (23) hide show
  1. package/dist/{NotificationCenter-DYK_tiZk.js → CommonNotificationCenter-r_IwwpQl.js} +20 -20
  2. package/dist/{OrderCenter-DYxx0AVB.js → CommonOrderCenter-D1ZreMGY.js} +10 -10
  3. package/dist/ContainerManager-B_SXuZKk.js +602 -0
  4. package/dist/{ActivityFeed-DI9hNxV4.js → MobileActivityFeed-2gjV0ke2.js} +11 -11
  5. package/dist/{BannerCarousel-CC_uykla.js → MobileBanner-CxZ2jR0b.js} +11 -11
  6. package/dist/MobileHomeConfig-Cl0Q8T46.js +212 -0
  7. package/dist/{NoticeList-gioopR6r.js → MobileNoticeList-sqdXC7CC.js} +12 -12
  8. package/dist/{QuickActions-BdAibhSL.js → MobileQuickActions-Dg6wzSAQ.js} +7 -7
  9. package/dist/{QuickMenu-VY9bW-XU.js → MobileQuickMenu-DDyshzKm.js} +13 -13
  10. package/dist/{ShoppingCart-Bv7KU5Qh.js → MobileShoppingCart-L50vZizN.js} +25 -25
  11. package/dist/{StatCard-DkTQeLrf.js → MobileStatCard-DTm63DiG.js} +18 -18
  12. package/dist/{TodoList-Bskuy_aU.js → MobileTodoList-CzFB3E6k.js} +12 -12
  13. package/dist/{ActivityTable-C6yju1oZ.js → PcActivityTable-CbXZsRXT.js} +3 -3
  14. package/dist/PcAiSummary-C8uTPEOy.js +286 -0
  15. package/dist/PcHomeConfig-DlG8_m9K.js +59 -0
  16. package/dist/{QuickActionsPanel-CU778wqz.js → PcQuickActions-CEJse6Ey.js} +9 -9
  17. package/dist/{StatCards-BWasvRXQ.js → PcStatCards-C2_qAraR.js} +13 -13
  18. package/dist/PcWorkspaceEntry-DTd8-gnF.js +45 -0
  19. package/dist/gs-eant-comp.css +1 -1
  20. package/dist/gs-eant-comp.js +23 -28
  21. package/dist/gs-eant-comp.umd.cjs +4 -4
  22. package/dist/{index--CCglFst.js → index-x6RwsCx2.js} +3545 -3408
  23. package/package.json +2 -1
@@ -0,0 +1,602 @@
1
+ import { defineAsyncComponent as b, computed as j, ref as y, onMounted as G, resolveComponent as c, createElementBlock as w, openBlock as m, createElementVNode as o, toDisplayString as f, Fragment as V, renderList as Y, createVNode as n, withCtx as s, createTextVNode as C, createBlock as $, unref as B, inject as ae, reactive as oe, createCommentVNode as F } from "vue";
2
+ import { useRequest as H } from "vue-request";
3
+ import { c as se, _ as ie, m as le, D as re, s as ue } from "./index-x6RwsCx2.js";
4
+ import { message as P, Modal as ce } from "ant-design-vue";
5
+ import { useStore as de } from "vuex";
6
+ const me = {
7
+ "stat-cards": {
8
+ name: "PC统计卡片",
9
+ icon: "icon-chart",
10
+ description: "PC端数据统计概览",
11
+ defaultSize: { w: 12, h: 2 },
12
+ componentPath: "workbench/containers/PcStatCards.vue",
13
+ component: b(() => import("./PcStatCards-C2_qAraR.js"))
14
+ },
15
+ "quick-actions-panel": {
16
+ name: "PC快捷操作",
17
+ icon: "icon-appstore",
18
+ description: "PC端快捷操作面板",
19
+ defaultSize: { w: 12, h: 2 },
20
+ componentPath: "workbench/containers/PcQuickActions.vue",
21
+ component: b(() => import("./PcQuickActions-CEJse6Ey.js"))
22
+ },
23
+ "activity-table": {
24
+ name: "PC动态表格",
25
+ icon: "icon-mail",
26
+ description: "PC端运营动态表格",
27
+ defaultSize: { w: 12, h: 5 },
28
+ componentPath: "workbench/containers/PcActivityTable.vue",
29
+ component: b(() => import("./PcActivityTable-CbXZsRXT.js"))
30
+ },
31
+ "pc-workspace-entry-panel": {
32
+ name: "控制台内嵌入口",
33
+ icon: "icon-appstore",
34
+ description: "AI、PC配置、移动端配置等控制台子工作区入口",
35
+ defaultSize: { w: 4, h: 3 },
36
+ componentPath: "workbench/containers/PcWorkspaceEntry.vue",
37
+ component: b(() => import("./PcWorkspaceEntry-DTd8-gnF.js"))
38
+ },
39
+ "pc-ai-workspace": {
40
+ name: "AI工作区摘要",
41
+ icon: "icon-robot",
42
+ description: "控制台 AI 能力、洞察和任务结果摘要区",
43
+ defaultSize: { w: 4, h: 8 },
44
+ componentPath: "workbench/containers/PcAiSummary.vue",
45
+ component: b(() => import("./PcAiSummary-C8uTPEOy.js"))
46
+ },
47
+ "order-center": {
48
+ name: "PC订单中心",
49
+ icon: "icon-file",
50
+ description: "PC端订单管理与状态跟踪",
51
+ defaultSize: { w: 12, h: 6 },
52
+ componentPath: "workbench/containers/CommonOrderCenter.vue",
53
+ component: b(() => import("./CommonOrderCenter-D1ZreMGY.js"))
54
+ },
55
+ "notification-center": {
56
+ name: "PC消息通知",
57
+ icon: "icon-notification",
58
+ description: "PC端系统消息与通知中心",
59
+ defaultSize: { w: 12, h: 5 },
60
+ componentPath: "workbench/containers/CommonNotificationCenter.vue",
61
+ component: b(() => import("./CommonNotificationCenter-r_IwwpQl.js"))
62
+ }
63
+ }, k = se(me), pe = k.getRegisteredContainers, ve = k.getContainerComponent, _e = k.getContainerDefaultSize, fe = k.loadDynamicContainersFromAPI, ye = k.registerDynamicContainer, ge = k.clearDynamicContainers, Ce = k.getMergedRegistry(), he = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
64
+ __proto__: null,
65
+ clearDynamicContainers: ge,
66
+ default: Ce,
67
+ getContainerComponent: ve,
68
+ getContainerDefaultSize: _e,
69
+ getRegisteredContainers: pe,
70
+ loadDynamicContainersFromAPI: fe,
71
+ registerDynamicContainer: ye
72
+ }, Symbol.toStringTag, { value: "Module" })), be = { class: "home-layout-studio" }, we = { class: "container-library" }, ke = { class: "studio-panel-heading" }, Ie = { class: "container-list" }, Pe = ["onClick"], ze = { class: "container-icon" }, Se = { class: "container-meta" }, xe = { class: "container-name" }, De = { class: "container-desc" }, Ae = { class: "layout-canvas-panel" }, Re = { class: "canvas-toolbar" }, Le = { class: "studio-eyebrow" }, Ne = { class: "canvas-actions" }, Me = { class: "canvas-stat" }, Oe = { class: "layout-preview" }, $e = {
73
+ key: 0,
74
+ class: "empty-canvas"
75
+ }, Ue = { class: "empty-orbit" }, qe = { class: "grid-item-editor" }, Te = { class: "grid-item-header" }, Ee = ["onClick"], je = { class: "grid-item-body" }, Fe = {
76
+ __name: "HomeLayoutDesigner",
77
+ props: {
78
+ api: {
79
+ type: Object,
80
+ required: !0
81
+ },
82
+ start: {
83
+ type: Number,
84
+ default: 1
85
+ },
86
+ platform: {
87
+ type: String,
88
+ default: "mobile",
89
+ validator: (R) => ["mobile", "pc"].includes(R)
90
+ },
91
+ initialLayout: {
92
+ type: Array,
93
+ default: () => []
94
+ }
95
+ },
96
+ emits: ["update:layoutItems"],
97
+ setup(R, { expose: I, emit: L }) {
98
+ const d = R, z = L, g = j(() => d.start === 2 ? "PC home canvas" : "Mobile home canvas"), p = j(() => d.platform === "pc" ? he : le), v = y([]), i = y([]), S = j(() => i.value.length ? i.value.reduce((t, e) => {
99
+ const r = Number(e.y || 0) + Number(e.h || 0);
100
+ return r > t ? r : t;
101
+ }, 0) : 0), a = y(!1), { run: x } = H(
102
+ () => d.api.mobile.list.post({}),
103
+ {
104
+ manual: !0,
105
+ onSuccess: async (t) => {
106
+ t && t.data && Array.isArray(t.data) && await p.value.loadDynamicContainersFromAPI(d.api), v.value = p.value.getRegisteredContainers();
107
+ },
108
+ onError: () => {
109
+ v.value = p.value.getRegisteredContainers();
110
+ }
111
+ }
112
+ ), U = (t) => {
113
+ const e = `${t.id}_${Date.now()}`, r = p.value.getContainerDefaultSize(t.id) || { w: 12, h: 2 }, _ = {
114
+ i: e,
115
+ x: 0,
116
+ y: S.value,
117
+ w: r.w,
118
+ h: r.h,
119
+ componentId: t.id
120
+ };
121
+ i.value.push(_), z("update:layoutItems", i.value);
122
+ }, D = (t) => {
123
+ i.value = i.value.filter((e) => e.i !== t), z("update:layoutItems", i.value);
124
+ }, N = (t) => {
125
+ const r = p.value.getRegisteredContainers().find((_) => _.id === t);
126
+ return r ? r.name : t;
127
+ }, { run: M } = H(
128
+ () => d.api.mobile.configInfo.post({ start: d.start }),
129
+ {
130
+ manual: !0,
131
+ onSuccess: (t) => {
132
+ if (t && t.data && t.data.home_layout)
133
+ try {
134
+ const e = JSON.parse(t.data.home_layout);
135
+ Array.isArray(e) && (i.value = e);
136
+ } catch (e) {
137
+ console.warn("首页布局配置解析失败", e);
138
+ }
139
+ }
140
+ }
141
+ ), q = async () => {
142
+ a.value = !0;
143
+ try {
144
+ const t = {
145
+ home_layout: JSON.stringify(i.value)
146
+ };
147
+ await d.api.mobile.configUspdate.post({ ...t, start: d.start });
148
+ } finally {
149
+ a.value = !1;
150
+ }
151
+ }, T = () => {
152
+ i.value = [], z("update:layoutItems", i.value);
153
+ };
154
+ return I({ loadConfig: M, loadContainers: x, setLayout: (t) => {
155
+ i.value = t;
156
+ }, layoutItems: i }), G(() => {
157
+ M(), x();
158
+ }), (t, e) => {
159
+ const r = c("a-icon"), _ = c("a-button");
160
+ return m(), w("div", be, [
161
+ o("aside", we, [
162
+ o("div", ke, [
163
+ e[0] || (e[0] = o("div", null, [
164
+ o("span", { class: "studio-eyebrow" }, "Component library"),
165
+ o("h3", null, "可用组件")
166
+ ], -1)),
167
+ o("strong", null, f(v.value.length), 1)
168
+ ]),
169
+ e[2] || (e[2] = o("div", { class: "library-subtitle" }, " 选择组件后会追加到当前画布末尾,可继续拖拽调整位置和尺寸。 ", -1)),
170
+ o("div", Ie, [
171
+ (m(!0), w(V, null, Y(v.value, (u) => (m(), w("div", {
172
+ key: u.id,
173
+ class: "container-item",
174
+ onClick: (E) => U(u)
175
+ }, [
176
+ o("div", ze, [
177
+ n(r, {
178
+ type: u.icon
179
+ }, null, 8, ["type"])
180
+ ]),
181
+ o("div", Se, [
182
+ o("div", xe, f(u.name), 1),
183
+ o("div", De, f(u.description || "暂无描述"), 1)
184
+ ]),
185
+ n(_, {
186
+ size: "small",
187
+ type: "primary",
188
+ ghost: "",
189
+ class: "container-add"
190
+ }, {
191
+ default: s(() => [...e[1] || (e[1] = [
192
+ C("添加", -1)
193
+ ])]),
194
+ _: 1
195
+ })
196
+ ], 8, Pe))), 128))
197
+ ])
198
+ ]),
199
+ o("section", Ae, [
200
+ o("div", Re, [
201
+ o("div", null, [
202
+ o("span", Le, f(g.value), 1),
203
+ e[3] || (e[3] = o("h3", null, "首页布局预览", -1))
204
+ ]),
205
+ o("div", Ne, [
206
+ o("div", Me, [
207
+ e[4] || (e[4] = o("span", null, "组件数", -1)),
208
+ o("strong", null, f(i.value.length), 1)
209
+ ]),
210
+ n(_, {
211
+ size: "small",
212
+ onClick: T
213
+ }, {
214
+ default: s(() => [...e[5] || (e[5] = [
215
+ C("重置", -1)
216
+ ])]),
217
+ _: 1
218
+ }),
219
+ n(_, {
220
+ type: "primary",
221
+ size: "small",
222
+ loading: a.value,
223
+ onClick: q
224
+ }, {
225
+ default: s(() => [...e[6] || (e[6] = [
226
+ C("保存配置", -1)
227
+ ])]),
228
+ _: 1
229
+ }, 8, ["loading"])
230
+ ])
231
+ ]),
232
+ o("div", Oe, [
233
+ i.value.length === 0 ? (m(), w("div", $e, [
234
+ o("div", Ue, [
235
+ n(r, { type: "icon-appstore" })
236
+ ]),
237
+ e[7] || (e[7] = o("h4", null, "当前画布为空", -1)),
238
+ e[8] || (e[8] = o("p", null, "从左侧组件库添加容器,配置会保存为当前首页布局。", -1))
239
+ ])) : (m(), $(B(re), {
240
+ key: 1,
241
+ layout: i.value,
242
+ "col-num": 12,
243
+ "row-height": 80,
244
+ "is-draggable": !0,
245
+ "is-resizable": !0,
246
+ responsive: !1,
247
+ "vertical-compact": !0,
248
+ margin: [8, 8],
249
+ "use-css-transforms": !0
250
+ }, {
251
+ default: s(() => [
252
+ (m(!0), w(V, null, Y(i.value, (u) => (m(), $(B(ue), {
253
+ key: u.i,
254
+ x: u.x,
255
+ y: u.y,
256
+ w: u.w,
257
+ h: u.h,
258
+ i: u.i
259
+ }, {
260
+ default: s(() => [
261
+ o("div", qe, [
262
+ o("div", Te, [
263
+ o("span", null, f(N(u.componentId)), 1),
264
+ o("button", {
265
+ type: "button",
266
+ class: "grid-remove",
267
+ onClick: (E) => D(u.i)
268
+ }, [
269
+ n(r, { type: "icon-close" })
270
+ ], 8, Ee)
271
+ ]),
272
+ o("div", je, [
273
+ n(r, { type: "icon-dashboard" }),
274
+ o("span", null, f(N(u.componentId)) + " 容器", 1)
275
+ ])
276
+ ])
277
+ ]),
278
+ _: 2
279
+ }, 1032, ["x", "y", "w", "h", "i"]))), 128))
280
+ ]),
281
+ _: 1
282
+ }, 8, ["layout"]))
283
+ ])
284
+ ])
285
+ ]);
286
+ };
287
+ }
288
+ }, We = /* @__PURE__ */ ie(Fe, [["__scopeId", "data-v-659e8f1d"]]), Ye = {
289
+ __name: "ContainerManager",
290
+ setup(R) {
291
+ const I = ae("$API"), L = de(), d = y([]), z = [
292
+ { title: "容器ID", dataIndex: "container_id", key: "container_id" },
293
+ { title: "容器名称", dataIndex: "name", key: "name" },
294
+ { title: "图标", key: "icon" },
295
+ { title: "组件路径", dataIndex: "component_path", key: "component_path" },
296
+ { title: "默认尺寸", key: "defaultSize" },
297
+ { title: "描述", dataIndex: "description", key: "description" },
298
+ { title: "操作", key: "actions", width: 120 }
299
+ ], g = y(!1), p = y(!1), v = y(!1), i = y("新增容器"), S = y(), a = oe({
300
+ id: "",
301
+ // 主键ID,编辑和删除时使用
302
+ container_id: "",
303
+ // 容器ID,用于组件注册
304
+ name: "",
305
+ component_path: "",
306
+ icon: "",
307
+ description: "",
308
+ default_w: 12,
309
+ default_h: 2
310
+ }), { run: x, loading: U } = H(
311
+ () => I.mobile.list.post({}),
312
+ {
313
+ manual: !0,
314
+ onSuccess: (t) => {
315
+ t && t.data && (d.value = t.data);
316
+ },
317
+ onError: (t) => {
318
+ P.error("加载容器列表失败: " + (t.message || "未知错误"));
319
+ }
320
+ }
321
+ ), D = () => {
322
+ x();
323
+ }, N = () => {
324
+ v.value = !1, i.value = "新增容器", Object.keys(a).forEach((t) => {
325
+ t === "default_w" ? a[t] = 12 : t === "default_h" ? a[t] = 2 : a[t] = "";
326
+ }), g.value = !0;
327
+ }, M = (t) => {
328
+ v.value = !0, i.value = "编辑容器", a.id = t.id || "", a.container_id = t.container_id || "", a.name = t.name || "", a.component_path = t.component_path || "", a.icon = t.icon || "", a.description = t.description || "", a.default_w = t.default_w ? parseInt(t.default_w) : 12, a.default_h = t.default_h ? parseInt(t.default_h) : 2, g.value = !0;
329
+ }, q = (t) => {
330
+ ce.confirm({
331
+ title: "确认删除",
332
+ content: `确定要删除容器 "${t.name}" (${t.id}) 吗?`,
333
+ okText: "删除",
334
+ okType: "danger",
335
+ cancelText: "取消",
336
+ onOk: async () => {
337
+ try {
338
+ const e = L.state.auth.userInfo?.yhm || "";
339
+ await I.mobile.del.post({ id: t.id, userId: e }), P.success("删除成功"), D();
340
+ } catch (e) {
341
+ P.error("删除失败: " + (e.message || "未知错误"));
342
+ }
343
+ }
344
+ });
345
+ }, T = async () => {
346
+ try {
347
+ await S.value.validate();
348
+ } catch {
349
+ return;
350
+ }
351
+ p.value = !0;
352
+ try {
353
+ const t = L.state.auth.userInfo?.yhm || "", e = { ...a, userId: t };
354
+ v.value ? (await I.mobile.update.post(e), P.success("更新成功")) : (await I.mobile.add.post(e), P.success("新增成功")), g.value = !1, D();
355
+ } catch (t) {
356
+ P.error("操作失败: " + (t.message || "未知错误"));
357
+ } finally {
358
+ p.value = !1;
359
+ }
360
+ }, J = () => {
361
+ g.value = !1, S.value?.resetFields();
362
+ };
363
+ return G(() => {
364
+ x();
365
+ }), (t, e) => {
366
+ const r = c("a-button"), _ = c("a-space"), u = c("a-icon"), E = c("a-table"), K = c("a-card"), O = c("a-input"), h = c("a-form-item"), X = c("a-textarea"), Q = c("a-input-number"), W = c("a-col"), Z = c("a-row"), ee = c("a-form"), te = c("a-modal");
367
+ return m(), w("div", null, [
368
+ n(K, {
369
+ title: "容器管理",
370
+ size: "small",
371
+ class: "mb-3"
372
+ }, {
373
+ extra: s(() => [
374
+ n(_, null, {
375
+ default: s(() => [
376
+ n(r, {
377
+ type: "primary",
378
+ size: "small",
379
+ onClick: N
380
+ }, {
381
+ default: s(() => [...e[8] || (e[8] = [
382
+ C("新增容器", -1)
383
+ ])]),
384
+ _: 1
385
+ }),
386
+ n(r, {
387
+ size: "small",
388
+ onClick: D
389
+ }, {
390
+ default: s(() => [...e[9] || (e[9] = [
391
+ C("刷新", -1)
392
+ ])]),
393
+ _: 1
394
+ })
395
+ ]),
396
+ _: 1
397
+ })
398
+ ]),
399
+ default: s(() => [
400
+ n(E, {
401
+ "data-source": d.value,
402
+ columns: z,
403
+ pagination: !1,
404
+ size: "small",
405
+ loading: B(U)
406
+ }, {
407
+ bodyCell: s(({ column: l, record: A }) => [
408
+ l.key === "icon" ? (m(), $(u, {
409
+ key: 0,
410
+ type: A.icon || "icon-appstore"
411
+ }, null, 8, ["type"])) : F("", !0),
412
+ l.key === "defaultSize" ? (m(), w(V, { key: 1 }, [
413
+ C(f(A.default_w) + " × " + f(A.default_h), 1)
414
+ ], 64)) : F("", !0),
415
+ l.key === "actions" ? (m(), $(_, {
416
+ key: 2,
417
+ size: "small"
418
+ }, {
419
+ default: s(() => [
420
+ n(r, {
421
+ type: "link",
422
+ size: "small",
423
+ onClick: (ne) => M(A)
424
+ }, {
425
+ default: s(() => [...e[10] || (e[10] = [
426
+ C("编辑", -1)
427
+ ])]),
428
+ _: 1
429
+ }, 8, ["onClick"]),
430
+ n(r, {
431
+ type: "link",
432
+ size: "small",
433
+ danger: "",
434
+ onClick: (ne) => q(A)
435
+ }, {
436
+ default: s(() => [...e[11] || (e[11] = [
437
+ C("删除", -1)
438
+ ])]),
439
+ _: 1
440
+ }, 8, ["onClick"])
441
+ ]),
442
+ _: 2
443
+ }, 1024)) : F("", !0)
444
+ ]),
445
+ _: 1
446
+ }, 8, ["data-source", "loading"])
447
+ ]),
448
+ _: 1
449
+ }),
450
+ n(te, {
451
+ open: g.value,
452
+ "onUpdate:open": e[7] || (e[7] = (l) => g.value = l),
453
+ title: i.value,
454
+ onOk: T,
455
+ onCancel: J,
456
+ "confirm-loading": p.value
457
+ }, {
458
+ default: s(() => [
459
+ n(ee, {
460
+ ref_key: "formRef",
461
+ ref: S,
462
+ model: a,
463
+ "label-col": { span: 6 },
464
+ "wrapper-col": { span: 16 },
465
+ size: "small"
466
+ }, {
467
+ default: s(() => [
468
+ n(h, {
469
+ label: "容器ID",
470
+ name: "container_id",
471
+ rules: [{ required: !0, message: "请输入容器ID" }]
472
+ }, {
473
+ default: s(() => [
474
+ n(O, {
475
+ value: a.container_id,
476
+ "onUpdate:value": e[0] || (e[0] = (l) => a.container_id = l),
477
+ disabled: v.value,
478
+ placeholder: "如:custom-card"
479
+ }, null, 8, ["value", "disabled"])
480
+ ]),
481
+ _: 1
482
+ }),
483
+ n(h, {
484
+ label: "容器名称",
485
+ name: "name",
486
+ rules: [{ required: !0, message: "请输入容器名称" }]
487
+ }, {
488
+ default: s(() => [
489
+ n(O, {
490
+ value: a.name,
491
+ "onUpdate:value": e[1] || (e[1] = (l) => a.name = l),
492
+ placeholder: "如:自定义卡片"
493
+ }, null, 8, ["value"])
494
+ ]),
495
+ _: 1
496
+ }),
497
+ n(h, {
498
+ label: "组件路径",
499
+ name: "component_path",
500
+ rules: [{ required: !0, message: "请输入组件路径" }]
501
+ }, {
502
+ default: s(() => [
503
+ n(O, {
504
+ value: a.component_path,
505
+ "onUpdate:value": e[2] || (e[2] = (l) => a.component_path = l),
506
+ placeholder: "如:./containers/CustomCard.vue"
507
+ }, null, 8, ["value"]),
508
+ e[12] || (e[12] = o("div", {
509
+ class: "text-muted",
510
+ style: { "font-size": "12px", "margin-top": "4px" }
511
+ }, " 组件路径相对于:src/views/home/,动态容器仍共用于 PC 和移动端 ", -1))
512
+ ]),
513
+ _: 1
514
+ }),
515
+ n(h, {
516
+ label: "图标",
517
+ name: "icon"
518
+ }, {
519
+ default: s(() => [
520
+ n(O, {
521
+ value: a.icon,
522
+ "onUpdate:value": e[3] || (e[3] = (l) => a.icon = l),
523
+ placeholder: "如:icon-custom"
524
+ }, null, 8, ["value"])
525
+ ]),
526
+ _: 1
527
+ }),
528
+ n(h, {
529
+ label: "描述",
530
+ name: "description"
531
+ }, {
532
+ default: s(() => [
533
+ n(X, {
534
+ value: a.description,
535
+ "onUpdate:value": e[4] || (e[4] = (l) => a.description = l),
536
+ rows: 2,
537
+ placeholder: "容器功能描述"
538
+ }, null, 8, ["value"])
539
+ ]),
540
+ _: 1
541
+ }),
542
+ n(Z, { gutter: 12 }, {
543
+ default: s(() => [
544
+ n(W, { span: 12 }, {
545
+ default: s(() => [
546
+ n(h, {
547
+ label: "默认宽度",
548
+ name: "default_w",
549
+ rules: [{ required: !0, message: "请输入默认宽度" }]
550
+ }, {
551
+ default: s(() => [
552
+ n(Q, {
553
+ value: a.default_w,
554
+ "onUpdate:value": e[5] || (e[5] = (l) => a.default_w = l),
555
+ min: 1,
556
+ max: 12,
557
+ style: { width: "100%" }
558
+ }, null, 8, ["value"])
559
+ ]),
560
+ _: 1
561
+ })
562
+ ]),
563
+ _: 1
564
+ }),
565
+ n(W, { span: 12 }, {
566
+ default: s(() => [
567
+ n(h, {
568
+ label: "默认高度",
569
+ name: "default_h",
570
+ rules: [{ required: !0, message: "请输入默认高度" }]
571
+ }, {
572
+ default: s(() => [
573
+ n(Q, {
574
+ value: a.default_h,
575
+ "onUpdate:value": e[6] || (e[6] = (l) => a.default_h = l),
576
+ min: 1,
577
+ max: 10,
578
+ style: { width: "100%" }
579
+ }, null, 8, ["value"])
580
+ ]),
581
+ _: 1
582
+ })
583
+ ]),
584
+ _: 1
585
+ })
586
+ ]),
587
+ _: 1
588
+ })
589
+ ]),
590
+ _: 1
591
+ }, 8, ["model"])
592
+ ]),
593
+ _: 1
594
+ }, 8, ["open", "title", "confirm-loading"])
595
+ ]);
596
+ };
597
+ }
598
+ };
599
+ export {
600
+ We as H,
601
+ Ye as _
602
+ };
@@ -1,7 +1,7 @@
1
- import { resolveComponent as l, createElementBlock as n, openBlock as s, createElementVNode as t, Fragment as v, renderList as _, normalizeStyle as o, createVNode as y, createTextVNode as g, toDisplayString as a } from "vue";
2
- import { _ as f } from "./index--CCglFst.js";
3
- const m = { class: "activity-feed h-100" }, p = { class: "activity-body" }, u = { class: "activity-content" }, B = { class: "activity-text" }, b = { class: "activity-user" }, h = { class: "activity-time" }, k = {
4
- __name: "ActivityFeed",
1
+ import { resolveComponent as l, createElementBlock as n, openBlock as o, createElementVNode as t, Fragment as v, renderList as _, normalizeStyle as s, createVNode as y, createTextVNode as g, toDisplayString as a } from "vue";
2
+ import { _ as f } from "./index-x6RwsCx2.js";
3
+ const m = { class: "activity-feed h-100" }, p = { class: "activity-body" }, u = { class: "activity-content" }, b = { class: "activity-text" }, B = { class: "activity-user" }, h = { class: "activity-time" }, k = {
4
+ __name: "MobileActivityFeed",
5
5
  setup(x) {
6
6
  const r = [
7
7
  { user: "张三", action: "提交了销售报表", time: "3分钟前", icon: "icon-file", avatarBg: "linear-gradient(135deg, #667eea, #764ba2)" },
@@ -12,19 +12,19 @@ const m = { class: "activity-feed h-100" }, p = { class: "activity-body" }, u =
12
12
  ];
13
13
  return (V, e) => {
14
14
  const d = l("a-icon");
15
- return s(), n("div", m, [
15
+ return o(), n("div", m, [
16
16
  e[1] || (e[1] = t("div", { class: "activity-header" }, [
17
17
  t("span", { class: "activity-title" }, "动态消息")
18
18
  ], -1)),
19
19
  t("div", p, [
20
- (s(), n(v, null, _(r, (i, c) => t("div", {
20
+ (o(), n(v, null, _(r, (i, c) => t("div", {
21
21
  key: c,
22
22
  class: "activity-item",
23
- style: o({ animationDelay: c * 0.06 + "s" })
23
+ style: s({ animationDelay: c * 0.06 + "s" })
24
24
  }, [
25
25
  t("div", {
26
26
  class: "activity-avatar",
27
- style: o({ background: i.avatarBg })
27
+ style: s({ background: i.avatarBg })
28
28
  }, [
29
29
  y(d, {
30
30
  type: i.icon
@@ -34,8 +34,8 @@ const m = { class: "activity-feed h-100" }, p = { class: "activity-body" }, u =
34
34
  t("div", { class: "activity-dot" })
35
35
  ], -1)),
36
36
  t("div", u, [
37
- t("div", B, [
38
- t("span", b, a(i.user), 1),
37
+ t("div", b, [
38
+ t("span", B, a(i.user), 1),
39
39
  g(" " + a(i.action), 1)
40
40
  ]),
41
41
  t("div", h, a(i.time), 1)
@@ -45,7 +45,7 @@ const m = { class: "activity-feed h-100" }, p = { class: "activity-body" }, u =
45
45
  ]);
46
46
  };
47
47
  }
48
- }, A = /* @__PURE__ */ f(k, [["__scopeId", "data-v-b32d94d9"]]);
48
+ }, A = /* @__PURE__ */ f(k, [["__scopeId", "data-v-934b70b6"]]);
49
49
  export {
50
50
  A as default
51
51
  };