@koda-sl/baker-cli 0.513.0 → 0.514.0-dev.555f7007e

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 (1156) hide show
  1. package/README.md +19 -2
  2. package/dist/account-QX4G4BJ7.js +82 -0
  3. package/dist/account-QX4G4BJ7.js.map +1 -0
  4. package/dist/account-UFYZS3K6.js +82 -0
  5. package/dist/account-UFYZS3K6.js.map +1 -0
  6. package/dist/account-assets-J5Z4URLQ.js +290 -0
  7. package/dist/account-level-4SBYYHRS.js +611 -0
  8. package/dist/account-level-4SBYYHRS.js.map +1 -0
  9. package/dist/account-reads-FOEVPWDP.js +219 -0
  10. package/dist/account-users-UTIF7MIT.js +64 -0
  11. package/dist/account-users-UTIF7MIT.js.map +1 -0
  12. package/dist/account-writes-QAQXRIEY.js +68 -0
  13. package/dist/account-writes-QAQXRIEY.js.map +1 -0
  14. package/dist/accounts-JK3OAS5U.js +701 -0
  15. package/dist/accounts-JK3OAS5U.js.map +1 -0
  16. package/dist/accounts-OE33CKWD.js +80 -0
  17. package/dist/accounts-OE33CKWD.js.map +1 -0
  18. package/dist/actions-QZDSLFFK.js +55 -0
  19. package/dist/activecampaign-U6TKRR45.js +938 -0
  20. package/dist/activecampaign-U6TKRR45.js.map +1 -0
  21. package/dist/ad-group-writes-XY5JYTKT.js +172 -0
  22. package/dist/ad-group-writes-XY5JYTKT.js.map +1 -0
  23. package/dist/ad-groups-YEO5ZS5U.js +70 -0
  24. package/dist/ad-groups-YEO5ZS5U.js.map +1 -0
  25. package/dist/ad-writes-XRCPK4SP.js +176 -0
  26. package/dist/ad-writes-XRCPK4SP.js.map +1 -0
  27. package/dist/add-2EF7S4NK.js +305 -0
  28. package/dist/add-2EF7S4NK.js.map +1 -0
  29. package/dist/add-YCJ6RXPG.js +107 -0
  30. package/dist/add-YCJ6RXPG.js.map +1 -0
  31. package/dist/ads-AYJAYLFR.js +48 -0
  32. package/dist/ads-H7H7H2CM.js +79 -0
  33. package/dist/ads-H7H7H2CM.js.map +1 -0
  34. package/dist/ads-MAOI7S6V.js +115 -0
  35. package/dist/adsets-QRKICEFD.js +182 -0
  36. package/dist/advertisers-JLSU3G35.js +123 -0
  37. package/dist/advertisers-JLSU3G35.js.map +1 -0
  38. package/dist/analytics-ADIWEM6G.js +2437 -0
  39. package/dist/analytics-ADIWEM6G.js.map +1 -0
  40. package/dist/analytics-XB6FRNVJ.js +447 -0
  41. package/dist/analytics-XB6FRNVJ.js.map +1 -0
  42. package/dist/animate-HRWFVE2N.js +480 -0
  43. package/dist/asset-writes-JLVUAVUZ.js +50 -0
  44. package/dist/assign-IWZ2OPFL.js +80 -0
  45. package/dist/assign-IWZ2OPFL.js.map +1 -0
  46. package/dist/audience-size-P5L6MZ4C.js +76 -0
  47. package/dist/audience-size-P5L6MZ4C.js.map +1 -0
  48. package/dist/audience-writes-CDKQB3SM.js +327 -0
  49. package/dist/audience-writes-CDKQB3SM.js.map +1 -0
  50. package/dist/audiences-CDDI5HR5.js +86 -0
  51. package/dist/audiences-XKERWKKE.js +280 -0
  52. package/dist/audiences-XKERWKKE.js.map +1 -0
  53. package/dist/audit-SEADLC6F.js +154 -0
  54. package/dist/audit-SEADLC6F.js.map +1 -0
  55. package/dist/autocomplete-AJQBJS5R.js +114 -0
  56. package/dist/autocomplete-AJQBJS5R.js.map +1 -0
  57. package/dist/avatars-4HCGWBOL.js +38 -0
  58. package/dist/bid-pricing-NWSUO3VM.js +103 -0
  59. package/dist/bid-pricing-NWSUO3VM.js.map +1 -0
  60. package/dist/brand-C6OB6Q4U.js +22 -0
  61. package/dist/brief-LCWWQ4OC.js +543 -0
  62. package/dist/brief-LCWWQ4OC.js.map +1 -0
  63. package/dist/campaign-groups-PH64UXZJ.js +99 -0
  64. package/dist/campaign-groups-PH64UXZJ.js.map +1 -0
  65. package/dist/campaign-writes-BN3EGDK5.js +168 -0
  66. package/dist/campaign-writes-BN3EGDK5.js.map +1 -0
  67. package/dist/campaign-writes-CLV5ZSUK.js +176 -0
  68. package/dist/campaign-writes-CLV5ZSUK.js.map +1 -0
  69. package/dist/campaigns-5XRY27JZ.js +78 -0
  70. package/dist/campaigns-5XRY27JZ.js.map +1 -0
  71. package/dist/campaigns-HES5MDUG.js +130 -0
  72. package/dist/campaigns-JF4TYYUP.js +113 -0
  73. package/dist/campaigns-JF4TYYUP.js.map +1 -0
  74. package/dist/campaigns-ZYU4BXDP.js +111 -0
  75. package/dist/canvas-AI34UBGU.js +46 -0
  76. package/dist/capabilities-TRHAPTUU.js +147 -0
  77. package/dist/capabilities-TRHAPTUU.js.map +1 -0
  78. package/dist/catalog-ZY3MFT55.js +65 -0
  79. package/dist/catalogs-6XLBWAUS.js +130 -0
  80. package/dist/catalogs-6XLBWAUS.js.map +1 -0
  81. package/dist/catalogs-TGLSJEK5.js +781 -0
  82. package/dist/catalogs-TGLSJEK5.js.map +1 -0
  83. package/dist/changes-OOUVQDBY.js +135 -0
  84. package/dist/chatgpt-NAXIFWXV.js +47 -0
  85. package/dist/chats-I5RHBRS5.js +279 -0
  86. package/dist/chats-I5RHBRS5.js.map +1 -0
  87. package/dist/check-3E64VBUE.js +107 -0
  88. package/dist/check-3E64VBUE.js.map +1 -0
  89. package/dist/chunk-3CHYJYSS.js +319 -0
  90. package/dist/chunk-3G3GC5N4.js +429 -0
  91. package/dist/chunk-3M45PYU7.js +274 -0
  92. package/dist/chunk-3QHXF3QI.js +23 -0
  93. package/dist/chunk-3XPHUMLJ.js +3868 -0
  94. package/dist/chunk-45EERHDB.js +783 -0
  95. package/dist/chunk-4FGTANFK.js +387 -0
  96. package/dist/chunk-4IHWT7PH.js +167 -0
  97. package/dist/chunk-4LF4AYPT.js +846 -0
  98. package/dist/chunk-4UQRXKYJ.js +219 -0
  99. package/dist/chunk-5JJD33Y2.js +455 -0
  100. package/dist/chunk-5K4QYYOJ.js +831 -0
  101. package/dist/chunk-5LJ6E4YU.js +163 -0
  102. package/dist/chunk-5T73MMBL.js +275 -0
  103. package/dist/chunk-64MAHLTK.js +363 -0
  104. package/dist/chunk-6OIKNJ7G.js +26 -0
  105. package/dist/chunk-6ZFSDYWV.js +131 -0
  106. package/dist/chunk-7BUIOP36.js +287 -0
  107. package/dist/chunk-7I6ZVBLM.js +358 -0
  108. package/dist/chunk-7I6ZVBLM.js.map +1 -0
  109. package/dist/chunk-AN4OEQXE.js +122 -0
  110. package/dist/chunk-AULSX5ZA.js +5368 -0
  111. package/dist/chunk-AVYUFJQQ.js +46 -0
  112. package/dist/chunk-B4YF7VQF.js +97 -0
  113. package/dist/chunk-BDOYNGUL.js +98 -0
  114. package/dist/chunk-BJOK7QD4.js +207 -0
  115. package/dist/chunk-CMCGFSUS.js +197 -0
  116. package/dist/chunk-DMJUIUAL.js +676 -0
  117. package/dist/chunk-DUCUOZLS.js +225 -0
  118. package/dist/chunk-EW7JSTRZ.js +24026 -0
  119. package/dist/chunk-EW7JSTRZ.js.map +1 -0
  120. package/dist/chunk-F3CZFUXZ.js +3187 -0
  121. package/dist/chunk-F3CZFUXZ.js.map +1 -0
  122. package/dist/chunk-FJZYOVSW.js +843 -0
  123. package/dist/chunk-FKP4ECJY.js +19 -0
  124. package/dist/chunk-G4FG5EQO.js +110 -0
  125. package/dist/chunk-G4FG5EQO.js.map +1 -0
  126. package/dist/chunk-GAYRBIEF.js +712 -0
  127. package/dist/chunk-GAYRBIEF.js.map +1 -0
  128. package/dist/chunk-GNMEOU46.js +8954 -0
  129. package/dist/chunk-GYKYXWUQ.js +156 -0
  130. package/dist/chunk-GYPLRU4Y.js +297 -0
  131. package/dist/chunk-I43ZEWJQ.js +285 -0
  132. package/dist/chunk-IZABTTW5.js +228 -0
  133. package/dist/chunk-JOE42ZW6.js +2984 -0
  134. package/dist/chunk-JOE42ZW6.js.map +1 -0
  135. package/dist/chunk-K7IE6UYV.js +1646 -0
  136. package/dist/chunk-KH5YHHJV.js +604 -0
  137. package/dist/chunk-KMY7AD3N.js +51 -0
  138. package/dist/chunk-KPCHWDJM.js +8914 -0
  139. package/dist/chunk-KTZCLJ2D.js +148 -0
  140. package/dist/chunk-MKUA54QE.js +638 -0
  141. package/dist/chunk-MTV2RSGY.js +63 -0
  142. package/dist/chunk-MUS2UTWU.js +4254 -0
  143. package/dist/chunk-MUS2UTWU.js.map +1 -0
  144. package/dist/chunk-N2QX57K3.js +392 -0
  145. package/dist/chunk-NB2FU6EZ.js +179 -0
  146. package/dist/chunk-NEYWS2DQ.js +479 -0
  147. package/dist/chunk-NKQWDEB7.js +115 -0
  148. package/dist/chunk-NKQWDEB7.js.map +1 -0
  149. package/dist/chunk-NWF2LRKO.js +188 -0
  150. package/dist/chunk-NZ34KM46.js +7211 -0
  151. package/dist/chunk-NZ34KM46.js.map +1 -0
  152. package/dist/chunk-OTC6UMJ2.js +191 -0
  153. package/dist/chunk-OUY2IAWL.js +224 -0
  154. package/dist/chunk-PJXNCRMR.js +344 -0
  155. package/dist/chunk-PYQ3GF7R.js +91 -0
  156. package/dist/chunk-Q3EIVZAR.js +170 -0
  157. package/dist/chunk-Q3GSVLE5.js +4274 -0
  158. package/dist/chunk-Q3GSVLE5.js.map +1 -0
  159. package/dist/chunk-QDQZ62FL.js +207 -0
  160. package/dist/chunk-QHZE62GP.js +1919 -0
  161. package/dist/chunk-RGR6TSTJ.js +103 -0
  162. package/dist/chunk-SAAXU7QR.js +203 -0
  163. package/dist/chunk-SHTKLRI6.js +66 -0
  164. package/dist/chunk-SIKCVWM3.js +76 -0
  165. package/dist/chunk-SOPVIIUW.js +68 -0
  166. package/dist/chunk-SOPVIIUW.js.map +1 -0
  167. package/dist/chunk-SSXG53CZ.js +89 -0
  168. package/dist/chunk-TBWAM577.js +547 -0
  169. package/dist/chunk-TGPGQTZA.js +169 -0
  170. package/dist/chunk-UMIX2BMM.js +1518 -0
  171. package/dist/chunk-URMAEVZO.js +150 -0
  172. package/dist/chunk-VBO3ZVUU.js +61 -0
  173. package/dist/chunk-VFLYMHTO.js +592 -0
  174. package/dist/chunk-VGYIVXIZ.js +249 -0
  175. package/dist/chunk-VIB7R533.js +57 -0
  176. package/dist/chunk-WLESMH4J.js +45 -0
  177. package/dist/chunk-WVWLPXBO.js +910 -0
  178. package/dist/chunk-XEH5XAP6.js +494 -0
  179. package/dist/chunk-XEOKVL4E.js +142 -0
  180. package/dist/chunk-XOGQJYXH.js +64 -0
  181. package/dist/chunk-XOQNM7I4.js +396 -0
  182. package/dist/chunk-XOQNM7I4.js.map +1 -0
  183. package/dist/chunk-XUXRA7IB.js +942 -0
  184. package/dist/claim-FIK2YTLM.js +200 -0
  185. package/dist/claim-FIK2YTLM.js.map +1 -0
  186. package/dist/cli.js +34 -33
  187. package/dist/cli.js.map +1 -1
  188. package/dist/companies-KMMV6EJW.js +198 -0
  189. package/dist/companies-KMMV6EJW.js.map +1 -0
  190. package/dist/company-B54URPJG.js +308 -0
  191. package/dist/company-B54URPJG.js.map +1 -0
  192. package/dist/complete-PPCWEXS3.js +84 -0
  193. package/dist/complete-PPCWEXS3.js.map +1 -0
  194. package/dist/connect-IAXSZPGA.js +45 -0
  195. package/dist/conversation-KHTZBGX2.js +96 -0
  196. package/dist/conversation-KHTZBGX2.js.map +1 -0
  197. package/dist/conversion-report-U66HW6JM.js +127 -0
  198. package/dist/conversion-report-U66HW6JM.js.map +1 -0
  199. package/dist/conversion-upload-command-IHFKVX2M.js +439 -0
  200. package/dist/conversion-writes-RSGDOAET.js +122 -0
  201. package/dist/conversion-writes-RSGDOAET.js.map +1 -0
  202. package/dist/conversions-BVOL43W4.js +78 -0
  203. package/dist/conversions-BVOL43W4.js.map +1 -0
  204. package/dist/conversions-SUMZAV2T.js +140 -0
  205. package/dist/conversions-SUMZAV2T.js.map +1 -0
  206. package/dist/copy-writes-CIHIFLY6.js +170 -0
  207. package/dist/copy-writes-CIHIFLY6.js.map +1 -0
  208. package/dist/create-732HQL3C.js +210 -0
  209. package/dist/create-732HQL3C.js.map +1 -0
  210. package/dist/create-TFR6R2KF.js +239 -0
  211. package/dist/create-TFR6R2KF.js.map +1 -0
  212. package/dist/create-UC57ULRL.js +62 -0
  213. package/dist/create-UC57ULRL.js.map +1 -0
  214. package/dist/create-UL2OYXOA.js +135 -0
  215. package/dist/create-UL2OYXOA.js.map +1 -0
  216. package/dist/creatives-BB6S2OF6.js +89 -0
  217. package/dist/creatives-BZEVJ6ER.js +58 -0
  218. package/dist/creatives-FU3YELGU.js +223 -0
  219. package/dist/creatives-FU3YELGU.js.map +1 -0
  220. package/dist/credentials-AYV5YQE4.js +290 -0
  221. package/dist/credentials-AYV5YQE4.js.map +1 -0
  222. package/dist/critique-FKIJB72I.js +1451 -0
  223. package/dist/critique-FKIJB72I.js.map +1 -0
  224. package/dist/critique-IQYNDXCN.js +232 -0
  225. package/dist/critique-IQYNDXCN.js.map +1 -0
  226. package/dist/crm-ILQMNJPX.js +323 -0
  227. package/dist/crm-ILQMNJPX.js.map +1 -0
  228. package/dist/crm-MQQRBITZ.js +227 -0
  229. package/dist/crm-MQQRBITZ.js.map +1 -0
  230. package/dist/currency-CGKO5GKH.js +88 -0
  231. package/dist/custom-conversions-HAGG72LF.js +128 -0
  232. package/dist/customers-NKKU6S7G.js +59 -0
  233. package/dist/delete-2TCCNRMH.js +57 -0
  234. package/dist/delete-2TCCNRMH.js.map +1 -0
  235. package/dist/delete-HCZTISBT.js +69 -0
  236. package/dist/delete-HCZTISBT.js.map +1 -0
  237. package/dist/delete-UIKB5ZXS.js +67 -0
  238. package/dist/delete-UIKB5ZXS.js.map +1 -0
  239. package/dist/demographics-ABZODD45.js +141 -0
  240. package/dist/demographics-ABZODD45.js.map +1 -0
  241. package/dist/discard-V3K5PZ4W.js +69 -0
  242. package/dist/discard-V3K5PZ4W.js.map +1 -0
  243. package/dist/discover-VM3O7CQM.js +172 -0
  244. package/dist/domain-A66DHOTQ.js +101 -0
  245. package/dist/domain-A66DHOTQ.js.map +1 -0
  246. package/dist/download-LSAZD5JO.js +172 -0
  247. package/dist/download-LSAZD5JO.js.map +1 -0
  248. package/dist/draft-5UUJC675.js +335 -0
  249. package/dist/draft-5UUJC675.js.map +1 -0
  250. package/dist/draft-BATA5CVI.js +283 -0
  251. package/dist/draft-BATA5CVI.js.map +1 -0
  252. package/dist/draft-CRDBU6LF.js +308 -0
  253. package/dist/draft-P7IDMXWR.js +310 -0
  254. package/dist/draft-P7IDMXWR.js.map +1 -0
  255. package/dist/draft-YBNL4ZZA.js +220 -0
  256. package/dist/draft-YBNL4ZZA.js.map +1 -0
  257. package/dist/engine/index.js +7 -7
  258. package/dist/experiments-MLLTHMMS.js +236 -0
  259. package/dist/experiments-MLLTHMMS.js.map +1 -0
  260. package/dist/facets-KSHR3MBE.js +117 -0
  261. package/dist/facets-KSHR3MBE.js.map +1 -0
  262. package/dist/feedback-4GCPXZSI.js +111 -0
  263. package/dist/feedback-4GCPXZSI.js.map +1 -0
  264. package/dist/feedback-record-VEFHUIUJ.js +265 -0
  265. package/dist/feedback-record-VEFHUIUJ.js.map +1 -0
  266. package/dist/fetch-42QL56JC.js +179 -0
  267. package/dist/fetch-42QL56JC.js.map +1 -0
  268. package/dist/fit-Q5GRVF2O.js +65 -0
  269. package/dist/flows-M3WBZQET.js +250 -0
  270. package/dist/flows-M3WBZQET.js.map +1 -0
  271. package/dist/fonts-GD4YRXQU.js +39 -0
  272. package/dist/forecast-HT46MFL4.js +121 -0
  273. package/dist/forecast-HT46MFL4.js.map +1 -0
  274. package/dist/forecast-ONVS2QAI.js +169 -0
  275. package/dist/funnel-76BAD64Q.js +397 -0
  276. package/dist/funnel-76BAD64Q.js.map +1 -0
  277. package/dist/generate-VBEY3N3L.js +263 -0
  278. package/dist/get-4KFAO475.js +82 -0
  279. package/dist/get-4KFAO475.js.map +1 -0
  280. package/dist/get-QV5NIADE.js +59 -0
  281. package/dist/get-QV5NIADE.js.map +1 -0
  282. package/dist/google-7EZP7I6J.js +3267 -0
  283. package/dist/google-ads-J7WHTJO4.js +198 -0
  284. package/dist/google-ads-J7WHTJO4.js.map +1 -0
  285. package/dist/history-EULKWQUS.js +136 -0
  286. package/dist/history-EULKWQUS.js.map +1 -0
  287. package/dist/history-FEBJHFHJ.js +69 -0
  288. package/dist/history-FEBJHFHJ.js.map +1 -0
  289. package/dist/history-RDVV7KBN.js +102 -0
  290. package/dist/history-RDVV7KBN.js.map +1 -0
  291. package/dist/hubspot-A3RQNMYN.js +782 -0
  292. package/dist/hubspot-A3RQNMYN.js.map +1 -0
  293. package/dist/ideas-WX7EBPSF.js +45 -0
  294. package/dist/images-4AXF4LAC.js +92 -0
  295. package/dist/ingest-AM5YDTRH.js +110 -0
  296. package/dist/ingest-AM5YDTRH.js.map +1 -0
  297. package/dist/ingest-C3M4GUO6.js +26 -0
  298. package/dist/insights-UTCMSWSC.js +132 -0
  299. package/dist/insights-UTCMSWSC.js.map +1 -0
  300. package/dist/insights-XZL2EM53.js +439 -0
  301. package/dist/insights-XZL2EM53.js.map +1 -0
  302. package/dist/inspect-DWCLRZGR.js +192 -0
  303. package/dist/inspect-DWCLRZGR.js.map +1 -0
  304. package/dist/instant-experiences-RM4MLJTL.js +260 -0
  305. package/dist/instant-experiences-RM4MLJTL.js.map +1 -0
  306. package/dist/intent-ZMYMFGB4.js +95 -0
  307. package/dist/keyword-gap-XSJO2R77.js +130 -0
  308. package/dist/keyword-metrics-M46FCTAS.js +200 -0
  309. package/dist/keyword-metrics-M46FCTAS.js.map +1 -0
  310. package/dist/keywords-for-site-XNSLX7EA.js +131 -0
  311. package/dist/keywords-for-site-XNSLX7EA.js.map +1 -0
  312. package/dist/landing-MUNYZQNA.js +28 -0
  313. package/dist/languages-DIQ3OG3E.js +40 -0
  314. package/dist/lead-routes-XBO2GOBL.js +608 -0
  315. package/dist/lead-routes-XBO2GOBL.js.map +1 -0
  316. package/dist/leads-LAATTW5G.js +115 -0
  317. package/dist/leads-LAATTW5G.js.map +1 -0
  318. package/dist/leads-ULYHTG22.js +540 -0
  319. package/dist/leads-ULYHTG22.js.map +1 -0
  320. package/dist/learn-3GLY4G3H.js +207 -0
  321. package/dist/learn-3GLY4G3H.js.map +1 -0
  322. package/dist/line-item-writes-XJTTA3X5.js +211 -0
  323. package/dist/line-item-writes-XJTTA3X5.js.map +1 -0
  324. package/dist/line-items-JR25T2C5.js +107 -0
  325. package/dist/link-7DSLIF3I.js +67 -0
  326. package/dist/link-7DSLIF3I.js.map +1 -0
  327. package/dist/linkedin-W5BJ6HEH.js +1316 -0
  328. package/dist/linkedin-W5BJ6HEH.js.map +1 -0
  329. package/dist/linkedin-person-2ZYSOHYR.js +139 -0
  330. package/dist/linkedin-person-2ZYSOHYR.js.map +1 -0
  331. package/dist/list-3653DIYB.js +67 -0
  332. package/dist/list-3653DIYB.js.map +1 -0
  333. package/dist/list-G66HVYCR.js +306 -0
  334. package/dist/list-G66HVYCR.js.map +1 -0
  335. package/dist/list-Z4M53MS5.js +154 -0
  336. package/dist/list-Z4M53MS5.js.map +1 -0
  337. package/dist/locations-HTVYJSDJ.js +40 -0
  338. package/dist/locations-M2B5XDU4.js +69 -0
  339. package/dist/locations-M2B5XDU4.js.map +1 -0
  340. package/dist/log-2RJU5BOW.js +95 -0
  341. package/dist/log-2RJU5BOW.js.map +1 -0
  342. package/dist/lookup-S5VG7AWH.js +23 -0
  343. package/dist/make-MJ6JMU5T.js +1370 -0
  344. package/dist/make-MJ6JMU5T.js.map +1 -0
  345. package/dist/map-27IPOBY6.js +436 -0
  346. package/dist/map-27IPOBY6.js.map +1 -0
  347. package/dist/mcp-TFQTME4P.js +717 -0
  348. package/dist/mcp-TFQTME4P.js.map +1 -0
  349. package/dist/media-P4T4ZBNS.js +18 -0
  350. package/dist/media-sources-P246GM7W.js +35 -0
  351. package/dist/members-KOKBTUC2.js +47 -0
  352. package/dist/members-KOKBTUC2.js.map +1 -0
  353. package/dist/meta-IPLWNYC7.js +122 -0
  354. package/dist/metrics-WYWUX6Y5.js +152 -0
  355. package/dist/models-HJ7Y55AH.js +155 -0
  356. package/dist/normalize-GXBUNTYJ.js +144 -0
  357. package/dist/normalize-GXBUNTYJ.js.map +1 -0
  358. package/dist/options-MA25RNXF.js +125 -0
  359. package/dist/options-MA25RNXF.js.map +1 -0
  360. package/dist/organization-NLEVNGKQ.js +949 -0
  361. package/dist/organization-NLEVNGKQ.js.map +1 -0
  362. package/dist/page-photos-OQ5QATQH.js +118 -0
  363. package/dist/page-photos-OQ5QATQH.js.map +1 -0
  364. package/dist/performance-34EUP5KL.js +5541 -0
  365. package/dist/performance-34EUP5KL.js.map +1 -0
  366. package/dist/performance-J3DLNI2W.js +27 -0
  367. package/dist/pixels-THEGYRXT.js +62 -0
  368. package/dist/pixels-THEGYRXT.js.map +1 -0
  369. package/dist/plan-7UF76Q6U.js +208 -0
  370. package/dist/plan-7UF76Q6U.js.map +1 -0
  371. package/dist/preview-LRJOQ7LM.js +218 -0
  372. package/dist/preview-LRJOQ7LM.js.map +1 -0
  373. package/dist/promoted-tweet-writes-SBXWKO23.js +183 -0
  374. package/dist/promoted-tweet-writes-SBXWKO23.js.map +1 -0
  375. package/dist/promoted-tweets-W42FNWS7.js +119 -0
  376. package/dist/publish-YG76GOA7.js +344 -0
  377. package/dist/publish-YG76GOA7.js.map +1 -0
  378. package/dist/query-IQICLABN.js +62 -0
  379. package/dist/questionnaire-DWEH5II4.js +94 -0
  380. package/dist/questionnaire-DWEH5II4.js.map +1 -0
  381. package/dist/reddit-X4CERXYF.js +29 -0
  382. package/dist/refresh-A36GA7JN.js +97 -0
  383. package/dist/refresh-A36GA7JN.js.map +1 -0
  384. package/dist/release-3NCMZIDI.js +63 -0
  385. package/dist/release-3NCMZIDI.js.map +1 -0
  386. package/dist/relevant-pages-UDDQOYLD.js +99 -0
  387. package/dist/remove-6LE3XNRG.js +53 -0
  388. package/dist/remove-6LE3XNRG.js.map +1 -0
  389. package/dist/reopen-XLADJ2UU.js +66 -0
  390. package/dist/reopen-XLADJ2UU.js.map +1 -0
  391. package/dist/rerun-QVMFJZA2.js +95 -0
  392. package/dist/rerun-QVMFJZA2.js.map +1 -0
  393. package/dist/research-D5UUJF74.js +72 -0
  394. package/dist/research-QCI5ISUE.js +265 -0
  395. package/dist/research-QCI5ISUE.js.map +1 -0
  396. package/dist/reset-DD37KDXQ.js +57 -0
  397. package/dist/reset-DD37KDXQ.js.map +1 -0
  398. package/dist/reset-FLZPKY2N.js +57 -0
  399. package/dist/reset-FLZPKY2N.js.map +1 -0
  400. package/dist/resolve-KRKIJKT7.js +124 -0
  401. package/dist/resolve-KRKIJKT7.js.map +1 -0
  402. package/dist/retry-ALXYEKFV.js +65 -0
  403. package/dist/retry-ALXYEKFV.js.map +1 -0
  404. package/dist/retry-MIXKW4EW.js +63 -0
  405. package/dist/retry-MIXKW4EW.js.map +1 -0
  406. package/dist/revenue-UBZUTSXN.js +91 -0
  407. package/dist/revenue-UBZUTSXN.js.map +1 -0
  408. package/dist/rule-writes-UAVWT4XS.js +525 -0
  409. package/dist/rule-writes-UAVWT4XS.js.map +1 -0
  410. package/dist/rules-SO6P44B6.js +99 -0
  411. package/dist/rules-SO6P44B6.js.map +1 -0
  412. package/dist/rules-ZVS2MWED.js +217 -0
  413. package/dist/rules-add-XN3BZKFO.js +465 -0
  414. package/dist/rules-add-XN3BZKFO.js.map +1 -0
  415. package/dist/run-K2DOMOAN.js +69 -0
  416. package/dist/run-K2DOMOAN.js.map +1 -0
  417. package/dist/run-T7XAH2W5.js +70 -0
  418. package/dist/scaffold-ad-TWIT7R4U.js +1516 -0
  419. package/dist/scaffold-ad-TWIT7R4U.js.map +1 -0
  420. package/dist/scaffold-static-ad-GPJKOGOI.js +1015 -0
  421. package/dist/scaffold-static-ad-GPJKOGOI.js.map +1 -0
  422. package/dist/scaffold-video-7BQNOJ4S.js +888 -0
  423. package/dist/scaffold-video-7BQNOJ4S.js.map +1 -0
  424. package/dist/schedule-UTRVEWPE.js +64 -0
  425. package/dist/schedule-UTRVEWPE.js.map +1 -0
  426. package/dist/scheduled-agents-ZGCUZ6SB.js +55 -0
  427. package/dist/schema-D6BMZAPB.js +69 -0
  428. package/dist/schema-DSMF6ELE.js +135 -0
  429. package/dist/schema-DSMF6ELE.js.map +1 -0
  430. package/dist/search-2P72GSKY.js +177 -0
  431. package/dist/search-2P72GSKY.js.map +1 -0
  432. package/dist/select-N7VWQ2ZQ.js +106 -0
  433. package/dist/select-N7VWQ2ZQ.js.map +1 -0
  434. package/dist/sends-LAY5C74B.js +349 -0
  435. package/dist/sends-LAY5C74B.js.map +1 -0
  436. package/dist/set-prompt-3N3HMHT6.js +198 -0
  437. package/dist/set-prompt-3N3HMHT6.js.map +1 -0
  438. package/dist/setup-links-I5RFZTS4.js +144 -0
  439. package/dist/setup-links-I5RFZTS4.js.map +1 -0
  440. package/dist/shopify-LXSR37XI.js +3958 -0
  441. package/dist/shopify-LXSR37XI.js.map +1 -0
  442. package/dist/site-AI3BFWRK.js +180 -0
  443. package/dist/site-AI3BFWRK.js.map +1 -0
  444. package/dist/sources-AOF2YDYX.js +457 -0
  445. package/dist/sources-AOF2YDYX.js.map +1 -0
  446. package/dist/sources-DVMJEXEX.js +30 -0
  447. package/dist/stale-P4GGOLIB.js +76 -0
  448. package/dist/stale-P4GGOLIB.js.map +1 -0
  449. package/dist/status-O25MXHU4.js +65 -0
  450. package/dist/status-O25MXHU4.js.map +1 -0
  451. package/dist/studies-EPO2AM4M.js +250 -0
  452. package/dist/studio-5Z4NMA4K.js +49 -0
  453. package/dist/study-writes-7FP443QQ.js +470 -0
  454. package/dist/study-writes-7FP443QQ.js.map +1 -0
  455. package/dist/sync-2AI7LKKN.js +57 -0
  456. package/dist/sync-2AI7LKKN.js.map +1 -0
  457. package/dist/sync-definition-F3CXG6KG.js +69 -0
  458. package/dist/tags-SEZ2CQJM.js +26 -0
  459. package/dist/tags-TJDZXOXS.js +227 -0
  460. package/dist/tags-TJDZXOXS.js.map +1 -0
  461. package/dist/tags-YSC7ZILI.js +23 -0
  462. package/dist/tags-YSC7ZILI.js.map +1 -0
  463. package/dist/tags-Z6EALYOS.js +23 -0
  464. package/dist/tags-Z6EALYOS.js.map +1 -0
  465. package/dist/tags-ZXSVW6XO.js +23 -0
  466. package/dist/tags-ZXSVW6XO.js.map +1 -0
  467. package/dist/targeting-NKZFEZD7.js +762 -0
  468. package/dist/targeting-NKZFEZD7.js.map +1 -0
  469. package/dist/targeting-criteria-AU5CSMAU.js +113 -0
  470. package/dist/targets-IOIH5JYS.js +106 -0
  471. package/dist/targets-IOIH5JYS.js.map +1 -0
  472. package/dist/testimonials-Y6PUV6AL.js +32 -0
  473. package/dist/themes-PGPIAKAO.js +95 -0
  474. package/dist/top-companies-FSITN3ZR.js +111 -0
  475. package/dist/top-companies-FSITN3ZR.js.map +1 -0
  476. package/dist/transcript-CGPX7Y37.js +165 -0
  477. package/dist/transcript-CGPX7Y37.js.map +1 -0
  478. package/dist/translate-QCBMGOKR.js +609 -0
  479. package/dist/translate-QCBMGOKR.js.map +1 -0
  480. package/dist/triggers-MONMZSKT.js +144 -0
  481. package/dist/triggers-MONMZSKT.js.map +1 -0
  482. package/dist/unlink-I7QFQQKO.js +70 -0
  483. package/dist/unlink-I7QFQQKO.js.map +1 -0
  484. package/dist/unstage-JXG5AU5Q.js +88 -0
  485. package/dist/unstage-JXG5AU5Q.js.map +1 -0
  486. package/dist/unstage-ZA3WQBEA.js +96 -0
  487. package/dist/unstage-ZA3WQBEA.js.map +1 -0
  488. package/dist/update-BVZGM54I.js +66 -0
  489. package/dist/update-BVZGM54I.js.map +1 -0
  490. package/dist/update-EI2BHUM2.js +101 -0
  491. package/dist/update-EI2BHUM2.js.map +1 -0
  492. package/dist/update-RZSV4NYP.js +155 -0
  493. package/dist/update-RZSV4NYP.js.map +1 -0
  494. package/dist/update-WLDNOZ5U.js +192 -0
  495. package/dist/update-WLDNOZ5U.js.map +1 -0
  496. package/dist/upload-BP3YEQSF.js +129 -0
  497. package/dist/upload-BP3YEQSF.js.map +1 -0
  498. package/dist/url-options-63DED6CR.js +131 -0
  499. package/dist/url-options-63DED6CR.js.map +1 -0
  500. package/dist/url-params-TRFI2PMD.js +101 -0
  501. package/dist/url-params-TRFI2PMD.js.map +1 -0
  502. package/dist/validate-SNCR25A7.js +122 -0
  503. package/dist/validate-SNCR25A7.js.map +1 -0
  504. package/dist/videos-SVZV5YYC.js +41 -0
  505. package/dist/viewer-check-LUAEGV6H.js +83 -0
  506. package/dist/web-MJQEK7BB.js +143 -0
  507. package/dist/web-MJQEK7BB.js.map +1 -0
  508. package/dist/winning-ads-KNLJHHCO.js +86 -0
  509. package/dist/write-commands-NVCX7IAU.js +1502 -0
  510. package/dist/write-commands-NVCX7IAU.js.map +1 -0
  511. package/dist/write-commands-OGVDWWBV.js +1172 -0
  512. package/dist/write-commands-OGVDWWBV.js.map +1 -0
  513. package/dist/x-ZQNHYIDU.js +47 -0
  514. package/package.json +1 -1
  515. package/dist/account-UUAEQWO3.js +0 -80
  516. package/dist/account-UUAEQWO3.js.map +0 -1
  517. package/dist/account-WLQBAQMD.js +0 -80
  518. package/dist/account-WLQBAQMD.js.map +0 -1
  519. package/dist/account-assets-O7IA37RE.js +0 -290
  520. package/dist/account-level-EU7BWCO7.js +0 -609
  521. package/dist/account-level-EU7BWCO7.js.map +0 -1
  522. package/dist/account-reads-SNOWDHHF.js +0 -219
  523. package/dist/account-users-NV37Z2XJ.js +0 -62
  524. package/dist/account-users-NV37Z2XJ.js.map +0 -1
  525. package/dist/account-writes-TU3WJRSI.js +0 -66
  526. package/dist/account-writes-TU3WJRSI.js.map +0 -1
  527. package/dist/accounts-MZ6SETJJ.js +0 -78
  528. package/dist/accounts-MZ6SETJJ.js.map +0 -1
  529. package/dist/accounts-U7ZBEAY6.js +0 -699
  530. package/dist/accounts-U7ZBEAY6.js.map +0 -1
  531. package/dist/actions-4JYHXRFH.js +0 -55
  532. package/dist/activecampaign-IDBV26HH.js +0 -936
  533. package/dist/activecampaign-IDBV26HH.js.map +0 -1
  534. package/dist/ad-group-writes-HLBWN4E4.js +0 -170
  535. package/dist/ad-group-writes-HLBWN4E4.js.map +0 -1
  536. package/dist/ad-groups-33NZD6J3.js +0 -68
  537. package/dist/ad-groups-33NZD6J3.js.map +0 -1
  538. package/dist/ad-writes-7ZDNDZ2E.js +0 -174
  539. package/dist/ad-writes-7ZDNDZ2E.js.map +0 -1
  540. package/dist/add-AF42LQQQ.js +0 -105
  541. package/dist/add-AF42LQQQ.js.map +0 -1
  542. package/dist/add-LJRZYJ7I.js +0 -303
  543. package/dist/add-LJRZYJ7I.js.map +0 -1
  544. package/dist/ads-KBE5JXCH.js +0 -115
  545. package/dist/ads-LXWXOQHX.js +0 -48
  546. package/dist/ads-X3AM6M7L.js +0 -77
  547. package/dist/ads-X3AM6M7L.js.map +0 -1
  548. package/dist/adsets-YWBJFPAZ.js +0 -182
  549. package/dist/advertisers-6FOCN2W3.js +0 -121
  550. package/dist/advertisers-6FOCN2W3.js.map +0 -1
  551. package/dist/analytics-64HBRJJE.js +0 -2435
  552. package/dist/analytics-64HBRJJE.js.map +0 -1
  553. package/dist/analytics-VY5NL2GL.js +0 -445
  554. package/dist/analytics-VY5NL2GL.js.map +0 -1
  555. package/dist/animate-2BMHZ4FM.js +0 -480
  556. package/dist/asset-writes-72DEVXGO.js +0 -48
  557. package/dist/assign-N2I2BM67.js +0 -78
  558. package/dist/assign-N2I2BM67.js.map +0 -1
  559. package/dist/audience-size-H5DEZXJN.js +0 -74
  560. package/dist/audience-size-H5DEZXJN.js.map +0 -1
  561. package/dist/audience-writes-KCHLNFSI.js +0 -325
  562. package/dist/audience-writes-KCHLNFSI.js.map +0 -1
  563. package/dist/audiences-QAH42HIM.js +0 -86
  564. package/dist/audiences-WCDWN64L.js +0 -268
  565. package/dist/audiences-WCDWN64L.js.map +0 -1
  566. package/dist/audit-2AAF6AOX.js +0 -152
  567. package/dist/audit-2AAF6AOX.js.map +0 -1
  568. package/dist/autocomplete-3GSKRNCZ.js +0 -112
  569. package/dist/autocomplete-3GSKRNCZ.js.map +0 -1
  570. package/dist/avatars-N6W6HUPP.js +0 -38
  571. package/dist/bid-pricing-IMITXHXN.js +0 -101
  572. package/dist/bid-pricing-IMITXHXN.js.map +0 -1
  573. package/dist/brand-ITWQVZD2.js +0 -22
  574. package/dist/brief-JJNEYPYB.js +0 -541
  575. package/dist/brief-JJNEYPYB.js.map +0 -1
  576. package/dist/campaign-groups-TTQLP32Q.js +0 -97
  577. package/dist/campaign-groups-TTQLP32Q.js.map +0 -1
  578. package/dist/campaign-writes-MAKPHQ3V.js +0 -166
  579. package/dist/campaign-writes-MAKPHQ3V.js.map +0 -1
  580. package/dist/campaign-writes-XO74BALZ.js +0 -174
  581. package/dist/campaign-writes-XO74BALZ.js.map +0 -1
  582. package/dist/campaigns-5BIDXYSR.js +0 -111
  583. package/dist/campaigns-LS65QM6W.js +0 -76
  584. package/dist/campaigns-LS65QM6W.js.map +0 -1
  585. package/dist/campaigns-XZOQ2VTK.js +0 -130
  586. package/dist/campaigns-XZPXCS7I.js +0 -111
  587. package/dist/campaigns-XZPXCS7I.js.map +0 -1
  588. package/dist/canvas-SL3RMOY5.js +0 -46
  589. package/dist/capabilities-LSR5GCE6.js +0 -145
  590. package/dist/capabilities-LSR5GCE6.js.map +0 -1
  591. package/dist/catalog-TZLU5NWI.js +0 -65
  592. package/dist/catalogs-JLCSFZYC.js +0 -779
  593. package/dist/catalogs-JLCSFZYC.js.map +0 -1
  594. package/dist/catalogs-T23RKYFC.js +0 -128
  595. package/dist/catalogs-T23RKYFC.js.map +0 -1
  596. package/dist/changes-36C754R4.js +0 -135
  597. package/dist/chatgpt-3WFOPURY.js +0 -47
  598. package/dist/chats-GGYTXNJS.js +0 -277
  599. package/dist/chats-GGYTXNJS.js.map +0 -1
  600. package/dist/check-P7UPBBG7.js +0 -105
  601. package/dist/check-P7UPBBG7.js.map +0 -1
  602. package/dist/chunk-2TOIY2WN.js +0 -4254
  603. package/dist/chunk-2TOIY2WN.js.map +0 -1
  604. package/dist/chunk-3YJNSUNF.js +0 -131
  605. package/dist/chunk-4D46PS6J.js +0 -344
  606. package/dist/chunk-4GAEB6NK.js +0 -228
  607. package/dist/chunk-5XTGG4PV.js +0 -274
  608. package/dist/chunk-6JCX3YLM.js +0 -249
  609. package/dist/chunk-6KWEF6HF.js +0 -8914
  610. package/dist/chunk-7HZSORAB.js +0 -843
  611. package/dist/chunk-7J3NZBPV.js +0 -2982
  612. package/dist/chunk-7J3NZBPV.js.map +0 -1
  613. package/dist/chunk-A3IQAONL.js +0 -638
  614. package/dist/chunk-ALMYGH5U.js +0 -479
  615. package/dist/chunk-AQKRSEBQ.js +0 -103
  616. package/dist/chunk-ASRS37QE.js +0 -710
  617. package/dist/chunk-ASRS37QE.js.map +0 -1
  618. package/dist/chunk-BL6RTOK3.js +0 -297
  619. package/dist/chunk-C6CBBZBO.js +0 -203
  620. package/dist/chunk-CCEDZTP7.js +0 -391
  621. package/dist/chunk-CCEDZTP7.js.map +0 -1
  622. package/dist/chunk-CKQTJ2LV.js +0 -89
  623. package/dist/chunk-D3KLDIPQ.js +0 -45
  624. package/dist/chunk-DL2UJNJ7.js +0 -8954
  625. package/dist/chunk-DQ54POZN.js +0 -363
  626. package/dist/chunk-EDLZGTGN.js +0 -216
  627. package/dist/chunk-EDLZGTGN.js.map +0 -1
  628. package/dist/chunk-EXSHBYNQ.js +0 -349
  629. package/dist/chunk-EXSHBYNQ.js.map +0 -1
  630. package/dist/chunk-F4YQ5PVR.js +0 -1518
  631. package/dist/chunk-FFFJBNHA.js +0 -63
  632. package/dist/chunk-FFG2OYVV.js +0 -64
  633. package/dist/chunk-FKQK22IX.js +0 -51
  634. package/dist/chunk-FLK6QHOY.js +0 -142
  635. package/dist/chunk-GACSA5A6.js +0 -1646
  636. package/dist/chunk-HJKYTNAZ.js +0 -61
  637. package/dist/chunk-HML3VQIW.js +0 -225
  638. package/dist/chunk-INUU3752.js +0 -392
  639. package/dist/chunk-IQHO2ABF.js +0 -197
  640. package/dist/chunk-J3UWMBOP.js +0 -547
  641. package/dist/chunk-JAC6JVCI.js +0 -26
  642. package/dist/chunk-JDR3HUEL.js +0 -191
  643. package/dist/chunk-JI77AKT6.js +0 -19
  644. package/dist/chunk-JNURZHZJ.js +0 -942
  645. package/dist/chunk-JSNMKTFM.js +0 -592
  646. package/dist/chunk-K4FLWDEX.js +0 -122
  647. package/dist/chunk-KBRJSPIM.js +0 -676
  648. package/dist/chunk-LAC6YHHX.js +0 -97
  649. package/dist/chunk-LRV6M2WB.js +0 -1919
  650. package/dist/chunk-M7HD42M6.js +0 -24017
  651. package/dist/chunk-M7HD42M6.js.map +0 -1
  652. package/dist/chunk-MCJ5I5LR.js +0 -3187
  653. package/dist/chunk-MCJ5I5LR.js.map +0 -1
  654. package/dist/chunk-MGYC2IRC.js +0 -783
  655. package/dist/chunk-MI4HXE7M.js +0 -23
  656. package/dist/chunk-MJ7RNDD4.js +0 -910
  657. package/dist/chunk-MVD7QIXI.js +0 -46
  658. package/dist/chunk-MZPS46OR.js +0 -76
  659. package/dist/chunk-OBJCNGZL.js +0 -207
  660. package/dist/chunk-OJGYYH6K.js +0 -179
  661. package/dist/chunk-OLBLXJNI.js +0 -224
  662. package/dist/chunk-PFTYKINE.js +0 -207
  663. package/dist/chunk-PLBITHV6.js +0 -846
  664. package/dist/chunk-PX3PUDK7.js +0 -167
  665. package/dist/chunk-Q6JMMBSQ.js +0 -831
  666. package/dist/chunk-RAQHUMKS.js +0 -169
  667. package/dist/chunk-SA22KXWT.js +0 -163
  668. package/dist/chunk-SIXU5PDF.js +0 -66
  669. package/dist/chunk-SWN6OHXG.js +0 -148
  670. package/dist/chunk-SXMK5AEJ.js +0 -494
  671. package/dist/chunk-TTLD66NI.js +0 -319
  672. package/dist/chunk-TVAIOC77.js +0 -287
  673. package/dist/chunk-TVTSA4EN.js +0 -188
  674. package/dist/chunk-TX7CQTD4.js +0 -5368
  675. package/dist/chunk-UKSSNYLU.js +0 -98
  676. package/dist/chunk-V5NHJU3M.js +0 -604
  677. package/dist/chunk-VIPKDXGU.js +0 -4229
  678. package/dist/chunk-VIPKDXGU.js.map +0 -1
  679. package/dist/chunk-W4D7C74B.js +0 -387
  680. package/dist/chunk-WF25CCLD.js +0 -170
  681. package/dist/chunk-WQPUX3BA.js +0 -275
  682. package/dist/chunk-WR3FR3K3.js +0 -156
  683. package/dist/chunk-XDNJC62G.js +0 -91
  684. package/dist/chunk-XE6N4SZI.js +0 -429
  685. package/dist/chunk-XGPU2VDU.js +0 -219
  686. package/dist/chunk-XUJZO7MZ.js +0 -57
  687. package/dist/chunk-Y67LUJBE.js +0 -455
  688. package/dist/chunk-Y7XSDJEA.js +0 -3868
  689. package/dist/chunk-YNYAT2TZ.js +0 -285
  690. package/dist/chunk-ZNNQK366.js +0 -7198
  691. package/dist/chunk-ZNNQK366.js.map +0 -1
  692. package/dist/chunk-ZNRGH4NS.js +0 -150
  693. package/dist/claim-4KUETSW3.js +0 -198
  694. package/dist/claim-4KUETSW3.js.map +0 -1
  695. package/dist/companies-XFO6WPVT.js +0 -196
  696. package/dist/companies-XFO6WPVT.js.map +0 -1
  697. package/dist/company-OJGISG7K.js +0 -306
  698. package/dist/company-OJGISG7K.js.map +0 -1
  699. package/dist/complete-CXOST5J3.js +0 -82
  700. package/dist/complete-CXOST5J3.js.map +0 -1
  701. package/dist/connect-HPQ32KGV.js +0 -43
  702. package/dist/conversation-D5HKCTDA.js +0 -94
  703. package/dist/conversation-D5HKCTDA.js.map +0 -1
  704. package/dist/conversion-report-DKXFHLLX.js +0 -125
  705. package/dist/conversion-report-DKXFHLLX.js.map +0 -1
  706. package/dist/conversion-upload-command-KTYAY7IG.js +0 -439
  707. package/dist/conversion-writes-7ODJDAUP.js +0 -120
  708. package/dist/conversion-writes-7ODJDAUP.js.map +0 -1
  709. package/dist/conversions-BKVGNNC6.js +0 -76
  710. package/dist/conversions-BKVGNNC6.js.map +0 -1
  711. package/dist/conversions-SYNDEB6D.js +0 -138
  712. package/dist/conversions-SYNDEB6D.js.map +0 -1
  713. package/dist/copy-writes-P4WK6OPM.js +0 -168
  714. package/dist/copy-writes-P4WK6OPM.js.map +0 -1
  715. package/dist/create-7D4VD4TC.js +0 -208
  716. package/dist/create-7D4VD4TC.js.map +0 -1
  717. package/dist/create-7QDEAWZS.js +0 -133
  718. package/dist/create-7QDEAWZS.js.map +0 -1
  719. package/dist/create-IQSYEC4M.js +0 -60
  720. package/dist/create-IQSYEC4M.js.map +0 -1
  721. package/dist/create-TQSCM7MG.js +0 -237
  722. package/dist/create-TQSCM7MG.js.map +0 -1
  723. package/dist/creatives-JPKA2RHU.js +0 -89
  724. package/dist/creatives-RNOL4F4E.js +0 -58
  725. package/dist/creatives-RXI27T2D.js +0 -221
  726. package/dist/creatives-RXI27T2D.js.map +0 -1
  727. package/dist/credentials-PYW55B52.js +0 -288
  728. package/dist/credentials-PYW55B52.js.map +0 -1
  729. package/dist/critique-2SYHNAW5.js +0 -1449
  730. package/dist/critique-2SYHNAW5.js.map +0 -1
  731. package/dist/critique-72GFZSHA.js +0 -230
  732. package/dist/critique-72GFZSHA.js.map +0 -1
  733. package/dist/crm-EATDSXXB.js +0 -225
  734. package/dist/crm-EATDSXXB.js.map +0 -1
  735. package/dist/crm-XXP3VBYD.js +0 -321
  736. package/dist/crm-XXP3VBYD.js.map +0 -1
  737. package/dist/currency-R4ORE2U3.js +0 -88
  738. package/dist/custom-conversions-5HJBB5XL.js +0 -128
  739. package/dist/customers-OFZTEXST.js +0 -57
  740. package/dist/delete-FGVZIK4R.js +0 -55
  741. package/dist/delete-FGVZIK4R.js.map +0 -1
  742. package/dist/delete-HBZZL4UA.js +0 -67
  743. package/dist/delete-HBZZL4UA.js.map +0 -1
  744. package/dist/delete-JOUXMRIX.js +0 -65
  745. package/dist/delete-JOUXMRIX.js.map +0 -1
  746. package/dist/demographics-SB7NBYOI.js +0 -139
  747. package/dist/demographics-SB7NBYOI.js.map +0 -1
  748. package/dist/discard-YYGIRDII.js +0 -67
  749. package/dist/discard-YYGIRDII.js.map +0 -1
  750. package/dist/discover-GSJRZUOC.js +0 -172
  751. package/dist/domain-3KRAJAUH.js +0 -99
  752. package/dist/domain-3KRAJAUH.js.map +0 -1
  753. package/dist/download-QCBKJ6OR.js +0 -170
  754. package/dist/download-QCBKJ6OR.js.map +0 -1
  755. package/dist/draft-7CGFFZTH.js +0 -333
  756. package/dist/draft-7CGFFZTH.js.map +0 -1
  757. package/dist/draft-BI4NW6AU.js +0 -308
  758. package/dist/draft-BI4NW6AU.js.map +0 -1
  759. package/dist/draft-LPVK6YHI.js +0 -281
  760. package/dist/draft-LPVK6YHI.js.map +0 -1
  761. package/dist/draft-QF5JEUTH.js +0 -218
  762. package/dist/draft-QF5JEUTH.js.map +0 -1
  763. package/dist/draft-WYDMLNYA.js +0 -308
  764. package/dist/experiments-ZCEYRP3H.js +0 -234
  765. package/dist/experiments-ZCEYRP3H.js.map +0 -1
  766. package/dist/facets-G7ZDPI5Q.js +0 -115
  767. package/dist/facets-G7ZDPI5Q.js.map +0 -1
  768. package/dist/feedback-3U3CL2VB.js +0 -109
  769. package/dist/feedback-3U3CL2VB.js.map +0 -1
  770. package/dist/feedback-record-4ZHPENIP.js +0 -263
  771. package/dist/feedback-record-4ZHPENIP.js.map +0 -1
  772. package/dist/fetch-PNVNNWTP.js +0 -177
  773. package/dist/fetch-PNVNNWTP.js.map +0 -1
  774. package/dist/fit-53DGYRFD.js +0 -63
  775. package/dist/flows-JXLQBP5Q.js +0 -248
  776. package/dist/flows-JXLQBP5Q.js.map +0 -1
  777. package/dist/fonts-LFMBUT4R.js +0 -37
  778. package/dist/forecast-4AG5F7YC.js +0 -169
  779. package/dist/forecast-VZAXI74O.js +0 -119
  780. package/dist/forecast-VZAXI74O.js.map +0 -1
  781. package/dist/funnel-EACC35UD.js +0 -395
  782. package/dist/funnel-EACC35UD.js.map +0 -1
  783. package/dist/generate-NWHPM2GQ.js +0 -263
  784. package/dist/get-AXBVYGAC.js +0 -57
  785. package/dist/get-AXBVYGAC.js.map +0 -1
  786. package/dist/get-D6A27Q4E.js +0 -80
  787. package/dist/get-D6A27Q4E.js.map +0 -1
  788. package/dist/google-NAA4BASO.js +0 -3267
  789. package/dist/google-ads-OIYUNDXQ.js +0 -196
  790. package/dist/google-ads-OIYUNDXQ.js.map +0 -1
  791. package/dist/history-5MRLNTCI.js +0 -67
  792. package/dist/history-5MRLNTCI.js.map +0 -1
  793. package/dist/history-IDYNIB6R.js +0 -134
  794. package/dist/history-IDYNIB6R.js.map +0 -1
  795. package/dist/history-IOUKN3WD.js +0 -100
  796. package/dist/history-IOUKN3WD.js.map +0 -1
  797. package/dist/hubspot-HL6WGC4G.js +0 -780
  798. package/dist/hubspot-HL6WGC4G.js.map +0 -1
  799. package/dist/ideas-NK3KQHAK.js +0 -43
  800. package/dist/images-2XS3JT7E.js +0 -92
  801. package/dist/ingest-DHXWZZX4.js +0 -24
  802. package/dist/ingest-FGTJRCWK.js +0 -108
  803. package/dist/ingest-FGTJRCWK.js.map +0 -1
  804. package/dist/insights-M3CYB22P.js +0 -437
  805. package/dist/insights-M3CYB22P.js.map +0 -1
  806. package/dist/insights-XCT3ONC7.js +0 -130
  807. package/dist/insights-XCT3ONC7.js.map +0 -1
  808. package/dist/inspect-53GGYRC4.js +0 -190
  809. package/dist/inspect-53GGYRC4.js.map +0 -1
  810. package/dist/instant-experiences-HT3HB4QZ.js +0 -258
  811. package/dist/instant-experiences-HT3HB4QZ.js.map +0 -1
  812. package/dist/intent-NSHW7EJT.js +0 -95
  813. package/dist/keyword-gap-ITTWKBWZ.js +0 -130
  814. package/dist/keyword-metrics-LWPE3HHW.js +0 -198
  815. package/dist/keyword-metrics-LWPE3HHW.js.map +0 -1
  816. package/dist/keywords-for-site-5K25VJ35.js +0 -129
  817. package/dist/keywords-for-site-5K25VJ35.js.map +0 -1
  818. package/dist/landing-QONUUP3C.js +0 -28
  819. package/dist/languages-MEFQQBJ2.js +0 -40
  820. package/dist/leads-FSSISJGL.js +0 -113
  821. package/dist/leads-FSSISJGL.js.map +0 -1
  822. package/dist/leads-SZOGCQFK.js +0 -538
  823. package/dist/leads-SZOGCQFK.js.map +0 -1
  824. package/dist/learn-FWWJWBDN.js +0 -205
  825. package/dist/learn-FWWJWBDN.js.map +0 -1
  826. package/dist/line-item-writes-A3UQ44NG.js +0 -209
  827. package/dist/line-item-writes-A3UQ44NG.js.map +0 -1
  828. package/dist/line-items-OH426JGT.js +0 -107
  829. package/dist/link-67E4NVEX.js +0 -65
  830. package/dist/link-67E4NVEX.js.map +0 -1
  831. package/dist/linkedin-CT2OSQ2I.js +0 -1314
  832. package/dist/linkedin-CT2OSQ2I.js.map +0 -1
  833. package/dist/linkedin-person-OSNLPLJJ.js +0 -137
  834. package/dist/linkedin-person-OSNLPLJJ.js.map +0 -1
  835. package/dist/list-J4OUXAKN.js +0 -65
  836. package/dist/list-J4OUXAKN.js.map +0 -1
  837. package/dist/list-L2OQK4W3.js +0 -304
  838. package/dist/list-L2OQK4W3.js.map +0 -1
  839. package/dist/list-LHMDAA2D.js +0 -152
  840. package/dist/list-LHMDAA2D.js.map +0 -1
  841. package/dist/locations-RLWAS6AC.js +0 -40
  842. package/dist/locations-UKBOT6SB.js +0 -67
  843. package/dist/locations-UKBOT6SB.js.map +0 -1
  844. package/dist/log-4EIV54V4.js +0 -93
  845. package/dist/log-4EIV54V4.js.map +0 -1
  846. package/dist/lookup-ZJIP2M4X.js +0 -22
  847. package/dist/make-MFU3CSN7.js +0 -1368
  848. package/dist/make-MFU3CSN7.js.map +0 -1
  849. package/dist/map-VWWWMQLK.js +0 -434
  850. package/dist/map-VWWWMQLK.js.map +0 -1
  851. package/dist/mcp-EKLO2VD7.js +0 -715
  852. package/dist/mcp-EKLO2VD7.js.map +0 -1
  853. package/dist/media-ZWN7E777.js +0 -18
  854. package/dist/media-sources-7L622UTF.js +0 -35
  855. package/dist/members-QK5M5NCJ.js +0 -45
  856. package/dist/members-QK5M5NCJ.js.map +0 -1
  857. package/dist/meta-EHKXH257.js +0 -122
  858. package/dist/metrics-K6FDCMK7.js +0 -152
  859. package/dist/models-JQEPSPNQ.js +0 -155
  860. package/dist/normalize-WI4OGKH5.js +0 -142
  861. package/dist/normalize-WI4OGKH5.js.map +0 -1
  862. package/dist/options-FKJ2QXI6.js +0 -123
  863. package/dist/options-FKJ2QXI6.js.map +0 -1
  864. package/dist/organization-7A7MPUDG.js +0 -947
  865. package/dist/organization-7A7MPUDG.js.map +0 -1
  866. package/dist/page-photos-HWKQOSCU.js +0 -116
  867. package/dist/page-photos-HWKQOSCU.js.map +0 -1
  868. package/dist/performance-K4VB6L6Z.js +0 -25
  869. package/dist/performance-LHAL53YO.js +0 -5539
  870. package/dist/performance-LHAL53YO.js.map +0 -1
  871. package/dist/pixels-Z7ZGXAGB.js +0 -60
  872. package/dist/pixels-Z7ZGXAGB.js.map +0 -1
  873. package/dist/plan-TVQSEKYL.js +0 -207
  874. package/dist/plan-TVQSEKYL.js.map +0 -1
  875. package/dist/preview-CWRGDFCP.js +0 -216
  876. package/dist/preview-CWRGDFCP.js.map +0 -1
  877. package/dist/promoted-tweet-writes-V4ZVJOJU.js +0 -181
  878. package/dist/promoted-tweet-writes-V4ZVJOJU.js.map +0 -1
  879. package/dist/promoted-tweets-KPG4IUVD.js +0 -119
  880. package/dist/publish-Y465CVUD.js +0 -342
  881. package/dist/publish-Y465CVUD.js.map +0 -1
  882. package/dist/query-QM7MBQD7.js +0 -62
  883. package/dist/questionnaire-LEZJLMAV.js +0 -93
  884. package/dist/questionnaire-LEZJLMAV.js.map +0 -1
  885. package/dist/reddit-Z7DOVIGR.js +0 -27
  886. package/dist/refresh-A6TW2Z2F.js +0 -95
  887. package/dist/refresh-A6TW2Z2F.js.map +0 -1
  888. package/dist/release-UFESJ4TM.js +0 -61
  889. package/dist/release-UFESJ4TM.js.map +0 -1
  890. package/dist/relevant-pages-VOICMQ7U.js +0 -99
  891. package/dist/remove-YONNYA4G.js +0 -51
  892. package/dist/remove-YONNYA4G.js.map +0 -1
  893. package/dist/reopen-FYJU2IPO.js +0 -64
  894. package/dist/reopen-FYJU2IPO.js.map +0 -1
  895. package/dist/rerun-B5SBG6ZE.js +0 -93
  896. package/dist/rerun-B5SBG6ZE.js.map +0 -1
  897. package/dist/research-HW4EVOZU.js +0 -72
  898. package/dist/research-OV53DIBX.js +0 -263
  899. package/dist/research-OV53DIBX.js.map +0 -1
  900. package/dist/reset-R4SIQXFH.js +0 -55
  901. package/dist/reset-R4SIQXFH.js.map +0 -1
  902. package/dist/reset-X6ODAKYH.js +0 -55
  903. package/dist/reset-X6ODAKYH.js.map +0 -1
  904. package/dist/resolve-DNRJCLCR.js +0 -122
  905. package/dist/resolve-DNRJCLCR.js.map +0 -1
  906. package/dist/retry-D5MKBHUB.js +0 -63
  907. package/dist/retry-D5MKBHUB.js.map +0 -1
  908. package/dist/retry-DVFLE7JY.js +0 -61
  909. package/dist/retry-DVFLE7JY.js.map +0 -1
  910. package/dist/revenue-QGI6XWSK.js +0 -89
  911. package/dist/revenue-QGI6XWSK.js.map +0 -1
  912. package/dist/rule-writes-S3RN47OG.js +0 -523
  913. package/dist/rule-writes-S3RN47OG.js.map +0 -1
  914. package/dist/rules-KTJ2ZZ62.js +0 -217
  915. package/dist/rules-TR6BAC23.js +0 -97
  916. package/dist/rules-TR6BAC23.js.map +0 -1
  917. package/dist/rules-add-T5ZO5RLR.js +0 -463
  918. package/dist/rules-add-T5ZO5RLR.js.map +0 -1
  919. package/dist/run-WZ5IXWA4.js +0 -67
  920. package/dist/run-WZ5IXWA4.js.map +0 -1
  921. package/dist/run-YRR3KOUU.js +0 -68
  922. package/dist/scaffold-ad-DNUCGCIH.js +0 -1514
  923. package/dist/scaffold-ad-DNUCGCIH.js.map +0 -1
  924. package/dist/scaffold-static-ad-VR65EZAG.js +0 -1013
  925. package/dist/scaffold-static-ad-VR65EZAG.js.map +0 -1
  926. package/dist/scaffold-video-JLMKCCWE.js +0 -886
  927. package/dist/scaffold-video-JLMKCCWE.js.map +0 -1
  928. package/dist/schedule-VRHCVBZA.js +0 -62
  929. package/dist/schedule-VRHCVBZA.js.map +0 -1
  930. package/dist/scheduled-agents-DG7FTCUZ.js +0 -55
  931. package/dist/schema-6Y3IXFDC.js +0 -69
  932. package/dist/schema-WZKDWF5N.js +0 -133
  933. package/dist/schema-WZKDWF5N.js.map +0 -1
  934. package/dist/search-MN66QIKJ.js +0 -175
  935. package/dist/search-MN66QIKJ.js.map +0 -1
  936. package/dist/select-IPSM2BF2.js +0 -104
  937. package/dist/select-IPSM2BF2.js.map +0 -1
  938. package/dist/sends-6FI7WELX.js +0 -348
  939. package/dist/sends-6FI7WELX.js.map +0 -1
  940. package/dist/set-prompt-N6BD3DME.js +0 -196
  941. package/dist/set-prompt-N6BD3DME.js.map +0 -1
  942. package/dist/setup-links-GTA2AROS.js +0 -142
  943. package/dist/setup-links-GTA2AROS.js.map +0 -1
  944. package/dist/shopify-S4TG6WJH.js +0 -3956
  945. package/dist/shopify-S4TG6WJH.js.map +0 -1
  946. package/dist/site-NY622E3H.js +0 -178
  947. package/dist/site-NY622E3H.js.map +0 -1
  948. package/dist/sources-4F2XO7Z6.js +0 -455
  949. package/dist/sources-4F2XO7Z6.js.map +0 -1
  950. package/dist/sources-562ITR77.js +0 -30
  951. package/dist/stale-JKM6MXJF.js +0 -74
  952. package/dist/stale-JKM6MXJF.js.map +0 -1
  953. package/dist/status-AUWMUDA4.js +0 -63
  954. package/dist/status-AUWMUDA4.js.map +0 -1
  955. package/dist/studies-ZOEUY6YP.js +0 -250
  956. package/dist/studio-T5L7UEX6.js +0 -49
  957. package/dist/study-writes-DTGMCNFP.js +0 -468
  958. package/dist/study-writes-DTGMCNFP.js.map +0 -1
  959. package/dist/sync-76MCGHX4.js +0 -55
  960. package/dist/sync-76MCGHX4.js.map +0 -1
  961. package/dist/sync-definition-NJPT6ABG.js +0 -67
  962. package/dist/tags-5KBOJJ5R.js +0 -26
  963. package/dist/tags-CSMLTHTU.js +0 -21
  964. package/dist/tags-CSMLTHTU.js.map +0 -1
  965. package/dist/tags-IFRZYM3G.js +0 -21
  966. package/dist/tags-IFRZYM3G.js.map +0 -1
  967. package/dist/tags-S44ADJ75.js +0 -21
  968. package/dist/tags-S44ADJ75.js.map +0 -1
  969. package/dist/tags-WR7IY3OT.js +0 -225
  970. package/dist/tags-WR7IY3OT.js.map +0 -1
  971. package/dist/targeting-VBQY3HUN.js +0 -760
  972. package/dist/targeting-VBQY3HUN.js.map +0 -1
  973. package/dist/targeting-criteria-FJWNK53T.js +0 -113
  974. package/dist/targets-2EHMMXD4.js +0 -104
  975. package/dist/targets-2EHMMXD4.js.map +0 -1
  976. package/dist/testimonials-WAPFIGFJ.js +0 -32
  977. package/dist/themes-B4LCQUXB.js +0 -95
  978. package/dist/top-companies-DJ2XQKMW.js +0 -109
  979. package/dist/top-companies-DJ2XQKMW.js.map +0 -1
  980. package/dist/transcript-J3LGOHCM.js +0 -163
  981. package/dist/transcript-J3LGOHCM.js.map +0 -1
  982. package/dist/translate-6RXO4C6Z.js +0 -607
  983. package/dist/translate-6RXO4C6Z.js.map +0 -1
  984. package/dist/triggers-CYXPNHQB.js +0 -142
  985. package/dist/triggers-CYXPNHQB.js.map +0 -1
  986. package/dist/unlink-5FJI7XZB.js +0 -68
  987. package/dist/unlink-5FJI7XZB.js.map +0 -1
  988. package/dist/unstage-54ZE2SZK.js +0 -86
  989. package/dist/unstage-54ZE2SZK.js.map +0 -1
  990. package/dist/unstage-MDSSPUKV.js +0 -95
  991. package/dist/unstage-MDSSPUKV.js.map +0 -1
  992. package/dist/update-BVBFNFMO.js +0 -99
  993. package/dist/update-BVBFNFMO.js.map +0 -1
  994. package/dist/update-GV3T7ZRC.js +0 -190
  995. package/dist/update-GV3T7ZRC.js.map +0 -1
  996. package/dist/update-PUQWUGPJ.js +0 -64
  997. package/dist/update-PUQWUGPJ.js.map +0 -1
  998. package/dist/update-YQBK6C3L.js +0 -153
  999. package/dist/update-YQBK6C3L.js.map +0 -1
  1000. package/dist/upload-PXT5JAEV.js +0 -127
  1001. package/dist/upload-PXT5JAEV.js.map +0 -1
  1002. package/dist/url-options-IHL4OU4C.js +0 -130
  1003. package/dist/url-options-IHL4OU4C.js.map +0 -1
  1004. package/dist/url-params-IYUI6SFJ.js +0 -99
  1005. package/dist/url-params-IYUI6SFJ.js.map +0 -1
  1006. package/dist/validate-AD7F7LQ5.js +0 -120
  1007. package/dist/validate-AD7F7LQ5.js.map +0 -1
  1008. package/dist/videos-ZJCTODEB.js +0 -41
  1009. package/dist/viewer-check-GWZNGWCO.js +0 -81
  1010. package/dist/web-76CWAZNW.js +0 -141
  1011. package/dist/web-76CWAZNW.js.map +0 -1
  1012. package/dist/winning-ads-W7GTXTX7.js +0 -86
  1013. package/dist/write-commands-K6M3RTVK.js +0 -1170
  1014. package/dist/write-commands-K6M3RTVK.js.map +0 -1
  1015. package/dist/write-commands-VPU53DLB.js +0 -1498
  1016. package/dist/write-commands-VPU53DLB.js.map +0 -1
  1017. package/dist/x-V4NNNWRU.js +0 -47
  1018. /package/dist/{account-assets-O7IA37RE.js.map → account-assets-J5Z4URLQ.js.map} +0 -0
  1019. /package/dist/{account-reads-SNOWDHHF.js.map → account-reads-FOEVPWDP.js.map} +0 -0
  1020. /package/dist/{actions-4JYHXRFH.js.map → actions-QZDSLFFK.js.map} +0 -0
  1021. /package/dist/{ads-LXWXOQHX.js.map → ads-AYJAYLFR.js.map} +0 -0
  1022. /package/dist/{ads-KBE5JXCH.js.map → ads-MAOI7S6V.js.map} +0 -0
  1023. /package/dist/{adsets-YWBJFPAZ.js.map → adsets-QRKICEFD.js.map} +0 -0
  1024. /package/dist/{animate-2BMHZ4FM.js.map → animate-HRWFVE2N.js.map} +0 -0
  1025. /package/dist/{asset-writes-72DEVXGO.js.map → asset-writes-JLVUAVUZ.js.map} +0 -0
  1026. /package/dist/{audiences-QAH42HIM.js.map → audiences-CDDI5HR5.js.map} +0 -0
  1027. /package/dist/{avatars-N6W6HUPP.js.map → avatars-4HCGWBOL.js.map} +0 -0
  1028. /package/dist/{brand-ITWQVZD2.js.map → brand-C6OB6Q4U.js.map} +0 -0
  1029. /package/dist/{campaigns-XZOQ2VTK.js.map → campaigns-HES5MDUG.js.map} +0 -0
  1030. /package/dist/{campaigns-5BIDXYSR.js.map → campaigns-ZYU4BXDP.js.map} +0 -0
  1031. /package/dist/{canvas-SL3RMOY5.js.map → canvas-AI34UBGU.js.map} +0 -0
  1032. /package/dist/{catalog-TZLU5NWI.js.map → catalog-ZY3MFT55.js.map} +0 -0
  1033. /package/dist/{changes-36C754R4.js.map → changes-OOUVQDBY.js.map} +0 -0
  1034. /package/dist/{chatgpt-3WFOPURY.js.map → chatgpt-NAXIFWXV.js.map} +0 -0
  1035. /package/dist/{chunk-TTLD66NI.js.map → chunk-3CHYJYSS.js.map} +0 -0
  1036. /package/dist/{chunk-XE6N4SZI.js.map → chunk-3G3GC5N4.js.map} +0 -0
  1037. /package/dist/{chunk-5XTGG4PV.js.map → chunk-3M45PYU7.js.map} +0 -0
  1038. /package/dist/{chunk-MI4HXE7M.js.map → chunk-3QHXF3QI.js.map} +0 -0
  1039. /package/dist/{chunk-Y7XSDJEA.js.map → chunk-3XPHUMLJ.js.map} +0 -0
  1040. /package/dist/{chunk-MGYC2IRC.js.map → chunk-45EERHDB.js.map} +0 -0
  1041. /package/dist/{chunk-W4D7C74B.js.map → chunk-4FGTANFK.js.map} +0 -0
  1042. /package/dist/{chunk-PX3PUDK7.js.map → chunk-4IHWT7PH.js.map} +0 -0
  1043. /package/dist/{chunk-PLBITHV6.js.map → chunk-4LF4AYPT.js.map} +0 -0
  1044. /package/dist/{chunk-XGPU2VDU.js.map → chunk-4UQRXKYJ.js.map} +0 -0
  1045. /package/dist/{chunk-Y67LUJBE.js.map → chunk-5JJD33Y2.js.map} +0 -0
  1046. /package/dist/{chunk-Q6JMMBSQ.js.map → chunk-5K4QYYOJ.js.map} +0 -0
  1047. /package/dist/{chunk-SA22KXWT.js.map → chunk-5LJ6E4YU.js.map} +0 -0
  1048. /package/dist/{chunk-WQPUX3BA.js.map → chunk-5T73MMBL.js.map} +0 -0
  1049. /package/dist/{chunk-DQ54POZN.js.map → chunk-64MAHLTK.js.map} +0 -0
  1050. /package/dist/{chunk-JAC6JVCI.js.map → chunk-6OIKNJ7G.js.map} +0 -0
  1051. /package/dist/{chunk-3YJNSUNF.js.map → chunk-6ZFSDYWV.js.map} +0 -0
  1052. /package/dist/{chunk-TVAIOC77.js.map → chunk-7BUIOP36.js.map} +0 -0
  1053. /package/dist/{chunk-K4FLWDEX.js.map → chunk-AN4OEQXE.js.map} +0 -0
  1054. /package/dist/{chunk-TX7CQTD4.js.map → chunk-AULSX5ZA.js.map} +0 -0
  1055. /package/dist/{chunk-MVD7QIXI.js.map → chunk-AVYUFJQQ.js.map} +0 -0
  1056. /package/dist/{chunk-LAC6YHHX.js.map → chunk-B4YF7VQF.js.map} +0 -0
  1057. /package/dist/{chunk-UKSSNYLU.js.map → chunk-BDOYNGUL.js.map} +0 -0
  1058. /package/dist/{chunk-PFTYKINE.js.map → chunk-BJOK7QD4.js.map} +0 -0
  1059. /package/dist/{chunk-IQHO2ABF.js.map → chunk-CMCGFSUS.js.map} +0 -0
  1060. /package/dist/{chunk-KBRJSPIM.js.map → chunk-DMJUIUAL.js.map} +0 -0
  1061. /package/dist/{chunk-HML3VQIW.js.map → chunk-DUCUOZLS.js.map} +0 -0
  1062. /package/dist/{chunk-7HZSORAB.js.map → chunk-FJZYOVSW.js.map} +0 -0
  1063. /package/dist/{chunk-JI77AKT6.js.map → chunk-FKP4ECJY.js.map} +0 -0
  1064. /package/dist/{chunk-DL2UJNJ7.js.map → chunk-GNMEOU46.js.map} +0 -0
  1065. /package/dist/{chunk-WR3FR3K3.js.map → chunk-GYKYXWUQ.js.map} +0 -0
  1066. /package/dist/{chunk-BL6RTOK3.js.map → chunk-GYPLRU4Y.js.map} +0 -0
  1067. /package/dist/{chunk-YNYAT2TZ.js.map → chunk-I43ZEWJQ.js.map} +0 -0
  1068. /package/dist/{chunk-4GAEB6NK.js.map → chunk-IZABTTW5.js.map} +0 -0
  1069. /package/dist/{chunk-GACSA5A6.js.map → chunk-K7IE6UYV.js.map} +0 -0
  1070. /package/dist/{chunk-V5NHJU3M.js.map → chunk-KH5YHHJV.js.map} +0 -0
  1071. /package/dist/{chunk-FKQK22IX.js.map → chunk-KMY7AD3N.js.map} +0 -0
  1072. /package/dist/{chunk-6KWEF6HF.js.map → chunk-KPCHWDJM.js.map} +0 -0
  1073. /package/dist/{chunk-SWN6OHXG.js.map → chunk-KTZCLJ2D.js.map} +0 -0
  1074. /package/dist/{chunk-A3IQAONL.js.map → chunk-MKUA54QE.js.map} +0 -0
  1075. /package/dist/{chunk-FFFJBNHA.js.map → chunk-MTV2RSGY.js.map} +0 -0
  1076. /package/dist/{chunk-INUU3752.js.map → chunk-N2QX57K3.js.map} +0 -0
  1077. /package/dist/{chunk-OJGYYH6K.js.map → chunk-NB2FU6EZ.js.map} +0 -0
  1078. /package/dist/{chunk-ALMYGH5U.js.map → chunk-NEYWS2DQ.js.map} +0 -0
  1079. /package/dist/{chunk-TVTSA4EN.js.map → chunk-NWF2LRKO.js.map} +0 -0
  1080. /package/dist/{chunk-JDR3HUEL.js.map → chunk-OTC6UMJ2.js.map} +0 -0
  1081. /package/dist/{chunk-OLBLXJNI.js.map → chunk-OUY2IAWL.js.map} +0 -0
  1082. /package/dist/{chunk-4D46PS6J.js.map → chunk-PJXNCRMR.js.map} +0 -0
  1083. /package/dist/{chunk-XDNJC62G.js.map → chunk-PYQ3GF7R.js.map} +0 -0
  1084. /package/dist/{chunk-WF25CCLD.js.map → chunk-Q3EIVZAR.js.map} +0 -0
  1085. /package/dist/{chunk-OBJCNGZL.js.map → chunk-QDQZ62FL.js.map} +0 -0
  1086. /package/dist/{chunk-LRV6M2WB.js.map → chunk-QHZE62GP.js.map} +0 -0
  1087. /package/dist/{chunk-AQKRSEBQ.js.map → chunk-RGR6TSTJ.js.map} +0 -0
  1088. /package/dist/{chunk-C6CBBZBO.js.map → chunk-SAAXU7QR.js.map} +0 -0
  1089. /package/dist/{chunk-SIXU5PDF.js.map → chunk-SHTKLRI6.js.map} +0 -0
  1090. /package/dist/{chunk-MZPS46OR.js.map → chunk-SIKCVWM3.js.map} +0 -0
  1091. /package/dist/{chunk-CKQTJ2LV.js.map → chunk-SSXG53CZ.js.map} +0 -0
  1092. /package/dist/{chunk-J3UWMBOP.js.map → chunk-TBWAM577.js.map} +0 -0
  1093. /package/dist/{chunk-RAQHUMKS.js.map → chunk-TGPGQTZA.js.map} +0 -0
  1094. /package/dist/{chunk-F4YQ5PVR.js.map → chunk-UMIX2BMM.js.map} +0 -0
  1095. /package/dist/{chunk-ZNRGH4NS.js.map → chunk-URMAEVZO.js.map} +0 -0
  1096. /package/dist/{chunk-HJKYTNAZ.js.map → chunk-VBO3ZVUU.js.map} +0 -0
  1097. /package/dist/{chunk-JSNMKTFM.js.map → chunk-VFLYMHTO.js.map} +0 -0
  1098. /package/dist/{chunk-6JCX3YLM.js.map → chunk-VGYIVXIZ.js.map} +0 -0
  1099. /package/dist/{chunk-XUJZO7MZ.js.map → chunk-VIB7R533.js.map} +0 -0
  1100. /package/dist/{chunk-D3KLDIPQ.js.map → chunk-WLESMH4J.js.map} +0 -0
  1101. /package/dist/{chunk-MJ7RNDD4.js.map → chunk-WVWLPXBO.js.map} +0 -0
  1102. /package/dist/{chunk-SXMK5AEJ.js.map → chunk-XEH5XAP6.js.map} +0 -0
  1103. /package/dist/{chunk-FLK6QHOY.js.map → chunk-XEOKVL4E.js.map} +0 -0
  1104. /package/dist/{chunk-FFG2OYVV.js.map → chunk-XOGQJYXH.js.map} +0 -0
  1105. /package/dist/{chunk-JNURZHZJ.js.map → chunk-XUXRA7IB.js.map} +0 -0
  1106. /package/dist/{connect-HPQ32KGV.js.map → connect-IAXSZPGA.js.map} +0 -0
  1107. /package/dist/{conversion-upload-command-KTYAY7IG.js.map → conversion-upload-command-IHFKVX2M.js.map} +0 -0
  1108. /package/dist/{creatives-JPKA2RHU.js.map → creatives-BB6S2OF6.js.map} +0 -0
  1109. /package/dist/{creatives-RNOL4F4E.js.map → creatives-BZEVJ6ER.js.map} +0 -0
  1110. /package/dist/{currency-R4ORE2U3.js.map → currency-CGKO5GKH.js.map} +0 -0
  1111. /package/dist/{custom-conversions-5HJBB5XL.js.map → custom-conversions-HAGG72LF.js.map} +0 -0
  1112. /package/dist/{customers-OFZTEXST.js.map → customers-NKKU6S7G.js.map} +0 -0
  1113. /package/dist/{discover-GSJRZUOC.js.map → discover-VM3O7CQM.js.map} +0 -0
  1114. /package/dist/{draft-WYDMLNYA.js.map → draft-CRDBU6LF.js.map} +0 -0
  1115. /package/dist/{fit-53DGYRFD.js.map → fit-Q5GRVF2O.js.map} +0 -0
  1116. /package/dist/{fonts-LFMBUT4R.js.map → fonts-GD4YRXQU.js.map} +0 -0
  1117. /package/dist/{forecast-4AG5F7YC.js.map → forecast-ONVS2QAI.js.map} +0 -0
  1118. /package/dist/{generate-NWHPM2GQ.js.map → generate-VBEY3N3L.js.map} +0 -0
  1119. /package/dist/{google-NAA4BASO.js.map → google-7EZP7I6J.js.map} +0 -0
  1120. /package/dist/{ideas-NK3KQHAK.js.map → ideas-WX7EBPSF.js.map} +0 -0
  1121. /package/dist/{images-2XS3JT7E.js.map → images-4AXF4LAC.js.map} +0 -0
  1122. /package/dist/{ingest-DHXWZZX4.js.map → ingest-C3M4GUO6.js.map} +0 -0
  1123. /package/dist/{intent-NSHW7EJT.js.map → intent-ZMYMFGB4.js.map} +0 -0
  1124. /package/dist/{keyword-gap-ITTWKBWZ.js.map → keyword-gap-XSJO2R77.js.map} +0 -0
  1125. /package/dist/{landing-QONUUP3C.js.map → landing-MUNYZQNA.js.map} +0 -0
  1126. /package/dist/{languages-MEFQQBJ2.js.map → languages-DIQ3OG3E.js.map} +0 -0
  1127. /package/dist/{line-items-OH426JGT.js.map → line-items-JR25T2C5.js.map} +0 -0
  1128. /package/dist/{locations-RLWAS6AC.js.map → locations-HTVYJSDJ.js.map} +0 -0
  1129. /package/dist/{lookup-ZJIP2M4X.js.map → lookup-S5VG7AWH.js.map} +0 -0
  1130. /package/dist/{media-ZWN7E777.js.map → media-P4T4ZBNS.js.map} +0 -0
  1131. /package/dist/{media-sources-7L622UTF.js.map → media-sources-P246GM7W.js.map} +0 -0
  1132. /package/dist/{meta-EHKXH257.js.map → meta-IPLWNYC7.js.map} +0 -0
  1133. /package/dist/{metrics-K6FDCMK7.js.map → metrics-WYWUX6Y5.js.map} +0 -0
  1134. /package/dist/{models-JQEPSPNQ.js.map → models-HJ7Y55AH.js.map} +0 -0
  1135. /package/dist/{performance-K4VB6L6Z.js.map → performance-J3DLNI2W.js.map} +0 -0
  1136. /package/dist/{promoted-tweets-KPG4IUVD.js.map → promoted-tweets-W42FNWS7.js.map} +0 -0
  1137. /package/dist/{query-QM7MBQD7.js.map → query-IQICLABN.js.map} +0 -0
  1138. /package/dist/{reddit-Z7DOVIGR.js.map → reddit-X4CERXYF.js.map} +0 -0
  1139. /package/dist/{relevant-pages-VOICMQ7U.js.map → relevant-pages-UDDQOYLD.js.map} +0 -0
  1140. /package/dist/{research-HW4EVOZU.js.map → research-D5UUJF74.js.map} +0 -0
  1141. /package/dist/{rules-KTJ2ZZ62.js.map → rules-ZVS2MWED.js.map} +0 -0
  1142. /package/dist/{run-YRR3KOUU.js.map → run-T7XAH2W5.js.map} +0 -0
  1143. /package/dist/{scheduled-agents-DG7FTCUZ.js.map → scheduled-agents-ZGCUZ6SB.js.map} +0 -0
  1144. /package/dist/{schema-6Y3IXFDC.js.map → schema-D6BMZAPB.js.map} +0 -0
  1145. /package/dist/{sources-562ITR77.js.map → sources-DVMJEXEX.js.map} +0 -0
  1146. /package/dist/{studies-ZOEUY6YP.js.map → studies-EPO2AM4M.js.map} +0 -0
  1147. /package/dist/{studio-T5L7UEX6.js.map → studio-5Z4NMA4K.js.map} +0 -0
  1148. /package/dist/{sync-definition-NJPT6ABG.js.map → sync-definition-F3CXG6KG.js.map} +0 -0
  1149. /package/dist/{tags-5KBOJJ5R.js.map → tags-SEZ2CQJM.js.map} +0 -0
  1150. /package/dist/{targeting-criteria-FJWNK53T.js.map → targeting-criteria-AU5CSMAU.js.map} +0 -0
  1151. /package/dist/{testimonials-WAPFIGFJ.js.map → testimonials-Y6PUV6AL.js.map} +0 -0
  1152. /package/dist/{themes-B4LCQUXB.js.map → themes-PGPIAKAO.js.map} +0 -0
  1153. /package/dist/{videos-ZJCTODEB.js.map → videos-SVZV5YYC.js.map} +0 -0
  1154. /package/dist/{viewer-check-GWZNGWCO.js.map → viewer-check-LUAEGV6H.js.map} +0 -0
  1155. /package/dist/{winning-ads-W7GTXTX7.js.map → winning-ads-KNLJHHCO.js.map} +0 -0
  1156. /package/dist/{x-V4NNNWRU.js.map → x-ZQNHYIDU.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/hubspot/index.ts"],"sourcesContent":["import type {\n HubspotContactFieldsListResponse,\n HubspotContactLookupResponse,\n HubspotContactPropertiesListResponse,\n HubspotContactsSummaryResponse,\n HubspotFormSubmissionsResponse,\n HubspotFormsListResponse,\n HubspotFormsViewResponse,\n HubspotMeetingsListResponse,\n HubspotMeetingsViewResponse,\n HubspotPipelinesListResponse,\n HubspotWorkflowsListResponse,\n HubspotWorkflowsViewResponse,\n} from \"@baker/api\";\nimport { HUBSPOT_OPERATORS } from \"@baker/api/event-sources\";\nimport { defineCommand } from \"citty\";\nimport { ApiError, apiPost } from \"../../client.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { failNotConnected } from \"./refusal.ts\";\n\nconst EMBED_TYPES = [\"legacy\", \"v4\", \"unknown\"] as const;\n\nfunction assertEmbedType(value: string | undefined): (typeof EMBED_TYPES)[number] | undefined {\n if (value === undefined) {\n return undefined;\n }\n if (!(EMBED_TYPES as readonly string[]).includes(value)) {\n throw new Error(`--embed-type must be one of: ${EMBED_TYPES.join(\"|\")}`);\n }\n return value as (typeof EMBED_TYPES)[number];\n}\n\nregisterSchema({\n command: \"hubspot.forms.list\",\n description:\n \"Start here for HubSpot forms: every form on the connected account, with just enough to choose one — embed type (legacy vs v4), field count, its post-submit action (inline thank-you vs redirect to a URL), and whether spam prevention (captcha) is on. A form with captcha on can be embedded on a page but can never receive a submission from a Form, so check it before wiring one as a destination. Answers 'which of my forms redirect after submit?' and 'is this form legacy or v4?'. portalId is returned once on data, not per row. Next step is usually `hubspot forms view <id> --as-node`, which gives you the blob to write straight into a Form step — you do not need request_flow_input for HubSpot.\",\n args: {\n search: { type: \"string\", description: \"Case-insensitive substring match on the form name\", required: false },\n \"redirecting-only\": {\n type: \"boolean\",\n description: \"Only forms whose post-submit action redirects away\",\n required: false,\n default: false,\n },\n \"embed-type\": { type: \"string\", description: \"Filter: legacy|v4|unknown\", required: false, enum: [...EMBED_TYPES] },\n },\n});\n\nregisterSchema({\n command: \"hubspot.forms.view\",\n description:\n \"One HubSpot form in detail: every field (name, label, type, required, hidden, options), the legal-consent mode, the post-submit action, captcha, and language. Read it before wiring a form into a Form (flow) so you know what fields exist to autofill. Add --full for the untouched HubSpot payload, or --as-node to get the object to write into the step's form.external instead.\",\n args: {\n formId: { type: \"positional\", description: \"HubSpot form id (from `baker hubspot forms list`)\", required: true },\n full: { type: \"boolean\", description: \"Include the raw HubSpot payload\", required: false, default: false },\n \"as-node\": {\n type: \"boolean\",\n description:\n \"Emit the resource blob to write into a flow node's form.external, instead of the readable view. Write it into the node yourself; no need for request_flow_input when the account is connected and the form is unambiguous.\",\n required: false,\n default: false,\n },\n },\n});\n\nregisterSchema({\n command: \"hubspot.forms.submissions\",\n description:\n \"How many leads a form actually received over a window, and on which days — the difference between 'this form is live' and 'this form is working'. Start here when asked whether a form or a campaign is producing leads. Returns counts and dates only; the leads' own answers need --full and are personal data, so do not put them in a report. Pair with `hubspot pipelines list` to see whether those leads were then worked.\",\n args: {\n formId: { type: \"positional\", description: \"HubSpot form id (from `baker hubspot forms list`)\", required: true },\n days: { type: \"string\", description: \"Window in days, 1-365 (default 30)\", required: false },\n full: {\n type: \"boolean\",\n description: \"Include each submission's field values — personal data, request only when actually needed\",\n required: false,\n default: false,\n },\n },\n});\n\nregisterSchema({\n command: \"hubspot.contacts.summary\",\n description:\n \"Whether the leads that arrived recently are actually being worked, as counts: how many contacts were created in the window, how many have someone assigned, and how they split across lifecycle stages. This is the 'have these leads been treated?' answer. Returns no names or emails — use `hubspot contacts lookup` for one specific person.\",\n args: {\n days: { type: \"string\", description: \"Window in days, 1-365 (default 30)\", required: false },\n },\n});\n\nregisterSchema({\n command: \"hubspot.contacts.properties\",\n description:\n \"Every contact property a HubSpot event can watch, with its `kind` (select, string, number, date, boolean) — which decides the operators the trigger takes — and, for a select, the `options` its values come from. Start here to make a HubSpot event: pick the property and condition that mean the outcome (a deal won is usually `lifecyclestage` is `customer`, a custom property the client's team sets, or a number crossing a threshold), then `baker analytics sources --create-hubspot --property <name> [--operator <op>] --value <value>…` reads it every five minutes. Names are HubSpot's internal ones; use them as printed.\",\n args: {},\n});\n\nregisterSchema({\n command: \"hubspot.contacts.fields\",\n description:\n \"Every contact property on the connected HubSpot account — name, label, group and HubSpot's type — which is what a HubSpot event's rows can read: `baker analytics sources --create-hubspot … --field email={{work_email}} --field value={{deal_value}} --field currency=EUR`, or `--map` on an existing one. Names are HubSpot's internal ones; use them as printed, and `{{id}}` for the contact's own id. No personal data.\",\n args: {},\n});\n\nregisterSchema({\n command: \"hubspot.contacts.lookup\",\n description:\n \"One contact by email: its lifecycle stage, whether anyone is assigned, the account (company) it was filed under, and any deals it is attached to with their stage. Use it to settle whether a specific lead was picked up. `found: false` means the lead never reached the CRM at all — that is a finding, not an error. `dealsReadable: false` / `companyReadable: false` mean deals or account details were not readable on this connection, so an empty deals list or a null company is unknown rather than absent.\",\n args: {\n email: { type: \"positional\", description: \"The contact's email address\", required: true },\n },\n});\n\nregisterSchema({\n command: \"hubspot.workflows.list\",\n description:\n \"Every workflow on the connected account, with whether it is switched on. Read it when auditing what happens to a lead after it is captured — a form wired to a workflow that is off looks connected and does nothing.\",\n args: {\n search: { type: \"string\", description: \"Case-insensitive substring match on the workflow name\", required: false },\n \"enabled-only\": { type: \"boolean\", description: \"Only workflows that are on\", required: false, default: false },\n },\n});\n\nregisterSchema({\n command: \"hubspot.workflows.view\",\n description:\n \"One workflow's actual configuration: what enrols a record, whether it re-enrols, and every step with the property it writes. Read it before saying a workflow is correct — `workflows list` only tells you it exists and whether it is on. Branches come back in HubSpot's order, and on a LIST_BRANCH step that is evaluation order (`order: 1` wins over `order: 2`) — which is where this kind of setup silently breaks: a broad branch placed above a narrow one swallows the records the narrow one was written for, and nothing reports it. A STATIC_BRANCH matches on a value instead, so its order carries no precedence. Steps are NOT in execution order — follow `nextActionId` from step to step. Add --full for the branch filter criteria (which property is compared to which value).\",\n args: {\n workflowId: {\n type: \"positional\",\n description: \"Workflow id (from `baker hubspot workflows list`)\",\n required: true,\n },\n full: {\n type: \"boolean\",\n description: \"Include the raw HubSpot payload — the only place the branch filter criteria can be read\",\n required: false,\n default: false,\n },\n },\n});\n\nregisterSchema({\n command: \"hubspot.pipelines.list\",\n description:\n \"The account's deal pipelines and their stages, in the order they run, each stage with `isClosed` / `isWon` (HubSpot's closed-won is closed with probability 1). Use it to answer where a lead lands once captured and whether it moved — the 'have these leads been worked?' half of a form audit — and to pick the pipeline ids for `hubspot deals list --pipeline`.\",\n args: {},\n});\n\nregisterSchema({\n command: \"hubspot.meetings.list\",\n description:\n \"Every HubSpot meeting link (calendar) on the connected account, with just enough to choose one: name, slug, link type (personal / group / round-robin), whether booking redirects somewhere, and how many booking fields it asks for (null = unknown, read it with `meetings view`). Next step is usually `hubspot meetings view <slug> --as-node`, which gives you the blob to write straight into a hubspotMeeting step.\",\n args: {\n search: { type: \"string\", description: \"Case-insensitive substring match on the meeting name\", required: false },\n \"redirecting-only\": {\n type: \"boolean\",\n description: \"Only meeting links that redirect after booking\",\n required: false,\n default: false,\n },\n },\n});\n\nregisterSchema({\n command: \"hubspot.meetings.view\",\n description:\n \"One HubSpot meeting link in detail: its booking-form fields (name, label, type, required, custom), link, and redirect URL. This is the source of truth for a calendar's fields — the list command cannot see them reliably. Add --as-node to get the object to write into the step's form.external instead.\",\n args: {\n slug: { type: \"positional\", description: \"Meeting slug (from `baker hubspot meetings list`)\", required: true },\n \"as-node\": {\n type: \"boolean\",\n description: \"Emit the resource blob to write into a flow node's form.external, instead of the readable view.\",\n required: false,\n default: false,\n },\n },\n});\n\nconst formsListCommand = defineCommand({\n meta: {\n name: \"list\",\n description:\n \"List HubSpot forms with embed type and post-submit action. Example: baker hubspot forms list --redirecting-only\",\n },\n args: {\n search: { type: \"string\", description: \"Match on form name\", required: false },\n \"redirecting-only\": { type: \"boolean\", description: \"Only forms that redirect on submit\", required: false },\n \"embed-type\": { type: \"string\", description: \"Filter: legacy|v4|unknown\", required: false },\n },\n run: async ({ args }) => {\n try {\n const body: Record<string, unknown> = {};\n if (args.search) {\n body.search = args.search;\n }\n if (args[\"redirecting-only\"]) {\n body.redirectingOnly = true;\n }\n const embedType = assertEmbedType(args[\"embed-type\"]);\n if (embedType) {\n body.embedType = embedType;\n }\n\n const response = await apiPost<HubspotFormsListResponse>(\"/api/hubspot/forms/list\", body);\n const { forms } = response.data;\n const redirecting = forms.filter((form) => form.postSubmitAction?.type === \"redirect_url\");\n const hints: string[] = [];\n if (forms.length === 0) {\n hints.push(\"No forms matched. Drop --search/--embed-type, or check the connected HubSpot account.\");\n } else {\n hints.push(\n \"To put one on a page: `baker hubspot forms view <id> --as-node` returns the object to write into the step's form.external. No request_flow_input needed for HubSpot.\",\n );\n }\n if (redirecting.length > 0) {\n hints.push(\n `${redirecting.length} form(s) redirect after submit. That is fine mid-Form: the renderer suppresses the redirect whenever a step follows the form, and honors it when the form is the last step.`,\n );\n }\n const blocked = forms.filter((form) => form.captchaEnabled);\n if (blocked.length > 0) {\n // Named rather than counted, because the next thing the agent does with\n // this is tell a person which of their forms is the problem — but\n // bounded, since every row already carries `captchaEnabled` and an\n // account with forty blocked forms would otherwise print forty names.\n const shown = blocked.slice(0, 3).map((form) => form.name);\n const rest = blocked.length - shown.length;\n hints.push(\n `${blocked.length} form(s) have spam prevention (captcha) on: ${shown.join(\", \")}${rest > 0 ? `, and ${rest} more` : \"\"}. HubSpot refuses every submission sent to those, so they can be embedded on a page but never wired as a Form's destination. Only the user can switch it off, on the form in HubSpot.`,\n );\n }\n\n writeJson({ ...response, meta: { count: forms.length }, ...(hints.length > 0 ? { hints } : {}) });\n } catch (err) {\n failNotConnected(err);\n }\n },\n});\n\n/**\n * The one HubSpot setting that decides whether a form can receive a lead at\n * all. HubSpot refuses every API submission to a form with spam prevention on\n * (`FORM_HAS_RECAPTCHA_ENABLED`) and there is no token to attach, so the answer\n * is never \"send it differently\" — it is a switch only the client can flip.\n */\nconst CAPTCHA_VIEW_HINT =\n \"This form has spam prevention (captcha) on. HubSpot refuses every submission sent to it, so it cannot be a Form's destination — embedding it on a page still works, because the visitor solves the captcha in the browser. Only the user can switch it off, on the form in HubSpot; do not wire a delivery to it, and tell them what has to change.\";\n\nconst CAPTCHA_NODE_HINT =\n \"This form has spam prevention (captcha) on. That is fine for embedding it on a page — the visitor solves it in the browser — but it can never be a Form's delivery destination, so do not also wire a hubspotForm side effect to this form.\";\n\n/**\n * What to say about one form beyond its fields.\n *\n * Pure and exported so the wording is testable: these are the three facts about\n * a HubSpot form that decide whether wiring it works, and each of them is\n * invisible in the form's own field list.\n */\nexport function formViewHints(form: {\n postSubmitAction: { type: string; value: string } | null;\n captchaEnabled: boolean;\n embedType: string;\n}): string[] {\n const hints: string[] = [];\n if (form.postSubmitAction?.type === \"redirect_url\") {\n hints.push(\n `This form redirects to ${form.postSubmitAction.value} on submit. Placed anywhere but the last step of a Form, that redirect is suppressed so the next step can render.`,\n );\n }\n if (form.captchaEnabled) {\n hints.push(CAPTCHA_VIEW_HINT);\n }\n if (form.embedType === \"unknown\") {\n hints.push(\"Embed type could not be determined from HubSpot's response; the renderer treats it as legacy.\");\n }\n return hints;\n}\n\n/**\n * The same for the `--as-node` blob, where the reader is about to *embed* the\n * form. Captcha reads the opposite way here and has to say so: an embedded form\n * with captcha works, because the visitor solves it in the browser. Silence\n * would leave an agent that just read the refusal elsewhere to conclude the\n * form is unusable and quietly pick another.\n */\nexport function formNodeHints(\n external:\n | {\n captchaEnabled: boolean;\n embedType?: string;\n region?: string;\n configuration?: { postSubmitAction: { type: string } };\n }\n | undefined,\n): string[] {\n return [\n \"Write this object into the node's `form.external` in the flow's _data.json, keeping the rest of the node as-is. No request_flow_input needed — the account is already connected.\",\n ...(external?.captchaEnabled ? [CAPTCHA_NODE_HINT] : []),\n ...(external?.configuration?.postSubmitAction.type === \"redirect_url\"\n ? [\n \"This form redirects on submit. Safe unless it is the last step: the renderer suppresses the redirect whenever a step follows it.\",\n ]\n : []),\n ...(external?.embedType === \"v4\" && !external.region\n ? [\n \"WARNING: this is a v4 form and the connected account has no region recorded, so the step will load HubSpot's na1 script host. That is correct for US portals and breaks the form on eu1/ap1 ones. If it renders blank, have the user reconnect HubSpot from Brain -> Integrations -> Tools, then re-run this command.\",\n ]\n : []),\n ];\n}\n\nconst formsViewCommand = defineCommand({\n meta: {\n name: \"view\",\n description: \"Show one HubSpot form's fields and configuration. Example: baker hubspot forms view 1a2b3c\",\n },\n args: {\n formId: { type: \"positional\", description: \"HubSpot form id\", required: true },\n full: { type: \"boolean\", description: \"Include the raw HubSpot payload\", required: false },\n \"as-node\": { type: \"boolean\", description: \"Emit the node-ready form.external blob\", required: false },\n },\n run: async ({ args }) => {\n try {\n const response = await apiPost<HubspotFormsViewResponse>(\"/api/hubspot/forms/view\", {\n formId: args.formId,\n ...(args.full ? { full: true } : {}),\n ...(args[\"as-node\"] ? { asNode: true } : {}),\n });\n\n if (args[\"as-node\"]) {\n writeJson({ ...response, hints: formNodeHints(response.data.external) });\n return;\n }\n\n const form = response.data.form;\n if (!form) {\n throw new Error(\"Response did not include the form view\");\n }\n const hints = formViewHints(form);\n\n writeJson({ ...response, meta: { count: form.fields.length }, ...(hints.length > 0 ? { hints } : {}) });\n } catch (err) {\n failNotConnected(err);\n }\n },\n});\n\nconst meetingsListCommand = defineCommand({\n meta: {\n name: \"list\",\n description: \"List HubSpot meeting links (calendars). Example: baker hubspot meetings list\",\n },\n args: {\n search: { type: \"string\", description: \"Match on meeting name\", required: false },\n \"redirecting-only\": { type: \"boolean\", description: \"Only links that redirect after booking\", required: false },\n },\n run: async ({ args }) => {\n try {\n const body: Record<string, unknown> = {};\n if (args.search) {\n body.search = args.search;\n }\n if (args[\"redirecting-only\"]) {\n body.redirectingOnly = true;\n }\n\n const response = await apiPost<HubspotMeetingsListResponse>(\"/api/hubspot/meetings/list\", body);\n const { meetings } = response.data;\n const hints: string[] = [];\n if (meetings.length === 0) {\n hints.push(\"No meeting links matched. Drop --search, or check the connected HubSpot account.\");\n } else {\n hints.push(\n \"To put one on a page: `baker hubspot meetings view <slug> --as-node` returns the object to write into the step's form.external.\",\n );\n }\n const unknown = meetings.filter((meeting) => !meeting.redirectKnown);\n if (unknown.length > 0) {\n hints.push(\n `HubSpot did not report booking settings for ${unknown.length} of these (${unknown\n .map((meeting) => meeting.slug)\n .join(\n \", \",\n )}), so their redirect and field count are UNKNOWN, not absent. Run \\`baker hubspot meetings view <slug>\\` before concluding one does not redirect.`,\n );\n }\n\n writeJson({ ...response, meta: { count: meetings.length }, ...(hints.length > 0 ? { hints } : {}) });\n } catch (err) {\n failNotConnected(err);\n }\n },\n});\n\nconst meetingsViewCommand = defineCommand({\n meta: {\n name: \"view\",\n description: \"Show one HubSpot meeting link's booking fields. Example: baker hubspot meetings view discovery-call\",\n },\n args: {\n slug: { type: \"positional\", description: \"Meeting slug\", required: true },\n \"as-node\": { type: \"boolean\", description: \"Emit the node-ready form.external blob\", required: false },\n },\n run: async ({ args }) => {\n try {\n const response = await apiPost<HubspotMeetingsViewResponse>(\"/api/hubspot/meetings/view\", {\n slug: args.slug,\n ...(args[\"as-node\"] ? { asNode: true } : {}),\n });\n\n if (args[\"as-node\"]) {\n const { external } = response.data;\n writeJson({\n ...response,\n hints: [\n \"Write this object into the node's `form.external` in the flow's _data.json, keeping the rest of the node as-is. No request_flow_input needed — the account is already connected.\",\n ...(external?.customParams.redirectUrl\n ? [\n `This calendar redirects to ${external.customParams.redirectUrl} after booking, and that redirect is NOT suppressed — any step placed after it is unreachable. Keep it as the last step, or ask the user to clear the redirect in HubSpot.`,\n ]\n : []),\n ],\n });\n return;\n }\n\n const meeting = response.data.meeting;\n if (!meeting) {\n throw new Error(\"Response did not include the meeting view\");\n }\n const hints: string[] = [];\n if (meeting.redirectUrl) {\n hints.push(\n `This calendar redirects to ${meeting.redirectUrl} after booking. A step placed after it will not be reached — keep it as the last step, or clear the redirect in HubSpot.`,\n );\n }\n\n writeJson({ ...response, meta: { count: meeting.fields.length }, ...(hints.length > 0 ? { hints } : {}) });\n } catch (err) {\n failNotConnected(err);\n }\n },\n});\n\nconst formsSubmissionsCommand = defineCommand({\n meta: {\n name: \"submissions\",\n description:\n \"How many leads a form received, and when. Example: baker hubspot forms submissions <formId> --days 30\",\n },\n args: {\n formId: { type: \"positional\", description: \"HubSpot form id\", required: true },\n days: { type: \"string\", description: \"Window in days (default 30)\", required: false },\n full: { type: \"boolean\", description: \"Include each lead's answers\", required: false },\n },\n run: async ({ args }) => {\n try {\n const days = args.days === undefined ? 30 : Number(args.days);\n if (!Number.isInteger(days) || days < 1 || days > 365) {\n throw new ApiError(\"VALIDATION_ERROR\", \"--days must be a whole number between 1 and 365.\");\n }\n\n const response = await apiPost<HubspotFormSubmissionsResponse>(\"/api/hubspot/forms/submissions\", {\n formId: args.formId,\n days,\n ...(args.full ? { full: true } : {}),\n });\n const { inWindow, total, truncated, lastSubmittedAt } = response.data;\n\n const hints: string[] = [];\n if (inWindow === 0) {\n hints.push(\n total === 0\n ? \"This form has received nothing at all — check it is the form actually embedded on the page before concluding the campaign is at fault.\"\n : `No leads in the last ${days} days, though the form has ${total} older submission(s). It worked once and has gone quiet.`,\n );\n }\n if (truncated) {\n hints.push(\n \"Stopped before reaching the end of the window, so `inWindow` is a floor, not a count. Say so rather than reporting it as exact.\",\n );\n }\n if (!args.full && inWindow > 0) {\n hints.push(\n \"Counts only — the leads' own answers are not included. Add --full if you genuinely need the field values; it returns personal data, so do not paste it into a report or a chat message.\",\n );\n }\n if (lastSubmittedAt !== null) {\n hints.push(\n \"To find out whether these leads were worked, cross-check the deal pipeline: `baker hubspot pipelines list`.\",\n );\n }\n\n writeJson({ ...response, meta: { count: inWindow }, ...(hints.length > 0 ? { hints } : {}) });\n } catch (err) {\n failNotConnected(err);\n }\n },\n});\n\nconst workflowsListCommand = defineCommand({\n meta: {\n name: \"list\",\n description: \"List HubSpot workflows. Example: baker hubspot workflows list --enabled-only\",\n },\n args: {\n search: { type: \"string\", description: \"Match on workflow name\", required: false },\n \"enabled-only\": { type: \"boolean\", description: \"Only workflows that are on\", required: false },\n },\n run: async ({ args }) => {\n try {\n const body: Record<string, unknown> = {};\n if (args.search) {\n body.search = args.search;\n }\n if (args[\"enabled-only\"]) {\n body.enabledOnly = true;\n }\n\n const response = await apiPost<HubspotWorkflowsListResponse>(\"/api/hubspot/workflows/list\", body);\n const { workflows } = response.data;\n const off = workflows.filter((workflow) => !workflow.enabled);\n const hints: string[] = [];\n if (workflows.length === 0) {\n hints.push(\"No workflows matched. Drop --search/--enabled-only, or the account genuinely has none.\");\n }\n if (off.length > 0) {\n hints.push(\n `${off.length} of these are switched off. A form wired to a workflow that is off looks connected and does nothing — worth flagging to the user.`,\n );\n }\n\n writeJson({ ...response, meta: { count: workflows.length }, ...(hints.length > 0 ? { hints } : {}) });\n } catch (err) {\n failNotConnected(err);\n }\n },\n});\n\n/**\n * What the agent should take from one workflow read.\n *\n * All three of these are silent failures in HubSpot — the workflow saves, looks\n * right in the editor, and runs. Nothing surfaces them but reading the order and\n * the flags, so they are stated rather than left for the agent to notice.\n */\nexport function workflowViewHints(workflow: HubspotWorkflowsViewResponse[\"data\"][\"workflow\"]): string[] {\n const hints: string[] = [];\n if (!workflow.enabled) {\n hints.push(\n \"This workflow is switched off, so nothing below it is running now — it may still have run while it was on. Say so before reporting on what it does.\",\n );\n }\n\n // Only a LIST_BRANCH is evaluated top down. A STATIC_BRANCH splits on a value\n // and matches by equality, so \"a broad branch above a narrow one\" cannot\n // happen there — and both arrive here as `branches`, so the kind has to be\n // read off the step rather than off the list.\n const ordered = workflow.steps.filter((step) => step.type === \"LIST_BRANCH\" && (step.branches?.length ?? 0) > 1);\n if (ordered.length > 0) {\n hints.push(\n \"Branches are listed in evaluation order and the first match wins. Check that no broad branch sits above a narrower one — if it does, the narrow branch never runs and nothing in HubSpot reports it.\",\n );\n }\n if (workflow.raw === undefined && ordered.length > 0) {\n hints.push(\n \"This view names the branches but not what they compare. Re-run with --full to read the filter criteria before judging whether a branch matches what it was meant to match.\",\n );\n }\n\n if (workflow.enrollment.reEnrollment === false) {\n hints.push(\n \"Re-enrolment is off: a record that meets the criteria a second time will not run through this again. That is a real choice, not necessarily a fault — but confirm it is the intended one.\",\n );\n } else if (workflow.enrollment.reEnrollment === null) {\n hints.push(\n \"Whether this re-enrols is not reported for this kind of enrolment, so do not state it either way — read it in HubSpot if it matters.\",\n );\n }\n return hints;\n}\n\nconst workflowsViewCommand = defineCommand({\n meta: {\n name: \"view\",\n description:\n \"Read one workflow's real configuration — enrolment, branches in order, and what each step writes. Example: baker hubspot workflows view 121183594 --full\",\n },\n args: {\n workflowId: {\n type: \"positional\",\n description: \"Workflow id (from `baker hubspot workflows list`)\",\n required: true,\n },\n full: { type: \"boolean\", description: \"Include the raw HubSpot payload with the filter criteria\", required: false },\n },\n run: async ({ args }) => {\n try {\n const response = await apiPost<HubspotWorkflowsViewResponse>(\"/api/hubspot/workflows/view\", {\n workflowId: args.workflowId,\n ...(args.full ? { full: true } : {}),\n });\n const { workflow } = response.data;\n const hints = workflowViewHints(workflow);\n\n writeJson({ ...response, meta: { count: workflow.steps.length }, ...(hints.length > 0 ? { hints } : {}) });\n } catch (err) {\n failNotConnected(err);\n }\n },\n});\n\nconst pipelinesListCommand = defineCommand({\n meta: {\n name: \"list\",\n description: \"List HubSpot deal pipelines and their stages. Example: baker hubspot pipelines list\",\n },\n args: {},\n run: async () => {\n try {\n const response = await apiPost<HubspotPipelinesListResponse>(\"/api/hubspot/pipelines/list\", {});\n const { pipelines } = response.data;\n const hints: string[] =\n pipelines.length === 0\n ? [\"This account has no deal pipelines, so there is nowhere for a lead to be worked.\"]\n : [\"Stages are listed in the order they run in HubSpot, so the first stage is where a new lead lands.\"];\n\n writeJson({ ...response, meta: { count: pipelines.length }, hints });\n } catch (err) {\n failNotConnected(err);\n }\n },\n});\n\ntype HubspotObjectWord = \"contact\" | \"deal\" | \"lead\";\n\nconst OBJECT_WORDS: Record<HubspotObjectWord, { plural: string; command: string; rows: string }> = {\n contact: {\n plural: \"contacts\",\n command: \"baker hubspot contacts\",\n rows: '`--field email={{work_email}}`, `--field currency=EUR`, `--field first_name=\"{{firstname}} {{lastname}}\"`; `{{id}}` is the contact\\'s own id',\n },\n deal: {\n plural: \"deals\",\n command: \"baker hubspot deals\",\n rows: \"`--field value={{amount}}`, `--field currency={{deal_currency_code}}`, `--field email={{contact.email}}` — a deal's own properties bare, its contact's as `contact.<name>`; `{{id}}` is the deal's own id, `{{contact.id}}` the contact's\",\n },\n lead: {\n plural: \"leads\",\n command: \"baker hubspot leads\",\n rows: \"`--field email={{contact.email}}`, `--field properties.stage={{hs_pipeline_stage}}` — a lead's own properties bare, its contact's as `contact.<name>`; `{{id}}` is the lead's own id, `{{contact.id}}` the contact's. A lead carries no amount of its own, so `value` is empty unless you point it at a property\",\n },\n};\n\n/** `properties`, for contacts and for deals: what a HubSpot event can watch. */\nfunction propertiesCommand(object: HubspotObjectWord) {\n const words = OBJECT_WORDS[object];\n return defineCommand({\n meta: {\n name: \"properties\",\n description: `List every ${object} property a HubSpot event can watch, with its kind, the operators that kind takes, and a select's values. Example: ${words.command} properties`,\n },\n args: {},\n run: async () => {\n try {\n const response = await apiPost<HubspotContactPropertiesListResponse>(\"/api/hubspot/contacts/properties\", {\n object,\n });\n const { properties } = response.data;\n const operators = Object.entries(HUBSPOT_OPERATORS)\n .map(([kind, list]) => `${kind}: ${list.map((operator) => operator.value).join(\", \")}`)\n .join(\" · \");\n const objectFlag = object === \"contact\" ? \"\" : ` --object ${object}`;\n const hints =\n properties.length === 0\n ? [`This account has no visible ${object} property, so there is nothing an event could watch.`]\n : [\n `Pick the property and the condition that mean the outcome, then \\`baker analytics sources --create-hubspot${objectFlag} --property <name> [--operator <op>] --value <value>…\\` (\\`--value\\` repeats for a list). Operators by kind — ${operators}. Counting starts from creation: a ${object} already satisfying it is not counted until it leaves and comes back.`,\n ];\n writeJson({ ...response, meta: { count: properties.length }, hints });\n } catch (err) {\n failNotConnected(err);\n }\n },\n });\n}\n\nconst contactsPropertiesCommand = propertiesCommand(\"contact\");\n\nconst contactsSummaryCommand = defineCommand({\n meta: {\n name: \"summary\",\n description: \"Whether recent leads are being worked, as counts. Example: baker hubspot contacts summary --days 30\",\n },\n args: {\n days: { type: \"string\", description: \"Window in days (default 30)\", required: false },\n },\n run: async ({ args }) => {\n try {\n const days = args.days === undefined ? 30 : Number(args.days);\n if (!Number.isInteger(days) || days < 1 || days > 365) {\n throw new ApiError(\"VALIDATION_ERROR\", \"--days must be a whole number between 1 and 365.\");\n }\n\n const response = await apiPost<HubspotContactsSummaryResponse>(\"/api/hubspot/contacts/summary\", { days });\n const { total, withOwner, withoutOwner, byStage, truncated } = response.data;\n\n const hints: string[] = [];\n if (total === 0) {\n hints.push(`No contacts were created in the last ${days} days — nothing reached the CRM in that window.`);\n } else if (withOwner === 0) {\n hints.push(\n `None of these ${total} contacts has anyone assigned. That is the strongest available signal that the leads are arriving and nobody is picking them up — worth raising with the user.`,\n );\n } else if (withoutOwner > withOwner) {\n hints.push(`${withoutOwner} of ${total} contacts have nobody assigned — more unworked than worked.`);\n }\n const unset = byStage.find((entry) => entry.stage === \"unset\");\n if (unset && unset.count > 0) {\n hints.push(\n `${unset.count} contact(s) have no lifecycle stage set at all, so they were created and never staged.`,\n );\n }\n if (truncated) {\n hints.push(\"Stopped before reading every contact in the window, so these counts are floors, not totals.\");\n }\n\n writeJson({ ...response, meta: { count: total }, ...(hints.length > 0 ? { hints } : {}) });\n } catch (err) {\n failNotConnected(err);\n }\n },\n});\n\n/**\n * What the agent should take from one contact lookup.\n *\n * An empty `deals` or a null `company` means two different things depending on\n * whether the connection could read them at all, and the wrong reading — \"this\n * lead was never worked\" — is the one conclusion the command exists to settle.\n * So each is paired with its readability flag rather than reported bare.\n */\nexport function contactLookupHints(data: HubspotContactLookupResponse[\"data\"]): string[] {\n const { found, contact, deals, dealsReadable, company, companyReadable } = data;\n if (!found) {\n return [\n \"No contact with that email. The lead never reached the CRM — check the form's submissions before assuming the CRM lost it.\",\n ];\n }\n\n const hints: string[] = [];\n if (contact?.ownerId === null) {\n hints.push(\"Nobody is assigned to this contact.\");\n }\n if (!dealsReadable) {\n hints.push(\n \"Deals were not read: this HubSpot connection does not cover them. Do not report the lead as having no deal — you cannot tell. The user can enable it by reconnecting HubSpot.\",\n );\n } else if (deals.length === 0) {\n hints.push(\"No deal is associated, so this contact was never taken into the pipeline.\");\n }\n if (!companyReadable) {\n hints.push(\n \"Account details were not read: this HubSpot connection does not cover them. Do not report the lead as having no account — you cannot tell. The user can enable it by reconnecting HubSpot.\",\n );\n } else if (company === null) {\n hints.push(\n \"No account is associated either. Most B2B setups create one automatically when a contact arrives, so this usually means the lead was never processed at all — not that the account is missing.\",\n );\n }\n return hints;\n}\n\nconst contactsLookupCommand = defineCommand({\n meta: {\n name: \"lookup\",\n description:\n \"Find one contact by email and see whether it was worked. Example: baker hubspot contacts lookup a@b.com\",\n },\n args: {\n email: { type: \"positional\", description: \"The contact's email address\", required: true },\n },\n run: async ({ args }) => {\n try {\n const response = await apiPost<HubspotContactLookupResponse>(\"/api/hubspot/contacts/lookup\", {\n email: args.email,\n });\n const hints = contactLookupHints(response.data);\n\n writeJson({\n ...response,\n meta: { count: response.data.found ? 1 : 0 },\n ...(hints.length > 0 ? { hints } : {}),\n });\n } catch (err) {\n failNotConnected(err);\n }\n },\n});\n\n/** `fields`, for contacts and for deals: what a HubSpot event's rows can read. */\nfunction fieldsCommand(object: HubspotObjectWord) {\n const words = OBJECT_WORDS[object];\n return defineCommand({\n meta: {\n name: \"fields\",\n description: `List every property a HubSpot event on a ${object} can read into its rows, with HubSpot's type${object === \"contact\" ? \"\" : ` — the ${object}'s own, and its contact's as contact.<name>`}. Example: ${words.command} fields`,\n },\n args: {},\n run: async () => {\n try {\n const response = await apiPost<HubspotContactFieldsListResponse>(\"/api/hubspot/contacts/fields\", { object });\n const { fields } = response.data;\n writeJson({\n ...response,\n meta: { count: fields.length },\n hints: [\n `A row of a HubSpot event is a template over these names: ${words.rows}. \\`baker analytics sources --preview${object === \"contact\" ? \"\" : ` --object ${object}`} --property <p> --value <v> --field <row>…\\` reads one real ${object} to check the rows against.`,\n ],\n });\n } catch (err) {\n failNotConnected(err);\n }\n },\n });\n}\n\nconst contactsFieldsCommand = fieldsCommand(\"contact\");\n\nconst dealsCommand = defineCommand({\n meta: {\n name: \"deals\",\n description:\n \"Deals on the connected HubSpot account: the deals themselves with amount and stage (`list`), and what a HubSpot event on a deal can watch (`properties`) and read (`fields`).\",\n },\n subCommands: {\n list: () => import(\"./crm.ts\").then((m) => m.dealsListCommand),\n properties: propertiesCommand(\"deal\"),\n fields: fieldsCommand(\"deal\"),\n },\n});\n\nconst leadsCommand = defineCommand({\n meta: {\n name: \"leads\",\n description:\n \"Leads on the connected HubSpot account: what a HubSpot event on a lead can watch (`properties`) and read (`fields`). Start here for qualification and disqualification — a lead's stage is where HubSpot records both, and `hs_pipeline_stage` lists the account's own stages with their labels. Needs Sales Hub Professional or Enterprise; on any other plan the account has no leads to read.\",\n },\n subCommands: { properties: propertiesCommand(\"lead\"), fields: fieldsCommand(\"lead\") },\n});\n\nconst contactsCommand = defineCommand({\n meta: { name: \"contacts\", description: \"Contacts on the connected HubSpot account.\" },\n subCommands: {\n summary: contactsSummaryCommand,\n lookup: contactsLookupCommand,\n properties: contactsPropertiesCommand,\n fields: contactsFieldsCommand,\n },\n});\n\nconst companiesCommand = defineCommand({\n meta: { name: \"companies\", description: \"Companies (accounts) in the connected HubSpot CRM.\" },\n subCommands: { search: () => import(\"./crm.ts\").then((m) => m.companiesSearchCommand) },\n});\n\nconst formsCommand = defineCommand({\n meta: { name: \"forms\", description: \"HubSpot forms on the connected account.\" },\n subCommands: { list: formsListCommand, view: formsViewCommand, submissions: formsSubmissionsCommand },\n});\n\nconst workflowsCommand = defineCommand({\n meta: { name: \"workflows\", description: \"HubSpot workflows on the connected account.\" },\n subCommands: { list: workflowsListCommand, view: workflowsViewCommand },\n});\n\nconst pipelinesCommand = defineCommand({\n meta: { name: \"pipelines\", description: \"HubSpot deal pipelines on the connected account.\" },\n subCommands: { list: pipelinesListCommand },\n});\n\nconst meetingsCommand = defineCommand({\n meta: { name: \"meetings\", description: \"HubSpot meeting links (calendars) on the connected account.\" },\n subCommands: { list: meetingsListCommand, view: meetingsViewCommand },\n});\n\nexport const hubspotCommand = defineCommand({\n meta: {\n name: \"hubspot\",\n description: `Read the connected HubSpot account — forms, the leads they received, workflows, deal pipelines, CRM\ncompanies and deals, and meeting links (calendars) — and get the blob to wire a form into a Form step yourself.\n\nExamples:\n baker hubspot forms list # every form: embed type + post-submit action\n baker hubspot forms list --redirecting-only # which forms redirect away on submit\n baker hubspot forms view <formId> # fields, consent mode, full configuration\n baker hubspot forms view <formId> --as-node # the form.external blob -> write into the step\n baker hubspot forms submissions <formId> # how many leads it got, and when\n baker hubspot workflows list --enabled-only # what runs after a lead is captured\n baker hubspot workflows view <workflowId> # its real branches, in order, and what each step writes\n baker hubspot pipelines list # where a lead lands, and the stages after it\n baker hubspot contacts summary --days 30 # are recent leads being worked? (counts only)\n baker hubspot contacts lookup a@b.com # was this one lead picked up?\n baker hubspot companies search --domains acme.com,globex.io --with-deals # which are accounts, with deals\n baker hubspot deals list --modified-since 2026-01-01 # deals: amount, stage, closed won\n baker hubspot deals properties # what a HubSpot event on a deal can watch (dealstage, amount…)\n baker hubspot deals fields # what its rows can read: the deal's own, its contact's as contact.<name>\n baker hubspot meetings list # every calendar + whether booking redirects\n baker hubspot meetings view <slug> --as-node # same, for a hubspotMeeting step\n\nAn account connected before one of these existed cannot serve it — you get HUBSPOT_RECONNECT_REQUIRED, which\nmeans HubSpot IS connected and the user has to reconnect it to widen what Baker may read. Report that and\ncarry on with the rest; never call it broken and never retry.\n\nNothing here is secret, so HubSpot steps do not need request_flow_input: take --as-node and edit the\nflow's _data.json. Use the approval form only when no account is connected or the right form is unclear.\nFull guide: __tooling__/docs/tools/baker/hubspot.md`,\n },\n subCommands: {\n forms: formsCommand,\n workflows: workflowsCommand,\n pipelines: pipelinesCommand,\n contacts: contactsCommand,\n companies: companiesCommand,\n deals: dealsCommand,\n leads: leadsCommand,\n meetings: meetingsCommand,\n },\n});\n"],"mappings":"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","names":[]}
@@ -0,0 +1,45 @@
1
+ import {
2
+ buildNext,
3
+ compactIdea,
4
+ ideasCommand,
5
+ ideasHints,
6
+ ideasReport
7
+ } from "./chunk-Q3EIVZAR.js";
8
+ import "./chunk-DQVI7GCX.js";
9
+ import "./chunk-EKX37C3T.js";
10
+ import "./chunk-KTZCLJ2D.js";
11
+ import "./chunk-PJXNCRMR.js";
12
+ import "./chunk-MKUA54QE.js";
13
+ import "./chunk-6ZFSDYWV.js";
14
+ import "./chunk-QPESDKZC.js";
15
+ import "./chunk-E44NXCTL.js";
16
+ import "./chunk-EJGAJHLB.js";
17
+ import "./chunk-FJZYOVSW.js";
18
+ import "./chunk-F3CZFUXZ.js";
19
+ import "./chunk-2WZI36D3.js";
20
+ import "./chunk-65Y3RCWP.js";
21
+ import "./chunk-LNNTHEL7.js";
22
+ import "./chunk-FOMFU2RX.js";
23
+ import "./chunk-PSGIHSNC.js";
24
+ import "./chunk-PONLPYD7.js";
25
+ import "./chunk-NZ34KM46.js";
26
+ import "./chunk-CAZGM2NX.js";
27
+ import "./chunk-NZS3KEQ2.js";
28
+ import "./chunk-GIWHHCD6.js";
29
+ import "./chunk-SOPVIIUW.js";
30
+ import "./chunk-G4FG5EQO.js";
31
+ import "./chunk-NSBNIPIW.js";
32
+ import "./chunk-MUS2UTWU.js";
33
+ import "./chunk-X7VQFLHI.js";
34
+ import "./chunk-LU4HI4KI.js";
35
+ import "./chunk-LGK7UWBN.js";
36
+ import "./chunk-Q7US4OOA.js";
37
+ import "./chunk-YQSBHWOI.js";
38
+ export {
39
+ buildNext,
40
+ compactIdea,
41
+ ideasCommand,
42
+ ideasHints,
43
+ ideasReport
44
+ };
45
+ //# sourceMappingURL=ideas-WX7EBPSF.js.map
@@ -0,0 +1,92 @@
1
+ import "./chunk-YQSBHWOI.js";
2
+
3
+ // src/commands/images/index.ts
4
+ import { defineCommand } from "citty";
5
+ var imagesCommand = defineCommand({
6
+ meta: {
7
+ name: "images",
8
+ description: `Find, source, and normalize images. Subcommands route by provider so cost + license are explicit.
9
+
10
+ Library + search:
11
+ baker images library <q> Search the company library (replaces search)
12
+ baker images find <q> --sources \u2026 Fanout: library first, then opt-in providers
13
+
14
+ External providers:
15
+ baker images stock <q> [--type \u2026] Free stock \u2014 Pexels photos + Pixabay illustrations/vectors
16
+ baker images google <q> Google Images via the official Custom Search API
17
+ baker images pinterest <q> Pinterest reference imagery via ScrapeCreators (photo-real mood boards)
18
+ baker images logo <domain> Brand logo via Brandfetch CDN
19
+ baker images icon <name> [--set \u2026] Iconify (200+ sets)
20
+ baker images meme <reaction> [--auto-ingest N] The real, well-known meme template for a reaction (Imgflip)
21
+ baker images gif <q> [--trending] Giphy GIFs / reaction memes (paid-social creative)
22
+ baker images sticker <q> [--trending] Giphy stickers \u2014 transparent overlays for ad creative
23
+ baker images extract <url> Firecrawl page extract
24
+ baker images screenshot <url> ScreenshotOne capture
25
+
26
+ Making new imagery lives in its own family \u2014 baker studio generate / baker studio animate. See __tooling__/docs/tools/baker/studio.md
27
+
28
+ Library writes (run on the Convex backend):
29
+ baker images ingest <url> --source <enum> Save remote URL to library
30
+ baker images use <url> Ingest and wait for ready
31
+ baker images upload ./file Upload local file
32
+ baker images get <id> Get a single record
33
+ baker images group <id> Every image that arrived in the same set (carousel, page scrape)
34
+ baker images delete <id> Delete a record
35
+ baker images retry <id> Process a failed image (status 'error') again
36
+ baker images describe <id> --description "\u2026" Correct a wrong name/description/tags \u2014 what library search reads on
37
+
38
+ Local transforms (operate on files in the sandbox, before upload):
39
+ baker images download <url|imageId\u2026> [--out \u2026] Remote URL or library image \u2192 local file (never use curl)
40
+ baker images normalize <files> [--color \u2026] [--remove-bg] [--height N | --width N | --size WxH]
41
+ Declarative recolor + bg removal + trim + resize
42
+ baker images crop <file> --x N --y N --width N --height N
43
+ Coordinate-based rectangular extract
44
+ baker images dimensions <file-or-url> Width / height / aspect / format without decoding the full image
45
+
46
+ Taxonomy:
47
+ baker images tags List available image tag names (defaults + company custom tags)
48
+ baker images tags create|update|delete <name> Manage the company's custom tags (shared with videos and testimonials)
49
+
50
+ Paid transforms (run on the Convex backend, cost-tracked):
51
+ baker images upscale <imageId> Real-ESRGAN super-resolution ($0.05/image, waits for completion)
52
+ baker images upscale <imageId> --remove Drop the upscaled copy, back to the original (free)
53
+ baker images layerize <imageId> Split into editable layers; recovers baked-in copy as editable text (costs credits)
54
+ baker images layers <imageId> Read the layers of an already-split image (free)
55
+ Full guide: __tooling__/docs/tools/baker/images.md`
56
+ },
57
+ subCommands: {
58
+ get: () => import("./get-UOXXHYXJ.js").then((m) => m.getCommand),
59
+ group: () => import("./group-JROMVKDU.js").then((m) => m.groupCommand),
60
+ library: () => import("./library-OLXEGJ73.js").then((m) => m.libraryCommand),
61
+ find: () => import("./find-5FCDTFYC.js").then((m) => m.findCommand),
62
+ stock: () => import("./stock-TAKWC3YI.js").then((m) => m.stockCommand),
63
+ google: () => import("./google-3BO7KNZ6.js").then((m) => m.googleCommand),
64
+ pinterest: () => import("./pinterest-PONS4KLN.js").then((m) => m.pinterestCommand),
65
+ logo: () => import("./logo-4MGGQHQ7.js").then((m) => m.logoCommand),
66
+ icon: () => import("./icon-XHPEVICH.js").then((m) => m.iconCommand),
67
+ meme: () => import("./meme-LVRZR7XL.js").then((m) => m.memeCommand),
68
+ gif: () => import("./gif-2D6UXHP5.js").then((m) => m.gifCommand),
69
+ sticker: () => import("./sticker-CJ6Y36AO.js").then((m) => m.stickerCommand),
70
+ extract: () => import("./extract-55YRHNCV.js").then((m) => m.extractCommand),
71
+ screenshot: () => import("./screenshot-CREF7FB4.js").then((m) => m.screenshotCommand),
72
+ ingest: () => import("./ingest-AM5YDTRH.js").then((m) => m.ingestCommand),
73
+ use: () => import("./use-J3TZJZ4M.js").then((m) => m.useCommand),
74
+ search: () => import("./search-7343MBTZ.js").then((m) => m.searchCommand),
75
+ upload: () => import("./upload-5237F4WV.js").then((m) => m.uploadCommand),
76
+ delete: () => import("./delete-GPTU4DJ5.js").then((m) => m.deleteCommand),
77
+ retry: () => import("./retry-MIXKW4EW.js").then((m) => m.retryCommand),
78
+ describe: () => import("./describe-DUPBGFKA.js").then((m) => m.describeCommand),
79
+ download: () => import("./download-NNDBNAVZ.js").then((m) => m.downloadCommand),
80
+ normalize: () => import("./normalize-BREMV3IB.js").then((m) => m.normalizeCommand),
81
+ crop: () => import("./crop-NBVWWXF2.js").then((m) => m.cropCommand),
82
+ dimensions: () => import("./dimensions-M4LMNCBV.js").then((m) => m.dimensionsCommand),
83
+ layerize: () => import("./layerize-M5XLTCO4.js").then((m) => m.layerizeCommand),
84
+ layers: () => import("./layerize-M5XLTCO4.js").then((m) => m.layersCommand),
85
+ upscale: () => import("./upscale-KLMXV6JG.js").then((m) => m.upscaleCommand),
86
+ tags: () => import("./tags-YSC7ZILI.js").then((m) => m.tagsCommand)
87
+ }
88
+ });
89
+ export {
90
+ imagesCommand
91
+ };
92
+ //# sourceMappingURL=images-4AXF4LAC.js.map
@@ -0,0 +1,110 @@
1
+ import {
2
+ imageSourceSchema
3
+ } from "./chunk-NZ34KM46.js";
4
+ import "./chunk-CAZGM2NX.js";
5
+ import "./chunk-NZS3KEQ2.js";
6
+ import "./chunk-GIWHHCD6.js";
7
+ import "./chunk-SOPVIIUW.js";
8
+ import "./chunk-G4FG5EQO.js";
9
+ import "./chunk-NSBNIPIW.js";
10
+ import "./chunk-MUS2UTWU.js";
11
+ import {
12
+ ApiError,
13
+ apiPost
14
+ } from "./chunk-X7VQFLHI.js";
15
+ import "./chunk-LU4HI4KI.js";
16
+ import "./chunk-LGK7UWBN.js";
17
+ import {
18
+ registerSchema,
19
+ writeJson,
20
+ writeOutput
21
+ } from "./chunk-Q7US4OOA.js";
22
+ import "./chunk-YQSBHWOI.js";
23
+
24
+ // src/commands/images/ingest.ts
25
+ import { defineCommand } from "citty";
26
+ var SOURCE_VALUES = imageSourceSchema.options.join(" | ");
27
+ registerSchema({
28
+ command: "images.ingest",
29
+ description: "Ingest a remote image URL into the library (full describe + embed).",
30
+ args: {
31
+ url: { type: "string", description: "Image URL to ingest", required: true },
32
+ source: { type: "string", description: `Where the image came from. One of: ${SOURCE_VALUES}`, required: true },
33
+ "external-id": { type: "string", description: "Provider asset id", required: false },
34
+ "external-url": { type: "string", description: "Canonical page URL", required: false },
35
+ context: { type: "string", description: "Description context hint", required: false },
36
+ output: { type: "string", description: "Output format: json|files|md", required: false, default: "json" },
37
+ fields: { type: "string", description: "Comma-separated field names to include", required: false }
38
+ }
39
+ });
40
+ var ingestCommand = defineCommand({
41
+ meta: {
42
+ name: "ingest",
43
+ description: "Download a remote URL and store it in the library. Hash-deduped on bytes + externalId.\n\nExample: baker images ingest https://images.pexels.com/photos/13219418/pexels-photo-13219418.jpeg --source pexels --external-id 13219418"
44
+ },
45
+ args: {
46
+ url: { type: "positional", description: "Image URL", required: false },
47
+ source: { type: "string", description: `Where the image came from. One of: ${SOURCE_VALUES}`, required: false },
48
+ "external-id": { type: "string", description: "Provider asset id", required: false },
49
+ "external-url": { type: "string", description: "Canonical page URL", required: false },
50
+ context: { type: "string", description: "Description context", required: false },
51
+ output: { type: "string", description: "Output format: json|files|md", required: false, default: "json" },
52
+ fields: { type: "string", description: "Comma-separated field names to include", required: false }
53
+ },
54
+ run: async ({ args }) => {
55
+ try {
56
+ const url = args.url;
57
+ const source = args.source;
58
+ if (!url) {
59
+ writeJson({ ok: false, error: { code: "VALIDATION_ERROR", message: "URL is required" } });
60
+ process.exit(1);
61
+ }
62
+ if (!source) {
63
+ writeJson({
64
+ ok: false,
65
+ error: {
66
+ code: "VALIDATION_ERROR",
67
+ message: "--source is required",
68
+ fix: `Pass one of: ${SOURCE_VALUES}. Use "website" for an asset pulled off a company's own site.`
69
+ }
70
+ });
71
+ process.exit(1);
72
+ }
73
+ const parsedSource = imageSourceSchema.safeParse(source);
74
+ if (!parsedSource.success) {
75
+ writeJson({
76
+ ok: false,
77
+ error: {
78
+ code: "VALIDATION_ERROR",
79
+ message: `--source "${source}" is not a known image source`,
80
+ fix: `Pass one of: ${SOURCE_VALUES}. Use "website" for an asset pulled off a company's own site.`
81
+ }
82
+ });
83
+ process.exit(1);
84
+ }
85
+ const body = { url, source: parsedSource.data };
86
+ if (args["external-id"]) body.externalId = args["external-id"];
87
+ if (args["external-url"]) body.externalUrl = args["external-url"];
88
+ if (args.context) body.descriptionContext = args.context;
89
+ const data = await apiPost("/api/images/ingest", body);
90
+ writeOutput(
91
+ { ok: true, data },
92
+ args.output || "json",
93
+ args.fields ? args.fields.split(",") : void 0,
94
+ false,
95
+ (record) => record
96
+ );
97
+ } catch (err) {
98
+ if (err instanceof ApiError) {
99
+ writeJson({ ok: false, error: { code: err.code, message: err.message } });
100
+ process.exit(1);
101
+ }
102
+ writeJson({ ok: false, error: { code: "INTERNAL_ERROR", message: "Unexpected error" } });
103
+ process.exit(1);
104
+ }
105
+ }
106
+ });
107
+ export {
108
+ ingestCommand
109
+ };
110
+ //# sourceMappingURL=ingest-AM5YDTRH.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/images/ingest.ts"],"sourcesContent":["import { type ImagesIngestRequest, type ImagesIngestResponse, imageSourceSchema } from \"@baker/api\";\nimport { defineCommand } from \"citty\";\nimport { ApiError, apiPost } from \"../../client.ts\";\nimport { type OutputFormat, writeJson, writeOutput } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\n\n// The enum lives in @baker/api. Spelling it out here rather than describing it\n// as \"enum\" is the difference between one call and two: the value set was only\n// discoverable by sending a wrong one and reading the server's rejection.\nconst SOURCE_VALUES = imageSourceSchema.options.join(\" | \");\n\nregisterSchema({\n command: \"images.ingest\",\n description: \"Ingest a remote image URL into the library (full describe + embed).\",\n args: {\n url: { type: \"string\", description: \"Image URL to ingest\", required: true },\n source: { type: \"string\", description: `Where the image came from. One of: ${SOURCE_VALUES}`, required: true },\n \"external-id\": { type: \"string\", description: \"Provider asset id\", required: false },\n \"external-url\": { type: \"string\", description: \"Canonical page URL\", required: false },\n context: { type: \"string\", description: \"Description context hint\", required: false },\n output: { type: \"string\", description: \"Output format: json|files|md\", required: false, default: \"json\" },\n fields: { type: \"string\", description: \"Comma-separated field names to include\", required: false },\n },\n});\n\nexport const ingestCommand = defineCommand({\n meta: {\n name: \"ingest\",\n description:\n \"Download a remote URL and store it in the library. Hash-deduped on bytes + externalId.\\n\\nExample: baker images ingest https://images.pexels.com/photos/13219418/pexels-photo-13219418.jpeg --source pexels --external-id 13219418\",\n },\n args: {\n url: { type: \"positional\", description: \"Image URL\", required: false },\n source: { type: \"string\", description: `Where the image came from. One of: ${SOURCE_VALUES}`, required: false },\n \"external-id\": { type: \"string\", description: \"Provider asset id\", required: false },\n \"external-url\": { type: \"string\", description: \"Canonical page URL\", required: false },\n context: { type: \"string\", description: \"Description context\", required: false },\n output: { type: \"string\", description: \"Output format: json|files|md\", required: false, default: \"json\" },\n fields: { type: \"string\", description: \"Comma-separated field names to include\", required: false },\n },\n run: async ({ args }) => {\n try {\n const url = args.url as string | undefined;\n const source = args.source as string | undefined;\n if (!url) {\n writeJson({ ok: false, error: { code: \"VALIDATION_ERROR\", message: \"URL is required\" } });\n process.exit(1);\n }\n if (!source) {\n writeJson({\n ok: false,\n error: {\n code: \"VALIDATION_ERROR\",\n message: \"--source is required\",\n fix: `Pass one of: ${SOURCE_VALUES}. Use \"website\" for an asset pulled off a company's own site.`,\n },\n });\n process.exit(1);\n }\n // Parse here, not just at the HTTP boundary. A blind cast turned every\n // wrong value into a network round-trip before the agent learned the\n // valid set — which is exactly the boundary this repo says to parse at.\n const parsedSource = imageSourceSchema.safeParse(source);\n if (!parsedSource.success) {\n writeJson({\n ok: false,\n error: {\n code: \"VALIDATION_ERROR\",\n message: `--source \"${source}\" is not a known image source`,\n fix: `Pass one of: ${SOURCE_VALUES}. Use \"website\" for an asset pulled off a company's own site.`,\n },\n });\n process.exit(1);\n }\n const body: ImagesIngestRequest = { url, source: parsedSource.data };\n if (args[\"external-id\"]) body.externalId = args[\"external-id\"] as string;\n if (args[\"external-url\"]) body.externalUrl = args[\"external-url\"] as string;\n if (args.context) body.descriptionContext = args.context as string;\n\n const data = await apiPost<ImagesIngestResponse>(\"/api/images/ingest\", body);\n // The response is three scalars, not a library row — project it as-is\n // rather than through the image normalizer, which would blank it.\n writeOutput(\n { ok: true, data },\n (args.output as OutputFormat) || \"json\",\n args.fields ? (args.fields as string).split(\",\") : undefined,\n false,\n (record) => record,\n );\n } catch (err) {\n if (err instanceof ApiError) {\n writeJson({ ok: false, error: { code: err.code, 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"],"mappings":"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","names":[]}
@@ -0,0 +1,26 @@
1
+ import {
2
+ ingestCommand,
3
+ ingestHints,
4
+ runVideoIngest
5
+ } from "./chunk-64MAHLTK.js";
6
+ import "./chunk-FKOECEVC.js";
7
+ import "./chunk-PSGIHSNC.js";
8
+ import "./chunk-NZ34KM46.js";
9
+ import "./chunk-CAZGM2NX.js";
10
+ import "./chunk-NZS3KEQ2.js";
11
+ import "./chunk-GIWHHCD6.js";
12
+ import "./chunk-SOPVIIUW.js";
13
+ import "./chunk-G4FG5EQO.js";
14
+ import "./chunk-NSBNIPIW.js";
15
+ import "./chunk-MUS2UTWU.js";
16
+ import "./chunk-X7VQFLHI.js";
17
+ import "./chunk-LU4HI4KI.js";
18
+ import "./chunk-LGK7UWBN.js";
19
+ import "./chunk-Q7US4OOA.js";
20
+ import "./chunk-YQSBHWOI.js";
21
+ export {
22
+ ingestCommand,
23
+ ingestHints,
24
+ runVideoIngest
25
+ };
26
+ //# sourceMappingURL=ingest-C3M4GUO6.js.map
@@ -0,0 +1,132 @@
1
+ import {
2
+ CHATGPT_ADS_GRANULARITIES,
3
+ CHATGPT_ADS_LEVELS,
4
+ CHATGPT_ADS_METRICS,
5
+ CHATGPT_ADS_REFERENCE,
6
+ CHATGPT_ADS_SEGMENTS,
7
+ chatgptAdsInsightsRequestSchema,
8
+ insightsRequestFromArgs,
9
+ runChatgptRead
10
+ } from "./chunk-EW7JSTRZ.js";
11
+ import {
12
+ syncedFirstHint
13
+ } from "./chunk-Y2FAUFWK.js";
14
+ import {
15
+ writeJsonEnvelope
16
+ } from "./chunk-ZRP7Y2DM.js";
17
+ import "./chunk-SOPVIIUW.js";
18
+ import "./chunk-G4FG5EQO.js";
19
+ import {
20
+ apiPost
21
+ } from "./chunk-X7VQFLHI.js";
22
+ import "./chunk-LU4HI4KI.js";
23
+ import "./chunk-LGK7UWBN.js";
24
+ import {
25
+ registerSchema
26
+ } from "./chunk-Q7US4OOA.js";
27
+ import "./chunk-YQSBHWOI.js";
28
+
29
+ // src/commands/ads/chatgpt/insights.ts
30
+ import { defineCommand } from "citty";
31
+ var args = {
32
+ level: {
33
+ type: "string",
34
+ description: `What one row is: ${CHATGPT_ADS_LEVELS.join("|")} (default campaign)`,
35
+ required: false
36
+ },
37
+ "campaign-id": { type: "string", description: "Report on one campaign (cmpn_\u2026)", required: false },
38
+ "ad-group-id": { type: "string", description: "Report on one ad group (adgrp_\u2026)", required: false },
39
+ "ad-id": { type: "string", description: "Report on one ad (ad_\u2026)", required: false },
40
+ days: {
41
+ type: "string",
42
+ description: "Last N complete days, ending the account's yesterday (default 7)",
43
+ required: false
44
+ },
45
+ since: {
46
+ type: "string",
47
+ description: "First day, YYYY-MM-DD, account timezone (instead of --days)",
48
+ required: false
49
+ },
50
+ until: { type: "string", description: "Last day, inclusive, YYYY-MM-DD", required: false },
51
+ granularity: {
52
+ type: "string",
53
+ description: `${CHATGPT_ADS_GRANULARITIES.join("|")} (default none: one total per row)`,
54
+ required: false
55
+ },
56
+ segment: {
57
+ type: "string",
58
+ description: `Break rows down by one of ${CHATGPT_ADS_SEGMENTS.join("|")}`,
59
+ required: false
60
+ },
61
+ metrics: {
62
+ type: "string",
63
+ description: `CSV of ${CHATGPT_ADS_METRICS.join(",")} (default impressions,clicks,spend,ctr,cpc,conversions,cpa)`,
64
+ required: false
65
+ },
66
+ sort: { type: "string", description: "Metric to rank rows by, highest first", required: false },
67
+ limit: { type: "string", description: "Rows, 1-2000 (default 200)", required: false }
68
+ };
69
+ registerSchema({
70
+ command: "ads.chatgpt.insights",
71
+ description: "Performance of the connected ChatGPT Ads account: impressions, clicks, spend, CTR, CPC, CPM, conversions, CPA, attributed sales and ROAS, per account, campaign, ad group or ad, over a window, optionally per day and broken down by country, device, platform or product. Spend and costs are in the account currency; null means not reported, not zero.",
72
+ args
73
+ });
74
+ function insightsHints(report) {
75
+ const hints = [];
76
+ if (report.rows.length === 0) {
77
+ hints.push(
78
+ "No delivery in this window. Check `baker ads chatgpt campaigns` for serving issues before concluding the ads do not work."
79
+ );
80
+ }
81
+ if (report.truncated) {
82
+ hints.push("More rows matched than --limit allowed. Narrow the report or raise --limit (max 2000).");
83
+ }
84
+ hints.push(
85
+ "Conversions come from ChatGPT Ads' own pixel or Conversions API and take at least a day to appear; the most recent days are still filling in."
86
+ );
87
+ return hints;
88
+ }
89
+ function chatgptInsightsHints(report, request) {
90
+ const hints = insightsHints(report);
91
+ return request.segment ? hints : [...hints, syncedFirstHint("chatgpt", request.level)];
92
+ }
93
+ var insightsCommand = defineCommand({
94
+ meta: {
95
+ name: "insights",
96
+ description: `How a ChatGPT Ads account performs. Start here for "how are the ChatGPT campaigns doing".
97
+
98
+ Examples:
99
+ baker ads chatgpt insights # last 7 days, one row per campaign
100
+ baker ads chatgpt insights --days 30 --granularity daily --level account
101
+ baker ads chatgpt insights --campaign-id cmpn_123 --level ad --sort spend
102
+ baker ads chatgpt insights --segment country --metrics spend,clicks,conversions
103
+ baker ads chatgpt insights --since 2026-09-01 --until 2026-09-07 --metrics spend,order_created_roas`
104
+ },
105
+ args,
106
+ run: async ({ args: input }) => {
107
+ const parsed = chatgptAdsInsightsRequestSchema.safeParse(insightsRequestFromArgs(input));
108
+ if (!parsed.success) {
109
+ const message = parsed.error.issues[0]?.message ?? "Invalid report request";
110
+ writeJsonEnvelope({
111
+ ok: false,
112
+ error: {
113
+ code: "VALIDATION_ERROR",
114
+ message,
115
+ fix: { action: "retry_with_modified_query", explanation: message },
116
+ retryable: false
117
+ }
118
+ });
119
+ process.exit(1);
120
+ }
121
+ await runChatgptRead(
122
+ CHATGPT_ADS_REFERENCE.insights,
123
+ () => apiPost("/api/ads/chatgpt/insights", parsed.data),
124
+ (report) => chatgptInsightsHints(report, parsed.data)
125
+ );
126
+ }
127
+ });
128
+ export {
129
+ chatgptInsightsHints,
130
+ insightsCommand
131
+ };
132
+ //# sourceMappingURL=insights-UTCMSWSC.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/ads/chatgpt/insights.ts"],"sourcesContent":["import {\n CHATGPT_ADS_GRANULARITIES,\n CHATGPT_ADS_LEVELS,\n CHATGPT_ADS_METRICS,\n CHATGPT_ADS_SEGMENTS,\n type ChatgptAdsInsightsRequest,\n type ChatgptAdsInsightsResponse,\n chatgptAdsInsightsRequestSchema,\n} from \"@baker/api/ads-chatgpt\";\nimport { defineCommand } from \"citty\";\nimport { apiPost } from \"../../../client.ts\";\nimport { registerSchema } from \"../../../schemas.ts\";\nimport { writeJsonEnvelope } from \"../output.ts\";\nimport { syncedFirstHint } from \"../synced-first.ts\";\nimport { CHATGPT_ADS_REFERENCE, insightsRequestFromArgs, runChatgptRead } from \"./shared.ts\";\n\nconst args = {\n level: {\n type: \"string\",\n description: `What one row is: ${CHATGPT_ADS_LEVELS.join(\"|\")} (default campaign)`,\n required: false,\n },\n \"campaign-id\": { type: \"string\", description: \"Report on one campaign (cmpn_…)\", required: false },\n \"ad-group-id\": { type: \"string\", description: \"Report on one ad group (adgrp_…)\", required: false },\n \"ad-id\": { type: \"string\", description: \"Report on one ad (ad_…)\", required: false },\n days: {\n type: \"string\",\n description: \"Last N complete days, ending the account's yesterday (default 7)\",\n required: false,\n },\n since: {\n type: \"string\",\n description: \"First day, YYYY-MM-DD, account timezone (instead of --days)\",\n required: false,\n },\n until: { type: \"string\", description: \"Last day, inclusive, YYYY-MM-DD\", required: false },\n granularity: {\n type: \"string\",\n description: `${CHATGPT_ADS_GRANULARITIES.join(\"|\")} (default none: one total per row)`,\n required: false,\n },\n segment: {\n type: \"string\",\n description: `Break rows down by one of ${CHATGPT_ADS_SEGMENTS.join(\"|\")}`,\n required: false,\n },\n metrics: {\n type: \"string\",\n description: `CSV of ${CHATGPT_ADS_METRICS.join(\",\")} (default impressions,clicks,spend,ctr,cpc,conversions,cpa)`,\n required: false,\n },\n sort: { type: \"string\", description: \"Metric to rank rows by, highest first\", required: false },\n limit: { type: \"string\", description: \"Rows, 1-2000 (default 200)\", required: false },\n} as const;\n\nregisterSchema({\n command: \"ads.chatgpt.insights\",\n description:\n \"Performance of the connected ChatGPT Ads account: impressions, clicks, spend, CTR, CPC, CPM, conversions, CPA, attributed sales and ROAS, per account, campaign, ad group or ad, over a window, optionally per day and broken down by country, device, platform or product. Spend and costs are in the account currency; null means not reported, not zero.\",\n args,\n});\n\nfunction insightsHints(report: ChatgptAdsInsightsResponse): string[] {\n const hints: string[] = [];\n if (report.rows.length === 0) {\n hints.push(\n \"No delivery in this window. Check `baker ads chatgpt campaigns` for serving issues before concluding the ads do not work.\",\n );\n }\n if (report.truncated) {\n hints.push(\"More rows matched than --limit allowed. Narrow the report or raise --limit (max 2000).\");\n }\n hints.push(\n \"Conversions come from ChatGPT Ads' own pixel or Conversions API and take at least a day to appear; the most recent days are still filling in.\",\n );\n return hints;\n}\n\n/** Baker's synced copy holds ChatGPT rows, never their segments: a segmented read gets no synced-first hint. */\nexport function chatgptInsightsHints(report: ChatgptAdsInsightsResponse, request: ChatgptAdsInsightsRequest): string[] {\n const hints = insightsHints(report);\n return request.segment ? hints : [...hints, syncedFirstHint(\"chatgpt\", request.level)];\n}\n\nexport const insightsCommand = defineCommand({\n meta: {\n name: \"insights\",\n description: `How a ChatGPT Ads account performs. Start here for \"how are the ChatGPT campaigns doing\".\n\nExamples:\n baker ads chatgpt insights # last 7 days, one row per campaign\n baker ads chatgpt insights --days 30 --granularity daily --level account\n baker ads chatgpt insights --campaign-id cmpn_123 --level ad --sort spend\n baker ads chatgpt insights --segment country --metrics spend,clicks,conversions\n baker ads chatgpt insights --since 2026-09-01 --until 2026-09-07 --metrics spend,order_created_roas`,\n },\n args,\n run: async ({ args: input }) => {\n const parsed = chatgptAdsInsightsRequestSchema.safeParse(insightsRequestFromArgs(input));\n if (!parsed.success) {\n const message = parsed.error.issues[0]?.message ?? \"Invalid report request\";\n writeJsonEnvelope({\n ok: false,\n error: {\n code: \"VALIDATION_ERROR\",\n message,\n fix: { action: \"retry_with_modified_query\", explanation: message },\n retryable: false,\n },\n });\n process.exit(1);\n }\n await runChatgptRead(\n CHATGPT_ADS_REFERENCE.insights,\n () => apiPost<ChatgptAdsInsightsResponse>(\"/api/ads/chatgpt/insights\", parsed.data),\n (report) => chatgptInsightsHints(report, parsed.data),\n );\n },\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,SAAS,qBAAqB;AAO9B,IAAM,OAAO;AAAA,EACX,OAAO;AAAA,IACL,MAAM;AAAA,IACN,aAAa,oBAAoB,mBAAmB,KAAK,GAAG,CAAC;AAAA,IAC7D,UAAU;AAAA,EACZ;AAAA,EACA,eAAe,EAAE,MAAM,UAAU,aAAa,wCAAmC,UAAU,MAAM;AAAA,EACjG,eAAe,EAAE,MAAM,UAAU,aAAa,yCAAoC,UAAU,MAAM;AAAA,EAClG,SAAS,EAAE,MAAM,UAAU,aAAa,gCAA2B,UAAU,MAAM;AAAA,EACnF,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACZ;AAAA,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,aAAa;AAAA,IACb,UAAU;AAAA,EACZ;AAAA,EACA,OAAO,EAAE,MAAM,UAAU,aAAa,mCAAmC,UAAU,MAAM;AAAA,EACzF,aAAa;AAAA,IACX,MAAM;AAAA,IACN,aAAa,GAAG,0BAA0B,KAAK,GAAG,CAAC;AAAA,IACnD,UAAU;AAAA,EACZ;AAAA,EACA,SAAS;AAAA,IACP,MAAM;AAAA,IACN,aAAa,6BAA6B,qBAAqB,KAAK,GAAG,CAAC;AAAA,IACxE,UAAU;AAAA,EACZ;AAAA,EACA,SAAS;AAAA,IACP,MAAM;AAAA,IACN,aAAa,UAAU,oBAAoB,KAAK,GAAG,CAAC;AAAA,IACpD,UAAU;AAAA,EACZ;AAAA,EACA,MAAM,EAAE,MAAM,UAAU,aAAa,yCAAyC,UAAU,MAAM;AAAA,EAC9F,OAAO,EAAE,MAAM,UAAU,aAAa,8BAA8B,UAAU,MAAM;AACtF;AAEA,eAAe;AAAA,EACb,SAAS;AAAA,EACT,aACE;AAAA,EACF;AACF,CAAC;AAED,SAAS,cAAc,QAA8C;AACnE,QAAM,QAAkB,CAAC;AACzB,MAAI,OAAO,KAAK,WAAW,GAAG;AAC5B,UAAM;AAAA,MACJ;AAAA,IACF;AAAA,EACF;AACA,MAAI,OAAO,WAAW;AACpB,UAAM,KAAK,wFAAwF;AAAA,EACrG;AACA,QAAM;AAAA,IACJ;AAAA,EACF;AACA,SAAO;AACT;AAGO,SAAS,qBAAqB,QAAoC,SAA8C;AACrH,QAAM,QAAQ,cAAc,MAAM;AAClC,SAAO,QAAQ,UAAU,QAAQ,CAAC,GAAG,OAAO,gBAAgB,WAAW,QAAQ,KAAK,CAAC;AACvF;AAEO,IAAM,kBAAkB,cAAc;AAAA,EAC3C,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQf;AAAA,EACA;AAAA,EACA,KAAK,OAAO,EAAE,MAAM,MAAM,MAAM;AAC9B,UAAM,SAAS,gCAAgC,UAAU,wBAAwB,KAAK,CAAC;AACvF,QAAI,CAAC,OAAO,SAAS;AACnB,YAAM,UAAU,OAAO,MAAM,OAAO,CAAC,GAAG,WAAW;AACnD,wBAAkB;AAAA,QAChB,IAAI;AAAA,QACJ,OAAO;AAAA,UACL,MAAM;AAAA,UACN;AAAA,UACA,KAAK,EAAE,QAAQ,6BAA6B,aAAa,QAAQ;AAAA,UACjE,WAAW;AAAA,QACb;AAAA,MACF,CAAC;AACD,cAAQ,KAAK,CAAC;AAAA,IAChB;AACA,UAAM;AAAA,MACJ,sBAAsB;AAAA,MACtB,MAAM,QAAoC,6BAA6B,OAAO,IAAI;AAAA,MAClF,CAAC,WAAW,qBAAqB,QAAQ,OAAO,IAAI;AAAA,IACtD;AAAA,EACF;AACF,CAAC;","names":[]}