openxiangda 2.34.3 → 2.44.0

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 (242) hide show
  1. package/dist/browser/FilePreviewPage.d.ts.map +1 -1
  2. package/dist/browser/FilePreviewPage.js +4 -2
  3. package/dist/browser/FilePreviewPage.js.map +1 -1
  4. package/dist/browser/ManagedCommand.d.ts +1 -0
  5. package/dist/browser/ManagedCommand.d.ts.map +1 -1
  6. package/dist/browser/ManagedCommand.js +1 -1
  7. package/dist/browser/ManagedCommand.js.map +1 -1
  8. package/dist/browser/Shell.d.ts.map +1 -1
  9. package/dist/browser/Shell.js +1 -1
  10. package/dist/browser/Shell.js.map +1 -1
  11. package/dist/browser/application.d.ts.map +1 -1
  12. package/dist/browser/application.js +5 -4
  13. package/dist/browser/application.js.map +1 -1
  14. package/dist/browser/components/administration/RoleMembershipManager.d.ts +7 -0
  15. package/dist/browser/components/administration/RoleMembershipManager.d.ts.map +1 -0
  16. package/dist/browser/components/administration/RoleMembershipManager.js +724 -0
  17. package/dist/browser/components/administration/RoleMembershipManager.js.map +1 -0
  18. package/dist/browser/components/administration/membership-batch-model.d.ts +17 -0
  19. package/dist/browser/components/administration/membership-batch-model.d.ts.map +1 -0
  20. package/dist/browser/components/administration/membership-batch-model.js +117 -0
  21. package/dist/browser/components/administration/membership-batch-model.js.map +1 -0
  22. package/dist/browser/components/platform-fields/AttachmentFileList.d.ts.map +1 -1
  23. package/dist/browser/components/platform-fields/AttachmentFileList.js +2 -1
  24. package/dist/browser/components/platform-fields/AttachmentFileList.js.map +1 -1
  25. package/dist/browser/components/platform-fields/MobileManagedFileField.d.ts +3 -1
  26. package/dist/browser/components/platform-fields/MobileManagedFileField.d.ts.map +1 -1
  27. package/dist/browser/components/platform-fields/MobileManagedFileField.js +9 -5
  28. package/dist/browser/components/platform-fields/MobileManagedFileField.js.map +1 -1
  29. package/dist/browser/components/resource/SurfaceFields.d.ts +3 -2
  30. package/dist/browser/components/resource/SurfaceFields.d.ts.map +1 -1
  31. package/dist/browser/components/resource/SurfaceFields.js +9 -9
  32. package/dist/browser/components/resource/SurfaceFields.js.map +1 -1
  33. package/dist/browser/components/resource/useResourceFormDrafts.d.ts.map +1 -1
  34. package/dist/browser/components/workflow/StandardWorkflowPages.d.ts +14 -3
  35. package/dist/browser/components/workflow/StandardWorkflowPages.d.ts.map +1 -1
  36. package/dist/browser/components/workflow/StandardWorkflowPages.js +283 -75
  37. package/dist/browser/components/workflow/StandardWorkflowPages.js.map +1 -1
  38. package/dist/browser/components/workflow/WorkflowAssignmentRoutingEditor.d.ts +8 -0
  39. package/dist/browser/components/workflow/WorkflowAssignmentRoutingEditor.d.ts.map +1 -0
  40. package/dist/browser/components/workflow/WorkflowAssignmentRoutingEditor.js +174 -0
  41. package/dist/browser/components/workflow/WorkflowAssignmentRoutingEditor.js.map +1 -0
  42. package/dist/browser/components/workflow/WorkflowAssignmentRoutingManager.d.ts +3 -0
  43. package/dist/browser/components/workflow/WorkflowAssignmentRoutingManager.d.ts.map +1 -0
  44. package/dist/browser/components/workflow/WorkflowAssignmentRoutingManager.js +75 -0
  45. package/dist/browser/components/workflow/WorkflowAssignmentRoutingManager.js.map +1 -0
  46. package/dist/browser/components/workflow/WorkflowBusinessStepRecoveryPanel.d.ts +14 -0
  47. package/dist/browser/components/workflow/WorkflowBusinessStepRecoveryPanel.d.ts.map +1 -0
  48. package/dist/browser/components/workflow/WorkflowBusinessStepRecoveryPanel.js +117 -0
  49. package/dist/browser/components/workflow/WorkflowBusinessStepRecoveryPanel.js.map +1 -0
  50. package/dist/browser/components/workflow/WorkflowDelegationManager.d.ts +14 -0
  51. package/dist/browser/components/workflow/WorkflowDelegationManager.d.ts.map +1 -0
  52. package/dist/browser/components/workflow/WorkflowDelegationManager.js +204 -0
  53. package/dist/browser/components/workflow/WorkflowDelegationManager.js.map +1 -0
  54. package/dist/browser/components/workflow/WorkflowDiagram.d.ts +16 -0
  55. package/dist/browser/components/workflow/WorkflowDiagram.d.ts.map +1 -0
  56. package/dist/browser/components/workflow/WorkflowDiagram.js +110 -0
  57. package/dist/browser/components/workflow/WorkflowDiagram.js.map +1 -0
  58. package/dist/browser/components/workflow/WorkflowFlowCanvas.d.ts +23 -0
  59. package/dist/browser/components/workflow/WorkflowFlowCanvas.d.ts.map +1 -0
  60. package/dist/browser/components/workflow/WorkflowFlowCanvas.js +78 -0
  61. package/dist/browser/components/workflow/WorkflowFlowCanvas.js.map +1 -0
  62. package/dist/browser/components/workflow/WorkflowNodeCard.d.ts +15 -0
  63. package/dist/browser/components/workflow/WorkflowNodeCard.d.ts.map +1 -0
  64. package/dist/browser/components/workflow/WorkflowNodeCard.js +16 -0
  65. package/dist/browser/components/workflow/WorkflowNodeCard.js.map +1 -0
  66. package/dist/browser/components/workflow/WorkflowNodeConfigurationEditor.d.ts +13 -0
  67. package/dist/browser/components/workflow/WorkflowNodeConfigurationEditor.d.ts.map +1 -0
  68. package/dist/browser/components/workflow/WorkflowNodeConfigurationEditor.js +151 -0
  69. package/dist/browser/components/workflow/WorkflowNodeConfigurationEditor.js.map +1 -0
  70. package/dist/browser/components/workflow/WorkflowTaskCommandReceipt.d.ts +10 -0
  71. package/dist/browser/components/workflow/WorkflowTaskCommandReceipt.d.ts.map +1 -0
  72. package/dist/browser/components/workflow/WorkflowTaskCommandReceipt.js +59 -0
  73. package/dist/browser/components/workflow/WorkflowTaskCommandReceipt.js.map +1 -0
  74. package/dist/browser/components/workflow/WorkflowTaskDraftPanel.d.ts +17 -0
  75. package/dist/browser/components/workflow/WorkflowTaskDraftPanel.d.ts.map +1 -0
  76. package/dist/browser/components/workflow/WorkflowTaskDraftPanel.js +136 -0
  77. package/dist/browser/components/workflow/WorkflowTaskDraftPanel.js.map +1 -0
  78. package/dist/browser/components/workflow/WorkflowTaskFiles.d.ts +20 -0
  79. package/dist/browser/components/workflow/WorkflowTaskFiles.d.ts.map +1 -0
  80. package/dist/browser/components/workflow/WorkflowTaskFiles.js +124 -0
  81. package/dist/browser/components/workflow/WorkflowTaskFiles.js.map +1 -0
  82. package/dist/browser/components/workflow/WorkflowTaskForm.d.ts +49 -0
  83. package/dist/browser/components/workflow/WorkflowTaskForm.d.ts.map +1 -0
  84. package/dist/browser/components/workflow/WorkflowTaskForm.js +141 -0
  85. package/dist/browser/components/workflow/WorkflowTaskForm.js.map +1 -0
  86. package/dist/browser/components/workflow/workflow-flow-layout.d.ts +28 -0
  87. package/dist/browser/components/workflow/workflow-flow-layout.d.ts.map +1 -0
  88. package/dist/browser/components/workflow/workflow-flow-layout.js +54 -0
  89. package/dist/browser/components/workflow/workflow-flow-layout.js.map +1 -0
  90. package/dist/browser/components/workflow/workflow-routing-draft.d.ts +4 -0
  91. package/dist/browser/components/workflow/workflow-routing-draft.d.ts.map +1 -0
  92. package/dist/browser/components/workflow/workflow-routing-draft.js +9 -0
  93. package/dist/browser/components/workflow/workflow-routing-draft.js.map +1 -0
  94. package/dist/browser/durable-command.d.ts +9 -0
  95. package/dist/browser/durable-command.d.ts.map +1 -1
  96. package/dist/browser/durable-command.js +67 -13
  97. package/dist/browser/durable-command.js.map +1 -1
  98. package/dist/browser/navigation-guard.d.ts +3 -1
  99. package/dist/browser/navigation-guard.d.ts.map +1 -1
  100. package/dist/browser/navigation-guard.js +7 -3
  101. package/dist/browser/navigation-guard.js.map +1 -1
  102. package/dist/browser/platform-client.d.ts +76 -3
  103. package/dist/browser/platform-client.d.ts.map +1 -1
  104. package/dist/browser/platform-client.js +292 -47
  105. package/dist/browser/platform-client.js.map +1 -1
  106. package/dist/browser/record-detail.css +10 -0
  107. package/dist/browser/runtime-authorization-recovery.d.ts +7 -0
  108. package/dist/browser/runtime-authorization-recovery.d.ts.map +1 -0
  109. package/dist/browser/runtime-authorization-recovery.js +119 -0
  110. package/dist/browser/runtime-authorization-recovery.js.map +1 -0
  111. package/dist/browser/runtime.d.ts +2 -0
  112. package/dist/browser/runtime.d.ts.map +1 -1
  113. package/dist/browser/runtime.js +39 -13
  114. package/dist/browser/runtime.js.map +1 -1
  115. package/dist/browser/styles.css +155 -0
  116. package/dist/browser/workflow-task-command-recovery.d.ts +17 -0
  117. package/dist/browser/workflow-task-command-recovery.d.ts.map +1 -0
  118. package/dist/browser/workflow-task-command-recovery.js +50 -0
  119. package/dist/browser/workflow-task-command-recovery.js.map +1 -0
  120. package/dist/browser/workflow-task-file-upload.d.ts +18 -0
  121. package/dist/browser/workflow-task-file-upload.d.ts.map +1 -0
  122. package/dist/browser/workflow-task-file-upload.js +35 -0
  123. package/dist/browser/workflow-task-file-upload.js.map +1 -0
  124. package/dist/config.d.ts +1 -1
  125. package/dist/config.d.ts.map +1 -1
  126. package/dist/core.d.ts +9 -1
  127. package/dist/core.d.ts.map +1 -1
  128. package/dist/core.js +3 -0
  129. package/dist/core.js.map +1 -1
  130. package/dist/nest.d.ts +2 -2
  131. package/dist/nest.d.ts.map +1 -1
  132. package/dist/nest.js.map +1 -1
  133. package/dist/react.d.ts +10 -2
  134. package/dist/react.d.ts.map +1 -1
  135. package/dist/react.js +9 -1
  136. package/dist/react.js.map +1 -1
  137. package/documentation/administration.md +190 -0
  138. package/documentation/frontend.md +2 -0
  139. package/documentation/getting-started.md +7 -7
  140. package/documentation/managed-concurrency-frontend.md +9 -4
  141. package/documentation/managed-concurrency.md +10 -0
  142. package/documentation/manifest.json +7 -7
  143. package/documentation/workflow-events.md +237 -3
  144. package/package.json +26 -23
  145. package/releases/2.43.0.json +38 -0
  146. package/releases/2.44.0.json +36 -0
  147. package/skills/manifest.json +1 -1
  148. package/skills/openxiangda-v2/SKILL.md +4 -4
  149. package/skills/openxiangda-v2/references/administration.md +190 -0
  150. package/skills/openxiangda-v2/references/frontend.md +2 -0
  151. package/skills/openxiangda-v2/references/getting-started.md +7 -7
  152. package/skills/openxiangda-v2/references/managed-concurrency-frontend.md +9 -4
  153. package/skills/openxiangda-v2/references/managed-concurrency.md +10 -0
  154. package/skills/openxiangda-v2/references/workflow-events.md +237 -3
  155. package/releases/2.0.0.json +0 -50
  156. package/releases/2.0.1.json +0 -39
  157. package/releases/2.1.0.json +0 -44
  158. package/releases/2.1.1.json +0 -48
  159. package/releases/2.10.0.json +0 -42
  160. package/releases/2.11.0.json +0 -41
  161. package/releases/2.12.0.json +0 -38
  162. package/releases/2.13.0.json +0 -41
  163. package/releases/2.13.1.json +0 -33
  164. package/releases/2.13.2.json +0 -31
  165. package/releases/2.14.0.json +0 -41
  166. package/releases/2.15.0.json +0 -40
  167. package/releases/2.16.0.json +0 -41
  168. package/releases/2.17.0.json +0 -39
  169. package/releases/2.17.1.json +0 -34
  170. package/releases/2.18.0.json +0 -37
  171. package/releases/2.18.1.json +0 -31
  172. package/releases/2.18.10.json +0 -29
  173. package/releases/2.18.2.json +0 -30
  174. package/releases/2.18.3.json +0 -30
  175. package/releases/2.18.9.json +0 -37
  176. package/releases/2.19.0.json +0 -38
  177. package/releases/2.2.0.json +0 -48
  178. package/releases/2.2.1.json +0 -35
  179. package/releases/2.2.2.json +0 -34
  180. package/releases/2.20.0.json +0 -36
  181. package/releases/2.20.1.json +0 -30
  182. package/releases/2.20.4.json +0 -30
  183. package/releases/2.21.0.json +0 -35
  184. package/releases/2.21.1.json +0 -36
  185. package/releases/2.21.2.json +0 -34
  186. package/releases/2.21.3.json +0 -31
  187. package/releases/2.21.4.json +0 -31
  188. package/releases/2.22.0.json +0 -35
  189. package/releases/2.22.1.json +0 -32
  190. package/releases/2.22.2.json +0 -35
  191. package/releases/2.22.3.json +0 -32
  192. package/releases/2.22.4.json +0 -33
  193. package/releases/2.22.5.json +0 -31
  194. package/releases/2.22.6.json +0 -29
  195. package/releases/2.22.7.json +0 -29
  196. package/releases/2.23.0.json +0 -34
  197. package/releases/2.24.0.json +0 -33
  198. package/releases/2.24.1.json +0 -33
  199. package/releases/2.24.2.json +0 -31
  200. package/releases/2.24.3.json +0 -33
  201. package/releases/2.25.0.json +0 -31
  202. package/releases/2.25.1.json +0 -33
  203. package/releases/2.25.2.json +0 -32
  204. package/releases/2.25.3.json +0 -32
  205. package/releases/2.26.0.json +0 -41
  206. package/releases/2.27.0.json +0 -38
  207. package/releases/2.28.0.json +0 -37
  208. package/releases/2.28.1.json +0 -34
  209. package/releases/2.29.0.json +0 -37
  210. package/releases/2.29.1.json +0 -34
  211. package/releases/2.29.2.json +0 -32
  212. package/releases/2.3.0.json +0 -37
  213. package/releases/2.30.0.json +0 -34
  214. package/releases/2.31.0.json +0 -39
  215. package/releases/2.31.1.json +0 -38
  216. package/releases/2.31.2.json +0 -34
  217. package/releases/2.31.3.json +0 -32
  218. package/releases/2.31.4.json +0 -33
  219. package/releases/2.31.5.json +0 -33
  220. package/releases/2.31.6.json +0 -29
  221. package/releases/2.31.7.json +0 -29
  222. package/releases/2.31.8.json +0 -33
  223. package/releases/2.31.9.json +0 -33
  224. package/releases/2.32.0.json +0 -38
  225. package/releases/2.33.0.json +0 -33
  226. package/releases/2.34.0.json +0 -38
  227. package/releases/2.34.1.json +0 -34
  228. package/releases/2.34.2.json +0 -36
  229. package/releases/2.34.3.json +0 -35
  230. package/releases/2.4.0.json +0 -37
  231. package/releases/2.4.1.json +0 -35
  232. package/releases/2.5.0.json +0 -37
  233. package/releases/2.6.0.json +0 -37
  234. package/releases/2.7.0.json +0 -37
  235. package/releases/2.7.1.json +0 -31
  236. package/releases/2.8.0.json +0 -32
  237. package/releases/2.8.1.json +0 -30
  238. package/releases/2.9.0.json +0 -33
  239. package/releases/2.9.1.json +0 -31
  240. package/releases/2.9.2.json +0 -33
  241. package/releases/2.9.3.json +0 -31
  242. package/releases/2.9.4.json +0 -37
@@ -1,14 +1,15 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Button, Modal, Result, Spin } from 'antd';
2
+ import { Alert, Button, Modal, Result, Spin } from 'antd';
3
3
  import { createContext, useContext, useEffect, useLayoutEffect, useMemo, useRef, useState, } from 'react';
4
4
  import { Navigate, useLocation, useNavigate } from 'react-router-dom';
5
- import { isApplicationUnauthenticatedError, createAnonymousPublicClient, loadRuntimeAuthorization, loadApplicationLoginSurface, OpenXiangdaPlatformRequestError, subscribePlatformSessionInvalidation, } from './platform-client';
5
+ import { isApplicationUnauthenticatedError, isRuntimeAuthorizationIdentityRejection, createAnonymousPublicClient, loadRuntimeAuthorization, loadApplicationLoginSurface, OpenXiangdaPlatformRequestError, subscribePlatformSessionInvalidation, } from './platform-client';
6
6
  import { applicationCode, applicationName, runtimeMount, setActivePerspectiveCode, } from './runtime-meta';
7
7
  import { ApplicationLoginController, } from './authentication';
8
8
  import { standardRouteManifestDeviceForViewport, } from './route-manifest';
9
9
  const RuntimeContext = createContext(null);
10
10
  export function classifyRuntimeAuthorizationFailure(error) {
11
- if (isApplicationUnauthenticatedError(error))
11
+ if (isApplicationUnauthenticatedError(error) ||
12
+ (error instanceof OpenXiangdaPlatformRequestError && error.status === 401))
12
13
  return 'unauthenticated';
13
14
  if (error instanceof OpenXiangdaPlatformRequestError &&
14
15
  error.status === 403) {
@@ -65,8 +66,10 @@ export function RuntimeBoundary({ children, perspectives = [], authentication =
65
66
  const [attempt, setAttempt] = useState(0);
66
67
  const [identityEpoch, setIdentityEpoch] = useState(0);
67
68
  const [sessionChecking, setSessionChecking] = useState(false);
69
+ const [sessionCheckError, setSessionCheckError] = useState();
68
70
  const [changedAuthorization, setChangedAuthorization] = useState();
69
71
  const recheckEpoch = useRef(0);
72
+ const invalidationEpoch = useRef(0);
70
73
  const [pendingRedirect, setPendingRedirect] = useState();
71
74
  const location = useLocation();
72
75
  const navigate = useNavigate();
@@ -78,9 +81,12 @@ export function RuntimeBoundary({ children, perspectives = [], authentication =
78
81
  const [publicError, setPublicError] = useState();
79
82
  useEffect(() => {
80
83
  let active = true;
84
+ const epoch = invalidationEpoch.current;
85
+ const controller = new AbortController();
81
86
  if (publicPolicy) {
82
87
  setChangedAuthorization(undefined);
83
88
  setSessionChecking(false);
89
+ setSessionCheckError(undefined);
84
90
  setAuthorization(undefined);
85
91
  setError(undefined);
86
92
  setPublicReady(false);
@@ -100,23 +106,27 @@ export function RuntimeBoundary({ children, perspectives = [], authentication =
100
106
  setPublicError(undefined);
101
107
  setChangedAuthorization(undefined);
102
108
  setSessionChecking(false);
109
+ setSessionCheckError(undefined);
103
110
  setAuthorization(undefined);
104
111
  setError(undefined);
105
- void loadRuntimeAuthorization({ refresh: attempt > 0 }).then(value => {
106
- if (!active)
112
+ void loadRuntimeAuthorization({ refresh: attempt > 0, signal: controller.signal }).then(value => {
113
+ if (!active || epoch !== invalidationEpoch.current)
107
114
  return;
108
115
  setAuthorization(value);
109
116
  setIdentityEpoch(epoch => epoch + 1);
110
- }, reason => active &&
117
+ }, reason => active && epoch === invalidationEpoch.current &&
111
118
  setError(reason instanceof Error ? reason : new Error(String(reason))));
112
119
  return () => {
113
120
  active = false;
121
+ controller.abort();
114
122
  };
115
123
  }, [attempt, publicPolicy?.code, publicPolicy?.routeCode]);
116
124
  useEffect(() => subscribePlatformSessionInvalidation(() => {
125
+ invalidationEpoch.current += 1;
117
126
  recheckEpoch.current += 1;
118
127
  setChangedAuthorization(undefined);
119
128
  setSessionChecking(false);
129
+ setSessionCheckError(undefined);
120
130
  setAuthorization(undefined);
121
131
  setError(new OpenXiangdaPlatformRequestError({
122
132
  code: 'APPLICATION_AUTH_UNAUTHENTICATED',
@@ -127,24 +137,29 @@ export function RuntimeBoundary({ children, perspectives = [], authentication =
127
137
  const currentScope = authorization?.identity?.identityScope;
128
138
  const currentUserId = authorization?.identity?.userId;
129
139
  const currentEnvironment = authorization?.identity?.environment.key;
140
+ const currentEnvironmentId = authorization?.identity?.environment.id;
130
141
  useEffect(() => {
131
142
  if (publicPolicy || !authorization || changedAuthorization || error)
132
143
  return;
133
144
  let active = true;
134
145
  let pending = false;
146
+ let controller;
135
147
  const check = () => {
136
148
  if (!active || pending || document.visibilityState === 'hidden')
137
149
  return;
138
150
  pending = true;
151
+ controller = new AbortController();
139
152
  const epoch = ++recheckEpoch.current;
140
153
  setSessionChecking(true);
141
- void loadRuntimeAuthorization({ refresh: true }).then(value => {
154
+ setSessionCheckError(undefined);
155
+ void loadRuntimeAuthorization({ refresh: true, signal: controller.signal }).then(value => {
142
156
  if (!active || epoch !== recheckEpoch.current)
143
157
  return;
144
158
  pending = false;
145
159
  setSessionChecking(false);
146
160
  if (value.identity?.userId === currentUserId &&
147
161
  value.identity?.environment.key === currentEnvironment &&
162
+ value.identity?.environment.id === currentEnvironmentId &&
148
163
  value.identity?.identityScope === currentScope) {
149
164
  setAuthorization(value);
150
165
  }
@@ -157,8 +172,14 @@ export function RuntimeBoundary({ children, perspectives = [], authentication =
157
172
  return;
158
173
  pending = false;
159
174
  setSessionChecking(false);
160
- setAuthorization(undefined);
161
- setError(reason instanceof Error ? reason : new Error(String(reason)));
175
+ const failure = reason instanceof Error ? reason : new Error(String(reason));
176
+ if (isRuntimeAuthorizationIdentityRejection(failure)) {
177
+ setAuthorization(undefined);
178
+ setError(failure);
179
+ }
180
+ else {
181
+ setSessionCheckError(failure);
182
+ }
162
183
  });
163
184
  };
164
185
  const onVisible = () => {
@@ -170,10 +191,11 @@ export function RuntimeBoundary({ children, perspectives = [], authentication =
170
191
  return () => {
171
192
  active = false;
172
193
  recheckEpoch.current += 1;
194
+ controller?.abort();
173
195
  window.removeEventListener('focus', check);
174
196
  document.removeEventListener('visibilitychange', onVisible);
175
197
  };
176
- }, [currentScope, currentUserId, currentEnvironment, Boolean(authorization), Boolean(changedAuthorization), Boolean(error), publicPolicy?.code]);
198
+ }, [currentScope, currentUserId, currentEnvironment, currentEnvironmentId, Boolean(authorization), Boolean(changedAuthorization), Boolean(error), publicPolicy?.code]);
177
199
  const identity = authorization?.identity || null;
178
200
  const production = identity?.environment.key === 'production' ||
179
201
  runtimeMount()?.environmentKey === 'production';
@@ -210,7 +232,7 @@ export function RuntimeBoundary({ children, perspectives = [], authentication =
210
232
  }
211
233
  return _jsx(AnonymousPublicRuntime, { children: children });
212
234
  }
213
- return (_jsxs(_Fragment, { children: [_jsx(Modal, { open: sessionChecking, closable: false, footer: null, maskClosable: false, keyboard: false, centered: true, children: _jsx(Spin, { description: "\u6B63\u5728\u6838\u5BF9\u5F53\u524D\u767B\u5F55\u8EAB\u4EFD\u4E0E\u6743\u9650" }) }), changedAuthorization ? (_jsx(Result, { status: "warning", title: "\u767B\u5F55\u8EAB\u4EFD\u6216\u6743\u9650\u5DF2\u53D8\u5316", subTitle: "\u65E7\u9875\u9762\u5DF2\u505C\u6B62\u4F7F\u7528\u3002\u672A\u4FDD\u5B58\u5185\u5BB9\u4E0D\u4F1A\u8DE8\u8D26\u53F7\u6216\u6743\u9650\u4F5C\u7528\u57DF\u63D0\u4EA4\u3002", extra: _jsx(Button, { type: "primary", onClick: () => {
235
+ return (_jsxs(_Fragment, { children: [_jsx(Modal, { open: sessionChecking, closable: false, footer: null, maskClosable: false, keyboard: false, centered: true, children: _jsx(Spin, { description: "\u6B63\u5728\u6838\u5BF9\u5F53\u524D\u767B\u5F55\u8EAB\u4EFD\u4E0E\u6743\u9650" }) }), sessionCheckError && authorization?.identity && _jsx(Alert, { type: "warning", showIcon: true, title: "\u6682\u65F6\u65E0\u6CD5\u6838\u5BF9\u767B\u5F55\u72B6\u6001", description: "\u7F51\u7EDC\u6216\u5E73\u53F0\u670D\u52A1\u6682\u65F6\u4E0D\u53EF\u7528\uFF0C\u5DF2\u4FDD\u7559\u5F53\u524D\u9875\u9762\u4E0E\u539F\u7533\u8BF7\uFF1B\u8BF7\u7A0D\u540E\u91CD\u65B0\u68C0\u67E5\u3002", action: _jsx(Button, { onClick: () => window.dispatchEvent(new Event('focus')), children: "\u91CD\u65B0\u68C0\u67E5" }) }), changedAuthorization ? (_jsx(Result, { status: "warning", title: "\u767B\u5F55\u8EAB\u4EFD\u6216\u6743\u9650\u5DF2\u53D8\u5316", subTitle: "\u65E7\u9875\u9762\u5DF2\u505C\u6B62\u4F7F\u7528\u3002\u672A\u4FDD\u5B58\u5185\u5BB9\u4E0D\u4F1A\u8DE8\u8D26\u53F7\u6216\u6743\u9650\u4F5C\u7528\u57DF\u63D0\u4EA4\u3002", extra: _jsx(Button, { type: "primary", onClick: () => {
214
236
  setAuthorization(changedAuthorization);
215
237
  setChangedAuthorization(undefined);
216
238
  setIdentityEpoch(epoch => epoch + 1);
@@ -220,7 +242,7 @@ export function RuntimeBoundary({ children, perspectives = [], authentication =
220
242
  } })) : error &&
221
243
  failureKind === 'unauthenticated' &&
222
244
  deviceLoginContribution ? (_jsx(Navigate, { replace: true, to: `${deviceLoginContribution.surface.path}?returnTo=${encodeURIComponent(currentReturnTo)}` })) : error && failureKind === 'forbidden' ? (_jsx(Result, { status: "403", title: "\u5F53\u524D\u8D26\u53F7\u65E0\u6743\u8BBF\u95EE\u6B64\u5E94\u7528", subTitle: "\u5F53\u524D\u8EAB\u4EFD\u5DF2\u767B\u5F55\uFF0C\u4F46\u7F3A\u5C11\u8BBF\u95EE\u8BE5\u5E94\u7528\u6216\u5F53\u524D\u529F\u80FD\u6240\u9700\u7684\u6388\u6743\u3002", extra: _jsx(Button, { onClick: () => setAttempt(value => value + 1), children: "\u91CD\u65B0\u68C0\u67E5" }) })) : error ? (_jsx(Result, { status: "error", title: "\u767B\u5F55\u4E0E\u6743\u9650\u670D\u52A1\u6682\u65F6\u4E0D\u53EF\u7528", subTitle: "\u7F51\u7EDC\u6216\u5E73\u53F0\u670D\u52A1\u5F02\u5E38\uFF1B\u5F53\u524D\u4F1A\u8BDD\u4E0D\u4F1A\u56E0\u6B64\u88AB\u6E05\u9664\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002", extra: _jsx(Button, { onClick: () => setAttempt(value => value + 1), children: "\u91CD\u8BD5" }) })) : authorization?.state === 'unassigned' ? (_jsx(Result, { status: "403", title: "\u5C1A\u672A\u5206\u914D\u5E94\u7528\u89D2\u8272", subTitle: "\u8BF7\u8054\u7CFB\u5E94\u7528\u7BA1\u7406\u5458\uFF0C\u4E3A\u5F53\u524D\u7528\u6237\u5206\u914D\u81F3\u5C11\u4E00\u4E2A\u5F53\u524D\u73AF\u5883\u4E2D\u7684\u5E94\u7528\u89D2\u8272\u3002", extra: _jsx(Button, { onClick: () => setAttempt(value => value + 1), children: "\u91CD\u65B0\u68C0\u67E5" }) })) : identity && authorization ? (loginContribution ? (pendingRedirect ? _jsx("div", { className: "oxa-loading", children: _jsx(Spin, { description: "\u6B63\u5728\u8FD4\u56DE\u539F\u9875\u9762" }) }) :
223
- _jsx(AuthenticatedLoginReturn, { returnTo: declaredReturnTo, device: loginContribution.surface.device })) : (_jsx(ActiveRuntime, { authorization: authorization, identityEpoch: identityEpoch, perspectives: perspectives, children: children }))) : (_jsx("div", { className: "oxa-loading", children: _jsx(Spin, { description: "\u6B63\u5728\u8BFB\u53D6\u5F53\u524D\u7528\u6237\u7684\u89D2\u8272\u5E76\u96C6\u4E0E\u6743\u9650" }) }))] }));
245
+ _jsx(AuthenticatedLoginReturn, { returnTo: declaredReturnTo, device: loginContribution.surface.device })) : (_jsx(ActiveRuntime, { authorization: authorization, identityEpoch: identityEpoch, perspectives: perspectives, children: children }))) : (_jsx("div", { className: "oxa-loading", children: _jsx(Spin, { description: "\u6B63\u5728\u8FDE\u63A5\u5E94\u7528\uFF0C\u8BBF\u95EE\u8F83\u591A\u65F6\u5C06\u81EA\u52A8\u7B49\u5F85\uFF0C\u8BF7\u7A0D\u5019" }) }))] }));
224
246
  }
225
247
  function AnonymousPublicRuntime({ children }) {
226
248
  const environmentKey = runtimeMount()?.environmentKey || 'preproduction';
@@ -331,9 +353,13 @@ function writePerspectivePreference(key, code) {
331
353
  }
332
354
  }
333
355
  export function useRuntime() {
334
- const value = useContext(RuntimeContext);
356
+ const value = useOptionalRuntime();
335
357
  if (!value)
336
358
  throw new Error('OPENXIANGDA_RUNTIME_NOT_READY');
337
359
  return value;
338
360
  }
361
+ /** Injected Surfaces may be rendered without a live runtime (for example SSR). */
362
+ export function useOptionalRuntime() {
363
+ return useContext(RuntimeContext);
364
+ }
339
365
  //# sourceMappingURL=runtime.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/browser/runtime.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/browser/runtime.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+
1
2
  @import './mobile-fields.css';
2
3
  @import './record-detail.css';
3
4
 
@@ -2926,3 +2927,157 @@
2926
2927
  .oxa-form-full .oxa-actions > button:first-child { margin-right: auto; }
2927
2928
  .oxa-form-scroll > .ant-alert { margin: 12px 16px; }
2928
2929
  .oxa-form-overlay .oxa-settings-actions { padding: 12px; }
2930
+ .oxa-workflow-diagram { min-width: 0; min-height: 0; display: flex; flex-direction: column; height: 100%; background: var(--ant-color-bg-container, #fff); }
2931
+ .oxa-workflow-diagram-tools { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; padding: 12px 16px; border-bottom: 1px solid var(--ant-color-border-secondary, #e8edf2); font-size: 12px; }
2932
+ .oxa-workflow-node-search { display: flex; gap: 8px; min-width: 0; flex: 1; max-width: 460px; }
2933
+ .oxa-workflow-node-search > .ant-input-search { width: 190px; }
2934
+ .oxa-workflow-node-search > .ant-select { flex: 1; min-width: 130px; }
2935
+ .oxa-workflow-readonly { margin-left: auto; color: var(--ant-color-text-secondary, #748092); white-space: nowrap; display: flex; align-items: center; gap: 5px; }
2936
+ .oxa-workflow-canvas { position: relative; flex: 1; min-height: 440px; height: clamp(440px, 64dvh, 850px); background: #f5f7fa; }
2937
+ .oxa-workflow-reactflow { width: 100%; height: 100%; }
2938
+ .oxa-workflow-canvas-loading { max-width: 340px; margin: 90px auto; padding: 24px; }
2939
+ .oxa-workflow-diagram .react-flow__node { border: 0; padding: 0; }
2940
+ .oxa-workflow-diagram .react-flow__handle { width: 6px; height: 6px; background: #aab4c1; border: 2px solid #fff; pointer-events: none; }
2941
+ .oxa-workflow-node { position: relative; box-sizing: border-box; display: flex; align-items: center; gap: 12px; width: 100%; height: 100%; min-height: 92px; padding: 16px 20px; text-align: left; background: var(--ant-color-bg-container, #fff); color: var(--ant-color-text, #263446); border: 1px solid #d6dde6; border-radius: 10px; cursor: pointer; line-height: 1.6; box-shadow: 0 2px 5px rgba(31, 54, 80, .045); transition: border-color 160ms, box-shadow 160ms, background 160ms; font-family: inherit; }
2942
+ .oxa-workflow-node:hover { border-color: #aab9c9; box-shadow: 0 4px 12px rgba(31, 54, 80, .08); }
2943
+ .oxa-workflow-node.selected { border-color: var(--ant-color-primary, #1677ff); background: var(--ant-color-primary-bg, #eef6ff); box-shadow: 0 0 0 2px var(--ant-color-primary-border, #c4dfff); }
2944
+ .oxa-workflow-node:focus-visible { outline: 3px solid var(--ant-color-primary, #1677ff); outline-offset: 4px; }
2945
+ .oxa-workflow-node-icon { flex: 0 0 32px; width: 32px; height: 32px; display: grid; place-items: center; background: #f1f4f8; color: #65758b; border-radius: 8px; font-size: 17px; }
2946
+ .oxa-workflow-node.selected .oxa-workflow-node-icon { background: var(--ant-color-primary-bg-hover, #dcecff); color: var(--ant-color-primary, #1677ff); }
2947
+ .oxa-workflow-node-copy { min-width: 0; flex: 1; }
2948
+ .oxa-workflow-node strong { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; font-size: 14px; font-weight: 600; margin: 2px 0 3px; line-height: 1.5; }
2949
+ .oxa-workflow-node small, .oxa-workflow-node-kind { display: block; font-size: 11px; color: var(--ant-color-text-secondary, #748092); }
2950
+ .oxa-workflow-node small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
2951
+ .oxa-workflow-node.visited { border-left: 3px solid var(--ant-color-success, #389e0d); }
2952
+ .oxa-workflow-node-status { position: absolute; top: -10px; right: 12px; font-size: 10px; padding: 1px 6px; color: #3f6b42; background: #f0f8f0; border: 1px solid #d4e7d3; border-radius: 4px; }
2953
+ .oxa-workflow-node-status.status-error { color: #a33731; background: #fff1f0; border-color: #eccdca; }
2954
+ .oxa-workflow-edge-label { position: absolute; pointer-events: all; max-width: 226px; border: 1px solid #e0e6ed; border-radius: 5px; padding: 4px 8px; background: #fdfefe; color: #66758a; font-family: inherit; font-size: 11px; text-align: left; cursor: pointer; box-shadow: 0 1px 3px rgba(31, 54, 80, .025); }
2955
+ .oxa-workflow-edge-label.branch { width: 226px; }
2956
+ .oxa-workflow-edge-label > span { display: flex; align-items: center; gap: 6px; }
2957
+ .oxa-workflow-edge-label span b { font-size: 10px; background: #eef2f6; padding: 0 4px; border-radius: 3px; font-variant-numeric: tabular-nums; }
2958
+ .oxa-workflow-edge-label span small { color: #3f6b42; margin-left: auto; font-size: 10px; }
2959
+ .oxa-workflow-edge-label strong { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 12px; font-weight: 500; color: var(--ant-color-text, #334155); margin-top: 2px; }
2960
+ .oxa-workflow-edge-label.selected { border-color: var(--ant-color-primary-border, #91caff); }
2961
+ .oxa-workflow-edge-label.executed { border-color: #aad19e; }
2962
+ .oxa-workflow-edge-label:focus-visible { outline: 2px solid var(--ant-color-primary, #1677ff); outline-offset: 2px; }
2963
+ .oxa-workflow-viewport-tools { position: absolute; left: 16px; bottom: 42px; display: flex; align-items: center; gap: 2px; background: #fff; border: 1px solid #e0e6ed; border-radius: 8px; padding: 3px; box-shadow: 0 3px 12px rgba(31, 54, 80, .07); }
2964
+ .oxa-workflow-viewport-tools > span { min-width: 44px; text-align: center; font-size: 12px; color: #66758a; font-variant-numeric: tabular-nums; }
2965
+ .oxa-workflow-viewport-tools .ant-btn { border: 0; box-shadow: none; }
2966
+ .oxa-workflow-graph-help { position: absolute; left: 16px; bottom: 13px; color: #748092; font-size: 11px; pointer-events: none; }
2967
+ .oxa-workflow-diagram .react-flow__minimap { background: rgba(255,255,255,.9); border: 1px solid #e0e6ed; border-radius: 8px; overflow: hidden; box-shadow: none; }
2968
+ .oxa-workflow-node-list { margin: 0; padding: 12px 16px 12px 38px; max-height: min(780px, 65dvh); overflow: auto; color: #748092; scrollbar-width: thin; }
2969
+ .oxa-workflow-node-list > li { padding: 8px 0; }
2970
+ .oxa-workflow-node-list .oxa-workflow-node { min-height: 106px; }
2971
+ .oxa-workflow-node-list ul { padding: 8px 0 8px 12px; font-size: 12px; line-height: 1.8; }
2972
+ .oxa-workflow-node-list ul button:not(.ant-btn) { border: 0; background: transparent; color: var(--ant-color-primary, #1677ff); text-align: left; cursor: pointer; overflow-wrap: anywhere; }
2973
+ @media (max-width: 700px) {
2974
+ .oxa-workflow-diagram-tools { padding: 12px; gap: 10px; }
2975
+ .oxa-workflow-diagram-tools .ant-segmented { display: none; }
2976
+ .oxa-workflow-node-search { width: 100%; max-width: none; flex-basis: 100%; }
2977
+ .oxa-workflow-node-search > .ant-input-search { width: 45%; }
2978
+ .oxa-workflow-readonly { font-size: 11px; }
2979
+ }
2980
+ .oxa-workflow-config .ant-drawer-body { padding: 20px 24px; }
2981
+ .oxa-workflow-config-context { margin-bottom: 16px; }
2982
+ .oxa-workflow-config-context h4 { margin: 0 0 8px; }
2983
+ .oxa-workflow-config-help { color: var(--ant-color-text-secondary, #748092); font-size: 13px; line-height: 1.7; margin: 0 0 20px; }
2984
+ .oxa-workflow-config .ant-tabs-nav { margin-bottom: 20px; }
2985
+ .oxa-workflow-provider-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; width: 100%; }
2986
+ .oxa-workflow-provider-options .ant-radio-wrapper, .oxa-workflow-mode-options .ant-radio-wrapper { border: 1px solid var(--ant-color-border-secondary, #e0e6ed); border-radius: 6px; padding: 12px; margin: 0; align-items: start; }
2987
+ .oxa-workflow-provider-options .ant-radio-wrapper-checked, .oxa-workflow-mode-options .ant-radio-wrapper-checked { border-color: var(--ant-color-primary, #1677ff); background: var(--ant-color-primary-bg, #eef6ff); }
2988
+ .oxa-workflow-mode-options { display: flex; flex-direction: column; gap: 8px; width: 100%; }
2989
+ .oxa-workflow-mode-options b { display: block; font-weight: 500; }
2990
+ .oxa-workflow-mode-options small { display: block; margin-top: 2px; color: var(--ant-color-text-secondary, #748092); }
2991
+ .oxa-workflow-config-scope { border-left: 2px solid var(--ant-color-border, #d6dde6); padding-left: 12px; margin: 0 0 24px; line-height: 1.7; font-size: 13px; }
2992
+ .oxa-workflow-operation-row { padding: 16px 0; border-bottom: 1px solid var(--ant-color-border-secondary, #e0e6ed); }
2993
+ .oxa-workflow-operation-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
2994
+ .oxa-workflow-operation-row .ant-form-item { margin-bottom: 12px; }
2995
+ .oxa-workflow-operation-row small { color: var(--ant-color-text-secondary, #748092); }
2996
+ .oxa-workflow-config-reason { border-top: 1px solid var(--ant-color-border-secondary, #e0e6ed); margin-top: 24px; padding-top: 20px; }
2997
+ .oxa-workflow-config-footer { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
2998
+ .oxa-workflow-routing-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin: 20px 0 12px; }
2999
+ .oxa-workflow-routing-toolbar > span { color: var(--ant-color-text-secondary, #748092); font-size: 13px; }
3000
+ .oxa-workflow-routing-form-row { display: grid; grid-template-columns: 1fr 1fr; column-gap: 16px; }
3001
+ .oxa-workflow-routing-definition { margin-top: 20px; padding: 12px 0; border-top: 1px solid var(--ant-color-border-secondary, #e0e6ed); font-size: 13px; }
3002
+ .oxa-workflow-routing-definition p { color: var(--ant-color-text-secondary, #748092); line-height: 1.6; }
3003
+ @media (max-width: 600px) { .oxa-workflow-routing-form-row { grid-template-columns: 1fr; } .oxa-workflow-routing .ant-drawer-body { padding: 16px; } }
3004
+ .oxa-workflow-config-footer > span { font-size: 12px; color: var(--ant-color-text-secondary, #748092); }
3005
+ @media (max-width: 700px) {
3006
+ .oxa-workflow-config .ant-drawer-body { padding: 16px; }
3007
+ .oxa-workflow-config-footer > span { display: none; }
3008
+ .oxa-workflow-config-footer { justify-content: flex-end; }
3009
+ }
3010
+
3011
+ /* Shared role administration: the application theme remains the visual owner. */
3012
+ .oxa-member-management { min-width: 0; color: var(--ant-color-text, #262b34); }
3013
+ .oxa-member-layout { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 24px; margin-top: 16px; }
3014
+ .oxa-member-roles { border-right: 1px solid var(--ant-color-border-secondary, #e8ebf0); padding-right: 20px; min-width: 0; }
3015
+ .oxa-member-role-title { font-size: 13px; font-weight: 600; margin: 0 0 12px; color: var(--ant-color-text-secondary, #687080); }
3016
+ .oxa-member-role-buttons { display: grid; gap: 4px; max-height: 60vh; overflow: auto; }
3017
+ .oxa-member-role-buttons button { font: inherit; text-align: left; border: 0; border-radius: 6px; background: transparent; padding: 10px 12px; color: inherit; cursor: pointer; overflow-wrap: anywhere; }
3018
+ .oxa-member-role-buttons button.active { background: var(--ant-color-primary-bg, #edf4ff); color: var(--ant-color-primary, #1677ff); }
3019
+ .oxa-member-role-buttons button:hover { background: var(--ant-color-fill-tertiary, #f4f6f9); }
3020
+ .oxa-member-role-buttons button:focus-visible { outline: 2px solid var(--ant-color-primary, #1677ff); outline-offset: -2px; }
3021
+ .oxa-member-role-buttons small { display: block; font-size: 12px; margin-top: 4px; font-weight: 400; color: var(--ant-color-text-secondary, #687080); }
3022
+ .oxa-member-role-select { display: none; }
3023
+ .oxa-member-main { min-width: 0; }
3024
+ .oxa-member-toolbar, .oxa-member-selection, .oxa-member-footer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; }
3025
+ .oxa-member-toolbar h3 { margin: 0 0 4px; font-size: 16px; }
3026
+ .oxa-member-help { font-size: 13px; color: var(--ant-color-text-secondary, #687080); line-height: 1.6; overflow-wrap: anywhere; }
3027
+ .oxa-member-toolbar p { margin: 0; }
3028
+ .oxa-member-filters { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 12px; }
3029
+ .oxa-member-filters > * { min-width: 150px; flex: 1 1 150px; max-width: 260px; }
3030
+ .oxa-member-filters > .ant-btn { flex: 0 0 auto; min-width: auto; }
3031
+ .oxa-member-selection { padding: 10px 0; font-size: 13px; color: var(--ant-color-text-secondary, #687080); }
3032
+ .oxa-member-sub { display: block; font-size: 12px; line-height: 1.6; color: var(--ant-color-text-secondary, #687080); overflow-wrap: anywhere; }
3033
+ .oxa-member-picker .ant-select { width: 100%; }
3034
+ .oxa-member-operation-id { display: block; font: 11px/1.6 ui-monospace, monospace; color: var(--ant-color-text-secondary, #687080); overflow-wrap: anywhere; user-select: all; }
3035
+ .oxa-member-time-grid, .oxa-member-diff { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
3036
+ .oxa-member-diff section { min-width: 0; overflow-wrap: anywhere; }
3037
+ .oxa-member-diff h4 { margin: 0 0 12px; font-size: 13px; }
3038
+ .oxa-member-draft-summary { border-left: 3px solid var(--ant-color-primary, #1677ff); padding: 4px 0 4px 16px; margin: 0 0 20px; overflow-wrap: anywhere; }
3039
+ .oxa-member-draft-summary p { margin: 6px 0; }
3040
+ .oxa-member-draft-summary span, .oxa-member-footer > span { font-size: 12px; color: var(--ant-color-text-secondary, #687080); }
3041
+ @media (max-width: 700px) {
3042
+ .oxa-member-layout { grid-template-columns: minmax(0, 1fr); gap: 16px; }
3043
+ .oxa-member-roles { border: 0; padding: 0; }
3044
+ .oxa-member-role-buttons { display: none; }
3045
+ .oxa-member-role-select { display: block; width: 100%; }
3046
+ .oxa-member-filters > * { min-width: 0; max-width: none; flex: 1 1 140px; }
3047
+ .oxa-member-time-grid, .oxa-member-diff { grid-template-columns: minmax(0, 1fr); gap: 8px; }
3048
+ .oxa-member-footer .ant-space { width: 100%; }
3049
+ }
3050
+ .oxa-workflow-delegation-manager { min-width: 0; width: 100%; }
3051
+ .oxa-workflow-task-form { margin: 16px 0 24px; padding: 20px 0; border-top: 1px solid var(--ant-color-border-secondary, #e0e6ed); min-width: 0; }
3052
+ .oxa-workflow-task-form .ant-form { max-width: 680px; margin-top: 20px; }
3053
+ .oxa-workflow-task-form .ant-alert { margin: 16px 0; }
3054
+ .oxa-workflow-task-drafts { padding: 12px 16px; background: var(--ant-color-fill-quaternary, #f7f9fc); border-radius: 8px; }
3055
+ .oxa-workflow-task-drafts > .ant-typography:last-child { margin-top: 10px; margin-bottom: 0; }
3056
+ .oxa-workflow-draft-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; padding: 16px 0; border-bottom: 1px solid var(--ant-color-border-secondary, #e0e6ed); }
3057
+ .oxa-workflow-draft-row .ant-typography { margin-bottom: 0; }
3058
+ .oxa-workflow-draft-review { max-height: 55dvh; overflow: auto; }
3059
+ .oxa-workflow-task-readonly { margin-bottom: 20px; line-height: 1.7; overflow-wrap: anywhere; }
3060
+ .oxa-workflow-task-readonly > div { margin-top: 4px; }
3061
+ .oxa-workflow-task-required { margin-bottom: 20px; }
3062
+ .oxa-workflow-task-required .ant-form-item { margin-bottom: 4px; }
3063
+ .oxa-workflow-task-required-hint { font-size: 12px; }
3064
+ .oxa-workflow-task-form-mobile { padding: 16px 0; }
3065
+ .oxa-workflow-task-form-mobile .ant-alert { display: flex; flex-wrap: wrap; gap: 8px; }
3066
+ .oxa-delegation-toolbar { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 12px; }
3067
+ .oxa-delegation-toolbar .ant-input-search { flex: 1 1 220px; max-width: 340px; min-width: 0; }
3068
+ .oxa-delegation-toolbar .ant-select { min-width: 140px; max-width: 100%; }
3069
+ .oxa-workflow-delegation-manager .ant-table-wrapper { min-width: 0; }
3070
+ .oxa-workflow-delegation-manager .ant-alert, .oxa-workflow-delegation-editor .ant-alert { margin-bottom: 16px; }
3071
+ .oxa-workflow-delegation-editor .ant-form { margin-top: 20px; }
3072
+ .oxa-workflow-delegation-editor .ant-picker { width: 100%; }
3073
+ .oxa-delegation-dates { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px; }
3074
+ .oxa-delegation-candidate-paging { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-top: 8px; font-size: 12px; }
3075
+ .oxa-delegation-preview { margin: 16px 0; padding: 12px 16px; border: 1px solid var(--ant-color-border, #d9d9d9); border-radius: 6px; }
3076
+ .oxa-delegation-preview h3 { font-size: 14px; margin: 0 0 12px; }
3077
+ .oxa-delegation-preview p { overflow-wrap: anywhere; }
3078
+ .oxa-workflow-delegation-editor code { overflow-wrap: anywhere; }
3079
+ @media (max-width: 575px) {
3080
+ .oxa-delegation-dates { grid-template-columns: minmax(0, 1fr); gap: 0; }
3081
+ .oxa-delegation-toolbar .ant-input-search { flex-basis: 100%; max-width: 100%; }
3082
+ .oxa-delegation-toolbar .ant-select { flex: 1 1 140px; min-width: 0; }
3083
+ }
@@ -0,0 +1,17 @@
1
+ import type { SubmissionLocatorStorage } from './workflow-submission-recovery';
2
+ /** Locator only. Never persist the original token, operation input or form values. */
3
+ export interface PendingWorkflowTaskCommand {
4
+ taskId: string;
5
+ command: string;
6
+ idempotencyKey: string;
7
+ requestedAt: string;
8
+ tokenDigest: string;
9
+ }
10
+ export declare function workflowTaskCommandScope(appCode: string, environmentId: string, userId: string, taskId: string): string;
11
+ export declare function readPendingWorkflowTaskCommand(storage: SubmissionLocatorStorage | undefined, scope: string): PendingWorkflowTaskCommand | null;
12
+ export declare function writePendingWorkflowTaskCommand(storage: SubmissionLocatorStorage | undefined, scope: string, value: PendingWorkflowTaskCommand): boolean;
13
+ export declare function clearPendingWorkflowTaskCommand(storage: SubmissionLocatorStorage | undefined, scope: string, idempotencyKey: string): void;
14
+ export declare function workflowCommandTokenDigest(token: string): Promise<string>;
15
+ /** Only a first-attempt, structured server rejection proves no successful write. */
16
+ export declare function workflowTaskCommandWasRejected(error: unknown): boolean;
17
+ //# sourceMappingURL=workflow-task-command-recovery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-task-command-recovery.d.ts","sourceRoot":"","sources":["../../src/browser/workflow-task-command-recovery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAE/E,sFAAsF;AACtF,MAAM,WAAW,0BAA0B;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,UAE9G;AAED,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,wBAAwB,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,0BAA0B,GAAG,IAAI,CAW9I;AAED,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,wBAAwB,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAOxJ;AAED,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,wBAAwB,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,QAInI;AAED,wBAAsB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAG/E;AAED,oFAAoF;AACpF,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAItE"}
@@ -0,0 +1,50 @@
1
+ export function workflowTaskCommandScope(appCode, environmentId, userId, taskId) {
2
+ return `openxiangda:pending-task-command:v1:${JSON.stringify([appCode, environmentId, userId, taskId])}`;
3
+ }
4
+ export function readPendingWorkflowTaskCommand(storage, scope) {
5
+ try {
6
+ const raw = storage?.getItem(scope);
7
+ if (!raw || raw.length > 2048)
8
+ return null;
9
+ const value = JSON.parse(raw);
10
+ if (!value || Object.keys(value).sort().join(',') !== 'command,idempotencyKey,requestedAt,taskId,tokenDigest'
11
+ || ![value.taskId, value.command, value.idempotencyKey].every(item => typeof item === 'string' && item.length > 0 && item.length <= 255)
12
+ || typeof value.tokenDigest !== 'string' || !/^[a-f0-9]{64}$/.test(value.tokenDigest)
13
+ || typeof value.requestedAt !== 'string' || !Number.isFinite(Date.parse(value.requestedAt)))
14
+ return null;
15
+ return value;
16
+ }
17
+ catch {
18
+ return null;
19
+ }
20
+ }
21
+ export function writePendingWorkflowTaskCommand(storage, scope, value) {
22
+ try {
23
+ if (!storage)
24
+ return false;
25
+ storage.setItem(scope, JSON.stringify({ taskId: value.taskId, command: value.command,
26
+ idempotencyKey: value.idempotencyKey, requestedAt: value.requestedAt, tokenDigest: value.tokenDigest }));
27
+ return true;
28
+ }
29
+ catch {
30
+ return false;
31
+ }
32
+ }
33
+ export function clearPendingWorkflowTaskCommand(storage, scope, idempotencyKey) {
34
+ try {
35
+ if (readPendingWorkflowTaskCommand(storage, scope)?.idempotencyKey === idempotencyKey)
36
+ storage?.removeItem(scope);
37
+ }
38
+ catch { /* The in-memory request remains available. */ }
39
+ }
40
+ export async function workflowCommandTokenDigest(token) {
41
+ const digest = await globalThis.crypto.subtle.digest('SHA-256', new TextEncoder().encode(token));
42
+ return Array.from(new Uint8Array(digest), byte => byte.toString(16).padStart(2, '0')).join('');
43
+ }
44
+ /** Only a first-attempt, structured server rejection proves no successful write. */
45
+ export function workflowTaskCommandWasRejected(error) {
46
+ const value = error;
47
+ return Boolean(value && [400, 401, 403, 404, 409, 413, 422].includes(value.status || 0)
48
+ && /^(WORKFLOW_(V2|TASK)_|OPENXIANGDA_NATIVE_)/.test(value.code || ''));
49
+ }
50
+ //# sourceMappingURL=workflow-task-command-recovery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-task-command-recovery.js","sourceRoot":"","sources":["../../src/browser/workflow-task-command-recovery.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import type { DataFileRef, WorkflowTaskFileUpload, WorkflowTaskFileUploadPlan } from 'openxiangda-contracts/browser';
2
+ /** Transient bytes and the original intent. Never persist this object or its upload plan. */
3
+ export interface WorkflowTaskFileUploadIntent {
4
+ taskId: string;
5
+ input: WorkflowTaskFileUpload;
6
+ file: File;
7
+ phase: 'initiate' | 'upload' | 'complete';
8
+ }
9
+ export interface WorkflowTaskFileUploadTransport {
10
+ initiate: (taskId: string, input: WorkflowTaskFileUpload) => Promise<WorkflowTaskFileUploadPlan>;
11
+ read: (taskId: string, fileId: string) => Promise<WorkflowTaskFileUploadPlan>;
12
+ put: (plan: WorkflowTaskFileUploadPlan, file: File) => Promise<void>;
13
+ complete: (taskId: string, fileId: string) => Promise<DataFileRef>;
14
+ }
15
+ export declare function assertWorkflowTaskFileUploadPlan(intent: WorkflowTaskFileUploadIntent, plan: WorkflowTaskFileUploadPlan): void;
16
+ /** A ready receipt is final. A lost completion response never causes another PUT. */
17
+ export declare function runWorkflowTaskFileUpload(intent: WorkflowTaskFileUploadIntent, transport: WorkflowTaskFileUploadTransport, recovery?: boolean): Promise<DataFileRef>;
18
+ //# sourceMappingURL=workflow-task-file-upload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-task-file-upload.d.ts","sourceRoot":"","sources":["../../src/browser/workflow-task-file-upload.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAErH,6FAA6F;AAC7F,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,sBAAsB,CAAC;IAC9B,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;CAC3C;AAED,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,sBAAsB,KAAK,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACjG,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,0BAA0B,CAAC,CAAC;IAC9E,GAAG,EAAE,CAAC,IAAI,EAAE,0BAA0B,EAAE,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;CACpE;AAED,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,4BAA4B,EAAE,IAAI,EAAE,0BAA0B,QAMtH;AAED,qFAAqF;AACrF,wBAAsB,yBAAyB,CAAC,MAAM,EAAE,4BAA4B,EAAE,SAAS,EAAE,+BAA+B,EAAE,QAAQ,UAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,CAmBxK"}
@@ -0,0 +1,35 @@
1
+ export function assertWorkflowTaskFileUploadPlan(intent, plan) {
2
+ const { input } = intent;
3
+ if (plan.file.id !== input.id || plan.fieldCode !== input.fieldCode ||
4
+ plan.file.name !== input.fileName || plan.file.size !== input.fileSize ||
5
+ plan.file.contentType !== (input.contentType || '') || !['pending', 'ready'].includes(plan.state))
6
+ throw new Error('WORKFLOW_TASK_FILE_UPLOAD_RESPONSE_INVALID');
7
+ }
8
+ /** A ready receipt is final. A lost completion response never causes another PUT. */
9
+ export async function runWorkflowTaskFileUpload(intent, transport, recovery = false) {
10
+ let plan;
11
+ if (recovery) {
12
+ try {
13
+ plan = await transport.read(intent.taskId, intent.input.id);
14
+ }
15
+ catch (error) {
16
+ if (error.code !== 'WORKFLOW_TASK_FILE_NOT_FOUND')
17
+ throw error;
18
+ plan = await transport.initiate(intent.taskId, intent.input);
19
+ }
20
+ }
21
+ else
22
+ plan = await transport.initiate(intent.taskId, intent.input);
23
+ assertWorkflowTaskFileUploadPlan(intent, plan);
24
+ if (plan.state === 'ready')
25
+ return plan.file;
26
+ if (intent.phase !== 'complete') {
27
+ intent.phase = 'upload';
28
+ await transport.put(plan, intent.file);
29
+ }
30
+ intent.phase = 'complete';
31
+ const file = await transport.complete(intent.taskId, intent.input.id);
32
+ assertWorkflowTaskFileUploadPlan(intent, { ...plan, file, state: 'ready' });
33
+ return file;
34
+ }
35
+ //# sourceMappingURL=workflow-task-file-upload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-task-file-upload.js","sourceRoot":"","sources":["../../src/browser/workflow-task-file-upload.ts"],"names":[],"mappings":"AAiBA,MAAM,UAAU,gCAAgC,CAAC,MAAoC,EAAE,IAAgC;IACrH,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IACzB,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;QACjE,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,QAAQ;QACtE,IAAI,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;QACjG,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;AAClE,CAAC;AAED,qFAAqF;AACrF,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,MAAoC,EAAE,SAA0C,EAAE,QAAQ,GAAG,KAAK;IAChJ,IAAI,IAAgC,CAAC;IACrC,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,CAAC;YAAC,IAAI,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAAC,CAAC;QACpE,OAAO,KAAK,EAAE,CAAC;YACb,IAAK,KAA2B,CAAC,IAAI,KAAK,8BAA8B;gBAAE,MAAM,KAAK,CAAC;YACtF,IAAI,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;;QAAM,IAAI,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IACpE,gCAAgC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC/C,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC;IAC7C,IAAI,MAAM,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;QAChC,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC;QACxB,MAAM,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IACD,MAAM,CAAC,KAAK,GAAG,UAAU,CAAC;IAC1B,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACtE,gCAAgC,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5E,OAAO,IAAI,CAAC;AACd,CAAC"}
package/dist/config.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  export { defineOpenXiangdaApp, defineApplicationModule, materializeApplicationModules, defineDataModel, defineResourceForm, defineResourceList, defineAdminNavigation, adminNavigationGroup, adminResourcePage, adminOperationPage, adminApplicationTodoCenterPage, renderAdminNavigationSuggestion, suggestAdminNavigation, composeAppOperationSchemas, composeJsonSchema, currentUserDataPolicy, dataPolicyExpression, resourceRecordSchema, resourceReadPolicy, resourceCapabilityCodes, resourceRoleCapabilities, schemaRef, type AppDataFieldAccessDeclaration, type AppDataFieldDeclaration, type AppDataResourceDeclaration, type AppDataModelDeclaration, type AppModelFieldDeclaration, type AppModuleDeclaration, type AppCrudViewDeclaration, type AppResourceFormDeclaration, type AppResourceListDeclaration, type AdminNavigationSuggestionSource, type WorkflowDefinitionDeclaration, type OpenXiangdaAppConfig, type OpenXiangdaAppDeclaration, type AppOperationSchemasInput, type JsonSchemaDefinitions, type ResourceRecordSchemaOptions, } from 'openxiangda-devkit-core';
2
- export type { ManagedConcurrencyDeclaration, ManagedReadDeclaration, QueuedCommandDeclaration, IntegerQuotaDeclaration, AdmissionPolicy, ConcurrencyBinding, ConcurrencyParameter, } from 'openxiangda-contracts';
2
+ export type { WorkflowTaskPage, WorkflowTaskPageField, WorkflowApprovalNode, WorkflowBusinessStepNode, WorkflowBusinessStepInput, ManagedConcurrencyDeclaration, ManagedReadDeclaration, QueuedCommandDeclaration, IntegerQuotaDeclaration, AdmissionPolicy, ConcurrencyBinding, ConcurrencyParameter, } from 'openxiangda-contracts';
3
3
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EAGvB,6BAA6B,EAC7B,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,8BAA8B,EAC9B,+BAA+B,EAC/B,sBAAsB,EACtB,0BAA0B,EAC1B,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,EACvB,wBAAwB,EACxB,SAAS,EACT,KAAK,6BAA6B,EAClC,KAAK,uBAAuB,EAC5B,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,EAC/B,KAAK,+BAA+B,EACpC,KAAK,6BAA6B,EAClC,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC1B,KAAK,2BAA2B,GACjC,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACV,6BAA6B,EAAE,sBAAsB,EAAE,wBAAwB,EAC/E,uBAAuB,EAAE,eAAe,EAAE,kBAAkB,EAAE,oBAAoB,GACnF,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EAGvB,6BAA6B,EAC7B,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,8BAA8B,EAC9B,+BAA+B,EAC/B,sBAAsB,EACtB,0BAA0B,EAC1B,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,EACvB,wBAAwB,EACxB,SAAS,EACT,KAAK,6BAA6B,EAClC,KAAK,uBAAuB,EAC5B,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,EAC/B,KAAK,+BAA+B,EACpC,KAAK,6BAA6B,EAClC,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC1B,KAAK,2BAA2B,GACjC,MAAM,yBAAyB,CAAC;AACjC,YAAY,EACV,gBAAgB,EAAE,qBAAqB,EAAE,oBAAoB,EAC7D,wBAAwB,EAAE,yBAAyB,EACnD,6BAA6B,EAAE,sBAAsB,EAAE,wBAAwB,EAC/E,uBAAuB,EAAE,eAAe,EAAE,kBAAkB,EAAE,oBAAoB,GACnF,MAAM,uBAAuB,CAAC"}
package/dist/core.d.ts CHANGED
@@ -1,8 +1,16 @@
1
1
  export { createManagedConcurrencyClient } from './browser/platform-client';
2
2
  export * from './browser/managed-command';
3
3
  export type { ManagedReadResult, CommandReceipt, WaitingReceipt } from 'openxiangda-contracts/browser';
4
- export type { BusinessProcessCommand, BusinessProcessCommandQuery, BusinessProcessCommandList, DataAuditEntry, DataAuditPage, DataAggregateMeasureType, DataAggregatePage, DataAggregateQuery, DataBatchQueryItemResult, DataBatchQueryOperation, DataBatchQueryRequest, DataBatchQueryResult, DataExportRequest, DataFieldOption, DataFieldSourcePage, DataFieldSourceQuery, DataFieldSourceLaunchBinding, DataFieldSurface, DataFilePreview, DataFileRef, DataFileUploadPlan, DataFileDownloadSession, DataFileOutputRequest, DataFileOutputPlan, DataPage, DataQuery, DataRecord, DataResourceSurface, DataTransactionOperation, DataDecimalReservationTransition, DataTransactionRequest, DataTransactionResult, DataWhere, DirectoryEntry, DirectoryEntryPage, DirectoryResolveRequest, LabeledValue, NativeAuthorizationManagementCatalog, NativeAuthorizationMutationReceipt, NativeRoleManagementAction, NativeRoleManagementAuthority, NativeRoleManagementGrant, NativeRoleManagementGrantMutationResult, NativeRoleManagementGrantPage, NativeRoleMembership, NativeRoleMembershipMutationResult, NativeRoleMembershipPage, NativeScopeGrant, NotificationDeliveryV2, NotificationMessageDetailV2, NotificationReadReceiptV2, ResourceReferenceValue, RuntimeAuthorizationContext, RuntimeAuthorizationIdentity, StableAddressValue, StableLocationValue, SubjectProfile, WorkflowDetailNavigation, WorkflowBusinessData, WorkflowBusinessDataStatus, WorkflowCommandResult, WorkflowDetailSurfaceV2, WorkflowInstance, WorkflowSurface, WorkflowTask, WorkflowTimeline, WorkflowWorkCenterItem, } from 'openxiangda-contracts/browser';
4
+ export type { BusinessProcessCommand, BusinessProcessCommandQuery, BusinessProcessCommandList, DataAuditEntry, DataAuditPage, DataAggregateMeasureType, DataAggregatePage, DataAggregateQuery, DataBatchQueryItemResult, DataBatchQueryOperation, DataBatchQueryRequest, DataBatchQueryResult, DataExportRequest, DataFieldOption, DataFieldSourcePage, DataFieldSourceQuery, DataFieldSourceLaunchBinding, DataFieldSurface, DataFilePreview, DataFileRef, DataFileUploadPlan, DataFileDownloadSession, DataFileOutputRequest, DataFileOutputPlan, DataPage, DataQuery, DataRecord, DataResourceSurface, DataTransactionOperation, DataDecimalReservationTransition, DataTransactionRequest, DataTransactionResult, DataWhere, DirectoryEntry, DirectoryEntryPage, DirectoryResolveRequest, LabeledValue, NativeAuthorizationManagementCatalog, NativeAuthorizationMutationReceipt, NativeRoleManagementAction, NativeRoleManagementAuthority, NativeRoleManagementGrant, NativeRoleManagementGrantMutationResult, NativeRoleManagementGrantPage, NativeRoleMembership, NativeRoleMembershipMutationResult, NativeRoleMembershipPage, NativeScopeGrant, NativeRoleManagementScopeValuePage, WorkflowRoleReference, WorkflowRoleReferencePage, NotificationDeliveryV2, NotificationMessageDetailV2, NotificationReadReceiptV2, ResourceReferenceValue, RuntimeAuthorizationContext, RuntimeAuthorizationIdentity, StableAddressValue, StableLocationValue, SubjectProfile, WorkflowDetailNavigation, WorkflowBusinessData, WorkflowBusinessDataStatus, WorkflowCommandResult, WorkflowDetailSurfaceV2, WorkflowInstance, WorkflowSurface, WorkflowTask, WorkflowTaskDraft, WorkflowTaskDraftSave, WorkflowTaskDraftReference, WorkflowTaskDraftList, WorkflowTaskFileUpload, WorkflowTaskFileUploadPlan, WorkflowTimeline, WorkflowWorkCenterItem, } from 'openxiangda-contracts/browser';
5
5
  export * from './browser/platform-client';
6
+ export type { WorkflowBusinessStepSummary, WorkflowBusinessStepRecoveryOptions, WorkflowBusinessStepRecoveryPreview } from 'openxiangda-contracts/browser';
7
+ export { formatWorkflowExpression, projectWorkflowGraph } from 'openxiangda-contracts/browser';
8
+ export type { WorkflowReadability, WorkflowGraphProjection, WorkflowGraphVariable, WorkflowGraphEdge, WorkflowGraphVisit, WorkflowGraphReadResult, WorkflowInstanceGraphReadResult } from 'openxiangda-contracts/browser';
9
+ export { WORKFLOW_CONFIGURABLE_OPERATIONS, WORKFLOW_CONFIGURABLE_PROVIDERS, validateWorkflowNodeConfigurationPatch, projectWorkflowNodePolicy } from 'openxiangda-contracts/browser';
10
+ export type { ApplicationAdministrationContext, WorkflowApprovalAdministration, WorkflowApprovalMode, WorkflowConfigurableOperation, WorkflowFieldPolicy, WorkflowNodeOperationPolicy, WorkflowNodeConfigurations, WorkflowNodeConfigurationPatch, WorkflowNodeConfigurationMutation, WorkflowNodeConfigurationReceipt } from 'openxiangda-contracts/browser';
11
+ export { validateWorkflowAssignmentRoutingRules } from 'openxiangda-contracts/browser';
12
+ export type { WorkflowAssignmentRoutingPolicy, WorkflowAssignmentRoutingRule, WorkflowAssignmentRoutingConfiguration, WorkflowAssignmentRoutingMutation, WorkflowAssignmentRoutingReceipt, WorkflowAssignmentRoutingCatalog, WorkflowAssignmentRoutingHistory } from 'openxiangda-contracts/browser';
13
+ export type { NativeRoleMembershipBatchInput, NativeRoleMembershipBatchItem, NativeRoleMembershipBatchResult, NativeRoleMembershipBatchItemResult, NativeRoleMembershipChange } from 'openxiangda-contracts/browser';
6
14
  export * from './browser/runtime-meta';
7
15
  export * from './browser/components/platform-fields/resource-query';
8
16
  export type * from './browser/components/resource/generated-resource-definition';