@koda-sl/baker-cli 0.457.0 → 0.458.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 (1306) hide show
  1. package/README.md +29 -10
  2. package/dist/account-CZWMPCRJ.js +79 -0
  3. package/dist/account-F2D257QB.js +49 -0
  4. package/dist/account-VGIKDAK3.js +80 -0
  5. package/dist/account-reads-OS6RLJFJ.js +218 -0
  6. package/dist/account-writes-7HZJWI5U.js +66 -0
  7. package/dist/accounts-25JDCWKR.js +75 -0
  8. package/dist/accounts-4IIILFLV.js +115 -0
  9. package/dist/accounts-6GNGCHU7.js +77 -0
  10. package/dist/accounts-X5MPAWZX.js +114 -0
  11. package/dist/accounts-Z45QINO4.js +611 -0
  12. package/dist/actions-CLFWCFFA.js +55 -0
  13. package/dist/active-entities-V2K2S3UY.js +103 -0
  14. package/dist/activities-CUVZGTGA.js +74 -0
  15. package/dist/ad-group-writes-GG3BUQQY.js +170 -0
  16. package/dist/ad-groups-KRZ6YX7O.js +68 -0
  17. package/dist/ad-writes-YDMS7NPG.js +174 -0
  18. package/dist/add-7P4VYS7R.js +302 -0
  19. package/dist/add-BHLEFGCG.js +97 -0
  20. package/dist/add-LHAZ34ZF.js +105 -0
  21. package/dist/add-PC7YGO2Z.js +104 -0
  22. package/dist/ads-5SGFPSQL.js +113 -0
  23. package/dist/ads-CP4VTPKO.js +77 -0
  24. package/dist/ads-FYSAF7HG.js +130 -0
  25. package/dist/ads-FYSAF7HG.js.map +1 -0
  26. package/dist/ads-Q54IPFAS.js +40 -0
  27. package/dist/adsets-4RXF4YXR.js +176 -0
  28. package/dist/advertisers-JDUAIACQ.js +125 -0
  29. package/dist/advertisers-JDUAIACQ.js.map +1 -0
  30. package/dist/advertisers-LAIOXSCF.js +120 -0
  31. package/dist/analytics-7M6JSC2C.js +1976 -0
  32. package/dist/analytics-7RGPJKUD.js +433 -0
  33. package/dist/animate-PYYWDHQ2.js +480 -0
  34. package/dist/assign-4UP6F6UX.js +77 -0
  35. package/dist/audience-size-AYNVGVBR.js +94 -0
  36. package/dist/audiences-6QF625VZ.js +268 -0
  37. package/dist/audiences-B2ZSJSOJ.js +78 -0
  38. package/dist/audiences-S6IHCG3G.js +85 -0
  39. package/dist/audit-43GSHWBO.js +151 -0
  40. package/dist/audit-IJUKCS2K.js +88 -0
  41. package/dist/autocomplete-YVP3WOFQ.js +111 -0
  42. package/dist/avatars-O64BDZHC.js +38 -0
  43. package/dist/bid-pricing-GMEWVIQP.js +99 -0
  44. package/dist/brand-W55FHWU6.js +22 -0
  45. package/dist/brief-QH7Z6QBP.js +491 -0
  46. package/dist/brief-QH7Z6QBP.js.map +1 -0
  47. package/dist/businesses-ZFP263RY.js +53 -0
  48. package/dist/campaign-groups-XPYTQFNQ.js +95 -0
  49. package/dist/campaign-writes-7MFHQAAI.js +165 -0
  50. package/dist/campaign-writes-APYVRCNH.js +170 -0
  51. package/dist/campaigns-ANQW3YDH.js +76 -0
  52. package/dist/campaigns-LXSVJEXI.js +109 -0
  53. package/dist/campaigns-UN3XB6TJ.js +107 -0
  54. package/dist/campaigns-YPI4KS7U.js +110 -0
  55. package/dist/canvas-GPXU2ZSC.js +46 -0
  56. package/dist/capabilities-HD2T6H24.js +144 -0
  57. package/dist/cards-QRX43TGI.js +85 -0
  58. package/dist/catalog-CRIYIXOJ.js +65 -0
  59. package/dist/catalogs-D677AN33.js +128 -0
  60. package/dist/changes-PWBOKKNL.js +135 -0
  61. package/dist/chatgpt-RYL44ASK.js +47 -0
  62. package/dist/chats-OQ6JOASV.js +262 -0
  63. package/dist/chunk-2QLNGCFZ.js +175 -0
  64. package/dist/chunk-2V2M2CHS.js +225 -0
  65. package/dist/chunk-35QYDREI.js +160 -0
  66. package/dist/chunk-3BG2BVWN.js +622 -0
  67. package/dist/chunk-3FOE4P6A.js +28 -0
  68. package/dist/chunk-3JX4NUGF.js +45 -0
  69. package/dist/chunk-3KN3VCS3.js +1711 -0
  70. package/dist/chunk-3QLACKNX.js +310 -0
  71. package/dist/chunk-54VIXBLO.js +46 -0
  72. package/dist/chunk-5IQL24NI.js +76 -0
  73. package/dist/chunk-5TOKIRCD.js +1441 -0
  74. package/dist/chunk-5URIFBIL.js +75 -0
  75. package/dist/chunk-5Z6SSOLG.js +188 -0
  76. package/dist/chunk-6C4S466W.js +486 -0
  77. package/dist/chunk-6HLPM7U3.js +191 -0
  78. package/dist/chunk-6R7CMUIZ.js +74 -0
  79. package/dist/chunk-6XPBHM5P.js +84 -0
  80. package/dist/chunk-6ZEFXZRD.js +274 -0
  81. package/dist/chunk-73JXX4LJ.js +136 -0
  82. package/dist/chunk-A2PTD6FL.js +166 -0
  83. package/dist/chunk-AGEJ7IJG.js +592 -0
  84. package/dist/chunk-APY53DKV.js +304 -0
  85. package/dist/chunk-BJ4SHBS2.js +207 -0
  86. package/dist/chunk-BXKJZBBJ.js +125 -0
  87. package/dist/chunk-C26QSQXP.js +57 -0
  88. package/dist/chunk-C2DAPBYB.js +4410 -0
  89. package/dist/chunk-D2JOBGBD.js +541 -0
  90. package/dist/chunk-DE64GHEP.js +74 -0
  91. package/dist/chunk-E4ICSNSW.js +215 -0
  92. package/dist/chunk-EIAA3XTT.js +275 -0
  93. package/dist/chunk-EMLM2TKM.js +6667 -0
  94. package/dist/chunk-EOWMPN3Q.js +51 -0
  95. package/dist/chunk-F66W4QQL.js +92 -0
  96. package/dist/chunk-FCADB4RG.js +535 -0
  97. package/dist/chunk-FCADB4RG.js.map +1 -0
  98. package/dist/chunk-FIBL3EZN.js +197 -0
  99. package/dist/chunk-FJDTR2IN.js +363 -0
  100. package/dist/chunk-FNKOQQ2U.js +42 -0
  101. package/dist/chunk-FZKC65TR.js +455 -0
  102. package/dist/chunk-G4PE563Y.js +309 -0
  103. package/dist/chunk-G6UBBPH3.js +106 -0
  104. package/dist/chunk-GKUIGEY6.js +56 -0
  105. package/dist/chunk-GQPGUJZ2.js +76 -0
  106. package/dist/chunk-GQPGUJZ2.js.map +1 -0
  107. package/dist/chunk-GWFJAVWD.js +97 -0
  108. package/dist/chunk-HHLEPWHB.js +433 -0
  109. package/dist/chunk-HMKVVPWY.js +333 -0
  110. package/dist/chunk-HMVVNB23.js +76 -0
  111. package/dist/chunk-ICFITD5H.js +31 -0
  112. package/dist/chunk-IDEFDDTX.js +819 -0
  113. package/dist/chunk-IFZD2MDE.js +474 -0
  114. package/dist/chunk-IFZD2MDE.js.map +1 -0
  115. package/dist/chunk-IH4NS3NT.js +172 -0
  116. package/dist/chunk-ITYFVNLA.js +846 -0
  117. package/dist/chunk-IX6PPPOS.js +346 -0
  118. package/dist/chunk-JM6XT33N.js +1079 -0
  119. package/dist/chunk-JTSYEIHY.js +103 -0
  120. package/dist/chunk-K63BDJYR.js +136 -0
  121. package/dist/chunk-KNX2UBLI.js +610 -0
  122. package/dist/chunk-KPHBHRJY.js +149 -0
  123. package/dist/chunk-KWMCE3Q2.js +23 -0
  124. package/dist/chunk-KYQZM5FB.js +1830 -0
  125. package/dist/chunk-LAAJ3V67.js +159 -0
  126. package/dist/chunk-LCMGWIEQ.js +296 -0
  127. package/dist/chunk-MNCMAJKB.js +337 -0
  128. package/dist/chunk-N3DLCXMB.js +98 -0
  129. package/dist/chunk-NKU7RLAI.js +169 -0
  130. package/dist/chunk-NWAFH7K3.js +98 -0
  131. package/dist/chunk-NYVO4TND.js +26 -0
  132. package/dist/chunk-O5MNUL7C.js +509 -0
  133. package/dist/chunk-O5RBFETA.js +665 -0
  134. package/dist/chunk-ODMKCAAQ.js +111 -0
  135. package/dist/chunk-OIS3WG2U.js +65 -0
  136. package/dist/chunk-OIS3WG2U.js.map +1 -0
  137. package/dist/chunk-OL4RPZ64.js +96 -0
  138. package/dist/chunk-OP2OMNVN.js +106 -0
  139. package/dist/chunk-P5V7NXMY.js +25 -0
  140. package/dist/chunk-Q3PB5ZUT.js +172 -0
  141. package/dist/chunk-QT7FKFNS.js +60 -0
  142. package/dist/chunk-R5VW2ACF.js +494 -0
  143. package/dist/chunk-RGE7STV4.js +3153 -0
  144. package/dist/chunk-RIXGQIMZ.js +84 -0
  145. package/dist/chunk-RWEVT5SO.js +133 -0
  146. package/dist/chunk-S3TSJQOJ.js +96 -0
  147. package/dist/chunk-SMVHUBXE.js +66 -0
  148. package/dist/chunk-SZX5LUHK.js +94 -0
  149. package/dist/chunk-TG63NMMW.js +58 -0
  150. package/dist/chunk-TOYLG3ZY.js +214 -0
  151. package/dist/chunk-TZKJNSZH.js +55 -0
  152. package/dist/chunk-U57KAPAJ.js +74 -0
  153. package/dist/chunk-VAOMHPEX.js +936 -0
  154. package/dist/chunk-VAOMHPEX.js.map +1 -0
  155. package/dist/chunk-VFME5MT5.js +297 -0
  156. package/dist/chunk-WCHPZD64.js +5189 -0
  157. package/dist/chunk-WHOS7L4N.js +19 -0
  158. package/dist/chunk-WOB3ESBQ.js +67 -0
  159. package/dist/chunk-XM75RTFZ.js +1599 -0
  160. package/dist/chunk-XUGTYYXY.js +174 -0
  161. package/dist/chunk-XX5DXKEI.js +206 -0
  162. package/dist/chunk-Y4V55WFQ.js +23992 -0
  163. package/dist/chunk-YKSIHGIL.js +454 -0
  164. package/dist/chunk-YOLNNZ77.js +382 -0
  165. package/dist/chunk-ZJVHZHYP.js +6188 -0
  166. package/dist/chunk-ZJVHZHYP.js.map +1 -0
  167. package/dist/chunk-ZW6EMA2U.js +139 -0
  168. package/dist/chunk-ZZFYDAJQ.js +981 -0
  169. package/dist/chunk-ZZFYDAJQ.js.map +1 -0
  170. package/dist/claim-B6LWKULS.js +197 -0
  171. package/dist/cli.js +36 -36
  172. package/dist/client-DUZXHJAT.js +19 -0
  173. package/dist/code-BQCH5ARZ.js +76 -0
  174. package/dist/companies-BC6TCRXY.js +195 -0
  175. package/dist/complete-Y7ZAKY62.js +81 -0
  176. package/dist/config-2NKM5GSZ.js +88 -0
  177. package/dist/connect-4WXSJAIK.js +42 -0
  178. package/dist/content-MJ3W6FKW.js +85 -0
  179. package/dist/content-MJ3W6FKW.js.map +1 -0
  180. package/dist/conversation-SEVRAH5J.js +93 -0
  181. package/dist/conversion-report-KLP2PJKJ.js +125 -0
  182. package/dist/conversion-upload-command-KB6ME34E.js +438 -0
  183. package/dist/conversion-writes-LO24U7NW.js +120 -0
  184. package/dist/conversions-OC2UHXG7.js +135 -0
  185. package/dist/conversions-QBWE4C5T.js +76 -0
  186. package/dist/countries-F67IA6DF.js +82 -0
  187. package/dist/create-BPHBGMFM.js +59 -0
  188. package/dist/create-IGZH5OFP.js +235 -0
  189. package/dist/create-NLNOXZ2T.js +130 -0
  190. package/dist/create-YX3YN4SU.js +207 -0
  191. package/dist/creatives-4N6RRVBP.js +87 -0
  192. package/dist/creatives-ESTFGCVQ.js +182 -0
  193. package/dist/creatives-ZDWQ7AP3.js +51 -0
  194. package/dist/credentials-GA4ZW4QL.js +287 -0
  195. package/dist/critique-IJG6WBDW.js +1449 -0
  196. package/dist/critique-SYBZXBHJ.js +213 -0
  197. package/dist/crm-2P7WHZBW.js +224 -0
  198. package/dist/crm-SVDB2XHW.js +318 -0
  199. package/dist/crop-ZAYOFRSS.js +113 -0
  200. package/dist/currency-UWW5QJGL.js +88 -0
  201. package/dist/custom-conversions-2BG2VUOY.js +125 -0
  202. package/dist/customers-2LZ3HG3V.js +56 -0
  203. package/dist/delete-A3JJJHC6.js +63 -0
  204. package/dist/delete-ER3LIA3F.js +71 -0
  205. package/dist/delete-HVCQQSG4.js +71 -0
  206. package/dist/delete-QPPPLHS4.js +54 -0
  207. package/dist/delete-T22GD7FG.js +69 -0
  208. package/dist/delete-VZUF57KL.js +66 -0
  209. package/dist/demographics-3KAK7JGZ.js +138 -0
  210. package/dist/describe-ADQWM55K.js +97 -0
  211. package/dist/describe-XEGTSEUI.js +97 -0
  212. package/dist/dimensions-WQZBBY7I.js +101 -0
  213. package/dist/discard-VU72HO4B.js +66 -0
  214. package/dist/discover-HXKIQWH2.js +172 -0
  215. package/dist/domain-ERWROFZC.js +98 -0
  216. package/dist/download-7Z3BWAHR.js +299 -0
  217. package/dist/draft-3V3HOB5N.js +217 -0
  218. package/dist/draft-4TCT6UQD.js +103 -0
  219. package/dist/draft-5YJY6YT5.js +328 -0
  220. package/dist/draft-7LIGULA2.js +100 -0
  221. package/dist/draft-C2DDLJH2.js +307 -0
  222. package/dist/draft-FCCYMFKW.js +281 -0
  223. package/dist/draft-FELTG6LD.js +306 -0
  224. package/dist/draft-JIFFSL5U.js +233 -0
  225. package/dist/engine/index.js +13 -13
  226. package/dist/env-IUF4DTG2.js +43 -0
  227. package/dist/experiment-T3H6LFLK.js +1397 -0
  228. package/dist/export-V7WQJD4L.js +168 -0
  229. package/dist/extract-WW7WLLRB.js +113 -0
  230. package/dist/facets-J4JLHESD.js +114 -0
  231. package/dist/favorites-XLCT5S6E.js +178 -0
  232. package/dist/feed-PG6AXUYA.js +179 -0
  233. package/dist/feed-PG6AXUYA.js.map +1 -0
  234. package/dist/feedback-J6FSCCWF.js +66 -0
  235. package/dist/feedback-record-4AY3MG2E.js +175 -0
  236. package/dist/fetch-C4JYRA53.js +139 -0
  237. package/dist/fetch-QIHGIATQ.js +176 -0
  238. package/dist/find-SLZO4FBR.js +134 -0
  239. package/dist/fit-SSR3JDDI.js +45 -0
  240. package/dist/flows-IRFHGBUR.js +247 -0
  241. package/dist/follow-EKNBOS7Z.js +82 -0
  242. package/dist/follow-EKNBOS7Z.js.map +1 -0
  243. package/dist/follow-competitors-OYQXYSI5.js +131 -0
  244. package/dist/follow-competitors-OYQXYSI5.js.map +1 -0
  245. package/dist/following-M3C3XSHY.js +113 -0
  246. package/dist/following-M3C3XSHY.js.map +1 -0
  247. package/dist/fonts-ZU5Q4A6U.js +34 -0
  248. package/dist/forecast-KVPAU7OT.js +104 -0
  249. package/dist/forecast-XGBT722Z.js +168 -0
  250. package/dist/funding-BWSGYQPP.js +85 -0
  251. package/dist/funnel-JXC5WXLR.js +394 -0
  252. package/dist/ga4-XWK5H7HN.js +55 -0
  253. package/dist/generate-E6YDVJ23.js +262 -0
  254. package/dist/get-23E7ZEKP.js +56 -0
  255. package/dist/get-HXJSMHDC.js +61 -0
  256. package/dist/get-IWYF6PA4.js +78 -0
  257. package/dist/get-JGCMBA7Y.js +63 -0
  258. package/dist/get-QLFMRSLN.js +59 -0
  259. package/dist/get-XWIA6BEO.js +63 -0
  260. package/dist/get-ZLSZTGXA.js +92 -0
  261. package/dist/gif-KHF452GC.js +94 -0
  262. package/dist/google-5GESCEKC.js +136 -0
  263. package/dist/google-KTDHD75U.js +3190 -0
  264. package/dist/google-ads-VW5UGOGO.js +195 -0
  265. package/dist/group-JYNKEOPG.js +43 -0
  266. package/dist/group-ZMCHUQMI.js +43 -0
  267. package/dist/gsc-I6RIFE7I.js +30 -0
  268. package/dist/history-F3N6M4JM.js +67 -0
  269. package/dist/history-IAKV2LJN.js +133 -0
  270. package/dist/hubspot-QVDLE3BF.js +779 -0
  271. package/dist/icon-4C2JOBPE.js +137 -0
  272. package/dist/ideas-7COQX7C3.js +32 -0
  273. package/dist/images-5XNXXZLM.js +90 -0
  274. package/dist/improve-6VC6ORAG.js +86 -0
  275. package/dist/ingest-L6MMXL6R.js +23 -0
  276. package/dist/ingest-UP42M3WU.js +107 -0
  277. package/dist/insights-3H736QZH.js +122 -0
  278. package/dist/insights-3TEVP4B2.js +423 -0
  279. package/dist/inspect-2WOLOPTV.js +189 -0
  280. package/dist/inspiration-I2XMXXEW.js +53 -0
  281. package/dist/intent-IYUKLNST.js +95 -0
  282. package/dist/job-MTHK2PPN.js +202 -0
  283. package/dist/job-create-AD3L6A6F.js +109 -0
  284. package/dist/job-status-MCFOA5V3.js +74 -0
  285. package/dist/keep-NNATO2B6.js +78 -0
  286. package/dist/keyword-gap-RSITTJ56.js +130 -0
  287. package/dist/keyword-metrics-E5D2ESIH.js +197 -0
  288. package/dist/keywords-for-site-SRUKRBCR.js +128 -0
  289. package/dist/landing-ZFZ4LYCB.js +28 -0
  290. package/dist/landings-JJELYF4P.js +143 -0
  291. package/dist/landings-JJELYF4P.js.map +1 -0
  292. package/dist/languages-3FETIHSB.js +55 -0
  293. package/dist/languages-SJ6ZWALA.js +40 -0
  294. package/dist/launches-ZZ7ST4SY.js +108 -0
  295. package/dist/launches-ZZ7ST4SY.js.map +1 -0
  296. package/dist/layerize-NSF6NEWY.js +190 -0
  297. package/dist/leads-EVFLPNG6.js +293 -0
  298. package/dist/leads-P46ND2LT.js +90 -0
  299. package/dist/learn-EJSMXKSE.js +203 -0
  300. package/dist/library-UKGHGGOG.js +109 -0
  301. package/dist/lighthouse-B2IBNWLX.js +75 -0
  302. package/dist/line-item-writes-EM6I5KIH.js +208 -0
  303. package/dist/line-items-GLNMIKM5.js +103 -0
  304. package/dist/link-CZ4XFU2D.js +64 -0
  305. package/dist/linkedin-ES3KPPHF.js +1008 -0
  306. package/dist/list-3IJMAQHX.js +51 -0
  307. package/dist/list-B7GN44R3.js +63 -0
  308. package/dist/list-BDPUPCQZ.js +57 -0
  309. package/dist/list-HGQY4OHN.js +151 -0
  310. package/dist/list-JD7EIBPU.js +303 -0
  311. package/dist/list-NZZ75O6C.js +65 -0
  312. package/dist/list-XBYKFXS3.js +76 -0
  313. package/dist/list-XRON5I6M.js +50 -0
  314. package/dist/locations-M2665NGJ.js +40 -0
  315. package/dist/locations-TKPILKLO.js +67 -0
  316. package/dist/log-KUHIZL53.js +92 -0
  317. package/dist/logo-EVE3TAL5.js +18 -0
  318. package/dist/lookup-Z5TFHYDU.js +22 -0
  319. package/dist/make-ISUBJILH.js +634 -0
  320. package/dist/make-ISUBJILH.js.map +1 -0
  321. package/dist/map-NNMEQE6E.js +404 -0
  322. package/dist/mcp-AJDXG3NV.js +463 -0
  323. package/dist/media-DGNFOT7M.js +89 -0
  324. package/dist/media-FRNTELKI.js +15 -0
  325. package/dist/media-sources-V452RJ6B.js +32 -0
  326. package/dist/members-VUJ62KJQ.js +44 -0
  327. package/dist/meta-NGBLUNVU.js +69 -0
  328. package/dist/metrics-QRRK473C.js +152 -0
  329. package/dist/models-4BTFIZZZ.js +155 -0
  330. package/dist/normalize-O47OIEUO.js +806 -0
  331. package/dist/normalize-OTNIBYUO.js +141 -0
  332. package/dist/options-FTXE6HFT.js +121 -0
  333. package/dist/output-W473ZLGR.js +24 -0
  334. package/dist/page-7TEJ5NA5.js +105 -0
  335. package/dist/pages-S2E3FHDH.js +66 -0
  336. package/dist/performance-IMD2N7OD.js +24 -0
  337. package/dist/pinterest-DQC3JXQT.js +96 -0
  338. package/dist/pixels-M5GS7DIH.js +60 -0
  339. package/dist/pixels-MHH4N35F.js +108 -0
  340. package/dist/plan-GGLBOLIU.js +207 -0
  341. package/dist/preview-AHDEJO2X.js +169 -0
  342. package/dist/profile-2TPKFD4Y.js +131 -0
  343. package/dist/profile-2TPKFD4Y.js.map +1 -0
  344. package/dist/promoted-tweet-writes-XUM4WGZH.js +180 -0
  345. package/dist/promoted-tweets-TIHMJ5PU.js +119 -0
  346. package/dist/properties-KOY2GE45.js +101 -0
  347. package/dist/publish-Q7MHUVVZ.js +322 -0
  348. package/dist/query-EO7BX4MH.js +236 -0
  349. package/dist/query-QZWMKAJZ.js +247 -0
  350. package/dist/query-XLTRAAQO.js +61 -0
  351. package/dist/questionnaire-BL3G6UYL.js +93 -0
  352. package/dist/read-ZMNYD3PA.js +141 -0
  353. package/dist/reddit-RO3VKMJ7.js +26 -0
  354. package/dist/refresh-OER4JT3Q.js +94 -0
  355. package/dist/release-4DLGFSYY.js +60 -0
  356. package/dist/relevant-pages-ZGGWFDLL.js +99 -0
  357. package/dist/remove-MQ3JY36P.js +48 -0
  358. package/dist/remove-WENY6GQU.js +50 -0
  359. package/dist/reopen-VSVK5EZI.js +63 -0
  360. package/dist/rerun-B32CIKVH.js +85 -0
  361. package/dist/research-2XAQRMC3.js +62 -0
  362. package/dist/research-ZEIW667A.js +262 -0
  363. package/dist/reset-DXBESBL7.js +54 -0
  364. package/dist/reset-G4A52FMR.js +54 -0
  365. package/dist/resolve-FA6CFVX4.js +121 -0
  366. package/dist/retry-CXTOGFZT.js +60 -0
  367. package/dist/retry-THMD27CA.js +62 -0
  368. package/dist/retry-failed-3R35LZ6I.js +45 -0
  369. package/dist/run-HRSNUGWJ.js +60 -0
  370. package/dist/run-NYJUDS32.js +65 -0
  371. package/dist/scaffold-ad-RUJQIYQH.js +1549 -0
  372. package/dist/scaffold-static-ad-36KRZNWU.js +973 -0
  373. package/dist/scaffold-static-ad-36KRZNWU.js.map +1 -0
  374. package/dist/scaffold-video-RYVG4IFA.js +873 -0
  375. package/dist/schedule-ENH4N66R.js +61 -0
  376. package/dist/schedule-KSIMVG5U.js +66 -0
  377. package/dist/scheduled-agents-RM24BRGD.js +49 -0
  378. package/dist/schema-JJVSWKGP.js +132 -0
  379. package/dist/schema-MT76C7XK.js +63 -0
  380. package/dist/scrape-ICS5UA62.js +2241 -0
  381. package/dist/screenshot-YPUFPY5W.js +102 -0
  382. package/dist/search-6BHODVNN.js +27 -0
  383. package/dist/search-HOQZ3XIK.js +92 -0
  384. package/dist/search-KFP4GPMJ.js +174 -0
  385. package/dist/search-TCDI77HS.js +91 -0
  386. package/dist/search-W7E5S347.js +224 -0
  387. package/dist/search-copy-LXBPFQC3.js +115 -0
  388. package/dist/search-copy-LXBPFQC3.js.map +1 -0
  389. package/dist/seeds-Q6VS27LT.js +101 -0
  390. package/dist/seeds-Q6VS27LT.js.map +1 -0
  391. package/dist/select-CB5BBKHR.js +94 -0
  392. package/dist/sends-HDTG7XRL.js +309 -0
  393. package/dist/sequences-SISO5JGS.js +146 -0
  394. package/dist/set-prompt-IS7JSFYY.js +186 -0
  395. package/dist/setup-links-NBO7B64S.js +141 -0
  396. package/dist/shared-MJEF5Z6R.js +31 -0
  397. package/dist/site-5MPVICS2.js +177 -0
  398. package/dist/sitemaps-G3YCZDEM.js +87 -0
  399. package/dist/sites-YH2ZIMCP.js +101 -0
  400. package/dist/skills-SQTM676S.js +47 -0
  401. package/dist/sources-FSYJ2EQL.js +421 -0
  402. package/dist/sources-OES5YJY6.js +30 -0
  403. package/dist/stale-YT3CGHAI.js +63 -0
  404. package/dist/stats-IDL2KWGM.js +34 -0
  405. package/dist/status-ZDKRO7TH.js +62 -0
  406. package/dist/sticker-2R5LODHJ.js +94 -0
  407. package/dist/stock-5DWDTNFB.js +179 -0
  408. package/dist/studio-PPFFAUWO.js +49 -0
  409. package/dist/sync-7DWOHCVF.js +265 -0
  410. package/dist/sync-JRRGJWFH.js +54 -0
  411. package/dist/sync-RNKJFPDI.js +54 -0
  412. package/dist/sync-definition-SDJM567M.js +53 -0
  413. package/dist/tag-manager-MBS6YCZM.js +43 -0
  414. package/dist/tags-5EVJ73IX.js +26 -0
  415. package/dist/tags-5THBYIHN.js +20 -0
  416. package/dist/tags-D74DMYCW.js +20 -0
  417. package/dist/tags-KFDRX4H7.js +20 -0
  418. package/dist/tags-YEWHOSC5.js +224 -0
  419. package/dist/targeting-constants-KIMGCL2N.js +118 -0
  420. package/dist/targeting-criteria-5BN4EELG.js +113 -0
  421. package/dist/targets-DBQNYE34.js +102 -0
  422. package/dist/templates-J2NZIOY2.js +178 -0
  423. package/dist/testimonials-2IJE6K2L.js +32 -0
  424. package/dist/themes-6BRONMJ2.js +94 -0
  425. package/dist/top-companies-TAA7HKTA.js +108 -0
  426. package/dist/translate-ZVQQJJQT.js +598 -0
  427. package/dist/triggers-2VPLSNP7.js +141 -0
  428. package/dist/tweets-YEMIGLP7.js +123 -0
  429. package/dist/unfollow-S6XQVQIA.js +46 -0
  430. package/dist/unlink-DDTHG25I.js +67 -0
  431. package/dist/unstage-ABSCDW43.js +84 -0
  432. package/dist/unstage-VDLTHNHY.js +95 -0
  433. package/dist/update-C2QWKWXB.js +98 -0
  434. package/dist/update-COMDOEYG.js +142 -0
  435. package/dist/update-FMROPHXQ.js +155 -0
  436. package/dist/update-SY54UP5O.js +63 -0
  437. package/dist/upload-7QBWAQLM.js +126 -0
  438. package/dist/upload-PTXQ7IEE.js +150 -0
  439. package/dist/upscale-YQ2KZRCI.js +109 -0
  440. package/dist/url-options-QRGN4Q34.js +130 -0
  441. package/dist/url-params-ZBOCO4CG.js +98 -0
  442. package/dist/use-BFD6WCDB.js +95 -0
  443. package/dist/validate-M7B2SBDH.js +89 -0
  444. package/dist/variant-U77I2UDY.js +338 -0
  445. package/dist/videos-2EPKRCW6.js +39 -0
  446. package/dist/view-BDLUTKMK.js +121 -0
  447. package/dist/viewer-check-YF6ENNNL.js +69 -0
  448. package/dist/web-JRDXE2GL.js +140 -0
  449. package/dist/winners-AWRCSFAC.js +113 -0
  450. package/dist/winners-AWRCSFAC.js.map +1 -0
  451. package/dist/winning-ads-QQ6Y5R7T.js +79 -0
  452. package/dist/winning-ads-QQ6Y5R7T.js.map +1 -0
  453. package/dist/write-commands-3UXPJJ75.js +1015 -0
  454. package/dist/write-commands-HZI5YF52.js +737 -0
  455. package/dist/write-commands-MYA273DT.js +206 -0
  456. package/dist/write-commands-OQPBPQ77.js +713 -0
  457. package/dist/x-WA3Q46K6.js +47 -0
  458. package/package.json +1 -1
  459. package/dist/account-AO6PNNPO.js +0 -79
  460. package/dist/account-F6MHQ64I.js +0 -80
  461. package/dist/account-IEVEOFIK.js +0 -49
  462. package/dist/account-reads-W3XO7CIW.js +0 -218
  463. package/dist/account-writes-ISE4U2FQ.js +0 -66
  464. package/dist/accounts-4CDRK4S4.js +0 -75
  465. package/dist/accounts-4TM4UZEJ.js +0 -77
  466. package/dist/accounts-5QDKBZMH.js +0 -115
  467. package/dist/accounts-KYJO3JC6.js +0 -114
  468. package/dist/accounts-XDC26KK6.js +0 -611
  469. package/dist/actions-CJB4GZYA.js +0 -55
  470. package/dist/active-entities-YUSOUR5M.js +0 -103
  471. package/dist/activities-ZVQOBHZH.js +0 -74
  472. package/dist/ad-group-writes-UU5NNKSO.js +0 -170
  473. package/dist/ad-groups-CGFXZNIA.js +0 -68
  474. package/dist/ad-writes-NALDYWOR.js +0 -174
  475. package/dist/add-577QWMCF.js +0 -97
  476. package/dist/add-BP4CUUKB.js +0 -104
  477. package/dist/add-CUWAW7KG.js +0 -105
  478. package/dist/add-RYR3QGOP.js +0 -302
  479. package/dist/ads-GII5LEOH.js +0 -40
  480. package/dist/ads-PV7GZXPR.js +0 -77
  481. package/dist/ads-SATXH4OD.js +0 -113
  482. package/dist/adsets-PMXNW3EG.js +0 -176
  483. package/dist/advertisers-GM5UFI44.js +0 -120
  484. package/dist/advertisers-YMHPZYNF.js +0 -111
  485. package/dist/advertisers-YMHPZYNF.js.map +0 -1
  486. package/dist/analytics-4CD7CH7H.js +0 -433
  487. package/dist/analytics-JDPRLCHQ.js +0 -1976
  488. package/dist/animate-FWWHSYPL.js +0 -480
  489. package/dist/assign-XI4HIIIM.js +0 -77
  490. package/dist/audience-size-DHZ65PGA.js +0 -94
  491. package/dist/audiences-D7CXP3ZF.js +0 -78
  492. package/dist/audiences-HFRVIE2X.js +0 -85
  493. package/dist/audiences-VEKGLWBG.js +0 -268
  494. package/dist/audit-AD4ZZNJN.js +0 -88
  495. package/dist/audit-M7BZYBIS.js +0 -151
  496. package/dist/autocomplete-B45I26R4.js +0 -111
  497. package/dist/avatars-75BALNB7.js +0 -38
  498. package/dist/bid-pricing-4RCP24BE.js +0 -99
  499. package/dist/brand-2TOLKYDY.js +0 -22
  500. package/dist/brief-5G4NEZ4O.js +0 -477
  501. package/dist/brief-5G4NEZ4O.js.map +0 -1
  502. package/dist/businesses-JBDQZZIG.js +0 -53
  503. package/dist/campaign-groups-G7B26V7K.js +0 -95
  504. package/dist/campaign-writes-HZ7ART7W.js +0 -165
  505. package/dist/campaign-writes-SX52CJYW.js +0 -170
  506. package/dist/campaigns-MEEM3CNC.js +0 -110
  507. package/dist/campaigns-OIJGTO7W.js +0 -107
  508. package/dist/campaigns-RW3QJQ2F.js +0 -109
  509. package/dist/campaigns-X3DPCCSN.js +0 -76
  510. package/dist/canvas-LXRLDE5G.js +0 -46
  511. package/dist/capabilities-BWSB7IFT.js +0 -144
  512. package/dist/cards-4477BFEV.js +0 -85
  513. package/dist/catalog-BKQOAVR2.js +0 -65
  514. package/dist/catalogs-G3YEVG6S.js +0 -128
  515. package/dist/changes-AYLNY6KN.js +0 -135
  516. package/dist/chatgpt-TNSRA3L3.js +0 -47
  517. package/dist/chats-MMHBJQFM.js +0 -262
  518. package/dist/chunk-24GELJP3.js +0 -622
  519. package/dist/chunk-2BKVVCCV.js +0 -133
  520. package/dist/chunk-2D4ASTGN.js +0 -159
  521. package/dist/chunk-2K4LMCV2.js +0 -197
  522. package/dist/chunk-2TK4DEOE.js +0 -74
  523. package/dist/chunk-2YJL6MEB.js +0 -51
  524. package/dist/chunk-2ZY7HON7.js +0 -174
  525. package/dist/chunk-35XWJEWH.js +0 -274
  526. package/dist/chunk-3EUFAONS.js +0 -5189
  527. package/dist/chunk-45OQOUJA.js +0 -6176
  528. package/dist/chunk-45OQOUJA.js.map +0 -1
  529. package/dist/chunk-4KCKNAVW.js +0 -665
  530. package/dist/chunk-4NDCTLI5.js +0 -191
  531. package/dist/chunk-4QEY2L6U.js +0 -486
  532. package/dist/chunk-54UVGFX3.js +0 -440
  533. package/dist/chunk-54UVGFX3.js.map +0 -1
  534. package/dist/chunk-5FWMRTNB.js +0 -846
  535. package/dist/chunk-5YGBRHO6.js +0 -96
  536. package/dist/chunk-5Z2KSVIV.js +0 -67
  537. package/dist/chunk-6B7VKFS4.js +0 -172
  538. package/dist/chunk-6G5K6ZC6.js +0 -46
  539. package/dist/chunk-75FDTDLH.js +0 -96
  540. package/dist/chunk-7OFNN4CT.js +0 -58
  541. package/dist/chunk-7TNPEURJ.js +0 -1079
  542. package/dist/chunk-7ZHMGXE2.js +0 -819
  543. package/dist/chunk-BNCW67EM.js +0 -534
  544. package/dist/chunk-BNCW67EM.js.map +0 -1
  545. package/dist/chunk-BSOWFWEU.js +0 -509
  546. package/dist/chunk-C6U6UDHJ.js +0 -106
  547. package/dist/chunk-D23EKXOP.js +0 -275
  548. package/dist/chunk-D7PFF6UC.js +0 -346
  549. package/dist/chunk-DT2XXF6O.js +0 -455
  550. package/dist/chunk-DTD2IRDA.js +0 -149
  551. package/dist/chunk-DYOI4FQ7.js +0 -169
  552. package/dist/chunk-DZSIUEGH.js +0 -136
  553. package/dist/chunk-EFM7OODQ.js +0 -433
  554. package/dist/chunk-EFSYTROP.js +0 -94
  555. package/dist/chunk-EIIANSBX.js +0 -310
  556. package/dist/chunk-EYK6G4XE.js +0 -57
  557. package/dist/chunk-EZWYX343.js +0 -6667
  558. package/dist/chunk-F2S5BLPE.js +0 -97
  559. package/dist/chunk-GP7QUF5A.js +0 -363
  560. package/dist/chunk-H26L3OQY.js +0 -42
  561. package/dist/chunk-HOXZOOVA.js +0 -3153
  562. package/dist/chunk-HRYOZUSK.js +0 -1711
  563. package/dist/chunk-HTW7FTP4.js +0 -45
  564. package/dist/chunk-IFWP3ZDO.js +0 -215
  565. package/dist/chunk-JERXV5A3.js +0 -26
  566. package/dist/chunk-JU7FIHQ2.js +0 -103
  567. package/dist/chunk-KFE3S63W.js +0 -1441
  568. package/dist/chunk-KLBTXETO.js +0 -23992
  569. package/dist/chunk-KLNKEVIY.js +0 -136
  570. package/dist/chunk-KN7DFVKW.js +0 -92
  571. package/dist/chunk-KNY76UGC.js +0 -84
  572. package/dist/chunk-KQTYTCKQ.js +0 -98
  573. package/dist/chunk-KS2QY6MK.js +0 -139
  574. package/dist/chunk-LERTEZST.js +0 -28
  575. package/dist/chunk-LI6PGY3L.js +0 -337
  576. package/dist/chunk-LS5MTRFI.js +0 -106
  577. package/dist/chunk-LYBXCXJB.js +0 -160
  578. package/dist/chunk-MCWYIEWI.js +0 -111
  579. package/dist/chunk-MFQ5SUJT.js +0 -207
  580. package/dist/chunk-MZL4H5PY.js +0 -225
  581. package/dist/chunk-NAWWC5I3.js +0 -454
  582. package/dist/chunk-NU7JSWVA.js +0 -946
  583. package/dist/chunk-NU7JSWVA.js.map +0 -1
  584. package/dist/chunk-OW4XDJV2.js +0 -494
  585. package/dist/chunk-PBA3YCZA.js +0 -76
  586. package/dist/chunk-PHEEJUFL.js +0 -19
  587. package/dist/chunk-PWGWMIIJ.js +0 -25
  588. package/dist/chunk-PZ7EPJRF.js +0 -60
  589. package/dist/chunk-QM6T4BFA.js +0 -76
  590. package/dist/chunk-QNDLOCAI.js +0 -382
  591. package/dist/chunk-QSN5MZGS.js +0 -74
  592. package/dist/chunk-RX6F3GEA.js +0 -610
  593. package/dist/chunk-STIB5DR5.js +0 -56
  594. package/dist/chunk-TD2P4HBP.js +0 -55
  595. package/dist/chunk-TEINLN64.js +0 -649
  596. package/dist/chunk-TEINLN64.js.map +0 -1
  597. package/dist/chunk-ULJ5RFOV.js +0 -76
  598. package/dist/chunk-ULJ5RFOV.js.map +0 -1
  599. package/dist/chunk-UZUHXN7H.js +0 -23
  600. package/dist/chunk-V5QJBDBC.js +0 -175
  601. package/dist/chunk-VAJBWA2U.js +0 -75
  602. package/dist/chunk-VB6WJJR3.js +0 -1830
  603. package/dist/chunk-VFIOJD5M.js +0 -309
  604. package/dist/chunk-VVZBBKRC.js +0 -296
  605. package/dist/chunk-W3B4BHQU.js +0 -31
  606. package/dist/chunk-WBUMUELD.js +0 -541
  607. package/dist/chunk-WEU6GKUQ.js +0 -297
  608. package/dist/chunk-WNFIJAUO.js +0 -98
  609. package/dist/chunk-WS2GMOSG.js +0 -74
  610. package/dist/chunk-WTOYCUKH.js +0 -84
  611. package/dist/chunk-X5VHGXFB.js +0 -206
  612. package/dist/chunk-XBOK23HI.js +0 -214
  613. package/dist/chunk-XJRBFLBD.js +0 -304
  614. package/dist/chunk-XL3BMSYG.js +0 -125
  615. package/dist/chunk-XPOIIQCI.js +0 -1599
  616. package/dist/chunk-XY7BZSDQ.js +0 -166
  617. package/dist/chunk-Y63Y4QSY.js +0 -592
  618. package/dist/chunk-YBMVHGY3.js +0 -333
  619. package/dist/chunk-YKFEHWHC.js +0 -188
  620. package/dist/chunk-YRVDCIJ2.js +0 -172
  621. package/dist/chunk-ZIHEIVJC.js +0 -4410
  622. package/dist/chunk-ZZQXVYUY.js +0 -66
  623. package/dist/claim-UDNXCJIU.js +0 -197
  624. package/dist/client-VHN32ZRE.js +0 -19
  625. package/dist/code-YS6ZMGX3.js +0 -76
  626. package/dist/companies-RPZN4JTR.js +0 -195
  627. package/dist/complete-HLSRQE3N.js +0 -81
  628. package/dist/config-CQN5FHMZ.js +0 -88
  629. package/dist/connect-TIJZO7OV.js +0 -42
  630. package/dist/content-3ZPP4SW2.js +0 -81
  631. package/dist/content-3ZPP4SW2.js.map +0 -1
  632. package/dist/conversation-BS7TF6LZ.js +0 -93
  633. package/dist/conversion-report-N4HANYOB.js +0 -125
  634. package/dist/conversion-upload-command-CSD344BY.js +0 -438
  635. package/dist/conversion-writes-LW4HQKK5.js +0 -120
  636. package/dist/conversions-FEWAX64H.js +0 -135
  637. package/dist/conversions-TS723AZV.js +0 -76
  638. package/dist/countries-ESAKTQAE.js +0 -82
  639. package/dist/create-4SH4BZXP.js +0 -235
  640. package/dist/create-B4UVIJZI.js +0 -207
  641. package/dist/create-F5FNHJKE.js +0 -130
  642. package/dist/create-L3JHP6J4.js +0 -59
  643. package/dist/creatives-LK2NZHRX.js +0 -51
  644. package/dist/creatives-RQ2DFHGI.js +0 -87
  645. package/dist/creatives-UILBPOKO.js +0 -182
  646. package/dist/credentials-GC34ZPYP.js +0 -287
  647. package/dist/critique-FAOH4FCP.js +0 -213
  648. package/dist/critique-X7HYYEJ4.js +0 -1449
  649. package/dist/crm-RB5TVV3M.js +0 -318
  650. package/dist/crm-XEQDSU2U.js +0 -224
  651. package/dist/crop-2J4RKJ6B.js +0 -113
  652. package/dist/currency-47QHFHDA.js +0 -88
  653. package/dist/custom-conversions-7HOWR6X6.js +0 -125
  654. package/dist/customers-P5WOUY6G.js +0 -56
  655. package/dist/delete-3AV3ARMX.js +0 -71
  656. package/dist/delete-A5XD52K4.js +0 -69
  657. package/dist/delete-DLQ2ZZDA.js +0 -66
  658. package/dist/delete-GZKGPBBD.js +0 -54
  659. package/dist/delete-MRM2S4Z5.js +0 -71
  660. package/dist/delete-SW5OSIGN.js +0 -63
  661. package/dist/demographics-ZLZOIWUE.js +0 -138
  662. package/dist/describe-6NVOWIBE.js +0 -97
  663. package/dist/describe-P3PPIQME.js +0 -97
  664. package/dist/dimensions-EYAYO27I.js +0 -101
  665. package/dist/discard-VNVNJWNX.js +0 -66
  666. package/dist/discover-P6TUGZ45.js +0 -172
  667. package/dist/domain-OBICRJP3.js +0 -98
  668. package/dist/download-7T6HIJKD.js +0 -299
  669. package/dist/draft-3ZVCQSAG.js +0 -103
  670. package/dist/draft-666YKA3P.js +0 -307
  671. package/dist/draft-KIBMVKSR.js +0 -100
  672. package/dist/draft-THPZFASM.js +0 -281
  673. package/dist/draft-UECMJ6B4.js +0 -217
  674. package/dist/draft-V75RBORX.js +0 -328
  675. package/dist/draft-YDY2Q2K6.js +0 -233
  676. package/dist/draft-Z3VUQ4LJ.js +0 -306
  677. package/dist/env-KIP2J2UB.js +0 -43
  678. package/dist/experiment-PYQPAZZN.js +0 -1397
  679. package/dist/export-JQRMBJ7D.js +0 -168
  680. package/dist/extract-7QKLME7Z.js +0 -113
  681. package/dist/facets-7J66L3NK.js +0 -114
  682. package/dist/favorites-NSGF4OV5.js +0 -178
  683. package/dist/feed-RV4KPPXM.js +0 -157
  684. package/dist/feed-RV4KPPXM.js.map +0 -1
  685. package/dist/feedback-3LDG4WVJ.js +0 -66
  686. package/dist/feedback-record-CTAUHLMF.js +0 -175
  687. package/dist/fetch-4RXXZGO4.js +0 -176
  688. package/dist/fetch-XF76JABV.js +0 -139
  689. package/dist/find-FRRHAPWX.js +0 -134
  690. package/dist/fit-7237F5EB.js +0 -45
  691. package/dist/flows-GGB46DLH.js +0 -247
  692. package/dist/follow-FN7LV3WV.js +0 -82
  693. package/dist/follow-FN7LV3WV.js.map +0 -1
  694. package/dist/follow-competitors-MKXFHLXB.js +0 -131
  695. package/dist/follow-competitors-MKXFHLXB.js.map +0 -1
  696. package/dist/following-RKC2FLHI.js +0 -109
  697. package/dist/following-RKC2FLHI.js.map +0 -1
  698. package/dist/fonts-S3GWKOUJ.js +0 -34
  699. package/dist/forecast-6JVKXNFB.js +0 -104
  700. package/dist/forecast-SVD3LMMY.js +0 -168
  701. package/dist/funding-NYO65IMT.js +0 -85
  702. package/dist/funnel-RCQOIQZ5.js +0 -394
  703. package/dist/ga4-U6DMJ6K4.js +0 -55
  704. package/dist/generate-MMBYB44G.js +0 -262
  705. package/dist/get-3L6W3E3T.js +0 -59
  706. package/dist/get-6WEYKOY6.js +0 -63
  707. package/dist/get-KQSM2MXM.js +0 -78
  708. package/dist/get-MN2GRXGZ.js +0 -56
  709. package/dist/get-P743RPSI.js +0 -63
  710. package/dist/get-XN5ZGDIK.js +0 -61
  711. package/dist/get-YIHTAMRT.js +0 -92
  712. package/dist/gif-53ULFVLR.js +0 -94
  713. package/dist/google-CI2AMJKN.js +0 -3190
  714. package/dist/google-QYYYSSXI.js +0 -136
  715. package/dist/google-ads-YAJ33LTW.js +0 -195
  716. package/dist/group-EFZ3AJIE.js +0 -43
  717. package/dist/group-GKWCCX66.js +0 -43
  718. package/dist/gsc-TAKOF7J5.js +0 -30
  719. package/dist/history-DBIEYQHY.js +0 -67
  720. package/dist/history-QWYLRQBO.js +0 -133
  721. package/dist/hubspot-DDONLJ7R.js +0 -779
  722. package/dist/icon-L4RSS6PZ.js +0 -137
  723. package/dist/ideas-N44Z2SIT.js +0 -32
  724. package/dist/images-BKHCBCE7.js +0 -90
  725. package/dist/improve-BCCU5AS6.js +0 -86
  726. package/dist/ingest-HBECWLOB.js +0 -107
  727. package/dist/ingest-VNRTFD4Y.js +0 -23
  728. package/dist/insights-NZWSJKU4.js +0 -423
  729. package/dist/insights-ZIU6FJMS.js +0 -122
  730. package/dist/inspect-7GGJDJBJ.js +0 -189
  731. package/dist/inspiration-CGM3NK6X.js +0 -53
  732. package/dist/intent-HKNBXEDS.js +0 -95
  733. package/dist/job-L7RJZMSG.js +0 -202
  734. package/dist/job-create-JUDAN52O.js +0 -109
  735. package/dist/job-status-U43WE3RJ.js +0 -74
  736. package/dist/keep-55CPC7DG.js +0 -78
  737. package/dist/keyword-gap-HUSP6MOT.js +0 -130
  738. package/dist/keyword-metrics-2C3VFGDQ.js +0 -197
  739. package/dist/keywords-for-site-4GV4KS4X.js +0 -128
  740. package/dist/landing-V2FMPQOK.js +0 -28
  741. package/dist/languages-75YJZAHL.js +0 -40
  742. package/dist/languages-JSGWCC7Z.js +0 -55
  743. package/dist/layerize-RPD6SNP6.js +0 -190
  744. package/dist/leads-DTULNGMU.js +0 -90
  745. package/dist/leads-OPRVJBQG.js +0 -293
  746. package/dist/learn-EW2CKOFS.js +0 -203
  747. package/dist/library-ARKRLCNJ.js +0 -109
  748. package/dist/lighthouse-6ZC45E53.js +0 -75
  749. package/dist/line-item-writes-EF3BJ5KV.js +0 -208
  750. package/dist/line-items-G467XOZF.js +0 -103
  751. package/dist/link-5SU4MR6M.js +0 -64
  752. package/dist/linkedin-OFM3VVOB.js +0 -1008
  753. package/dist/list-7MVBXOJT.js +0 -51
  754. package/dist/list-A5UCIR2J.js +0 -65
  755. package/dist/list-AL7N6X2P.js +0 -50
  756. package/dist/list-HEWXAVCL.js +0 -151
  757. package/dist/list-LI4OGQFW.js +0 -57
  758. package/dist/list-P7NAFN6J.js +0 -76
  759. package/dist/list-SUTCQLGI.js +0 -63
  760. package/dist/list-VFZPXFMA.js +0 -303
  761. package/dist/locations-6XADFU3V.js +0 -40
  762. package/dist/locations-74TPQWAT.js +0 -67
  763. package/dist/log-I3MAU44R.js +0 -92
  764. package/dist/logo-Q5D7PZY6.js +0 -18
  765. package/dist/lookup-TCU2ZEZW.js +0 -22
  766. package/dist/make-ALBJZKJZ.js +0 -596
  767. package/dist/make-ALBJZKJZ.js.map +0 -1
  768. package/dist/map-OT6F33VF.js +0 -404
  769. package/dist/mcp-LC3L2JQO.js +0 -463
  770. package/dist/media-6CQYG4UY.js +0 -89
  771. package/dist/media-MYZ5I7WK.js +0 -15
  772. package/dist/media-sources-RK6EJYBQ.js +0 -32
  773. package/dist/members-7CHDHW7H.js +0 -44
  774. package/dist/meta-7XP5AWYU.js +0 -69
  775. package/dist/metrics-73LI743C.js +0 -152
  776. package/dist/models-7U3GRYHF.js +0 -155
  777. package/dist/normalize-CXMYHNSA.js +0 -141
  778. package/dist/normalize-ICQF2AST.js +0 -806
  779. package/dist/options-E4IO5SR5.js +0 -121
  780. package/dist/output-RAH3TSIL.js +0 -24
  781. package/dist/page-GS3WLT2C.js +0 -105
  782. package/dist/pages-FXYQLHSJ.js +0 -66
  783. package/dist/performance-UQLSBPYN.js +0 -24
  784. package/dist/pinterest-AUH7WBA7.js +0 -96
  785. package/dist/pixels-45A55MOP.js +0 -60
  786. package/dist/pixels-ZFF4BGUH.js +0 -108
  787. package/dist/plan-NBFLYAOW.js +0 -207
  788. package/dist/preview-AD4GKYIA.js +0 -169
  789. package/dist/promoted-tweet-writes-ZW3FUPFG.js +0 -180
  790. package/dist/promoted-tweets-ZLQ6GZD5.js +0 -119
  791. package/dist/properties-L2XIYQDS.js +0 -101
  792. package/dist/publish-H2PBR5XN.js +0 -322
  793. package/dist/query-GDUTZ4R7.js +0 -61
  794. package/dist/query-SGGBCHTF.js +0 -236
  795. package/dist/query-VTGVZQIO.js +0 -247
  796. package/dist/questionnaire-J56AATOX.js +0 -93
  797. package/dist/read-G5AC332V.js +0 -141
  798. package/dist/reddit-TGQYQUNZ.js +0 -26
  799. package/dist/refresh-HVBCC2ZI.js +0 -94
  800. package/dist/release-VI3JT6O6.js +0 -60
  801. package/dist/relevant-pages-2FW3E5KD.js +0 -99
  802. package/dist/remove-4EE7STMS.js +0 -50
  803. package/dist/remove-6LGGKMLJ.js +0 -48
  804. package/dist/reopen-LEGLAOMA.js +0 -63
  805. package/dist/rerun-A5DPZFOO.js +0 -85
  806. package/dist/research-O6YMV2TG.js +0 -62
  807. package/dist/research-WOJELJ4K.js +0 -262
  808. package/dist/reset-PQHURJDC.js +0 -54
  809. package/dist/reset-V2X7DFHD.js +0 -54
  810. package/dist/resolve-Q4AACDIC.js +0 -121
  811. package/dist/retry-BB6NJBC4.js +0 -60
  812. package/dist/retry-WMGEUJPB.js +0 -62
  813. package/dist/retry-failed-6HXPUVXJ.js +0 -45
  814. package/dist/run-OBYA2F3E.js +0 -60
  815. package/dist/run-V6E36GXW.js +0 -65
  816. package/dist/scaffold-ad-KKYI7FZJ.js +0 -1549
  817. package/dist/scaffold-static-ad-R5UE4YIZ.js +0 -966
  818. package/dist/scaffold-static-ad-R5UE4YIZ.js.map +0 -1
  819. package/dist/scaffold-video-Y2BWXZSX.js +0 -873
  820. package/dist/schedule-EO27AZTT.js +0 -61
  821. package/dist/schedule-O2K6M43V.js +0 -66
  822. package/dist/scheduled-agents-OIJBX7OO.js +0 -49
  823. package/dist/schema-6GR77VJG.js +0 -63
  824. package/dist/schema-7GSCTQIC.js +0 -132
  825. package/dist/scrape-ETAMW43A.js +0 -2241
  826. package/dist/screenshot-YCQF25ZB.js +0 -102
  827. package/dist/search-742XSULP.js +0 -224
  828. package/dist/search-MEEM4D3W.js +0 -92
  829. package/dist/search-OQNGSMUH.js +0 -91
  830. package/dist/search-Q7PAV7NY.js +0 -174
  831. package/dist/search-UO5KJTYS.js +0 -26
  832. package/dist/seeds-N6FF5S4T.js +0 -101
  833. package/dist/seeds-N6FF5S4T.js.map +0 -1
  834. package/dist/select-ASR5SBYE.js +0 -94
  835. package/dist/sends-WGJVQUMF.js +0 -309
  836. package/dist/sequences-OIPVR7JL.js +0 -146
  837. package/dist/set-prompt-I32464V4.js +0 -186
  838. package/dist/setup-links-NP2HULRC.js +0 -141
  839. package/dist/shared-HJDFNID4.js +0 -31
  840. package/dist/site-PTIYQQ3Z.js +0 -177
  841. package/dist/sitemaps-POPZJTAX.js +0 -87
  842. package/dist/sites-262H6LM4.js +0 -101
  843. package/dist/skills-6TQZLIMP.js +0 -47
  844. package/dist/sources-5FRMFKDA.js +0 -30
  845. package/dist/sources-FJLCIG6X.js +0 -421
  846. package/dist/stale-YUYMETFC.js +0 -63
  847. package/dist/stats-F5JZVPYG.js +0 -34
  848. package/dist/status-UYIQFC7L.js +0 -62
  849. package/dist/sticker-4KMBSMP5.js +0 -94
  850. package/dist/stock-KXJ26BY4.js +0 -179
  851. package/dist/studio-6ZL76TZR.js +0 -49
  852. package/dist/sync-527ZCA4A.js +0 -54
  853. package/dist/sync-CF7FVUQJ.js +0 -54
  854. package/dist/sync-ZSNUBYPM.js +0 -265
  855. package/dist/sync-definition-M4KRPGTN.js +0 -53
  856. package/dist/tag-manager-JAAMOUGB.js +0 -43
  857. package/dist/tags-2MX3332V.js +0 -20
  858. package/dist/tags-7767I2D6.js +0 -224
  859. package/dist/tags-J3BGX3E6.js +0 -20
  860. package/dist/tags-O27SK3YX.js +0 -26
  861. package/dist/tags-VAYVSQM6.js +0 -20
  862. package/dist/targeting-constants-XJ2VOW7K.js +0 -118
  863. package/dist/targeting-criteria-GOTI75Y4.js +0 -113
  864. package/dist/targets-FC7CGFRD.js +0 -102
  865. package/dist/templates-EF5LOWP5.js +0 -178
  866. package/dist/testimonials-MRMRWF2T.js +0 -32
  867. package/dist/themes-2ZV7OCJ3.js +0 -94
  868. package/dist/top-companies-VTLR6GTW.js +0 -108
  869. package/dist/translate-UMTKAUJ3.js +0 -598
  870. package/dist/triggers-Y7ZMMY3C.js +0 -141
  871. package/dist/tweets-ATP3FQAC.js +0 -123
  872. package/dist/unfollow-CBVPGPF7.js +0 -46
  873. package/dist/unlink-HZCFLXH4.js +0 -67
  874. package/dist/unstage-562HOOE7.js +0 -84
  875. package/dist/unstage-V7GMMOWR.js +0 -95
  876. package/dist/update-ATSXY5UN.js +0 -142
  877. package/dist/update-DKU2UDFA.js +0 -155
  878. package/dist/update-I5A5TOZJ.js +0 -98
  879. package/dist/update-ZF3VFYLB.js +0 -63
  880. package/dist/upload-L5SYZB3X.js +0 -150
  881. package/dist/upload-SIAI6NMH.js +0 -126
  882. package/dist/upscale-YWRLFU22.js +0 -109
  883. package/dist/url-options-JSX6HBZL.js +0 -130
  884. package/dist/url-params-AZUI3CW3.js +0 -98
  885. package/dist/use-UT2DIZOG.js +0 -95
  886. package/dist/validate-MC4EIQI5.js +0 -89
  887. package/dist/variant-FLZJYGYL.js +0 -338
  888. package/dist/videos-S7BYFSU3.js +0 -39
  889. package/dist/view-NPAG66QK.js +0 -121
  890. package/dist/viewer-check-45T2HLAH.js +0 -69
  891. package/dist/web-5R7LHKIT.js +0 -140
  892. package/dist/winners-I5BMATJZ.js +0 -79
  893. package/dist/winners-I5BMATJZ.js.map +0 -1
  894. package/dist/winning-ads-PDCY4YW5.js +0 -62
  895. package/dist/winning-ads-PDCY4YW5.js.map +0 -1
  896. package/dist/write-commands-MFRZD6Q6.js +0 -737
  897. package/dist/write-commands-VWSLDBPT.js +0 -206
  898. package/dist/write-commands-VXL5QKMT.js +0 -1015
  899. package/dist/write-commands-WTRSOSO3.js +0 -713
  900. package/dist/x-22PKVRYX.js +0 -47
  901. /package/dist/{account-AO6PNNPO.js.map → account-CZWMPCRJ.js.map} +0 -0
  902. /package/dist/{account-IEVEOFIK.js.map → account-F2D257QB.js.map} +0 -0
  903. /package/dist/{account-F6MHQ64I.js.map → account-VGIKDAK3.js.map} +0 -0
  904. /package/dist/{account-reads-W3XO7CIW.js.map → account-reads-OS6RLJFJ.js.map} +0 -0
  905. /package/dist/{account-writes-ISE4U2FQ.js.map → account-writes-7HZJWI5U.js.map} +0 -0
  906. /package/dist/{accounts-4CDRK4S4.js.map → accounts-25JDCWKR.js.map} +0 -0
  907. /package/dist/{accounts-5QDKBZMH.js.map → accounts-4IIILFLV.js.map} +0 -0
  908. /package/dist/{accounts-4TM4UZEJ.js.map → accounts-6GNGCHU7.js.map} +0 -0
  909. /package/dist/{accounts-KYJO3JC6.js.map → accounts-X5MPAWZX.js.map} +0 -0
  910. /package/dist/{accounts-XDC26KK6.js.map → accounts-Z45QINO4.js.map} +0 -0
  911. /package/dist/{actions-CJB4GZYA.js.map → actions-CLFWCFFA.js.map} +0 -0
  912. /package/dist/{active-entities-YUSOUR5M.js.map → active-entities-V2K2S3UY.js.map} +0 -0
  913. /package/dist/{activities-ZVQOBHZH.js.map → activities-CUVZGTGA.js.map} +0 -0
  914. /package/dist/{ad-group-writes-UU5NNKSO.js.map → ad-group-writes-GG3BUQQY.js.map} +0 -0
  915. /package/dist/{ad-groups-CGFXZNIA.js.map → ad-groups-KRZ6YX7O.js.map} +0 -0
  916. /package/dist/{ad-writes-NALDYWOR.js.map → ad-writes-YDMS7NPG.js.map} +0 -0
  917. /package/dist/{add-RYR3QGOP.js.map → add-7P4VYS7R.js.map} +0 -0
  918. /package/dist/{add-577QWMCF.js.map → add-BHLEFGCG.js.map} +0 -0
  919. /package/dist/{add-CUWAW7KG.js.map → add-LHAZ34ZF.js.map} +0 -0
  920. /package/dist/{add-BP4CUUKB.js.map → add-PC7YGO2Z.js.map} +0 -0
  921. /package/dist/{ads-SATXH4OD.js.map → ads-5SGFPSQL.js.map} +0 -0
  922. /package/dist/{ads-PV7GZXPR.js.map → ads-CP4VTPKO.js.map} +0 -0
  923. /package/dist/{ads-GII5LEOH.js.map → ads-Q54IPFAS.js.map} +0 -0
  924. /package/dist/{adsets-PMXNW3EG.js.map → adsets-4RXF4YXR.js.map} +0 -0
  925. /package/dist/{advertisers-GM5UFI44.js.map → advertisers-LAIOXSCF.js.map} +0 -0
  926. /package/dist/{analytics-JDPRLCHQ.js.map → analytics-7M6JSC2C.js.map} +0 -0
  927. /package/dist/{analytics-4CD7CH7H.js.map → analytics-7RGPJKUD.js.map} +0 -0
  928. /package/dist/{animate-FWWHSYPL.js.map → animate-PYYWDHQ2.js.map} +0 -0
  929. /package/dist/{assign-XI4HIIIM.js.map → assign-4UP6F6UX.js.map} +0 -0
  930. /package/dist/{audience-size-DHZ65PGA.js.map → audience-size-AYNVGVBR.js.map} +0 -0
  931. /package/dist/{audiences-VEKGLWBG.js.map → audiences-6QF625VZ.js.map} +0 -0
  932. /package/dist/{audiences-D7CXP3ZF.js.map → audiences-B2ZSJSOJ.js.map} +0 -0
  933. /package/dist/{audiences-HFRVIE2X.js.map → audiences-S6IHCG3G.js.map} +0 -0
  934. /package/dist/{audit-M7BZYBIS.js.map → audit-43GSHWBO.js.map} +0 -0
  935. /package/dist/{audit-AD4ZZNJN.js.map → audit-IJUKCS2K.js.map} +0 -0
  936. /package/dist/{autocomplete-B45I26R4.js.map → autocomplete-YVP3WOFQ.js.map} +0 -0
  937. /package/dist/{avatars-75BALNB7.js.map → avatars-O64BDZHC.js.map} +0 -0
  938. /package/dist/{bid-pricing-4RCP24BE.js.map → bid-pricing-GMEWVIQP.js.map} +0 -0
  939. /package/dist/{brand-2TOLKYDY.js.map → brand-W55FHWU6.js.map} +0 -0
  940. /package/dist/{businesses-JBDQZZIG.js.map → businesses-ZFP263RY.js.map} +0 -0
  941. /package/dist/{campaign-groups-G7B26V7K.js.map → campaign-groups-XPYTQFNQ.js.map} +0 -0
  942. /package/dist/{campaign-writes-HZ7ART7W.js.map → campaign-writes-7MFHQAAI.js.map} +0 -0
  943. /package/dist/{campaign-writes-SX52CJYW.js.map → campaign-writes-APYVRCNH.js.map} +0 -0
  944. /package/dist/{campaigns-X3DPCCSN.js.map → campaigns-ANQW3YDH.js.map} +0 -0
  945. /package/dist/{campaigns-RW3QJQ2F.js.map → campaigns-LXSVJEXI.js.map} +0 -0
  946. /package/dist/{campaigns-OIJGTO7W.js.map → campaigns-UN3XB6TJ.js.map} +0 -0
  947. /package/dist/{campaigns-MEEM3CNC.js.map → campaigns-YPI4KS7U.js.map} +0 -0
  948. /package/dist/{canvas-LXRLDE5G.js.map → canvas-GPXU2ZSC.js.map} +0 -0
  949. /package/dist/{capabilities-BWSB7IFT.js.map → capabilities-HD2T6H24.js.map} +0 -0
  950. /package/dist/{cards-4477BFEV.js.map → cards-QRX43TGI.js.map} +0 -0
  951. /package/dist/{catalog-BKQOAVR2.js.map → catalog-CRIYIXOJ.js.map} +0 -0
  952. /package/dist/{catalogs-G3YEVG6S.js.map → catalogs-D677AN33.js.map} +0 -0
  953. /package/dist/{changes-AYLNY6KN.js.map → changes-PWBOKKNL.js.map} +0 -0
  954. /package/dist/{chatgpt-TNSRA3L3.js.map → chatgpt-RYL44ASK.js.map} +0 -0
  955. /package/dist/{chats-MMHBJQFM.js.map → chats-OQ6JOASV.js.map} +0 -0
  956. /package/dist/{chunk-V5QJBDBC.js.map → chunk-2QLNGCFZ.js.map} +0 -0
  957. /package/dist/{chunk-MZL4H5PY.js.map → chunk-2V2M2CHS.js.map} +0 -0
  958. /package/dist/{chunk-LYBXCXJB.js.map → chunk-35QYDREI.js.map} +0 -0
  959. /package/dist/{chunk-24GELJP3.js.map → chunk-3BG2BVWN.js.map} +0 -0
  960. /package/dist/{chunk-LERTEZST.js.map → chunk-3FOE4P6A.js.map} +0 -0
  961. /package/dist/{chunk-HTW7FTP4.js.map → chunk-3JX4NUGF.js.map} +0 -0
  962. /package/dist/{chunk-HRYOZUSK.js.map → chunk-3KN3VCS3.js.map} +0 -0
  963. /package/dist/{chunk-EIIANSBX.js.map → chunk-3QLACKNX.js.map} +0 -0
  964. /package/dist/{chunk-6G5K6ZC6.js.map → chunk-54VIXBLO.js.map} +0 -0
  965. /package/dist/{chunk-PBA3YCZA.js.map → chunk-5IQL24NI.js.map} +0 -0
  966. /package/dist/{chunk-KFE3S63W.js.map → chunk-5TOKIRCD.js.map} +0 -0
  967. /package/dist/{chunk-VAJBWA2U.js.map → chunk-5URIFBIL.js.map} +0 -0
  968. /package/dist/{chunk-YKFEHWHC.js.map → chunk-5Z6SSOLG.js.map} +0 -0
  969. /package/dist/{chunk-4QEY2L6U.js.map → chunk-6C4S466W.js.map} +0 -0
  970. /package/dist/{chunk-4NDCTLI5.js.map → chunk-6HLPM7U3.js.map} +0 -0
  971. /package/dist/{chunk-WS2GMOSG.js.map → chunk-6R7CMUIZ.js.map} +0 -0
  972. /package/dist/{chunk-KNY76UGC.js.map → chunk-6XPBHM5P.js.map} +0 -0
  973. /package/dist/{chunk-35XWJEWH.js.map → chunk-6ZEFXZRD.js.map} +0 -0
  974. /package/dist/{chunk-DZSIUEGH.js.map → chunk-73JXX4LJ.js.map} +0 -0
  975. /package/dist/{chunk-XY7BZSDQ.js.map → chunk-A2PTD6FL.js.map} +0 -0
  976. /package/dist/{chunk-Y63Y4QSY.js.map → chunk-AGEJ7IJG.js.map} +0 -0
  977. /package/dist/{chunk-XJRBFLBD.js.map → chunk-APY53DKV.js.map} +0 -0
  978. /package/dist/{chunk-MFQ5SUJT.js.map → chunk-BJ4SHBS2.js.map} +0 -0
  979. /package/dist/{chunk-XL3BMSYG.js.map → chunk-BXKJZBBJ.js.map} +0 -0
  980. /package/dist/{chunk-EYK6G4XE.js.map → chunk-C26QSQXP.js.map} +0 -0
  981. /package/dist/{chunk-ZIHEIVJC.js.map → chunk-C2DAPBYB.js.map} +0 -0
  982. /package/dist/{chunk-WBUMUELD.js.map → chunk-D2JOBGBD.js.map} +0 -0
  983. /package/dist/{chunk-2TK4DEOE.js.map → chunk-DE64GHEP.js.map} +0 -0
  984. /package/dist/{chunk-IFWP3ZDO.js.map → chunk-E4ICSNSW.js.map} +0 -0
  985. /package/dist/{chunk-D23EKXOP.js.map → chunk-EIAA3XTT.js.map} +0 -0
  986. /package/dist/{chunk-EZWYX343.js.map → chunk-EMLM2TKM.js.map} +0 -0
  987. /package/dist/{chunk-2YJL6MEB.js.map → chunk-EOWMPN3Q.js.map} +0 -0
  988. /package/dist/{chunk-KN7DFVKW.js.map → chunk-F66W4QQL.js.map} +0 -0
  989. /package/dist/{chunk-2K4LMCV2.js.map → chunk-FIBL3EZN.js.map} +0 -0
  990. /package/dist/{chunk-GP7QUF5A.js.map → chunk-FJDTR2IN.js.map} +0 -0
  991. /package/dist/{chunk-H26L3OQY.js.map → chunk-FNKOQQ2U.js.map} +0 -0
  992. /package/dist/{chunk-DT2XXF6O.js.map → chunk-FZKC65TR.js.map} +0 -0
  993. /package/dist/{chunk-VFIOJD5M.js.map → chunk-G4PE563Y.js.map} +0 -0
  994. /package/dist/{chunk-C6U6UDHJ.js.map → chunk-G6UBBPH3.js.map} +0 -0
  995. /package/dist/{chunk-STIB5DR5.js.map → chunk-GKUIGEY6.js.map} +0 -0
  996. /package/dist/{chunk-F2S5BLPE.js.map → chunk-GWFJAVWD.js.map} +0 -0
  997. /package/dist/{chunk-EFM7OODQ.js.map → chunk-HHLEPWHB.js.map} +0 -0
  998. /package/dist/{chunk-YBMVHGY3.js.map → chunk-HMKVVPWY.js.map} +0 -0
  999. /package/dist/{chunk-QM6T4BFA.js.map → chunk-HMVVNB23.js.map} +0 -0
  1000. /package/dist/{chunk-W3B4BHQU.js.map → chunk-ICFITD5H.js.map} +0 -0
  1001. /package/dist/{chunk-7ZHMGXE2.js.map → chunk-IDEFDDTX.js.map} +0 -0
  1002. /package/dist/{chunk-YRVDCIJ2.js.map → chunk-IH4NS3NT.js.map} +0 -0
  1003. /package/dist/{chunk-5FWMRTNB.js.map → chunk-ITYFVNLA.js.map} +0 -0
  1004. /package/dist/{chunk-D7PFF6UC.js.map → chunk-IX6PPPOS.js.map} +0 -0
  1005. /package/dist/{chunk-7TNPEURJ.js.map → chunk-JM6XT33N.js.map} +0 -0
  1006. /package/dist/{chunk-JU7FIHQ2.js.map → chunk-JTSYEIHY.js.map} +0 -0
  1007. /package/dist/{chunk-KLNKEVIY.js.map → chunk-K63BDJYR.js.map} +0 -0
  1008. /package/dist/{chunk-RX6F3GEA.js.map → chunk-KNX2UBLI.js.map} +0 -0
  1009. /package/dist/{chunk-DTD2IRDA.js.map → chunk-KPHBHRJY.js.map} +0 -0
  1010. /package/dist/{chunk-UZUHXN7H.js.map → chunk-KWMCE3Q2.js.map} +0 -0
  1011. /package/dist/{chunk-VB6WJJR3.js.map → chunk-KYQZM5FB.js.map} +0 -0
  1012. /package/dist/{chunk-2D4ASTGN.js.map → chunk-LAAJ3V67.js.map} +0 -0
  1013. /package/dist/{chunk-VVZBBKRC.js.map → chunk-LCMGWIEQ.js.map} +0 -0
  1014. /package/dist/{chunk-LI6PGY3L.js.map → chunk-MNCMAJKB.js.map} +0 -0
  1015. /package/dist/{chunk-WNFIJAUO.js.map → chunk-N3DLCXMB.js.map} +0 -0
  1016. /package/dist/{chunk-DYOI4FQ7.js.map → chunk-NKU7RLAI.js.map} +0 -0
  1017. /package/dist/{chunk-KQTYTCKQ.js.map → chunk-NWAFH7K3.js.map} +0 -0
  1018. /package/dist/{chunk-JERXV5A3.js.map → chunk-NYVO4TND.js.map} +0 -0
  1019. /package/dist/{chunk-BSOWFWEU.js.map → chunk-O5MNUL7C.js.map} +0 -0
  1020. /package/dist/{chunk-4KCKNAVW.js.map → chunk-O5RBFETA.js.map} +0 -0
  1021. /package/dist/{chunk-MCWYIEWI.js.map → chunk-ODMKCAAQ.js.map} +0 -0
  1022. /package/dist/{chunk-5YGBRHO6.js.map → chunk-OL4RPZ64.js.map} +0 -0
  1023. /package/dist/{chunk-LS5MTRFI.js.map → chunk-OP2OMNVN.js.map} +0 -0
  1024. /package/dist/{chunk-PWGWMIIJ.js.map → chunk-P5V7NXMY.js.map} +0 -0
  1025. /package/dist/{chunk-6B7VKFS4.js.map → chunk-Q3PB5ZUT.js.map} +0 -0
  1026. /package/dist/{chunk-PZ7EPJRF.js.map → chunk-QT7FKFNS.js.map} +0 -0
  1027. /package/dist/{chunk-OW4XDJV2.js.map → chunk-R5VW2ACF.js.map} +0 -0
  1028. /package/dist/{chunk-HOXZOOVA.js.map → chunk-RGE7STV4.js.map} +0 -0
  1029. /package/dist/{chunk-WTOYCUKH.js.map → chunk-RIXGQIMZ.js.map} +0 -0
  1030. /package/dist/{chunk-2BKVVCCV.js.map → chunk-RWEVT5SO.js.map} +0 -0
  1031. /package/dist/{chunk-75FDTDLH.js.map → chunk-S3TSJQOJ.js.map} +0 -0
  1032. /package/dist/{chunk-ZZQXVYUY.js.map → chunk-SMVHUBXE.js.map} +0 -0
  1033. /package/dist/{chunk-EFSYTROP.js.map → chunk-SZX5LUHK.js.map} +0 -0
  1034. /package/dist/{chunk-7OFNN4CT.js.map → chunk-TG63NMMW.js.map} +0 -0
  1035. /package/dist/{chunk-XBOK23HI.js.map → chunk-TOYLG3ZY.js.map} +0 -0
  1036. /package/dist/{chunk-TD2P4HBP.js.map → chunk-TZKJNSZH.js.map} +0 -0
  1037. /package/dist/{chunk-QSN5MZGS.js.map → chunk-U57KAPAJ.js.map} +0 -0
  1038. /package/dist/{chunk-WEU6GKUQ.js.map → chunk-VFME5MT5.js.map} +0 -0
  1039. /package/dist/{chunk-3EUFAONS.js.map → chunk-WCHPZD64.js.map} +0 -0
  1040. /package/dist/{chunk-PHEEJUFL.js.map → chunk-WHOS7L4N.js.map} +0 -0
  1041. /package/dist/{chunk-5Z2KSVIV.js.map → chunk-WOB3ESBQ.js.map} +0 -0
  1042. /package/dist/{chunk-XPOIIQCI.js.map → chunk-XM75RTFZ.js.map} +0 -0
  1043. /package/dist/{chunk-2ZY7HON7.js.map → chunk-XUGTYYXY.js.map} +0 -0
  1044. /package/dist/{chunk-X5VHGXFB.js.map → chunk-XX5DXKEI.js.map} +0 -0
  1045. /package/dist/{chunk-KLBTXETO.js.map → chunk-Y4V55WFQ.js.map} +0 -0
  1046. /package/dist/{chunk-NAWWC5I3.js.map → chunk-YKSIHGIL.js.map} +0 -0
  1047. /package/dist/{chunk-QNDLOCAI.js.map → chunk-YOLNNZ77.js.map} +0 -0
  1048. /package/dist/{chunk-KS2QY6MK.js.map → chunk-ZW6EMA2U.js.map} +0 -0
  1049. /package/dist/{claim-UDNXCJIU.js.map → claim-B6LWKULS.js.map} +0 -0
  1050. /package/dist/{client-VHN32ZRE.js.map → client-DUZXHJAT.js.map} +0 -0
  1051. /package/dist/{code-YS6ZMGX3.js.map → code-BQCH5ARZ.js.map} +0 -0
  1052. /package/dist/{companies-RPZN4JTR.js.map → companies-BC6TCRXY.js.map} +0 -0
  1053. /package/dist/{complete-HLSRQE3N.js.map → complete-Y7ZAKY62.js.map} +0 -0
  1054. /package/dist/{config-CQN5FHMZ.js.map → config-2NKM5GSZ.js.map} +0 -0
  1055. /package/dist/{connect-TIJZO7OV.js.map → connect-4WXSJAIK.js.map} +0 -0
  1056. /package/dist/{conversation-BS7TF6LZ.js.map → conversation-SEVRAH5J.js.map} +0 -0
  1057. /package/dist/{conversion-report-N4HANYOB.js.map → conversion-report-KLP2PJKJ.js.map} +0 -0
  1058. /package/dist/{conversion-upload-command-CSD344BY.js.map → conversion-upload-command-KB6ME34E.js.map} +0 -0
  1059. /package/dist/{conversion-writes-LW4HQKK5.js.map → conversion-writes-LO24U7NW.js.map} +0 -0
  1060. /package/dist/{conversions-FEWAX64H.js.map → conversions-OC2UHXG7.js.map} +0 -0
  1061. /package/dist/{conversions-TS723AZV.js.map → conversions-QBWE4C5T.js.map} +0 -0
  1062. /package/dist/{countries-ESAKTQAE.js.map → countries-F67IA6DF.js.map} +0 -0
  1063. /package/dist/{create-L3JHP6J4.js.map → create-BPHBGMFM.js.map} +0 -0
  1064. /package/dist/{create-4SH4BZXP.js.map → create-IGZH5OFP.js.map} +0 -0
  1065. /package/dist/{create-F5FNHJKE.js.map → create-NLNOXZ2T.js.map} +0 -0
  1066. /package/dist/{create-B4UVIJZI.js.map → create-YX3YN4SU.js.map} +0 -0
  1067. /package/dist/{creatives-RQ2DFHGI.js.map → creatives-4N6RRVBP.js.map} +0 -0
  1068. /package/dist/{creatives-UILBPOKO.js.map → creatives-ESTFGCVQ.js.map} +0 -0
  1069. /package/dist/{creatives-LK2NZHRX.js.map → creatives-ZDWQ7AP3.js.map} +0 -0
  1070. /package/dist/{credentials-GC34ZPYP.js.map → credentials-GA4ZW4QL.js.map} +0 -0
  1071. /package/dist/{critique-X7HYYEJ4.js.map → critique-IJG6WBDW.js.map} +0 -0
  1072. /package/dist/{critique-FAOH4FCP.js.map → critique-SYBZXBHJ.js.map} +0 -0
  1073. /package/dist/{crm-XEQDSU2U.js.map → crm-2P7WHZBW.js.map} +0 -0
  1074. /package/dist/{crm-RB5TVV3M.js.map → crm-SVDB2XHW.js.map} +0 -0
  1075. /package/dist/{crop-2J4RKJ6B.js.map → crop-ZAYOFRSS.js.map} +0 -0
  1076. /package/dist/{currency-47QHFHDA.js.map → currency-UWW5QJGL.js.map} +0 -0
  1077. /package/dist/{custom-conversions-7HOWR6X6.js.map → custom-conversions-2BG2VUOY.js.map} +0 -0
  1078. /package/dist/{customers-P5WOUY6G.js.map → customers-2LZ3HG3V.js.map} +0 -0
  1079. /package/dist/{delete-SW5OSIGN.js.map → delete-A3JJJHC6.js.map} +0 -0
  1080. /package/dist/{delete-3AV3ARMX.js.map → delete-ER3LIA3F.js.map} +0 -0
  1081. /package/dist/{delete-MRM2S4Z5.js.map → delete-HVCQQSG4.js.map} +0 -0
  1082. /package/dist/{delete-GZKGPBBD.js.map → delete-QPPPLHS4.js.map} +0 -0
  1083. /package/dist/{delete-A5XD52K4.js.map → delete-T22GD7FG.js.map} +0 -0
  1084. /package/dist/{delete-DLQ2ZZDA.js.map → delete-VZUF57KL.js.map} +0 -0
  1085. /package/dist/{demographics-ZLZOIWUE.js.map → demographics-3KAK7JGZ.js.map} +0 -0
  1086. /package/dist/{describe-P3PPIQME.js.map → describe-ADQWM55K.js.map} +0 -0
  1087. /package/dist/{describe-6NVOWIBE.js.map → describe-XEGTSEUI.js.map} +0 -0
  1088. /package/dist/{dimensions-EYAYO27I.js.map → dimensions-WQZBBY7I.js.map} +0 -0
  1089. /package/dist/{discard-VNVNJWNX.js.map → discard-VU72HO4B.js.map} +0 -0
  1090. /package/dist/{discover-P6TUGZ45.js.map → discover-HXKIQWH2.js.map} +0 -0
  1091. /package/dist/{domain-OBICRJP3.js.map → domain-ERWROFZC.js.map} +0 -0
  1092. /package/dist/{download-7T6HIJKD.js.map → download-7Z3BWAHR.js.map} +0 -0
  1093. /package/dist/{draft-UECMJ6B4.js.map → draft-3V3HOB5N.js.map} +0 -0
  1094. /package/dist/{draft-3ZVCQSAG.js.map → draft-4TCT6UQD.js.map} +0 -0
  1095. /package/dist/{draft-V75RBORX.js.map → draft-5YJY6YT5.js.map} +0 -0
  1096. /package/dist/{draft-KIBMVKSR.js.map → draft-7LIGULA2.js.map} +0 -0
  1097. /package/dist/{draft-666YKA3P.js.map → draft-C2DDLJH2.js.map} +0 -0
  1098. /package/dist/{draft-THPZFASM.js.map → draft-FCCYMFKW.js.map} +0 -0
  1099. /package/dist/{draft-Z3VUQ4LJ.js.map → draft-FELTG6LD.js.map} +0 -0
  1100. /package/dist/{draft-YDY2Q2K6.js.map → draft-JIFFSL5U.js.map} +0 -0
  1101. /package/dist/{env-KIP2J2UB.js.map → env-IUF4DTG2.js.map} +0 -0
  1102. /package/dist/{experiment-PYQPAZZN.js.map → experiment-T3H6LFLK.js.map} +0 -0
  1103. /package/dist/{export-JQRMBJ7D.js.map → export-V7WQJD4L.js.map} +0 -0
  1104. /package/dist/{extract-7QKLME7Z.js.map → extract-WW7WLLRB.js.map} +0 -0
  1105. /package/dist/{facets-7J66L3NK.js.map → facets-J4JLHESD.js.map} +0 -0
  1106. /package/dist/{favorites-NSGF4OV5.js.map → favorites-XLCT5S6E.js.map} +0 -0
  1107. /package/dist/{feedback-3LDG4WVJ.js.map → feedback-J6FSCCWF.js.map} +0 -0
  1108. /package/dist/{feedback-record-CTAUHLMF.js.map → feedback-record-4AY3MG2E.js.map} +0 -0
  1109. /package/dist/{fetch-XF76JABV.js.map → fetch-C4JYRA53.js.map} +0 -0
  1110. /package/dist/{fetch-4RXXZGO4.js.map → fetch-QIHGIATQ.js.map} +0 -0
  1111. /package/dist/{find-FRRHAPWX.js.map → find-SLZO4FBR.js.map} +0 -0
  1112. /package/dist/{fit-7237F5EB.js.map → fit-SSR3JDDI.js.map} +0 -0
  1113. /package/dist/{flows-GGB46DLH.js.map → flows-IRFHGBUR.js.map} +0 -0
  1114. /package/dist/{fonts-S3GWKOUJ.js.map → fonts-ZU5Q4A6U.js.map} +0 -0
  1115. /package/dist/{forecast-6JVKXNFB.js.map → forecast-KVPAU7OT.js.map} +0 -0
  1116. /package/dist/{forecast-SVD3LMMY.js.map → forecast-XGBT722Z.js.map} +0 -0
  1117. /package/dist/{funding-NYO65IMT.js.map → funding-BWSGYQPP.js.map} +0 -0
  1118. /package/dist/{funnel-RCQOIQZ5.js.map → funnel-JXC5WXLR.js.map} +0 -0
  1119. /package/dist/{ga4-U6DMJ6K4.js.map → ga4-XWK5H7HN.js.map} +0 -0
  1120. /package/dist/{generate-MMBYB44G.js.map → generate-E6YDVJ23.js.map} +0 -0
  1121. /package/dist/{get-MN2GRXGZ.js.map → get-23E7ZEKP.js.map} +0 -0
  1122. /package/dist/{get-XN5ZGDIK.js.map → get-HXJSMHDC.js.map} +0 -0
  1123. /package/dist/{get-KQSM2MXM.js.map → get-IWYF6PA4.js.map} +0 -0
  1124. /package/dist/{get-6WEYKOY6.js.map → get-JGCMBA7Y.js.map} +0 -0
  1125. /package/dist/{get-3L6W3E3T.js.map → get-QLFMRSLN.js.map} +0 -0
  1126. /package/dist/{get-P743RPSI.js.map → get-XWIA6BEO.js.map} +0 -0
  1127. /package/dist/{get-YIHTAMRT.js.map → get-ZLSZTGXA.js.map} +0 -0
  1128. /package/dist/{gif-53ULFVLR.js.map → gif-KHF452GC.js.map} +0 -0
  1129. /package/dist/{google-QYYYSSXI.js.map → google-5GESCEKC.js.map} +0 -0
  1130. /package/dist/{google-CI2AMJKN.js.map → google-KTDHD75U.js.map} +0 -0
  1131. /package/dist/{google-ads-YAJ33LTW.js.map → google-ads-VW5UGOGO.js.map} +0 -0
  1132. /package/dist/{group-EFZ3AJIE.js.map → group-JYNKEOPG.js.map} +0 -0
  1133. /package/dist/{group-GKWCCX66.js.map → group-ZMCHUQMI.js.map} +0 -0
  1134. /package/dist/{gsc-TAKOF7J5.js.map → gsc-I6RIFE7I.js.map} +0 -0
  1135. /package/dist/{history-DBIEYQHY.js.map → history-F3N6M4JM.js.map} +0 -0
  1136. /package/dist/{history-QWYLRQBO.js.map → history-IAKV2LJN.js.map} +0 -0
  1137. /package/dist/{hubspot-DDONLJ7R.js.map → hubspot-QVDLE3BF.js.map} +0 -0
  1138. /package/dist/{icon-L4RSS6PZ.js.map → icon-4C2JOBPE.js.map} +0 -0
  1139. /package/dist/{ideas-N44Z2SIT.js.map → ideas-7COQX7C3.js.map} +0 -0
  1140. /package/dist/{images-BKHCBCE7.js.map → images-5XNXXZLM.js.map} +0 -0
  1141. /package/dist/{improve-BCCU5AS6.js.map → improve-6VC6ORAG.js.map} +0 -0
  1142. /package/dist/{ingest-VNRTFD4Y.js.map → ingest-L6MMXL6R.js.map} +0 -0
  1143. /package/dist/{ingest-HBECWLOB.js.map → ingest-UP42M3WU.js.map} +0 -0
  1144. /package/dist/{insights-ZIU6FJMS.js.map → insights-3H736QZH.js.map} +0 -0
  1145. /package/dist/{insights-NZWSJKU4.js.map → insights-3TEVP4B2.js.map} +0 -0
  1146. /package/dist/{inspect-7GGJDJBJ.js.map → inspect-2WOLOPTV.js.map} +0 -0
  1147. /package/dist/{inspiration-CGM3NK6X.js.map → inspiration-I2XMXXEW.js.map} +0 -0
  1148. /package/dist/{intent-HKNBXEDS.js.map → intent-IYUKLNST.js.map} +0 -0
  1149. /package/dist/{job-L7RJZMSG.js.map → job-MTHK2PPN.js.map} +0 -0
  1150. /package/dist/{job-create-JUDAN52O.js.map → job-create-AD3L6A6F.js.map} +0 -0
  1151. /package/dist/{job-status-U43WE3RJ.js.map → job-status-MCFOA5V3.js.map} +0 -0
  1152. /package/dist/{keep-55CPC7DG.js.map → keep-NNATO2B6.js.map} +0 -0
  1153. /package/dist/{keyword-gap-HUSP6MOT.js.map → keyword-gap-RSITTJ56.js.map} +0 -0
  1154. /package/dist/{keyword-metrics-2C3VFGDQ.js.map → keyword-metrics-E5D2ESIH.js.map} +0 -0
  1155. /package/dist/{keywords-for-site-4GV4KS4X.js.map → keywords-for-site-SRUKRBCR.js.map} +0 -0
  1156. /package/dist/{landing-V2FMPQOK.js.map → landing-ZFZ4LYCB.js.map} +0 -0
  1157. /package/dist/{languages-JSGWCC7Z.js.map → languages-3FETIHSB.js.map} +0 -0
  1158. /package/dist/{languages-75YJZAHL.js.map → languages-SJ6ZWALA.js.map} +0 -0
  1159. /package/dist/{layerize-RPD6SNP6.js.map → layerize-NSF6NEWY.js.map} +0 -0
  1160. /package/dist/{leads-OPRVJBQG.js.map → leads-EVFLPNG6.js.map} +0 -0
  1161. /package/dist/{leads-DTULNGMU.js.map → leads-P46ND2LT.js.map} +0 -0
  1162. /package/dist/{learn-EW2CKOFS.js.map → learn-EJSMXKSE.js.map} +0 -0
  1163. /package/dist/{library-ARKRLCNJ.js.map → library-UKGHGGOG.js.map} +0 -0
  1164. /package/dist/{lighthouse-6ZC45E53.js.map → lighthouse-B2IBNWLX.js.map} +0 -0
  1165. /package/dist/{line-item-writes-EF3BJ5KV.js.map → line-item-writes-EM6I5KIH.js.map} +0 -0
  1166. /package/dist/{line-items-G467XOZF.js.map → line-items-GLNMIKM5.js.map} +0 -0
  1167. /package/dist/{link-5SU4MR6M.js.map → link-CZ4XFU2D.js.map} +0 -0
  1168. /package/dist/{linkedin-OFM3VVOB.js.map → linkedin-ES3KPPHF.js.map} +0 -0
  1169. /package/dist/{list-7MVBXOJT.js.map → list-3IJMAQHX.js.map} +0 -0
  1170. /package/dist/{list-SUTCQLGI.js.map → list-B7GN44R3.js.map} +0 -0
  1171. /package/dist/{list-LI4OGQFW.js.map → list-BDPUPCQZ.js.map} +0 -0
  1172. /package/dist/{list-HEWXAVCL.js.map → list-HGQY4OHN.js.map} +0 -0
  1173. /package/dist/{list-VFZPXFMA.js.map → list-JD7EIBPU.js.map} +0 -0
  1174. /package/dist/{list-A5UCIR2J.js.map → list-NZZ75O6C.js.map} +0 -0
  1175. /package/dist/{list-P7NAFN6J.js.map → list-XBYKFXS3.js.map} +0 -0
  1176. /package/dist/{list-AL7N6X2P.js.map → list-XRON5I6M.js.map} +0 -0
  1177. /package/dist/{locations-6XADFU3V.js.map → locations-M2665NGJ.js.map} +0 -0
  1178. /package/dist/{locations-74TPQWAT.js.map → locations-TKPILKLO.js.map} +0 -0
  1179. /package/dist/{log-I3MAU44R.js.map → log-KUHIZL53.js.map} +0 -0
  1180. /package/dist/{logo-Q5D7PZY6.js.map → logo-EVE3TAL5.js.map} +0 -0
  1181. /package/dist/{lookup-TCU2ZEZW.js.map → lookup-Z5TFHYDU.js.map} +0 -0
  1182. /package/dist/{map-OT6F33VF.js.map → map-NNMEQE6E.js.map} +0 -0
  1183. /package/dist/{mcp-LC3L2JQO.js.map → mcp-AJDXG3NV.js.map} +0 -0
  1184. /package/dist/{media-6CQYG4UY.js.map → media-DGNFOT7M.js.map} +0 -0
  1185. /package/dist/{media-MYZ5I7WK.js.map → media-FRNTELKI.js.map} +0 -0
  1186. /package/dist/{media-sources-RK6EJYBQ.js.map → media-sources-V452RJ6B.js.map} +0 -0
  1187. /package/dist/{members-7CHDHW7H.js.map → members-VUJ62KJQ.js.map} +0 -0
  1188. /package/dist/{meta-7XP5AWYU.js.map → meta-NGBLUNVU.js.map} +0 -0
  1189. /package/dist/{metrics-73LI743C.js.map → metrics-QRRK473C.js.map} +0 -0
  1190. /package/dist/{models-7U3GRYHF.js.map → models-4BTFIZZZ.js.map} +0 -0
  1191. /package/dist/{normalize-ICQF2AST.js.map → normalize-O47OIEUO.js.map} +0 -0
  1192. /package/dist/{normalize-CXMYHNSA.js.map → normalize-OTNIBYUO.js.map} +0 -0
  1193. /package/dist/{options-E4IO5SR5.js.map → options-FTXE6HFT.js.map} +0 -0
  1194. /package/dist/{output-RAH3TSIL.js.map → output-W473ZLGR.js.map} +0 -0
  1195. /package/dist/{page-GS3WLT2C.js.map → page-7TEJ5NA5.js.map} +0 -0
  1196. /package/dist/{pages-FXYQLHSJ.js.map → pages-S2E3FHDH.js.map} +0 -0
  1197. /package/dist/{performance-UQLSBPYN.js.map → performance-IMD2N7OD.js.map} +0 -0
  1198. /package/dist/{pinterest-AUH7WBA7.js.map → pinterest-DQC3JXQT.js.map} +0 -0
  1199. /package/dist/{pixels-45A55MOP.js.map → pixels-M5GS7DIH.js.map} +0 -0
  1200. /package/dist/{pixels-ZFF4BGUH.js.map → pixels-MHH4N35F.js.map} +0 -0
  1201. /package/dist/{plan-NBFLYAOW.js.map → plan-GGLBOLIU.js.map} +0 -0
  1202. /package/dist/{preview-AD4GKYIA.js.map → preview-AHDEJO2X.js.map} +0 -0
  1203. /package/dist/{promoted-tweet-writes-ZW3FUPFG.js.map → promoted-tweet-writes-XUM4WGZH.js.map} +0 -0
  1204. /package/dist/{promoted-tweets-ZLQ6GZD5.js.map → promoted-tweets-TIHMJ5PU.js.map} +0 -0
  1205. /package/dist/{properties-L2XIYQDS.js.map → properties-KOY2GE45.js.map} +0 -0
  1206. /package/dist/{publish-H2PBR5XN.js.map → publish-Q7MHUVVZ.js.map} +0 -0
  1207. /package/dist/{query-SGGBCHTF.js.map → query-EO7BX4MH.js.map} +0 -0
  1208. /package/dist/{query-VTGVZQIO.js.map → query-QZWMKAJZ.js.map} +0 -0
  1209. /package/dist/{query-GDUTZ4R7.js.map → query-XLTRAAQO.js.map} +0 -0
  1210. /package/dist/{questionnaire-J56AATOX.js.map → questionnaire-BL3G6UYL.js.map} +0 -0
  1211. /package/dist/{read-G5AC332V.js.map → read-ZMNYD3PA.js.map} +0 -0
  1212. /package/dist/{reddit-TGQYQUNZ.js.map → reddit-RO3VKMJ7.js.map} +0 -0
  1213. /package/dist/{refresh-HVBCC2ZI.js.map → refresh-OER4JT3Q.js.map} +0 -0
  1214. /package/dist/{release-VI3JT6O6.js.map → release-4DLGFSYY.js.map} +0 -0
  1215. /package/dist/{relevant-pages-2FW3E5KD.js.map → relevant-pages-ZGGWFDLL.js.map} +0 -0
  1216. /package/dist/{remove-6LGGKMLJ.js.map → remove-MQ3JY36P.js.map} +0 -0
  1217. /package/dist/{remove-4EE7STMS.js.map → remove-WENY6GQU.js.map} +0 -0
  1218. /package/dist/{reopen-LEGLAOMA.js.map → reopen-VSVK5EZI.js.map} +0 -0
  1219. /package/dist/{rerun-A5DPZFOO.js.map → rerun-B32CIKVH.js.map} +0 -0
  1220. /package/dist/{research-O6YMV2TG.js.map → research-2XAQRMC3.js.map} +0 -0
  1221. /package/dist/{research-WOJELJ4K.js.map → research-ZEIW667A.js.map} +0 -0
  1222. /package/dist/{reset-PQHURJDC.js.map → reset-DXBESBL7.js.map} +0 -0
  1223. /package/dist/{reset-V2X7DFHD.js.map → reset-G4A52FMR.js.map} +0 -0
  1224. /package/dist/{resolve-Q4AACDIC.js.map → resolve-FA6CFVX4.js.map} +0 -0
  1225. /package/dist/{retry-BB6NJBC4.js.map → retry-CXTOGFZT.js.map} +0 -0
  1226. /package/dist/{retry-WMGEUJPB.js.map → retry-THMD27CA.js.map} +0 -0
  1227. /package/dist/{retry-failed-6HXPUVXJ.js.map → retry-failed-3R35LZ6I.js.map} +0 -0
  1228. /package/dist/{run-OBYA2F3E.js.map → run-HRSNUGWJ.js.map} +0 -0
  1229. /package/dist/{run-V6E36GXW.js.map → run-NYJUDS32.js.map} +0 -0
  1230. /package/dist/{scaffold-ad-KKYI7FZJ.js.map → scaffold-ad-RUJQIYQH.js.map} +0 -0
  1231. /package/dist/{scaffold-video-Y2BWXZSX.js.map → scaffold-video-RYVG4IFA.js.map} +0 -0
  1232. /package/dist/{schedule-EO27AZTT.js.map → schedule-ENH4N66R.js.map} +0 -0
  1233. /package/dist/{schedule-O2K6M43V.js.map → schedule-KSIMVG5U.js.map} +0 -0
  1234. /package/dist/{scheduled-agents-OIJBX7OO.js.map → scheduled-agents-RM24BRGD.js.map} +0 -0
  1235. /package/dist/{schema-7GSCTQIC.js.map → schema-JJVSWKGP.js.map} +0 -0
  1236. /package/dist/{schema-6GR77VJG.js.map → schema-MT76C7XK.js.map} +0 -0
  1237. /package/dist/{scrape-ETAMW43A.js.map → scrape-ICS5UA62.js.map} +0 -0
  1238. /package/dist/{screenshot-YCQF25ZB.js.map → screenshot-YPUFPY5W.js.map} +0 -0
  1239. /package/dist/{search-UO5KJTYS.js.map → search-6BHODVNN.js.map} +0 -0
  1240. /package/dist/{search-MEEM4D3W.js.map → search-HOQZ3XIK.js.map} +0 -0
  1241. /package/dist/{search-Q7PAV7NY.js.map → search-KFP4GPMJ.js.map} +0 -0
  1242. /package/dist/{search-OQNGSMUH.js.map → search-TCDI77HS.js.map} +0 -0
  1243. /package/dist/{search-742XSULP.js.map → search-W7E5S347.js.map} +0 -0
  1244. /package/dist/{select-ASR5SBYE.js.map → select-CB5BBKHR.js.map} +0 -0
  1245. /package/dist/{sends-WGJVQUMF.js.map → sends-HDTG7XRL.js.map} +0 -0
  1246. /package/dist/{sequences-OIPVR7JL.js.map → sequences-SISO5JGS.js.map} +0 -0
  1247. /package/dist/{set-prompt-I32464V4.js.map → set-prompt-IS7JSFYY.js.map} +0 -0
  1248. /package/dist/{setup-links-NP2HULRC.js.map → setup-links-NBO7B64S.js.map} +0 -0
  1249. /package/dist/{shared-HJDFNID4.js.map → shared-MJEF5Z6R.js.map} +0 -0
  1250. /package/dist/{site-PTIYQQ3Z.js.map → site-5MPVICS2.js.map} +0 -0
  1251. /package/dist/{sitemaps-POPZJTAX.js.map → sitemaps-G3YCZDEM.js.map} +0 -0
  1252. /package/dist/{sites-262H6LM4.js.map → sites-YH2ZIMCP.js.map} +0 -0
  1253. /package/dist/{skills-6TQZLIMP.js.map → skills-SQTM676S.js.map} +0 -0
  1254. /package/dist/{sources-FJLCIG6X.js.map → sources-FSYJ2EQL.js.map} +0 -0
  1255. /package/dist/{sources-5FRMFKDA.js.map → sources-OES5YJY6.js.map} +0 -0
  1256. /package/dist/{stale-YUYMETFC.js.map → stale-YT3CGHAI.js.map} +0 -0
  1257. /package/dist/{stats-F5JZVPYG.js.map → stats-IDL2KWGM.js.map} +0 -0
  1258. /package/dist/{status-UYIQFC7L.js.map → status-ZDKRO7TH.js.map} +0 -0
  1259. /package/dist/{sticker-4KMBSMP5.js.map → sticker-2R5LODHJ.js.map} +0 -0
  1260. /package/dist/{stock-KXJ26BY4.js.map → stock-5DWDTNFB.js.map} +0 -0
  1261. /package/dist/{studio-6ZL76TZR.js.map → studio-PPFFAUWO.js.map} +0 -0
  1262. /package/dist/{sync-ZSNUBYPM.js.map → sync-7DWOHCVF.js.map} +0 -0
  1263. /package/dist/{sync-CF7FVUQJ.js.map → sync-JRRGJWFH.js.map} +0 -0
  1264. /package/dist/{sync-527ZCA4A.js.map → sync-RNKJFPDI.js.map} +0 -0
  1265. /package/dist/{sync-definition-M4KRPGTN.js.map → sync-definition-SDJM567M.js.map} +0 -0
  1266. /package/dist/{tag-manager-JAAMOUGB.js.map → tag-manager-MBS6YCZM.js.map} +0 -0
  1267. /package/dist/{tags-O27SK3YX.js.map → tags-5EVJ73IX.js.map} +0 -0
  1268. /package/dist/{tags-VAYVSQM6.js.map → tags-5THBYIHN.js.map} +0 -0
  1269. /package/dist/{tags-J3BGX3E6.js.map → tags-D74DMYCW.js.map} +0 -0
  1270. /package/dist/{tags-2MX3332V.js.map → tags-KFDRX4H7.js.map} +0 -0
  1271. /package/dist/{tags-7767I2D6.js.map → tags-YEWHOSC5.js.map} +0 -0
  1272. /package/dist/{targeting-constants-XJ2VOW7K.js.map → targeting-constants-KIMGCL2N.js.map} +0 -0
  1273. /package/dist/{targeting-criteria-GOTI75Y4.js.map → targeting-criteria-5BN4EELG.js.map} +0 -0
  1274. /package/dist/{targets-FC7CGFRD.js.map → targets-DBQNYE34.js.map} +0 -0
  1275. /package/dist/{templates-EF5LOWP5.js.map → templates-J2NZIOY2.js.map} +0 -0
  1276. /package/dist/{testimonials-MRMRWF2T.js.map → testimonials-2IJE6K2L.js.map} +0 -0
  1277. /package/dist/{themes-2ZV7OCJ3.js.map → themes-6BRONMJ2.js.map} +0 -0
  1278. /package/dist/{top-companies-VTLR6GTW.js.map → top-companies-TAA7HKTA.js.map} +0 -0
  1279. /package/dist/{translate-UMTKAUJ3.js.map → translate-ZVQQJJQT.js.map} +0 -0
  1280. /package/dist/{triggers-Y7ZMMY3C.js.map → triggers-2VPLSNP7.js.map} +0 -0
  1281. /package/dist/{tweets-ATP3FQAC.js.map → tweets-YEMIGLP7.js.map} +0 -0
  1282. /package/dist/{unfollow-CBVPGPF7.js.map → unfollow-S6XQVQIA.js.map} +0 -0
  1283. /package/dist/{unlink-HZCFLXH4.js.map → unlink-DDTHG25I.js.map} +0 -0
  1284. /package/dist/{unstage-562HOOE7.js.map → unstage-ABSCDW43.js.map} +0 -0
  1285. /package/dist/{unstage-V7GMMOWR.js.map → unstage-VDLTHNHY.js.map} +0 -0
  1286. /package/dist/{update-I5A5TOZJ.js.map → update-C2QWKWXB.js.map} +0 -0
  1287. /package/dist/{update-ATSXY5UN.js.map → update-COMDOEYG.js.map} +0 -0
  1288. /package/dist/{update-DKU2UDFA.js.map → update-FMROPHXQ.js.map} +0 -0
  1289. /package/dist/{update-ZF3VFYLB.js.map → update-SY54UP5O.js.map} +0 -0
  1290. /package/dist/{upload-SIAI6NMH.js.map → upload-7QBWAQLM.js.map} +0 -0
  1291. /package/dist/{upload-L5SYZB3X.js.map → upload-PTXQ7IEE.js.map} +0 -0
  1292. /package/dist/{upscale-YWRLFU22.js.map → upscale-YQ2KZRCI.js.map} +0 -0
  1293. /package/dist/{url-options-JSX6HBZL.js.map → url-options-QRGN4Q34.js.map} +0 -0
  1294. /package/dist/{url-params-AZUI3CW3.js.map → url-params-ZBOCO4CG.js.map} +0 -0
  1295. /package/dist/{use-UT2DIZOG.js.map → use-BFD6WCDB.js.map} +0 -0
  1296. /package/dist/{validate-MC4EIQI5.js.map → validate-M7B2SBDH.js.map} +0 -0
  1297. /package/dist/{variant-FLZJYGYL.js.map → variant-U77I2UDY.js.map} +0 -0
  1298. /package/dist/{videos-S7BYFSU3.js.map → videos-2EPKRCW6.js.map} +0 -0
  1299. /package/dist/{view-NPAG66QK.js.map → view-BDLUTKMK.js.map} +0 -0
  1300. /package/dist/{viewer-check-45T2HLAH.js.map → viewer-check-YF6ENNNL.js.map} +0 -0
  1301. /package/dist/{web-5R7LHKIT.js.map → web-JRDXE2GL.js.map} +0 -0
  1302. /package/dist/{write-commands-VXL5QKMT.js.map → write-commands-3UXPJJ75.js.map} +0 -0
  1303. /package/dist/{write-commands-MFRZD6Q6.js.map → write-commands-HZI5YF52.js.map} +0 -0
  1304. /package/dist/{write-commands-VWSLDBPT.js.map → write-commands-MYA273DT.js.map} +0 -0
  1305. /package/dist/{write-commands-WTRSOSO3.js.map → write-commands-OQPBPQ77.js.map} +0 -0
  1306. /package/dist/{x-22PKVRYX.js.map → x-WA3Q46K6.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/winning-ads/search.ts"],"sourcesContent":["import {\n type ScopedWinnersSearchResponse,\n scopedWinnersSearchRequestSchema,\n staticFormatPatternSchema,\n winnerSearchScopeSchema,\n winnersSortSchema,\n} from \"@baker/api/ad-library\";\nimport { defineCommand } from \"citty\";\nimport { ApiError, apiPost } from \"../../client.ts\";\nimport { type OutputFormat, winningAdNormalizer, writeJson, writeOutput } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { adFieldPlan, adRows } from \"./adRows.ts\";\nimport { reportError, splitList } from \"./shared.ts\";\n\n// Listed in full: agents probed junk values (xx, foo) only to be told the list.\nconst FORMAT_PATTERN_DESCRIPTION = `Comma list of static containers, the best proven ads in them from any category (\\`winning-ads formats\\` ranks them for a segment): ${staticFormatPatternSchema.options.join(\", \")}`;\nconst STAGE_DESCRIPTION =\n \"Comma list of where the ad is in its life: new (≤7 days running), testing (≤21), proven (≤60), evergreen (longer), killed_early (stopped within 2 weeks: a lost test), retired, unverified (brand not checked recently). What competitors kept: --stage proven,evergreen\";\nconst SURVIVED_TEST_DESCRIPTION =\n \"Only the version a brand kept after testing it against other versions of the same concept: the strongest public sign it works\";\nconst LANGUAGE_DESCRIPTION =\n \"Comma list of ISO 639-1 codes (es,en) for the language the ad's copy and voiceover are in; where it ran is --country\";\n\nregisterSchema({\n command: \"winning-ads.search\",\n description:\n \"Search the ad-dna corpus of scored winning ads, the company's followed brands first. Returns a lean shortlist (advertiser, summary, scores, days_active/active/winner_category as proof, media_url, visual/container/mechanism, and who the ad was made for: audience_temperature/funnel_stage/advertiser_size/presumes_brand_knowledge, when known) to pick a reference to reproduce. Each search is a paid reranker + judge call: one strong search, at most one adjusted retry. Each row carries its stage (new, testing, proven, evergreen, killed_early, retired, unverified) and survived_test when it is the version its brand kept after testing; --survived-test or --stage proven,evergreen keep only what competitors kept. Only designed pictures and videos come back by default (no Google search, Shopping or app ads); --format text asks for Google search ads (their words), --all-kinds for everything. A value outside a closed list (--platform, --format, --winner-category, --awareness, --audience-temperature, --funnel-stage, --advertiser-size, --format-pattern, --stage, --sort) is refused with error.fix.validValues.\",\n args: {\n query: { type: \"string\", description: \"Free-text natural-language query\", required: false },\n scope: {\n type: \"string\",\n description:\n \"Which brands to draw from: followed-first (default: followed brands first, topped up from the library when too few clear the relevance floor; the whole library when the company follows nobody), followed (only brands the company follows), all (the whole shared library). Every result carries source: followed|library.\",\n required: false,\n default: \"followed-first\",\n },\n \"ref-ad-id\": {\n type: \"string\",\n description: \"Find ads similar to this ad id (instead of free text)\",\n required: false,\n },\n limit: { type: \"number\", description: \"Max results 1-100 (default 10)\", required: false, default: 10 },\n \"max-per-advertiser\": {\n type: \"number\",\n description:\n \"Spread per advertiser by default: each brand's best 3 first, the rest after the other brands, none dropped. Set 1-50 to drop past N (1 = one reference per brand), 0 for rank order\",\n required: false,\n },\n \"min-relevance\": { type: \"number\", description: \"Relevance floor 0-1; trims weak matches\", required: false },\n sort: {\n type: \"string\",\n description:\n \"Order of a browse with no query: winner (default, by winner score), longest_running (by days active), newest (by first seen). Ignored when a query is given: a query ranks by relevance blended with winner score.\",\n required: false,\n default: \"winner\",\n },\n platform: {\n type: \"string\",\n description: \"Comma list: meta,linkedin,tiktok,google\",\n required: false,\n },\n format: { type: \"string\", description: \"Comma list: video,static,carousel,text\", required: false },\n \"winner-category\": {\n type: \"string\",\n description: \"Comma list: winner,scaled_winner,evergreen,rising,untested,dud,…\",\n required: false,\n },\n awareness: {\n type: \"string\",\n description: \"Comma list: unaware,problem_aware,solution_aware,product_aware,most_aware\",\n required: false,\n },\n \"audience-temperature\": {\n type: \"string\",\n description:\n \"Comma list of who the ad was made for: 0_cold (strangers), 1_warm_engaged (engaged, not yet visited), 2_hot_visited (visited the site), 3_customer. A cold brief takes 0_cold references.\",\n required: false,\n },\n \"funnel-stage\": { type: \"string\", description: \"Comma list: TOF,MOF,BOF\", required: false },\n \"advertiser-size\": { type: \"string\", description: \"Comma list: solo,smb,mid,enterprise\", required: false },\n \"exclude-brand-reliant\": {\n type: \"boolean\",\n description:\n \"Drop ads whose copy only works if the viewer already knows the brand (an unexplained logo, mascot, nickname or promise). Ads not judged yet are kept and show no presumes_brand_knowledge. Use it whenever the ad you are making is for viewers who don't know the brand.\",\n required: false,\n default: false,\n },\n country: {\n type: \"string\",\n description:\n \"Comma list of ISO country codes (US,GB): ads known to run there, plus ads with no country data (every Meta ad) in that country's main language. An unknown code is refused with the codes that have ads\",\n required: false,\n },\n language: { type: \"string\", description: LANGUAGE_DESCRIPTION, required: false },\n \"advertiser-id\": {\n type: \"string\",\n description: \"Restrict to these advertiser ids (browse one brand's winners)\",\n required: false,\n },\n \"exclude-advertiser\": {\n type: \"string\",\n description: \"Drop these advertiser ids, usually your own brand (a reused ad is marked already_adapted instead)\",\n required: false,\n },\n \"first-seen-after\": {\n type: \"string\",\n description: \"ISO date (2026-01-01) or datetime; only ads first seen after this\",\n required: false,\n },\n \"first-seen-before\": {\n type: \"string\",\n description: \"ISO date (2026-01-01) or datetime; only ads first seen before this\",\n required: false,\n },\n \"hook-archetype\": {\n type: \"string\",\n description: \"Comma list of hook SEEDS (from `winning-ads hooks`) — narrow to ads on a proven hook pattern\",\n required: false,\n },\n \"format-pattern\": {\n type: \"string\",\n description: FORMAT_PATTERN_DESCRIPTION,\n required: false,\n },\n stage: { type: \"string\", description: STAGE_DESCRIPTION, required: false },\n \"survived-test\": { type: \"boolean\", description: SURVIVED_TEST_DESCRIPTION, required: false, default: false },\n \"all-kinds\": {\n type: \"boolean\",\n description:\n \"Also return ads nobody can build a creative on: Google search text, Shopping and app ads. By default a search returns only designed pictures and videos; --format text asks for search ads alone (their words: headlines, claims, offers).\",\n required: false,\n default: false,\n },\n diverse: {\n type: \"boolean\",\n description:\n \"Return one varied set (different brands, containers, hooks) instead of rank order: one reference per concept in a single call\",\n required: false,\n default: false,\n },\n },\n});\n\nexport interface WinningAdsSearchArgs {\n query?: string;\n scope?: string;\n refAdId?: string;\n limit?: string | number;\n maxPerAdvertiser?: string | number;\n minRelevance?: string | number;\n sort?: string;\n platform?: string;\n format?: string;\n winnerCategory?: string;\n awareness?: string;\n audienceTemperature?: string;\n funnelStage?: string;\n advertiserSize?: string;\n excludeBrandReliant?: boolean;\n country?: string;\n language?: string;\n advertiserId?: string;\n excludeAdvertiser?: string;\n firstSeenAfter?: string;\n firstSeenBefore?: string;\n hookArchetype?: string;\n formatPattern?: string;\n stage?: string;\n survivedTest?: boolean;\n diverse?: boolean;\n}\n\nfunction setNumber(body: Record<string, unknown>, key: string, value: string | number | undefined): void {\n if (value !== undefined && value !== \"\") {\n body[key] = Number(value);\n }\n}\n\nfunction setList(target: Record<string, unknown>, key: string, value: string | undefined): void {\n const list = splitList(value);\n if (list.length) {\n target[key] = list;\n }\n}\n\nfunction setString(target: Record<string, unknown>, key: string, value: string | undefined): void {\n if (value) {\n target[key] = value;\n }\n}\n\n/**\n * Build the `/api/ad-library/winners/search` request body from CLI args. Pure —\n * only emits keys the caller set, so the service applies its own defaults.\n * `hard_filters` is omitted entirely when no filter flag is present. The winner\n * category key is `winner_category`; the awareness key is `awareness_stage`;\n * `--exclude-brand-reliant` is `presumes_brand_knowledge: false`.\n */\nexport function buildSearchBody(args: WinningAdsSearchArgs): Record<string, unknown> {\n const body: Record<string, unknown> = {};\n if (args.query) {\n body.free_text_query = args.query;\n }\n if (args.refAdId) {\n body.ref_ad_id = args.refAdId;\n }\n setString(body, \"scope\", args.scope);\n setNumber(body, \"limit\", args.limit);\n setNumber(body, \"max_per_advertiser\", args.maxPerAdvertiser);\n setNumber(body, \"min_relevance\", args.minRelevance);\n setString(body, \"sort\", args.sort);\n if (args.diverse) {\n body.diverse = true;\n }\n\n const hardFilters: Record<string, unknown> = {};\n setList(hardFilters, \"platform\", args.platform);\n setList(hardFilters, \"format\", args.format);\n setList(hardFilters, \"winner_category\", args.winnerCategory);\n setList(hardFilters, \"awareness_stage\", args.awareness);\n setList(hardFilters, \"audience_temperature\", args.audienceTemperature);\n setList(hardFilters, \"funnel_stage\", args.funnelStage);\n setList(hardFilters, \"advertiser_size\", args.advertiserSize);\n if (args.excludeBrandReliant) {\n hardFilters.presumes_brand_knowledge = false;\n }\n setList(hardFilters, \"country\", args.country);\n setList(hardFilters, \"language\", args.language?.toLowerCase());\n setList(hardFilters, \"advertiser_ids\", args.advertiserId);\n setList(hardFilters, \"exclude_advertiser_ids\", args.excludeAdvertiser);\n setList(hardFilters, \"hook_archetype_seeds\", args.hookArchetype);\n setList(hardFilters, \"static_format_patterns\", args.formatPattern);\n setString(hardFilters, \"first_seen_after\", args.firstSeenAfter);\n setString(hardFilters, \"first_seen_before\", args.firstSeenBefore);\n setList(hardFilters, \"lifecycle_stage\", args.stage);\n if (args.survivedTest) {\n hardFilters.survived_test = true;\n }\n if (Object.keys(hardFilters).length) {\n body.hard_filters = hardFilters;\n }\n\n return body;\n}\n\n/**\n * A search is for a reference to build on, so it asks for designed ads only\n * (pictures and videos a brand made; no Google search, Shopping or app ads)\n * unless `--all-kinds` is passed or `--format` names search text ads.\n */\nexport function designedByDefault(\n body: Record<string, unknown>,\n opts: { allKinds?: boolean },\n): Record<string, unknown> {\n const filters = (body.hard_filters ?? {}) as Record<string, unknown>;\n const wantsText = Array.isArray(filters.format) && filters.format.includes(\"text\");\n if (opts.allKinds || wantsText) return body;\n return { ...body, hard_filters: { ...filters, design_reference: true } };\n}\n\n/**\n * Nudges after a search. A company that follows nobody only ever gets\n * references from brands other Baker clients track, which may be nowhere near\n * its market, so the fix is to follow its competitors.\n */\nexport function searchHints(data: {\n scope?: string | null;\n following_count?: number | null;\n results?: ReadonlyArray<unknown> | null;\n}): string[] {\n const hints: string[] = [];\n if ((data.following_count ?? 0) === 0) {\n hints.push(\n 'The company follows no brands, so these references come from brands tracked by others and may be off-market. Follow competitors with `baker winning-ads follow-competitors \"<domain,domain>\"` to get on-market references, then search with --scope followed-first.',\n );\n } else if (data.scope === \"followed\" && (data.results?.length ?? 0) === 0) {\n hints.push(\n \"No followed brand has an ad on this brief. Re-run with --scope followed-first to top up from the whole library.\",\n );\n } else if ((data.results?.length ?? 0) === 0) {\n hints.push(\n \"No reference matched the brief and every filter. Search once more with ONE change: drop the narrowest filter (--country, --audience-temperature or one --awareness stage) or shorten the brief to the product and who it is for. For a container your concept needs, --format-pattern <container> with no query returns the best proven ads in it from any category.\",\n );\n }\n const kept = keptHint(data.results ?? []);\n if (kept) hints.push(kept);\n const adapted = (data.results ?? []).filter(\n (r) => (r as { baker_uses?: { ours?: boolean } } | null)?.baker_uses?.ours === true,\n ).length;\n if (adapted > 0) {\n hints.push(\n `${adapted} of these references you already adapted into a creative (already_adapted), so they are listed last. A second creative from the same ad is a variant, not a new concept: pick another unless the user asked for one.`,\n );\n }\n return hints;\n}\n\nconst KEPT_STAGES = new Set([\"proven\", \"evergreen\"]);\nconst UNTESTED_STAGES = new Set([\"new\", \"testing\"]);\n\n/**\n * What competitors kept after testing (the version a test kept, or an ad\n * running past its test window) outranks what merely runs: an ad in its first\n * three weeks may be the version they cut next week.\n */\nfunction keptHint(results: ReadonlyArray<unknown>): string | null {\n const rows = results.map((r) => (r ?? {}) as { stage?: unknown; survived_test?: unknown });\n const kept = rows.filter((r) => r.survived_test === true || KEPT_STAGES.has(String(r.stage))).length;\n if (kept > 0 && kept < rows.length) {\n return `${kept} of these are what competitors kept after testing (survived_test, or stage proven/evergreen): prefer them as references; a new or testing ad may still be cut.`;\n }\n if (kept === 0 && rows.some((r) => UNTESTED_STAGES.has(String(r.stage)))) {\n return \"None of these has outlived a test yet (stage new/testing): to reference what competitors kept, search once more with --survived-test or --stage proven,evergreen.\";\n }\n return null;\n}\n\nconst UNKNOWN_COUNTRY_RE = /Unknown country code\\(s\\): ([^.]+)\\. Countries with ads: ([^.]+)\\./;\n\n// A type alias so it fits the envelope's `{ action, explanation } & Record<string, unknown>` fix slot.\nexport type UnknownCountryFix = {\n action: \"retry_with_a_valid_country\";\n explanation: string;\n unknownCountries: string[];\n validCountries: string[];\n};\n\n/**\n * The library refuses a `--country` code it holds no ads for, listing the codes\n * it does hold, rather than answering with an empty result that reads like \"no\n * winners in that market\". Only `{ code, message }` crosses the HTTP boundary,\n * so the two lists are parsed back out here to hand the agent a retry it can\n * make in one call. Anything else returns null.\n */\nexport function unknownCountryFix(message: string): UnknownCountryFix | null {\n const match = UNKNOWN_COUNTRY_RE.exec(message);\n if (!match) {\n return null;\n }\n const unknownCountries = splitList(match[1]);\n const validCountries = splitList(match[2]);\n if (unknownCountries.length === 0 || validCountries.length === 0) {\n return null;\n }\n return {\n action: \"retry_with_a_valid_country\",\n explanation: `${unknownCountries.join(\", \")} is not a country the winning-ads library holds ads for. Re-run with codes from \\`validCountries\\`, or drop --country to search every market.`,\n unknownCountries,\n validCountries,\n };\n}\n\nexport type RetryNarrowerFix = { action: \"retry_narrower_once\"; explanation: string };\n\n/** What an agent can do about a failed search, or null when the error is its own to correct. */\nexport function searchErrorFix(code: string, message: string): UnknownCountryFix | RetryNarrowerFix | null {\n if (code === \"UNAVAILABLE\") {\n return {\n action: \"retry_narrower_once\",\n explanation:\n \"The library did not answer this search in time. Retry once with a shorter brief, a lower --limit or fewer filters. If it fails again, continue without a reference and say so; do not stop the creative work.\",\n };\n }\n return unknownCountryFix(message);\n}\n\nfunction reportSearchError(err: unknown): never {\n const fix = err instanceof ApiError ? searchErrorFix(err.code, err.message) : null;\n if (err instanceof ApiError && fix) {\n writeJson({ ok: false, error: { code: err.code, message: err.message, fix } });\n process.exit(1);\n }\n reportError(err);\n}\n\n// A type alias so it fits the envelope's `{ action, explanation } & Record<string, unknown>` fix slot.\nexport type InvalidValuesFix = {\n action: \"retry_with_valid_values\";\n explanation: string;\n flag: string;\n invalidValues: string[];\n validValues: string[];\n};\n\n/** The flag that sets each request field, so a refusal names what the agent typed. */\nconst FLAG_FOR_FIELD: Record<string, string> = {\n limit: \"--limit\",\n max_per_advertiser: \"--max-per-advertiser\",\n min_relevance: \"--min-relevance\",\n platform: \"--platform\",\n format: \"--format\",\n winner_category: \"--winner-category\",\n awareness_stage: \"--awareness\",\n audience_temperature: \"--audience-temperature\",\n funnel_stage: \"--funnel-stage\",\n advertiser_size: \"--advertiser-size\",\n static_format_patterns: \"--format-pattern\",\n first_seen_after: \"--first-seen-after\",\n first_seen_before: \"--first-seen-before\",\n lifecycle_stage: \"--stage\",\n};\n\nfunction flagFor(path: readonly PropertyKey[]): string {\n const field = String(path[0] === \"hard_filters\" ? path[1] : path[0]);\n return FLAG_FOR_FIELD[field] ?? field;\n}\n\n/** What the backend's own request schema refuses, said in flags, with the valid values for a closed list. */\nfunction schemaRejection(body: Record<string, unknown>): SearchRejection | null {\n const parsed = scopedWinnersSearchRequestSchema.safeParse(body, { reportInput: true });\n if (parsed.success) {\n return null;\n }\n const [first] = parsed.error.issues;\n if (!first) {\n return { message: \"Invalid search\" };\n }\n const flag = flagFor(first.path);\n if (first.code === \"invalid_value\") {\n const sameFlag = parsed.error.issues.filter((i) => i.code === \"invalid_value\" && flagFor(i.path) === flag);\n const invalidValues = sameFlag.map((i) => String(i.input));\n const validValues = first.values.map(String);\n return {\n message: `Unknown ${flag} value${invalidValues.length > 1 ? \"s\" : \"\"} ${invalidValues.map((v) => `\"${v}\"`).join(\", \")}.`,\n fix: {\n action: \"retry_with_valid_values\",\n explanation: `Re-run with values from \\`validValues\\` for ${flag}, or drop the flag.`,\n flag,\n invalidValues,\n validValues,\n },\n };\n }\n return { message: first.path.length > 0 ? `${flag}: ${first.message}` : first.message };\n}\n\nexport interface SearchRejection {\n message: string;\n fix?: InvalidValuesFix;\n}\n\nconst NUMERIC_FLAGS = [\n [\"--limit\", \"limit\"],\n [\"--max-per-advertiser\", \"maxPerAdvertiser\"],\n [\"--min-relevance\", \"minRelevance\"],\n] as const;\n\n/** Refuse a call the backend would refuse, before spending a round trip on it. */\nexport function searchRejection(args: WinningAdsSearchArgs, body: Record<string, unknown>): SearchRejection | null {\n if (args.scope !== undefined && !winnerSearchScopeSchema.safeParse(args.scope).success) {\n return { message: `Unknown --scope \"${args.scope}\". Use one of: ${winnerSearchScopeSchema.options.join(\", \")}.` };\n }\n if (args.sort !== undefined && !winnersSortSchema.safeParse(args.sort).success) {\n return { message: `Unknown --sort \"${args.sort}\". Use one of: ${winnersSortSchema.options.join(\", \")}.` };\n }\n for (const [flag, key] of NUMERIC_FLAGS) {\n const value = args[key];\n if (value !== undefined && value !== \"\" && Number.isNaN(Number(value))) {\n return { message: `${flag} must be a number, got \"${value}\".` };\n }\n }\n if (!(\"free_text_query\" in body || \"ref_ad_id\" in body || \"hard_filters\" in body)) {\n return { message: \"Provide a query, --ref-ad-id, or a filter flag\" };\n }\n return schemaRejection(body);\n}\n\n/**\n * The CLI projects to the minimal/decision set for EVERY format (incl. json)\n * so the agent's context only ever holds what it needs to choose.\n */\nfunction writeSearchResult(\n data: ScopedWinnersSearchResponse | null | undefined,\n opts: { output: OutputFormat; fields: string[] | undefined; full: boolean },\n): void {\n const rawResults = Array.isArray(data?.results) ? data.results : [];\n const hints = searchHints(data ?? {});\n const withHints = hints.length > 0 ? { hints } : {};\n if (opts.output === \"json\") {\n const results = adRows(rawResults, opts);\n writeJson({\n ok: true,\n data: {\n results,\n scope: data?.scope ?? null,\n following_count: data?.following_count ?? null,\n pool_size: data?.pool_size ?? null,\n match_confidence: data?.match_confidence ?? null,\n below_floor_count: data?.below_floor_count ?? null,\n country_coverage: data?.country_coverage ?? null,\n },\n ...withHints,\n });\n return;\n }\n writeOutput({ ok: true, data: rawResults, ...withHints }, opts.output, opts.fields, opts.full, winningAdNormalizer);\n}\n\n// followed-first can run two library searches back to back, each allowed 45 s\n// upstream, so the default 60 s would give up on an answer still coming.\nconst SEARCH_TIMEOUT_MS = 120_000;\n\nexport const searchCommand = defineCommand({\n meta: {\n name: \"search\",\n description:\n \"Search winning reference ads, the company's followed brands first. Start here: baker winning-ads search 'B2B SaaS before/after AI automation' --platform meta --format static --exclude-advertiser adv_123 --output md. A set of references for N concepts in one call: add --diverse --limit N. The best proven ad in one container from any category: --format-pattern comparison_table (no query needed; add --sort longest_running to order by staying power). References for viewers who don't know the brand: --audience-temperature 0_cold --exclude-brand-reliant. What competitors kept after testing: --survived-test. Each search is a paid reranker + judge call: one strong search, at most one adjusted retry.\",\n },\n args: {\n query: { type: \"positional\", description: \"Free-text search query\", required: false },\n scope: {\n type: \"string\",\n description:\n \"followed-first (default) | followed | all. followed-first = the company's followed brands first, topped up from the whole library (the whole library when it follows nobody)\",\n required: false,\n },\n \"ref-ad-id\": { type: \"string\", description: \"Find ads similar to this ad id\", required: false },\n limit: {\n type: \"string\",\n description: \"Max results 1-100 (default 10 — a shortlist)\",\n required: false,\n default: \"10\",\n },\n \"max-per-advertiser\": {\n type: \"string\",\n description:\n \"Spread per advertiser by default: each brand's best 3 first, the rest after the other brands, none dropped. Set 1-50 to drop past N (1 = one reference per brand), 0 for rank order\",\n required: false,\n },\n \"min-relevance\": { type: \"string\", description: \"Relevance floor 0-1\", required: false },\n sort: {\n type: \"string\",\n description:\n \"Order of a no-query browse: winner (default) | longest_running | newest. Ignored when a query is given\",\n required: false,\n },\n platform: {\n type: \"string\",\n description: \"Comma list of platforms (meta,linkedin,tiktok,google) — search one or several\",\n required: false,\n },\n format: { type: \"string\", description: \"Comma list of formats (video,static,carousel,text)\", required: false },\n \"winner-category\": {\n type: \"string\",\n description: \"Comma list of winner categories (default: all)\",\n required: false,\n },\n awareness: { type: \"string\", description: \"Comma list of awareness stages\", required: false },\n \"audience-temperature\": {\n type: \"string\",\n description:\n \"Comma list of who the ad was made for: 0_cold | 1_warm_engaged | 2_hot_visited | 3_customer (a cold brief takes 0_cold)\",\n required: false,\n },\n \"funnel-stage\": { type: \"string\", description: \"Comma list: TOF,MOF,BOF\", required: false },\n \"advertiser-size\": { type: \"string\", description: \"Comma list: solo,smb,mid,enterprise\", required: false },\n \"exclude-brand-reliant\": {\n type: \"boolean\",\n description:\n \"Drop ads that only work if the viewer already knows the brand (ads not judged yet are kept). Use it when making ads for viewers who don't know the brand\",\n required: false,\n default: false,\n },\n country: {\n type: \"string\",\n description:\n \"Comma list of ISO country codes (US,GB): ads known to run there, plus ads with no country data (every Meta ad) in that country's main language. An unknown code is refused with the codes that have ads\",\n required: false,\n },\n language: { type: \"string\", description: LANGUAGE_DESCRIPTION, required: false },\n \"advertiser-id\": { type: \"string\", description: \"Restrict to these advertiser ids\", required: false },\n \"exclude-advertiser\": {\n type: \"string\",\n description: \"Drop these advertiser ids, usually your own brand\",\n required: false,\n },\n \"first-seen-after\": { type: \"string\", description: \"ISO date or datetime lower bound\", required: false },\n \"first-seen-before\": { type: \"string\", description: \"ISO date or datetime upper bound\", required: false },\n \"hook-archetype\": {\n type: \"string\",\n description: \"Comma list of proven hook seeds (from `winning-ads hooks`) to narrow the search\",\n required: false,\n },\n \"format-pattern\": {\n type: \"string\",\n description: FORMAT_PATTERN_DESCRIPTION,\n required: false,\n },\n stage: { type: \"string\", description: STAGE_DESCRIPTION, required: false },\n \"survived-test\": { type: \"boolean\", description: SURVIVED_TEST_DESCRIPTION, required: false, default: false },\n \"all-kinds\": {\n type: \"boolean\",\n description: \"Also return Google search text, Shopping and app ads (default: designed pictures and videos only)\",\n required: false,\n default: false,\n },\n diverse: {\n type: \"boolean\",\n description: \"One varied set (different brands, containers, hooks): a reference per concept in one call\",\n required: false,\n default: false,\n },\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 full: {\n type: \"boolean\",\n description:\n \"Include DNA detail (angle, persona, hook, awareness, industry) + reach and media kind; mechanism, days_active, active, winner_category, audience_temperature, funnel_stage, advertiser_size and presumes_brand_knowledge are in the default output\",\n required: false,\n default: false,\n },\n },\n run: async ({ args }) => {\n try {\n const searchArgs: WinningAdsSearchArgs = {\n query: args.query as string | undefined,\n scope: args.scope as string | undefined,\n refAdId: args[\"ref-ad-id\"] as string | undefined,\n limit: args.limit as string | undefined,\n maxPerAdvertiser: args[\"max-per-advertiser\"] as string | undefined,\n minRelevance: args[\"min-relevance\"] as string | undefined,\n sort: args.sort as string | undefined,\n platform: args.platform as string | undefined,\n format: args.format as string | undefined,\n winnerCategory: args[\"winner-category\"] as string | undefined,\n awareness: args.awareness as string | undefined,\n audienceTemperature: args[\"audience-temperature\"] as string | undefined,\n funnelStage: args[\"funnel-stage\"] as string | undefined,\n advertiserSize: args[\"advertiser-size\"] as string | undefined,\n excludeBrandReliant: args[\"exclude-brand-reliant\"] as boolean,\n country: args.country as string | undefined,\n language: args.language as string | undefined,\n advertiserId: args[\"advertiser-id\"] as string | undefined,\n excludeAdvertiser: args[\"exclude-advertiser\"] as string | undefined,\n firstSeenAfter: args[\"first-seen-after\"] as string | undefined,\n firstSeenBefore: args[\"first-seen-before\"] as string | undefined,\n hookArchetype: args[\"hook-archetype\"] as string | undefined,\n formatPattern: args[\"format-pattern\"] as string | undefined,\n stage: args.stage as string | undefined,\n survivedTest: args[\"survived-test\"] as boolean,\n diverse: args.diverse as boolean,\n };\n\n const fieldPlan = adFieldPlan(args.fields, args.full);\n const body = designedByDefault(buildSearchBody(searchArgs), { allKinds: args[\"all-kinds\"] as boolean });\n const rejection = searchRejection(searchArgs, body);\n if (rejection) {\n writeJson({ ok: false, error: { code: \"VALIDATION_ERROR\", ...rejection } });\n process.exit(1);\n }\n\n const data = await apiPost<ScopedWinnersSearchResponse>(\"/api/ad-library/winners/search\", body, {\n timeoutMs: SEARCH_TIMEOUT_MS,\n });\n writeSearchResult(data, { output: (args.output as OutputFormat) || \"json\", ...fieldPlan });\n } catch (err) {\n reportSearchError(err);\n }\n },\n});\n"],"mappings":"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","names":[]}
@@ -0,0 +1,197 @@
1
+ import {
2
+ mediaTagsCreateRequestSchema,
3
+ mediaTagsDeleteRequestSchema,
4
+ mediaTagsUpdateRequestSchema
5
+ } from "./chunk-ZJVHZHYP.js";
6
+ import {
7
+ ApiError,
8
+ apiGet,
9
+ apiPost
10
+ } from "./chunk-TOYLG3ZY.js";
11
+ import {
12
+ registerSchema,
13
+ writeJson
14
+ } from "./chunk-ZZFYDAJQ.js";
15
+
16
+ // src/lib/tags-command.ts
17
+ import { defineCommand } from "citty";
18
+ var OUTPUT_ARG = {
19
+ output: { type: "string", description: "Output format: md|json", required: false, default: "md" }
20
+ };
21
+ var SHARED_POOL_HINT = "Custom tags are one pool shared by images, videos and testimonials \u2014 this change shows up in all three. Already applied: publishing or discarding this chat does not undo it.";
22
+ function fail(err) {
23
+ const code = err instanceof ApiError ? err.code : "INTERNAL_ERROR";
24
+ const message = err instanceof ApiError ? err.message : "Unexpected error";
25
+ writeJson({ ok: false, error: { code, message } });
26
+ process.exit(1);
27
+ }
28
+ function failInvalid(issue) {
29
+ writeJson({ ok: false, error: { code: "VALIDATION_ERROR", message: issue?.message ?? "Invalid request" } });
30
+ process.exit(1);
31
+ }
32
+ function makeTagsCommand(command, label, endpoint) {
33
+ registerSchema({
34
+ command: `${command}.tags.list`,
35
+ description: `List the available ${label} tag taxonomy (built-in defaults + this company's custom tags).`,
36
+ args: OUTPUT_ARG
37
+ });
38
+ const listCommand = defineCommand({
39
+ meta: {
40
+ name: "list",
41
+ description: `List the available ${label} tag names (defaults + company custom tags). Use before filtering with --tags. Example: baker ${command} tags`
42
+ },
43
+ args: OUTPUT_ARG,
44
+ run: async ({ args }) => {
45
+ try {
46
+ const { markdown } = await apiGet(endpoint);
47
+ if (args.output === "json") {
48
+ writeJson({ ok: true, data: { markdown } });
49
+ return;
50
+ }
51
+ process.stdout.write(`${markdown.trimEnd()}
52
+ `);
53
+ } catch (err) {
54
+ const code = err instanceof ApiError ? err.code : "INTERNAL_ERROR";
55
+ const message = err instanceof ApiError ? err.message : "Unexpected error";
56
+ if (args.output === "json") {
57
+ writeJson({ ok: false, error: { code, message } });
58
+ } else {
59
+ process.stderr.write(`Error: ${message}
60
+ `);
61
+ }
62
+ process.exit(1);
63
+ }
64
+ }
65
+ });
66
+ const createArgs = {
67
+ name: { type: "positional", description: "Tag name (stored lowercased, spaces \u2192 hyphens)", required: true },
68
+ description: {
69
+ type: "string",
70
+ description: "What the tag means, so it gets applied consistently",
71
+ required: false
72
+ }
73
+ };
74
+ registerSchema({
75
+ command: `${command}.tags.create`,
76
+ description: "Create a custom media tag in the company's shared pool (images, videos and testimonials). Applies immediately. Use when no built-in or custom tag fits.",
77
+ args: {
78
+ name: { type: "string", description: "Tag name (stored lowercased, spaces \u2192 hyphens)", required: true },
79
+ description: createArgs.description
80
+ }
81
+ });
82
+ const createCommand = defineCommand({
83
+ meta: {
84
+ name: "create",
85
+ description: `Create a custom tag (shared by images, videos and testimonials). Applies immediately.
86
+
87
+ Example: baker ${command} tags create "summer sale" --description "Assets for the summer sale campaign"`
88
+ },
89
+ args: createArgs,
90
+ run: async ({ args }) => {
91
+ const parsed = mediaTagsCreateRequestSchema.safeParse({
92
+ name: String(args.name ?? ""),
93
+ ...args.description ? { description: String(args.description) } : {}
94
+ });
95
+ if (!parsed.success) failInvalid(parsed.error.issues[0]);
96
+ try {
97
+ const data = await apiPost("/api/media-tags/create", parsed.data);
98
+ writeJson({
99
+ ok: true,
100
+ data,
101
+ hints: [
102
+ SHARED_POOL_HINT,
103
+ `Use it as \`--tags ${data.name}\`.`,
104
+ ...data.description ? [] : ["MISSING --description: add one with `tags update` so the tag is applied consistently."]
105
+ ]
106
+ });
107
+ } catch (err) {
108
+ fail(err);
109
+ }
110
+ }
111
+ });
112
+ registerSchema({
113
+ command: `${command}.tags.update`,
114
+ description: "Change what a custom tag means (its description). Built-in tags cannot be changed. Applies immediately.",
115
+ args: {
116
+ slug: { type: "string", description: "Custom tag name, as `tags` lists it", required: true },
117
+ description: { type: "string", description: "New description", required: true }
118
+ }
119
+ });
120
+ const updateCommand = defineCommand({
121
+ meta: {
122
+ name: "update",
123
+ description: `Change a custom tag's description. Built-in tags cannot be changed. Applies immediately.
124
+
125
+ Example: baker ${command} tags update summer-sale --description "Assets for the 2026 summer sale"`
126
+ },
127
+ args: {
128
+ slug: { type: "positional", description: "Custom tag name, as `tags` lists it", required: true },
129
+ description: { type: "string", description: "New description", required: true }
130
+ },
131
+ run: async ({ args }) => {
132
+ const parsed = mediaTagsUpdateRequestSchema.safeParse({
133
+ slug: String(args.slug ?? ""),
134
+ description: String(args.description ?? "")
135
+ });
136
+ if (!parsed.success) failInvalid(parsed.error.issues[0]);
137
+ try {
138
+ const data = await apiPost("/api/media-tags/update", parsed.data);
139
+ writeJson({ ok: true, data, hints: [SHARED_POOL_HINT] });
140
+ } catch (err) {
141
+ fail(err);
142
+ }
143
+ }
144
+ });
145
+ registerSchema({
146
+ command: `${command}.tags.delete`,
147
+ description: "Delete a custom tag from the company's shared pool. Built-in tags cannot be deleted. Applies immediately. Confirm with the user first.",
148
+ args: { slug: { type: "string", description: "Custom tag name, as `tags` lists it", required: true } }
149
+ });
150
+ const deleteCommand = defineCommand({
151
+ meta: {
152
+ name: "delete",
153
+ description: `Delete a custom tag (shared by images, videos and testimonials). Built-in tags cannot be deleted. Applies immediately \u2014 confirm with the user first.
154
+
155
+ Example: baker ${command} tags delete summer-sale`
156
+ },
157
+ args: { slug: { type: "positional", description: "Custom tag name, as `tags` lists it", required: true } },
158
+ run: async ({ args }) => {
159
+ const parsed = mediaTagsDeleteRequestSchema.safeParse({ slug: String(args.slug ?? "") });
160
+ if (!parsed.success) failInvalid(parsed.error.issues[0]);
161
+ try {
162
+ const data = await apiPost("/api/media-tags/delete", parsed.data);
163
+ writeJson({ ok: true, data, hints: [SHARED_POOL_HINT] });
164
+ } catch (err) {
165
+ fail(err);
166
+ }
167
+ }
168
+ });
169
+ return defineCommand({
170
+ meta: {
171
+ name: "tags",
172
+ description: `The ${label} tag taxonomy: built-in defaults plus the company's custom tags (one pool shared by images, videos and testimonials). Subcommands: list (default), create, update, delete.
173
+
174
+ Examples:
175
+ baker ${command} tags # list available tags
176
+ baker ${command} tags create "summer sale" --description "\u2026"
177
+ baker ${command} tags update summer-sale --description "\u2026"
178
+ baker ${command} tags delete summer-sale`
179
+ },
180
+ // Declared on the parent too: `default: "list"` dispatches the bare `tags --output json`
181
+ // form, and citty reads an undeclared flag's value as a subcommand name.
182
+ args: OUTPUT_ARG,
183
+ subCommands: {
184
+ list: listCommand,
185
+ create: createCommand,
186
+ update: updateCommand,
187
+ delete: deleteCommand
188
+ },
189
+ // `default`, never `run`: citty falls through to the parent's `run` after a subcommand.
190
+ default: "list"
191
+ });
192
+ }
193
+
194
+ export {
195
+ makeTagsCommand
196
+ };
197
+ //# sourceMappingURL=chunk-FIBL3EZN.js.map
@@ -0,0 +1,363 @@
1
+ import {
2
+ MAX_VIDEO_INGEST_BYTES,
3
+ MAX_VIDEO_INGEST_SECONDS,
4
+ directDedupeKey,
5
+ downloadTimeoutMs,
6
+ isDirectMediaUrl,
7
+ isDrmProtected,
8
+ isRegionBlocked,
9
+ isToolingOrBlockFailure,
10
+ refuseByDuration,
11
+ resolveIngestSource,
12
+ worthDownloadingInstead
13
+ } from "./chunk-FKOECEVC.js";
14
+ import {
15
+ YtDlpError,
16
+ canonicalUrl,
17
+ durationSeconds,
18
+ isAudioOnly,
19
+ isVimeoAuthFailure,
20
+ probeYtDlp,
21
+ runYtDlp,
22
+ ytDlpBlockSignal
23
+ } from "./chunk-LCMGWIEQ.js";
24
+ import {
25
+ videosIngestRequestSchema
26
+ } from "./chunk-ZJVHZHYP.js";
27
+ import {
28
+ ApiError,
29
+ apiPost
30
+ } from "./chunk-TOYLG3ZY.js";
31
+ import {
32
+ captureVimeoCookie,
33
+ isProxyFailure
34
+ } from "./chunk-YKSIHGIL.js";
35
+ import {
36
+ registerSchema,
37
+ writeJson
38
+ } from "./chunk-ZZFYDAJQ.js";
39
+
40
+ // src/commands/videos/ingest.ts
41
+ import { mkdtemp, rm, stat } from "fs/promises";
42
+ import { tmpdir } from "os";
43
+ import path from "path";
44
+ import { defineCommand } from "citty";
45
+
46
+ // src/lib/streamUpload.ts
47
+ import { createHash } from "crypto";
48
+ import { createReadStream } from "fs";
49
+ import { Readable } from "stream";
50
+ import { pipeline } from "stream/promises";
51
+ async function hashFile(filePath) {
52
+ const hash = createHash("sha256");
53
+ await pipeline(createReadStream(filePath), hash);
54
+ return hash.digest("hex");
55
+ }
56
+ async function putFileStreamed(args) {
57
+ const body = Readable.toWeb(createReadStream(args.filePath));
58
+ return await fetch(args.putUrl, {
59
+ method: "PUT",
60
+ body,
61
+ headers: {
62
+ "Content-Type": args.contentType,
63
+ "Content-Length": String(args.sizeBytes)
64
+ },
65
+ duplex: "half"
66
+ });
67
+ }
68
+
69
+ // src/commands/videos/ingest.ts
70
+ registerSchema({
71
+ command: "videos.ingest",
72
+ description: "Add a video to the library from a URL \u2014 a direct file, or a YouTube/TikTok/Vimeo page.",
73
+ args: {
74
+ url: { type: "string", description: "Video URL (direct file or a watch/post page)", required: true },
75
+ source: { type: "string", description: "Provenance: url | youtube", required: false },
76
+ "external-id": { type: "string", description: "Provider asset id (deduped on)", required: false },
77
+ "external-url": { type: "string", description: "Canonical page URL", required: false },
78
+ download: {
79
+ type: "boolean",
80
+ description: "Force the download path instead of letting Baker fetch the URL directly",
81
+ required: false,
82
+ default: false
83
+ },
84
+ country: {
85
+ type: "string",
86
+ description: "Two-letter country to fetch from (e.g. US, DE, JP) \u2014 use when a video is blocked in your region",
87
+ required: false
88
+ },
89
+ context: {
90
+ type: "string",
91
+ description: "What you know that the video cannot show \u2014 the campaign, whether the person on camera is a real customer, what it is for. Highest-leverage flag here: it is what makes the clip findable later.",
92
+ required: false
93
+ },
94
+ "dry-run": { type: "boolean", description: "Preview the operation without executing", required: false }
95
+ }
96
+ });
97
+ var ingestCommand = defineCommand({
98
+ meta: {
99
+ name: "ingest",
100
+ description: "Add a video to the library from a URL. A direct file URL is handed straight to Baker, which fetches it. A page URL (YouTube, TikTok, Vimeo, Instagram) is downloaded here first, then uploaded \u2014 and a direct URL that Baker cannot fetch falls back to that same path automatically.\n\nExample: baker videos ingest https://www.youtube.com/watch?v=abc123"
101
+ },
102
+ args: {
103
+ url: { type: "positional", description: "Video URL", required: false },
104
+ source: { type: "string", description: "Provenance: url | youtube", required: false },
105
+ "external-id": { type: "string", description: "Provider asset id", required: false },
106
+ "external-url": { type: "string", description: "Canonical page URL", required: false },
107
+ download: { type: "boolean", description: "Force the download path", required: false, default: false },
108
+ country: { type: "string", description: "Two-letter country to fetch from, e.g. US", required: false },
109
+ context: {
110
+ type: "string",
111
+ description: "Context for the analysis \u2014 campaign, who is on camera, intended use",
112
+ required: false
113
+ },
114
+ "dry-run": { type: "boolean", description: "Preview without executing", required: false, default: false }
115
+ },
116
+ run: ({ args }) => runVideoIngest({
117
+ url: args.url,
118
+ source: args.source,
119
+ externalId: args["external-id"],
120
+ externalUrl: args["external-url"],
121
+ forceDownload: args.download === true,
122
+ country: args.country,
123
+ context: args.context,
124
+ dryRun: args["dry-run"] === true
125
+ })
126
+ });
127
+ async function runVideoIngest(opts) {
128
+ const url = opts.url;
129
+ if (!url) {
130
+ writeJson({ ok: false, error: { code: "VALIDATION_ERROR", message: "URL is required" } });
131
+ process.exit(1);
132
+ }
133
+ const direct = !opts.forceDownload && isDirectMediaUrl(url);
134
+ const country = opts.country?.trim() || void 0;
135
+ const args = {
136
+ url,
137
+ source: resolveIngestSource(opts.source, url),
138
+ externalId: opts.externalId,
139
+ // Deliberately NOT pre-filled with the pasted URL. Doing so shadowed the
140
+ // canonical URL the probe resolves (`?? canonicalUrl(...)` below could never
141
+ // run), so the same video filed under a different `externalUrl` depending on
142
+ // whether the link was copied from a share sheet, a shorts page or the
143
+ // address bar. `downloadThenIngest` falls back to `args.url` when the probe
144
+ // resolves nothing, which is the value this used to hard-code.
145
+ externalUrl: opts.externalUrl,
146
+ descriptionContext: opts.context?.trim() || void 0
147
+ };
148
+ const validation = videosIngestRequestSchema.safeParse({ ...args, url });
149
+ if (!validation.success) {
150
+ const problem = validation.error.issues[0];
151
+ writeJson({
152
+ ok: false,
153
+ error: {
154
+ code: "VALIDATION_ERROR",
155
+ message: problem ? `${problem.path.join(".") || "request"}: ${problem.message}` : "Invalid request"
156
+ }
157
+ });
158
+ process.exit(1);
159
+ }
160
+ if (opts.dryRun) {
161
+ reportDryRun(args, direct, country);
162
+ return;
163
+ }
164
+ try {
165
+ const data = await ingestByRoute(args, direct, country);
166
+ writeJson({ ok: true, data, hints: ingestHints(data) });
167
+ } catch (err) {
168
+ reportIngestFailure(err);
169
+ }
170
+ }
171
+ function ingestHints(data) {
172
+ if (data.reducedQuality !== true) return void 0;
173
+ return [
174
+ "Added, but at standard quality (360p): the site refused to release the full-quality file and this was the best it would hand over. Tell the user \u2014 the clip is in the library and usable, it is just not high-resolution. If they need the crisp version, ask them for the original file and use `baker videos upload <file>`."
175
+ ];
176
+ }
177
+ function reportDryRun(args, direct, country) {
178
+ writeJson({
179
+ ok: true,
180
+ dryRun: true,
181
+ operation: "videos.ingest",
182
+ params: {
183
+ url: args.url,
184
+ source: args.source,
185
+ // Known up front on the direct route, because it is derived from the URL
186
+ // alone. The download route's key comes from the probe, which a dry run
187
+ // does not perform, so there it stays null rather than becoming a guess.
188
+ externalId: args.externalId ?? (direct ? directDedupeKey(args.source, args.url) : null),
189
+ // A page URL's canonical form is only known after the probe, which a dry
190
+ // run does not perform — so this is null rather than a guess.
191
+ externalUrl: args.externalUrl ?? null,
192
+ direct,
193
+ country: country ?? null,
194
+ descriptionContext: args.descriptionContext ?? null
195
+ }
196
+ });
197
+ }
198
+ async function ingestByRoute(args, direct, country) {
199
+ if (!direct) {
200
+ return { ...await downloadThenIngest(args, country), via: "download" };
201
+ }
202
+ try {
203
+ const externalId = args.externalId ?? directDedupeKey(args.source, args.url);
204
+ return { ...await ingestUrl({ ...args, externalId }), via: "direct" };
205
+ } catch (err) {
206
+ if (!(err instanceof ApiError) || !worthDownloadingInstead(err.code)) throw err;
207
+ return { ...await downloadThenIngest(args, country), via: "download", fallbackFrom: err.message };
208
+ }
209
+ }
210
+ function reportYtDlpFailure(err) {
211
+ const detail = `${err.stderrTail} ${err.message}`;
212
+ if (isProxyFailure(ytDlpBlockSignal(detail))) {
213
+ fail(
214
+ "Couldn't download that video: our connection to the internet was refused.",
215
+ "This is Baker's egress proxy, not the link \u2014 its credentials look wrong or expired. The link is probably fine. Report it; retrying won't help until the proxy is fixed."
216
+ );
217
+ }
218
+ if (isDrmProtected(detail)) {
219
+ fail(
220
+ "That video is copy-protected, so it can't be added to the library.",
221
+ "The publisher encrypted this one against downloading. Nothing will change that \u2014 not retrying, not a different region. Ask whoever owns the video for the original file and add it with `baker videos upload <file>`."
222
+ );
223
+ }
224
+ if (isVimeoAuthFailure(detail)) {
225
+ fail(
226
+ "Vimeo wouldn't hand over that video \u2014 Baker isn't signed in to Vimeo.",
227
+ "Vimeo now refuses anonymous downloads entirely, so this needs a signed-in session and the one Baker holds has either expired or was never set. Nothing is wrong with the link. Report it so the Vimeo cookie can be refreshed; meanwhile download the file and use `baker videos upload <file>`."
228
+ );
229
+ }
230
+ if (isRegionBlocked(detail)) {
231
+ fail(
232
+ `That video isn't available in the region we're fetching from. ${err.stderrTail || err.message}`,
233
+ "Re-run with `--country <two-letter code>` for a country where the video plays \u2014 e.g. `--country US`. Pick the one the video belongs to (the uploader's country is the usual answer); each attempt costs a paid connection, so choose rather than work through the list."
234
+ );
235
+ }
236
+ fail(
237
+ `Couldn't download that video. ${err.stderrTail || err.message}`,
238
+ isToolingOrBlockFailure(detail) ? "The site wouldn't hand over the video \u2014 usually the downloader being out of date against a site that changed, or the request being blocked. Retrying won't help, and the link is probably fine. Report it so the tool can be updated; meanwhile download the file and use `baker videos upload <file>`." : "Check the link is public and playable. Private or age-restricted videos can't be downloaded \u2014 download the file yourself and use `baker videos upload <file>`."
239
+ );
240
+ }
241
+ function fail(message, fix, code = "INGEST_FAILED") {
242
+ writeJson({ ok: false, error: { code, message, fix } });
243
+ process.exit(1);
244
+ }
245
+ function reportIngestFailure(err) {
246
+ if (err instanceof ApiError) {
247
+ writeJson({ ok: false, error: { code: err.code, message: err.message } });
248
+ process.exit(1);
249
+ }
250
+ if (err instanceof YtDlpError) reportYtDlpFailure(err);
251
+ const detail = err instanceof Error ? err.message : String(err);
252
+ if (detail.includes("timed out after")) {
253
+ fail(
254
+ "That video took too long to download and was stopped part-way.",
255
+ "Long or slow-serving videos can outrun the download window. Try a shorter clip, or download this one yourself and use `baker videos upload <file>`.",
256
+ "INTERNAL_ERROR"
257
+ );
258
+ }
259
+ fail(
260
+ `Couldn't add that video. ${detail}`,
261
+ "This is a fault on Baker's side, not a problem with the link. Report it.",
262
+ "INTERNAL_ERROR"
263
+ );
264
+ }
265
+ function dedupeKey(args, info) {
266
+ const id = typeof info.id === "string" ? info.id : void 0;
267
+ if (!id) return void 0;
268
+ if (info.extractor === "generic") return `${args.source}:${canonicalUrl(info) ?? args.url}`;
269
+ return `${args.source}:${id}`;
270
+ }
271
+ function ingestUrl(args) {
272
+ const body = {
273
+ url: args.url,
274
+ source: args.source
275
+ };
276
+ if (args.externalId) body.externalId = args.externalId;
277
+ if (args.externalUrl) body.externalUrl = args.externalUrl;
278
+ if (args.descriptionContext) body.descriptionContext = args.descriptionContext;
279
+ return apiPost("/api/videos/ingest", body);
280
+ }
281
+ async function downloadThenIngest(args, country) {
282
+ const vimeoCookie = captureVimeoCookie();
283
+ const workDir = await mkdtemp(path.join(tmpdir(), "videos-ingest-"));
284
+ try {
285
+ const probe = await probeYtDlp({ url: args.url, country, vimeoCookie, cookieDir: workDir });
286
+ if (isAudioOnly(probe.info)) {
287
+ throw new ApiError(
288
+ "VALIDATION_ERROR",
289
+ "That link is audio, not video, so it can't go in the video library. Music and podcast links have no picture to store."
290
+ );
291
+ }
292
+ const tooLong = refuseByDuration(durationSeconds(probe.info), MAX_VIDEO_INGEST_SECONDS);
293
+ if (tooLong) {
294
+ throw new ApiError("VALIDATION_ERROR", tooLong);
295
+ }
296
+ const externalId = args.externalId ?? dedupeKey(args, probe.info);
297
+ const { filePath, tier, reducedQuality } = await runYtDlp({
298
+ url: args.url,
299
+ audioOnly: false,
300
+ workDir,
301
+ // Deliberately uncapped: take the best the site will release and let Mux
302
+ // decide what to serve. The 1080p ceiling this replaces was reasoning
303
+ // about the wrong cost — it saved download bytes by throwing away source
304
+ // pixels *before* the one system that can make renditions from them ever
305
+ // saw them, so a 4K master became a 1080p master permanently, for
306
+ // everything the library is ever asked to do with that clip afterwards.
307
+ // Downscaling is Mux's job and it is cheap; re-acquiring a master is not.
308
+ country,
309
+ vimeoCookie,
310
+ // Budgeted from the probed length, so the duration we accept and the time
311
+ // we allow to fetch it cannot drift apart.
312
+ timeoutMs: downloadTimeoutMs(durationSeconds(probe.info))
313
+ });
314
+ const stats = await stat(filePath);
315
+ if (stats.size > MAX_VIDEO_INGEST_BYTES) {
316
+ throw new ApiError(
317
+ "VALIDATION_ERROR",
318
+ `That video is ${(stats.size / 1024 ** 3).toFixed(1)} GB, over the ${Math.round(MAX_VIDEO_INGEST_BYTES / 1024 ** 3)} GB limit for this route.`
319
+ );
320
+ }
321
+ const publicUrl = await uploadToAssetStore(filePath, stats.size);
322
+ return {
323
+ ...await ingestUrl({
324
+ ...args,
325
+ url: publicUrl,
326
+ externalId,
327
+ externalUrl: args.externalUrl ?? canonicalUrl(probe.info) ?? args.url
328
+ }),
329
+ egress: tier,
330
+ // Named in the result for the same reason `egress` is: a geo-targeted exit
331
+ // is a deliberate, billable choice and must not be invisible afterwards.
332
+ ...country ? { country } : {},
333
+ // Third member of the same family. The site refused the good formats and
334
+ // the download quietly took the one it would release, which is the right
335
+ // call — but a clip that is 360p because of that must say so here, or the
336
+ // only way to find out is to watch it.
337
+ ...reducedQuality ? { reducedQuality: true } : {}
338
+ };
339
+ } finally {
340
+ await rm(workDir, { recursive: true, force: true }).catch(() => {
341
+ });
342
+ }
343
+ }
344
+ async function uploadToAssetStore(filePath, sizeBytes) {
345
+ const sha256 = await hashFile(filePath);
346
+ const { putUrl, publicUrl } = await apiPost("/api/canvas/assets/presign", {
347
+ sha256,
348
+ mime: "video/mp4",
349
+ purpose: "source"
350
+ });
351
+ const putRes = await putFileStreamed({ putUrl, filePath, contentType: "video/mp4", sizeBytes });
352
+ if (!putRes.ok) {
353
+ throw new ApiError("INTERNAL_ERROR", `Storing the downloaded video failed: HTTP ${putRes.status}`);
354
+ }
355
+ return publicUrl;
356
+ }
357
+
358
+ export {
359
+ ingestCommand,
360
+ runVideoIngest,
361
+ ingestHints
362
+ };
363
+ //# sourceMappingURL=chunk-FJDTR2IN.js.map