@nocobase/plugin-workflow 2.1.11 → 2.2.0-alpha.2

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 (233) hide show
  1. package/client-v2.d.ts +2 -0
  2. package/client-v2.js +1 -0
  3. package/dist/client/119.e7dbd037d52d1286.js +10 -0
  4. package/dist/client/142.d84a976875799df4.js +10 -0
  5. package/dist/client/159.3d5abee06b818db3.js +10 -0
  6. package/dist/client/276.69fb2aea13bc7c37.js +10 -0
  7. package/dist/client/346.66d060d37843d3d1.js +10 -0
  8. package/dist/client/382.80ebd002a9971b65.js +10 -0
  9. package/dist/client/394.d7eacf666590a6ae.js +10 -0
  10. package/dist/client/438.c4de8f085e490158.js +10 -0
  11. package/dist/client/509.2f72dd97808f12d1.js +10 -0
  12. package/dist/client/54.c452a382e9b3953d.js +10 -0
  13. package/dist/client/{618.c91be3f6e4d73501.js → 618.a97bc812678ab2a7.js} +1 -1
  14. package/dist/client/635.3f165e9ed7e940b2.js +10 -0
  15. package/dist/client/67.4117e04bd42f9d42.js +10 -0
  16. package/dist/client/719.5801e3f1cf81b97b.js +10 -0
  17. package/dist/client/739.955f18b3dc31ae3a.js +10 -0
  18. package/dist/client/759.13aab01e6912ed8d.js +10 -0
  19. package/dist/client/772.1ebaef11a0ac8688.js +10 -0
  20. package/dist/client/782.332fd345a98b82c2.js +10 -0
  21. package/dist/client/828.77de843c49fb307a.js +10 -0
  22. package/dist/client/87.d2c2b5b1cae08bfc.js +10 -0
  23. package/dist/client/938.77649c32dae1c225.js +10 -0
  24. package/dist/client/964.cb1ecff7a46687b7.js +10 -0
  25. package/dist/client/972.4da2796f3f2df874.js +10 -0
  26. package/dist/client/AddNodeContext.d.ts +1 -9
  27. package/dist/client/Branch.d.ts +1 -1
  28. package/dist/client/BranchContext.d.ts +2 -10
  29. package/dist/client/FlowContext.d.ts +10 -5
  30. package/dist/client/NodeClipboardContext.d.ts +12 -2
  31. package/dist/client/NodeDragContext.d.ts +14 -2
  32. package/dist/client/RemoveNodeContext.d.ts +16 -2
  33. package/dist/client/index.d.ts +1 -1
  34. package/dist/client/index.js +1 -1
  35. package/dist/client/nodeVariableUtils.d.ts +7 -6
  36. package/dist/client/nodes/calculation.d.ts +3 -75
  37. package/dist/client/nodes/condition.d.ts +7 -111
  38. package/dist/client/nodes/create.d.ts +3 -124
  39. package/dist/client/nodes/destroy.d.ts +2 -57
  40. package/dist/client/nodes/end.d.ts +2 -23
  41. package/dist/client/nodes/index.d.ts +2 -91
  42. package/dist/client/nodes/multi-conditions.d.ts +10 -48
  43. package/dist/client/nodes/output.d.ts +2 -44
  44. package/dist/client/nodes/query.d.ts +3 -255
  45. package/dist/client/nodes/update.d.ts +2 -117
  46. package/dist/client/style.d.ts +7 -27
  47. package/dist/client/triggers/collection.d.ts +3 -154
  48. package/dist/client/triggers/index.d.ts +2 -36
  49. package/dist/client/triggers/schedule/index.d.ts +8 -65
  50. package/dist/client/utils.d.ts +4 -5
  51. package/dist/client/variable.d.ts +4 -44
  52. package/dist/client-v2/119.81195bcd0d451279.js +10 -0
  53. package/dist/client-v2/142.3d386748090ff6d3.js +10 -0
  54. package/dist/client-v2/159.cb221540c286cd32.js +10 -0
  55. package/dist/client-v2/224.44a5e1227bee33fb.js +10 -0
  56. package/dist/client-v2/276.43297f402f31970e.js +10 -0
  57. package/dist/client-v2/326.bdc99ad8e7590970.js +10 -0
  58. package/dist/client-v2/346.8c038b3c99d4fdc9.js +10 -0
  59. package/dist/client-v2/382.05f5482bb512b179.js +10 -0
  60. package/dist/client-v2/387.ab3eac2eb447f36f.js +10 -0
  61. package/dist/client-v2/394.515ed058e7f72797.js +10 -0
  62. package/dist/client-v2/438.b7df0416b66f8f64.js +10 -0
  63. package/dist/client-v2/513.ab2bdd96ad9ece4d.js +10 -0
  64. package/dist/client-v2/54.287764bc467d65da.js +10 -0
  65. package/dist/client-v2/635.37de4abe241b30e8.js +10 -0
  66. package/dist/client-v2/719.05cf070ef89a78f4.js +10 -0
  67. package/dist/client-v2/739.906e94bbe6d52a3d.js +10 -0
  68. package/dist/client-v2/759.7b162ad3adf450f1.js +10 -0
  69. package/dist/client-v2/772.8e5148d8c1518449.js +10 -0
  70. package/dist/client-v2/938.717e47af39485b29.js +10 -0
  71. package/dist/client-v2/ExecutionCanvas.d.ts +15 -0
  72. package/dist/client-v2/canvas/AddNodeContext.d.ts +35 -0
  73. package/dist/client-v2/canvas/AddNodeContext.shared.d.ts +33 -0
  74. package/dist/client-v2/canvas/AddNodeSlot.d.ts +20 -0
  75. package/dist/client-v2/canvas/Branch.d.ts +32 -0
  76. package/dist/client-v2/canvas/BranchContext.d.ts +20 -0
  77. package/dist/client-v2/canvas/BranchRenderContext.d.ts +14 -0
  78. package/dist/client-v2/canvas/CanvasContent.d.ts +20 -0
  79. package/dist/client-v2/canvas/DownstreamBranchIndex.d.ts +20 -0
  80. package/dist/client-v2/canvas/Instruction.d.ts +139 -0
  81. package/dist/{client/triggers/schedule/EndsByField.d.ts → client-v2/canvas/JobButton.d.ts} +3 -3
  82. package/dist/client-v2/canvas/Node.d.ts +36 -0
  83. package/dist/client-v2/canvas/NodeClipboardContext.d.ts +64 -0
  84. package/dist/client-v2/canvas/NodeConfigDrawer.d.ts +27 -0
  85. package/dist/client-v2/canvas/NodeDragContext.d.ts +83 -0
  86. package/dist/client-v2/canvas/RemoveNodeContext.d.ts +45 -0
  87. package/dist/client-v2/canvas/WorkflowTypedVariableInput.d.ts +16 -0
  88. package/dist/client-v2/canvas/WorkflowVariableInput.d.ts +39 -0
  89. package/dist/client-v2/canvas/WorkflowVariableJsonTextArea.d.ts +15 -0
  90. package/dist/client-v2/canvas/WorkflowVariableTextArea.d.ts +18 -0
  91. package/dist/client-v2/canvas/adaptVariableOptionToMetaTree.d.ts +48 -0
  92. package/dist/client-v2/canvas/addNodeController.d.ts +70 -0
  93. package/dist/client-v2/canvas/collectionFieldOptions.d.ts +57 -0
  94. package/dist/client-v2/canvas/contexts.d.ts +84 -0
  95. package/dist/client-v2/canvas/dropImpact.d.ts +28 -0
  96. package/dist/client-v2/canvas/instructionAvailability.d.ts +26 -0
  97. package/dist/client-v2/canvas/nodeRenderDispatch.d.ts +79 -0
  98. package/dist/client-v2/canvas/nodeTree.d.ts +21 -0
  99. package/dist/client-v2/canvas/nodeVariableUtils.d.ts +14 -0
  100. package/dist/client-v2/canvas/removeNodeUtils.d.ts +31 -0
  101. package/dist/client-v2/canvas/style.d.ts +35 -0
  102. package/dist/client-v2/canvas/textAreaInsertion.d.ts +14 -0
  103. package/dist/client-v2/canvas/useWorkflowInstruction.d.ts +23 -0
  104. package/dist/client-v2/canvas/useWorkflowVariableOptions.d.ts +40 -0
  105. package/dist/client-v2/canvas/workflowVariableConverters.d.ts +13 -0
  106. package/dist/client-v2/components/Calculation.d.ts +18 -0
  107. package/dist/client-v2/components/ExecutionStatusIcon.d.ts +18 -0
  108. package/dist/{client/triggers/schedule/RepeatField.d.ts → client-v2/components/ExecutionStatusTag.d.ts} +3 -4
  109. package/dist/client-v2/components/ExecutionViewHeader.d.ts +29 -0
  110. package/dist/client-v2/components/ExecutionsDropdown.d.ts +25 -0
  111. package/dist/client-v2/components/FilterDynamicComponent.d.ts +22 -0
  112. package/dist/client-v2/components/HideVariableContext.d.ts +11 -0
  113. package/dist/client-v2/components/JobResultModal.d.ts +11 -0
  114. package/dist/client-v2/components/RadioWithTooltip.d.ts +23 -0
  115. package/dist/client-v2/components/SyncModeSelect.d.ts +16 -0
  116. package/dist/{client/triggers/schedule/OnField.d.ts → client-v2/components/SyncModeTag.d.ts} +3 -3
  117. package/dist/client-v2/components/TestRunButton.d.ts +36 -0
  118. package/dist/client-v2/components/TimeoutInput.d.ts +15 -0
  119. package/dist/client-v2/components/WorkflowCanvasHeader.d.ts +17 -0
  120. package/dist/client-v2/components/WorkflowDetailsModal.d.ts +25 -0
  121. package/dist/client-v2/components/WorkflowEnabledSwitch.d.ts +16 -0
  122. package/dist/client-v2/components/WorkflowMenu.d.ts +17 -0
  123. package/dist/client-v2/components/WorkflowRevisionsDropdown.d.ts +15 -0
  124. package/dist/client-v2/components/WorkflowVariableWrapper.d.ts +25 -0
  125. package/dist/client-v2/components/collection/AppendsSelect.d.ts +15 -0
  126. package/dist/client-v2/components/collection/AssignedFieldsEditor.d.ts +16 -0
  127. package/dist/client-v2/components/collection/CollectionCascader.d.ts +15 -0
  128. package/dist/client-v2/components/collection/FieldsSelect.d.ts +16 -0
  129. package/dist/client-v2/components/collection/PaginationFields.d.ts +14 -0
  130. package/dist/client-v2/components/collection/SortFieldsInput.d.ts +19 -0
  131. package/dist/client-v2/components/collection/TriggerCollectionRecordSelect.d.ts +15 -0
  132. package/dist/client-v2/components/collection/index.d.ts +16 -0
  133. package/dist/client-v2/components/collection/utils.d.ts +42 -0
  134. package/dist/client-v2/components/formatResultForDisplay.d.ts +17 -0
  135. package/dist/client-v2/components/jobStatus.d.ts +27 -0
  136. package/dist/client-v2/components/renderEngineReference.d.ts +10 -0
  137. package/dist/client-v2/components/workflowCanvas.d.ts +41 -0
  138. package/dist/client-v2/constants.d.ts +14 -0
  139. package/dist/client-v2/hooks/useWorkflowRuntimePaths.d.ts +37 -0
  140. package/dist/client-v2/index.d.ts +43 -0
  141. package/dist/client-v2/index.js +10 -0
  142. package/dist/client-v2/locale.d.ts +41 -0
  143. package/dist/{client → client-v2}/models/NodeDetailsGridModel.d.ts +1 -1
  144. package/dist/{client → client-v2}/models/NodeDetailsModel.d.ts +1 -1
  145. package/dist/{client → client-v2}/models/NodeValueModel.d.ts +1 -1
  146. package/dist/{client → client-v2}/models/TaskCardCommonItemModel.d.ts +1 -1
  147. package/dist/{client → client-v2}/models/index.d.ts +1 -0
  148. package/dist/client-v2/models/triggerWorkflows.d.ts +43 -0
  149. package/dist/client-v2/nodes/calculation.d.ts +38 -0
  150. package/dist/client-v2/nodes/collectionNode.d.ts +29 -0
  151. package/dist/client-v2/nodes/components/calculation.d.ts +11 -0
  152. package/dist/client-v2/nodes/components/collection.d.ts +15 -0
  153. package/dist/client-v2/nodes/components/condition.d.ts +25 -0
  154. package/dist/client-v2/nodes/components/conditionShared.d.ts +20 -0
  155. package/dist/client-v2/nodes/components/create.d.ts +12 -0
  156. package/dist/client-v2/nodes/components/destroy.d.ts +12 -0
  157. package/dist/{client/triggers/schedule/ScheduleConfig.d.ts → client-v2/nodes/components/end.d.ts} +1 -1
  158. package/dist/client-v2/nodes/components/filter.d.ts +16 -0
  159. package/dist/client-v2/nodes/components/multi-conditions.d.ts +13 -0
  160. package/dist/client-v2/nodes/components/multiConditionsShared.d.ts +20 -0
  161. package/dist/client-v2/nodes/components/output.d.ts +10 -0
  162. package/dist/client-v2/nodes/components/query.d.ts +12 -0
  163. package/dist/client-v2/nodes/components/update.d.ts +12 -0
  164. package/dist/client-v2/nodes/condition.d.ts +46 -0
  165. package/dist/client-v2/nodes/create.d.ts +30 -0
  166. package/dist/client-v2/nodes/destroy.d.ts +24 -0
  167. package/dist/client-v2/nodes/end.d.ts +21 -0
  168. package/dist/client-v2/nodes/multi-conditions.d.ts +34 -0
  169. package/dist/client-v2/nodes/output.d.ts +29 -0
  170. package/dist/client-v2/nodes/query.d.ts +32 -0
  171. package/dist/client-v2/nodes/update.d.ts +25 -0
  172. package/dist/client-v2/pages/ExecutionHistoryDrawer.d.ts +13 -0
  173. package/dist/client-v2/pages/ExecutionViewPage.d.ts +10 -0
  174. package/dist/client-v2/pages/WorkflowCanvasPage.d.ts +10 -0
  175. package/dist/client-v2/pages/WorkflowCategoryTabs.d.ts +25 -0
  176. package/dist/client-v2/pages/WorkflowFormDrawer.d.ts +39 -0
  177. package/dist/client-v2/pages/WorkflowPane.d.ts +10 -0
  178. package/dist/client-v2/plugin.d.ts +67 -0
  179. package/dist/client-v2/triggers/ExecuteWorkflowButton.d.ts +35 -0
  180. package/dist/client-v2/triggers/TriggerConfig.d.ts +22 -0
  181. package/dist/client-v2/triggers/TriggerExecutionButton.d.ts +13 -0
  182. package/dist/client-v2/triggers/collection/CollectionConfig.d.ts +14 -0
  183. package/dist/client-v2/triggers/collection/TriggerCollectionConfig.d.ts +11 -0
  184. package/dist/client-v2/triggers/collection/constants.d.ts +28 -0
  185. package/dist/client-v2/triggers/collection/index.d.ts +40 -0
  186. package/dist/client-v2/triggers/index.d.ts +61 -0
  187. package/dist/client-v2/triggers/schedule/EndsByField.d.ts +17 -0
  188. package/dist/client-v2/triggers/schedule/OnField.d.ts +20 -0
  189. package/dist/client-v2/triggers/schedule/RepeatField.d.ts +23 -0
  190. package/dist/client-v2/triggers/schedule/ScheduleConfig.d.ts +17 -0
  191. package/dist/client-v2/triggers/schedule/ScheduleModes.d.ts +41 -0
  192. package/dist/{client → client-v2}/triggers/schedule/TriggerScheduleConfig.d.ts +1 -0
  193. package/dist/{client → client-v2}/triggers/schedule/constants.d.ts +8 -5
  194. package/dist/client-v2/triggers/schedule/index.d.ts +40 -0
  195. package/dist/client-v2/triggers/schedule/locale/Cron.zh-CN.d.ts +11 -0
  196. package/dist/common/executionStatus.d.ts +44 -0
  197. package/dist/common/executionStatus.js +133 -0
  198. package/dist/externalVersion.js +16 -12
  199. package/dist/locale/de-DE.json +14 -1
  200. package/dist/locale/en-US.json +21 -1
  201. package/dist/locale/es-ES.json +14 -1
  202. package/dist/locale/fr-FR.json +14 -1
  203. package/dist/locale/hu-HU.json +14 -1
  204. package/dist/locale/id-ID.json +14 -1
  205. package/dist/locale/it-IT.json +14 -1
  206. package/dist/locale/ja-JP.json +14 -1
  207. package/dist/locale/ko-KR.json +14 -1
  208. package/dist/locale/nl-NL.json +14 -1
  209. package/dist/locale/pt-BR.json +14 -1
  210. package/dist/locale/ru-RU.json +14 -1
  211. package/dist/locale/tr-TR.json +14 -1
  212. package/dist/locale/uk-UA.json +14 -1
  213. package/dist/locale/vi-VN.json +14 -1
  214. package/dist/locale/zh-CN.json +20 -1
  215. package/dist/locale/zh-TW.json +14 -1
  216. package/dist/node_modules/cron-parser/package.json +1 -1
  217. package/dist/node_modules/joi/package.json +1 -1
  218. package/dist/node_modules/lru-cache/package.json +1 -1
  219. package/dist/node_modules/nodejs-snowflake/package.json +1 -1
  220. package/dist/server/Processor.d.ts +16 -0
  221. package/dist/server/Processor.js +112 -0
  222. package/dist/server/index.d.ts +1 -1
  223. package/dist/server/instructions/CreateInstruction.js +6 -2
  224. package/dist/server/instructions/DestroyInstruction.js +2 -1
  225. package/dist/server/instructions/QueryInstruction.js +2 -1
  226. package/dist/server/instructions/UpdateInstruction.js +2 -1
  227. package/dist/server/triggers/CollectionTrigger.d.ts +5 -0
  228. package/dist/server/triggers/CollectionTrigger.js +26 -1
  229. package/package.json +3 -2
  230. package/dist/client/67.61e70b8b777f8638.js +0 -10
  231. package/dist/client/964.ffbf5b47ed12bbdc.js +0 -10
  232. package/dist/client/triggers/schedule/ScheduleModes.d.ts +0 -170
  233. package/dist/client/triggers/schedule/locale/Cron.zh-CN.d.ts +0 -42
@@ -0,0 +1,57 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import type React from 'react';
10
+ export type FieldTreeCollectionManager = {
11
+ getCollectionAllFields(collection: string): any[];
12
+ getCollection?(collection: string): {
13
+ template?: string;
14
+ } | undefined;
15
+ };
16
+ export type VariableOption = {
17
+ key?: string;
18
+ value?: string;
19
+ label?: string | React.ReactNode;
20
+ children?: VariableOption[] | null;
21
+ [key: string]: any;
22
+ };
23
+ export type VariableDataType = 'boolean' | 'number' | 'string' | 'date' | {
24
+ type: 'reference';
25
+ options: {
26
+ collection: string;
27
+ multiple?: boolean;
28
+ entity?: boolean;
29
+ };
30
+ } | ((field: any, options: {
31
+ collectionManager?: FieldTreeCollectionManager;
32
+ }) => boolean);
33
+ export type UseVariableOptions = {
34
+ types?: VariableDataType[];
35
+ fieldNames?: {
36
+ label?: string;
37
+ value?: string;
38
+ children?: string;
39
+ };
40
+ appends?: string[] | null;
41
+ depth?: number;
42
+ };
43
+ export declare const defaultFieldNames: {
44
+ readonly label: "label";
45
+ readonly value: "value";
46
+ readonly children: "children";
47
+ };
48
+ /**
49
+ * @deprecated
50
+ */
51
+ export declare const BaseTypeSets: {
52
+ boolean: Set<string>;
53
+ number: Set<string>;
54
+ string: Set<string>;
55
+ date: Set<string>;
56
+ };
57
+ export declare function getCollectionFieldOptions(options: any): VariableOption[];
@@ -0,0 +1,84 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ /**
10
+ * The two canvas React contexts, shared by both canvases (ADR-0003, doc §9.4).
11
+ *
12
+ * Aligns with v1's two-context split:
13
+ * - FlowContext (canvas root) = `{ workflow, nodes, refresh }`
14
+ * - NodeContext (per node) = the node object itself (with live
15
+ * `upstream`/`downstream` linked-list refs)
16
+ *
17
+ * Zero dependencies (bare `React.createContext`), so both v1 and v2 share this
18
+ * one definition. v1 re-exports `NodeContext`/`useNodeContext` from here via the
19
+ * allowed `v1 → v2` import direction.
20
+ *
21
+ * `workflow`/`upstreams` are derived via hooks (`useAvailableUpstreams`), never
22
+ * bundled into the node-context value.
23
+ */
24
+ import React from 'react';
25
+ import type { WorkflowCanvasRecord, WorkflowRevision } from '../components/workflowCanvas';
26
+ /**
27
+ * A canvas node — the live linked-list element produced by `linkNodes`: the flat
28
+ * `flow_nodes` row plus the wired `upstream`/`downstream` object refs. Kept loose
29
+ * (index signature) because node `config` shapes are per-instruction; the named
30
+ * fields are the ones the canvas itself reads.
31
+ */
32
+ export type CanvasNode = {
33
+ id: number;
34
+ key?: string;
35
+ type?: string;
36
+ title?: string;
37
+ config?: Record<string, any>;
38
+ upstreamId?: number | null;
39
+ downstreamId?: number | null;
40
+ branchIndex?: number | null;
41
+ upstream?: CanvasNode | null;
42
+ downstream?: CanvasNode | null;
43
+ [key: string]: any;
44
+ };
45
+ /**
46
+ * The canvas-root context value, shared by both canvases and matching v1's
47
+ * `FlowContext.Provider` shapes:
48
+ * - editor canvas → `{ workflow, nodes, refresh }`
49
+ * - execution canvas → `{ workflow, nodes, execution, viewJob, setViewJob }`
50
+ * - manual-todo canvas → `{ workflow, nodes, execution, userJob }`
51
+ * All fields optional so a consumer reading e.g. only `nodes` is typed against
52
+ * any canvas, and the bare-`{}` default (no provider) still satisfies it.
53
+ */
54
+ export type WorkflowCanvasFlowContextValue = {
55
+ workflow?: WorkflowCanvasRecord | null;
56
+ nodes?: CanvasNode[];
57
+ refresh?: () => void;
58
+ /** Editor canvas: sibling versions of the workflow (the version dropdown). */
59
+ revisions?: WorkflowRevision[];
60
+ /** Execution canvas only: the execution being viewed (read-only nodes). */
61
+ execution?: Record<string, any> | null;
62
+ /** Execution canvas only: the job whose result modal is open. */
63
+ viewJob?: Record<string, any> | null;
64
+ /** Execution canvas only: open/close the job result modal. */
65
+ setViewJob?: (job: Record<string, any> | null) => void;
66
+ /** Manual-todo canvas only (plugin-workflow-manual): the current user job
67
+ * record whose form/status the todo card renders. */
68
+ userJob?: Record<string, any> | null;
69
+ };
70
+ export declare const FlowContext: React.Context<WorkflowCanvasFlowContextValue>;
71
+ export declare function useFlowContext(): WorkflowCanvasFlowContextValue;
72
+ export declare const CurrentWorkflowContext: React.Context<Partial<WorkflowCanvasRecord>>;
73
+ export declare function useCurrentWorkflowContext(): Partial<WorkflowCanvasRecord>;
74
+ export declare const NodeContext: React.Context<CanvasNode>;
75
+ export declare function useNodeContext(): CanvasNode;
76
+ /**
77
+ * The executed-version count of the workflow shown on the canvas — `> 0n` means
78
+ * its nodes are read-only. A BigInt mirroring v1's `useWorkflowExecuted`, reading
79
+ * the same `versionStats.executed` field (the workflow record has NO top-level
80
+ * `executed` — the previous `workflow?.executed` read was always undefined, so
81
+ * the canvas never went read-only after an execution). Callers needing a boolean
82
+ * coerce with `Boolean(...)`.
83
+ */
84
+ export declare function useWorkflowCanvasExecuted(): bigint;
@@ -0,0 +1,28 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ /**
10
+ * Pure graph walks for drag/clipboard impact analysis (ADR-0003, doc §9.6).
11
+ *
12
+ * Relocated verbatim from `src/client/NodeDragContext.tsx` — Formily-free,
13
+ * hook-free — so both canvases' drag/clipboard Providers share one copy of the
14
+ * tricky topology math while each keeps its own hook-ful Provider shell. v1
15
+ * re-exports these; the v1 golden-baseline tests re-run unchanged against this
16
+ * copy.
17
+ */
18
+ /**
19
+ * Walk the full downstream reachable set from `start`: the main chain plus
20
+ * every branch subtree (via `branchChildrenMap: upstreamId → branch-head nodes`).
21
+ */
22
+ export declare function collectDownstreams(start: any, branchChildrenMap: Map<number, any[]>, visited?: Set<number>): Set<number>;
23
+ /**
24
+ * Collect a branching node's own subtree: the node itself plus all of its
25
+ * branch subtrees (but NOT its main-chain downstream). Used to know which nodes
26
+ * move together when a branch node is dragged.
27
+ */
28
+ export declare function collectBranchSubtree(root: any, branchChildrenMap: Map<number, any[]>): Set<number>;
@@ -0,0 +1,26 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import type { SharedAddNodeAnchor } from './AddNodeContext.shared';
10
+ type WorkflowCapabilityContext = SharedAddNodeAnchor & {
11
+ engine: {
12
+ isWorkflowSync(workflow: unknown): boolean;
13
+ };
14
+ workflow?: unknown;
15
+ syncOnly?: boolean;
16
+ };
17
+ type Translate = (key: string, options?: Record<string, unknown>) => string;
18
+ type AvailableInstruction = {
19
+ async?: boolean;
20
+ isAvailable?(ctx: Omit<WorkflowCapabilityContext, 'branchContext'>): boolean;
21
+ };
22
+ export declare function getInstructionUnavailableMessage(instruction: AvailableInstruction, ctx: WorkflowCapabilityContext, t: Translate): string;
23
+ export declare function getInstructionAvailable(instruction: AvailableInstruction, ctx: WorkflowCapabilityContext & {
24
+ t: Translate;
25
+ }): string;
26
+ export {};
@@ -0,0 +1,79 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ /**
10
+ * Which renderer a node uses on the LEGACY canvas, across all three migratable
11
+ * surfaces — the in-canvas card, the config drawer, and the add-time preset
12
+ * (ADR-0003).
13
+ *
14
+ * The dispatch rule is the same for all three and is the key to progressive,
15
+ * surface-by-surface migration: **a v1 artifact always wins.** During migration a
16
+ * node's instruction carries both generations — its own legacy artifact and the
17
+ * modern loader it inherits when the v1 instruction `extends` its v2 counterpart.
18
+ * Keeping the legacy artifact is the opt-out signal ("this surface is not switched
19
+ * to v2 yet"), so the legacy canvas keeps rendering it; only when a node DROPS its
20
+ * legacy artifact (but still inherits the loader) does that one surface render via
21
+ * v2. The three surfaces switch independently — a node can move its card to v2
22
+ * while its drawer stays on Formily, or vice-versa.
23
+ *
24
+ * card: `Component` ⟶ falls back to `ComponentLoader` (this card)
25
+ * drawer: `fieldset` ⟶ falls back to `FieldsetLoader` (this drawer)
26
+ * preset: `presetFieldset` ⟶ falls back to `PresetFieldsetLoader` (this preset)
27
+ *
28
+ * A legacy *schema* artifact (`fieldset` / `presetFieldset`) counts only when it
29
+ * actually has entries — an inherited-but-empty `{}` is treated as absent, so it
30
+ * does not pin a node that meant to drop it.
31
+ *
32
+ * Pure decisions (no JSX, no hooks) so they are unit-testable and shared; the
33
+ * legacy callers read the verdict and render accordingly. The modern canvas does
34
+ * NOT use these — it always renders via the loaders (it never had the legacy
35
+ * artifacts).
36
+ */
37
+ type RenderableInstruction = {
38
+ Component?: unknown;
39
+ ComponentLoader?: unknown;
40
+ };
41
+ type ConfigurableInstruction = {
42
+ fieldset?: unknown;
43
+ FieldsetLoader?: unknown;
44
+ };
45
+ type PresettableInstruction = {
46
+ presetFieldset?: unknown;
47
+ PresetFieldsetLoader?: unknown;
48
+ };
49
+ export type LegacyNodeRenderMode =
50
+ /** Render the legacy Formily `Component` (still on v1, or no v2 loader). */
51
+ 'legacy-component'
52
+ /** Render fully via the modern `ComponentLoader` (v1 dropped its `Component`). */
53
+ | 'modern-loader'
54
+ /** Neither renderer — the legacy canvas falls back to its default card. */
55
+ | 'default-card';
56
+ export type LegacyFieldsetRenderMode =
57
+ /** Render the legacy Formily schema (`fieldset` / `presetFieldset` has entries). */
58
+ 'legacy-fieldset'
59
+ /** Render via the modern loader (the legacy schema was dropped). */
60
+ | 'modern-loader'
61
+ /** Neither — caller applies its own no-config fallback. */
62
+ | 'none';
63
+ export declare function resolveLegacyNodeRenderMode(instruction: RenderableInstruction | undefined): LegacyNodeRenderMode;
64
+ /** Config-drawer dispatch: legacy `fieldset` (with entries) wins, else the modern
65
+ * `FieldsetLoader`, else neither (caller opens its empty Formily drawer). */
66
+ export declare function resolveLegacyConfigRenderMode(instruction: ConfigurableInstruction | undefined): LegacyFieldsetRenderMode;
67
+ /** Add-time preset dispatch: legacy `presetFieldset` (with entries) wins, else the
68
+ * modern `PresetFieldsetLoader`, else neither (caller applies its preset/branch
69
+ * fallback). */
70
+ export declare function resolveLegacyPresetRenderMode(instruction: PresettableInstruction | undefined): LegacyFieldsetRenderMode;
71
+ /**
72
+ * The stable `workflow-node-type-<type>` hook applied to a node's inner card
73
+ * (`nodeClass`), matching the live `next` DOM. It carries no CSS of its own — it
74
+ * lets external code, tests, and debugging target a node by type. Shared so every
75
+ * card stamps it identically regardless of which renderer (Formily `Component`,
76
+ * the v2 default card, or a v2 `ComponentLoader`) draws the node.
77
+ */
78
+ export declare function nodeTypeClassName(type: string | undefined): string;
79
+ export {};
@@ -0,0 +1,21 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ /**
10
+ * Pure node-tree helpers shared by the legacy and modern canvases (ADR-0003).
11
+ *
12
+ * Relocated verbatim from `src/client/utils.ts` — Formily-free, hook-free,
13
+ * no `ctx` reads — so both canvases share one copy. v1 re-exports these from
14
+ * here via the allowed `v1 → v2` import direction; the v1 golden-baseline tests
15
+ * re-run unchanged against this copy.
16
+ */
17
+ /**
18
+ * Wire live `upstream`/`downstream` object refs onto each node from the flat
19
+ * `flow_nodes` list (by `upstreamId`/`downstreamId`). Mutates in place.
20
+ */
21
+ export declare function linkNodes(nodes: any): void;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ export declare function extractDependencyKeys(config: Record<string, any>): Set<string>;
10
+ export declare function stripVariableReferences(value: any, keysToRemove: Set<string>): {
11
+ value: any;
12
+ changed: boolean;
13
+ };
14
+ export declare function collectUpstreams(node: any): Set<number>;
@@ -0,0 +1,31 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ /**
10
+ * Collect a branch subtree: every node reachable from `branchHead` following the
11
+ * `downstream` chain, descending into each node's nested branches (children whose
12
+ * `upstream` is that node and which carry a `branchIndex`). Keyed by node id.
13
+ *
14
+ * Verbatim port of v1's `findBranchNodes` (`client/RemoveNodeContext.tsx`). The
15
+ * linked-list fields (`upstream`/`downstream`) are assumed already wired by
16
+ * `linkNodes`.
17
+ */
18
+ export declare function collectBranchNodes(nodes: any[], branchHead: any): Map<any, any>;
19
+ /**
20
+ * Find the nodes (excluding the target itself) that reference `target`'s output —
21
+ * the set v1 blocks deletion on ("The result of this node has been referenced by
22
+ * other nodes …"). `candidates` is the pool to scan: for a **leaf** node delete
23
+ * it's all other nodes (`$jobsMapByNodeKey` only, `includeScopes: false`); for a
24
+ * **branching** node delete it's the related/downstream subtree
25
+ * (`includeScopes: true`).
26
+ */
27
+ export declare function findNodesReferencing(candidates: any[], target: {
28
+ key: string;
29
+ }, { includeScopes }?: {
30
+ includeScopes?: boolean;
31
+ }): any[];
@@ -0,0 +1,35 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ declare const useStyles: (props?: unknown) => import("antd-style").ReturnStyles<{
10
+ workflowPageClass: import("antd-style").SerializedStyles;
11
+ dropdownClass: import("antd-style").SerializedStyles;
12
+ workflowVersionDropdownClass: import("antd-style").SerializedStyles;
13
+ executionsDropdownRowClass: import("antd-style").SerializedStyles;
14
+ workflowDetailsDescriptionClass: import("antd-style").SerializedStyles;
15
+ branchBlockClass: import("antd-style").SerializedStyles;
16
+ branchClass: import("antd-style").SerializedStyles;
17
+ nodeBlockClass: import("antd-style").SerializedStyles;
18
+ nodeClass: import("antd-style").SerializedStyles;
19
+ nodeCardClass: import("antd-style").SerializedStyles;
20
+ nodeJobButtonClass: import("antd-style").SerializedStyles;
21
+ nodeHeaderClass: import("antd-style").SerializedStyles;
22
+ nodeMetaClass: import("antd-style").SerializedStyles;
23
+ nodeTitleClass: import("antd-style").SerializedStyles;
24
+ nodeSubtreeClass: import("antd-style").SerializedStyles;
25
+ nodeJobResultClass: import("antd-style").SerializedStyles;
26
+ addButtonClass: import("antd-style").SerializedStyles;
27
+ dropZoneClass: import("antd-style").SerializedStyles;
28
+ pasteButtonClass: import("antd-style").SerializedStyles;
29
+ dragPreviewClass: import("antd-style").SerializedStyles;
30
+ clipboardPreviewClass: import("antd-style").SerializedStyles;
31
+ conditionClass: import("antd-style").SerializedStyles;
32
+ loopLineClass: import("antd-style").SerializedStyles;
33
+ terminalClass: import("antd-style").SerializedStyles;
34
+ }>;
35
+ export default useStyles;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ export declare function insertTextAtSelection(value: string, insertText: string, start: number, end: number): {
10
+ nextValue: string;
11
+ nextSelectionStart: number;
12
+ nextSelectionEnd: number;
13
+ };
14
+ export declare function setNativeTextAreaValue(input: HTMLTextAreaElement, value: string): void;
@@ -0,0 +1,23 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import type { Instruction } from './Instruction';
10
+ /** The slice of the workflow client plugin the canvas card needs — the
11
+ * `instructions` registry shared by v1 `PluginWorkflowClient` and v2
12
+ * `PluginWorkflowClientV2`. */
13
+ export type WorkflowInstructionPlugin = {
14
+ instructions: {
15
+ get(type: string): Instruction | undefined;
16
+ };
17
+ };
18
+ /** Resolve the current runtime's workflow client plugin via the neutral
19
+ * `'workflow'` alias — v1's or v2's, whichever this runtime loaded. */
20
+ export declare function useWorkflowPlugin(): WorkflowInstructionPlugin | undefined;
21
+ /** Resolve a node type's instruction in a runtime-neutral way. Uses the shared
22
+ * `instructions` registry (present on both plugins), not v2-only `getInstruction`. */
23
+ export declare function useInstruction(type?: string): Instruction | undefined;
@@ -0,0 +1,40 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import type { MetaTreeNode } from '@nocobase/flow-engine';
10
+ export type UseWorkflowVariableOptions = {
11
+ types?: any[];
12
+ fieldNames?: {
13
+ label?: string;
14
+ value?: string;
15
+ children?: string;
16
+ };
17
+ appends?: string[] | null;
18
+ depth?: number;
19
+ /**
20
+ * Include the `$scopes` root. Scope providers (loop / parallel) building
21
+ * their own local variables must disable this when they call back into the
22
+ * workflow aggregator, otherwise the scope chain recursively nests itself.
23
+ */
24
+ includeScopes?: boolean;
25
+ };
26
+ /**
27
+ * Build the workflow variable MetaTree for the current node's config form.
28
+ * Aggregates every scope in v1's display order, dropping the ones that
29
+ * contribute nothing.
30
+ *
31
+ * The result is **referentially stable** across re-renders for the same inputs
32
+ * (memoized on the current node + upstream/scope node keys + workflow id). This
33
+ * is load-bearing for lazy relation expansion: `TypedVariableInput.loadData`
34
+ * resolves a node's children and mutates them onto the meta node in place, then
35
+ * forces a re-render — if this hook returned a brand-new tree each render, that
36
+ * mutated (resolved) child list would be discarded and the cascader column would
37
+ * spin forever. Memoizing keeps the same tree objects alive so the resolved
38
+ * children survive the re-render.
39
+ */
40
+ export declare function useWorkflowVariableOptions(options?: UseWorkflowVariableOptions): MetaTreeNode[];
@@ -0,0 +1,13 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import type { MetaTreeNode, VariableHybridInputConverters } from '@nocobase/flow-engine';
10
+ export declare const WORKFLOW_VARIABLE_REGEXP: RegExp;
11
+ export declare function formatWorkflowPathToValue(item?: MetaTreeNode): string;
12
+ export declare function parseWorkflowValueToPath(value?: string): string[];
13
+ export declare const workflowVariableConverters: VariableHybridInputConverters;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import type { MetaTreeNode } from '@nocobase/flow-engine';
10
+ import React from 'react';
11
+ export declare const calculators: any;
12
+ export interface CalculationConfigProps {
13
+ value?: any;
14
+ onChange?: (value: any) => void;
15
+ useVariableHook?: () => MetaTreeNode[];
16
+ }
17
+ export declare function CalculationConfig({ value, onChange, useVariableHook, }: CalculationConfigProps): React.JSX.Element;
18
+ export default CalculationConfig;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import React from 'react';
10
+ /**
11
+ * Compact, circular status indicator (icon-only Tag) used where a full status
12
+ * label would be too wide — e.g. the execution-switcher dropdown rows. Mirrors
13
+ * v1's `StatusButton`.
14
+ */
15
+ export declare function ExecutionStatusIcon({ value }: {
16
+ value: number | null;
17
+ }): React.JSX.Element;
18
+ export default ExecutionStatusIcon;
@@ -7,8 +7,7 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
  import React from 'react';
10
- export declare function RepeatField({ value, onChange, disabled }: {
11
- value?: any;
12
- onChange: any;
13
- disabled: any;
10
+ export declare function ExecutionStatusTag({ value }: {
11
+ value: number | null;
14
12
  }): React.JSX.Element;
13
+ export default ExecutionStatusTag;
@@ -0,0 +1,29 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import React from 'react';
10
+ type ExecutionWorkflow = {
11
+ id?: number | string;
12
+ key?: string;
13
+ title?: string;
14
+ };
15
+ type ExecutionViewRecord = {
16
+ id?: number | string;
17
+ key?: string;
18
+ status?: number | null;
19
+ reason?: string;
20
+ createdAt?: string;
21
+ updatedAt?: string;
22
+ workflow?: ExecutionWorkflow;
23
+ };
24
+ export declare function ExecutionViewHeader({ execution, resource, refresh, }: {
25
+ execution: ExecutionViewRecord;
26
+ resource: any;
27
+ refresh: () => void;
28
+ }): React.JSX.Element;
29
+ export default ExecutionViewHeader;
@@ -0,0 +1,25 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import React from 'react';
10
+ export type ExecutionRecord = {
11
+ id?: number | string;
12
+ key?: string;
13
+ status?: number | null;
14
+ createdAt?: string;
15
+ };
16
+ /**
17
+ * Switch between executions of the same workflow. Loads a window of the
18
+ * executions immediately before and after the current one (by id), mirroring
19
+ * v1's prev/next loading.
20
+ */
21
+ export declare function ExecutionsDropdown({ execution, refresh }: {
22
+ execution: ExecutionRecord;
23
+ refresh?: () => void;
24
+ }): React.JSX.Element;
25
+ export default ExecutionsDropdown;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import React from 'react';
10
+ export declare function FilterDynamicComponent({ collection, value, onChange, rightAsVariable, }: {
11
+ collection?: string;
12
+ value?: Record<string, unknown> | null;
13
+ onChange?: (value: Record<string, unknown> | null) => void;
14
+ /**
15
+ * Controls whether the filter row's right-hand value editor allows workflow variables.
16
+ * - `true`: render the RHS as a variable-aware input (constant or workflow variable)
17
+ * - `false`: render the RHS as a pure typed static input with no variable picker
18
+ */
19
+ rightAsVariable?: boolean;
20
+ }): React.JSX.Element;
21
+ export declare const ConditionField: typeof FilterDynamicComponent;
22
+ export default FilterDynamicComponent;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import React from 'react';
10
+ export declare const HideVariableContext: React.Context<boolean>;
11
+ export declare function useHideVariable(): boolean;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import React from 'react';
10
+ export declare function JobResultModal(): React.JSX.Element;
11
+ export default JobResultModal;
@@ -0,0 +1,23 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import React from 'react';
10
+ export interface RadioWithTooltipOption {
11
+ value: any;
12
+ label: string;
13
+ tooltip?: string;
14
+ }
15
+ export interface RadioWithTooltipProps {
16
+ options?: RadioWithTooltipOption[];
17
+ direction?: 'horizontal' | 'vertical';
18
+ value?: any;
19
+ onChange?: (value: any) => void;
20
+ disabled?: boolean;
21
+ }
22
+ export declare function RadioWithTooltip(props: RadioWithTooltipProps): React.JSX.Element;
23
+ export default RadioWithTooltip;