@nocobase/plugin-workflow 2.2.0-alpha.1 → 2.2.0-alpha.3

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 (241) 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.a97bc812678ab2a7.js +10 -0
  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 -26
  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/WorkflowVariableSelect.d.ts +29 -0
  91. package/dist/client-v2/canvas/WorkflowVariableTag.d.ts +22 -0
  92. package/dist/client-v2/canvas/WorkflowVariableTextArea.d.ts +18 -0
  93. package/dist/client-v2/canvas/adaptVariableOptionToMetaTree.d.ts +48 -0
  94. package/dist/client-v2/canvas/addNodeController.d.ts +70 -0
  95. package/dist/client-v2/canvas/collectionFieldOptions.d.ts +57 -0
  96. package/dist/client-v2/canvas/contexts.d.ts +84 -0
  97. package/dist/client-v2/canvas/dropImpact.d.ts +28 -0
  98. package/dist/client-v2/canvas/instructionAvailability.d.ts +26 -0
  99. package/dist/client-v2/canvas/nodeRenderDispatch.d.ts +79 -0
  100. package/dist/client-v2/canvas/nodeTree.d.ts +21 -0
  101. package/dist/client-v2/canvas/nodeVariableUtils.d.ts +14 -0
  102. package/dist/client-v2/canvas/removeNodeUtils.d.ts +31 -0
  103. package/dist/client-v2/canvas/style.d.ts +35 -0
  104. package/dist/client-v2/canvas/textAreaInsertion.d.ts +14 -0
  105. package/dist/client-v2/canvas/useWorkflowInstruction.d.ts +23 -0
  106. package/dist/client-v2/canvas/useWorkflowVariableOptions.d.ts +40 -0
  107. package/dist/client-v2/canvas/workflowVariableConverters.d.ts +13 -0
  108. package/dist/client-v2/components/Calculation.d.ts +18 -0
  109. package/dist/client-v2/components/ExecutionStatusIcon.d.ts +18 -0
  110. package/dist/{client/triggers/schedule/RepeatField.d.ts → client-v2/components/ExecutionStatusTag.d.ts} +3 -4
  111. package/dist/client-v2/components/ExecutionViewHeader.d.ts +29 -0
  112. package/dist/client-v2/components/ExecutionsDropdown.d.ts +25 -0
  113. package/dist/client-v2/components/FilterDynamicComponent.d.ts +22 -0
  114. package/dist/client-v2/components/HideVariableContext.d.ts +11 -0
  115. package/dist/client-v2/components/JobResultModal.d.ts +11 -0
  116. package/dist/client-v2/components/RadioWithTooltip.d.ts +23 -0
  117. package/dist/client-v2/components/SyncModeSelect.d.ts +16 -0
  118. package/dist/{client/triggers/schedule/OnField.d.ts → client-v2/components/SyncModeTag.d.ts} +3 -3
  119. package/dist/client-v2/components/TestRunButton.d.ts +36 -0
  120. package/dist/client-v2/components/TimeoutInput.d.ts +15 -0
  121. package/dist/client-v2/components/WorkflowCanvasHeader.d.ts +17 -0
  122. package/dist/client-v2/components/WorkflowDetailsModal.d.ts +25 -0
  123. package/dist/client-v2/components/WorkflowEnabledSwitch.d.ts +16 -0
  124. package/dist/client-v2/components/WorkflowMenu.d.ts +17 -0
  125. package/dist/client-v2/components/WorkflowRevisionsDropdown.d.ts +15 -0
  126. package/dist/client-v2/components/WorkflowVariableWrapper.d.ts +25 -0
  127. package/dist/client-v2/components/collection/AppendsSelect.d.ts +15 -0
  128. package/dist/client-v2/components/collection/AssignedFieldsEditor.d.ts +16 -0
  129. package/dist/client-v2/components/collection/CollectionCascader.d.ts +15 -0
  130. package/dist/client-v2/components/collection/FieldsSelect.d.ts +16 -0
  131. package/dist/client-v2/components/collection/PaginationFields.d.ts +14 -0
  132. package/dist/client-v2/components/collection/SortFieldsInput.d.ts +19 -0
  133. package/dist/client-v2/components/collection/TriggerCollectionRecordSelect.d.ts +15 -0
  134. package/dist/client-v2/components/collection/index.d.ts +16 -0
  135. package/dist/client-v2/components/collection/utils.d.ts +42 -0
  136. package/dist/client-v2/components/formatResultForDisplay.d.ts +17 -0
  137. package/dist/client-v2/components/jobStatus.d.ts +27 -0
  138. package/dist/client-v2/components/renderEngineReference.d.ts +10 -0
  139. package/dist/client-v2/components/workflowCanvas.d.ts +41 -0
  140. package/dist/client-v2/constants.d.ts +14 -0
  141. package/dist/client-v2/hooks/useWorkflowRuntimePaths.d.ts +37 -0
  142. package/dist/client-v2/index.d.ts +47 -0
  143. package/dist/client-v2/index.js +10 -0
  144. package/dist/client-v2/locale.d.ts +41 -0
  145. package/dist/{client → client-v2}/models/NodeDetailsGridModel.d.ts +1 -1
  146. package/dist/{client → client-v2}/models/NodeDetailsModel.d.ts +1 -1
  147. package/dist/{client → client-v2}/models/NodeValueModel.d.ts +1 -1
  148. package/dist/{client → client-v2}/models/TaskCardCommonItemModel.d.ts +1 -1
  149. package/dist/{client → client-v2}/models/index.d.ts +1 -0
  150. package/dist/client-v2/models/triggerWorkflows.d.ts +43 -0
  151. package/dist/client-v2/nodes/calculation.d.ts +38 -0
  152. package/dist/client-v2/nodes/collectionNode.d.ts +29 -0
  153. package/dist/client-v2/nodes/components/calculation.d.ts +11 -0
  154. package/dist/client-v2/nodes/components/collection.d.ts +15 -0
  155. package/dist/client-v2/nodes/components/condition.d.ts +25 -0
  156. package/dist/client-v2/nodes/components/conditionShared.d.ts +20 -0
  157. package/dist/client-v2/nodes/components/create.d.ts +12 -0
  158. package/dist/client-v2/nodes/components/destroy.d.ts +12 -0
  159. package/dist/{client/triggers/schedule/ScheduleConfig.d.ts → client-v2/nodes/components/end.d.ts} +1 -1
  160. package/dist/client-v2/nodes/components/filter.d.ts +16 -0
  161. package/dist/client-v2/nodes/components/multi-conditions.d.ts +13 -0
  162. package/dist/client-v2/nodes/components/multiConditionsShared.d.ts +20 -0
  163. package/dist/client-v2/nodes/components/output.d.ts +10 -0
  164. package/dist/client-v2/nodes/components/query.d.ts +12 -0
  165. package/dist/client-v2/nodes/components/update.d.ts +12 -0
  166. package/dist/client-v2/nodes/condition.d.ts +46 -0
  167. package/dist/client-v2/nodes/create.d.ts +30 -0
  168. package/dist/client-v2/nodes/destroy.d.ts +24 -0
  169. package/dist/client-v2/nodes/end.d.ts +21 -0
  170. package/dist/client-v2/nodes/multi-conditions.d.ts +34 -0
  171. package/dist/client-v2/nodes/output.d.ts +29 -0
  172. package/dist/client-v2/nodes/query.d.ts +32 -0
  173. package/dist/client-v2/nodes/update.d.ts +25 -0
  174. package/dist/client-v2/pages/ExecutionHistoryDrawer.d.ts +13 -0
  175. package/dist/client-v2/pages/ExecutionViewPage.d.ts +10 -0
  176. package/dist/client-v2/pages/WorkflowCanvasPage.d.ts +10 -0
  177. package/dist/client-v2/pages/WorkflowCategoryTabs.d.ts +25 -0
  178. package/dist/client-v2/pages/WorkflowFormDrawer.d.ts +39 -0
  179. package/dist/client-v2/pages/WorkflowPane.d.ts +10 -0
  180. package/dist/client-v2/plugin.d.ts +67 -0
  181. package/dist/client-v2/triggers/ExecuteWorkflowButton.d.ts +35 -0
  182. package/dist/client-v2/triggers/TriggerConfig.d.ts +22 -0
  183. package/dist/client-v2/triggers/TriggerExecutionButton.d.ts +13 -0
  184. package/dist/client-v2/triggers/collection/CollectionConfig.d.ts +14 -0
  185. package/dist/client-v2/triggers/collection/TriggerCollectionConfig.d.ts +11 -0
  186. package/dist/client-v2/triggers/collection/constants.d.ts +28 -0
  187. package/dist/client-v2/triggers/collection/index.d.ts +40 -0
  188. package/dist/client-v2/triggers/index.d.ts +61 -0
  189. package/dist/client-v2/triggers/schedule/EndsByField.d.ts +17 -0
  190. package/dist/client-v2/triggers/schedule/OnField.d.ts +20 -0
  191. package/dist/client-v2/triggers/schedule/RepeatField.d.ts +23 -0
  192. package/dist/client-v2/triggers/schedule/ScheduleConfig.d.ts +17 -0
  193. package/dist/client-v2/triggers/schedule/ScheduleModes.d.ts +41 -0
  194. package/dist/{client → client-v2}/triggers/schedule/TriggerScheduleConfig.d.ts +1 -0
  195. package/dist/{client → client-v2}/triggers/schedule/constants.d.ts +8 -5
  196. package/dist/client-v2/triggers/schedule/index.d.ts +40 -0
  197. package/dist/client-v2/triggers/schedule/locale/Cron.zh-CN.d.ts +11 -0
  198. package/dist/common/executionStatus.d.ts +44 -0
  199. package/dist/common/executionStatus.js +133 -0
  200. package/dist/externalVersion.js +16 -12
  201. package/dist/locale/de-DE.json +14 -1
  202. package/dist/locale/en-US.json +22 -2
  203. package/dist/locale/es-ES.json +14 -1
  204. package/dist/locale/fr-FR.json +14 -1
  205. package/dist/locale/hu-HU.json +14 -1
  206. package/dist/locale/id-ID.json +14 -1
  207. package/dist/locale/it-IT.json +14 -1
  208. package/dist/locale/ja-JP.json +14 -1
  209. package/dist/locale/ko-KR.json +14 -1
  210. package/dist/locale/nl-NL.json +14 -1
  211. package/dist/locale/pt-BR.json +14 -1
  212. package/dist/locale/ru-RU.json +14 -1
  213. package/dist/locale/tr-TR.json +14 -1
  214. package/dist/locale/uk-UA.json +14 -1
  215. package/dist/locale/vi-VN.json +14 -1
  216. package/dist/locale/zh-CN.json +21 -2
  217. package/dist/locale/zh-TW.json +14 -1
  218. package/dist/node_modules/cron-parser/package.json +1 -1
  219. package/dist/node_modules/joi/package.json +1 -1
  220. package/dist/node_modules/lru-cache/package.json +1 -1
  221. package/dist/node_modules/nodejs-snowflake/package.json +1 -1
  222. package/dist/server/Dispatcher.d.ts +1 -0
  223. package/dist/server/Dispatcher.js +46 -28
  224. package/dist/server/ExecutionTimeoutManager.js +2 -2
  225. package/dist/server/Processor.d.ts +16 -0
  226. package/dist/server/Processor.js +112 -0
  227. package/dist/server/actions/nodes.js +36 -1
  228. package/dist/server/index.d.ts +1 -1
  229. package/dist/server/instructions/CreateInstruction.js +6 -2
  230. package/dist/server/instructions/DestroyInstruction.js +2 -1
  231. package/dist/server/instructions/QueryInstruction.js +2 -1
  232. package/dist/server/instructions/UpdateInstruction.js +2 -1
  233. package/dist/server/triggers/CollectionTrigger.d.ts +5 -0
  234. package/dist/server/triggers/CollectionTrigger.js +26 -1
  235. package/dist/server/utils.js +27 -27
  236. package/package.json +3 -2
  237. package/dist/client/618.19af7f84261c815d.js +0 -10
  238. package/dist/client/67.452743ce8ec30617.js +0 -10
  239. package/dist/client/964.ffbf5b47ed12bbdc.js +0 -10
  240. package/dist/client/triggers/schedule/ScheduleModes.d.ts +0 -170
  241. package/dist/client/triggers/schedule/locale/Cron.zh-CN.d.ts +0 -42
@@ -0,0 +1,10 @@
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
+ "use strict";(self.webpackChunk_nocobase_plugin_workflow=self.webpackChunk_nocobase_plugin_workflow||[]).push([["719"],{1801:function(e,t,r){r.d(t,{N$:function(){return S},yr:function(){return M}});var n=r(3485),a=r(7694),o=r(2625),i=r(9155),l=r.n(i),u=r(7768),c=r(4563),s=r(9488),f=r(3943);function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function m(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function y(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r,n,a=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var o=[],i=!0,l=!1;try{for(a=a.call(e);!(i=(r=a.next()).done)&&(o.push(r.value),!t||o.length!==t);i=!0);}catch(e){l=!0,n=e}finally{try{i||null==a.return||a.return()}finally{if(l)throw n}}return o}}(e,t)||g(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function h(e){return function(e){if(Array.isArray(e))return d(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||g(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function p(e){return e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}function g(e,t){if(e){if("string"==typeof e)return d(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return d(e,t)}}var b=/^\{\{\s*([^{}]+?)\s*\}\}$/,v=/^\{\{\s*ctx\.(\$[^{}]+?)\s*\}\}$/,w=["yesterday","today","tomorrow","lastWeek","thisWeek","nextWeek","lastMonth","thisMonth","nextMonth","lastQuarter","thisQuarter","nextQuarter","lastYear","thisYear","nextYear","last7Days","next7Days","last30Days","next30Days","last90Days","next90Days"],x={yesterday:"Yesterday",today:"Today",tomorrow:"Tomorrow",lastWeek:"Last week",thisWeek:"This week",nextWeek:"Next week",lastMonth:"Last month",thisMonth:"This month",nextMonth:"Next month",lastQuarter:"Last quarter",thisQuarter:"This quarter",nextQuarter:"Next quarter",lastYear:"Last year",thisYear:"This year",nextYear:"Next year",last7Days:"Last 7 days",next7Days:"Next 7 days",last30Days:"Last 30 days",next30Days:"Next 30 days",last90Days:"Last 90 days",next90Days:"Next 90 days"};function O(e){if("string"!=typeof e)return e;var t=e.trim().match(b);return!t||t[1].startsWith("ctx.")?e:"{{ ctx.".concat(t[1]," }}")}function j(e){return!!(e&&(void 0===e?"undefined":p(e))==="object"&&"logic"in e&&"items"in e)}function k(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];if(!e||(void 0===e?"undefined":p(e))!=="object"||Array.isArray(e))return t.length?[{path:t.join("."),operator:"$eq",value:O(e)}]:[];var r=Object.entries(e),n=r.filter(function(e){return y(e,1)[0].startsWith("$")});return n.length?t.length?n.map(function(e){var r=y(e,2),n=r[0],a=r[1];return{path:t.join("."),operator:n,value:O(a)}}):[]:r.flatMap(function(e){var r=y(e,2),n=r[0];return k(r[1],h(t).concat([n]))})}function A(e){return Array.isArray(e.$or)?"$or":Array.isArray(e.$and)?"$and":void 0}function E(e){var t;return j(e)?e:null!=(t=function e(t){if(!(!t||(void 0===t?"undefined":p(t))!=="object"||Array.isArray(t))){var r=A(t);if(!r){var n=k(t);return n.length?{logic:"$and",items:n}:void 0}var a=t[r].flatMap(function(t){if(!t||(void 0===t?"undefined":p(t))!=="object"||Array.isArray(t))return[];if(A(t)){var r=e(t);return r?[r]:[]}return k(t)}).filter(function(e){return!!e});return a.length?{logic:r,items:a}:void 0}}(e))?t:{logic:"$and",items:[]}}function S(e){var t=e.collection,r=e.value,d=e.onChange,y=e.rightAsVariable,p=void 0===y||y,g=(0,a.useFlowEngine)(),b=(0,s.kj)(),O=(0,o.useMemoizedFn)(function(e,t){return b(e,t)}),k=(0,c.P)(),A=(0,i.useMemo)(function(){var e,t;return e={name:"dateRange",title:O("Date range"),type:"object",paths:["$system","dateRange"],children:w.map(function(e){return{name:e,title:O(x[e]),type:"string",paths:["$system","dateRange",e]}})},(t=k.findIndex(function(e){return"$system"===e.name}))<0?h(k).concat([{name:"$system",title:O("System variables"),type:"",paths:["$system"],children:[e]}]):k.map(function(r,n){if(n!==t||"function"==typeof r.children)return r;var a,o,i=Array.isArray(r.children)?r.children.filter(function(e){return"dateRange"!==e.name}):[];return a=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){m(e,t,r[t])})}return e}({},r),o=o={children:h(i).concat([e])},Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(o)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(Object(o)).forEach(function(e){Object.defineProperty(a,e,Object.getOwnPropertyDescriptor(o,e))}),a})},[O,k]),S=(0,i.useMemo)(function(){return(0,f.X_)(g.context.dataSourceManager,t)},[g,t]),M=(0,i.useMemo)(function(){if(!S)return null;var e=g.createModel({uid:(0,a.randomId)("workflowFilter_"),use:a.FlowModel}),t=g.context.app;return t&&e.context.defineProperty("app",{value:t}),e.context.defineProperty("collection",{get:function(){return S}}),e},[S,g]);(0,i.useEffect)(function(){return function(){var e;null==M||null==(e=M.remove)||e.call(M)}},[M]);var F=(0,i.useRef)();F.current||(F.current=(0,a.observable)(E(r)));var I=(0,i.useRef)(null);(0,i.useEffect)(function(){var e=JSON.stringify(null!=r?r:{});if(I.current!==e){var t=E(r);F.current&&(F.current.logic=t.logic,F.current.items=t.items,I.current=e)}},[r]),(0,i.useEffect)(function(){if(F.current)return(0,a.reaction)(function(){return JSON.stringify((0,a.toJS)(F.current))},function(e){var t,r=JSON.parse(e),n=Array.isArray(r.items)?r.items.length:0,a=(0,u.removeInvalidFilterItems)(r);if(!a.items.length){n||null==d||d({});return}var o=null!=(t=function e(t){if(null==t||null==(r=t.items)?void 0:r.length){var r,n=t.items.map(function(t){if(j(t))return e(t);if("string"==typeof t.path&&"string"==typeof t.operator&&t.path&&t.operator)return function(e,t){for(var r=e.split("."),n=t,a=r.length-1;a>=0;a--)n=m({},r[a],n);return n}(t.path,m({},t.operator,function(e){if("string"!=typeof e)return e;var t=e.trim().match(v);return t?"{{".concat(t[1],"}}"):e}(t.value)))}).filter(function(e){return!!e});if(n.length)return m({},t.logic,n)}}(a))?t:{};I.current=JSON.stringify(o),null==d||d(o)},{fireImmediately:!1})},[d]);var P=(0,i.useMemo)(function(){if(!M)return null;var e=function(e){var t=e.value;return l().createElement(a.FlowModelProvider,{model:M},l().createElement(n.VariableFilterItem,{value:t,model:M,rightAsVariable:p,rightMetaTree:A}))};return e.displayName="WorkflowVariableFilterItem",e},[M,p,A]);return l().createElement(n.FilterGroup,{value:F.current,FilterItem:null!=P?P:void 0})}var M=S},6242:function(e,t,r){r.r(t),r.d(t,{TriggerModeField:function(){return p},default:function(){return v},CollectionPresetConfig:function(){return b},SyncTransactionNotice:function(){return h},CollectionTriggerConfig:function(){return g}});var n=r(5477),a=r(2059),o=r(9155),i=r.n(o),l=r(2235),u=r(1801),c=r(7806),s=r(9488),f=[{label:'{{t("After record added", { ns: "'.concat(s.CU,'" })}}'),value:1},{label:'{{t("After record updated", { ns: "'.concat(s.CU,'" })}}'),value:2},{label:'{{t("After record added or updated", { ns: "'.concat(s.CU,'" })}}'),value:3},{label:'{{t("After record deleted", { ns: "'.concat(s.CU,'" })}}'),value:4}];function d(e,t){return(Number(e)&t)===t}function m(){var e,t,r=(e=["\n .ant-select.auto-width {\n width: auto;\n min-width: 6em;\n }\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return m=function(){return r},r}function y(e){return!e.hidden&&(!e.uiSchema||!e.uiSchema["x-read-pretty"])&&!["linkTo","hasOne","hasMany","belongsToMany"].includes(e.type)}function h(){var e=(0,s.kj)();return i().createElement(a.Alert,{type:"info",showIcon:!0,style:{marginBottom:"1em"},message:e("Synchronous collection event workflows run within the trigger transaction by default. Related data operations automatically use this transaction.")})}function p(){var e=(0,s.kj)(),t=a.Form.useWatch(["config","collection"]),r=(0,o.useMemo)(function(){return f.map(function(t){return{value:t.value,label:e(t.label)}})},[e]);return t?i().createElement(a.Form.Item,{name:["config","mode"],label:e("Trigger on"),rules:[{required:!0}]},i().createElement(a.Select,{popupMatchSelectWidth:!1,placeholder:e("Trigger on"),className:"auto-width",options:r})):null}function g(){var e=(0,s.kj)(),t=(0,l.Zt)(),r=a.Form.useWatch(["config","collection"]),o=Number(a.Form.useWatch(["config","mode"])||0),f=null==t?void 0:t.sync;return i().createElement("fieldset",{className:(0,n.css)(m())},i().createElement(a.Form.Item,{name:["config","collection"],label:e("Collection")},i().createElement(c.XJ,{disabled:!0})),i().createElement(p,null),r&&d(o,2)?i().createElement(a.Form.Item,{name:["config","changed"],label:e("Changed fields"),extra:e("Triggered only if one of the selected fields changes. If unselected, it means that it will be triggered when any field changes. When record is added, any field is considered to have been changed.")},i().createElement(c.WY,{mode:"multiple",placeholder:e("Select field"),filter:y})):null,r&&!d(o,4)?i().createElement(a.Form.Item,{name:["config","condition"],label:e("Only triggers when match conditions")},i().createElement(u.yr,{collection:r,rightAsVariable:!1})):null,r&&!d(o,4)?i().createElement(a.Form.Item,{name:["config","appends"],label:e("Preload associations"),extra:e("Please select the associated fields that need to be accessed in subsequent nodes. With more than two levels of to-many associations may cause performance issue, please use with caution.")},i().createElement(c.Kr,{collection:r})):null,f?i().createElement(h,null):null,f?i().createElement(a.Form.Item,{name:["config","rollbackOnFailure"],valuePropName:"checked",extra:e("Only available in synchronous mode. When enabled, if the workflow execution ends with a failed status, the data operation that triggered it will fail and be rolled back."),initialValue:!1},i().createElement(a.Checkbox,null,e("Rollback when workflow execution fails"))):null)}function b(){var e=(0,s.kj)();return i().createElement(a.Form.Item,{name:["config","collection"],label:e("Collection"),rules:[{required:!0}]},i().createElement(c.XJ,null))}var v=g}}]);
@@ -0,0 +1,10 @@
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
+ "use strict";(self.webpackChunk_nocobase_plugin_workflow=self.webpackChunk_nocobase_plugin_workflow||[]).push([["739"],{1236:function(e,t,r){r.d(t,{G:function(){return a},g:function(){return u}});var n=r(9155),o=r.n(n),c=r(3485),l=r(4563),u=["string","number","boolean","date","object"];function a(e){var t,r,n=e.variableOptions,u=function(e,t){if(null==e)return{};var r,n,o,c={};if("u">typeof Reflect&&Reflect.ownKeys){for(o=0,r=Reflect.ownKeys(Object(e));o<r.length;o++)n=r[o],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(c[n]=e[n]);return c}if(c=function(e,t){if(null==e)return{};var r,n,o={},c=Object.getOwnPropertyNames(e);for(n=0;n<c.length;n++)r=c[n],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r]);return o}(e,t),Object.getOwnPropertySymbols)for(o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++)n=r[o],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(c[n]=e[n]);return c}(e,["variableOptions"]),a=(0,l.P)(n);return o().createElement(c.TypedVariableInput,(t=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}({},u),r=r={metaTree:a},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}),t))}},5006:function(e,t,r){r.d(t,{OutputFieldset:function(){return a}});var n=r(9155),o=r.n(n),c=r(2059),l=r(9488),u=r(1236);function a(){var e=(0,l.kj)();return o().createElement(c.Form.Item,{name:["config","value"],label:e("Output value")},o().createElement(u.G,{types:u.g,nullable:!1,defaultToFirstConstantTypeWhenUndefined:!0,placeholder:e("Input workflow result")}))}}}]);
@@ -0,0 +1,10 @@
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
+ "use strict";(self.webpackChunk_nocobase_plugin_workflow=self.webpackChunk_nocobase_plugin_workflow||[]).push([["759"],{9218:function(e,t,r){r.d(t,{EndFieldset:function(){return i}});var n=r(9155),o=r.n(n),c=r(2059),l=r(7060),a=r(9488),u=[{value:l.Pm.RESOLVED,label:"Succeeded"},{value:l.Pm.FAILED,label:"Failed"}];function i(){var e=(0,a.kj)();return o().createElement(c.Form.Item,{name:["config","endStatus"],label:e("End status"),rules:[{required:!0}],initialValue:l.Pm.RESOLVED},o().createElement(c.Radio.Group,{options:u.map(function(t){var r,n;return r=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}({},t),n=n={label:e(t.label)},Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(n)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(Object(n)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(n,e))}),r})}))}}}]);
@@ -0,0 +1,10 @@
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
+ "use strict";(self.webpackChunk_nocobase_plugin_workflow=self.webpackChunk_nocobase_plugin_workflow||[]).push([["772"],{8959:function(e,n,t){t.d(n,{MultiConditionsCanvasComponent:function(){return _},MultiConditionsFieldset:function(){return N}});var r=t(9155),o=t.n(r),i=t(2625),l=t(7375),a=t(5477),c=t(2059),u=t(3485),s=t(7694),f=t(1611),d=t(2235),m=t(1541),p=t(5980),b=t(8101),y=t(9488),h=t(9785),v=t(8265);function w(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function g(e,n,t,r,o,i,l){try{var a=e[i](l),c=a.value}catch(e){t(e);return}a.done?n(c):Promise.resolve(c).then(r,o)}function k(e){return function(){var n=this,t=arguments;return new Promise(function(r,o){var i=e.apply(n,t);function l(e){g(i,r,o,l,a,"next",e)}function a(e){g(i,r,o,l,a,"throw",e)}l(void 0)})}}function E(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{},r=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.forEach(function(n){var r;r=t[n],n in e?Object.defineProperty(e,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[n]=r})}return e}function O(e,n){return n=null!=n?n:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):(function(e){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);n.push.apply(n,t)}return n})(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}),e}function j(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var t,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],l=!0,a=!1;try{for(o=o.call(e);!(l=(t=o.next()).done)&&(i.push(t.value),!n||i.length!==n);l=!0);}catch(e){a=!0,r=e}finally{try{l||null==o.return||o.return()}finally{if(a)throw r}}return i}}(e,n)||I(e,n)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function x(e,n){return n||(n=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(n)}}))}function S(e){return function(e){if(Array.isArray(e))return w(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||I(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function I(e,n){if(e){if("string"==typeof e)return w(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return w(e,n)}}function C(e,n){var t,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},l=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),a=Object.defineProperty;return a(l,"next",{value:c(0)}),a(l,"throw",{value:c(1)}),a(l,"return",{value:c(2)}),"function"==typeof Symbol&&a(l,Symbol.iterator,{value:function(){return this}}),l;function c(a){return function(c){var u=[a,c];if(t)throw TypeError("Generator is already executing.");for(;l&&(l=0,u[0]&&(i=0)),i;)try{if(t=1,r&&(o=2&u[0]?r.return:u[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,u[1])).done)return o;switch(r=0,o&&(u=[2&u[0],o.value]),u[0]){case 0:case 1:o=u;break;case 4:return i.label++,{value:u[1],done:!1};case 5:i.label++,r=u[1],u=[0];continue;case 7:u=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===u[0]||2===u[0])){i=0;continue}if(3===u[0]&&(!o||u[1]>o[0]&&u[1]<o[3])){i.label=u[1];break}if(6===u[0]&&i.label<o[1]){i.label=o[1],o=u;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(u);break}o[2]&&i.ops.pop(),i.trys.pop();continue}u=n.call(e,i)}catch(e){u=[6,e],r=0}finally{t=o=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}}function F(){var e=x(["\n position: relative;\n z-index: 1;\n padding-top: 1em;\n "]);return F=function(){return e},e}function A(){var e=x(["\n padding: 0.5em 1em;\n border-radius: 2em;\n background-color: ",";\n font-size: 0.8rem;\n position: relative;\n z-index: 1;\n ","\n\n .workflow-condition-action {\n display: inline-flex;\n align-items: center;\n text-wrap: nowrap;\n margin: -12px;\n padding: 12px;\n font-size: 0.8rem;\n line-height: 1;\n color: ",";\n font-weight: normal;\n text-decoration: none;\n background: transparent;\n border: 0;\n cursor: pointer;\n }\n "]);return A=function(){return e},e}function P(e){var n=e.children;return o().createElement("div",{className:(0,a.css)(F())},n)}function T(e){var n=e.children,t=e.color,r=e.tooltip,i=c.theme.useToken().token,l=o().createElement(c.Space,{className:(0,a.css)(A(),i.colorBgContainer,t?"outline: 1px solid ".concat(t,";"):"",t||"#1677ff")},n);return r?o().createElement(c.Tooltip,{title:r},l):l}function z(e){var n,t=e.condition,l=e.node,a=e.workflow,s=e.onSubmit,f=(0,y.kj)(),m=j(c.Form.useForm(),1)[0],p=j((0,r.useState)(!1),2),h=p[0],v=p[1],w=!!(null==a||null==(n=a.versionStats)?void 0:n.executed),g=(0,i.useMemoizedFn)(function(){return k(function(){var e;return C(this,function(n){switch(n.label){case 0:return[4,m.validateFields()];case 1:e=n.sent(),v(!0),n.label=2;case 2:return n.trys.push([2,,4,5]),[4,s(e)];case 3:return n.sent(),[3,5];case 4:return v(!1),[7];case 5:return[2]}})})()});return o().createElement(d.AA.Provider,{value:a},o().createElement(d.Si.Provider,{value:l},o().createElement(u.DialogFormLayout,{title:f("Configure condition"),onSubmit:g,submitting:h,footer:w?o().createElement("span",null):void 0},o().createElement(c.Form,{form:m,layout:"vertical",initialValues:t,disabled:w},o().createElement(c.Form.Item,{name:"title",label:f("Condition label")},o().createElement(c.Input,null)),o().createElement(b.FW,{prefix:[]})))))}function M(e){var n,t,r,u,f,m,p=e.condition,b=e.index,h=(0,y.kj)(),v=(0,s.useFlowContext)(),w=c.App.useApp().modal,g=c.theme.useToken().token,j=(0,d.TA)(),x=!!(0,d.S8)(),I=(null!=(t=(0,d.$K)())?t:{}).refresh,F=(null!=(r=(0,d.$K)())?r:{}).workflow,A=null==(u=j.jobs)?void 0:u[j.jobs.length-1],M=null==A||null==(m=A.meta)||null==(f=m.conditions)?void 0:f[b-1],B=function(e,n){switch(!0){case!1===e:return n.error;case!0===e:return n.success;case"string"==typeof e:return n.error;case"number"==typeof e:return n.success;default:return}}(M,{success:g.colorSuccess,error:g.colorError}),N=(n=(0,y.kj)(),p.title||n("Condition {{index}}",{index:b})),_=(0,i.useMemoizedFn)(function(e){return k(function(){return C(this,function(n){switch(n.label){case 0:return[4,v.api.resource("flow_nodes").update({filterByTk:j.id,values:{config:O(E({},j.config),{conditions:j.config.conditions.map(function(n,t){return t===b-1?E({},n,e):n})})}})];case 1:return n.sent(),null==I||I(),[2]}})})()}),D=(0,i.useMemoizedFn)(function(){v.viewer.dialog({width:720,closable:!0,content:function(){return o().createElement(z,{condition:p,node:j,workflow:F,onSubmit:_})}})}),$=(0,i.useMemoizedFn)(function(){return k(function(){var e,n;return C(this,function(t){switch(t.label){case 0:if((n=S(null!=(e=j.config.conditions)?e:[])).splice(b-1,1),!j.config.conditions.length)return[3,2];return[4,v.api.resource("flow_nodes").destroyBranch({filterByTk:j.id,branchIndex:b,shift:1})];case 1:t.sent(),t.label=2;case 2:return[4,v.api.resource("flow_nodes").update({filterByTk:j.id,values:{config:O(E({},j.config),{conditions:n})}})];case 3:return t.sent(),null==I||I(),[2]}})})()}),K=(0,i.useMemoizedFn)(function(){w.confirm({title:h("Delete"),content:h("Are you sure you want to delete it?"),onOk:$})});return o().createElement(P,null,!x&&j.config.conditions.length>1?o().createElement(c.Tooltip,{title:h("Delete branch")},o().createElement(c.Button,{type:"text",shape:"circle",icon:o().createElement(l.DeleteOutlined,null),onClick:K,className:["workflow-node-remove-button workflow-branch-remove-button",(0,a.css)({display:"none",position:"absolute",right:"-2em",top:"1.35em"})].join(" "),size:"small"})):null,o().createElement(T,{color:B,tooltip:"string"==typeof M?M:null},o().createElement("a",{role:"button",className:"workflow-condition-action",title:N,onClick:D},o().createElement("span",{style:{paddingRight:3}},N))))}function B(e){var n,t=e.condition,r=e.index,i=(0,d.TA)(),l=(null!=(n=(0,d.$K)())?n:{}).nodes,c=(null!=l?l:[]).find(function(e){return e.upstreamId===i.id&&e.branchIndex===r});return o().createElement(f.l,{from:i,entry:c,branchIndex:r,controller:o().createElement(M,{condition:t,index:r}),className:(0,a.css)({"&:hover > .workflow-branch-controller .workflow-node-remove-button":{display:"block"}})})}function N(){var e=(0,y.kj)();return o().createElement(o().Fragment,null,o().createElement(c.Form.Item,{name:["config","conditions"],hidden:!0},o().createElement(c.Input,null)),o().createElement(c.Form.Item,{name:["config","continueOnNoMatch"],label:e("When no condition matches"),initialValue:!1},o().createElement(h.$,{options:[{label:e("End as failed"),value:!1},{label:e("Continue the workflow"),value:!0}]})))}function _(e){var n,t=e.data,r=(0,y.kj)(),u=(0,s.useFlowContext)(),b=c.theme.useToken().token,h=!!(0,d.S8)(),w=null!=(n=(0,d.$K)())?n:{},g=w.refresh,j=w.nodes,x=(0,p.A)().styles,I=t.id,F=t.config,A=(void 0===F?{}:F).conditions,z=void 0===A?[]:A,M=(null!=j?j:[]).find(function(e){return e.upstreamId===I&&0===e.branchIndex}),N=(0,i.useMemoizedFn)(function(){return k(function(){return C(this,function(e){switch(e.label){case 0:return[4,u.api.resource("flow_nodes").update({filterByTk:I,values:{config:O(E({},t.config),{conditions:S(z).concat([(0,v.w)()])})}})];case 1:return e.sent(),null==g||g(),[2]}})})()});return o().createElement(m.z,{data:t},o().createElement("div",{className:x.nodeSubtreeClass},o().createElement("div",{className:x.branchBlockClass},z.map(function(e,n){return o().createElement(B,{key:e.uid,condition:e,index:n+1})}),o().createElement(f.l,{from:t,entry:M,branchIndex:v.O.OTHERWISE,controller:o().createElement(P,null,o().createElement(T,null,o().createElement("span",null,r("Otherwise")))),end:!t.config.continueOnNoMatch})),o().createElement(c.Tooltip,{title:r("Add branch")},o().createElement(c.Button,{"aria-label":["add-button",null==t?void 0:t.type,null==t?void 0:t.title,"add-branch"].filter(Boolean).join("-"),icon:o().createElement(l.PlusOutlined,null),className:(0,a.css)({"& .anticon":{transformOrigin:"center",transform:"rotate(-45deg)"}}),style:{position:"relative",top:b.padding,lineHeight:1,transformOrigin:"center",transform:"rotate(45deg)",visibility:h?"hidden":"visible"},size:"small",onClick:N,disabled:h}))))}}}]);
@@ -0,0 +1,10 @@
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
+ "use strict";(self.webpackChunk_nocobase_plugin_workflow=self.webpackChunk_nocobase_plugin_workflow||[]).push([["782"],{1236:function(e,t,n){n.d(t,{G:function(){return u},g:function(){return i}});var r=n(9155),o=n.n(r),a=n(3485),l=n(4563),i=["string","number","boolean","date","object"];function u(e){var t,n,r=e.variableOptions,i=function(e,t){if(null==e)return{};var n,r,o,a={};if("u">typeof Reflect&&Reflect.ownKeys){for(o=0,n=Reflect.ownKeys(Object(e));o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}if(a=function(e,t){if(null==e)return{};var n,r,o={},a=Object.getOwnPropertyNames(e);for(r=0;r<a.length;r++)n=a[r],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n]);return o}(e,t),Object.getOwnPropertySymbols)for(o=0,n=Object.getOwnPropertySymbols(e);o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}(e,["variableOptions"]),u=(0,l.P)(r);return o().createElement(a.TypedVariableInput,(t=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({},i),n=n={metaTree:u},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}),t))}},3210:function(e,t,n){n.d(t,{s:function(){return u}});var r=n(5477),o=n(8275),a=n(9155),l=n.n(a);function i(){var e,t,n=(e=["\n &:after {\n content: ':';\n }\n & + a {\n margin-left: 0.25em;\n }\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return i=function(){return n},n}var u=function(e,t){var n=o.evaluators.get(e);return n&&n.link?l().createElement(l().Fragment,null,l().createElement("span",{className:(0,r.css)(i())},t("Syntax references")),l().createElement("a",{href:t(n.link),target:"_blank",rel:"noreferrer"},n.label)):null}},8101:function(e,t,n){n.d(t,{FW:function(){return H}});var r=n(9155),o=n.n(r),a=n(8275),l=n(2059),i=n(3609),u=n(7375),c=n(5477),s=n(3485),p=n(7768),f=n(5953),b=n(9488),m=n(4563);function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function g(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}function d(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function v(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var a=[],l=!0,i=!1;try{for(o=o.call(e);!(l=(n=o.next()).done)&&(a.push(n.value),!t||a.length!==t);l=!0);}catch(e){i=!0,r=e}finally{try{l||null==o.return||o.return()}finally{if(i)throw r}}return a}}(e,t)||j(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function h(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function O(e){return function(e){if(Array.isArray(e))return y(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||j(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function j(e,t){if(e){if("string"==typeof e)return y(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return y(e,t)}}function w(){var e=h(["\n &.ant-select {\n width: auto;\n min-width: 6em;\n flex-shrink: 0;\n }\n"]);return w=function(){return e},e}function E(){var e=h(["\n display: flex;\n gap: 0.5em;\n align-items: center;\n flex-wrap: nowrap;\n margin: 0;\n padding: 0;\n border: none;\n min-width: 0;\n "]);return E=function(){return e},e}function k(){var e=h(["\n display: flex;\n position: relative;\n margin: 0.5em 0;\n "]);return k=function(){return e},e}function S(){var e=h(["\n position: relative;\n width: 100%;\n .node-type-condition-group {\n padding: 0.5em 1em;\n border: 1px dashed #ddd;\n }\n + button {\n position: absolute;\n right: 0;\n }\n "]);return S=function(){return e},e}function C(){var e=h(["\n display: flex;\n align-items: center;\n gap: 0.5em;\n .ant-select {\n width: auto;\n min-width: 6em;\n }\n "]);return C=function(){return e},e}function P(){var e=h(["\n button {\n padding: 0;\n &:not(:last-child) {\n margin-right: 1em;\n }\n }\n "]);return P=function(){return e},e}var x=n(1236).g,A=(0,c.css)(w()),I=new p.Registry;I.register("equal",{name:"=",type:"boolean",group:"boolean"}),I.register("notEqual",{name:"≠",type:"boolean",group:"boolean"}),I.register("gt",{name:">",type:"boolean",group:"boolean"}),I.register("gte",{name:"≥",type:"boolean",group:"boolean"}),I.register("lt",{name:"<",type:"boolean",group:"boolean"}),I.register("lte",{name:"≤",type:"boolean",group:"boolean"}),I.register("add",{name:"+",type:"number",group:"number"}),I.register("minus",{name:"-",type:"number",group:"number"}),I.register("multiple",{name:"*",type:"number",group:"number"}),I.register("divide",{name:"/",type:"number",group:"number"}),I.register("mod",{name:"%",type:"number",group:"number"}),I.register("includes",{name:'{{t("contains")}}',type:"boolean",group:"string"}),I.register("notIncludes",{name:'{{t("does not contain")}}',type:"boolean",group:"string"}),I.register("startsWith",{name:'{{t("starts with")}}',type:"boolean",group:"string"}),I.register("notStartsWith",{name:'{{t("not starts with")}}',type:"boolean",group:"string"}),I.register("endsWith",{name:'{{t("ends with")}}',type:"boolean",group:"string"}),I.register("notEndsWith",{name:'{{t("not ends with")}}',type:"boolean",group:"string"}),I.register("concat",{name:'{{t("Concatenate", { ns: "'.concat(b.CU,'" })}}'),type:"string",group:"string"});var T=[{value:"boolean",title:'{{t("Comparision")}}'},{value:"number",title:'{{t("Arithmetic calculation", { ns: "'.concat(b.CU,'" })}}')},{value:"string",title:'{{t("String operation", { ns: "'.concat(b.CU,'" })}}')},{value:"date",title:'{{t("Date", { ns: "'.concat(b.CU,'" })}}')}];function D(e){return Array.from(I.getEntities()).filter(function(t){return v(t,2)[1].group===e})}var N=(0,r.createContext)(m.P);function W(){return(0,r.useContext)(N)()}function _(e){var t=e.calculator,n=e.operands,a=void 0===n?[]:n,i=e.onChange,u=(0,b.kj)(),p=W(),f=W(),m=(0,r.useCallback)(function(e){return i({calculator:t,operands:[e,a[1]]})},[t,i,a]),y=(0,r.useCallback)(function(e){return i({calculator:t,operands:[a[0],e]})},[t,i,a]),g=(0,r.useCallback)(function(e){return i({operands:a,calculator:e})},[i,a]);return o().createElement("fieldset",{className:(0,c.css)(E())},o().createElement(s.TypedVariableInput,{types:x,metaTree:p,value:a[0],onChange:m,style:{flex:1,minWidth:0}}),o().createElement(l.Select,{role:"button","aria-label":"select-operator-calc",value:t,onChange:g,placeholder:u("Operator"),popupMatchSelectWidth:!1,className:A},T.filter(function(e){return!!D(e.value).length}).map(function(e){return o().createElement(l.Select.OptGroup,{key:e.value,label:u(e.title)},D(e.value).map(function(e){var t=v(e,2),n=t[0],r=t[1].name;return o().createElement(l.Select.Option,{key:n,value:n},u(r))}))})),o().createElement(s.TypedVariableInput,{types:x,metaTree:f,value:a[1],onChange:y,style:{flex:1,minWidth:0}}))}function F(e){var t=e.value,n=e.onChange,r=e.onRemove;if(!t)return null;var a=t.calculator,i=t.operands;return o().createElement("div",{className:(0,c.css)(k())},t.group?o().createElement(q,{value:t.group,onChange:function(e){return n(d(g({},t),{group:e}))}}):o().createElement(_,{operands:void 0===i?[]:i,calculator:a,onChange:n}),o().createElement(l.Button,{"aria-label":"icon-close",onClick:r,type:"link",icon:o().createElement(u.CloseCircleOutlined,null)}))}function q(e){var t=e.value,n=e.onChange,a=(0,b.kj)(),i=(0,b.ec)().t,u=t.type,s=t.calculations,p=void 0===s?[]:s,m=(0,r.useCallback)(function(){n(d(g({},t),{calculations:O(p).concat([{not:!1,calculator:"equal"}])}))},[t,p,n]),y=(0,r.useCallback)(function(){n(d(g({},t),{calculations:O(p).concat([{not:!1,group:{type:"and",calculations:[]}}])}))},[t,p,n]),v=(0,r.useCallback)(function(e){p.splice(e,1),n(d(g({},t),{calculations:O(p)}))},[t,p,n]),h=(0,r.useCallback)(function(e,r){p.splice(e,1,r),n(d(g({},t),{calculations:O(p)}))},[t,p,n]);return o().createElement("div",{className:(0,c.cx)("node-type-condition-group",(0,c.css)(S()))},o().createElement("div",{className:(0,c.css)(C())},o().createElement(f.Trans,{t:i},"Meet ",o().createElement(l.Select,{role:"button","data-testid":"filter-select-all-or-any",value:void 0===u?"and":u,onChange:function(e){return n(d(g({},t),{type:e}))}},o().createElement(l.Select.Option,{value:"and"},"All"),o().createElement(l.Select.Option,{value:"or"},"Any"))," conditions in the group")),o().createElement("div",{className:"calculation-items"},p.map(function(e,t){return o().createElement(F,{key:"".concat(e.calculator,"_").concat(t),value:e,onChange:h.bind(null,t),onRemove:function(){return v(t)}})})),o().createElement("div",{className:(0,c.css)(P())},o().createElement(l.Button,{type:"link",onClick:m},a("Add condition")),o().createElement(l.Button,{type:"link",onClick:y},a("Add condition group"))))}function R(e){var t=e.value,n=e.onChange,r=e.useVariableHook,a=void 0===r?m.P:r,l=t&&Object.keys(t).length?t:{group:{type:"and",calculations:[]}};return o().createElement(N.Provider,{value:a},o().createElement(q,{value:l.group,onChange:function(e){return null==n?void 0:n(d(g({},l),{group:e}))}}))}var U=n(9785),B=n(3210);function M(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function V(e,t,n,r,o,a,l){try{var i=e[a](l),u=i.value}catch(e){n(e);return}i.done?t(u):Promise.resolve(u).then(r,o)}function z(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var a=[],l=!0,i=!1;try{for(o=o.call(e);!(l=(n=o.next()).done)&&(a.push(n.value),!t||a.length!==t);l=!0);}catch(e){i=!0,r=e}finally{try{l||null==o.return||o.return()}finally{if(i)throw r}}return a}}(e,t)||$(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function G(e){return function(e){if(Array.isArray(e))return M(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||$(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function $(e,t){if(e){if("string"==typeof e)return M(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return M(e,t)}}var K="basic";function L(e,t){return G(e).concat([t])}function H(e){var t,n,r,u=e.prefix,c=e.calculationLabel,s=e.expressionLabel,p=e.expressionItemProps,f=(0,b.kj)(),m=(t=(0,b.kj)(),n=Array.from(a.evaluators.getEntities()).filter(function(e){return["math.js","formula.js"].includes(z(e,1)[0])}).map(function(e){var t=z(e,2),n=t[0],r=t[1];return{value:n,label:r.label,tooltip:r.tooltip}}),[{value:K,label:t("Basic")}].concat(G(n))),y=null!=(r=l.Form.useWatch(L(u,"engine")))?r:K;return o().createElement(o().Fragment,null,o().createElement(l.Form.Item,{name:L(u,"engine"),label:f("Calculation engine"),rules:[{required:!0}],initialValue:K},o().createElement(U.$,{options:m})),o().createElement(l.Form.Item,{name:L(u,"calculation"),label:null!=c?c:f("Condition"),hidden:y!==K,dependencies:[L(u,"engine")],rules:[{required:y===K}]},o().createElement(R,null)),o().createElement(l.Form.Item,function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({name:L(u,"expression"),label:null!=s?s:f("Condition expression"),hidden:y===K,dependencies:[L(u,"engine")],validateTrigger:["onChange","onBlur"],rules:[{required:y!==K},{validator:function(e,t){var n;return(n=function(){var e,n;return function(e,t){var n,r,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},l=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(l,"next",{value:u(0)}),i(l,"throw",{value:u(1)}),i(l,"return",{value:u(2)}),"function"==typeof Symbol&&i(l,Symbol.iterator,{value:function(){return this}}),l;function u(i){return function(u){var c=[i,u];if(n)throw TypeError("Generator is already executing.");for(;l&&(l=0,c[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&c[0]?r.return:c[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;switch(r=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],r=0}finally{n=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(r){if(y===K||!t||!(e=a.evaluators.get(y)))return[2];n=String(t).trim().replace(/{{([^{}]+)}}/g,' "1" ');try{e.evaluate(n)}catch(e){throw Error(f("Expression syntax error"))}return[2]})},function(){var e=this,t=arguments;return new Promise(function(r,o){var a=n.apply(e,t);function l(e){V(a,r,o,l,i,"next",e)}function i(e){V(a,r,o,l,i,"throw",e)}l(void 0)})})()}}],extra:y===K?void 0:(0,B.s)(y,f)},p),o().createElement(i.M,null)))}}}]);
@@ -0,0 +1,10 @@
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
+ (self.webpackChunk_nocobase_plugin_workflow=self.webpackChunk_nocobase_plugin_workflow||[]).push([["828"],{7264:function(e){e.exports=function(e,t,r){e=e||{};var n=t.prototype,o={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function l(e,t,r,o){return n.fromToBase(e,t,r,o)}r.en.relativeTime=o,n.fromToBase=function(t,n,l,a,i){for(var u,c,s,f=l.$locale().relativeTime||o,d=e.thresholds||[{l:"s",r:44,d:"second"},{l:"m",r:89},{l:"mm",r:44,d:"minute"},{l:"h",r:89},{l:"hh",r:21,d:"hour"},{l:"d",r:35},{l:"dd",r:25,d:"day"},{l:"M",r:45},{l:"MM",r:10,d:"month"},{l:"y",r:17},{l:"yy",d:"year"}],p=d.length,m=0;m<p;m+=1){var y=d[m];y.d&&(u=a?r(t).diff(l,y.d,!0):l.diff(t,y.d,!0));var v=(e.rounding||Math.round)(Math.abs(u));if(s=u>0,v<=y.r||!y.r){v<=1&&m>0&&(y=d[m-1]);var b=f[y.l];i&&(v=i(""+v)),c="string"==typeof b?b.replace("%d",v):b(v,n,y.l,s);break}}if(n)return c;var h=s?f.future:f.past;return"function"==typeof h?h(c):h.replace("%s",c)},n.to=function(e,t){return l(e,t,this,!0)},n.from=function(e,t){return l(e,t,this)};var a=function(e){return e.$u?r.utc():r()};n.toNow=function(e){return this.to(a(this),e)},n.fromNow=function(e){return this.from(a(this),e)}}},1736:function(e,t,r){"use strict";r.d(t,{i:function(){return h}});var n=r(9155),o=r.n(n),l=r(2059),a=r(7375),i=r(5477),u=r(7694),c=r(5980),s=r(1611),f=r(2235),d=r(3052),p=r(9488),m=r(8743),y=r(3284);function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function b(){var e,t=(0,c.A)().styles,r=(0,p.kj)(),n=(0,u.useFlowEngine)(),i=(0,d.x)(),s=null==i?void 0:i.clipboard;if(!s)return null;var f=n.context.app.pm.get(m.q),y=null==f?void 0:f.getInstruction(s.type),v=y?r(y.title):s.type;return o().createElement("div",{className:t.clipboardPreviewClass},o().createElement("div",{className:"workflow-clipboard-header"},o().createElement("span",null,r("Copied node")),o().createElement(l.Button,{type:"text",size:"small",icon:o().createElement(a.CloseOutlined,null),onClick:function(){return null==i?void 0:i.clearClipboard()}})),o().createElement("div",{className:"workflow-clipboard-card"},o().createElement("div",{className:"workflow-clipboard-type"},v),o().createElement("div",{className:"workflow-clipboard-title"},null!=(e=s.title)?e:s.type)))}function h(e){var t,r,a=e.entry,u=(0,c.A)(),d=u.styles,m=u.cx,h=(0,p.kj)(),w=(0,f.S8)();(null!=(r=(0,f.$K)())?r:{}).workflow;var g=function(e){if(Array.isArray(e))return e}(t=(0,n.useState)(100))||function(e){var t,r,n=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o=[],l=!0,a=!1;try{for(n=n.call(e);!(l=(t=n.next()).done)&&(o.push(t.value),2!==o.length);l=!0);}catch(e){a=!0,r=e}finally{try{l||null==n.return||n.return()}finally{if(a)throw r}}return o}}(t)||function(e){if(e){if("string"==typeof e)return v(e,2);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return v(e,2)}}(t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),k=g[0],E=g[1];return o().createElement("div",{className:m(d.workflowPageClass,(0,i.css)({height:"100%"}))},o().createElement("div",{className:"workflow-canvas-wrapper"},o().createElement("div",{className:"workflow-canvas",style:{zoom:k/100}},o().createElement("div",{className:m(d.branchBlockClass,(0,i.css)({marginTop:"0 !important"}))},o().createElement("div",{className:d.branchClass},w?o().createElement(l.Alert,{type:"warning",showIcon:!0,message:h("Executed workflow cannot be modified. Could be copied to a new version to modify."),style:{marginBottom:"1em"}}):null,o().createElement(y.Vo,null),o().createElement("div",{className:m(d.branchBlockClass,(0,i.css)({marginTop:"0 !important"}))},o().createElement(s.l,{entry:a})),o().createElement("div",{className:d.terminalClass},h("End"))))),o().createElement(b,null),o().createElement("div",{className:"workflow-canvas-zoomer"},o().createElement(l.Slider,{vertical:!0,reverse:!0,defaultValue:100,step:10,min:10,value:k,onChange:E}))))}},3359:function(e,t,r){"use strict";r.r(t),r.d(t,{default:function(){return _}});var n=r(7694),o=r(2625),l=r(2059),a=r(9155),i=r.n(a),u=r(4442),c=r(9488);function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function f(e,t,r,n,o,l,a){try{var i=e[l](a),u=i.value}catch(e){r(e);return}i.done?t(u):Promise.resolve(u).then(n,o)}function d(e){var t,r=e.record,n=e.resource,u=e.onChanged,d=(0,c.ec)().t,p=l.App.useApp().message,m=function(e){if(Array.isArray(e))return e}(t=(0,a.useState)(!1))||function(e){var t,r,n=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o=[],l=!0,a=!1;try{for(n=n.call(e);!(l=(t=n.next()).done)&&(o.push(t.value),2!==o.length);l=!0);}catch(e){a=!0,r=e}finally{try{l||null==n.return||n.return()}finally{if(a)throw r}}return o}}(t)||function(e){if(e){if("string"==typeof e)return s(e,2);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return s(e,2)}}(t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),y=m[0],v=m[1],b=(0,o.useMemoizedFn)(function(e){var t;return(t=function(){return function(e,t){var r,n,o,l={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(a,"next",{value:u(0)}),i(a,"throw",{value:u(1)}),i(a,"return",{value:u(2)}),"function"==typeof Symbol&&i(a,Symbol.iterator,{value:function(){return this}}),a;function u(i){return function(u){var c=[i,u];if(r)throw TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(l=0)),l;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return l.label++,{value:c[1],done:!1};case 5:l.label++,n=c[1],c=[0];continue;case 7:c=l.ops.pop(),l.trys.pop();continue;default:if(!(o=(o=l.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){l=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){l.label=c[1];break}if(6===c[0]&&l.label<o[1]){l.label=o[1],o=c;break}if(o&&l.label<o[2]){l.label=o[2],l.ops.push(c);break}o[2]&&l.ops.pop(),l.trys.pop();continue}c=t.call(e,l)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(t){switch(t.label){case 0:v(!0),t.label=1;case 1:return t.trys.push([1,3,4,5]),[4,n.update({filterByTk:r.id,values:{enabled:e}})];case 2:return t.sent(),u(e),[3,5];case 3:return t.sent(),p.error(d("Operation failed")),[3,5];case 4:return v(!1),[7];case 5:return[2]}})},function(){var e=this,r=arguments;return new Promise(function(n,o){var l=t.apply(e,r);function a(e){f(l,n,o,a,i,"next",e)}function i(e){f(l,n,o,a,i,"throw",e)}a(void 0)})})()});return i().createElement(l.Switch,{checked:!!r.enabled,loading:y,onChange:b,checkedChildren:d("On"),unCheckedChildren:d("Off")})}var p=r(7375),m=r(7001),y=r(1652),v=r(5980),b=r(2404);function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function w(e,t,r,n,o,l,a){try{var i=e[l](a),u=i.value}catch(e){r(e);return}i.done?t(u):Promise.resolve(u).then(n,o)}function g(e){var t,r,n=e.record,u=e.open,s=e.onClose,f=e.resource,d=e.refresh,p=(0,c.ec)().t,m=(0,v.A)().styles,y=function(e){if(Array.isArray(e))return e}(t=(0,a.useState)(null!=(r=n.description)?r:""))||function(e){var t,r,n=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o=[],l=!0,a=!1;try{for(n=n.call(e);!(l=(t=n.next()).done)&&(o.push(t.value),2!==o.length);l=!0);}catch(e){a=!0,r=e}finally{try{l||null==n.return||n.return()}finally{if(a)throw r}}return o}}(t)||function(e){if(e){if("string"==typeof e)return h(e,2);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return h(e,2)}}(t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),g=y[0],k=y[1];(0,a.useEffect)(function(){if(u){var e;k(null!=(e=n.description)?e:"")}},[u,n.description]);var E=(0,o.useMemoizedFn)(function(e){k(e.target.value)}),x=(0,o.useMemoizedFn)(function(e){var t;return(t=function(){var t,r;return function(e,t){var r,n,o,l={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(a,"next",{value:u(0)}),i(a,"throw",{value:u(1)}),i(a,"return",{value:u(2)}),"function"==typeof Symbol&&i(a,Symbol.iterator,{value:function(){return this}}),a;function u(i){return function(u){var c=[i,u];if(r)throw TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(l=0)),l;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return l.label++,{value:c[1],done:!1};case 5:l.label++,n=c[1],c=[0];continue;case 7:c=l.ops.pop(),l.trys.pop();continue;default:if(!(o=(o=l.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){l=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){l.label=c[1];break}if(6===c[0]&&l.label<o[1]){l.label=o[1],o=c;break}if(o&&l.label<o[2]){l.label=o[2],l.ops.push(c);break}o[2]&&l.ops.pop(),l.trys.pop();continue}c=t.call(e,l)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(o){switch(o.label){case 0:if((r=e.target.value)===(null!=(t=n.description)?t:""))return[2];return[4,f.update({filterByTk:n.id,values:{description:r}})];case 1:return o.sent(),d(),[2]}})},function(){var e=this,r=arguments;return new Promise(function(n,o){var l=t.apply(e,r);function a(e){w(l,n,o,a,i,"next",e)}function i(e){w(l,n,o,a,i,"throw",e)}a(void 0)})})()});return i().createElement(l.Modal,{open:u,title:p("Details"),width:640,footer:null,onCancel:s},i().createElement(l.Descriptions,{bordered:!0,column:2,size:"small"},i().createElement(l.Descriptions.Item,{label:"Key",span:2},n.key||"-"),i().createElement(l.Descriptions.Item,{label:p("Created by")},(0,b.ts)(n.createdBy)),i().createElement(l.Descriptions.Item,{label:p("Created at")},(0,b.fU)(n.createdAt)),i().createElement(l.Descriptions.Item,{label:p("Last updated by")},(0,b.ts)(n.updatedBy)),i().createElement(l.Descriptions.Item,{label:p("Last updated at")},(0,b.fU)(n.updatedAt)),i().createElement(l.Descriptions.Item,{label:p("Description"),span:2},i().createElement(l.Input.TextArea,{"aria-label":p("Description"),value:g,onChange:E,onBlur:x,placeholder:"-",className:m.workflowDetailsDescriptionClass,autoSize:{minRows:3,maxRows:8}}))))}function k(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function E(e,t,r,n,o,l,a){try{var i=e[l](a),u=i.value}catch(e){r(e);return}i.done?t(u):Promise.resolve(u).then(n,o)}function x(e){return function(){var t=this,r=arguments;return new Promise(function(n,o){var l=e.apply(t,r);function a(e){E(l,n,o,a,i,"next",e)}function i(e){E(l,n,o,a,i,"throw",e)}a(void 0)})}}function S(e,t){var r,n,o,l={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(a,"next",{value:u(0)}),i(a,"throw",{value:u(1)}),i(a,"return",{value:u(2)}),"function"==typeof Symbol&&i(a,Symbol.iterator,{value:function(){return this}}),a;function u(i){return function(u){var c=[i,u];if(r)throw TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(l=0)),l;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return l.label++,{value:c[1],done:!1};case 5:l.label++,n=c[1],c=[0];continue;case 7:c=l.ops.pop(),l.trys.pop();continue;default:if(!(o=(o=l.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){l=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){l.label=c[1];break}if(6===c[0]&&l.label<o[1]){l.label=o[1],o=c;break}if(o&&l.label<o[2]){l.label=o[2],l.ops.push(c);break}o[2]&&l.ops.pop(),l.trys.pop();continue}c=t.call(e,l)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}var O="/admin/settings/workflow";function C(e){var t,r,u=e.record,s=e.revisions,f=e.resource,d=e.refresh,v=(0,c.ec)().t,h=(0,n.useFlowContext)(),w=(0,m.TD)().getWorkflowCanvasPath,E=l.App.useApp(),C=E.modal,j=E.message,A=function(e){if(Array.isArray(e))return e}(t=(0,a.useState)(!1))||function(e){var t,r,n=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o=[],l=!0,a=!1;try{for(n=n.call(e);!(l=(t=n.next()).done)&&(o.push(t.value),2!==o.length);l=!0);}catch(e){a=!0,r=e}finally{try{l||null==n.return||n.return()}finally{if(a)throw r}}return o}}(t)||function(e){if(e){if("string"==typeof e)return k(e,2);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return k(e,2)}}(t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),T=A[0],I=A[1],P=Number((null==(r=u.stats)?void 0:r.executed)||0)>0,F=(0,o.useMemoizedFn)(function(){h.viewer.drawer({width:"60%",closable:!0,title:v("Execution history"),content:function(){return i().createElement(y.S,{workflowKey:u.key})}})}),M=(0,o.useMemoizedFn)(function(){return x(function(){var e,t;return S(this,function(r){switch(r.label){case 0:return[4,f.revision({filterByTk:u.id,filter:{key:u.key}})];case 1:return e=r.sent(),t=(0,b.iD)(e),j.success(v("Operation succeeded")),(null==t?void 0:t.id)!=null&&h.router.navigate(w(t.id)),[2]}})})()}),B=(0,o.useMemoizedFn)(function(){var e=u.current?v("Delete a main version will cause all other revisions to be deleted too."):v("Current version will be deleted (without affecting other versions).");C.confirm({title:v("Are you sure you want to delete it?"),content:e,onOk:function(){return x(function(){var e;return S(this,function(t){switch(t.label){case 0:return[4,f.destroy({filterByTk:u.id})];case 1:if(t.sent(),j.success(v("Operation succeeded")),u.current)return h.router.navigate(O),[2];return e=s.find(function(e){return e.current}),h.router.navigate((null==e?void 0:e.id)!=null?w(e.id):O),[2]}})})()}})}),D=(0,o.useMemoizedFn)(function(e){switch(e.key){case"details":I(!0);return;case"refresh":d();return;case"history":F();return;case"revision":M();return;case"delete":B();return}});return i().createElement(i().Fragment,null,i().createElement(l.Dropdown,{menu:{onClick:D,items:[{key:"details",label:v("Details")},{type:"divider"},{key:"refresh",label:v("Refresh")},{key:"history",label:v("Execution history"),disabled:!P},{key:"revision",label:v("Copy to new version")},{type:"divider"},{key:"delete",label:v("Delete"),danger:!0}]}},i().createElement(l.Button,{"aria-label":"more",type:"text",icon:i().createElement(p.EllipsisOutlined,null)})),i().createElement(g,{record:u,open:T,onClose:function(){return I(!1)},resource:f,refresh:d}))}var j=r(9185),A=r.n(j),T=r(7264),I=r.n(T);function P(e,t,r,n,o,l,a){try{var i=e[l](a),u=i.value}catch(e){r(e);return}i.done?t(u):Promise.resolve(u).then(n,o)}function F(e){var t=e.record,r=e.resource,u=(0,c.ec)().t,s=(0,n.useFlowContext)(),f=(0,m.TD)().getWorkflowCanvasPath,d=(0,v.A)(),y=d.cx,b=d.styles,h=(0,o.useRequest)(function(){var e;return(e=function(){var e,n,o;return function(e,t){var r,n,o,l={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(a,"next",{value:u(0)}),i(a,"throw",{value:u(1)}),i(a,"return",{value:u(2)}),"function"==typeof Symbol&&i(a,Symbol.iterator,{value:function(){return this}}),a;function u(i){return function(u){var c=[i,u];if(r)throw TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(l=0)),l;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return l.label++,{value:c[1],done:!1};case 5:l.label++,n=c[1],c=[0];continue;case 7:c=l.ops.pop(),l.trys.pop();continue;default:if(!(o=(o=l.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){l=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){l.label=c[1];break}if(6===c[0]&&l.label<o[1]){l.label=o[1],o=c;break}if(o&&l.label<o[2]){l.label=o[2],l.ops.push(c);break}o[2]&&l.ops.pop(),l.trys.pop();continue}c=t.call(e,l)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(l){switch(l.label){case 0:return[4,r.list({filter:{key:t.key},fields:["id","createdAt","current","enabled","versionStats.executed"],sort:"-id"})];case 1:return[2,null!=(e=null==(o=l.sent())||null==(n=o.data)?void 0:n.data)?e:[]]}})},function(){var t=this,r=arguments;return new Promise(function(n,o){var l=e.apply(t,r);function a(e){P(l,n,o,a,i,"next",e)}function i(e){P(l,n,o,a,i,"throw",e)}a(void 0)})})()},{manual:!0}),w=h.data,g=h.run,k=(0,o.useMemoizedFn)(function(e){var r=e.key;String(r)!==String(t.id)&&s.router.navigate(f(r))}),E=(0,a.useMemo)(function(){return null!=w?w:[]},[w]);return i().createElement(l.Dropdown,{className:"workflow-versions",trigger:["click"],onOpenChange:function(e){return e&&g()},menu:{onClick:k,selectedKeys:["".concat(t.id)],className:y(b.dropdownClass,b.workflowVersionDropdownClass),items:E.slice().sort(function(e,t){return Number(t.id)-Number(e.id)}).map(function(e){var t,r;return{key:"".concat(e.id),icon:e.current?i().createElement(p.RightOutlined,null):null,className:y({executed:Number((null==(t=e.versionStats)?void 0:t.executed)||0)>0,unexecuted:0===Number((null==(r=e.versionStats)?void 0:r.executed)||0),enabled:e.enabled}),label:i().createElement(i().Fragment,null,i().createElement("strong",null,"#".concat(e.id)),i().createElement("time",null,e.createdAt?A()(e.createdAt).fromNow():""))}})}},i().createElement(l.Button,{type:"text","aria-label":"version"},i().createElement("span",{style:{opacity:.65,marginRight:4}},u("Version")),i().createElement("span",null,null!=t.id?"#".concat(t.id):null),i().createElement(p.DownOutlined,null)))}A().extend(I());var M=r(1155),B=r(5927);function D(e){var t=e.record,r=e.revisions,n=e.resource,o=e.refresh,a=(0,c.ec)().t,s=(0,c.kj)(),f=l.theme.useToken().token;return i().createElement("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:f.margin,flexWrap:"wrap",padding:"".concat(f.paddingSM,"px ").concat(f.padding,"px"),background:f.colorBgContainer,borderBottom:"1px solid ".concat(f.colorBorderSecondary)}},i().createElement("div",{style:{display:"flex",alignItems:"center",gap:f.marginSM}},i().createElement(l.Breadcrumb,{items:[{title:i().createElement(u.Link,{to:"/admin/settings/workflow"},a("Workflow"))},{title:i().createElement(l.Tooltip,{title:"Key: ".concat(t.key)},i().createElement("strong",null,s(t.title||"")))}]}),i().createElement(B.t,{value:t.sync})),i().createElement("div",{style:{display:"flex",alignItems:"center",gap:f.marginXS}},i().createElement(M.jx,{record:t,refresh:o}),i().createElement(F,{record:t,resource:n}),i().createElement(d,{record:t,resource:n,onChanged:function(){return o()}}),i().createElement(C,{record:t,revisions:r,resource:n,refresh:o})))}var N=r(2235),R=r(1736),z=r(8761),L=r(8701),V=r(222),W=r(3052),K=r(379);function $(e,t,r,n,o,l,a){try{var i=e[l](a),u=i.value}catch(e){r(e);return}i.done?t(u):Promise.resolve(u).then(n,o)}function G(e){return function(){var t=this,r=arguments;return new Promise(function(n,o){var l=e.apply(t,r);function a(e){$(l,n,o,a,i,"next",e)}function i(e){$(l,n,o,a,i,"throw",e)}a(void 0)})}}function U(e,t){var r,n,o,l={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(a,"next",{value:u(0)}),i(a,"throw",{value:u(1)}),i(a,"return",{value:u(2)}),"function"==typeof Symbol&&i(a,Symbol.iterator,{value:function(){return this}}),a;function u(i){return function(u){var c=[i,u];if(r)throw TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(l=0)),l;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return l.label++,{value:c[1],done:!1};case 5:l.label++,n=c[1],c=[0];continue;case 7:c=l.ops.pop(),l.trys.pop();continue;default:if(!(o=(o=l.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){l=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){l.label=c[1];break}if(6===c[0]&&l.label<o[1]){l.label=o[1],o=c;break}if(o&&l.label<o[2]){l.label=o[2],l.ops.push(c);break}o[2]&&l.ops.pop(),l.trys.pop();continue}c=t.call(e,l)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}function _(){var e=(0,n.useFlowContext)(),t=l.theme.useToken().token,r=(0,u.useParams)().id,c=e.api.resource("workflows"),s=(0,o.useRequest)(function(){return G(function(){var e;return U(this,function(t){switch(t.label){case 0:if(!r)return[2,null];return[4,c.get({filterByTk:r,appends:["nodes","stats","versionStats","createdBy","updatedBy"]})];case 1:return e=t.sent(),[2,(0,b.iD)(e)]}})})()},{refreshDeps:[r]}),f=s.data,d=s.refresh,p=(0,o.useRequest)(function(){return G(function(){var e,t,r;return U(this,function(n){switch(n.label){case 0:if(!(null==f?void 0:f.key))return[2,[]];return[4,c.list({filter:{key:f.key},fields:["id","current","enabled"],sort:"-id"})];case 1:return[2,null!=(e=null==(r=n.sent())||null==(t=r.data)?void 0:t.data)?e:[]]}})})()},{refreshDeps:[null==f?void 0:f.key]}).data,m=(null==f?void 0:f.id)!=null&&String(f.id)===String(r)?f:null,y=(0,a.useMemo)(function(){return null!=p?p:[]},[p]),v=(0,a.useMemo)(function(){var e,t,r=null!=(e=null==m?void 0:m.nodes)?e:[];return(0,z.K)(r),{nodes:r,entry:null!=(t=r.find(function(e){return!e.upstream}))?t:null}},[m]),h=v.nodes,w=v.entry,g=(0,a.useMemo)(function(){return{workflow:m,nodes:h,refresh:d}},[m,h,d]);return r?m?i().createElement(N.cB.Provider,{value:g},i().createElement("div",{style:{display:"flex",flexDirection:"column",height:"100dvh",minHeight:0,overflow:"hidden",width:"100%",boxSizing:"border-box",background:t.colorBgLayout}},i().createElement(D,{record:m,revisions:y,resource:c,refresh:d}),i().createElement("div",{style:{flex:1,minHeight:0,overflow:"hidden",position:"relative",width:"100%"}},i().createElement(L.y,null,i().createElement(V.J,null,i().createElement(K.b,null,i().createElement(W.L,null,i().createElement(R.i,{entry:w})))))))):i().createElement(l.Spin,null):null}},1155:function(e,t,r){"use strict";r.d(t,{jx:function(){return x},LZ:function(){return S}});var n=r(9155),o=r.n(n),l=r(2625),a=r(2059),i=r(3485),u=r(7694),c=r(9239),s=r(2235),f=(0,n.createContext)(!1),d=r(7001),p=r(9488),m=r(8743),y=r(4442),v=r(5953),b=r(358);function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function w(e,t,r,n,o,l,a){try{var i=e[l](a),u=i.value}catch(e){r(e);return}i.done?t(u):Promise.resolve(u).then(n,o)}function g(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r,n,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var l=[],a=!0,i=!1;try{for(o=o.call(e);!(a=(r=o.next()).done)&&(l.push(r.value),!t||l.length!==t);a=!0);}catch(e){i=!0,n=e}finally{try{a||null==o.return||o.return()}finally{if(i)throw n}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return h(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return h(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function k(e){var t,r=e.execution,n=(0,p.kj)(),l=(0,d.TD)().getWorkflowExecutionPath,i=r?c.m2[String(r.status)]:null;if(!i)return o().createElement("span",null,n("Workflow executed"));var u=n(i.label);return o().createElement(v.Trans,{ns:b.C,values:{statusText:u}},"Workflow executed, the result status is ",o().createElement(a.Tag,{color:i.color},"{{statusText}}"),o().createElement(y.Link,{to:l(null!=(t=r.id)?t:"")},"View the execution"))}function E(e){var t,r=e.workflow,c=(e.trigger,e.TriggerFieldsetLoader),m=e.valid,y=e.onSubmitted,v=(0,u.useFlowContext)(),b=(0,u.useFlowView)(),h=(0,p.kj)(),E=a.theme.useToken().token,x=a.App.useApp().message,S=(0,d.TD)().getWorkflowCanvasPath,O=g(a.Form.useForm(),1)[0],C=g((0,n.useState)(!1),2),j=C[0],A=C[1],T=!!(null==(t=r.versionStats)?void 0:t.executed),I=(0,n.useMemo)(function(){return(0,n.lazy)(c)},[c]),P=!m,F=(0,l.useMemoizedFn)(function(){var e;return(e=function(){var e,t,n,l,a,i;return function(e,t){var r,n,o,l={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(a,"next",{value:u(0)}),i(a,"throw",{value:u(1)}),i(a,"return",{value:u(2)}),"function"==typeof Symbol&&i(a,Symbol.iterator,{value:function(){return this}}),a;function u(i){return function(u){var c=[i,u];if(r)throw TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(l=0)),l;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return l.label++,{value:c[1],done:!1};case 5:l.label++,n=c[1],c=[0];continue;case 7:c=l.ops.pop(),l.trys.pop();continue;default:if(!(o=(o=l.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){l=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){l.label=c[1];break}if(6===c[0]&&l.label<o[1]){l.label=o[1],o=c;break}if(o&&l.label<o[2]){l.label=o[2],l.ops.push(c);break}o[2]&&l.ops.pop(),l.trys.pop();continue}c=t.call(e,l)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(u){switch(u.label){case 0:if(!m)return[2];return[4,O.validateFields()];case 1:t=(e=u.sent()).autoRevision,n=function(e,t){if(null==e)return{};var r,n,o,l={};if("u">typeof Reflect&&Reflect.ownKeys){for(o=0,r=Reflect.ownKeys(Object(e));o<r.length;o++)n=r[o],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(l[n]=e[n]);return l}if(l=function(e,t){if(null==e)return{};var r,n,o={},l=Object.getOwnPropertyNames(e);for(n=0;n<l.length;n++)r=l[n],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r]);return o}(e,t),Object.getOwnPropertySymbols)for(o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++)n=r[o],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(l[n]=e[n]);return l}(e,["autoRevision"]),A(!0),u.label=2;case 2:return u.trys.push([2,,5,6]),[4,v.api.resource("workflows").execute(function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}({filterByTk:r.id,values:n},!T&&t?{autoRevision:1}:{}))];case 3:return i=null==(a=u.sent())||null==(l=a.data)?void 0:l.data,x.open({type:"info",content:o().createElement(k,{execution:null==i?void 0:i.execution})}),[4,b.close()];case 4:return u.sent(),(null==i?void 0:i.newVersionId)?v.router.navigate(S(i.newVersionId)):null==y||y(),[3,6];case 5:return A(!1),[7];case 6:return[2]}})},function(){var t=this,r=arguments;return new Promise(function(n,o){var l=e.apply(t,r);function a(e){w(l,n,o,a,i,"next",e)}function i(e){w(l,n,o,a,i,"throw",e)}a(void 0)})})()}),M=o().createElement(a.Space,null,o().createElement(a.Button,{disabled:P,onClick:function(){return b.close()}},h("Cancel")),o().createElement(a.Button,{type:"primary",loading:j,disabled:P,onClick:F},h("Confirm")));return o().createElement(s.AA.Provider,{value:r},o().createElement(f.Provider,{value:!0},o().createElement(i.DialogFormLayout,{title:h("Execute manually"),onSubmit:F,submitting:j,submitText:h("Confirm"),cancelText:h("Cancel"),footer:M},o().createElement(a.Form,{form:O,layout:"vertical",initialValues:{autoRevision:!0},disabled:P},o().createElement(a.Alert,{message:h("Trigger variables need to be filled for executing."),type:"info",style:{marginBottom:E.margin}}),o().createElement(a.Form.Item,{label:h("Trigger variables")},o().createElement("div",{style:{padding:E.padding,border:"".concat(E.lineWidth,"px solid ").concat(E.colorBorderSecondary),borderRadius:E.borderRadiusLG}},o().createElement(n.Suspense,{fallback:o().createElement(a.Skeleton,{active:!0,paragraph:{rows:2}})},o().createElement(I,null)))),T?null:o().createElement(a.Form.Item,{name:"autoRevision",valuePropName:"checked"},o().createElement(a.Checkbox,null,h("Automatically create a new version after execution")))))))}function x(e){var t,r,i=e.record,c=e.refresh,s=(0,u.useFlowContext)(),f=(0,p.kj)(),d=s.app.pm.get(m.q),y=i.type?d.getTriggerOptions(i.type):void 0,v=null!=(t=null==y?void 0:y.validate(null!=(r=i.config)?r:{}))&&t,b=(0,n.useMemo)(function(){return y?y.TriggerFieldsetLoader?"":f("This type of trigger has not been supported to be executed manually."):f("This trigger type is not available in the new canvas yet.")},[f,y]),h=(0,l.useMemoizedFn)(function(){y&&!b&&y.TriggerFieldsetLoader&&S({ctx:s,workflow:i,trigger:y,TriggerFieldsetLoader:y.TriggerFieldsetLoader,valid:v,refresh:c})});return o().createElement(a.Tooltip,{title:b||void 0},o().createElement("span",null,o().createElement(a.Button,{disabled:!!b,onClick:h},f("Execute manually"))))}function S(e){e.ctx.viewer.dialog({width:520,closable:!0,content:function(){return o().createElement(E,{workflow:e.workflow,trigger:e.trigger,TriggerFieldsetLoader:e.TriggerFieldsetLoader,valid:e.valid,onSubmitted:e.refresh})}})}}}]);
@@ -0,0 +1,10 @@
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
+ "use strict";(self.webpackChunk_nocobase_plugin_workflow=self.webpackChunk_nocobase_plugin_workflow||[]).push([["87"],{5927:function(e,t,n){n.d(t,{t:function(){return c}});var r=n(2059),o=n(9155),l=n.n(o),a=n(9488);function c(e){var t=e.value,n=(0,a.ec)().t;return t?l().createElement(r.Tag,{color:"orange"},n("Synchronously")):l().createElement(r.Tag,{color:"cyan"},n("Asynchronously"))}},1652:function(e,t,n){n.d(t,{S:function(){return T}});var r,o=n(7375),l=n(3485),a=n(7694),c=n(2625),u=n(2059),i=n(9185),s=n.n(i),d=n(9155),f=n.n(d),m=n(6358),E=n(9239),p=n(9488);function b(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var y=(b(r={},E.GO.QUEUEING,f().createElement(o.HourglassOutlined,null)),b(r,E.GO.STARTED,f().createElement(o.LoadingOutlined,null)),b(r,E.GO.RESOLVED,f().createElement(o.CheckOutlined,null)),b(r,E.GO.FAILED,f().createElement(o.ExclamationOutlined,null)),b(r,E.GO.ERROR,f().createElement(o.CloseOutlined,null)),b(r,E.GO.ABORTED,f().createElement(o.MinusOutlined,{rotate:90})),b(r,E.GO.CANCELED,f().createElement(o.MinusOutlined,{rotate:45})),b(r,E.GO.REJECTED,f().createElement(o.MinusOutlined,null)),b(r,E.GO.RETRY_NEEDED,f().createElement(o.RedoOutlined,null)),r);function v(e){var t=e.value,n=(0,p.kj)(),r=E.m2[t];if(!r)return null;var o=y[t];return f().createElement(u.Tag,{color:r.color,icon:o},n(r.label))}var w=n(7001);function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function h(e,t,n,r,o,l,a){try{var c=e[l](a),u=c.value}catch(e){n(e);return}c.done?t(u):Promise.resolve(u).then(r,o)}function O(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var l=e.apply(t,n);function a(e){h(l,r,o,a,c,"next",e)}function c(e){h(l,r,o,a,c,"throw",e)}a(void 0)})}}function C(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}function k(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function S(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var l=[],a=!0,c=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(l.push(n.value),!t||l.length!==t);a=!0);}catch(e){c=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(c)throw r}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return g(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return g(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function D(e,t){var n,r,o,l={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),c=Object.defineProperty;return c(a,"next",{value:u(0)}),c(a,"throw",{value:u(1)}),c(a,"return",{value:u(2)}),"function"==typeof Symbol&&c(a,Symbol.iterator,{value:function(){return this}}),a;function u(c){return function(u){var i=[c,u];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,i[0]&&(l=0)),l;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return l.label++,{value:i[1],done:!1};case 5:l.label++,r=i[1],i=[0];continue;case 7:i=l.ops.pop(),l.trys.pop();continue;default:if(!(o=(o=l.trys).length>0&&o[o.length-1])&&(6===i[0]||2===i[0])){l=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){l.label=i[1];break}if(6===i[0]&&l.label<o[1]){l.label=o[1],o=i;break}if(o&&l.label<o[2]){l.label=o[2],l.ops.push(i);break}o[2]&&l.ops.pop(),l.trys.pop();continue}i=t.call(e,l)}catch(e){i=[6,e],r=0}finally{n=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}}}var R=["workflow"];function A(e){var t=e.workflowKey,n=(0,p.ec)().t,r=(0,p.kj)(),i=(0,a.useFlowContext)(),m=(0,a.useFlowEngine)(),b=(0,w.TD)().getWorkflowExecutionPath,y=u.theme.useToken().token,g=u.App.useApp(),h=g.modal,C=g.message,k=i.api.resource("executions"),A=(0,d.useMemo)(function(){var e,t,n,r;return null==(r=m.context.dataSourceManager)||null==(n=r.getDataSource)||null==(t=n.call(r,"main"))||null==(e=t.getCollection)?void 0:e.call(t,"executions")},[m]),T=S((0,d.useState)(1),2),x=T[0],j=T[1],_=S((0,d.useState)(20),2),P=_[0],M=_[1],G=S((0,d.useState)(void 0),2),F=G[0],I=G[1],N=S((0,d.useState)([]),2),z=N[0],L=N[1],B=(0,c.useMemoizedFn)(function(e){I(e),j(1)}),U=(0,c.useRequest)(function(){return O(function(){var e;return D(this,function(n){switch(n.label){case 0:return e=F?{$and:[{key:t},F]}:{key:t},[4,k.list({page:x,pageSize:P,sort:["-id"],except:["context","output","stack"],filter:e})];case 1:var r,o,l,a,c;return[2,{records:a=Array.isArray(l=null==(o=null==(r=n.sent())?void 0:r.data)?void 0:o.data)?l:Array.isArray(null==l?void 0:l.data)?l.data:[],total:(c=(null==o?void 0:o.meta)||(null==l?void 0:l.meta)||{}).count||c.total||a.length}]}})})()},{refreshDeps:[x,P,F,t]}),K=U.data,Q=U.loading,Y=U.refresh,V=(0,c.useMemoizedFn)(function(e,t){if(t!==P){M(t),j(1);return}j(e)}),J=(0,c.useMemoizedFn)(function(e){h.confirm({title:n("Delete record"),content:n("Are you sure you want to delete it?"),onOk:function(){return O(function(){return D(this,function(t){switch(t.label){case 0:return[4,k.destroy({filterByTk:e})];case 1:return t.sent(),L([]),Y(),[2]}})})()}})}),q=(0,c.useMemoizedFn)(function(){h.confirm({title:n("Clear all executions"),content:n("Clear executions will not reset executed count, and started executions will not be deleted, are you sure you want to delete them all?"),onOk:function(){return O(function(){return D(this,function(e){switch(e.label){case 0:return[4,k.destroy({filter:{key:t}})];case 1:return e.sent(),C.success(n("Operation succeeded")),L([]),Y(),[2]}})})()}})}),H=(0,c.useMemoizedFn)(function(e){h.confirm({title:n("Cancel the execution"),icon:f().createElement(o.ExclamationCircleFilled,null),content:n("Are you sure you want to cancel the execution?"),onOk:function(){return O(function(){return D(this,function(t){switch(t.label){case 0:return[4,k.cancel({filterByTk:e.id})];case 1:return t.sent(),C.success(n("Operation succeeded")),Y(),[2]}})})()}})}),W=(0,c.useMemoizedFn)(function(e){var t,n;null==(n=i.view)||null==(t=n.close)||t.call(n),i.router.navigate(b(e.id))}),$=(0,d.useMemo)(function(){return[{title:n("ID"),dataIndex:"id"},{title:n("Triggered at"),dataIndex:"createdAt",render:function(e){return e?s()(e).format("YYYY-MM-DD HH:mm:ss"):null}},{title:n("Version"),dataIndex:"workflowId",render:function(e){return null!=e?"#".concat(e):null}},{title:n("Status"),dataIndex:"status",render:function(e,t){return f().createElement(u.Space,null,f().createElement(v,{value:e}),t.status===E.GO.STARTED||t.status===E.GO.QUEUEING?f().createElement(u.Tooltip,{title:n("Cancel the execution")},f().createElement(u.Button,{type:"link",danger:!0,onClick:function(){return H(t)},shape:"circle",size:"small",icon:f().createElement(o.StopOutlined,null)})):null)}},{title:n("Actions"),width:160,render:function(e,t){return f().createElement(u.Space,{size:"middle",wrap:!1,style:{whiteSpace:"nowrap"}},f().createElement("a",{onClick:function(){return W(t)}},n("View")),t.status!==E.GO.STARTED?f().createElement("a",{onClick:function(){return J(t.id)}},n("Delete")):null)}}]},[H,J,W,n]);return f().createElement("div",null,f().createElement(u.Flex,{justify:"space-between",align:"center",style:{marginBottom:y.margin}},f().createElement(l.CollectionFilter,{collection:A,nonfilterableFieldNames:R,onChange:B,t:r}),f().createElement(u.Space,null,f().createElement(u.Button,{icon:f().createElement(o.ReloadOutlined,null),onClick:function(){return Y()}},n("Refresh")),f().createElement(u.Button,{icon:f().createElement(o.DeleteOutlined,null),disabled:!z.length,onClick:function(){return J(z)}},n("Delete")),f().createElement(u.Button,{danger:!0,onClick:q},n("Clear")))),f().createElement(l.Table,{rowKey:"id",loading:Q,columns:$,dataSource:(null==K?void 0:K.records)||[],rowSelection:{selectedRowKeys:z,onChange:L},pagination:{current:x,pageSize:P,total:(null==K?void 0:K.total)||0,onChange:V}}))}function T(e){var t=e.workflowKey,n=(0,p.kj)(),r=(0,d.useMemo)(function(){var e=E.hi.map(function(e){return{value:e.value,label:n(e.label)}});return[k(C({},m.A),{fields:m.A.fields.map(function(t){return(null==t?void 0:t.name)==="status"&&t.uiSchema?k(C({},t),{uiSchema:k(C({},t.uiSchema),{enum:e})}):t})})]},[n]);return f().createElement(l.ExtendCollectionsProvider,{collections:r},f().createElement(A,{workflowKey:t}))}},7001:function(e,t,n){n.d(t,{TD:function(){return a}});var r=n(2625),o=n(8401);function l(){return"u">typeof window&&"string"==typeof window.__nocobase_modern_client_prefix__&&window.__nocobase_modern_client_prefix__.trim().length>0}function a(){var e=(0,r.useMemoizedFn)(function(e){return l()?(0,o.JG)(e):"/admin/settings/workflow/workflows/".concat(e)}),t=(0,r.useMemoizedFn)(function(e){return l()?(0,o.Pq)(e):"/admin/settings/workflow/executions/".concat(e)});return{isV2Runtime:l(),getWorkflowCanvasPath:e,getWorkflowExecutionPath:t}}},9239:function(e,t,n){n.d(t,{GO:function(){return l},QQ:function(){return u},hi:function(){return a},m2:function(){return c}});var r=n(358);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var l={QUEUEING:null,STARTED:0,RESOLVED:1,FAILED:-1,ERROR:-2,ABORTED:-3,CANCELED:-4,REJECTED:-5,RETRY_NEEDED:-6},a=[{value:l.QUEUEING,label:'{{t("Queueing", { ns: "'.concat(r.C,'" })}}'),color:"blue",description:'{{t("Triggered but still waiting in queue to execute.", { ns: "'.concat(r.C,'" })}}')},{value:l.STARTED,label:'{{t("On going", { ns: "'.concat(r.C,'" })}}'),color:"gold",description:'{{t("Started and executing, maybe waiting for an async callback (manual, delay etc.).", { ns: "'.concat(r.C,'" })}}')},{value:l.RESOLVED,label:'{{t("Resolved", { ns: "'.concat(r.C,'" })}}'),color:"green",description:'{{t("Successfully finished.", { ns: "'.concat(r.C,'" })}}')},{value:l.FAILED,label:'{{t("Failed", { ns: "'.concat(r.C,'" })}}'),color:"red",description:'{{t("Failed to satisfy node configurations.", { ns: "'.concat(r.C,'" })}}')},{value:l.ERROR,label:'{{t("Error", { ns: "'.concat(r.C,'" })}}'),color:"red",description:'{{t("Some node meets error.", { ns: "'.concat(r.C,'" })}}')},{value:l.ABORTED,label:'{{t("Aborted", { ns: "'.concat(r.C,'" })}}'),color:"red",description:'{{t("Running of some node was aborted by program flow.", { ns: "'.concat(r.C,'" })}}')},{value:l.CANCELED,label:'{{t("Canceled", { ns: "'.concat(r.C,'" })}}'),color:"volcano",description:'{{t("Manually canceled whole execution when waiting.", { ns: "'.concat(r.C,'" })}}')},{value:l.REJECTED,label:'{{t("Rejected", { ns: "'.concat(r.C,'" })}}'),color:"volcano",description:'{{t("Rejected from a manual node.", { ns: "'.concat(r.C,'" })}}')},{value:l.RETRY_NEEDED,label:'{{t("Retry needed", { ns: "'.concat(r.C,'" })}}'),color:"volcano",description:'{{t("General failed but should do another try.", { ns: "'.concat(r.C,'" })}}')}],c=a.reduce(function(e,t){return Object.assign(e,o({},t.value,t))},{}),u=[{value:r.K.TIMEOUT,label:'{{t("Timed out", { ns: "'.concat(r.C,'" })}}')},{value:r.K.MANUAL_CANCEL,label:'{{t("Canceled manually", { ns: "'.concat(r.C,'" })}}')},{value:r.K.PARENT_ABORTED,label:'{{t("Aborted with parent execution", { ns: "'.concat(r.C,'" })}}')}].reduce(function(e,t){return Object.assign(e,o({},t.value,t))},{})}}]);
@@ -0,0 +1,10 @@
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
+ "use strict";(self.webpackChunk_nocobase_plugin_workflow=self.webpackChunk_nocobase_plugin_workflow||[]).push([["938"],{8945:function(e,n,t){t.r(n),t.d(n,{TriggerModeField:function(){return k},ScheduleConfig:function(){return D},default:function(){return A},SchedulePresetConfig:function(){return N}});var r=t(5477),l=t(2059),a=t(9185),o=t.n(a),i=t(9155),u=t.n(i),c=t(7806),s=t(9488);function m(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=Array(n);t<n;t++)r[t]=e[t];return r}function f(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{},r=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.forEach(function(n){var r;r=t[n],n in e?Object.defineProperty(e,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[n]=r})}return e}function d(e,n){return n=null!=n?n:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):(function(e){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);n.push.apply(n,t)}return n})(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}),e}function v(){var e,n,t=(e=["\n display: flex;\n gap: 0.5em;\n "],n||(n=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(n)}})));return v=function(){return t},t}function b(e){var n,t,a=e.collection,o=e.value,b=e.onChange,p=null!=o?o:{},g=(0,s.ec)().t,h=function(e){if(Array.isArray(e))return e}(n=(0,i.useState)(p.offset?p.offset/Math.abs(p.offset):0))||function(e){var n,t,r=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var l=[],a=!0,o=!1;try{for(r=r.call(e);!(a=(n=r.next()).done)&&(l.push(n.value),2!==l.length);a=!0);}catch(e){o=!0,t=e}finally{try{a||null==r.return||r.return()}finally{if(o)throw t}}return l}}(n)||function(e){if(e){if("string"==typeof e)return m(e,2);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return m(e,2)}}(n)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),y=h[0],E=h[1],O=function(e){return null==b?void 0:b(e)};return u().createElement("fieldset",{className:(0,r.css)(v())},u().createElement(c.WY,{collection:a,value:p.field,onChange:function(e){return O(d(f({},p),{field:e}))},filter:c.vE,placeholder:g("Select field"),className:"auto-width"}),p.field?u().createElement(l.Select,{value:y,onChange:function(e){var n;E(e),O(d(f({},p),{offset:Math.abs(null!=(n=p.offset)?n:0)*e}))},options:[{value:0,label:g("Exactly at")},{value:-1,label:g("Before")},{value:1,label:g("After")}],className:"auto-width"}):null,y?u().createElement(u().Fragment,null,u().createElement(l.InputNumber,{value:Math.abs(null!=(t=p.offset)?t:0),onChange:function(e){return O(d(f({},p),{offset:(null!=e?e:0)*y}))}}),u().createElement(l.Select,{value:p.unit||864e5,onChange:function(e){return O(d(f({},p),{unit:e}))},options:[{value:864e5,label:g("Days")},{value:36e5,label:g("Hours")},{value:6e4,label:g("Minutes")},{value:1e3,label:g("Seconds")}],className:"auto-width"})):null)}function p(){var e,n,t=(e=["\n display: flex;\n gap: 0.5em;\n "],n||(n=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(n)}})));return p=function(){return t},t}function g(e){var n,t=e.collection,a=e.value,i=e.onChange,c=(0,s.ec)().t,m=null!=a?(void 0===a?"undefined":a&&"u">typeof Symbol&&a.constructor===Symbol?"symbol":typeof a)!="object"||(null!=(n=Date)&&"u">typeof Symbol&&n[Symbol.hasInstance]?!!n[Symbol.hasInstance](a):a instanceof n)?"date":"field":null,f=function(e){return null==i?void 0:i(e)};return u().createElement("fieldset",{className:(0,r.css)(p())},u().createElement(l.Select,{value:m,onChange:function(e){f(e?"field"===e?{}:new Date:null)},className:"auto-width"},u().createElement(l.Select.Option,{value:null},c("No end")),u().createElement(l.Select.Option,{value:"field"},c("By field")),u().createElement(l.Select.Option,{value:"date"},c("By custom date"))),"field"===m?u().createElement(b,{collection:t,value:a,onChange:i}):null,"date"===m?u().createElement(l.DatePicker,{showTime:!0,value:o()(a),onChange:function(e){f(e?e.toDate():null)}}):null)}var h=t(2625),y=t(2837);function E(){var e,n,t=(e=["\n display: flex;\n flex-direction: ",";\n align-items: flex-start;\n gap: 0.5em;\n\n .react-js-cron {\n width: 100%;\n padding: 0.5em 0.5em 0 0.5em;\n border: 1px dashed #ccc;\n\n .react-js-cron-field {\n flex-shrink: 0;\n margin-bottom: 0.5em;\n\n > span {\n flex-shrink: 0;\n margin: 0 0.5em 0 0;\n }\n\n > .react-js-cron-select {\n margin: 0 0.5em 0 0;\n\n .ant-select-selection-overflow {\n align-items: center;\n flex: initial;\n }\n }\n }\n\n .react-js-cron-week-days {\n > span {\n min-width: 2em;\n }\n }\n }\n "],n||(n=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(n)}})));return E=function(){return t},t}t(4693);var O=[{value:"none",text:"No repeat"},{value:6e4,text:"By minute",unitText:"Minutes"},{value:36e5,text:"By hour",unitText:"Hours"},{value:864e5,text:"By day",unitText:"Days"},{value:6048e5,text:"By week",unitText:"Weeks"},{value:"cron",text:"Advanced"}];function w(e){return O.filter(function(e){return"number"==typeof e.value}).reverse().find(function(n){return"number"==typeof e&&!(e%n.value)})}function j(e){var n=e.value,t=e.onChange,r=e.disabled,a=(0,s.ec)().t,o=w(n);return u().createElement(l.InputNumber,{value:n/o.value,onChange:function(e){e&&(null==t||t(e*o.value))},min:1,addonBefore:a("Every"),addonAfter:a(o.unitText),className:"auto-width",disabled:r})}function F(e){var n=e.value,t=void 0===n?null:n,a=e.onChange,o=e.disabled,i=(0,s.ec)().t,c=function(e){var n;switch(void 0===e?"undefined":e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e){case"number":return(n=w(e))?n.value:"none";case"string":return"cron"}return"none"}(t),m=(0,h.useMemoizedFn)(function(e){if("none"===e){null==a||a(null);return}if("cron"===e){null==a||a("0 * * * * *");return}null==a||a("number"==typeof c?Math.round(t/c*e):e)});return u().createElement("fieldset",{className:(0,r.css)(E(),"cron"===c?"column":"row")},u().createElement(l.Select,{value:c,onChange:m,className:"auto-width",disabled:o},O.map(function(e){return u().createElement(l.Select.Option,{key:e.value,value:e.value},i(e.text))})),"number"==typeof c?u().createElement(j,{value:t,onChange:a,disabled:o}):null,"cron"===c?u().createElement(y.l4,{value:t.trim().split(/\s+/).slice(1).join(" "),setValue:function(e){return null==a?void 0:a("0 ".concat(e))},clearButton:!1,locale:window.cronLocale,disabled:o}):null)}var S=t(4869),I=t(1993);function C(){var e,n,t=(e=["\n .ant-input-number {\n width: auto;\n min-width: 6em;\n }\n\n .ant-picker {\n width: auto;\n }\n\n .ant-select.auto-width {\n width: auto;\n min-width: 6em;\n }\n "],n||(n=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(n)}})));return C=function(){return t},t}function x(e){var n=e.value,t=e.onChange,r=e.placeholder;return u().createElement(l.DatePicker,{showTime:!0,value:n?o()(n):null,placeholder:r,onChange:function(e){return null==t?void 0:t(e?e.toDate():null)}})}function k(e){var n=e.disabled,t=(0,s.kj)(),r=l.Form.useFormInstance(),a=(0,i.useMemo)(function(){return I.z.map(function(e){return{value:e.value,label:t(e.label)}})},[t]);return u().createElement(l.Form.Item,{name:["config","mode"],label:t("Trigger mode"),rules:[{required:!0}],initialValue:I.a.STATIC},u().createElement(l.Radio.Group,{disabled:n,options:a,onChange:function(e){r.setFieldValue(["config","mode"],e.target.value),r.setFieldValue(["config","collection"],void 0),r.setFieldValue(["config","startsOn"],void 0),r.setFieldValue(["config","repeat"],void 0),r.setFieldValue(["config","endsOn"],void 0),r.setFieldValue(["config","limit"],void 0)}}))}function P(){var e=(0,s.kj)(),n=l.Form.useWatch(["config","repeat"]),t=S.QK[I.a.STATIC];return u().createElement(u().Fragment,null,u().createElement(l.Form.Item,{name:["config","startsOn"],label:e(t.startsOn.title),rules:t.startsOn.required?[{required:!0}]:void 0},u().createElement(x,null)),u().createElement(l.Form.Item,{name:["config","repeat"],label:e(t.repeat.title)},u().createElement(F,null)),n?u().createElement(u().Fragment,null,u().createElement(l.Form.Item,{name:["config","endsOn"],label:e(t.endsOn.title)},u().createElement(x,null)),u().createElement(l.Form.Item,{name:["config","limit"],label:e(t.limit.title)},u().createElement(l.InputNumber,{min:t.limit.min,placeholder:e(t.limit.placeholder)}))):null)}function T(){var e=(0,s.kj)(),n=l.Form.useFormInstance(),t=l.Form.useWatch(["config","collection"]),r=l.Form.useWatch(["config","repeat"]),a=(0,i.useRef)(t),o=(0,i.useRef)(!1),m=(0,i.useRef)(!1),f=S.QK[I.a.DATE_FIELD];return(0,i.useEffect)(function(){if(!o.current){o.current=!0,a.current=t;return}if(!m.current){a.current=t,t&&(m.current=!0);return}a.current!==t&&t&&(n.setFieldValue(["config","startsOn"],void 0),n.validateFields([["config","startsOn"]]).catch(function(){})),a.current=t},[t,n]),u().createElement(u().Fragment,null,u().createElement(l.Form.Item,{name:["config","collection"],label:e(f.collection.title),rules:f.collection.required?[{required:!0}]:void 0},u().createElement(c.XJ,null)),u().createElement(l.Form.Item,{name:["config","startsOn"],label:e(f.startsOn.title),required:!!f.startsOn.required,rules:f.startsOn.required?[{validator:function(n,t){return t&&(void 0===t?"undefined":t&&"u">typeof Symbol&&t.constructor===Symbol?"symbol":typeof t)=="object"&&"field"in t&&t.field?Promise.resolve():Promise.reject(Error(e("This field is required")))}}]:void 0},u().createElement(b,{collection:t})),u().createElement(l.Form.Item,{name:["config","repeat"],label:e(f.repeat.title)},u().createElement(F,null)),r?u().createElement(u().Fragment,null,u().createElement(l.Form.Item,{name:["config","endsOn"],label:e(f.endsOn.title)},u().createElement(g,{collection:t})),u().createElement(l.Form.Item,{name:["config","limit"],label:e(f.limit.title)},u().createElement(l.InputNumber,{min:f.limit.min,placeholder:e(f.limit.placeholder)}))):null,u().createElement(l.Form.Item,{name:["config","appends"],label:e(f.appends.title),extra:e(f.appends.description)},u().createElement(c.Kr,{collection:t})))}function D(e){var n,t=e.modeDisabled,a=null!=(n=l.Form.useWatch(["config","mode"]))?n:I.a.STATIC;return u().createElement("fieldset",{className:(0,r.css)(C())},u().createElement(k,{disabled:void 0===t||t}),a===I.a.DATE_FIELD?u().createElement(T,null):u().createElement(P,null))}function N(){return u().createElement(k,null)}var A=D}}]);
@@ -0,0 +1,10 @@
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
+ "use strict";(self.webpackChunk_nocobase_plugin_workflow=self.webpackChunk_nocobase_plugin_workflow||[]).push([["964"],{2596:function(e,t,n){n.d(t,{i:function(){return O}});var r=n(2059),o=n(9155),l=n.n(o);let a=(0,o.createContext)(null),i={didCatch:!1,error:null};class c extends o.Component{constructor(e){super(e),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=i}static getDerivedStateFromError(e){return{didCatch:!0,error:e}}resetErrorBoundary(){let{error:e}=this.state;if(null!==e){for(var t,n,r=arguments.length,o=Array(r),l=0;l<r;l++)o[l]=arguments[l];null==(t=(n=this.props).onReset)||t.call(n,{args:o,reason:"imperative-api"}),this.setState(i)}}componentDidCatch(e,t){var n,r;null==(n=(r=this.props).onError)||n.call(r,e,t)}componentDidUpdate(e,t){let{didCatch:n}=this.state,{resetKeys:r}=this.props;if(n&&null!==t.error&&function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return e.length!==t.length||e.some((e,n)=>!Object.is(e,t[n]))}(e.resetKeys,r)){var o,l;null==(o=(l=this.props).onReset)||o.call(l,{next:r,prev:e.resetKeys,reason:"keys"}),this.setState(i)}}render(){let{children:e,fallbackRender:t,FallbackComponent:n,fallback:r}=this.props,{didCatch:l,error:i}=this.state,c=e;if(l){let e={error:i,resetErrorBoundary:this.resetErrorBoundary};if((0,o.isValidElement)(r))c=r;else if("function"==typeof t)c=t(e);else if(n)c=(0,o.createElement)(n,e);else throw i}return(0,o.createElement)(a.Provider,{value:{didCatch:l,error:i,resetErrorBoundary:this.resetErrorBoundary}},c)}}var s=n(7375),u=n(3342),d=n(1134),m=n(4652),p=n(404),f=n(3872),y=n(6660),b=n(8201),v=n(4562),E=n(6566),w=n(7065);function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function g(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function k(){var e=g(["\n margin-top: 0 !important;\n "]);return k=function(){return e},e}function x(){var e=g(["\n margin-bottom: 1em;\n "]);return x=function(){return e},e}function C(){var e=g(["\n margin-top: 0 !important;\n "]);return C=function(){return e},e}function O(e){var t,n,o=e.entry,a=(0,y.A)().styles,i=(0,v.sD)(),g=(0,p.x)(),O=(0,u.useCompile)(),j=(0,u.usePlugin)(d.default),S=function(e){if(Array.isArray(e))return e}(t=l().useState(100))||function(e){var t,n,r=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var o=[],l=!0,a=!1;try{for(r=r.call(e);!(l=(t=r.next()).done)&&(o.push(t.value),2!==o.length);l=!0);}catch(e){a=!0,n=e}finally{try{l||null==r.return||r.return()}finally{if(a)throw n}}return o}}(t)||function(e){if(e){if("string"==typeof e)return h(e,2);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return h(e,2)}}(t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),A=S[0],P=S[1],N=null==g?void 0:g.clipboard,D=N?j.instructions.get(N.type):null,V=N?D?O(D.title):N.type:"";return l().createElement("div",{className:"workflow-canvas-wrapper"},l().createElement(c,{FallbackComponent:u.ErrorFallback,onError:console.error},l().createElement(E.C.Provider,{value:w.bP},l().createElement("div",{className:"workflow-canvas",style:{zoom:A/100}},l().createElement("div",{className:(0,u.cx)(a.branchBlockClass,(0,u.css)(k()))},l().createElement("div",{className:a.branchClass},i?l().createElement(r.Alert,{type:"warning",message:(0,f.vV)("Executed workflow cannot be modified. Could be copied to a new version to modify."),showIcon:!0,className:(0,u.css)(x())}):null,l().createElement(b.Vo,null),l().createElement("div",{className:(0,u.cx)(a.branchBlockClass,(0,u.css)(C()))},l().createElement(m.lg,{entry:o})),l().createElement("div",{className:a.terminalClass},(0,f.vV)("End"))))))),N?l().createElement("div",{className:a.clipboardPreviewClass},l().createElement("div",{className:"workflow-clipboard-header"},l().createElement("span",null,(0,f.vV)("Copied node")),l().createElement(r.Button,{type:"text",size:"small",icon:l().createElement(s.CloseOutlined,null),onClick:function(){var e;return null==g||null==(e=g.clearClipboard)?void 0:e.call(g)}})),l().createElement("div",{className:"workflow-clipboard-card"},l().createElement("div",{className:"workflow-clipboard-type"},V),l().createElement("div",{className:"workflow-clipboard-title"},null!=(n=N.title)?n:N.type))):null,l().createElement("div",{className:"workflow-canvas-zoomer"},l().createElement(r.Slider,{vertical:!0,reverse:!0,defaultValue:100,step:10,min:10,value:A,onChange:P})))}},3639:function(e,t,n){n.r(t),n.d(t,{ExecutionPage:function(){return B}});var r=n(3342),o=n(9155),l=n.n(o),a=n(4442),i=n(2059),c=n(7768),s=n(7375),u=n(5953),d=n(1134),m=n(2596),p=n(1958),f=n(7428),y=n(7846),b=n(3872),v=n(7065),E=n(6660),w=n(6072),h=n(6773);function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function k(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function x(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){k(e,t,n[t])})}return e}function C(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function O(e,t){if(null==e)return{};var n,r,o,l={};if("u">typeof Reflect&&Reflect.ownKeys){for(o=0,n=Reflect.ownKeys(Object(e));o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r]);return l}if(l=function(e,t){if(null==e)return{};var n,r,o={},l=Object.getOwnPropertyNames(e);for(r=0;r<l.length;r++)n=l[r],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n]);return o}(e,t),Object.getOwnPropertySymbols)for(o=0,n=Object.getOwnPropertySymbols(e);o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r]);return l}function j(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var l=[],a=!0,i=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(l.push(n.value),!t||l.length!==t);a=!0);}catch(e){i=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(i)throw r}}return l}}(e,t)||A(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function S(e){return function(e){if(Array.isArray(e))return g(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||A(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function A(e,t){if(e){if("string"==typeof e)return g(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return g(e,t)}}function P(e){var t=e.jobData,n=e.loading,o=O(e,["jobData","loading"]);if(n)return l().createElement(i.Spin,null);var a=(0,h.get)(t,"result");return l().createElement(r.Input.JSON,C(x({},o),{value:a,disabled:!0}))}function N(e){var t=e.jobData;if(e.loading)return null;var n=(0,h.get)(t,"log");return l().createElement(v.KV,{value:n})}function D(e){var t,n,o=e.job,a=e.setViewJob,c=(0,r.usePlugin)(d.default).instructions,s=(0,r.useCompile)(),u=(0,E.A)().styles,m=(t=o.id,(0,r.useRequest)({resource:"jobs",action:"get",params:{filterByTk:t}},{cacheKey:"job-".concat(t)})),p=m.data,y=m.loading,v=null!=(n=(0,h.get)(p,"data"))?n:o,w=(null!=o?o:{}).node,g=void 0===w?{}:w,O=c.get(g.type);return l().createElement(r.ActionContextProvider,{value:{visible:!!o,setVisible:a}},l().createElement(r.SchemaComponent,{components:{JobResult:P,JobLog:N},schema:{type:"void",properties:k({},"".concat(v.id,"-").concat(v.updatedAt,"-modal"),{type:"void","x-decorator":"Form","x-decorator-props":{initialValue:C(x({},o,v),{node:g})},"x-component":"Action.Modal",title:l().createElement("div",{className:u.nodeTitleClass},l().createElement(i.Tag,null,s(null==O?void 0:O.title)),l().createElement("strong",null,g.title),l().createElement("span",{className:"workflow-node-id"},"#",g.id)),properties:{status:{type:"number",title:'{{t("Status", { ns: "'.concat(b.CU,'" })}}'),"x-decorator":"FormItem","x-component":"Select",enum:f.ox,"x-read-pretty":!0},updatedAt:{type:"string",title:'{{t("Executed at", { ns: "'.concat(b.CU,'" })}}'),"x-decorator":"FormItem","x-component":"DatePicker","x-component-props":{showTime:!0},"x-read-pretty":!0},result:{type:"object",title:'{{t("Node result", { ns: "'.concat(b.CU,'" })}}'),"x-decorator":"FormItem","x-component":"JobResult","x-component-props":{jobData:v,loading:y,className:u.nodeJobResultClass,autoSize:{minRows:4,maxRows:32}}},log:{type:"string","x-component":"JobLog","x-component-props":{jobData:v,loading:y}}}})}}))}function V(){var e=(0,y.$K)(),t=e.viewJob,n=e.setViewJob;return t?l().createElement(D,{job:t,setViewJob:n}):null}function I(e){var t=(0,y.$K)().execution,n=(0,r.useAPIClient)(),u=(0,a.useNavigate)(),d=(0,E.A)().styles,m=(0,r.useResourceActionContext)().refresh,b=j((0,o.useState)([]),2),v=b[0],h=b[1],g=j((0,o.useState)([]),2),k=g[0],x=g[1],C=j((0,o.useState)(null),2),O=C[0],A=C[1],P=j((0,o.useState)(null),2),N=P[0],D=P[1],V=j((0,o.useState)(null),2),I=V[0],R=V[1],B=(0,o.useCallback)(function(e){t&&e&&(O!==t.id&&n.resource("executions").list({filter:{key:t.key,id:{$lt:t.id}},sort:"-id",pageSize:10,fields:["id","status","createdAt"]}).then(function(e){var n=e.data;A(t.id),h(n.data)}).catch(function(){}),(N!==t.id||I&&Date.now()-Number(I)>6e4&&k.length<10)&&n.resource("executions").list({filter:{key:t.key,id:{$gt:t.id}},sort:"id",pageSize:10,fields:["id","status","createdAt"]}).then(function(e){var n=e.data;D(t.id),R(Date.now()),x(n.data.reverse())}).catch(function(){}))},[t,O,N,I,k.length,n]),T=(0,o.useCallback)(function(e){var n=e.key;n!=t.id&&u((0,w.mz)(n))},[t.id,u]);return t?l().createElement(i.Space,null,l().createElement(i.Dropdown,{onOpenChange:B,menu:{onClick:T,defaultSelectedKeys:["".concat(t.id)],className:(0,r.cx)(d.dropdownClass,d.executionsDropdownRowClass),items:S(k).concat([t],S(v)).map(function(e){return{key:e.id,label:l().createElement(l().Fragment,null,l().createElement("span",{className:"id"},"#".concat(e.id)),l().createElement("time",null,(0,c.str2moment)(e.createdAt).format("YYYY-MM-DD HH:mm:ss"))),icon:l().createElement("span",null,l().createElement(p.p,{statusMap:f.$Y,status:e.status}))}})}},l().createElement(i.Space,null,l().createElement("strong",null,"#".concat(t.id)),l().createElement(s.DownOutlined,null))),l().createElement(i.Button,{type:"link",size:"small",icon:l().createElement(s.ReloadOutlined,null),onClick:m})):null}function R(){var e,t,n,d=(0,u.useTranslation)().t,p=(0,r.useCompile)(),v=(0,r.useResourceActionContext)(),E=v.data,h=v.loading,g=v.refresh,k=(0,r.useDocumentTitle)().setTitle,x=j((0,o.useState)(null),2),C=x[0],S=x[1],A=(0,r.useApp)(),P=(0,r.useAPIClient)();(0,o.useEffect)(function(){var e,t=(null!=(e=null==E?void 0:E.data)?e:{}).workflow;null==k||k("".concat((null==t?void 0:t.title)?"".concat(t.title," - "):"").concat((0,b.vV)("Execution history")))},[null==E?void 0:E.data,k]);var N=(0,o.useCallback)(function(){i.Modal.confirm({title:(0,b.vV)("Cancel the execution"),icon:l().createElement(s.ExclamationCircleFilled,null),content:(0,b.vV)("Are you sure you want to cancel the execution?"),onOk:function(){P.resource("executions").cancel({filterByTk:null==E?void 0:E.data.id}).then(function(){i.message.success(d("Operation succeeded")),g()}).catch(function(e){console.error(e.data.error)})}})},[null==E?void 0:E.data]),D=(0,o.useCallback)(function(){history.back()},[]);if(!(null==E?void 0:E.data))return h?l().createElement(i.Spin,null):l().createElement(i.Result,{status:"404",title:"Not found"});var R=null!=(e=null==E?void 0:E.data)?e:{},B=R.jobs,T=R.workflow,z=O(R,["jobs","workflow"]),J=(T||{}).nodes,K=void 0===J?[]:J;(0,w.KD)(K),function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=new Map;e.forEach(function(e){e.jobs=[],n.set(e.id,e)}),t.forEach(function(e){var t=n.get(e.nodeId);t&&(t.jobs.push(e),e.node={id:t.id,key:t.key,title:t.title,type:t.type})}),e.forEach(function(e){e.jobs=e.jobs.sort(function(e,t){return e.id-t.id})})}(K,void 0===B?[]:B);var M=K.find(function(e){return!e.upstream}),Y=f.$Y[z.status];return T?l().createElement(y.cB.Provider,{value:{workflow:T.type?T:null,nodes:K,execution:z,viewJob:C,setViewJob:S}},l().createElement("div",{className:"workflow-toolbar"},l().createElement("header",null,l().createElement(i.Breadcrumb,{items:[{title:l().createElement(a.Link,{to:A.pluginSettingsManager.getRoutePath("workflow")},(0,b.vV)("Workflow"))},{title:l().createElement(i.Tooltip,{title:"Key: ".concat(T.key)},l().createElement(a.Link,{to:(0,w.Yz)(T.id)},T.title))},{title:l().createElement(I,null)}]})),l().createElement("aside",null,l().createElement(i.Tag,{color:Y.color},l().createElement(i.Space,null,p(Y.label),z.reason?l().createElement(i.Tooltip,{title:p(null!=(t=null==(n=f.BI[z.reason])?void 0:n.label)?t:z.reason),placement:"bottom"},l().createElement(s.QuestionCircleOutlined,null)):null)),z.status?null:l().createElement(i.Tooltip,{title:(0,b.vV)("Cancel the execution")},l().createElement(i.Button,{type:"link",danger:!0,onClick:N,shape:"circle",size:"small",icon:l().createElement(s.StopOutlined,null)})),l().createElement("time",null,(0,c.str2moment)(z.updatedAt).format("YYYY-MM-DD HH:mm:ss")))),l().createElement(m.i,{entry:M}),l().createElement(V,null)):l().createElement(i.Result,{status:"404",title:(0,b.vV)("Not found"),subTitle:(0,b.vV)("Workflow of execution is not existed"),extra:l().createElement(i.Button,{onClick:D},(0,b.vV)("Go back"))})}var B=function(){var e,t,n,o=(0,a.useParams)(),i=(0,E.A)().styles;return l().createElement("div",{className:(0,r.cx)(i.workflowPageClass)},l().createElement(r.SchemaComponent,{schema:{type:"void",properties:(e={},t="execution_".concat(o.id),n={type:"void","x-decorator":"ResourceActionProvider","x-decorator-props":{collection:{name:"executions",fields:[]},resourceName:"executions",request:{resource:"executions",action:"get",params:{filter:o,appends:["jobs","workflow","workflow.nodes","workflow.versionStats","workflow.stats"],except:["jobs.result","workflow.options"]}}},"x-component":"ExecutionCanvas"},t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e)},components:{ExecutionCanvas:R}}))}}}]);
@@ -0,0 +1,10 @@
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
+ "use strict";(self.webpackChunk_nocobase_plugin_workflow=self.webpackChunk_nocobase_plugin_workflow||[]).push([["972"],{1801:function(e,t,r){r.d(t,{N$:function(){return M},yr:function(){return P}});var n=r(3485),o=r(7694),a=r(2625),i=r(9155),u=r.n(i),l=r(7768),c=r(4563),s=r(9488),f=r(3943);function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function d(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function m(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r,n,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var a=[],i=!0,u=!1;try{for(o=o.call(e);!(i=(r=o.next()).done)&&(a.push(r.value),!t||a.length!==t);i=!0);}catch(e){u=!0,n=e}finally{try{i||null==o.return||o.return()}finally{if(u)throw n}}return a}}(e,t)||h(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function v(e){return function(e){if(Array.isArray(e))return y(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||h(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function p(e){return e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}function h(e,t){if(e){if("string"==typeof e)return y(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return y(e,t)}}var b=/^\{\{\s*([^{}]+?)\s*\}\}$/,g=/^\{\{\s*ctx\.(\$[^{}]+?)\s*\}\}$/,w=["yesterday","today","tomorrow","lastWeek","thisWeek","nextWeek","lastMonth","thisMonth","nextMonth","lastQuarter","thisQuarter","nextQuarter","lastYear","thisYear","nextYear","last7Days","next7Days","last30Days","next30Days","last90Days","next90Days"],x={yesterday:"Yesterday",today:"Today",tomorrow:"Tomorrow",lastWeek:"Last week",thisWeek:"This week",nextWeek:"Next week",lastMonth:"Last month",thisMonth:"This month",nextMonth:"Next month",lastQuarter:"Last quarter",thisQuarter:"This quarter",nextQuarter:"Next quarter",lastYear:"Last year",thisYear:"This year",nextYear:"Next year",last7Days:"Last 7 days",next7Days:"Next 7 days",last30Days:"Last 30 days",next30Days:"Next 30 days",last90Days:"Last 90 days",next90Days:"Next 90 days"};function j(e){if("string"!=typeof e)return e;var t=e.trim().match(b);return!t||t[1].startsWith("ctx.")?e:"{{ ctx.".concat(t[1]," }}")}function O(e){return!!(e&&(void 0===e?"undefined":p(e))==="object"&&"logic"in e&&"items"in e)}function k(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];if(!e||(void 0===e?"undefined":p(e))!=="object"||Array.isArray(e))return t.length?[{path:t.join("."),operator:"$eq",value:j(e)}]:[];var r=Object.entries(e),n=r.filter(function(e){return m(e,1)[0].startsWith("$")});return n.length?t.length?n.map(function(e){var r=m(e,2),n=r[0],o=r[1];return{path:t.join("."),operator:n,value:j(o)}}):[]:r.flatMap(function(e){var r=m(e,2),n=r[0];return k(r[1],v(t).concat([n]))})}function A(e){return Array.isArray(e.$or)?"$or":Array.isArray(e.$and)?"$and":void 0}function S(e){var t;return O(e)?e:null!=(t=function e(t){if(!(!t||(void 0===t?"undefined":p(t))!=="object"||Array.isArray(t))){var r=A(t);if(!r){var n=k(t);return n.length?{logic:"$and",items:n}:void 0}var o=t[r].flatMap(function(t){if(!t||(void 0===t?"undefined":p(t))!=="object"||Array.isArray(t))return[];if(A(t)){var r=e(t);return r?[r]:[]}return k(t)}).filter(function(e){return!!e});return o.length?{logic:r,items:o}:void 0}}(e))?t:{logic:"$and",items:[]}}function M(e){var t=e.collection,r=e.value,y=e.onChange,m=e.rightAsVariable,p=void 0===m||m,h=(0,o.useFlowEngine)(),b=(0,s.kj)(),j=(0,a.useMemoizedFn)(function(e,t){return b(e,t)}),k=(0,c.P)(),A=(0,i.useMemo)(function(){var e,t;return e={name:"dateRange",title:j("Date range"),type:"object",paths:["$system","dateRange"],children:w.map(function(e){return{name:e,title:j(x[e]),type:"string",paths:["$system","dateRange",e]}})},(t=k.findIndex(function(e){return"$system"===e.name}))<0?v(k).concat([{name:"$system",title:j("System variables"),type:"",paths:["$system"],children:[e]}]):k.map(function(r,n){if(n!==t||"function"==typeof r.children)return r;var o,a,i=Array.isArray(r.children)?r.children.filter(function(e){return"dateRange"!==e.name}):[];return o=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){d(e,t,r[t])})}return e}({},r),a=a={children:v(i).concat([e])},Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(a)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t})(Object(a)).forEach(function(e){Object.defineProperty(o,e,Object.getOwnPropertyDescriptor(a,e))}),o})},[j,k]),M=(0,i.useMemo)(function(){return(0,f.X_)(h.context.dataSourceManager,t)},[h,t]),P=(0,i.useMemo)(function(){if(!M)return null;var e=h.createModel({uid:(0,o.randomId)("workflowFilter_"),use:o.FlowModel}),t=h.context.app;return t&&e.context.defineProperty("app",{value:t}),e.context.defineProperty("collection",{get:function(){return M}}),e},[M,h]);(0,i.useEffect)(function(){return function(){var e;null==P||null==(e=P.remove)||e.call(P)}},[P]);var $=(0,i.useRef)();$.current||($.current=(0,o.observable)(S(r)));var E=(0,i.useRef)(null);(0,i.useEffect)(function(){var e=JSON.stringify(null!=r?r:{});if(E.current!==e){var t=S(r);$.current&&($.current.logic=t.logic,$.current.items=t.items,E.current=e)}},[r]),(0,i.useEffect)(function(){if($.current)return(0,o.reaction)(function(){return JSON.stringify((0,o.toJS)($.current))},function(e){var t,r=JSON.parse(e),n=Array.isArray(r.items)?r.items.length:0,o=(0,l.removeInvalidFilterItems)(r);if(!o.items.length){n||null==y||y({});return}var a=null!=(t=function e(t){if(null==t||null==(r=t.items)?void 0:r.length){var r,n=t.items.map(function(t){if(O(t))return e(t);if("string"==typeof t.path&&"string"==typeof t.operator&&t.path&&t.operator)return function(e,t){for(var r=e.split("."),n=t,o=r.length-1;o>=0;o--)n=d({},r[o],n);return n}(t.path,d({},t.operator,function(e){if("string"!=typeof e)return e;var t=e.trim().match(g);return t?"{{".concat(t[1],"}}"):e}(t.value)))}).filter(function(e){return!!e});if(n.length)return d({},t.logic,n)}}(o))?t:{};E.current=JSON.stringify(a),null==y||y(a)},{fireImmediately:!1})},[y]);var D=(0,i.useMemo)(function(){if(!P)return null;var e=function(e){var t=e.value;return u().createElement(o.FlowModelProvider,{model:P},u().createElement(n.VariableFilterItem,{value:t,model:P,rightAsVariable:p,rightMetaTree:A}))};return e.displayName="WorkflowVariableFilterItem",e},[P,p,A]);return u().createElement(n.FilterGroup,{value:$.current,FilterItem:null!=D?D:void 0})}var P=M},5329:function(e,t,r){r.d(t,{F:function(){return c}});var n=r(9155),o=r.n(n),a=r(2059),i=r(7806),u=r(9488);function l(e){var t=e.value,r=e.onChange,a=e.disabled,u=e.onCollectionChanged,l=(0,n.useRef)();return o().createElement(i.XJ,{value:t,disabled:a,onChange:function(e){var n,o=null!=(n=l.current)?n:t;null==r||r(e),o&&o!==e&&(null==u||u(o,e)),l.current=e}})}function c(e){var t=e.disabled,r=e.onCollectionChanged,n=(0,u.kj)();return o().createElement(a.Form.Item,{name:["config","collection"],label:n("Collection"),rules:[{required:!0}]},o().createElement(l,{disabled:t,onCollectionChanged:r}))}},6855:function(e,t,r){r.d(t,{F:function(){return s}});var n=r(9155),o=r.n(n),a=r(2059),i=r(7768),u=r(1801),l=r(9488);function c(e,t,r,n,o,a,i){try{var u=e[a](i),l=u.value}catch(e){r(e);return}u.done?t(l):Promise.resolve(l).then(n,o)}function s(e){var t=e.collection,r=e.label,n=e.name,s=e.required,f=(0,l.kj)();return o().createElement(a.Form.Item,{name:void 0===n?["config","params","filter"]:n,label:null!=r?r:f("Filter"),validateTrigger:["onChange","onBlur"],rules:void 0===s||s?[{validator:function(e,t){var r;return(r=function(){return function(e,t){var r,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(i,"next",{value:l(0)}),u(i,"throw",{value:l(1)}),u(i,"return",{value:l(2)}),"function"==typeof Symbol&&u(i,Symbol.iterator,{value:function(){return this}}),i;function l(u){return function(l){var c=[u,l];if(r)throw TypeError("Generator is already executing.");for(;i&&(i=0,c[0]&&(a=0)),a;)try{if(r=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,n=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e],n=0}finally{r=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(e){if(!(0,i.isValidFilter)(t))throw Error(f("Please add at least one condition"));return[2]})},function(){var e=this,t=arguments;return new Promise(function(n,o){var a=r.apply(e,t);function i(e){c(a,n,o,i,u,"next",e)}function u(e){c(a,n,o,i,u,"throw",e)}i(void 0)})})()}}]:void 0},o().createElement(u.N$,{collection:t}))}}}]);
@@ -7,13 +7,5 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
  import React from 'react';
10
- interface AddButtonProps {
11
- upstream: any;
12
- branchIndex?: number | null;
13
- [key: string]: any;
14
- }
15
- export declare function AddButton(props: AddButtonProps): React.JSX.Element;
16
- export declare function AddNodeSlot(props: AddButtonProps): React.JSX.Element;
17
- export declare function useAddNodeContext(): any;
10
+ export { AddNodeSlot } from '../client-v2/canvas/AddNodeSlot';
18
11
  export declare function AddNodeContextProvider(props: any): React.JSX.Element;
19
- export {};
@@ -14,7 +14,7 @@ export declare function Branch({ from, entry, branchIndex, controller, className
14
14
  branchIndex?: number | null;
15
15
  controller?: React.ReactNode;
16
16
  className?: string;
17
- end?: boolean;
17
+ end?: true | React.ReactNode | null;
18
18
  addable?: boolean;
19
19
  syncOnly?: boolean;
20
20
  start?: boolean;
@@ -6,13 +6,5 @@
6
6
  * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
- import React from 'react';
10
- export type BranchContextValue = {
11
- branchIndex: number | null;
12
- addable: boolean;
13
- syncOnly: boolean;
14
- };
15
- export declare const BranchContext: React.Context<BranchContextValue>;
16
- export declare function useBranchContext(): BranchContextValue;
17
- export declare function useBranchIndex(): number;
18
- export declare function useBranchSyncOnly(): boolean;
9
+ export { BranchContext, useBranchContext, useBranchIndex, useBranchSyncOnly } from '../client-v2/canvas/BranchContext';
10
+ export type { BranchContextValue } from '../client-v2/canvas/BranchContext';
@@ -6,8 +6,13 @@
6
6
  * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
- import React from 'react';
10
- export declare const FlowContext: React.Context<any>;
11
- export declare function useFlowContext(): any;
12
- export declare const CurrentWorkflowContext: React.Context<any>;
13
- export declare function useCurrentWorkflowContext(): any;
9
+ /**
10
+ * The two canvas React contexts now live in client-v2 and are shared by both
11
+ * canvases (ADR-0003). v1 re-exports them so existing import sites
12
+ * (`from './FlowContext'`) are unchanged. Both contexts are dependency-free
13
+ * (`React.createContext`), so this is a plain re-export — no runtime wrapper, no
14
+ * injected runtime — the v2 definition models v1's shape exactly (editor +
15
+ * execution canvas values). Delete on legacy-canvas retirement.
16
+ */
17
+ export { FlowContext, useFlowContext, CurrentWorkflowContext, useCurrentWorkflowContext, } from '../client-v2/canvas/contexts';
18
+ export type { WorkflowCanvasFlowContextValue, CanvasNode } from '../client-v2/canvas/contexts';
@@ -6,6 +6,16 @@
6
6
  * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
+ /**
10
+ * The clipboard context + provider now live in client-v2 and are shared by both
11
+ * canvases (ADR-0003). v1 keeps a thin wrapper that injects its own canvas
12
+ * runtime source (v1 `FlowContext` + `versionStats.executed`) into the shared
13
+ * provider, and re-exports the hook so existing v1 import sites
14
+ * (`from './NodeClipboardContext'`) are unchanged. Delete on legacy-canvas
15
+ * retirement.
16
+ */
9
17
  import React from 'react';
10
- export declare function useNodeClipboardContext(): any;
11
- export declare function NodeClipboardContextProvider(props: any): React.JSX.Element;
18
+ export { useNodeClipboardContext } from '../client-v2/canvas/NodeClipboardContext';
19
+ export declare function NodeClipboardContextProvider(props: {
20
+ children: React.ReactNode;
21
+ }): React.JSX.Element;
@@ -6,6 +6,18 @@
6
6
  * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
+ /**
10
+ * The node drag-to-reorder provider now lives in client-v2 and is shared by both
11
+ * canvases (ADR-0003). v1 keeps a thin wrapper that injects its own canvas runtime
12
+ * (v1 `useAPIClient` / `lang` / `useCompile` / instruction registry /
13
+ * `useWorkflowExecuted`) into the shared provider, and re-exports the hook so
14
+ * existing v1 import sites (`from './NodeDragContext'`) are unchanged. The pure
15
+ * drop-impact graph walks are likewise re-exported from their client-v2 home.
16
+ * Delete on legacy-canvas retirement.
17
+ */
9
18
  import React from 'react';
10
- export declare function useNodeDragContext(): any;
11
- export declare function NodeDragContextProvider(props: any): React.JSX.Element;
19
+ export { useNodeDragContext } from '../client-v2/canvas/NodeDragContext';
20
+ export { collectDownstreams, collectBranchSubtree } from '../client-v2/canvas/dropImpact';
21
+ export declare function NodeDragContextProvider(props: {
22
+ children: React.ReactNode;
23
+ }): React.JSX.Element;
@@ -6,6 +6,20 @@
6
6
  * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
+ /**
10
+ * The remove-node context + provider now live in client-v2 and are shared by both
11
+ * canvases (ADR-0003). v1 keeps a thin wrapper that injects its own canvas runtime
12
+ * (v1 `useAPIClient` / `FlowContext` / instruction registry) into the shared
13
+ * provider, and re-exports the hook so existing v1 import sites
14
+ * (`from './RemoveNodeContext'`) are unchanged. Delete on legacy-canvas retirement.
15
+ *
16
+ * This replaces v1's former Formily `Action.Modal` keep-branch dialog with the
17
+ * shared antd one; the variable-reference safety check (which the modern canvas
18
+ * previously lacked) is now the shared logic, so both canvases block deleting a
19
+ * node whose result is still referenced.
20
+ */
9
21
  import React from 'react';
10
- export declare function useRemoveNodeContext(): any;
11
- export declare function RemoveNodeContextProvider(props: any): React.JSX.Element;
22
+ export { useRemoveNodeContext } from '../client-v2/canvas/RemoveNodeContext';
23
+ export declare function RemoveNodeContextProvider(props: {
24
+ children: React.ReactNode;
25
+ }): React.JSX.Element;
@@ -11,7 +11,7 @@ import { Instruction } from './nodes';
11
11
  import { Trigger } from './triggers';
12
12
  import { VariableOption } from './variable';
13
13
  import { TaskTypeOptions } from './WorkflowTasks';
14
- import { NodeDetailsModel, NodeValueModel } from './models';
14
+ import { NodeDetailsModel, NodeValueModel } from '../client-v2/models';
15
15
  type InstructionGroup = {
16
16
  key?: string;
17
17
  label: string;