@ximatai/muyun-web-app 0.26.11 → 0.26.12
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.
- package/dist/ModuleActionManagementView-BHEooZ5L.js +672 -0
- package/dist/ModuleGovernanceView-DB3TWlMy.js +28521 -0
- package/dist/{RoleDetailWorkspaceView-UOm1ejGH.js → RoleDetailWorkspaceView-D6X7pAj5.js} +467 -457
- package/dist/index.css +1 -1
- package/dist/index.js +1942 -359
- package/dist/moduleGovernanceWorkspaceView-C5pqJOEJ.js +40 -0
- package/dist/platform-workbench-DJj42YQP.js +22911 -0
- package/dist/rolldown-runtime-DPVXH0ON.js +17 -0
- package/dist/types/app/CurrentUserProfileDialog.vue.d.ts +0 -2
- package/dist/types/app/LoginView.vue.d.ts +1 -1
- package/dist/types/app/workbenchRouteSync.d.ts +10 -1
- package/dist/types/app/workbenchSessionTabs.d.ts +22 -0
- package/dist/types/app/workbenchStartup.d.ts +7 -0
- package/dist/types/consumer/AppWorkbenchShell.vue.d.ts +4 -1
- package/dist/types/consumer/index.d.ts +1 -0
- package/dist/types/dynamic-page-runtime/ModulePageDetailRelations.vue.d.ts +1 -1
- package/dist/types/dynamic-page-runtime/ModulePageHost.vue.d.ts +12 -1
- package/dist/types/dynamic-page-runtime/ModuleRecordDetailActions.vue.d.ts +17 -0
- package/dist/types/dynamic-page-runtime/NavigatorPanelActions.vue.d.ts +22 -0
- package/dist/types/dynamic-page-runtime/PageNavigatorExplorer.vue.d.ts +11 -11
- package/dist/types/dynamic-page-runtime/childAggregateContext.d.ts +11 -0
- package/dist/types/dynamic-page-runtime/composables/useNavigatorRuntime.d.ts +80 -26
- package/dist/types/dynamic-page-runtime/composables/useRecordEditingSession.d.ts +1 -1
- package/dist/types/dynamic-page-runtime/formActionResult.d.ts +5 -0
- package/dist/types/dynamic-page-runtime/formComputeCoordinator.d.ts +7 -4
- package/dist/types/dynamic-page-runtime/formValidationCoordinator.d.ts +17 -0
- package/dist/types/dynamic-page-runtime/index.d.ts +1 -1
- package/dist/types/dynamic-page-runtime/modulePageEnhancements.d.ts +6 -0
- package/dist/types/dynamic-page-runtime/pageActionInvocation.d.ts +7 -0
- package/dist/types/dynamic-page-runtime/pageActionPlacement.d.ts +14 -0
- package/dist/types/dynamic-page-runtime/recordMutationPayload.d.ts +3 -0
- package/dist/types/formula/FormulaRuntime.d.ts +6 -0
- package/dist/types/platform-admin-runtime/module-menu/ModuleMenuDrawer.vue.d.ts +7 -0
- package/dist/types/platform-admin-runtime/module-menu/ModuleMenuEntriesSection.vue.d.ts +7 -0
- package/dist/types/platform-admin-runtime/module-menu/moduleMenuClient.d.ts +16 -0
- package/dist/types/platform-admin-runtime/platformModulePageEnhancement.d.ts +2 -0
- package/dist/types/platform-components/AdaptiveHeaderActionBar.vue.d.ts +24 -0
- package/dist/types/platform-components/BusinessNotificationPanel.vue.d.ts +15 -1
- package/dist/types/platform-components/CrudRecordListExplorer.vue.d.ts +8 -3
- package/dist/types/platform-components/DetailRelationListPanel.vue.d.ts +1 -1
- package/dist/types/platform-components/FormulaExpressionEditor.vue.d.ts +54 -0
- package/dist/types/platform-components/ManagementExplorerColumn.vue.d.ts +15 -3
- package/dist/types/platform-components/ManagementPanelHeader.vue.d.ts +5 -3
- package/dist/types/platform-components/ManagementWorkspace.vue.d.ts +11 -0
- package/dist/types/platform-components/ModuleActionButton.vue.d.ts +3 -3
- package/dist/types/platform-components/QueryGroupedSummary.vue.d.ts +21 -0
- package/dist/types/platform-components/RecordDetailExtensionSection.vue.d.ts +2 -0
- package/dist/types/platform-components/RecordDetailFields.vue.d.ts +41 -2
- package/dist/types/platform-components/RecordDetailLayout.vue.d.ts +4 -1
- package/dist/types/platform-components/RecordDetailPanel.vue.d.ts +2 -0
- package/dist/types/platform-components/RecordExplorerCreateButton.vue.d.ts +16 -0
- package/dist/types/platform-components/RecordExplorerPanel.vue.d.ts +16 -5
- package/dist/types/platform-components/RecordFieldLabel.vue.d.ts +16 -0
- package/dist/types/platform-components/RecordFormFields.vue.d.ts +21 -2
- package/dist/types/platform-components/RecordFormGrid.vue.d.ts +24 -0
- package/dist/types/platform-components/RecordListExplorer.vue.d.ts +23 -1
- package/dist/types/platform-components/RecordMultiPicker.vue.d.ts +1 -1
- package/dist/types/platform-components/RecordPanelButton.vue.d.ts +9 -3
- package/dist/types/platform-components/RecordPermissionDialog.vue.d.ts +15 -0
- package/dist/types/platform-components/RecordPicker.vue.d.ts +1 -1
- package/dist/types/platform-components/RecordQueryEnumFilter.vue.d.ts +17 -0
- package/dist/types/platform-components/RecordQueryListCell.vue.d.ts +12 -0
- package/dist/types/platform-components/RecordQueryListPanel.vue.d.ts +104 -61
- package/dist/types/platform-components/RecordQueryListSurface.vue.d.ts +124 -0
- package/dist/types/platform-components/RecordRelationTable.vue.d.ts +62 -0
- package/dist/types/platform-components/RecordRelationValue.vue.d.ts +9 -0
- package/dist/types/platform-components/RecordStatusSwitch.vue.d.ts +3 -3
- package/dist/types/platform-components/StaticManagementLayout.vue.d.ts +2 -0
- package/dist/types/platform-components/TreeRecordExplorer.vue.d.ts +14 -3
- package/dist/types/platform-components/adaptiveHeaderActionLayout.d.ts +22 -0
- package/dist/types/platform-components/formulaExpressionTokens.d.ts +18 -0
- package/dist/types/platform-components/index.d.ts +20 -1
- package/dist/types/platform-components/managementExplorerContext.d.ts +11 -0
- package/dist/types/platform-components/managementWorkspaceContext.d.ts +20 -0
- package/dist/types/platform-components/managementWorkspaceLayout.d.ts +14 -0
- package/dist/types/platform-components/optionFieldOptionCache.d.ts +1 -1
- package/dist/types/platform-components/recordActionBarModel.d.ts +3 -0
- package/dist/types/platform-components/recordQueryListColumnModel.d.ts +42 -0
- package/dist/types/platform-components/selectionRefresh.d.ts +9 -0
- package/dist/types/platform-components/sortPartitionKey.d.ts +5 -0
- package/dist/types/platform-workbench/index.d.ts +2 -0
- package/dist/types/platform-workbench/useWorkspaceViewUnsavedState.d.ts +5 -0
- package/dist/types/platform-workbench/workbenchNavigation.d.ts +5 -1
- package/dist/types/platform-workbench/workspaceViewContract.d.ts +5 -0
- package/dist/types/platform-workbench/workspaceViewHost.d.ts +5 -0
- package/dist/types/platform-workbench/workspaceViewNavigation.d.ts +9 -0
- package/dist/types/platform-workbench/workspaceViewUnsavedState.d.ts +3 -0
- package/dist/types/views/BusinessRuleGovernanceSurface.vue.d.ts +10 -0
- package/dist/types/views/MetadataGovernanceSurface.vue.d.ts +8 -0
- package/dist/types/views/MetadataSourceTree.vue.d.ts +44 -0
- package/dist/types/views/ModuleBusinessPreview.vue.d.ts +7 -0
- package/dist/types/views/ModuleExperienceProfileOverview.vue.d.ts +7 -0
- package/dist/types/views/ModuleGovernanceView.vue.d.ts +9 -0
- package/dist/types/views/PageCompositionDescriptorPreview.vue.d.ts +54 -0
- package/dist/types/views/PageCompositionTree.vue.d.ts +103 -0
- package/dist/types/views/PageCompositionWorkspace.vue.d.ts +7 -0
- package/dist/types/views/PageQuerySummaryEditor.vue.d.ts +48 -0
- package/dist/types/views/businessRuleGovernance.d.ts +201 -0
- package/dist/types/views/metadataModelEditSession.d.ts +75 -0
- package/dist/types/views/metadataModelTree.d.ts +40 -0
- package/dist/types/views/metadataNaming.d.ts +7 -0
- package/dist/types/views/metadataOrchestrationState.d.ts +161 -6
- package/dist/types/views/metadataSourceTree.d.ts +10 -0
- package/dist/types/views/moduleGovernanceWorkspaceView.d.ts +9 -0
- package/dist/types/views/pageCompositionDraftState.d.ts +375 -0
- package/dist/types/views/pageCompositionDragPayload.d.ts +26 -0
- package/dist/types/views/pageCompositionMode.d.ts +86 -0
- package/dist/types/views/pageCompositionPlacement.d.ts +48 -0
- package/dist/types/views/pageCompositionTransport.d.ts +9 -0
- package/dist/types/views/usePageCompositionActionPreviewDrag.d.ts +41 -0
- package/dist/types/views/usePageCompositionPreviewDrag.d.ts +48 -0
- package/dist/types/vue-ui-antdv/components/UiActionButton.vue.d.ts +2 -2
- package/dist/types/vue-ui-antdv/components/UiButton.vue.d.ts +6 -3
- package/dist/types/vue-ui-antdv/components/UiDataTable.vue.d.ts +5 -2
- package/dist/types/vue-ui-antdv/components/UiIcon.vue.d.ts +1 -1
- package/dist/types/vue-ui-antdv/components/UiPopover.vue.d.ts +22 -0
- package/dist/types/vue-ui-antdv/components/UiRecordExplorerItem.vue.d.ts +1 -1
- package/dist/types/vue-ui-antdv/components/UiSelect.vue.d.ts +5 -1
- package/dist/types/vue-ui-antdv/components/UiSwitch.vue.d.ts +1 -1
- package/dist/types/vue-ui-antdv/components/UiTextArea.vue.d.ts +38 -1
- package/dist/types/vue-ui-antdv/components/UiTokenInput.vue.d.ts +62 -0
- package/dist/types/vue-ui-antdv/components/UiTree.vue.d.ts +63 -9
- package/dist/types/vue-ui-antdv/components/UiTreeSelect.vue.d.ts +1 -1
- package/dist/types/vue-ui-antdv/index.d.ts +6 -1
- package/dist/types/vue-ui-antdv/treeStructure.d.ts +18 -0
- package/dist/types/vue-ui-antdv/types.d.ts +64 -0
- package/dist/types/vue-ui-antdv/useTreeLoader.d.ts +21 -0
- package/dist/types/vue-ui-antdv/useTreeMotion.d.ts +9 -0
- package/dist/types/vue-ui-antdv/useUiTreeDrag.d.ts +32 -0
- package/dist/types/web-contracts/index.d.ts +67 -7
- package/dist/types/web-core/module/index.d.ts +1 -0
- package/dist/types/web-core/module/moduleContext.d.ts +15 -0
- package/dist/types/web-core/module/pageActionEntries.d.ts +21 -0
- package/dist/types/web-core/module/runtimeContext.d.ts +7 -3
- package/dist/types/web-core/module/staticModuleClient.d.ts +25 -2
- package/dist/workspaceViews-DI_1vYX9.js +3518 -0
- package/package.json +1 -1
- package/dist/MetadataOrchestrationView-F_Bmfn9K.js +0 -661
- package/dist/ModuleActionManagementView-Db_3Twom.js +0 -597
- package/dist/platform-components-59b4qzUL.js +0 -12489
- package/dist/types/views/metadataOrchestrationWorkspaceView.d.ts +0 -6
- package/dist/workspaceViews-BvV8mpML.js +0 -11149
|
@@ -84,7 +84,12 @@ export interface WebBusinessNotification {
|
|
|
84
84
|
content: string;
|
|
85
85
|
dismissible: boolean;
|
|
86
86
|
actions: WebBusinessNotificationAction[];
|
|
87
|
+
/** Optional standard card accent. Omit it to use the neutral platform presentation. */
|
|
88
|
+
tone?: WebBusinessNotificationTone;
|
|
89
|
+
/** The business fact's occurrence time, displayed in the workbench time zone when supplied. */
|
|
90
|
+
occurredAt?: string;
|
|
87
91
|
}
|
|
92
|
+
export type WebBusinessNotificationTone = 'default' | 'success' | 'danger';
|
|
88
93
|
export type WebBusinessNotificationAction = WebBusinessNotificationNavigateAction | WebBusinessNotificationRecordAction;
|
|
89
94
|
export interface WebBusinessNotificationNavigateAction {
|
|
90
95
|
kind: 'navigate';
|
|
@@ -129,6 +134,8 @@ export interface WebTreeNode<T> {
|
|
|
129
134
|
* them to their own icon implementations.
|
|
130
135
|
*/
|
|
131
136
|
export interface RecordInlineAction {
|
|
137
|
+
/** Optional single-level menu, rendered in the same stable inline action slot. */
|
|
138
|
+
items?: Array<Pick<RecordInlineAction, 'key' | 'title' | 'disabled' | 'danger'>>;
|
|
132
139
|
key: string;
|
|
133
140
|
/** Standard record action whose availability is resolved for the rendered record. */
|
|
134
141
|
actionCode?: string;
|
|
@@ -140,7 +147,7 @@ export interface RecordInlineAction {
|
|
|
140
147
|
disabledReason?: string;
|
|
141
148
|
danger?: boolean;
|
|
142
149
|
}
|
|
143
|
-
export type RecordInlineActionIconName = 'app' | 'check' | 'close' | 'delete' | 'down' | 'edit' | 'export' | 'filter' | 'help' | 'lock' | 'notification' | 'plus' | 'power' | 'reload' | 'save' | 'search' | 'settings';
|
|
150
|
+
export type RecordInlineActionIconName = 'app' | 'check' | 'close' | 'delete' | 'down' | 'edit' | 'export' | 'eye' | 'eye-off' | 'filter' | 'help' | 'lock' | 'notification' | 'plus' | 'power' | 'reload' | 'save' | 'search' | 'settings';
|
|
144
151
|
export interface CurrentUser {
|
|
145
152
|
userId: string;
|
|
146
153
|
username?: string;
|
|
@@ -258,6 +265,8 @@ export interface PageBootstrapActionBlock {
|
|
|
258
265
|
key?: string;
|
|
259
266
|
actionCode: string;
|
|
260
267
|
title?: string;
|
|
268
|
+
/** Business importance only; card shells decide direct display or “更多”. */
|
|
269
|
+
importance?: 'PRIMARY' | 'STANDARD' | 'SECONDARY';
|
|
261
270
|
position?: string;
|
|
262
271
|
targetUiConfigId?: string;
|
|
263
272
|
submitPath?: string;
|
|
@@ -382,6 +391,8 @@ export interface ResolvedDetailRelationListField {
|
|
|
382
391
|
title?: string;
|
|
383
392
|
fieldForm?: string;
|
|
384
393
|
fieldUiControlAlias?: string;
|
|
394
|
+
/** Source-neutral scalar value fact used by relation previews and portable list renderers. */
|
|
395
|
+
valueType?: ViewFieldValueType | string;
|
|
385
396
|
width?: number;
|
|
386
397
|
align?: 'left' | 'center' | 'right' | string;
|
|
387
398
|
maxDisplayLines?: number;
|
|
@@ -626,6 +637,8 @@ export interface QuerySchemaField {
|
|
|
626
637
|
defaultOperator?: QueryOperator;
|
|
627
638
|
quickSearch?: boolean;
|
|
628
639
|
sortable?: boolean;
|
|
640
|
+
/** Explicit field-domain binding; distinguishes options from reference title companions. */
|
|
641
|
+
optionBinding?: OptionBindingDescriptor;
|
|
629
642
|
optionTitleField?: string;
|
|
630
643
|
}
|
|
631
644
|
export interface QuerySchemaQuickSearch {
|
|
@@ -665,7 +678,7 @@ export interface UiFormula {
|
|
|
665
678
|
/** Versioned program compiled by FormulaEngine. The browser executes it locally and never parses expression. */
|
|
666
679
|
export interface FormulaProgram {
|
|
667
680
|
schemaVersion: number;
|
|
668
|
-
profile: 'WEB_UI' | 'PAGE_TEXT' | 'FORM_COMPUTE';
|
|
681
|
+
profile: 'WEB_UI' | 'PAGE_TEXT' | 'FORM_COMPUTE' | 'FORM_VALIDATION';
|
|
669
682
|
root: FormulaNode;
|
|
670
683
|
referencedFields: string[];
|
|
671
684
|
}
|
|
@@ -777,6 +790,8 @@ export interface ResolvedReferenceFieldDescriptor {
|
|
|
777
790
|
candidateDependencies?: ReferenceCandidateDependency[];
|
|
778
791
|
/** Read-side title projection for this scalar reference, when supplied by the server. */
|
|
779
792
|
titleField?: string;
|
|
793
|
+
/** Target fields mapped by metadata to read-only source-record display projections. */
|
|
794
|
+
displayProjections?: ResolvedReferenceDisplayProjectionDescriptor[];
|
|
780
795
|
/**
|
|
781
796
|
* Explicitly authorized target-field paths available after choosing this ONE reference.
|
|
782
797
|
* Paths are relative to this reference field; the form runtime prefixes them with the
|
|
@@ -791,6 +806,10 @@ export interface ResolvedReferenceFieldDescriptor {
|
|
|
791
806
|
export interface ResolvedReferenceSelectionProjectionDescriptor {
|
|
792
807
|
path: string[];
|
|
793
808
|
}
|
|
809
|
+
export interface ResolvedReferenceDisplayProjectionDescriptor {
|
|
810
|
+
targetField: string;
|
|
811
|
+
outputField: string;
|
|
812
|
+
}
|
|
794
813
|
export interface ReferenceCandidateDependency {
|
|
795
814
|
sourceField: string;
|
|
796
815
|
targetField: string;
|
|
@@ -832,6 +851,14 @@ export interface ResolvedFormComputeRuleDescriptor {
|
|
|
832
851
|
triggerFields: string[];
|
|
833
852
|
writePolicy: 'ALWAYS';
|
|
834
853
|
}
|
|
854
|
+
/** Server-issued browser pre-save validation; the server enforces the same rule on mutation. */
|
|
855
|
+
export interface ResolvedFormValidationRuleDescriptor {
|
|
856
|
+
code: string;
|
|
857
|
+
program: FormulaProgram;
|
|
858
|
+
inputFields: string[];
|
|
859
|
+
targetField?: string;
|
|
860
|
+
message: string;
|
|
861
|
+
}
|
|
835
862
|
export interface ResolvedViewDescriptor {
|
|
836
863
|
viewCode: string;
|
|
837
864
|
viewKind: ModuleViewKind;
|
|
@@ -842,6 +869,7 @@ export interface ResolvedViewDescriptor {
|
|
|
842
869
|
sourceUiConfigId?: string;
|
|
843
870
|
formGroups?: FormGroupDescriptor[];
|
|
844
871
|
formComputeRules?: ResolvedFormComputeRuleDescriptor[];
|
|
872
|
+
formValidationRules?: ResolvedFormValidationRuleDescriptor[];
|
|
845
873
|
}
|
|
846
874
|
export type ModulePageTemplate = 'FLAT_MANAGEMENT' | 'LIST_DETAIL_CARD' | 'TREE_MANAGEMENT';
|
|
847
875
|
export interface ResolvedPageExplorerDescriptor {
|
|
@@ -877,7 +905,7 @@ export interface ResolvedPageNavigatorLevelDescriptor {
|
|
|
877
905
|
*/
|
|
878
906
|
sourceScope?: 'NONE' | 'CURRENT_TENANT';
|
|
879
907
|
/** When present, the navigator source exposes its own standard CRUD affordances in place. */
|
|
880
|
-
management?: ResolvedPageNavigatorManagementDescriptor;
|
|
908
|
+
management?: ResolvedPageNavigatorManagementDescriptor | null;
|
|
881
909
|
}
|
|
882
910
|
export interface ResolvedPageContextBindingDescriptor {
|
|
883
911
|
source: 'SESSION' | 'NAVIGATOR' | 'RESOLVED_SELECTION';
|
|
@@ -915,10 +943,14 @@ export interface ResolvedPageTextDescriptor {
|
|
|
915
943
|
export interface ResolvedPageListQuerySummaryDescriptor {
|
|
916
944
|
key: string;
|
|
917
945
|
title: string;
|
|
918
|
-
source: 'MATCHED_COUNT' | 'CONTRIBUTOR';
|
|
946
|
+
source: 'MATCHED_COUNT' | 'SUM' | 'CONTRIBUTOR' | 'GROUPED';
|
|
947
|
+
fieldName?: string;
|
|
919
948
|
contributorKey?: string;
|
|
949
|
+
groupByField?: string;
|
|
950
|
+
groupByTitle?: string;
|
|
951
|
+
sumFieldTitle?: string;
|
|
920
952
|
}
|
|
921
|
-
/** A persistent boolean query control rendered
|
|
953
|
+
/** A persistent boolean query control rendered before search; advanced filtering follows search. */
|
|
922
954
|
export interface ResolvedPageListPersistentQueryControlDescriptor {
|
|
923
955
|
externalCriteriaKey: string;
|
|
924
956
|
title: string;
|
|
@@ -944,6 +976,8 @@ export interface ResolvedPageDetailWorkspaceViewDescriptor {
|
|
|
944
976
|
type: string;
|
|
945
977
|
}
|
|
946
978
|
export interface ResolvedModulePageDescriptor {
|
|
979
|
+
/** Omitted uses the module default; empty disables page quick search. */
|
|
980
|
+
quickSearchFields?: string[];
|
|
947
981
|
template: ModulePageTemplate;
|
|
948
982
|
explorer?: ResolvedPageExplorerDescriptor;
|
|
949
983
|
navigator?: ResolvedPageNavigatorDescriptor;
|
|
@@ -951,8 +985,24 @@ export interface ResolvedModulePageDescriptor {
|
|
|
951
985
|
/** Declared action-contribution tree rendered as the main TREE_MANAGEMENT resource. */
|
|
952
986
|
treeResource?: ResolvedPageTreeResourceDescriptor;
|
|
953
987
|
detail: ResolvedPageDetailDescriptor;
|
|
988
|
+
/** Actions placed only into platform-owned page regions. */
|
|
989
|
+
actions?: ResolvedPageActionDescriptor[];
|
|
990
|
+
managedActions?: boolean;
|
|
954
991
|
traits: ('STANDARD_CRUD' | 'ENABLED_STATUS' | 'RECYCLE_BIN' | 'RESPONSIVE_DETAIL_SURFACE')[];
|
|
955
992
|
}
|
|
993
|
+
/** Compiled transport for an action that explicitly supports a standard page surface. */
|
|
994
|
+
export interface PageActionInvocation {
|
|
995
|
+
method: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
|
|
996
|
+
path: string;
|
|
997
|
+
input: 'NONE' | 'FORM_RECORD';
|
|
998
|
+
}
|
|
999
|
+
export interface ResolvedPageActionDescriptor {
|
|
1000
|
+
title?: string;
|
|
1001
|
+
operation?: string;
|
|
1002
|
+
actionCode: string;
|
|
1003
|
+
anchor: 'PAGE' | 'DETAIL' | 'FORM';
|
|
1004
|
+
invocation?: PageActionInvocation;
|
|
1005
|
+
}
|
|
956
1006
|
export interface ResolvedPageTreeResourceDescriptor {
|
|
957
1007
|
resource: string;
|
|
958
1008
|
scopeNavigatorKey: string;
|
|
@@ -963,6 +1013,8 @@ export interface ResolvedPageTreeResourceDescriptor {
|
|
|
963
1013
|
title: string;
|
|
964
1014
|
emptyDescription: string;
|
|
965
1015
|
createTitle: string;
|
|
1016
|
+
/** Persisted fields that define the resource's own server-authoritative sort partition. */
|
|
1017
|
+
sortPartitionFields: string[];
|
|
966
1018
|
}
|
|
967
1019
|
export interface ResolvedUiActionConfirmationDescriptor {
|
|
968
1020
|
mode: 'typedText';
|
|
@@ -1268,6 +1320,8 @@ export interface PlatformModule extends StandardEnabledTreeEntity {
|
|
|
1268
1320
|
}
|
|
1269
1321
|
/** A governed operation exposed by one platform module. */
|
|
1270
1322
|
export interface PlatformModuleAction extends StandardEnabledSortableEntity {
|
|
1323
|
+
bindingPending?: boolean;
|
|
1324
|
+
formSupported?: boolean;
|
|
1271
1325
|
moduleAlias?: string;
|
|
1272
1326
|
actionCode?: string;
|
|
1273
1327
|
entityAlias?: string;
|
|
@@ -1323,7 +1377,8 @@ export interface ModuleMetadataRelation extends StandardSortableEntity {
|
|
|
1323
1377
|
moduleAlias?: string;
|
|
1324
1378
|
metadataId?: string;
|
|
1325
1379
|
relationAlias?: string;
|
|
1326
|
-
|
|
1380
|
+
/** Runtime APIs serialize Java code enums using their lower-case code; upper-case remains accepted for fixtures. */
|
|
1381
|
+
relationRole?: 'main' | 'child' | 'MAIN' | 'CHILD';
|
|
1327
1382
|
parentMetadataId?: string;
|
|
1328
1383
|
foreignKey?: string;
|
|
1329
1384
|
autoPopulate?: boolean;
|
|
@@ -1346,6 +1401,7 @@ export interface FieldSpec extends StandardEnabledSortableEntity {
|
|
|
1346
1401
|
queryOperators?: string[];
|
|
1347
1402
|
defaultUiControlAlias?: string;
|
|
1348
1403
|
uiControlAliases?: string[];
|
|
1404
|
+
safeTargetFieldSpecAliases?: string[];
|
|
1349
1405
|
}
|
|
1350
1406
|
export interface FieldUiControl extends StandardEnabledSortableEntity {
|
|
1351
1407
|
alias?: string;
|
|
@@ -1391,9 +1447,13 @@ export interface DictionaryItem extends StandardEnabledTreeEntity {
|
|
|
1391
1447
|
categoryAlias?: string;
|
|
1392
1448
|
code?: string;
|
|
1393
1449
|
}
|
|
1394
|
-
|
|
1450
|
+
/** Relative placement for a sortable flat record collection. */
|
|
1451
|
+
export interface SortRequest {
|
|
1395
1452
|
previousId?: string | null;
|
|
1396
1453
|
nextId?: string | null;
|
|
1454
|
+
}
|
|
1455
|
+
/** Relative placement for a sortable tree record collection. */
|
|
1456
|
+
export interface TreeSortRequest extends SortRequest {
|
|
1397
1457
|
parentId?: string | null;
|
|
1398
1458
|
}
|
|
1399
1459
|
export type FieldKind = 'input' | 'select' | 'dictionary-select' | 'reference-select';
|
|
@@ -4,3 +4,4 @@ export * from './staticModuleClient';
|
|
|
4
4
|
export type { ModuleActionState, ModuleRecordActionAvailability, ModuleRuntimeAction, ModuleRuntimeContext, ModuleRuntimeContextState, } from './runtimeContext';
|
|
5
5
|
export type { ModuleAbilityClients, ModuleAbilities } from './abilities';
|
|
6
6
|
export * from './moduleContext';
|
|
7
|
+
export * from './pageActionEntries';
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type PropType } from 'vue';
|
|
1
2
|
import type { HttpClient } from '../http';
|
|
2
3
|
import { type ModuleAbilities } from './abilities';
|
|
3
4
|
import { type ModuleActionState, type ModuleRecordActionAvailability, type ModuleRuntimeAction, type ModuleRuntimeContextState } from './runtimeContext';
|
|
@@ -34,6 +35,20 @@ export declare function createModuleContext<TRecord>(options: ModuleContextOptio
|
|
|
34
35
|
export declare function createModuleTreeContext<TRecord>(options: ModuleContextOptions): ModuleTreeContext<TRecord>;
|
|
35
36
|
export declare function useModuleContext<TRecord>(options?: Partial<ModuleContextOptions>): ModuleContext<TRecord>;
|
|
36
37
|
export declare function useModuleTreeContext<TRecord>(options?: Partial<ModuleContextOptions>): ModuleTreeContext<TRecord>;
|
|
38
|
+
/** An immutable transport boundary; remount it to begin a separate business data session. */
|
|
39
|
+
export declare const ModuleHttpProvider: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
40
|
+
http: {
|
|
41
|
+
type: PropType<HttpClient>;
|
|
42
|
+
required: true;
|
|
43
|
+
};
|
|
44
|
+
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
45
|
+
[key: string]: any;
|
|
46
|
+
}>[] | undefined, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
47
|
+
http: {
|
|
48
|
+
type: PropType<HttpClient>;
|
|
49
|
+
required: true;
|
|
50
|
+
};
|
|
51
|
+
}>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
37
52
|
export declare const ModuleContextProvider: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
38
53
|
moduleAlias: {
|
|
39
54
|
type: StringConstructor;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/** Shared interaction vocabulary for page design and business rendering. */
|
|
2
|
+
export declare function pageActionIntent(code: string, anchor: string): {
|
|
3
|
+
operation: string;
|
|
4
|
+
title: string;
|
|
5
|
+
mode?: "create" | "edit";
|
|
6
|
+
};
|
|
7
|
+
export declare function pageActionEntryTitle(entry: {
|
|
8
|
+
actionCode: string;
|
|
9
|
+
anchor: string;
|
|
10
|
+
title?: string;
|
|
11
|
+
}): string;
|
|
12
|
+
export declare function pageActionEntryVisible(entry: {
|
|
13
|
+
actionCode: string;
|
|
14
|
+
anchor: string;
|
|
15
|
+
hidden?: boolean;
|
|
16
|
+
operation?: string;
|
|
17
|
+
}, mode: 'view' | 'create' | 'edit'): boolean;
|
|
18
|
+
export declare function pageActionEntryDescription(entry: {
|
|
19
|
+
actionCode: string;
|
|
20
|
+
anchor: string;
|
|
21
|
+
}): string;
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
import type { ResolvedModuleUiDescriptor } from '../../web-contracts/index';
|
|
1
|
+
import type { PageActionInvocation, ResolvedModuleUiDescriptor } from '../../web-contracts/index';
|
|
2
2
|
import { type AppError } from '../errors';
|
|
3
3
|
import type { HttpClient } from '../http';
|
|
4
4
|
import type { ModuleAbilityCode } from './abilityCodes';
|
|
5
5
|
export interface ModuleRuntimeAction {
|
|
6
|
+
bindingPending?: boolean;
|
|
7
|
+
formSupported?: boolean;
|
|
8
|
+
invocations?: Partial<Record<'PAGE' | 'DETAIL' | 'FORM', PageActionInvocation>>;
|
|
6
9
|
actionCode: string;
|
|
7
10
|
permissionActionCode?: string;
|
|
8
11
|
title?: string;
|
|
@@ -38,6 +41,7 @@ export interface ModuleRecordActionDecision {
|
|
|
38
41
|
}
|
|
39
42
|
export interface ModuleRuntimeContext {
|
|
40
43
|
moduleAlias: string;
|
|
44
|
+
tenantRequired?: boolean;
|
|
41
45
|
title?: string;
|
|
42
46
|
moduleKind?: 'STATIC' | 'DYNAMIC';
|
|
43
47
|
entryType?: 'module' | 'route' | 'link';
|
|
@@ -45,10 +49,10 @@ export interface ModuleRuntimeContext {
|
|
|
45
49
|
entryExternalUrl?: string;
|
|
46
50
|
mainEntityAlias?: string;
|
|
47
51
|
capabilities: string[];
|
|
52
|
+
/** Persisted fields that define the server-authoritative sort partition. */
|
|
53
|
+
sortPartitionFields?: string[];
|
|
48
54
|
abilities?: string[];
|
|
49
55
|
actions: ModuleRuntimeAction[];
|
|
50
|
-
/** Read-only projections this module deliberately exposes for page navigation. */
|
|
51
|
-
navigatorSourceCapabilities?: Array<'REFERENCE_QUERY' | 'REFERENCE_TREE'>;
|
|
52
56
|
uiDescriptor?: ResolvedModuleUiDescriptor;
|
|
53
57
|
}
|
|
54
58
|
export interface ModuleRuntimeContextState {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { TreeSortRequest, WebActionResultFacts, WebActionResultEnvelope, QuerySchema, WebListResponse, WebPageResponse, WebQueryRequest, WebTreeNode } from '../../web-contracts/index';
|
|
1
|
+
import type { SortRequest, TreeSortRequest, WebActionResultFacts, WebActionResultEnvelope, QuerySchema, WebListResponse, WebPageResponse, WebQueryRequest, WebTreeNode } from '../../web-contracts/index';
|
|
2
2
|
import type { HttpClient } from '../http';
|
|
3
3
|
export interface StaticRecordMutationResult<TRecord> extends WebActionResultFacts {
|
|
4
4
|
record: TRecord;
|
|
@@ -21,6 +21,8 @@ export interface ModuleCrudClient<TRecord> {
|
|
|
21
21
|
delete(id: string, request: RecordActionRequest): Promise<StaticCountMutationResult>;
|
|
22
22
|
enable(id: string, request: RecordActionRequest): Promise<StaticCountMutationResult>;
|
|
23
23
|
disable(id: string, request: RecordActionRequest): Promise<StaticCountMutationResult>;
|
|
24
|
+
/** Optional capability: plain CRUD consumers must not be forced to implement sorting. */
|
|
25
|
+
sort?(id: string, request: SortRequest): Promise<StaticCountMutationResult>;
|
|
24
26
|
}
|
|
25
27
|
/** Source-neutral tree extension for a platform module. */
|
|
26
28
|
export interface ModuleTreeClient<TRecord> extends ModuleCrudClient<TRecord> {
|
|
@@ -32,7 +34,12 @@ export interface ModuleTreeClient<TRecord> extends ModuleCrudClient<TRecord> {
|
|
|
32
34
|
subtree(id: string, options?: {
|
|
33
35
|
includeSelf?: boolean;
|
|
34
36
|
}): Promise<WebListResponse<WebTreeNode<TRecord>>>;
|
|
35
|
-
sort(id: string, request: TreeSortRequest): Promise<StaticCountMutationResult>;
|
|
37
|
+
sort(id: string, request: TreeSortRequest, options?: TreeSortOptions): Promise<StaticCountMutationResult>;
|
|
38
|
+
}
|
|
39
|
+
export interface TreeSortOptions {
|
|
40
|
+
externalQueryValues?: Record<string, unknown>;
|
|
41
|
+
navigatorHostModuleAlias?: string;
|
|
42
|
+
navigatorTargetLevelKey?: string;
|
|
36
43
|
}
|
|
37
44
|
export interface ModuleEnableClient {
|
|
38
45
|
enable(id: string, request: RecordActionRequest): Promise<StaticCountMutationResult>;
|
|
@@ -83,3 +90,19 @@ export type StaticModuleTreeClient<TRecord> = ModuleTreeClient<TRecord>;
|
|
|
83
90
|
export declare const createStaticModuleCrudClient: typeof createModuleCrudClient;
|
|
84
91
|
/** @deprecated Use createModuleTreeClient. Retained for published consumer compatibility. */
|
|
85
92
|
export declare const createStaticModuleTreeClient: typeof createModuleTreeClient;
|
|
93
|
+
/**
|
|
94
|
+
* Dynamic records use a typed `{ id, version, values, children }` wire envelope while static
|
|
95
|
+
* records already publish their fields at the root. The shared module client is the only place
|
|
96
|
+
* that should bridge this transport difference: every page surface then consumes one flat record
|
|
97
|
+
* contract, including aggregate children, and submits that same accepted shape back to the
|
|
98
|
+
* dynamic deserializer.
|
|
99
|
+
*/
|
|
100
|
+
export declare function normalizeModuleRecord<TRecord>(record: TRecord): TRecord;
|
|
101
|
+
/**
|
|
102
|
+
* Normalizes a page response at the source-neutral module transport boundary.
|
|
103
|
+
*
|
|
104
|
+
* <p>Association query contracts use their server-issued route directly instead of the standard
|
|
105
|
+
* module CRUD path, but they still return the same dynamic record envelope. Keeping this helper
|
|
106
|
+
* public lets those descriptor-driven surfaces reuse the one normalization rule.</p>
|
|
107
|
+
*/
|
|
108
|
+
export declare function normalizeModulePageResponse<TRecord>(response: WebPageResponse<TRecord>): WebPageResponse<TRecord>;
|