@koda-sl/baker-cli 0.386.0-dev.8b1f99042 → 0.386.0-dev.d6e55699d

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 (968) hide show
  1. package/README.md +1091 -211
  2. package/canvas/tiktok-captions-composition/index.html +5 -6
  3. package/canvas/tiktok-captions-composition/meta.json +5 -0
  4. package/dist/account-5TGX45FO.js +79 -0
  5. package/dist/account-5TGX45FO.js.map +1 -0
  6. package/dist/account-CLOKMTTC.js +49 -0
  7. package/dist/account-CLOKMTTC.js.map +1 -0
  8. package/dist/account-XFK6VX2R.js +80 -0
  9. package/dist/account-XFK6VX2R.js.map +1 -0
  10. package/dist/account-reads-ZK5RMLB2.js +218 -0
  11. package/dist/account-reads-ZK5RMLB2.js.map +1 -0
  12. package/dist/account-writes-Y7EQXDXF.js +66 -0
  13. package/dist/account-writes-Y7EQXDXF.js.map +1 -0
  14. package/dist/accounts-7YD457YN.js +114 -0
  15. package/dist/accounts-7YD457YN.js.map +1 -0
  16. package/dist/accounts-BJ3X5JQT.js +115 -0
  17. package/dist/accounts-BJ3X5JQT.js.map +1 -0
  18. package/dist/accounts-HGAFFOA7.js +77 -0
  19. package/dist/accounts-HGAFFOA7.js.map +1 -0
  20. package/dist/accounts-OWMXUT6D.js +611 -0
  21. package/dist/accounts-OWMXUT6D.js.map +1 -0
  22. package/dist/accounts-RYBDLQ6H.js +75 -0
  23. package/dist/accounts-RYBDLQ6H.js.map +1 -0
  24. package/dist/actions-NSQYW7YS.js +55 -0
  25. package/dist/actions-NSQYW7YS.js.map +1 -0
  26. package/dist/active-entities-R6GZIO6Z.js +103 -0
  27. package/dist/active-entities-R6GZIO6Z.js.map +1 -0
  28. package/dist/activities-ESBF3GFS.js +74 -0
  29. package/dist/activities-ESBF3GFS.js.map +1 -0
  30. package/dist/ad-group-writes-I225OYDZ.js +170 -0
  31. package/dist/ad-group-writes-I225OYDZ.js.map +1 -0
  32. package/dist/ad-groups-O35MWNF6.js +68 -0
  33. package/dist/ad-groups-O35MWNF6.js.map +1 -0
  34. package/dist/ad-writes-SS5YZO5W.js +174 -0
  35. package/dist/ad-writes-SS5YZO5W.js.map +1 -0
  36. package/dist/add-HWIE5PGR.js +302 -0
  37. package/dist/add-HWIE5PGR.js.map +1 -0
  38. package/dist/add-IIW3NHZH.js +104 -0
  39. package/dist/add-IIW3NHZH.js.map +1 -0
  40. package/dist/add-QZHAWUBA.js +97 -0
  41. package/dist/add-QZHAWUBA.js.map +1 -0
  42. package/dist/add-TGQIVVXH.js +105 -0
  43. package/dist/add-TGQIVVXH.js.map +1 -0
  44. package/dist/add-accounts-6QYPOPR2.js +91 -0
  45. package/dist/add-accounts-6QYPOPR2.js.map +1 -0
  46. package/dist/ads-AUSRB4GU.js +128 -0
  47. package/dist/ads-AUSRB4GU.js.map +1 -0
  48. package/dist/ads-COYOTEKE.js +77 -0
  49. package/dist/ads-COYOTEKE.js.map +1 -0
  50. package/dist/ads-D6KKCQ3Q.js +40 -0
  51. package/dist/ads-D6KKCQ3Q.js.map +1 -0
  52. package/dist/ads-QKIHHXP5.js +113 -0
  53. package/dist/ads-QKIHHXP5.js.map +1 -0
  54. package/dist/adsets-7WMWU45E.js +176 -0
  55. package/dist/adsets-7WMWU45E.js.map +1 -0
  56. package/dist/advertisers-6NZ2M57X.js +120 -0
  57. package/dist/advertisers-6NZ2M57X.js.map +1 -0
  58. package/dist/advertisers-BCGKUMEH.js +125 -0
  59. package/dist/advertisers-BCGKUMEH.js.map +1 -0
  60. package/dist/analytics-QJC2BTZY.js +433 -0
  61. package/dist/analytics-QJC2BTZY.js.map +1 -0
  62. package/dist/analytics-SN6K7J7M.js +1980 -0
  63. package/dist/analytics-SN6K7J7M.js.map +1 -0
  64. package/dist/animate-JXIT77Y5.js +480 -0
  65. package/dist/animate-JXIT77Y5.js.map +1 -0
  66. package/dist/assign-XFDA42KL.js +77 -0
  67. package/dist/assign-XFDA42KL.js.map +1 -0
  68. package/dist/audience-size-DJPFYHPJ.js +94 -0
  69. package/dist/audience-size-DJPFYHPJ.js.map +1 -0
  70. package/dist/audiences-DC3IOG34.js +85 -0
  71. package/dist/audiences-DC3IOG34.js.map +1 -0
  72. package/dist/audiences-NEW3LLQR.js +268 -0
  73. package/dist/audiences-NEW3LLQR.js.map +1 -0
  74. package/dist/audiences-VXTIBZP6.js +78 -0
  75. package/dist/audiences-VXTIBZP6.js.map +1 -0
  76. package/dist/audit-M5B7TZGT.js +151 -0
  77. package/dist/audit-M5B7TZGT.js.map +1 -0
  78. package/dist/audit-UIPMTI5C.js +88 -0
  79. package/dist/audit-UIPMTI5C.js.map +1 -0
  80. package/dist/autocomplete-NWHEASQY.js +111 -0
  81. package/dist/autocomplete-NWHEASQY.js.map +1 -0
  82. package/dist/avatars-RNMUVMFM.js +38 -0
  83. package/dist/avatars-RNMUVMFM.js.map +1 -0
  84. package/dist/bid-pricing-EAY3HAHY.js +99 -0
  85. package/dist/bid-pricing-EAY3HAHY.js.map +1 -0
  86. package/dist/brand-XBHWYPMT.js +22 -0
  87. package/dist/brand-XBHWYPMT.js.map +1 -0
  88. package/dist/brief-XBAAPKRR.js +492 -0
  89. package/dist/brief-XBAAPKRR.js.map +1 -0
  90. package/dist/businesses-J7OP7MSK.js +53 -0
  91. package/dist/businesses-J7OP7MSK.js.map +1 -0
  92. package/dist/campaign-groups-7KA2RA5V.js +95 -0
  93. package/dist/campaign-groups-7KA2RA5V.js.map +1 -0
  94. package/dist/campaign-writes-5XA727KI.js +170 -0
  95. package/dist/campaign-writes-5XA727KI.js.map +1 -0
  96. package/dist/campaign-writes-D2UID2I6.js +165 -0
  97. package/dist/campaign-writes-D2UID2I6.js.map +1 -0
  98. package/dist/campaigns-JPYNVFQI.js +76 -0
  99. package/dist/campaigns-JPYNVFQI.js.map +1 -0
  100. package/dist/campaigns-NJ3KOPJS.js +107 -0
  101. package/dist/campaigns-NJ3KOPJS.js.map +1 -0
  102. package/dist/campaigns-QUTTH2TB.js +110 -0
  103. package/dist/campaigns-QUTTH2TB.js.map +1 -0
  104. package/dist/campaigns-SOO5RHYG.js +109 -0
  105. package/dist/campaigns-SOO5RHYG.js.map +1 -0
  106. package/dist/canvas-3VZ46BCF.js +46 -0
  107. package/dist/canvas-3VZ46BCF.js.map +1 -0
  108. package/dist/capabilities-KAYDPH7E.js +144 -0
  109. package/dist/capabilities-KAYDPH7E.js.map +1 -0
  110. package/dist/cards-7H32TNMO.js +85 -0
  111. package/dist/cards-7H32TNMO.js.map +1 -0
  112. package/dist/catalog-OTICZPJA.js +64 -0
  113. package/dist/catalog-OTICZPJA.js.map +1 -0
  114. package/dist/catalogs-ABCQLCDU.js +128 -0
  115. package/dist/catalogs-ABCQLCDU.js.map +1 -0
  116. package/dist/changes-22EO52IY.js +135 -0
  117. package/dist/changes-22EO52IY.js.map +1 -0
  118. package/dist/chatgpt-B3NHRJUE.js +47 -0
  119. package/dist/chatgpt-B3NHRJUE.js.map +1 -0
  120. package/dist/chats-QG3IRHOD.js +262 -0
  121. package/dist/chats-QG3IRHOD.js.map +1 -0
  122. package/dist/chunk-2CV7LX23.js +474 -0
  123. package/dist/chunk-2CV7LX23.js.map +1 -0
  124. package/dist/chunk-2SQJL7ZN.js +56 -0
  125. package/dist/chunk-2SQJL7ZN.js.map +1 -0
  126. package/dist/chunk-2Y5V23PU.js +29 -0
  127. package/dist/chunk-2Y5V23PU.js.map +1 -0
  128. package/dist/chunk-32CPGJPL.js +149 -0
  129. package/dist/chunk-32CPGJPL.js.map +1 -0
  130. package/dist/chunk-32PSERWG.js +363 -0
  131. package/dist/chunk-32PSERWG.js.map +1 -0
  132. package/dist/chunk-3ACMDRSE.js +39 -0
  133. package/dist/chunk-3ACMDRSE.js.map +1 -0
  134. package/dist/chunk-3UDSYYND.js +42 -0
  135. package/dist/chunk-3UDSYYND.js.map +1 -0
  136. package/dist/chunk-3V5E5SVE.js +382 -0
  137. package/dist/chunk-3V5E5SVE.js.map +1 -0
  138. package/dist/chunk-455BTAHM.js +57 -0
  139. package/dist/chunk-455BTAHM.js.map +1 -0
  140. package/dist/chunk-4MH6LONO.js +274 -0
  141. package/dist/chunk-4MH6LONO.js.map +1 -0
  142. package/dist/chunk-4NZ47VXO.js +137 -0
  143. package/dist/chunk-4NZ47VXO.js.map +1 -0
  144. package/dist/chunk-4OBO75XU.js +275 -0
  145. package/dist/chunk-4OBO75XU.js.map +1 -0
  146. package/dist/chunk-5HYSKH77.js +315 -0
  147. package/dist/chunk-5HYSKH77.js.map +1 -0
  148. package/dist/chunk-5MBPIONY.js +29 -0
  149. package/dist/chunk-5MBPIONY.js.map +1 -0
  150. package/dist/chunk-5OVOLYY3.js +74 -0
  151. package/dist/chunk-5OVOLYY3.js.map +1 -0
  152. package/dist/chunk-66USKCVY.js +4410 -0
  153. package/dist/chunk-66USKCVY.js.map +1 -0
  154. package/dist/chunk-6I7SYEYN.js +166 -0
  155. package/dist/chunk-6I7SYEYN.js.map +1 -0
  156. package/dist/chunk-6O7ISBC7.js +65 -0
  157. package/dist/chunk-6O7ISBC7.js.map +1 -0
  158. package/dist/chunk-752S7JF6.js +35 -0
  159. package/dist/chunk-752S7JF6.js.map +1 -0
  160. package/dist/chunk-AFJGYJ7Z.js +45 -0
  161. package/dist/chunk-AFJGYJ7Z.js.map +1 -0
  162. package/dist/chunk-AR7PU7BB.js +76 -0
  163. package/dist/chunk-AR7PU7BB.js.map +1 -0
  164. package/dist/chunk-ASL7JFBD.js +96 -0
  165. package/dist/chunk-ASL7JFBD.js.map +1 -0
  166. package/dist/chunk-AUCITRRT.js +310 -0
  167. package/dist/chunk-AUCITRRT.js.map +1 -0
  168. package/dist/chunk-AUSKKFVH.js +84 -0
  169. package/dist/chunk-AUSKKFVH.js.map +1 -0
  170. package/dist/chunk-BEGARAVC.js +174 -0
  171. package/dist/chunk-BEGARAVC.js.map +1 -0
  172. package/dist/{chunk-XHC4LMK4.js → chunk-BVM5IRZW.js} +16 -8
  173. package/dist/chunk-BVM5IRZW.js.map +1 -0
  174. package/dist/chunk-CAMX6OHF.js +3182 -0
  175. package/dist/chunk-CAMX6OHF.js.map +1 -0
  176. package/dist/chunk-CKI3RLMU.js +159 -0
  177. package/dist/chunk-CKI3RLMU.js.map +1 -0
  178. package/dist/chunk-CZENWCBS.js +333 -0
  179. package/dist/chunk-CZENWCBS.js.map +1 -0
  180. package/dist/chunk-D5FY4FAK.js +24 -0
  181. package/dist/chunk-D5FY4FAK.js.map +1 -0
  182. package/dist/chunk-DGCUPJZD.js +39 -0
  183. package/dist/chunk-DGCUPJZD.js.map +1 -0
  184. package/dist/chunk-DIICZGIS.js +509 -0
  185. package/dist/chunk-DIICZGIS.js.map +1 -0
  186. package/dist/chunk-DNCLWSHO.js +41 -0
  187. package/dist/chunk-DNCLWSHO.js.map +1 -0
  188. package/dist/chunk-DX4GIDO7.js +296 -0
  189. package/dist/chunk-DX4GIDO7.js.map +1 -0
  190. package/dist/chunk-DYZJBWT2.js +1079 -0
  191. package/dist/chunk-DYZJBWT2.js.map +1 -0
  192. package/dist/chunk-EDLZGTGN.js +216 -0
  193. package/dist/chunk-EDLZGTGN.js.map +1 -0
  194. package/dist/chunk-EDNX3AOS.js +76 -0
  195. package/dist/chunk-EDNX3AOS.js.map +1 -0
  196. package/dist/chunk-EF5DP6EB.js +52 -0
  197. package/dist/chunk-EF5DP6EB.js.map +1 -0
  198. package/dist/chunk-EQEZAYPL.js +541 -0
  199. package/dist/chunk-EQEZAYPL.js.map +1 -0
  200. package/dist/chunk-ERSX3MKH.js +34 -0
  201. package/dist/chunk-ERSX3MKH.js.map +1 -0
  202. package/dist/chunk-FKOECEVC.js +126 -0
  203. package/dist/chunk-FKOECEVC.js.map +1 -0
  204. package/dist/chunk-FYWWTMXP.js +2902 -0
  205. package/dist/chunk-FYWWTMXP.js.map +1 -0
  206. package/dist/chunk-G7AFVTUS.js +106 -0
  207. package/dist/chunk-G7AFVTUS.js.map +1 -0
  208. package/dist/chunk-GIW7ABMM.js +74 -0
  209. package/dist/chunk-GIW7ABMM.js.map +1 -0
  210. package/dist/chunk-GIWHHCD6.js +145 -0
  211. package/dist/chunk-GIWHHCD6.js.map +1 -0
  212. package/dist/chunk-GOJXKIFQ.js +1605 -0
  213. package/dist/chunk-GOJXKIFQ.js.map +1 -0
  214. package/dist/chunk-GPXIUYIA.js +592 -0
  215. package/dist/chunk-GPXIUYIA.js.map +1 -0
  216. package/dist/chunk-GRQ2AXDX.js +9 -0
  217. package/dist/chunk-GRQ2AXDX.js.map +1 -0
  218. package/dist/chunk-GXDLWBOY.js +73 -0
  219. package/dist/chunk-GXDLWBOY.js.map +1 -0
  220. package/dist/chunk-H7MLHG2I.js +94 -0
  221. package/dist/chunk-H7MLHG2I.js.map +1 -0
  222. package/dist/chunk-HAE4WWFQ.js +455 -0
  223. package/dist/chunk-HAE4WWFQ.js.map +1 -0
  224. package/dist/chunk-HB3LNR4Y.js +197 -0
  225. package/dist/chunk-HB3LNR4Y.js.map +1 -0
  226. package/dist/chunk-HDHWIEJJ.js +136 -0
  227. package/dist/chunk-HDHWIEJJ.js.map +1 -0
  228. package/dist/chunk-HJTIBTF7.js +98 -0
  229. package/dist/chunk-HJTIBTF7.js.map +1 -0
  230. package/dist/{chunk-VZEDAFAR.js → chunk-HLXWKMTK.js} +47 -8
  231. package/dist/chunk-HLXWKMTK.js.map +1 -0
  232. package/dist/{chunk-MF7YA62W.js → chunk-HREWXNTO.js} +10 -5
  233. package/dist/chunk-HREWXNTO.js.map +1 -0
  234. package/dist/chunk-HVJUMQYY.js +494 -0
  235. package/dist/chunk-HVJUMQYY.js.map +1 -0
  236. package/dist/chunk-I3DIZWN5.js +97 -0
  237. package/dist/chunk-I3DIZWN5.js.map +1 -0
  238. package/dist/chunk-IJMWEO4P.js +57 -0
  239. package/dist/chunk-IJMWEO4P.js.map +1 -0
  240. package/dist/chunk-IMORFIUT.js +207 -0
  241. package/dist/chunk-IMORFIUT.js.map +1 -0
  242. package/dist/chunk-IOCSDFF2.js +23992 -0
  243. package/dist/chunk-IOCSDFF2.js.map +1 -0
  244. package/dist/chunk-IRTYTT5D.js +665 -0
  245. package/dist/chunk-IRTYTT5D.js.map +1 -0
  246. package/dist/chunk-IVIJJXXT.js +62 -0
  247. package/dist/chunk-IVIJJXXT.js.map +1 -0
  248. package/dist/chunk-J57GWTPK.js +106 -0
  249. package/dist/chunk-J57GWTPK.js.map +1 -0
  250. package/dist/chunk-JAYT43KX.js +4227 -0
  251. package/dist/chunk-JAYT43KX.js.map +1 -0
  252. package/dist/chunk-JPK34QPS.js +134 -0
  253. package/dist/chunk-JPK34QPS.js.map +1 -0
  254. package/dist/chunk-JRCFCIE3.js +188 -0
  255. package/dist/chunk-JRCFCIE3.js.map +1 -0
  256. package/dist/chunk-JRGPCPT2.js +479 -0
  257. package/dist/chunk-JRGPCPT2.js.map +1 -0
  258. package/dist/chunk-JUAIGJ2A.js +76 -0
  259. package/dist/chunk-JUAIGJ2A.js.map +1 -0
  260. package/dist/chunk-K2RYUZ5Y.js +51 -0
  261. package/dist/chunk-K2RYUZ5Y.js.map +1 -0
  262. package/dist/chunk-K5OQES4V.js +58 -0
  263. package/dist/chunk-K5OQES4V.js.map +1 -0
  264. package/dist/chunk-KAHMADFH.js +455 -0
  265. package/dist/chunk-KAHMADFH.js.map +1 -0
  266. package/dist/chunk-KIGGMKAE.js +66 -0
  267. package/dist/chunk-KIGGMKAE.js.map +1 -0
  268. package/dist/chunk-KKJ4KJCW.js +29 -0
  269. package/dist/chunk-KKJ4KJCW.js.map +1 -0
  270. package/dist/chunk-KLK6KQLQ.js +55 -0
  271. package/dist/chunk-KLK6KQLQ.js.map +1 -0
  272. package/dist/chunk-KRIK2JR4.js +6212 -0
  273. package/dist/chunk-KRIK2JR4.js.map +1 -0
  274. package/dist/chunk-KZUHRZ2C.js +5187 -0
  275. package/dist/chunk-KZUHRZ2C.js.map +1 -0
  276. package/dist/chunk-L5WIRYNB.js +19 -0
  277. package/dist/chunk-L5WIRYNB.js.map +1 -0
  278. package/dist/chunk-LA6PPSNA.js +65 -0
  279. package/dist/chunk-LA6PPSNA.js.map +1 -0
  280. package/dist/chunk-LEIQAHWF.js +25 -0
  281. package/dist/chunk-LEIQAHWF.js.map +1 -0
  282. package/dist/chunk-LWBWCIWL.js +297 -0
  283. package/dist/chunk-LWBWCIWL.js.map +1 -0
  284. package/dist/chunk-M4PPFVYL.js +346 -0
  285. package/dist/chunk-M4PPFVYL.js.map +1 -0
  286. package/dist/chunk-M6UNISGO.js +66 -0
  287. package/dist/chunk-M6UNISGO.js.map +1 -0
  288. package/dist/chunk-MGKHFGLV.js +75 -0
  289. package/dist/chunk-MGKHFGLV.js.map +1 -0
  290. package/dist/chunk-MUVSWFLL.js +111 -0
  291. package/dist/chunk-MUVSWFLL.js.map +1 -0
  292. package/dist/chunk-NFSLRRIE.js +77 -0
  293. package/dist/chunk-NFSLRRIE.js.map +1 -0
  294. package/dist/chunk-NHU33T2S.js +60 -0
  295. package/dist/chunk-NHU33T2S.js.map +1 -0
  296. package/dist/chunk-O6QKCJE4.js +455 -0
  297. package/dist/chunk-O6QKCJE4.js.map +1 -0
  298. package/dist/chunk-OBNWER4H.js +1599 -0
  299. package/dist/chunk-OBNWER4H.js.map +1 -0
  300. package/dist/chunk-OFFAMC5H.js +225 -0
  301. package/dist/chunk-OFFAMC5H.js.map +1 -0
  302. package/dist/chunk-P4NSJS54.js +20 -0
  303. package/dist/chunk-P4NSJS54.js.map +1 -0
  304. package/dist/chunk-P5T7OZKV.js +26 -0
  305. package/dist/chunk-P5T7OZKV.js.map +1 -0
  306. package/dist/chunk-PAHLJMC3.js +175 -0
  307. package/dist/chunk-PAHLJMC3.js.map +1 -0
  308. package/dist/chunk-PBVLPFJ6.js +169 -0
  309. package/dist/chunk-PBVLPFJ6.js.map +1 -0
  310. package/dist/chunk-PFBQERWX.js +10 -0
  311. package/dist/chunk-PFBQERWX.js.map +1 -0
  312. package/dist/chunk-Q6ULQMWG.js +41 -0
  313. package/dist/chunk-Q6ULQMWG.js.map +1 -0
  314. package/dist/chunk-QKE7GXZ7.js +6683 -0
  315. package/dist/chunk-QKE7GXZ7.js.map +1 -0
  316. package/dist/chunk-QL573PLH.js +150 -0
  317. package/dist/chunk-QL573PLH.js.map +1 -0
  318. package/dist/chunk-QO23YHLK.js +84 -0
  319. package/dist/chunk-QO23YHLK.js.map +1 -0
  320. package/dist/chunk-R5OQM7FF.js +179 -0
  321. package/dist/chunk-R5OQM7FF.js.map +1 -0
  322. package/dist/chunk-RDLB54KF.js +629 -0
  323. package/dist/chunk-RDLB54KF.js.map +1 -0
  324. package/dist/chunk-RGIXQEGJ.js +502 -0
  325. package/dist/chunk-RGIXQEGJ.js.map +1 -0
  326. package/dist/chunk-RRIAHUWP.js +304 -0
  327. package/dist/chunk-RRIAHUWP.js.map +1 -0
  328. package/dist/chunk-S4LZ7KTG.js +160 -0
  329. package/dist/chunk-S4LZ7KTG.js.map +1 -0
  330. package/dist/chunk-SHTESUB6.js +1442 -0
  331. package/dist/chunk-SHTESUB6.js.map +1 -0
  332. package/dist/chunk-SLB46MSS.js +64 -0
  333. package/dist/chunk-SLB46MSS.js.map +1 -0
  334. package/dist/chunk-T7M4WFNV.js +172 -0
  335. package/dist/chunk-T7M4WFNV.js.map +1 -0
  336. package/dist/{chunk-VLUGGVJL.js → chunk-TPXI2GCW.js} +12 -4
  337. package/dist/chunk-TPXI2GCW.js.map +1 -0
  338. package/dist/chunk-TWNFQUBS.js +23 -0
  339. package/dist/chunk-TWNFQUBS.js.map +1 -0
  340. package/dist/chunk-U6VRBDNQ.js +1830 -0
  341. package/dist/chunk-U6VRBDNQ.js.map +1 -0
  342. package/dist/chunk-U7BBXM67.js +1743 -0
  343. package/dist/chunk-U7BBXM67.js.map +1 -0
  344. package/dist/chunk-UI6BKYQD.js +225 -0
  345. package/dist/chunk-UI6BKYQD.js.map +1 -0
  346. package/dist/chunk-USL5ARRE.js +26 -0
  347. package/dist/chunk-USL5ARRE.js.map +1 -0
  348. package/dist/chunk-UYC45JNS.js +139 -0
  349. package/dist/chunk-UYC45JNS.js.map +1 -0
  350. package/dist/chunk-V5GSRREZ.js +846 -0
  351. package/dist/chunk-V5GSRREZ.js.map +1 -0
  352. package/dist/chunk-V5HDRJQW.js +337 -0
  353. package/dist/chunk-V5HDRJQW.js.map +1 -0
  354. package/dist/chunk-VS4C7VAR.js +533 -0
  355. package/dist/chunk-VS4C7VAR.js.map +1 -0
  356. package/dist/chunk-W4W4ZRBP.js +191 -0
  357. package/dist/chunk-W4W4ZRBP.js.map +1 -0
  358. package/dist/chunk-WIRBRCTJ.js +228 -0
  359. package/dist/chunk-WIRBRCTJ.js.map +1 -0
  360. package/dist/chunk-WN4KX7GE.js +25 -0
  361. package/dist/chunk-WN4KX7GE.js.map +1 -0
  362. package/dist/chunk-WNFTXSGR.js +111 -0
  363. package/dist/chunk-WNFTXSGR.js.map +1 -0
  364. package/dist/chunk-WOTDHRNF.js +2109 -0
  365. package/dist/chunk-WOTDHRNF.js.map +1 -0
  366. package/dist/chunk-WPKOEFOE.js +103 -0
  367. package/dist/chunk-WPKOEFOE.js.map +1 -0
  368. package/dist/chunk-XE3WS3QE.js +183 -0
  369. package/dist/chunk-XE3WS3QE.js.map +1 -0
  370. package/dist/chunk-XGWKTYXQ.js +67 -0
  371. package/dist/chunk-XGWKTYXQ.js.map +1 -0
  372. package/dist/chunk-XIGIJJSF.js +66 -0
  373. package/dist/chunk-XIGIJJSF.js.map +1 -0
  374. package/dist/chunk-XNUXB63I.js +817 -0
  375. package/dist/chunk-XNUXB63I.js.map +1 -0
  376. package/dist/chunk-XQ3CCNJD.js +610 -0
  377. package/dist/chunk-XQ3CCNJD.js.map +1 -0
  378. package/dist/chunk-Y362QH54.js +98 -0
  379. package/dist/chunk-Y362QH54.js.map +1 -0
  380. package/dist/chunk-Y4HZNSBN.js +3151 -0
  381. package/dist/chunk-Y4HZNSBN.js.map +1 -0
  382. package/dist/chunk-Y4T6ATDQ.js +74 -0
  383. package/dist/chunk-Y4T6ATDQ.js.map +1 -0
  384. package/dist/chunk-YIMGUMXX.js +206 -0
  385. package/dist/chunk-YIMGUMXX.js.map +1 -0
  386. package/dist/chunk-YQSBHWOI.js +41 -0
  387. package/dist/chunk-YU26SDNT.js +46 -0
  388. package/dist/chunk-YU26SDNT.js.map +1 -0
  389. package/dist/chunk-YULENNA7.js +501 -0
  390. package/dist/chunk-YULENNA7.js.map +1 -0
  391. package/dist/chunk-YYSZYSAG.js +150 -0
  392. package/dist/chunk-YYSZYSAG.js.map +1 -0
  393. package/dist/chunk-Z3ENMCFE.js +94 -0
  394. package/dist/chunk-Z3ENMCFE.js.map +1 -0
  395. package/dist/chunk-ZCFSHQBF.js +92 -0
  396. package/dist/chunk-ZCFSHQBF.js.map +1 -0
  397. package/dist/chunk-ZH7ZM3ZM.js +125 -0
  398. package/dist/chunk-ZH7ZM3ZM.js.map +1 -0
  399. package/dist/chunk-ZIXHS6AM.js +42 -0
  400. package/dist/chunk-ZIXHS6AM.js.map +1 -0
  401. package/dist/chunk-ZLLJKSNS.js +96 -0
  402. package/dist/chunk-ZLLJKSNS.js.map +1 -0
  403. package/dist/claim-4AFNDV3A.js +197 -0
  404. package/dist/claim-4AFNDV3A.js.map +1 -0
  405. package/dist/cli.js +104 -69909
  406. package/dist/cli.js.map +1 -1
  407. package/dist/client-26SAJ46D.js +19 -0
  408. package/dist/code-MOWYJMDH.js +76 -0
  409. package/dist/code-MOWYJMDH.js.map +1 -0
  410. package/dist/companies-PZRRZZNV.js +195 -0
  411. package/dist/companies-PZRRZZNV.js.map +1 -0
  412. package/dist/complete-IBW5DNVZ.js +81 -0
  413. package/dist/complete-IBW5DNVZ.js.map +1 -0
  414. package/dist/config-X6GKOVQ6.js +88 -0
  415. package/dist/config-X6GKOVQ6.js.map +1 -0
  416. package/dist/connect-WYUYS5V4.js +42 -0
  417. package/dist/content-UYZC4AKN.js +85 -0
  418. package/dist/content-UYZC4AKN.js.map +1 -0
  419. package/dist/conversation-6AG3UBYY.js +93 -0
  420. package/dist/conversation-6AG3UBYY.js.map +1 -0
  421. package/dist/conversion-report-R4GJWWTK.js +125 -0
  422. package/dist/conversion-report-R4GJWWTK.js.map +1 -0
  423. package/dist/conversion-upload-command-YML2UNJB.js +438 -0
  424. package/dist/conversion-upload-command-YML2UNJB.js.map +1 -0
  425. package/dist/conversion-writes-WHFFUWWL.js +120 -0
  426. package/dist/conversion-writes-WHFFUWWL.js.map +1 -0
  427. package/dist/conversions-NOBBFNIU.js +135 -0
  428. package/dist/conversions-NOBBFNIU.js.map +1 -0
  429. package/dist/conversions-OXJAX5GB.js +76 -0
  430. package/dist/conversions-OXJAX5GB.js.map +1 -0
  431. package/dist/countries-PBXNB3BR.js +82 -0
  432. package/dist/countries-PBXNB3BR.js.map +1 -0
  433. package/dist/create-JK42P564.js +59 -0
  434. package/dist/create-JK42P564.js.map +1 -0
  435. package/dist/create-LAWUVPCY.js +207 -0
  436. package/dist/create-LAWUVPCY.js.map +1 -0
  437. package/dist/create-MUPQ5CTH.js +138 -0
  438. package/dist/create-MUPQ5CTH.js.map +1 -0
  439. package/dist/create-NQJNCFRO.js +236 -0
  440. package/dist/create-NQJNCFRO.js.map +1 -0
  441. package/dist/creatives-KCWFZIM5.js +182 -0
  442. package/dist/creatives-KCWFZIM5.js.map +1 -0
  443. package/dist/creatives-NNDWCSKJ.js +51 -0
  444. package/dist/creatives-NNDWCSKJ.js.map +1 -0
  445. package/dist/creatives-RHNHTS2R.js +87 -0
  446. package/dist/creatives-RHNHTS2R.js.map +1 -0
  447. package/dist/credentials-CEKGXR2C.js +287 -0
  448. package/dist/credentials-CEKGXR2C.js.map +1 -0
  449. package/dist/critique-HDDYER52.js +1449 -0
  450. package/dist/critique-HDDYER52.js.map +1 -0
  451. package/dist/critique-QIN2FO4F.js +216 -0
  452. package/dist/critique-QIN2FO4F.js.map +1 -0
  453. package/dist/crm-KBPWZC6J.js +318 -0
  454. package/dist/crm-KBPWZC6J.js.map +1 -0
  455. package/dist/crm-QBWD7CWB.js +224 -0
  456. package/dist/crm-QBWD7CWB.js.map +1 -0
  457. package/dist/crop-U3AD4DDR.js +113 -0
  458. package/dist/crop-U3AD4DDR.js.map +1 -0
  459. package/dist/currency-XTFGZFGB.js +88 -0
  460. package/dist/currency-XTFGZFGB.js.map +1 -0
  461. package/dist/custom-conversions-W3K33V33.js +125 -0
  462. package/dist/custom-conversions-W3K33V33.js.map +1 -0
  463. package/dist/customers-HYE7N2H5.js +56 -0
  464. package/dist/decide-YTHCBKM6.js +199 -0
  465. package/dist/decide-YTHCBKM6.js.map +1 -0
  466. package/dist/delete-64REPCY2.js +54 -0
  467. package/dist/delete-64REPCY2.js.map +1 -0
  468. package/dist/delete-AY3KL3N3.js +63 -0
  469. package/dist/delete-AY3KL3N3.js.map +1 -0
  470. package/dist/delete-DZUDLYPC.js +69 -0
  471. package/dist/delete-DZUDLYPC.js.map +1 -0
  472. package/dist/delete-NZGZP4YP.js +71 -0
  473. package/dist/delete-NZGZP4YP.js.map +1 -0
  474. package/dist/delete-VO2LZXE4.js +66 -0
  475. package/dist/delete-VO2LZXE4.js.map +1 -0
  476. package/dist/delete-VQMU56OH.js +71 -0
  477. package/dist/delete-VQMU56OH.js.map +1 -0
  478. package/dist/demographics-KOFLMGVW.js +138 -0
  479. package/dist/demographics-KOFLMGVW.js.map +1 -0
  480. package/dist/describe-JNTCQZNL.js +97 -0
  481. package/dist/describe-JNTCQZNL.js.map +1 -0
  482. package/dist/describe-MT4334NG.js +97 -0
  483. package/dist/describe-MT4334NG.js.map +1 -0
  484. package/dist/dimensions-FEZUJRAG.js +101 -0
  485. package/dist/dimensions-FEZUJRAG.js.map +1 -0
  486. package/dist/discard-H4RPXZHX.js +66 -0
  487. package/dist/discard-H4RPXZHX.js.map +1 -0
  488. package/dist/discover-4GD7QSF5.js +93 -0
  489. package/dist/discover-4GD7QSF5.js.map +1 -0
  490. package/dist/discover-L7OVXW4V.js +172 -0
  491. package/dist/discover-L7OVXW4V.js.map +1 -0
  492. package/dist/domain-HURQ23KR.js +98 -0
  493. package/dist/domain-HURQ23KR.js.map +1 -0
  494. package/dist/download-L27HWEOE.js +299 -0
  495. package/dist/download-L27HWEOE.js.map +1 -0
  496. package/dist/draft-25G2P2TE.js +281 -0
  497. package/dist/draft-25G2P2TE.js.map +1 -0
  498. package/dist/draft-5VH2PW3R.js +307 -0
  499. package/dist/draft-5VH2PW3R.js.map +1 -0
  500. package/dist/draft-D6UTKSAA.js +217 -0
  501. package/dist/draft-D6UTKSAA.js.map +1 -0
  502. package/dist/draft-KLULNBWP.js +233 -0
  503. package/dist/draft-KLULNBWP.js.map +1 -0
  504. package/dist/draft-MI7RWY2K.js +100 -0
  505. package/dist/draft-MI7RWY2K.js.map +1 -0
  506. package/dist/draft-P4IVYTY3.js +103 -0
  507. package/dist/draft-P4IVYTY3.js.map +1 -0
  508. package/dist/draft-UQYWDZS7.js +306 -0
  509. package/dist/draft-UQYWDZS7.js.map +1 -0
  510. package/dist/draft-YFAJHCKM.js +328 -0
  511. package/dist/draft-YFAJHCKM.js.map +1 -0
  512. package/dist/engine/index.d.ts +213 -127
  513. package/dist/engine/index.js +18 -4
  514. package/dist/{env-4P5HOGNA.js → env-FBTHZKGN.js} +12 -2
  515. package/dist/env-FBTHZKGN.js.map +1 -0
  516. package/dist/experiment-HDYTJPUY.js +1397 -0
  517. package/dist/experiment-HDYTJPUY.js.map +1 -0
  518. package/dist/export-TS5GYEMA.js +168 -0
  519. package/dist/export-TS5GYEMA.js.map +1 -0
  520. package/dist/extract-QVQFUOIK.js +113 -0
  521. package/dist/extract-QVQFUOIK.js.map +1 -0
  522. package/dist/facets-WYQUZMFJ.js +114 -0
  523. package/dist/facets-WYQUZMFJ.js.map +1 -0
  524. package/dist/favorites-7QP7BY5K.js +178 -0
  525. package/dist/favorites-7QP7BY5K.js.map +1 -0
  526. package/dist/feed-EETRO2FG.js +177 -0
  527. package/dist/feed-EETRO2FG.js.map +1 -0
  528. package/dist/feedback-SIMPRE37.js +66 -0
  529. package/dist/feedback-SIMPRE37.js.map +1 -0
  530. package/dist/feedback-record-L4MPIVML.js +177 -0
  531. package/dist/feedback-record-L4MPIVML.js.map +1 -0
  532. package/dist/fetch-DTBM3DE2.js +176 -0
  533. package/dist/fetch-DTBM3DE2.js.map +1 -0
  534. package/dist/fetch-Z7O3ZL4D.js +139 -0
  535. package/dist/fetch-Z7O3ZL4D.js.map +1 -0
  536. package/dist/find-KAQ6JDMO.js +134 -0
  537. package/dist/find-KAQ6JDMO.js.map +1 -0
  538. package/dist/fit-MY5GVZZZ.js +45 -0
  539. package/dist/fit-MY5GVZZZ.js.map +1 -0
  540. package/dist/flows-IUDXVDOS.js +247 -0
  541. package/dist/flows-IUDXVDOS.js.map +1 -0
  542. package/dist/follow-IX4XVK5Y.js +94 -0
  543. package/dist/follow-IX4XVK5Y.js.map +1 -0
  544. package/dist/follow-competitors-UZBUOYTH.js +112 -0
  545. package/dist/follow-competitors-UZBUOYTH.js.map +1 -0
  546. package/dist/following-VGOIUCIZ.js +113 -0
  547. package/dist/following-VGOIUCIZ.js.map +1 -0
  548. package/dist/fonts-EUDHI6CA.js +34 -0
  549. package/dist/fonts-EUDHI6CA.js.map +1 -0
  550. package/dist/forecast-BRSEH2H3.js +104 -0
  551. package/dist/forecast-BRSEH2H3.js.map +1 -0
  552. package/dist/forecast-QV4U7TOY.js +168 -0
  553. package/dist/forecast-QV4U7TOY.js.map +1 -0
  554. package/dist/funding-H5YO37OW.js +85 -0
  555. package/dist/funding-H5YO37OW.js.map +1 -0
  556. package/dist/funnel-JLF77MLF.js +394 -0
  557. package/dist/funnel-JLF77MLF.js.map +1 -0
  558. package/dist/ga4-YHJ2XMLC.js +55 -0
  559. package/dist/ga4-YHJ2XMLC.js.map +1 -0
  560. package/dist/generate-M2ZX5DMI.js +262 -0
  561. package/dist/generate-M2ZX5DMI.js.map +1 -0
  562. package/dist/get-4EYKCZ6F.js +59 -0
  563. package/dist/get-4EYKCZ6F.js.map +1 -0
  564. package/dist/get-637GALM2.js +63 -0
  565. package/dist/get-637GALM2.js.map +1 -0
  566. package/dist/get-AYX5HS64.js +56 -0
  567. package/dist/get-AYX5HS64.js.map +1 -0
  568. package/dist/get-AZARFR6O.js +61 -0
  569. package/dist/get-AZARFR6O.js.map +1 -0
  570. package/dist/get-EG2U7MIL.js +78 -0
  571. package/dist/get-EG2U7MIL.js.map +1 -0
  572. package/dist/get-N4BPOQCB.js +63 -0
  573. package/dist/get-N4BPOQCB.js.map +1 -0
  574. package/dist/get-RPZHLQ56.js +92 -0
  575. package/dist/get-RPZHLQ56.js.map +1 -0
  576. package/dist/gif-6PRTB2VR.js +94 -0
  577. package/dist/gif-6PRTB2VR.js.map +1 -0
  578. package/dist/google-52JRH7X3.js +136 -0
  579. package/dist/google-52JRH7X3.js.map +1 -0
  580. package/dist/google-ITTPCJ7N.js +3190 -0
  581. package/dist/google-ITTPCJ7N.js.map +1 -0
  582. package/dist/google-ads-U3JFFQLU.js +195 -0
  583. package/dist/google-ads-U3JFFQLU.js.map +1 -0
  584. package/dist/group-AAZ5QKC3.js +43 -0
  585. package/dist/group-AAZ5QKC3.js.map +1 -0
  586. package/dist/group-GSYCZORC.js +43 -0
  587. package/dist/group-GSYCZORC.js.map +1 -0
  588. package/dist/gsc-TS5T7ML2.js +30 -0
  589. package/dist/gsc-TS5T7ML2.js.map +1 -0
  590. package/dist/history-EW6LFFCX.js +67 -0
  591. package/dist/history-EW6LFFCX.js.map +1 -0
  592. package/dist/history-YTNCWSV3.js +133 -0
  593. package/dist/history-YTNCWSV3.js.map +1 -0
  594. package/dist/hubspot-LXWQNKKB.js +779 -0
  595. package/dist/hubspot-LXWQNKKB.js.map +1 -0
  596. package/dist/icon-K75KI6BV.js +137 -0
  597. package/dist/icon-K75KI6BV.js.map +1 -0
  598. package/dist/ideas-JJIHQFV4.js +35 -0
  599. package/dist/ideas-JJIHQFV4.js.map +1 -0
  600. package/dist/images-MWETBYKB.js +90 -0
  601. package/dist/images-MWETBYKB.js.map +1 -0
  602. package/dist/improve-L3BW4EQG.js +86 -0
  603. package/dist/improve-L3BW4EQG.js.map +1 -0
  604. package/dist/ingest-THFAV4NO.js +107 -0
  605. package/dist/ingest-THFAV4NO.js.map +1 -0
  606. package/dist/ingest-U6B7GR4A.js +23 -0
  607. package/dist/ingest-U6B7GR4A.js.map +1 -0
  608. package/dist/insights-FA6T6PT6.js +423 -0
  609. package/dist/insights-FA6T6PT6.js.map +1 -0
  610. package/dist/insights-PELVD4RY.js +122 -0
  611. package/dist/insights-PELVD4RY.js.map +1 -0
  612. package/dist/inspect-N2WVVWGP.js +189 -0
  613. package/dist/inspect-N2WVVWGP.js.map +1 -0
  614. package/dist/inspiration-Y2J2PUPC.js +53 -0
  615. package/dist/inspiration-Y2J2PUPC.js.map +1 -0
  616. package/dist/intent-YNAAVNHK.js +95 -0
  617. package/dist/intent-YNAAVNHK.js.map +1 -0
  618. package/dist/job-E2U4FS5P.js +202 -0
  619. package/dist/job-E2U4FS5P.js.map +1 -0
  620. package/dist/job-create-DFYCHVQ7.js +109 -0
  621. package/dist/job-create-DFYCHVQ7.js.map +1 -0
  622. package/dist/job-status-FFPMTSHB.js +74 -0
  623. package/dist/job-status-FFPMTSHB.js.map +1 -0
  624. package/dist/keep-GYZS2UTL.js +78 -0
  625. package/dist/keep-GYZS2UTL.js.map +1 -0
  626. package/dist/keyword-gap-4JKLWIBJ.js +130 -0
  627. package/dist/keyword-gap-4JKLWIBJ.js.map +1 -0
  628. package/dist/keyword-metrics-KU3OHTQK.js +197 -0
  629. package/dist/keyword-metrics-KU3OHTQK.js.map +1 -0
  630. package/dist/keywords-for-site-M4MFWMVK.js +128 -0
  631. package/dist/keywords-for-site-M4MFWMVK.js.map +1 -0
  632. package/dist/landing-7UVZ7IPP.js +28 -0
  633. package/dist/landing-7UVZ7IPP.js.map +1 -0
  634. package/dist/landings-F7LOAEJE.js +151 -0
  635. package/dist/landings-F7LOAEJE.js.map +1 -0
  636. package/dist/languages-PKYCZNUB.js +40 -0
  637. package/dist/languages-PKYCZNUB.js.map +1 -0
  638. package/dist/languages-XEJKTIFP.js +55 -0
  639. package/dist/languages-XEJKTIFP.js.map +1 -0
  640. package/dist/launches-TCFAYUA5.js +19 -0
  641. package/dist/launches-TCFAYUA5.js.map +1 -0
  642. package/dist/layerize-ZSKFIPZA.js +190 -0
  643. package/dist/layerize-ZSKFIPZA.js.map +1 -0
  644. package/dist/leads-CSRESOB2.js +293 -0
  645. package/dist/leads-CSRESOB2.js.map +1 -0
  646. package/dist/leads-MQPEA7DG.js +90 -0
  647. package/dist/leads-MQPEA7DG.js.map +1 -0
  648. package/dist/learn-K5YBUMBT.js +203 -0
  649. package/dist/learn-K5YBUMBT.js.map +1 -0
  650. package/dist/library-IP2UKNRU.js +109 -0
  651. package/dist/library-IP2UKNRU.js.map +1 -0
  652. package/dist/lighthouse-57XBJRCO.js +75 -0
  653. package/dist/lighthouse-57XBJRCO.js.map +1 -0
  654. package/dist/line-item-writes-73NR2J5L.js +208 -0
  655. package/dist/line-item-writes-73NR2J5L.js.map +1 -0
  656. package/dist/line-items-2YBGXOAQ.js +103 -0
  657. package/dist/line-items-2YBGXOAQ.js.map +1 -0
  658. package/dist/link-GVAWECJO.js +64 -0
  659. package/dist/link-GVAWECJO.js.map +1 -0
  660. package/dist/linkedin-PZDT22AT.js +1008 -0
  661. package/dist/linkedin-PZDT22AT.js.map +1 -0
  662. package/dist/list-6IKPWQGG.js +57 -0
  663. package/dist/list-6IKPWQGG.js.map +1 -0
  664. package/dist/list-CAUH3BMG.js +65 -0
  665. package/dist/list-CAUH3BMG.js.map +1 -0
  666. package/dist/list-FNDRV25Y.js +151 -0
  667. package/dist/list-FNDRV25Y.js.map +1 -0
  668. package/dist/list-GTOSN7DP.js +50 -0
  669. package/dist/list-GTOSN7DP.js.map +1 -0
  670. package/dist/list-HLJP4NVE.js +51 -0
  671. package/dist/list-HLJP4NVE.js.map +1 -0
  672. package/dist/list-LCUPF7EF.js +76 -0
  673. package/dist/list-LCUPF7EF.js.map +1 -0
  674. package/dist/list-REZGFWC5.js +63 -0
  675. package/dist/list-REZGFWC5.js.map +1 -0
  676. package/dist/list-S6MNXDTV.js +303 -0
  677. package/dist/list-S6MNXDTV.js.map +1 -0
  678. package/dist/locations-2BYWKIYA.js +67 -0
  679. package/dist/locations-2BYWKIYA.js.map +1 -0
  680. package/dist/locations-GJHHMV6Z.js +40 -0
  681. package/dist/locations-GJHHMV6Z.js.map +1 -0
  682. package/dist/log-HGDNLDUX.js +92 -0
  683. package/dist/log-HGDNLDUX.js.map +1 -0
  684. package/dist/logo-AJK2TDQU.js +18 -0
  685. package/dist/logo-AJK2TDQU.js.map +1 -0
  686. package/dist/lookup-H5GEM77H.js +22 -0
  687. package/dist/lookup-H5GEM77H.js.map +1 -0
  688. package/dist/make-BT26YJXZ.js +640 -0
  689. package/dist/make-BT26YJXZ.js.map +1 -0
  690. package/dist/map-J5EX4HOX.js +404 -0
  691. package/dist/map-J5EX4HOX.js.map +1 -0
  692. package/dist/mcp-MHDW6AFL.js +463 -0
  693. package/dist/mcp-MHDW6AFL.js.map +1 -0
  694. package/dist/media-RAGEJTZX.js +89 -0
  695. package/dist/media-RAGEJTZX.js.map +1 -0
  696. package/dist/media-RNB7JFJP.js +15 -0
  697. package/dist/media-RNB7JFJP.js.map +1 -0
  698. package/dist/media-sources-4NN3DWSG.js +32 -0
  699. package/dist/media-sources-4NN3DWSG.js.map +1 -0
  700. package/dist/members-AIWMXAQD.js +44 -0
  701. package/dist/members-AIWMXAQD.js.map +1 -0
  702. package/dist/meta-WAPZMZI7.js +69 -0
  703. package/dist/meta-WAPZMZI7.js.map +1 -0
  704. package/dist/metrics-6EHC4ESN.js +152 -0
  705. package/dist/metrics-6EHC4ESN.js.map +1 -0
  706. package/dist/models-5J4WFUD3.js +155 -0
  707. package/dist/models-5J4WFUD3.js.map +1 -0
  708. package/dist/normalize-DSFVTRXN.js +806 -0
  709. package/dist/normalize-DSFVTRXN.js.map +1 -0
  710. package/dist/normalize-ZAWN4XCS.js +141 -0
  711. package/dist/normalize-ZAWN4XCS.js.map +1 -0
  712. package/dist/options-3CZNT5KP.js +121 -0
  713. package/dist/options-3CZNT5KP.js.map +1 -0
  714. package/dist/output-DTCLVPUF.js +24 -0
  715. package/dist/output-DTCLVPUF.js.map +1 -0
  716. package/dist/page-N2ZO3O7F.js +105 -0
  717. package/dist/page-N2ZO3O7F.js.map +1 -0
  718. package/dist/pages-FQ4CBAJ2.js +66 -0
  719. package/dist/pages-FQ4CBAJ2.js.map +1 -0
  720. package/dist/performance-GOMJMHPE.js +24 -0
  721. package/dist/performance-GOMJMHPE.js.map +1 -0
  722. package/dist/pinterest-NV5XTNJE.js +96 -0
  723. package/dist/pinterest-NV5XTNJE.js.map +1 -0
  724. package/dist/pixels-CTJ43FZ4.js +108 -0
  725. package/dist/pixels-CTJ43FZ4.js.map +1 -0
  726. package/dist/pixels-HKINGZCH.js +60 -0
  727. package/dist/pixels-HKINGZCH.js.map +1 -0
  728. package/dist/plan-ZYTWLGWK.js +207 -0
  729. package/dist/plan-ZYTWLGWK.js.map +1 -0
  730. package/dist/preview-UKYLPAW2.js +169 -0
  731. package/dist/preview-UKYLPAW2.js.map +1 -0
  732. package/dist/profile-Q3PHR6FU.js +159 -0
  733. package/dist/profile-Q3PHR6FU.js.map +1 -0
  734. package/dist/promoted-tweet-writes-IYOAZTA5.js +180 -0
  735. package/dist/promoted-tweet-writes-IYOAZTA5.js.map +1 -0
  736. package/dist/promoted-tweets-G3XFD5YM.js +119 -0
  737. package/dist/promoted-tweets-G3XFD5YM.js.map +1 -0
  738. package/dist/properties-WLL6M2P6.js +101 -0
  739. package/dist/properties-WLL6M2P6.js.map +1 -0
  740. package/dist/publish-ZG4J2GTH.js +322 -0
  741. package/dist/publish-ZG4J2GTH.js.map +1 -0
  742. package/dist/query-7AGG77WH.js +61 -0
  743. package/dist/query-7AGG77WH.js.map +1 -0
  744. package/dist/query-IYZN5KHO.js +236 -0
  745. package/dist/query-IYZN5KHO.js.map +1 -0
  746. package/dist/query-UN2P6DBA.js +247 -0
  747. package/dist/query-UN2P6DBA.js.map +1 -0
  748. package/dist/questionnaire-Z2ZIKNBV.js +93 -0
  749. package/dist/questionnaire-Z2ZIKNBV.js.map +1 -0
  750. package/dist/read-GM7PQYJA.js +141 -0
  751. package/dist/read-GM7PQYJA.js.map +1 -0
  752. package/dist/reddit-FTO4SFQE.js +26 -0
  753. package/dist/reddit-FTO4SFQE.js.map +1 -0
  754. package/dist/refresh-OUENQ2FS.js +94 -0
  755. package/dist/refresh-OUENQ2FS.js.map +1 -0
  756. package/dist/release-5OG7AAFY.js +60 -0
  757. package/dist/release-5OG7AAFY.js.map +1 -0
  758. package/dist/relevant-pages-KUVDZPRU.js +99 -0
  759. package/dist/relevant-pages-KUVDZPRU.js.map +1 -0
  760. package/dist/remove-33HI27KM.js +50 -0
  761. package/dist/remove-33HI27KM.js.map +1 -0
  762. package/dist/remove-GOYW2G4R.js +48 -0
  763. package/dist/remove-GOYW2G4R.js.map +1 -0
  764. package/dist/reopen-KFFYE53A.js +63 -0
  765. package/dist/reopen-KFFYE53A.js.map +1 -0
  766. package/dist/rerun-P6XACA5Z.js +86 -0
  767. package/dist/rerun-P6XACA5Z.js.map +1 -0
  768. package/dist/research-BEO3JMZI.js +262 -0
  769. package/dist/research-BEO3JMZI.js.map +1 -0
  770. package/dist/research-QOC53DLS.js +62 -0
  771. package/dist/research-QOC53DLS.js.map +1 -0
  772. package/dist/reset-E3OWE2WF.js +54 -0
  773. package/dist/reset-E3OWE2WF.js.map +1 -0
  774. package/dist/reset-I7M3HYMB.js +54 -0
  775. package/dist/reset-I7M3HYMB.js.map +1 -0
  776. package/dist/resolve-GP7BHM6L.js +121 -0
  777. package/dist/resolve-GP7BHM6L.js.map +1 -0
  778. package/dist/retry-33ZJCNQI.js +62 -0
  779. package/dist/retry-33ZJCNQI.js.map +1 -0
  780. package/dist/retry-X5PU7QO3.js +60 -0
  781. package/dist/retry-X5PU7QO3.js.map +1 -0
  782. package/dist/retry-failed-BEFWRV4Z.js +45 -0
  783. package/dist/retry-failed-BEFWRV4Z.js.map +1 -0
  784. package/dist/run-REK3TEGY.js +65 -0
  785. package/dist/run-REK3TEGY.js.map +1 -0
  786. package/dist/run-TH2662IC.js +61 -0
  787. package/dist/run-TH2662IC.js.map +1 -0
  788. package/dist/scaffold-ad-3WDRKUFT.js +1550 -0
  789. package/dist/scaffold-ad-3WDRKUFT.js.map +1 -0
  790. package/dist/scaffold-static-ad-X5NT52NF.js +973 -0
  791. package/dist/scaffold-static-ad-X5NT52NF.js.map +1 -0
  792. package/dist/scaffold-video-WZPVACLE.js +874 -0
  793. package/dist/scaffold-video-WZPVACLE.js.map +1 -0
  794. package/dist/schedule-KQ7UIR3N.js +66 -0
  795. package/dist/schedule-KQ7UIR3N.js.map +1 -0
  796. package/dist/schedule-V4UHGY3V.js +61 -0
  797. package/dist/schedule-V4UHGY3V.js.map +1 -0
  798. package/dist/scheduled-agents-KLQ5H2PA.js +49 -0
  799. package/dist/scheduled-agents-KLQ5H2PA.js.map +1 -0
  800. package/dist/schema-G3T4PZDI.js +132 -0
  801. package/dist/schema-G3T4PZDI.js.map +1 -0
  802. package/dist/schema-QXTDLZVC.js +63 -0
  803. package/dist/schema-QXTDLZVC.js.map +1 -0
  804. package/dist/scrape-7YKJWFZE.js +2241 -0
  805. package/dist/scrape-7YKJWFZE.js.map +1 -0
  806. package/dist/screenshot-ZHBSG3SI.js +102 -0
  807. package/dist/screenshot-ZHBSG3SI.js.map +1 -0
  808. package/dist/search-332KFYZ6.js +224 -0
  809. package/dist/search-332KFYZ6.js.map +1 -0
  810. package/dist/search-4PBMXXUY.js +91 -0
  811. package/dist/search-4PBMXXUY.js.map +1 -0
  812. package/dist/search-6XKEGABN.js +174 -0
  813. package/dist/search-6XKEGABN.js.map +1 -0
  814. package/dist/search-AVNUU6TJ.js +26 -0
  815. package/dist/search-AVNUU6TJ.js.map +1 -0
  816. package/dist/search-F5INRFFK.js +92 -0
  817. package/dist/search-F5INRFFK.js.map +1 -0
  818. package/dist/search-copy-DZVBYG2B.js +168 -0
  819. package/dist/search-copy-DZVBYG2B.js.map +1 -0
  820. package/dist/seeds-5JTQN5WI.js +101 -0
  821. package/dist/seeds-5JTQN5WI.js.map +1 -0
  822. package/dist/select-N2V55BEX.js +96 -0
  823. package/dist/select-N2V55BEX.js.map +1 -0
  824. package/dist/sends-3L6QBS46.js +309 -0
  825. package/dist/sends-3L6QBS46.js.map +1 -0
  826. package/dist/sequences-YKFV7BDH.js +146 -0
  827. package/dist/sequences-YKFV7BDH.js.map +1 -0
  828. package/dist/set-prompt-7HVHERRU.js +188 -0
  829. package/dist/set-prompt-7HVHERRU.js.map +1 -0
  830. package/dist/setup-links-4VVNQVPU.js +141 -0
  831. package/dist/setup-links-4VVNQVPU.js.map +1 -0
  832. package/dist/{shared-J7DQZ2ED.js → shared-QAMP7FZV.js} +8 -6
  833. package/dist/shared-QAMP7FZV.js.map +1 -0
  834. package/dist/shopify-FSHM5M4I.js +3346 -0
  835. package/dist/shopify-FSHM5M4I.js.map +1 -0
  836. package/dist/site-Q2HTRLIW.js +177 -0
  837. package/dist/site-Q2HTRLIW.js.map +1 -0
  838. package/dist/sitemaps-XPGLW24S.js +87 -0
  839. package/dist/sitemaps-XPGLW24S.js.map +1 -0
  840. package/dist/sites-WMBY2HJV.js +101 -0
  841. package/dist/sites-WMBY2HJV.js.map +1 -0
  842. package/dist/skills-3HEILQCU.js +47 -0
  843. package/dist/skills-3HEILQCU.js.map +1 -0
  844. package/dist/sources-2KN4RJNJ.js +30 -0
  845. package/dist/sources-2KN4RJNJ.js.map +1 -0
  846. package/dist/sources-4I2YMS2K.js +421 -0
  847. package/dist/sources-4I2YMS2K.js.map +1 -0
  848. package/dist/stale-IN7WSBLC.js +66 -0
  849. package/dist/stale-IN7WSBLC.js.map +1 -0
  850. package/dist/stats-GNILHSKK.js +34 -0
  851. package/dist/stats-GNILHSKK.js.map +1 -0
  852. package/dist/status-6SLKZWNR.js +62 -0
  853. package/dist/status-6SLKZWNR.js.map +1 -0
  854. package/dist/sticker-KCV3VZHY.js +94 -0
  855. package/dist/sticker-KCV3VZHY.js.map +1 -0
  856. package/dist/stock-VTORKR4C.js +179 -0
  857. package/dist/stock-VTORKR4C.js.map +1 -0
  858. package/dist/studio-QCRA6BY5.js +49 -0
  859. package/dist/studio-QCRA6BY5.js.map +1 -0
  860. package/dist/sync-455DB46Y.js +54 -0
  861. package/dist/sync-455DB46Y.js.map +1 -0
  862. package/dist/sync-A4KKQ3B6.js +265 -0
  863. package/dist/sync-A4KKQ3B6.js.map +1 -0
  864. package/dist/sync-LFZV5NBN.js +54 -0
  865. package/dist/sync-LFZV5NBN.js.map +1 -0
  866. package/dist/sync-definition-IJISZ5VQ.js +55 -0
  867. package/dist/sync-definition-IJISZ5VQ.js.map +1 -0
  868. package/dist/tag-manager-E7QTXBWQ.js +43 -0
  869. package/dist/tag-manager-E7QTXBWQ.js.map +1 -0
  870. package/dist/tags-6OAZOQYO.js +26 -0
  871. package/dist/tags-6OAZOQYO.js.map +1 -0
  872. package/dist/tags-6YRMDX3R.js +20 -0
  873. package/dist/tags-6YRMDX3R.js.map +1 -0
  874. package/dist/tags-EWXZSZYE.js +20 -0
  875. package/dist/tags-EWXZSZYE.js.map +1 -0
  876. package/dist/tags-SZCNPE2D.js +224 -0
  877. package/dist/tags-SZCNPE2D.js.map +1 -0
  878. package/dist/tags-TCFFP534.js +20 -0
  879. package/dist/tags-TCFFP534.js.map +1 -0
  880. package/dist/targeting-constants-D64YO3E7.js +118 -0
  881. package/dist/targeting-constants-D64YO3E7.js.map +1 -0
  882. package/dist/targeting-criteria-ESOC7KNX.js +113 -0
  883. package/dist/targeting-criteria-ESOC7KNX.js.map +1 -0
  884. package/dist/targets-IPBEB5KU.js +102 -0
  885. package/dist/targets-IPBEB5KU.js.map +1 -0
  886. package/dist/templates-IJ7FR3LA.js +178 -0
  887. package/dist/templates-IJ7FR3LA.js.map +1 -0
  888. package/dist/testimonials-IXS7CP6P.js +32 -0
  889. package/dist/testimonials-IXS7CP6P.js.map +1 -0
  890. package/dist/themes-MXNKJWMW.js +94 -0
  891. package/dist/themes-MXNKJWMW.js.map +1 -0
  892. package/dist/top-companies-NO6L2V6M.js +108 -0
  893. package/dist/top-companies-NO6L2V6M.js.map +1 -0
  894. package/dist/translate-QCE5ZB7M.js +600 -0
  895. package/dist/translate-QCE5ZB7M.js.map +1 -0
  896. package/dist/triggers-KXUDMDSA.js +141 -0
  897. package/dist/triggers-KXUDMDSA.js.map +1 -0
  898. package/dist/tweets-ZUKQAAUQ.js +123 -0
  899. package/dist/tweets-ZUKQAAUQ.js.map +1 -0
  900. package/dist/unfollow-A4JVCJBF.js +46 -0
  901. package/dist/unfollow-A4JVCJBF.js.map +1 -0
  902. package/dist/unlink-E3N36NYQ.js +67 -0
  903. package/dist/unlink-E3N36NYQ.js.map +1 -0
  904. package/dist/unstage-TRMHSHED.js +84 -0
  905. package/dist/unstage-TRMHSHED.js.map +1 -0
  906. package/dist/unstage-ZRLLCSQF.js +95 -0
  907. package/dist/unstage-ZRLLCSQF.js.map +1 -0
  908. package/dist/update-EWGWAXAQ.js +142 -0
  909. package/dist/update-EWGWAXAQ.js.map +1 -0
  910. package/dist/update-OKOQE7U2.js +155 -0
  911. package/dist/update-OKOQE7U2.js.map +1 -0
  912. package/dist/update-VSFHID2D.js +63 -0
  913. package/dist/update-VSFHID2D.js.map +1 -0
  914. package/dist/update-XGCGQDJ4.js +98 -0
  915. package/dist/update-XGCGQDJ4.js.map +1 -0
  916. package/dist/upload-BOYMDDEQ.js +126 -0
  917. package/dist/upload-BOYMDDEQ.js.map +1 -0
  918. package/dist/upload-XEHWYMJG.js +150 -0
  919. package/dist/upload-XEHWYMJG.js.map +1 -0
  920. package/dist/upscale-I5P2OHTN.js +109 -0
  921. package/dist/upscale-I5P2OHTN.js.map +1 -0
  922. package/dist/url-options-PCZEQE66.js +130 -0
  923. package/dist/url-options-PCZEQE66.js.map +1 -0
  924. package/dist/url-params-DV37GEQF.js +98 -0
  925. package/dist/url-params-DV37GEQF.js.map +1 -0
  926. package/dist/use-U4HG2NF3.js +95 -0
  927. package/dist/use-U4HG2NF3.js.map +1 -0
  928. package/dist/validate-5AV4FJZ5.js +91 -0
  929. package/dist/validate-5AV4FJZ5.js.map +1 -0
  930. package/dist/variant-FOVE6URJ.js +338 -0
  931. package/dist/variant-FOVE6URJ.js.map +1 -0
  932. package/dist/videos-IJ67PPJV.js +39 -0
  933. package/dist/videos-IJ67PPJV.js.map +1 -0
  934. package/dist/view-HRI3FHCH.js +121 -0
  935. package/dist/view-HRI3FHCH.js.map +1 -0
  936. package/dist/viewer-check-JYUE24M6.js +68 -0
  937. package/dist/viewer-check-JYUE24M6.js.map +1 -0
  938. package/dist/web-LJ36FRWD.js +140 -0
  939. package/dist/web-LJ36FRWD.js.map +1 -0
  940. package/dist/winners-SMMDN6LW.js +113 -0
  941. package/dist/winners-SMMDN6LW.js.map +1 -0
  942. package/dist/winning-ads-JIG2MQHJ.js +84 -0
  943. package/dist/winning-ads-JIG2MQHJ.js.map +1 -0
  944. package/dist/write-commands-7Z34WG2J.js +206 -0
  945. package/dist/write-commands-7Z34WG2J.js.map +1 -0
  946. package/dist/write-commands-BLT2SEC4.js +713 -0
  947. package/dist/write-commands-BLT2SEC4.js.map +1 -0
  948. package/dist/write-commands-GOZU6ENR.js +1015 -0
  949. package/dist/write-commands-GOZU6ENR.js.map +1 -0
  950. package/dist/write-commands-KA3QXVSF.js +737 -0
  951. package/dist/write-commands-KA3QXVSF.js.map +1 -0
  952. package/dist/x-6HBVXIKH.js +47 -0
  953. package/dist/x-6HBVXIKH.js.map +1 -0
  954. package/package.json +9 -2
  955. package/dist/chunk-CHJOTJTZ.js +0 -9989
  956. package/dist/chunk-CHJOTJTZ.js.map +0 -1
  957. package/dist/chunk-HJEMOSPH.js +0 -1292
  958. package/dist/chunk-HJEMOSPH.js.map +0 -1
  959. package/dist/chunk-MF7YA62W.js.map +0 -1
  960. package/dist/chunk-VLUGGVJL.js.map +0 -1
  961. package/dist/chunk-VZEDAFAR.js.map +0 -1
  962. package/dist/chunk-XHC4LMK4.js.map +0 -1
  963. package/dist/client-GR6YL3YX.js +0 -17
  964. package/dist/output-NMQXZF3Z.js +0 -18
  965. /package/dist/{client-GR6YL3YX.js.map → chunk-YQSBHWOI.js.map} +0 -0
  966. /package/dist/{env-4P5HOGNA.js.map → client-26SAJ46D.js.map} +0 -0
  967. /package/dist/{output-NMQXZF3Z.js.map → connect-WYUYS5V4.js.map} +0 -0
  968. /package/dist/{shared-J7DQZ2ED.js.map → customers-HYE7N2H5.js.map} +0 -0
@@ -0,0 +1,134 @@
1
+ // src/commands/ads/field-descriptions.ts
2
+ var FIELD_DESCRIPTIONS = {
3
+ // Customer
4
+ "customer.id": "Google Ads account ID",
5
+ "customer.descriptive_name": "Account display name",
6
+ "customer.currency_code": "Account currency (e.g. USD, EUR)",
7
+ "customer.time_zone": "Account timezone (e.g. America/New_York)",
8
+ // Campaign
9
+ "campaign.id": "Unique campaign identifier",
10
+ "campaign.name": "Campaign display name",
11
+ "campaign.status": "ENABLED, PAUSED, or REMOVED",
12
+ "campaign.advertising_channel_type": "Campaign type: SEARCH, DISPLAY, SHOPPING, VIDEO, PERFORMANCE_MAX, DEMAND_GEN",
13
+ "campaign.bidding_strategy_type": "Bidding strategy (TARGET_CPA, TARGET_ROAS, MAXIMIZE_CONVERSIONS, etc.)",
14
+ "campaign.primary_status": "Whether the campaign can serve: ELIGIBLE, PAUSED, REMOVED, ENDED, PENDING, MISCONFIGURED, LIMITED, LEARNING, NOT_ELIGIBLE. Unlike the keyword equivalent, LIMITED is a real value here \u2014 but Google publishes no reason-to-status mapping, so decide 'Limited by budget' from primary_status_reasons, not from this field.",
15
+ "campaign.primary_status_reasons": "Why the campaign is limited or not serving (repeated field \u2014 an array). BUDGET_CONSTRAINED is 'Limited by budget'; BUDGET_MISCONFIGURED is a broken budget setting, not a cap. Since 17 Aug 2026 a budget-limited campaign on a target-based strategy delivers toward its target instead of toward its recent actual cost, so BUDGET_CONSTRAINED is the flag that says a target above actual now costs money. BIDDING_STRATEGY_LEARNING means the bidding system is still adjusting to a change.",
16
+ "campaign.target_cpa.target_cpa_micros": "Target CPA in micros on a standalone Target CPA strategy",
17
+ "campaign.maximize_conversions.target_cpa_micros": "Target CPA in micros when the target is held inside a Maximize Conversions strategy \u2014 the shape Google uses on Search",
18
+ "campaign.target_roas.target_roas": "Target ROAS as a ratio (2.5 = 250%) on a standalone Target ROAS strategy",
19
+ "campaign.maximize_conversion_value.target_roas": "Target ROAS as a ratio when held inside a Maximize Conversion Value strategy",
20
+ "campaign.target_cpc.target_cpc_micros": "Target CPC in micros on a Demand Gen Target CPC strategy. Governed by the same August 2026 change as Target CPA/ROAS: on a budget-limited campaign it is what delivery moves toward, not a ceiling.",
21
+ "ad_group.target_cpc_micros": "Ad-group override of the campaign's Demand Gen target CPC, in micros",
22
+ "campaign.start_date": "Campaign start date (YYYY-MM-DD)",
23
+ "campaign.end_date": "Campaign end date (YYYY-MM-DD), blank if ongoing",
24
+ // Campaign budget
25
+ "campaign_budget.amount_micros": "Daily budget in micros (\xF7 1,000,000 for actual currency)",
26
+ // Ad group
27
+ "ad_group.id": "Unique ad group identifier",
28
+ "ad_group.name": "Ad group display name",
29
+ "ad_group.status": "ENABLED, PAUSED, or REMOVED",
30
+ "ad_group.type": "Ad group type (SEARCH_STANDARD, DISPLAY_STANDARD, etc.)",
31
+ // Ad group ad
32
+ "ad_group_ad.ad.id": "Unique ad identifier",
33
+ "ad_group_ad.ad.final_urls": "Landing page URLs (array)",
34
+ "ad_group_ad.ad.type": "Ad format (RESPONSIVE_SEARCH_AD, etc.)",
35
+ "ad_group_ad.status": "ENABLED, PAUSED, or REMOVED",
36
+ "ad_group_ad.ad.responsive_search_ad.headlines": "Ad headline variations (array)",
37
+ "ad_group_ad.ad.responsive_search_ad.descriptions": "Ad description variations (array)",
38
+ // Keywords
39
+ "ad_group_criterion.criterion_id": "Keyword criterion id \u2014 derived from text + match type, so every copy of the same keyword across ad groups shares it. Pair with ad_group.id to identify one copy (writes take customers/<cid>/adGroupCriteria/<adGroupId>~<criterionId>)",
40
+ "ad_group_criterion.keyword.text": "The keyword text",
41
+ "ad_group_criterion.keyword.match_type": "EXACT, PHRASE, or BROAD",
42
+ "ad_group_criterion.status": "ENABLED, PAUSED, or REMOVED",
43
+ "ad_group_criterion.quality_info.quality_score": "Quality score 1-10 (higher is better)",
44
+ "ad_group_criterion.quality_info.creative_quality_score": "Ad relevance bucket: ABOVE_AVERAGE, AVERAGE, BELOW_AVERAGE",
45
+ "ad_group_criterion.quality_info.post_click_quality_score": "Landing page experience bucket: ABOVE_AVERAGE, AVERAGE, BELOW_AVERAGE",
46
+ "ad_group_criterion.quality_info.search_predicted_ctr": "Expected click-through rate bucket: ABOVE_AVERAGE, AVERAGE, BELOW_AVERAGE",
47
+ "ad_group_criterion.primary_status": "Whether the keyword can serve: ELIGIBLE, PAUSED, REMOVED, PENDING, NOT_ELIGIBLE. There is no LIMITED value \u2014 Google Ads' 'Eligible (Limited)' is ELIGIBLE plus a limiting entry in primary_status_reasons, so read both.",
48
+ "ad_group_criterion.primary_status_reasons": "Why the keyword is in that status (array). AD_GROUP_CRITERION_BELOW_FIRST_PAGE_BID and AD_GROUP_CRITERION_LOW_QUALITY are the two that render as '(Limited)'; the CAMPAIGN_*/AD_GROUP_* entries just restate a paused or removed parent.",
49
+ "ad_group_criterion.system_serving_status": "ELIGIBLE or RARELY_SERVED (too few searches to show)",
50
+ "ad_group_criterion.approval_status": "Ad-approval state: APPROVED, DISAPPROVED, PENDING_REVIEW, UNDER_REVIEW",
51
+ "ad_group_criterion.disapproval_reasons": "Policy reasons the keyword was disapproved (array)",
52
+ "ad_group_criterion.cpc_bid_micros": "Max CPC bid set on this keyword, in micros (\xF7 1,000,000)",
53
+ "ad_group_criterion.effective_cpc_bid_micros": "Max CPC actually in force, in micros (\xF7 1,000,000) \u2014 the keyword's own bid, or the ad group's when the keyword has none",
54
+ "ad_group_criterion.effective_cpc_bid_source": "Where the effective max CPC comes from: ADGROUP, CRITERION, or CAMPAIGN_BIDDING_STRATEGY",
55
+ "ad_group_criterion.position_estimates.first_page_cpc_micros": "Bid estimated to reach the first page of results, in micros (\xF7 1,000,000). The number in Google Ads' 'Below first page bid (\u20AC3.63)' label \u2014 compare it against effective_cpc_bid_micros.",
56
+ "ad_group_criterion.position_estimates.top_of_page_cpc_micros": "Bid estimated to reach the top of the first page, in micros (\xF7 1,000,000)",
57
+ "ad_group_criterion.position_estimates.first_position_cpc_micros": "Bid estimated to reach the first ad position, in micros (\xF7 1,000,000)",
58
+ // Search terms
59
+ "search_term_view.search_term": "Actual user search query that triggered the ad",
60
+ "search_term_view.status": "Whether the search term is added, excluded, or none",
61
+ // Metrics
62
+ "metrics.impressions": "Times ads were shown (integer)",
63
+ "metrics.clicks": "Total clicks (integer)",
64
+ "metrics.cost_micros": "Total cost in micros (\xF7 1,000,000 for actual currency). Use 'currency' command for account currency.",
65
+ "metrics.cost": "Total cost in actual currency (already converted from micros)",
66
+ "metrics.conversions": "Conversion count (can be fractional from attribution models)",
67
+ "metrics.conversions_value": "Revenue from conversions in actual currency",
68
+ "metrics.all_conversions": "All conversions including view-through",
69
+ "metrics.all_conversions_value": "Total attributed revenue including view-through",
70
+ "metrics.ctr": "Click-through rate as decimal (0.05 = 5%)",
71
+ "metrics.average_cpc": "Average cost per click in micros (\xF7 1,000,000)",
72
+ "metrics.average_cpm": "Average cost per 1000 impressions in micros (\xF7 1,000,000)",
73
+ "metrics.search_impression_share": "Impression share as decimal (0.0\u20131.0)",
74
+ "metrics.search_budget_lost_impression_share": "Share of impressions lost because the budget ran out, as a decimal (0.0\u20131.0). The corroborating signal for a 'Limited by budget' campaign \u2014 a high value here alongside a target above actual cost per conversion is the combination that now raises spend.",
75
+ "metrics.cost_per_conversion": "Actual cost per conversion in micros (\xF7 1,000,000) \u2014 compare against the campaign's target",
76
+ "metrics.interaction_rate": "Interaction rate as decimal",
77
+ "metrics.video_views": "Total video views (integer)",
78
+ "metrics.video_view_rate": "Video view rate as decimal",
79
+ // Segments
80
+ "segments.date": "Date (YYYY-MM-DD format)",
81
+ "segments.device": "DESKTOP, MOBILE, TABLET, or OTHER",
82
+ "segments.day_of_week": "Day of week (MONDAY, TUESDAY, etc.)",
83
+ "segments.ad_network_type": "Network: SEARCH, SEARCH_PARTNERS, CONTENT, YOUTUBE_SEARCH, etc.",
84
+ "segments.product_title": "Shopping product title",
85
+ "segments.product_item_id": "Shopping product ID",
86
+ "segments.product_brand": "Shopping product brand",
87
+ "segments.product_type_l1": "Shopping product type (level 1)",
88
+ // Assets
89
+ "asset.type": "Asset type: IMAGE, YOUTUBE_VIDEO, TEXT, LEAD_FORM, etc.",
90
+ "asset.text_asset.text": "Text asset content",
91
+ "asset.image_asset.full_size.url": "Full-size image URL",
92
+ "asset.youtube_video_asset.youtube_video_id": "YouTube video ID",
93
+ "asset.youtube_video_asset.youtube_video_title": "YouTube video title",
94
+ "asset_group.name": "Asset group display name",
95
+ "asset_group.status": "ENABLED, PAUSED, or REMOVED",
96
+ "asset_group_asset.field_type": "Where the asset is used (HEADLINE, DESCRIPTION, LOGO, etc.)",
97
+ "asset_group_asset.primary_status": "Whether the asset serves: ELIGIBLE, LIMITED, NOT_ELIGIBLE, PAUSED, REMOVED, PENDING",
98
+ "asset_group_asset.primary_status_reasons": "Why the asset is not fully serving (policy, pending review, paused parent \u2026)",
99
+ // Change events (field-level detail, last 30 days)
100
+ "change_event.change_date_time": "When the change occurred (ISO 8601)",
101
+ "change_event.change_resource_type": "What was changed: CAMPAIGN, AD_GROUP, AD, etc.",
102
+ "change_event.resource_change_operation": "CREATE, UPDATE, or REMOVE",
103
+ "change_event.user_email": "Email of user who made the change",
104
+ // Change status (which resources changed, last 90 days — no values, no user)
105
+ "change_status.last_change_date_time": "When this resource last changed (ISO 8601)",
106
+ "change_status.resource_type": "What changed: CAMPAIGN, AD_GROUP, AD_GROUP_AD, AD_GROUP_CRITERION, etc.",
107
+ "change_status.resource_status": "ADDED, CHANGED, or REMOVED \u2014 not the old or new value",
108
+ "change_status.resource_name": "Identifier of the changed resource; query it to read its current values",
109
+ "change_status.campaign": "Resource name of the campaign the change belongs to",
110
+ "change_status.ad_group": "Resource name of the ad group the change belongs to",
111
+ "change_status.ad_group_ad": "Resource name of the changed ad",
112
+ "change_status.ad_group_criterion": "Resource name of the changed keyword or criterion",
113
+ "change_status.campaign_criterion": "Resource name of the changed campaign-level criterion",
114
+ // Landing pages
115
+ "landing_page_view.unexpanded_final_url": "Landing page URL",
116
+ // Geo
117
+ "geo_target_constant.name": "Geographic location name",
118
+ "geo_target_constant.resource_name": "Geo target resource identifier"
119
+ };
120
+ function getFieldDescriptions(fields) {
121
+ const result = {};
122
+ for (const field of fields) {
123
+ const desc = FIELD_DESCRIPTIONS[field];
124
+ if (desc) {
125
+ result[field] = desc;
126
+ }
127
+ }
128
+ return result;
129
+ }
130
+
131
+ export {
132
+ getFieldDescriptions
133
+ };
134
+ //# sourceMappingURL=chunk-JPK34QPS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/ads/field-descriptions.ts"],"sourcesContent":["const FIELD_DESCRIPTIONS: Record<string, string> = {\n // Customer\n \"customer.id\": \"Google Ads account ID\",\n \"customer.descriptive_name\": \"Account display name\",\n \"customer.currency_code\": \"Account currency (e.g. USD, EUR)\",\n \"customer.time_zone\": \"Account timezone (e.g. America/New_York)\",\n\n // Campaign\n \"campaign.id\": \"Unique campaign identifier\",\n \"campaign.name\": \"Campaign display name\",\n \"campaign.status\": \"ENABLED, PAUSED, or REMOVED\",\n \"campaign.advertising_channel_type\": \"Campaign type: SEARCH, DISPLAY, SHOPPING, VIDEO, PERFORMANCE_MAX, DEMAND_GEN\",\n \"campaign.bidding_strategy_type\": \"Bidding strategy (TARGET_CPA, TARGET_ROAS, MAXIMIZE_CONVERSIONS, etc.)\",\n \"campaign.primary_status\":\n \"Whether the campaign can serve: ELIGIBLE, PAUSED, REMOVED, ENDED, PENDING, MISCONFIGURED, LIMITED, LEARNING, NOT_ELIGIBLE. Unlike the keyword equivalent, LIMITED is a real value here — but Google publishes no reason-to-status mapping, so decide 'Limited by budget' from primary_status_reasons, not from this field.\",\n \"campaign.primary_status_reasons\":\n \"Why the campaign is limited or not serving (repeated field — an array). BUDGET_CONSTRAINED is 'Limited by budget'; BUDGET_MISCONFIGURED is a broken budget setting, not a cap. Since 17 Aug 2026 a budget-limited campaign on a target-based strategy delivers toward its target instead of toward its recent actual cost, so BUDGET_CONSTRAINED is the flag that says a target above actual now costs money. BIDDING_STRATEGY_LEARNING means the bidding system is still adjusting to a change.\",\n \"campaign.target_cpa.target_cpa_micros\": \"Target CPA in micros on a standalone Target CPA strategy\",\n \"campaign.maximize_conversions.target_cpa_micros\":\n \"Target CPA in micros when the target is held inside a Maximize Conversions strategy — the shape Google uses on Search\",\n \"campaign.target_roas.target_roas\": \"Target ROAS as a ratio (2.5 = 250%) on a standalone Target ROAS strategy\",\n \"campaign.maximize_conversion_value.target_roas\":\n \"Target ROAS as a ratio when held inside a Maximize Conversion Value strategy\",\n \"campaign.target_cpc.target_cpc_micros\":\n \"Target CPC in micros on a Demand Gen Target CPC strategy. Governed by the same August 2026 change as Target CPA/ROAS: on a budget-limited campaign it is what delivery moves toward, not a ceiling.\",\n \"ad_group.target_cpc_micros\": \"Ad-group override of the campaign's Demand Gen target CPC, in micros\",\n \"campaign.start_date\": \"Campaign start date (YYYY-MM-DD)\",\n \"campaign.end_date\": \"Campaign end date (YYYY-MM-DD), blank if ongoing\",\n\n // Campaign budget\n \"campaign_budget.amount_micros\": \"Daily budget in micros (÷ 1,000,000 for actual currency)\",\n\n // Ad group\n \"ad_group.id\": \"Unique ad group identifier\",\n \"ad_group.name\": \"Ad group display name\",\n \"ad_group.status\": \"ENABLED, PAUSED, or REMOVED\",\n \"ad_group.type\": \"Ad group type (SEARCH_STANDARD, DISPLAY_STANDARD, etc.)\",\n\n // Ad group ad\n \"ad_group_ad.ad.id\": \"Unique ad identifier\",\n \"ad_group_ad.ad.final_urls\": \"Landing page URLs (array)\",\n \"ad_group_ad.ad.type\": \"Ad format (RESPONSIVE_SEARCH_AD, etc.)\",\n \"ad_group_ad.status\": \"ENABLED, PAUSED, or REMOVED\",\n \"ad_group_ad.ad.responsive_search_ad.headlines\": \"Ad headline variations (array)\",\n \"ad_group_ad.ad.responsive_search_ad.descriptions\": \"Ad description variations (array)\",\n\n // Keywords\n \"ad_group_criterion.criterion_id\":\n \"Keyword criterion id — derived from text + match type, so every copy of the same keyword across ad groups shares it. Pair with ad_group.id to identify one copy (writes take customers/<cid>/adGroupCriteria/<adGroupId>~<criterionId>)\",\n \"ad_group_criterion.keyword.text\": \"The keyword text\",\n \"ad_group_criterion.keyword.match_type\": \"EXACT, PHRASE, or BROAD\",\n \"ad_group_criterion.status\": \"ENABLED, PAUSED, or REMOVED\",\n \"ad_group_criterion.quality_info.quality_score\": \"Quality score 1-10 (higher is better)\",\n \"ad_group_criterion.quality_info.creative_quality_score\":\n \"Ad relevance bucket: ABOVE_AVERAGE, AVERAGE, BELOW_AVERAGE\",\n \"ad_group_criterion.quality_info.post_click_quality_score\":\n \"Landing page experience bucket: ABOVE_AVERAGE, AVERAGE, BELOW_AVERAGE\",\n \"ad_group_criterion.quality_info.search_predicted_ctr\":\n \"Expected click-through rate bucket: ABOVE_AVERAGE, AVERAGE, BELOW_AVERAGE\",\n \"ad_group_criterion.primary_status\":\n \"Whether the keyword can serve: ELIGIBLE, PAUSED, REMOVED, PENDING, NOT_ELIGIBLE. There is no LIMITED value — Google Ads' 'Eligible (Limited)' is ELIGIBLE plus a limiting entry in primary_status_reasons, so read both.\",\n \"ad_group_criterion.primary_status_reasons\":\n \"Why the keyword is in that status (array). AD_GROUP_CRITERION_BELOW_FIRST_PAGE_BID and AD_GROUP_CRITERION_LOW_QUALITY are the two that render as '(Limited)'; the CAMPAIGN_*/AD_GROUP_* entries just restate a paused or removed parent.\",\n \"ad_group_criterion.system_serving_status\": \"ELIGIBLE or RARELY_SERVED (too few searches to show)\",\n \"ad_group_criterion.approval_status\": \"Ad-approval state: APPROVED, DISAPPROVED, PENDING_REVIEW, UNDER_REVIEW\",\n \"ad_group_criterion.disapproval_reasons\": \"Policy reasons the keyword was disapproved (array)\",\n \"ad_group_criterion.cpc_bid_micros\": \"Max CPC bid set on this keyword, in micros (÷ 1,000,000)\",\n \"ad_group_criterion.effective_cpc_bid_micros\":\n \"Max CPC actually in force, in micros (÷ 1,000,000) — the keyword's own bid, or the ad group's when the keyword has none\",\n \"ad_group_criterion.effective_cpc_bid_source\":\n \"Where the effective max CPC comes from: ADGROUP, CRITERION, or CAMPAIGN_BIDDING_STRATEGY\",\n \"ad_group_criterion.position_estimates.first_page_cpc_micros\":\n \"Bid estimated to reach the first page of results, in micros (÷ 1,000,000). The number in Google Ads' 'Below first page bid (€3.63)' label — compare it against effective_cpc_bid_micros.\",\n \"ad_group_criterion.position_estimates.top_of_page_cpc_micros\":\n \"Bid estimated to reach the top of the first page, in micros (÷ 1,000,000)\",\n \"ad_group_criterion.position_estimates.first_position_cpc_micros\":\n \"Bid estimated to reach the first ad position, in micros (÷ 1,000,000)\",\n\n // Search terms\n \"search_term_view.search_term\": \"Actual user search query that triggered the ad\",\n \"search_term_view.status\": \"Whether the search term is added, excluded, or none\",\n\n // Metrics\n \"metrics.impressions\": \"Times ads were shown (integer)\",\n \"metrics.clicks\": \"Total clicks (integer)\",\n \"metrics.cost_micros\":\n \"Total cost in micros (÷ 1,000,000 for actual currency). Use 'currency' command for account currency.\",\n \"metrics.cost\": \"Total cost in actual currency (already converted from micros)\",\n \"metrics.conversions\": \"Conversion count (can be fractional from attribution models)\",\n \"metrics.conversions_value\": \"Revenue from conversions in actual currency\",\n \"metrics.all_conversions\": \"All conversions including view-through\",\n \"metrics.all_conversions_value\": \"Total attributed revenue including view-through\",\n \"metrics.ctr\": \"Click-through rate as decimal (0.05 = 5%)\",\n \"metrics.average_cpc\": \"Average cost per click in micros (÷ 1,000,000)\",\n \"metrics.average_cpm\": \"Average cost per 1000 impressions in micros (÷ 1,000,000)\",\n \"metrics.search_impression_share\": \"Impression share as decimal (0.0–1.0)\",\n \"metrics.search_budget_lost_impression_share\":\n \"Share of impressions lost because the budget ran out, as a decimal (0.0–1.0). The corroborating signal for a 'Limited by budget' campaign — a high value here alongside a target above actual cost per conversion is the combination that now raises spend.\",\n \"metrics.cost_per_conversion\":\n \"Actual cost per conversion in micros (÷ 1,000,000) — compare against the campaign's target\",\n \"metrics.interaction_rate\": \"Interaction rate as decimal\",\n \"metrics.video_views\": \"Total video views (integer)\",\n \"metrics.video_view_rate\": \"Video view rate as decimal\",\n\n // Segments\n \"segments.date\": \"Date (YYYY-MM-DD format)\",\n \"segments.device\": \"DESKTOP, MOBILE, TABLET, or OTHER\",\n \"segments.day_of_week\": \"Day of week (MONDAY, TUESDAY, etc.)\",\n \"segments.ad_network_type\": \"Network: SEARCH, SEARCH_PARTNERS, CONTENT, YOUTUBE_SEARCH, etc.\",\n \"segments.product_title\": \"Shopping product title\",\n \"segments.product_item_id\": \"Shopping product ID\",\n \"segments.product_brand\": \"Shopping product brand\",\n \"segments.product_type_l1\": \"Shopping product type (level 1)\",\n\n // Assets\n \"asset.type\": \"Asset type: IMAGE, YOUTUBE_VIDEO, TEXT, LEAD_FORM, etc.\",\n \"asset.text_asset.text\": \"Text asset content\",\n \"asset.image_asset.full_size.url\": \"Full-size image URL\",\n \"asset.youtube_video_asset.youtube_video_id\": \"YouTube video ID\",\n \"asset.youtube_video_asset.youtube_video_title\": \"YouTube video title\",\n \"asset_group.name\": \"Asset group display name\",\n \"asset_group.status\": \"ENABLED, PAUSED, or REMOVED\",\n \"asset_group_asset.field_type\": \"Where the asset is used (HEADLINE, DESCRIPTION, LOGO, etc.)\",\n \"asset_group_asset.primary_status\":\n \"Whether the asset serves: ELIGIBLE, LIMITED, NOT_ELIGIBLE, PAUSED, REMOVED, PENDING\",\n \"asset_group_asset.primary_status_reasons\":\n \"Why the asset is not fully serving (policy, pending review, paused parent …)\",\n\n // Change events (field-level detail, last 30 days)\n \"change_event.change_date_time\": \"When the change occurred (ISO 8601)\",\n \"change_event.change_resource_type\": \"What was changed: CAMPAIGN, AD_GROUP, AD, etc.\",\n \"change_event.resource_change_operation\": \"CREATE, UPDATE, or REMOVE\",\n \"change_event.user_email\": \"Email of user who made the change\",\n\n // Change status (which resources changed, last 90 days — no values, no user)\n \"change_status.last_change_date_time\": \"When this resource last changed (ISO 8601)\",\n \"change_status.resource_type\": \"What changed: CAMPAIGN, AD_GROUP, AD_GROUP_AD, AD_GROUP_CRITERION, etc.\",\n \"change_status.resource_status\": \"ADDED, CHANGED, or REMOVED — not the old or new value\",\n \"change_status.resource_name\": \"Identifier of the changed resource; query it to read its current values\",\n \"change_status.campaign\": \"Resource name of the campaign the change belongs to\",\n \"change_status.ad_group\": \"Resource name of the ad group the change belongs to\",\n \"change_status.ad_group_ad\": \"Resource name of the changed ad\",\n \"change_status.ad_group_criterion\": \"Resource name of the changed keyword or criterion\",\n \"change_status.campaign_criterion\": \"Resource name of the changed campaign-level criterion\",\n\n // Landing pages\n \"landing_page_view.unexpanded_final_url\": \"Landing page URL\",\n\n // Geo\n \"geo_target_constant.name\": \"Geographic location name\",\n \"geo_target_constant.resource_name\": \"Geo target resource identifier\",\n};\n\nexport function getFieldDescriptions(fields: string[]): Record<string, string> {\n const result: Record<string, string> = {};\n for (const field of fields) {\n const desc = FIELD_DESCRIPTIONS[field];\n if (desc) {\n result[field] = desc;\n }\n }\n return result;\n}\n"],"mappings":"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","names":[]}
@@ -0,0 +1,188 @@
1
+ import {
2
+ analyticsErrorEnvelope
3
+ } from "./chunk-AFJGYJ7Z.js";
4
+ import {
5
+ PEOPLE_SEARCH_MAX_TERMS,
6
+ parsePeopleQuery,
7
+ peopleLookupRequestSchema
8
+ } from "./chunk-FYWWTMXP.js";
9
+ import {
10
+ writeJsonEnvelope
11
+ } from "./chunk-BVM5IRZW.js";
12
+ import {
13
+ apiPost
14
+ } from "./chunk-HREWXNTO.js";
15
+ import {
16
+ registerSchema
17
+ } from "./chunk-WOTDHRNF.js";
18
+
19
+ // src/commands/analytics/lookup.ts
20
+ import { readFileSync } from "fs";
21
+ import { defineCommand } from "citty";
22
+ function peopleArgs(args2) {
23
+ const parts = peopleParts(args2);
24
+ if (parts.length === 0) return {};
25
+ const people = parsePeopleQuery(parts).terms.map((term) => term.input);
26
+ return people.length === 0 ? {} : { people };
27
+ }
28
+ function peopleParts(args2) {
29
+ return [...args2.person ? [String(args2.person)] : [], ...args2["people-file"] ? [readPeopleFile(args2)] : []];
30
+ }
31
+ function readPeopleFile(args2) {
32
+ try {
33
+ return readFileSync(String(args2["people-file"]), "utf8");
34
+ } catch {
35
+ return "";
36
+ }
37
+ }
38
+ function unreadablePeopleFile(args2) {
39
+ if (!args2["people-file"]) return void 0;
40
+ const path = String(args2["people-file"]);
41
+ try {
42
+ readFileSync(path, "utf8");
43
+ return void 0;
44
+ } catch {
45
+ return `Couldn't read --people-file ${path}. Check the path, or pass the people inline with --person.`;
46
+ }
47
+ }
48
+ function peopleLimitError(args2) {
49
+ const unreadable = unreadablePeopleFile(args2);
50
+ if (unreadable !== void 0) return unreadable;
51
+ const { terms, dropped } = parsePeopleQuery(peopleParts(args2));
52
+ if (dropped === 0) return void 0;
53
+ return `${terms.length + dropped} people named; one search takes up to ${PEOPLE_SEARCH_MAX_TERMS}. Split the list and run each part.`;
54
+ }
55
+ function compactRow(row) {
56
+ const clicks = [...row.googleClick ? ["google"] : [], ...row.metaClick ? ["meta"] : []];
57
+ const candidates = {
58
+ input: row.input,
59
+ readAs: row.kind,
60
+ found: row.found,
61
+ problem: row.problem,
62
+ contacts: row.contacts,
63
+ events: row.events,
64
+ firstSeen: row.firstSeen,
65
+ lastSeen: row.lastSeen,
66
+ pageViews: row.pageViews,
67
+ landings: row.landings,
68
+ visits: row.visits,
69
+ formSubmits: row.formSubmits,
70
+ firstSource: row.firstSource,
71
+ systemEvents: row.systemEvents,
72
+ pageEvents: row.pageEvents,
73
+ uploads: row.uploads,
74
+ uploadedTo: row.uploadedTo,
75
+ clicks,
76
+ knownBy: row.knownBy
77
+ };
78
+ return Object.fromEntries(
79
+ Object.entries(candidates).filter(
80
+ ([key, value]) => key === "found" || !(value === 0 || value === "" || Array.isArray(value) && value.length === 0)
81
+ )
82
+ );
83
+ }
84
+ function lookupHints(data) {
85
+ const hints = [];
86
+ if (data.dropped > 0) {
87
+ hints.push(
88
+ `${data.dropped} lines past the limit of ${PEOPLE_SEARCH_MAX_TERMS} were not looked up. Run the rest separately.`
89
+ );
90
+ }
91
+ const unseen = data.people.filter((row) => !row.found && row.problem === "");
92
+ if (unseen.length > 0) {
93
+ hints.push(
94
+ `Not seen by Baker: ${unseen.map((row) => row.input).join(", ")}. Baker knows a person by what its pages, Forms and connected systems recorded \u2014 a lead that came in through a form or site Baker does not measure, or a source not connected, is not here.`
95
+ );
96
+ }
97
+ for (const row of data.people.filter((person) => person.problem !== "")) {
98
+ hints.push(`${row.input}: ${row.problem}`);
99
+ }
100
+ const found = data.people.filter((row) => row.found);
101
+ const neverVisited = found.filter((row) => row.pageViews === 0);
102
+ if (neverVisited.length > 0) {
103
+ hints.push(
104
+ `${neverVisited.length} of ${found.length} found never visited a page Baker publishes: Baker knows them only from what their systems reported, so no landing can be credited with them.`
105
+ );
106
+ }
107
+ if (found.length > 0) {
108
+ hints.push(
109
+ `\`baker analytics feed --person '${found[0]?.input}' --days 90\` lists everything one of them did, in order \u2014 add more, comma-separated, to follow several.`
110
+ );
111
+ }
112
+ return hints;
113
+ }
114
+ function lookupReport(data, full = false) {
115
+ const found = data.people.filter((row) => row.found);
116
+ return {
117
+ summary: {
118
+ searched: data.people.length,
119
+ found: found.length,
120
+ notFound: data.people.length - found.length,
121
+ visitedABakerPage: found.filter((row) => row.pageViews > 0).length
122
+ },
123
+ people: full ? data.people : data.people.map(compactRow),
124
+ hints: lookupHints(data)
125
+ };
126
+ }
127
+ var NO_PEOPLE = "Name at least one person: --person 'ana@empresa.com, deal:40001234567' or --people-file leads.txt.";
128
+ var args = {
129
+ person: {
130
+ type: "string",
131
+ description: "The people, comma-separated: an email, a phone (+34\u2026), a HubSpot contact id, deal:<HubSpot deal id>, a gclid/fbclid, a browser id. Prefix to be exact: email:, phone:, hubspot:, deal:, gclid:, fbclid:, browser:",
132
+ required: false
133
+ },
134
+ "people-file": {
135
+ type: "string",
136
+ description: "A file with one person per line \u2014 a column pasted from a CRM export",
137
+ required: false
138
+ },
139
+ full: {
140
+ type: "boolean",
141
+ description: "Every field of every line, zeros included",
142
+ required: false
143
+ }
144
+ };
145
+ registerSchema({
146
+ command: "analytics.lookup",
147
+ description: "What Baker saw of each person in a list, by email, phone, CRM id, deal or click id",
148
+ args
149
+ });
150
+ var lookupCommand = defineCommand({
151
+ meta: {
152
+ name: "lookup",
153
+ description: `What Baker saw of each person in a list \u2014 all time, one line each \u2014 by whatever the client holds about them. The reconciliation question: "HubSpot says 26 leads yesterday, which of them does Baker have, and where did they come from".
154
+
155
+ Start here:
156
+ baker analytics lookup --person 'ana@empresa.com, +34600111222, 90001234567'
157
+ baker analytics lookup --person 'deal:40001234567, deal:40001234568' \u2014 HubSpot deal ids, looked up through the deal's contacts
158
+ baker analytics lookup --people-file leads.txt \u2014 one per line, up to ${PEOPLE_SEARCH_MAX_TERMS}
159
+
160
+ Each line says whether Baker has them, when it first and last saw them, the pages and Forms they touched, what their systems reported (systemEvents: CRM stages, orders), what Baker uploaded for them to ad platforms, which ad click they carried, and every kind of key they are linked by. A bare number is read as a HubSpot contact id or a phone; prefix it to be exact. Emails and phones are hashed by Baker \u2014 say them to the client as they gave them, never as a hash. Follow one with \`baker analytics feed --person <same value>\`.`
161
+ },
162
+ args,
163
+ run: async ({ args: raw }) => {
164
+ const { people } = peopleArgs(raw);
165
+ const parsed = peopleLookupRequestSchema.safeParse({ people: people ?? [] });
166
+ const invalid = peopleLimitError(raw) ?? (parsed.success ? void 0 : NO_PEOPLE);
167
+ if (invalid !== void 0 || !parsed.success) {
168
+ writeJsonEnvelope({ ok: false, error: { code: "VALIDATION_ERROR", message: invalid ?? NO_PEOPLE } });
169
+ process.exit(1);
170
+ }
171
+ try {
172
+ const response = await apiPost("/api/analytics/people", parsed.data);
173
+ const { hints, ...data } = lookupReport(response.data, raw.full === true);
174
+ writeJsonEnvelope({ ok: true, data, ...hints.length > 0 ? { hints } : {} });
175
+ } catch (error) {
176
+ writeJsonEnvelope({ ok: false, error: analyticsErrorEnvelope(error) });
177
+ process.exit(1);
178
+ }
179
+ }
180
+ });
181
+
182
+ export {
183
+ peopleArgs,
184
+ peopleLimitError,
185
+ lookupReport,
186
+ lookupCommand
187
+ };
188
+ //# sourceMappingURL=chunk-JRCFCIE3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/analytics/lookup.ts"],"sourcesContent":["/**\n * `baker analytics lookup` — what Baker saw of each person in a list.\n *\n * The question a CRM export puts to Baker: here are yesterday's leads, which\n * of them do you have and what did you see them do. One line per person, all\n * time, by whatever the reader holds — an email, a phone, a HubSpot contact or\n * deal id, a click id. The server hashes contact details and asks HubSpot whose\n * each deal is; nothing here does either.\n *\n * `baker analytics feed --person` is the same list as rows.\n */\n\nimport { readFileSync } from \"node:fs\";\nimport {\n PEOPLE_SEARCH_MAX_TERMS,\n type PeopleLookupData,\n type PeopleLookupRow,\n parsePeopleQuery,\n peopleLookupRequestSchema,\n} from \"@baker/api/analytics\";\nimport { defineCommand } from \"citty\";\nimport { apiPost } from \"../../client.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { writeJsonEnvelope } from \"../ads/output.ts\";\nimport { analyticsErrorEnvelope } from \"./errorEnvelope.ts\";\n\n/**\n * The people `--person` and `--people-file` name, one per line of the search.\n *\n * Split here with the server's own reading of a list, so the fifty-line limit\n * is the same one on both sides and a long pasted list travels as lines, not\n * as one oversized string.\n */\nexport function peopleArgs(args: Record<string, unknown>): { people?: string[] } {\n const parts = peopleParts(args);\n if (parts.length === 0) return {};\n const people = parsePeopleQuery(parts).terms.map((term) => term.input);\n return people.length === 0 ? {} : { people };\n}\n\nfunction peopleParts(args: Record<string, unknown>): string[] {\n return [...(args.person ? [String(args.person)] : []), ...(args[\"people-file\"] ? [readPeopleFile(args)] : [])];\n}\n\n/** `--people-file`, or `\"\"` when it cannot be read — {@link peopleLimitError} is what reports that. */\nfunction readPeopleFile(args: Record<string, unknown>): string {\n try {\n return readFileSync(String(args[\"people-file\"]), \"utf8\");\n } catch {\n return \"\";\n }\n}\n\nfunction unreadablePeopleFile(args: Record<string, unknown>): string | undefined {\n if (!args[\"people-file\"]) return undefined;\n const path = String(args[\"people-file\"]);\n try {\n readFileSync(path, \"utf8\");\n return undefined;\n } catch {\n return `Couldn't read --people-file ${path}. Check the path, or pass the people inline with --person.`;\n }\n}\n\n/**\n * Why a list is refused, when it is longer than one search holds. Refused\n * rather than cut: fifty lines answered out of sixty read as the whole list,\n * and \"not seen by Baker\" is then silently wrong about the other ten.\n */\nexport function peopleLimitError(args: Record<string, unknown>): string | undefined {\n const unreadable = unreadablePeopleFile(args);\n if (unreadable !== undefined) return unreadable;\n const { terms, dropped } = parsePeopleQuery(peopleParts(args));\n if (dropped === 0) return undefined;\n return `${terms.length + dropped} people named; one search takes up to ${PEOPLE_SEARCH_MAX_TERMS}. Split the list and run each part.`;\n}\n\n/** One person as an agent reads them: what was seen, with every zero and empty list left out. */\nfunction compactRow(row: PeopleLookupRow): Record<string, unknown> {\n const clicks = [...(row.googleClick ? [\"google\"] : []), ...(row.metaClick ? [\"meta\"] : [])];\n const candidates: Record<string, unknown> = {\n input: row.input,\n readAs: row.kind,\n found: row.found,\n problem: row.problem,\n contacts: row.contacts,\n events: row.events,\n firstSeen: row.firstSeen,\n lastSeen: row.lastSeen,\n pageViews: row.pageViews,\n landings: row.landings,\n visits: row.visits,\n formSubmits: row.formSubmits,\n firstSource: row.firstSource,\n systemEvents: row.systemEvents,\n pageEvents: row.pageEvents,\n uploads: row.uploads,\n uploadedTo: row.uploadedTo,\n clicks,\n knownBy: row.knownBy,\n };\n return Object.fromEntries(\n Object.entries(candidates).filter(\n ([key, value]) =>\n key === \"found\" || !(value === 0 || value === \"\" || (Array.isArray(value) && value.length === 0)),\n ),\n );\n}\n\nfunction lookupHints(data: PeopleLookupData): string[] {\n const hints: string[] = [];\n if (data.dropped > 0) {\n hints.push(\n `${data.dropped} lines past the limit of ${PEOPLE_SEARCH_MAX_TERMS} were not looked up. Run the rest separately.`,\n );\n }\n const unseen = data.people.filter((row) => !row.found && row.problem === \"\");\n if (unseen.length > 0) {\n hints.push(\n `Not seen by Baker: ${unseen.map((row) => row.input).join(\", \")}. Baker knows a person by what its pages, Forms and connected systems recorded — a lead that came in through a form or site Baker does not measure, or a source not connected, is not here.`,\n );\n }\n for (const row of data.people.filter((person) => person.problem !== \"\")) {\n hints.push(`${row.input}: ${row.problem}`);\n }\n const found = data.people.filter((row) => row.found);\n const neverVisited = found.filter((row) => row.pageViews === 0);\n if (neverVisited.length > 0) {\n hints.push(\n `${neverVisited.length} of ${found.length} found never visited a page Baker publishes: Baker knows them only from what their systems reported, so no landing can be credited with them.`,\n );\n }\n if (found.length > 0) {\n hints.push(\n `\\`baker analytics feed --person '${found[0]?.input}' --days 90\\` lists everything one of them did, in order — add more, comma-separated, to follow several.`,\n );\n }\n return hints;\n}\n\n/** The envelope's data and hints. Pure, so what an agent reads is tested without a network. */\nexport function lookupReport(data: PeopleLookupData, full = false) {\n const found = data.people.filter((row) => row.found);\n return {\n summary: {\n searched: data.people.length,\n found: found.length,\n notFound: data.people.length - found.length,\n visitedABakerPage: found.filter((row) => row.pageViews > 0).length,\n },\n people: full ? data.people : data.people.map(compactRow),\n hints: lookupHints(data),\n };\n}\n\nconst NO_PEOPLE = \"Name at least one person: --person 'ana@empresa.com, deal:40001234567' or --people-file leads.txt.\";\n\nconst args = {\n person: {\n type: \"string\",\n description:\n \"The people, comma-separated: an email, a phone (+34…), a HubSpot contact id, deal:<HubSpot deal id>, a gclid/fbclid, a browser id. Prefix to be exact: email:, phone:, hubspot:, deal:, gclid:, fbclid:, browser:\",\n required: false,\n },\n \"people-file\": {\n type: \"string\",\n description: \"A file with one person per line — a column pasted from a CRM export\",\n required: false,\n },\n full: {\n type: \"boolean\",\n description: \"Every field of every line, zeros included\",\n required: false,\n },\n} as const;\n\nregisterSchema({\n command: \"analytics.lookup\",\n description: \"What Baker saw of each person in a list, by email, phone, CRM id, deal or click id\",\n args,\n});\n\nexport const lookupCommand = defineCommand({\n meta: {\n name: \"lookup\",\n description: `What Baker saw of each person in a list — all time, one line each — by whatever the client holds about them. The reconciliation question: \"HubSpot says 26 leads yesterday, which of them does Baker have, and where did they come from\".\n\nStart here:\n baker analytics lookup --person 'ana@empresa.com, +34600111222, 90001234567'\n baker analytics lookup --person 'deal:40001234567, deal:40001234568' — HubSpot deal ids, looked up through the deal's contacts\n baker analytics lookup --people-file leads.txt — one per line, up to ${PEOPLE_SEARCH_MAX_TERMS}\n\nEach line says whether Baker has them, when it first and last saw them, the pages and Forms they touched, what their systems reported (systemEvents: CRM stages, orders), what Baker uploaded for them to ad platforms, which ad click they carried, and every kind of key they are linked by. A bare number is read as a HubSpot contact id or a phone; prefix it to be exact. Emails and phones are hashed by Baker — say them to the client as they gave them, never as a hash. Follow one with \\`baker analytics feed --person <same value>\\`.`,\n },\n args,\n run: async ({ args: raw }) => {\n const { people } = peopleArgs(raw as Record<string, unknown>);\n const parsed = peopleLookupRequestSchema.safeParse({ people: people ?? [] });\n const invalid = peopleLimitError(raw as Record<string, unknown>) ?? (parsed.success ? undefined : NO_PEOPLE);\n if (invalid !== undefined || !parsed.success) {\n writeJsonEnvelope({ ok: false, error: { code: \"VALIDATION_ERROR\", message: invalid ?? NO_PEOPLE } });\n process.exit(1);\n }\n try {\n const response = await apiPost<{ ok: true; data: PeopleLookupData }>(\"/api/analytics/people\", parsed.data);\n const { hints, ...data } = lookupReport(response.data, raw.full === true);\n writeJsonEnvelope({ ok: true, data, ...(hints.length > 0 ? { hints } : {}) });\n } catch (error) {\n writeJsonEnvelope({ ok: false, error: analyticsErrorEnvelope(error) });\n process.exit(1);\n }\n },\n});\n"],"mappings":"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","names":["args"]}