@koda-sl/baker-cli 0.477.0 → 0.479.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1406) hide show
  1. package/README.md +57 -22
  2. package/dist/account-7LUQWY6Q.js +49 -0
  3. package/dist/account-VH2AATWI.js +79 -0
  4. package/dist/account-Z65CPOWE.js +80 -0
  5. package/dist/account-reads-GYI2SS6T.js +218 -0
  6. package/dist/account-writes-4N2MA2ZR.js +66 -0
  7. package/dist/accounts-E4TVYTUR.js +115 -0
  8. package/dist/accounts-SMB3TNXX.js +114 -0
  9. package/dist/accounts-SPLE7URQ.js +611 -0
  10. package/dist/accounts-UA2ZWRN4.js +75 -0
  11. package/dist/accounts-XG472YLB.js +77 -0
  12. package/dist/actions-KQTXBNJU.js +55 -0
  13. package/dist/active-entities-MCL7UEGV.js +103 -0
  14. package/dist/activecampaign-42JXANUA.js +935 -0
  15. package/dist/activities-IQPJPP4B.js +74 -0
  16. package/dist/ad-group-writes-EUTMPBMK.js +170 -0
  17. package/dist/ad-groups-OVPAI5RM.js +68 -0
  18. package/dist/ad-writes-DACTYFEO.js +174 -0
  19. package/dist/add-5IGUQHVZ.js +105 -0
  20. package/dist/add-BK5AQI5A.js +97 -0
  21. package/dist/add-C3FQ5D62.js +104 -0
  22. package/dist/add-KTEJCE4L.js +302 -0
  23. package/dist/add-accounts-CJSV5NPL.js +91 -0
  24. package/dist/ads-HXX2IAFF.js +113 -0
  25. package/dist/ads-L65JIKCD.js +77 -0
  26. package/dist/ads-RAUM6ISF.js +128 -0
  27. package/dist/ads-WPI3AMSR.js +40 -0
  28. package/dist/adsets-LPN6WFGF.js +176 -0
  29. package/dist/advertisers-36HP3AOE.js +120 -0
  30. package/dist/advertisers-DS2NRWKI.js +125 -0
  31. package/dist/analytics-I4LZCRG2.js +433 -0
  32. package/dist/analytics-IFNBT7IM.js +1976 -0
  33. package/dist/animate-3LV3LHXQ.js +480 -0
  34. package/dist/assign-WBLSZNCO.js +77 -0
  35. package/dist/audience-size-LOX5BNXI.js +73 -0
  36. package/dist/audience-size-LOX5BNXI.js.map +1 -0
  37. package/dist/audiences-3LRCLHTQ.js +85 -0
  38. package/dist/audiences-RPLVMO4H.js +268 -0
  39. package/dist/audiences-XEZHACKH.js +78 -0
  40. package/dist/audit-6AG6BPXQ.js +151 -0
  41. package/dist/audit-YEGQU474.js +88 -0
  42. package/dist/autocomplete-2QRU7ARD.js +111 -0
  43. package/dist/avatars-EIETXCF3.js +38 -0
  44. package/dist/bid-pricing-5LZFHQTS.js +100 -0
  45. package/dist/bid-pricing-5LZFHQTS.js.map +1 -0
  46. package/dist/brand-CINQG3JG.js +22 -0
  47. package/dist/brief-WAQ2V6Q4.js +538 -0
  48. package/dist/brief-WAQ2V6Q4.js.map +1 -0
  49. package/dist/businesses-PRRYPR7H.js +53 -0
  50. package/dist/campaign-groups-5CMTEJZZ.js +95 -0
  51. package/dist/campaign-writes-4RMPHQCT.js +165 -0
  52. package/dist/campaign-writes-U5LTDTYK.js +170 -0
  53. package/dist/campaigns-4SOLY7OR.js +110 -0
  54. package/dist/campaigns-NFRLFNXI.js +107 -0
  55. package/dist/campaigns-PC7UAVXR.js +109 -0
  56. package/dist/campaigns-TFEQTSO3.js +76 -0
  57. package/dist/canvas-BPACZHNU.js +46 -0
  58. package/dist/capabilities-FNVTPCDT.js +144 -0
  59. package/dist/cards-WHMCSRZX.js +85 -0
  60. package/dist/catalog-RMMECI4Z.js +65 -0
  61. package/dist/catalog-RMMECI4Z.js.map +1 -0
  62. package/dist/catalogs-A7XMEEEP.js +128 -0
  63. package/dist/changes-J67WATHX.js +135 -0
  64. package/dist/chatgpt-4PEWDJKP.js +47 -0
  65. package/dist/chats-S5FCV7YO.js +262 -0
  66. package/dist/check-GCZ2ZBKH.js +104 -0
  67. package/dist/check-GCZ2ZBKH.js.map +1 -0
  68. package/dist/chunk-232YUPUI.js +125 -0
  69. package/dist/chunk-23H4ZJRP.js +136 -0
  70. package/dist/chunk-2DHHL4PU.js +156 -0
  71. package/dist/chunk-2DHHL4PU.js.map +1 -0
  72. package/dist/chunk-2FSEESJU.js +1744 -0
  73. package/dist/chunk-2FSEESJU.js.map +1 -0
  74. package/dist/chunk-3OCSWUHV.js +67 -0
  75. package/dist/chunk-3S5YZWB7.js +601 -0
  76. package/dist/chunk-3S5YZWB7.js.map +1 -0
  77. package/dist/chunk-3UXMQ3K2.js +274 -0
  78. package/dist/chunk-5NS4CNF6.js +1518 -0
  79. package/dist/chunk-5NS4CNF6.js.map +1 -0
  80. package/dist/chunk-5WMTPYKT.js +84 -0
  81. package/dist/chunk-65N4ZPQD.js +26 -0
  82. package/dist/chunk-65PUXMWE.js +167 -0
  83. package/dist/chunk-65PUXMWE.js.map +1 -0
  84. package/dist/chunk-6JWEGFM5.js +174 -0
  85. package/dist/chunk-6KK26F2T.js +46 -0
  86. package/dist/chunk-6KK26F2T.js.map +1 -0
  87. package/dist/chunk-7HJR5M4R.js +8843 -0
  88. package/dist/chunk-7HJR5M4R.js.map +1 -0
  89. package/dist/chunk-7LU7KARN.js +64 -0
  90. package/dist/chunk-7LU7KARN.js.map +1 -0
  91. package/dist/chunk-7RBJ2Z7Z.js +172 -0
  92. package/dist/chunk-7U3V64YT.js +344 -0
  93. package/dist/chunk-7U3V64YT.js.map +1 -0
  94. package/dist/chunk-ABXTGAG7.js +23 -0
  95. package/dist/chunk-ADSNY4KZ.js +399 -0
  96. package/dist/chunk-AHF6TQWB.js +392 -0
  97. package/dist/chunk-AIJBZSZV.js +224 -0
  98. package/dist/chunk-AIJBZSZV.js.map +1 -0
  99. package/dist/chunk-AQ5WISEG.js +98 -0
  100. package/dist/chunk-AS5VL32C.js +131 -0
  101. package/dist/chunk-AS5VL32C.js.map +1 -0
  102. package/dist/chunk-BFRIRZRZ.js +98 -0
  103. package/dist/chunk-BFZS3WHS.js +84 -0
  104. package/dist/chunk-BITS62MF.js +77 -0
  105. package/dist/chunk-BLAHHMPF.js +333 -0
  106. package/dist/chunk-BSEB55E6.js +148 -0
  107. package/dist/chunk-BSEB55E6.js.map +1 -0
  108. package/dist/chunk-C3TTE7GS.js +66 -0
  109. package/dist/chunk-C3TTE7GS.js.map +1 -0
  110. package/dist/chunk-CCIDHU6M.js +169 -0
  111. package/dist/chunk-CM6FCSWN.js +644 -0
  112. package/dist/chunk-CVBKW75S.js +296 -0
  113. package/dist/chunk-CXQRTLSQ.js +159 -0
  114. package/dist/chunk-D4I3KULJ.js +5367 -0
  115. package/dist/chunk-D4I3KULJ.js.map +1 -0
  116. package/dist/chunk-D4LKZJYJ.js +76 -0
  117. package/dist/chunk-D7KR6KXR.js +66 -0
  118. package/dist/chunk-DCTEL4KG.js +592 -0
  119. package/dist/chunk-DF22CTXE.js +225 -0
  120. package/dist/chunk-DF22CTXE.js.map +1 -0
  121. package/dist/chunk-DH5CKOYK.js +103 -0
  122. package/dist/chunk-DMVDVZJK.js +97 -0
  123. package/dist/chunk-DMVDVZJK.js.map +1 -0
  124. package/dist/chunk-DQC4NIJE.js +51 -0
  125. package/dist/chunk-DWX44QL6.js +75 -0
  126. package/dist/chunk-EE72SSB2.js +472 -0
  127. package/dist/chunk-FNA277HP.js +97 -0
  128. package/dist/chunk-FRK7SSEH.js +6306 -0
  129. package/dist/chunk-FRK7SSEH.js.map +1 -0
  130. package/dist/chunk-FU7HJWGM.js +26 -0
  131. package/dist/chunk-GDLQ6SGW.js +46 -0
  132. package/dist/chunk-GEKXIXMG.js +106 -0
  133. package/dist/chunk-GLW7UJLB.js +58 -0
  134. package/dist/chunk-GMSKPGLI.js +3846 -0
  135. package/dist/chunk-GMSKPGLI.js.map +1 -0
  136. package/dist/chunk-H5HDZ7IC.js +139 -0
  137. package/dist/chunk-HJQ7N7FC.js +8661 -0
  138. package/dist/chunk-HJQ7N7FC.js.map +1 -0
  139. package/dist/chunk-I5VZVQBZ.js +35 -0
  140. package/dist/chunk-IC6SDOED.js +45 -0
  141. package/dist/chunk-IDN4FOOP.js +97 -0
  142. package/dist/chunk-IDN4FOOP.js.map +1 -0
  143. package/dist/chunk-IG627WWY.js +23992 -0
  144. package/dist/chunk-IN4G7X6W.js +94 -0
  145. package/dist/chunk-IPLE5K5E.js +188 -0
  146. package/dist/chunk-IWWOGBGA.js +665 -0
  147. package/dist/chunk-JD4SABZC.js +942 -0
  148. package/dist/chunk-JD4SABZC.js.map +1 -0
  149. package/dist/chunk-JFA4R3KS.js +172 -0
  150. package/dist/chunk-JYBLCIRN.js +106 -0
  151. package/dist/chunk-K3TNTBZJ.js +52 -0
  152. package/dist/chunk-KCKC637S.js +122 -0
  153. package/dist/chunk-KCKC637S.js.map +1 -0
  154. package/dist/chunk-KPYDTIAI.js +317 -0
  155. package/dist/chunk-KPYDTIAI.js.map +1 -0
  156. package/dist/chunk-LCW3U4EA.js +25 -0
  157. package/dist/chunk-LD4CHA7U.js +89 -0
  158. package/dist/chunk-LD4CHA7U.js.map +1 -0
  159. package/dist/chunk-LS3A753J.js +225 -0
  160. package/dist/chunk-LS3A753J.js.map +1 -0
  161. package/dist/chunk-MI3JB5KB.js +76 -0
  162. package/dist/chunk-MIOOPOG2.js +547 -0
  163. package/dist/chunk-MJQBXFW6.js +74 -0
  164. package/dist/chunk-MMVLRUMK.js +612 -0
  165. package/dist/chunk-MMVLRUMK.js.map +1 -0
  166. package/dist/chunk-MPACDBH5.js +74 -0
  167. package/dist/chunk-MXWOYFI2.js +544 -0
  168. package/dist/chunk-N5O67GK5.js +215 -0
  169. package/dist/chunk-NCP6RD6A.js +433 -0
  170. package/dist/chunk-NNF4RARY.js +297 -0
  171. package/dist/chunk-NR2OVOTD.js +363 -0
  172. package/dist/chunk-NVGXYF6K.js +846 -0
  173. package/dist/chunk-OP7DNHD2.js +137 -0
  174. package/dist/chunk-ORQKMXHA.js +76 -0
  175. package/dist/chunk-P3TNRS56.js +149 -0
  176. package/dist/chunk-PQTY22FR.js +159 -0
  177. package/dist/chunk-PQTY22FR.js.map +1 -0
  178. package/dist/chunk-Q7YZL7PG.js +494 -0
  179. package/dist/chunk-QABSQADZ.js +56 -0
  180. package/dist/chunk-QVNSVFSD.js +91 -0
  181. package/dist/chunk-QVNSVFSD.js.map +1 -0
  182. package/dist/chunk-QVQKCVP7.js +85 -0
  183. package/dist/chunk-QVQKCVP7.js.map +1 -0
  184. package/dist/chunk-R2TAVQGZ.js +455 -0
  185. package/dist/chunk-R5WNYLG4.js +197 -0
  186. package/dist/chunk-RCSOG2DV.js +142 -0
  187. package/dist/chunk-RCSOG2DV.js.map +1 -0
  188. package/dist/chunk-RD2XXQW3.js +1599 -0
  189. package/dist/chunk-RLS5OPPZ.js +207 -0
  190. package/dist/chunk-RLS5OPPZ.js.map +1 -0
  191. package/dist/chunk-RMLJNHCU.js +346 -0
  192. package/dist/chunk-RTWRNG3E.js +821 -0
  193. package/dist/chunk-RTWRNG3E.js.map +1 -0
  194. package/dist/chunk-S7A34DOA.js +111 -0
  195. package/dist/chunk-SFJW2KED.js +166 -0
  196. package/dist/chunk-SOKVXKRM.js +74 -0
  197. package/dist/chunk-STNCMKL6.js +191 -0
  198. package/dist/chunk-SWL4AAPP.js +320 -0
  199. package/dist/chunk-T6ATGN7Y.js +3187 -0
  200. package/dist/chunk-T6ATGN7Y.js.map +1 -0
  201. package/dist/chunk-TF4PGUO5.js +191 -0
  202. package/dist/chunk-TF4PGUO5.js.map +1 -0
  203. package/dist/chunk-TNOJ6O6B.js +61 -0
  204. package/dist/chunk-TNOJ6O6B.js.map +1 -0
  205. package/dist/chunk-U2452GLO.js +1914 -0
  206. package/dist/chunk-U2452GLO.js.map +1 -0
  207. package/dist/chunk-ULPO72IQ.js +225 -0
  208. package/dist/chunk-UMZIQIWN.js +1079 -0
  209. package/dist/chunk-V7N666PJ.js +19 -0
  210. package/dist/chunk-WL6FWK2Q.js +249 -0
  211. package/dist/chunk-WL6FWK2Q.js.map +1 -0
  212. package/dist/chunk-WNJ5SYAG.js +275 -0
  213. package/dist/chunk-WNSE7N75.js +2123 -0
  214. package/dist/chunk-XDZVBX6L.js +220 -0
  215. package/dist/chunk-XGOEX2VJ.js +55 -0
  216. package/dist/chunk-XUB2EK65.js +57 -0
  217. package/dist/chunk-XUR4QWCS.js +206 -0
  218. package/dist/chunk-XZ4YMCZK.js +66 -0
  219. package/dist/chunk-Y3VRMFGF.js +42 -0
  220. package/dist/chunk-YD7BQDJ6.js +903 -0
  221. package/dist/chunk-ZBV5IV5T.js +843 -0
  222. package/dist/chunk-ZBV5IV5T.js.map +1 -0
  223. package/dist/claim-6MPQD43X.js +197 -0
  224. package/dist/cli.js +41 -41
  225. package/dist/client-WL2FKW4T.js +19 -0
  226. package/dist/code-NXN7QYKU.js +76 -0
  227. package/dist/companies-KRF2K4CA.js +195 -0
  228. package/dist/complete-V433ON5C.js +81 -0
  229. package/dist/config-VOF57KBL.js +88 -0
  230. package/dist/connect-QVIAM3GX.js +42 -0
  231. package/dist/content-KA25YYO3.js +85 -0
  232. package/dist/conversation-VZKBZZGG.js +93 -0
  233. package/dist/conversion-report-REOHVLCI.js +125 -0
  234. package/dist/conversion-upload-command-ASHA6T6H.js +438 -0
  235. package/dist/conversion-writes-JU7Q2MUO.js +120 -0
  236. package/dist/conversions-3ISBR3TS.js +76 -0
  237. package/dist/conversions-ZLC6YTJ5.js +135 -0
  238. package/dist/countries-XGMZWUGP.js +82 -0
  239. package/dist/create-B3QMYSIX.js +132 -0
  240. package/dist/create-IFCCMKFT.js +207 -0
  241. package/dist/create-R5P6JU5A.js +235 -0
  242. package/dist/create-SF6DOGDJ.js +59 -0
  243. package/dist/creatives-KD7MOCR3.js +182 -0
  244. package/dist/creatives-YJ3CXZQC.js +87 -0
  245. package/dist/creatives-YOMFW2UP.js +58 -0
  246. package/dist/creatives-YOMFW2UP.js.map +1 -0
  247. package/dist/credentials-2KJUKBMF.js +287 -0
  248. package/dist/critique-A2OEMGZS.js +227 -0
  249. package/dist/critique-A2OEMGZS.js.map +1 -0
  250. package/dist/critique-JVKJEBAC.js +1451 -0
  251. package/dist/critique-JVKJEBAC.js.map +1 -0
  252. package/dist/crm-GX72E2LT.js +224 -0
  253. package/dist/crm-ZYDNEME5.js +318 -0
  254. package/dist/crop-7UTYG7GS.js +113 -0
  255. package/dist/currency-CGDI2NXI.js +88 -0
  256. package/dist/custom-conversions-YRYE65PU.js +125 -0
  257. package/dist/customers-P4N4NXLJ.js +56 -0
  258. package/dist/decide-TWKH5QQU.js +199 -0
  259. package/dist/delete-2GIIUPA3.js +69 -0
  260. package/dist/delete-AK5IV44E.js +66 -0
  261. package/dist/delete-GLLYPNNB.js +71 -0
  262. package/dist/delete-J7DXPGKD.js +71 -0
  263. package/dist/delete-RS7RQDUX.js +54 -0
  264. package/dist/delete-S4VKH7IS.js +64 -0
  265. package/dist/demographics-IKWN2H3V.js +138 -0
  266. package/dist/describe-5QCPRSIG.js +97 -0
  267. package/dist/describe-L3UC6MIL.js +97 -0
  268. package/dist/dimensions-POH4JXEM.js +101 -0
  269. package/dist/discard-H6DOHJRG.js +66 -0
  270. package/dist/discover-L4TPEKGY.js +172 -0
  271. package/dist/discover-XAJKZCMM.js +93 -0
  272. package/dist/domain-US4KKAXC.js +98 -0
  273. package/dist/download-N4J5WFHD.js +299 -0
  274. package/dist/draft-BIQ3ZAYW.js +306 -0
  275. package/dist/draft-EWDOIXSH.js +233 -0
  276. package/dist/draft-IL37WDST.js +103 -0
  277. package/dist/draft-IZ4YLQRD.js +307 -0
  278. package/dist/draft-KDMYGLWN.js +100 -0
  279. package/dist/draft-OLFQZBWL.js +217 -0
  280. package/dist/draft-R32RFDCI.js +328 -0
  281. package/dist/draft-Y2QJE2NM.js +281 -0
  282. package/dist/engine/index.d.ts +31 -1
  283. package/dist/engine/index.js +15 -14
  284. package/dist/env-5MUVYE2L.js +51 -0
  285. package/dist/experiment-G3FQVAJU.js +1397 -0
  286. package/dist/export-OLDI32HM.js +168 -0
  287. package/dist/extract-PPS6ONQN.js +113 -0
  288. package/dist/facets-JBZQHN3D.js +114 -0
  289. package/dist/favorites-4ELADD3R.js +178 -0
  290. package/dist/feed-XIY5TVDL.js +177 -0
  291. package/dist/feedback-CCU6ECMQ.js +106 -0
  292. package/dist/feedback-CCU6ECMQ.js.map +1 -0
  293. package/dist/feedback-record-JCE3JWG6.js +260 -0
  294. package/dist/feedback-record-JCE3JWG6.js.map +1 -0
  295. package/dist/fetch-GOY6DQRL.js +176 -0
  296. package/dist/fetch-YWUVDMUH.js +139 -0
  297. package/dist/find-EVY4XEIQ.js +134 -0
  298. package/dist/fit-TVQ7RK52.js +62 -0
  299. package/dist/flows-274YPU6I.js +247 -0
  300. package/dist/follow-ZTPZKIMZ.js +94 -0
  301. package/dist/follow-competitors-6QDVQ4VJ.js +112 -0
  302. package/dist/following-PBZLZFGQ.js +113 -0
  303. package/dist/fonts-BMUNDGOZ.js +36 -0
  304. package/dist/forecast-F2CZSIMP.js +168 -0
  305. package/dist/forecast-W5F2MNOV.js +118 -0
  306. package/dist/forecast-W5F2MNOV.js.map +1 -0
  307. package/dist/funding-ULBMKUMW.js +85 -0
  308. package/dist/funnel-LEUXICXU.js +394 -0
  309. package/dist/ga4-2BL5YAYN.js +55 -0
  310. package/dist/generate-4HWNFAH3.js +263 -0
  311. package/dist/get-6RZU4M6W.js +63 -0
  312. package/dist/get-7GCEJ6KG.js +92 -0
  313. package/dist/get-MGDY5JYZ.js +79 -0
  314. package/dist/get-MZWUMHEF.js +61 -0
  315. package/dist/get-OAZZHUZP.js +59 -0
  316. package/dist/get-OHU2N7B7.js +63 -0
  317. package/dist/get-TY6AMFI4.js +56 -0
  318. package/dist/gif-NYZYV5RY.js +102 -0
  319. package/dist/gif-NYZYV5RY.js.map +1 -0
  320. package/dist/google-7STODZQR.js +136 -0
  321. package/dist/google-ZTTE34A4.js +3190 -0
  322. package/dist/google-ads-5ARKO757.js +195 -0
  323. package/dist/group-D5WXNFCP.js +43 -0
  324. package/dist/group-Y5PLETFT.js +43 -0
  325. package/dist/gsc-UU3T2C6B.js +30 -0
  326. package/dist/history-IQ33J5PB.js +67 -0
  327. package/dist/history-SU7VQCDJ.js +133 -0
  328. package/dist/hubspot-TJED44GO.js +779 -0
  329. package/dist/icon-GB7UH5RF.js +137 -0
  330. package/dist/ideas-UTSCGCT6.js +40 -0
  331. package/dist/images-ZMZ4WLYH.js +92 -0
  332. package/dist/images-ZMZ4WLYH.js.map +1 -0
  333. package/dist/improve-U5USRH4G.js +86 -0
  334. package/dist/ingest-DGDNZWEM.js +23 -0
  335. package/dist/ingest-SGBJ3NXX.js +107 -0
  336. package/dist/insights-4HT2NAYP.js +423 -0
  337. package/dist/insights-SQLE5NOJ.js +122 -0
  338. package/dist/inspect-BMQTTKMW.js +189 -0
  339. package/dist/inspiration-XQYHBJY2.js +53 -0
  340. package/dist/intent-LM36WK45.js +95 -0
  341. package/dist/job-CGQHEANB.js +202 -0
  342. package/dist/job-create-SZYJT2NC.js +109 -0
  343. package/dist/job-status-6LAKLCKH.js +74 -0
  344. package/dist/keep-3MJSHWU3.js +78 -0
  345. package/dist/keyword-gap-P652ODHN.js +130 -0
  346. package/dist/keyword-metrics-MQLGGJBT.js +197 -0
  347. package/dist/keywords-for-site-JL6H2YGU.js +128 -0
  348. package/dist/landing-AJO2BPC2.js +28 -0
  349. package/dist/landings-ZLKUP66P.js +151 -0
  350. package/dist/languages-3IJVDS5Z.js +55 -0
  351. package/dist/languages-HL42MI7H.js +40 -0
  352. package/dist/launches-RG2SWEXM.js +19 -0
  353. package/dist/layerize-SJYK6HPD.js +190 -0
  354. package/dist/leads-2XOSAYP4.js +293 -0
  355. package/dist/leads-H6JIWVI6.js +90 -0
  356. package/dist/learn-NJOV2DHD.js +204 -0
  357. package/dist/learn-NJOV2DHD.js.map +1 -0
  358. package/dist/library-Q4OU7VR7.js +109 -0
  359. package/dist/lighthouse-FALRSVQH.js +75 -0
  360. package/dist/line-item-writes-V7AKAHFC.js +208 -0
  361. package/dist/line-items-GAMKVVIQ.js +103 -0
  362. package/dist/link-Z5AQP6JN.js +64 -0
  363. package/dist/linkedin-7F6YVXQL.js +1045 -0
  364. package/dist/linkedin-7F6YVXQL.js.map +1 -0
  365. package/dist/list-2ZTOMTES.js +65 -0
  366. package/dist/list-GK6LNWIW.js +76 -0
  367. package/dist/list-NLGM3QDP.js +303 -0
  368. package/dist/list-RR53EF3O.js +57 -0
  369. package/dist/list-SZH6TH74.js +64 -0
  370. package/dist/list-TB677Q2F.js +50 -0
  371. package/dist/list-VTVRZIYL.js +51 -0
  372. package/dist/list-XZVQWIJN.js +151 -0
  373. package/dist/locations-AEGZ36JH.js +40 -0
  374. package/dist/locations-YA7NZY44.js +67 -0
  375. package/dist/log-JM4VLJE4.js +92 -0
  376. package/dist/logo-YSNUUT33.js +18 -0
  377. package/dist/lookup-RH5N3OWJ.js +22 -0
  378. package/dist/make-IZJ47YZY.js +1310 -0
  379. package/dist/make-IZJ47YZY.js.map +1 -0
  380. package/dist/map-HRLUMCR2.js +433 -0
  381. package/dist/mcp-T6SAG4XB.js +463 -0
  382. package/dist/media-ES2UBGYW.js +15 -0
  383. package/dist/media-MPXEXN4O.js +89 -0
  384. package/dist/media-sources-7AS3274L.js +32 -0
  385. package/dist/members-J5KWXTXY.js +44 -0
  386. package/dist/meme-FMHHKWVU.js +100 -0
  387. package/dist/meme-FMHHKWVU.js.map +1 -0
  388. package/dist/meta-AOIPEDV5.js +69 -0
  389. package/dist/metrics-VDBJ6KL7.js +152 -0
  390. package/dist/models-2DQ5NBMT.js +155 -0
  391. package/dist/normalize-CHZB4QDD.js +141 -0
  392. package/dist/normalize-NR5RS3WR.js +806 -0
  393. package/dist/options-QLXFLESP.js +122 -0
  394. package/dist/organization-KEGKAP4P.js +328 -0
  395. package/dist/output-GWIP6ROX.js +24 -0
  396. package/dist/page-YWGBCN65.js +105 -0
  397. package/dist/pages-FTI44OSH.js +66 -0
  398. package/dist/performance-SPGPGXE5.js +24 -0
  399. package/dist/pinterest-J442QLQS.js +96 -0
  400. package/dist/pixels-6IUB3Y3H.js +60 -0
  401. package/dist/pixels-MBKR4XPX.js +108 -0
  402. package/dist/plan-YPE77T4R.js +207 -0
  403. package/dist/preview-V4YBD45S.js +169 -0
  404. package/dist/profile-S3MXS2VO.js +159 -0
  405. package/dist/promoted-tweet-writes-TRR3KPRJ.js +180 -0
  406. package/dist/promoted-tweets-XRYZNJI2.js +119 -0
  407. package/dist/properties-G3L2OAOL.js +101 -0
  408. package/dist/publish-V5YGMK53.js +341 -0
  409. package/dist/publish-V5YGMK53.js.map +1 -0
  410. package/dist/query-M3IO54U2.js +61 -0
  411. package/dist/query-WCB5W4NW.js +236 -0
  412. package/dist/query-YBS6ZQ75.js +247 -0
  413. package/dist/questionnaire-PAK4DALP.js +93 -0
  414. package/dist/read-LUTB3UOR.js +141 -0
  415. package/dist/reddit-STSECKMZ.js +26 -0
  416. package/dist/refresh-RQ3C2MHI.js +94 -0
  417. package/dist/release-UHGU5WBY.js +60 -0
  418. package/dist/relevant-pages-G6SNC73K.js +99 -0
  419. package/dist/remove-LTKICIIF.js +50 -0
  420. package/dist/remove-X6DNVS67.js +48 -0
  421. package/dist/reopen-BP5ERELB.js +63 -0
  422. package/dist/rerun-NR54OG3M.js +90 -0
  423. package/dist/rerun-NR54OG3M.js.map +1 -0
  424. package/dist/research-GOYMTKZM.js +262 -0
  425. package/dist/research-MBAPL35Y.js +62 -0
  426. package/dist/reset-Q62PEGOU.js +54 -0
  427. package/dist/reset-SJPGSQ7I.js +54 -0
  428. package/dist/resolve-R45W7QEQ.js +121 -0
  429. package/dist/retry-CD2Q2AJN.js +60 -0
  430. package/dist/retry-NBZ7Q6HK.js +62 -0
  431. package/dist/retry-failed-EJBP4236.js +45 -0
  432. package/dist/rules-SZIY67QF.js +96 -0
  433. package/dist/rules-SZIY67QF.js.map +1 -0
  434. package/dist/rules-add-KTLHU3YD.js +462 -0
  435. package/dist/rules-add-KTLHU3YD.js.map +1 -0
  436. package/dist/run-HCJKCEOL.js +66 -0
  437. package/dist/run-IIU2UVQU.js +65 -0
  438. package/dist/scaffold-ad-3VMAP5BF.js +1511 -0
  439. package/dist/scaffold-ad-3VMAP5BF.js.map +1 -0
  440. package/dist/scaffold-static-ad-Z7LO7PKI.js +1005 -0
  441. package/dist/scaffold-static-ad-Z7LO7PKI.js.map +1 -0
  442. package/dist/scaffold-video-SBSSR7TZ.js +883 -0
  443. package/dist/scaffold-video-SBSSR7TZ.js.map +1 -0
  444. package/dist/schedule-BSQHXJ5V.js +61 -0
  445. package/dist/schedule-IDZC6M32.js +66 -0
  446. package/dist/scheduled-agents-MFLMG34I.js +50 -0
  447. package/dist/schema-EFR7NGJG.js +69 -0
  448. package/dist/schema-IWPG3YSN.js +132 -0
  449. package/dist/scrape-J2Y7YZ4Z.js +2241 -0
  450. package/dist/screenshot-K7ZGTVTE.js +102 -0
  451. package/dist/search-CI7LEOOK.js +92 -0
  452. package/dist/search-EGI5K77S.js +174 -0
  453. package/dist/search-I6DRUXBX.js +224 -0
  454. package/dist/search-TTL7VQET.js +26 -0
  455. package/dist/search-VT2KUAH6.js +91 -0
  456. package/dist/search-copy-N2AIJNUH.js +168 -0
  457. package/dist/seeds-EYYQCMGF.js +101 -0
  458. package/dist/select-ON3KZEEK.js +101 -0
  459. package/dist/select-ON3KZEEK.js.map +1 -0
  460. package/dist/sends-RHVFV2XM.js +309 -0
  461. package/dist/sequences-5DUWNSWQ.js +146 -0
  462. package/dist/set-prompt-RHMZ7SFC.js +193 -0
  463. package/dist/set-prompt-RHMZ7SFC.js.map +1 -0
  464. package/dist/setup-links-5ILQNMFZ.js +141 -0
  465. package/dist/shared-NDRFKAH7.js +31 -0
  466. package/dist/site-LBXNVRPE.js +177 -0
  467. package/dist/sitemaps-QKKXMXMV.js +87 -0
  468. package/dist/sites-GRC6CCCK.js +101 -0
  469. package/dist/skills-UML6GSW6.js +47 -0
  470. package/dist/sources-GP4PUTX2.js +454 -0
  471. package/dist/sources-N4UANUHJ.js +30 -0
  472. package/dist/stale-OIOOAP2S.js +71 -0
  473. package/dist/stale-OIOOAP2S.js.map +1 -0
  474. package/dist/stats-RCLQE4HJ.js +34 -0
  475. package/dist/status-GSFMLC6W.js +62 -0
  476. package/dist/sticker-SINY47WT.js +94 -0
  477. package/dist/stock-ECRBD7RP.js +179 -0
  478. package/dist/studio-YB5WXQYC.js +49 -0
  479. package/dist/sync-2MFUI3ME.js +54 -0
  480. package/dist/sync-IE4AAVGY.js +265 -0
  481. package/dist/sync-LIV7FU4N.js +54 -0
  482. package/dist/sync-definition-5JO7QXX3.js +64 -0
  483. package/dist/tag-manager-G3LBQZUL.js +43 -0
  484. package/dist/tags-4JQX7HMT.js +26 -0
  485. package/dist/tags-6RQVXS47.js +224 -0
  486. package/dist/tags-AAIFQ6LS.js +20 -0
  487. package/dist/tags-F355NMIR.js +20 -0
  488. package/dist/tags-ZHCGHGYC.js +20 -0
  489. package/dist/targeting-constants-KEKYU5JQ.js +118 -0
  490. package/dist/targeting-criteria-6FY2JB3V.js +113 -0
  491. package/dist/targets-NI7TR4GV.js +103 -0
  492. package/dist/testimonials-G7CCH7VN.js +32 -0
  493. package/dist/themes-PXDXIKYR.js +94 -0
  494. package/dist/top-companies-YH2ZJEH5.js +108 -0
  495. package/dist/translate-AEOQJ5JN.js +604 -0
  496. package/dist/translate-AEOQJ5JN.js.map +1 -0
  497. package/dist/triggers-WYFM7PAH.js +142 -0
  498. package/dist/tweets-C3QUKS3I.js +123 -0
  499. package/dist/unfollow-ZI5QU7RD.js +46 -0
  500. package/dist/unlink-PTWUSM5B.js +67 -0
  501. package/dist/unstage-7F7JI6HY.js +95 -0
  502. package/dist/unstage-MCM6EZWK.js +85 -0
  503. package/dist/update-2BDIJDHN.js +188 -0
  504. package/dist/update-2BDIJDHN.js.map +1 -0
  505. package/dist/update-643S2MUW.js +63 -0
  506. package/dist/update-GUIP6G3N.js +152 -0
  507. package/dist/update-V6E3CIFD.js +98 -0
  508. package/dist/upload-3YJJ5VID.js +126 -0
  509. package/dist/upload-KO46L76G.js +150 -0
  510. package/dist/upscale-SJ7SCSRS.js +109 -0
  511. package/dist/url-options-LHS4SWWB.js +130 -0
  512. package/dist/url-params-2DKIXKHH.js +98 -0
  513. package/dist/use-6ULEM3WE.js +95 -0
  514. package/dist/validate-PEWGXGCR.js +117 -0
  515. package/dist/validate-PEWGXGCR.js.map +1 -0
  516. package/dist/variant-5TRRSYBB.js +338 -0
  517. package/dist/videos-KEDR4GG3.js +39 -0
  518. package/dist/view-ABSWZMXW.js +121 -0
  519. package/dist/viewer-check-TSH3SAYJ.js +80 -0
  520. package/dist/web-UOGBNAHR.js +140 -0
  521. package/dist/winners-KRISBKOR.js +113 -0
  522. package/dist/winning-ads-SGBI3WHK.js +84 -0
  523. package/dist/write-commands-E7JOB4HX.js +1015 -0
  524. package/dist/write-commands-HCQI4Y27.js +737 -0
  525. package/dist/write-commands-QCI6XBM7.js +206 -0
  526. package/dist/write-commands-RHCCPMAE.js +713 -0
  527. package/dist/x-UNSN57YP.js +47 -0
  528. package/package.json +2 -1
  529. package/dist/account-63NUWSXK.js +0 -49
  530. package/dist/account-IFB6V6GL.js +0 -80
  531. package/dist/account-NCX3VHZT.js +0 -79
  532. package/dist/account-reads-Y3T65EI4.js +0 -218
  533. package/dist/account-writes-7YZ7PTHF.js +0 -66
  534. package/dist/accounts-2MQVGI4I.js +0 -77
  535. package/dist/accounts-66KZC7QI.js +0 -114
  536. package/dist/accounts-MQIYTIAX.js +0 -611
  537. package/dist/accounts-MVEZ2TRL.js +0 -75
  538. package/dist/accounts-T5DCHHZK.js +0 -115
  539. package/dist/actions-LRSHHDV2.js +0 -55
  540. package/dist/active-entities-QWPGPNGE.js +0 -103
  541. package/dist/activecampaign-G4XARU6N.js +0 -935
  542. package/dist/activities-FN7DOE5S.js +0 -74
  543. package/dist/ad-group-writes-JSOCSYYV.js +0 -170
  544. package/dist/ad-groups-UN52WNJN.js +0 -68
  545. package/dist/ad-writes-X23H4HLZ.js +0 -174
  546. package/dist/add-2MVZQJYG.js +0 -302
  547. package/dist/add-7EKI6ZA4.js +0 -97
  548. package/dist/add-ZP47HVHW.js +0 -104
  549. package/dist/add-ZTXN775K.js +0 -105
  550. package/dist/add-accounts-PEJLMYWR.js +0 -91
  551. package/dist/ads-7YYCWZIR.js +0 -40
  552. package/dist/ads-FOJ6P4OA.js +0 -128
  553. package/dist/ads-MKMWS36P.js +0 -113
  554. package/dist/ads-NEJKXB4L.js +0 -77
  555. package/dist/adsets-TIHFYWOU.js +0 -176
  556. package/dist/advertisers-246ZLRFZ.js +0 -120
  557. package/dist/advertisers-E77XAYCQ.js +0 -125
  558. package/dist/analytics-SL56NTIV.js +0 -433
  559. package/dist/analytics-WPYPKM6L.js +0 -1976
  560. package/dist/animate-3H3TL3N6.js +0 -480
  561. package/dist/assign-WGQVY3DW.js +0 -77
  562. package/dist/audience-size-C37XJ6GS.js +0 -94
  563. package/dist/audience-size-C37XJ6GS.js.map +0 -1
  564. package/dist/audiences-BWDG2R2U.js +0 -268
  565. package/dist/audiences-GHMNXDPR.js +0 -85
  566. package/dist/audiences-Q7OCAMAQ.js +0 -78
  567. package/dist/audit-HG53XQJK.js +0 -88
  568. package/dist/audit-LGD4PMAI.js +0 -151
  569. package/dist/autocomplete-PD2EMWRU.js +0 -111
  570. package/dist/avatars-U5KAMVNV.js +0 -38
  571. package/dist/bid-pricing-PP6PV6S4.js +0 -99
  572. package/dist/bid-pricing-PP6PV6S4.js.map +0 -1
  573. package/dist/brand-2JJ45TBO.js +0 -22
  574. package/dist/brief-IMTLJQN2.js +0 -490
  575. package/dist/brief-IMTLJQN2.js.map +0 -1
  576. package/dist/businesses-24QYU6BL.js +0 -53
  577. package/dist/campaign-groups-ZXRHEEGS.js +0 -95
  578. package/dist/campaign-writes-7UHMSPJ3.js +0 -170
  579. package/dist/campaign-writes-WIBYW73K.js +0 -165
  580. package/dist/campaigns-CRRLTN74.js +0 -107
  581. package/dist/campaigns-DJV4W6UP.js +0 -76
  582. package/dist/campaigns-EY3AR4N7.js +0 -109
  583. package/dist/campaigns-WTZBLGVX.js +0 -110
  584. package/dist/canvas-WFYKZYZD.js +0 -46
  585. package/dist/capabilities-IGKT7D4H.js +0 -144
  586. package/dist/cards-IO2Q423H.js +0 -85
  587. package/dist/catalog-X3VJFC74.js +0 -64
  588. package/dist/catalog-X3VJFC74.js.map +0 -1
  589. package/dist/catalogs-2HT3VRRI.js +0 -128
  590. package/dist/changes-AZ6EUVFN.js +0 -135
  591. package/dist/chatgpt-M27OEM7J.js +0 -47
  592. package/dist/chats-OXIYXI4U.js +0 -262
  593. package/dist/chunk-26HCUIW2.js +0 -166
  594. package/dist/chunk-2SDC7WNS.js +0 -817
  595. package/dist/chunk-2SDC7WNS.js.map +0 -1
  596. package/dist/chunk-2SQ6ISRI.js +0 -392
  597. package/dist/chunk-2VRD3HSQ.js +0 -60
  598. package/dist/chunk-2VRD3HSQ.js.map +0 -1
  599. package/dist/chunk-2XQ5HU6D.js +0 -3088
  600. package/dist/chunk-2XQ5HU6D.js.map +0 -1
  601. package/dist/chunk-37P6DTDJ.js +0 -455
  602. package/dist/chunk-3IGY2FWK.js +0 -6667
  603. package/dist/chunk-3IGY2FWK.js.map +0 -1
  604. package/dist/chunk-3UA4THEF.js +0 -76
  605. package/dist/chunk-4EPGI6I2.js +0 -76
  606. package/dist/chunk-4LODOBIN.js +0 -433
  607. package/dist/chunk-5ADTL2LR.js +0 -188
  608. package/dist/chunk-5HABWBQX.js +0 -139
  609. package/dist/chunk-5HYSKH77.js +0 -315
  610. package/dist/chunk-5HYSKH77.js.map +0 -1
  611. package/dist/chunk-5TV4GYP2.js +0 -1830
  612. package/dist/chunk-5TV4GYP2.js.map +0 -1
  613. package/dist/chunk-6M6HUJ55.js +0 -474
  614. package/dist/chunk-6M6HUJ55.js.map +0 -1
  615. package/dist/chunk-6YZNHMPJ.js +0 -74
  616. package/dist/chunk-7ANWFQEA.js +0 -220
  617. package/dist/chunk-7FKRKMGL.js +0 -133
  618. package/dist/chunk-7FKRKMGL.js.map +0 -1
  619. package/dist/chunk-7MADMR5U.js +0 -399
  620. package/dist/chunk-7WZHO6W3.js +0 -225
  621. package/dist/chunk-AAF7HL4I.js +0 -320
  622. package/dist/chunk-ANWV2VTO.js +0 -136
  623. package/dist/chunk-ANYMWCST.js +0 -2122
  624. package/dist/chunk-AQADZOTG.js +0 -137
  625. package/dist/chunk-AQYH6C32.js +0 -544
  626. package/dist/chunk-BODRDUYQ.js +0 -111
  627. package/dist/chunk-BPPT7YVK.js +0 -274
  628. package/dist/chunk-BWAFZSZ4.js +0 -94
  629. package/dist/chunk-CIWI7LHO.js +0 -191
  630. package/dist/chunk-CLST7PLN.js +0 -26
  631. package/dist/chunk-CMNVR6DX.js +0 -486
  632. package/dist/chunk-CMNVR6DX.js.map +0 -1
  633. package/dist/chunk-CPTOHQSJ.js +0 -296
  634. package/dist/chunk-CU2DEMQB.js +0 -1079
  635. package/dist/chunk-D5GVSJBK.js +0 -66
  636. package/dist/chunk-D5Z34AYL.js +0 -297
  637. package/dist/chunk-EBC64WAG.js +0 -74
  638. package/dist/chunk-EMPXRKIM.js +0 -644
  639. package/dist/chunk-EQ74MEJN.js +0 -98
  640. package/dist/chunk-ETFAIX4L.js +0 -74
  641. package/dist/chunk-F3VR6CTH.js +0 -903
  642. package/dist/chunk-FDPBTKXZ.js +0 -25
  643. package/dist/chunk-GAD2NYL4.js +0 -1442
  644. package/dist/chunk-GAD2NYL4.js.map +0 -1
  645. package/dist/chunk-GAJQPQWS.js +0 -6239
  646. package/dist/chunk-GAJQPQWS.js.map +0 -1
  647. package/dist/chunk-GRL25RKS.js +0 -4408
  648. package/dist/chunk-GRL25RKS.js.map +0 -1
  649. package/dist/chunk-GRYP7Y5V.js +0 -103
  650. package/dist/chunk-H4DAEWJQ.js +0 -51
  651. package/dist/chunk-H5CGVMQW.js +0 -472
  652. package/dist/chunk-HDQBILJR.js +0 -45
  653. package/dist/chunk-HH5PFZ7U.js +0 -84
  654. package/dist/chunk-HKR7VCFK.js +0 -42
  655. package/dist/chunk-JQ4PQ2H6.js +0 -197
  656. package/dist/chunk-JRLGQA2T.js +0 -333
  657. package/dist/chunk-JU6X4XFU.js +0 -23
  658. package/dist/chunk-KODTY7PB.js +0 -215
  659. package/dist/chunk-LEGVJCL4.js +0 -56
  660. package/dist/chunk-LKM3FMYC.js +0 -363
  661. package/dist/chunk-LOTQBFUP.js +0 -106
  662. package/dist/chunk-LPBLKGH7.js +0 -106
  663. package/dist/chunk-MICLDQES.js +0 -346
  664. package/dist/chunk-MUHPBWE5.js +0 -35
  665. package/dist/chunk-NFSLRRIE.js +0 -77
  666. package/dist/chunk-NHQTEQPR.js +0 -169
  667. package/dist/chunk-NKXH3I65.js +0 -1743
  668. package/dist/chunk-NKXH3I65.js.map +0 -1
  669. package/dist/chunk-NRRNY3TZ.js +0 -55
  670. package/dist/chunk-O5J5T4ZL.js +0 -111
  671. package/dist/chunk-O5J5T4ZL.js.map +0 -1
  672. package/dist/chunk-O6TGA5HT.js +0 -337
  673. package/dist/chunk-O6TGA5HT.js.map +0 -1
  674. package/dist/chunk-O6VUX3O5.js +0 -52
  675. package/dist/chunk-OST3RA6Q.js +0 -610
  676. package/dist/chunk-OST3RA6Q.js.map +0 -1
  677. package/dist/chunk-PCSBF6GN.js +0 -3151
  678. package/dist/chunk-PCSBF6GN.js.map +0 -1
  679. package/dist/chunk-PLK7V2SJ.js +0 -509
  680. package/dist/chunk-PLK7V2SJ.js.map +0 -1
  681. package/dist/chunk-PWABS2DB.js +0 -172
  682. package/dist/chunk-PXTFT35U.js +0 -547
  683. package/dist/chunk-QBCPZFAV.js +0 -23992
  684. package/dist/chunk-QEZEXMRB.js +0 -96
  685. package/dist/chunk-QEZEXMRB.js.map +0 -1
  686. package/dist/chunk-QGSV3IWT.js +0 -304
  687. package/dist/chunk-QGSV3IWT.js.map +0 -1
  688. package/dist/chunk-QGWCBGEC.js +0 -1599
  689. package/dist/chunk-QKUBK3AD.js +0 -97
  690. package/dist/chunk-QNH5NCLM.js +0 -67
  691. package/dist/chunk-QNLWBJUR.js +0 -58
  692. package/dist/chunk-R4CDO5YH.js +0 -172
  693. package/dist/chunk-RCMK4FM2.js +0 -19
  694. package/dist/chunk-RJFM6TJC.js +0 -76
  695. package/dist/chunk-RKPSE27R.js +0 -98
  696. package/dist/chunk-S6ODQYTC.js +0 -96
  697. package/dist/chunk-S6ODQYTC.js.map +0 -1
  698. package/dist/chunk-SBN5UIQY.js +0 -665
  699. package/dist/chunk-SOK7U4NT.js +0 -592
  700. package/dist/chunk-TLQQV5AY.js +0 -159
  701. package/dist/chunk-TOIFDXCW.js +0 -57
  702. package/dist/chunk-TWXM7HVR.js +0 -149
  703. package/dist/chunk-U6RTBCU7.js +0 -26
  704. package/dist/chunk-UARL36OD.js +0 -846
  705. package/dist/chunk-UDG37PC2.js +0 -174
  706. package/dist/chunk-UMFKMS4U.js +0 -275
  707. package/dist/chunk-UW7PZFWZ.js +0 -75
  708. package/dist/chunk-UWTAQM4W.js +0 -160
  709. package/dist/chunk-UWTAQM4W.js.map +0 -1
  710. package/dist/chunk-VDAYKWVH.js +0 -125
  711. package/dist/chunk-VY5CTURR.js +0 -46
  712. package/dist/chunk-WE6K2VVZ.js +0 -494
  713. package/dist/chunk-WOTX7TNV.js +0 -84
  714. package/dist/chunk-XKA4ZHGX.js +0 -206
  715. package/dist/chunk-XO3GZLWQ.js +0 -5181
  716. package/dist/chunk-XO3GZLWQ.js.map +0 -1
  717. package/dist/chunk-XWB2L3HS.js +0 -66
  718. package/dist/chunk-XYOU3ROP.js +0 -175
  719. package/dist/chunk-XYOU3ROP.js.map +0 -1
  720. package/dist/chunk-YDSF4PXO.js +0 -216
  721. package/dist/chunk-YDSF4PXO.js.map +0 -1
  722. package/dist/chunk-YDWQVAFI.js +0 -92
  723. package/dist/chunk-YDWQVAFI.js.map +0 -1
  724. package/dist/claim-DEQYWQZ4.js +0 -197
  725. package/dist/client-TL7BITWM.js +0 -19
  726. package/dist/code-ORY2WROG.js +0 -76
  727. package/dist/companies-QM5MOLIZ.js +0 -195
  728. package/dist/complete-FM6VSFCT.js +0 -81
  729. package/dist/config-FMDQ323H.js +0 -88
  730. package/dist/connect-YTIE5PRU.js +0 -42
  731. package/dist/content-ZQB6PXGX.js +0 -85
  732. package/dist/conversation-VKWYWPB6.js +0 -93
  733. package/dist/conversion-report-U4UFXSD2.js +0 -125
  734. package/dist/conversion-upload-command-INQX73AK.js +0 -438
  735. package/dist/conversion-writes-MCKROLRA.js +0 -120
  736. package/dist/conversions-OPNDVQ56.js +0 -76
  737. package/dist/conversions-QILFJ34A.js +0 -135
  738. package/dist/countries-AZ3XSZVM.js +0 -82
  739. package/dist/create-A7O5CBUS.js +0 -207
  740. package/dist/create-BEH3DUUP.js +0 -59
  741. package/dist/create-C4LTWKD7.js +0 -132
  742. package/dist/create-LRVA4MSV.js +0 -235
  743. package/dist/creatives-43I65CHD.js +0 -87
  744. package/dist/creatives-DRRWFFOH.js +0 -51
  745. package/dist/creatives-DRRWFFOH.js.map +0 -1
  746. package/dist/creatives-XEKEYLNV.js +0 -182
  747. package/dist/credentials-GJMH4XRU.js +0 -287
  748. package/dist/critique-EJJQVV4D.js +0 -213
  749. package/dist/critique-EJJQVV4D.js.map +0 -1
  750. package/dist/critique-GIJUTKIM.js +0 -1449
  751. package/dist/critique-GIJUTKIM.js.map +0 -1
  752. package/dist/crm-ECMEYPQT.js +0 -318
  753. package/dist/crm-WHK3PL6S.js +0 -224
  754. package/dist/crop-Q2GJLOHE.js +0 -113
  755. package/dist/currency-SVDR5N7L.js +0 -88
  756. package/dist/custom-conversions-5NJNPZKM.js +0 -125
  757. package/dist/customers-XKE3DQR7.js +0 -56
  758. package/dist/decide-PCJTFCWC.js +0 -199
  759. package/dist/delete-7K4KFPUT.js +0 -69
  760. package/dist/delete-APRR2OYC.js +0 -66
  761. package/dist/delete-DTTEHY6E.js +0 -64
  762. package/dist/delete-GOA4Y562.js +0 -71
  763. package/dist/delete-I2SIRTMZ.js +0 -71
  764. package/dist/delete-QCZUGDIJ.js +0 -54
  765. package/dist/demographics-HG7NWA5U.js +0 -138
  766. package/dist/describe-CRTFAH6Y.js +0 -97
  767. package/dist/describe-OAB2FJYK.js +0 -97
  768. package/dist/dimensions-PFGHRZ5T.js +0 -101
  769. package/dist/discard-U3DW6WV3.js +0 -66
  770. package/dist/discover-IOJZYJ6B.js +0 -172
  771. package/dist/discover-R3EUUGRZ.js +0 -93
  772. package/dist/domain-HTF3ARBJ.js +0 -98
  773. package/dist/download-2HGDCPR7.js +0 -299
  774. package/dist/draft-3KLT2YHI.js +0 -233
  775. package/dist/draft-5RL6HZ6A.js +0 -306
  776. package/dist/draft-7O4ABIKK.js +0 -100
  777. package/dist/draft-DK4NZ6PW.js +0 -281
  778. package/dist/draft-GPL2TZXA.js +0 -328
  779. package/dist/draft-KTOZ2AT7.js +0 -217
  780. package/dist/draft-PQGTIABK.js +0 -103
  781. package/dist/draft-SRMHEIRG.js +0 -307
  782. package/dist/env-NPSYSFXD.js +0 -51
  783. package/dist/experiment-V57PLATO.js +0 -1397
  784. package/dist/export-UN2PTCNO.js +0 -168
  785. package/dist/extract-5JOFQZVU.js +0 -113
  786. package/dist/facets-2XQEJNZZ.js +0 -114
  787. package/dist/favorites-4AWW5F5B.js +0 -178
  788. package/dist/feed-AK3IFTAL.js +0 -177
  789. package/dist/feedback-34M4VJ5S.js +0 -66
  790. package/dist/feedback-34M4VJ5S.js.map +0 -1
  791. package/dist/feedback-record-ZINYAVHA.js +0 -175
  792. package/dist/feedback-record-ZINYAVHA.js.map +0 -1
  793. package/dist/fetch-6ALLGDRN.js +0 -139
  794. package/dist/fetch-VYIMA5BI.js +0 -176
  795. package/dist/find-22HWPRFY.js +0 -134
  796. package/dist/fit-S4RO2DMX.js +0 -45
  797. package/dist/flows-ITS573ST.js +0 -247
  798. package/dist/follow-IUW3P6KH.js +0 -94
  799. package/dist/follow-competitors-YDF5WM4K.js +0 -112
  800. package/dist/following-PNOYUSHX.js +0 -113
  801. package/dist/fonts-U4YXUNNZ.js +0 -34
  802. package/dist/forecast-AFBIS6WT.js +0 -104
  803. package/dist/forecast-AFBIS6WT.js.map +0 -1
  804. package/dist/forecast-NHG3UHOP.js +0 -168
  805. package/dist/funding-WSJI56OH.js +0 -85
  806. package/dist/funnel-46QWG5DN.js +0 -394
  807. package/dist/ga4-4W3KJIS5.js +0 -55
  808. package/dist/generate-3MC7WDL2.js +0 -263
  809. package/dist/get-4DJXDO42.js +0 -61
  810. package/dist/get-BK4MBGQF.js +0 -59
  811. package/dist/get-IAJ57JLM.js +0 -79
  812. package/dist/get-MVWVS3YT.js +0 -56
  813. package/dist/get-P5ZTH7RQ.js +0 -63
  814. package/dist/get-PTOW6PVF.js +0 -63
  815. package/dist/get-SR2NWOPT.js +0 -92
  816. package/dist/gif-L6RYCB6L.js +0 -94
  817. package/dist/gif-L6RYCB6L.js.map +0 -1
  818. package/dist/google-EMSAXPVB.js +0 -136
  819. package/dist/google-XE35SF3Z.js +0 -3190
  820. package/dist/google-ads-DYNDLOBO.js +0 -195
  821. package/dist/group-EUYJJ4LI.js +0 -43
  822. package/dist/group-MBRA2QID.js +0 -43
  823. package/dist/gsc-B3NPUNI6.js +0 -30
  824. package/dist/history-4S3YEIPK.js +0 -67
  825. package/dist/history-7HFGP7UI.js +0 -133
  826. package/dist/hubspot-3LWMILTD.js +0 -779
  827. package/dist/icon-4DAXBICB.js +0 -137
  828. package/dist/ideas-RHOV2ZJ6.js +0 -32
  829. package/dist/images-KXEPMLOC.js +0 -90
  830. package/dist/images-KXEPMLOC.js.map +0 -1
  831. package/dist/improve-U2RA5DPI.js +0 -86
  832. package/dist/ingest-H4F5TJC3.js +0 -23
  833. package/dist/ingest-URYQ7BTL.js +0 -107
  834. package/dist/insights-HQGBM6VA.js +0 -423
  835. package/dist/insights-K2CMI3K5.js +0 -122
  836. package/dist/inspect-IPQTTZK3.js +0 -189
  837. package/dist/inspiration-TRMFE64K.js +0 -53
  838. package/dist/intent-2EWV4KXW.js +0 -95
  839. package/dist/job-7GDSDRM4.js +0 -202
  840. package/dist/job-create-PE7G64WC.js +0 -109
  841. package/dist/job-status-LUSCFLZ2.js +0 -74
  842. package/dist/keep-5NFHEILH.js +0 -78
  843. package/dist/keyword-gap-T22T7RN6.js +0 -130
  844. package/dist/keyword-metrics-SLCXHPZS.js +0 -197
  845. package/dist/keywords-for-site-HBQSJKNN.js +0 -128
  846. package/dist/landing-PJJGQM3M.js +0 -28
  847. package/dist/landings-ZR4YMEPV.js +0 -151
  848. package/dist/languages-HXAZNLNU.js +0 -55
  849. package/dist/languages-VLMJOAJN.js +0 -40
  850. package/dist/launches-T5LAIOYS.js +0 -19
  851. package/dist/layerize-24PQKKPB.js +0 -190
  852. package/dist/leads-EDKSVSWP.js +0 -293
  853. package/dist/leads-HXYLSNMB.js +0 -90
  854. package/dist/learn-ZUZ7MEY5.js +0 -203
  855. package/dist/learn-ZUZ7MEY5.js.map +0 -1
  856. package/dist/library-ZHREUZMU.js +0 -109
  857. package/dist/lighthouse-E2NTHAO4.js +0 -75
  858. package/dist/line-item-writes-JNHZFCRM.js +0 -208
  859. package/dist/line-items-WGLNILMH.js +0 -103
  860. package/dist/link-KLFRRU24.js +0 -64
  861. package/dist/linkedin-LPWIZ3SS.js +0 -1009
  862. package/dist/linkedin-LPWIZ3SS.js.map +0 -1
  863. package/dist/list-37F6C6P5.js +0 -57
  864. package/dist/list-7EEDCI3T.js +0 -51
  865. package/dist/list-E3MCY43O.js +0 -303
  866. package/dist/list-E7CJMIGC.js +0 -76
  867. package/dist/list-HA2NITR3.js +0 -50
  868. package/dist/list-MIGWTOQU.js +0 -64
  869. package/dist/list-SW3DF473.js +0 -151
  870. package/dist/list-TG6LBHCV.js +0 -65
  871. package/dist/locations-VYIDAVD4.js +0 -67
  872. package/dist/locations-ZWTDUUGL.js +0 -40
  873. package/dist/log-Y4NIMHFD.js +0 -92
  874. package/dist/logo-SHQJHJK7.js +0 -18
  875. package/dist/lookup-TWSJ7KRT.js +0 -22
  876. package/dist/make-IJN6E4Q7.js +0 -633
  877. package/dist/make-IJN6E4Q7.js.map +0 -1
  878. package/dist/map-DHQTEDUH.js +0 -433
  879. package/dist/mcp-ZHASO273.js +0 -463
  880. package/dist/media-LDVWXWWZ.js +0 -15
  881. package/dist/media-TNB4DLTJ.js +0 -89
  882. package/dist/media-sources-MFBQDZNS.js +0 -32
  883. package/dist/members-HTHOAHPO.js +0 -44
  884. package/dist/meta-RAVCXVZA.js +0 -69
  885. package/dist/metrics-2VB46SDT.js +0 -152
  886. package/dist/models-TYRVCPS2.js +0 -155
  887. package/dist/normalize-PVOL256M.js +0 -141
  888. package/dist/normalize-Q7EN7JIF.js +0 -806
  889. package/dist/options-VDTCTJHY.js +0 -122
  890. package/dist/organization-VC5RO4FS.js +0 -328
  891. package/dist/output-NHMCVVUU.js +0 -24
  892. package/dist/page-5PCVZ7HS.js +0 -105
  893. package/dist/pages-DDXB4NQ4.js +0 -66
  894. package/dist/performance-QOQTL4XM.js +0 -24
  895. package/dist/pinterest-KQYSCTVQ.js +0 -96
  896. package/dist/pixels-GH522EYV.js +0 -108
  897. package/dist/pixels-HJYPX6RR.js +0 -60
  898. package/dist/plan-ZS7SOXL6.js +0 -207
  899. package/dist/preview-W4VKXOCT.js +0 -169
  900. package/dist/profile-FSB4RT55.js +0 -159
  901. package/dist/promoted-tweet-writes-6PI2KR65.js +0 -180
  902. package/dist/promoted-tweets-UJRNHKKO.js +0 -119
  903. package/dist/properties-V74I56UK.js +0 -101
  904. package/dist/publish-R6RINQCF.js +0 -322
  905. package/dist/publish-R6RINQCF.js.map +0 -1
  906. package/dist/query-5F5MBR7H.js +0 -247
  907. package/dist/query-KBXZD4SW.js +0 -61
  908. package/dist/query-SFNCXH4H.js +0 -236
  909. package/dist/questionnaire-JK5JLQXK.js +0 -93
  910. package/dist/read-LGRFU7XB.js +0 -141
  911. package/dist/reddit-QWM5ZQ6P.js +0 -26
  912. package/dist/refresh-ZPF7UH3S.js +0 -94
  913. package/dist/release-BZPK2P3R.js +0 -60
  914. package/dist/relevant-pages-VMNEEEJK.js +0 -99
  915. package/dist/remove-C7ZJYFCG.js +0 -50
  916. package/dist/remove-PIHTPIHM.js +0 -48
  917. package/dist/reopen-6Q7NQX2C.js +0 -63
  918. package/dist/rerun-VRZVJDYS.js +0 -84
  919. package/dist/rerun-VRZVJDYS.js.map +0 -1
  920. package/dist/research-FXQ6X7BY.js +0 -62
  921. package/dist/research-X6O7IID6.js +0 -262
  922. package/dist/reset-FRNQUCL5.js +0 -54
  923. package/dist/reset-NXK6NCOO.js +0 -54
  924. package/dist/resolve-WHI4UP4V.js +0 -121
  925. package/dist/retry-VSFPEXLE.js +0 -62
  926. package/dist/retry-XMTYWCFA.js +0 -60
  927. package/dist/retry-failed-XTYV3QJS.js +0 -45
  928. package/dist/run-HBNAA56X.js +0 -59
  929. package/dist/run-TAASFDQ7.js +0 -66
  930. package/dist/scaffold-ad-BV5WK4IA.js +0 -1548
  931. package/dist/scaffold-ad-BV5WK4IA.js.map +0 -1
  932. package/dist/scaffold-static-ad-IWNJ6GM7.js +0 -971
  933. package/dist/scaffold-static-ad-IWNJ6GM7.js.map +0 -1
  934. package/dist/scaffold-video-JBG7Q45T.js +0 -872
  935. package/dist/scaffold-video-JBG7Q45T.js.map +0 -1
  936. package/dist/schedule-P6GVRZ4E.js +0 -61
  937. package/dist/schedule-WSO7ETS6.js +0 -66
  938. package/dist/scheduled-agents-TYT5BIBQ.js +0 -50
  939. package/dist/schema-DL34A626.js +0 -69
  940. package/dist/schema-O4CMQQGD.js +0 -132
  941. package/dist/scrape-ZG2OWZL4.js +0 -2241
  942. package/dist/screenshot-GJUY7FCW.js +0 -102
  943. package/dist/search-2BJ4OLMX.js +0 -224
  944. package/dist/search-52CSDYJS.js +0 -91
  945. package/dist/search-FHSQYZOC.js +0 -92
  946. package/dist/search-HBFAHH4W.js +0 -174
  947. package/dist/search-ZAY2QV3Y.js +0 -26
  948. package/dist/search-copy-O5AOEBXC.js +0 -168
  949. package/dist/seeds-XY3EZ33U.js +0 -101
  950. package/dist/select-ISR6YEIE.js +0 -94
  951. package/dist/select-ISR6YEIE.js.map +0 -1
  952. package/dist/sends-GECHL3NK.js +0 -309
  953. package/dist/sequences-5BB4S63A.js +0 -146
  954. package/dist/set-prompt-DF7Q6WOF.js +0 -185
  955. package/dist/set-prompt-DF7Q6WOF.js.map +0 -1
  956. package/dist/setup-links-GF2IP4TH.js +0 -141
  957. package/dist/shared-JDIL3BNQ.js +0 -31
  958. package/dist/site-T6V5S5DJ.js +0 -177
  959. package/dist/sitemaps-UQJFRA2W.js +0 -87
  960. package/dist/sites-ZNNEPEGI.js +0 -101
  961. package/dist/skills-WRKEF2Q4.js +0 -47
  962. package/dist/sources-5YUE7KUI.js +0 -30
  963. package/dist/sources-UR3SLKVK.js +0 -454
  964. package/dist/stale-6LZAROBI.js +0 -63
  965. package/dist/stale-6LZAROBI.js.map +0 -1
  966. package/dist/stats-QFBTSDVV.js +0 -34
  967. package/dist/status-FDKP65DR.js +0 -62
  968. package/dist/sticker-2JQUC7XO.js +0 -94
  969. package/dist/stock-W3SNJCBV.js +0 -179
  970. package/dist/studio-2GAZ6QOH.js +0 -49
  971. package/dist/sync-4LHVBFMZ.js +0 -265
  972. package/dist/sync-NAJQQ6NQ.js +0 -54
  973. package/dist/sync-OGFGTKUK.js +0 -54
  974. package/dist/sync-definition-MSQFCXRK.js +0 -54
  975. package/dist/tag-manager-MNGOJ3GC.js +0 -43
  976. package/dist/tags-67KLYTJF.js +0 -224
  977. package/dist/tags-GLHFHQW2.js +0 -20
  978. package/dist/tags-PYLVQEVS.js +0 -20
  979. package/dist/tags-SL4F3LLY.js +0 -20
  980. package/dist/tags-XMRO4WF6.js +0 -26
  981. package/dist/targeting-constants-RQT4GLUA.js +0 -118
  982. package/dist/targeting-criteria-VK3IR6N2.js +0 -113
  983. package/dist/targets-RCM2ZXSU.js +0 -103
  984. package/dist/testimonials-KTHDZ3R5.js +0 -32
  985. package/dist/themes-VVID6Y73.js +0 -94
  986. package/dist/top-companies-MBTTJTRK.js +0 -108
  987. package/dist/translate-I6LZ3UZU.js +0 -598
  988. package/dist/translate-I6LZ3UZU.js.map +0 -1
  989. package/dist/triggers-PDIVJDLP.js +0 -142
  990. package/dist/tweets-L4CXZLKQ.js +0 -123
  991. package/dist/unfollow-5T2CT3EF.js +0 -46
  992. package/dist/unlink-IHEFAFG6.js +0 -67
  993. package/dist/unstage-NEX3EIJX.js +0 -95
  994. package/dist/unstage-NJQAIIPT.js +0 -85
  995. package/dist/update-CYQIGHT4.js +0 -98
  996. package/dist/update-K5MMOE5N.js +0 -155
  997. package/dist/update-K5MMOE5N.js.map +0 -1
  998. package/dist/update-LR7UW5LL.js +0 -63
  999. package/dist/update-P5BTLCGG.js +0 -152
  1000. package/dist/upload-C2K66PR3.js +0 -150
  1001. package/dist/upload-VVB2LTD2.js +0 -126
  1002. package/dist/upscale-SGBB4GWF.js +0 -109
  1003. package/dist/url-options-LUKI4Y46.js +0 -130
  1004. package/dist/url-params-MSRUZOGT.js +0 -98
  1005. package/dist/use-XGTUHBUL.js +0 -95
  1006. package/dist/validate-XMEHRCAG.js +0 -88
  1007. package/dist/validate-XMEHRCAG.js.map +0 -1
  1008. package/dist/variant-DQRDW6IZ.js +0 -338
  1009. package/dist/videos-EQG7AAXT.js +0 -39
  1010. package/dist/view-KJ6YNRXB.js +0 -121
  1011. package/dist/viewer-check-7DZQDGD3.js +0 -68
  1012. package/dist/web-MSYXLOFV.js +0 -140
  1013. package/dist/winners-LD6PFXAS.js +0 -113
  1014. package/dist/winning-ads-VWBU3BNQ.js +0 -84
  1015. package/dist/write-commands-CKMHQ4YY.js +0 -737
  1016. package/dist/write-commands-NW5CC3DP.js +0 -206
  1017. package/dist/write-commands-PK23JVW3.js +0 -1015
  1018. package/dist/write-commands-RLEYECTB.js +0 -713
  1019. package/dist/x-ZSTQLK6Q.js +0 -47
  1020. /package/dist/{account-63NUWSXK.js.map → account-7LUQWY6Q.js.map} +0 -0
  1021. /package/dist/{account-NCX3VHZT.js.map → account-VH2AATWI.js.map} +0 -0
  1022. /package/dist/{account-IFB6V6GL.js.map → account-Z65CPOWE.js.map} +0 -0
  1023. /package/dist/{account-reads-Y3T65EI4.js.map → account-reads-GYI2SS6T.js.map} +0 -0
  1024. /package/dist/{account-writes-7YZ7PTHF.js.map → account-writes-4N2MA2ZR.js.map} +0 -0
  1025. /package/dist/{accounts-T5DCHHZK.js.map → accounts-E4TVYTUR.js.map} +0 -0
  1026. /package/dist/{accounts-66KZC7QI.js.map → accounts-SMB3TNXX.js.map} +0 -0
  1027. /package/dist/{accounts-MQIYTIAX.js.map → accounts-SPLE7URQ.js.map} +0 -0
  1028. /package/dist/{accounts-MVEZ2TRL.js.map → accounts-UA2ZWRN4.js.map} +0 -0
  1029. /package/dist/{accounts-2MQVGI4I.js.map → accounts-XG472YLB.js.map} +0 -0
  1030. /package/dist/{actions-LRSHHDV2.js.map → actions-KQTXBNJU.js.map} +0 -0
  1031. /package/dist/{active-entities-QWPGPNGE.js.map → active-entities-MCL7UEGV.js.map} +0 -0
  1032. /package/dist/{activecampaign-G4XARU6N.js.map → activecampaign-42JXANUA.js.map} +0 -0
  1033. /package/dist/{activities-FN7DOE5S.js.map → activities-IQPJPP4B.js.map} +0 -0
  1034. /package/dist/{ad-group-writes-JSOCSYYV.js.map → ad-group-writes-EUTMPBMK.js.map} +0 -0
  1035. /package/dist/{ad-groups-UN52WNJN.js.map → ad-groups-OVPAI5RM.js.map} +0 -0
  1036. /package/dist/{ad-writes-X23H4HLZ.js.map → ad-writes-DACTYFEO.js.map} +0 -0
  1037. /package/dist/{add-ZTXN775K.js.map → add-5IGUQHVZ.js.map} +0 -0
  1038. /package/dist/{add-7EKI6ZA4.js.map → add-BK5AQI5A.js.map} +0 -0
  1039. /package/dist/{add-ZP47HVHW.js.map → add-C3FQ5D62.js.map} +0 -0
  1040. /package/dist/{add-2MVZQJYG.js.map → add-KTEJCE4L.js.map} +0 -0
  1041. /package/dist/{add-accounts-PEJLMYWR.js.map → add-accounts-CJSV5NPL.js.map} +0 -0
  1042. /package/dist/{ads-MKMWS36P.js.map → ads-HXX2IAFF.js.map} +0 -0
  1043. /package/dist/{ads-NEJKXB4L.js.map → ads-L65JIKCD.js.map} +0 -0
  1044. /package/dist/{ads-FOJ6P4OA.js.map → ads-RAUM6ISF.js.map} +0 -0
  1045. /package/dist/{ads-7YYCWZIR.js.map → ads-WPI3AMSR.js.map} +0 -0
  1046. /package/dist/{adsets-TIHFYWOU.js.map → adsets-LPN6WFGF.js.map} +0 -0
  1047. /package/dist/{advertisers-246ZLRFZ.js.map → advertisers-36HP3AOE.js.map} +0 -0
  1048. /package/dist/{advertisers-E77XAYCQ.js.map → advertisers-DS2NRWKI.js.map} +0 -0
  1049. /package/dist/{analytics-SL56NTIV.js.map → analytics-I4LZCRG2.js.map} +0 -0
  1050. /package/dist/{analytics-WPYPKM6L.js.map → analytics-IFNBT7IM.js.map} +0 -0
  1051. /package/dist/{animate-3H3TL3N6.js.map → animate-3LV3LHXQ.js.map} +0 -0
  1052. /package/dist/{assign-WGQVY3DW.js.map → assign-WBLSZNCO.js.map} +0 -0
  1053. /package/dist/{audiences-GHMNXDPR.js.map → audiences-3LRCLHTQ.js.map} +0 -0
  1054. /package/dist/{audiences-BWDG2R2U.js.map → audiences-RPLVMO4H.js.map} +0 -0
  1055. /package/dist/{audiences-Q7OCAMAQ.js.map → audiences-XEZHACKH.js.map} +0 -0
  1056. /package/dist/{audit-LGD4PMAI.js.map → audit-6AG6BPXQ.js.map} +0 -0
  1057. /package/dist/{audit-HG53XQJK.js.map → audit-YEGQU474.js.map} +0 -0
  1058. /package/dist/{autocomplete-PD2EMWRU.js.map → autocomplete-2QRU7ARD.js.map} +0 -0
  1059. /package/dist/{avatars-U5KAMVNV.js.map → avatars-EIETXCF3.js.map} +0 -0
  1060. /package/dist/{brand-2JJ45TBO.js.map → brand-CINQG3JG.js.map} +0 -0
  1061. /package/dist/{businesses-24QYU6BL.js.map → businesses-PRRYPR7H.js.map} +0 -0
  1062. /package/dist/{campaign-groups-ZXRHEEGS.js.map → campaign-groups-5CMTEJZZ.js.map} +0 -0
  1063. /package/dist/{campaign-writes-WIBYW73K.js.map → campaign-writes-4RMPHQCT.js.map} +0 -0
  1064. /package/dist/{campaign-writes-7UHMSPJ3.js.map → campaign-writes-U5LTDTYK.js.map} +0 -0
  1065. /package/dist/{campaigns-WTZBLGVX.js.map → campaigns-4SOLY7OR.js.map} +0 -0
  1066. /package/dist/{campaigns-CRRLTN74.js.map → campaigns-NFRLFNXI.js.map} +0 -0
  1067. /package/dist/{campaigns-EY3AR4N7.js.map → campaigns-PC7UAVXR.js.map} +0 -0
  1068. /package/dist/{campaigns-DJV4W6UP.js.map → campaigns-TFEQTSO3.js.map} +0 -0
  1069. /package/dist/{canvas-WFYKZYZD.js.map → canvas-BPACZHNU.js.map} +0 -0
  1070. /package/dist/{capabilities-IGKT7D4H.js.map → capabilities-FNVTPCDT.js.map} +0 -0
  1071. /package/dist/{cards-IO2Q423H.js.map → cards-WHMCSRZX.js.map} +0 -0
  1072. /package/dist/{catalogs-2HT3VRRI.js.map → catalogs-A7XMEEEP.js.map} +0 -0
  1073. /package/dist/{changes-AZ6EUVFN.js.map → changes-J67WATHX.js.map} +0 -0
  1074. /package/dist/{chatgpt-M27OEM7J.js.map → chatgpt-4PEWDJKP.js.map} +0 -0
  1075. /package/dist/{chats-OXIYXI4U.js.map → chats-S5FCV7YO.js.map} +0 -0
  1076. /package/dist/{chunk-VDAYKWVH.js.map → chunk-232YUPUI.js.map} +0 -0
  1077. /package/dist/{chunk-ANWV2VTO.js.map → chunk-23H4ZJRP.js.map} +0 -0
  1078. /package/dist/{chunk-QNH5NCLM.js.map → chunk-3OCSWUHV.js.map} +0 -0
  1079. /package/dist/{chunk-BPPT7YVK.js.map → chunk-3UXMQ3K2.js.map} +0 -0
  1080. /package/dist/{chunk-HH5PFZ7U.js.map → chunk-5WMTPYKT.js.map} +0 -0
  1081. /package/dist/{chunk-U6RTBCU7.js.map → chunk-65N4ZPQD.js.map} +0 -0
  1082. /package/dist/{chunk-UDG37PC2.js.map → chunk-6JWEGFM5.js.map} +0 -0
  1083. /package/dist/{chunk-PWABS2DB.js.map → chunk-7RBJ2Z7Z.js.map} +0 -0
  1084. /package/dist/{chunk-JU6X4XFU.js.map → chunk-ABXTGAG7.js.map} +0 -0
  1085. /package/dist/{chunk-7MADMR5U.js.map → chunk-ADSNY4KZ.js.map} +0 -0
  1086. /package/dist/{chunk-2SQ6ISRI.js.map → chunk-AHF6TQWB.js.map} +0 -0
  1087. /package/dist/{chunk-RKPSE27R.js.map → chunk-AQ5WISEG.js.map} +0 -0
  1088. /package/dist/{chunk-EQ74MEJN.js.map → chunk-BFRIRZRZ.js.map} +0 -0
  1089. /package/dist/{chunk-WOTX7TNV.js.map → chunk-BFZS3WHS.js.map} +0 -0
  1090. /package/dist/{chunk-NFSLRRIE.js.map → chunk-BITS62MF.js.map} +0 -0
  1091. /package/dist/{chunk-JRLGQA2T.js.map → chunk-BLAHHMPF.js.map} +0 -0
  1092. /package/dist/{chunk-NHQTEQPR.js.map → chunk-CCIDHU6M.js.map} +0 -0
  1093. /package/dist/{chunk-EMPXRKIM.js.map → chunk-CM6FCSWN.js.map} +0 -0
  1094. /package/dist/{chunk-CPTOHQSJ.js.map → chunk-CVBKW75S.js.map} +0 -0
  1095. /package/dist/{chunk-TLQQV5AY.js.map → chunk-CXQRTLSQ.js.map} +0 -0
  1096. /package/dist/{chunk-4EPGI6I2.js.map → chunk-D4LKZJYJ.js.map} +0 -0
  1097. /package/dist/{chunk-D5GVSJBK.js.map → chunk-D7KR6KXR.js.map} +0 -0
  1098. /package/dist/{chunk-SOK7U4NT.js.map → chunk-DCTEL4KG.js.map} +0 -0
  1099. /package/dist/{chunk-GRYP7Y5V.js.map → chunk-DH5CKOYK.js.map} +0 -0
  1100. /package/dist/{chunk-H4DAEWJQ.js.map → chunk-DQC4NIJE.js.map} +0 -0
  1101. /package/dist/{chunk-UW7PZFWZ.js.map → chunk-DWX44QL6.js.map} +0 -0
  1102. /package/dist/{chunk-H5CGVMQW.js.map → chunk-EE72SSB2.js.map} +0 -0
  1103. /package/dist/{chunk-QKUBK3AD.js.map → chunk-FNA277HP.js.map} +0 -0
  1104. /package/dist/{chunk-CLST7PLN.js.map → chunk-FU7HJWGM.js.map} +0 -0
  1105. /package/dist/{chunk-VY5CTURR.js.map → chunk-GDLQ6SGW.js.map} +0 -0
  1106. /package/dist/{chunk-LPBLKGH7.js.map → chunk-GEKXIXMG.js.map} +0 -0
  1107. /package/dist/{chunk-QNLWBJUR.js.map → chunk-GLW7UJLB.js.map} +0 -0
  1108. /package/dist/{chunk-5HABWBQX.js.map → chunk-H5HDZ7IC.js.map} +0 -0
  1109. /package/dist/{chunk-MUHPBWE5.js.map → chunk-I5VZVQBZ.js.map} +0 -0
  1110. /package/dist/{chunk-HDQBILJR.js.map → chunk-IC6SDOED.js.map} +0 -0
  1111. /package/dist/{chunk-QBCPZFAV.js.map → chunk-IG627WWY.js.map} +0 -0
  1112. /package/dist/{chunk-BWAFZSZ4.js.map → chunk-IN4G7X6W.js.map} +0 -0
  1113. /package/dist/{chunk-5ADTL2LR.js.map → chunk-IPLE5K5E.js.map} +0 -0
  1114. /package/dist/{chunk-SBN5UIQY.js.map → chunk-IWWOGBGA.js.map} +0 -0
  1115. /package/dist/{chunk-R4CDO5YH.js.map → chunk-JFA4R3KS.js.map} +0 -0
  1116. /package/dist/{chunk-LOTQBFUP.js.map → chunk-JYBLCIRN.js.map} +0 -0
  1117. /package/dist/{chunk-O6VUX3O5.js.map → chunk-K3TNTBZJ.js.map} +0 -0
  1118. /package/dist/{chunk-FDPBTKXZ.js.map → chunk-LCW3U4EA.js.map} +0 -0
  1119. /package/dist/{chunk-RJFM6TJC.js.map → chunk-MI3JB5KB.js.map} +0 -0
  1120. /package/dist/{chunk-PXTFT35U.js.map → chunk-MIOOPOG2.js.map} +0 -0
  1121. /package/dist/{chunk-EBC64WAG.js.map → chunk-MJQBXFW6.js.map} +0 -0
  1122. /package/dist/{chunk-ETFAIX4L.js.map → chunk-MPACDBH5.js.map} +0 -0
  1123. /package/dist/{chunk-AQYH6C32.js.map → chunk-MXWOYFI2.js.map} +0 -0
  1124. /package/dist/{chunk-KODTY7PB.js.map → chunk-N5O67GK5.js.map} +0 -0
  1125. /package/dist/{chunk-4LODOBIN.js.map → chunk-NCP6RD6A.js.map} +0 -0
  1126. /package/dist/{chunk-D5Z34AYL.js.map → chunk-NNF4RARY.js.map} +0 -0
  1127. /package/dist/{chunk-LKM3FMYC.js.map → chunk-NR2OVOTD.js.map} +0 -0
  1128. /package/dist/{chunk-UARL36OD.js.map → chunk-NVGXYF6K.js.map} +0 -0
  1129. /package/dist/{chunk-AQADZOTG.js.map → chunk-OP7DNHD2.js.map} +0 -0
  1130. /package/dist/{chunk-3UA4THEF.js.map → chunk-ORQKMXHA.js.map} +0 -0
  1131. /package/dist/{chunk-TWXM7HVR.js.map → chunk-P3TNRS56.js.map} +0 -0
  1132. /package/dist/{chunk-WE6K2VVZ.js.map → chunk-Q7YZL7PG.js.map} +0 -0
  1133. /package/dist/{chunk-LEGVJCL4.js.map → chunk-QABSQADZ.js.map} +0 -0
  1134. /package/dist/{chunk-37P6DTDJ.js.map → chunk-R2TAVQGZ.js.map} +0 -0
  1135. /package/dist/{chunk-JQ4PQ2H6.js.map → chunk-R5WNYLG4.js.map} +0 -0
  1136. /package/dist/{chunk-QGWCBGEC.js.map → chunk-RD2XXQW3.js.map} +0 -0
  1137. /package/dist/{chunk-MICLDQES.js.map → chunk-RMLJNHCU.js.map} +0 -0
  1138. /package/dist/{chunk-BODRDUYQ.js.map → chunk-S7A34DOA.js.map} +0 -0
  1139. /package/dist/{chunk-26HCUIW2.js.map → chunk-SFJW2KED.js.map} +0 -0
  1140. /package/dist/{chunk-6YZNHMPJ.js.map → chunk-SOKVXKRM.js.map} +0 -0
  1141. /package/dist/{chunk-CIWI7LHO.js.map → chunk-STNCMKL6.js.map} +0 -0
  1142. /package/dist/{chunk-AAF7HL4I.js.map → chunk-SWL4AAPP.js.map} +0 -0
  1143. /package/dist/{chunk-7WZHO6W3.js.map → chunk-ULPO72IQ.js.map} +0 -0
  1144. /package/dist/{chunk-CU2DEMQB.js.map → chunk-UMZIQIWN.js.map} +0 -0
  1145. /package/dist/{chunk-RCMK4FM2.js.map → chunk-V7N666PJ.js.map} +0 -0
  1146. /package/dist/{chunk-UMFKMS4U.js.map → chunk-WNJ5SYAG.js.map} +0 -0
  1147. /package/dist/{chunk-ANYMWCST.js.map → chunk-WNSE7N75.js.map} +0 -0
  1148. /package/dist/{chunk-7ANWFQEA.js.map → chunk-XDZVBX6L.js.map} +0 -0
  1149. /package/dist/{chunk-NRRNY3TZ.js.map → chunk-XGOEX2VJ.js.map} +0 -0
  1150. /package/dist/{chunk-TOIFDXCW.js.map → chunk-XUB2EK65.js.map} +0 -0
  1151. /package/dist/{chunk-XKA4ZHGX.js.map → chunk-XUR4QWCS.js.map} +0 -0
  1152. /package/dist/{chunk-XWB2L3HS.js.map → chunk-XZ4YMCZK.js.map} +0 -0
  1153. /package/dist/{chunk-HKR7VCFK.js.map → chunk-Y3VRMFGF.js.map} +0 -0
  1154. /package/dist/{chunk-F3VR6CTH.js.map → chunk-YD7BQDJ6.js.map} +0 -0
  1155. /package/dist/{claim-DEQYWQZ4.js.map → claim-6MPQD43X.js.map} +0 -0
  1156. /package/dist/{client-TL7BITWM.js.map → client-WL2FKW4T.js.map} +0 -0
  1157. /package/dist/{code-ORY2WROG.js.map → code-NXN7QYKU.js.map} +0 -0
  1158. /package/dist/{companies-QM5MOLIZ.js.map → companies-KRF2K4CA.js.map} +0 -0
  1159. /package/dist/{complete-FM6VSFCT.js.map → complete-V433ON5C.js.map} +0 -0
  1160. /package/dist/{config-FMDQ323H.js.map → config-VOF57KBL.js.map} +0 -0
  1161. /package/dist/{connect-YTIE5PRU.js.map → connect-QVIAM3GX.js.map} +0 -0
  1162. /package/dist/{content-ZQB6PXGX.js.map → content-KA25YYO3.js.map} +0 -0
  1163. /package/dist/{conversation-VKWYWPB6.js.map → conversation-VZKBZZGG.js.map} +0 -0
  1164. /package/dist/{conversion-report-U4UFXSD2.js.map → conversion-report-REOHVLCI.js.map} +0 -0
  1165. /package/dist/{conversion-upload-command-INQX73AK.js.map → conversion-upload-command-ASHA6T6H.js.map} +0 -0
  1166. /package/dist/{conversion-writes-MCKROLRA.js.map → conversion-writes-JU7Q2MUO.js.map} +0 -0
  1167. /package/dist/{conversions-OPNDVQ56.js.map → conversions-3ISBR3TS.js.map} +0 -0
  1168. /package/dist/{conversions-QILFJ34A.js.map → conversions-ZLC6YTJ5.js.map} +0 -0
  1169. /package/dist/{countries-AZ3XSZVM.js.map → countries-XGMZWUGP.js.map} +0 -0
  1170. /package/dist/{create-C4LTWKD7.js.map → create-B3QMYSIX.js.map} +0 -0
  1171. /package/dist/{create-A7O5CBUS.js.map → create-IFCCMKFT.js.map} +0 -0
  1172. /package/dist/{create-LRVA4MSV.js.map → create-R5P6JU5A.js.map} +0 -0
  1173. /package/dist/{create-BEH3DUUP.js.map → create-SF6DOGDJ.js.map} +0 -0
  1174. /package/dist/{creatives-XEKEYLNV.js.map → creatives-KD7MOCR3.js.map} +0 -0
  1175. /package/dist/{creatives-43I65CHD.js.map → creatives-YJ3CXZQC.js.map} +0 -0
  1176. /package/dist/{credentials-GJMH4XRU.js.map → credentials-2KJUKBMF.js.map} +0 -0
  1177. /package/dist/{crm-WHK3PL6S.js.map → crm-GX72E2LT.js.map} +0 -0
  1178. /package/dist/{crm-ECMEYPQT.js.map → crm-ZYDNEME5.js.map} +0 -0
  1179. /package/dist/{crop-Q2GJLOHE.js.map → crop-7UTYG7GS.js.map} +0 -0
  1180. /package/dist/{currency-SVDR5N7L.js.map → currency-CGDI2NXI.js.map} +0 -0
  1181. /package/dist/{custom-conversions-5NJNPZKM.js.map → custom-conversions-YRYE65PU.js.map} +0 -0
  1182. /package/dist/{customers-XKE3DQR7.js.map → customers-P4N4NXLJ.js.map} +0 -0
  1183. /package/dist/{decide-PCJTFCWC.js.map → decide-TWKH5QQU.js.map} +0 -0
  1184. /package/dist/{delete-7K4KFPUT.js.map → delete-2GIIUPA3.js.map} +0 -0
  1185. /package/dist/{delete-APRR2OYC.js.map → delete-AK5IV44E.js.map} +0 -0
  1186. /package/dist/{delete-GOA4Y562.js.map → delete-GLLYPNNB.js.map} +0 -0
  1187. /package/dist/{delete-I2SIRTMZ.js.map → delete-J7DXPGKD.js.map} +0 -0
  1188. /package/dist/{delete-QCZUGDIJ.js.map → delete-RS7RQDUX.js.map} +0 -0
  1189. /package/dist/{delete-DTTEHY6E.js.map → delete-S4VKH7IS.js.map} +0 -0
  1190. /package/dist/{demographics-HG7NWA5U.js.map → demographics-IKWN2H3V.js.map} +0 -0
  1191. /package/dist/{describe-CRTFAH6Y.js.map → describe-5QCPRSIG.js.map} +0 -0
  1192. /package/dist/{describe-OAB2FJYK.js.map → describe-L3UC6MIL.js.map} +0 -0
  1193. /package/dist/{dimensions-PFGHRZ5T.js.map → dimensions-POH4JXEM.js.map} +0 -0
  1194. /package/dist/{discard-U3DW6WV3.js.map → discard-H6DOHJRG.js.map} +0 -0
  1195. /package/dist/{discover-IOJZYJ6B.js.map → discover-L4TPEKGY.js.map} +0 -0
  1196. /package/dist/{discover-R3EUUGRZ.js.map → discover-XAJKZCMM.js.map} +0 -0
  1197. /package/dist/{domain-HTF3ARBJ.js.map → domain-US4KKAXC.js.map} +0 -0
  1198. /package/dist/{download-2HGDCPR7.js.map → download-N4J5WFHD.js.map} +0 -0
  1199. /package/dist/{draft-5RL6HZ6A.js.map → draft-BIQ3ZAYW.js.map} +0 -0
  1200. /package/dist/{draft-3KLT2YHI.js.map → draft-EWDOIXSH.js.map} +0 -0
  1201. /package/dist/{draft-PQGTIABK.js.map → draft-IL37WDST.js.map} +0 -0
  1202. /package/dist/{draft-SRMHEIRG.js.map → draft-IZ4YLQRD.js.map} +0 -0
  1203. /package/dist/{draft-7O4ABIKK.js.map → draft-KDMYGLWN.js.map} +0 -0
  1204. /package/dist/{draft-KTOZ2AT7.js.map → draft-OLFQZBWL.js.map} +0 -0
  1205. /package/dist/{draft-GPL2TZXA.js.map → draft-R32RFDCI.js.map} +0 -0
  1206. /package/dist/{draft-DK4NZ6PW.js.map → draft-Y2QJE2NM.js.map} +0 -0
  1207. /package/dist/{env-NPSYSFXD.js.map → env-5MUVYE2L.js.map} +0 -0
  1208. /package/dist/{experiment-V57PLATO.js.map → experiment-G3FQVAJU.js.map} +0 -0
  1209. /package/dist/{export-UN2PTCNO.js.map → export-OLDI32HM.js.map} +0 -0
  1210. /package/dist/{extract-5JOFQZVU.js.map → extract-PPS6ONQN.js.map} +0 -0
  1211. /package/dist/{facets-2XQEJNZZ.js.map → facets-JBZQHN3D.js.map} +0 -0
  1212. /package/dist/{favorites-4AWW5F5B.js.map → favorites-4ELADD3R.js.map} +0 -0
  1213. /package/dist/{feed-AK3IFTAL.js.map → feed-XIY5TVDL.js.map} +0 -0
  1214. /package/dist/{fetch-VYIMA5BI.js.map → fetch-GOY6DQRL.js.map} +0 -0
  1215. /package/dist/{fetch-6ALLGDRN.js.map → fetch-YWUVDMUH.js.map} +0 -0
  1216. /package/dist/{find-22HWPRFY.js.map → find-EVY4XEIQ.js.map} +0 -0
  1217. /package/dist/{fit-S4RO2DMX.js.map → fit-TVQ7RK52.js.map} +0 -0
  1218. /package/dist/{flows-ITS573ST.js.map → flows-274YPU6I.js.map} +0 -0
  1219. /package/dist/{follow-IUW3P6KH.js.map → follow-ZTPZKIMZ.js.map} +0 -0
  1220. /package/dist/{follow-competitors-YDF5WM4K.js.map → follow-competitors-6QDVQ4VJ.js.map} +0 -0
  1221. /package/dist/{following-PNOYUSHX.js.map → following-PBZLZFGQ.js.map} +0 -0
  1222. /package/dist/{fonts-U4YXUNNZ.js.map → fonts-BMUNDGOZ.js.map} +0 -0
  1223. /package/dist/{forecast-NHG3UHOP.js.map → forecast-F2CZSIMP.js.map} +0 -0
  1224. /package/dist/{funding-WSJI56OH.js.map → funding-ULBMKUMW.js.map} +0 -0
  1225. /package/dist/{funnel-46QWG5DN.js.map → funnel-LEUXICXU.js.map} +0 -0
  1226. /package/dist/{ga4-4W3KJIS5.js.map → ga4-2BL5YAYN.js.map} +0 -0
  1227. /package/dist/{generate-3MC7WDL2.js.map → generate-4HWNFAH3.js.map} +0 -0
  1228. /package/dist/{get-P5ZTH7RQ.js.map → get-6RZU4M6W.js.map} +0 -0
  1229. /package/dist/{get-SR2NWOPT.js.map → get-7GCEJ6KG.js.map} +0 -0
  1230. /package/dist/{get-IAJ57JLM.js.map → get-MGDY5JYZ.js.map} +0 -0
  1231. /package/dist/{get-4DJXDO42.js.map → get-MZWUMHEF.js.map} +0 -0
  1232. /package/dist/{get-BK4MBGQF.js.map → get-OAZZHUZP.js.map} +0 -0
  1233. /package/dist/{get-PTOW6PVF.js.map → get-OHU2N7B7.js.map} +0 -0
  1234. /package/dist/{get-MVWVS3YT.js.map → get-TY6AMFI4.js.map} +0 -0
  1235. /package/dist/{google-EMSAXPVB.js.map → google-7STODZQR.js.map} +0 -0
  1236. /package/dist/{google-XE35SF3Z.js.map → google-ZTTE34A4.js.map} +0 -0
  1237. /package/dist/{google-ads-DYNDLOBO.js.map → google-ads-5ARKO757.js.map} +0 -0
  1238. /package/dist/{group-MBRA2QID.js.map → group-D5WXNFCP.js.map} +0 -0
  1239. /package/dist/{group-EUYJJ4LI.js.map → group-Y5PLETFT.js.map} +0 -0
  1240. /package/dist/{gsc-B3NPUNI6.js.map → gsc-UU3T2C6B.js.map} +0 -0
  1241. /package/dist/{history-4S3YEIPK.js.map → history-IQ33J5PB.js.map} +0 -0
  1242. /package/dist/{history-7HFGP7UI.js.map → history-SU7VQCDJ.js.map} +0 -0
  1243. /package/dist/{hubspot-3LWMILTD.js.map → hubspot-TJED44GO.js.map} +0 -0
  1244. /package/dist/{icon-4DAXBICB.js.map → icon-GB7UH5RF.js.map} +0 -0
  1245. /package/dist/{ideas-RHOV2ZJ6.js.map → ideas-UTSCGCT6.js.map} +0 -0
  1246. /package/dist/{improve-U2RA5DPI.js.map → improve-U5USRH4G.js.map} +0 -0
  1247. /package/dist/{ingest-H4F5TJC3.js.map → ingest-DGDNZWEM.js.map} +0 -0
  1248. /package/dist/{ingest-URYQ7BTL.js.map → ingest-SGBJ3NXX.js.map} +0 -0
  1249. /package/dist/{insights-HQGBM6VA.js.map → insights-4HT2NAYP.js.map} +0 -0
  1250. /package/dist/{insights-K2CMI3K5.js.map → insights-SQLE5NOJ.js.map} +0 -0
  1251. /package/dist/{inspect-IPQTTZK3.js.map → inspect-BMQTTKMW.js.map} +0 -0
  1252. /package/dist/{inspiration-TRMFE64K.js.map → inspiration-XQYHBJY2.js.map} +0 -0
  1253. /package/dist/{intent-2EWV4KXW.js.map → intent-LM36WK45.js.map} +0 -0
  1254. /package/dist/{job-7GDSDRM4.js.map → job-CGQHEANB.js.map} +0 -0
  1255. /package/dist/{job-create-PE7G64WC.js.map → job-create-SZYJT2NC.js.map} +0 -0
  1256. /package/dist/{job-status-LUSCFLZ2.js.map → job-status-6LAKLCKH.js.map} +0 -0
  1257. /package/dist/{keep-5NFHEILH.js.map → keep-3MJSHWU3.js.map} +0 -0
  1258. /package/dist/{keyword-gap-T22T7RN6.js.map → keyword-gap-P652ODHN.js.map} +0 -0
  1259. /package/dist/{keyword-metrics-SLCXHPZS.js.map → keyword-metrics-MQLGGJBT.js.map} +0 -0
  1260. /package/dist/{keywords-for-site-HBQSJKNN.js.map → keywords-for-site-JL6H2YGU.js.map} +0 -0
  1261. /package/dist/{landing-PJJGQM3M.js.map → landing-AJO2BPC2.js.map} +0 -0
  1262. /package/dist/{landings-ZR4YMEPV.js.map → landings-ZLKUP66P.js.map} +0 -0
  1263. /package/dist/{languages-HXAZNLNU.js.map → languages-3IJVDS5Z.js.map} +0 -0
  1264. /package/dist/{languages-VLMJOAJN.js.map → languages-HL42MI7H.js.map} +0 -0
  1265. /package/dist/{launches-T5LAIOYS.js.map → launches-RG2SWEXM.js.map} +0 -0
  1266. /package/dist/{layerize-24PQKKPB.js.map → layerize-SJYK6HPD.js.map} +0 -0
  1267. /package/dist/{leads-EDKSVSWP.js.map → leads-2XOSAYP4.js.map} +0 -0
  1268. /package/dist/{leads-HXYLSNMB.js.map → leads-H6JIWVI6.js.map} +0 -0
  1269. /package/dist/{library-ZHREUZMU.js.map → library-Q4OU7VR7.js.map} +0 -0
  1270. /package/dist/{lighthouse-E2NTHAO4.js.map → lighthouse-FALRSVQH.js.map} +0 -0
  1271. /package/dist/{line-item-writes-JNHZFCRM.js.map → line-item-writes-V7AKAHFC.js.map} +0 -0
  1272. /package/dist/{line-items-WGLNILMH.js.map → line-items-GAMKVVIQ.js.map} +0 -0
  1273. /package/dist/{link-KLFRRU24.js.map → link-Z5AQP6JN.js.map} +0 -0
  1274. /package/dist/{list-TG6LBHCV.js.map → list-2ZTOMTES.js.map} +0 -0
  1275. /package/dist/{list-E7CJMIGC.js.map → list-GK6LNWIW.js.map} +0 -0
  1276. /package/dist/{list-E3MCY43O.js.map → list-NLGM3QDP.js.map} +0 -0
  1277. /package/dist/{list-37F6C6P5.js.map → list-RR53EF3O.js.map} +0 -0
  1278. /package/dist/{list-MIGWTOQU.js.map → list-SZH6TH74.js.map} +0 -0
  1279. /package/dist/{list-HA2NITR3.js.map → list-TB677Q2F.js.map} +0 -0
  1280. /package/dist/{list-7EEDCI3T.js.map → list-VTVRZIYL.js.map} +0 -0
  1281. /package/dist/{list-SW3DF473.js.map → list-XZVQWIJN.js.map} +0 -0
  1282. /package/dist/{locations-ZWTDUUGL.js.map → locations-AEGZ36JH.js.map} +0 -0
  1283. /package/dist/{locations-VYIDAVD4.js.map → locations-YA7NZY44.js.map} +0 -0
  1284. /package/dist/{log-Y4NIMHFD.js.map → log-JM4VLJE4.js.map} +0 -0
  1285. /package/dist/{logo-SHQJHJK7.js.map → logo-YSNUUT33.js.map} +0 -0
  1286. /package/dist/{lookup-TWSJ7KRT.js.map → lookup-RH5N3OWJ.js.map} +0 -0
  1287. /package/dist/{map-DHQTEDUH.js.map → map-HRLUMCR2.js.map} +0 -0
  1288. /package/dist/{mcp-ZHASO273.js.map → mcp-T6SAG4XB.js.map} +0 -0
  1289. /package/dist/{media-LDVWXWWZ.js.map → media-ES2UBGYW.js.map} +0 -0
  1290. /package/dist/{media-TNB4DLTJ.js.map → media-MPXEXN4O.js.map} +0 -0
  1291. /package/dist/{media-sources-MFBQDZNS.js.map → media-sources-7AS3274L.js.map} +0 -0
  1292. /package/dist/{members-HTHOAHPO.js.map → members-J5KWXTXY.js.map} +0 -0
  1293. /package/dist/{meta-RAVCXVZA.js.map → meta-AOIPEDV5.js.map} +0 -0
  1294. /package/dist/{metrics-2VB46SDT.js.map → metrics-VDBJ6KL7.js.map} +0 -0
  1295. /package/dist/{models-TYRVCPS2.js.map → models-2DQ5NBMT.js.map} +0 -0
  1296. /package/dist/{normalize-PVOL256M.js.map → normalize-CHZB4QDD.js.map} +0 -0
  1297. /package/dist/{normalize-Q7EN7JIF.js.map → normalize-NR5RS3WR.js.map} +0 -0
  1298. /package/dist/{options-VDTCTJHY.js.map → options-QLXFLESP.js.map} +0 -0
  1299. /package/dist/{organization-VC5RO4FS.js.map → organization-KEGKAP4P.js.map} +0 -0
  1300. /package/dist/{output-NHMCVVUU.js.map → output-GWIP6ROX.js.map} +0 -0
  1301. /package/dist/{page-5PCVZ7HS.js.map → page-YWGBCN65.js.map} +0 -0
  1302. /package/dist/{pages-DDXB4NQ4.js.map → pages-FTI44OSH.js.map} +0 -0
  1303. /package/dist/{performance-QOQTL4XM.js.map → performance-SPGPGXE5.js.map} +0 -0
  1304. /package/dist/{pinterest-KQYSCTVQ.js.map → pinterest-J442QLQS.js.map} +0 -0
  1305. /package/dist/{pixels-HJYPX6RR.js.map → pixels-6IUB3Y3H.js.map} +0 -0
  1306. /package/dist/{pixels-GH522EYV.js.map → pixels-MBKR4XPX.js.map} +0 -0
  1307. /package/dist/{plan-ZS7SOXL6.js.map → plan-YPE77T4R.js.map} +0 -0
  1308. /package/dist/{preview-W4VKXOCT.js.map → preview-V4YBD45S.js.map} +0 -0
  1309. /package/dist/{profile-FSB4RT55.js.map → profile-S3MXS2VO.js.map} +0 -0
  1310. /package/dist/{promoted-tweet-writes-6PI2KR65.js.map → promoted-tweet-writes-TRR3KPRJ.js.map} +0 -0
  1311. /package/dist/{promoted-tweets-UJRNHKKO.js.map → promoted-tweets-XRYZNJI2.js.map} +0 -0
  1312. /package/dist/{properties-V74I56UK.js.map → properties-G3L2OAOL.js.map} +0 -0
  1313. /package/dist/{query-KBXZD4SW.js.map → query-M3IO54U2.js.map} +0 -0
  1314. /package/dist/{query-SFNCXH4H.js.map → query-WCB5W4NW.js.map} +0 -0
  1315. /package/dist/{query-5F5MBR7H.js.map → query-YBS6ZQ75.js.map} +0 -0
  1316. /package/dist/{questionnaire-JK5JLQXK.js.map → questionnaire-PAK4DALP.js.map} +0 -0
  1317. /package/dist/{read-LGRFU7XB.js.map → read-LUTB3UOR.js.map} +0 -0
  1318. /package/dist/{reddit-QWM5ZQ6P.js.map → reddit-STSECKMZ.js.map} +0 -0
  1319. /package/dist/{refresh-ZPF7UH3S.js.map → refresh-RQ3C2MHI.js.map} +0 -0
  1320. /package/dist/{release-BZPK2P3R.js.map → release-UHGU5WBY.js.map} +0 -0
  1321. /package/dist/{relevant-pages-VMNEEEJK.js.map → relevant-pages-G6SNC73K.js.map} +0 -0
  1322. /package/dist/{remove-C7ZJYFCG.js.map → remove-LTKICIIF.js.map} +0 -0
  1323. /package/dist/{remove-PIHTPIHM.js.map → remove-X6DNVS67.js.map} +0 -0
  1324. /package/dist/{reopen-6Q7NQX2C.js.map → reopen-BP5ERELB.js.map} +0 -0
  1325. /package/dist/{research-X6O7IID6.js.map → research-GOYMTKZM.js.map} +0 -0
  1326. /package/dist/{research-FXQ6X7BY.js.map → research-MBAPL35Y.js.map} +0 -0
  1327. /package/dist/{reset-NXK6NCOO.js.map → reset-Q62PEGOU.js.map} +0 -0
  1328. /package/dist/{reset-FRNQUCL5.js.map → reset-SJPGSQ7I.js.map} +0 -0
  1329. /package/dist/{resolve-WHI4UP4V.js.map → resolve-R45W7QEQ.js.map} +0 -0
  1330. /package/dist/{retry-XMTYWCFA.js.map → retry-CD2Q2AJN.js.map} +0 -0
  1331. /package/dist/{retry-VSFPEXLE.js.map → retry-NBZ7Q6HK.js.map} +0 -0
  1332. /package/dist/{retry-failed-XTYV3QJS.js.map → retry-failed-EJBP4236.js.map} +0 -0
  1333. /package/dist/{run-TAASFDQ7.js.map → run-HCJKCEOL.js.map} +0 -0
  1334. /package/dist/{run-HBNAA56X.js.map → run-IIU2UVQU.js.map} +0 -0
  1335. /package/dist/{schedule-P6GVRZ4E.js.map → schedule-BSQHXJ5V.js.map} +0 -0
  1336. /package/dist/{schedule-WSO7ETS6.js.map → schedule-IDZC6M32.js.map} +0 -0
  1337. /package/dist/{scheduled-agents-TYT5BIBQ.js.map → scheduled-agents-MFLMG34I.js.map} +0 -0
  1338. /package/dist/{schema-DL34A626.js.map → schema-EFR7NGJG.js.map} +0 -0
  1339. /package/dist/{schema-O4CMQQGD.js.map → schema-IWPG3YSN.js.map} +0 -0
  1340. /package/dist/{scrape-ZG2OWZL4.js.map → scrape-J2Y7YZ4Z.js.map} +0 -0
  1341. /package/dist/{screenshot-GJUY7FCW.js.map → screenshot-K7ZGTVTE.js.map} +0 -0
  1342. /package/dist/{search-FHSQYZOC.js.map → search-CI7LEOOK.js.map} +0 -0
  1343. /package/dist/{search-HBFAHH4W.js.map → search-EGI5K77S.js.map} +0 -0
  1344. /package/dist/{search-2BJ4OLMX.js.map → search-I6DRUXBX.js.map} +0 -0
  1345. /package/dist/{search-ZAY2QV3Y.js.map → search-TTL7VQET.js.map} +0 -0
  1346. /package/dist/{search-52CSDYJS.js.map → search-VT2KUAH6.js.map} +0 -0
  1347. /package/dist/{search-copy-O5AOEBXC.js.map → search-copy-N2AIJNUH.js.map} +0 -0
  1348. /package/dist/{seeds-XY3EZ33U.js.map → seeds-EYYQCMGF.js.map} +0 -0
  1349. /package/dist/{sends-GECHL3NK.js.map → sends-RHVFV2XM.js.map} +0 -0
  1350. /package/dist/{sequences-5BB4S63A.js.map → sequences-5DUWNSWQ.js.map} +0 -0
  1351. /package/dist/{setup-links-GF2IP4TH.js.map → setup-links-5ILQNMFZ.js.map} +0 -0
  1352. /package/dist/{shared-JDIL3BNQ.js.map → shared-NDRFKAH7.js.map} +0 -0
  1353. /package/dist/{site-T6V5S5DJ.js.map → site-LBXNVRPE.js.map} +0 -0
  1354. /package/dist/{sitemaps-UQJFRA2W.js.map → sitemaps-QKKXMXMV.js.map} +0 -0
  1355. /package/dist/{sites-ZNNEPEGI.js.map → sites-GRC6CCCK.js.map} +0 -0
  1356. /package/dist/{skills-WRKEF2Q4.js.map → skills-UML6GSW6.js.map} +0 -0
  1357. /package/dist/{sources-UR3SLKVK.js.map → sources-GP4PUTX2.js.map} +0 -0
  1358. /package/dist/{sources-5YUE7KUI.js.map → sources-N4UANUHJ.js.map} +0 -0
  1359. /package/dist/{stats-QFBTSDVV.js.map → stats-RCLQE4HJ.js.map} +0 -0
  1360. /package/dist/{status-FDKP65DR.js.map → status-GSFMLC6W.js.map} +0 -0
  1361. /package/dist/{sticker-2JQUC7XO.js.map → sticker-SINY47WT.js.map} +0 -0
  1362. /package/dist/{stock-W3SNJCBV.js.map → stock-ECRBD7RP.js.map} +0 -0
  1363. /package/dist/{studio-2GAZ6QOH.js.map → studio-YB5WXQYC.js.map} +0 -0
  1364. /package/dist/{sync-NAJQQ6NQ.js.map → sync-2MFUI3ME.js.map} +0 -0
  1365. /package/dist/{sync-4LHVBFMZ.js.map → sync-IE4AAVGY.js.map} +0 -0
  1366. /package/dist/{sync-OGFGTKUK.js.map → sync-LIV7FU4N.js.map} +0 -0
  1367. /package/dist/{sync-definition-MSQFCXRK.js.map → sync-definition-5JO7QXX3.js.map} +0 -0
  1368. /package/dist/{tag-manager-MNGOJ3GC.js.map → tag-manager-G3LBQZUL.js.map} +0 -0
  1369. /package/dist/{tags-XMRO4WF6.js.map → tags-4JQX7HMT.js.map} +0 -0
  1370. /package/dist/{tags-67KLYTJF.js.map → tags-6RQVXS47.js.map} +0 -0
  1371. /package/dist/{tags-GLHFHQW2.js.map → tags-AAIFQ6LS.js.map} +0 -0
  1372. /package/dist/{tags-SL4F3LLY.js.map → tags-F355NMIR.js.map} +0 -0
  1373. /package/dist/{tags-PYLVQEVS.js.map → tags-ZHCGHGYC.js.map} +0 -0
  1374. /package/dist/{targeting-constants-RQT4GLUA.js.map → targeting-constants-KEKYU5JQ.js.map} +0 -0
  1375. /package/dist/{targeting-criteria-VK3IR6N2.js.map → targeting-criteria-6FY2JB3V.js.map} +0 -0
  1376. /package/dist/{targets-RCM2ZXSU.js.map → targets-NI7TR4GV.js.map} +0 -0
  1377. /package/dist/{testimonials-KTHDZ3R5.js.map → testimonials-G7CCH7VN.js.map} +0 -0
  1378. /package/dist/{themes-VVID6Y73.js.map → themes-PXDXIKYR.js.map} +0 -0
  1379. /package/dist/{top-companies-MBTTJTRK.js.map → top-companies-YH2ZJEH5.js.map} +0 -0
  1380. /package/dist/{triggers-PDIVJDLP.js.map → triggers-WYFM7PAH.js.map} +0 -0
  1381. /package/dist/{tweets-L4CXZLKQ.js.map → tweets-C3QUKS3I.js.map} +0 -0
  1382. /package/dist/{unfollow-5T2CT3EF.js.map → unfollow-ZI5QU7RD.js.map} +0 -0
  1383. /package/dist/{unlink-IHEFAFG6.js.map → unlink-PTWUSM5B.js.map} +0 -0
  1384. /package/dist/{unstage-NEX3EIJX.js.map → unstage-7F7JI6HY.js.map} +0 -0
  1385. /package/dist/{unstage-NJQAIIPT.js.map → unstage-MCM6EZWK.js.map} +0 -0
  1386. /package/dist/{update-LR7UW5LL.js.map → update-643S2MUW.js.map} +0 -0
  1387. /package/dist/{update-P5BTLCGG.js.map → update-GUIP6G3N.js.map} +0 -0
  1388. /package/dist/{update-CYQIGHT4.js.map → update-V6E3CIFD.js.map} +0 -0
  1389. /package/dist/{upload-VVB2LTD2.js.map → upload-3YJJ5VID.js.map} +0 -0
  1390. /package/dist/{upload-C2K66PR3.js.map → upload-KO46L76G.js.map} +0 -0
  1391. /package/dist/{upscale-SGBB4GWF.js.map → upscale-SJ7SCSRS.js.map} +0 -0
  1392. /package/dist/{url-options-LUKI4Y46.js.map → url-options-LHS4SWWB.js.map} +0 -0
  1393. /package/dist/{url-params-MSRUZOGT.js.map → url-params-2DKIXKHH.js.map} +0 -0
  1394. /package/dist/{use-XGTUHBUL.js.map → use-6ULEM3WE.js.map} +0 -0
  1395. /package/dist/{variant-DQRDW6IZ.js.map → variant-5TRRSYBB.js.map} +0 -0
  1396. /package/dist/{videos-EQG7AAXT.js.map → videos-KEDR4GG3.js.map} +0 -0
  1397. /package/dist/{view-KJ6YNRXB.js.map → view-ABSWZMXW.js.map} +0 -0
  1398. /package/dist/{viewer-check-7DZQDGD3.js.map → viewer-check-TSH3SAYJ.js.map} +0 -0
  1399. /package/dist/{web-MSYXLOFV.js.map → web-UOGBNAHR.js.map} +0 -0
  1400. /package/dist/{winners-LD6PFXAS.js.map → winners-KRISBKOR.js.map} +0 -0
  1401. /package/dist/{winning-ads-VWBU3BNQ.js.map → winning-ads-SGBI3WHK.js.map} +0 -0
  1402. /package/dist/{write-commands-PK23JVW3.js.map → write-commands-E7JOB4HX.js.map} +0 -0
  1403. /package/dist/{write-commands-CKMHQ4YY.js.map → write-commands-HCQI4Y27.js.map} +0 -0
  1404. /package/dist/{write-commands-NW5CC3DP.js.map → write-commands-QCI6XBM7.js.map} +0 -0
  1405. /package/dist/{write-commands-RLEYECTB.js.map → write-commands-RHCCPMAE.js.map} +0 -0
  1406. /package/dist/{x-ZSTQLK6Q.js.map → x-UNSN57YP.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/creatives/translate.ts","../src/commands/creatives/translate-ad.ts","../src/commands/creatives/translate-model.ts"],"sourcesContent":["/**\n * `baker creatives translate --slug <ad> --to es-MX,es-CO`: the command around `translateAd`. Local\n * file work and one text call, so no backend route: the new ads reach the dashboard through\n * `canvas sync-definition`, as `creatives make --series` does, and the call's spend waits in the\n * canvas cache for the next run record to bill (`holdUnbilledSpend`).\n */\nimport { readFile } from \"node:fs/promises\";\nimport path from \"node:path\";\nimport { defineCommand } from \"citty\";\nimport { askJev } from \"../../engine/nodes/local/lib/jev.ts\";\nimport { askAboutImages, RENDER_REVIEW_MODEL, type ReviewUsage } from \"../../engine/nodes/local/lib/render-review.ts\";\nimport { optionalChatId } from \"../../env.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { runBaker as baker } from \"../baker-child.ts\";\nimport { findWorkspaceRoot } from \"../canvas/normalize-paths.ts\";\nimport { holdUnbilledSpend } from \"../canvas/unbilled-spend.ts\";\nimport { translateAd, translateEnvelope } from \"./translate-ad.ts\";\nimport { type Failure, quoteLineQuestion } from \"./translate-model.ts\";\n\n/** How long the one call for every language may take. */\nconst TRANSLATE_TIMEOUT_MS = 120_000;\n\nconst DESCRIPTION = `The same static ad in other languages. Each language becomes its own creative, <ad>-<lang>, made as an ad of the series <ad> leads: its ready picture with only the words changed, so the design is never made again per language. Every language is translated in one call (transcreated for the market, same role and length per line, brand names, prices and numbers kept); seconds, nothing rendered. The ad must have a ready version.\n\nStart here:\n baker creatives translate --slug spring-offer --to es-MX,es-CO,pt-BR # one ad per country: Mexico and Colombia are two ads\n baker creatives translate --slug spring-offer --to de,fr # a language with no country: its neutral variety\n baker creatives translate --slug spring-offer --to de --copy-file de.json # your own lines: {\"de\": [\"line 1\", \"line 2\"]}\n baker creatives translate --slug spring-offer --to de --copy-file de.json # only some lines yours, the model writes the rest: {\"de\": {\"headline\": \"…\", \"3\": \"…\"}}\n baker creatives translate --slug spring-offer --to es-MX --note \"Informal tú. Keep 'Pro' in English.\" # brief the translator\nTo change one line of one language after: edit src/creatives/<ad>-<lang>/prompt.json copy, then baker canvas run --series <ad>.\nTen angle ads in three languages: one design (the lead), the angle ads (creatives make <idea> --series <lead>), then translate each angle ad. Never a new canvas or a new design per language.\nThen: baker canvas run --series spring-offer (renders every language at once). Adding a language later leaves the ones made as they are.`;\n\nconst ARGS = {\n slug: {\n type: \"string\",\n required: true,\n description: \"The ad to translate (its creative slug); it must have a ready version\",\n },\n to: {\n type: \"string\",\n required: true,\n description:\n \"The languages, comma-separated BCP-47 codes: es-MX,es-CO,pt-BR (a country's own variety) or de,fr. One new creative each: <slug>-<tag in lowercase>\",\n },\n \"copy-file\": {\n type: \"string\",\n required: false,\n description:\n 'A JSON file with your own lines. A language as an array is every line, in the ad\\'s order, no model asked: {\"es\": [\"line 1\", \"line 2\"]}. A language as an object is only the lines you write, by number (from 1) or role, and the model writes the rest: {\"de\": {\"headline\": \"…\", \"3\": \"…\"}}. Your words for a line also win over the reading that it is a customer\\'s, unless it is signed as theirs',\n },\n note: {\n type: \"string\",\n required: false,\n description:\n \"Your instructions for the translator, as you would brief a copywriter: the tone, tú or usted, a term to keep in English, what the market calls the product. A customer's words stay as they said them whatever it says\",\n },\n again: {\n type: \"boolean\",\n required: false,\n default: false,\n description:\n \"Translate a language already made again (after the ad's words changed); without it, a made language is left as it is\",\n },\n} as const;\n\nregisterSchema({ command: \"creatives.translate\", description: DESCRIPTION, args: ARGS });\n\nfunction fail(error: Failure): never {\n writeJson({ ok: false, error });\n process.exit(1);\n}\n\nasync function readCopyFile(file: string): Promise<unknown> {\n try {\n return JSON.parse(await readFile(path.resolve(file), \"utf8\"));\n } catch (e) {\n fail({\n code: \"translate_copy_file_unreadable\",\n message: `The copy file ${file} could not be read as JSON (${e instanceof Error ? e.message : String(e)}).`,\n fix: 'Write it as {\"<lang>\": [\"line 1\", \"line 2\"]}, one array per language.',\n });\n }\n}\n\nexport const translateCommand = defineCommand({\n meta: { name: \"translate\", description: DESCRIPTION },\n args: ARGS,\n async run({ args }) {\n const root = findWorkspaceRoot(process.cwd()) ?? process.cwd();\n const copyFile = typeof args[\"copy-file\"] === \"string\" && args[\"copy-file\"] ? args[\"copy-file\"] : undefined;\n const copy = copyFile ? await readCopyFile(copyFile) : undefined;\n const spent: ReviewUsage[] = [];\n const result = await translateAd(root, String(args.slug), String(args.to), {\n ask: (prompt) =>\n askAboutImages(RENDER_REVIEW_MODEL, [], prompt, (usage) => spent.push(usage), TRANSLATE_TIMEOUT_MS).catch(\n () => null,\n ),\n ...(copy !== undefined ? { copy } : {}),\n again: args.again === true,\n ...(typeof args.note === \"string\" && args.note.trim() ? { note: args.note.trim() } : {}),\n sync: (dir) => baker([\"canvas\", \"sync-definition\", dir, \"--title\"]),\n chatId: optionalChatId() ?? null,\n judgeQuotes: (texts) => askJev(texts.map(quoteLineQuestion), (usage) => spent.push(usage)),\n });\n // No run record carries this call: the next render of this workspace bills it. The ads are made\n // by now, so a cache that cannot be written never costs the command its answer.\n await holdUnbilledSpend(path.join(root, \"canvas\", \".cache\"), spent).catch(() => undefined);\n if (\"code\" in result) fail(result);\n writeJson(translateEnvelope(result));\n },\n});\n","/**\n * `baker creatives translate --slug <ad> --to es,de`: the same ad in other languages. Each\n * language is a new creative, `<ad>-<lang>`, made as an ad of the series `<ad>` leads: the ad's\n * ready picture with only its words changed to theirs, so the design is never made again per\n * language. Every language is translated in one text call (or read from the agent's own file);\n * nothing is rendered here: `baker canvas run --series <ad>` renders them all at once.\n */\nimport { mkdir, readFile, writeFile } from \"node:fs/promises\";\nimport path from \"node:path\";\nimport type { CreativesRunData } from \"@baker/api\";\nimport { readAdSpec } from \"../../engine/scaffold/static-ad-spec.ts\";\nimport { languageName, languageTag, sameTag, tagSlug } from \"../../language.ts\";\nimport { parseDefinitionStrategyFields } from \"../canvas/creative-definition.ts\";\nimport { claimNewCreativeInWorkspace, creativeLimitRefusal } from \"../canvas/creative-limit.ts\";\nimport { leadVersion, seriesLeadsAbove, writeSeriesMemberCanvas } from \"../canvas/series-member.ts\";\nimport {\n acceptTranslations,\n buildTranslatePrompt,\n customersWordsAmong,\n type Failure,\n type LineOverrides,\n lineOverrides,\n MESSAGE_ROLE,\n numberedLines,\n parseLanguages,\n signedLines,\n translatedDefinition,\n translatedSpec,\n unknownLineKeys,\n} from \"./translate-model.ts\";\n\n/** What became of one language. */\nexport type Translation = {\n language: string;\n creative: string;\n status: \"made\" | \"exists\" | \"refused\";\n error?: Failure;\n /** `made`: the lines kept as a customer said them, untranslated. */\n kept?: string[];\n /** Of those, the numbers (from 1) of the lines only judged a customer's, which the agent may give its own words for. */\n judged?: number[];\n};\n\nexport type Translated = {\n source: string;\n sourceLanguage?: string;\n leadsAbove: string[];\n translations: Translation[];\n /** The ad's prompt.json was changed after its last render: the translations are of the version rendered. */\n changedSinceRender?: true;\n};\n\n/** The spec as an ad spec, comparable; null when it does not read as one. Pure. */\nfunction comparable(spec: unknown): string | null {\n try {\n return JSON.stringify(readAdSpec(spec));\n } catch {\n return null;\n }\n}\n\n/** Whether the source's prompt.json now says something else than the version rendered. */\nasync function changedSinceRender(root: string, source: string, rendered: unknown): Promise<boolean> {\n const raw = await readFile(path.join(creativeDir(root, source), \"prompt.json\"), \"utf8\").catch(() => null);\n if (raw === null) return false;\n let now: unknown;\n try {\n now = JSON.parse(raw);\n } catch {\n return false;\n }\n const [a, b] = [comparable(now), comparable(rendered)];\n return a !== null && b !== null && a !== b;\n}\n\ntype Deps = {\n /** The text model, asked once for every language; its parsed JSON answer, or null. */\n ask: (prompt: string) => Promise<unknown>;\n /** The lines the agent wrote itself (`--copy-file`): no model is asked. */\n copy?: unknown;\n /** The agent's instructions for the translator: the tone, the form of address, terms to keep. */\n note?: string;\n /** Translate a language already made again (its words), instead of leaving it as it is. */\n again?: boolean;\n sync: (dir: string) => Promise<unknown>;\n chatId: string | null;\n fetchRecord?: (runId: string) => Promise<CreativesRunData | null>;\n /** Jev: how likely each line is a customer's own words; null when it could not answer. */\n judgeQuotes?: (texts: string[]) => Promise<number[] | null>;\n};\n\n/** The creative a language of `source` is: `<source>-<tag>`, the tag lowercase (`spring-offer-es-mx`). */\nexport const translationSlug = (source: string, language: string) => `${source}-${tagSlug(language)}`;\n\nconst creativeDir = (root: string, slug: string) => path.join(root, \"src\", \"creatives\", slug);\n\nfunction definitionOf(root: string, slug: string): Promise<string | null> {\n return readFile(path.join(creativeDir(root, slug), \"_definition.md\"), \"utf8\").catch(() => null);\n}\n\n/** The language the source is in: its `_definition.md`'s, else its market's. */\nfunction sourceLanguageOf(definition: string, spec: Record<string, unknown>): string | undefined {\n const market = (spec.viewer as { market?: { language?: unknown } } | undefined)?.market?.language;\n return (\n parseDefinitionStrategyFields(definition).language ??\n (typeof market === \"string\" ? (languageTag(market) ?? undefined) : undefined)\n );\n}\n\n/**\n * What each language asked comes to before any words are written: already made (left as it is\n * unless `again`), its slug taken by another creative, or to translate.\n */\nasync function planLanguages(\n root: string,\n source: string,\n languages: readonly string[],\n again: boolean,\n): Promise<{ settled: Translation[]; pending: string[] }> {\n const settled: Translation[] = [];\n const pending: string[] = [];\n for (const language of languages) {\n const creative = translationSlug(source, language);\n const existing = await definitionOf(root, creative);\n const fields = existing === null ? null : parseDefinitionStrategyFields(existing);\n const ours = fields?.seriesLead === source && sameTag(fields.language ?? \"\", language);\n if (!fields || (again && ours)) {\n pending.push(language);\n } else if (ours) {\n settled.push({ language, creative, status: \"exists\" });\n } else {\n settled.push({\n language,\n creative,\n status: \"refused\",\n error: {\n code: \"translate_slug_taken\",\n message: `\"${creative}\" is already another creative, not the ${languageName(language) ?? language} version of \"${source}\".`,\n fix: `Rename or remove src/creatives/${creative}/ if it is a leftover, then translate again.`,\n },\n });\n }\n }\n return { settled, pending };\n}\n\n/**\n * The languages a copy file gives in full: every line in order, the printed lines alone (the message\n * then stays the source's), or every printed line by number or role. Pure.\n */\nfunction wordsInFile(\n copy: unknown,\n pending: readonly string[],\n overrides: LineOverrides,\n lines: ReadonlyArray<{ text: string; role?: string }>,\n): Record<string, string[]> {\n const printed = lines.flatMap((l, i) => (l.role === MESSAGE_ROLE ? [] : [i]));\n const full = acceptTranslations(copy, pending, lines.length);\n const printedOnly = printed.length < lines.length ? acceptTranslations(copy, pending, printed.length) : {};\n const byLine = Object.entries(overrides).flatMap(([language, given]) =>\n printed.every((i) => given[i] !== undefined) ? [[language, printed.map((i) => given[i] ?? \"\")] as const] : [],\n );\n return { ...Object.fromEntries(byLine), ...printedOnly, ...full };\n}\n\n/**\n * Each pending language's lines: the agent's own (`copy`) where its file gives them all, else one\n * model call for every other language, with any line the file gives for it (`lineOverrides`) kept\n * as the agent wrote it.\n */\nasync function wordsFor(\n pending: readonly string[],\n overrides: LineOverrides,\n lines: ReadonlyArray<{ text: string; role?: string }>,\n context: { from?: string; brand?: string },\n deps: Pick<Deps, \"ask\" | \"copy\" | \"note\">,\n): Promise<{ words: Record<string, string[]>; asked: string[] }> {\n if (pending.length === 0) return { words: {}, asked: [] };\n const fromFile = deps.copy === undefined ? {} : wordsInFile(deps.copy, pending, overrides, lines);\n const asked = deps.copy === undefined ? [...pending] : pending.filter((l) => overrides[l] && !fromFile[l]);\n const note = deps.note ? { note: deps.note } : {};\n const answer = asked.length > 0 ? await deps.ask(buildTranslatePrompt(lines, asked, { ...context, ...note })) : null;\n const answered = asked.length > 0 ? acceptTranslations(answer, asked, lines.length) : {};\n const words = { ...fromFile };\n for (const language of asked) {\n const written = answered[language];\n if (written) words[language] = written.map((text, i) => overrides[language]?.[i] ?? text);\n }\n return { words, asked };\n}\n\n/** The ad `source` in each language `to` names, or why none could be made. */\nexport async function translateAd(root: string, source: string, to: string, deps: Deps): Promise<Translated | Failure> {\n const version = await leadVersion(root, source, deps.fetchRecord);\n if (\"refused\" in version) return version.refused;\n const spec = version.spec as Record<string, unknown>;\n if (spec.native) {\n return {\n code: \"translate_native_unsupported\",\n message: `\"${source}\" is a copy of a screen people know (a post, a chat, a review wall): its words are not lines of copy to translate.`,\n fix: \"Make it in the other language as its own ad: baker creatives make <idea> with the words written in that language.\",\n };\n }\n const sourceDefinition = (await definitionOf(root, source)) ?? \"---\\nkind: static\\n---\\n\";\n const sourceLanguage = sourceLanguageOf(sourceDefinition, spec);\n const asked = parseLanguages(to, sourceLanguage);\n if (\"code\" in asked) return asked;\n\n const { settled, pending } = await planLanguages(root, source, asked.languages, deps.again === true);\n const lines = version.lead.copy;\n // A customer's words stay theirs: translated, they would be words nobody said under their name.\n const quoted = pending.length > 0 ? await customersWordsAmong(lines, deps.judgeQuotes) : new Set<number>();\n const signed = signedLines(lines);\n const overrides = deps.copy !== undefined ? lineOverrides(deps.copy, pending, lines) : {};\n // The agent's own words for a line win over the judge's reading of it, never over a signature.\n const quotedIn = (language: string) =>\n new Set([...quoted].filter((i) => overrides[language]?.[i] === undefined || signed.has(i)));\n const unchanged = pending.filter((language) => lines.every((_, i) => quotedIn(language).has(i)));\n const open = pending.filter((language) => !unchanged.includes(language));\n const brand = readAdSpec(spec).brand?.name;\n // What the ad says is asked in the same call, so the team reads it in the ad's own language.\n const message = parseDefinitionStrategyFields(sourceDefinition).message;\n const marked = lines.map((line, i) => (quoted.has(i) ? { ...line, customersWords: true } : line));\n const asks = message ? [...marked, { text: message, role: MESSAGE_ROLE }] : marked;\n const { words, asked: modelAsked } = await wordsFor(\n open,\n overrides,\n asks,\n { ...(sourceLanguage ? { from: sourceLanguage } : {}), ...(brand ? { brand } : {}) },\n deps,\n );\n const translations = [...settled, ...unchanged.map((language) => nothingToTranslate(source, language))];\n for (const language of open) {\n translations.push(\n await makeTranslation(\n root,\n {\n source,\n language,\n sourceDefinition,\n spec,\n lines,\n quoted: quotedIn(language),\n signed,\n words: words[language],\n fromModel: modelAsked.includes(language),\n },\n deps,\n ),\n );\n }\n const order = new Map(asked.languages.map((l, i) => [l, i]));\n translations.sort((a, b) => (order.get(a.language) ?? 0) - (order.get(b.language) ?? 0));\n return {\n source,\n ...(sourceLanguage ? { sourceLanguage } : {}),\n leadsAbove: await seriesLeadsAbove(root, source),\n translations,\n ...((await changedSinceRender(root, source, version.spec)) ? { changedSinceRender: true as const } : {}),\n };\n}\n\n/**\n * A language for an ad whose every line is a customer's words, kept as they said them: it would be\n * the same ad, which the series run refuses, and the words left to change are the customer's. Pure.\n */\nfunction nothingToTranslate(source: string, language: string): Translation {\n const name = languageName(language) ?? language;\n return {\n language,\n creative: translationSlug(source, language),\n status: \"refused\",\n error: {\n code: \"translate_nothing_to_translate\",\n message: `Every line of \"${source}\" is a customer's own words, kept as they said them, so in ${name} it would be the same ad.`,\n fix: `Never translate a customer's words yourself: that puts words they never said under their name. To reach ${name} speakers, run \"${source}\" as it is, or give it a line of your own (a headline or a call to action), render it, then translate again.`,\n },\n };\n}\n\n/** A language the copy file does not give in full, nor any line of it the ad has. Pure. */\nfunction copyMissing(\n language: string,\n name: string,\n lines: ReadonlyArray<{ text: string; role?: string }>,\n unknown: readonly string[],\n): Failure {\n const named = unknown.map((key) => JSON.stringify(key)).join(\", \");\n return {\n code: \"translate_copy_missing\",\n message: unknown.length\n ? `The copy file's ${name} lines ${named} name no line of the ad.`\n : `The copy file has no ${name} lines, or not one for each of the ad's ${lines.length} lines.`,\n fix: `Give \"${language}\" an array of ${lines.length} lines in the ad's order, or only the lines to change, by number or role ({\"${language}\": {\"headline\": \"…\"}}): the model writes the rest. The ad's lines: ${numberedLines(lines)}.`,\n };\n}\n\n/** One language written as an ad of the source's series: its words, its definition and its canvas. */\nasync function makeTranslation(\n root: string,\n t: {\n source: string;\n language: string;\n sourceDefinition: string;\n spec: Record<string, unknown>;\n lines: ReadonlyArray<{ text: string; role?: string }>;\n quoted: ReadonlySet<number>;\n signed: ReadonlySet<number>;\n words: string[] | undefined;\n /** The model was asked for this language's words (none were in the copy file, or only some). */\n fromModel: boolean;\n },\n deps: Deps,\n): Promise<Translation> {\n const creative = translationSlug(t.source, t.language);\n const refused = (error: Failure): Translation => ({ language: t.language, creative, status: \"refused\", error });\n const name = languageName(t.language) ?? t.language;\n if (!t.words) {\n return refused(\n !t.fromModel\n ? copyMissing(t.language, name, t.lines, unknownLineKeys(deps.copy, t.language, t.lines))\n : {\n code: \"translate_failed\",\n message: `The ${name} words could not be written.`,\n fix: `Write them yourself: --copy-file <json> with {\"${t.language}\": [${t.lines.length} lines in the ad's order]}.`,\n },\n );\n }\n const dir = creativeDir(root, creative);\n const definitionPath = path.join(dir, \"_definition.md\");\n const claim = await claimNewCreativeInWorkspace(path.join(root, \"canvas\"), creative, deps.chatId, definitionPath);\n if (!claim.allowed) return refused(creativeLimitRefusal(creative).error);\n await mkdir(dir, { recursive: true });\n await writeFile(\n path.join(dir, \"prompt.json\"),\n `${JSON.stringify(translatedSpec(t.spec, t.words, t.language, t.quoted), null, 2)}\\n`,\n \"utf8\",\n );\n const headline = Math.max(\n 0,\n t.lines.findIndex((l) => l.role === \"headline\"),\n );\n await writeFile(\n definitionPath,\n translatedDefinition(t.sourceDefinition, {\n source: t.source,\n language: t.language,\n title: t.words[headline] ?? creative,\n ...(t.words.length > t.lines.length ? { message: t.words[t.lines.length] } : {}),\n }),\n \"utf8\",\n );\n const made = await writeSeriesMemberCanvas(root, creative, {\n leadWords: true,\n ...(deps.fetchRecord ? { fetchRecord: deps.fetchRecord } : {}),\n });\n if (made === null || \"refused\" in made) {\n return refused(made?.refused ?? { code: \"translate_not_made\", message: `\"${creative}\" could not be made.` });\n }\n // The dashboard learns the translation and its series now, not at Publish.\n await deps.sync(dir);\n const kept = [...t.quoted].sort((a, b) => a - b);\n const judged = kept.filter((i) => !t.signed.has(i)).map((i) => i + 1);\n return {\n language: t.language,\n creative,\n status: \"made\",\n ...(kept.length ? { kept: kept.map((i) => t.lines[i]?.text ?? \"\") } : {}),\n ...(judged.length ? { judged } : {}),\n };\n}\n\n/** The lines a translation kept as a customer said them, and how to translate one that is the advertiser's own. Pure. */\nfunction keptHint(source: string, t: Translation): string {\n const kept = (t.kept ?? []).map((text) => JSON.stringify(text)).join(\", \");\n const [line] = t.judged ?? [];\n const change = line\n ? ` If line ${line} is the ad's own words, not a customer's, write it yourself: baker creatives translate --slug ${source} --to ${t.language} --again --copy-file with {\"${t.language}\": {\"${line}\": \"<its words in ${t.language}>\"}}; the model writes the other lines again.`\n : \"\";\n return `${t.creative}: kept as the customer said them, untranslated: ${kept}.${change}`;\n}\n\n/** What `translate` prints: each language's ad, then the one series run that renders them all. Pure. */\nexport function translateEnvelope(result: Translated) {\n const made = result.translations.filter((t) => t.status !== \"refused\").map((t) => t.creative);\n const refused = result.translations.filter((t) => t.status === \"refused\");\n const order = [...result.leadsAbove].reverse().concat(result.source);\n return {\n ok: true as const,\n data: {\n source: result.source,\n made,\n translations: result.translations.map((t) => ({ ...t, name: languageName(t.language) ?? t.language })),\n },\n hints: [\n ...(result.changedSinceRender\n ? [\n `src/creatives/${result.source}/prompt.json was changed since its last render, and every language is made from the version rendered: none of them has that change. Never say they do. To carry it: baker canvas run --slug ${result.source}, then translate again with --again.`,\n ]\n : []),\n ...(made.length > 0\n ? [\n `Next: baker canvas run --series ${result.source} renders every language at once, each the ${result.source} picture with its own words, reviewed and corrected on its own. A language already rendered from the current version of ${result.source} is not rendered again.`,\n ]\n : []),\n ...(made.length > 0\n ? [\n `To change a line of one language (a word the person wants otherwise, a line too long), edit its words in that ad's own copy, src/creatives/${made[0]}/prompt.json \\`copy\\` (never its design), then baker canvas run --series ${result.source}: only that ad is made again. To change how every line reads (tone, tú or usted, a term to keep), translate again with --again --note \"<what to change>\"; --again writes every line of that language again.`,\n ]\n : []),\n `A later change to ${result.source} (its picture or design) reaches every language on the next ${order.map((slug) => `baker canvas run --series ${slug}`).join(\", then \")}. A change to its words does not: translate again with --again for the languages to update.`,\n ...refused.map((t) => `${t.creative}: ${t.error?.message ?? \"not made\"}${t.error?.fix ? ` ${t.error.fix}` : \"\"}`),\n ...result.translations.flatMap((t) => (t.kept?.length ? [keptHint(result.source, t)] : [])),\n ],\n };\n}\n","/**\n * `baker creatives translate`, its decisions: which languages, what the model is asked, which\n * answer is kept, and what each translation is on disk (its words in the source's spec, its\n * `_definition.md`). A translation is an ad of the series the source leads: the source's picture\n * with only its words changed, so ten ads in three languages stay one design. Pure.\n */\nimport { z } from \"zod\";\nimport { isAdSpec, readAdSpec } from \"../../engine/scaffold/static-ad-spec.ts\";\nimport { isCustomersWords, isSignatureLine, maybeSigned } from \"../../engine/scaffold/static-proof.ts\";\nimport { languageName, languageRegion, languageTag, sameTag } from \"../../language.ts\";\nimport { setDefinitionFields } from \"./make-model.ts\";\nimport { withoutFields } from \"./make-series.ts\";\n\nexport type Failure = { code: string; message: string; fix?: string };\n\n/** The languages `--to` names, as lowercase tags, once each; refused when one names none or is the ad's own. */\nexport function parseLanguages(raw: string, sourceLanguage: string | undefined): { languages: string[] } | Failure {\n const asked = raw\n .split(\",\")\n .map((code) => code.trim())\n .filter(Boolean);\n if (asked.length === 0) {\n return {\n code: \"translate_language_invalid\",\n message: \"No language was named.\",\n fix: \"Name each language as a code, comma-separated: --to es,de,fr (pt-BR, es-MX for a regional variant).\",\n };\n }\n const languages: string[] = [];\n for (const code of asked) {\n const tag = languageTag(code);\n if (!tag) {\n return {\n code: \"translate_language_invalid\",\n message: `\"${code}\" is not a language code.`,\n fix: \"Name each language as a BCP-47 code: es, de, fr, pt-BR, es-MX.\",\n };\n }\n if (sourceLanguage && sameTag(tag, sourceLanguage)) {\n return {\n code: \"translate_same_language\",\n message: `The ad is already in ${languageName(tag) ?? tag}.`,\n fix: `Leave ${code} out of --to.`,\n };\n }\n if (!languages.some((l) => sameTag(l, tag))) languages.push(tag);\n }\n return { languages };\n}\n\ntype Line = { text: string; role?: string; customersWords?: boolean };\n\n/** Jev's question for one copy line: whether it is a customer's own words, the advertiser's copy aside. */\nexport const quoteLineQuestion = (text: string) => ({\n instructions: {\n question:\n \"Is `line` a customer's or reviewer's own words (a testimonial, or a quote signed with the name of the person who said it), rather than the advertiser's own copy, in whatever language it is written?\",\n line: text,\n },\n});\n\n/** At or above, Jev holds a line to be a customer's own words (scripts/quote-line-evals). */\nexport const CUSTOMERS_WORDS = 0.5;\n\n/**\n * The lines signed as a customer's by their shape: a dash and a name, a quote or signature role, or\n * the line a signature right below signs. Nobody's say-so makes them the advertiser's. Pure.\n */\nexport function signedLines(lines: readonly Line[]): Set<number> {\n const signed = new Set<number>();\n lines.forEach((line, i) => {\n if (line.role === MESSAGE_ROLE) return;\n const below = lines[i + 1];\n if (isCustomersWords(line) || (below !== undefined && isSignatureLine(below))) signed.add(i);\n });\n return signed;\n}\n\n/**\n * The indexes of `lines` that are a customer's own words: set as a quote, signed by its shape\n * alone or by a signature on the line below it, else held so by `judge` (Jev, one probability per\n * text), a line below that may sign it asked with it. Without a judge only the shape and the role\n * decide: a line nobody can tell is translated, as the advertiser's copy is.\n */\nexport async function customersWordsAmong(\n lines: readonly Line[],\n judge?: (texts: string[]) => Promise<number[] | null>,\n): Promise<Set<number>> {\n const kept = signedLines(lines);\n const open = lines.flatMap((line, i) => (line.role === MESSAGE_ROLE || kept.has(i) ? [] : [i]));\n if (!judge || open.length === 0) return kept;\n // A hyphen opening the line below may sign this one or be the advertiser's own: asked together.\n const asked = (i: number) => {\n const text = lines[i]?.text ?? \"\";\n const below = lines[i + 1]?.text;\n return below !== undefined && maybeSigned(below) && !maybeSigned(text) ? `${text}\\n${below}` : text;\n };\n const answers = await judge(open.map(asked));\n if (answers?.length !== open.length) return kept;\n for (const [k, i] of open.entries()) if ((answers[k] ?? 0) >= CUSTOMERS_WORDS) kept.add(i);\n return kept;\n}\n\n/** The role of the extra line a translation asks for: the ad's message, said in the language for the team. */\nexport const MESSAGE_ROLE = \"message\";\n\nconst Answer = z.object({ translations: z.record(z.string(), z.array(z.string()).catch([])) });\n\n/**\n * The languages the model translated fully: each line of the source answered by one non-empty\n * line, in order. A language answered short or blank is left out (refused, never half an ad). Pure.\n */\nexport function acceptTranslations(\n answer: unknown,\n languages: readonly string[],\n lineCount: number,\n): Record<string, string[]> {\n // `--copy-file` may hold the languages bare; a model may answer \"pt-BR\" for \"pt-br\".\n const wrapped =\n answer && typeof answer === \"object\" && !(\"translations\" in answer) ? { translations: answer } : answer;\n const parsed = Answer.safeParse(wrapped);\n if (!parsed.success) return {};\n const byTag = new Map(Object.entries(parsed.data.translations).map(([key, lines]) => [key.toLowerCase(), lines]));\n const kept: Record<string, string[]> = {};\n for (const language of languages) {\n const lines = byTag.get(language.toLowerCase())?.map((line) => line.trim());\n if (lines && lines.length === lineCount && lines.every(Boolean)) kept[language] = lines;\n }\n return kept;\n}\n\n/** A copy file's language given as some of its lines: each line's words, by its position in the ad. */\nexport type LineOverrides = Record<string, Record<number, string>>;\n\n/** The ad's line a copy file's key names: its number from 1, else the first line with that role. */\nexport function lineByKey(key: string, lines: readonly Line[]): number | undefined {\n if (/^\\d+$/.test(key)) {\n const n = Number(key) - 1;\n return n >= 0 && n < lines.length ? n : undefined;\n }\n const i = lines.findIndex((l) => l.role !== MESSAGE_ROLE && l.role?.toLowerCase() === key.trim().toLowerCase());\n return i === -1 ? undefined : i;\n}\n\n/**\n * The languages a copy file gives as some of their lines (`{\"de\": {\"headline\": \"…\", \"2\": \"…\"}}`):\n * those lines are the agent's words, the rest are translated. A language given as a full array is\n * `acceptTranslations`' to read; a key naming no line of the ad is left out (`unknownLineKeys`). Pure.\n */\nexport function lineOverrides(file: unknown, languages: readonly string[], lines: readonly Line[]): LineOverrides {\n const byTag = languageEntries(file);\n const out: LineOverrides = {};\n for (const language of languages) {\n const given = byTag.get(language.toLowerCase());\n if (!given || Array.isArray(given) || typeof given !== \"object\") continue;\n const words: Record<number, string> = {};\n for (const [key, text] of Object.entries(given)) {\n const i = lineByKey(key, lines);\n if (i !== undefined && typeof text === \"string\" && text.trim()) words[i] = text.trim();\n }\n if (Object.keys(words).length > 0) out[language] = words;\n }\n return out;\n}\n\n/** The keys a copy file gives `language` that name no line of the ad. Pure. */\nexport function unknownLineKeys(file: unknown, language: string, lines: readonly Line[]): string[] {\n const given = languageEntries(file).get(language.toLowerCase());\n if (!given || Array.isArray(given) || typeof given !== \"object\") return [];\n return Object.keys(given).filter((key) => lineByKey(key, lines) === undefined);\n}\n\n/** The ad's lines as a copy file names them: `1 headline: \"…\"`, one per line. Pure. */\nexport function numberedLines(lines: readonly Line[]): string {\n return lines\n .filter((l) => l.role !== MESSAGE_ROLE)\n .map((l, i) => `${i + 1}${l.role ? ` ${l.role}` : \"\"}: ${JSON.stringify(l.text)}`)\n .join(\"; \");\n}\n\n/** The file's languages by lowercase tag, whether it wraps them in `translations` or not. */\nfunction languageEntries(file: unknown): Map<string, unknown> {\n const record = file && typeof file === \"object\" && !Array.isArray(file) ? (file as Record<string, unknown>) : {};\n const languages = record.translations && typeof record.translations === \"object\" ? record.translations : record;\n return new Map(Object.entries(languages as Record<string, unknown>).map(([k, v]) => [k.toLowerCase(), v]));\n}\n\n/** What the model is asked: every language at once, line by line, for the same picture. Pure. */\nexport function buildTranslatePrompt(\n lines: readonly Line[],\n languages: readonly string[],\n context: { from?: string; brand?: string; note?: string },\n): string {\n const from = context.from ? languageName(context.from) : null;\n return [\n `These are the lines of copy printed on a finished static ad${from ? `, written in ${from}` : \"\"}. Translate them${from ? ` from ${from}` : \"\"} into each of these languages: ${languages.map((l) => `${l} (${languageName(l) ?? l})`).join(\", \")}.`,\n \"\",\n ...lines.map(\n (line, i) =>\n `${i + 1}. ${line.role === MESSAGE_ROLE ? \"[not printed: what the ad says, in one sentence, for the team that runs it] \" : line.role ? `[${line.role}] ` : \"\"}${line.customersWords ? \"[a customer's own words: copy it exactly as written, untranslated] \" : \"\"}${JSON.stringify(line.text)}`,\n ),\n \"\",\n \"Rules:\",\n \"- Transcreate as a native copywriter of that market would write the ad, not word for word: the same promise and tone, natural for the people who will see it.\",\n \"- Each line keeps its role: a headline stays a headline, a button stays a short button.\",\n \"- Keep each line about as long as the original: it is set in the same layout, in the same space, so a much longer line will not fit.\",\n `- Keep brand names${context.brand ? ` (${JSON.stringify(context.brand)})` : \"\"}, product names, numbers, prices, currencies, percentages and URLs exactly as they are.`,\n \"- Use the language's own accents and punctuation (¿ ¡ « » ß ç ã).\",\n ...varieties(languages),\n ...(context.note\n ? [\n \"\",\n `The team's own instructions for this translation. Follow them over the rules above, except that a customer's own words stay exactly as written.\\n${context.note}`,\n ]\n : []),\n \"\",\n `Reply with only this JSON, one array per language with exactly ${lines.length} lines in the order above: {\"translations\": {${languages.map((l) => `\"${l}\": [\"...\"]`).join(\", \")}}}`,\n ].join(\"\\n\");\n}\n\n/**\n * The translation's spec: the source's as it was drawn, each line's words replaced in place (its\n * role, lettering and placement kept) and, when the source names its market, that market's\n * language set, and its country when the tag names one (es-MX: Mexico). The currency stays the\n * source's: its prices are kept as they are. Everything else is the source's: the design is never the translation's own. Pure.\n */\nexport function translatedSpec(\n source: Record<string, unknown>,\n lines: readonly string[],\n language: string,\n customersWords: ReadonlySet<number> = new Set(),\n): Record<string, unknown> {\n // An older blueprint carries its words in its own shape: it is written as the ad spec it reads as.\n const spec: Record<string, unknown> = isAdSpec(source) ? source : readAdSpec(source);\n const copy = Array.isArray(spec.copy) ? (spec.copy as Array<Record<string, unknown>>) : [];\n const viewer = spec.viewer as { market?: Record<string, unknown> } | undefined;\n return {\n ...spec,\n // A customer's words stay theirs: translated, they would be words nobody said under their name.\n copy: copy.map((line, i) => (customersWords.has(i) ? line : { ...line, text: lines[i] ?? line.text })),\n ...(viewer?.market ? { viewer: { ...viewer, market: { ...viewer.market, ...marketOf(language) } } } : {}),\n };\n}\n\n/** What a translation's `_definition.md` keeps of its source's: everything but these, which are its own. */\nconst OWN_FIELDS = [\"series\", \"language\", \"title\", \"status\"];\n\n/** The translation's `_definition.md`: the source's reasons, as an ad of the source's series in `language`. Pure. */\nexport function translatedDefinition(\n source: string,\n translation: { source: string; language: string; title: string; message?: string },\n): string {\n return setDefinitionFields(withoutFields(source, OWN_FIELDS), {\n title: translation.title.slice(0, 120),\n series: translation.source,\n language: translation.language,\n status: \"draft\",\n ...(translation.message ? { message: translation.message } : {}),\n });\n}\n\n/** For each tag naming a country, the instruction to write as people there write ads. */\nfunction varieties(languages: readonly string[]): string[] {\n const regional = languages.flatMap((tag) => {\n const region = languageRegion(tag);\n return region\n ? [\n `- ${tag}: write it as people in ${region.name} write ads: its own vocabulary, spelling, idioms and form of address (tú, usted or vos as ads there use it), not a neutral one and not a neighbouring country's variety of the same language.`,\n ]\n : [];\n });\n return regional.length > 0 ? [\"\", \"Each regional variant is its own ad:\", ...regional] : [];\n}\n\n/** The market fields a tag decides: its language, and its country when it names one. */\nfunction marketOf(language: string): { language: string; country?: string } {\n const region = languageRegion(language);\n return region ? { language, country: region.code } : { language };\n}\n"],"mappings":"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","names":["readFile","path","readFile","path"]}
@@ -0,0 +1,142 @@
1
+ import {
2
+ failApi
3
+ } from "./chunk-ADSNY4KZ.js";
4
+ import "./chunk-CM6FCSWN.js";
5
+ import {
6
+ triggerCatalogSchema
7
+ } from "./chunk-FRK7SSEH.js";
8
+ import "./chunk-GXDLWBOY.js";
9
+ import "./chunk-GIWHHCD6.js";
10
+ import "./chunk-XQIOCIDO.js";
11
+ import "./chunk-ML7DLFFY.js";
12
+ import {
13
+ apiPost
14
+ } from "./chunk-XDZVBX6L.js";
15
+ import "./chunk-N5O67GK5.js";
16
+ import "./chunk-EE72SSB2.js";
17
+ import {
18
+ registerSchema,
19
+ writeJson
20
+ } from "./chunk-WNSE7N75.js";
21
+ import "./chunk-YQSBHWOI.js";
22
+
23
+ // src/commands/scheduled-agents/triggers.ts
24
+ import { defineCommand } from "citty";
25
+ var ARGS = {
26
+ trigger: {
27
+ type: "string",
28
+ description: "One trigger in full \u2014 what makes it run, what it narrows by, its payload fields. A kind (experiment.decided) or a family prefix (experiment).",
29
+ required: false
30
+ },
31
+ group: {
32
+ type: "string",
33
+ description: "Every trigger in one group, in full, e.g. experiments, tasks, forms. The listing names each group.",
34
+ required: false
35
+ },
36
+ full: {
37
+ type: "boolean",
38
+ description: "Every trigger in full (about 25 KB). Prefer --trigger or --group.",
39
+ required: false
40
+ }
41
+ };
42
+ registerSchema({
43
+ command: "scheduled-agents.triggers",
44
+ description: "Everything that can start a scheduled agent. Bare, a compact listing of every trigger kind by group; --trigger <kind|family> or --group <id> for what each narrows by and the payload fields it hands over. Read this before proposing automation, so the trigger you name is one that exists \u2014 a time of day is only the most obvious of them, and most of what a marketer actually wants is a reaction to something.",
45
+ args: ARGS
46
+ });
47
+ function matchesTrigger(kind, query) {
48
+ const family = query.replace(/\.?\*?$/, "");
49
+ return kind === query || kind.startsWith(`${family}.`);
50
+ }
51
+ function shapeTriggerCatalog(response, filter) {
52
+ const { trigger, group } = filter;
53
+ const unfiltered = trigger === void 0 && group === void 0;
54
+ if (unfiltered && filter.full) return { ok: true, data: response };
55
+ const parsed = triggerCatalogSchema.safeParse(response);
56
+ if (!parsed.success) {
57
+ return {
58
+ ok: false,
59
+ error: {
60
+ code: "INTERNAL_ERROR",
61
+ message: "The trigger list came back in a shape this version of the CLI cannot read.",
62
+ fix: {
63
+ action: "run `baker scheduled-agents triggers --full`",
64
+ explanation: "--full prints the whole list as the server sent it, without reading it."
65
+ }
66
+ }
67
+ };
68
+ }
69
+ const catalog = parsed.data;
70
+ if (unfiltered) {
71
+ return {
72
+ ok: true,
73
+ data: {
74
+ groups: catalog.groups.map((entry) => ({
75
+ group: entry.group,
76
+ about: entry.about,
77
+ triggers: Object.fromEntries(entry.triggers.map((t) => [t.kind, t.label]))
78
+ }))
79
+ },
80
+ hints: [
81
+ "Next: `baker scheduled-agents triggers --trigger <kind>` (or a family, e.g. --trigger experiment) for what it narrows by and the payload fields to use in --when and {{payload.<field>}}."
82
+ ]
83
+ };
84
+ }
85
+ const groups = catalog.groups.filter((entry) => group === void 0 || entry.group === group).map((entry) => ({
86
+ ...entry,
87
+ triggers: entry.triggers.filter(
88
+ (t) => trigger === void 0 || matchesTrigger(t.kind, trigger)
89
+ )
90
+ })).filter((entry) => entry.triggers.length > 0);
91
+ if (groups.length === 0) {
92
+ const asked = [
93
+ trigger === void 0 ? null : `--trigger "${trigger}"`,
94
+ group === void 0 ? null : `--group "${group}"`
95
+ ].filter(Boolean);
96
+ return {
97
+ ok: false,
98
+ error: {
99
+ code: "NOT_FOUND",
100
+ message: `No trigger matches ${asked.join(" ")}.`,
101
+ fix: {
102
+ action: "run `baker scheduled-agents triggers`",
103
+ explanation: `Groups: ${catalog.groups.map((entry) => entry.group).join(", ")}. The bare command lists every trigger kind.`
104
+ }
105
+ }
106
+ };
107
+ }
108
+ return { ok: true, data: { groups, reacting: catalog.reacting } };
109
+ }
110
+ var triggersCommand = defineCommand({
111
+ meta: {
112
+ name: "triggers",
113
+ description: `Everything that can start a scheduled agent.
114
+
115
+ A scheduled agent is a trigger and a prompt. The trigger is the whole of the "when": a time, a cadence, a call-in from another tool, an event arriving (a HubSpot deal reaching a stage is one), a Form being submitted, an A/B test reaching an answer, a Task closing, a tool needing reconnecting, a publish leaving changes behind, a new review, a competitor launching ads.
116
+
117
+ Start here: the bare command lists every trigger kind by group, compactly. Then ask for the one you picked: it says what narrows it (\`pointAt\`) and the payload fields it hands over, for --when rules ("amount > 10000") and the prompt ({{payload.amount}}).
118
+
119
+ Examples:
120
+ baker scheduled-agents triggers
121
+ baker scheduled-agents triggers --trigger experiment.decided
122
+ baker scheduled-agents triggers --trigger experiment
123
+ baker scheduled-agents triggers --group tasks
124
+ Full guide: __tooling__/docs/tools/baker/scheduled-agents.md`
125
+ },
126
+ args: ARGS,
127
+ run: async ({ args }) => {
128
+ try {
129
+ const response = await apiPost("/api/scheduled-agents/triggers", {});
130
+ const shaped = shapeTriggerCatalog(response.data, { trigger: args.trigger, group: args.group, full: args.full });
131
+ writeJson(shaped);
132
+ if (!shaped.ok) process.exit(1);
133
+ } catch (err) {
134
+ failApi(err);
135
+ }
136
+ }
137
+ });
138
+ export {
139
+ shapeTriggerCatalog,
140
+ triggersCommand
141
+ };
142
+ //# sourceMappingURL=triggers-WYFM7PAH.js.map
@@ -0,0 +1,123 @@
1
+ import {
2
+ parseXApiError
3
+ } from "./chunk-M6UNISGO.js";
4
+ import {
5
+ resolveXAccountId
6
+ } from "./chunk-JYBLCIRN.js";
7
+ import {
8
+ cacheGet,
9
+ cacheSet,
10
+ writeAdsJson,
11
+ writeAdsOutput,
12
+ writeJsonEnvelope
13
+ } from "./chunk-SWL4AAPP.js";
14
+ import {
15
+ ApiError,
16
+ apiGet
17
+ } from "./chunk-XDZVBX6L.js";
18
+ import "./chunk-N5O67GK5.js";
19
+ import "./chunk-EE72SSB2.js";
20
+ import {
21
+ registerSchema
22
+ } from "./chunk-WNSE7N75.js";
23
+ import "./chunk-YQSBHWOI.js";
24
+
25
+ // src/commands/ads/x/tweets.ts
26
+ import { defineCommand } from "citty";
27
+ function cacheKeyFor(accountId, args) {
28
+ const today = (/* @__PURE__ */ new Date()).toISOString().slice(0, 10);
29
+ return `tweets:${accountId}:${today}:${args["tweet-type"] ?? ""}:${args["timeline-type"] ?? ""}:${args["user-id"] ?? ""}`;
30
+ }
31
+ function requestParams(accountId, args) {
32
+ const params = { "account-id": accountId };
33
+ for (const key of ["tweet-type", "timeline-type", "user-id"]) {
34
+ if (args[key]) {
35
+ params[key] = String(args[key]);
36
+ }
37
+ }
38
+ if (args["no-cache"]) {
39
+ params["skip-cache"] = "true";
40
+ }
41
+ return params;
42
+ }
43
+ function toPost(tweet) {
44
+ return {
45
+ id: tweet.id_str,
46
+ text: typeof tweet.full_text === "string" ? tweet.full_text : tweet.text,
47
+ created_at: tweet.created_at,
48
+ promoted_only: tweet.nullcast === true,
49
+ handle: tweet.user?.screen_name
50
+ };
51
+ }
52
+ function hintsFor(posts) {
53
+ return posts.length === 0 ? ["This account has published no posts, so there is nothing to promote yet."] : ["Promote one with: baker ads x promoted-tweets create --line-item-id <id> --tweet-ids <id>"];
54
+ }
55
+ var TWEET_TYPES = "PUBLISHED | DRAFT";
56
+ var TIMELINE_TYPES = "ALL | ORGANIC | NULLCAST";
57
+ registerSchema({
58
+ command: "ads.x.tweets",
59
+ description: `The account's own posts, so one can be promoted by id. Start here before \`baker ads x promoted-tweets create\` \u2014 that command takes a post id, and this is the only place to get one.
60
+ A NULLCAST post ("promoted-only") never appears on the profile timeline and exists to be advertised; an ORGANIC one is a normal post that can also be promoted.`,
61
+ args: {
62
+ "account-id": { type: "string", description: "X Ads account ID", required: false },
63
+ "tweet-type": { type: "string", description: `${TWEET_TYPES} (default PUBLISHED)`, required: false },
64
+ "timeline-type": { type: "string", description: `${TIMELINE_TYPES}`, required: false },
65
+ "user-id": { type: "string", description: "Numeric id of the posting handle", required: false },
66
+ "no-cache": { type: "boolean", description: "Skip cache", required: false },
67
+ output: { type: "string", description: "Format: json|csv|md", required: false }
68
+ }
69
+ });
70
+ var tweetsCommand = defineCommand({
71
+ meta: {
72
+ name: "tweets",
73
+ description: `The account's own posts, with the id needed to promote one.
74
+
75
+ Examples:
76
+ baker ads x tweets
77
+ baker ads x tweets --timeline-type NULLCAST --output md`
78
+ },
79
+ args: {
80
+ "account-id": { type: "string", description: "X Ads account ID" },
81
+ "tweet-type": { type: "string", description: `${TWEET_TYPES} (default PUBLISHED)` },
82
+ "timeline-type": { type: "string", description: TIMELINE_TYPES },
83
+ "user-id": { type: "string", description: "Numeric id of the posting handle" },
84
+ "no-cache": { type: "boolean", description: "Skip cache" },
85
+ output: { type: "string", description: "Format: json|csv|md", default: "json" }
86
+ },
87
+ run: async ({ args }) => {
88
+ const accountId = await resolveXAccountId(args);
89
+ const useCache = !args["no-cache"];
90
+ const cacheKey = cacheKeyFor(accountId, args);
91
+ if (useCache) {
92
+ const cached = cacheGet("x-account-data", cacheKey);
93
+ if (cached) {
94
+ writeJsonEnvelope({ ok: true, data: cached.data, cached: true, hints: hintsFor(cached.data) });
95
+ return;
96
+ }
97
+ }
98
+ try {
99
+ const data = await apiGet("/api/ads/x/tweets", requestParams(accountId, args));
100
+ const posts = data.map(toPost);
101
+ if (useCache) {
102
+ cacheSet("x-account-data", cacheKey, posts, 60 * 60 * 1e3);
103
+ }
104
+ const format = args.output || "json";
105
+ if (format !== "json") {
106
+ writeAdsOutput(posts, format);
107
+ return;
108
+ }
109
+ writeJsonEnvelope({ ok: true, data: posts, hints: hintsFor(posts) });
110
+ } catch (err) {
111
+ if (err instanceof ApiError) {
112
+ writeAdsJson(parseXApiError(err.message, accountId));
113
+ process.exit(1);
114
+ }
115
+ writeAdsJson({ ok: false, error: { code: "NETWORK_ERROR", message: "Unexpected error" } });
116
+ process.exit(1);
117
+ }
118
+ }
119
+ });
120
+ export {
121
+ tweetsCommand
122
+ };
123
+ //# sourceMappingURL=tweets-C3QUKS3I.js.map
@@ -0,0 +1,46 @@
1
+ import {
2
+ reportError
3
+ } from "./chunk-I5VZVQBZ.js";
4
+ import {
5
+ apiPost
6
+ } from "./chunk-XDZVBX6L.js";
7
+ import "./chunk-N5O67GK5.js";
8
+ import "./chunk-EE72SSB2.js";
9
+ import {
10
+ registerSchema,
11
+ writeJson
12
+ } from "./chunk-WNSE7N75.js";
13
+ import "./chunk-YQSBHWOI.js";
14
+
15
+ // src/commands/winning-ads/unfollow.ts
16
+ import { defineCommand } from "citty";
17
+ registerSchema({
18
+ command: "winning-ads.unfollow",
19
+ description: "Stop following a brand \u2014 removes it from your ad-dna library by advertiser id.",
20
+ args: {
21
+ advertiser: { type: "string", description: "Advertiser id to unfollow", required: true }
22
+ }
23
+ });
24
+ var unfollowCommand = defineCommand({
25
+ meta: {
26
+ name: "unfollow",
27
+ description: "Stop following a brand by advertiser id. Example: baker winning-ads unfollow adv_123"
28
+ },
29
+ args: {
30
+ advertiser: { type: "positional", description: "Advertiser id", required: true }
31
+ },
32
+ run: async ({ args }) => {
33
+ try {
34
+ const data = await apiPost("/api/ad-library/unfollow", {
35
+ advertiser_id: String(args.advertiser)
36
+ });
37
+ writeJson({ ok: true, data });
38
+ } catch (err) {
39
+ reportError(err);
40
+ }
41
+ }
42
+ });
43
+ export {
44
+ unfollowCommand
45
+ };
46
+ //# sourceMappingURL=unfollow-ZI5QU7RD.js.map
@@ -0,0 +1,67 @@
1
+ import {
2
+ failApi,
3
+ failValidation,
4
+ writeOk
5
+ } from "./chunk-JFA4R3KS.js";
6
+ import "./chunk-FRK7SSEH.js";
7
+ import "./chunk-GXDLWBOY.js";
8
+ import "./chunk-GIWHHCD6.js";
9
+ import "./chunk-XQIOCIDO.js";
10
+ import "./chunk-ML7DLFFY.js";
11
+ import {
12
+ apiPost,
13
+ validateConvexId
14
+ } from "./chunk-XDZVBX6L.js";
15
+ import "./chunk-N5O67GK5.js";
16
+ import {
17
+ requireChatId
18
+ } from "./chunk-EE72SSB2.js";
19
+ import {
20
+ registerSchema
21
+ } from "./chunk-WNSE7N75.js";
22
+ import "./chunk-YQSBHWOI.js";
23
+
24
+ // src/commands/actions/unlink.ts
25
+ import { defineCommand } from "citty";
26
+ registerSchema({
27
+ command: "actions.unlink",
28
+ description: "Stage removal of a 'blocker -> blocked' dependency. The blocked action must be claimed by current chat.",
29
+ args: {
30
+ blocker: { type: "string", description: "Blocker action ID", required: true },
31
+ blocked: { type: "string", description: "Blocked action ID (must be claimed by current chat)", required: true }
32
+ }
33
+ });
34
+ var unlinkCommand = defineCommand({
35
+ meta: {
36
+ name: "unlink",
37
+ description: "Stage removal of a dependency. Example: baker actions unlink --blocker <id> --blocked <id>"
38
+ },
39
+ args: {
40
+ blocker: { type: "string", description: "Blocker action ID", required: false },
41
+ blocked: { type: "string", description: "Blocked action ID", required: false }
42
+ },
43
+ run: async ({ args }) => {
44
+ try {
45
+ const blocker = args.blocker;
46
+ const blocked = args.blocked;
47
+ if (!blocker || !blocked) {
48
+ failValidation("--blocker and --blocked are required.");
49
+ }
50
+ validateConvexId(blocker);
51
+ validateConvexId(blocked);
52
+ const chatId = requireChatId();
53
+ await apiPost("/api/actions/unlink", {
54
+ chatId,
55
+ blockerId: blocker,
56
+ blockedId: blocked
57
+ });
58
+ writeOk();
59
+ } catch (err) {
60
+ failApi(err);
61
+ }
62
+ }
63
+ });
64
+ export {
65
+ unlinkCommand
66
+ };
67
+ //# sourceMappingURL=unlink-PTWUSM5B.js.map
@@ -0,0 +1,95 @@
1
+ import {
2
+ analyticsErrorEnvelope
3
+ } from "./chunk-IC6SDOED.js";
4
+ import {
5
+ ANALYTICS_UNSTAGE_KINDS
6
+ } from "./chunk-BC2BXRXY.js";
7
+ import "./chunk-EDLZGTGN.js";
8
+ import {
9
+ writeJsonEnvelope
10
+ } from "./chunk-SWL4AAPP.js";
11
+ import {
12
+ apiPost
13
+ } from "./chunk-XDZVBX6L.js";
14
+ import "./chunk-N5O67GK5.js";
15
+ import {
16
+ requireChatId
17
+ } from "./chunk-EE72SSB2.js";
18
+ import {
19
+ registerSchema
20
+ } from "./chunk-WNSE7N75.js";
21
+ import "./chunk-YQSBHWOI.js";
22
+
23
+ // src/commands/analytics/unstage.ts
24
+ import { defineCommand } from "citty";
25
+ var KIND_LIST = ANALYTICS_UNSTAGE_KINDS.join("|");
26
+ registerSchema({
27
+ command: "analytics.unstage",
28
+ description: `Take back a Measure change this chat staged, before Publish \u2014 the same as discarding its row in the change review. Name one with --kind and --ref (mapping: <platform>/<name> as \`analytics map\` prints it; conversion: the event key; send: the send id; source: the source id or src_temp_*), or pass --all to take back everything staged (all kinds, or one with --kind). Never touches anything already live.`,
29
+ args: {
30
+ kind: {
31
+ type: "string",
32
+ description: `What was staged: ${KIND_LIST}`,
33
+ required: false,
34
+ enum: [...ANALYTICS_UNSTAGE_KINDS]
35
+ },
36
+ ref: { type: "string", description: "Which staged change of that kind (see the description)", required: false },
37
+ all: { type: "boolean", description: "Take back everything staged (of --kind, or of every kind)", required: false }
38
+ }
39
+ });
40
+ function refuse(message) {
41
+ writeJsonEnvelope({ ok: false, error: { code: "VALIDATION_ERROR", message } });
42
+ process.exit(1);
43
+ }
44
+ function isUnstageKind(value) {
45
+ return ANALYTICS_UNSTAGE_KINDS.includes(value);
46
+ }
47
+ function unstageBody(args, chatId) {
48
+ if (args.kind !== void 0 && !isUnstageKind(args.kind)) {
49
+ refuse(`--kind must be one of ${KIND_LIST}.`);
50
+ }
51
+ const kind = args.kind;
52
+ if (args.all === true) {
53
+ if (args.ref !== void 0) {
54
+ refuse("Pass --ref to take back one staged change, or --all for everything \u2014 not both.");
55
+ }
56
+ return { chatId, all: true, ...kind !== void 0 ? { kind } : {} };
57
+ }
58
+ if (kind === void 0 || args.ref === void 0 || args.ref.trim() === "") {
59
+ refuse(`Pass --kind (${KIND_LIST}) with --ref to take back one staged change, or --all for everything staged.`);
60
+ }
61
+ return { chatId, kind, ref: args.ref };
62
+ }
63
+ var unstageCommand = defineCommand({
64
+ meta: {
65
+ name: "unstage",
66
+ description: "Take back a Measure change this chat staged, before Publish. Examples: baker analytics unstage --kind conversion --ref 'page:Deal won' | baker analytics unstage --kind mapping --ref google/kw | baker analytics unstage --all"
67
+ },
68
+ args: {
69
+ kind: { type: "string", description: `What was staged: ${KIND_LIST}`, required: false },
70
+ ref: { type: "string", description: "Which staged change of that kind", required: false },
71
+ all: { type: "boolean", description: "Take back everything staged", required: false }
72
+ },
73
+ run: async ({ args }) => {
74
+ try {
75
+ const body = unstageBody(
76
+ {
77
+ ...typeof args.kind === "string" ? { kind: args.kind } : {},
78
+ ...typeof args.ref === "string" ? { ref: args.ref } : {},
79
+ ...args.all === true ? { all: true } : {}
80
+ },
81
+ requireChatId()
82
+ );
83
+ const response = await apiPost("/api/analytics/draft-op/remove", body);
84
+ writeJsonEnvelope(response);
85
+ } catch (err) {
86
+ writeJsonEnvelope({ ok: false, error: analyticsErrorEnvelope(err) });
87
+ process.exit(1);
88
+ }
89
+ }
90
+ });
91
+ export {
92
+ unstageBody,
93
+ unstageCommand
94
+ };
95
+ //# sourceMappingURL=unstage-7F7JI6HY.js.map