@koda-sl/baker-cli 0.446.0-dev.c97e2d09a → 0.446.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (515) hide show
  1. package/README.md +4 -4
  2. package/dist/{account-4H7QVBRK.js → account-F6MHQ64I.js} +3 -3
  3. package/dist/{account-JYAHNWTU.js → account-WOFKIP7M.js} +5 -5
  4. package/dist/{account-writes-AK42HGRM.js → account-writes-ISE4U2FQ.js} +3 -3
  5. package/dist/{accounts-YQMXWDQL.js → accounts-EPO4MPRO.js} +4 -4
  6. package/dist/{accounts-IOXUP35Y.js → accounts-NEDQBZ3Y.js} +6 -6
  7. package/dist/{actions-EGCRZ3ZL.js → actions-2KKGW467.js} +18 -18
  8. package/dist/{ad-group-writes-QQS4223F.js → ad-group-writes-UU5NNKSO.js} +3 -3
  9. package/dist/{ad-groups-WGPDPUI2.js → ad-groups-CGFXZNIA.js} +7 -7
  10. package/dist/{ad-writes-XE2IE4DS.js → ad-writes-NALDYWOR.js} +3 -3
  11. package/dist/{add-ID4XAPM5.js → add-WF3IIZK5.js} +4 -4
  12. package/dist/{add-ZFWSN3HT.js → add-X7KDHYYR.js} +3 -3
  13. package/dist/{ads-BCOSQALY.js → ads-PV7GZXPR.js} +8 -8
  14. package/dist/{ads-GL2H5TJE.js → ads-QJHOR64L.js} +5 -5
  15. package/dist/{advertisers-WSNHNCBQ.js → advertisers-65GATZYT.js} +12 -8
  16. package/dist/advertisers-65GATZYT.js.map +1 -0
  17. package/dist/{analytics-TTBGPXHL.js → analytics-HUGEF72Q.js} +4 -4
  18. package/dist/{analytics-FDEH3HFH.js → analytics-R7HHYZOS.js} +7 -7
  19. package/dist/{animate-3Z7HXOLE.js → animate-37ZVC3Q5.js} +4 -4
  20. package/dist/{assign-3ZPQAQWD.js → assign-JG5R5I2W.js} +4 -4
  21. package/dist/{audience-size-LRAGY3F5.js → audience-size-RWDIUBVW.js} +4 -4
  22. package/dist/{audiences-TGD5US2M.js → audiences-VEKGLWBG.js} +3 -3
  23. package/dist/{audit-FQARJWOU.js → audit-CMMHVEX7.js} +4 -4
  24. package/dist/{autocomplete-6PYFCOMX.js → autocomplete-NXMSIXN6.js} +10 -6
  25. package/dist/{autocomplete-6PYFCOMX.js.map → autocomplete-NXMSIXN6.js.map} +1 -1
  26. package/dist/{avatars-JZSFFUC5.js → avatars-EONPKDVS.js} +4 -4
  27. package/dist/{bid-pricing-4653K7RN.js → bid-pricing-WIHX2F4R.js} +4 -4
  28. package/dist/{brand-PLQUPMXV.js → brand-AT3M73IA.js} +2 -2
  29. package/dist/{brief-UVMPQB6T.js → brief-UFZ5TTXN.js} +18 -18
  30. package/dist/{campaign-groups-UQ6EZQMA.js → campaign-groups-MKM3W546.js} +9 -9
  31. package/dist/{campaign-writes-UK3GMOQK.js → campaign-writes-OYEB5TTZ.js} +4 -4
  32. package/dist/{campaign-writes-SXLZFYF6.js → campaign-writes-SX52CJYW.js} +3 -3
  33. package/dist/{campaigns-THNNAQNO.js → campaigns-36ROSINK.js} +12 -12
  34. package/dist/{campaigns-5JVA6FCV.js → campaigns-UEOUJNNT.js} +5 -5
  35. package/dist/{campaigns-YS3OGQXO.js → campaigns-X3DPCCSN.js} +7 -7
  36. package/dist/{canvas-XT6KSCJH.js → canvas-62BEM3A2.js} +14 -14
  37. package/dist/{capabilities-ELXIQ4R7.js → capabilities-JYHBLMHI.js} +4 -4
  38. package/dist/{catalog-IQEQ5TGQ.js → catalog-E62VZ4QC.js} +6 -6
  39. package/dist/{catalogs-BRXEDE56.js → catalogs-G3YEVG6S.js} +3 -3
  40. package/dist/{changes-6QBJMGJC.js → changes-TP7ZZHB3.js} +4 -4
  41. package/dist/{chatgpt-7W75X3ER.js → chatgpt-QNUN63YS.js} +13 -13
  42. package/dist/{chats-V3KB5FCU.js → chats-VUNGL4NF.js} +4 -4
  43. package/dist/{chunk-DXB5YV6S.js → chunk-2GK33EJV.js} +2 -2
  44. package/dist/{chunk-OC5IJSIW.js → chunk-2LY4RW5O.js} +3 -3
  45. package/dist/{chunk-7J6EHOH6.js → chunk-35XWJEWH.js} +2 -2
  46. package/dist/{chunk-PIWMNKWI.js → chunk-3CWL2LY4.js} +45 -3
  47. package/dist/{chunk-PIWMNKWI.js.map → chunk-3CWL2LY4.js.map} +1 -1
  48. package/dist/{chunk-633BRRZO.js → chunk-4NBVGARW.js} +2 -2
  49. package/dist/{chunk-7RUYWECB.js → chunk-5AHNAMHK.js} +6 -6
  50. package/dist/{chunk-3U3RUPKR.js → chunk-6DB2B3GF.js} +2 -2
  51. package/dist/{chunk-OWK5WYFZ.js → chunk-6XVYM47A.js} +2 -2
  52. package/dist/{chunk-NEZLPWD4.js → chunk-6ZJ6IOG6.js} +7 -7
  53. package/dist/{chunk-CLMM6P6B.js → chunk-76KTC7RD.js} +2 -2
  54. package/dist/{chunk-AST5XJKZ.js → chunk-7SDFKGQ4.js} +2 -2
  55. package/dist/{chunk-ZN63N3EP.js → chunk-7TP3FPCF.js} +3 -3
  56. package/dist/{chunk-X5TFU7ET.js → chunk-ANCSKUWI.js} +2 -2
  57. package/dist/{chunk-HMEFD2CG.js → chunk-AQYRPO4R.js} +5 -5
  58. package/dist/{chunk-ML3ZIQ7K.js → chunk-BA7FDXQC.js} +2 -2
  59. package/dist/{chunk-MJABIGKT.js → chunk-BSC33FLJ.js} +2 -2
  60. package/dist/{chunk-QJE6ZYGI.js → chunk-CWX4PPOK.js} +2 -2
  61. package/dist/{chunk-7H2VLDYU.js → chunk-CZOSF52Z.js} +7 -7
  62. package/dist/{chunk-7LT6UP2W.js → chunk-DKGTQSLR.js} +2 -2
  63. package/dist/{chunk-DQPTUBCB.js → chunk-E4MDJBLO.js} +2 -2
  64. package/dist/{chunk-676WE6CY.js → chunk-EH4C4CZK.js} +2 -2
  65. package/dist/{chunk-XZPREXCE.js → chunk-G4IHT42K.js} +3 -3
  66. package/dist/{chunk-ENUZU5LQ.js → chunk-G7UTTEBS.js} +2 -2
  67. package/dist/{chunk-4SJDDGPV.js → chunk-GTRZUWT2.js} +2 -2
  68. package/dist/{chunk-KWAOTV7F.js → chunk-GX6VAHY7.js} +2 -2
  69. package/dist/{chunk-XG3XCHN6.js → chunk-HA5D6US2.js} +2 -2
  70. package/dist/{chunk-ZNBDKK4Y.js → chunk-HWB5DN32.js} +2 -2
  71. package/dist/{chunk-YY6CIVRY.js → chunk-HZ5DR5MX.js} +3 -3
  72. package/dist/{chunk-2YJNBTXE.js → chunk-IM52NHGL.js} +5 -5
  73. package/dist/{chunk-FTWJFDIN.js → chunk-KLBTXETO.js} +169 -169
  74. package/dist/chunk-KLBTXETO.js.map +1 -0
  75. package/dist/{chunk-OBDAYP2P.js → chunk-KY4MPR6R.js} +4 -4
  76. package/dist/chunk-KY4MPR6R.js.map +1 -0
  77. package/dist/{chunk-2SCPDSFN.js → chunk-LIQ4SQ2T.js} +2 -2
  78. package/dist/{chunk-ZEYFPIKH.js → chunk-MADAAZZV.js} +2 -2
  79. package/dist/{chunk-RRUJQVWA.js → chunk-MF5WL2MP.js} +4 -4
  80. package/dist/{chunk-HXTGYOQC.js → chunk-MO7XF4HR.js} +3 -3
  81. package/dist/{chunk-ASVKZQUU.js → chunk-NDXBU22S.js} +67 -2
  82. package/dist/{chunk-ASVKZQUU.js.map → chunk-NDXBU22S.js.map} +1 -1
  83. package/dist/{chunk-XML7AJM3.js → chunk-NE4F3FHN.js} +1 -1
  84. package/dist/chunk-NE4F3FHN.js.map +1 -0
  85. package/dist/{chunk-GT54GEDT.js → chunk-NXYNWIRN.js} +3 -3
  86. package/dist/{chunk-DIY6QR3E.js → chunk-OTDS56OQ.js} +4 -4
  87. package/dist/{chunk-S42CGOGT.js → chunk-PDTB5EX6.js} +2 -2
  88. package/dist/{chunk-P3WRQED4.js → chunk-QKJK2K7U.js} +3 -3
  89. package/dist/{chunk-HYCIBVDW.js → chunk-RWPQW73R.js} +2 -2
  90. package/dist/{chunk-65IJ6BDS.js → chunk-SB3GZFCV.js} +2 -2
  91. package/dist/{chunk-XL3UIAMJ.js → chunk-T3BDNJIX.js} +2 -2
  92. package/dist/{chunk-EIP4PYCL.js → chunk-TIOQ7ZFQ.js} +2 -2
  93. package/dist/{chunk-2SMGPLIW.js → chunk-UC6BWM5J.js} +3 -3
  94. package/dist/{chunk-W33XBKLZ.js → chunk-VAISMQQB.js} +3 -3
  95. package/dist/{chunk-GZVZ7CQI.js → chunk-VDHQJ6HD.js} +2 -2
  96. package/dist/{chunk-JSN6LLHX.js → chunk-VH4PYHRR.js} +18 -18
  97. package/dist/{chunk-TBEUMOEL.js → chunk-WNFIJAUO.js} +5 -2
  98. package/dist/chunk-WNFIJAUO.js.map +1 -0
  99. package/dist/{chunk-EVYXTT7V.js → chunk-XCM6XWOB.js} +2 -2
  100. package/dist/{chunk-EO7NHHEZ.js → chunk-YBP7O5P4.js} +2 -2
  101. package/dist/{chunk-B3AKIYBA.js → chunk-YC2TQ3VC.js} +4 -4
  102. package/dist/{chunk-EZUG6WE2.js → chunk-YDJMV7BC.js} +2 -2
  103. package/dist/{claim-Y5ZYM3Y3.js → claim-MIYXWP7Z.js} +4 -4
  104. package/dist/cli.js +29 -29
  105. package/dist/{companies-2R4QXPSF.js → companies-WXZRG2PP.js} +4 -4
  106. package/dist/{complete-SG2VVAGA.js → complete-SY4FSNQS.js} +4 -4
  107. package/dist/{connect-A3SJQKSE.js → connect-OKTOFEHL.js} +7 -7
  108. package/dist/{conversation-5WIHZLPU.js → conversation-KRHT4MW5.js} +4 -4
  109. package/dist/{conversion-report-XQBJ6LG4.js → conversion-report-N4HANYOB.js} +2 -2
  110. package/dist/{conversion-upload-command-JULHGVIR.js → conversion-upload-command-TZTHU2CD.js} +4 -4
  111. package/dist/{conversion-writes-UBCVXP2E.js → conversion-writes-LW4HQKK5.js} +3 -3
  112. package/dist/{conversions-7PGKDZVN.js → conversions-JLB6LRVG.js} +8 -8
  113. package/dist/{conversions-D236RTUK.js → conversions-TS723AZV.js} +5 -5
  114. package/dist/{countries-FYHM3IMJ.js → countries-ESAKTQAE.js} +2 -2
  115. package/dist/{create-XOLEMSB2.js → create-62R2LGTW.js} +4 -4
  116. package/dist/{create-5PKVRJUD.js → create-BSFTUBGS.js} +4 -4
  117. package/dist/{create-EYSGANKH.js → create-LAENUBVH.js} +4 -4
  118. package/dist/{create-UVVII4GB.js → create-YGRXSFDV.js} +3 -3
  119. package/dist/{creatives-OB77VU5H.js → creatives-L6VMTWP2.js} +9 -9
  120. package/dist/{creatives-4DRALRUE.js → creatives-ZPLPNZVQ.js} +10 -10
  121. package/dist/{credentials-IVV3T4JD.js → credentials-Z5LG2UB3.js} +17 -17
  122. package/dist/credentials-Z5LG2UB3.js.map +1 -0
  123. package/dist/{critique-MZBGOV3K.js → critique-I7W3WKN4.js} +4 -4
  124. package/dist/{critique-NM6GK2KW.js → critique-Q6VP74PK.js} +10 -10
  125. package/dist/{crm-IYAWE47A.js → crm-2F43ZB4O.js} +5 -5
  126. package/dist/{crm-5GCGLHKD.js → crm-KYBPKLGK.js} +5 -5
  127. package/dist/{currency-DJDVIR3C.js → currency-XCGKQ7FE.js} +4 -4
  128. package/dist/{customers-L3D3YCTM.js → customers-6F4CL3XJ.js} +8 -8
  129. package/dist/{delete-WMT2GDDN.js → delete-7SFCWRV6.js} +4 -4
  130. package/dist/{delete-E2IGHOBY.js → delete-EXAW3NPT.js} +3 -3
  131. package/dist/{delete-JYPEYYKM.js → delete-V344ME7V.js} +4 -4
  132. package/dist/{demographics-VTOJJK5E.js → demographics-G3JX46UZ.js} +4 -4
  133. package/dist/{discard-62REOO2E.js → discard-H3CLQZXB.js} +4 -4
  134. package/dist/{discover-M3ZKKFEL.js → discover-BJPZNXUQ.js} +4 -4
  135. package/dist/{domain-7ACHLP2Y.js → domain-KG4QWDIS.js} +4 -4
  136. package/dist/{draft-ZZQ4GGIG.js → draft-5FE4LX3C.js} +4 -4
  137. package/dist/{draft-U6CT6LCC.js → draft-BV2QRPZ4.js} +4 -4
  138. package/dist/{draft-FPD6BOUC.js → draft-GYQVYT26.js} +5 -5
  139. package/dist/{draft-MAGMH5FJ.js → draft-JFG3FCIH.js} +4 -4
  140. package/dist/{draft-MNFJ4G3C.js → draft-THPZFASM.js} +3 -3
  141. package/dist/engine/index.js +5 -5
  142. package/dist/{facets-DZCAWR32.js → facets-SEYNYQ3G.js} +4 -4
  143. package/dist/{feedback-X7RG7PRM.js → feedback-7BB3BZ54.js} +3 -3
  144. package/dist/feedback-7BB3BZ54.js.map +1 -0
  145. package/dist/{feedback-record-JFLBXQWA.js → feedback-record-UCXKGQNX.js} +13 -13
  146. package/dist/feedback-record-UCXKGQNX.js.map +1 -0
  147. package/dist/{fetch-UTTJAOLC.js → fetch-ZFPJ7DEZ.js} +8 -3
  148. package/dist/{fetch-UTTJAOLC.js.map → fetch-ZFPJ7DEZ.js.map} +1 -1
  149. package/dist/{fit-KXHYKIA4.js → fit-275H7ETA.js} +4 -4
  150. package/dist/{flows-Q454EFMN.js → flows-I3MWA5EX.js} +11 -11
  151. package/dist/{fonts-YWGD2B4N.js → fonts-KHEHZFW5.js} +6 -6
  152. package/dist/{forecast-TQNRU5ZY.js → forecast-O5DQVRVJ.js} +4 -4
  153. package/dist/{funnel-YVSYSLT4.js → funnel-EM26VOTO.js} +5 -5
  154. package/dist/{generate-DMQUS665.js → generate-6DDI42Y2.js} +3 -3
  155. package/dist/{get-756GD6EF.js → get-DVEBT257.js} +4 -4
  156. package/dist/{get-7PZP4HJ3.js → get-FF64VI2N.js} +4 -4
  157. package/dist/{google-KIBLORXX.js → google-35GDU3G3.js} +18 -18
  158. package/dist/{google-KIBLORXX.js.map → google-35GDU3G3.js.map} +1 -1
  159. package/dist/google-ads-X2VRX5C7.js +195 -0
  160. package/dist/google-ads-X2VRX5C7.js.map +1 -0
  161. package/dist/{history-Q3QCT64S.js → history-DBIEYQHY.js} +3 -3
  162. package/dist/{history-MECEOLRV.js → history-YZP47WGC.js} +4 -4
  163. package/dist/{hubspot-KF5J4AEB.js → hubspot-SVKHMSYV.js} +8 -8
  164. package/dist/{ideas-AFJ5U7PK.js → ideas-3J43F3CT.js} +3 -3
  165. package/dist/{images-P4JQZJZW.js → images-U2WM3PCF.js} +4 -4
  166. package/dist/{ingest-7LRGIUIK.js → ingest-RUIIJIVJ.js} +3 -3
  167. package/dist/{ingest-OLPYRECF.js → ingest-UL7T6FOP.js} +4 -4
  168. package/dist/{insights-LNAXV2CG.js → insights-ZIU6FJMS.js} +2 -2
  169. package/dist/{inspect-ETUZZCVT.js → inspect-LXF6RITM.js} +4 -4
  170. package/dist/{inspiration-I4MMKAWA.js → inspiration-P265QJ2H.js} +1 -1
  171. package/dist/{intent-ICKFJRT2.js → intent-E3UIVZBN.js} +5 -5
  172. package/dist/{keyword-gap-NGPH32FN.js → keyword-gap-BG6M665A.js} +5 -5
  173. package/dist/{keyword-metrics-6K2LQZVQ.js → keyword-metrics-I5SJB3YA.js} +7 -7
  174. package/dist/{keywords-for-site-RH47P4GJ.js → keywords-for-site-EFE7BNZW.js} +10 -6
  175. package/dist/{keywords-for-site-RH47P4GJ.js.map → keywords-for-site-EFE7BNZW.js.map} +1 -1
  176. package/dist/{landing-NXZYGBVA.js → landing-FUJFUM2Y.js} +3 -3
  177. package/dist/{languages-JDYL2N5F.js → languages-HORKPDNH.js} +4 -4
  178. package/dist/{languages-JMVNOHMG.js → languages-JSGWCC7Z.js} +2 -2
  179. package/dist/{leads-J5Z3K72L.js → leads-FMO4XNEY.js} +4 -4
  180. package/dist/{learn-YK2NNAXT.js → learn-ZPOR3ZCH.js} +11 -11
  181. package/dist/{lighthouse-NQBUCHTW.js → lighthouse-6ZC45E53.js} +2 -2
  182. package/dist/{line-item-writes-OQKDQBRR.js → line-item-writes-X4U2P5AW.js} +4 -4
  183. package/dist/{line-items-N32SUQW2.js → line-items-EYTIBSRJ.js} +5 -5
  184. package/dist/{link-YOUYN4HW.js → link-ICD4SUXM.js} +4 -4
  185. package/dist/{linkedin-UZX3LTGS.js → linkedin-PVMW3DHM.js} +27 -27
  186. package/dist/{list-NEH7CXA4.js → list-DVTVZKUK.js} +4 -4
  187. package/dist/{list-5XOP7RXP.js → list-HCSVD3XC.js} +4 -4
  188. package/dist/{list-CXB5L7W3.js → list-T5STBDT2.js} +3 -3
  189. package/dist/{locations-2NKBJKBT.js → locations-74TPQWAT.js} +2 -2
  190. package/dist/{locations-S4U6IJIS.js → locations-J4G5RNPH.js} +4 -4
  191. package/dist/{log-Y22VMQMW.js → log-QDMIIM6F.js} +4 -4
  192. package/dist/{make-AYTOHWHD.js → make-FSXE5QR4.js} +18 -18
  193. package/dist/{map-62RLXP7R.js → map-B4M6M7LK.js} +5 -5
  194. package/dist/{mcp-CNDPFOWE.js → mcp-XYTDKV7V.js} +3 -3
  195. package/dist/{media-sources-KIM7FTIH.js → media-sources-UTS2IIJA.js} +2 -2
  196. package/dist/{members-I5JNM2PJ.js → members-7PBJNZL3.js} +4 -4
  197. package/dist/{metrics-AY4RP54F.js → metrics-SQDJ5NQO.js} +4 -4
  198. package/dist/{models-5NTC7A5G.js → models-6T2XV2KB.js} +2 -2
  199. package/dist/{normalize-YALLU2FS.js → normalize-55FXLIBJ.js} +4 -4
  200. package/dist/{options-OZGAYIXG.js → options-JVNCBJWI.js} +7 -7
  201. package/dist/{performance-FYV43RZU.js → performance-GMGOAOBP.js} +5 -5
  202. package/dist/{pixels-TZPF746S.js → pixels-45A55MOP.js} +3 -3
  203. package/dist/{promoted-tweet-writes-DV6W6BRF.js → promoted-tweet-writes-SRWSCBFQ.js} +4 -4
  204. package/dist/{promoted-tweets-KD4755XT.js → promoted-tweets-SJCHX5YN.js} +3 -3
  205. package/dist/{publish-A6C6AIDN.js → publish-TXXVHIFW.js} +4 -4
  206. package/dist/{query-CPZZNMDY.js → query-IEZRY6HV.js} +4 -4
  207. package/dist/{reddit-BRHSTRV3.js → reddit-ZWFPRYXL.js} +6 -6
  208. package/dist/{refresh-MDM2AGBY.js → refresh-QGI6ZCEC.js} +3 -3
  209. package/dist/{release-HKAOMV22.js → release-UP3XY5HE.js} +4 -4
  210. package/dist/{relevant-pages-MTMFMBPD.js → relevant-pages-OWMNUCP7.js} +5 -5
  211. package/dist/{remove-JDWMPK2C.js → remove-QP4GTVZZ.js} +3 -3
  212. package/dist/{reopen-3X47UVTN.js → reopen-2UN35A4J.js} +4 -4
  213. package/dist/{rerun-SMGRCAVF.js → rerun-RTW2V46W.js} +19 -19
  214. package/dist/{research-BLHRRMIJ.js → research-KGUQ6R2C.js} +18 -15
  215. package/dist/research-KGUQ6R2C.js.map +1 -0
  216. package/dist/{research-L2R3IXZL.js → research-VVY2PPGR.js} +3 -3
  217. package/dist/{reset-RC25CNM5.js → reset-Q6674O56.js} +3 -3
  218. package/dist/{reset-MUR2L6KX.js → reset-TODGSHQM.js} +3 -3
  219. package/dist/{resolve-GYFMTEKE.js → resolve-VDSEZ3S4.js} +4 -4
  220. package/dist/{retry-WRJ3G5X2.js → retry-BVA5AHZV.js} +3 -3
  221. package/dist/{retry-BZIV5J4F.js → retry-ZWTP2O7P.js} +3 -3
  222. package/dist/{run-6JPWF5S6.js → run-5ZAQYF6U.js} +19 -19
  223. package/dist/{run-L5J2JKMZ.js → run-SLKJGAX2.js} +4 -4
  224. package/dist/{scaffold-ad-YKS6BZ47.js → scaffold-ad-LGWOC4QN.js} +17 -17
  225. package/dist/{scaffold-static-ad-EPWJHAYS.js → scaffold-static-ad-2AXCMDOV.js} +26 -26
  226. package/dist/{scaffold-video-LKLEA4TM.js → scaffold-video-JNHKA3V4.js} +15 -15
  227. package/dist/{schedule-B3QDOMSR.js → schedule-3EV5MRQK.js} +3 -3
  228. package/dist/{scheduled-agents-OKXW6GYL.js → scheduled-agents-B6R4ZPBZ.js} +11 -11
  229. package/dist/{schema-UW772MB2.js → schema-3WYVJU6M.js} +5 -5
  230. package/dist/{search-36WKJO5Z.js → search-WW34SEJH.js} +3 -3
  231. package/dist/{select-JJTZNNBZ.js → select-Q2UE766M.js} +12 -12
  232. package/dist/{set-prompt-626I74ZW.js → set-prompt-EU3BWT76.js} +11 -11
  233. package/dist/{setup-links-CZ56WG7K.js → setup-links-JXM25FLA.js} +4 -4
  234. package/dist/{site-YGY6IGLQ.js → site-P64YTS4E.js} +5 -5
  235. package/dist/{sources-DPE7HS2L.js → sources-O3AL6555.js} +6 -6
  236. package/dist/{sources-LFKRFJ6E.js → sources-Z3CHGFBK.js} +7 -7
  237. package/dist/{stale-HZB4L5VZ.js → stale-7EUGR4UV.js} +11 -11
  238. package/dist/{status-TGMY37OX.js → status-ITDPDRWW.js} +4 -4
  239. package/dist/{studio-HUEBE6DS.js → studio-TTA3FLL3.js} +4 -4
  240. package/dist/{sync-GY3YWXZ4.js → sync-4UKESGFD.js} +3 -3
  241. package/dist/{sync-definition-BREENUVW.js → sync-definition-XVUMT2SL.js} +14 -14
  242. package/dist/{tag-manager-HREEYGVM.js → tag-manager-DYZUOIAS.js} +1 -1
  243. package/dist/{tags-OEQA35YM.js → tags-5GXCLODL.js} +4 -4
  244. package/dist/{tags-B6FTBKE7.js → tags-F5EDCKEC.js} +4 -4
  245. package/dist/{tags-MBGOC3C5.js → tags-IV2GHTNP.js} +4 -4
  246. package/dist/{tags-BOXRDIP2.js → tags-Q2KB6JPG.js} +3 -3
  247. package/dist/{tags-KDCOIXY5.js → tags-QZHYY36N.js} +4 -4
  248. package/dist/{targeting-criteria-OSIGTYIK.js → targeting-criteria-KS6C26QY.js} +3 -3
  249. package/dist/{targets-EZDJE2BR.js → targets-7ZBECTUB.js} +4 -4
  250. package/dist/{templates-43CM65YU.js → templates-PP2TX7JK.js} +4 -4
  251. package/dist/{testimonials-TGSG33XN.js → testimonials-URLEX7DN.js} +6 -6
  252. package/dist/{top-companies-AU2Y2JBL.js → top-companies-OVIFLDDF.js} +4 -4
  253. package/dist/{translate-UAQN3UP6.js → translate-3NVI2VVS.js} +16 -16
  254. package/dist/{triggers-KANOVASP.js → triggers-RQXRAA3W.js} +4 -4
  255. package/dist/{unlink-3O34M3RC.js → unlink-GTM746RO.js} +4 -4
  256. package/dist/{unstage-IU3X67HQ.js → unstage-MTG275O5.js} +4 -4
  257. package/dist/{update-3T2GI5UT.js → update-7HCTMDA7.js} +4 -4
  258. package/dist/{update-2MSRC7SF.js → update-TRJ23KCP.js} +4 -4
  259. package/dist/{update-4AKUKIHY.js → update-V477V3FY.js} +3 -3
  260. package/dist/{update-L575JJ26.js → update-YYVUISVF.js} +4 -4
  261. package/dist/{upload-YGKEXFZX.js → upload-J4ULHPM6.js} +4 -4
  262. package/dist/{url-options-QEWKRKZ3.js → url-options-GGXAL3J4.js} +4 -4
  263. package/dist/{url-params-JO6DMUNT.js → url-params-SZZEQHXT.js} +4 -4
  264. package/dist/{validate-C2AJIWOF.js → validate-6IN3BALB.js} +12 -12
  265. package/dist/{videos-73IKG7QH.js → videos-5HQMNQ7O.js} +5 -5
  266. package/dist/{viewer-check-VN2JK2LW.js → viewer-check-5TJ7UGMV.js} +4 -4
  267. package/dist/{web-WUGLSULO.js → web-OXN6T3Y4.js} +8 -3
  268. package/dist/{web-WUGLSULO.js.map → web-OXN6T3Y4.js.map} +1 -1
  269. package/dist/{winning-ads-UCDDPWFM.js → winning-ads-B44NZIRO.js} +3 -3
  270. package/dist/{write-commands-WBBS3C5L.js → write-commands-PFOR7EBJ.js} +5 -5
  271. package/dist/{x-VOG2EPI6.js → x-TWY26IUO.js} +6 -6
  272. package/package.json +1 -1
  273. package/dist/advertisers-WSNHNCBQ.js.map +0 -1
  274. package/dist/chunk-FTWJFDIN.js.map +0 -1
  275. package/dist/chunk-OBDAYP2P.js.map +0 -1
  276. package/dist/chunk-TBEUMOEL.js.map +0 -1
  277. package/dist/chunk-XML7AJM3.js.map +0 -1
  278. package/dist/credentials-IVV3T4JD.js.map +0 -1
  279. package/dist/feedback-X7RG7PRM.js.map +0 -1
  280. package/dist/feedback-record-JFLBXQWA.js.map +0 -1
  281. package/dist/research-BLHRRMIJ.js.map +0 -1
  282. /package/dist/{account-4H7QVBRK.js.map → account-F6MHQ64I.js.map} +0 -0
  283. /package/dist/{account-JYAHNWTU.js.map → account-WOFKIP7M.js.map} +0 -0
  284. /package/dist/{account-writes-AK42HGRM.js.map → account-writes-ISE4U2FQ.js.map} +0 -0
  285. /package/dist/{accounts-YQMXWDQL.js.map → accounts-EPO4MPRO.js.map} +0 -0
  286. /package/dist/{accounts-IOXUP35Y.js.map → accounts-NEDQBZ3Y.js.map} +0 -0
  287. /package/dist/{actions-EGCRZ3ZL.js.map → actions-2KKGW467.js.map} +0 -0
  288. /package/dist/{ad-group-writes-QQS4223F.js.map → ad-group-writes-UU5NNKSO.js.map} +0 -0
  289. /package/dist/{ad-groups-WGPDPUI2.js.map → ad-groups-CGFXZNIA.js.map} +0 -0
  290. /package/dist/{ad-writes-XE2IE4DS.js.map → ad-writes-NALDYWOR.js.map} +0 -0
  291. /package/dist/{add-ID4XAPM5.js.map → add-WF3IIZK5.js.map} +0 -0
  292. /package/dist/{add-ZFWSN3HT.js.map → add-X7KDHYYR.js.map} +0 -0
  293. /package/dist/{ads-BCOSQALY.js.map → ads-PV7GZXPR.js.map} +0 -0
  294. /package/dist/{ads-GL2H5TJE.js.map → ads-QJHOR64L.js.map} +0 -0
  295. /package/dist/{analytics-TTBGPXHL.js.map → analytics-HUGEF72Q.js.map} +0 -0
  296. /package/dist/{analytics-FDEH3HFH.js.map → analytics-R7HHYZOS.js.map} +0 -0
  297. /package/dist/{animate-3Z7HXOLE.js.map → animate-37ZVC3Q5.js.map} +0 -0
  298. /package/dist/{assign-3ZPQAQWD.js.map → assign-JG5R5I2W.js.map} +0 -0
  299. /package/dist/{audience-size-LRAGY3F5.js.map → audience-size-RWDIUBVW.js.map} +0 -0
  300. /package/dist/{audiences-TGD5US2M.js.map → audiences-VEKGLWBG.js.map} +0 -0
  301. /package/dist/{audit-FQARJWOU.js.map → audit-CMMHVEX7.js.map} +0 -0
  302. /package/dist/{avatars-JZSFFUC5.js.map → avatars-EONPKDVS.js.map} +0 -0
  303. /package/dist/{bid-pricing-4653K7RN.js.map → bid-pricing-WIHX2F4R.js.map} +0 -0
  304. /package/dist/{brand-PLQUPMXV.js.map → brand-AT3M73IA.js.map} +0 -0
  305. /package/dist/{brief-UVMPQB6T.js.map → brief-UFZ5TTXN.js.map} +0 -0
  306. /package/dist/{campaign-groups-UQ6EZQMA.js.map → campaign-groups-MKM3W546.js.map} +0 -0
  307. /package/dist/{campaign-writes-UK3GMOQK.js.map → campaign-writes-OYEB5TTZ.js.map} +0 -0
  308. /package/dist/{campaign-writes-SXLZFYF6.js.map → campaign-writes-SX52CJYW.js.map} +0 -0
  309. /package/dist/{campaigns-THNNAQNO.js.map → campaigns-36ROSINK.js.map} +0 -0
  310. /package/dist/{campaigns-5JVA6FCV.js.map → campaigns-UEOUJNNT.js.map} +0 -0
  311. /package/dist/{campaigns-YS3OGQXO.js.map → campaigns-X3DPCCSN.js.map} +0 -0
  312. /package/dist/{canvas-XT6KSCJH.js.map → canvas-62BEM3A2.js.map} +0 -0
  313. /package/dist/{capabilities-ELXIQ4R7.js.map → capabilities-JYHBLMHI.js.map} +0 -0
  314. /package/dist/{catalog-IQEQ5TGQ.js.map → catalog-E62VZ4QC.js.map} +0 -0
  315. /package/dist/{catalogs-BRXEDE56.js.map → catalogs-G3YEVG6S.js.map} +0 -0
  316. /package/dist/{changes-6QBJMGJC.js.map → changes-TP7ZZHB3.js.map} +0 -0
  317. /package/dist/{chatgpt-7W75X3ER.js.map → chatgpt-QNUN63YS.js.map} +0 -0
  318. /package/dist/{chats-V3KB5FCU.js.map → chats-VUNGL4NF.js.map} +0 -0
  319. /package/dist/{chunk-DXB5YV6S.js.map → chunk-2GK33EJV.js.map} +0 -0
  320. /package/dist/{chunk-OC5IJSIW.js.map → chunk-2LY4RW5O.js.map} +0 -0
  321. /package/dist/{chunk-7J6EHOH6.js.map → chunk-35XWJEWH.js.map} +0 -0
  322. /package/dist/{chunk-633BRRZO.js.map → chunk-4NBVGARW.js.map} +0 -0
  323. /package/dist/{chunk-7RUYWECB.js.map → chunk-5AHNAMHK.js.map} +0 -0
  324. /package/dist/{chunk-3U3RUPKR.js.map → chunk-6DB2B3GF.js.map} +0 -0
  325. /package/dist/{chunk-OWK5WYFZ.js.map → chunk-6XVYM47A.js.map} +0 -0
  326. /package/dist/{chunk-NEZLPWD4.js.map → chunk-6ZJ6IOG6.js.map} +0 -0
  327. /package/dist/{chunk-CLMM6P6B.js.map → chunk-76KTC7RD.js.map} +0 -0
  328. /package/dist/{chunk-AST5XJKZ.js.map → chunk-7SDFKGQ4.js.map} +0 -0
  329. /package/dist/{chunk-ZN63N3EP.js.map → chunk-7TP3FPCF.js.map} +0 -0
  330. /package/dist/{chunk-X5TFU7ET.js.map → chunk-ANCSKUWI.js.map} +0 -0
  331. /package/dist/{chunk-HMEFD2CG.js.map → chunk-AQYRPO4R.js.map} +0 -0
  332. /package/dist/{chunk-ML3ZIQ7K.js.map → chunk-BA7FDXQC.js.map} +0 -0
  333. /package/dist/{chunk-MJABIGKT.js.map → chunk-BSC33FLJ.js.map} +0 -0
  334. /package/dist/{chunk-QJE6ZYGI.js.map → chunk-CWX4PPOK.js.map} +0 -0
  335. /package/dist/{chunk-7H2VLDYU.js.map → chunk-CZOSF52Z.js.map} +0 -0
  336. /package/dist/{chunk-7LT6UP2W.js.map → chunk-DKGTQSLR.js.map} +0 -0
  337. /package/dist/{chunk-DQPTUBCB.js.map → chunk-E4MDJBLO.js.map} +0 -0
  338. /package/dist/{chunk-676WE6CY.js.map → chunk-EH4C4CZK.js.map} +0 -0
  339. /package/dist/{chunk-XZPREXCE.js.map → chunk-G4IHT42K.js.map} +0 -0
  340. /package/dist/{chunk-ENUZU5LQ.js.map → chunk-G7UTTEBS.js.map} +0 -0
  341. /package/dist/{chunk-4SJDDGPV.js.map → chunk-GTRZUWT2.js.map} +0 -0
  342. /package/dist/{chunk-KWAOTV7F.js.map → chunk-GX6VAHY7.js.map} +0 -0
  343. /package/dist/{chunk-XG3XCHN6.js.map → chunk-HA5D6US2.js.map} +0 -0
  344. /package/dist/{chunk-ZNBDKK4Y.js.map → chunk-HWB5DN32.js.map} +0 -0
  345. /package/dist/{chunk-YY6CIVRY.js.map → chunk-HZ5DR5MX.js.map} +0 -0
  346. /package/dist/{chunk-2YJNBTXE.js.map → chunk-IM52NHGL.js.map} +0 -0
  347. /package/dist/{chunk-2SCPDSFN.js.map → chunk-LIQ4SQ2T.js.map} +0 -0
  348. /package/dist/{chunk-ZEYFPIKH.js.map → chunk-MADAAZZV.js.map} +0 -0
  349. /package/dist/{chunk-RRUJQVWA.js.map → chunk-MF5WL2MP.js.map} +0 -0
  350. /package/dist/{chunk-HXTGYOQC.js.map → chunk-MO7XF4HR.js.map} +0 -0
  351. /package/dist/{chunk-GT54GEDT.js.map → chunk-NXYNWIRN.js.map} +0 -0
  352. /package/dist/{chunk-DIY6QR3E.js.map → chunk-OTDS56OQ.js.map} +0 -0
  353. /package/dist/{chunk-S42CGOGT.js.map → chunk-PDTB5EX6.js.map} +0 -0
  354. /package/dist/{chunk-P3WRQED4.js.map → chunk-QKJK2K7U.js.map} +0 -0
  355. /package/dist/{chunk-HYCIBVDW.js.map → chunk-RWPQW73R.js.map} +0 -0
  356. /package/dist/{chunk-65IJ6BDS.js.map → chunk-SB3GZFCV.js.map} +0 -0
  357. /package/dist/{chunk-XL3UIAMJ.js.map → chunk-T3BDNJIX.js.map} +0 -0
  358. /package/dist/{chunk-EIP4PYCL.js.map → chunk-TIOQ7ZFQ.js.map} +0 -0
  359. /package/dist/{chunk-2SMGPLIW.js.map → chunk-UC6BWM5J.js.map} +0 -0
  360. /package/dist/{chunk-W33XBKLZ.js.map → chunk-VAISMQQB.js.map} +0 -0
  361. /package/dist/{chunk-GZVZ7CQI.js.map → chunk-VDHQJ6HD.js.map} +0 -0
  362. /package/dist/{chunk-JSN6LLHX.js.map → chunk-VH4PYHRR.js.map} +0 -0
  363. /package/dist/{chunk-EVYXTT7V.js.map → chunk-XCM6XWOB.js.map} +0 -0
  364. /package/dist/{chunk-EO7NHHEZ.js.map → chunk-YBP7O5P4.js.map} +0 -0
  365. /package/dist/{chunk-B3AKIYBA.js.map → chunk-YC2TQ3VC.js.map} +0 -0
  366. /package/dist/{chunk-EZUG6WE2.js.map → chunk-YDJMV7BC.js.map} +0 -0
  367. /package/dist/{claim-Y5ZYM3Y3.js.map → claim-MIYXWP7Z.js.map} +0 -0
  368. /package/dist/{companies-2R4QXPSF.js.map → companies-WXZRG2PP.js.map} +0 -0
  369. /package/dist/{complete-SG2VVAGA.js.map → complete-SY4FSNQS.js.map} +0 -0
  370. /package/dist/{connect-A3SJQKSE.js.map → connect-OKTOFEHL.js.map} +0 -0
  371. /package/dist/{conversation-5WIHZLPU.js.map → conversation-KRHT4MW5.js.map} +0 -0
  372. /package/dist/{conversion-report-XQBJ6LG4.js.map → conversion-report-N4HANYOB.js.map} +0 -0
  373. /package/dist/{conversion-upload-command-JULHGVIR.js.map → conversion-upload-command-TZTHU2CD.js.map} +0 -0
  374. /package/dist/{conversion-writes-UBCVXP2E.js.map → conversion-writes-LW4HQKK5.js.map} +0 -0
  375. /package/dist/{conversions-7PGKDZVN.js.map → conversions-JLB6LRVG.js.map} +0 -0
  376. /package/dist/{conversions-D236RTUK.js.map → conversions-TS723AZV.js.map} +0 -0
  377. /package/dist/{countries-FYHM3IMJ.js.map → countries-ESAKTQAE.js.map} +0 -0
  378. /package/dist/{create-XOLEMSB2.js.map → create-62R2LGTW.js.map} +0 -0
  379. /package/dist/{create-5PKVRJUD.js.map → create-BSFTUBGS.js.map} +0 -0
  380. /package/dist/{create-EYSGANKH.js.map → create-LAENUBVH.js.map} +0 -0
  381. /package/dist/{create-UVVII4GB.js.map → create-YGRXSFDV.js.map} +0 -0
  382. /package/dist/{creatives-OB77VU5H.js.map → creatives-L6VMTWP2.js.map} +0 -0
  383. /package/dist/{creatives-4DRALRUE.js.map → creatives-ZPLPNZVQ.js.map} +0 -0
  384. /package/dist/{critique-MZBGOV3K.js.map → critique-I7W3WKN4.js.map} +0 -0
  385. /package/dist/{critique-NM6GK2KW.js.map → critique-Q6VP74PK.js.map} +0 -0
  386. /package/dist/{crm-IYAWE47A.js.map → crm-2F43ZB4O.js.map} +0 -0
  387. /package/dist/{crm-5GCGLHKD.js.map → crm-KYBPKLGK.js.map} +0 -0
  388. /package/dist/{currency-DJDVIR3C.js.map → currency-XCGKQ7FE.js.map} +0 -0
  389. /package/dist/{customers-L3D3YCTM.js.map → customers-6F4CL3XJ.js.map} +0 -0
  390. /package/dist/{delete-WMT2GDDN.js.map → delete-7SFCWRV6.js.map} +0 -0
  391. /package/dist/{delete-E2IGHOBY.js.map → delete-EXAW3NPT.js.map} +0 -0
  392. /package/dist/{delete-JYPEYYKM.js.map → delete-V344ME7V.js.map} +0 -0
  393. /package/dist/{demographics-VTOJJK5E.js.map → demographics-G3JX46UZ.js.map} +0 -0
  394. /package/dist/{discard-62REOO2E.js.map → discard-H3CLQZXB.js.map} +0 -0
  395. /package/dist/{discover-M3ZKKFEL.js.map → discover-BJPZNXUQ.js.map} +0 -0
  396. /package/dist/{domain-7ACHLP2Y.js.map → domain-KG4QWDIS.js.map} +0 -0
  397. /package/dist/{draft-ZZQ4GGIG.js.map → draft-5FE4LX3C.js.map} +0 -0
  398. /package/dist/{draft-U6CT6LCC.js.map → draft-BV2QRPZ4.js.map} +0 -0
  399. /package/dist/{draft-FPD6BOUC.js.map → draft-GYQVYT26.js.map} +0 -0
  400. /package/dist/{draft-MAGMH5FJ.js.map → draft-JFG3FCIH.js.map} +0 -0
  401. /package/dist/{draft-MNFJ4G3C.js.map → draft-THPZFASM.js.map} +0 -0
  402. /package/dist/{facets-DZCAWR32.js.map → facets-SEYNYQ3G.js.map} +0 -0
  403. /package/dist/{fit-KXHYKIA4.js.map → fit-275H7ETA.js.map} +0 -0
  404. /package/dist/{flows-Q454EFMN.js.map → flows-I3MWA5EX.js.map} +0 -0
  405. /package/dist/{fonts-YWGD2B4N.js.map → fonts-KHEHZFW5.js.map} +0 -0
  406. /package/dist/{forecast-TQNRU5ZY.js.map → forecast-O5DQVRVJ.js.map} +0 -0
  407. /package/dist/{funnel-YVSYSLT4.js.map → funnel-EM26VOTO.js.map} +0 -0
  408. /package/dist/{generate-DMQUS665.js.map → generate-6DDI42Y2.js.map} +0 -0
  409. /package/dist/{get-756GD6EF.js.map → get-DVEBT257.js.map} +0 -0
  410. /package/dist/{get-7PZP4HJ3.js.map → get-FF64VI2N.js.map} +0 -0
  411. /package/dist/{history-Q3QCT64S.js.map → history-DBIEYQHY.js.map} +0 -0
  412. /package/dist/{history-MECEOLRV.js.map → history-YZP47WGC.js.map} +0 -0
  413. /package/dist/{hubspot-KF5J4AEB.js.map → hubspot-SVKHMSYV.js.map} +0 -0
  414. /package/dist/{ideas-AFJ5U7PK.js.map → ideas-3J43F3CT.js.map} +0 -0
  415. /package/dist/{images-P4JQZJZW.js.map → images-U2WM3PCF.js.map} +0 -0
  416. /package/dist/{ingest-7LRGIUIK.js.map → ingest-RUIIJIVJ.js.map} +0 -0
  417. /package/dist/{ingest-OLPYRECF.js.map → ingest-UL7T6FOP.js.map} +0 -0
  418. /package/dist/{insights-LNAXV2CG.js.map → insights-ZIU6FJMS.js.map} +0 -0
  419. /package/dist/{inspect-ETUZZCVT.js.map → inspect-LXF6RITM.js.map} +0 -0
  420. /package/dist/{inspiration-I4MMKAWA.js.map → inspiration-P265QJ2H.js.map} +0 -0
  421. /package/dist/{intent-ICKFJRT2.js.map → intent-E3UIVZBN.js.map} +0 -0
  422. /package/dist/{keyword-gap-NGPH32FN.js.map → keyword-gap-BG6M665A.js.map} +0 -0
  423. /package/dist/{keyword-metrics-6K2LQZVQ.js.map → keyword-metrics-I5SJB3YA.js.map} +0 -0
  424. /package/dist/{landing-NXZYGBVA.js.map → landing-FUJFUM2Y.js.map} +0 -0
  425. /package/dist/{languages-JDYL2N5F.js.map → languages-HORKPDNH.js.map} +0 -0
  426. /package/dist/{languages-JMVNOHMG.js.map → languages-JSGWCC7Z.js.map} +0 -0
  427. /package/dist/{leads-J5Z3K72L.js.map → leads-FMO4XNEY.js.map} +0 -0
  428. /package/dist/{learn-YK2NNAXT.js.map → learn-ZPOR3ZCH.js.map} +0 -0
  429. /package/dist/{lighthouse-NQBUCHTW.js.map → lighthouse-6ZC45E53.js.map} +0 -0
  430. /package/dist/{line-item-writes-OQKDQBRR.js.map → line-item-writes-X4U2P5AW.js.map} +0 -0
  431. /package/dist/{line-items-N32SUQW2.js.map → line-items-EYTIBSRJ.js.map} +0 -0
  432. /package/dist/{link-YOUYN4HW.js.map → link-ICD4SUXM.js.map} +0 -0
  433. /package/dist/{linkedin-UZX3LTGS.js.map → linkedin-PVMW3DHM.js.map} +0 -0
  434. /package/dist/{list-NEH7CXA4.js.map → list-DVTVZKUK.js.map} +0 -0
  435. /package/dist/{list-5XOP7RXP.js.map → list-HCSVD3XC.js.map} +0 -0
  436. /package/dist/{list-CXB5L7W3.js.map → list-T5STBDT2.js.map} +0 -0
  437. /package/dist/{locations-2NKBJKBT.js.map → locations-74TPQWAT.js.map} +0 -0
  438. /package/dist/{locations-S4U6IJIS.js.map → locations-J4G5RNPH.js.map} +0 -0
  439. /package/dist/{log-Y22VMQMW.js.map → log-QDMIIM6F.js.map} +0 -0
  440. /package/dist/{make-AYTOHWHD.js.map → make-FSXE5QR4.js.map} +0 -0
  441. /package/dist/{map-62RLXP7R.js.map → map-B4M6M7LK.js.map} +0 -0
  442. /package/dist/{mcp-CNDPFOWE.js.map → mcp-XYTDKV7V.js.map} +0 -0
  443. /package/dist/{media-sources-KIM7FTIH.js.map → media-sources-UTS2IIJA.js.map} +0 -0
  444. /package/dist/{members-I5JNM2PJ.js.map → members-7PBJNZL3.js.map} +0 -0
  445. /package/dist/{metrics-AY4RP54F.js.map → metrics-SQDJ5NQO.js.map} +0 -0
  446. /package/dist/{models-5NTC7A5G.js.map → models-6T2XV2KB.js.map} +0 -0
  447. /package/dist/{normalize-YALLU2FS.js.map → normalize-55FXLIBJ.js.map} +0 -0
  448. /package/dist/{options-OZGAYIXG.js.map → options-JVNCBJWI.js.map} +0 -0
  449. /package/dist/{performance-FYV43RZU.js.map → performance-GMGOAOBP.js.map} +0 -0
  450. /package/dist/{pixels-TZPF746S.js.map → pixels-45A55MOP.js.map} +0 -0
  451. /package/dist/{promoted-tweet-writes-DV6W6BRF.js.map → promoted-tweet-writes-SRWSCBFQ.js.map} +0 -0
  452. /package/dist/{promoted-tweets-KD4755XT.js.map → promoted-tweets-SJCHX5YN.js.map} +0 -0
  453. /package/dist/{publish-A6C6AIDN.js.map → publish-TXXVHIFW.js.map} +0 -0
  454. /package/dist/{query-CPZZNMDY.js.map → query-IEZRY6HV.js.map} +0 -0
  455. /package/dist/{reddit-BRHSTRV3.js.map → reddit-ZWFPRYXL.js.map} +0 -0
  456. /package/dist/{refresh-MDM2AGBY.js.map → refresh-QGI6ZCEC.js.map} +0 -0
  457. /package/dist/{release-HKAOMV22.js.map → release-UP3XY5HE.js.map} +0 -0
  458. /package/dist/{relevant-pages-MTMFMBPD.js.map → relevant-pages-OWMNUCP7.js.map} +0 -0
  459. /package/dist/{remove-JDWMPK2C.js.map → remove-QP4GTVZZ.js.map} +0 -0
  460. /package/dist/{reopen-3X47UVTN.js.map → reopen-2UN35A4J.js.map} +0 -0
  461. /package/dist/{rerun-SMGRCAVF.js.map → rerun-RTW2V46W.js.map} +0 -0
  462. /package/dist/{research-L2R3IXZL.js.map → research-VVY2PPGR.js.map} +0 -0
  463. /package/dist/{reset-RC25CNM5.js.map → reset-Q6674O56.js.map} +0 -0
  464. /package/dist/{reset-MUR2L6KX.js.map → reset-TODGSHQM.js.map} +0 -0
  465. /package/dist/{resolve-GYFMTEKE.js.map → resolve-VDSEZ3S4.js.map} +0 -0
  466. /package/dist/{retry-WRJ3G5X2.js.map → retry-BVA5AHZV.js.map} +0 -0
  467. /package/dist/{retry-BZIV5J4F.js.map → retry-ZWTP2O7P.js.map} +0 -0
  468. /package/dist/{run-6JPWF5S6.js.map → run-5ZAQYF6U.js.map} +0 -0
  469. /package/dist/{run-L5J2JKMZ.js.map → run-SLKJGAX2.js.map} +0 -0
  470. /package/dist/{scaffold-ad-YKS6BZ47.js.map → scaffold-ad-LGWOC4QN.js.map} +0 -0
  471. /package/dist/{scaffold-static-ad-EPWJHAYS.js.map → scaffold-static-ad-2AXCMDOV.js.map} +0 -0
  472. /package/dist/{scaffold-video-LKLEA4TM.js.map → scaffold-video-JNHKA3V4.js.map} +0 -0
  473. /package/dist/{schedule-B3QDOMSR.js.map → schedule-3EV5MRQK.js.map} +0 -0
  474. /package/dist/{scheduled-agents-OKXW6GYL.js.map → scheduled-agents-B6R4ZPBZ.js.map} +0 -0
  475. /package/dist/{schema-UW772MB2.js.map → schema-3WYVJU6M.js.map} +0 -0
  476. /package/dist/{search-36WKJO5Z.js.map → search-WW34SEJH.js.map} +0 -0
  477. /package/dist/{select-JJTZNNBZ.js.map → select-Q2UE766M.js.map} +0 -0
  478. /package/dist/{set-prompt-626I74ZW.js.map → set-prompt-EU3BWT76.js.map} +0 -0
  479. /package/dist/{setup-links-CZ56WG7K.js.map → setup-links-JXM25FLA.js.map} +0 -0
  480. /package/dist/{site-YGY6IGLQ.js.map → site-P64YTS4E.js.map} +0 -0
  481. /package/dist/{sources-DPE7HS2L.js.map → sources-O3AL6555.js.map} +0 -0
  482. /package/dist/{sources-LFKRFJ6E.js.map → sources-Z3CHGFBK.js.map} +0 -0
  483. /package/dist/{stale-HZB4L5VZ.js.map → stale-7EUGR4UV.js.map} +0 -0
  484. /package/dist/{status-TGMY37OX.js.map → status-ITDPDRWW.js.map} +0 -0
  485. /package/dist/{studio-HUEBE6DS.js.map → studio-TTA3FLL3.js.map} +0 -0
  486. /package/dist/{sync-GY3YWXZ4.js.map → sync-4UKESGFD.js.map} +0 -0
  487. /package/dist/{sync-definition-BREENUVW.js.map → sync-definition-XVUMT2SL.js.map} +0 -0
  488. /package/dist/{tag-manager-HREEYGVM.js.map → tag-manager-DYZUOIAS.js.map} +0 -0
  489. /package/dist/{tags-OEQA35YM.js.map → tags-5GXCLODL.js.map} +0 -0
  490. /package/dist/{tags-B6FTBKE7.js.map → tags-F5EDCKEC.js.map} +0 -0
  491. /package/dist/{tags-MBGOC3C5.js.map → tags-IV2GHTNP.js.map} +0 -0
  492. /package/dist/{tags-BOXRDIP2.js.map → tags-Q2KB6JPG.js.map} +0 -0
  493. /package/dist/{tags-KDCOIXY5.js.map → tags-QZHYY36N.js.map} +0 -0
  494. /package/dist/{targeting-criteria-OSIGTYIK.js.map → targeting-criteria-KS6C26QY.js.map} +0 -0
  495. /package/dist/{targets-EZDJE2BR.js.map → targets-7ZBECTUB.js.map} +0 -0
  496. /package/dist/{templates-43CM65YU.js.map → templates-PP2TX7JK.js.map} +0 -0
  497. /package/dist/{testimonials-TGSG33XN.js.map → testimonials-URLEX7DN.js.map} +0 -0
  498. /package/dist/{top-companies-AU2Y2JBL.js.map → top-companies-OVIFLDDF.js.map} +0 -0
  499. /package/dist/{translate-UAQN3UP6.js.map → translate-3NVI2VVS.js.map} +0 -0
  500. /package/dist/{triggers-KANOVASP.js.map → triggers-RQXRAA3W.js.map} +0 -0
  501. /package/dist/{unlink-3O34M3RC.js.map → unlink-GTM746RO.js.map} +0 -0
  502. /package/dist/{unstage-IU3X67HQ.js.map → unstage-MTG275O5.js.map} +0 -0
  503. /package/dist/{update-3T2GI5UT.js.map → update-7HCTMDA7.js.map} +0 -0
  504. /package/dist/{update-2MSRC7SF.js.map → update-TRJ23KCP.js.map} +0 -0
  505. /package/dist/{update-4AKUKIHY.js.map → update-V477V3FY.js.map} +0 -0
  506. /package/dist/{update-L575JJ26.js.map → update-YYVUISVF.js.map} +0 -0
  507. /package/dist/{upload-YGKEXFZX.js.map → upload-J4ULHPM6.js.map} +0 -0
  508. /package/dist/{url-options-QEWKRKZ3.js.map → url-options-GGXAL3J4.js.map} +0 -0
  509. /package/dist/{url-params-JO6DMUNT.js.map → url-params-SZZEQHXT.js.map} +0 -0
  510. /package/dist/{validate-C2AJIWOF.js.map → validate-6IN3BALB.js.map} +0 -0
  511. /package/dist/{videos-73IKG7QH.js.map → videos-5HQMNQ7O.js.map} +0 -0
  512. /package/dist/{viewer-check-VN2JK2LW.js.map → viewer-check-5TJ7UGMV.js.map} +0 -0
  513. /package/dist/{winning-ads-UCDDPWFM.js.map → winning-ads-B44NZIRO.js.map} +0 -0
  514. /package/dist/{write-commands-WBBS3C5L.js.map → write-commands-PFOR7EBJ.js.map} +0 -0
  515. /package/dist/{x-VOG2EPI6.js.map → x-TWY26IUO.js.map} +0 -0
@@ -27,21 +27,21 @@ One company connects one ChatGPT Ads account, so there is no account id to pass.
27
27
  Full guide: __tooling__/docs/tools/baker/ads-chatgpt.md`
28
28
  },
29
29
  subCommands: {
30
- account: () => import("./account-4H7QVBRK.js").then((m) => m.accountCommand),
31
- campaigns: () => import("./campaigns-YS3OGQXO.js").then((m) => m.campaignsCommand),
32
- "ad-groups": () => import("./ad-groups-WGPDPUI2.js").then((m) => m.adGroupsCommand),
33
- ads: () => import("./ads-BCOSQALY.js").then((m) => m.adsCommand),
34
- conversions: () => import("./conversions-D236RTUK.js").then((m) => m.conversionsCommand),
35
- pixels: () => import("./pixels-TZPF746S.js").then((m) => m.pixelsCommand),
36
- audiences: () => import("./audiences-TGD5US2M.js").then((m) => m.audiencesCommand),
37
- catalogs: () => import("./catalogs-BRXEDE56.js").then((m) => m.catalogsCommand),
38
- history: () => import("./history-Q3QCT64S.js").then((m) => m.historyCommand),
39
- insights: () => import("./insights-LNAXV2CG.js").then((m) => m.insightsCommand),
40
- locations: () => import("./locations-2NKBJKBT.js").then((m) => m.locationsCommand),
41
- draft: () => import("./draft-MNFJ4G3C.js").then((m) => m.draftCommand)
30
+ account: () => import("./account-F6MHQ64I.js").then((m) => m.accountCommand),
31
+ campaigns: () => import("./campaigns-X3DPCCSN.js").then((m) => m.campaignsCommand),
32
+ "ad-groups": () => import("./ad-groups-CGFXZNIA.js").then((m) => m.adGroupsCommand),
33
+ ads: () => import("./ads-PV7GZXPR.js").then((m) => m.adsCommand),
34
+ conversions: () => import("./conversions-TS723AZV.js").then((m) => m.conversionsCommand),
35
+ pixels: () => import("./pixels-45A55MOP.js").then((m) => m.pixelsCommand),
36
+ audiences: () => import("./audiences-VEKGLWBG.js").then((m) => m.audiencesCommand),
37
+ catalogs: () => import("./catalogs-G3YEVG6S.js").then((m) => m.catalogsCommand),
38
+ history: () => import("./history-DBIEYQHY.js").then((m) => m.historyCommand),
39
+ insights: () => import("./insights-ZIU6FJMS.js").then((m) => m.insightsCommand),
40
+ locations: () => import("./locations-74TPQWAT.js").then((m) => m.locationsCommand),
41
+ draft: () => import("./draft-THPZFASM.js").then((m) => m.draftCommand)
42
42
  }
43
43
  });
44
44
  export {
45
45
  chatgptCommand
46
46
  };
47
- //# sourceMappingURL=chatgpt-7W75X3ER.js.map
47
+ //# sourceMappingURL=chatgpt-QNUN63YS.js.map
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  failApi
3
- } from "./chunk-DQPTUBCB.js";
4
- import "./chunk-ASVKZQUU.js";
3
+ } from "./chunk-E4MDJBLO.js";
4
+ import "./chunk-NDXBU22S.js";
5
5
  import "./chunk-GXDLWBOY.js";
6
6
  import "./chunk-WYCVJIHD.js";
7
7
  import "./chunk-ZJWUBJYQ.js";
8
- import "./chunk-XML7AJM3.js";
8
+ import "./chunk-NE4F3FHN.js";
9
9
  import {
10
10
  apiPost
11
11
  } from "./chunk-XBOK23HI.js";
@@ -259,4 +259,4 @@ Full guide: __tooling__/docs/tools/baker/chats.md`
259
259
  export {
260
260
  chatsCommand
261
261
  };
262
- //# sourceMappingURL=chats-V3KB5FCU.js.map
262
+ //# sourceMappingURL=chats-VUNGL4NF.js.map
@@ -8,7 +8,7 @@ import {
8
8
  firstTimes,
9
9
  isTriggerKind,
10
10
  parseConditionsExpression
11
- } from "./chunk-ASVKZQUU.js";
11
+ } from "./chunk-NDXBU22S.js";
12
12
  import {
13
13
  ApiError,
14
14
  validateConvexId
@@ -379,4 +379,4 @@ export {
379
379
  reactionBody,
380
380
  chatBody
381
381
  };
382
- //# sourceMappingURL=chunk-DXB5YV6S.js.map
382
+ //# sourceMappingURL=chunk-2GK33EJV.js.map
@@ -6,10 +6,10 @@ import {
6
6
  } from "./chunk-HIPDMQZ6.js";
7
7
  import {
8
8
  bytesOf
9
- } from "./chunk-4SJDDGPV.js";
9
+ } from "./chunk-GTRZUWT2.js";
10
10
  import {
11
11
  AD_DESCRIBE_MODEL
12
- } from "./chunk-OBDAYP2P.js";
12
+ } from "./chunk-KY4MPR6R.js";
13
13
  import {
14
14
  askAboutImages
15
15
  } from "./chunk-RX6F3GEA.js";
@@ -417,4 +417,4 @@ export {
417
417
  fitReference,
418
418
  fitCommand
419
419
  };
420
- //# sourceMappingURL=chunk-OC5IJSIW.js.map
420
+ //# sourceMappingURL=chunk-2LY4RW5O.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  chatgptDraftOpInputSchema,
3
3
  chatgptFailure
4
- } from "./chunk-FTWJFDIN.js";
4
+ } from "./chunk-KLBTXETO.js";
5
5
  import {
6
6
  writeJsonEnvelope
7
7
  } from "./chunk-VFIOJD5M.js";
@@ -271,4 +271,4 @@ export {
271
271
  statusCommand,
272
272
  productFiltersArg
273
273
  };
274
- //# sourceMappingURL=chunk-7J6EHOH6.js.map
274
+ //# sourceMappingURL=chunk-35XWJEWH.js.map
@@ -1,5 +1,9 @@
1
+ import {
2
+ RESEARCH_GOOGLE_ADS_MAX_COPY
3
+ } from "./chunk-NDXBU22S.js";
4
+
1
5
  // src/commands/research/hints.ts
2
- var AD_COPY_ROUTE = 'This returns competing domains and their SERP economics \u2014 no ad copy, no headlines, no creative. For the actual copy of a competitor\'s ads: `baker winning-ads advertisers "<brand>"` \u2192 `baker winning-ads search "<brief>" --advertiser-id <id>` \u2192 `baker winning-ads content <adId>` (`primary_text` / `headline` / `cta`, plus the spoken transcript and on-screen text for video). That corpus is Meta and LinkedIn only \u2014 Google SERP ad copy is not available through any Baker command, so do not keep querying for it here.';
6
+ var AD_COPY_ROUTE = 'This returns competing domains and their SERP economics \u2014 no ad copy, no headlines, no creative. For a competitor\'s Google ads and their copy: `baker research google-ads <competitor.com> --copy` (Google\'s Ads Transparency Center: every ad, how long it has run, and the text ads\' headline and description). For Meta and LinkedIn: `baker winning-ads advertisers "<brand>"` \u2192 `baker winning-ads search "<brief>" --advertiser-id <id>` \u2192 `baker winning-ads content <adId>` (`primary_text` / `headline` / `cta`, plus the spoken transcript and on-screen text for video). Do not keep querying this command for copy.';
3
7
  function noSerpRowsHints(rowCount, queryContext) {
4
8
  if (rowCount > 0) {
5
9
  return [];
@@ -147,6 +151,43 @@ function redditPageFix(url, code) {
147
151
  explanation: 'Read Reddit with its own commands: `baker research reddit search "<words>" --subreddit <name>` to find what people said, `baker research reddit thread <url>` for one thread.'
148
152
  };
149
153
  }
154
+ function googleAdsHints({
155
+ target,
156
+ adCount,
157
+ located,
158
+ textWithoutCopy,
159
+ copyAsked,
160
+ copyUnread,
161
+ visual
162
+ }) {
163
+ if (adCount === 0) {
164
+ return [
165
+ `No Google ads point to ${target}${located ? " in that region" : ""} \u2014 that is the answer, not a failed call: this competitor is not advertising on Google there, or its ads point to another domain. ` + (located ? "Re-run once without --location to see every region; then move on. " : "Move on. ") + `Its paid search terms, if any: \`baker research keywords-for-site ${target} --type paid\`.`
166
+ ];
167
+ }
168
+ const hints = [];
169
+ if (!copyAsked && textWithoutCopy > 0) {
170
+ hints.push(
171
+ `${textWithoutCopy} text ads came back without their words. Re-run with --copy to read the headline and description of up to ${RESEARCH_GOOGLE_ADS_MAX_COPY} (cached, so only the reading is new).`
172
+ );
173
+ }
174
+ const pastCap = copyAsked ? textWithoutCopy - copyUnread : 0;
175
+ if (pastCap > 0) {
176
+ hints.push(
177
+ `${pastCap} text ads past the first ${RESEARCH_GOOGLE_ADS_MAX_COPY} were not read \u2014 one request reads at most ${RESEARCH_GOOGLE_ADS_MAX_COPY}. Narrow with --since, --location or --platform google_search and re-run for their words.`
178
+ );
179
+ }
180
+ if (visual > 0 || copyUnread > 0) {
181
+ const without = [
182
+ visual > 0 ? `${visual} image or video ads (Google gives no text for those)` : "",
183
+ copyUnread > 0 ? `${copyUnread} text ads whose image could not be read` : ""
184
+ ].filter(Boolean);
185
+ hints.push(
186
+ `No copy for ${without.join(" and ")}: show those by their \`transparency_url\`. Do not open the Transparency Center in agent-browser to read them \u2014 it is the browser load this command exists to avoid.`
187
+ );
188
+ }
189
+ return hints;
190
+ }
150
191
 
151
192
  export {
152
193
  noSerpRowsHints,
@@ -159,6 +200,7 @@ export {
159
200
  redditThreadHints,
160
201
  redditSubredditsHints,
161
202
  REDDIT_LINK_REJECTED,
162
- redditPageFix
203
+ redditPageFix,
204
+ googleAdsHints
163
205
  };
164
- //# sourceMappingURL=chunk-PIWMNKWI.js.map
206
+ //# sourceMappingURL=chunk-3CWL2LY4.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/commands/research/hints.ts"],"sourcesContent":["/**\n * The `research` family shipped with no `hints[]` on any command. Everything\n * here is one nudge for one dead end that an audited run actually hit — not a\n * running commentary on healthy results.\n */\n\nimport type { ResearchRedditSource } from \"@baker/api\";\nimport type { QueryContext } from \"../../geo-context.ts\";\nimport type { ResearchFix } from \"./output.ts\";\n\ntype Depth = \"medium\" | \"high\" | \"xhigh\";\n\n/**\n * `advertisers` is named after advertisers and returns none of their advertising.\n * A run read the name as \"SERP ad creative\", got domain economics, and wrote \"no\n * live paid ad copy captured\" into the client's vault without ever trying the\n * command that does return copy. So this fires on every call, not just empty ones.\n */\nexport const AD_COPY_ROUTE =\n \"This returns competing domains and their SERP economics — no ad copy, no headlines, no creative. \" +\n 'For the actual copy of a competitor\\'s ads: `baker winning-ads advertisers \"<brand>\"` → ' +\n '`baker winning-ads search \"<brief>\" --advertiser-id <id>` → `baker winning-ads content <adId>` ' +\n \"(`primary_text` / `headline` / `cta`, plus the spoken transcript and on-screen text for video). \" +\n \"That corpus is Meta and LinkedIn only — Google SERP ad copy is not available through any Baker command, \" +\n \"so do not keep querying for it here.\";\n\n/**\n * Empty SERP data has two causes and only one is worth a second call: the wrong\n * market. Once the market was explicit, a re-query is waste — say so, because\n * \"no rows\" otherwise reads as \"reword the keyword\".\n */\nexport function noSerpRowsHints(rowCount: number, queryContext: QueryContext): string[] {\n if (rowCount > 0) {\n return [];\n }\n const defaulted = queryContext.location_is_default || queryContext.language_is_default;\n if (defaulted) {\n return [\n `No rows for ${queryContext.location} / ${queryContext.language} — the market you did not set. ` +\n \"Set --location and --language for the client's actual market and re-run once \" +\n \"(`baker research countries` / `baker research languages` for the accepted codes) \" +\n \"before you touch the keyword.\",\n ];\n }\n return [\n `No rows for ${queryContext.location} / ${queryContext.language}, which you set explicitly. ` +\n \"This term has no third-party SERP coverage in that market — move on rather than re-querying it. \" +\n \"For demand signal try `baker research autocomplete`; for a competitor's actual terms, \" +\n \"`baker research keywords-for-site <domain>`.\",\n ];\n}\n\nexport function advertisersHints(rowCount: number, queryContext: QueryContext): string[] {\n return [...noSerpRowsHints(rowCount, queryContext), AD_COPY_ROUTE];\n}\n\n/**\n * \"This competitor buys no paid search\" is a real competitive answer, but it\n * arrives as an empty array that looks like a broken call — so say which it is\n * before the agent re-runs the same query with a different sort.\n */\nexport function keywordsForSiteHints(\n rowCount: number,\n queryContext: QueryContext,\n typeFilter: string | undefined,\n): string[] {\n if (rowCount > 0) {\n return [];\n }\n if (typeFilter === \"paid\" || typeFilter === \"organic\") {\n return [\n `No rows with --type ${typeFilter} in ${queryContext.location} / ${queryContext.language}. ` +\n `A domain with zero ${typeFilter} keywords in a market is itself the finding — record it and move on. ` +\n \"Confirm once with --type all (nothing at all there means the domain has no SERP coverage, \" +\n \"not that it has no ads) instead of re-running with a different --sort or --limit.\",\n ];\n }\n return noSerpRowsHints(rowCount, queryContext);\n}\n\nconst THIN_ANSWER_CHARS = 600;\nconst THIN_SOURCE_COUNT = 2;\n\n// Only `medium` and `high` have somewhere to escalate to; `xhigh` is the ceiling,\n// so a thin answer there is a fact about the web, not a flag the agent forgot.\nconst ESCALATION: Partial<Record<Depth, string>> = {\n medium:\n \"`medium` is a quick lookup, not a search. Re-ask the SAME question once with `--depth high` before \" +\n \"concluding the web has nothing on it.\",\n high:\n \"`high` already thought hard about this. `--depth xhigh` is the only step left and it can run 15 minutes — \" +\n \"take it only if this answer blocks a deliverable; otherwise record the gap and move on.\",\n};\n\n/**\n * The one thing worth saying about a page that came back fine is that you are\n * not looking at all of it — which the content itself cannot tell you.\n */\nexport function fetchHints({\n truncated,\n contentChars,\n shownChars,\n}: {\n truncated: boolean;\n contentChars: number;\n shownChars: number;\n}): string[] {\n const hints: string[] = [];\n\n if (shownChars < contentChars) {\n hints.push(\n `Showing the first ${shownChars.toLocaleString(\"en-US\")} of ${contentChars.toLocaleString(\"en-US\")} characters. ` +\n \"Re-run the same command with `--full` for the whole page — the read is cached for 24h, so it costs no extra time and no extra credit.\",\n );\n }\n\n if (truncated) {\n hints.push(\n \"This page is longer than one read returns, so the end of it is missing. \" +\n \"Don't present this as the complete page; if the part you need is further down, fetch the deeper URL directly.\",\n );\n }\n\n return hints;\n}\n\nexport function webDepthHints({\n answer,\n sourceCount,\n depth,\n}: {\n answer: string;\n sourceCount: number;\n depth: Depth;\n}): string[] {\n const thin = answer.length < THIN_ANSWER_CHARS || sourceCount <= THIN_SOURCE_COUNT;\n const escalation = ESCALATION[depth];\n if (!thin || !escalation) {\n return [];\n }\n return [`Thin answer (${answer.length} chars, ${sourceCount} source(s)). ${escalation}`];\n}\n\n/**\n * The volume DataForSEO returns is Google's own Keyword Planner figure resold,\n * so putting the two side by side validates nothing — a run did exactly that,\n * found all seven rows agreeing to the digit, and reported the agreement as\n * corroboration. This fires on every call rather than on a suspicious one,\n * because by the time the numbers are in a table the provenance is already gone.\n */\nexport function keywordMetricsHints({\n rows,\n asked,\n clickstream,\n queryContext,\n}: {\n rows: Array<{ keyword: string; search_volume: number | null }>;\n asked: string[];\n clickstream: boolean;\n queryContext: QueryContext;\n}): string[] {\n if (rows.length === 0) {\n return noSerpRowsHints(0, queryContext);\n }\n\n const provenance =\n \"DataForSEO resells Google's Keyword Planner volume — planner_search_volume here is the SAME number \" +\n \"`baker ads google keywords metrics` returns, not an independent reading of it. Quoting the two as agreeing \" +\n \"sources is not corroboration.\" +\n (clickstream\n ? \" clickstream_search_volume IS independent (DataForSEO's own panels); when the two disagree, say which one you are quoting.\"\n : \" For a genuinely independent estimate of demand, re-run with --clickstream (costs 2x), or use first-party data: \" +\n \"`baker gsc query` for what already reaches the site, or the account's own search terms.\");\n\n const hints = [provenance];\n\n const empty = rows.filter((row) => row.search_volume === null).map((row) => row.keyword);\n if (empty.length > 0) {\n hints.push(\n `${empty.length} of ${asked.length} keywords came back with no data in ${queryContext.location} / ${queryContext.language}: ` +\n `${empty.join(\", \")}. That is missing coverage, NOT zero demand — do not report them as unsearched, and do not ` +\n \"re-query them reworded. `baker research autocomplete` on the head term is the way to find the phrasing that market uses.\",\n );\n }\n\n return hints;\n}\n\n/**\n * The archive keeps a post's words the moment it is written and its points\n * only once it has settled, so a number on something young is not the number\n * Reddit shows. Said once, when it applies, so a count is never quoted as live.\n */\nconst ARCHIVE_NOTE =\n \"Read from the Reddit archive: the words are as posted, but points and comment counts on anything under ~36h old are as first captured — don't quote those numbers as current.\";\n\n/**\n * An empty Reddit search is almost always a phrasing miss, not a silent\n * audience: Reddit matches words, and people write in their own. A run that\n * came back empty on a posts search also never looked at the replies, which is\n * where most of the verbatim voice is.\n */\nexport function redditSearchHints({\n resultCount,\n kind,\n source,\n}: {\n resultCount: number;\n kind: \"posts\" | \"comments\";\n source: ResearchRedditSource;\n}): string[] {\n const hints: string[] = [];\n if (resultCount === 0) {\n hints.push(\n \"Nothing matched. Reddit search matches words, not meaning: try the audience's own phrasing (one distinctive word, \" +\n \"or a seed from `baker research autocomplete`), a longer --since window, or other subreddits — \" +\n '`baker research reddit subreddits \"<topic>\"` finds where the audience actually talks' +\n (kind === \"posts\" ? \", and try --kind comments — most of the voice is in the replies.\" : \".\"),\n );\n } else if (kind === \"posts\") {\n hints.push(\n \"Titles rarely carry the voice. Read the promising threads with `baker research reddit thread <permalink>` \" +\n \"for the replies, or search the replies directly with --kind comments.\",\n );\n }\n if (source === \"archive\" && resultCount > 0) hints.push(ARCHIVE_NOTE);\n return hints;\n}\n\n/** A thread whose replies no source would serve is still the post — but it must not read as a thread nobody answered. */\nexport function redditThreadHints({\n commentsShown,\n commentsAsked,\n commentCount,\n source,\n}: {\n commentsShown: number;\n commentsAsked: number;\n commentCount: number | null;\n source: ResearchRedditSource;\n}): string[] {\n const hints: string[] = [];\n if (commentsAsked > 0 && commentsShown === 0 && (commentCount ?? 0) > 0) {\n hints.push(\n `This thread has ${commentCount} comments but none could be read just now. Quote the post only, and don't describe the replies.`,\n );\n }\n if (source === \"archive\") hints.push(ARCHIVE_NOTE);\n return hints;\n}\n\nconst REDDIT_HOST = /(^|\\.)reddit\\.com$|^redd\\.it$/i;\n\n/**\n * A subreddit's member count is its size, not its pulse. The run that prompted\n * this command mined r/CouriersUK — a real subreddit, with one post in its whole\n * history — and found nothing. One dated search tells a living subreddit from a\n * dead one before it is relied on.\n */\nexport function redditSubredditsHints({ resultCount }: { resultCount: number }): string[] {\n if (resultCount === 0) {\n return [\n 'No subreddits matched. Try the audience\\'s role or the platform they work on (\"amazon flex\", \"deliveroo\", \"nurses\"), one word at a time, or a web search for `site:reddit.com <topic>`.',\n ];\n }\n return [\n 'Members say how big a subreddit is, not how active it is. Before mining one, run `baker research reddit search \"<word>\" --subreddit <name> --since <a recent date>`: nothing back means it is quiet, so pick another. `restricted` can still be read; `private` cannot.',\n ];\n}\n\n/** A Reddit link that does not lead to the words attributed to it. Shared by `reddit thread` and `fetch`. */\nexport const REDDIT_LINK_REJECTED: ResearchFix = {\n action: \"reject\",\n explanation:\n \"Do not quote anything attributed to this link — it does not lead to those words. Find the real thread with `baker research reddit search`, and if you already wrote a quote from it, remove it.\",\n};\n\n/**\n * `research fetch` hands a Reddit URL to the Reddit reader, but its generic\n * remediation was written for ordinary pages: FORBIDDEN reads \"this will not\n * open, carry on without it\" and NOT_FOUND \"carry on\". For Reddit both are the\n * wrong advice. A page the reader will not turn into a thread is one `reddit`\n * command away, and a link that leads nowhere real must not be quoted at all.\n */\nexport function redditPageFix(url: string, code: string): ResearchFix | null {\n let host: string;\n try {\n host = new URL(url).hostname;\n } catch {\n return null;\n }\n if (!REDDIT_HOST.test(host)) return null;\n if (code === \"NOT_FOUND\") return REDDIT_LINK_REJECTED;\n if (code !== \"FORBIDDEN\") return null;\n return {\n action: \"retry_with_changes\",\n explanation:\n 'Read Reddit with its own commands: `baker research reddit search \"<words>\" --subreddit <name>` to find what people said, `baker research reddit thread <url>` for one thread.',\n };\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/commands/research/hints.ts"],"sourcesContent":["/**\n * The `research` family shipped with no `hints[]` on any command. Everything\n * here is one nudge for one dead end that an audited run actually hit — not a\n * running commentary on healthy results.\n */\n\nimport { RESEARCH_GOOGLE_ADS_MAX_COPY, type ResearchRedditSource } from \"@baker/api\";\nimport type { QueryContext } from \"../../geo-context.ts\";\nimport type { ResearchFix } from \"./output.ts\";\n\ntype Depth = \"medium\" | \"high\" | \"xhigh\";\n\n/**\n * `advertisers` is named after advertisers and returns none of their advertising.\n * A run read the name as \"SERP ad creative\", got domain economics, and wrote \"no\n * live paid ad copy captured\" into the client's vault without ever trying the\n * command that does return copy. So this fires on every call, not just empty ones.\n */\nexport const AD_COPY_ROUTE =\n \"This returns competing domains and their SERP economics — no ad copy, no headlines, no creative. \" +\n \"For a competitor's Google ads and their copy: `baker research google-ads <competitor.com> --copy` \" +\n \"(Google's Ads Transparency Center: every ad, how long it has run, and the text ads' headline and description). \" +\n 'For Meta and LinkedIn: `baker winning-ads advertisers \"<brand>\"` → ' +\n '`baker winning-ads search \"<brief>\" --advertiser-id <id>` → `baker winning-ads content <adId>` ' +\n \"(`primary_text` / `headline` / `cta`, plus the spoken transcript and on-screen text for video). \" +\n \"Do not keep querying this command for copy.\";\n\n/**\n * Empty SERP data has two causes and only one is worth a second call: the wrong\n * market. Once the market was explicit, a re-query is waste — say so, because\n * \"no rows\" otherwise reads as \"reword the keyword\".\n */\nexport function noSerpRowsHints(rowCount: number, queryContext: QueryContext): string[] {\n if (rowCount > 0) {\n return [];\n }\n const defaulted = queryContext.location_is_default || queryContext.language_is_default;\n if (defaulted) {\n return [\n `No rows for ${queryContext.location} / ${queryContext.language} — the market you did not set. ` +\n \"Set --location and --language for the client's actual market and re-run once \" +\n \"(`baker research countries` / `baker research languages` for the accepted codes) \" +\n \"before you touch the keyword.\",\n ];\n }\n return [\n `No rows for ${queryContext.location} / ${queryContext.language}, which you set explicitly. ` +\n \"This term has no third-party SERP coverage in that market — move on rather than re-querying it. \" +\n \"For demand signal try `baker research autocomplete`; for a competitor's actual terms, \" +\n \"`baker research keywords-for-site <domain>`.\",\n ];\n}\n\nexport function advertisersHints(rowCount: number, queryContext: QueryContext): string[] {\n return [...noSerpRowsHints(rowCount, queryContext), AD_COPY_ROUTE];\n}\n\n/**\n * \"This competitor buys no paid search\" is a real competitive answer, but it\n * arrives as an empty array that looks like a broken call — so say which it is\n * before the agent re-runs the same query with a different sort.\n */\nexport function keywordsForSiteHints(\n rowCount: number,\n queryContext: QueryContext,\n typeFilter: string | undefined,\n): string[] {\n if (rowCount > 0) {\n return [];\n }\n if (typeFilter === \"paid\" || typeFilter === \"organic\") {\n return [\n `No rows with --type ${typeFilter} in ${queryContext.location} / ${queryContext.language}. ` +\n `A domain with zero ${typeFilter} keywords in a market is itself the finding — record it and move on. ` +\n \"Confirm once with --type all (nothing at all there means the domain has no SERP coverage, \" +\n \"not that it has no ads) instead of re-running with a different --sort or --limit.\",\n ];\n }\n return noSerpRowsHints(rowCount, queryContext);\n}\n\nconst THIN_ANSWER_CHARS = 600;\nconst THIN_SOURCE_COUNT = 2;\n\n// Only `medium` and `high` have somewhere to escalate to; `xhigh` is the ceiling,\n// so a thin answer there is a fact about the web, not a flag the agent forgot.\nconst ESCALATION: Partial<Record<Depth, string>> = {\n medium:\n \"`medium` is a quick lookup, not a search. Re-ask the SAME question once with `--depth high` before \" +\n \"concluding the web has nothing on it.\",\n high:\n \"`high` already thought hard about this. `--depth xhigh` is the only step left and it can run 15 minutes — \" +\n \"take it only if this answer blocks a deliverable; otherwise record the gap and move on.\",\n};\n\n/**\n * The one thing worth saying about a page that came back fine is that you are\n * not looking at all of it — which the content itself cannot tell you.\n */\nexport function fetchHints({\n truncated,\n contentChars,\n shownChars,\n}: {\n truncated: boolean;\n contentChars: number;\n shownChars: number;\n}): string[] {\n const hints: string[] = [];\n\n if (shownChars < contentChars) {\n hints.push(\n `Showing the first ${shownChars.toLocaleString(\"en-US\")} of ${contentChars.toLocaleString(\"en-US\")} characters. ` +\n \"Re-run the same command with `--full` for the whole page — the read is cached for 24h, so it costs no extra time and no extra credit.\",\n );\n }\n\n if (truncated) {\n hints.push(\n \"This page is longer than one read returns, so the end of it is missing. \" +\n \"Don't present this as the complete page; if the part you need is further down, fetch the deeper URL directly.\",\n );\n }\n\n return hints;\n}\n\nexport function webDepthHints({\n answer,\n sourceCount,\n depth,\n}: {\n answer: string;\n sourceCount: number;\n depth: Depth;\n}): string[] {\n const thin = answer.length < THIN_ANSWER_CHARS || sourceCount <= THIN_SOURCE_COUNT;\n const escalation = ESCALATION[depth];\n if (!thin || !escalation) {\n return [];\n }\n return [`Thin answer (${answer.length} chars, ${sourceCount} source(s)). ${escalation}`];\n}\n\n/**\n * The volume DataForSEO returns is Google's own Keyword Planner figure resold,\n * so putting the two side by side validates nothing — a run did exactly that,\n * found all seven rows agreeing to the digit, and reported the agreement as\n * corroboration. This fires on every call rather than on a suspicious one,\n * because by the time the numbers are in a table the provenance is already gone.\n */\nexport function keywordMetricsHints({\n rows,\n asked,\n clickstream,\n queryContext,\n}: {\n rows: Array<{ keyword: string; search_volume: number | null }>;\n asked: string[];\n clickstream: boolean;\n queryContext: QueryContext;\n}): string[] {\n if (rows.length === 0) {\n return noSerpRowsHints(0, queryContext);\n }\n\n const provenance =\n \"DataForSEO resells Google's Keyword Planner volume — planner_search_volume here is the SAME number \" +\n \"`baker ads google keywords metrics` returns, not an independent reading of it. Quoting the two as agreeing \" +\n \"sources is not corroboration.\" +\n (clickstream\n ? \" clickstream_search_volume IS independent (DataForSEO's own panels); when the two disagree, say which one you are quoting.\"\n : \" For a genuinely independent estimate of demand, re-run with --clickstream (costs 2x), or use first-party data: \" +\n \"`baker gsc query` for what already reaches the site, or the account's own search terms.\");\n\n const hints = [provenance];\n\n const empty = rows.filter((row) => row.search_volume === null).map((row) => row.keyword);\n if (empty.length > 0) {\n hints.push(\n `${empty.length} of ${asked.length} keywords came back with no data in ${queryContext.location} / ${queryContext.language}: ` +\n `${empty.join(\", \")}. That is missing coverage, NOT zero demand — do not report them as unsearched, and do not ` +\n \"re-query them reworded. `baker research autocomplete` on the head term is the way to find the phrasing that market uses.\",\n );\n }\n\n return hints;\n}\n\n/**\n * The archive keeps a post's words the moment it is written and its points\n * only once it has settled, so a number on something young is not the number\n * Reddit shows. Said once, when it applies, so a count is never quoted as live.\n */\nconst ARCHIVE_NOTE =\n \"Read from the Reddit archive: the words are as posted, but points and comment counts on anything under ~36h old are as first captured — don't quote those numbers as current.\";\n\n/**\n * An empty Reddit search is almost always a phrasing miss, not a silent\n * audience: Reddit matches words, and people write in their own. A run that\n * came back empty on a posts search also never looked at the replies, which is\n * where most of the verbatim voice is.\n */\nexport function redditSearchHints({\n resultCount,\n kind,\n source,\n}: {\n resultCount: number;\n kind: \"posts\" | \"comments\";\n source: ResearchRedditSource;\n}): string[] {\n const hints: string[] = [];\n if (resultCount === 0) {\n hints.push(\n \"Nothing matched. Reddit search matches words, not meaning: try the audience's own phrasing (one distinctive word, \" +\n \"or a seed from `baker research autocomplete`), a longer --since window, or other subreddits — \" +\n '`baker research reddit subreddits \"<topic>\"` finds where the audience actually talks' +\n (kind === \"posts\" ? \", and try --kind comments — most of the voice is in the replies.\" : \".\"),\n );\n } else if (kind === \"posts\") {\n hints.push(\n \"Titles rarely carry the voice. Read the promising threads with `baker research reddit thread <permalink>` \" +\n \"for the replies, or search the replies directly with --kind comments.\",\n );\n }\n if (source === \"archive\" && resultCount > 0) hints.push(ARCHIVE_NOTE);\n return hints;\n}\n\n/** A thread whose replies no source would serve is still the post — but it must not read as a thread nobody answered. */\nexport function redditThreadHints({\n commentsShown,\n commentsAsked,\n commentCount,\n source,\n}: {\n commentsShown: number;\n commentsAsked: number;\n commentCount: number | null;\n source: ResearchRedditSource;\n}): string[] {\n const hints: string[] = [];\n if (commentsAsked > 0 && commentsShown === 0 && (commentCount ?? 0) > 0) {\n hints.push(\n `This thread has ${commentCount} comments but none could be read just now. Quote the post only, and don't describe the replies.`,\n );\n }\n if (source === \"archive\") hints.push(ARCHIVE_NOTE);\n return hints;\n}\n\nconst REDDIT_HOST = /(^|\\.)reddit\\.com$|^redd\\.it$/i;\n\n/**\n * A subreddit's member count is its size, not its pulse. The run that prompted\n * this command mined r/CouriersUK — a real subreddit, with one post in its whole\n * history — and found nothing. One dated search tells a living subreddit from a\n * dead one before it is relied on.\n */\nexport function redditSubredditsHints({ resultCount }: { resultCount: number }): string[] {\n if (resultCount === 0) {\n return [\n 'No subreddits matched. Try the audience\\'s role or the platform they work on (\"amazon flex\", \"deliveroo\", \"nurses\"), one word at a time, or a web search for `site:reddit.com <topic>`.',\n ];\n }\n return [\n 'Members say how big a subreddit is, not how active it is. Before mining one, run `baker research reddit search \"<word>\" --subreddit <name> --since <a recent date>`: nothing back means it is quiet, so pick another. `restricted` can still be read; `private` cannot.',\n ];\n}\n\n/** A Reddit link that does not lead to the words attributed to it. Shared by `reddit thread` and `fetch`. */\nexport const REDDIT_LINK_REJECTED: ResearchFix = {\n action: \"reject\",\n explanation:\n \"Do not quote anything attributed to this link — it does not lead to those words. Find the real thread with `baker research reddit search`, and if you already wrote a quote from it, remove it.\",\n};\n\n/**\n * `research fetch` hands a Reddit URL to the Reddit reader, but its generic\n * remediation was written for ordinary pages: FORBIDDEN reads \"this will not\n * open, carry on without it\" and NOT_FOUND \"carry on\". For Reddit both are the\n * wrong advice. A page the reader will not turn into a thread is one `reddit`\n * command away, and a link that leads nowhere real must not be quoted at all.\n */\nexport function redditPageFix(url: string, code: string): ResearchFix | null {\n let host: string;\n try {\n host = new URL(url).hostname;\n } catch {\n return null;\n }\n if (!REDDIT_HOST.test(host)) return null;\n if (code === \"NOT_FOUND\") return REDDIT_LINK_REJECTED;\n if (code !== \"FORBIDDEN\") return null;\n return {\n action: \"retry_with_changes\",\n explanation:\n 'Read Reddit with its own commands: `baker research reddit search \"<words>\" --subreddit <name>` to find what people said, `baker research reddit thread <url>` for one thread.',\n };\n}\n\n/**\n * `google-ads` replaces a browser trip through Google's Ads Transparency\n * Center, so its hints keep the agent out of one: no ads is an answer, and an\n * ad whose copy Google does not give is shown by its link, never opened.\n */\nexport function googleAdsHints({\n target,\n adCount,\n located,\n textWithoutCopy,\n copyAsked,\n copyUnread,\n visual,\n}: {\n target: string;\n adCount: number;\n located: boolean;\n textWithoutCopy: number;\n copyAsked: boolean;\n copyUnread: number;\n visual: number;\n}): string[] {\n if (adCount === 0) {\n return [\n `No Google ads point to ${target}${located ? \" in that region\" : \"\"} — that is the answer, not a failed call: ` +\n \"this competitor is not advertising on Google there, or its ads point to another domain. \" +\n (located ? \"Re-run once without --location to see every region; then move on. \" : \"Move on. \") +\n `Its paid search terms, if any: \\`baker research keywords-for-site ${target} --type paid\\`.`,\n ];\n }\n const hints: string[] = [];\n if (!copyAsked && textWithoutCopy > 0) {\n hints.push(\n `${textWithoutCopy} text ads came back without their words. Re-run with --copy to read the headline and description of up to ${RESEARCH_GOOGLE_ADS_MAX_COPY} (cached, so only the reading is new).`,\n );\n }\n const pastCap = copyAsked ? textWithoutCopy - copyUnread : 0;\n if (pastCap > 0) {\n hints.push(\n `${pastCap} text ads past the first ${RESEARCH_GOOGLE_ADS_MAX_COPY} were not read — one request reads at most ${RESEARCH_GOOGLE_ADS_MAX_COPY}. ` +\n \"Narrow with --since, --location or --platform google_search and re-run for their words.\",\n );\n }\n if (visual > 0 || copyUnread > 0) {\n const without = [\n visual > 0 ? `${visual} image or video ads (Google gives no text for those)` : \"\",\n copyUnread > 0 ? `${copyUnread} text ads whose image could not be read` : \"\",\n ].filter(Boolean);\n hints.push(\n `No copy for ${without.join(\" and \")}: show those by their \\`transparency_url\\`. ` +\n \"Do not open the Transparency Center in agent-browser to read them — it is the browser load this command exists to avoid.\",\n );\n }\n return hints;\n}\n"],"mappings":"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","names":[]}
@@ -6,7 +6,7 @@ import {
6
6
  calendarDaySchema,
7
7
  todayUtc,
8
8
  windowTooLong
9
- } from "./chunk-ASVKZQUU.js";
9
+ } from "./chunk-NDXBU22S.js";
10
10
 
11
11
  // ../api/src/accounts/crm.ts
12
12
  import { z } from "zod";
@@ -1076,4 +1076,4 @@ export {
1076
1076
  accountsCampaignsRequestSchema,
1077
1077
  ACCOUNTS_NO_SETTINGS_MESSAGE
1078
1078
  };
1079
- //# sourceMappingURL=chunk-633BRRZO.js.map
1079
+ //# sourceMappingURL=chunk-4NBVGARW.js.map
@@ -1,21 +1,21 @@
1
1
  import {
2
2
  nodeParamsPreview
3
- } from "./chunk-EZUG6WE2.js";
3
+ } from "./chunk-YDJMV7BC.js";
4
4
  import {
5
5
  creativeSlugFromCanvasPath,
6
6
  parseDefinitionSeriesPlace,
7
7
  parseDefinitionSourceFields,
8
8
  parseDefinitionStrategyFields
9
- } from "./chunk-XZPREXCE.js";
9
+ } from "./chunk-G4IHT42K.js";
10
10
  import {
11
11
  prepareCanvas
12
- } from "./chunk-NEZLPWD4.js";
12
+ } from "./chunk-6ZJ6IOG6.js";
13
13
  import {
14
14
  BackendClient
15
- } from "./chunk-HMEFD2CG.js";
15
+ } from "./chunk-AQYRPO4R.js";
16
16
  import {
17
17
  nodeDependencies
18
- } from "./chunk-RRUJQVWA.js";
18
+ } from "./chunk-MF5WL2MP.js";
19
19
  import {
20
20
  requireCredentialsFromEnv
21
21
  } from "./chunk-W3B4BHQU.js";
@@ -204,4 +204,4 @@ export {
204
204
  resolveCanvasPath,
205
205
  syncDefinitionCommand
206
206
  };
207
- //# sourceMappingURL=chunk-7RUYWECB.js.map
207
+ //# sourceMappingURL=chunk-5AHNAMHK.js.map
@@ -6,7 +6,7 @@ import {
6
6
  import {
7
7
  LINKEDIN_SEARCH_STATUSES,
8
8
  unsupportedLinkedinSearchStatuses
9
- } from "./chunk-ASVKZQUU.js";
9
+ } from "./chunk-NDXBU22S.js";
10
10
  import {
11
11
  ApiError
12
12
  } from "./chunk-XBOK23HI.js";
@@ -172,4 +172,4 @@ export {
172
172
  statusesArgDescription,
173
173
  resolveStatusFilter
174
174
  };
175
- //# sourceMappingURL=chunk-3U3RUPKR.js.map
175
+ //# sourceMappingURL=chunk-6DB2B3GF.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  latestVersion
3
- } from "./chunk-ZN63N3EP.js";
3
+ } from "./chunk-7TP3FPCF.js";
4
4
  import {
5
5
  canvasOutputsRoot
6
6
  } from "./chunk-HIPDMQZ6.js";
@@ -16,4 +16,4 @@ async function versionOf(slug, run) {
16
16
  export {
17
17
  versionOf
18
18
  };
19
- //# sourceMappingURL=chunk-OWK5WYFZ.js.map
19
+ //# sourceMappingURL=chunk-6XVYM47A.js.map
@@ -5,11 +5,11 @@ import {
5
5
  import {
6
6
  GENERIC_FAMILIES,
7
7
  resolveBrandFaces
8
- } from "./chunk-676WE6CY.js";
8
+ } from "./chunk-EH4C4CZK.js";
9
9
  import {
10
10
  LOGO_FILE,
11
11
  readWorkspaceBrandDoc
12
- } from "./chunk-ENUZU5LQ.js";
12
+ } from "./chunk-G7UTTEBS.js";
13
13
  import {
14
14
  holdUnbilledSpend
15
15
  } from "./chunk-K3PN7TN5.js";
@@ -62,7 +62,7 @@ import {
62
62
  staticRenderNodes,
63
63
  trimmedRenderBand,
64
64
  wordCount
65
- } from "./chunk-RRUJQVWA.js";
65
+ } from "./chunk-MF5WL2MP.js";
66
66
  import {
67
67
  ACTOR_SHEET_MODEL,
68
68
  AD_SPEC_SCHEMA,
@@ -96,7 +96,7 @@ import {
96
96
  unwrittenProblems,
97
97
  winningMechanisms,
98
98
  withRenderedLettering
99
- } from "./chunk-CLMM6P6B.js";
99
+ } from "./chunk-76KTC7RD.js";
100
100
  import {
101
101
  citedBy,
102
102
  citedPlatforms,
@@ -130,7 +130,7 @@ import {
130
130
  platformFormats,
131
131
  supportedAspectRatios,
132
132
  supportsLastFrame
133
- } from "./chunk-OBDAYP2P.js";
133
+ } from "./chunk-KY4MPR6R.js";
134
134
  import {
135
135
  askAboutText
136
136
  } from "./chunk-RX6F3GEA.js";
@@ -147,7 +147,7 @@ import {
147
147
  } from "./chunk-OTFHEHIU.js";
148
148
  import {
149
149
  brandTokensSchema
150
- } from "./chunk-ASVKZQUU.js";
150
+ } from "./chunk-NDXBU22S.js";
151
151
  import {
152
152
  optionalConnection
153
153
  } from "./chunk-NAWWC5I3.js";
@@ -6662,4 +6662,4 @@ export {
6662
6662
  prepareCanvas,
6663
6663
  exitOnPrepareError
6664
6664
  };
6665
- //# sourceMappingURL=chunk-NEZLPWD4.js.map
6665
+ //# sourceMappingURL=chunk-6ZJ6IOG6.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-HO3IUJ4K.js";
4
4
  import {
5
5
  REFERENCE_SHEET_MODEL
6
- } from "./chunk-OBDAYP2P.js";
6
+ } from "./chunk-KY4MPR6R.js";
7
7
 
8
8
  // src/engine/scaffold/lib/elements.ts
9
9
  var ACTOR_SHEET_MODEL = REFERENCE_SHEET_MODEL;
@@ -1748,4 +1748,4 @@ export {
1748
1748
  adSpecFromBlueprint,
1749
1749
  adSpecJsonSchema
1750
1750
  };
1751
- //# sourceMappingURL=chunk-CLMM6P6B.js.map
1751
+ //# sourceMappingURL=chunk-76KTC7RD.js.map
@@ -23,7 +23,7 @@ import {
23
23
  } from "./chunk-VVZBBKRC.js";
24
24
  import {
25
25
  videosIngestRequestSchema
26
- } from "./chunk-ASVKZQUU.js";
26
+ } from "./chunk-NDXBU22S.js";
27
27
  import {
28
28
  ApiError,
29
29
  apiPost
@@ -360,4 +360,4 @@ export {
360
360
  runVideoIngest,
361
361
  ingestHints
362
362
  };
363
- //# sourceMappingURL=chunk-AST5XJKZ.js.map
363
+ //# sourceMappingURL=chunk-7SDFKGQ4.js.map
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  prepareCanvas,
3
3
  unsuppliedPlaceholderAssets
4
- } from "./chunk-NEZLPWD4.js";
4
+ } from "./chunk-6ZJ6IOG6.js";
5
5
  import {
6
6
  isSourceStale
7
- } from "./chunk-ASVKZQUU.js";
7
+ } from "./chunk-NDXBU22S.js";
8
8
 
9
9
  // src/commands/canvas/render-state.ts
10
10
  import { mkdir, readdir, readFile, rm, writeFile } from "fs/promises";
@@ -108,4 +108,4 @@ export {
108
108
  staleCreatives,
109
109
  clearLegacyDirtyMarker
110
110
  };
111
- //# sourceMappingURL=chunk-ZN63N3EP.js.map
111
+ //# sourceMappingURL=chunk-7TP3FPCF.js.map
@@ -13,7 +13,7 @@ import {
13
13
  MAX_EVENT_NAME,
14
14
  REJECTION_CODES,
15
15
  STANDARD_EVENT_NAMES
16
- } from "./chunk-ASVKZQUU.js";
16
+ } from "./chunk-NDXBU22S.js";
17
17
 
18
18
  // ../api/src/event-ingest/arrivals.ts
19
19
  import { z } from "zod";
@@ -430,4 +430,4 @@ export {
430
430
  eventIngestUrl,
431
431
  ingestBrief
432
432
  };
433
- //# sourceMappingURL=chunk-X5TFU7ET.js.map
433
+ //# sourceMappingURL=chunk-ANCSKUWI.js.map
@@ -19,7 +19,7 @@ import {
19
19
  topologicalLayers,
20
20
  validateCanvas,
21
21
  validateCanvasDeep
22
- } from "./chunk-RRUJQVWA.js";
22
+ } from "./chunk-MF5WL2MP.js";
23
23
  import {
24
24
  remoteCacheEnabledFromEnv
25
25
  } from "./chunk-W3B4BHQU.js";
@@ -28,7 +28,7 @@ import {
28
28
  nativeSurfaceHtml,
29
29
  readAdSpec,
30
30
  readInterfaceWords
31
- } from "./chunk-CLMM6P6B.js";
31
+ } from "./chunk-76KTC7RD.js";
32
32
  import {
33
33
  FRAME_CUT,
34
34
  bandViolations,
@@ -43,7 +43,7 @@ import {
43
43
  roleKey,
44
44
  shownBoxes,
45
45
  withWordmark
46
- } from "./chunk-4SJDDGPV.js";
46
+ } from "./chunk-GTRZUWT2.js";
47
47
  import {
48
48
  AD_FORMAT_PLATFORMS,
49
49
  DEFAULT_MUSIC_SECONDS,
@@ -61,7 +61,7 @@ import {
61
61
  imagePictureCredits,
62
62
  modelIdsAccepted,
63
63
  resolveAdaptFormats
64
- } from "./chunk-OBDAYP2P.js";
64
+ } from "./chunk-KY4MPR6R.js";
65
65
  import {
66
66
  AudioRef,
67
67
  FontRef,
@@ -5160,4 +5160,4 @@ export {
5160
5160
  defaultRegistry,
5161
5161
  createEngineFromEnv
5162
5162
  };
5163
- //# sourceMappingURL=chunk-HMEFD2CG.js.map
5163
+ //# sourceMappingURL=chunk-AQYRPO4R.js.map
@@ -2,7 +2,7 @@ import {
2
2
  mediaTagsCreateRequestSchema,
3
3
  mediaTagsDeleteRequestSchema,
4
4
  mediaTagsUpdateRequestSchema
5
- } from "./chunk-ASVKZQUU.js";
5
+ } from "./chunk-NDXBU22S.js";
6
6
  import {
7
7
  ApiError,
8
8
  apiGet,
@@ -194,4 +194,4 @@ Examples:
194
194
  export {
195
195
  makeTagsCommand
196
196
  };
197
- //# sourceMappingURL=chunk-ML3ZIQ7K.js.map
197
+ //# sourceMappingURL=chunk-BA7FDXQC.js.map
@@ -5,7 +5,7 @@ import {
5
5
  FLOW_SECRET_FIELDS,
6
6
  FLOW_SECRET_SIDE_EFFECT_TYPES,
7
7
  isFlowOauthSideEffect
8
- } from "./chunk-ASVKZQUU.js";
8
+ } from "./chunk-NDXBU22S.js";
9
9
  import {
10
10
  writeJson
11
11
  } from "./chunk-NU7JSWVA.js";
@@ -214,4 +214,4 @@ export {
214
214
  stepNameKey,
215
215
  isUsableStepNameKey
216
216
  };
217
- //# sourceMappingURL=chunk-MJABIGKT.js.map
217
+ //# sourceMappingURL=chunk-BSC33FLJ.js.map
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-27NMXSC3.js";
6
6
  import {
7
7
  AD_SPEC_SCHEMA
8
- } from "./chunk-CLMM6P6B.js";
8
+ } from "./chunk-76KTC7RD.js";
9
9
 
10
10
  // src/commands/creatives/make-model.ts
11
11
  import { parse, parseDocument, Scalar, visit } from "yaml";
@@ -128,4 +128,4 @@ export {
128
128
  unsourcedCopyLines,
129
129
  ideaSpec
130
130
  };
131
- //# sourceMappingURL=chunk-QJE6ZYGI.js.map
131
+ //# sourceMappingURL=chunk-CWX4PPOK.js.map
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  finalOutputLabelsFromCanvas,
3
3
  parseDefinitionStrategyFields
4
- } from "./chunk-XZPREXCE.js";
4
+ } from "./chunk-G4IHT42K.js";
5
5
  import {
6
6
  readRenderState
7
- } from "./chunk-ZN63N3EP.js";
7
+ } from "./chunk-7TP3FPCF.js";
8
8
  import {
9
9
  STATIC_AD_ROLE,
10
10
  formatOfAdaptId,
@@ -12,10 +12,10 @@ import {
12
12
  isSignatureLine,
13
13
  sameTag,
14
14
  seriesMemberAd
15
- } from "./chunk-NEZLPWD4.js";
15
+ } from "./chunk-6ZJ6IOG6.js";
16
16
  import {
17
17
  fetchRunRecord
18
- } from "./chunk-GZVZ7CQI.js";
18
+ } from "./chunk-VDHQJ6HD.js";
19
19
  import {
20
20
  localPathParam
21
21
  } from "./chunk-HIPDMQZ6.js";
@@ -30,11 +30,11 @@ import {
30
30
  nodesWithRole,
31
31
  relaidPictureRole,
32
32
  rolesById
33
- } from "./chunk-RRUJQVWA.js";
33
+ } from "./chunk-MF5WL2MP.js";
34
34
  import {
35
35
  isAdSpec,
36
36
  readAdSpec
37
- } from "./chunk-CLMM6P6B.js";
37
+ } from "./chunk-76KTC7RD.js";
38
38
 
39
39
  // src/commands/baker-child.ts
40
40
  import { execFile } from "child_process";
@@ -443,4 +443,4 @@ export {
443
443
  writeSeriesMemberCanvas,
444
444
  seriesRunHints
445
445
  };
446
- //# sourceMappingURL=chunk-7H2VLDYU.js.map
446
+ //# sourceMappingURL=chunk-CZOSF52Z.js.map
@@ -12,7 +12,7 @@ import {
12
12
  onlyCondition,
13
13
  triggerProblem,
14
14
  validateEventName
15
- } from "./chunk-ASVKZQUU.js";
15
+ } from "./chunk-NDXBU22S.js";
16
16
 
17
17
  // ../api/src/event-sources/hubspot.ts
18
18
  var HUBSPOT_CONTACT_ID_VARIABLE = "id";
@@ -307,4 +307,4 @@ export {
307
307
  hubspotDefaultMapping,
308
308
  hubspotTriggerInputSchema
309
309
  };
310
- //# sourceMappingURL=chunk-7LT6UP2W.js.map
310
+ //# sourceMappingURL=chunk-DKGTQSLR.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  ACTION_TEMP_ID_PREFIX
3
- } from "./chunk-ASVKZQUU.js";
3
+ } from "./chunk-NDXBU22S.js";
4
4
  import {
5
5
  ApiError
6
6
  } from "./chunk-XBOK23HI.js";
@@ -160,4 +160,4 @@ export {
160
160
  ACTIONS_LIST_DEFAULT_LIMIT,
161
161
  buildListHints
162
162
  };
163
- //# sourceMappingURL=chunk-DQPTUBCB.js.map
163
+ //# sourceMappingURL=chunk-E4MDJBLO.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  parseBrandTokens
3
- } from "./chunk-ENUZU5LQ.js";
3
+ } from "./chunk-G7UTTEBS.js";
4
4
 
5
5
  // src/engine/brand/fonts.ts
6
6
  import { posix } from "path";
@@ -452,4 +452,4 @@ export {
452
452
  stripFontFaceBlocks,
453
453
  upsertFontFaceCss
454
454
  };
455
- //# sourceMappingURL=chunk-676WE6CY.js.map
455
+ //# sourceMappingURL=chunk-EH4C4CZK.js.map