@koda-sl/baker-cli 0.477.0 → 0.479.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1406) hide show
  1. package/README.md +57 -22
  2. package/dist/account-7LUQWY6Q.js +49 -0
  3. package/dist/account-VH2AATWI.js +79 -0
  4. package/dist/account-Z65CPOWE.js +80 -0
  5. package/dist/account-reads-GYI2SS6T.js +218 -0
  6. package/dist/account-writes-4N2MA2ZR.js +66 -0
  7. package/dist/accounts-E4TVYTUR.js +115 -0
  8. package/dist/accounts-SMB3TNXX.js +114 -0
  9. package/dist/accounts-SPLE7URQ.js +611 -0
  10. package/dist/accounts-UA2ZWRN4.js +75 -0
  11. package/dist/accounts-XG472YLB.js +77 -0
  12. package/dist/actions-KQTXBNJU.js +55 -0
  13. package/dist/active-entities-MCL7UEGV.js +103 -0
  14. package/dist/activecampaign-42JXANUA.js +935 -0
  15. package/dist/activities-IQPJPP4B.js +74 -0
  16. package/dist/ad-group-writes-EUTMPBMK.js +170 -0
  17. package/dist/ad-groups-OVPAI5RM.js +68 -0
  18. package/dist/ad-writes-DACTYFEO.js +174 -0
  19. package/dist/add-5IGUQHVZ.js +105 -0
  20. package/dist/add-BK5AQI5A.js +97 -0
  21. package/dist/add-C3FQ5D62.js +104 -0
  22. package/dist/add-KTEJCE4L.js +302 -0
  23. package/dist/add-accounts-CJSV5NPL.js +91 -0
  24. package/dist/ads-HXX2IAFF.js +113 -0
  25. package/dist/ads-L65JIKCD.js +77 -0
  26. package/dist/ads-RAUM6ISF.js +128 -0
  27. package/dist/ads-WPI3AMSR.js +40 -0
  28. package/dist/adsets-LPN6WFGF.js +176 -0
  29. package/dist/advertisers-36HP3AOE.js +120 -0
  30. package/dist/advertisers-DS2NRWKI.js +125 -0
  31. package/dist/analytics-I4LZCRG2.js +433 -0
  32. package/dist/analytics-IFNBT7IM.js +1976 -0
  33. package/dist/animate-3LV3LHXQ.js +480 -0
  34. package/dist/assign-WBLSZNCO.js +77 -0
  35. package/dist/audience-size-LOX5BNXI.js +73 -0
  36. package/dist/audience-size-LOX5BNXI.js.map +1 -0
  37. package/dist/audiences-3LRCLHTQ.js +85 -0
  38. package/dist/audiences-RPLVMO4H.js +268 -0
  39. package/dist/audiences-XEZHACKH.js +78 -0
  40. package/dist/audit-6AG6BPXQ.js +151 -0
  41. package/dist/audit-YEGQU474.js +88 -0
  42. package/dist/autocomplete-2QRU7ARD.js +111 -0
  43. package/dist/avatars-EIETXCF3.js +38 -0
  44. package/dist/bid-pricing-5LZFHQTS.js +100 -0
  45. package/dist/bid-pricing-5LZFHQTS.js.map +1 -0
  46. package/dist/brand-CINQG3JG.js +22 -0
  47. package/dist/brief-WAQ2V6Q4.js +538 -0
  48. package/dist/brief-WAQ2V6Q4.js.map +1 -0
  49. package/dist/businesses-PRRYPR7H.js +53 -0
  50. package/dist/campaign-groups-5CMTEJZZ.js +95 -0
  51. package/dist/campaign-writes-4RMPHQCT.js +165 -0
  52. package/dist/campaign-writes-U5LTDTYK.js +170 -0
  53. package/dist/campaigns-4SOLY7OR.js +110 -0
  54. package/dist/campaigns-NFRLFNXI.js +107 -0
  55. package/dist/campaigns-PC7UAVXR.js +109 -0
  56. package/dist/campaigns-TFEQTSO3.js +76 -0
  57. package/dist/canvas-BPACZHNU.js +46 -0
  58. package/dist/capabilities-FNVTPCDT.js +144 -0
  59. package/dist/cards-WHMCSRZX.js +85 -0
  60. package/dist/catalog-RMMECI4Z.js +65 -0
  61. package/dist/catalog-RMMECI4Z.js.map +1 -0
  62. package/dist/catalogs-A7XMEEEP.js +128 -0
  63. package/dist/changes-J67WATHX.js +135 -0
  64. package/dist/chatgpt-4PEWDJKP.js +47 -0
  65. package/dist/chats-S5FCV7YO.js +262 -0
  66. package/dist/check-GCZ2ZBKH.js +104 -0
  67. package/dist/check-GCZ2ZBKH.js.map +1 -0
  68. package/dist/chunk-232YUPUI.js +125 -0
  69. package/dist/chunk-23H4ZJRP.js +136 -0
  70. package/dist/chunk-2DHHL4PU.js +156 -0
  71. package/dist/chunk-2DHHL4PU.js.map +1 -0
  72. package/dist/chunk-2FSEESJU.js +1744 -0
  73. package/dist/chunk-2FSEESJU.js.map +1 -0
  74. package/dist/chunk-3OCSWUHV.js +67 -0
  75. package/dist/chunk-3S5YZWB7.js +601 -0
  76. package/dist/chunk-3S5YZWB7.js.map +1 -0
  77. package/dist/chunk-3UXMQ3K2.js +274 -0
  78. package/dist/chunk-5NS4CNF6.js +1518 -0
  79. package/dist/chunk-5NS4CNF6.js.map +1 -0
  80. package/dist/chunk-5WMTPYKT.js +84 -0
  81. package/dist/chunk-65N4ZPQD.js +26 -0
  82. package/dist/chunk-65PUXMWE.js +167 -0
  83. package/dist/chunk-65PUXMWE.js.map +1 -0
  84. package/dist/chunk-6JWEGFM5.js +174 -0
  85. package/dist/chunk-6KK26F2T.js +46 -0
  86. package/dist/chunk-6KK26F2T.js.map +1 -0
  87. package/dist/chunk-7HJR5M4R.js +8843 -0
  88. package/dist/chunk-7HJR5M4R.js.map +1 -0
  89. package/dist/chunk-7LU7KARN.js +64 -0
  90. package/dist/chunk-7LU7KARN.js.map +1 -0
  91. package/dist/chunk-7RBJ2Z7Z.js +172 -0
  92. package/dist/chunk-7U3V64YT.js +344 -0
  93. package/dist/chunk-7U3V64YT.js.map +1 -0
  94. package/dist/chunk-ABXTGAG7.js +23 -0
  95. package/dist/chunk-ADSNY4KZ.js +399 -0
  96. package/dist/chunk-AHF6TQWB.js +392 -0
  97. package/dist/chunk-AIJBZSZV.js +224 -0
  98. package/dist/chunk-AIJBZSZV.js.map +1 -0
  99. package/dist/chunk-AQ5WISEG.js +98 -0
  100. package/dist/chunk-AS5VL32C.js +131 -0
  101. package/dist/chunk-AS5VL32C.js.map +1 -0
  102. package/dist/chunk-BFRIRZRZ.js +98 -0
  103. package/dist/chunk-BFZS3WHS.js +84 -0
  104. package/dist/chunk-BITS62MF.js +77 -0
  105. package/dist/chunk-BLAHHMPF.js +333 -0
  106. package/dist/chunk-BSEB55E6.js +148 -0
  107. package/dist/chunk-BSEB55E6.js.map +1 -0
  108. package/dist/chunk-C3TTE7GS.js +66 -0
  109. package/dist/chunk-C3TTE7GS.js.map +1 -0
  110. package/dist/chunk-CCIDHU6M.js +169 -0
  111. package/dist/chunk-CM6FCSWN.js +644 -0
  112. package/dist/chunk-CVBKW75S.js +296 -0
  113. package/dist/chunk-CXQRTLSQ.js +159 -0
  114. package/dist/chunk-D4I3KULJ.js +5367 -0
  115. package/dist/chunk-D4I3KULJ.js.map +1 -0
  116. package/dist/chunk-D4LKZJYJ.js +76 -0
  117. package/dist/chunk-D7KR6KXR.js +66 -0
  118. package/dist/chunk-DCTEL4KG.js +592 -0
  119. package/dist/chunk-DF22CTXE.js +225 -0
  120. package/dist/chunk-DF22CTXE.js.map +1 -0
  121. package/dist/chunk-DH5CKOYK.js +103 -0
  122. package/dist/chunk-DMVDVZJK.js +97 -0
  123. package/dist/chunk-DMVDVZJK.js.map +1 -0
  124. package/dist/chunk-DQC4NIJE.js +51 -0
  125. package/dist/chunk-DWX44QL6.js +75 -0
  126. package/dist/chunk-EE72SSB2.js +472 -0
  127. package/dist/chunk-FNA277HP.js +97 -0
  128. package/dist/chunk-FRK7SSEH.js +6306 -0
  129. package/dist/chunk-FRK7SSEH.js.map +1 -0
  130. package/dist/chunk-FU7HJWGM.js +26 -0
  131. package/dist/chunk-GDLQ6SGW.js +46 -0
  132. package/dist/chunk-GEKXIXMG.js +106 -0
  133. package/dist/chunk-GLW7UJLB.js +58 -0
  134. package/dist/chunk-GMSKPGLI.js +3846 -0
  135. package/dist/chunk-GMSKPGLI.js.map +1 -0
  136. package/dist/chunk-H5HDZ7IC.js +139 -0
  137. package/dist/chunk-HJQ7N7FC.js +8661 -0
  138. package/dist/chunk-HJQ7N7FC.js.map +1 -0
  139. package/dist/chunk-I5VZVQBZ.js +35 -0
  140. package/dist/chunk-IC6SDOED.js +45 -0
  141. package/dist/chunk-IDN4FOOP.js +97 -0
  142. package/dist/chunk-IDN4FOOP.js.map +1 -0
  143. package/dist/chunk-IG627WWY.js +23992 -0
  144. package/dist/chunk-IN4G7X6W.js +94 -0
  145. package/dist/chunk-IPLE5K5E.js +188 -0
  146. package/dist/chunk-IWWOGBGA.js +665 -0
  147. package/dist/chunk-JD4SABZC.js +942 -0
  148. package/dist/chunk-JD4SABZC.js.map +1 -0
  149. package/dist/chunk-JFA4R3KS.js +172 -0
  150. package/dist/chunk-JYBLCIRN.js +106 -0
  151. package/dist/chunk-K3TNTBZJ.js +52 -0
  152. package/dist/chunk-KCKC637S.js +122 -0
  153. package/dist/chunk-KCKC637S.js.map +1 -0
  154. package/dist/chunk-KPYDTIAI.js +317 -0
  155. package/dist/chunk-KPYDTIAI.js.map +1 -0
  156. package/dist/chunk-LCW3U4EA.js +25 -0
  157. package/dist/chunk-LD4CHA7U.js +89 -0
  158. package/dist/chunk-LD4CHA7U.js.map +1 -0
  159. package/dist/chunk-LS3A753J.js +225 -0
  160. package/dist/chunk-LS3A753J.js.map +1 -0
  161. package/dist/chunk-MI3JB5KB.js +76 -0
  162. package/dist/chunk-MIOOPOG2.js +547 -0
  163. package/dist/chunk-MJQBXFW6.js +74 -0
  164. package/dist/chunk-MMVLRUMK.js +612 -0
  165. package/dist/chunk-MMVLRUMK.js.map +1 -0
  166. package/dist/chunk-MPACDBH5.js +74 -0
  167. package/dist/chunk-MXWOYFI2.js +544 -0
  168. package/dist/chunk-N5O67GK5.js +215 -0
  169. package/dist/chunk-NCP6RD6A.js +433 -0
  170. package/dist/chunk-NNF4RARY.js +297 -0
  171. package/dist/chunk-NR2OVOTD.js +363 -0
  172. package/dist/chunk-NVGXYF6K.js +846 -0
  173. package/dist/chunk-OP7DNHD2.js +137 -0
  174. package/dist/chunk-ORQKMXHA.js +76 -0
  175. package/dist/chunk-P3TNRS56.js +149 -0
  176. package/dist/chunk-PQTY22FR.js +159 -0
  177. package/dist/chunk-PQTY22FR.js.map +1 -0
  178. package/dist/chunk-Q7YZL7PG.js +494 -0
  179. package/dist/chunk-QABSQADZ.js +56 -0
  180. package/dist/chunk-QVNSVFSD.js +91 -0
  181. package/dist/chunk-QVNSVFSD.js.map +1 -0
  182. package/dist/chunk-QVQKCVP7.js +85 -0
  183. package/dist/chunk-QVQKCVP7.js.map +1 -0
  184. package/dist/chunk-R2TAVQGZ.js +455 -0
  185. package/dist/chunk-R5WNYLG4.js +197 -0
  186. package/dist/chunk-RCSOG2DV.js +142 -0
  187. package/dist/chunk-RCSOG2DV.js.map +1 -0
  188. package/dist/chunk-RD2XXQW3.js +1599 -0
  189. package/dist/chunk-RLS5OPPZ.js +207 -0
  190. package/dist/chunk-RLS5OPPZ.js.map +1 -0
  191. package/dist/chunk-RMLJNHCU.js +346 -0
  192. package/dist/chunk-RTWRNG3E.js +821 -0
  193. package/dist/chunk-RTWRNG3E.js.map +1 -0
  194. package/dist/chunk-S7A34DOA.js +111 -0
  195. package/dist/chunk-SFJW2KED.js +166 -0
  196. package/dist/chunk-SOKVXKRM.js +74 -0
  197. package/dist/chunk-STNCMKL6.js +191 -0
  198. package/dist/chunk-SWL4AAPP.js +320 -0
  199. package/dist/chunk-T6ATGN7Y.js +3187 -0
  200. package/dist/chunk-T6ATGN7Y.js.map +1 -0
  201. package/dist/chunk-TF4PGUO5.js +191 -0
  202. package/dist/chunk-TF4PGUO5.js.map +1 -0
  203. package/dist/chunk-TNOJ6O6B.js +61 -0
  204. package/dist/chunk-TNOJ6O6B.js.map +1 -0
  205. package/dist/chunk-U2452GLO.js +1914 -0
  206. package/dist/chunk-U2452GLO.js.map +1 -0
  207. package/dist/chunk-ULPO72IQ.js +225 -0
  208. package/dist/chunk-UMZIQIWN.js +1079 -0
  209. package/dist/chunk-V7N666PJ.js +19 -0
  210. package/dist/chunk-WL6FWK2Q.js +249 -0
  211. package/dist/chunk-WL6FWK2Q.js.map +1 -0
  212. package/dist/chunk-WNJ5SYAG.js +275 -0
  213. package/dist/chunk-WNSE7N75.js +2123 -0
  214. package/dist/chunk-XDZVBX6L.js +220 -0
  215. package/dist/chunk-XGOEX2VJ.js +55 -0
  216. package/dist/chunk-XUB2EK65.js +57 -0
  217. package/dist/chunk-XUR4QWCS.js +206 -0
  218. package/dist/chunk-XZ4YMCZK.js +66 -0
  219. package/dist/chunk-Y3VRMFGF.js +42 -0
  220. package/dist/chunk-YD7BQDJ6.js +903 -0
  221. package/dist/chunk-ZBV5IV5T.js +843 -0
  222. package/dist/chunk-ZBV5IV5T.js.map +1 -0
  223. package/dist/claim-6MPQD43X.js +197 -0
  224. package/dist/cli.js +41 -41
  225. package/dist/client-WL2FKW4T.js +19 -0
  226. package/dist/code-NXN7QYKU.js +76 -0
  227. package/dist/companies-KRF2K4CA.js +195 -0
  228. package/dist/complete-V433ON5C.js +81 -0
  229. package/dist/config-VOF57KBL.js +88 -0
  230. package/dist/connect-QVIAM3GX.js +42 -0
  231. package/dist/content-KA25YYO3.js +85 -0
  232. package/dist/conversation-VZKBZZGG.js +93 -0
  233. package/dist/conversion-report-REOHVLCI.js +125 -0
  234. package/dist/conversion-upload-command-ASHA6T6H.js +438 -0
  235. package/dist/conversion-writes-JU7Q2MUO.js +120 -0
  236. package/dist/conversions-3ISBR3TS.js +76 -0
  237. package/dist/conversions-ZLC6YTJ5.js +135 -0
  238. package/dist/countries-XGMZWUGP.js +82 -0
  239. package/dist/create-B3QMYSIX.js +132 -0
  240. package/dist/create-IFCCMKFT.js +207 -0
  241. package/dist/create-R5P6JU5A.js +235 -0
  242. package/dist/create-SF6DOGDJ.js +59 -0
  243. package/dist/creatives-KD7MOCR3.js +182 -0
  244. package/dist/creatives-YJ3CXZQC.js +87 -0
  245. package/dist/creatives-YOMFW2UP.js +58 -0
  246. package/dist/creatives-YOMFW2UP.js.map +1 -0
  247. package/dist/credentials-2KJUKBMF.js +287 -0
  248. package/dist/critique-A2OEMGZS.js +227 -0
  249. package/dist/critique-A2OEMGZS.js.map +1 -0
  250. package/dist/critique-JVKJEBAC.js +1451 -0
  251. package/dist/critique-JVKJEBAC.js.map +1 -0
  252. package/dist/crm-GX72E2LT.js +224 -0
  253. package/dist/crm-ZYDNEME5.js +318 -0
  254. package/dist/crop-7UTYG7GS.js +113 -0
  255. package/dist/currency-CGDI2NXI.js +88 -0
  256. package/dist/custom-conversions-YRYE65PU.js +125 -0
  257. package/dist/customers-P4N4NXLJ.js +56 -0
  258. package/dist/decide-TWKH5QQU.js +199 -0
  259. package/dist/delete-2GIIUPA3.js +69 -0
  260. package/dist/delete-AK5IV44E.js +66 -0
  261. package/dist/delete-GLLYPNNB.js +71 -0
  262. package/dist/delete-J7DXPGKD.js +71 -0
  263. package/dist/delete-RS7RQDUX.js +54 -0
  264. package/dist/delete-S4VKH7IS.js +64 -0
  265. package/dist/demographics-IKWN2H3V.js +138 -0
  266. package/dist/describe-5QCPRSIG.js +97 -0
  267. package/dist/describe-L3UC6MIL.js +97 -0
  268. package/dist/dimensions-POH4JXEM.js +101 -0
  269. package/dist/discard-H6DOHJRG.js +66 -0
  270. package/dist/discover-L4TPEKGY.js +172 -0
  271. package/dist/discover-XAJKZCMM.js +93 -0
  272. package/dist/domain-US4KKAXC.js +98 -0
  273. package/dist/download-N4J5WFHD.js +299 -0
  274. package/dist/draft-BIQ3ZAYW.js +306 -0
  275. package/dist/draft-EWDOIXSH.js +233 -0
  276. package/dist/draft-IL37WDST.js +103 -0
  277. package/dist/draft-IZ4YLQRD.js +307 -0
  278. package/dist/draft-KDMYGLWN.js +100 -0
  279. package/dist/draft-OLFQZBWL.js +217 -0
  280. package/dist/draft-R32RFDCI.js +328 -0
  281. package/dist/draft-Y2QJE2NM.js +281 -0
  282. package/dist/engine/index.d.ts +31 -1
  283. package/dist/engine/index.js +15 -14
  284. package/dist/env-5MUVYE2L.js +51 -0
  285. package/dist/experiment-G3FQVAJU.js +1397 -0
  286. package/dist/export-OLDI32HM.js +168 -0
  287. package/dist/extract-PPS6ONQN.js +113 -0
  288. package/dist/facets-JBZQHN3D.js +114 -0
  289. package/dist/favorites-4ELADD3R.js +178 -0
  290. package/dist/feed-XIY5TVDL.js +177 -0
  291. package/dist/feedback-CCU6ECMQ.js +106 -0
  292. package/dist/feedback-CCU6ECMQ.js.map +1 -0
  293. package/dist/feedback-record-JCE3JWG6.js +260 -0
  294. package/dist/feedback-record-JCE3JWG6.js.map +1 -0
  295. package/dist/fetch-GOY6DQRL.js +176 -0
  296. package/dist/fetch-YWUVDMUH.js +139 -0
  297. package/dist/find-EVY4XEIQ.js +134 -0
  298. package/dist/fit-TVQ7RK52.js +62 -0
  299. package/dist/flows-274YPU6I.js +247 -0
  300. package/dist/follow-ZTPZKIMZ.js +94 -0
  301. package/dist/follow-competitors-6QDVQ4VJ.js +112 -0
  302. package/dist/following-PBZLZFGQ.js +113 -0
  303. package/dist/fonts-BMUNDGOZ.js +36 -0
  304. package/dist/forecast-F2CZSIMP.js +168 -0
  305. package/dist/forecast-W5F2MNOV.js +118 -0
  306. package/dist/forecast-W5F2MNOV.js.map +1 -0
  307. package/dist/funding-ULBMKUMW.js +85 -0
  308. package/dist/funnel-LEUXICXU.js +394 -0
  309. package/dist/ga4-2BL5YAYN.js +55 -0
  310. package/dist/generate-4HWNFAH3.js +263 -0
  311. package/dist/get-6RZU4M6W.js +63 -0
  312. package/dist/get-7GCEJ6KG.js +92 -0
  313. package/dist/get-MGDY5JYZ.js +79 -0
  314. package/dist/get-MZWUMHEF.js +61 -0
  315. package/dist/get-OAZZHUZP.js +59 -0
  316. package/dist/get-OHU2N7B7.js +63 -0
  317. package/dist/get-TY6AMFI4.js +56 -0
  318. package/dist/gif-NYZYV5RY.js +102 -0
  319. package/dist/gif-NYZYV5RY.js.map +1 -0
  320. package/dist/google-7STODZQR.js +136 -0
  321. package/dist/google-ZTTE34A4.js +3190 -0
  322. package/dist/google-ads-5ARKO757.js +195 -0
  323. package/dist/group-D5WXNFCP.js +43 -0
  324. package/dist/group-Y5PLETFT.js +43 -0
  325. package/dist/gsc-UU3T2C6B.js +30 -0
  326. package/dist/history-IQ33J5PB.js +67 -0
  327. package/dist/history-SU7VQCDJ.js +133 -0
  328. package/dist/hubspot-TJED44GO.js +779 -0
  329. package/dist/icon-GB7UH5RF.js +137 -0
  330. package/dist/ideas-UTSCGCT6.js +40 -0
  331. package/dist/images-ZMZ4WLYH.js +92 -0
  332. package/dist/images-ZMZ4WLYH.js.map +1 -0
  333. package/dist/improve-U5USRH4G.js +86 -0
  334. package/dist/ingest-DGDNZWEM.js +23 -0
  335. package/dist/ingest-SGBJ3NXX.js +107 -0
  336. package/dist/insights-4HT2NAYP.js +423 -0
  337. package/dist/insights-SQLE5NOJ.js +122 -0
  338. package/dist/inspect-BMQTTKMW.js +189 -0
  339. package/dist/inspiration-XQYHBJY2.js +53 -0
  340. package/dist/intent-LM36WK45.js +95 -0
  341. package/dist/job-CGQHEANB.js +202 -0
  342. package/dist/job-create-SZYJT2NC.js +109 -0
  343. package/dist/job-status-6LAKLCKH.js +74 -0
  344. package/dist/keep-3MJSHWU3.js +78 -0
  345. package/dist/keyword-gap-P652ODHN.js +130 -0
  346. package/dist/keyword-metrics-MQLGGJBT.js +197 -0
  347. package/dist/keywords-for-site-JL6H2YGU.js +128 -0
  348. package/dist/landing-AJO2BPC2.js +28 -0
  349. package/dist/landings-ZLKUP66P.js +151 -0
  350. package/dist/languages-3IJVDS5Z.js +55 -0
  351. package/dist/languages-HL42MI7H.js +40 -0
  352. package/dist/launches-RG2SWEXM.js +19 -0
  353. package/dist/layerize-SJYK6HPD.js +190 -0
  354. package/dist/leads-2XOSAYP4.js +293 -0
  355. package/dist/leads-H6JIWVI6.js +90 -0
  356. package/dist/learn-NJOV2DHD.js +204 -0
  357. package/dist/learn-NJOV2DHD.js.map +1 -0
  358. package/dist/library-Q4OU7VR7.js +109 -0
  359. package/dist/lighthouse-FALRSVQH.js +75 -0
  360. package/dist/line-item-writes-V7AKAHFC.js +208 -0
  361. package/dist/line-items-GAMKVVIQ.js +103 -0
  362. package/dist/link-Z5AQP6JN.js +64 -0
  363. package/dist/linkedin-7F6YVXQL.js +1045 -0
  364. package/dist/linkedin-7F6YVXQL.js.map +1 -0
  365. package/dist/list-2ZTOMTES.js +65 -0
  366. package/dist/list-GK6LNWIW.js +76 -0
  367. package/dist/list-NLGM3QDP.js +303 -0
  368. package/dist/list-RR53EF3O.js +57 -0
  369. package/dist/list-SZH6TH74.js +64 -0
  370. package/dist/list-TB677Q2F.js +50 -0
  371. package/dist/list-VTVRZIYL.js +51 -0
  372. package/dist/list-XZVQWIJN.js +151 -0
  373. package/dist/locations-AEGZ36JH.js +40 -0
  374. package/dist/locations-YA7NZY44.js +67 -0
  375. package/dist/log-JM4VLJE4.js +92 -0
  376. package/dist/logo-YSNUUT33.js +18 -0
  377. package/dist/lookup-RH5N3OWJ.js +22 -0
  378. package/dist/make-IZJ47YZY.js +1310 -0
  379. package/dist/make-IZJ47YZY.js.map +1 -0
  380. package/dist/map-HRLUMCR2.js +433 -0
  381. package/dist/mcp-T6SAG4XB.js +463 -0
  382. package/dist/media-ES2UBGYW.js +15 -0
  383. package/dist/media-MPXEXN4O.js +89 -0
  384. package/dist/media-sources-7AS3274L.js +32 -0
  385. package/dist/members-J5KWXTXY.js +44 -0
  386. package/dist/meme-FMHHKWVU.js +100 -0
  387. package/dist/meme-FMHHKWVU.js.map +1 -0
  388. package/dist/meta-AOIPEDV5.js +69 -0
  389. package/dist/metrics-VDBJ6KL7.js +152 -0
  390. package/dist/models-2DQ5NBMT.js +155 -0
  391. package/dist/normalize-CHZB4QDD.js +141 -0
  392. package/dist/normalize-NR5RS3WR.js +806 -0
  393. package/dist/options-QLXFLESP.js +122 -0
  394. package/dist/organization-KEGKAP4P.js +328 -0
  395. package/dist/output-GWIP6ROX.js +24 -0
  396. package/dist/page-YWGBCN65.js +105 -0
  397. package/dist/pages-FTI44OSH.js +66 -0
  398. package/dist/performance-SPGPGXE5.js +24 -0
  399. package/dist/pinterest-J442QLQS.js +96 -0
  400. package/dist/pixels-6IUB3Y3H.js +60 -0
  401. package/dist/pixels-MBKR4XPX.js +108 -0
  402. package/dist/plan-YPE77T4R.js +207 -0
  403. package/dist/preview-V4YBD45S.js +169 -0
  404. package/dist/profile-S3MXS2VO.js +159 -0
  405. package/dist/promoted-tweet-writes-TRR3KPRJ.js +180 -0
  406. package/dist/promoted-tweets-XRYZNJI2.js +119 -0
  407. package/dist/properties-G3L2OAOL.js +101 -0
  408. package/dist/publish-V5YGMK53.js +341 -0
  409. package/dist/publish-V5YGMK53.js.map +1 -0
  410. package/dist/query-M3IO54U2.js +61 -0
  411. package/dist/query-WCB5W4NW.js +236 -0
  412. package/dist/query-YBS6ZQ75.js +247 -0
  413. package/dist/questionnaire-PAK4DALP.js +93 -0
  414. package/dist/read-LUTB3UOR.js +141 -0
  415. package/dist/reddit-STSECKMZ.js +26 -0
  416. package/dist/refresh-RQ3C2MHI.js +94 -0
  417. package/dist/release-UHGU5WBY.js +60 -0
  418. package/dist/relevant-pages-G6SNC73K.js +99 -0
  419. package/dist/remove-LTKICIIF.js +50 -0
  420. package/dist/remove-X6DNVS67.js +48 -0
  421. package/dist/reopen-BP5ERELB.js +63 -0
  422. package/dist/rerun-NR54OG3M.js +90 -0
  423. package/dist/rerun-NR54OG3M.js.map +1 -0
  424. package/dist/research-GOYMTKZM.js +262 -0
  425. package/dist/research-MBAPL35Y.js +62 -0
  426. package/dist/reset-Q62PEGOU.js +54 -0
  427. package/dist/reset-SJPGSQ7I.js +54 -0
  428. package/dist/resolve-R45W7QEQ.js +121 -0
  429. package/dist/retry-CD2Q2AJN.js +60 -0
  430. package/dist/retry-NBZ7Q6HK.js +62 -0
  431. package/dist/retry-failed-EJBP4236.js +45 -0
  432. package/dist/rules-SZIY67QF.js +96 -0
  433. package/dist/rules-SZIY67QF.js.map +1 -0
  434. package/dist/rules-add-KTLHU3YD.js +462 -0
  435. package/dist/rules-add-KTLHU3YD.js.map +1 -0
  436. package/dist/run-HCJKCEOL.js +66 -0
  437. package/dist/run-IIU2UVQU.js +65 -0
  438. package/dist/scaffold-ad-3VMAP5BF.js +1511 -0
  439. package/dist/scaffold-ad-3VMAP5BF.js.map +1 -0
  440. package/dist/scaffold-static-ad-Z7LO7PKI.js +1005 -0
  441. package/dist/scaffold-static-ad-Z7LO7PKI.js.map +1 -0
  442. package/dist/scaffold-video-SBSSR7TZ.js +883 -0
  443. package/dist/scaffold-video-SBSSR7TZ.js.map +1 -0
  444. package/dist/schedule-BSQHXJ5V.js +61 -0
  445. package/dist/schedule-IDZC6M32.js +66 -0
  446. package/dist/scheduled-agents-MFLMG34I.js +50 -0
  447. package/dist/schema-EFR7NGJG.js +69 -0
  448. package/dist/schema-IWPG3YSN.js +132 -0
  449. package/dist/scrape-J2Y7YZ4Z.js +2241 -0
  450. package/dist/screenshot-K7ZGTVTE.js +102 -0
  451. package/dist/search-CI7LEOOK.js +92 -0
  452. package/dist/search-EGI5K77S.js +174 -0
  453. package/dist/search-I6DRUXBX.js +224 -0
  454. package/dist/search-TTL7VQET.js +26 -0
  455. package/dist/search-VT2KUAH6.js +91 -0
  456. package/dist/search-copy-N2AIJNUH.js +168 -0
  457. package/dist/seeds-EYYQCMGF.js +101 -0
  458. package/dist/select-ON3KZEEK.js +101 -0
  459. package/dist/select-ON3KZEEK.js.map +1 -0
  460. package/dist/sends-RHVFV2XM.js +309 -0
  461. package/dist/sequences-5DUWNSWQ.js +146 -0
  462. package/dist/set-prompt-RHMZ7SFC.js +193 -0
  463. package/dist/set-prompt-RHMZ7SFC.js.map +1 -0
  464. package/dist/setup-links-5ILQNMFZ.js +141 -0
  465. package/dist/shared-NDRFKAH7.js +31 -0
  466. package/dist/site-LBXNVRPE.js +177 -0
  467. package/dist/sitemaps-QKKXMXMV.js +87 -0
  468. package/dist/sites-GRC6CCCK.js +101 -0
  469. package/dist/skills-UML6GSW6.js +47 -0
  470. package/dist/sources-GP4PUTX2.js +454 -0
  471. package/dist/sources-N4UANUHJ.js +30 -0
  472. package/dist/stale-OIOOAP2S.js +71 -0
  473. package/dist/stale-OIOOAP2S.js.map +1 -0
  474. package/dist/stats-RCLQE4HJ.js +34 -0
  475. package/dist/status-GSFMLC6W.js +62 -0
  476. package/dist/sticker-SINY47WT.js +94 -0
  477. package/dist/stock-ECRBD7RP.js +179 -0
  478. package/dist/studio-YB5WXQYC.js +49 -0
  479. package/dist/sync-2MFUI3ME.js +54 -0
  480. package/dist/sync-IE4AAVGY.js +265 -0
  481. package/dist/sync-LIV7FU4N.js +54 -0
  482. package/dist/sync-definition-5JO7QXX3.js +64 -0
  483. package/dist/tag-manager-G3LBQZUL.js +43 -0
  484. package/dist/tags-4JQX7HMT.js +26 -0
  485. package/dist/tags-6RQVXS47.js +224 -0
  486. package/dist/tags-AAIFQ6LS.js +20 -0
  487. package/dist/tags-F355NMIR.js +20 -0
  488. package/dist/tags-ZHCGHGYC.js +20 -0
  489. package/dist/targeting-constants-KEKYU5JQ.js +118 -0
  490. package/dist/targeting-criteria-6FY2JB3V.js +113 -0
  491. package/dist/targets-NI7TR4GV.js +103 -0
  492. package/dist/testimonials-G7CCH7VN.js +32 -0
  493. package/dist/themes-PXDXIKYR.js +94 -0
  494. package/dist/top-companies-YH2ZJEH5.js +108 -0
  495. package/dist/translate-AEOQJ5JN.js +604 -0
  496. package/dist/translate-AEOQJ5JN.js.map +1 -0
  497. package/dist/triggers-WYFM7PAH.js +142 -0
  498. package/dist/tweets-C3QUKS3I.js +123 -0
  499. package/dist/unfollow-ZI5QU7RD.js +46 -0
  500. package/dist/unlink-PTWUSM5B.js +67 -0
  501. package/dist/unstage-7F7JI6HY.js +95 -0
  502. package/dist/unstage-MCM6EZWK.js +85 -0
  503. package/dist/update-2BDIJDHN.js +188 -0
  504. package/dist/update-2BDIJDHN.js.map +1 -0
  505. package/dist/update-643S2MUW.js +63 -0
  506. package/dist/update-GUIP6G3N.js +152 -0
  507. package/dist/update-V6E3CIFD.js +98 -0
  508. package/dist/upload-3YJJ5VID.js +126 -0
  509. package/dist/upload-KO46L76G.js +150 -0
  510. package/dist/upscale-SJ7SCSRS.js +109 -0
  511. package/dist/url-options-LHS4SWWB.js +130 -0
  512. package/dist/url-params-2DKIXKHH.js +98 -0
  513. package/dist/use-6ULEM3WE.js +95 -0
  514. package/dist/validate-PEWGXGCR.js +117 -0
  515. package/dist/validate-PEWGXGCR.js.map +1 -0
  516. package/dist/variant-5TRRSYBB.js +338 -0
  517. package/dist/videos-KEDR4GG3.js +39 -0
  518. package/dist/view-ABSWZMXW.js +121 -0
  519. package/dist/viewer-check-TSH3SAYJ.js +80 -0
  520. package/dist/web-UOGBNAHR.js +140 -0
  521. package/dist/winners-KRISBKOR.js +113 -0
  522. package/dist/winning-ads-SGBI3WHK.js +84 -0
  523. package/dist/write-commands-E7JOB4HX.js +1015 -0
  524. package/dist/write-commands-HCQI4Y27.js +737 -0
  525. package/dist/write-commands-QCI6XBM7.js +206 -0
  526. package/dist/write-commands-RHCCPMAE.js +713 -0
  527. package/dist/x-UNSN57YP.js +47 -0
  528. package/package.json +2 -1
  529. package/dist/account-63NUWSXK.js +0 -49
  530. package/dist/account-IFB6V6GL.js +0 -80
  531. package/dist/account-NCX3VHZT.js +0 -79
  532. package/dist/account-reads-Y3T65EI4.js +0 -218
  533. package/dist/account-writes-7YZ7PTHF.js +0 -66
  534. package/dist/accounts-2MQVGI4I.js +0 -77
  535. package/dist/accounts-66KZC7QI.js +0 -114
  536. package/dist/accounts-MQIYTIAX.js +0 -611
  537. package/dist/accounts-MVEZ2TRL.js +0 -75
  538. package/dist/accounts-T5DCHHZK.js +0 -115
  539. package/dist/actions-LRSHHDV2.js +0 -55
  540. package/dist/active-entities-QWPGPNGE.js +0 -103
  541. package/dist/activecampaign-G4XARU6N.js +0 -935
  542. package/dist/activities-FN7DOE5S.js +0 -74
  543. package/dist/ad-group-writes-JSOCSYYV.js +0 -170
  544. package/dist/ad-groups-UN52WNJN.js +0 -68
  545. package/dist/ad-writes-X23H4HLZ.js +0 -174
  546. package/dist/add-2MVZQJYG.js +0 -302
  547. package/dist/add-7EKI6ZA4.js +0 -97
  548. package/dist/add-ZP47HVHW.js +0 -104
  549. package/dist/add-ZTXN775K.js +0 -105
  550. package/dist/add-accounts-PEJLMYWR.js +0 -91
  551. package/dist/ads-7YYCWZIR.js +0 -40
  552. package/dist/ads-FOJ6P4OA.js +0 -128
  553. package/dist/ads-MKMWS36P.js +0 -113
  554. package/dist/ads-NEJKXB4L.js +0 -77
  555. package/dist/adsets-TIHFYWOU.js +0 -176
  556. package/dist/advertisers-246ZLRFZ.js +0 -120
  557. package/dist/advertisers-E77XAYCQ.js +0 -125
  558. package/dist/analytics-SL56NTIV.js +0 -433
  559. package/dist/analytics-WPYPKM6L.js +0 -1976
  560. package/dist/animate-3H3TL3N6.js +0 -480
  561. package/dist/assign-WGQVY3DW.js +0 -77
  562. package/dist/audience-size-C37XJ6GS.js +0 -94
  563. package/dist/audience-size-C37XJ6GS.js.map +0 -1
  564. package/dist/audiences-BWDG2R2U.js +0 -268
  565. package/dist/audiences-GHMNXDPR.js +0 -85
  566. package/dist/audiences-Q7OCAMAQ.js +0 -78
  567. package/dist/audit-HG53XQJK.js +0 -88
  568. package/dist/audit-LGD4PMAI.js +0 -151
  569. package/dist/autocomplete-PD2EMWRU.js +0 -111
  570. package/dist/avatars-U5KAMVNV.js +0 -38
  571. package/dist/bid-pricing-PP6PV6S4.js +0 -99
  572. package/dist/bid-pricing-PP6PV6S4.js.map +0 -1
  573. package/dist/brand-2JJ45TBO.js +0 -22
  574. package/dist/brief-IMTLJQN2.js +0 -490
  575. package/dist/brief-IMTLJQN2.js.map +0 -1
  576. package/dist/businesses-24QYU6BL.js +0 -53
  577. package/dist/campaign-groups-ZXRHEEGS.js +0 -95
  578. package/dist/campaign-writes-7UHMSPJ3.js +0 -170
  579. package/dist/campaign-writes-WIBYW73K.js +0 -165
  580. package/dist/campaigns-CRRLTN74.js +0 -107
  581. package/dist/campaigns-DJV4W6UP.js +0 -76
  582. package/dist/campaigns-EY3AR4N7.js +0 -109
  583. package/dist/campaigns-WTZBLGVX.js +0 -110
  584. package/dist/canvas-WFYKZYZD.js +0 -46
  585. package/dist/capabilities-IGKT7D4H.js +0 -144
  586. package/dist/cards-IO2Q423H.js +0 -85
  587. package/dist/catalog-X3VJFC74.js +0 -64
  588. package/dist/catalog-X3VJFC74.js.map +0 -1
  589. package/dist/catalogs-2HT3VRRI.js +0 -128
  590. package/dist/changes-AZ6EUVFN.js +0 -135
  591. package/dist/chatgpt-M27OEM7J.js +0 -47
  592. package/dist/chats-OXIYXI4U.js +0 -262
  593. package/dist/chunk-26HCUIW2.js +0 -166
  594. package/dist/chunk-2SDC7WNS.js +0 -817
  595. package/dist/chunk-2SDC7WNS.js.map +0 -1
  596. package/dist/chunk-2SQ6ISRI.js +0 -392
  597. package/dist/chunk-2VRD3HSQ.js +0 -60
  598. package/dist/chunk-2VRD3HSQ.js.map +0 -1
  599. package/dist/chunk-2XQ5HU6D.js +0 -3088
  600. package/dist/chunk-2XQ5HU6D.js.map +0 -1
  601. package/dist/chunk-37P6DTDJ.js +0 -455
  602. package/dist/chunk-3IGY2FWK.js +0 -6667
  603. package/dist/chunk-3IGY2FWK.js.map +0 -1
  604. package/dist/chunk-3UA4THEF.js +0 -76
  605. package/dist/chunk-4EPGI6I2.js +0 -76
  606. package/dist/chunk-4LODOBIN.js +0 -433
  607. package/dist/chunk-5ADTL2LR.js +0 -188
  608. package/dist/chunk-5HABWBQX.js +0 -139
  609. package/dist/chunk-5HYSKH77.js +0 -315
  610. package/dist/chunk-5HYSKH77.js.map +0 -1
  611. package/dist/chunk-5TV4GYP2.js +0 -1830
  612. package/dist/chunk-5TV4GYP2.js.map +0 -1
  613. package/dist/chunk-6M6HUJ55.js +0 -474
  614. package/dist/chunk-6M6HUJ55.js.map +0 -1
  615. package/dist/chunk-6YZNHMPJ.js +0 -74
  616. package/dist/chunk-7ANWFQEA.js +0 -220
  617. package/dist/chunk-7FKRKMGL.js +0 -133
  618. package/dist/chunk-7FKRKMGL.js.map +0 -1
  619. package/dist/chunk-7MADMR5U.js +0 -399
  620. package/dist/chunk-7WZHO6W3.js +0 -225
  621. package/dist/chunk-AAF7HL4I.js +0 -320
  622. package/dist/chunk-ANWV2VTO.js +0 -136
  623. package/dist/chunk-ANYMWCST.js +0 -2122
  624. package/dist/chunk-AQADZOTG.js +0 -137
  625. package/dist/chunk-AQYH6C32.js +0 -544
  626. package/dist/chunk-BODRDUYQ.js +0 -111
  627. package/dist/chunk-BPPT7YVK.js +0 -274
  628. package/dist/chunk-BWAFZSZ4.js +0 -94
  629. package/dist/chunk-CIWI7LHO.js +0 -191
  630. package/dist/chunk-CLST7PLN.js +0 -26
  631. package/dist/chunk-CMNVR6DX.js +0 -486
  632. package/dist/chunk-CMNVR6DX.js.map +0 -1
  633. package/dist/chunk-CPTOHQSJ.js +0 -296
  634. package/dist/chunk-CU2DEMQB.js +0 -1079
  635. package/dist/chunk-D5GVSJBK.js +0 -66
  636. package/dist/chunk-D5Z34AYL.js +0 -297
  637. package/dist/chunk-EBC64WAG.js +0 -74
  638. package/dist/chunk-EMPXRKIM.js +0 -644
  639. package/dist/chunk-EQ74MEJN.js +0 -98
  640. package/dist/chunk-ETFAIX4L.js +0 -74
  641. package/dist/chunk-F3VR6CTH.js +0 -903
  642. package/dist/chunk-FDPBTKXZ.js +0 -25
  643. package/dist/chunk-GAD2NYL4.js +0 -1442
  644. package/dist/chunk-GAD2NYL4.js.map +0 -1
  645. package/dist/chunk-GAJQPQWS.js +0 -6239
  646. package/dist/chunk-GAJQPQWS.js.map +0 -1
  647. package/dist/chunk-GRL25RKS.js +0 -4408
  648. package/dist/chunk-GRL25RKS.js.map +0 -1
  649. package/dist/chunk-GRYP7Y5V.js +0 -103
  650. package/dist/chunk-H4DAEWJQ.js +0 -51
  651. package/dist/chunk-H5CGVMQW.js +0 -472
  652. package/dist/chunk-HDQBILJR.js +0 -45
  653. package/dist/chunk-HH5PFZ7U.js +0 -84
  654. package/dist/chunk-HKR7VCFK.js +0 -42
  655. package/dist/chunk-JQ4PQ2H6.js +0 -197
  656. package/dist/chunk-JRLGQA2T.js +0 -333
  657. package/dist/chunk-JU6X4XFU.js +0 -23
  658. package/dist/chunk-KODTY7PB.js +0 -215
  659. package/dist/chunk-LEGVJCL4.js +0 -56
  660. package/dist/chunk-LKM3FMYC.js +0 -363
  661. package/dist/chunk-LOTQBFUP.js +0 -106
  662. package/dist/chunk-LPBLKGH7.js +0 -106
  663. package/dist/chunk-MICLDQES.js +0 -346
  664. package/dist/chunk-MUHPBWE5.js +0 -35
  665. package/dist/chunk-NFSLRRIE.js +0 -77
  666. package/dist/chunk-NHQTEQPR.js +0 -169
  667. package/dist/chunk-NKXH3I65.js +0 -1743
  668. package/dist/chunk-NKXH3I65.js.map +0 -1
  669. package/dist/chunk-NRRNY3TZ.js +0 -55
  670. package/dist/chunk-O5J5T4ZL.js +0 -111
  671. package/dist/chunk-O5J5T4ZL.js.map +0 -1
  672. package/dist/chunk-O6TGA5HT.js +0 -337
  673. package/dist/chunk-O6TGA5HT.js.map +0 -1
  674. package/dist/chunk-O6VUX3O5.js +0 -52
  675. package/dist/chunk-OST3RA6Q.js +0 -610
  676. package/dist/chunk-OST3RA6Q.js.map +0 -1
  677. package/dist/chunk-PCSBF6GN.js +0 -3151
  678. package/dist/chunk-PCSBF6GN.js.map +0 -1
  679. package/dist/chunk-PLK7V2SJ.js +0 -509
  680. package/dist/chunk-PLK7V2SJ.js.map +0 -1
  681. package/dist/chunk-PWABS2DB.js +0 -172
  682. package/dist/chunk-PXTFT35U.js +0 -547
  683. package/dist/chunk-QBCPZFAV.js +0 -23992
  684. package/dist/chunk-QEZEXMRB.js +0 -96
  685. package/dist/chunk-QEZEXMRB.js.map +0 -1
  686. package/dist/chunk-QGSV3IWT.js +0 -304
  687. package/dist/chunk-QGSV3IWT.js.map +0 -1
  688. package/dist/chunk-QGWCBGEC.js +0 -1599
  689. package/dist/chunk-QKUBK3AD.js +0 -97
  690. package/dist/chunk-QNH5NCLM.js +0 -67
  691. package/dist/chunk-QNLWBJUR.js +0 -58
  692. package/dist/chunk-R4CDO5YH.js +0 -172
  693. package/dist/chunk-RCMK4FM2.js +0 -19
  694. package/dist/chunk-RJFM6TJC.js +0 -76
  695. package/dist/chunk-RKPSE27R.js +0 -98
  696. package/dist/chunk-S6ODQYTC.js +0 -96
  697. package/dist/chunk-S6ODQYTC.js.map +0 -1
  698. package/dist/chunk-SBN5UIQY.js +0 -665
  699. package/dist/chunk-SOK7U4NT.js +0 -592
  700. package/dist/chunk-TLQQV5AY.js +0 -159
  701. package/dist/chunk-TOIFDXCW.js +0 -57
  702. package/dist/chunk-TWXM7HVR.js +0 -149
  703. package/dist/chunk-U6RTBCU7.js +0 -26
  704. package/dist/chunk-UARL36OD.js +0 -846
  705. package/dist/chunk-UDG37PC2.js +0 -174
  706. package/dist/chunk-UMFKMS4U.js +0 -275
  707. package/dist/chunk-UW7PZFWZ.js +0 -75
  708. package/dist/chunk-UWTAQM4W.js +0 -160
  709. package/dist/chunk-UWTAQM4W.js.map +0 -1
  710. package/dist/chunk-VDAYKWVH.js +0 -125
  711. package/dist/chunk-VY5CTURR.js +0 -46
  712. package/dist/chunk-WE6K2VVZ.js +0 -494
  713. package/dist/chunk-WOTX7TNV.js +0 -84
  714. package/dist/chunk-XKA4ZHGX.js +0 -206
  715. package/dist/chunk-XO3GZLWQ.js +0 -5181
  716. package/dist/chunk-XO3GZLWQ.js.map +0 -1
  717. package/dist/chunk-XWB2L3HS.js +0 -66
  718. package/dist/chunk-XYOU3ROP.js +0 -175
  719. package/dist/chunk-XYOU3ROP.js.map +0 -1
  720. package/dist/chunk-YDSF4PXO.js +0 -216
  721. package/dist/chunk-YDSF4PXO.js.map +0 -1
  722. package/dist/chunk-YDWQVAFI.js +0 -92
  723. package/dist/chunk-YDWQVAFI.js.map +0 -1
  724. package/dist/claim-DEQYWQZ4.js +0 -197
  725. package/dist/client-TL7BITWM.js +0 -19
  726. package/dist/code-ORY2WROG.js +0 -76
  727. package/dist/companies-QM5MOLIZ.js +0 -195
  728. package/dist/complete-FM6VSFCT.js +0 -81
  729. package/dist/config-FMDQ323H.js +0 -88
  730. package/dist/connect-YTIE5PRU.js +0 -42
  731. package/dist/content-ZQB6PXGX.js +0 -85
  732. package/dist/conversation-VKWYWPB6.js +0 -93
  733. package/dist/conversion-report-U4UFXSD2.js +0 -125
  734. package/dist/conversion-upload-command-INQX73AK.js +0 -438
  735. package/dist/conversion-writes-MCKROLRA.js +0 -120
  736. package/dist/conversions-OPNDVQ56.js +0 -76
  737. package/dist/conversions-QILFJ34A.js +0 -135
  738. package/dist/countries-AZ3XSZVM.js +0 -82
  739. package/dist/create-A7O5CBUS.js +0 -207
  740. package/dist/create-BEH3DUUP.js +0 -59
  741. package/dist/create-C4LTWKD7.js +0 -132
  742. package/dist/create-LRVA4MSV.js +0 -235
  743. package/dist/creatives-43I65CHD.js +0 -87
  744. package/dist/creatives-DRRWFFOH.js +0 -51
  745. package/dist/creatives-DRRWFFOH.js.map +0 -1
  746. package/dist/creatives-XEKEYLNV.js +0 -182
  747. package/dist/credentials-GJMH4XRU.js +0 -287
  748. package/dist/critique-EJJQVV4D.js +0 -213
  749. package/dist/critique-EJJQVV4D.js.map +0 -1
  750. package/dist/critique-GIJUTKIM.js +0 -1449
  751. package/dist/critique-GIJUTKIM.js.map +0 -1
  752. package/dist/crm-ECMEYPQT.js +0 -318
  753. package/dist/crm-WHK3PL6S.js +0 -224
  754. package/dist/crop-Q2GJLOHE.js +0 -113
  755. package/dist/currency-SVDR5N7L.js +0 -88
  756. package/dist/custom-conversions-5NJNPZKM.js +0 -125
  757. package/dist/customers-XKE3DQR7.js +0 -56
  758. package/dist/decide-PCJTFCWC.js +0 -199
  759. package/dist/delete-7K4KFPUT.js +0 -69
  760. package/dist/delete-APRR2OYC.js +0 -66
  761. package/dist/delete-DTTEHY6E.js +0 -64
  762. package/dist/delete-GOA4Y562.js +0 -71
  763. package/dist/delete-I2SIRTMZ.js +0 -71
  764. package/dist/delete-QCZUGDIJ.js +0 -54
  765. package/dist/demographics-HG7NWA5U.js +0 -138
  766. package/dist/describe-CRTFAH6Y.js +0 -97
  767. package/dist/describe-OAB2FJYK.js +0 -97
  768. package/dist/dimensions-PFGHRZ5T.js +0 -101
  769. package/dist/discard-U3DW6WV3.js +0 -66
  770. package/dist/discover-IOJZYJ6B.js +0 -172
  771. package/dist/discover-R3EUUGRZ.js +0 -93
  772. package/dist/domain-HTF3ARBJ.js +0 -98
  773. package/dist/download-2HGDCPR7.js +0 -299
  774. package/dist/draft-3KLT2YHI.js +0 -233
  775. package/dist/draft-5RL6HZ6A.js +0 -306
  776. package/dist/draft-7O4ABIKK.js +0 -100
  777. package/dist/draft-DK4NZ6PW.js +0 -281
  778. package/dist/draft-GPL2TZXA.js +0 -328
  779. package/dist/draft-KTOZ2AT7.js +0 -217
  780. package/dist/draft-PQGTIABK.js +0 -103
  781. package/dist/draft-SRMHEIRG.js +0 -307
  782. package/dist/env-NPSYSFXD.js +0 -51
  783. package/dist/experiment-V57PLATO.js +0 -1397
  784. package/dist/export-UN2PTCNO.js +0 -168
  785. package/dist/extract-5JOFQZVU.js +0 -113
  786. package/dist/facets-2XQEJNZZ.js +0 -114
  787. package/dist/favorites-4AWW5F5B.js +0 -178
  788. package/dist/feed-AK3IFTAL.js +0 -177
  789. package/dist/feedback-34M4VJ5S.js +0 -66
  790. package/dist/feedback-34M4VJ5S.js.map +0 -1
  791. package/dist/feedback-record-ZINYAVHA.js +0 -175
  792. package/dist/feedback-record-ZINYAVHA.js.map +0 -1
  793. package/dist/fetch-6ALLGDRN.js +0 -139
  794. package/dist/fetch-VYIMA5BI.js +0 -176
  795. package/dist/find-22HWPRFY.js +0 -134
  796. package/dist/fit-S4RO2DMX.js +0 -45
  797. package/dist/flows-ITS573ST.js +0 -247
  798. package/dist/follow-IUW3P6KH.js +0 -94
  799. package/dist/follow-competitors-YDF5WM4K.js +0 -112
  800. package/dist/following-PNOYUSHX.js +0 -113
  801. package/dist/fonts-U4YXUNNZ.js +0 -34
  802. package/dist/forecast-AFBIS6WT.js +0 -104
  803. package/dist/forecast-AFBIS6WT.js.map +0 -1
  804. package/dist/forecast-NHG3UHOP.js +0 -168
  805. package/dist/funding-WSJI56OH.js +0 -85
  806. package/dist/funnel-46QWG5DN.js +0 -394
  807. package/dist/ga4-4W3KJIS5.js +0 -55
  808. package/dist/generate-3MC7WDL2.js +0 -263
  809. package/dist/get-4DJXDO42.js +0 -61
  810. package/dist/get-BK4MBGQF.js +0 -59
  811. package/dist/get-IAJ57JLM.js +0 -79
  812. package/dist/get-MVWVS3YT.js +0 -56
  813. package/dist/get-P5ZTH7RQ.js +0 -63
  814. package/dist/get-PTOW6PVF.js +0 -63
  815. package/dist/get-SR2NWOPT.js +0 -92
  816. package/dist/gif-L6RYCB6L.js +0 -94
  817. package/dist/gif-L6RYCB6L.js.map +0 -1
  818. package/dist/google-EMSAXPVB.js +0 -136
  819. package/dist/google-XE35SF3Z.js +0 -3190
  820. package/dist/google-ads-DYNDLOBO.js +0 -195
  821. package/dist/group-EUYJJ4LI.js +0 -43
  822. package/dist/group-MBRA2QID.js +0 -43
  823. package/dist/gsc-B3NPUNI6.js +0 -30
  824. package/dist/history-4S3YEIPK.js +0 -67
  825. package/dist/history-7HFGP7UI.js +0 -133
  826. package/dist/hubspot-3LWMILTD.js +0 -779
  827. package/dist/icon-4DAXBICB.js +0 -137
  828. package/dist/ideas-RHOV2ZJ6.js +0 -32
  829. package/dist/images-KXEPMLOC.js +0 -90
  830. package/dist/images-KXEPMLOC.js.map +0 -1
  831. package/dist/improve-U2RA5DPI.js +0 -86
  832. package/dist/ingest-H4F5TJC3.js +0 -23
  833. package/dist/ingest-URYQ7BTL.js +0 -107
  834. package/dist/insights-HQGBM6VA.js +0 -423
  835. package/dist/insights-K2CMI3K5.js +0 -122
  836. package/dist/inspect-IPQTTZK3.js +0 -189
  837. package/dist/inspiration-TRMFE64K.js +0 -53
  838. package/dist/intent-2EWV4KXW.js +0 -95
  839. package/dist/job-7GDSDRM4.js +0 -202
  840. package/dist/job-create-PE7G64WC.js +0 -109
  841. package/dist/job-status-LUSCFLZ2.js +0 -74
  842. package/dist/keep-5NFHEILH.js +0 -78
  843. package/dist/keyword-gap-T22T7RN6.js +0 -130
  844. package/dist/keyword-metrics-SLCXHPZS.js +0 -197
  845. package/dist/keywords-for-site-HBQSJKNN.js +0 -128
  846. package/dist/landing-PJJGQM3M.js +0 -28
  847. package/dist/landings-ZR4YMEPV.js +0 -151
  848. package/dist/languages-HXAZNLNU.js +0 -55
  849. package/dist/languages-VLMJOAJN.js +0 -40
  850. package/dist/launches-T5LAIOYS.js +0 -19
  851. package/dist/layerize-24PQKKPB.js +0 -190
  852. package/dist/leads-EDKSVSWP.js +0 -293
  853. package/dist/leads-HXYLSNMB.js +0 -90
  854. package/dist/learn-ZUZ7MEY5.js +0 -203
  855. package/dist/learn-ZUZ7MEY5.js.map +0 -1
  856. package/dist/library-ZHREUZMU.js +0 -109
  857. package/dist/lighthouse-E2NTHAO4.js +0 -75
  858. package/dist/line-item-writes-JNHZFCRM.js +0 -208
  859. package/dist/line-items-WGLNILMH.js +0 -103
  860. package/dist/link-KLFRRU24.js +0 -64
  861. package/dist/linkedin-LPWIZ3SS.js +0 -1009
  862. package/dist/linkedin-LPWIZ3SS.js.map +0 -1
  863. package/dist/list-37F6C6P5.js +0 -57
  864. package/dist/list-7EEDCI3T.js +0 -51
  865. package/dist/list-E3MCY43O.js +0 -303
  866. package/dist/list-E7CJMIGC.js +0 -76
  867. package/dist/list-HA2NITR3.js +0 -50
  868. package/dist/list-MIGWTOQU.js +0 -64
  869. package/dist/list-SW3DF473.js +0 -151
  870. package/dist/list-TG6LBHCV.js +0 -65
  871. package/dist/locations-VYIDAVD4.js +0 -67
  872. package/dist/locations-ZWTDUUGL.js +0 -40
  873. package/dist/log-Y4NIMHFD.js +0 -92
  874. package/dist/logo-SHQJHJK7.js +0 -18
  875. package/dist/lookup-TWSJ7KRT.js +0 -22
  876. package/dist/make-IJN6E4Q7.js +0 -633
  877. package/dist/make-IJN6E4Q7.js.map +0 -1
  878. package/dist/map-DHQTEDUH.js +0 -433
  879. package/dist/mcp-ZHASO273.js +0 -463
  880. package/dist/media-LDVWXWWZ.js +0 -15
  881. package/dist/media-TNB4DLTJ.js +0 -89
  882. package/dist/media-sources-MFBQDZNS.js +0 -32
  883. package/dist/members-HTHOAHPO.js +0 -44
  884. package/dist/meta-RAVCXVZA.js +0 -69
  885. package/dist/metrics-2VB46SDT.js +0 -152
  886. package/dist/models-TYRVCPS2.js +0 -155
  887. package/dist/normalize-PVOL256M.js +0 -141
  888. package/dist/normalize-Q7EN7JIF.js +0 -806
  889. package/dist/options-VDTCTJHY.js +0 -122
  890. package/dist/organization-VC5RO4FS.js +0 -328
  891. package/dist/output-NHMCVVUU.js +0 -24
  892. package/dist/page-5PCVZ7HS.js +0 -105
  893. package/dist/pages-DDXB4NQ4.js +0 -66
  894. package/dist/performance-QOQTL4XM.js +0 -24
  895. package/dist/pinterest-KQYSCTVQ.js +0 -96
  896. package/dist/pixels-GH522EYV.js +0 -108
  897. package/dist/pixels-HJYPX6RR.js +0 -60
  898. package/dist/plan-ZS7SOXL6.js +0 -207
  899. package/dist/preview-W4VKXOCT.js +0 -169
  900. package/dist/profile-FSB4RT55.js +0 -159
  901. package/dist/promoted-tweet-writes-6PI2KR65.js +0 -180
  902. package/dist/promoted-tweets-UJRNHKKO.js +0 -119
  903. package/dist/properties-V74I56UK.js +0 -101
  904. package/dist/publish-R6RINQCF.js +0 -322
  905. package/dist/publish-R6RINQCF.js.map +0 -1
  906. package/dist/query-5F5MBR7H.js +0 -247
  907. package/dist/query-KBXZD4SW.js +0 -61
  908. package/dist/query-SFNCXH4H.js +0 -236
  909. package/dist/questionnaire-JK5JLQXK.js +0 -93
  910. package/dist/read-LGRFU7XB.js +0 -141
  911. package/dist/reddit-QWM5ZQ6P.js +0 -26
  912. package/dist/refresh-ZPF7UH3S.js +0 -94
  913. package/dist/release-BZPK2P3R.js +0 -60
  914. package/dist/relevant-pages-VMNEEEJK.js +0 -99
  915. package/dist/remove-C7ZJYFCG.js +0 -50
  916. package/dist/remove-PIHTPIHM.js +0 -48
  917. package/dist/reopen-6Q7NQX2C.js +0 -63
  918. package/dist/rerun-VRZVJDYS.js +0 -84
  919. package/dist/rerun-VRZVJDYS.js.map +0 -1
  920. package/dist/research-FXQ6X7BY.js +0 -62
  921. package/dist/research-X6O7IID6.js +0 -262
  922. package/dist/reset-FRNQUCL5.js +0 -54
  923. package/dist/reset-NXK6NCOO.js +0 -54
  924. package/dist/resolve-WHI4UP4V.js +0 -121
  925. package/dist/retry-VSFPEXLE.js +0 -62
  926. package/dist/retry-XMTYWCFA.js +0 -60
  927. package/dist/retry-failed-XTYV3QJS.js +0 -45
  928. package/dist/run-HBNAA56X.js +0 -59
  929. package/dist/run-TAASFDQ7.js +0 -66
  930. package/dist/scaffold-ad-BV5WK4IA.js +0 -1548
  931. package/dist/scaffold-ad-BV5WK4IA.js.map +0 -1
  932. package/dist/scaffold-static-ad-IWNJ6GM7.js +0 -971
  933. package/dist/scaffold-static-ad-IWNJ6GM7.js.map +0 -1
  934. package/dist/scaffold-video-JBG7Q45T.js +0 -872
  935. package/dist/scaffold-video-JBG7Q45T.js.map +0 -1
  936. package/dist/schedule-P6GVRZ4E.js +0 -61
  937. package/dist/schedule-WSO7ETS6.js +0 -66
  938. package/dist/scheduled-agents-TYT5BIBQ.js +0 -50
  939. package/dist/schema-DL34A626.js +0 -69
  940. package/dist/schema-O4CMQQGD.js +0 -132
  941. package/dist/scrape-ZG2OWZL4.js +0 -2241
  942. package/dist/screenshot-GJUY7FCW.js +0 -102
  943. package/dist/search-2BJ4OLMX.js +0 -224
  944. package/dist/search-52CSDYJS.js +0 -91
  945. package/dist/search-FHSQYZOC.js +0 -92
  946. package/dist/search-HBFAHH4W.js +0 -174
  947. package/dist/search-ZAY2QV3Y.js +0 -26
  948. package/dist/search-copy-O5AOEBXC.js +0 -168
  949. package/dist/seeds-XY3EZ33U.js +0 -101
  950. package/dist/select-ISR6YEIE.js +0 -94
  951. package/dist/select-ISR6YEIE.js.map +0 -1
  952. package/dist/sends-GECHL3NK.js +0 -309
  953. package/dist/sequences-5BB4S63A.js +0 -146
  954. package/dist/set-prompt-DF7Q6WOF.js +0 -185
  955. package/dist/set-prompt-DF7Q6WOF.js.map +0 -1
  956. package/dist/setup-links-GF2IP4TH.js +0 -141
  957. package/dist/shared-JDIL3BNQ.js +0 -31
  958. package/dist/site-T6V5S5DJ.js +0 -177
  959. package/dist/sitemaps-UQJFRA2W.js +0 -87
  960. package/dist/sites-ZNNEPEGI.js +0 -101
  961. package/dist/skills-WRKEF2Q4.js +0 -47
  962. package/dist/sources-5YUE7KUI.js +0 -30
  963. package/dist/sources-UR3SLKVK.js +0 -454
  964. package/dist/stale-6LZAROBI.js +0 -63
  965. package/dist/stale-6LZAROBI.js.map +0 -1
  966. package/dist/stats-QFBTSDVV.js +0 -34
  967. package/dist/status-FDKP65DR.js +0 -62
  968. package/dist/sticker-2JQUC7XO.js +0 -94
  969. package/dist/stock-W3SNJCBV.js +0 -179
  970. package/dist/studio-2GAZ6QOH.js +0 -49
  971. package/dist/sync-4LHVBFMZ.js +0 -265
  972. package/dist/sync-NAJQQ6NQ.js +0 -54
  973. package/dist/sync-OGFGTKUK.js +0 -54
  974. package/dist/sync-definition-MSQFCXRK.js +0 -54
  975. package/dist/tag-manager-MNGOJ3GC.js +0 -43
  976. package/dist/tags-67KLYTJF.js +0 -224
  977. package/dist/tags-GLHFHQW2.js +0 -20
  978. package/dist/tags-PYLVQEVS.js +0 -20
  979. package/dist/tags-SL4F3LLY.js +0 -20
  980. package/dist/tags-XMRO4WF6.js +0 -26
  981. package/dist/targeting-constants-RQT4GLUA.js +0 -118
  982. package/dist/targeting-criteria-VK3IR6N2.js +0 -113
  983. package/dist/targets-RCM2ZXSU.js +0 -103
  984. package/dist/testimonials-KTHDZ3R5.js +0 -32
  985. package/dist/themes-VVID6Y73.js +0 -94
  986. package/dist/top-companies-MBTTJTRK.js +0 -108
  987. package/dist/translate-I6LZ3UZU.js +0 -598
  988. package/dist/translate-I6LZ3UZU.js.map +0 -1
  989. package/dist/triggers-PDIVJDLP.js +0 -142
  990. package/dist/tweets-L4CXZLKQ.js +0 -123
  991. package/dist/unfollow-5T2CT3EF.js +0 -46
  992. package/dist/unlink-IHEFAFG6.js +0 -67
  993. package/dist/unstage-NEX3EIJX.js +0 -95
  994. package/dist/unstage-NJQAIIPT.js +0 -85
  995. package/dist/update-CYQIGHT4.js +0 -98
  996. package/dist/update-K5MMOE5N.js +0 -155
  997. package/dist/update-K5MMOE5N.js.map +0 -1
  998. package/dist/update-LR7UW5LL.js +0 -63
  999. package/dist/update-P5BTLCGG.js +0 -152
  1000. package/dist/upload-C2K66PR3.js +0 -150
  1001. package/dist/upload-VVB2LTD2.js +0 -126
  1002. package/dist/upscale-SGBB4GWF.js +0 -109
  1003. package/dist/url-options-LUKI4Y46.js +0 -130
  1004. package/dist/url-params-MSRUZOGT.js +0 -98
  1005. package/dist/use-XGTUHBUL.js +0 -95
  1006. package/dist/validate-XMEHRCAG.js +0 -88
  1007. package/dist/validate-XMEHRCAG.js.map +0 -1
  1008. package/dist/variant-DQRDW6IZ.js +0 -338
  1009. package/dist/videos-EQG7AAXT.js +0 -39
  1010. package/dist/view-KJ6YNRXB.js +0 -121
  1011. package/dist/viewer-check-7DZQDGD3.js +0 -68
  1012. package/dist/web-MSYXLOFV.js +0 -140
  1013. package/dist/winners-LD6PFXAS.js +0 -113
  1014. package/dist/winning-ads-VWBU3BNQ.js +0 -84
  1015. package/dist/write-commands-CKMHQ4YY.js +0 -737
  1016. package/dist/write-commands-NW5CC3DP.js +0 -206
  1017. package/dist/write-commands-PK23JVW3.js +0 -1015
  1018. package/dist/write-commands-RLEYECTB.js +0 -713
  1019. package/dist/x-ZSTQLK6Q.js +0 -47
  1020. /package/dist/{account-63NUWSXK.js.map → account-7LUQWY6Q.js.map} +0 -0
  1021. /package/dist/{account-NCX3VHZT.js.map → account-VH2AATWI.js.map} +0 -0
  1022. /package/dist/{account-IFB6V6GL.js.map → account-Z65CPOWE.js.map} +0 -0
  1023. /package/dist/{account-reads-Y3T65EI4.js.map → account-reads-GYI2SS6T.js.map} +0 -0
  1024. /package/dist/{account-writes-7YZ7PTHF.js.map → account-writes-4N2MA2ZR.js.map} +0 -0
  1025. /package/dist/{accounts-T5DCHHZK.js.map → accounts-E4TVYTUR.js.map} +0 -0
  1026. /package/dist/{accounts-66KZC7QI.js.map → accounts-SMB3TNXX.js.map} +0 -0
  1027. /package/dist/{accounts-MQIYTIAX.js.map → accounts-SPLE7URQ.js.map} +0 -0
  1028. /package/dist/{accounts-MVEZ2TRL.js.map → accounts-UA2ZWRN4.js.map} +0 -0
  1029. /package/dist/{accounts-2MQVGI4I.js.map → accounts-XG472YLB.js.map} +0 -0
  1030. /package/dist/{actions-LRSHHDV2.js.map → actions-KQTXBNJU.js.map} +0 -0
  1031. /package/dist/{active-entities-QWPGPNGE.js.map → active-entities-MCL7UEGV.js.map} +0 -0
  1032. /package/dist/{activecampaign-G4XARU6N.js.map → activecampaign-42JXANUA.js.map} +0 -0
  1033. /package/dist/{activities-FN7DOE5S.js.map → activities-IQPJPP4B.js.map} +0 -0
  1034. /package/dist/{ad-group-writes-JSOCSYYV.js.map → ad-group-writes-EUTMPBMK.js.map} +0 -0
  1035. /package/dist/{ad-groups-UN52WNJN.js.map → ad-groups-OVPAI5RM.js.map} +0 -0
  1036. /package/dist/{ad-writes-X23H4HLZ.js.map → ad-writes-DACTYFEO.js.map} +0 -0
  1037. /package/dist/{add-ZTXN775K.js.map → add-5IGUQHVZ.js.map} +0 -0
  1038. /package/dist/{add-7EKI6ZA4.js.map → add-BK5AQI5A.js.map} +0 -0
  1039. /package/dist/{add-ZP47HVHW.js.map → add-C3FQ5D62.js.map} +0 -0
  1040. /package/dist/{add-2MVZQJYG.js.map → add-KTEJCE4L.js.map} +0 -0
  1041. /package/dist/{add-accounts-PEJLMYWR.js.map → add-accounts-CJSV5NPL.js.map} +0 -0
  1042. /package/dist/{ads-MKMWS36P.js.map → ads-HXX2IAFF.js.map} +0 -0
  1043. /package/dist/{ads-NEJKXB4L.js.map → ads-L65JIKCD.js.map} +0 -0
  1044. /package/dist/{ads-FOJ6P4OA.js.map → ads-RAUM6ISF.js.map} +0 -0
  1045. /package/dist/{ads-7YYCWZIR.js.map → ads-WPI3AMSR.js.map} +0 -0
  1046. /package/dist/{adsets-TIHFYWOU.js.map → adsets-LPN6WFGF.js.map} +0 -0
  1047. /package/dist/{advertisers-246ZLRFZ.js.map → advertisers-36HP3AOE.js.map} +0 -0
  1048. /package/dist/{advertisers-E77XAYCQ.js.map → advertisers-DS2NRWKI.js.map} +0 -0
  1049. /package/dist/{analytics-SL56NTIV.js.map → analytics-I4LZCRG2.js.map} +0 -0
  1050. /package/dist/{analytics-WPYPKM6L.js.map → analytics-IFNBT7IM.js.map} +0 -0
  1051. /package/dist/{animate-3H3TL3N6.js.map → animate-3LV3LHXQ.js.map} +0 -0
  1052. /package/dist/{assign-WGQVY3DW.js.map → assign-WBLSZNCO.js.map} +0 -0
  1053. /package/dist/{audiences-GHMNXDPR.js.map → audiences-3LRCLHTQ.js.map} +0 -0
  1054. /package/dist/{audiences-BWDG2R2U.js.map → audiences-RPLVMO4H.js.map} +0 -0
  1055. /package/dist/{audiences-Q7OCAMAQ.js.map → audiences-XEZHACKH.js.map} +0 -0
  1056. /package/dist/{audit-LGD4PMAI.js.map → audit-6AG6BPXQ.js.map} +0 -0
  1057. /package/dist/{audit-HG53XQJK.js.map → audit-YEGQU474.js.map} +0 -0
  1058. /package/dist/{autocomplete-PD2EMWRU.js.map → autocomplete-2QRU7ARD.js.map} +0 -0
  1059. /package/dist/{avatars-U5KAMVNV.js.map → avatars-EIETXCF3.js.map} +0 -0
  1060. /package/dist/{brand-2JJ45TBO.js.map → brand-CINQG3JG.js.map} +0 -0
  1061. /package/dist/{businesses-24QYU6BL.js.map → businesses-PRRYPR7H.js.map} +0 -0
  1062. /package/dist/{campaign-groups-ZXRHEEGS.js.map → campaign-groups-5CMTEJZZ.js.map} +0 -0
  1063. /package/dist/{campaign-writes-WIBYW73K.js.map → campaign-writes-4RMPHQCT.js.map} +0 -0
  1064. /package/dist/{campaign-writes-7UHMSPJ3.js.map → campaign-writes-U5LTDTYK.js.map} +0 -0
  1065. /package/dist/{campaigns-WTZBLGVX.js.map → campaigns-4SOLY7OR.js.map} +0 -0
  1066. /package/dist/{campaigns-CRRLTN74.js.map → campaigns-NFRLFNXI.js.map} +0 -0
  1067. /package/dist/{campaigns-EY3AR4N7.js.map → campaigns-PC7UAVXR.js.map} +0 -0
  1068. /package/dist/{campaigns-DJV4W6UP.js.map → campaigns-TFEQTSO3.js.map} +0 -0
  1069. /package/dist/{canvas-WFYKZYZD.js.map → canvas-BPACZHNU.js.map} +0 -0
  1070. /package/dist/{capabilities-IGKT7D4H.js.map → capabilities-FNVTPCDT.js.map} +0 -0
  1071. /package/dist/{cards-IO2Q423H.js.map → cards-WHMCSRZX.js.map} +0 -0
  1072. /package/dist/{catalogs-2HT3VRRI.js.map → catalogs-A7XMEEEP.js.map} +0 -0
  1073. /package/dist/{changes-AZ6EUVFN.js.map → changes-J67WATHX.js.map} +0 -0
  1074. /package/dist/{chatgpt-M27OEM7J.js.map → chatgpt-4PEWDJKP.js.map} +0 -0
  1075. /package/dist/{chats-OXIYXI4U.js.map → chats-S5FCV7YO.js.map} +0 -0
  1076. /package/dist/{chunk-VDAYKWVH.js.map → chunk-232YUPUI.js.map} +0 -0
  1077. /package/dist/{chunk-ANWV2VTO.js.map → chunk-23H4ZJRP.js.map} +0 -0
  1078. /package/dist/{chunk-QNH5NCLM.js.map → chunk-3OCSWUHV.js.map} +0 -0
  1079. /package/dist/{chunk-BPPT7YVK.js.map → chunk-3UXMQ3K2.js.map} +0 -0
  1080. /package/dist/{chunk-HH5PFZ7U.js.map → chunk-5WMTPYKT.js.map} +0 -0
  1081. /package/dist/{chunk-U6RTBCU7.js.map → chunk-65N4ZPQD.js.map} +0 -0
  1082. /package/dist/{chunk-UDG37PC2.js.map → chunk-6JWEGFM5.js.map} +0 -0
  1083. /package/dist/{chunk-PWABS2DB.js.map → chunk-7RBJ2Z7Z.js.map} +0 -0
  1084. /package/dist/{chunk-JU6X4XFU.js.map → chunk-ABXTGAG7.js.map} +0 -0
  1085. /package/dist/{chunk-7MADMR5U.js.map → chunk-ADSNY4KZ.js.map} +0 -0
  1086. /package/dist/{chunk-2SQ6ISRI.js.map → chunk-AHF6TQWB.js.map} +0 -0
  1087. /package/dist/{chunk-RKPSE27R.js.map → chunk-AQ5WISEG.js.map} +0 -0
  1088. /package/dist/{chunk-EQ74MEJN.js.map → chunk-BFRIRZRZ.js.map} +0 -0
  1089. /package/dist/{chunk-WOTX7TNV.js.map → chunk-BFZS3WHS.js.map} +0 -0
  1090. /package/dist/{chunk-NFSLRRIE.js.map → chunk-BITS62MF.js.map} +0 -0
  1091. /package/dist/{chunk-JRLGQA2T.js.map → chunk-BLAHHMPF.js.map} +0 -0
  1092. /package/dist/{chunk-NHQTEQPR.js.map → chunk-CCIDHU6M.js.map} +0 -0
  1093. /package/dist/{chunk-EMPXRKIM.js.map → chunk-CM6FCSWN.js.map} +0 -0
  1094. /package/dist/{chunk-CPTOHQSJ.js.map → chunk-CVBKW75S.js.map} +0 -0
  1095. /package/dist/{chunk-TLQQV5AY.js.map → chunk-CXQRTLSQ.js.map} +0 -0
  1096. /package/dist/{chunk-4EPGI6I2.js.map → chunk-D4LKZJYJ.js.map} +0 -0
  1097. /package/dist/{chunk-D5GVSJBK.js.map → chunk-D7KR6KXR.js.map} +0 -0
  1098. /package/dist/{chunk-SOK7U4NT.js.map → chunk-DCTEL4KG.js.map} +0 -0
  1099. /package/dist/{chunk-GRYP7Y5V.js.map → chunk-DH5CKOYK.js.map} +0 -0
  1100. /package/dist/{chunk-H4DAEWJQ.js.map → chunk-DQC4NIJE.js.map} +0 -0
  1101. /package/dist/{chunk-UW7PZFWZ.js.map → chunk-DWX44QL6.js.map} +0 -0
  1102. /package/dist/{chunk-H5CGVMQW.js.map → chunk-EE72SSB2.js.map} +0 -0
  1103. /package/dist/{chunk-QKUBK3AD.js.map → chunk-FNA277HP.js.map} +0 -0
  1104. /package/dist/{chunk-CLST7PLN.js.map → chunk-FU7HJWGM.js.map} +0 -0
  1105. /package/dist/{chunk-VY5CTURR.js.map → chunk-GDLQ6SGW.js.map} +0 -0
  1106. /package/dist/{chunk-LPBLKGH7.js.map → chunk-GEKXIXMG.js.map} +0 -0
  1107. /package/dist/{chunk-QNLWBJUR.js.map → chunk-GLW7UJLB.js.map} +0 -0
  1108. /package/dist/{chunk-5HABWBQX.js.map → chunk-H5HDZ7IC.js.map} +0 -0
  1109. /package/dist/{chunk-MUHPBWE5.js.map → chunk-I5VZVQBZ.js.map} +0 -0
  1110. /package/dist/{chunk-HDQBILJR.js.map → chunk-IC6SDOED.js.map} +0 -0
  1111. /package/dist/{chunk-QBCPZFAV.js.map → chunk-IG627WWY.js.map} +0 -0
  1112. /package/dist/{chunk-BWAFZSZ4.js.map → chunk-IN4G7X6W.js.map} +0 -0
  1113. /package/dist/{chunk-5ADTL2LR.js.map → chunk-IPLE5K5E.js.map} +0 -0
  1114. /package/dist/{chunk-SBN5UIQY.js.map → chunk-IWWOGBGA.js.map} +0 -0
  1115. /package/dist/{chunk-R4CDO5YH.js.map → chunk-JFA4R3KS.js.map} +0 -0
  1116. /package/dist/{chunk-LOTQBFUP.js.map → chunk-JYBLCIRN.js.map} +0 -0
  1117. /package/dist/{chunk-O6VUX3O5.js.map → chunk-K3TNTBZJ.js.map} +0 -0
  1118. /package/dist/{chunk-FDPBTKXZ.js.map → chunk-LCW3U4EA.js.map} +0 -0
  1119. /package/dist/{chunk-RJFM6TJC.js.map → chunk-MI3JB5KB.js.map} +0 -0
  1120. /package/dist/{chunk-PXTFT35U.js.map → chunk-MIOOPOG2.js.map} +0 -0
  1121. /package/dist/{chunk-EBC64WAG.js.map → chunk-MJQBXFW6.js.map} +0 -0
  1122. /package/dist/{chunk-ETFAIX4L.js.map → chunk-MPACDBH5.js.map} +0 -0
  1123. /package/dist/{chunk-AQYH6C32.js.map → chunk-MXWOYFI2.js.map} +0 -0
  1124. /package/dist/{chunk-KODTY7PB.js.map → chunk-N5O67GK5.js.map} +0 -0
  1125. /package/dist/{chunk-4LODOBIN.js.map → chunk-NCP6RD6A.js.map} +0 -0
  1126. /package/dist/{chunk-D5Z34AYL.js.map → chunk-NNF4RARY.js.map} +0 -0
  1127. /package/dist/{chunk-LKM3FMYC.js.map → chunk-NR2OVOTD.js.map} +0 -0
  1128. /package/dist/{chunk-UARL36OD.js.map → chunk-NVGXYF6K.js.map} +0 -0
  1129. /package/dist/{chunk-AQADZOTG.js.map → chunk-OP7DNHD2.js.map} +0 -0
  1130. /package/dist/{chunk-3UA4THEF.js.map → chunk-ORQKMXHA.js.map} +0 -0
  1131. /package/dist/{chunk-TWXM7HVR.js.map → chunk-P3TNRS56.js.map} +0 -0
  1132. /package/dist/{chunk-WE6K2VVZ.js.map → chunk-Q7YZL7PG.js.map} +0 -0
  1133. /package/dist/{chunk-LEGVJCL4.js.map → chunk-QABSQADZ.js.map} +0 -0
  1134. /package/dist/{chunk-37P6DTDJ.js.map → chunk-R2TAVQGZ.js.map} +0 -0
  1135. /package/dist/{chunk-JQ4PQ2H6.js.map → chunk-R5WNYLG4.js.map} +0 -0
  1136. /package/dist/{chunk-QGWCBGEC.js.map → chunk-RD2XXQW3.js.map} +0 -0
  1137. /package/dist/{chunk-MICLDQES.js.map → chunk-RMLJNHCU.js.map} +0 -0
  1138. /package/dist/{chunk-BODRDUYQ.js.map → chunk-S7A34DOA.js.map} +0 -0
  1139. /package/dist/{chunk-26HCUIW2.js.map → chunk-SFJW2KED.js.map} +0 -0
  1140. /package/dist/{chunk-6YZNHMPJ.js.map → chunk-SOKVXKRM.js.map} +0 -0
  1141. /package/dist/{chunk-CIWI7LHO.js.map → chunk-STNCMKL6.js.map} +0 -0
  1142. /package/dist/{chunk-AAF7HL4I.js.map → chunk-SWL4AAPP.js.map} +0 -0
  1143. /package/dist/{chunk-7WZHO6W3.js.map → chunk-ULPO72IQ.js.map} +0 -0
  1144. /package/dist/{chunk-CU2DEMQB.js.map → chunk-UMZIQIWN.js.map} +0 -0
  1145. /package/dist/{chunk-RCMK4FM2.js.map → chunk-V7N666PJ.js.map} +0 -0
  1146. /package/dist/{chunk-UMFKMS4U.js.map → chunk-WNJ5SYAG.js.map} +0 -0
  1147. /package/dist/{chunk-ANYMWCST.js.map → chunk-WNSE7N75.js.map} +0 -0
  1148. /package/dist/{chunk-7ANWFQEA.js.map → chunk-XDZVBX6L.js.map} +0 -0
  1149. /package/dist/{chunk-NRRNY3TZ.js.map → chunk-XGOEX2VJ.js.map} +0 -0
  1150. /package/dist/{chunk-TOIFDXCW.js.map → chunk-XUB2EK65.js.map} +0 -0
  1151. /package/dist/{chunk-XKA4ZHGX.js.map → chunk-XUR4QWCS.js.map} +0 -0
  1152. /package/dist/{chunk-XWB2L3HS.js.map → chunk-XZ4YMCZK.js.map} +0 -0
  1153. /package/dist/{chunk-HKR7VCFK.js.map → chunk-Y3VRMFGF.js.map} +0 -0
  1154. /package/dist/{chunk-F3VR6CTH.js.map → chunk-YD7BQDJ6.js.map} +0 -0
  1155. /package/dist/{claim-DEQYWQZ4.js.map → claim-6MPQD43X.js.map} +0 -0
  1156. /package/dist/{client-TL7BITWM.js.map → client-WL2FKW4T.js.map} +0 -0
  1157. /package/dist/{code-ORY2WROG.js.map → code-NXN7QYKU.js.map} +0 -0
  1158. /package/dist/{companies-QM5MOLIZ.js.map → companies-KRF2K4CA.js.map} +0 -0
  1159. /package/dist/{complete-FM6VSFCT.js.map → complete-V433ON5C.js.map} +0 -0
  1160. /package/dist/{config-FMDQ323H.js.map → config-VOF57KBL.js.map} +0 -0
  1161. /package/dist/{connect-YTIE5PRU.js.map → connect-QVIAM3GX.js.map} +0 -0
  1162. /package/dist/{content-ZQB6PXGX.js.map → content-KA25YYO3.js.map} +0 -0
  1163. /package/dist/{conversation-VKWYWPB6.js.map → conversation-VZKBZZGG.js.map} +0 -0
  1164. /package/dist/{conversion-report-U4UFXSD2.js.map → conversion-report-REOHVLCI.js.map} +0 -0
  1165. /package/dist/{conversion-upload-command-INQX73AK.js.map → conversion-upload-command-ASHA6T6H.js.map} +0 -0
  1166. /package/dist/{conversion-writes-MCKROLRA.js.map → conversion-writes-JU7Q2MUO.js.map} +0 -0
  1167. /package/dist/{conversions-OPNDVQ56.js.map → conversions-3ISBR3TS.js.map} +0 -0
  1168. /package/dist/{conversions-QILFJ34A.js.map → conversions-ZLC6YTJ5.js.map} +0 -0
  1169. /package/dist/{countries-AZ3XSZVM.js.map → countries-XGMZWUGP.js.map} +0 -0
  1170. /package/dist/{create-C4LTWKD7.js.map → create-B3QMYSIX.js.map} +0 -0
  1171. /package/dist/{create-A7O5CBUS.js.map → create-IFCCMKFT.js.map} +0 -0
  1172. /package/dist/{create-LRVA4MSV.js.map → create-R5P6JU5A.js.map} +0 -0
  1173. /package/dist/{create-BEH3DUUP.js.map → create-SF6DOGDJ.js.map} +0 -0
  1174. /package/dist/{creatives-XEKEYLNV.js.map → creatives-KD7MOCR3.js.map} +0 -0
  1175. /package/dist/{creatives-43I65CHD.js.map → creatives-YJ3CXZQC.js.map} +0 -0
  1176. /package/dist/{credentials-GJMH4XRU.js.map → credentials-2KJUKBMF.js.map} +0 -0
  1177. /package/dist/{crm-WHK3PL6S.js.map → crm-GX72E2LT.js.map} +0 -0
  1178. /package/dist/{crm-ECMEYPQT.js.map → crm-ZYDNEME5.js.map} +0 -0
  1179. /package/dist/{crop-Q2GJLOHE.js.map → crop-7UTYG7GS.js.map} +0 -0
  1180. /package/dist/{currency-SVDR5N7L.js.map → currency-CGDI2NXI.js.map} +0 -0
  1181. /package/dist/{custom-conversions-5NJNPZKM.js.map → custom-conversions-YRYE65PU.js.map} +0 -0
  1182. /package/dist/{customers-XKE3DQR7.js.map → customers-P4N4NXLJ.js.map} +0 -0
  1183. /package/dist/{decide-PCJTFCWC.js.map → decide-TWKH5QQU.js.map} +0 -0
  1184. /package/dist/{delete-7K4KFPUT.js.map → delete-2GIIUPA3.js.map} +0 -0
  1185. /package/dist/{delete-APRR2OYC.js.map → delete-AK5IV44E.js.map} +0 -0
  1186. /package/dist/{delete-GOA4Y562.js.map → delete-GLLYPNNB.js.map} +0 -0
  1187. /package/dist/{delete-I2SIRTMZ.js.map → delete-J7DXPGKD.js.map} +0 -0
  1188. /package/dist/{delete-QCZUGDIJ.js.map → delete-RS7RQDUX.js.map} +0 -0
  1189. /package/dist/{delete-DTTEHY6E.js.map → delete-S4VKH7IS.js.map} +0 -0
  1190. /package/dist/{demographics-HG7NWA5U.js.map → demographics-IKWN2H3V.js.map} +0 -0
  1191. /package/dist/{describe-CRTFAH6Y.js.map → describe-5QCPRSIG.js.map} +0 -0
  1192. /package/dist/{describe-OAB2FJYK.js.map → describe-L3UC6MIL.js.map} +0 -0
  1193. /package/dist/{dimensions-PFGHRZ5T.js.map → dimensions-POH4JXEM.js.map} +0 -0
  1194. /package/dist/{discard-U3DW6WV3.js.map → discard-H6DOHJRG.js.map} +0 -0
  1195. /package/dist/{discover-IOJZYJ6B.js.map → discover-L4TPEKGY.js.map} +0 -0
  1196. /package/dist/{discover-R3EUUGRZ.js.map → discover-XAJKZCMM.js.map} +0 -0
  1197. /package/dist/{domain-HTF3ARBJ.js.map → domain-US4KKAXC.js.map} +0 -0
  1198. /package/dist/{download-2HGDCPR7.js.map → download-N4J5WFHD.js.map} +0 -0
  1199. /package/dist/{draft-5RL6HZ6A.js.map → draft-BIQ3ZAYW.js.map} +0 -0
  1200. /package/dist/{draft-3KLT2YHI.js.map → draft-EWDOIXSH.js.map} +0 -0
  1201. /package/dist/{draft-PQGTIABK.js.map → draft-IL37WDST.js.map} +0 -0
  1202. /package/dist/{draft-SRMHEIRG.js.map → draft-IZ4YLQRD.js.map} +0 -0
  1203. /package/dist/{draft-7O4ABIKK.js.map → draft-KDMYGLWN.js.map} +0 -0
  1204. /package/dist/{draft-KTOZ2AT7.js.map → draft-OLFQZBWL.js.map} +0 -0
  1205. /package/dist/{draft-GPL2TZXA.js.map → draft-R32RFDCI.js.map} +0 -0
  1206. /package/dist/{draft-DK4NZ6PW.js.map → draft-Y2QJE2NM.js.map} +0 -0
  1207. /package/dist/{env-NPSYSFXD.js.map → env-5MUVYE2L.js.map} +0 -0
  1208. /package/dist/{experiment-V57PLATO.js.map → experiment-G3FQVAJU.js.map} +0 -0
  1209. /package/dist/{export-UN2PTCNO.js.map → export-OLDI32HM.js.map} +0 -0
  1210. /package/dist/{extract-5JOFQZVU.js.map → extract-PPS6ONQN.js.map} +0 -0
  1211. /package/dist/{facets-2XQEJNZZ.js.map → facets-JBZQHN3D.js.map} +0 -0
  1212. /package/dist/{favorites-4AWW5F5B.js.map → favorites-4ELADD3R.js.map} +0 -0
  1213. /package/dist/{feed-AK3IFTAL.js.map → feed-XIY5TVDL.js.map} +0 -0
  1214. /package/dist/{fetch-VYIMA5BI.js.map → fetch-GOY6DQRL.js.map} +0 -0
  1215. /package/dist/{fetch-6ALLGDRN.js.map → fetch-YWUVDMUH.js.map} +0 -0
  1216. /package/dist/{find-22HWPRFY.js.map → find-EVY4XEIQ.js.map} +0 -0
  1217. /package/dist/{fit-S4RO2DMX.js.map → fit-TVQ7RK52.js.map} +0 -0
  1218. /package/dist/{flows-ITS573ST.js.map → flows-274YPU6I.js.map} +0 -0
  1219. /package/dist/{follow-IUW3P6KH.js.map → follow-ZTPZKIMZ.js.map} +0 -0
  1220. /package/dist/{follow-competitors-YDF5WM4K.js.map → follow-competitors-6QDVQ4VJ.js.map} +0 -0
  1221. /package/dist/{following-PNOYUSHX.js.map → following-PBZLZFGQ.js.map} +0 -0
  1222. /package/dist/{fonts-U4YXUNNZ.js.map → fonts-BMUNDGOZ.js.map} +0 -0
  1223. /package/dist/{forecast-NHG3UHOP.js.map → forecast-F2CZSIMP.js.map} +0 -0
  1224. /package/dist/{funding-WSJI56OH.js.map → funding-ULBMKUMW.js.map} +0 -0
  1225. /package/dist/{funnel-46QWG5DN.js.map → funnel-LEUXICXU.js.map} +0 -0
  1226. /package/dist/{ga4-4W3KJIS5.js.map → ga4-2BL5YAYN.js.map} +0 -0
  1227. /package/dist/{generate-3MC7WDL2.js.map → generate-4HWNFAH3.js.map} +0 -0
  1228. /package/dist/{get-P5ZTH7RQ.js.map → get-6RZU4M6W.js.map} +0 -0
  1229. /package/dist/{get-SR2NWOPT.js.map → get-7GCEJ6KG.js.map} +0 -0
  1230. /package/dist/{get-IAJ57JLM.js.map → get-MGDY5JYZ.js.map} +0 -0
  1231. /package/dist/{get-4DJXDO42.js.map → get-MZWUMHEF.js.map} +0 -0
  1232. /package/dist/{get-BK4MBGQF.js.map → get-OAZZHUZP.js.map} +0 -0
  1233. /package/dist/{get-PTOW6PVF.js.map → get-OHU2N7B7.js.map} +0 -0
  1234. /package/dist/{get-MVWVS3YT.js.map → get-TY6AMFI4.js.map} +0 -0
  1235. /package/dist/{google-EMSAXPVB.js.map → google-7STODZQR.js.map} +0 -0
  1236. /package/dist/{google-XE35SF3Z.js.map → google-ZTTE34A4.js.map} +0 -0
  1237. /package/dist/{google-ads-DYNDLOBO.js.map → google-ads-5ARKO757.js.map} +0 -0
  1238. /package/dist/{group-MBRA2QID.js.map → group-D5WXNFCP.js.map} +0 -0
  1239. /package/dist/{group-EUYJJ4LI.js.map → group-Y5PLETFT.js.map} +0 -0
  1240. /package/dist/{gsc-B3NPUNI6.js.map → gsc-UU3T2C6B.js.map} +0 -0
  1241. /package/dist/{history-4S3YEIPK.js.map → history-IQ33J5PB.js.map} +0 -0
  1242. /package/dist/{history-7HFGP7UI.js.map → history-SU7VQCDJ.js.map} +0 -0
  1243. /package/dist/{hubspot-3LWMILTD.js.map → hubspot-TJED44GO.js.map} +0 -0
  1244. /package/dist/{icon-4DAXBICB.js.map → icon-GB7UH5RF.js.map} +0 -0
  1245. /package/dist/{ideas-RHOV2ZJ6.js.map → ideas-UTSCGCT6.js.map} +0 -0
  1246. /package/dist/{improve-U2RA5DPI.js.map → improve-U5USRH4G.js.map} +0 -0
  1247. /package/dist/{ingest-H4F5TJC3.js.map → ingest-DGDNZWEM.js.map} +0 -0
  1248. /package/dist/{ingest-URYQ7BTL.js.map → ingest-SGBJ3NXX.js.map} +0 -0
  1249. /package/dist/{insights-HQGBM6VA.js.map → insights-4HT2NAYP.js.map} +0 -0
  1250. /package/dist/{insights-K2CMI3K5.js.map → insights-SQLE5NOJ.js.map} +0 -0
  1251. /package/dist/{inspect-IPQTTZK3.js.map → inspect-BMQTTKMW.js.map} +0 -0
  1252. /package/dist/{inspiration-TRMFE64K.js.map → inspiration-XQYHBJY2.js.map} +0 -0
  1253. /package/dist/{intent-2EWV4KXW.js.map → intent-LM36WK45.js.map} +0 -0
  1254. /package/dist/{job-7GDSDRM4.js.map → job-CGQHEANB.js.map} +0 -0
  1255. /package/dist/{job-create-PE7G64WC.js.map → job-create-SZYJT2NC.js.map} +0 -0
  1256. /package/dist/{job-status-LUSCFLZ2.js.map → job-status-6LAKLCKH.js.map} +0 -0
  1257. /package/dist/{keep-5NFHEILH.js.map → keep-3MJSHWU3.js.map} +0 -0
  1258. /package/dist/{keyword-gap-T22T7RN6.js.map → keyword-gap-P652ODHN.js.map} +0 -0
  1259. /package/dist/{keyword-metrics-SLCXHPZS.js.map → keyword-metrics-MQLGGJBT.js.map} +0 -0
  1260. /package/dist/{keywords-for-site-HBQSJKNN.js.map → keywords-for-site-JL6H2YGU.js.map} +0 -0
  1261. /package/dist/{landing-PJJGQM3M.js.map → landing-AJO2BPC2.js.map} +0 -0
  1262. /package/dist/{landings-ZR4YMEPV.js.map → landings-ZLKUP66P.js.map} +0 -0
  1263. /package/dist/{languages-HXAZNLNU.js.map → languages-3IJVDS5Z.js.map} +0 -0
  1264. /package/dist/{languages-VLMJOAJN.js.map → languages-HL42MI7H.js.map} +0 -0
  1265. /package/dist/{launches-T5LAIOYS.js.map → launches-RG2SWEXM.js.map} +0 -0
  1266. /package/dist/{layerize-24PQKKPB.js.map → layerize-SJYK6HPD.js.map} +0 -0
  1267. /package/dist/{leads-EDKSVSWP.js.map → leads-2XOSAYP4.js.map} +0 -0
  1268. /package/dist/{leads-HXYLSNMB.js.map → leads-H6JIWVI6.js.map} +0 -0
  1269. /package/dist/{library-ZHREUZMU.js.map → library-Q4OU7VR7.js.map} +0 -0
  1270. /package/dist/{lighthouse-E2NTHAO4.js.map → lighthouse-FALRSVQH.js.map} +0 -0
  1271. /package/dist/{line-item-writes-JNHZFCRM.js.map → line-item-writes-V7AKAHFC.js.map} +0 -0
  1272. /package/dist/{line-items-WGLNILMH.js.map → line-items-GAMKVVIQ.js.map} +0 -0
  1273. /package/dist/{link-KLFRRU24.js.map → link-Z5AQP6JN.js.map} +0 -0
  1274. /package/dist/{list-TG6LBHCV.js.map → list-2ZTOMTES.js.map} +0 -0
  1275. /package/dist/{list-E7CJMIGC.js.map → list-GK6LNWIW.js.map} +0 -0
  1276. /package/dist/{list-E3MCY43O.js.map → list-NLGM3QDP.js.map} +0 -0
  1277. /package/dist/{list-37F6C6P5.js.map → list-RR53EF3O.js.map} +0 -0
  1278. /package/dist/{list-MIGWTOQU.js.map → list-SZH6TH74.js.map} +0 -0
  1279. /package/dist/{list-HA2NITR3.js.map → list-TB677Q2F.js.map} +0 -0
  1280. /package/dist/{list-7EEDCI3T.js.map → list-VTVRZIYL.js.map} +0 -0
  1281. /package/dist/{list-SW3DF473.js.map → list-XZVQWIJN.js.map} +0 -0
  1282. /package/dist/{locations-ZWTDUUGL.js.map → locations-AEGZ36JH.js.map} +0 -0
  1283. /package/dist/{locations-VYIDAVD4.js.map → locations-YA7NZY44.js.map} +0 -0
  1284. /package/dist/{log-Y4NIMHFD.js.map → log-JM4VLJE4.js.map} +0 -0
  1285. /package/dist/{logo-SHQJHJK7.js.map → logo-YSNUUT33.js.map} +0 -0
  1286. /package/dist/{lookup-TWSJ7KRT.js.map → lookup-RH5N3OWJ.js.map} +0 -0
  1287. /package/dist/{map-DHQTEDUH.js.map → map-HRLUMCR2.js.map} +0 -0
  1288. /package/dist/{mcp-ZHASO273.js.map → mcp-T6SAG4XB.js.map} +0 -0
  1289. /package/dist/{media-LDVWXWWZ.js.map → media-ES2UBGYW.js.map} +0 -0
  1290. /package/dist/{media-TNB4DLTJ.js.map → media-MPXEXN4O.js.map} +0 -0
  1291. /package/dist/{media-sources-MFBQDZNS.js.map → media-sources-7AS3274L.js.map} +0 -0
  1292. /package/dist/{members-HTHOAHPO.js.map → members-J5KWXTXY.js.map} +0 -0
  1293. /package/dist/{meta-RAVCXVZA.js.map → meta-AOIPEDV5.js.map} +0 -0
  1294. /package/dist/{metrics-2VB46SDT.js.map → metrics-VDBJ6KL7.js.map} +0 -0
  1295. /package/dist/{models-TYRVCPS2.js.map → models-2DQ5NBMT.js.map} +0 -0
  1296. /package/dist/{normalize-PVOL256M.js.map → normalize-CHZB4QDD.js.map} +0 -0
  1297. /package/dist/{normalize-Q7EN7JIF.js.map → normalize-NR5RS3WR.js.map} +0 -0
  1298. /package/dist/{options-VDTCTJHY.js.map → options-QLXFLESP.js.map} +0 -0
  1299. /package/dist/{organization-VC5RO4FS.js.map → organization-KEGKAP4P.js.map} +0 -0
  1300. /package/dist/{output-NHMCVVUU.js.map → output-GWIP6ROX.js.map} +0 -0
  1301. /package/dist/{page-5PCVZ7HS.js.map → page-YWGBCN65.js.map} +0 -0
  1302. /package/dist/{pages-DDXB4NQ4.js.map → pages-FTI44OSH.js.map} +0 -0
  1303. /package/dist/{performance-QOQTL4XM.js.map → performance-SPGPGXE5.js.map} +0 -0
  1304. /package/dist/{pinterest-KQYSCTVQ.js.map → pinterest-J442QLQS.js.map} +0 -0
  1305. /package/dist/{pixels-HJYPX6RR.js.map → pixels-6IUB3Y3H.js.map} +0 -0
  1306. /package/dist/{pixels-GH522EYV.js.map → pixels-MBKR4XPX.js.map} +0 -0
  1307. /package/dist/{plan-ZS7SOXL6.js.map → plan-YPE77T4R.js.map} +0 -0
  1308. /package/dist/{preview-W4VKXOCT.js.map → preview-V4YBD45S.js.map} +0 -0
  1309. /package/dist/{profile-FSB4RT55.js.map → profile-S3MXS2VO.js.map} +0 -0
  1310. /package/dist/{promoted-tweet-writes-6PI2KR65.js.map → promoted-tweet-writes-TRR3KPRJ.js.map} +0 -0
  1311. /package/dist/{promoted-tweets-UJRNHKKO.js.map → promoted-tweets-XRYZNJI2.js.map} +0 -0
  1312. /package/dist/{properties-V74I56UK.js.map → properties-G3L2OAOL.js.map} +0 -0
  1313. /package/dist/{query-KBXZD4SW.js.map → query-M3IO54U2.js.map} +0 -0
  1314. /package/dist/{query-SFNCXH4H.js.map → query-WCB5W4NW.js.map} +0 -0
  1315. /package/dist/{query-5F5MBR7H.js.map → query-YBS6ZQ75.js.map} +0 -0
  1316. /package/dist/{questionnaire-JK5JLQXK.js.map → questionnaire-PAK4DALP.js.map} +0 -0
  1317. /package/dist/{read-LGRFU7XB.js.map → read-LUTB3UOR.js.map} +0 -0
  1318. /package/dist/{reddit-QWM5ZQ6P.js.map → reddit-STSECKMZ.js.map} +0 -0
  1319. /package/dist/{refresh-ZPF7UH3S.js.map → refresh-RQ3C2MHI.js.map} +0 -0
  1320. /package/dist/{release-BZPK2P3R.js.map → release-UHGU5WBY.js.map} +0 -0
  1321. /package/dist/{relevant-pages-VMNEEEJK.js.map → relevant-pages-G6SNC73K.js.map} +0 -0
  1322. /package/dist/{remove-C7ZJYFCG.js.map → remove-LTKICIIF.js.map} +0 -0
  1323. /package/dist/{remove-PIHTPIHM.js.map → remove-X6DNVS67.js.map} +0 -0
  1324. /package/dist/{reopen-6Q7NQX2C.js.map → reopen-BP5ERELB.js.map} +0 -0
  1325. /package/dist/{research-X6O7IID6.js.map → research-GOYMTKZM.js.map} +0 -0
  1326. /package/dist/{research-FXQ6X7BY.js.map → research-MBAPL35Y.js.map} +0 -0
  1327. /package/dist/{reset-NXK6NCOO.js.map → reset-Q62PEGOU.js.map} +0 -0
  1328. /package/dist/{reset-FRNQUCL5.js.map → reset-SJPGSQ7I.js.map} +0 -0
  1329. /package/dist/{resolve-WHI4UP4V.js.map → resolve-R45W7QEQ.js.map} +0 -0
  1330. /package/dist/{retry-XMTYWCFA.js.map → retry-CD2Q2AJN.js.map} +0 -0
  1331. /package/dist/{retry-VSFPEXLE.js.map → retry-NBZ7Q6HK.js.map} +0 -0
  1332. /package/dist/{retry-failed-XTYV3QJS.js.map → retry-failed-EJBP4236.js.map} +0 -0
  1333. /package/dist/{run-TAASFDQ7.js.map → run-HCJKCEOL.js.map} +0 -0
  1334. /package/dist/{run-HBNAA56X.js.map → run-IIU2UVQU.js.map} +0 -0
  1335. /package/dist/{schedule-P6GVRZ4E.js.map → schedule-BSQHXJ5V.js.map} +0 -0
  1336. /package/dist/{schedule-WSO7ETS6.js.map → schedule-IDZC6M32.js.map} +0 -0
  1337. /package/dist/{scheduled-agents-TYT5BIBQ.js.map → scheduled-agents-MFLMG34I.js.map} +0 -0
  1338. /package/dist/{schema-DL34A626.js.map → schema-EFR7NGJG.js.map} +0 -0
  1339. /package/dist/{schema-O4CMQQGD.js.map → schema-IWPG3YSN.js.map} +0 -0
  1340. /package/dist/{scrape-ZG2OWZL4.js.map → scrape-J2Y7YZ4Z.js.map} +0 -0
  1341. /package/dist/{screenshot-GJUY7FCW.js.map → screenshot-K7ZGTVTE.js.map} +0 -0
  1342. /package/dist/{search-FHSQYZOC.js.map → search-CI7LEOOK.js.map} +0 -0
  1343. /package/dist/{search-HBFAHH4W.js.map → search-EGI5K77S.js.map} +0 -0
  1344. /package/dist/{search-2BJ4OLMX.js.map → search-I6DRUXBX.js.map} +0 -0
  1345. /package/dist/{search-ZAY2QV3Y.js.map → search-TTL7VQET.js.map} +0 -0
  1346. /package/dist/{search-52CSDYJS.js.map → search-VT2KUAH6.js.map} +0 -0
  1347. /package/dist/{search-copy-O5AOEBXC.js.map → search-copy-N2AIJNUH.js.map} +0 -0
  1348. /package/dist/{seeds-XY3EZ33U.js.map → seeds-EYYQCMGF.js.map} +0 -0
  1349. /package/dist/{sends-GECHL3NK.js.map → sends-RHVFV2XM.js.map} +0 -0
  1350. /package/dist/{sequences-5BB4S63A.js.map → sequences-5DUWNSWQ.js.map} +0 -0
  1351. /package/dist/{setup-links-GF2IP4TH.js.map → setup-links-5ILQNMFZ.js.map} +0 -0
  1352. /package/dist/{shared-JDIL3BNQ.js.map → shared-NDRFKAH7.js.map} +0 -0
  1353. /package/dist/{site-T6V5S5DJ.js.map → site-LBXNVRPE.js.map} +0 -0
  1354. /package/dist/{sitemaps-UQJFRA2W.js.map → sitemaps-QKKXMXMV.js.map} +0 -0
  1355. /package/dist/{sites-ZNNEPEGI.js.map → sites-GRC6CCCK.js.map} +0 -0
  1356. /package/dist/{skills-WRKEF2Q4.js.map → skills-UML6GSW6.js.map} +0 -0
  1357. /package/dist/{sources-UR3SLKVK.js.map → sources-GP4PUTX2.js.map} +0 -0
  1358. /package/dist/{sources-5YUE7KUI.js.map → sources-N4UANUHJ.js.map} +0 -0
  1359. /package/dist/{stats-QFBTSDVV.js.map → stats-RCLQE4HJ.js.map} +0 -0
  1360. /package/dist/{status-FDKP65DR.js.map → status-GSFMLC6W.js.map} +0 -0
  1361. /package/dist/{sticker-2JQUC7XO.js.map → sticker-SINY47WT.js.map} +0 -0
  1362. /package/dist/{stock-W3SNJCBV.js.map → stock-ECRBD7RP.js.map} +0 -0
  1363. /package/dist/{studio-2GAZ6QOH.js.map → studio-YB5WXQYC.js.map} +0 -0
  1364. /package/dist/{sync-NAJQQ6NQ.js.map → sync-2MFUI3ME.js.map} +0 -0
  1365. /package/dist/{sync-4LHVBFMZ.js.map → sync-IE4AAVGY.js.map} +0 -0
  1366. /package/dist/{sync-OGFGTKUK.js.map → sync-LIV7FU4N.js.map} +0 -0
  1367. /package/dist/{sync-definition-MSQFCXRK.js.map → sync-definition-5JO7QXX3.js.map} +0 -0
  1368. /package/dist/{tag-manager-MNGOJ3GC.js.map → tag-manager-G3LBQZUL.js.map} +0 -0
  1369. /package/dist/{tags-XMRO4WF6.js.map → tags-4JQX7HMT.js.map} +0 -0
  1370. /package/dist/{tags-67KLYTJF.js.map → tags-6RQVXS47.js.map} +0 -0
  1371. /package/dist/{tags-GLHFHQW2.js.map → tags-AAIFQ6LS.js.map} +0 -0
  1372. /package/dist/{tags-SL4F3LLY.js.map → tags-F355NMIR.js.map} +0 -0
  1373. /package/dist/{tags-PYLVQEVS.js.map → tags-ZHCGHGYC.js.map} +0 -0
  1374. /package/dist/{targeting-constants-RQT4GLUA.js.map → targeting-constants-KEKYU5JQ.js.map} +0 -0
  1375. /package/dist/{targeting-criteria-VK3IR6N2.js.map → targeting-criteria-6FY2JB3V.js.map} +0 -0
  1376. /package/dist/{targets-RCM2ZXSU.js.map → targets-NI7TR4GV.js.map} +0 -0
  1377. /package/dist/{testimonials-KTHDZ3R5.js.map → testimonials-G7CCH7VN.js.map} +0 -0
  1378. /package/dist/{themes-VVID6Y73.js.map → themes-PXDXIKYR.js.map} +0 -0
  1379. /package/dist/{top-companies-MBTTJTRK.js.map → top-companies-YH2ZJEH5.js.map} +0 -0
  1380. /package/dist/{triggers-PDIVJDLP.js.map → triggers-WYFM7PAH.js.map} +0 -0
  1381. /package/dist/{tweets-L4CXZLKQ.js.map → tweets-C3QUKS3I.js.map} +0 -0
  1382. /package/dist/{unfollow-5T2CT3EF.js.map → unfollow-ZI5QU7RD.js.map} +0 -0
  1383. /package/dist/{unlink-IHEFAFG6.js.map → unlink-PTWUSM5B.js.map} +0 -0
  1384. /package/dist/{unstage-NEX3EIJX.js.map → unstage-7F7JI6HY.js.map} +0 -0
  1385. /package/dist/{unstage-NJQAIIPT.js.map → unstage-MCM6EZWK.js.map} +0 -0
  1386. /package/dist/{update-LR7UW5LL.js.map → update-643S2MUW.js.map} +0 -0
  1387. /package/dist/{update-P5BTLCGG.js.map → update-GUIP6G3N.js.map} +0 -0
  1388. /package/dist/{update-CYQIGHT4.js.map → update-V6E3CIFD.js.map} +0 -0
  1389. /package/dist/{upload-VVB2LTD2.js.map → upload-3YJJ5VID.js.map} +0 -0
  1390. /package/dist/{upload-C2K66PR3.js.map → upload-KO46L76G.js.map} +0 -0
  1391. /package/dist/{upscale-SGBB4GWF.js.map → upscale-SJ7SCSRS.js.map} +0 -0
  1392. /package/dist/{url-options-LUKI4Y46.js.map → url-options-LHS4SWWB.js.map} +0 -0
  1393. /package/dist/{url-params-MSRUZOGT.js.map → url-params-2DKIXKHH.js.map} +0 -0
  1394. /package/dist/{use-XGTUHBUL.js.map → use-6ULEM3WE.js.map} +0 -0
  1395. /package/dist/{variant-DQRDW6IZ.js.map → variant-5TRRSYBB.js.map} +0 -0
  1396. /package/dist/{videos-EQG7AAXT.js.map → videos-KEDR4GG3.js.map} +0 -0
  1397. /package/dist/{view-KJ6YNRXB.js.map → view-ABSWZMXW.js.map} +0 -0
  1398. /package/dist/{viewer-check-7DZQDGD3.js.map → viewer-check-TSH3SAYJ.js.map} +0 -0
  1399. /package/dist/{web-MSYXLOFV.js.map → web-UOGBNAHR.js.map} +0 -0
  1400. /package/dist/{winners-LD6PFXAS.js.map → winners-KRISBKOR.js.map} +0 -0
  1401. /package/dist/{winning-ads-VWBU3BNQ.js.map → winning-ads-SGBI3WHK.js.map} +0 -0
  1402. /package/dist/{write-commands-PK23JVW3.js.map → write-commands-E7JOB4HX.js.map} +0 -0
  1403. /package/dist/{write-commands-CKMHQ4YY.js.map → write-commands-HCQI4Y27.js.map} +0 -0
  1404. /package/dist/{write-commands-NW5CC3DP.js.map → write-commands-QCI6XBM7.js.map} +0 -0
  1405. /package/dist/{write-commands-RLEYECTB.js.map → write-commands-RHCCPMAE.js.map} +0 -0
  1406. /package/dist/{x-ZSTQLK6Q.js.map → x-UNSN57YP.js.map} +0 -0
@@ -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, its Avatars) and says, in layers, why the ad\n * wins, what each load-bearing element needs, whether we have it, and a verdict: use, adapt or\n * reject. Always among them what stops the scroll and the proof (Oct 2026: a meme's fit left out the\n * reaction faces it stopped the scroll with), each kept, replaced with ours or impossible, the rule\n * that forbids one quoted; either impossible is a reject. The agent checks about three candidates and\n * scaffolds only one that fits; the scaffold seeds the ad spec's `concept` from the verdict, and\n * `baker canvas run` refuses a `reject`.\n */\nimport { mkdir, readdir, readFile, writeFile } from \"node:fs/promises\";\nimport path from \"node:path\";\nimport type { AvatarsListResponse } from \"@baker/api\";\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 { memeRegister, readCompanyReading } from \"../../engine/creative-context/company.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 {\n CONCEPT_CARRY_LEVELS,\n decisionOf,\n LOAD_BEARING_FIELDS,\n type MemeAudience,\n unfitReasons,\n withDerivedHave,\n} from \"../../engine/scaffold/static-ad-spec.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { readAvatars } from \"../avatars/transport.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\";\nimport { avatarsOf, castCompany } from \"../creatives/cast-inventory.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/**\n * What the fit model answers. A read that names no element stopping the scroll or no proof is no read\n * of why the ad won, and is asked again (a fit cached before either was asked for is read again too).\n */\nexport const FitAnswerSchema = z\n .object({\n why_it_wins: Layers.default({}),\n load_bearing: z.array(z.preprocess(withDerivedHave, z.object(LOAD_BEARING_FIELDS).strip())).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 .refine((fit) => fit.load_bearing.some((l) => l.job === \"stop\") && fit.load_bearing.some((l) => l.job === \"proof\"), {\n message: \"name what stops the scroll (job: stop) and the proof (job: proof) among load_bearing\",\n })\n // An element it wins on that nothing of ours may carry is a reject, whatever the model's verdict.\n .transform((fit) =>\n fit.verdict !== \"reject\" && fit.load_bearing.some((l) => decisionOf(l) === \"impossible\")\n ? { ...fit, verdict: \"reject\" as const }\n : fit,\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/** Whether our brand's voice runs memes: the company's reading (`memeRegister`), kept with the fit. */\ntype FitAudience = MemeAudience;\n\n/** The line that tells the fit our brand's voice does not run memes, and why. Pure. */\nfunction audienceLines(audience: FitAudience | undefined): string[] {\n return audience?.memes === \"off_brand\"\n ? [\n `Our brand's voice does not run memes${audience.why ? ` (${audience.why})` : \"\"}: a meme or a reaction face that does the stop job is impossible for us (decision impossible, rule: our brand's voice does not run memes), and the verdict is reject.`,\n ]\n : [];\n}\n\n/** The fit with its verdict set to reject when its scroll-stopper is a meme our audience does not read. Pure. */\nexport function rejectForAudience(fit: FitAnswer, audience: FitAudience | undefined): FitAnswer {\n const reasons = unfitReasons(fit, audience).filter((r) => r.includes(\"does not run memes\"));\n if (reasons.length === 0) return fit;\n return { ...fit, verdict: \"reject\", transfer_note: reasons.join(\"; \") };\n}\n\n/** The key a fit is kept under besides its ad: the bet it was made for and the register it was read in; none for neither. Pure. */\nexport function fitKeyOf(bet: FitBet | undefined, audience: FitAudience | undefined): string | undefined {\n const parts = [bet ? JSON.stringify(bet) : \"\", audience ? `memes:${audience.memes}:${audience.why ?? \"\"}` : \"\"];\n return parts.some(Boolean) ? parts.join(\"|\") : undefined;\n}\n\n/** A person the company may show in its ads: one of its Avatars (`castInventory`'s). */\ntype FitCast = { handle: string; real: boolean; who: string; relation: string; castable: boolean };\n\n/** Who the company may show, as the fit reads it: its team's, founder's and made-for-a-role Avatars; a customer's only in their own testimonial. Pure. */\nfunction castLines(cast: readonly FitCast[]): string[] {\n const ours = cast\n .filter((a) => a.castable)\n .map((a) => `@${a.handle} (${a.real ? \"a real person\" : \"made for a role\"}: ${a.who})`);\n const theirs = cast\n .filter((a) => !a.castable)\n .map(\n (a) =>\n `@${a.handle}: a ${a.relation === \"unknown\" ? \"customer\" : a.relation} (${a.who}); only in an ad quoting their own published words, never a reaction face or a model`,\n );\n return [\n `The people OUR ads may show: our team's, founder's or a made-for-a-role Avatar${ours.length > 0 ? ` (${ours.join(\"; \")})` : \" (none made yet)\"}, unless our rules forbid made-up people.`,\n ...(theirs.length > 0\n ? [\n `Avatars of people who are not ours to cast: ${theirs.join(\"; \")}. A customer's face appears only in a testimonial ad that quotes them.`,\n ]\n : [\"A customer's face appears only in a testimonial ad that quotes them.\"]),\n ];\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: {\n library: FitLibraryRead;\n knowledge: string;\n bet?: FitBet;\n /** The company's Avatars, when they could be read. */\n cast?: readonly FitCast[];\n /** Whether its audience reads memes. */\n audience?: FitAudience;\n}): 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 ...(input.cast ? castLines(input.cast) : []),\n ...audienceLines(input.audience),\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 2-5 elements the ad stops working without (never decoration), always these two: what stops the scroll (job \"stop\": the face or reaction, the joke, the meme people know, the odd photo; when attention names a face, that face is it) and the proof that makes it believed (job \"proof\": the ✗/✓ checklist, the before and after, the rating, the result shown), then any other its why_it_wins rests on (job \"other\"). Name each as it shows in the picture (\"the two reaction faces of a famous sitcom boss\", \"the red ✗ and green ✓ marks before each line\"), never as an idea (\"a contrast\", \"relatable fatigue\").',\n \"Each with: element, job, needs (what it takes to carry it), have (have: we have it as it is; adapt: something of ours can do its job; missing: we have nothing that does), decision (keep: as it is; replace: with something of ours that does the same job, named in ours; impossible: nothing of ours may do its job; a person is never kept as theirs: the advertiser's own people, or a celebrity who is not a meme template, are replaced with one of ours; a famous meme's job is done by a meme our buyer persona knows and relates to, from `baker images meme`, our words on it, whenever our brand's voice runs memes: the proven ad's own template only when it is also the one our persona knows best; a two-panel reaction meme becomes two real templates, top and bottom; never a customer's face: a customer appears only in an ad quoting their own words), ours (what of ours does its job, concretely, one thing of ours, never a choice between two: a meme our buyer persona knows and relates to, from `baker images meme` with our words, our team's, founder's or a made-for-a-role Avatar, the ✓/✗ marks in our colours; never invent an offer, a gift, a price, a review or a customer we do not have), rule (only when one of the company's rules forbids it as it is: that rule, quoted word for word).\",\n \"A rule forbids only what it names: \\\"no stock photography\\\" forbids stock photos, never a meme's reaction face, the company's own people or its Avatars; a rule on logos, buttons or colours says nothing about faces.\",\n \"verdict: use (it transfers as it is), adapt (it transfers with ours in place of theirs), reject (what stops the scroll, the proof or another load-bearing element is impossible for us: 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\":\"\",\"job\":\"stop|proof|other\",\"needs\":\"\",\"have\":\"have|adapt|missing\",\"decision\":\"keep|replace|impossible\",\"ours\":\"\",\"rule\":\"\"}],\"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\", audience?: FitAudience): string[] {\n const reasons = unfitReasons(fit, audience);\n if (fit.verdict === \"reject\" || reasons.length > 0) {\n return [\n `Pick another reference: ${reasons.length > 0 ? reasons.join(\"; \") : \"this one wins on 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 const keeps = fit.load_bearing.map((l) => {\n const job = l.job === \"stop\" ? \"what stops the scroll\" : l.job === \"proof\" ? \"the proof\" : `\"${l.element}\"`;\n return decisionOf(l) === \"replace\" && l.ours?.trim() ? `${job} as \"${l.ours.trim()}\"` : `\"${l.element}\"`;\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 ${keeps.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, its Avatars) and says why the ad wins (disguise, voice, trigger, attention, logic), the elements it stops working without (always what stops the scroll, `job: stop`, and its proof, `job: proof`), what our ad does with each (`decision`: keep, replace with `ours`, or impossible, quoting the `rule` that forbids it), and a verdict: use, adapt or reject (a stop or proof that is impossible for us is a 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/**\n * The first ask reads one reference for one ad the same way every time: whether what stops its\n * scroll can be ours decides the ad, and on dev the same question came back kept, replaced and\n * impossible on four asks. A reply out of shape is asked again as usual.\n */\nconst FIT_REQUEST = { temperature: 0, seed: 0 };\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 reply = await askAboutImages(\n AD_DESCRIBE_MODEL,\n [jpeg],\n prompt,\n onSpend,\n undefined,\n undefined,\n undefined,\n attempt === 0 ? FIT_REQUEST : {},\n );\n const parsed = FitAnswerSchema.safeParse(reply);\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/** The library ad and its picture the fit reads, or why it cannot: never exits. */\nasync function readFitReference(\n adId: string,\n platform: LibraryPlatform,\n): Promise<{ ok: true; ad: LibraryAd; jpeg: string } | { ok: false; failure: FitFailure }> {\n let ad: LibraryAd;\n try {\n ad = await fetchLibraryReference(adId, platform);\n } catch (e) {\n return {\n ok: false,\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 };\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) return { ok: false, failure: refusal };\n // The fit reads one still picture: a video is studied whole with `content`, never fetched here.\n if (ad.format === \"video\") {\n return {\n ok: false,\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 };\n }\n const jpeg = await pictureOf(ad.media_url);\n if (!jpeg) {\n return {\n ok: false,\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 };\n }\n return { ok: true, ad, jpeg };\n}\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 // Read before the cache: a fit made in another register is read again.\n const audience = memeRegister(await readCompanyReading(root).catch(() => null));\n const askFor = async () => {\n const read = await readFitReference(adId, platform);\n if (!read.ok) {\n failure = read.failure;\n return null;\n }\n const { ad, jpeg } = read;\n const knowledge = [await readKnowledge(root), await readReviews()].filter(Boolean).join(\"\\n\\n\");\n // Who we may show decides whether a face the reference stops the scroll with can be ours.\n const company = await castCompany(root);\n const cast = await readAvatars<AvatarsListResponse>(\"/api/avatars\", { status: \"ready\" }).then(\n (response) => avatarsOf(response, company),\n () => undefined,\n );\n const prompt = buildFitPrompt({\n library: libraryRead(ad),\n knowledge,\n ...(bet ? { bet } : {}),\n ...(cast ? { cast } : {}),\n ...(audience ? { audience } : {}),\n });\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 && rejectForAudience(answer, audience);\n };\n // With no bet the ad's own file is the one `make` kept: a register-only key would look elsewhere and overwrite it.\n const fit = await fitOnce(root, platform, adId, askFor, bet ? fitKeyOf(bet, audience) : 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 ...(l.job ? { job: l.job } : {}),\n decision: decisionOf(l),\n ...(l.ours ? { ours: l.ours } : {}),\n ...(l.rule ? { rule: l.rule } : {}),\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, memeRegister(await readCompanyReading(root).catch(() => null))),\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":[]}
@@ -0,0 +1,274 @@
1
+ import {
2
+ chatgptDraftOpInputSchema,
3
+ chatgptFailure
4
+ } from "./chunk-IG627WWY.js";
5
+ import {
6
+ writeJsonEnvelope
7
+ } from "./chunk-SWL4AAPP.js";
8
+ import {
9
+ ApiError,
10
+ apiPost
11
+ } from "./chunk-XDZVBX6L.js";
12
+ import {
13
+ requireChatId
14
+ } from "./chunk-EE72SSB2.js";
15
+ import {
16
+ registerSchema
17
+ } from "./chunk-WNSE7N75.js";
18
+
19
+ // src/commands/ads/chatgpt/write-shared.ts
20
+ import { defineCommand } from "citty";
21
+ function fail(envelope) {
22
+ writeJsonEnvelope({ ...envelope });
23
+ process.exit(1);
24
+ }
25
+ function failWriteValidation(message) {
26
+ fail({
27
+ ok: false,
28
+ error: {
29
+ code: "VALIDATION_ERROR",
30
+ message,
31
+ fix: { action: "add_required_field", explanation: `${message}. Nothing was staged.` },
32
+ retryable: false
33
+ }
34
+ });
35
+ }
36
+ function writeFailure(err, reference) {
37
+ if (!(err instanceof ApiError) && err instanceof Error && err.message.includes("BAKER_CHAT_ID")) {
38
+ return {
39
+ ok: false,
40
+ error: {
41
+ code: "NO_CHAT",
42
+ message: err.message,
43
+ fix: {
44
+ action: "reject",
45
+ explanation: "ChatGPT Ads changes are staged on a chat and apply when it is published; run this from the chat."
46
+ },
47
+ retryable: false
48
+ }
49
+ };
50
+ }
51
+ return chatgptFailure(err, reference);
52
+ }
53
+ function decimalPlaces(value) {
54
+ const [mantissa, exponent] = String(value).trim().split(/e/i);
55
+ const written = (mantissa?.split(".")[1] ?? "").length;
56
+ return Math.max(0, written - (exponent ? Number(exponent) : 0));
57
+ }
58
+ function parseChatgptMoney(value) {
59
+ if (value === void 0 || value === "") {
60
+ return { ok: true, micros: void 0 };
61
+ }
62
+ const amount = Number(value);
63
+ if (!Number.isFinite(amount) || amount <= 0) {
64
+ return { ok: false, reason: "must be a positive amount, for example 12.50" };
65
+ }
66
+ if (decimalPlaces(value) > 6) {
67
+ return { ok: false, reason: "is finer than ChatGPT Ads can express" };
68
+ }
69
+ return { ok: true, micros: Math.round(amount * 1e6) };
70
+ }
71
+ function microsFromArg(value, flag) {
72
+ const parsed = parseChatgptMoney(value);
73
+ if (!parsed.ok) {
74
+ failWriteValidation(`${flag} ${parsed.reason}`);
75
+ }
76
+ return parsed.micros;
77
+ }
78
+ function csvArg(value) {
79
+ if (typeof value !== "string" || value.trim().length === 0) {
80
+ return void 0;
81
+ }
82
+ const parts = value.split(",").map((part) => part.trim()).filter(Boolean);
83
+ return parts.length > 0 ? parts : void 0;
84
+ }
85
+ function schemaArgs(args) {
86
+ return Object.fromEntries(
87
+ Object.entries(args).map(([name, arg]) => [
88
+ name,
89
+ {
90
+ type: arg.type === "positional" ? "string" : arg.type,
91
+ description: arg.description,
92
+ required: arg.required === true
93
+ }
94
+ ])
95
+ );
96
+ }
97
+ function lowerArg(value) {
98
+ return typeof value === "string" && value.trim() !== "" ? value.trim().toLowerCase() : void 0;
99
+ }
100
+ function lowerCsvArg(value) {
101
+ return csvArg(value)?.map((part) => part.toLowerCase());
102
+ }
103
+ function compact(payload) {
104
+ return Object.fromEntries(Object.entries(payload).filter(([, value]) => value !== void 0 && value !== ""));
105
+ }
106
+ function requireTarget(args, name) {
107
+ const value = args[name];
108
+ if (typeof value !== "string" || value.trim().length === 0) {
109
+ failWriteValidation(`${name} is required`);
110
+ }
111
+ return value.trim();
112
+ }
113
+ function requireTargets(args, name) {
114
+ const ids = csvArg(args[name]);
115
+ if (!ids) {
116
+ failWriteValidation(`${name} is required \u2014 pass one or more ids, comma-separated`);
117
+ }
118
+ return ids;
119
+ }
120
+ function preflight(raw) {
121
+ const parsed = chatgptDraftOpInputSchema.safeParse(raw);
122
+ if (parsed.success) {
123
+ return parsed.data;
124
+ }
125
+ const fields = parsed.error.issues.map((issue) => ({ path: issue.path.join("."), message: issue.message }));
126
+ const message = fields.map((field) => field.path ? `${field.path}: ${field.message}` : field.message).join("; ");
127
+ return fail({
128
+ ok: false,
129
+ error: {
130
+ code: "VALIDATION_ERROR",
131
+ message,
132
+ fix: {
133
+ action: "retry_with_modified_query",
134
+ explanation: "Fix the named fields and stage again. Nothing was staged \u2014 the draft is as it was before this call."
135
+ },
136
+ retryable: false
137
+ }
138
+ });
139
+ }
140
+ async function postStage(chatId, op) {
141
+ return await apiPost("/api/ads/chatgpt/draft/stage", { chatId, op });
142
+ }
143
+ async function stageChatgptOp(raw, reference, hintsFor) {
144
+ const op = preflight(raw);
145
+ try {
146
+ const staged = await postStage(requireChatId(), op);
147
+ const hints = hintsFor?.(staged) ?? [];
148
+ writeJsonEnvelope({ ok: true, data: staged, ...hints.length > 0 ? { hints } : {} });
149
+ } catch (err) {
150
+ fail(writeFailure(err, reference));
151
+ }
152
+ }
153
+ async function stageChatgptOps(raws, reference) {
154
+ if (raws.length === 1 && raws[0]) {
155
+ await stageChatgptOp(raws[0], reference);
156
+ return;
157
+ }
158
+ const ops = raws.map(preflight);
159
+ const staged = [];
160
+ try {
161
+ const chatId = requireChatId();
162
+ for (const op of ops) {
163
+ staged.push(await postStage(chatId, op));
164
+ }
165
+ writeJsonEnvelope({ ok: true, data: staged });
166
+ } catch (err) {
167
+ const failure = writeFailure(err, reference);
168
+ if (staged.length > 0) {
169
+ failure.error.message = `${failure.error.message} (already staged: ${staged.map((s) => s.summary).join("; ")})`;
170
+ }
171
+ fail(failure);
172
+ }
173
+ }
174
+ function clearableCsvArg(value) {
175
+ return typeof value === "string" && value.trim().toLowerCase() === "none" ? [] : csvArg(value);
176
+ }
177
+ function clearableArg(value) {
178
+ if (typeof value !== "string" || value.trim() === "") {
179
+ return void 0;
180
+ }
181
+ return value.trim().toLowerCase() === "none" ? null : value.trim();
182
+ }
183
+ function cropArg(value, flag) {
184
+ const parts = csvArg(value);
185
+ if (!parts) {
186
+ return void 0;
187
+ }
188
+ const numbers = parts.map(Number);
189
+ const [x, y, width, height] = numbers;
190
+ if (numbers.length !== 4 || numbers.some(Number.isNaN) || x === void 0 || y === void 0 || width === void 0 || height === void 0) {
191
+ failWriteValidation(`${flag} takes four shares of the image, x,y,width,height \u2014 e.g. 0.1,0,0.8,0.8`);
192
+ }
193
+ return { x, y, width, height };
194
+ }
195
+ var STATUS_OF = {
196
+ pause: "paused",
197
+ resume: "active",
198
+ archive: "archived"
199
+ };
200
+ function statusOps(entity, ids, status) {
201
+ return ids.map((id) => ({ kind: `${entity}.update`, target: id, payload: { status } }));
202
+ }
203
+ var STATUS_NOUN = {
204
+ campaign: { command: "campaigns", plural: "campaigns", example: "cmpn_123,cmpn_456" },
205
+ adGroup: { command: "ad-groups", plural: "ad groups", example: "adgrp_123,adgrp_456" },
206
+ ad: { command: "ads", plural: "cards", example: "ad_123,ad_456" }
207
+ };
208
+ var STATUS_DOING = { pause: "pausing", resume: "resuming", archive: "archiving" };
209
+ function statusCommand(entity, verb, reference) {
210
+ const noun = STATUS_NOUN[entity];
211
+ const args = {
212
+ ids: { type: "positional", description: `${noun.plural} ids, comma-separated`, required: true }
213
+ };
214
+ const forGood = verb === "archive" ? ` Archiving is for good: ChatGPT Ads cannot bring archived ${noun.plural} back, and their results stay in reports. Pause instead unless the user asked to archive.` : "";
215
+ registerSchema({
216
+ command: `ads.chatgpt.${noun.command}.${verb}`,
217
+ description: `Stage ${STATUS_DOING[verb]} one or more ChatGPT Ads ${noun.plural}. Pass every id in one call.${forGood}`,
218
+ args: schemaArgs(args)
219
+ });
220
+ return defineCommand({
221
+ meta: {
222
+ name: verb,
223
+ description: `Stage ${STATUS_DOING[verb]} ${noun.plural}.${forGood}
224
+
225
+ Example:
226
+ baker ads chatgpt ${noun.command} ${verb} ${noun.example}`
227
+ },
228
+ args,
229
+ run: async ({ args: parsed }) => {
230
+ await stageChatgptOps(statusOps(entity, requireTargets(parsed, "ids"), STATUS_OF[verb]), reference);
231
+ }
232
+ });
233
+ }
234
+ function productFiltersArg(value) {
235
+ if (typeof value !== "string" || value.trim() === "") {
236
+ return void 0;
237
+ }
238
+ if (value.trim().toLowerCase() === "none") {
239
+ return [];
240
+ }
241
+ return value.split(";").map((condition) => condition.trim()).filter(Boolean).map((condition) => {
242
+ const match = /^(\S+)\s+(\S+)\s+(.+)$/.exec(condition);
243
+ if (!match?.[1] || !match[2] || !match[3]) {
244
+ failWriteValidation(
245
+ `"${condition}" is not a product filter \u2014 write field operator values, e.g. price lte 5000`
246
+ );
247
+ }
248
+ return {
249
+ field: match[1],
250
+ operator: match[2].toLowerCase(),
251
+ values: match[3].split("|").map((part) => part.trim()).filter(Boolean)
252
+ };
253
+ });
254
+ }
255
+
256
+ export {
257
+ failWriteValidation,
258
+ microsFromArg,
259
+ csvArg,
260
+ schemaArgs,
261
+ lowerArg,
262
+ lowerCsvArg,
263
+ compact,
264
+ requireTarget,
265
+ requireTargets,
266
+ stageChatgptOp,
267
+ stageChatgptOps,
268
+ clearableCsvArg,
269
+ clearableArg,
270
+ cropArg,
271
+ statusCommand,
272
+ productFiltersArg
273
+ };
274
+ //# sourceMappingURL=chunk-3UXMQ3K2.js.map