@ximatai/muyun-web-app 0.26.13 → 0.26.15

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 (186) hide show
  1. package/dist/{BusinessActivityLogView-UC4rH4Fn.js → BusinessActivityLogView-DVzrZW1X.js} +1 -1
  2. package/dist/BusinessLogListDrawer-D-R3wnWr.js +825 -0
  3. package/dist/{LoginAuditLogView-Cjrp8MKX.js → LoginAuditLogView-BP1eaEPw.js} +1 -1
  4. package/dist/{ModuleActionManagementView-Dkb35QXc.js → ModuleActionManagementView-D17iKVQv.js} +214 -196
  5. package/dist/{ModuleGovernanceView-Dx43QvGf.js → ModuleGovernanceView-LkWCtops.js} +13509 -8472
  6. package/dist/{RequestErrorLogView-WnGvMWiF.js → RequestErrorLogView-LzN94-Tk.js} +1 -1
  7. package/dist/{RoleDetailWorkspaceView-DPDb_QOn.js → RoleDetailWorkspaceView-BXA-bzFu.js} +173 -164
  8. package/dist/{RuntimeLogView-BRl4ZDkU.js → RuntimeLogView-DUpu2q2w.js} +48 -81
  9. package/dist/index.css +1 -1
  10. package/dist/index.js +562 -497
  11. package/dist/moduleGovernanceWorkspaceView-COjWtJMr.js +639 -0
  12. package/dist/{platform-components-1cvOeHmo.js → platform-components-Hs3DrTqE.js} +5260 -3344
  13. package/dist/platform-workbench-C-kE-Yqq.js +19755 -0
  14. package/dist/{http-B0TC0pJB.js → sse-Q1wa3p_k.js} +34 -4
  15. package/dist/types/app/CurrentUserProfileDialog.vue.d.ts +1 -1
  16. package/dist/types/app/useWorkbenchMenuRefresh.d.ts +4 -0
  17. package/dist/types/app/workbenchMenuRefresh.d.ts +14 -0
  18. package/dist/types/consumer/AppWorkbenchShell.vue.d.ts +4 -2
  19. package/dist/types/dynamic-page-runtime/ManagedDetailRelationInlineSurface.vue.d.ts +3 -3
  20. package/dist/types/dynamic-page-runtime/ModuleDataExchangeSurface.vue.d.ts +17 -0
  21. package/dist/types/dynamic-page-runtime/ModulePageBusinessSession.d.ts +712 -22
  22. package/dist/types/dynamic-page-runtime/ModulePageDetailRelations.vue.d.ts +3 -2
  23. package/dist/types/dynamic-page-runtime/ModulePageHostRuntime.vue.d.ts +782 -60
  24. package/dist/types/dynamic-page-runtime/ModulePageListExpansionSurface.vue.d.ts +1 -0
  25. package/dist/types/dynamic-page-runtime/ModulePageListRelationExpansion.vue.d.ts +1 -0
  26. package/dist/types/dynamic-page-runtime/ModulePageListRelationExpansions.vue.d.ts +1 -0
  27. package/dist/types/dynamic-page-runtime/ModulePageRecordContent.vue.d.ts +5 -2
  28. package/dist/types/dynamic-page-runtime/ModuleRecordDetailActions.vue.d.ts +6 -0
  29. package/dist/types/dynamic-page-runtime/PageNavigatorExplorer.vue.d.ts +9 -7
  30. package/dist/types/dynamic-page-runtime/RecordFormSurface.vue.d.ts +2 -0
  31. package/dist/types/dynamic-page-runtime/assistantBusinessScope.d.ts +3 -0
  32. package/dist/types/dynamic-page-runtime/assistantQueryCapabilities.d.ts +34 -0
  33. package/dist/types/dynamic-page-runtime/assistantRecordEditorPolicy.d.ts +6 -0
  34. package/dist/types/dynamic-page-runtime/composables/useModulePageFormContributionRuntime.d.ts +2 -0
  35. package/dist/types/dynamic-page-runtime/composables/useModulePageListSession.d.ts +1 -0
  36. package/dist/types/dynamic-page-runtime/composables/useNavigatorRuntime.d.ts +94 -4
  37. package/dist/types/dynamic-page-runtime/composables/useRecordEditingSession.d.ts +2 -0
  38. package/dist/types/dynamic-page-runtime/formComputeCoordinator.d.ts +2 -0
  39. package/dist/types/dynamic-page-runtime/index.d.ts +1 -0
  40. package/dist/types/dynamic-page-runtime/modulePageAssistantScope.d.ts +20 -0
  41. package/dist/types/dynamic-page-runtime/modulePageAssistantSurface.d.ts +6 -0
  42. package/dist/types/dynamic-page-runtime/recordCreationReadiness.d.ts +17 -0
  43. package/dist/types/dynamic-page-runtime/recordDisplayProjection.d.ts +59 -0
  44. package/dist/types/dynamic-page-runtime/recordFormAssistantCapabilities.d.ts +59 -0
  45. package/dist/types/dynamic-page-runtime/recordFormDraftAccess.d.ts +33 -0
  46. package/dist/types/dynamic-page-runtime/recordMutationPayload.d.ts +2 -2
  47. package/dist/types/dynamic-page-runtime/recordReferenceDisplay.d.ts +8 -0
  48. package/dist/types/dynamic-page-runtime/recordSaveRecovery.d.ts +12 -0
  49. package/dist/types/dynamic-page-runtime/relationDraftAssistantCapabilities.d.ts +9 -0
  50. package/dist/types/dynamic-page-runtime/relationDraftController.d.ts +23 -0
  51. package/dist/types/dynamic-page-runtime/relationFormComputeCoordinator.d.ts +1 -0
  52. package/dist/types/dynamic-page-runtime/useModulePageSession.d.ts +404 -12
  53. package/dist/types/dynamic-page-runtime/useTenantScopeController.d.ts +1 -0
  54. package/dist/types/formula/FormulaRuntime.d.ts +3 -1
  55. package/dist/types/platform-admin-runtime/backendHttp.d.ts +5 -1
  56. package/dist/types/platform-admin-runtime/module-menu/ModuleMenuEditor.vue.d.ts +17 -0
  57. package/dist/types/platform-admin-runtime/module-menu/ModuleMenuGovernanceSurface.vue.d.ts +6 -0
  58. package/dist/types/platform-admin-runtime/module-menu/moduleMenuClient.d.ts +6 -2
  59. package/dist/types/platform-admin-runtime/module-menu/moduleMenuReceiptStore.d.ts +5 -0
  60. package/dist/types/platform-admin-runtime/module-menu/moduleMenuSession.d.ts +61 -0
  61. package/dist/types/platform-admin-runtime/module-menu/moduleMenuWorkspace.d.ts +180 -0
  62. package/dist/types/platform-admin-runtime/workspaceViewSessions.d.ts +1 -1
  63. package/dist/types/platform-components/CrudRecordListExplorer.vue.d.ts +11 -7
  64. package/dist/types/platform-components/DictionaryPicker.vue.d.ts +2 -0
  65. package/dist/types/platform-components/FileTransferUploader.vue.d.ts +1 -1
  66. package/dist/types/platform-components/ManagementPanelHeader.vue.d.ts +6 -4
  67. package/dist/types/platform-components/ManagementTabs.vue.d.ts +20 -0
  68. package/dist/types/platform-components/ObjectPickerInput.vue.d.ts +2 -0
  69. package/dist/types/platform-components/QueryValueEditor.vue.d.ts +1 -1
  70. package/dist/types/platform-components/RecordDetailFields.vue.d.ts +1 -1
  71. package/dist/types/platform-components/RecordExplorerPanel.vue.d.ts +15 -9
  72. package/dist/types/platform-components/RecordExplorerTools.vue.d.ts +27 -0
  73. package/dist/types/platform-components/RecordFormFields.vue.d.ts +5 -1
  74. package/dist/types/platform-components/RecordModeDrawer.vue.d.ts +2 -2
  75. package/dist/types/platform-components/RecordMultiPicker.vue.d.ts +2 -0
  76. package/dist/types/platform-components/RecordPicker.vue.d.ts +2 -0
  77. package/dist/types/platform-components/RecordQueryListCell.vue.d.ts +1 -1
  78. package/dist/types/platform-components/RecordQueryListPanel.vue.d.ts +9 -1
  79. package/dist/types/platform-components/RecordQueryListSurface.vue.d.ts +1 -1
  80. package/dist/types/platform-components/RecordRelationTabs.vue.d.ts +1 -0
  81. package/dist/types/platform-components/ReferencePicker.vue.d.ts +2 -0
  82. package/dist/types/platform-components/StaticManagementLayout.vue.d.ts +2 -0
  83. package/dist/types/platform-components/TreeRecordExplorer.vue.d.ts +5 -2
  84. package/dist/types/platform-components/index.d.ts +9 -1
  85. package/dist/types/platform-components/optionFieldOptionCache.d.ts +1 -1
  86. package/dist/types/platform-components/queryNumericValue.d.ts +3 -0
  87. package/dist/types/platform-components/querySettlementController.d.ts +5 -0
  88. package/dist/types/platform-components/recordDetailFieldModel.d.ts +2 -0
  89. package/dist/types/platform-components/recordFormFieldModel.d.ts +22 -0
  90. package/dist/types/platform-components/recordQueryListColumnModel.d.ts +8 -0
  91. package/dist/types/platform-components/recordQueryListQueryController.d.ts +53 -0
  92. package/dist/types/platform-components/recordQueryListStandardQuery.d.ts +3 -0
  93. package/dist/types/platform-components/recordTreeQueryController.d.ts +18 -0
  94. package/dist/types/platform-components/recycleBinState.d.ts +17 -0
  95. package/dist/types/platform-components/referencePickerModel.d.ts +3 -0
  96. package/dist/types/platform-workbench/AssistantMarkdownContent.vue.d.ts +6 -0
  97. package/dist/types/platform-workbench/AssistantSelectionCard.vue.d.ts +15 -0
  98. package/dist/types/platform-workbench/ConstructionPlanCard.vue.d.ts +8 -0
  99. package/dist/types/platform-workbench/Workbench.vue.d.ts +12 -2
  100. package/dist/types/platform-workbench/WorkbenchAssistantPanel.vue.d.ts +18 -0
  101. package/dist/types/platform-workbench/assistantMarkdown.d.ts +1 -0
  102. package/dist/types/platform-workbench/configurationCollaboration.d.ts +23 -0
  103. package/dist/types/platform-workbench/constructionDelivery.d.ts +3 -0
  104. package/dist/types/platform-workbench/constructionFields.d.ts +5 -0
  105. package/dist/types/platform-workbench/constructionInitialization.d.ts +4 -0
  106. package/dist/types/platform-workbench/constructionPlanGuard.d.ts +21 -0
  107. package/dist/types/platform-workbench/constructionPlanSession.d.ts +95 -0
  108. package/dist/types/platform-workbench/constructionReferenceDiscovery.d.ts +3 -0
  109. package/dist/types/platform-workbench/index.d.ts +1 -0
  110. package/dist/types/platform-workbench/useAssistantConversation.d.ts +360 -0
  111. package/dist/types/platform-workbench/useAssistantConversationArchive.d.ts +47 -0
  112. package/dist/types/platform-workbench/workbenchAssistantCapabilities.d.ts +22 -0
  113. package/dist/types/views/BusinessLogRetentionControl.vue.d.ts +7 -0
  114. package/dist/types/views/MetadataSourceTree.vue.d.ts +7 -3
  115. package/dist/types/views/ModuleRuntimeActivationStatus.vue.d.ts +11 -0
  116. package/dist/types/views/PageCompositionDescriptorPreview.vue.d.ts +8 -8
  117. package/dist/types/views/PageCompositionEditor.vue.d.ts +10 -0
  118. package/dist/types/views/PageCompositionTree.vue.d.ts +19 -13
  119. package/dist/types/views/businessLogClient.d.ts +3 -0
  120. package/dist/types/views/businessLogRetentionClient.d.ts +25 -0
  121. package/dist/types/views/businessRuleAssistantSurface.d.ts +7 -0
  122. package/dist/types/views/businessRuleEditor.d.ts +22 -0
  123. package/dist/types/views/businessRuleGovernance.d.ts +7 -1
  124. package/dist/types/views/businessRuleSession.d.ts +63 -0
  125. package/dist/types/views/businessRuleWorkspace.d.ts +144 -0
  126. package/dist/types/views/configurationEditorNavigation.d.ts +2 -0
  127. package/dist/types/views/metadataChangeSetSubmission.d.ts +10 -0
  128. package/dist/types/views/metadataEditorSession.d.ts +652 -0
  129. package/dist/types/views/metadataGovernanceAssistantSurface.d.ts +4 -0
  130. package/dist/types/views/metadataGovernanceEditor.d.ts +220 -0
  131. package/dist/types/views/metadataModelChangeSetClient.d.ts +36 -0
  132. package/dist/types/views/metadataModelEditSession.d.ts +26 -1
  133. package/dist/types/views/metadataNaming.d.ts +11 -1
  134. package/dist/types/views/metadataOrchestrationState.d.ts +22 -0
  135. package/dist/types/views/metadataWorkspace.d.ts +1316 -0
  136. package/dist/types/views/moduleGovernanceWorkspaceView.d.ts +1 -1
  137. package/dist/types/views/moduleRuntimeActivation.d.ts +11 -0
  138. package/dist/types/views/pageCompositionAssistantSurface.d.ts +27 -0
  139. package/dist/types/views/pageCompositionCandidate.d.ts +47 -0
  140. package/dist/types/views/pageCompositionComponents.d.ts +42 -0
  141. package/dist/types/views/pageCompositionDraftState.d.ts +277 -8
  142. package/dist/types/views/pageCompositionDragPayload.d.ts +7 -1
  143. package/dist/types/views/pageCompositionMode.d.ts +1 -1
  144. package/dist/types/views/pageCompositionPlacement.d.ts +6 -1
  145. package/dist/types/views/pageCompositionPublication.d.ts +37 -0
  146. package/dist/types/views/pageCompositionSession.d.ts +1341 -0
  147. package/dist/types/views/pageCompositionWorkspace.d.ts +2555 -0
  148. package/dist/types/views/roleAuthorizationWorkspaceSession.d.ts +1 -1
  149. package/dist/types/views/roleDetailWorkspaceSession.d.ts +1 -1
  150. package/dist/types/views/runtimeLogSse.d.ts +3 -13
  151. package/dist/types/views/usePageCompositionComponents.d.ts +68 -0
  152. package/dist/types/vue-ui-antdv/components/UiInput.vue.d.ts +1 -0
  153. package/dist/types/vue-ui-antdv/components/UiSearchInput.vue.d.ts +2 -0
  154. package/dist/types/vue-ui-antdv/components/UiSelect.vue.d.ts +2 -0
  155. package/dist/types/vue-ui-antdv/components/UiTextArea.vue.d.ts +4 -0
  156. package/dist/types/vue-ui-antdv/components/UiTreeSelect.vue.d.ts +2 -0
  157. package/dist/types/vue-ui-antdv/types.d.ts +4 -0
  158. package/dist/types/web-contracts/assistant.d.ts +87 -0
  159. package/dist/types/web-contracts/constructionPlan.d.ts +212 -0
  160. package/dist/types/web-contracts/index.d.ts +33 -0
  161. package/dist/types/web-contracts/operation.d.ts +33 -0
  162. package/dist/types/web-contracts/referenceTarget.d.ts +13 -0
  163. package/dist/types/web-core/assistantCapabilityCatalog.d.ts +22 -0
  164. package/dist/types/web-core/assistantCatalogPage.d.ts +12 -0
  165. package/dist/types/web-core/assistantConfirmation.d.ts +23 -0
  166. package/dist/types/web-core/assistantConversationClient.d.ts +42 -0
  167. package/dist/types/web-core/assistantRuntime.d.ts +123 -0
  168. package/dist/types/web-core/assistantSurface.d.ts +162 -0
  169. package/dist/types/web-core/assistantTurnClient.d.ts +16 -0
  170. package/dist/types/web-core/constructionPlanClient.d.ts +55 -0
  171. package/dist/types/web-core/errors.d.ts +2 -0
  172. package/dist/types/web-core/http.d.ts +1 -0
  173. package/dist/types/web-core/index.d.ts +12 -0
  174. package/dist/types/web-core/module/dataExchangeClient.d.ts +53 -0
  175. package/dist/types/web-core/module/index.d.ts +1 -0
  176. package/dist/types/web-core/module/staticModuleClient.d.ts +12 -2
  177. package/dist/types/web-core/operationConfirmation.d.ts +28 -0
  178. package/dist/types/web-core/operationErrors.d.ts +9 -0
  179. package/dist/types/web-core/operationReceipt.d.ts +10 -0
  180. package/dist/types/web-core/sse.d.ts +9 -0
  181. package/dist/types/web-core/uuid.d.ts +2 -0
  182. package/dist/{workspaceViews-CCg6V0pr.js → workspaceViews-CHsgLFwY.js} +783 -1189
  183. package/package.json +1 -1
  184. package/dist/BusinessLogListDrawer-BtaXVJKz.js +0 -564
  185. package/dist/moduleGovernanceWorkspaceView-4V_UW-Bt.js +0 -40
  186. package/dist/platform-workbench-Cu14Xd9d.js +0 -10299
@@ -2,6 +2,9 @@ import { type CompositionSkeleton, type PageCompositionActionPlacement } from '.
2
2
  import { type PageComposerFormItem, type PageComposerField, type PageComposerGroup, type PageComposerRelation, type PageQuerySummary } from './pageCompositionDraftState';
3
3
  import { type PageCompositionDragPayload } from './pageCompositionDragPayload';
4
4
  type __VLS_Props = {
5
+ layoutTitle?: string;
6
+ hideList?: boolean;
7
+ separateDetail?: boolean;
5
8
  skeleton?: CompositionSkeleton;
6
9
  explorerTitle?: string;
7
10
  searchableFieldIds?: string[];
@@ -32,7 +35,7 @@ type __VLS_Props = {
32
35
  selectedKey?: string;
33
36
  disabled?: boolean;
34
37
  };
35
- type ComposerNodeAction = 'configure' | 'remove' | 'add-group' | 'toggle-visibility';
38
+ type ComposerNodeAction = 'configure' | 'remove' | 'add-group' | 'toggle-visibility' | 'split-layout' | 'merge-layout';
36
39
  export type ComposerDropTarget = ({
37
40
  kind: 'explorer-title' | 'explorer-secondary' | 'quick-search';
38
41
  } | {
@@ -54,13 +57,6 @@ export type ComposerDropTarget = ({
54
57
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
55
58
  select: (key: string) => any;
56
59
  "double-click": (key: string) => any;
57
- "action-drop": (source: {
58
- actionCode: string;
59
- sourceAnchor?: PageCompositionActionPlacement["anchor"];
60
- }, target: {
61
- anchor: PageCompositionActionPlacement["anchor"];
62
- index: number;
63
- }) => any;
64
60
  "node-action": (action: ComposerNodeAction, key: string) => any;
65
61
  "reorder-list-field": (fieldId: string, targetIndex: number) => any;
66
62
  "reorder-form-field": (fieldId: string, targetIndex: number) => any;
@@ -72,16 +68,16 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {
72
68
  "reorder-relation-field": (relationId: string, fieldId: string, targetIndex: number) => any;
73
69
  "reorder-query-summary": (summaryKey: string, targetIndex: number) => any;
74
70
  "source-drop": (target: ComposerDropTarget, payload: PageCompositionDragPayload) => any;
75
- }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
76
- onSelect?: ((key: string) => any) | undefined;
77
- "onDouble-click"?: ((key: string) => any) | undefined;
78
- "onAction-drop"?: ((source: {
71
+ "action-drop": (source: {
79
72
  actionCode: string;
80
73
  sourceAnchor?: PageCompositionActionPlacement["anchor"];
81
74
  }, target: {
82
75
  anchor: PageCompositionActionPlacement["anchor"];
83
76
  index: number;
84
- }) => any) | undefined;
77
+ }) => any;
78
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
79
+ onSelect?: ((key: string) => any) | undefined;
80
+ "onDouble-click"?: ((key: string) => any) | undefined;
85
81
  "onNode-action"?: ((action: ComposerNodeAction, key: string) => any) | undefined;
86
82
  "onReorder-list-field"?: ((fieldId: string, targetIndex: number) => any) | undefined;
87
83
  "onReorder-form-field"?: ((fieldId: string, targetIndex: number) => any) | undefined;
@@ -93,10 +89,20 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {
93
89
  "onReorder-relation-field"?: ((relationId: string, fieldId: string, targetIndex: number) => any) | undefined;
94
90
  "onReorder-query-summary"?: ((summaryKey: string, targetIndex: number) => any) | undefined;
95
91
  "onSource-drop"?: ((target: ComposerDropTarget, payload: PageCompositionDragPayload) => any) | undefined;
92
+ "onAction-drop"?: ((source: {
93
+ actionCode: string;
94
+ sourceAnchor?: PageCompositionActionPlacement["anchor"];
95
+ }, target: {
96
+ anchor: PageCompositionActionPlacement["anchor"];
97
+ index: number;
98
+ }) => any) | undefined;
96
99
  }>, {
97
100
  disabled: boolean;
98
101
  selectedKey: string;
99
102
  editorMode: "fields" | "actions";
103
+ layoutTitle: string;
104
+ hideList: boolean;
105
+ separateDetail: boolean;
100
106
  formOrder: PageComposerFormItem[];
101
107
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
102
108
  declare const _default: typeof __VLS_export;
@@ -21,6 +21,9 @@ export interface BusinessLogEventView {
21
21
  operatorIdentity?: BusinessLogOperatorIdentity;
22
22
  moduleAlias?: string;
23
23
  actionCode?: string;
24
+ entityAlias?: string;
25
+ recordId?: string;
26
+ mutationSource?: string;
24
27
  outcome?: string;
25
28
  /** The authentication account, independent from the event's authenticated operator identity. */
26
29
  loginAccount?: string;
@@ -0,0 +1,25 @@
1
+ import type { HttpClient } from '../web-core/index';
2
+ export type BusinessLogEventType = 'LOGIN' | 'ACTION' | 'REQUEST_ERROR' | 'PAGE_ACCESS';
3
+ export interface BusinessLogRetentionPolicy {
4
+ eventType: BusinessLogEventType;
5
+ automaticCleanupEnabled: boolean;
6
+ retentionDays: number;
7
+ version: number;
8
+ updatedAt?: string;
9
+ updatedBy?: string;
10
+ }
11
+ export interface BusinessLogRetentionRunResult {
12
+ eventType: BusinessLogEventType;
13
+ retentionDays: number;
14
+ result: {
15
+ occurredBefore: string;
16
+ deletedCount: number;
17
+ executedBatches: number;
18
+ status: 'COMPLETE' | 'BATCH_LIMIT_REACHED' | 'ALREADY_RUNNING';
19
+ };
20
+ }
21
+ export declare function createBusinessLogRetentionClient(http: HttpClient): {
22
+ policies(): Promise<BusinessLogRetentionPolicy[]>;
23
+ update(policy: BusinessLogRetentionPolicy): Promise<BusinessLogRetentionPolicy>;
24
+ purge(eventType: BusinessLogEventType, retentionDays: number): Promise<BusinessLogRetentionRunResult>;
25
+ };
@@ -0,0 +1,7 @@
1
+ import { type AssistantCapability, type AssistantSurface, type AssistantTurnRequester } from '../web-core/index';
2
+ import type { BusinessRuleProposal } from './businessRuleGovernance';
3
+ import type { BusinessRuleTrialInput, BusinessRuleEditor as BusinessRuleAssistantAdapter } from './businessRuleEditor';
4
+ export type { BusinessRuleTrialInput, BusinessRuleEditor as BusinessRuleAssistantAdapter, } from './businessRuleEditor';
5
+ export declare function parseBusinessRuleProposal(input: unknown): BusinessRuleProposal;
6
+ export declare function parseBusinessRuleTrial(input: unknown): BusinessRuleTrialInput;
7
+ export declare function createBusinessRuleAssistantSurface(adapter: BusinessRuleAssistantAdapter, requestTurn: AssistantTurnRequester, contributed?: () => AssistantCapability[]): AssistantSurface;
@@ -0,0 +1,22 @@
1
+ import type { OperationProposal } from '../web-core/index';
2
+ import type { BusinessRuleProposal, BusinessRulePreview, BusinessRuleTrialResult } from './businessRuleGovernance';
3
+ export interface BusinessRuleTrialInput {
4
+ sampleValues: Record<string, unknown>;
5
+ sampleChildren: Record<string, Record<string, unknown>[]>;
6
+ }
7
+ export interface BusinessRuleEditor {
8
+ summary(): {
9
+ moduleAlias: string;
10
+ title?: string;
11
+ editable: boolean;
12
+ factsAvailable?: boolean;
13
+ hasUnappliedChanges?: boolean;
14
+ submissionStatus?: 'idle' | 'unknown' | 'current-read';
15
+ };
16
+ readCurrent?(signal?: AbortSignal, commit?: (accept: () => void) => void): Promise<void>;
17
+ catalog(section: string): unknown[];
18
+ revise(rule: BusinessRuleProposal): void;
19
+ preview(signal: AbortSignal): Promise<BusinessRulePreview>;
20
+ trial(input: BusinessRuleTrialInput, signal: AbortSignal): Promise<BusinessRuleTrialResult>;
21
+ prepareConfirmation(signal: AbortSignal): Promise<OperationProposal>;
22
+ }
@@ -1,4 +1,6 @@
1
1
  export type BusinessRuleKind = 'CALCULATION' | 'VALIDATION' | 'UI_CONTROL';
2
+ /** Save-validation behavior shared by manual editing and assistant rule inputs. */
3
+ export declare const businessRuleValidationHelp = "\u516C\u5F0F\u4E3A\u771F\u65F6\u5141\u8BB8\u4FDD\u5B58\uFF0C\u4E3A\u5047\u65F6\u963B\u6B62\u4FDD\u5B58\u5E76\u663E\u793A\u5931\u8D25\u63D0\u793A\uFF1B\u5F53\u524D\u7F16\u8F91\u5668\u4E0D\u652F\u6301\u53EA\u63D0\u9192\u800C\u4ECD\u5141\u8BB8\u4FDD\u5B58\u7684\u89C4\u5219\u3002";
2
4
  export interface BusinessRuleEditableField {
3
5
  fieldName: string;
4
6
  title: string;
@@ -70,7 +72,7 @@ export declare function formulaFieldUnusableReason(field: BusinessRuleReferenceF
70
72
  * cannot consume it. The server remains authoritative; this only keeps authoring feedback close
71
73
  * to the attempted insertion.
72
74
  */
73
- export declare function aggregateFieldInsertionReason(field: BusinessRuleReferenceField, expression: string, selectionStart: number): string | undefined;
75
+ export declare function aggregateFieldInsertionReason(field: BusinessRuleReferenceField, expression: string, selectionStart: number, childTargets?: readonly string[]): string | undefined;
74
76
  export interface UiControlTarget {
75
77
  elementKey: string;
76
78
  hide: boolean;
@@ -122,6 +124,8 @@ export interface BusinessRuleSnapshot {
122
124
  }>;
123
125
  /** Direct child fields, which may only appear within a child aggregation function. */
124
126
  aggregateFields?: BusinessRuleEditableField[];
127
+ /** Writable direct-child targets; never reference target fields. */
128
+ childFields?: BusinessRuleEditableField[];
125
129
  /** Additive portable function directory emitted by the server. */
126
130
  functions?: BusinessRuleFormulaCatalogEntry[];
127
131
  rules: BusinessRuleSnapshotRule[];
@@ -152,8 +156,10 @@ export interface BusinessRuleTrialResult {
152
156
  preview: BusinessRulePreview;
153
157
  values: Record<string, unknown>;
154
158
  changedFields: string[];
159
+ children?: Record<string, Record<string, unknown>[]>;
155
160
  errors: BusinessRuleIssue[];
156
161
  }
162
+ export declare function businessRuleTrialValue(result: Pick<BusinessRuleTrialResult, 'values' | 'children'>, field: string): unknown;
157
163
  export interface BusinessRuleApplyResult {
158
164
  snapshot: BusinessRuleSnapshot;
159
165
  preview: BusinessRulePreview;
@@ -0,0 +1,63 @@
1
+ import { OperationUsageError, type HttpClient } from '../web-core/index';
2
+ import { type BusinessRuleSnapshot, type UiControlSnapshot, type BusinessRuleProposal, type BusinessRuleTrialResult, type BusinessRuleIssue } from './businessRuleGovernance';
3
+ import type { BusinessRuleEditor, BusinessRuleTrialInput } from './businessRuleEditor';
4
+ export declare class BusinessRulePrecheckError extends OperationUsageError {
5
+ readonly issues: BusinessRuleIssue[];
6
+ constructor(issues: BusinessRuleIssue[]);
7
+ }
8
+ /** One in-memory candidate shared by manual editing and conversation; server baselines remain authoritative. */
9
+ export declare function createBusinessRuleSession(http: HttpClient, moduleAlias: string, ownerValid?: () => boolean, confirmationScope?: () => boolean): {
10
+ moduleAlias: string;
11
+ dispose(): void;
12
+ invalidateConfirmations: () => number;
13
+ snapshot: import("vue").Ref<BusinessRuleSnapshot | undefined, BusinessRuleSnapshot | undefined>;
14
+ ready: import("vue").ComputedRef<boolean>;
15
+ ui: import("vue").Ref<UiControlSnapshot | undefined, UiControlSnapshot | undefined>;
16
+ rules: import("vue").Ref<{
17
+ formKey?: string | undefined;
18
+ targets?: {
19
+ elementKey: string;
20
+ hide: boolean;
21
+ readOnly: boolean;
22
+ }[] | undefined;
23
+ code: string;
24
+ kind: import("./businessRuleGovernance").BusinessRuleKind;
25
+ targetField?: string | undefined;
26
+ expression: string;
27
+ enabled: boolean;
28
+ messageTemplate?: string | undefined;
29
+ }[], BusinessRuleProposal[] | {
30
+ formKey?: string | undefined;
31
+ targets?: {
32
+ elementKey: string;
33
+ hide: boolean;
34
+ readOnly: boolean;
35
+ }[] | undefined;
36
+ code: string;
37
+ kind: import("./businessRuleGovernance").BusinessRuleKind;
38
+ targetField?: string | undefined;
39
+ expression: string;
40
+ enabled: boolean;
41
+ messageTemplate?: string | undefined;
42
+ }[]>;
43
+ loading: import("vue").Ref<boolean, boolean>;
44
+ loadFailed: import("vue").Ref<boolean, boolean>;
45
+ committedNeedsReload: import("vue").Ref<boolean, boolean>;
46
+ submissionStatus: import("vue").Ref<"unknown" | "idle" | "current-read", "unknown" | "idle" | "current-read">;
47
+ applying: import("vue").Ref<boolean, boolean>;
48
+ tenantId: import("vue").Ref<string, string>;
49
+ revision: import("vue").Ref<number, number>;
50
+ dirty: import("vue").ComputedRef<boolean>;
51
+ editing: import("vue").Ref<boolean, boolean>;
52
+ adapter: BusinessRuleEditor;
53
+ load: (force?: boolean, commit?: (accept: () => void) => void) => Promise<void>;
54
+ replace: (next: BusinessRuleProposal[]) => void;
55
+ discard: () => void;
56
+ apply: (stillCurrent?: () => boolean) => Promise<{
57
+ synchronized: boolean;
58
+ } | undefined>;
59
+ readCurrent: (signal?: AbortSignal, commit?: (accept: () => void) => void) => Promise<void>;
60
+ trial: (input: BusinessRuleTrialInput, signal?: AbortSignal) => Promise<BusinessRuleTrialResult>;
61
+ setEditing(owner: symbol, value: boolean): void;
62
+ };
63
+ export type BusinessRuleSession = ReturnType<typeof createBusinessRuleSession>;
@@ -0,0 +1,144 @@
1
+ import { type AssistantInvocationToken, type AssistantCapability, type AssistantConfigurationEditor, type HttpClient } from '../web-core/index';
2
+ import { type BusinessRuleSession } from './businessRuleSession';
3
+ export declare function createBusinessRuleWorkspace(http: HttpClient, identity: () => string, enabled: () => boolean, openRules?: (moduleAlias: string) => void, onFocus?: () => void): {
4
+ session: (moduleAlias: string) => {
5
+ moduleAlias: string;
6
+ dispose(): void;
7
+ invalidateConfirmations: () => number;
8
+ snapshot: import("vue").Ref<import("./businessRuleGovernance").BusinessRuleSnapshot | undefined, import("./businessRuleGovernance").BusinessRuleSnapshot | undefined>;
9
+ ready: import("vue").ComputedRef<boolean>;
10
+ ui: import("vue").Ref<import("./businessRuleGovernance").UiControlSnapshot | undefined, import("./businessRuleGovernance").UiControlSnapshot | undefined>;
11
+ rules: import("vue").Ref<{
12
+ formKey?: string | undefined;
13
+ targets?: {
14
+ elementKey: string;
15
+ hide: boolean;
16
+ readOnly: boolean;
17
+ }[] | undefined;
18
+ code: string;
19
+ kind: import("./businessRuleGovernance").BusinessRuleKind;
20
+ targetField?: string | undefined;
21
+ expression: string;
22
+ enabled: boolean;
23
+ messageTemplate?: string | undefined;
24
+ }[], import("./businessRuleGovernance").BusinessRuleProposal[] | {
25
+ formKey?: string | undefined;
26
+ targets?: {
27
+ elementKey: string;
28
+ hide: boolean;
29
+ readOnly: boolean;
30
+ }[] | undefined;
31
+ code: string;
32
+ kind: import("./businessRuleGovernance").BusinessRuleKind;
33
+ targetField?: string | undefined;
34
+ expression: string;
35
+ enabled: boolean;
36
+ messageTemplate?: string | undefined;
37
+ }[]>;
38
+ loading: import("vue").Ref<boolean, boolean>;
39
+ loadFailed: import("vue").Ref<boolean, boolean>;
40
+ committedNeedsReload: import("vue").Ref<boolean, boolean>;
41
+ submissionStatus: import("vue").Ref<"unknown" | "idle" | "current-read", "unknown" | "idle" | "current-read">;
42
+ applying: import("vue").Ref<boolean, boolean>;
43
+ tenantId: import("vue").Ref<string, string>;
44
+ revision: import("vue").Ref<number, number>;
45
+ dirty: import("vue").ComputedRef<boolean>;
46
+ editing: import("vue").Ref<boolean, boolean>;
47
+ adapter: import("./businessRuleEditor").BusinessRuleEditor;
48
+ load: (force?: boolean, commit?: (accept: () => void) => void) => Promise<void>;
49
+ replace: (next: import("./businessRuleGovernance").BusinessRuleProposal[]) => void;
50
+ discard: () => void;
51
+ apply: (stillCurrent?: () => boolean) => Promise<{
52
+ synchronized: boolean;
53
+ } | undefined>;
54
+ readCurrent: (signal?: AbortSignal, commit?: (accept: () => void) => void) => Promise<void>;
55
+ trial: (input: import("./businessRuleEditor").BusinessRuleTrialInput, signal?: AbortSignal) => Promise<import("./businessRuleGovernance").BusinessRuleTrialResult>;
56
+ setEditing(owner: symbol, value: boolean): void;
57
+ };
58
+ focus: (value: BusinessRuleSession) => void;
59
+ dispose(): void;
60
+ showEditor(value: BusinessRuleSession): void;
61
+ hideEditor(value: BusinessRuleSession): void;
62
+ editor(): AssistantConfigurationEditor | undefined;
63
+ clearFocus(): void;
64
+ current(): {
65
+ revision: string;
66
+ facts: {
67
+ ruleConfiguration: import("../web-contracts").AssistantSurfaceContext | undefined;
68
+ draftLifetime: string;
69
+ };
70
+ };
71
+ capabilities(settleNavigation?: (signal?: AbortSignal) => Promise<void | AssistantInvocationToken>): AssistantCapability[];
72
+ };
73
+ export type BusinessRuleWorkspace = ReturnType<typeof createBusinessRuleWorkspace>;
74
+ export declare function provideBusinessRuleWorkspace(workspace: BusinessRuleWorkspace): void;
75
+ export declare function useBusinessRuleWorkspace(): {
76
+ session: (moduleAlias: string) => {
77
+ moduleAlias: string;
78
+ dispose(): void;
79
+ invalidateConfirmations: () => number;
80
+ snapshot: import("vue").Ref<import("./businessRuleGovernance").BusinessRuleSnapshot | undefined, import("./businessRuleGovernance").BusinessRuleSnapshot | undefined>;
81
+ ready: import("vue").ComputedRef<boolean>;
82
+ ui: import("vue").Ref<import("./businessRuleGovernance").UiControlSnapshot | undefined, import("./businessRuleGovernance").UiControlSnapshot | undefined>;
83
+ rules: import("vue").Ref<{
84
+ formKey?: string | undefined;
85
+ targets?: {
86
+ elementKey: string;
87
+ hide: boolean;
88
+ readOnly: boolean;
89
+ }[] | undefined;
90
+ code: string;
91
+ kind: import("./businessRuleGovernance").BusinessRuleKind;
92
+ targetField?: string | undefined;
93
+ expression: string;
94
+ enabled: boolean;
95
+ messageTemplate?: string | undefined;
96
+ }[], import("./businessRuleGovernance").BusinessRuleProposal[] | {
97
+ formKey?: string | undefined;
98
+ targets?: {
99
+ elementKey: string;
100
+ hide: boolean;
101
+ readOnly: boolean;
102
+ }[] | undefined;
103
+ code: string;
104
+ kind: import("./businessRuleGovernance").BusinessRuleKind;
105
+ targetField?: string | undefined;
106
+ expression: string;
107
+ enabled: boolean;
108
+ messageTemplate?: string | undefined;
109
+ }[]>;
110
+ loading: import("vue").Ref<boolean, boolean>;
111
+ loadFailed: import("vue").Ref<boolean, boolean>;
112
+ committedNeedsReload: import("vue").Ref<boolean, boolean>;
113
+ submissionStatus: import("vue").Ref<"unknown" | "idle" | "current-read", "unknown" | "idle" | "current-read">;
114
+ applying: import("vue").Ref<boolean, boolean>;
115
+ tenantId: import("vue").Ref<string, string>;
116
+ revision: import("vue").Ref<number, number>;
117
+ dirty: import("vue").ComputedRef<boolean>;
118
+ editing: import("vue").Ref<boolean, boolean>;
119
+ adapter: import("./businessRuleEditor").BusinessRuleEditor;
120
+ load: (force?: boolean, commit?: (accept: () => void) => void) => Promise<void>;
121
+ replace: (next: import("./businessRuleGovernance").BusinessRuleProposal[]) => void;
122
+ discard: () => void;
123
+ apply: (stillCurrent?: () => boolean) => Promise<{
124
+ synchronized: boolean;
125
+ } | undefined>;
126
+ readCurrent: (signal?: AbortSignal, commit?: (accept: () => void) => void) => Promise<void>;
127
+ trial: (input: import("./businessRuleEditor").BusinessRuleTrialInput, signal?: AbortSignal) => Promise<import("./businessRuleGovernance").BusinessRuleTrialResult>;
128
+ setEditing(owner: symbol, value: boolean): void;
129
+ };
130
+ focus: (value: BusinessRuleSession) => void;
131
+ dispose(): void;
132
+ showEditor(value: BusinessRuleSession): void;
133
+ hideEditor(value: BusinessRuleSession): void;
134
+ editor(): AssistantConfigurationEditor | undefined;
135
+ clearFocus(): void;
136
+ current(): {
137
+ revision: string;
138
+ facts: {
139
+ ruleConfiguration: import("../web-contracts").AssistantSurfaceContext | undefined;
140
+ draftLifetime: string;
141
+ };
142
+ };
143
+ capabilities(settleNavigation?: (signal?: AbortSignal) => Promise<void | AssistantInvocationToken>): AssistantCapability[];
144
+ } | undefined;
@@ -0,0 +1,2 @@
1
+ /** Lazy page loading may finish after the router commits; resume only once the shared editor is mounted. */
2
+ export declare function waitForConfigurationEditor(visible: () => boolean, signal?: AbortSignal): Promise<void>;
@@ -0,0 +1,10 @@
1
+ import { type HttpClient } from '../web-core/index';
2
+ import type { MetadataModelChangeSetProposal } from './metadataModelEditSession';
3
+ export declare class MetadataChangeSetPrecheckError extends Error {
4
+ }
5
+ /** Both page and conversation confirm the same immutable, server-validated change set. */
6
+ export declare function prepareMetadataChangeSetSubmission(http: HttpClient, moduleAlias: string, candidate: MetadataModelChangeSetProposal, isCurrent: () => boolean, signal?: AbortSignal, fieldSpecTitles?: Readonly<Record<string, string>>, capabilityTitles?: Readonly<Record<string, string>>): Promise<{
7
+ lines: string[];
8
+ details: string[];
9
+ apply(): Promise<void>;
10
+ }>;