@koda-sl/baker-cli 0.496.0 → 0.497.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 (841) hide show
  1. package/README.md +25 -4
  2. package/dist/account-ZKJFX2GK.js +80 -0
  3. package/dist/account-ZKJFX2GK.js.map +1 -0
  4. package/dist/account-users-SZCYHVBM.js +62 -0
  5. package/dist/account-users-SZCYHVBM.js.map +1 -0
  6. package/dist/accounts-5DFYKYSM.js +78 -0
  7. package/dist/accounts-5DFYKYSM.js.map +1 -0
  8. package/dist/accounts-OGAIQNE6.js +612 -0
  9. package/dist/accounts-OGAIQNE6.js.map +1 -0
  10. package/dist/actions-FMNJSOBA.js +55 -0
  11. package/dist/activecampaign-LYYYH6XD.js +936 -0
  12. package/dist/activecampaign-LYYYH6XD.js.map +1 -0
  13. package/dist/add-AOQLZRPC.js +80 -0
  14. package/dist/add-AOQLZRPC.js.map +1 -0
  15. package/dist/add-HWXEPSZF.js +105 -0
  16. package/dist/add-HWXEPSZF.js.map +1 -0
  17. package/dist/add-VDZPGZF5.js +148 -0
  18. package/dist/add-VDZPGZF5.js.map +1 -0
  19. package/dist/add-YYP3O536.js +303 -0
  20. package/dist/add-YYP3O536.js.map +1 -0
  21. package/dist/ads-OLXSDPD6.js +40 -0
  22. package/dist/advertisers-STYAIX72.js +121 -0
  23. package/dist/advertisers-STYAIX72.js.map +1 -0
  24. package/dist/analytics-6WBK4VFO.js +1977 -0
  25. package/dist/analytics-6WBK4VFO.js.map +1 -0
  26. package/dist/analytics-DHB325DM.js +434 -0
  27. package/dist/analytics-DHB325DM.js.map +1 -0
  28. package/dist/assign-BFXHYTMF.js +78 -0
  29. package/dist/assign-BFXHYTMF.js.map +1 -0
  30. package/dist/audience-size-XWHZV2GH.js +74 -0
  31. package/dist/audience-size-XWHZV2GH.js.map +1 -0
  32. package/dist/audit-IYGRU7LD.js +152 -0
  33. package/dist/audit-IYGRU7LD.js.map +1 -0
  34. package/dist/autocomplete-SDDSJTAF.js +112 -0
  35. package/dist/autocomplete-SDDSJTAF.js.map +1 -0
  36. package/dist/avatars-I4H3NMEJ.js +38 -0
  37. package/dist/bid-pricing-OVYBDRMV.js +101 -0
  38. package/dist/bid-pricing-OVYBDRMV.js.map +1 -0
  39. package/dist/brand-3V7ECY7D.js +22 -0
  40. package/dist/brief-U2W7KMFC.js +539 -0
  41. package/dist/brief-U2W7KMFC.js.map +1 -0
  42. package/dist/campaign-groups-FJHBVUA3.js +97 -0
  43. package/dist/campaign-groups-FJHBVUA3.js.map +1 -0
  44. package/dist/campaign-writes-XKYYMZML.js +166 -0
  45. package/dist/campaign-writes-XKYYMZML.js.map +1 -0
  46. package/dist/campaigns-E5UW4I3X.js +111 -0
  47. package/dist/campaigns-E5UW4I3X.js.map +1 -0
  48. package/dist/campaigns-MCB76NPQ.js +107 -0
  49. package/dist/canvas-JCNKMGCG.js +46 -0
  50. package/dist/capabilities-CLTZCXCZ.js +145 -0
  51. package/dist/capabilities-CLTZCXCZ.js.map +1 -0
  52. package/dist/chatgpt-XFZ42NXC.js +47 -0
  53. package/dist/chats-DTJSBDWO.js +277 -0
  54. package/dist/chats-DTJSBDWO.js.map +1 -0
  55. package/dist/check-CZTS64AW.js +105 -0
  56. package/dist/check-CZTS64AW.js.map +1 -0
  57. package/dist/chunk-2YTBPRRG.js +207 -0
  58. package/dist/chunk-3SNCMEJB.js +97 -0
  59. package/dist/chunk-7QGFO35A.js +23 -0
  60. package/dist/chunk-AV7ALENU.js +191 -0
  61. package/dist/chunk-BRLFQ4VX.js +604 -0
  62. package/dist/chunk-CAZGM2NX.js +92 -0
  63. package/dist/chunk-CAZGM2NX.js.map +1 -0
  64. package/dist/chunk-DJE7UXYT.js +831 -0
  65. package/dist/chunk-EFWXYUSK.js +139 -0
  66. package/dist/chunk-EONSZAZB.js +3868 -0
  67. package/dist/chunk-FALJQCWL.js +661 -0
  68. package/dist/chunk-FALJQCWL.js.map +1 -0
  69. package/dist/chunk-FG3MV2XM.js +89 -0
  70. package/dist/chunk-FKG476GH.js +392 -0
  71. package/dist/chunk-FUGQSIYG.js +297 -0
  72. package/dist/chunk-GZ4A2VYW.js +39 -0
  73. package/dist/chunk-GZ4A2VYW.js.map +1 -0
  74. package/dist/chunk-HPLHAHG5.js +275 -0
  75. package/dist/chunk-I24YT2KG.js +122 -0
  76. package/dist/chunk-IFDZZOUC.js +903 -0
  77. package/dist/chunk-JVVUI55M.js +455 -0
  78. package/dist/chunk-KKSHEPBY.js +363 -0
  79. package/dist/chunk-KQ7RCLGC.js +547 -0
  80. package/dist/chunk-L7WMS5PW.js +172 -0
  81. package/dist/chunk-LBRO4MTL.js +19 -0
  82. package/dist/chunk-LNRPOULW.js +224 -0
  83. package/dist/chunk-LX6WC2XZ.js +942 -0
  84. package/dist/chunk-MMGTJBM6.js +142 -0
  85. package/dist/chunk-NZS3KEQ2.js +97 -0
  86. package/dist/chunk-NZS3KEQ2.js.map +1 -0
  87. package/dist/chunk-O37VU7FG.js +6799 -0
  88. package/dist/chunk-O37VU7FG.js.map +1 -0
  89. package/dist/chunk-OEZYSL3U.js +51 -0
  90. package/dist/chunk-OOVHBMQB.js +103 -0
  91. package/dist/chunk-PTH7VWKK.js +159 -0
  92. package/dist/chunk-PYD6IGW6.js +401 -0
  93. package/dist/chunk-PYD6IGW6.js.map +1 -0
  94. package/dist/chunk-QE2E4EYJ.js +349 -0
  95. package/dist/chunk-QE2E4EYJ.js.map +1 -0
  96. package/dist/chunk-QZF4BVKL.js +66 -0
  97. package/dist/chunk-RITUSBYO.js +61 -0
  98. package/dist/chunk-SSTL3A7Z.js +206 -0
  99. package/dist/chunk-SZNGQ2GF.js +64 -0
  100. package/dist/chunk-SZNGQ2GF.js.map +1 -0
  101. package/dist/chunk-TD4SO6TR.js +169 -0
  102. package/dist/chunk-UZ4RTOFG.js +91 -0
  103. package/dist/chunk-VAX7PFQV.js +592 -0
  104. package/dist/chunk-VDRSZK4P.js +494 -0
  105. package/dist/chunk-VNU2EYD4.js +344 -0
  106. package/dist/chunk-WT4WDIXA.js +156 -0
  107. package/dist/chunk-XEX23CIB.js +160 -0
  108. package/dist/chunk-XXDF25BW.js +8939 -0
  109. package/dist/chunk-YJ3LSFMX.js +249 -0
  110. package/dist/chunk-YVK5RT3B.js +197 -0
  111. package/dist/chunk-YWWRLZUR.js +433 -0
  112. package/dist/chunk-Z4S5BCVZ.js +57 -0
  113. package/dist/chunk-ZYGK7GAK.js +1079 -0
  114. package/dist/claim-TSFPWTQY.js +198 -0
  115. package/dist/claim-TSFPWTQY.js.map +1 -0
  116. package/dist/cli.js +38 -37
  117. package/dist/cli.js.map +1 -1
  118. package/dist/companies-P7FZNJQV.js +196 -0
  119. package/dist/companies-P7FZNJQV.js.map +1 -0
  120. package/dist/complete-SYDIHMD5.js +82 -0
  121. package/dist/complete-SYDIHMD5.js.map +1 -0
  122. package/dist/connect-COS6G45S.js +43 -0
  123. package/dist/conversation-UJOWMJRH.js +94 -0
  124. package/dist/conversation-UJOWMJRH.js.map +1 -0
  125. package/dist/conversions-ONOIEILU.js +138 -0
  126. package/dist/conversions-ONOIEILU.js.map +1 -0
  127. package/dist/create-DPQRYQXK.js +208 -0
  128. package/dist/create-DPQRYQXK.js.map +1 -0
  129. package/dist/create-JD76Z4A4.js +60 -0
  130. package/dist/create-JD76Z4A4.js.map +1 -0
  131. package/dist/create-NOT3HGP2.js +133 -0
  132. package/dist/create-NOT3HGP2.js.map +1 -0
  133. package/dist/create-ZYEB7SHF.js +236 -0
  134. package/dist/create-ZYEB7SHF.js.map +1 -0
  135. package/dist/creatives-LRSELC7Y.js +221 -0
  136. package/dist/creatives-LRSELC7Y.js.map +1 -0
  137. package/dist/creatives-SEQHJD2M.js +58 -0
  138. package/dist/credentials-LHPTUVVA.js +288 -0
  139. package/dist/credentials-LHPTUVVA.js.map +1 -0
  140. package/dist/critique-Q7GSZ5RP.js +1459 -0
  141. package/dist/critique-Q7GSZ5RP.js.map +1 -0
  142. package/dist/critique-RR2XOQCE.js +228 -0
  143. package/dist/critique-RR2XOQCE.js.map +1 -0
  144. package/dist/crm-J7EU32PL.js +319 -0
  145. package/dist/crm-J7EU32PL.js.map +1 -0
  146. package/dist/crm-MC444ZVU.js +225 -0
  147. package/dist/crm-MC444ZVU.js.map +1 -0
  148. package/dist/customers-LMSX33FO.js +57 -0
  149. package/dist/delete-BQBVATMF.js +55 -0
  150. package/dist/delete-BQBVATMF.js.map +1 -0
  151. package/dist/delete-K7A3AUPH.js +65 -0
  152. package/dist/delete-K7A3AUPH.js.map +1 -0
  153. package/dist/delete-VV2ICIHF.js +67 -0
  154. package/dist/delete-VV2ICIHF.js.map +1 -0
  155. package/dist/demographics-7GWUXXS6.js +139 -0
  156. package/dist/demographics-7GWUXXS6.js.map +1 -0
  157. package/dist/discard-3CLZ4DPD.js +67 -0
  158. package/dist/discard-3CLZ4DPD.js.map +1 -0
  159. package/dist/domain-ZS74BSE6.js +99 -0
  160. package/dist/domain-ZS74BSE6.js.map +1 -0
  161. package/dist/draft-J3B33RAZ.js +308 -0
  162. package/dist/draft-J3B33RAZ.js.map +1 -0
  163. package/dist/draft-MZLWVX3D.js +218 -0
  164. package/dist/draft-MZLWVX3D.js.map +1 -0
  165. package/dist/draft-R56PIXCV.js +333 -0
  166. package/dist/draft-R56PIXCV.js.map +1 -0
  167. package/dist/experiment-7RJ5X2LL.js +1397 -0
  168. package/dist/experiments-NOSJJMYI.js +234 -0
  169. package/dist/experiments-NOSJJMYI.js.map +1 -0
  170. package/dist/facets-E6SHYUAI.js +115 -0
  171. package/dist/facets-E6SHYUAI.js.map +1 -0
  172. package/dist/feedback-HXCQBV7S.js +107 -0
  173. package/dist/feedback-HXCQBV7S.js.map +1 -0
  174. package/dist/feedback-record-GXPYXNT6.js +261 -0
  175. package/dist/feedback-record-GXPYXNT6.js.map +1 -0
  176. package/dist/fetch-HMUGSRE4.js +177 -0
  177. package/dist/fetch-HMUGSRE4.js.map +1 -0
  178. package/dist/find-2EPXK5RF.js +134 -0
  179. package/dist/fit-W7UNFZT5.js +63 -0
  180. package/dist/flows-SO5J3M3X.js +248 -0
  181. package/dist/flows-SO5J3M3X.js.map +1 -0
  182. package/dist/fonts-N42UYWTX.js +37 -0
  183. package/dist/forecast-24LGJVLC.js +119 -0
  184. package/dist/forecast-24LGJVLC.js.map +1 -0
  185. package/dist/funnel-NYT36B3C.js +395 -0
  186. package/dist/funnel-NYT36B3C.js.map +1 -0
  187. package/dist/ga4-6EIQC2TG.js +55 -0
  188. package/dist/get-KAGO4EC5.js +80 -0
  189. package/dist/get-KAGO4EC5.js.map +1 -0
  190. package/dist/get-PZX27LQY.js +38 -0
  191. package/dist/get-PZX27LQY.js.map +1 -0
  192. package/dist/get-R5JAFHTH.js +57 -0
  193. package/dist/get-R5JAFHTH.js.map +1 -0
  194. package/dist/google-O5OI6QFU.js +136 -0
  195. package/dist/google-ads-6X4BHGUR.js +196 -0
  196. package/dist/google-ads-6X4BHGUR.js.map +1 -0
  197. package/dist/gsc-BM3T2GDL.js +30 -0
  198. package/dist/history-LGOWYLBE.js +134 -0
  199. package/dist/history-LGOWYLBE.js.map +1 -0
  200. package/dist/hubspot-LJB3ETUT.js +780 -0
  201. package/dist/hubspot-LJB3ETUT.js.map +1 -0
  202. package/dist/icon-B7DG53S5.js +137 -0
  203. package/dist/ideas-DYN2DMFN.js +41 -0
  204. package/dist/images-EQCUXEHF.js +92 -0
  205. package/dist/ingest-B46AY3QU.js +24 -0
  206. package/dist/ingest-T7ZS2R4U.js +108 -0
  207. package/dist/ingest-T7ZS2R4U.js.map +1 -0
  208. package/dist/inspect-BSNGAT2S.js +190 -0
  209. package/dist/inspect-BSNGAT2S.js.map +1 -0
  210. package/dist/inspiration-TCCKM4R7.js +53 -0
  211. package/dist/keyword-metrics-KNTIN4ZK.js +198 -0
  212. package/dist/keyword-metrics-KNTIN4ZK.js.map +1 -0
  213. package/dist/keywords-for-site-S4MXGXWR.js +129 -0
  214. package/dist/keywords-for-site-S4MXGXWR.js.map +1 -0
  215. package/dist/landing-WVPA7NBR.js +28 -0
  216. package/dist/leads-EINV5FK3.js +113 -0
  217. package/dist/leads-EINV5FK3.js.map +1 -0
  218. package/dist/learn-7Z2VR6MS.js +205 -0
  219. package/dist/learn-7Z2VR6MS.js.map +1 -0
  220. package/dist/line-item-writes-Z3TIB5KZ.js +209 -0
  221. package/dist/line-item-writes-Z3TIB5KZ.js.map +1 -0
  222. package/dist/line-items-OEWYOPFP.js +103 -0
  223. package/dist/link-KYHUIPJE.js +65 -0
  224. package/dist/link-KYHUIPJE.js.map +1 -0
  225. package/dist/linkedin-JVB4HXJC.js +1314 -0
  226. package/dist/linkedin-JVB4HXJC.js.map +1 -0
  227. package/dist/list-EORTO73V.js +93 -0
  228. package/dist/list-EORTO73V.js.map +1 -0
  229. package/dist/list-QQVLURKH.js +152 -0
  230. package/dist/list-QQVLURKH.js.map +1 -0
  231. package/dist/list-QWGKRUSM.js +65 -0
  232. package/dist/list-QWGKRUSM.js.map +1 -0
  233. package/dist/list-WRBWQASJ.js +50 -0
  234. package/dist/list-Z6NMNK3T.js +304 -0
  235. package/dist/list-Z6NMNK3T.js.map +1 -0
  236. package/dist/log-RUMKYPYK.js +93 -0
  237. package/dist/log-RUMKYPYK.js.map +1 -0
  238. package/dist/logo-QTSBKP2J.js +18 -0
  239. package/dist/make-IJGCQA7C.js +1354 -0
  240. package/dist/make-IJGCQA7C.js.map +1 -0
  241. package/dist/map-QZHIJFQT.js +434 -0
  242. package/dist/map-QZHIJFQT.js.map +1 -0
  243. package/dist/mcp-ZH2XDV5P.js +715 -0
  244. package/dist/mcp-ZH2XDV5P.js.map +1 -0
  245. package/dist/media-sources-SQ2RPDBO.js +35 -0
  246. package/dist/media-sources-SQ2RPDBO.js.map +1 -0
  247. package/dist/members-4YX7JEZM.js +45 -0
  248. package/dist/members-4YX7JEZM.js.map +1 -0
  249. package/dist/normalize-ABIWLRIT.js +142 -0
  250. package/dist/normalize-ABIWLRIT.js.map +1 -0
  251. package/dist/options-SVCQVTNE.js +123 -0
  252. package/dist/options-SVCQVTNE.js.map +1 -0
  253. package/dist/organization-FNKDC742.js +947 -0
  254. package/dist/organization-FNKDC742.js.map +1 -0
  255. package/dist/performance-HTU5FR2K.js +25 -0
  256. package/dist/posts-3DAPTBH2.js +34 -0
  257. package/dist/posts-3DAPTBH2.js.map +1 -0
  258. package/dist/promoted-tweet-writes-DD3CJNWW.js +181 -0
  259. package/dist/promoted-tweet-writes-DD3CJNWW.js.map +1 -0
  260. package/dist/promoted-tweets-TTWN5OMW.js +119 -0
  261. package/dist/publish-Z62KGDJ2.js +342 -0
  262. package/dist/publish-Z62KGDJ2.js.map +1 -0
  263. package/dist/reddit-6C3PT5CT.js +27 -0
  264. package/dist/refresh-HCQXVFVR.js +95 -0
  265. package/dist/refresh-HCQXVFVR.js.map +1 -0
  266. package/dist/refresh-ZCGH64OZ.js +42 -0
  267. package/dist/refresh-ZCGH64OZ.js.map +1 -0
  268. package/dist/release-FIHW2HCH.js +61 -0
  269. package/dist/release-FIHW2HCH.js.map +1 -0
  270. package/dist/remove-CBR7NVMI.js +51 -0
  271. package/dist/remove-CBR7NVMI.js.map +1 -0
  272. package/dist/remove-PUZP5GWN.js +49 -0
  273. package/dist/remove-PUZP5GWN.js.map +1 -0
  274. package/dist/reopen-EJGLRQWR.js +64 -0
  275. package/dist/reopen-EJGLRQWR.js.map +1 -0
  276. package/dist/rerun-TVBZXASH.js +91 -0
  277. package/dist/rerun-TVBZXASH.js.map +1 -0
  278. package/dist/research-L25D4WHQ.js +263 -0
  279. package/dist/research-L25D4WHQ.js.map +1 -0
  280. package/dist/research-YCMMQVK6.js +62 -0
  281. package/dist/reset-HKKCWKZ7.js +55 -0
  282. package/dist/reset-HKKCWKZ7.js.map +1 -0
  283. package/dist/reset-SRL6I6GP.js +55 -0
  284. package/dist/reset-SRL6I6GP.js.map +1 -0
  285. package/dist/resolve-POMTTAFR.js +122 -0
  286. package/dist/resolve-POMTTAFR.js.map +1 -0
  287. package/dist/retry-MEPTOAV2.js +61 -0
  288. package/dist/retry-MEPTOAV2.js.map +1 -0
  289. package/dist/retry-RNGM3KKA.js +63 -0
  290. package/dist/retry-RNGM3KKA.js.map +1 -0
  291. package/dist/revenue-X4KPTSAM.js +89 -0
  292. package/dist/revenue-X4KPTSAM.js.map +1 -0
  293. package/dist/rules-VK7YA23Q.js +97 -0
  294. package/dist/rules-VK7YA23Q.js.map +1 -0
  295. package/dist/rules-add-VG7AT6EG.js +463 -0
  296. package/dist/rules-add-VG7AT6EG.js.map +1 -0
  297. package/dist/run-DIDQSZU7.js +67 -0
  298. package/dist/run-DIDQSZU7.js.map +1 -0
  299. package/dist/run-SR7DJ7M5.js +66 -0
  300. package/dist/scaffold-ad-46GTFUMP.js +1512 -0
  301. package/dist/scaffold-ad-46GTFUMP.js.map +1 -0
  302. package/dist/scaffold-static-ad-U63V4UHR.js +1006 -0
  303. package/dist/scaffold-static-ad-U63V4UHR.js.map +1 -0
  304. package/dist/scaffold-video-4DNTURH6.js +884 -0
  305. package/dist/scaffold-video-4DNTURH6.js.map +1 -0
  306. package/dist/schedule-JO66N7XO.js +62 -0
  307. package/dist/schedule-JO66N7XO.js.map +1 -0
  308. package/dist/schedule-JZBIX6LH.js +67 -0
  309. package/dist/schedule-JZBIX6LH.js.map +1 -0
  310. package/dist/scheduled-agents-N63EZNY6.js +50 -0
  311. package/dist/schema-B2XANMEY.js +133 -0
  312. package/dist/schema-B2XANMEY.js.map +1 -0
  313. package/dist/schema-C6SGBNA6.js +69 -0
  314. package/dist/search-7GHS3OUZ.js +51 -0
  315. package/dist/search-7GHS3OUZ.js.map +1 -0
  316. package/dist/search-W5HZUJA2.js +175 -0
  317. package/dist/search-W5HZUJA2.js.map +1 -0
  318. package/dist/select-LMGLNFWB.js +102 -0
  319. package/dist/select-LMGLNFWB.js.map +1 -0
  320. package/dist/set-prompt-M5E3UZDM.js +194 -0
  321. package/dist/set-prompt-M5E3UZDM.js.map +1 -0
  322. package/dist/setup-links-ERBQSKAB.js +142 -0
  323. package/dist/setup-links-ERBQSKAB.js.map +1 -0
  324. package/dist/site-PNVFJRYK.js +178 -0
  325. package/dist/site-PNVFJRYK.js.map +1 -0
  326. package/dist/sources-DMZJPLKC.js +455 -0
  327. package/dist/sources-DMZJPLKC.js.map +1 -0
  328. package/dist/sources-HN3GCEDX.js +30 -0
  329. package/dist/stale-VWN25WTL.js +72 -0
  330. package/dist/stale-VWN25WTL.js.map +1 -0
  331. package/dist/stats-CVF6AC7R.js +34 -0
  332. package/dist/status-SF7DTPCJ.js +63 -0
  333. package/dist/status-SF7DTPCJ.js.map +1 -0
  334. package/dist/stock-4LPQ6SM7.js +179 -0
  335. package/dist/studio-NZ6WQ7OE.js +49 -0
  336. package/dist/suggest-WMMEQCUH.js +66 -0
  337. package/dist/suggest-WMMEQCUH.js.map +1 -0
  338. package/dist/sync-F7VNZLWY.js +55 -0
  339. package/dist/sync-F7VNZLWY.js.map +1 -0
  340. package/dist/sync-HVNDPBOD.js +55 -0
  341. package/dist/sync-HVNDPBOD.js.map +1 -0
  342. package/dist/sync-definition-CKEUYKWN.js +65 -0
  343. package/dist/tag-KTQ2FV5C.js +57 -0
  344. package/dist/tag-KTQ2FV5C.js.map +1 -0
  345. package/dist/tag-manager-FLXXLNKP.js +43 -0
  346. package/dist/tags-EUOOSAKN.js +26 -0
  347. package/dist/tags-KOMAP2G5.js +21 -0
  348. package/dist/tags-KOMAP2G5.js.map +1 -0
  349. package/dist/tags-TKXJGTR3.js +21 -0
  350. package/dist/tags-TKXJGTR3.js.map +1 -0
  351. package/dist/tags-VWIPDCUA.js +225 -0
  352. package/dist/tags-VWIPDCUA.js.map +1 -0
  353. package/dist/tags-XAB4HWGW.js +21 -0
  354. package/dist/tags-XAB4HWGW.js.map +1 -0
  355. package/dist/targeting-criteria-HE7K52WN.js +113 -0
  356. package/dist/targets-NA4XPDBF.js +104 -0
  357. package/dist/targets-NA4XPDBF.js.map +1 -0
  358. package/dist/testimonials-3Q5XM7JD.js +32 -0
  359. package/dist/top-companies-TKO4QGPJ.js +109 -0
  360. package/dist/top-companies-TKO4QGPJ.js.map +1 -0
  361. package/dist/translate-YVIZ5T44.js +605 -0
  362. package/dist/translate-YVIZ5T44.js.map +1 -0
  363. package/dist/triggers-QX7VW7UO.js +143 -0
  364. package/dist/triggers-QX7VW7UO.js.map +1 -0
  365. package/dist/unlink-64SRPUNG.js +68 -0
  366. package/dist/unlink-64SRPUNG.js.map +1 -0
  367. package/dist/unstage-5X2MOUMF.js +86 -0
  368. package/dist/unstage-5X2MOUMF.js.map +1 -0
  369. package/dist/update-22ZBHURE.js +81 -0
  370. package/dist/update-22ZBHURE.js.map +1 -0
  371. package/dist/update-2LTPSGWT.js +99 -0
  372. package/dist/update-2LTPSGWT.js.map +1 -0
  373. package/dist/update-DOKS7ATM.js +189 -0
  374. package/dist/update-DOKS7ATM.js.map +1 -0
  375. package/dist/update-FB6X463M.js +64 -0
  376. package/dist/update-FB6X463M.js.map +1 -0
  377. package/dist/update-QIZ7XFAM.js +153 -0
  378. package/dist/update-QIZ7XFAM.js.map +1 -0
  379. package/dist/upload-XJ7TUVIK.js +127 -0
  380. package/dist/upload-XJ7TUVIK.js.map +1 -0
  381. package/dist/url-params-KLQOLNPS.js +99 -0
  382. package/dist/url-params-KLQOLNPS.js.map +1 -0
  383. package/dist/validate-YTBJBG44.js +118 -0
  384. package/dist/validate-YTBJBG44.js.map +1 -0
  385. package/dist/videos-WAPUPJVT.js +39 -0
  386. package/dist/viewer-check-GHQA3UY2.js +81 -0
  387. package/dist/web-6JMWERTT.js +141 -0
  388. package/dist/web-6JMWERTT.js.map +1 -0
  389. package/dist/winning-ads-XCVUAIOU.js +86 -0
  390. package/dist/write-commands-N74CDMQM.js +1493 -0
  391. package/dist/write-commands-N74CDMQM.js.map +1 -0
  392. package/dist/x-SI4KYDEY.js +47 -0
  393. package/package.json +1 -1
  394. package/dist/account-UHNR5KTE.js +0 -79
  395. package/dist/account-UHNR5KTE.js.map +0 -1
  396. package/dist/accounts-KMLXHADA.js +0 -77
  397. package/dist/accounts-KMLXHADA.js.map +0 -1
  398. package/dist/accounts-QDGNTSTV.js +0 -611
  399. package/dist/accounts-QDGNTSTV.js.map +0 -1
  400. package/dist/actions-QL5UD2W4.js +0 -55
  401. package/dist/activecampaign-5OD45ROS.js +0 -935
  402. package/dist/activecampaign-5OD45ROS.js.map +0 -1
  403. package/dist/add-2F7BEVYD.js +0 -105
  404. package/dist/add-2F7BEVYD.js.map +0 -1
  405. package/dist/add-6K6LO7CM.js +0 -104
  406. package/dist/add-6K6LO7CM.js.map +0 -1
  407. package/dist/add-LYDJZDGO.js +0 -302
  408. package/dist/add-LYDJZDGO.js.map +0 -1
  409. package/dist/ads-DHPJFU52.js +0 -40
  410. package/dist/advertisers-23LU7GTV.js +0 -120
  411. package/dist/advertisers-23LU7GTV.js.map +0 -1
  412. package/dist/analytics-HO2SLL4W.js +0 -433
  413. package/dist/analytics-HO2SLL4W.js.map +0 -1
  414. package/dist/analytics-LD3D7ISK.js +0 -1976
  415. package/dist/analytics-LD3D7ISK.js.map +0 -1
  416. package/dist/assign-CLKJKH2B.js +0 -77
  417. package/dist/assign-CLKJKH2B.js.map +0 -1
  418. package/dist/audience-size-NNYYXODL.js +0 -73
  419. package/dist/audience-size-NNYYXODL.js.map +0 -1
  420. package/dist/audit-KB4P2XGS.js +0 -151
  421. package/dist/audit-KB4P2XGS.js.map +0 -1
  422. package/dist/autocomplete-VZD2SMTE.js +0 -111
  423. package/dist/autocomplete-VZD2SMTE.js.map +0 -1
  424. package/dist/avatars-FKOO6VZ2.js +0 -38
  425. package/dist/bid-pricing-6LLXOLLI.js +0 -100
  426. package/dist/bid-pricing-6LLXOLLI.js.map +0 -1
  427. package/dist/brand-NNWHBIAX.js +0 -22
  428. package/dist/brief-CPJQWT6W.js +0 -538
  429. package/dist/brief-CPJQWT6W.js.map +0 -1
  430. package/dist/campaign-groups-YPYNXOWU.js +0 -95
  431. package/dist/campaign-groups-YPYNXOWU.js.map +0 -1
  432. package/dist/campaign-writes-UJ4L2O6G.js +0 -165
  433. package/dist/campaign-writes-UJ4L2O6G.js.map +0 -1
  434. package/dist/campaigns-HLBZRH5A.js +0 -107
  435. package/dist/campaigns-N44ZDGB5.js +0 -109
  436. package/dist/campaigns-N44ZDGB5.js.map +0 -1
  437. package/dist/canvas-D64GLWUO.js +0 -46
  438. package/dist/capabilities-LWXCWMIY.js +0 -144
  439. package/dist/capabilities-LWXCWMIY.js.map +0 -1
  440. package/dist/chatgpt-YI6YNACI.js +0 -47
  441. package/dist/chats-7WGC2CVW.js +0 -276
  442. package/dist/chats-7WGC2CVW.js.map +0 -1
  443. package/dist/check-EH6BXWWL.js +0 -104
  444. package/dist/check-EH6BXWWL.js.map +0 -1
  445. package/dist/chunk-2B772ZEA.js +0 -169
  446. package/dist/chunk-2KRK667G.js +0 -51
  447. package/dist/chunk-2TVXJPGR.js +0 -103
  448. package/dist/chunk-3AMLOCXY.js +0 -392
  449. package/dist/chunk-3B5LPK6D.js +0 -658
  450. package/dist/chunk-3B5LPK6D.js.map +0 -1
  451. package/dist/chunk-3N5A44NQ.js +0 -122
  452. package/dist/chunk-3WAYZQNV.js +0 -61
  453. package/dist/chunk-5A257KJA.js +0 -160
  454. package/dist/chunk-6QGS3RQP.js +0 -363
  455. package/dist/chunk-AFD32O4A.js +0 -494
  456. package/dist/chunk-AW2GKIGS.js +0 -433
  457. package/dist/chunk-CYSBNCPX.js +0 -55
  458. package/dist/chunk-CYSBNCPX.js.map +0 -1
  459. package/dist/chunk-DAO63OOP.js +0 -6352
  460. package/dist/chunk-DAO63OOP.js.map +0 -1
  461. package/dist/chunk-EMQUW6JB.js +0 -942
  462. package/dist/chunk-EW3JEKIV.js +0 -139
  463. package/dist/chunk-FBFWMTOP.js +0 -19
  464. package/dist/chunk-GXDLWBOY.js +0 -73
  465. package/dist/chunk-GXDLWBOY.js.map +0 -1
  466. package/dist/chunk-GXGYTFZA.js +0 -8939
  467. package/dist/chunk-I7J7YQXZ.js +0 -142
  468. package/dist/chunk-IBY44U2M.js +0 -1079
  469. package/dist/chunk-IFXGCI33.js +0 -297
  470. package/dist/chunk-IKLHXGMF.js +0 -91
  471. package/dist/chunk-IYTPWAN3.js +0 -604
  472. package/dist/chunk-J3CWAERS.js +0 -3868
  473. package/dist/chunk-JH2L5CQD.js +0 -206
  474. package/dist/chunk-JUVVCA7B.js +0 -97
  475. package/dist/chunk-MK6XJUCQ.js +0 -197
  476. package/dist/chunk-N3I6ZXR7.js +0 -66
  477. package/dist/chunk-NBO2NSAW.js +0 -592
  478. package/dist/chunk-NEU5QD2C.js +0 -249
  479. package/dist/chunk-NKIBXOHT.js +0 -344
  480. package/dist/chunk-OE3MIV4F.js +0 -547
  481. package/dist/chunk-P2MFWJR3.js +0 -903
  482. package/dist/chunk-PHCIFBP3.js +0 -89
  483. package/dist/chunk-PTUXBO5O.js +0 -224
  484. package/dist/chunk-Q3LXLWZY.js +0 -275
  485. package/dist/chunk-Q5WBTVA7.js +0 -455
  486. package/dist/chunk-RDEAVCMF.js +0 -399
  487. package/dist/chunk-RDEAVCMF.js.map +0 -1
  488. package/dist/chunk-RGMKXNQP.js +0 -23
  489. package/dist/chunk-RZTKCCUL.js +0 -831
  490. package/dist/chunk-TTKBNBQF.js +0 -156
  491. package/dist/chunk-VB3XUR6A.js +0 -207
  492. package/dist/chunk-XCKINS7K.js +0 -57
  493. package/dist/chunk-Y6GKV7CU.js +0 -346
  494. package/dist/chunk-Y6GKV7CU.js.map +0 -1
  495. package/dist/chunk-Z2GQREJY.js +0 -159
  496. package/dist/chunk-ZDAVSTEE.js +0 -172
  497. package/dist/chunk-ZXCSOVS5.js +0 -191
  498. package/dist/claim-SVDCQ2AI.js +0 -197
  499. package/dist/claim-SVDCQ2AI.js.map +0 -1
  500. package/dist/companies-BYMYQK6A.js +0 -195
  501. package/dist/companies-BYMYQK6A.js.map +0 -1
  502. package/dist/complete-NEH3MWRI.js +0 -81
  503. package/dist/complete-NEH3MWRI.js.map +0 -1
  504. package/dist/connect-5PGL7ZOM.js +0 -42
  505. package/dist/conversation-CSOKJXDW.js +0 -93
  506. package/dist/conversation-CSOKJXDW.js.map +0 -1
  507. package/dist/conversions-4JOTTFEH.js +0 -135
  508. package/dist/conversions-4JOTTFEH.js.map +0 -1
  509. package/dist/create-2XYMBULY.js +0 -207
  510. package/dist/create-2XYMBULY.js.map +0 -1
  511. package/dist/create-56PTZABQ.js +0 -235
  512. package/dist/create-56PTZABQ.js.map +0 -1
  513. package/dist/create-D6S6TGWY.js +0 -59
  514. package/dist/create-D6S6TGWY.js.map +0 -1
  515. package/dist/create-SMW4O5PC.js +0 -132
  516. package/dist/create-SMW4O5PC.js.map +0 -1
  517. package/dist/creatives-OO76DAFS.js +0 -58
  518. package/dist/creatives-VJUYWJL6.js +0 -182
  519. package/dist/creatives-VJUYWJL6.js.map +0 -1
  520. package/dist/credentials-2ONYUJW6.js +0 -287
  521. package/dist/credentials-2ONYUJW6.js.map +0 -1
  522. package/dist/critique-NDDFSGPE.js +0 -1458
  523. package/dist/critique-NDDFSGPE.js.map +0 -1
  524. package/dist/critique-YXZVMLZ4.js +0 -227
  525. package/dist/critique-YXZVMLZ4.js.map +0 -1
  526. package/dist/crm-Q6CEP5XV.js +0 -224
  527. package/dist/crm-Q6CEP5XV.js.map +0 -1
  528. package/dist/crm-WRONZYDH.js +0 -318
  529. package/dist/crm-WRONZYDH.js.map +0 -1
  530. package/dist/customers-2EFYSCU2.js +0 -56
  531. package/dist/delete-7WEVC3FS.js +0 -66
  532. package/dist/delete-7WEVC3FS.js.map +0 -1
  533. package/dist/delete-RBWK255M.js +0 -54
  534. package/dist/delete-RBWK255M.js.map +0 -1
  535. package/dist/delete-VN4WWMQF.js +0 -64
  536. package/dist/delete-VN4WWMQF.js.map +0 -1
  537. package/dist/demographics-I5XZ435C.js +0 -138
  538. package/dist/demographics-I5XZ435C.js.map +0 -1
  539. package/dist/discard-XJLIXTNM.js +0 -66
  540. package/dist/discard-XJLIXTNM.js.map +0 -1
  541. package/dist/domain-M7AEGAYI.js +0 -98
  542. package/dist/domain-M7AEGAYI.js.map +0 -1
  543. package/dist/draft-5DQI4W5F.js +0 -306
  544. package/dist/draft-5DQI4W5F.js.map +0 -1
  545. package/dist/draft-7IIYHSY2.js +0 -332
  546. package/dist/draft-7IIYHSY2.js.map +0 -1
  547. package/dist/draft-CN6GKVBF.js +0 -217
  548. package/dist/draft-CN6GKVBF.js.map +0 -1
  549. package/dist/experiment-IDDWRCJ7.js +0 -1397
  550. package/dist/facets-ZLZ6LIHN.js +0 -114
  551. package/dist/facets-ZLZ6LIHN.js.map +0 -1
  552. package/dist/feedback-7LEX2P5Q.js +0 -106
  553. package/dist/feedback-7LEX2P5Q.js.map +0 -1
  554. package/dist/feedback-record-P4JJ63KA.js +0 -260
  555. package/dist/feedback-record-P4JJ63KA.js.map +0 -1
  556. package/dist/fetch-MIVCEHXZ.js +0 -176
  557. package/dist/fetch-MIVCEHXZ.js.map +0 -1
  558. package/dist/find-VHN34MWL.js +0 -134
  559. package/dist/fit-SS6HSZPU.js +0 -62
  560. package/dist/flows-UTIIHDNE.js +0 -247
  561. package/dist/flows-UTIIHDNE.js.map +0 -1
  562. package/dist/fonts-YPNN7ZJP.js +0 -36
  563. package/dist/forecast-OBSHG2GJ.js +0 -118
  564. package/dist/forecast-OBSHG2GJ.js.map +0 -1
  565. package/dist/funnel-A4MXQYBA.js +0 -394
  566. package/dist/funnel-A4MXQYBA.js.map +0 -1
  567. package/dist/ga4-ZPAEF2G2.js +0 -55
  568. package/dist/get-MDAO6I7T.js +0 -56
  569. package/dist/get-MDAO6I7T.js.map +0 -1
  570. package/dist/get-ZB553BSH.js +0 -79
  571. package/dist/get-ZB553BSH.js.map +0 -1
  572. package/dist/google-C3X7O2UO.js +0 -136
  573. package/dist/google-ads-FTWL772L.js +0 -195
  574. package/dist/google-ads-FTWL772L.js.map +0 -1
  575. package/dist/gsc-SDDHGTZK.js +0 -30
  576. package/dist/history-WKJYKDMG.js +0 -133
  577. package/dist/history-WKJYKDMG.js.map +0 -1
  578. package/dist/hubspot-EPHVEPOO.js +0 -779
  579. package/dist/hubspot-EPHVEPOO.js.map +0 -1
  580. package/dist/icon-MYPDC6FM.js +0 -137
  581. package/dist/ideas-3PBH7VEX.js +0 -40
  582. package/dist/images-J35C3WG4.js +0 -92
  583. package/dist/ingest-5QOPUKFE.js +0 -107
  584. package/dist/ingest-5QOPUKFE.js.map +0 -1
  585. package/dist/ingest-OKUYP632.js +0 -23
  586. package/dist/inspect-PMNCP6MV.js +0 -189
  587. package/dist/inspect-PMNCP6MV.js.map +0 -1
  588. package/dist/inspiration-QAL7NS7G.js +0 -53
  589. package/dist/keyword-metrics-R752SJIT.js +0 -197
  590. package/dist/keyword-metrics-R752SJIT.js.map +0 -1
  591. package/dist/keywords-for-site-7UWPJYQF.js +0 -128
  592. package/dist/keywords-for-site-7UWPJYQF.js.map +0 -1
  593. package/dist/landing-CBVIOGJ5.js +0 -28
  594. package/dist/leads-LIJS6Y5W.js +0 -90
  595. package/dist/leads-LIJS6Y5W.js.map +0 -1
  596. package/dist/learn-N6QV7GXA.js +0 -204
  597. package/dist/learn-N6QV7GXA.js.map +0 -1
  598. package/dist/line-item-writes-3WPJXKIL.js +0 -208
  599. package/dist/line-item-writes-3WPJXKIL.js.map +0 -1
  600. package/dist/line-items-ZOFKOGAA.js +0 -103
  601. package/dist/link-DDRQKOUL.js +0 -64
  602. package/dist/link-DDRQKOUL.js.map +0 -1
  603. package/dist/linkedin-UWZCF66X.js +0 -1057
  604. package/dist/linkedin-UWZCF66X.js.map +0 -1
  605. package/dist/list-5PLXVPLB.js +0 -151
  606. package/dist/list-5PLXVPLB.js.map +0 -1
  607. package/dist/list-RC2NX6AX.js +0 -50
  608. package/dist/list-VSJISE7U.js +0 -303
  609. package/dist/list-VSJISE7U.js.map +0 -1
  610. package/dist/list-WTVOBQYX.js +0 -64
  611. package/dist/list-WTVOBQYX.js.map +0 -1
  612. package/dist/log-YKKPROLZ.js +0 -92
  613. package/dist/log-YKKPROLZ.js.map +0 -1
  614. package/dist/logo-WE2UELX6.js +0 -18
  615. package/dist/make-RNOWBLZQ.js +0 -1353
  616. package/dist/make-RNOWBLZQ.js.map +0 -1
  617. package/dist/map-WTDPQLVO.js +0 -433
  618. package/dist/map-WTDPQLVO.js.map +0 -1
  619. package/dist/mcp-XJNSCPP3.js +0 -714
  620. package/dist/mcp-XJNSCPP3.js.map +0 -1
  621. package/dist/media-sources-JGBDDXZ5.js +0 -32
  622. package/dist/media-sources-JGBDDXZ5.js.map +0 -1
  623. package/dist/members-O3BTMRXX.js +0 -44
  624. package/dist/members-O3BTMRXX.js.map +0 -1
  625. package/dist/normalize-R5AYLA2J.js +0 -141
  626. package/dist/normalize-R5AYLA2J.js.map +0 -1
  627. package/dist/options-AILRY7JY.js +0 -122
  628. package/dist/options-AILRY7JY.js.map +0 -1
  629. package/dist/organization-KJJXZLVK.js +0 -946
  630. package/dist/organization-KJJXZLVK.js.map +0 -1
  631. package/dist/performance-7YU4HOGH.js +0 -24
  632. package/dist/promoted-tweet-writes-TNELWPVG.js +0 -180
  633. package/dist/promoted-tweet-writes-TNELWPVG.js.map +0 -1
  634. package/dist/promoted-tweets-76WKUFJQ.js +0 -119
  635. package/dist/publish-BKLHCKHB.js +0 -341
  636. package/dist/publish-BKLHCKHB.js.map +0 -1
  637. package/dist/reddit-YK3YUZEI.js +0 -26
  638. package/dist/refresh-WIII7KXB.js +0 -94
  639. package/dist/refresh-WIII7KXB.js.map +0 -1
  640. package/dist/release-ZHXYQI7G.js +0 -60
  641. package/dist/release-ZHXYQI7G.js.map +0 -1
  642. package/dist/remove-NOX4BXWK.js +0 -50
  643. package/dist/remove-NOX4BXWK.js.map +0 -1
  644. package/dist/remove-VLWRCOEZ.js +0 -48
  645. package/dist/remove-VLWRCOEZ.js.map +0 -1
  646. package/dist/reopen-NLWKK5HB.js +0 -63
  647. package/dist/reopen-NLWKK5HB.js.map +0 -1
  648. package/dist/rerun-DZWQNMZQ.js +0 -90
  649. package/dist/rerun-DZWQNMZQ.js.map +0 -1
  650. package/dist/research-Q3P76RHN.js +0 -62
  651. package/dist/research-UDZBCDNX.js +0 -262
  652. package/dist/research-UDZBCDNX.js.map +0 -1
  653. package/dist/reset-5UHFX7QY.js +0 -54
  654. package/dist/reset-5UHFX7QY.js.map +0 -1
  655. package/dist/reset-MTRJQUP7.js +0 -54
  656. package/dist/reset-MTRJQUP7.js.map +0 -1
  657. package/dist/resolve-DA72VT7Q.js +0 -121
  658. package/dist/resolve-DA72VT7Q.js.map +0 -1
  659. package/dist/retry-LQUBX5TK.js +0 -62
  660. package/dist/retry-LQUBX5TK.js.map +0 -1
  661. package/dist/retry-U6F4CS6O.js +0 -60
  662. package/dist/retry-U6F4CS6O.js.map +0 -1
  663. package/dist/rules-VS5PZ7VO.js +0 -96
  664. package/dist/rules-VS5PZ7VO.js.map +0 -1
  665. package/dist/rules-add-LMVZYDXE.js +0 -462
  666. package/dist/rules-add-LMVZYDXE.js.map +0 -1
  667. package/dist/run-6PRA2YSD.js +0 -65
  668. package/dist/run-R6COFNOR.js +0 -66
  669. package/dist/run-R6COFNOR.js.map +0 -1
  670. package/dist/scaffold-ad-3OVJ7VZQ.js +0 -1511
  671. package/dist/scaffold-ad-3OVJ7VZQ.js.map +0 -1
  672. package/dist/scaffold-static-ad-DDRA3Q5I.js +0 -1005
  673. package/dist/scaffold-static-ad-DDRA3Q5I.js.map +0 -1
  674. package/dist/scaffold-video-3JZYFYFU.js +0 -883
  675. package/dist/scaffold-video-3JZYFYFU.js.map +0 -1
  676. package/dist/schedule-BRSYHMKR.js +0 -66
  677. package/dist/schedule-BRSYHMKR.js.map +0 -1
  678. package/dist/schedule-ED2YDUPY.js +0 -61
  679. package/dist/schedule-ED2YDUPY.js.map +0 -1
  680. package/dist/scheduled-agents-5P67MVGX.js +0 -50
  681. package/dist/schema-4XVKERSA.js +0 -132
  682. package/dist/schema-4XVKERSA.js.map +0 -1
  683. package/dist/schema-RRAQW3OS.js +0 -69
  684. package/dist/search-Y2UMIQ57.js +0 -174
  685. package/dist/search-Y2UMIQ57.js.map +0 -1
  686. package/dist/select-OZ4E6VLF.js +0 -101
  687. package/dist/select-OZ4E6VLF.js.map +0 -1
  688. package/dist/set-prompt-O4YAE4CE.js +0 -193
  689. package/dist/set-prompt-O4YAE4CE.js.map +0 -1
  690. package/dist/setup-links-2GJYCV2A.js +0 -141
  691. package/dist/setup-links-2GJYCV2A.js.map +0 -1
  692. package/dist/site-47B6V2UX.js +0 -177
  693. package/dist/site-47B6V2UX.js.map +0 -1
  694. package/dist/sources-DXPZAPQ7.js +0 -454
  695. package/dist/sources-DXPZAPQ7.js.map +0 -1
  696. package/dist/sources-NDXYTASG.js +0 -30
  697. package/dist/stale-VLVBO2L6.js +0 -71
  698. package/dist/stale-VLVBO2L6.js.map +0 -1
  699. package/dist/stats-37OFAMPW.js +0 -34
  700. package/dist/status-4ODD46XY.js +0 -62
  701. package/dist/status-4ODD46XY.js.map +0 -1
  702. package/dist/stock-6R5E7MJX.js +0 -179
  703. package/dist/studio-LEIGL3Q7.js +0 -49
  704. package/dist/sync-EKGEWE53.js +0 -54
  705. package/dist/sync-EKGEWE53.js.map +0 -1
  706. package/dist/sync-TKNVBUDM.js +0 -54
  707. package/dist/sync-TKNVBUDM.js.map +0 -1
  708. package/dist/sync-definition-M5R3H3TP.js +0 -64
  709. package/dist/tag-manager-3Q55PBEW.js +0 -43
  710. package/dist/tags-4N5UUUN6.js +0 -26
  711. package/dist/tags-5NHIAD5A.js +0 -20
  712. package/dist/tags-5NHIAD5A.js.map +0 -1
  713. package/dist/tags-UUKWSWCN.js +0 -20
  714. package/dist/tags-UUKWSWCN.js.map +0 -1
  715. package/dist/tags-VK7B5DJF.js +0 -20
  716. package/dist/tags-VK7B5DJF.js.map +0 -1
  717. package/dist/tags-XAHIB3WA.js +0 -224
  718. package/dist/tags-XAHIB3WA.js.map +0 -1
  719. package/dist/targeting-criteria-AVARWV2G.js +0 -113
  720. package/dist/targets-6RYLQRID.js +0 -103
  721. package/dist/targets-6RYLQRID.js.map +0 -1
  722. package/dist/testimonials-6TF6BOFN.js +0 -32
  723. package/dist/top-companies-45EHRCJD.js +0 -108
  724. package/dist/top-companies-45EHRCJD.js.map +0 -1
  725. package/dist/translate-VHLBACCE.js +0 -604
  726. package/dist/translate-VHLBACCE.js.map +0 -1
  727. package/dist/triggers-ERQONJNO.js +0 -142
  728. package/dist/triggers-ERQONJNO.js.map +0 -1
  729. package/dist/unlink-TPDO6JNF.js +0 -67
  730. package/dist/unlink-TPDO6JNF.js.map +0 -1
  731. package/dist/unstage-YKKQQ7LW.js +0 -85
  732. package/dist/unstage-YKKQQ7LW.js.map +0 -1
  733. package/dist/update-43WU6X7R.js +0 -63
  734. package/dist/update-43WU6X7R.js.map +0 -1
  735. package/dist/update-CAHLAXWO.js +0 -98
  736. package/dist/update-CAHLAXWO.js.map +0 -1
  737. package/dist/update-NGH6YADN.js +0 -152
  738. package/dist/update-NGH6YADN.js.map +0 -1
  739. package/dist/update-SPJIHHLE.js +0 -188
  740. package/dist/update-SPJIHHLE.js.map +0 -1
  741. package/dist/upload-ACESIZIZ.js +0 -126
  742. package/dist/upload-ACESIZIZ.js.map +0 -1
  743. package/dist/url-params-MIXEDBF7.js +0 -98
  744. package/dist/url-params-MIXEDBF7.js.map +0 -1
  745. package/dist/validate-XJJA7ULE.js +0 -117
  746. package/dist/validate-XJJA7ULE.js.map +0 -1
  747. package/dist/videos-LBXPG7WC.js +0 -39
  748. package/dist/viewer-check-7VJ3GUZX.js +0 -80
  749. package/dist/web-EWQJC2SD.js +0 -140
  750. package/dist/web-EWQJC2SD.js.map +0 -1
  751. package/dist/winning-ads-SAOJAKEQ.js +0 -86
  752. package/dist/write-commands-QPDE4GWW.js +0 -1024
  753. package/dist/write-commands-QPDE4GWW.js.map +0 -1
  754. package/dist/x-LXOJPCRF.js +0 -47
  755. /package/dist/{actions-QL5UD2W4.js.map → actions-FMNJSOBA.js.map} +0 -0
  756. /package/dist/{ads-DHPJFU52.js.map → ads-OLXSDPD6.js.map} +0 -0
  757. /package/dist/{avatars-FKOO6VZ2.js.map → avatars-I4H3NMEJ.js.map} +0 -0
  758. /package/dist/{brand-NNWHBIAX.js.map → brand-3V7ECY7D.js.map} +0 -0
  759. /package/dist/{campaigns-HLBZRH5A.js.map → campaigns-MCB76NPQ.js.map} +0 -0
  760. /package/dist/{canvas-D64GLWUO.js.map → canvas-JCNKMGCG.js.map} +0 -0
  761. /package/dist/{chatgpt-YI6YNACI.js.map → chatgpt-XFZ42NXC.js.map} +0 -0
  762. /package/dist/{chunk-VB3XUR6A.js.map → chunk-2YTBPRRG.js.map} +0 -0
  763. /package/dist/{chunk-JUVVCA7B.js.map → chunk-3SNCMEJB.js.map} +0 -0
  764. /package/dist/{chunk-RGMKXNQP.js.map → chunk-7QGFO35A.js.map} +0 -0
  765. /package/dist/{chunk-ZXCSOVS5.js.map → chunk-AV7ALENU.js.map} +0 -0
  766. /package/dist/{chunk-IYTPWAN3.js.map → chunk-BRLFQ4VX.js.map} +0 -0
  767. /package/dist/{chunk-RZTKCCUL.js.map → chunk-DJE7UXYT.js.map} +0 -0
  768. /package/dist/{chunk-EW3JEKIV.js.map → chunk-EFWXYUSK.js.map} +0 -0
  769. /package/dist/{chunk-J3CWAERS.js.map → chunk-EONSZAZB.js.map} +0 -0
  770. /package/dist/{chunk-PHCIFBP3.js.map → chunk-FG3MV2XM.js.map} +0 -0
  771. /package/dist/{chunk-3AMLOCXY.js.map → chunk-FKG476GH.js.map} +0 -0
  772. /package/dist/{chunk-IFXGCI33.js.map → chunk-FUGQSIYG.js.map} +0 -0
  773. /package/dist/{chunk-Q3LXLWZY.js.map → chunk-HPLHAHG5.js.map} +0 -0
  774. /package/dist/{chunk-3N5A44NQ.js.map → chunk-I24YT2KG.js.map} +0 -0
  775. /package/dist/{chunk-P2MFWJR3.js.map → chunk-IFDZZOUC.js.map} +0 -0
  776. /package/dist/{chunk-Q5WBTVA7.js.map → chunk-JVVUI55M.js.map} +0 -0
  777. /package/dist/{chunk-6QGS3RQP.js.map → chunk-KKSHEPBY.js.map} +0 -0
  778. /package/dist/{chunk-OE3MIV4F.js.map → chunk-KQ7RCLGC.js.map} +0 -0
  779. /package/dist/{chunk-ZDAVSTEE.js.map → chunk-L7WMS5PW.js.map} +0 -0
  780. /package/dist/{chunk-FBFWMTOP.js.map → chunk-LBRO4MTL.js.map} +0 -0
  781. /package/dist/{chunk-PTUXBO5O.js.map → chunk-LNRPOULW.js.map} +0 -0
  782. /package/dist/{chunk-EMQUW6JB.js.map → chunk-LX6WC2XZ.js.map} +0 -0
  783. /package/dist/{chunk-I7J7YQXZ.js.map → chunk-MMGTJBM6.js.map} +0 -0
  784. /package/dist/{chunk-2KRK667G.js.map → chunk-OEZYSL3U.js.map} +0 -0
  785. /package/dist/{chunk-2TVXJPGR.js.map → chunk-OOVHBMQB.js.map} +0 -0
  786. /package/dist/{chunk-Z2GQREJY.js.map → chunk-PTH7VWKK.js.map} +0 -0
  787. /package/dist/{chunk-N3I6ZXR7.js.map → chunk-QZF4BVKL.js.map} +0 -0
  788. /package/dist/{chunk-3WAYZQNV.js.map → chunk-RITUSBYO.js.map} +0 -0
  789. /package/dist/{chunk-JH2L5CQD.js.map → chunk-SSTL3A7Z.js.map} +0 -0
  790. /package/dist/{chunk-2B772ZEA.js.map → chunk-TD4SO6TR.js.map} +0 -0
  791. /package/dist/{chunk-IKLHXGMF.js.map → chunk-UZ4RTOFG.js.map} +0 -0
  792. /package/dist/{chunk-NBO2NSAW.js.map → chunk-VAX7PFQV.js.map} +0 -0
  793. /package/dist/{chunk-AFD32O4A.js.map → chunk-VDRSZK4P.js.map} +0 -0
  794. /package/dist/{chunk-NKIBXOHT.js.map → chunk-VNU2EYD4.js.map} +0 -0
  795. /package/dist/{chunk-TTKBNBQF.js.map → chunk-WT4WDIXA.js.map} +0 -0
  796. /package/dist/{chunk-5A257KJA.js.map → chunk-XEX23CIB.js.map} +0 -0
  797. /package/dist/{chunk-GXGYTFZA.js.map → chunk-XXDF25BW.js.map} +0 -0
  798. /package/dist/{chunk-NEU5QD2C.js.map → chunk-YJ3LSFMX.js.map} +0 -0
  799. /package/dist/{chunk-MK6XJUCQ.js.map → chunk-YVK5RT3B.js.map} +0 -0
  800. /package/dist/{chunk-AW2GKIGS.js.map → chunk-YWWRLZUR.js.map} +0 -0
  801. /package/dist/{chunk-XCKINS7K.js.map → chunk-Z4S5BCVZ.js.map} +0 -0
  802. /package/dist/{chunk-IBY44U2M.js.map → chunk-ZYGK7GAK.js.map} +0 -0
  803. /package/dist/{connect-5PGL7ZOM.js.map → connect-COS6G45S.js.map} +0 -0
  804. /package/dist/{creatives-OO76DAFS.js.map → creatives-SEQHJD2M.js.map} +0 -0
  805. /package/dist/{customers-2EFYSCU2.js.map → customers-LMSX33FO.js.map} +0 -0
  806. /package/dist/{experiment-IDDWRCJ7.js.map → experiment-7RJ5X2LL.js.map} +0 -0
  807. /package/dist/{find-VHN34MWL.js.map → find-2EPXK5RF.js.map} +0 -0
  808. /package/dist/{fit-SS6HSZPU.js.map → fit-W7UNFZT5.js.map} +0 -0
  809. /package/dist/{fonts-YPNN7ZJP.js.map → fonts-N42UYWTX.js.map} +0 -0
  810. /package/dist/{ga4-ZPAEF2G2.js.map → ga4-6EIQC2TG.js.map} +0 -0
  811. /package/dist/{google-C3X7O2UO.js.map → google-O5OI6QFU.js.map} +0 -0
  812. /package/dist/{gsc-SDDHGTZK.js.map → gsc-BM3T2GDL.js.map} +0 -0
  813. /package/dist/{icon-MYPDC6FM.js.map → icon-B7DG53S5.js.map} +0 -0
  814. /package/dist/{ideas-3PBH7VEX.js.map → ideas-DYN2DMFN.js.map} +0 -0
  815. /package/dist/{images-J35C3WG4.js.map → images-EQCUXEHF.js.map} +0 -0
  816. /package/dist/{ingest-OKUYP632.js.map → ingest-B46AY3QU.js.map} +0 -0
  817. /package/dist/{inspiration-QAL7NS7G.js.map → inspiration-TCCKM4R7.js.map} +0 -0
  818. /package/dist/{landing-CBVIOGJ5.js.map → landing-WVPA7NBR.js.map} +0 -0
  819. /package/dist/{line-items-ZOFKOGAA.js.map → line-items-OEWYOPFP.js.map} +0 -0
  820. /package/dist/{list-RC2NX6AX.js.map → list-WRBWQASJ.js.map} +0 -0
  821. /package/dist/{logo-WE2UELX6.js.map → logo-QTSBKP2J.js.map} +0 -0
  822. /package/dist/{performance-7YU4HOGH.js.map → performance-HTU5FR2K.js.map} +0 -0
  823. /package/dist/{promoted-tweets-76WKUFJQ.js.map → promoted-tweets-TTWN5OMW.js.map} +0 -0
  824. /package/dist/{reddit-YK3YUZEI.js.map → reddit-6C3PT5CT.js.map} +0 -0
  825. /package/dist/{research-Q3P76RHN.js.map → research-YCMMQVK6.js.map} +0 -0
  826. /package/dist/{run-6PRA2YSD.js.map → run-SR7DJ7M5.js.map} +0 -0
  827. /package/dist/{scheduled-agents-5P67MVGX.js.map → scheduled-agents-N63EZNY6.js.map} +0 -0
  828. /package/dist/{schema-RRAQW3OS.js.map → schema-C6SGBNA6.js.map} +0 -0
  829. /package/dist/{sources-NDXYTASG.js.map → sources-HN3GCEDX.js.map} +0 -0
  830. /package/dist/{stats-37OFAMPW.js.map → stats-CVF6AC7R.js.map} +0 -0
  831. /package/dist/{stock-6R5E7MJX.js.map → stock-4LPQ6SM7.js.map} +0 -0
  832. /package/dist/{studio-LEIGL3Q7.js.map → studio-NZ6WQ7OE.js.map} +0 -0
  833. /package/dist/{sync-definition-M5R3H3TP.js.map → sync-definition-CKEUYKWN.js.map} +0 -0
  834. /package/dist/{tag-manager-3Q55PBEW.js.map → tag-manager-FLXXLNKP.js.map} +0 -0
  835. /package/dist/{tags-4N5UUUN6.js.map → tags-EUOOSAKN.js.map} +0 -0
  836. /package/dist/{targeting-criteria-AVARWV2G.js.map → targeting-criteria-HE7K52WN.js.map} +0 -0
  837. /package/dist/{testimonials-6TF6BOFN.js.map → testimonials-3Q5XM7JD.js.map} +0 -0
  838. /package/dist/{videos-LBXPG7WC.js.map → videos-WAPUPJVT.js.map} +0 -0
  839. /package/dist/{viewer-check-7VJ3GUZX.js.map → viewer-check-GHQA3UY2.js.map} +0 -0
  840. /package/dist/{winning-ads-SAOJAKEQ.js.map → winning-ads-XCVUAIOU.js.map} +0 -0
  841. /package/dist/{x-LXOJPCRF.js.map → x-SI4KYDEY.js.map} +0 -0
@@ -0,0 +1,401 @@
1
+ import {
2
+ agentProfile
3
+ } from "./chunk-FALJQCWL.js";
4
+ import {
5
+ AUTO_PUBLISH_REFUSAL,
6
+ TRIGGER_KINDS,
7
+ TRIGGER_KIND_IDS,
8
+ TRIGGER_TARGETS,
9
+ TRIGGER_TARGET_FIELDS,
10
+ TRIGGER_TARGET_FIELD_IDS,
11
+ firstTimes,
12
+ isTriggerKind,
13
+ parseConditionsExpression
14
+ } from "./chunk-O37VU7FG.js";
15
+ import {
16
+ ApiError,
17
+ validateConvexId
18
+ } from "./chunk-6YLNY6CK.js";
19
+ import {
20
+ getEnv
21
+ } from "./chunk-57KKVDDR.js";
22
+ import {
23
+ writeJson
24
+ } from "./chunk-QANGHND7.js";
25
+
26
+ // src/commands/scheduled-agents/shared.ts
27
+ var TEMP_SCHEDULED_AGENT_PREFIX = "temp_agent_";
28
+ var TEMP_ID_PREFIX = "temp_";
29
+ function writeOk(data, hints) {
30
+ writeJson({ ok: true, data: data ?? null, ...hints && hints.length > 0 ? { hints } : {} });
31
+ }
32
+ function failValidation(message) {
33
+ writeJson({ ok: false, error: { code: "VALIDATION_ERROR", message } });
34
+ process.exit(1);
35
+ }
36
+ function failApi(err) {
37
+ if (err instanceof ApiError) {
38
+ writeJson({ ok: false, error: { code: err.code, message: err.message } });
39
+ process.exit(1);
40
+ }
41
+ if (err instanceof Error) {
42
+ writeJson({ ok: false, error: { code: "INTERNAL_ERROR", message: err.message } });
43
+ process.exit(1);
44
+ }
45
+ writeJson({ ok: false, error: { code: "INTERNAL_ERROR", message: "Unexpected error" } });
46
+ process.exit(1);
47
+ }
48
+ var AUTO_PUBLISH_ARG = {
49
+ "auto-publish": {
50
+ type: "string",
51
+ description: "Not available to the agent: publishing every run unreviewed is switched on by the user, on the item, after this chat is published. Passing it is refused and tells you what to ask them.",
52
+ required: false
53
+ }
54
+ };
55
+ function refuseAutoPublish(args) {
56
+ if (args["auto-publish"] === void 0) {
57
+ return;
58
+ }
59
+ writeJson({
60
+ ok: false,
61
+ error: {
62
+ code: "FORBIDDEN",
63
+ message: AUTO_PUBLISH_REFUSAL,
64
+ fix: {
65
+ action: "ask_user",
66
+ explanation: 'Run the command again without --auto-publish. After this chat is published, ask the user to open the item in Scheduled agents and switch on "Publish its work on its own" under "When a run finishes" \u2014 until then each run waits for their review.'
67
+ }
68
+ }
69
+ });
70
+ process.exit(1);
71
+ }
72
+ function isTempScheduledAgentId(id) {
73
+ return id.startsWith(TEMP_SCHEDULED_AGENT_PREFIX);
74
+ }
75
+ function isOtherTempId(id) {
76
+ return id.startsWith(TEMP_ID_PREFIX) && !isTempScheduledAgentId(id);
77
+ }
78
+ function validateScheduledAgentRef(ref) {
79
+ if (isOtherTempId(ref)) {
80
+ failValidation(`Scheduled agent temp IDs must start with ${TEMP_SCHEDULED_AGENT_PREFIX}.`);
81
+ }
82
+ if (!isTempScheduledAgentId(ref)) {
83
+ validateConvexId(ref);
84
+ }
85
+ }
86
+ var TRIGGER_ARG_DESCRIPTION = `What makes this run. ${TRIGGER_KIND_IDS.map(
87
+ (id) => `${id}: ${TRIGGER_KINDS[id].description}`
88
+ ).join(" ")} For the two time ones, pass --cron or --run-at instead and the kind is implied.`;
89
+ var TRIGGER_KIND_LIST = [...TRIGGER_KIND_IDS];
90
+ var NARROWING_DESCRIPTIONS = {
91
+ eventName: "With --trigger event.received: only this event name (a source's name, or one your site sends). Omit it to run on any event.",
92
+ toolkit: "With --trigger app.event (required): the connected tool, by its slug \u2014 gmail, slack, googlesheets.",
93
+ account: "With --trigger app.event (required): which connected account of that tool, by id (a tool can be connected more than once).",
94
+ appEvent: "With --trigger app.event (required): what happens in the tool, by the tool's own id \u2014 GMAIL_NEW_GMAIL_MESSAGE. `targets --field appEvent --app <tool>` lists them with the settings each needs.",
95
+ provider: "With --trigger connection.created, connection.removed or connection.needs_reconnect: only this tool (google-ads, hubspot, meta, or a connected tool's slug such as slack). Omit it for any tool.",
96
+ flowId: "With --trigger form.submitted or flow.step.submitted: which Form, by slug. Omit it on form.submitted for any Form.",
97
+ stepId: "With --trigger flow.step.submitted: which step of that Form, by id \u2014 `targets --field stepId --form <slug>` lists them by name.",
98
+ page: "With --trigger landing.created or landing.published: only this page, by slug. Omit it for any page.",
99
+ tag: "With --trigger task.created, task.claimed, task.completed, landing.created or landing.published: only ones carrying this tag. Omit it for any.",
100
+ experimentId: 'With --trigger experiment.decided, experiment.ended or experiment.concluded: only this test. Omit it for any test. Not for experiment.started \u2014 narrow that with --when "page = <page>".',
101
+ taskId: "With --trigger task.claimed or task.completed: only this Task, by id (a temp_ id of a Task staged in this chat works too). Omit it for any Task.",
102
+ agentId: "With --trigger session.published, session.publish_failed or session.publish_incomplete: only the runs of this scheduled agent, by id (a temp_agent_ id staged in this chat works too). Omit it for any agent's work.",
103
+ platform: "With --trigger session.publish_incomplete: only when this platform's changes did not all land \u2014 google-ads, meta-ads, linkedin-ads, x-ads, tag-manager or ga4. Omit it for any.",
104
+ collection: "With --trigger knowledge.updated: only this Knowledge collection. Omit it for any of them.",
105
+ sourceId: "With --trigger review.received: only reviews from this review source, by id. Omit it for any source.",
106
+ advertiserId: "With --trigger advertiser.new_ads: only this followed advertiser, by id. Omit it for any of them.",
107
+ socialAccount: "With --trigger social.post_published: only posts by this followed account, by its key (linkedin:in/jacintofleta, instagram:nike \u2014 `baker media-sources list`). Omit it for any account.",
108
+ personRole: "With --trigger social.post_published: only posts by people with this role \u2014 ceo, founder, cto, cmo, head_of_sales, sales, marketing, employee, creator. Omit it for any account, pages included."
109
+ };
110
+ var NARROWING_ARGS = {
111
+ ...Object.fromEntries(
112
+ TRIGGER_TARGET_FIELD_IDS.map((field) => [
113
+ TRIGGER_TARGET_FIELDS[field].flag,
114
+ {
115
+ type: "string",
116
+ description: `${NARROWING_DESCRIPTIONS[field]} \`baker scheduled-agents targets --trigger <kind> --field ${field}\` lists the values.`,
117
+ required: false
118
+ }
119
+ ])
120
+ ),
121
+ config: {
122
+ type: "string",
123
+ description: `With --trigger app.event: the event's own settings as a JSON object \u2014 they filter inside the tool, before anything is sent. A Gmail search ('{"query":"from:ana@acme.com"}'), a label, a Slack channel, a GitHub repository ('{"owner":"acme","repo":"site"}'). \`targets --field appEvent --app <tool> --event <id>\` lists each setting with its examples.`,
124
+ required: false
125
+ }
126
+ };
127
+ function validateRunAt(runAt) {
128
+ if (!runAt.endsWith("Z")) {
129
+ failValidation("--run-at must be an ISO UTC timestamp ending in Z.");
130
+ }
131
+ const parsed = Date.parse(runAt);
132
+ if (!Number.isFinite(parsed)) {
133
+ failValidation("--run-at must be a valid ISO timestamp.");
134
+ }
135
+ if (parsed <= Date.now()) {
136
+ failValidation(
137
+ `--run-at ${runAt} has already passed. A one-off item only runs at a time still to come \u2014 pass a later ISO UTC timestamp, and check which timezone you converted from if you worked it out from a local time.`
138
+ );
139
+ }
140
+ }
141
+ function buildTriggerBody(args, options) {
142
+ const cron = args.cron;
143
+ const runAt = args["run-at"];
144
+ const timezone = args.timezone;
145
+ const kind = args.trigger;
146
+ const given = [cron, runAt, kind].filter(Boolean).length;
147
+ if (given > 1) {
148
+ failValidation("--cron, --run-at and --trigger are mutually exclusive.");
149
+ }
150
+ refuseNarrowingWithoutKind(args, kind, given);
151
+ if (runAt) {
152
+ validateRunAt(runAt);
153
+ return { runAt, ...timezone ? { timezone } : {} };
154
+ }
155
+ if (cron) {
156
+ return { cron, ...timezone ? { timezone } : {} };
157
+ }
158
+ if (kind) {
159
+ return { trigger: triggerFromFlags(kind, args), ...timezone ? { timezone } : {} };
160
+ }
161
+ if (timezone && !options.required) {
162
+ return { timezone };
163
+ }
164
+ if (options.required) {
165
+ failValidation(
166
+ `A trigger is required. Pass --cron or --run-at for a time-based one, or --trigger with one of: ${TRIGGER_KIND_IDS.join(", ")}.`
167
+ );
168
+ }
169
+ return void 0;
170
+ }
171
+ function flagText(args, key) {
172
+ const value = args[key];
173
+ return typeof value === "string" && value.trim().length > 0 ? value.trim() : void 0;
174
+ }
175
+ function refuseMisusedKinds(kind, args) {
176
+ if (kind === "time.once") {
177
+ failValidation("Use --run-at for a one-off, rather than --trigger time.once.");
178
+ }
179
+ if (kind === "time.cron") {
180
+ failValidation("Use --cron for a repeating schedule, rather than --trigger time.cron.");
181
+ }
182
+ if (kind === "experiment.started" && flagText(args, "experiment")) {
183
+ failValidation(
184
+ 'A test that exists has already started, so --experiment never fires on experiment.started. Leave it off and add --when "page = <page>" to watch one page.'
185
+ );
186
+ }
187
+ }
188
+ function refuseStrayFlags(kind, args) {
189
+ const allowed = new Set(TRIGGER_TARGETS[kind].map((target) => TRIGGER_TARGET_FIELDS[target.field].flag));
190
+ const stray = TRIGGER_TARGET_FIELD_IDS.map((field) => TRIGGER_TARGET_FIELDS[field].flag).filter(
191
+ (flag) => !allowed.has(flag) && flagText(args, flag) !== void 0 && !(kind === "experiment.started" && flag === "experiment")
192
+ );
193
+ if (stray.length === 0) {
194
+ return;
195
+ }
196
+ failValidation(
197
+ `${stray.map((flag) => `--${flag}`).join(", ")} does not narrow ${kind}. ${allowed.size > 0 ? `It can be pointed with ${[...allowed].map((flag) => `--${flag}`).join(", ")}.` : "It runs every time it happens \u2014 narrow it with --when rules over its payload instead."}`
198
+ );
199
+ }
200
+ var NARROWING_FLAGS = [...TRIGGER_TARGET_FIELD_IDS.map((field) => TRIGGER_TARGET_FIELDS[field].flag), "config"];
201
+ function refuseNarrowingWithoutKind(args, kind, given) {
202
+ if (kind) {
203
+ return;
204
+ }
205
+ const stray = NARROWING_FLAGS.filter((flag) => flagText(args, flag) !== void 0);
206
+ if (stray.length === 0) {
207
+ return;
208
+ }
209
+ const flags = stray.map((flag) => `--${flag}`).join(", ");
210
+ failValidation(
211
+ given > 0 ? `${flags} does not narrow --cron or --run-at: a time trigger runs every time it comes round. Use --trigger <kind> with ${flags} instead, or leave ${flags} off.` : `${flags} narrows a trigger, and no trigger was given. Pass --trigger <kind> too \u2014 the item's whole trigger, with ${flags} \u2014 or leave ${flags} off.`
212
+ );
213
+ }
214
+ function configFromFlag(kind, args) {
215
+ const config = flagText(args, "config");
216
+ if (!config) {
217
+ return {};
218
+ }
219
+ if (kind !== "app.event") {
220
+ failValidation("--config is only for --trigger app.event: the settings of what happens in the tool.");
221
+ }
222
+ let parsed;
223
+ try {
224
+ parsed = JSON.parse(config);
225
+ } catch {
226
+ parsed = null;
227
+ }
228
+ if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed)) {
229
+ failValidation(`--config must be a JSON object, e.g. '{"labelIds":"INBOX"}'.`);
230
+ }
231
+ return { configJson: config };
232
+ }
233
+ function triggerFromFlags(kind, args) {
234
+ if (!isTriggerKind(kind)) {
235
+ failValidation(`--trigger must be one of: ${TRIGGER_KIND_IDS.join(", ")}.`);
236
+ }
237
+ refuseMisusedKinds(kind, args);
238
+ refuseStrayFlags(kind, args);
239
+ const narrowings = {};
240
+ for (const { field, required } of TRIGGER_TARGETS[kind]) {
241
+ const value = flagText(args, TRIGGER_TARGET_FIELDS[field].flag);
242
+ if (value) {
243
+ narrowings[field] = value;
244
+ } else if (required) {
245
+ failValidation(
246
+ `--trigger ${kind} needs --${TRIGGER_TARGET_FIELDS[field].flag}. \`baker scheduled-agents targets --trigger ${kind} --field ${field}\` lists what it can be.`
247
+ );
248
+ }
249
+ }
250
+ return { kind, ...narrowings, ...configFromFlag(kind, args) };
251
+ }
252
+ function parseOccurrences(raw) {
253
+ if (raw === void 0) {
254
+ return void 0;
255
+ }
256
+ if (typeof raw !== "string") {
257
+ failValidation("--occurrences must be a comma-separated list of whole numbers, e.g. 1 or 1,3.");
258
+ }
259
+ const parts = raw.split(",").map((part) => part.trim()).filter((part) => part.length > 0);
260
+ const numbers = parts.map((part) => Number(part));
261
+ if (numbers.length === 0 || numbers.some((n) => !Number.isInteger(n) || n <= 0)) {
262
+ failValidation("--occurrences must be a comma-separated list of whole numbers above zero, e.g. 1 or 1,3.");
263
+ }
264
+ return numbers;
265
+ }
266
+ function parseBooleanFlag(raw, flagName) {
267
+ if (raw === void 0) {
268
+ return void 0;
269
+ }
270
+ if (raw === true || raw === "true") {
271
+ return true;
272
+ }
273
+ if (raw === false || raw === "false") {
274
+ return false;
275
+ }
276
+ failValidation(`${flagName} must be true or false.`);
277
+ }
278
+ var REACTION_ARGS = {
279
+ when: {
280
+ type: "string",
281
+ description: "Only run when what arrived passes these rules: `<field> <operator> <value>` joined by AND or by OR (either case). Fields are the trigger's payload fields (`baker scheduled-agents triggers --trigger <kind>` lists them; a webhook's are whatever was posted; an app.event's are what `targets --field appEvent --app <tool> --event <id>` says it sends). Operators: =, !=, contains, does not contain, starts with, ends with, >, <, >=, <=, in (comma list), exists, missing. Example: --when \"deal.stage = won AND amount > 10000\". A payload that fails is not counted and starts nothing. `none` clears the rules.",
282
+ required: false
283
+ },
284
+ times: {
285
+ type: "string",
286
+ description: "Only the first N times it fires (and its --when rules pass), then never again. `--times 1` is only the first time. Shorthand for --occurrences 1,2,\u2026,N.",
287
+ required: false
288
+ },
289
+ payload: {
290
+ type: "string",
291
+ description: "include (default) or omit. Whether the run's first message carries what arrived \u2014 the posted body, the event's properties, the Form's answers (emails and phones masked). Place single values in --prompt with {{payload.<field>}} instead; those are filled either way.",
292
+ required: false
293
+ },
294
+ cooldown: {
295
+ type: "string",
296
+ description: "At most one run per this many minutes, however often it fires. 0 removes it.",
297
+ required: false
298
+ }
299
+ };
300
+ var SLACK_ARG = {
301
+ slack: {
302
+ type: "string",
303
+ description: "Tell each run in Slack: `here` (the Slack conversation this chat came from), `me` (a direct message to the person in this chat), `#channel` (a channel linked to this company), or `off`. Each run opens its own thread there and Baker reports on it: what it found, what it needs, whether to publish.",
304
+ required: false
305
+ }
306
+ };
307
+ function companiesArg(profile = agentProfile()) {
308
+ return profile === "organization" ? {
309
+ companies: {
310
+ type: "string",
311
+ description: "The companies whose events it hears, by id, comma-separated (`baker organization companies` lists them), or `all`. Left out, it hears every company, including ones added later. Only on a trigger that happens in a company; one company's Form, page or tag is a --when rule instead.",
312
+ required: false
313
+ }
314
+ } : {};
315
+ }
316
+ function companiesBody(args) {
317
+ return typeof args.companies === "string" && args.companies.trim().length > 0 ? { companies: args.companies.trim() } : {};
318
+ }
319
+ function slackBody(args) {
320
+ return typeof args.slack === "string" && args.slack.trim().length > 0 ? { slack: args.slack.trim() } : {};
321
+ }
322
+ function wholeNumber(raw, flag, { min }) {
323
+ if (raw === void 0) {
324
+ return void 0;
325
+ }
326
+ const value = Number(raw);
327
+ if (!Number.isInteger(value) || value < min) {
328
+ failValidation(`${flag} must be a whole number of at least ${min}.`);
329
+ }
330
+ return value;
331
+ }
332
+ function reactionBody(args) {
333
+ const occurrences = occurrencesFromFlags(args);
334
+ const when = whenFromFlag(args.when);
335
+ const includePayload = payloadFromFlag(args.payload);
336
+ const cooldownMinutes = wholeNumber(args.cooldown, "--cooldown", { min: 0 });
337
+ return {
338
+ ...occurrences !== void 0 ? { occurrences } : {},
339
+ ...when !== void 0 ? { when } : {},
340
+ ...includePayload !== void 0 ? { includePayload } : {},
341
+ ...cooldownMinutes !== void 0 ? { cooldownMinutes } : {}
342
+ };
343
+ }
344
+ function occurrencesFromFlags(args) {
345
+ const times = wholeNumber(args.times, "--times", { min: 1 });
346
+ const occurrences = parseOccurrences(args.occurrences);
347
+ if (times !== void 0 && occurrences !== void 0) {
348
+ failValidation("Pass --times or --occurrences, not both \u2014 --times 3 is --occurrences 1,2,3.");
349
+ }
350
+ return times !== void 0 ? firstTimes(times) : occurrences;
351
+ }
352
+ function whenFromFlag(raw) {
353
+ if (typeof raw !== "string") {
354
+ return void 0;
355
+ }
356
+ const text = raw.trim();
357
+ if (text.length === 0 || text.toLowerCase() === "none") {
358
+ return "none";
359
+ }
360
+ const parsed = parseConditionsExpression(text);
361
+ if (!parsed.ok) {
362
+ failValidation(parsed.error);
363
+ }
364
+ return text;
365
+ }
366
+ function payloadFromFlag(raw) {
367
+ if (raw === void 0) {
368
+ return void 0;
369
+ }
370
+ if (raw !== "include" && raw !== "omit") {
371
+ failValidation("--payload must be include or omit.");
372
+ }
373
+ return raw === "include";
374
+ }
375
+ function chatBody() {
376
+ const id = getEnv().BAKER_CHAT_ID;
377
+ return id ? { chatId: id } : {};
378
+ }
379
+
380
+ export {
381
+ writeOk,
382
+ failValidation,
383
+ failApi,
384
+ AUTO_PUBLISH_ARG,
385
+ refuseAutoPublish,
386
+ isTempScheduledAgentId,
387
+ validateScheduledAgentRef,
388
+ TRIGGER_ARG_DESCRIPTION,
389
+ TRIGGER_KIND_LIST,
390
+ NARROWING_ARGS,
391
+ buildTriggerBody,
392
+ parseBooleanFlag,
393
+ REACTION_ARGS,
394
+ SLACK_ARG,
395
+ companiesArg,
396
+ companiesBody,
397
+ slackBody,
398
+ reactionBody,
399
+ chatBody
400
+ };
401
+ //# sourceMappingURL=chunk-PYD6IGW6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/scheduled-agents/shared.ts"],"sourcesContent":["import {\n AUTO_PUBLISH_REFUSAL,\n firstTimes,\n isTriggerKind,\n parseConditionsExpression,\n TRIGGER_KIND_IDS,\n TRIGGER_KINDS,\n TRIGGER_TARGET_FIELD_IDS,\n TRIGGER_TARGET_FIELDS,\n TRIGGER_TARGETS,\n type TriggerKind,\n type TriggerTargetField,\n} from \"@baker/api\";\nimport { type AgentProfile, agentProfile } from \"../../agent-profile.ts\";\nimport { ApiError, validateConvexId } from \"../../client.ts\";\nimport { getEnv } from \"../../env.ts\";\nimport { writeJson } from \"../../output.ts\";\n\nconst TEMP_SCHEDULED_AGENT_PREFIX = \"temp_agent_\";\nconst TEMP_ID_PREFIX = \"temp_\";\n\nexport function writeOk<T = null>(data?: T, hints?: string[]): void {\n writeJson({ ok: true, data: (data ?? null) as T, ...(hints && hints.length > 0 ? { hints } : {}) });\n}\n\nexport function failValidation(message: string): never {\n writeJson({ ok: false, error: { code: \"VALIDATION_ERROR\", message } });\n process.exit(1);\n}\n\nexport function failApi(err: unknown): never {\n if (err instanceof ApiError) {\n writeJson({ ok: false, error: { code: err.code, message: err.message } });\n process.exit(1);\n }\n if (err instanceof Error) {\n writeJson({ ok: false, error: { code: \"INTERNAL_ERROR\", message: err.message } });\n process.exit(1);\n }\n writeJson({ ok: false, error: { code: \"INTERNAL_ERROR\", message: \"Unexpected error\" } });\n process.exit(1);\n}\n\n/**\n * `--auto-publish`, declared only to be refused. The dashboard's \"Publish its\n * work on its own\" is a standing authorization only a person can grant, and\n * citty drops a flag it does not declare — an agent asking for it would stage\n * the item and believe the switch was on.\n */\nexport const AUTO_PUBLISH_ARG = {\n \"auto-publish\": {\n type: \"string\" as const,\n description:\n \"Not available to the agent: publishing every run unreviewed is switched on by the user, on the item, after this chat is published. Passing it is refused and tells you what to ask them.\",\n required: false,\n },\n};\n\nexport function refuseAutoPublish(args: Record<string, unknown>): void {\n if (args[\"auto-publish\"] === undefined) {\n return;\n }\n writeJson({\n ok: false,\n error: {\n code: \"FORBIDDEN\",\n message: AUTO_PUBLISH_REFUSAL,\n fix: {\n action: \"ask_user\",\n explanation:\n 'Run the command again without --auto-publish. After this chat is published, ask the user to open the item in Scheduled agents and switch on \"Publish its work on its own\" under \"When a run finishes\" — until then each run waits for their review.',\n },\n },\n });\n process.exit(1);\n}\n\nexport function isTempScheduledAgentId(id: string): boolean {\n return id.startsWith(TEMP_SCHEDULED_AGENT_PREFIX);\n}\n\nfunction isOtherTempId(id: string): boolean {\n return id.startsWith(TEMP_ID_PREFIX) && !isTempScheduledAgentId(id);\n}\n\nexport function validateScheduledAgentRef(ref: string): void {\n if (isOtherTempId(ref)) {\n failValidation(`Scheduled agent temp IDs must start with ${TEMP_SCHEDULED_AGENT_PREFIX}.`);\n }\n if (!isTempScheduledAgentId(ref)) {\n validateConvexId(ref);\n }\n}\n\n/**\n * Every trigger, named for the agent reading `--help` or `baker schema`.\n *\n * Built from `@baker/api`, which the backend and the dashboard read too, so the\n * wording the CLI puts in front of the agent is the wording the product puts in\n * front of the marketer. The CLI kept a hand-copy of the old modes for exactly\n * one release and it had already drifted.\n */\nexport const TRIGGER_ARG_DESCRIPTION = `What makes this run. ${TRIGGER_KIND_IDS.map(\n (id) => `${id}: ${TRIGGER_KINDS[id].description}`,\n).join(\" \")} For the two time ones, pass --cron or --run-at instead and the kind is implied.`;\n\nexport const TRIGGER_KIND_LIST = [...TRIGGER_KIND_IDS];\n\n/**\n * The narrowing flags, in one place because `create` and `update` both take all\n * of them and a flag added to one and not the other is a trigger an agent can\n * set and then never change.\n */\nconst NARROWING_DESCRIPTIONS: Record<TriggerTargetField, string> = {\n eventName:\n \"With --trigger event.received: only this event name (a source's name, or one your site sends). Omit it to run on any event.\",\n toolkit: \"With --trigger app.event (required): the connected tool, by its slug — gmail, slack, googlesheets.\",\n account:\n \"With --trigger app.event (required): which connected account of that tool, by id (a tool can be connected more than once).\",\n appEvent:\n \"With --trigger app.event (required): what happens in the tool, by the tool's own id — GMAIL_NEW_GMAIL_MESSAGE. `targets --field appEvent --app <tool>` lists them with the settings each needs.\",\n provider:\n \"With --trigger connection.created, connection.removed or connection.needs_reconnect: only this tool (google-ads, hubspot, meta, or a connected tool's slug such as slack). Omit it for any tool.\",\n flowId:\n \"With --trigger form.submitted or flow.step.submitted: which Form, by slug. Omit it on form.submitted for any Form.\",\n stepId:\n \"With --trigger flow.step.submitted: which step of that Form, by id — `targets --field stepId --form <slug>` lists them by name.\",\n page: \"With --trigger landing.created or landing.published: only this page, by slug. Omit it for any page.\",\n tag: \"With --trigger task.created, task.claimed, task.completed, landing.created or landing.published: only ones carrying this tag. Omit it for any.\",\n experimentId:\n 'With --trigger experiment.decided, experiment.ended or experiment.concluded: only this test. Omit it for any test. Not for experiment.started — narrow that with --when \"page = <page>\".',\n taskId:\n \"With --trigger task.claimed or task.completed: only this Task, by id (a temp_ id of a Task staged in this chat works too). Omit it for any Task.\",\n agentId:\n \"With --trigger session.published, session.publish_failed or session.publish_incomplete: only the runs of this scheduled agent, by id (a temp_agent_ id staged in this chat works too). Omit it for any agent's work.\",\n platform:\n \"With --trigger session.publish_incomplete: only when this platform's changes did not all land — google-ads, meta-ads, linkedin-ads, x-ads, tag-manager or ga4. Omit it for any.\",\n collection: \"With --trigger knowledge.updated: only this Knowledge collection. Omit it for any of them.\",\n sourceId: \"With --trigger review.received: only reviews from this review source, by id. Omit it for any source.\",\n advertiserId: \"With --trigger advertiser.new_ads: only this followed advertiser, by id. Omit it for any of them.\",\n socialAccount:\n \"With --trigger social.post_published: only posts by this followed account, by its key (linkedin:in/jacintofleta, instagram:nike — `baker media-sources list`). Omit it for any account.\",\n personRole:\n \"With --trigger social.post_published: only posts by people with this role — ceo, founder, cto, cmo, head_of_sales, sales, marketing, employee, creator. Omit it for any account, pages included.\",\n};\n\n/**\n * One flag per thing a trigger can be pointed at, read off the same table the\n * dashboard's picker offers. `baker scheduled-agents targets` lists the values\n * each one takes, so no flag needs an id the agent has to guess.\n */\nexport const NARROWING_ARGS = {\n ...(Object.fromEntries(\n TRIGGER_TARGET_FIELD_IDS.map((field) => [\n TRIGGER_TARGET_FIELDS[field].flag,\n {\n type: \"string\" as const,\n description: `${NARROWING_DESCRIPTIONS[field]} \\`baker scheduled-agents targets --trigger <kind> --field ${field}\\` lists the values.`,\n required: false,\n },\n ]),\n ) as Record<string, { type: \"string\"; description: string; required: false }>),\n config: {\n type: \"string\" as const,\n description:\n 'With --trigger app.event: the event\\'s own settings as a JSON object — they filter inside the tool, before anything is sent. A Gmail search (\\'{\"query\":\"from:ana@acme.com\"}\\'), a label, a Slack channel, a GitHub repository (\\'{\"owner\":\"acme\",\"repo\":\"site\"}\\'). `targets --field appEvent --app <tool> --event <id>` lists each setting with its examples.',\n required: false,\n },\n};\n\n/**\n * A one-off run time, checked before it can be staged.\n *\n * A time that has already been overtaken cannot run, and until this existed\n * nothing said so: the backend took it, the change list showed the item, and\n * Publish created it switched off. Caught here it costs a round trip and the\n * user can still be asked what time they meant — converting a local time to UTC\n * the wrong way round is how it usually gets there.\n */\nfunction validateRunAt(runAt: string): void {\n if (!runAt.endsWith(\"Z\")) {\n failValidation(\"--run-at must be an ISO UTC timestamp ending in Z.\");\n }\n const parsed = Date.parse(runAt);\n if (!Number.isFinite(parsed)) {\n failValidation(\"--run-at must be a valid ISO timestamp.\");\n }\n if (parsed <= Date.now()) {\n failValidation(\n `--run-at ${runAt} has already passed. A one-off item only runs at a time still to come — pass a later ISO UTC timestamp, and check which timezone you converted from if you worked it out from a local time.`,\n );\n }\n}\n\nexport type TriggerBody =\n | { cron: string; timezone?: string }\n | { runAt: string; timezone?: string }\n | { trigger: Record<string, unknown>; timezone?: string }\n | { timezone: string };\n\n/**\n * The trigger a command is asking for, from the flags that name one.\n *\n * `--cron` and `--run-at` stay as the shorthands for the two time kinds: they\n * are what an agent reaches for and what every installed CLI already sends.\n * Everything else arrives as `--trigger <kind>` plus at most one narrowing flag,\n * so adding a kind is one entry in `@baker/api` and one case here.\n */\nexport function buildTriggerBody(\n args: Record<string, unknown>,\n options: { required: boolean },\n): TriggerBody | undefined {\n const cron = args.cron as string | undefined;\n const runAt = args[\"run-at\"] as string | undefined;\n const timezone = args.timezone as string | undefined;\n const kind = args.trigger as string | undefined;\n\n const given = [cron, runAt, kind].filter(Boolean).length;\n if (given > 1) {\n failValidation(\"--cron, --run-at and --trigger are mutually exclusive.\");\n }\n refuseNarrowingWithoutKind(args, kind, given);\n if (runAt) {\n validateRunAt(runAt);\n return { runAt, ...(timezone ? { timezone } : {}) };\n }\n if (cron) {\n return { cron, ...(timezone ? { timezone } : {}) };\n }\n if (kind) {\n return { trigger: triggerFromFlags(kind, args), ...(timezone ? { timezone } : {}) };\n }\n if (timezone && !options.required) {\n // The item keeps its trigger; the backend applies the new timezone to it.\n return { timezone };\n }\n if (options.required) {\n failValidation(\n `A trigger is required. Pass --cron or --run-at for a time-based one, or --trigger with one of: ${TRIGGER_KIND_IDS.join(\", \")}.`,\n );\n }\n return undefined;\n}\n\nfunction flagText(args: Record<string, unknown>, key: string): string | undefined {\n const value = args[key];\n return typeof value === \"string\" && value.trim().length > 0 ? value.trim() : undefined;\n}\n\n/**\n * The two time kinds have their own flags, and `--trigger time.cron` with no\n * cadence is the mistake that would otherwise be accepted and then refused by\n * the backend, one round trip later. And a test that exists has already\n * started, so naming one on `experiment.started` can never fire.\n */\nfunction refuseMisusedKinds(kind: TriggerKind, args: Record<string, unknown>): void {\n if (kind === \"time.once\") {\n failValidation(\"Use --run-at for a one-off, rather than --trigger time.once.\");\n }\n if (kind === \"time.cron\") {\n failValidation(\"Use --cron for a repeating schedule, rather than --trigger time.cron.\");\n }\n if (kind === \"experiment.started\" && flagText(args, \"experiment\")) {\n failValidation(\n 'A test that exists has already started, so --experiment never fires on experiment.started. Leave it off and add --when \"page = <page>\" to watch one page.',\n );\n }\n}\n\n/** A narrowing flag the kind does not take would be silently dropped — the item would fire on everything. */\nfunction refuseStrayFlags(kind: TriggerKind, args: Record<string, unknown>): void {\n const allowed = new Set(TRIGGER_TARGETS[kind].map((target) => TRIGGER_TARGET_FIELDS[target.field].flag));\n const stray = TRIGGER_TARGET_FIELD_IDS.map((field) => TRIGGER_TARGET_FIELDS[field].flag).filter(\n (flag) =>\n !allowed.has(flag) &&\n flagText(args, flag) !== undefined &&\n !(kind === \"experiment.started\" && flag === \"experiment\"),\n );\n if (stray.length === 0) {\n return;\n }\n failValidation(\n `${stray.map((flag) => `--${flag}`).join(\", \")} does not narrow ${kind}. ${\n allowed.size > 0\n ? `It can be pointed with ${[...allowed].map((flag) => `--${flag}`).join(\", \")}.`\n : \"It runs every time it happens — narrow it with --when rules over its payload instead.\"\n }`,\n );\n}\n\n/** Every flag that only means something beside `--trigger <kind>`. */\nconst NARROWING_FLAGS = [...TRIGGER_TARGET_FIELD_IDS.map((field) => TRIGGER_TARGET_FIELDS[field].flag), \"config\"];\n\n/**\n * A narrowing flag with no `--trigger` to narrow would be dropped without a\n * word — `update <id> --page pricing` succeeding and still firing on every page.\n */\nfunction refuseNarrowingWithoutKind(args: Record<string, unknown>, kind: string | undefined, given: number): void {\n if (kind) {\n return;\n }\n const stray = NARROWING_FLAGS.filter((flag) => flagText(args, flag) !== undefined);\n if (stray.length === 0) {\n return;\n }\n const flags = stray.map((flag) => `--${flag}`).join(\", \");\n failValidation(\n given > 0\n ? `${flags} does not narrow --cron or --run-at: a time trigger runs every time it comes round. Use --trigger <kind> with ${flags} instead, or leave ${flags} off.`\n : `${flags} narrows a trigger, and no trigger was given. Pass --trigger <kind> too — the item's whole trigger, with ${flags} — or leave ${flags} off.`,\n );\n}\n\n/** An `app.event`'s own settings, checked to be a JSON object before the round trip. */\nfunction configFromFlag(kind: TriggerKind, args: Record<string, unknown>): { configJson?: string } {\n const config = flagText(args, \"config\");\n if (!config) {\n return {};\n }\n if (kind !== \"app.event\") {\n failValidation(\"--config is only for --trigger app.event: the settings of what happens in the tool.\");\n }\n let parsed: unknown;\n try {\n parsed = JSON.parse(config);\n } catch {\n parsed = null;\n }\n if (typeof parsed !== \"object\" || parsed === null || Array.isArray(parsed)) {\n failValidation(`--config must be a JSON object, e.g. '{\"labelIds\":\"INBOX\"}'.`);\n }\n return { configJson: config };\n}\n\n/** The narrowing flags a kind takes, refused when they do not belong to it or one it needs is missing. */\nfunction triggerFromFlags(kind: string, args: Record<string, unknown>): Record<string, unknown> {\n if (!isTriggerKind(kind)) {\n failValidation(`--trigger must be one of: ${TRIGGER_KIND_IDS.join(\", \")}.`);\n }\n refuseMisusedKinds(kind, args);\n refuseStrayFlags(kind, args);\n const narrowings: Record<string, string> = {};\n for (const { field, required } of TRIGGER_TARGETS[kind]) {\n const value = flagText(args, TRIGGER_TARGET_FIELDS[field].flag);\n if (value) {\n narrowings[field] = value;\n } else if (required) {\n failValidation(\n `--trigger ${kind} needs --${TRIGGER_TARGET_FIELDS[field].flag}. \\`baker scheduled-agents targets --trigger ${kind} --field ${field}\\` lists what it can be.`,\n );\n }\n }\n // `webhook.received`, `brand.updated`, `creative.created`: the kind is the\n // whole of it. The webhook's address is reserved when it is staged and comes\n // back in the response.\n return { kind, ...narrowings, ...configFromFlag(kind, args) };\n}\n\n/**\n * Which firings actually run it, 1-based: `--occurrences 1` is \"only the first\n * time this ever happens\".\n */\nexport function parseOccurrences(raw: unknown): number[] | undefined {\n if (raw === undefined) {\n return undefined;\n }\n if (typeof raw !== \"string\") {\n failValidation(\"--occurrences must be a comma-separated list of whole numbers, e.g. 1 or 1,3.\");\n }\n const parts = raw\n .split(\",\")\n .map((part) => part.trim())\n .filter((part) => part.length > 0);\n const numbers = parts.map((part) => Number(part));\n if (numbers.length === 0 || numbers.some((n) => !Number.isInteger(n) || n <= 0)) {\n failValidation(\"--occurrences must be a comma-separated list of whole numbers above zero, e.g. 1 or 1,3.\");\n }\n return numbers;\n}\n\nexport function parseBooleanFlag(raw: unknown, flagName: string): boolean | undefined {\n if (raw === undefined) {\n return undefined;\n }\n if (raw === true || raw === \"true\") {\n return true;\n }\n if (raw === false || raw === \"false\") {\n return false;\n }\n failValidation(`${flagName} must be true or false.`);\n}\n\n/**\n * How the item reacts once woken, beyond what wakes it — shared by `create` and\n * `update` for the same reason `NARROWING_ARGS` is.\n */\nexport const REACTION_ARGS = {\n when: {\n type: \"string\" as const,\n description:\n \"Only run when what arrived passes these rules: `<field> <operator> <value>` joined by AND or by OR (either case). Fields are the trigger's payload fields (`baker scheduled-agents triggers --trigger <kind>` lists them; a webhook's are whatever was posted; an app.event's are what `targets --field appEvent --app <tool> --event <id>` says it sends). Operators: =, !=, contains, does not contain, starts with, ends with, >, <, >=, <=, in (comma list), exists, missing. Example: --when \\\"deal.stage = won AND amount > 10000\\\". A payload that fails is not counted and starts nothing. `none` clears the rules.\",\n required: false,\n },\n times: {\n type: \"string\" as const,\n description:\n \"Only the first N times it fires (and its --when rules pass), then never again. `--times 1` is only the first time. Shorthand for --occurrences 1,2,…,N.\",\n required: false,\n },\n payload: {\n type: \"string\" as const,\n description:\n \"include (default) or omit. Whether the run's first message carries what arrived — the posted body, the event's properties, the Form's answers (emails and phones masked). Place single values in --prompt with {{payload.<field>}} instead; those are filled either way.\",\n required: false,\n },\n cooldown: {\n type: \"string\" as const,\n description: \"At most one run per this many minutes, however often it fires. 0 removes it.\",\n required: false,\n },\n};\n\n/**\n * Where each run is told in Slack (docs/adr/0010-scheduled-agents-report-in-slack.md).\n * The run opens its own thread there and Baker's Slack agent reports on it.\n */\nexport const SLACK_ARG = {\n slack: {\n type: \"string\" as const,\n description:\n \"Tell each run in Slack: `here` (the Slack conversation this chat came from), `me` (a direct message to the person in this chat), `#channel` (a channel linked to this company), or `off`. Each run opens its own thread there and Baker reports on it: what it found, what it needs, whether to publish.\",\n required: false,\n },\n};\n\n/**\n * `--companies`, for the organization's own Scheduled agents and nobody else's:\n * a company's agent hears its own company, so it is never shown the flag.\n * Passed anyway, it reaches Baker, which refuses it on a company's item.\n */\nexport function companiesArg(\n profile: AgentProfile = agentProfile(),\n): Record<string, { type: \"string\"; description: string; required: false }> {\n return profile === \"organization\"\n ? {\n companies: {\n type: \"string\" as const,\n description:\n \"The companies whose events it hears, by id, comma-separated (`baker organization companies` lists them), or `all`. Left out, it hears every company, including ones added later. Only on a trigger that happens in a company; one company's Form, page or tag is a --when rule instead.\",\n required: false,\n },\n }\n : {};\n}\n\n/** The `--companies` choice for the request body, as written; Baker checks the ids against the organization. */\nexport function companiesBody(args: Record<string, unknown>): { companies?: string } {\n return typeof args.companies === \"string\" && args.companies.trim().length > 0\n ? { companies: args.companies.trim() }\n : {};\n}\n\n/** The `--slack` choice for the request body, as the person wrote it; Baker resolves it. */\nexport function slackBody(args: Record<string, unknown>): { slack?: string } {\n return typeof args.slack === \"string\" && args.slack.trim().length > 0 ? { slack: args.slack.trim() } : {};\n}\n\n/** A whole number from a flag, or a refusal naming the flag. */\nfunction wholeNumber(raw: unknown, flag: string, { min }: { min: number }): number | undefined {\n if (raw === undefined) {\n return undefined;\n }\n const value = Number(raw);\n if (!Number.isInteger(value) || value < min) {\n failValidation(`${flag} must be a whole number of at least ${min}.`);\n }\n return value;\n}\n\nexport interface ReactionBody {\n occurrences?: number[];\n when?: string;\n includePayload?: boolean;\n cooldownMinutes?: number;\n}\n\n/**\n * The reaction flags as the API reads them. `--when` is checked here and sent\n * as written: the backend parses the same language with the same code, so the\n * text on the wire is the text the agent wrote.\n */\nexport function reactionBody(args: Record<string, unknown>): ReactionBody {\n const occurrences = occurrencesFromFlags(args);\n const when = whenFromFlag(args.when);\n const includePayload = payloadFromFlag(args.payload);\n const cooldownMinutes = wholeNumber(args.cooldown, \"--cooldown\", { min: 0 });\n return {\n ...(occurrences !== undefined ? { occurrences } : {}),\n ...(when !== undefined ? { when } : {}),\n ...(includePayload !== undefined ? { includePayload } : {}),\n ...(cooldownMinutes !== undefined ? { cooldownMinutes } : {}),\n };\n}\n\nfunction occurrencesFromFlags(args: Record<string, unknown>): number[] | undefined {\n const times = wholeNumber(args.times, \"--times\", { min: 1 });\n const occurrences = parseOccurrences(args.occurrences);\n if (times !== undefined && occurrences !== undefined) {\n failValidation(\"Pass --times or --occurrences, not both — --times 3 is --occurrences 1,2,3.\");\n }\n return times !== undefined ? firstTimes(times) : occurrences;\n}\n\nfunction whenFromFlag(raw: unknown): string | undefined {\n if (typeof raw !== \"string\") {\n return undefined;\n }\n const text = raw.trim();\n if (text.length === 0 || text.toLowerCase() === \"none\") {\n return \"none\";\n }\n const parsed = parseConditionsExpression(text);\n if (!parsed.ok) {\n failValidation(parsed.error);\n }\n return text;\n}\n\nfunction payloadFromFlag(raw: unknown): boolean | undefined {\n if (raw === undefined) {\n return undefined;\n }\n if (raw !== \"include\" && raw !== \"omit\") {\n failValidation(\"--payload must be include or omit.\");\n }\n return raw === \"include\";\n}\n\n/**\n * The chat this turn belongs to, when the sandbox knows. The backend reads who\n * sent its latest message and lists that person's own connections beside the\n * company's — a personal inbox is theirs to listen to, and nobody else's.\n */\nexport function chatBody(): { chatId?: string } {\n const id = getEnv().BAKER_CHAT_ID;\n return id ? { chatId: id } : {};\n}\n"],"mappings":"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","names":[]}