@koda-sl/baker-cli 0.385.0-dev.ec7b0e42b → 0.385.0-dev.f7ef4c7e1

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 (963) hide show
  1. package/README.md +1082 -210
  2. package/canvas/tiktok-captions-composition/index.html +5 -6
  3. package/canvas/tiktok-captions-composition/meta.json +5 -0
  4. package/dist/account-4UEZAY5T.js +49 -0
  5. package/dist/account-4UEZAY5T.js.map +1 -0
  6. package/dist/account-G6QK2VXQ.js +79 -0
  7. package/dist/account-G6QK2VXQ.js.map +1 -0
  8. package/dist/account-OINZG6UP.js +80 -0
  9. package/dist/account-OINZG6UP.js.map +1 -0
  10. package/dist/account-reads-ZKKDYHK5.js +218 -0
  11. package/dist/account-reads-ZKKDYHK5.js.map +1 -0
  12. package/dist/account-writes-N4JDIDRB.js +66 -0
  13. package/dist/account-writes-N4JDIDRB.js.map +1 -0
  14. package/dist/accounts-7KRRRVLB.js +611 -0
  15. package/dist/accounts-7KRRRVLB.js.map +1 -0
  16. package/dist/accounts-AEBQFCNH.js +114 -0
  17. package/dist/accounts-AEBQFCNH.js.map +1 -0
  18. package/dist/accounts-CNTOHRQ2.js +77 -0
  19. package/dist/accounts-CNTOHRQ2.js.map +1 -0
  20. package/dist/accounts-HP4BLKK5.js +75 -0
  21. package/dist/accounts-HP4BLKK5.js.map +1 -0
  22. package/dist/accounts-Z4CLGQXJ.js +115 -0
  23. package/dist/accounts-Z4CLGQXJ.js.map +1 -0
  24. package/dist/actions-QO7VQ6UV.js +55 -0
  25. package/dist/actions-QO7VQ6UV.js.map +1 -0
  26. package/dist/active-entities-YB46ADQN.js +103 -0
  27. package/dist/active-entities-YB46ADQN.js.map +1 -0
  28. package/dist/activities-DUAIQJLN.js +74 -0
  29. package/dist/activities-DUAIQJLN.js.map +1 -0
  30. package/dist/ad-group-writes-HL3EZ3BT.js +170 -0
  31. package/dist/ad-group-writes-HL3EZ3BT.js.map +1 -0
  32. package/dist/ad-groups-FGS5JJGN.js +68 -0
  33. package/dist/ad-groups-FGS5JJGN.js.map +1 -0
  34. package/dist/ad-writes-LX4ACUHB.js +174 -0
  35. package/dist/ad-writes-LX4ACUHB.js.map +1 -0
  36. package/dist/add-5CUXNOUM.js +97 -0
  37. package/dist/add-5CUXNOUM.js.map +1 -0
  38. package/dist/add-5JBMJHNW.js +302 -0
  39. package/dist/add-5JBMJHNW.js.map +1 -0
  40. package/dist/add-E66HBIZV.js +105 -0
  41. package/dist/add-E66HBIZV.js.map +1 -0
  42. package/dist/add-O76R2SPE.js +104 -0
  43. package/dist/add-O76R2SPE.js.map +1 -0
  44. package/dist/add-accounts-YME5SCXD.js +91 -0
  45. package/dist/add-accounts-YME5SCXD.js.map +1 -0
  46. package/dist/ads-65R3WMDU.js +128 -0
  47. package/dist/ads-65R3WMDU.js.map +1 -0
  48. package/dist/ads-O63J7BDF.js +113 -0
  49. package/dist/ads-O63J7BDF.js.map +1 -0
  50. package/dist/ads-T5JWNFSA.js +40 -0
  51. package/dist/ads-T5JWNFSA.js.map +1 -0
  52. package/dist/ads-TFZ5PXKS.js +77 -0
  53. package/dist/ads-TFZ5PXKS.js.map +1 -0
  54. package/dist/adsets-Y62JOOTV.js +176 -0
  55. package/dist/adsets-Y62JOOTV.js.map +1 -0
  56. package/dist/advertisers-LJ2HKJ4W.js +125 -0
  57. package/dist/advertisers-LJ2HKJ4W.js.map +1 -0
  58. package/dist/advertisers-WJW5DK3Q.js +120 -0
  59. package/dist/advertisers-WJW5DK3Q.js.map +1 -0
  60. package/dist/analytics-HIOC3TUK.js +1976 -0
  61. package/dist/analytics-HIOC3TUK.js.map +1 -0
  62. package/dist/analytics-U2NLDV2V.js +433 -0
  63. package/dist/analytics-U2NLDV2V.js.map +1 -0
  64. package/dist/animate-E3SKQ6SI.js +480 -0
  65. package/dist/animate-E3SKQ6SI.js.map +1 -0
  66. package/dist/assign-V7EAR7VD.js +77 -0
  67. package/dist/assign-V7EAR7VD.js.map +1 -0
  68. package/dist/audience-size-GS7EDBDP.js +94 -0
  69. package/dist/audience-size-GS7EDBDP.js.map +1 -0
  70. package/dist/audiences-5A6BCWSA.js +268 -0
  71. package/dist/audiences-5A6BCWSA.js.map +1 -0
  72. package/dist/audiences-6QOCASVV.js +78 -0
  73. package/dist/audiences-6QOCASVV.js.map +1 -0
  74. package/dist/audiences-O67NGIP5.js +85 -0
  75. package/dist/audiences-O67NGIP5.js.map +1 -0
  76. package/dist/audit-HWK24VXI.js +88 -0
  77. package/dist/audit-HWK24VXI.js.map +1 -0
  78. package/dist/audit-WMZERUAA.js +151 -0
  79. package/dist/audit-WMZERUAA.js.map +1 -0
  80. package/dist/autocomplete-KQSTLQFS.js +111 -0
  81. package/dist/autocomplete-KQSTLQFS.js.map +1 -0
  82. package/dist/avatars-HAFQZD63.js +38 -0
  83. package/dist/avatars-HAFQZD63.js.map +1 -0
  84. package/dist/bid-pricing-5SORFAPE.js +99 -0
  85. package/dist/bid-pricing-5SORFAPE.js.map +1 -0
  86. package/dist/brand-EBG436YV.js +22 -0
  87. package/dist/brand-EBG436YV.js.map +1 -0
  88. package/dist/brief-AYXXPTHC.js +490 -0
  89. package/dist/brief-AYXXPTHC.js.map +1 -0
  90. package/dist/businesses-65EWTK5E.js +53 -0
  91. package/dist/businesses-65EWTK5E.js.map +1 -0
  92. package/dist/campaign-groups-U7723BBE.js +95 -0
  93. package/dist/campaign-groups-U7723BBE.js.map +1 -0
  94. package/dist/campaign-writes-CXS4KYB5.js +165 -0
  95. package/dist/campaign-writes-CXS4KYB5.js.map +1 -0
  96. package/dist/campaign-writes-M6JLF5AC.js +170 -0
  97. package/dist/campaign-writes-M6JLF5AC.js.map +1 -0
  98. package/dist/campaigns-6SM2ZSIH.js +76 -0
  99. package/dist/campaigns-6SM2ZSIH.js.map +1 -0
  100. package/dist/campaigns-7DWD2A5U.js +109 -0
  101. package/dist/campaigns-7DWD2A5U.js.map +1 -0
  102. package/dist/campaigns-F66OYA6N.js +107 -0
  103. package/dist/campaigns-F66OYA6N.js.map +1 -0
  104. package/dist/campaigns-TD7ZB5DG.js +110 -0
  105. package/dist/campaigns-TD7ZB5DG.js.map +1 -0
  106. package/dist/canvas-3NYM5Y7G.js +46 -0
  107. package/dist/canvas-3NYM5Y7G.js.map +1 -0
  108. package/dist/capabilities-JNFYSGRD.js +144 -0
  109. package/dist/capabilities-JNFYSGRD.js.map +1 -0
  110. package/dist/cards-7HRC4UQQ.js +85 -0
  111. package/dist/cards-7HRC4UQQ.js.map +1 -0
  112. package/dist/catalog-N6MDMIVL.js +64 -0
  113. package/dist/catalog-N6MDMIVL.js.map +1 -0
  114. package/dist/catalogs-PB46L7FH.js +128 -0
  115. package/dist/catalogs-PB46L7FH.js.map +1 -0
  116. package/dist/changes-SASUQK62.js +135 -0
  117. package/dist/changes-SASUQK62.js.map +1 -0
  118. package/dist/chatgpt-JKBSAG25.js +47 -0
  119. package/dist/chatgpt-JKBSAG25.js.map +1 -0
  120. package/dist/chats-TUZANLQH.js +262 -0
  121. package/dist/chats-TUZANLQH.js.map +1 -0
  122. package/dist/chunk-25E6SC3F.js +363 -0
  123. package/dist/chunk-25E6SC3F.js.map +1 -0
  124. package/dist/chunk-2GVXNKAE.js +42 -0
  125. package/dist/chunk-2GVXNKAE.js.map +1 -0
  126. package/dist/{chunk-WLDM2TRF.js → chunk-2UFRHW3T.js} +4 -4
  127. package/dist/chunk-2Y5V23PU.js +29 -0
  128. package/dist/chunk-2Y5V23PU.js.map +1 -0
  129. package/dist/chunk-35NYNRRB.js +111 -0
  130. package/dist/chunk-35NYNRRB.js.map +1 -0
  131. package/dist/chunk-3ACMDRSE.js +39 -0
  132. package/dist/chunk-3ACMDRSE.js.map +1 -0
  133. package/dist/chunk-3M6RNCDD.js +26 -0
  134. package/dist/chunk-3M6RNCDD.js.map +1 -0
  135. package/dist/chunk-3VXQYDJN.js +1743 -0
  136. package/dist/chunk-3VXQYDJN.js.map +1 -0
  137. package/dist/chunk-42DF5DF3.js +304 -0
  138. package/dist/chunk-42DF5DF3.js.map +1 -0
  139. package/dist/chunk-44VXKO65.js +106 -0
  140. package/dist/chunk-44VXKO65.js.map +1 -0
  141. package/dist/chunk-4NZ47VXO.js +137 -0
  142. package/dist/chunk-4NZ47VXO.js.map +1 -0
  143. package/dist/chunk-4X3UR372.js +225 -0
  144. package/dist/chunk-4X3UR372.js.map +1 -0
  145. package/dist/chunk-5FEBUCJU.js +25 -0
  146. package/dist/chunk-5FEBUCJU.js.map +1 -0
  147. package/dist/chunk-5HYSKH77.js +315 -0
  148. package/dist/chunk-5HYSKH77.js.map +1 -0
  149. package/dist/chunk-5LBGFQWF.js +310 -0
  150. package/dist/chunk-5LBGFQWF.js.map +1 -0
  151. package/dist/chunk-5MBPIONY.js +29 -0
  152. package/dist/chunk-5MBPIONY.js.map +1 -0
  153. package/dist/chunk-6YMHGIHP.js +346 -0
  154. package/dist/chunk-6YMHGIHP.js.map +1 -0
  155. package/dist/{chunk-VZEDAFAR.js → chunk-6YYSUISH.js} +47 -8
  156. package/dist/chunk-6YYSUISH.js.map +1 -0
  157. package/dist/chunk-7GNU3P7X.js +175 -0
  158. package/dist/chunk-7GNU3P7X.js.map +1 -0
  159. package/dist/chunk-7OHWEF3I.js +98 -0
  160. package/dist/chunk-7OHWEF3I.js.map +1 -0
  161. package/dist/chunk-7TR3QVWM.js +57 -0
  162. package/dist/chunk-7TR3QVWM.js.map +1 -0
  163. package/dist/chunk-AADVCEL4.js +817 -0
  164. package/dist/chunk-AADVCEL4.js.map +1 -0
  165. package/dist/chunk-AG62YO7C.js +96 -0
  166. package/dist/chunk-AG62YO7C.js.map +1 -0
  167. package/dist/chunk-AIRIT4GF.js +75 -0
  168. package/dist/chunk-AIRIT4GF.js.map +1 -0
  169. package/dist/chunk-AP3TP6VG.js +139 -0
  170. package/dist/chunk-AP3TP6VG.js.map +1 -0
  171. package/dist/chunk-APP475IQ.js +474 -0
  172. package/dist/chunk-APP475IQ.js.map +1 -0
  173. package/dist/chunk-AR7PU7BB.js +76 -0
  174. package/dist/chunk-AR7PU7BB.js.map +1 -0
  175. package/dist/chunk-B4S72KSS.js +172 -0
  176. package/dist/chunk-B4S72KSS.js.map +1 -0
  177. package/dist/chunk-BIPIL4QA.js +486 -0
  178. package/dist/chunk-BIPIL4QA.js.map +1 -0
  179. package/dist/chunk-BPUSL5Y2.js +58 -0
  180. package/dist/chunk-BPUSL5Y2.js.map +1 -0
  181. package/dist/chunk-BR32GHYD.js +65 -0
  182. package/dist/chunk-BR32GHYD.js.map +1 -0
  183. package/dist/chunk-CAMX6OHF.js +3182 -0
  184. package/dist/chunk-CAMX6OHF.js.map +1 -0
  185. package/dist/chunk-CE7RTOX6.js +494 -0
  186. package/dist/chunk-CE7RTOX6.js.map +1 -0
  187. package/dist/{chunk-MF7YA62W.js → chunk-CUL3VB4L.js} +10 -5
  188. package/dist/chunk-CUL3VB4L.js.map +1 -0
  189. package/dist/chunk-CVEY353K.js +66 -0
  190. package/dist/chunk-CVEY353K.js.map +1 -0
  191. package/dist/chunk-CWXADUKL.js +1599 -0
  192. package/dist/chunk-CWXADUKL.js.map +1 -0
  193. package/dist/chunk-D46NOXRY.js +6212 -0
  194. package/dist/chunk-D46NOXRY.js.map +1 -0
  195. package/dist/chunk-D5FY4FAK.js +24 -0
  196. package/dist/chunk-D5FY4FAK.js.map +1 -0
  197. package/dist/chunk-DGCUPJZD.js +39 -0
  198. package/dist/chunk-DGCUPJZD.js.map +1 -0
  199. package/dist/chunk-DNCLWSHO.js +41 -0
  200. package/dist/chunk-DNCLWSHO.js.map +1 -0
  201. package/dist/chunk-DUPURL26.js +97 -0
  202. package/dist/chunk-DUPURL26.js.map +1 -0
  203. package/dist/chunk-DXJYQ5P2.js +625 -0
  204. package/dist/chunk-DXJYQ5P2.js.map +1 -0
  205. package/dist/chunk-E2ZOSNF5.js +96 -0
  206. package/dist/chunk-E2ZOSNF5.js.map +1 -0
  207. package/dist/chunk-E3HYHT7C.js +274 -0
  208. package/dist/chunk-E3HYHT7C.js.map +1 -0
  209. package/dist/chunk-EDLZGTGN.js +216 -0
  210. package/dist/chunk-EDLZGTGN.js.map +1 -0
  211. package/dist/{chunk-XHC4LMK4.js → chunk-EIGXX6KI.js} +16 -8
  212. package/dist/chunk-EIGXX6KI.js.map +1 -0
  213. package/dist/chunk-EPDE7ZRU.js +174 -0
  214. package/dist/chunk-EPDE7ZRU.js.map +1 -0
  215. package/dist/chunk-ERSX3MKH.js +34 -0
  216. package/dist/chunk-ERSX3MKH.js.map +1 -0
  217. package/dist/chunk-F7HRLPR5.js +67 -0
  218. package/dist/chunk-F7HRLPR5.js.map +1 -0
  219. package/dist/chunk-FEG6MN4H.js +84 -0
  220. package/dist/chunk-FEG6MN4H.js.map +1 -0
  221. package/dist/chunk-FKOECEVC.js +126 -0
  222. package/dist/chunk-FKOECEVC.js.map +1 -0
  223. package/dist/chunk-FMGW2NZI.js +106 -0
  224. package/dist/chunk-FMGW2NZI.js.map +1 -0
  225. package/dist/chunk-FPZKKNDK.js +98 -0
  226. package/dist/chunk-FPZKKNDK.js.map +1 -0
  227. package/dist/chunk-G3ZDLPNZ.js +206 -0
  228. package/dist/chunk-G3ZDLPNZ.js.map +1 -0
  229. package/dist/chunk-GIWHHCD6.js +145 -0
  230. package/dist/chunk-GIWHHCD6.js.map +1 -0
  231. package/dist/chunk-GOJXKIFQ.js +1605 -0
  232. package/dist/chunk-GOJXKIFQ.js.map +1 -0
  233. package/dist/chunk-GRQ2AXDX.js +9 -0
  234. package/dist/chunk-GRQ2AXDX.js.map +1 -0
  235. package/dist/chunk-GXDLWBOY.js +73 -0
  236. package/dist/chunk-GXDLWBOY.js.map +1 -0
  237. package/dist/chunk-HAE4WWFQ.js +455 -0
  238. package/dist/chunk-HAE4WWFQ.js.map +1 -0
  239. package/dist/chunk-HEEAC2YG.js +541 -0
  240. package/dist/chunk-HEEAC2YG.js.map +1 -0
  241. package/dist/chunk-I2DNBEV6.js +4227 -0
  242. package/dist/chunk-I2DNBEV6.js.map +1 -0
  243. package/dist/chunk-I4FTS5EE.js +455 -0
  244. package/dist/chunk-I4FTS5EE.js.map +1 -0
  245. package/dist/chunk-IA4KJU7O.js +3151 -0
  246. package/dist/chunk-IA4KJU7O.js.map +1 -0
  247. package/dist/chunk-IELPT4K2.js +74 -0
  248. package/dist/chunk-IELPT4K2.js.map +1 -0
  249. package/dist/chunk-IJMWEO4P.js +57 -0
  250. package/dist/chunk-IJMWEO4P.js.map +1 -0
  251. package/dist/chunk-IVIJJXXT.js +62 -0
  252. package/dist/chunk-IVIJJXXT.js.map +1 -0
  253. package/dist/chunk-JAU6OAFK.js +455 -0
  254. package/dist/chunk-JAU6OAFK.js.map +1 -0
  255. package/dist/chunk-JD3W3ON7.js +188 -0
  256. package/dist/chunk-JD3W3ON7.js.map +1 -0
  257. package/dist/chunk-JLWBK3VC.js +5187 -0
  258. package/dist/chunk-JLWBK3VC.js.map +1 -0
  259. package/dist/chunk-JPK34QPS.js +134 -0
  260. package/dist/chunk-JPK34QPS.js.map +1 -0
  261. package/dist/chunk-JXJD6RC5.js +169 -0
  262. package/dist/chunk-JXJD6RC5.js.map +1 -0
  263. package/dist/chunk-JXMZEOHV.js +333 -0
  264. package/dist/chunk-JXMZEOHV.js.map +1 -0
  265. package/dist/chunk-K6TDB2KV.js +1442 -0
  266. package/dist/chunk-K6TDB2KV.js.map +1 -0
  267. package/dist/chunk-KIGGMKAE.js +66 -0
  268. package/dist/chunk-KIGGMKAE.js.map +1 -0
  269. package/dist/chunk-KKJ4KJCW.js +29 -0
  270. package/dist/chunk-KKJ4KJCW.js.map +1 -0
  271. package/dist/chunk-KONA5PSR.js +55 -0
  272. package/dist/chunk-KONA5PSR.js.map +1 -0
  273. package/dist/chunk-KVHRW7KO.js +60 -0
  274. package/dist/chunk-KVHRW7KO.js.map +1 -0
  275. package/dist/chunk-LA6PPSNA.js +65 -0
  276. package/dist/chunk-LA6PPSNA.js.map +1 -0
  277. package/dist/chunk-LKPJADL2.js +74 -0
  278. package/dist/chunk-LKPJADL2.js.map +1 -0
  279. package/dist/chunk-LM7N7IQR.js +297 -0
  280. package/dist/chunk-LM7N7IQR.js.map +1 -0
  281. package/dist/chunk-LWAEHLKV.js +74 -0
  282. package/dist/chunk-LWAEHLKV.js.map +1 -0
  283. package/dist/chunk-M6UNISGO.js +66 -0
  284. package/dist/chunk-M6UNISGO.js.map +1 -0
  285. package/dist/chunk-MFSIACRB.js +207 -0
  286. package/dist/chunk-MFSIACRB.js.map +1 -0
  287. package/dist/chunk-MIJAGBEP.js +23992 -0
  288. package/dist/chunk-MIJAGBEP.js.map +1 -0
  289. package/dist/chunk-MYTDK3AL.js +2102 -0
  290. package/dist/chunk-MYTDK3AL.js.map +1 -0
  291. package/dist/chunk-MYURCD23.js +6667 -0
  292. package/dist/chunk-MYURCD23.js.map +1 -0
  293. package/dist/chunk-MZQ5DX6S.js +125 -0
  294. package/dist/chunk-MZQ5DX6S.js.map +1 -0
  295. package/dist/chunk-NFSLRRIE.js +77 -0
  296. package/dist/chunk-NFSLRRIE.js.map +1 -0
  297. package/dist/chunk-NMDP7FZP.js +479 -0
  298. package/dist/chunk-NMDP7FZP.js.map +1 -0
  299. package/dist/chunk-NMGELUIA.js +183 -0
  300. package/dist/chunk-NMGELUIA.js.map +1 -0
  301. package/dist/chunk-NOK7MSVJ.js +533 -0
  302. package/dist/chunk-NOK7MSVJ.js.map +1 -0
  303. package/dist/chunk-O2EVJALZ.js +133 -0
  304. package/dist/chunk-O2EVJALZ.js.map +1 -0
  305. package/dist/chunk-OIL6PU5W.js +35 -0
  306. package/dist/chunk-OIL6PU5W.js.map +1 -0
  307. package/dist/chunk-P4NSJS54.js +20 -0
  308. package/dist/chunk-P4NSJS54.js.map +1 -0
  309. package/dist/chunk-P5T7OZKV.js +26 -0
  310. package/dist/chunk-P5T7OZKV.js.map +1 -0
  311. package/dist/chunk-PFBQERWX.js +10 -0
  312. package/dist/chunk-PFBQERWX.js.map +1 -0
  313. package/dist/chunk-PSWVSLJU.js +56 -0
  314. package/dist/chunk-PSWVSLJU.js.map +1 -0
  315. package/dist/chunk-PY2NJ6XZ.js +191 -0
  316. package/dist/chunk-PY2NJ6XZ.js.map +1 -0
  317. package/dist/chunk-PZ4OM2LK.js +45 -0
  318. package/dist/chunk-PZ4OM2LK.js.map +1 -0
  319. package/dist/chunk-Q2EKN7NI.js +1079 -0
  320. package/dist/chunk-Q2EKN7NI.js.map +1 -0
  321. package/dist/chunk-Q6ULQMWG.js +41 -0
  322. package/dist/chunk-Q6ULQMWG.js.map +1 -0
  323. package/dist/chunk-QMLGJ5OW.js +2891 -0
  324. package/dist/chunk-QMLGJ5OW.js.map +1 -0
  325. package/dist/chunk-R7QV5N2S.js +846 -0
  326. package/dist/chunk-R7QV5N2S.js.map +1 -0
  327. package/dist/chunk-RCS4JKUD.js +23 -0
  328. package/dist/chunk-RCS4JKUD.js.map +1 -0
  329. package/dist/chunk-RR3KT2E7.js +665 -0
  330. package/dist/chunk-RR3KT2E7.js.map +1 -0
  331. package/dist/chunk-SEPPFM5S.js +228 -0
  332. package/dist/chunk-SEPPFM5S.js.map +1 -0
  333. package/dist/chunk-SQ7DRYCC.js +150 -0
  334. package/dist/chunk-SQ7DRYCC.js.map +1 -0
  335. package/dist/chunk-SYULM665.js +610 -0
  336. package/dist/chunk-SYULM665.js.map +1 -0
  337. package/dist/chunk-TKT3OHZ6.js +170 -0
  338. package/dist/chunk-TKT3OHZ6.js.map +1 -0
  339. package/dist/chunk-TNOSX3PJ.js +136 -0
  340. package/dist/chunk-TNOSX3PJ.js.map +1 -0
  341. package/dist/chunk-TTVKI54A.js +160 -0
  342. package/dist/chunk-TTVKI54A.js.map +1 -0
  343. package/dist/chunk-U55UZRIB.js +592 -0
  344. package/dist/chunk-U55UZRIB.js.map +1 -0
  345. package/dist/chunk-UI6BKYQD.js +225 -0
  346. package/dist/chunk-UI6BKYQD.js.map +1 -0
  347. package/dist/chunk-UKE4IZSA.js +337 -0
  348. package/dist/chunk-UKE4IZSA.js.map +1 -0
  349. package/dist/chunk-UKLDW4UW.js +46 -0
  350. package/dist/chunk-UKLDW4UW.js.map +1 -0
  351. package/dist/chunk-V6XXXEXZ.js +76 -0
  352. package/dist/chunk-V6XXXEXZ.js.map +1 -0
  353. package/dist/chunk-VCZSZCXY.js +197 -0
  354. package/dist/chunk-VCZSZCXY.js.map +1 -0
  355. package/dist/chunk-VJQWUF66.js +92 -0
  356. package/dist/chunk-VJQWUF66.js.map +1 -0
  357. package/dist/chunk-VSU5R34H.js +76 -0
  358. package/dist/chunk-VSU5R34H.js.map +1 -0
  359. package/dist/chunk-W4SA4CMR.js +296 -0
  360. package/dist/chunk-W4SA4CMR.js.map +1 -0
  361. package/dist/chunk-WFUMNDCE.js +111 -0
  362. package/dist/chunk-WFUMNDCE.js.map +1 -0
  363. package/dist/chunk-WGCGKU3M.js +51 -0
  364. package/dist/chunk-WGCGKU3M.js.map +1 -0
  365. package/dist/chunk-WHWNXLTD.js +166 -0
  366. package/dist/chunk-WHWNXLTD.js.map +1 -0
  367. package/dist/chunk-WN42X2OE.js +509 -0
  368. package/dist/chunk-WN42X2OE.js.map +1 -0
  369. package/dist/chunk-WN4KX7GE.js +25 -0
  370. package/dist/chunk-WN4KX7GE.js.map +1 -0
  371. package/dist/chunk-XIY7P54H.js +84 -0
  372. package/dist/chunk-XIY7P54H.js.map +1 -0
  373. package/dist/chunk-XPLTWUMN.js +103 -0
  374. package/dist/chunk-XPLTWUMN.js.map +1 -0
  375. package/dist/chunk-Y6T5ZKBK.js +19 -0
  376. package/dist/chunk-Y6T5ZKBK.js.map +1 -0
  377. package/dist/chunk-YGGRQXDP.js +382 -0
  378. package/dist/chunk-YGGRQXDP.js.map +1 -0
  379. package/dist/chunk-YMBB4JBD.js +1830 -0
  380. package/dist/chunk-YMBB4JBD.js.map +1 -0
  381. package/dist/chunk-YNWM426O.js +159 -0
  382. package/dist/chunk-YNWM426O.js.map +1 -0
  383. package/dist/chunk-YQSBHWOI.js +41 -0
  384. package/dist/chunk-YTF3IVMF.js +149 -0
  385. package/dist/chunk-YTF3IVMF.js.map +1 -0
  386. package/dist/chunk-Z3ENMCFE.js +94 -0
  387. package/dist/chunk-Z3ENMCFE.js.map +1 -0
  388. package/dist/chunk-Z7MWSXLG.js +94 -0
  389. package/dist/chunk-Z7MWSXLG.js.map +1 -0
  390. package/dist/chunk-ZIXHS6AM.js +42 -0
  391. package/dist/chunk-ZIXHS6AM.js.map +1 -0
  392. package/dist/chunk-ZJ7TQUCU.js +4410 -0
  393. package/dist/chunk-ZJ7TQUCU.js.map +1 -0
  394. package/dist/chunk-ZNQRDLSS.js +52 -0
  395. package/dist/chunk-ZNQRDLSS.js.map +1 -0
  396. package/dist/chunk-ZPGGSXU3.js +275 -0
  397. package/dist/chunk-ZPGGSXU3.js.map +1 -0
  398. package/dist/claim-NXYQZEMC.js +197 -0
  399. package/dist/claim-NXYQZEMC.js.map +1 -0
  400. package/dist/cli.js +104 -70061
  401. package/dist/cli.js.map +1 -1
  402. package/dist/client-EURRWXPW.js +19 -0
  403. package/dist/code-FKQW7V7N.js +76 -0
  404. package/dist/code-FKQW7V7N.js.map +1 -0
  405. package/dist/companies-5ZH47E4H.js +195 -0
  406. package/dist/companies-5ZH47E4H.js.map +1 -0
  407. package/dist/complete-62OQPRHW.js +81 -0
  408. package/dist/complete-62OQPRHW.js.map +1 -0
  409. package/dist/config-OZOHIAOJ.js +88 -0
  410. package/dist/config-OZOHIAOJ.js.map +1 -0
  411. package/dist/connect-6DQFYKGN.js +42 -0
  412. package/dist/content-PCGSX2QU.js +85 -0
  413. package/dist/content-PCGSX2QU.js.map +1 -0
  414. package/dist/conversation-NS7JHTPK.js +93 -0
  415. package/dist/conversation-NS7JHTPK.js.map +1 -0
  416. package/dist/conversion-report-7QSWB2FY.js +125 -0
  417. package/dist/conversion-report-7QSWB2FY.js.map +1 -0
  418. package/dist/conversion-upload-command-XESIAQPU.js +438 -0
  419. package/dist/conversion-upload-command-XESIAQPU.js.map +1 -0
  420. package/dist/conversion-writes-BGOVLBS5.js +120 -0
  421. package/dist/conversion-writes-BGOVLBS5.js.map +1 -0
  422. package/dist/conversions-46MI57VC.js +135 -0
  423. package/dist/conversions-46MI57VC.js.map +1 -0
  424. package/dist/conversions-IYIWW4O7.js +76 -0
  425. package/dist/conversions-IYIWW4O7.js.map +1 -0
  426. package/dist/countries-5OBUVLLD.js +82 -0
  427. package/dist/countries-5OBUVLLD.js.map +1 -0
  428. package/dist/create-BEDPXUB7.js +236 -0
  429. package/dist/create-BEDPXUB7.js.map +1 -0
  430. package/dist/create-LLTMBBGV.js +207 -0
  431. package/dist/create-LLTMBBGV.js.map +1 -0
  432. package/dist/create-VNJ2VH3A.js +59 -0
  433. package/dist/create-VNJ2VH3A.js.map +1 -0
  434. package/dist/create-ZYKG2XOP.js +138 -0
  435. package/dist/create-ZYKG2XOP.js.map +1 -0
  436. package/dist/creatives-2LL66X4E.js +51 -0
  437. package/dist/creatives-2LL66X4E.js.map +1 -0
  438. package/dist/creatives-3MEMSUKJ.js +182 -0
  439. package/dist/creatives-3MEMSUKJ.js.map +1 -0
  440. package/dist/creatives-XI2DGQUZ.js +87 -0
  441. package/dist/creatives-XI2DGQUZ.js.map +1 -0
  442. package/dist/credentials-63PRTM3K.js +287 -0
  443. package/dist/credentials-63PRTM3K.js.map +1 -0
  444. package/dist/critique-IQI7CCTT.js +213 -0
  445. package/dist/critique-IQI7CCTT.js.map +1 -0
  446. package/dist/critique-UV7FPG45.js +1449 -0
  447. package/dist/critique-UV7FPG45.js.map +1 -0
  448. package/dist/crm-OERYUOBS.js +224 -0
  449. package/dist/crm-OERYUOBS.js.map +1 -0
  450. package/dist/crm-VNO3QTQG.js +318 -0
  451. package/dist/crm-VNO3QTQG.js.map +1 -0
  452. package/dist/crop-B52KIQ4O.js +113 -0
  453. package/dist/crop-B52KIQ4O.js.map +1 -0
  454. package/dist/currency-GGWF5DMU.js +88 -0
  455. package/dist/currency-GGWF5DMU.js.map +1 -0
  456. package/dist/custom-conversions-7WDBTC4X.js +125 -0
  457. package/dist/custom-conversions-7WDBTC4X.js.map +1 -0
  458. package/dist/customers-FOPXEGCB.js +56 -0
  459. package/dist/decide-PK7WNSQ2.js +199 -0
  460. package/dist/decide-PK7WNSQ2.js.map +1 -0
  461. package/dist/delete-56LKNEGA.js +71 -0
  462. package/dist/delete-56LKNEGA.js.map +1 -0
  463. package/dist/delete-EZ7HHOOD.js +69 -0
  464. package/dist/delete-EZ7HHOOD.js.map +1 -0
  465. package/dist/delete-JSYM7QKN.js +54 -0
  466. package/dist/delete-JSYM7QKN.js.map +1 -0
  467. package/dist/delete-NOUWBNZM.js +66 -0
  468. package/dist/delete-NOUWBNZM.js.map +1 -0
  469. package/dist/delete-T33AWV63.js +63 -0
  470. package/dist/delete-T33AWV63.js.map +1 -0
  471. package/dist/delete-YSYVFL6W.js +71 -0
  472. package/dist/delete-YSYVFL6W.js.map +1 -0
  473. package/dist/demographics-LQGFUS4F.js +138 -0
  474. package/dist/demographics-LQGFUS4F.js.map +1 -0
  475. package/dist/describe-AAVYIFE3.js +97 -0
  476. package/dist/describe-AAVYIFE3.js.map +1 -0
  477. package/dist/describe-UQFLWVFR.js +97 -0
  478. package/dist/describe-UQFLWVFR.js.map +1 -0
  479. package/dist/dimensions-QDXBG2XC.js +101 -0
  480. package/dist/dimensions-QDXBG2XC.js.map +1 -0
  481. package/dist/discard-V4LQ7ZGA.js +66 -0
  482. package/dist/discard-V4LQ7ZGA.js.map +1 -0
  483. package/dist/discover-6TEBPVNC.js +93 -0
  484. package/dist/discover-6TEBPVNC.js.map +1 -0
  485. package/dist/discover-SBZPB7T2.js +172 -0
  486. package/dist/discover-SBZPB7T2.js.map +1 -0
  487. package/dist/domain-65J2DEDB.js +98 -0
  488. package/dist/domain-65J2DEDB.js.map +1 -0
  489. package/dist/download-LV3GPOWV.js +299 -0
  490. package/dist/download-LV3GPOWV.js.map +1 -0
  491. package/dist/draft-DDFFTZ43.js +233 -0
  492. package/dist/draft-DDFFTZ43.js.map +1 -0
  493. package/dist/draft-FIKJXNIQ.js +281 -0
  494. package/dist/draft-FIKJXNIQ.js.map +1 -0
  495. package/dist/draft-GYGWTMBU.js +307 -0
  496. package/dist/draft-GYGWTMBU.js.map +1 -0
  497. package/dist/draft-KNXVZAZV.js +217 -0
  498. package/dist/draft-KNXVZAZV.js.map +1 -0
  499. package/dist/draft-N4LFPKTA.js +100 -0
  500. package/dist/draft-N4LFPKTA.js.map +1 -0
  501. package/dist/draft-NG2DPL2X.js +306 -0
  502. package/dist/draft-NG2DPL2X.js.map +1 -0
  503. package/dist/draft-QILZ7M7N.js +328 -0
  504. package/dist/draft-QILZ7M7N.js.map +1 -0
  505. package/dist/draft-XPO5RWST.js +103 -0
  506. package/dist/draft-XPO5RWST.js.map +1 -0
  507. package/dist/engine/index.d.ts +213 -127
  508. package/dist/engine/index.js +18 -4
  509. package/dist/{env-4P5HOGNA.js → env-TQ2XS2KY.js} +12 -2
  510. package/dist/env-TQ2XS2KY.js.map +1 -0
  511. package/dist/experiment-FQNKMORZ.js +1397 -0
  512. package/dist/experiment-FQNKMORZ.js.map +1 -0
  513. package/dist/export-4IZQZAPF.js +168 -0
  514. package/dist/export-4IZQZAPF.js.map +1 -0
  515. package/dist/extract-DZMGVQ7D.js +113 -0
  516. package/dist/extract-DZMGVQ7D.js.map +1 -0
  517. package/dist/facets-FAAOFHBF.js +114 -0
  518. package/dist/facets-FAAOFHBF.js.map +1 -0
  519. package/dist/favorites-DD2LNSTG.js +178 -0
  520. package/dist/favorites-DD2LNSTG.js.map +1 -0
  521. package/dist/feed-TUVFNX2U.js +177 -0
  522. package/dist/feed-TUVFNX2U.js.map +1 -0
  523. package/dist/feedback-NWOOZOFW.js +66 -0
  524. package/dist/feedback-NWOOZOFW.js.map +1 -0
  525. package/dist/feedback-record-CFPUKLMY.js +175 -0
  526. package/dist/feedback-record-CFPUKLMY.js.map +1 -0
  527. package/dist/fetch-LEY77E7V.js +176 -0
  528. package/dist/fetch-LEY77E7V.js.map +1 -0
  529. package/dist/fetch-O6UHNXWB.js +139 -0
  530. package/dist/fetch-O6UHNXWB.js.map +1 -0
  531. package/dist/find-4XKIBF4D.js +134 -0
  532. package/dist/find-4XKIBF4D.js.map +1 -0
  533. package/dist/fit-ODVVXV2Q.js +45 -0
  534. package/dist/fit-ODVVXV2Q.js.map +1 -0
  535. package/dist/flows-QKPC63AF.js +247 -0
  536. package/dist/flows-QKPC63AF.js.map +1 -0
  537. package/dist/follow-RCOXTZGY.js +94 -0
  538. package/dist/follow-RCOXTZGY.js.map +1 -0
  539. package/dist/follow-competitors-SQ5XBFTK.js +112 -0
  540. package/dist/follow-competitors-SQ5XBFTK.js.map +1 -0
  541. package/dist/following-VDU3BHC4.js +113 -0
  542. package/dist/following-VDU3BHC4.js.map +1 -0
  543. package/dist/fonts-WM2MJDVJ.js +34 -0
  544. package/dist/fonts-WM2MJDVJ.js.map +1 -0
  545. package/dist/forecast-2GJKBNBM.js +168 -0
  546. package/dist/forecast-2GJKBNBM.js.map +1 -0
  547. package/dist/forecast-7K3TAHDL.js +104 -0
  548. package/dist/forecast-7K3TAHDL.js.map +1 -0
  549. package/dist/funding-HTFVZLLG.js +85 -0
  550. package/dist/funding-HTFVZLLG.js.map +1 -0
  551. package/dist/funnel-CSPK5SPZ.js +394 -0
  552. package/dist/funnel-CSPK5SPZ.js.map +1 -0
  553. package/dist/ga4-2RC4EH7V.js +55 -0
  554. package/dist/ga4-2RC4EH7V.js.map +1 -0
  555. package/dist/generate-TPDOBCKQ.js +262 -0
  556. package/dist/generate-TPDOBCKQ.js.map +1 -0
  557. package/dist/get-4YZ4PI3B.js +56 -0
  558. package/dist/get-4YZ4PI3B.js.map +1 -0
  559. package/dist/get-FH2LIEYL.js +63 -0
  560. package/dist/get-FH2LIEYL.js.map +1 -0
  561. package/dist/get-GZLCDXXW.js +61 -0
  562. package/dist/get-GZLCDXXW.js.map +1 -0
  563. package/dist/get-HFU6ZJPX.js +78 -0
  564. package/dist/get-HFU6ZJPX.js.map +1 -0
  565. package/dist/get-TSPQYEKC.js +59 -0
  566. package/dist/get-TSPQYEKC.js.map +1 -0
  567. package/dist/get-TY3RXYNZ.js +63 -0
  568. package/dist/get-TY3RXYNZ.js.map +1 -0
  569. package/dist/get-VPW33XTN.js +92 -0
  570. package/dist/get-VPW33XTN.js.map +1 -0
  571. package/dist/gif-JFEYPFFI.js +94 -0
  572. package/dist/gif-JFEYPFFI.js.map +1 -0
  573. package/dist/google-R6RD4L6Z.js +136 -0
  574. package/dist/google-R6RD4L6Z.js.map +1 -0
  575. package/dist/google-VPQNRVIB.js +3190 -0
  576. package/dist/google-VPQNRVIB.js.map +1 -0
  577. package/dist/google-ads-WWM5KIRS.js +195 -0
  578. package/dist/google-ads-WWM5KIRS.js.map +1 -0
  579. package/dist/group-7AV6UL26.js +43 -0
  580. package/dist/group-7AV6UL26.js.map +1 -0
  581. package/dist/group-BVQZEZIC.js +43 -0
  582. package/dist/group-BVQZEZIC.js.map +1 -0
  583. package/dist/gsc-SQ42WAQE.js +30 -0
  584. package/dist/gsc-SQ42WAQE.js.map +1 -0
  585. package/dist/history-BNNHFURR.js +67 -0
  586. package/dist/history-BNNHFURR.js.map +1 -0
  587. package/dist/history-KBK5TP65.js +133 -0
  588. package/dist/history-KBK5TP65.js.map +1 -0
  589. package/dist/hubspot-GAAWWVLL.js +779 -0
  590. package/dist/hubspot-GAAWWVLL.js.map +1 -0
  591. package/dist/icon-OYTTSNSL.js +137 -0
  592. package/dist/icon-OYTTSNSL.js.map +1 -0
  593. package/dist/ideas-CELMD3BL.js +32 -0
  594. package/dist/ideas-CELMD3BL.js.map +1 -0
  595. package/dist/images-QHV4ECAP.js +90 -0
  596. package/dist/images-QHV4ECAP.js.map +1 -0
  597. package/dist/improve-W6GZNT2A.js +86 -0
  598. package/dist/improve-W6GZNT2A.js.map +1 -0
  599. package/dist/ingest-SH35YX6X.js +23 -0
  600. package/dist/ingest-SH35YX6X.js.map +1 -0
  601. package/dist/ingest-UWCGJZXV.js +107 -0
  602. package/dist/ingest-UWCGJZXV.js.map +1 -0
  603. package/dist/insights-IW7LGAWU.js +423 -0
  604. package/dist/insights-IW7LGAWU.js.map +1 -0
  605. package/dist/insights-QH54F56A.js +122 -0
  606. package/dist/insights-QH54F56A.js.map +1 -0
  607. package/dist/inspect-6Z6HEMBI.js +189 -0
  608. package/dist/inspect-6Z6HEMBI.js.map +1 -0
  609. package/dist/inspiration-RDQ3Y3N3.js +53 -0
  610. package/dist/inspiration-RDQ3Y3N3.js.map +1 -0
  611. package/dist/intent-5GSSCFZ2.js +95 -0
  612. package/dist/intent-5GSSCFZ2.js.map +1 -0
  613. package/dist/job-URVXJP75.js +202 -0
  614. package/dist/job-URVXJP75.js.map +1 -0
  615. package/dist/job-create-S4SECUVF.js +109 -0
  616. package/dist/job-create-S4SECUVF.js.map +1 -0
  617. package/dist/job-status-253SUCTJ.js +74 -0
  618. package/dist/job-status-253SUCTJ.js.map +1 -0
  619. package/dist/keep-GPSYDIGJ.js +78 -0
  620. package/dist/keep-GPSYDIGJ.js.map +1 -0
  621. package/dist/keyword-gap-NTFDX43B.js +130 -0
  622. package/dist/keyword-gap-NTFDX43B.js.map +1 -0
  623. package/dist/keyword-metrics-NKZRCF4L.js +197 -0
  624. package/dist/keyword-metrics-NKZRCF4L.js.map +1 -0
  625. package/dist/keywords-for-site-NQUPJNUR.js +128 -0
  626. package/dist/keywords-for-site-NQUPJNUR.js.map +1 -0
  627. package/dist/landing-AHNZSZHY.js +28 -0
  628. package/dist/landing-AHNZSZHY.js.map +1 -0
  629. package/dist/landings-NEF4PQL2.js +151 -0
  630. package/dist/landings-NEF4PQL2.js.map +1 -0
  631. package/dist/languages-3RDPPPTE.js +55 -0
  632. package/dist/languages-3RDPPPTE.js.map +1 -0
  633. package/dist/languages-CQX3YOIT.js +40 -0
  634. package/dist/languages-CQX3YOIT.js.map +1 -0
  635. package/dist/launches-GBHLJH5S.js +19 -0
  636. package/dist/launches-GBHLJH5S.js.map +1 -0
  637. package/dist/layerize-Q56C6LFG.js +190 -0
  638. package/dist/layerize-Q56C6LFG.js.map +1 -0
  639. package/dist/leads-5MUVPXA2.js +90 -0
  640. package/dist/leads-5MUVPXA2.js.map +1 -0
  641. package/dist/leads-JHUM6FYR.js +293 -0
  642. package/dist/leads-JHUM6FYR.js.map +1 -0
  643. package/dist/learn-EMV7RWTB.js +203 -0
  644. package/dist/learn-EMV7RWTB.js.map +1 -0
  645. package/dist/library-6VUFHTEK.js +109 -0
  646. package/dist/library-6VUFHTEK.js.map +1 -0
  647. package/dist/lighthouse-57U2GMPV.js +75 -0
  648. package/dist/lighthouse-57U2GMPV.js.map +1 -0
  649. package/dist/line-item-writes-GMIZYHLB.js +208 -0
  650. package/dist/line-item-writes-GMIZYHLB.js.map +1 -0
  651. package/dist/line-items-B5HAC47U.js +103 -0
  652. package/dist/line-items-B5HAC47U.js.map +1 -0
  653. package/dist/link-B6ZJFGFE.js +64 -0
  654. package/dist/link-B6ZJFGFE.js.map +1 -0
  655. package/dist/linkedin-FJ3OUYT2.js +1008 -0
  656. package/dist/linkedin-FJ3OUYT2.js.map +1 -0
  657. package/dist/list-2MBSU4ZX.js +63 -0
  658. package/dist/list-2MBSU4ZX.js.map +1 -0
  659. package/dist/list-EFUPHLG3.js +303 -0
  660. package/dist/list-EFUPHLG3.js.map +1 -0
  661. package/dist/list-G57ZO4PG.js +50 -0
  662. package/dist/list-G57ZO4PG.js.map +1 -0
  663. package/dist/list-JCSWZWDI.js +57 -0
  664. package/dist/list-JCSWZWDI.js.map +1 -0
  665. package/dist/list-QOSPRCH4.js +151 -0
  666. package/dist/list-QOSPRCH4.js.map +1 -0
  667. package/dist/list-RINCJOAC.js +76 -0
  668. package/dist/list-RINCJOAC.js.map +1 -0
  669. package/dist/list-SRNXHS6L.js +51 -0
  670. package/dist/list-SRNXHS6L.js.map +1 -0
  671. package/dist/list-YJSO4M5Q.js +65 -0
  672. package/dist/list-YJSO4M5Q.js.map +1 -0
  673. package/dist/locations-HW2Y5OJO.js +67 -0
  674. package/dist/locations-HW2Y5OJO.js.map +1 -0
  675. package/dist/locations-XOHI3VWI.js +40 -0
  676. package/dist/locations-XOHI3VWI.js.map +1 -0
  677. package/dist/log-SZDYUMM3.js +92 -0
  678. package/dist/log-SZDYUMM3.js.map +1 -0
  679. package/dist/logo-KXTGIYBI.js +18 -0
  680. package/dist/logo-KXTGIYBI.js.map +1 -0
  681. package/dist/lookup-X6O5UNJH.js +22 -0
  682. package/dist/lookup-X6O5UNJH.js.map +1 -0
  683. package/dist/make-SGCBJTRR.js +633 -0
  684. package/dist/make-SGCBJTRR.js.map +1 -0
  685. package/dist/map-ZK46VVL3.js +404 -0
  686. package/dist/map-ZK46VVL3.js.map +1 -0
  687. package/dist/mcp-NCM5TQUG.js +463 -0
  688. package/dist/mcp-NCM5TQUG.js.map +1 -0
  689. package/dist/media-MI4EE7L4.js +89 -0
  690. package/dist/media-MI4EE7L4.js.map +1 -0
  691. package/dist/media-QUTQOBA7.js +15 -0
  692. package/dist/media-QUTQOBA7.js.map +1 -0
  693. package/dist/media-sources-MS3RMQ6A.js +32 -0
  694. package/dist/media-sources-MS3RMQ6A.js.map +1 -0
  695. package/dist/members-IGHLTQKW.js +44 -0
  696. package/dist/members-IGHLTQKW.js.map +1 -0
  697. package/dist/meta-E3JOUOSS.js +69 -0
  698. package/dist/meta-E3JOUOSS.js.map +1 -0
  699. package/dist/metrics-HQ7XJAYQ.js +152 -0
  700. package/dist/metrics-HQ7XJAYQ.js.map +1 -0
  701. package/dist/models-PGX3FBHU.js +155 -0
  702. package/dist/models-PGX3FBHU.js.map +1 -0
  703. package/dist/normalize-FPJ6GSOY.js +806 -0
  704. package/dist/normalize-FPJ6GSOY.js.map +1 -0
  705. package/dist/normalize-LHD5LVFK.js +141 -0
  706. package/dist/normalize-LHD5LVFK.js.map +1 -0
  707. package/dist/options-CPHN3RMO.js +121 -0
  708. package/dist/options-CPHN3RMO.js.map +1 -0
  709. package/dist/output-GQFJ2T5B.js +24 -0
  710. package/dist/output-GQFJ2T5B.js.map +1 -0
  711. package/dist/page-VTTSBC6Y.js +105 -0
  712. package/dist/page-VTTSBC6Y.js.map +1 -0
  713. package/dist/pages-PMZVNVQM.js +66 -0
  714. package/dist/pages-PMZVNVQM.js.map +1 -0
  715. package/dist/performance-ECIJJEFV.js +24 -0
  716. package/dist/performance-ECIJJEFV.js.map +1 -0
  717. package/dist/pinterest-UDNGOWDM.js +96 -0
  718. package/dist/pinterest-UDNGOWDM.js.map +1 -0
  719. package/dist/pixels-OYZDGCH3.js +108 -0
  720. package/dist/pixels-OYZDGCH3.js.map +1 -0
  721. package/dist/pixels-XKGNTCFX.js +60 -0
  722. package/dist/pixels-XKGNTCFX.js.map +1 -0
  723. package/dist/plan-DZS3TVIJ.js +207 -0
  724. package/dist/plan-DZS3TVIJ.js.map +1 -0
  725. package/dist/preview-DR6MXOGI.js +169 -0
  726. package/dist/preview-DR6MXOGI.js.map +1 -0
  727. package/dist/profile-VOVZG44G.js +159 -0
  728. package/dist/profile-VOVZG44G.js.map +1 -0
  729. package/dist/promoted-tweet-writes-UJJI5SQL.js +180 -0
  730. package/dist/promoted-tweet-writes-UJJI5SQL.js.map +1 -0
  731. package/dist/promoted-tweets-O5RCETPX.js +119 -0
  732. package/dist/promoted-tweets-O5RCETPX.js.map +1 -0
  733. package/dist/properties-MKVF7MUK.js +101 -0
  734. package/dist/properties-MKVF7MUK.js.map +1 -0
  735. package/dist/publish-RRYU3NNX.js +322 -0
  736. package/dist/publish-RRYU3NNX.js.map +1 -0
  737. package/dist/query-CNWQ6STR.js +61 -0
  738. package/dist/query-CNWQ6STR.js.map +1 -0
  739. package/dist/query-DBSBZ73C.js +247 -0
  740. package/dist/query-DBSBZ73C.js.map +1 -0
  741. package/dist/query-QK4U4TEL.js +236 -0
  742. package/dist/query-QK4U4TEL.js.map +1 -0
  743. package/dist/questionnaire-OVJWNUVV.js +93 -0
  744. package/dist/questionnaire-OVJWNUVV.js.map +1 -0
  745. package/dist/read-L2QIVJTL.js +141 -0
  746. package/dist/read-L2QIVJTL.js.map +1 -0
  747. package/dist/reddit-K6CKJZRF.js +26 -0
  748. package/dist/reddit-K6CKJZRF.js.map +1 -0
  749. package/dist/refresh-IF4P57JJ.js +94 -0
  750. package/dist/refresh-IF4P57JJ.js.map +1 -0
  751. package/dist/release-H4EL3J6R.js +60 -0
  752. package/dist/release-H4EL3J6R.js.map +1 -0
  753. package/dist/relevant-pages-CRI2NLWG.js +99 -0
  754. package/dist/relevant-pages-CRI2NLWG.js.map +1 -0
  755. package/dist/remove-DKSHQRNS.js +50 -0
  756. package/dist/remove-DKSHQRNS.js.map +1 -0
  757. package/dist/remove-JKSCGKQG.js +48 -0
  758. package/dist/remove-JKSCGKQG.js.map +1 -0
  759. package/dist/reopen-B26V2GEJ.js +63 -0
  760. package/dist/reopen-B26V2GEJ.js.map +1 -0
  761. package/dist/rerun-6WKE4MPY.js +84 -0
  762. package/dist/rerun-6WKE4MPY.js.map +1 -0
  763. package/dist/research-O3IVF3MM.js +62 -0
  764. package/dist/research-O3IVF3MM.js.map +1 -0
  765. package/dist/research-SC7S6IPV.js +262 -0
  766. package/dist/research-SC7S6IPV.js.map +1 -0
  767. package/dist/reset-7HMOB2KE.js +54 -0
  768. package/dist/reset-7HMOB2KE.js.map +1 -0
  769. package/dist/reset-THPEXZDK.js +54 -0
  770. package/dist/reset-THPEXZDK.js.map +1 -0
  771. package/dist/resolve-HX5R52A3.js +121 -0
  772. package/dist/resolve-HX5R52A3.js.map +1 -0
  773. package/dist/retry-4ENRUJOJ.js +62 -0
  774. package/dist/retry-4ENRUJOJ.js.map +1 -0
  775. package/dist/retry-ELIMI7U5.js +60 -0
  776. package/dist/retry-ELIMI7U5.js.map +1 -0
  777. package/dist/retry-failed-2OYMCB55.js +45 -0
  778. package/dist/retry-failed-2OYMCB55.js.map +1 -0
  779. package/dist/run-CY4BAIQI.js +65 -0
  780. package/dist/run-CY4BAIQI.js.map +1 -0
  781. package/dist/run-GXPPPDGI.js +59 -0
  782. package/dist/run-GXPPPDGI.js.map +1 -0
  783. package/dist/scaffold-ad-X6VPBVTB.js +1548 -0
  784. package/dist/scaffold-ad-X6VPBVTB.js.map +1 -0
  785. package/dist/scaffold-static-ad-LKOOZSDP.js +971 -0
  786. package/dist/scaffold-static-ad-LKOOZSDP.js.map +1 -0
  787. package/dist/scaffold-video-NAOIFIM4.js +872 -0
  788. package/dist/scaffold-video-NAOIFIM4.js.map +1 -0
  789. package/dist/schedule-TLYT5UXM.js +66 -0
  790. package/dist/schedule-TLYT5UXM.js.map +1 -0
  791. package/dist/schedule-V654LLZ2.js +61 -0
  792. package/dist/schedule-V654LLZ2.js.map +1 -0
  793. package/dist/scheduled-agents-MJNUZYEK.js +49 -0
  794. package/dist/scheduled-agents-MJNUZYEK.js.map +1 -0
  795. package/dist/schema-DN4WKWUM.js +132 -0
  796. package/dist/schema-DN4WKWUM.js.map +1 -0
  797. package/dist/schema-MZTVCNP4.js +63 -0
  798. package/dist/schema-MZTVCNP4.js.map +1 -0
  799. package/dist/scrape-T3DA7ER7.js +2241 -0
  800. package/dist/scrape-T3DA7ER7.js.map +1 -0
  801. package/dist/screenshot-EIGC6SZB.js +102 -0
  802. package/dist/screenshot-EIGC6SZB.js.map +1 -0
  803. package/dist/search-2SVUDZIX.js +224 -0
  804. package/dist/search-2SVUDZIX.js.map +1 -0
  805. package/dist/search-34NFJ5F6.js +26 -0
  806. package/dist/search-34NFJ5F6.js.map +1 -0
  807. package/dist/search-BWE3OPOY.js +91 -0
  808. package/dist/search-BWE3OPOY.js.map +1 -0
  809. package/dist/search-EYYAOZND.js +92 -0
  810. package/dist/search-EYYAOZND.js.map +1 -0
  811. package/dist/search-EZZMYU4Y.js +174 -0
  812. package/dist/search-EZZMYU4Y.js.map +1 -0
  813. package/dist/search-copy-VKQ2OOBM.js +168 -0
  814. package/dist/search-copy-VKQ2OOBM.js.map +1 -0
  815. package/dist/seeds-HQYSVFIX.js +101 -0
  816. package/dist/seeds-HQYSVFIX.js.map +1 -0
  817. package/dist/select-3SIBANY6.js +94 -0
  818. package/dist/select-3SIBANY6.js.map +1 -0
  819. package/dist/sends-I7VQFE4S.js +309 -0
  820. package/dist/sends-I7VQFE4S.js.map +1 -0
  821. package/dist/sequences-JHSEJJGN.js +146 -0
  822. package/dist/sequences-JHSEJJGN.js.map +1 -0
  823. package/dist/set-prompt-RAG7RJOD.js +185 -0
  824. package/dist/set-prompt-RAG7RJOD.js.map +1 -0
  825. package/dist/setup-links-TNRBFS5Z.js +141 -0
  826. package/dist/setup-links-TNRBFS5Z.js.map +1 -0
  827. package/dist/{shared-6762QE6R.js → shared-AT3FXPAG.js} +8 -6
  828. package/dist/shared-AT3FXPAG.js.map +1 -0
  829. package/dist/shopify-LUETQ5NT.js +3819 -0
  830. package/dist/shopify-LUETQ5NT.js.map +1 -0
  831. package/dist/site-SDL6LF6D.js +177 -0
  832. package/dist/site-SDL6LF6D.js.map +1 -0
  833. package/dist/sitemaps-FG37N5EB.js +87 -0
  834. package/dist/sitemaps-FG37N5EB.js.map +1 -0
  835. package/dist/sites-FIXK4Y3O.js +101 -0
  836. package/dist/sites-FIXK4Y3O.js.map +1 -0
  837. package/dist/skills-OKVCVQVD.js +47 -0
  838. package/dist/skills-OKVCVQVD.js.map +1 -0
  839. package/dist/sources-ISAUZFRN.js +30 -0
  840. package/dist/sources-ISAUZFRN.js.map +1 -0
  841. package/dist/sources-LQTJXAJG.js +421 -0
  842. package/dist/sources-LQTJXAJG.js.map +1 -0
  843. package/dist/stale-2L7NTLC6.js +63 -0
  844. package/dist/stale-2L7NTLC6.js.map +1 -0
  845. package/dist/stats-ZWZ7BAHV.js +34 -0
  846. package/dist/stats-ZWZ7BAHV.js.map +1 -0
  847. package/dist/status-4QBSIHO7.js +62 -0
  848. package/dist/status-4QBSIHO7.js.map +1 -0
  849. package/dist/sticker-FLRZM3BI.js +94 -0
  850. package/dist/sticker-FLRZM3BI.js.map +1 -0
  851. package/dist/stock-2CSMWRWV.js +179 -0
  852. package/dist/stock-2CSMWRWV.js.map +1 -0
  853. package/dist/studio-TTTR6N7D.js +49 -0
  854. package/dist/studio-TTTR6N7D.js.map +1 -0
  855. package/dist/sync-DH7FTPGG.js +54 -0
  856. package/dist/sync-DH7FTPGG.js.map +1 -0
  857. package/dist/sync-G5CS2RYV.js +54 -0
  858. package/dist/sync-G5CS2RYV.js.map +1 -0
  859. package/dist/sync-UADA6M33.js +265 -0
  860. package/dist/sync-UADA6M33.js.map +1 -0
  861. package/dist/sync-definition-ATMMOJ37.js +52 -0
  862. package/dist/sync-definition-ATMMOJ37.js.map +1 -0
  863. package/dist/tag-manager-NK3ZHSJB.js +43 -0
  864. package/dist/tag-manager-NK3ZHSJB.js.map +1 -0
  865. package/dist/tags-4RBZWDHS.js +20 -0
  866. package/dist/tags-4RBZWDHS.js.map +1 -0
  867. package/dist/tags-M7ATU2R7.js +26 -0
  868. package/dist/tags-M7ATU2R7.js.map +1 -0
  869. package/dist/tags-MXJKIBL4.js +20 -0
  870. package/dist/tags-MXJKIBL4.js.map +1 -0
  871. package/dist/tags-YG5EGPBW.js +20 -0
  872. package/dist/tags-YG5EGPBW.js.map +1 -0
  873. package/dist/tags-ZP4O3I2F.js +224 -0
  874. package/dist/tags-ZP4O3I2F.js.map +1 -0
  875. package/dist/targeting-constants-ZGBX3VWU.js +118 -0
  876. package/dist/targeting-constants-ZGBX3VWU.js.map +1 -0
  877. package/dist/targeting-criteria-BTB2RVI4.js +113 -0
  878. package/dist/targeting-criteria-BTB2RVI4.js.map +1 -0
  879. package/dist/targets-DEGJD2N6.js +102 -0
  880. package/dist/targets-DEGJD2N6.js.map +1 -0
  881. package/dist/templates-FZDWQSTV.js +178 -0
  882. package/dist/templates-FZDWQSTV.js.map +1 -0
  883. package/dist/testimonials-TI5EDABS.js +32 -0
  884. package/dist/testimonials-TI5EDABS.js.map +1 -0
  885. package/dist/themes-3RV3HNNE.js +94 -0
  886. package/dist/themes-3RV3HNNE.js.map +1 -0
  887. package/dist/top-companies-OKH7UNKX.js +108 -0
  888. package/dist/top-companies-OKH7UNKX.js.map +1 -0
  889. package/dist/translate-IUQBBVE6.js +598 -0
  890. package/dist/translate-IUQBBVE6.js.map +1 -0
  891. package/dist/triggers-2NWMXQ5P.js +141 -0
  892. package/dist/triggers-2NWMXQ5P.js.map +1 -0
  893. package/dist/tweets-X64YDEAA.js +123 -0
  894. package/dist/tweets-X64YDEAA.js.map +1 -0
  895. package/dist/unfollow-PIONCSBL.js +46 -0
  896. package/dist/unfollow-PIONCSBL.js.map +1 -0
  897. package/dist/unlink-UAPLQMK6.js +67 -0
  898. package/dist/unlink-UAPLQMK6.js.map +1 -0
  899. package/dist/unstage-BJJ5M7MK.js +95 -0
  900. package/dist/unstage-BJJ5M7MK.js.map +1 -0
  901. package/dist/unstage-X2BYGH2S.js +84 -0
  902. package/dist/unstage-X2BYGH2S.js.map +1 -0
  903. package/dist/update-7YK3VSOK.js +142 -0
  904. package/dist/update-7YK3VSOK.js.map +1 -0
  905. package/dist/update-BHG7BTK3.js +155 -0
  906. package/dist/update-BHG7BTK3.js.map +1 -0
  907. package/dist/update-CDJXKEVA.js +63 -0
  908. package/dist/update-CDJXKEVA.js.map +1 -0
  909. package/dist/update-RZXDAMAG.js +98 -0
  910. package/dist/update-RZXDAMAG.js.map +1 -0
  911. package/dist/upload-DSZEXNHH.js +126 -0
  912. package/dist/upload-DSZEXNHH.js.map +1 -0
  913. package/dist/upload-IWFYKD7A.js +150 -0
  914. package/dist/upload-IWFYKD7A.js.map +1 -0
  915. package/dist/upscale-EYCEYRWE.js +109 -0
  916. package/dist/upscale-EYCEYRWE.js.map +1 -0
  917. package/dist/url-options-RA3XISLN.js +130 -0
  918. package/dist/url-options-RA3XISLN.js.map +1 -0
  919. package/dist/url-params-OGZXF6MT.js +98 -0
  920. package/dist/url-params-OGZXF6MT.js.map +1 -0
  921. package/dist/use-E2TA2K6J.js +95 -0
  922. package/dist/use-E2TA2K6J.js.map +1 -0
  923. package/dist/validate-C6HWDI6K.js +88 -0
  924. package/dist/validate-C6HWDI6K.js.map +1 -0
  925. package/dist/variant-ETHB6XUM.js +338 -0
  926. package/dist/variant-ETHB6XUM.js.map +1 -0
  927. package/dist/videos-A2X5AARB.js +39 -0
  928. package/dist/videos-A2X5AARB.js.map +1 -0
  929. package/dist/view-BVEZRRV2.js +121 -0
  930. package/dist/view-BVEZRRV2.js.map +1 -0
  931. package/dist/viewer-check-W4ICSBHO.js +68 -0
  932. package/dist/viewer-check-W4ICSBHO.js.map +1 -0
  933. package/dist/web-GJSFDBBE.js +140 -0
  934. package/dist/web-GJSFDBBE.js.map +1 -0
  935. package/dist/winners-MJDKCGEZ.js +113 -0
  936. package/dist/winners-MJDKCGEZ.js.map +1 -0
  937. package/dist/winning-ads-NNU5MM75.js +84 -0
  938. package/dist/winning-ads-NNU5MM75.js.map +1 -0
  939. package/dist/write-commands-5I5KY6ZS.js +1015 -0
  940. package/dist/write-commands-5I5KY6ZS.js.map +1 -0
  941. package/dist/write-commands-DA6FIFAO.js +737 -0
  942. package/dist/write-commands-DA6FIFAO.js.map +1 -0
  943. package/dist/write-commands-KTPISQRE.js +206 -0
  944. package/dist/write-commands-KTPISQRE.js.map +1 -0
  945. package/dist/write-commands-QBGIWU27.js +713 -0
  946. package/dist/write-commands-QBGIWU27.js.map +1 -0
  947. package/dist/x-VCL5VRXC.js +47 -0
  948. package/dist/x-VCL5VRXC.js.map +1 -0
  949. package/package.json +9 -2
  950. package/dist/chunk-HJEMOSPH.js +0 -1292
  951. package/dist/chunk-HJEMOSPH.js.map +0 -1
  952. package/dist/chunk-JHKW6IDX.js +0 -9989
  953. package/dist/chunk-JHKW6IDX.js.map +0 -1
  954. package/dist/chunk-MF7YA62W.js.map +0 -1
  955. package/dist/chunk-VZEDAFAR.js.map +0 -1
  956. package/dist/chunk-XHC4LMK4.js.map +0 -1
  957. package/dist/client-GR6YL3YX.js +0 -17
  958. package/dist/output-NMQXZF3Z.js +0 -18
  959. /package/dist/{chunk-WLDM2TRF.js.map → chunk-2UFRHW3T.js.map} +0 -0
  960. /package/dist/{client-GR6YL3YX.js.map → chunk-YQSBHWOI.js.map} +0 -0
  961. /package/dist/{env-4P5HOGNA.js.map → client-EURRWXPW.js.map} +0 -0
  962. /package/dist/{output-NMQXZF3Z.js.map → connect-6DQFYKGN.js.map} +0 -0
  963. /package/dist/{shared-6762QE6R.js.map → customers-FOPXEGCB.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/avatars/wait.ts"],"sourcesContent":["import type { AvatarStatus } from \"@baker/api\";\n\n/**\n * Waiting for an avatar's identity sheet, inside the command rather than in the agent.\n *\n * The sheet is a ~30s render, and the agent is told never to sleep on it — right, because\n * a turn spent standing still is a turn the user watches do nothing. But when the only\n * work left DEPENDS on that avatar, \"do the next piece of work\" names work that does not\n * exist, and the observed turn simply ended: the user had to come back and say \"ya está\n * lista\" for the clip to be made.\n *\n * A command that blocks internally is the sanctioned shape for this — it has its own\n * deadline and returns the moment the thing is ready, which a polling loop written by the\n * agent does neither of.\n */\n\n/** How long to keep asking before giving up. Twice the sheet's usual render. */\nexport const WAIT_TIMEOUT_MS = 90_000;\n/** Gap between reads. Short enough to return promptly, long enough not to hammer. */\nexport const WAIT_INTERVAL_MS = 3_000;\n\nexport type WaitDecision =\n | { done: true; reason: \"ready\" | \"settled\" | \"needs-face\" }\n | { done: false; reason: \"building\" | \"expired\" };\n\n/** Just enough of an avatar to know whether waiting on it can ever end. */\nexport interface WaitSubject {\n status: AvatarStatus;\n /**\n * The build is parked on a face the user has not picked yet.\n *\n * `generating` normally means a render is running. This is the one case where it\n * does not: the casting portraits are in front of the user and nothing starts until\n * they answer.\n */\n needsFace?: boolean;\n}\n\n/**\n * Whether to stop waiting on this avatar, given how long we have waited.\n *\n * `error` and `archived` stop it too: both are settled states, and waiting out the\n * deadline for one of them would burn 90 seconds to learn what the first read said.\n *\n * So does an avatar waiting on its face. Nothing is rendering, so the only thing that\n * can happen here is the deadline expiring — and it is the user's own turn to act, not\n * the agent's. Observed: an agent blocked the full 90 seconds twice, concluded the\n * avatar was broken, and deleted the one the user was at that moment picking a face for.\n */\nexport function shouldKeepWaiting(avatar: WaitSubject, elapsedMs: number): WaitDecision {\n if (avatar.status === \"ready\") return { done: true, reason: \"ready\" };\n if (avatar.status === \"error\" || avatar.status === \"archived\") return { done: true, reason: \"settled\" };\n if (avatar.needsFace) return { done: true, reason: \"needs-face\" };\n if (elapsedMs >= WAIT_TIMEOUT_MS) return { done: false, reason: \"expired\" };\n return { done: false, reason: \"building\" };\n}\n\n/**\n * Re-reads the avatar until its sheet settles, or the deadline passes.\n *\n * Returns whatever the last read said either way — an expired wait is not a failure, it\n * is a slow render, and the caller's own hints already say what a still-building avatar\n * can and cannot be used for.\n */\nexport async function waitForSheet<T extends WaitSubject>(\n first: T,\n read: () => Promise<T>,\n sleep: (ms: number) => Promise<void> = (ms) => new Promise((resolve) => setTimeout(resolve, ms)),\n): Promise<T> {\n const startedAt = Date.now();\n let latest = first;\n while (!shouldKeepWaiting(latest, Date.now() - startedAt).done) {\n if (shouldKeepWaiting(latest, Date.now() - startedAt).reason === \"expired\") return latest;\n await sleep(WAIT_INTERVAL_MS);\n latest = await read();\n }\n return latest;\n}\n"],"mappings":";AAiBO,IAAM,kBAAkB;AAExB,IAAM,mBAAmB;AA8BzB,SAAS,kBAAkB,QAAqB,WAAiC;AACtF,MAAI,OAAO,WAAW,QAAS,QAAO,EAAE,MAAM,MAAM,QAAQ,QAAQ;AACpE,MAAI,OAAO,WAAW,WAAW,OAAO,WAAW,WAAY,QAAO,EAAE,MAAM,MAAM,QAAQ,UAAU;AACtG,MAAI,OAAO,UAAW,QAAO,EAAE,MAAM,MAAM,QAAQ,aAAa;AAChE,MAAI,aAAa,gBAAiB,QAAO,EAAE,MAAM,OAAO,QAAQ,UAAU;AAC1E,SAAO,EAAE,MAAM,OAAO,QAAQ,WAAW;AAC3C;AASA,eAAsB,aACpB,OACA,MACA,QAAuC,CAAC,OAAO,IAAI,QAAQ,CAAC,YAAY,WAAW,SAAS,EAAE,CAAC,GACnF;AACZ,QAAM,YAAY,KAAK,IAAI;AAC3B,MAAI,SAAS;AACb,SAAO,CAAC,kBAAkB,QAAQ,KAAK,IAAI,IAAI,SAAS,EAAE,MAAM;AAC9D,QAAI,kBAAkB,QAAQ,KAAK,IAAI,IAAI,SAAS,EAAE,WAAW,UAAW,QAAO;AACnF,UAAM,MAAM,gBAAgB;AAC5B,aAAS,MAAM,KAAK;AAAA,EACtB;AACA,SAAO;AACT;","names":[]}
@@ -0,0 +1,84 @@
1
+ import {
2
+ ApiError,
3
+ apiGet,
4
+ apiPost
5
+ } from "./chunk-CUL3VB4L.js";
6
+
7
+ // src/commands/videos/api.ts
8
+ import { readFile } from "fs/promises";
9
+ import { basename, extname } from "path";
10
+ var videoProcessingTimeoutMs = 18e4;
11
+ var videoReadyPollIntervalMs = 3e3;
12
+ var mimeMap = {
13
+ ".mp4": "video/mp4",
14
+ ".mov": "video/quicktime",
15
+ ".webm": "video/webm",
16
+ ".avi": "video/x-msvideo",
17
+ ".mkv": "video/x-matroska"
18
+ };
19
+ var defaultVideoApiDeps = {
20
+ readFile,
21
+ post: apiPost,
22
+ get: apiGet,
23
+ sleep: (ms) => new Promise((resolve) => setTimeout(resolve, ms)),
24
+ putFile: async (url, contentType, body) => {
25
+ const response = await fetch(url, { method: "PUT", headers: { "Content-Type": contentType }, body });
26
+ if (!response.ok) {
27
+ throw new ApiError("INTERNAL_ERROR", `Mux upload failed: HTTP ${response.status} ${response.statusText}`);
28
+ }
29
+ }
30
+ };
31
+ function isVideoFile(filePath) {
32
+ return mimeMap[extname(filePath).toLowerCase()] !== void 0;
33
+ }
34
+ function detectVideoContentType(filePath, opts = {}) {
35
+ const ext = extname(filePath).toLowerCase();
36
+ const contentType = mimeMap[ext];
37
+ if (!contentType || opts.allowedContentTypes && !opts.allowedContentTypes.includes(contentType)) {
38
+ throw new ApiError(
39
+ "VALIDATION_ERROR",
40
+ opts.unsupportedMessage ?? `Cannot detect content type for extension "${ext}". Use --content-type.`
41
+ );
42
+ }
43
+ return contentType;
44
+ }
45
+ async function uploadLocalVideo(args, deps = defaultVideoApiDeps) {
46
+ const { uploadUrl, videoId } = await deps.post("/api/videos/upload", {
47
+ originalFilename: basename(args.file),
48
+ descriptionContext: args.descriptionContext
49
+ });
50
+ await deps.putFile(uploadUrl, args.contentType, await deps.readFile(args.file));
51
+ return { videoId };
52
+ }
53
+ var PLAYABLE_STATUSES = /* @__PURE__ */ new Set(["uploaded", "processing", "ready"]);
54
+ async function waitForPlayableVideo(deps, videoId, opts = {}) {
55
+ const timeoutMs = opts.timeoutMs ?? videoProcessingTimeoutMs;
56
+ const pollIntervalMs = opts.pollIntervalMs ?? videoReadyPollIntervalMs;
57
+ const deadline = Date.now() + timeoutMs;
58
+ let lastStatus = "unknown";
59
+ while (Date.now() <= deadline) {
60
+ const video = await deps.get("/api/videos/get", { id: videoId });
61
+ lastStatus = video.status;
62
+ if (video.muxPlaybackId && PLAYABLE_STATUSES.has(video.status)) {
63
+ return video;
64
+ }
65
+ if (video.status === "error") {
66
+ throw new ApiError(
67
+ "INTERNAL_ERROR",
68
+ "The video library could not process this file. Export it again as an MP4 (H.264) and retry."
69
+ );
70
+ }
71
+ await deps.sleep(pollIntervalMs);
72
+ }
73
+ throw new ApiError("TIMEOUT", `Video was not playable before timeout; last status: ${lastStatus}`);
74
+ }
75
+
76
+ export {
77
+ videoProcessingTimeoutMs,
78
+ defaultVideoApiDeps,
79
+ isVideoFile,
80
+ detectVideoContentType,
81
+ uploadLocalVideo,
82
+ waitForPlayableVideo
83
+ };
84
+ //# sourceMappingURL=chunk-XIY7P54H.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/videos/api.ts"],"sourcesContent":["import type { Buffer } from \"node:buffer\";\nimport { readFile } from \"node:fs/promises\";\nimport { basename, extname } from \"node:path\";\nimport type { VideosGetResponse, VideosUploadResponse } from \"@baker/api\";\nimport { ApiError, apiGet, apiPost } from \"../../client.ts\";\n\n/** Mux usually has a short render playable within a minute; this bounds the wait. */\nexport const videoProcessingTimeoutMs = 180_000;\nconst videoReadyPollIntervalMs = 3_000;\n\nconst mimeMap: Record<string, string> = {\n \".mp4\": \"video/mp4\",\n \".mov\": \"video/quicktime\",\n \".webm\": \"video/webm\",\n \".avi\": \"video/x-msvideo\",\n \".mkv\": \"video/x-matroska\",\n};\n\nexport type VideoApiDeps = {\n readFile: (path: string) => Promise<Buffer<ArrayBuffer>>;\n post: typeof apiPost;\n get: typeof apiGet;\n sleep: (ms: number) => Promise<void>;\n /** PUT the bytes to the Mux direct-upload URL. */\n putFile: (url: string, contentType: string, body: Buffer<ArrayBuffer>) => Promise<void>;\n};\n\nexport const defaultVideoApiDeps: VideoApiDeps = {\n readFile,\n post: apiPost,\n get: apiGet,\n sleep: (ms) => new Promise((resolve) => setTimeout(resolve, ms)),\n putFile: async (url, contentType, body) => {\n const response = await fetch(url, { method: \"PUT\", headers: { \"Content-Type\": contentType }, body });\n if (!response.ok) {\n throw new ApiError(\"INTERNAL_ERROR\", `Mux upload failed: HTTP ${response.status} ${response.statusText}`);\n }\n },\n};\n\nexport function isVideoFile(filePath: string): boolean {\n return mimeMap[extname(filePath).toLowerCase()] !== undefined;\n}\n\nexport function detectVideoContentType(\n filePath: string,\n opts: { allowedContentTypes?: readonly string[]; unsupportedMessage?: string } = {},\n): string {\n const ext = extname(filePath).toLowerCase();\n const contentType = mimeMap[ext];\n if (!contentType || (opts.allowedContentTypes && !opts.allowedContentTypes.includes(contentType))) {\n throw new ApiError(\n \"VALIDATION_ERROR\",\n opts.unsupportedMessage ?? `Cannot detect content type for extension \"${ext}\". Use --content-type.`,\n );\n }\n return contentType;\n}\n\n/**\n * Add a local video file to the company's video library: a Mux direct-upload\n * URL from Baker, then the bytes straight to Mux. The filename travels along,\n * since the bytes never pass through Baker and it is often the only statement\n * of intent there is.\n */\nexport async function uploadLocalVideo(\n args: { file: string; contentType: string; descriptionContext?: string },\n deps: VideoApiDeps = defaultVideoApiDeps,\n): Promise<{ videoId: string }> {\n const { uploadUrl, videoId } = await deps.post<VideosUploadResponse>(\"/api/videos/upload\", {\n originalFilename: basename(args.file),\n descriptionContext: args.descriptionContext,\n });\n await deps.putFile(uploadUrl, args.contentType, await deps.readFile(args.file));\n return { videoId };\n}\n\nconst PLAYABLE_STATUSES: ReadonlySet<string> = new Set([\"uploaded\", \"processing\", \"ready\"]);\n\n/**\n * Wait until Baker can play the video: Mux has produced its playback id. Its\n * description (transcript, analysis) keeps running afterwards, and nothing\n * that saves or ships the video needs to wait for that.\n */\nexport async function waitForPlayableVideo(\n deps: VideoApiDeps,\n videoId: string,\n opts: { timeoutMs?: number; pollIntervalMs?: number } = {},\n): Promise<VideosGetResponse> {\n const timeoutMs = opts.timeoutMs ?? videoProcessingTimeoutMs;\n const pollIntervalMs = opts.pollIntervalMs ?? videoReadyPollIntervalMs;\n const deadline = Date.now() + timeoutMs;\n let lastStatus = \"unknown\";\n while (Date.now() <= deadline) {\n const video = await deps.get<VideosGetResponse>(\"/api/videos/get\", { id: videoId });\n lastStatus = video.status;\n if (video.muxPlaybackId && PLAYABLE_STATUSES.has(video.status)) {\n return video;\n }\n if (video.status === \"error\") {\n throw new ApiError(\n \"INTERNAL_ERROR\",\n \"The video library could not process this file. Export it again as an MP4 (H.264) and retry.\",\n );\n }\n await deps.sleep(pollIntervalMs);\n }\n throw new ApiError(\"TIMEOUT\", `Video was not playable before timeout; last status: ${lastStatus}`);\n}\n"],"mappings":";;;;;;;AACA,SAAS,gBAAgB;AACzB,SAAS,UAAU,eAAe;AAK3B,IAAM,2BAA2B;AACxC,IAAM,2BAA2B;AAEjC,IAAM,UAAkC;AAAA,EACtC,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,QAAQ;AACV;AAWO,IAAM,sBAAoC;AAAA,EAC/C;AAAA,EACA,MAAM;AAAA,EACN,KAAK;AAAA,EACL,OAAO,CAAC,OAAO,IAAI,QAAQ,CAAC,YAAY,WAAW,SAAS,EAAE,CAAC;AAAA,EAC/D,SAAS,OAAO,KAAK,aAAa,SAAS;AACzC,UAAM,WAAW,MAAM,MAAM,KAAK,EAAE,QAAQ,OAAO,SAAS,EAAE,gBAAgB,YAAY,GAAG,KAAK,CAAC;AACnG,QAAI,CAAC,SAAS,IAAI;AAChB,YAAM,IAAI,SAAS,kBAAkB,2BAA2B,SAAS,MAAM,IAAI,SAAS,UAAU,EAAE;AAAA,IAC1G;AAAA,EACF;AACF;AAEO,SAAS,YAAY,UAA2B;AACrD,SAAO,QAAQ,QAAQ,QAAQ,EAAE,YAAY,CAAC,MAAM;AACtD;AAEO,SAAS,uBACd,UACA,OAAiF,CAAC,GAC1E;AACR,QAAM,MAAM,QAAQ,QAAQ,EAAE,YAAY;AAC1C,QAAM,cAAc,QAAQ,GAAG;AAC/B,MAAI,CAAC,eAAgB,KAAK,uBAAuB,CAAC,KAAK,oBAAoB,SAAS,WAAW,GAAI;AACjG,UAAM,IAAI;AAAA,MACR;AAAA,MACA,KAAK,sBAAsB,6CAA6C,GAAG;AAAA,IAC7E;AAAA,EACF;AACA,SAAO;AACT;AAQA,eAAsB,iBACpB,MACA,OAAqB,qBACS;AAC9B,QAAM,EAAE,WAAW,QAAQ,IAAI,MAAM,KAAK,KAA2B,sBAAsB;AAAA,IACzF,kBAAkB,SAAS,KAAK,IAAI;AAAA,IACpC,oBAAoB,KAAK;AAAA,EAC3B,CAAC;AACD,QAAM,KAAK,QAAQ,WAAW,KAAK,aAAa,MAAM,KAAK,SAAS,KAAK,IAAI,CAAC;AAC9E,SAAO,EAAE,QAAQ;AACnB;AAEA,IAAM,oBAAyC,oBAAI,IAAI,CAAC,YAAY,cAAc,OAAO,CAAC;AAO1F,eAAsB,qBACpB,MACA,SACA,OAAwD,CAAC,GAC7B;AAC5B,QAAM,YAAY,KAAK,aAAa;AACpC,QAAM,iBAAiB,KAAK,kBAAkB;AAC9C,QAAM,WAAW,KAAK,IAAI,IAAI;AAC9B,MAAI,aAAa;AACjB,SAAO,KAAK,IAAI,KAAK,UAAU;AAC7B,UAAM,QAAQ,MAAM,KAAK,IAAuB,mBAAmB,EAAE,IAAI,QAAQ,CAAC;AAClF,iBAAa,MAAM;AACnB,QAAI,MAAM,iBAAiB,kBAAkB,IAAI,MAAM,MAAM,GAAG;AAC9D,aAAO;AAAA,IACT;AACA,QAAI,MAAM,WAAW,SAAS;AAC5B,YAAM,IAAI;AAAA,QACR;AAAA,QACA;AAAA,MACF;AAAA,IACF;AACA,UAAM,KAAK,MAAM,cAAc;AAAA,EACjC;AACA,QAAM,IAAI,SAAS,WAAW,uDAAuD,UAAU,EAAE;AACnG;","names":[]}
@@ -0,0 +1,103 @@
1
+ import {
2
+ SITE_COLLECTION_MODES,
3
+ SITE_CONSENT_MODES,
4
+ SITE_HOME_MODES
5
+ } from "./chunk-D46NOXRY.js";
6
+ import {
7
+ ApiError
8
+ } from "./chunk-CUL3VB4L.js";
9
+ import {
10
+ writeJson
11
+ } from "./chunk-MYTDK3AL.js";
12
+
13
+ // src/commands/site/setArgs.ts
14
+ var SiteArgsError = class extends Error {
15
+ };
16
+ function oneOf(flag, value, allowed) {
17
+ if (!allowed.includes(value)) {
18
+ throw new SiteArgsError(`--${flag} must be one of: ${allowed.join(", ")}`);
19
+ }
20
+ return value;
21
+ }
22
+ function onOff(flag, value) {
23
+ if (value === "on" || value === "true") return true;
24
+ if (value === "off" || value === "false") return false;
25
+ throw new SiteArgsError(`--${flag} must be on or off`);
26
+ }
27
+ function parseProfile(raw, readFile) {
28
+ const text = raw.startsWith("@") ? readFile(raw.slice(1)) : raw;
29
+ let parsed;
30
+ try {
31
+ parsed = JSON.parse(text);
32
+ } catch {
33
+ throw new SiteArgsError("--export-profile must be JSON, or @path to a JSON file");
34
+ }
35
+ if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed)) {
36
+ throw new SiteArgsError("--export-profile must be a JSON object");
37
+ }
38
+ return parsed;
39
+ }
40
+ function parseSetArgs(args, readFile) {
41
+ const inputs = [];
42
+ if (args.consent !== void 0) {
43
+ inputs.push({ setting: "consent", mode: oneOf("consent", args.consent, SITE_CONSENT_MODES) });
44
+ }
45
+ if (args.collection !== void 0) {
46
+ const mode = oneOf("collection", args.collection, SITE_COLLECTION_MODES);
47
+ inputs.push({
48
+ setting: "analyticsCollection",
49
+ mode,
50
+ ...args.payloads === void 0 ? {} : { payloads: onOff("payloads", args.payloads) }
51
+ });
52
+ } else if (args.payloads !== void 0) {
53
+ throw new SiteArgsError("--payloads goes with --collection, e.g. --collection full --payloads off");
54
+ }
55
+ if (args.indexing !== void 0) {
56
+ inputs.push({ setting: "indexing", enabled: onOff("indexing", args.indexing) });
57
+ }
58
+ if (args.home !== void 0) {
59
+ const slug = args.home.trim().replace(/^\/+|\/+$/g, "");
60
+ inputs.push(
61
+ slug === "none" || slug === "" ? { setting: "homePage", override: null } : {
62
+ setting: "homePage",
63
+ override: { mode: oneOf("home-mode", args["home-mode"] ?? "rewrite", SITE_HOME_MODES), slug }
64
+ }
65
+ );
66
+ } else if (args["home-mode"] !== void 0) {
67
+ throw new SiteArgsError("--home-mode goes with --home <landing slug>");
68
+ }
69
+ if (args.timezone !== void 0) {
70
+ inputs.push({ setting: "timezone", timezone: args.timezone });
71
+ }
72
+ if (args["export-profile"] !== void 0) {
73
+ inputs.push({ setting: "exportProfile", profile: parseProfile(args["export-profile"], readFile) });
74
+ }
75
+ if (inputs.length === 0) {
76
+ throw new SiteArgsError(
77
+ "Nothing to stage. Pass at least one of --consent, --collection, --indexing, --home, --timezone, --export-profile."
78
+ );
79
+ }
80
+ return inputs;
81
+ }
82
+
83
+ // src/commands/site/shared.ts
84
+ function failSite(err) {
85
+ if (err instanceof SiteArgsError) {
86
+ writeJson({ ok: false, error: { code: "VALIDATION_ERROR", message: err.message } });
87
+ } else if (err instanceof ApiError) {
88
+ writeJson({ ok: false, error: { code: err.code, message: err.message } });
89
+ } else {
90
+ writeJson({
91
+ ok: false,
92
+ error: { code: "INTERNAL_ERROR", message: err instanceof Error ? err.message : "Unexpected error" }
93
+ });
94
+ }
95
+ process.exit(1);
96
+ }
97
+
98
+ export {
99
+ SiteArgsError,
100
+ parseSetArgs,
101
+ failSite
102
+ };
103
+ //# sourceMappingURL=chunk-XPLTWUMN.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/site/setArgs.ts","../src/commands/site/shared.ts"],"sourcesContent":["import { SITE_COLLECTION_MODES, SITE_CONSENT_MODES, SITE_HOME_MODES, type SiteStageInput } from \"@baker/api\";\n\n/** A flag the agent can fix by changing it — reported as a validation error, never as a failed call. */\nexport class SiteArgsError extends Error {}\n\nexport interface SiteSetArgs {\n consent?: string;\n collection?: string;\n payloads?: string;\n indexing?: string;\n home?: string;\n \"home-mode\"?: string;\n timezone?: string;\n \"export-profile\"?: string;\n}\n\nfunction oneOf<T extends string>(flag: string, value: string, allowed: readonly T[]): T {\n if (!(allowed as readonly string[]).includes(value)) {\n throw new SiteArgsError(`--${flag} must be one of: ${allowed.join(\", \")}`);\n }\n return value as T;\n}\n\nfunction onOff(flag: string, value: string): boolean {\n if (value === \"on\" || value === \"true\") return true;\n if (value === \"off\" || value === \"false\") return false;\n throw new SiteArgsError(`--${flag} must be on or off`);\n}\n\nfunction parseProfile(raw: string, readFile: (path: string) => string): Record<string, unknown> {\n const text = raw.startsWith(\"@\") ? readFile(raw.slice(1)) : raw;\n let parsed: unknown;\n try {\n parsed = JSON.parse(text);\n } catch {\n throw new SiteArgsError(\"--export-profile must be JSON, or @path to a JSON file\");\n }\n if (typeof parsed !== \"object\" || parsed === null || Array.isArray(parsed)) {\n throw new SiteArgsError(\"--export-profile must be a JSON object\");\n }\n return parsed as Record<string, unknown>;\n}\n\n/** Every setting one `baker site set` names, in the order the review lists them. */\nexport function parseSetArgs(args: SiteSetArgs, readFile: (path: string) => string): SiteStageInput[] {\n const inputs: SiteStageInput[] = [];\n if (args.consent !== undefined) {\n inputs.push({ setting: \"consent\", mode: oneOf(\"consent\", args.consent, SITE_CONSENT_MODES) });\n }\n if (args.collection !== undefined) {\n const mode = oneOf(\"collection\", args.collection, SITE_COLLECTION_MODES);\n inputs.push({\n setting: \"analyticsCollection\",\n mode,\n ...(args.payloads === undefined ? {} : { payloads: onOff(\"payloads\", args.payloads) }),\n });\n } else if (args.payloads !== undefined) {\n throw new SiteArgsError(\"--payloads goes with --collection, e.g. --collection full --payloads off\");\n }\n if (args.indexing !== undefined) {\n inputs.push({ setting: \"indexing\", enabled: onOff(\"indexing\", args.indexing) });\n }\n if (args.home !== undefined) {\n const slug = args.home.trim().replace(/^\\/+|\\/+$/g, \"\");\n inputs.push(\n slug === \"none\" || slug === \"\"\n ? { setting: \"homePage\", override: null }\n : {\n setting: \"homePage\",\n override: { mode: oneOf(\"home-mode\", args[\"home-mode\"] ?? \"rewrite\", SITE_HOME_MODES), slug },\n },\n );\n } else if (args[\"home-mode\"] !== undefined) {\n throw new SiteArgsError(\"--home-mode goes with --home <landing slug>\");\n }\n if (args.timezone !== undefined) {\n inputs.push({ setting: \"timezone\", timezone: args.timezone });\n }\n if (args[\"export-profile\"] !== undefined) {\n inputs.push({ setting: \"exportProfile\", profile: parseProfile(args[\"export-profile\"], readFile) });\n }\n if (inputs.length === 0) {\n throw new SiteArgsError(\n \"Nothing to stage. Pass at least one of --consent, --collection, --indexing, --home, --timezone, --export-profile.\",\n );\n }\n return inputs;\n}\n","import { ApiError } from \"../../client.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { SiteArgsError } from \"./setArgs.ts\";\n\n/** Emit the `{ ok: false, error }` envelope for any `baker site` failure and exit non-zero. */\nexport function failSite(err: unknown): never {\n if (err instanceof SiteArgsError) {\n writeJson({ ok: false, error: { code: \"VALIDATION_ERROR\", message: err.message } });\n } else if (err instanceof ApiError) {\n writeJson({ ok: false, error: { code: err.code, message: err.message } });\n } else {\n writeJson({\n ok: false,\n error: { code: \"INTERNAL_ERROR\", message: err instanceof Error ? err.message : \"Unexpected error\" },\n });\n }\n process.exit(1);\n}\n"],"mappings":";;;;;;;;;;;;;AAGO,IAAM,gBAAN,cAA4B,MAAM;AAAC;AAa1C,SAAS,MAAwB,MAAc,OAAe,SAA0B;AACtF,MAAI,CAAE,QAA8B,SAAS,KAAK,GAAG;AACnD,UAAM,IAAI,cAAc,KAAK,IAAI,oBAAoB,QAAQ,KAAK,IAAI,CAAC,EAAE;AAAA,EAC3E;AACA,SAAO;AACT;AAEA,SAAS,MAAM,MAAc,OAAwB;AACnD,MAAI,UAAU,QAAQ,UAAU,OAAQ,QAAO;AAC/C,MAAI,UAAU,SAAS,UAAU,QAAS,QAAO;AACjD,QAAM,IAAI,cAAc,KAAK,IAAI,oBAAoB;AACvD;AAEA,SAAS,aAAa,KAAa,UAA6D;AAC9F,QAAM,OAAO,IAAI,WAAW,GAAG,IAAI,SAAS,IAAI,MAAM,CAAC,CAAC,IAAI;AAC5D,MAAI;AACJ,MAAI;AACF,aAAS,KAAK,MAAM,IAAI;AAAA,EAC1B,QAAQ;AACN,UAAM,IAAI,cAAc,wDAAwD;AAAA,EAClF;AACA,MAAI,OAAO,WAAW,YAAY,WAAW,QAAQ,MAAM,QAAQ,MAAM,GAAG;AAC1E,UAAM,IAAI,cAAc,wCAAwC;AAAA,EAClE;AACA,SAAO;AACT;AAGO,SAAS,aAAa,MAAmB,UAAsD;AACpG,QAAM,SAA2B,CAAC;AAClC,MAAI,KAAK,YAAY,QAAW;AAC9B,WAAO,KAAK,EAAE,SAAS,WAAW,MAAM,MAAM,WAAW,KAAK,SAAS,kBAAkB,EAAE,CAAC;AAAA,EAC9F;AACA,MAAI,KAAK,eAAe,QAAW;AACjC,UAAM,OAAO,MAAM,cAAc,KAAK,YAAY,qBAAqB;AACvE,WAAO,KAAK;AAAA,MACV,SAAS;AAAA,MACT;AAAA,MACA,GAAI,KAAK,aAAa,SAAY,CAAC,IAAI,EAAE,UAAU,MAAM,YAAY,KAAK,QAAQ,EAAE;AAAA,IACtF,CAAC;AAAA,EACH,WAAW,KAAK,aAAa,QAAW;AACtC,UAAM,IAAI,cAAc,0EAA0E;AAAA,EACpG;AACA,MAAI,KAAK,aAAa,QAAW;AAC/B,WAAO,KAAK,EAAE,SAAS,YAAY,SAAS,MAAM,YAAY,KAAK,QAAQ,EAAE,CAAC;AAAA,EAChF;AACA,MAAI,KAAK,SAAS,QAAW;AAC3B,UAAM,OAAO,KAAK,KAAK,KAAK,EAAE,QAAQ,cAAc,EAAE;AACtD,WAAO;AAAA,MACL,SAAS,UAAU,SAAS,KACxB,EAAE,SAAS,YAAY,UAAU,KAAK,IACtC;AAAA,QACE,SAAS;AAAA,QACT,UAAU,EAAE,MAAM,MAAM,aAAa,KAAK,WAAW,KAAK,WAAW,eAAe,GAAG,KAAK;AAAA,MAC9F;AAAA,IACN;AAAA,EACF,WAAW,KAAK,WAAW,MAAM,QAAW;AAC1C,UAAM,IAAI,cAAc,6CAA6C;AAAA,EACvE;AACA,MAAI,KAAK,aAAa,QAAW;AAC/B,WAAO,KAAK,EAAE,SAAS,YAAY,UAAU,KAAK,SAAS,CAAC;AAAA,EAC9D;AACA,MAAI,KAAK,gBAAgB,MAAM,QAAW;AACxC,WAAO,KAAK,EAAE,SAAS,iBAAiB,SAAS,aAAa,KAAK,gBAAgB,GAAG,QAAQ,EAAE,CAAC;AAAA,EACnG;AACA,MAAI,OAAO,WAAW,GAAG;AACvB,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EACF;AACA,SAAO;AACT;;;AClFO,SAAS,SAAS,KAAqB;AAC5C,MAAI,eAAe,eAAe;AAChC,cAAU,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,oBAAoB,SAAS,IAAI,QAAQ,EAAE,CAAC;AAAA,EACpF,WAAW,eAAe,UAAU;AAClC,cAAU,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,IAAI,MAAM,SAAS,IAAI,QAAQ,EAAE,CAAC;AAAA,EAC1E,OAAO;AACL,cAAU;AAAA,MACR,IAAI;AAAA,MACJ,OAAO,EAAE,MAAM,kBAAkB,SAAS,eAAe,QAAQ,IAAI,UAAU,mBAAmB;AAAA,IACpG,CAAC;AAAA,EACH;AACA,UAAQ,KAAK,CAAC;AAChB;","names":[]}
@@ -0,0 +1,19 @@
1
+ import {
2
+ latestVersion
3
+ } from "./chunk-35NYNRRB.js";
4
+ import {
5
+ canvasOutputsRoot
6
+ } from "./chunk-TNOSX3PJ.js";
7
+
8
+ // src/commands/creatives/version-of.ts
9
+ import path from "path";
10
+ async function versionOf(slug, run) {
11
+ if (typeof run === "string" && run.trim()) return run.trim();
12
+ const canvas = path.join("src", "creatives", slug, `${slug}.canvas.json`);
13
+ return await latestVersion(canvasOutputsRoot(canvas), slug) ?? void 0;
14
+ }
15
+
16
+ export {
17
+ versionOf
18
+ };
19
+ //# sourceMappingURL=chunk-Y6T5ZKBK.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/creatives/version-of.ts"],"sourcesContent":["import path from \"node:path\";\nimport { canvasOutputsRoot } from \"../canvas/normalize-paths.ts\";\nimport { latestVersion } from \"../canvas/render-state.ts\";\n\n/** The version a command names: `--run` when given, else the one the creative shows now (`latestVersion`). */\nexport async function versionOf(slug: string, run: unknown): Promise<string | undefined> {\n if (typeof run === \"string\" && run.trim()) return run.trim();\n const canvas = path.join(\"src\", \"creatives\", slug, `${slug}.canvas.json`);\n return (await latestVersion(canvasOutputsRoot(canvas), slug)) ?? undefined;\n}\n"],"mappings":";;;;;;;;AAAA,OAAO,UAAU;AAKjB,eAAsB,UAAU,MAAc,KAA2C;AACvF,MAAI,OAAO,QAAQ,YAAY,IAAI,KAAK,EAAG,QAAO,IAAI,KAAK;AAC3D,QAAM,SAAS,KAAK,KAAK,OAAO,aAAa,MAAM,GAAG,IAAI,cAAc;AACxE,SAAQ,MAAM,cAAc,kBAAkB,MAAM,GAAG,IAAI,KAAM;AACnE;","names":[]}
@@ -0,0 +1,382 @@
1
+ import {
2
+ AUTO_PUBLISH_REFUSAL,
3
+ TRIGGER_KINDS,
4
+ TRIGGER_KIND_IDS,
5
+ TRIGGER_TARGETS,
6
+ TRIGGER_TARGET_FIELDS,
7
+ TRIGGER_TARGET_FIELD_IDS,
8
+ firstTimes,
9
+ isTriggerKind,
10
+ parseConditionsExpression
11
+ } from "./chunk-D46NOXRY.js";
12
+ import {
13
+ ApiError,
14
+ validateConvexId
15
+ } from "./chunk-CUL3VB4L.js";
16
+ import {
17
+ getEnv
18
+ } from "./chunk-I4FTS5EE.js";
19
+ import {
20
+ writeJson
21
+ } from "./chunk-MYTDK3AL.js";
22
+
23
+ // src/commands/scheduled-agents/shared.ts
24
+ var TEMP_SCHEDULED_AGENT_PREFIX = "temp_agent_";
25
+ var TEMP_ID_PREFIX = "temp_";
26
+ function writeOk(data, hints) {
27
+ writeJson({ ok: true, data: data ?? null, ...hints && hints.length > 0 ? { hints } : {} });
28
+ }
29
+ function failValidation(message) {
30
+ writeJson({ ok: false, error: { code: "VALIDATION_ERROR", message } });
31
+ process.exit(1);
32
+ }
33
+ function failApi(err) {
34
+ if (err instanceof ApiError) {
35
+ writeJson({ ok: false, error: { code: err.code, message: err.message } });
36
+ process.exit(1);
37
+ }
38
+ if (err instanceof Error) {
39
+ writeJson({ ok: false, error: { code: "INTERNAL_ERROR", message: err.message } });
40
+ process.exit(1);
41
+ }
42
+ writeJson({ ok: false, error: { code: "INTERNAL_ERROR", message: "Unexpected error" } });
43
+ process.exit(1);
44
+ }
45
+ var AUTO_PUBLISH_ARG = {
46
+ "auto-publish": {
47
+ type: "string",
48
+ description: "Not available to the agent: publishing every run unreviewed is switched on by the user, on the item, after this chat is published. Passing it is refused and tells you what to ask them.",
49
+ required: false
50
+ }
51
+ };
52
+ function refuseAutoPublish(args) {
53
+ if (args["auto-publish"] === void 0) {
54
+ return;
55
+ }
56
+ writeJson({
57
+ ok: false,
58
+ error: {
59
+ code: "FORBIDDEN",
60
+ message: AUTO_PUBLISH_REFUSAL,
61
+ fix: {
62
+ action: "ask_user",
63
+ explanation: 'Run the command again without --auto-publish. After this chat is published, ask the user to open the item in Scheduled agents and switch on "Publish its work on its own" under "When a run finishes" \u2014 until then each run waits for their review.'
64
+ }
65
+ }
66
+ });
67
+ process.exit(1);
68
+ }
69
+ function isTempScheduledAgentId(id) {
70
+ return id.startsWith(TEMP_SCHEDULED_AGENT_PREFIX);
71
+ }
72
+ function isOtherTempId(id) {
73
+ return id.startsWith(TEMP_ID_PREFIX) && !isTempScheduledAgentId(id);
74
+ }
75
+ function validateScheduledAgentRef(ref) {
76
+ if (isOtherTempId(ref)) {
77
+ failValidation(`Scheduled agent temp IDs must start with ${TEMP_SCHEDULED_AGENT_PREFIX}.`);
78
+ }
79
+ if (!isTempScheduledAgentId(ref)) {
80
+ validateConvexId(ref);
81
+ }
82
+ }
83
+ var TRIGGER_ARG_DESCRIPTION = `What makes this run. ${TRIGGER_KIND_IDS.map(
84
+ (id) => `${id}: ${TRIGGER_KINDS[id].description}`
85
+ ).join(" ")} For the two time ones, pass --cron or --run-at instead and the kind is implied.`;
86
+ var TRIGGER_KIND_LIST = [...TRIGGER_KIND_IDS];
87
+ var NARROWING_DESCRIPTIONS = {
88
+ eventName: "With --trigger event.received: only this event name (a source's name, or one your site sends). Omit it to run on any event.",
89
+ toolkit: "With --trigger app.event (required): the connected tool, by its slug \u2014 gmail, slack, googlesheets.",
90
+ account: "With --trigger app.event (required): which connected account of that tool, by id (a tool can be connected more than once).",
91
+ appEvent: "With --trigger app.event (required): what happens in the tool, by the tool's own id \u2014 GMAIL_NEW_GMAIL_MESSAGE. `targets --field appEvent --app <tool>` lists them with the settings each needs.",
92
+ provider: "With --trigger connection.created, connection.removed or connection.needs_reconnect: only this tool (google-ads, hubspot, meta, or a connected tool's slug such as slack). Omit it for any tool.",
93
+ flowId: "With --trigger form.submitted or flow.step.submitted: which Form, by slug. Omit it on form.submitted for any Form.",
94
+ stepId: "With --trigger flow.step.submitted: which step of that Form, by id \u2014 `targets --field stepId --form <slug>` lists them by name.",
95
+ page: "With --trigger landing.created or landing.published: only this page, by slug. Omit it for any page.",
96
+ tag: "With --trigger task.created, task.claimed, task.completed, landing.created or landing.published: only ones carrying this tag. Omit it for any.",
97
+ experimentId: 'With --trigger experiment.decided, experiment.ended or experiment.concluded: only this test. Omit it for any test. Not for experiment.started \u2014 narrow that with --when "page = <page>".',
98
+ taskId: "With --trigger task.claimed or task.completed: only this Task, by id (a temp_ id of a Task staged in this chat works too). Omit it for any Task.",
99
+ agentId: "With --trigger session.published, session.publish_failed or session.publish_incomplete: only the runs of this scheduled agent, by id (a temp_agent_ id staged in this chat works too). Omit it for any agent's work.",
100
+ platform: "With --trigger session.publish_incomplete: only when this platform's changes did not all land \u2014 google-ads, meta-ads, linkedin-ads, x-ads, chatgpt-ads, tag-manager, ga4 or shopify. Omit it for any.",
101
+ collection: "With --trigger knowledge.updated: only this Knowledge collection. Omit it for any of them.",
102
+ sourceId: "With --trigger review.received: only reviews from this review source, by id. Omit it for any source.",
103
+ advertiserId: "With --trigger advertiser.new_ads: only this followed advertiser, by id. Omit it for any of them."
104
+ };
105
+ var NARROWING_ARGS = {
106
+ ...Object.fromEntries(
107
+ TRIGGER_TARGET_FIELD_IDS.map((field) => [
108
+ TRIGGER_TARGET_FIELDS[field].flag,
109
+ {
110
+ type: "string",
111
+ description: `${NARROWING_DESCRIPTIONS[field]} \`baker scheduled-agents targets --trigger <kind> --field ${field}\` lists the values.`,
112
+ required: false
113
+ }
114
+ ])
115
+ ),
116
+ config: {
117
+ type: "string",
118
+ description: `With --trigger app.event: the event's own settings as a JSON object \u2014 they filter inside the tool, before anything is sent. A Gmail search ('{"query":"from:ana@acme.com"}'), a label, a Slack channel, a GitHub repository ('{"owner":"acme","repo":"site"}'). \`targets --field appEvent --app <tool> --event <id>\` lists each setting with its examples.`,
119
+ required: false
120
+ }
121
+ };
122
+ function validateRunAt(runAt) {
123
+ if (!runAt.endsWith("Z")) {
124
+ failValidation("--run-at must be an ISO UTC timestamp ending in Z.");
125
+ }
126
+ const parsed = Date.parse(runAt);
127
+ if (!Number.isFinite(parsed)) {
128
+ failValidation("--run-at must be a valid ISO timestamp.");
129
+ }
130
+ if (parsed <= Date.now()) {
131
+ failValidation(
132
+ `--run-at ${runAt} has already passed. A one-off item only runs at a time still to come \u2014 pass a later ISO UTC timestamp, and check which timezone you converted from if you worked it out from a local time.`
133
+ );
134
+ }
135
+ }
136
+ function buildTriggerBody(args, options) {
137
+ const cron = args.cron;
138
+ const runAt = args["run-at"];
139
+ const timezone = args.timezone;
140
+ const kind = args.trigger;
141
+ const given = [cron, runAt, kind].filter(Boolean).length;
142
+ if (given > 1) {
143
+ failValidation("--cron, --run-at and --trigger are mutually exclusive.");
144
+ }
145
+ refuseNarrowingWithoutKind(args, kind, given);
146
+ if (runAt) {
147
+ validateRunAt(runAt);
148
+ return { runAt, ...timezone ? { timezone } : {} };
149
+ }
150
+ if (cron) {
151
+ return { cron, ...timezone ? { timezone } : {} };
152
+ }
153
+ if (kind) {
154
+ return { trigger: triggerFromFlags(kind, args), ...timezone ? { timezone } : {} };
155
+ }
156
+ if (timezone && !options.required) {
157
+ return { timezone };
158
+ }
159
+ if (options.required) {
160
+ failValidation(
161
+ `A trigger is required. Pass --cron or --run-at for a time-based one, or --trigger with one of: ${TRIGGER_KIND_IDS.join(", ")}.`
162
+ );
163
+ }
164
+ return void 0;
165
+ }
166
+ function flagText(args, key) {
167
+ const value = args[key];
168
+ return typeof value === "string" && value.trim().length > 0 ? value.trim() : void 0;
169
+ }
170
+ function refuseMisusedKinds(kind, args) {
171
+ if (kind === "time.once") {
172
+ failValidation("Use --run-at for a one-off, rather than --trigger time.once.");
173
+ }
174
+ if (kind === "time.cron") {
175
+ failValidation("Use --cron for a repeating schedule, rather than --trigger time.cron.");
176
+ }
177
+ if (kind === "experiment.started" && flagText(args, "experiment")) {
178
+ failValidation(
179
+ 'A test that exists has already started, so --experiment never fires on experiment.started. Leave it off and add --when "page = <page>" to watch one page.'
180
+ );
181
+ }
182
+ }
183
+ function refuseStrayFlags(kind, args) {
184
+ const allowed = new Set(TRIGGER_TARGETS[kind].map((target) => TRIGGER_TARGET_FIELDS[target.field].flag));
185
+ const stray = TRIGGER_TARGET_FIELD_IDS.map((field) => TRIGGER_TARGET_FIELDS[field].flag).filter(
186
+ (flag) => !allowed.has(flag) && flagText(args, flag) !== void 0 && !(kind === "experiment.started" && flag === "experiment")
187
+ );
188
+ if (stray.length === 0) {
189
+ return;
190
+ }
191
+ failValidation(
192
+ `${stray.map((flag) => `--${flag}`).join(", ")} does not narrow ${kind}. ${allowed.size > 0 ? `It can be pointed with ${[...allowed].map((flag) => `--${flag}`).join(", ")}.` : "It runs every time it happens \u2014 narrow it with --when rules over its payload instead."}`
193
+ );
194
+ }
195
+ var NARROWING_FLAGS = [...TRIGGER_TARGET_FIELD_IDS.map((field) => TRIGGER_TARGET_FIELDS[field].flag), "config"];
196
+ function refuseNarrowingWithoutKind(args, kind, given) {
197
+ if (kind) {
198
+ return;
199
+ }
200
+ const stray = NARROWING_FLAGS.filter((flag) => flagText(args, flag) !== void 0);
201
+ if (stray.length === 0) {
202
+ return;
203
+ }
204
+ const flags = stray.map((flag) => `--${flag}`).join(", ");
205
+ failValidation(
206
+ given > 0 ? `${flags} does not narrow --cron or --run-at: a time trigger runs every time it comes round. Use --trigger <kind> with ${flags} instead, or leave ${flags} off.` : `${flags} narrows a trigger, and no trigger was given. Pass --trigger <kind> too \u2014 the item's whole trigger, with ${flags} \u2014 or leave ${flags} off.`
207
+ );
208
+ }
209
+ function configFromFlag(kind, args) {
210
+ const config = flagText(args, "config");
211
+ if (!config) {
212
+ return {};
213
+ }
214
+ if (kind !== "app.event") {
215
+ failValidation("--config is only for --trigger app.event: the settings of what happens in the tool.");
216
+ }
217
+ let parsed;
218
+ try {
219
+ parsed = JSON.parse(config);
220
+ } catch {
221
+ parsed = null;
222
+ }
223
+ if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed)) {
224
+ failValidation(`--config must be a JSON object, e.g. '{"labelIds":"INBOX"}'.`);
225
+ }
226
+ return { configJson: config };
227
+ }
228
+ function triggerFromFlags(kind, args) {
229
+ if (!isTriggerKind(kind)) {
230
+ failValidation(`--trigger must be one of: ${TRIGGER_KIND_IDS.join(", ")}.`);
231
+ }
232
+ refuseMisusedKinds(kind, args);
233
+ refuseStrayFlags(kind, args);
234
+ const narrowings = {};
235
+ for (const { field, required } of TRIGGER_TARGETS[kind]) {
236
+ const value = flagText(args, TRIGGER_TARGET_FIELDS[field].flag);
237
+ if (value) {
238
+ narrowings[field] = value;
239
+ } else if (required) {
240
+ failValidation(
241
+ `--trigger ${kind} needs --${TRIGGER_TARGET_FIELDS[field].flag}. \`baker scheduled-agents targets --trigger ${kind} --field ${field}\` lists what it can be.`
242
+ );
243
+ }
244
+ }
245
+ return { kind, ...narrowings, ...configFromFlag(kind, args) };
246
+ }
247
+ function parseOccurrences(raw) {
248
+ if (raw === void 0) {
249
+ return void 0;
250
+ }
251
+ if (typeof raw !== "string") {
252
+ failValidation("--occurrences must be a comma-separated list of whole numbers, e.g. 1 or 1,3.");
253
+ }
254
+ const parts = raw.split(",").map((part) => part.trim()).filter((part) => part.length > 0);
255
+ const numbers = parts.map((part) => Number(part));
256
+ if (numbers.length === 0 || numbers.some((n) => !Number.isInteger(n) || n <= 0)) {
257
+ failValidation("--occurrences must be a comma-separated list of whole numbers above zero, e.g. 1 or 1,3.");
258
+ }
259
+ return numbers;
260
+ }
261
+ function parseBooleanFlag(raw, flagName) {
262
+ if (raw === void 0) {
263
+ return void 0;
264
+ }
265
+ if (raw === true || raw === "true") {
266
+ return true;
267
+ }
268
+ if (raw === false || raw === "false") {
269
+ return false;
270
+ }
271
+ failValidation(`${flagName} must be true or false.`);
272
+ }
273
+ var REACTION_ARGS = {
274
+ when: {
275
+ type: "string",
276
+ description: "Only run when what arrived passes these rules: `<field> <operator> <value>` joined by AND or by OR (either case). Fields are the trigger's payload fields (`baker scheduled-agents triggers --trigger <kind>` lists them; a webhook's are whatever was posted; an app.event's are what `targets --field appEvent --app <tool> --event <id>` says it sends). Operators: =, !=, contains, does not contain, starts with, ends with, >, <, >=, <=, in (comma list), exists, missing. Example: --when \"deal.stage = won AND amount > 10000\". A payload that fails is not counted and starts nothing. `none` clears the rules.",
277
+ required: false
278
+ },
279
+ times: {
280
+ type: "string",
281
+ description: "Only the first N times it fires (and its --when rules pass), then never again. `--times 1` is only the first time. Shorthand for --occurrences 1,2,\u2026,N.",
282
+ required: false
283
+ },
284
+ payload: {
285
+ type: "string",
286
+ description: "include (default) or omit. Whether the run's first message carries what arrived \u2014 the posted body, the event's properties, the Form's answers (emails and phones masked). Place single values in --prompt with {{payload.<field>}} instead; those are filled either way.",
287
+ required: false
288
+ },
289
+ cooldown: {
290
+ type: "string",
291
+ description: "At most one run per this many minutes, however often it fires. 0 removes it.",
292
+ required: false
293
+ }
294
+ };
295
+ var SLACK_ARG = {
296
+ slack: {
297
+ type: "string",
298
+ description: "Tell each run in Slack: `here` (the Slack conversation this chat came from), `me` (a direct message to the person in this chat), `#channel` (a channel linked to this company), or `off`. Each run opens its own thread there and Baker reports on it: what it found, what it needs, whether to publish.",
299
+ required: false
300
+ }
301
+ };
302
+ function slackBody(args) {
303
+ return typeof args.slack === "string" && args.slack.trim().length > 0 ? { slack: args.slack.trim() } : {};
304
+ }
305
+ function wholeNumber(raw, flag, { min }) {
306
+ if (raw === void 0) {
307
+ return void 0;
308
+ }
309
+ const value = Number(raw);
310
+ if (!Number.isInteger(value) || value < min) {
311
+ failValidation(`${flag} must be a whole number of at least ${min}.`);
312
+ }
313
+ return value;
314
+ }
315
+ function reactionBody(args) {
316
+ const occurrences = occurrencesFromFlags(args);
317
+ const when = whenFromFlag(args.when);
318
+ const includePayload = payloadFromFlag(args.payload);
319
+ const cooldownMinutes = wholeNumber(args.cooldown, "--cooldown", { min: 0 });
320
+ return {
321
+ ...occurrences !== void 0 ? { occurrences } : {},
322
+ ...when !== void 0 ? { when } : {},
323
+ ...includePayload !== void 0 ? { includePayload } : {},
324
+ ...cooldownMinutes !== void 0 ? { cooldownMinutes } : {}
325
+ };
326
+ }
327
+ function occurrencesFromFlags(args) {
328
+ const times = wholeNumber(args.times, "--times", { min: 1 });
329
+ const occurrences = parseOccurrences(args.occurrences);
330
+ if (times !== void 0 && occurrences !== void 0) {
331
+ failValidation("Pass --times or --occurrences, not both \u2014 --times 3 is --occurrences 1,2,3.");
332
+ }
333
+ return times !== void 0 ? firstTimes(times) : occurrences;
334
+ }
335
+ function whenFromFlag(raw) {
336
+ if (typeof raw !== "string") {
337
+ return void 0;
338
+ }
339
+ const text = raw.trim();
340
+ if (text.length === 0 || text.toLowerCase() === "none") {
341
+ return "none";
342
+ }
343
+ const parsed = parseConditionsExpression(text);
344
+ if (!parsed.ok) {
345
+ failValidation(parsed.error);
346
+ }
347
+ return text;
348
+ }
349
+ function payloadFromFlag(raw) {
350
+ if (raw === void 0) {
351
+ return void 0;
352
+ }
353
+ if (raw !== "include" && raw !== "omit") {
354
+ failValidation("--payload must be include or omit.");
355
+ }
356
+ return raw === "include";
357
+ }
358
+ function chatBody() {
359
+ const id = getEnv().BAKER_CHAT_ID;
360
+ return id ? { chatId: id } : {};
361
+ }
362
+
363
+ export {
364
+ writeOk,
365
+ failValidation,
366
+ failApi,
367
+ AUTO_PUBLISH_ARG,
368
+ refuseAutoPublish,
369
+ isTempScheduledAgentId,
370
+ validateScheduledAgentRef,
371
+ TRIGGER_ARG_DESCRIPTION,
372
+ TRIGGER_KIND_LIST,
373
+ NARROWING_ARGS,
374
+ buildTriggerBody,
375
+ parseBooleanFlag,
376
+ REACTION_ARGS,
377
+ SLACK_ARG,
378
+ slackBody,
379
+ reactionBody,
380
+ chatBody
381
+ };
382
+ //# sourceMappingURL=chunk-YGGRQXDP.js.map