@ximatai/muyun-web-app 0.26.11 → 0.26.13

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 (221) hide show
  1. package/dist/BusinessActivityLogView-UC4rH4Fn.js +16 -0
  2. package/dist/BusinessLogListDrawer-BtaXVJKz.js +564 -0
  3. package/dist/LoginAuditLogView-Cjrp8MKX.js +16 -0
  4. package/dist/ModuleActionManagementView-Dkb35QXc.js +673 -0
  5. package/dist/ModuleGovernanceView-Dx43QvGf.js +28651 -0
  6. package/dist/RequestErrorLogView-WnGvMWiF.js +16 -0
  7. package/dist/RoleDetailWorkspaceView-DPDb_QOn.js +1397 -0
  8. package/dist/RuntimeLogView-BRl4ZDkU.js +330 -0
  9. package/dist/http-B0TC0pJB.js +157 -0
  10. package/dist/index.css +1 -1
  11. package/dist/index.js +1938 -325
  12. package/dist/moduleGovernanceWorkspaceView-4V_UW-Bt.js +40 -0
  13. package/dist/platform-components-1cvOeHmo.js +17854 -0
  14. package/dist/platform-workbench-Cu14Xd9d.js +10299 -0
  15. package/dist/rolldown-runtime-DPVXH0ON.js +17 -0
  16. package/dist/types/app/CurrentUserProfileDialog.vue.d.ts +0 -2
  17. package/dist/types/app/LoginView.vue.d.ts +1 -1
  18. package/dist/types/app/workbenchRouteSync.d.ts +10 -1
  19. package/dist/types/app/workbenchSessionTabs.d.ts +22 -0
  20. package/dist/types/app/workbenchStartup.d.ts +7 -0
  21. package/dist/types/consumer/AppWorkbenchShell.vue.d.ts +4 -1
  22. package/dist/types/consumer/index.d.ts +8 -0
  23. package/dist/types/dynamic-page-runtime/ModulePageBusinessSession.d.ts +2208 -0
  24. package/dist/types/dynamic-page-runtime/ModulePageBusinessState.vue.d.ts +11 -0
  25. package/dist/types/dynamic-page-runtime/ModulePageDetailRelations.vue.d.ts +1 -1
  26. package/dist/types/dynamic-page-runtime/ModulePageHost.vue.d.ts +32 -5
  27. package/dist/types/dynamic-page-runtime/ModulePageHostRuntime.vue.d.ts +4431 -0
  28. package/dist/types/dynamic-page-runtime/ModulePageHostSession.vue.d.ts +43 -0
  29. package/dist/types/dynamic-page-runtime/ModulePageRecordContent.vue.d.ts +2 -2
  30. package/dist/types/dynamic-page-runtime/ModuleRecordDetailActions.vue.d.ts +20 -0
  31. package/dist/types/dynamic-page-runtime/ModuleReferenceRecordDetailBrowser.vue.d.ts +42 -0
  32. package/dist/types/dynamic-page-runtime/NavigatorPanelActions.vue.d.ts +22 -0
  33. package/dist/types/dynamic-page-runtime/PageNavigatorExplorer.vue.d.ts +11 -11
  34. package/dist/types/dynamic-page-runtime/RecordFormSurface.vue.d.ts +2 -2
  35. package/dist/types/dynamic-page-runtime/TenantScopeExplorer.vue.d.ts +21 -0
  36. package/dist/types/dynamic-page-runtime/childAggregateContext.d.ts +11 -0
  37. package/dist/types/dynamic-page-runtime/composables/useModulePageActions.d.ts +1 -1
  38. package/dist/types/dynamic-page-runtime/composables/useModulePageDetailActionRuntime.d.ts +5 -0
  39. package/dist/types/dynamic-page-runtime/composables/useNavigatorRuntime.d.ts +81 -26
  40. package/dist/types/dynamic-page-runtime/composables/useRecordEditingSession.d.ts +1 -1
  41. package/dist/types/dynamic-page-runtime/formActionResult.d.ts +7 -0
  42. package/dist/types/dynamic-page-runtime/formComputeCoordinator.d.ts +7 -4
  43. package/dist/types/dynamic-page-runtime/formValidationCoordinator.d.ts +17 -0
  44. package/dist/types/dynamic-page-runtime/index.d.ts +3 -1
  45. package/dist/types/dynamic-page-runtime/inputValidationActionStatus.d.ts +20 -0
  46. package/dist/types/dynamic-page-runtime/modulePageEnhancements.d.ts +13 -3
  47. package/dist/types/dynamic-page-runtime/modulePageUnsavedState.d.ts +10 -0
  48. package/dist/types/dynamic-page-runtime/pageActionInvocation.d.ts +7 -0
  49. package/dist/types/dynamic-page-runtime/pageActionPlacement.d.ts +14 -0
  50. package/dist/types/dynamic-page-runtime/recordDetailController.d.ts +1 -0
  51. package/dist/types/dynamic-page-runtime/recordMutationPayload.d.ts +4 -0
  52. package/dist/types/dynamic-page-runtime/referenceRecordProjection.d.ts +6 -0
  53. package/dist/types/dynamic-page-runtime/sessionViewBindings.d.ts +3 -0
  54. package/dist/types/dynamic-page-runtime/sourceReferencePickerConfig.d.ts +26 -0
  55. package/dist/types/dynamic-page-runtime/useModulePageSession.d.ts +1728 -0
  56. package/dist/types/dynamic-page-runtime/useTenantScopeController.d.ts +18 -0
  57. package/dist/types/formula/FormulaRuntime.d.ts +6 -0
  58. package/dist/types/platform-admin-runtime/WorkspaceViewDrawer.vue.d.ts +5 -0
  59. package/dist/types/platform-admin-runtime/module-menu/ModuleMenuDrawer.vue.d.ts +7 -0
  60. package/dist/types/platform-admin-runtime/module-menu/ModuleMenuEntriesSection.vue.d.ts +7 -0
  61. package/dist/types/platform-admin-runtime/module-menu/moduleMenuClient.d.ts +16 -0
  62. package/dist/types/platform-admin-runtime/platformModulePageEnhancement.d.ts +2 -0
  63. package/dist/types/platform-admin-runtime/role/roleScopeSelectionClient.d.ts +52 -0
  64. package/dist/types/platform-components/AdaptiveHeaderActionBar.vue.d.ts +24 -0
  65. package/dist/types/platform-components/BusinessNotificationPanel.vue.d.ts +15 -1
  66. package/dist/types/platform-components/CrudRecordListExplorer.vue.d.ts +11 -3
  67. package/dist/types/platform-components/DetailRelationListPanel.vue.d.ts +1 -1
  68. package/dist/types/platform-components/DictionaryOptionDialog.vue.d.ts +37 -0
  69. package/dist/types/platform-components/DictionaryOptionDialogChoiceList.vue.d.ts +21 -0
  70. package/dist/types/platform-components/DictionaryPicker.vue.d.ts +47 -0
  71. package/dist/types/platform-components/DictionaryRadioGroup.vue.d.ts +20 -0
  72. package/dist/types/platform-components/EmployeePicker.vue.d.ts +40 -0
  73. package/dist/types/platform-components/FileTransferUploader.vue.d.ts +1 -1
  74. package/dist/types/platform-components/FormulaExpressionEditor.vue.d.ts +54 -0
  75. package/dist/types/platform-components/ManagementExplorerColumn.vue.d.ts +15 -3
  76. package/dist/types/platform-components/ManagementPanelHeader.vue.d.ts +5 -3
  77. package/dist/types/platform-components/ManagementWorkspace.vue.d.ts +11 -0
  78. package/dist/types/platform-components/ModuleActionButton.vue.d.ts +3 -3
  79. package/dist/types/platform-components/ObjectPickerInput.vue.d.ts +34 -0
  80. package/dist/types/platform-components/QueryCriteriaComposer.vue.d.ts +29 -0
  81. package/dist/types/platform-components/QueryCriteriaGroupEditor.vue.d.ts +36 -0
  82. package/dist/types/platform-components/QueryGroupedSummary.vue.d.ts +21 -0
  83. package/dist/types/platform-components/QueryValueEditor.vue.d.ts +33 -0
  84. package/dist/types/platform-components/ReadonlyReferenceValue.vue.d.ts +11 -0
  85. package/dist/types/platform-components/RecordContentSectionHeading.vue.d.ts +4 -2
  86. package/dist/types/platform-components/RecordDetailDrawer.vue.d.ts +8 -3
  87. package/dist/types/platform-components/RecordDetailExtensionSection.vue.d.ts +9 -3
  88. package/dist/types/platform-components/RecordDetailFields.vue.d.ts +41 -4
  89. package/dist/types/platform-components/RecordDetailLayout.vue.d.ts +4 -1
  90. package/dist/types/platform-components/RecordDetailPanel.vue.d.ts +2 -0
  91. package/dist/types/platform-components/RecordExplorerCreateButton.vue.d.ts +16 -0
  92. package/dist/types/platform-components/RecordExplorerPanel.vue.d.ts +16 -5
  93. package/dist/types/platform-components/RecordFieldLabel.vue.d.ts +16 -0
  94. package/dist/types/platform-components/RecordFormFields.vue.d.ts +24 -5
  95. package/dist/types/platform-components/RecordFormGrid.vue.d.ts +24 -0
  96. package/dist/types/platform-components/RecordListExplorer.vue.d.ts +23 -1
  97. package/dist/types/platform-components/RecordModeDrawer.vue.d.ts +11 -3
  98. package/dist/types/platform-components/RecordMultiPicker.vue.d.ts +3 -3
  99. package/dist/types/platform-components/RecordPanelButton.vue.d.ts +9 -3
  100. package/dist/types/platform-components/RecordPermissionDialog.vue.d.ts +15 -0
  101. package/dist/types/platform-components/RecordPicker.vue.d.ts +3 -3
  102. package/dist/types/platform-components/RecordQueryEnumFilter.vue.d.ts +17 -0
  103. package/dist/types/platform-components/RecordQueryListCell.vue.d.ts +12 -0
  104. package/dist/types/platform-components/RecordQueryListPanel.vue.d.ts +120 -63
  105. package/dist/types/platform-components/RecordQueryListSurface.vue.d.ts +144 -0
  106. package/dist/types/platform-components/RecordRelationTable.vue.d.ts +62 -0
  107. package/dist/types/platform-components/RecordRelationValue.vue.d.ts +9 -0
  108. package/dist/types/platform-components/RecordStatusSwitch.vue.d.ts +3 -3
  109. package/dist/types/platform-components/ReferencePicker.vue.d.ts +47 -0
  110. package/dist/types/platform-components/ReferenceRecordDetailBrowser.vue.d.ts +55 -0
  111. package/dist/types/platform-components/ScopedTreePicker.vue.d.ts +31 -0
  112. package/dist/types/platform-components/StaticManagementLayout.vue.d.ts +2 -0
  113. package/dist/types/platform-components/TreeRecordExplorer.vue.d.ts +14 -3
  114. package/dist/types/platform-components/UserPicker.vue.d.ts +47 -0
  115. package/dist/types/platform-components/adaptiveHeaderActionLayout.d.ts +22 -0
  116. package/dist/types/platform-components/dictionaryOptionDialogModel.d.ts +23 -0
  117. package/dist/types/platform-components/employeePickerModel.d.ts +19 -0
  118. package/dist/types/platform-components/formulaExpressionTokens.d.ts +18 -0
  119. package/dist/types/platform-components/identityPickerModel.d.ts +18 -0
  120. package/dist/types/platform-components/index.d.ts +48 -2
  121. package/dist/types/platform-components/managementExplorerContext.d.ts +11 -0
  122. package/dist/types/platform-components/managementWorkspaceContext.d.ts +20 -0
  123. package/dist/types/platform-components/managementWorkspaceLayout.d.ts +14 -0
  124. package/dist/types/platform-components/optionFieldOptionCache.d.ts +1 -1
  125. package/dist/types/platform-components/queryCriteriaDraft.d.ts +24 -0
  126. package/dist/types/platform-components/queryReferencePickerProvider.d.ts +19 -0
  127. package/dist/types/platform-components/readonlyReferenceDisplay.d.ts +19 -0
  128. package/dist/types/platform-components/recordActionBarModel.d.ts +3 -0
  129. package/dist/types/platform-components/recordEditorSessionState.d.ts +11 -4
  130. package/dist/types/platform-components/recordFormFieldModel.d.ts +28 -2
  131. package/dist/types/platform-components/recordQueryListColumnModel.d.ts +44 -0
  132. package/dist/types/platform-components/referencePickerModel.d.ts +103 -0
  133. package/dist/types/platform-components/referencePickerReadError.d.ts +24 -0
  134. package/dist/types/platform-components/referenceRecordDetailBrowser.d.ts +48 -0
  135. package/dist/types/platform-components/scopedTreePickerModel.d.ts +46 -0
  136. package/dist/types/platform-components/selectionRefresh.d.ts +9 -0
  137. package/dist/types/platform-components/sortPartitionKey.d.ts +5 -0
  138. package/dist/types/platform-components/sourceReferencePickerProvider.d.ts +26 -0
  139. package/dist/types/platform-components/staticCrudManagementState.d.ts +7 -6
  140. package/dist/types/platform-components/userPickerModel.d.ts +45 -0
  141. package/dist/types/platform-components/userReferencePicker.d.ts +17 -0
  142. package/dist/types/platform-workbench/index.d.ts +2 -0
  143. package/dist/types/platform-workbench/useWorkspaceViewUnsavedState.d.ts +5 -0
  144. package/dist/types/platform-workbench/workbenchNavigation.d.ts +5 -1
  145. package/dist/types/platform-workbench/workspaceViewContract.d.ts +5 -0
  146. package/dist/types/platform-workbench/workspaceViewHost.d.ts +5 -0
  147. package/dist/types/platform-workbench/workspaceViewNavigation.d.ts +9 -0
  148. package/dist/types/platform-workbench/workspaceViewUnsavedState.d.ts +5 -0
  149. package/dist/types/views/BusinessActivityLogView.vue.d.ts +3 -0
  150. package/dist/types/views/BusinessLogListDrawer.vue.d.ts +9 -0
  151. package/dist/types/views/BusinessRuleGovernanceSurface.vue.d.ts +10 -0
  152. package/dist/types/views/LoginAuditLogView.vue.d.ts +3 -0
  153. package/dist/types/views/MetadataGovernanceSurface.vue.d.ts +8 -0
  154. package/dist/types/views/MetadataSourceTree.vue.d.ts +44 -0
  155. package/dist/types/views/ModuleBusinessPreview.vue.d.ts +7 -0
  156. package/dist/types/views/ModuleExperienceProfileOverview.vue.d.ts +7 -0
  157. package/dist/types/views/ModuleGovernanceView.vue.d.ts +9 -0
  158. package/dist/types/views/PageCompositionDescriptorPreview.vue.d.ts +54 -0
  159. package/dist/types/views/PageCompositionTree.vue.d.ts +103 -0
  160. package/dist/types/views/PageCompositionWorkspace.vue.d.ts +7 -0
  161. package/dist/types/views/PageQuerySummaryEditor.vue.d.ts +48 -0
  162. package/dist/types/views/RequestErrorLogView.vue.d.ts +3 -0
  163. package/dist/types/views/RuntimeLogView.vue.d.ts +3 -0
  164. package/dist/types/views/businessLogClient.d.ts +85 -0
  165. package/dist/types/views/businessRuleGovernance.d.ts +201 -0
  166. package/dist/types/views/dictionaryRadioEligibility.d.ts +18 -0
  167. package/dist/types/views/dictionaryRadioFactRequestEpoch.d.ts +10 -0
  168. package/dist/types/views/metadataModelEditSession.d.ts +84 -0
  169. package/dist/types/views/metadataModelTree.d.ts +40 -0
  170. package/dist/types/views/metadataNaming.d.ts +7 -0
  171. package/dist/types/views/metadataOrchestrationState.d.ts +161 -6
  172. package/dist/types/views/metadataSourceTree.d.ts +10 -0
  173. package/dist/types/views/moduleGovernanceWorkspaceView.d.ts +9 -0
  174. package/dist/types/views/pageCompositionDraftState.d.ts +404 -0
  175. package/dist/types/views/pageCompositionDragPayload.d.ts +26 -0
  176. package/dist/types/views/pageCompositionMode.d.ts +86 -0
  177. package/dist/types/views/pageCompositionPlacement.d.ts +48 -0
  178. package/dist/types/views/pageCompositionTransport.d.ts +9 -0
  179. package/dist/types/views/roleDetailWorkspaceSession.d.ts +1 -0
  180. package/dist/types/views/roleGrantClient.d.ts +0 -1
  181. package/dist/types/views/runtimeLogClient.d.ts +12 -0
  182. package/dist/types/views/runtimeLogSse.d.ts +13 -0
  183. package/dist/types/views/usePageCompositionActionPreviewDrag.d.ts +41 -0
  184. package/dist/types/views/usePageCompositionPreviewDrag.d.ts +48 -0
  185. package/dist/types/vue-ui-antdv/components/UiActionButton.vue.d.ts +2 -2
  186. package/dist/types/vue-ui-antdv/components/UiButton.vue.d.ts +6 -3
  187. package/dist/types/vue-ui-antdv/components/UiDataTable.vue.d.ts +20 -2
  188. package/dist/types/vue-ui-antdv/components/UiIcon.vue.d.ts +1 -1
  189. package/dist/types/vue-ui-antdv/components/UiPopover.vue.d.ts +22 -0
  190. package/dist/types/vue-ui-antdv/components/UiRecordExplorerItem.vue.d.ts +1 -1
  191. package/dist/types/vue-ui-antdv/components/UiSearchInput.vue.d.ts +16 -2
  192. package/dist/types/vue-ui-antdv/components/UiSelect.vue.d.ts +28 -2
  193. package/dist/types/vue-ui-antdv/components/UiSidePanel.vue.d.ts +9 -2
  194. package/dist/types/vue-ui-antdv/components/UiSwitch.vue.d.ts +1 -1
  195. package/dist/types/vue-ui-antdv/components/UiTextArea.vue.d.ts +38 -1
  196. package/dist/types/vue-ui-antdv/components/UiTokenInput.vue.d.ts +62 -0
  197. package/dist/types/vue-ui-antdv/components/UiTree.vue.d.ts +63 -9
  198. package/dist/types/vue-ui-antdv/components/UiTreeSelect.vue.d.ts +24 -2
  199. package/dist/types/vue-ui-antdv/drawerDismissal.d.ts +18 -0
  200. package/dist/types/vue-ui-antdv/drawerWidth.d.ts +22 -0
  201. package/dist/types/vue-ui-antdv/index.d.ts +10 -1
  202. package/dist/types/vue-ui-antdv/treeStructure.d.ts +18 -0
  203. package/dist/types/vue-ui-antdv/types.d.ts +64 -0
  204. package/dist/types/vue-ui-antdv/useTreeLoader.d.ts +21 -0
  205. package/dist/types/vue-ui-antdv/useTreeMotion.d.ts +9 -0
  206. package/dist/types/vue-ui-antdv/useUiTreeDrag.d.ts +32 -0
  207. package/dist/types/web-contracts/index.d.ts +132 -12
  208. package/dist/types/web-core/http.d.ts +2 -0
  209. package/dist/types/web-core/module/index.d.ts +1 -0
  210. package/dist/types/web-core/module/moduleContext.d.ts +29 -1
  211. package/dist/types/web-core/module/pageActionEntries.d.ts +21 -0
  212. package/dist/types/web-core/module/runtimeContext.d.ts +10 -5
  213. package/dist/types/web-core/module/staticModuleClient.d.ts +30 -3
  214. package/dist/workspaceViews-CCg6V0pr.js +3623 -0
  215. package/package.json +1 -1
  216. package/dist/MetadataOrchestrationView-F_Bmfn9K.js +0 -661
  217. package/dist/ModuleActionManagementView-Db_3Twom.js +0 -597
  218. package/dist/RoleDetailWorkspaceView-UOm1ejGH.js +0 -1369
  219. package/dist/platform-components-59b4qzUL.js +0 -12489
  220. package/dist/types/views/metadataOrchestrationWorkspaceView.d.ts +0 -6
  221. package/dist/workspaceViews-BvV8mpML.js +0 -11149
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ximatai/muyun-web-app",
3
- "version": "0.26.11",
3
+ "version": "0.26.13",
4
4
  "description": "MuYunSpring workbench and standard module runtime for business applications",
5
5
  "type": "module",
6
6
  "files": [
@@ -1,661 +0,0 @@
1
- import { Ct as e, E as t, G as n, Gt as r, It as i, K as a, Lt as o, Mt as s, Nt as c, Pt as l, bt as u, dt as d, en as f, f as p, ft as m, ht as h, it as g, lt as _, ot as v, p as y, st as b, y as x, yt as S, zt as C } from "./platform-components-59b4qzUL.js";
2
- import { Fragment as ee, computed as w, createBlock as T, createCommentVNode as te, createElementBlock as ne, createElementVNode as E, createTextVNode as D, createVNode as O, defineComponent as k, onMounted as re, openBlock as A, ref as j, toDisplayString as M, unref as N, watch as ie, withCtx as P, withModifiers as F } from "vue";
3
- //#region src/views/metadataOrchestrationState.ts
4
- function ae() {
5
- let e = j([]), t = j({}), n = j(), r = j([]), i = j([]), a = j("view"), o = j(I()), s = j(z()), c = w(() => e.value.find((e) => e.id === n.value)), l = w(() => c.value?.metadataId ? t.value[c.value.metadataId] : void 0), u = w(() => e.value.some((e) => e.relationRole === "MAIN")), d = w(() => a.value === "create-main"), f = w(() => a.value === "create-field" || a.value === "edit-field"), p = w(() => H(i.value));
6
- function m(t) {
7
- e.value = t;
8
- let r = new Set(t.map((e) => e.id).filter(Boolean));
9
- (!n.value || !r.has(n.value)) && (n.value = t[0]?.id);
10
- }
11
- function h(e) {
12
- e.id && (t.value = {
13
- ...t.value,
14
- [e.id]: e
15
- });
16
- }
17
- function g(e) {
18
- r.value = V(e);
19
- }
20
- function _(e) {
21
- i.value = e;
22
- }
23
- function v(e) {
24
- return a.value = "view", !e.id || e.id === n.value ? !1 : (n.value = e.id, r.value = [], !0);
25
- }
26
- function y(e) {
27
- e && (n.value = e, a.value = "view", r.value = []);
28
- }
29
- function b() {
30
- o.value = I(), a.value = "create-main";
31
- }
32
- function x() {
33
- l.value?.id && (s.value = z(), a.value = "create-field");
34
- }
35
- function S(e) {
36
- l.value?.id && (s.value = B(e), a.value = "edit-field");
37
- }
38
- function C() {
39
- a.value = "view";
40
- }
41
- return {
42
- relations: e,
43
- metadataById: t,
44
- selectedRelationId: n,
45
- fields: r,
46
- fieldSpecs: i,
47
- mode: a,
48
- mainMetadataDraft: o,
49
- fieldDraft: s,
50
- selectedRelation: c,
51
- selectedMetadata: l,
52
- hasMainMetadata: u,
53
- mainEditorOpen: d,
54
- fieldEditorOpen: f,
55
- fieldSpecOptions: p,
56
- handleRelationsLoaded: m,
57
- handleMetadataLoaded: h,
58
- handleFieldsLoaded: g,
59
- handleFieldSpecsLoaded: _,
60
- selectRelation: v,
61
- focusRelation: y,
62
- startCreateMain: b,
63
- startCreateField: x,
64
- startEditField: S,
65
- cancelEditor: C
66
- };
67
- }
68
- function I() {
69
- return {
70
- alias: "",
71
- title: "",
72
- schemaName: "",
73
- tableName: "",
74
- dataScopeEnabled: !1
75
- };
76
- }
77
- function L(e) {
78
- return {
79
- ...e,
80
- alias: e.alias.trim(),
81
- title: e.title.trim(),
82
- schemaName: e.schemaName.trim(),
83
- tableName: e.tableName.trim()
84
- };
85
- }
86
- function R(e) {
87
- return !!(e.alias.trim() && e.title.trim());
88
- }
89
- function z() {
90
- return {
91
- fieldName: "",
92
- columnName: "",
93
- title: "",
94
- fieldSpecAlias: void 0,
95
- fieldOwnership: "BUSINESS",
96
- fieldForm: "PHYSICAL",
97
- required: !1,
98
- uniqueField: !1,
99
- indexed: !1,
100
- sortableField: !1,
101
- titleField: !1,
102
- enabled: !0
103
- };
104
- }
105
- function B(e) {
106
- return { ...e };
107
- }
108
- function oe(e) {
109
- return !!(e.fieldName?.trim() && e.columnName?.trim() && e.fieldSpecAlias);
110
- }
111
- function se(e) {
112
- return {
113
- ...e,
114
- fieldName: e.fieldName?.trim(),
115
- columnName: e.columnName?.trim(),
116
- title: e.title?.trim()
117
- };
118
- }
119
- function V(e) {
120
- return e.filter((e) => e.fieldOwnership === "BUSINESS" && e.fieldForm === "PHYSICAL" && e.systemManaged !== !0);
121
- }
122
- function H(e) {
123
- return e.filter((e) => e.enabled !== !1).map((e) => ({
124
- value: e.alias ?? e.id ?? "",
125
- label: e.title ?? e.alias ?? e.id ?? "未命名字段规格"
126
- })).filter((e) => e.value);
127
- }
128
- function U(e, t) {
129
- return t?.title ?? e.relationAlias ?? "未命名实体";
130
- }
131
- function W(e) {
132
- if (e === "MAIN") return "主实体";
133
- if (e === "CHILD") return "子实体";
134
- }
135
- function ce(e, t) {
136
- let n = U(e, t), r = t?.alias ?? e.relationAlias;
137
- return {
138
- title: n,
139
- secondary: r && r !== n ? r : void 0,
140
- tag: W(e.relationRole),
141
- muted: t?.enabled === !1 ? !0 : void 0
142
- };
143
- }
144
- function le(e) {
145
- if (!e) return;
146
- let t = e.tableName ? `${e.schemaName ?? "public"}.${e.tableName}` : void 0;
147
- return [e.alias, t].filter(Boolean).join(" · ") || void 0;
148
- }
149
- //#endregion
150
- //#region src/views/MetadataOrchestrationView.vue?vue&type=script&setup=true&lang.ts
151
- var ue = { class: "entity-overview" }, de = { class: "field-section" }, fe = { class: "orchestration-form-flags" }, G = 200, K = /*#__PURE__*/ C(/* @__PURE__ */ k({
152
- name: "MetadataOrchestrationView",
153
- __name: "MetadataOrchestrationView",
154
- props: {
155
- moduleAlias: {},
156
- moduleTitle: {},
157
- title: {}
158
- },
159
- setup(C) {
160
- let k = C, I = r({ moduleAlias: "platform.module" }), z = f(I.http, "/platform.metadata"), B = ae(), V = j(!1), H = j(null), W = w(() => H.value?.$el instanceof HTMLElement ? H.value.$el : null), K = j(!1), q = j(""), pe = [
161
- {
162
- key: "title",
163
- title: "字段"
164
- },
165
- {
166
- key: "fieldName",
167
- title: "字段名",
168
- width: 150
169
- },
170
- {
171
- key: "fieldSpecAlias",
172
- title: "字段规格",
173
- width: 140
174
- },
175
- {
176
- key: "required",
177
- title: "必填",
178
- width: 70
179
- },
180
- {
181
- key: "enabled",
182
- title: "状态",
183
- width: 70
184
- }
185
- ];
186
- ie(() => k.moduleAlias, () => void J(), { immediate: !0 }), re(() => void me());
187
- async function J() {
188
- V.value = !0;
189
- try {
190
- B.handleRelationsLoaded(await $(Q("/query"))), await Y();
191
- } catch (e) {
192
- b(e, {
193
- source: "metadata-orchestration",
194
- phase: "load"
195
- });
196
- } finally {
197
- V.value = !1;
198
- }
199
- }
200
- async function me() {
201
- try {
202
- B.handleFieldSpecsLoaded(await $("/platform.field_spec/query"));
203
- } catch (e) {
204
- b(e, {
205
- source: "metadata-orchestration",
206
- phase: "load"
207
- });
208
- }
209
- }
210
- async function he(e) {
211
- B.selectRelation(e) && await Y();
212
- }
213
- async function Y() {
214
- let e = B.selectedRelation.value?.metadataId;
215
- if (B.handleFieldsLoaded([]), e) try {
216
- let t = await z.view(e);
217
- B.handleMetadataLoaded(t), B.handleFieldsLoaded(await $(`/platform.metadata/${encodeURIComponent(e)}/fields/query`));
218
- } catch (e) {
219
- b(e, {
220
- source: "metadata-orchestration",
221
- phase: "load"
222
- });
223
- }
224
- }
225
- async function X() {
226
- let e = L(B.mainMetadataDraft.value);
227
- if (!R(e)) {
228
- _("请填写实体 alias 和名称", {
229
- source: "metadata-orchestration",
230
- phase: "validation"
231
- });
232
- return;
233
- }
234
- K.value = !0;
235
- try {
236
- let t = await I.http.request({
237
- method: "POST",
238
- path: Q("/create-main-metadata"),
239
- body: e
240
- });
241
- B.cancelEditor(), await J(), B.focusRelation(t.relation.id), await Y(), await v({
242
- success: !0,
243
- message: "主实体已创建"
244
- }, { source: "metadata-orchestration" });
245
- } catch (e) {
246
- b(e, {
247
- source: "metadata-orchestration",
248
- phase: "action"
249
- });
250
- } finally {
251
- K.value = !1;
252
- }
253
- }
254
- async function Z() {
255
- let e = B.selectedMetadata.value?.id;
256
- if (!e) return;
257
- let t = se(B.fieldDraft.value);
258
- if (!oe(t)) {
259
- _("请填写字段名、物理列名和字段规格", {
260
- source: "metadata-orchestration",
261
- phase: "validation"
262
- });
263
- return;
264
- }
265
- K.value = !0;
266
- try {
267
- let n = {
268
- ...t,
269
- metadataId: e,
270
- fieldOwnership: "BUSINESS",
271
- fieldForm: "PHYSICAL"
272
- };
273
- n.id ? await I.http.request({
274
- method: "POST",
275
- path: `/platform.metadata/${encodeURIComponent(e)}/fields/update/${encodeURIComponent(n.id)}`,
276
- body: n
277
- }) : await I.http.request({
278
- method: "POST",
279
- path: `/platform.metadata/${encodeURIComponent(e)}/fields/insert`,
280
- body: n
281
- }), B.cancelEditor(), await Y(), await v({
282
- success: !0,
283
- message: "字段已保存"
284
- }, { source: "metadata-orchestration" });
285
- } catch (e) {
286
- b(e, {
287
- source: "metadata-orchestration",
288
- phase: "action"
289
- });
290
- } finally {
291
- K.value = !1;
292
- }
293
- }
294
- async function ge(e) {
295
- let t = B.selectedMetadata.value?.id;
296
- if (!(!t || !e.id || !await m({
297
- title: "删除字段",
298
- content: `确认删除字段“${e.title ?? e.fieldName}”?`,
299
- okText: "删除",
300
- danger: !0
301
- }))) {
302
- K.value = !0;
303
- try {
304
- await I.http.request({
305
- method: "POST",
306
- path: `/platform.metadata/${encodeURIComponent(t)}/fields/delete/${encodeURIComponent(e.id)}`,
307
- body: { version: e.version }
308
- }), await Y();
309
- } catch (e) {
310
- b(e, {
311
- source: "metadata-orchestration",
312
- phase: "action"
313
- });
314
- } finally {
315
- K.value = !1;
316
- }
317
- }
318
- }
319
- async function _e() {
320
- let e = B.selectedRelation.value;
321
- if (e?.id) {
322
- K.value = !0;
323
- try {
324
- await I.http.request({
325
- method: "POST",
326
- path: Q(`/${encodeURIComponent(e.id)}/fields/ensure`)
327
- }), await v({
328
- success: !0,
329
- message: "模块字段配置已同步"
330
- }, { source: "metadata-orchestration" });
331
- } catch (e) {
332
- b(e, {
333
- source: "metadata-orchestration",
334
- phase: "action"
335
- });
336
- } finally {
337
- K.value = !1;
338
- }
339
- }
340
- }
341
- function Q(e) {
342
- return `/platform.module/${encodeURIComponent(k.moduleAlias)}/metadata-relations${e}`;
343
- }
344
- async function $(e) {
345
- let t = [];
346
- for (let n = 1;; n += 1) {
347
- let r = await I.http.request({
348
- method: "POST",
349
- path: e,
350
- body: { page: {
351
- pageNum: n,
352
- pageSize: G
353
- } }
354
- });
355
- if (t.push(...r.records), r.totalKnown ? n >= r.pages : r.records.length < G) return t;
356
- }
357
- }
358
- function ve(e) {
359
- return e.metadataId ? B.metadataById.value[e.metadataId] : void 0;
360
- }
361
- function ye(e) {
362
- let t = e;
363
- return ce(t, ve(t));
364
- }
365
- function be(e, t) {
366
- let n = t;
367
- return e.key === "required" ? n.required ? "是" : "否" : e.key === "enabled" ? n.enabled === !1 ? "停用" : "启用" : String(n[e.key] ?? "");
368
- }
369
- return (r, f) => (A(), ne(ee, null, [
370
- O(N(a), {
371
- ref_key: "pageHost",
372
- ref: H,
373
- class: "metadata-orchestration-workspace",
374
- "explorer-count": 1
375
- }, {
376
- default: P(() => [O(N(n), null, {
377
- default: P(() => [O(N(x), {
378
- "search-keyword": q.value,
379
- "onUpdate:searchKeyword": f[0] ||= (e) => q.value = e,
380
- title: "实体",
381
- "search-placeholder": "搜索实体名称或 alias",
382
- onRefresh: J
383
- }, {
384
- actions: P(() => [N(B).hasMainMetadata.value ? te("v-if", !0) : (A(), T(N(o), {
385
- key: 0,
386
- class: "record-panel-create-button",
387
- type: "primary",
388
- "icon-name": "plus",
389
- title: "新建主实体",
390
- disabled: V.value || K.value,
391
- onClick: N(B).startCreateMain
392
- }, null, 8, ["disabled", "onClick"]))]),
393
- default: P(() => [V.value ? (A(), T(N(h), {
394
- key: 0,
395
- tip: "加载实体"
396
- })) : N(B).relations.value.length ? (A(), T(N(d), {
397
- key: 2,
398
- records: N(B).relations.value,
399
- "selected-id": N(B).selectedRelationId.value,
400
- keyword: q.value,
401
- "empty-description": "暂无实体",
402
- "item-of": ye,
403
- onSelect: he
404
- }, null, 8, [
405
- "records",
406
- "selected-id",
407
- "keyword"
408
- ])) : (A(), T(N(u), {
409
- key: 1,
410
- description: "请先创建动态模块的主实体"
411
- }))]),
412
- _: 1
413
- }, 8, ["search-keyword"])]),
414
- _: 1
415
- }), N(B).selectedMetadata.value && N(B).selectedRelation.value ? (A(), T(N(t), {
416
- key: 0,
417
- title: N(U)(N(B).selectedRelation.value, N(B).selectedMetadata.value),
418
- subtitle: N(le)(N(B).selectedMetadata.value)
419
- }, {
420
- actions: P(() => [O(N(i), {
421
- emphasis: "quiet",
422
- disabled: K.value || V.value,
423
- onClick: _e
424
- }, {
425
- default: P(() => [...f[16] ||= [D(" 同步模块字段配置 ", -1)]]),
426
- _: 1
427
- }, 8, ["disabled"]), O(N(i), {
428
- emphasis: "primary",
429
- disabled: K.value || V.value,
430
- onClick: N(B).startCreateField
431
- }, {
432
- default: P(() => [...f[17] ||= [D(" 新增字段 ", -1)]]),
433
- _: 1
434
- }, 8, ["disabled", "onClick"])]),
435
- default: P(() => [
436
- E("dl", ue, [
437
- E("div", null, [f[18] ||= E("dt", null, "实体 alias", -1), E("dd", null, M(N(B).selectedMetadata.value.alias ?? "-"), 1)]),
438
- E("div", null, [f[19] ||= E("dt", null, "物理表", -1), E("dd", null, M(N(B).selectedMetadata.value.tableName ? `${N(B).selectedMetadata.value.schemaName ?? "public"}.${N(B).selectedMetadata.value.tableName}` : "-"), 1)]),
439
- E("div", null, [f[20] ||= E("dt", null, "数据权限范围", -1), E("dd", null, M(N(B).selectedMetadata.value.dataScopeEnabled ? "已启用" : "未启用"), 1)])
440
- ]),
441
- E("section", de, [f[23] ||= E("header", { class: "field-section-header" }, [E("h3", null, "业务字段")], -1), V.value ? (A(), T(N(h), {
442
- key: 0,
443
- tip: "加载字段"
444
- })) : N(B).fields.value.length ? (A(), T(N(S), {
445
- key: 2,
446
- columns: pe,
447
- rows: N(B).fields.value,
448
- "show-action-column": "",
449
- "action-column-title": "操作"
450
- }, {
451
- cell: P(({ column: e, record: t }) => [D(M(be(e, t)), 1)]),
452
- rowActions: P(({ record: e }) => [O(N(i), {
453
- emphasis: "quiet",
454
- density: "compact",
455
- onClick: (t) => N(B).startEditField(e)
456
- }, {
457
- default: P(() => [...f[21] ||= [D(" 编辑 ", -1)]]),
458
- _: 1
459
- }, 8, ["onClick"]), O(N(i), {
460
- emphasis: "quiet",
461
- density: "compact",
462
- intent: "danger",
463
- disabled: K.value,
464
- onClick: (t) => ge(e)
465
- }, {
466
- default: P(() => [...f[22] ||= [D(" 删除 ", -1)]]),
467
- _: 1
468
- }, 8, ["disabled", "onClick"])]),
469
- _: 1
470
- }, 8, ["rows"])) : (A(), T(N(u), {
471
- key: 1,
472
- description: "暂无业务字段,点击右上角新增字段"
473
- }))]),
474
- O(N(y), { record: N(B).selectedMetadata.value }, null, 8, ["record"])
475
- ]),
476
- _: 1
477
- }, 8, ["title", "subtitle"])) : (A(), T(N(t), {
478
- key: 1,
479
- title: "字段编排"
480
- }, {
481
- default: P(() => [O(N(u), { description: "从左侧选择实体后开始字段编排" })]),
482
- _: 1
483
- }))]),
484
- _: 1
485
- }, 512),
486
- O(N(p), {
487
- open: N(B).mainEditorOpen.value,
488
- title: "新建主实体",
489
- container: W.value,
490
- subtitle: C.moduleTitle ?? C.moduleAlias,
491
- mode: "create",
492
- onClose: N(B).cancelEditor
493
- }, {
494
- form: P(() => [E("form", {
495
- class: "orchestration-form",
496
- onSubmit: F(X, ["prevent"])
497
- }, [
498
- E("label", null, [f[24] ||= E("span", null, "实体 alias", -1), O(N(s), {
499
- value: N(B).mainMetadataDraft.value.alias,
500
- "onUpdate:value": f[1] ||= (e) => N(B).mainMetadataDraft.value.alias = e,
501
- placeholder: "例如 customer"
502
- }, null, 8, ["value"])]),
503
- E("label", null, [f[25] ||= E("span", null, "实体名称", -1), O(N(s), {
504
- value: N(B).mainMetadataDraft.value.title,
505
- "onUpdate:value": f[2] ||= (e) => N(B).mainMetadataDraft.value.title = e,
506
- placeholder: "例如 客户"
507
- }, null, 8, ["value"])]),
508
- E("label", null, [f[26] ||= E("span", null, "Schema(可选)", -1), O(N(s), {
509
- value: N(B).mainMetadataDraft.value.schemaName,
510
- "onUpdate:value": f[3] ||= (e) => N(B).mainMetadataDraft.value.schemaName = e,
511
- placeholder: "默认 public"
512
- }, null, 8, ["value"])]),
513
- E("label", null, [f[27] ||= E("span", null, "物理表名(可选)", -1), O(N(s), {
514
- value: N(B).mainMetadataDraft.value.tableName,
515
- "onUpdate:value": f[4] ||= (e) => N(B).mainMetadataDraft.value.tableName = e,
516
- placeholder: "默认按应用和 alias 生成"
517
- }, null, 8, ["value"])]),
518
- O(N(l), {
519
- checked: N(B).mainMetadataDraft.value.dataScopeEnabled,
520
- "onUpdate:checked": f[5] ||= (e) => N(B).mainMetadataDraft.value.dataScopeEnabled = e
521
- }, {
522
- default: P(() => [...f[28] ||= [D(" 启用数据权限范围 ", -1)]]),
523
- _: 1
524
- }, 8, ["checked"])
525
- ], 32)]),
526
- operation: P(() => [O(N(g), null, {
527
- default: P(() => [O(N(i), {
528
- disabled: K.value,
529
- onClick: N(B).cancelEditor
530
- }, {
531
- default: P(() => [...f[29] ||= [D("取消", -1)]]),
532
- _: 1
533
- }, 8, ["disabled", "onClick"]), O(N(i), {
534
- emphasis: "primary",
535
- submit: "",
536
- loading: K.value,
537
- onClick: X
538
- }, {
539
- default: P(() => [...f[30] ||= [D(" 创建 ", -1)]]),
540
- _: 1
541
- }, 8, ["loading"])]),
542
- _: 1
543
- })]),
544
- _: 1
545
- }, 8, [
546
- "open",
547
- "container",
548
- "subtitle",
549
- "onClose"
550
- ]),
551
- O(N(p), {
552
- open: N(B).fieldEditorOpen.value,
553
- title: N(B).mode.value === "edit-field" ? "编辑字段" : "新增字段",
554
- container: W.value,
555
- subtitle: N(B).selectedMetadata.value?.title,
556
- mode: "create",
557
- onClose: N(B).cancelEditor
558
- }, {
559
- form: P(() => [E("form", {
560
- class: "orchestration-form",
561
- onSubmit: F(Z, ["prevent"])
562
- }, [
563
- E("label", null, [f[31] ||= E("span", null, "字段名称", -1), O(N(s), {
564
- value: N(B).fieldDraft.value.fieldName,
565
- "onUpdate:value": f[6] ||= (e) => N(B).fieldDraft.value.fieldName = e,
566
- disabled: !!N(B).fieldDraft.value.id,
567
- placeholder: "例如 customerName"
568
- }, null, 8, ["value", "disabled"])]),
569
- E("label", null, [f[32] ||= E("span", null, "物理列名", -1), O(N(s), {
570
- value: N(B).fieldDraft.value.columnName,
571
- "onUpdate:value": f[7] ||= (e) => N(B).fieldDraft.value.columnName = e,
572
- disabled: !!N(B).fieldDraft.value.id,
573
- placeholder: "例如 customer_name"
574
- }, null, 8, ["value", "disabled"])]),
575
- E("label", null, [f[33] ||= E("span", null, "显示名称", -1), O(N(s), {
576
- value: N(B).fieldDraft.value.title,
577
- "onUpdate:value": f[8] ||= (e) => N(B).fieldDraft.value.title = e,
578
- placeholder: "例如 客户名称"
579
- }, null, 8, ["value"])]),
580
- E("label", null, [f[34] ||= E("span", null, "字段规格", -1), O(N(c), {
581
- value: N(B).fieldDraft.value.fieldSpecAlias,
582
- "onUpdate:value": f[9] ||= (e) => N(B).fieldDraft.value.fieldSpecAlias = e,
583
- options: N(B).fieldSpecOptions.value,
584
- placeholder: "选择字段规格",
585
- style: { width: "100%" }
586
- }, null, 8, ["value", "options"])]),
587
- E("div", fe, [
588
- O(N(l), {
589
- checked: N(B).fieldDraft.value.required,
590
- "onUpdate:checked": f[10] ||= (e) => N(B).fieldDraft.value.required = e
591
- }, {
592
- default: P(() => [...f[35] ||= [D("必填", -1)]]),
593
- _: 1
594
- }, 8, ["checked"]),
595
- O(N(l), {
596
- checked: N(B).fieldDraft.value.uniqueField,
597
- "onUpdate:checked": f[11] ||= (e) => N(B).fieldDraft.value.uniqueField = e
598
- }, {
599
- default: P(() => [...f[36] ||= [D("唯一", -1)]]),
600
- _: 1
601
- }, 8, ["checked"]),
602
- O(N(l), {
603
- checked: N(B).fieldDraft.value.indexed,
604
- "onUpdate:checked": f[12] ||= (e) => N(B).fieldDraft.value.indexed = e
605
- }, {
606
- default: P(() => [...f[37] ||= [D("建立索引", -1)]]),
607
- _: 1
608
- }, 8, ["checked"]),
609
- O(N(l), {
610
- checked: N(B).fieldDraft.value.sortableField,
611
- "onUpdate:checked": f[13] ||= (e) => N(B).fieldDraft.value.sortableField = e
612
- }, {
613
- default: P(() => [...f[38] ||= [D("排序字段", -1)]]),
614
- _: 1
615
- }, 8, ["checked"]),
616
- O(N(l), {
617
- checked: N(B).fieldDraft.value.titleField,
618
- "onUpdate:checked": f[14] ||= (e) => N(B).fieldDraft.value.titleField = e
619
- }, {
620
- default: P(() => [...f[39] ||= [D("标题字段", -1)]]),
621
- _: 1
622
- }, 8, ["checked"]),
623
- O(N(e), {
624
- checked: N(B).fieldDraft.value.enabled,
625
- "onUpdate:checked": f[15] ||= (e) => N(B).fieldDraft.value.enabled = e,
626
- "checked-children": "启用",
627
- "un-checked-children": "停用"
628
- }, null, 8, ["checked"])
629
- ])
630
- ], 32)]),
631
- operation: P(() => [O(N(g), null, {
632
- default: P(() => [O(N(i), {
633
- disabled: K.value,
634
- onClick: N(B).cancelEditor
635
- }, {
636
- default: P(() => [...f[40] ||= [D("取消", -1)]]),
637
- _: 1
638
- }, 8, ["disabled", "onClick"]), O(N(i), {
639
- emphasis: "primary",
640
- submit: "",
641
- loading: K.value,
642
- onClick: Z
643
- }, {
644
- default: P(() => [...f[41] ||= [D("保存", -1)]]),
645
- _: 1
646
- }, 8, ["loading"])]),
647
- _: 1
648
- })]),
649
- _: 1
650
- }, 8, [
651
- "open",
652
- "title",
653
- "container",
654
- "subtitle",
655
- "onClose"
656
- ])
657
- ], 64));
658
- }
659
- }), [["__scopeId", "data-v-3dcd57f0"]]);
660
- //#endregion
661
- export { K as default };