@uipath/flow-tool 1.202.2 → 1.203.0-preview.180

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 (150) hide show
  1. package/dist/THIRD-PARTY-NOTICES.md +48 -49
  2. package/dist/{authoring-cyybnqy9.js → authoring-tv4dh80p.js} +31 -9
  3. package/dist/{binding-service-xq110a7q.js → binding-service-1hjkvp7f.js} +37 -29
  4. package/dist/{connector-service-1jp3gvb1.js → connector-service-f50vt5ar.js} +225 -57
  5. package/dist/{conversion-FQTRFHRX-j8vsrk1c.js → conversion-FQTRFHRX-5bww6cg9.js} +11 -10
  6. package/dist/de-FGHEJRCI-gn4cf5gh.js +2697 -0
  7. package/dist/de-MUJPA4EB-dpg7t2rw.js +173 -0
  8. package/dist/{debug-conversation-trigger-q5jwq1x7.js → debug-conversation-trigger-nmd9v41y.js} +21 -18
  9. package/dist/{debug-http-client-4ev9xna7.js → debug-http-client-53qk6pc5.js} +2 -2
  10. package/dist/{debug-service-2skv6t3q.js → debug-service-nyk0s6mc.js} +3 -3
  11. package/dist/{edge-service-crgn8x3q.js → edge-service-qs0fmj4c.js} +19 -16
  12. package/dist/{index-4b8634za.js → embedded-file-reader-0sjt4nkj.js} +96 -16641
  13. package/dist/{en-TBNO2WUV-rfe87pgh.js → en-BWGKA5OE-1qkvb9rn.js} +2 -2
  14. package/dist/en-FBPVNKFN-dqt573xn.js +138 -0
  15. package/dist/en-TBNO2WUV-9nan43e5.js +1936 -0
  16. package/dist/es-7SE7HX2X-8yh1aj2y.js +173 -0
  17. package/dist/es-KR3ZSNMP-0cszm2n3.js +2697 -0
  18. package/dist/es-MX-2MYFZU7X-3rek4r73.js +173 -0
  19. package/dist/es-MX-XXZJGC4R-b4fbwe9d.js +2697 -0
  20. package/dist/first-party-service-srxaftkn.js +27 -0
  21. package/dist/{flow-api-p1jy8t6k.js → flow-api-f49qbvf6.js} +8 -8
  22. package/dist/{flow-debug-service-gtz48pcs.js → flow-debug-service-nvx6c5fm.js} +65 -40
  23. package/dist/{flow-eval-node-target-d4q72qzz.js → flow-eval-node-target-rv41h6g2.js} +24 -17
  24. package/dist/flow-eval-run-api-1bw5e0k4.js +13 -0
  25. package/dist/{flow-eval-run-service-bteardyh.js → flow-eval-run-service-bnpf0zhb.js} +105 -220
  26. package/dist/{flow-eval-service-8wn40enf.js → flow-eval-service-p0fbctsk.js} +350 -306
  27. package/dist/flow-init-service-6c5tj22g.js +42 -0
  28. package/dist/{flow-io-91tv36v5.js → flow-io-c05c9hc7.js} +18 -15
  29. package/dist/{flow-migrate-service-4mxge029.js → flow-migrate-service-6dky7rrg.js} +27 -23
  30. package/dist/{flow-pack-service-9s7wmwpf.js → flow-pack-service-3ms1t8nv.js} +44 -36
  31. package/dist/flow-validate-service-hq93ye0w.js +65 -0
  32. package/dist/fr-MDFKNZ4C-h4a122k9.js +173 -0
  33. package/dist/fr-Y6NPVODW-q5ef3htr.js +2697 -0
  34. package/dist/{governance-fetcher-kn29e4eb.js → governance-fetcher-7b0a301w.js} +6 -5
  35. package/dist/{headless-my7j1typ.js → headless-rkxtgwts.js} +42909 -1756
  36. package/dist/{hitl-service-fmrkamr4.js → hitl-service-fpdb3tf5.js} +18 -15
  37. package/dist/{index-1kgxzh8x.js → index-3ts7y9d3.js} +15 -3
  38. package/dist/{index-gbfvfhkw.js → index-4hhb8jhe.js} +6 -4
  39. package/dist/{index-apf8q9y0.js → index-51z10z84.js} +4 -4
  40. package/dist/{index-d1yqqk6q.js → index-55cym5j7.js} +6 -4
  41. package/dist/index-kmp9fmhb.js +25 -0
  42. package/dist/index-sc7ddh21.js +16742 -0
  43. package/dist/{index-acd6bpqc.js → index-ymsd3pyx.js} +12 -15
  44. package/dist/index.js +13 -24
  45. package/dist/init.js +23 -19
  46. package/dist/{input-reader-mm2ydeh5.js → input-reader-tw0j373f.js} +1 -1
  47. package/dist/ja-Q5PXKJ2V-tzf2rvz2.js +2697 -0
  48. package/dist/ja-UTQEAP34-8e0q6swp.js +173 -0
  49. package/dist/known-types-8dhhqk35.js +19 -0
  50. package/dist/ko-AXCHW2OK-askct7f6.js +173 -0
  51. package/dist/ko-AYBDSRZG-am0h0m2r.js +2697 -0
  52. package/dist/{maestro-automate-entry-6bxz7zxn.js → maestro-automate-entry-pqy9xqm3.js} +2 -2
  53. package/dist/{node-2ja52fbg.js → node-98psr4wc.js} +2344 -376
  54. package/dist/{node-service-1ygyqaed.js → node-service-yfyzjg1s.js} +37 -29
  55. package/dist/{node-sync-service-a4grwf1e.js → node-sync-service-zq2ptsep.js} +15 -15
  56. package/dist/{packager-tool-nnm6kw3x.js → packager-tool-0egkaa38.js} +1 -1
  57. package/dist/{packager-tool-0hrz9qfd.js → packager-tool-10t52r3c.js} +7 -7
  58. package/dist/{packager-tool-eb48j42f.js → packager-tool-13xbv18n.js} +100 -127
  59. package/dist/{packager-tool-nq4rcqqg.js → packager-tool-1frs4sr4.js} +32 -2
  60. package/dist/{packager-tool-bddj2zb4.js → packager-tool-1r5dnt9q.js} +1 -1
  61. package/dist/{packager-tool-f0kd5kq4.js → packager-tool-26ydwf12.js} +130 -15
  62. package/dist/{packager-tool-9ydywwp2.js → packager-tool-321a1806.js} +1 -1
  63. package/dist/packager-tool-35hg551a.js +1889 -0
  64. package/dist/{packager-tool-2csx1z2z.js → packager-tool-3j8sdsc2.js} +31 -30
  65. package/dist/{packager-tool-kscf0zaz.js → packager-tool-4rvnss1x.js} +15 -56
  66. package/dist/{packager-tool-t6exvxxr.js → packager-tool-5060zp48.js} +2 -2
  67. package/dist/packager-tool-53w8skv5.js +262 -0
  68. package/dist/{packager-tool-rew0hp2h.js → packager-tool-6k8s7pt9.js} +269 -23
  69. package/dist/{packager-tool-29eg86w6.js → packager-tool-6rsegsby.js} +6 -7
  70. package/dist/packager-tool-795gzq9k.js +208 -0
  71. package/dist/packager-tool-7q6z6npd.js +1937 -0
  72. package/dist/{packager-tool-h1mds3r4.js → packager-tool-8dj442ex.js} +5 -4
  73. package/dist/packager-tool-8qp60s20.js +12 -0
  74. package/dist/{packager-tool-114a3x6s.js → packager-tool-9kx94sj5.js} +16 -6
  75. package/dist/packager-tool-asvprb1k.js +3513 -0
  76. package/dist/{packager-tool-0d7tcvg1.js → packager-tool-b1xs6aty.js} +4 -1
  77. package/dist/{packager-tool-nmqwgqp7.js → packager-tool-bzry3t7v.js} +9 -9
  78. package/dist/{packager-tool-nt7g81h7.js → packager-tool-carzh1jy.js} +10 -10
  79. package/dist/packager-tool-d88rqwk8.js +135 -0
  80. package/dist/{packager-tool-pm3qh1hy.js → packager-tool-dh5nppv4.js} +1 -1
  81. package/dist/{packager-tool-r87gxwqa.js → packager-tool-e87tzg4y.js} +2 -2
  82. package/dist/{packager-tool-d0w3423x.js → packager-tool-e9yc5m6b.js} +1 -1
  83. package/dist/packager-tool-fvm2dddf.js +6297 -0
  84. package/dist/{packager-tool-3bra2c4j.js → packager-tool-gctpkdzs.js} +1 -1
  85. package/dist/packager-tool-gdtpsdn7.js +342 -0
  86. package/dist/{packager-tool-aa481g36.js → packager-tool-gpwec9sp.js} +6 -6
  87. package/dist/{packager-tool-a1hbfmws.js → packager-tool-gzpvdcnw.js} +124 -2
  88. package/dist/{packager-tool-03hjxcd7.js → packager-tool-h9d8c9rf.js} +1 -1
  89. package/dist/packager-tool-j78fwwhq.js +16 -0
  90. package/dist/packager-tool-jysvpt8p.js +11 -0
  91. package/dist/{packager-tool-5kd7msdf.js → packager-tool-nsmy7aap.js} +5 -5
  92. package/dist/packager-tool-paq9c70w.js +1332 -0
  93. package/dist/{packager-tool-tv33t02p.js → packager-tool-pszx10r5.js} +310 -13
  94. package/dist/{packager-tool-7qzyj26r.js → packager-tool-r45r9gk6.js} +209 -199
  95. package/dist/{packager-tool-sc5tddfj.js → packager-tool-s0mzv3sx.js} +1 -1
  96. package/dist/{packager-tool-pdg7hwvw.js → packager-tool-t9c77psy.js} +3098 -3179
  97. package/dist/{packager-tool-0880myh2.js → packager-tool-v31s32s4.js} +23 -5
  98. package/dist/{packager-tool-vfb74f9p.js → packager-tool-vbser1d9.js} +7 -7
  99. package/dist/packager-tool-vcjq9xkc.js +1895 -0
  100. package/dist/{packager-tool-w20r6n9v.js → packager-tool-vck7ct1e.js} +2877 -2221
  101. package/dist/{packager-tool-e8td7b01.js → packager-tool-vdc8r21p.js} +10328 -16610
  102. package/dist/{packager-tool-yr3bws42.js → packager-tool-vqcnvaae.js} +15 -15
  103. package/dist/{packager-tool-n7x6kxph.js → packager-tool-w22107ex.js} +8 -8
  104. package/dist/packager-tool-w5a1hhyj.js +13 -0
  105. package/dist/{packager-tool-rmh1jea6.js → packager-tool-xsta8jfz.js} +4 -3
  106. package/dist/packager-tool-yvva2vc5.js +261 -0
  107. package/dist/{packager-tool-9y5am147.js → packager-tool-z185rq2a.js} +4 -4
  108. package/dist/{packager-tool-gbzpz3qn.js → packager-tool-z894s8rx.js} +10 -13
  109. package/dist/packager-tool.js +17 -14
  110. package/dist/pt-3DIO5QWG-59b3f4bc.js +173 -0
  111. package/dist/pt-BR-TKHNHMET-dn6zxk1d.js +2697 -0
  112. package/dist/pt-BR-Y6K6XHXK-mp3hwhw1.js +173 -0
  113. package/dist/pt-ROXU257Y-yd80gx6s.js +2697 -0
  114. package/dist/ro-AVAWPKOO-42m6am1w.js +2697 -0
  115. package/dist/ro-BWR3ONRR-vzx3hy8a.js +173 -0
  116. package/dist/ru-GSCT4ARZ-jrxwev63.js +10 -0
  117. package/dist/ru-WBLQ5B2U-s4em88p0.js +10 -0
  118. package/dist/{serialization-BXU6AKAN-n5b0v0kd.js → serialization-BXU6AKAN-z0vcrhpz.js} +13 -12
  119. package/dist/services/connector-binding-validator.d.ts +10 -1
  120. package/dist/services/definitions-lookup.d.ts +27 -0
  121. package/dist/services/flow-debug-service.d.ts +290 -0
  122. package/dist/services/flow-eval-types.d.ts +2 -2
  123. package/dist/services/flow-eval-utils.d.ts +29 -0
  124. package/dist/services/flow-validate-service.d.ts +39 -0
  125. package/dist/services/node-validators/connector-validator.d.ts +8 -0
  126. package/dist/services/vars-reference-rule.d.ts +113 -13
  127. package/dist/{shared-utils-ka4xn0nn.js → shared-utils-wv356cvj.js} +1 -1
  128. package/dist/tidy-service-cxpm6pcy.js +39 -0
  129. package/dist/tool.js +13 -24
  130. package/dist/tr-5IIHSFW5-hw4cewew.js +173 -0
  131. package/dist/tr-JMIP7ZSL-fb67ft9w.js +2696 -0
  132. package/dist/utils/handle-expansion.d.ts +34 -0
  133. package/dist/utils/write-resolved-flow.d.ts +7 -0
  134. package/dist/validation.js +46 -39
  135. package/dist/{variable-service-caa9axmz.js → variable-service-c1f91388.js} +22 -19
  136. package/dist/{wait-for-flow-job-xtnb6zfc.js → wait-for-flow-job-yp3mhy43.js} +8 -8
  137. package/dist/zh-CN-IFFXSEJS-tke4mzty.js +2697 -0
  138. package/dist/zh-CN-R2KU4U5L-tc1hat59.js +173 -0
  139. package/dist/zh-TW-GNKMELBF-j674515r.js +173 -0
  140. package/dist/zh-TW-IYBNYAMG-wcan0qpb.js +2697 -0
  141. package/package.json +3 -2
  142. package/dist/flow-init-service-a4td40wm.js +0 -38
  143. package/dist/flow-validate-service-bd4zxhfx.js +0 -59
  144. package/dist/known-types-eq32py2n.js +0 -20
  145. package/dist/packager-tool-2wefykg9.js +0 -106
  146. package/dist/packager-tool-7t3rgb7f.js +0 -4945
  147. package/dist/packager-tool-8j92afwp.js +0 -58
  148. package/dist/packager-tool-jjpc0yka.js +0 -304
  149. package/dist/tidy-service-44n8x2mn.js +0 -36
  150. /package/dist/{localization-w8ada88j.js → localization-y790z9vm.js} +0 -0
@@ -2,18 +2,15 @@ import {
2
2
  isConnectorTriggerType,
3
3
  isConnectorWaitForEventType,
4
4
  isEventDrivenConnectorType,
5
+ readEssentialConfiguration,
5
6
  scanDetailForCrossNodeBindings
6
- } from "./packager-tool-2wefykg9.js";
7
+ } from "./packager-tool-yvva2vc5.js";
8
+ import"./packager-tool-t9c77psy.js";
7
9
  import {
8
10
  regenerateBindingsFile
9
- } from "./packager-tool-nmqwgqp7.js";
10
- import"./packager-tool-bddj2zb4.js";
11
- import"./packager-tool-w0kr4mbc.js";
12
- import"./packager-tool-7t3rgb7f.js";
13
- import"./packager-tool-03hjxcd7.js";
14
- import"./packager-tool-h1mds3r4.js";
15
- import"./packager-tool-114a3x6s.js";
16
- import"./packager-tool-sc5tddfj.js";
11
+ } from "./packager-tool-bzry3t7v.js";
12
+ import"./packager-tool-1r5dnt9q.js";
13
+ import"./packager-tool-8dj442ex.js";
17
14
  import {
18
15
  ACTIVITY_VERSION_V4,
19
16
  FilterNotSupportedError,
@@ -33,49 +30,63 @@ import {
33
30
  isV4ActivityConfiguration,
34
31
  normalizeHttpMethod,
35
32
  substituteFilterVariables
36
- } from "./packager-tool-2csx1z2z.js";
37
- import"./packager-tool-nnm6kw3x.js";
38
- import"./packager-tool-f0kd5kq4.js";
39
- import"./packager-tool-0gctz400.js";
33
+ } from "./packager-tool-3j8sdsc2.js";
34
+ import"./packager-tool-0egkaa38.js";
35
+ import"./packager-tool-dh5nppv4.js";
36
+ import"./packager-tool-w0kr4mbc.js";
37
+ import"./packager-tool-35hg551a.js";
38
+ import"./packager-tool-h9d8c9rf.js";
39
+ import"./packager-tool-9kx94sj5.js";
40
+ import {
41
+ findNodeDefinition
42
+ } from "./packager-tool-w5a1hhyj.js";
43
+ import"./packager-tool-s0mzv3sx.js";
44
+ import"./packager-tool-8qp60s20.js";
45
+ import"./packager-tool-26ydwf12.js";
40
46
  import"./packager-tool-qa9gftnj.js";
47
+ import"./packager-tool-0gctz400.js";
41
48
  import"./packager-tool-yc4kw997.js";
42
- import"./packager-tool-pm3qh1hy.js";
49
+ import"./packager-tool-vck7ct1e.js";
50
+ import"./packager-tool-paq9c70w.js";
43
51
  import {
44
52
  readFlowWorkflow,
45
53
  writeFlowWorkflow
46
- } from "./packager-tool-n7x6kxph.js";
47
- import"./packager-tool-7qzyj26r.js";
54
+ } from "./packager-tool-w22107ex.js";
55
+ import"./packager-tool-r45r9gk6.js";
48
56
  import {
49
57
  addBinding
50
- } from "./packager-tool-29eg86w6.js";
51
- import"./packager-tool-3bra2c4j.js";
58
+ } from "./packager-tool-6rsegsby.js";
59
+ import"./packager-tool-gctpkdzs.js";
52
60
  import"./packager-tool-2513jrxr.js";
53
- import"./packager-tool-0d7tcvg1.js";
61
+ import"./packager-tool-b1xs6aty.js";
54
62
  import"./packager-tool-nkrmjr3a.js";
63
+ import {
64
+ generateRandomId
65
+ } from "./packager-tool-vcjq9xkc.js";
55
66
  import"./packager-tool-rs6jm14d.js";
56
67
  import"./packager-tool-hk1gxnth.js";
57
- import"./packager-tool-aa481g36.js";
58
- import"./packager-tool-yr3bws42.js";
68
+ import"./packager-tool-7q6z6npd.js";
69
+ import"./packager-tool-sc961w0q.js";
70
+ import"./packager-tool-gpwec9sp.js";
71
+ import"./packager-tool-vqcnvaae.js";
72
+ import"./packager-tool-gbgfwx8f.js";
73
+ import"./packager-tool-d88rqwk8.js";
74
+ import"./packager-tool-jysvpt8p.js";
75
+ import"./packager-tool-fvm2dddf.js";
76
+ import"./packager-tool-p79yh9ww.js";
77
+ import"./packager-tool-vdc8r21p.js";
59
78
  import"./packager-tool-z83pga0z.js";
60
79
  import"./packager-tool-6ejqwbw9.js";
61
80
  import"./packager-tool-mcaf4ewf.js";
62
81
  import"./packager-tool-eypvc2kv.js";
63
82
  import {
64
83
  catchError,
65
- extractErrorMessageSync
66
- } from "./packager-tool-rew0hp2h.js";
84
+ extractErrorMessageSync,
85
+ logger
86
+ } from "./packager-tool-6k8s7pt9.js";
67
87
  import {
68
88
  getFileSystem
69
89
  } from "./packager-tool-0v3s8r01.js";
70
- import"./packager-tool-w20r6n9v.js";
71
- import"./packager-tool-jjpc0yka.js";
72
- import"./packager-tool-gbgfwx8f.js";
73
- import"./packager-tool-r87gxwqa.js";
74
- import"./packager-tool-sc961w0q.js";
75
- import {
76
- generateRandomId
77
- } from "./packager-tool-e8td7b01.js";
78
- import"./packager-tool-p79yh9ww.js";
79
90
  import"./packager-tool-4mna26cc.js";
80
91
  import"./packager-tool-c23zrhj8.js";
81
92
  import"./packager-tool-1yh8g550.js";
@@ -273,6 +284,9 @@ async function createConnectionResourceFile(fs, flowFilePath, connectionId, conn
273
284
  if (await fs.exists(resourcePath)) {
274
285
  return;
275
286
  }
287
+ if (await hasConnectionResourceWithKey(fs, resourceDir, connectionId)) {
288
+ return;
289
+ }
276
290
  await fs.mkdir(resourceDir, { recursive: true });
277
291
  const resourceFile = {
278
292
  docVersion: "1.0.0",
@@ -301,6 +315,23 @@ async function createConnectionResourceFile(fs, flowFilePath, connectionId, conn
301
315
  };
302
316
  await fs.writeFile(resourcePath, JSON.stringify(resourceFile, null, 2));
303
317
  }
318
+ async function hasConnectionResourceWithKey(fs, resourceDir, connectionId) {
319
+ if (!await fs.exists(resourceDir)) {
320
+ return false;
321
+ }
322
+ for (const file of await fs.readdir(resourceDir)) {
323
+ if (!file.endsWith(".json"))
324
+ continue;
325
+ const [readErr, raw] = await catchError(fs.readFile(fs.path.join(resourceDir, file), "utf-8"));
326
+ if (readErr || !raw)
327
+ continue;
328
+ const [parseErr, parsed] = catchError(() => JSON.parse(raw));
329
+ if (!parseErr && parsed?.resource?.key === connectionId) {
330
+ return true;
331
+ }
332
+ }
333
+ return false;
334
+ }
304
335
  var VALID_DETAIL_KEYS = new Set([
305
336
  "connectionId",
306
337
  "folderKey",
@@ -573,12 +604,156 @@ function hasFileResponseField(metadata, method) {
573
604
  return field.type === "file" || field.type === "octet-stream";
574
605
  });
575
606
  }
576
- function patchOutputType(definitions, nodeType, type) {
577
- const def = definitions.find((d) => d.nodeType === nodeType);
607
+ function patchOutputType(definitions, node, type) {
608
+ const def = findNodeDefinition(definitions, node);
578
609
  if (def?.outputDefinition?.output) {
579
610
  def.outputDefinition.output.type = type;
580
611
  }
581
612
  }
613
+ function isStringLikeType(type) {
614
+ return type === "string" || type === "text";
615
+ }
616
+ function requiredValueSchema(type, label) {
617
+ return isStringLikeType(type) ? { type: "string", minLength: 1 } : {
618
+ minLength: 1,
619
+ not: { enum: [null] },
620
+ errorMessage: { not: `The "${label}" field is required.` }
621
+ };
622
+ }
623
+ var REQUIRED_INPUT_BUCKETS = [
624
+ "bodyParameters",
625
+ "queryParameters",
626
+ "pathParameters"
627
+ ];
628
+ var REQUIRED_INPUTS_STAMP = "uip-cli:derived-required-inputs";
629
+ function buildRequiredInputDefinition(metadata, method) {
630
+ const httpMethod = normalizeHttpMethod(method);
631
+ const fieldsRaw = metadata.fields ?? {};
632
+ const fields = Array.isArray(fieldsRaw) ? fieldsRaw : Object.values(fieldsRaw);
633
+ const methodMap = metadata.metadata?.method ?? {};
634
+ const methodInfo = methodMap[method] ?? Object.values(methodMap).find((m) => m.method === httpMethod);
635
+ const buckets = {
636
+ bodyParameters: { required: [], schemas: {} },
637
+ queryParameters: { required: [], schemas: {} },
638
+ pathParameters: { required: [], schemas: {} }
639
+ };
640
+ const mark = (bucket, name, type, label) => {
641
+ if (buckets[bucket].required.includes(name))
642
+ return;
643
+ buckets[bucket].required.push(name);
644
+ buckets[bucket].schemas[name] = requiredValueSchema(type, label);
645
+ };
646
+ const multipartNames = new Set((methodInfo?.parameters ?? []).filter((p) => p.type === "multipart").map((p) => p.name));
647
+ for (const field of fields) {
648
+ const fm = field.method?.[method] ?? field.method?.[httpMethod];
649
+ if (!fm?.required || !fm.request)
650
+ continue;
651
+ if (multipartNames.has(field.name))
652
+ continue;
653
+ if (field.type === "file" || field.type === "octet-stream")
654
+ continue;
655
+ mark("bodyParameters", field.name, field.type, field.displayName || field.name);
656
+ }
657
+ for (const param of methodInfo?.parameters ?? []) {
658
+ if (!param.required || param.type === "multipart")
659
+ continue;
660
+ const bucket = param.type === "query" ? "queryParameters" : param.type === "path" ? "pathParameters" : "bodyParameters";
661
+ if (bucket === "bodyParameters" && param.name === "body" && param.dataType === "object") {
662
+ continue;
663
+ }
664
+ mark(bucket, param.name, param.dataType, param.displayName || param.name);
665
+ }
666
+ const detailProps = {};
667
+ const detailRequired = [];
668
+ for (const bucket of REQUIRED_INPUT_BUCKETS) {
669
+ const { required, schemas } = buckets[bucket];
670
+ if (required.length === 0)
671
+ continue;
672
+ detailProps[bucket] = {
673
+ type: "object",
674
+ properties: schemas,
675
+ required
676
+ };
677
+ detailRequired.push(bucket);
678
+ }
679
+ if (detailRequired.length === 0)
680
+ return {};
681
+ return {
682
+ $comment: REQUIRED_INPUTS_STAMP,
683
+ type: "object",
684
+ properties: {
685
+ detail: {
686
+ type: "object",
687
+ properties: detailProps,
688
+ required: detailRequired
689
+ }
690
+ },
691
+ required: ["detail"]
692
+ };
693
+ }
694
+ function patchRequiredInputs(workflow, definitions, node, metadata, method, operation) {
695
+ const nodeType = node.type ?? "";
696
+ const def = findNodeDefinition(definitions, node);
697
+ if (!def)
698
+ return;
699
+ const existing = def.inputDefinition;
700
+ const isEmpty = !existing || typeof existing === "object" && Object.keys(existing).length === 0;
701
+ const isCliStamped = !!existing && typeof existing === "object" && existing.$comment === REQUIRED_INPUTS_STAMP;
702
+ if (!isEmpty && !isCliStamped) {
703
+ logger.debug(`patchRequiredInputs: "${nodeType}" carries a manifest-authored inputDefinition (no "${REQUIRED_INPUTS_STAMP}" stamp) — leaving it untouched.`);
704
+ return;
705
+ }
706
+ const thisMethod = normalizeHttpMethod(method).toUpperCase();
707
+ const thisOperation = operation.operation?.toLowerCase();
708
+ let conflict = false;
709
+ const collect = (nodes) => {
710
+ for (const n of nodes ?? []) {
711
+ if (n === node || n.type !== nodeType)
712
+ continue;
713
+ if (findNodeDefinition(definitions, n) !== def)
714
+ continue;
715
+ const detail = n.inputs?.detail;
716
+ const m = detail && typeof detail === "object" ? detail.method : undefined;
717
+ const essential = detail && typeof detail === "object" ? readEssentialConfiguration(detail) : undefined;
718
+ const hasMethod = typeof m === "string" && m.length > 0;
719
+ if (!hasMethod && essential === undefined) {
720
+ conflict = true;
721
+ return;
722
+ }
723
+ if (hasMethod && normalizeHttpMethod(m).toUpperCase() !== thisMethod) {
724
+ conflict = true;
725
+ return;
726
+ }
727
+ const siblingObject = essential?.objectName;
728
+ if (typeof siblingObject === "string" && siblingObject.length > 0 && siblingObject !== operation.objectName) {
729
+ conflict = true;
730
+ return;
731
+ }
732
+ const siblingOperation = essential?.operation;
733
+ if (typeof siblingOperation === "string" && siblingOperation.length > 0 && thisOperation !== undefined && siblingOperation.toLowerCase() !== thisOperation) {
734
+ conflict = true;
735
+ return;
736
+ }
737
+ const siblingPath = essential?.path;
738
+ if (typeof siblingPath === "string" && siblingPath.length > 0 && operation.path !== undefined && siblingPath !== operation.path) {
739
+ conflict = true;
740
+ return;
741
+ }
742
+ }
743
+ };
744
+ collect(workflow.nodes);
745
+ const subflows = workflow.subflows;
746
+ for (const entry of Object.values(subflows ?? {})) {
747
+ if (conflict)
748
+ break;
749
+ collect(entry?.nodes);
750
+ }
751
+ if (conflict) {
752
+ def.inputDefinition = {};
753
+ return;
754
+ }
755
+ def.inputDefinition = buildRequiredInputDefinition(metadata, method);
756
+ }
582
757
  function buildAgentToolParamsFromMetadata(metadata, method) {
583
758
  const fieldsRaw = metadata.fields ?? {};
584
759
  const fields = Array.isArray(fieldsRaw) ? fieldsRaw : Object.values(fieldsRaw);
@@ -670,11 +845,10 @@ async function configureActivity(workflow, node, config) {
670
845
  const isV4Activity = isV4ActivityConfiguration(instanceParameters);
671
846
  let objectName;
672
847
  if (isV4Activity) {
673
- const activityName = instanceParameters.activityName;
674
- if (typeof activityName !== "string" || !activityName) {
675
- throw new InvalidDetailError(`"${node.type}" is a 4.0.0 activity but its definition's configuration carries no activityName — the local registry copy may be stale. Run 'uip maestro flow registry pull --force', delete the definitions[] entry, and re-add the node.`);
848
+ if (typeof instanceParameters.objectName !== "string" || !instanceParameters.objectName) {
849
+ throw new InvalidDetailError(`"${node.type}" is a 4.0.0 activity but its definition's configuration carries no objectName — the local registry copy may be stale. Run 'uip maestro flow registry pull --force', delete the definitions[] entry, and re-add the node.`);
676
850
  }
677
- objectName = activityName;
851
+ objectName = instanceParameters.objectName;
678
852
  } else {
679
853
  objectName = resolveObjectName(instanceParameters, context, config, connectorKey, definitions, node.type ?? "");
680
854
  }
@@ -692,23 +866,12 @@ async function configureActivity(workflow, node, config) {
692
866
  method: normalizeHttpMethod(config.method),
693
867
  endpoint: config.endpoint
694
868
  };
695
- if (isV4Activity) {
696
- const v4Body = {};
697
- if (config.bodyParameters)
698
- v4Body.body = config.bodyParameters;
699
- if (config.queryParameters)
700
- v4Body.query = config.queryParameters;
701
- if (config.pathParameters)
702
- v4Body.pathParameters = config.pathParameters;
703
- detail.bodyParameters = v4Body;
704
- } else {
705
- if (config.bodyParameters)
706
- detail.bodyParameters = config.bodyParameters;
707
- if (config.queryParameters)
708
- detail.queryParameters = config.queryParameters;
709
- if (config.pathParameters)
710
- detail.pathParameters = config.pathParameters;
711
- }
869
+ if (config.bodyParameters)
870
+ detail.bodyParameters = config.bodyParameters;
871
+ if (config.queryParameters)
872
+ detail.queryParameters = config.queryParameters;
873
+ if (config.pathParameters)
874
+ detail.pathParameters = config.pathParameters;
712
875
  if (activityTypeId)
713
876
  detail.uiPathActivityTypeId = activityTypeId;
714
877
  detail.errorState = { issues: [] };
@@ -818,7 +981,12 @@ async function configureActivity(workflow, node, config) {
818
981
  if (inputMeta) {
819
982
  detail.inputMetadata = inputMeta;
820
983
  }
821
- patchOutputType(definitions, node.type ?? "", hasFileResponseField(metadata, config.method) ? "file" : isListOperation(methodInfo.operation) ? "array" : "object");
984
+ patchOutputType(definitions, node, hasFileResponseField(metadata, config.method) ? "file" : isListOperation(methodInfo.operation) ? "array" : "object");
985
+ patchRequiredInputs(workflow, definitions, node, metadata, config.method, {
986
+ objectName,
987
+ path: methodInfo.path,
988
+ operation: methodInfo.operation
989
+ });
822
990
  } else {
823
991
  throw new Error(`IS metadata for ${connectorKey}/${objectName} has no entry for method "${config.method}" — cannot build configuration`);
824
992
  }
@@ -947,4 +1115,4 @@ export {
947
1115
  validateManagedHttpDetail
948
1116
  };
949
1117
 
950
- //# debugId=2B21A5B02A95F5B664756E2164756E21
1118
+ //# debugId=D7F2B1C426A0ACDF64756E2164756E21
@@ -4,7 +4,7 @@ import {
4
4
  getExpandedSize,
5
5
  getNodeDimensions,
6
6
  isContainerNodeManifest
7
- } from "./packager-tool-9y5am147.js";
7
+ } from "./packager-tool-z185rq2a.js";
8
8
  import {
9
9
  require_lib
10
10
  } from "./packager-tool-zfrp8ecz.js";
@@ -21,12 +21,7 @@ import {
21
21
  isMultiRecordRead,
22
22
  resolveNodeOutputTypeSchema,
23
23
  withFileShape
24
- } from "./packager-tool-yr3bws42.js";
25
- import"./packager-tool-z83pga0z.js";
26
- import {
27
- init_esm_shims
28
- } from "./packager-tool-6ejqwbw9.js";
29
- import"./packager-tool-mcaf4ewf.js";
24
+ } from "./packager-tool-vqcnvaae.js";
30
25
  import"./packager-tool-gbgfwx8f.js";
31
26
  import {
32
27
  DYNAMIC_EXTRACT_NODE_TYPE,
@@ -39,8 +34,14 @@ import {
39
34
  isSubflowNodeType,
40
35
  isUnsafeKey,
41
36
  supportsVariableUpdates
42
- } from "./packager-tool-e8td7b01.js";
37
+ } from "./packager-tool-fvm2dddf.js";
43
38
  import"./packager-tool-p79yh9ww.js";
39
+ import"./packager-tool-vdc8r21p.js";
40
+ import"./packager-tool-z83pga0z.js";
41
+ import {
42
+ init_esm_shims
43
+ } from "./packager-tool-6ejqwbw9.js";
44
+ import"./packager-tool-mcaf4ewf.js";
44
45
  import"./packager-tool-4mna26cc.js";
45
46
  import"./packager-tool-c23zrhj8.js";
46
47
  import {
@@ -1275,7 +1276,7 @@ function applyGlobalInputOverrides(raw, inputs) {
1275
1276
  }
1276
1277
  }
1277
1278
  }
1278
- var warmSerializationChunks = () => Promise.all([import("./index-d1yqqk6q.js"), import("./serialization-BXU6AKAN-n5b0v0kd.js")]);
1279
+ var warmSerializationChunks = () => Promise.all([import("./index-55cym5j7.js"), import("./serialization-BXU6AKAN-z0vcrhpz.js")]);
1279
1280
  async function flowJsonToBpmnXml(flowJson, options) {
1280
1281
  const [{ fileFormatToInMemoryWorkflow }, { toXml }] = await warmSerializationChunks();
1281
1282
  const raw = JSON.parse(flowJson);
@@ -1314,4 +1315,4 @@ export {
1314
1315
  xyFlowToWorkflow
1315
1316
  };
1316
1317
 
1317
- //# debugId=F58F8A37DD7B605964756E2164756E21
1318
+ //# debugId=7303B7BDBDC933A464756E2164756E21