@koda-sl/baker-cli 0.477.0-dev.55c09e3e8 → 0.495.0-dev.c2b64ccca

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 (1358) hide show
  1. package/README.md +8 -2
  2. package/dist/account-5VPZ3XQ3.js +79 -0
  3. package/dist/account-SYUEXERA.js +49 -0
  4. package/dist/account-ZQH535IP.js +80 -0
  5. package/dist/account-reads-GUYNJEZA.js +218 -0
  6. package/dist/account-writes-DLCRTL6Y.js +66 -0
  7. package/dist/accounts-3TNEMLLC.js +115 -0
  8. package/dist/accounts-GBRGCLE3.js +611 -0
  9. package/dist/accounts-IPOCFAKK.js +114 -0
  10. package/dist/accounts-QBWYIJ7D.js +77 -0
  11. package/dist/accounts-TSM5EHRD.js +75 -0
  12. package/dist/actions-XZMLYLTK.js +55 -0
  13. package/dist/active-entities-MFWTN4VJ.js +103 -0
  14. package/dist/activecampaign-77V5X3FQ.js +935 -0
  15. package/dist/activities-ZXA53KY7.js +74 -0
  16. package/dist/ad-group-writes-2JBCTSJY.js +170 -0
  17. package/dist/ad-groups-6JQSO32O.js +68 -0
  18. package/dist/ad-writes-P34Z3ZTX.js +174 -0
  19. package/dist/add-F2BF2HAK.js +105 -0
  20. package/dist/add-JAXBNDLC.js +97 -0
  21. package/dist/add-KAMQP5RM.js +302 -0
  22. package/dist/add-Y6QCWI6Q.js +104 -0
  23. package/dist/add-accounts-M4R7ZVHN.js +91 -0
  24. package/dist/ads-6MIIAUFS.js +40 -0
  25. package/dist/ads-KPUP4WG4.js +128 -0
  26. package/dist/ads-UVQN4BTT.js +113 -0
  27. package/dist/ads-VPSHNIWG.js +77 -0
  28. package/dist/adsets-JAQKFDLX.js +176 -0
  29. package/dist/advertisers-2ETFYRKA.js +120 -0
  30. package/dist/advertisers-6ONURKP2.js +125 -0
  31. package/dist/analytics-AVDCFCGF.js +433 -0
  32. package/dist/analytics-XZ56777C.js +1976 -0
  33. package/dist/animate-KZQCCL65.js +480 -0
  34. package/dist/assign-DDXB7A6W.js +77 -0
  35. package/dist/audience-size-5QQAABZQ.js +94 -0
  36. package/dist/audiences-I4KJ6DZ7.js +85 -0
  37. package/dist/audiences-IFBZCTME.js +78 -0
  38. package/dist/audiences-THTWZOMA.js +268 -0
  39. package/dist/audit-2KOD4YCF.js +151 -0
  40. package/dist/audit-MFTERSQZ.js +88 -0
  41. package/dist/autocomplete-JC46QNHQ.js +111 -0
  42. package/dist/avatars-ZXQRZJM2.js +38 -0
  43. package/dist/bid-pricing-46W7LSU5.js +99 -0
  44. package/dist/brand-XROP2WL2.js +22 -0
  45. package/dist/brief-B7C3SYDP.js +537 -0
  46. package/dist/brief-B7C3SYDP.js.map +1 -0
  47. package/dist/businesses-JWOIY3OR.js +53 -0
  48. package/dist/campaign-groups-5O3SR5X2.js +95 -0
  49. package/dist/campaign-writes-4D4256DP.js +170 -0
  50. package/dist/campaign-writes-5BEK2QBJ.js +165 -0
  51. package/dist/campaigns-6DX2MACO.js +76 -0
  52. package/dist/campaigns-EJT7IMDT.js +109 -0
  53. package/dist/campaigns-OKU4HN5Q.js +107 -0
  54. package/dist/campaigns-QVPLPTH3.js +110 -0
  55. package/dist/canvas-XCP2WPYO.js +46 -0
  56. package/dist/capabilities-W4XDJVDW.js +144 -0
  57. package/dist/cards-2QCVG77U.js +85 -0
  58. package/dist/catalog-LTH6SDYM.js +65 -0
  59. package/dist/catalog-LTH6SDYM.js.map +1 -0
  60. package/dist/catalogs-RVW4L6C6.js +128 -0
  61. package/dist/changes-XRPDY2K4.js +135 -0
  62. package/dist/chatgpt-RNGSOVHP.js +47 -0
  63. package/dist/chats-JKCUA26S.js +262 -0
  64. package/dist/check-NDPR32FH.js +102 -0
  65. package/dist/check-NDPR32FH.js.map +1 -0
  66. package/dist/chunk-2C36DHQH.js +96 -0
  67. package/dist/chunk-2LIAXB3W.js +1079 -0
  68. package/dist/chunk-2MT3AWDE.js +125 -0
  69. package/dist/chunk-2WRK44LZ.js +296 -0
  70. package/dist/chunk-34NQKHKY.js +1599 -0
  71. package/dist/chunk-35WKYJQY.js +382 -0
  72. package/dist/chunk-3AOMKBDC.js +3194 -0
  73. package/dist/chunk-3AOMKBDC.js.map +1 -0
  74. package/dist/chunk-3FDGC2UH.js +846 -0
  75. package/dist/chunk-3FFJYMKM.js +333 -0
  76. package/dist/chunk-3PL2QRF2.js +96 -0
  77. package/dist/chunk-3XDZMLX6.js +139 -0
  78. package/dist/chunk-4R7H4RV6.js +35 -0
  79. package/dist/chunk-4TBDEV7X.js +75 -0
  80. package/dist/chunk-4WYEGE4N.js +2123 -0
  81. package/dist/chunk-5IGQ6IQO.js +1837 -0
  82. package/dist/chunk-5IGQ6IQO.js.map +1 -0
  83. package/dist/chunk-5VD5GK6A.js +58 -0
  84. package/dist/chunk-5ZIGEHQQ.js +166 -0
  85. package/dist/chunk-6DSLFOKJ.js +74 -0
  86. package/dist/chunk-6EV5MXLQ.js +66 -0
  87. package/dist/chunk-6FHP2HIK.js +84 -0
  88. package/dist/chunk-6VI2DDGZ.js +106 -0
  89. package/dist/chunk-72QBQS63.js +111 -0
  90. package/dist/chunk-7DBOLSUL.js +51 -0
  91. package/dist/chunk-7FDDOOM4.js +19 -0
  92. package/dist/chunk-7XH4UQWS.js +302 -0
  93. package/dist/chunk-7XH4UQWS.js.map +1 -0
  94. package/dist/chunk-AN7CMLYY.js +25 -0
  95. package/dist/chunk-B2SAOVMU.js +148 -0
  96. package/dist/chunk-B2SAOVMU.js.map +1 -0
  97. package/dist/chunk-BDMZRWQI.js +433 -0
  98. package/dist/chunk-BITS62MF.js +77 -0
  99. package/dist/chunk-BVMXTD4B.js +169 -0
  100. package/dist/chunk-BVMXTD4B.js.map +1 -0
  101. package/dist/chunk-CKRSSMRT.js +191 -0
  102. package/dist/chunk-D53AAUG4.js +215 -0
  103. package/dist/chunk-DGUYFROS.js +76 -0
  104. package/dist/chunk-DS2ZRTAL.js +136 -0
  105. package/dist/chunk-EIJDXZW5.js +1743 -0
  106. package/dist/chunk-EJH2JOVG.js +98 -0
  107. package/dist/chunk-EJWFD6T3.js +188 -0
  108. package/dist/chunk-ELNN4SNW.js +52 -0
  109. package/dist/chunk-ELYP6BOS.js +156 -0
  110. package/dist/chunk-ELYP6BOS.js.map +1 -0
  111. package/dist/chunk-EUB327FC.js +57 -0
  112. package/dist/chunk-EWRGZZLS.js +159 -0
  113. package/dist/chunk-FBF5XDJX.js +106 -0
  114. package/dist/chunk-FP3GNJN2.js +98 -0
  115. package/dist/chunk-FZKUUI3F.js +455 -0
  116. package/dist/chunk-G2AZCDX4.js +216 -0
  117. package/dist/chunk-G373L4GL.js +45 -0
  118. package/dist/chunk-GFFV6YS7.js +903 -0
  119. package/dist/chunk-GN6WIZDD.js +392 -0
  120. package/dist/chunk-GTOHNTTI.js +274 -0
  121. package/dist/chunk-HDNZSVJJ.js +665 -0
  122. package/dist/chunk-HLAAGGDS.js +346 -0
  123. package/dist/chunk-HX7PM34O.js +197 -0
  124. package/dist/chunk-IGOOLUE2.js +821 -0
  125. package/dist/chunk-IGOOLUE2.js.map +1 -0
  126. package/dist/chunk-IKTKWXP6.js +172 -0
  127. package/dist/chunk-IOGKJZ4Z.js +74 -0
  128. package/dist/chunk-IVRXPYQ7.js +60 -0
  129. package/dist/chunk-JIJJCU6E.js +363 -0
  130. package/dist/chunk-JOCKYH6U.js +297 -0
  131. package/dist/chunk-KPYDTIAI.js +317 -0
  132. package/dist/chunk-KPYDTIAI.js.map +1 -0
  133. package/dist/chunk-L44WSWSZ.js +23 -0
  134. package/dist/chunk-LF3MFO2N.js +23992 -0
  135. package/dist/chunk-M525HJTA.js +275 -0
  136. package/dist/chunk-MBYTIGZE.js +111 -0
  137. package/dist/chunk-MMU6XHCH.js +97 -0
  138. package/dist/chunk-MNPBPU3G.js +225 -0
  139. package/dist/chunk-MNPBPU3G.js.map +1 -0
  140. package/dist/chunk-MRRSKRZZ.js +84 -0
  141. package/dist/chunk-MV2J73HP.js +6238 -0
  142. package/dist/chunk-MV2J73HP.js.map +1 -0
  143. package/dist/chunk-NEHQGYZS.js +5181 -0
  144. package/dist/chunk-NFHUJRDE.js +136 -0
  145. package/dist/chunk-NG2DMLU6.js +175 -0
  146. package/dist/chunk-NSHJ6OOK.js +67 -0
  147. package/dist/chunk-OCBAKPHH.js +76 -0
  148. package/dist/chunk-OFTU5XBQ.js +92 -0
  149. package/dist/chunk-OSWCEDFE.js +216 -0
  150. package/dist/chunk-OTNGMKI6.js +309 -0
  151. package/dist/chunk-PALFKSJV.js +237 -0
  152. package/dist/chunk-PALFKSJV.js.map +1 -0
  153. package/dist/chunk-PGSXR5UM.js +206 -0
  154. package/dist/chunk-PPMSWLQC.js +158 -0
  155. package/dist/chunk-PPMSWLQC.js.map +1 -0
  156. package/dist/chunk-QAOEVZYY.js +509 -0
  157. package/dist/chunk-QEW64BBR.js +777 -0
  158. package/dist/chunk-QEW64BBR.js.map +1 -0
  159. package/dist/chunk-QVQKCVP7.js +85 -0
  160. package/dist/chunk-QVQKCVP7.js.map +1 -0
  161. package/dist/chunk-QW2Q4C2X.js +547 -0
  162. package/dist/chunk-R5HMAIZM.js +169 -0
  163. package/dist/chunk-RPRLCIHB.js +103 -0
  164. package/dist/chunk-RV4GIY23.js +149 -0
  165. package/dist/chunk-RVXN2YTM.js +544 -0
  166. package/dist/chunk-RXUEYD2S.js +592 -0
  167. package/dist/chunk-S4ROJTDY.js +580 -0
  168. package/dist/chunk-S4ROJTDY.js.map +1 -0
  169. package/dist/chunk-SJOWZKNB.js +56 -0
  170. package/dist/chunk-SQQ4VBNI.js +304 -0
  171. package/dist/chunk-SQQ4VBNI.js.map +1 -0
  172. package/dist/chunk-SYED65QF.js +46 -0
  173. package/dist/chunk-SYED65QF.js.map +1 -0
  174. package/dist/chunk-T5HB6R4I.js +518 -0
  175. package/dist/chunk-T5HB6R4I.js.map +1 -0
  176. package/dist/chunk-TE3N5AGN.js +94 -0
  177. package/dist/chunk-TPQH4UXJ.js +174 -0
  178. package/dist/chunk-TQUNJFGF.js +225 -0
  179. package/dist/chunk-TYSN5VVJ.js +55 -0
  180. package/dist/chunk-UKMG6YWX.js +26 -0
  181. package/dist/chunk-WDAWTHQK.js +66 -0
  182. package/dist/chunk-WJNLQEOZ.js +131 -0
  183. package/dist/chunk-WJNLQEOZ.js.map +1 -0
  184. package/dist/chunk-WZDKROPU.js +6995 -0
  185. package/dist/chunk-WZDKROPU.js.map +1 -0
  186. package/dist/chunk-X3PCCHP2.js +74 -0
  187. package/dist/chunk-XQ4KKF5E.js +1448 -0
  188. package/dist/chunk-XQ4KKF5E.js.map +1 -0
  189. package/dist/chunk-XXU7XRMM.js +4434 -0
  190. package/dist/chunk-XXU7XRMM.js.map +1 -0
  191. package/dist/chunk-YJAQWTS6.js +455 -0
  192. package/dist/chunk-YNOJN5Z6.js +42 -0
  193. package/dist/chunk-YTV5VW7S.js +494 -0
  194. package/dist/chunk-ZO4GMUO3.js +172 -0
  195. package/dist/chunk-ZSRLDTDC.js +46 -0
  196. package/dist/claim-JBNO7M6J.js +197 -0
  197. package/dist/cli.js +39 -39
  198. package/dist/client-CPAPILIF.js +19 -0
  199. package/dist/code-GHOVETWX.js +76 -0
  200. package/dist/companies-47T2PCRZ.js +195 -0
  201. package/dist/complete-T3PKN4B7.js +81 -0
  202. package/dist/config-AFNXR5FA.js +88 -0
  203. package/dist/connect-T7R43GIH.js +42 -0
  204. package/dist/content-M3U2SCFJ.js +85 -0
  205. package/dist/conversation-BG7WEMXQ.js +93 -0
  206. package/dist/conversion-report-URDTPXQ7.js +125 -0
  207. package/dist/conversion-upload-command-BWF6MAOK.js +438 -0
  208. package/dist/conversion-writes-7MGIFJ3H.js +120 -0
  209. package/dist/conversions-QY6COYPP.js +76 -0
  210. package/dist/conversions-UTXG5YEO.js +135 -0
  211. package/dist/countries-MUZPFSYZ.js +82 -0
  212. package/dist/create-6QASIASQ.js +235 -0
  213. package/dist/create-FIHEJRAF.js +59 -0
  214. package/dist/create-JXZBMXUS.js +207 -0
  215. package/dist/create-LN23WUB5.js +126 -0
  216. package/dist/creatives-6FG6VAB4.js +87 -0
  217. package/dist/creatives-NJ7SZ3S4.js +58 -0
  218. package/dist/creatives-NJ7SZ3S4.js.map +1 -0
  219. package/dist/creatives-UD6TFATS.js +182 -0
  220. package/dist/credentials-ECPD2A7X.js +287 -0
  221. package/dist/critique-LINKOKOE.js +220 -0
  222. package/dist/critique-LINKOKOE.js.map +1 -0
  223. package/dist/critique-WQ3EP6E5.js +1450 -0
  224. package/dist/critique-WQ3EP6E5.js.map +1 -0
  225. package/dist/crm-4EWUWZNZ.js +318 -0
  226. package/dist/crm-ASWKMKF3.js +224 -0
  227. package/dist/crop-MIVSA2YF.js +113 -0
  228. package/dist/currency-5LU3D62R.js +88 -0
  229. package/dist/custom-conversions-3QGJQRYS.js +125 -0
  230. package/dist/customers-EEBZXQ4J.js +56 -0
  231. package/dist/decide-ZODJU7DY.js +199 -0
  232. package/dist/delete-CTH3TGNM.js +71 -0
  233. package/dist/delete-D6GNTBYI.js +54 -0
  234. package/dist/delete-IWIDUJNS.js +69 -0
  235. package/dist/delete-TLVYBVRP.js +71 -0
  236. package/dist/delete-XPHIQY5Z.js +63 -0
  237. package/dist/delete-XZEPLAKT.js +66 -0
  238. package/dist/demographics-L3TJJAFF.js +138 -0
  239. package/dist/describe-5PM5OSYK.js +97 -0
  240. package/dist/describe-KQLRHGFX.js +97 -0
  241. package/dist/dimensions-6H24D7CM.js +101 -0
  242. package/dist/discard-74I3M2DF.js +66 -0
  243. package/dist/discover-6LGIHWVP.js +93 -0
  244. package/dist/discover-HBQO4RSF.js +172 -0
  245. package/dist/domain-E5DTPAZI.js +98 -0
  246. package/dist/download-ED52W77T.js +299 -0
  247. package/dist/draft-3XYF2L4K.js +306 -0
  248. package/dist/draft-5IEMZ4W3.js +103 -0
  249. package/dist/draft-6UVGEERY.js +281 -0
  250. package/dist/draft-FDBE36CP.js +233 -0
  251. package/dist/draft-PE4DN44Y.js +307 -0
  252. package/dist/draft-QBR22TG2.js +328 -0
  253. package/dist/draft-VZYSJVF5.js +217 -0
  254. package/dist/draft-YWTLO2ON.js +100 -0
  255. package/dist/engine/index.js +14 -13
  256. package/dist/env-GS2TUVCM.js +43 -0
  257. package/dist/experiment-XDJHSOBC.js +1397 -0
  258. package/dist/export-GV5CF5UM.js +168 -0
  259. package/dist/extract-4OXK7L7R.js +113 -0
  260. package/dist/facets-XPB2ELM2.js +114 -0
  261. package/dist/favorites-VKPXGTK6.js +178 -0
  262. package/dist/feed-B2YLZQNU.js +177 -0
  263. package/dist/feedback-HT2M63QW.js +66 -0
  264. package/dist/feedback-record-V7UU6CG3.js +246 -0
  265. package/dist/feedback-record-V7UU6CG3.js.map +1 -0
  266. package/dist/fetch-2O7EUCCZ.js +139 -0
  267. package/dist/fetch-GMNE6KOJ.js +176 -0
  268. package/dist/find-LZZNPFJH.js +134 -0
  269. package/dist/fit-S5ZGPNE3.js +56 -0
  270. package/dist/flows-5SXT5F22.js +247 -0
  271. package/dist/follow-UNIHLZKA.js +94 -0
  272. package/dist/follow-competitors-CQL2B55H.js +112 -0
  273. package/dist/following-GMXZIEDZ.js +113 -0
  274. package/dist/fonts-GPJQLNQL.js +35 -0
  275. package/dist/forecast-6AHSHRDJ.js +168 -0
  276. package/dist/forecast-V6BCMR4Y.js +104 -0
  277. package/dist/funding-WPREDQVA.js +85 -0
  278. package/dist/funnel-QDYX3UH5.js +394 -0
  279. package/dist/ga4-6AUOX2UW.js +55 -0
  280. package/dist/generate-LWSAKRIT.js +263 -0
  281. package/dist/get-5OEDAT2Q.js +63 -0
  282. package/dist/get-7WEE5V7M.js +56 -0
  283. package/dist/get-DXGJSEZZ.js +63 -0
  284. package/dist/get-GQWOLALT.js +59 -0
  285. package/dist/get-W7F4FOAR.js +92 -0
  286. package/dist/get-WY6JXFP6.js +61 -0
  287. package/dist/get-X6DSFXN6.js +78 -0
  288. package/dist/gif-JXWSR2TC.js +94 -0
  289. package/dist/google-44QA3M4N.js +3190 -0
  290. package/dist/google-6QFL6GV3.js +136 -0
  291. package/dist/google-ads-ZG3BDUEG.js +195 -0
  292. package/dist/group-7ADT2GWA.js +43 -0
  293. package/dist/group-VD3UIBKE.js +43 -0
  294. package/dist/gsc-WHMPFTYA.js +30 -0
  295. package/dist/history-33JKOKAV.js +133 -0
  296. package/dist/history-M3IKDCEO.js +67 -0
  297. package/dist/hubspot-B4IUIOYX.js +779 -0
  298. package/dist/icon-R2K27DKI.js +137 -0
  299. package/dist/ideas-HHTLPC6Y.js +39 -0
  300. package/dist/images-PV6TZQLL.js +90 -0
  301. package/dist/improve-TVFAR27Q.js +86 -0
  302. package/dist/ingest-25ZX36RL.js +23 -0
  303. package/dist/ingest-MFIT3L23.js +107 -0
  304. package/dist/insights-CE3GICP7.js +423 -0
  305. package/dist/insights-TGAQLNHO.js +122 -0
  306. package/dist/inspect-2IASA5YV.js +189 -0
  307. package/dist/inspiration-O56SOIQP.js +53 -0
  308. package/dist/intent-JOW24MTF.js +95 -0
  309. package/dist/job-QUO6KULI.js +202 -0
  310. package/dist/job-create-JTOG5M3Q.js +109 -0
  311. package/dist/job-status-3B4X5IPG.js +74 -0
  312. package/dist/keep-5TVGX7EG.js +78 -0
  313. package/dist/keyword-gap-SHLXRIHO.js +130 -0
  314. package/dist/keyword-metrics-NYH6DXKJ.js +197 -0
  315. package/dist/keywords-for-site-JTK64W4I.js +128 -0
  316. package/dist/landing-4V7HMYCZ.js +28 -0
  317. package/dist/landings-LZZO4VVW.js +151 -0
  318. package/dist/languages-TINK472E.js +55 -0
  319. package/dist/languages-ZIGJHY2T.js +40 -0
  320. package/dist/launches-C5XXNF7C.js +19 -0
  321. package/dist/layerize-YVCA4JO7.js +190 -0
  322. package/dist/leads-2WTL7F24.js +90 -0
  323. package/dist/leads-QUO3YNHO.js +293 -0
  324. package/dist/learn-RL66WKHT.js +204 -0
  325. package/dist/learn-RL66WKHT.js.map +1 -0
  326. package/dist/library-EEHRR7WX.js +109 -0
  327. package/dist/lighthouse-QLFI7PSQ.js +75 -0
  328. package/dist/line-item-writes-SYSYGV3L.js +208 -0
  329. package/dist/line-items-H3M6T7P2.js +103 -0
  330. package/dist/link-EHSSSV6K.js +64 -0
  331. package/dist/linkedin-BGZIR43P.js +1008 -0
  332. package/dist/list-2IAOPMQC.js +76 -0
  333. package/dist/list-BGT2BEWD.js +57 -0
  334. package/dist/list-G2VYAKYF.js +151 -0
  335. package/dist/list-IFXQWBBE.js +65 -0
  336. package/dist/list-LK3CVZ3B.js +50 -0
  337. package/dist/list-X2TMGY7C.js +303 -0
  338. package/dist/list-X3SEZDKE.js +51 -0
  339. package/dist/list-ZFS7XBD7.js +63 -0
  340. package/dist/locations-JC2H5JMY.js +67 -0
  341. package/dist/locations-M4L7FUOB.js +40 -0
  342. package/dist/log-4EINR63D.js +92 -0
  343. package/dist/logo-7GDRTSLI.js +18 -0
  344. package/dist/lookup-SJXNPUXG.js +22 -0
  345. package/dist/make-4XCSN76S.js +1137 -0
  346. package/dist/make-4XCSN76S.js.map +1 -0
  347. package/dist/map-EFEKUPNJ.js +433 -0
  348. package/dist/mcp-RQJAEJCJ.js +463 -0
  349. package/dist/media-FYGHJAEG.js +89 -0
  350. package/dist/media-YYYCKXMZ.js +15 -0
  351. package/dist/media-sources-ZLBIC4RM.js +32 -0
  352. package/dist/members-SXATNT7V.js +44 -0
  353. package/dist/meta-OGB3NB2W.js +69 -0
  354. package/dist/metrics-52ZARN6M.js +152 -0
  355. package/dist/models-LSEMO4XH.js +155 -0
  356. package/dist/normalize-3HI26S34.js +806 -0
  357. package/dist/normalize-SOFYZQSJ.js +141 -0
  358. package/dist/options-GKSCCFM7.js +122 -0
  359. package/dist/output-YJ4YBUU4.js +24 -0
  360. package/dist/page-ZGCK6MOQ.js +105 -0
  361. package/dist/pages-QMP3W2R3.js +66 -0
  362. package/dist/performance-BQSWGNFO.js +24 -0
  363. package/dist/pinterest-LCVUB2ZL.js +96 -0
  364. package/dist/pixels-UQGAPBLG.js +60 -0
  365. package/dist/pixels-YM2DX7EN.js +108 -0
  366. package/dist/plan-Z5TZRRCH.js +207 -0
  367. package/dist/preview-DZQUUQGD.js +169 -0
  368. package/dist/profile-SXX36XVS.js +159 -0
  369. package/dist/promoted-tweet-writes-VUNJIUA3.js +180 -0
  370. package/dist/promoted-tweets-55X4H7NG.js +119 -0
  371. package/dist/properties-CSW67FJG.js +101 -0
  372. package/dist/publish-U73OR33K.js +322 -0
  373. package/dist/query-UQQNESTT.js +236 -0
  374. package/dist/query-V4I3VCJ7.js +61 -0
  375. package/dist/query-XPCC7OUP.js +247 -0
  376. package/dist/questionnaire-UQNRYZK7.js +93 -0
  377. package/dist/read-RXAOLPG5.js +141 -0
  378. package/dist/reddit-C2B7NT7X.js +26 -0
  379. package/dist/refresh-JN4HKE4H.js +94 -0
  380. package/dist/release-HSAOBN5K.js +60 -0
  381. package/dist/relevant-pages-XBWFEHHE.js +99 -0
  382. package/dist/remove-G5UXVQ2W.js +50 -0
  383. package/dist/remove-Q4TL5ZFS.js +48 -0
  384. package/dist/reopen-D26VSRRL.js +63 -0
  385. package/dist/rerun-NWOGRYHU.js +89 -0
  386. package/dist/rerun-NWOGRYHU.js.map +1 -0
  387. package/dist/research-CRYX2CAR.js +262 -0
  388. package/dist/research-XRVD2GSG.js +62 -0
  389. package/dist/reset-2VVN4CY7.js +54 -0
  390. package/dist/reset-FWDPBHYO.js +54 -0
  391. package/dist/resolve-D4PCGIWO.js +121 -0
  392. package/dist/retry-AHZFHMTH.js +60 -0
  393. package/dist/retry-FV6ASVO5.js +62 -0
  394. package/dist/retry-failed-AENQRGML.js +45 -0
  395. package/dist/rules-DSLE6LVU.js +95 -0
  396. package/dist/rules-DSLE6LVU.js.map +1 -0
  397. package/dist/rules-add-NBOMKFAI.js +446 -0
  398. package/dist/rules-add-NBOMKFAI.js.map +1 -0
  399. package/dist/run-AGSHZQND.js +65 -0
  400. package/dist/run-IRJWKZ3K.js +64 -0
  401. package/dist/scaffold-ad-3BSA7BWT.js +1553 -0
  402. package/dist/scaffold-ad-3BSA7BWT.js.map +1 -0
  403. package/dist/scaffold-static-ad-Q26LLBWQ.js +976 -0
  404. package/dist/scaffold-static-ad-Q26LLBWQ.js.map +1 -0
  405. package/dist/scaffold-video-WE52C7YZ.js +877 -0
  406. package/dist/scaffold-video-WE52C7YZ.js.map +1 -0
  407. package/dist/schedule-DTKBBIEH.js +66 -0
  408. package/dist/schedule-ESHQ4II7.js +61 -0
  409. package/dist/scheduled-agents-AREYFW23.js +50 -0
  410. package/dist/schema-OBF4T2QN.js +63 -0
  411. package/dist/schema-SWG2WKYX.js +132 -0
  412. package/dist/scrape-AGGDUPPD.js +2241 -0
  413. package/dist/screenshot-6GGCQCIV.js +102 -0
  414. package/dist/search-FRSFGJLZ.js +92 -0
  415. package/dist/search-I64WW2QC.js +174 -0
  416. package/dist/search-L2KHX5DO.js +224 -0
  417. package/dist/search-MBDEQ6EE.js +26 -0
  418. package/dist/search-UCDN4TOT.js +91 -0
  419. package/dist/search-copy-HX3FYZGT.js +168 -0
  420. package/dist/seeds-VFEFE4AK.js +101 -0
  421. package/dist/select-4IQQNKLN.js +100 -0
  422. package/dist/select-4IQQNKLN.js.map +1 -0
  423. package/dist/sends-WDSOXBSS.js +309 -0
  424. package/dist/sequences-NMJ55HS5.js +146 -0
  425. package/dist/set-prompt-DE4TD2V7.js +192 -0
  426. package/dist/set-prompt-DE4TD2V7.js.map +1 -0
  427. package/dist/setup-links-NAAUQD7O.js +141 -0
  428. package/dist/shared-3GVQQQNL.js +31 -0
  429. package/dist/site-VTJU5CRE.js +177 -0
  430. package/dist/sitemaps-KS57YDGB.js +87 -0
  431. package/dist/sites-PUEEVW7H.js +101 -0
  432. package/dist/skills-N6NRI2LC.js +47 -0
  433. package/dist/sources-CMUU4FER.js +454 -0
  434. package/dist/sources-YUMNEFK5.js +30 -0
  435. package/dist/stale-E34H24C3.js +70 -0
  436. package/dist/stale-E34H24C3.js.map +1 -0
  437. package/dist/stats-SY6GRHKB.js +34 -0
  438. package/dist/status-PVW64CLX.js +62 -0
  439. package/dist/sticker-YS6W5TSZ.js +94 -0
  440. package/dist/stock-DWL5E6K4.js +179 -0
  441. package/dist/studio-SXBK2IJJ.js +49 -0
  442. package/dist/sync-FOLYGQDI.js +54 -0
  443. package/dist/sync-NORMNZEE.js +54 -0
  444. package/dist/sync-XHJDCWWP.js +265 -0
  445. package/dist/sync-definition-DTWEW6ZC.js +61 -0
  446. package/dist/tag-manager-ARFZU46G.js +43 -0
  447. package/dist/tags-77JUO75W.js +20 -0
  448. package/dist/tags-DOJUSHJB.js +224 -0
  449. package/dist/tags-IESRRMGW.js +20 -0
  450. package/dist/tags-MRTUBMRD.js +20 -0
  451. package/dist/tags-SP6GW4R7.js +26 -0
  452. package/dist/targeting-constants-DVGRIRKD.js +118 -0
  453. package/dist/targeting-criteria-SOK3HUE2.js +113 -0
  454. package/dist/targets-V2HNKVUL.js +102 -0
  455. package/dist/testimonials-PA2FUV4H.js +32 -0
  456. package/dist/themes-IDB7YPHW.js +94 -0
  457. package/dist/top-companies-XDP4SZN7.js +108 -0
  458. package/dist/translate-V6XPDX4M.js +604 -0
  459. package/dist/translate-V6XPDX4M.js.map +1 -0
  460. package/dist/triggers-QDXCA5P4.js +141 -0
  461. package/dist/tweets-AISMWXM3.js +123 -0
  462. package/dist/unfollow-PHLMILG2.js +46 -0
  463. package/dist/unlink-GDZV5GVL.js +67 -0
  464. package/dist/unstage-WCC2TI5Z.js +95 -0
  465. package/dist/unstage-WDJXHSAV.js +84 -0
  466. package/dist/update-KBF35KYV.js +63 -0
  467. package/dist/update-MRG5MPHR.js +98 -0
  468. package/dist/update-XNNQGZBO.js +155 -0
  469. package/dist/update-ZGDQJPDL.js +142 -0
  470. package/dist/upload-ID35OCCY.js +126 -0
  471. package/dist/upload-R7YJORED.js +150 -0
  472. package/dist/upscale-XPGVJWW2.js +109 -0
  473. package/dist/url-options-6X7M2J7D.js +130 -0
  474. package/dist/url-params-WRLCJRJQ.js +98 -0
  475. package/dist/use-VCL3PRCB.js +95 -0
  476. package/dist/validate-VTAKQGD5.js +95 -0
  477. package/dist/validate-VTAKQGD5.js.map +1 -0
  478. package/dist/variant-2NADVT6Q.js +338 -0
  479. package/dist/videos-M6VK66NI.js +39 -0
  480. package/dist/view-Q5B57K42.js +121 -0
  481. package/dist/viewer-check-3T2EZOSH.js +79 -0
  482. package/dist/web-GOD7BF7X.js +140 -0
  483. package/dist/winners-PK6EMR6B.js +113 -0
  484. package/dist/winning-ads-F765TFLS.js +84 -0
  485. package/dist/write-commands-4KWMNH6A.js +1015 -0
  486. package/dist/write-commands-7ECRGXLK.js +737 -0
  487. package/dist/write-commands-GL2PHXSU.js +713 -0
  488. package/dist/write-commands-NMV65XXB.js +206 -0
  489. package/dist/x-MDENBZ3X.js +47 -0
  490. package/package.json +1 -1
  491. package/dist/account-MLAW7QO4.js +0 -49
  492. package/dist/account-NVQ3WI4O.js +0 -80
  493. package/dist/account-SWQ46ROJ.js +0 -79
  494. package/dist/account-reads-X5V27S4V.js +0 -218
  495. package/dist/account-writes-ICOG4IIN.js +0 -66
  496. package/dist/accounts-CU4Q2AV7.js +0 -75
  497. package/dist/accounts-GUHRV3RA.js +0 -115
  498. package/dist/accounts-VXJGZN4B.js +0 -77
  499. package/dist/accounts-WH7SRFCB.js +0 -114
  500. package/dist/accounts-Z35XIXUG.js +0 -611
  501. package/dist/actions-N2BIWUNG.js +0 -55
  502. package/dist/active-entities-2CQHGACO.js +0 -103
  503. package/dist/activecampaign-UBUW2JPM.js +0 -935
  504. package/dist/activities-EDCSBYGM.js +0 -74
  505. package/dist/ad-group-writes-2A3AHYLT.js +0 -170
  506. package/dist/ad-groups-2NUG3W2Q.js +0 -68
  507. package/dist/ad-writes-7P7OCHR5.js +0 -174
  508. package/dist/add-IR3YOPV5.js +0 -302
  509. package/dist/add-JRJNRTF3.js +0 -104
  510. package/dist/add-PGD6PNXH.js +0 -97
  511. package/dist/add-ZMZJSBQT.js +0 -105
  512. package/dist/add-accounts-A2YRT5NR.js +0 -91
  513. package/dist/ads-DKLVC4HJ.js +0 -40
  514. package/dist/ads-LLHGVBB7.js +0 -77
  515. package/dist/ads-ZOQM52YG.js +0 -128
  516. package/dist/ads-ZOYLP5R3.js +0 -113
  517. package/dist/adsets-RKSBDAHV.js +0 -176
  518. package/dist/advertisers-34GDHZC7.js +0 -125
  519. package/dist/advertisers-RFR6PLKS.js +0 -120
  520. package/dist/analytics-GVNI5L7F.js +0 -433
  521. package/dist/analytics-SFNQQ4H2.js +0 -1976
  522. package/dist/animate-4WEEILEO.js +0 -480
  523. package/dist/assign-YPC6S54E.js +0 -77
  524. package/dist/audience-size-KKF7YGDQ.js +0 -94
  525. package/dist/audiences-FNDYOAAW.js +0 -85
  526. package/dist/audiences-SXBA4R3I.js +0 -78
  527. package/dist/audiences-XFAAACQR.js +0 -268
  528. package/dist/audit-6EDZNY2R.js +0 -151
  529. package/dist/audit-MADJMBNF.js +0 -88
  530. package/dist/autocomplete-JR5BPJGK.js +0 -111
  531. package/dist/avatars-N7TNKA35.js +0 -38
  532. package/dist/bid-pricing-GTQDJNJ2.js +0 -99
  533. package/dist/brand-NBN4BKVK.js +0 -22
  534. package/dist/brief-JOETAFSU.js +0 -490
  535. package/dist/brief-JOETAFSU.js.map +0 -1
  536. package/dist/businesses-OFQG3YSL.js +0 -53
  537. package/dist/campaign-groups-UUW3CN6A.js +0 -95
  538. package/dist/campaign-writes-AZLETQHZ.js +0 -170
  539. package/dist/campaign-writes-GH7KUHQW.js +0 -165
  540. package/dist/campaigns-TVMV67O7.js +0 -76
  541. package/dist/campaigns-U2223VTR.js +0 -107
  542. package/dist/campaigns-XJLPCXTZ.js +0 -109
  543. package/dist/campaigns-YBOTJUV2.js +0 -110
  544. package/dist/canvas-K2AQCEDK.js +0 -46
  545. package/dist/capabilities-6U5F7DMS.js +0 -144
  546. package/dist/cards-WZSPTO4I.js +0 -85
  547. package/dist/catalog-YKS33IMX.js +0 -64
  548. package/dist/catalog-YKS33IMX.js.map +0 -1
  549. package/dist/catalogs-WJYJM2L5.js +0 -128
  550. package/dist/changes-C56KNZFO.js +0 -135
  551. package/dist/chatgpt-WSOZZQJX.js +0 -47
  552. package/dist/chats-W2TMJHP7.js +0 -262
  553. package/dist/chunk-2SNAQVAY.js +0 -1079
  554. package/dist/chunk-33STLGET.js +0 -67
  555. package/dist/chunk-3IYJ4ERJ.js +0 -337
  556. package/dist/chunk-3IYJ4ERJ.js.map +0 -1
  557. package/dist/chunk-3SF5KBIO.js +0 -42
  558. package/dist/chunk-3VJOJVKQ.js +0 -3151
  559. package/dist/chunk-3VJOJVKQ.js.map +0 -1
  560. package/dist/chunk-3WQ4ANUO.js +0 -84
  561. package/dist/chunk-3YNHIJCI.js +0 -75
  562. package/dist/chunk-4E27H5EG.js +0 -149
  563. package/dist/chunk-5B3AEQDZ.js +0 -125
  564. package/dist/chunk-5CXPZVMO.js +0 -382
  565. package/dist/chunk-5HYSKH77.js +0 -315
  566. package/dist/chunk-5HYSKH77.js.map +0 -1
  567. package/dist/chunk-5NV2TEH7.js +0 -1442
  568. package/dist/chunk-5NV2TEH7.js.map +0 -1
  569. package/dist/chunk-6DE3EHEF.js +0 -296
  570. package/dist/chunk-6QNEVETC.js +0 -46
  571. package/dist/chunk-7I7Y3DMU.js +0 -96
  572. package/dist/chunk-7K64OJCD.js +0 -23
  573. package/dist/chunk-A6UE6JDP.js +0 -817
  574. package/dist/chunk-A6UE6JDP.js.map +0 -1
  575. package/dist/chunk-ABMOJ5AY.js +0 -1830
  576. package/dist/chunk-ABMOJ5AY.js.map +0 -1
  577. package/dist/chunk-AHQJAKAV.js +0 -544
  578. package/dist/chunk-ANNHTQK2.js +0 -92
  579. package/dist/chunk-BEJ2AVPJ.js +0 -106
  580. package/dist/chunk-BG5P4GUH.js +0 -51
  581. package/dist/chunk-CGOVXSSY.js +0 -309
  582. package/dist/chunk-CHZ3ZNGJ.js +0 -172
  583. package/dist/chunk-CJABW4F7.js +0 -455
  584. package/dist/chunk-CO43KLQQ.js +0 -160
  585. package/dist/chunk-CO43KLQQ.js.map +0 -1
  586. package/dist/chunk-CSFWCJQM.js +0 -903
  587. package/dist/chunk-DIKYWXP5.js +0 -197
  588. package/dist/chunk-DOZKZY3K.js +0 -103
  589. package/dist/chunk-E3OUPTS3.js +0 -4408
  590. package/dist/chunk-E3OUPTS3.js.map +0 -1
  591. package/dist/chunk-ENY76SPM.js +0 -74
  592. package/dist/chunk-EX4FQWBU.js +0 -846
  593. package/dist/chunk-EZRJT2UT.js +0 -1599
  594. package/dist/chunk-F4H6VVPE.js +0 -215
  595. package/dist/chunk-FJIUMOVD.js +0 -225
  596. package/dist/chunk-FK6GBCQ4.js +0 -66
  597. package/dist/chunk-FQK6PZSR.js +0 -363
  598. package/dist/chunk-G3AOJ5FE.js +0 -35
  599. package/dist/chunk-G3UCXCC2.js +0 -455
  600. package/dist/chunk-HDYF3EIN.js +0 -166
  601. package/dist/chunk-IBCTXMQD.js +0 -98
  602. package/dist/chunk-IFZJGDA5.js +0 -60
  603. package/dist/chunk-IWLWY2UD.js +0 -2122
  604. package/dist/chunk-IXJ33KBN.js +0 -297
  605. package/dist/chunk-IZNTYRKB.js +0 -55
  606. package/dist/chunk-JA4PDZNY.js +0 -106
  607. package/dist/chunk-JLCK7K6Y.js +0 -216
  608. package/dist/chunk-JQUPL6IQ.js +0 -136
  609. package/dist/chunk-K2DBAN3C.js +0 -26
  610. package/dist/chunk-KJNBAM7A.js +0 -19
  611. package/dist/chunk-KKXHGAYA.js +0 -74
  612. package/dist/chunk-KMMVQ2MR.js +0 -84
  613. package/dist/chunk-KQ5LPY5T.js +0 -159
  614. package/dist/chunk-KU7WJPCH.js +0 -474
  615. package/dist/chunk-KU7WJPCH.js.map +0 -1
  616. package/dist/chunk-KV2MG67C.js +0 -665
  617. package/dist/chunk-L66QWXPF.js +0 -97
  618. package/dist/chunk-LEDW3GQ6.js +0 -392
  619. package/dist/chunk-LHKCZG2R.js +0 -136
  620. package/dist/chunk-LL6T64OU.js +0 -174
  621. package/dist/chunk-LLN7NP3O.js +0 -52
  622. package/dist/chunk-LNZM6SUE.js +0 -56
  623. package/dist/chunk-LT5JXJ4S.js +0 -494
  624. package/dist/chunk-M62WN522.js +0 -188
  625. package/dist/chunk-M6CI2HYA.js +0 -74
  626. package/dist/chunk-MGKEUB7P.js +0 -96
  627. package/dist/chunk-MOOWJF2A.js +0 -509
  628. package/dist/chunk-MRI5VTCG.js +0 -98
  629. package/dist/chunk-NCHPAGHG.js +0 -172
  630. package/dist/chunk-NFDAIY6J.js +0 -191
  631. package/dist/chunk-NFSLRRIE.js +0 -77
  632. package/dist/chunk-NRAE3HJ7.js +0 -6217
  633. package/dist/chunk-NRAE3HJ7.js.map +0 -1
  634. package/dist/chunk-OLV66PDA.js +0 -139
  635. package/dist/chunk-ONJBAKPT.js +0 -275
  636. package/dist/chunk-P4UQBJNY.js +0 -486
  637. package/dist/chunk-P4UQBJNY.js.map +0 -1
  638. package/dist/chunk-Q3FMV65H.js +0 -547
  639. package/dist/chunk-RDQI3YD2.js +0 -66
  640. package/dist/chunk-RKXH5JHW.js +0 -5181
  641. package/dist/chunk-RMB2MIOJ.js +0 -94
  642. package/dist/chunk-SI23M3JX.js +0 -57
  643. package/dist/chunk-SS445HDO.js +0 -25
  644. package/dist/chunk-TLOFNP4Q.js +0 -45
  645. package/dist/chunk-TUVS5SPF.js +0 -133
  646. package/dist/chunk-TUVS5SPF.js.map +0 -1
  647. package/dist/chunk-TVKE3OXR.js +0 -76
  648. package/dist/chunk-U3OFW35R.js +0 -6802
  649. package/dist/chunk-U3OFW35R.js.map +0 -1
  650. package/dist/chunk-U3VFBK37.js +0 -304
  651. package/dist/chunk-U3VFBK37.js.map +0 -1
  652. package/dist/chunk-UKABMTAY.js +0 -346
  653. package/dist/chunk-UNHCWWAI.js +0 -111
  654. package/dist/chunk-UTLPE7CT.js +0 -111
  655. package/dist/chunk-VEGBGLWZ.js +0 -216
  656. package/dist/chunk-VPBCR6DT.js +0 -1743
  657. package/dist/chunk-VQID7VS6.js +0 -175
  658. package/dist/chunk-WBCQEXEH.js +0 -76
  659. package/dist/chunk-X3PVW3RM.js +0 -610
  660. package/dist/chunk-X3PVW3RM.js.map +0 -1
  661. package/dist/chunk-XLZMKMKD.js +0 -333
  662. package/dist/chunk-XTQKPYOB.js +0 -274
  663. package/dist/chunk-YMGZC443.js +0 -23992
  664. package/dist/chunk-YTHEUDA4.js +0 -433
  665. package/dist/chunk-Z2HNETUP.js +0 -58
  666. package/dist/chunk-ZACQZNGD.js +0 -169
  667. package/dist/chunk-ZC6BCHGC.js +0 -206
  668. package/dist/chunk-ZCEZANTV.js +0 -592
  669. package/dist/claim-SLU3TMEJ.js +0 -197
  670. package/dist/client-2ABVGUQB.js +0 -19
  671. package/dist/code-GHG7DEPV.js +0 -76
  672. package/dist/companies-2XCKZ46Z.js +0 -195
  673. package/dist/complete-3JAPGUF7.js +0 -81
  674. package/dist/config-L26WNV2G.js +0 -88
  675. package/dist/connect-QUJB2B7O.js +0 -42
  676. package/dist/content-2SL3VHIK.js +0 -85
  677. package/dist/conversation-HIRIQPQY.js +0 -93
  678. package/dist/conversion-report-YHHSCA2E.js +0 -125
  679. package/dist/conversion-upload-command-CTVEOGET.js +0 -438
  680. package/dist/conversion-writes-MJROE4M7.js +0 -120
  681. package/dist/conversions-H6GFO3O7.js +0 -76
  682. package/dist/conversions-VBOTADOT.js +0 -135
  683. package/dist/countries-D5JPHJ4F.js +0 -82
  684. package/dist/create-7SL6BAET.js +0 -207
  685. package/dist/create-KD4ZMJYX.js +0 -59
  686. package/dist/create-TIL4R5M4.js +0 -235
  687. package/dist/create-WKIZSOXV.js +0 -126
  688. package/dist/creatives-5C4PRGFT.js +0 -87
  689. package/dist/creatives-CLIW4GMR.js +0 -51
  690. package/dist/creatives-CLIW4GMR.js.map +0 -1
  691. package/dist/creatives-YN2MEJXJ.js +0 -182
  692. package/dist/credentials-JI4GR4OR.js +0 -287
  693. package/dist/critique-G27U5LAO.js +0 -213
  694. package/dist/critique-G27U5LAO.js.map +0 -1
  695. package/dist/critique-JIKK245W.js +0 -1449
  696. package/dist/critique-JIKK245W.js.map +0 -1
  697. package/dist/crm-QXZKSL4T.js +0 -318
  698. package/dist/crm-S2GNKTHX.js +0 -224
  699. package/dist/crop-KR3LOQBX.js +0 -113
  700. package/dist/currency-7YV4AT54.js +0 -88
  701. package/dist/custom-conversions-YCOWWTQ7.js +0 -125
  702. package/dist/customers-XTK7G7G5.js +0 -56
  703. package/dist/decide-DZG2JUMG.js +0 -199
  704. package/dist/delete-FIDIBB2H.js +0 -69
  705. package/dist/delete-KLSRJZQG.js +0 -54
  706. package/dist/delete-LXOTLB3P.js +0 -63
  707. package/dist/delete-OHTGL7ZJ.js +0 -71
  708. package/dist/delete-TSI264EH.js +0 -66
  709. package/dist/delete-YKR5Y7EQ.js +0 -71
  710. package/dist/demographics-EFZ4KNRS.js +0 -138
  711. package/dist/describe-I7VNACXY.js +0 -97
  712. package/dist/describe-NAINLKWG.js +0 -97
  713. package/dist/dimensions-K6MDXS4B.js +0 -101
  714. package/dist/discard-DCMPT757.js +0 -66
  715. package/dist/discover-E7SVCXZ2.js +0 -93
  716. package/dist/discover-NRXKO6CV.js +0 -172
  717. package/dist/domain-WDE36COE.js +0 -98
  718. package/dist/download-5FCLTMLA.js +0 -299
  719. package/dist/draft-2SEMUJFJ.js +0 -307
  720. package/dist/draft-3NGYZTH6.js +0 -328
  721. package/dist/draft-AUF73NZE.js +0 -217
  722. package/dist/draft-BS33PXQV.js +0 -306
  723. package/dist/draft-NJNAGVVV.js +0 -103
  724. package/dist/draft-QSO3DQG6.js +0 -233
  725. package/dist/draft-UNCGJCUN.js +0 -100
  726. package/dist/draft-YGDIKVJP.js +0 -281
  727. package/dist/env-FKVPPL35.js +0 -43
  728. package/dist/experiment-JF2QTPRV.js +0 -1397
  729. package/dist/export-3ROTRKFE.js +0 -168
  730. package/dist/extract-VXGXR5RD.js +0 -113
  731. package/dist/facets-MCBQT67Y.js +0 -114
  732. package/dist/favorites-DI2EY34L.js +0 -178
  733. package/dist/feed-EH4FENF4.js +0 -177
  734. package/dist/feedback-O4XFHZHO.js +0 -66
  735. package/dist/feedback-record-4WL5BAVA.js +0 -175
  736. package/dist/feedback-record-4WL5BAVA.js.map +0 -1
  737. package/dist/fetch-5B762QDP.js +0 -176
  738. package/dist/fetch-V3BFDMZF.js +0 -139
  739. package/dist/find-T7XJV535.js +0 -134
  740. package/dist/fit-JRHXPGLA.js +0 -45
  741. package/dist/flows-AP65BVPP.js +0 -247
  742. package/dist/follow-PIEAXZE7.js +0 -94
  743. package/dist/follow-competitors-7N2TPSLA.js +0 -112
  744. package/dist/following-74CI7UC6.js +0 -113
  745. package/dist/fonts-OENIDAZ7.js +0 -34
  746. package/dist/forecast-D547E44U.js +0 -104
  747. package/dist/forecast-Y277VDX6.js +0 -168
  748. package/dist/funding-FTWMCGZ7.js +0 -85
  749. package/dist/funnel-5JTVRADR.js +0 -394
  750. package/dist/ga4-T4ZHANT2.js +0 -55
  751. package/dist/generate-IOXW6L2V.js +0 -263
  752. package/dist/get-2IKPCXEM.js +0 -59
  753. package/dist/get-4NVK3GGF.js +0 -56
  754. package/dist/get-6NSZTWA5.js +0 -78
  755. package/dist/get-ABPBK4P3.js +0 -63
  756. package/dist/get-NE3EEHN6.js +0 -92
  757. package/dist/get-V4BZ4NTK.js +0 -63
  758. package/dist/get-WZVNWFQA.js +0 -61
  759. package/dist/gif-O3FLM3CF.js +0 -94
  760. package/dist/google-VV4DFC4D.js +0 -3190
  761. package/dist/google-Z5UAFS3C.js +0 -136
  762. package/dist/google-ads-TNQPMZ4S.js +0 -195
  763. package/dist/group-34IDEULM.js +0 -43
  764. package/dist/group-HJMQ5H3L.js +0 -43
  765. package/dist/gsc-LDZKY5FW.js +0 -30
  766. package/dist/history-5QUGDDCG.js +0 -67
  767. package/dist/history-FSVEXQPF.js +0 -133
  768. package/dist/hubspot-5ZSIBOGH.js +0 -779
  769. package/dist/icon-37BBWKJO.js +0 -137
  770. package/dist/ideas-QHHUO5HO.js +0 -32
  771. package/dist/images-LIE3WZWC.js +0 -90
  772. package/dist/improve-6J2UJ4JZ.js +0 -86
  773. package/dist/ingest-22PPDMUN.js +0 -107
  774. package/dist/ingest-UT2H2KZF.js +0 -23
  775. package/dist/insights-5IBNZFHT.js +0 -423
  776. package/dist/insights-5RPSKKQJ.js +0 -122
  777. package/dist/inspect-677LAYRX.js +0 -189
  778. package/dist/inspiration-LYCDPQEY.js +0 -53
  779. package/dist/intent-EPQQ7ZFJ.js +0 -95
  780. package/dist/job-ZEI4FC5Y.js +0 -202
  781. package/dist/job-create-QVTI3TP6.js +0 -109
  782. package/dist/job-status-GVL7X6EY.js +0 -74
  783. package/dist/keep-GD5LZFGG.js +0 -78
  784. package/dist/keyword-gap-GDYE6HFV.js +0 -130
  785. package/dist/keyword-metrics-IEEMFOE5.js +0 -197
  786. package/dist/keywords-for-site-Q23TNDPZ.js +0 -128
  787. package/dist/landing-CV23X7CN.js +0 -28
  788. package/dist/landings-4YBHALDA.js +0 -151
  789. package/dist/languages-6WNZHQ4U.js +0 -40
  790. package/dist/languages-KRXEHLM4.js +0 -55
  791. package/dist/launches-FOJQPCD2.js +0 -19
  792. package/dist/layerize-M6ZRXR7M.js +0 -190
  793. package/dist/leads-ANHNQVHR.js +0 -90
  794. package/dist/leads-NV57FPKX.js +0 -293
  795. package/dist/learn-YZ3XSAV5.js +0 -203
  796. package/dist/learn-YZ3XSAV5.js.map +0 -1
  797. package/dist/library-HC5US7CE.js +0 -109
  798. package/dist/lighthouse-DXZIQLLK.js +0 -75
  799. package/dist/line-item-writes-WJRNPIUP.js +0 -208
  800. package/dist/line-items-V7TBD3ID.js +0 -103
  801. package/dist/link-VL5HPDR4.js +0 -64
  802. package/dist/linkedin-YXAXITWY.js +0 -1008
  803. package/dist/list-2M3M3ETE.js +0 -63
  804. package/dist/list-HB4HYMCC.js +0 -151
  805. package/dist/list-IZNAL5LS.js +0 -57
  806. package/dist/list-KEWAXGUG.js +0 -303
  807. package/dist/list-LC7BZRD4.js +0 -65
  808. package/dist/list-MEGAZDWZ.js +0 -51
  809. package/dist/list-RGMBFJHB.js +0 -76
  810. package/dist/list-VXNYIVS5.js +0 -50
  811. package/dist/locations-BPH3DMDQ.js +0 -67
  812. package/dist/locations-VAIAC2TU.js +0 -40
  813. package/dist/log-ZBKKTCH4.js +0 -92
  814. package/dist/logo-SOCGJLY5.js +0 -18
  815. package/dist/lookup-MQBDRZZT.js +0 -22
  816. package/dist/make-A5KQ4NAR.js +0 -647
  817. package/dist/make-A5KQ4NAR.js.map +0 -1
  818. package/dist/map-3LR4J2TZ.js +0 -433
  819. package/dist/mcp-UNMB4DFG.js +0 -463
  820. package/dist/media-OYAN23YG.js +0 -15
  821. package/dist/media-QCWYLIO2.js +0 -89
  822. package/dist/media-sources-BQETKYFK.js +0 -32
  823. package/dist/members-NPDLDJS5.js +0 -44
  824. package/dist/meta-B5XDM6F6.js +0 -69
  825. package/dist/metrics-EWFYLBPC.js +0 -152
  826. package/dist/models-4K2B7C4S.js +0 -155
  827. package/dist/normalize-2OUEDA6D.js +0 -806
  828. package/dist/normalize-MMXC57LC.js +0 -141
  829. package/dist/options-EUSKJAOQ.js +0 -122
  830. package/dist/output-ZKNCKP7T.js +0 -24
  831. package/dist/page-EMJESGQZ.js +0 -105
  832. package/dist/pages-OMKAYKCF.js +0 -66
  833. package/dist/performance-RRL3KUNU.js +0 -24
  834. package/dist/pinterest-I6JO7LXL.js +0 -96
  835. package/dist/pixels-5JBTFWCO.js +0 -108
  836. package/dist/pixels-JSSNVLXR.js +0 -60
  837. package/dist/plan-KNUKCIS7.js +0 -207
  838. package/dist/preview-TBINZJ2C.js +0 -169
  839. package/dist/profile-UV3FTEUC.js +0 -159
  840. package/dist/promoted-tweet-writes-NRLYLKDH.js +0 -180
  841. package/dist/promoted-tweets-XNPXTPQX.js +0 -119
  842. package/dist/properties-CTFQ7IK3.js +0 -101
  843. package/dist/publish-VTERMZDW.js +0 -322
  844. package/dist/query-JMVLWKVY.js +0 -236
  845. package/dist/query-T5IBVQ3B.js +0 -247
  846. package/dist/query-U242DEWX.js +0 -61
  847. package/dist/questionnaire-APZ6FMPE.js +0 -93
  848. package/dist/read-W5ZK5G7Q.js +0 -141
  849. package/dist/reddit-C5CAD24M.js +0 -26
  850. package/dist/refresh-7LFNDRYA.js +0 -94
  851. package/dist/release-ZEHZ7EQX.js +0 -60
  852. package/dist/relevant-pages-ZGR5VJNI.js +0 -99
  853. package/dist/remove-FB3NBNBG.js +0 -50
  854. package/dist/remove-RFOFNOYU.js +0 -48
  855. package/dist/reopen-Z6ODLCPE.js +0 -63
  856. package/dist/rerun-TZ6BPGYL.js +0 -84
  857. package/dist/rerun-TZ6BPGYL.js.map +0 -1
  858. package/dist/research-64G5C2ZQ.js +0 -262
  859. package/dist/research-VQ4DK4BX.js +0 -62
  860. package/dist/reset-F2JQR3OZ.js +0 -54
  861. package/dist/reset-YRQ5DGNF.js +0 -54
  862. package/dist/resolve-QXKGYHGJ.js +0 -121
  863. package/dist/retry-SANO53UL.js +0 -60
  864. package/dist/retry-YZUECDFN.js +0 -62
  865. package/dist/retry-failed-5XDCVPQA.js +0 -45
  866. package/dist/run-3VEPILYM.js +0 -59
  867. package/dist/run-VRKP6QXJ.js +0 -65
  868. package/dist/scaffold-ad-LHWGQZAC.js +0 -1548
  869. package/dist/scaffold-ad-LHWGQZAC.js.map +0 -1
  870. package/dist/scaffold-static-ad-EZQAIRCG.js +0 -971
  871. package/dist/scaffold-static-ad-EZQAIRCG.js.map +0 -1
  872. package/dist/scaffold-video-XJG7IGOH.js +0 -872
  873. package/dist/scaffold-video-XJG7IGOH.js.map +0 -1
  874. package/dist/schedule-4N6JTJJT.js +0 -66
  875. package/dist/schedule-RLNIWFNT.js +0 -61
  876. package/dist/scheduled-agents-6XAY6YOG.js +0 -50
  877. package/dist/schema-ANV3AC5M.js +0 -132
  878. package/dist/schema-RNVEYR2U.js +0 -63
  879. package/dist/scrape-VK7RZO4M.js +0 -2241
  880. package/dist/screenshot-PWUROUXU.js +0 -102
  881. package/dist/search-3ZW3RRPX.js +0 -92
  882. package/dist/search-BMIFGJLQ.js +0 -174
  883. package/dist/search-J2VQNY4A.js +0 -91
  884. package/dist/search-LRY5SYDM.js +0 -224
  885. package/dist/search-M23XX3N5.js +0 -26
  886. package/dist/search-copy-AVQESTYJ.js +0 -168
  887. package/dist/seeds-C6JI3WTG.js +0 -101
  888. package/dist/select-5ZNRK2MF.js +0 -94
  889. package/dist/select-5ZNRK2MF.js.map +0 -1
  890. package/dist/sends-DYIE7W5U.js +0 -309
  891. package/dist/sequences-CQVKVRC4.js +0 -146
  892. package/dist/set-prompt-UPX3Z32E.js +0 -185
  893. package/dist/set-prompt-UPX3Z32E.js.map +0 -1
  894. package/dist/setup-links-5BBLPJHT.js +0 -141
  895. package/dist/shared-2SQRS476.js +0 -31
  896. package/dist/site-MK3C44AE.js +0 -177
  897. package/dist/sitemaps-XFLHKP2D.js +0 -87
  898. package/dist/sites-5JNZWY3A.js +0 -101
  899. package/dist/skills-43P4WK6Y.js +0 -47
  900. package/dist/sources-E45FLI5L.js +0 -454
  901. package/dist/sources-KS7IVG62.js +0 -30
  902. package/dist/stale-TYETBSC3.js +0 -63
  903. package/dist/stale-TYETBSC3.js.map +0 -1
  904. package/dist/stats-LLTHL5VR.js +0 -34
  905. package/dist/status-MGEC456X.js +0 -62
  906. package/dist/sticker-B5DJ56YG.js +0 -94
  907. package/dist/stock-WXAFJFAC.js +0 -179
  908. package/dist/studio-2WRZGW5K.js +0 -49
  909. package/dist/sync-GCHWLGQG.js +0 -54
  910. package/dist/sync-JLECDZYS.js +0 -265
  911. package/dist/sync-VDPGFUZS.js +0 -54
  912. package/dist/sync-definition-VOLVALMF.js +0 -54
  913. package/dist/tag-manager-HG76EBNX.js +0 -43
  914. package/dist/tags-5LN7N55H.js +0 -20
  915. package/dist/tags-ARHISNSY.js +0 -224
  916. package/dist/tags-DGBDJCH4.js +0 -20
  917. package/dist/tags-GUAZQFF6.js +0 -26
  918. package/dist/tags-X2TXKPPZ.js +0 -20
  919. package/dist/targeting-constants-GR7RUKE3.js +0 -118
  920. package/dist/targeting-criteria-LUS4MHBB.js +0 -113
  921. package/dist/targets-B267WA3R.js +0 -102
  922. package/dist/testimonials-R2AAWIZO.js +0 -32
  923. package/dist/themes-5CH6AYPZ.js +0 -94
  924. package/dist/top-companies-PTCHBWQM.js +0 -108
  925. package/dist/translate-EBNKGIH3.js +0 -598
  926. package/dist/translate-EBNKGIH3.js.map +0 -1
  927. package/dist/triggers-OJX6V4IR.js +0 -141
  928. package/dist/tweets-ZWC7YOQ4.js +0 -123
  929. package/dist/unfollow-LBMJXF4E.js +0 -46
  930. package/dist/unlink-RBGMHY65.js +0 -67
  931. package/dist/unstage-5AZAD2KF.js +0 -95
  932. package/dist/unstage-HL7IA2ZX.js +0 -84
  933. package/dist/update-34PHEAKR.js +0 -63
  934. package/dist/update-NBP7ULLA.js +0 -142
  935. package/dist/update-RA3NLNCP.js +0 -155
  936. package/dist/update-RJYVSNAK.js +0 -98
  937. package/dist/upload-BNN7FAYI.js +0 -126
  938. package/dist/upload-MPMP3JRS.js +0 -150
  939. package/dist/upscale-TXJFZLUU.js +0 -109
  940. package/dist/url-options-QCM32IFK.js +0 -130
  941. package/dist/url-params-SLEXR6SY.js +0 -98
  942. package/dist/use-SUY57ZJA.js +0 -95
  943. package/dist/validate-IJABVPQ4.js +0 -88
  944. package/dist/validate-IJABVPQ4.js.map +0 -1
  945. package/dist/variant-TE6CEHZW.js +0 -338
  946. package/dist/videos-MWA4765B.js +0 -39
  947. package/dist/view-EQZB7Z6N.js +0 -121
  948. package/dist/viewer-check-HAQBPBPI.js +0 -68
  949. package/dist/web-GSE64LFI.js +0 -140
  950. package/dist/winners-UPM6DFRB.js +0 -113
  951. package/dist/winning-ads-K6QJT2BF.js +0 -84
  952. package/dist/write-commands-5HSNHURZ.js +0 -713
  953. package/dist/write-commands-BCU5YATY.js +0 -737
  954. package/dist/write-commands-MOZHC2RJ.js +0 -1015
  955. package/dist/write-commands-YNI6KS2B.js +0 -206
  956. package/dist/x-UNF2SAMI.js +0 -47
  957. /package/dist/{account-SWQ46ROJ.js.map → account-5VPZ3XQ3.js.map} +0 -0
  958. /package/dist/{account-MLAW7QO4.js.map → account-SYUEXERA.js.map} +0 -0
  959. /package/dist/{account-NVQ3WI4O.js.map → account-ZQH535IP.js.map} +0 -0
  960. /package/dist/{account-reads-X5V27S4V.js.map → account-reads-GUYNJEZA.js.map} +0 -0
  961. /package/dist/{account-writes-ICOG4IIN.js.map → account-writes-DLCRTL6Y.js.map} +0 -0
  962. /package/dist/{accounts-GUHRV3RA.js.map → accounts-3TNEMLLC.js.map} +0 -0
  963. /package/dist/{accounts-Z35XIXUG.js.map → accounts-GBRGCLE3.js.map} +0 -0
  964. /package/dist/{accounts-WH7SRFCB.js.map → accounts-IPOCFAKK.js.map} +0 -0
  965. /package/dist/{accounts-VXJGZN4B.js.map → accounts-QBWYIJ7D.js.map} +0 -0
  966. /package/dist/{accounts-CU4Q2AV7.js.map → accounts-TSM5EHRD.js.map} +0 -0
  967. /package/dist/{actions-N2BIWUNG.js.map → actions-XZMLYLTK.js.map} +0 -0
  968. /package/dist/{active-entities-2CQHGACO.js.map → active-entities-MFWTN4VJ.js.map} +0 -0
  969. /package/dist/{activecampaign-UBUW2JPM.js.map → activecampaign-77V5X3FQ.js.map} +0 -0
  970. /package/dist/{activities-EDCSBYGM.js.map → activities-ZXA53KY7.js.map} +0 -0
  971. /package/dist/{ad-group-writes-2A3AHYLT.js.map → ad-group-writes-2JBCTSJY.js.map} +0 -0
  972. /package/dist/{ad-groups-2NUG3W2Q.js.map → ad-groups-6JQSO32O.js.map} +0 -0
  973. /package/dist/{ad-writes-7P7OCHR5.js.map → ad-writes-P34Z3ZTX.js.map} +0 -0
  974. /package/dist/{add-ZMZJSBQT.js.map → add-F2BF2HAK.js.map} +0 -0
  975. /package/dist/{add-PGD6PNXH.js.map → add-JAXBNDLC.js.map} +0 -0
  976. /package/dist/{add-IR3YOPV5.js.map → add-KAMQP5RM.js.map} +0 -0
  977. /package/dist/{add-JRJNRTF3.js.map → add-Y6QCWI6Q.js.map} +0 -0
  978. /package/dist/{add-accounts-A2YRT5NR.js.map → add-accounts-M4R7ZVHN.js.map} +0 -0
  979. /package/dist/{ads-DKLVC4HJ.js.map → ads-6MIIAUFS.js.map} +0 -0
  980. /package/dist/{ads-ZOQM52YG.js.map → ads-KPUP4WG4.js.map} +0 -0
  981. /package/dist/{ads-ZOYLP5R3.js.map → ads-UVQN4BTT.js.map} +0 -0
  982. /package/dist/{ads-LLHGVBB7.js.map → ads-VPSHNIWG.js.map} +0 -0
  983. /package/dist/{adsets-RKSBDAHV.js.map → adsets-JAQKFDLX.js.map} +0 -0
  984. /package/dist/{advertisers-RFR6PLKS.js.map → advertisers-2ETFYRKA.js.map} +0 -0
  985. /package/dist/{advertisers-34GDHZC7.js.map → advertisers-6ONURKP2.js.map} +0 -0
  986. /package/dist/{analytics-GVNI5L7F.js.map → analytics-AVDCFCGF.js.map} +0 -0
  987. /package/dist/{analytics-SFNQQ4H2.js.map → analytics-XZ56777C.js.map} +0 -0
  988. /package/dist/{animate-4WEEILEO.js.map → animate-KZQCCL65.js.map} +0 -0
  989. /package/dist/{assign-YPC6S54E.js.map → assign-DDXB7A6W.js.map} +0 -0
  990. /package/dist/{audience-size-KKF7YGDQ.js.map → audience-size-5QQAABZQ.js.map} +0 -0
  991. /package/dist/{audiences-FNDYOAAW.js.map → audiences-I4KJ6DZ7.js.map} +0 -0
  992. /package/dist/{audiences-SXBA4R3I.js.map → audiences-IFBZCTME.js.map} +0 -0
  993. /package/dist/{audiences-XFAAACQR.js.map → audiences-THTWZOMA.js.map} +0 -0
  994. /package/dist/{audit-6EDZNY2R.js.map → audit-2KOD4YCF.js.map} +0 -0
  995. /package/dist/{audit-MADJMBNF.js.map → audit-MFTERSQZ.js.map} +0 -0
  996. /package/dist/{autocomplete-JR5BPJGK.js.map → autocomplete-JC46QNHQ.js.map} +0 -0
  997. /package/dist/{avatars-N7TNKA35.js.map → avatars-ZXQRZJM2.js.map} +0 -0
  998. /package/dist/{bid-pricing-GTQDJNJ2.js.map → bid-pricing-46W7LSU5.js.map} +0 -0
  999. /package/dist/{brand-NBN4BKVK.js.map → brand-XROP2WL2.js.map} +0 -0
  1000. /package/dist/{businesses-OFQG3YSL.js.map → businesses-JWOIY3OR.js.map} +0 -0
  1001. /package/dist/{campaign-groups-UUW3CN6A.js.map → campaign-groups-5O3SR5X2.js.map} +0 -0
  1002. /package/dist/{campaign-writes-AZLETQHZ.js.map → campaign-writes-4D4256DP.js.map} +0 -0
  1003. /package/dist/{campaign-writes-GH7KUHQW.js.map → campaign-writes-5BEK2QBJ.js.map} +0 -0
  1004. /package/dist/{campaigns-TVMV67O7.js.map → campaigns-6DX2MACO.js.map} +0 -0
  1005. /package/dist/{campaigns-XJLPCXTZ.js.map → campaigns-EJT7IMDT.js.map} +0 -0
  1006. /package/dist/{campaigns-U2223VTR.js.map → campaigns-OKU4HN5Q.js.map} +0 -0
  1007. /package/dist/{campaigns-YBOTJUV2.js.map → campaigns-QVPLPTH3.js.map} +0 -0
  1008. /package/dist/{canvas-K2AQCEDK.js.map → canvas-XCP2WPYO.js.map} +0 -0
  1009. /package/dist/{capabilities-6U5F7DMS.js.map → capabilities-W4XDJVDW.js.map} +0 -0
  1010. /package/dist/{cards-WZSPTO4I.js.map → cards-2QCVG77U.js.map} +0 -0
  1011. /package/dist/{catalogs-WJYJM2L5.js.map → catalogs-RVW4L6C6.js.map} +0 -0
  1012. /package/dist/{changes-C56KNZFO.js.map → changes-XRPDY2K4.js.map} +0 -0
  1013. /package/dist/{chatgpt-WSOZZQJX.js.map → chatgpt-RNGSOVHP.js.map} +0 -0
  1014. /package/dist/{chats-W2TMJHP7.js.map → chats-JKCUA26S.js.map} +0 -0
  1015. /package/dist/{chunk-MGKEUB7P.js.map → chunk-2C36DHQH.js.map} +0 -0
  1016. /package/dist/{chunk-2SNAQVAY.js.map → chunk-2LIAXB3W.js.map} +0 -0
  1017. /package/dist/{chunk-5B3AEQDZ.js.map → chunk-2MT3AWDE.js.map} +0 -0
  1018. /package/dist/{chunk-6DE3EHEF.js.map → chunk-2WRK44LZ.js.map} +0 -0
  1019. /package/dist/{chunk-EZRJT2UT.js.map → chunk-34NQKHKY.js.map} +0 -0
  1020. /package/dist/{chunk-5CXPZVMO.js.map → chunk-35WKYJQY.js.map} +0 -0
  1021. /package/dist/{chunk-EX4FQWBU.js.map → chunk-3FDGC2UH.js.map} +0 -0
  1022. /package/dist/{chunk-XLZMKMKD.js.map → chunk-3FFJYMKM.js.map} +0 -0
  1023. /package/dist/{chunk-7I7Y3DMU.js.map → chunk-3PL2QRF2.js.map} +0 -0
  1024. /package/dist/{chunk-OLV66PDA.js.map → chunk-3XDZMLX6.js.map} +0 -0
  1025. /package/dist/{chunk-G3AOJ5FE.js.map → chunk-4R7H4RV6.js.map} +0 -0
  1026. /package/dist/{chunk-3YNHIJCI.js.map → chunk-4TBDEV7X.js.map} +0 -0
  1027. /package/dist/{chunk-IWLWY2UD.js.map → chunk-4WYEGE4N.js.map} +0 -0
  1028. /package/dist/{chunk-Z2HNETUP.js.map → chunk-5VD5GK6A.js.map} +0 -0
  1029. /package/dist/{chunk-HDYF3EIN.js.map → chunk-5ZIGEHQQ.js.map} +0 -0
  1030. /package/dist/{chunk-KKXHGAYA.js.map → chunk-6DSLFOKJ.js.map} +0 -0
  1031. /package/dist/{chunk-RDQI3YD2.js.map → chunk-6EV5MXLQ.js.map} +0 -0
  1032. /package/dist/{chunk-KMMVQ2MR.js.map → chunk-6FHP2HIK.js.map} +0 -0
  1033. /package/dist/{chunk-BEJ2AVPJ.js.map → chunk-6VI2DDGZ.js.map} +0 -0
  1034. /package/dist/{chunk-UTLPE7CT.js.map → chunk-72QBQS63.js.map} +0 -0
  1035. /package/dist/{chunk-BG5P4GUH.js.map → chunk-7DBOLSUL.js.map} +0 -0
  1036. /package/dist/{chunk-KJNBAM7A.js.map → chunk-7FDDOOM4.js.map} +0 -0
  1037. /package/dist/{chunk-SS445HDO.js.map → chunk-AN7CMLYY.js.map} +0 -0
  1038. /package/dist/{chunk-YTHEUDA4.js.map → chunk-BDMZRWQI.js.map} +0 -0
  1039. /package/dist/{chunk-NFSLRRIE.js.map → chunk-BITS62MF.js.map} +0 -0
  1040. /package/dist/{chunk-NFDAIY6J.js.map → chunk-CKRSSMRT.js.map} +0 -0
  1041. /package/dist/{chunk-F4H6VVPE.js.map → chunk-D53AAUG4.js.map} +0 -0
  1042. /package/dist/{chunk-WBCQEXEH.js.map → chunk-DGUYFROS.js.map} +0 -0
  1043. /package/dist/{chunk-JQUPL6IQ.js.map → chunk-DS2ZRTAL.js.map} +0 -0
  1044. /package/dist/{chunk-VPBCR6DT.js.map → chunk-EIJDXZW5.js.map} +0 -0
  1045. /package/dist/{chunk-IBCTXMQD.js.map → chunk-EJH2JOVG.js.map} +0 -0
  1046. /package/dist/{chunk-M62WN522.js.map → chunk-EJWFD6T3.js.map} +0 -0
  1047. /package/dist/{chunk-LLN7NP3O.js.map → chunk-ELNN4SNW.js.map} +0 -0
  1048. /package/dist/{chunk-SI23M3JX.js.map → chunk-EUB327FC.js.map} +0 -0
  1049. /package/dist/{chunk-KQ5LPY5T.js.map → chunk-EWRGZZLS.js.map} +0 -0
  1050. /package/dist/{chunk-JA4PDZNY.js.map → chunk-FBF5XDJX.js.map} +0 -0
  1051. /package/dist/{chunk-MRI5VTCG.js.map → chunk-FP3GNJN2.js.map} +0 -0
  1052. /package/dist/{chunk-G3UCXCC2.js.map → chunk-FZKUUI3F.js.map} +0 -0
  1053. /package/dist/{chunk-VEGBGLWZ.js.map → chunk-G2AZCDX4.js.map} +0 -0
  1054. /package/dist/{chunk-TLOFNP4Q.js.map → chunk-G373L4GL.js.map} +0 -0
  1055. /package/dist/{chunk-CSFWCJQM.js.map → chunk-GFFV6YS7.js.map} +0 -0
  1056. /package/dist/{chunk-LEDW3GQ6.js.map → chunk-GN6WIZDD.js.map} +0 -0
  1057. /package/dist/{chunk-XTQKPYOB.js.map → chunk-GTOHNTTI.js.map} +0 -0
  1058. /package/dist/{chunk-KV2MG67C.js.map → chunk-HDNZSVJJ.js.map} +0 -0
  1059. /package/dist/{chunk-UKABMTAY.js.map → chunk-HLAAGGDS.js.map} +0 -0
  1060. /package/dist/{chunk-DIKYWXP5.js.map → chunk-HX7PM34O.js.map} +0 -0
  1061. /package/dist/{chunk-CHZ3ZNGJ.js.map → chunk-IKTKWXP6.js.map} +0 -0
  1062. /package/dist/{chunk-ENY76SPM.js.map → chunk-IOGKJZ4Z.js.map} +0 -0
  1063. /package/dist/{chunk-IFZJGDA5.js.map → chunk-IVRXPYQ7.js.map} +0 -0
  1064. /package/dist/{chunk-FQK6PZSR.js.map → chunk-JIJJCU6E.js.map} +0 -0
  1065. /package/dist/{chunk-IXJ33KBN.js.map → chunk-JOCKYH6U.js.map} +0 -0
  1066. /package/dist/{chunk-7K64OJCD.js.map → chunk-L44WSWSZ.js.map} +0 -0
  1067. /package/dist/{chunk-YMGZC443.js.map → chunk-LF3MFO2N.js.map} +0 -0
  1068. /package/dist/{chunk-ONJBAKPT.js.map → chunk-M525HJTA.js.map} +0 -0
  1069. /package/dist/{chunk-UNHCWWAI.js.map → chunk-MBYTIGZE.js.map} +0 -0
  1070. /package/dist/{chunk-L66QWXPF.js.map → chunk-MMU6XHCH.js.map} +0 -0
  1071. /package/dist/{chunk-3WQ4ANUO.js.map → chunk-MRRSKRZZ.js.map} +0 -0
  1072. /package/dist/{chunk-RKXH5JHW.js.map → chunk-NEHQGYZS.js.map} +0 -0
  1073. /package/dist/{chunk-LHKCZG2R.js.map → chunk-NFHUJRDE.js.map} +0 -0
  1074. /package/dist/{chunk-VQID7VS6.js.map → chunk-NG2DMLU6.js.map} +0 -0
  1075. /package/dist/{chunk-33STLGET.js.map → chunk-NSHJ6OOK.js.map} +0 -0
  1076. /package/dist/{chunk-TVKE3OXR.js.map → chunk-OCBAKPHH.js.map} +0 -0
  1077. /package/dist/{chunk-ANNHTQK2.js.map → chunk-OFTU5XBQ.js.map} +0 -0
  1078. /package/dist/{chunk-JLCK7K6Y.js.map → chunk-OSWCEDFE.js.map} +0 -0
  1079. /package/dist/{chunk-CGOVXSSY.js.map → chunk-OTNGMKI6.js.map} +0 -0
  1080. /package/dist/{chunk-ZC6BCHGC.js.map → chunk-PGSXR5UM.js.map} +0 -0
  1081. /package/dist/{chunk-MOOWJF2A.js.map → chunk-QAOEVZYY.js.map} +0 -0
  1082. /package/dist/{chunk-Q3FMV65H.js.map → chunk-QW2Q4C2X.js.map} +0 -0
  1083. /package/dist/{chunk-ZACQZNGD.js.map → chunk-R5HMAIZM.js.map} +0 -0
  1084. /package/dist/{chunk-DOZKZY3K.js.map → chunk-RPRLCIHB.js.map} +0 -0
  1085. /package/dist/{chunk-4E27H5EG.js.map → chunk-RV4GIY23.js.map} +0 -0
  1086. /package/dist/{chunk-AHQJAKAV.js.map → chunk-RVXN2YTM.js.map} +0 -0
  1087. /package/dist/{chunk-ZCEZANTV.js.map → chunk-RXUEYD2S.js.map} +0 -0
  1088. /package/dist/{chunk-LNZM6SUE.js.map → chunk-SJOWZKNB.js.map} +0 -0
  1089. /package/dist/{chunk-RMB2MIOJ.js.map → chunk-TE3N5AGN.js.map} +0 -0
  1090. /package/dist/{chunk-LL6T64OU.js.map → chunk-TPQH4UXJ.js.map} +0 -0
  1091. /package/dist/{chunk-FJIUMOVD.js.map → chunk-TQUNJFGF.js.map} +0 -0
  1092. /package/dist/{chunk-IZNTYRKB.js.map → chunk-TYSN5VVJ.js.map} +0 -0
  1093. /package/dist/{chunk-K2DBAN3C.js.map → chunk-UKMG6YWX.js.map} +0 -0
  1094. /package/dist/{chunk-FK6GBCQ4.js.map → chunk-WDAWTHQK.js.map} +0 -0
  1095. /package/dist/{chunk-M6CI2HYA.js.map → chunk-X3PCCHP2.js.map} +0 -0
  1096. /package/dist/{chunk-CJABW4F7.js.map → chunk-YJAQWTS6.js.map} +0 -0
  1097. /package/dist/{chunk-3SF5KBIO.js.map → chunk-YNOJN5Z6.js.map} +0 -0
  1098. /package/dist/{chunk-LT5JXJ4S.js.map → chunk-YTV5VW7S.js.map} +0 -0
  1099. /package/dist/{chunk-NCHPAGHG.js.map → chunk-ZO4GMUO3.js.map} +0 -0
  1100. /package/dist/{chunk-6QNEVETC.js.map → chunk-ZSRLDTDC.js.map} +0 -0
  1101. /package/dist/{claim-SLU3TMEJ.js.map → claim-JBNO7M6J.js.map} +0 -0
  1102. /package/dist/{client-2ABVGUQB.js.map → client-CPAPILIF.js.map} +0 -0
  1103. /package/dist/{code-GHG7DEPV.js.map → code-GHOVETWX.js.map} +0 -0
  1104. /package/dist/{companies-2XCKZ46Z.js.map → companies-47T2PCRZ.js.map} +0 -0
  1105. /package/dist/{complete-3JAPGUF7.js.map → complete-T3PKN4B7.js.map} +0 -0
  1106. /package/dist/{config-L26WNV2G.js.map → config-AFNXR5FA.js.map} +0 -0
  1107. /package/dist/{connect-QUJB2B7O.js.map → connect-T7R43GIH.js.map} +0 -0
  1108. /package/dist/{content-2SL3VHIK.js.map → content-M3U2SCFJ.js.map} +0 -0
  1109. /package/dist/{conversation-HIRIQPQY.js.map → conversation-BG7WEMXQ.js.map} +0 -0
  1110. /package/dist/{conversion-report-YHHSCA2E.js.map → conversion-report-URDTPXQ7.js.map} +0 -0
  1111. /package/dist/{conversion-upload-command-CTVEOGET.js.map → conversion-upload-command-BWF6MAOK.js.map} +0 -0
  1112. /package/dist/{conversion-writes-MJROE4M7.js.map → conversion-writes-7MGIFJ3H.js.map} +0 -0
  1113. /package/dist/{conversions-H6GFO3O7.js.map → conversions-QY6COYPP.js.map} +0 -0
  1114. /package/dist/{conversions-VBOTADOT.js.map → conversions-UTXG5YEO.js.map} +0 -0
  1115. /package/dist/{countries-D5JPHJ4F.js.map → countries-MUZPFSYZ.js.map} +0 -0
  1116. /package/dist/{create-TIL4R5M4.js.map → create-6QASIASQ.js.map} +0 -0
  1117. /package/dist/{create-KD4ZMJYX.js.map → create-FIHEJRAF.js.map} +0 -0
  1118. /package/dist/{create-7SL6BAET.js.map → create-JXZBMXUS.js.map} +0 -0
  1119. /package/dist/{create-WKIZSOXV.js.map → create-LN23WUB5.js.map} +0 -0
  1120. /package/dist/{creatives-5C4PRGFT.js.map → creatives-6FG6VAB4.js.map} +0 -0
  1121. /package/dist/{creatives-YN2MEJXJ.js.map → creatives-UD6TFATS.js.map} +0 -0
  1122. /package/dist/{credentials-JI4GR4OR.js.map → credentials-ECPD2A7X.js.map} +0 -0
  1123. /package/dist/{crm-QXZKSL4T.js.map → crm-4EWUWZNZ.js.map} +0 -0
  1124. /package/dist/{crm-S2GNKTHX.js.map → crm-ASWKMKF3.js.map} +0 -0
  1125. /package/dist/{crop-KR3LOQBX.js.map → crop-MIVSA2YF.js.map} +0 -0
  1126. /package/dist/{currency-7YV4AT54.js.map → currency-5LU3D62R.js.map} +0 -0
  1127. /package/dist/{custom-conversions-YCOWWTQ7.js.map → custom-conversions-3QGJQRYS.js.map} +0 -0
  1128. /package/dist/{customers-XTK7G7G5.js.map → customers-EEBZXQ4J.js.map} +0 -0
  1129. /package/dist/{decide-DZG2JUMG.js.map → decide-ZODJU7DY.js.map} +0 -0
  1130. /package/dist/{delete-OHTGL7ZJ.js.map → delete-CTH3TGNM.js.map} +0 -0
  1131. /package/dist/{delete-KLSRJZQG.js.map → delete-D6GNTBYI.js.map} +0 -0
  1132. /package/dist/{delete-FIDIBB2H.js.map → delete-IWIDUJNS.js.map} +0 -0
  1133. /package/dist/{delete-YKR5Y7EQ.js.map → delete-TLVYBVRP.js.map} +0 -0
  1134. /package/dist/{delete-LXOTLB3P.js.map → delete-XPHIQY5Z.js.map} +0 -0
  1135. /package/dist/{delete-TSI264EH.js.map → delete-XZEPLAKT.js.map} +0 -0
  1136. /package/dist/{demographics-EFZ4KNRS.js.map → demographics-L3TJJAFF.js.map} +0 -0
  1137. /package/dist/{describe-NAINLKWG.js.map → describe-5PM5OSYK.js.map} +0 -0
  1138. /package/dist/{describe-I7VNACXY.js.map → describe-KQLRHGFX.js.map} +0 -0
  1139. /package/dist/{dimensions-K6MDXS4B.js.map → dimensions-6H24D7CM.js.map} +0 -0
  1140. /package/dist/{discard-DCMPT757.js.map → discard-74I3M2DF.js.map} +0 -0
  1141. /package/dist/{discover-E7SVCXZ2.js.map → discover-6LGIHWVP.js.map} +0 -0
  1142. /package/dist/{discover-NRXKO6CV.js.map → discover-HBQO4RSF.js.map} +0 -0
  1143. /package/dist/{domain-WDE36COE.js.map → domain-E5DTPAZI.js.map} +0 -0
  1144. /package/dist/{download-5FCLTMLA.js.map → download-ED52W77T.js.map} +0 -0
  1145. /package/dist/{draft-BS33PXQV.js.map → draft-3XYF2L4K.js.map} +0 -0
  1146. /package/dist/{draft-NJNAGVVV.js.map → draft-5IEMZ4W3.js.map} +0 -0
  1147. /package/dist/{draft-YGDIKVJP.js.map → draft-6UVGEERY.js.map} +0 -0
  1148. /package/dist/{draft-QSO3DQG6.js.map → draft-FDBE36CP.js.map} +0 -0
  1149. /package/dist/{draft-2SEMUJFJ.js.map → draft-PE4DN44Y.js.map} +0 -0
  1150. /package/dist/{draft-3NGYZTH6.js.map → draft-QBR22TG2.js.map} +0 -0
  1151. /package/dist/{draft-AUF73NZE.js.map → draft-VZYSJVF5.js.map} +0 -0
  1152. /package/dist/{draft-UNCGJCUN.js.map → draft-YWTLO2ON.js.map} +0 -0
  1153. /package/dist/{env-FKVPPL35.js.map → env-GS2TUVCM.js.map} +0 -0
  1154. /package/dist/{experiment-JF2QTPRV.js.map → experiment-XDJHSOBC.js.map} +0 -0
  1155. /package/dist/{export-3ROTRKFE.js.map → export-GV5CF5UM.js.map} +0 -0
  1156. /package/dist/{extract-VXGXR5RD.js.map → extract-4OXK7L7R.js.map} +0 -0
  1157. /package/dist/{facets-MCBQT67Y.js.map → facets-XPB2ELM2.js.map} +0 -0
  1158. /package/dist/{favorites-DI2EY34L.js.map → favorites-VKPXGTK6.js.map} +0 -0
  1159. /package/dist/{feed-EH4FENF4.js.map → feed-B2YLZQNU.js.map} +0 -0
  1160. /package/dist/{feedback-O4XFHZHO.js.map → feedback-HT2M63QW.js.map} +0 -0
  1161. /package/dist/{fetch-V3BFDMZF.js.map → fetch-2O7EUCCZ.js.map} +0 -0
  1162. /package/dist/{fetch-5B762QDP.js.map → fetch-GMNE6KOJ.js.map} +0 -0
  1163. /package/dist/{find-T7XJV535.js.map → find-LZZNPFJH.js.map} +0 -0
  1164. /package/dist/{fit-JRHXPGLA.js.map → fit-S5ZGPNE3.js.map} +0 -0
  1165. /package/dist/{flows-AP65BVPP.js.map → flows-5SXT5F22.js.map} +0 -0
  1166. /package/dist/{follow-PIEAXZE7.js.map → follow-UNIHLZKA.js.map} +0 -0
  1167. /package/dist/{follow-competitors-7N2TPSLA.js.map → follow-competitors-CQL2B55H.js.map} +0 -0
  1168. /package/dist/{following-74CI7UC6.js.map → following-GMXZIEDZ.js.map} +0 -0
  1169. /package/dist/{fonts-OENIDAZ7.js.map → fonts-GPJQLNQL.js.map} +0 -0
  1170. /package/dist/{forecast-Y277VDX6.js.map → forecast-6AHSHRDJ.js.map} +0 -0
  1171. /package/dist/{forecast-D547E44U.js.map → forecast-V6BCMR4Y.js.map} +0 -0
  1172. /package/dist/{funding-FTWMCGZ7.js.map → funding-WPREDQVA.js.map} +0 -0
  1173. /package/dist/{funnel-5JTVRADR.js.map → funnel-QDYX3UH5.js.map} +0 -0
  1174. /package/dist/{ga4-T4ZHANT2.js.map → ga4-6AUOX2UW.js.map} +0 -0
  1175. /package/dist/{generate-IOXW6L2V.js.map → generate-LWSAKRIT.js.map} +0 -0
  1176. /package/dist/{get-ABPBK4P3.js.map → get-5OEDAT2Q.js.map} +0 -0
  1177. /package/dist/{get-4NVK3GGF.js.map → get-7WEE5V7M.js.map} +0 -0
  1178. /package/dist/{get-V4BZ4NTK.js.map → get-DXGJSEZZ.js.map} +0 -0
  1179. /package/dist/{get-2IKPCXEM.js.map → get-GQWOLALT.js.map} +0 -0
  1180. /package/dist/{get-NE3EEHN6.js.map → get-W7F4FOAR.js.map} +0 -0
  1181. /package/dist/{get-WZVNWFQA.js.map → get-WY6JXFP6.js.map} +0 -0
  1182. /package/dist/{get-6NSZTWA5.js.map → get-X6DSFXN6.js.map} +0 -0
  1183. /package/dist/{gif-O3FLM3CF.js.map → gif-JXWSR2TC.js.map} +0 -0
  1184. /package/dist/{google-VV4DFC4D.js.map → google-44QA3M4N.js.map} +0 -0
  1185. /package/dist/{google-Z5UAFS3C.js.map → google-6QFL6GV3.js.map} +0 -0
  1186. /package/dist/{google-ads-TNQPMZ4S.js.map → google-ads-ZG3BDUEG.js.map} +0 -0
  1187. /package/dist/{group-HJMQ5H3L.js.map → group-7ADT2GWA.js.map} +0 -0
  1188. /package/dist/{group-34IDEULM.js.map → group-VD3UIBKE.js.map} +0 -0
  1189. /package/dist/{gsc-LDZKY5FW.js.map → gsc-WHMPFTYA.js.map} +0 -0
  1190. /package/dist/{history-FSVEXQPF.js.map → history-33JKOKAV.js.map} +0 -0
  1191. /package/dist/{history-5QUGDDCG.js.map → history-M3IKDCEO.js.map} +0 -0
  1192. /package/dist/{hubspot-5ZSIBOGH.js.map → hubspot-B4IUIOYX.js.map} +0 -0
  1193. /package/dist/{icon-37BBWKJO.js.map → icon-R2K27DKI.js.map} +0 -0
  1194. /package/dist/{ideas-QHHUO5HO.js.map → ideas-HHTLPC6Y.js.map} +0 -0
  1195. /package/dist/{images-LIE3WZWC.js.map → images-PV6TZQLL.js.map} +0 -0
  1196. /package/dist/{improve-6J2UJ4JZ.js.map → improve-TVFAR27Q.js.map} +0 -0
  1197. /package/dist/{ingest-UT2H2KZF.js.map → ingest-25ZX36RL.js.map} +0 -0
  1198. /package/dist/{ingest-22PPDMUN.js.map → ingest-MFIT3L23.js.map} +0 -0
  1199. /package/dist/{insights-5IBNZFHT.js.map → insights-CE3GICP7.js.map} +0 -0
  1200. /package/dist/{insights-5RPSKKQJ.js.map → insights-TGAQLNHO.js.map} +0 -0
  1201. /package/dist/{inspect-677LAYRX.js.map → inspect-2IASA5YV.js.map} +0 -0
  1202. /package/dist/{inspiration-LYCDPQEY.js.map → inspiration-O56SOIQP.js.map} +0 -0
  1203. /package/dist/{intent-EPQQ7ZFJ.js.map → intent-JOW24MTF.js.map} +0 -0
  1204. /package/dist/{job-ZEI4FC5Y.js.map → job-QUO6KULI.js.map} +0 -0
  1205. /package/dist/{job-create-QVTI3TP6.js.map → job-create-JTOG5M3Q.js.map} +0 -0
  1206. /package/dist/{job-status-GVL7X6EY.js.map → job-status-3B4X5IPG.js.map} +0 -0
  1207. /package/dist/{keep-GD5LZFGG.js.map → keep-5TVGX7EG.js.map} +0 -0
  1208. /package/dist/{keyword-gap-GDYE6HFV.js.map → keyword-gap-SHLXRIHO.js.map} +0 -0
  1209. /package/dist/{keyword-metrics-IEEMFOE5.js.map → keyword-metrics-NYH6DXKJ.js.map} +0 -0
  1210. /package/dist/{keywords-for-site-Q23TNDPZ.js.map → keywords-for-site-JTK64W4I.js.map} +0 -0
  1211. /package/dist/{landing-CV23X7CN.js.map → landing-4V7HMYCZ.js.map} +0 -0
  1212. /package/dist/{landings-4YBHALDA.js.map → landings-LZZO4VVW.js.map} +0 -0
  1213. /package/dist/{languages-KRXEHLM4.js.map → languages-TINK472E.js.map} +0 -0
  1214. /package/dist/{languages-6WNZHQ4U.js.map → languages-ZIGJHY2T.js.map} +0 -0
  1215. /package/dist/{launches-FOJQPCD2.js.map → launches-C5XXNF7C.js.map} +0 -0
  1216. /package/dist/{layerize-M6ZRXR7M.js.map → layerize-YVCA4JO7.js.map} +0 -0
  1217. /package/dist/{leads-ANHNQVHR.js.map → leads-2WTL7F24.js.map} +0 -0
  1218. /package/dist/{leads-NV57FPKX.js.map → leads-QUO3YNHO.js.map} +0 -0
  1219. /package/dist/{library-HC5US7CE.js.map → library-EEHRR7WX.js.map} +0 -0
  1220. /package/dist/{lighthouse-DXZIQLLK.js.map → lighthouse-QLFI7PSQ.js.map} +0 -0
  1221. /package/dist/{line-item-writes-WJRNPIUP.js.map → line-item-writes-SYSYGV3L.js.map} +0 -0
  1222. /package/dist/{line-items-V7TBD3ID.js.map → line-items-H3M6T7P2.js.map} +0 -0
  1223. /package/dist/{link-VL5HPDR4.js.map → link-EHSSSV6K.js.map} +0 -0
  1224. /package/dist/{linkedin-YXAXITWY.js.map → linkedin-BGZIR43P.js.map} +0 -0
  1225. /package/dist/{list-RGMBFJHB.js.map → list-2IAOPMQC.js.map} +0 -0
  1226. /package/dist/{list-IZNAL5LS.js.map → list-BGT2BEWD.js.map} +0 -0
  1227. /package/dist/{list-HB4HYMCC.js.map → list-G2VYAKYF.js.map} +0 -0
  1228. /package/dist/{list-LC7BZRD4.js.map → list-IFXQWBBE.js.map} +0 -0
  1229. /package/dist/{list-VXNYIVS5.js.map → list-LK3CVZ3B.js.map} +0 -0
  1230. /package/dist/{list-KEWAXGUG.js.map → list-X2TMGY7C.js.map} +0 -0
  1231. /package/dist/{list-MEGAZDWZ.js.map → list-X3SEZDKE.js.map} +0 -0
  1232. /package/dist/{list-2M3M3ETE.js.map → list-ZFS7XBD7.js.map} +0 -0
  1233. /package/dist/{locations-BPH3DMDQ.js.map → locations-JC2H5JMY.js.map} +0 -0
  1234. /package/dist/{locations-VAIAC2TU.js.map → locations-M4L7FUOB.js.map} +0 -0
  1235. /package/dist/{log-ZBKKTCH4.js.map → log-4EINR63D.js.map} +0 -0
  1236. /package/dist/{logo-SOCGJLY5.js.map → logo-7GDRTSLI.js.map} +0 -0
  1237. /package/dist/{lookup-MQBDRZZT.js.map → lookup-SJXNPUXG.js.map} +0 -0
  1238. /package/dist/{map-3LR4J2TZ.js.map → map-EFEKUPNJ.js.map} +0 -0
  1239. /package/dist/{mcp-UNMB4DFG.js.map → mcp-RQJAEJCJ.js.map} +0 -0
  1240. /package/dist/{media-QCWYLIO2.js.map → media-FYGHJAEG.js.map} +0 -0
  1241. /package/dist/{media-OYAN23YG.js.map → media-YYYCKXMZ.js.map} +0 -0
  1242. /package/dist/{media-sources-BQETKYFK.js.map → media-sources-ZLBIC4RM.js.map} +0 -0
  1243. /package/dist/{members-NPDLDJS5.js.map → members-SXATNT7V.js.map} +0 -0
  1244. /package/dist/{meta-B5XDM6F6.js.map → meta-OGB3NB2W.js.map} +0 -0
  1245. /package/dist/{metrics-EWFYLBPC.js.map → metrics-52ZARN6M.js.map} +0 -0
  1246. /package/dist/{models-4K2B7C4S.js.map → models-LSEMO4XH.js.map} +0 -0
  1247. /package/dist/{normalize-2OUEDA6D.js.map → normalize-3HI26S34.js.map} +0 -0
  1248. /package/dist/{normalize-MMXC57LC.js.map → normalize-SOFYZQSJ.js.map} +0 -0
  1249. /package/dist/{options-EUSKJAOQ.js.map → options-GKSCCFM7.js.map} +0 -0
  1250. /package/dist/{output-ZKNCKP7T.js.map → output-YJ4YBUU4.js.map} +0 -0
  1251. /package/dist/{page-EMJESGQZ.js.map → page-ZGCK6MOQ.js.map} +0 -0
  1252. /package/dist/{pages-OMKAYKCF.js.map → pages-QMP3W2R3.js.map} +0 -0
  1253. /package/dist/{performance-RRL3KUNU.js.map → performance-BQSWGNFO.js.map} +0 -0
  1254. /package/dist/{pinterest-I6JO7LXL.js.map → pinterest-LCVUB2ZL.js.map} +0 -0
  1255. /package/dist/{pixels-JSSNVLXR.js.map → pixels-UQGAPBLG.js.map} +0 -0
  1256. /package/dist/{pixels-5JBTFWCO.js.map → pixels-YM2DX7EN.js.map} +0 -0
  1257. /package/dist/{plan-KNUKCIS7.js.map → plan-Z5TZRRCH.js.map} +0 -0
  1258. /package/dist/{preview-TBINZJ2C.js.map → preview-DZQUUQGD.js.map} +0 -0
  1259. /package/dist/{profile-UV3FTEUC.js.map → profile-SXX36XVS.js.map} +0 -0
  1260. /package/dist/{promoted-tweet-writes-NRLYLKDH.js.map → promoted-tweet-writes-VUNJIUA3.js.map} +0 -0
  1261. /package/dist/{promoted-tweets-XNPXTPQX.js.map → promoted-tweets-55X4H7NG.js.map} +0 -0
  1262. /package/dist/{properties-CTFQ7IK3.js.map → properties-CSW67FJG.js.map} +0 -0
  1263. /package/dist/{publish-VTERMZDW.js.map → publish-U73OR33K.js.map} +0 -0
  1264. /package/dist/{query-JMVLWKVY.js.map → query-UQQNESTT.js.map} +0 -0
  1265. /package/dist/{query-U242DEWX.js.map → query-V4I3VCJ7.js.map} +0 -0
  1266. /package/dist/{query-T5IBVQ3B.js.map → query-XPCC7OUP.js.map} +0 -0
  1267. /package/dist/{questionnaire-APZ6FMPE.js.map → questionnaire-UQNRYZK7.js.map} +0 -0
  1268. /package/dist/{read-W5ZK5G7Q.js.map → read-RXAOLPG5.js.map} +0 -0
  1269. /package/dist/{reddit-C5CAD24M.js.map → reddit-C2B7NT7X.js.map} +0 -0
  1270. /package/dist/{refresh-7LFNDRYA.js.map → refresh-JN4HKE4H.js.map} +0 -0
  1271. /package/dist/{release-ZEHZ7EQX.js.map → release-HSAOBN5K.js.map} +0 -0
  1272. /package/dist/{relevant-pages-ZGR5VJNI.js.map → relevant-pages-XBWFEHHE.js.map} +0 -0
  1273. /package/dist/{remove-FB3NBNBG.js.map → remove-G5UXVQ2W.js.map} +0 -0
  1274. /package/dist/{remove-RFOFNOYU.js.map → remove-Q4TL5ZFS.js.map} +0 -0
  1275. /package/dist/{reopen-Z6ODLCPE.js.map → reopen-D26VSRRL.js.map} +0 -0
  1276. /package/dist/{research-64G5C2ZQ.js.map → research-CRYX2CAR.js.map} +0 -0
  1277. /package/dist/{research-VQ4DK4BX.js.map → research-XRVD2GSG.js.map} +0 -0
  1278. /package/dist/{reset-F2JQR3OZ.js.map → reset-2VVN4CY7.js.map} +0 -0
  1279. /package/dist/{reset-YRQ5DGNF.js.map → reset-FWDPBHYO.js.map} +0 -0
  1280. /package/dist/{resolve-QXKGYHGJ.js.map → resolve-D4PCGIWO.js.map} +0 -0
  1281. /package/dist/{retry-SANO53UL.js.map → retry-AHZFHMTH.js.map} +0 -0
  1282. /package/dist/{retry-YZUECDFN.js.map → retry-FV6ASVO5.js.map} +0 -0
  1283. /package/dist/{retry-failed-5XDCVPQA.js.map → retry-failed-AENQRGML.js.map} +0 -0
  1284. /package/dist/{run-VRKP6QXJ.js.map → run-AGSHZQND.js.map} +0 -0
  1285. /package/dist/{run-3VEPILYM.js.map → run-IRJWKZ3K.js.map} +0 -0
  1286. /package/dist/{schedule-4N6JTJJT.js.map → schedule-DTKBBIEH.js.map} +0 -0
  1287. /package/dist/{schedule-RLNIWFNT.js.map → schedule-ESHQ4II7.js.map} +0 -0
  1288. /package/dist/{scheduled-agents-6XAY6YOG.js.map → scheduled-agents-AREYFW23.js.map} +0 -0
  1289. /package/dist/{schema-RNVEYR2U.js.map → schema-OBF4T2QN.js.map} +0 -0
  1290. /package/dist/{schema-ANV3AC5M.js.map → schema-SWG2WKYX.js.map} +0 -0
  1291. /package/dist/{scrape-VK7RZO4M.js.map → scrape-AGGDUPPD.js.map} +0 -0
  1292. /package/dist/{screenshot-PWUROUXU.js.map → screenshot-6GGCQCIV.js.map} +0 -0
  1293. /package/dist/{search-3ZW3RRPX.js.map → search-FRSFGJLZ.js.map} +0 -0
  1294. /package/dist/{search-BMIFGJLQ.js.map → search-I64WW2QC.js.map} +0 -0
  1295. /package/dist/{search-LRY5SYDM.js.map → search-L2KHX5DO.js.map} +0 -0
  1296. /package/dist/{search-M23XX3N5.js.map → search-MBDEQ6EE.js.map} +0 -0
  1297. /package/dist/{search-J2VQNY4A.js.map → search-UCDN4TOT.js.map} +0 -0
  1298. /package/dist/{search-copy-AVQESTYJ.js.map → search-copy-HX3FYZGT.js.map} +0 -0
  1299. /package/dist/{seeds-C6JI3WTG.js.map → seeds-VFEFE4AK.js.map} +0 -0
  1300. /package/dist/{sends-DYIE7W5U.js.map → sends-WDSOXBSS.js.map} +0 -0
  1301. /package/dist/{sequences-CQVKVRC4.js.map → sequences-NMJ55HS5.js.map} +0 -0
  1302. /package/dist/{setup-links-5BBLPJHT.js.map → setup-links-NAAUQD7O.js.map} +0 -0
  1303. /package/dist/{shared-2SQRS476.js.map → shared-3GVQQQNL.js.map} +0 -0
  1304. /package/dist/{site-MK3C44AE.js.map → site-VTJU5CRE.js.map} +0 -0
  1305. /package/dist/{sitemaps-XFLHKP2D.js.map → sitemaps-KS57YDGB.js.map} +0 -0
  1306. /package/dist/{sites-5JNZWY3A.js.map → sites-PUEEVW7H.js.map} +0 -0
  1307. /package/dist/{skills-43P4WK6Y.js.map → skills-N6NRI2LC.js.map} +0 -0
  1308. /package/dist/{sources-E45FLI5L.js.map → sources-CMUU4FER.js.map} +0 -0
  1309. /package/dist/{sources-KS7IVG62.js.map → sources-YUMNEFK5.js.map} +0 -0
  1310. /package/dist/{stats-LLTHL5VR.js.map → stats-SY6GRHKB.js.map} +0 -0
  1311. /package/dist/{status-MGEC456X.js.map → status-PVW64CLX.js.map} +0 -0
  1312. /package/dist/{sticker-B5DJ56YG.js.map → sticker-YS6W5TSZ.js.map} +0 -0
  1313. /package/dist/{stock-WXAFJFAC.js.map → stock-DWL5E6K4.js.map} +0 -0
  1314. /package/dist/{studio-2WRZGW5K.js.map → studio-SXBK2IJJ.js.map} +0 -0
  1315. /package/dist/{sync-GCHWLGQG.js.map → sync-FOLYGQDI.js.map} +0 -0
  1316. /package/dist/{sync-VDPGFUZS.js.map → sync-NORMNZEE.js.map} +0 -0
  1317. /package/dist/{sync-JLECDZYS.js.map → sync-XHJDCWWP.js.map} +0 -0
  1318. /package/dist/{sync-definition-VOLVALMF.js.map → sync-definition-DTWEW6ZC.js.map} +0 -0
  1319. /package/dist/{tag-manager-HG76EBNX.js.map → tag-manager-ARFZU46G.js.map} +0 -0
  1320. /package/dist/{tags-X2TXKPPZ.js.map → tags-77JUO75W.js.map} +0 -0
  1321. /package/dist/{tags-ARHISNSY.js.map → tags-DOJUSHJB.js.map} +0 -0
  1322. /package/dist/{tags-5LN7N55H.js.map → tags-IESRRMGW.js.map} +0 -0
  1323. /package/dist/{tags-DGBDJCH4.js.map → tags-MRTUBMRD.js.map} +0 -0
  1324. /package/dist/{tags-GUAZQFF6.js.map → tags-SP6GW4R7.js.map} +0 -0
  1325. /package/dist/{targeting-constants-GR7RUKE3.js.map → targeting-constants-DVGRIRKD.js.map} +0 -0
  1326. /package/dist/{targeting-criteria-LUS4MHBB.js.map → targeting-criteria-SOK3HUE2.js.map} +0 -0
  1327. /package/dist/{targets-B267WA3R.js.map → targets-V2HNKVUL.js.map} +0 -0
  1328. /package/dist/{testimonials-R2AAWIZO.js.map → testimonials-PA2FUV4H.js.map} +0 -0
  1329. /package/dist/{themes-5CH6AYPZ.js.map → themes-IDB7YPHW.js.map} +0 -0
  1330. /package/dist/{top-companies-PTCHBWQM.js.map → top-companies-XDP4SZN7.js.map} +0 -0
  1331. /package/dist/{triggers-OJX6V4IR.js.map → triggers-QDXCA5P4.js.map} +0 -0
  1332. /package/dist/{tweets-ZWC7YOQ4.js.map → tweets-AISMWXM3.js.map} +0 -0
  1333. /package/dist/{unfollow-LBMJXF4E.js.map → unfollow-PHLMILG2.js.map} +0 -0
  1334. /package/dist/{unlink-RBGMHY65.js.map → unlink-GDZV5GVL.js.map} +0 -0
  1335. /package/dist/{unstage-5AZAD2KF.js.map → unstage-WCC2TI5Z.js.map} +0 -0
  1336. /package/dist/{unstage-HL7IA2ZX.js.map → unstage-WDJXHSAV.js.map} +0 -0
  1337. /package/dist/{update-34PHEAKR.js.map → update-KBF35KYV.js.map} +0 -0
  1338. /package/dist/{update-RJYVSNAK.js.map → update-MRG5MPHR.js.map} +0 -0
  1339. /package/dist/{update-RA3NLNCP.js.map → update-XNNQGZBO.js.map} +0 -0
  1340. /package/dist/{update-NBP7ULLA.js.map → update-ZGDQJPDL.js.map} +0 -0
  1341. /package/dist/{upload-BNN7FAYI.js.map → upload-ID35OCCY.js.map} +0 -0
  1342. /package/dist/{upload-MPMP3JRS.js.map → upload-R7YJORED.js.map} +0 -0
  1343. /package/dist/{upscale-TXJFZLUU.js.map → upscale-XPGVJWW2.js.map} +0 -0
  1344. /package/dist/{url-options-QCM32IFK.js.map → url-options-6X7M2J7D.js.map} +0 -0
  1345. /package/dist/{url-params-SLEXR6SY.js.map → url-params-WRLCJRJQ.js.map} +0 -0
  1346. /package/dist/{use-SUY57ZJA.js.map → use-VCL3PRCB.js.map} +0 -0
  1347. /package/dist/{variant-TE6CEHZW.js.map → variant-2NADVT6Q.js.map} +0 -0
  1348. /package/dist/{videos-MWA4765B.js.map → videos-M6VK66NI.js.map} +0 -0
  1349. /package/dist/{view-EQZB7Z6N.js.map → view-Q5B57K42.js.map} +0 -0
  1350. /package/dist/{viewer-check-HAQBPBPI.js.map → viewer-check-3T2EZOSH.js.map} +0 -0
  1351. /package/dist/{web-GSE64LFI.js.map → web-GOD7BF7X.js.map} +0 -0
  1352. /package/dist/{winners-UPM6DFRB.js.map → winners-PK6EMR6B.js.map} +0 -0
  1353. /package/dist/{winning-ads-K6QJT2BF.js.map → winning-ads-F765TFLS.js.map} +0 -0
  1354. /package/dist/{write-commands-MOZHC2RJ.js.map → write-commands-4KWMNH6A.js.map} +0 -0
  1355. /package/dist/{write-commands-BCU5YATY.js.map → write-commands-7ECRGXLK.js.map} +0 -0
  1356. /package/dist/{write-commands-5HSNHURZ.js.map → write-commands-GL2PHXSU.js.map} +0 -0
  1357. /package/dist/{write-commands-YNI6KS2B.js.map → write-commands-NMV65XXB.js.map} +0 -0
  1358. /package/dist/{x-UNF2SAMI.js.map → x-MDENBZ3X.js.map} +0 -0
@@ -0,0 +1,518 @@
1
+ import {
2
+ readCreativeContext
3
+ } from "./chunk-7XH4UQWS.js";
4
+ import {
5
+ holdUnbilledSpend
6
+ } from "./chunk-6FHP2HIK.js";
7
+ import {
8
+ findWorkspaceRoot
9
+ } from "./chunk-DS2ZRTAL.js";
10
+ import {
11
+ bytesOf
12
+ } from "./chunk-XQ4KKF5E.js";
13
+ import {
14
+ CONCEPT_CARRY_LEVELS
15
+ } from "./chunk-5IGQ6IQO.js";
16
+ import {
17
+ AD_DESCRIBE_MODEL
18
+ } from "./chunk-QK5PEHFX.js";
19
+ import {
20
+ askAboutImages,
21
+ rulesBlock
22
+ } from "./chunk-QEW64BBR.js";
23
+ import {
24
+ apiGet
25
+ } from "./chunk-OSWCEDFE.js";
26
+ import {
27
+ registerSchema,
28
+ writeJson
29
+ } from "./chunk-4WYEGE4N.js";
30
+
31
+ // src/commands/winning-ads/fit.ts
32
+ import { createHash } from "crypto";
33
+ import { mkdir, readdir, readFile, writeFile } from "fs/promises";
34
+ import path from "path";
35
+ import { defineCommand } from "citty";
36
+ import sharp from "sharp";
37
+ import { z } from "zod";
38
+
39
+ // src/commands/canvas/library-reference.ts
40
+ var LIBRARY_PLATFORMS = ["meta", "linkedin", "tiktok", "google"];
41
+ function resolveSourcePlatform(flag) {
42
+ const value = flag?.trim();
43
+ if (!value) return { ok: true, platform: "meta" };
44
+ if (LIBRARY_PLATFORMS.includes(value)) return { ok: true, platform: value };
45
+ return {
46
+ ok: false,
47
+ message: `--source-platform "${value}" is not a library platform. Use one of: ${LIBRARY_PLATFORMS.join(", ")}.`
48
+ };
49
+ }
50
+ var PICK_A_DESIGN = "To build a static on a proven design, pick a Google display ad or a static from another platform (`baker winning-ads search --format static`); a YouTube ad is a video reference, read with `baker winning-ads content`.";
51
+ function notADesignReference(platform, adId, ad) {
52
+ if (platform !== "google") return null;
53
+ if (ad.format === "text" || ad.google_ad_type === "search") {
54
+ return {
55
+ code: "NOT_A_DESIGN_REFERENCE",
56
+ message: `Google ad ${adId} is a search text ad: a reference for wording, not a design.`,
57
+ fix: `Read it with \`baker winning-ads content ${adId} --platform google\` and write our own copy. ${PICK_A_DESIGN}`
58
+ };
59
+ }
60
+ const assembled = ad.google_ad_type === "shopping" ? "a Shopping product listing, which Google builds from a product feed" : ad.google_ad_type === "app" ? "an app-install ad, which Google builds from the app's store page" : null;
61
+ if (assembled) {
62
+ return {
63
+ code: "NOT_A_DESIGN_REFERENCE",
64
+ message: `Google ad ${adId} is ${assembled}: there is no design of the advertiser's to build on.`,
65
+ fix: PICK_A_DESIGN
66
+ };
67
+ }
68
+ return null;
69
+ }
70
+ async function fetchLibraryReference(adId, platform) {
71
+ const data = await apiGet("/api/ad-library/ad-content", { id: adId, platform });
72
+ if (!data?.ad) throw new Error(`the library returned no ad for ${adId} on ${platform}`);
73
+ return data.ad;
74
+ }
75
+ function filled(entries) {
76
+ return Object.fromEntries(
77
+ Object.entries(entries).filter(([, v]) => v !== null && v !== void 0 && !(Array.isArray(v) && v.length === 0))
78
+ );
79
+ }
80
+ function libraryReferenceBlock(ad, ids) {
81
+ const textBlocks = ad.on_screen_text.flatMap(
82
+ (o) => o.text ? [{ text: o.text, ...o.role ? { role: o.role } : {}, ...o.position ? { position: o.position } : {} }] : []
83
+ );
84
+ const advertiser = ad.advertiser ?? void 0;
85
+ const advertiserId = ids.advertiserId ?? ad.advertiser_id ?? void 0;
86
+ return {
87
+ ad_id: ids.adId,
88
+ platform: ids.platform,
89
+ ...advertiser ? { advertiser } : {},
90
+ ...advertiserId ? { advertiser_id: advertiserId } : {},
91
+ ...ad.layout.format_pattern ? { format_pattern: ad.layout.format_pattern } : {},
92
+ layout: filled({
93
+ composition: ad.layout.composition,
94
+ focal_subject: ad.layout.focal_subject,
95
+ aspect_ratio: ad.layout.aspect_ratio,
96
+ background: ad.layout.background,
97
+ palette_mood: ad.layout.palette_mood,
98
+ colors: ad.layout.colors,
99
+ production: ad.layout.production,
100
+ aesthetic: ad.layout.aesthetic,
101
+ cta_in_image: ad.layout.cta_in_image,
102
+ markers: ad.layout.markers
103
+ }),
104
+ message: filled({
105
+ mechanism: ad.message.mechanism,
106
+ awareness: ad.message.awareness_stage,
107
+ sophistication: ad.message.sophistication,
108
+ angle: ad.angle,
109
+ hook_archetype: ad.hook_archetype,
110
+ pain_points: ad.message.pain_points,
111
+ desires: ad.message.desires,
112
+ value_props: ad.message.value_props,
113
+ objections_handled: ad.message.objections_handled,
114
+ proof: ad.message.proof,
115
+ risk_reversal: ad.message.risk_reversal
116
+ }),
117
+ offer: filled({
118
+ offer_type: ad.offer.offer_type,
119
+ pricing_model: ad.offer.pricing_model,
120
+ entry_price: ad.offer.entry_price,
121
+ no_credit_card: ad.offer.no_credit_card,
122
+ guarantee: ad.offer.guarantee,
123
+ guarantee_days: ad.offer.guarantee_days,
124
+ urgency: ad.offer.urgency,
125
+ bonus: ad.offer.bonus
126
+ }),
127
+ text_blocks: textBlocks,
128
+ copy: filled({ primary_text: ad.primary_text, headline: ad.headline, cta: ad.cta })
129
+ };
130
+ }
131
+ function referenceDescribeContext(reference, agentContext) {
132
+ const own = agentContext?.trim() || void 0;
133
+ if (!reference) return own;
134
+ const facts = [];
135
+ if (reference.advertiser) facts.push(`advertiser: ${reference.advertiser}`);
136
+ if (reference.format_pattern) facts.push(`container (format_pattern): ${reference.format_pattern}`);
137
+ if (typeof reference.layout.composition === "string") facts.push(`composition: ${reference.layout.composition}`);
138
+ if (typeof reference.message.mechanism === "string") facts.push(`persuasion mechanism: ${reference.message.mechanism}`);
139
+ if (typeof reference.message.awareness === "string") facts.push(`awareness stage: ${reference.message.awareness}`);
140
+ if (typeof reference.offer.offer_type === "string") facts.push(`offer: ${reference.offer.offer_type}`);
141
+ if (reference.text_blocks.length > 0) {
142
+ facts.push(
143
+ `text blocks: ${reference.text_blocks.map((b) => `"${b.text}"${b.role ? ` (${b.role})` : ""}`).join("; ")}`
144
+ );
145
+ }
146
+ const library = `The ads library has already read this ad: ${facts.join(". ")}. Your blueprint must agree with it on the container and the mechanism; refine and detail them, never contradict them, and transcribe the text blocks exactly.`;
147
+ return own ? `${own}. ${library}` : library;
148
+ }
149
+ function mergeReferenceIntoBlueprint(blueprint, reference) {
150
+ if (!reference || !blueprint || typeof blueprint !== "object" || Array.isArray(blueprint)) return blueprint;
151
+ return { ...blueprint, reference };
152
+ }
153
+
154
+ // src/commands/winning-ads/fit.ts
155
+ var Layers = z.object({
156
+ disguise: z.string().optional(),
157
+ voice: z.string().optional(),
158
+ trigger: z.string().optional(),
159
+ attention: z.string().optional(),
160
+ logic: z.string().optional()
161
+ }).strip();
162
+ var FitAnswerSchema = z.object({
163
+ why_it_wins: Layers.default({}),
164
+ load_bearing: z.array(
165
+ z.object({
166
+ element: z.string().trim().min(1),
167
+ needs: z.string().optional(),
168
+ have: z.enum(["have", "adapt", "missing"]),
169
+ ours: z.string().optional()
170
+ }).strip()
171
+ ).default([]),
172
+ verdict: z.enum(["use", "adapt", "reject"]),
173
+ transfer_note: z.string().optional(),
174
+ brand_presence: z.enum(["native", "standard"]).optional(),
175
+ recognition: z.string().optional(),
176
+ carry: z.enum(CONCEPT_CARRY_LEVELS).optional(),
177
+ carry_why: z.string().optional(),
178
+ /** Asked only with a bet: would the viewer of the ad we are making stop for this one. */
179
+ our_viewer: z.object({ stops: z.enum(["yes", "maybe", "no"]), why: z.string().default("") }).strip().optional().catch(void 0)
180
+ });
181
+ function buildFitPrompt(input) {
182
+ const facts = libraryFacts(input.library);
183
+ return [
184
+ "The image is a winning ad by another advertiser. We want to build an ad for OUR company on its concept: keep why it wins, change everything else to ours.",
185
+ ...facts.length > 0 ? [`The ads library read it as: ${facts.join(". ")}.`] : [],
186
+ "",
187
+ "What OUR company has (its own documents):",
188
+ input.knowledge.trim() || "(nothing written down yet)",
189
+ "",
190
+ ...input.bet ? [...betLines(input.bet), ""] : [],
191
+ "Answer in English:",
192
+ "why_it_wins, in layers, one short phrase each, empty when a layer does nothing: disguise (what the ad pretends to be: a note, a tweet, a newspaper, a chat, a plain ad), voice (who speaks and how: a peer, a founder, a brand), trigger (the emotion or need it pulls: a free gift, fear of a hidden loss, status, curiosity), attention (what stops the scroll), logic (why it convinces: reciprocity, social proof, a comparison, a price anchor).",
193
+ "load_bearing: the 1-4 elements the ad stops working without (never decoration), each with: element, needs (what it takes to carry it), have (have: we have it as it is; adapt: we can carry it with something of ours; missing: we have nothing that carries it), ours (what of ours carries it, when we have or can adapt it; never invent an offer, a gift, a price, a review or a customer we do not have).",
194
+ "verdict: use (it transfers as it is), adapt (it transfers with ours in place of theirs), reject (a load-bearing element is missing: without it our version loses why it wins).",
195
+ "transfer_note: one sentence on how the idea becomes ours, or why it cannot.",
196
+ "brand_presence: native when the disguise only works without looking like an ad (the logo as the sender's picture, no big button), else standard.",
197
+ 'recognition: what kind of product a stranger must take OUR version for in one second, never its format ("a trade course", "a social media API for developers", "a payroll app").',
198
+ "carry: what made it a winner, so what OUR ad takes from it: whole_ad (it wins as one piece: its disguise, layout and hook together; ours keeps all three with our words, brand and pictures), layout (its composition or container does the work: ours keeps that arrangement), hook (its opening line or first visual stops the scroll: ours opens on the same pattern in our words), angle (the argument or need it pulls wins, its look is ordinary: ours keeps the argument and looks like ours). carry_why: one sentence on why that level.",
199
+ ...input.bet ? [
200
+ "our_viewer: would the viewer of the ad we are making stop on THIS ad's move, made ours? stops: yes, maybe or no; why: one sentence naming what in it would or would not reach them (their age, life, market, what they care about). An ad that wins with another audience is no reference for ours."
201
+ ] : [],
202
+ "",
203
+ `Reply with only this JSON: {"why_it_wins":{"disguise":"","voice":"","trigger":"","attention":"","logic":""},"load_bearing":[{"element":"","needs":"","have":"have|adapt|missing","ours":""}],"verdict":"use|adapt|reject","transfer_note":"","brand_presence":"native|standard","recognition":"","carry":"whole_ad|layout|hook|angle","carry_why":""${input.bet ? ',"our_viewer":{"stops":"yes|maybe|no","why":""}' : ""}}`
204
+ ].join("\n");
205
+ }
206
+ function libraryFacts(lib) {
207
+ return [
208
+ lib.advertiser ? `advertiser: ${lib.advertiser}` : "",
209
+ lib.format_pattern ? `container: ${lib.format_pattern}` : "",
210
+ lib.mechanism ? `persuasion mechanism: ${lib.mechanism}` : "",
211
+ lib.awareness ? `awareness stage: ${lib.awareness}` : "",
212
+ lib.offer ? `offer: ${lib.offer}` : "",
213
+ lib.winner_category ? `evidence it won: ${lib.winner_category}` : "",
214
+ lib.angle ? `angle: ${lib.angle}` : "",
215
+ lib.hook_archetype ? `hook: ${lib.hook_archetype}` : "",
216
+ lib.composition ? `composition: ${lib.composition}` : "",
217
+ lib.text && lib.text.length > 0 ? `its words: ${lib.text.map((t) => `"${t}"`).join("; ")}` : ""
218
+ ].filter(Boolean);
219
+ }
220
+ function betLines(bet) {
221
+ return [
222
+ "The ad we are making with it:",
223
+ `- For: ${bet.who}${bet.market ? `, ${bet.market}` : ""}${bet.awareness ? `; awareness: ${bet.awareness}` : ""}`,
224
+ `- It says: ${bet.message}${bet.angle ? ` (angle: ${bet.angle})` : ""}`,
225
+ ...bet.quotes && bet.quotes.length > 0 ? [`- In our customers' own words: ${bet.quotes.map((q) => `"${q}"`).join("; ")}`] : []
226
+ ];
227
+ }
228
+ function fitHints(fit, adId, platform = "meta") {
229
+ const missing = fit.load_bearing.filter((l) => l.have === "missing" && !l.ours?.trim()).map((l) => l.element);
230
+ if (fit.verdict === "reject" || missing.length > 0) {
231
+ return [
232
+ `Pick another reference: this one wins on ${missing.length > 0 ? missing.map((m) => `"${m}"`).join(" and ") : "something we cannot supply"}, and our version would lose why it won.${fit.transfer_note ? ` ${fit.transfer_note}` : ""} Do not stop or ask the person: check the next candidates (\`baker winning-ads fit <adId> --platform ${platform}\`, about three) and scaffold the first that fits.`
233
+ ];
234
+ }
235
+ return [
236
+ `It fits (${fit.verdict}). Scaffold it: \`baker canvas scaffold-static-ad --source-ad-id ${adId} --source-platform ${platform} --slug <slug>\`: prompt.json's \`concept\` is seeded from this fit, and every render keeps ${fit.load_bearing.map((l) => `"${l.element}"`).join(", ") || "its idea"}.`,
237
+ ...fit.brand_presence === "native" ? [
238
+ "The concept is a native disguise: the brand shows as the sender (the logo small, as its picture or signature) and there is no big button; prompt.json says `brand_presence: native`."
239
+ ] : []
240
+ ];
241
+ }
242
+ var NO_FIT_HINT = "No fit was made of this reference";
243
+ function conceptFromFit(fit, adId) {
244
+ return {
245
+ concept: {
246
+ reference_ad_id: adId,
247
+ why_it_wins: fit.why_it_wins,
248
+ load_bearing: fit.load_bearing,
249
+ verdict: fit.verdict,
250
+ ...fit.transfer_note ? { transfer_note: fit.transfer_note } : {},
251
+ // A fit that names no level (cached before `carry`) is read as the whole ad, and says so.
252
+ carry: fit.carry ?? "whole_ad",
253
+ ...fit.carry_why ? { carry_why: fit.carry_why } : {}
254
+ },
255
+ ...fit.brand_presence ? { brand_presence: fit.brand_presence } : {},
256
+ ...fit.recognition ? { recognition: fit.recognition } : {}
257
+ };
258
+ }
259
+ var MAX_DOC_CHARS = 6e3;
260
+ var MAX_ENTRY_CHARS = 1200;
261
+ var KNOWLEDGE_COLLECTIONS = ["offers", "products", "personas", "positioning"];
262
+ function readText(file) {
263
+ return readFile(file, "utf8").catch(() => null);
264
+ }
265
+ function brandLines(brand) {
266
+ const lines = [
267
+ ...brand?.voice ? [`Voice: ${brand.voice}`] : [],
268
+ ...brand?.imagery ? [`Pictures: ${brand.imagery}`] : [],
269
+ ...brand?.logoUsage ? [`Logo: ${brand.logoUsage}`] : []
270
+ ];
271
+ return lines.length > 0 ? `The brand:
272
+ ${lines.join("\n")}` : "";
273
+ }
274
+ async function readKnowledge(root, readers) {
275
+ const parts = [];
276
+ const company = await readText(path.join(root, "COMPANY.md"));
277
+ if (company) parts.push(`COMPANY.md:
278
+ ${company.slice(0, MAX_DOC_CHARS)}`);
279
+ const context = await readCreativeContext(root, { kind: "static" }, readers ? { readers } : {});
280
+ const brand = brandLines(context.brand);
281
+ if (brand) parts.push(brand);
282
+ const rules = rulesBlock(context.rules);
283
+ if (rules) parts.push(rules);
284
+ for (const collection of KNOWLEDGE_COLLECTIONS) {
285
+ const dir = path.join(root, "src", "content", collection);
286
+ const files = (await readdir(dir, { recursive: true }).catch(() => [])).filter(
287
+ (f) => f.endsWith(".md")
288
+ );
289
+ for (const file of files.sort().slice(0, 12)) {
290
+ const text = await readText(path.join(dir, file));
291
+ if (text) parts.push(`${collection}/${file}:
292
+ ${text.slice(0, MAX_ENTRY_CHARS)}`);
293
+ }
294
+ }
295
+ return parts.join("\n\n");
296
+ }
297
+ var ReviewSchema = z.object({
298
+ reviewText: z.string(),
299
+ sourceType: z.string().optional(),
300
+ rating: z.number().optional()
301
+ });
302
+ function reviewsForFit(data) {
303
+ const list = Array.isArray(data) ? data : [];
304
+ const lines = list.slice(0, 15).flatMap((item) => {
305
+ const review = ReviewSchema.safeParse(item);
306
+ if (!review.success || !review.data.reviewText.trim()) return [];
307
+ const { reviewText, sourceType, rating } = review.data;
308
+ const label = [sourceType, rating !== void 0 ? `${rating}\u2605` : ""].filter(Boolean).join(" ");
309
+ return [`- ${label ? `${label} ` : ""}"${reviewText.slice(0, 160)}"`];
310
+ });
311
+ return lines.length > 0 ? `Reviews we have (${lines.length}):
312
+ ${lines.join("\n")}` : "Reviews we have: none on file.";
313
+ }
314
+ async function readReviews() {
315
+ try {
316
+ return reviewsForFit(await apiGet("/api/testimonials", { limit: "15" }));
317
+ } catch {
318
+ return "";
319
+ }
320
+ }
321
+ function fitCachePath(root, platform, adId) {
322
+ return path.join(root, "canvas", ".cache", "fit", `${platform}-${adId.replace(/[^a-zA-Z0-9_-]/g, "_")}.json`);
323
+ }
324
+ function readCachedFit(root, platform, adId) {
325
+ return readFitFile(fitCachePath(root, platform, adId));
326
+ }
327
+ async function readFitFile(file) {
328
+ const raw = await readText(file);
329
+ if (!raw) return null;
330
+ try {
331
+ const parsed = FitAnswerSchema.safeParse(JSON.parse(raw));
332
+ return parsed.success ? parsed.data : null;
333
+ } catch {
334
+ return null;
335
+ }
336
+ }
337
+ var DESCRIPTION = "Does a winning ad fit this company? One vision call reads the reference beside what the company has (COMPANY.md, the brand's rules, the offers, products and personas in the Knowledge, its reviews) and says why the ad wins (disguise, voice, trigger, attention, logic), the elements it stops working without, whether we have each, and a verdict: use, adapt or reject. Start here before scaffolding a static ad from the library: check about three candidates, scaffold only one that fits. `baker canvas scaffold-static-ad --source-ad-id <adId>` then seeds prompt.json's `concept` from this verdict, and a run refuses a rejected concept. Example: baker winning-ads fit 1310524137919413 --platform meta. Output is compact; --full adds the whole read.";
338
+ var ARGS = {
339
+ "ad-id": { type: "positional", required: true, description: "The library ad id (from search/winners/feed)." },
340
+ platform: {
341
+ type: "string",
342
+ required: false,
343
+ description: `Which platform the ad id is on: ${LIBRARY_PLATFORMS.join("|")} (default meta). The fit reads a still picture: a static ad (on google, a display ad). A video ad, YouTube included, is read with \`content\`; a Google search, Shopping or app ad is refused.`
344
+ },
345
+ full: {
346
+ type: "boolean",
347
+ required: false,
348
+ default: false,
349
+ description: "Add the whole read: every layer, need and note."
350
+ }
351
+ };
352
+ registerSchema({ command: "winning-ads.fit", description: DESCRIPTION, args: ARGS });
353
+ async function pictureOf(url) {
354
+ if (!url) return null;
355
+ try {
356
+ const bytes = await bytesOf(url);
357
+ return (await sharp(bytes).resize(1024, 1024, { fit: "inside" }).jpeg({ quality: 85 }).toBuffer()).toString(
358
+ "base64"
359
+ );
360
+ } catch {
361
+ return null;
362
+ }
363
+ }
364
+ function libraryRead(ad) {
365
+ return {
366
+ ...ad.advertiser ? { advertiser: ad.advertiser } : {},
367
+ ...ad.layout.format_pattern ? { format_pattern: ad.layout.format_pattern } : {},
368
+ ...ad.message.mechanism ? { mechanism: ad.message.mechanism } : {},
369
+ ...ad.message.awareness_stage ? { awareness: ad.message.awareness_stage } : {},
370
+ ...ad.offer.offer_type ? { offer: ad.offer.offer_type } : {},
371
+ ...ad.winner_category ? { winner_category: ad.winner_category } : {},
372
+ ...ad.angle ? { angle: ad.angle } : {},
373
+ ...ad.hook_archetype ? { hook_archetype: ad.hook_archetype } : {},
374
+ ...ad.layout.composition ? { composition: ad.layout.composition } : {},
375
+ text: ad.on_screen_text.flatMap((o) => o.text ? [o.text] : []).slice(0, 10)
376
+ };
377
+ }
378
+ async function fitOnce(root, platform, adId, ask, bet) {
379
+ const betFile = bet ? fitCachePath(root, platform, `${adId}--${betKey(bet)}`) : null;
380
+ const cached = betFile ? await readFitFile(betFile) : await readCachedFit(root, platform, adId);
381
+ if (cached) return cached;
382
+ const fit = await ask();
383
+ if (!fit) return null;
384
+ const text = `${JSON.stringify(fit, null, 2)}
385
+ `;
386
+ for (const file of [betFile, fitCachePath(root, platform, adId)]) {
387
+ if (!file) continue;
388
+ await mkdir(path.dirname(file), { recursive: true });
389
+ await writeFile(file, text, "utf8");
390
+ }
391
+ return fit;
392
+ }
393
+ function betKey(bet) {
394
+ return createHash("sha256").update(bet).digest("hex").slice(0, 16);
395
+ }
396
+ async function askFit(jpeg, prompt, onSpend) {
397
+ for (let attempt = 0; attempt < 2; attempt++) {
398
+ const parsed = FitAnswerSchema.safeParse(await askAboutImages(AD_DESCRIBE_MODEL, [jpeg], prompt, onSpend));
399
+ if (parsed.success) return parsed.data;
400
+ }
401
+ return null;
402
+ }
403
+ async function fitReference(root, platform, adId, bet) {
404
+ let failure = null;
405
+ const askFor = async () => {
406
+ let ad;
407
+ try {
408
+ ad = await fetchLibraryReference(adId, platform);
409
+ } catch (e) {
410
+ failure = {
411
+ code: "NOT_FOUND",
412
+ message: `The library could not return ad ${adId} on ${platform} (${e instanceof Error ? e.message : String(e)}).`,
413
+ fix: "Check the ad id and --platform against `baker winning-ads search`."
414
+ };
415
+ return null;
416
+ }
417
+ const refusal = notADesignReference(platform, adId, ad);
418
+ if (refusal) {
419
+ failure = refusal;
420
+ return null;
421
+ }
422
+ if (ad.format === "video") {
423
+ failure = {
424
+ code: "VIDEO_REFERENCE",
425
+ message: `Ad ${adId} is a video: the fit reads still pictures.`,
426
+ fix: `Read it with \`baker winning-ads content ${adId} --platform ${platform}\` (transcript, on-screen text, pacing) and build the video with \`baker canvas scaffold-ad\`. For a static, pick a static ad.`
427
+ };
428
+ return null;
429
+ }
430
+ const jpeg = await pictureOf(ad.media_url);
431
+ if (!jpeg) {
432
+ failure = {
433
+ code: "NOT_FOUND",
434
+ message: `Ad ${adId} has no picture the fit can read.`,
435
+ fix: "Pick a static ad with a picture."
436
+ };
437
+ return null;
438
+ }
439
+ const knowledge = [await readKnowledge(root), await readReviews()].filter(Boolean).join("\n\n");
440
+ const prompt = buildFitPrompt({ library: libraryRead(ad), knowledge, ...bet ? { bet } : {} });
441
+ const spent = [];
442
+ const answer = await askFit(jpeg, prompt, (u) => spent.push(u));
443
+ await holdUnbilledSpend(path.join(root, "canvas", ".cache"), spent);
444
+ return answer;
445
+ };
446
+ const fit = await fitOnce(root, platform, adId, askFor, bet ? JSON.stringify(bet) : void 0);
447
+ if (fit) return { ok: true, fit };
448
+ return {
449
+ ok: false,
450
+ error: failure ?? {
451
+ code: "UNAVAILABLE",
452
+ message: "The fit model did not answer (no gateway key here, or it failed twice).",
453
+ fix: "Run it again, or read the reference yourself with `baker winning-ads content <adId> --full` and write prompt.json's `concept` by hand."
454
+ }
455
+ };
456
+ }
457
+ var fitCommand = defineCommand({
458
+ meta: { name: "fit", description: DESCRIPTION },
459
+ args: ARGS,
460
+ async run({ args }) {
461
+ const adId = String(args["ad-id"]);
462
+ const platformResult = resolveSourcePlatform(args.platform ? String(args.platform) : void 0);
463
+ if (!platformResult.ok) {
464
+ writeJson({ ok: false, error: { code: "INVALID_ARGUMENT", message: platformResult.message } });
465
+ process.exit(1);
466
+ }
467
+ const platform = platformResult.platform;
468
+ const root = findWorkspaceRoot(process.cwd()) ?? process.cwd();
469
+ const result = await fitReference(root, platform, adId);
470
+ if (!result.ok) {
471
+ writeJson({ ok: false, error: result.error });
472
+ process.exit(1);
473
+ }
474
+ const fit = result.fit;
475
+ const why = [fit.why_it_wins.disguise, fit.why_it_wins.trigger, fit.why_it_wins.logic].filter(Boolean).join("; ");
476
+ writeJson({
477
+ ok: true,
478
+ data: {
479
+ ad_id: adId,
480
+ verdict: fit.verdict,
481
+ why_it_wins: why,
482
+ load_bearing: fit.load_bearing.map((l) => ({
483
+ element: l.element,
484
+ have: l.have,
485
+ ...l.ours ? { ours: l.ours } : {}
486
+ })),
487
+ ...fit.brand_presence ? { brand_presence: fit.brand_presence } : {},
488
+ ...fit.carry ? { carry: fit.carry } : {},
489
+ ...args.full ? { read: fit } : {}
490
+ },
491
+ hints: fitHints(fit, adId, platform)
492
+ });
493
+ }
494
+ });
495
+
496
+ export {
497
+ LIBRARY_PLATFORMS,
498
+ resolveSourcePlatform,
499
+ notADesignReference,
500
+ fetchLibraryReference,
501
+ libraryReferenceBlock,
502
+ referenceDescribeContext,
503
+ mergeReferenceIntoBlueprint,
504
+ FitAnswerSchema,
505
+ buildFitPrompt,
506
+ fitHints,
507
+ NO_FIT_HINT,
508
+ conceptFromFit,
509
+ readKnowledge,
510
+ reviewsForFit,
511
+ fitCachePath,
512
+ readCachedFit,
513
+ pictureOf,
514
+ fitOnce,
515
+ fitReference,
516
+ fitCommand
517
+ };
518
+ //# sourceMappingURL=chunk-T5HB6R4I.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/winning-ads/fit.ts","../src/commands/canvas/library-reference.ts"],"sourcesContent":["import { createHash } from \"node:crypto\";\n/**\n * Does this winning ad fit this company, and what would we have to supply to keep why it won?\n *\n * Audited Sept 2026: of 33 creatives built from winning ads, 12 lost the concept. References\n * were picked whose load-bearing ingredient we could not supply (a gift, a peer's voice, priced\n * tiers, a native disguise our \"big logo, big button\" rule broke), and nothing said so until the\n * finished ad came back as a feature list in a notes app. So before scaffolding, one vision call\n * reads the reference beside what the company has (COMPANY.md, the brand's rules, the offers,\n * products and personas in the Knowledge, its reviews) and says, in layers, why the ad wins, what\n * each load-bearing element needs, whether we have it, and a verdict: use, adapt or reject. The\n * agent checks about three candidates and scaffolds only one that fits; the scaffold seeds the ad\n * spec's `concept` from the verdict, and `baker canvas run` refuses a `reject`.\n */\nimport { mkdir, readdir, readFile, writeFile } from \"node:fs/promises\";\nimport path from \"node:path\";\nimport { AD_DESCRIBE_MODEL } from \"@baker/canvas-contract\";\nimport { defineCommand } from \"citty\";\nimport sharp from \"sharp\";\nimport { z } from \"zod\";\nimport { apiGet } from \"../../client.ts\";\nimport { type ContextReaders, type CreativeContext, readCreativeContext } from \"../../engine/creative-context/index.ts\";\nimport { rulesBlock } from \"../../engine/creative-rules/select.ts\";\nimport { askAboutImages, type ReviewUsage } from \"../../engine/nodes/local/lib/render-review.ts\";\nimport { bytesOf } from \"../../engine/nodes/local/lib/static-review.ts\";\nimport { CONCEPT_CARRY_LEVELS } from \"../../engine/scaffold/static-ad-spec.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport {\n type DesignRefusal,\n fetchLibraryReference,\n LIBRARY_PLATFORMS,\n type LibraryPlatform,\n notADesignReference,\n resolveSourcePlatform,\n} from \"../canvas/library-reference.ts\";\nimport { findWorkspaceRoot } from \"../canvas/normalize-paths.ts\";\nimport { holdUnbilledSpend } from \"../canvas/unbilled-spend.ts\";\n\nconst Layers = z\n .object({\n disguise: z.string().optional(),\n voice: z.string().optional(),\n trigger: z.string().optional(),\n attention: z.string().optional(),\n logic: z.string().optional(),\n })\n .strip();\n\n/** What the fit model answers. */\nexport const FitAnswerSchema = z.object({\n why_it_wins: Layers.default({}),\n load_bearing: z\n .array(\n z\n .object({\n element: z.string().trim().min(1),\n needs: z.string().optional(),\n have: z.enum([\"have\", \"adapt\", \"missing\"]),\n ours: z.string().optional(),\n })\n .strip(),\n )\n .default([]),\n verdict: z.enum([\"use\", \"adapt\", \"reject\"]),\n transfer_note: z.string().optional(),\n brand_presence: z.enum([\"native\", \"standard\"]).optional(),\n recognition: z.string().optional(),\n carry: z.enum(CONCEPT_CARRY_LEVELS).optional(),\n carry_why: z.string().optional(),\n /** Asked only with a bet: would the viewer of the ad we are making stop for this one. */\n our_viewer: z\n .object({ stops: z.enum([\"yes\", \"maybe\", \"no\"]), why: z.string().default(\"\") })\n .strip()\n .optional()\n .catch(undefined),\n});\n\n/** The ad we are making, as the fit judges a reference for it. */\nexport type FitBet = {\n who: string;\n message: string;\n awareness?: string;\n angle?: string;\n /** Our customers' own words the idea stands on. */\n quotes?: readonly string[];\n /** The viewer's market in words (`describeMarket`). */\n market?: string;\n};\nexport type FitAnswer = z.infer<typeof FitAnswerSchema>;\n\n/** The library's read of the reference, as far as the fit needs it. */\nexport type FitLibraryRead = {\n advertiser?: string;\n format_pattern?: string;\n mechanism?: string;\n awareness?: string;\n offer?: string;\n text?: string[];\n /** The library's evidence that it won: winner, scaled_winner, evergreen, rising. */\n winner_category?: string;\n angle?: string;\n hook_archetype?: string;\n composition?: string;\n};\n\n/**\n * The fit model's prompt: the company first, then the question, the answer a fixed JSON the code\n * reads. The layers are the ones the ad spec's `concept` keeps. Pure.\n */\nexport function buildFitPrompt(input: { library: FitLibraryRead; knowledge: string; bet?: FitBet }): string {\n const facts = libraryFacts(input.library);\n return [\n \"The image is a winning ad by another advertiser. We want to build an ad for OUR company on its concept: keep why it wins, change everything else to ours.\",\n ...(facts.length > 0 ? [`The ads library read it as: ${facts.join(\". \")}.`] : []),\n \"\",\n \"What OUR company has (its own documents):\",\n input.knowledge.trim() || \"(nothing written down yet)\",\n \"\",\n ...(input.bet ? [...betLines(input.bet), \"\"] : []),\n \"Answer in English:\",\n \"why_it_wins, in layers, one short phrase each, empty when a layer does nothing: disguise (what the ad pretends to be: a note, a tweet, a newspaper, a chat, a plain ad), voice (who speaks and how: a peer, a founder, a brand), trigger (the emotion or need it pulls: a free gift, fear of a hidden loss, status, curiosity), attention (what stops the scroll), logic (why it convinces: reciprocity, social proof, a comparison, a price anchor).\",\n \"load_bearing: the 1-4 elements the ad stops working without (never decoration), each with: element, needs (what it takes to carry it), have (have: we have it as it is; adapt: we can carry it with something of ours; missing: we have nothing that carries it), ours (what of ours carries it, when we have or can adapt it; never invent an offer, a gift, a price, a review or a customer we do not have).\",\n \"verdict: use (it transfers as it is), adapt (it transfers with ours in place of theirs), reject (a load-bearing element is missing: without it our version loses why it wins).\",\n \"transfer_note: one sentence on how the idea becomes ours, or why it cannot.\",\n \"brand_presence: native when the disguise only works without looking like an ad (the logo as the sender's picture, no big button), else standard.\",\n 'recognition: what kind of product a stranger must take OUR version for in one second, never its format (\"a trade course\", \"a social media API for developers\", \"a payroll app\").',\n \"carry: what made it a winner, so what OUR ad takes from it: whole_ad (it wins as one piece: its disguise, layout and hook together; ours keeps all three with our words, brand and pictures), layout (its composition or container does the work: ours keeps that arrangement), hook (its opening line or first visual stops the scroll: ours opens on the same pattern in our words), angle (the argument or need it pulls wins, its look is ordinary: ours keeps the argument and looks like ours). carry_why: one sentence on why that level.\",\n ...(input.bet\n ? [\n \"our_viewer: would the viewer of the ad we are making stop on THIS ad's move, made ours? stops: yes, maybe or no; why: one sentence naming what in it would or would not reach them (their age, life, market, what they care about). An ad that wins with another audience is no reference for ours.\",\n ]\n : []),\n \"\",\n `Reply with only this JSON: {\"why_it_wins\":{\"disguise\":\"\",\"voice\":\"\",\"trigger\":\"\",\"attention\":\"\",\"logic\":\"\"},\"load_bearing\":[{\"element\":\"\",\"needs\":\"\",\"have\":\"have|adapt|missing\",\"ours\":\"\"}],\"verdict\":\"use|adapt|reject\",\"transfer_note\":\"\",\"brand_presence\":\"native|standard\",\"recognition\":\"\",\"carry\":\"whole_ad|layout|hook|angle\",\"carry_why\":\"\"${input.bet ? ',\"our_viewer\":{\"stops\":\"yes|maybe|no\",\"why\":\"\"}' : \"\"}}`,\n ].join(\"\\n\");\n}\n\n/** The library's read of a reference, as lines the fit prompt quotes. Pure. */\nfunction libraryFacts(lib: FitLibraryRead): string[] {\n return [\n lib.advertiser ? `advertiser: ${lib.advertiser}` : \"\",\n lib.format_pattern ? `container: ${lib.format_pattern}` : \"\",\n lib.mechanism ? `persuasion mechanism: ${lib.mechanism}` : \"\",\n lib.awareness ? `awareness stage: ${lib.awareness}` : \"\",\n lib.offer ? `offer: ${lib.offer}` : \"\",\n lib.winner_category ? `evidence it won: ${lib.winner_category}` : \"\",\n lib.angle ? `angle: ${lib.angle}` : \"\",\n lib.hook_archetype ? `hook: ${lib.hook_archetype}` : \"\",\n lib.composition ? `composition: ${lib.composition}` : \"\",\n lib.text && lib.text.length > 0 ? `its words: ${lib.text.map((t) => `\"${t}\"`).join(\"; \")}` : \"\",\n ].filter(Boolean);\n}\n\n/** The ad we are making, as the fit reads it: who it is for, what it says, in our customers' words. Pure. */\nfunction betLines(bet: FitBet): string[] {\n return [\n \"The ad we are making with it:\",\n `- For: ${bet.who}${bet.market ? `, ${bet.market}` : \"\"}${bet.awareness ? `; awareness: ${bet.awareness}` : \"\"}`,\n `- It says: ${bet.message}${bet.angle ? ` (angle: ${bet.angle})` : \"\"}`,\n ...(bet.quotes && bet.quotes.length > 0\n ? [`- In our customers' own words: ${bet.quotes.map((q) => `\"${q}\"`).join(\"; \")}`]\n : []),\n ];\n}\n\n/** What the agent does next with a fit. Pure. */\nexport function fitHints(fit: FitAnswer, adId: string, platform = \"meta\"): string[] {\n const missing = fit.load_bearing.filter((l) => l.have === \"missing\" && !l.ours?.trim()).map((l) => l.element);\n if (fit.verdict === \"reject\" || missing.length > 0) {\n return [\n `Pick another reference: this one wins on ${missing.length > 0 ? missing.map((m) => `\"${m}\"`).join(\" and \") : \"something we cannot supply\"}, and our version would lose why it won.${fit.transfer_note ? ` ${fit.transfer_note}` : \"\"} Do not stop or ask the person: check the next candidates (\\`baker winning-ads fit <adId> --platform ${platform}\\`, about three) and scaffold the first that fits.`,\n ];\n }\n return [\n `It fits (${fit.verdict}). Scaffold it: \\`baker canvas scaffold-static-ad --source-ad-id ${adId} --source-platform ${platform} --slug <slug>\\`: prompt.json's \\`concept\\` is seeded from this fit, and every render keeps ${fit.load_bearing.map((l) => `\"${l.element}\"`).join(\", \") || \"its idea\"}.`,\n ...(fit.brand_presence === \"native\"\n ? [\n \"The concept is a native disguise: the brand shows as the sender (the logo small, as its picture or signature) and there is no big button; prompt.json says `brand_presence: native`.\",\n ]\n : []),\n ];\n}\n\n/** How the scaffold's hint for a reference built on with no fit opens (`creatives make` drops it once it checked the reference). */\nexport const NO_FIT_HINT = \"No fit was made of this reference\";\n\n/** The ad spec fields a fit seeds: `concept`, `brand_presence`, `recognition`. Pure. */\nexport function conceptFromFit(fit: FitAnswer, adId: string) {\n return {\n concept: {\n reference_ad_id: adId,\n why_it_wins: fit.why_it_wins,\n load_bearing: fit.load_bearing,\n verdict: fit.verdict,\n ...(fit.transfer_note ? { transfer_note: fit.transfer_note } : {}),\n // A fit that names no level (cached before `carry`) is read as the whole ad, and says so.\n carry: fit.carry ?? \"whole_ad\",\n ...(fit.carry_why ? { carry_why: fit.carry_why } : {}),\n },\n ...(fit.brand_presence ? { brand_presence: fit.brand_presence } : {}),\n ...(fit.recognition ? { recognition: fit.recognition } : {}),\n };\n}\n\nconst MAX_DOC_CHARS = 6000;\nconst MAX_ENTRY_CHARS = 1200;\nconst KNOWLEDGE_COLLECTIONS = [\"offers\", \"products\", \"personas\", \"positioning\"] as const;\n\nfunction readText(file: string): Promise<string | null> {\n return readFile(file, \"utf8\").catch(() => null);\n}\n\n/** How the brand speaks and looks and which logo its ads use, as its reading says. Pure. */\nfunction brandLines(brand: CreativeContext[\"brand\"]): string {\n const lines = [\n ...(brand?.voice ? [`Voice: ${brand.voice}`] : []),\n ...(brand?.imagery ? [`Pictures: ${brand.imagery}`] : []),\n ...(brand?.logoUsage ? [`Logo: ${brand.logoUsage}`] : []),\n ];\n return lines.length > 0 ? `The brand:\\n${lines.join(\"\\n\")}` : \"\";\n}\n\n/**\n * What the company has, as the fit reads it: COMPANY.md (the records of what it has), how its brand\n * speaks and looks, every rule it sets for a static ad, and every entry of the offers, products and\n * personas in the Knowledge, each cut short. Never throws.\n */\nexport async function readKnowledge(root: string, readers?: ContextReaders): Promise<string> {\n const parts: string[] = [];\n const company = await readText(path.join(root, \"COMPANY.md\"));\n if (company) parts.push(`COMPANY.md:\\n${company.slice(0, MAX_DOC_CHARS)}`);\n const context = await readCreativeContext(root, { kind: \"static\" }, readers ? { readers } : {});\n const brand = brandLines(context.brand);\n if (brand) parts.push(brand);\n const rules = rulesBlock(context.rules);\n if (rules) parts.push(rules);\n for (const collection of KNOWLEDGE_COLLECTIONS) {\n const dir = path.join(root, \"src\", \"content\", collection);\n const files = ((await readdir(dir, { recursive: true }).catch(() => [])) as string[]).filter((f) =>\n f.endsWith(\".md\"),\n );\n for (const file of files.sort().slice(0, 12)) {\n const text = await readText(path.join(dir, file));\n if (text) parts.push(`${collection}/${file}:\\n${text.slice(0, MAX_ENTRY_CHARS)}`);\n }\n }\n return parts.join(\"\\n\\n\");\n}\n\n/** One review as the testimonials route returns it, read loosely so a new field never empties the list. */\nconst ReviewSchema = z.object({\n reviewText: z.string(),\n sourceType: z.string().optional(),\n rating: z.number().optional(),\n});\n\n/** The company's reviews (`/api/testimonials`, a plain list), as a few lines the fit can weigh proof against. Pure. */\nexport function reviewsForFit(data: unknown): string {\n const list = Array.isArray(data) ? data : [];\n const lines = list.slice(0, 15).flatMap((item) => {\n const review = ReviewSchema.safeParse(item);\n if (!review.success || !review.data.reviewText.trim()) return [];\n const { reviewText, sourceType, rating } = review.data;\n const label = [sourceType, rating !== undefined ? `${rating}★` : \"\"].filter(Boolean).join(\" \");\n return [`- ${label ? `${label} ` : \"\"}\"${reviewText.slice(0, 160)}\"`];\n });\n return lines.length > 0\n ? `Reviews we have (${lines.length}):\\n${lines.join(\"\\n\")}`\n : \"Reviews we have: none on file.\";\n}\n\n/** The company's reviews for the fit. Never throws. */\nasync function readReviews(): Promise<string> {\n try {\n return reviewsForFit(await apiGet<unknown>(\"/api/testimonials\", { limit: \"15\" }));\n } catch {\n return \"\";\n }\n}\n\n/** Where a fit is kept, so the scaffold of the same reference seeds its concept from it. */\nexport function fitCachePath(root: string, platform: string, adId: string): string {\n return path.join(root, \"canvas\", \".cache\", \"fit\", `${platform}-${adId.replace(/[^a-zA-Z0-9_-]/g, \"_\")}.json`);\n}\n\n/** The fit this workspace made of a reference, or null. Never throws. */\nexport function readCachedFit(root: string, platform: string, adId: string): Promise<FitAnswer | null> {\n return readFitFile(fitCachePath(root, platform, adId));\n}\n\n/** A cached fit file's answer, or null. Never throws. */\nasync function readFitFile(file: string): Promise<FitAnswer | null> {\n const raw = await readText(file);\n if (!raw) return null;\n try {\n const parsed = FitAnswerSchema.safeParse(JSON.parse(raw));\n return parsed.success ? parsed.data : null;\n } catch {\n return null;\n }\n}\n\nconst DESCRIPTION =\n \"Does a winning ad fit this company? One vision call reads the reference beside what the company has (COMPANY.md, the brand's rules, the offers, products and personas in the Knowledge, its reviews) and says why the ad wins (disguise, voice, trigger, attention, logic), the elements it stops working without, whether we have each, and a verdict: use, adapt or reject. Start here before scaffolding a static ad from the library: check about three candidates, scaffold only one that fits. `baker canvas scaffold-static-ad --source-ad-id <adId>` then seeds prompt.json's `concept` from this verdict, and a run refuses a rejected concept. Example: baker winning-ads fit 1310524137919413 --platform meta. Output is compact; --full adds the whole read.\";\n\nconst ARGS = {\n \"ad-id\": { type: \"positional\", required: true, description: \"The library ad id (from search/winners/feed).\" },\n platform: {\n type: \"string\",\n required: false,\n description: `Which platform the ad id is on: ${LIBRARY_PLATFORMS.join(\"|\")} (default meta). The fit reads a still picture: a static ad (on google, a display ad). A video ad, YouTube included, is read with \\`content\\`; a Google search, Shopping or app ad is refused.`,\n },\n full: {\n type: \"boolean\",\n required: false,\n default: false,\n description: \"Add the whole read: every layer, need and note.\",\n },\n} as const;\n\nregisterSchema({ command: \"winning-ads.fit\", description: DESCRIPTION, args: ARGS });\n\ntype LibraryAd = Awaited<ReturnType<typeof fetchLibraryReference>>;\n\n/** The reference's picture as a JPEG the vision model reads, null when it has none to read. */\n/** A picture as the vision models read it: a JPEG at most 1024 px, base64; null when it cannot be read. */\nexport async function pictureOf(url: string | null | undefined): Promise<string | null> {\n if (!url) return null;\n try {\n const bytes = await bytesOf(url);\n return (await sharp(bytes).resize(1024, 1024, { fit: \"inside\" }).jpeg({ quality: 85 }).toBuffer()).toString(\n \"base64\",\n );\n } catch {\n return null;\n }\n}\n\n/** What the library already read of the ad, to ground the fit. */\nfunction libraryRead(ad: LibraryAd) {\n return {\n ...(ad.advertiser ? { advertiser: ad.advertiser } : {}),\n ...(ad.layout.format_pattern ? { format_pattern: ad.layout.format_pattern } : {}),\n ...(ad.message.mechanism ? { mechanism: ad.message.mechanism } : {}),\n ...(ad.message.awareness_stage ? { awareness: ad.message.awareness_stage } : {}),\n ...(ad.offer.offer_type ? { offer: ad.offer.offer_type } : {}),\n ...(ad.winner_category ? { winner_category: ad.winner_category } : {}),\n ...(ad.angle ? { angle: ad.angle } : {}),\n ...(ad.hook_archetype ? { hook_archetype: ad.hook_archetype } : {}),\n ...(ad.layout.composition ? { composition: ad.layout.composition } : {}),\n text: ad.on_screen_text.flatMap((o) => (o.text ? [o.text] : [])).slice(0, 10),\n };\n}\n\n/**\n * The fit this workspace already made of the ad, else a new one from `ask`, kept for next time:\n * asking again is free, and a `reject` stays a reject (the scaffold's concept gate reads it).\n * With a `bet` key (the ad being made), a fit made for another bet is never reused: one ad can\n * suit one idea's viewer and not another's. The latest fit stays the ad's own, for its readers.\n */\nexport async function fitOnce(\n root: string,\n platform: string,\n adId: string,\n ask: () => Promise<FitAnswer | null>,\n bet?: string,\n): Promise<FitAnswer | null> {\n const betFile = bet ? fitCachePath(root, platform, `${adId}--${betKey(bet)}`) : null;\n const cached = betFile ? await readFitFile(betFile) : await readCachedFit(root, platform, adId);\n if (cached) return cached;\n const fit = await ask();\n if (!fit) return null;\n const text = `${JSON.stringify(fit, null, 2)}\\n`;\n for (const file of [betFile, fitCachePath(root, platform, adId)]) {\n if (!file) continue;\n await mkdir(path.dirname(file), { recursive: true });\n await writeFile(file, text, \"utf8\");\n }\n return fit;\n}\n\n/** A short stable key for a bet's text. Pure. */\nfunction betKey(bet: string): string {\n return createHash(\"sha256\").update(bet).digest(\"hex\").slice(0, 16);\n}\n\n/** The fit, asked at most twice; null when the model never answered in shape. */\nasync function askFit(jpeg: string, prompt: string, onSpend: (usage: ReviewUsage) => void): Promise<FitAnswer | null> {\n for (let attempt = 0; attempt < 2; attempt++) {\n const parsed = FitAnswerSchema.safeParse(await askAboutImages(AD_DESCRIBE_MODEL, [jpeg], prompt, onSpend));\n if (parsed.success) return parsed.data;\n }\n return null;\n}\n\nexport type FitFailure =\n | { code: \"NOT_FOUND\" | \"UNAVAILABLE\" | \"VIDEO_REFERENCE\"; message: string; fix: string }\n | DesignRefusal;\n\n/**\n * The fit of one library ad for this workspace's company: cached, else one vision call. Never\n * exits; a reference the library cannot return, one with no picture, or a model that does not\n * answer is a failure the caller reports.\n */\nexport async function fitReference(\n root: string,\n platform: LibraryPlatform,\n adId: string,\n bet?: FitBet,\n): Promise<{ ok: true; fit: FitAnswer } | { ok: false; error: FitFailure }> {\n let failure = null as FitFailure | null;\n const askFor = async () => {\n let ad: LibraryAd;\n try {\n ad = await fetchLibraryReference(adId, platform);\n } catch (e) {\n failure = {\n code: \"NOT_FOUND\",\n message: `The library could not return ad ${adId} on ${platform} (${e instanceof Error ? e.message : String(e)}).`,\n fix: \"Check the ad id and --platform against `baker winning-ads search`.\",\n };\n return null;\n }\n // A search text ad, a Shopping listing or an app-install ad is no design: never billed a fit.\n const refusal = notADesignReference(platform, adId, ad);\n if (refusal) {\n failure = refusal;\n return null;\n }\n // The fit reads one still picture: a video is studied whole with `content`, never fetched here.\n if (ad.format === \"video\") {\n failure = {\n code: \"VIDEO_REFERENCE\",\n message: `Ad ${adId} is a video: the fit reads still pictures.`,\n fix: `Read it with \\`baker winning-ads content ${adId} --platform ${platform}\\` (transcript, on-screen text, pacing) and build the video with \\`baker canvas scaffold-ad\\`. For a static, pick a static ad.`,\n };\n return null;\n }\n const jpeg = await pictureOf(ad.media_url);\n if (!jpeg) {\n failure = {\n code: \"NOT_FOUND\",\n message: `Ad ${adId} has no picture the fit can read.`,\n fix: \"Pick a static ad with a picture.\",\n };\n return null;\n }\n const knowledge = [await readKnowledge(root), await readReviews()].filter(Boolean).join(\"\\n\\n\");\n const prompt = buildFitPrompt({ library: libraryRead(ad), knowledge, ...(bet ? { bet } : {}) });\n const spent: ReviewUsage[] = [];\n const answer = await askFit(jpeg, prompt, (u) => spent.push(u));\n // No run record carries this call: the next render of this workspace bills it.\n await holdUnbilledSpend(path.join(root, \"canvas\", \".cache\"), spent);\n return answer;\n };\n const fit = await fitOnce(root, platform, adId, askFor, bet ? JSON.stringify(bet) : undefined);\n if (fit) return { ok: true, fit };\n return {\n ok: false,\n error: failure ?? {\n code: \"UNAVAILABLE\",\n message: \"The fit model did not answer (no gateway key here, or it failed twice).\",\n fix: \"Run it again, or read the reference yourself with `baker winning-ads content <adId> --full` and write prompt.json's `concept` by hand.\",\n },\n };\n}\n\nexport const fitCommand = defineCommand({\n meta: { name: \"fit\", description: DESCRIPTION },\n args: ARGS,\n async run({ args }) {\n const adId = String(args[\"ad-id\"]);\n const platformResult = resolveSourcePlatform(args.platform ? String(args.platform) : undefined);\n if (!platformResult.ok) {\n writeJson({ ok: false, error: { code: \"INVALID_ARGUMENT\", message: platformResult.message } });\n process.exit(1);\n }\n const platform = platformResult.platform;\n const root = findWorkspaceRoot(process.cwd()) ?? process.cwd();\n const result = await fitReference(root, platform, adId);\n if (!result.ok) {\n writeJson({ ok: false, error: result.error });\n process.exit(1);\n }\n const fit = result.fit;\n const why = [fit.why_it_wins.disguise, fit.why_it_wins.trigger, fit.why_it_wins.logic].filter(Boolean).join(\"; \");\n writeJson({\n ok: true,\n data: {\n ad_id: adId,\n verdict: fit.verdict,\n why_it_wins: why,\n load_bearing: fit.load_bearing.map((l) => ({\n element: l.element,\n have: l.have,\n ...(l.ours ? { ours: l.ours } : {}),\n })),\n ...(fit.brand_presence ? { brand_presence: fit.brand_presence } : {}),\n ...(fit.carry ? { carry: fit.carry } : {}),\n ...(args.full ? { read: fit } : {}),\n },\n hints: fitHints(fit, adId, platform),\n });\n },\n});\n","import type { AdContent, AdContentResponse } from \"@baker/api/ad-library\";\nimport { apiGet } from \"../../client.ts\";\n\n/**\n * The winners library's structured read of the reference ad, carried into the scaffold by id.\n *\n * Before this, the reference reached `scaffold-static-ad` as a picture plus free text, and the\n * describe pass re-read from pixels what ad-dna had already extracted: the container\n * (`format_pattern`), the composition, the persuasion mechanism, the offer, every text block\n * with its role. That read is fetched here the way `baker winning-ads content <adId> --full`\n * fetches it, projected to what the render can act on, and written into `prompt.json` as\n * `reference`, so the agent and the render prompt read one account of why the ad won.\n */\n\n/** The platforms the library indexes: the `sourcePlatform` enum of the scaffold's creatives collection. */\nexport const LIBRARY_PLATFORMS = [\"meta\", \"linkedin\", \"tiktok\", \"google\"] as const;\nexport type LibraryPlatform = (typeof LIBRARY_PLATFORMS)[number];\n\nexport type SourcePlatformResolution = { ok: true; platform: LibraryPlatform } | { ok: false; message: string };\n\n/** `--source-platform`, default meta; an unknown value is refused, never mapped to a guess. */\nexport function resolveSourcePlatform(flag: string | undefined): SourcePlatformResolution {\n const value = flag?.trim();\n if (!value) return { ok: true, platform: \"meta\" };\n if ((LIBRARY_PLATFORMS as readonly string[]).includes(value)) return { ok: true, platform: value as LibraryPlatform };\n return {\n ok: false,\n message: `--source-platform \"${value}\" is not a library platform. Use one of: ${LIBRARY_PLATFORMS.join(\", \")}.`,\n };\n}\n\nconst PICK_A_DESIGN =\n \"To build a static on a proven design, pick a Google display ad or a static from another platform (`baker winning-ads search --format static`); a YouTube ad is a video reference, read with `baker winning-ads content`.\";\n\n/** Why an ad cannot be built on: what the agent reads it for instead. */\nexport type DesignRefusal = { code: \"NOT_A_DESIGN_REFERENCE\"; message: string; fix: string };\n\n/** What a reference is judged on: its format and, on Google, which kind of ad it is. */\nexport type ReferenceKind = Pick<AdContent, \"format\"> & Partial<Pick<AdContent, \"google_ad_type\">>;\n\n/**\n * Why a library ad is no design to build on, else null. Only Google's display (image) and YouTube\n * (video) ads are: a search ad is words, and a Shopping listing or an app-install ad is assembled by\n * Google from a feed or a store page. An ad whose kind the library does not say is judged by its\n * format alone. Pure.\n */\nexport function notADesignReference(\n platform: LibraryPlatform,\n adId: string,\n ad: ReferenceKind,\n): DesignRefusal | null {\n if (platform !== \"google\") return null;\n if (ad.format === \"text\" || ad.google_ad_type === \"search\") {\n return {\n code: \"NOT_A_DESIGN_REFERENCE\",\n message: `Google ad ${adId} is a search text ad: a reference for wording, not a design.`,\n fix: `Read it with \\`baker winning-ads content ${adId} --platform google\\` and write our own copy. ${PICK_A_DESIGN}`,\n };\n }\n const assembled =\n ad.google_ad_type === \"shopping\"\n ? \"a Shopping product listing, which Google builds from a product feed\"\n : ad.google_ad_type === \"app\"\n ? \"an app-install ad, which Google builds from the app's store page\"\n : null;\n if (assembled) {\n return {\n code: \"NOT_A_DESIGN_REFERENCE\",\n message: `Google ad ${adId} is ${assembled}: there is no design of the advertiser's to build on.`,\n fix: PICK_A_DESIGN,\n };\n }\n return null;\n}\n\nexport type ReferenceTextBlock = { text: string; role?: string; position?: string };\n\n/** The `reference` block `prompt.json` carries: the library's read of the source ad, filled fields only. */\nexport type LibraryReference = {\n ad_id: string;\n platform: LibraryPlatform;\n advertiser?: string;\n advertiser_id?: string;\n format_pattern?: string;\n layout: Record<string, unknown>;\n message: Record<string, unknown>;\n offer: Record<string, unknown>;\n text_blocks: ReferenceTextBlock[];\n copy: Record<string, unknown>;\n};\n\n/** Fetch one ad's content as `baker winning-ads content --full` does. Throws on any failure; the caller degrades. */\nexport async function fetchLibraryReference(adId: string, platform: LibraryPlatform): Promise<AdContent> {\n const data = await apiGet<AdContentResponse>(\"/api/ad-library/ad-content\", { id: adId, platform });\n if (!data?.ad) throw new Error(`the library returned no ad for ${adId} on ${platform}`);\n return data.ad;\n}\n\n/** Only what the library found: null, undefined and empty lists are absences, never findings. */\nfunction filled(entries: Record<string, unknown>): Record<string, unknown> {\n return Object.fromEntries(\n Object.entries(entries).filter(([, v]) => v !== null && v !== undefined && !(Array.isArray(v) && v.length === 0)),\n );\n}\n\n/** Project the library's ad content to the block the blueprint and the render prompt read. */\nexport function libraryReferenceBlock(\n ad: AdContent,\n ids: { adId: string; platform: LibraryPlatform; advertiserId: string | undefined },\n): LibraryReference {\n const textBlocks: ReferenceTextBlock[] = ad.on_screen_text.flatMap((o) =>\n o.text\n ? [{ text: o.text, ...(o.role ? { role: o.role } : {}), ...(o.position ? { position: o.position } : {}) }]\n : [],\n );\n const advertiser = ad.advertiser ?? undefined;\n const advertiserId = ids.advertiserId ?? ad.advertiser_id ?? undefined;\n return {\n ad_id: ids.adId,\n platform: ids.platform,\n ...(advertiser ? { advertiser } : {}),\n ...(advertiserId ? { advertiser_id: advertiserId } : {}),\n ...(ad.layout.format_pattern ? { format_pattern: ad.layout.format_pattern } : {}),\n layout: filled({\n composition: ad.layout.composition,\n focal_subject: ad.layout.focal_subject,\n aspect_ratio: ad.layout.aspect_ratio,\n background: ad.layout.background,\n palette_mood: ad.layout.palette_mood,\n colors: ad.layout.colors,\n production: ad.layout.production,\n aesthetic: ad.layout.aesthetic,\n cta_in_image: ad.layout.cta_in_image,\n markers: ad.layout.markers,\n }),\n message: filled({\n mechanism: ad.message.mechanism,\n awareness: ad.message.awareness_stage,\n sophistication: ad.message.sophistication,\n angle: ad.angle,\n hook_archetype: ad.hook_archetype,\n pain_points: ad.message.pain_points,\n desires: ad.message.desires,\n value_props: ad.message.value_props,\n objections_handled: ad.message.objections_handled,\n proof: ad.message.proof,\n risk_reversal: ad.message.risk_reversal,\n }),\n offer: filled({\n offer_type: ad.offer.offer_type,\n pricing_model: ad.offer.pricing_model,\n entry_price: ad.offer.entry_price,\n no_credit_card: ad.offer.no_credit_card,\n guarantee: ad.offer.guarantee,\n guarantee_days: ad.offer.guarantee_days,\n urgency: ad.offer.urgency,\n bonus: ad.offer.bonus,\n }),\n text_blocks: textBlocks,\n copy: filled({ primary_text: ad.primary_text, headline: ad.headline, cta: ad.cta }),\n };\n}\n\n/**\n * The `context` the describe pass gets: the agent's own provenance plus what the library\n * already read off this ad. The describe pass still reads the pixels (the layout grid, the\n * fonts, the expressions), but it is told the container, the mechanism and the words up front\n * so its blueprint and the library's read cannot disagree on what the ad is.\n */\nexport function referenceDescribeContext(\n reference: LibraryReference | undefined,\n agentContext: string | undefined,\n): string | undefined {\n const own = agentContext?.trim() || undefined;\n if (!reference) return own;\n const facts: string[] = [];\n if (reference.advertiser) facts.push(`advertiser: ${reference.advertiser}`);\n if (reference.format_pattern) facts.push(`container (format_pattern): ${reference.format_pattern}`);\n if (typeof reference.layout.composition === \"string\") facts.push(`composition: ${reference.layout.composition}`);\n if (typeof reference.message.mechanism === \"string\") facts.push(`persuasion mechanism: ${reference.message.mechanism}`);\n if (typeof reference.message.awareness === \"string\") facts.push(`awareness stage: ${reference.message.awareness}`);\n if (typeof reference.offer.offer_type === \"string\") facts.push(`offer: ${reference.offer.offer_type}`);\n if (reference.text_blocks.length > 0) {\n facts.push(\n `text blocks: ${reference.text_blocks.map((b) => `\"${b.text}\"${b.role ? ` (${b.role})` : \"\"}`).join(\"; \")}`,\n );\n }\n const library =\n `The ads library has already read this ad: ${facts.join(\". \")}. ` +\n \"Your blueprint must agree with it on the container and the mechanism; refine and detail them, never contradict them, and transcribe the text blocks exactly.\";\n return own ? `${own}. ${library}` : library;\n}\n\n/**\n * Write the library's read into the blueprint as `reference`. Never a mechanism: the library's\n * container and persuasion label (\"comparison_table container carrying us_vs_them\") name the\n * format, not why the ad won, and seeded as the mechanism they hid that the read found none\n * (audited Sept 2026). Why it wins is `baker winning-ads fit`'s to say.\n */\nexport function mergeReferenceIntoBlueprint(blueprint: unknown, reference: LibraryReference | undefined): unknown {\n if (!reference || !blueprint || typeof blueprint !== \"object\" || Array.isArray(blueprint)) return blueprint;\n return { ...(blueprint as Record<string, unknown>), reference };\n}\n"],"mappings":"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","names":[]}