@koda-sl/baker-cli 0.495.0 → 0.497.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 (848) hide show
  1. package/README.md +25 -4
  2. package/dist/account-ZKJFX2GK.js +80 -0
  3. package/dist/account-ZKJFX2GK.js.map +1 -0
  4. package/dist/account-users-SZCYHVBM.js +62 -0
  5. package/dist/account-users-SZCYHVBM.js.map +1 -0
  6. package/dist/accounts-5DFYKYSM.js +78 -0
  7. package/dist/accounts-5DFYKYSM.js.map +1 -0
  8. package/dist/accounts-OGAIQNE6.js +612 -0
  9. package/dist/accounts-OGAIQNE6.js.map +1 -0
  10. package/dist/actions-FMNJSOBA.js +55 -0
  11. package/dist/activecampaign-LYYYH6XD.js +936 -0
  12. package/dist/activecampaign-LYYYH6XD.js.map +1 -0
  13. package/dist/add-AOQLZRPC.js +80 -0
  14. package/dist/add-AOQLZRPC.js.map +1 -0
  15. package/dist/add-HWXEPSZF.js +105 -0
  16. package/dist/add-HWXEPSZF.js.map +1 -0
  17. package/dist/add-VDZPGZF5.js +148 -0
  18. package/dist/add-VDZPGZF5.js.map +1 -0
  19. package/dist/add-YYP3O536.js +303 -0
  20. package/dist/add-YYP3O536.js.map +1 -0
  21. package/dist/ads-OLXSDPD6.js +40 -0
  22. package/dist/advertisers-STYAIX72.js +121 -0
  23. package/dist/advertisers-STYAIX72.js.map +1 -0
  24. package/dist/analytics-6WBK4VFO.js +1977 -0
  25. package/dist/analytics-6WBK4VFO.js.map +1 -0
  26. package/dist/analytics-DHB325DM.js +434 -0
  27. package/dist/analytics-DHB325DM.js.map +1 -0
  28. package/dist/assign-BFXHYTMF.js +78 -0
  29. package/dist/assign-BFXHYTMF.js.map +1 -0
  30. package/dist/audience-size-XWHZV2GH.js +74 -0
  31. package/dist/audience-size-XWHZV2GH.js.map +1 -0
  32. package/dist/audit-IYGRU7LD.js +152 -0
  33. package/dist/audit-IYGRU7LD.js.map +1 -0
  34. package/dist/autocomplete-SDDSJTAF.js +112 -0
  35. package/dist/autocomplete-SDDSJTAF.js.map +1 -0
  36. package/dist/avatars-I4H3NMEJ.js +38 -0
  37. package/dist/bid-pricing-OVYBDRMV.js +101 -0
  38. package/dist/bid-pricing-OVYBDRMV.js.map +1 -0
  39. package/dist/brand-3V7ECY7D.js +22 -0
  40. package/dist/brief-U2W7KMFC.js +539 -0
  41. package/dist/brief-U2W7KMFC.js.map +1 -0
  42. package/dist/campaign-groups-FJHBVUA3.js +97 -0
  43. package/dist/campaign-groups-FJHBVUA3.js.map +1 -0
  44. package/dist/campaign-writes-XKYYMZML.js +166 -0
  45. package/dist/campaign-writes-XKYYMZML.js.map +1 -0
  46. package/dist/campaigns-E5UW4I3X.js +111 -0
  47. package/dist/campaigns-E5UW4I3X.js.map +1 -0
  48. package/dist/campaigns-MCB76NPQ.js +107 -0
  49. package/dist/canvas-JCNKMGCG.js +46 -0
  50. package/dist/capabilities-CLTZCXCZ.js +145 -0
  51. package/dist/capabilities-CLTZCXCZ.js.map +1 -0
  52. package/dist/chatgpt-XFZ42NXC.js +47 -0
  53. package/dist/chats-DTJSBDWO.js +277 -0
  54. package/dist/chats-DTJSBDWO.js.map +1 -0
  55. package/dist/check-CZTS64AW.js +105 -0
  56. package/dist/check-CZTS64AW.js.map +1 -0
  57. package/dist/chunk-2YTBPRRG.js +207 -0
  58. package/dist/chunk-3SNCMEJB.js +97 -0
  59. package/dist/chunk-7QGFO35A.js +23 -0
  60. package/dist/chunk-AV7ALENU.js +191 -0
  61. package/dist/chunk-BRLFQ4VX.js +604 -0
  62. package/dist/chunk-CAZGM2NX.js +92 -0
  63. package/dist/chunk-CAZGM2NX.js.map +1 -0
  64. package/dist/chunk-DJE7UXYT.js +831 -0
  65. package/dist/chunk-EFWXYUSK.js +139 -0
  66. package/dist/chunk-EONSZAZB.js +3868 -0
  67. package/dist/chunk-FALJQCWL.js +661 -0
  68. package/dist/chunk-FALJQCWL.js.map +1 -0
  69. package/dist/chunk-FG3MV2XM.js +89 -0
  70. package/dist/chunk-FKG476GH.js +392 -0
  71. package/dist/chunk-FUGQSIYG.js +297 -0
  72. package/dist/chunk-G4OFH3MX.js +455 -0
  73. package/dist/chunk-G4OFH3MX.js.map +1 -0
  74. package/dist/chunk-GZ4A2VYW.js +39 -0
  75. package/dist/chunk-GZ4A2VYW.js.map +1 -0
  76. package/dist/chunk-HPLHAHG5.js +275 -0
  77. package/dist/chunk-I24YT2KG.js +122 -0
  78. package/dist/chunk-IFDZZOUC.js +903 -0
  79. package/dist/chunk-JVVUI55M.js +455 -0
  80. package/dist/chunk-KKSHEPBY.js +363 -0
  81. package/dist/chunk-KQ7RCLGC.js +547 -0
  82. package/dist/chunk-L7WMS5PW.js +172 -0
  83. package/dist/chunk-LBRO4MTL.js +19 -0
  84. package/dist/chunk-LNRPOULW.js +224 -0
  85. package/dist/chunk-LX6WC2XZ.js +942 -0
  86. package/dist/chunk-MMGTJBM6.js +142 -0
  87. package/dist/chunk-NZS3KEQ2.js +97 -0
  88. package/dist/chunk-NZS3KEQ2.js.map +1 -0
  89. package/dist/chunk-O37VU7FG.js +6799 -0
  90. package/dist/chunk-O37VU7FG.js.map +1 -0
  91. package/dist/chunk-OEZYSL3U.js +51 -0
  92. package/dist/chunk-OOVHBMQB.js +103 -0
  93. package/dist/chunk-PTH7VWKK.js +159 -0
  94. package/dist/chunk-PYD6IGW6.js +401 -0
  95. package/dist/chunk-PYD6IGW6.js.map +1 -0
  96. package/dist/chunk-QE2E4EYJ.js +349 -0
  97. package/dist/chunk-QE2E4EYJ.js.map +1 -0
  98. package/dist/chunk-QZF4BVKL.js +66 -0
  99. package/dist/chunk-RITUSBYO.js +61 -0
  100. package/dist/chunk-SSTL3A7Z.js +206 -0
  101. package/dist/chunk-SZNGQ2GF.js +64 -0
  102. package/dist/chunk-SZNGQ2GF.js.map +1 -0
  103. package/dist/chunk-TD4SO6TR.js +169 -0
  104. package/dist/chunk-UZ4RTOFG.js +91 -0
  105. package/dist/chunk-VAX7PFQV.js +592 -0
  106. package/dist/chunk-VDRSZK4P.js +494 -0
  107. package/dist/chunk-VNU2EYD4.js +344 -0
  108. package/dist/chunk-WT4WDIXA.js +156 -0
  109. package/dist/chunk-XEX23CIB.js +160 -0
  110. package/dist/chunk-XXDF25BW.js +8939 -0
  111. package/dist/chunk-YJ3LSFMX.js +249 -0
  112. package/dist/chunk-YVK5RT3B.js +197 -0
  113. package/dist/chunk-YWWRLZUR.js +433 -0
  114. package/dist/chunk-Z4S5BCVZ.js +57 -0
  115. package/dist/chunk-ZYGK7GAK.js +1079 -0
  116. package/dist/claim-TSFPWTQY.js +198 -0
  117. package/dist/claim-TSFPWTQY.js.map +1 -0
  118. package/dist/cli.js +38 -37
  119. package/dist/cli.js.map +1 -1
  120. package/dist/companies-P7FZNJQV.js +196 -0
  121. package/dist/companies-P7FZNJQV.js.map +1 -0
  122. package/dist/complete-SYDIHMD5.js +82 -0
  123. package/dist/complete-SYDIHMD5.js.map +1 -0
  124. package/dist/connect-COS6G45S.js +43 -0
  125. package/dist/conversation-UJOWMJRH.js +94 -0
  126. package/dist/conversation-UJOWMJRH.js.map +1 -0
  127. package/dist/conversions-ONOIEILU.js +138 -0
  128. package/dist/conversions-ONOIEILU.js.map +1 -0
  129. package/dist/create-DPQRYQXK.js +208 -0
  130. package/dist/create-DPQRYQXK.js.map +1 -0
  131. package/dist/create-JD76Z4A4.js +60 -0
  132. package/dist/create-JD76Z4A4.js.map +1 -0
  133. package/dist/create-NOT3HGP2.js +133 -0
  134. package/dist/create-NOT3HGP2.js.map +1 -0
  135. package/dist/create-ZYEB7SHF.js +236 -0
  136. package/dist/create-ZYEB7SHF.js.map +1 -0
  137. package/dist/creatives-LRSELC7Y.js +221 -0
  138. package/dist/creatives-LRSELC7Y.js.map +1 -0
  139. package/dist/creatives-SEQHJD2M.js +58 -0
  140. package/dist/credentials-LHPTUVVA.js +288 -0
  141. package/dist/credentials-LHPTUVVA.js.map +1 -0
  142. package/dist/critique-Q7GSZ5RP.js +1459 -0
  143. package/dist/critique-Q7GSZ5RP.js.map +1 -0
  144. package/dist/critique-RR2XOQCE.js +228 -0
  145. package/dist/critique-RR2XOQCE.js.map +1 -0
  146. package/dist/crm-J7EU32PL.js +319 -0
  147. package/dist/crm-J7EU32PL.js.map +1 -0
  148. package/dist/crm-MC444ZVU.js +225 -0
  149. package/dist/crm-MC444ZVU.js.map +1 -0
  150. package/dist/customers-LMSX33FO.js +57 -0
  151. package/dist/delete-BQBVATMF.js +55 -0
  152. package/dist/delete-BQBVATMF.js.map +1 -0
  153. package/dist/delete-K7A3AUPH.js +65 -0
  154. package/dist/delete-K7A3AUPH.js.map +1 -0
  155. package/dist/delete-VV2ICIHF.js +67 -0
  156. package/dist/delete-VV2ICIHF.js.map +1 -0
  157. package/dist/demographics-7GWUXXS6.js +139 -0
  158. package/dist/demographics-7GWUXXS6.js.map +1 -0
  159. package/dist/discard-3CLZ4DPD.js +67 -0
  160. package/dist/discard-3CLZ4DPD.js.map +1 -0
  161. package/dist/domain-ZS74BSE6.js +99 -0
  162. package/dist/domain-ZS74BSE6.js.map +1 -0
  163. package/dist/draft-J3B33RAZ.js +308 -0
  164. package/dist/draft-J3B33RAZ.js.map +1 -0
  165. package/dist/draft-MZLWVX3D.js +218 -0
  166. package/dist/draft-MZLWVX3D.js.map +1 -0
  167. package/dist/draft-R56PIXCV.js +333 -0
  168. package/dist/draft-R56PIXCV.js.map +1 -0
  169. package/dist/experiment-7RJ5X2LL.js +1397 -0
  170. package/dist/experiments-NOSJJMYI.js +234 -0
  171. package/dist/experiments-NOSJJMYI.js.map +1 -0
  172. package/dist/facets-E6SHYUAI.js +115 -0
  173. package/dist/facets-E6SHYUAI.js.map +1 -0
  174. package/dist/feedback-HXCQBV7S.js +107 -0
  175. package/dist/feedback-HXCQBV7S.js.map +1 -0
  176. package/dist/feedback-record-GXPYXNT6.js +261 -0
  177. package/dist/feedback-record-GXPYXNT6.js.map +1 -0
  178. package/dist/fetch-HMUGSRE4.js +177 -0
  179. package/dist/fetch-HMUGSRE4.js.map +1 -0
  180. package/dist/find-2EPXK5RF.js +134 -0
  181. package/dist/fit-W7UNFZT5.js +63 -0
  182. package/dist/flows-SO5J3M3X.js +248 -0
  183. package/dist/flows-SO5J3M3X.js.map +1 -0
  184. package/dist/fonts-N42UYWTX.js +37 -0
  185. package/dist/forecast-24LGJVLC.js +119 -0
  186. package/dist/forecast-24LGJVLC.js.map +1 -0
  187. package/dist/funnel-NYT36B3C.js +395 -0
  188. package/dist/funnel-NYT36B3C.js.map +1 -0
  189. package/dist/ga4-6EIQC2TG.js +55 -0
  190. package/dist/get-KAGO4EC5.js +80 -0
  191. package/dist/get-KAGO4EC5.js.map +1 -0
  192. package/dist/get-PZX27LQY.js +38 -0
  193. package/dist/get-PZX27LQY.js.map +1 -0
  194. package/dist/get-R5JAFHTH.js +57 -0
  195. package/dist/get-R5JAFHTH.js.map +1 -0
  196. package/dist/google-O5OI6QFU.js +136 -0
  197. package/dist/google-ads-6X4BHGUR.js +196 -0
  198. package/dist/google-ads-6X4BHGUR.js.map +1 -0
  199. package/dist/gsc-BM3T2GDL.js +30 -0
  200. package/dist/history-LGOWYLBE.js +134 -0
  201. package/dist/history-LGOWYLBE.js.map +1 -0
  202. package/dist/hubspot-LJB3ETUT.js +780 -0
  203. package/dist/hubspot-LJB3ETUT.js.map +1 -0
  204. package/dist/icon-B7DG53S5.js +137 -0
  205. package/dist/ideas-DYN2DMFN.js +41 -0
  206. package/dist/images-EQCUXEHF.js +92 -0
  207. package/dist/ingest-B46AY3QU.js +24 -0
  208. package/dist/ingest-T7ZS2R4U.js +108 -0
  209. package/dist/ingest-T7ZS2R4U.js.map +1 -0
  210. package/dist/inspect-BSNGAT2S.js +190 -0
  211. package/dist/inspect-BSNGAT2S.js.map +1 -0
  212. package/dist/inspiration-TCCKM4R7.js +53 -0
  213. package/dist/keyword-metrics-KNTIN4ZK.js +198 -0
  214. package/dist/keyword-metrics-KNTIN4ZK.js.map +1 -0
  215. package/dist/keywords-for-site-S4MXGXWR.js +129 -0
  216. package/dist/keywords-for-site-S4MXGXWR.js.map +1 -0
  217. package/dist/landing-WVPA7NBR.js +28 -0
  218. package/dist/leads-EINV5FK3.js +113 -0
  219. package/dist/leads-EINV5FK3.js.map +1 -0
  220. package/dist/learn-7Z2VR6MS.js +205 -0
  221. package/dist/learn-7Z2VR6MS.js.map +1 -0
  222. package/dist/line-item-writes-Z3TIB5KZ.js +209 -0
  223. package/dist/line-item-writes-Z3TIB5KZ.js.map +1 -0
  224. package/dist/line-items-OEWYOPFP.js +103 -0
  225. package/dist/link-KYHUIPJE.js +65 -0
  226. package/dist/link-KYHUIPJE.js.map +1 -0
  227. package/dist/linkedin-JVB4HXJC.js +1314 -0
  228. package/dist/linkedin-JVB4HXJC.js.map +1 -0
  229. package/dist/list-EORTO73V.js +93 -0
  230. package/dist/list-EORTO73V.js.map +1 -0
  231. package/dist/list-QQVLURKH.js +152 -0
  232. package/dist/list-QQVLURKH.js.map +1 -0
  233. package/dist/list-QWGKRUSM.js +65 -0
  234. package/dist/list-QWGKRUSM.js.map +1 -0
  235. package/dist/list-WRBWQASJ.js +50 -0
  236. package/dist/list-Z6NMNK3T.js +304 -0
  237. package/dist/list-Z6NMNK3T.js.map +1 -0
  238. package/dist/log-RUMKYPYK.js +93 -0
  239. package/dist/log-RUMKYPYK.js.map +1 -0
  240. package/dist/logo-QTSBKP2J.js +18 -0
  241. package/dist/make-IJGCQA7C.js +1354 -0
  242. package/dist/make-IJGCQA7C.js.map +1 -0
  243. package/dist/map-QZHIJFQT.js +434 -0
  244. package/dist/map-QZHIJFQT.js.map +1 -0
  245. package/dist/mcp-ZH2XDV5P.js +715 -0
  246. package/dist/mcp-ZH2XDV5P.js.map +1 -0
  247. package/dist/media-sources-SQ2RPDBO.js +35 -0
  248. package/dist/media-sources-SQ2RPDBO.js.map +1 -0
  249. package/dist/members-4YX7JEZM.js +45 -0
  250. package/dist/members-4YX7JEZM.js.map +1 -0
  251. package/dist/normalize-ABIWLRIT.js +142 -0
  252. package/dist/normalize-ABIWLRIT.js.map +1 -0
  253. package/dist/options-SVCQVTNE.js +123 -0
  254. package/dist/options-SVCQVTNE.js.map +1 -0
  255. package/dist/organization-FNKDC742.js +947 -0
  256. package/dist/organization-FNKDC742.js.map +1 -0
  257. package/dist/performance-HTU5FR2K.js +25 -0
  258. package/dist/plan-W2K45F7K.js +207 -0
  259. package/dist/posts-3DAPTBH2.js +34 -0
  260. package/dist/posts-3DAPTBH2.js.map +1 -0
  261. package/dist/promoted-tweet-writes-DD3CJNWW.js +181 -0
  262. package/dist/promoted-tweet-writes-DD3CJNWW.js.map +1 -0
  263. package/dist/promoted-tweets-TTWN5OMW.js +119 -0
  264. package/dist/publish-Z62KGDJ2.js +342 -0
  265. package/dist/publish-Z62KGDJ2.js.map +1 -0
  266. package/dist/reddit-6C3PT5CT.js +27 -0
  267. package/dist/refresh-HCQXVFVR.js +95 -0
  268. package/dist/refresh-HCQXVFVR.js.map +1 -0
  269. package/dist/refresh-ZCGH64OZ.js +42 -0
  270. package/dist/refresh-ZCGH64OZ.js.map +1 -0
  271. package/dist/release-FIHW2HCH.js +61 -0
  272. package/dist/release-FIHW2HCH.js.map +1 -0
  273. package/dist/remove-CBR7NVMI.js +51 -0
  274. package/dist/remove-CBR7NVMI.js.map +1 -0
  275. package/dist/remove-PUZP5GWN.js +49 -0
  276. package/dist/remove-PUZP5GWN.js.map +1 -0
  277. package/dist/reopen-EJGLRQWR.js +64 -0
  278. package/dist/reopen-EJGLRQWR.js.map +1 -0
  279. package/dist/rerun-TVBZXASH.js +91 -0
  280. package/dist/rerun-TVBZXASH.js.map +1 -0
  281. package/dist/research-L25D4WHQ.js +263 -0
  282. package/dist/research-L25D4WHQ.js.map +1 -0
  283. package/dist/research-YCMMQVK6.js +62 -0
  284. package/dist/reset-HKKCWKZ7.js +55 -0
  285. package/dist/reset-HKKCWKZ7.js.map +1 -0
  286. package/dist/reset-SRL6I6GP.js +55 -0
  287. package/dist/reset-SRL6I6GP.js.map +1 -0
  288. package/dist/resolve-POMTTAFR.js +122 -0
  289. package/dist/resolve-POMTTAFR.js.map +1 -0
  290. package/dist/retry-MEPTOAV2.js +61 -0
  291. package/dist/retry-MEPTOAV2.js.map +1 -0
  292. package/dist/retry-RNGM3KKA.js +63 -0
  293. package/dist/retry-RNGM3KKA.js.map +1 -0
  294. package/dist/revenue-X4KPTSAM.js +89 -0
  295. package/dist/revenue-X4KPTSAM.js.map +1 -0
  296. package/dist/rules-VK7YA23Q.js +97 -0
  297. package/dist/rules-VK7YA23Q.js.map +1 -0
  298. package/dist/rules-add-VG7AT6EG.js +463 -0
  299. package/dist/rules-add-VG7AT6EG.js.map +1 -0
  300. package/dist/run-DIDQSZU7.js +67 -0
  301. package/dist/run-DIDQSZU7.js.map +1 -0
  302. package/dist/run-SR7DJ7M5.js +66 -0
  303. package/dist/scaffold-ad-46GTFUMP.js +1512 -0
  304. package/dist/scaffold-ad-46GTFUMP.js.map +1 -0
  305. package/dist/scaffold-static-ad-U63V4UHR.js +1006 -0
  306. package/dist/scaffold-static-ad-U63V4UHR.js.map +1 -0
  307. package/dist/scaffold-video-4DNTURH6.js +884 -0
  308. package/dist/scaffold-video-4DNTURH6.js.map +1 -0
  309. package/dist/schedule-JO66N7XO.js +62 -0
  310. package/dist/schedule-JO66N7XO.js.map +1 -0
  311. package/dist/schedule-JZBIX6LH.js +67 -0
  312. package/dist/schedule-JZBIX6LH.js.map +1 -0
  313. package/dist/scheduled-agents-N63EZNY6.js +50 -0
  314. package/dist/schema-B2XANMEY.js +133 -0
  315. package/dist/schema-B2XANMEY.js.map +1 -0
  316. package/dist/schema-C6SGBNA6.js +69 -0
  317. package/dist/search-7GHS3OUZ.js +51 -0
  318. package/dist/search-7GHS3OUZ.js.map +1 -0
  319. package/dist/search-W5HZUJA2.js +175 -0
  320. package/dist/search-W5HZUJA2.js.map +1 -0
  321. package/dist/select-LMGLNFWB.js +102 -0
  322. package/dist/select-LMGLNFWB.js.map +1 -0
  323. package/dist/set-prompt-M5E3UZDM.js +194 -0
  324. package/dist/set-prompt-M5E3UZDM.js.map +1 -0
  325. package/dist/setup-links-ERBQSKAB.js +142 -0
  326. package/dist/setup-links-ERBQSKAB.js.map +1 -0
  327. package/dist/site-PNVFJRYK.js +178 -0
  328. package/dist/site-PNVFJRYK.js.map +1 -0
  329. package/dist/sources-DMZJPLKC.js +455 -0
  330. package/dist/sources-DMZJPLKC.js.map +1 -0
  331. package/dist/sources-HN3GCEDX.js +30 -0
  332. package/dist/stale-VWN25WTL.js +72 -0
  333. package/dist/stale-VWN25WTL.js.map +1 -0
  334. package/dist/stats-CVF6AC7R.js +34 -0
  335. package/dist/status-SF7DTPCJ.js +63 -0
  336. package/dist/status-SF7DTPCJ.js.map +1 -0
  337. package/dist/stock-4LPQ6SM7.js +179 -0
  338. package/dist/studio-NZ6WQ7OE.js +49 -0
  339. package/dist/suggest-WMMEQCUH.js +66 -0
  340. package/dist/suggest-WMMEQCUH.js.map +1 -0
  341. package/dist/sync-F7VNZLWY.js +55 -0
  342. package/dist/sync-F7VNZLWY.js.map +1 -0
  343. package/dist/sync-HVNDPBOD.js +55 -0
  344. package/dist/sync-HVNDPBOD.js.map +1 -0
  345. package/dist/sync-definition-CKEUYKWN.js +65 -0
  346. package/dist/tag-KTQ2FV5C.js +57 -0
  347. package/dist/tag-KTQ2FV5C.js.map +1 -0
  348. package/dist/tag-manager-FLXXLNKP.js +43 -0
  349. package/dist/tags-EUOOSAKN.js +26 -0
  350. package/dist/tags-KOMAP2G5.js +21 -0
  351. package/dist/tags-KOMAP2G5.js.map +1 -0
  352. package/dist/tags-TKXJGTR3.js +21 -0
  353. package/dist/tags-TKXJGTR3.js.map +1 -0
  354. package/dist/tags-VWIPDCUA.js +225 -0
  355. package/dist/tags-VWIPDCUA.js.map +1 -0
  356. package/dist/tags-XAB4HWGW.js +21 -0
  357. package/dist/tags-XAB4HWGW.js.map +1 -0
  358. package/dist/targeting-criteria-HE7K52WN.js +113 -0
  359. package/dist/targets-NA4XPDBF.js +104 -0
  360. package/dist/targets-NA4XPDBF.js.map +1 -0
  361. package/dist/testimonials-3Q5XM7JD.js +32 -0
  362. package/dist/top-companies-TKO4QGPJ.js +109 -0
  363. package/dist/top-companies-TKO4QGPJ.js.map +1 -0
  364. package/dist/translate-YVIZ5T44.js +605 -0
  365. package/dist/translate-YVIZ5T44.js.map +1 -0
  366. package/dist/triggers-QX7VW7UO.js +143 -0
  367. package/dist/triggers-QX7VW7UO.js.map +1 -0
  368. package/dist/unlink-64SRPUNG.js +68 -0
  369. package/dist/unlink-64SRPUNG.js.map +1 -0
  370. package/dist/unstage-5X2MOUMF.js +86 -0
  371. package/dist/unstage-5X2MOUMF.js.map +1 -0
  372. package/dist/update-22ZBHURE.js +81 -0
  373. package/dist/update-22ZBHURE.js.map +1 -0
  374. package/dist/update-2LTPSGWT.js +99 -0
  375. package/dist/update-2LTPSGWT.js.map +1 -0
  376. package/dist/update-DOKS7ATM.js +189 -0
  377. package/dist/update-DOKS7ATM.js.map +1 -0
  378. package/dist/update-FB6X463M.js +64 -0
  379. package/dist/update-FB6X463M.js.map +1 -0
  380. package/dist/update-QIZ7XFAM.js +153 -0
  381. package/dist/update-QIZ7XFAM.js.map +1 -0
  382. package/dist/upload-XJ7TUVIK.js +127 -0
  383. package/dist/upload-XJ7TUVIK.js.map +1 -0
  384. package/dist/url-params-KLQOLNPS.js +99 -0
  385. package/dist/url-params-KLQOLNPS.js.map +1 -0
  386. package/dist/validate-YTBJBG44.js +118 -0
  387. package/dist/validate-YTBJBG44.js.map +1 -0
  388. package/dist/videos-WAPUPJVT.js +39 -0
  389. package/dist/viewer-check-GHQA3UY2.js +81 -0
  390. package/dist/web-6JMWERTT.js +141 -0
  391. package/dist/web-6JMWERTT.js.map +1 -0
  392. package/dist/winning-ads-XCVUAIOU.js +86 -0
  393. package/dist/write-commands-N74CDMQM.js +1493 -0
  394. package/dist/write-commands-N74CDMQM.js.map +1 -0
  395. package/dist/x-SI4KYDEY.js +47 -0
  396. package/package.json +1 -1
  397. package/dist/account-UHNR5KTE.js +0 -79
  398. package/dist/account-UHNR5KTE.js.map +0 -1
  399. package/dist/accounts-KMLXHADA.js +0 -77
  400. package/dist/accounts-KMLXHADA.js.map +0 -1
  401. package/dist/accounts-QDGNTSTV.js +0 -611
  402. package/dist/accounts-QDGNTSTV.js.map +0 -1
  403. package/dist/actions-QL5UD2W4.js +0 -55
  404. package/dist/activecampaign-5OD45ROS.js +0 -935
  405. package/dist/activecampaign-5OD45ROS.js.map +0 -1
  406. package/dist/add-2F7BEVYD.js +0 -105
  407. package/dist/add-2F7BEVYD.js.map +0 -1
  408. package/dist/add-6K6LO7CM.js +0 -104
  409. package/dist/add-6K6LO7CM.js.map +0 -1
  410. package/dist/add-LYDJZDGO.js +0 -302
  411. package/dist/add-LYDJZDGO.js.map +0 -1
  412. package/dist/ads-DHPJFU52.js +0 -40
  413. package/dist/advertisers-23LU7GTV.js +0 -120
  414. package/dist/advertisers-23LU7GTV.js.map +0 -1
  415. package/dist/analytics-DVD4OBBR.js +0 -1976
  416. package/dist/analytics-DVD4OBBR.js.map +0 -1
  417. package/dist/analytics-HO2SLL4W.js +0 -433
  418. package/dist/analytics-HO2SLL4W.js.map +0 -1
  419. package/dist/assign-CLKJKH2B.js +0 -77
  420. package/dist/assign-CLKJKH2B.js.map +0 -1
  421. package/dist/audience-size-NNYYXODL.js +0 -73
  422. package/dist/audience-size-NNYYXODL.js.map +0 -1
  423. package/dist/audit-KB4P2XGS.js +0 -151
  424. package/dist/audit-KB4P2XGS.js.map +0 -1
  425. package/dist/autocomplete-VZD2SMTE.js +0 -111
  426. package/dist/autocomplete-VZD2SMTE.js.map +0 -1
  427. package/dist/avatars-FKOO6VZ2.js +0 -38
  428. package/dist/bid-pricing-6LLXOLLI.js +0 -100
  429. package/dist/bid-pricing-6LLXOLLI.js.map +0 -1
  430. package/dist/brand-NNWHBIAX.js +0 -22
  431. package/dist/brief-CPJQWT6W.js +0 -538
  432. package/dist/brief-CPJQWT6W.js.map +0 -1
  433. package/dist/campaign-groups-YPYNXOWU.js +0 -95
  434. package/dist/campaign-groups-YPYNXOWU.js.map +0 -1
  435. package/dist/campaign-writes-UJ4L2O6G.js +0 -165
  436. package/dist/campaign-writes-UJ4L2O6G.js.map +0 -1
  437. package/dist/campaigns-HLBZRH5A.js +0 -107
  438. package/dist/campaigns-N44ZDGB5.js +0 -109
  439. package/dist/campaigns-N44ZDGB5.js.map +0 -1
  440. package/dist/canvas-D64GLWUO.js +0 -46
  441. package/dist/capabilities-LWXCWMIY.js +0 -144
  442. package/dist/capabilities-LWXCWMIY.js.map +0 -1
  443. package/dist/chatgpt-YI6YNACI.js +0 -47
  444. package/dist/chats-7WGC2CVW.js +0 -276
  445. package/dist/chats-7WGC2CVW.js.map +0 -1
  446. package/dist/check-EH6BXWWL.js +0 -104
  447. package/dist/check-EH6BXWWL.js.map +0 -1
  448. package/dist/chunk-237WE5LX.js +0 -455
  449. package/dist/chunk-237WE5LX.js.map +0 -1
  450. package/dist/chunk-2B772ZEA.js +0 -169
  451. package/dist/chunk-2KRK667G.js +0 -51
  452. package/dist/chunk-2TVXJPGR.js +0 -103
  453. package/dist/chunk-3AMLOCXY.js +0 -392
  454. package/dist/chunk-3B5LPK6D.js +0 -658
  455. package/dist/chunk-3B5LPK6D.js.map +0 -1
  456. package/dist/chunk-3N5A44NQ.js +0 -122
  457. package/dist/chunk-3WAYZQNV.js +0 -61
  458. package/dist/chunk-5A257KJA.js +0 -160
  459. package/dist/chunk-6QGS3RQP.js +0 -363
  460. package/dist/chunk-AFD32O4A.js +0 -494
  461. package/dist/chunk-AW2GKIGS.js +0 -433
  462. package/dist/chunk-CYSBNCPX.js +0 -55
  463. package/dist/chunk-CYSBNCPX.js.map +0 -1
  464. package/dist/chunk-DAO63OOP.js +0 -6352
  465. package/dist/chunk-DAO63OOP.js.map +0 -1
  466. package/dist/chunk-EMQUW6JB.js +0 -942
  467. package/dist/chunk-EW3JEKIV.js +0 -139
  468. package/dist/chunk-FBFWMTOP.js +0 -19
  469. package/dist/chunk-GXDLWBOY.js +0 -73
  470. package/dist/chunk-GXDLWBOY.js.map +0 -1
  471. package/dist/chunk-GXGYTFZA.js +0 -8939
  472. package/dist/chunk-I7J7YQXZ.js +0 -142
  473. package/dist/chunk-IBY44U2M.js +0 -1079
  474. package/dist/chunk-IFXGCI33.js +0 -297
  475. package/dist/chunk-IKLHXGMF.js +0 -91
  476. package/dist/chunk-IYTPWAN3.js +0 -604
  477. package/dist/chunk-J3CWAERS.js +0 -3868
  478. package/dist/chunk-JH2L5CQD.js +0 -206
  479. package/dist/chunk-JUVVCA7B.js +0 -97
  480. package/dist/chunk-MK6XJUCQ.js +0 -197
  481. package/dist/chunk-N3I6ZXR7.js +0 -66
  482. package/dist/chunk-NBO2NSAW.js +0 -592
  483. package/dist/chunk-NEU5QD2C.js +0 -249
  484. package/dist/chunk-NKIBXOHT.js +0 -344
  485. package/dist/chunk-OE3MIV4F.js +0 -547
  486. package/dist/chunk-P2MFWJR3.js +0 -903
  487. package/dist/chunk-PHCIFBP3.js +0 -89
  488. package/dist/chunk-PTUXBO5O.js +0 -224
  489. package/dist/chunk-Q3LXLWZY.js +0 -275
  490. package/dist/chunk-Q5WBTVA7.js +0 -455
  491. package/dist/chunk-RDEAVCMF.js +0 -399
  492. package/dist/chunk-RDEAVCMF.js.map +0 -1
  493. package/dist/chunk-RGMKXNQP.js +0 -23
  494. package/dist/chunk-RZTKCCUL.js +0 -831
  495. package/dist/chunk-TTKBNBQF.js +0 -156
  496. package/dist/chunk-VB3XUR6A.js +0 -207
  497. package/dist/chunk-XCKINS7K.js +0 -57
  498. package/dist/chunk-Y6GKV7CU.js +0 -346
  499. package/dist/chunk-Y6GKV7CU.js.map +0 -1
  500. package/dist/chunk-Z2GQREJY.js +0 -159
  501. package/dist/chunk-ZDAVSTEE.js +0 -172
  502. package/dist/chunk-ZXCSOVS5.js +0 -191
  503. package/dist/claim-SVDCQ2AI.js +0 -197
  504. package/dist/claim-SVDCQ2AI.js.map +0 -1
  505. package/dist/companies-BYMYQK6A.js +0 -195
  506. package/dist/companies-BYMYQK6A.js.map +0 -1
  507. package/dist/complete-NEH3MWRI.js +0 -81
  508. package/dist/complete-NEH3MWRI.js.map +0 -1
  509. package/dist/connect-5PGL7ZOM.js +0 -42
  510. package/dist/conversation-CSOKJXDW.js +0 -93
  511. package/dist/conversation-CSOKJXDW.js.map +0 -1
  512. package/dist/conversions-4JOTTFEH.js +0 -135
  513. package/dist/conversions-4JOTTFEH.js.map +0 -1
  514. package/dist/create-2XYMBULY.js +0 -207
  515. package/dist/create-2XYMBULY.js.map +0 -1
  516. package/dist/create-56PTZABQ.js +0 -235
  517. package/dist/create-56PTZABQ.js.map +0 -1
  518. package/dist/create-D6S6TGWY.js +0 -59
  519. package/dist/create-D6S6TGWY.js.map +0 -1
  520. package/dist/create-SMW4O5PC.js +0 -132
  521. package/dist/create-SMW4O5PC.js.map +0 -1
  522. package/dist/creatives-OO76DAFS.js +0 -58
  523. package/dist/creatives-VJUYWJL6.js +0 -182
  524. package/dist/creatives-VJUYWJL6.js.map +0 -1
  525. package/dist/credentials-2ONYUJW6.js +0 -287
  526. package/dist/credentials-2ONYUJW6.js.map +0 -1
  527. package/dist/critique-NDDFSGPE.js +0 -1458
  528. package/dist/critique-NDDFSGPE.js.map +0 -1
  529. package/dist/critique-YXZVMLZ4.js +0 -227
  530. package/dist/critique-YXZVMLZ4.js.map +0 -1
  531. package/dist/crm-Q6CEP5XV.js +0 -224
  532. package/dist/crm-Q6CEP5XV.js.map +0 -1
  533. package/dist/crm-WRONZYDH.js +0 -318
  534. package/dist/crm-WRONZYDH.js.map +0 -1
  535. package/dist/customers-2EFYSCU2.js +0 -56
  536. package/dist/delete-7WEVC3FS.js +0 -66
  537. package/dist/delete-7WEVC3FS.js.map +0 -1
  538. package/dist/delete-RBWK255M.js +0 -54
  539. package/dist/delete-RBWK255M.js.map +0 -1
  540. package/dist/delete-VN4WWMQF.js +0 -64
  541. package/dist/delete-VN4WWMQF.js.map +0 -1
  542. package/dist/demographics-I5XZ435C.js +0 -138
  543. package/dist/demographics-I5XZ435C.js.map +0 -1
  544. package/dist/discard-XJLIXTNM.js +0 -66
  545. package/dist/discard-XJLIXTNM.js.map +0 -1
  546. package/dist/domain-M7AEGAYI.js +0 -98
  547. package/dist/domain-M7AEGAYI.js.map +0 -1
  548. package/dist/draft-5DQI4W5F.js +0 -306
  549. package/dist/draft-5DQI4W5F.js.map +0 -1
  550. package/dist/draft-7IIYHSY2.js +0 -332
  551. package/dist/draft-7IIYHSY2.js.map +0 -1
  552. package/dist/draft-CN6GKVBF.js +0 -217
  553. package/dist/draft-CN6GKVBF.js.map +0 -1
  554. package/dist/experiment-IDDWRCJ7.js +0 -1397
  555. package/dist/facets-ZLZ6LIHN.js +0 -114
  556. package/dist/facets-ZLZ6LIHN.js.map +0 -1
  557. package/dist/feedback-7LEX2P5Q.js +0 -106
  558. package/dist/feedback-7LEX2P5Q.js.map +0 -1
  559. package/dist/feedback-record-P4JJ63KA.js +0 -260
  560. package/dist/feedback-record-P4JJ63KA.js.map +0 -1
  561. package/dist/fetch-MIVCEHXZ.js +0 -176
  562. package/dist/fetch-MIVCEHXZ.js.map +0 -1
  563. package/dist/find-VHN34MWL.js +0 -134
  564. package/dist/fit-SS6HSZPU.js +0 -62
  565. package/dist/flows-UTIIHDNE.js +0 -247
  566. package/dist/flows-UTIIHDNE.js.map +0 -1
  567. package/dist/fonts-YPNN7ZJP.js +0 -36
  568. package/dist/forecast-OBSHG2GJ.js +0 -118
  569. package/dist/forecast-OBSHG2GJ.js.map +0 -1
  570. package/dist/funnel-Z2VLXUEQ.js +0 -394
  571. package/dist/funnel-Z2VLXUEQ.js.map +0 -1
  572. package/dist/ga4-ZPAEF2G2.js +0 -55
  573. package/dist/get-MDAO6I7T.js +0 -56
  574. package/dist/get-MDAO6I7T.js.map +0 -1
  575. package/dist/get-ZB553BSH.js +0 -79
  576. package/dist/get-ZB553BSH.js.map +0 -1
  577. package/dist/google-C3X7O2UO.js +0 -136
  578. package/dist/google-ads-FTWL772L.js +0 -195
  579. package/dist/google-ads-FTWL772L.js.map +0 -1
  580. package/dist/gsc-SDDHGTZK.js +0 -30
  581. package/dist/history-WKJYKDMG.js +0 -133
  582. package/dist/history-WKJYKDMG.js.map +0 -1
  583. package/dist/hubspot-EPHVEPOO.js +0 -779
  584. package/dist/hubspot-EPHVEPOO.js.map +0 -1
  585. package/dist/icon-MYPDC6FM.js +0 -137
  586. package/dist/ideas-3PBH7VEX.js +0 -40
  587. package/dist/images-J35C3WG4.js +0 -92
  588. package/dist/ingest-5QOPUKFE.js +0 -107
  589. package/dist/ingest-5QOPUKFE.js.map +0 -1
  590. package/dist/ingest-OKUYP632.js +0 -23
  591. package/dist/inspect-PMNCP6MV.js +0 -189
  592. package/dist/inspect-PMNCP6MV.js.map +0 -1
  593. package/dist/inspiration-QAL7NS7G.js +0 -53
  594. package/dist/keyword-metrics-R752SJIT.js +0 -197
  595. package/dist/keyword-metrics-R752SJIT.js.map +0 -1
  596. package/dist/keywords-for-site-7UWPJYQF.js +0 -128
  597. package/dist/keywords-for-site-7UWPJYQF.js.map +0 -1
  598. package/dist/landing-CBVIOGJ5.js +0 -28
  599. package/dist/leads-LIJS6Y5W.js +0 -90
  600. package/dist/leads-LIJS6Y5W.js.map +0 -1
  601. package/dist/learn-N6QV7GXA.js +0 -204
  602. package/dist/learn-N6QV7GXA.js.map +0 -1
  603. package/dist/line-item-writes-3WPJXKIL.js +0 -208
  604. package/dist/line-item-writes-3WPJXKIL.js.map +0 -1
  605. package/dist/line-items-ZOFKOGAA.js +0 -103
  606. package/dist/link-DDRQKOUL.js +0 -64
  607. package/dist/link-DDRQKOUL.js.map +0 -1
  608. package/dist/linkedin-UWZCF66X.js +0 -1057
  609. package/dist/linkedin-UWZCF66X.js.map +0 -1
  610. package/dist/list-5PLXVPLB.js +0 -151
  611. package/dist/list-5PLXVPLB.js.map +0 -1
  612. package/dist/list-RC2NX6AX.js +0 -50
  613. package/dist/list-VSJISE7U.js +0 -303
  614. package/dist/list-VSJISE7U.js.map +0 -1
  615. package/dist/list-WTVOBQYX.js +0 -64
  616. package/dist/list-WTVOBQYX.js.map +0 -1
  617. package/dist/log-YKKPROLZ.js +0 -92
  618. package/dist/log-YKKPROLZ.js.map +0 -1
  619. package/dist/logo-WE2UELX6.js +0 -18
  620. package/dist/make-RNOWBLZQ.js +0 -1353
  621. package/dist/make-RNOWBLZQ.js.map +0 -1
  622. package/dist/map-WTDPQLVO.js +0 -433
  623. package/dist/map-WTDPQLVO.js.map +0 -1
  624. package/dist/mcp-XJNSCPP3.js +0 -714
  625. package/dist/mcp-XJNSCPP3.js.map +0 -1
  626. package/dist/media-sources-JGBDDXZ5.js +0 -32
  627. package/dist/media-sources-JGBDDXZ5.js.map +0 -1
  628. package/dist/members-O3BTMRXX.js +0 -44
  629. package/dist/members-O3BTMRXX.js.map +0 -1
  630. package/dist/normalize-R5AYLA2J.js +0 -141
  631. package/dist/normalize-R5AYLA2J.js.map +0 -1
  632. package/dist/options-AILRY7JY.js +0 -122
  633. package/dist/options-AILRY7JY.js.map +0 -1
  634. package/dist/organization-KJJXZLVK.js +0 -946
  635. package/dist/organization-KJJXZLVK.js.map +0 -1
  636. package/dist/performance-7YU4HOGH.js +0 -24
  637. package/dist/plan-ZC4JY4IG.js +0 -207
  638. package/dist/promoted-tweet-writes-TNELWPVG.js +0 -180
  639. package/dist/promoted-tweet-writes-TNELWPVG.js.map +0 -1
  640. package/dist/promoted-tweets-76WKUFJQ.js +0 -119
  641. package/dist/publish-BKLHCKHB.js +0 -341
  642. package/dist/publish-BKLHCKHB.js.map +0 -1
  643. package/dist/reddit-YK3YUZEI.js +0 -26
  644. package/dist/refresh-WIII7KXB.js +0 -94
  645. package/dist/refresh-WIII7KXB.js.map +0 -1
  646. package/dist/release-ZHXYQI7G.js +0 -60
  647. package/dist/release-ZHXYQI7G.js.map +0 -1
  648. package/dist/remove-NOX4BXWK.js +0 -50
  649. package/dist/remove-NOX4BXWK.js.map +0 -1
  650. package/dist/remove-VLWRCOEZ.js +0 -48
  651. package/dist/remove-VLWRCOEZ.js.map +0 -1
  652. package/dist/reopen-NLWKK5HB.js +0 -63
  653. package/dist/reopen-NLWKK5HB.js.map +0 -1
  654. package/dist/rerun-DZWQNMZQ.js +0 -90
  655. package/dist/rerun-DZWQNMZQ.js.map +0 -1
  656. package/dist/research-Q3P76RHN.js +0 -62
  657. package/dist/research-UDZBCDNX.js +0 -262
  658. package/dist/research-UDZBCDNX.js.map +0 -1
  659. package/dist/reset-5UHFX7QY.js +0 -54
  660. package/dist/reset-5UHFX7QY.js.map +0 -1
  661. package/dist/reset-MTRJQUP7.js +0 -54
  662. package/dist/reset-MTRJQUP7.js.map +0 -1
  663. package/dist/resolve-DA72VT7Q.js +0 -121
  664. package/dist/resolve-DA72VT7Q.js.map +0 -1
  665. package/dist/retry-LQUBX5TK.js +0 -62
  666. package/dist/retry-LQUBX5TK.js.map +0 -1
  667. package/dist/retry-U6F4CS6O.js +0 -60
  668. package/dist/retry-U6F4CS6O.js.map +0 -1
  669. package/dist/rules-VS5PZ7VO.js +0 -96
  670. package/dist/rules-VS5PZ7VO.js.map +0 -1
  671. package/dist/rules-add-LMVZYDXE.js +0 -462
  672. package/dist/rules-add-LMVZYDXE.js.map +0 -1
  673. package/dist/run-6PRA2YSD.js +0 -65
  674. package/dist/run-R6COFNOR.js +0 -66
  675. package/dist/run-R6COFNOR.js.map +0 -1
  676. package/dist/scaffold-ad-3OVJ7VZQ.js +0 -1511
  677. package/dist/scaffold-ad-3OVJ7VZQ.js.map +0 -1
  678. package/dist/scaffold-static-ad-DDRA3Q5I.js +0 -1005
  679. package/dist/scaffold-static-ad-DDRA3Q5I.js.map +0 -1
  680. package/dist/scaffold-video-3JZYFYFU.js +0 -883
  681. package/dist/scaffold-video-3JZYFYFU.js.map +0 -1
  682. package/dist/schedule-BRSYHMKR.js +0 -66
  683. package/dist/schedule-BRSYHMKR.js.map +0 -1
  684. package/dist/schedule-ED2YDUPY.js +0 -61
  685. package/dist/schedule-ED2YDUPY.js.map +0 -1
  686. package/dist/scheduled-agents-5P67MVGX.js +0 -50
  687. package/dist/schema-4XVKERSA.js +0 -132
  688. package/dist/schema-4XVKERSA.js.map +0 -1
  689. package/dist/schema-RRAQW3OS.js +0 -69
  690. package/dist/search-Y2UMIQ57.js +0 -174
  691. package/dist/search-Y2UMIQ57.js.map +0 -1
  692. package/dist/select-OZ4E6VLF.js +0 -101
  693. package/dist/select-OZ4E6VLF.js.map +0 -1
  694. package/dist/set-prompt-O4YAE4CE.js +0 -193
  695. package/dist/set-prompt-O4YAE4CE.js.map +0 -1
  696. package/dist/setup-links-2GJYCV2A.js +0 -141
  697. package/dist/setup-links-2GJYCV2A.js.map +0 -1
  698. package/dist/site-47B6V2UX.js +0 -177
  699. package/dist/site-47B6V2UX.js.map +0 -1
  700. package/dist/sources-DXPZAPQ7.js +0 -454
  701. package/dist/sources-DXPZAPQ7.js.map +0 -1
  702. package/dist/sources-NDXYTASG.js +0 -30
  703. package/dist/stale-VLVBO2L6.js +0 -71
  704. package/dist/stale-VLVBO2L6.js.map +0 -1
  705. package/dist/stats-37OFAMPW.js +0 -34
  706. package/dist/status-4ODD46XY.js +0 -62
  707. package/dist/status-4ODD46XY.js.map +0 -1
  708. package/dist/stock-6R5E7MJX.js +0 -179
  709. package/dist/studio-LEIGL3Q7.js +0 -49
  710. package/dist/sync-EKGEWE53.js +0 -54
  711. package/dist/sync-EKGEWE53.js.map +0 -1
  712. package/dist/sync-TKNVBUDM.js +0 -54
  713. package/dist/sync-TKNVBUDM.js.map +0 -1
  714. package/dist/sync-definition-M5R3H3TP.js +0 -64
  715. package/dist/tag-manager-3Q55PBEW.js +0 -43
  716. package/dist/tags-4N5UUUN6.js +0 -26
  717. package/dist/tags-5NHIAD5A.js +0 -20
  718. package/dist/tags-5NHIAD5A.js.map +0 -1
  719. package/dist/tags-UUKWSWCN.js +0 -20
  720. package/dist/tags-UUKWSWCN.js.map +0 -1
  721. package/dist/tags-VK7B5DJF.js +0 -20
  722. package/dist/tags-VK7B5DJF.js.map +0 -1
  723. package/dist/tags-XAHIB3WA.js +0 -224
  724. package/dist/tags-XAHIB3WA.js.map +0 -1
  725. package/dist/targeting-criteria-AVARWV2G.js +0 -113
  726. package/dist/targets-6RYLQRID.js +0 -103
  727. package/dist/targets-6RYLQRID.js.map +0 -1
  728. package/dist/testimonials-6TF6BOFN.js +0 -32
  729. package/dist/top-companies-45EHRCJD.js +0 -108
  730. package/dist/top-companies-45EHRCJD.js.map +0 -1
  731. package/dist/translate-VHLBACCE.js +0 -604
  732. package/dist/translate-VHLBACCE.js.map +0 -1
  733. package/dist/triggers-ERQONJNO.js +0 -142
  734. package/dist/triggers-ERQONJNO.js.map +0 -1
  735. package/dist/unlink-TPDO6JNF.js +0 -67
  736. package/dist/unlink-TPDO6JNF.js.map +0 -1
  737. package/dist/unstage-YKKQQ7LW.js +0 -85
  738. package/dist/unstage-YKKQQ7LW.js.map +0 -1
  739. package/dist/update-43WU6X7R.js +0 -63
  740. package/dist/update-43WU6X7R.js.map +0 -1
  741. package/dist/update-CAHLAXWO.js +0 -98
  742. package/dist/update-CAHLAXWO.js.map +0 -1
  743. package/dist/update-NGH6YADN.js +0 -152
  744. package/dist/update-NGH6YADN.js.map +0 -1
  745. package/dist/update-SPJIHHLE.js +0 -188
  746. package/dist/update-SPJIHHLE.js.map +0 -1
  747. package/dist/upload-ACESIZIZ.js +0 -126
  748. package/dist/upload-ACESIZIZ.js.map +0 -1
  749. package/dist/url-params-MIXEDBF7.js +0 -98
  750. package/dist/url-params-MIXEDBF7.js.map +0 -1
  751. package/dist/validate-XJJA7ULE.js +0 -117
  752. package/dist/validate-XJJA7ULE.js.map +0 -1
  753. package/dist/videos-LBXPG7WC.js +0 -39
  754. package/dist/viewer-check-7VJ3GUZX.js +0 -80
  755. package/dist/web-EWQJC2SD.js +0 -140
  756. package/dist/web-EWQJC2SD.js.map +0 -1
  757. package/dist/winning-ads-SAOJAKEQ.js +0 -86
  758. package/dist/write-commands-QPDE4GWW.js +0 -1024
  759. package/dist/write-commands-QPDE4GWW.js.map +0 -1
  760. package/dist/x-LXOJPCRF.js +0 -47
  761. /package/dist/{actions-QL5UD2W4.js.map → actions-FMNJSOBA.js.map} +0 -0
  762. /package/dist/{ads-DHPJFU52.js.map → ads-OLXSDPD6.js.map} +0 -0
  763. /package/dist/{avatars-FKOO6VZ2.js.map → avatars-I4H3NMEJ.js.map} +0 -0
  764. /package/dist/{brand-NNWHBIAX.js.map → brand-3V7ECY7D.js.map} +0 -0
  765. /package/dist/{campaigns-HLBZRH5A.js.map → campaigns-MCB76NPQ.js.map} +0 -0
  766. /package/dist/{canvas-D64GLWUO.js.map → canvas-JCNKMGCG.js.map} +0 -0
  767. /package/dist/{chatgpt-YI6YNACI.js.map → chatgpt-XFZ42NXC.js.map} +0 -0
  768. /package/dist/{chunk-VB3XUR6A.js.map → chunk-2YTBPRRG.js.map} +0 -0
  769. /package/dist/{chunk-JUVVCA7B.js.map → chunk-3SNCMEJB.js.map} +0 -0
  770. /package/dist/{chunk-RGMKXNQP.js.map → chunk-7QGFO35A.js.map} +0 -0
  771. /package/dist/{chunk-ZXCSOVS5.js.map → chunk-AV7ALENU.js.map} +0 -0
  772. /package/dist/{chunk-IYTPWAN3.js.map → chunk-BRLFQ4VX.js.map} +0 -0
  773. /package/dist/{chunk-RZTKCCUL.js.map → chunk-DJE7UXYT.js.map} +0 -0
  774. /package/dist/{chunk-EW3JEKIV.js.map → chunk-EFWXYUSK.js.map} +0 -0
  775. /package/dist/{chunk-J3CWAERS.js.map → chunk-EONSZAZB.js.map} +0 -0
  776. /package/dist/{chunk-PHCIFBP3.js.map → chunk-FG3MV2XM.js.map} +0 -0
  777. /package/dist/{chunk-3AMLOCXY.js.map → chunk-FKG476GH.js.map} +0 -0
  778. /package/dist/{chunk-IFXGCI33.js.map → chunk-FUGQSIYG.js.map} +0 -0
  779. /package/dist/{chunk-Q3LXLWZY.js.map → chunk-HPLHAHG5.js.map} +0 -0
  780. /package/dist/{chunk-3N5A44NQ.js.map → chunk-I24YT2KG.js.map} +0 -0
  781. /package/dist/{chunk-P2MFWJR3.js.map → chunk-IFDZZOUC.js.map} +0 -0
  782. /package/dist/{chunk-Q5WBTVA7.js.map → chunk-JVVUI55M.js.map} +0 -0
  783. /package/dist/{chunk-6QGS3RQP.js.map → chunk-KKSHEPBY.js.map} +0 -0
  784. /package/dist/{chunk-OE3MIV4F.js.map → chunk-KQ7RCLGC.js.map} +0 -0
  785. /package/dist/{chunk-ZDAVSTEE.js.map → chunk-L7WMS5PW.js.map} +0 -0
  786. /package/dist/{chunk-FBFWMTOP.js.map → chunk-LBRO4MTL.js.map} +0 -0
  787. /package/dist/{chunk-PTUXBO5O.js.map → chunk-LNRPOULW.js.map} +0 -0
  788. /package/dist/{chunk-EMQUW6JB.js.map → chunk-LX6WC2XZ.js.map} +0 -0
  789. /package/dist/{chunk-I7J7YQXZ.js.map → chunk-MMGTJBM6.js.map} +0 -0
  790. /package/dist/{chunk-2KRK667G.js.map → chunk-OEZYSL3U.js.map} +0 -0
  791. /package/dist/{chunk-2TVXJPGR.js.map → chunk-OOVHBMQB.js.map} +0 -0
  792. /package/dist/{chunk-Z2GQREJY.js.map → chunk-PTH7VWKK.js.map} +0 -0
  793. /package/dist/{chunk-N3I6ZXR7.js.map → chunk-QZF4BVKL.js.map} +0 -0
  794. /package/dist/{chunk-3WAYZQNV.js.map → chunk-RITUSBYO.js.map} +0 -0
  795. /package/dist/{chunk-JH2L5CQD.js.map → chunk-SSTL3A7Z.js.map} +0 -0
  796. /package/dist/{chunk-2B772ZEA.js.map → chunk-TD4SO6TR.js.map} +0 -0
  797. /package/dist/{chunk-IKLHXGMF.js.map → chunk-UZ4RTOFG.js.map} +0 -0
  798. /package/dist/{chunk-NBO2NSAW.js.map → chunk-VAX7PFQV.js.map} +0 -0
  799. /package/dist/{chunk-AFD32O4A.js.map → chunk-VDRSZK4P.js.map} +0 -0
  800. /package/dist/{chunk-NKIBXOHT.js.map → chunk-VNU2EYD4.js.map} +0 -0
  801. /package/dist/{chunk-TTKBNBQF.js.map → chunk-WT4WDIXA.js.map} +0 -0
  802. /package/dist/{chunk-5A257KJA.js.map → chunk-XEX23CIB.js.map} +0 -0
  803. /package/dist/{chunk-GXGYTFZA.js.map → chunk-XXDF25BW.js.map} +0 -0
  804. /package/dist/{chunk-NEU5QD2C.js.map → chunk-YJ3LSFMX.js.map} +0 -0
  805. /package/dist/{chunk-MK6XJUCQ.js.map → chunk-YVK5RT3B.js.map} +0 -0
  806. /package/dist/{chunk-AW2GKIGS.js.map → chunk-YWWRLZUR.js.map} +0 -0
  807. /package/dist/{chunk-XCKINS7K.js.map → chunk-Z4S5BCVZ.js.map} +0 -0
  808. /package/dist/{chunk-IBY44U2M.js.map → chunk-ZYGK7GAK.js.map} +0 -0
  809. /package/dist/{connect-5PGL7ZOM.js.map → connect-COS6G45S.js.map} +0 -0
  810. /package/dist/{creatives-OO76DAFS.js.map → creatives-SEQHJD2M.js.map} +0 -0
  811. /package/dist/{customers-2EFYSCU2.js.map → customers-LMSX33FO.js.map} +0 -0
  812. /package/dist/{experiment-IDDWRCJ7.js.map → experiment-7RJ5X2LL.js.map} +0 -0
  813. /package/dist/{find-VHN34MWL.js.map → find-2EPXK5RF.js.map} +0 -0
  814. /package/dist/{fit-SS6HSZPU.js.map → fit-W7UNFZT5.js.map} +0 -0
  815. /package/dist/{fonts-YPNN7ZJP.js.map → fonts-N42UYWTX.js.map} +0 -0
  816. /package/dist/{ga4-ZPAEF2G2.js.map → ga4-6EIQC2TG.js.map} +0 -0
  817. /package/dist/{google-C3X7O2UO.js.map → google-O5OI6QFU.js.map} +0 -0
  818. /package/dist/{gsc-SDDHGTZK.js.map → gsc-BM3T2GDL.js.map} +0 -0
  819. /package/dist/{icon-MYPDC6FM.js.map → icon-B7DG53S5.js.map} +0 -0
  820. /package/dist/{ideas-3PBH7VEX.js.map → ideas-DYN2DMFN.js.map} +0 -0
  821. /package/dist/{images-J35C3WG4.js.map → images-EQCUXEHF.js.map} +0 -0
  822. /package/dist/{ingest-OKUYP632.js.map → ingest-B46AY3QU.js.map} +0 -0
  823. /package/dist/{inspiration-QAL7NS7G.js.map → inspiration-TCCKM4R7.js.map} +0 -0
  824. /package/dist/{landing-CBVIOGJ5.js.map → landing-WVPA7NBR.js.map} +0 -0
  825. /package/dist/{line-items-ZOFKOGAA.js.map → line-items-OEWYOPFP.js.map} +0 -0
  826. /package/dist/{list-RC2NX6AX.js.map → list-WRBWQASJ.js.map} +0 -0
  827. /package/dist/{logo-WE2UELX6.js.map → logo-QTSBKP2J.js.map} +0 -0
  828. /package/dist/{performance-7YU4HOGH.js.map → performance-HTU5FR2K.js.map} +0 -0
  829. /package/dist/{plan-ZC4JY4IG.js.map → plan-W2K45F7K.js.map} +0 -0
  830. /package/dist/{promoted-tweets-76WKUFJQ.js.map → promoted-tweets-TTWN5OMW.js.map} +0 -0
  831. /package/dist/{reddit-YK3YUZEI.js.map → reddit-6C3PT5CT.js.map} +0 -0
  832. /package/dist/{research-Q3P76RHN.js.map → research-YCMMQVK6.js.map} +0 -0
  833. /package/dist/{run-6PRA2YSD.js.map → run-SR7DJ7M5.js.map} +0 -0
  834. /package/dist/{scheduled-agents-5P67MVGX.js.map → scheduled-agents-N63EZNY6.js.map} +0 -0
  835. /package/dist/{schema-RRAQW3OS.js.map → schema-C6SGBNA6.js.map} +0 -0
  836. /package/dist/{sources-NDXYTASG.js.map → sources-HN3GCEDX.js.map} +0 -0
  837. /package/dist/{stats-37OFAMPW.js.map → stats-CVF6AC7R.js.map} +0 -0
  838. /package/dist/{stock-6R5E7MJX.js.map → stock-4LPQ6SM7.js.map} +0 -0
  839. /package/dist/{studio-LEIGL3Q7.js.map → studio-NZ6WQ7OE.js.map} +0 -0
  840. /package/dist/{sync-definition-M5R3H3TP.js.map → sync-definition-CKEUYKWN.js.map} +0 -0
  841. /package/dist/{tag-manager-3Q55PBEW.js.map → tag-manager-FLXXLNKP.js.map} +0 -0
  842. /package/dist/{tags-4N5UUUN6.js.map → tags-EUOOSAKN.js.map} +0 -0
  843. /package/dist/{targeting-criteria-AVARWV2G.js.map → targeting-criteria-HE7K52WN.js.map} +0 -0
  844. /package/dist/{testimonials-6TF6BOFN.js.map → testimonials-3Q5XM7JD.js.map} +0 -0
  845. /package/dist/{videos-LBXPG7WC.js.map → videos-WAPUPJVT.js.map} +0 -0
  846. /package/dist/{viewer-check-7VJ3GUZX.js.map → viewer-check-GHQA3UY2.js.map} +0 -0
  847. /package/dist/{winning-ads-SAOJAKEQ.js.map → winning-ads-XCVUAIOU.js.map} +0 -0
  848. /package/dist/{x-LXOJPCRF.js.map → x-SI4KYDEY.js.map} +0 -0
@@ -1,69 +0,0 @@
1
- import {
2
- agentProfile,
3
- offers
4
- } from "./chunk-3B5LPK6D.js";
5
- import "./chunk-57KKVDDR.js";
6
- import {
7
- findSchema,
8
- listSchemas,
9
- writeJson
10
- } from "./chunk-QANGHND7.js";
11
- import "./chunk-YQSBHWOI.js";
12
-
13
- // src/commands/schema.ts
14
- import { defineCommand } from "citty";
15
- function narrowToFamily(commandName, available) {
16
- const segments = commandName.split(".");
17
- const prefix = segments[0] === "ads" && segments[1] ? `ads.${segments[1]}.` : `${segments[0]}.`;
18
- const siblings = available.filter((name) => name.startsWith(prefix));
19
- return siblings.length > 0 ? siblings : available;
20
- }
21
- var schemaCommand = defineCommand({
22
- meta: {
23
- name: "schema",
24
- description: "Inspect command argument schemas (for AI agent introspection). Lists all commands if no argument given. Example: baker schema images search (or images.search)"
25
- },
26
- args: {
27
- command: {
28
- type: "positional",
29
- description: "Command path, as typed (images list) or dotted (images.list). Omit to list all.",
30
- required: false
31
- }
32
- },
33
- run: ({ args }) => {
34
- const words = args._.filter((word) => typeof word === "string" && word.length > 0);
35
- if (words.length === 0) {
36
- const profile = agentProfile();
37
- const schemas = listSchemas().filter((name) => offers(profile, name.replaceAll(".", " ")));
38
- writeJson({ ok: true, data: { commands: schemas } });
39
- return;
40
- }
41
- const commandName = words.join(".");
42
- const schema = findSchema(words);
43
- if (!schema) {
44
- const all = listSchemas();
45
- const available = narrowToFamily(commandName, all);
46
- const segments = commandName.split(".");
47
- const family = segments[0] === "ads" && segments[1] ? `ads-${segments[1]}` : segments[0];
48
- const scope = available.length < all.length ? ` in the "${family}" family` : "";
49
- writeJson({
50
- ok: false,
51
- error: {
52
- code: "NOT_FOUND",
53
- message: `Schema "${commandName}" not found. Available${scope}: ${available.join(", ")}`,
54
- fix: {
55
- action: `Run the command with --help for exact args, and read __tooling__/docs/tools/baker/${family}.md`,
56
- explanation: "Not every command registers a schema; --help and the family doc are the ground truth for those."
57
- }
58
- }
59
- });
60
- process.exit(1);
61
- }
62
- writeJson({ ok: true, data: schema });
63
- }
64
- });
65
- export {
66
- narrowToFamily,
67
- schemaCommand
68
- };
69
- //# sourceMappingURL=schema-RRAQW3OS.js.map
@@ -1,174 +0,0 @@
1
- import {
2
- measureEmptyCorpus
3
- } from "./chunk-NA7PXVCW.js";
4
- import {
5
- activeFilterFlags
6
- } from "./chunk-Q6ULQMWG.js";
7
- import {
8
- testimonialSourceTypeSchema
9
- } from "./chunk-DAO63OOP.js";
10
- import "./chunk-GXDLWBOY.js";
11
- import "./chunk-GIWHHCD6.js";
12
- import "./chunk-XQIOCIDO.js";
13
- import "./chunk-WTJSMYY2.js";
14
- import {
15
- ApiError,
16
- apiPost
17
- } from "./chunk-6YLNY6CK.js";
18
- import "./chunk-D5NEIESR.js";
19
- import "./chunk-57KKVDDR.js";
20
- import {
21
- registerSchema,
22
- testimonialNormalizer,
23
- writeJson,
24
- writeOutput
25
- } from "./chunk-QANGHND7.js";
26
- import "./chunk-YQSBHWOI.js";
27
-
28
- // src/commands/testimonials/search.ts
29
- import { defineCommand } from "citty";
30
- var FILTER_FLAGS = ["source", "rating-min", "rating-max", "status", "sentiment", "language", "tags"];
31
- function languageBiasHint(results, requestedLanguage) {
32
- if (requestedLanguage) {
33
- return null;
34
- }
35
- const withLang = results.filter((r) => typeof r.language === "string" && r.language.length > 0);
36
- if (withLang.length < 3) {
37
- return null;
38
- }
39
- const counts = /* @__PURE__ */ new Map();
40
- for (const r of withLang) {
41
- const lang = r.language;
42
- counts.set(lang, (counts.get(lang) ?? 0) + 1);
43
- }
44
- const [topLang, topCount] = [...counts.entries()].sort((a, b) => b[1] - a[1])[0] ?? ["", 0];
45
- if (topLang && topCount / withLang.length >= 0.8) {
46
- return `Results skew ${topLang} (${topCount}/${withLang.length}). If you're sourcing quotes for a specific market, pass --language <code> (e.g. --language en) so the ad's language matches its audience.`;
47
- }
48
- return null;
49
- }
50
- registerSchema({
51
- command: "testimonials.search",
52
- description: "Search testimonials by text query. Uses hybrid BM25 + vector + reranking.",
53
- args: {
54
- query: { type: "string", description: "Search query text", required: true },
55
- limit: { type: "number", description: "Maximum results to return", required: false, default: 10 },
56
- source: {
57
- type: "string",
58
- description: `Filter by source: ${testimonialSourceTypeSchema.options.join("|")}`,
59
- required: false,
60
- enum: [...testimonialSourceTypeSchema.options]
61
- },
62
- "rating-min": { type: "number", description: "Minimum star rating (1-5)", required: false },
63
- "rating-max": { type: "number", description: "Maximum star rating (1-5)", required: false },
64
- status: {
65
- type: "string",
66
- description: "Filter by status: pending|processing|ready|error",
67
- required: false,
68
- enum: ["pending", "processing", "ready", "error"]
69
- },
70
- sentiment: {
71
- type: "string",
72
- description: "Filter: positive|neutral|negative",
73
- required: false,
74
- enum: ["positive", "neutral", "negative"]
75
- },
76
- language: { type: "string", description: "Filter by language code (e.g. en, es)", required: false },
77
- tags: { type: "string", description: "Comma-separated tags to filter by", required: false }
78
- }
79
- });
80
- function buildSearchRequest(query, args) {
81
- const body = { query };
82
- if (args.limit !== void 0) {
83
- body.limit = Number(args.limit);
84
- }
85
- if (args.source) {
86
- body.source = args.source;
87
- }
88
- if (args["rating-min"] !== void 0) {
89
- body.rating_min = Number(args["rating-min"]);
90
- }
91
- if (args["rating-max"] !== void 0) {
92
- body.rating_max = Number(args["rating-max"]);
93
- }
94
- if (args.status) {
95
- body.status = args.status;
96
- }
97
- if (args.sentiment) {
98
- body.sentiment = args.sentiment;
99
- }
100
- if (args.language) {
101
- body.language = args.language;
102
- }
103
- if (args.tags) {
104
- body.tags = args.tags.split(",").filter(Boolean);
105
- }
106
- return body;
107
- }
108
- var searchCommand = defineCommand({
109
- meta: {
110
- name: "search",
111
- description: "Semantic search testimonials by text query. Uses hybrid BM25 + vector + reranking. Example: baker testimonials search 'great service' --rating-min 4"
112
- },
113
- args: {
114
- query: { type: "positional", description: "Search query text", required: false },
115
- limit: { type: "string", description: "Max results (default 10)", required: false },
116
- source: {
117
- type: "string",
118
- description: `Filter by source: ${testimonialSourceTypeSchema.options.join("|")}`,
119
- required: false
120
- },
121
- "rating-min": { type: "string", description: "Minimum star rating (1-5)", required: false },
122
- "rating-max": { type: "string", description: "Maximum star rating (1-5)", required: false },
123
- status: { type: "string", description: "Filter by status: pending|processing|ready|error", required: false },
124
- sentiment: { type: "string", description: "Filter: positive|neutral|negative", required: false },
125
- language: { type: "string", description: "Filter by language code (e.g. en, es)", required: false },
126
- tags: { type: "string", description: "Comma-separated tags to filter by", required: false },
127
- output: { type: "string", description: "Output format: json|files|md", required: false, default: "json" },
128
- fields: { type: "string", description: "Comma-separated field names to include", required: false },
129
- full: { type: "boolean", description: "Include full metadata", required: false, default: false }
130
- },
131
- run: async ({ args }) => {
132
- try {
133
- const query = args.query;
134
- if (!query) {
135
- writeJson({ ok: false, error: { code: "VALIDATION_ERROR", message: "Search query is required" } });
136
- process.exit(1);
137
- }
138
- const body = buildSearchRequest(query, args);
139
- const data = await apiPost("/api/testimonials/search", body);
140
- const languageHint = languageBiasHint(data, body.language);
141
- const { hints: emptyHints, empty } = await measureEmptyCorpus({
142
- command: "search",
143
- resultCount: data.length,
144
- activeFilters: activeFilterFlags(args, FILTER_FLAGS)
145
- });
146
- const hints = [...emptyHints, ...languageHint ? [languageHint] : []];
147
- const outputFormat = args.output || "json";
148
- writeOutput(
149
- { ok: true, data, ...empty ? { meta: { empty } } : {}, ...hints.length > 0 ? { hints } : {} },
150
- outputFormat,
151
- args.fields ? args.fields.split(",") : void 0,
152
- args.full,
153
- testimonialNormalizer
154
- );
155
- if (outputFormat !== "json") {
156
- for (const hint of hints) {
157
- process.stderr.write(`${hint}
158
- `);
159
- }
160
- }
161
- } catch (err) {
162
- if (err instanceof ApiError) {
163
- writeJson({ ok: false, error: { code: err.code, message: err.message } });
164
- process.exit(1);
165
- }
166
- writeJson({ ok: false, error: { code: "INTERNAL_ERROR", message: "Unexpected error" } });
167
- process.exit(1);
168
- }
169
- }
170
- });
171
- export {
172
- searchCommand
173
- };
174
- //# sourceMappingURL=search-Y2UMIQ57.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/commands/testimonials/search.ts"],"sourcesContent":["import {\n type TestimonialsSearchRequest,\n type TestimonialsSearchResponse,\n testimonialSourceTypeSchema,\n} from \"@baker/api\";\nimport { defineCommand } from \"citty\";\nimport { ApiError, apiPost } from \"../../client.ts\";\nimport { type OutputFormat, testimonialNormalizer, writeJson, writeOutput } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { activeFilterFlags } from \"../images/searchHints.ts\";\nimport { measureEmptyCorpus } from \"./emptyCorpusHints.ts\";\n\nconst FILTER_FLAGS = [\"source\", \"rating-min\", \"rating-max\", \"status\", \"sentiment\", \"language\", \"tags\"];\n\n/**\n * Hybrid search reranks over this company's whole corpus with no language\n * awareness, so a corpus seeded in one language returns that language even for\n * an English query. When the caller didn't pin a `--language` and the results\n * clearly skew to one, nudge them to scope by the target market's language —\n * otherwise a Spanish/French-heavy corpus silently starves a market-specific ad\n * of on-language quotes.\n */\nfunction languageBiasHint(results: TestimonialsSearchResponse, requestedLanguage: string | undefined): string | null {\n if (requestedLanguage) {\n return null;\n }\n const withLang = results.filter((r) => typeof r.language === \"string\" && r.language.length > 0);\n if (withLang.length < 3) {\n return null;\n }\n const counts = new Map<string, number>();\n for (const r of withLang) {\n const lang = r.language as string;\n counts.set(lang, (counts.get(lang) ?? 0) + 1);\n }\n const [topLang, topCount] = [...counts.entries()].sort((a, b) => b[1] - a[1])[0] ?? [\"\", 0];\n if (topLang && topCount / withLang.length >= 0.8) {\n return `Results skew ${topLang} (${topCount}/${withLang.length}). If you're sourcing quotes for a specific market, pass --language <code> (e.g. --language en) so the ad's language matches its audience.`;\n }\n return null;\n}\n\nregisterSchema({\n command: \"testimonials.search\",\n description: \"Search testimonials by text query. Uses hybrid BM25 + vector + reranking.\",\n args: {\n query: { type: \"string\", description: \"Search query text\", required: true },\n limit: { type: \"number\", description: \"Maximum results to return\", required: false, default: 10 },\n source: {\n type: \"string\",\n description: `Filter by source: ${testimonialSourceTypeSchema.options.join(\"|\")}`,\n required: false,\n enum: [...testimonialSourceTypeSchema.options],\n },\n \"rating-min\": { type: \"number\", description: \"Minimum star rating (1-5)\", required: false },\n \"rating-max\": { type: \"number\", description: \"Maximum star rating (1-5)\", required: false },\n status: {\n type: \"string\",\n description: \"Filter by status: pending|processing|ready|error\",\n required: false,\n enum: [\"pending\", \"processing\", \"ready\", \"error\"],\n },\n sentiment: {\n type: \"string\",\n description: \"Filter: positive|neutral|negative\",\n required: false,\n enum: [\"positive\", \"neutral\", \"negative\"],\n },\n language: { type: \"string\", description: \"Filter by language code (e.g. en, es)\", required: false },\n tags: { type: \"string\", description: \"Comma-separated tags to filter by\", required: false },\n },\n});\n\n/** Assemble the search request body from CLI args, applying only the flags that were provided. */\nfunction buildSearchRequest(query: string, args: Record<string, unknown>): TestimonialsSearchRequest {\n const body: TestimonialsSearchRequest = { query };\n if (args.limit !== undefined) {\n body.limit = Number(args.limit);\n }\n if (args.source) {\n body.source = args.source as TestimonialsSearchRequest[\"source\"];\n }\n if (args[\"rating-min\"] !== undefined) {\n body.rating_min = Number(args[\"rating-min\"]);\n }\n if (args[\"rating-max\"] !== undefined) {\n body.rating_max = Number(args[\"rating-max\"]);\n }\n if (args.status) {\n body.status = args.status as TestimonialsSearchRequest[\"status\"];\n }\n if (args.sentiment) {\n body.sentiment = args.sentiment as TestimonialsSearchRequest[\"sentiment\"];\n }\n if (args.language) {\n body.language = args.language as string;\n }\n if (args.tags) {\n body.tags = (args.tags as string).split(\",\").filter(Boolean);\n }\n return body;\n}\n\nexport const searchCommand = defineCommand({\n meta: {\n name: \"search\",\n description:\n \"Semantic search testimonials by text query. Uses hybrid BM25 + vector + reranking. Example: baker testimonials search 'great service' --rating-min 4\",\n },\n args: {\n query: { type: \"positional\", description: \"Search query text\", required: false },\n limit: { type: \"string\", description: \"Max results (default 10)\", required: false },\n source: {\n type: \"string\",\n description: `Filter by source: ${testimonialSourceTypeSchema.options.join(\"|\")}`,\n required: false,\n },\n \"rating-min\": { type: \"string\", description: \"Minimum star rating (1-5)\", required: false },\n \"rating-max\": { type: \"string\", description: \"Maximum star rating (1-5)\", required: false },\n status: { type: \"string\", description: \"Filter by status: pending|processing|ready|error\", required: false },\n sentiment: { type: \"string\", description: \"Filter: positive|neutral|negative\", required: false },\n language: { type: \"string\", description: \"Filter by language code (e.g. en, es)\", required: false },\n tags: { type: \"string\", description: \"Comma-separated tags to filter by\", required: false },\n output: { type: \"string\", description: \"Output format: json|files|md\", required: false, default: \"json\" },\n fields: { type: \"string\", description: \"Comma-separated field names to include\", required: false },\n full: { type: \"boolean\", description: \"Include full metadata\", required: false, default: false },\n },\n run: async ({ args }) => {\n try {\n const query = args.query as string | undefined;\n if (!query) {\n writeJson({ ok: false, error: { code: \"VALIDATION_ERROR\", message: \"Search query is required\" } });\n process.exit(1);\n }\n\n const body = buildSearchRequest(query, args);\n const data = await apiPost<TestimonialsSearchResponse>(\"/api/testimonials/search\", body);\n const languageHint = languageBiasHint(data, body.language);\n const { hints: emptyHints, empty } = await measureEmptyCorpus({\n command: \"search\",\n resultCount: data.length,\n activeFilters: activeFilterFlags(args, FILTER_FLAGS),\n });\n const hints = [...emptyHints, ...(languageHint ? [languageHint] : [])];\n const outputFormat = (args.output as OutputFormat) || \"json\";\n writeOutput(\n { ok: true, data, ...(empty ? { meta: { empty } } : {}), ...(hints.length > 0 ? { hints } : {}) },\n outputFormat,\n args.fields ? args.fields.split(\",\") : undefined,\n args.full as boolean,\n testimonialNormalizer,\n );\n // md/files render only the table, so hints (which never reach the table)\n // go to stderr — otherwise `--output md` hides the language skew, and an\n // empty result prints a header row and nothing else.\n if (outputFormat !== \"json\") {\n for (const hint of hints) {\n process.stderr.write(`${hint}\\n`);\n }\n }\n } catch (err) {\n if (err instanceof ApiError) {\n writeJson({ ok: false, error: { code: err.code, message: err.message } });\n process.exit(1);\n }\n writeJson({ ok: false, error: { code: \"INTERNAL_ERROR\", message: \"Unexpected error\" } });\n process.exit(1);\n }\n },\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,SAAS,qBAAqB;AAO9B,IAAM,eAAe,CAAC,UAAU,cAAc,cAAc,UAAU,aAAa,YAAY,MAAM;AAUrG,SAAS,iBAAiB,SAAqC,mBAAsD;AACnH,MAAI,mBAAmB;AACrB,WAAO;AAAA,EACT;AACA,QAAM,WAAW,QAAQ,OAAO,CAAC,MAAM,OAAO,EAAE,aAAa,YAAY,EAAE,SAAS,SAAS,CAAC;AAC9F,MAAI,SAAS,SAAS,GAAG;AACvB,WAAO;AAAA,EACT;AACA,QAAM,SAAS,oBAAI,IAAoB;AACvC,aAAW,KAAK,UAAU;AACxB,UAAM,OAAO,EAAE;AACf,WAAO,IAAI,OAAO,OAAO,IAAI,IAAI,KAAK,KAAK,CAAC;AAAA,EAC9C;AACA,QAAM,CAAC,SAAS,QAAQ,IAAI,CAAC,GAAG,OAAO,QAAQ,CAAC,EAAE,KAAK,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;AAC1F,MAAI,WAAW,WAAW,SAAS,UAAU,KAAK;AAChD,WAAO,gBAAgB,OAAO,KAAK,QAAQ,IAAI,SAAS,MAAM;AAAA,EAChE;AACA,SAAO;AACT;AAEA,eAAe;AAAA,EACb,SAAS;AAAA,EACT,aAAa;AAAA,EACb,MAAM;AAAA,IACJ,OAAO,EAAE,MAAM,UAAU,aAAa,qBAAqB,UAAU,KAAK;AAAA,IAC1E,OAAO,EAAE,MAAM,UAAU,aAAa,6BAA6B,UAAU,OAAO,SAAS,GAAG;AAAA,IAChG,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,aAAa,qBAAqB,4BAA4B,QAAQ,KAAK,GAAG,CAAC;AAAA,MAC/E,UAAU;AAAA,MACV,MAAM,CAAC,GAAG,4BAA4B,OAAO;AAAA,IAC/C;AAAA,IACA,cAAc,EAAE,MAAM,UAAU,aAAa,6BAA6B,UAAU,MAAM;AAAA,IAC1F,cAAc,EAAE,MAAM,UAAU,aAAa,6BAA6B,UAAU,MAAM;AAAA,IAC1F,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,aAAa;AAAA,MACb,UAAU;AAAA,MACV,MAAM,CAAC,WAAW,cAAc,SAAS,OAAO;AAAA,IAClD;AAAA,IACA,WAAW;AAAA,MACT,MAAM;AAAA,MACN,aAAa;AAAA,MACb,UAAU;AAAA,MACV,MAAM,CAAC,YAAY,WAAW,UAAU;AAAA,IAC1C;AAAA,IACA,UAAU,EAAE,MAAM,UAAU,aAAa,yCAAyC,UAAU,MAAM;AAAA,IAClG,MAAM,EAAE,MAAM,UAAU,aAAa,qCAAqC,UAAU,MAAM;AAAA,EAC5F;AACF,CAAC;AAGD,SAAS,mBAAmB,OAAe,MAA0D;AACnG,QAAM,OAAkC,EAAE,MAAM;AAChD,MAAI,KAAK,UAAU,QAAW;AAC5B,SAAK,QAAQ,OAAO,KAAK,KAAK;AAAA,EAChC;AACA,MAAI,KAAK,QAAQ;AACf,SAAK,SAAS,KAAK;AAAA,EACrB;AACA,MAAI,KAAK,YAAY,MAAM,QAAW;AACpC,SAAK,aAAa,OAAO,KAAK,YAAY,CAAC;AAAA,EAC7C;AACA,MAAI,KAAK,YAAY,MAAM,QAAW;AACpC,SAAK,aAAa,OAAO,KAAK,YAAY,CAAC;AAAA,EAC7C;AACA,MAAI,KAAK,QAAQ;AACf,SAAK,SAAS,KAAK;AAAA,EACrB;AACA,MAAI,KAAK,WAAW;AAClB,SAAK,YAAY,KAAK;AAAA,EACxB;AACA,MAAI,KAAK,UAAU;AACjB,SAAK,WAAW,KAAK;AAAA,EACvB;AACA,MAAI,KAAK,MAAM;AACb,SAAK,OAAQ,KAAK,KAAgB,MAAM,GAAG,EAAE,OAAO,OAAO;AAAA,EAC7D;AACA,SAAO;AACT;AAEO,IAAM,gBAAgB,cAAc;AAAA,EACzC,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aACE;AAAA,EACJ;AAAA,EACA,MAAM;AAAA,IACJ,OAAO,EAAE,MAAM,cAAc,aAAa,qBAAqB,UAAU,MAAM;AAAA,IAC/E,OAAO,EAAE,MAAM,UAAU,aAAa,4BAA4B,UAAU,MAAM;AAAA,IAClF,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,aAAa,qBAAqB,4BAA4B,QAAQ,KAAK,GAAG,CAAC;AAAA,MAC/E,UAAU;AAAA,IACZ;AAAA,IACA,cAAc,EAAE,MAAM,UAAU,aAAa,6BAA6B,UAAU,MAAM;AAAA,IAC1F,cAAc,EAAE,MAAM,UAAU,aAAa,6BAA6B,UAAU,MAAM;AAAA,IAC1F,QAAQ,EAAE,MAAM,UAAU,aAAa,oDAAoD,UAAU,MAAM;AAAA,IAC3G,WAAW,EAAE,MAAM,UAAU,aAAa,qCAAqC,UAAU,MAAM;AAAA,IAC/F,UAAU,EAAE,MAAM,UAAU,aAAa,yCAAyC,UAAU,MAAM;AAAA,IAClG,MAAM,EAAE,MAAM,UAAU,aAAa,qCAAqC,UAAU,MAAM;AAAA,IAC1F,QAAQ,EAAE,MAAM,UAAU,aAAa,gCAAgC,UAAU,OAAO,SAAS,OAAO;AAAA,IACxG,QAAQ,EAAE,MAAM,UAAU,aAAa,0CAA0C,UAAU,MAAM;AAAA,IACjG,MAAM,EAAE,MAAM,WAAW,aAAa,yBAAyB,UAAU,OAAO,SAAS,MAAM;AAAA,EACjG;AAAA,EACA,KAAK,OAAO,EAAE,KAAK,MAAM;AACvB,QAAI;AACF,YAAM,QAAQ,KAAK;AACnB,UAAI,CAAC,OAAO;AACV,kBAAU,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,oBAAoB,SAAS,2BAA2B,EAAE,CAAC;AACjG,gBAAQ,KAAK,CAAC;AAAA,MAChB;AAEA,YAAM,OAAO,mBAAmB,OAAO,IAAI;AAC3C,YAAM,OAAO,MAAM,QAAoC,4BAA4B,IAAI;AACvF,YAAM,eAAe,iBAAiB,MAAM,KAAK,QAAQ;AACzD,YAAM,EAAE,OAAO,YAAY,MAAM,IAAI,MAAM,mBAAmB;AAAA,QAC5D,SAAS;AAAA,QACT,aAAa,KAAK;AAAA,QAClB,eAAe,kBAAkB,MAAM,YAAY;AAAA,MACrD,CAAC;AACD,YAAM,QAAQ,CAAC,GAAG,YAAY,GAAI,eAAe,CAAC,YAAY,IAAI,CAAC,CAAE;AACrE,YAAM,eAAgB,KAAK,UAA2B;AACtD;AAAA,QACE,EAAE,IAAI,MAAM,MAAM,GAAI,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,GAAI,GAAI,MAAM,SAAS,IAAI,EAAE,MAAM,IAAI,CAAC,EAAG;AAAA,QAChG;AAAA,QACA,KAAK,SAAS,KAAK,OAAO,MAAM,GAAG,IAAI;AAAA,QACvC,KAAK;AAAA,QACL;AAAA,MACF;AAIA,UAAI,iBAAiB,QAAQ;AAC3B,mBAAW,QAAQ,OAAO;AACxB,kBAAQ,OAAO,MAAM,GAAG,IAAI;AAAA,CAAI;AAAA,QAClC;AAAA,MACF;AAAA,IACF,SAAS,KAAK;AACZ,UAAI,eAAe,UAAU;AAC3B,kBAAU,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,IAAI,MAAM,SAAS,IAAI,QAAQ,EAAE,CAAC;AACxE,gBAAQ,KAAK,CAAC;AAAA,MAChB;AACA,gBAAU,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,kBAAkB,SAAS,mBAAmB,EAAE,CAAC;AACvF,cAAQ,KAAK,CAAC;AAAA,IAChB;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -1,101 +0,0 @@
1
- import {
2
- versionOf
3
- } from "./chunk-FBFWMTOP.js";
4
- import "./chunk-3N5A44NQ.js";
5
- import "./chunk-GXGYTFZA.js";
6
- import "./chunk-I7J7YQXZ.js";
7
- import "./chunk-PHCIFBP3.js";
8
- import "./chunk-QG4MW2V4.js";
9
- import "./chunk-MOFMOYUA.js";
10
- import "./chunk-NKIBXOHT.js";
11
- import "./chunk-Y46FE75E.js";
12
- import "./chunk-Q5WBTVA7.js";
13
- import "./chunk-NEU5QD2C.js";
14
- import "./chunk-3S274625.js";
15
- import "./chunk-6UNOK7WV.js";
16
- import "./chunk-UFKO626N.js";
17
- import "./chunk-XRIM7NYV.js";
18
- import "./chunk-OL7JS4NG.js";
19
- import "./chunk-7KHTJQGV.js";
20
- import "./chunk-DGCUPJZD.js";
21
- import "./chunk-QMOYQJIN.js";
22
- import "./chunk-FKYPAGKK.js";
23
- import "./chunk-S4VLLGTW.js";
24
- import "./chunk-MCJ5I5LR.js";
25
- import "./chunk-2WZI36D3.js";
26
- import "./chunk-65Y3RCWP.js";
27
- import "./chunk-A6WKCV3V.js";
28
- import "./chunk-U7YR5CZL.js";
29
- import "./chunk-VI5YQQ63.js";
30
- import "./chunk-JX7BX2NB.js";
31
- import {
32
- creativesSelectRequestSchema
33
- } from "./chunk-DAO63OOP.js";
34
- import "./chunk-GXDLWBOY.js";
35
- import "./chunk-GIWHHCD6.js";
36
- import "./chunk-XQIOCIDO.js";
37
- import "./chunk-WTJSMYY2.js";
38
- import {
39
- ApiError,
40
- apiPost
41
- } from "./chunk-6YLNY6CK.js";
42
- import "./chunk-D5NEIESR.js";
43
- import "./chunk-57KKVDDR.js";
44
- import {
45
- registerSchema,
46
- writeJson
47
- } from "./chunk-QANGHND7.js";
48
- import "./chunk-YQSBHWOI.js";
49
-
50
- // src/commands/creatives/select.ts
51
- import { defineCommand } from "citty";
52
- var DESCRIPTION = `Choose the version of a creative to keep, and optionally which of its options, only when the user says to keep this version in this chat. The creative shows that version as the chosen one, and the choice counts as the user's approval. A version you render after it replaces it when the chat is published (the user saw that one last). It does not save the image to their library (that is baker creatives publish) and puts nothing into an ad.
53
- Start here: baker creatives select --slug spring-offer
54
- Only some options of a version that made several: --options "ugc,2" (labels or numbers). Naming options again replaces the earlier pick.`;
55
- var ARGS = {
56
- slug: { type: "string", description: "The creative: its folder name under src/creatives/.", required: true },
57
- run: {
58
- type: "string",
59
- description: "The version to keep: its canvas run id (r_\u2026) Left out, the version the creative shows now (its last render).",
60
- required: false
61
- },
62
- options: {
63
- type: "string",
64
- description: 'Keep only these options of the version, comma-separated: labels ("ugc"), numbers ("2") or slots. Left out, the whole version.',
65
- required: false
66
- }
67
- };
68
- registerSchema({ command: "creatives.select", description: DESCRIPTION, args: ARGS });
69
- function fail(code, message) {
70
- writeJson({ ok: false, error: { code, message } });
71
- process.exit(1);
72
- }
73
- var selectCommand = defineCommand({
74
- meta: { name: "select", description: DESCRIPTION },
75
- args: ARGS,
76
- run: async ({ args }) => {
77
- const options = typeof args.options === "string" ? args.options.split(",").map((option) => option.trim()).filter((option) => option.length > 0) : [];
78
- const parsed = creativesSelectRequestSchema.safeParse({
79
- slug: args.slug,
80
- runId: await versionOf(String(args.slug), args.run).then(
81
- (run) => run ?? fail("VALIDATION_ERROR", "--run: this creative has no rendered version here; name one (r_\u2026).")
82
- ),
83
- ...options.length > 0 ? { options } : {}
84
- });
85
- if (!parsed.success) {
86
- const issue = parsed.error.issues[0];
87
- fail("VALIDATION_ERROR", `--${String(issue?.path[0] ?? "args")}: ${issue?.message ?? "invalid"}`);
88
- }
89
- try {
90
- const response = await apiPost("/api/creatives/select", parsed.data);
91
- writeJson(response);
92
- } catch (err) {
93
- if (err instanceof ApiError) fail(err.code, err.message);
94
- fail("INTERNAL_ERROR", "Unexpected error");
95
- }
96
- }
97
- });
98
- export {
99
- selectCommand
100
- };
101
- //# sourceMappingURL=select-OZ4E6VLF.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/commands/creatives/select.ts"],"sourcesContent":["import { type CreativesSelectResponse, creativesSelectRequestSchema } from \"@baker/api\";\nimport { defineCommand } from \"citty\";\nimport { ApiError, apiPost } from \"../../client.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { versionOf } from \"./version-of.ts\";\n\nconst DESCRIPTION = `Choose the version of a creative to keep, and optionally which of its options, only when the user says to keep this version in this chat. The creative shows that version as the chosen one, and the choice counts as the user's approval. A version you render after it replaces it when the chat is published (the user saw that one last). It does not save the image to their library (that is baker creatives publish) and puts nothing into an ad.\nStart here: baker creatives select --slug spring-offer\nOnly some options of a version that made several: --options \"ugc,2\" (labels or numbers). Naming options again replaces the earlier pick.`;\n\nconst ARGS = {\n slug: { type: \"string\", description: \"The creative: its folder name under src/creatives/.\", required: true },\n run: {\n type: \"string\",\n description:\n \"The version to keep: its canvas run id (r_…) Left out, the version the creative shows now (its last render).\",\n required: false,\n },\n options: {\n type: \"string\",\n description:\n 'Keep only these options of the version, comma-separated: labels (\"ugc\"), numbers (\"2\") or slots. Left out, the whole version.',\n required: false,\n },\n} as const;\n\nregisterSchema({ command: \"creatives.select\", description: DESCRIPTION, args: ARGS });\n\nfunction fail(code: string, message: string): never {\n writeJson({ ok: false, error: { code, message } });\n process.exit(1);\n}\n\nexport const selectCommand = defineCommand({\n meta: { name: \"select\", description: DESCRIPTION },\n args: ARGS,\n run: async ({ args }) => {\n const options =\n typeof args.options === \"string\"\n ? args.options\n .split(\",\")\n .map((option) => option.trim())\n .filter((option) => option.length > 0)\n : [];\n const parsed = creativesSelectRequestSchema.safeParse({\n slug: args.slug,\n runId: await versionOf(String(args.slug), args.run).then(\n (run) => run ?? fail(\"VALIDATION_ERROR\", \"--run: this creative has no rendered version here; name one (r_…).\"),\n ),\n ...(options.length > 0 ? { options } : {}),\n });\n if (!parsed.success) {\n const issue = parsed.error.issues[0];\n fail(\"VALIDATION_ERROR\", `--${String(issue?.path[0] ?? \"args\")}: ${issue?.message ?? \"invalid\"}`);\n }\n try {\n const response = await apiPost<CreativesSelectResponse>(\"/api/creatives/select\", parsed.data);\n writeJson(response);\n } catch (err) {\n if (err instanceof ApiError) fail(err.code, err.message);\n fail(\"INTERNAL_ERROR\", \"Unexpected error\");\n }\n },\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,SAAS,qBAAqB;AAM9B,IAAM,cAAc;AAAA;AAAA;AAIpB,IAAM,OAAO;AAAA,EACX,MAAM,EAAE,MAAM,UAAU,aAAa,uDAAuD,UAAU,KAAK;AAAA,EAC3G,KAAK;AAAA,IACH,MAAM;AAAA,IACN,aACE;AAAA,IACF,UAAU;AAAA,EACZ;AAAA,EACA,SAAS;AAAA,IACP,MAAM;AAAA,IACN,aACE;AAAA,IACF,UAAU;AAAA,EACZ;AACF;AAEA,eAAe,EAAE,SAAS,oBAAoB,aAAa,aAAa,MAAM,KAAK,CAAC;AAEpF,SAAS,KAAK,MAAc,SAAwB;AAClD,YAAU,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,QAAQ,EAAE,CAAC;AACjD,UAAQ,KAAK,CAAC;AAChB;AAEO,IAAM,gBAAgB,cAAc;AAAA,EACzC,MAAM,EAAE,MAAM,UAAU,aAAa,YAAY;AAAA,EACjD,MAAM;AAAA,EACN,KAAK,OAAO,EAAE,KAAK,MAAM;AACvB,UAAM,UACJ,OAAO,KAAK,YAAY,WACpB,KAAK,QACF,MAAM,GAAG,EACT,IAAI,CAAC,WAAW,OAAO,KAAK,CAAC,EAC7B,OAAO,CAAC,WAAW,OAAO,SAAS,CAAC,IACvC,CAAC;AACP,UAAM,SAAS,6BAA6B,UAAU;AAAA,MACpD,MAAM,KAAK;AAAA,MACX,OAAO,MAAM,UAAU,OAAO,KAAK,IAAI,GAAG,KAAK,GAAG,EAAE;AAAA,QAClD,CAAC,QAAQ,OAAO,KAAK,oBAAoB,yEAAoE;AAAA,MAC/G;AAAA,MACA,GAAI,QAAQ,SAAS,IAAI,EAAE,QAAQ,IAAI,CAAC;AAAA,IAC1C,CAAC;AACD,QAAI,CAAC,OAAO,SAAS;AACnB,YAAM,QAAQ,OAAO,MAAM,OAAO,CAAC;AACnC,WAAK,oBAAoB,KAAK,OAAO,OAAO,KAAK,CAAC,KAAK,MAAM,CAAC,KAAK,OAAO,WAAW,SAAS,EAAE;AAAA,IAClG;AACA,QAAI;AACF,YAAM,WAAW,MAAM,QAAiC,yBAAyB,OAAO,IAAI;AAC5F,gBAAU,QAAQ;AAAA,IACpB,SAAS,KAAK;AACZ,UAAI,eAAe,SAAU,MAAK,IAAI,MAAM,IAAI,OAAO;AACvD,WAAK,kBAAkB,kBAAkB;AAAA,IAC3C;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -1,193 +0,0 @@
1
- import {
2
- CanvasPrepareError,
3
- adaptNodes,
4
- compiledPromptNodeIds,
5
- prepareCanvas,
6
- sceneOwnedPrompts
7
- } from "./chunk-GXGYTFZA.js";
8
- import "./chunk-I7J7YQXZ.js";
9
- import "./chunk-PHCIFBP3.js";
10
- import "./chunk-QG4MW2V4.js";
11
- import "./chunk-MOFMOYUA.js";
12
- import "./chunk-NKIBXOHT.js";
13
- import "./chunk-Y46FE75E.js";
14
- import "./chunk-Q5WBTVA7.js";
15
- import "./chunk-NEU5QD2C.js";
16
- import "./chunk-3S274625.js";
17
- import "./chunk-6UNOK7WV.js";
18
- import "./chunk-UFKO626N.js";
19
- import "./chunk-XRIM7NYV.js";
20
- import {
21
- defaultRegistry,
22
- validateCanvasDeep
23
- } from "./chunk-B7GF34FU.js";
24
- import "./chunk-OL7JS4NG.js";
25
- import "./chunk-7KHTJQGV.js";
26
- import "./chunk-DGCUPJZD.js";
27
- import "./chunk-QMOYQJIN.js";
28
- import {
29
- COPY_DIRECTIVE_HEADER
30
- } from "./chunk-FKYPAGKK.js";
31
- import "./chunk-S4VLLGTW.js";
32
- import "./chunk-MCJ5I5LR.js";
33
- import "./chunk-2WZI36D3.js";
34
- import "./chunk-65Y3RCWP.js";
35
- import "./chunk-A6WKCV3V.js";
36
- import "./chunk-U7YR5CZL.js";
37
- import "./chunk-VI5YQQ63.js";
38
- import "./chunk-JX7BX2NB.js";
39
- import "./chunk-DAO63OOP.js";
40
- import "./chunk-GXDLWBOY.js";
41
- import "./chunk-GIWHHCD6.js";
42
- import "./chunk-XQIOCIDO.js";
43
- import "./chunk-WTJSMYY2.js";
44
- import "./chunk-6YLNY6CK.js";
45
- import "./chunk-D5NEIESR.js";
46
- import "./chunk-57KKVDDR.js";
47
- import "./chunk-QANGHND7.js";
48
- import "./chunk-YQSBHWOI.js";
49
-
50
- // src/commands/canvas/set-prompt.ts
51
- import { readFile, writeFile } from "fs/promises";
52
- import path from "path";
53
- import { defineCommand } from "citty";
54
- function setNodePrompt(canvas, nodeId, text) {
55
- const nodes = canvas?.nodes;
56
- if (!Array.isArray(nodes)) throw new Error("canvas has no nodes array");
57
- const idx = nodes.findIndex((n) => n?.id === nodeId);
58
- if (idx < 0) {
59
- const ids = nodes.map((n) => n?.id).filter((id) => typeof id === "string");
60
- throw new Error(`node "${nodeId}" not found. Known nodes: ${ids.join(", ")}`);
61
- }
62
- const node = nodes[idx];
63
- const newNode = { ...node, params: { ...node.params ?? {}, prompt: text } };
64
- const newNodes = [...nodes];
65
- newNodes[idx] = newNode;
66
- return { ...canvas, nodes: newNodes };
67
- }
68
- var SetPromptError = class extends Error {
69
- code;
70
- fix;
71
- details;
72
- constructor(code, message, opts = {}) {
73
- super(message);
74
- this.name = "SetPromptError";
75
- this.code = code;
76
- this.fix = opts.fix;
77
- this.details = opts.details;
78
- }
79
- };
80
- async function setPromptInCanvasFile(canvasPath, nodeId, text) {
81
- const filePath = path.resolve(canvasPath);
82
- const original = await readFile(filePath, "utf8");
83
- let canvas;
84
- try {
85
- canvas = JSON.parse(original);
86
- } catch (e) {
87
- throw new SetPromptError("parse", `${filePath}: JSON parse error: ${e instanceof Error ? e.message : String(e)}`);
88
- }
89
- const sceneFile = (await sceneOwnedPrompts(filePath)).get(nodeId);
90
- if (sceneFile) {
91
- throw new SetPromptError(
92
- "projected_prompt",
93
- `The prompt of "${nodeId}" is rebuilt from ${sceneFile} on every validate and run, so setting it in the canvas would be overwritten.`,
94
- {
95
- fix: `Edit the scene's description in ${sceneFile} (its frame and motion fields, e.g. start_frame_prompt, end_frame_prompt, frame_prompt, motion_prompt), then run \`baker canvas validate\` to see the rebuilt prompt.`
96
- }
97
- );
98
- }
99
- if (compiledPromptNodeIds(canvas).has(nodeId) || adaptNodes(canvas).some((a) => a.node.id === nodeId)) {
100
- throw new SetPromptError(
101
- "projected_prompt",
102
- `The prompt of "${nodeId}" is compiled from prompt.json on every validate and run, so setting it in the canvas would be overwritten.`,
103
- {
104
- fix: `Edit the ad in ${path.join(path.dirname(filePath), "prompt.json")} (its scene, copy, references or direction), then run \`baker canvas validate\` to see the compiled prompt on the node.`
105
- }
106
- );
107
- }
108
- let updated;
109
- try {
110
- updated = setNodePrompt(canvas, nodeId, withCopyBlock(canvas, nodeId, text));
111
- } catch (e) {
112
- throw new SetPromptError("node_not_found", e instanceof Error ? e.message : String(e));
113
- }
114
- await writeFile(filePath, `${JSON.stringify(updated, null, 2)}
115
- `, "utf8");
116
- const restore = () => writeFile(filePath, original, "utf8");
117
- try {
118
- const prepared = await prepareCanvas(filePath);
119
- const validation = await validateCanvasDeep(prepared.canvas, defaultRegistry());
120
- if (!validation.ok) {
121
- await restore();
122
- throw new SetPromptError("validation", "The edited canvas does not validate; nothing was changed.", {
123
- details: { issues: validation.issues }
124
- });
125
- }
126
- } catch (e) {
127
- if (e instanceof SetPromptError) throw e;
128
- await restore();
129
- if (e instanceof CanvasPrepareError) {
130
- throw new SetPromptError(e.code, e.message, { ...e.fix ? { fix: e.fix } : {}, ...e.details ? { details: e.details } : {} });
131
- }
132
- throw e;
133
- }
134
- }
135
- function withCopyBlock(canvas, nodeId, text) {
136
- const nodes = canvas?.nodes;
137
- const current = Array.isArray(nodes) ? nodes.find((n) => n?.id === nodeId)?.params?.prompt : void 0;
138
- if (typeof current !== "string" || !current.includes(COPY_DIRECTIVE_HEADER) || text.includes(COPY_DIRECTIVE_HEADER)) {
139
- return text;
140
- }
141
- return `${text.trimEnd()}
142
-
143
- ${COPY_DIRECTIVE_HEADER}`;
144
- }
145
- var setPromptCommand = defineCommand({
146
- meta: {
147
- name: "set-prompt",
148
- description: "Safely set a node's params.prompt (a frame description, motion prompt, etc.) without hand-editing the JSON. Prefer --text-file for multi-line/accented copy \u2014 it preserves UTF-8 exactly, unlike shell-quoted jq. A prompt rebuilt from a scene file (scenes/sNN.json), or compiled from a static ad's prompt.json, is refused with the file to edit instead."
149
- },
150
- args: {
151
- file: { type: "positional", required: true, description: "Path to canvas JSON" },
152
- node: { type: "positional", required: true, description: "Node id to edit (e.g. s0_start)" },
153
- text: { type: "string", description: "New prompt text (inline)" },
154
- "text-file": { type: "string", description: "Read the new prompt from a UTF-8 file (preserves accents/newlines)" }
155
- },
156
- async run({ args }) {
157
- let text;
158
- if (args["text-file"]) text = await readFile(path.resolve(String(args["text-file"])), "utf8");
159
- else if (args.text !== void 0) text = String(args.text);
160
- else {
161
- process.stderr.write(
162
- `${JSON.stringify({ ok: false, error: { code: "no_text", message: "pass --text or --text-file" } }, null, 2)}
163
- `
164
- );
165
- process.exit(2);
166
- return;
167
- }
168
- try {
169
- await setPromptInCanvasFile(String(args.file), String(args.node), text);
170
- } catch (e) {
171
- if (!(e instanceof SetPromptError)) throw e;
172
- process.stderr.write(
173
- `${JSON.stringify(
174
- { ok: false, error: { code: e.code, message: e.message, ...e.fix ? { fix: e.fix } : {}, ...e.details ?? {} } },
175
- null,
176
- 2
177
- )}
178
- `
179
- );
180
- process.exit(2);
181
- return;
182
- }
183
- process.stdout.write(`${JSON.stringify({ ok: true, node: String(args.node), bytes: text.length }, null, 2)}
184
- `);
185
- }
186
- });
187
- export {
188
- SetPromptError,
189
- setNodePrompt,
190
- setPromptCommand,
191
- setPromptInCanvasFile
192
- };
193
- //# sourceMappingURL=set-prompt-O4YAE4CE.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/commands/canvas/set-prompt.ts"],"sourcesContent":["import { readFile, writeFile } from \"node:fs/promises\";\nimport path from \"node:path\";\nimport { defineCommand } from \"citty\";\nimport { defaultRegistry, validateCanvasDeep } from \"../../engine/index.ts\";\nimport { COPY_DIRECTIVE_HEADER } from \"../../engine/scaffold/static-copy.ts\";\nimport { adaptNodes } from \"../../engine/scaffold/static-adapt-briefs.ts\";\nimport { compiledPromptNodeIds } from \"../../engine/scaffold/static-render-briefs.ts\";\nimport { CanvasPrepareError, prepareCanvas } from \"./prepare-canvas.ts\";\nimport { sceneOwnedPrompts } from \"./scene-projection.ts\";\n\n/**\n * Set one node's `params.prompt` in a parsed canvas, returning a NEW canvas. The\n * structured alternative to hand-editing a 133 KB machine JSON with jq/sed — which\n * is where `\"prompt\": null` pollution (a global `gsub` writing prompt onto every\n * node) and the French-accent corruption (shell `''` eating apostrophes) came from.\n * Throws when the node id is unknown. Pure — unit-tested without the filesystem.\n */\nexport function setNodePrompt(canvas: unknown, nodeId: string, text: string): unknown {\n const nodes = (canvas as { nodes?: unknown })?.nodes;\n if (!Array.isArray(nodes)) throw new Error(\"canvas has no nodes array\");\n const idx = nodes.findIndex((n) => (n as { id?: unknown })?.id === nodeId);\n if (idx < 0) {\n const ids = nodes.map((n) => (n as { id?: unknown })?.id).filter((id): id is string => typeof id === \"string\");\n throw new Error(`node \"${nodeId}\" not found. Known nodes: ${ids.join(\", \")}`);\n }\n const node = nodes[idx] as { params?: Record<string, unknown> };\n const newNode = { ...node, params: { ...(node.params ?? {}), prompt: text } };\n const newNodes = [...nodes];\n newNodes[idx] = newNode;\n return { ...(canvas as object), nodes: newNodes };\n}\n\n/** Why `set-prompt` did not write: the node's prompt is owned elsewhere, or the edit does not validate. */\nexport class SetPromptError extends Error {\n readonly code: string;\n readonly fix: string | undefined;\n readonly details: Record<string, unknown> | undefined;\n constructor(code: string, message: string, opts: { fix?: string; details?: Record<string, unknown> } = {}) {\n super(message);\n this.name = \"SetPromptError\";\n this.code = code;\n this.fix = opts.fix;\n this.details = opts.details;\n }\n}\n\n/**\n * Set a node's prompt in the canvas FILE, where it will survive.\n *\n * The canvas is a projection of its blueprint, and `prepareCanvas` rewrites the projected\n * parts on every validate and run. So:\n * - a frame or clip prompt a scene file rebuilds is refused, naming the scene file to edit\n * (writing it here would be silently overwritten by the next preflight);\n * - a static ad's scaffolded render prompt (a take, a re-lay, the judge) is refused, naming\n * prompt.json: it is compiled from the ad spec there on every run;\n * - a hand-written static render prompt keeps its copy block: the text replaces the scene\n * description, and the \"render these exact strings\" block after it is re-read from\n * prompt.json, as always;\n * - anything else is the canvas's own, and is written.\n * The result is validated; an edit that does not validate is undone.\n */\nexport async function setPromptInCanvasFile(canvasPath: string, nodeId: string, text: string): Promise<void> {\n const filePath = path.resolve(canvasPath);\n const original = await readFile(filePath, \"utf8\");\n let canvas: unknown;\n try {\n canvas = JSON.parse(original);\n } catch (e) {\n throw new SetPromptError(\"parse\", `${filePath}: JSON parse error: ${e instanceof Error ? e.message : String(e)}`);\n }\n\n const sceneFile = (await sceneOwnedPrompts(filePath)).get(nodeId);\n if (sceneFile) {\n throw new SetPromptError(\n \"projected_prompt\",\n `The prompt of \"${nodeId}\" is rebuilt from ${sceneFile} on every validate and run, so setting it in the canvas would be overwritten.`,\n {\n fix: `Edit the scene's description in ${sceneFile} (its frame and motion fields, e.g. start_frame_prompt, end_frame_prompt, frame_prompt, motion_prompt), then run \\`baker canvas validate\\` to see the rebuilt prompt.`,\n },\n );\n }\n\n if (compiledPromptNodeIds(canvas).has(nodeId) || adaptNodes(canvas).some((a) => a.node.id === nodeId)) {\n throw new SetPromptError(\n \"projected_prompt\",\n `The prompt of \"${nodeId}\" is compiled from prompt.json on every validate and run, so setting it in the canvas would be overwritten.`,\n {\n fix: `Edit the ad in ${path.join(path.dirname(filePath), \"prompt.json\")} (its scene, copy, references or direction), then run \\`baker canvas validate\\` to see the compiled prompt on the node.`,\n },\n );\n }\n\n let updated: unknown;\n try {\n updated = setNodePrompt(canvas, nodeId, withCopyBlock(canvas, nodeId, text));\n } catch (e) {\n throw new SetPromptError(\"node_not_found\", e instanceof Error ? e.message : String(e));\n }\n\n await writeFile(filePath, `${JSON.stringify(updated, null, 2)}\\n`, \"utf8\");\n const restore = () => writeFile(filePath, original, \"utf8\");\n try {\n const prepared = await prepareCanvas(filePath);\n const validation = await validateCanvasDeep(prepared.canvas, defaultRegistry());\n if (!validation.ok) {\n await restore();\n throw new SetPromptError(\"validation\", \"The edited canvas does not validate; nothing was changed.\", {\n details: { issues: validation.issues },\n });\n }\n } catch (e) {\n if (e instanceof SetPromptError) throw e;\n await restore();\n if (e instanceof CanvasPrepareError) {\n throw new SetPromptError(e.code, e.message, { ...(e.fix ? { fix: e.fix } : {}), ...(e.details ? { details: e.details } : {}) });\n }\n throw e;\n }\n}\n\n/**\n * A static ad's render prompt ends with the copy block the preflight fills from prompt.json.\n * New text that leaves it out keeps it, so replacing the scene description never drops the\n * words the ad must show.\n */\nfunction withCopyBlock(canvas: unknown, nodeId: string, text: string): string {\n const nodes = (canvas as { nodes?: unknown })?.nodes;\n const current = Array.isArray(nodes)\n ? (nodes as Array<{ id?: unknown; params?: { prompt?: unknown } }>).find((n) => n?.id === nodeId)?.params?.prompt\n : undefined;\n if (typeof current !== \"string\" || !current.includes(COPY_DIRECTIVE_HEADER) || text.includes(COPY_DIRECTIVE_HEADER)) {\n return text;\n }\n return `${text.trimEnd()}\\n\\n${COPY_DIRECTIVE_HEADER}`;\n}\n\nexport const setPromptCommand = defineCommand({\n meta: {\n name: \"set-prompt\",\n description:\n \"Safely set a node's params.prompt (a frame description, motion prompt, etc.) without hand-editing the JSON. Prefer --text-file for multi-line/accented copy — it preserves UTF-8 exactly, unlike shell-quoted jq. A prompt rebuilt from a scene file (scenes/sNN.json), or compiled from a static ad's prompt.json, is refused with the file to edit instead.\",\n },\n args: {\n file: { type: \"positional\", required: true, description: \"Path to canvas JSON\" },\n node: { type: \"positional\", required: true, description: \"Node id to edit (e.g. s0_start)\" },\n text: { type: \"string\", description: \"New prompt text (inline)\" },\n \"text-file\": { type: \"string\", description: \"Read the new prompt from a UTF-8 file (preserves accents/newlines)\" },\n },\n async run({ args }) {\n let text: string;\n if (args[\"text-file\"]) text = await readFile(path.resolve(String(args[\"text-file\"])), \"utf8\");\n else if (args.text !== undefined) text = String(args.text);\n else {\n process.stderr.write(\n `${JSON.stringify({ ok: false, error: { code: \"no_text\", message: \"pass --text or --text-file\" } }, null, 2)}\\n`,\n );\n process.exit(2);\n return;\n }\n\n try {\n await setPromptInCanvasFile(String(args.file), String(args.node), text);\n } catch (e) {\n if (!(e instanceof SetPromptError)) throw e;\n process.stderr.write(\n `${JSON.stringify(\n { ok: false, error: { code: e.code, message: e.message, ...(e.fix ? { fix: e.fix } : {}), ...(e.details ?? {}) } },\n null,\n 2,\n )}\\n`,\n );\n process.exit(2);\n return;\n }\n process.stdout.write(`${JSON.stringify({ ok: true, node: String(args.node), bytes: text.length }, null, 2)}\\n`);\n },\n});\n"],"mappings":"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","names":[]}