@koda-sl/baker-cli 0.531.0 → 0.534.0-dev.911a80433

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 (1528) hide show
  1. package/README.md +13 -11
  2. package/dist/account-BRRFMDXZ.js +82 -0
  3. package/dist/account-HQD5P3AF.js +139 -0
  4. package/dist/account-MQI7EZBH.js +82 -0
  5. package/dist/account-assets-JRMYVXQP.js +290 -0
  6. package/dist/account-level-PEGLZQTI.js +611 -0
  7. package/dist/account-reads-K6YDAOHX.js +219 -0
  8. package/dist/account-users-QS54ZEOD.js +64 -0
  9. package/dist/account-writes-PGGGP26M.js +68 -0
  10. package/dist/accounts-H3U7LARM.js +80 -0
  11. package/dist/accounts-IW62WBX5.js +701 -0
  12. package/dist/accounts-MQMEOGQD.js +114 -0
  13. package/dist/accounts-T6SRCZJQ.js +76 -0
  14. package/dist/accounts-Y2VWI3AA.js +115 -0
  15. package/dist/actions-2CUQFZNA.js +55 -0
  16. package/dist/active-entities-BOMM4YDF.js +103 -0
  17. package/dist/activecampaign-WAMDVBUO.js +938 -0
  18. package/dist/activities-YH4K4JAI.js +75 -0
  19. package/dist/ad-group-writes-ROUU6BHU.js +172 -0
  20. package/dist/ad-groups-Y2BSRLIN.js +70 -0
  21. package/dist/ad-writes-NF4LCGVP.js +176 -0
  22. package/dist/add-2L2VQ5MU.js +80 -0
  23. package/dist/add-4P3CUHAN.js +305 -0
  24. package/dist/add-PS36Q2S3.js +97 -0
  25. package/dist/add-RLMXZLLO.js +148 -0
  26. package/dist/add-UHWRBSFE.js +107 -0
  27. package/dist/add-Z2OTFSQO.js +81 -0
  28. package/dist/add-accounts-GXBE4ZR2.js +91 -0
  29. package/dist/ads-CPMX3L4A.js +79 -0
  30. package/dist/ads-TDN7OYSU.js +48 -0
  31. package/dist/ads-WYQYZ44U.js +128 -0
  32. package/dist/ads-ZEF5AU3D.js +120 -0
  33. package/dist/adsets-ZRS7AZIK.js +182 -0
  34. package/dist/advertisers-6CHV5N2V.js +123 -0
  35. package/dist/advertisers-AAGUUSAX.js +125 -0
  36. package/dist/analytics-4GTUW42V.js +2437 -0
  37. package/dist/analytics-MV2RQ6KR.js +447 -0
  38. package/dist/animate-EOSLSA7F.js +480 -0
  39. package/dist/approved-LHYBVDXH.js +73 -0
  40. package/dist/asset-writes-CUF25BLM.js +50 -0
  41. package/dist/assign-RN5DGDS2.js +80 -0
  42. package/dist/audience-size-7DYMCXDM.js +76 -0
  43. package/dist/audience-writes-L7SNU2SB.js +327 -0
  44. package/dist/audiences-A54MU63W.js +86 -0
  45. package/dist/audiences-SG2BBM7R.js +85 -0
  46. package/dist/audiences-VMGB2JZG.js +280 -0
  47. package/dist/audit-6K5FFV6K.js +88 -0
  48. package/dist/audit-7U7G2JKS.js +154 -0
  49. package/dist/autocomplete-E6YHJ3HH.js +114 -0
  50. package/dist/avatars-6JHVTSXH.js +38 -0
  51. package/dist/bid-pricing-J3OJK4J3.js +103 -0
  52. package/dist/brand-3EAQFDYN.js +22 -0
  53. package/dist/brief-ADGCGC3H.js +543 -0
  54. package/dist/businesses-GQ5FOZDU.js +54 -0
  55. package/dist/campaign-groups-GN7D5UXE.js +99 -0
  56. package/dist/campaign-writes-HKWI6GYU.js +168 -0
  57. package/dist/campaign-writes-UORRIIWY.js +176 -0
  58. package/dist/campaigns-5I76AV7F.js +113 -0
  59. package/dist/campaigns-BEXDLBT3.js +111 -0
  60. package/dist/campaigns-GONROKTU.js +78 -0
  61. package/dist/campaigns-VZJMYETG.js +130 -0
  62. package/dist/canvas-CHV34G62.js +46 -0
  63. package/dist/capabilities-VKBIQ2BR.js +147 -0
  64. package/dist/cards-YHZFJ3US.js +85 -0
  65. package/dist/catalog-VXANSX2O.js +66 -0
  66. package/dist/catalog-VXANSX2O.js.map +1 -0
  67. package/dist/catalogs-LXEM7NNC.js +130 -0
  68. package/dist/catalogs-ZHCLH43A.js +781 -0
  69. package/dist/changes-4OYC4NMW.js +135 -0
  70. package/dist/chatgpt-XV6CVKLN.js +47 -0
  71. package/dist/chats-W35ZPZEW.js +279 -0
  72. package/dist/check-3D63D4ZT.js +107 -0
  73. package/dist/chunk-23KN4NL4.js +45 -0
  74. package/dist/chunk-2PC26XRF.js +592 -0
  75. package/dist/chunk-2UZHRLLO.js +148 -0
  76. package/dist/chunk-3JV4T6XW.js +69 -0
  77. package/dist/chunk-45EERHDB.js +783 -0
  78. package/dist/chunk-4BTUF2AV.js +69 -0
  79. package/dist/chunk-4D37LCBS.js +111 -0
  80. package/dist/chunk-55B4AJY3.js +249 -0
  81. package/dist/chunk-56UWXQEN.js +392 -0
  82. package/dist/chunk-5G5QFFJY.js +275 -0
  83. package/dist/chunk-5GHKZLID.js +438 -0
  84. package/dist/chunk-5GHKZLID.js.map +1 -0
  85. package/dist/chunk-5HGAO4ZI.js +89 -0
  86. package/dist/chunk-5ITB24SC.js +544 -0
  87. package/dist/chunk-5YN53OAA.js +61 -0
  88. package/dist/chunk-6CCEEVXJ.js +285 -0
  89. package/dist/chunk-6CQOHJZW.js +125 -0
  90. package/dist/chunk-6HGLQJ6A.js +638 -0
  91. package/dist/chunk-6OIKNJ7G.js +26 -0
  92. package/dist/chunk-6OXENBTF.js +74 -0
  93. package/dist/chunk-6QGBBX7F.js +46 -0
  94. package/dist/chunk-6RTZPBAT.js +19 -0
  95. package/dist/chunk-7JFVMJZI.js +207 -0
  96. package/dist/chunk-7MY3QHGA.js +203 -0
  97. package/dist/chunk-A6VODUO3.js +166 -0
  98. package/dist/chunk-AGTA5FJX.js +139 -0
  99. package/dist/chunk-AGU4KGT6.js +84 -0
  100. package/dist/chunk-AH6TDWYS.js +3510 -0
  101. package/dist/chunk-AH6TDWYS.js.map +1 -0
  102. package/dist/chunk-BKOUVU6X.js +547 -0
  103. package/dist/chunk-C7IOSSI4.js +58 -0
  104. package/dist/chunk-CBQPKCFE.js +170 -0
  105. package/dist/chunk-CIW3Q7B2.js +229 -0
  106. package/dist/chunk-CNPYG4F3.js +75 -0
  107. package/dist/chunk-CWZ2ODJQ.js +57 -0
  108. package/dist/chunk-D7Y3UNWO.js +66 -0
  109. package/dist/chunk-DBPPTM3W.js +24026 -0
  110. package/dist/chunk-DBPPTM3W.js.map +1 -0
  111. package/dist/chunk-DGZYZWMK.js +843 -0
  112. package/dist/chunk-DMA67YC3.js +344 -0
  113. package/dist/chunk-DT3V5EGL.js +2209 -0
  114. package/dist/chunk-DT3V5EGL.js.map +1 -0
  115. package/dist/chunk-DYOUJERF.js +7234 -0
  116. package/dist/chunk-E34YYDCE.js +35 -0
  117. package/dist/chunk-E3FMS5DA.js +297 -0
  118. package/dist/chunk-EIRGJD3Q.js +167 -0
  119. package/dist/chunk-F3CZFUXZ.js +3187 -0
  120. package/dist/chunk-F3CZFUXZ.js.map +1 -0
  121. package/dist/chunk-FESQ5TXU.js +42 -0
  122. package/dist/chunk-FEUKUZRA.js +106 -0
  123. package/dist/chunk-G3MEYGXC.js +1518 -0
  124. package/dist/chunk-G3MN4HIX.js +831 -0
  125. package/dist/chunk-G53CUQZV.js +207 -0
  126. package/dist/chunk-GPZVYXJZ.js +455 -0
  127. package/dist/chunk-GYMZCJX6.js +97 -0
  128. package/dist/chunk-HGHVNUJT.js +156 -0
  129. package/dist/chunk-HZPTQRX6.js +2441 -0
  130. package/dist/chunk-HZPTQRX6.js.map +1 -0
  131. package/dist/chunk-IQWFJEA3.js +217 -0
  132. package/dist/chunk-IZABTTW5.js +228 -0
  133. package/dist/chunk-J3HA4RFY.js +51 -0
  134. package/dist/chunk-JGOYO7I2.js +103 -0
  135. package/dist/chunk-JNSRQQDP.js +94 -0
  136. package/dist/chunk-JUF6Q5X7.js +8954 -0
  137. package/dist/chunk-KAAYVKBH.js +479 -0
  138. package/dist/chunk-KGAI4E2I.js +106 -0
  139. package/dist/chunk-KUM36NSV.js +429 -0
  140. package/dist/chunk-L763CNKH.js +333 -0
  141. package/dist/chunk-LO2MZJJP.js +225 -0
  142. package/dist/chunk-LV7EU6HM.js +324 -0
  143. package/dist/chunk-LXZ5E6AC.js +84 -0
  144. package/dist/chunk-LZRZVIEJ.js +191 -0
  145. package/dist/chunk-MCKYNFPH.js +219 -0
  146. package/dist/chunk-MHSVWQK6.js +91 -0
  147. package/dist/chunk-MTV2RSGY.js +63 -0
  148. package/dist/chunk-MUEJVDHI.js +200 -0
  149. package/dist/chunk-MUS2UTWU.js +4254 -0
  150. package/dist/chunk-MUS2UTWU.js.map +1 -0
  151. package/dist/chunk-N4BK6OKX.js +91 -0
  152. package/dist/chunk-NCO5NGBN.js +74 -0
  153. package/dist/chunk-NLW25WW3.js +52 -0
  154. package/dist/chunk-NP3FPCPN.js +377 -0
  155. package/dist/chunk-NYAFSC5V.js +287 -0
  156. package/dist/chunk-O7AMKMII.js +215 -0
  157. package/dist/chunk-OAXQPLTG.js +604 -0
  158. package/dist/chunk-OI2CKYAQ.js +846 -0
  159. package/dist/chunk-OL3QHART.js +188 -0
  160. package/dist/chunk-OXYWSVOJ.js +100 -0
  161. package/dist/chunk-PG5R35QY.js +73 -0
  162. package/dist/chunk-PG5R35QY.js.map +1 -0
  163. package/dist/chunk-PHZOMTI6.js +97 -0
  164. package/dist/chunk-PYWIHAVD.js +64 -0
  165. package/dist/chunk-QPPQXU3U.js +98 -0
  166. package/dist/chunk-QTKNS2U2.js +149 -0
  167. package/dist/chunk-QTLIXCVN.js +46 -0
  168. package/dist/chunk-QUYDMAQN.js +169 -0
  169. package/dist/chunk-R5LRBDEM.js +136 -0
  170. package/dist/chunk-RIA5RXPL.js +387 -0
  171. package/dist/chunk-S556LOAP.js +930 -0
  172. package/dist/chunk-S556LOAP.js.map +1 -0
  173. package/dist/chunk-SIKCVWM3.js +76 -0
  174. package/dist/chunk-SOS4QFLE.js +5471 -0
  175. package/dist/chunk-SOS4QFLE.js.map +1 -0
  176. package/dist/chunk-SVNH6P7O.js +1744 -0
  177. package/dist/chunk-T65Y7N7H.js +225 -0
  178. package/dist/chunk-T75WL56Z.js +224 -0
  179. package/dist/chunk-TGCDXZ5X.js +910 -0
  180. package/dist/chunk-TOUF5ME6.js +1646 -0
  181. package/dist/chunk-TWCS6FSC.js +191 -0
  182. package/dist/chunk-ULW4EWAA.js +39 -0
  183. package/dist/chunk-UPXPBA4W.js +676 -0
  184. package/dist/chunk-URMAEVZO.js +150 -0
  185. package/dist/chunk-UUWUJ64R.js +197 -0
  186. package/dist/chunk-VCOIFNYH.js +714 -0
  187. package/dist/chunk-VGUGFRWF.js +494 -0
  188. package/dist/chunk-VPF5A7CM.js +476 -0
  189. package/dist/chunk-VYJLS64A.js +1902 -0
  190. package/dist/chunk-VYJLS64A.js.map +1 -0
  191. package/dist/chunk-WEQZ563U.js +319 -0
  192. package/dist/chunk-WUCTGDV7.js +163 -0
  193. package/dist/chunk-XAW5GL6B.js +76 -0
  194. package/dist/chunk-XCRYRVKK.js +5368 -0
  195. package/dist/chunk-XJ5TX772.js +131 -0
  196. package/dist/chunk-XPIBSDG4.js +274 -0
  197. package/dist/chunk-XRNJRQ6Q.js +26 -0
  198. package/dist/chunk-Y5GQO6CR.js +56 -0
  199. package/dist/chunk-Y6MLSN6W.js +1919 -0
  200. package/dist/chunk-YBFZJ5EB.js +66 -0
  201. package/dist/chunk-YJYKSMLF.js +296 -0
  202. package/dist/chunk-YR3OPPUE.js +142 -0
  203. package/dist/chunk-YXQFCQX2.js +64 -0
  204. package/dist/chunk-Z3Y67AH6.js +98 -0
  205. package/dist/chunk-Z6T6VDDA.js +76 -0
  206. package/dist/chunk-ZKRRYVDG.js +23 -0
  207. package/dist/chunk-ZOH672S6.js +25 -0
  208. package/dist/claim-DWGPEVJN.js +200 -0
  209. package/dist/cli.js +45 -45
  210. package/dist/client-YUVT3RZN.js +19 -0
  211. package/dist/code-LOOWLRUL.js +76 -0
  212. package/dist/companies-3VT7OJAA.js +198 -0
  213. package/dist/company-XEPW45AT.js +308 -0
  214. package/dist/complete-AEX34ICU.js +84 -0
  215. package/dist/config-AOF6ACIP.js +88 -0
  216. package/dist/connect-TF4FCXDV.js +45 -0
  217. package/dist/content-NCW5IJFR.js +85 -0
  218. package/dist/conversation-6WWZMPAB.js +96 -0
  219. package/dist/conversion-report-I6R2FDCD.js +127 -0
  220. package/dist/conversion-upload-command-QD6MGLY4.js +439 -0
  221. package/dist/conversion-writes-H2JOAORW.js +122 -0
  222. package/dist/conversions-D46PQRWF.js +140 -0
  223. package/dist/conversions-WGW43FUE.js +78 -0
  224. package/dist/copy-writes-ONVSSBLJ.js +170 -0
  225. package/dist/countries-Q6TA42P7.js +82 -0
  226. package/dist/create-7WV7XWZV.js +62 -0
  227. package/dist/create-OUZZLPQK.js +210 -0
  228. package/dist/create-QRT6O5PN.js +135 -0
  229. package/dist/create-WSEYNFTP.js +239 -0
  230. package/dist/creatives-BSZY7VDQ.js +223 -0
  231. package/dist/creatives-DBDFDHX7.js +58 -0
  232. package/dist/creatives-S3EZCXUT.js +89 -0
  233. package/dist/credentials-P7GQYIE3.js +290 -0
  234. package/dist/critique-6F4FWQN5.js +232 -0
  235. package/dist/critique-X2YDOMON.js +1451 -0
  236. package/dist/crm-O6YG6777.js +227 -0
  237. package/dist/crm-VNAUSVC5.js +323 -0
  238. package/dist/crop-RDP7YCNV.js +113 -0
  239. package/dist/currency-UVT3HEZT.js +88 -0
  240. package/dist/custom-conversions-7MZFTHUM.js +128 -0
  241. package/dist/customers-VJ3TXILQ.js +59 -0
  242. package/dist/decide-OPCCKAIT.js +199 -0
  243. package/dist/delete-3H377GOM.js +67 -0
  244. package/dist/delete-EH3XL26Z.js +57 -0
  245. package/dist/delete-GKQTDOZF.js +69 -0
  246. package/dist/delete-KZFI235B.js +85 -0
  247. package/dist/delete-KZFI235B.js.map +1 -0
  248. package/dist/delete-QYSOAVP4.js +69 -0
  249. package/dist/delete-R3LXCKA4.js +71 -0
  250. package/dist/demographics-GKJZ5PV2.js +141 -0
  251. package/dist/describe-537PPL7P.js +97 -0
  252. package/dist/describe-GIG46DT5.js +97 -0
  253. package/dist/dimensions-UXK7DMTF.js +101 -0
  254. package/dist/discard-46RALLBO.js +69 -0
  255. package/dist/discover-C4TG7JP7.js +172 -0
  256. package/dist/discover-MKFDG6NK.js +93 -0
  257. package/dist/domain-JNNWJNQE.js +101 -0
  258. package/dist/download-3R5IHN5F.js +172 -0
  259. package/dist/download-PRBLR6IQ.js +299 -0
  260. package/dist/draft-3L4SNDGO.js +283 -0
  261. package/dist/draft-EADHX7XL.js +335 -0
  262. package/dist/draft-H5RVDTFD.js +240 -0
  263. package/dist/draft-TAM7IUPH.js +220 -0
  264. package/dist/draft-UMPCOCP6.js +100 -0
  265. package/dist/draft-VSXBSXSX.js +308 -0
  266. package/dist/draft-XCYSZWA6.js +310 -0
  267. package/dist/draft-XEUHTUMR.js +103 -0
  268. package/dist/engine/index.js +15 -14
  269. package/dist/env-VBSATLEF.js +53 -0
  270. package/dist/experiment-2XR6MBE2.js +1397 -0
  271. package/dist/experiments-JVGAKWFA.js +236 -0
  272. package/dist/export-YCLJG5YP.js +168 -0
  273. package/dist/extract-E3CMEN5U.js +113 -0
  274. package/dist/facets-JG44XXAT.js +117 -0
  275. package/dist/favorites-NSQX6HKB.js +178 -0
  276. package/dist/feed-TKMMYAEH.js +177 -0
  277. package/dist/feedback-3JCNU6MT.js +115 -0
  278. package/dist/feedback-3JCNU6MT.js.map +1 -0
  279. package/dist/feedback-record-7WXGKXNS.js +269 -0
  280. package/dist/feedback-record-7WXGKXNS.js.map +1 -0
  281. package/dist/fetch-EHP2FK6Y.js +139 -0
  282. package/dist/fetch-SLDDORH4.js +179 -0
  283. package/dist/find-I7U3THF3.js +143 -0
  284. package/dist/fit-GNQHRKP7.js +65 -0
  285. package/dist/flows-NRPABVUJ.js +250 -0
  286. package/dist/follow-A46RAJEX.js +94 -0
  287. package/dist/follow-competitors-VU2L3KWF.js +112 -0
  288. package/dist/following-UOUNSU6P.js +113 -0
  289. package/dist/fonts-VN2QXPAQ.js +39 -0
  290. package/dist/forecast-SIX6AAVX.js +121 -0
  291. package/dist/forecast-ZXOSLITM.js +169 -0
  292. package/dist/funding-2VROIMLS.js +85 -0
  293. package/dist/funnel-QEZWKSFR.js +397 -0
  294. package/dist/ga4-ULHKTF23.js +55 -0
  295. package/dist/generate-HOMLLUCN.js +263 -0
  296. package/dist/get-5E4YJKPO.js +66 -0
  297. package/dist/get-5E4YJKPO.js.map +1 -0
  298. package/dist/get-ABQZJ2VQ.js +38 -0
  299. package/dist/get-ASAW6TVF.js +62 -0
  300. package/dist/get-ASAW6TVF.js.map +1 -0
  301. package/dist/get-BXMLPLIC.js +82 -0
  302. package/dist/get-GXVAJZHM.js +56 -0
  303. package/dist/get-GXVAJZHM.js.map +1 -0
  304. package/dist/get-IF7KHMSI.js +92 -0
  305. package/dist/get-NF3SPPVX.js +59 -0
  306. package/dist/get-ZISAHMTQ.js +59 -0
  307. package/dist/gif-QLNWBFAH.js +102 -0
  308. package/dist/google-FDR55RRD.js +136 -0
  309. package/dist/google-XVSL3XAB.js +3267 -0
  310. package/dist/google-ads-5NBAMFPB.js +198 -0
  311. package/dist/group-HAQM6P7M.js +43 -0
  312. package/dist/group-XVDH2ONO.js +43 -0
  313. package/dist/gsc-72AFO6B4.js +30 -0
  314. package/dist/history-2U5OXDV7.js +102 -0
  315. package/dist/history-A6KMJRPZ.js +69 -0
  316. package/dist/history-IDVWUSYU.js +136 -0
  317. package/dist/hubspot-YPBNNVHC.js +782 -0
  318. package/dist/icon-F7AOOTFI.js +137 -0
  319. package/dist/ideas-4Q7YBUGC.js +45 -0
  320. package/dist/images-BRBSRYEX.js +92 -0
  321. package/dist/improve-LIKOER3S.js +86 -0
  322. package/dist/ingest-AIOFOAQE.js +27 -0
  323. package/dist/ingest-HPEBFXCP.js +123 -0
  324. package/dist/ingest-HPEBFXCP.js.map +1 -0
  325. package/dist/insights-QNE6XCBA.js +439 -0
  326. package/dist/insights-TR5EQAMA.js +132 -0
  327. package/dist/inspect-ITKB2QT3.js +192 -0
  328. package/dist/inspiration-VXNGKAJV.js +53 -0
  329. package/dist/instant-experiences-MT2XMQNH.js +260 -0
  330. package/dist/intent-E6HKRMNE.js +95 -0
  331. package/dist/job-TS34W4IU.js +202 -0
  332. package/dist/job-create-FXXDR2EE.js +109 -0
  333. package/dist/job-status-R2H4HNC5.js +74 -0
  334. package/dist/keep-YSU3XMW3.js +78 -0
  335. package/dist/keyword-gap-D4WAEJAH.js +130 -0
  336. package/dist/keyword-metrics-4UDT5GNW.js +200 -0
  337. package/dist/keywords-for-site-YQAQQIHJ.js +131 -0
  338. package/dist/knowledge-L3VLOVLG.js +195 -0
  339. package/dist/landing-6JAIZH4H.js +28 -0
  340. package/dist/landings-XTPNPTHN.js +151 -0
  341. package/dist/languages-AUAZIVL4.js +40 -0
  342. package/dist/languages-DIKRMAYE.js +55 -0
  343. package/dist/launches-5R7EUONQ.js +19 -0
  344. package/dist/layerize-Q2QWDARG.js +190 -0
  345. package/dist/lead-routes-IXUCGINI.js +733 -0
  346. package/dist/leads-6XZRTPJL.js +115 -0
  347. package/dist/leads-UVG6VYAC.js +540 -0
  348. package/dist/learn-VQGATNB4.js +207 -0
  349. package/dist/library-G5YAFLTR.js +211 -0
  350. package/dist/lighthouse-BCBV2XGP.js +75 -0
  351. package/dist/line-item-writes-TRTDQ55N.js +211 -0
  352. package/dist/line-items-SC73GQLQ.js +107 -0
  353. package/dist/link-ODLNZTZC.js +67 -0
  354. package/dist/linkedin-HPZP4MGS.js +1328 -0
  355. package/dist/linkedin-person-ELEPEST5.js +139 -0
  356. package/dist/list-26EOYW37.js +154 -0
  357. package/dist/list-4SDJZVOL.js +93 -0
  358. package/dist/list-6YW4I4VG.js +65 -0
  359. package/dist/list-GLN62MRB.js +67 -0
  360. package/dist/list-GS42LK5C.js +51 -0
  361. package/dist/list-HWNHRWGB.js +57 -0
  362. package/dist/list-QSBEYU45.js +76 -0
  363. package/dist/list-YLPOXOCI.js +306 -0
  364. package/dist/list-ZFGOONWL.js +50 -0
  365. package/dist/locations-D5N75BUK.js +69 -0
  366. package/dist/locations-P5PTCRSF.js +40 -0
  367. package/dist/log-66XLWNCD.js +95 -0
  368. package/dist/logo-ABO4HJRG.js +18 -0
  369. package/dist/lookup-SPNT3W3W.js +23 -0
  370. package/dist/make-3ADCSNFC.js +1367 -0
  371. package/dist/make-3ADCSNFC.js.map +1 -0
  372. package/dist/map-3SGKGWSY.js +436 -0
  373. package/dist/mcp-ZSPJE3Y6.js +729 -0
  374. package/dist/media-CIJW2Q3I.js +89 -0
  375. package/dist/media-GZKW2PZB.js +18 -0
  376. package/dist/media-sources-UBQCVRGK.js +35 -0
  377. package/dist/members-76XFDSMX.js +47 -0
  378. package/dist/meme-BPWX7YQH.js +100 -0
  379. package/dist/meta-KVOSCSPJ.js +122 -0
  380. package/dist/metrics-XCD3IJSM.js +152 -0
  381. package/dist/models-WNK7Z6TR.js +155 -0
  382. package/dist/normalize-NMNOJ6Q5.js +806 -0
  383. package/dist/normalize-VC7HUODA.js +144 -0
  384. package/dist/options-5BPPM5N3.js +125 -0
  385. package/dist/organization-PXND43LQ.js +949 -0
  386. package/dist/output-34QMC3OU.js +24 -0
  387. package/dist/page-UDF3LJHP.js +105 -0
  388. package/dist/page-photos-FCBW5UZS.js +118 -0
  389. package/dist/pages-5W5G4MRB.js +67 -0
  390. package/dist/performance-DDZOJ5GD.js +5565 -0
  391. package/dist/performance-Q25RDNM6.js +27 -0
  392. package/dist/pinterest-IABDXLF5.js +96 -0
  393. package/dist/pixels-4QAWLSEL.js +109 -0
  394. package/dist/pixels-KRK2B7M3.js +62 -0
  395. package/dist/plan-I6EFL7RC.js +208 -0
  396. package/dist/posts-SXQSLOFV.js +36 -0
  397. package/dist/preview-7Y5LE24E.js +218 -0
  398. package/dist/profile-R5VPOOJU.js +159 -0
  399. package/dist/promoted-tweet-writes-LIFJFF7N.js +183 -0
  400. package/dist/promoted-tweets-H5RMRQD2.js +119 -0
  401. package/dist/properties-2D2BIDGC.js +101 -0
  402. package/dist/publish-LBHYEZW3.js +344 -0
  403. package/dist/query-A53T6QJF.js +62 -0
  404. package/dist/query-LB5H7IRK.js +236 -0
  405. package/dist/query-NDOYOIHL.js +247 -0
  406. package/dist/questionnaire-U767HYDE.js +94 -0
  407. package/dist/read-3TCDDALC.js +141 -0
  408. package/dist/reddit-H4R23K27.js +29 -0
  409. package/dist/refresh-3QKUSERK.js +97 -0
  410. package/dist/refresh-GIB6QQZS.js +42 -0
  411. package/dist/release-JMYTQZLK.js +63 -0
  412. package/dist/relevant-pages-DOCKQEMZ.js +99 -0
  413. package/dist/remove-F7GEZMKB.js +53 -0
  414. package/dist/remove-LZQHDFZF.js +49 -0
  415. package/dist/reopen-Y557X6IX.js +66 -0
  416. package/dist/rerun-RWBKQGVF.js +96 -0
  417. package/dist/rerun-RWBKQGVF.js.map +1 -0
  418. package/dist/research-3OJ5UZER.js +265 -0
  419. package/dist/research-AYO522XS.js +72 -0
  420. package/dist/reset-BL7M4LL7.js +57 -0
  421. package/dist/reset-PMVUQTYU.js +57 -0
  422. package/dist/resolve-CSWSGGK6.js +124 -0
  423. package/dist/retry-MVOPE2O2.js +65 -0
  424. package/dist/retry-WT46B5SC.js +63 -0
  425. package/dist/retry-failed-PEAUXGNT.js +45 -0
  426. package/dist/revenue-ZLE645Z5.js +91 -0
  427. package/dist/rule-writes-G25O5JZS.js +525 -0
  428. package/dist/rules-KSOAKEI3.js +217 -0
  429. package/dist/rules-Q6HWHFVU.js +99 -0
  430. package/dist/rules-add-7EPXWSQV.js +465 -0
  431. package/dist/run-4DE5XUVB.js +71 -0
  432. package/dist/run-PAND6N4V.js +69 -0
  433. package/dist/scaffold-ad-44INCR5V.js +1513 -0
  434. package/dist/scaffold-ad-44INCR5V.js.map +1 -0
  435. package/dist/scaffold-static-ad-ATXP44TE.js +1011 -0
  436. package/dist/scaffold-static-ad-ATXP44TE.js.map +1 -0
  437. package/dist/scaffold-video-L4FQWQ5A.js +885 -0
  438. package/dist/scaffold-video-L4FQWQ5A.js.map +1 -0
  439. package/dist/schedule-CSE2XFFF.js +64 -0
  440. package/dist/schedule-TNF6M6UD.js +67 -0
  441. package/dist/scheduled-agents-NXHXQZBO.js +55 -0
  442. package/dist/schema-2YQAQVON.js +121 -0
  443. package/dist/schema-QITMY7ZE.js +135 -0
  444. package/dist/scrape-FDBYU3TU.js +2241 -0
  445. package/dist/screenshot-QSRWL4J6.js +102 -0
  446. package/dist/search-BOCQFUM3.js +51 -0
  447. package/dist/search-CENPR7GA.js +224 -0
  448. package/dist/search-GEXDRTAQ.js +26 -0
  449. package/dist/search-HOYOSX2H.js +177 -0
  450. package/dist/search-LFTFNDMC.js +91 -0
  451. package/dist/search-PYLNVZXI.js +92 -0
  452. package/dist/search-copy-RLRRR3LB.js +168 -0
  453. package/dist/seeds-E2GLHJ2T.js +101 -0
  454. package/dist/select-E5TP7JR6.js +110 -0
  455. package/dist/select-E5TP7JR6.js.map +1 -0
  456. package/dist/sends-NBTGBZT7.js +349 -0
  457. package/dist/sequences-UOIHUOD3.js +146 -0
  458. package/dist/set-prompt-QGV3IUIP.js +199 -0
  459. package/dist/set-prompt-QGV3IUIP.js.map +1 -0
  460. package/dist/setup-links-HQ6WVKEP.js +144 -0
  461. package/dist/shared-IMDHTVSW.js +32 -0
  462. package/dist/shopify-6MLRXSC2.js +3958 -0
  463. package/dist/site-5B44TV46.js +180 -0
  464. package/dist/sitemaps-6A6JFBV4.js +87 -0
  465. package/dist/sites-PZLE5FFV.js +101 -0
  466. package/dist/skills-FBIVWINH.js +47 -0
  467. package/dist/sources-OMINR6RG.js +30 -0
  468. package/dist/sources-PNEWSEBG.js +457 -0
  469. package/dist/stale-G2BPCBYZ.js +90 -0
  470. package/dist/stale-G2BPCBYZ.js.map +1 -0
  471. package/dist/stats-2NLNQBRY.js +34 -0
  472. package/dist/status-QNXQNAKH.js +65 -0
  473. package/dist/sticker-4NKFAGEK.js +94 -0
  474. package/dist/stock-XOXZGGU3.js +179 -0
  475. package/dist/studies-C5IINK5Y.js +250 -0
  476. package/dist/studio-BNYFU6ZH.js +49 -0
  477. package/dist/study-writes-GJXLMM3D.js +470 -0
  478. package/dist/suggest-Z553OSYW.js +66 -0
  479. package/dist/sync-CIRDY55O.js +279 -0
  480. package/dist/sync-OYOS7HQL.js +57 -0
  481. package/dist/sync-UBOHNOXB.js +55 -0
  482. package/dist/sync-definition-2VEFGHYK.js +70 -0
  483. package/dist/tag-22TFBGDG.js +57 -0
  484. package/dist/tag-manager-QLZHU6NG.js +43 -0
  485. package/dist/tags-56H6O7ZL.js +26 -0
  486. package/dist/tags-CYR2IPEJ.js +23 -0
  487. package/dist/tags-RBUYBAA6.js +227 -0
  488. package/dist/tags-WVJNOATS.js +23 -0
  489. package/dist/tags-ZTVOZOYP.js +23 -0
  490. package/dist/targeting-GNEBULXU.js +762 -0
  491. package/dist/targeting-constants-GR6BVM2H.js +118 -0
  492. package/dist/targeting-criteria-EZNZOUAE.js +113 -0
  493. package/dist/targets-CU7IUPV2.js +106 -0
  494. package/dist/terms-LG7FYQOG.js +102 -0
  495. package/dist/testimonials-THJJYQ42.js +32 -0
  496. package/dist/themes-TSEMQ4EJ.js +95 -0
  497. package/dist/top-companies-W6DA3MZQ.js +111 -0
  498. package/dist/transcript-KZ74PK23.js +165 -0
  499. package/dist/translate-FQOYDETZ.js +603 -0
  500. package/dist/translate-FQOYDETZ.js.map +1 -0
  501. package/dist/triggers-OJKTDJSV.js +144 -0
  502. package/dist/tweets-IF5FFFTH.js +123 -0
  503. package/dist/unfollow-CDUOZWM7.js +46 -0
  504. package/dist/unlink-ZE7464NK.js +70 -0
  505. package/dist/unstage-OVOZE6DA.js +96 -0
  506. package/dist/unstage-RGIPGM3E.js +88 -0
  507. package/dist/update-2VYVJCY2.js +192 -0
  508. package/dist/update-63MMKPHI.js +155 -0
  509. package/dist/update-JHWPEJN7.js +66 -0
  510. package/dist/update-Q3WJ3DQN.js +81 -0
  511. package/dist/update-WHHAH4IE.js +101 -0
  512. package/dist/upload-7XG5LU7C.js +130 -0
  513. package/dist/upload-7XG5LU7C.js.map +1 -0
  514. package/dist/upload-EAEILUQB.js +150 -0
  515. package/dist/upscale-HB6L6SZG.js +109 -0
  516. package/dist/url-options-2BGF2D5E.js +131 -0
  517. package/dist/url-params-FBDTXQGY.js +101 -0
  518. package/dist/use-HGX7ZRH5.js +111 -0
  519. package/dist/use-HGX7ZRH5.js.map +1 -0
  520. package/dist/validate-Z3SRQKSO.js +125 -0
  521. package/dist/validate-Z3SRQKSO.js.map +1 -0
  522. package/dist/variant-O7LXOA2E.js +338 -0
  523. package/dist/videos-4TLBI3E3.js +41 -0
  524. package/dist/view-ED636LWD.js +121 -0
  525. package/dist/viewer-check-ELVSS3DM.js +83 -0
  526. package/dist/web-LDR6HO5M.js +143 -0
  527. package/dist/winners-ZG5SHNBS.js +113 -0
  528. package/dist/winning-ads-7SWUVUDA.js +86 -0
  529. package/dist/write-commands-24FRMQW4.js +1525 -0
  530. package/dist/write-commands-AIWR7NBO.js +713 -0
  531. package/dist/write-commands-UK6MKGHI.js +206 -0
  532. package/dist/write-commands-W3UN6F4Y.js +1172 -0
  533. package/dist/x-UOGRWXET.js +47 -0
  534. package/package.json +1 -1
  535. package/dist/account-2G3IT7J4.js +0 -82
  536. package/dist/account-CQJFUII3.js +0 -139
  537. package/dist/account-ULC5N7SI.js +0 -82
  538. package/dist/account-assets-IDVG4DGK.js +0 -290
  539. package/dist/account-level-GK7M2MMQ.js +0 -611
  540. package/dist/account-reads-FRFI6OHK.js +0 -219
  541. package/dist/account-users-PINZLBT7.js +0 -64
  542. package/dist/account-writes-WRGJC7VU.js +0 -68
  543. package/dist/accounts-2KFG33EX.js +0 -80
  544. package/dist/accounts-5754XUS3.js +0 -115
  545. package/dist/accounts-KRW3JNCW.js +0 -76
  546. package/dist/accounts-MHPNZW3W.js +0 -701
  547. package/dist/accounts-MTNBMXHD.js +0 -114
  548. package/dist/actions-33IZOT5C.js +0 -55
  549. package/dist/active-entities-JR5B32X2.js +0 -103
  550. package/dist/activecampaign-BV5GZFVR.js +0 -938
  551. package/dist/activities-2RAJXP3J.js +0 -75
  552. package/dist/ad-group-writes-W6RCMYLC.js +0 -172
  553. package/dist/ad-groups-XAI2Z62X.js +0 -70
  554. package/dist/ad-writes-IGWZRTXY.js +0 -176
  555. package/dist/add-4PJDIW2M.js +0 -148
  556. package/dist/add-DBCN33GH.js +0 -107
  557. package/dist/add-KB7O7NSB.js +0 -97
  558. package/dist/add-PRU32PQN.js +0 -81
  559. package/dist/add-UZDOQAJL.js +0 -80
  560. package/dist/add-WDX66JSM.js +0 -305
  561. package/dist/add-accounts-ZWXG6HLM.js +0 -91
  562. package/dist/ads-255V76SZ.js +0 -79
  563. package/dist/ads-7TEPA4KZ.js +0 -48
  564. package/dist/ads-I6I4MYQH.js +0 -128
  565. package/dist/ads-JVBLNTBF.js +0 -120
  566. package/dist/adsets-FN5ZWSYF.js +0 -182
  567. package/dist/advertisers-BPJWOY7I.js +0 -125
  568. package/dist/advertisers-SJO6JYIO.js +0 -123
  569. package/dist/analytics-TXPEXLPQ.js +0 -447
  570. package/dist/analytics-XDWBEY57.js +0 -2437
  571. package/dist/animate-425S4ZXS.js +0 -480
  572. package/dist/approved-KUVAJ5M7.js +0 -73
  573. package/dist/asset-writes-SSI3CO2A.js +0 -50
  574. package/dist/assign-CTV6LDEI.js +0 -80
  575. package/dist/audience-size-5QYI5PKH.js +0 -76
  576. package/dist/audience-writes-G64754LR.js +0 -327
  577. package/dist/audiences-JAVNJ5NC.js +0 -86
  578. package/dist/audiences-JZ6SCEUC.js +0 -280
  579. package/dist/audiences-OMLKMHEJ.js +0 -85
  580. package/dist/audit-2YFDJAKL.js +0 -88
  581. package/dist/audit-4UE6GFLG.js +0 -154
  582. package/dist/autocomplete-HTUV2UDS.js +0 -114
  583. package/dist/avatars-K7RBSMIJ.js +0 -38
  584. package/dist/bid-pricing-OWP4SZP5.js +0 -103
  585. package/dist/brand-GBP4OEJI.js +0 -22
  586. package/dist/brief-SLTB3EPO.js +0 -543
  587. package/dist/businesses-DXRDQIFP.js +0 -54
  588. package/dist/campaign-groups-LDOQU65Q.js +0 -99
  589. package/dist/campaign-writes-SHF3XZXV.js +0 -176
  590. package/dist/campaign-writes-SK55QLY5.js +0 -168
  591. package/dist/campaigns-6CAKRANC.js +0 -113
  592. package/dist/campaigns-EHV7J7PW.js +0 -111
  593. package/dist/campaigns-GG7LLI4X.js +0 -78
  594. package/dist/campaigns-GQWFSKGC.js +0 -130
  595. package/dist/canvas-2VRPGRND.js +0 -46
  596. package/dist/capabilities-BEZXR2FZ.js +0 -147
  597. package/dist/cards-J2PGFKEF.js +0 -85
  598. package/dist/catalog-XECCXRM6.js +0 -65
  599. package/dist/catalog-XECCXRM6.js.map +0 -1
  600. package/dist/catalogs-P5KMIMC2.js +0 -130
  601. package/dist/catalogs-TBRONC2D.js +0 -781
  602. package/dist/changes-3COSIJLU.js +0 -135
  603. package/dist/chatgpt-S5EVEKYV.js +0 -47
  604. package/dist/chats-AN52YVBT.js +0 -279
  605. package/dist/check-AQO7CMDD.js +0 -107
  606. package/dist/chunk-2MXDSPUO.js +0 -76
  607. package/dist/chunk-2SGREP24.js +0 -76
  608. package/dist/chunk-34FVKJS2.js +0 -64
  609. package/dist/chunk-364TCROV.js +0 -207
  610. package/dist/chunk-3H5MJOG2.js +0 -91
  611. package/dist/chunk-3J3W23S4.js +0 -592
  612. package/dist/chunk-3KMYOPBI.js +0 -98
  613. package/dist/chunk-3WSJGYA3.js +0 -148
  614. package/dist/chunk-44ZRCSR7.js +0 -228
  615. package/dist/chunk-46YLDIQG.js +0 -4254
  616. package/dist/chunk-46YLDIQG.js.map +0 -1
  617. package/dist/chunk-4745PLPI.js +0 -111
  618. package/dist/chunk-4JS2O2KV.js +0 -89
  619. package/dist/chunk-4ULRDQVD.js +0 -714
  620. package/dist/chunk-4VXQAJRU.js +0 -225
  621. package/dist/chunk-4XXA4WCS.js +0 -207
  622. package/dist/chunk-52IYZCRS.js +0 -476
  623. package/dist/chunk-56OEYUJU.js +0 -61
  624. package/dist/chunk-5CTNSIWY.js +0 -69
  625. package/dist/chunk-5EF7ZLXA.js +0 -942
  626. package/dist/chunk-5EF7ZLXA.js.map +0 -1
  627. package/dist/chunk-62QMJYML.js +0 -167
  628. package/dist/chunk-6B4KNOJZ.js +0 -75
  629. package/dist/chunk-6M77QNJ4.js +0 -69
  630. package/dist/chunk-7HH4F2KX.js +0 -188
  631. package/dist/chunk-7O4HFODK.js +0 -26
  632. package/dist/chunk-AFQF6ISC.js +0 -215
  633. package/dist/chunk-AXTOIHH2.js +0 -74
  634. package/dist/chunk-B4UVJCJ4.js +0 -229
  635. package/dist/chunk-BN4TDL5L.js +0 -217
  636. package/dist/chunk-C5UFKDAX.js +0 -377
  637. package/dist/chunk-CKTVRR3D.js +0 -57
  638. package/dist/chunk-CREEY2FS.js +0 -455
  639. package/dist/chunk-CSCHS3JG.js +0 -8954
  640. package/dist/chunk-DJWEQDBB.js +0 -98
  641. package/dist/chunk-DLNADMQV.js +0 -547
  642. package/dist/chunk-DNWP5DL6.js +0 -42
  643. package/dist/chunk-DW3OPKXI.js +0 -51
  644. package/dist/chunk-ECJIMIEJ.js +0 -142
  645. package/dist/chunk-EHIISZYD.js +0 -296
  646. package/dist/chunk-ERRTBCDW.js +0 -191
  647. package/dist/chunk-EZBZU6N7.js +0 -66
  648. package/dist/chunk-FBG3JDET.js +0 -97
  649. package/dist/chunk-FOWT6ENH.js +0 -170
  650. package/dist/chunk-FSGJSREN.js +0 -2437
  651. package/dist/chunk-FSGJSREN.js.map +0 -1
  652. package/dist/chunk-FVZL2YC5.js +0 -3868
  653. package/dist/chunk-FVZL2YC5.js.map +0 -1
  654. package/dist/chunk-GDQJG4BO.js +0 -91
  655. package/dist/chunk-GEFZVG4P.js +0 -219
  656. package/dist/chunk-GLCHD54W.js +0 -74
  657. package/dist/chunk-GT77XMOG.js +0 -23
  658. package/dist/chunk-GXPZJ2QN.js +0 -225
  659. package/dist/chunk-HAJYFRXL.js +0 -224
  660. package/dist/chunk-HPDGVK6R.js +0 -324
  661. package/dist/chunk-HVJJEQDQ.js +0 -7234
  662. package/dist/chunk-I7AYMJZA.js +0 -783
  663. package/dist/chunk-ILEJXJH2.js +0 -1518
  664. package/dist/chunk-J4ASA24X.js +0 -203
  665. package/dist/chunk-JAC6JVCI.js +0 -26
  666. package/dist/chunk-JCVPZ7CV.js +0 -638
  667. package/dist/chunk-KG7FPYM2.js +0 -64
  668. package/dist/chunk-KRQ2AXFW.js +0 -191
  669. package/dist/chunk-L5IYVZM2.js +0 -39
  670. package/dist/chunk-LHQ6GXNF.js +0 -46
  671. package/dist/chunk-LS2KEAYJ.js +0 -66
  672. package/dist/chunk-LURM3KKS.js +0 -94
  673. package/dist/chunk-MCJ5I5LR.js +0 -3187
  674. package/dist/chunk-MCJ5I5LR.js.map +0 -1
  675. package/dist/chunk-MHH7SGLS.js +0 -106
  676. package/dist/chunk-MZIYRWXL.js +0 -285
  677. package/dist/chunk-MZPS46OR.js +0 -76
  678. package/dist/chunk-NY5VYGTP.js +0 -97
  679. package/dist/chunk-O37YK4P6.js +0 -136
  680. package/dist/chunk-OYNBUT5X.js +0 -479
  681. package/dist/chunk-PGBZ73UZ.js +0 -429
  682. package/dist/chunk-PN72Z2W2.js +0 -56
  683. package/dist/chunk-QJ5TU5J6.js +0 -100
  684. package/dist/chunk-QNLPZOHV.js +0 -84
  685. package/dist/chunk-QNXDSNOQ.js +0 -544
  686. package/dist/chunk-QOC3JEUQ.js +0 -363
  687. package/dist/chunk-QOC3JEUQ.js.map +0 -1
  688. package/dist/chunk-R44B522K.js +0 -139
  689. package/dist/chunk-R5GGTLYE.js +0 -846
  690. package/dist/chunk-R6T25WTZ.js +0 -344
  691. package/dist/chunk-RUJS2NOA.js +0 -297
  692. package/dist/chunk-S6VFDNSQ.js +0 -63
  693. package/dist/chunk-SDQLZYQG.js +0 -843
  694. package/dist/chunk-SEC6FPWC.js +0 -494
  695. package/dist/chunk-SG2TDQEE.js +0 -150
  696. package/dist/chunk-SJAUMPL3.js +0 -46
  697. package/dist/chunk-SNDHR5QA.js +0 -24026
  698. package/dist/chunk-SNDHR5QA.js.map +0 -1
  699. package/dist/chunk-SP5L7EYC.js +0 -125
  700. package/dist/chunk-SPBNAGIN.js +0 -1646
  701. package/dist/chunk-SWNCS2OD.js +0 -333
  702. package/dist/chunk-T37PAZT2.js +0 -274
  703. package/dist/chunk-T6PTG6VM.js +0 -5368
  704. package/dist/chunk-TE4ASZSC.js +0 -45
  705. package/dist/chunk-TEKML2NW.js +0 -35
  706. package/dist/chunk-TKDOVFO6.js +0 -287
  707. package/dist/chunk-TRMZQRVV.js +0 -1919
  708. package/dist/chunk-TTKDFRON.js +0 -149
  709. package/dist/chunk-U2BPZ27S.js +0 -910
  710. package/dist/chunk-UBDY5RE4.js +0 -387
  711. package/dist/chunk-UPDIBQUC.js +0 -106
  712. package/dist/chunk-V2XEX2YR.js +0 -84
  713. package/dist/chunk-V62ZWGCL.js +0 -103
  714. package/dist/chunk-VCUXAPLM.js +0 -169
  715. package/dist/chunk-VP4PO7FW.js +0 -392
  716. package/dist/chunk-W7C7HZFJ.js +0 -275
  717. package/dist/chunk-WPAW6EVY.js +0 -166
  718. package/dist/chunk-WPSLL3S2.js +0 -604
  719. package/dist/chunk-WW6JLISJ.js +0 -200
  720. package/dist/chunk-WWLZ5RRU.js +0 -319
  721. package/dist/chunk-X3HPRECW.js +0 -52
  722. package/dist/chunk-XGX2WOV2.js +0 -8914
  723. package/dist/chunk-XGX2WOV2.js.map +0 -1
  724. package/dist/chunk-XJHUSJY6.js +0 -156
  725. package/dist/chunk-XPDUBDPL.js +0 -25
  726. package/dist/chunk-XRSRHAEU.js +0 -163
  727. package/dist/chunk-XVHR2NCG.js +0 -249
  728. package/dist/chunk-XWO6CXNG.js +0 -19
  729. package/dist/chunk-XZWBLUDV.js +0 -831
  730. package/dist/chunk-Y25HSPRJ.js +0 -122
  731. package/dist/chunk-Y25HSPRJ.js.map +0 -1
  732. package/dist/chunk-YUCGCJKT.js +0 -676
  733. package/dist/chunk-ZBUIWVF3.js +0 -197
  734. package/dist/chunk-ZFJ2FQUH.js +0 -131
  735. package/dist/chunk-ZNXP3WNJ.js +0 -58
  736. package/dist/chunk-ZVXKWLLE.js +0 -1744
  737. package/dist/claim-NRNO4XCO.js +0 -200
  738. package/dist/client-463NKLRT.js +0 -19
  739. package/dist/code-R4JOQ27J.js +0 -76
  740. package/dist/companies-4TOBU44J.js +0 -198
  741. package/dist/company-RK34S3IA.js +0 -308
  742. package/dist/complete-7BNBQ5AI.js +0 -84
  743. package/dist/config-GDLHHBJZ.js +0 -88
  744. package/dist/connect-CRIRSXN3.js +0 -45
  745. package/dist/content-FCO6MGXW.js +0 -85
  746. package/dist/conversation-4CQG2B2C.js +0 -96
  747. package/dist/conversion-report-PDTQTRVB.js +0 -127
  748. package/dist/conversion-upload-command-MEO4WLZH.js +0 -439
  749. package/dist/conversion-writes-ZVBOXUIA.js +0 -122
  750. package/dist/conversions-BND5HYTL.js +0 -78
  751. package/dist/conversions-POBKTXQF.js +0 -140
  752. package/dist/copy-writes-EUFEVWDW.js +0 -170
  753. package/dist/countries-TKL5T5JL.js +0 -82
  754. package/dist/create-BJ7XBNY5.js +0 -62
  755. package/dist/create-PYP3QWTL.js +0 -135
  756. package/dist/create-XN4KVB5U.js +0 -210
  757. package/dist/create-YSGBH6Q4.js +0 -239
  758. package/dist/creatives-57XIJAEG.js +0 -223
  759. package/dist/creatives-6VJDUHEY.js +0 -89
  760. package/dist/creatives-ANTJUTIE.js +0 -58
  761. package/dist/credentials-KIH6ICDU.js +0 -290
  762. package/dist/critique-GWRXVXVG.js +0 -1451
  763. package/dist/critique-MZUTDK4V.js +0 -232
  764. package/dist/crm-QSHUYXTW.js +0 -323
  765. package/dist/crm-Y5QTZAHO.js +0 -227
  766. package/dist/crop-WKTW3EMP.js +0 -113
  767. package/dist/currency-PTOI5SPU.js +0 -88
  768. package/dist/custom-conversions-NDY5RHSM.js +0 -128
  769. package/dist/customers-2G32E6W7.js +0 -59
  770. package/dist/decide-X2UAKYXK.js +0 -199
  771. package/dist/delete-2ZTMTKYD.js +0 -69
  772. package/dist/delete-3H6YH4YK.js +0 -67
  773. package/dist/delete-FOSTK2RA.js +0 -71
  774. package/dist/delete-FOSTK2RA.js.map +0 -1
  775. package/dist/delete-HIAZHA56.js +0 -57
  776. package/dist/delete-I43JQH2E.js +0 -69
  777. package/dist/delete-RF44ILYE.js +0 -71
  778. package/dist/demographics-2UYQW6II.js +0 -141
  779. package/dist/describe-M6DYXNQC.js +0 -97
  780. package/dist/describe-OQ6R3EF7.js +0 -97
  781. package/dist/dimensions-DGYM5E5P.js +0 -101
  782. package/dist/discard-NKPQ73UM.js +0 -69
  783. package/dist/discover-XLIH7RCB.js +0 -93
  784. package/dist/discover-YKMBVSPF.js +0 -172
  785. package/dist/domain-LUDUZB3F.js +0 -101
  786. package/dist/download-LL6DL62N.js +0 -172
  787. package/dist/download-SFWMT7DL.js +0 -299
  788. package/dist/draft-374Z4MGY.js +0 -103
  789. package/dist/draft-736FJJWK.js +0 -310
  790. package/dist/draft-7LPUJZCF.js +0 -283
  791. package/dist/draft-G432FJ7N.js +0 -240
  792. package/dist/draft-MPWR47CG.js +0 -308
  793. package/dist/draft-R5ND5SWT.js +0 -100
  794. package/dist/draft-T7TWIFEX.js +0 -335
  795. package/dist/draft-XAAIGE6Q.js +0 -220
  796. package/dist/env-DQHY5ODN.js +0 -53
  797. package/dist/experiment-MO6MT6OJ.js +0 -1397
  798. package/dist/experiments-OGZV73W6.js +0 -236
  799. package/dist/export-6Z6QBU6V.js +0 -168
  800. package/dist/extract-YGOQBOQK.js +0 -113
  801. package/dist/facets-OLZ7JLFL.js +0 -117
  802. package/dist/favorites-R3JO4SJJ.js +0 -178
  803. package/dist/feed-IUMMHM3I.js +0 -177
  804. package/dist/feedback-TJRYTOR3.js +0 -111
  805. package/dist/feedback-TJRYTOR3.js.map +0 -1
  806. package/dist/feedback-record-7IAJI5IY.js +0 -265
  807. package/dist/feedback-record-7IAJI5IY.js.map +0 -1
  808. package/dist/fetch-AL44XS4Q.js +0 -139
  809. package/dist/fetch-K3NRT2L2.js +0 -179
  810. package/dist/find-ZFIGMRYQ.js +0 -143
  811. package/dist/fit-5NVXWXZV.js +0 -65
  812. package/dist/flows-LL5SPPIK.js +0 -250
  813. package/dist/follow-SS374QUW.js +0 -94
  814. package/dist/follow-competitors-3LTOTTBY.js +0 -112
  815. package/dist/following-YMA5O3LF.js +0 -113
  816. package/dist/fonts-E3CNWPD5.js +0 -39
  817. package/dist/forecast-KOBF5TKM.js +0 -169
  818. package/dist/forecast-PWGN4ETP.js +0 -121
  819. package/dist/funding-KLIZ73SS.js +0 -85
  820. package/dist/funnel-XIZROHV7.js +0 -397
  821. package/dist/ga4-XPCE4EK5.js +0 -55
  822. package/dist/generate-GHIXVLMY.js +0 -263
  823. package/dist/get-HCGFATFD.js +0 -38
  824. package/dist/get-JR2KZXW5.js +0 -63
  825. package/dist/get-JR2KZXW5.js.map +0 -1
  826. package/dist/get-RDTJSWSA.js +0 -92
  827. package/dist/get-SGNT4JG2.js +0 -59
  828. package/dist/get-TGFXZC5S.js +0 -61
  829. package/dist/get-TGFXZC5S.js.map +0 -1
  830. package/dist/get-WS744HAO.js +0 -59
  831. package/dist/get-XPJ4BZGP.js +0 -82
  832. package/dist/get-YD7GDMDR.js +0 -63
  833. package/dist/get-YD7GDMDR.js.map +0 -1
  834. package/dist/gif-YK5HJXRE.js +0 -102
  835. package/dist/google-5JV7OMOH.js +0 -3267
  836. package/dist/google-BI45CXMW.js +0 -136
  837. package/dist/google-ads-DYZGUM6W.js +0 -198
  838. package/dist/group-7OWIYAKJ.js +0 -43
  839. package/dist/group-H6ZYRPE6.js +0 -43
  840. package/dist/gsc-HI2KXDEU.js +0 -30
  841. package/dist/history-3EQQHYKT.js +0 -69
  842. package/dist/history-RD2YMNNL.js +0 -102
  843. package/dist/history-SQPJ7PPE.js +0 -136
  844. package/dist/hubspot-MYTV36SM.js +0 -782
  845. package/dist/icon-HLJCWTR3.js +0 -137
  846. package/dist/ideas-CVXHFVX7.js +0 -45
  847. package/dist/images-XP4TKE2F.js +0 -92
  848. package/dist/improve-BRC4R6MW.js +0 -86
  849. package/dist/ingest-4GNJ2PWL.js +0 -26
  850. package/dist/ingest-5NYBUZE2.js +0 -110
  851. package/dist/ingest-5NYBUZE2.js.map +0 -1
  852. package/dist/insights-CN3GUTT7.js +0 -132
  853. package/dist/insights-IVW6W5CP.js +0 -439
  854. package/dist/inspect-25IVRU45.js +0 -192
  855. package/dist/inspiration-D75DO3MD.js +0 -53
  856. package/dist/instant-experiences-6F6GXZ67.js +0 -260
  857. package/dist/intent-3GDLPKKN.js +0 -95
  858. package/dist/job-2JJNKUHT.js +0 -202
  859. package/dist/job-create-BNTNZCSP.js +0 -109
  860. package/dist/job-status-N7RWRDRO.js +0 -74
  861. package/dist/keep-Z2WH3CKU.js +0 -78
  862. package/dist/keyword-gap-B2WPVHOB.js +0 -130
  863. package/dist/keyword-metrics-UDGWN7BO.js +0 -200
  864. package/dist/keywords-for-site-GEG6AXD3.js +0 -131
  865. package/dist/knowledge-PKXPN4RV.js +0 -195
  866. package/dist/landing-O2ZUIUGE.js +0 -28
  867. package/dist/landings-7QRITXZ2.js +0 -151
  868. package/dist/languages-RZLMZR57.js +0 -55
  869. package/dist/languages-UJAOPTV2.js +0 -40
  870. package/dist/launches-4H6ANGTG.js +0 -19
  871. package/dist/layerize-P5LFIA4X.js +0 -190
  872. package/dist/lead-routes-WVXWVG62.js +0 -733
  873. package/dist/leads-CJKRKB2Q.js +0 -540
  874. package/dist/leads-MTTOYNPM.js +0 -115
  875. package/dist/learn-QPXZZIZZ.js +0 -207
  876. package/dist/library-VW27X75P.js +0 -211
  877. package/dist/lighthouse-FGUFJRGR.js +0 -75
  878. package/dist/line-item-writes-RVOAMJ5R.js +0 -211
  879. package/dist/line-items-POZRAJLC.js +0 -107
  880. package/dist/link-IXEZKRM7.js +0 -67
  881. package/dist/linkedin-5PYG5HEM.js +0 -1328
  882. package/dist/linkedin-person-EMJXEZYR.js +0 -139
  883. package/dist/list-4KS7WSUG.js +0 -306
  884. package/dist/list-7GDMM26I.js +0 -93
  885. package/dist/list-DVVOP6FM.js +0 -50
  886. package/dist/list-J5KWXHFO.js +0 -76
  887. package/dist/list-OZCU2T22.js +0 -67
  888. package/dist/list-PTK2HOUY.js +0 -51
  889. package/dist/list-Q5LVTPQP.js +0 -57
  890. package/dist/list-UG4V5AM2.js +0 -65
  891. package/dist/list-XOYU7UTX.js +0 -154
  892. package/dist/locations-EISZ6JOT.js +0 -40
  893. package/dist/locations-VJX64ZZR.js +0 -69
  894. package/dist/log-2F2N24DT.js +0 -95
  895. package/dist/logo-H2KHGLYD.js +0 -18
  896. package/dist/lookup-K57ITJWF.js +0 -23
  897. package/dist/make-T6HLXIYY.js +0 -1366
  898. package/dist/make-T6HLXIYY.js.map +0 -1
  899. package/dist/map-QGJZIC5N.js +0 -436
  900. package/dist/mcp-RSW7KAWP.js +0 -729
  901. package/dist/media-HDHZULQ7.js +0 -18
  902. package/dist/media-K5RJXLTN.js +0 -89
  903. package/dist/media-sources-7R7FO53Y.js +0 -35
  904. package/dist/members-B6TKGGT5.js +0 -47
  905. package/dist/meme-QMCUGXUE.js +0 -100
  906. package/dist/meta-MOSJVYIE.js +0 -122
  907. package/dist/metrics-PRIKXVYZ.js +0 -152
  908. package/dist/models-M3E4YFCT.js +0 -155
  909. package/dist/normalize-5B4EQLUX.js +0 -144
  910. package/dist/normalize-5QIGANTK.js +0 -806
  911. package/dist/options-K33CJOR6.js +0 -125
  912. package/dist/organization-A4NFWWWI.js +0 -949
  913. package/dist/output-U5ZV6PST.js +0 -24
  914. package/dist/page-XVOUD4VV.js +0 -105
  915. package/dist/page-photos-4JTIKXAW.js +0 -118
  916. package/dist/pages-BAUS7LQM.js +0 -67
  917. package/dist/performance-MHJDRLEK.js +0 -5565
  918. package/dist/performance-NVURSEZ6.js +0 -27
  919. package/dist/pinterest-NA6HGPMB.js +0 -96
  920. package/dist/pixels-QOSEYXCP.js +0 -109
  921. package/dist/pixels-THDQD3RF.js +0 -62
  922. package/dist/plan-JYSHKPZQ.js +0 -208
  923. package/dist/posts-ILAFADBW.js +0 -36
  924. package/dist/preview-X6EJGPAY.js +0 -218
  925. package/dist/profile-YHI65VGK.js +0 -159
  926. package/dist/promoted-tweet-writes-MXXVRLVQ.js +0 -183
  927. package/dist/promoted-tweets-HFLGXWX2.js +0 -119
  928. package/dist/properties-ZLY6NYVK.js +0 -101
  929. package/dist/publish-6ZXFUBGP.js +0 -344
  930. package/dist/query-ELD7WSFR.js +0 -247
  931. package/dist/query-HFHTLNDN.js +0 -236
  932. package/dist/query-WMEX73ZB.js +0 -62
  933. package/dist/questionnaire-Y37I64FO.js +0 -94
  934. package/dist/read-2HQEZIJW.js +0 -141
  935. package/dist/reddit-BIHGJPGP.js +0 -29
  936. package/dist/refresh-4O32S4YR.js +0 -97
  937. package/dist/refresh-LVV4SPLT.js +0 -42
  938. package/dist/release-VIPNSPQ5.js +0 -63
  939. package/dist/relevant-pages-B5SYN575.js +0 -99
  940. package/dist/remove-2E77743U.js +0 -53
  941. package/dist/remove-TPOWWFZ6.js +0 -49
  942. package/dist/reopen-UOBTJBMQ.js +0 -66
  943. package/dist/rerun-UPDIXTEL.js +0 -95
  944. package/dist/rerun-UPDIXTEL.js.map +0 -1
  945. package/dist/research-ELM3KHGE.js +0 -72
  946. package/dist/research-FOJIDMSE.js +0 -265
  947. package/dist/reset-FTLWUFZK.js +0 -57
  948. package/dist/reset-GIXXLPHQ.js +0 -57
  949. package/dist/resolve-QHR5JJTJ.js +0 -124
  950. package/dist/retry-HNWXJR5U.js +0 -65
  951. package/dist/retry-NY5KFEDA.js +0 -63
  952. package/dist/retry-failed-OAH7JQKD.js +0 -45
  953. package/dist/revenue-JFMUODJO.js +0 -91
  954. package/dist/rule-writes-A4BFYHPA.js +0 -525
  955. package/dist/rules-56E55SGC.js +0 -99
  956. package/dist/rules-HLREXY2M.js +0 -217
  957. package/dist/rules-add-ZOPOWJMY.js +0 -465
  958. package/dist/run-4UIPMCSN.js +0 -69
  959. package/dist/run-GACZDI6Q.js +0 -70
  960. package/dist/scaffold-ad-Z2HSN4PE.js +0 -1512
  961. package/dist/scaffold-ad-Z2HSN4PE.js.map +0 -1
  962. package/dist/scaffold-static-ad-ODZGTIM5.js +0 -1010
  963. package/dist/scaffold-static-ad-ODZGTIM5.js.map +0 -1
  964. package/dist/scaffold-video-EHGAMEEP.js +0 -884
  965. package/dist/scaffold-video-EHGAMEEP.js.map +0 -1
  966. package/dist/schedule-OFPSZVZ2.js +0 -67
  967. package/dist/schedule-ZATNBBWD.js +0 -64
  968. package/dist/scheduled-agents-4VY4CAA2.js +0 -55
  969. package/dist/schema-EYGPETLF.js +0 -121
  970. package/dist/schema-OGP4DUPP.js +0 -135
  971. package/dist/scrape-ZHL2BHS7.js +0 -2241
  972. package/dist/screenshot-ADMRDYWN.js +0 -102
  973. package/dist/search-6W4HXR2S.js +0 -91
  974. package/dist/search-6ZWI2NML.js +0 -92
  975. package/dist/search-CQUS7EOM.js +0 -51
  976. package/dist/search-HF5ECIYW.js +0 -26
  977. package/dist/search-MKVVMJ2Q.js +0 -224
  978. package/dist/search-QUF6LHQ5.js +0 -177
  979. package/dist/search-copy-O6FDX4HT.js +0 -168
  980. package/dist/seeds-5TM3O3K3.js +0 -101
  981. package/dist/select-FCQUYBKV.js +0 -106
  982. package/dist/select-FCQUYBKV.js.map +0 -1
  983. package/dist/sends-MZKHZZGJ.js +0 -349
  984. package/dist/sequences-3CEVHGHB.js +0 -146
  985. package/dist/set-prompt-IBAG6BDA.js +0 -198
  986. package/dist/set-prompt-IBAG6BDA.js.map +0 -1
  987. package/dist/setup-links-4STQ5B4P.js +0 -144
  988. package/dist/shared-I3SB77VH.js +0 -32
  989. package/dist/shopify-7LDHCWUQ.js +0 -3958
  990. package/dist/site-I3NFMPJB.js +0 -180
  991. package/dist/sitemaps-PLAWVXQL.js +0 -87
  992. package/dist/sites-WX2IBTZT.js +0 -101
  993. package/dist/skills-O6EQOAMQ.js +0 -47
  994. package/dist/sources-K2LILGTW.js +0 -30
  995. package/dist/sources-ZM7LEIMM.js +0 -457
  996. package/dist/stale-VR5QAYB6.js +0 -76
  997. package/dist/stale-VR5QAYB6.js.map +0 -1
  998. package/dist/stats-QQRYOMZA.js +0 -34
  999. package/dist/status-5OMVGFCH.js +0 -65
  1000. package/dist/sticker-654HS3K2.js +0 -94
  1001. package/dist/stock-35LOO3YN.js +0 -179
  1002. package/dist/studies-IGOCWM7F.js +0 -250
  1003. package/dist/studio-3D42TUJX.js +0 -49
  1004. package/dist/study-writes-Z5P2W7JH.js +0 -470
  1005. package/dist/suggest-JASHCOL5.js +0 -66
  1006. package/dist/sync-6AN67IX3.js +0 -55
  1007. package/dist/sync-RCDODSOD.js +0 -57
  1008. package/dist/sync-URIRLHTS.js +0 -279
  1009. package/dist/sync-definition-MZUJOJYI.js +0 -69
  1010. package/dist/tag-7YMFAZQQ.js +0 -57
  1011. package/dist/tag-manager-LU4GAZ6R.js +0 -43
  1012. package/dist/tags-6A7QOYBI.js +0 -23
  1013. package/dist/tags-JHT3Q6VO.js +0 -227
  1014. package/dist/tags-KSMLT4G2.js +0 -26
  1015. package/dist/tags-MTVZJHCE.js +0 -23
  1016. package/dist/tags-OU32R2SH.js +0 -23
  1017. package/dist/targeting-7HXKBXWY.js +0 -762
  1018. package/dist/targeting-constants-QIB3UZHM.js +0 -118
  1019. package/dist/targeting-criteria-NUXZB7NP.js +0 -113
  1020. package/dist/targets-LQ7HGI73.js +0 -106
  1021. package/dist/terms-X4OJWTQH.js +0 -102
  1022. package/dist/testimonials-Z2KOOMVH.js +0 -32
  1023. package/dist/themes-6KVP3COR.js +0 -95
  1024. package/dist/top-companies-WWNPUJ23.js +0 -111
  1025. package/dist/transcript-P7HKVABU.js +0 -165
  1026. package/dist/translate-II4JY2XW.js +0 -600
  1027. package/dist/translate-II4JY2XW.js.map +0 -1
  1028. package/dist/triggers-Z3LV3KJR.js +0 -144
  1029. package/dist/tweets-X5PTAT6F.js +0 -123
  1030. package/dist/unfollow-S5LHFLGW.js +0 -46
  1031. package/dist/unlink-XTZA474P.js +0 -70
  1032. package/dist/unstage-AVLORZLW.js +0 -96
  1033. package/dist/unstage-QXOL5DXZ.js +0 -88
  1034. package/dist/update-3NA6ABLW.js +0 -101
  1035. package/dist/update-5ZNS2DKP.js +0 -66
  1036. package/dist/update-DDKNKV6M.js +0 -81
  1037. package/dist/update-MDVZ24VQ.js +0 -192
  1038. package/dist/update-UE4XVBKL.js +0 -155
  1039. package/dist/upload-IMP5CUY5.js +0 -129
  1040. package/dist/upload-IMP5CUY5.js.map +0 -1
  1041. package/dist/upload-SYFB2VTJ.js +0 -150
  1042. package/dist/upscale-P5EYUVOZ.js +0 -109
  1043. package/dist/url-options-DJZV3ADK.js +0 -131
  1044. package/dist/url-params-Y5XQSDEF.js +0 -101
  1045. package/dist/use-D3RBWLJO.js +0 -95
  1046. package/dist/use-D3RBWLJO.js.map +0 -1
  1047. package/dist/validate-BCK22BQL.js +0 -122
  1048. package/dist/validate-BCK22BQL.js.map +0 -1
  1049. package/dist/variant-JQVZUUA4.js +0 -338
  1050. package/dist/videos-YCQVOOFE.js +0 -41
  1051. package/dist/view-IKKRJ5YD.js +0 -121
  1052. package/dist/viewer-check-5GREZIVJ.js +0 -83
  1053. package/dist/web-7TPDDBI6.js +0 -143
  1054. package/dist/winners-4PKEVMUC.js +0 -113
  1055. package/dist/winning-ads-7X5EWSJX.js +0 -86
  1056. package/dist/write-commands-CTLF2M6L.js +0 -713
  1057. package/dist/write-commands-CY734U34.js +0 -1172
  1058. package/dist/write-commands-FIS6Y2MN.js +0 -206
  1059. package/dist/write-commands-V77MD5SC.js +0 -1525
  1060. package/dist/x-EMLFCHSG.js +0 -47
  1061. /package/dist/{account-2G3IT7J4.js.map → account-BRRFMDXZ.js.map} +0 -0
  1062. /package/dist/{account-CQJFUII3.js.map → account-HQD5P3AF.js.map} +0 -0
  1063. /package/dist/{account-ULC5N7SI.js.map → account-MQI7EZBH.js.map} +0 -0
  1064. /package/dist/{account-assets-IDVG4DGK.js.map → account-assets-JRMYVXQP.js.map} +0 -0
  1065. /package/dist/{account-level-GK7M2MMQ.js.map → account-level-PEGLZQTI.js.map} +0 -0
  1066. /package/dist/{account-reads-FRFI6OHK.js.map → account-reads-K6YDAOHX.js.map} +0 -0
  1067. /package/dist/{account-users-PINZLBT7.js.map → account-users-QS54ZEOD.js.map} +0 -0
  1068. /package/dist/{account-writes-WRGJC7VU.js.map → account-writes-PGGGP26M.js.map} +0 -0
  1069. /package/dist/{accounts-2KFG33EX.js.map → accounts-H3U7LARM.js.map} +0 -0
  1070. /package/dist/{accounts-MHPNZW3W.js.map → accounts-IW62WBX5.js.map} +0 -0
  1071. /package/dist/{accounts-MTNBMXHD.js.map → accounts-MQMEOGQD.js.map} +0 -0
  1072. /package/dist/{accounts-KRW3JNCW.js.map → accounts-T6SRCZJQ.js.map} +0 -0
  1073. /package/dist/{accounts-5754XUS3.js.map → accounts-Y2VWI3AA.js.map} +0 -0
  1074. /package/dist/{actions-33IZOT5C.js.map → actions-2CUQFZNA.js.map} +0 -0
  1075. /package/dist/{active-entities-JR5B32X2.js.map → active-entities-BOMM4YDF.js.map} +0 -0
  1076. /package/dist/{activecampaign-BV5GZFVR.js.map → activecampaign-WAMDVBUO.js.map} +0 -0
  1077. /package/dist/{activities-2RAJXP3J.js.map → activities-YH4K4JAI.js.map} +0 -0
  1078. /package/dist/{ad-group-writes-W6RCMYLC.js.map → ad-group-writes-ROUU6BHU.js.map} +0 -0
  1079. /package/dist/{ad-groups-XAI2Z62X.js.map → ad-groups-Y2BSRLIN.js.map} +0 -0
  1080. /package/dist/{ad-writes-IGWZRTXY.js.map → ad-writes-NF4LCGVP.js.map} +0 -0
  1081. /package/dist/{add-UZDOQAJL.js.map → add-2L2VQ5MU.js.map} +0 -0
  1082. /package/dist/{add-WDX66JSM.js.map → add-4P3CUHAN.js.map} +0 -0
  1083. /package/dist/{add-KB7O7NSB.js.map → add-PS36Q2S3.js.map} +0 -0
  1084. /package/dist/{add-4PJDIW2M.js.map → add-RLMXZLLO.js.map} +0 -0
  1085. /package/dist/{add-DBCN33GH.js.map → add-UHWRBSFE.js.map} +0 -0
  1086. /package/dist/{add-PRU32PQN.js.map → add-Z2OTFSQO.js.map} +0 -0
  1087. /package/dist/{add-accounts-ZWXG6HLM.js.map → add-accounts-GXBE4ZR2.js.map} +0 -0
  1088. /package/dist/{ads-255V76SZ.js.map → ads-CPMX3L4A.js.map} +0 -0
  1089. /package/dist/{ads-7TEPA4KZ.js.map → ads-TDN7OYSU.js.map} +0 -0
  1090. /package/dist/{ads-I6I4MYQH.js.map → ads-WYQYZ44U.js.map} +0 -0
  1091. /package/dist/{ads-JVBLNTBF.js.map → ads-ZEF5AU3D.js.map} +0 -0
  1092. /package/dist/{adsets-FN5ZWSYF.js.map → adsets-ZRS7AZIK.js.map} +0 -0
  1093. /package/dist/{advertisers-SJO6JYIO.js.map → advertisers-6CHV5N2V.js.map} +0 -0
  1094. /package/dist/{advertisers-BPJWOY7I.js.map → advertisers-AAGUUSAX.js.map} +0 -0
  1095. /package/dist/{analytics-XDWBEY57.js.map → analytics-4GTUW42V.js.map} +0 -0
  1096. /package/dist/{analytics-TXPEXLPQ.js.map → analytics-MV2RQ6KR.js.map} +0 -0
  1097. /package/dist/{animate-425S4ZXS.js.map → animate-EOSLSA7F.js.map} +0 -0
  1098. /package/dist/{approved-KUVAJ5M7.js.map → approved-LHYBVDXH.js.map} +0 -0
  1099. /package/dist/{asset-writes-SSI3CO2A.js.map → asset-writes-CUF25BLM.js.map} +0 -0
  1100. /package/dist/{assign-CTV6LDEI.js.map → assign-RN5DGDS2.js.map} +0 -0
  1101. /package/dist/{audience-size-5QYI5PKH.js.map → audience-size-7DYMCXDM.js.map} +0 -0
  1102. /package/dist/{audience-writes-G64754LR.js.map → audience-writes-L7SNU2SB.js.map} +0 -0
  1103. /package/dist/{audiences-JAVNJ5NC.js.map → audiences-A54MU63W.js.map} +0 -0
  1104. /package/dist/{audiences-OMLKMHEJ.js.map → audiences-SG2BBM7R.js.map} +0 -0
  1105. /package/dist/{audiences-JZ6SCEUC.js.map → audiences-VMGB2JZG.js.map} +0 -0
  1106. /package/dist/{audit-2YFDJAKL.js.map → audit-6K5FFV6K.js.map} +0 -0
  1107. /package/dist/{audit-4UE6GFLG.js.map → audit-7U7G2JKS.js.map} +0 -0
  1108. /package/dist/{autocomplete-HTUV2UDS.js.map → autocomplete-E6YHJ3HH.js.map} +0 -0
  1109. /package/dist/{avatars-K7RBSMIJ.js.map → avatars-6JHVTSXH.js.map} +0 -0
  1110. /package/dist/{bid-pricing-OWP4SZP5.js.map → bid-pricing-J3OJK4J3.js.map} +0 -0
  1111. /package/dist/{brand-GBP4OEJI.js.map → brand-3EAQFDYN.js.map} +0 -0
  1112. /package/dist/{brief-SLTB3EPO.js.map → brief-ADGCGC3H.js.map} +0 -0
  1113. /package/dist/{businesses-DXRDQIFP.js.map → businesses-GQ5FOZDU.js.map} +0 -0
  1114. /package/dist/{campaign-groups-LDOQU65Q.js.map → campaign-groups-GN7D5UXE.js.map} +0 -0
  1115. /package/dist/{campaign-writes-SK55QLY5.js.map → campaign-writes-HKWI6GYU.js.map} +0 -0
  1116. /package/dist/{campaign-writes-SHF3XZXV.js.map → campaign-writes-UORRIIWY.js.map} +0 -0
  1117. /package/dist/{campaigns-6CAKRANC.js.map → campaigns-5I76AV7F.js.map} +0 -0
  1118. /package/dist/{campaigns-EHV7J7PW.js.map → campaigns-BEXDLBT3.js.map} +0 -0
  1119. /package/dist/{campaigns-GG7LLI4X.js.map → campaigns-GONROKTU.js.map} +0 -0
  1120. /package/dist/{campaigns-GQWFSKGC.js.map → campaigns-VZJMYETG.js.map} +0 -0
  1121. /package/dist/{canvas-2VRPGRND.js.map → canvas-CHV34G62.js.map} +0 -0
  1122. /package/dist/{capabilities-BEZXR2FZ.js.map → capabilities-VKBIQ2BR.js.map} +0 -0
  1123. /package/dist/{cards-J2PGFKEF.js.map → cards-YHZFJ3US.js.map} +0 -0
  1124. /package/dist/{catalogs-P5KMIMC2.js.map → catalogs-LXEM7NNC.js.map} +0 -0
  1125. /package/dist/{catalogs-TBRONC2D.js.map → catalogs-ZHCLH43A.js.map} +0 -0
  1126. /package/dist/{changes-3COSIJLU.js.map → changes-4OYC4NMW.js.map} +0 -0
  1127. /package/dist/{chatgpt-S5EVEKYV.js.map → chatgpt-XV6CVKLN.js.map} +0 -0
  1128. /package/dist/{chats-AN52YVBT.js.map → chats-W35ZPZEW.js.map} +0 -0
  1129. /package/dist/{check-AQO7CMDD.js.map → check-3D63D4ZT.js.map} +0 -0
  1130. /package/dist/{chunk-TE4ASZSC.js.map → chunk-23KN4NL4.js.map} +0 -0
  1131. /package/dist/{chunk-3J3W23S4.js.map → chunk-2PC26XRF.js.map} +0 -0
  1132. /package/dist/{chunk-3WSJGYA3.js.map → chunk-2UZHRLLO.js.map} +0 -0
  1133. /package/dist/{chunk-6M77QNJ4.js.map → chunk-3JV4T6XW.js.map} +0 -0
  1134. /package/dist/{chunk-I7AYMJZA.js.map → chunk-45EERHDB.js.map} +0 -0
  1135. /package/dist/{chunk-5CTNSIWY.js.map → chunk-4BTUF2AV.js.map} +0 -0
  1136. /package/dist/{chunk-4745PLPI.js.map → chunk-4D37LCBS.js.map} +0 -0
  1137. /package/dist/{chunk-XVHR2NCG.js.map → chunk-55B4AJY3.js.map} +0 -0
  1138. /package/dist/{chunk-VP4PO7FW.js.map → chunk-56UWXQEN.js.map} +0 -0
  1139. /package/dist/{chunk-W7C7HZFJ.js.map → chunk-5G5QFFJY.js.map} +0 -0
  1140. /package/dist/{chunk-4JS2O2KV.js.map → chunk-5HGAO4ZI.js.map} +0 -0
  1141. /package/dist/{chunk-QNXDSNOQ.js.map → chunk-5ITB24SC.js.map} +0 -0
  1142. /package/dist/{chunk-56OEYUJU.js.map → chunk-5YN53OAA.js.map} +0 -0
  1143. /package/dist/{chunk-MZIYRWXL.js.map → chunk-6CCEEVXJ.js.map} +0 -0
  1144. /package/dist/{chunk-SP5L7EYC.js.map → chunk-6CQOHJZW.js.map} +0 -0
  1145. /package/dist/{chunk-JCVPZ7CV.js.map → chunk-6HGLQJ6A.js.map} +0 -0
  1146. /package/dist/{chunk-JAC6JVCI.js.map → chunk-6OIKNJ7G.js.map} +0 -0
  1147. /package/dist/{chunk-GLCHD54W.js.map → chunk-6OXENBTF.js.map} +0 -0
  1148. /package/dist/{chunk-LHQ6GXNF.js.map → chunk-6QGBBX7F.js.map} +0 -0
  1149. /package/dist/{chunk-XWO6CXNG.js.map → chunk-6RTZPBAT.js.map} +0 -0
  1150. /package/dist/{chunk-4XXA4WCS.js.map → chunk-7JFVMJZI.js.map} +0 -0
  1151. /package/dist/{chunk-J4ASA24X.js.map → chunk-7MY3QHGA.js.map} +0 -0
  1152. /package/dist/{chunk-WPAW6EVY.js.map → chunk-A6VODUO3.js.map} +0 -0
  1153. /package/dist/{chunk-R44B522K.js.map → chunk-AGTA5FJX.js.map} +0 -0
  1154. /package/dist/{chunk-V2XEX2YR.js.map → chunk-AGU4KGT6.js.map} +0 -0
  1155. /package/dist/{chunk-DLNADMQV.js.map → chunk-BKOUVU6X.js.map} +0 -0
  1156. /package/dist/{chunk-ZNXP3WNJ.js.map → chunk-C7IOSSI4.js.map} +0 -0
  1157. /package/dist/{chunk-FOWT6ENH.js.map → chunk-CBQPKCFE.js.map} +0 -0
  1158. /package/dist/{chunk-B4UVJCJ4.js.map → chunk-CIW3Q7B2.js.map} +0 -0
  1159. /package/dist/{chunk-6B4KNOJZ.js.map → chunk-CNPYG4F3.js.map} +0 -0
  1160. /package/dist/{chunk-CKTVRR3D.js.map → chunk-CWZ2ODJQ.js.map} +0 -0
  1161. /package/dist/{chunk-LS2KEAYJ.js.map → chunk-D7Y3UNWO.js.map} +0 -0
  1162. /package/dist/{chunk-SDQLZYQG.js.map → chunk-DGZYZWMK.js.map} +0 -0
  1163. /package/dist/{chunk-R6T25WTZ.js.map → chunk-DMA67YC3.js.map} +0 -0
  1164. /package/dist/{chunk-HVJJEQDQ.js.map → chunk-DYOUJERF.js.map} +0 -0
  1165. /package/dist/{chunk-TEKML2NW.js.map → chunk-E34YYDCE.js.map} +0 -0
  1166. /package/dist/{chunk-RUJS2NOA.js.map → chunk-E3FMS5DA.js.map} +0 -0
  1167. /package/dist/{chunk-62QMJYML.js.map → chunk-EIRGJD3Q.js.map} +0 -0
  1168. /package/dist/{chunk-DNWP5DL6.js.map → chunk-FESQ5TXU.js.map} +0 -0
  1169. /package/dist/{chunk-UPDIBQUC.js.map → chunk-FEUKUZRA.js.map} +0 -0
  1170. /package/dist/{chunk-ILEJXJH2.js.map → chunk-G3MEYGXC.js.map} +0 -0
  1171. /package/dist/{chunk-XZWBLUDV.js.map → chunk-G3MN4HIX.js.map} +0 -0
  1172. /package/dist/{chunk-364TCROV.js.map → chunk-G53CUQZV.js.map} +0 -0
  1173. /package/dist/{chunk-CREEY2FS.js.map → chunk-GPZVYXJZ.js.map} +0 -0
  1174. /package/dist/{chunk-FBG3JDET.js.map → chunk-GYMZCJX6.js.map} +0 -0
  1175. /package/dist/{chunk-XJHUSJY6.js.map → chunk-HGHVNUJT.js.map} +0 -0
  1176. /package/dist/{chunk-BN4TDL5L.js.map → chunk-IQWFJEA3.js.map} +0 -0
  1177. /package/dist/{chunk-44ZRCSR7.js.map → chunk-IZABTTW5.js.map} +0 -0
  1178. /package/dist/{chunk-DW3OPKXI.js.map → chunk-J3HA4RFY.js.map} +0 -0
  1179. /package/dist/{chunk-V62ZWGCL.js.map → chunk-JGOYO7I2.js.map} +0 -0
  1180. /package/dist/{chunk-LURM3KKS.js.map → chunk-JNSRQQDP.js.map} +0 -0
  1181. /package/dist/{chunk-CSCHS3JG.js.map → chunk-JUF6Q5X7.js.map} +0 -0
  1182. /package/dist/{chunk-OYNBUT5X.js.map → chunk-KAAYVKBH.js.map} +0 -0
  1183. /package/dist/{chunk-MHH7SGLS.js.map → chunk-KGAI4E2I.js.map} +0 -0
  1184. /package/dist/{chunk-PGBZ73UZ.js.map → chunk-KUM36NSV.js.map} +0 -0
  1185. /package/dist/{chunk-SWNCS2OD.js.map → chunk-L763CNKH.js.map} +0 -0
  1186. /package/dist/{chunk-4VXQAJRU.js.map → chunk-LO2MZJJP.js.map} +0 -0
  1187. /package/dist/{chunk-HPDGVK6R.js.map → chunk-LV7EU6HM.js.map} +0 -0
  1188. /package/dist/{chunk-QNLPZOHV.js.map → chunk-LXZ5E6AC.js.map} +0 -0
  1189. /package/dist/{chunk-KRQ2AXFW.js.map → chunk-LZRZVIEJ.js.map} +0 -0
  1190. /package/dist/{chunk-GEFZVG4P.js.map → chunk-MCKYNFPH.js.map} +0 -0
  1191. /package/dist/{chunk-GDQJG4BO.js.map → chunk-MHSVWQK6.js.map} +0 -0
  1192. /package/dist/{chunk-S6VFDNSQ.js.map → chunk-MTV2RSGY.js.map} +0 -0
  1193. /package/dist/{chunk-WW6JLISJ.js.map → chunk-MUEJVDHI.js.map} +0 -0
  1194. /package/dist/{chunk-3H5MJOG2.js.map → chunk-N4BK6OKX.js.map} +0 -0
  1195. /package/dist/{chunk-AXTOIHH2.js.map → chunk-NCO5NGBN.js.map} +0 -0
  1196. /package/dist/{chunk-X3HPRECW.js.map → chunk-NLW25WW3.js.map} +0 -0
  1197. /package/dist/{chunk-C5UFKDAX.js.map → chunk-NP3FPCPN.js.map} +0 -0
  1198. /package/dist/{chunk-TKDOVFO6.js.map → chunk-NYAFSC5V.js.map} +0 -0
  1199. /package/dist/{chunk-AFQF6ISC.js.map → chunk-O7AMKMII.js.map} +0 -0
  1200. /package/dist/{chunk-WPSLL3S2.js.map → chunk-OAXQPLTG.js.map} +0 -0
  1201. /package/dist/{chunk-R5GGTLYE.js.map → chunk-OI2CKYAQ.js.map} +0 -0
  1202. /package/dist/{chunk-7HH4F2KX.js.map → chunk-OL3QHART.js.map} +0 -0
  1203. /package/dist/{chunk-QJ5TU5J6.js.map → chunk-OXYWSVOJ.js.map} +0 -0
  1204. /package/dist/{chunk-NY5VYGTP.js.map → chunk-PHZOMTI6.js.map} +0 -0
  1205. /package/dist/{chunk-KG7FPYM2.js.map → chunk-PYWIHAVD.js.map} +0 -0
  1206. /package/dist/{chunk-3KMYOPBI.js.map → chunk-QPPQXU3U.js.map} +0 -0
  1207. /package/dist/{chunk-TTKDFRON.js.map → chunk-QTKNS2U2.js.map} +0 -0
  1208. /package/dist/{chunk-SJAUMPL3.js.map → chunk-QTLIXCVN.js.map} +0 -0
  1209. /package/dist/{chunk-VCUXAPLM.js.map → chunk-QUYDMAQN.js.map} +0 -0
  1210. /package/dist/{chunk-O37YK4P6.js.map → chunk-R5LRBDEM.js.map} +0 -0
  1211. /package/dist/{chunk-UBDY5RE4.js.map → chunk-RIA5RXPL.js.map} +0 -0
  1212. /package/dist/{chunk-MZPS46OR.js.map → chunk-SIKCVWM3.js.map} +0 -0
  1213. /package/dist/{chunk-ZVXKWLLE.js.map → chunk-SVNH6P7O.js.map} +0 -0
  1214. /package/dist/{chunk-GXPZJ2QN.js.map → chunk-T65Y7N7H.js.map} +0 -0
  1215. /package/dist/{chunk-HAJYFRXL.js.map → chunk-T75WL56Z.js.map} +0 -0
  1216. /package/dist/{chunk-U2BPZ27S.js.map → chunk-TGCDXZ5X.js.map} +0 -0
  1217. /package/dist/{chunk-SPBNAGIN.js.map → chunk-TOUF5ME6.js.map} +0 -0
  1218. /package/dist/{chunk-ERRTBCDW.js.map → chunk-TWCS6FSC.js.map} +0 -0
  1219. /package/dist/{chunk-L5IYVZM2.js.map → chunk-ULW4EWAA.js.map} +0 -0
  1220. /package/dist/{chunk-YUCGCJKT.js.map → chunk-UPXPBA4W.js.map} +0 -0
  1221. /package/dist/{chunk-SG2TDQEE.js.map → chunk-URMAEVZO.js.map} +0 -0
  1222. /package/dist/{chunk-ZBUIWVF3.js.map → chunk-UUWUJ64R.js.map} +0 -0
  1223. /package/dist/{chunk-4ULRDQVD.js.map → chunk-VCOIFNYH.js.map} +0 -0
  1224. /package/dist/{chunk-SEC6FPWC.js.map → chunk-VGUGFRWF.js.map} +0 -0
  1225. /package/dist/{chunk-52IYZCRS.js.map → chunk-VPF5A7CM.js.map} +0 -0
  1226. /package/dist/{chunk-WWLZ5RRU.js.map → chunk-WEQZ563U.js.map} +0 -0
  1227. /package/dist/{chunk-XRSRHAEU.js.map → chunk-WUCTGDV7.js.map} +0 -0
  1228. /package/dist/{chunk-2SGREP24.js.map → chunk-XAW5GL6B.js.map} +0 -0
  1229. /package/dist/{chunk-T6PTG6VM.js.map → chunk-XCRYRVKK.js.map} +0 -0
  1230. /package/dist/{chunk-ZFJ2FQUH.js.map → chunk-XJ5TX772.js.map} +0 -0
  1231. /package/dist/{chunk-T37PAZT2.js.map → chunk-XPIBSDG4.js.map} +0 -0
  1232. /package/dist/{chunk-7O4HFODK.js.map → chunk-XRNJRQ6Q.js.map} +0 -0
  1233. /package/dist/{chunk-PN72Z2W2.js.map → chunk-Y5GQO6CR.js.map} +0 -0
  1234. /package/dist/{chunk-TRMZQRVV.js.map → chunk-Y6MLSN6W.js.map} +0 -0
  1235. /package/dist/{chunk-EZBZU6N7.js.map → chunk-YBFZJ5EB.js.map} +0 -0
  1236. /package/dist/{chunk-EHIISZYD.js.map → chunk-YJYKSMLF.js.map} +0 -0
  1237. /package/dist/{chunk-ECJIMIEJ.js.map → chunk-YR3OPPUE.js.map} +0 -0
  1238. /package/dist/{chunk-34FVKJS2.js.map → chunk-YXQFCQX2.js.map} +0 -0
  1239. /package/dist/{chunk-DJWEQDBB.js.map → chunk-Z3Y67AH6.js.map} +0 -0
  1240. /package/dist/{chunk-2MXDSPUO.js.map → chunk-Z6T6VDDA.js.map} +0 -0
  1241. /package/dist/{chunk-GT77XMOG.js.map → chunk-ZKRRYVDG.js.map} +0 -0
  1242. /package/dist/{chunk-XPDUBDPL.js.map → chunk-ZOH672S6.js.map} +0 -0
  1243. /package/dist/{claim-NRNO4XCO.js.map → claim-DWGPEVJN.js.map} +0 -0
  1244. /package/dist/{client-463NKLRT.js.map → client-YUVT3RZN.js.map} +0 -0
  1245. /package/dist/{code-R4JOQ27J.js.map → code-LOOWLRUL.js.map} +0 -0
  1246. /package/dist/{companies-4TOBU44J.js.map → companies-3VT7OJAA.js.map} +0 -0
  1247. /package/dist/{company-RK34S3IA.js.map → company-XEPW45AT.js.map} +0 -0
  1248. /package/dist/{complete-7BNBQ5AI.js.map → complete-AEX34ICU.js.map} +0 -0
  1249. /package/dist/{config-GDLHHBJZ.js.map → config-AOF6ACIP.js.map} +0 -0
  1250. /package/dist/{connect-CRIRSXN3.js.map → connect-TF4FCXDV.js.map} +0 -0
  1251. /package/dist/{content-FCO6MGXW.js.map → content-NCW5IJFR.js.map} +0 -0
  1252. /package/dist/{conversation-4CQG2B2C.js.map → conversation-6WWZMPAB.js.map} +0 -0
  1253. /package/dist/{conversion-report-PDTQTRVB.js.map → conversion-report-I6R2FDCD.js.map} +0 -0
  1254. /package/dist/{conversion-upload-command-MEO4WLZH.js.map → conversion-upload-command-QD6MGLY4.js.map} +0 -0
  1255. /package/dist/{conversion-writes-ZVBOXUIA.js.map → conversion-writes-H2JOAORW.js.map} +0 -0
  1256. /package/dist/{conversions-POBKTXQF.js.map → conversions-D46PQRWF.js.map} +0 -0
  1257. /package/dist/{conversions-BND5HYTL.js.map → conversions-WGW43FUE.js.map} +0 -0
  1258. /package/dist/{copy-writes-EUFEVWDW.js.map → copy-writes-ONVSSBLJ.js.map} +0 -0
  1259. /package/dist/{countries-TKL5T5JL.js.map → countries-Q6TA42P7.js.map} +0 -0
  1260. /package/dist/{create-BJ7XBNY5.js.map → create-7WV7XWZV.js.map} +0 -0
  1261. /package/dist/{create-XN4KVB5U.js.map → create-OUZZLPQK.js.map} +0 -0
  1262. /package/dist/{create-PYP3QWTL.js.map → create-QRT6O5PN.js.map} +0 -0
  1263. /package/dist/{create-YSGBH6Q4.js.map → create-WSEYNFTP.js.map} +0 -0
  1264. /package/dist/{creatives-57XIJAEG.js.map → creatives-BSZY7VDQ.js.map} +0 -0
  1265. /package/dist/{creatives-ANTJUTIE.js.map → creatives-DBDFDHX7.js.map} +0 -0
  1266. /package/dist/{creatives-6VJDUHEY.js.map → creatives-S3EZCXUT.js.map} +0 -0
  1267. /package/dist/{credentials-KIH6ICDU.js.map → credentials-P7GQYIE3.js.map} +0 -0
  1268. /package/dist/{critique-MZUTDK4V.js.map → critique-6F4FWQN5.js.map} +0 -0
  1269. /package/dist/{critique-GWRXVXVG.js.map → critique-X2YDOMON.js.map} +0 -0
  1270. /package/dist/{crm-Y5QTZAHO.js.map → crm-O6YG6777.js.map} +0 -0
  1271. /package/dist/{crm-QSHUYXTW.js.map → crm-VNAUSVC5.js.map} +0 -0
  1272. /package/dist/{crop-WKTW3EMP.js.map → crop-RDP7YCNV.js.map} +0 -0
  1273. /package/dist/{currency-PTOI5SPU.js.map → currency-UVT3HEZT.js.map} +0 -0
  1274. /package/dist/{custom-conversions-NDY5RHSM.js.map → custom-conversions-7MZFTHUM.js.map} +0 -0
  1275. /package/dist/{customers-2G32E6W7.js.map → customers-VJ3TXILQ.js.map} +0 -0
  1276. /package/dist/{decide-X2UAKYXK.js.map → decide-OPCCKAIT.js.map} +0 -0
  1277. /package/dist/{delete-3H6YH4YK.js.map → delete-3H377GOM.js.map} +0 -0
  1278. /package/dist/{delete-HIAZHA56.js.map → delete-EH3XL26Z.js.map} +0 -0
  1279. /package/dist/{delete-2ZTMTKYD.js.map → delete-GKQTDOZF.js.map} +0 -0
  1280. /package/dist/{delete-I43JQH2E.js.map → delete-QYSOAVP4.js.map} +0 -0
  1281. /package/dist/{delete-RF44ILYE.js.map → delete-R3LXCKA4.js.map} +0 -0
  1282. /package/dist/{demographics-2UYQW6II.js.map → demographics-GKJZ5PV2.js.map} +0 -0
  1283. /package/dist/{describe-M6DYXNQC.js.map → describe-537PPL7P.js.map} +0 -0
  1284. /package/dist/{describe-OQ6R3EF7.js.map → describe-GIG46DT5.js.map} +0 -0
  1285. /package/dist/{dimensions-DGYM5E5P.js.map → dimensions-UXK7DMTF.js.map} +0 -0
  1286. /package/dist/{discard-NKPQ73UM.js.map → discard-46RALLBO.js.map} +0 -0
  1287. /package/dist/{discover-YKMBVSPF.js.map → discover-C4TG7JP7.js.map} +0 -0
  1288. /package/dist/{discover-XLIH7RCB.js.map → discover-MKFDG6NK.js.map} +0 -0
  1289. /package/dist/{domain-LUDUZB3F.js.map → domain-JNNWJNQE.js.map} +0 -0
  1290. /package/dist/{download-LL6DL62N.js.map → download-3R5IHN5F.js.map} +0 -0
  1291. /package/dist/{download-SFWMT7DL.js.map → download-PRBLR6IQ.js.map} +0 -0
  1292. /package/dist/{draft-7LPUJZCF.js.map → draft-3L4SNDGO.js.map} +0 -0
  1293. /package/dist/{draft-T7TWIFEX.js.map → draft-EADHX7XL.js.map} +0 -0
  1294. /package/dist/{draft-G432FJ7N.js.map → draft-H5RVDTFD.js.map} +0 -0
  1295. /package/dist/{draft-XAAIGE6Q.js.map → draft-TAM7IUPH.js.map} +0 -0
  1296. /package/dist/{draft-R5ND5SWT.js.map → draft-UMPCOCP6.js.map} +0 -0
  1297. /package/dist/{draft-MPWR47CG.js.map → draft-VSXBSXSX.js.map} +0 -0
  1298. /package/dist/{draft-736FJJWK.js.map → draft-XCYSZWA6.js.map} +0 -0
  1299. /package/dist/{draft-374Z4MGY.js.map → draft-XEUHTUMR.js.map} +0 -0
  1300. /package/dist/{env-DQHY5ODN.js.map → env-VBSATLEF.js.map} +0 -0
  1301. /package/dist/{experiment-MO6MT6OJ.js.map → experiment-2XR6MBE2.js.map} +0 -0
  1302. /package/dist/{experiments-OGZV73W6.js.map → experiments-JVGAKWFA.js.map} +0 -0
  1303. /package/dist/{export-6Z6QBU6V.js.map → export-YCLJG5YP.js.map} +0 -0
  1304. /package/dist/{extract-YGOQBOQK.js.map → extract-E3CMEN5U.js.map} +0 -0
  1305. /package/dist/{facets-OLZ7JLFL.js.map → facets-JG44XXAT.js.map} +0 -0
  1306. /package/dist/{favorites-R3JO4SJJ.js.map → favorites-NSQX6HKB.js.map} +0 -0
  1307. /package/dist/{feed-IUMMHM3I.js.map → feed-TKMMYAEH.js.map} +0 -0
  1308. /package/dist/{fetch-AL44XS4Q.js.map → fetch-EHP2FK6Y.js.map} +0 -0
  1309. /package/dist/{fetch-K3NRT2L2.js.map → fetch-SLDDORH4.js.map} +0 -0
  1310. /package/dist/{find-ZFIGMRYQ.js.map → find-I7U3THF3.js.map} +0 -0
  1311. /package/dist/{fit-5NVXWXZV.js.map → fit-GNQHRKP7.js.map} +0 -0
  1312. /package/dist/{flows-LL5SPPIK.js.map → flows-NRPABVUJ.js.map} +0 -0
  1313. /package/dist/{follow-SS374QUW.js.map → follow-A46RAJEX.js.map} +0 -0
  1314. /package/dist/{follow-competitors-3LTOTTBY.js.map → follow-competitors-VU2L3KWF.js.map} +0 -0
  1315. /package/dist/{following-YMA5O3LF.js.map → following-UOUNSU6P.js.map} +0 -0
  1316. /package/dist/{fonts-E3CNWPD5.js.map → fonts-VN2QXPAQ.js.map} +0 -0
  1317. /package/dist/{forecast-PWGN4ETP.js.map → forecast-SIX6AAVX.js.map} +0 -0
  1318. /package/dist/{forecast-KOBF5TKM.js.map → forecast-ZXOSLITM.js.map} +0 -0
  1319. /package/dist/{funding-KLIZ73SS.js.map → funding-2VROIMLS.js.map} +0 -0
  1320. /package/dist/{funnel-XIZROHV7.js.map → funnel-QEZWKSFR.js.map} +0 -0
  1321. /package/dist/{ga4-XPCE4EK5.js.map → ga4-ULHKTF23.js.map} +0 -0
  1322. /package/dist/{generate-GHIXVLMY.js.map → generate-HOMLLUCN.js.map} +0 -0
  1323. /package/dist/{get-HCGFATFD.js.map → get-ABQZJ2VQ.js.map} +0 -0
  1324. /package/dist/{get-XPJ4BZGP.js.map → get-BXMLPLIC.js.map} +0 -0
  1325. /package/dist/{get-RDTJSWSA.js.map → get-IF7KHMSI.js.map} +0 -0
  1326. /package/dist/{get-WS744HAO.js.map → get-NF3SPPVX.js.map} +0 -0
  1327. /package/dist/{get-SGNT4JG2.js.map → get-ZISAHMTQ.js.map} +0 -0
  1328. /package/dist/{gif-YK5HJXRE.js.map → gif-QLNWBFAH.js.map} +0 -0
  1329. /package/dist/{google-BI45CXMW.js.map → google-FDR55RRD.js.map} +0 -0
  1330. /package/dist/{google-5JV7OMOH.js.map → google-XVSL3XAB.js.map} +0 -0
  1331. /package/dist/{google-ads-DYZGUM6W.js.map → google-ads-5NBAMFPB.js.map} +0 -0
  1332. /package/dist/{group-7OWIYAKJ.js.map → group-HAQM6P7M.js.map} +0 -0
  1333. /package/dist/{group-H6ZYRPE6.js.map → group-XVDH2ONO.js.map} +0 -0
  1334. /package/dist/{gsc-HI2KXDEU.js.map → gsc-72AFO6B4.js.map} +0 -0
  1335. /package/dist/{history-RD2YMNNL.js.map → history-2U5OXDV7.js.map} +0 -0
  1336. /package/dist/{history-3EQQHYKT.js.map → history-A6KMJRPZ.js.map} +0 -0
  1337. /package/dist/{history-SQPJ7PPE.js.map → history-IDVWUSYU.js.map} +0 -0
  1338. /package/dist/{hubspot-MYTV36SM.js.map → hubspot-YPBNNVHC.js.map} +0 -0
  1339. /package/dist/{icon-HLJCWTR3.js.map → icon-F7AOOTFI.js.map} +0 -0
  1340. /package/dist/{ideas-CVXHFVX7.js.map → ideas-4Q7YBUGC.js.map} +0 -0
  1341. /package/dist/{images-XP4TKE2F.js.map → images-BRBSRYEX.js.map} +0 -0
  1342. /package/dist/{improve-BRC4R6MW.js.map → improve-LIKOER3S.js.map} +0 -0
  1343. /package/dist/{ingest-4GNJ2PWL.js.map → ingest-AIOFOAQE.js.map} +0 -0
  1344. /package/dist/{insights-IVW6W5CP.js.map → insights-QNE6XCBA.js.map} +0 -0
  1345. /package/dist/{insights-CN3GUTT7.js.map → insights-TR5EQAMA.js.map} +0 -0
  1346. /package/dist/{inspect-25IVRU45.js.map → inspect-ITKB2QT3.js.map} +0 -0
  1347. /package/dist/{inspiration-D75DO3MD.js.map → inspiration-VXNGKAJV.js.map} +0 -0
  1348. /package/dist/{instant-experiences-6F6GXZ67.js.map → instant-experiences-MT2XMQNH.js.map} +0 -0
  1349. /package/dist/{intent-3GDLPKKN.js.map → intent-E6HKRMNE.js.map} +0 -0
  1350. /package/dist/{job-2JJNKUHT.js.map → job-TS34W4IU.js.map} +0 -0
  1351. /package/dist/{job-create-BNTNZCSP.js.map → job-create-FXXDR2EE.js.map} +0 -0
  1352. /package/dist/{job-status-N7RWRDRO.js.map → job-status-R2H4HNC5.js.map} +0 -0
  1353. /package/dist/{keep-Z2WH3CKU.js.map → keep-YSU3XMW3.js.map} +0 -0
  1354. /package/dist/{keyword-gap-B2WPVHOB.js.map → keyword-gap-D4WAEJAH.js.map} +0 -0
  1355. /package/dist/{keyword-metrics-UDGWN7BO.js.map → keyword-metrics-4UDT5GNW.js.map} +0 -0
  1356. /package/dist/{keywords-for-site-GEG6AXD3.js.map → keywords-for-site-YQAQQIHJ.js.map} +0 -0
  1357. /package/dist/{knowledge-PKXPN4RV.js.map → knowledge-L3VLOVLG.js.map} +0 -0
  1358. /package/dist/{landing-O2ZUIUGE.js.map → landing-6JAIZH4H.js.map} +0 -0
  1359. /package/dist/{landings-7QRITXZ2.js.map → landings-XTPNPTHN.js.map} +0 -0
  1360. /package/dist/{languages-UJAOPTV2.js.map → languages-AUAZIVL4.js.map} +0 -0
  1361. /package/dist/{languages-RZLMZR57.js.map → languages-DIKRMAYE.js.map} +0 -0
  1362. /package/dist/{launches-4H6ANGTG.js.map → launches-5R7EUONQ.js.map} +0 -0
  1363. /package/dist/{layerize-P5LFIA4X.js.map → layerize-Q2QWDARG.js.map} +0 -0
  1364. /package/dist/{lead-routes-WVXWVG62.js.map → lead-routes-IXUCGINI.js.map} +0 -0
  1365. /package/dist/{leads-MTTOYNPM.js.map → leads-6XZRTPJL.js.map} +0 -0
  1366. /package/dist/{leads-CJKRKB2Q.js.map → leads-UVG6VYAC.js.map} +0 -0
  1367. /package/dist/{learn-QPXZZIZZ.js.map → learn-VQGATNB4.js.map} +0 -0
  1368. /package/dist/{library-VW27X75P.js.map → library-G5YAFLTR.js.map} +0 -0
  1369. /package/dist/{lighthouse-FGUFJRGR.js.map → lighthouse-BCBV2XGP.js.map} +0 -0
  1370. /package/dist/{line-item-writes-RVOAMJ5R.js.map → line-item-writes-TRTDQ55N.js.map} +0 -0
  1371. /package/dist/{line-items-POZRAJLC.js.map → line-items-SC73GQLQ.js.map} +0 -0
  1372. /package/dist/{link-IXEZKRM7.js.map → link-ODLNZTZC.js.map} +0 -0
  1373. /package/dist/{linkedin-5PYG5HEM.js.map → linkedin-HPZP4MGS.js.map} +0 -0
  1374. /package/dist/{linkedin-person-EMJXEZYR.js.map → linkedin-person-ELEPEST5.js.map} +0 -0
  1375. /package/dist/{list-XOYU7UTX.js.map → list-26EOYW37.js.map} +0 -0
  1376. /package/dist/{list-7GDMM26I.js.map → list-4SDJZVOL.js.map} +0 -0
  1377. /package/dist/{list-UG4V5AM2.js.map → list-6YW4I4VG.js.map} +0 -0
  1378. /package/dist/{list-OZCU2T22.js.map → list-GLN62MRB.js.map} +0 -0
  1379. /package/dist/{list-PTK2HOUY.js.map → list-GS42LK5C.js.map} +0 -0
  1380. /package/dist/{list-Q5LVTPQP.js.map → list-HWNHRWGB.js.map} +0 -0
  1381. /package/dist/{list-J5KWXHFO.js.map → list-QSBEYU45.js.map} +0 -0
  1382. /package/dist/{list-4KS7WSUG.js.map → list-YLPOXOCI.js.map} +0 -0
  1383. /package/dist/{list-DVVOP6FM.js.map → list-ZFGOONWL.js.map} +0 -0
  1384. /package/dist/{locations-VJX64ZZR.js.map → locations-D5N75BUK.js.map} +0 -0
  1385. /package/dist/{locations-EISZ6JOT.js.map → locations-P5PTCRSF.js.map} +0 -0
  1386. /package/dist/{log-2F2N24DT.js.map → log-66XLWNCD.js.map} +0 -0
  1387. /package/dist/{logo-H2KHGLYD.js.map → logo-ABO4HJRG.js.map} +0 -0
  1388. /package/dist/{lookup-K57ITJWF.js.map → lookup-SPNT3W3W.js.map} +0 -0
  1389. /package/dist/{map-QGJZIC5N.js.map → map-3SGKGWSY.js.map} +0 -0
  1390. /package/dist/{mcp-RSW7KAWP.js.map → mcp-ZSPJE3Y6.js.map} +0 -0
  1391. /package/dist/{media-K5RJXLTN.js.map → media-CIJW2Q3I.js.map} +0 -0
  1392. /package/dist/{media-HDHZULQ7.js.map → media-GZKW2PZB.js.map} +0 -0
  1393. /package/dist/{media-sources-7R7FO53Y.js.map → media-sources-UBQCVRGK.js.map} +0 -0
  1394. /package/dist/{members-B6TKGGT5.js.map → members-76XFDSMX.js.map} +0 -0
  1395. /package/dist/{meme-QMCUGXUE.js.map → meme-BPWX7YQH.js.map} +0 -0
  1396. /package/dist/{meta-MOSJVYIE.js.map → meta-KVOSCSPJ.js.map} +0 -0
  1397. /package/dist/{metrics-PRIKXVYZ.js.map → metrics-XCD3IJSM.js.map} +0 -0
  1398. /package/dist/{models-M3E4YFCT.js.map → models-WNK7Z6TR.js.map} +0 -0
  1399. /package/dist/{normalize-5QIGANTK.js.map → normalize-NMNOJ6Q5.js.map} +0 -0
  1400. /package/dist/{normalize-5B4EQLUX.js.map → normalize-VC7HUODA.js.map} +0 -0
  1401. /package/dist/{options-K33CJOR6.js.map → options-5BPPM5N3.js.map} +0 -0
  1402. /package/dist/{organization-A4NFWWWI.js.map → organization-PXND43LQ.js.map} +0 -0
  1403. /package/dist/{output-U5ZV6PST.js.map → output-34QMC3OU.js.map} +0 -0
  1404. /package/dist/{page-XVOUD4VV.js.map → page-UDF3LJHP.js.map} +0 -0
  1405. /package/dist/{page-photos-4JTIKXAW.js.map → page-photos-FCBW5UZS.js.map} +0 -0
  1406. /package/dist/{pages-BAUS7LQM.js.map → pages-5W5G4MRB.js.map} +0 -0
  1407. /package/dist/{performance-MHJDRLEK.js.map → performance-DDZOJ5GD.js.map} +0 -0
  1408. /package/dist/{performance-NVURSEZ6.js.map → performance-Q25RDNM6.js.map} +0 -0
  1409. /package/dist/{pinterest-NA6HGPMB.js.map → pinterest-IABDXLF5.js.map} +0 -0
  1410. /package/dist/{pixels-QOSEYXCP.js.map → pixels-4QAWLSEL.js.map} +0 -0
  1411. /package/dist/{pixels-THDQD3RF.js.map → pixels-KRK2B7M3.js.map} +0 -0
  1412. /package/dist/{plan-JYSHKPZQ.js.map → plan-I6EFL7RC.js.map} +0 -0
  1413. /package/dist/{posts-ILAFADBW.js.map → posts-SXQSLOFV.js.map} +0 -0
  1414. /package/dist/{preview-X6EJGPAY.js.map → preview-7Y5LE24E.js.map} +0 -0
  1415. /package/dist/{profile-YHI65VGK.js.map → profile-R5VPOOJU.js.map} +0 -0
  1416. /package/dist/{promoted-tweet-writes-MXXVRLVQ.js.map → promoted-tweet-writes-LIFJFF7N.js.map} +0 -0
  1417. /package/dist/{promoted-tweets-HFLGXWX2.js.map → promoted-tweets-H5RMRQD2.js.map} +0 -0
  1418. /package/dist/{properties-ZLY6NYVK.js.map → properties-2D2BIDGC.js.map} +0 -0
  1419. /package/dist/{publish-6ZXFUBGP.js.map → publish-LBHYEZW3.js.map} +0 -0
  1420. /package/dist/{query-WMEX73ZB.js.map → query-A53T6QJF.js.map} +0 -0
  1421. /package/dist/{query-HFHTLNDN.js.map → query-LB5H7IRK.js.map} +0 -0
  1422. /package/dist/{query-ELD7WSFR.js.map → query-NDOYOIHL.js.map} +0 -0
  1423. /package/dist/{questionnaire-Y37I64FO.js.map → questionnaire-U767HYDE.js.map} +0 -0
  1424. /package/dist/{read-2HQEZIJW.js.map → read-3TCDDALC.js.map} +0 -0
  1425. /package/dist/{reddit-BIHGJPGP.js.map → reddit-H4R23K27.js.map} +0 -0
  1426. /package/dist/{refresh-4O32S4YR.js.map → refresh-3QKUSERK.js.map} +0 -0
  1427. /package/dist/{refresh-LVV4SPLT.js.map → refresh-GIB6QQZS.js.map} +0 -0
  1428. /package/dist/{release-VIPNSPQ5.js.map → release-JMYTQZLK.js.map} +0 -0
  1429. /package/dist/{relevant-pages-B5SYN575.js.map → relevant-pages-DOCKQEMZ.js.map} +0 -0
  1430. /package/dist/{remove-2E77743U.js.map → remove-F7GEZMKB.js.map} +0 -0
  1431. /package/dist/{remove-TPOWWFZ6.js.map → remove-LZQHDFZF.js.map} +0 -0
  1432. /package/dist/{reopen-UOBTJBMQ.js.map → reopen-Y557X6IX.js.map} +0 -0
  1433. /package/dist/{research-FOJIDMSE.js.map → research-3OJ5UZER.js.map} +0 -0
  1434. /package/dist/{research-ELM3KHGE.js.map → research-AYO522XS.js.map} +0 -0
  1435. /package/dist/{reset-FTLWUFZK.js.map → reset-BL7M4LL7.js.map} +0 -0
  1436. /package/dist/{reset-GIXXLPHQ.js.map → reset-PMVUQTYU.js.map} +0 -0
  1437. /package/dist/{resolve-QHR5JJTJ.js.map → resolve-CSWSGGK6.js.map} +0 -0
  1438. /package/dist/{retry-HNWXJR5U.js.map → retry-MVOPE2O2.js.map} +0 -0
  1439. /package/dist/{retry-NY5KFEDA.js.map → retry-WT46B5SC.js.map} +0 -0
  1440. /package/dist/{retry-failed-OAH7JQKD.js.map → retry-failed-PEAUXGNT.js.map} +0 -0
  1441. /package/dist/{revenue-JFMUODJO.js.map → revenue-ZLE645Z5.js.map} +0 -0
  1442. /package/dist/{rule-writes-A4BFYHPA.js.map → rule-writes-G25O5JZS.js.map} +0 -0
  1443. /package/dist/{rules-HLREXY2M.js.map → rules-KSOAKEI3.js.map} +0 -0
  1444. /package/dist/{rules-56E55SGC.js.map → rules-Q6HWHFVU.js.map} +0 -0
  1445. /package/dist/{rules-add-ZOPOWJMY.js.map → rules-add-7EPXWSQV.js.map} +0 -0
  1446. /package/dist/{run-GACZDI6Q.js.map → run-4DE5XUVB.js.map} +0 -0
  1447. /package/dist/{run-4UIPMCSN.js.map → run-PAND6N4V.js.map} +0 -0
  1448. /package/dist/{schedule-ZATNBBWD.js.map → schedule-CSE2XFFF.js.map} +0 -0
  1449. /package/dist/{schedule-OFPSZVZ2.js.map → schedule-TNF6M6UD.js.map} +0 -0
  1450. /package/dist/{scheduled-agents-4VY4CAA2.js.map → scheduled-agents-NXHXQZBO.js.map} +0 -0
  1451. /package/dist/{schema-EYGPETLF.js.map → schema-2YQAQVON.js.map} +0 -0
  1452. /package/dist/{schema-OGP4DUPP.js.map → schema-QITMY7ZE.js.map} +0 -0
  1453. /package/dist/{scrape-ZHL2BHS7.js.map → scrape-FDBYU3TU.js.map} +0 -0
  1454. /package/dist/{screenshot-ADMRDYWN.js.map → screenshot-QSRWL4J6.js.map} +0 -0
  1455. /package/dist/{search-CQUS7EOM.js.map → search-BOCQFUM3.js.map} +0 -0
  1456. /package/dist/{search-MKVVMJ2Q.js.map → search-CENPR7GA.js.map} +0 -0
  1457. /package/dist/{search-HF5ECIYW.js.map → search-GEXDRTAQ.js.map} +0 -0
  1458. /package/dist/{search-QUF6LHQ5.js.map → search-HOYOSX2H.js.map} +0 -0
  1459. /package/dist/{search-6W4HXR2S.js.map → search-LFTFNDMC.js.map} +0 -0
  1460. /package/dist/{search-6ZWI2NML.js.map → search-PYLNVZXI.js.map} +0 -0
  1461. /package/dist/{search-copy-O6FDX4HT.js.map → search-copy-RLRRR3LB.js.map} +0 -0
  1462. /package/dist/{seeds-5TM3O3K3.js.map → seeds-E2GLHJ2T.js.map} +0 -0
  1463. /package/dist/{sends-MZKHZZGJ.js.map → sends-NBTGBZT7.js.map} +0 -0
  1464. /package/dist/{sequences-3CEVHGHB.js.map → sequences-UOIHUOD3.js.map} +0 -0
  1465. /package/dist/{setup-links-4STQ5B4P.js.map → setup-links-HQ6WVKEP.js.map} +0 -0
  1466. /package/dist/{shared-I3SB77VH.js.map → shared-IMDHTVSW.js.map} +0 -0
  1467. /package/dist/{shopify-7LDHCWUQ.js.map → shopify-6MLRXSC2.js.map} +0 -0
  1468. /package/dist/{site-I3NFMPJB.js.map → site-5B44TV46.js.map} +0 -0
  1469. /package/dist/{sitemaps-PLAWVXQL.js.map → sitemaps-6A6JFBV4.js.map} +0 -0
  1470. /package/dist/{sites-WX2IBTZT.js.map → sites-PZLE5FFV.js.map} +0 -0
  1471. /package/dist/{skills-O6EQOAMQ.js.map → skills-FBIVWINH.js.map} +0 -0
  1472. /package/dist/{sources-K2LILGTW.js.map → sources-OMINR6RG.js.map} +0 -0
  1473. /package/dist/{sources-ZM7LEIMM.js.map → sources-PNEWSEBG.js.map} +0 -0
  1474. /package/dist/{stats-QQRYOMZA.js.map → stats-2NLNQBRY.js.map} +0 -0
  1475. /package/dist/{status-5OMVGFCH.js.map → status-QNXQNAKH.js.map} +0 -0
  1476. /package/dist/{sticker-654HS3K2.js.map → sticker-4NKFAGEK.js.map} +0 -0
  1477. /package/dist/{stock-35LOO3YN.js.map → stock-XOXZGGU3.js.map} +0 -0
  1478. /package/dist/{studies-IGOCWM7F.js.map → studies-C5IINK5Y.js.map} +0 -0
  1479. /package/dist/{studio-3D42TUJX.js.map → studio-BNYFU6ZH.js.map} +0 -0
  1480. /package/dist/{study-writes-Z5P2W7JH.js.map → study-writes-GJXLMM3D.js.map} +0 -0
  1481. /package/dist/{suggest-JASHCOL5.js.map → suggest-Z553OSYW.js.map} +0 -0
  1482. /package/dist/{sync-URIRLHTS.js.map → sync-CIRDY55O.js.map} +0 -0
  1483. /package/dist/{sync-RCDODSOD.js.map → sync-OYOS7HQL.js.map} +0 -0
  1484. /package/dist/{sync-6AN67IX3.js.map → sync-UBOHNOXB.js.map} +0 -0
  1485. /package/dist/{sync-definition-MZUJOJYI.js.map → sync-definition-2VEFGHYK.js.map} +0 -0
  1486. /package/dist/{tag-7YMFAZQQ.js.map → tag-22TFBGDG.js.map} +0 -0
  1487. /package/dist/{tag-manager-LU4GAZ6R.js.map → tag-manager-QLZHU6NG.js.map} +0 -0
  1488. /package/dist/{tags-KSMLT4G2.js.map → tags-56H6O7ZL.js.map} +0 -0
  1489. /package/dist/{tags-6A7QOYBI.js.map → tags-CYR2IPEJ.js.map} +0 -0
  1490. /package/dist/{tags-JHT3Q6VO.js.map → tags-RBUYBAA6.js.map} +0 -0
  1491. /package/dist/{tags-OU32R2SH.js.map → tags-WVJNOATS.js.map} +0 -0
  1492. /package/dist/{tags-MTVZJHCE.js.map → tags-ZTVOZOYP.js.map} +0 -0
  1493. /package/dist/{targeting-7HXKBXWY.js.map → targeting-GNEBULXU.js.map} +0 -0
  1494. /package/dist/{targeting-constants-QIB3UZHM.js.map → targeting-constants-GR6BVM2H.js.map} +0 -0
  1495. /package/dist/{targeting-criteria-NUXZB7NP.js.map → targeting-criteria-EZNZOUAE.js.map} +0 -0
  1496. /package/dist/{targets-LQ7HGI73.js.map → targets-CU7IUPV2.js.map} +0 -0
  1497. /package/dist/{terms-X4OJWTQH.js.map → terms-LG7FYQOG.js.map} +0 -0
  1498. /package/dist/{testimonials-Z2KOOMVH.js.map → testimonials-THJJYQ42.js.map} +0 -0
  1499. /package/dist/{themes-6KVP3COR.js.map → themes-TSEMQ4EJ.js.map} +0 -0
  1500. /package/dist/{top-companies-WWNPUJ23.js.map → top-companies-W6DA3MZQ.js.map} +0 -0
  1501. /package/dist/{transcript-P7HKVABU.js.map → transcript-KZ74PK23.js.map} +0 -0
  1502. /package/dist/{triggers-Z3LV3KJR.js.map → triggers-OJKTDJSV.js.map} +0 -0
  1503. /package/dist/{tweets-X5PTAT6F.js.map → tweets-IF5FFFTH.js.map} +0 -0
  1504. /package/dist/{unfollow-S5LHFLGW.js.map → unfollow-CDUOZWM7.js.map} +0 -0
  1505. /package/dist/{unlink-XTZA474P.js.map → unlink-ZE7464NK.js.map} +0 -0
  1506. /package/dist/{unstage-AVLORZLW.js.map → unstage-OVOZE6DA.js.map} +0 -0
  1507. /package/dist/{unstage-QXOL5DXZ.js.map → unstage-RGIPGM3E.js.map} +0 -0
  1508. /package/dist/{update-MDVZ24VQ.js.map → update-2VYVJCY2.js.map} +0 -0
  1509. /package/dist/{update-UE4XVBKL.js.map → update-63MMKPHI.js.map} +0 -0
  1510. /package/dist/{update-5ZNS2DKP.js.map → update-JHWPEJN7.js.map} +0 -0
  1511. /package/dist/{update-DDKNKV6M.js.map → update-Q3WJ3DQN.js.map} +0 -0
  1512. /package/dist/{update-3NA6ABLW.js.map → update-WHHAH4IE.js.map} +0 -0
  1513. /package/dist/{upload-SYFB2VTJ.js.map → upload-EAEILUQB.js.map} +0 -0
  1514. /package/dist/{upscale-P5EYUVOZ.js.map → upscale-HB6L6SZG.js.map} +0 -0
  1515. /package/dist/{url-options-DJZV3ADK.js.map → url-options-2BGF2D5E.js.map} +0 -0
  1516. /package/dist/{url-params-Y5XQSDEF.js.map → url-params-FBDTXQGY.js.map} +0 -0
  1517. /package/dist/{variant-JQVZUUA4.js.map → variant-O7LXOA2E.js.map} +0 -0
  1518. /package/dist/{videos-YCQVOOFE.js.map → videos-4TLBI3E3.js.map} +0 -0
  1519. /package/dist/{view-IKKRJ5YD.js.map → view-ED636LWD.js.map} +0 -0
  1520. /package/dist/{viewer-check-5GREZIVJ.js.map → viewer-check-ELVSS3DM.js.map} +0 -0
  1521. /package/dist/{web-7TPDDBI6.js.map → web-LDR6HO5M.js.map} +0 -0
  1522. /package/dist/{winners-4PKEVMUC.js.map → winners-ZG5SHNBS.js.map} +0 -0
  1523. /package/dist/{winning-ads-7X5EWSJX.js.map → winning-ads-7SWUVUDA.js.map} +0 -0
  1524. /package/dist/{write-commands-V77MD5SC.js.map → write-commands-24FRMQW4.js.map} +0 -0
  1525. /package/dist/{write-commands-CTLF2M6L.js.map → write-commands-AIWR7NBO.js.map} +0 -0
  1526. /package/dist/{write-commands-FIS6Y2MN.js.map → write-commands-UK6MKGHI.js.map} +0 -0
  1527. /package/dist/{write-commands-CY734U34.js.map → write-commands-W3UN6F4Y.js.map} +0 -0
  1528. /package/dist/{x-EMLFCHSG.js.map → x-UOGRWXET.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/creatives/make.ts","../src/commands/creatives/reference-brief.ts","../src/commands/creatives/reference-rank.ts","../src/commands/creatives/reference-pick.ts"],"sourcesContent":["/**\n * `baker creatives make <idea>`: one idea becomes one creative. For a static it finds a reference\n * for the job itself (the idea's container, made for our viewer), keeps the first whose\n * load-bearing parts we can supply, scaffolds from it, and records the idea on the creative and\n * its message in the ad spec. The agent then writes only the copy lines and the scene, and runs it.\n */\n\nimport { mkdir, mkdtemp, readdir, readFile, rm, stat, writeFile } from \"node:fs/promises\";\nimport { tmpdir } from \"node:os\";\nimport path from \"node:path\";\nimport type { ScopedWinnersSearchResponse } from \"@baker/api/ad-library\";\nimport { defineCommand } from \"citty\";\nimport { apiPost } from \"../../client.ts\";\nimport { memeRegister, readCompanyReading } from \"../../engine/creative-context/company.ts\";\nimport { avoidOf, readCreativeContext } from \"../../engine/creative-context/index.ts\";\nimport type { ReviewUsage } from \"../../engine/nodes/local/lib/render-review.ts\";\nimport type { ConceptCarry } from \"../../engine/scaffold/static-ad-spec.ts\";\nimport { readAdSpec, SPEC_SHAPES_HINT, unwrittenProblems } from \"../../engine/scaffold/static-ad-spec.ts\";\nimport { projectAdaptBriefs } from \"../../engine/scaffold/static-adapt-briefs.ts\";\nimport {\n parseDefinitionDelivery,\n platformsNamedIn,\n type ResolvedDelivery,\n} from \"../../engine/scaffold/static-delivery.ts\";\nimport { projectFormatBriefs } from \"../../engine/scaffold/static-format-briefs.ts\";\nimport { projectStaticBriefs } from \"../../engine/scaffold/static-render-briefs.ts\";\nimport { recordedShape } from \"../../engine/scaffold/static-shape-route.ts\";\nimport { reroutedOnSpec } from \"../../engine/scaffold/static-upgrade.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport {\n describeMarket,\n marketFromCompanyDoc,\n type ViewerTemperature,\n viewerFromKnowledge,\n} from \"../../viewer-profile.ts\";\nimport { runBaker as baker } from \"../baker-child.ts\";\nimport { type DefinitionSourceFields, parseDefinitionSourceFields } from \"../canvas/creative-definition.ts\";\nimport { type LibraryPlatform, notADesignReference, resolveSourcePlatform } from \"../canvas/library-reference.ts\";\nimport { findWorkspaceRoot } from \"../canvas/normalize-paths.ts\";\nimport { scaffoldDelivery } from \"../canvas/scaffold-delivery.ts\";\nimport { holdUnbilledSpend } from \"../canvas/unbilled-spend.ts\";\nimport { liveViewerLookups, readPersonas } from \"../canvas/viewer-check.ts\";\nimport {\n conceptFromFit,\n type FitAnswer,\n type FitBet,\n type FitFailure,\n fitReference,\n NO_FIT_HINT,\n pictureOf,\n} from \"../winning-ads/fit.ts\";\nimport { buildSearchBody } from \"../winning-ads/search.ts\";\nimport { castInventory, companyName } from \"./cast-inventory.ts\";\nimport { checkIdeas, type EvidenceLevel, type Idea, type IdeaCheck, sourcesClaims } from \"./ideas-model.ts\";\nimport {\n coverageOf,\n IDEAS_DIR,\n readCreativeRecords,\n readIdeas,\n readInsights,\n readKnowledgeCorpus,\n readPersonaIds,\n} from \"./ideas-workspace.ts\";\nimport {\n audienceQuery,\n definitionFieldsOf,\n fitBetOf,\n fitsIdea,\n freshReferencesFirst,\n ideaSpec,\n isOwnBrand,\n isTakenReference,\n isVideoIdea,\n missingElements,\n personaWho,\n pooledCandidates,\n rankedForOf,\n referenceSearchesFor,\n referenceWhereOf,\n setDefinitionFields,\n setSpecMessage,\n setSpecViewer,\n type TakenReferences,\n unsourcedCopyLines,\n whyUnfit,\n withFitConcept,\n} from \"./make-model.ts\";\nimport { makeSeriesAd, seriesMadeEnvelope } from \"./make-series.ts\";\nimport { referenceBriefFor } from \"./reference-brief.ts\";\nimport { type Avoid, askPickModel, pickAmong, type ReferencePick, type Take } from \"./reference-pick.ts\";\nimport { type RankedFor, rankForBet } from \"./reference-rank.ts\";\nimport { storeProductReads } from \"./store-product.ts\";\nimport { thinkingOutline, withThinking } from \"./thinking.ts\";\n\n/** Candidates whose fit may be asked (a few cents each, cached per workspace). */\nconst FITS_TRIED = 6;\n/**\n * Fits asked at a time: the best-ranked candidate is usually kept, so the rest wait for a slot that\n * one not fitting frees (six at once billed six fits where one was kept).\n */\nconst FITS_AT_ONCE = 3;\n/** How many found ads are ranked for the ad being made before the best FITS_TRIED are checked. */\nconst RANKED_POOL = 24;\nconst SEARCH_TIMEOUT_MS = 120_000;\n/**\n * How long make looks for, checks and describes a reference before it starts the ad from the idea.\n * Every ad starts from a proven one when it can: dev, Oct 2026, a search took 3-30 s, a fit 20-50 s\n * and the describe ~35 s beside them, so the 50 s this once was sent good references to the idea.\n */\nconst REFERENCE_MS = 150_000;\n\nconst DESCRIPTION = `Build one idea from src/creatives/_ideas/ into a creative. For a static it builds on a proven winning ad: it reads what this ad sells and for whom, searches ads of that in its market (the idea's container first, then any), then ads made for the idea's persona, its industry, the idea's message, then the container's strongest winners from any category; leaves out the company's own ads, ranks the rest for this ad's buyer, viewer and brand (a proven ad, or brand, another creative is already built on last, so a batch of ideas builds on different winners), checks which fit us (one whose scroll-stopper or proof cannot be ours is passed over, and the first hint says which and why) and, when several do, compares them side by side, scaffolds the creative on the best-ranked one, records the idea on it and sets the ad's message. The fit says what made that ad win, so what ours carries of it (\\`reference.carry\\`: whole_ad, layout, hook or angle); its first hint names the ad: tell the person. When no proven ad fits, it starts the ad from the idea itself and says why (never a dead end, never retry with another format). You then write the copy lines and the scene in prompt.json and run it. Takes up to about two and a half minutes: run it in the foreground, once per idea.\n\nWhere the ad runs decides its sizes (Meta 4:5 + 9:16, LinkedIn 1:1, TikTok 9:16): it is the idea's \\`platforms\\`, or --platforms from the person's request; nothing saying so is refused, never defaulted to Meta.\n\nStart here, with an idea from \\`baker creatives ideas\\` build_next:\n baker creatives make phone-payroll # static: reference found and checked for you\n baker creatives make phone-payroll --platforms linkedin # where it runs, when the idea does not say\n baker creatives make phone-payroll --adset 120210000000 # written for that ad set's viewer\n baker creatives make phone-payroll --reference 1310524137919413 # your own reference instead\n baker creatives make founder-story --spec beats.json # a video idea: from its beats spec\n baker creatives make phone-payroll --slug phone-payroll-h2 # another hook of the same idea\n baker creatives make tiktok-speed --series zernio-live # another message in the style of a ready ad\nThen: edit src/creatives/<slug>/prompt.json (copy + scene; the message is set), and \\`baker canvas run src/creatives/<slug>/<slug>.canvas.json\\`.`;\n\nconst ARGS = {\n idea: { type: \"positional\", required: true, description: \"The idea id (src/creatives/_ideas/<idea>.md)\" },\n slug: { type: \"string\", required: false, description: \"Creative slug (default: the idea id)\" },\n adset: { type: \"string\", required: false, description: \"Meta ad set the ad is for: its viewer and placements\" },\n reference: {\n type: \"string\",\n required: false,\n description: \"A library ad id to build on instead of searching (statics)\",\n },\n platforms: {\n type: \"string\",\n required: false,\n description:\n \"Where the ad runs, the main platform first: meta (4:5 + 9:16), linkedin (1:1), tiktok (9:16), google_demandgen, … Take it from the person's request; default the creative's definition (and the sizes it records), then the idea's `platforms`, then the ad set's (Meta). Nothing saying so is refused, never defaulted.\",\n },\n formats: {\n type: \"string\",\n required: false,\n description:\n \"Exactly the sizes to make, when the person asks for others than the platform's (`--platforms linkedin --formats 1:1,4:5`).\",\n },\n \"reference-platform\": {\n type: \"string\",\n required: false,\n description:\n \"Library platform of --reference: meta|linkedin|tiktok|google (default meta). On google only display ads are built on (a static needs a picture)\",\n },\n platform: {\n type: \"string\",\n required: false,\n description:\n \"Retired: --platforms says where the ad runs; --reference-platform says which library --reference is in.\",\n },\n spec: {\n type: \"string\",\n required: false,\n description: \"Video ideas: the beats spec for `baker canvas scaffold-ad --spec`\",\n },\n series: {\n type: \"string\",\n required: false,\n description:\n \"Statics: make this idea as another ad of the series led by this creative (its slug): the same design, only its words changed. No reference is searched; seconds. The lead must have a ready version. Then write its words and run the whole series: baker canvas run --series <lead>\",\n },\n avatar: {\n type: \"string\",\n required: false,\n description:\n \"Statics: the Avatar(s) the ad's people are cast as (`@eduard` or `eduard,lucia`; `baker avatars list`). Run make again with it once the definition decides the cast, before prompt.json is written: it rebuilds the canvas on them and keeps the thinking\",\n },\n \"from-idea\": {\n type: \"boolean\",\n required: false,\n default: false,\n description:\n \"Statics: skip the reference search and start from the idea (what make does by itself when no proven ad fits)\",\n },\n} as const;\n\nregisterSchema({ command: \"creatives.make\", description: DESCRIPTION, args: ARGS });\n\ntype Failure = { code: string; message: string; fix?: string };\n\nfunction fail(error: Failure): never {\n writeJson({ ok: false, error });\n process.exit(1);\n}\n\nasync function viewerTemperature(\n root: string,\n adSet: string | undefined,\n awareness: string,\n): Promise<ViewerTemperature> {\n if (adSet) {\n const read = await liveViewerLookups(root)\n .adSetViewer(adSet)\n .catch(() => null);\n if (read) return read.temperature;\n }\n return viewerFromKnowledge({ personas: [], awareness: awareness as never }).temperature;\n}\n\ntype Picked = {\n adId: string;\n platform: LibraryPlatform;\n advertiserId?: string;\n why: string;\n tried: number;\n /** The fit that kept it, with what made it win (`carry`); none for a reference chosen by hand that could not be checked. */\n fit?: FitAnswer;\n /** Its static container (`lifestyle_photo`), when the library knows it: it can differ from the idea's. */\n container?: string;\n /** Why the side-by-side look preferred it to the others that fit, when there were others. */\n preferred?: string;\n /** Every proven ad that fit, in the look's order (this one first), when several did. */\n board?: BoardAd[];\n /** What the look said our ad takes from which of them. */\n takes?: Take[];\n /** What it said our ad must not copy from them. */\n avoid?: Avoid[];\n /** The proven ads checked that did not fit, each with why (what stops the scroll or the proof that cannot be ours first). */\n passed?: PassedOver[];\n};\n\n/** A proven ad that fit, as the thinking lays it out. */\ntype BoardAd = { adId: string; advertiser?: string; mediaUrl?: string };\n\n/** A proven ad checked and not built on, and why. */\ntype PassedOver = { adId: string; advertiser?: string; why: string };\n\n/** How many of the proven ads passed over the person is told about. */\nconst PASSED_SAID = 3;\n\n/** The checked candidates that did not fit, in rank order, each with why; at most `PASSED_SAID`. Pure. */\nfunction passedOver(candidates: readonly Buildable[], fits: ReadonlyArray<FitResult | undefined>): PassedOver[] {\n return candidates\n .flatMap((candidate, i) => {\n const fit = fits[i];\n if (!fit?.ok || fitsIdea(fit.fit)) return [];\n return [\n {\n adId: String(candidate.ad_id),\n ...(candidate.advertiser ? { advertiser: candidate.advertiser } : {}),\n why: whyUnfit(fit.fit),\n },\n ];\n })\n .slice(0, PASSED_SAID);\n}\n\ntype Candidate = {\n ad_id?: string | null;\n platform?: unknown;\n advertiser_id?: string | null;\n format?: string | null;\n winner_score?: number | null;\n advertiser?: string | null;\n media_url?: string | null;\n dna?: {\n container?: string | null;\n industry?: string | null;\n business_model?: string | null;\n target_persona?: string | null;\n visual?: string | null;\n creative_concept?: string | null;\n mechanism?: string | null;\n } | null;\n};\n\n/** The library platform a candidate is on (none named is the library's default, meta); null for any other. Pure. */\nfunction candidatePlatform(c: Candidate): LibraryPlatform | null {\n const resolved = resolveSourcePlatform(typeof c.platform === \"string\" ? c.platform : undefined);\n return resolved.ok ? resolved.platform : null;\n}\n\n/** A candidate make can build on, its platform resolved. */\ntype Buildable = Candidate & { platform: LibraryPlatform };\n\n/**\n * The candidate with its platform, when it is a design make can build on: never one on a platform\n * the library does not index (it was once fitted as a Meta ad and silently failed), nor a Google\n * search text ad, which is wording, not a design. Pure.\n */\nfunction buildable(c: Candidate): Buildable[] {\n const platform = candidatePlatform(c);\n if (!platform || notADesignReference(platform, String(c.ad_id), { format: c.format ?? null })) return [];\n return [{ ...c, platform }];\n}\ntype FitResult = Awaited<ReturnType<typeof fitReference>>;\n\n/** A reference the fit kept, as the side-by-side pick is shown it. */\nexport type FittingReference = { adId: string; candidate: Candidate; fit: FitAnswer };\n\n/**\n * How references are found, ordered, checked and chosen between; the live library, decision\n * model, fit and pick by default, injected in tests. Without `rank` the search's order holds;\n * without `choose` the best-ranked reference that fits is kept.\n */\nexport type ReferenceDeps = {\n /** The ads one search found; null when the library could not search. */\n search: (body: Record<string, unknown>) => Promise<Candidate[] | null>;\n rank?: (found: Candidate[]) => Promise<Candidate[]>;\n fit: (platform: Picked[\"platform\"], adId: string) => Promise<FitResult>;\n choose?: (fitting: FittingReference[]) => Promise<ReferencePick | null>;\n /** What the workspace's other creatives are built on: checked after every other candidate. */\n taken?: TakenReferences;\n};\n\n/**\n * The live library, fit and, when the ad being made is known, the ranking and the side-by-side\n * pick: the company's own ads left out (its brand names, from the brief), the rest read against\n * the ad before the fits, and the ones that fit compared in one look.\n */\nfunction liveReferenceDeps(\n root: string,\n bet?: FitBet,\n rankedFor?: RankedFor,\n brands: readonly string[] = [],\n): ReferenceDeps {\n return {\n search: async (body) => {\n const ask = () =>\n apiPost<ScopedWinnersSearchResponse>(\"/api/ad-library/winners/search\", body, {\n timeoutMs: SEARCH_TIMEOUT_MS,\n }).catch(() => null);\n // A failed search is asked once more: the topic searches are the slow ones, and when they\n // fail only the quick browses of any category's winners are left (dev, Oct 2026, under load).\n return ((await ask()) ?? (await ask()))?.results ?? null;\n },\n fit: (platform, adId) => fitReference(root, platform, adId, bet),\n ...(rankedFor\n ? {\n rank: async (found) => {\n const spent: ReviewUsage[] = [];\n try {\n return await rankForBet(\n found.filter((c) => !isOwnBrand(c.advertiser, brands)),\n rankedFor,\n undefined,\n (u) => spent.push(u),\n );\n } finally {\n await holdUnbilledSpend(path.join(root, \"canvas\", \".cache\"), spent).catch(() => undefined);\n }\n },\n choose: (fitting) => chooseLive(root, fitting, rankedFor),\n }\n : {}),\n };\n}\n\n/** The side-by-side pick over the live pictures, its spend held for the workspace's next bill. */\nasync function chooseLive(root: string, fitting: FittingReference[], rankedFor: RankedFor) {\n const options = (\n await Promise.all(\n fitting.map(async (f) => {\n const picture = await pictureOf(f.candidate.media_url);\n return picture\n ? [\n {\n adId: f.adId,\n picture,\n fit: f.fit,\n ...(f.candidate.advertiser ? { advertiser: f.candidate.advertiser } : {}),\n },\n ]\n : [];\n }),\n )\n ).flat();\n if (options.length < 2) return null;\n const spent: ReviewUsage[] = [];\n const picked = await pickAmong(\n options,\n rankedFor,\n askPickModel((u) => spent.push(u)),\n );\n await holdUnbilledSpend(path.join(root, \"canvas\", \".cache\"), spent).catch(() => undefined);\n if (!picked) return null;\n // The look saw only the options with a picture: its order, in the indices of every one that fit.\n const byAd = new Map(fitting.map((f, i) => [f.adId, i]));\n const order = picked.order.flatMap((i) => {\n const at = byAd.get(options[i]?.adId ?? \"\");\n return at === undefined ? [] : [at];\n });\n return { ...picked, order };\n}\n\n/**\n * The candidates of every search, the better search's first (every search runs at once), then in\n * the order they are ranked for the ad being made, when they are; the first FITS_TRIED.\n */\nasync function findCandidates(\n searches: Record<string, unknown>[],\n deps: ReferenceDeps,\n): Promise<Buildable[] | \"unavailable\"> {\n const results = await Promise.all(searches.map((search) => deps.search(search).catch(() => null)));\n // Every topic search failed: what is left is any category's winners, never a reference for this ad.\n const topics = searches.flatMap((search, i) => (search.free_text_query ? [results[i]] : []));\n if (topics.length > 0 && topics.every((found) => found === null)) return \"unavailable\";\n const pooled = pooledCandidates(\n results.map((found) => (found ?? []).flatMap(buildable)),\n deps.rank ? RANKED_POOL : FITS_TRIED,\n );\n const fresh = (found: Buildable[]) => (deps.taken ? freshReferencesFirst(found, deps.taken) : found);\n if (!deps.rank) return fresh(pooled);\n const ranked = await deps.rank(pooled).catch(() => pooled);\n return fresh(ranked.flatMap(buildable)).slice(0, FITS_TRIED);\n}\n\n/**\n * Search the idea's container and keep the best-ranked reference whose load-bearing parts we can\n * supply. Three fits run at once (a few cents each): one after another, one make took 109 s.\n */\n/**\n * What building on a reference started before its fit was known left behind: `prepared` when the\n * reference kept is the one built on, `discarded` (to wait for before building over it) when not.\n */\ntype Speculated<T> = { prepared?: Promise<T>; discarded?: Promise<T> };\n\n/** The reference a build starts on, as `prepare` is handed it before its fit is known. */\nexport type ReferenceCandidate = Pick<Picked, \"adId\" | \"platform\" | \"advertiserId\">;\n\nconst candidateOf = (c: Buildable): ReferenceCandidate => ({\n adId: String(c.ad_id),\n platform: c.platform,\n ...(c.advertiser_id ? { advertiserId: c.advertiser_id } : {}),\n});\n\nexport async function pickReference<T = never>(\n root: string,\n searches: Record<string, unknown>[],\n deps: ReferenceDeps = liveReferenceDeps(root),\n /**\n * Building on the best-ranked reference, started while the fits are asked: it is usually the one\n * kept, and its scaffold (a 35 s describe) then no longer waits ~25 s for them (dev, Oct 2026).\n */\n prepare?: (candidate: ReferenceCandidate, signal: AbortSignal) => Promise<T>,\n /** Aborted when the time for a reference is out: no reference is kept, and the build started is stopped. */\n within?: AbortSignal,\n): Promise<(Picked & Speculated<T>) | (Failure & Speculated<T>)> {\n const out = whenAborted(within);\n const found = await Promise.race([findCandidates(searches, deps), out]);\n if (found === \"out\") return slowReference();\n if (found === \"unavailable\") return searchUnavailable();\n const candidates = found.slice(0, FITS_TRIED);\n const first = candidates[0];\n // A build on a reference that is not kept is stopped, not waited for (dev: 50 s for nothing).\n const stop = new AbortController();\n const building = first && prepare ? prepare(candidateOf(first), stop.signal) : undefined;\n // A failed speculative build is never this pick's failure: the kept reference is built again.\n void building?.catch(() => undefined);\n // Three fits are asked at once, and one that does not fit asks the next; the best-ranked one that\n // fits is kept as soon as it and every better-ranked one have answered, never waiting on slower\n // fits below it. Once the pick is made, no further fit is asked.\n let settled = false;\n const asked: Promise<FitResult>[] = [];\n const askNext = () => {\n const index = asked.length;\n const candidate = candidates[index];\n if (settled || !candidate) return;\n asked.push(\n askFit(deps, candidate).then((fit) => {\n if (!(fit.ok && fitsIdea(fit.fit))) askNext();\n return fit;\n }),\n );\n };\n for (let slot = 0; slot < FITS_AT_ONCE; slot++) askNext();\n const deciding = deps.choose\n ? chosenFitting(candidates, asked, deps.choose, deps.taken)\n : firstFitting(candidates, asked);\n const kept = await Promise.race([deciding, out]);\n settled = true;\n if (kept === \"out\") {\n stop.abort();\n return { ...slowReference(), ...(building ? { discarded: building } : {}) };\n }\n if (kept.index !== 0) stop.abort();\n const speculated = building ? (kept.index === 0 ? { prepared: building } : { discarded: building }) : {};\n return { ...kept.picked, ...speculated };\n}\n\n/**\n * One candidate's fit, a throw read as a fit not made: it is handled when asked, since the fits\n * below the one awaited can fail while it is awaited.\n */\nconst askFit = (deps: ReferenceDeps, c: Buildable): Promise<FitResult> =>\n Promise.resolve()\n .then(() => deps.fit(c.platform, String(c.ad_id)))\n .catch((e): FitResult => ({ ok: false, error: { code: \"UNAVAILABLE\", message: String(e), fix: \"\" } }));\n\n/** Resolves \"out\" once `signal` aborts (never without one). */\nconst whenAborted = (signal: AbortSignal | undefined) =>\n new Promise<\"out\">((resolve) => {\n if (signal?.aborted) resolve(\"out\");\n signal?.addEventListener(\"abort\", () => resolve(\"out\"), { once: true });\n });\n\n/** The reference kept: its candidate, the fit that kept it, its rank and why it was preferred. Pure. */\nfunction pickedOf(candidate: Buildable, fit: FitAnswer, index: number, preferred?: string): Picked {\n const layers = fit.why_it_wins;\n return {\n ...candidateOf(candidate),\n why: [layers.disguise, layers.trigger, layers.logic].filter(Boolean).join(\"; \"),\n tried: index + 1,\n fit,\n ...(candidate.dna?.container ? { container: candidate.dna.container } : {}),\n ...(preferred ? { preferred } : {}),\n };\n}\n\n/** The best-ranked candidate whose fit keeps it, with its rank; else why none was kept (index -1). */\nasync function firstFitting(\n candidates: readonly Buildable[],\n fits: readonly Promise<FitResult>[],\n): Promise<{ picked: Picked | Failure; index: number }> {\n let unchecked: FitFailure | null = null;\n let checked = 0;\n const lacking: string[] = [];\n const answered: Array<FitResult | undefined> = [];\n for (const [index, candidate] of candidates.entries()) {\n const fit = await fits[index];\n answered.push(fit);\n if (!fit) continue;\n if (!fit.ok) unchecked = fit.error;\n else checked += 1;\n if (fit.ok && !fitsIdea(fit.fit)) lacking.push(...missingElements(fit.fit));\n if (!(fit.ok && fitsIdea(fit.fit))) continue;\n const passed = passedOver(candidates, answered);\n return { picked: { ...pickedOf(candidate, fit.fit, index), ...(passed.length > 0 ? { passed } : {}) }, index };\n }\n return { picked: noReference(candidates.length, checked, unchecked, lacking), index: -1 };\n}\n\n/** Every fit asked, once no more are being asked: a fit that does not fit asks the next. */\nasync function allFits(fits: Promise<FitResult>[]): Promise<FitResult[]> {\n let seen = -1;\n while (seen !== fits.length) {\n seen = fits.length;\n await Promise.all(fits);\n }\n return await Promise.all(fits);\n}\n\n/**\n * The reference the side-by-side look prefers among every one that fits, with its rank and why;\n * the best-ranked that fits when only one does or the look does not answer.\n */\nasync function chosenFitting(\n candidates: readonly Buildable[],\n fits: Promise<FitResult>[],\n choose: NonNullable<ReferenceDeps[\"choose\"]>,\n taken?: TakenReferences,\n): Promise<{ picked: Picked | Failure; index: number }> {\n const answered = await allFits(fits);\n const fitted = answered.flatMap((fit, index) => {\n const candidate = candidates[index];\n return candidate && fit.ok && fitsIdea(fit.fit) ? [{ index, candidate, fit: fit.fit }] : [];\n });\n // Another creative's reference is compared only when none of the others fit.\n const fresh = taken ? fitted.filter((f) => !isTakenReference(f.candidate, taken)) : [];\n const fitting = fresh.length > 0 ? fresh : fitted;\n if (fitting.length < 2) return await firstFitting(candidates, fits);\n const chosen = await choose(\n fitting.map((f) => ({ adId: String(f.candidate.ad_id), candidate: f.candidate, fit: f.fit })),\n ).catch(() => null);\n const kept = (chosen && fitting[chosen.order[0] ?? 0]) || fitting[0];\n if (!kept) return await firstFitting(candidates, fits);\n const ordered = chosen ? chosen.order.flatMap((i) => fitting[i] ?? []) : fitting;\n const passed = passedOver(candidates, answered);\n return {\n picked: {\n ...pickedOf(kept.candidate, kept.fit, kept.index, chosen?.why),\n board: [kept, ...ordered.filter((f) => f !== kept)].map((f) => boardAdOf(f.candidate)),\n ...(chosen?.takes ? { takes: chosen.takes } : {}),\n ...(chosen?.avoid ? { avoid: chosen.avoid } : {}),\n ...(passed.length > 0 ? { passed } : {}),\n },\n index: kept.index,\n };\n}\n\n/** A fitting candidate as the board shows it. Pure. */\nconst boardAdOf = (c: Buildable): BoardAd => ({\n adId: String(c.ad_id),\n ...(c.advertiser ? { advertiser: c.advertiser } : {}),\n ...(c.media_url ? { mediaUrl: c.media_url } : {}),\n});\n\n/** What the rejected references won on that we lack, each once, at most three. Pure. */\nconst lackingText = (lacking: readonly string[]) => {\n const named = [...new Set(lacking.map((l) => l.trim()).filter(Boolean))].slice(0, 3);\n return named.length > 0 ? ` (they won on ${named.join(\", \")})` : \"\";\n};\n\nconst searchUnavailable = (): Failure => ({\n code: \"REFERENCE_SEARCH_UNAVAILABLE\",\n message: \"The ads library could not search for this ad's category just now.\",\n fix: \"Run make again in a minute: every ad is built on a proven one. Only when the person asks for an ad without one, pass --from-idea.\",\n});\n\nconst slowReference = (): Failure => ({\n code: \"REFERENCE_SLOW\",\n message: `Finding and checking a proven ad took longer than ${REFERENCE_MS / 1000} s.`,\n fix: \"Run make again: the searches and checks already made are kept, so it goes further each time. Or pass --reference <adId> for one you looked at (`baker winning-ads search`). Never start the ad from the idea for this.\",\n});\n\n/**\n * Whether a make that kept no reference starts the ad from the idea: only when asked to\n * (`--from-idea`, or rebuilding an ad that started from its idea) or when no proven ad fits.\n * A search that was slow or down says nothing about the ads, so make fails and is run again (prod,\n * Oct 2026: ten makes on one loaded sandbox ran out of time and built from the idea). Pure.\n */\nexport function startsFromIdea(failure: Failure): boolean {\n return failure.code === \"FROM_IDEA\" || failure.code === \"NO_REFERENCE_FITS\";\n}\n\n/**\n * Why no reference was kept: none found, none fits (naming what the ones checked won on that we\n * lack), or the fit could not be checked. Pure.\n */\nexport function noReference(\n found: number,\n checked: number,\n unchecked: { message: string } | null,\n lacking: readonly string[] = [],\n): Failure {\n if (found > 0 && checked === 0 && unchecked) {\n return {\n code: \"FIT_UNAVAILABLE\",\n message: `Could not check whether the references fit (${unchecked.message})`,\n fix: \"Run make again in a moment. To build now, pass --reference <adId> with one you looked at yourself (`baker winning-ads search`).\",\n };\n }\n return {\n code: \"NO_REFERENCE_FITS\",\n message:\n found === 0\n ? \"The library has no proven ad in this idea's format.\"\n : `None of the ${found} proven ads checked wins on something this company has, for a viewer who would stop for it${lackingText(lacking)}.`,\n fix: \"Nothing to do to go on: the ad starts from the idea. To build on a proven ad instead, pass --reference <adId> for one you looked at (`baker winning-ads search --format static` with what the company sells or who the ad is for). Do not stop the batch: build the other ideas.\",\n };\n}\n\n/**\n * Refused when the creative's ad is already written: building again would put the idea's\n * placeholders over it (dev, Oct 2026: a chat agent re-ran make on a re-formatted idea and lost the\n * ad it had shown). Nothing there, or a failed make's placeholders, lets the build go ahead. Pure.\n */\nexport function alreadyWritten(promptJson: unknown, slug: string, draft?: string): Failure | null {\n if (promptJson === null || promptJson === undefined) return null;\n // The draft make wrote, untouched: the ad is not written yet, so a rebuild (`--avatar`) loses nothing.\n if (draft !== undefined && sameJson(promptJson, draft)) return null;\n try {\n if (unwrittenProblems(readAdSpec(promptJson)).length > 0) return null;\n } catch {\n // Unreadable is still someone's work: refuse rather than overwrite it.\n }\n return {\n code: \"ALREADY_MADE\",\n message: `\"${slug}\" is already made and its ad is written: building it again would replace that ad with placeholders.`,\n fix: `To change this ad, edit src/creatives/${slug}/prompt.json and run \\`baker canvas run\\` on it. For another ad of the same idea, run make again with --slug <new-slug>.`,\n };\n}\n\n/** Whether a parsed spec is the JSON text given, whatever its spacing. Pure. */\nfunction sameJson(parsed: unknown, text: string): boolean {\n try {\n return JSON.stringify(parsed) === JSON.stringify(JSON.parse(text));\n } catch {\n return false;\n }\n}\n\n/** Where make keeps the prompt.json it wrote, to know whether anyone has written the ad since (never committed). */\nconst draftPath = (root: string, slug: string) => path.join(root, \"canvas\", \".cache\", \"make-drafts\", `${slug}.json`);\n\ntype MakeArgs = {\n slug?: string;\n adset?: string;\n reference?: string;\n /** The library `--reference` is in (`--reference-platform`). */\n referencePlatform?: string;\n /** Where the ad runs (`--platforms`), the main platform first. */\n platforms?: string;\n /** Exactly the sizes to make (`--formats`). */\n formats?: string;\n spec?: string;\n /** The lead ad of the series this idea is made in (`--series`). */\n series?: string;\n fromIdea?: boolean;\n /** The Avatars the ad's people are cast as (`--avatar`). */\n avatar?: string;\n};\n\n/**\n * The proven ad a re-cast rebuilds on: the one the creative is built on, never a new search, when\n * make runs again with `--avatar` and no other reference. Null otherwise. Pure.\n */\nexport function castRebuild(\n definition: string | null,\n args: Pick<MakeArgs, \"avatar\" | \"reference\" | \"fromIdea\">,\n): { adId: string; platform: string } | null {\n if (!definition || !args.avatar || args.reference || args.fromIdea) return null;\n const { sourceAdId, sourcePlatform } = parseDefinitionSourceFields(definition);\n return sourceAdId ? { adId: sourceAdId, platform: sourcePlatform ?? \"meta\" } : null;\n}\n\n/**\n * True when `make --avatar` re-casts a creative that was built from its idea (its definition names\n * no proven ad): it is rebuilt from the idea, never given a proven ad found by a new search. Pure.\n */\nexport function ideaRecast(\n definition: string | null,\n args: Pick<MakeArgs, \"avatar\" | \"reference\" | \"fromIdea\">,\n): boolean {\n if (!definition || !args.avatar || args.reference || args.fromIdea) return false;\n return !parseDefinitionSourceFields(definition).sourceAdId;\n}\n\n/** The scaffold's cast flags for the Avatars a definition or `--avatar` names (`@eduard, @lucia`). Pure. */\nexport function castFlags(avatar: string | undefined): string[] {\n const handles = (avatar ?? \"\")\n .split(/[\\s,]+/)\n .map((h) => h.replace(/^@/, \"\").toLowerCase())\n .filter(Boolean);\n return handles.length > 0 ? [\"--avatar\", handles.join(\",\")] : [];\n}\n\nconst flag = (value: unknown): string | undefined => (typeof value === \"string\" && value ? value : undefined);\n\n/** The idea, checked: refused when unreadable, missing, or with a problem `creatives ideas` names. */\nasync function loadIdea(root: string, ideaId: string) {\n const { ideas, unreadable } = await readIdeas(root);\n const bad = unreadable.find((u) => u.id === ideaId);\n if (bad) {\n fail({\n code: \"INVALID_IDEA\",\n message: bad.problems.join(\"; \"),\n fix: `Fix ${IDEAS_DIR}/${ideaId}.md, then run make again.`,\n });\n }\n const idea = ideas.find((i) => i.id === ideaId);\n if (!idea) {\n fail({\n code: \"NOT_FOUND\",\n message: `No idea \"${ideaId}\" in ${IDEAS_DIR}/.`,\n fix: `Ideas on file: ${ideas.map((i) => i.id).join(\", \") || \"none\"}. Write it there first.`,\n });\n }\n const [insights, knowledge, personas, creatives, products] = await Promise.all([\n readInsights(root),\n readKnowledgeCorpus(root),\n readPersonaIds(root),\n readCreativeRecords(root),\n storeProductReads([idea.product]),\n ]);\n const check = checkIdeas({ ideas, insights, knowledge, personas, products, ...coverageOf(ideas, creatives) }).find(\n (c) => c.id === idea.id,\n );\n if (check && check.problems.length > 0) {\n fail({\n code: \"IDEA_HAS_PROBLEMS\",\n message: check.problems.join(\"; \"),\n fix: \"Fix the idea file and run `baker creatives ideas` again.\",\n });\n }\n const product = idea.product ? products.get(idea.product) : undefined;\n return { idea, check, productRecord: product && \"record\" in product ? product.record : \"\" };\n}\n\ntype Scaffolded = {\n scaffold: Record<string, unknown>;\n reference: Picked | null;\n fromIdea?: string;\n /** Why the kept reference's concept could not be seeded: the render does not see it yet. */\n conceptUnseeded?: string;\n};\n\n/** Scaffold the creative: a video from its beats, a static from a reference that fits. */\nasync function scaffoldIdea(\n root: string,\n idea: Idea,\n args: MakeArgs,\n slug: string,\n temperature: ViewerTemperature,\n whereFlags: string[],\n): Promise<Scaffolded> {\n const viewerFlags = [\n ...(args.adset ? [\"--target-adset\", args.adset] : [\"--viewer-temperature\", temperature]),\n ...whereFlags,\n ];\n if (isVideoIdea(idea)) {\n if (!args.spec) {\n fail({\n code: \"SPEC_REQUIRED\",\n message: `\"${idea.id}\" is a video idea (${idea.format}): it is built from its beats.`,\n fix: `Write the beats spec (one spoken line plus one shot each; references/video-flow.md), message first, then: baker creatives make ${idea.id} --spec <file>.`,\n });\n }\n return {\n scaffold: await baker([\"canvas\", \"scaffold-ad\", \"--spec\", args.spec, \"--slug\", slug, ...viewerFlags]),\n reference: null,\n };\n }\n return await scaffoldStatic(root, idea, args, slug, temperature, [...viewerFlags, ...castFlags(args.avatar)]);\n}\n\ntype Chosen = Awaited<ReturnType<typeof pickReference<Record<string, unknown>>>>;\n\n/**\n * A proven ad named by hand (`--reference`, or the one a re-cast rebuilds on) with the fit made of\n * it for this ad (cached: free), so its thinking names what stops the scroll and the proof and asks\n * what of ours carries each, as for one make found. Built on unchecked when no fit can be made; an\n * unknown platform refused.\n */\nexport async function checkedByHand(\n adId: string,\n platform: string | undefined,\n deps: Pick<ReferenceDeps, \"fit\">,\n): Promise<Picked | Failure> {\n const byHand = handPickedReference(adId, platform);\n if (\"code\" in byHand) return byHand;\n const fit = await deps.fit(byHand.platform, byHand.adId).catch(() => null);\n if (!fit?.ok) return byHand;\n if (!fitsIdea(fit.fit)) {\n return {\n code: \"REFERENCE_UNFIT\",\n message: `The proven ad ${adId} does not fit this idea: ${whyUnfit(fit.fit)}.`,\n fix: \"Pick another proven ad (`baker winning-ads search`), or run make without --reference to build from the idea.\",\n };\n }\n const layers = fit.fit.why_it_wins;\n return { ...byHand, why: [layers.disguise, layers.trigger, layers.logic].filter(Boolean).join(\"; \"), fit: fit.fit };\n}\n\n/** The reference passed by hand, checked (an unknown platform refused), none when asked to start from the idea, else `pick`'s. */\nasync function chooseReference(args: MakeArgs, deps: ReferenceDeps, pick: () => Promise<Chosen>): Promise<Chosen> {\n if (args.reference) {\n const byHand = await checkedByHand(args.reference, args.referencePlatform, deps);\n if (\"code\" in byHand) fail(byHand);\n return byHand;\n }\n if (args.fromIdea) return { code: \"FROM_IDEA\", message: \"Asked to start from the idea.\" };\n return await pick();\n}\n\n/** Where this idea's reference is looked for, and the brief it is ranked by: the company's reading, its rules, the idea's persona. */\nasync function referenceTarget(root: string, idea: Idea) {\n const market = marketFromCompanyDoc(await readFile(path.join(root, \"COMPANY.md\"), \"utf8\").catch(() => \"\"));\n const personas = await readPersonas(root).catch(() => []);\n const [found, company, context] = await Promise.all([\n referenceBriefFor(root, {\n message: idea.message,\n who: personaWho(idea, personas),\n ...(idea.shows ? { shows: idea.shows } : {}),\n }),\n readCompanyReading(root),\n readCreativeContext(root, { kind: \"static\" }),\n ]);\n // What the brand never does is its rules, never a model's guess at them.\n const brief = found && { ...found, avoid: avoidOf(context.rules) };\n const category = company?.category ?? company?.sells;\n const where = referenceWhereOf(brief, {\n ...(market && market.country !== \"global\" ? { country: market.country } : {}),\n ...(category ? { category } : {}),\n audience: audienceQuery(idea, personas),\n });\n return { market, personas, brief, where };\n}\n\n/** The proven ads, and their brands, every creative of the workspace but `slug` is built on. */\nasync function takenReferencesIn(root: string, slug: string): Promise<TakenReferences> {\n const creatives = path.join(root, \"src\", \"creatives\");\n const names = await readdir(creatives).catch(() => []);\n const sources = await Promise.all(\n names\n .filter((name) => name !== slug && !name.startsWith(\"_\"))\n .map((name) =>\n readFile(path.join(creatives, name, \"_definition.md\"), \"utf8\").then(\n parseDefinitionSourceFields,\n (): DefinitionSourceFields => ({}),\n ),\n ),\n );\n return {\n adIds: new Set(sources.flatMap((s) => (s.sourceAdId ? [s.sourceAdId] : []))),\n advertiserIds: new Set(sources.flatMap((s) => (s.sourceAdvertiserId ? [s.sourceAdvertiserId] : []))),\n };\n}\n\n/** A static from a reference that fits, found within `REFERENCE_MS`; from the idea itself only when none fits. */\nasync function scaffoldStatic(\n root: string,\n idea: Idea,\n args: MakeArgs,\n slug: string,\n temperature: ViewerTemperature,\n viewerFlags: string[],\n): Promise<Scaffolded> {\n const onReference = (c: ReferenceCandidate, signal?: AbortSignal) =>\n baker(\n [\n \"canvas\",\n \"scaffold-static-ad\",\n \"--source-ad-id\",\n c.adId,\n \"--source-platform\",\n c.platform,\n ...(c.advertiserId ? [\"--source-advertiser-id\", c.advertiserId] : []),\n \"--slug\",\n slug,\n \"--title\",\n idea.message.slice(0, 120),\n ...viewerFlags,\n ],\n signal,\n );\n // Built on the best-ranked reference while the fits are asked, only into a new creative: a build\n // that is not kept is then removed whole, leaving nothing of that reference on the creative.\n const dir = path.join(root, \"src\", \"creatives\", slug);\n const fresh = !(await stat(dir).catch(() => null));\n // A reference found by make has its time: past it, make fails and is run again (`REFERENCE_MS`).\n const budget = AbortSignal.timeout(REFERENCE_MS);\n const { market, personas, brief, where } = await referenceTarget(root, idea);\n const bet = fitBetOf(\n idea,\n personas,\n await readInsights(root).catch(() => []),\n market ? describeMarket(market) : undefined,\n );\n const deps = {\n ...liveReferenceDeps(root, bet, rankedForOf(brief, where, bet), brief?.brands),\n taken: await takenReferencesIn(root, slug),\n };\n const definition = await readFile(path.join(dir, \"_definition.md\"), \"utf8\").catch(() => null);\n const recast = castRebuild(definition, args);\n const fromIdea = args.fromIdea || ideaRecast(definition, args);\n const reference = await chooseReference({ ...args, fromIdea }, deps, async () => {\n if (recast) {\n const kept = await checkedByHand(recast.adId, recast.platform, deps);\n if (\"code\" in kept) fail(kept);\n return kept;\n }\n return await pickReference(\n root,\n referenceSearchesFor(idea, temperature, where).map(buildSearchBody),\n deps,\n fresh ? (c, signal) => onReference(c, AbortSignal.any([signal, budget])) : undefined,\n budget,\n );\n });\n if (\"discarded\" in reference && reference.discarded) {\n await reference.discarded.catch(() => undefined);\n await rm(dir, { recursive: true, force: true });\n }\n if (\"code\" in reference) return await fromIdeaWhenNoneFits(reference, idea, slug, viewerFlags);\n const prepared = \"prepared\" in reference ? await reference.prepared?.catch(() => null) : null;\n if (prepared?.ok !== true && budget.aborted && !args.reference) {\n await rm(dir, { recursive: true, force: true });\n fail(slowReference());\n }\n const scaffold = prepared?.ok === true ? prepared : await onReference(reference);\n // An Avatar the scaffold refused is the agent's to fix, never a reason to leave the proven ad.\n if (scaffold.ok !== true && (scaffold.error as { code?: unknown } | undefined)?.code === \"avatar\") {\n fail(scaffoldFailure(scaffold));\n }\n const unbuilt = unbuiltReference(scaffold, { adId: reference.adId, byHand: Boolean(args.reference || recast) });\n if (!unbuilt) return await withKeptConcept(dir, slug, scaffold, reference);\n // What the failed build left of a new creative goes, so the idea's build starts clean.\n if (fresh) await rm(dir, { recursive: true, force: true });\n return { scaffold: await scaffoldFromIdea(idea, slug, viewerFlags), reference: null, fromIdea: unbuilt };\n}\n\n/** The ad started from the idea when asked or when no proven ad fits; any other reason no reference was kept fails make. */\nasync function fromIdeaWhenNoneFits(\n failure: Failure,\n idea: Idea,\n slug: string,\n viewerFlags: string[],\n): Promise<Scaffolded> {\n if (!startsFromIdea(failure)) fail(failure);\n return { scaffold: await scaffoldFromIdea(idea, slug, viewerFlags), reference: null, fromIdea: failure.message };\n}\n\n/** The reference passed with `--reference`, on its `--platform` (default meta); an unknown platform is refused. Pure. */\nexport function handPickedReference(adId: string, platform: string | undefined): Picked | Failure {\n const resolved = resolveSourcePlatform(platform);\n if (!resolved.ok) {\n return {\n code: \"INVALID_ARGUMENT\",\n message: resolved.message.replace(\"--source-platform\", \"--platform\"),\n fix: \"Pass the platform `baker winning-ads search` names beside the ad.\",\n };\n }\n return { adId, platform: resolved.platform, why: \"chosen by hand\", tried: 0 };\n}\n\n/**\n * Why the ad starts from the idea when the proven ad make picked could not be built on (its picture\n * not described, dev Oct 2026: twice running for one ad), else null: a build that went through, or a\n * reference chosen by hand, whose failure is the agent's to see. Pure.\n */\nexport function unbuiltReference(\n scaffold: Record<string, unknown>,\n reference: { adId: string; byHand: boolean },\n): string | null {\n if (scaffold.ok === true || reference.byHand) return null;\n return `The proven ad ${reference.adId} could not be read to build on.`;\n}\n\n/** The creative built on a reference, its fit's concept seeded, else why it could not be. */\nasync function withKeptConcept(\n dir: string,\n slug: string,\n scaffold: Record<string, unknown>,\n reference: Picked,\n): Promise<Scaffolded> {\n if (scaffold.ok !== true || !reference.fit) return { scaffold, reference };\n const unseeded = await seedConcept(dir, slug, conceptFromFit(reference.fit, reference.adId));\n return { scaffold, reference, ...(unseeded ? { conceptUnseeded: unseeded } : {}) };\n}\n\n/**\n * Seed the kept reference's concept into a creative built before its fit answered, and compile the\n * canvas from it: the render then sees the reference at the level that won (`concept.carry`).\n * Dev, Oct 2026: every build started on the best-ranked reference had no concept. Why it could not\n * be seeded, else null.\n */\nexport async function seedConcept(dir: string, slug: string, seeded: Record<string, unknown>): Promise<string | null> {\n const promptPath = path.join(dir, \"prompt.json\");\n const canvasPath = path.join(dir, `${slug}.canvas.json`);\n let prompt: string;\n try {\n prompt = withFitConcept(await readFile(promptPath, \"utf8\"), seeded);\n await writeFile(promptPath, prompt, \"utf8\");\n } catch (e) {\n return `prompt.json could not take the proven ad's concept (${e instanceof Error ? e.message : String(e)})`;\n }\n try {\n const spec: unknown = JSON.parse(prompt);\n // What the ad keeps of the proven ad decides its shape: a designed one is laid out again for each size.\n const { canvas, rerouted } = reroutedOnSpec(JSON.parse(await readFile(canvasPath, \"utf8\")), spec);\n // A picture of the one-picture shape is briefed apart from the rest (`projectFormatBriefs`).\n const briefed =\n projectStaticBriefs(canvas, spec) + projectAdaptBriefs(canvas, spec) + projectFormatBriefs(canvas, spec);\n if (rerouted || briefed > 0) {\n await writeFile(canvasPath, `${JSON.stringify(canvas, null, 2)}\\n`, \"utf8\");\n }\n } catch {\n // prompt.json holds the concept: the run compiles the canvas from it.\n }\n return null;\n}\n\n/** The static started from the idea's own spec: no reference picture, nothing described or billed. */\nasync function scaffoldFromIdea(idea: Idea, slug: string, viewerFlags: string[]): Promise<Record<string, unknown>> {\n const dir = await mkdtemp(path.join(tmpdir(), \"idea-spec-\"));\n const specPath = path.join(dir, \"prompt.json\");\n await writeFile(specPath, JSON.stringify(ideaSpec(idea, idea.who.replace(/[-_]/g, \" \")), null, 2), \"utf8\");\n try {\n return await baker([\n \"canvas\",\n \"scaffold-static-ad\",\n \"--spec\",\n specPath,\n \"--slug\",\n slug,\n \"--title\",\n idea.message.slice(0, 120),\n ...viewerFlags,\n ]);\n } finally {\n await rm(dir, { recursive: true, force: true });\n }\n}\n\n/** The address of the proven ad a canvas keeps as its `original` node; null on a canvas built from the idea. Pure. */\nexport function referencePictureUrl(canvas: unknown): string | null {\n const nodes = (canvas as { nodes?: unknown } | null)?.nodes;\n if (!Array.isArray(nodes)) return null;\n const original = nodes.find(\n (n): n is { id: string; params?: { url?: unknown } } => (n as { id?: unknown })?.id === \"original\",\n );\n const url = original?.params?.url;\n return typeof url === \"string\" && /^https?:\\/\\//.test(url) ? url : null;\n}\n\n/**\n * Save the proven ad's picture under canvas/references/ (never committed), so the agent looks at\n * the ad itself before it says why it won. Its workspace-relative path, or null when it could not\n * be fetched: the outline then says where to find it.\n */\nasync function saveReferencePicture(root: string, canvasPath: string, adId: string): Promise<string | null> {\n const url = await readFile(canvasPath, \"utf8\").then(\n (text) => referencePictureUrl(JSON.parse(text)),\n () => null,\n );\n return url ? await savePicture(root, url, adId) : null;\n}\n\n/** Save one proven ad's picture under canvas/references/; its workspace-relative path, or null. */\nasync function savePicture(root: string, url: string, adId: string): Promise<string | null> {\n try {\n const response = await fetch(url, { signal: AbortSignal.timeout(20_000) });\n if (!response.ok) return null;\n const ext = path.extname(new URL(url).pathname).toLowerCase() || \".jpg\";\n const relative = path.join(\"canvas\", \"references\", `${adId}${ext}`);\n await mkdir(path.join(root, \"canvas\", \"references\"), { recursive: true });\n await writeFile(path.join(root, relative), Buffer.from(await response.arrayBuffer()));\n return relative;\n } catch {\n return null;\n }\n}\n\n/** The kept reference with its picture, and every ad of its board with theirs, saved for the agent to open. */\nasync function withPictures(root: string, canvasPath: string, reference: Picked) {\n const picture = await saveReferencePicture(root, canvasPath, reference.adId);\n const board = reference.board ? await savedBoard(root, reference.board, reference.adId, picture) : undefined;\n return { ...reference, ...(picture ? { picture } : {}), ...(board ? { board } : {}) };\n}\n\n/** The board with each picture saved (the kept ad's already is), for the agent to open. */\nasync function savedBoard(root: string, board: readonly BoardAd[], keptId: string, keptPicture: string | null) {\n return await Promise.all(\n board.map(async ({ adId, advertiser, mediaUrl }) => {\n const picture = adId === keptId ? keptPicture : mediaUrl ? await savePicture(root, mediaUrl, adId) : null;\n return { adId, ...(advertiser ? { advertiser } : {}), ...(picture ? { picture } : {}) };\n }),\n );\n}\n\n/** Record the idea on the creative, outline the thinking it is made from, and set its message as the ad's one message; mark the idea built. */\nasync function recordIdea(\n root: string,\n slug: string,\n idea: Idea,\n evidence: EvidenceLevel | \"explore\",\n productRecord: string,\n reference: Picked | null,\n): Promise<{ dir: string; unsourcedCopy: string[] }> {\n const dir = path.join(root, \"src\", \"creatives\", slug);\n const definitionPath = path.join(dir, \"_definition.md\");\n const definition = await readFile(definitionPath, \"utf8\").catch(() => null);\n if (definition !== null) {\n const recorded = setDefinitionFields(definition, { ...definitionFieldsOf(idea, evidence) });\n const thinkingReference = reference\n ? await withPictures(root, path.join(dir, `${slug}.canvas.json`), reference)\n : null;\n const inventory = await castInventory(root, idea.message, await companyName(root));\n // The company's rules on who appears, what shows and its logo, as they stand now: the cast is decided under them.\n const castRules = (\n await readCreativeContext(root, { kind: idea.format?.startsWith(\"video_\") ? \"video\" : \"static\" })\n ).rules\n .filter((r) => r.applies === \"cast\" || r.applies === \"picture\" || r.applies === \"logo\")\n .map((r) => ({ id: r.id, strength: r.strength, text: r.text }));\n const audience = memeRegister(await readCompanyReading(root).catch(() => null));\n await writeFile(\n definitionPath,\n withThinking(\n recorded,\n thinkingOutline({\n idea,\n reference: thinkingReference,\n inventory,\n rules: castRules,\n ...(audience ? { audience } : {}),\n }),\n ),\n \"utf8\",\n );\n }\n const promptPath = path.join(dir, \"prompt.json\");\n const prompt = isVideoIdea(idea) ? null : await readFile(promptPath, \"utf8\").catch(() => null);\n // A spec that does not parse is the scaffold's to report; the message is set by hand then.\n if (prompt !== null) {\n const personas = await readPersonas(root).catch(() => []);\n const written = (() => {\n try {\n return setSpecViewer(setSpecMessage(prompt, idea.message), idea, personas);\n } catch {\n return null;\n }\n })();\n if (written !== null) await writeFile(promptPath, written, \"utf8\").catch(() => undefined);\n }\n const unsourcedCopy = prompt === null ? [] : await draftedClaims(root, prompt, productRecord);\n await keepDraft(root, slug, promptPath);\n if (idea.status === \"idea\") {\n const ideaPath = path.join(root, IDEAS_DIR, `${idea.id}.md`);\n await writeFile(ideaPath, setDefinitionFields(await readFile(ideaPath, \"utf8\"), { status: \"built\" }), \"utf8\");\n }\n // The dashboard learns the idea now, not at Publish (where most verdicts are given already).\n await baker([\"canvas\", \"sync-definition\", dir]);\n return { dir, unsourcedCopy };\n}\n\n/** Keep the prompt.json make leaves, so a later make knows the ad is still its draft. */\nasync function keepDraft(root: string, slug: string, promptPath: string): Promise<void> {\n const written = await readFile(promptPath, \"utf8\").catch(() => null);\n if (written === null) return;\n await mkdir(path.dirname(draftPath(root, slug)), { recursive: true });\n await writeFile(draftPath(root, slug), written, \"utf8\");\n}\n\n/** The drafted lines claiming what neither the Knowledge, our own customers nor the store's record of the product said. */\nasync function draftedClaims(root: string, prompt: string, productRecord: string): Promise<string[]> {\n const [knowledge, insights] = await Promise.all([readKnowledgeCorpus(root), readInsights(root)]);\n const own = insights.filter(sourcesClaims).map((i) => i.quote);\n try {\n return unsourcedCopyLines(prompt, `${knowledge}\\n${own.join(\"\\n\")}\\n${productRecord}`);\n } catch {\n return [];\n }\n}\n\n/**\n * make's flags. `--platform` once named the reference's library, and agents read it as where the\n * ad runs: beside `--reference` it still means the library, alone it is refused. Pure.\n */\nexport function makeArgsOf(args: Record<string, unknown>): MakeArgs | Failure {\n const opts: MakeArgs = {};\n for (const key of [\"slug\", \"adset\", \"reference\", \"platforms\", \"formats\", \"spec\", \"series\", \"avatar\"] as const) {\n const value = flag(args[key]);\n if (value) opts[key] = value;\n }\n const referencePlatform = flag(args[\"reference-platform\"]) ?? (opts.reference ? flag(args.platform) : undefined);\n if (referencePlatform) opts.referencePlatform = referencePlatform;\n if (flag(args.platform) && !opts.reference) {\n return {\n code: \"INVALID_ARGUMENT\",\n message: `--platform ${flag(args.platform)} is ambiguous: it named the library of --reference.`,\n fix: \"--platforms says where the ad runs (baker creatives make <idea> --platforms linkedin); --reference-platform says which library the reference is in.\",\n };\n }\n if (args[\"from-idea\"] === true) opts.fromIdea = true;\n return opts;\n}\n\n/** Where the ad runs as the scaffold's flags: the platforms, and the sizes only when they were asked for. Pure. */\nexport function deliveryFlags(\n delivery: { platforms: readonly string[] },\n args: Pick<MakeArgs, \"formats\">,\n kind: \"static\" | \"video\" = \"static\",\n): string[] {\n const sizes = args.formats && kind === \"static\" ? [\"--formats\", args.formats] : [];\n return [\"--platforms\", delivery.platforms.join(\",\"), ...sizes];\n}\n\nfunction scaffoldFailure(scaffold: Record<string, unknown>): Failure {\n const error = (scaffold.error ?? {}) as Partial<Failure>;\n return {\n code: error.code ?? \"SCAFFOLD_FAILED\",\n message: error.message ?? \"The creative could not be scaffolded.\",\n ...(error.fix ? { fix: error.fix } : {}),\n };\n}\n\ntype Made = {\n slug: string;\n idea: Idea;\n check: IdeaCheck | undefined;\n reference: Picked | null;\n /** Why the static starts from the idea itself: no proven ad fits (or `--from-idea`). */\n fromIdea?: string;\n conceptUnseeded?: string;\n viewer: { adset: string } | { temperature: ViewerTemperature };\n canvasPath: string;\n scaffoldHints: string[];\n /** Drafted copy lines claiming a figure the company never wrote (often the reference's own promise). */\n unsourcedCopy: string[];\n /** Where the ad runs and the size designed first; absent for a video with no platform said. */\n delivery?: { platforms: readonly string[]; lead: string };\n /** How a static's sizes are made (cut from one picture, or laid out again) and why (`staticShapeFor`). */\n shape?: { shape: string; reason: string };\n};\n\nconst CARRY_WORDS: Record<ConceptCarry, string> = {\n whole_ad: \"the whole ad (its disguise, layout and hook)\",\n layout: \"its layout\",\n hook: \"its hook\",\n angle: \"its angle\",\n};\n\n/** What the agent tells the person about the proven ad a creative is built on. Pure. */\nfunction builtOnHint(reference: Picked): string {\n const tell = \"Tell the person which proven ad this builds on\";\n const ours = \"the words, brand, people and claims stay ours.\";\n if (!reference.fit) {\n // Chosen by hand: no fit read what made it win, so nothing is said of it.\n return `Built on proven ad ${reference.adId}, the one chosen for it; no check read what made it win. The canvas shows that ad as \\`original\\`. ${tell}; ${ours}`;\n }\n const carried = CARRY_WORDS[reference.fit.carry ?? \"whole_ad\"];\n const why = reference.fit.carry_why ? ` (${reference.fit.carry_why})` : \"\";\n const won = reference.why ? ` It won on: ${reference.why}.` : \"\";\n const chosen = reference.preferred\n ? ` Chosen over the other proven ads that fit because ${reference.preferred.replace(/\\.$/, \"\")}.`\n : \"\";\n const passed = (reference.passed ?? [])\n .map(\n (p) =>\n ` Passed over ${p.advertiser ? `${p.advertiser}'s proven ad` : \"proven ad\"} ${p.adId}: ${p.why.replace(/\\.$/, \"\")}.`,\n )\n .join(\"\");\n const whyNot = passed ? \", and in one line why not the ones passed over\" : \"\";\n // Named by hand (`--reference`, or the one a re-cast keeps): checked, never searched for.\n const byHand = reference.tried === 0 ? \", the one chosen for it\" : \"\";\n return `Built on proven ad ${reference.adId}${byHand}: it carries ${carried}${why}.${won}${chosen}${passed} The canvas shows that ad as \\`original\\`. ${tell} and what it takes from it${whyNot}; ${ours}`;\n}\n\n/** The fix for a concept make could not seed: the fit already made, written in by hand. Pure. */\nconst unseededHint = (reference: Picked, slug: string, why: string) =>\n `${why}, so the render does not see proven ad ${reference.adId} yet. \\`baker winning-ads fit ${reference.adId} --platform ${reference.platform} --full\\` prints the check already made (free): write its \\`read\\` into src/creatives/${slug}/prompt.json as \\`concept\\`, with \\`reference_ad_id: \"${reference.adId}\"\\`.`;\n\n/** The step before any word of the ad: answer the definition's thinking `make` outlined. Pure. */\nfunction thinkFirstHint(made: Made): string {\n const basis = made.reference ? \"what the proven ad is and why it won\" : \"why this bet should work\";\n const board =\n (made.reference?.board?.length ?? 0) > 1\n ? \" what to take from which of the proven ads that fit (the hook of one, the proof of another),\"\n : \"\";\n const survives = made.reference ? \" what of it must survive,\" : \"\";\n const read = made.reference\n ? \"first open the proven ads' pictures the outline names and read .claude/skills/creative-canvas-ads/references/reading-a-winner.md, then \"\n : \"\";\n // Only a creative built on a proven ad is re-cast on it; one built from its idea has nothing to keep.\n const recast = made.reference\n ? ` When the cast is an Avatar the canvas was not built with, \\`baker creatives make ${made.idea.id}${made.slug === made.idea.id ? \"\" : ` --slug ${made.slug}`} --avatar <handle>\\` rebuilds it on the same proven ad before you write prompt.json.`\n : \"\";\n return `Think first: ${read}answer every question under \"Thinking\" in src/creatives/${made.slug}/_definition.md before you touch prompt.json (how: .claude/skills/creative-canvas-ads/references/creative-intent.md): ${basis},${board} whether it fits our viewer, our hook, who appears and what of the product shows (decided from what the company has, listed there: its Avatars, real customers, founder, product pictures, logos),${survives} and the plan.${recast} This thinking decides the ad; the run renders nothing while a question is open or the cast is not ours.`;\n}\n\n/** The ad written from the definition's plan, in the files the render reads. Pure. */\nfunction writeTheAdHint(made: Made, quote: string | undefined): string {\n const words = `say the message in the customer's words${quote ? ` (\"${quote.slice(0, 80)}\")` : \"\"}; keep \\`message\\` as it is`;\n if (made.idea.format?.startsWith(\"video_\")) {\n return `Then write the ad from \"The plan\": its scene files and prompt.json carry every decision (the render never reads the definition); ${words}.`;\n }\n const drafted = made.reference\n ? \" The drafted lines are the reference's: keep one only if the Knowledge says it (badges, ratings and guarantees too).\"\n : \"\";\n return `Then write the ad from \"The plan\" in src/creatives/${made.slug}/prompt.json, every decision in its fields (the render never reads the definition); ${words}.${drafted} Read static-image-flow.md first. Inspect existing Avatars before creating an actor. Keep interfaces native and requested overlays separate. Preserve plausible anatomy, device proportions, scale, perspective and support; reflow text rather than distort it. Honour the requested sizes.`;\n}\n\n/** What `make` prints: the creative, the idea it carries, and the two steps left to the agent. Pure. */\nexport function makeEnvelope(made: Made) {\n const quote = made.check?.quote;\n return {\n ok: true as const,\n data: {\n creative: made.slug,\n idea: made.idea.id,\n message: made.idea.message,\n evidence: made.check?.evidence ?? \"explore\",\n ...(quote ? { customer_quote: quote } : {}),\n ...(made.fromIdea ? { built_from: \"idea\" } : {}),\n ...(made.reference\n ? {\n reference: {\n ad_id: made.reference.adId,\n platform: made.reference.platform,\n why_it_wins: made.reference.why,\n ...(made.reference.fit?.carry ? { carry: made.reference.fit.carry } : {}),\n ...(made.reference.preferred ? { chosen_because: made.reference.preferred } : {}),\n },\n }\n : {}),\n viewer: made.viewer,\n ...(made.delivery ? { platforms: made.delivery.platforms, lead: made.delivery.lead } : {}),\n ...(made.shape ? { master_shape: made.shape } : {}),\n canvas_path: made.canvasPath,\n },\n hints: [\n ...(made.reference ? [builtOnHint(made.reference)] : []),\n ...(made.reference && made.conceptUnseeded\n ? [unseededHint(made.reference, made.slug, made.conceptUnseeded)]\n : []),\n ...(made.fromIdea\n ? [\n `${made.fromIdea} So this ad starts from the idea: write the scene and every line of copy in src/creatives/${made.slug}/prompt.json (a placeholder refuses to run). Tell the person this ad is not built on a proven ad, and why, in plain words.`,\n ]\n : []),\n ...(made.unsourcedCopy.length > 0\n ? [\n `Rewrite before running: ${made.unsourcedCopy.map((l) => JSON.stringify(l)).join(\", \")} claim a figure nothing the company wrote holds (the reference's promise, not ours).`,\n ]\n : []),\n thinkFirstHint(made),\n writeTheAdHint(made, quote),\n SPEC_SHAPES_HINT,\n `Then: baker canvas run ${made.canvasPath} (it validates and asks the viewer itself: nothing to run before it).`,\n // The scaffold's own next steps name a separate validate; the run does it (dev, Oct 2026: five validates before one run).\n ...made.scaffoldHints\n .filter((h) => !/canvas (?:validate|viewer-check)/.test(h))\n // make checked the reference and seeded its concept: the scaffold ran before the fit answered.\n .filter((h) => !(made.reference?.fit && h.startsWith(NO_FIT_HINT)))\n .slice(0, 4),\n ],\n };\n}\n\n/** Where the idea's ads run: its `platforms`, else the one platform its own words name. Pure. */\nexport function ideaPlatforms(idea: Idea): string[] | undefined {\n if (idea.platforms && idea.platforms.length > 0) return idea.platforms;\n const named = platformsNamedIn([idea.message, idea.who, idea.why, idea.format].join(\" \"));\n return named.length > 0 ? named : undefined;\n}\n\n/**\n * Where the ad runs: `--platforms`, else the creative's definition (with the sizes it records),\n * else the idea's, else its Meta ad set. A static with none is refused (the fix says where to take it from); a video's sizes do\n * not follow from it, so a video with none is made without.\n */\nasync function makeDelivery(\n root: string,\n idea: Idea,\n args: MakeArgs,\n slug: string,\n): Promise<{ delivery?: ResolvedDelivery; flags: string[] }> {\n const definition = await readFile(path.join(root, \"src\", \"creatives\", slug, \"_definition.md\"), \"utf8\").catch(\n () => null,\n );\n const flags = { platforms: args.platforms, formats: args.formats, \"target-adset\": args.adset };\n const resolved = await scaffoldDelivery(flags, definition, ideaPlatforms(idea));\n const video = isVideoIdea(idea);\n if (resolved.ok)\n return { delivery: resolved.delivery, flags: deliveryFlags(resolved.delivery, args, video ? \"video\" : \"static\") };\n if (video && resolved.error.code === \"platform_required\") return { flags: [] };\n return fail({ code: resolved.error.code.toUpperCase(), message: resolved.error.message, fix: resolved.error.fix });\n}\n\n/** `--series <lead>`: the idea made as another ad of the lead's series, printed or refused. */\nasync function makeInSeries(\n root: string,\n idea: Idea,\n slug: string,\n lead: string,\n evidence: EvidenceLevel | \"explore\",\n): Promise<void> {\n if (isVideoIdea(idea)) {\n fail({\n code: \"SERIES_STATIC_ONLY\",\n message: `\"${idea.id}\" is a video idea: a series repeats one static ad with other words.`,\n fix: `Make it on its own: baker creatives make ${idea.id} --spec <beats file>.`,\n });\n }\n const made = await makeSeriesAd(root, idea, slug, lead, evidence, {\n sync: (dir) => baker([\"canvas\", \"sync-definition\", dir, \"--title\"]),\n });\n if (\"code\" in made) fail(made);\n const leadDefinition = await readFile(path.join(root, \"src\", \"creatives\", lead, \"_definition.md\"), \"utf8\").catch(\n () => \"\",\n );\n const leadPlatforms = parseDefinitionDelivery(leadDefinition)?.platforms;\n writeJson(\n seriesMadeEnvelope(\n { ...made, canvasPath: path.relative(root, made.canvasPath), ...(leadPlatforms ? { leadPlatforms } : {}) },\n idea,\n ),\n );\n}\n\nexport const makeCommand = defineCommand({\n meta: { name: \"make\", description: DESCRIPTION },\n args: ARGS,\n async run({ args }) {\n const root = findWorkspaceRoot(process.cwd()) ?? process.cwd();\n const opts = makeArgsOf(args);\n if (\"code\" in opts) return fail(opts);\n const { idea, check, productRecord } = await loadIdea(root, String(args.idea));\n const slug = opts.slug ?? idea.id;\n const written = await readFile(path.join(root, \"src\", \"creatives\", slug, \"prompt.json\"), \"utf8\").then(\n (text): unknown => {\n try {\n return JSON.parse(text);\n } catch {\n return {};\n }\n },\n (err: NodeJS.ErrnoException) => (err.code === \"ENOENT\" ? null : {}),\n );\n const draft = await readFile(draftPath(root, slug), \"utf8\").catch(() => undefined);\n const refused = alreadyWritten(written, slug, draft);\n if (refused) fail(refused);\n if (opts.series) {\n await makeInSeries(root, idea, slug, opts.series, check?.evidence ?? \"explore\");\n return;\n }\n // Where the ad runs decides its sizes: settled before any reference is searched, never defaulted.\n const { delivery, flags } = await makeDelivery(root, idea, opts, slug);\n const temperature = await viewerTemperature(root, opts.adset, idea.awareness);\n const { scaffold, reference, fromIdea, conceptUnseeded } = await scaffoldIdea(\n root,\n idea,\n opts,\n slug,\n temperature,\n flags,\n );\n if (scaffold.ok !== true) fail(scaffoldFailure(scaffold));\n const { dir, unsourcedCopy } = await recordIdea(\n root,\n slug,\n idea,\n check?.evidence ?? \"explore\",\n productRecord,\n reference,\n );\n const canvasPath = String(scaffold.canvas_path ?? path.join(dir, `${slug}.canvas.json`));\n const shape = recordedShape(await readFile(canvasPath, \"utf8\").then(JSON.parse, () => null));\n writeJson(\n makeEnvelope({\n slug,\n idea,\n check,\n reference,\n ...(fromIdea ? { fromIdea } : {}),\n ...(conceptUnseeded ? { conceptUnseeded } : {}),\n viewer: opts.adset ? { adset: opts.adset } : { temperature },\n canvasPath: path.relative(root, canvasPath),\n scaffoldHints: Array.isArray(scaffold.hints) ? (scaffold.hints as string[]) : [],\n unsourcedCopy,\n ...(delivery ? { delivery } : {}),\n ...(shape ? { shape } : {}),\n }),\n );\n },\n});\n","/**\n * What a proven ad for one idea is searched with: what this ad sells, its industry and the people\n * it is for, in the plain English the ads library files ads under, with who buys it and what the\n * brand never does. One small model reads the company's own notes and the idea once per idea.\n * Prod, Oct 2026: COMPANY.md's first line, the query until then, gave the library \"https\", a\n * brand name or a table header for 6 of 14 companies, and a company selling several lines (a\n * trade school's electricians, plumbers and data-centre technicians) searched one for all.\n */\nimport { createHash } from \"node:crypto\";\nimport { mkdir, readFile, writeFile } from \"node:fs/promises\";\nimport path from \"node:path\";\nimport { z } from \"zod\";\nimport { memeRegister, readCompanyReading } from \"../../engine/creative-context/company.ts\";\nimport { askAboutText, type ReviewUsage } from \"../../engine/nodes/local/lib/render-review.ts\";\nimport { holdUnbilledSpend } from \"../canvas/unbilled-spend.ts\";\n\nexport type ReferenceBuyer = \"consumer\" | \"small_business\" | \"enterprise\";\nexport type ReferenceHumour = \"fits\" | \"risky\" | \"off_brand\";\nexport type ReferenceMemes = \"fits\" | \"off_brand\";\n\nexport type ReferenceBrief = {\n /** What this ad sells, 2-6 words: \"trade school training program\". */\n category: string;\n /** The broader industry: \"vocational education\". */\n industry?: string;\n /** Who the ad is for and their problem: \"unemployed workers seeking stable technical trades\". */\n audience?: string;\n buyer?: ReferenceBuyer;\n /** ISO country the ad runs in; null when it runs in several. */\n country?: string | null;\n humour?: ReferenceHumour;\n /** Whether the brand's voice runs memes and reaction faces, and the voice line that says so. */\n memes?: ReferenceMemes;\n memesWhy?: string;\n /** What the brand's rules forbid in an ad: \"urgency\", \"price figures\". */\n avoid: string[];\n /** The company's own brand and product names: its own ads are never a reference for a new one. */\n brands: string[];\n /**\n * Searches that widen from this ad, closest first, for when ads of exactly this product are\n * few: an adjacent product the same buyer weighs, the same buyer buying something else, the same\n * kind of decision. Prod set, Oct 2026: a padel-court builder's buyer is a club investor, and a\n * real-estate developer's render with its key facts was the best reference for it.\n */\n wider: string[];\n /**\n * The kind of picture the ad shows, in the words the library describes an ad's visual by, when\n * the idea says what it shows: the idea's own scene is too exact for the library's judge.\n */\n shows?: string[];\n};\n\nconst text = z\n .string()\n .transform((s) => s.trim())\n .pipe(z.string().min(1))\n .optional()\n .catch(undefined);\n\nconst shortList = (max: number) =>\n z\n .array(z.string())\n .transform((list) =>\n list\n .map((s) => s.trim())\n .filter(Boolean)\n .slice(0, max),\n )\n .catch([]);\n\nconst BriefSchema = z.object({\n category: text,\n industry: text,\n audience: text,\n buyer: z.enum([\"consumer\", \"small_business\", \"enterprise\"]).optional().catch(undefined),\n country: z\n .string()\n .transform((s) => s.trim().toUpperCase())\n .pipe(z.union([z.literal(\"\").transform(() => null), z.string().regex(/^[A-Z]{2}$/)]))\n .optional()\n .catch(undefined),\n humour: z.enum([\"fits\", \"risky\", \"off_brand\"]).optional().catch(undefined),\n avoid: shortList(5),\n brands: shortList(4),\n wider: shortList(4),\n shows: shortList(2),\n});\n\n/** The model's answer as a brief, or null when it does not say what the ad sells. Pure. */\nexport function parseReferenceBrief(reply: unknown): ReferenceBrief | null {\n const parsed = BriefSchema.safeParse(reply);\n if (!parsed.success || !parsed.data.category) return null;\n const { category, avoid, brands, wider, shows, ...rest } = parsed.data;\n const known = Object.fromEntries(Object.entries(rest).filter(([, v]) => v !== undefined));\n return { category, ...known, avoid, brands, wider, ...(shows.length > 0 ? { shows } : {}) };\n}\n\n/** Read once per idea, about a second (measured on 14 companies, Oct 2026). */\nexport const REFERENCE_BRIEF_MODEL = \"google/gemini-3.5-flash-lite\";\nconst REFERENCE_BRIEF_REQUEST = {\n provider: { order: [\"google-vertex\"], allow_fallbacks: false },\n seed: 0,\n temperature: 0,\n response_format: { type: \"json_object\" },\n};\nconst REFERENCE_BRIEF_TIMEOUT_MS = 20_000;\n/** The company's notes the brief reads: past this, the rest is detail the search does not need. */\nconst MAX_COMPANY_CHARS = 12_000;\n\n/** The ad a brief is read for: what it says and who it is for, in the persona's words. */\nexport type BriefedAd = { message: string; who: string; shows?: string };\n\n/** The question the model answers about this one ad; the company's own facts come from its reading. Pure. */\nexport function referenceBriefPrompt(companyDoc: string, ad: BriefedAd): string {\n return `You prepare a search of a library of proven ads (Meta, LinkedIn, TikTok, Google) for the ad below. The library's search reads short English phrases the way it files ads: by what the ad sells, its industry and who it is for.\n\nThe company (its own notes):\n\"\"\"\n${companyDoc.slice(0, MAX_COMPANY_CHARS)}\n\"\"\"\n\nThe ad we are making:\n- Says: ${ad.message}\n- For: ${ad.who}${ad.shows ? `\\n- Shows first: ${ad.shows}` : \"\"}\n\nAnswer only JSON:\n{\n \"category\": \"what THIS ad sells, 2-6 plain English words a library would file it under, no brand names (e.g. 'electrician training course', 'pet health insurance', 'ecommerce customer service AI')\",\n \"industry\": \"the broader industry, 1-3 English words (e.g. 'vocational education', 'insurance', 'customer service software')\",\n \"audience\": \"who the ad is for and the problem they have, 4-9 plain English words (e.g. 'unemployed adults looking for a stable trade')\",\n \"wider\": [\"4 library searches of 2-6 English words that widen from this ad, closest first, for when ads of exactly this product are few. 1: an adjacent product the same buyer weighs (e.g. 'tennis court construction'). 2: the same buyer buying something else (e.g. 'gym and sports club owners'). 3 and 4: the same kind of decision with NO word of this product's category, as other industries sell it (e.g. for a padel-court builder: 'turnkey franchise investment', 'commercial real estate investment'; for an acne serum: 'skincare before and after'). Never brand names\"]${\n ad.shows\n ? `,\n \"shows\": [\"2 library searches of 6-14 English words for the KIND of picture 'Shows first' describes, the way the library describes an ad's visual: the device and what it contrasts or proves, with no word of this product, no numbers and no brand (e.g. for 'a calendar strip, 9 days green against 31 grey': 'time comparison graphic: the usual long wait against a much shorter one', 'two bars side by side, ours far shorter than the competition'; for 'a phone with missed calls next to a quote': 'phone screen full of missed calls and notifications, the stress of chasing')\"]`\n : \"\"\n }\n}`;\n}\n\n/** Asks the model a prompt and returns its JSON answer, or null when nobody answered. */\nexport type AskBrief = (prompt: string) => Promise<unknown>;\n\n/** The live model, its spend held for the workspace's next bill like every other check's. */\nconst askBriefModel =\n (root: string): AskBrief =>\n async (prompt) => {\n const spent: ReviewUsage[] = [];\n const answer = await askAboutText(REFERENCE_BRIEF_MODEL, prompt, (u) => spent.push(u), {\n timeoutMs: REFERENCE_BRIEF_TIMEOUT_MS,\n request: REFERENCE_BRIEF_REQUEST,\n }).catch(() => null);\n await holdUnbilledSpend(path.join(root, \"canvas\", \".cache\"), spent).catch(() => undefined);\n return answer;\n };\n\nconst briefCachePath = (root: string, key: string) =>\n path.join(root, \"canvas\", \".cache\", \"reference-brief\", `${key}.json`);\n\n/**\n * The brief for one ad of this workspace's company: what this ad sells and to whom, read from the\n * cache when the company's notes and the ad are unchanged, else asked once, with the company's own\n * facts (its buyer, country, humour and brands) from its reading (`readCompanyReading`); null when\n * the model does not answer. What the brand never does is the caller's: its rules.\n */\nexport async function referenceBriefFor(\n root: string,\n ad: BriefedAd,\n ask: AskBrief = askBriefModel(root),\n): Promise<ReferenceBrief | null> {\n const companyDoc = await readFile(path.join(root, \"COMPANY.md\"), \"utf8\").catch(() => \"\");\n const [company, own] = await Promise.all([readCompanyReading(root, ask), adBrief(root, companyDoc, ad, ask)]);\n if (!own) return null;\n const {\n sells: _sells,\n category: _category,\n industry,\n memes: _memes,\n memes_why: _why,\n ...facts\n } = company ?? { brands: [] };\n const register = memeRegister(company);\n return {\n ...facts,\n ...(register ? { memes: register.memes, ...(register.why ? { memesWhy: register.why } : {}) } : {}),\n ...own,\n ...((own.industry ?? industry) ? { industry: own.industry ?? industry } : {}),\n brands: own.brands.length > 0 ? own.brands : facts.brands,\n };\n}\n\n/** This ad's own part of the brief, kept by the company's notes and the ad. */\nasync function adBrief(root: string, companyDoc: string, ad: BriefedAd, ask: AskBrief): Promise<ReferenceBrief | null> {\n const prompt = referenceBriefPrompt(companyDoc, ad);\n const file = briefCachePath(root, createHash(\"sha256\").update(prompt).digest(\"hex\").slice(0, 16));\n const cached = await readFile(file, \"utf8\")\n .then((raw) => parseReferenceBrief(JSON.parse(raw)))\n .catch(() => null);\n if (cached) return cached;\n const brief = parseReferenceBrief(await ask(prompt));\n if (!brief) return null;\n await mkdir(path.dirname(file), { recursive: true });\n await writeFile(file, `${JSON.stringify(brief, null, 2)}\\n`, \"utf8\");\n return brief;\n}\n","/**\n * The order the found references are checked in: each read against the ad being made by the\n * decision model (docs/decision-model.md), three yes/no questions an ad, all in one request of\n * about half a second. The search ranks an ad by how well it matches a few words; this asks\n * whether it was made for our kind of buyer, whether our viewer would see themselves in it, and\n * whether our brand could run something like it.\n * Prod set, Oct 2026, 14 companies judged blind (0-10, by a model the pick never used): the\n * reference kept scored 5.0 in the search's order and 6.3 read against the bet first.\n */\nimport { askJevQuestions, type JevAnswer, type JevQuestion } from \"../../engine/nodes/local/lib/jev.ts\";\nimport type { ReviewUsage } from \"../../engine/nodes/local/lib/render-review.ts\";\nimport type { ReferenceBuyer, ReferenceHumour, ReferenceMemes } from \"./reference-brief.ts\";\n\n/** The ad being made, as the ranking reads it. */\nexport type RankedFor = {\n category: string;\n industry?: string;\n buyer?: ReferenceBuyer;\n humour?: ReferenceHumour;\n memes?: ReferenceMemes;\n memesWhy?: string;\n avoid?: readonly string[];\n message: string;\n who: string;\n /** What our ad shows first (the idea's `shows`); the reference is the ad that shows it best. */\n shows?: string;\n};\n\ntype RankCandidate = {\n ad_id?: string | null;\n advertiser?: string | null;\n format?: string | null;\n dna?: {\n industry?: string | null;\n business_model?: string | null;\n target_persona?: string | null;\n container?: string | null;\n visual?: string | null;\n creative_concept?: string | null;\n mechanism?: string | null;\n } | null;\n};\n\nexport type AskDecisions = (questions: readonly JevQuestion[]) => Promise<JevAnswer[] | null>;\n\nconst BUYERS: Record<ReferenceBuyer, string> = {\n consumer: \"people buying for themselves\",\n small_business: \"small businesses buying for work\",\n enterprise: \"large companies buying for work\",\n};\n\n/** Said to every model that ranks or picks a reference when our brand's voice does not run memes. Pure. */\nexport function memesLine(bet: Pick<RankedFor, \"memes\" | \"memesWhy\">): string {\n return bet.memes === \"off_brand\"\n ? ` Our brand's voice does not run memes${bet.memesWhy ? ` (${bet.memesWhy})` : \"\"}: rank meme and reaction-face ads last.`\n : \"\";\n}\n\n/** The ad being made, in the words every question reads it by. Pure. */\nfunction oursText(bet: RankedFor): string {\n const sells = `${bet.category}${bet.industry ? ` (${bet.industry})` : \"\"}`;\n const buyer = bet.buyer ? `, to ${BUYERS[bet.buyer]}` : \"\";\n const humour = bet.humour === \"off_brand\" ? \" Our brand does not joke in ads.\" : \"\";\n const avoid = bet.avoid?.length ? ` Our brand never uses: ${bet.avoid.join(\", \")}.` : \"\";\n const shows = bet.shows ? ` It shows: ${bet.shows}.` : \"\";\n return `We sell: ${sells}${buyer}. Our ad says: \"${bet.message}\". It is for: ${bet.who}.${shows}${humour}${memesLine(bet)}${avoid}`;\n}\n\n/** One reference as the questions read it: who made it, for whom, what it looks like and why it works. Pure. */\nfunction cardText(c: RankCandidate): string {\n const d = c.dna ?? {};\n const line = (label: string, value: string | null | undefined) => (value ? `${label}: ${value}` : \"\");\n return [\n line(\"Advertiser\", c.advertiser),\n line(\"Industry\", [d.industry, d.business_model].filter(Boolean).join(\", \")),\n line(\"Made for\", d.target_persona),\n line(\"Looks like\", [d.container ?? c.format, d.visual].filter(Boolean).join(\": \")),\n line(\"Concept\", d.creative_concept),\n line(\"Why it works\", d.mechanism),\n ]\n .filter(Boolean)\n .join(\"\\n\")\n .slice(0, 1400);\n}\n\n/** Twenty ads a request: what the eval measured answering inside the decision model's timeout. */\nconst QUESTIONS_PER_REQUEST = 60;\n\nconst QUESTIONS = [\n \"Was `ad` made for the same kind of buyer as `ours`: a person buying for themselves, or a business buying for work, of a similar size?\",\n \"Would the viewer `ours` is for feel that `ad` speaks to someone like them, about a problem like theirs?\",\n \"Could the brand of `ours` run an ad made like `ad` (its look, its tone, its kind of hook) without breaking its own rules or looking out of character?\",\n];\n\n/** Asked when our ad says what it shows: a reference that shows something else is no reference for it. */\nconst SHOWS_QUESTION =\n \"Does `ad` show what `ours` shows (its `It shows:`), or the same kind of picture doing the same job, so that ours could be made in its image?\";\n\n/** What replaces the buyer and viewer questions when ours says what it shows: the picture is what is copied. */\nconst REMADE_QUESTION =\n \"Remade with the product, people and words of `ours`, would a picture made like `ad` speak to the viewer `ours` is for, about a problem like theirs?\";\n\n/**\n * The questions an ad is read by. When ours says what it shows, whether the ad shows it and whether\n * that picture, remade as ours, speaks to our viewer, then whether our brand could run it; the buyer\n * it was made for no longer counts, since its words and people are never ours. Pure.\n */\nfunction questionsFor(bet: RankedFor): readonly string[] {\n return bet.shows ? [SHOWS_QUESTION, REMADE_QUESTION, QUESTIONS[2] ?? \"\"] : QUESTIONS;\n}\n\n/**\n * The candidates, those the decision model reads as made for our buyer and viewer and runnable by\n * our brand first (the product of its three answers; ties keep the search's order), or in the\n * search's order when it does not answer.\n */\nexport async function rankForBet<T extends RankCandidate>(\n candidates: readonly T[],\n bet: RankedFor,\n askOverride?: AskDecisions,\n onSpend?: (usage: ReviewUsage) => void,\n): Promise<T[]> {\n const ask: AskDecisions = askOverride ?? ((questions) => askJevQuestions(questions, onSpend));\n if (candidates.length < 2) return [...candidates];\n const ours = oursText(bet);\n const asks = questionsFor(bet);\n const questions: JevQuestion[] = candidates.flatMap((c) =>\n asks.map((question) => ({ type: \"noul\" as const, instructions: { ours, ad: cardText(c), question } })),\n );\n const parts: JevQuestion[][] = [];\n for (let start = 0; start < questions.length; start += QUESTIONS_PER_REQUEST) {\n parts.push(questions.slice(start, start + QUESTIONS_PER_REQUEST));\n }\n const replies = await Promise.all(parts.map((part) => ask(part).catch(() => null)));\n if (replies.some((r, i) => !r || r.length !== parts[i]?.length)) return [...candidates];\n const answers = replies.flatMap((r) => r ?? []);\n const scored = candidates.map((c, i) => ({\n c,\n i,\n score: asks.reduce((product, _, k) => {\n const answer = answers[i * asks.length + k];\n return product * (answer && \"noul\" in answer ? answer.noul : 0.5);\n }, 1),\n }));\n return scored.sort((a, b) => b.score - a.score || a.i - b.i).map((s) => s.c);\n}\n","/**\n * Which of the proven ads that fit the ad is built on: all of them looked at side by side, for\n * the viewer the ad is for, in one vision call. The fit checks one ad at a time and passes most\n * of what it is shown, so keeping the first that passed kept a good ad, rarely the best one.\n * Prod set, Oct 2026, 14 companies judged blind (0-10, by a model the pick never used): the\n * reference kept scored 6.3 kept as the first that fit and 7.4 picked side by side.\n */\nimport { askAboutImages, type ReviewUsage } from \"../../engine/nodes/local/lib/render-review.ts\";\nimport { decisionOf, isVital } from \"../../engine/scaffold/static-ad-spec.ts\";\nimport type { FitAnswer } from \"../winning-ads/fit.ts\";\nimport { memesLine, type RankedFor } from \"./reference-rank.ts\";\n\n/** A stronger reader than the fit's: it compares, once per ad made. */\nexport const REFERENCE_PICK_MODEL = \"~google/gemini-pro-latest\";\nconst REFERENCE_PICK_TIMEOUT_MS = 60_000;\n\n/** One reference that fit, with its picture (a base64 JPEG) and the fit's read of it. */\nexport type PickOption = {\n adId: string;\n advertiser?: string;\n picture: string;\n fit: Pick<FitAnswer, \"why_it_wins\" | \"our_viewer\"> & Partial<Pick<FitAnswer, \"load_bearing\">>;\n};\n\n/** What stops the scroll in a reference and its proof, each with what of ours does its job, as the fit read them. Pure. */\nfunction vitalRead(fit: PickOption[\"fit\"]): string {\n const vital = (fit.load_bearing ?? []).filter(isVital).map((l) => {\n const ours = decisionOf(l) === \"keep\" ? \"kept as it is\" : l.ours?.trim() ? `ours: ${l.ours.trim()}` : \"\";\n return `${l.job === \"stop\" ? \"stops the scroll with\" : \"proof:\"} ${l.element}${ours ? ` (${ours})` : \"\"}`;\n });\n return vital.length > 0 ? ` It ${vital.join(\"; \")}.` : \"\";\n}\n\nexport type AskPick = (pictures: string[], prompt: string) => Promise<unknown>;\n\n/** The parts of an ad a media buyer takes from one proven ad or another. */\nexport const TAKE_ELEMENTS = [\"hook\", \"visual\", \"who_appears\", \"proof\", \"layout\", \"call_to_action\"] as const;\nexport type TakeElement = (typeof TAKE_ELEMENTS)[number];\n\n/** One element our ad takes from one proven ad, and why it applies to our viewer. */\nexport type Take = { element: TakeElement; adId: string; what: string; applies: string };\n/** Something of a proven ad our ad must not copy, and why. */\nexport type Avoid = { adId: string; what: string; why: string };\n\n/** The side-by-side pick: the options best first, why the first won, what to take from which and what not to copy. */\nexport type ReferencePick = { order: number[]; why?: string; takes?: Take[]; avoid?: Avoid[] };\n\n/** The question, the ad being made and what the fit read of each picture, numbered as shown. Pure. */\nexport function referencePickPrompt(options: readonly PickOption[], bet: RankedFor): string {\n const reads = options\n .map((o, i) => {\n const wins = Object.values(o.fit.why_it_wins ?? {})\n .filter(Boolean)\n .join(\"; \");\n const viewer = o.fit.our_viewer ? ` Our viewer: ${o.fit.our_viewer.stops}, ${o.fit.our_viewer.why}` : \"\";\n return `${i + 1}. ${o.advertiser ?? \"an advertiser\"}: wins on ${wins || \"(not read)\"}.${vitalRead(o.fit)}${viewer}`;\n })\n .join(\"\\n\");\n // Dev, Oct 2026: read past its words, \"no stock photography\" ranked a meme's reaction faces out.\n const avoid = bet.avoid?.length\n ? ` The brand never uses: ${bet.avoid.join(\", \").replace(/\\.$/, \"\")}. Its rules forbid only what they name: \"no stock photography\" never rules out a meme's reaction face, our own people or our Avatars.`\n : \"\";\n const humour = `${bet.humour === \"off_brand\" ? \" The brand does not joke in ads.\" : \"\"}${memesLine(bet)}`;\n return `Pick the proven ad our next ad should be built on. Images 1..${options.length} are proven ads of other advertisers, each already checked to be adaptable.\n\nWe sell: ${bet.category}${bet.industry ? ` (${bet.industry})` : \"\"}. Our ad says: \"${bet.message}\". It is for: ${bet.who}.${bet.shows ? ` It shows first: ${bet.shows}; the ad built on wins only if it can show that as strongly as its own picture shows its offer.` : \"\"}${humour}${avoid}\n\nWhat the check read of each:\n${reads}\n\nRank them by how likely a version of each, made for us, stops this exact viewer and makes them act: the viewer must see themselves and their problem in it, its winning move must carry our offer as strongly as theirs, and our brand must be able to run it.\n\nThen, as a media buyer does, say what our ad takes. Our ad may combine several: the hook of one, the visual of another, the proof of a third. For each element worth taking (${TAKE_ELEMENTS.join(\", \")}), the image whose version of it would work best for us, exactly what to take, and why it applies to this viewer. Leave out an element no image does well for us. Then what our ad must not copy from them: a device that misleads or that the platform restricts (a fake newspaper or news page, a fake app notification), dated urgency, another brand's marks, words that hide what is sold; never what stops the scroll or the proof, which ours keeps as named above. A rule forbids only what it names: \"no stock photography\" never rules out a meme's reaction face, our own people or our Avatars; when a rule of ours is why, quote the rule word for word.\n\nAnswer only JSON: {\"ranking\": [image numbers, best first], \"why\": \"one sentence on why the first beats the others\", \"takes\": [{\"element\": \"hook\", \"from\": image number, \"what\": \"...\", \"applies\": \"...\"}], \"avoid\": [{\"from\": image number, \"what\": \"...\", \"why\": \"...\"}]}`;\n}\n\n/** The options' indices best first (each once, any it left out after, in order), or null. Pure. */\nexport function readPickRanking(reply: unknown, count: number): number[] | null {\n const ranking = (reply as { ranking?: unknown } | null)?.ranking;\n if (!Array.isArray(ranking)) return null;\n const order: number[] = [];\n for (const n of ranking) {\n const index = Number(n) - 1;\n if (Number.isInteger(index) && index >= 0 && index < count && !order.includes(index)) order.push(index);\n }\n if (order.length === 0) return null;\n for (let i = 0; i < count; i++) if (!order.includes(i)) order.push(i);\n return order;\n}\n\nconst text = (value: unknown): string => (typeof value === \"string\" ? value.trim() : \"\");\n\n/** The image a reply names (1-based), as its option's ad id; null when it names none shown. Pure. */\nfunction adOf(from: unknown, options: readonly PickOption[]): string | null {\n return options[Number(from) - 1]?.adId ?? null;\n}\n\n/** What the reply says to take from which option, only known elements of shown options, each element once. Pure. */\nexport function readTakes(reply: unknown, options: readonly PickOption[]): Take[] {\n const takes = (reply as { takes?: unknown } | null)?.takes;\n if (!Array.isArray(takes)) return [];\n const read: Take[] = [];\n for (const t of takes as Record<string, unknown>[]) {\n const element = TAKE_ELEMENTS.find((e) => e === t?.element);\n const adId = adOf(t?.from, options);\n if (!element || !adId || !text(t.what) || read.some((r) => r.element === element)) continue;\n read.push({ element, adId, what: text(t.what), applies: text(t.applies) });\n }\n return read;\n}\n\n/** What the reply says not to copy, only from shown options. Pure. */\nexport function readAvoid(reply: unknown, options: readonly PickOption[]): Avoid[] {\n const avoid = (reply as { avoid?: unknown } | null)?.avoid;\n if (!Array.isArray(avoid)) return [];\n return (avoid as Record<string, unknown>[]).flatMap((a) => {\n const adId = adOf(a?.from, options);\n return adId && text(a.what) ? [{ adId, what: text(a.what), why: text(a.why) }] : [];\n });\n}\n\n/** The live model, its spend handed to `onSpend`. */\nexport const askPickModel =\n (onSpend?: (usage: ReviewUsage) => void): AskPick =>\n (pictures, prompt) =>\n askAboutImages(REFERENCE_PICK_MODEL, pictures, prompt, onSpend, REFERENCE_PICK_TIMEOUT_MS).catch(() => null);\n\n/** The options in the order the side-by-side look prefers, why the first won and what to take from which; null when nobody answered. */\nexport async function pickAmong(\n options: readonly PickOption[],\n bet: RankedFor,\n ask: AskPick = askPickModel(),\n): Promise<ReferencePick | null> {\n const reply = await ask(\n options.map((o) => o.picture),\n referencePickPrompt(options, bet),\n );\n const order = readPickRanking(reply, options.length);\n if (!order) return null;\n const why = text((reply as { why?: unknown }).why);\n const takes = readTakes(reply, options);\n const avoid = readAvoid(reply, options);\n return {\n order,\n ...(why ? { why } : {}),\n ...(takes.length > 0 ? { takes } : {}),\n ...(avoid.length > 0 ? { avoid } : {}),\n };\n}\n"],"mappings":"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","names":["mkdir","readFile","writeFile","path","questions","text","path","text","readFile","writeFile","mkdir"]}