@nocobase/plugin-flow-engine 2.1.0-beta.14 → 2.1.0-beta.16

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 (229) hide show
  1. package/dist/ai/ai-employees/nathan/index.d.ts +10 -0
  2. package/dist/ai/ai-employees/nathan/index.js +41 -0
  3. package/dist/ai/ai-employees/nathan/prompt.md +132 -0
  4. package/dist/ai/ai-employees/nathan/skills/frontend-developer/SKILLS.md +69 -0
  5. package/dist/ai/{tools → ai-employees/nathan/skills/frontend-developer/tools}/getContextApis.js +2 -2
  6. package/dist/ai/{tools → ai-employees/nathan/skills/frontend-developer/tools}/getContextEnvs.js +2 -2
  7. package/dist/ai/{tools → ai-employees/nathan/skills/frontend-developer/tools}/getContextVars.js +2 -2
  8. package/dist/ai/{tools → ai-employees/nathan/skills/frontend-developer/tools}/lintAndTestJS.js +2 -2
  9. package/dist/ai/docs/runjs/context/block-model.md +35 -35
  10. package/dist/ai/docs/runjs/context/collection-field.md +53 -51
  11. package/dist/ai/docs/runjs/context/collection.md +39 -39
  12. package/dist/ai/docs/runjs/context/data-source-manager.md +40 -30
  13. package/dist/ai/docs/runjs/context/data-source.md +52 -44
  14. package/dist/ai/docs/runjs/context/element.md +44 -38
  15. package/dist/ai/docs/runjs/context/exit-all.md +37 -35
  16. package/dist/ai/docs/runjs/context/exit.md +38 -35
  17. package/dist/ai/docs/runjs/context/filter-manager.md +36 -30
  18. package/dist/ai/docs/runjs/context/form.md +57 -57
  19. package/dist/ai/docs/runjs/context/get-model.md +22 -21
  20. package/dist/ai/docs/runjs/context/get-value.md +20 -19
  21. package/dist/ai/docs/runjs/context/get-var.md +61 -55
  22. package/dist/ai/docs/runjs/context/i18n.md +17 -14
  23. package/dist/ai/docs/runjs/context/import-async.md +333 -45
  24. package/dist/ai/docs/runjs/context/init-resource.md +20 -20
  25. package/dist/ai/docs/runjs/context/libs.md +31 -31
  26. package/dist/ai/docs/runjs/context/location.md +34 -31
  27. package/dist/ai/docs/runjs/context/logger.md +41 -40
  28. package/dist/ai/docs/runjs/context/make-resource.md +27 -26
  29. package/dist/ai/docs/runjs/context/message.md +42 -41
  30. package/dist/ai/docs/runjs/context/modal.md +44 -44
  31. package/dist/ai/docs/runjs/context/model.md +36 -33
  32. package/dist/ai/docs/runjs/context/notification.md +41 -40
  33. package/dist/ai/docs/runjs/context/off.md +14 -14
  34. package/dist/ai/docs/runjs/context/on.md +30 -29
  35. package/dist/ai/docs/runjs/context/open-view.md +40 -40
  36. package/dist/ai/docs/runjs/context/render.md +37 -32
  37. package/dist/ai/docs/runjs/context/request.md +46 -45
  38. package/dist/ai/docs/runjs/context/require-async.md +28 -25
  39. package/dist/ai/docs/runjs/context/resource.md +34 -34
  40. package/dist/ai/docs/runjs/context/route.md +36 -34
  41. package/dist/ai/docs/runjs/context/router.md +43 -31
  42. package/dist/ai/docs/runjs/context/set-value.md +18 -17
  43. package/dist/ai/docs/runjs/context/t.md +20 -17
  44. package/dist/ai/docs/runjs/context/view.md +49 -46
  45. package/dist/ai/docs/runjs/document.md +1 -0
  46. package/dist/ai/docs/runjs/import-modules.md +32 -32
  47. package/dist/ai/docs/runjs/index.md +13 -13
  48. package/dist/ai/docs/runjs/jsx.md +19 -19
  49. package/dist/ai/docs/runjs/model/form-block-model.md +1 -3
  50. package/dist/ai/docs/runjs/render.md +15 -15
  51. package/dist/ai/docs/runjs/resource/api-resource.md +53 -53
  52. package/dist/ai/docs/runjs/resource/multi-record-resource.md +64 -64
  53. package/dist/ai/docs/runjs/resource/single-record-resource.md +55 -55
  54. package/dist/ai/docs/runjs/resource/sql-resource.md +57 -57
  55. package/dist/ai/docs/runjs/window.md +5 -5
  56. package/dist/client/index.js +1 -1
  57. package/dist/externalVersion.js +11 -10
  58. package/dist/node_modules/ses/dist/ses.cjs +1 -1
  59. package/dist/node_modules/ses/package.json +1 -1
  60. package/dist/node_modules/zod/index.cjs +1 -1
  61. package/dist/node_modules/zod/package.json +1 -1
  62. package/dist/server/flow-surfaces/action-scope.d.ts +38 -0
  63. package/dist/server/flow-surfaces/action-scope.js +152 -0
  64. package/dist/server/flow-surfaces/apply/compiler.d.ts +13 -0
  65. package/dist/server/flow-surfaces/apply/compiler.js +969 -0
  66. package/dist/server/flow-surfaces/apply/layout.d.ts +34 -0
  67. package/dist/server/flow-surfaces/apply/layout.js +175 -0
  68. package/dist/server/flow-surfaces/apply/matching.d.ts +16 -0
  69. package/dist/server/flow-surfaces/apply/matching.js +181 -0
  70. package/dist/server/flow-surfaces/approval/blueprint-service.d.ts +84 -0
  71. package/dist/server/flow-surfaces/approval/blueprint-service.js +589 -0
  72. package/dist/server/flow-surfaces/approval/blueprint.d.ts +21 -0
  73. package/dist/server/flow-surfaces/approval/blueprint.js +187 -0
  74. package/dist/server/flow-surfaces/approval/builder.d.ts +225 -0
  75. package/dist/server/flow-surfaces/approval/builder.js +384 -0
  76. package/dist/server/flow-surfaces/approval/catalog-specs.d.ts +33 -0
  77. package/dist/server/flow-surfaces/approval/catalog-specs.js +156 -0
  78. package/dist/server/flow-surfaces/approval/index.d.ts +14 -0
  79. package/dist/server/flow-surfaces/approval/index.js +40 -0
  80. package/dist/server/flow-surfaces/approval/runtime-config.d.ts +44 -0
  81. package/dist/server/flow-surfaces/approval/runtime-config.js +299 -0
  82. package/dist/server/flow-surfaces/approval/semantic-use.d.ts +23 -0
  83. package/dist/server/flow-surfaces/approval/semantic-use.js +155 -0
  84. package/dist/server/flow-surfaces/association-title-field.d.ts +20 -0
  85. package/dist/server/flow-surfaces/association-title-field.js +158 -0
  86. package/dist/server/flow-surfaces/blueprint/compile-blocks.d.ts +14 -0
  87. package/dist/server/flow-surfaces/blueprint/compile-blocks.js +1007 -0
  88. package/dist/server/flow-surfaces/blueprint/compile-plan.d.ts +13 -0
  89. package/dist/server/flow-surfaces/blueprint/compile-plan.js +308 -0
  90. package/dist/server/flow-surfaces/blueprint/compile-reaction.d.ts +11 -0
  91. package/dist/server/flow-surfaces/blueprint/compile-reaction.js +72 -0
  92. package/dist/server/flow-surfaces/blueprint/defaults.d.ts +26 -0
  93. package/dist/server/flow-surfaces/blueprint/defaults.js +133 -0
  94. package/dist/server/flow-surfaces/blueprint/index.d.ts +12 -0
  95. package/dist/server/flow-surfaces/blueprint/index.js +44 -0
  96. package/dist/server/flow-surfaces/blueprint/normalize-document.d.ts +10 -0
  97. package/dist/server/flow-surfaces/blueprint/normalize-document.js +416 -0
  98. package/dist/server/flow-surfaces/blueprint/private-utils.d.ts +26 -0
  99. package/dist/server/flow-surfaces/blueprint/private-utils.js +182 -0
  100. package/dist/server/flow-surfaces/blueprint/public-types.d.ts +193 -0
  101. package/dist/server/flow-surfaces/blueprint/public-types.js +24 -0
  102. package/dist/server/flow-surfaces/builder.d.ts +211 -0
  103. package/dist/server/flow-surfaces/builder.js +1029 -0
  104. package/dist/server/flow-surfaces/catalog-smart.d.ts +18 -0
  105. package/dist/server/flow-surfaces/catalog-smart.js +239 -0
  106. package/dist/server/flow-surfaces/catalog-smart.projector.d.ts +15 -0
  107. package/dist/server/flow-surfaces/catalog-smart.projector.js +157 -0
  108. package/dist/server/flow-surfaces/catalog-smart.types.d.ts +99 -0
  109. package/dist/server/flow-surfaces/catalog-smart.types.js +24 -0
  110. package/dist/server/flow-surfaces/catalog.d.ts +78 -0
  111. package/dist/server/flow-surfaces/catalog.js +3496 -0
  112. package/dist/server/flow-surfaces/chart-config.d.ts +121 -0
  113. package/dist/server/flow-surfaces/chart-config.js +1394 -0
  114. package/dist/server/flow-surfaces/compose-compiler.d.ts +108 -0
  115. package/dist/server/flow-surfaces/compose-compiler.js +167 -0
  116. package/dist/server/flow-surfaces/compose-runtime.d.ts +93 -0
  117. package/dist/server/flow-surfaces/compose-runtime.js +375 -0
  118. package/dist/server/flow-surfaces/configure-options.d.ts +23 -0
  119. package/dist/server/flow-surfaces/configure-options.js +827 -0
  120. package/dist/server/flow-surfaces/constants.d.ts +351 -0
  121. package/dist/server/flow-surfaces/constants.js +104 -0
  122. package/dist/server/flow-surfaces/context.d.ts +72 -0
  123. package/dist/server/flow-surfaces/context.js +556 -0
  124. package/dist/server/flow-surfaces/contract-guard.d.ts +19 -0
  125. package/dist/server/flow-surfaces/contract-guard.js +402 -0
  126. package/dist/server/flow-surfaces/default-action-popup.d.ts +63 -0
  127. package/dist/server/flow-surfaces/default-action-popup.js +322 -0
  128. package/dist/server/flow-surfaces/default-block-actions.d.ts +32 -0
  129. package/dist/server/flow-surfaces/default-block-actions.js +185 -0
  130. package/dist/server/flow-surfaces/errors.d.ts +47 -0
  131. package/dist/server/flow-surfaces/errors.js +145 -0
  132. package/dist/server/flow-surfaces/executor.d.ts +23 -0
  133. package/dist/server/flow-surfaces/executor.js +132 -0
  134. package/dist/server/flow-surfaces/field-binding-registry.d.ts +23 -0
  135. package/dist/server/flow-surfaces/field-binding-registry.js +391 -0
  136. package/dist/server/flow-surfaces/field-semantics.d.ts +15 -0
  137. package/dist/server/flow-surfaces/field-semantics.js +81 -0
  138. package/dist/server/flow-surfaces/filter-group.d.ts +15 -0
  139. package/dist/server/flow-surfaces/filter-group.js +94 -0
  140. package/dist/server/flow-surfaces/index.d.ts +11 -0
  141. package/dist/server/flow-surfaces/index.js +243 -0
  142. package/dist/server/flow-surfaces/locator.d.ts +28 -0
  143. package/dist/server/flow-surfaces/locator.js +240 -0
  144. package/dist/server/flow-surfaces/node-use-sets.d.ts +15 -0
  145. package/dist/server/flow-surfaces/node-use-sets.js +131 -0
  146. package/dist/server/flow-surfaces/payload-shape.d.ts +9 -0
  147. package/dist/server/flow-surfaces/payload-shape.js +61 -0
  148. package/dist/server/flow-surfaces/placement.d.ts +33 -0
  149. package/dist/server/flow-surfaces/placement.js +195 -0
  150. package/dist/server/flow-surfaces/planning/action-specs.d.ts +179 -0
  151. package/dist/server/flow-surfaces/planning/action-specs.js +190 -0
  152. package/dist/server/flow-surfaces/planning/compiler.d.ts +37 -0
  153. package/dist/server/flow-surfaces/planning/compiler.js +376 -0
  154. package/dist/server/flow-surfaces/planning/context.d.ts +30 -0
  155. package/dist/server/flow-surfaces/planning/context.js +139 -0
  156. package/dist/server/flow-surfaces/planning/created-keys.d.ts +34 -0
  157. package/dist/server/flow-surfaces/planning/created-keys.js +375 -0
  158. package/dist/server/flow-surfaces/planning/key-kind.d.ts +11 -0
  159. package/dist/server/flow-surfaces/planning/key-kind.js +88 -0
  160. package/dist/server/flow-surfaces/planning/key-persistence.d.ts +34 -0
  161. package/dist/server/flow-surfaces/planning/key-persistence.js +148 -0
  162. package/dist/server/flow-surfaces/planning/key-registry.d.ts +40 -0
  163. package/dist/server/flow-surfaces/planning/key-registry.js +206 -0
  164. package/dist/server/flow-surfaces/planning/runtime.d.ts +37 -0
  165. package/dist/server/flow-surfaces/planning/runtime.js +259 -0
  166. package/dist/server/flow-surfaces/planning/step-link.d.ts +14 -0
  167. package/dist/server/flow-surfaces/planning/step-link.js +104 -0
  168. package/dist/server/flow-surfaces/planning/types.d.ts +55 -0
  169. package/dist/server/flow-surfaces/planning/types.js +24 -0
  170. package/dist/server/flow-surfaces/public-data-surface-default-filter.d.ts +20 -0
  171. package/dist/server/flow-surfaces/public-data-surface-default-filter.js +111 -0
  172. package/dist/server/flow-surfaces/reaction/errors.d.ts +20 -0
  173. package/dist/server/flow-surfaces/reaction/errors.js +69 -0
  174. package/dist/server/flow-surfaces/reaction/field-value.d.ts +34 -0
  175. package/dist/server/flow-surfaces/reaction/field-value.js +181 -0
  176. package/dist/server/flow-surfaces/reaction/fingerprint.d.ts +16 -0
  177. package/dist/server/flow-surfaces/reaction/fingerprint.js +71 -0
  178. package/dist/server/flow-surfaces/reaction/linkage.d.ts +136 -0
  179. package/dist/server/flow-surfaces/reaction/linkage.js +882 -0
  180. package/dist/server/flow-surfaces/reaction/meta.d.ts +11 -0
  181. package/dist/server/flow-surfaces/reaction/meta.js +451 -0
  182. package/dist/server/flow-surfaces/reaction/registry.d.ts +156 -0
  183. package/dist/server/flow-surfaces/reaction/registry.js +206 -0
  184. package/dist/server/flow-surfaces/reaction/resolver.d.ts +22 -0
  185. package/dist/server/flow-surfaces/reaction/resolver.js +202 -0
  186. package/dist/server/flow-surfaces/reaction/types.d.ts +241 -0
  187. package/dist/server/flow-surfaces/reaction/types.js +24 -0
  188. package/dist/server/flow-surfaces/reaction/utils.d.ts +17 -0
  189. package/dist/server/flow-surfaces/reaction/utils.js +67 -0
  190. package/dist/server/flow-surfaces/reaction/value-expr.d.ts +15 -0
  191. package/dist/server/flow-surfaces/reaction/value-expr.js +209 -0
  192. package/dist/server/flow-surfaces/reference-guards.d.ts +19 -0
  193. package/dist/server/flow-surfaces/reference-guards.js +103 -0
  194. package/dist/server/flow-surfaces/route-sync.d.ts +47 -0
  195. package/dist/server/flow-surfaces/route-sync.js +392 -0
  196. package/dist/server/flow-surfaces/service-helpers.d.ts +42 -0
  197. package/dist/server/flow-surfaces/service-helpers.js +377 -0
  198. package/dist/server/flow-surfaces/service-utils.d.ts +108 -0
  199. package/dist/server/flow-surfaces/service-utils.js +811 -0
  200. package/dist/server/flow-surfaces/service.d.ts +773 -0
  201. package/dist/server/flow-surfaces/service.js +13008 -0
  202. package/dist/server/flow-surfaces/support-matrix.d.ts +31 -0
  203. package/dist/server/flow-surfaces/support-matrix.js +259 -0
  204. package/dist/server/flow-surfaces/surface-context.d.ts +52 -0
  205. package/dist/server/flow-surfaces/surface-context.js +437 -0
  206. package/dist/server/flow-surfaces/template-compatibility.d.ts +42 -0
  207. package/dist/server/flow-surfaces/template-compatibility.js +189 -0
  208. package/dist/server/flow-surfaces/template-display.d.ts +20 -0
  209. package/dist/server/flow-surfaces/template-display.js +289 -0
  210. package/dist/server/flow-surfaces/template-service-utils.d.ts +62 -0
  211. package/dist/server/flow-surfaces/template-service-utils.js +281 -0
  212. package/dist/server/flow-surfaces/types.d.ts +288 -0
  213. package/dist/server/flow-surfaces/types.js +24 -0
  214. package/dist/server/plugin.js +2 -0
  215. package/dist/swagger/flow-surfaces.d.ts +5964 -0
  216. package/dist/swagger/flow-surfaces.examples.d.ts +1533 -0
  217. package/dist/swagger/flow-surfaces.examples.js +1758 -0
  218. package/dist/swagger/flow-surfaces.js +5315 -0
  219. package/dist/swagger/flow-surfaces.template-action-docs.d.ts +62 -0
  220. package/dist/swagger/flow-surfaces.template-action-docs.js +121 -0
  221. package/dist/swagger/flow-surfaces.template-schemas.d.ts +239 -0
  222. package/dist/swagger/flow-surfaces.template-schemas.js +255 -0
  223. package/dist/swagger/index.d.ts +5969 -0
  224. package/dist/swagger/index.js +50 -0
  225. package/package.json +2 -2
  226. /package/dist/ai/{tools → ai-employees/nathan/skills/frontend-developer/tools}/getContextApis.d.ts +0 -0
  227. /package/dist/ai/{tools → ai-employees/nathan/skills/frontend-developer/tools}/getContextEnvs.d.ts +0 -0
  228. /package/dist/ai/{tools → ai-employees/nathan/skills/frontend-developer/tools}/getContextVars.d.ts +0 -0
  229. /package/dist/ai/{tools → ai-employees/nathan/skills/frontend-developer/tools}/lintAndTestJS.d.ts +0 -0
@@ -0,0 +1,384 @@
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
+ var __create = Object.create;
11
+ var __defProp = Object.defineProperty;
12
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
13
+ var __getOwnPropNames = Object.getOwnPropertyNames;
14
+ var __getProtoOf = Object.getPrototypeOf;
15
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
16
+ var __export = (target, all) => {
17
+ for (var name in all)
18
+ __defProp(target, name, { get: all[name], enumerable: true });
19
+ };
20
+ var __copyProps = (to, from, except, desc) => {
21
+ if (from && typeof from === "object" || typeof from === "function") {
22
+ for (let key of __getOwnPropNames(from))
23
+ if (!__hasOwnProp.call(to, key) && key !== except)
24
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
25
+ }
26
+ return to;
27
+ };
28
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
29
+ // If the importer is in node compatibility mode or this is not an ESM
30
+ // file that has been converted to a CommonJS file using a Babel-
31
+ // compatible transform (i.e. "__esModule" has not been set), then set
32
+ // "default" to the CommonJS "module.exports" for node compatibility.
33
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
34
+ mod
35
+ ));
36
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
37
+ var builder_exports = {};
38
+ __export(builder_exports, {
39
+ buildApprovalActionDefaults: () => buildApprovalActionDefaults,
40
+ buildApprovalApproverSurfaceTree: () => buildApprovalApproverSurfaceTree,
41
+ buildApprovalBlockDefaults: () => buildApprovalBlockDefaults,
42
+ buildApprovalFieldTree: () => buildApprovalFieldTree,
43
+ buildApprovalInitiatorSurfaceTree: () => buildApprovalInitiatorSurfaceTree,
44
+ buildApprovalTaskCardSurfaceTree: () => buildApprovalTaskCardSurfaceTree
45
+ });
46
+ module.exports = __toCommonJS(builder_exports);
47
+ var import_utils = require("@nocobase/utils");
48
+ var import_lodash = __toESM(require("lodash"));
49
+ const APPROVAL_CREATE_NEW_PATTERN_STEP_PARAMS = {
50
+ patternSettings: {
51
+ pattern: {
52
+ pattern: "createNew"
53
+ }
54
+ }
55
+ };
56
+ function buildFieldInitPayload(params) {
57
+ return import_lodash.default.pickBy(
58
+ {
59
+ dataSourceKey: params.dataSourceKey,
60
+ collectionName: params.collectionName,
61
+ fieldPath: params.fieldPath,
62
+ ...params.associationPathName ? { associationPathName: params.associationPathName } : {}
63
+ },
64
+ (value) => !import_lodash.default.isUndefined(value)
65
+ );
66
+ }
67
+ function buildApprovalFieldTree(params) {
68
+ var _a, _b;
69
+ if (params.wrapperUse !== "PatternFormItemModel") {
70
+ return null;
71
+ }
72
+ const initPayload = buildFieldInitPayload(params);
73
+ const wrapperStepParams = {
74
+ fieldSettings: {
75
+ init: initPayload
76
+ }
77
+ };
78
+ if (params.filterFormInit) {
79
+ wrapperStepParams.filterFormItemSettings = {
80
+ init: params.filterFormInit
81
+ };
82
+ }
83
+ return {
84
+ wrapperUid: params.uid,
85
+ innerUid: params.innerUid,
86
+ model: {
87
+ uid: params.uid,
88
+ use: "PatternFormItemModel",
89
+ props: import_lodash.default.cloneDeep(params.wrapperProps || {}),
90
+ stepParams: wrapperStepParams,
91
+ subModels: {
92
+ field: {
93
+ uid: params.innerUid,
94
+ use: "PatternFormFieldModel",
95
+ props: import_lodash.default.merge({}, import_lodash.default.cloneDeep(((_a = params.fieldDefaults) == null ? void 0 : _a.props) || {}), import_lodash.default.cloneDeep(params.fieldProps || {})),
96
+ stepParams: import_lodash.default.merge({}, import_lodash.default.cloneDeep(((_b = params.fieldDefaults) == null ? void 0 : _b.stepParams) || {}), {
97
+ fieldSettings: {
98
+ init: initPayload
99
+ },
100
+ fieldBinding: {
101
+ use: params.fieldUse
102
+ }
103
+ })
104
+ }
105
+ }
106
+ }
107
+ };
108
+ }
109
+ function buildApprovalBlockDefaults(use) {
110
+ switch (String(use || "").trim()) {
111
+ case "ApplyFormModel":
112
+ return {
113
+ stepParams: import_lodash.default.cloneDeep(APPROVAL_CREATE_NEW_PATTERN_STEP_PARAMS),
114
+ subModels: {
115
+ grid: {
116
+ use: "PatternFormGridModel"
117
+ },
118
+ actions: [
119
+ {
120
+ use: "ApplyFormSubmitModel"
121
+ }
122
+ ]
123
+ }
124
+ };
125
+ case "ProcessFormModel":
126
+ return {
127
+ stepParams: import_lodash.default.cloneDeep(APPROVAL_CREATE_NEW_PATTERN_STEP_PARAMS),
128
+ subModels: {
129
+ grid: {
130
+ use: "PatternFormGridModel"
131
+ }
132
+ }
133
+ };
134
+ case "ApprovalDetailsModel":
135
+ return {
136
+ subModels: {
137
+ grid: {
138
+ use: "ApprovalDetailsGridModel"
139
+ }
140
+ }
141
+ };
142
+ default:
143
+ return null;
144
+ }
145
+ }
146
+ function buildApprovalActionDefaults(use) {
147
+ switch (String(use || "").trim()) {
148
+ case "ApplyFormSubmitModel":
149
+ return {
150
+ props: {
151
+ title: '{{t("Submit")}}',
152
+ type: "primary",
153
+ htmlType: "submit"
154
+ }
155
+ };
156
+ case "ApplyFormSaveDraftModel":
157
+ return {
158
+ props: {
159
+ title: '{{t("Save draft", { ns: "@nocobase/plugin-workflow-approval" })}}',
160
+ type: "default",
161
+ htmlType: "submit"
162
+ }
163
+ };
164
+ case "ApplyFormWithdrawModel":
165
+ return {
166
+ props: {
167
+ title: '{{t("Withdraw", { ns: "@nocobase/plugin-workflow-approval" })}}',
168
+ type: "default",
169
+ htmlType: "submit"
170
+ }
171
+ };
172
+ case "ProcessFormApproveModel":
173
+ return {
174
+ props: {
175
+ title: '{{t("Approve", { ns: "@nocobase/plugin-workflow-approval" })}}',
176
+ type: "primary"
177
+ }
178
+ };
179
+ case "ProcessFormRejectModel":
180
+ return {
181
+ props: {
182
+ title: '{{t("Reject", { ns: "@nocobase/plugin-workflow-approval" })}}',
183
+ type: "default",
184
+ danger: true
185
+ }
186
+ };
187
+ case "ProcessFormReturnModel":
188
+ return {
189
+ props: {
190
+ title: '{{t("Return", { ns: "@nocobase/plugin-workflow-approval" })}}',
191
+ type: "default"
192
+ }
193
+ };
194
+ case "ProcessFormDelegateModel":
195
+ return {
196
+ props: {
197
+ title: '{{t("Delegate", { ns: "@nocobase/plugin-workflow-approval" })}}',
198
+ type: "default"
199
+ }
200
+ };
201
+ case "ProcessFormAddAssigneeModel":
202
+ return {
203
+ props: {
204
+ title: '{{t("Add assignee", { ns: "@nocobase/plugin-workflow-approval" })}}',
205
+ type: "default"
206
+ }
207
+ };
208
+ default:
209
+ return null;
210
+ }
211
+ }
212
+ function buildApprovalInitiatorSurfaceTree(options) {
213
+ const pageUid = options.pageUid || (0, import_utils.uid)();
214
+ const tabUid = options.tabUid || (0, import_utils.uid)();
215
+ const gridUid = options.gridUid || (0, import_utils.uid)();
216
+ return {
217
+ uid: pageUid,
218
+ async: true,
219
+ subType: "object",
220
+ use: "TriggerChildPageModel",
221
+ sortIndex: 0,
222
+ flowRegistry: {},
223
+ stepParams: {
224
+ pageSettings: {
225
+ general: {
226
+ displayTitle: false,
227
+ enableTabs: false,
228
+ title: `{{t("Initiator's interface", { ns: "workflow" })}}`
229
+ }
230
+ },
231
+ TriggerChildPageSettings: {
232
+ init: {
233
+ dataSourceKey: options.dataSourceKey,
234
+ collectionName: options.collectionName
235
+ }
236
+ }
237
+ },
238
+ subModels: {
239
+ tabs: [
240
+ {
241
+ uid: tabUid,
242
+ parentId: pageUid,
243
+ use: "TriggerChildPageTabModel",
244
+ subKey: "tabs",
245
+ subType: "array",
246
+ sortIndex: 0,
247
+ flowRegistry: {},
248
+ stepParams: {
249
+ pageTabSettings: {
250
+ tab: {
251
+ title: `{{t("Details")}}`
252
+ }
253
+ }
254
+ },
255
+ subModels: {
256
+ grid: {
257
+ uid: gridUid,
258
+ parentId: tabUid,
259
+ async: true,
260
+ use: "TriggerBlockGridModel",
261
+ subKey: "grid",
262
+ subType: "object",
263
+ sortIndex: 0,
264
+ flowRegistry: {},
265
+ filterManager: []
266
+ }
267
+ }
268
+ }
269
+ ]
270
+ }
271
+ };
272
+ }
273
+ function buildApprovalApproverSurfaceTree(options) {
274
+ const pageUid = options.pageUid || (0, import_utils.uid)();
275
+ const tabUid = options.tabUid || (0, import_utils.uid)();
276
+ const gridUid = options.gridUid || (0, import_utils.uid)();
277
+ return {
278
+ uid: pageUid,
279
+ async: true,
280
+ subType: "object",
281
+ use: "ApprovalChildPageModel",
282
+ sortIndex: 0,
283
+ flowRegistry: {},
284
+ stepParams: {
285
+ pageSettings: {
286
+ general: {
287
+ displayTitle: false,
288
+ enableTabs: false,
289
+ title: `{{t("Approver's interface", { ns: "@nocobase/plugin-workflow-approval" })}}`
290
+ }
291
+ },
292
+ ApprovalChildPageSettings: {
293
+ init: {
294
+ dataSourceKey: options.dataSourceKey,
295
+ collectionName: options.collectionName
296
+ }
297
+ },
298
+ resourceSettings: {
299
+ init: {
300
+ dataSourceKey: options.dataSourceKey,
301
+ collectionName: options.collectionName
302
+ }
303
+ }
304
+ },
305
+ subModels: {
306
+ tabs: [
307
+ {
308
+ uid: tabUid,
309
+ parentId: pageUid,
310
+ use: "ApprovalChildPageTabModel",
311
+ subKey: "tabs",
312
+ subType: "array",
313
+ sortIndex: 0,
314
+ flowRegistry: {},
315
+ stepParams: {
316
+ pageTabSettings: {
317
+ tab: {
318
+ title: `{{t("Details")}}`
319
+ }
320
+ }
321
+ },
322
+ subModels: {
323
+ grid: {
324
+ uid: gridUid,
325
+ parentId: tabUid,
326
+ async: true,
327
+ use: "ApprovalBlockGridModel",
328
+ subKey: "grid",
329
+ subType: "object",
330
+ sortIndex: 0,
331
+ flowRegistry: {},
332
+ filterManager: []
333
+ }
334
+ }
335
+ }
336
+ ]
337
+ }
338
+ };
339
+ }
340
+ function buildApprovalTaskCardSurfaceTree(options) {
341
+ const detailsUid = options.detailsUid || (0, import_utils.uid)();
342
+ const gridUid = options.gridUid || (0, import_utils.uid)();
343
+ return {
344
+ uid: detailsUid,
345
+ async: true,
346
+ subType: "object",
347
+ use: options.detailsUse,
348
+ sortIndex: 0,
349
+ flowRegistry: {},
350
+ stepParams: {
351
+ resourceSettings: {
352
+ init: {
353
+ dataSourceKey: options.dataSourceKey,
354
+ collectionName: options.collectionName
355
+ }
356
+ },
357
+ detailsSettings: {
358
+ layout: {
359
+ layout: "horizontal"
360
+ }
361
+ }
362
+ },
363
+ subModels: {
364
+ grid: {
365
+ uid: gridUid,
366
+ parentId: detailsUid,
367
+ use: options.gridUse,
368
+ subKey: "grid",
369
+ subType: "object",
370
+ sortIndex: 0,
371
+ flowRegistry: {}
372
+ }
373
+ }
374
+ };
375
+ }
376
+ // Annotate the CommonJS export names for ESM import in node:
377
+ 0 && (module.exports = {
378
+ buildApprovalActionDefaults,
379
+ buildApprovalApproverSurfaceTree,
380
+ buildApprovalBlockDefaults,
381
+ buildApprovalFieldTree,
382
+ buildApprovalInitiatorSurfaceTree,
383
+ buildApprovalTaskCardSurfaceTree
384
+ });
@@ -0,0 +1,33 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import type { FlowSurfaceActionScope } from '../types';
10
+ export declare const APPROVAL_FLOW_SURFACE_OWNER_PLUGIN = "@nocobase/plugin-workflow-approval";
11
+ export type ApprovalFlowSurfaceBlockCatalogSpec = {
12
+ key: string;
13
+ label: string;
14
+ use: string;
15
+ requiredInitParams?: string[];
16
+ allowedContainerUses: string[];
17
+ createSupported?: boolean;
18
+ };
19
+ export type ApprovalFlowSurfaceActionCatalogSpec = {
20
+ publicKey: string;
21
+ label: string;
22
+ scope: FlowSurfaceActionScope;
23
+ scene?: string;
24
+ use: string;
25
+ allowedContainerUses: string[];
26
+ createSupported?: boolean;
27
+ };
28
+ export declare const APPROVAL_BLOCK_CATALOG_SPECS: ApprovalFlowSurfaceBlockCatalogSpec[];
29
+ export declare const APPROVAL_ACTION_CATALOG_SPECS: ApprovalFlowSurfaceActionCatalogSpec[];
30
+ export declare const APPROVAL_BLOCK_PUBLIC_KEYS: string[];
31
+ export declare const APPROVAL_ACTION_PUBLIC_KEYS: string[];
32
+ export declare const APPROVAL_BLOCK_OWNER_PLUGIN_BY_USE: Map<string, string>;
33
+ export declare const APPROVAL_ACTION_OWNER_PLUGIN_BY_USE: Map<string, string>;
@@ -0,0 +1,156 @@
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
+ var __defProp = Object.defineProperty;
11
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
12
+ var __getOwnPropNames = Object.getOwnPropertyNames;
13
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
14
+ var __export = (target, all) => {
15
+ for (var name in all)
16
+ __defProp(target, name, { get: all[name], enumerable: true });
17
+ };
18
+ var __copyProps = (to, from, except, desc) => {
19
+ if (from && typeof from === "object" || typeof from === "function") {
20
+ for (let key of __getOwnPropNames(from))
21
+ if (!__hasOwnProp.call(to, key) && key !== except)
22
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
23
+ }
24
+ return to;
25
+ };
26
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
27
+ var catalog_specs_exports = {};
28
+ __export(catalog_specs_exports, {
29
+ APPROVAL_ACTION_CATALOG_SPECS: () => APPROVAL_ACTION_CATALOG_SPECS,
30
+ APPROVAL_ACTION_OWNER_PLUGIN_BY_USE: () => APPROVAL_ACTION_OWNER_PLUGIN_BY_USE,
31
+ APPROVAL_ACTION_PUBLIC_KEYS: () => APPROVAL_ACTION_PUBLIC_KEYS,
32
+ APPROVAL_BLOCK_CATALOG_SPECS: () => APPROVAL_BLOCK_CATALOG_SPECS,
33
+ APPROVAL_BLOCK_OWNER_PLUGIN_BY_USE: () => APPROVAL_BLOCK_OWNER_PLUGIN_BY_USE,
34
+ APPROVAL_BLOCK_PUBLIC_KEYS: () => APPROVAL_BLOCK_PUBLIC_KEYS,
35
+ APPROVAL_FLOW_SURFACE_OWNER_PLUGIN: () => APPROVAL_FLOW_SURFACE_OWNER_PLUGIN
36
+ });
37
+ module.exports = __toCommonJS(catalog_specs_exports);
38
+ const APPROVAL_FLOW_SURFACE_OWNER_PLUGIN = "@nocobase/plugin-workflow-approval";
39
+ const APPROVAL_BLOCK_CATALOG_SPECS = [
40
+ {
41
+ key: "approvalInitiator",
42
+ label: "Approval initiator",
43
+ use: "ApplyFormModel",
44
+ requiredInitParams: ["dataSourceKey", "collectionName"],
45
+ allowedContainerUses: ["TriggerBlockGridModel"],
46
+ createSupported: true
47
+ },
48
+ {
49
+ key: "approvalApprover",
50
+ label: "Approval approver",
51
+ use: "ProcessFormModel",
52
+ requiredInitParams: ["dataSourceKey", "collectionName"],
53
+ allowedContainerUses: ["ApprovalBlockGridModel"],
54
+ createSupported: true
55
+ },
56
+ {
57
+ key: "approvalInformation",
58
+ label: "Approval information",
59
+ use: "ApprovalDetailsModel",
60
+ requiredInitParams: ["dataSourceKey", "collectionName"],
61
+ allowedContainerUses: ["ApprovalBlockGridModel"],
62
+ createSupported: true
63
+ }
64
+ ];
65
+ const APPROVAL_ACTION_CATALOG_SPECS = [
66
+ {
67
+ publicKey: "approvalSubmit",
68
+ label: "Submit",
69
+ scope: "form",
70
+ scene: "form",
71
+ use: "ApplyFormSubmitModel",
72
+ allowedContainerUses: ["ApplyFormModel"],
73
+ createSupported: true
74
+ },
75
+ {
76
+ publicKey: "approvalSaveDraft",
77
+ label: "Save draft",
78
+ scope: "form",
79
+ scene: "form",
80
+ use: "ApplyFormSaveDraftModel",
81
+ allowedContainerUses: ["ApplyFormModel"],
82
+ createSupported: true
83
+ },
84
+ {
85
+ publicKey: "approvalWithdraw",
86
+ label: "Withdraw",
87
+ scope: "form",
88
+ scene: "form",
89
+ use: "ApplyFormWithdrawModel",
90
+ allowedContainerUses: ["ApplyFormModel"],
91
+ createSupported: true
92
+ },
93
+ {
94
+ publicKey: "approvalApprove",
95
+ label: "Approve",
96
+ scope: "form",
97
+ scene: "form",
98
+ use: "ProcessFormApproveModel",
99
+ allowedContainerUses: ["ProcessFormModel"],
100
+ createSupported: true
101
+ },
102
+ {
103
+ publicKey: "approvalReject",
104
+ label: "Reject",
105
+ scope: "form",
106
+ scene: "form",
107
+ use: "ProcessFormRejectModel",
108
+ allowedContainerUses: ["ProcessFormModel"],
109
+ createSupported: true
110
+ },
111
+ {
112
+ publicKey: "approvalReturn",
113
+ label: "Return",
114
+ scope: "form",
115
+ scene: "form",
116
+ use: "ProcessFormReturnModel",
117
+ allowedContainerUses: ["ProcessFormModel"],
118
+ createSupported: true
119
+ },
120
+ {
121
+ publicKey: "approvalDelegate",
122
+ label: "Delegate",
123
+ scope: "form",
124
+ scene: "form",
125
+ use: "ProcessFormDelegateModel",
126
+ allowedContainerUses: ["ProcessFormModel"],
127
+ createSupported: true
128
+ },
129
+ {
130
+ publicKey: "approvalAddAssignee",
131
+ label: "Add assignee",
132
+ scope: "form",
133
+ scene: "form",
134
+ use: "ProcessFormAddAssigneeModel",
135
+ allowedContainerUses: ["ProcessFormModel"],
136
+ createSupported: true
137
+ }
138
+ ];
139
+ const APPROVAL_BLOCK_PUBLIC_KEYS = APPROVAL_BLOCK_CATALOG_SPECS.map((item) => item.key);
140
+ const APPROVAL_ACTION_PUBLIC_KEYS = APPROVAL_ACTION_CATALOG_SPECS.map((item) => item.publicKey);
141
+ const APPROVAL_BLOCK_OWNER_PLUGIN_BY_USE = new Map(
142
+ APPROVAL_BLOCK_CATALOG_SPECS.map((item) => [item.use, APPROVAL_FLOW_SURFACE_OWNER_PLUGIN])
143
+ );
144
+ const APPROVAL_ACTION_OWNER_PLUGIN_BY_USE = new Map(
145
+ APPROVAL_ACTION_CATALOG_SPECS.map((item) => [item.use, APPROVAL_FLOW_SURFACE_OWNER_PLUGIN])
146
+ );
147
+ // Annotate the CommonJS export names for ESM import in node:
148
+ 0 && (module.exports = {
149
+ APPROVAL_ACTION_CATALOG_SPECS,
150
+ APPROVAL_ACTION_OWNER_PLUGIN_BY_USE,
151
+ APPROVAL_ACTION_PUBLIC_KEYS,
152
+ APPROVAL_BLOCK_CATALOG_SPECS,
153
+ APPROVAL_BLOCK_OWNER_PLUGIN_BY_USE,
154
+ APPROVAL_BLOCK_PUBLIC_KEYS,
155
+ APPROVAL_FLOW_SURFACE_OWNER_PLUGIN
156
+ });
@@ -0,0 +1,14 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ export * from './builder';
10
+ export * from './blueprint';
11
+ export * from './blueprint-service';
12
+ export * from './catalog-specs';
13
+ export * from './runtime-config';
14
+ export * from './semantic-use';
@@ -0,0 +1,40 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ var __defProp = Object.defineProperty;
11
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
12
+ var __getOwnPropNames = Object.getOwnPropertyNames;
13
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
14
+ var __copyProps = (to, from, except, desc) => {
15
+ if (from && typeof from === "object" || typeof from === "function") {
16
+ for (let key of __getOwnPropNames(from))
17
+ if (!__hasOwnProp.call(to, key) && key !== except)
18
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
19
+ }
20
+ return to;
21
+ };
22
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
23
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
24
+ var approval_exports = {};
25
+ module.exports = __toCommonJS(approval_exports);
26
+ __reExport(approval_exports, require("./builder"), module.exports);
27
+ __reExport(approval_exports, require("./blueprint"), module.exports);
28
+ __reExport(approval_exports, require("./blueprint-service"), module.exports);
29
+ __reExport(approval_exports, require("./catalog-specs"), module.exports);
30
+ __reExport(approval_exports, require("./runtime-config"), module.exports);
31
+ __reExport(approval_exports, require("./semantic-use"), module.exports);
32
+ // Annotate the CommonJS export names for ESM import in node:
33
+ 0 && (module.exports = {
34
+ ...require("./builder"),
35
+ ...require("./blueprint"),
36
+ ...require("./blueprint-service"),
37
+ ...require("./catalog-specs"),
38
+ ...require("./runtime-config"),
39
+ ...require("./semantic-use")
40
+ });
@@ -0,0 +1,44 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import type FlowModelRepository from '../../repository';
10
+ export declare const APPROVAL_SURFACE_ROOT_USES: Set<string>;
11
+ export declare const APPROVAL_SINGLETON_ACTION_USES: Set<string>;
12
+ type ApprovalRuntimeConfigDeps = {
13
+ db: {
14
+ getRepository: (resourceName: string) => {
15
+ find: (options: Record<string, any>) => Promise<any[]>;
16
+ update: (options: Record<string, any>) => Promise<any>;
17
+ };
18
+ };
19
+ locator: {
20
+ findParentUid: (uid: string, transaction?: any) => Promise<string | null | undefined>;
21
+ };
22
+ repository: Pick<FlowModelRepository, 'findModelById'>;
23
+ };
24
+ export declare class FlowSurfaceApprovalRuntimeConfigService {
25
+ private readonly deps;
26
+ constructor(deps: ApprovalRuntimeConfigDeps);
27
+ private getRepositoryIfAvailable;
28
+ private readModelField;
29
+ private readApprovalConfig;
30
+ private collectApprovalActionNodes;
31
+ findApprovalSurfaceRootForNode(uid: string, transaction?: any): Promise<any>;
32
+ private findApprovalWorkflowBySurfaceRootUid;
33
+ private findApprovalNodeBySurfaceRootUid;
34
+ private patchApprovalRuntimeConfig;
35
+ private getApprovalActionStepValue;
36
+ private buildApprovalReturnRuntimeConfig;
37
+ private buildApprovalReassignRuntimeConfig;
38
+ private syncApprovalWorkflowRuntimeConfig;
39
+ private syncApprovalNodeRuntimeConfig;
40
+ syncApprovalRuntimeConfigForSurfaceRoot(root: any, transaction?: any): Promise<void>;
41
+ syncApprovalRuntimeConfigForNode(uid: string, transaction?: any): Promise<void>;
42
+ assertApprovalActionSingleton(parentUid: string, actionUse: string, transaction?: any): Promise<void>;
43
+ }
44
+ export {};