@ximatai/muyun-web-app 0.26.16 → 0.26.18

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 (126) hide show
  1. package/dist/{BusinessActivityLogView-DVM_GB5y.js → BusinessActivityLogView-CNW817Sf.js} +2 -2
  2. package/dist/BusinessLogListDrawer-YiJxOlnD.js +864 -0
  3. package/dist/CodeConfigurationView-DU8tjPMt.js +1667 -0
  4. package/dist/{ConfigurationTranslationView-B0FosDyz.js → ConfigurationTranslationView-CbBt5s1q.js} +51 -51
  5. package/dist/{LoginAuditLogView-3tAozKlC.js → LoginAuditLogView-CZF1Jfq_.js} +2 -2
  6. package/dist/{ModuleActionManagementView-CJRNShGg.js → ModuleActionManagementView-CaiXH1l_.js} +208 -208
  7. package/dist/{ModuleGovernanceView-DsqR_Sj7.js → ModuleGovernanceView-CcwGyO3x.js} +4331 -4475
  8. package/dist/{RequestErrorLogView-C4yH-TSX.js → RequestErrorLogView-DpudZrC2.js} +2 -2
  9. package/dist/RoleDetailWorkspaceView-DNMGsAJC.js +1435 -0
  10. package/dist/{RuntimeLogView-CoKKpJ39.js → RuntimeLogView-444BL_xs.js} +61 -61
  11. package/dist/WorkflowAdministrationView-C-VIjvwB.js +650 -0
  12. package/dist/WorkflowConfigurationView-DLFY2x7V.js +1110 -0
  13. package/dist/WorkflowWorkbenchView-Gr02dbBc.js +759 -0
  14. package/dist/codeConfiguration-ChJ6ktRR.js +208 -0
  15. package/dist/index.css +1 -1
  16. package/dist/index.js +624 -598
  17. package/dist/moduleMenuWorkspace-B8DKwC3L.js +626 -0
  18. package/dist/{platform-components-Cl5ZZiuU.js → platform-components-5AE0j2_3.js} +9579 -6839
  19. package/dist/{platform-workbench-CAHoriIf.js → platform-workbench-BhZPARiH.js} +6345 -6478
  20. package/dist/types/app/CurrentUserProfileDialog.vue.d.ts +1 -1
  21. package/dist/types/app/DevelopmentTopbarActions.vue.d.ts +9 -0
  22. package/dist/types/app/useAssistantAvailability.d.ts +8 -0
  23. package/dist/types/app/useCurrentUserProfile.d.ts +12 -0
  24. package/dist/types/app/workbenchRouteSync.d.ts +2 -0
  25. package/dist/types/consumer/AppWorkbenchShell.vue.d.ts +9 -3
  26. package/dist/types/consumer/index.d.ts +2 -1
  27. package/dist/types/dynamic-page-runtime/ModulePageBusinessSession.d.ts +8 -8
  28. package/dist/types/dynamic-page-runtime/ModulePageHostRuntime.vue.d.ts +214 -92
  29. package/dist/types/dynamic-page-runtime/assistantQueryCapabilities.d.ts +1 -0
  30. package/dist/types/dynamic-page-runtime/composables/useManagedDetailRelationRuntime.d.ts +2 -2
  31. package/dist/types/dynamic-page-runtime/composables/useNavigatorRuntime.d.ts +2 -2
  32. package/dist/types/dynamic-page-runtime/modulePageEnhancements.d.ts +2 -2
  33. package/dist/types/dynamic-page-runtime/useModulePageSession.d.ts +4 -4
  34. package/dist/types/dynamic-page-runtime/useModuleRecordDataChanges.d.ts +4 -0
  35. package/dist/types/main.d.ts +0 -1
  36. package/dist/types/platform-admin-runtime/ModuleCodeConfigurationStatus.vue.d.ts +7 -0
  37. package/dist/types/platform-admin-runtime/moduleCodeConfiguration.d.ts +15 -0
  38. package/dist/types/platform-components/BusinessContentGenerationPanel.vue.d.ts +22 -0
  39. package/dist/types/platform-components/BusinessContentQueryNotice.vue.d.ts +17 -0
  40. package/dist/types/platform-components/CrudRecordListExplorer.vue.d.ts +2 -2
  41. package/dist/types/platform-components/DictionaryOptionDialog.vue.d.ts +4 -4
  42. package/dist/types/platform-components/DictionaryOptionDialogChoiceList.vue.d.ts +1 -1
  43. package/dist/types/platform-components/DictionaryPicker.vue.d.ts +4 -4
  44. package/dist/types/platform-components/ObjectPickerInput.vue.d.ts +2 -2
  45. package/dist/types/platform-components/QueryCriteriaGroupEditor.vue.d.ts +2 -2
  46. package/dist/types/platform-components/RecordContentSourceField.vue.d.ts +22 -0
  47. package/dist/types/platform-components/RecordContentTranslationField.vue.d.ts +26 -0
  48. package/dist/types/platform-components/RecordDataExchangeSurface.vue.d.ts +26 -0
  49. package/dist/types/platform-components/RecordDetailFields.vue.d.ts +3 -2
  50. package/dist/types/platform-components/RecordFormFields.vue.d.ts +5 -2
  51. package/dist/types/platform-components/RecordModeDrawer.vue.d.ts +1 -1
  52. package/dist/types/platform-components/RecordQueryListCell.vue.d.ts +1 -0
  53. package/dist/types/platform-components/RecordQueryListPanel.vue.d.ts +1 -1
  54. package/dist/types/platform-components/RecordQueryListSurface.vue.d.ts +1 -1
  55. package/dist/types/{dynamic-page-runtime/ModuleDataExchangeSurface.vue.d.ts → platform-components/RecordQuerySortSelector.vue.d.ts} +5 -9
  56. package/dist/types/platform-components/RecordRelationActionButton.vue.d.ts +16 -0
  57. package/dist/types/platform-components/RecordRelationValue.vue.d.ts +2 -0
  58. package/dist/types/platform-components/StaticManagementLayout.vue.d.ts +7 -2
  59. package/dist/types/{dynamic-page-runtime → platform-components}/TenantScopeExplorer.vue.d.ts +1 -1
  60. package/dist/types/platform-components/WorkflowRecordPanel.vue.d.ts +2 -0
  61. package/dist/types/platform-components/WorkflowTimeline.vue.d.ts +4 -0
  62. package/dist/types/platform-components/crudRecordListModel.d.ts +1 -0
  63. package/dist/types/platform-components/index.d.ts +3 -0
  64. package/dist/types/platform-components/loadExplorerRecords.d.ts +3 -0
  65. package/dist/types/platform-components/managementWorkspaceLayout.d.ts +10 -0
  66. package/dist/types/platform-components/recordDetailFieldModel.d.ts +2 -0
  67. package/dist/types/platform-components/recordFormFieldModel.d.ts +6 -0
  68. package/dist/types/platform-components/recordQueryListQueryController.d.ts +2 -0
  69. package/dist/types/platform-components/recordSurfaceActivity.d.ts +3 -0
  70. package/dist/types/platform-components/recycleBinState.d.ts +1 -0
  71. package/dist/types/platform-components/referencePickerModel.d.ts +6 -2
  72. package/dist/types/platform-components/scopedTreePickerModel.d.ts +4 -0
  73. package/dist/types/platform-components/useBusinessCodeForm.d.ts +36 -0
  74. package/dist/types/platform-workbench/Workbench.vue.d.ts +13 -4
  75. package/dist/types/platform-workbench/WorkbenchGlobalTools.vue.d.ts +28 -0
  76. package/dist/types/platform-workbench/WorkbenchLanguageSettings.vue.d.ts +11 -0
  77. package/dist/types/platform-workbench/WorkbenchPageTitle.vue.d.ts +10 -0
  78. package/dist/types/platform-workbench/menuGroupLayout.d.ts +5 -0
  79. package/dist/types/platform-workbench/menuTreeModel.d.ts +1 -2
  80. package/dist/types/platform-workbench/useAssistantConversation.d.ts +1 -1
  81. package/dist/types/platform-workbench/useAssistantConversationArchive.d.ts +1 -1
  82. package/dist/types/platform-workbench/useLanguagePreferenceSelection.d.ts +7 -0
  83. package/dist/types/views/CodeConfigurationView.vue.d.ts +8 -0
  84. package/dist/types/views/CodeRuleFormatEditor.vue.d.ts +17 -0
  85. package/dist/types/views/PageQuerySummaryEditor.vue.d.ts +4 -4
  86. package/dist/types/views/WorkflowSelectionFields.vue.d.ts +28 -0
  87. package/dist/types/views/codeConfiguration.d.ts +127 -0
  88. package/dist/types/views/codeConfigurationWorkspaceView.d.ts +5 -0
  89. package/dist/types/views/metadataEditorSession.d.ts +4 -0
  90. package/dist/types/views/metadataOrchestrationState.d.ts +3 -0
  91. package/dist/types/views/metadataWorkspace.d.ts +8 -0
  92. package/dist/types/views/moduleGovernanceWorkspaceView.d.ts +1 -1
  93. package/dist/types/vue-ui-antdv/components/UiDatePicker.vue.d.ts +33 -0
  94. package/dist/types/vue-ui-antdv/components/UiDropdown.vue.d.ts +1 -0
  95. package/dist/types/vue-ui-antdv/components/UiHelp.vue.d.ts +16 -0
  96. package/dist/types/vue-ui-antdv/components/UiIcon.vue.d.ts +1 -1
  97. package/dist/types/vue-ui-antdv/components/UiModal.vue.d.ts +9 -6
  98. package/dist/types/vue-ui-antdv/components/UiPopover.vue.d.ts +12 -4
  99. package/dist/types/vue-ui-antdv/datePickerCalendar.d.ts +472 -0
  100. package/dist/types/vue-ui-antdv/datePickerValue.d.ts +6 -0
  101. package/dist/types/vue-ui-antdv/index.d.ts +3 -0
  102. package/dist/types/vue-ui-antdv/languageLocales.d.ts +2 -0
  103. package/dist/types/vue-ui-antdv/types.d.ts +2 -0
  104. package/dist/types/vue-ui-antdv/typography.d.ts +25 -0
  105. package/dist/types/web-contracts/index.d.ts +146 -1
  106. package/dist/types/web-contracts/workflow.d.ts +10 -0
  107. package/dist/types/web-core/assistantTurnClient.d.ts +2 -0
  108. package/dist/types/web-core/businessContent.d.ts +38 -0
  109. package/dist/types/web-core/businessContentLanguage.d.ts +18 -0
  110. package/dist/types/web-core/index.d.ts +5 -0
  111. package/dist/types/web-core/languagePreference.d.ts +2 -2
  112. package/dist/types/web-core/module/dataExchangeClient.d.ts +83 -1
  113. package/dist/types/web-core/module/staticModuleClient.d.ts +9 -3
  114. package/dist/types/web-core/presentationTexts.d.ts +5 -0
  115. package/dist/types/web-core/recordReadRefreshGuard.d.ts +7 -0
  116. package/dist/types/web-core/useBusinessContentGenerationBatch.d.ts +36 -0
  117. package/dist/types/web-core/useBusinessContentReading.d.ts +30 -0
  118. package/dist/types/web-core/workflow.d.ts +2 -1
  119. package/dist/{workspaceViews-BIYGPUAO.js → workspaceViews-DeBqozVb.js} +1062 -918
  120. package/package.json +4 -1
  121. package/dist/BusinessLogListDrawer-BciMLY9z.js +0 -864
  122. package/dist/RoleDetailWorkspaceView-BpOoGUwS.js +0 -1435
  123. package/dist/WorkflowAdministrationView-DmUV6vWS.js +0 -650
  124. package/dist/WorkflowConfigurationView-pghDbWEh.js +0 -975
  125. package/dist/WorkflowWorkbenchView-BwWxyDen.js +0 -747
  126. package/dist/moduleGovernanceWorkspaceView-DGEV3ZyT.js +0 -667
@@ -0,0 +1,1667 @@
1
+ import { n as e } from "./rolldown-runtime-BAC7EHh5.js";
2
+ import { m as t, ut as n, y as r } from "./platform-workbench-BhZPARiH.js";
3
+ import { $ as i, $i as a, $n as o, Ba as s, Cn as c, Fr as ee, Gt as l, Hr as te, Ia as u, Kn as d, Mr as f, Mt as p, Na as m, Nn as ne, Nt as re, On as ie, Pt as ae, Qn as h, Rn as g, Sn as oe, V as _, Wt as se, Xn as ce, Yn as v, Zi as le, bn as ue, ct as de, dn as fe, ea as pe, et as me, g as he, hn as ge, mn as _e, pa as ve, sn as ye, t as be, tr as xe, ua as Se, va as Ce, xa as we, yr as Te, zn as Ee } from "./platform-components-5AE0j2_3.js";
4
+ import { a as De, c as Oe, d as ke, i as Ae, l as je, n as Me, o as Ne, p as Pe, r as Fe, s as Ie, t as Le, u as Re } from "./codeConfiguration-ChJ6ktRR.js";
5
+ import { Fragment as y, computed as b, createBlock as x, createCommentVNode as S, createElementBlock as C, createElementVNode as w, createSlots as ze, createTextVNode as T, createVNode as E, defineComponent as Be, inject as Ve, mergeModels as D, nextTick as He, normalizeClass as Ue, onActivated as We, onBeforeUnmount as Ge, onDeactivated as Ke, onUnmounted as O, openBlock as k, ref as A, renderList as qe, toDisplayString as j, toRaw as M, unref as N, useModel as Je, vShow as Ye, watch as Xe, withCtx as P, withDirectives as Ze } from "vue";
6
+ //#region src/views/CodeRuleFormatEditor.vue?vue&type=script&setup=true&lang.ts
7
+ var Qe = { class: "code-format" }, $e = {
8
+ class: "code-format__segments",
9
+ role: "list"
10
+ }, et = { class: "code-format__segment-heading" }, F = { class: "code-format__segment-number" }, tt = { class: "code-format__segment-actions" }, I = {
11
+ key: 0,
12
+ class: "code-format__grid"
13
+ }, L = {
14
+ key: 0,
15
+ class: "code-format__field"
16
+ }, nt = {
17
+ key: 1,
18
+ class: "code-format__field"
19
+ }, rt = {
20
+ key: 2,
21
+ class: "code-format__field"
22
+ }, it = {
23
+ key: 3,
24
+ class: "code-format__field"
25
+ }, at = {
26
+ key: 4,
27
+ class: "code-format__field code-format__wide"
28
+ }, ot = {
29
+ key: 5,
30
+ class: "code-format__field"
31
+ }, R = { class: "code-format__advanced" }, z = { key: 0 }, B = { class: "code-format__grid" }, st = {
32
+ key: 0,
33
+ class: "code-format__help code-format__wide"
34
+ }, V = {
35
+ key: 1,
36
+ class: "code-format__field"
37
+ }, ct = {
38
+ key: 2,
39
+ class: "code-format__field"
40
+ }, H = {
41
+ key: 3,
42
+ class: "code-format__field"
43
+ }, lt = {
44
+ key: 4,
45
+ class: "code-format__field"
46
+ }, U = { class: "code-format__field" }, ut = {
47
+ key: 5,
48
+ class: "code-format__field"
49
+ }, dt = {
50
+ key: 6,
51
+ class: "code-format__field"
52
+ }, ft = {
53
+ key: 0,
54
+ class: "code-format__help"
55
+ }, W = {
56
+ key: 1,
57
+ class: "code-format__mapping"
58
+ }, pt = {
59
+ key: 0,
60
+ class: "code-format__grid"
61
+ }, mt = { class: "code-format__field" }, ht = { class: "code-format__field" }, G = { class: "code-format__sequence-advanced code-format__wide" }, K = { class: "code-format__grid" }, gt = { class: "code-format__field" }, _t = { class: "code-format__field" }, vt = { class: "code-format__field" }, q = {
62
+ key: 0,
63
+ class: "code-format__help"
64
+ }, J = { class: "code-format__field" }, yt = /*#__PURE__*/ xe(/* @__PURE__ */ Be({
65
+ __name: "CodeRuleFormatEditor",
66
+ props: /*@__PURE__*/ D({
67
+ sources: {},
68
+ editable: { type: Boolean },
69
+ trigger: {}
70
+ }, {
71
+ rule: { required: !0 },
72
+ ruleModifiers: {}
73
+ }),
74
+ emits: ["update:rule"],
75
+ setup(e) {
76
+ let t = e, n = Je(e, "rule"), r = u(), i = (e, t) => r.t(`platform.code.config.${e}`, t), a = b(() => t.sources.map((e) => ({
77
+ value: e.fieldName,
78
+ label: Fe(e, r)
79
+ }))), s = b(() => t.sources.map((e) => ({
80
+ name: e.fieldName,
81
+ label: Fe(e, r),
82
+ valueType: e.type
83
+ }))), c = {
84
+ CONSTANT: "固定文字",
85
+ FIELD_VALUE: "业务字段",
86
+ CONTEXT_VAR: "动作上下文",
87
+ SYSTEM_TIME: "业务时间",
88
+ SEQUENCE: "流水号",
89
+ VALUE_MAPPING: "值映射",
90
+ FORMULA: "公式"
91
+ }, ee = b(() => Me.map((e) => ({
92
+ value: e,
93
+ label: i(`segment.${e}`, c[e])
94
+ }))), l = (e, t) => Object.entries(t).map(([t, n]) => ({
95
+ value: t,
96
+ label: i(`enum.${e}.${t}`, n)
97
+ })), te = [
98
+ "YY",
99
+ "YYYY",
100
+ "YYMM",
101
+ "YYYYMM",
102
+ "YYMMDD",
103
+ "YYYYMMDD",
104
+ "YYYY_MM",
105
+ "YYYY_MM_DD",
106
+ "YYYY_MM_DD_HH_MM_SS",
107
+ "HHMMSS"
108
+ ], f = /* @__PURE__ */ new WeakMap(), p = 0, m = /* @__PURE__ */ new WeakMap(), ne = null;
109
+ Xe(() => n.value, () => {
110
+ ne = null;
111
+ });
112
+ function re(e) {
113
+ return e = M(e), f.has(e) || f.set(e, ++p), f.get(e);
114
+ }
115
+ function ie(e) {
116
+ return [
117
+ "FIELD_VALUE",
118
+ "CONTEXT_VAR",
119
+ "VALUE_MAPPING",
120
+ "FORMULA"
121
+ ].includes(e.segmentType);
122
+ }
123
+ function h(e) {
124
+ return !!n.value.sequencePolicy && !["CONSTANT", "SEQUENCE"].includes(e.segmentType);
125
+ }
126
+ let oe = b(() => r.t("platform.code.config.inherited-sequence-length", "继承流水长度:{length}", { length: n.value.sequencePolicy?.sequenceLength ?? "—" })), _ = b(() => {
127
+ let e = n.value.sequencePolicy?.sequenceLength;
128
+ return e == null || !Number.isInteger(e) || e < 1 || e > 18 ? "" : r.t("platform.code.config.sequence-limit-hint", "按 {length} 位流水,最大 {maximum}", {
129
+ length: e,
130
+ maximum: "9".repeat(e)
131
+ });
132
+ });
133
+ function se(e) {
134
+ return e.length != null || !!e.separator || (e.padMode ?? "NONE") !== "NONE" || (e.truncatePolicy ?? "NONE") !== "NONE" || (e.nullPolicy ?? "ERROR") !== "ERROR" || !!e.sequenceBasis;
135
+ }
136
+ function le(e) {
137
+ return e.segmentType === "SEQUENCE" && e.length != null ? r.t("platform.code.config.sequence-length-override-summary", "长度覆盖 {length} 位", { length: e.length }) : i("configured", "已配置");
138
+ }
139
+ let ue = b(() => {
140
+ let e = n.value.sequencePolicy;
141
+ if (!e) return "";
142
+ let t = [
143
+ e.startValue != null && e.startValue !== 1 ? `${i("start", "起始值")} ${e.startValue}` : "",
144
+ e.stepValue != null && e.stepValue !== 1 ? `${i("step", "递增步长")} ${e.stepValue}` : "",
145
+ e.maxValue == null ? "" : `${i("maximum", "流水上限")} ${e.maxValue}`,
146
+ e.overflowPolicy === "RESET" ? i("enum.overflow.RESET", "从起点重新尝试") : ""
147
+ ].filter(Boolean);
148
+ return t.length ? t.join(" · ") : i("defaults", "默认设置");
149
+ });
150
+ function de(e) {
151
+ return e === "" || e == null ? null : Number(e);
152
+ }
153
+ function fe() {
154
+ n.value && (n.value.segments.some((e) => e.segmentType === "SEQUENCE") ? n.value.sequencePolicy ??= ne ?? Re() : (ne = n.value.sequencePolicy ?? ne, n.value.sequencePolicy = null));
155
+ }
156
+ function pe(e, t) {
157
+ if (!n.value) return;
158
+ let r = n.value.segments[e];
159
+ if (r.segmentType === t) return;
160
+ let i = m.get(M(r)) ?? /* @__PURE__ */ new Map();
161
+ i.set(r.segmentType, JSON.parse(JSON.stringify(r)));
162
+ let a = {
163
+ ...i.get(t) ?? je(t),
164
+ id: r.id,
165
+ version: r.version
166
+ };
167
+ f.set(a, re(r)), m.set(a, i), n.value.segments[e] = a, fe();
168
+ }
169
+ function me() {
170
+ n.value && (n.value.segments.push(je()), fe());
171
+ }
172
+ function he(e, t) {
173
+ let r = n.value?.segments;
174
+ if (!r || e + t < 0 || e + t >= r.length) return;
175
+ let [i] = r.splice(e, 1);
176
+ i && r.splice(e + t, 0, i);
177
+ }
178
+ function _e(e) {
179
+ n.value?.segments.splice(e, 1), fe();
180
+ }
181
+ return (r, c) => (k(), C("section", Qe, [
182
+ E(N(ae), { title: i("format", "编码格式") }, null, 8, ["title"]),
183
+ w("ol", $e, [(k(!0), C(y, null, qe(n.value.segments, (r, u) => (k(), C("li", { key: re(r) }, [
184
+ w("div", et, [
185
+ w("span", F, j(u + 1), 1),
186
+ E(N(v), {
187
+ "aria-label": i("segment-type", "片段类型"),
188
+ value: r.segmentType,
189
+ disabled: !e.editable,
190
+ options: ee.value,
191
+ "onUpdate:value": (e) => pe(u, e)
192
+ }, null, 8, [
193
+ "aria-label",
194
+ "value",
195
+ "disabled",
196
+ "options",
197
+ "onUpdate:value"
198
+ ]),
199
+ ["FORMULA", "CONTEXT_VAR"].includes(r.segmentType) ? (k(), x(N(g), {
200
+ key: 0,
201
+ label: i("bounded-help-title", "片段长度说明")
202
+ }, {
203
+ default: P(() => [T(j(i("bounded-help", "为公式或外部上下文设置长度与截取方式,确保编码不超出目标字段长度。")), 1)]),
204
+ _: 1
205
+ }, 8, ["label"])) : S("v-if", !0),
206
+ w("div", tt, [
207
+ E(N(o), {
208
+ type: "text",
209
+ "icon-name": "up",
210
+ "icon-only": "",
211
+ size: "small",
212
+ title: i("up", "上移"),
213
+ "aria-label": i("up", "上移"),
214
+ disabled: !e.editable || u === 0,
215
+ onClick: (e) => he(u, -1)
216
+ }, null, 8, [
217
+ "title",
218
+ "aria-label",
219
+ "disabled",
220
+ "onClick"
221
+ ]),
222
+ E(N(o), {
223
+ type: "text",
224
+ "icon-name": "down",
225
+ "icon-only": "",
226
+ size: "small",
227
+ title: i("down", "下移"),
228
+ "aria-label": i("down", "下移"),
229
+ disabled: !e.editable || u === n.value.segments.length - 1,
230
+ onClick: (e) => he(u, 1)
231
+ }, null, 8, [
232
+ "title",
233
+ "aria-label",
234
+ "disabled",
235
+ "onClick"
236
+ ]),
237
+ E(N(o), {
238
+ type: "text",
239
+ "icon-name": "delete",
240
+ "icon-only": "",
241
+ size: "small",
242
+ title: i("remove", "删除"),
243
+ "aria-label": i("remove", "删除"),
244
+ disabled: !e.editable,
245
+ onClick: (e) => _e(u)
246
+ }, null, 8, [
247
+ "title",
248
+ "aria-label",
249
+ "disabled",
250
+ "onClick"
251
+ ])
252
+ ])
253
+ ]),
254
+ r.segmentType === "SEQUENCE" ? S("v-if", !0) : (k(), C("div", I, [
255
+ r.segmentType === "CONSTANT" ? (k(), C("label", L, [T(j(i("constant", "固定文字")), 1), E(N(d), {
256
+ value: r.fixedValue,
257
+ "onUpdate:value": (e) => r.fixedValue = e,
258
+ disabled: !e.editable
259
+ }, null, 8, [
260
+ "value",
261
+ "onUpdate:value",
262
+ "disabled"
263
+ ])])) : S("v-if", !0),
264
+ ["FIELD_VALUE", "VALUE_MAPPING"].includes(r.segmentType) ? (k(), C("label", nt, [T(j(i("source", "来源字段")), 1), E(N(v), {
265
+ value: r.sourceRef,
266
+ "onUpdate:value": (e) => r.sourceRef = e,
267
+ disabled: !e.editable,
268
+ options: a.value
269
+ }, null, 8, [
270
+ "value",
271
+ "onUpdate:value",
272
+ "disabled",
273
+ "options"
274
+ ])])) : S("v-if", !0),
275
+ r.segmentType === "CONTEXT_VAR" ? (k(), C("label", rt, [T(j(i("context", "动作传入的上下文名称")), 1), (t.trigger ?? n.value.fieldTrigger ?? "SAVE") === "EXPLICIT" ? (k(), x(N(d), {
276
+ key: 1,
277
+ value: r.sourceRef,
278
+ "onUpdate:value": (e) => r.sourceRef = e,
279
+ disabled: !e.editable
280
+ }, null, 8, [
281
+ "value",
282
+ "onUpdate:value",
283
+ "disabled"
284
+ ])) : (k(), x(N(v), {
285
+ key: 0,
286
+ value: r.sourceRef,
287
+ "onUpdate:value": (e) => r.sourceRef = e,
288
+ disabled: !e.editable,
289
+ options: a.value
290
+ }, null, 8, [
291
+ "value",
292
+ "onUpdate:value",
293
+ "disabled",
294
+ "options"
295
+ ]))])) : S("v-if", !0),
296
+ r.segmentType === "SYSTEM_TIME" ? (k(), C("label", it, [T(j(i("date-format", "时间格式")), 1), E(N(v), {
297
+ value: r.dateFormat,
298
+ "onUpdate:value": (e) => r.dateFormat = e,
299
+ disabled: !e.editable,
300
+ options: te.map((e) => ({
301
+ value: e,
302
+ label: e
303
+ }))
304
+ }, null, 8, [
305
+ "value",
306
+ "onUpdate:value",
307
+ "disabled",
308
+ "options"
309
+ ])])) : S("v-if", !0),
310
+ r.segmentType === "FORMULA" ? (k(), C("label", at, [T(j(i("formula", "返回编码片段的公式")), 1), E(N(ge), {
311
+ value: r.formulaExpr ?? "",
312
+ "onUpdate:value": (e) => r.formulaExpr = e,
313
+ disabled: !e.editable,
314
+ fields: s.value
315
+ }, null, 8, [
316
+ "value",
317
+ "onUpdate:value",
318
+ "disabled",
319
+ "fields"
320
+ ])])) : S("v-if", !0),
321
+ ["FORMULA", "CONTEXT_VAR"].includes(r.segmentType) ? (k(), C("label", ot, [T(j(i("length", "片段长度")) + " ", 1), E(N(d), {
322
+ value: r.length ?? void 0,
323
+ type: "number",
324
+ disabled: !e.editable,
325
+ "onUpdate:value": (e) => r.length = de(e)
326
+ }, null, 8, [
327
+ "value",
328
+ "disabled",
329
+ "onUpdate:value"
330
+ ])])) : S("v-if", !0)
331
+ ])),
332
+ w("details", R, [w("summary", null, [T(j(i("advanced-format", "高级设置")), 1), se(r) ? (k(), C("span", z, " · " + j(le(r)), 1)) : S("v-if", !0)]), w("div", B, [
333
+ r.segmentType !== "SEQUENCE" && !r.length ? (k(), C("p", st, j(i("length-dependent-hint", "设置片段长度后,补位与超长截取才会生效。")), 1)) : S("v-if", !0),
334
+ ["FORMULA", "CONTEXT_VAR"].includes(r.segmentType) ? S("v-if", !0) : (k(), C("label", V, [T(j(r.segmentType === "SEQUENCE" ? i("sequence-length-override", "片段长度(覆盖流水长度)") : i("length", "片段长度")), 1), E(N(d), {
335
+ value: r.length ?? void 0,
336
+ placeholder: r.segmentType === "SEQUENCE" ? oe.value : void 0,
337
+ type: "number",
338
+ disabled: !e.editable,
339
+ "onUpdate:value": (e) => r.length = de(e)
340
+ }, null, 8, [
341
+ "value",
342
+ "placeholder",
343
+ "disabled",
344
+ "onUpdate:value"
345
+ ])])),
346
+ r.segmentType !== "SEQUENCE" || (r.padMode ?? "NONE") !== "NONE" ? (k(), C("label", ct, [T(j(i("padding", "补位")), 1), E(N(v), {
347
+ value: r.padMode,
348
+ "onUpdate:value": (e) => r.padMode = e,
349
+ disabled: !e.editable,
350
+ options: l("padding", {
351
+ NONE: "不补位",
352
+ LEFT: "左侧补位",
353
+ RIGHT: "右侧补位"
354
+ })
355
+ }, null, 8, [
356
+ "value",
357
+ "onUpdate:value",
358
+ "disabled",
359
+ "options"
360
+ ])])) : S("v-if", !0),
361
+ (r.padMode ?? "NONE") === "NONE" ? S("v-if", !0) : (k(), C("label", H, [T(j(i("pad-char", "补位字符")), 1), E(N(d), {
362
+ value: r.padChar,
363
+ "onUpdate:value": (e) => r.padChar = e,
364
+ disabled: !e.editable
365
+ }, null, 8, [
366
+ "value",
367
+ "onUpdate:value",
368
+ "disabled"
369
+ ])])),
370
+ r.segmentType !== "SEQUENCE" || (r.truncatePolicy ?? "NONE") !== "NONE" ? (k(), C("label", lt, [T(j(i("truncate", "超长截取")), 1), E(N(v), {
371
+ value: r.truncatePolicy,
372
+ "onUpdate:value": (e) => r.truncatePolicy = e,
373
+ disabled: !e.editable,
374
+ options: l("truncate", {
375
+ NONE: "保留原值",
376
+ LEFT: "截去左侧",
377
+ RIGHT: "截去右侧"
378
+ })
379
+ }, null, 8, [
380
+ "value",
381
+ "onUpdate:value",
382
+ "disabled",
383
+ "options"
384
+ ])])) : S("v-if", !0),
385
+ w("label", U, [T(j(i("separator", "片段后分隔符")), 1), E(N(d), {
386
+ value: r.separator,
387
+ "onUpdate:value": (e) => r.separator = e,
388
+ disabled: !e.editable
389
+ }, null, 8, [
390
+ "value",
391
+ "onUpdate:value",
392
+ "disabled"
393
+ ])]),
394
+ ie(r) || (r.nullPolicy ?? "ERROR") !== "ERROR" ? (k(), C("label", ut, [T(j(i("null-policy", "来源为空时")), 1), E(N(v), {
395
+ value: r.nullPolicy,
396
+ "onUpdate:value": (e) => r.nullPolicy = e,
397
+ disabled: !e.editable,
398
+ options: l("null", {
399
+ ERROR: "拒绝生成",
400
+ SKIP_SEGMENT: "跳过该片段",
401
+ USE_DEFAULT: "使用默认文字"
402
+ }).map((e) => r.segmentType === "VALUE_MAPPING" && e.value === "USE_DEFAULT" ? {
403
+ ...e,
404
+ label: i("use-default-source", "使用来源默认值")
405
+ } : e)
406
+ }, null, 8, [
407
+ "value",
408
+ "onUpdate:value",
409
+ "disabled",
410
+ "options"
411
+ ])])) : S("v-if", !0),
412
+ r.nullPolicy === "USE_DEFAULT" && r.segmentType !== "CONSTANT" ? (k(), C("label", dt, [
413
+ T(j(r.segmentType === "VALUE_MAPPING" ? i("mapping-fallback", "来源默认值") : i("default-text", "默认文字")), 1),
414
+ E(N(d), {
415
+ value: r.fixedValue,
416
+ "onUpdate:value": (e) => r.fixedValue = e,
417
+ disabled: !e.editable
418
+ }, null, 8, [
419
+ "value",
420
+ "onUpdate:value",
421
+ "disabled"
422
+ ]),
423
+ r.segmentType === "VALUE_MAPPING" ? (k(), C("span", ft, j(i("mapping-fallback-hint", "默认值仍需匹配下方映射。")), 1)) : S("v-if", !0)
424
+ ])) : S("v-if", !0),
425
+ h(r) || r.sequenceBasis ? (k(), x(N(ce), {
426
+ key: 7,
427
+ class: "code-format__basis code-format__wide",
428
+ checked: r.sequenceBasis,
429
+ "onUpdate:checked": (e) => r.sequenceBasis = e,
430
+ disabled: !e.editable
431
+ }, {
432
+ default: P(() => [T(j(i("basis", "按该片段分别计数")), 1)]),
433
+ _: 1
434
+ }, 8, [
435
+ "checked",
436
+ "onUpdate:checked",
437
+ "disabled"
438
+ ])) : S("v-if", !0)
439
+ ])]),
440
+ r.segmentType === "VALUE_MAPPING" ? (k(), C("div", W, [(k(!0), C(y, null, qe(r.mappings, (t, n) => (k(), C("div", {
441
+ key: n,
442
+ class: "code-format__mapping-row"
443
+ }, [
444
+ E(N(d), {
445
+ value: t.sourceValue,
446
+ "onUpdate:value": (e) => t.sourceValue = e,
447
+ placeholder: i("mapping-source", "原值"),
448
+ "aria-label": i("mapping-source", "原值"),
449
+ disabled: !e.editable || t.defaultMapping
450
+ }, null, 8, [
451
+ "value",
452
+ "onUpdate:value",
453
+ "placeholder",
454
+ "aria-label",
455
+ "disabled"
456
+ ]),
457
+ c[6] ||= w("span", null, "→", -1),
458
+ E(N(d), {
459
+ value: t.targetValue,
460
+ "onUpdate:value": (e) => t.targetValue = e,
461
+ placeholder: i("mapping-target", "编码文字"),
462
+ "aria-label": i("mapping-target", "编码文字"),
463
+ disabled: !e.editable
464
+ }, null, 8, [
465
+ "value",
466
+ "onUpdate:value",
467
+ "placeholder",
468
+ "aria-label",
469
+ "disabled"
470
+ ]),
471
+ E(N(ce), {
472
+ class: "code-format__mapping-default",
473
+ checked: t.defaultMapping,
474
+ "onUpdate:checked": (e) => t.defaultMapping = e,
475
+ disabled: !e.editable
476
+ }, {
477
+ default: P(() => [T(j(i("mapping-default", "其他值")), 1)]),
478
+ _: 1
479
+ }, 8, [
480
+ "checked",
481
+ "onUpdate:checked",
482
+ "disabled"
483
+ ]),
484
+ E(N(o), {
485
+ class: "code-format__mapping-remove",
486
+ disabled: !e.editable,
487
+ onClick: (e) => r.mappings.splice(n, 1)
488
+ }, {
489
+ default: P(() => [T(j(i("remove", "删除")), 1)]),
490
+ _: 1
491
+ }, 8, ["disabled", "onClick"])
492
+ ]))), 128)), E(N(o), {
493
+ disabled: !e.editable,
494
+ onClick: (e) => r.mappings.push({
495
+ sourceValue: "",
496
+ targetValue: "",
497
+ defaultMapping: !1,
498
+ enabled: !0
499
+ })
500
+ }, {
501
+ default: P(() => [T(j(i("add-mapping", "增加映射")), 1)]),
502
+ _: 1
503
+ }, 8, ["disabled", "onClick"])])) : S("v-if", !0)
504
+ ]))), 128))]),
505
+ E(N(o), {
506
+ type: "dashed",
507
+ "icon-name": "plus",
508
+ "aria-label": i("add-segment", "增加片段"),
509
+ disabled: !e.editable,
510
+ onClick: me
511
+ }, {
512
+ default: P(() => [T(j(i("add-segment", "增加片段")), 1)]),
513
+ _: 1
514
+ }, 8, ["aria-label", "disabled"]),
515
+ n.value.sequencePolicy ? (k(), C("div", pt, [
516
+ E(N(ae), {
517
+ class: "code-format__wide",
518
+ title: i("sequence", "流水策略")
519
+ }, null, 8, ["title"]),
520
+ w("label", mt, [T(j(i("sequence-length", "流水长度")), 1), E(N(d), {
521
+ value: n.value.sequencePolicy.sequenceLength ?? void 0,
522
+ type: "number",
523
+ disabled: !e.editable,
524
+ "onUpdate:value": c[0] ||= (e) => n.value.sequencePolicy.sequenceLength = de(e)
525
+ }, null, 8, ["value", "disabled"])]),
526
+ w("label", ht, [T(j(i("reset", "计数周期")), 1), E(N(v), {
527
+ value: n.value.sequencePolicy.resetPolicy,
528
+ "onUpdate:value": c[1] ||= (e) => n.value.sequencePolicy.resetPolicy = e,
529
+ disabled: !e.editable,
530
+ options: l("reset", {
531
+ NONE: "持续计数",
532
+ DAY: "每天重置",
533
+ MONTH: "每月重置",
534
+ YEAR: "每年重置"
535
+ })
536
+ }, null, 8, [
537
+ "value",
538
+ "disabled",
539
+ "options"
540
+ ])]),
541
+ w("details", G, [w("summary", null, [T(j(i("sequence-advanced", "流水高级设置")), 1), w("span", null, " · " + j(ue.value), 1)]), w("div", K, [
542
+ w("label", gt, [T(j(i("start", "起始值")), 1), E(N(d), {
543
+ value: n.value.sequencePolicy.startValue ?? void 0,
544
+ type: "number",
545
+ disabled: !e.editable,
546
+ "onUpdate:value": c[2] ||= (e) => n.value.sequencePolicy.startValue = de(e)
547
+ }, null, 8, ["value", "disabled"])]),
548
+ w("label", _t, [T(j(i("step", "递增步长")), 1), E(N(d), {
549
+ value: n.value.sequencePolicy.stepValue ?? void 0,
550
+ type: "number",
551
+ disabled: !e.editable,
552
+ "onUpdate:value": c[3] ||= (e) => n.value.sequencePolicy.stepValue = de(e)
553
+ }, null, 8, ["value", "disabled"])]),
554
+ w("label", vt, [
555
+ T(j(i("maximum", "流水上限")), 1),
556
+ E(N(d), {
557
+ value: n.value.sequencePolicy.maxValue ?? void 0,
558
+ type: "number",
559
+ disabled: !e.editable,
560
+ "onUpdate:value": c[4] ||= (e) => n.value.sequencePolicy.maxValue = de(e)
561
+ }, null, 8, ["value", "disabled"]),
562
+ _.value ? (k(), C("span", q, j(_.value), 1)) : S("v-if", !0)
563
+ ]),
564
+ w("label", J, [T(j(i("overflow", "达到上限后")), 1), E(N(v), {
565
+ value: n.value.sequencePolicy.overflowPolicy,
566
+ "onUpdate:value": c[5] ||= (e) => n.value.sequencePolicy.overflowPolicy = e,
567
+ disabled: !e.editable,
568
+ options: l("overflow", {
569
+ ERROR: "拒绝生成",
570
+ RESET: "从起点重新尝试"
571
+ })
572
+ }, null, 8, [
573
+ "value",
574
+ "disabled",
575
+ "options"
576
+ ])])
577
+ ])])
578
+ ])) : S("v-if", !0)
579
+ ]));
580
+ }
581
+ }), [["__scopeId", "data-v-cccc510e"]]), bt = Symbol("module-runtime-activation-refresh");
582
+ function xt(e, t = m) {
583
+ let n = e.status === "PENDING" || e.installedRevision !== e.desiredRevision;
584
+ return { message: {
585
+ text: e.status === "UNTRACKED" ? t.t("platform.screen.moduleRuntimeActivation.no-module-runtime-activation-has-been-recorded", "尚无模块运行配置生效记录") : e.status === "FAILED" ? t.t("platform.screen.moduleRuntimeActivation.module-runtime-configuration-saved-activation-failed", "模块运行配置已保存,生效失败") : e.status === "PENDING" ? t.t("platform.screen.moduleRuntimeActivation.module-runtime-configuration-saved-activation-is-in-progress", "模块运行配置已保存,正在生效") : e.installedRevision === e.desiredRevision ? e.status === "INACTIVE" ? t.t("platform.screen.moduleRuntimeActivation.module-runtime-configuration-activated-business-runtime-entry-points-are-disabled", "模块运行配置已生效,业务运行入口已停用") : t.t("platform.screen.moduleRuntimeActivation.module-runtime-configuration-activated", "模块运行配置已生效") : t.t("platform.screen.moduleRuntimeActivation.module-runtime-configuration-saved-this-node-has-not-confirmed-activation", "模块运行配置已保存,当前节点尚未确认生效"),
586
+ type: e.status === "FAILED" ? "WARNING" : n || e.status === "UNTRACKED" ? "INFO" : "SUCCESS"
587
+ } };
588
+ }
589
+ //#endregion
590
+ //#region src/views/ModuleRuntimeActivationStatus.vue?vue&type=script&setup=true&lang.ts
591
+ var St = ["aria-label"], Ct = { class: "module-runtime-activation__summary" }, Y = { class: "module-runtime-activation__label" }, X = { class: "module-runtime-activation__guidance" }, wt = { class: "module-runtime-activation__actions" }, Tt = { class: "module-runtime-activation__details" }, Et = { class: "module-runtime-activation__scope" }, Dt = { key: 0 }, Ot = {
592
+ key: 1,
593
+ class: "module-runtime-activation__failure"
594
+ }, kt = { key: 2 }, At = {
595
+ key: 3,
596
+ class: "module-runtime-activation__versions"
597
+ }, jt = /*#__PURE__*/ xe(/* @__PURE__ */ Be({
598
+ __name: "ModuleRuntimeActivationStatus",
599
+ props: {
600
+ moduleAlias: {},
601
+ reloadKey: {}
602
+ },
603
+ setup(e, { expose: t }) {
604
+ let n = u(), r = e, i = ee({ moduleAlias: "platform.module" }), a = A(), o = A(!1), s = A(!1), c = A(!1), l = 0, te = !0, d, f = b(() => {
605
+ let e = a.value;
606
+ return !(!e || e.status === "UNTRACKED" || e.status === "FAILED" || e.status !== "PENDING" && e.installedRevision === e.desiredRevision);
607
+ }), m = b(() => c.value || a.value?.status === "FAILED" || f.value), ne = b(() => c.value ? n.t("platform.screen.ModuleRuntimeActivationStatus.unknown-status", "状态未知") : a.value?.status === "FAILED" ? n.t("platform.screen.ModuleRuntimeActivationStatus.activation-failed", "生效失败") : n.t("platform.screen.ModuleRuntimeActivationStatus.applying-changes", "正在应用修改")), re = b(() => c.value ? "NEUTRAL" : a.value?.status === "FAILED" ? "DANGER" : "WARNING"), ie = b(() => c.value ? n.t("platform.screen.ModuleRuntimeActivationStatus.cannot-check-the-status-right-now-try-again-later", "暂时无法查询,请稍后重试。") : a.value?.status === "FAILED" ? n.t("platform.screen.ModuleRuntimeActivationStatus.the-changes-were-saved-but-activation-failed", "修改已保存,但未能生效。") : n.t("platform.screen.ModuleRuntimeActivationStatus.this-notice-will-close-when-activation-completes", "完成后将自动关闭提示。")), ae = b(() => a.value?.desiredRevision != null && (a.value.status === "FAILED" || a.value.status === "PENDING" || a.value.installedRevision !== a.value.desiredRevision) && i.can("retryRuntimeActivation") === !0);
608
+ Xe(() => [r.moduleAlias, r.reloadKey], () => {
609
+ l++, a.value = void 0, s.value = !1, _();
610
+ }, { immediate: !0 });
611
+ function g() {
612
+ clearTimeout(d), d = void 0;
613
+ }
614
+ function oe() {
615
+ g(), te && f.value && !c.value && (d = setTimeout(() => void _(), 2e3));
616
+ }
617
+ Ke(() => {
618
+ te = !1, l++, g();
619
+ }), We(() => {
620
+ te || (te = !0, s.value = !1, _());
621
+ }), O(() => {
622
+ te = !1, l++, g();
623
+ });
624
+ async function _() {
625
+ if (!te || s.value) return;
626
+ g();
627
+ let e = ++l, t = r.moduleAlias;
628
+ c.value = !1, o.value = !0;
629
+ try {
630
+ let r = await i.http.request({
631
+ method: "GET",
632
+ path: `/platform.module/${encodeURIComponent(t)}/runtime/activation`
633
+ });
634
+ if (e === l) return a.value = r, xt(r, n);
635
+ } catch {
636
+ if (e !== l) return;
637
+ c.value = !0;
638
+ } finally {
639
+ e === l && (o.value = !1, oe());
640
+ }
641
+ }
642
+ async function se() {
643
+ if (!ae.value || s.value) return;
644
+ g();
645
+ let e = ++l, t = r.moduleAlias, o = a.value.desiredRevision;
646
+ s.value = !0;
647
+ try {
648
+ let n = await i.http.request({
649
+ method: "POST",
650
+ path: `/platform.module/${encodeURIComponent(t)}/runtime/activation/retry?expectedRevision=${o}`
651
+ });
652
+ e === l && (a.value = pe(n), c.value = !1);
653
+ } catch (t) {
654
+ if (e !== l) return;
655
+ ye(t, {
656
+ language: n,
657
+ source: "runtime-activation",
658
+ phase: "action"
659
+ }), s.value = !1, await _();
660
+ } finally {
661
+ e === l && (s.value = !1, oe());
662
+ }
663
+ }
664
+ return t({ refresh: _ }), (t, r) => m.value ? (k(), C("section", {
665
+ key: 0,
666
+ class: "module-runtime-activation",
667
+ "aria-label": N(n).t("platform.screen.ModuleRuntimeActivationStatus.module-runtime-configuration-activation-status", "模块运行配置生效状态"),
668
+ "aria-live": "polite"
669
+ }, [w("div", Ct, [
670
+ w("span", Y, j(N(n).t("platform.screen.ModuleRuntimeActivationStatus.runtime-configuration", "运行配置")), 1),
671
+ E(N(p), {
672
+ enabled: !0,
673
+ "enabled-label": ne.value,
674
+ "enabled-tone": re.value
675
+ }, null, 8, ["enabled-label", "enabled-tone"]),
676
+ w("span", X, j(ie.value), 1)
677
+ ]), w("div", wt, [
678
+ ae.value ? (k(), x(N(h), {
679
+ key: 0,
680
+ density: "compact",
681
+ disabled: o.value || s.value,
682
+ loading: s.value,
683
+ onClick: se
684
+ }, {
685
+ default: P(() => [T(j(N(n).t("platform.screen.ModuleRuntimeActivationStatus.retry-activation", "重试生效")), 1)]),
686
+ _: 1
687
+ }, 8, ["disabled", "loading"])) : S("v-if", !0),
688
+ c.value ? (k(), x(N(h), {
689
+ key: 1,
690
+ density: "compact",
691
+ disabled: o.value || s.value,
692
+ "icon-name": "reload",
693
+ onClick: _
694
+ }, {
695
+ default: P(() => [T(j(N(n).t("platform.screen.ModuleRuntimeActivationStatus.check-again", "重新查询")), 1)]),
696
+ _: 1
697
+ }, 8, ["disabled"])) : S("v-if", !0),
698
+ (k(), x(N(Ee), {
699
+ key: e.moduleAlias,
700
+ placement: "bottomRight"
701
+ }, {
702
+ content: P(() => [w("div", Tt, [
703
+ w("strong", null, j(N(n).t("platform.screen.ModuleRuntimeActivationStatus.diagnostics", "诊断信息")), 1),
704
+ w("p", Et, j(N(n).t("platform.screen.ModuleRuntimeActivationStatus.activation-status-of-the-module-runtime-configuration", "模块运行配置的生效情况")), 1),
705
+ c.value ? (k(), C("p", Dt, j(N(n).t("platform.screen.ModuleRuntimeActivationStatus.failed-to-check-the-status-check-again", "状态查询失败,请重新查询。")), 1)) : a.value?.status === "FAILED" ? (k(), C("p", Ot, j(a.value.failureMessage || N(n).t("platform.screen.ModuleRuntimeActivationStatus.no-failure-reason-is-available-retry-or-contact-an-administrator", "暂未提供失败原因,请重试或联系管理员。")), 1)) : f.value ? (k(), C("p", kt, j(N(n).t("platform.screen.ModuleRuntimeActivationStatus.the-service-is-loading-the-latest-configuration-the-status-will", "服务正在加载最新配置,状态将自动更新。")), 1)) : S("v-if", !0),
706
+ a.value ? (k(), C("dl", At, [
707
+ w("dt", null, j(N(n).t("platform.screen.ModuleRuntimeActivationStatus.configuration-revision", "配置版本")), 1),
708
+ w("dd", null, j(a.value.desiredRevision ?? "—"), 1),
709
+ w("dt", null, j(N(n).t("platform.screen.ModuleRuntimeActivationStatus.loaded-revision", "已加载版本")), 1),
710
+ w("dd", null, j(a.value.installedRevision ?? "—"), 1)
711
+ ])) : S("v-if", !0),
712
+ E(N(h), {
713
+ density: "compact",
714
+ emphasis: "quiet",
715
+ "icon-name": "reload",
716
+ disabled: o.value || s.value,
717
+ onClick: _
718
+ }, {
719
+ default: P(() => [T(j(N(n).t("platform.screen.ModuleRuntimeActivationStatus.refresh-status", "刷新状态")), 1)]),
720
+ _: 1
721
+ }, 8, ["disabled"])
722
+ ])]),
723
+ default: P(() => [E(N(h), {
724
+ density: "compact",
725
+ emphasis: "quiet",
726
+ title: N(n).t("platform.screen.WorkbenchAssistantPanel.show-diagnostics", "查看诊断信息")
727
+ }, {
728
+ default: P(() => [T(j(a.value?.status === "FAILED" ? N(n).t("platform.screen.ModuleRuntimeActivationStatus.view-reason", "查看原因") : N(n).t("platform.screen.ModuleRuntimeActivationStatus.diagnostics", "诊断信息")), 1)]),
729
+ _: 1
730
+ }, 8, ["title"])]),
731
+ _: 1
732
+ }))
733
+ ])], 8, St)) : S("v-if", !0);
734
+ }
735
+ }), [["__scopeId", "data-v-35af1777"]]), Mt = { class: "code-config" }, Nt = {
736
+ key: 0,
737
+ class: "code-config__error",
738
+ role: "alert"
739
+ }, Pt = {
740
+ key: 1,
741
+ role: "status"
742
+ }, Ft = { class: "code-config__content" }, It = {
743
+ key: 2,
744
+ class: "code-config__unavailable"
745
+ }, Lt = {
746
+ key: 0,
747
+ class: "code-config__actions"
748
+ }, Rt = {
749
+ key: 4,
750
+ class: "code-config__overview"
751
+ }, zt = { class: "code-config__directory-fields" }, Bt = { class: "code-config__field" }, Vt = {
752
+ key: 0,
753
+ class: "code-config__field"
754
+ }, Ht = {
755
+ key: 0,
756
+ class: "code-config__binding-summary"
757
+ }, Ut = { class: "code-config__identity" }, Wt = { class: "code-config__binding-fields" }, Gt = { class: "code-config__field" }, Kt = { class: "code-config__field" }, qt = {
758
+ key: 0,
759
+ class: "code-config__actions"
760
+ }, Jt = { key: 1 }, Yt = {
761
+ key: 0,
762
+ class: "code-config__table-control"
763
+ }, Xt = { class: "code-config__cell-label" }, Zt = { key: 1 }, Qt = { key: 1 }, $t = { key: 1 }, en = {
764
+ key: 4,
765
+ class: "code-config__row-actions"
766
+ }, tn = {
767
+ key: 1,
768
+ role: "status"
769
+ }, nn = {
770
+ key: 2,
771
+ class: "code-config__editor-content"
772
+ }, rn = { class: "code-config__editor-main" }, an = { class: "code-config__basic" }, on = { class: "code-config__field" }, sn = { class: "code-config__field" }, cn = {
773
+ key: 0,
774
+ class: "code-config__muted"
775
+ }, ln = { key: 0 }, un = { class: "code-config__checks code-config__policy-options" }, dn = {
776
+ key: 0,
777
+ class: "code-config__policy-option"
778
+ }, fn = { class: "code-config__policy-option" }, pn = ["aria-label"], mn = { class: "code-config__muted" }, hn = { class: "code-config__preview" }, gn = { class: "code-config__preview-heading" }, _n = ["aria-label"], vn = {
779
+ key: 2,
780
+ class: "code-config__muted"
781
+ }, yn = {
782
+ key: 0,
783
+ class: "code-config__trial-extra"
784
+ }, bn = { class: "code-config__field" }, xn = { class: "code-config__cell-label" }, Sn = { class: "code-config__trial-fields" }, Cn = {
785
+ key: 0,
786
+ class: "code-config__field"
787
+ }, wn = {
788
+ key: 1,
789
+ class: "code-config__muted"
790
+ }, Tn = ["aria-label"], En = /*@__PURE__*/ Be({
791
+ name: "CodeConfigurationView",
792
+ __name: "CodeConfigurationView",
793
+ props: {
794
+ moduleAlias: {},
795
+ moduleTitle: {},
796
+ embedded: { type: Boolean }
797
+ },
798
+ setup(e) {
799
+ let p = e, m = u(), h = (e, t) => m.t(`platform.code.config.${e}`, t);
800
+ function pe(e) {
801
+ return e instanceof le ? a(e, m) : ve(Se(e), m);
802
+ }
803
+ let ge = ee({ moduleAlias: "platform.code_rule" }), xe = t(), Ee = A(), Me = b(() => {
804
+ switch (Ee.value) {
805
+ case "no-model": return h("reason.no-model", "尚未关联业务数据模型,请先配置模型,再设置编号规则。");
806
+ case "no-fields": return h("reason.no-fields", "当前数据模型没有可用于编号的字段,请先检查字段配置。");
807
+ case "not-declared": return h("reason.not-declared", "该静态模块尚未声明可配置的编号字段,需由开发者在业务模型中声明。");
808
+ default: return p.moduleAlias ? h("reason.unavailable", "当前模块没有可配置的编号字段,请返回模块管理检查配置。") : h("no-modules", "没有可配置业务编码的模块。");
809
+ }
810
+ });
811
+ function Be() {
812
+ let e = p.moduleAlias ?? L.value;
813
+ e && xe?.openPage(n(Pe, {
814
+ moduleAlias: e,
815
+ moduleTitle: p.moduleTitle ?? Y.value?.moduleTitle,
816
+ governanceTab: "metadata"
817
+ }));
818
+ }
819
+ let D = r(), We = A(D?.value?.tenantId ?? ""), Ke = A(0), O = A(!1), M = b(() => !!We.value), Je = b(() => We.value && D?.value?.system ? s(ge.http, { "X-MuYun-Tenant-Id": We.value }) : ge.http), Qe = b(() => Ie(Je.value, m)), $e = b(() => D?.value?.system ? f({
820
+ http: ge.http,
821
+ language: m,
822
+ moduleAlias: "iam.tenant",
823
+ runtimeAccess: "REFERENCE"
824
+ }) : void 0), et = b(() => M.value ? f({
825
+ http: Je.value,
826
+ language: m,
827
+ moduleAlias: "iam.organization",
828
+ runtimeAccess: "REFERENCE"
829
+ }) : void 0), F = b(() => M.value && ge.can("saveTree") === !0), tt = b(() => ge.can("configureBinding") === !0), I = A([]), L = A(p.moduleAlias ?? ""), nt = A(""), rt = b(() => {
830
+ let e = /* @__PURE__ */ new Map();
831
+ for (let t of I.value) t.fields.length && (e.has(t.moduleAlias) || e.set(t.moduleAlias, {
832
+ id: t.moduleAlias,
833
+ title: Ce(t.moduleTitle || t.moduleAlias, t.moduleTitleText, m),
834
+ code: t.moduleAlias
835
+ }));
836
+ return [...e.values()];
837
+ }), it = b(() => M.value && !p.moduleAlias), at = b(() => I.value.filter((e) => e.moduleAlias === L.value)), ot = A(""), R = A(""), z = A([]), B = A(), st = A(""), V = A(), ct = A(""), H = A(!1), lt = A(!1), U = A(!1), ut = A(!1), dt = A(!1), ft = A([]), W = A(""), pt = A(""), mt = A(), ht = A(), G = A(""), K = A(), gt = A(), _t = A({}), vt = A(""), q = A("NORMAL"), J = A("SAVE"), xt = A(), St = Ve(bt, void 0), Ct = (e) => `${e.moduleAlias}/${e.entityAlias}`, Y = b(() => I.value.find((e) => Ct(e) === ot.value)), X = b(() => Y.value?.fields.find((e) => e.fieldName === R.value)), wt = b(() => [h(`enum.${q.value}`, q.value === "PRIMARY" ? "主编码" : "业务编码"), h(`enum.${J.value}`, J.value === "SAVE" ? "首次保存" : "业务操作时生成")].join(" · ")), Tt = b(() => !!B.value && Le(B.value)), Et = b(() => [Tt.value && B.value?.linkedUpdate ? h("linked-short", "来源变化时换号") : "", B.value?.allowRecycle ? h("recycle-short", "旧号可复用") : ""].filter(Boolean).join(" · ")), Dt = b(() => z.value.filter((e) => e.fieldName === R.value)), Ot = b(() => Dt.value.map((e) => ({ ...e }))), kt = A({}), At = 0;
838
+ Xe(() => [Je.value, Dt.value.map((e) => e.orgScopeType === "ORG" ? e.orgScopeId : "").join(",")], async ([e]) => {
839
+ let t = ++At;
840
+ kt.value = {};
841
+ let n = [...new Set(Dt.value.filter((e) => e.orgScopeType === "ORG").map((e) => e.orgScopeId).filter((e) => !!e))];
842
+ if (M.value && n.length) try {
843
+ let r = await te(e, { moduleAlias: "iam.organization" }).translate(n);
844
+ t === At && (kt.value = Object.fromEntries(r.records.map((e) => [String(e.id), we(e, "title", m) ?? h("specific-org", "指定机构")])));
845
+ } catch {}
846
+ });
847
+ function En(e) {
848
+ return e.orgScopeType === "GLOBAL" ? h("all-orgs", "全部机构") : kt.value[e.orgScopeId ?? ""] ?? h("specific-org", "指定机构");
849
+ }
850
+ let Dn = b(() => [
851
+ {
852
+ fieldName: "title",
853
+ title: h("rule-title", "规则名称"),
854
+ width: 150
855
+ },
856
+ {
857
+ fieldName: "scope",
858
+ title: h("scope", "适用范围"),
859
+ width: 152
860
+ },
861
+ {
862
+ fieldName: "organization",
863
+ title: h("organization", "适用组织"),
864
+ width: 120
865
+ },
866
+ {
867
+ fieldName: "effectiveFrom",
868
+ title: h("effective-from-short", "开始生效时间"),
869
+ width: 180
870
+ },
871
+ {
872
+ fieldName: "effectiveTo",
873
+ title: h("effective-to-short", "结束生效时间"),
874
+ width: 180
875
+ },
876
+ {
877
+ fieldName: "enabled",
878
+ title: h("enable-rule", "启用规则"),
879
+ width: 64
880
+ },
881
+ {
882
+ fieldName: "actions",
883
+ title: h("actions", "操作"),
884
+ width: 112
885
+ }
886
+ ]), On = b(() => V.value != null && JSON.stringify(V.value) !== ct.value), kn = b(() => Y.value?.source === "DYNAMIC" && X.value?.role != null && (q.value !== X.value.role || J.value !== (X.value.trigger ?? "SAVE"))), An = b(() => On.value || kn.value || B.value != null && JSON.stringify(B.value) !== st.value), Z = b(() => H.value || U.value);
887
+ Te(() => h("title", "业务编码"), () => An.value, () => Z.value);
888
+ let jn = b(() => F.value && !Z.value), Mn = b(() => Y.value ? Ne(Y.value, B.value) : []), Nn = b(() => Y.value?.sources.filter((e) => !Mn.value.some((t) => t.fieldName === e.fieldName)) ?? []), Pn = b(() => [...Mn.value, ...Nn.value.filter((e) => ft.value.includes(e.fieldName))]), Fn = 0, In, Ln, Rn = b(() => O.value && B.value?.mode !== "MANUAL" && !!B.value && !!Y.value && !Z.value && ge.can("preview")), zn = b(() => {
889
+ if (!Rn.value || !B.value) return "";
890
+ let e = B.value;
891
+ return JSON.stringify([
892
+ e.id,
893
+ e.moduleAlias,
894
+ e.entityAlias,
895
+ e.fieldName,
896
+ e.fieldRole,
897
+ e.fieldTrigger,
898
+ e.mode,
899
+ e.linkedUpdate,
900
+ e.orgScopeId,
901
+ e.segments,
902
+ e.sequencePolicy,
903
+ Pn.value.map((e) => [
904
+ e.fieldName,
905
+ e.type,
906
+ _t.value[e.fieldName]
907
+ ]),
908
+ vt.value
909
+ ]);
910
+ });
911
+ function Bn() {
912
+ In != null && clearTimeout(In), In = void 0, dt.value = !1, Ln?.abort(), Ln = void 0, ut.value = !1, ++Fn;
913
+ }
914
+ Xe(zn, (e) => {
915
+ Bn(), K.value = void 0, pt.value = "", e && (dt.value = !0, In = setTimeout(() => {
916
+ ur();
917
+ }, 500));
918
+ }, { flush: "sync" }), Ge(Bn);
919
+ let Vn = (e) => Object.entries(e).map(([e, t]) => ({
920
+ value: e,
921
+ label: h(`enum.${e}`, t)
922
+ })), Q = 0;
923
+ function $(e) {
924
+ V.value = void 0, ct.value = "", vt.value = "", e || (O.value = !1), B.value = e == null ? void 0 : JSON.parse(JSON.stringify(e)), X.value?.role || (q.value = e?.fieldRole ?? "NORMAL", J.value = e?.fieldTrigger ?? "SAVE"), st.value = B.value == null ? "" : JSON.stringify(B.value);
925
+ }
926
+ Xe([q, J], () => {
927
+ O.value && !X.value?.role && B.value && (B.value.fieldRole = q.value, B.value.fieldTrigger = J.value);
928
+ }, { flush: "sync" });
929
+ function Hn() {
930
+ q.value = X.value?.role ?? "NORMAL", J.value = X.value?.trigger ?? "SAVE";
931
+ }
932
+ function Un() {
933
+ return An.value ? (W.value = h("unsaved", "请先保存或取消当前修改。"), !1) : !Z.value;
934
+ }
935
+ function Wn(e) {
936
+ Un() && (R.value = e, _t.value = {}, ft.value = [], Hn(), $(Dt.value[0]), W.value = "", G.value = "");
937
+ }
938
+ async function Gn(e) {
939
+ if (!Un() || !rt.value.some((t) => t.id === e)) return;
940
+ L.value = e, nt.value = "", G.value = "";
941
+ let t = at.value.find((e) => e.fields.length) ?? at.value[0];
942
+ await Kn(t ? Ct(t) : "");
943
+ }
944
+ async function Kn(e) {
945
+ if (!Un()) return;
946
+ let t = ++Q;
947
+ ot.value = e, _t.value = {}, ft.value = [], R.value = "", z.value = [], $(), W.value = "", H.value = !0;
948
+ try {
949
+ let e = Y.value;
950
+ if (!e) return;
951
+ let n = M.value ? await Qe.value.rules(e) : [];
952
+ if (t !== Q) return;
953
+ z.value = n, R.value = e.fields.find((e) => e.role != null)?.fieldName ?? e.fields[0]?.fieldName ?? "", Hn(), $(Dt.value[0]);
954
+ } catch (e) {
955
+ t === Q && (W.value = pe(e));
956
+ } finally {
957
+ t === Q && (H.value = !1);
958
+ }
959
+ }
960
+ async function qn() {
961
+ let e = ++Q;
962
+ if (lt.value = !1, !M.value) {
963
+ H.value = !1, W.value = "";
964
+ return;
965
+ }
966
+ H.value = !0, Ee.value = void 0, W.value = "";
967
+ try {
968
+ let t = await Qe.value.targets(p.moduleAlias);
969
+ if (e !== Q) return;
970
+ if (I.value = t, p.moduleAlias && !t.some((e) => e.fields.length)) {
971
+ try {
972
+ let t = await ke(Je.value, p.moduleAlias);
973
+ if (e !== Q) return;
974
+ Ee.value = t.reason;
975
+ } catch {}
976
+ if (e !== Q) return;
977
+ }
978
+ H.value = !1, rt.value.some((e) => e.id === L.value) || (L.value = "");
979
+ let n = at.value.find((e) => e.fields.length) ?? at.value[0];
980
+ await Kn(n ? Ct(n) : "");
981
+ } catch (t) {
982
+ e === Q && (W.value = pe(t), lt.value = !0);
983
+ } finally {
984
+ e === Q && (H.value = !1);
985
+ }
986
+ }
987
+ Xe(() => p.moduleAlias, () => {
988
+ L.value = p.moduleAlias ?? "", nt.value = "", $(), R.value = "", ot.value = "", I.value = [], z.value = [], qn();
989
+ }, { immediate: !0 }), Xe(() => [
990
+ D?.value?.userId,
991
+ D?.value?.tenantId,
992
+ D?.value?.system
993
+ ], () => {
994
+ We.value = D?.value?.tenantId ?? "", L.value = p.moduleAlias ?? "", nt.value = "", $(), I.value = [], z.value = [], R.value = "", ot.value = "", qn();
995
+ });
996
+ async function Jn(e) {
997
+ Un() && (We.value = e ?? "", L.value = p.moduleAlias ?? "", nt.value = "", I.value = [], z.value = [], R.value = "", ot.value = "", $(), await qn());
998
+ }
999
+ function Yn(e, t, n) {
1000
+ t && n === 1 && e.length === 1 && !We.value && Jn(String(e[0].id));
1001
+ }
1002
+ async function Xn() {
1003
+ return Z.value ? !1 : !An.value || await ue({
1004
+ title: h("discard-rule", "放弃未保存的编号规则修改?"),
1005
+ content: h("discard-rule-help", "当前修改尚未保存,放弃后将恢复已保存的规则。"),
1006
+ okText: h("discard", "放弃修改"),
1007
+ danger: !0
1008
+ }, m);
1009
+ }
1010
+ function Zn() {
1011
+ er(), O.value = !1;
1012
+ }
1013
+ function Qn(e) {
1014
+ Un() && (Hn(), $(e), O.value = !0, W.value = "", G.value = "");
1015
+ }
1016
+ function $n() {
1017
+ if (Un() && Y.value && X.value) {
1018
+ let e = Oe(Y.value, X.value);
1019
+ e.fieldRole = q.value, e.fieldTrigger = J.value, $(e), O.value = !0, W.value = "", G.value = "";
1020
+ }
1021
+ }
1022
+ function er() {
1023
+ Hn(), $(B.value?.id ? z.value.find((e) => e.id === B.value?.id) : void 0), W.value = "";
1024
+ }
1025
+ function tr() {
1026
+ Hn(), W.value = "", G.value = "";
1027
+ }
1028
+ async function nr() {
1029
+ if (Y.value && X.value && !U.value) {
1030
+ U.value = !0, W.value = "", G.value = "";
1031
+ try {
1032
+ let e = await Qe.value.bind(Y.value, X.value, q.value, J.value);
1033
+ I.value = I.value.map((t) => Ct(t) === Ct(e) ? e : t), Hn(), St ? await St(e.moduleAlias) : await xt.value?.refresh(), G.value = h("binding-saved", "字段配置已保存,请查看运行态生效状态。");
1034
+ } catch (e) {
1035
+ W.value = pe(e), e instanceof le || ye(e, {
1036
+ language: m,
1037
+ source: "business-code",
1038
+ phase: "action"
1039
+ });
1040
+ } finally {
1041
+ U.value = !1;
1042
+ }
1043
+ }
1044
+ }
1045
+ async function rr(e) {
1046
+ let t = Y.value?.source === "DYNAMIC" && !X.value?.role, n = await Qe.value.save(e);
1047
+ if (z.value = [...z.value.filter((e) => e.id !== n.id), n], t && n.enabled) try {
1048
+ I.value = await Qe.value.targets(p.moduleAlias), Hn(), St ? await St(n.moduleAlias) : await xt.value?.refresh();
1049
+ } catch {
1050
+ W.value = h("saved-refresh-failed", "规则已保存,但状态刷新失败,请刷新页面确认。");
1051
+ }
1052
+ return n;
1053
+ }
1054
+ async function ir() {
1055
+ if (B.value && !U.value) {
1056
+ U.value = !0, W.value = "", G.value = "";
1057
+ try {
1058
+ let e = await rr(B.value);
1059
+ $(e), G.value = e.enabled ? h("active", "规则已启用,后续业务按适用范围匹配规则。") : h("saved-disabled", "规则已保存,可在规则列表中启用。");
1060
+ } catch (e) {
1061
+ W.value = pe(e), e instanceof le || ye(e, {
1062
+ language: m,
1063
+ source: "business-code",
1064
+ phase: "action"
1065
+ });
1066
+ } finally {
1067
+ U.value = !1, await He(), ht.value?.scrollIntoView?.({
1068
+ block: "nearest",
1069
+ behavior: "smooth"
1070
+ });
1071
+ }
1072
+ }
1073
+ }
1074
+ async function ar(e, t) {
1075
+ if (!V.value && Un() && F.value && (!t || X.value?.role || tt.value)) {
1076
+ U.value = !0, W.value = "";
1077
+ try {
1078
+ let n = await rr({
1079
+ ...e,
1080
+ ...!X.value?.role && t ? {
1081
+ fieldRole: q.value,
1082
+ fieldTrigger: J.value
1083
+ } : {},
1084
+ enabled: t
1085
+ });
1086
+ B.value?.id === n.id && $(n), G.value = n.enabled ? h("active", "规则已启用,后续业务按适用范围匹配规则。") : h("rule-stopped", "规则已停用,已有编码保持不变。");
1087
+ } catch (e) {
1088
+ W.value = pe(e);
1089
+ } finally {
1090
+ U.value = !1;
1091
+ }
1092
+ }
1093
+ }
1094
+ function or(e) {
1095
+ Un() && ($(), V.value = JSON.parse(JSON.stringify(e)), ct.value = JSON.stringify(V.value), W.value = "", G.value = "");
1096
+ }
1097
+ function sr() {
1098
+ V.value = void 0, ct.value = "", W.value = "";
1099
+ }
1100
+ async function cr() {
1101
+ if (V.value && F.value && !Z.value) {
1102
+ U.value = !0, W.value = "", G.value = "";
1103
+ try {
1104
+ $(await rr(V.value)), G.value = h("usage-saved", "适用配置已保存。");
1105
+ } catch (e) {
1106
+ W.value = pe(e);
1107
+ } finally {
1108
+ U.value = !1;
1109
+ }
1110
+ }
1111
+ }
1112
+ function lr(e) {
1113
+ B.value && (B.value.mode = e, e !== "MANUAL" && B.value.segments.length === 0 && (B.value.segments = [je(), je("SEQUENCE")], B.value.sequencePolicy = Re()));
1114
+ }
1115
+ async function ur(e = !1) {
1116
+ if (!B.value || !Y.value || !Rn.value) return;
1117
+ Bn();
1118
+ let t = ++Fn, n = new AbortController();
1119
+ Ln = n, ut.value = !0, pt.value = "", K.value = void 0;
1120
+ try {
1121
+ let r = await Qe.value.preview(B.value, Ae(Pn.value, _t.value, m), vt.value.trim() === "" ? B.value.sequencePolicy?.startValue ?? 1 : Number(vt.value), n.signal);
1122
+ t === Fn && (K.value = r, e && (await He(), t === Fn && gt.value?.scrollIntoView?.({
1123
+ block: "nearest",
1124
+ behavior: "smooth"
1125
+ })));
1126
+ } catch (r) {
1127
+ t === Fn && !n.signal.aborted && (pt.value = pe(r), e && (await He(), t === Fn && (mt.value?.scrollIntoView?.({
1128
+ block: "nearest",
1129
+ behavior: "smooth"
1130
+ }), mt.value?.focus({ preventScroll: !0 }))));
1131
+ } finally {
1132
+ t === Fn && (ut.value = !1, Ln = void 0);
1133
+ }
1134
+ }
1135
+ return (t, n) => (k(), C("section", Mt, [
1136
+ W.value && !O.value ? (k(), C("div", Nt, [E(N(oe), {
1137
+ title: h("request-failed", "操作未完成"),
1138
+ message: W.value
1139
+ }, null, 8, ["title", "message"]), lt.value ? (k(), x(N(o), {
1140
+ key: 0,
1141
+ disabled: Z.value,
1142
+ onClick: qn
1143
+ }, {
1144
+ default: P(() => [T(j(h("retry", "重试加载")), 1)]),
1145
+ _: 1
1146
+ }, 8, ["disabled"])) : S("v-if", !0)])) : S("v-if", !0),
1147
+ G.value && !O.value ? (k(), C("p", Pt, j(G.value), 1)) : S("v-if", !0),
1148
+ E(N(l), {
1149
+ class: "code-config__layout",
1150
+ "explorer-count": (N(D)?.system && $e.value ? 1 : 0) + +!!it.value,
1151
+ editing: Z.value || An.value || !!V.value
1152
+ }, {
1153
+ default: P(() => [
1154
+ N(D)?.system && $e.value ? (k(), x(N(se), {
1155
+ key: 0,
1156
+ collapsible: "",
1157
+ title: h("tenant-short", "租户"),
1158
+ "has-selection": !!We.value
1159
+ }, {
1160
+ default: P(() => [N(D)?.system && $e.value ? (k(), x(N(be), {
1161
+ key: 0,
1162
+ context: $e.value,
1163
+ "selected-id": We.value || void 0,
1164
+ "reload-key": Ke.value,
1165
+ disabled: Z.value || An.value,
1166
+ onSelect: n[0] ||= (e) => Jn(String(e.id)),
1167
+ onDeselect: n[1] ||= (e) => Jn(),
1168
+ onLoaded: Yn,
1169
+ onRefresh: n[2] ||= (e) => Ke.value++
1170
+ }, null, 8, [
1171
+ "context",
1172
+ "selected-id",
1173
+ "reload-key",
1174
+ "disabled"
1175
+ ])) : S("v-if", !0)]),
1176
+ _: 1
1177
+ }, 8, ["title", "has-selection"])) : S("v-if", !0),
1178
+ it.value ? (k(), x(N(se), {
1179
+ key: 1,
1180
+ collapsible: "",
1181
+ title: h("module", "所属模块"),
1182
+ "has-selection": !!L.value
1183
+ }, {
1184
+ default: P(() => [E(N(i), {
1185
+ title: h("module", "所属模块"),
1186
+ "refresh-disabled": Z.value || An.value,
1187
+ "search-keyword": nt.value,
1188
+ onRefresh: qn,
1189
+ "onUpdate:searchKeyword": n[4] ||= (e) => nt.value = e
1190
+ }, {
1191
+ default: P(() => [E(N(fe), {
1192
+ records: rt.value,
1193
+ "selected-id": L.value || void 0,
1194
+ keyword: nt.value,
1195
+ "empty-description": h("no-modules", "没有可配置业务编码的模块。"),
1196
+ onSelect: n[3] ||= (e) => Gn(String(e.id))
1197
+ }, null, 8, [
1198
+ "records",
1199
+ "selected-id",
1200
+ "keyword",
1201
+ "empty-description"
1202
+ ])]),
1203
+ _: 1
1204
+ }, 8, [
1205
+ "title",
1206
+ "refresh-disabled",
1207
+ "search-keyword"
1208
+ ])]),
1209
+ _: 1
1210
+ }, 8, ["title", "has-selection"])) : S("v-if", !0),
1211
+ w("div", Ft, [M.value ? H.value ? (k(), x(N(c), {
1212
+ key: 1,
1213
+ spinning: !0
1214
+ }, {
1215
+ default: P(() => [w("p", null, j(h("loading", "正在读取编码配置…")), 1)]),
1216
+ _: 1
1217
+ })) : !W.value && rt.value.length === 0 ? (k(), C("div", It, [E(N(ie), { description: Me.value }, null, 8, ["description"]), N(xe) ? (k(), C("div", Lt, [Ee.value === "no-model" || Ee.value === "no-fields" ? (k(), x(N(o), {
1218
+ key: 0,
1219
+ type: "primary",
1220
+ onClick: Be
1221
+ }, {
1222
+ default: P(() => [T(j(h("configure-model", "配置模型")), 1)]),
1223
+ _: 1
1224
+ })) : S("v-if", !0), E(N(o), { onClick: n[5] ||= (e) => N(xe).openRoute("/platform/module") }, {
1225
+ default: P(() => [T(j(h("back-to-modules", "返回模块管理")), 1)]),
1226
+ _: 1
1227
+ })])) : S("v-if", !0)])) : !L.value && I.value.length ? (k(), x(N(ie), {
1228
+ key: 3,
1229
+ description: h("select-module", "选择模块后,配置业务对象的编码规则。")
1230
+ }, null, 8, ["description"])) : L.value && at.value.length ? (k(), C("div", Rt, [E(N(i), {
1231
+ class: "code-config__directory",
1232
+ title: h("binding-title", "编码对象"),
1233
+ "refresh-disabled": Z.value || An.value,
1234
+ searchable: !1,
1235
+ onRefresh: qn
1236
+ }, {
1237
+ actions: P(() => [!e.embedded && Y.value?.source === "DYNAMIC" ? (k(), x(jt, {
1238
+ key: 0,
1239
+ ref_key: "localActivation",
1240
+ ref: xt,
1241
+ "module-alias": Y.value.moduleAlias
1242
+ }, null, 8, ["module-alias"])) : S("v-if", !0)]),
1243
+ default: P(() => [w("div", zt, [
1244
+ w("label", Bt, [T(j(h("entity", "业务对象")), 1), E(N(v), {
1245
+ value: ot.value,
1246
+ disabled: Z.value,
1247
+ options: at.value.map((e) => ({
1248
+ value: Ct(e),
1249
+ label: e.title
1250
+ })),
1251
+ "onUpdate:value": n[6] ||= (e) => Kn(String(e))
1252
+ }, null, 8, [
1253
+ "value",
1254
+ "disabled",
1255
+ "options"
1256
+ ])]),
1257
+ Y.value?.fields.length ? (k(), C("label", Vt, [T(j(h("field", "编码字段")), 1), E(N(v), {
1258
+ value: R.value,
1259
+ disabled: Z.value,
1260
+ options: Y.value?.fields.map((e) => ({
1261
+ value: e.fieldName,
1262
+ label: e.title
1263
+ })) ?? [],
1264
+ "onUpdate:value": n[7] ||= (e) => Wn(String(e))
1265
+ }, null, 8, [
1266
+ "value",
1267
+ "disabled",
1268
+ "options"
1269
+ ])])) : S("v-if", !0),
1270
+ Y.value && !X.value ? (k(), C(y, { key: 1 }, [E(N(ie), { description: h("reason.no-fields", "当前数据模型没有可用于编号的字段,请先检查字段配置。") }, null, 8, ["description"]), N(xe) && Y.value.source === "DYNAMIC" ? (k(), x(N(o), {
1271
+ key: 0,
1272
+ onClick: Be
1273
+ }, {
1274
+ default: P(() => [T(j(h("configure-model", "配置模型")), 1)]),
1275
+ _: 1
1276
+ })) : S("v-if", !0)], 64)) : S("v-if", !0),
1277
+ X.value ? (k(), C(y, { key: 2 }, [Y.value?.source === "STATIC" ? (k(), C("div", Ht, [w("span", null, j(wt.value), 1), E(N(g), { label: h("binding-info", "字段设置说明") }, {
1278
+ default: P(() => [w("p", null, j(h("java-declaration", "字段角色和生成时机由业务模型预设。")), 1), w("dl", Ut, [
1279
+ w("dt", null, j(h("module", "所属模块")), 1),
1280
+ w("dd", null, j(Y.value.moduleAlias), 1),
1281
+ w("dt", null, j(h("entity", "业务对象")), 1),
1282
+ w("dd", null, j(Y.value.entityAlias), 1),
1283
+ w("dt", null, j(h("field", "编码字段")), 1),
1284
+ w("dd", null, j(X.value.fieldName), 1)
1285
+ ])]),
1286
+ _: 1
1287
+ }, 8, ["label"])])) : (k(), C("section", {
1288
+ key: `${ot.value}/${R.value}`,
1289
+ class: "code-config__binding"
1290
+ }, [w("div", Wt, [
1291
+ w("label", Gt, [T(j(h("role", "编码角色")), 1), E(N(v), {
1292
+ value: q.value,
1293
+ "onUpdate:value": n[8] ||= (e) => q.value = e,
1294
+ disabled: Z.value || (X.value.role ? !tt.value : !F.value),
1295
+ options: Vn({
1296
+ NORMAL: "业务编码",
1297
+ PRIMARY: "主编码"
1298
+ })
1299
+ }, null, 8, [
1300
+ "value",
1301
+ "disabled",
1302
+ "options"
1303
+ ])]),
1304
+ w("label", Kt, [T(j(h("trigger", "生成时机")), 1), E(N(v), {
1305
+ value: J.value,
1306
+ "onUpdate:value": n[9] ||= (e) => J.value = e,
1307
+ disabled: Z.value || (X.value.role ? !tt.value : !F.value),
1308
+ options: Vn({
1309
+ SAVE: "首次保存",
1310
+ EXPLICIT: "业务操作时生成"
1311
+ })
1312
+ }, null, 8, [
1313
+ "value",
1314
+ "disabled",
1315
+ "options"
1316
+ ])]),
1317
+ X.value.role && kn.value ? (k(), C("div", qt, [E(N(o), {
1318
+ disabled: !tt.value || Z.value,
1319
+ onClick: nr
1320
+ }, {
1321
+ default: P(() => [T(j(h("save-binding", "保存字段配置")), 1)]),
1322
+ _: 1
1323
+ }, 8, ["disabled"]), E(N(o), {
1324
+ disabled: Z.value,
1325
+ onClick: tr
1326
+ }, {
1327
+ default: P(() => [T(j(h("cancel-settings", "取消修改")), 1)]),
1328
+ _: 1
1329
+ }, 8, ["disabled"])])) : S("v-if", !0)
1330
+ ])])), X.value ? (k(), x(N(de), {
1331
+ key: 2,
1332
+ title: h("rules", "编号规则"),
1333
+ kind: "relation"
1334
+ }, {
1335
+ actions: P(() => [E(N(_), {
1336
+ "icon-name": "plus",
1337
+ title: h("new-rule", "新增规则"),
1338
+ "aria-label": h("new-rule", "新增规则"),
1339
+ disabled: !F.value || Z.value,
1340
+ onClick: $n
1341
+ }, null, 8, [
1342
+ "title",
1343
+ "aria-label",
1344
+ "disabled"
1345
+ ])]),
1346
+ default: P(() => [E(N(he), {
1347
+ class: "code-config__rules-table",
1348
+ columns: Dn.value,
1349
+ rows: Ot.value,
1350
+ density: "compact"
1351
+ }, {
1352
+ cell: P(({ row: e, column: t }) => [t.fieldName === "title" ? (k(), x(N(o), {
1353
+ key: 0,
1354
+ type: "link",
1355
+ class: "code-config__rule-name",
1356
+ disabled: Z.value,
1357
+ onClick: (t) => Qn(e)
1358
+ }, {
1359
+ default: P(() => [T(j(e.title), 1)]),
1360
+ _: 2
1361
+ }, 1032, ["disabled", "onClick"])) : t.fieldName === "scope" ? (k(), C(y, { key: 1 }, [V.value && V.value.id === e.id ? (k(), x(N(v), {
1362
+ key: 0,
1363
+ value: V.value.orgScopeType,
1364
+ "onUpdate:value": n[10] ||= (e) => V.value.orgScopeType = e,
1365
+ "aria-label": h("scope", "适用范围"),
1366
+ disabled: !jn.value,
1367
+ options: Vn({
1368
+ GLOBAL: "当前租户全部组织",
1369
+ ORG: "指定组织及其下级"
1370
+ })
1371
+ }, null, 8, [
1372
+ "value",
1373
+ "aria-label",
1374
+ "disabled",
1375
+ "options"
1376
+ ])) : (k(), C("span", Jt, j(e.orgScopeType === "GLOBAL" ? h("all-orgs", "全部机构") : h("enum.ORG", "指定组织及其下级")), 1))], 64)) : t.fieldName === "organization" ? (k(), C(y, { key: 2 }, [V.value && V.value.id === e.id && V.value.orgScopeType === "ORG" ? (k(), C("label", Yt, [w("span", Xt, j(h("organization", "适用组织")), 1), et.value ? (k(), x(N(me), {
1377
+ key: 0,
1378
+ value: V.value.orgScopeId ?? void 0,
1379
+ context: et.value,
1380
+ mode: "tree",
1381
+ disabled: !jn.value,
1382
+ "onUpdate:value": n[11] ||= (e) => V.value.orgScopeId = e
1383
+ }, null, 8, [
1384
+ "value",
1385
+ "context",
1386
+ "disabled"
1387
+ ])) : (k(), C("span", Zt, j(h("tenant-required", "请使用租户身份选择组织。")), 1))])) : (k(), C("span", Qt, j((V.value && V.value.id === e.id ? V.value.orgScopeType : e.orgScopeType) === "GLOBAL" ? "—" : En(e)), 1))], 64)) : t.fieldName === "effectiveFrom" || t.fieldName === "effectiveTo" ? (k(), C(y, { key: 3 }, [V.value && V.value.id === e.id ? (k(), x(N(d), {
1388
+ key: 0,
1389
+ value: V.value[t.fieldName],
1390
+ "onUpdate:value": (e) => V.value[t.fieldName] = e,
1391
+ "aria-label": t.title,
1392
+ type: "datetime-local",
1393
+ step: 60,
1394
+ disabled: !jn.value
1395
+ }, null, 8, [
1396
+ "value",
1397
+ "onUpdate:value",
1398
+ "aria-label",
1399
+ "disabled"
1400
+ ])) : (k(), C("span", $t, j(N(_e)(e[t.fieldName], {
1401
+ language: N(m),
1402
+ precision: "minute",
1403
+ emptyText: h("unlimited", "不限")
1404
+ }).text), 1))], 64)) : t.fieldName === "actions" ? (k(), C("div", en, [V.value && V.value.id === e.id ? (k(), C(y, { key: 0 }, [E(N(o), {
1405
+ type: "link",
1406
+ disabled: !F.value || Z.value || !On.value,
1407
+ onClick: cr
1408
+ }, {
1409
+ default: P(() => [T(j(h("save", "保存")), 1)]),
1410
+ _: 1
1411
+ }, 8, ["disabled"]), E(N(o), {
1412
+ type: "link",
1413
+ disabled: Z.value,
1414
+ onClick: sr
1415
+ }, {
1416
+ default: P(() => [T(j(h("cancel-settings", "取消修改")), 1)]),
1417
+ _: 1
1418
+ }, 8, ["disabled"])], 64)) : (k(), x(N(o), {
1419
+ key: 1,
1420
+ type: "link",
1421
+ class: "code-config__edit-usage",
1422
+ "aria-label": h("edit-usage", "编辑适用配置") + ":" + e.title,
1423
+ disabled: !F.value || Z.value,
1424
+ onClick: (t) => or(e)
1425
+ }, {
1426
+ default: P(() => [T(j(h("edit", "编辑")), 1)]),
1427
+ _: 1
1428
+ }, 8, [
1429
+ "aria-label",
1430
+ "disabled",
1431
+ "onClick"
1432
+ ]))])) : t.fieldName === "enabled" ? (k(), x(N(ne), {
1433
+ key: 5,
1434
+ "aria-label": N(m).t("platform.code.config.rule-switch", "启用规则:{name}", { name: e.title }),
1435
+ checked: e.enabled,
1436
+ disabled: !F.value || Z.value || An.value || !!V.value || !e.enabled && !X.value.role && !tt.value,
1437
+ onChange: (t) => ar(e, t)
1438
+ }, null, 8, [
1439
+ "aria-label",
1440
+ "checked",
1441
+ "disabled",
1442
+ "onChange"
1443
+ ])) : S("v-if", !0)]),
1444
+ empty: P(() => [T(j(h("no-rules", "暂无编号规则")), 1)]),
1445
+ _: 1
1446
+ }, 8, ["columns", "rows"])]),
1447
+ _: 1
1448
+ }, 8, ["title"])) : S("v-if", !0)], 64)) : S("v-if", !0)
1449
+ ])]),
1450
+ _: 1
1451
+ }, 8, ["title", "refresh-disabled"])])) : S("v-if", !0) : (k(), x(N(ie), {
1452
+ key: 0,
1453
+ description: h("select-tenant", "选择规则所属租户后,可维护该租户的编号规则。")
1454
+ }, null, 8, ["description"]))])
1455
+ ]),
1456
+ _: 1
1457
+ }, 8, ["explorer-count", "editing"]),
1458
+ O.value ? (k(), x(N(re), {
1459
+ key: 2,
1460
+ open: O.value,
1461
+ width: "wide",
1462
+ "before-close": Xn,
1463
+ onClose: Zn,
1464
+ class: "code-config__editor",
1465
+ title: B.value?.id ? h("rules", "编号规则") : h("create-rule-title", "新增编号规则"),
1466
+ subtitle: [Y.value?.title, X.value?.title].filter(Boolean).join(" · ")
1467
+ }, ze({
1468
+ default: P(() => [W.value || G.value ? (k(), C("div", {
1469
+ key: 0,
1470
+ ref_key: "editorFeedback",
1471
+ ref: ht
1472
+ }, [W.value ? (k(), x(N(oe), {
1473
+ key: 0,
1474
+ title: h("request-failed", "操作未完成"),
1475
+ message: W.value
1476
+ }, null, 8, ["title", "message"])) : S("v-if", !0), G.value ? (k(), C("p", tn, j(G.value), 1)) : S("v-if", !0)], 512)) : S("v-if", !0), B.value ? (k(), C("div", nn, [w("div", { class: Ue(["code-config__editor-grid", { "code-config__editor-grid--manual": B.value.mode === "MANUAL" }]) }, [w("div", rn, [
1477
+ w("div", an, [w("label", on, [T(j(h("rule-title", "规则名称")), 1), E(N(d), {
1478
+ value: B.value.title,
1479
+ "onUpdate:value": n[12] ||= (e) => B.value.title = e,
1480
+ disabled: !jn.value
1481
+ }, null, 8, ["value", "disabled"])]), w("label", sn, [T(j(h("mode", "编号方式")), 1), E(N(v), {
1482
+ value: B.value.mode,
1483
+ disabled: !jn.value,
1484
+ options: Vn({
1485
+ AUTO: "自动编号",
1486
+ MANUAL: "人工编号",
1487
+ AUTO_WITH_MANUAL_EDIT: "自动编号,允许人工调整"
1488
+ }),
1489
+ "onUpdate:value": n[13] ||= (e) => lr(e)
1490
+ }, null, 8, [
1491
+ "value",
1492
+ "disabled",
1493
+ "options"
1494
+ ])])]),
1495
+ B.value.mode === "MANUAL" ? (k(), C("p", cn, j(h("manual-description", "人工填写编号,无需设置编码格式。")), 1)) : S("v-if", !0),
1496
+ Ze(E(yt, {
1497
+ rule: B.value,
1498
+ "onUpdate:rule": n[14] ||= (e) => B.value = e,
1499
+ sources: Y.value?.sources ?? [],
1500
+ trigger: X.value?.trigger ?? J.value,
1501
+ editable: jn.value
1502
+ }, null, 8, [
1503
+ "rule",
1504
+ "sources",
1505
+ "trigger",
1506
+ "editable"
1507
+ ]), [[Ye, B.value.mode !== "MANUAL"]]),
1508
+ (k(), C("details", {
1509
+ key: B.value.id ?? "new",
1510
+ class: "code-config__policy"
1511
+ }, [w("summary", null, [T(j(h("numbering-policy", "编号策略")), 1), Et.value ? (k(), C("span", ln, " · " + j(Et.value), 1)) : S("v-if", !0)]), w("div", un, [Tt.value ? (k(), C("div", dn, [E(N(ce), {
1512
+ checked: B.value.linkedUpdate,
1513
+ "onUpdate:checked": n[15] ||= (e) => B.value.linkedUpdate = e,
1514
+ disabled: !jn.value
1515
+ }, {
1516
+ default: P(() => [T(j(h("linked", "修改编号来源后自动换号")), 1)]),
1517
+ _: 1
1518
+ }, 8, ["checked", "disabled"]), E(N(g), { label: h("linked-help-title", "自动换号说明") }, {
1519
+ default: P(() => [w("p", null, j(h("linked-help", "已生成编号后,修改参与编号的业务字段并保存,将重新生成整个编号;包含流水号时会重新取号。未勾选则保留原编号,修改其他字段不受影响。")), 1), w("p", null, j(h("linked-example", "例如编号由“采购类别 + 流水号”组成:类别从“设备”改为“耗材”,编号会从 SB-0001 换为 HC-0002(示例)。")), 1)]),
1520
+ _: 1
1521
+ }, 8, ["label"])])) : S("v-if", !0), w("div", fn, [E(N(ce), {
1522
+ checked: B.value.allowRecycle,
1523
+ "onUpdate:checked": n[16] ||= (e) => B.value.allowRecycle = e,
1524
+ disabled: !jn.value
1525
+ }, {
1526
+ default: P(() => [T(j(h("recycle-short-label", "允许复用旧号")), 1)]),
1527
+ _: 1
1528
+ }, 8, ["checked", "disabled"]), E(N(g), { label: h("recycle-help-title", "旧号复用说明") }, {
1529
+ default: P(() => [w("p", null, j(h("recycle-help", "记录彻底删除或更换编号后,释放的旧号允许再次分配。移入回收站仍会占用原编号;取消勾选后,旧号不再分配给其他记录。")), 1)]),
1530
+ _: 1
1531
+ }, 8, ["label"])])])]))
1532
+ ]), B.value.mode === "MANUAL" ? S("v-if", !0) : (k(), C("aside", {
1533
+ key: 0,
1534
+ class: "code-config__trial",
1535
+ "aria-label": h("trial", "草稿试算")
1536
+ }, [
1537
+ E(N(ae), { title: h("trial", "草稿试算") }, null, 8, ["title"]),
1538
+ w("p", mn, j(h("auto-trial-short", "自动试算,不占号")), 1),
1539
+ w("div", hn, [w("div", gn, [w("span", null, j(h("trial-result", "试算结果")), 1), E(N(o), {
1540
+ type: "text",
1541
+ "icon-name": "reload",
1542
+ "icon-only": "",
1543
+ size: "small",
1544
+ title: h("refresh-trial", "刷新试算"),
1545
+ "aria-label": h("refresh-trial", "刷新试算"),
1546
+ disabled: !Rn.value || ut.value,
1547
+ loading: ut.value,
1548
+ onClick: n[17] ||= (e) => ur(!0)
1549
+ }, null, 8, [
1550
+ "title",
1551
+ "aria-label",
1552
+ "disabled",
1553
+ "loading"
1554
+ ])]), pt.value ? (k(), C("div", {
1555
+ key: 0,
1556
+ ref_key: "trialErrorElement",
1557
+ ref: mt,
1558
+ tabindex: "-1",
1559
+ class: "code-config__trial-error"
1560
+ }, [E(N(oe), {
1561
+ title: h("trial-failed", "试算未完成"),
1562
+ message: pt.value
1563
+ }, null, 8, ["title", "message"])], 512)) : K.value ? (k(), C("output", {
1564
+ key: 1,
1565
+ ref_key: "previewElement",
1566
+ ref: gt,
1567
+ "aria-label": h("trial-result", "试算结果")
1568
+ }, [w("strong", null, j(K.value.value), 1)], 8, _n)) : (k(), C("p", vn, j(dt.value || ut.value ? h("trial-updating", "正在更新…") : h("auto-trial-placeholder", "修改配置后自动更新")), 1))]),
1569
+ Nn.value.length ? (k(), C("details", yn, [w("summary", null, j(h("trial-extra-short", "补充试算来源")), 1), w("label", bn, [w("span", xn, j(h("trial-extra-short", "补充试算来源")), 1), E(N(v), {
1570
+ value: ft.value,
1571
+ "onUpdate:value": n[18] ||= (e) => ft.value = e,
1572
+ mode: "multiple",
1573
+ "show-search": "",
1574
+ disabled: Z.value,
1575
+ options: Nn.value.map((e) => ({
1576
+ value: e.fieldName,
1577
+ label: N(Fe)(e, N(m))
1578
+ }))
1579
+ }, null, 8, [
1580
+ "value",
1581
+ "disabled",
1582
+ "options"
1583
+ ])])])) : S("v-if", !0),
1584
+ w("div", Sn, [(k(!0), C(y, null, qe(Pn.value, (e) => (k(), C("label", {
1585
+ class: "code-config__field",
1586
+ key: e.fieldName
1587
+ }, [T(j(N(Fe)(e, N(m))), 1), N(De)(e) === "boolean" ? (k(), x(N(v), {
1588
+ key: 0,
1589
+ value: _t.value[e.fieldName],
1590
+ "onUpdate:value": (t) => _t.value[e.fieldName] = t,
1591
+ "allow-clear": "",
1592
+ disabled: Z.value,
1593
+ options: [{
1594
+ value: "true",
1595
+ label: h("boolean-true", "是")
1596
+ }, {
1597
+ value: "false",
1598
+ label: h("boolean-false", "否")
1599
+ }]
1600
+ }, null, 8, [
1601
+ "value",
1602
+ "onUpdate:value",
1603
+ "disabled",
1604
+ "options"
1605
+ ])) : (k(), x(N(d), {
1606
+ key: 1,
1607
+ value: _t.value[e.fieldName],
1608
+ "onUpdate:value": (t) => _t.value[e.fieldName] = t,
1609
+ step: N(De)(e) === "number" ? "any" : void 0,
1610
+ type: N(De)(e) === "datetime" ? "datetime-local" : N(De)(e) === "number" ? "number" : N(De)(e) === "date" ? "date" : "text",
1611
+ disabled: Z.value
1612
+ }, null, 8, [
1613
+ "value",
1614
+ "onUpdate:value",
1615
+ "step",
1616
+ "type",
1617
+ "disabled"
1618
+ ]))]))), 128)), B.value.sequencePolicy ? (k(), C("label", Cn, [T(j(h("trial-sequence", "试算流水值")), 1), E(N(d), {
1619
+ value: vt.value,
1620
+ "onUpdate:value": n[19] ||= (e) => vt.value = e,
1621
+ type: "number",
1622
+ placeholder: String(B.value.sequencePolicy?.startValue ?? 1),
1623
+ disabled: Z.value
1624
+ }, null, 8, [
1625
+ "value",
1626
+ "placeholder",
1627
+ "disabled"
1628
+ ])])) : S("v-if", !0)]),
1629
+ K.value?.segments.length ? (k(), C("p", wn, j(h("segment-results", "片段结果(不含分隔符)")), 1)) : S("v-if", !0),
1630
+ K.value?.segments.length ? (k(), C("ol", {
1631
+ key: 2,
1632
+ class: "code-config__preview-segments",
1633
+ "aria-label": h("segment-results", "片段结果(不含分隔符)")
1634
+ }, [(k(!0), C(y, null, qe(K.value.segments, (e, t) => (k(), C("li", { key: t }, [w("span", null, j(h(`segment.${e.segmentType}`, e.segmentType)), 1), w("code", null, j(e.value), 1)]))), 128))], 8, Tn)) : S("v-if", !0)
1635
+ ], 8, pn))], 2)])) : (k(), x(N(ie), {
1636
+ key: 1,
1637
+ description: h("choose-rule", "选择或新增编号规则。")
1638
+ }, null, 8, ["description"]))]),
1639
+ _: 2
1640
+ }, [B.value ? {
1641
+ name: "header-actions",
1642
+ fn: P(() => [E(N(o), {
1643
+ disabled: Z.value,
1644
+ onClick: Zn
1645
+ }, {
1646
+ default: P(() => [T(j(h("cancel", "取消修改")), 1)]),
1647
+ _: 1
1648
+ }, 8, ["disabled"]), E(N(o), {
1649
+ type: "primary",
1650
+ disabled: !jn.value || kn.value,
1651
+ loading: U.value,
1652
+ onClick: ir
1653
+ }, {
1654
+ default: P(() => [T(j(h("save-rule", "保存规则")), 1)]),
1655
+ _: 1
1656
+ }, 8, ["disabled", "loading"])]),
1657
+ key: "0"
1658
+ } : void 0]), 1032, [
1659
+ "open",
1660
+ "title",
1661
+ "subtitle"
1662
+ ])) : S("v-if", !0)
1663
+ ]));
1664
+ }
1665
+ }), Dn = /* @__PURE__ */ e({ default: () => On }), On = /*#__PURE__*/ xe(En, [["__scopeId", "data-v-a792aff4"]]);
1666
+ //#endregion
1667
+ export { bt as i, Dn as n, jt as r, On as t };