@ximatai/muyun-web-app 0.26.5 → 0.26.7

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 (123) hide show
  1. package/dist/{EmployeeDetailWorkspaceView-rm9ujeiQ.js → EmployeeDetailWorkspaceView-DYJLlkSz.js} +1 -1
  2. package/dist/EmployeeManagementView-taxWUa7g.js +1778 -0
  3. package/dist/{MetadataOrchestrationView-DaPNQML7.js → MetadataOrchestrationView-B-CPudJl.js} +151 -151
  4. package/dist/ModuleActionManagementView-CmVj0e0C.js +597 -0
  5. package/dist/{RoleAuthorizationView-qQvn7M75.js → RoleAuthorizationView-q_6CsBYq.js} +194 -194
  6. package/dist/{RoleDetailWorkspaceView-C-vaKeZM.js → RoleDetailWorkspaceView-DmJlJgAj.js} +1 -1
  7. package/dist/{RoleManagementView-C3nxfub2.js → RoleManagementView-HCa9rH0f.js} +466 -466
  8. package/dist/{SystemUserDetailWorkspaceView-FIbfff00.js → SystemUserDetailWorkspaceView-U6Ij0US1.js} +1 -1
  9. package/dist/SystemUserManagementView-C1CkKivH.js +758 -0
  10. package/dist/{UserDetailWorkspaceView-M--ndn6x.js → UserDetailWorkspaceView-OPYvD6mH.js} +1 -1
  11. package/dist/{UserManagementView-MSXf4fno.js → UserManagementView-gbCL9SnC.js} +226 -226
  12. package/dist/index.css +1 -1
  13. package/dist/index.js +3309 -2288
  14. package/dist/pageRealtime-CzJlr9hs.js +225 -0
  15. package/dist/{platform-components-_3KlZZf5.js → platform-components-DKKWbNrz.js} +4196 -1790
  16. package/dist/types/app/CurrentUserProfileDialog.vue.d.ts +33 -0
  17. package/dist/types/app/LoginView.vue.d.ts +4 -1
  18. package/dist/types/app/ThemeSkinPreferencesDialog.vue.d.ts +20 -0
  19. package/dist/types/app/lockedTabPreference.d.ts +6 -0
  20. package/dist/types/app/themeSkinPreference.d.ts +11 -0
  21. package/dist/types/app/workbenchRouteSync.d.ts +13 -0
  22. package/dist/types/app/workbenchStartup.d.ts +14 -1
  23. package/dist/types/consumer/AppWorkbenchShell.vue.d.ts +43 -0
  24. package/dist/types/consumer/index.d.ts +24 -1
  25. package/dist/types/consumer/userPreferencePersistence.d.ts +7 -0
  26. package/dist/types/consumer/workbenchNavigation.d.ts +8 -0
  27. package/dist/types/dynamic-page-runtime/DynamicModuleHost.vue.d.ts +8 -1
  28. package/dist/types/dynamic-page-runtime/index.d.ts +5 -0
  29. package/dist/types/dynamic-page-runtime/modulePageEnhancements.d.ts +144 -0
  30. package/dist/types/dynamic-page-runtime/modulePageListRefresh.d.ts +12 -0
  31. package/dist/types/dynamic-page-runtime/modulePageNavigation.d.ts +11 -0
  32. package/dist/types/platform-admin-runtime/PlatformAdminOutlet.vue.d.ts +1 -0
  33. package/dist/types/platform-admin-runtime/backendHttp.d.ts +1 -1
  34. package/dist/types/platform-admin-runtime/index.d.ts +3 -0
  35. package/dist/types/platform-admin-runtime/realtime.d.ts +9 -5
  36. package/dist/types/platform-admin-runtime/workspaceViewContract.d.ts +1 -36
  37. package/dist/types/platform-admin-runtime/workspaceViewHost.d.ts +2 -10
  38. package/dist/types/platform-admin-runtime/workspaceViews.d.ts +1 -17
  39. package/dist/types/platform-components/CrudRecordListExplorer.vue.d.ts +2 -2
  40. package/dist/types/platform-components/DateTimeText.vue.d.ts +1 -1
  41. package/dist/types/platform-components/FileSizeText.vue.d.ts +10 -0
  42. package/dist/types/platform-components/FileTransferUploader.vue.d.ts +70 -0
  43. package/dist/types/platform-components/ManagementPanelHeader.vue.d.ts +30 -0
  44. package/dist/types/platform-components/RecordDetailExtensionSection.vue.d.ts +16 -0
  45. package/dist/types/platform-components/RecordDetailFields.vue.d.ts +1 -1
  46. package/dist/types/platform-components/RecordDetailLayout.vue.d.ts +8 -6
  47. package/dist/types/platform-components/RecordDetailPanel.vue.d.ts +5 -5
  48. package/dist/types/platform-components/RecordExplorerPanel.vue.d.ts +6 -6
  49. package/dist/types/platform-components/RecordFileReferenceTransfer.vue.d.ts +29 -0
  50. package/dist/types/platform-components/RecordFormFields.vue.d.ts +8 -0
  51. package/dist/types/platform-components/RecordListExplorer.vue.d.ts +2 -2
  52. package/dist/types/platform-components/RecordModeDrawer.vue.d.ts +1 -0
  53. package/dist/types/platform-components/RecordMultiPicker.vue.d.ts +33 -0
  54. package/dist/types/platform-components/RecordPanelButton.vue.d.ts +33 -0
  55. package/dist/types/platform-components/RecordPanelState.vue.d.ts +11 -0
  56. package/dist/types/platform-components/RecordPicker.vue.d.ts +1 -1
  57. package/dist/types/platform-components/RecordQueryListPanel.vue.d.ts +47 -2
  58. package/dist/types/platform-components/RecordStatusTag.vue.d.ts +6 -1
  59. package/dist/types/platform-components/RecordTagList.vue.d.ts +7 -0
  60. package/dist/types/platform-components/SingleImageFileReferenceField.vue.d.ts +23 -0
  61. package/dist/types/platform-components/TreeRecordExplorer.vue.d.ts +2 -2
  62. package/dist/types/platform-components/fileReferenceTransfer.d.ts +25 -0
  63. package/dist/types/platform-components/fileTransferUpload.d.ts +43 -0
  64. package/dist/types/platform-components/index.d.ts +15 -1
  65. package/dist/types/platform-components/platformErrorFeedback.d.ts +4 -0
  66. package/dist/types/platform-components/platformFileSize.d.ts +10 -0
  67. package/dist/types/platform-components/recordActionBarModel.d.ts +12 -1
  68. package/dist/types/platform-components/recordFormFieldModel.d.ts +24 -3
  69. package/dist/types/platform-components/scopedTreeModuleContext.d.ts +1 -1
  70. package/dist/types/platform-components/staticCrudManagementState.d.ts +1 -1
  71. package/dist/types/platform-workbench/Workbench.vue.d.ts +12 -2
  72. package/dist/types/platform-workbench/WorkbenchBrandControl.vue.d.ts +41 -0
  73. package/dist/types/platform-workbench/WorkbenchMenu.vue.d.ts +39 -1
  74. package/dist/types/platform-workbench/WorkbenchMenuTree.vue.d.ts +2 -0
  75. package/dist/types/platform-workbench/WorkbenchSidebarMenuEntry.vue.d.ts +19 -0
  76. package/dist/types/platform-workbench/WorkspaceViewOutlet.vue.d.ts +7 -0
  77. package/dist/types/platform-workbench/index.d.ts +7 -0
  78. package/dist/types/platform-workbench/menuHoverClickIntent.d.ts +10 -0
  79. package/dist/types/platform-workbench/menuPointerAim.d.ts +11 -0
  80. package/dist/types/platform-workbench/workbenchLayout.d.ts +4 -0
  81. package/dist/types/platform-workbench/workspaceViewContract.d.ts +20 -0
  82. package/dist/types/platform-workbench/workspaceViewHost.d.ts +8 -0
  83. package/dist/types/platform-workbench/workspaceViews.d.ts +21 -0
  84. package/dist/types/views/applicationManagementState.d.ts +1 -1
  85. package/dist/types/views/employeeDetailWorkspaceView.d.ts +1 -1
  86. package/dist/types/views/fieldSpecManagementState.d.ts +1 -1
  87. package/dist/types/views/fieldUiControlManagementState.d.ts +1 -1
  88. package/dist/types/views/metadataOrchestrationWorkspaceView.d.ts +1 -1
  89. package/dist/types/views/moduleActionManagementWorkspaceView.d.ts +1 -1
  90. package/dist/types/views/roleAuthorizationWorkspaceView.d.ts +1 -1
  91. package/dist/types/views/roleDetailWorkspaceView.d.ts +1 -1
  92. package/dist/types/views/systemUserDetailWorkspaceView.d.ts +1 -1
  93. package/dist/types/views/tenantManagementState.d.ts +11 -1
  94. package/dist/types/views/userDetailWorkspaceView.d.ts +1 -1
  95. package/dist/types/vue-ui-antdv/components/UiColorPicker.vue.d.ts +14 -0
  96. package/dist/types/vue-ui-antdv/components/UiDataTable.vue.d.ts +1 -1
  97. package/dist/types/vue-ui-antdv/components/UiIcon.vue.d.ts +1 -1
  98. package/dist/types/vue-ui-antdv/components/UiRecordExplorerItem.vue.d.ts +3 -3
  99. package/dist/types/vue-ui-antdv/components/UiSelect.vue.d.ts +1 -1
  100. package/dist/types/vue-ui-antdv/components/UiTabs.vue.d.ts +6 -0
  101. package/dist/types/vue-ui-antdv/components/UiTagList.vue.d.ts +17 -0
  102. package/dist/types/vue-ui-antdv/components/UiThemeProvider.vue.d.ts +21 -0
  103. package/dist/types/vue-ui-antdv/components/UiTree.vue.d.ts +3 -3
  104. package/dist/types/vue-ui-antdv/components/UiTreeSelect.vue.d.ts +1 -1
  105. package/dist/types/vue-ui-antdv/index.d.ts +6 -0
  106. package/dist/types/vue-ui-antdv/theme.d.ts +58 -0
  107. package/dist/types/vue-ui-antdv/themeGlobalScope.d.ts +2 -0
  108. package/dist/types/vue-ui-antdv/types.d.ts +4 -9
  109. package/dist/types/web-contracts/index.d.ts +168 -0
  110. package/dist/types/web-core/clients.d.ts +14 -1
  111. package/dist/types/web-core/http.d.ts +12 -1
  112. package/dist/types/web-core/index.d.ts +2 -0
  113. package/dist/types/web-core/mock.d.ts +3 -1
  114. package/dist/types/web-core/module/staticModuleClient.d.ts +1 -0
  115. package/dist/types/web-core/userPreferences.d.ts +24 -0
  116. package/dist/{useUserSessionRows-iAqK_cUy.js → useUserSessionRows-CBHEzRFQ.js} +2 -2
  117. package/dist/workspaceViewSessions-DkB9myrq.js +3252 -0
  118. package/package.json +1 -1
  119. package/dist/EmployeeManagementView-DyYMWQ64.js +0 -1706
  120. package/dist/ModuleActionManagementView-BFoPGqzC.js +0 -597
  121. package/dist/SystemUserManagementView-m6vwJDxI.js +0 -761
  122. package/dist/pageRealtime-4LXXvVW7.js +0 -140
  123. package/dist/workspaceViewSessions-DW0wbyQ_.js +0 -1448
@@ -0,0 +1,597 @@
1
+ import { A as e, B as t, Dt as n, Et as r, I as ee, Mt as i, Nt as a, Ot as o, S as te, Tt as s, Wt as ne, Y as re, _ as ie, bt as c, gt as ae, jt as l, kt as u, o as d, st as oe, t as se, tt as ce, u as le, zt as ue } from "./platform-components-DKKWbNrz.js";
2
+ import { computed as f, createBlock as p, createCommentVNode as m, createElementBlock as h, createElementVNode as g, createTextVNode as _, createVNode as v, defineComponent as y, onMounted as de, openBlock as b, ref as x, toDisplayString as S, unref as C, withCtx as w, withModifiers as T } from "vue";
3
+ //#region src/views/ModuleActionManagementView.vue?vue&type=script&setup=true&lang.ts
4
+ var fe = { class: "action-declaration-section" }, pe = { class: "permission-governance-section" }, me = { class: "governance-grid" }, he = { class: "governance-item" }, ge = {
5
+ type: "button",
6
+ class: "governance-help",
7
+ "aria-label": "访问方式说明"
8
+ }, _e = { class: "governance-reset-slot" }, ve = { class: "governance-item" }, ye = {
9
+ type: "button",
10
+ class: "governance-help",
11
+ "aria-label": "默认授予策略说明"
12
+ }, be = { class: "governance-reset-slot" }, E = { class: "governance-item" }, D = {
13
+ type: "button",
14
+ class: "governance-help",
15
+ "aria-label": "动作授权说明"
16
+ }, O = { class: "governance-reset-slot" }, k = { class: "governance-switch-control" }, A = { class: "governance-item" }, j = {
17
+ type: "button",
18
+ class: "governance-help",
19
+ "aria-label": "数据授权说明"
20
+ }, M = { class: "governance-reset-slot" }, N = { class: "governance-switch-control" }, xe = { class: "checkbox-field" }, Se = { class: "checkbox-field" }, Ce = { class: "wide-field" }, we = { class: "wide-field" }, P = /*#__PURE__*/ i(/* @__PURE__ */ y({
21
+ name: "ModuleActionManagementView",
22
+ __name: "ModuleActionManagementView",
23
+ props: {
24
+ moduleAlias: {},
25
+ moduleTitle: {},
26
+ moduleKind: {},
27
+ title: {}
28
+ },
29
+ setup(i) {
30
+ let y = i, P = ue({ moduleAlias: "platform.module_action" }), F = d(P, { client: ne(P.http, `/platform.module/${encodeURIComponent(y.moduleAlias)}/actions`) }), I = x(""), L = x([]), R = se({
31
+ context: F,
32
+ confirmAction: oe,
33
+ emptyDraft: () => He(y.moduleAlias),
34
+ normalizeDraft: (e) => J(e, y.moduleAlias),
35
+ copyRecord: (e) => ({ ...e }),
36
+ titleOf: Q,
37
+ fallbackTitle: "模块动作",
38
+ createTitle: "新建动作",
39
+ requiredMessage: "动作编码不能为空",
40
+ isValid: (e) => !!e.actionCode?.trim(),
41
+ recordName: "动作",
42
+ deleteTitle: "删除动作",
43
+ saveDeniedMessage: "当前用户无权保存模块动作",
44
+ createDeniedMessage: "当前用户无权新建模块动作",
45
+ enableDeniedMessage: "当前用户无权变更模块动作启停状态",
46
+ deleteDeniedMessage: () => "当前用户无权删除模块动作",
47
+ canDeleteRecord: (e) => e.systemManaged !== !0,
48
+ canEnableRecord: (e) => e.systemManaged !== !0
49
+ }), { selected: z, draft: B, mode: V, reloadKey: H, saving: U, cardTitle: Te, canCreate: Ee, canEnable: De } = R, Oe = f(() => y.moduleKind === "dynamic" && Ee.value && L.value.length > 0), ke = f(() => L.value.map((e) => ({
50
+ value: e.executorKey,
51
+ label: e.description ? `${e.title} · ${e.description}` : e.title
52
+ }))), Ae = f(() => (L.value.find((e) => e.executorKey === B.value.executorKey)?.supportedLevels ?? []).map((e) => ({
53
+ value: e,
54
+ label: {
55
+ LIST: "列表",
56
+ RECORD: "单条记录",
57
+ BATCH: "批量",
58
+ ANY: "任意"
59
+ }[e]
60
+ }))), je = f(() => [
61
+ "actionCode",
62
+ "title",
63
+ "category",
64
+ "actionLevel",
65
+ "accessMode",
66
+ "executorType",
67
+ ...Z(B.value.executorKey) ? ["executorKey"] : [],
68
+ "actionAuth",
69
+ "dataAuth",
70
+ "defaultGrantPolicy",
71
+ ...Z(B.value.availableExpression) ? ["availableExpression"] : [],
72
+ ...Z(B.value.unavailableMessage) ? ["unavailableMessage"] : [],
73
+ ...B.value.sourceType ? ["sourceType"] : [],
74
+ ...Z(B.value.bindingAlias) ? ["bindingAlias"] : []
75
+ ]), Me = f(() => [
76
+ "actionCode",
77
+ "title",
78
+ "category",
79
+ "actionLevel",
80
+ "executorType",
81
+ ...Z(B.value.executorKey) ? ["executorKey"] : [],
82
+ ...B.value.sourceType ? ["sourceType"] : []
83
+ ]);
84
+ de(() => void ze());
85
+ let Ne = f(() => R.readonly.value), W = f(() => Ne.value || R.saving.value), Pe = f(() => {
86
+ if (R.mode.value !== "view") return [
87
+ ...R.mode.value === "edit" && R.selected.value?.systemManaged === !0 && Le(B.value) ? [{
88
+ key: "reset-permission-governance",
89
+ actionCode: "update",
90
+ title: "全部重置",
91
+ disabled: R.saving.value
92
+ }] : [],
93
+ {
94
+ key: "cancel",
95
+ title: "取消",
96
+ disabled: R.saving.value
97
+ },
98
+ {
99
+ key: "save",
100
+ actionCode: R.mode.value === "create" ? "create" : "update",
101
+ title: R.saving.value ? "保存中" : "保存",
102
+ primary: !0,
103
+ loading: R.saving.value
104
+ }
105
+ ];
106
+ let e = R.selected.value;
107
+ return [{
108
+ key: "edit",
109
+ actionCode: "update",
110
+ title: "编辑",
111
+ disabled: !e || !R.canUpdate.value
112
+ }, {
113
+ key: "delete",
114
+ actionCode: "delete",
115
+ title: "删除",
116
+ danger: !0,
117
+ loading: R.saving.value,
118
+ disabled: !e || e.systemManaged === !0 || !R.canDelete.value
119
+ }];
120
+ });
121
+ function Fe(e) {
122
+ let t = e;
123
+ return {
124
+ title: Q(t),
125
+ secondary: t.actionCode,
126
+ tag: t.systemManaged === !0 ? "平台托管" : t.category,
127
+ muted: t.enabled === !1
128
+ };
129
+ }
130
+ function Ie(e) {
131
+ e.key === "edit" && R.startEdit(), e.key === "delete" && R.removeSelected(), e.key === "reset-permission-governance" && Re(), e.key === "cancel" && R.cancelEdit(), e.key === "save" && R.save();
132
+ }
133
+ function Le(e) {
134
+ return [
135
+ e.accessModeOverride,
136
+ e.actionAuthOverride,
137
+ e.dataAuthOverride,
138
+ e.defaultGrantPolicyOverride
139
+ ].some((e) => e != null);
140
+ }
141
+ function G(e) {
142
+ return B.value[e] != null;
143
+ }
144
+ function K(e) {
145
+ q(e, void 0);
146
+ }
147
+ function Re() {
148
+ R.draft.value = {
149
+ ...R.draft.value,
150
+ accessModeOverride: void 0,
151
+ actionAuthOverride: void 0,
152
+ dataAuthOverride: void 0,
153
+ defaultGrantPolicyOverride: void 0
154
+ };
155
+ }
156
+ function q(e, t) {
157
+ R.draft.value = {
158
+ ...R.draft.value,
159
+ [e]: t ?? void 0
160
+ };
161
+ }
162
+ async function ze() {
163
+ try {
164
+ L.value = await P.http.request({ path: "/platform.module/action-executors" });
165
+ } catch (e) {
166
+ L.value = [], ce(e, {
167
+ source: "module-action-management",
168
+ phase: "load"
169
+ });
170
+ }
171
+ }
172
+ function Be() {
173
+ R.startCreate();
174
+ let e = L.value[0];
175
+ e && (R.draft.value = {
176
+ ...R.draft.value,
177
+ executorKey: e.executorKey,
178
+ actionLevel: e.supportedLevels[0] ?? "ANY"
179
+ });
180
+ }
181
+ function Ve(e) {
182
+ let t = typeof e == "string" ? e : void 0, n = L.value.find((e) => e.executorKey === t);
183
+ q("executorKey", t), n?.supportedLevels.length && q("actionLevel", n.supportedLevels[0]);
184
+ }
185
+ function He(e) {
186
+ return {
187
+ moduleAlias: e,
188
+ actionCode: "",
189
+ title: "",
190
+ category: "CUSTOM",
191
+ actionLevel: "ANY",
192
+ accessMode: "AUTH_REQUIRED",
193
+ actionAuth: !0,
194
+ dataAuth: !1,
195
+ defaultGrantPolicy: "NONE",
196
+ executorType: "SERVICE",
197
+ enabled: !0,
198
+ systemManaged: !1
199
+ };
200
+ }
201
+ function J(e, t) {
202
+ return {
203
+ ...e,
204
+ moduleAlias: t,
205
+ actionCode: Y(e.actionCode),
206
+ title: X(e.title) ?? Y(e.actionCode),
207
+ entityAlias: X(e.entityAlias),
208
+ permissionActionCode: X(e.permissionActionCode),
209
+ availableExpression: X(e.availableExpression),
210
+ unavailableMessage: X(e.unavailableMessage),
211
+ executorKey: X(e.executorKey)
212
+ };
213
+ }
214
+ function Y(e) {
215
+ return e?.trim() ?? "";
216
+ }
217
+ function X(e) {
218
+ return e?.trim() || void 0;
219
+ }
220
+ function Z(e) {
221
+ return !!e?.trim();
222
+ }
223
+ function Q(e) {
224
+ return e.title?.trim() || e.actionCode?.trim() || e.id || "未命名动作";
225
+ }
226
+ function $(e, t) {
227
+ return e === "actionAuth" || e === "dataAuth" ? t === !0 ? "启用" : "未启用" : typeof t == "string" ? {
228
+ category: {
229
+ STANDARD: "标准动作",
230
+ CUSTOM: "自定义动作",
231
+ DIALOG: "弹窗动作",
232
+ WORKFLOW: "工作流动作",
233
+ GENERATE: "生成动作"
234
+ },
235
+ actionLevel: {
236
+ LIST: "列表",
237
+ RECORD: "单条记录",
238
+ BATCH: "批量",
239
+ ANY: "任意"
240
+ },
241
+ accessMode: {
242
+ AUTH_REQUIRED: "需要授权",
243
+ LOGIN_REQUIRED: "登录可用",
244
+ ANONYMOUS_ALLOWED: "匿名可用"
245
+ },
246
+ executorType: {
247
+ STANDARD: "平台标准",
248
+ SERVICE: "服务(二开)",
249
+ DIALOG: "弹窗协议",
250
+ WORKFLOW: "工作流",
251
+ GENERATE: "生成器"
252
+ },
253
+ defaultGrantPolicy: {
254
+ NONE: "不默认授予",
255
+ ANY_LOGIN_USER: "所有登录用户",
256
+ OWNER: "记录所有者",
257
+ ASSIGNEE: "办理人",
258
+ MEMBER: "成员"
259
+ },
260
+ sourceType: {
261
+ STATIC_MODULE: "静态模块声明",
262
+ CODE_EXTENSION: "代码扩展",
263
+ DYNAMIC_MODULE: "动态模块配置",
264
+ WORKFLOW_DEFINITION: "工作流定义",
265
+ WORKFLOW_RUNTIME: "工作流运行时",
266
+ RECORD_GENERATION_RULE: "生单规则",
267
+ DOCUMENT_RELATION: "单据关系",
268
+ PRINT_TEMPLATE: "打印模板"
269
+ }
270
+ }[e]?.[t] : void 0;
271
+ }
272
+ return (ne, d) => (b(), p(C(le), {
273
+ "explorer-title": "模块动作",
274
+ "refresh-title": "刷新动作",
275
+ mode: C(V),
276
+ "detail-title": C(Te),
277
+ "explorer-search-keyword": I.value,
278
+ "explorer-search-placeholder": "搜索动作名称或编码",
279
+ "onUpdate:explorerSearchKeyword": d[22] ||= (e) => I.value = e,
280
+ onRefresh: d[23] ||= (e) => H.value += 1
281
+ }, {
282
+ "explorer-actions": w(() => [v(C(t), {
283
+ class: "record-panel-create-button",
284
+ context: C(F),
285
+ "action-code": "create",
286
+ title: "新建动作",
287
+ "icon-only": "",
288
+ disabled: !Oe.value || C(U),
289
+ onClick: Be
290
+ }, null, 8, ["context", "disabled"])]),
291
+ explorer: w(() => [v(C(re), {
292
+ context: C(F),
293
+ "selected-id": C(z)?.id,
294
+ "reload-key": C(H),
295
+ keyword: I.value,
296
+ "empty-description": "当前模块暂无动作",
297
+ "loading-tip": "加载模块动作",
298
+ "fallback-title": "未命名动作",
299
+ "item-of": Fe,
300
+ onLoaded: d[0] ||= (e) => C(R).handleListLoaded(e),
301
+ onSelect: d[1] ||= (e) => C(R).handleSelect(e)
302
+ }, null, 8, [
303
+ "context",
304
+ "selected-id",
305
+ "reload-key",
306
+ "keyword"
307
+ ])]),
308
+ "detail-status": w(() => [C(V) === "view" && C(z) ? (b(), p(C(te), {
309
+ key: 0,
310
+ enabled: C(z).enabled,
311
+ disabled: C(U) || C(z).systemManaged === !0 || !C(De),
312
+ loading: C(U),
313
+ "show-label": !1,
314
+ onChange: C(R).toggleEnabled
315
+ }, null, 8, [
316
+ "enabled",
317
+ "disabled",
318
+ "loading",
319
+ "onChange"
320
+ ])) : m("v-if", !0)]),
321
+ "detail-actions": w(() => [v(C(ee), {
322
+ context: C(F),
323
+ actions: Pe.value,
324
+ onAction: Ie
325
+ }, null, 8, ["context", "actions"])]),
326
+ default: w(() => [!C(z) && C(V) === "view" ? (b(), p(C(ae), {
327
+ key: 0,
328
+ description: i.moduleKind === "static" ? "静态模块动作由 Java 声明自动注册" : "当前模块暂无动作"
329
+ }, null, 8, ["description"])) : C(V) === "view" && C(z) ? (b(), p(C(e), {
330
+ key: 1,
331
+ record: C(B),
332
+ "display-of": $,
333
+ "field-names": je.value,
334
+ fallback: {
335
+ actionCode: { label: "动作编码" },
336
+ title: { label: "动作名称" },
337
+ category: { label: "动作类别" },
338
+ actionLevel: { label: "执行层级" },
339
+ accessMode: { label: "访问方式" },
340
+ executorType: { label: "执行方式" },
341
+ executorKey: { label: "执行实现" },
342
+ actionAuth: { label: "动作授权" },
343
+ dataAuth: { label: "数据授权" },
344
+ defaultGrantPolicy: { label: "默认授予策略" },
345
+ availableExpression: { label: "可用条件" },
346
+ unavailableMessage: { label: "不可用提示" },
347
+ sourceType: { label: "注册来源" },
348
+ bindingAlias: { label: "绑定标识" }
349
+ }
350
+ }, null, 8, ["record", "field-names"])) : C(z)?.systemManaged ? (b(), h("form", {
351
+ key: 2,
352
+ class: "managed-action-editor",
353
+ onSubmit: d[10] ||= T((...e) => C(R).save && C(R).save(...e), ["prevent"])
354
+ }, [g("section", fe, [d[24] ||= g("h3", null, "动作声明", -1), v(C(e), {
355
+ record: C(B),
356
+ "display-of": $,
357
+ "field-names": Me.value,
358
+ fallback: {
359
+ actionCode: { label: "动作编码" },
360
+ title: { label: "动作名称" },
361
+ category: { label: "动作类别" },
362
+ actionLevel: { label: "执行层级" },
363
+ executorType: { label: "执行方式" },
364
+ executorKey: { label: "执行实现" },
365
+ sourceType: { label: "注册来源" }
366
+ }
367
+ }, null, 8, ["record", "field-names"])]), g("section", pe, [d[33] ||= g("h3", null, "权限治理", -1), g("div", me, [
368
+ g("section", he, [g("header", null, [g("div", null, [g("h4", null, [d[25] ||= _(" 访问方式 ", -1), v(C(s), { title: "决定调用动作前需要满足的身份条件。" }, {
369
+ default: w(() => [g("button", ge, [v(C(a), { name: "help" })])]),
370
+ _: 1
371
+ })])]), g("span", _e, [G("accessModeOverride") ? (b(), p(C(l), {
372
+ key: 0,
373
+ type: "text",
374
+ size: "small",
375
+ disabled: W.value,
376
+ onClick: d[2] ||= (e) => K("accessModeOverride")
377
+ }, {
378
+ default: w(() => [...d[26] ||= [_("重置", -1)]]),
379
+ _: 1
380
+ }, 8, ["disabled"])) : m("v-if", !0)])]), v(C(o), {
381
+ value: C(B).accessModeOverride ?? C(B).accessMode,
382
+ disabled: W.value,
383
+ options: [
384
+ {
385
+ label: "需要授权",
386
+ value: "AUTH_REQUIRED"
387
+ },
388
+ {
389
+ label: "登录可用",
390
+ value: "LOGIN_REQUIRED"
391
+ },
392
+ {
393
+ label: "匿名可用",
394
+ value: "ANONYMOUS_ALLOWED"
395
+ }
396
+ ],
397
+ "onUpdate:value": d[3] ||= (e) => q("accessModeOverride", e)
398
+ }, null, 8, ["value", "disabled"])]),
399
+ g("section", ve, [g("header", null, [g("div", null, [g("h4", null, [d[27] ||= _(" 默认授予策略 ", -1), v(C(s), { title: "定义满足条件的用户首次获得动作时的默认规则。" }, {
400
+ default: w(() => [g("button", ye, [v(C(a), { name: "help" })])]),
401
+ _: 1
402
+ })])]), g("span", be, [G("defaultGrantPolicyOverride") ? (b(), p(C(l), {
403
+ key: 0,
404
+ type: "text",
405
+ size: "small",
406
+ disabled: W.value,
407
+ onClick: d[4] ||= (e) => K("defaultGrantPolicyOverride")
408
+ }, {
409
+ default: w(() => [...d[28] ||= [_("重置", -1)]]),
410
+ _: 1
411
+ }, 8, ["disabled"])) : m("v-if", !0)])]), v(C(o), {
412
+ value: C(B).defaultGrantPolicyOverride ?? C(B).defaultGrantPolicy,
413
+ disabled: W.value,
414
+ options: [
415
+ {
416
+ label: "不默认授予",
417
+ value: "NONE"
418
+ },
419
+ {
420
+ label: "所有登录用户",
421
+ value: "ANY_LOGIN_USER"
422
+ },
423
+ {
424
+ label: "记录所有者",
425
+ value: "OWNER"
426
+ },
427
+ {
428
+ label: "办理人",
429
+ value: "ASSIGNEE"
430
+ },
431
+ {
432
+ label: "成员",
433
+ value: "MEMBER"
434
+ }
435
+ ],
436
+ "onUpdate:value": d[5] ||= (e) => q("defaultGrantPolicyOverride", e)
437
+ }, null, 8, ["value", "disabled"])]),
438
+ g("section", E, [g("header", null, [g("div", null, [g("h4", null, [d[29] ||= _(" 动作授权 ", -1), v(C(s), { title: "控制角色是否需要被显式授予该动作。" }, {
439
+ default: w(() => [g("button", D, [v(C(a), { name: "help" })])]),
440
+ _: 1
441
+ })])]), g("span", O, [G("actionAuthOverride") ? (b(), p(C(l), {
442
+ key: 0,
443
+ type: "text",
444
+ size: "small",
445
+ disabled: W.value,
446
+ onClick: d[6] ||= (e) => K("actionAuthOverride")
447
+ }, {
448
+ default: w(() => [...d[30] ||= [_("重置", -1)]]),
449
+ _: 1
450
+ }, 8, ["disabled"])) : m("v-if", !0)])]), g("div", k, [v(C(c), {
451
+ checked: (C(B).actionAuthOverride ?? C(B).actionAuth) !== !1,
452
+ disabled: W.value,
453
+ "checked-text": "开",
454
+ "unchecked-text": "关",
455
+ "onUpdate:checked": d[7] ||= (e) => q("actionAuthOverride", e)
456
+ }, null, 8, ["checked", "disabled"]), g("strong", null, S((C(B).actionAuthOverride ?? C(B).actionAuth) === !1 ? "未启用" : "已启用"), 1)])]),
457
+ g("section", A, [g("header", null, [g("div", null, [g("h4", null, [d[31] ||= _(" 数据授权 ", -1), v(C(s), { title: "启用后,读取和执行会继续按数据范围校验。" }, {
458
+ default: w(() => [g("button", j, [v(C(a), { name: "help" })])]),
459
+ _: 1
460
+ })])]), g("span", M, [G("dataAuthOverride") ? (b(), p(C(l), {
461
+ key: 0,
462
+ type: "text",
463
+ size: "small",
464
+ disabled: W.value,
465
+ onClick: d[8] ||= (e) => K("dataAuthOverride")
466
+ }, {
467
+ default: w(() => [...d[32] ||= [_("重置", -1)]]),
468
+ _: 1
469
+ }, 8, ["disabled"])) : m("v-if", !0)])]), g("div", N, [v(C(c), {
470
+ checked: (C(B).dataAuthOverride ?? C(B).dataAuth) === !0,
471
+ disabled: W.value,
472
+ "checked-text": "开",
473
+ "unchecked-text": "关",
474
+ "onUpdate:checked": d[9] ||= (e) => q("dataAuthOverride", e)
475
+ }, null, 8, ["checked", "disabled"]), g("strong", null, S((C(B).dataAuthOverride ?? C(B).dataAuth) === !0 ? "已启用" : "未启用"), 1)])])
476
+ ])])], 32)) : (b(), h("form", {
477
+ key: 3,
478
+ class: "static-record-form",
479
+ onSubmit: d[21] ||= T((...e) => C(R).save && C(R).save(...e), ["prevent"])
480
+ }, [
481
+ d[44] ||= g("p", { class: "form-hint wide-field" }, " 手工动作只能绑定已部署的二开执行器;平台会通过通用动作接口承接权限、审计和运行态刷新。 ", -1),
482
+ g("label", null, [d[34] ||= g("span", null, "动作编码", -1), v(C(n), {
483
+ value: C(B).actionCode,
484
+ disabled: W.value,
485
+ "onUpdate:value": d[11] ||= (e) => q("actionCode", e)
486
+ }, null, 8, ["value", "disabled"])]),
487
+ g("label", null, [d[35] ||= g("span", null, "动作名称", -1), v(C(n), {
488
+ value: C(B).title,
489
+ disabled: W.value,
490
+ "onUpdate:value": d[12] ||= (e) => q("title", e)
491
+ }, null, 8, ["value", "disabled"])]),
492
+ g("label", null, [d[36] ||= g("span", null, "执行层级", -1), v(C(o), {
493
+ value: C(B).actionLevel,
494
+ disabled: W.value,
495
+ options: Ae.value,
496
+ "onUpdate:value": d[13] ||= (e) => q("actionLevel", e)
497
+ }, null, 8, [
498
+ "value",
499
+ "disabled",
500
+ "options"
501
+ ])]),
502
+ g("label", null, [d[37] ||= g("span", null, "访问方式", -1), v(C(o), {
503
+ value: C(B).accessMode,
504
+ disabled: W.value,
505
+ options: [
506
+ {
507
+ label: "需要授权",
508
+ value: "AUTH_REQUIRED"
509
+ },
510
+ {
511
+ label: "登录可用",
512
+ value: "LOGIN_REQUIRED"
513
+ },
514
+ {
515
+ label: "匿名可用",
516
+ value: "ANONYMOUS_ALLOWED"
517
+ }
518
+ ],
519
+ "onUpdate:value": d[14] ||= (e) => q("accessMode", e)
520
+ }, null, 8, ["value", "disabled"])]),
521
+ g("label", null, [d[38] ||= g("span", null, "二开执行器", -1), v(C(o), {
522
+ value: C(B).executorKey,
523
+ disabled: W.value,
524
+ options: ke.value,
525
+ "onUpdate:value": d[15] ||= (e) => Ve(e)
526
+ }, null, 8, [
527
+ "value",
528
+ "disabled",
529
+ "options"
530
+ ])]),
531
+ g("label", xe, [v(C(u), {
532
+ checked: C(B).actionAuth !== !1,
533
+ disabled: W.value,
534
+ "onUpdate:checked": d[16] ||= (e) => q("actionAuth", e)
535
+ }, {
536
+ default: w(() => [...d[39] ||= [_("启用动作授权", -1)]]),
537
+ _: 1
538
+ }, 8, ["checked", "disabled"])]),
539
+ g("label", Se, [v(C(u), {
540
+ checked: C(B).dataAuth === !0,
541
+ disabled: W.value,
542
+ "onUpdate:checked": d[17] ||= (e) => q("dataAuth", e)
543
+ }, {
544
+ default: w(() => [...d[40] ||= [_("启用数据授权", -1)]]),
545
+ _: 1
546
+ }, 8, ["checked", "disabled"])]),
547
+ g("label", null, [d[41] ||= g("span", null, "默认授予策略", -1), v(C(o), {
548
+ value: C(B).defaultGrantPolicy,
549
+ disabled: W.value,
550
+ options: [
551
+ {
552
+ label: "不默认授予",
553
+ value: "NONE"
554
+ },
555
+ {
556
+ label: "所有登录用户",
557
+ value: "ANY_LOGIN_USER"
558
+ },
559
+ {
560
+ label: "记录所有者",
561
+ value: "OWNER"
562
+ },
563
+ {
564
+ label: "办理人",
565
+ value: "ASSIGNEE"
566
+ },
567
+ {
568
+ label: "成员",
569
+ value: "MEMBER"
570
+ }
571
+ ],
572
+ "onUpdate:value": d[18] ||= (e) => q("defaultGrantPolicy", e)
573
+ }, null, 8, ["value", "disabled"])]),
574
+ g("label", Ce, [d[42] ||= g("span", null, "可用条件表达式", -1), v(C(r), {
575
+ value: C(B).availableExpression,
576
+ disabled: W.value,
577
+ "onUpdate:value": d[19] ||= (e) => q("availableExpression", e)
578
+ }, null, 8, ["value", "disabled"])]),
579
+ g("label", we, [d[43] ||= g("span", null, "不可用提示", -1), v(C(r), {
580
+ value: C(B).unavailableMessage,
581
+ disabled: W.value,
582
+ "onUpdate:value": d[20] ||= (e) => q("unavailableMessage", e)
583
+ }, null, 8, ["value", "disabled"])])
584
+ ], 32)), C(z) || C(V) !== "view" ? (b(), p(C(ie), {
585
+ key: 4,
586
+ record: C(B)
587
+ }, null, 8, ["record"])) : m("v-if", !0)]),
588
+ _: 1
589
+ }, 8, [
590
+ "mode",
591
+ "detail-title",
592
+ "explorer-search-keyword"
593
+ ]));
594
+ }
595
+ }), [["__scopeId", "data-v-f74a56ea"]]);
596
+ //#endregion
597
+ export { P as default };