@ximatai/muyun-web-app 0.26.17 → 0.26.19

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 (87) hide show
  1. package/dist/{BusinessActivityLogView-9RrW-RKb.js → BusinessActivityLogView-DudCmeKP.js} +2 -2
  2. package/dist/{BusinessLogListDrawer-DYVx9tiQ.js → BusinessLogListDrawer-CVUvUG48.js} +193 -193
  3. package/dist/CodeConfigurationView-ZjVgaZkD.js +1667 -0
  4. package/dist/{ConfigurationTranslationView-Bh_ekuMP.js → ConfigurationTranslationView-Dl757QMl.js} +38 -38
  5. package/dist/{LoginAuditLogView-DG6iBXEn.js → LoginAuditLogView-Cj3PMvN5.js} +2 -2
  6. package/dist/ModuleActionManagementView-BuhQrVA3.js +755 -0
  7. package/dist/{ModuleGovernanceView-C53RnUzc.js → ModuleGovernanceView-C3RxdgQN.js} +3736 -3880
  8. package/dist/{RequestErrorLogView-Ba5p0hLE.js → RequestErrorLogView-tmjMOeLE.js} +2 -2
  9. package/dist/RoleDetailWorkspaceView-OhpBChaT.js +1435 -0
  10. package/dist/{RuntimeLogView-BFEABm8G.js → RuntimeLogView-BkkgHcF0.js} +69 -69
  11. package/dist/WorkflowAdministrationView-DOhA_5-M.js +650 -0
  12. package/dist/WorkflowConfigurationView-Bnjdrkdx.js +980 -0
  13. package/dist/{WorkflowWorkbenchView-DGpNDt5V.js → WorkflowWorkbenchView-Cf6yiofx.js} +263 -263
  14. package/dist/codeConfiguration-DERwCY-U.js +208 -0
  15. package/dist/index.css +1 -1
  16. package/dist/index.js +472 -471
  17. package/dist/moduleMenuWorkspace-DPmYGkS_.js +626 -0
  18. package/dist/platform-components-wRXbnwMr.js +30434 -0
  19. package/dist/{platform-workbench-C1hmkOUD.js → platform-workbench-Cm_0kmTT.js} +5570 -5592
  20. package/dist/types/app/DevelopmentTopbarActions.vue.d.ts +9 -0
  21. package/dist/types/app/executeBusinessNotificationRecordAction.d.ts +7 -0
  22. package/dist/types/consumer/AppWorkbenchShell.vue.d.ts +5 -1
  23. package/dist/types/consumer/index.d.ts +2 -1
  24. package/dist/types/dynamic-page-runtime/ModulePageHostRuntime.vue.d.ts +6 -0
  25. package/dist/types/dynamic-page-runtime/composables/useModulePageDetailExtensionRuntime.d.ts +1 -0
  26. package/dist/types/dynamic-page-runtime/modulePageEnhancementState.d.ts +5 -0
  27. package/dist/types/dynamic-page-runtime/modulePageEnhancements.d.ts +6 -2
  28. package/dist/types/platform-admin-runtime/ModuleCodeConfigurationStatus.vue.d.ts +7 -0
  29. package/dist/types/platform-admin-runtime/moduleCodeConfiguration.d.ts +15 -0
  30. package/dist/types/platform-admin-runtime/workflow/ModuleWorkflowDrawer.vue.d.ts +7 -0
  31. package/dist/types/platform-components/BusinessNotificationPanel.vue.d.ts +5 -3
  32. package/dist/types/platform-components/FormulaExpressionEditor.vue.d.ts +5 -0
  33. package/dist/types/platform-components/RecordAdaptiveDetailPanel.vue.d.ts +28 -0
  34. package/dist/types/platform-components/RecordFormFields.vue.d.ts +4 -2
  35. package/dist/types/platform-components/RecordQueryListSurface.vue.d.ts +4 -0
  36. package/dist/types/platform-components/RecordRelationActionButton.vue.d.ts +16 -0
  37. package/dist/types/{dynamic-page-runtime → platform-components}/TenantScopeExplorer.vue.d.ts +1 -1
  38. package/dist/types/platform-components/WorkflowBusinessTaskEditor.vue.d.ts +2 -0
  39. package/dist/types/platform-components/WorkflowDesignProperties.vue.d.ts +2 -6
  40. package/dist/types/platform-components/WorkflowDiagram.vue.d.ts +32 -1
  41. package/dist/types/platform-components/formulaExpressionTokens.d.ts +2 -0
  42. package/dist/types/platform-components/formulaExpressionTools.d.ts +6 -0
  43. package/dist/types/platform-components/index.d.ts +5 -0
  44. package/dist/types/platform-components/managementWorkspaceLayout.d.ts +10 -0
  45. package/dist/types/platform-components/recordFormFieldModel.d.ts +4 -0
  46. package/dist/types/platform-components/useBusinessCodeForm.d.ts +36 -0
  47. package/dist/types/platform-components/useWorkflowDesignHistory.d.ts +14 -0
  48. package/dist/types/platform-components/useWorkspaceDetailSurface.d.ts +3 -0
  49. package/dist/types/platform-components/workflowDesignClipboard.d.ts +7 -0
  50. package/dist/types/platform-components/workflowPresentation.d.ts +4 -0
  51. package/dist/types/platform-workbench/Workbench.vue.d.ts +6 -2
  52. package/dist/types/platform-workbench/WorkbenchGlobalTools.vue.d.ts +13 -1
  53. package/dist/types/views/CodeConfigurationView.vue.d.ts +8 -0
  54. package/dist/types/views/CodeRuleFormatEditor.vue.d.ts +17 -0
  55. package/dist/types/views/WorkflowConfigurationView.vue.d.ts +1 -0
  56. package/dist/types/views/WorkflowDefinitionSettings.vue.d.ts +35 -0
  57. package/dist/types/views/WorkflowSelectionFields.vue.d.ts +2 -4
  58. package/dist/types/views/codeConfiguration.d.ts +127 -0
  59. package/dist/types/views/codeConfigurationWorkspaceView.d.ts +5 -0
  60. package/dist/types/views/moduleGovernanceWorkspaceView.d.ts +1 -1
  61. package/dist/types/views/useWorkflowConfigurationContext.d.ts +49 -0
  62. package/dist/types/views/workflowConfigurationWorkspaceView.d.ts +2 -0
  63. package/dist/types/vue-ui-antdv/components/UiDatePicker.vue.d.ts +33 -0
  64. package/dist/types/vue-ui-antdv/components/UiHelp.vue.d.ts +16 -0
  65. package/dist/types/vue-ui-antdv/components/UiIcon.vue.d.ts +1 -1
  66. package/dist/types/vue-ui-antdv/components/UiPopover.vue.d.ts +12 -4
  67. package/dist/types/vue-ui-antdv/components/UiRadioGroup.vue.d.ts +4 -0
  68. package/dist/types/vue-ui-antdv/components/UiSidePanel.vue.d.ts +5 -0
  69. package/dist/types/vue-ui-antdv/datePickerCalendar.d.ts +472 -0
  70. package/dist/types/vue-ui-antdv/datePickerValue.d.ts +6 -0
  71. package/dist/types/vue-ui-antdv/index.d.ts +4 -0
  72. package/dist/types/vue-ui-antdv/languageLocales.d.ts +2 -0
  73. package/dist/types/vue-ui-antdv/overlayLayers.d.ts +5 -0
  74. package/dist/types/vue-ui-antdv/types.d.ts +2 -0
  75. package/dist/types/web-contracts/index.d.ts +18 -0
  76. package/dist/types/web-contracts/workflow.d.ts +16 -8
  77. package/dist/types/web-core/businessNotifications.d.ts +3 -1
  78. package/dist/types/web-core/workflow.d.ts +13 -1
  79. package/dist/useWorkflowConfigurationContext-BE_UjKgk.js +66 -0
  80. package/dist/{workspaceViews-BpH71LKQ.js → workspaceViews-D37OpJ7g.js} +1608 -884
  81. package/package.json +4 -1
  82. package/dist/ModuleActionManagementView-DgHqhoMN.js +0 -755
  83. package/dist/RoleDetailWorkspaceView-C3TBqksY.js +0 -1435
  84. package/dist/WorkflowAdministrationView-BOHG2e-I.js +0 -650
  85. package/dist/WorkflowConfigurationView-A0m5tBX9.js +0 -1097
  86. package/dist/moduleGovernanceWorkspaceView-DNKzYX0x.js +0 -667
  87. package/dist/platform-components-BBfyINHa.js +0 -29912
@@ -0,0 +1,9 @@
1
+ import type { CurrentUser } from '../web-contracts/index';
2
+ type __VLS_Props = {
3
+ currentUser?: CurrentUser;
4
+ };
5
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
6
+ currentUser: CurrentUser;
7
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
8
+ declare const _default: typeof __VLS_export;
9
+ export default _default;
@@ -0,0 +1,7 @@
1
+ import type { WebBusinessNotification, WebBusinessNotificationRecordAction } from '../web-contracts/index';
2
+ /** Confirmation may outlive the notification; check the current fact immediately before dispatch. */
3
+ export declare function executeBusinessNotificationRecordAction(action: WebBusinessNotificationRecordAction, options: {
4
+ current: () => WebBusinessNotification | undefined;
5
+ confirm: () => boolean | Promise<boolean>;
6
+ invoke: () => Promise<unknown>;
7
+ }): Promise<boolean>;
@@ -17,10 +17,14 @@ type __VLS_Props = {
17
17
  themeAppearance?: 'light' | 'dark';
18
18
  };
19
19
  declare var __VLS_19: {
20
+ currentUser?: import("./index.ts").CurrentUser;
21
+ }, __VLS_22: {
20
22
  pageDescriptor: PageDescriptor | undefined;
21
23
  };
22
24
  type __VLS_Slots = {} & {
23
- default?: (props: typeof __VLS_19) => any;
25
+ 'topbar-actions'?: (props: typeof __VLS_19) => any;
26
+ } & {
27
+ default?: (props: typeof __VLS_22) => any;
24
28
  };
25
29
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
26
30
  navigate: (navigation: AppWorkbenchNavigation) => any;
@@ -16,7 +16,8 @@ export { restoreLockedTabPreference, saveLockedTabPreference } from '../app/lock
16
16
  export { configureModulePageEnhancementContributions, configureModulePageEnhancements, createModulePageEnhancementRegistry, modulePageWorkspaceViews, } from '../dynamic-page-runtime/modulePageEnhancements';
17
17
  export { refreshModulePageList } from '../dynamic-page-runtime/modulePageListRefresh';
18
18
  export type { ModuleListEnhancement, ModuleDetailEnhancement, ModulePageActionContext, ModulePageActionContribution, ModulePageActionStateContext, ModulePageBatchActionContext, ModulePageBatchActionContribution, ModulePageColumnContribution, ModulePageDetailDrawer, ModulePageDetailSection, ModulePageDetailSectionContext, ModulePageDrawer, ModulePageDrawerContext, ModulePageRecordViewContext, ModulePageEnhancement, ModulePageEnhancementTarget, ModulePageLockedNavigatorEntry, ModulePageNavigatorEnhancement, ModulePageNavigatorExtension, ModulePageNavigatorExtensionContext, ModulePageRecordActionContext, ModulePageRecordActionContribution, ModulePageScopeContext, ModulePageWorkspaceView, ModulePageWorkspaceViewInput, } from '../dynamic-page-runtime/modulePageEnhancements';
19
- export { UiButton, confirmAction, UiDataTable, UiSidePanel, UiTree, UiTreeSelect, UiInput, UiSwitch, UiTextArea, } from '../vue-ui-antdv/index';
19
+ export { UiButton, UiDropdown, UiIcon, confirmAction, UiDataTable, UiSidePanel, UiTree, UiTreeSelect, UiInput, UiDatePicker, UiSwitch, UiTextArea, } from '../vue-ui-antdv/index';
20
+ export type { UiDropdownItem, UiIconName, UiDatePickerMode, UiDatePickerPrecision, } from '../vue-ui-antdv/index';
20
21
  export { default as PlatformAdminOutlet } from './PlatformAdminOutlet.vue';
21
22
  export { default as AppWorkbenchShell } from './AppWorkbenchShell.vue';
22
23
  export { default as LoginView } from '../app/LoginView.vue';
@@ -2134,6 +2134,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
2134
2134
  pickerConfigs?: Record<string, import("../platform-components/index").RecordFormFieldPickerConfig>;
2135
2135
  optionContext?: import("../web-core/index").ModuleContext<unknown>;
2136
2136
  optionEntityAlias?: string;
2137
+ codeParentRecord?: import("../platform-components/index").RecordFormRecord;
2137
2138
  contentRelation?: import("../web-core/index").BusinessContentRelationScope;
2138
2139
  fileTransferContext?: import("../web-core/index").ModuleContext<unknown>;
2139
2140
  formSessionKey?: string | number;
@@ -2170,6 +2171,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
2170
2171
  layoutTransitionPrefix: string;
2171
2172
  optionEntityAlias: string;
2172
2173
  pickerConfigs: Record<string, import("../platform-components/index").RecordFormFieldPickerConfig>;
2174
+ codeParentRecord: import("../platform-components/index").RecordFormRecord;
2173
2175
  validationRequestKey: number;
2174
2176
  showLabels: boolean;
2175
2177
  disabledOf: (fieldName: string, field: import("../platform-components/index").RecordFormFieldState) => boolean;
@@ -2193,6 +2195,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
2193
2195
  pickerConfigs?: Record<string, import("../platform-components/index").RecordFormFieldPickerConfig>;
2194
2196
  optionContext?: import("../web-core/index").ModuleContext<unknown>;
2195
2197
  optionEntityAlias?: string;
2198
+ codeParentRecord?: import("../platform-components/index").RecordFormRecord;
2196
2199
  contentRelation?: import("../web-core/index").BusinessContentRelationScope;
2197
2200
  fileTransferContext?: import("../web-core/index").ModuleContext<unknown>;
2198
2201
  formSessionKey?: string | number;
@@ -2224,6 +2227,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
2224
2227
  layoutTransitionPrefix: string;
2225
2228
  optionEntityAlias: string;
2226
2229
  pickerConfigs: Record<string, import("../platform-components/index").RecordFormFieldPickerConfig>;
2230
+ codeParentRecord: import("../platform-components/index").RecordFormRecord;
2227
2231
  validationRequestKey: number;
2228
2232
  showLabels: boolean;
2229
2233
  disabledOf: (fieldName: string, field: import("../platform-components/index").RecordFormFieldState) => boolean;
@@ -2244,6 +2248,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
2244
2248
  pickerConfigs?: Record<string, import("../platform-components/index").RecordFormFieldPickerConfig>;
2245
2249
  optionContext?: import("../web-core/index").ModuleContext<unknown>;
2246
2250
  optionEntityAlias?: string;
2251
+ codeParentRecord?: import("../platform-components/index").RecordFormRecord;
2247
2252
  contentRelation?: import("../web-core/index").BusinessContentRelationScope;
2248
2253
  fileTransferContext?: import("../web-core/index").ModuleContext<unknown>;
2249
2254
  formSessionKey?: string | number;
@@ -2280,6 +2285,7 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
2280
2285
  layoutTransitionPrefix: string;
2281
2286
  optionEntityAlias: string;
2282
2287
  pickerConfigs: Record<string, import("../platform-components/index").RecordFormFieldPickerConfig>;
2288
+ codeParentRecord: import("../platform-components/index").RecordFormRecord;
2283
2289
  validationRequestKey: number;
2284
2290
  showLabels: boolean;
2285
2291
  disabledOf: (fieldName: string, field: import("../platform-components/index").RecordFormFieldState) => boolean;
@@ -8,6 +8,7 @@ export interface ModulePageEnhancementDrawerRuntime {
8
8
  operation?: ModulePageDrawerOperation;
9
9
  subtitle?: string;
10
10
  closeBlocked: boolean;
11
+ beforeClose?: () => boolean | Promise<boolean>;
11
12
  }
12
13
  interface Options {
13
14
  module: ModuleContext<QueryListRecord>;
@@ -0,0 +1,5 @@
1
+ import type { ModulePageEnhancement, ModulePageEnhancementRegistry } from './modulePageEnhancements';
2
+ export declare const modulePageEnhancementState: {
3
+ owners: Map<string, readonly ModulePageEnhancement[]>;
4
+ registry: import("vue").ShallowRef<ModulePageEnhancementRegistry | undefined, ModulePageEnhancementRegistry | undefined>;
5
+ };
@@ -301,8 +301,8 @@ export interface ModulePageActionContribution extends RecordActionItem {
301
301
  }
302
302
  export interface ModulePageRecordActionContribution extends RecordActionItem {
303
303
  key: string;
304
- /** Resolves record-specific visibility or enabled state without letting business code own the table shell. */
305
- state?(record: QueryListRecord): Partial<Pick<RecordActionItem, 'visible' | 'disabled'>> | undefined;
304
+ /** Resolves record-specific visibility or enabled state. The optional page context identifies authorized auxiliary facts loaded by activate(). */
305
+ state?(record: QueryListRecord, context?: ModulePageActionStateContext): Partial<Pick<RecordActionItem, 'visible' | 'disabled'>> | undefined;
306
306
  run(context: ModulePageRecordActionContext): void | Promise<void>;
307
307
  }
308
308
  export interface ModulePageBatchActionContribution extends RecordActionItem {
@@ -349,6 +349,8 @@ export interface ModulePageDrawer {
349
349
  titleKey?: string;
350
350
  title: string;
351
351
  width?: DrawerWidth;
352
+ /** Outside dismissal still goes through the context close guard and busy state. */
353
+ dismissal?: 'explicit' | 'dismissible';
352
354
  /** The component receives only the documented ModulePageDrawerContext prop. */
353
355
  component: Component;
354
356
  }
@@ -385,6 +387,8 @@ export interface ModulePageDrawerContext {
385
387
  refreshDetailExtensions(): void;
386
388
  /** Blocks the drawer shell's close affordances while a contributed operation is in flight. */
387
389
  setCloseBlocked(blocked: boolean): void;
390
+ /** Registers the drawer-owned draft confirmation; all shell and programmatic close requests share it. */
391
+ setBeforeClose(guard?: () => boolean | Promise<boolean>): void;
388
392
  close(): void;
389
393
  reload(): void;
390
394
  /** Replaces contextual actions beside the drawer title; actions are cleared with the drawer. */
@@ -0,0 +1,7 @@
1
+ import type { ModulePageCardAssistantContext } from '../dynamic-page-runtime/index';
2
+ type __VLS_Props = {
3
+ context: ModulePageCardAssistantContext;
4
+ };
5
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
6
+ declare const _default: typeof __VLS_export;
7
+ export default _default;
@@ -0,0 +1,15 @@
1
+ import { type ModuleContext } from '../web-core/index';
2
+ import type { QueryListRecord } from '../platform-components/index';
3
+ import { type CodeConfigurationAvailability } from '../views/codeConfiguration';
4
+ type AvailabilityState = CodeConfigurationAvailability & {
5
+ phase: 'loading' | 'ready' | 'failed';
6
+ error?: string;
7
+ };
8
+ export declare function moduleCodeCatalog(module: ModuleContext<QueryListRecord>): {
9
+ states: import("vue").Ref<Record<string, AvailabilityState>, Record<string, AvailabilityState>>;
10
+ refresh: (alias: string) => Promise<void>;
11
+ dispose: () => void;
12
+ };
13
+ export declare function activateModuleCodeCatalog(module: ModuleContext<QueryListRecord>): () => void;
14
+ export declare function canConfigureModuleCodes(module: ModuleContext<QueryListRecord>, alias: string): boolean;
15
+ export {};
@@ -0,0 +1,7 @@
1
+ import type { ModulePageDrawerContext } from '../../dynamic-page-runtime/index';
2
+ type __VLS_Props = {
3
+ context: ModulePageDrawerContext;
4
+ };
5
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
6
+ declare const _default: typeof __VLS_export;
7
+ export default _default;
@@ -3,9 +3,9 @@ type __VLS_Props = {
3
3
  notifications: WebBusinessNotification[];
4
4
  /** Allows a consumer to opt an individual card into the optional right-hand attachment area. */
5
5
  hasAccessory?: (notification: WebBusinessNotification) => boolean;
6
- executeAction: (notification: WebBusinessNotification, action: WebBusinessNotificationAction) => void | Promise<void>;
6
+ executeAction: (notification: WebBusinessNotification, action: WebBusinessNotificationAction) => void | boolean | Promise<void | boolean>;
7
7
  };
8
- declare var __VLS_27: {
8
+ declare var __VLS_33: {
9
9
  notification: {
10
10
  title: string;
11
11
  subtitle: string;
@@ -37,12 +37,14 @@ declare var __VLS_27: {
37
37
  id: string;
38
38
  code: string;
39
39
  dismissible: boolean;
40
+ displayPolicy?: "standard" | "persistent";
41
+ expiresAt?: string;
40
42
  tone?: import("../web-contracts/index").WebBusinessNotificationTone;
41
43
  occurredAt?: string;
42
44
  };
43
45
  };
44
46
  type __VLS_Slots = {} & {
45
- accessory?: (props: typeof __VLS_27) => any;
47
+ accessory?: (props: typeof __VLS_33) => any;
46
48
  };
47
49
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
48
50
  dismiss: (notificationId: string) => any;
@@ -1,6 +1,9 @@
1
1
  import type { UiDragSource } from '../vue-ui-antdv/index';
2
2
  import { type FormulaExpressionField, type FormulaExpressionFunction } from './formulaExpressionTokens';
3
+ import type { FormulaExpressionTools } from './formulaExpressionTools';
3
4
  type __VLS_Props = {
5
+ tools?: FormulaExpressionTools;
6
+ booleanResult?: boolean;
4
7
  value: string;
5
8
  fields: readonly FormulaExpressionField[];
6
9
  functions?: readonly FormulaExpressionFunction[];
@@ -48,6 +51,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {
48
51
  disabled: boolean;
49
52
  placeholder: string;
50
53
  acceptDrop: (source: UiDragSource) => boolean;
54
+ tools: FormulaExpressionTools;
55
+ booleanResult: boolean;
51
56
  functions: readonly FormulaExpressionFunction[];
52
57
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
53
58
  declare const _default: typeof __VLS_export;
@@ -0,0 +1,28 @@
1
+ import { type UiDrawerWidth } from '../vue-ui-antdv/index';
2
+ type __VLS_Props = {
3
+ open: boolean;
4
+ docked: boolean;
5
+ title: string;
6
+ width?: UiDrawerWidth;
7
+ };
8
+ declare var __VLS_29: {}, __VLS_32: {};
9
+ type __VLS_Slots = {} & {
10
+ default?: (props: typeof __VLS_29) => any;
11
+ } & {
12
+ operation?: (props: typeof __VLS_32) => any;
13
+ };
14
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
15
+ close: () => any;
16
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
17
+ onClose?: (() => any) | undefined;
18
+ }>, {
19
+ width: UiDrawerWidth;
20
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
21
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
22
+ declare const _default: typeof __VLS_export;
23
+ export default _default;
24
+ type __VLS_WithSlots<T, S> = T & {
25
+ new (): {
26
+ $slots: S;
27
+ };
28
+ };
@@ -18,6 +18,7 @@ type __VLS_Props = {
18
18
  * Ordinary module forms intentionally leave this absent.
19
19
  */
20
20
  optionEntityAlias?: string;
21
+ codeParentRecord?: RecordFormRecord;
21
22
  contentRelation?: import('../web-core/index').BusinessContentRelationScope;
22
23
  fileTransferContext?: ModuleContext<unknown>;
23
24
  formSessionKey?: string | number;
@@ -38,7 +39,7 @@ declare var __VLS_1: {
38
39
  group: import("../web-contracts/index").FormGroupDescriptor | undefined;
39
40
  }, __VLS_12: {
40
41
  field: RecordFormFieldState;
41
- }, __VLS_203: {
42
+ }, __VLS_217: {
42
43
  field: RecordFormFieldState;
43
44
  };
44
45
  type __VLS_Slots = {} & {
@@ -48,7 +49,7 @@ type __VLS_Slots = {} & {
48
49
  } & {
49
50
  'field-actions'?: (props: typeof __VLS_12) => any;
50
51
  } & {
51
- 'after-field'?: (props: typeof __VLS_203) => any;
52
+ 'after-field'?: (props: typeof __VLS_217) => any;
52
53
  };
53
54
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
54
55
  "validity-change": (validity: RecordFormValidity) => any;
@@ -74,6 +75,7 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
74
75
  layoutTransitionPrefix: string;
75
76
  optionEntityAlias: string;
76
77
  pickerConfigs: Record<string, RecordFormFieldPickerConfig>;
78
+ codeParentRecord: RecordFormRecord;
77
79
  validationRequestKey: number;
78
80
  showLabels: boolean;
79
81
  disabledOf: (fieldName: string, field: RecordFormFieldState) => boolean;
@@ -29,6 +29,8 @@ type __VLS_Props = {
29
29
  rowDraggable?: boolean;
30
30
  rowDragHandleTitle?: string;
31
31
  tableVisible?: boolean;
32
+ loading?: boolean;
33
+ emptyDescription?: string;
32
34
  conditionsVisible?: boolean;
33
35
  embedded?: boolean;
34
36
  chromeFree?: boolean;
@@ -98,7 +100,9 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
98
100
  }>, {
99
101
  title: string;
100
102
  subtitle: string;
103
+ emptyDescription: string;
101
104
  selection: UiDataTableSelection;
105
+ loading: boolean;
102
106
  rowKey: string | ((record: UiDataTableRecord) => string);
103
107
  selectedRowKey: string;
104
108
  expandedRowKeys: string[];
@@ -0,0 +1,16 @@
1
+ import type { UiIconName } from '../vue-ui-antdv/index';
2
+ type __VLS_Props = {
3
+ iconName: UiIconName;
4
+ title: string;
5
+ ariaLabel?: string;
6
+ disabled?: boolean;
7
+ loading?: boolean;
8
+ danger?: boolean;
9
+ };
10
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
11
+ click: (event: MouseEvent) => any;
12
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
13
+ onClick?: ((event: MouseEvent) => any) | undefined;
14
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
15
+ declare const _default: typeof __VLS_export;
16
+ export default _default;
@@ -1,5 +1,5 @@
1
1
  import { type ModuleContext } from '../web-core/index';
2
- import { type QueryListRecord } from '../platform-components/index';
2
+ import type { QueryListRecord } from './RecordQueryListPanel.vue';
3
3
  type __VLS_Props = {
4
4
  context: ModuleContext<QueryListRecord>;
5
5
  selectedId?: string;
@@ -1,4 +1,6 @@
1
+ import type { FormulaExpressionTools } from './formulaExpressionTools';
1
2
  type __VLS_Props = {
3
+ conditionTools?: FormulaExpressionTools;
2
4
  value?: string;
3
5
  moduleAlias: string;
4
6
  disabled?: boolean;
@@ -1,6 +1,8 @@
1
+ import type { FormulaExpressionTools } from './formulaExpressionTools';
1
2
  import type { HttpClient } from '../web-core/index';
2
3
  import type { WorkflowDesign, WorkflowNode, WorkflowRoute, WorkflowConfigurationCatalog } from '../web-contracts/index';
3
4
  type __VLS_Props = {
5
+ conditionTools?: FormulaExpressionTools;
4
6
  design: WorkflowDesign;
5
7
  nodeKey: string;
6
8
  routeKey: string;
@@ -23,18 +25,12 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {
23
25
  "update-node": (patch: Partial<WorkflowNode>) => any;
24
26
  "update-route": (patch: Partial<WorkflowRoute>) => any;
25
27
  "select-route": (key: string) => any;
26
- "remove-node": () => any;
27
- "remove-route": () => any;
28
28
  "append-branch-path": () => any;
29
- "delete-branch": () => any;
30
29
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
31
30
  "onUpdate-node"?: ((patch: Partial<WorkflowNode>) => any) | undefined;
32
31
  "onUpdate-route"?: ((patch: Partial<WorkflowRoute>) => any) | undefined;
33
32
  "onSelect-route"?: ((key: string) => any) | undefined;
34
- "onRemove-node"?: (() => any) | undefined;
35
- "onRemove-route"?: (() => any) | undefined;
36
33
  "onAppend-branch-path"?: (() => any) | undefined;
37
- "onDelete-branch"?: (() => any) | undefined;
38
34
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
39
35
  declare const _default: typeof __VLS_export;
40
36
  export default _default;
@@ -3,6 +3,9 @@ type __VLS_Props = {
3
3
  nodes: WorkflowNode[];
4
4
  routes: WorkflowRoute[];
5
5
  selectedNodeKey?: string;
6
+ selectedNodeKeys?: string[];
7
+ canUndo?: boolean;
8
+ canRedo?: boolean;
6
9
  selectedRouteKey?: string;
7
10
  interactive?: boolean;
8
11
  editable?: boolean;
@@ -11,14 +14,42 @@ type __VLS_Props = {
11
14
  /** Detail views keep business facts visible; the designer retains a larger canvas. */
12
15
  presentation?: 'detail' | 'designer';
13
16
  };
14
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
17
+ declare var __VLS_1: {}, __VLS_91: {};
18
+ type __VLS_Slots = {} & {
19
+ actions?: (props: typeof __VLS_1) => any;
20
+ } & {
21
+ navigation?: (props: typeof __VLS_91) => any;
22
+ };
23
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
15
24
  select: (nodeKey: string) => any;
25
+ copy: (event: ClipboardEvent) => any;
26
+ paste: (event: ClipboardEvent) => any;
16
27
  selectRoute: (routeKey: string) => any;
17
28
  layoutChange: (layoutJson: string) => any;
29
+ selectionChange: (keys: string[]) => any;
30
+ undo: () => any;
31
+ redo: () => any;
32
+ copyShortcut: () => any;
33
+ pasteShortcut: () => any;
34
+ deleteSelection: () => any;
18
35
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
19
36
  onSelect?: ((nodeKey: string) => any) | undefined;
37
+ onCopy?: ((event: ClipboardEvent) => any) | undefined;
38
+ onPaste?: ((event: ClipboardEvent) => any) | undefined;
20
39
  onSelectRoute?: ((routeKey: string) => any) | undefined;
21
40
  onLayoutChange?: ((layoutJson: string) => any) | undefined;
41
+ onSelectionChange?: ((keys: string[]) => any) | undefined;
42
+ onUndo?: (() => any) | undefined;
43
+ onRedo?: (() => any) | undefined;
44
+ onCopyShortcut?: (() => any) | undefined;
45
+ onPasteShortcut?: (() => any) | undefined;
46
+ onDeleteSelection?: (() => any) | undefined;
22
47
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
48
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
23
49
  declare const _default: typeof __VLS_export;
24
50
  export default _default;
51
+ type __VLS_WithSlots<T, S> = T & {
52
+ new (): {
53
+ $slots: S;
54
+ };
55
+ };
@@ -7,6 +7,8 @@ export interface FormulaExpressionField {
7
7
  unavailableReason?: string;
8
8
  }
9
9
  export interface FormulaExpressionFunction {
10
+ signature?: string;
11
+ example?: string;
10
12
  name: string;
11
13
  title?: string;
12
14
  description?: string;
@@ -0,0 +1,6 @@
1
+ import type { FormulaExpressionFunction } from './formulaExpressionTokens';
2
+ /** Authoring uses the server parser; this UI never interprets formula source. */
3
+ export interface FormulaExpressionTools {
4
+ loadFunctions(): Promise<readonly FormulaExpressionFunction[]>;
5
+ validate(expression: string): Promise<void>;
6
+ }
@@ -1,4 +1,5 @@
1
1
  export {};
2
+ export type { FormulaExpressionTools } from './formulaExpressionTools';
2
3
  export type { QuerySettlementController } from './querySettlementController';
3
4
  export { default as FormulaExpressionEditor } from './FormulaExpressionEditor.vue';
4
5
  export type { FormulaExpressionField, FormulaExpressionFunction } from './formulaExpressionTokens';
@@ -46,6 +47,7 @@ export { default as RecordDetailExtensionSection } from './RecordDetailExtension
46
47
  export { default as RecordRelationTabs } from './RecordRelationTabs.vue';
47
48
  export { default as DetailRelationListPanel } from './DetailRelationListPanel.vue';
48
49
  export { default as RecordDetailPanel } from './RecordDetailPanel.vue';
50
+ export { default as RecordRelationActionButton } from './RecordRelationActionButton.vue';
49
51
  export { default as RecordPanelButton } from './RecordPanelButton.vue';
50
52
  export { default as RecordSelectionCheckbox } from './RecordSelectionCheckbox.vue';
51
53
  export { default as RecordPanelState } from './RecordPanelState.vue';
@@ -158,3 +160,6 @@ export { default as WorkflowParticipantEditor } from './WorkflowParticipantEdito
158
160
  export { default as WorkflowBusinessTaskEditor } from './WorkflowBusinessTaskEditor.vue';
159
161
  export { default as WorkflowDesignProperties } from './WorkflowDesignProperties.vue';
160
162
  export { default as RecordDataExchangeSurface } from './RecordDataExchangeSurface.vue';
163
+ export { default as TenantScopeExplorer } from './TenantScopeExplorer.vue';
164
+ export { useWorkspaceDetailSurface } from './useWorkspaceDetailSurface';
165
+ export { default as RecordAdaptiveDetailPanel } from './RecordAdaptiveDetailPanel.vue';
@@ -26,3 +26,13 @@ export declare const MANAGEMENT_COLLAPSED_EXPLORER_LAYOUT: {
26
26
  };
27
27
  export declare function collapsedExplorerTabHeight(title: string): number;
28
28
  export declare function listDetailWorkspaceMinWidth(explorerCount: number): number;
29
+ /** Width-based folds are independent of manual folds: closing a navigator must
30
+ * enlarge the primary surface, rather than unexpectedly restoring another one. */
31
+ export declare function workspaceAutoCollapsedIds(options: {
32
+ width: number;
33
+ explorerCount: number;
34
+ explorers: readonly {
35
+ id: string;
36
+ }[];
37
+ primaryMinWidth: number;
38
+ }): string[];
@@ -6,6 +6,7 @@ import type { RecordPickerMode } from './recordPickerModel';
6
6
  import type { ScopedTreePickerProvider } from './scopedTreePickerModel';
7
7
  import type { ReferencePickerColumn, ReferencePickerProvider } from './referencePickerModel';
8
8
  export type RecordFormFieldDescriptor = (ViewFieldDefinition | ResolvedViewFieldDescriptor) & {
9
+ businessCode?: ResolvedViewFieldDescriptor['businessCode'];
9
10
  content?: ResolvedViewFieldDescriptor['content'];
10
11
  inputRequirements?: ResolvedViewFieldDescriptor['inputRequirements'];
11
12
  calculationTiming?: ResolvedViewFieldDescriptor['calculationTiming'];
@@ -97,6 +98,9 @@ export interface RecordFormFieldPickerConfig {
97
98
  };
98
99
  }
99
100
  export interface RecordFormFieldState {
101
+ businessCode?: ResolvedViewFieldDescriptor['businessCode'];
102
+ /** Original input requirement, applied only when the server selects manual entry. */
103
+ businessCodeRequired?: boolean;
100
104
  content?: ResolvedViewFieldDescriptor['content'];
101
105
  calculationPending?: boolean;
102
106
  inputRequirements?: ResolvedViewFieldDescriptor['inputRequirements'];
@@ -0,0 +1,36 @@
1
+ import { type LanguageContext, type ModuleContext } from '../web-core/index';
2
+ import type { BusinessCodeFieldState } from '../web-contracts/index';
3
+ import type { RecordFormFieldDescriptor, RecordFormFieldState, RecordFormRecord } from './recordFormFieldModel';
4
+ /** Candidates live here, separate from the mutation draft and from user-entered manual codes. */
5
+ export declare function useBusinessCodeForm(options: {
6
+ record: () => RecordFormRecord;
7
+ parent: () => RecordFormRecord | undefined;
8
+ context: () => ModuleContext<unknown> | undefined;
9
+ entityAlias: () => string | undefined;
10
+ fields: () => Map<string, RecordFormFieldDescriptor> | undefined;
11
+ fieldNames: () => string[];
12
+ mode: () => 'create' | 'edit' | 'view';
13
+ session: () => string | number | undefined;
14
+ language: LanguageContext;
15
+ }): {
16
+ field: (base: RecordFormFieldState) => RecordFormFieldState;
17
+ errorOf: (name: string) => string | undefined;
18
+ policies: import("vue").Ref<Map<string, {
19
+ fieldName: string;
20
+ mode?: "AUTO" | "MANUAL" | "AUTO_WITH_MANUAL_EDIT" | null | undefined;
21
+ trigger: "SAVE" | "EXPLICIT";
22
+ readOnly: boolean;
23
+ configured: boolean;
24
+ preview?: string | null | undefined;
25
+ }> & Omit<Map<string, BusinessCodeFieldState>, keyof Map<any, any>>, Map<string, BusinessCodeFieldState> | (Map<string, {
26
+ fieldName: string;
27
+ mode?: "AUTO" | "MANUAL" | "AUTO_WITH_MANUAL_EDIT" | null | undefined;
28
+ trigger: "SAVE" | "EXPLICIT";
29
+ readOnly: boolean;
30
+ configured: boolean;
31
+ preview?: string | null | undefined;
32
+ }> & Omit<Map<string, BusinessCodeFieldState>, keyof Map<any, any>>)>;
33
+ loading: import("vue").Ref<boolean, boolean>;
34
+ error: import("vue").Ref<string, string>;
35
+ retry: () => Promise<void>;
36
+ };
@@ -0,0 +1,14 @@
1
+ import { type Ref } from 'vue';
2
+ import type { WorkflowDesign } from '../web-contracts/index';
3
+ /** The design is authoritative; graph cells and viewport transforms are never history entries. */
4
+ export declare function useWorkflowDesignHistory(design: Ref<WorkflowDesign>, limit?: number): {
5
+ /** An async edit may commit only while this design revision and owning scope remain current. */
6
+ checkpoint(): () => boolean;
7
+ canUndo: import("vue").ComputedRef<boolean>;
8
+ canRedo: import("vue").ComputedRef<boolean>;
9
+ dirty: import("vue").ComputedRef<boolean>;
10
+ undo: () => void;
11
+ redo: () => void;
12
+ markSaved: () => void;
13
+ reset: (value: WorkflowDesign, persisted?: WorkflowDesign) => void;
14
+ };
@@ -0,0 +1,3 @@
1
+ import { type MaybeRefOrGetter } from 'vue';
2
+ /** Hidden workspaces retain their last presentation until they have a real width. */
3
+ export declare function useWorkspaceDetailSurface(host: MaybeRefOrGetter<HTMLElement | undefined>, minimumWidth: MaybeRefOrGetter<number>): import("vue").Ref<boolean, boolean>;
@@ -0,0 +1,7 @@
1
+ import type { WorkflowDesign } from '../web-contracts/index';
2
+ export declare function copyWorkflowFragment(design: WorkflowDesign, selected: string[]): string;
3
+ export declare function pasteWorkflowFragment(design: WorkflowDesign, routeKey: string, text: string, prefix: string): {
4
+ design: WorkflowDesign;
5
+ keys: string[];
6
+ reconfigureSelectorKeys: string[];
7
+ };
@@ -2,6 +2,10 @@ import type { WorkflowNode, WorkflowRoute, WorkflowRenderBundle, WorkflowTaskPre
2
2
  import { type LanguageContext } from '../web-core/index';
3
3
  export declare function workflowTitle(value?: string, language?: LanguageContext): string;
4
4
  export declare function workflowNodePresentation<T extends WorkflowNode>(node: T, language: LanguageContext): T;
5
+ /** Node cards and the canvas share categorical type colors; runtime state has its own styling. */
6
+ export declare function workflowNodeAccent(kind: string): string | undefined;
7
+ /** Configuration and rendering share one presentation of the legacy non-blocking approval mode. */
8
+ export declare function workflowNodeKind(node: Pick<WorkflowNode, 'nodeType' | 'approvalMode'>): string;
5
9
  export declare function sameWorkflowTextSource(current: TextPresentation | undefined, next: TextPresentation | undefined): boolean;
6
10
  /** Frozen declarations refresh text independently of the latest check verdict; captured evidence stays intact. */
7
11
  export declare function refreshWorkflowTaskTextResources(current: WorkflowTaskPreparation, next: WorkflowTaskPreparation): WorkflowTaskPreparation;
@@ -19,13 +19,17 @@ type __VLS_Props = {
19
19
  assistantWorkspaceContribution?: AssistantWorkspaceContribution;
20
20
  assistantWaitForPageReady?: () => Promise<string>;
21
21
  };
22
- declare var __VLS_86: {
22
+ declare var __VLS_53: {
23
+ currentUser?: import("../web-contracts/index").CurrentUser;
24
+ }, __VLS_90: {
23
25
  activeTab: MenuTab;
24
26
  target: MenuNavigationTarget | undefined;
25
27
  pageDescriptor: PageDescriptor | undefined;
26
28
  };
27
29
  type __VLS_Slots = {} & {
28
- default?: (props: typeof __VLS_86) => any;
30
+ 'topbar-actions'?: (props: typeof __VLS_53) => any;
31
+ } & {
32
+ default?: (props: typeof __VLS_90) => any;
29
33
  };
30
34
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
31
35
  closeTabs: (keys: string[]) => any;
@@ -5,12 +5,24 @@ type __VLS_Props = {
5
5
  assistantAvailable: boolean;
6
6
  assistantOpen: boolean;
7
7
  };
8
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
8
+ type __VLS_Slots = {
9
+ /** Host-owned global actions, rendered immediately before the account menu. */
10
+ 'topbar-actions'(props: {
11
+ currentUser?: CurrentUser;
12
+ }): unknown;
13
+ };
14
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
9
15
  toggleAssistant: () => any;
10
16
  userCommand: (key: string) => any;
11
17
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
12
18
  onToggleAssistant?: (() => any) | undefined;
13
19
  onUserCommand?: ((key: string) => any) | undefined;
14
20
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
21
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
15
22
  declare const _default: typeof __VLS_export;
16
23
  export default _default;
24
+ type __VLS_WithSlots<T, S> = T & {
25
+ new (): {
26
+ $slots: S;
27
+ };
28
+ };