@ximatai/muyun-web-app 0.26.16 → 0.26.17

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 (103) hide show
  1. package/dist/{BusinessActivityLogView-DVM_GB5y.js → BusinessActivityLogView-9RrW-RKb.js} +2 -2
  2. package/dist/BusinessLogListDrawer-DYVx9tiQ.js +864 -0
  3. package/dist/{ConfigurationTranslationView-B0FosDyz.js → ConfigurationTranslationView-Bh_ekuMP.js} +40 -40
  4. package/dist/{LoginAuditLogView-3tAozKlC.js → LoginAuditLogView-DG6iBXEn.js} +2 -2
  5. package/dist/ModuleActionManagementView-DgHqhoMN.js +755 -0
  6. package/dist/{ModuleGovernanceView-DsqR_Sj7.js → ModuleGovernanceView-C53RnUzc.js} +2994 -2994
  7. package/dist/{RequestErrorLogView-C4yH-TSX.js → RequestErrorLogView-Ba5p0hLE.js} +2 -2
  8. package/dist/{RoleDetailWorkspaceView-BpOoGUwS.js → RoleDetailWorkspaceView-C3TBqksY.js} +157 -157
  9. package/dist/{RuntimeLogView-CoKKpJ39.js → RuntimeLogView-BFEABm8G.js} +66 -66
  10. package/dist/WorkflowAdministrationView-BOHG2e-I.js +650 -0
  11. package/dist/WorkflowConfigurationView-A0m5tBX9.js +1097 -0
  12. package/dist/WorkflowWorkbenchView-DGpNDt5V.js +759 -0
  13. package/dist/index.css +1 -1
  14. package/dist/index.js +606 -590
  15. package/dist/moduleGovernanceWorkspaceView-DNKzYX0x.js +667 -0
  16. package/dist/{platform-components-Cl5ZZiuU.js → platform-components-BBfyINHa.js} +8858 -6085
  17. package/dist/{platform-workbench-CAHoriIf.js → platform-workbench-C1hmkOUD.js} +6546 -6637
  18. package/dist/types/app/CurrentUserProfileDialog.vue.d.ts +1 -1
  19. package/dist/types/app/useAssistantAvailability.d.ts +8 -0
  20. package/dist/types/app/useCurrentUserProfile.d.ts +12 -0
  21. package/dist/types/app/workbenchRouteSync.d.ts +2 -0
  22. package/dist/types/consumer/AppWorkbenchShell.vue.d.ts +4 -2
  23. package/dist/types/dynamic-page-runtime/ModulePageBusinessSession.d.ts +8 -8
  24. package/dist/types/dynamic-page-runtime/ModulePageHostRuntime.vue.d.ts +208 -92
  25. package/dist/types/dynamic-page-runtime/assistantQueryCapabilities.d.ts +1 -0
  26. package/dist/types/dynamic-page-runtime/composables/useManagedDetailRelationRuntime.d.ts +2 -2
  27. package/dist/types/dynamic-page-runtime/composables/useNavigatorRuntime.d.ts +2 -2
  28. package/dist/types/dynamic-page-runtime/useModulePageSession.d.ts +4 -4
  29. package/dist/types/dynamic-page-runtime/useModuleRecordDataChanges.d.ts +4 -0
  30. package/dist/types/main.d.ts +0 -1
  31. package/dist/types/platform-components/BusinessContentGenerationPanel.vue.d.ts +22 -0
  32. package/dist/types/platform-components/BusinessContentQueryNotice.vue.d.ts +17 -0
  33. package/dist/types/platform-components/CrudRecordListExplorer.vue.d.ts +2 -2
  34. package/dist/types/platform-components/DictionaryOptionDialog.vue.d.ts +4 -4
  35. package/dist/types/platform-components/DictionaryOptionDialogChoiceList.vue.d.ts +1 -1
  36. package/dist/types/platform-components/DictionaryPicker.vue.d.ts +4 -4
  37. package/dist/types/platform-components/ObjectPickerInput.vue.d.ts +2 -2
  38. package/dist/types/platform-components/QueryCriteriaGroupEditor.vue.d.ts +2 -2
  39. package/dist/types/platform-components/RecordContentSourceField.vue.d.ts +22 -0
  40. package/dist/types/platform-components/RecordContentTranslationField.vue.d.ts +26 -0
  41. package/dist/types/platform-components/RecordDataExchangeSurface.vue.d.ts +26 -0
  42. package/dist/types/platform-components/RecordDetailFields.vue.d.ts +3 -2
  43. package/dist/types/platform-components/RecordFormFields.vue.d.ts +3 -2
  44. package/dist/types/platform-components/RecordModeDrawer.vue.d.ts +1 -1
  45. package/dist/types/platform-components/RecordQueryListCell.vue.d.ts +1 -0
  46. package/dist/types/platform-components/RecordQueryListPanel.vue.d.ts +1 -1
  47. package/dist/types/platform-components/RecordQueryListSurface.vue.d.ts +1 -1
  48. package/dist/types/{dynamic-page-runtime/ModuleDataExchangeSurface.vue.d.ts → platform-components/RecordQuerySortSelector.vue.d.ts} +5 -9
  49. package/dist/types/platform-components/RecordRelationValue.vue.d.ts +2 -0
  50. package/dist/types/platform-components/StaticManagementLayout.vue.d.ts +7 -2
  51. package/dist/types/platform-components/WorkflowRecordPanel.vue.d.ts +2 -0
  52. package/dist/types/platform-components/WorkflowTimeline.vue.d.ts +4 -0
  53. package/dist/types/platform-components/crudRecordListModel.d.ts +1 -0
  54. package/dist/types/platform-components/index.d.ts +1 -0
  55. package/dist/types/platform-components/loadExplorerRecords.d.ts +3 -0
  56. package/dist/types/platform-components/recordDetailFieldModel.d.ts +2 -0
  57. package/dist/types/platform-components/recordFormFieldModel.d.ts +2 -0
  58. package/dist/types/platform-components/recordQueryListQueryController.d.ts +2 -0
  59. package/dist/types/platform-components/recordSurfaceActivity.d.ts +3 -0
  60. package/dist/types/platform-components/recycleBinState.d.ts +1 -0
  61. package/dist/types/platform-components/referencePickerModel.d.ts +6 -2
  62. package/dist/types/platform-components/scopedTreePickerModel.d.ts +4 -0
  63. package/dist/types/platform-workbench/Workbench.vue.d.ts +9 -4
  64. package/dist/types/platform-workbench/WorkbenchGlobalTools.vue.d.ts +16 -0
  65. package/dist/types/platform-workbench/WorkbenchLanguageSettings.vue.d.ts +11 -0
  66. package/dist/types/platform-workbench/WorkbenchPageTitle.vue.d.ts +10 -0
  67. package/dist/types/platform-workbench/menuGroupLayout.d.ts +5 -0
  68. package/dist/types/platform-workbench/menuTreeModel.d.ts +1 -2
  69. package/dist/types/platform-workbench/useAssistantConversation.d.ts +1 -1
  70. package/dist/types/platform-workbench/useAssistantConversationArchive.d.ts +1 -1
  71. package/dist/types/platform-workbench/useLanguagePreferenceSelection.d.ts +7 -0
  72. package/dist/types/views/PageQuerySummaryEditor.vue.d.ts +4 -4
  73. package/dist/types/views/WorkflowSelectionFields.vue.d.ts +28 -0
  74. package/dist/types/views/metadataEditorSession.d.ts +4 -0
  75. package/dist/types/views/metadataOrchestrationState.d.ts +3 -0
  76. package/dist/types/views/metadataWorkspace.d.ts +8 -0
  77. package/dist/types/vue-ui-antdv/components/UiDropdown.vue.d.ts +1 -0
  78. package/dist/types/vue-ui-antdv/components/UiIcon.vue.d.ts +1 -1
  79. package/dist/types/vue-ui-antdv/components/UiModal.vue.d.ts +9 -6
  80. package/dist/types/vue-ui-antdv/types.d.ts +2 -0
  81. package/dist/types/vue-ui-antdv/typography.d.ts +25 -0
  82. package/dist/types/web-contracts/index.d.ts +132 -1
  83. package/dist/types/web-contracts/workflow.d.ts +10 -0
  84. package/dist/types/web-core/assistantTurnClient.d.ts +2 -0
  85. package/dist/types/web-core/businessContent.d.ts +38 -0
  86. package/dist/types/web-core/businessContentLanguage.d.ts +18 -0
  87. package/dist/types/web-core/index.d.ts +5 -0
  88. package/dist/types/web-core/languagePreference.d.ts +2 -2
  89. package/dist/types/web-core/module/dataExchangeClient.d.ts +83 -1
  90. package/dist/types/web-core/module/staticModuleClient.d.ts +9 -3
  91. package/dist/types/web-core/presentationTexts.d.ts +5 -0
  92. package/dist/types/web-core/recordReadRefreshGuard.d.ts +7 -0
  93. package/dist/types/web-core/useBusinessContentGenerationBatch.d.ts +36 -0
  94. package/dist/types/web-core/useBusinessContentReading.d.ts +30 -0
  95. package/dist/types/web-core/workflow.d.ts +2 -1
  96. package/dist/{workspaceViews-BIYGPUAO.js → workspaceViews-BpH71LKQ.js} +542 -542
  97. package/package.json +1 -1
  98. package/dist/BusinessLogListDrawer-BciMLY9z.js +0 -864
  99. package/dist/ModuleActionManagementView-CJRNShGg.js +0 -755
  100. package/dist/WorkflowAdministrationView-DmUV6vWS.js +0 -650
  101. package/dist/WorkflowConfigurationView-pghDbWEh.js +0 -975
  102. package/dist/WorkflowWorkbenchView-BwWxyDen.js +0 -747
  103. package/dist/moduleGovernanceWorkspaceView-DGEV3ZyT.js +0 -667
@@ -1,864 +0,0 @@
1
- import { B as e, Bn as t, Ci as n, Cn as r, Ii as i, On as a, Ot as o, Qi as s, T as ee, Ti as te, Wn as c, _n as l, cn as u, dr as ne, hn as d, mn as f, na as re, nn as p, pn as ie, qn as m, ta as h, vn as ae, w as g, wi as oe, zi as se } from "./platform-components-Cl5ZZiuU.js";
2
- import { Fragment as _, computed as v, createBlock as y, createCommentVNode as b, createElementBlock as x, createElementVNode as S, createTextVNode as C, createVNode as w, defineComponent as T, normalizeClass as E, openBlock as D, ref as O, renderList as k, shallowRef as A, toDisplayString as j, unref as M, withCtx as N } from "vue";
3
- //#region src/views/businessLogClient.ts
4
- var P = {
5
- activity: "/platform.business_activity_log",
6
- "request-error": "/platform.request_error_log",
7
- login: "/iam.login_audit_log"
8
- };
9
- function F(e, t) {
10
- let n = P[t];
11
- return {
12
- async detail(t) {
13
- return B(await e.request({ path: `${n}/${encodeURIComponent(t)}` }));
14
- },
15
- async operatorCandidates(t) {
16
- return I(await e.request({
17
- method: "POST",
18
- path: `${n}/operator-candidates/query`,
19
- body: {
20
- keyword: t.keyword,
21
- selectedIds: t.selectedIds,
22
- tenantId: t.tenantId,
23
- organizationId: t.organizationId,
24
- departmentId: t.departmentId,
25
- page: {
26
- pageNum: t.pageNum ?? 1,
27
- pageSize: t.pageSize ?? 20
28
- }
29
- }
30
- }));
31
- },
32
- ...t === "activity" ? {
33
- actionStatistics: async (t) => H(await e.request({
34
- method: "POST",
35
- path: `${n}/statistics/actions`,
36
- body: t
37
- })),
38
- pageAccessStatistics: async (t) => H(await e.request({
39
- method: "POST",
40
- path: `${n}/statistics/page-access`,
41
- body: t
42
- }))
43
- } : {},
44
- ...t === "request-error" ? { diagnostic: async (t) => {
45
- let r = await e.request({ path: `${n}/${encodeURIComponent(t)}/diagnostic` });
46
- return K(K(r).diagnostic ?? r);
47
- } } : {}
48
- };
49
- }
50
- function I(e) {
51
- let t = K(e);
52
- return {
53
- records: z(t.records),
54
- selectedRecords: z(t.selectedRecords),
55
- total: J(t.total),
56
- navigation: L(t.navigation)
57
- };
58
- }
59
- function L(e) {
60
- let t = K(e);
61
- if (Object.keys(t).length) return {
62
- showTenantNavigation: Y(t.showTenantNavigation) === !0,
63
- tenants: R(t.tenants),
64
- organizations: R(t.organizations),
65
- departments: R(t.departments)
66
- };
67
- }
68
- function R(e) {
69
- return Array.isArray(e) ? e.flatMap((e) => {
70
- let t = K(e), n = q(t.id);
71
- return n ? [{
72
- id: n,
73
- title: q(t.title) ?? n,
74
- tenantId: q(t.tenantId),
75
- organizationId: q(t.organizationId)
76
- }] : [];
77
- }) : [];
78
- }
79
- function z(e) {
80
- if (!Array.isArray(e)) return [];
81
- let t = [];
82
- for (let n of e) {
83
- let e = K(n), r = q(e.id);
84
- if (!r) continue;
85
- let i = {
86
- id: r,
87
- title: q(e.title) ?? r
88
- };
89
- [
90
- "account",
91
- "employeeName",
92
- "organizationId",
93
- "organizationName",
94
- "departmentId",
95
- "departmentName"
96
- ].forEach((t) => {
97
- let n = q(e[t]);
98
- n && (i[t] = n);
99
- }), t.push(i);
100
- }
101
- return t;
102
- }
103
- function B(e) {
104
- let t = K(e), n = K(t.event ?? t.record ?? e);
105
- return {
106
- ...n,
107
- eventId: q(n.eventId ?? n.id) ?? "",
108
- eventType: q(n.eventType ?? n.type) ?? "",
109
- occurredAt: q(n.occurredAt),
110
- capturedAt: q(n.capturedAt),
111
- traceId: q(n.traceId),
112
- tenantId: q(n.tenantId),
113
- operatorId: q(n.operatorId),
114
- operatorOrganizationId: q(n.operatorOrganizationId),
115
- operatorIdentity: G(n),
116
- moduleAlias: q(n.moduleAlias),
117
- actionCode: q(n.actionCode),
118
- entityAlias: q(n.entityAlias ?? K(n.details).entityAlias),
119
- recordId: q(n.recordId ?? K(n.details).recordId),
120
- mutationSource: q(n.mutationSource ?? K(n.details).mutationSource),
121
- outcome: q(n.outcome ?? n.result ?? K(n.details).outcome),
122
- loginAccount: V(n, K(n.details)),
123
- summary: U(n, K(n.details)),
124
- details: le(n.details)
125
- };
126
- }
127
- function V(e, t) {
128
- return q(e.loginAccount) ?? q(t.confirmedAccount) ?? q(t.claimedAccount);
129
- }
130
- function H(e) {
131
- let t = K(e);
132
- return Array.isArray(t.pages) ? {
133
- items: t.pages.map((e) => {
134
- let t = K(e);
135
- return {
136
- key: q(t.pageKey) ?? "unknown-page",
137
- title: q(t.pageKey) ?? "未知页面",
138
- ...q(t.pageKey) ? {} : { titleSource: s("platform.log.statistic.unknown-page") },
139
- count: J(t.accessCount)
140
- };
141
- }),
142
- complete: Y(t.complete)
143
- } : {
144
- items: [
145
- ["executionCount", "执行次数"],
146
- ["successCount", "成功次数"],
147
- ["failureCount", "失败次数"],
148
- ["rejectedCount", "拒绝次数"],
149
- ["knownDurationCount", "含耗时记录数"],
150
- ["totalDurationMillis", "累计耗时(毫秒)"],
151
- ["knownAffectedRecordCount", "含影响数记录数"],
152
- ["totalAffectedRecordCount", "累计影响记录数"]
153
- ].map(([e, n]) => ({
154
- key: e,
155
- title: n,
156
- titleSource: s(`platform.log.statistic.${e}`),
157
- count: J(t[e])
158
- })),
159
- complete: Y(t.complete)
160
- };
161
- }
162
- function ce(e, t) {
163
- let n = e.titleSource;
164
- return n?.sourceKind === "CODE" && n.sourceId.startsWith("platform.log.statistic.") && h(n, e.title) ? t.t(n.sourceId, n.originalText) : e.title;
165
- }
166
- function U(e, t) {
167
- return q(e.summary ?? e.message ?? e.description) ?? W(t.message) ?? W(t.responseSummary) ?? q(t.reasonCode) ?? q(t.failureStage) ?? q(t.pageKey) ?? q(t.errorCode) ?? q(t.authenticationMethod);
168
- }
169
- function W(e) {
170
- return q(e) ?? q(K(e).value);
171
- }
172
- function G(e) {
173
- let t = K(e.operatorIdentity), n = q(t.employeeName), r = q(t.username), i = q(t.organizationId), a = q(t.organizationName), o = q(t.departmentId), s = q(t.departmentName);
174
- return n || r || i || a || o || s ? {
175
- employeeName: n,
176
- username: r,
177
- organizationId: i,
178
- organizationName: a,
179
- departmentId: o,
180
- departmentName: s
181
- } : void 0;
182
- }
183
- function K(e) {
184
- return typeof e == "object" && e && !Array.isArray(e) ? e : {};
185
- }
186
- function le(e) {
187
- let t = K(e);
188
- return Object.keys(t).length > 0 ? t : void 0;
189
- }
190
- function q(e) {
191
- return typeof e == "string" && e.length > 0 ? e : void 0;
192
- }
193
- function J(e) {
194
- return typeof e == "number" && Number.isFinite(e) ? e : 0;
195
- }
196
- function Y(e) {
197
- return typeof e == "boolean" ? e : void 0;
198
- }
199
- //#endregion
200
- //#region src/views/businessLogRetentionClient.ts
201
- function ue(e) {
202
- let t = "/platform.business_log_retention";
203
- return {
204
- async policies() {
205
- let n = await e.request({ path: `${t}/policies` });
206
- return Array.isArray(n) ? n : [];
207
- },
208
- async update(n) {
209
- return await e.request({
210
- method: "POST",
211
- path: `${t}/policies/${n.eventType}`,
212
- body: {
213
- automaticCleanupEnabled: n.automaticCleanupEnabled,
214
- retentionDays: n.retentionDays,
215
- version: n.version
216
- }
217
- });
218
- },
219
- async purge(n, r) {
220
- return await e.request({
221
- method: "POST",
222
- path: `${t}/policies/${n}/purge`,
223
- body: { retentionDays: r }
224
- });
225
- }
226
- };
227
- }
228
- //#endregion
229
- //#region src/views/BusinessLogRetentionControl.vue?vue&type=script&setup=true&lang.ts
230
- var de = {
231
- key: 3,
232
- class: "business-log-retention-control__policies"
233
- }, fe = { key: 0 }, pe = { class: "business-log-retention-control__automatic-cleanup" }, me = { class: "business-log-retention-control__content" }, he = { class: "business-log-retention-control__retention-days" }, ge = { class: "business-log-retention-control__retention-row" }, _e = {
234
- key: 0,
235
- class: "business-log-retention-control__validation"
236
- }, X = /*#__PURE__*/ m(/* @__PURE__ */ T({
237
- name: "BusinessLogRetentionControl",
238
- __name: "BusinessLogRetentionControl",
239
- props: { eventTypes: {} },
240
- setup(e) {
241
- let s = re(), ee = e, u = ne({
242
- moduleAlias: "platform.business_log_retention",
243
- runtimeAccess: "VIEW"
244
- }), m = ue(u.http), h = O(!1), g = O([]), T = O({}), E = O(!1), P = A(), F = v(() => P.value ? ye(P.value) : void 0), I = O(), L = O(), R = v(() => u.can("viewRetentionPolicies") === !0), z = v(() => u.can("configureRetentionPolicy") === !0), B = v(() => u.can("purgeExpiredLogs") === !0), V = v(() => I.value !== void 0 || L.value !== void 0), H = v(() => {
245
- let e = new Set(ee.eventTypes);
246
- return g.value.filter((t) => e.has(t.eventType));
247
- }), ce = v(() => H.value.some(J));
248
- async function U() {
249
- R.value && (h.value = !0, await W());
250
- }
251
- async function W() {
252
- E.value = !0, P.value = void 0;
253
- try {
254
- let e = await m.policies(), t = new Set(ee.eventTypes), n = e.filter((e) => t.has(e.eventType));
255
- g.value = n.map((e) => ({ ...e })), T.value = Object.fromEntries(n.map((e) => [e.eventType, { ...e }]));
256
- } catch (e) {
257
- P.value = ve(e), p(e, {
258
- language: s,
259
- source: "business-log-retention",
260
- phase: "load"
261
- });
262
- } finally {
263
- E.value = !1;
264
- }
265
- }
266
- async function G() {
267
- return V.value ? (ie(s.t("platform.screen.BusinessLogRetentionControl.a-cleanup-operation-is-in-progress-please-wait", "自动清理操作正在执行,请稍候。")), !1) : !ce.value || d({
268
- title: s.t("platform.screen.BusinessLogRetentionControl.discard-unsaved-cleanup-settings", "放弃未保存的自动清理设置?"),
269
- content: s.t("platform.screen.BusinessLogRetentionControl.unsaved-changes-to-automatic-cleanup-and-retention-days-will-be", "关闭后,本次未保存的自动清理和保留天数修改将丢失。")
270
- }, s);
271
- }
272
- async function K(e) {
273
- if (X(e.retentionDays) && J(e) && !V.value) {
274
- I.value = e.eventType;
275
- try {
276
- q(await m.update(e)), f(s.t("platform.screen.BusinessLogRetentionControl.cleanup-settings-saved-for-value", "{value1}自动清理设置已保存", { value1: Z(e.eventType) }));
277
- } catch (e) {
278
- p(e, {
279
- language: s,
280
- source: "business-log-retention",
281
- phase: "action"
282
- });
283
- } finally {
284
- I.value = void 0;
285
- }
286
- }
287
- }
288
- async function le(e) {
289
- if (X(e.retentionDays) && !V.value && await d({
290
- title: s.t("platform.screen.BusinessLogRetentionControl.clean-up-value-now", "立即清理{value1}", { value1: Z(e.eventType) }),
291
- content: s.t("platform.screen.BusinessLogRetentionControl.logs-strictly-older-than-value-days-will-be-deleted-this", "将删除严格早于 {value1} 天的日志。本次清理不会保存对保留天数的修改,且操作不可恢复。", { value1: e.retentionDays }),
292
- requiredText: s.t("platform.screen.BusinessLogRetentionControl.clean-up-value", "清理{value1}", { value1: Z(e.eventType) }),
293
- danger: !0
294
- }, s)) {
295
- L.value = e.eventType;
296
- try {
297
- let t = await m.purge(e.eventType, e.retentionDays);
298
- if (t.result.status === "ALREADY_RUNNING") {
299
- ie(s.t("platform.screen.BusinessLogRetentionControl.a-log-cleanup-task-is-already-running-this-request-was", "已有日志清理任务正在运行,本次未执行。"));
300
- return;
301
- }
302
- f(t.result.status === "BATCH_LIMIT_REACHED" ? s.t("platform.screen.BusinessLogRetentionControl.deleted-value-records-in-this-run-remaining-records-will-be", "本轮已清理 {value1} 条,剩余数据将在后续批次继续处理", { value1: t.result.deletedCount }) : s.t("platform.screen.BusinessLogRetentionControl.deleted-value-records-from-value", "已清理 {value1} 条{value2}", {
303
- value1: t.result.deletedCount,
304
- value2: Z(e.eventType)
305
- }));
306
- } catch (e) {
307
- p(e, {
308
- language: s,
309
- source: "business-log-retention",
310
- phase: "action"
311
- });
312
- } finally {
313
- L.value = void 0;
314
- }
315
- }
316
- }
317
- function q(e) {
318
- T.value = {
319
- ...T.value,
320
- [e.eventType]: { ...e }
321
- }, g.value = g.value.map((t) => t.eventType === e.eventType ? { ...e } : t);
322
- }
323
- function J(e) {
324
- let t = T.value[e.eventType];
325
- return !t || t.retentionDays !== e.retentionDays || t.automaticCleanupEnabled !== e.automaticCleanupEnabled;
326
- }
327
- function Y(e, t) {
328
- e.retentionDays = Number(t);
329
- }
330
- function X(e) {
331
- return Number.isInteger(e) && e >= 1 && e <= 36500;
332
- }
333
- function Z(e) {
334
- return {
335
- LOGIN: s.t("platform.screen.BusinessLogRetentionControl.login-audit-logs", "登录日志"),
336
- ACTION: s.t("platform.screen.BusinessLogRetentionControl.action-logs", "动作日志"),
337
- REQUEST_ERROR: s.t("platform.screen.BusinessLogRetentionControl.error-logs", "异常日志"),
338
- PAGE_ACCESS: s.t("platform.screen.BusinessLogRetentionControl.page-access-logs", "页面访问日志")
339
- }[e];
340
- }
341
- function ve(e) {
342
- return e instanceof Error ? e : new n(oe(s, "platform.screen.BusinessLogRetentionControl.failed-to-load-automatic-cleanup-settings", "自动清理设置加载失败。"));
343
- }
344
- function ye(e) {
345
- return e instanceof n ? te(e, s) : se(i(e), s);
346
- }
347
- return (e, n) => (D(), x(_, null, [R.value ? (D(), y(M(c), {
348
- key: 0,
349
- onClick: U
350
- }, {
351
- default: N(() => [C(j(M(s).t("platform.screen.BusinessLogRetentionControl.automatic-cleanup", "自动清理")), 1)]),
352
- _: 1
353
- })) : b("v-if", !0), w(M(o), {
354
- open: h.value,
355
- title: M(s).t("platform.screen.BusinessLogRetentionControl.automatic-cleanup", "自动清理"),
356
- subtitle: M(s).t("platform.screen.BusinessLogRetentionControl.configure-automatic-cleanup-and-retention-for-the-current-log-type", "配置当前日志类型的自动清理和保留期限。"),
357
- width: "standard",
358
- scope: "viewport",
359
- "before-close": G,
360
- onClose: n[0] ||= (e) => h.value = !1
361
- }, {
362
- default: N(() => [E.value ? (D(), y(M(ae), {
363
- key: 0,
364
- tip: M(s).t("platform.screen.BusinessLogRetentionControl.loading-automatic-cleanup-settings", "加载自动清理设置")
365
- }, null, 8, ["tip"])) : F.value ? (D(), y(M(l), {
366
- key: 1,
367
- title: M(s).t("platform.screen.BusinessLogRetentionControl.automatic-cleanup-settings-unavailable", "自动清理设置不可用"),
368
- message: F.value
369
- }, null, 8, ["title", "message"])) : H.value.length === 0 ? (D(), y(M(r), {
370
- key: 2,
371
- description: M(s).t("platform.screen.BusinessLogRetentionControl.no-automatic-cleanup-settings-available", "暂无可管理的自动清理设置")
372
- }, null, 8, ["description"])) : (D(), x("section", de, [(D(!0), x(_, null, k(H.value, (e) => (D(), x("article", { key: e.eventType }, [
373
- S("header", null, [S("div", null, [S("h3", null, j(Z(e.eventType)), 1), e.updatedAt ? (D(), x("small", fe, [C(j(M(s).t("platform.screen.BusinessLogRetentionControl.last-updated", "最近更新:")) + j(e.updatedAt), 1), e.updatedBy ? (D(), x(_, { key: 0 }, [C(" · " + j(e.updatedBy), 1)], 64)) : b("v-if", !0)])) : b("v-if", !0)]), S("label", pe, [S("span", null, j(M(s).t("platform.screen.BusinessLogRetentionControl.automatic-cleanup", "自动清理")), 1), w(M(a), {
374
- checked: e.automaticCleanupEnabled,
375
- "onUpdate:checked": (t) => e.automaticCleanupEnabled = t,
376
- disabled: !z.value || V.value,
377
- "checked-text": M(s).t("platform.screen.WorkflowWorkbenchView.enabled", "启用"),
378
- "unchecked-text": M(s).t("platform.screen.WorkflowWorkbenchView.disabled", "停用")
379
- }, null, 8, [
380
- "checked",
381
- "onUpdate:checked",
382
- "disabled",
383
- "checked-text",
384
- "unchecked-text"
385
- ])])]),
386
- S("div", me, [S("label", he, [
387
- S("span", null, j(M(s).t("platform.screen.BusinessLogRetentionControl.retention-days", "保留天数")), 1),
388
- S("span", ge, [w(M(t), {
389
- value: e.retentionDays,
390
- type: "number",
391
- disabled: !z.value || V.value,
392
- "aria-label": M(s).t("platform.screen.BusinessLogRetentionControl.retention-days-for-value", "{value1}保留天数", { value1: Z(e.eventType) }),
393
- "onUpdate:value": (t) => Y(e, t)
394
- }, null, 8, [
395
- "value",
396
- "disabled",
397
- "aria-label",
398
- "onUpdate:value"
399
- ]), B.value ? (D(), y(M(c), {
400
- key: 0,
401
- intent: "danger",
402
- disabled: V.value || !X(e.retentionDays),
403
- loading: L.value === e.eventType,
404
- onClick: (t) => le(e)
405
- }, {
406
- default: N(() => [C(j(M(s).t("platform.screen.BusinessLogRetentionControl.clean-up-now", "立即清理")), 1)]),
407
- _: 1
408
- }, 8, [
409
- "disabled",
410
- "loading",
411
- "onClick"
412
- ])) : b("v-if", !0)]),
413
- X(e.retentionDays) ? b("v-if", !0) : (D(), x("small", _e, j(M(s).t("platform.screen.BusinessLogRetentionControl.enter-an-integer-from-1-to-36500", "请输入 1 至 36500 之间的整数。")), 1))
414
- ])]),
415
- S("footer", null, [z.value ? (D(), y(M(c), {
416
- key: 0,
417
- emphasis: "primary",
418
- disabled: V.value || !X(e.retentionDays) || !J(e),
419
- loading: I.value === e.eventType,
420
- onClick: (t) => K(e)
421
- }, {
422
- default: N(() => [C(j(M(s).t("platform.action.save", "保存")), 1)]),
423
- _: 1
424
- }, 8, [
425
- "disabled",
426
- "loading",
427
- "onClick"
428
- ])) : b("v-if", !0)])
429
- ]))), 128))]))]),
430
- _: 1
431
- }, 8, [
432
- "open",
433
- "title",
434
- "subtitle"
435
- ])], 64));
436
- }
437
- }), [["__scopeId", "data-v-88f9267c"]]), Z = {
438
- key: 2,
439
- class: "business-log-list__detail"
440
- }, ve = {
441
- key: 4,
442
- class: "business-log-list__diagnostic"
443
- }, ye = {
444
- key: 1,
445
- class: "business-log-list__detail"
446
- }, be = {
447
- key: 0,
448
- class: "business-log-list__hint"
449
- }, xe = {
450
- key: 1,
451
- class: "business-log-list__detail"
452
- }, Se = /*#__PURE__*/ m(/* @__PURE__ */ T({
453
- name: "BusinessLogListDrawer",
454
- __name: "BusinessLogListDrawer",
455
- props: {
456
- surface: {},
457
- moduleAlias: {},
458
- title: {}
459
- },
460
- setup(t) {
461
- let a = re(), s = t, d = ne({ moduleAlias: s.moduleAlias }), f = F(d.http, s.surface), ie = {
462
- get title() {
463
- return a.t("platform.screen.BusinessLogListDrawer.select-an-operator", "选择操作用户");
464
- },
465
- get placeholder() {
466
- return a.t("platform.screen.UserPicker.searchPlaceholder", "按账号或用户 ID 搜索");
467
- },
468
- get searchPlaceholder() {
469
- return a.t("platform.screen.UserPicker.searchPlaceholder", "按账号或用户 ID 搜索");
470
- },
471
- mode: "dialog",
472
- columns: ee,
473
- provider: g({
474
- sourceIdentity: {
475
- targetModuleAlias: "iam.user",
476
- source: {
477
- kind: "businessPurpose",
478
- id: `${s.moduleAlias}:operators`
479
- }
480
- },
481
- searchPage: async ({ keyword: e, pageNum: t, pageSize: n, scope: r }) => {
482
- let i = await f.operatorCandidates({
483
- keyword: e,
484
- pageNum: t,
485
- pageSize: n,
486
- ...r
487
- });
488
- return {
489
- records: i.records,
490
- total: i.total,
491
- navigation: i.navigation
492
- };
493
- },
494
- resolveUsers: async (e) => (await f.operatorCandidates({ selectedIds: e })).selectedRecords
495
- })
496
- }, m = O(), h = O(!1), T = A(), P = v(() => T.value ? $(T.value) : void 0), I = O(), L = O(!1), R = A(), z = v(() => R.value ? $(R.value) : void 0), B = O(!1), V = O(), H = O(), U = O(!1), W = A(), G = v(() => W.value ? $(W.value) : void 0), K = O(), le = v(() => Le.value[s.surface]), q = v(() => s.surface === "activity"), J = v(() => s.surface === "request-error"), Y = v(() => ({
497
- login: ["LOGIN"],
498
- activity: ["ACTION", "PAGE_ACCESS"],
499
- "request-error": ["REQUEST_ERROR"]
500
- })[s.surface]), ue = v(() => d.can("viewInternalDiagnostic") === !0), de = v(() => le.value.columns), fe = v(() => m.value ? ke(m.value) : []), pe = v(() => Pe(I.value)), me = v(() => [...Ae(a.t("platform.workflow-task-editor.business-action", "业务动作"), V.value), ...Ae(a.t("platform.screen.BusinessLogListDrawer.page-access", "页面访问"), H.value)]), he = v(() => V.value?.complete === !1 || H.value?.complete === !1);
501
- async function ge(e) {
502
- let t = e, n = t.eventId;
503
- if (n) {
504
- m.value = t, T.value = void 0, I.value = void 0, R.value = void 0, h.value = !0;
505
- try {
506
- m.value = await f.detail(n);
507
- } catch (e) {
508
- T.value = Ie(e), p(e, {
509
- language: a,
510
- source: "business-log-detail",
511
- phase: "load"
512
- });
513
- } finally {
514
- h.value = !1;
515
- }
516
- }
517
- }
518
- async function _e() {
519
- if (q.value && !U.value) {
520
- B.value = !0, U.value = !0, W.value = void 0;
521
- try {
522
- let e = K.value ?? we(), [t, n] = await Promise.all([f.actionStatistics?.(e), f.pageAccessStatistics?.(e)]);
523
- V.value = t, H.value = n;
524
- } catch (e) {
525
- W.value = Ie(e), p(e, {
526
- language: a,
527
- source: "business-log-statistics",
528
- phase: "load"
529
- });
530
- } finally {
531
- U.value = !1;
532
- }
533
- }
534
- }
535
- async function Se() {
536
- let e = m.value?.eventId;
537
- if (f.diagnostic && e && !L.value) {
538
- L.value = !0, R.value = void 0;
539
- try {
540
- I.value = await f.diagnostic(e);
541
- } catch (e) {
542
- R.value = Ie(e), p(e, {
543
- language: a,
544
- source: "business-log-diagnostic",
545
- phase: "load"
546
- });
547
- } finally {
548
- L.value = !1;
549
- }
550
- }
551
- }
552
- function Ce(e) {
553
- K.value = e, V.value = void 0, H.value = void 0;
554
- }
555
- function we() {
556
- return {
557
- page: {
558
- pageNum: 1,
559
- pageSize: 50
560
- },
561
- conditions: []
562
- };
563
- }
564
- function Te(e) {
565
- return e.name === "operatorId" ? ie : void 0;
566
- }
567
- function Ee(e, t) {
568
- switch (e) {
569
- case "outcome": return Oe(t.outcome);
570
- case "mutationSource": return De(t.mutationSource);
571
- case "employeeName": return t.operatorIdentity?.employeeName ?? "—";
572
- case "username": return t.operatorIdentity?.username ?? t.operatorId ?? "—";
573
- case "loginAccount": return je(t) ?? "—";
574
- case "organizationName": return t.operatorIdentity?.organizationName ?? "—";
575
- case "departmentName": return t.operatorIdentity?.departmentName ?? "—";
576
- case "errorCode": return Q(t.details?.errorCode) ?? "—";
577
- case "httpStatus": return Q(t.details?.httpStatus) ?? "—";
578
- default: return Fe(t[e]);
579
- }
580
- }
581
- function De(e) {
582
- return {
583
- BUSINESS: a.t("platform.screen.BusinessLogListDrawer.business-data-write", "业务写入"),
584
- ACTION: a.t("platform.workflow-task-editor.business-action", "业务动作"),
585
- SYSTEM: a.t("platform.screen.BusinessLogListDrawer.system-processing", "系统处理"),
586
- WRITE_BACK: a.t("platform.screen.BusinessLogListDrawer.platform-write-back", "平台回写")
587
- }[e ?? ""] ?? e ?? "—";
588
- }
589
- function Oe(e) {
590
- return {
591
- SUCCESS: a.t("platform.screen.BusinessLogListDrawer.success", "成功"),
592
- FAILURE: a.t("platform.screen.BusinessLogListDrawer.failure", "失败"),
593
- REJECTED: a.t("platform.screen.BusinessLogListDrawer.rejected", "拒绝")
594
- }[e ?? ""] ?? e ?? "—";
595
- }
596
- function ke(e) {
597
- return [
598
- [a.t("platform.screen.BusinessLogListDrawer.occurred-at", "发生时间"), e.occurredAt],
599
- [a.t("platform.screen.BusinessLogListDrawer.event-type", "事件类型"), e.eventType],
600
- [a.t("platform.screen.BusinessLogListDrawer.outcome", "结果"), e.outcome],
601
- [a.t("platform.user-picker.column.employee-name", "职员姓名"), e.operatorIdentity?.employeeName],
602
- [a.t("platform.screen.BusinessLogListDrawer.operator", "操作用户"), e.operatorIdentity?.username ?? e.operatorId],
603
- [a.t("platform.screen.CurrentUserProfileDialog.sign-in-account", "登录账号"), je(e)],
604
- [a.t("platform.screen.BusinessLogListDrawer.user-id", "用户 ID"), e.operatorId],
605
- [a.t("platform.user-picker.axis.organization", "机构"), e.operatorIdentity?.organizationName],
606
- [a.t("platform.screen.BusinessLogListDrawer.organization-id", "机构 ID"), e.operatorIdentity?.organizationId ?? e.operatorOrganizationId],
607
- [a.t("platform.user-picker.axis.department", "部门"), e.operatorIdentity?.departmentName],
608
- [a.t("platform.screen.BusinessLogListDrawer.department-id", "部门 ID"), e.operatorIdentity?.departmentId],
609
- [a.t("platform.screen.WorkflowWorkbenchView.business-module", "业务模块"), e.moduleAlias],
610
- [a.t("platform.governance.tab.actions", "动作"), e.actionCode],
611
- [a.t("platform.screen.BusinessLogListDrawer.entity", "实体"), e.entityAlias],
612
- [a.t("platform.screen.BusinessLogListDrawer.record-id", "记录 ID"), e.recordId],
613
- [a.t("platform.screen.BusinessLogListDrawer.change-source", "变更来源"), De(e.mutationSource)],
614
- [a.t("platform.screen.BusinessLogListDrawer.trace-id", "追踪 ID"), e.traceId],
615
- ...Pe(e.details, [
616
- "outcome",
617
- "entityAlias",
618
- "recordId",
619
- "mutationSource"
620
- ]).map((e) => [e.key, e.value])
621
- ].filter(([, e]) => e != null && e !== "").map(([e, t]) => ({
622
- key: e,
623
- value: Fe(t)
624
- }));
625
- }
626
- function Ae(e, t) {
627
- return (t?.items ?? []).map((t) => ({
628
- key: `${e}:${t.key}`,
629
- kind: e,
630
- title: ce(t, a),
631
- count: t.count
632
- }));
633
- }
634
- function je(e) {
635
- if (e.eventType === "LOGIN") return e.loginAccount ?? Q(e.details?.confirmedAccount) ?? Q(e.details?.claimedAccount);
636
- }
637
- function Me() {
638
- return [{
639
- key: "detail",
640
- title: a.t("platform.screen.PageCompositionEditor.details", "详情"),
641
- primary: !0,
642
- iconName: "eye"
643
- }];
644
- }
645
- function Ne(e, t) {
646
- e.key === "detail" && ge(t);
647
- }
648
- function Pe(e, t = []) {
649
- let n = new Set(t);
650
- return Object.entries(e ?? {}).filter(([e]) => !n.has(e)).map(([e, t]) => ({
651
- key: e,
652
- value: Fe(t)
653
- }));
654
- }
655
- function Q(e) {
656
- return typeof e == "string" || typeof e == "number" ? String(e) : void 0;
657
- }
658
- function Fe(e) {
659
- return e == null || e === "" ? "—" : typeof e == "string" ? e : JSON.stringify(e, null, 2);
660
- }
661
- function Ie(e) {
662
- return e instanceof Error ? e : new n(oe(a, "platform.screen.BusinessLogListDrawer.the-request-did-not-complete-try-again-later", "请求未完成,请稍后重试。"));
663
- }
664
- let Le = v(() => ({
665
- login: { columns: [
666
- {
667
- key: "outcome",
668
- title: a.t("platform.screen.BusinessLogListDrawer.outcome", "结果"),
669
- width: "96px"
670
- },
671
- {
672
- key: "occurredAt",
673
- title: a.t("platform.screen.BusinessLogListDrawer.occurred-at", "发生时间"),
674
- width: "176px"
675
- },
676
- {
677
- key: "loginAccount",
678
- title: a.t("platform.screen.CurrentUserProfileDialog.sign-in-account", "登录账号"),
679
- width: "200px"
680
- }
681
- ] },
682
- activity: { columns: [
683
- {
684
- key: "outcome",
685
- title: a.t("platform.screen.BusinessLogListDrawer.outcome", "结果"),
686
- width: "96px"
687
- },
688
- {
689
- key: "occurredAt",
690
- title: a.t("platform.screen.BusinessLogListDrawer.occurred-at", "发生时间"),
691
- width: "176px"
692
- },
693
- {
694
- key: "username",
695
- title: a.t("platform.screen.BusinessLogListDrawer.operator", "操作用户"),
696
- width: "160px"
697
- },
698
- {
699
- key: "moduleAlias",
700
- title: a.t("platform.screen.WorkflowWorkbenchView.business-module", "业务模块"),
701
- width: "190px"
702
- },
703
- {
704
- key: "actionCode",
705
- title: a.t("platform.governance.tab.actions", "动作"),
706
- width: "150px"
707
- },
708
- {
709
- key: "recordId",
710
- title: a.t("platform.screen.BusinessLogListDrawer.record-id", "记录 ID"),
711
- width: "170px"
712
- },
713
- {
714
- key: "mutationSource",
715
- title: a.t("platform.screen.BusinessLogListDrawer.change-source", "变更来源"),
716
- width: "120px"
717
- }
718
- ] },
719
- "request-error": { columns: [
720
- {
721
- key: "occurredAt",
722
- title: a.t("platform.screen.BusinessLogListDrawer.occurred-at", "发生时间"),
723
- width: "176px"
724
- },
725
- {
726
- key: "moduleAlias",
727
- title: a.t("platform.screen.WorkflowWorkbenchView.business-module", "业务模块"),
728
- width: "190px"
729
- },
730
- {
731
- key: "errorCode",
732
- title: a.t("platform.screen.BusinessLogListDrawer.error-code", "错误码"),
733
- width: "150px"
734
- },
735
- {
736
- key: "httpStatus",
737
- title: a.t("platform.screen.BusinessLogListDrawer.http-status", "HTTP 状态"),
738
- width: "112px"
739
- },
740
- {
741
- key: "summary",
742
- title: a.t("platform.screen.BusinessLogListDrawer.error-summary", "错误摘要"),
743
- width: "260px"
744
- }
745
- ] }
746
- }));
747
- function $(e) {
748
- return e instanceof n ? te(e, a) : se(i(e), a);
749
- }
750
- return (n, i) => (D(), x(_, null, [
751
- w(M(e), {
752
- class: "business-log-list",
753
- context: M(d),
754
- title: t.title,
755
- columns: de.value,
756
- "row-key": "eventId",
757
- "show-recycle-bin": !1,
758
- "page-size": 50,
759
- "page-size-options": [
760
- 20,
761
- 50,
762
- 100
763
- ],
764
- "reference-picker-of": Te,
765
- "empty-description": M(a).t("platform.screen.BusinessLogListDrawer.no-logs-match-the-criteria", "暂无符合条件的日志"),
766
- "row-actions-of": Me,
767
- "row-actions-title": M(a).t("platform.screen.RecordPermissionDialog.operation", "操作"),
768
- "action-column-width": "88px",
769
- onRecordActivate: ge,
770
- onRowAction: Ne,
771
- onQueried: Ce
772
- }, {
773
- operations: N(() => [q.value ? (D(), y(M(c), {
774
- key: 0,
775
- loading: U.value,
776
- onClick: _e
777
- }, {
778
- default: N(() => [C(j(M(a).t("platform.screen.BusinessLogListDrawer.usage-statistics", "使用统计")), 1)]),
779
- _: 1
780
- }, 8, ["loading"])) : b("v-if", !0), w(X, { "event-types": Y.value }, null, 8, ["event-types"])]),
781
- cell: N(({ column: e, record: t }) => [e.key === "occurredAt" ? (D(), y(M(u), {
782
- key: 0,
783
- value: t.occurredAt
784
- }, null, 8, ["value"])) : (D(), x("span", {
785
- key: 1,
786
- class: E({ "business-log-list__summary": e.key === "summary" })
787
- }, j(Ee(e.key, t)), 3))]),
788
- _: 1
789
- }, 8, [
790
- "context",
791
- "title",
792
- "columns",
793
- "empty-description",
794
- "row-actions-title"
795
- ]),
796
- w(M(o), {
797
- open: !!m.value,
798
- title: M(a).t("platform.screen.BusinessLogListDrawer.value-details", "{value1}详情", { value1: t.title }),
799
- "render-mode": "inline",
800
- subtitle: m.value ? m.value.operatorIdentity?.employeeName ?? m.value.operatorIdentity?.username ?? m.value.operatorId : void 0,
801
- "close-on-outside": !0,
802
- onClose: i[0] ||= (e) => m.value = void 0
803
- }, {
804
- default: N(() => [h.value ? (D(), y(M(ae), {
805
- key: 0,
806
- tip: M(a).t("platform.screen.BusinessLogListDrawer.loading-details", "加载详情")
807
- }, null, 8, ["tip"])) : P.value ? (D(), y(M(l), {
808
- key: 1,
809
- title: M(a).t("platform.screen.BusinessLogListDrawer.failed-to-load-log-details", "日志详情加载失败"),
810
- message: P.value
811
- }, null, 8, ["title", "message"])) : m.value ? (D(), x("dl", Z, [(D(!0), x(_, null, k(fe.value, (e) => (D(), x(_, { key: e.key }, [S("dt", null, j(e.key), 1), S("dd", null, [S("pre", null, j(e.value), 1)])], 64))), 128))])) : (D(), y(M(r), {
812
- key: 3,
813
- description: M(a).t("platform.screen.BusinessLogListDrawer.no-log-selected", "未选择日志")
814
- }, null, 8, ["description"])), J.value && m.value && ue.value ? (D(), x("section", ve, [
815
- w(M(c), {
816
- loading: L.value,
817
- onClick: Se
818
- }, {
819
- default: N(() => [C(j(M(a).t("platform.screen.BusinessLogListDrawer.view-internal-diagnostics", "查看内部诊断")), 1)]),
820
- _: 1
821
- }, 8, ["loading"]),
822
- S("small", null, j(M(a).t("platform.screen.BusinessLogListDrawer.only-administrators-with-platform-wide-scope-can-view-this-information", "仅具备平台范围的管理员可查看。")), 1),
823
- z.value ? (D(), y(M(l), {
824
- key: 0,
825
- title: M(a).t("platform.screen.BusinessLogListDrawer.internal-diagnostics-unavailable", "内部诊断不可用"),
826
- message: z.value
827
- }, null, 8, ["title", "message"])) : I.value ? (D(), x("dl", ye, [(D(!0), x(_, null, k(pe.value, (e) => (D(), x(_, { key: e.key }, [S("dt", null, j(e.key), 1), S("dd", null, [S("pre", null, j(e.value), 1)])], 64))), 128))])) : b("v-if", !0)
828
- ])) : b("v-if", !0)]),
829
- _: 1
830
- }, 8, [
831
- "open",
832
- "title",
833
- "subtitle"
834
- ]),
835
- w(M(o), {
836
- open: B.value,
837
- title: M(a).t("platform.screen.BusinessLogListDrawer.business-activity-usage-statistics", "业务活动使用统计"),
838
- "render-mode": "inline",
839
- subtitle: M(a).t("platform.screen.BusinessLogListDrawer.statistics-follow-the-current-query-criteria-and-the-signed-in", "统计口径遵循当前标准查询条件与登录账号的数据范围。"),
840
- "close-on-outside": !0,
841
- onClose: i[1] ||= (e) => B.value = !1
842
- }, {
843
- default: N(() => [U.value ? (D(), y(M(ae), {
844
- key: 0,
845
- tip: M(a).t("platform.screen.BusinessLogListDrawer.loading-usage-statistics", "加载使用统计")
846
- }, null, 8, ["tip"])) : G.value ? (D(), y(M(l), {
847
- key: 1,
848
- title: M(a).t("platform.screen.BusinessLogListDrawer.failed-to-load-usage-statistics", "使用统计加载失败"),
849
- message: G.value
850
- }, null, 8, ["title", "message"])) : (D(), x(_, { key: 2 }, [he.value ? (D(), x("p", be, j(M(a).t("platform.screen.BusinessLogListDrawer.these-statistics-cover-only-the-most-recent-accessible-logs", "当前统计只覆盖可读取的最近日志。")), 1)) : b("v-if", !0), me.value.length > 0 ? (D(), x("dl", xe, [(D(!0), x(_, null, k(me.value, (e) => (D(), x(_, { key: e.key }, [S("dt", null, j(e.kind) + " · " + j(e.title), 1), S("dd", null, j(e.count), 1)], 64))), 128))])) : (D(), y(M(r), {
851
- key: 2,
852
- description: M(a).t("platform.screen.BusinessLogListDrawer.no-business-activity-available-for-statistics", "暂无可统计的业务活动")
853
- }, null, 8, ["description"]))], 64))]),
854
- _: 1
855
- }, 8, [
856
- "open",
857
- "title",
858
- "subtitle"
859
- ])
860
- ], 64));
861
- }
862
- }), [["__scopeId", "data-v-daa601a0"]]);
863
- //#endregion
864
- export { Se as t };