@koda-sl/baker-cli 0.449.0 → 0.450.0

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 (379) hide show
  1. package/README.md +5 -2
  2. package/dist/{account-AL2ZDSR7.js → account-2SVI5OK7.js} +4 -4
  3. package/dist/{accounts-HAFCLSR5.js → accounts-2XAOZX3U.js} +3 -3
  4. package/dist/{accounts-O5MFO3QQ.js → accounts-U4BGY3QU.js} +5 -5
  5. package/dist/{actions-P35MEMGN.js → actions-6EJU7CAQ.js} +18 -18
  6. package/dist/{add-6DTC6X5G.js → add-IPGEYQQG.js} +2 -2
  7. package/dist/{add-5GAN6CVO.js → add-P7CCVY2J.js} +27 -5
  8. package/dist/add-P7CCVY2J.js.map +1 -0
  9. package/dist/{ads-C47NA2HH.js → ads-6MXVIV62.js} +3 -3
  10. package/dist/{advertisers-AE75CGVE.js → advertisers-JG4DZ6SB.js} +3 -3
  11. package/dist/{analytics-FKCXIMPO.js → analytics-IMYVNQIX.js} +6 -6
  12. package/dist/{analytics-FPWQQGRM.js → analytics-RNEUAKC4.js} +3 -3
  13. package/dist/{assign-ABN2AQ4J.js → assign-46TXQRT5.js} +3 -3
  14. package/dist/{audience-size-GNBJY35X.js → audience-size-5TNQO3IL.js} +3 -3
  15. package/dist/{audit-3VS63TBW.js → audit-XRE7XH3Q.js} +3 -3
  16. package/dist/{autocomplete-VS3XG3B7.js → autocomplete-2ZWSQ6QQ.js} +3 -3
  17. package/dist/{avatars-EKCKHCC3.js → avatars-M6NSD3KS.js} +4 -4
  18. package/dist/{bid-pricing-Q72B65AY.js → bid-pricing-OIVPZCWW.js} +3 -3
  19. package/dist/{brand-C6PFGGQN.js → brand-YDNX7LYQ.js} +2 -2
  20. package/dist/{brief-UO52ZHFI.js → brief-EK6ULGXD.js} +7 -7
  21. package/dist/{campaign-groups-KFFYQPU3.js → campaign-groups-TAP6LK6F.js} +8 -8
  22. package/dist/{campaign-writes-FHOS5XZY.js → campaign-writes-4SWPBZE6.js} +3 -3
  23. package/dist/{campaigns-KZYZTXDS.js → campaigns-AQAJN23T.js} +5 -5
  24. package/dist/{campaigns-2NHWBF5C.js → campaigns-ROMLENHI.js} +11 -11
  25. package/dist/{canvas-DPCBGW7K.js → canvas-XYCDLDRS.js} +12 -12
  26. package/dist/{capabilities-DJFTRJKS.js → capabilities-GGPTIAFO.js} +3 -3
  27. package/dist/{chats-D2CSDX5Q.js → chats-G343BSVB.js} +3 -3
  28. package/dist/{chunk-OZRUJVIQ.js → chunk-355DHOHD.js} +2 -2
  29. package/dist/{chunk-CSYSX4D2.js → chunk-3URK7DAA.js} +2 -2
  30. package/dist/{chunk-A4LOJ2VD.js → chunk-3YOFT3AP.js} +2 -2
  31. package/dist/{chunk-647RO73Q.js → chunk-542XAHNT.js} +2 -2
  32. package/dist/{chunk-5ZDLTE5T.js → chunk-64WGDUXH.js} +3 -3
  33. package/dist/{chunk-HBTF25YG.js → chunk-7WD2RW2R.js} +2 -2
  34. package/dist/{chunk-QRP3PXWN.js → chunk-B6GITCGN.js} +2 -2
  35. package/dist/{chunk-XF4JUKVF.js → chunk-BAUSWB7O.js} +30 -3
  36. package/dist/chunk-BAUSWB7O.js.map +1 -0
  37. package/dist/{chunk-IBURXTL4.js → chunk-D5XAVXUZ.js} +5 -5
  38. package/dist/{chunk-3HJLHTWP.js → chunk-EIVYFZ4N.js} +12 -3
  39. package/dist/{chunk-3HJLHTWP.js.map → chunk-EIVYFZ4N.js.map} +1 -1
  40. package/dist/{chunk-JQJDXPCO.js → chunk-F4F3PLN3.js} +2 -2
  41. package/dist/{chunk-NPY4QUMQ.js → chunk-LZSXZB2F.js} +2 -2
  42. package/dist/{chunk-3IBYKLXR.js → chunk-MURPCCLG.js} +2 -2
  43. package/dist/{chunk-2QHODRR6.js → chunk-NEXCBTBZ.js} +2 -2
  44. package/dist/{chunk-AEOSAVVL.js → chunk-NR2TDASR.js} +2 -2
  45. package/dist/{chunk-KHRXPQID.js → chunk-OVT676K6.js} +2 -2
  46. package/dist/{chunk-FD27ZDVP.js → chunk-P2RE52V7.js} +2 -2
  47. package/dist/{chunk-Z2EOC6PL.js → chunk-P6ICBEE4.js} +4 -4
  48. package/dist/{chunk-TT5R35PJ.js → chunk-PLGIETFZ.js} +3 -3
  49. package/dist/{chunk-YRQYA2LR.js → chunk-Q4JYX424.js} +63 -5
  50. package/dist/chunk-Q4JYX424.js.map +1 -0
  51. package/dist/{chunk-4AUMTNVB.js → chunk-QJNTI36W.js} +3 -3
  52. package/dist/{chunk-5Y5UAJWD.js → chunk-TD6GIMV6.js} +3 -3
  53. package/dist/{chunk-ZEYEWPK6.js → chunk-TESII3FM.js} +2 -2
  54. package/dist/{chunk-GBMP4F45.js → chunk-TXI5OWCF.js} +5 -5
  55. package/dist/{chunk-IR6D7K4H.js → chunk-UC7VFFXR.js} +2 -2
  56. package/dist/{chunk-7YCRFMXF.js → chunk-UNI5AASR.js} +2 -2
  57. package/dist/{chunk-3G3ZDLMI.js → chunk-UX5HYEN3.js} +2 -2
  58. package/dist/{chunk-MXYBTMKB.js → chunk-V4RGDJAN.js} +2 -2
  59. package/dist/{chunk-SHL7LOC3.js → chunk-W2TJIZS2.js} +3 -3
  60. package/dist/{chunk-4BQXAE7Z.js → chunk-W5VGWEAG.js} +2 -2
  61. package/dist/{chunk-S77PZVYM.js → chunk-WDZOVF6P.js} +3 -3
  62. package/dist/{chunk-Y6O7EWYY.js → chunk-YCOP4FGJ.js} +2 -2
  63. package/dist/{chunk-DWHIOO7E.js → chunk-YT7SSJFR.js} +163 -12
  64. package/dist/chunk-YT7SSJFR.js.map +1 -0
  65. package/dist/{claim-FZ5OQLMU.js → claim-INJHV4FM.js} +3 -3
  66. package/dist/cli.js +27 -27
  67. package/dist/{companies-DNI634RC.js → companies-3REQZWKU.js} +3 -3
  68. package/dist/{complete-2FZMGJV5.js → complete-DX2DAAEZ.js} +3 -3
  69. package/dist/{connect-QCOGEPP4.js → connect-O4OGKMAK.js} +12 -6
  70. package/dist/{conversation-6IOGV7B7.js → conversation-6A2X5W64.js} +3 -3
  71. package/dist/{conversions-4SRZPBBX.js → conversions-PT6UDIX3.js} +7 -7
  72. package/dist/{create-VXM34ZWH.js → create-BR3Q4A4C.js} +3 -3
  73. package/dist/{create-BJNMO6HT.js → create-EOLNJGAX.js} +2 -2
  74. package/dist/{create-FX4OJ2XF.js → create-I2UB7FWX.js} +3 -3
  75. package/dist/{create-RM7HV77Y.js → create-S47CLYXJ.js} +3 -3
  76. package/dist/{creatives-SJTJU6VT.js → creatives-D3NXWVUF.js} +10 -10
  77. package/dist/{creatives-JSWBFQ5R.js → creatives-FBH4DKSX.js} +8 -8
  78. package/dist/{credentials-VOZTILFO.js → credentials-4BPEXA3E.js} +3 -3
  79. package/dist/{critique-65W63MFZ.js → critique-3XJG44NG.js} +5 -5
  80. package/dist/{critique-ZS4ON3SU.js → critique-LU27A765.js} +3 -3
  81. package/dist/{crm-52ROSWH5.js → crm-GOE6ZO5N.js} +4 -4
  82. package/dist/{crm-R5IXIFIV.js → crm-NEI6E2T2.js} +4 -4
  83. package/dist/{customers-4AWBFDUF.js → customers-USB6VCMU.js} +5 -5
  84. package/dist/{delete-M2GDLPYN.js → delete-67XFFHUY.js} +2 -2
  85. package/dist/{delete-HGHXY24R.js → delete-BT7I3EMN.js} +3 -3
  86. package/dist/{delete-AIGE4Y4H.js → delete-ONE22VRX.js} +3 -3
  87. package/dist/{demographics-NTWB2IMG.js → demographics-R4LCQGDJ.js} +3 -3
  88. package/dist/{discard-2WWQG6OU.js → discard-BOPTV4V5.js} +3 -3
  89. package/dist/{domain-Y2LT6JLT.js → domain-B54ILSOO.js} +3 -3
  90. package/dist/{draft-SLHAKJ2A.js → draft-DWSBVJUF.js} +3 -3
  91. package/dist/{draft-FJ7WHIXW.js → draft-J4SGNGGW.js} +3 -3
  92. package/dist/{draft-EJXNNJ3Y.js → draft-ROERDGSK.js} +4 -4
  93. package/dist/{facets-U7AQC4H6.js → facets-FUTIWQXK.js} +3 -3
  94. package/dist/{feedback-XNJQ63DS.js → feedback-C6CBUUDA.js} +2 -2
  95. package/dist/{feedback-record-FDLMWMDG.js → feedback-record-FM5MW2YV.js} +7 -7
  96. package/dist/{fetch-W7NULDEO.js → fetch-D7JPGEYZ.js} +3 -3
  97. package/dist/{flows-KABCBS3S.js → flows-L6BF3TDT.js} +20 -17
  98. package/dist/flows-L6BF3TDT.js.map +1 -0
  99. package/dist/{fonts-EMMX3KII.js → fonts-THAAZY7Z.js} +5 -5
  100. package/dist/{forecast-GNODEIIC.js → forecast-RYYVMNYT.js} +3 -3
  101. package/dist/{funnel-AAX27NH4.js → funnel-SK7WDPRS.js} +4 -4
  102. package/dist/{get-RTVUZM6E.js → get-3STPGBX3.js} +3 -3
  103. package/dist/{get-QEYJRLV3.js → get-YBIF3H52.js} +6 -4
  104. package/dist/get-YBIF3H52.js.map +1 -0
  105. package/dist/{google-ads-OK6IG3UV.js → google-ads-YD7LYWGY.js} +3 -3
  106. package/dist/{history-PQUJKK26.js → history-RWWBR4TN.js} +3 -3
  107. package/dist/{hubspot-Y77VLY6Y.js → hubspot-E65QNOI4.js} +7 -7
  108. package/dist/{ideas-MIDU7YOA.js → ideas-ZB7O7T5I.js} +2 -2
  109. package/dist/{images-S254MS6O.js → images-U4DKZQTE.js} +4 -4
  110. package/dist/{ingest-YV2NLDBE.js → ingest-MZXGMFA5.js} +3 -3
  111. package/dist/{ingest-J4I3HKM3.js → ingest-ROEMTZMG.js} +2 -2
  112. package/dist/{inspect-Q5NHBBHX.js → inspect-MCMUJPXU.js} +3 -3
  113. package/dist/{keyword-metrics-PDY4ZXSP.js → keyword-metrics-MLFTDAS4.js} +3 -3
  114. package/dist/{keywords-for-site-GALSCV77.js → keywords-for-site-4WUBJNTI.js} +3 -3
  115. package/dist/{landing-CJYGWCK4.js → landing-5GDWJN4C.js} +2 -2
  116. package/dist/{leads-PHKG6CP3.js → leads-LDOOJI5K.js} +3 -3
  117. package/dist/{learn-3VO6DXUX.js → learn-MMIGRLCP.js} +4 -4
  118. package/dist/{line-item-writes-E6MZPIZZ.js → line-item-writes-LFDWJBQG.js} +3 -3
  119. package/dist/{line-items-7ZGIKEF2.js → line-items-T3EVXB4M.js} +5 -5
  120. package/dist/{link-QYAW6A2W.js → link-M5ESAD5Y.js} +3 -3
  121. package/dist/{linkedin-FFSDSGGS.js → linkedin-4FNKZNIR.js} +26 -26
  122. package/dist/{list-SAV3LQHY.js → list-EF6QI4JT.js} +3 -3
  123. package/dist/{list-5IC6KIKO.js → list-FNW254C3.js} +3 -3
  124. package/dist/{list-NVQC5SNY.js → list-XWUTPJRQ.js} +2 -2
  125. package/dist/{log-XZPVOALD.js → log-5MESJJLM.js} +3 -3
  126. package/dist/{make-LCNP76OF.js → make-ATEHKECL.js} +10 -10
  127. package/dist/{map-4J5WIWIG.js → map-5NONUYFP.js} +4 -4
  128. package/dist/{mcp-XXD7ZQCP.js → mcp-CGITBQQA.js} +2 -2
  129. package/dist/{media-sources-O6ZRUA3N.js → media-sources-6TFUGPE2.js} +2 -2
  130. package/dist/{members-D5ZYLS4Y.js → members-R2GQVSVA.js} +3 -3
  131. package/dist/{normalize-PCNC6E2N.js → normalize-L6WBNGQA.js} +6 -3
  132. package/dist/{normalize-PCNC6E2N.js.map → normalize-L6WBNGQA.js.map} +1 -1
  133. package/dist/{options-MQ65VEVD.js → options-YT2ZGB2Z.js} +6 -6
  134. package/dist/{performance-6QW2KEEQ.js → performance-52IILAFE.js} +4 -4
  135. package/dist/{promoted-tweet-writes-JPLHY3GM.js → promoted-tweet-writes-QVIKWEIZ.js} +3 -3
  136. package/dist/{promoted-tweets-SURKMHFI.js → promoted-tweets-2AALRV5O.js} +3 -3
  137. package/dist/{publish-HCQ6MXLB.js → publish-XFLOZAOQ.js} +3 -3
  138. package/dist/{reddit-GIP3ADMS.js → reddit-HFBAGWNP.js} +4 -4
  139. package/dist/{refresh-UXQSLCR3.js → refresh-INKIU3QV.js} +2 -2
  140. package/dist/{release-5KVLXNP6.js → release-C2MFXAPJ.js} +3 -3
  141. package/dist/{remove-6FIVKCJI.js → remove-JWSVNUJ4.js} +2 -2
  142. package/dist/{reopen-YM5LNOLB.js → reopen-3GM4OSLZ.js} +3 -3
  143. package/dist/{rerun-CET74VPF.js → rerun-FCZRSS3H.js} +10 -10
  144. package/dist/{research-EY7C7JJY.js → research-EBQ5KWOS.js} +10 -10
  145. package/dist/{research-YOGE7GT2.js → research-HUMDT7T4.js} +2 -2
  146. package/dist/{reset-OLVB6AE6.js → reset-3BEGDSBW.js} +2 -2
  147. package/dist/{reset-C4UHQ3EU.js → reset-TVDYP2VK.js} +2 -2
  148. package/dist/{resolve-XYH2GDAE.js → resolve-OQKUGWEI.js} +3 -3
  149. package/dist/{retry-726GKI6V.js → retry-EJBF6GBJ.js} +2 -2
  150. package/dist/{retry-7EELDEQP.js → retry-GUHOWYO2.js} +2 -2
  151. package/dist/{run-P4KR2MXC.js → run-3D6QZC6L.js} +3 -3
  152. package/dist/{run-XQ7EM3JT.js → run-CUUAWKAZ.js} +10 -10
  153. package/dist/{scaffold-ad-U2KSHKBC.js → scaffold-ad-AYKWASWY.js} +8 -8
  154. package/dist/{scaffold-static-ad-63LQKUSO.js → scaffold-static-ad-IEZEQW4N.js} +12 -12
  155. package/dist/{scaffold-video-MUS6LHJQ.js → scaffold-video-YMN7AJS4.js} +7 -7
  156. package/dist/{schedule-RDK4GEPI.js → schedule-QVYVMRIY.js} +2 -2
  157. package/dist/{scheduled-agents-6U44QE76.js → scheduled-agents-CNIGCLAP.js} +11 -11
  158. package/dist/{schema-CHJDC7GQ.js → schema-7UUVQ4RH.js} +7 -4
  159. package/dist/{schema-CHJDC7GQ.js.map → schema-7UUVQ4RH.js.map} +1 -1
  160. package/dist/{search-PMJRU3C4.js → search-XUGIKFW3.js} +2 -2
  161. package/dist/{select-4Z7BW5RH.js → select-LSS7ZJSB.js} +7 -7
  162. package/dist/{set-prompt-OB2V3XJP.js → set-prompt-P3WR2TZX.js} +5 -5
  163. package/dist/{setup-links-REPREN3C.js → setup-links-4VILWID2.js} +3 -3
  164. package/dist/{site-WFSWIA3S.js → site-TLJVSZQF.js} +4 -4
  165. package/dist/{sources-YBQ6KPFM.js → sources-4MKBWFWG.js} +6 -6
  166. package/dist/{sources-AMI2AWKZ.js → sources-7FCRKPXJ.js} +6 -6
  167. package/dist/{stale-DAYXOY3Z.js → stale-7VJECYYJ.js} +6 -6
  168. package/dist/{status-7F2KHFGA.js → status-WZKAKUG4.js} +3 -3
  169. package/dist/{sync-GWTLKZTU.js → sync-DEWLEMTT.js} +2 -2
  170. package/dist/{sync-definition-ILS2B2BJ.js → sync-definition-ARIX5XWM.js} +7 -7
  171. package/dist/{tags-3WPW6PTV.js → tags-ANV54THE.js} +4 -4
  172. package/dist/{tags-FJIBBBRG.js → tags-IWN3QPK5.js} +3 -3
  173. package/dist/{tags-ABHSX6M5.js → tags-O76MDVID.js} +3 -3
  174. package/dist/{tags-6342FQEB.js → tags-RBB4TU7U.js} +3 -3
  175. package/dist/{tags-KFYLZLB3.js → tags-V5FR3DYU.js} +2 -2
  176. package/dist/{targeting-criteria-NR47AF5C.js → targeting-criteria-6IOXVE4K.js} +3 -3
  177. package/dist/{targets-L56KOVQE.js → targets-FFLV6OMF.js} +3 -3
  178. package/dist/{templates-B6XGDYUF.js → templates-Y3ZLB7MK.js} +3 -3
  179. package/dist/{testimonials-CVC4YIXO.js → testimonials-FCYS4NKB.js} +6 -6
  180. package/dist/{top-companies-45X3DT7Z.js → top-companies-BL4F7OPI.js} +3 -3
  181. package/dist/{translate-TA5KQIU7.js → translate-GGONJG62.js} +10 -10
  182. package/dist/{triggers-22EMIVFD.js → triggers-6Q3YRHZS.js} +3 -3
  183. package/dist/{unlink-65KUN6ID.js → unlink-WDSOVBFL.js} +3 -3
  184. package/dist/{unstage-2E3I5SWF.js → unstage-JYJIKPB5.js} +3 -3
  185. package/dist/{update-2S7CSEAW.js → update-CWZVKOUB.js} +3 -3
  186. package/dist/{update-7NCOTAQZ.js → update-FUYXN33G.js} +3 -3
  187. package/dist/{update-KREBPGBH.js → update-IXSCDBM4.js} +3 -3
  188. package/dist/{update-D6DJC6T7.js → update-WSG6RVFX.js} +2 -2
  189. package/dist/{upload-O6NHRPS7.js → upload-CKV2XS3G.js} +3 -3
  190. package/dist/{url-params-3EFGVTZZ.js → url-params-UJSNI4XC.js} +3 -3
  191. package/dist/{validate-LDBAAXQO.js → validate-FSFELDFZ.js} +5 -5
  192. package/dist/{videos-YSXYGTBM.js → videos-FAKURRTG.js} +5 -5
  193. package/dist/{web-IGIGVEKS.js → web-RRGHSAFY.js} +3 -3
  194. package/dist/{winning-ads-ASH5DSV3.js → winning-ads-HRSCX6O2.js} +2 -2
  195. package/dist/{write-commands-5C7FUOVN.js → write-commands-TAG7DQKT.js} +4 -4
  196. package/dist/{x-BFSKFCZD.js → x-FBWHL3PL.js} +6 -6
  197. package/package.json +1 -1
  198. package/dist/add-5GAN6CVO.js.map +0 -1
  199. package/dist/chunk-DWHIOO7E.js.map +0 -1
  200. package/dist/chunk-XF4JUKVF.js.map +0 -1
  201. package/dist/chunk-YRQYA2LR.js.map +0 -1
  202. package/dist/flows-KABCBS3S.js.map +0 -1
  203. package/dist/get-QEYJRLV3.js.map +0 -1
  204. /package/dist/{account-AL2ZDSR7.js.map → account-2SVI5OK7.js.map} +0 -0
  205. /package/dist/{accounts-HAFCLSR5.js.map → accounts-2XAOZX3U.js.map} +0 -0
  206. /package/dist/{accounts-O5MFO3QQ.js.map → accounts-U4BGY3QU.js.map} +0 -0
  207. /package/dist/{actions-P35MEMGN.js.map → actions-6EJU7CAQ.js.map} +0 -0
  208. /package/dist/{add-6DTC6X5G.js.map → add-IPGEYQQG.js.map} +0 -0
  209. /package/dist/{ads-C47NA2HH.js.map → ads-6MXVIV62.js.map} +0 -0
  210. /package/dist/{advertisers-AE75CGVE.js.map → advertisers-JG4DZ6SB.js.map} +0 -0
  211. /package/dist/{analytics-FKCXIMPO.js.map → analytics-IMYVNQIX.js.map} +0 -0
  212. /package/dist/{analytics-FPWQQGRM.js.map → analytics-RNEUAKC4.js.map} +0 -0
  213. /package/dist/{assign-ABN2AQ4J.js.map → assign-46TXQRT5.js.map} +0 -0
  214. /package/dist/{audience-size-GNBJY35X.js.map → audience-size-5TNQO3IL.js.map} +0 -0
  215. /package/dist/{audit-3VS63TBW.js.map → audit-XRE7XH3Q.js.map} +0 -0
  216. /package/dist/{autocomplete-VS3XG3B7.js.map → autocomplete-2ZWSQ6QQ.js.map} +0 -0
  217. /package/dist/{avatars-EKCKHCC3.js.map → avatars-M6NSD3KS.js.map} +0 -0
  218. /package/dist/{bid-pricing-Q72B65AY.js.map → bid-pricing-OIVPZCWW.js.map} +0 -0
  219. /package/dist/{brand-C6PFGGQN.js.map → brand-YDNX7LYQ.js.map} +0 -0
  220. /package/dist/{brief-UO52ZHFI.js.map → brief-EK6ULGXD.js.map} +0 -0
  221. /package/dist/{campaign-groups-KFFYQPU3.js.map → campaign-groups-TAP6LK6F.js.map} +0 -0
  222. /package/dist/{campaign-writes-FHOS5XZY.js.map → campaign-writes-4SWPBZE6.js.map} +0 -0
  223. /package/dist/{campaigns-KZYZTXDS.js.map → campaigns-AQAJN23T.js.map} +0 -0
  224. /package/dist/{campaigns-2NHWBF5C.js.map → campaigns-ROMLENHI.js.map} +0 -0
  225. /package/dist/{canvas-DPCBGW7K.js.map → canvas-XYCDLDRS.js.map} +0 -0
  226. /package/dist/{capabilities-DJFTRJKS.js.map → capabilities-GGPTIAFO.js.map} +0 -0
  227. /package/dist/{chats-D2CSDX5Q.js.map → chats-G343BSVB.js.map} +0 -0
  228. /package/dist/{chunk-OZRUJVIQ.js.map → chunk-355DHOHD.js.map} +0 -0
  229. /package/dist/{chunk-CSYSX4D2.js.map → chunk-3URK7DAA.js.map} +0 -0
  230. /package/dist/{chunk-A4LOJ2VD.js.map → chunk-3YOFT3AP.js.map} +0 -0
  231. /package/dist/{chunk-647RO73Q.js.map → chunk-542XAHNT.js.map} +0 -0
  232. /package/dist/{chunk-5ZDLTE5T.js.map → chunk-64WGDUXH.js.map} +0 -0
  233. /package/dist/{chunk-HBTF25YG.js.map → chunk-7WD2RW2R.js.map} +0 -0
  234. /package/dist/{chunk-QRP3PXWN.js.map → chunk-B6GITCGN.js.map} +0 -0
  235. /package/dist/{chunk-IBURXTL4.js.map → chunk-D5XAVXUZ.js.map} +0 -0
  236. /package/dist/{chunk-JQJDXPCO.js.map → chunk-F4F3PLN3.js.map} +0 -0
  237. /package/dist/{chunk-NPY4QUMQ.js.map → chunk-LZSXZB2F.js.map} +0 -0
  238. /package/dist/{chunk-3IBYKLXR.js.map → chunk-MURPCCLG.js.map} +0 -0
  239. /package/dist/{chunk-2QHODRR6.js.map → chunk-NEXCBTBZ.js.map} +0 -0
  240. /package/dist/{chunk-AEOSAVVL.js.map → chunk-NR2TDASR.js.map} +0 -0
  241. /package/dist/{chunk-KHRXPQID.js.map → chunk-OVT676K6.js.map} +0 -0
  242. /package/dist/{chunk-FD27ZDVP.js.map → chunk-P2RE52V7.js.map} +0 -0
  243. /package/dist/{chunk-Z2EOC6PL.js.map → chunk-P6ICBEE4.js.map} +0 -0
  244. /package/dist/{chunk-TT5R35PJ.js.map → chunk-PLGIETFZ.js.map} +0 -0
  245. /package/dist/{chunk-4AUMTNVB.js.map → chunk-QJNTI36W.js.map} +0 -0
  246. /package/dist/{chunk-5Y5UAJWD.js.map → chunk-TD6GIMV6.js.map} +0 -0
  247. /package/dist/{chunk-ZEYEWPK6.js.map → chunk-TESII3FM.js.map} +0 -0
  248. /package/dist/{chunk-GBMP4F45.js.map → chunk-TXI5OWCF.js.map} +0 -0
  249. /package/dist/{chunk-IR6D7K4H.js.map → chunk-UC7VFFXR.js.map} +0 -0
  250. /package/dist/{chunk-7YCRFMXF.js.map → chunk-UNI5AASR.js.map} +0 -0
  251. /package/dist/{chunk-3G3ZDLMI.js.map → chunk-UX5HYEN3.js.map} +0 -0
  252. /package/dist/{chunk-MXYBTMKB.js.map → chunk-V4RGDJAN.js.map} +0 -0
  253. /package/dist/{chunk-SHL7LOC3.js.map → chunk-W2TJIZS2.js.map} +0 -0
  254. /package/dist/{chunk-4BQXAE7Z.js.map → chunk-W5VGWEAG.js.map} +0 -0
  255. /package/dist/{chunk-S77PZVYM.js.map → chunk-WDZOVF6P.js.map} +0 -0
  256. /package/dist/{chunk-Y6O7EWYY.js.map → chunk-YCOP4FGJ.js.map} +0 -0
  257. /package/dist/{claim-FZ5OQLMU.js.map → claim-INJHV4FM.js.map} +0 -0
  258. /package/dist/{companies-DNI634RC.js.map → companies-3REQZWKU.js.map} +0 -0
  259. /package/dist/{complete-2FZMGJV5.js.map → complete-DX2DAAEZ.js.map} +0 -0
  260. /package/dist/{connect-QCOGEPP4.js.map → connect-O4OGKMAK.js.map} +0 -0
  261. /package/dist/{conversation-6IOGV7B7.js.map → conversation-6A2X5W64.js.map} +0 -0
  262. /package/dist/{conversions-4SRZPBBX.js.map → conversions-PT6UDIX3.js.map} +0 -0
  263. /package/dist/{create-VXM34ZWH.js.map → create-BR3Q4A4C.js.map} +0 -0
  264. /package/dist/{create-BJNMO6HT.js.map → create-EOLNJGAX.js.map} +0 -0
  265. /package/dist/{create-FX4OJ2XF.js.map → create-I2UB7FWX.js.map} +0 -0
  266. /package/dist/{create-RM7HV77Y.js.map → create-S47CLYXJ.js.map} +0 -0
  267. /package/dist/{creatives-SJTJU6VT.js.map → creatives-D3NXWVUF.js.map} +0 -0
  268. /package/dist/{creatives-JSWBFQ5R.js.map → creatives-FBH4DKSX.js.map} +0 -0
  269. /package/dist/{credentials-VOZTILFO.js.map → credentials-4BPEXA3E.js.map} +0 -0
  270. /package/dist/{critique-65W63MFZ.js.map → critique-3XJG44NG.js.map} +0 -0
  271. /package/dist/{critique-ZS4ON3SU.js.map → critique-LU27A765.js.map} +0 -0
  272. /package/dist/{crm-52ROSWH5.js.map → crm-GOE6ZO5N.js.map} +0 -0
  273. /package/dist/{crm-R5IXIFIV.js.map → crm-NEI6E2T2.js.map} +0 -0
  274. /package/dist/{customers-4AWBFDUF.js.map → customers-USB6VCMU.js.map} +0 -0
  275. /package/dist/{delete-M2GDLPYN.js.map → delete-67XFFHUY.js.map} +0 -0
  276. /package/dist/{delete-HGHXY24R.js.map → delete-BT7I3EMN.js.map} +0 -0
  277. /package/dist/{delete-AIGE4Y4H.js.map → delete-ONE22VRX.js.map} +0 -0
  278. /package/dist/{demographics-NTWB2IMG.js.map → demographics-R4LCQGDJ.js.map} +0 -0
  279. /package/dist/{discard-2WWQG6OU.js.map → discard-BOPTV4V5.js.map} +0 -0
  280. /package/dist/{domain-Y2LT6JLT.js.map → domain-B54ILSOO.js.map} +0 -0
  281. /package/dist/{draft-SLHAKJ2A.js.map → draft-DWSBVJUF.js.map} +0 -0
  282. /package/dist/{draft-FJ7WHIXW.js.map → draft-J4SGNGGW.js.map} +0 -0
  283. /package/dist/{draft-EJXNNJ3Y.js.map → draft-ROERDGSK.js.map} +0 -0
  284. /package/dist/{facets-U7AQC4H6.js.map → facets-FUTIWQXK.js.map} +0 -0
  285. /package/dist/{feedback-XNJQ63DS.js.map → feedback-C6CBUUDA.js.map} +0 -0
  286. /package/dist/{feedback-record-FDLMWMDG.js.map → feedback-record-FM5MW2YV.js.map} +0 -0
  287. /package/dist/{fetch-W7NULDEO.js.map → fetch-D7JPGEYZ.js.map} +0 -0
  288. /package/dist/{fonts-EMMX3KII.js.map → fonts-THAAZY7Z.js.map} +0 -0
  289. /package/dist/{forecast-GNODEIIC.js.map → forecast-RYYVMNYT.js.map} +0 -0
  290. /package/dist/{funnel-AAX27NH4.js.map → funnel-SK7WDPRS.js.map} +0 -0
  291. /package/dist/{get-RTVUZM6E.js.map → get-3STPGBX3.js.map} +0 -0
  292. /package/dist/{google-ads-OK6IG3UV.js.map → google-ads-YD7LYWGY.js.map} +0 -0
  293. /package/dist/{history-PQUJKK26.js.map → history-RWWBR4TN.js.map} +0 -0
  294. /package/dist/{hubspot-Y77VLY6Y.js.map → hubspot-E65QNOI4.js.map} +0 -0
  295. /package/dist/{ideas-MIDU7YOA.js.map → ideas-ZB7O7T5I.js.map} +0 -0
  296. /package/dist/{images-S254MS6O.js.map → images-U4DKZQTE.js.map} +0 -0
  297. /package/dist/{ingest-YV2NLDBE.js.map → ingest-MZXGMFA5.js.map} +0 -0
  298. /package/dist/{ingest-J4I3HKM3.js.map → ingest-ROEMTZMG.js.map} +0 -0
  299. /package/dist/{inspect-Q5NHBBHX.js.map → inspect-MCMUJPXU.js.map} +0 -0
  300. /package/dist/{keyword-metrics-PDY4ZXSP.js.map → keyword-metrics-MLFTDAS4.js.map} +0 -0
  301. /package/dist/{keywords-for-site-GALSCV77.js.map → keywords-for-site-4WUBJNTI.js.map} +0 -0
  302. /package/dist/{landing-CJYGWCK4.js.map → landing-5GDWJN4C.js.map} +0 -0
  303. /package/dist/{leads-PHKG6CP3.js.map → leads-LDOOJI5K.js.map} +0 -0
  304. /package/dist/{learn-3VO6DXUX.js.map → learn-MMIGRLCP.js.map} +0 -0
  305. /package/dist/{line-item-writes-E6MZPIZZ.js.map → line-item-writes-LFDWJBQG.js.map} +0 -0
  306. /package/dist/{line-items-7ZGIKEF2.js.map → line-items-T3EVXB4M.js.map} +0 -0
  307. /package/dist/{link-QYAW6A2W.js.map → link-M5ESAD5Y.js.map} +0 -0
  308. /package/dist/{linkedin-FFSDSGGS.js.map → linkedin-4FNKZNIR.js.map} +0 -0
  309. /package/dist/{list-SAV3LQHY.js.map → list-EF6QI4JT.js.map} +0 -0
  310. /package/dist/{list-5IC6KIKO.js.map → list-FNW254C3.js.map} +0 -0
  311. /package/dist/{list-NVQC5SNY.js.map → list-XWUTPJRQ.js.map} +0 -0
  312. /package/dist/{log-XZPVOALD.js.map → log-5MESJJLM.js.map} +0 -0
  313. /package/dist/{make-LCNP76OF.js.map → make-ATEHKECL.js.map} +0 -0
  314. /package/dist/{map-4J5WIWIG.js.map → map-5NONUYFP.js.map} +0 -0
  315. /package/dist/{mcp-XXD7ZQCP.js.map → mcp-CGITBQQA.js.map} +0 -0
  316. /package/dist/{media-sources-O6ZRUA3N.js.map → media-sources-6TFUGPE2.js.map} +0 -0
  317. /package/dist/{members-D5ZYLS4Y.js.map → members-R2GQVSVA.js.map} +0 -0
  318. /package/dist/{options-MQ65VEVD.js.map → options-YT2ZGB2Z.js.map} +0 -0
  319. /package/dist/{performance-6QW2KEEQ.js.map → performance-52IILAFE.js.map} +0 -0
  320. /package/dist/{promoted-tweet-writes-JPLHY3GM.js.map → promoted-tweet-writes-QVIKWEIZ.js.map} +0 -0
  321. /package/dist/{promoted-tweets-SURKMHFI.js.map → promoted-tweets-2AALRV5O.js.map} +0 -0
  322. /package/dist/{publish-HCQ6MXLB.js.map → publish-XFLOZAOQ.js.map} +0 -0
  323. /package/dist/{reddit-GIP3ADMS.js.map → reddit-HFBAGWNP.js.map} +0 -0
  324. /package/dist/{refresh-UXQSLCR3.js.map → refresh-INKIU3QV.js.map} +0 -0
  325. /package/dist/{release-5KVLXNP6.js.map → release-C2MFXAPJ.js.map} +0 -0
  326. /package/dist/{remove-6FIVKCJI.js.map → remove-JWSVNUJ4.js.map} +0 -0
  327. /package/dist/{reopen-YM5LNOLB.js.map → reopen-3GM4OSLZ.js.map} +0 -0
  328. /package/dist/{rerun-CET74VPF.js.map → rerun-FCZRSS3H.js.map} +0 -0
  329. /package/dist/{research-EY7C7JJY.js.map → research-EBQ5KWOS.js.map} +0 -0
  330. /package/dist/{research-YOGE7GT2.js.map → research-HUMDT7T4.js.map} +0 -0
  331. /package/dist/{reset-OLVB6AE6.js.map → reset-3BEGDSBW.js.map} +0 -0
  332. /package/dist/{reset-C4UHQ3EU.js.map → reset-TVDYP2VK.js.map} +0 -0
  333. /package/dist/{resolve-XYH2GDAE.js.map → resolve-OQKUGWEI.js.map} +0 -0
  334. /package/dist/{retry-726GKI6V.js.map → retry-EJBF6GBJ.js.map} +0 -0
  335. /package/dist/{retry-7EELDEQP.js.map → retry-GUHOWYO2.js.map} +0 -0
  336. /package/dist/{run-P4KR2MXC.js.map → run-3D6QZC6L.js.map} +0 -0
  337. /package/dist/{run-XQ7EM3JT.js.map → run-CUUAWKAZ.js.map} +0 -0
  338. /package/dist/{scaffold-ad-U2KSHKBC.js.map → scaffold-ad-AYKWASWY.js.map} +0 -0
  339. /package/dist/{scaffold-static-ad-63LQKUSO.js.map → scaffold-static-ad-IEZEQW4N.js.map} +0 -0
  340. /package/dist/{scaffold-video-MUS6LHJQ.js.map → scaffold-video-YMN7AJS4.js.map} +0 -0
  341. /package/dist/{schedule-RDK4GEPI.js.map → schedule-QVYVMRIY.js.map} +0 -0
  342. /package/dist/{scheduled-agents-6U44QE76.js.map → scheduled-agents-CNIGCLAP.js.map} +0 -0
  343. /package/dist/{search-PMJRU3C4.js.map → search-XUGIKFW3.js.map} +0 -0
  344. /package/dist/{select-4Z7BW5RH.js.map → select-LSS7ZJSB.js.map} +0 -0
  345. /package/dist/{set-prompt-OB2V3XJP.js.map → set-prompt-P3WR2TZX.js.map} +0 -0
  346. /package/dist/{setup-links-REPREN3C.js.map → setup-links-4VILWID2.js.map} +0 -0
  347. /package/dist/{site-WFSWIA3S.js.map → site-TLJVSZQF.js.map} +0 -0
  348. /package/dist/{sources-YBQ6KPFM.js.map → sources-4MKBWFWG.js.map} +0 -0
  349. /package/dist/{sources-AMI2AWKZ.js.map → sources-7FCRKPXJ.js.map} +0 -0
  350. /package/dist/{stale-DAYXOY3Z.js.map → stale-7VJECYYJ.js.map} +0 -0
  351. /package/dist/{status-7F2KHFGA.js.map → status-WZKAKUG4.js.map} +0 -0
  352. /package/dist/{sync-GWTLKZTU.js.map → sync-DEWLEMTT.js.map} +0 -0
  353. /package/dist/{sync-definition-ILS2B2BJ.js.map → sync-definition-ARIX5XWM.js.map} +0 -0
  354. /package/dist/{tags-3WPW6PTV.js.map → tags-ANV54THE.js.map} +0 -0
  355. /package/dist/{tags-FJIBBBRG.js.map → tags-IWN3QPK5.js.map} +0 -0
  356. /package/dist/{tags-ABHSX6M5.js.map → tags-O76MDVID.js.map} +0 -0
  357. /package/dist/{tags-6342FQEB.js.map → tags-RBB4TU7U.js.map} +0 -0
  358. /package/dist/{tags-KFYLZLB3.js.map → tags-V5FR3DYU.js.map} +0 -0
  359. /package/dist/{targeting-criteria-NR47AF5C.js.map → targeting-criteria-6IOXVE4K.js.map} +0 -0
  360. /package/dist/{targets-L56KOVQE.js.map → targets-FFLV6OMF.js.map} +0 -0
  361. /package/dist/{templates-B6XGDYUF.js.map → templates-Y3ZLB7MK.js.map} +0 -0
  362. /package/dist/{testimonials-CVC4YIXO.js.map → testimonials-FCYS4NKB.js.map} +0 -0
  363. /package/dist/{top-companies-45X3DT7Z.js.map → top-companies-BL4F7OPI.js.map} +0 -0
  364. /package/dist/{translate-TA5KQIU7.js.map → translate-GGONJG62.js.map} +0 -0
  365. /package/dist/{triggers-22EMIVFD.js.map → triggers-6Q3YRHZS.js.map} +0 -0
  366. /package/dist/{unlink-65KUN6ID.js.map → unlink-WDSOVBFL.js.map} +0 -0
  367. /package/dist/{unstage-2E3I5SWF.js.map → unstage-JYJIKPB5.js.map} +0 -0
  368. /package/dist/{update-2S7CSEAW.js.map → update-CWZVKOUB.js.map} +0 -0
  369. /package/dist/{update-7NCOTAQZ.js.map → update-FUYXN33G.js.map} +0 -0
  370. /package/dist/{update-KREBPGBH.js.map → update-IXSCDBM4.js.map} +0 -0
  371. /package/dist/{update-D6DJC6T7.js.map → update-WSG6RVFX.js.map} +0 -0
  372. /package/dist/{upload-O6NHRPS7.js.map → upload-CKV2XS3G.js.map} +0 -0
  373. /package/dist/{url-params-3EFGVTZZ.js.map → url-params-UJSNI4XC.js.map} +0 -0
  374. /package/dist/{validate-LDBAAXQO.js.map → validate-FSFELDFZ.js.map} +0 -0
  375. /package/dist/{videos-YSXYGTBM.js.map → videos-FAKURRTG.js.map} +0 -0
  376. /package/dist/{web-IGIGVEKS.js.map → web-RRGHSAFY.js.map} +0 -0
  377. /package/dist/{winning-ads-ASH5DSV3.js.map → winning-ads-HRSCX6O2.js.map} +0 -0
  378. /package/dist/{write-commands-5C7FUOVN.js.map → write-commands-TAG7DQKT.js.map} +0 -0
  379. /package/dist/{x-BFSKFCZD.js.map → x-FBWHL3PL.js.map} +0 -0
package/README.md CHANGED
@@ -3726,11 +3726,11 @@ Read and shape this workspace's Forms (flows). Operates on the local `_data.json
3726
3726
 
3727
3727
  For ChatGPT Ads conversions, add a `chatgptAds` side effect to the Form step, choose a supported event name, and use `baker flows map` to map `advancedMatching` and optional `eventParams` (`value` and `currency`).
3728
3728
 
3729
- **A Form has two halves, split by a trust boundary.** Its *structure* — steps, conditions, side effects, field mappings — is yours, and the write subcommands below edit exactly that. Its *confidential* half — connection secrets, OAuth accounts, third-party field definitions (HubSpot, Calendly, HighLevel, SavvyCal) — is configured through the `request_flow_input` tool (`baker_ui` MCP server): the agent authors the surrounding structure and references it by `nodeId`/`sideEffectId`, and the user enters secrets, connects accounts, and picks resources in the dashboard. Those values are written (encrypted, where a secret) into the Form on the chat's branch and go live when the chat is published. Nothing any of these commands does touches a live system.
3729
+ **A Form has two halves, split by a trust boundary.** Its *structure* — steps, conditions, side effects, field mappings — is yours, and the write subcommands below edit exactly that. Its *confidential* half — connection secrets, OAuth accounts, third-party field definitions (HubSpot, Calendly, HighLevel, SavvyCal) — is set with `baker flows connect` whenever the agent knows the answer (an email's recipients and subject always; a connected platform's resource; a webhook with no token), and otherwise through the `request_flow_input` tool (`baker_ui` MCP server): the agent authors the surrounding structure and references it by `nodeId`/`sideEffectId`, and the user enters secrets, connects accounts, and picks resources in the dashboard. Those values are written (encrypted, where a secret) into the Form on the chat's branch and go live when the chat is published. Nothing any of these commands does touches a live system.
3730
3730
 
3731
3731
  ```bash
3732
3732
  baker flows list # every Form + how many confidential fields still need setup
3733
- baker flows show contact # confidential fields + whether the destination changed under this Form
3733
+ baker flows show contact # confidential fields, where each sealed destination sends (never a credential), and drift
3734
3734
  baker flows show contact --full # include the full flow tree (secret values redacted)
3735
3735
 
3736
3736
  baker flows schema # both vocabularies + the customForm field types
@@ -3746,6 +3746,8 @@ baker flows connect contact --node book --resource <id> # fill a Calend
3746
3746
  baker flows connect contact --side-effect se-gsheet-1 --resource <spreadsheetId> # a sheet Baker can reach (--tab to pick the tab)
3747
3747
  baker flows connect contact --side-effect se-gsheet-1 --new-sheet "Contact leads" --columns "Name,Email" # create one and wire it
3748
3748
  baker flows connect contact --side-effect se-pipedrive-1 # Pipedrive / GoHighLevel contact: the account is the destination
3749
+ baker flows connect contact --side-effect se-email-1 --email "ana@x.com, luis@x.com" --subject "New lead — Contact" # an email destination: the agent states it, never a card
3750
+ baker flows connect contact --side-effect se-httpWebhook-1 --url https://hooks.example.com/lead # a webhook that needs no token
3749
3751
  baker flows connect contact --all --type googleSpreadsheet --same-as madrid:se-gsheet-1 # copy another Form's destination
3750
3752
  baker flows map contact --from map.json --write # a whole mapping at once — past ~3 fields, use this
3751
3753
  baker flows map contact --map A=nombre --write # one or two fields
@@ -3760,6 +3762,7 @@ Notes:
3760
3762
  - **`schema` takes the kind as an argument because `hubspot` is both** — a node type (embeds a form on the page) and a side-effect type (fires a behavioural event). They are different things with one name.
3761
3763
  - **`connect` wires a HubSpot form without asking the user.** When HubSpot is connected and the agent knows which form is meant, `baker flows connect <slug> --hubspot-form <formId> [--side-effect <id>]` attaches the account and the form to a `hubspotForm` side effect (`--all`: every one in the Form still missing it, never repointing one already wired) — the same thing the chat card writes, sealed by Baker so the config never passes through the agent. It refuses a form with spam prevention (captcha) on, and returns `destination.formGuid` for `map --hubspot-form`. The card (`request_flow_input`) stays for an unconnected account or an ambiguous choice.
3762
3764
  - **`options` + `connect` do the same for every other connected platform.** `baker flows options <kind>` lists what the connected account holds (Calendly events, SavvyCal links, GoHighLevel calendars and forms, the Google spreadsheets Baker can reach); `connect --node|--side-effect <id> --resource <id>` writes exactly what the card would. Pipedrive and a GoHighLevel contact take no resource. `--new-sheet` creates a spreadsheet in the connected Google account (Google only lets Baker reach sheets it created or the user chose), `--same-as <slug>:<id>` copies another Form's wired destination, `--all --type <kind>` fills every unwired one of a kind. Nothing connected answers `NOT_CONNECTED` with the `request_connection` fix; several accounts connected need `--account <id>`.
3765
+ - **`--email` / `--url` replace a destination whole, so they leave alone what only the user can set.** `--all --email` passes over an email that replies to the visitor's own answer (and says so in its hints); naming one is refused. A webhook that sends a credential keeps its address until the user re-enters both through `request_flow_input`. Unreadable settings are also left alone by default. For one unreadable email, `--replace-unreadable --email <complete list> --subject <text>` replaces the old setup when the user intends replacement, without revealing it. Never use this to add to an unknown recipient list; it cannot override `--all`, a known visitor reply, or a webhook. `flows show` reads back only destinations sealed for this company.
3763
3766
  - **Configure the destination before you map.** `columnMapping`/`fieldMapping` describe a *specific* destination — sheet columns, a portal's field names — that only `connect` or `request_flow_input` can set, and both return it. A mapping written first is valid JSON that ships and drops every submission; `verify` blocks the half-wired result.
3764
3767
  - **`map` reads the record shape off the side effect's type.** One property name, four record shapes: a Sheet is addressed by column letter, HubSpot by property name, Pipedrive and GoHighLevel by field key, Crmble by field id. That is why there is no `--key`, and why `--entity` and `--custom`/`--standard` are required rather than defaulted.
3765
3768
  - **A mapping is usually eight to fifteen fields, so `--from` is the main door.** It takes `{ "map": { "<destField>": "<value>" } }` from a file or stdin; `--map` flags are for one or two. Both produce identical output.
@@ -2,7 +2,7 @@ import {
2
2
  csvOrJson,
3
3
  handleLinkedinError,
4
4
  resolveAccountIdArg
5
- } from "./chunk-CSYSX4D2.js";
5
+ } from "./chunk-3URK7DAA.js";
6
6
  import {
7
7
  writeAdsJson,
8
8
  writeAdsOutput
@@ -10,7 +10,7 @@ import {
10
10
  import {
11
11
  NO_CACHE_ARG
12
12
  } from "./chunk-X7ZODEXJ.js";
13
- import "./chunk-XF4JUKVF.js";
13
+ import "./chunk-BAUSWB7O.js";
14
14
  import "./chunk-GXDLWBOY.js";
15
15
  import "./chunk-TEINLN64.js";
16
16
  import "./chunk-ZJWUBJYQ.js";
@@ -68,7 +68,7 @@ Examples:
68
68
  },
69
69
  subCommands: {
70
70
  detail: accountDetailCommand,
71
- "url-params": () => import("./write-commands-5C7FUOVN.js").then((m) => m.accountUrlParamsCommand)
71
+ "url-params": () => import("./write-commands-TAG7DQKT.js").then((m) => m.accountUrlParamsCommand)
72
72
  },
73
73
  args: accountDetailCommand.args,
74
74
  default: "detail"
@@ -76,4 +76,4 @@ Examples:
76
76
  export {
77
77
  accountCommand
78
78
  };
79
- //# sourceMappingURL=account-AL2ZDSR7.js.map
79
+ //# sourceMappingURL=account-2SVI5OK7.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  csvOrJson,
3
3
  handleLinkedinError
4
- } from "./chunk-CSYSX4D2.js";
4
+ } from "./chunk-3URK7DAA.js";
5
5
  import {
6
6
  connectedResourceHints
7
7
  } from "./chunk-P4NSJS54.js";
@@ -16,7 +16,7 @@ import {
16
16
  import {
17
17
  NO_CACHE_ARG
18
18
  } from "./chunk-X7ZODEXJ.js";
19
- import "./chunk-XF4JUKVF.js";
19
+ import "./chunk-BAUSWB7O.js";
20
20
  import "./chunk-GXDLWBOY.js";
21
21
  import "./chunk-TEINLN64.js";
22
22
  import "./chunk-ZJWUBJYQ.js";
@@ -74,4 +74,4 @@ Examples:
74
74
  export {
75
75
  accountsCommand
76
76
  };
77
- //# sourceMappingURL=accounts-HAFCLSR5.js.map
77
+ //# sourceMappingURL=accounts-2XAOZX3U.js.map
@@ -9,7 +9,7 @@ import {
9
9
  accountsInfluencedRequestSchema,
10
10
  influenceParams,
11
11
  warmAccounts
12
- } from "./chunk-ZEYEWPK6.js";
12
+ } from "./chunk-TESII3FM.js";
13
13
  import "./chunk-GRQ2AXDX.js";
14
14
  import {
15
15
  TABLE_OUTPUT_FORMATS,
@@ -19,8 +19,8 @@ import {
19
19
  } from "./chunk-VFIOJD5M.js";
20
20
  import {
21
21
  failApi
22
- } from "./chunk-3HJLHTWP.js";
23
- import "./chunk-XF4JUKVF.js";
22
+ } from "./chunk-EIVYFZ4N.js";
23
+ import "./chunk-BAUSWB7O.js";
24
24
  import "./chunk-GXDLWBOY.js";
25
25
  import "./chunk-TEINLN64.js";
26
26
  import "./chunk-ZJWUBJYQ.js";
@@ -602,10 +602,10 @@ var accountsCommand = defineCommand({
602
602
  warm: warmCommand,
603
603
  company: companyCommand,
604
604
  campaigns: campaignsCommand,
605
- crm: () => import("./crm-R5IXIFIV.js").then((m) => m.crmCommand)
605
+ crm: () => import("./crm-NEI6E2T2.js").then((m) => m.crmCommand)
606
606
  }
607
607
  });
608
608
  export {
609
609
  accountsCommand
610
610
  };
611
- //# sourceMappingURL=accounts-O5MFO3QQ.js.map
611
+ //# sourceMappingURL=accounts-U4BGY3QU.js.map
@@ -30,26 +30,26 @@ Examples:
30
30
  Full guide: __tooling__/docs/tools/baker/actions.md`
31
31
  },
32
32
  subCommands: {
33
- list: () => import("./list-SAV3LQHY.js").then((m) => m.listCommand),
34
- log: () => import("./log-XZPVOALD.js").then((m) => m.logCommand),
35
- draft: () => import("./draft-SLHAKJ2A.js").then((m) => m.draftCommand),
36
- get: () => import("./get-QEYJRLV3.js").then((m) => m.getCommand),
37
- status: () => import("./status-7F2KHFGA.js").then((m) => m.statusCommand),
38
- claim: () => import("./claim-FZ5OQLMU.js").then((m) => m.claimCommand),
39
- release: () => import("./release-5KVLXNP6.js").then((m) => m.releaseCommand),
40
- create: () => import("./create-VXM34ZWH.js").then((m) => m.createCommand),
41
- update: () => import("./update-7NCOTAQZ.js").then((m) => m.updateCommand),
42
- complete: () => import("./complete-2FZMGJV5.js").then((m) => m.completeCommand),
43
- discard: () => import("./discard-2WWQG6OU.js").then((m) => m.discardCommand),
44
- reopen: () => import("./reopen-YM5LNOLB.js").then((m) => m.reopenCommand),
45
- assign: () => import("./assign-ABN2AQ4J.js").then((m) => m.assignCommand),
46
- members: () => import("./members-D5ZYLS4Y.js").then((m) => m.membersCommand),
47
- link: () => import("./link-QYAW6A2W.js").then((m) => m.linkCommand),
48
- unlink: () => import("./unlink-65KUN6ID.js").then((m) => m.unlinkCommand),
49
- tags: () => import("./tags-3WPW6PTV.js").then((m) => m.tagsCommand)
33
+ list: () => import("./list-EF6QI4JT.js").then((m) => m.listCommand),
34
+ log: () => import("./log-5MESJJLM.js").then((m) => m.logCommand),
35
+ draft: () => import("./draft-DWSBVJUF.js").then((m) => m.draftCommand),
36
+ get: () => import("./get-YBIF3H52.js").then((m) => m.getCommand),
37
+ status: () => import("./status-WZKAKUG4.js").then((m) => m.statusCommand),
38
+ claim: () => import("./claim-INJHV4FM.js").then((m) => m.claimCommand),
39
+ release: () => import("./release-C2MFXAPJ.js").then((m) => m.releaseCommand),
40
+ create: () => import("./create-BR3Q4A4C.js").then((m) => m.createCommand),
41
+ update: () => import("./update-FUYXN33G.js").then((m) => m.updateCommand),
42
+ complete: () => import("./complete-DX2DAAEZ.js").then((m) => m.completeCommand),
43
+ discard: () => import("./discard-BOPTV4V5.js").then((m) => m.discardCommand),
44
+ reopen: () => import("./reopen-3GM4OSLZ.js").then((m) => m.reopenCommand),
45
+ assign: () => import("./assign-46TXQRT5.js").then((m) => m.assignCommand),
46
+ members: () => import("./members-R2GQVSVA.js").then((m) => m.membersCommand),
47
+ link: () => import("./link-M5ESAD5Y.js").then((m) => m.linkCommand),
48
+ unlink: () => import("./unlink-WDSOVBFL.js").then((m) => m.unlinkCommand),
49
+ tags: () => import("./tags-ANV54THE.js").then((m) => m.tagsCommand)
50
50
  }
51
51
  });
52
52
  export {
53
53
  actionsCommand
54
54
  };
55
- //# sourceMappingURL=actions-P35MEMGN.js.map
55
+ //# sourceMappingURL=actions-6EJU7CAQ.js.map
@@ -7,7 +7,7 @@ import {
7
7
  testimonialSourceRefreshIntervalSchema,
8
8
  testimonialSourceTypeSchema,
9
9
  testimonialSourcesAddRequestSchema
10
- } from "./chunk-XF4JUKVF.js";
10
+ } from "./chunk-BAUSWB7O.js";
11
11
  import "./chunk-GXDLWBOY.js";
12
12
  import "./chunk-TEINLN64.js";
13
13
  import "./chunk-ZJWUBJYQ.js";
@@ -101,4 +101,4 @@ export {
101
101
  addCommand,
102
102
  addSourceHints
103
103
  };
104
- //# sourceMappingURL=add-6DTC6X5G.js.map
104
+ //# sourceMappingURL=add-IPGEYQQG.js.map
@@ -6,16 +6,19 @@ import {
6
6
  stepNameKey,
7
7
  walkNodes,
8
8
  writeFlowTree
9
- } from "./chunk-YRQYA2LR.js";
9
+ } from "./chunk-Q4JYX424.js";
10
10
  import {
11
11
  flowCatalogEntry,
12
12
  flowCatalogTypes,
13
13
  flowNodeTriggers
14
- } from "./chunk-XF4JUKVF.js";
14
+ } from "./chunk-BAUSWB7O.js";
15
15
  import "./chunk-GXDLWBOY.js";
16
16
  import "./chunk-TEINLN64.js";
17
17
  import "./chunk-ZJWUBJYQ.js";
18
18
  import "./chunk-NE4F3FHN.js";
19
+ import "./chunk-XBOK23HI.js";
20
+ import "./chunk-IFWP3ZDO.js";
21
+ import "./chunk-NAWWC5I3.js";
19
22
  import {
20
23
  registerSchema,
21
24
  writeJson
@@ -149,6 +152,21 @@ function freeSideEffectId(type, taken) {
149
152
  if (!taken.has(candidate)) return candidate;
150
153
  }
151
154
  }
155
+ function sameTrackingSideEffect(node, type, triggerId) {
156
+ if (flowCatalogEntry("side-effect", type)?.owners?.tagIds !== "tags") return null;
157
+ const effects = Array.isArray(node.sideEffects) ? node.sideEffects : [];
158
+ for (const raw of effects) {
159
+ const effect = raw;
160
+ if (effect?.type === type && effect.triggerId === triggerId) return effect;
161
+ }
162
+ return null;
163
+ }
164
+ function secondPixelHint(node, type, triggerId) {
165
+ const already = sameTrackingSideEffect(node, type, triggerId);
166
+ if (!already) return null;
167
+ const event = typeof already.eventName === "string" ? ` with event "${already.eventName}"` : "";
168
+ return `"${String(node.name ?? node.id)}" already reports \`${triggerId}\` to ${type} as "${String(already.id)}"${event}. Give this one a different event; to change that conversion, edit "${String(already.id)}" and delete this one \u2014 the same event to the same tag counts every conversion twice.`;
169
+ }
152
170
  function pendingItem(target, nodeId, kind, sideEffectId) {
153
171
  return {
154
172
  target,
@@ -167,7 +185,7 @@ function configureHints(slug, nodeId, id, type, needsCard) {
167
185
  }
168
186
  registerSchema({
169
187
  command: "flows.add-side-effect",
170
- description: "Add a side effect to a step with a valid skeleton \u2014 encryptedConfig:null for a CRM, a tagIds slot for a pixel, and no oauthProviderId key. Configure the confidential half with request_flow_input afterwards.",
188
+ description: "Add a side effect to a step with a valid skeleton \u2014 encryptedConfig:null for a CRM, a tagIds slot for a pixel, and no oauthProviderId key. Then set where it sends with `baker flows connect` (an email: --email/--subject, written by you); only a typed secret goes to request_flow_input.",
171
189
  args: {
172
190
  slug: { type: "positional", description: "Form slug", required: true },
173
191
  node: { type: "string", description: "Id of the step that fires it", required: true },
@@ -239,6 +257,7 @@ var addSideEffectCommand = defineCommand({
239
257
  process.exit(1);
240
258
  }
241
259
  const triggerId = trigger.triggerId;
260
+ const secondPixel = secondPixelHint(node, type, triggerId);
242
261
  const sideEffect = concrete(entry.skeleton, { id, triggerId });
243
262
  existing.push(sideEffect);
244
263
  writeFlowTree(slug, tree);
@@ -255,12 +274,13 @@ var addSideEffectCommand = defineCommand({
255
274
  ...needsUser.some(([, owner]) => owner === "tags") ? [
256
275
  `This reports the conversion to ${type}. It does NOT make Baker count anything: what Baker counts is a named event, set with \`baker analytics conversions --flow ${slug}\`. Do both \u2014 they are two different systems asked the same question.`
257
276
  ] : [],
277
+ ...secondPixel ? [secondPixel] : [],
258
278
  ...configureHints(
259
279
  slug,
260
280
  String(node.id),
261
281
  id,
262
282
  type,
263
- needsUser.some(([, owner]) => owner === "request_flow_input")
283
+ needsUser.some(([, owner]) => owner === "request_flow_input" || owner === "connect")
264
284
  ),
265
285
  ...needsUser.some(([, owner]) => owner === "tags") ? [
266
286
  "Fill `tagIds` with a real ref from `baker tags list`, or stage the tag first with the `tags` skill. Never invent one."
@@ -275,6 +295,8 @@ export {
275
295
  addSideEffectCommand,
276
296
  freeSideEffectId,
277
297
  resolveTrigger,
298
+ sameTrackingSideEffect,
299
+ secondPixelHint,
278
300
  stepNameRefusal
279
301
  };
280
- //# sourceMappingURL=add-5GAN6CVO.js.map
302
+ //# sourceMappingURL=add-P7CCVY2J.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/flows/add.ts"],"sourcesContent":["/**\n * `add-node` and `add-side-effect`: emit a valid skeleton and splice it in.\n *\n * The point is not to save typing — it is that the skeleton is right. A node\n * needs a fresh UUID, an explicit `condition: null`, the correct `nodeData`\n * discriminator, and — for a widget — `form.external: null` rather than an\n * invented resource. A side effect needs `encryptedConfig: null` and no\n * `oauthProviderId` key at all. Every one of those is a rule the flow-builder\n * skill used to spend prose on, and each was a real defect when got wrong.\n *\n * Deliberately scoped to creating the skeleton. Copy, conditions, autofill and\n * the `ai` field stay hand-edited: they are judgement, and a flag-based API for\n * them would be worse than JSON.\n */\n\nimport { randomUUID } from \"node:crypto\";\nimport { type FlowConfigStatus, flowCatalogEntry, flowCatalogTypes, flowNodeTriggers } from \"@baker/api\";\nimport { defineCommand } from \"citty\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport {\n flowDataPath,\n isUsableStepNameKey,\n readFlowTree,\n requestFlowInputCall,\n stepNameKey,\n walkNodes,\n writeFlowTree,\n} from \"./shared.ts\";\n\ntype AnyRecord = Record<string, unknown>;\n\nfunction unknownType(kind: \"node\" | \"side-effect\", type: string): never {\n writeJson({\n ok: false,\n error: {\n code: \"VALIDATION_ERROR\",\n message: `No ${kind} type \"${type}\".`,\n fix: `Known types: ${flowCatalogTypes(kind).join(\", \")}. See: baker flows schema ${kind}`,\n },\n });\n process.exit(1);\n}\n\n/** Replace the catalog's `<placeholder>` strings with real values where we have them. */\nfunction concrete(skeleton: AnyRecord, replacements: Record<string, unknown>): AnyRecord {\n return { ...structuredClone(skeleton), ...replacements };\n}\n\n/**\n * Whether this name can be a step in this form, and why not when it cannot.\n *\n * Both answers are about the same fact: the name becomes a constant in the\n * form's generated `_query.ts` (`export const <KEY> = \"<node id>\";`), and\n * `flow-typed.mjs` writes it without checking either that it parses or that no\n * other step already produced it. So both failures land on a generated file\n * rather than on the name that caused them — one as a syntax error, one as\n * `Duplicate flow node name` — and `_query.ts` stops regenerating for the whole\n * form. A name is minted once, here, which makes here the only cheap place to\n * say so.\n *\n * Returns `null` when the name is fine.\n */\nexport function stepNameRefusal(nodes: readonly AnyRecord[], name: string): { message: string; fix: string } | null {\n const key = stepNameKey(name);\n if (!isUsableStepNameKey(key)) {\n return {\n message: `\"${name}\" cannot be a step name: it becomes the constant \\`${key || \"(empty)\"}\\`, which is not a valid identifier.`,\n fix: 'A step name becomes `export const <NAME> = …` in the form\\'s generated code, so it must start with a letter and hold only letters, digits, spaces and dashes. Try \"Your Details\" rather than \"1. Your details\".',\n };\n }\n const clash = nodes.find((node) => typeof node.name === \"string\" && stepNameKey(node.name) === key);\n if (!clash) return null;\n return {\n message: `This form already has a step named \"${clash.name}\", which collides with \"${name}\".`,\n fix: `Both become the constant \\`${key}\\`, and the form's generated code cannot hold it twice. Pick a name that differs by more than case, spacing or punctuation.`,\n };\n}\n\nregisterSchema({\n command: \"flows.add-node\",\n description:\n \"Add a step to a form with a valid skeleton — fresh UUID, explicit condition, correct nodeData discriminator, and form.external:null for a widget. Author its copy and conditions afterwards by editing _data.json.\",\n args: {\n slug: { type: \"positional\", description: \"Form slug\", required: true },\n type: { type: \"string\", description: \"Node type (see: baker flows schema node)\", required: true },\n name: { type: \"string\", description: \"Step name — unique, Title Case\", required: true },\n parent: { type: \"string\", description: \"Parent node id. Omit to append to the root's children.\", required: false },\n },\n});\n\nexport const addNodeCommand = defineCommand({\n meta: {\n name: \"add-node\",\n description:\n 'Add a step to a form, with the skeleton its type requires. Example: baker flows add-node contact --type customForm --name \"Contact Info\"',\n },\n args: {\n slug: { type: \"positional\", description: \"Form slug\", required: true },\n type: { type: \"string\", description: \"Node type\", required: true },\n name: { type: \"string\", description: \"Step name — unique, Title Case\", required: true },\n parent: { type: \"string\", description: \"Parent node id (default: the root)\" },\n },\n run: ({ args }) => {\n const slug = String(args.slug);\n const type = String(args.type);\n // Trimmed before anything reads it, because the generator does not trim:\n // ` Contact Info ` becomes the constant `_CONTACT_INFO_`, which is legal,\n // permanent, and not what anyone typed.\n const name = String(args.name).trim();\n const entry = flowCatalogEntry(\"node\", type) ?? unknownType(\"node\", type);\n\n const tree = readFlowTree(slug);\n const nodes = walkNodes(tree);\n\n const refusal = stepNameRefusal(nodes, name);\n if (refusal) {\n writeJson({\n ok: false,\n error: {\n code: \"VALIDATION_ERROR\",\n message: refusal.message.replace(\"This form\", `\"${slug}\"`),\n fix: refusal.fix,\n },\n });\n process.exit(1);\n }\n\n const parent = args.parent ? nodes.find((node) => node.id === String(args.parent)) : tree;\n if (!parent) {\n writeJson({\n ok: false,\n error: {\n code: \"NOT_FOUND\",\n message: `No node with id \"${args.parent}\" in \"${slug}\".`,\n fix: `Nodes in this form: ${nodes.map((node) => `${node.id} (${node.name})`).join(\", \")}`,\n },\n });\n process.exit(1);\n }\n\n const node = concrete(entry.skeleton, { id: randomUUID(), name });\n if (!Array.isArray(parent.children)) parent.children = [];\n (parent.children as AnyRecord[]).push(node);\n writeFlowTree(slug, tree);\n\n writeJson({\n ok: true,\n data: { slug, nodeId: node.id, type, parentId: parent.id ?? null, path: flowDataPath(slug) },\n hints: [\n `Now fill in this step's \\`ai\\` field and its copy by editing ${flowDataPath(slug)}.`,\n // Said on every step added, because the moment a Form's shape changes\n // is the moment its outcome can move — and a Form nobody named an\n // outcome for reports zero conversions rather than an error.\n `Say what this Form counts before you finish: \\`baker analytics conversions --flow ${slug}\\` lists every ending already spelled as an event key, including this step's. Nothing in _data.json decides it.`,\n ...(entry.owners?.[\"nodeData.form.external\"] === \"request_flow_input\"\n ? [\n `Pick this ${type} step's resource: ${requestFlowInputCall(slug, pendingItem(\"node\", String(node.id), type))}.`,\n ]\n : []),\n ...(entry.gotcha ? [entry.gotcha] : []),\n ],\n });\n },\n});\n\n/**\n * The `triggerId` a side effect on this step has to carry.\n *\n * This is the one field on a side effect that is decided by its STEP rather\n * than by its own type, and getting it wrong is silent in every direction:\n * `fireSideEffects` filters on `triggerId` equality, so a mismatch means the\n * side effect never runs — no error, no log, nothing half-written. Every\n * validator in the repo passes, because the file is valid; it just does nothing.\n *\n * Taking the skeleton's default was that failure. `SIDE_EFFECT_ENVELOPE` carries\n * `customForm.onFormSubmitted`, which is right for a `customForm` step and wrong\n * for the five widget types that raise an id of their own — so the command that\n * exists to emit a skeleton the agent cannot get wrong emitted a dead side\n * effect on any booking or embedded-form step.\n */\nexport type TriggerChoice = { ok: true; triggerId: string } | { ok: false; message: string; fix: string };\n\nexport function resolveTrigger(node: AnyRecord, requested: string | undefined): TriggerChoice {\n const triggers = flowNodeTriggers(node.nodeData);\n const where = `Step \"${String(node.name ?? node.id)}\"${triggers.type ? ` (a ${triggers.type} step)` : \"\"}`;\n const raises = triggers.available.length > 0 ? `It raises: ${triggers.available.join(\", \")}.` : (triggers.why ?? \"\");\n const no = (message: string, fix: string): TriggerChoice => ({ ok: false, message, fix });\n\n // A node type the table does not cover is a table that has fallen behind, not\n // a form that is wrong — so an explicit trigger is taken at its word there.\n // Refusing instead would let a stale table reject a form the engine handles.\n if (!triggers.known) {\n return requested\n ? { ok: true, triggerId: requested }\n : no(`${where} is not a node type this command knows, so --trigger is required.`, triggers.why ?? \"\");\n }\n\n if (requested) {\n return triggers.available.includes(requested)\n ? { ok: true, triggerId: requested }\n : no(\n `${where} never raises \\`${requested}\\`, so a side effect carrying it would be written, pass every check, and never run.`,\n raises,\n );\n }\n\n return triggers.completion\n ? { ok: true, triggerId: triggers.completion }\n : no(`${where} has no trigger a side effect can answer.`, raises);\n}\n\n/**\n * The first `se-{type}-{n}` nobody is using.\n *\n * Counting the same-type side effects instead was wrong whenever the numbering\n * had a gap — a form holding `se-hubspotForm-1` and `se-hubspotForm-3`, or one\n * where `se-meta-1` was deleted and `se-meta-2` left behind. The count then\n * names an id that already exists and the command refuses, which is the one\n * outcome a skeleton-minting command should never produce for a form it can see\n * in full.\n */\nexport function freeSideEffectId(type: string, taken: ReadonlySet<string>): string {\n for (let n = 1; ; n++) {\n const candidate = `se-${type}-${n}`;\n if (!taken.has(candidate)) return candidate;\n }\n}\n\n/**\n * The pixel already reporting this step's moment to the same platform, if any.\n *\n * Only pixel types (those fed a tag ref) can double-count: two emails or two\n * CRMs on one step are a real need.\n */\nexport function sameTrackingSideEffect(node: AnyRecord, type: string, triggerId: string): AnyRecord | null {\n if (flowCatalogEntry(\"side-effect\", type)?.owners?.tagIds !== \"tags\") return null;\n const effects = Array.isArray(node.sideEffects) ? (node.sideEffects as unknown[]) : [];\n for (const raw of effects) {\n const effect = raw as AnyRecord | null;\n if (effect?.type === type && effect.triggerId === triggerId) return effect;\n }\n return null;\n}\n\n/**\n * What a second pixel of one platform on one moment must not repeat.\n *\n * Two chats each wired GA4 `generate_lead` onto one submit and every lead\n * counted twice — but GA4 `sign_up` beside it is a second conversion, and the\n * skeleton added here has no event yet. So this warns instead of refusing;\n * the same event to the same tag is refused by the Form check at verify.\n */\nexport function secondPixelHint(node: AnyRecord, type: string, triggerId: string): string | null {\n const already = sameTrackingSideEffect(node, type, triggerId);\n if (!already) return null;\n const event = typeof already.eventName === \"string\" ? ` with event \"${already.eventName}\"` : \"\";\n return `\"${String(node.name ?? node.id)}\" already reports \\`${triggerId}\\` to ${type} as \"${String(already.id)}\"${event}. Give this one a different event; to change that conversion, edit \"${String(already.id)}\" and delete this one — the same event to the same tag counts every conversion twice.`;\n}\n\n/** The one row `requestFlowInputCall` needs, for an item this command just added unconfigured. */\nfunction pendingItem(\n target: \"node\" | \"sideEffect\",\n nodeId: string,\n kind: string,\n sideEffectId?: string,\n): FlowConfigStatus {\n return {\n target,\n nodeId,\n kind,\n status: `${kind} — not configured`,\n needsInput: true,\n ...(sideEffectId ? { sideEffectId } : {}),\n };\n}\n\nfunction configureHints(slug: string, nodeId: string, id: string, type: string, needsCard: boolean): string[] {\n if (!needsCard) return [];\n return [\n `Configure it: ${requestFlowInputCall(slug, pendingItem(\"sideEffect\", nodeId, type, id))}. Read the destination off that call's result.`,\n ];\n}\n\nregisterSchema({\n command: \"flows.add-side-effect\",\n description:\n \"Add a side effect to a step with a valid skeleton — encryptedConfig:null for a CRM, a tagIds slot for a pixel, and no oauthProviderId key. Then set where it sends with `baker flows connect` (an email: --email/--subject, written by you); only a typed secret goes to request_flow_input.\",\n args: {\n slug: { type: \"positional\", description: \"Form slug\", required: true },\n node: { type: \"string\", description: \"Id of the step that fires it\", required: true },\n type: { type: \"string\", description: \"Side-effect type (see: baker flows schema side-effect)\", required: true },\n id: { type: \"string\", description: \"Side-effect id. Defaults to se-{type}-{n}.\", required: false },\n trigger: {\n type: \"string\",\n description:\n \"triggerId. Defaults to the moment the step named by --node completes, which is a different id per node type. Pass this only for a non-completion moment (a HubSpot form's onFormReady, a Calendly page view, one of several iframe events); an id the step never raises is refused.\",\n required: false,\n },\n },\n});\n\nexport const addSideEffectCommand = defineCommand({\n meta: {\n name: \"add-side-effect\",\n description:\n \"Add a side effect to a step, with the skeleton its type requires. Example: baker flows add-side-effect contact --node <id> --type googleSpreadsheet\",\n },\n args: {\n slug: { type: \"positional\", description: \"Form slug\", required: true },\n node: { type: \"string\", description: \"Id of the step that fires it\", required: true },\n type: { type: \"string\", description: \"Side-effect type\", required: true },\n id: { type: \"string\", description: \"Side-effect id (default se-{type}-{n})\" },\n trigger: {\n type: \"string\",\n description: \"triggerId, for a non-completion moment. Default: whatever the step named by --node raises\",\n },\n },\n run: ({ args }) => {\n const slug = String(args.slug);\n const type = String(args.type);\n const entry = flowCatalogEntry(\"side-effect\", type) ?? unknownType(\"side-effect\", type);\n\n const tree = readFlowTree(slug);\n const nodes = walkNodes(tree);\n const node = nodes.find((candidate) => candidate.id === String(args.node));\n if (!node) {\n writeJson({\n ok: false,\n error: {\n code: \"NOT_FOUND\",\n message: `No node with id \"${args.node}\" in \"${slug}\".`,\n fix: `Nodes in this form: ${nodes.map((candidate) => `${candidate.id} (${candidate.name})`).join(\", \")}`,\n },\n });\n process.exit(1);\n }\n\n if (!Array.isArray(node.sideEffects)) node.sideEffects = [];\n const existing = node.sideEffects as AnyRecord[];\n const takenIds = new Set(\n nodes.flatMap((n) => ((n.sideEffects as AnyRecord[] | undefined) ?? []).map((se) => String(se?.id ?? \"\"))),\n );\n const id = args.id ? String(args.id) : freeSideEffectId(type, takenIds);\n\n // Only an id the caller chose can still collide — the generated one is free\n // by construction.\n if (takenIds.has(id)) {\n writeJson({\n ok: false,\n error: {\n code: \"VALIDATION_ERROR\",\n message: `\"${slug}\" already has a side effect with id \"${id}\".`,\n fix: `Drop --id to be given a free one (${freeSideEffectId(type, takenIds)}), or pick another.`,\n },\n });\n process.exit(1);\n }\n\n const trigger = resolveTrigger(node, args.trigger ? String(args.trigger) : undefined);\n if (!trigger.ok) {\n writeJson({\n ok: false,\n error: { code: \"VALIDATION_ERROR\", message: trigger.message, ...(trigger.fix ? { fix: trigger.fix } : {}) },\n });\n process.exit(1);\n }\n const triggerId = trigger.triggerId;\n\n const secondPixel = secondPixelHint(node, type, triggerId);\n\n const sideEffect = concrete(entry.skeleton, { id, triggerId });\n existing.push(sideEffect);\n writeFlowTree(slug, tree);\n\n const needsUser = Object.entries(entry.owners ?? {}).filter(([, owner]) => owner !== \"agent\");\n writeJson({\n ok: true,\n data: { slug, nodeId: node.id, sideEffectId: id, type, triggerId, path: flowDataPath(slug) },\n hints: [\n `Fires on \\`${triggerId}\\` — the moment \"${String(node.name ?? node.id)}\" raises. A side effect only runs when its triggerId is the one its own step raises, so this is set from the step, never from the side-effect type.`,\n // A pixel side effect is the thing most often mistaken for \"setting the\n // conversion\". It tells the ad platform; it tells Baker nothing, and a\n // Form can fire every pixel it has while every Baker report says it\n // converted nobody.\n ...(needsUser.some(([, owner]) => owner === \"tags\")\n ? [\n `This reports the conversion to ${type}. It does NOT make Baker count anything: what Baker counts is a named event, set with \\`baker analytics conversions --flow ${slug}\\`. Do both — they are two different systems asked the same question.`,\n ]\n : []),\n ...(secondPixel ? [secondPixel] : []),\n ...configureHints(\n slug,\n String(node.id),\n id,\n type,\n needsUser.some(([, owner]) => owner === \"request_flow_input\" || owner === \"connect\"),\n ),\n ...(needsUser.some(([, owner]) => owner === \"tags\")\n ? [\n \"Fill `tagIds` with a real ref from `baker tags list`, or stage the tag first with the `tags` skill. Never invent one.\",\n ]\n : []),\n ...(entry.gotcha ? [entry.gotcha] : []),\n ],\n });\n },\n});\n"],"mappings":"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","names":["node"]}
@@ -29,12 +29,12 @@ Full guides: __tooling__/docs/tools/baker/ads-<platform>.md (google|meta|linkedi
29
29
  subCommands: {
30
30
  google: () => import("./google-M7KEXVK5.js").then((m) => m.googleCommand),
31
31
  meta: () => import("./meta-A7KM6TF5.js").then((m) => m.metaCommand),
32
- linkedin: () => import("./linkedin-FFSDSGGS.js").then((m) => m.linkedinCommand),
33
- x: () => import("./x-BFSKFCZD.js").then((m) => m.xCommand),
32
+ linkedin: () => import("./linkedin-4FNKZNIR.js").then((m) => m.linkedinCommand),
33
+ x: () => import("./x-FBWHL3PL.js").then((m) => m.xCommand),
34
34
  chatgpt: () => import("./chatgpt-QNUN63YS.js").then((m) => m.chatgptCommand)
35
35
  }
36
36
  });
37
37
  export {
38
38
  adsCommand
39
39
  };
40
- //# sourceMappingURL=ads-C47NA2HH.js.map
40
+ //# sourceMappingURL=ads-6MXVIV62.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  advertisersHints
3
- } from "./chunk-OZRUJVIQ.js";
3
+ } from "./chunk-355DHOHD.js";
4
4
  import {
5
5
  RESEARCH_DATA_NOTE,
6
6
  handleResearchError,
@@ -13,7 +13,7 @@ import {
13
13
  warnDefaults
14
14
  } from "./chunk-LIQ4SQ2T.js";
15
15
  import "./chunk-XCM6XWOB.js";
16
- import "./chunk-XF4JUKVF.js";
16
+ import "./chunk-BAUSWB7O.js";
17
17
  import "./chunk-GXDLWBOY.js";
18
18
  import "./chunk-TEINLN64.js";
19
19
  import "./chunk-ZJWUBJYQ.js";
@@ -117,4 +117,4 @@ Examples:
117
117
  export {
118
118
  advertisersCommand
119
119
  };
120
- //# sourceMappingURL=advertisers-AE75CGVE.js.map
120
+ //# sourceMappingURL=advertisers-JG4DZ6SB.js.map
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  flowEventKeys,
3
3
  flowNodes
4
- } from "./chunk-Y6O7EWYY.js";
4
+ } from "./chunk-YCOP4FGJ.js";
5
5
  import {
6
6
  flowDataPath,
7
7
  flowExists,
8
8
  listFlowSlugs,
9
9
  readFlowTree
10
- } from "./chunk-YRQYA2LR.js";
10
+ } from "./chunk-Q4JYX424.js";
11
11
  import {
12
12
  peopleArgs,
13
13
  peopleLimitError
@@ -19,7 +19,7 @@ import {
19
19
  INGEST_ARRIVALS_MAX,
20
20
  eventIngestUrl,
21
21
  ingestBrief
22
- } from "./chunk-7YCRFMXF.js";
22
+ } from "./chunk-UNI5AASR.js";
23
23
  import "./chunk-GRQ2AXDX.js";
24
24
  import {
25
25
  ConversionArgsError,
@@ -47,7 +47,7 @@ import {
47
47
  } from "./chunk-VFIOJD5M.js";
48
48
  import {
49
49
  flowNodeTriggers
50
- } from "./chunk-XF4JUKVF.js";
50
+ } from "./chunk-BAUSWB7O.js";
51
51
  import "./chunk-GXDLWBOY.js";
52
52
  import "./chunk-TEINLN64.js";
53
53
  import "./chunk-ZJWUBJYQ.js";
@@ -1941,7 +1941,7 @@ Full guide: __tooling__/docs/tools/baker/analytics.md`
1941
1941
  tracking: trackingCommand,
1942
1942
  arrivals: arrivalsCommand,
1943
1943
  "sending-events": sendingEventsCommand,
1944
- sources: () => import("./sources-AMI2AWKZ.js").then((m) => m.sourcesCommand),
1944
+ sources: () => import("./sources-7FCRKPXJ.js").then((m) => m.sourcesCommand),
1945
1945
  "website-tag": websiteTagCommand,
1946
1946
  sites: sitesCommand,
1947
1947
  presets: presetsCommand
@@ -1955,4 +1955,4 @@ export {
1955
1955
  requestBody,
1956
1956
  sendingEventsAddress
1957
1957
  };
1958
- //# sourceMappingURL=analytics-FKCXIMPO.js.map
1958
+ //# sourceMappingURL=analytics-IMYVNQIX.js.map
@@ -4,7 +4,7 @@ import {
4
4
  handleLinkedinError,
5
5
  resolveAccountIdArg,
6
6
  todayIso
7
- } from "./chunk-CSYSX4D2.js";
7
+ } from "./chunk-3URK7DAA.js";
8
8
  import {
9
9
  writeAdsJson,
10
10
  writeAdsOutput
@@ -12,7 +12,7 @@ import {
12
12
  import {
13
13
  NO_CACHE_ARG
14
14
  } from "./chunk-X7ZODEXJ.js";
15
- import "./chunk-XF4JUKVF.js";
15
+ import "./chunk-BAUSWB7O.js";
16
16
  import "./chunk-GXDLWBOY.js";
17
17
  import "./chunk-TEINLN64.js";
18
18
  import "./chunk-ZJWUBJYQ.js";
@@ -430,4 +430,4 @@ Examples \u2014 common AI questions:
430
430
  export {
431
431
  analyticsCommand
432
432
  };
433
- //# sourceMappingURL=analytics-FPWQQGRM.js.map
433
+ //# sourceMappingURL=analytics-RNEUAKC4.js.map
@@ -2,8 +2,8 @@ import {
2
2
  failApi,
3
3
  failValidation,
4
4
  isTempId
5
- } from "./chunk-3HJLHTWP.js";
6
- import "./chunk-XF4JUKVF.js";
5
+ } from "./chunk-EIVYFZ4N.js";
6
+ import "./chunk-BAUSWB7O.js";
7
7
  import "./chunk-GXDLWBOY.js";
8
8
  import "./chunk-TEINLN64.js";
9
9
  import "./chunk-ZJWUBJYQ.js";
@@ -74,4 +74,4 @@ export {
74
74
  assignBody,
75
75
  assignCommand
76
76
  };
77
- //# sourceMappingURL=assign-ABN2AQ4J.js.map
77
+ //# sourceMappingURL=assign-46TXQRT5.js.map
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  handleLinkedinError,
3
3
  resolveAccountIdArg
4
- } from "./chunk-CSYSX4D2.js";
4
+ } from "./chunk-3URK7DAA.js";
5
5
  import {
6
6
  writeAdsJson
7
7
  } from "./chunk-VFIOJD5M.js";
8
8
  import {
9
9
  NO_CACHE_ARG
10
10
  } from "./chunk-X7ZODEXJ.js";
11
- import "./chunk-XF4JUKVF.js";
11
+ import "./chunk-BAUSWB7O.js";
12
12
  import "./chunk-GXDLWBOY.js";
13
13
  import "./chunk-TEINLN64.js";
14
14
  import "./chunk-ZJWUBJYQ.js";
@@ -91,4 +91,4 @@ Examples:
91
91
  export {
92
92
  audienceSizeCommand
93
93
  };
94
- //# sourceMappingURL=audience-size-GNBJY35X.js.map
94
+ //# sourceMappingURL=audience-size-5TNQO3IL.js.map
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  handleLinkedinError,
3
3
  resolveAccountIdArg
4
- } from "./chunk-CSYSX4D2.js";
4
+ } from "./chunk-3URK7DAA.js";
5
5
  import {
6
6
  writeAdsJson
7
7
  } from "./chunk-VFIOJD5M.js";
8
8
  import {
9
9
  NO_CACHE_ARG
10
10
  } from "./chunk-X7ZODEXJ.js";
11
- import "./chunk-XF4JUKVF.js";
11
+ import "./chunk-BAUSWB7O.js";
12
12
  import "./chunk-GXDLWBOY.js";
13
13
  import "./chunk-TEINLN64.js";
14
14
  import "./chunk-ZJWUBJYQ.js";
@@ -148,4 +148,4 @@ Examples:
148
148
  export {
149
149
  auditCommand
150
150
  };
151
- //# sourceMappingURL=audit-3VS63TBW.js.map
151
+ //# sourceMappingURL=audit-XRE7XH3Q.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  noSerpRowsHints
3
- } from "./chunk-OZRUJVIQ.js";
3
+ } from "./chunk-355DHOHD.js";
4
4
  import {
5
5
  RESEARCH_DATA_NOTE,
6
6
  handleResearchError,
@@ -13,7 +13,7 @@ import {
13
13
  warnDefaults
14
14
  } from "./chunk-LIQ4SQ2T.js";
15
15
  import "./chunk-XCM6XWOB.js";
16
- import "./chunk-XF4JUKVF.js";
16
+ import "./chunk-BAUSWB7O.js";
17
17
  import "./chunk-GXDLWBOY.js";
18
18
  import "./chunk-TEINLN64.js";
19
19
  import "./chunk-ZJWUBJYQ.js";
@@ -108,4 +108,4 @@ Examples:
108
108
  export {
109
109
  autocompleteCommand
110
110
  };
111
- //# sourceMappingURL=autocomplete-VS3XG3B7.js.map
111
+ //# sourceMappingURL=autocomplete-2ZWSQ6QQ.js.map
@@ -26,13 +26,13 @@ Full guide: __tooling__/docs/tools/baker/avatars.md`
26
26
  subCommands: {
27
27
  list: () => import("./list-P7NAFN6J.js").then((m) => m.listCommand),
28
28
  get: () => import("./get-YIHTAMRT.js").then((m) => m.getCommand),
29
- create: () => import("./create-BJNMO6HT.js").then((m) => m.createCommand),
30
- research: () => import("./research-YOGE7GT2.js").then((m) => m.researchCommand),
31
- update: () => import("./update-D6DJC6T7.js").then((m) => m.updateCommand),
29
+ create: () => import("./create-EOLNJGAX.js").then((m) => m.createCommand),
30
+ research: () => import("./research-HUMDT7T4.js").then((m) => m.researchCommand),
31
+ update: () => import("./update-WSG6RVFX.js").then((m) => m.updateCommand),
32
32
  delete: () => import("./delete-A5XD52K4.js").then((m) => m.deleteCommand)
33
33
  }
34
34
  });
35
35
  export {
36
36
  avatarsCommand
37
37
  };
38
- //# sourceMappingURL=avatars-EKCKHCC3.js.map
38
+ //# sourceMappingURL=avatars-M6NSD3KS.js.map
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  handleLinkedinError,
3
3
  resolveAccountIdArg
4
- } from "./chunk-CSYSX4D2.js";
4
+ } from "./chunk-3URK7DAA.js";
5
5
  import {
6
6
  writeAdsJson
7
7
  } from "./chunk-VFIOJD5M.js";
8
8
  import {
9
9
  NO_CACHE_ARG
10
10
  } from "./chunk-X7ZODEXJ.js";
11
- import "./chunk-XF4JUKVF.js";
11
+ import "./chunk-BAUSWB7O.js";
12
12
  import "./chunk-GXDLWBOY.js";
13
13
  import "./chunk-TEINLN64.js";
14
14
  import "./chunk-ZJWUBJYQ.js";
@@ -96,4 +96,4 @@ Examples:
96
96
  export {
97
97
  bidPricingCommand
98
98
  };
99
- //# sourceMappingURL=bid-pricing-Q72B65AY.js.map
99
+ //# sourceMappingURL=bid-pricing-OIVPZCWW.js.map
@@ -13,10 +13,10 @@ Subcommands:
13
13
  baker brand fonts \u2014 verify the brand's typefaces really load, and self-host them into src/brand/fonts/`
14
14
  },
15
15
  subCommands: {
16
- fonts: () => import("./fonts-EMMX3KII.js").then((m) => m.fontsCommand)
16
+ fonts: () => import("./fonts-THAAZY7Z.js").then((m) => m.fontsCommand)
17
17
  }
18
18
  });
19
19
  export {
20
20
  brandCommand
21
21
  };
22
- //# sourceMappingURL=brand-C6PFGGQN.js.map
22
+ //# sourceMappingURL=brand-YDNX7LYQ.js.map
@@ -18,12 +18,12 @@ import {
18
18
  } from "./chunk-4QEY2L6U.js";
19
19
  import {
20
20
  withDefinitions
21
- } from "./chunk-5ZDLTE5T.js";
21
+ } from "./chunk-64WGDUXH.js";
22
22
  import {
23
23
  researchCustomers
24
- } from "./chunk-HBTF25YG.js";
25
- import "./chunk-S77PZVYM.js";
26
- import "./chunk-OZRUJVIQ.js";
24
+ } from "./chunk-7WD2RW2R.js";
25
+ import "./chunk-WDZOVF6P.js";
26
+ import "./chunk-355DHOHD.js";
27
27
  import "./chunk-WNFIJAUO.js";
28
28
  import "./chunk-NFSLRRIE.js";
29
29
  import "./chunk-ERSX3MKH.js";
@@ -44,8 +44,8 @@ import "./chunk-VAJBWA2U.js";
44
44
  import "./chunk-HRYOZUSK.js";
45
45
  import "./chunk-VVZBBKRC.js";
46
46
  import "./chunk-YBMVHGY3.js";
47
- import "./chunk-3HJLHTWP.js";
48
- import "./chunk-XF4JUKVF.js";
47
+ import "./chunk-EIVYFZ4N.js";
48
+ import "./chunk-BAUSWB7O.js";
49
49
  import "./chunk-GXDLWBOY.js";
50
50
  import "./chunk-TEINLN64.js";
51
51
  import "./chunk-ZJWUBJYQ.js";
@@ -474,4 +474,4 @@ export {
474
474
  briefHints,
475
475
  whatWorks
476
476
  };
477
- //# sourceMappingURL=brief-UO52ZHFI.js.map
477
+ //# sourceMappingURL=brief-EK6ULGXD.js.map