@uipath/maestro-tool 1.204.0 → 1.205.0-preview.258

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 (258) hide show
  1. package/README.md +3 -3
  2. package/dist/{DmnFactory-VWZOSZHH-ggnfcqpa.js → DmnFactory-L7MABUC6-qkvfv1cw.js} +143 -98
  3. package/dist/{KieDmnMarshaller-6TTUU5B4-6apscj68.js → KieDmnMarshaller-LGE63WDG-cybersk4.js} +3 -3
  4. package/dist/THIRD-PARTY-NOTICES.md +47 -23
  5. package/dist/{authoring-ed7fgg74.js → authoring-5xyc2bbq.js} +8 -6
  6. package/dist/{authoring-1qn6m2g3.js → authoring-ehed6df3.js} +8 -6
  7. package/dist/{authoring-ex7mq672.js → authoring-rw21p50g.js} +8 -6
  8. package/dist/{binding-service-dj04a6e6.js → binding-service-b2v8y2sb.js} +44 -35
  9. package/dist/{bpmn-action-type-validator-cja8vct2.js → bpmn-action-type-validator-xg4ncg63.js} +2 -2
  10. package/dist/{bpmn-binding-resolver-3v5223kx.js → bpmn-binding-resolver-wz7xk54x.js} +9 -7
  11. package/dist/{bpmn-branch-a25m8bc2.js → bpmn-branch-ywmc5egw.js} +48 -47
  12. package/dist/{bpmn-format-service-64fsaq4j.js → bpmn-format-service-aq8ekvy2.js} +7 -5
  13. package/dist/{bpmn-refresh-service-ytf3ngzm.js → bpmn-refresh-service-gy1ekx3m.js} +10 -8
  14. package/dist/{bpmn-update-metadata-service-jpz5mfk4.js → bpmn-update-metadata-service-rnf421er.js} +7 -5
  15. package/dist/bpmn-validate-service-7e3q83nh.js +16 -0
  16. package/dist/{business-rule-export-j6xxtp5s.js → business-rule-export-xa719ws5.js} +2 -2
  17. package/dist/canvas-notes-xc2ejzqj.js +23 -0
  18. package/dist/{case-api-bxcxbgm9.js → case-api-v64traxv.js} +9 -7
  19. package/dist/case-bindings-service-hwz2h03e.js +434 -0
  20. package/dist/case-debug-solution-projects-xae2d4vj.js +34 -0
  21. package/dist/{case-debug-studio-web-service-kt5efenk.js → case-debug-studio-web-service-5h6djff3.js} +22 -14
  22. package/dist/{case-described-io-service-kn3rvy53.js → case-described-io-service-tap9pk70.js} +41 -11
  23. package/dist/case-event-trigger-bindings-z4q1kzgv.js +20 -0
  24. package/dist/{case-format-service-k8rcv0wp.js → case-format-service-q42ba5pn.js} +6 -4
  25. package/dist/{case-pack-service-92trp8xj.js → case-pack-service-0j9r3cd2.js} +9 -7
  26. package/dist/case-schema-version-zs5qsr1b.js +20 -0
  27. package/dist/{case-shape-reader-ftc4ve13.js → case-shape-reader-14qzcj4v.js} +1 -1
  28. package/dist/{case-splice-service-7n51cpx3.js → case-splice-service-bk6rvr75.js} +60 -11
  29. package/dist/{case-validate-service-c8jcvw85.js → case-validate-service-80p52d8r.js} +134 -46
  30. package/dist/{connector-enrichment-service-ba0vq2sk.js → connector-enrichment-service-9p98gfmc.js} +32 -28
  31. package/dist/{connector-lookup-service-mzfsqb21.js → connector-lookup-service-v39ab3qh.js} +10 -8
  32. package/dist/{connector-service-8yk65k3n.js → connector-service-yz5c6xag.js} +229 -52
  33. package/dist/connector-task-shape-dcb3v2r5.js +14 -0
  34. package/dist/{connector-task-spec-bn3qaa1w.js → connector-task-spec-pvzzenwg.js} +206 -49
  35. package/dist/de-UZI7FJDO-awjpqfz0.js +200 -0
  36. package/dist/{de-MUJPA4EB-dpg7t2rw.js → de-UZI7FJDO-mwvc4cxe.js} +29 -2
  37. package/dist/{de-FGHEJRCI-rv513mfh.js → de-WLW6KWOJ-2qnsqdtw.js} +238 -31
  38. package/dist/debug-conversation-trigger-f4a07w23.js +33 -0
  39. package/dist/{debug-http-client-73errmgs.js → debug-http-client-8t7t701c.js} +7 -5
  40. package/dist/{debug-service-8kjtrm88.js → debug-service-c7y7f216.js} +8 -6
  41. package/dist/{edge-service-7092t84f.js → edge-service-vnn1p29d.js} +18 -13
  42. package/dist/{embedded-file-reader-v8c2yj2a.js → embedded-file-reader-r66242ey.js} +2 -2
  43. package/dist/en-EJCBA3LK-0wb3b1xy.js +146 -0
  44. package/dist/{en-FBPVNKFN-dqt573xn.js → en-EJCBA3LK-dtpdghgj.js} +12 -4
  45. package/dist/{en-BWGKA5OE-1qkvb9rn.js → en-M7GQYBV2-5nfmpnfz.js} +88 -6
  46. package/dist/{enrichment-service-yjv2eb8h.js → enrichment-service-njfr2m2s.js} +52 -15
  47. package/dist/{es-7SE7HX2X-8yh1aj2y.js → es-4UBUTCQA-m1ytpyx2.js} +29 -2
  48. package/dist/es-4UBUTCQA-t7hsackg.js +200 -0
  49. package/dist/{es-KR3ZSNMP-84zphx0x.js → es-5THCNRFN-tqwyrdgy.js} +235 -28
  50. package/dist/{es-MX-2MYFZU7X-3rek4r73.js → es-MX-5RELIXKI-9jhqtddc.js} +29 -2
  51. package/dist/es-MX-5RELIXKI-jtjbcxbb.js +200 -0
  52. package/dist/{es-MX-XXZJGC4R-2mr8jtgm.js → es-MX-TWZBRAXK-gqd9swzw.js} +237 -30
  53. package/dist/filter-engine-7ep90g7f.js +11 -0
  54. package/dist/{flow-api-y70m8n82.js → flow-api-qj89cv18.js} +17 -10
  55. package/dist/{flow-debug-service-f59xnvdf.js → flow-debug-service-a7vd9eht.js} +109 -71
  56. package/dist/{flow-eval-node-target-v1gra12k.js → flow-eval-node-target-fv15zc9f.js} +19 -18
  57. package/dist/flow-eval-run-api-3xt5n21a.js +16 -0
  58. package/dist/{flow-eval-run-service-hmfbng78.js → flow-eval-run-service-keqkwjg1.js} +92 -99
  59. package/dist/{flow-eval-service-7tpvhn9b.js → flow-eval-service-5j1rwx32.js} +169 -416
  60. package/dist/{flow-init-sdk-source-3gxfr40c.js → flow-init-sdk-source-spm577pw.js} +8 -6
  61. package/dist/{flow-init-service-jawbgb3b.js → flow-init-service-pz2b02z9.js} +25 -20
  62. package/dist/{flow-io-2qapk1ge.js → flow-io-0yftj03d.js} +17 -12
  63. package/dist/{flow-migrate-service-3vyydvyp.js → flow-migrate-service-f0cavrsr.js} +18 -13
  64. package/dist/{flow-pack-service-ypbwn9p1.js → flow-pack-service-seegwatd.js} +59 -45
  65. package/dist/{flow-validate-service-6ra3j72r.js → flow-validate-service-hgswxecb.js} +198 -93
  66. package/dist/{fr-Y6NPVODW-8vr1ja4b.js → fr-CERONSRC-edpxhbmb.js} +237 -30
  67. package/dist/{fr-MDFKNZ4C-h4a122k9.js → fr-VBM5WRC2-63z7w4mh.js} +29 -2
  68. package/dist/fr-VBM5WRC2-707ha692.js +200 -0
  69. package/dist/{governance-fetcher-09dgr70s.js → governance-fetcher-w11mhrn6.js} +8 -6
  70. package/dist/{headless-7rs6g9wg.js → headless-z9enfh9f.js} +4 -4
  71. package/dist/hitPolicyResult-CGCR73CW-tvmbx1r7.js +66 -0
  72. package/dist/{hitl-service-pc3xwzxh.js → hitl-service-zsnxqkhb.js} +17 -12
  73. package/dist/{index-48tf2e7y.js → index-1a83vhkx.js} +59 -35
  74. package/dist/{index-jmy02p6v.js → index-3366ft04.js} +44 -6
  75. package/dist/{index-wmffgzmr.js → index-5dxh9z60.js} +21751 -11098
  76. package/dist/{index-vj0f8thg.js → index-91v7sjfs.js} +7 -5
  77. package/dist/{index-cpgb4hp8.js → index-d60j7q07.js} +8 -6
  78. package/dist/{index-vhm7bexy.js → index-da0zh33m.js} +8 -6
  79. package/dist/{index-1htnjt3c.js → index-ewv0axs9.js} +1087 -213
  80. package/dist/index-f3pbfe53.js +67 -0
  81. package/dist/{index-ng2f77my.js → index-fyc0k5dd.js} +985 -617
  82. package/dist/{index-n7n2d0tb.js → index-gjg7tpcx.js} +66 -2230
  83. package/dist/index-gmkec7es.js +29 -0
  84. package/dist/{index-3bv3wtc0.js → index-n37fqnh7.js} +6 -5
  85. package/dist/{index-hhsf00x8.js → index-ngs0a2he.js} +1 -1
  86. package/dist/index-s6q9xjhw.js +25 -0
  87. package/dist/{index-j2r3jb6c.js → index-xq6ajhgq.js} +2 -2
  88. package/dist/index.js +2 -2
  89. package/dist/init-entry-points-g4za9kc0.js +102 -0
  90. package/dist/inline-entity-resolver-nzfs8hb6.js +46 -0
  91. package/dist/input-reader-3250qtv2.js +15 -0
  92. package/dist/input-reader-3398edew.js +15 -0
  93. package/dist/{ja-UTQEAP34-8e0q6swp.js → ja-43QL7CGO-c3q8gre9.js} +29 -2
  94. package/dist/ja-43QL7CGO-h6qfxfay.js +200 -0
  95. package/dist/{ja-Q5PXKJ2V-p4msxzjd.js → ja-U2MCNHGT-gz0ap1jk.js} +235 -28
  96. package/dist/{known-types-3dm8xfd0.js → known-types-g1bvvvcw.js} +5 -5
  97. package/dist/ko-TLL6Z6CD-ag6gjynr.js +200 -0
  98. package/dist/{ko-AXCHW2OK-askct7f6.js → ko-TLL6Z6CD-wrt3n8a9.js} +29 -2
  99. package/dist/{ko-AYBDSRZG-41mdmsg1.js → ko-XAUYQWDR-zp81gjp4.js} +237 -30
  100. package/dist/localSolutionDiscovery-3fs774b8.js +17 -0
  101. package/dist/{maestro-automate-entry-4qg1z689.js → maestro-automate-entry-wycktqqt.js} +2 -2
  102. package/dist/{maestro-debug-service-c81w1wrx.js → maestro-debug-service-5edvsets.js} +17 -15
  103. package/dist/{maestro-pack-service-9qbtap5h.js → maestro-pack-service-hpvmq8f9.js} +9 -7
  104. package/dist/migration-diagnosis-5tftr979.js +99 -0
  105. package/dist/{node-epyxn4nd.js → node-5g80as4s.js} +29 -15
  106. package/dist/node-service-gsq162p5.js +101 -0
  107. package/dist/{node-strategy-5pz40tee.js → node-strategy-v442hwgd.js} +1 -1
  108. package/dist/node-sync-service-qxhh9e5m.js +65 -0
  109. package/dist/out-target-666eg2kf.js +115 -0
  110. package/dist/{packager-tool-yphr25e9.js → packager-tool-0jn0my4b.js} +4 -2
  111. package/dist/packager-tool-0z498fh0.js +331 -0
  112. package/dist/{packager-tool-j6q8v3kc.js → packager-tool-1q0ee9ht.js} +5 -4
  113. package/dist/packager-tool-20592jhn.js +74 -0
  114. package/dist/{packager-tool-zvpkw29f.js → packager-tool-212khq09.js} +538 -16
  115. package/dist/{packager-tool-7msx23gd.js → packager-tool-2qywkm61.js} +13 -2
  116. package/dist/{packager-tool-b4t0wt7a.js → packager-tool-3kx2vrwn.js} +12 -13
  117. package/dist/{packager-tool-a0f48rfb.js → packager-tool-42xfgd4y.js} +6 -24
  118. package/dist/{packager-tool-myvay41d.js → packager-tool-57bbfe26.js} +3 -3
  119. package/dist/{packager-tool-vte7g48a.js → packager-tool-5hnx28q0.js} +5 -3
  120. package/dist/{packager-tool-xd3rq6k0.js → packager-tool-629qqbfp.js} +2 -2
  121. package/dist/packager-tool-6g510cab.js +1178 -0
  122. package/dist/packager-tool-6sm17vbx.js +336 -0
  123. package/dist/{packager-tool-yy101ck2.js → packager-tool-6tthp3g5.js} +52 -32
  124. package/dist/{packager-tool-d88rqwk8.js → packager-tool-6z1hsm2h.js} +13 -5
  125. package/dist/packager-tool-7hw344bt.js +107 -0
  126. package/dist/{packager-tool-6xrzgn0z.js → packager-tool-7vh4gasn.js} +1 -1
  127. package/dist/packager-tool-7ym4rqd1.js +153 -0
  128. package/dist/packager-tool-8p3ymd4v.js +14 -0
  129. package/dist/{packager-tool-kme3q8xv.js → packager-tool-8tv6dvs5.js} +18 -8
  130. package/dist/{packager-tool-c94w8xmz.js → packager-tool-9c2hte0h.js} +16110 -13031
  131. package/dist/{packager-tool-npr79108.js → packager-tool-ajhgr4bs.js} +51 -8
  132. package/dist/{packager-tool-8pydv61j.js → packager-tool-ajth6af3.js} +588 -16
  133. package/dist/{packager-tool-nct4k0y8.js → packager-tool-arbc078z.js} +280 -416
  134. package/dist/{packager-tool-k0bc2f6w.js → packager-tool-b84rs07t.js} +137 -45
  135. package/dist/{packager-tool-4tf3tq1b.js → packager-tool-bd7t6p8y.js} +6 -4
  136. package/dist/{packager-tool-q02t6n13.js → packager-tool-bhhym40d.js} +26 -3
  137. package/dist/packager-tool-bttxjdhx.js +94 -0
  138. package/dist/packager-tool-c4n4m87w.js +52 -0
  139. package/dist/{packager-tool-8xyea2av.js → packager-tool-cc2q603y.js} +2 -3
  140. package/dist/{packager-tool-8yjmkys9.js → packager-tool-cza49qc1.js} +1681 -459
  141. package/dist/{packager-tool-5jb06280.js → packager-tool-d1kd88zq.js} +1 -1
  142. package/dist/{packager-tool-w3d2891y.js → packager-tool-dpp8z5q3.js} +8 -5
  143. package/dist/{packager-tool-wbtykfb2.js → packager-tool-dzd3y9p0.js} +2 -2
  144. package/dist/{packager-tool-rs4cgyy5.js → packager-tool-f6bh7bsm.js} +9 -10
  145. package/dist/{packager-tool-83hg21mr.js → packager-tool-f7zn3gsf.js} +6 -6
  146. package/dist/{packager-tool-mtpztxtc.js → packager-tool-fwfh4zz7.js} +2 -1
  147. package/dist/packager-tool-g2b0zqch.js +217 -0
  148. package/dist/{packager-tool-xdxr3ync.js → packager-tool-hdxtgckw.js} +11 -1
  149. package/dist/{packager-tool-gtzw8sw4.js → packager-tool-jexxh6qf.js} +51 -6
  150. package/dist/{packager-tool-zq25fdcg.js → packager-tool-jt51hwvr.js} +5 -5
  151. package/dist/packager-tool-k7n4sf7v.js +16 -0
  152. package/dist/{packager-tool-fgaphqq0.js → packager-tool-kd0whk4p.js} +1 -1
  153. package/dist/{packager-tool-3t417qyw.js → packager-tool-ktnfjmbs.js} +6 -6
  154. package/dist/packager-tool-kvp4ttef.js +307 -0
  155. package/dist/packager-tool-m1901c0c.js +1256 -0
  156. package/dist/packager-tool-mgcz986r.js +143 -0
  157. package/dist/{packager-tool-8xhjr5ya.js → packager-tool-mrskd7mn.js} +1 -1
  158. package/dist/{packager-tool-5s7249f4.js → packager-tool-ms1smy5t.js} +1 -1
  159. package/dist/{packager-tool-kveaemqp.js → packager-tool-msecps3h.js} +74 -47
  160. package/dist/packager-tool-n90231c7.js +2 -0
  161. package/dist/{packager-tool-ajjpgh1s.js → packager-tool-nkbz7fsb.js} +161 -83
  162. package/dist/packager-tool-nsh0qg9g.js +40 -0
  163. package/dist/{packager-tool-7q6z6npd.js → packager-tool-pcvhcn2k.js} +93 -11
  164. package/dist/packager-tool-qrs1525h.js +69 -0
  165. package/dist/packager-tool-qs3gymeb.js +92 -0
  166. package/dist/{packager-tool-wf95q0fn.js → packager-tool-r6a4pjjh.js} +32 -13
  167. package/dist/{packager-tool-2wbgdx7c.js → packager-tool-rcx6mwf1.js} +5 -5
  168. package/dist/{packager-tool-zbrda9sn.js → packager-tool-rk25wp3c.js} +1 -1
  169. package/dist/{packager-tool-nase5ajk.js → packager-tool-rp7pny4t.js} +19 -5
  170. package/dist/packager-tool-s695j0qj.js +2 -0
  171. package/dist/packager-tool-s7c0dg22.js +1117 -0
  172. package/dist/{case-bindings-service-hpz8w81a.js → packager-tool-s7frnjqb.js} +20 -233
  173. package/dist/{packager-tool-2k0hp4st.js → packager-tool-sb08yxk6.js} +2 -2
  174. package/dist/{packager-tool-b39nrh8y.js → packager-tool-sga4h8yj.js} +5 -6
  175. package/dist/packager-tool-sm8ertv4.js +9 -0
  176. package/dist/{packager-tool-ts5t1nmn.js → packager-tool-sxqtxw0e.js} +15 -10
  177. package/dist/packager-tool-t4zrz5gd.js +18 -0
  178. package/dist/{packager-tool-pp11j8zp.js → packager-tool-t79p62kr.js} +3 -2
  179. package/dist/{packager-tool-ps84n76y.js → packager-tool-tgh9btcq.js} +2 -2
  180. package/dist/{packager-tool-x2py933t.js → packager-tool-tzc6xsp3.js} +1802 -378
  181. package/dist/packager-tool-v5ft7109.js +35 -0
  182. package/dist/{packager-tool-rkv04anh.js → packager-tool-vv9cf7n5.js} +12 -56
  183. package/dist/{packager-tool-z1qbc0qf.js → packager-tool-wv85dhy2.js} +2 -8
  184. package/dist/{packager-tool-znhjsec2.js → packager-tool-wwbk750c.js} +10804 -25507
  185. package/dist/packager-tool-xj0agqpk.js +11 -0
  186. package/dist/{packager-tool-t2xr2f9r.js → packager-tool-xqghssg3.js} +1 -1
  187. package/dist/{packager-tool-ma2ra4pe.js → packager-tool-xr5pkebd.js} +6 -6
  188. package/dist/packager-tool-y4tyghzf.js +26 -0
  189. package/dist/{packager-tool-9bt3hs56.js → packager-tool-y57r93yz.js} +721 -90
  190. package/dist/packager-tool-ygdbhb2b.js +62 -0
  191. package/dist/{packager-tool-v99ygh9f.js → packager-tool-yn33pw57.js} +124 -58
  192. package/dist/packager-tool-yp84p93n.js +41 -0
  193. package/dist/{packager-tool-yv10w46z.js → packager-tool-zgm0r4yp.js} +57 -205
  194. package/dist/packager-tool.js +26 -17
  195. package/dist/{project-artifacts-ygsyzgbk.js → project-artifacts-tedh0mf8.js} +1 -1
  196. package/dist/{project-validator-ndx5f8vg.js → project-validator-njsprtzv.js} +5 -4
  197. package/dist/{pt-BR-TKHNHMET-sn91xyq0.js → pt-BR-GNQNAAZ2-xadharv4.js} +237 -30
  198. package/dist/{pt-BR-Y6K6XHXK-mp3hwhw1.js → pt-BR-USP2T7GD-pedn77m1.js} +29 -2
  199. package/dist/pt-BR-USP2T7GD-rppy42ym.js +200 -0
  200. package/dist/{pt-3DIO5QWG-59b3f4bc.js → pt-RMIAKZB4-67enhx3m.js} +29 -2
  201. package/dist/pt-RMIAKZB4-t80exmp7.js +200 -0
  202. package/dist/{pt-ROXU257Y-2f6bxev4.js → pt-TO2DARY2-ftcce1bv.js} +237 -30
  203. package/dist/{resolved-check-r83pjq9y.js → resolved-check-8a1cr6j2.js} +1 -1
  204. package/dist/{resourcesSyncService-9b5nzx36.js → resourcesSyncService-rcbw245w.js} +43 -180
  205. package/dist/ro-GHOBYW2S-4zevc9dy.js +200 -0
  206. package/dist/{ro-BWR3ONRR-vzx3hy8a.js → ro-GHOBYW2S-mhnqsgaa.js} +29 -2
  207. package/dist/{ro-AVAWPKOO-b89pw79r.js → ro-WUYJV6OW-a8d9qy1n.js} +235 -28
  208. package/dist/ru-WBLQ5B2U-dpqvtfwr.js +10 -0
  209. package/dist/{sdd-convert-service-am4cs6zq.js → sdd-convert-service-btj95r5z.js} +690 -447
  210. package/dist/{sdd-lookup-12hfwqjq.js → sdd-lookup-x3fh6svg.js} +6 -4
  211. package/dist/{sdd-resolve-service-e56wtgxt.js → sdd-resolve-service-pzsm3mkz.js} +37 -10
  212. package/dist/sdd-resolve-siblings-wzhvhar8.js +57 -0
  213. package/dist/{shared-utils-611ah3tq.js → shared-utils-w643sejd.js} +6 -4
  214. package/dist/{solution-auth-kddmbm0p.js → solution-auth-30yycqtv.js} +3 -3
  215. package/dist/solution-discovery-pavd4zeb.js +47 -0
  216. package/dist/{strict-case-rules-pn3ypd97.js → strict-case-rules-vnyr3b3k.js} +3 -2
  217. package/dist/{strict-entry-points-a2cya540.js → strict-entry-points-xrddz82q.js} +33 -1
  218. package/dist/{strict-sdd-audit-nc7dk2hy.js → strict-sdd-audit-8deegzad.js} +11 -7
  219. package/dist/task-type-declaration-re9ba03j.js +46 -0
  220. package/dist/{tidy-service-thmayk2h.js → tidy-service-mepxtxqm.js} +144 -39
  221. package/dist/{tool-z7q74wa4.js → tool-13vrxcqw.js} +313 -123
  222. package/dist/{tool-rmcqxt09.js → tool-x8dmgc2y.js} +476 -339
  223. package/dist/tool.js +2 -2
  224. package/dist/{tr-5IIHSFW5-hw4cewew.js → tr-GDTLECMM-k5fhmq13.js} +29 -2
  225. package/dist/tr-GDTLECMM-kngksm3r.js +200 -0
  226. package/dist/{tr-JMIP7ZSL-c39b6pe4.js → tr-M3F5A6AU-bb0tg39m.js} +235 -28
  227. package/dist/{trigger-enrichment-service-fw97esz9.js → trigger-enrichment-service-pc8ecypw.js} +34 -30
  228. package/dist/trigger-entry-point-id-819hnfnn.js +15 -0
  229. package/dist/{variable-service-3gywh851.js → variable-service-8v0b9d66.js} +17 -12
  230. package/dist/{wait-for-flow-job-wdcjjk6p.js → wait-for-flow-job-5rjxh65w.js} +14 -11
  231. package/dist/{zh-CN-IFFXSEJS-9wm9gmrv.js → zh-CN-C5G4PC7C-ds9gkptg.js} +235 -28
  232. package/dist/zh-CN-I5D7WHBD-ge92tbx9.js +200 -0
  233. package/dist/{zh-CN-R2KU4U5L-tc1hat59.js → zh-CN-I5D7WHBD-sr5h0a98.js} +29 -2
  234. package/dist/{zh-TW-GNKMELBF-j674515r.js → zh-TW-2AVLM723-288pkc1z.js} +29 -2
  235. package/dist/zh-TW-2AVLM723-xsmap3gk.js +200 -0
  236. package/dist/{zh-TW-IYBNYAMG-8727c7v2.js → zh-TW-62HZIG6O-787kdwex.js} +234 -27
  237. package/package.json +2 -2
  238. package/dist/bpmn-validate-service-tanm0n47.js +0 -14
  239. package/dist/debug-conversation-trigger-zbxp49z7.js +0 -46
  240. package/dist/flow-eval-run-api-zg951w2f.js +0 -15
  241. package/dist/hitPolicyResult-4WDHTX4A-zpjwpxn1.js +0 -69
  242. package/dist/index-03h6hq69.js +0 -200
  243. package/dist/input-reader-sce4dejb.js +0 -13
  244. package/dist/input-reader-tf6xyfvt.js +0 -13
  245. package/dist/migration-diagnosis-fzj426fa.js +0 -71
  246. package/dist/node-service-3j6w3z2k.js +0 -89
  247. package/dist/node-sync-service-q7dsv2p0.js +0 -43
  248. package/dist/out-target-498z06v5.js +0 -72
  249. package/dist/packager-tool-0g6ktcsq.js +0 -32
  250. package/dist/packager-tool-3mvr6njb.js +0 -305
  251. package/dist/packager-tool-521x949f.js +0 -32
  252. package/dist/packager-tool-64zypey6.js +0 -521
  253. package/dist/packager-tool-7t0xj5pz.js +0 -64
  254. package/dist/packager-tool-j836z6mq.js +0 -208
  255. package/dist/packager-tool-p7eactax.js +0 -267
  256. package/dist/packager-tool-xjtv580j.js +0 -13
  257. package/dist/packager-tool-zm7thgdg.js +0 -456
  258. /package/dist/{localization-p76prk3f.js → localization-d151bzb1.js} +0 -0
@@ -1,16 +1,30 @@
1
+ import {
2
+ canonicalVariableType,
3
+ gateKey
4
+ } from "./packager-tool-qrs1525h.js";
1
5
  import {
2
6
  buildMinimalCaseDocument
3
- } from "./packager-tool-8xyea2av.js";
7
+ } from "./packager-tool-cc2q603y.js";
8
+ import {
9
+ designerShapeConnectorTasks
10
+ } from "./packager-tool-ygdbhb2b.js";
11
+ import {
12
+ RECIPIENT_TYPES,
13
+ SDD_TASK_TYPES,
14
+ UNAUTHORABLE_TASK_TYPES,
15
+ bindingPairFor,
16
+ connectionPairFor
17
+ } from "./packager-tool-qs3gymeb.js";
4
18
  import {
5
19
  CONNECTOR_TASK_TYPES
6
- } from "./packager-tool-xjtv580j.js";
20
+ } from "./packager-tool-t4zrz5gd.js";
21
+ import {
22
+ emitCanvasNotes
23
+ } from "./packager-tool-kvp4ttef.js";
7
24
  import {
8
25
  BINDING_REFERENCE_PREFIX,
9
26
  NAME_BOUND_TASK_TYPES
10
- } from "./packager-tool-mtpztxtc.js";
11
- import {
12
- FILE_TYPE_JSON_SCHEMA
13
- } from "./packager-tool-q02t6n13.js";
27
+ } from "./packager-tool-fwfh4zz7.js";
14
28
  import {
15
29
  prefixedId
16
30
  } from "./packager-tool-hq15nv7z.js";
@@ -20,24 +34,55 @@ import {
20
34
  STAGE_SELECTOR_RULES,
21
35
  TASK_SELECTOR_RULES,
22
36
  VARIABLE_PLACEMENT,
23
- parseIfCell
24
- } from "./packager-tool-9bt3hs56.js";
37
+ canonicalExpression,
38
+ customOutputFor,
39
+ declaredOutputs,
40
+ expandOutputMarkers,
41
+ expandXrefs,
42
+ extractOutputFor,
43
+ inputsFor,
44
+ markDeferredOutputs,
45
+ outputFor,
46
+ outputTypeFor,
47
+ parseIfCell,
48
+ unquoteLiteral,
49
+ variableOutputType
50
+ } from "./packager-tool-y57r93yz.js";
25
51
  import"./packager-tool-zk7ntkba.js";
26
- import"./packager-tool-qmxmg1yv.js";
52
+ import {
53
+ buildElementId,
54
+ claim,
55
+ claimOutput,
56
+ dedupedId,
57
+ everySpelling,
58
+ indexKey,
59
+ modelKey,
60
+ referenceSpellings,
61
+ scopedSlaKey,
62
+ stageSpellings
63
+ } from "./packager-tool-20592jhn.js";
64
+ import {
65
+ BUSINESS_RULE_TASK_VERSION,
66
+ FILE_TYPE_JSON_SCHEMA,
67
+ httpRequestOutputName
68
+ } from "./packager-tool-bhhym40d.js";
27
69
  import"./packager-tool-szn7gaaz.js";
28
70
  import {
29
71
  namedValue,
30
72
  withoutTrailingSlug
31
- } from "./packager-tool-gtzw8sw4.js";
73
+ } from "./packager-tool-jexxh6qf.js";
74
+ import"./packager-tool-qmxmg1yv.js";
32
75
  import {
33
76
  byCodeUnit
34
77
  } from "./packager-tool-r00e2fb3.js";
35
- import"./packager-tool-yv10w46z.js";
36
- import"./packager-tool-xdxr3ync.js";
78
+ import"./packager-tool-zgm0r4yp.js";
79
+ import"./packager-tool-6sm17vbx.js";
80
+ import"./packager-tool-hdxtgckw.js";
37
81
  import"./packager-tool-yvcrdbgp.js";
82
+ import"./packager-tool-sm8ertv4.js";
38
83
  import {
39
84
  catchError
40
- } from "./packager-tool-z1qbc0qf.js";
85
+ } from "./packager-tool-wv85dhy2.js";
41
86
  import"./packager-tool-1yh8g550.js";
42
87
 
43
88
  // ../case-tool/src/services/exit-condition-types.ts
@@ -47,413 +92,6 @@ var EXIT_CONDITION_TYPES = new Set([
47
92
  "return-to-origin"
48
93
  ]);
49
94
 
50
- // ../case-tool/src/services/sdd-convert/ids.ts
51
- var buildElementId = (stageId, taskId) => `${stageId}-${taskId}`;
52
- var SLUG_SUFFIX = /^(.*?)\s*\(\s*([^()]+?)\s*\)\s*$/;
53
- var stageSpellings = (text, position) => {
54
- const plain = text.replaceAll("`", "").trim();
55
- const names = [plain];
56
- const found = SLUG_SUFFIX.exec(plain);
57
- const bare = found?.[1].trim() ?? "";
58
- const slug = found?.[2].trim() ?? "";
59
- if (bare !== "" && bare !== plain)
60
- names.push(bare);
61
- return {
62
- names,
63
- ...slug !== "" && { slug },
64
- ordinal: `stage ${position}`
65
- };
66
- };
67
- var referenceSpellings = (text) => {
68
- const { names, slug } = stageSpellings(text, 0);
69
- return slug === undefined ? names : [...names, slug];
70
- };
71
- var indexKey = (name) => name.replaceAll("`", "").trim().toLowerCase();
72
- var everySpelling = (name, position) => {
73
- const { names, slug, ordinal } = stageSpellings(name, position);
74
- return [...names, ...slug === undefined ? [] : [slug], ordinal].map(indexKey);
75
- };
76
- var claim = (index, key, id) => {
77
- if (!index.has(key))
78
- index.set(key, id);
79
- };
80
- var dedupedId = (base, taken) => {
81
- let id = base;
82
- let suffix = 2;
83
- while (taken.has(id)) {
84
- id = `${base}${suffix}`;
85
- suffix += 1;
86
- }
87
- taken.add(id);
88
- return id;
89
- };
90
- var exactKey = (name) => name.replaceAll("`", "").trim();
91
- var claimOutput = (index, key, task, id) => {
92
- const byTask = index.get(key) ?? new Map;
93
- index.set(key, byTask);
94
- if (!byTask.has(exactKey(task)))
95
- byTask.set(exactKey(task), id);
96
- };
97
- var lookupOutput = (index, key, task) => {
98
- const byTask = index.get(key);
99
- if (byTask === undefined)
100
- return;
101
- const tasksNamed = (name, claim2) => typeof claim2 === "number" ? Array.from({ length: claim2 }, () => name) : [name];
102
- const exact = byTask.get(exactKey(task));
103
- if (exact !== undefined) {
104
- return typeof exact === "number" ? { names: tasksNamed(exactKey(task), exact) } : { id: exact };
105
- }
106
- const [onlyName, only] = [...byTask.entries()][0] ?? [];
107
- if (byTask.size === 1 && onlyName !== undefined && typeof only === "string") {
108
- return { id: only };
109
- }
110
- return {
111
- names: [...byTask].flatMap(([name, claim2]) => tasksNamed(name, claim2))
112
- };
113
- };
114
- var scopedSlaKey = (scope, title) => `${scope}\x00${title}`;
115
-
116
- // ../case-tool/src/services/sdd-convert/xrefs.ts
117
- var QUOTED = String.raw`(?:'((?:\\.|[^'\\])*)'|"((?:\\.|[^"\\])*)"|` + "`((?:\\\\.|[^`\\\\])*)`" + String.raw`|\u201c([^\u201d]*)\u201d)`;
118
- var XREF_CALL = new RegExp(String.raw`vars\.\$xref\(\s*${QUOTED}\s*,\s*${QUOTED}\s*,\s*${QUOTED}\s*\)`, "g");
119
- var argumentOf = (groups) => groups.find((value) => value !== undefined) ?? "";
120
- var unresolvedXrefDetail = (whole, found) => {
121
- if (found === undefined) {
122
- return `\`${whole}\` names an output this SDD does not declare, so the marker is left in place rather than pointed at a guess`;
123
- }
124
- const spellings = new Set(found.names);
125
- const listed = [...spellings].map((name) => `\`${name}\``).join(", ");
126
- if (spellings.size < found.names.length) {
127
- return `\`${whole}\` names a task that ${found.names.length} tasks in that stage answer to (${listed}), so the marker is left in place rather than pointed at one of them. Task names are unique across the case, so rename all but one`;
128
- }
129
- return `\`${whole}\` names its task in a spelling that ${found.names.length} tasks answer to (${listed}), so the marker is left in place rather than pointed at one of them — write the task's name as its heading spells it`;
130
- };
131
- var DOTTED_READ = /^\.[A-Za-z_$]/;
132
- var deferredOutputs = new WeakMap;
133
- var markDeferredOutputs = (index, ids) => {
134
- deferredOutputs.set(index, ids);
135
- };
136
- var expandXrefs = (text, context) => text.replace(XREF_CALL, (whole, ...rest) => {
137
- const offset = rest[rest.length - 2];
138
- const captured = rest.slice(0, -2);
139
- const stage = argumentOf(captured.slice(0, 4));
140
- const task = argumentOf(captured.slice(4, 8));
141
- const output = argumentOf(captured.slice(8, 12));
142
- const found = lookupOutput(context.outputs, `${indexKey(stage)}|${indexKey(task)}|${indexKey(output)}`, task);
143
- if (found !== undefined && "id" in found) {
144
- if (deferredOutputs.get(context.outputs)?.has(found.id)) {
145
- context.unresolved.push({
146
- kind: "placeholder",
147
- where: context.where,
148
- detail: `\`${whole}\` reads an output of a task the resolved file defers, so \`vars.${found.id}\` resolves to nothing until that task is filled`
149
- });
150
- }
151
- const after = text.slice(offset + whole.length);
152
- return DOTTED_READ.test(after) ? `vars.${found.id}?` : `vars.${found.id}`;
153
- }
154
- context.unresolved.push({
155
- kind: "producer-reference",
156
- where: context.where,
157
- detail: unresolvedXrefDetail(whole, found)
158
- });
159
- return whole;
160
- });
161
- var expandOutputMarkers = (output, context) => {
162
- const expand = (value2) => typeof value2 === "string" && value2.includes("$xref") ? expandXrefs(value2, context) : value2;
163
- const value = expand(output.value);
164
- const source = expand(output.source);
165
- return value === output.value && source === output.source ? output : { ...output, value, source };
166
- };
167
-
168
- // ../case-tool/src/services/sdd-convert/io.ts
169
- var taskMatcher = (model, taskName) => {
170
- const mine = exactKey(taskName);
171
- const folded = indexKey(taskName);
172
- let unique = true;
173
- for (const stage of model.stages) {
174
- for (const other of stage.tasks) {
175
- const name = exactKey(String(other.name ?? ""));
176
- if (name !== mine && indexKey(name) === folded)
177
- unique = false;
178
- }
179
- }
180
- return {
181
- names: (spelled) => exactKey(spelled) === mine || unique && indexKey(spelled) === folded,
182
- unique
183
- };
184
- };
185
- var declaredOutputs = (model, stageName, position, task) => {
186
- const taskName = String(task.name ?? "");
187
- const { names: own, slug, ordinal } = stageSpellings(stageName, position);
188
- const names = [...own, ...slug === undefined ? [] : [slug], ordinal].map(indexKey);
189
- const matcher = taskMatcher(model, taskName);
190
- const mine = (producer) => names.includes(indexKey(producer.stage)) && matcher.names(producer.task);
191
- const rows = [...task.outputRows ?? []];
192
- const add = (name) => {
193
- if (name !== "" && !rows.includes(name))
194
- rows.push(name);
195
- };
196
- for (const producer of model.xrefOutputs) {
197
- if (mine(producer))
198
- add(producer.output);
199
- }
200
- for (const stage of model.stages) {
201
- for (const other of stage.tasks) {
202
- for (const row of other.producerInputs ?? []) {
203
- const producer = row.producer;
204
- if (producer !== undefined && mine(producer)) {
205
- add(producer.output);
206
- }
207
- }
208
- }
209
- }
210
- if (matcher.unique) {
211
- for (const name of model.resourceOutputs[indexKey(taskName)] ?? []) {
212
- add(name);
213
- }
214
- }
215
- return rows;
216
- };
217
- var OUTPUT_TYPES = new Map([
218
- ["string", "string"],
219
- ["object", "jsonSchema"],
220
- ["json", "jsonSchema"],
221
- ["jsonschema", "jsonSchema"]
222
- ]);
223
- var outputTypeFor = (model, stageNames, taskName, output) => {
224
- const matcher = taskMatcher(model, taskName);
225
- for (const stage of model.stages) {
226
- for (const task of stage.tasks) {
227
- for (const row of task.producerInputs ?? []) {
228
- const producer = row.producer;
229
- if (producer === undefined || row.direct !== true || typeof row.type !== "string" || !stageNames.includes(indexKey(producer.stage)) || !matcher.names(producer.task) || indexKey(producer.output) !== indexKey(output)) {
230
- continue;
231
- }
232
- const mapped = OUTPUT_TYPES.get(row.type.trim().toLowerCase().replaceAll(" ", ""));
233
- if (mapped !== undefined)
234
- return mapped;
235
- }
236
- }
237
- }
238
- return;
239
- };
240
- var outputFor = (row, elementId, taken, type) => {
241
- const leaf = row.split(".").at(-1) ?? row;
242
- const base = leaf === "" ? leaf : `${leaf[0].toLowerCase()}${leaf.slice(1)}`;
243
- const id = dedupedId(base, taken);
244
- return {
245
- name: leaf,
246
- ...type !== undefined && { type },
247
- id,
248
- var: id,
249
- value: id,
250
- source: `=${row}`,
251
- target: `=${id}`,
252
- elementId
253
- };
254
- };
255
- var variableOutputType = (model, variable) => {
256
- const declared = model.variableTypes[indexKey(variable)];
257
- if (typeof declared !== "string" || declared.trim() === "") {
258
- return;
259
- }
260
- const key = declared.trim().toLowerCase().replaceAll(" ", "");
261
- return OUTPUT_TYPES.get(key) ?? "string";
262
- };
263
- var extractOutputFor = (row, elementId, taken, type) => {
264
- const leaf = row.field.split(".").at(-1) ?? row.field;
265
- const base = leaf === "" ? leaf : `${leaf[0].toLowerCase()}${leaf.slice(1)}`;
266
- const id = dedupedId(base, taken);
267
- return {
268
- name: leaf,
269
- ...type !== undefined && { type },
270
- id,
271
- var: row.variable,
272
- value: row.variable,
273
- source: `=${row.field}`,
274
- target: `=${id}`,
275
- originalVar: id,
276
- elementId
277
- };
278
- };
279
- var customOutputFor = (row, type) => ({
280
- name: row.variable,
281
- ...type !== undefined && { type },
282
- custom: true,
283
- var: row.variable,
284
- value: canonicalExpression(unquoteLiteral(row.expression)),
285
- source: canonicalExpression(unquoteLiteral(row.expression)),
286
- target: "",
287
- body: "",
288
- elementId: "root"
289
- });
290
- var canonicalExpression = (value) => value.startsWith("=metadata.") ? `=js:${value.slice(1)}` : value;
291
- var unquoteLiteral = (cell) => {
292
- const text = cell.trim();
293
- const quote = text[0];
294
- if (quote !== '"' && quote !== "'")
295
- return cell;
296
- if (text.length < 2 || text[text.length - 1] !== quote)
297
- return cell;
298
- const inner = text.slice(1, -1);
299
- for (let at = 0;at < inner.length; at += 1) {
300
- if (inner[at] === "\\") {
301
- at += 1;
302
- continue;
303
- }
304
- if (inner[at] === quote)
305
- return cell;
306
- }
307
- return inner.replaceAll(`\\${quote}`, quote);
308
- };
309
- var RANK_LITERAL = 1;
310
- var RANK_PRODUCER = 2;
311
- var RANK_EXPRESSION = 3;
312
- var unboundProducerDetail = (target, found) => {
313
- if (found === undefined) {
314
- return `the Inputs row reads an output (${target}) that no task in this SDD declares`;
315
- }
316
- const spellings = new Set(found.names);
317
- const listed = [...spellings].map((task) => `"${task}"`).join(", ");
318
- if (spellings.size < found.names.length) {
319
- return `the Inputs row reads an output (${target}) of a task that ${found.names.length} tasks in that stage answer to (${listed}), so it is left unbound rather than pointed at one of them. Task names are unique across the case, so rename all but one`;
320
- }
321
- return `the Inputs row reads an output (${target}) whose task spelling ${found.names.length} tasks answer to (${listed}), so it is left unbound rather than pointed at one of them`;
322
- };
323
- var inputsFor = (task, elementId, where, unresolved, outputs) => {
324
- const ranked = new Map;
325
- const offer = (name, rank, input) => {
326
- const existing = ranked.get(name);
327
- if (existing === undefined || rank > existing.rank) {
328
- ranked.set(name, { rank, input });
329
- }
330
- };
331
- for (const row of task.literalInputs ?? []) {
332
- offer(String(row.name ?? ""), RANK_LITERAL, {
333
- name: String(row.name ?? ""),
334
- value: unquoteLiteral(String(row.value ?? "")),
335
- elementId
336
- });
337
- }
338
- for (const row of task.expressionInputs ?? []) {
339
- offer(String(row.name ?? ""), RANK_EXPRESSION, {
340
- name: String(row.name ?? ""),
341
- value: canonicalExpression(expandXrefs(String(row.expression ?? row.value ?? ""), {
342
- outputs,
343
- where,
344
- unresolved
345
- })),
346
- elementId
347
- });
348
- }
349
- for (const row of task.producerInputs ?? []) {
350
- const name = String(row.name ?? "");
351
- const producer = row.producer;
352
- const found = producer === undefined ? undefined : lookupOutput(outputs, `${indexKey(producer.stage)}|${indexKey(producer.task)}|${indexKey(producer.output)}`, producer.task);
353
- if (found === undefined || !("id" in found)) {
354
- const target = producer === undefined ? "unnamed producer" : `"${producer.stage}"."${producer.task}".${producer.output}`;
355
- unresolved.push({
356
- kind: "producer-reference",
357
- where: `${where}.inputs[${name}]`,
358
- detail: unboundProducerDetail(target, found)
359
- });
360
- continue;
361
- }
362
- const id = found.id;
363
- offer(name, RANK_PRODUCER, {
364
- name,
365
- value: row.direct === false ? expandXrefs(String(row.value ?? `=js:vars.${id}`), {
366
- outputs,
367
- where,
368
- unresolved
369
- }) : `=vars.${id}`,
370
- elementId
371
- });
372
- }
373
- return [...ranked.values()].map((entry) => entry.input);
374
- };
375
-
376
- // ../case-tool/src/services/sdd-convert/resources.ts
377
- var SDD_TASK_TYPES = new Set([
378
- ...NAME_BOUND_TASK_TYPES,
379
- ...CONNECTOR_TASK_TYPES,
380
- "wait-for-timer"
381
- ]);
382
- var UNAUTHORABLE_TASK_TYPES = new Set([
383
- "document-extraction",
384
- "external-agent",
385
- "external-workflow",
386
- "flow-process",
387
- "http-request",
388
- "script"
389
- ]);
390
- var RESOURCE_KINDS = new Map([
391
- ["agent", { resource: "process", subType: "Agent" }],
392
- ["process", { resource: "process", subType: "ProcessOrchestration" }],
393
- ["api-workflow", { resource: "process", subType: "Api" }],
394
- ["case-management", { resource: "process", subType: "CaseManagement" }],
395
- ["function", { resource: "process", subType: "Function" }],
396
- ["rpa", { resource: "process" }],
397
- ["business-rule", { resource: "BusinessRule" }],
398
- ["action", { resource: "app" }]
399
- ]);
400
- var bindingPairFor = (resourceName, folderPath, type, ordinal) => {
401
- const resourceKey = `${folderPath}.${resourceName}`;
402
- const kind = RESOURCE_KINDS.get(type) ?? { resource: "process" };
403
- const shared = {
404
- type: "string",
405
- resource: kind.resource,
406
- ...kind.subType !== undefined && { resourceSubType: kind.subType },
407
- resourceKey
408
- };
409
- const nameId = `bN${ordinal}`;
410
- const folderId = `bF${ordinal}`;
411
- return {
412
- nameId,
413
- folderId,
414
- name: {
415
- id: nameId,
416
- name: "name",
417
- ...shared,
418
- default: resourceName,
419
- propertyAttribute: "name"
420
- },
421
- folder: {
422
- id: folderId,
423
- name: "folderPath",
424
- ...shared,
425
- default: folderPath,
426
- propertyAttribute: "folderPath"
427
- }
428
- };
429
- };
430
- var RECIPIENT_TYPES = new Map([["email", 2]]);
431
- var connectionPairFor = (connectionId, ordinal) => {
432
- const shared = {
433
- type: "string",
434
- resource: "Connection",
435
- resourceKey: connectionId
436
- };
437
- const connectionRef = `bOC${ordinal}`;
438
- const folderRef = `bOF${ordinal}`;
439
- return {
440
- connectionRef,
441
- folderRef,
442
- connection: {
443
- id: connectionRef,
444
- name: "connection",
445
- ...shared,
446
- propertyAttribute: "ConnectionId"
447
- },
448
- folder: {
449
- id: folderRef,
450
- name: "folderKey",
451
- ...shared,
452
- propertyAttribute: "folderKey"
453
- }
454
- };
455
- };
456
-
457
95
  // ../case-tool/src/services/sdd-convert/connector.ts
458
96
  var connectorInputs = (inputs, connector, elementId, where, unresolved) => {
459
97
  if (connector === undefined)
@@ -739,19 +377,41 @@ var ruleFor = (condition, idPrefix, context) => {
739
377
  context.unresolved.push({
740
378
  kind: "connector-connection",
741
379
  where: context.where,
742
- detail: "a `wait-for-connector` rule needs its activity's context, and no `**Connector Rule Detail:**` accompanies this stage's entry table"
380
+ detail: "a `wait-for-connector` rule needs its activity's context, and no `**Connector Rule Detail:**` accompanies this stage's entry table, so the rule is written with an empty `context` to fill before debug"
743
381
  });
382
+ base.uipath = {
383
+ serviceType: WAIT_FOR_EVENT,
384
+ context: [],
385
+ inputs: [],
386
+ outputs: [],
387
+ bindings: []
388
+ };
744
389
  } else {
390
+ const built = connectorContextFor(context.connector, context.where, context.connections, context.bindings, context.unresolved).filter((entry) => entry.name !== "operation" || context.connector?.operation !== undefined);
391
+ const missing = missingActivitySlots(built);
392
+ if (missing.length > 0) {
393
+ context.unresolved.push({
394
+ kind: "connector-context",
395
+ where: context.where,
396
+ detail: `the document names no ${missing.map((name) => `\`${name}\``).join(" or ")} for this \`wait-for-connector\` rule, so it is left out of the rule's \`context\`, to fill before debug`
397
+ });
398
+ }
745
399
  base.uipath = {
746
- ...context.connector.serviceType !== undefined && {
747
- serviceType: context.connector.serviceType
748
- },
749
- context: connectorContextFor(context.connector, context.where, context.connections, context.bindings, context.unresolved)
400
+ serviceType: WAIT_FOR_EVENT,
401
+ context: built,
402
+ ...missing.length > 0 && {
403
+ inputs: [],
404
+ outputs: [],
405
+ bindings: []
406
+ }
750
407
  };
751
408
  }
752
409
  }
753
410
  return base;
754
411
  };
412
+ var WAIT_FOR_EVENT = "Intsvc.WaitForEvent";
413
+ var ACTIVITY_SLOTS = ["connectorKey", "operation"];
414
+ var missingActivitySlots = (entries) => ACTIVITY_SLOTS.filter((name) => !entries.some((entry) => entry.name === name && typeof entry.value === "string" && entry.value !== ""));
755
415
  var displayNameOf = (condition) => {
756
416
  const name = String(condition.displayName ?? "").trim();
757
417
  return name === "" ? {} : { displayName: name };
@@ -934,6 +594,91 @@ var slaRuleFor = (displayName, duration, rows, where, unresolved, asked = {}) =>
934
594
  ...escalations.length > 0 && { escalationRule: escalations }
935
595
  };
936
596
  };
597
+ var conditionalSlaRules = (rows, where, unresolved, expand, hasDefault, defaultDuration, escalate, reportNoDefault = true) => {
598
+ const escalationsFor = (duration) => {
599
+ const copied = escalate?.(duration, [])?.escalationRule;
600
+ if (!Array.isArray(copied) || copied.length === 0)
601
+ return {};
602
+ const escalationRule = copied;
603
+ const breaches = escalationRule.some((one) => one.triggerInfo?.type === "sla-breached");
604
+ return {
605
+ escalationRule: breaches ? escalationRule : [
606
+ ...escalationRule,
607
+ {
608
+ id: prefixedId("esc_", 6),
609
+ displayName: "SLA breached",
610
+ triggerInfo: { type: "sla-breached" }
611
+ }
612
+ ]
613
+ };
614
+ };
615
+ const rules = [];
616
+ const unconditional = [];
617
+ const gates = new Map;
618
+ for (const [at, row] of rows.entries()) {
619
+ const here = `${where}[${row.displayName ?? at}]`;
620
+ const parts = SLA_DURATION.exec(row.duration.trim());
621
+ const unit = parts === null ? undefined : SLA_UNITS.get(parts[2].toLowerCase());
622
+ const expression = row.expression.trim();
623
+ if (parts === null || unit === undefined || !expression.startsWith("=")) {
624
+ unresolved.push({
625
+ kind: "case-sla",
626
+ where: here,
627
+ detail: `the conditional SLA rule ${row.displayName === undefined ? `\`${expression}\`` : `"${row.displayName}"`} ${!expression.startsWith("=") ? "states its condition as prose, not an `=` expression" : `has the duration \`${row.duration}\`, which gives no count and unit`}, so it is left out rather than guessed at`
628
+ });
629
+ continue;
630
+ }
631
+ const rule = {
632
+ id: prefixedId("sla_", 6),
633
+ ...row.displayName !== undefined && {
634
+ displayName: row.displayName
635
+ },
636
+ expression: canonicalExpression(expand(expression, `${here}.expression`)),
637
+ count: Number(parts[1]),
638
+ unit,
639
+ ...escalationsFor(row.duration)
640
+ };
641
+ if (/^=js:\s*true\s*$/.test(expression)) {
642
+ if (!hasDefault && unconditional.length === 0) {
643
+ const escalationRule = escalate?.(row.duration, unresolved)?.escalationRule;
644
+ const { escalationRule: _copied, ...bare } = rule;
645
+ unconditional.push(escalationRule === undefined ? bare : { ...bare, escalationRule });
646
+ continue;
647
+ }
648
+ const kept = defaultDuration ?? (unconditional[0] === undefined ? undefined : `${String(unconditional[0].count)} ${String(unconditional[0].unit)}`);
649
+ if (kept !== undefined && kept !== `${rule.count} ${unit}`) {
650
+ unresolved.push({
651
+ kind: "case-sla",
652
+ where: here,
653
+ detail: `the SLA table restates the default as \`${row.duration}\`, and the default is already ${kept}; the first is kept, and the document has to say which it means`
654
+ });
655
+ }
656
+ continue;
657
+ }
658
+ const earlier = gates.get(gateKey(rule.expression));
659
+ if (earlier !== undefined) {
660
+ unresolved.push({
661
+ kind: "case-sla",
662
+ where: here,
663
+ detail: `the conditional SLA rule ${row.displayName === undefined ? `\`${expression}\`` : `"${row.displayName}"`} has the same condition as ${earlier}, and only the first rule whose condition holds applies, so it is left out; the document has to say which duration that condition takes`
664
+ });
665
+ continue;
666
+ }
667
+ gates.set(gateKey(rule.expression), row.displayName === undefined ? `row ${at + 1}` : `"${row.displayName}"`);
668
+ rules.push(rule);
669
+ }
670
+ if (rules.length > 0 && !hasDefault && unconditional.length === 0) {
671
+ if (!reportNoDefault)
672
+ return [];
673
+ unresolved.push({
674
+ kind: "case-sla",
675
+ where,
676
+ detail: `the SLA table gives ${rules.length === 1 ? "a conditional rule" : `${rules.length} conditional rules`} and no default — no Duration cell and no \`=js:true\` row — and the engine runs its last rule unconditionally, so none of them is written; the document has to state the duration that applies otherwise`
677
+ });
678
+ return [];
679
+ }
680
+ return [...rules, ...unconditional];
681
+ };
937
682
 
938
683
  // ../case-tool/src/services/sdd-convert/triggers.ts
939
684
  var MANUAL_TRIGGERS = new Set(["manual", "none", "n/a", "na"]);
@@ -1018,10 +763,23 @@ var boundTriggerFor = (declared, triggers) => {
1018
763
  ambiguous: callable.length === 0 ? "every declared trigger is a timer, so none of them is the one a caller starts the case through" : `${callable.length} of the declared triggers are non-timer, so which one a blank \`sourceTriggers\` means is not stated`
1019
764
  };
1020
765
  };
766
+ var variableTypeFor = (name, declared, unresolved) => {
767
+ if (declared === undefined)
768
+ return "string";
769
+ const known = canonicalVariableType(declared);
770
+ if (known !== undefined)
771
+ return known.type;
772
+ unresolved.push({
773
+ kind: "variable-type",
774
+ where: `variables[${name}].type`,
775
+ detail: `"${name}" is declared \`${declared}\`, which is no case variable type — the Case Designer writes string, integer, float, double, boolean, datetime, date, time, object, file, array or jsonSchema — so it is written as declared, and validate reports it until the Type cell names one of them`
776
+ });
777
+ return declared;
778
+ };
1021
779
  var jsonSchemaBody = (name, type, model, unresolved) => {
1022
780
  if (type !== "jsonSchema")
1023
781
  return;
1024
- const declared = model.variableBodies?.[indexKey(name)];
782
+ const declared = model.variableBodies?.[modelKey(name)];
1025
783
  if (declared === undefined || declared.trim() === "") {
1026
784
  unresolved.push({
1027
785
  kind: "variable-body",
@@ -1043,7 +801,7 @@ var jsonSchemaBody = (name, type, model, unresolved) => {
1043
801
  };
1044
802
  var caseVariablesFor = (model, triggers = [], unresolved = []) => {
1045
803
  const buckets = { inputs: [], outputs: [], inputOutputs: [], bridges: new Map };
1046
- const categorised = model.variables.filter((name) => model.variableCategories[indexKey(name)] !== undefined).length;
804
+ const categorised = model.variables.filter((name) => model.variableCategories[modelKey(name)] !== undefined).length;
1047
805
  if (model.variables.length > 0 && categorised === 0) {
1048
806
  unresolved.push({
1049
807
  kind: "variable-category",
@@ -1052,7 +810,7 @@ var caseVariablesFor = (model, triggers = [], unresolved = []) => {
1052
810
  });
1053
811
  }
1054
812
  for (const name of model.variables) {
1055
- const key = indexKey(name);
813
+ const key = modelKey(name);
1056
814
  const declaredCategory = model.variableCategories[key];
1057
815
  if (declaredCategory === undefined && categorised > 0) {
1058
816
  unresolved.push({
@@ -1064,7 +822,7 @@ var caseVariablesFor = (model, triggers = [], unresolved = []) => {
1064
822
  const category = declaredCategory ?? "variable";
1065
823
  const groups = VARIABLE_PLACEMENT.get(category) ?? ["inputOutputs"];
1066
824
  const carriesDefault = DEFAULT_GROUP.get(category) ?? "inputOutputs";
1067
- const type = model.variableTypes[key] ?? "string";
825
+ const type = variableTypeFor(name, model.variableTypes[key], unresolved);
1068
826
  const body = jsonSchemaBody(name, type, model, unresolved);
1069
827
  const fileBody = category === "in" && type === "file" ? FILE_TYPE_JSON_SCHEMA : undefined;
1070
828
  const declared = model.variableDefaults[key] ?? "";
@@ -1249,15 +1007,17 @@ var finishCaseDocument = (document, model, index, unresolved) => {
1249
1007
  detail: "no stage declares a `case-entered` entry condition, so nothing makes a first stage eligible and the case never starts"
1250
1008
  });
1251
1009
  }
1252
- const slaRules = index.caseSla === undefined ? [] : [index.caseSla];
1010
+ const slaRules = index.caseSlaRules;
1253
1011
  if (slaRules.length > 0) {
1254
1012
  document.metadata = { ...document.metadata, slaRules };
1255
- } else if (model.caseSla === true || /\d/.test(String(model.caseSlaDuration ?? ""))) {
1013
+ }
1014
+ const hasDefaultRule = slaRules.some((rule) => /^=js:\s*true\s*$/.test(String(rule.expression ?? "")));
1015
+ if (!hasDefaultRule && (model.caseSla === true || /\d/.test(String(model.caseSlaDuration ?? "")))) {
1256
1016
  const stated = String(model.caseSlaDuration ?? "").trim();
1257
1017
  unresolved.push({
1258
1018
  kind: "case-sla",
1259
1019
  where: "metadata.slaRules",
1260
- detail: `this SDD declares a case SLA but no rule could be emitted from it: the duration cell is ${stated === "" ? "absent" : `\`${stated}\`, which gives no count and unit`}. Any conditional rules or escalations it declares outside a recognised SLA heading are not carried either — a combined rule table under a heading like \`SLA Escalation\`, or a condition written as prose rather than an expression, is left for authoring rather than guessed at`
1020
+ detail: `this SDD declares a case SLA but no default rule could be emitted from it: the duration cell is ${stated === "" ? "absent" : `\`${stated}\`, which gives no count and unit`}. Any conditional rules or escalations it declares outside a recognised SLA heading are not carried either — a combined rule table under a heading like \`SLA Escalation\`, or a condition written as prose rather than an expression, is left for authoring rather than guessed at. Conditional rules it does declare are dropped with the default, since without one the engine runs the last rule for every case`
1261
1021
  });
1262
1022
  }
1263
1023
  const caseVariables = caseVariablesFor(model, emittedTriggers, unresolved);
@@ -1317,6 +1077,331 @@ var finishCaseDocument = (document, model, index, unresolved) => {
1317
1077
  }
1318
1078
  return { conditionCount };
1319
1079
  };
1080
+ // ../case-tool/src/services/sdd-convert/http-request-metadata.json
1081
+ var http_request_metadata_default = {
1082
+ activityPropertyConfiguration: {
1083
+ configuration: '=jsonString:{"essentialConfiguration":{"connectorVersion":"1.5.3","scriptRef":null,"customFieldsRequestDetails":null,"instanceParameters":{"connectorKey":"uipath-uipath-http","objectName":"http-request","httpMethod":"POST","activityType":"Curated","version":"1.0.0","supportsStreaming":false,"subType":"method"},"objectName":"http-request","operation":"create","packageVersion":"1.0.0","httpMethod":"POST","path":"/http-request","unifiedTypesCompatible":true,"savedJitInputFieldId":"in_http-request"},"optionalConfiguration":{"_textBlocks":[{"name":"contentTypeNotice","text":"The content-type header must be application/json.","position":"above"}],"objectActions":[],"connectorName":"HTTP","agentIdentity":null,"maxPageSize":100,"jobArguments":null,"isAutopilotInvalidConfig":false,"additionalHeaders":null,"cachedLookupValues":[],"cachedBrowserItems":[],"cachedPropertyMappings":[],"primaryKeys":[],"objectDisplayName":"HTTP Request","eventMode":null,"eventOperation":null,"hasBreakingChanges":false,"fieldsContainer":{"outputTypeDefinition":"{\\"body\\":object;\\"code\\":number;\\"method\\":string;\\"rawStringBody\\":string;\\"request\\":{\\"headers\\":object;\\"methodType\\":string;\\"query\\":object;\\"type\\":string;\\"url\\":string}}","outputJsonSchema":{"$schema":"http://json-schema.org/draft-07/schema#","type":"object","properties":{"method":{"title":"Method","type":"string","description":"Specifies the HTTP method to be used for the request."},"body":{"title":"Body","$ref":"#/definitions/body"},"code":{"title":"Code","type":"integer","description":"The Code"},"rawStringBody":{"title":"Raw body","type":"string","description":"The Raw string body"},"request":{"title":"Request","$ref":"#/definitions/request"}},"definitions":{"body":{"type":"object","properties":{}},"request":{"type":"object","properties":{"type":{"title":"Request type","type":"string","description":"The Request type"},"url":{"title":"Request url","type":"string","description":"The Request url"},"methodType":{"title":"Method","type":"string","description":"The Request method type"}}}}},"hasFileOutput":false,"populateOutputFields":true,"inputFields":[{"typeScriptDefinition":null,"useUrlInput":false,"resolvedUrl":null,"id":"authentication","name":"authentication","displayName":"Authentication","description":"Authentication","type":"string","sortOrder":1,"defaultValue":"manual","primaryKey":false,"enum":[{"name":"Manual authentication","value":"manual","description":"Provide authentication details directly in the request"},{"name":"Connector based authentication","value":"connector","description":"Use authentication details from a configured connector"}],"design":{"loadByDefault":false,"isMultiSelect":false,"enableUserOverride":false,"isHidden":false,"fieldActions":[{"actionType":"showMessages","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["connector"],"isCleared":false,"isVariable":false}],"messages":["contentTypeNotice"]},{"actionType":"clearMessages","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["manual"],"isCleared":false,"isVariable":false}],"messages":["contentTypeNotice"]}],"textBlocks":[{"name":"contentTypeNotice","text":"The content-type header must be application/json.","position":"above"}],"validation":false},"fieldActions":[{"actionType":"showMessages","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["connector"],"isCleared":false,"isVariable":false}],"messages":["contentTypeNotice"]},{"actionType":"clearMessages","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["manual"],"isCleared":false,"isVariable":false}],"messages":["contentTypeNotice"]}],"searchable":false,"searchableJoins":null,"required":true,"request":true,"response":false,"responseCurated":false,"fieldLocation":"body","onCanvas":null,"isJitField":false,"isFieldActionParent":true,"isMainResponseField":false,"isMethodParameter":false,"isBackgroundField":false,"filterTree":null,"filterNeedsRefresh":null,"arrayInputPaths":null,"clrType":{"_elementType":null,"_isNullable":false,"isArray":false,"genericTypeArguments":[],"fullName":null,"name":"String","assemblyQualifiedName":"String","isValueType":true},"forceExpressionEditor":false,"requiredGroups":null,"disableExpressions":false,"backingField":null,"searchableDisplayName":null,"selectedResourceId":null},{"typeScriptDefinition":null,"useUrlInput":false,"resolvedUrl":null,"id":"targetConnector","name":"targetConnector","displayName":"Connector","description":"Select a connector","type":"string","sortOrder":2,"primaryKey":false,"lookup":{"objectName":"connectors","lookupNames":["name"],"lookupValue":"key","path":"/Connectors?hasHttpRequest=true","orderBy":"NONE","defaultLookupValues":[{"name":"HTTP","key":"uipath-uipath-http","priority":1,"isDefault":true,"description":"UiPath HTTP connector for general API requests"}]},"design":{"component":"Connectors","loadByDefault":true,"isMultiSelect":false,"enableUserOverride":false,"displayPattern":"{name}","isHidden":false,"fieldActions":[{"actionType":"show","priorityOrder":1,"rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["connector"],"isCleared":false,"isVariable":false,"isWorkflowExpression":true}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["manual"],"isCleared":true,"isVariable":false}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","isCleared":true,"isVariable":false}]}],"position":"primary","solutionResourceKind":"connector","validation":false},"fieldActions":[{"actionType":"show","priorityOrder":1,"rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["connector"],"isCleared":false,"isVariable":false,"isWorkflowExpression":true}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["manual"],"isCleared":true,"isVariable":false}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","isCleared":true,"isVariable":false}]}],"searchable":false,"searchableJoins":null,"required":true,"request":true,"response":false,"responseCurated":false,"fieldLocation":"body","onCanvas":null,"isJitField":false,"isFieldActionParent":true,"isMainResponseField":false,"isMethodParameter":false,"isBackgroundField":false,"filterTree":null,"filterNeedsRefresh":null,"arrayInputPaths":null,"clrType":{"_elementType":null,"_isNullable":false,"isArray":false,"genericTypeArguments":[],"fullName":null,"name":"String","assemblyQualifiedName":"String","isValueType":true},"forceExpressionEditor":false,"requiredGroups":null,"disableExpressions":false,"backingField":null,"searchableDisplayName":null,"selectedResourceId":null},{"typeScriptDefinition":null,"useUrlInput":false,"resolvedUrl":null,"id":"connection","name":"connection","displayName":"Connection","description":"Connections","type":"string","sortOrder":3,"primaryKey":false,"design":{"component":"Connections","loadByDefault":true,"isMultiSelect":false,"enableUserOverride":false,"isHidden":false,"fieldActions":[{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["manual"],"isCleared":true,"isVariable":false}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["connector"],"isCleared":true,"isVariable":false},{"type":"field","refFieldName":"targetConnector","isCleared":true,"isVariable":false}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","isCleared":true,"isVariable":false}]},{"actionType":"show","priorityOrder":1,"rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["connector"],"isCleared":true,"isVariable":false},{"type":"field","refFieldName":"targetConnector","refFieldValues":["*"],"isCleared":true,"isVariable":false}]}],"position":"primary","solutionResourceKind":"connection","validation":false},"fieldActions":[{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["manual"],"isCleared":true,"isVariable":false}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["connector"],"isCleared":true,"isVariable":false},{"type":"field","refFieldName":"targetConnector","isCleared":true,"isVariable":false}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","isCleared":true,"isVariable":false}]},{"actionType":"show","priorityOrder":1,"rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["connector"],"isCleared":true,"isVariable":false},{"type":"field","refFieldName":"targetConnector","refFieldValues":["*"],"isCleared":true,"isVariable":false}]},{"rules":[{"refFieldName":"targetConnector","refFieldValues":["*"],"isCleared":false,"isConstantValue":false,"isWorkflowExpression":false}],"actionType":"grabValue","groupNames":[],"messages":null}],"searchable":false,"searchableJoins":null,"required":true,"request":true,"response":false,"responseCurated":false,"fieldLocation":"body","onCanvas":null,"isJitField":false,"isFieldActionParent":false,"isMainResponseField":false,"isMethodParameter":false,"isBackgroundField":false,"filterTree":null,"filterNeedsRefresh":null,"arrayInputPaths":null,"clrType":{"_elementType":null,"_isNullable":false,"isArray":false,"genericTypeArguments":[],"fullName":null,"name":"String","assemblyQualifiedName":"String","isValueType":true},"forceExpressionEditor":false,"requiredGroups":null,"disableExpressions":false,"backingField":null,"searchableDisplayName":null,"selectedResourceId":null},{"typeScriptDefinition":null,"useUrlInput":false,"resolvedUrl":null,"id":"method","name":"method","displayName":"Method","description":"Specifies the HTTP method to be used for the request.","type":"string","sortOrder":4,"defaultValue":"GET","primaryKey":false,"enum":[{"name":"GET","value":"GET"},{"name":"POST","value":"POST"},{"name":"PUT","value":"PUT"},{"name":"PATCH","value":"PATCH"},{"name":"DELETE","value":"DELETE"},{"name":"OPTIONS","value":"OPTIONS"},{"name":"HEAD","value":"HEAD"}],"design":{"loadByDefault":true,"isMultiSelect":false,"enableUserOverride":false,"isHidden":false,"position":"primary","validation":false},"fieldActions":null,"searchable":false,"searchableJoins":null,"required":true,"request":true,"response":true,"responseCurated":false,"fieldLocation":"body","onCanvas":null,"isJitField":false,"isFieldActionParent":true,"isMainResponseField":false,"isMethodParameter":false,"isBackgroundField":false,"filterTree":null,"filterNeedsRefresh":null,"arrayInputPaths":null,"clrType":{"_elementType":null,"_isNullable":false,"isArray":false,"genericTypeArguments":[],"fullName":null,"name":"String","assemblyQualifiedName":"String","isValueType":true},"forceExpressionEditor":false,"requiredGroups":null,"disableExpressions":false,"backingField":null,"searchableDisplayName":null,"selectedResourceId":null},{"typeScriptDefinition":null,"useUrlInput":false,"resolvedUrl":null,"id":"url","name":"url","displayName":"URL","description":"The web address where the HTTP request is sent.","type":"string","sortOrder":5,"primaryKey":false,"design":{"loadByDefault":false,"isMultiSelect":false,"enableUserOverride":false,"isHidden":false,"fieldActions":[{"actionType":"show","priorityOrder":1,"rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["manual"],"isCleared":false,"isVariable":false,"isWorkflowExpression":true}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["connector"],"isCleared":true,"isVariable":false}]}],"position":"primary","validation":false},"fieldActions":[{"actionType":"show","priorityOrder":1,"rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["manual"],"isCleared":false,"isVariable":false,"isWorkflowExpression":true}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["connector"],"isCleared":true,"isVariable":false}]}],"searchable":false,"searchableJoins":null,"required":true,"request":true,"response":false,"responseCurated":false,"fieldLocation":"body","onCanvas":null,"isJitField":false,"isFieldActionParent":false,"isMainResponseField":false,"isMethodParameter":false,"isBackgroundField":false,"filterTree":null,"filterNeedsRefresh":null,"arrayInputPaths":null,"clrType":{"_elementType":null,"_isNullable":false,"isArray":false,"genericTypeArguments":[],"fullName":null,"name":"String","assemblyQualifiedName":"String","isValueType":true},"forceExpressionEditor":false,"requiredGroups":null,"disableExpressions":false,"backingField":null,"searchableDisplayName":null,"selectedResourceId":null},{"typeScriptDefinition":null,"useUrlInput":false,"resolvedUrl":null,"id":"path","name":"path","displayName":"Path","description":"The endpoint path for the REST API request.","type":"string","sortOrder":5,"primaryKey":false,"design":{"loadByDefault":false,"isMultiSelect":false,"enableUserOverride":false,"isHidden":false,"fieldActions":[{"actionType":"show","priorityOrder":1,"rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["connector"],"isCleared":false,"isVariable":false,"isWorkflowExpression":true}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["manual"],"isCleared":true,"isVariable":false}]}],"position":"primary","validation":false},"fieldActions":[{"actionType":"show","priorityOrder":1,"rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["connector"],"isCleared":false,"isVariable":false,"isWorkflowExpression":true}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["manual"],"isCleared":true,"isVariable":false}]}],"searchable":false,"searchableJoins":null,"required":false,"request":true,"response":false,"responseCurated":false,"fieldLocation":"body","onCanvas":null,"isJitField":false,"isFieldActionParent":false,"isMainResponseField":false,"isMethodParameter":false,"isBackgroundField":false,"filterTree":null,"filterNeedsRefresh":null,"arrayInputPaths":null,"clrType":{"_elementType":null,"_isNullable":false,"isArray":false,"genericTypeArguments":[],"fullName":null,"name":"String","assemblyQualifiedName":"String","isValueType":true},"forceExpressionEditor":false,"requiredGroups":null,"disableExpressions":false,"backingField":null,"searchableDisplayName":null,"selectedResourceId":null},{"typeScriptDefinition":null,"useUrlInput":false,"resolvedUrl":null,"id":"headers","name":"headers","displayName":"Headers","description":"Headers","type":"object","sortOrder":6,"primaryKey":false,"design":{"component":"Dictionary","loadByDefault":false,"isMultiSelect":false,"enableUserOverride":false,"isHidden":false,"position":"primary","dictionaryWidget":{"windowTitle":"","windowDescription":"","columnKeyTitle":"","columnKeyDescription":"","columnKeyHint":"","columnValueTitle":"","columnValueDescription":"","columnValueHint":""},"validation":false},"fieldActions":null,"searchable":false,"searchableJoins":null,"required":false,"request":true,"response":false,"responseCurated":false,"fieldLocation":"body","onCanvas":true,"isJitField":false,"isFieldActionParent":false,"isMainResponseField":false,"isMethodParameter":false,"isBackgroundField":false,"filterTree":null,"filterNeedsRefresh":null,"arrayInputPaths":null,"clrType":{"_elementType":null,"_isNullable":false,"isArray":false,"genericTypeArguments":[],"fullName":null,"name":"Object","assemblyQualifiedName":"Object","isValueType":false},"forceExpressionEditor":false,"requiredGroups":null,"disableExpressions":false,"backingField":null,"searchableDisplayName":null,"selectedResourceId":null},{"typeScriptDefinition":null,"useUrlInput":false,"resolvedUrl":null,"id":"query","name":"query","displayName":"Query parameters","description":"Query parameters","type":"object","sortOrder":7,"primaryKey":false,"design":{"component":"Dictionary","loadByDefault":false,"isMultiSelect":false,"enableUserOverride":false,"isHidden":false,"position":"primary","dictionaryWidget":{"windowTitle":"","windowDescription":"","columnKeyTitle":"","columnKeyDescription":"","columnKeyHint":"","columnValueTitle":"","columnValueDescription":"","columnValueHint":""},"validation":false},"fieldActions":null,"searchable":false,"searchableJoins":null,"required":false,"request":true,"response":false,"responseCurated":false,"fieldLocation":"body","onCanvas":true,"isJitField":false,"isFieldActionParent":false,"isMainResponseField":false,"isMethodParameter":false,"isBackgroundField":false,"filterTree":null,"filterNeedsRefresh":null,"arrayInputPaths":null,"clrType":{"_elementType":null,"_isNullable":false,"isArray":false,"genericTypeArguments":[],"fullName":null,"name":"Object","assemblyQualifiedName":"Object","isValueType":false},"forceExpressionEditor":false,"requiredGroups":null,"disableExpressions":false,"backingField":null,"searchableDisplayName":null,"selectedResourceId":null},{"typeScriptDefinition":null,"useUrlInput":false,"resolvedUrl":null,"id":"requestBodyType","name":"requestBodyType","displayName":"Request body type","description":"Determines how the request body is encoded. Available for manual authentication only; connector-based requests remain JSON.","type":"string","sortOrder":8,"defaultValue":"raw","primaryKey":false,"enum":[{"name":"Raw","value":"raw","description":"Send the body as-is using the Content-Type header (e.g. JSON, XML, plain text)."},{"name":"Multipart form data","value":"multipartFormData","description":"Send one or more form-data parts encoded as multipart/form-data."}],"design":{"loadByDefault":false,"isMultiSelect":false,"enableUserOverride":false,"isHidden":false,"fieldActions":[{"actionType":"show","priorityOrder":1,"rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["manual"],"isCleared":false,"isVariable":false,"isWorkflowExpression":true},{"type":"field","refFieldName":"method","refFieldValues":["POST","PATCH","PUT"],"isCleared":false,"isVariable":false,"isWorkflowExpression":true}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["connector"],"isCleared":true,"isVariable":false}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"method","refFieldValues":["GET","HEAD","OPTIONS","DELETE"],"isCleared":true,"isVariable":false,"isWorkflowExpression":true}]}],"position":"primary","validation":false},"fieldActions":[{"actionType":"show","priorityOrder":1,"rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["manual"],"isCleared":false,"isVariable":false,"isWorkflowExpression":true},{"type":"field","refFieldName":"method","refFieldValues":["POST","PATCH","PUT"],"isCleared":false,"isVariable":false,"isWorkflowExpression":true}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["connector"],"isCleared":true,"isVariable":false}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"method","refFieldValues":["GET","HEAD","OPTIONS","DELETE"],"isCleared":true,"isVariable":false,"isWorkflowExpression":true}]}],"searchable":false,"searchableJoins":null,"required":false,"request":true,"response":false,"responseCurated":false,"fieldLocation":"body","onCanvas":null,"isJitField":false,"isFieldActionParent":true,"isMainResponseField":false,"isMethodParameter":false,"isBackgroundField":false,"filterTree":null,"filterNeedsRefresh":null,"arrayInputPaths":null,"clrType":{"_elementType":null,"_isNullable":false,"isArray":false,"genericTypeArguments":[],"fullName":null,"name":"String","assemblyQualifiedName":"String","isValueType":true},"forceExpressionEditor":false,"requiredGroups":null,"disableExpressions":false,"backingField":null,"searchableDisplayName":null,"selectedResourceId":null},{"typeScriptDefinition":null,"useUrlInput":false,"resolvedUrl":null,"id":"body","name":"body","displayName":"Body","description":"Contains the data to be sent with the HTTP request.","type":"object","sortOrder":9,"primaryKey":false,"design":{"loadByDefault":false,"isMultiSelect":false,"enableUserOverride":false,"isHidden":false,"fieldActions":[{"actionType":"hide","rules":[{"type":"field","refFieldName":"method","refFieldValues":["GET","HEAD","OPTIONS","DELETE"],"isCleared":true,"isVariable":false,"isWorkflowExpression":true}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"requestBodyType","refFieldValues":["multipartFormData"],"isCleared":true,"isVariable":false,"isWorkflowExpression":true}]},{"actionType":"show","priorityOrder":1,"rules":[{"type":"field","refFieldName":"requestBodyType","refFieldValues":["raw"],"isCleared":true,"isVariable":false,"isWorkflowExpression":true},{"type":"field","refFieldName":"method","refFieldValues":["POST","PATCH","PUT"],"isCleared":false,"isVariable":false,"isWorkflowExpression":true}]}],"position":"primary","validation":false},"fieldActions":[{"actionType":"hide","rules":[{"type":"field","refFieldName":"method","refFieldValues":["GET","HEAD","OPTIONS","DELETE"],"isCleared":true,"isVariable":false,"isWorkflowExpression":true}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"requestBodyType","refFieldValues":["multipartFormData"],"isCleared":true,"isVariable":false,"isWorkflowExpression":true}]},{"actionType":"show","priorityOrder":1,"rules":[{"type":"field","refFieldName":"requestBodyType","refFieldValues":["raw"],"isCleared":true,"isVariable":false,"isWorkflowExpression":true},{"type":"field","refFieldName":"method","refFieldValues":["POST","PATCH","PUT"],"isCleared":false,"isVariable":false,"isWorkflowExpression":true}]}],"searchable":false,"searchableJoins":null,"required":false,"request":true,"response":true,"responseCurated":false,"fieldLocation":"body","onCanvas":null,"isJitField":false,"isFieldActionParent":false,"isMainResponseField":false,"isMethodParameter":false,"isBackgroundField":false,"filterTree":null,"filterNeedsRefresh":null,"arrayInputPaths":null,"clrType":{"_elementType":null,"_isNullable":false,"isArray":false,"genericTypeArguments":[],"fullName":null,"name":"Object","assemblyQualifiedName":"Object","isValueType":false},"forceExpressionEditor":false,"requiredGroups":null,"disableExpressions":false,"backingField":null,"searchableDisplayName":null,"selectedResourceId":null},{"typeScriptDefinition":null,"useUrlInput":false,"resolvedUrl":null,"id":"multipartFormData","name":"multipartFormData","displayName":"Form data parts","description":"Multipart form-data parts. Provide a list of parts; each part is an object with \'name\' (required), \'value\' (required), and optional \'filename\', \'contentType\' and \'encoding\'. A value that is an attachment reference is sent as a file; set encoding to \'base64\' to send a base64 string as bytes; objects are sent as JSON.","type":"object","sortOrder":10,"primaryKey":false,"design":{"loadByDefault":false,"isMultiSelect":false,"enableUserOverride":false,"isHidden":false,"fieldActions":[{"actionType":"show","priorityOrder":1,"rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["manual"],"isCleared":false,"isVariable":false,"isWorkflowExpression":true},{"type":"field","refFieldName":"requestBodyType","refFieldValues":["multipartFormData"],"isCleared":false,"isVariable":false,"isWorkflowExpression":true}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"requestBodyType","refFieldValues":["raw"],"isCleared":true,"isVariable":false,"isWorkflowExpression":true}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["connector"],"isCleared":true,"isVariable":false}]}],"position":"primary","validation":false},"fieldActions":[{"actionType":"show","priorityOrder":1,"rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["manual"],"isCleared":false,"isVariable":false,"isWorkflowExpression":true},{"type":"field","refFieldName":"requestBodyType","refFieldValues":["multipartFormData"],"isCleared":false,"isVariable":false,"isWorkflowExpression":true}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"requestBodyType","refFieldValues":["raw"],"isCleared":true,"isVariable":false,"isWorkflowExpression":true}]},{"actionType":"hide","rules":[{"type":"field","refFieldName":"authentication","refFieldValues":["connector"],"isCleared":true,"isVariable":false}]}],"searchable":false,"searchableJoins":null,"required":false,"request":true,"response":false,"responseCurated":false,"fieldLocation":"body","onCanvas":null,"isJitField":false,"isFieldActionParent":false,"isMainResponseField":false,"isMethodParameter":false,"isBackgroundField":false,"filterTree":null,"filterNeedsRefresh":null,"arrayInputPaths":null,"clrType":{"_elementType":null,"_isNullable":false,"isArray":false,"genericTypeArguments":[],"fullName":null,"name":"Object","assemblyQualifiedName":"Object","isValueType":false},"forceExpressionEditor":false,"requiredGroups":null,"disableExpressions":false,"backingField":null,"searchableDisplayName":null,"selectedResourceId":null}],"outputFields":[{"typeScriptDefinition":null,"useUrlInput":false,"resolvedUrl":null,"id":"http-request","name":"http-request","displayName":"HTTP Request","description":"","type":"Generatedhttp-request","sortOrder":null,"format":null,"mask":null,"defaultValue":null,"primaryKey":false,"lookup":null,"enum":null,"design":null,"fieldActions":null,"searchable":false,"searchableOperators":null,"searchableNames":null,"searchableJoins":null,"required":false,"request":false,"response":true,"responseCurated":false,"fieldLocation":"output","onCanvas":null,"isJitField":true,"isFieldActionParent":false,"isMainResponseField":true,"isMethodParameter":false,"isBackgroundField":false,"filterTree":null,"filterNeedsRefresh":null,"arrayInputPaths":null,"clrType":{"_elementType":null,"_isNullable":false,"isArray":false,"genericTypeArguments":[],"fullName":null,"name":"Object","assemblyQualifiedName":"Object","isValueType":false},"forceExpressionEditor":false,"requiredGroups":null,"disableExpressions":false,"backingField":null,"searchableDisplayName":null,"selectedResourceId":null}],"jitTypeNeedsRefresh":false,"jitInputField":{"typeScriptDefinition":"{\\"authentication\\":string;\\"body\\":object;\\"connection\\":string;\\"headers\\":object;\\"method\\":string;\\"multipartFormData\\":object;\\"path\\":string;\\"query\\":object;\\"requestBodyType\\":string;\\"targetConnector\\":string;\\"url\\":string}","useUrlInput":false,"resolvedUrl":null,"id":"in_http-request","name":"http-request","displayName":"HTTP Request","description":"HTTP Request input object","type":"Generatedhttp-request","sortOrder":null,"format":null,"mask":null,"defaultValue":"{\\n \\"authentication\\": null,\\n \\"body\\": null,\\n \\"connection\\": null,\\n \\"headers\\": null,\\n \\"method\\": null,\\n \\"multipartFormData\\": null,\\n \\"path\\": null,\\n \\"query\\": null,\\n \\"requestBodyType\\": null,\\n \\"targetConnector\\": null,\\n \\"url\\": null\\n}","primaryKey":false,"lookup":null,"enum":null,"design":null,"fieldActions":null,"searchable":false,"searchableOperators":null,"searchableNames":null,"searchableJoins":null,"required":true,"request":false,"response":false,"responseCurated":false,"fieldLocation":"jitObjectInput","onCanvas":null,"isJitField":true,"isFieldActionParent":false,"isMainResponseField":false,"isMethodParameter":false,"isBackgroundField":false,"filterTree":null,"filterNeedsRefresh":null,"arrayInputPaths":null,"clrType":{"_elementType":null,"_isNullable":false,"isArray":false,"genericTypeArguments":[],"fullName":null,"name":"Object","assemblyQualifiedName":"Object","isValueType":false},"forceExpressionEditor":false,"requiredGroups":null,"disableExpressions":false,"backingField":null,"searchableDisplayName":null,"selectedResourceId":null},"inputMode":null,"searchableFields":[],"hasUnifiedTypes":true,"jitTypeHash":null}}}',
1084
+ uiPathActivityTypeId: "5c4cc855-b42a-37e6-b910-de8588998fce",
1085
+ errorState: {
1086
+ issues: []
1087
+ }
1088
+ },
1089
+ activityMetadata: {
1090
+ activity: {
1091
+ isAppActivity: false,
1092
+ packageId: 196648,
1093
+ svgIconUrl: "icons/0dad78c9d04c245b126d8edb4c451aa8a0d395d34731cf5702441f6284c70ccc.svg",
1094
+ displayName: "HTTP Request",
1095
+ assemblyQualifiedName: "UiPath.IntegrationService.Activities.Runtime.Activities.ConnectorActivity, UiPath.IntegrationService.Activities.Runtime, Version=1.34.0.0, Culture=neutral, PublicKeyToken=null",
1096
+ description: "Use HTTP requests to interact with APIs via the selected connector and connection configuration.",
1097
+ category: "",
1098
+ activityColor: "#E56D5C",
1099
+ configuration: '{"connectorKey":"uipath-uipath-http","objectName":"http-request","httpMethod":"POST","activityType":"Curated","version":"1.0.0","supportsStreaming":false,"subType":"method"}',
1100
+ uiPathActivityTypeId: "5c4cc855-b42a-37e6-b910-de8588998fce",
1101
+ isExperimental: false,
1102
+ helpUrlTemplate: "https://docs.uipath.com/{0}/activities/other/latest/integration-service/uipath-uipath-http-HTTP-Request",
1103
+ isEnabled: true,
1104
+ targetPlatform: "CrossPlatform",
1105
+ isAdvanced: false,
1106
+ isRestricted: false,
1107
+ hasWpfOnlyDesigner: false,
1108
+ tags: [
1109
+ ""
1110
+ ]
1111
+ },
1112
+ meta: {
1113
+ packageName: "UiPath.IntegrationService.Activities",
1114
+ packageVersion: "1.34.0-alpha.20261013.3",
1115
+ activityColor: "#E56D5C",
1116
+ packageCategoryDisplayName: "HTTP"
1117
+ }
1118
+ },
1119
+ inputMetadata: {},
1120
+ telemetryData: {
1121
+ connectorKey: "uipath-uipath-http",
1122
+ connectorName: "HTTP",
1123
+ operationType: "create",
1124
+ objectName: "http-request",
1125
+ objectDisplayName: "HTTP Request",
1126
+ primaryKeyName: ""
1127
+ },
1128
+ bindings: []
1129
+ };
1130
+
1131
+ // ../case-tool/src/services/sdd-convert/http-request.ts
1132
+ var HTTP_CONNECTOR_KEY = "uipath-uipath-http";
1133
+ var OUTPUTS = [
1134
+ {
1135
+ name: "code",
1136
+ displayName: "Response status code",
1137
+ type: "number",
1138
+ source: "=response.code"
1139
+ },
1140
+ {
1141
+ name: "headers",
1142
+ displayName: "Response headers",
1143
+ type: "object",
1144
+ source: "=response.headers"
1145
+ },
1146
+ {
1147
+ name: "body",
1148
+ displayName: "Response body",
1149
+ type: "object",
1150
+ source: "=response.body"
1151
+ }
1152
+ ];
1153
+ var ERROR_SCHEMA = {
1154
+ type: "object",
1155
+ properties: {
1156
+ code: { type: "string" },
1157
+ message: { type: "string" },
1158
+ detail: { type: "string" },
1159
+ category: { type: "string" },
1160
+ status: { type: "number" },
1161
+ element: { type: "string" }
1162
+ }
1163
+ };
1164
+ var httpRequestOutputs = (elementId, taken, reserved = new Set) => [
1165
+ ...OUTPUTS.map((output) => {
1166
+ const id = mint(String(output.name), taken, reserved);
1167
+ return { ...output, var: id, value: id, id, elementId };
1168
+ }),
1169
+ (() => {
1170
+ const id = mint("error", taken, reserved);
1171
+ return {
1172
+ name: "Error",
1173
+ displayName: "Error",
1174
+ type: "jsonSchema",
1175
+ source: "=Error",
1176
+ _jsonSchema: ERROR_SCHEMA,
1177
+ id,
1178
+ var: id,
1179
+ value: id,
1180
+ elementId,
1181
+ body: ERROR_SCHEMA
1182
+ };
1183
+ })()
1184
+ ];
1185
+ var mint = (base, taken, reserved) => {
1186
+ const id = dedupedId(base, new Set([...taken, ...reserved]));
1187
+ taken.add(id);
1188
+ return id;
1189
+ };
1190
+ var objectCell = (text) => {
1191
+ if (text === undefined)
1192
+ return {};
1193
+ const [error, parsed] = catchError(() => JSON.parse(text));
1194
+ if (error)
1195
+ return { error: "is not JSON" };
1196
+ return typeof parsed === "object" && parsed !== null && !Array.isArray(parsed) ? { value: parsed } : { error: "is not a JSON object" };
1197
+ };
1198
+ var bodyValue = (text) => {
1199
+ if (text.startsWith("="))
1200
+ return { value: text };
1201
+ const [error] = catchError(() => JSON.parse(text));
1202
+ return error ? { error: "is neither JSON nor an `=` expression" } : { value: `=js:( ${text})` };
1203
+ };
1204
+ var BODY_METHODS = new Set(["POST", "PUT", "PATCH"]);
1205
+ var HTTP_METHODS = new Set([
1206
+ "GET",
1207
+ "POST",
1208
+ "PUT",
1209
+ "PATCH",
1210
+ "DELETE",
1211
+ "OPTIONS",
1212
+ "HEAD"
1213
+ ]);
1214
+ var IMPLICIT = "ImplicitConnection";
1215
+ var CONNECTION_BINDING_NAME = `${HTTP_CONNECTOR_KEY} connection`;
1216
+ var binding = (id, rest) => ({
1217
+ id,
1218
+ name: CONNECTION_BINDING_NAME,
1219
+ type: "string",
1220
+ resource: "Connection",
1221
+ ...rest
1222
+ });
1223
+ var implicitBinding = (bindings) => {
1224
+ const found = bindings.find((one) => one.name === CONNECTION_BINDING_NAME && one.resourceKey === IMPLICIT);
1225
+ if (found !== undefined)
1226
+ return String(found.id);
1227
+ const id = "bHttpImplicit";
1228
+ bindings.push(binding(id, {
1229
+ resourceKey: IMPLICIT,
1230
+ default: IMPLICIT,
1231
+ propertyAttribute: "ConnectionId"
1232
+ }));
1233
+ return id;
1234
+ };
1235
+ var connectionBindings = (connectionId, context) => {
1236
+ const known = context.connections.get(`http:${connectionId}`);
1237
+ const ordinal = context.connections.size + 1;
1238
+ const connectionRef = known ?? `bHttpC${ordinal}`;
1239
+ const folderRef = `${connectionRef}F`;
1240
+ const connection = binding(connectionRef, {
1241
+ resourceKey: connectionId,
1242
+ default: connectionId,
1243
+ propertyAttribute: "ConnectionId"
1244
+ });
1245
+ const folder = {
1246
+ id: folderRef,
1247
+ name: "FolderKey",
1248
+ type: "string",
1249
+ resource: "Connection",
1250
+ resourceKey: connectionId,
1251
+ propertyAttribute: "folderKey"
1252
+ };
1253
+ if (known === undefined) {
1254
+ context.connections.set(`http:${connectionId}`, connectionRef);
1255
+ context.bindings.push(connection, folder);
1256
+ }
1257
+ return { connection, folder };
1258
+ };
1259
+ var input = (name, elementId) => {
1260
+ const id = prefixedId("v", 8);
1261
+ return { name, type: "json", target: name, id, var: id, elementId };
1262
+ };
1263
+ var contextEntry = (name, value, type = "string") => ({
1264
+ name,
1265
+ value,
1266
+ type
1267
+ });
1268
+ var httpRequestData = (http, connector, outputs, context) => {
1269
+ const { where, unresolved, elementId } = context;
1270
+ const expand = (value) => value.startsWith("=") ? expandXrefs(value, {
1271
+ outputs: context.outputs,
1272
+ where,
1273
+ unresolved
1274
+ }) : value;
1275
+ const expandEntries = (object) => Object.fromEntries(Object.entries(object).map(([key, value]) => [
1276
+ key,
1277
+ typeof value === "string" ? expand(value) : value
1278
+ ]));
1279
+ const request = http ?? {};
1280
+ const stated = (request.method ?? "").toUpperCase();
1281
+ const method = HTTP_METHODS.has(stated) ? stated : "";
1282
+ if (stated === "") {
1283
+ unresolved.push({
1284
+ kind: "connector-context",
1285
+ where,
1286
+ detail: "this `http-request` task states no `**Method:**`, so the request has none and the task cannot run until one is set"
1287
+ });
1288
+ } else if (method === "") {
1289
+ unresolved.push({
1290
+ kind: "connector-context",
1291
+ where,
1292
+ detail: `this \`http-request\` task's \`**Method:**\` is "${String(request.method)}", which is not one the activity offers (${[...HTTP_METHODS].join(", ")}), so the request has none and the task cannot run until one is set`
1293
+ });
1294
+ }
1295
+ const targetConnector = typeof connector?.connectorKey === "string" && connector.connectorKey !== "" ? connector.connectorKey : undefined;
1296
+ const connectionId = typeof connector?.connectionId === "string" ? connector.connectionId : undefined;
1297
+ const connectorMode = targetConnector !== undefined && connectionId !== undefined;
1298
+ if (targetConnector !== undefined && !connectorMode && (request.url ?? "") === "") {
1299
+ unresolved.push({
1300
+ kind: "connector-context",
1301
+ where,
1302
+ detail: "this `http-request` task runs as a manual request until a connection is set, and states no `**URL:**` to call"
1303
+ });
1304
+ }
1305
+ if (targetConnector === undefined && (request.url ?? "") === "") {
1306
+ unresolved.push({
1307
+ kind: "connector-context",
1308
+ where,
1309
+ detail: "this `http-request` task names no connector, so it calls `**URL:**` directly, and it states none"
1310
+ });
1311
+ }
1312
+ const body = {
1313
+ authentication: connectorMode ? "connector" : "manual",
1314
+ ...connectorMode && { targetConnector },
1315
+ ...method !== "" && { method }
1316
+ };
1317
+ if (request.url !== undefined && request.url !== "") {
1318
+ if (connectorMode)
1319
+ body.path = expand(request.url);
1320
+ else
1321
+ body.url = expand(request.url);
1322
+ }
1323
+ for (const [key, cell] of [
1324
+ ["headers", request.headers],
1325
+ ["query", request.query]
1326
+ ]) {
1327
+ const read = objectCell(cell);
1328
+ if (read.value !== undefined)
1329
+ body[key] = expandEntries(read.value);
1330
+ if (read.error !== undefined) {
1331
+ unresolved.push({
1332
+ kind: "connector-context",
1333
+ where,
1334
+ detail: `this \`http-request\` task's \`**${key === "headers" ? "Headers" : "Query"}:**\` ${read.error}, so it is left out; write it as a JSON object such as \`{"Name": "value"}\``
1335
+ });
1336
+ }
1337
+ }
1338
+ if (request.body !== undefined && request.body !== "") {
1339
+ const read = bodyValue(request.body);
1340
+ if (method !== "" && !BODY_METHODS.has(method)) {
1341
+ unresolved.push({
1342
+ kind: "connector-context",
1343
+ where,
1344
+ detail: `this \`http-request\` task's method is ${method}, which carries no body, so its \`**Body:**\` is left out; use POST, PUT or PATCH to send one`
1345
+ });
1346
+ } else if (read.value !== undefined) {
1347
+ if (!connectorMode)
1348
+ body.requestBodyType = "raw";
1349
+ body.body = expand(read.value);
1350
+ } else {
1351
+ unresolved.push({
1352
+ kind: "connector-context",
1353
+ where,
1354
+ detail: `this \`http-request\` task's \`**Body:**\` ${String(read.error)}, so it is left out; write a JSON literal such as \`{"name": "value"}\`, or an \`=\` expression`
1355
+ });
1356
+ }
1357
+ }
1358
+ let connectionValue;
1359
+ let resourceKey = null;
1360
+ let folderKey = null;
1361
+ const taskBindings = [];
1362
+ if (connectorMode && connectionId !== undefined) {
1363
+ const pair = connectionBindings(connectionId, context);
1364
+ connectionValue = `${BINDING_REFERENCE_PREFIX}${String(pair.connection.id)}`;
1365
+ resourceKey = connectionId;
1366
+ folderKey = `${BINDING_REFERENCE_PREFIX}${String(pair.folder.id)}`;
1367
+ taskBindings.push(pair.connection, pair.folder);
1368
+ unresolved.push({
1369
+ kind: "connector-context",
1370
+ where,
1371
+ detail: `the folder binding \`${String(pair.folder.id)}\` needs the connection's folder GUID as its \`default\`; the document names the connection and no folder key, so \`sdd resolve\` or a person supplies it`
1372
+ });
1373
+ } else {
1374
+ if (targetConnector !== undefined) {
1375
+ unresolved.push({
1376
+ kind: "connector-connection",
1377
+ where,
1378
+ detail: `this \`http-request\` task reuses \`${String(targetConnector)}\`'s authentication and names no \`**Connection ID:**\`, so nothing is bound and it runs as a manual request until a connection is set`
1379
+ });
1380
+ }
1381
+ connectionValue = `${BINDING_REFERENCE_PREFIX}${implicitBinding(context.bindings)}`;
1382
+ }
1383
+ return {
1384
+ serviceType: "Intsvc.UnifiedHttpRequest",
1385
+ inputs: [
1386
+ input("pathParameters", elementId),
1387
+ input("queryParameters", elementId),
1388
+ { ...input("body", elementId), body }
1389
+ ],
1390
+ outputs,
1391
+ context: [
1392
+ contextEntry("connectorKey", HTTP_CONNECTOR_KEY),
1393
+ contextEntry("connection", connectionValue),
1394
+ contextEntry("resourceKey", resourceKey),
1395
+ contextEntry("folderKey", folderKey),
1396
+ contextEntry("method", "POST"),
1397
+ contextEntry("path", "/http-request"),
1398
+ contextEntry("objectName", "http-request"),
1399
+ { name: "metadata", type: "json", body: structuredClone(http_request_metadata_default) },
1400
+ contextEntry("activityConfigurationVersion", "v2")
1401
+ ],
1402
+ bindings: taskBindings
1403
+ };
1404
+ };
1320
1405
 
1321
1406
  // ../case-tool/src/services/sdd-convert/emit.ts
1322
1407
  var isDeferredTask = (resolved, stageName, task) => {
@@ -1414,6 +1499,12 @@ var emitTask = (task, taskId, context) => {
1414
1499
  conditions: placeholderConditions.length
1415
1500
  };
1416
1501
  }
1502
+ for (const detail of task.unreadTables ?? [])
1503
+ unresolved.push({
1504
+ kind: "task-io-table",
1505
+ where: `${taskWhere}.data`,
1506
+ detail
1507
+ });
1417
1508
  const recipient = task.recipient;
1418
1509
  const recipientType = recipient === undefined ? undefined : RECIPIENT_TYPES.get(recipient.kind);
1419
1510
  if (recipient !== undefined && recipientType === undefined) {
@@ -1500,6 +1591,9 @@ var emitTask = (task, taskId, context) => {
1500
1591
  where: taskWhere,
1501
1592
  unresolved
1502
1593
  })),
1594
+ ...type === "business-rule" && {
1595
+ version: BUSINESS_RULE_TASK_VERSION
1596
+ },
1503
1597
  ...type === "action" && task.taskTitle !== undefined && {
1504
1598
  taskTitle: task.taskTitle
1505
1599
  },
@@ -1514,6 +1608,16 @@ var emitTask = (task, taskId, context) => {
1514
1608
  ...timer
1515
1609
  }
1516
1610
  };
1611
+ if (type === "http-request") {
1612
+ emitted.data = httpRequestData(task.http, task.connector, emitted.data.outputs ?? [], {
1613
+ elementId,
1614
+ where: taskWhere,
1615
+ bindings,
1616
+ connections,
1617
+ unresolved,
1618
+ outputs: outputIds
1619
+ });
1620
+ }
1517
1621
  return { task: emitted, conditions };
1518
1622
  };
1519
1623
  var SHARES_WITH_SIBLING = "parallel-after-predecessor";
@@ -1581,7 +1685,21 @@ var emitStages = (document, model, index, unresolved) => {
1581
1685
  } = index;
1582
1686
  let taskCount = 0;
1583
1687
  let conditionCount = 0;
1584
- for (const { stage, stageId, tasks: plannedTasks, stageSla } of planned) {
1688
+ for (const {
1689
+ stage,
1690
+ stageId,
1691
+ tasks: plannedTasks,
1692
+ slaRules: stageRules
1693
+ } of planned) {
1694
+ const hasDefaultRule = stageRules.some((rule) => /^=js:\s*true\s*$/.test(String(rule.expression ?? "")));
1695
+ if (!hasDefaultRule && (stage.hasSla === true || /\d/.test(String(stage.slaDuration ?? "")))) {
1696
+ const stated = String(stage.slaDuration ?? "").trim();
1697
+ unresolved.push({
1698
+ kind: "case-sla",
1699
+ where: `nodes[${stage.name}].data.slaRules`,
1700
+ detail: `this stage declares an SLA and no rule could be emitted from it: the duration cell is ${stated === "" ? "absent, so the escalation rows have no duration to be a percentage of" : `\`${stated}\`, which gives no count and a unit the case schema names (min, h, d, w, m, and the spellings that map to them)`}. The stage's SLA title, duration, escalation rows and any conditional rules are all dropped together — without a default the engine would run the last conditional rule for every case — so authoring the duration is what carries them`
1701
+ });
1702
+ }
1585
1703
  const where = `nodes[${stage.name}]`;
1586
1704
  const tasks = [];
1587
1705
  const declared = [];
@@ -1652,7 +1770,7 @@ var emitStages = (document, model, index, unresolved) => {
1652
1770
  parentElement: { id: "root", type: "case-management:root" },
1653
1771
  isInvalidDropTarget: false,
1654
1772
  isPendingParent: false,
1655
- ...stageSla !== undefined && { slaRules: [stageSla] },
1773
+ ...stageRules.length > 0 && { slaRules: stageRules },
1656
1774
  tasks: sets,
1657
1775
  entryConditions,
1658
1776
  exitConditions
@@ -1708,13 +1826,6 @@ var planCase = (model, unresolved) => {
1708
1826
  const title = indexKey(String(stageSla.displayName));
1709
1827
  slaIds.set(title, entry);
1710
1828
  slaIds.set(scopedSlaKey(stageId, title), entry);
1711
- } else if (stage.hasSla === true || /\d/.test(String(stage.slaDuration ?? ""))) {
1712
- const stated = String(stage.slaDuration ?? "").trim();
1713
- unresolved.push({
1714
- kind: "case-sla",
1715
- where: `nodes[${stage.name}].data.slaRules`,
1716
- detail: `this stage declares an SLA and no rule could be emitted from it: the duration cell is ${stated === "" ? "absent, so the escalation rows have no duration to be a percentage of" : `\`${stated}\`, which gives no count and a unit the case schema names (min, h, d, w, m, and the spellings that map to them)`}. The stage's SLA title, duration and escalation rows are all dropped together, so authoring the duration is what carries them`
1717
- });
1718
1829
  }
1719
1830
  const spelling = stageSpellings(stage.name, position + 1);
1720
1831
  for (const name of spelling.names) {
@@ -1732,6 +1843,7 @@ var planCase = (model, unresolved) => {
1732
1843
  const tasks = stage.tasks.map((task) => {
1733
1844
  const taskId = prefixedId("t", 8);
1734
1845
  const taskName = taskNameOf(task);
1846
+ const taskType = typeof task.type === "string" ? task.type : undefined;
1735
1847
  tasksByExactName.push([taskName, taskId]);
1736
1848
  stagesByTaskName.set(taskName, [
1737
1849
  ...stagesByTaskName.get(taskName) ?? [],
@@ -1771,8 +1883,45 @@ var planCase = (model, unresolved) => {
1771
1883
  extractByField.set(field, variable);
1772
1884
  }
1773
1885
  }
1774
- for (const row of declaredOutputs(model, stage.name, position + 1, task)) {
1775
- const consumerType = outputTypeFor(model, everySpelling(stage.name, position + 1), taskName, row);
1886
+ const httpOutputs = taskType === "http-request" ? httpRequestOutputs(buildElementId(stageId, taskId), takenOutputIds, new Set(model.variables)) : [];
1887
+ const httpDeclared = taskType === "http-request" ? declaredOutputs(model, stage.name, position + 1, task) : [];
1888
+ for (const output of httpOutputs) {
1889
+ const name = String(output.name).toLowerCase();
1890
+ const spellings = [
1891
+ ...httpDeclared.flatMap(({ row, aliases }) => [row, ...aliases].filter((spelling2) => httpRequestOutputName(spelling2) === name)),
1892
+ ...[...extractByField.keys()].filter((field) => httpRequestOutputName(field) === name)
1893
+ ];
1894
+ const variable = [...extractByField].find(([field]) => httpRequestOutputName(field) === name)?.[1];
1895
+ if (variable !== undefined) {
1896
+ output.var = variable;
1897
+ output.value = variable;
1898
+ output.target = `=${String(output.id)}`;
1899
+ output.originalVar = output.id;
1900
+ }
1901
+ own.set(String(output.name), output);
1902
+ indexOutput(new Set([
1903
+ String(output.name),
1904
+ ...spellings,
1905
+ ...variable === undefined ? [] : [variable]
1906
+ ]), output);
1907
+ }
1908
+ if (taskType === "http-request") {
1909
+ const offered = httpOutputs.map((output) => String(output.name));
1910
+ const authored = new Set([
1911
+ ...extractByField.values(),
1912
+ ...(task.customRows ?? []).map((entry) => String(entry.variable ?? ""))
1913
+ ].filter((name) => name !== "").map(indexKey));
1914
+ const unnamed = new Set(httpDeclared.flatMap(({ row, aliases }) => [row, ...aliases]).filter((spelling2) => httpRequestOutputName(spelling2) === undefined && !authored.has(indexKey(spelling2))));
1915
+ for (const row of unnamed) {
1916
+ unresolved.push({
1917
+ kind: "output-type",
1918
+ where: `nodes[${stage.name}].data.tasks[${taskName}].outputs[${row}]`,
1919
+ detail: `an \`http-request\` task has the activity's own outputs only (${offered.join(", ")}), so the declared output "${row}" is not written; read the field it names from \`body\` instead`
1920
+ });
1921
+ }
1922
+ }
1923
+ for (const { row, aliases } of taskType === "http-request" ? [] : declaredOutputs(model, stage.name, position + 1, task)) {
1924
+ const consumerType = [row, ...aliases].map((spelling2) => outputTypeFor(model, everySpelling(stage.name, position + 1), taskName, spelling2)).find((found) => found !== undefined);
1776
1925
  const variable = extractByField.get(row);
1777
1926
  const type = consumerType ?? (variable === undefined ? undefined : variableOutputType(model, variable));
1778
1927
  if (type === undefined) {
@@ -1782,10 +1931,11 @@ var planCase = (model, unresolved) => {
1782
1931
  detail: "no row in this SDD types this output; its shape comes from the resolved resource's own schema, which needs a tenant — `uip maestro case tasks describe --type <type> --id <id>` returns it, and `uip maestro case splice <plan> --task-id <taskId> --described <that result>` writes it in"
1783
1932
  });
1784
1933
  }
1785
- const output = variable === undefined ? outputFor(row, buildElementId(stageId, taskId), takenOutputIds, type) : extractOutputFor({ field: row, variable }, buildElementId(stageId, taskId), takenOutputIds, type);
1934
+ const output = variable === undefined ? outputFor(row, buildElementId(stageId, taskId), takenOutputIds, type, taskType) : extractOutputFor({ field: row, variable }, buildElementId(stageId, taskId), takenOutputIds, type, taskType);
1786
1935
  own.set(row, output);
1787
1936
  indexOutput(new Set([
1788
1937
  row,
1938
+ ...aliases,
1789
1939
  String(output.name),
1790
1940
  ...variable === undefined ? [] : [variable]
1791
1941
  ]), output);
@@ -1809,7 +1959,7 @@ var planCase = (model, unresolved) => {
1809
1959
  outputsByTask.set(taskId, own);
1810
1960
  return { task, taskId };
1811
1961
  });
1812
- return { stage, stageId, tasks, stageSla };
1962
+ return { stage, stageId, tasks, stageSla, slaRules: [] };
1813
1963
  });
1814
1964
  const tasksPerName = countByName(tasksByExactName);
1815
1965
  reportRepeatedTaskNames(stagesByTaskName, unresolved);
@@ -1855,8 +2005,98 @@ var planCase = (model, unresolved) => {
1855
2005
  bindingsByKey,
1856
2006
  connections,
1857
2007
  slaIds,
1858
- ...caseSla !== undefined && { caseSla }
2008
+ ...caseSla !== undefined && { caseSla },
2009
+ caseSlaRules: []
2010
+ };
2011
+ };
2012
+
2013
+ // ../case-tool/src/services/sdd-convert/sla-rules.ts
2014
+ var statesSla = (flag, duration) => flag === true || /\d/.test(String(duration ?? ""));
2015
+ var named = (rule, at, title) => {
2016
+ const displayName = typeof rule.displayName === "string" ? rule.displayName : `${title} rule ${at + 1}`;
2017
+ const escalations = Array.isArray(rule.escalationRule) ? rule.escalationRule : undefined;
2018
+ return {
2019
+ ...rule,
2020
+ displayName,
2021
+ ...escalations !== undefined && {
2022
+ escalationRule: escalations.map((one) => ({
2023
+ ...one,
2024
+ displayName: `${String(one.displayName)} (${displayName})`
2025
+ }))
2026
+ }
2027
+ };
2028
+ };
2029
+ var register = (rule, target, slaIds, unresolved) => {
2030
+ if (typeof rule.displayName !== "string")
2031
+ return true;
2032
+ const key = indexKey(rule.displayName);
2033
+ const scoped = scopedSlaKey(target.scope, key);
2034
+ if (slaIds.has(scoped)) {
2035
+ unresolved.push({
2036
+ kind: "case-sla",
2037
+ where: `${target.where}[${rule.displayName}]`,
2038
+ detail: `two SLA rules in ${target.scope === "root" ? "the case" : "this stage"} are named "${rule.displayName}", and the runtime tells an SLA's status changes apart by name, so this conditional rule is left out; the document has to name each rule once`
2039
+ });
2040
+ return false;
2041
+ }
2042
+ const entry = { id: String(rule.id), stageId: target.scope };
2043
+ slaIds.set(scoped, entry);
2044
+ if (!slaIds.has(key))
2045
+ slaIds.set(key, entry);
2046
+ return true;
2047
+ };
2048
+ var targetSlaRules = (target, shared) => {
2049
+ const { outputs, slaIds, unresolved } = shared;
2050
+ const { fallback } = target;
2051
+ const built = conditionalSlaRules(target.conditional, target.where, unresolved, (expression, where) => expandXrefs(expression, { outputs, where, unresolved }), fallback !== undefined, fallback === undefined ? undefined : `${String(fallback.count)} ${String(fallback.unit)}`, (duration, sink) => slaRuleFor(target.title, duration, target.escalationRows, target.escalationWhere, sink, target.asked), !target.declared);
2052
+ const tableDefault = built.at(-1);
2053
+ const last = fallback ?? (tableDefault === undefined || typeof tableDefault.displayName === "string" ? tableDefault : { ...tableDefault, displayName: target.title });
2054
+ const conditional = (fallback === undefined ? built.slice(0, -1) : built).map((rule, at) => named(rule, at, target.title));
2055
+ if (last === undefined)
2056
+ return [];
2057
+ if (fallback === undefined)
2058
+ register(last, target, slaIds, unresolved);
2059
+ return [
2060
+ ...conditional.filter((rule) => register(rule, target, slaIds, unresolved)),
2061
+ last
2062
+ ];
2063
+ };
2064
+ var planSlaRules = (index, model, unresolved) => {
2065
+ const shared = {
2066
+ outputs: index.outputIds,
2067
+ slaIds: index.slaIds,
2068
+ unresolved
1859
2069
  };
2070
+ for (const one of index.planned) {
2071
+ one.slaRules = targetSlaRules({
2072
+ scope: one.stageId,
2073
+ where: `nodes[${one.stage.name}].data.slaRules`,
2074
+ conditional: one.stage.conditionalSlas ?? [],
2075
+ fallback: one.stageSla,
2076
+ title: String(one.stage.slaTitle ?? `${one.stage.name} SLA`),
2077
+ escalationRows: one.stage.slaEscalationRows ?? [],
2078
+ escalationWhere: `nodes[${one.stage.name}].data.sla`,
2079
+ asked: {
2080
+ table: one.stage.slaEscalations,
2081
+ map: one.stage.slaResponses
2082
+ },
2083
+ declared: statesSla(one.stage.hasSla, one.stage.slaDuration)
2084
+ }, shared);
2085
+ }
2086
+ index.caseSlaRules = targetSlaRules({
2087
+ scope: "root",
2088
+ where: "metadata.slaRules",
2089
+ conditional: model.caseConditionalSlas ?? [],
2090
+ fallback: index.caseSla,
2091
+ title: model.caseSlaTitle ?? CASE_SLA_PROPERTY,
2092
+ escalationRows: model.caseSlaEscalationRows,
2093
+ escalationWhere: "metadata.slaRules",
2094
+ asked: {
2095
+ table: model.caseSlaEscalations,
2096
+ map: model.caseSlaResponses
2097
+ },
2098
+ declared: statesSla(model.caseSla, model.caseSlaDuration)
2099
+ }, shared);
1860
2100
  };
1861
2101
 
1862
2102
  // ../case-tool/src/services/sdd-convert/rule-names.ts
@@ -1943,9 +2183,12 @@ var convertSddToCasePlan = (model, options) => {
1943
2183
  }
1944
2184
  }
1945
2185
  markDeferredOutputs(index.outputIds, placeholderOutputs);
2186
+ planSlaRules(index, model, unresolved);
1946
2187
  const { taskCount, conditionCount } = emitStages(document, model, index, unresolved);
1947
2188
  const caseLevel = finishCaseDocument(document, model, index, unresolved);
1948
2189
  uniquifyConditionNames(document);
2190
+ designerShapeConnectorTasks(document);
2191
+ emitCanvasNotes(document, model.canvasNotes);
1949
2192
  return {
1950
2193
  document,
1951
2194
  derived: {
@@ -1961,4 +2204,4 @@ export {
1961
2204
  convertSddToCasePlan
1962
2205
  };
1963
2206
 
1964
- //# debugId=4DDB485B100DF20F64756E2164756E21
2207
+ //# debugId=FCE7E06EB7608CD364756E2164756E21