@koda-sl/baker-cli 0.569.0 → 0.570.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1477) hide show
  1. package/README.md +19 -13
  2. package/dist/account-52WDLW4Z.js +82 -0
  3. package/dist/account-7KZ7MHMN.js +82 -0
  4. package/dist/account-NSBALYYS.js +139 -0
  5. package/dist/account-assets-EPEYTJFD.js +290 -0
  6. package/dist/account-level-VD4NLB2D.js +611 -0
  7. package/dist/account-reads-RXF37O4N.js +219 -0
  8. package/dist/account-users-NUI3ILRE.js +64 -0
  9. package/dist/account-writes-3BJSUM2V.js +68 -0
  10. package/dist/accounts-A47QUTTB.js +76 -0
  11. package/dist/accounts-E5TF2AFI.js +115 -0
  12. package/dist/accounts-FLKNFDIE.js +713 -0
  13. package/dist/accounts-I2ZLR76R.js +80 -0
  14. package/dist/accounts-ZV4IXOF5.js +119 -0
  15. package/dist/actions-IR47GVZ6.js +55 -0
  16. package/dist/active-entities-XRSJNBOV.js +103 -0
  17. package/dist/activecampaign-MNJYIWJL.js +938 -0
  18. package/dist/activities-ZDWREYR7.js +75 -0
  19. package/dist/ad-group-writes-KU4QMQZP.js +172 -0
  20. package/dist/ad-groups-NMW2G32A.js +70 -0
  21. package/dist/ad-writes-7NOFTOM4.js +176 -0
  22. package/dist/add-25YZMFSH.js +85 -0
  23. package/dist/add-4I25INAO.js +107 -0
  24. package/dist/add-7MAL7JRX.js +81 -0
  25. package/dist/add-D44VCDRU.js +148 -0
  26. package/dist/add-JO4ZPS23.js +97 -0
  27. package/dist/add-QMTD6EGI.js +305 -0
  28. package/dist/add-accounts-EKMSHAA4.js +91 -0
  29. package/dist/ads-4YZYNU66.js +128 -0
  30. package/dist/ads-BT2DF3XN.js +48 -0
  31. package/dist/ads-DGL5SGP3.js +120 -0
  32. package/dist/ads-P4Z3MLKS.js +79 -0
  33. package/dist/adsets-PSVCPCE3.js +182 -0
  34. package/dist/advertisers-7NAPI5ZU.js +125 -0
  35. package/dist/advertisers-LOIXTTGP.js +123 -0
  36. package/dist/analytics-6AHC3J4L.js +447 -0
  37. package/dist/analytics-NL2KGDLK.js +2437 -0
  38. package/dist/animate-VX7E7KJE.js +480 -0
  39. package/dist/approved-E4EZA5RT.js +73 -0
  40. package/dist/asset-writes-NDSHY5OT.js +50 -0
  41. package/dist/assign-NKHIHVGI.js +80 -0
  42. package/dist/audience-size-WEOM6XIL.js +76 -0
  43. package/dist/audience-writes-4KQXVGHO.js +327 -0
  44. package/dist/audiences-P3SPTAJT.js +280 -0
  45. package/dist/audiences-T5LMTT3B.js +85 -0
  46. package/dist/audiences-UHLVATR6.js +106 -0
  47. package/dist/audit-46DO2HV3.js +88 -0
  48. package/dist/audit-4RIBJ7BR.js +154 -0
  49. package/dist/autocomplete-FMTJDXTL.js +114 -0
  50. package/dist/avatars-LY5SFMWO.js +38 -0
  51. package/dist/bid-pricing-MQ7WLV5U.js +103 -0
  52. package/dist/brand-LR5IXW3W.js +22 -0
  53. package/dist/brief-4DSXIX3F.js +543 -0
  54. package/dist/businesses-TRFYMZ4I.js +54 -0
  55. package/dist/campaign-groups-EZYLKMO2.js +99 -0
  56. package/dist/campaign-writes-P5XPFTRK.js +176 -0
  57. package/dist/campaign-writes-UMENYMKO.js +168 -0
  58. package/dist/campaigns-2MTON2IE.js +130 -0
  59. package/dist/campaigns-PP2DQMJE.js +113 -0
  60. package/dist/campaigns-SWZJVE2T.js +78 -0
  61. package/dist/campaigns-TAFDM242.js +111 -0
  62. package/dist/canvas-RKR3ZB4E.js +46 -0
  63. package/dist/capabilities-45RZ6E6W.js +147 -0
  64. package/dist/cards-CXKIVM4D.js +85 -0
  65. package/dist/catalog-TOHUVBEU.js +66 -0
  66. package/dist/catalogs-4DNLG4AM.js +782 -0
  67. package/dist/catalogs-V7PTEJBO.js +130 -0
  68. package/dist/changes-5OW3UYMF.js +167 -0
  69. package/dist/chatgpt-JBMYNVJB.js +47 -0
  70. package/dist/chats-VOLBYA3R.js +584 -0
  71. package/dist/check-4DI73QX4.js +107 -0
  72. package/dist/chunk-2CC4CPDT.js +225 -0
  73. package/dist/chunk-2N7TB346.js +5368 -0
  74. package/dist/chunk-2YXTXSYG.js +454 -0
  75. package/dist/chunk-2Z6PFHD2.js +91 -0
  76. package/dist/chunk-3GXHML4V.js +106 -0
  77. package/dist/chunk-3QPG2D27.js +125 -0
  78. package/dist/chunk-3WN5GWX4.js +94 -0
  79. package/dist/chunk-47VWQ7FQ.js +843 -0
  80. package/dist/chunk-4AO3LSYM.js +73 -0
  81. package/dist/chunk-4HFM5RCP.js +217 -0
  82. package/dist/chunk-4QFMRL6O.js +455 -0
  83. package/dist/chunk-5OC6VUDZ.js +930 -0
  84. package/dist/chunk-5QNW5PCM.js +106 -0
  85. package/dist/chunk-5VXEH72O.js +249 -0
  86. package/dist/chunk-6AMN346B.js +114 -0
  87. package/dist/chunk-6EOWBGGW.js +191 -0
  88. package/dist/chunk-6MJKVNLL.js +25 -0
  89. package/dist/chunk-7NBQQOCU.js +97 -0
  90. package/dist/chunk-AQRBEPZL.js +138 -0
  91. package/dist/chunk-AZIXX73C.js +64 -0
  92. package/dist/chunk-B4BITHOD.js +2235 -0
  93. package/dist/chunk-B4BITHOD.js.map +1 -0
  94. package/dist/chunk-B64KJW5C.js +476 -0
  95. package/dist/chunk-BFAPSFS7.js +1518 -0
  96. package/dist/chunk-BIBXZJZI.js +97 -0
  97. package/dist/chunk-BNEWJXKU.js +638 -0
  98. package/dist/chunk-BXTIG5JL.js +66 -0
  99. package/dist/chunk-C7KV5O5J.js +274 -0
  100. package/dist/chunk-CBVUO7SK.js +1744 -0
  101. package/dist/chunk-CDPX6WAL.js +207 -0
  102. package/dist/chunk-CF5I4Q5M.js +69 -0
  103. package/dist/chunk-COOJKEJE.js +312 -0
  104. package/dist/chunk-CTJWMZPL.js +430 -0
  105. package/dist/chunk-D5HD46VV.js +163 -0
  106. package/dist/chunk-DGHSXHZR.js +136 -0
  107. package/dist/chunk-DHF4FXWS.js +58 -0
  108. package/dist/chunk-DPOUS5DN.js +287 -0
  109. package/dist/chunk-EGICPBDY.js +1920 -0
  110. package/dist/chunk-EGICPBDY.js.map +1 -0
  111. package/dist/chunk-EJ6EED6I.js +69 -0
  112. package/dist/chunk-EKOMZH2S.js +685 -0
  113. package/dist/chunk-ELC42LJJ.js +8954 -0
  114. package/dist/chunk-FLTAPEVY.js +288 -0
  115. package/dist/chunk-G4FU6VC5.js +23 -0
  116. package/dist/chunk-H25GY4U4.js +139 -0
  117. package/dist/chunk-H6ASYVQX.js +544 -0
  118. package/dist/chunk-H7LKYGLJ.js +24026 -0
  119. package/dist/chunk-HI4SKWNW.js +709 -0
  120. package/dist/chunk-HM4NWA72.js +5471 -0
  121. package/dist/chunk-HPF3USL2.js +52 -0
  122. package/dist/chunk-I33FO2ON.js +170 -0
  123. package/dist/chunk-IAE24RKD.js +604 -0
  124. package/dist/chunk-IJ6WA2JW.js +148 -0
  125. package/dist/chunk-ITIUWJGQ.js +131 -0
  126. package/dist/chunk-IYDESWW4.js +74 -0
  127. package/dist/chunk-J4BJLHLQ.js +3510 -0
  128. package/dist/chunk-JAME5NBT.js +42 -0
  129. package/dist/chunk-JGK2FDZW.js +1919 -0
  130. package/dist/chunk-JT3UUBID.js +142 -0
  131. package/dist/chunk-KGJ6EIX3.js +76 -0
  132. package/dist/chunk-KUI74TNG.js +169 -0
  133. package/dist/chunk-L4QEMWNJ.js +111 -0
  134. package/dist/chunk-L7I47VGM.js +46 -0
  135. package/dist/chunk-LAOCXV6Z.js +98 -0
  136. package/dist/chunk-LJEJCIHR.js +246 -0
  137. package/dist/chunk-M4KFO256.js +188 -0
  138. package/dist/chunk-MC5F2L64.js +962 -0
  139. package/dist/chunk-MIHY534L.js +39 -0
  140. package/dist/chunk-MKOI6QYM.js +225 -0
  141. package/dist/chunk-MPTNN35I.js +325 -0
  142. package/dist/chunk-MSIOGH67.js +66 -0
  143. package/dist/chunk-MTW2NDDD.js +98 -0
  144. package/dist/chunk-NXNOXZGB.js +2523 -0
  145. package/dist/chunk-NXNOXZGB.js.map +1 -0
  146. package/dist/chunk-O2ECZKXP.js +197 -0
  147. package/dist/chunk-O5VSYBUA.js +343 -0
  148. package/dist/chunk-OJZKY5UM.js +46 -0
  149. package/dist/chunk-P4UCSXNA.js +156 -0
  150. package/dist/chunk-Q3G4ZI2U.js +84 -0
  151. package/dist/chunk-Q5XUFN2W.js +35 -0
  152. package/dist/chunk-Q736UFSD.js +75 -0
  153. package/dist/chunk-QLO4RNHU.js +51 -0
  154. package/dist/chunk-QSS34JWZ.js +224 -0
  155. package/dist/chunk-QVHZTCB5.js +1254 -0
  156. package/dist/chunk-RRKUXGAU.js +26 -0
  157. package/dist/chunk-RVIBHENP.js +344 -0
  158. package/dist/chunk-S5S54J2K.js +56 -0
  159. package/dist/chunk-SIRRBWQ2.js +215 -0
  160. package/dist/chunk-TEJOILEY.js +203 -0
  161. package/dist/chunk-TEQEZAJI.js +1320 -0
  162. package/dist/chunk-TLQY4QBW.js +84 -0
  163. package/dist/chunk-TNI7CN4L.js +547 -0
  164. package/dist/chunk-TPJ34LXX.js +220 -0
  165. package/dist/chunk-TPJ34LXX.js.map +1 -0
  166. package/dist/chunk-U6AWJIFP.js +225 -0
  167. package/dist/chunk-UK4XSLV2.js +296 -0
  168. package/dist/chunk-URGXEDFV.js +76 -0
  169. package/dist/chunk-V5ODOBBI.js +399 -0
  170. package/dist/chunk-V7EN5LFS.js +115 -0
  171. package/dist/chunk-VAURJ4QJ.js +89 -0
  172. package/dist/chunk-VAV5CCDD.js +167 -0
  173. package/dist/chunk-VWHUO3AP.js +103 -0
  174. package/dist/chunk-W3TZPHZO.js +285 -0
  175. package/dist/chunk-WTPID22G.js +152 -0
  176. package/dist/chunk-WZATC4O5.js +297 -0
  177. package/dist/chunk-XA76OGSL.js +718 -0
  178. package/dist/chunk-XGG72YRO.js +91 -0
  179. package/dist/chunk-XWAOECD2.js +831 -0
  180. package/dist/chunk-YAMKCMAS.js +219 -0
  181. package/dist/chunk-YDALLZNS.js +494 -0
  182. package/dist/chunk-YRWCXYWW.js +178 -0
  183. package/dist/chunk-Z3RGBLVJ.js +64 -0
  184. package/dist/chunk-Z5JWFNG4.js +19 -0
  185. package/dist/chunk-ZCGM7ZWM.js +45 -0
  186. package/dist/cite-WCAOCOO5.js +191 -0
  187. package/dist/claim-3UMAFZEM.js +200 -0
  188. package/dist/cli.js +49 -49
  189. package/dist/cli.js.map +1 -1
  190. package/dist/client-VCKP6WBR.js +19 -0
  191. package/dist/code-VXOTFGD2.js +76 -0
  192. package/dist/companies-RL5A26AT.js +198 -0
  193. package/dist/company-DJ44F5C6.js +308 -0
  194. package/dist/complete-PGNIP3LN.js +84 -0
  195. package/dist/config-UR45YCIN.js +88 -0
  196. package/dist/connect-ROARWN63.js +45 -0
  197. package/dist/content-EQQIKG5H.js +85 -0
  198. package/dist/conversation-GDFMJL7X.js +96 -0
  199. package/dist/conversion-report-2FREFML5.js +127 -0
  200. package/dist/conversion-upload-command-G7LLWHSK.js +439 -0
  201. package/dist/conversion-writes-JZIJSQ7T.js +122 -0
  202. package/dist/conversions-2IFWDQKK.js +140 -0
  203. package/dist/conversions-Q5EBTEXA.js +78 -0
  204. package/dist/copy-writes-JVUX3YDL.js +170 -0
  205. package/dist/countries-GRCU4IGM.js +82 -0
  206. package/dist/create-B5DIYK5D.js +218 -0
  207. package/dist/create-BRCSXXFO.js +239 -0
  208. package/dist/create-PXAUL6FF.js +62 -0
  209. package/dist/create-R6CMATVY.js +135 -0
  210. package/dist/creatives-4EPM3RHG.js +118 -0
  211. package/dist/creatives-D6O6Z46U.js +229 -0
  212. package/dist/creatives-XNVWQWFF.js +58 -0
  213. package/dist/credentials-CLJO7WWY.js +290 -0
  214. package/dist/critique-MBMKW6SL.js +1451 -0
  215. package/dist/critique-OUJDTVMI.js +232 -0
  216. package/dist/crm-H5ITJ2RC.js +229 -0
  217. package/dist/crm-JJHYRABB.js +323 -0
  218. package/dist/crop-NE7YX4SS.js +113 -0
  219. package/dist/currency-EFDQYW5B.js +88 -0
  220. package/dist/custom-conversions-GQTU5E6X.js +128 -0
  221. package/dist/customers-C5YXAVXI.js +65 -0
  222. package/dist/decide-6Q5X3V3F.js +199 -0
  223. package/dist/delete-3GYCQK6B.js +57 -0
  224. package/dist/delete-EKKOEB3N.js +69 -0
  225. package/dist/delete-NBUDIGSD.js +69 -0
  226. package/dist/delete-QHDDR66K.js +85 -0
  227. package/dist/delete-SP66F7ZV.js +71 -0
  228. package/dist/delete-WZ3KVVX5.js +67 -0
  229. package/dist/demographics-O7AJW7DO.js +141 -0
  230. package/dist/describe-DJPIUEFE.js +97 -0
  231. package/dist/describe-MAGTSOW4.js +97 -0
  232. package/dist/dimensions-IC2H7V3H.js +101 -0
  233. package/dist/discard-RMVZAX2J.js +69 -0
  234. package/dist/discover-BPUUWRBP.js +172 -0
  235. package/dist/discover-PSL2NBJL.js +93 -0
  236. package/dist/domain-J3ZMBOHS.js +101 -0
  237. package/dist/download-EHDJXBAC.js +337 -0
  238. package/dist/download-ZVOGLTFB.js +172 -0
  239. package/dist/draft-27NMTARB.js +134 -0
  240. package/dist/draft-6PJD3MCW.js +374 -0
  241. package/dist/draft-GCOCG4PO.js +315 -0
  242. package/dist/draft-JESKGZ6O.js +138 -0
  243. package/dist/draft-MWYKIZC4.js +260 -0
  244. package/dist/draft-Q4PEFBJB.js +578 -0
  245. package/dist/draft-TPR3DH5N.js +220 -0
  246. package/dist/draft-ZPGGWU7E.js +332 -0
  247. package/dist/engine/index.js +14 -14
  248. package/dist/env-NZXNMWSD.js +53 -0
  249. package/dist/experiment-XAYSEYTU.js +1397 -0
  250. package/dist/experiments-MM4BYHRH.js +236 -0
  251. package/dist/export-W54UZ62P.js +168 -0
  252. package/dist/extract-JMY6YRPW.js +143 -0
  253. package/dist/facets-B5AZAU2C.js +117 -0
  254. package/dist/favorites-Y6CT6NSQ.js +178 -0
  255. package/dist/feed-35BRQPTH.js +177 -0
  256. package/dist/feedback-2EVDGTEN.js +115 -0
  257. package/dist/feedback-4MCMOMVN.js +114 -0
  258. package/dist/feedback-record-DL7UEU2H.js +269 -0
  259. package/dist/fetch-I6P72CDL.js +139 -0
  260. package/dist/fetch-JDNFK476.js +204 -0
  261. package/dist/find-SVGRA7IA.js +144 -0
  262. package/dist/fit-DKVH5BDW.js +65 -0
  263. package/dist/flows-LURTZICL.js +340 -0
  264. package/dist/follow-24QSDNAG.js +94 -0
  265. package/dist/follow-competitors-AG4E4XFA.js +112 -0
  266. package/dist/following-YGM6TBK3.js +113 -0
  267. package/dist/fonts-HUXFDDAE.js +39 -0
  268. package/dist/forecast-ITLKAFHM.js +169 -0
  269. package/dist/forecast-UHTW4Y7Q.js +121 -0
  270. package/dist/funding-WZNGXRLJ.js +85 -0
  271. package/dist/funnel-QM7WFFMD.js +397 -0
  272. package/dist/ga4-W3U5YTRT.js +55 -0
  273. package/dist/generate-KAWRRYTT.js +263 -0
  274. package/dist/get-237TYJZT.js +82 -0
  275. package/dist/get-3MTAVNTP.js +56 -0
  276. package/dist/get-5SPNAIUQ.js +62 -0
  277. package/dist/get-FWPR2YPC.js +62 -0
  278. package/dist/get-GEUSRD5Y.js +59 -0
  279. package/dist/get-JIZPYK3Z.js +74 -0
  280. package/dist/get-TS2ZJDCQ.js +38 -0
  281. package/dist/get-YWDZYEAC.js +92 -0
  282. package/dist/gif-NP6EDGEE.js +111 -0
  283. package/dist/google-DTSLO3PT.js +163 -0
  284. package/dist/google-JY7KDAFC.js +3300 -0
  285. package/dist/google-ads-RZOQQDQN.js +198 -0
  286. package/dist/group-3DT4UYSR.js +43 -0
  287. package/dist/group-OEKKCFXT.js +43 -0
  288. package/dist/gsc-4FEFPFPB.js +30 -0
  289. package/dist/history-H7S7XRBX.js +153 -0
  290. package/dist/history-XL52537O.js +102 -0
  291. package/dist/history-YQSYXBJH.js +69 -0
  292. package/dist/hubspot-2DSISSUI.js +814 -0
  293. package/dist/icon-43UJTGGE.js +138 -0
  294. package/dist/ideas-2XBFQJ56.js +45 -0
  295. package/dist/images-VFRQ32G5.js +92 -0
  296. package/dist/improve-IMXQN6OD.js +86 -0
  297. package/dist/ingest-4RPLN54K.js +28 -0
  298. package/dist/ingest-TPVH44VI.js +131 -0
  299. package/dist/insights-BR3456EI.js +658 -0
  300. package/dist/insights-UVCFOB3N.js +132 -0
  301. package/dist/inspect-VD3GVXDU.js +192 -0
  302. package/dist/inspiration-XZI5KCQW.js +53 -0
  303. package/dist/instant-experiences-2LKF7XVK.js +264 -0
  304. package/dist/intent-F5NTOSQC.js +95 -0
  305. package/dist/job-GOX3KIKG.js +202 -0
  306. package/dist/job-create-F2PQSN3C.js +109 -0
  307. package/dist/job-status-3FMA5D7T.js +74 -0
  308. package/dist/keep-23ZYMWPG.js +78 -0
  309. package/dist/keyword-gap-EB5QATYN.js +130 -0
  310. package/dist/keyword-metrics-PW2DDIJW.js +200 -0
  311. package/dist/keywords-for-site-JEPABY6E.js +131 -0
  312. package/dist/knowledge-7M7DSRF3.js +195 -0
  313. package/dist/landing-4N6YSB4L.js +28 -0
  314. package/dist/landings-VNQ4VA2U.js +151 -0
  315. package/dist/languages-2X22HXM3.js +55 -0
  316. package/dist/languages-4S26FJDP.js +40 -0
  317. package/dist/launches-L4EUROCJ.js +19 -0
  318. package/dist/layerize-6QHQMA7Q.js +190 -0
  319. package/dist/lead-routes-5TPFJEVH.js +733 -0
  320. package/dist/leads-4TLOH47R.js +541 -0
  321. package/dist/leads-R5OZJQHW.js +115 -0
  322. package/dist/learn-AQ2FRFB7.js +207 -0
  323. package/dist/library-MNJC24E4.js +212 -0
  324. package/dist/lighthouse-DJMAXFTD.js +75 -0
  325. package/dist/line-item-writes-LGO7HIJJ.js +211 -0
  326. package/dist/line-items-AAZVKQ7E.js +107 -0
  327. package/dist/link-7IGHVARH.js +67 -0
  328. package/dist/linkedin-UB2CW4KP.js +1344 -0
  329. package/dist/linkedin-person-D6U2ZAUW.js +139 -0
  330. package/dist/list-2277GCPH.js +51 -0
  331. package/dist/list-537S75BZ.js +76 -0
  332. package/dist/list-P44QRX2O.js +154 -0
  333. package/dist/list-Q52FPW3H.js +50 -0
  334. package/dist/list-UMJACDTQ.js +67 -0
  335. package/dist/list-V4PSDBLX.js +93 -0
  336. package/dist/list-VZKUHY4Y.js +306 -0
  337. package/dist/list-WIXQXNKB.js +65 -0
  338. package/dist/list-XK33NCSC.js +57 -0
  339. package/dist/locations-UWBQLHXW.js +40 -0
  340. package/dist/locations-WXGOI3VV.js +69 -0
  341. package/dist/log-6ZKMUTYS.js +95 -0
  342. package/dist/logo-4LSFZ3ZO.js +19 -0
  343. package/dist/lookup-WIM5WR25.js +23 -0
  344. package/dist/make-5CEIJRBC.js +1367 -0
  345. package/dist/map-ZL4MQVJZ.js +445 -0
  346. package/dist/mcp-GSRYLRD4.js +729 -0
  347. package/dist/media-34I7UB7Z.js +89 -0
  348. package/dist/media-KKI3KWLR.js +18 -0
  349. package/dist/media-sources-VSPVHLYN.js +35 -0
  350. package/dist/members-L6SXP6GC.js +47 -0
  351. package/dist/meme-6NFYFQ7T.js +108 -0
  352. package/dist/meta-2UK7KIE4.js +124 -0
  353. package/dist/metrics-4AFEEDVP.js +152 -0
  354. package/dist/models-2ZEM64H5.js +155 -0
  355. package/dist/normalize-G75RDSE4.js +806 -0
  356. package/dist/normalize-GK7DH7ZP.js +144 -0
  357. package/dist/options-FDAAHG7C.js +125 -0
  358. package/dist/organization-K2FTFAAO.js +949 -0
  359. package/dist/output-ELEO2Z6R.js +24 -0
  360. package/dist/page-4X6IBUWG.js +105 -0
  361. package/dist/page-photos-KNBLMFLN.js +118 -0
  362. package/dist/pages-7HW5YOZV.js +67 -0
  363. package/dist/performance-N3UROH7Z.js +5565 -0
  364. package/dist/performance-RG2HR46T.js +27 -0
  365. package/dist/pinterest-KA6VFDM4.js +105 -0
  366. package/dist/pixels-D5HF24FI.js +109 -0
  367. package/dist/pixels-HEI5WVAO.js +62 -0
  368. package/dist/plan-XCA6R3HZ.js +208 -0
  369. package/dist/posts-ALGM6ONV.js +36 -0
  370. package/dist/preview-55TRUF4Q.js +245 -0
  371. package/dist/preview-NVWIEUHF.js +101 -0
  372. package/dist/profile-NHUPUCBR.js +159 -0
  373. package/dist/promoted-tweet-writes-7QZRFDOM.js +183 -0
  374. package/dist/promoted-tweets-V555Y7DN.js +119 -0
  375. package/dist/properties-2ZXA5BPJ.js +101 -0
  376. package/dist/publish-5KR6YLA6.js +350 -0
  377. package/dist/query-63CTX2PH.js +231 -0
  378. package/dist/query-DMWY3TDD.js +236 -0
  379. package/dist/query-K7MYBRTS.js +62 -0
  380. package/dist/questionnaire-WHE42RD4.js +94 -0
  381. package/dist/read-NESEKULG.js +141 -0
  382. package/dist/reddit-XPQ7YAJW.js +29 -0
  383. package/dist/refresh-ILDEPU5A.js +42 -0
  384. package/dist/refresh-XFHEBSDU.js +97 -0
  385. package/dist/release-3ECEF26P.js +63 -0
  386. package/dist/relevant-pages-XYQKVX3U.js +99 -0
  387. package/dist/remove-NHE4UT7G.js +49 -0
  388. package/dist/remove-OCTUC3RB.js +53 -0
  389. package/dist/reopen-JRI3TYD4.js +66 -0
  390. package/dist/rerun-HWWYCDT2.js +97 -0
  391. package/dist/research-ODPU62BA.js +265 -0
  392. package/dist/research-TG5CBTYP.js +75 -0
  393. package/dist/reset-J2NLNITD.js +57 -0
  394. package/dist/reset-SRU7YJUR.js +57 -0
  395. package/dist/resolve-KHMMUGB2.js +124 -0
  396. package/dist/retry-VLH4AO7F.js +65 -0
  397. package/dist/retry-WP7LWKZF.js +63 -0
  398. package/dist/retry-failed-R5HPQ3KQ.js +45 -0
  399. package/dist/revenue-EEIS2AV5.js +91 -0
  400. package/dist/rule-writes-QB4IWFCJ.js +530 -0
  401. package/dist/rules-FYVD2QBB.js +217 -0
  402. package/dist/rules-TTUGQAEB.js +99 -0
  403. package/dist/rules-add-AIXUAZXG.js +465 -0
  404. package/dist/run-AQTACLY6.js +69 -0
  405. package/dist/run-YA6IWQAJ.js +72 -0
  406. package/dist/scaffold-ad-IYNFJPT7.js +1513 -0
  407. package/dist/scaffold-static-ad-SPYKSAJR.js +1012 -0
  408. package/dist/scaffold-video-BUN27PKS.js +885 -0
  409. package/dist/schedule-D7EDEM45.js +67 -0
  410. package/dist/schedule-EH2MOC5C.js +64 -0
  411. package/dist/scheduled-agents-DTAEP25E.js +55 -0
  412. package/dist/schema-7B4MVVAS.js +135 -0
  413. package/dist/schema-Z43AJOJ4.js +152 -0
  414. package/dist/scrape-VL2RWSTW.js +2209 -0
  415. package/dist/screenshot-Y6EEXS3Q.js +103 -0
  416. package/dist/search-CXC7N5XJ.js +51 -0
  417. package/dist/search-JEXYEAPQ.js +228 -0
  418. package/dist/search-L3GTZYRW.js +92 -0
  419. package/dist/search-TXBYKNQC.js +91 -0
  420. package/dist/search-XHSTUBDY.js +26 -0
  421. package/dist/search-ZZWIJRXJ.js +177 -0
  422. package/dist/search-copy-FIPG7OCC.js +168 -0
  423. package/dist/seeds-ADJKURNG.js +101 -0
  424. package/dist/select-LWZRF7KV.js +110 -0
  425. package/dist/sends-RS4LWRAC.js +349 -0
  426. package/dist/sequences-2RPKDKGQ.js +146 -0
  427. package/dist/set-prompt-YKDH6FYK.js +199 -0
  428. package/dist/setup-links-OE6PC2YQ.js +144 -0
  429. package/dist/shared-4GGUIOF2.js +32 -0
  430. package/dist/shopify-CCPLZI2H.js +4009 -0
  431. package/dist/site-FW5BBLYG.js +180 -0
  432. package/dist/sitemaps-Z6IELTQV.js +77 -0
  433. package/dist/sites-KLAKI2EY.js +97 -0
  434. package/dist/skills-OJP36EVR.js +47 -0
  435. package/dist/sources-WPHMWBEK.js +30 -0
  436. package/dist/sources-X77TGJ52.js +457 -0
  437. package/dist/stale-SPCDL73V.js +90 -0
  438. package/dist/stats-MIMFX4R7.js +34 -0
  439. package/dist/status-FLETGJ2A.js +65 -0
  440. package/dist/sticker-IREEEN7I.js +103 -0
  441. package/dist/stock-5AOSQH52.js +212 -0
  442. package/dist/studies-YGYAH3JI.js +250 -0
  443. package/dist/studio-4EV5S7PR.js +49 -0
  444. package/dist/study-writes-UPGJB36A.js +471 -0
  445. package/dist/suggest-5RTISDLI.js +66 -0
  446. package/dist/sync-363VKXU3.js +57 -0
  447. package/dist/sync-OHIXI4I6.js +55 -0
  448. package/dist/sync-VCAFAYW4.js +279 -0
  449. package/dist/sync-definition-ZDE5L644.js +70 -0
  450. package/dist/tag-DSCUKNC3.js +57 -0
  451. package/dist/tag-manager-IINALUEJ.js +43 -0
  452. package/dist/tags-6MN3AWKN.js +23 -0
  453. package/dist/tags-VOKUNEIW.js +227 -0
  454. package/dist/tags-Y6MNMIEA.js +23 -0
  455. package/dist/tags-YHAC3NVY.js +23 -0
  456. package/dist/tags-ZCQMJ5YH.js +26 -0
  457. package/dist/targeting-BM72UTI6.js +762 -0
  458. package/dist/targeting-constants-54S3FXIF.js +118 -0
  459. package/dist/targeting-criteria-ECQFHQF3.js +113 -0
  460. package/dist/targets-U2JHTB5U.js +106 -0
  461. package/dist/terms-OFHNLW6U.js +102 -0
  462. package/dist/testimonials-IDVLMXDT.js +32 -0
  463. package/dist/themes-QMR5TWTI.js +95 -0
  464. package/dist/top-companies-CBI4O3ZB.js +111 -0
  465. package/dist/transcript-IIRFTFRW.js +165 -0
  466. package/dist/translate-N6QW4FZB.js +603 -0
  467. package/dist/triggers-Q3KRAMA3.js +144 -0
  468. package/dist/tweets-TRTXC6O4.js +123 -0
  469. package/dist/unfollow-DATOGPLZ.js +46 -0
  470. package/dist/unlink-7RVQXKAR.js +70 -0
  471. package/dist/unstage-3LPHNZKR.js +88 -0
  472. package/dist/unstage-LLQCMZ5H.js +96 -0
  473. package/dist/update-AL3LBHGK.js +192 -0
  474. package/dist/update-AWR7EHGA.js +155 -0
  475. package/dist/update-LNSSLZXG.js +66 -0
  476. package/dist/update-SD5YQIJC.js +81 -0
  477. package/dist/update-YBTFH5MN.js +101 -0
  478. package/dist/upload-45GCGMA5.js +137 -0
  479. package/dist/upload-7PPMVWVA.js +155 -0
  480. package/dist/upscale-WVJZG76V.js +109 -0
  481. package/dist/url-options-AHJPR5VY.js +131 -0
  482. package/dist/url-params-U6ZM4LL2.js +101 -0
  483. package/dist/use-6FADOAFZ.js +111 -0
  484. package/dist/validate-S325RXPH.js +135 -0
  485. package/dist/validate-S325RXPH.js.map +1 -0
  486. package/dist/variant-RNM36P4J.js +338 -0
  487. package/dist/videos-GHFCOTT7.js +146 -0
  488. package/dist/videos-NW2UP342.js +41 -0
  489. package/dist/view-YR6MDLWL.js +133 -0
  490. package/dist/viewer-check-IDXFRRCO.js +83 -0
  491. package/dist/web-VMPKMBKA.js +173 -0
  492. package/dist/winners-4T5RFQXU.js +113 -0
  493. package/dist/winning-ads-7UJXCWFH.js +86 -0
  494. package/dist/write-commands-6D55SB56.js +206 -0
  495. package/dist/write-commands-AIWLEGO2.js +1169 -0
  496. package/dist/write-commands-R42DQEW6.js +1524 -0
  497. package/dist/write-commands-UO3OQIHH.js +721 -0
  498. package/dist/x-UGTUOCVR.js +47 -0
  499. package/package.json +1 -1
  500. package/dist/account-MYM2QNFO.js +0 -82
  501. package/dist/account-OUKPRB7C.js +0 -139
  502. package/dist/account-YJ2NNQYP.js +0 -82
  503. package/dist/account-assets-HOOPV5KR.js +0 -290
  504. package/dist/account-level-3QWMJTZQ.js +0 -611
  505. package/dist/account-reads-RKK5BA6L.js +0 -219
  506. package/dist/account-users-GHMPDZUM.js +0 -64
  507. package/dist/account-writes-HEXKGWXC.js +0 -68
  508. package/dist/accounts-DDNEHXXT.js +0 -713
  509. package/dist/accounts-K7VD47FG.js +0 -119
  510. package/dist/accounts-OSVXKNSI.js +0 -76
  511. package/dist/accounts-S7CEGWJL.js +0 -80
  512. package/dist/accounts-SJOO4MQX.js +0 -115
  513. package/dist/actions-JIXQEVIN.js +0 -55
  514. package/dist/active-entities-4KQQSMRZ.js +0 -103
  515. package/dist/activecampaign-4ST7BMHO.js +0 -938
  516. package/dist/activities-FRA33VZZ.js +0 -75
  517. package/dist/ad-group-writes-O2OP4NJ6.js +0 -172
  518. package/dist/ad-groups-AMMMWHHX.js +0 -70
  519. package/dist/ad-writes-IWLRLR2E.js +0 -176
  520. package/dist/add-IMKVYDQV.js +0 -85
  521. package/dist/add-NZ6SEWUR.js +0 -107
  522. package/dist/add-PZEVRQ7Z.js +0 -81
  523. package/dist/add-QXI627AS.js +0 -148
  524. package/dist/add-SPQ4MOCQ.js +0 -97
  525. package/dist/add-ZH5HJBUN.js +0 -305
  526. package/dist/add-accounts-D4V5K7SO.js +0 -91
  527. package/dist/ads-7TQKAH4B.js +0 -48
  528. package/dist/ads-KLSFKXUE.js +0 -79
  529. package/dist/ads-L6SMNOUM.js +0 -120
  530. package/dist/ads-RTRWWEP5.js +0 -128
  531. package/dist/adsets-R75LSEV5.js +0 -182
  532. package/dist/advertisers-2GKICB23.js +0 -125
  533. package/dist/advertisers-T37UHN3C.js +0 -123
  534. package/dist/analytics-ITBXTEIC.js +0 -2437
  535. package/dist/analytics-WXLRAXXN.js +0 -447
  536. package/dist/animate-WS63CZ3Y.js +0 -480
  537. package/dist/approved-3XFZNRJR.js +0 -73
  538. package/dist/asset-writes-DECROLE3.js +0 -50
  539. package/dist/assign-3CVJL35R.js +0 -80
  540. package/dist/audience-size-23UFSW6H.js +0 -76
  541. package/dist/audience-writes-VSC2BY4Y.js +0 -327
  542. package/dist/audiences-76S4WY7Q.js +0 -280
  543. package/dist/audiences-RN745R53.js +0 -85
  544. package/dist/audiences-V773XHP2.js +0 -106
  545. package/dist/audit-BIHMDO5K.js +0 -88
  546. package/dist/audit-OT42WBII.js +0 -154
  547. package/dist/autocomplete-T642QXBX.js +0 -114
  548. package/dist/avatars-33UGHCQA.js +0 -38
  549. package/dist/bid-pricing-UHU2HOAP.js +0 -103
  550. package/dist/brand-36YIAVGK.js +0 -22
  551. package/dist/brief-A5XFT6VH.js +0 -543
  552. package/dist/businesses-HECSW3EL.js +0 -54
  553. package/dist/campaign-groups-TAVIZR4L.js +0 -99
  554. package/dist/campaign-writes-72OPCWMG.js +0 -176
  555. package/dist/campaign-writes-AQ5T5TII.js +0 -168
  556. package/dist/campaigns-3P2UZWPD.js +0 -111
  557. package/dist/campaigns-D2V423FD.js +0 -113
  558. package/dist/campaigns-NW2H7SAR.js +0 -78
  559. package/dist/campaigns-S62KEFVL.js +0 -130
  560. package/dist/canvas-D7L7R4D2.js +0 -46
  561. package/dist/capabilities-YC36LOZU.js +0 -147
  562. package/dist/cards-RYQN5JLR.js +0 -85
  563. package/dist/catalog-URTZYAPU.js +0 -66
  564. package/dist/catalogs-G33WT5PS.js +0 -782
  565. package/dist/catalogs-XLWWM2Q3.js +0 -130
  566. package/dist/changes-SI2W2PZL.js +0 -167
  567. package/dist/chatgpt-PPWG5WOF.js +0 -47
  568. package/dist/chats-M3RP62YO.js +0 -584
  569. package/dist/check-FQYDJ5RS.js +0 -107
  570. package/dist/chunk-23RVCBL7.js +0 -709
  571. package/dist/chunk-2JBPS2CV.js +0 -89
  572. package/dist/chunk-2N2R5YSN.js +0 -156
  573. package/dist/chunk-2VW7S77J.js +0 -399
  574. package/dist/chunk-3LYT3NQX.js +0 -42
  575. package/dist/chunk-45D6WRCJ.js +0 -476
  576. package/dist/chunk-4H6XLX7E.js +0 -97
  577. package/dist/chunk-4OQG4HBG.js +0 -274
  578. package/dist/chunk-4PAGS7QH.js +0 -76
  579. package/dist/chunk-4UNJ4ENA.js +0 -106
  580. package/dist/chunk-5C4RRCKM.js +0 -69
  581. package/dist/chunk-5E4Y6RVY.js +0 -56
  582. package/dist/chunk-5ZHXLY7Y.js +0 -219
  583. package/dist/chunk-6E4KJMXO.js +0 -51
  584. package/dist/chunk-6PO3WSFJ.js +0 -97
  585. package/dist/chunk-6QINKM6T.js +0 -46
  586. package/dist/chunk-7CORYCEZ.js +0 -142
  587. package/dist/chunk-7TVVYP7K.js +0 -217
  588. package/dist/chunk-A4O3JL6D.js +0 -26
  589. package/dist/chunk-AC7WLPXF.js +0 -8954
  590. package/dist/chunk-AIK2HPDZ.js +0 -312
  591. package/dist/chunk-ANRTDNPQ.js +0 -115
  592. package/dist/chunk-B2BQ2Q64.js +0 -287
  593. package/dist/chunk-BESCYH3K.js +0 -125
  594. package/dist/chunk-BGMIO2FR.js +0 -64
  595. package/dist/chunk-CCYZJMZ7.js +0 -2522
  596. package/dist/chunk-CCYZJMZ7.js.map +0 -1
  597. package/dist/chunk-CDTAKCJR.js +0 -178
  598. package/dist/chunk-CORECUKT.js +0 -685
  599. package/dist/chunk-CP6RFWLW.js +0 -69
  600. package/dist/chunk-D3YAFC6K.js +0 -98
  601. package/dist/chunk-DEZBCK5P.js +0 -66
  602. package/dist/chunk-DLM5OSHM.js +0 -843
  603. package/dist/chunk-DRQI2CJJ.js +0 -138
  604. package/dist/chunk-DWPOAU4Z.js +0 -5471
  605. package/dist/chunk-E3PYHCQL.js +0 -344
  606. package/dist/chunk-E56V3RFO.js +0 -75
  607. package/dist/chunk-EFTYCX5C.js +0 -46
  608. package/dist/chunk-EIDHLGQM.js +0 -249
  609. package/dist/chunk-EJBLF2LI.js +0 -167
  610. package/dist/chunk-EL3TDR5S.js +0 -1744
  611. package/dist/chunk-FB5OU5HZ.js +0 -169
  612. package/dist/chunk-FGAXZ7ET.js +0 -23
  613. package/dist/chunk-FGTOOTYC.js +0 -91
  614. package/dist/chunk-FLQNIFG2.js +0 -84
  615. package/dist/chunk-FUIGPJZZ.js +0 -1320
  616. package/dist/chunk-G6U45QD3.js +0 -296
  617. package/dist/chunk-GDRJS2QJ.js +0 -197
  618. package/dist/chunk-GO6ISZUZ.js +0 -52
  619. package/dist/chunk-GUYFVYLY.js +0 -170
  620. package/dist/chunk-GWLP45WQ.js +0 -1518
  621. package/dist/chunk-H3HA22Z3.js +0 -1919
  622. package/dist/chunk-HBRXFQQV.js +0 -3510
  623. package/dist/chunk-HH5WM5VA.js +0 -430
  624. package/dist/chunk-HJ3Q4NOM.js +0 -58
  625. package/dist/chunk-IDDG4QKO.js +0 -39
  626. package/dist/chunk-IID2MAYZ.js +0 -91
  627. package/dist/chunk-IWNLW7ZC.js +0 -139
  628. package/dist/chunk-J32CYEIH.js +0 -74
  629. package/dist/chunk-JED4JBIK.js +0 -225
  630. package/dist/chunk-JIE45TKJ.js +0 -962
  631. package/dist/chunk-JTIWQLY5.js +0 -98
  632. package/dist/chunk-JWV7LUFM.js +0 -547
  633. package/dist/chunk-JXTNP3B5.js +0 -215
  634. package/dist/chunk-KDAINT54.js +0 -131
  635. package/dist/chunk-KDVYI4LC.js +0 -35
  636. package/dist/chunk-KH7AOX2R.js +0 -930
  637. package/dist/chunk-KJTMY7K6.js +0 -224
  638. package/dist/chunk-KNA3OWJC.js +0 -114
  639. package/dist/chunk-L5GFFF5G.js +0 -604
  640. package/dist/chunk-LC6PVPJX.js +0 -76
  641. package/dist/chunk-MK4HCMEA.js +0 -325
  642. package/dist/chunk-MOKZ5XZO.js +0 -455
  643. package/dist/chunk-MXVP7Z54.js +0 -163
  644. package/dist/chunk-MYIOR35H.js +0 -225
  645. package/dist/chunk-N3PASNUA.js +0 -136
  646. package/dist/chunk-O3O7PXMK.js +0 -103
  647. package/dist/chunk-OFMFBRSL.js +0 -25
  648. package/dist/chunk-OLPABGH3.js +0 -152
  649. package/dist/chunk-ORQ3WBM6.js +0 -225
  650. package/dist/chunk-PH3FZZIT.js +0 -544
  651. package/dist/chunk-Q5DFEVLE.js +0 -148
  652. package/dist/chunk-QEREDRZO.js +0 -246
  653. package/dist/chunk-QUSDGZFS.js +0 -188
  654. package/dist/chunk-QZSNT67Z.js +0 -24026
  655. package/dist/chunk-RF3TP643.js +0 -288
  656. package/dist/chunk-RIRSFFWA.js +0 -191
  657. package/dist/chunk-RJ2ETGAQ.js +0 -73
  658. package/dist/chunk-SIUYWLXB.js +0 -494
  659. package/dist/chunk-TYFXPC5D.js +0 -1902
  660. package/dist/chunk-TYFXPC5D.js.map +0 -1
  661. package/dist/chunk-TZTHGLWN.js +0 -66
  662. package/dist/chunk-UJTIMPEE.js +0 -203
  663. package/dist/chunk-UKZKLXTE.js +0 -638
  664. package/dist/chunk-UQZZM6UM.js +0 -831
  665. package/dist/chunk-UUXGSDUC.js +0 -297
  666. package/dist/chunk-UZHDNE6M.js +0 -2209
  667. package/dist/chunk-UZHDNE6M.js.map +0 -1
  668. package/dist/chunk-VJ4IOJQZ.js +0 -19
  669. package/dist/chunk-VMZ62LHB.js +0 -1254
  670. package/dist/chunk-W743FIEY.js +0 -207
  671. package/dist/chunk-WR5Y64OE.js +0 -718
  672. package/dist/chunk-X3GWGFZP.js +0 -5368
  673. package/dist/chunk-X3YYZLBH.js +0 -285
  674. package/dist/chunk-X6U3B6YK.js +0 -343
  675. package/dist/chunk-XRUB4KRV.js +0 -191
  676. package/dist/chunk-XRUB4KRV.js.map +0 -1
  677. package/dist/chunk-XZAVBONI.js +0 -64
  678. package/dist/chunk-Y5PNLB24.js +0 -84
  679. package/dist/chunk-Y6XWO4V4.js +0 -111
  680. package/dist/chunk-YB6G3B3L.js +0 -45
  681. package/dist/chunk-ZICB4OI5.js +0 -106
  682. package/dist/chunk-ZQ7JDYJB.js +0 -454
  683. package/dist/chunk-ZZ5B2ZRM.js +0 -94
  684. package/dist/cite-AJ5ZQWD2.js +0 -191
  685. package/dist/claim-CG3J32WS.js +0 -200
  686. package/dist/client-F6KOC77S.js +0 -19
  687. package/dist/code-NV4ARLFS.js +0 -76
  688. package/dist/companies-DQKUPFWT.js +0 -198
  689. package/dist/company-4CD2OJLB.js +0 -308
  690. package/dist/complete-JSP6VQYI.js +0 -84
  691. package/dist/config-GIETKZGS.js +0 -88
  692. package/dist/connect-O5NRDY4Y.js +0 -45
  693. package/dist/content-EQZKKIST.js +0 -85
  694. package/dist/conversation-YHKIB3CU.js +0 -96
  695. package/dist/conversion-report-JV6WZLB3.js +0 -127
  696. package/dist/conversion-upload-command-LXJYNNCK.js +0 -439
  697. package/dist/conversion-writes-NH3DKRQX.js +0 -122
  698. package/dist/conversions-E2KOXF3N.js +0 -140
  699. package/dist/conversions-TKPTZJVM.js +0 -78
  700. package/dist/copy-writes-FP3EI5LI.js +0 -170
  701. package/dist/countries-GZSBGSVT.js +0 -82
  702. package/dist/create-DQ5X5AJT.js +0 -62
  703. package/dist/create-FNPFVKLT.js +0 -239
  704. package/dist/create-GXOFZCR5.js +0 -135
  705. package/dist/create-VAZ65QNJ.js +0 -218
  706. package/dist/creatives-5EIDMQ66.js +0 -229
  707. package/dist/creatives-N7V2BSOW.js +0 -118
  708. package/dist/creatives-QWNQDPNE.js +0 -58
  709. package/dist/credentials-VCERJE24.js +0 -290
  710. package/dist/critique-62QFBC33.js +0 -1451
  711. package/dist/critique-MSL6EU5V.js +0 -232
  712. package/dist/crm-J3SCOR4L.js +0 -323
  713. package/dist/crm-PMPO6QJE.js +0 -229
  714. package/dist/crop-4V4P3SKI.js +0 -113
  715. package/dist/currency-NFKS6PRB.js +0 -88
  716. package/dist/custom-conversions-BFMGX2M3.js +0 -128
  717. package/dist/customers-EYVTYCGY.js +0 -65
  718. package/dist/decide-AM6B7WIL.js +0 -199
  719. package/dist/delete-46B7DSQV.js +0 -71
  720. package/dist/delete-7A6T6XBD.js +0 -69
  721. package/dist/delete-I3W3M6T7.js +0 -67
  722. package/dist/delete-RZCW3Y6L.js +0 -57
  723. package/dist/delete-WAPC4XC2.js +0 -69
  724. package/dist/delete-YYIM564B.js +0 -85
  725. package/dist/demographics-CPMNWMBZ.js +0 -141
  726. package/dist/describe-5OC7XX2U.js +0 -97
  727. package/dist/describe-EAPKNUUU.js +0 -97
  728. package/dist/dimensions-KI3OENZD.js +0 -101
  729. package/dist/discard-I773LYVR.js +0 -69
  730. package/dist/discover-DDYFCWQL.js +0 -172
  731. package/dist/discover-P7PBB3IV.js +0 -93
  732. package/dist/domain-7YO5HYHU.js +0 -101
  733. package/dist/download-IYK3UVBF.js +0 -172
  734. package/dist/download-YB2DVMRS.js +0 -337
  735. package/dist/draft-2EVXU5XB.js +0 -134
  736. package/dist/draft-2Z7EGKBO.js +0 -220
  737. package/dist/draft-4UTNI7BT.js +0 -332
  738. package/dist/draft-BCRW4RLR.js +0 -578
  739. package/dist/draft-CQPEGNPP.js +0 -374
  740. package/dist/draft-CQWYTMSS.js +0 -138
  741. package/dist/draft-JYZA3BFD.js +0 -260
  742. package/dist/draft-VT7DAOB7.js +0 -315
  743. package/dist/env-2RHPS2VF.js +0 -53
  744. package/dist/experiment-YAX26BOO.js +0 -1397
  745. package/dist/experiments-ZEN2H3RV.js +0 -236
  746. package/dist/export-RPNRPTDK.js +0 -168
  747. package/dist/extract-ZIW5JFTY.js +0 -143
  748. package/dist/facets-RNC4D4UH.js +0 -117
  749. package/dist/favorites-536I3GZD.js +0 -178
  750. package/dist/feed-W3ECHUEX.js +0 -177
  751. package/dist/feedback-2YJ24NV7.js +0 -115
  752. package/dist/feedback-X3GLQ2QF.js +0 -114
  753. package/dist/feedback-record-A5JLS3QY.js +0 -269
  754. package/dist/fetch-6XMRKLYH.js +0 -204
  755. package/dist/fetch-KB64NPDF.js +0 -139
  756. package/dist/find-UGFONLSD.js +0 -144
  757. package/dist/fit-BRJSLR7P.js +0 -65
  758. package/dist/flows-LXJHL3KW.js +0 -340
  759. package/dist/follow-5VX5JWAQ.js +0 -94
  760. package/dist/follow-competitors-D7I33T5C.js +0 -112
  761. package/dist/following-6DI4IZ7P.js +0 -113
  762. package/dist/fonts-UUSCLUHW.js +0 -39
  763. package/dist/forecast-YIDXHMST.js +0 -121
  764. package/dist/forecast-YO6BNYX7.js +0 -169
  765. package/dist/funding-QDKFNQI2.js +0 -85
  766. package/dist/funnel-M3SRPZQT.js +0 -397
  767. package/dist/ga4-N6EBLN2W.js +0 -55
  768. package/dist/generate-VGGXTZBP.js +0 -263
  769. package/dist/get-42V7UTNF.js +0 -59
  770. package/dist/get-5SCYUC4G.js +0 -38
  771. package/dist/get-BQBLPGFE.js +0 -74
  772. package/dist/get-JHOH74X5.js +0 -56
  773. package/dist/get-KVZSVN7U.js +0 -62
  774. package/dist/get-OZ7THI2W.js +0 -82
  775. package/dist/get-TBMTBGHJ.js +0 -62
  776. package/dist/get-V4NJXKUR.js +0 -92
  777. package/dist/gif-M2GMVWM4.js +0 -111
  778. package/dist/google-5U5KXEX7.js +0 -163
  779. package/dist/google-KTVWAA7F.js +0 -3300
  780. package/dist/google-ads-YZTK3YTW.js +0 -198
  781. package/dist/group-PLTVV7UZ.js +0 -43
  782. package/dist/group-THZPJALS.js +0 -43
  783. package/dist/gsc-FILOUFCG.js +0 -30
  784. package/dist/history-QATQCGVQ.js +0 -69
  785. package/dist/history-RYTNMGU5.js +0 -153
  786. package/dist/history-XDYDNQWK.js +0 -102
  787. package/dist/hubspot-IJERD4KT.js +0 -814
  788. package/dist/icon-THWS5VPO.js +0 -138
  789. package/dist/ideas-TT24LJR5.js +0 -45
  790. package/dist/images-PLYPUXM2.js +0 -92
  791. package/dist/improve-NWFQI63B.js +0 -86
  792. package/dist/ingest-CSPC3RUK.js +0 -131
  793. package/dist/ingest-MSPQX3Z6.js +0 -28
  794. package/dist/insights-AVNMRFQ4.js +0 -658
  795. package/dist/insights-OZ2EXOHH.js +0 -132
  796. package/dist/inspect-VD6CB2NA.js +0 -192
  797. package/dist/inspiration-FPB3IB7X.js +0 -53
  798. package/dist/instant-experiences-M2JYG2QS.js +0 -264
  799. package/dist/intent-HXRSLFIO.js +0 -95
  800. package/dist/job-OJB6KIDV.js +0 -202
  801. package/dist/job-create-C6FGCDW4.js +0 -109
  802. package/dist/job-status-4RJHESID.js +0 -74
  803. package/dist/keep-I6FLGJH4.js +0 -78
  804. package/dist/keyword-gap-WUHMSTNR.js +0 -130
  805. package/dist/keyword-metrics-NJV3WR75.js +0 -200
  806. package/dist/keywords-for-site-B7MUDHFH.js +0 -131
  807. package/dist/knowledge-H5PJ6LZB.js +0 -195
  808. package/dist/landing-RKOEVY7L.js +0 -28
  809. package/dist/landings-AELJXEYN.js +0 -151
  810. package/dist/languages-27QCKMNL.js +0 -40
  811. package/dist/languages-GCRI2PI3.js +0 -55
  812. package/dist/launches-CKPZFVMQ.js +0 -19
  813. package/dist/layerize-PHY25VNC.js +0 -190
  814. package/dist/lead-routes-ZMKRNL57.js +0 -733
  815. package/dist/leads-AEXWNBAT.js +0 -541
  816. package/dist/leads-O2NLCYDO.js +0 -115
  817. package/dist/learn-XNN3DGDF.js +0 -207
  818. package/dist/library-5YJCCEFL.js +0 -212
  819. package/dist/lighthouse-W3KAVW2G.js +0 -75
  820. package/dist/line-item-writes-VSP6WEYK.js +0 -211
  821. package/dist/line-items-BQ2CKMGL.js +0 -107
  822. package/dist/link-ENZQAISO.js +0 -67
  823. package/dist/linkedin-YALC66DF.js +0 -1344
  824. package/dist/linkedin-person-3RCX4MI3.js +0 -139
  825. package/dist/list-2EJ3XZ6I.js +0 -93
  826. package/dist/list-AF522LRC.js +0 -67
  827. package/dist/list-BQWHFEWY.js +0 -65
  828. package/dist/list-E7JG27WS.js +0 -50
  829. package/dist/list-ERCPPED6.js +0 -76
  830. package/dist/list-GPTYUCSX.js +0 -154
  831. package/dist/list-HYZL4576.js +0 -57
  832. package/dist/list-IKQFAJP7.js +0 -51
  833. package/dist/list-VYTHVUDP.js +0 -306
  834. package/dist/locations-EA5VGY56.js +0 -69
  835. package/dist/locations-OS24BBXE.js +0 -40
  836. package/dist/log-NJR3FJWN.js +0 -95
  837. package/dist/logo-ZSSR66WS.js +0 -19
  838. package/dist/lookup-QNLX2535.js +0 -23
  839. package/dist/make-4XUB6RSF.js +0 -1367
  840. package/dist/map-LIYQCWXU.js +0 -445
  841. package/dist/mcp-QDOAKB3A.js +0 -729
  842. package/dist/media-5SWJCRHI.js +0 -18
  843. package/dist/media-WGIEUEZW.js +0 -89
  844. package/dist/media-sources-LFSDIPUB.js +0 -35
  845. package/dist/members-KGKQQFMN.js +0 -47
  846. package/dist/meme-3QYKC4BF.js +0 -108
  847. package/dist/meta-DRDMT5X4.js +0 -124
  848. package/dist/metrics-NCAYDJNO.js +0 -152
  849. package/dist/models-SITHUNAA.js +0 -155
  850. package/dist/normalize-DQPKM3MG.js +0 -144
  851. package/dist/normalize-M3VMWF4W.js +0 -806
  852. package/dist/options-XIH7YPEG.js +0 -125
  853. package/dist/organization-BUSXIGA4.js +0 -949
  854. package/dist/output-HZW7LNUL.js +0 -24
  855. package/dist/page-GBLVAKU3.js +0 -105
  856. package/dist/page-photos-PDSKTR2Z.js +0 -118
  857. package/dist/pages-UH6XEZBO.js +0 -67
  858. package/dist/performance-PU4NHFUE.js +0 -27
  859. package/dist/performance-Y2DTYSFV.js +0 -5565
  860. package/dist/pinterest-235S7E6H.js +0 -105
  861. package/dist/pixels-GY4LKGJK.js +0 -62
  862. package/dist/pixels-PYNK73UG.js +0 -109
  863. package/dist/plan-4OYUV2EF.js +0 -208
  864. package/dist/posts-F327IP23.js +0 -36
  865. package/dist/preview-7E4E3QPT.js +0 -245
  866. package/dist/preview-NP3OFLT6.js +0 -101
  867. package/dist/profile-MKKJT2UF.js +0 -159
  868. package/dist/promoted-tweet-writes-XILB6VCP.js +0 -183
  869. package/dist/promoted-tweets-CBYZG6BG.js +0 -119
  870. package/dist/properties-RDOGNY2O.js +0 -101
  871. package/dist/publish-MDVPC77V.js +0 -350
  872. package/dist/query-K7R5GQ4E.js +0 -236
  873. package/dist/query-LJS64SEQ.js +0 -62
  874. package/dist/query-PO3RT7BR.js +0 -231
  875. package/dist/questionnaire-4OH6K2BF.js +0 -94
  876. package/dist/read-MU5XGWMK.js +0 -141
  877. package/dist/reddit-ZPKVVZGP.js +0 -29
  878. package/dist/refresh-JSCYTM4B.js +0 -42
  879. package/dist/refresh-V34YWN3W.js +0 -97
  880. package/dist/release-WRNUOSHB.js +0 -63
  881. package/dist/relevant-pages-OFKZYWR3.js +0 -99
  882. package/dist/remove-6FXTPEB6.js +0 -49
  883. package/dist/remove-HKWV7P27.js +0 -53
  884. package/dist/reopen-VHHYVAKC.js +0 -66
  885. package/dist/rerun-THE43RCG.js +0 -97
  886. package/dist/research-773Y7GT4.js +0 -75
  887. package/dist/research-G5A2WXVK.js +0 -265
  888. package/dist/reset-GFJ3AKF5.js +0 -57
  889. package/dist/reset-MVTWA3HT.js +0 -57
  890. package/dist/resolve-FCAP4LQ3.js +0 -124
  891. package/dist/retry-AGHA6IVT.js +0 -65
  892. package/dist/retry-LDJ6FZCZ.js +0 -63
  893. package/dist/retry-failed-FCS6PNUZ.js +0 -45
  894. package/dist/revenue-VFML2I5V.js +0 -91
  895. package/dist/rule-writes-KWJNFMJV.js +0 -530
  896. package/dist/rules-4A25K2P7.js +0 -99
  897. package/dist/rules-NRH2X4BM.js +0 -217
  898. package/dist/rules-add-GT7NCUB3.js +0 -465
  899. package/dist/run-NFLKYVIC.js +0 -72
  900. package/dist/run-ZLHQNLCF.js +0 -69
  901. package/dist/scaffold-ad-AJN67FWG.js +0 -1513
  902. package/dist/scaffold-static-ad-L6KXZ3TN.js +0 -1012
  903. package/dist/scaffold-video-XQBZZ5TZ.js +0 -885
  904. package/dist/schedule-45CJDHIX.js +0 -64
  905. package/dist/schedule-XFEPEQTN.js +0 -67
  906. package/dist/scheduled-agents-72MWHK63.js +0 -55
  907. package/dist/schema-L4PETLZT.js +0 -152
  908. package/dist/schema-VX66FH4O.js +0 -135
  909. package/dist/scrape-D3XGARHR.js +0 -2209
  910. package/dist/screenshot-5LWUP5VN.js +0 -103
  911. package/dist/search-4DBP6EH5.js +0 -92
  912. package/dist/search-HNRANK6H.js +0 -51
  913. package/dist/search-KGE3BSSH.js +0 -228
  914. package/dist/search-O3AOWEXC.js +0 -26
  915. package/dist/search-QQDR74KQ.js +0 -91
  916. package/dist/search-Y6TS5UZS.js +0 -177
  917. package/dist/search-copy-EB3TONDS.js +0 -168
  918. package/dist/seeds-RGIFHHYC.js +0 -101
  919. package/dist/select-MZ2U7U5U.js +0 -110
  920. package/dist/sends-I2B6F5NW.js +0 -349
  921. package/dist/sequences-SSLZ3XTP.js +0 -146
  922. package/dist/set-prompt-YH6PXNXB.js +0 -199
  923. package/dist/setup-links-Y4YYDQBK.js +0 -144
  924. package/dist/shared-Z7INVKCZ.js +0 -32
  925. package/dist/shopify-AUDLALBS.js +0 -4009
  926. package/dist/site-WZ654OP3.js +0 -180
  927. package/dist/sitemaps-EOMSRKOD.js +0 -77
  928. package/dist/sites-6M73AONG.js +0 -97
  929. package/dist/skills-PDHUHP2T.js +0 -47
  930. package/dist/sources-FCBFLR2J.js +0 -30
  931. package/dist/sources-OR36YOTG.js +0 -457
  932. package/dist/stale-VSSDVB4H.js +0 -90
  933. package/dist/stats-MFEH2TSW.js +0 -34
  934. package/dist/status-L7LYUD3F.js +0 -65
  935. package/dist/sticker-MWICUYQM.js +0 -103
  936. package/dist/stock-73PLAUYU.js +0 -212
  937. package/dist/studies-XNJXWD7I.js +0 -250
  938. package/dist/studio-D2OMFCZZ.js +0 -49
  939. package/dist/study-writes-MFAJQHXK.js +0 -471
  940. package/dist/suggest-KCN2NDYE.js +0 -66
  941. package/dist/sync-SI25TKY5.js +0 -279
  942. package/dist/sync-TANGFXUN.js +0 -55
  943. package/dist/sync-XBC3PSSV.js +0 -57
  944. package/dist/sync-definition-IM2NY5QC.js +0 -70
  945. package/dist/tag-NKAHDL35.js +0 -57
  946. package/dist/tag-manager-JFC6YYVP.js +0 -43
  947. package/dist/tags-2KNOJ7A6.js +0 -26
  948. package/dist/tags-COALQ2CT.js +0 -23
  949. package/dist/tags-HCJTTLSR.js +0 -227
  950. package/dist/tags-MVC56SHA.js +0 -23
  951. package/dist/tags-UNUZVGUA.js +0 -23
  952. package/dist/targeting-ZBGR2PSX.js +0 -762
  953. package/dist/targeting-constants-RF2732EW.js +0 -118
  954. package/dist/targeting-criteria-HU7OAJUA.js +0 -113
  955. package/dist/targets-BNH37YAQ.js +0 -106
  956. package/dist/terms-XFL6QO7A.js +0 -102
  957. package/dist/testimonials-IIAT5IDM.js +0 -32
  958. package/dist/themes-SUNQVNES.js +0 -95
  959. package/dist/top-companies-MSLNT33I.js +0 -111
  960. package/dist/transcript-7WFXVRVW.js +0 -165
  961. package/dist/translate-IPTYPZF6.js +0 -603
  962. package/dist/triggers-RBD2XGNG.js +0 -144
  963. package/dist/tweets-6PQHJXJC.js +0 -123
  964. package/dist/unfollow-OEMFPAFS.js +0 -46
  965. package/dist/unlink-5IMEUVIS.js +0 -70
  966. package/dist/unstage-DSOVSWEK.js +0 -88
  967. package/dist/unstage-O23ILHCY.js +0 -96
  968. package/dist/update-7JVV5ZL3.js +0 -66
  969. package/dist/update-CADTFTYC.js +0 -81
  970. package/dist/update-FIU2ECYQ.js +0 -192
  971. package/dist/update-HSS6CVUK.js +0 -101
  972. package/dist/update-XWL3Q5QY.js +0 -155
  973. package/dist/upload-B5SM33MK.js +0 -137
  974. package/dist/upload-GXS5CTOR.js +0 -155
  975. package/dist/upscale-BCI42TCP.js +0 -109
  976. package/dist/url-options-NZAS37S5.js +0 -131
  977. package/dist/url-params-LUQMABZX.js +0 -101
  978. package/dist/use-26VARHJT.js +0 -111
  979. package/dist/validate-4NXKYAL2.js +0 -125
  980. package/dist/validate-4NXKYAL2.js.map +0 -1
  981. package/dist/variant-F4EEYQJ7.js +0 -338
  982. package/dist/videos-AHOLXU42.js +0 -146
  983. package/dist/videos-FMV4AVB2.js +0 -41
  984. package/dist/view-X65GETAV.js +0 -133
  985. package/dist/viewer-check-2W6BTVQV.js +0 -83
  986. package/dist/web-K2EMYVCD.js +0 -173
  987. package/dist/winners-5PRDG7GT.js +0 -113
  988. package/dist/winning-ads-Q3RXH7EC.js +0 -86
  989. package/dist/write-commands-5OFOD7TE.js +0 -1169
  990. package/dist/write-commands-LHEJESKL.js +0 -206
  991. package/dist/write-commands-SD6DXVNK.js +0 -721
  992. package/dist/write-commands-UEQR7ZXO.js +0 -1524
  993. package/dist/x-UNSHYLJJ.js +0 -47
  994. /package/dist/{account-YJ2NNQYP.js.map → account-52WDLW4Z.js.map} +0 -0
  995. /package/dist/{account-MYM2QNFO.js.map → account-7KZ7MHMN.js.map} +0 -0
  996. /package/dist/{account-OUKPRB7C.js.map → account-NSBALYYS.js.map} +0 -0
  997. /package/dist/{account-assets-HOOPV5KR.js.map → account-assets-EPEYTJFD.js.map} +0 -0
  998. /package/dist/{account-level-3QWMJTZQ.js.map → account-level-VD4NLB2D.js.map} +0 -0
  999. /package/dist/{account-reads-RKK5BA6L.js.map → account-reads-RXF37O4N.js.map} +0 -0
  1000. /package/dist/{account-users-GHMPDZUM.js.map → account-users-NUI3ILRE.js.map} +0 -0
  1001. /package/dist/{account-writes-HEXKGWXC.js.map → account-writes-3BJSUM2V.js.map} +0 -0
  1002. /package/dist/{accounts-OSVXKNSI.js.map → accounts-A47QUTTB.js.map} +0 -0
  1003. /package/dist/{accounts-SJOO4MQX.js.map → accounts-E5TF2AFI.js.map} +0 -0
  1004. /package/dist/{accounts-DDNEHXXT.js.map → accounts-FLKNFDIE.js.map} +0 -0
  1005. /package/dist/{accounts-S7CEGWJL.js.map → accounts-I2ZLR76R.js.map} +0 -0
  1006. /package/dist/{accounts-K7VD47FG.js.map → accounts-ZV4IXOF5.js.map} +0 -0
  1007. /package/dist/{actions-JIXQEVIN.js.map → actions-IR47GVZ6.js.map} +0 -0
  1008. /package/dist/{active-entities-4KQQSMRZ.js.map → active-entities-XRSJNBOV.js.map} +0 -0
  1009. /package/dist/{activecampaign-4ST7BMHO.js.map → activecampaign-MNJYIWJL.js.map} +0 -0
  1010. /package/dist/{activities-FRA33VZZ.js.map → activities-ZDWREYR7.js.map} +0 -0
  1011. /package/dist/{ad-group-writes-O2OP4NJ6.js.map → ad-group-writes-KU4QMQZP.js.map} +0 -0
  1012. /package/dist/{ad-groups-AMMMWHHX.js.map → ad-groups-NMW2G32A.js.map} +0 -0
  1013. /package/dist/{ad-writes-IWLRLR2E.js.map → ad-writes-7NOFTOM4.js.map} +0 -0
  1014. /package/dist/{add-IMKVYDQV.js.map → add-25YZMFSH.js.map} +0 -0
  1015. /package/dist/{add-NZ6SEWUR.js.map → add-4I25INAO.js.map} +0 -0
  1016. /package/dist/{add-PZEVRQ7Z.js.map → add-7MAL7JRX.js.map} +0 -0
  1017. /package/dist/{add-QXI627AS.js.map → add-D44VCDRU.js.map} +0 -0
  1018. /package/dist/{add-SPQ4MOCQ.js.map → add-JO4ZPS23.js.map} +0 -0
  1019. /package/dist/{add-ZH5HJBUN.js.map → add-QMTD6EGI.js.map} +0 -0
  1020. /package/dist/{add-accounts-D4V5K7SO.js.map → add-accounts-EKMSHAA4.js.map} +0 -0
  1021. /package/dist/{ads-RTRWWEP5.js.map → ads-4YZYNU66.js.map} +0 -0
  1022. /package/dist/{ads-7TQKAH4B.js.map → ads-BT2DF3XN.js.map} +0 -0
  1023. /package/dist/{ads-L6SMNOUM.js.map → ads-DGL5SGP3.js.map} +0 -0
  1024. /package/dist/{ads-KLSFKXUE.js.map → ads-P4Z3MLKS.js.map} +0 -0
  1025. /package/dist/{adsets-R75LSEV5.js.map → adsets-PSVCPCE3.js.map} +0 -0
  1026. /package/dist/{advertisers-2GKICB23.js.map → advertisers-7NAPI5ZU.js.map} +0 -0
  1027. /package/dist/{advertisers-T37UHN3C.js.map → advertisers-LOIXTTGP.js.map} +0 -0
  1028. /package/dist/{analytics-WXLRAXXN.js.map → analytics-6AHC3J4L.js.map} +0 -0
  1029. /package/dist/{analytics-ITBXTEIC.js.map → analytics-NL2KGDLK.js.map} +0 -0
  1030. /package/dist/{animate-WS63CZ3Y.js.map → animate-VX7E7KJE.js.map} +0 -0
  1031. /package/dist/{approved-3XFZNRJR.js.map → approved-E4EZA5RT.js.map} +0 -0
  1032. /package/dist/{asset-writes-DECROLE3.js.map → asset-writes-NDSHY5OT.js.map} +0 -0
  1033. /package/dist/{assign-3CVJL35R.js.map → assign-NKHIHVGI.js.map} +0 -0
  1034. /package/dist/{audience-size-23UFSW6H.js.map → audience-size-WEOM6XIL.js.map} +0 -0
  1035. /package/dist/{audience-writes-VSC2BY4Y.js.map → audience-writes-4KQXVGHO.js.map} +0 -0
  1036. /package/dist/{audiences-76S4WY7Q.js.map → audiences-P3SPTAJT.js.map} +0 -0
  1037. /package/dist/{audiences-RN745R53.js.map → audiences-T5LMTT3B.js.map} +0 -0
  1038. /package/dist/{audiences-V773XHP2.js.map → audiences-UHLVATR6.js.map} +0 -0
  1039. /package/dist/{audit-BIHMDO5K.js.map → audit-46DO2HV3.js.map} +0 -0
  1040. /package/dist/{audit-OT42WBII.js.map → audit-4RIBJ7BR.js.map} +0 -0
  1041. /package/dist/{autocomplete-T642QXBX.js.map → autocomplete-FMTJDXTL.js.map} +0 -0
  1042. /package/dist/{avatars-33UGHCQA.js.map → avatars-LY5SFMWO.js.map} +0 -0
  1043. /package/dist/{bid-pricing-UHU2HOAP.js.map → bid-pricing-MQ7WLV5U.js.map} +0 -0
  1044. /package/dist/{brand-36YIAVGK.js.map → brand-LR5IXW3W.js.map} +0 -0
  1045. /package/dist/{brief-A5XFT6VH.js.map → brief-4DSXIX3F.js.map} +0 -0
  1046. /package/dist/{businesses-HECSW3EL.js.map → businesses-TRFYMZ4I.js.map} +0 -0
  1047. /package/dist/{campaign-groups-TAVIZR4L.js.map → campaign-groups-EZYLKMO2.js.map} +0 -0
  1048. /package/dist/{campaign-writes-72OPCWMG.js.map → campaign-writes-P5XPFTRK.js.map} +0 -0
  1049. /package/dist/{campaign-writes-AQ5T5TII.js.map → campaign-writes-UMENYMKO.js.map} +0 -0
  1050. /package/dist/{campaigns-S62KEFVL.js.map → campaigns-2MTON2IE.js.map} +0 -0
  1051. /package/dist/{campaigns-D2V423FD.js.map → campaigns-PP2DQMJE.js.map} +0 -0
  1052. /package/dist/{campaigns-NW2H7SAR.js.map → campaigns-SWZJVE2T.js.map} +0 -0
  1053. /package/dist/{campaigns-3P2UZWPD.js.map → campaigns-TAFDM242.js.map} +0 -0
  1054. /package/dist/{canvas-D7L7R4D2.js.map → canvas-RKR3ZB4E.js.map} +0 -0
  1055. /package/dist/{capabilities-YC36LOZU.js.map → capabilities-45RZ6E6W.js.map} +0 -0
  1056. /package/dist/{cards-RYQN5JLR.js.map → cards-CXKIVM4D.js.map} +0 -0
  1057. /package/dist/{catalog-URTZYAPU.js.map → catalog-TOHUVBEU.js.map} +0 -0
  1058. /package/dist/{catalogs-G33WT5PS.js.map → catalogs-4DNLG4AM.js.map} +0 -0
  1059. /package/dist/{catalogs-XLWWM2Q3.js.map → catalogs-V7PTEJBO.js.map} +0 -0
  1060. /package/dist/{changes-SI2W2PZL.js.map → changes-5OW3UYMF.js.map} +0 -0
  1061. /package/dist/{chatgpt-PPWG5WOF.js.map → chatgpt-JBMYNVJB.js.map} +0 -0
  1062. /package/dist/{chats-M3RP62YO.js.map → chats-VOLBYA3R.js.map} +0 -0
  1063. /package/dist/{check-FQYDJ5RS.js.map → check-4DI73QX4.js.map} +0 -0
  1064. /package/dist/{chunk-JED4JBIK.js.map → chunk-2CC4CPDT.js.map} +0 -0
  1065. /package/dist/{chunk-X3GWGFZP.js.map → chunk-2N7TB346.js.map} +0 -0
  1066. /package/dist/{chunk-ZQ7JDYJB.js.map → chunk-2YXTXSYG.js.map} +0 -0
  1067. /package/dist/{chunk-IID2MAYZ.js.map → chunk-2Z6PFHD2.js.map} +0 -0
  1068. /package/dist/{chunk-ZICB4OI5.js.map → chunk-3GXHML4V.js.map} +0 -0
  1069. /package/dist/{chunk-BESCYH3K.js.map → chunk-3QPG2D27.js.map} +0 -0
  1070. /package/dist/{chunk-ZZ5B2ZRM.js.map → chunk-3WN5GWX4.js.map} +0 -0
  1071. /package/dist/{chunk-DLM5OSHM.js.map → chunk-47VWQ7FQ.js.map} +0 -0
  1072. /package/dist/{chunk-RJ2ETGAQ.js.map → chunk-4AO3LSYM.js.map} +0 -0
  1073. /package/dist/{chunk-7TVVYP7K.js.map → chunk-4HFM5RCP.js.map} +0 -0
  1074. /package/dist/{chunk-MOKZ5XZO.js.map → chunk-4QFMRL6O.js.map} +0 -0
  1075. /package/dist/{chunk-KH7AOX2R.js.map → chunk-5OC6VUDZ.js.map} +0 -0
  1076. /package/dist/{chunk-4UNJ4ENA.js.map → chunk-5QNW5PCM.js.map} +0 -0
  1077. /package/dist/{chunk-EIDHLGQM.js.map → chunk-5VXEH72O.js.map} +0 -0
  1078. /package/dist/{chunk-KNA3OWJC.js.map → chunk-6AMN346B.js.map} +0 -0
  1079. /package/dist/{chunk-RIRSFFWA.js.map → chunk-6EOWBGGW.js.map} +0 -0
  1080. /package/dist/{chunk-OFMFBRSL.js.map → chunk-6MJKVNLL.js.map} +0 -0
  1081. /package/dist/{chunk-6PO3WSFJ.js.map → chunk-7NBQQOCU.js.map} +0 -0
  1082. /package/dist/{chunk-DRQI2CJJ.js.map → chunk-AQRBEPZL.js.map} +0 -0
  1083. /package/dist/{chunk-BGMIO2FR.js.map → chunk-AZIXX73C.js.map} +0 -0
  1084. /package/dist/{chunk-45D6WRCJ.js.map → chunk-B64KJW5C.js.map} +0 -0
  1085. /package/dist/{chunk-GWLP45WQ.js.map → chunk-BFAPSFS7.js.map} +0 -0
  1086. /package/dist/{chunk-4H6XLX7E.js.map → chunk-BIBXZJZI.js.map} +0 -0
  1087. /package/dist/{chunk-UKZKLXTE.js.map → chunk-BNEWJXKU.js.map} +0 -0
  1088. /package/dist/{chunk-TZTHGLWN.js.map → chunk-BXTIG5JL.js.map} +0 -0
  1089. /package/dist/{chunk-4OQG4HBG.js.map → chunk-C7KV5O5J.js.map} +0 -0
  1090. /package/dist/{chunk-EL3TDR5S.js.map → chunk-CBVUO7SK.js.map} +0 -0
  1091. /package/dist/{chunk-W743FIEY.js.map → chunk-CDPX6WAL.js.map} +0 -0
  1092. /package/dist/{chunk-CP6RFWLW.js.map → chunk-CF5I4Q5M.js.map} +0 -0
  1093. /package/dist/{chunk-AIK2HPDZ.js.map → chunk-COOJKEJE.js.map} +0 -0
  1094. /package/dist/{chunk-HH5WM5VA.js.map → chunk-CTJWMZPL.js.map} +0 -0
  1095. /package/dist/{chunk-MXVP7Z54.js.map → chunk-D5HD46VV.js.map} +0 -0
  1096. /package/dist/{chunk-N3PASNUA.js.map → chunk-DGHSXHZR.js.map} +0 -0
  1097. /package/dist/{chunk-HJ3Q4NOM.js.map → chunk-DHF4FXWS.js.map} +0 -0
  1098. /package/dist/{chunk-B2BQ2Q64.js.map → chunk-DPOUS5DN.js.map} +0 -0
  1099. /package/dist/{chunk-5C4RRCKM.js.map → chunk-EJ6EED6I.js.map} +0 -0
  1100. /package/dist/{chunk-CORECUKT.js.map → chunk-EKOMZH2S.js.map} +0 -0
  1101. /package/dist/{chunk-AC7WLPXF.js.map → chunk-ELC42LJJ.js.map} +0 -0
  1102. /package/dist/{chunk-RF3TP643.js.map → chunk-FLTAPEVY.js.map} +0 -0
  1103. /package/dist/{chunk-FGAXZ7ET.js.map → chunk-G4FU6VC5.js.map} +0 -0
  1104. /package/dist/{chunk-IWNLW7ZC.js.map → chunk-H25GY4U4.js.map} +0 -0
  1105. /package/dist/{chunk-PH3FZZIT.js.map → chunk-H6ASYVQX.js.map} +0 -0
  1106. /package/dist/{chunk-QZSNT67Z.js.map → chunk-H7LKYGLJ.js.map} +0 -0
  1107. /package/dist/{chunk-23RVCBL7.js.map → chunk-HI4SKWNW.js.map} +0 -0
  1108. /package/dist/{chunk-DWPOAU4Z.js.map → chunk-HM4NWA72.js.map} +0 -0
  1109. /package/dist/{chunk-GO6ISZUZ.js.map → chunk-HPF3USL2.js.map} +0 -0
  1110. /package/dist/{chunk-GUYFVYLY.js.map → chunk-I33FO2ON.js.map} +0 -0
  1111. /package/dist/{chunk-L5GFFF5G.js.map → chunk-IAE24RKD.js.map} +0 -0
  1112. /package/dist/{chunk-Q5DFEVLE.js.map → chunk-IJ6WA2JW.js.map} +0 -0
  1113. /package/dist/{chunk-KDAINT54.js.map → chunk-ITIUWJGQ.js.map} +0 -0
  1114. /package/dist/{chunk-J32CYEIH.js.map → chunk-IYDESWW4.js.map} +0 -0
  1115. /package/dist/{chunk-HBRXFQQV.js.map → chunk-J4BJLHLQ.js.map} +0 -0
  1116. /package/dist/{chunk-3LYT3NQX.js.map → chunk-JAME5NBT.js.map} +0 -0
  1117. /package/dist/{chunk-H3HA22Z3.js.map → chunk-JGK2FDZW.js.map} +0 -0
  1118. /package/dist/{chunk-7CORYCEZ.js.map → chunk-JT3UUBID.js.map} +0 -0
  1119. /package/dist/{chunk-LC6PVPJX.js.map → chunk-KGJ6EIX3.js.map} +0 -0
  1120. /package/dist/{chunk-FB5OU5HZ.js.map → chunk-KUI74TNG.js.map} +0 -0
  1121. /package/dist/{chunk-Y6XWO4V4.js.map → chunk-L4QEMWNJ.js.map} +0 -0
  1122. /package/dist/{chunk-EFTYCX5C.js.map → chunk-L7I47VGM.js.map} +0 -0
  1123. /package/dist/{chunk-JTIWQLY5.js.map → chunk-LAOCXV6Z.js.map} +0 -0
  1124. /package/dist/{chunk-QEREDRZO.js.map → chunk-LJEJCIHR.js.map} +0 -0
  1125. /package/dist/{chunk-QUSDGZFS.js.map → chunk-M4KFO256.js.map} +0 -0
  1126. /package/dist/{chunk-JIE45TKJ.js.map → chunk-MC5F2L64.js.map} +0 -0
  1127. /package/dist/{chunk-IDDG4QKO.js.map → chunk-MIHY534L.js.map} +0 -0
  1128. /package/dist/{chunk-MYIOR35H.js.map → chunk-MKOI6QYM.js.map} +0 -0
  1129. /package/dist/{chunk-MK4HCMEA.js.map → chunk-MPTNN35I.js.map} +0 -0
  1130. /package/dist/{chunk-DEZBCK5P.js.map → chunk-MSIOGH67.js.map} +0 -0
  1131. /package/dist/{chunk-D3YAFC6K.js.map → chunk-MTW2NDDD.js.map} +0 -0
  1132. /package/dist/{chunk-GDRJS2QJ.js.map → chunk-O2ECZKXP.js.map} +0 -0
  1133. /package/dist/{chunk-X6U3B6YK.js.map → chunk-O5VSYBUA.js.map} +0 -0
  1134. /package/dist/{chunk-6QINKM6T.js.map → chunk-OJZKY5UM.js.map} +0 -0
  1135. /package/dist/{chunk-2N2R5YSN.js.map → chunk-P4UCSXNA.js.map} +0 -0
  1136. /package/dist/{chunk-Y5PNLB24.js.map → chunk-Q3G4ZI2U.js.map} +0 -0
  1137. /package/dist/{chunk-KDVYI4LC.js.map → chunk-Q5XUFN2W.js.map} +0 -0
  1138. /package/dist/{chunk-E56V3RFO.js.map → chunk-Q736UFSD.js.map} +0 -0
  1139. /package/dist/{chunk-6E4KJMXO.js.map → chunk-QLO4RNHU.js.map} +0 -0
  1140. /package/dist/{chunk-KJTMY7K6.js.map → chunk-QSS34JWZ.js.map} +0 -0
  1141. /package/dist/{chunk-VMZ62LHB.js.map → chunk-QVHZTCB5.js.map} +0 -0
  1142. /package/dist/{chunk-A4O3JL6D.js.map → chunk-RRKUXGAU.js.map} +0 -0
  1143. /package/dist/{chunk-E3PYHCQL.js.map → chunk-RVIBHENP.js.map} +0 -0
  1144. /package/dist/{chunk-5E4Y6RVY.js.map → chunk-S5S54J2K.js.map} +0 -0
  1145. /package/dist/{chunk-JXTNP3B5.js.map → chunk-SIRRBWQ2.js.map} +0 -0
  1146. /package/dist/{chunk-UJTIMPEE.js.map → chunk-TEJOILEY.js.map} +0 -0
  1147. /package/dist/{chunk-FUIGPJZZ.js.map → chunk-TEQEZAJI.js.map} +0 -0
  1148. /package/dist/{chunk-FLQNIFG2.js.map → chunk-TLQY4QBW.js.map} +0 -0
  1149. /package/dist/{chunk-JWV7LUFM.js.map → chunk-TNI7CN4L.js.map} +0 -0
  1150. /package/dist/{chunk-ORQ3WBM6.js.map → chunk-U6AWJIFP.js.map} +0 -0
  1151. /package/dist/{chunk-G6U45QD3.js.map → chunk-UK4XSLV2.js.map} +0 -0
  1152. /package/dist/{chunk-4PAGS7QH.js.map → chunk-URGXEDFV.js.map} +0 -0
  1153. /package/dist/{chunk-2VW7S77J.js.map → chunk-V5ODOBBI.js.map} +0 -0
  1154. /package/dist/{chunk-ANRTDNPQ.js.map → chunk-V7EN5LFS.js.map} +0 -0
  1155. /package/dist/{chunk-2JBPS2CV.js.map → chunk-VAURJ4QJ.js.map} +0 -0
  1156. /package/dist/{chunk-EJBLF2LI.js.map → chunk-VAV5CCDD.js.map} +0 -0
  1157. /package/dist/{chunk-O3O7PXMK.js.map → chunk-VWHUO3AP.js.map} +0 -0
  1158. /package/dist/{chunk-X3YYZLBH.js.map → chunk-W3TZPHZO.js.map} +0 -0
  1159. /package/dist/{chunk-OLPABGH3.js.map → chunk-WTPID22G.js.map} +0 -0
  1160. /package/dist/{chunk-UUXGSDUC.js.map → chunk-WZATC4O5.js.map} +0 -0
  1161. /package/dist/{chunk-WR5Y64OE.js.map → chunk-XA76OGSL.js.map} +0 -0
  1162. /package/dist/{chunk-FGTOOTYC.js.map → chunk-XGG72YRO.js.map} +0 -0
  1163. /package/dist/{chunk-UQZZM6UM.js.map → chunk-XWAOECD2.js.map} +0 -0
  1164. /package/dist/{chunk-5ZHXLY7Y.js.map → chunk-YAMKCMAS.js.map} +0 -0
  1165. /package/dist/{chunk-SIUYWLXB.js.map → chunk-YDALLZNS.js.map} +0 -0
  1166. /package/dist/{chunk-CDTAKCJR.js.map → chunk-YRWCXYWW.js.map} +0 -0
  1167. /package/dist/{chunk-XZAVBONI.js.map → chunk-Z3RGBLVJ.js.map} +0 -0
  1168. /package/dist/{chunk-VJ4IOJQZ.js.map → chunk-Z5JWFNG4.js.map} +0 -0
  1169. /package/dist/{chunk-YB6G3B3L.js.map → chunk-ZCGM7ZWM.js.map} +0 -0
  1170. /package/dist/{cite-AJ5ZQWD2.js.map → cite-WCAOCOO5.js.map} +0 -0
  1171. /package/dist/{claim-CG3J32WS.js.map → claim-3UMAFZEM.js.map} +0 -0
  1172. /package/dist/{client-F6KOC77S.js.map → client-VCKP6WBR.js.map} +0 -0
  1173. /package/dist/{code-NV4ARLFS.js.map → code-VXOTFGD2.js.map} +0 -0
  1174. /package/dist/{companies-DQKUPFWT.js.map → companies-RL5A26AT.js.map} +0 -0
  1175. /package/dist/{company-4CD2OJLB.js.map → company-DJ44F5C6.js.map} +0 -0
  1176. /package/dist/{complete-JSP6VQYI.js.map → complete-PGNIP3LN.js.map} +0 -0
  1177. /package/dist/{config-GIETKZGS.js.map → config-UR45YCIN.js.map} +0 -0
  1178. /package/dist/{connect-O5NRDY4Y.js.map → connect-ROARWN63.js.map} +0 -0
  1179. /package/dist/{content-EQZKKIST.js.map → content-EQQIKG5H.js.map} +0 -0
  1180. /package/dist/{conversation-YHKIB3CU.js.map → conversation-GDFMJL7X.js.map} +0 -0
  1181. /package/dist/{conversion-report-JV6WZLB3.js.map → conversion-report-2FREFML5.js.map} +0 -0
  1182. /package/dist/{conversion-upload-command-LXJYNNCK.js.map → conversion-upload-command-G7LLWHSK.js.map} +0 -0
  1183. /package/dist/{conversion-writes-NH3DKRQX.js.map → conversion-writes-JZIJSQ7T.js.map} +0 -0
  1184. /package/dist/{conversions-E2KOXF3N.js.map → conversions-2IFWDQKK.js.map} +0 -0
  1185. /package/dist/{conversions-TKPTZJVM.js.map → conversions-Q5EBTEXA.js.map} +0 -0
  1186. /package/dist/{copy-writes-FP3EI5LI.js.map → copy-writes-JVUX3YDL.js.map} +0 -0
  1187. /package/dist/{countries-GZSBGSVT.js.map → countries-GRCU4IGM.js.map} +0 -0
  1188. /package/dist/{create-VAZ65QNJ.js.map → create-B5DIYK5D.js.map} +0 -0
  1189. /package/dist/{create-FNPFVKLT.js.map → create-BRCSXXFO.js.map} +0 -0
  1190. /package/dist/{create-DQ5X5AJT.js.map → create-PXAUL6FF.js.map} +0 -0
  1191. /package/dist/{create-GXOFZCR5.js.map → create-R6CMATVY.js.map} +0 -0
  1192. /package/dist/{creatives-N7V2BSOW.js.map → creatives-4EPM3RHG.js.map} +0 -0
  1193. /package/dist/{creatives-5EIDMQ66.js.map → creatives-D6O6Z46U.js.map} +0 -0
  1194. /package/dist/{creatives-QWNQDPNE.js.map → creatives-XNVWQWFF.js.map} +0 -0
  1195. /package/dist/{credentials-VCERJE24.js.map → credentials-CLJO7WWY.js.map} +0 -0
  1196. /package/dist/{critique-62QFBC33.js.map → critique-MBMKW6SL.js.map} +0 -0
  1197. /package/dist/{critique-MSL6EU5V.js.map → critique-OUJDTVMI.js.map} +0 -0
  1198. /package/dist/{crm-PMPO6QJE.js.map → crm-H5ITJ2RC.js.map} +0 -0
  1199. /package/dist/{crm-J3SCOR4L.js.map → crm-JJHYRABB.js.map} +0 -0
  1200. /package/dist/{crop-4V4P3SKI.js.map → crop-NE7YX4SS.js.map} +0 -0
  1201. /package/dist/{currency-NFKS6PRB.js.map → currency-EFDQYW5B.js.map} +0 -0
  1202. /package/dist/{custom-conversions-BFMGX2M3.js.map → custom-conversions-GQTU5E6X.js.map} +0 -0
  1203. /package/dist/{customers-EYVTYCGY.js.map → customers-C5YXAVXI.js.map} +0 -0
  1204. /package/dist/{decide-AM6B7WIL.js.map → decide-6Q5X3V3F.js.map} +0 -0
  1205. /package/dist/{delete-RZCW3Y6L.js.map → delete-3GYCQK6B.js.map} +0 -0
  1206. /package/dist/{delete-WAPC4XC2.js.map → delete-EKKOEB3N.js.map} +0 -0
  1207. /package/dist/{delete-7A6T6XBD.js.map → delete-NBUDIGSD.js.map} +0 -0
  1208. /package/dist/{delete-YYIM564B.js.map → delete-QHDDR66K.js.map} +0 -0
  1209. /package/dist/{delete-46B7DSQV.js.map → delete-SP66F7ZV.js.map} +0 -0
  1210. /package/dist/{delete-I3W3M6T7.js.map → delete-WZ3KVVX5.js.map} +0 -0
  1211. /package/dist/{demographics-CPMNWMBZ.js.map → demographics-O7AJW7DO.js.map} +0 -0
  1212. /package/dist/{describe-5OC7XX2U.js.map → describe-DJPIUEFE.js.map} +0 -0
  1213. /package/dist/{describe-EAPKNUUU.js.map → describe-MAGTSOW4.js.map} +0 -0
  1214. /package/dist/{dimensions-KI3OENZD.js.map → dimensions-IC2H7V3H.js.map} +0 -0
  1215. /package/dist/{discard-I773LYVR.js.map → discard-RMVZAX2J.js.map} +0 -0
  1216. /package/dist/{discover-DDYFCWQL.js.map → discover-BPUUWRBP.js.map} +0 -0
  1217. /package/dist/{discover-P7PBB3IV.js.map → discover-PSL2NBJL.js.map} +0 -0
  1218. /package/dist/{domain-7YO5HYHU.js.map → domain-J3ZMBOHS.js.map} +0 -0
  1219. /package/dist/{download-YB2DVMRS.js.map → download-EHDJXBAC.js.map} +0 -0
  1220. /package/dist/{download-IYK3UVBF.js.map → download-ZVOGLTFB.js.map} +0 -0
  1221. /package/dist/{draft-2EVXU5XB.js.map → draft-27NMTARB.js.map} +0 -0
  1222. /package/dist/{draft-CQPEGNPP.js.map → draft-6PJD3MCW.js.map} +0 -0
  1223. /package/dist/{draft-VT7DAOB7.js.map → draft-GCOCG4PO.js.map} +0 -0
  1224. /package/dist/{draft-CQWYTMSS.js.map → draft-JESKGZ6O.js.map} +0 -0
  1225. /package/dist/{draft-JYZA3BFD.js.map → draft-MWYKIZC4.js.map} +0 -0
  1226. /package/dist/{draft-BCRW4RLR.js.map → draft-Q4PEFBJB.js.map} +0 -0
  1227. /package/dist/{draft-2Z7EGKBO.js.map → draft-TPR3DH5N.js.map} +0 -0
  1228. /package/dist/{draft-4UTNI7BT.js.map → draft-ZPGGWU7E.js.map} +0 -0
  1229. /package/dist/{env-2RHPS2VF.js.map → env-NZXNMWSD.js.map} +0 -0
  1230. /package/dist/{experiment-YAX26BOO.js.map → experiment-XAYSEYTU.js.map} +0 -0
  1231. /package/dist/{experiments-ZEN2H3RV.js.map → experiments-MM4BYHRH.js.map} +0 -0
  1232. /package/dist/{export-RPNRPTDK.js.map → export-W54UZ62P.js.map} +0 -0
  1233. /package/dist/{extract-ZIW5JFTY.js.map → extract-JMY6YRPW.js.map} +0 -0
  1234. /package/dist/{facets-RNC4D4UH.js.map → facets-B5AZAU2C.js.map} +0 -0
  1235. /package/dist/{favorites-536I3GZD.js.map → favorites-Y6CT6NSQ.js.map} +0 -0
  1236. /package/dist/{feed-W3ECHUEX.js.map → feed-35BRQPTH.js.map} +0 -0
  1237. /package/dist/{feedback-2YJ24NV7.js.map → feedback-2EVDGTEN.js.map} +0 -0
  1238. /package/dist/{feedback-X3GLQ2QF.js.map → feedback-4MCMOMVN.js.map} +0 -0
  1239. /package/dist/{feedback-record-A5JLS3QY.js.map → feedback-record-DL7UEU2H.js.map} +0 -0
  1240. /package/dist/{fetch-KB64NPDF.js.map → fetch-I6P72CDL.js.map} +0 -0
  1241. /package/dist/{fetch-6XMRKLYH.js.map → fetch-JDNFK476.js.map} +0 -0
  1242. /package/dist/{find-UGFONLSD.js.map → find-SVGRA7IA.js.map} +0 -0
  1243. /package/dist/{fit-BRJSLR7P.js.map → fit-DKVH5BDW.js.map} +0 -0
  1244. /package/dist/{flows-LXJHL3KW.js.map → flows-LURTZICL.js.map} +0 -0
  1245. /package/dist/{follow-5VX5JWAQ.js.map → follow-24QSDNAG.js.map} +0 -0
  1246. /package/dist/{follow-competitors-D7I33T5C.js.map → follow-competitors-AG4E4XFA.js.map} +0 -0
  1247. /package/dist/{following-6DI4IZ7P.js.map → following-YGM6TBK3.js.map} +0 -0
  1248. /package/dist/{fonts-UUSCLUHW.js.map → fonts-HUXFDDAE.js.map} +0 -0
  1249. /package/dist/{forecast-YO6BNYX7.js.map → forecast-ITLKAFHM.js.map} +0 -0
  1250. /package/dist/{forecast-YIDXHMST.js.map → forecast-UHTW4Y7Q.js.map} +0 -0
  1251. /package/dist/{funding-QDKFNQI2.js.map → funding-WZNGXRLJ.js.map} +0 -0
  1252. /package/dist/{funnel-M3SRPZQT.js.map → funnel-QM7WFFMD.js.map} +0 -0
  1253. /package/dist/{ga4-N6EBLN2W.js.map → ga4-W3U5YTRT.js.map} +0 -0
  1254. /package/dist/{generate-VGGXTZBP.js.map → generate-KAWRRYTT.js.map} +0 -0
  1255. /package/dist/{get-OZ7THI2W.js.map → get-237TYJZT.js.map} +0 -0
  1256. /package/dist/{get-JHOH74X5.js.map → get-3MTAVNTP.js.map} +0 -0
  1257. /package/dist/{get-TBMTBGHJ.js.map → get-5SPNAIUQ.js.map} +0 -0
  1258. /package/dist/{get-KVZSVN7U.js.map → get-FWPR2YPC.js.map} +0 -0
  1259. /package/dist/{get-42V7UTNF.js.map → get-GEUSRD5Y.js.map} +0 -0
  1260. /package/dist/{get-BQBLPGFE.js.map → get-JIZPYK3Z.js.map} +0 -0
  1261. /package/dist/{get-5SCYUC4G.js.map → get-TS2ZJDCQ.js.map} +0 -0
  1262. /package/dist/{get-V4NJXKUR.js.map → get-YWDZYEAC.js.map} +0 -0
  1263. /package/dist/{gif-M2GMVWM4.js.map → gif-NP6EDGEE.js.map} +0 -0
  1264. /package/dist/{google-5U5KXEX7.js.map → google-DTSLO3PT.js.map} +0 -0
  1265. /package/dist/{google-KTVWAA7F.js.map → google-JY7KDAFC.js.map} +0 -0
  1266. /package/dist/{google-ads-YZTK3YTW.js.map → google-ads-RZOQQDQN.js.map} +0 -0
  1267. /package/dist/{group-THZPJALS.js.map → group-3DT4UYSR.js.map} +0 -0
  1268. /package/dist/{group-PLTVV7UZ.js.map → group-OEKKCFXT.js.map} +0 -0
  1269. /package/dist/{gsc-FILOUFCG.js.map → gsc-4FEFPFPB.js.map} +0 -0
  1270. /package/dist/{history-RYTNMGU5.js.map → history-H7S7XRBX.js.map} +0 -0
  1271. /package/dist/{history-XDYDNQWK.js.map → history-XL52537O.js.map} +0 -0
  1272. /package/dist/{history-QATQCGVQ.js.map → history-YQSYXBJH.js.map} +0 -0
  1273. /package/dist/{hubspot-IJERD4KT.js.map → hubspot-2DSISSUI.js.map} +0 -0
  1274. /package/dist/{icon-THWS5VPO.js.map → icon-43UJTGGE.js.map} +0 -0
  1275. /package/dist/{ideas-TT24LJR5.js.map → ideas-2XBFQJ56.js.map} +0 -0
  1276. /package/dist/{images-PLYPUXM2.js.map → images-VFRQ32G5.js.map} +0 -0
  1277. /package/dist/{improve-NWFQI63B.js.map → improve-IMXQN6OD.js.map} +0 -0
  1278. /package/dist/{ingest-MSPQX3Z6.js.map → ingest-4RPLN54K.js.map} +0 -0
  1279. /package/dist/{ingest-CSPC3RUK.js.map → ingest-TPVH44VI.js.map} +0 -0
  1280. /package/dist/{insights-AVNMRFQ4.js.map → insights-BR3456EI.js.map} +0 -0
  1281. /package/dist/{insights-OZ2EXOHH.js.map → insights-UVCFOB3N.js.map} +0 -0
  1282. /package/dist/{inspect-VD6CB2NA.js.map → inspect-VD3GVXDU.js.map} +0 -0
  1283. /package/dist/{inspiration-FPB3IB7X.js.map → inspiration-XZI5KCQW.js.map} +0 -0
  1284. /package/dist/{instant-experiences-M2JYG2QS.js.map → instant-experiences-2LKF7XVK.js.map} +0 -0
  1285. /package/dist/{intent-HXRSLFIO.js.map → intent-F5NTOSQC.js.map} +0 -0
  1286. /package/dist/{job-OJB6KIDV.js.map → job-GOX3KIKG.js.map} +0 -0
  1287. /package/dist/{job-create-C6FGCDW4.js.map → job-create-F2PQSN3C.js.map} +0 -0
  1288. /package/dist/{job-status-4RJHESID.js.map → job-status-3FMA5D7T.js.map} +0 -0
  1289. /package/dist/{keep-I6FLGJH4.js.map → keep-23ZYMWPG.js.map} +0 -0
  1290. /package/dist/{keyword-gap-WUHMSTNR.js.map → keyword-gap-EB5QATYN.js.map} +0 -0
  1291. /package/dist/{keyword-metrics-NJV3WR75.js.map → keyword-metrics-PW2DDIJW.js.map} +0 -0
  1292. /package/dist/{keywords-for-site-B7MUDHFH.js.map → keywords-for-site-JEPABY6E.js.map} +0 -0
  1293. /package/dist/{knowledge-H5PJ6LZB.js.map → knowledge-7M7DSRF3.js.map} +0 -0
  1294. /package/dist/{landing-RKOEVY7L.js.map → landing-4N6YSB4L.js.map} +0 -0
  1295. /package/dist/{landings-AELJXEYN.js.map → landings-VNQ4VA2U.js.map} +0 -0
  1296. /package/dist/{languages-GCRI2PI3.js.map → languages-2X22HXM3.js.map} +0 -0
  1297. /package/dist/{languages-27QCKMNL.js.map → languages-4S26FJDP.js.map} +0 -0
  1298. /package/dist/{launches-CKPZFVMQ.js.map → launches-L4EUROCJ.js.map} +0 -0
  1299. /package/dist/{layerize-PHY25VNC.js.map → layerize-6QHQMA7Q.js.map} +0 -0
  1300. /package/dist/{lead-routes-ZMKRNL57.js.map → lead-routes-5TPFJEVH.js.map} +0 -0
  1301. /package/dist/{leads-AEXWNBAT.js.map → leads-4TLOH47R.js.map} +0 -0
  1302. /package/dist/{leads-O2NLCYDO.js.map → leads-R5OZJQHW.js.map} +0 -0
  1303. /package/dist/{learn-XNN3DGDF.js.map → learn-AQ2FRFB7.js.map} +0 -0
  1304. /package/dist/{library-5YJCCEFL.js.map → library-MNJC24E4.js.map} +0 -0
  1305. /package/dist/{lighthouse-W3KAVW2G.js.map → lighthouse-DJMAXFTD.js.map} +0 -0
  1306. /package/dist/{line-item-writes-VSP6WEYK.js.map → line-item-writes-LGO7HIJJ.js.map} +0 -0
  1307. /package/dist/{line-items-BQ2CKMGL.js.map → line-items-AAZVKQ7E.js.map} +0 -0
  1308. /package/dist/{link-ENZQAISO.js.map → link-7IGHVARH.js.map} +0 -0
  1309. /package/dist/{linkedin-YALC66DF.js.map → linkedin-UB2CW4KP.js.map} +0 -0
  1310. /package/dist/{linkedin-person-3RCX4MI3.js.map → linkedin-person-D6U2ZAUW.js.map} +0 -0
  1311. /package/dist/{list-IKQFAJP7.js.map → list-2277GCPH.js.map} +0 -0
  1312. /package/dist/{list-ERCPPED6.js.map → list-537S75BZ.js.map} +0 -0
  1313. /package/dist/{list-GPTYUCSX.js.map → list-P44QRX2O.js.map} +0 -0
  1314. /package/dist/{list-E7JG27WS.js.map → list-Q52FPW3H.js.map} +0 -0
  1315. /package/dist/{list-AF522LRC.js.map → list-UMJACDTQ.js.map} +0 -0
  1316. /package/dist/{list-2EJ3XZ6I.js.map → list-V4PSDBLX.js.map} +0 -0
  1317. /package/dist/{list-VYTHVUDP.js.map → list-VZKUHY4Y.js.map} +0 -0
  1318. /package/dist/{list-BQWHFEWY.js.map → list-WIXQXNKB.js.map} +0 -0
  1319. /package/dist/{list-HYZL4576.js.map → list-XK33NCSC.js.map} +0 -0
  1320. /package/dist/{locations-OS24BBXE.js.map → locations-UWBQLHXW.js.map} +0 -0
  1321. /package/dist/{locations-EA5VGY56.js.map → locations-WXGOI3VV.js.map} +0 -0
  1322. /package/dist/{log-NJR3FJWN.js.map → log-6ZKMUTYS.js.map} +0 -0
  1323. /package/dist/{logo-ZSSR66WS.js.map → logo-4LSFZ3ZO.js.map} +0 -0
  1324. /package/dist/{lookup-QNLX2535.js.map → lookup-WIM5WR25.js.map} +0 -0
  1325. /package/dist/{make-4XUB6RSF.js.map → make-5CEIJRBC.js.map} +0 -0
  1326. /package/dist/{map-LIYQCWXU.js.map → map-ZL4MQVJZ.js.map} +0 -0
  1327. /package/dist/{mcp-QDOAKB3A.js.map → mcp-GSRYLRD4.js.map} +0 -0
  1328. /package/dist/{media-WGIEUEZW.js.map → media-34I7UB7Z.js.map} +0 -0
  1329. /package/dist/{media-5SWJCRHI.js.map → media-KKI3KWLR.js.map} +0 -0
  1330. /package/dist/{media-sources-LFSDIPUB.js.map → media-sources-VSPVHLYN.js.map} +0 -0
  1331. /package/dist/{members-KGKQQFMN.js.map → members-L6SXP6GC.js.map} +0 -0
  1332. /package/dist/{meme-3QYKC4BF.js.map → meme-6NFYFQ7T.js.map} +0 -0
  1333. /package/dist/{meta-DRDMT5X4.js.map → meta-2UK7KIE4.js.map} +0 -0
  1334. /package/dist/{metrics-NCAYDJNO.js.map → metrics-4AFEEDVP.js.map} +0 -0
  1335. /package/dist/{models-SITHUNAA.js.map → models-2ZEM64H5.js.map} +0 -0
  1336. /package/dist/{normalize-M3VMWF4W.js.map → normalize-G75RDSE4.js.map} +0 -0
  1337. /package/dist/{normalize-DQPKM3MG.js.map → normalize-GK7DH7ZP.js.map} +0 -0
  1338. /package/dist/{options-XIH7YPEG.js.map → options-FDAAHG7C.js.map} +0 -0
  1339. /package/dist/{organization-BUSXIGA4.js.map → organization-K2FTFAAO.js.map} +0 -0
  1340. /package/dist/{output-HZW7LNUL.js.map → output-ELEO2Z6R.js.map} +0 -0
  1341. /package/dist/{page-GBLVAKU3.js.map → page-4X6IBUWG.js.map} +0 -0
  1342. /package/dist/{page-photos-PDSKTR2Z.js.map → page-photos-KNBLMFLN.js.map} +0 -0
  1343. /package/dist/{pages-UH6XEZBO.js.map → pages-7HW5YOZV.js.map} +0 -0
  1344. /package/dist/{performance-Y2DTYSFV.js.map → performance-N3UROH7Z.js.map} +0 -0
  1345. /package/dist/{performance-PU4NHFUE.js.map → performance-RG2HR46T.js.map} +0 -0
  1346. /package/dist/{pinterest-235S7E6H.js.map → pinterest-KA6VFDM4.js.map} +0 -0
  1347. /package/dist/{pixels-PYNK73UG.js.map → pixels-D5HF24FI.js.map} +0 -0
  1348. /package/dist/{pixels-GY4LKGJK.js.map → pixels-HEI5WVAO.js.map} +0 -0
  1349. /package/dist/{plan-4OYUV2EF.js.map → plan-XCA6R3HZ.js.map} +0 -0
  1350. /package/dist/{posts-F327IP23.js.map → posts-ALGM6ONV.js.map} +0 -0
  1351. /package/dist/{preview-7E4E3QPT.js.map → preview-55TRUF4Q.js.map} +0 -0
  1352. /package/dist/{preview-NP3OFLT6.js.map → preview-NVWIEUHF.js.map} +0 -0
  1353. /package/dist/{profile-MKKJT2UF.js.map → profile-NHUPUCBR.js.map} +0 -0
  1354. /package/dist/{promoted-tweet-writes-XILB6VCP.js.map → promoted-tweet-writes-7QZRFDOM.js.map} +0 -0
  1355. /package/dist/{promoted-tweets-CBYZG6BG.js.map → promoted-tweets-V555Y7DN.js.map} +0 -0
  1356. /package/dist/{properties-RDOGNY2O.js.map → properties-2ZXA5BPJ.js.map} +0 -0
  1357. /package/dist/{publish-MDVPC77V.js.map → publish-5KR6YLA6.js.map} +0 -0
  1358. /package/dist/{query-PO3RT7BR.js.map → query-63CTX2PH.js.map} +0 -0
  1359. /package/dist/{query-K7R5GQ4E.js.map → query-DMWY3TDD.js.map} +0 -0
  1360. /package/dist/{query-LJS64SEQ.js.map → query-K7MYBRTS.js.map} +0 -0
  1361. /package/dist/{questionnaire-4OH6K2BF.js.map → questionnaire-WHE42RD4.js.map} +0 -0
  1362. /package/dist/{read-MU5XGWMK.js.map → read-NESEKULG.js.map} +0 -0
  1363. /package/dist/{reddit-ZPKVVZGP.js.map → reddit-XPQ7YAJW.js.map} +0 -0
  1364. /package/dist/{refresh-JSCYTM4B.js.map → refresh-ILDEPU5A.js.map} +0 -0
  1365. /package/dist/{refresh-V34YWN3W.js.map → refresh-XFHEBSDU.js.map} +0 -0
  1366. /package/dist/{release-WRNUOSHB.js.map → release-3ECEF26P.js.map} +0 -0
  1367. /package/dist/{relevant-pages-OFKZYWR3.js.map → relevant-pages-XYQKVX3U.js.map} +0 -0
  1368. /package/dist/{remove-6FXTPEB6.js.map → remove-NHE4UT7G.js.map} +0 -0
  1369. /package/dist/{remove-HKWV7P27.js.map → remove-OCTUC3RB.js.map} +0 -0
  1370. /package/dist/{reopen-VHHYVAKC.js.map → reopen-JRI3TYD4.js.map} +0 -0
  1371. /package/dist/{rerun-THE43RCG.js.map → rerun-HWWYCDT2.js.map} +0 -0
  1372. /package/dist/{research-G5A2WXVK.js.map → research-ODPU62BA.js.map} +0 -0
  1373. /package/dist/{research-773Y7GT4.js.map → research-TG5CBTYP.js.map} +0 -0
  1374. /package/dist/{reset-MVTWA3HT.js.map → reset-J2NLNITD.js.map} +0 -0
  1375. /package/dist/{reset-GFJ3AKF5.js.map → reset-SRU7YJUR.js.map} +0 -0
  1376. /package/dist/{resolve-FCAP4LQ3.js.map → resolve-KHMMUGB2.js.map} +0 -0
  1377. /package/dist/{retry-AGHA6IVT.js.map → retry-VLH4AO7F.js.map} +0 -0
  1378. /package/dist/{retry-LDJ6FZCZ.js.map → retry-WP7LWKZF.js.map} +0 -0
  1379. /package/dist/{retry-failed-FCS6PNUZ.js.map → retry-failed-R5HPQ3KQ.js.map} +0 -0
  1380. /package/dist/{revenue-VFML2I5V.js.map → revenue-EEIS2AV5.js.map} +0 -0
  1381. /package/dist/{rule-writes-KWJNFMJV.js.map → rule-writes-QB4IWFCJ.js.map} +0 -0
  1382. /package/dist/{rules-NRH2X4BM.js.map → rules-FYVD2QBB.js.map} +0 -0
  1383. /package/dist/{rules-4A25K2P7.js.map → rules-TTUGQAEB.js.map} +0 -0
  1384. /package/dist/{rules-add-GT7NCUB3.js.map → rules-add-AIXUAZXG.js.map} +0 -0
  1385. /package/dist/{run-ZLHQNLCF.js.map → run-AQTACLY6.js.map} +0 -0
  1386. /package/dist/{run-NFLKYVIC.js.map → run-YA6IWQAJ.js.map} +0 -0
  1387. /package/dist/{scaffold-ad-AJN67FWG.js.map → scaffold-ad-IYNFJPT7.js.map} +0 -0
  1388. /package/dist/{scaffold-static-ad-L6KXZ3TN.js.map → scaffold-static-ad-SPYKSAJR.js.map} +0 -0
  1389. /package/dist/{scaffold-video-XQBZZ5TZ.js.map → scaffold-video-BUN27PKS.js.map} +0 -0
  1390. /package/dist/{schedule-XFEPEQTN.js.map → schedule-D7EDEM45.js.map} +0 -0
  1391. /package/dist/{schedule-45CJDHIX.js.map → schedule-EH2MOC5C.js.map} +0 -0
  1392. /package/dist/{scheduled-agents-72MWHK63.js.map → scheduled-agents-DTAEP25E.js.map} +0 -0
  1393. /package/dist/{schema-VX66FH4O.js.map → schema-7B4MVVAS.js.map} +0 -0
  1394. /package/dist/{schema-L4PETLZT.js.map → schema-Z43AJOJ4.js.map} +0 -0
  1395. /package/dist/{scrape-D3XGARHR.js.map → scrape-VL2RWSTW.js.map} +0 -0
  1396. /package/dist/{screenshot-5LWUP5VN.js.map → screenshot-Y6EEXS3Q.js.map} +0 -0
  1397. /package/dist/{search-HNRANK6H.js.map → search-CXC7N5XJ.js.map} +0 -0
  1398. /package/dist/{search-KGE3BSSH.js.map → search-JEXYEAPQ.js.map} +0 -0
  1399. /package/dist/{search-4DBP6EH5.js.map → search-L3GTZYRW.js.map} +0 -0
  1400. /package/dist/{search-QQDR74KQ.js.map → search-TXBYKNQC.js.map} +0 -0
  1401. /package/dist/{search-O3AOWEXC.js.map → search-XHSTUBDY.js.map} +0 -0
  1402. /package/dist/{search-Y6TS5UZS.js.map → search-ZZWIJRXJ.js.map} +0 -0
  1403. /package/dist/{search-copy-EB3TONDS.js.map → search-copy-FIPG7OCC.js.map} +0 -0
  1404. /package/dist/{seeds-RGIFHHYC.js.map → seeds-ADJKURNG.js.map} +0 -0
  1405. /package/dist/{select-MZ2U7U5U.js.map → select-LWZRF7KV.js.map} +0 -0
  1406. /package/dist/{sends-I2B6F5NW.js.map → sends-RS4LWRAC.js.map} +0 -0
  1407. /package/dist/{sequences-SSLZ3XTP.js.map → sequences-2RPKDKGQ.js.map} +0 -0
  1408. /package/dist/{set-prompt-YH6PXNXB.js.map → set-prompt-YKDH6FYK.js.map} +0 -0
  1409. /package/dist/{setup-links-Y4YYDQBK.js.map → setup-links-OE6PC2YQ.js.map} +0 -0
  1410. /package/dist/{shared-Z7INVKCZ.js.map → shared-4GGUIOF2.js.map} +0 -0
  1411. /package/dist/{shopify-AUDLALBS.js.map → shopify-CCPLZI2H.js.map} +0 -0
  1412. /package/dist/{site-WZ654OP3.js.map → site-FW5BBLYG.js.map} +0 -0
  1413. /package/dist/{sitemaps-EOMSRKOD.js.map → sitemaps-Z6IELTQV.js.map} +0 -0
  1414. /package/dist/{sites-6M73AONG.js.map → sites-KLAKI2EY.js.map} +0 -0
  1415. /package/dist/{skills-PDHUHP2T.js.map → skills-OJP36EVR.js.map} +0 -0
  1416. /package/dist/{sources-FCBFLR2J.js.map → sources-WPHMWBEK.js.map} +0 -0
  1417. /package/dist/{sources-OR36YOTG.js.map → sources-X77TGJ52.js.map} +0 -0
  1418. /package/dist/{stale-VSSDVB4H.js.map → stale-SPCDL73V.js.map} +0 -0
  1419. /package/dist/{stats-MFEH2TSW.js.map → stats-MIMFX4R7.js.map} +0 -0
  1420. /package/dist/{status-L7LYUD3F.js.map → status-FLETGJ2A.js.map} +0 -0
  1421. /package/dist/{sticker-MWICUYQM.js.map → sticker-IREEEN7I.js.map} +0 -0
  1422. /package/dist/{stock-73PLAUYU.js.map → stock-5AOSQH52.js.map} +0 -0
  1423. /package/dist/{studies-XNJXWD7I.js.map → studies-YGYAH3JI.js.map} +0 -0
  1424. /package/dist/{studio-D2OMFCZZ.js.map → studio-4EV5S7PR.js.map} +0 -0
  1425. /package/dist/{study-writes-MFAJQHXK.js.map → study-writes-UPGJB36A.js.map} +0 -0
  1426. /package/dist/{suggest-KCN2NDYE.js.map → suggest-5RTISDLI.js.map} +0 -0
  1427. /package/dist/{sync-XBC3PSSV.js.map → sync-363VKXU3.js.map} +0 -0
  1428. /package/dist/{sync-TANGFXUN.js.map → sync-OHIXI4I6.js.map} +0 -0
  1429. /package/dist/{sync-SI25TKY5.js.map → sync-VCAFAYW4.js.map} +0 -0
  1430. /package/dist/{sync-definition-IM2NY5QC.js.map → sync-definition-ZDE5L644.js.map} +0 -0
  1431. /package/dist/{tag-NKAHDL35.js.map → tag-DSCUKNC3.js.map} +0 -0
  1432. /package/dist/{tag-manager-JFC6YYVP.js.map → tag-manager-IINALUEJ.js.map} +0 -0
  1433. /package/dist/{tags-UNUZVGUA.js.map → tags-6MN3AWKN.js.map} +0 -0
  1434. /package/dist/{tags-HCJTTLSR.js.map → tags-VOKUNEIW.js.map} +0 -0
  1435. /package/dist/{tags-COALQ2CT.js.map → tags-Y6MNMIEA.js.map} +0 -0
  1436. /package/dist/{tags-MVC56SHA.js.map → tags-YHAC3NVY.js.map} +0 -0
  1437. /package/dist/{tags-2KNOJ7A6.js.map → tags-ZCQMJ5YH.js.map} +0 -0
  1438. /package/dist/{targeting-ZBGR2PSX.js.map → targeting-BM72UTI6.js.map} +0 -0
  1439. /package/dist/{targeting-constants-RF2732EW.js.map → targeting-constants-54S3FXIF.js.map} +0 -0
  1440. /package/dist/{targeting-criteria-HU7OAJUA.js.map → targeting-criteria-ECQFHQF3.js.map} +0 -0
  1441. /package/dist/{targets-BNH37YAQ.js.map → targets-U2JHTB5U.js.map} +0 -0
  1442. /package/dist/{terms-XFL6QO7A.js.map → terms-OFHNLW6U.js.map} +0 -0
  1443. /package/dist/{testimonials-IIAT5IDM.js.map → testimonials-IDVLMXDT.js.map} +0 -0
  1444. /package/dist/{themes-SUNQVNES.js.map → themes-QMR5TWTI.js.map} +0 -0
  1445. /package/dist/{top-companies-MSLNT33I.js.map → top-companies-CBI4O3ZB.js.map} +0 -0
  1446. /package/dist/{transcript-7WFXVRVW.js.map → transcript-IIRFTFRW.js.map} +0 -0
  1447. /package/dist/{translate-IPTYPZF6.js.map → translate-N6QW4FZB.js.map} +0 -0
  1448. /package/dist/{triggers-RBD2XGNG.js.map → triggers-Q3KRAMA3.js.map} +0 -0
  1449. /package/dist/{tweets-6PQHJXJC.js.map → tweets-TRTXC6O4.js.map} +0 -0
  1450. /package/dist/{unfollow-OEMFPAFS.js.map → unfollow-DATOGPLZ.js.map} +0 -0
  1451. /package/dist/{unlink-5IMEUVIS.js.map → unlink-7RVQXKAR.js.map} +0 -0
  1452. /package/dist/{unstage-DSOVSWEK.js.map → unstage-3LPHNZKR.js.map} +0 -0
  1453. /package/dist/{unstage-O23ILHCY.js.map → unstage-LLQCMZ5H.js.map} +0 -0
  1454. /package/dist/{update-FIU2ECYQ.js.map → update-AL3LBHGK.js.map} +0 -0
  1455. /package/dist/{update-XWL3Q5QY.js.map → update-AWR7EHGA.js.map} +0 -0
  1456. /package/dist/{update-7JVV5ZL3.js.map → update-LNSSLZXG.js.map} +0 -0
  1457. /package/dist/{update-CADTFTYC.js.map → update-SD5YQIJC.js.map} +0 -0
  1458. /package/dist/{update-HSS6CVUK.js.map → update-YBTFH5MN.js.map} +0 -0
  1459. /package/dist/{upload-B5SM33MK.js.map → upload-45GCGMA5.js.map} +0 -0
  1460. /package/dist/{upload-GXS5CTOR.js.map → upload-7PPMVWVA.js.map} +0 -0
  1461. /package/dist/{upscale-BCI42TCP.js.map → upscale-WVJZG76V.js.map} +0 -0
  1462. /package/dist/{url-options-NZAS37S5.js.map → url-options-AHJPR5VY.js.map} +0 -0
  1463. /package/dist/{url-params-LUQMABZX.js.map → url-params-U6ZM4LL2.js.map} +0 -0
  1464. /package/dist/{use-26VARHJT.js.map → use-6FADOAFZ.js.map} +0 -0
  1465. /package/dist/{variant-F4EEYQJ7.js.map → variant-RNM36P4J.js.map} +0 -0
  1466. /package/dist/{videos-AHOLXU42.js.map → videos-GHFCOTT7.js.map} +0 -0
  1467. /package/dist/{videos-FMV4AVB2.js.map → videos-NW2UP342.js.map} +0 -0
  1468. /package/dist/{view-X65GETAV.js.map → view-YR6MDLWL.js.map} +0 -0
  1469. /package/dist/{viewer-check-2W6BTVQV.js.map → viewer-check-IDXFRRCO.js.map} +0 -0
  1470. /package/dist/{web-K2EMYVCD.js.map → web-VMPKMBKA.js.map} +0 -0
  1471. /package/dist/{winners-5PRDG7GT.js.map → winners-4T5RFQXU.js.map} +0 -0
  1472. /package/dist/{winning-ads-Q3RXH7EC.js.map → winning-ads-7UJXCWFH.js.map} +0 -0
  1473. /package/dist/{write-commands-LHEJESKL.js.map → write-commands-6D55SB56.js.map} +0 -0
  1474. /package/dist/{write-commands-5OFOD7TE.js.map → write-commands-AIWLEGO2.js.map} +0 -0
  1475. /package/dist/{write-commands-UEQR7ZXO.js.map → write-commands-R42DQEW6.js.map} +0 -0
  1476. /package/dist/{write-commands-SD6DXVNK.js.map → write-commands-UO3OQIHH.js.map} +0 -0
  1477. /package/dist/{x-UNSHYLJJ.js.map → x-UGTUOCVR.js.map} +0 -0
@@ -0,0 +1,1320 @@
1
+ import {
2
+ CHANGES_MAX_LIMIT,
3
+ CHANGE_RESOURCE_TYPES,
4
+ CHANGE_SCOPES,
5
+ CHANGE_SCOPE_MAX_DAYS,
6
+ DEFAULT_CHANGE_DAYS,
7
+ isChangeLookbackWithinReach
8
+ } from "./chunk-BMMXYR7A.js";
9
+ import {
10
+ connectionFixExplanation,
11
+ isNotConnectedError
12
+ } from "./chunk-MPTNN35I.js";
13
+
14
+ // src/commands/ads/google/during-literals.ts
15
+ var GAQL_DURING_LITERALS = [
16
+ "TODAY",
17
+ "YESTERDAY",
18
+ "LAST_7_DAYS",
19
+ "LAST_14_DAYS",
20
+ "LAST_30_DAYS",
21
+ "LAST_BUSINESS_WEEK",
22
+ "THIS_MONTH",
23
+ "LAST_MONTH",
24
+ "THIS_WEEK_SUN_TODAY",
25
+ "THIS_WEEK_MON_TODAY",
26
+ "LAST_WEEK_SUN_SAT",
27
+ "LAST_WEEK_MON_SUN"
28
+ ];
29
+ function isDuringLiteral(value) {
30
+ return GAQL_DURING_LITERALS.includes(value.toUpperCase());
31
+ }
32
+ function isoDay(date) {
33
+ return date.toISOString().slice(0, 10);
34
+ }
35
+ function utcDate(year, month, day) {
36
+ return new Date(Date.UTC(year, month, day));
37
+ }
38
+ function monthsBefore(date, months) {
39
+ const lastDayOfTarget = utcDate(date.getUTCFullYear(), date.getUTCMonth() - months + 1, 0).getUTCDate();
40
+ return utcDate(date.getUTCFullYear(), date.getUTCMonth() - months, Math.min(date.getUTCDate(), lastDayOfTarget));
41
+ }
42
+ function equivalentBetween(literal, now) {
43
+ const upper = literal.toUpperCase();
44
+ const today = utcDate(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate());
45
+ const yesterday = utcDate(today.getUTCFullYear(), today.getUTCMonth(), today.getUTCDate() - 1);
46
+ const range = (from, to) => `BETWEEN '${isoDay(from)}' AND '${isoDay(to)}'`;
47
+ const year = today.getUTCFullYear();
48
+ const quarterStart = Math.floor(today.getUTCMonth() / 3) * 3;
49
+ const rolling = upper.match(/^LAST_(\d+)_(DAYS|WEEKS|MONTHS|YEARS)$/);
50
+ if (rolling) {
51
+ const n = Number(rolling[1]);
52
+ const unit = rolling[2];
53
+ if (n < 1) return null;
54
+ if (unit === "DAYS" || unit === "WEEKS") {
55
+ const days = unit === "DAYS" ? n : n * 7;
56
+ return range(utcDate(year, today.getUTCMonth(), today.getUTCDate() - days), yesterday);
57
+ }
58
+ const months = unit === "MONTHS" ? n : n * 12;
59
+ return range(monthsBefore(today, months), yesterday);
60
+ }
61
+ switch (upper) {
62
+ case "THIS_YEAR":
63
+ return range(utcDate(year, 0, 1), today);
64
+ case "LAST_YEAR":
65
+ return range(utcDate(year - 1, 0, 1), utcDate(year - 1, 11, 31));
66
+ case "THIS_QUARTER":
67
+ return range(utcDate(year, quarterStart, 1), today);
68
+ case "LAST_QUARTER":
69
+ return range(utcDate(year, quarterStart - 3, 1), utcDate(year, quarterStart, 0));
70
+ default:
71
+ return null;
72
+ }
73
+ }
74
+ function duringLiteralExplanation(literal, between) {
75
+ const accepted = GAQL_DURING_LITERALS.join(", ");
76
+ const lead = between ? `Google does not accept ${literal} after DURING. The same window as explicit dates is ${between}.` : `Google does not accept ${literal} after DURING, and it names no fixed window \u2014 use BETWEEN 'YYYY-MM-DD' AND 'YYYY-MM-DD', or drop the date filter.`;
77
+ return `${lead} DURING accepts only: ${accepted}. Any other window needs BETWEEN.`;
78
+ }
79
+
80
+ // src/commands/ads/google/changes-window.ts
81
+ function monthlySpendTrendQuery(now = /* @__PURE__ */ new Date()) {
82
+ return `SELECT campaign.name, segments.month, metrics.cost_micros, metrics.conversions FROM campaign WHERE segments.date ${equivalentBetween("LAST_12_MONTHS", now)}`;
83
+ }
84
+ function isChangeScope(value) {
85
+ return CHANGE_SCOPES.includes(value);
86
+ }
87
+ function resolveChangesWindow(input) {
88
+ const refusal = changesFilterRefusal(input);
89
+ if (refusal) return { ok: false, error: refusal };
90
+ const scope = input.scope ?? "detail";
91
+ if (!isChangeScope(scope)) {
92
+ return {
93
+ ok: false,
94
+ error: {
95
+ code: "INVALID_SCOPE",
96
+ message: `Unknown scope '${scope}'. Use 'detail' (field-level changes, 30 days) or 'summary' (which resources changed, 90 days).`,
97
+ fix: {
98
+ action: "retry_with_flag",
99
+ explanation: "Pass --scope detail or --scope summary."
100
+ }
101
+ }
102
+ };
103
+ }
104
+ const days = input.days ?? DEFAULT_CHANGE_DAYS;
105
+ if (!Number.isInteger(days) || days < 1) {
106
+ return {
107
+ ok: false,
108
+ error: {
109
+ code: "INVALID_LOOKBACK",
110
+ message: `--days must be a whole number of days, got '${days}'.`,
111
+ fix: {
112
+ action: "retry_with_flag",
113
+ explanation: `Pass --days as a positive integer, e.g. --days ${DEFAULT_CHANGE_DAYS}.`
114
+ }
115
+ }
116
+ };
117
+ }
118
+ if (!isChangeLookbackWithinReach(days, scope)) {
119
+ return { ok: false, error: lookbackTooLong(scope, days, CHANGE_SCOPE_MAX_DAYS[scope]) };
120
+ }
121
+ return { ok: true, scope, days, hints: hintsFor(scope, days) };
122
+ }
123
+ function changesFilterRefusal(input) {
124
+ const { limit, resourceType } = input;
125
+ if (limit !== void 0 && (!Number.isInteger(limit) || limit < 1 || limit > CHANGES_MAX_LIMIT)) {
126
+ return {
127
+ code: "INVALID_LIMIT",
128
+ message: `--limit must be a whole number from 1 to ${CHANGES_MAX_LIMIT}, got '${limit}'.`,
129
+ fix: {
130
+ action: "retry_with_flag",
131
+ explanation: `Pass --limit ${CHANGES_MAX_LIMIT} at most. To see further back than one full read reaches, narrow with --resource-type or shorten --days and read again.`
132
+ }
133
+ };
134
+ }
135
+ if (resourceType && !CHANGE_RESOURCE_TYPES.includes(resourceType)) {
136
+ return {
137
+ code: "INVALID_RESOURCE_TYPE",
138
+ message: `--resource-type '${resourceType}' is not one the change history can be filtered by.`,
139
+ fix: {
140
+ action: "retry_with_flag",
141
+ explanation: `Use one of ${CHANGE_RESOURCE_TYPES.join(", ")}, or drop --resource-type and filter the rows by their resource type.`
142
+ }
143
+ };
144
+ }
145
+ return null;
146
+ }
147
+ function lookbackTooLong(scope, days, max) {
148
+ if (scope === "detail" && days <= CHANGE_SCOPE_MAX_DAYS.summary) {
149
+ return {
150
+ code: "LOOKBACK_TOO_LONG",
151
+ message: `Google keeps field-level change detail for ${max} days only; ${days} days is outside that window.`,
152
+ fix: {
153
+ action: "narrow_date_range",
154
+ explanation: `Re-run with --scope summary --days ${days} to reach back ${CHANGE_SCOPE_MAX_DAYS.summary} days. Summary tells you which campaigns, ad groups, ads and criteria changed and when, but not the old and new values \u2014 read the resource itself for current values.`
155
+ }
156
+ };
157
+ }
158
+ return {
159
+ code: "LOOKBACK_TOO_LONG",
160
+ message: `Google's account history API reaches back ${CHANGE_SCOPE_MAX_DAYS.summary} days at most; ${days} days is outside that window.`,
161
+ fix: {
162
+ action: "use_different_resource",
163
+ explanation: `Do not abort \u2014 infer the change from performance instead. Query monthly metrics per campaign (${monthlySpendTrendQuery()}) to see which campaigns stopped or started spending. That shows what changed and when, though not who changed it. Older history exists only in the Google Ads web UI, which has no API \u2014 ask the user to check it if the 'who' matters.`
164
+ }
165
+ };
166
+ }
167
+ function hintsFor(scope, days) {
168
+ const hints = [];
169
+ if (scope === "detail") {
170
+ hints.push(
171
+ `Detailed history covers the last ${CHANGE_SCOPE_MAX_DAYS.detail} days. For anything older use --scope summary (reaches ${CHANGE_SCOPE_MAX_DAYS.summary} days, reports which resources changed but not their values).`
172
+ );
173
+ } else {
174
+ hints.push(
175
+ "Summary history reports which resources changed and when, not old and new values. To see what a changed resource looks like now, query it by resource_name."
176
+ );
177
+ if (days > CHANGE_SCOPE_MAX_DAYS.detail) {
178
+ hints.push(
179
+ `Changes inside the last ${CHANGE_SCOPE_MAX_DAYS.detail} days also have field-level detail \u2014 re-run with --scope detail for those.`
180
+ );
181
+ }
182
+ }
183
+ return hints;
184
+ }
185
+ var CHANGE_TIME_FIELDS = ["change_event.change_date_time", "change_status.last_change_date_time"];
186
+ function cappedChangesHint(rows, limit, days) {
187
+ if (rows.length < limit) return null;
188
+ const oldest = rows[rows.length - 1];
189
+ const at = CHANGE_TIME_FIELDS.map((field) => oldest?.[field]).find((value) => typeof value === "string");
190
+ const reached = typeof at === "string" ? `reaching back only to ${at}` : "not the whole window";
191
+ const more = limit < CHANGES_MAX_LIMIT ? `re-run with --limit ${Math.min(limit * 2, CHANGES_MAX_LIMIT)}, or narrow with --campaign-id or --resource-type` : "narrow with --campaign-id or --resource-type";
192
+ return `This read came back full at --limit ${limit}, ${reached}, not the ${days} days asked for: older changes almost certainly exist and are NOT shown. Do not conclude nothing changed before then \u2014 ${more}.`;
193
+ }
194
+
195
+ // src/commands/ads/google/presets.ts
196
+ var BETWEEN_RE = /^BETWEEN\s+'[0-9]{4}-[0-9]{2}-[0-9]{2}'\s+AND\s+'[0-9]{4}-[0-9]{2}-[0-9]{2}'$/i;
197
+ function isValidDateRange(value) {
198
+ const trimmed = value.trim();
199
+ return isDuringLiteral(trimmed) || BETWEEN_RE.test(trimmed);
200
+ }
201
+ function dateRangeError(dateRange, now) {
202
+ if (/^[A-Za-z0-9_]+$/.test(dateRange.trim())) {
203
+ return `Invalid date range: "${dateRange}". ${duringLiteralExplanation(dateRange, equivalentBetween(dateRange, now))} Pass it as --date-range "BETWEEN 'YYYY-MM-DD' AND 'YYYY-MM-DD'".`;
204
+ }
205
+ return `Invalid date range: "${dateRange}". Use a GAQL date literal (e.g. LAST_30_DAYS, TODAY) or BETWEEN 'YYYY-MM-DD' AND 'YYYY-MM-DD'.`;
206
+ }
207
+ var SERVING_CHAINS = {
208
+ keyword_view: ["campaign.status", "ad_group.status", "ad_group_criterion.status"],
209
+ ad_group_criterion: ["campaign.status", "ad_group.status", "ad_group_criterion.status"],
210
+ ad_group_ad: ["campaign.status", "ad_group.status", "ad_group_ad.status"],
211
+ search_term_view: ["campaign.status", "ad_group.status"],
212
+ ad_group: ["campaign.status", "ad_group.status"],
213
+ asset_group: ["campaign.status", "asset_group.status"],
214
+ // An asset link carries its own status, and it is not the campaign's, the ad group's or the asset
215
+ // group's. Google returns a REMOVED link like any other row, so a read scoped only to its owners
216
+ // lists extensions that are no longer attached to anything — which is what 74 detaches were planned
217
+ // from on a live account, every one of them refused at publish as `RESOURCE_NOT_FOUND`.
218
+ // `customer_asset` is deliberately absent: one rung, no ancestor to forget.
219
+ asset_group_asset: ["campaign.status", "asset_group.status", "asset_group_asset.status"],
220
+ campaign_asset: ["campaign.status", "campaign_asset.status"],
221
+ ad_group_asset: ["campaign.status", "ad_group.status", "ad_group_asset.status"]
222
+ };
223
+ var CORE_PRESETS = [
224
+ {
225
+ name: "campaign-performance",
226
+ description: "Campaign-level metrics overview",
227
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, campaign.advertising_channel_type, campaign.bidding_strategy_type, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.conversions, metrics.all_conversions, metrics.conversions_value, metrics.ctr, metrics.average_cpc FROM campaign WHERE segments.date DURING {dateRange}{statusScope} ORDER BY metrics.cost_micros DESC`,
228
+ defaultDateRange: "LAST_30_DAYS",
229
+ defaultLimit: 200,
230
+ statusFields: ["campaign.status"]
231
+ },
232
+ {
233
+ name: "budget-limited",
234
+ description: "Campaigns Google reports as limited by budget, with each one's bid target next to its actual cost per conversion \u2014 the state where a target above actual now drives delivery up to the target instead of holding recent cost",
235
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, campaign.advertising_channel_type, campaign.bidding_strategy_type, campaign.primary_status, campaign.primary_status_reasons, campaign.target_cpa.target_cpa_micros, campaign.maximize_conversions.target_cpa_micros, campaign.target_roas.target_roas, campaign.maximize_conversion_value.target_roas, campaign.target_cpc.target_cpc_micros, campaign_budget.amount_micros, metrics.cost_micros, metrics.conversions, metrics.conversions_value, metrics.cost_per_conversion, metrics.search_budget_lost_impression_share FROM campaign WHERE campaign.primary_status_reasons CONTAINS ANY (BUDGET_CONSTRAINED) AND segments.date DURING {dateRange}{statusScope} ORDER BY metrics.cost_micros DESC`,
236
+ defaultDateRange: "LAST_30_DAYS",
237
+ defaultLimit: 200,
238
+ statusFields: ["campaign.status"]
239
+ },
240
+ {
241
+ name: "conversions-by-action",
242
+ description: "Which conversion action each campaign's conversions actually are \u2014 the read that says whether two campaigns' conversion rates are measuring the same event",
243
+ gaqlTemplate: `SELECT campaign.id, campaign.name, segments.conversion_action_name, segments.conversion_action_category, metrics.conversions, metrics.all_conversions FROM campaign WHERE segments.date DURING {dateRange}{statusScope} ORDER BY metrics.conversions DESC`,
244
+ defaultDateRange: "LAST_30_DAYS",
245
+ defaultLimit: 200,
246
+ statusFields: ["campaign.status"]
247
+ },
248
+ {
249
+ name: "keyword-analysis",
250
+ description: "Keyword performance with match type, quality and the first-page, top-of-page and first-position CPC estimates",
251
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, ad_group.id, ad_group.name, ad_group.status, ad_group_criterion.criterion_id, ad_group_criterion.keyword.text, ad_group_criterion.keyword.match_type, ad_group_criterion.status, ad_group_criterion.quality_info.quality_score, ad_group_criterion.position_estimates.first_page_cpc_micros, ad_group_criterion.position_estimates.top_of_page_cpc_micros, ad_group_criterion.position_estimates.first_position_cpc_micros, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.conversions, metrics.all_conversions, metrics.ctr FROM keyword_view WHERE segments.date DURING {dateRange}{statusScope} ORDER BY metrics.impressions DESC`,
252
+ defaultDateRange: "LAST_30_DAYS",
253
+ defaultLimit: 200,
254
+ statusFields: ["campaign.status", "ad_group.status", "ad_group_criterion.status"]
255
+ },
256
+ {
257
+ name: "keyword-serving",
258
+ description: "Why a keyword is limited \u2014 Google Ads' 'Eligible (Limited) / Below first page bid' column, with the first-page bid estimate, the current max CPC and quality score",
259
+ gaqlTemplate: `SELECT campaign.id, campaign.name, ad_group.id, ad_group.name, ad_group_criterion.criterion_id, ad_group_criterion.keyword.text, ad_group_criterion.keyword.match_type, ad_group_criterion.status, ad_group_criterion.primary_status, ad_group_criterion.primary_status_reasons, ad_group_criterion.system_serving_status, ad_group_criterion.approval_status, ad_group_criterion.effective_cpc_bid_micros, ad_group_criterion.effective_cpc_bid_source, ad_group_criterion.position_estimates.first_page_cpc_micros, ad_group_criterion.position_estimates.top_of_page_cpc_micros, ad_group_criterion.quality_info.quality_score, ad_group_criterion.quality_info.creative_quality_score, ad_group_criterion.quality_info.post_click_quality_score, ad_group_criterion.quality_info.search_predicted_ctr FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.negative = FALSE{statusScope} ORDER BY campaign.name`,
260
+ defaultDateRange: "ALL_TIME",
261
+ defaultLimit: 500,
262
+ statusFields: ["campaign.status", "ad_group.status", "ad_group_criterion.status"]
263
+ },
264
+ {
265
+ name: "positive-keywords",
266
+ description: "Positive (targeting) keywords only \u2014 excludes negatives",
267
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, ad_group.id, ad_group.name, ad_group.status, ad_group_criterion.criterion_id, ad_group_criterion.keyword.text, ad_group_criterion.keyword.match_type, ad_group_criterion.status, ad_group_criterion.negative FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.negative = FALSE{statusScope} ORDER BY campaign.name`,
268
+ defaultDateRange: "ALL_TIME",
269
+ defaultLimit: 500,
270
+ statusFields: ["campaign.status", "ad_group.status", "ad_group_criterion.status"]
271
+ },
272
+ {
273
+ name: "negative-keywords",
274
+ description: "Negative keywords only \u2014 campaign and ad group level",
275
+ gaqlTemplate: `SELECT campaign.id, campaign.name, ad_group.name, ad_group_criterion.keyword.text, ad_group_criterion.keyword.match_type, ad_group_criterion.negative FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.negative = TRUE AND campaign.status != 'REMOVED' ORDER BY campaign.name`,
276
+ defaultDateRange: "ALL_TIME",
277
+ defaultLimit: 500
278
+ },
279
+ {
280
+ name: "negative-keyword-lists",
281
+ description: "Shared negative keyword lists and the terms inside them (SharedSet members), with each member's resource name \u2014 what `negative-keywords remove` / a list-member removal takes",
282
+ gaqlTemplate: `SELECT shared_set.id, shared_set.name, shared_criterion.resource_name, shared_criterion.criterion_id, shared_criterion.keyword.text, shared_criterion.keyword.match_type FROM shared_criterion WHERE shared_set.type = 'NEGATIVE_KEYWORDS' AND shared_set.status = 'ENABLED' ORDER BY shared_set.name`,
283
+ defaultDateRange: "ALL_TIME",
284
+ defaultLimit: 500
285
+ },
286
+ {
287
+ name: "negative-list-attachments",
288
+ description: "Which campaigns each shared negative keyword list is attached to",
289
+ gaqlTemplate: `SELECT campaign.id, campaign.name, shared_set.id, shared_set.name FROM campaign_shared_set WHERE shared_set.type = 'NEGATIVE_KEYWORDS' AND campaign_shared_set.status = 'ENABLED' ORDER BY campaign.name`,
290
+ defaultDateRange: "ALL_TIME",
291
+ defaultLimit: 500
292
+ },
293
+ {
294
+ name: "search-terms",
295
+ description: "Actual user search queries triggering ads, with the match type that matched them",
296
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, ad_group.name, ad_group.status, search_term_view.search_term, segments.search_term_match_type, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.conversions FROM search_term_view WHERE segments.date DURING {dateRange}{statusScope} ORDER BY metrics.impressions DESC`,
297
+ defaultDateRange: "LAST_7_DAYS",
298
+ defaultLimit: 200,
299
+ statusFields: ["campaign.status", "ad_group.status"]
300
+ },
301
+ {
302
+ name: "ad-copy-performance",
303
+ description: "Every ad's metrics, with its headlines and descriptions when it is a responsive search ad",
304
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, ad_group.id, ad_group.name, ad_group.status, ad_group_ad.ad.id, ad_group_ad.ad.type, ad_group_ad.status, ad_group_ad.ad.responsive_search_ad.headlines, ad_group_ad.ad.responsive_search_ad.descriptions, ad_group_ad.ad.final_urls, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.conversions, metrics.all_conversions, metrics.ctr FROM ad_group_ad WHERE segments.date DURING {dateRange}{statusScope} ORDER BY metrics.impressions DESC`,
305
+ defaultDateRange: "LAST_30_DAYS",
306
+ defaultLimit: 200,
307
+ statusFields: ["campaign.status", "ad_group.status", "ad_group_ad.status"]
308
+ },
309
+ {
310
+ name: "asset-performance",
311
+ // `asset_group_asset.performance_label` is gone (v25 answers UNRECOGNIZED_FIELD): Google retired
312
+ // the BEST/GOOD/LOW label, so the read is each asset's serving status and its own metrics.
313
+ description: "Performance Max assets: serving status and metrics per asset",
314
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, asset_group.name, asset_group.status, asset_group_asset.status, asset_group_asset.field_type, asset_group_asset.primary_status, asset_group_asset.primary_status_reasons, asset.type, asset.text_asset.text, asset.image_asset.full_size.url, metrics.impressions, metrics.clicks, metrics.conversions, metrics.cost_micros FROM asset_group_asset WHERE campaign.advertising_channel_type = 'PERFORMANCE_MAX' AND segments.date DURING {dateRange}{statusScope}`,
315
+ defaultDateRange: "LAST_30_DAYS",
316
+ defaultLimit: 200,
317
+ statusFields: ["campaign.status", "asset_group.status", "asset_group_asset.status"]
318
+ },
319
+ {
320
+ name: "shopping-products",
321
+ description: "Product-level shopping performance metrics",
322
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, segments.product_title, segments.product_item_id, segments.product_brand, segments.product_type_l1, metrics.clicks, metrics.impressions, metrics.cost_micros, metrics.conversions FROM shopping_performance_view WHERE segments.date DURING {dateRange}{statusScope} ORDER BY metrics.cost_micros DESC`,
323
+ defaultDateRange: "LAST_30_DAYS",
324
+ defaultLimit: 200,
325
+ statusFields: ["campaign.status"]
326
+ },
327
+ {
328
+ name: "account-summary",
329
+ description: "Account-level totals for a date range",
330
+ gaqlTemplate: `SELECT customer.id, customer.descriptive_name, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.conversions, metrics.all_conversions, metrics.conversions_value FROM customer WHERE segments.date DURING {dateRange} LIMIT 1`,
331
+ defaultDateRange: "LAST_30_DAYS",
332
+ defaultLimit: 1
333
+ }
334
+ ];
335
+ var REPORT_PRESETS = [
336
+ {
337
+ name: "pmax-channels",
338
+ description: "Performance Max spend and results split by channel (Search, YouTube, Display, Discover, Gmail, Maps\u2026) \u2014 segments.ad_network_type per campaign",
339
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, segments.ad_network_type, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.conversions, metrics.conversions_value FROM campaign WHERE campaign.advertising_channel_type = 'PERFORMANCE_MAX' AND segments.date DURING {dateRange}{statusScope} ORDER BY metrics.cost_micros DESC`,
340
+ defaultDateRange: "LAST_30_DAYS",
341
+ defaultLimit: 200,
342
+ statusFields: ["campaign.status"]
343
+ },
344
+ {
345
+ name: "pmax-placements",
346
+ description: "Where Performance Max ads showed on Display / YouTube / apps (Google reports impressions only for these)",
347
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, performance_max_placement_view.display_name, performance_max_placement_view.placement, performance_max_placement_view.placement_type, performance_max_placement_view.target_url, metrics.impressions FROM performance_max_placement_view WHERE segments.date DURING {dateRange}{statusScope} ORDER BY metrics.impressions DESC`,
348
+ defaultDateRange: "LAST_30_DAYS",
349
+ defaultLimit: 200,
350
+ statusFields: ["campaign.status"]
351
+ },
352
+ {
353
+ name: "placements",
354
+ description: "Where Display, Video and Demand Gen ads showed \u2014 each website, app or YouTube video, with cost and conversions (exclusion candidates)",
355
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, ad_group.id, ad_group.name, ad_group.status, detail_placement_view.display_name, detail_placement_view.placement, detail_placement_view.placement_type, detail_placement_view.target_url, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.conversions FROM detail_placement_view WHERE segments.date DURING {dateRange}{statusScope} ORDER BY metrics.cost_micros DESC`,
356
+ defaultDateRange: "LAST_30_DAYS",
357
+ defaultLimit: 200,
358
+ statusFields: ["campaign.status", "ad_group.status"]
359
+ },
360
+ {
361
+ name: "rsa-assets",
362
+ description: "Each responsive search ad headline and description: its text, pin, whether it is enabled, its approval and its own impressions/clicks/conversions",
363
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, ad_group.id, ad_group.name, ad_group.status, ad_group_ad.ad.id, ad_group_ad.status, ad_group_ad_asset_view.field_type, ad_group_ad_asset_view.pinned_field, ad_group_ad_asset_view.enabled, ad_group_ad_asset_view.policy_summary, asset.id, asset.text_asset.text, metrics.impressions, metrics.clicks, metrics.conversions FROM ad_group_ad_asset_view WHERE ad_group_ad.ad.type = 'RESPONSIVE_SEARCH_AD' AND segments.date DURING {dateRange}{statusScope} ORDER BY metrics.impressions DESC`,
364
+ defaultDateRange: "LAST_30_DAYS",
365
+ defaultLimit: 500,
366
+ statusFields: ["campaign.status", "ad_group.status", "ad_group_ad.status"]
367
+ },
368
+ {
369
+ name: "landing-pages",
370
+ description: "Final URLs as written on the ads, with clicks, cost, conversions, mobile-friendly click share and speed score",
371
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, landing_page_view.unexpanded_final_url, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.conversions, metrics.mobile_friendly_clicks_percentage, metrics.speed_score FROM landing_page_view WHERE segments.date DURING {dateRange}{statusScope} ORDER BY metrics.clicks DESC`,
372
+ defaultDateRange: "LAST_30_DAYS",
373
+ defaultLimit: 200,
374
+ statusFields: ["campaign.status"]
375
+ },
376
+ {
377
+ name: "geo-performance",
378
+ description: "Results by country and location type (people IN vs INTERESTED IN the place) per campaign \u2014 the read behind a Presence vs Presence-or-interest decision",
379
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, geographic_view.country_criterion_id, geographic_view.location_type, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.conversions FROM geographic_view WHERE segments.date DURING {dateRange}{statusScope} ORDER BY metrics.cost_micros DESC`,
380
+ defaultDateRange: "LAST_30_DAYS",
381
+ defaultLimit: 200,
382
+ statusFields: ["campaign.status"]
383
+ },
384
+ {
385
+ name: "age-performance",
386
+ description: "Results by age range per ad group",
387
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, ad_group.id, ad_group.name, ad_group.status, ad_group_criterion.age_range.type, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.conversions FROM age_range_view WHERE segments.date DURING {dateRange}{statusScope} ORDER BY metrics.cost_micros DESC`,
388
+ defaultDateRange: "LAST_30_DAYS",
389
+ defaultLimit: 200,
390
+ statusFields: ["campaign.status", "ad_group.status"]
391
+ },
392
+ {
393
+ name: "gender-performance",
394
+ description: "Results by gender per ad group",
395
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, ad_group.id, ad_group.name, ad_group.status, ad_group_criterion.gender.type, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.conversions FROM gender_view WHERE segments.date DURING {dateRange}{statusScope} ORDER BY metrics.cost_micros DESC`,
396
+ defaultDateRange: "LAST_30_DAYS",
397
+ defaultLimit: 200,
398
+ statusFields: ["campaign.status", "ad_group.status"]
399
+ },
400
+ {
401
+ name: "ai-max-search-terms",
402
+ description: "AI Max for Search: each search term with the headline and landing page Google generated or chose for it, with results",
403
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, ad_group.id, ad_group.name, ad_group.status, ai_max_search_term_ad_combination_view.search_term, ai_max_search_term_ad_combination_view.headline, ai_max_search_term_ad_combination_view.landing_page, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.conversions FROM ai_max_search_term_ad_combination_view WHERE segments.date DURING {dateRange}{statusScope} ORDER BY metrics.impressions DESC`,
404
+ defaultDateRange: "LAST_30_DAYS",
405
+ defaultLimit: 200,
406
+ statusFields: ["campaign.status", "ad_group.status"]
407
+ },
408
+ {
409
+ name: "bidding-strategy-performance",
410
+ description: "Each portfolio bidding strategy's type, status, targets and metrics",
411
+ gaqlTemplate: `SELECT bidding_strategy.id, bidding_strategy.name, bidding_strategy.type, bidding_strategy.status, bidding_strategy.campaign_count, bidding_strategy.target_cpa.target_cpa_micros, bidding_strategy.target_roas.target_roas, bidding_strategy.maximize_conversions.target_cpa_micros, bidding_strategy.maximize_conversion_value.target_roas, metrics.impressions, metrics.clicks, metrics.cost_micros, metrics.conversions, metrics.all_conversions, metrics.conversions_value FROM bidding_strategy WHERE segments.date DURING {dateRange}{statusScope} ORDER BY metrics.cost_micros DESC`,
412
+ defaultDateRange: "LAST_30_DAYS",
413
+ defaultLimit: 200,
414
+ statusFields: ["bidding_strategy.status"]
415
+ },
416
+ {
417
+ name: "conversion-tags",
418
+ description: "The tracking code of each website and call conversion action: the Google tag and the event snippet to put on the site",
419
+ gaqlTemplate: `SELECT conversion_action.id, conversion_action.name, conversion_action.type, conversion_action.status, conversion_action.tag_snippets FROM conversion_action WHERE conversion_action.type IN ('WEBPAGE', 'WEBPAGE_CODELESS', 'WEBSITE_CALL') AND conversion_action.status != 'REMOVED' ORDER BY conversion_action.name`,
420
+ defaultDateRange: "ALL_TIME",
421
+ defaultLimit: 50
422
+ },
423
+ {
424
+ name: "account-budget",
425
+ description: "The account budget (invoiced billing): approved spending limit, served amount, dates and any pending change \u2014 read-only",
426
+ gaqlTemplate: `SELECT account_budget.id, account_budget.name, account_budget.status, account_budget.billing_setup, account_budget.approved_spending_limit_micros, account_budget.approved_spending_limit_type, account_budget.amount_served_micros, account_budget.total_adjustments_micros, account_budget.approved_start_date_time, account_budget.approved_end_date_time, account_budget.pending_proposal.proposal_type, account_budget.pending_proposal.spending_limit_micros FROM account_budget ORDER BY account_budget.approved_start_date_time DESC`,
427
+ defaultDateRange: "ALL_TIME",
428
+ defaultLimit: 50
429
+ },
430
+ {
431
+ name: "recommendations",
432
+ description: "Google's open recommendations (not dismissed): type, the campaign/ad group it targets, and its estimated impact",
433
+ gaqlTemplate: `SELECT recommendation.resource_name, recommendation.type, recommendation.campaign, recommendation.ad_group, recommendation.impact FROM recommendation WHERE recommendation.dismissed = FALSE`,
434
+ defaultDateRange: "ALL_TIME",
435
+ defaultLimit: 200
436
+ },
437
+ {
438
+ name: "campaign-simulations",
439
+ description: "Google's what-if curves per campaign \u2014 budget, target CPA / ROAS, CPC bid or target impression share against the clicks, cost and conversions Google predicts",
440
+ gaqlTemplate: `SELECT campaign_simulation.campaign_id, campaign_simulation.type, campaign_simulation.modification_method, campaign_simulation.start_date, campaign_simulation.end_date, campaign_simulation.budget_point_list.points, campaign_simulation.target_cpa_point_list.points, campaign_simulation.target_roas_point_list.points, campaign_simulation.cpc_bid_point_list.points, campaign_simulation.target_impression_share_point_list.points FROM campaign_simulation`,
441
+ defaultDateRange: "ALL_TIME",
442
+ defaultLimit: 200
443
+ },
444
+ {
445
+ name: "keyword-bid-simulations",
446
+ description: "Google's what-if curve per keyword: CPC bid against predicted clicks, cost and impressions",
447
+ gaqlTemplate: `SELECT ad_group_criterion_simulation.ad_group_id, ad_group_criterion_simulation.criterion_id, ad_group_criterion_simulation.type, ad_group_criterion_simulation.start_date, ad_group_criterion_simulation.end_date, ad_group_criterion_simulation.cpc_bid_point_list.points FROM ad_group_criterion_simulation`,
448
+ defaultDateRange: "ALL_TIME",
449
+ defaultLimit: 200
450
+ }
451
+ ];
452
+ var INVENTORY_PRESETS = [
453
+ {
454
+ name: "campaigns",
455
+ description: "Every campaign: id, name, status, channel, bidding, budget and dates",
456
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, campaign.primary_status, campaign.advertising_channel_type, campaign.advertising_channel_sub_type, campaign.bidding_strategy_type, campaign.bidding_strategy, campaign.campaign_budget, campaign_budget.amount_micros, campaign.start_date_time, campaign.end_date_time FROM campaign{statusWhere} ORDER BY campaign.name`,
457
+ defaultDateRange: "ALL_TIME",
458
+ defaultLimit: 200,
459
+ statusFields: ["campaign.status"]
460
+ },
461
+ {
462
+ name: "budgets",
463
+ description: "Every campaign budget: id, name, daily amount, delivery, whether it is shared and how many campaigns use it",
464
+ gaqlTemplate: `SELECT campaign_budget.id, campaign_budget.name, campaign_budget.status, campaign_budget.amount_micros, campaign_budget.delivery_method, campaign_budget.explicitly_shared, campaign_budget.reference_count FROM campaign_budget WHERE campaign_budget.status != 'REMOVED' ORDER BY campaign_budget.name`,
465
+ defaultDateRange: "ALL_TIME",
466
+ defaultLimit: 200
467
+ },
468
+ {
469
+ name: "ad-groups",
470
+ description: "Every ad group: id, name, status, type and default CPC bid, under its campaign",
471
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, ad_group.id, ad_group.name, ad_group.status, ad_group.type, ad_group.cpc_bid_micros FROM ad_group{statusWhere} ORDER BY campaign.name`,
472
+ defaultDateRange: "ALL_TIME",
473
+ defaultLimit: 500,
474
+ statusFields: ["campaign.status", "ad_group.status"]
475
+ },
476
+ {
477
+ name: "keywords",
478
+ description: "Every positive keyword: resource name, text, match type, status, bid and final URL \u2014 `keywords update|remove` take the resource name",
479
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, ad_group.id, ad_group.name, ad_group.status, ad_group_criterion.resource_name, ad_group_criterion.criterion_id, ad_group_criterion.keyword.text, ad_group_criterion.keyword.match_type, ad_group_criterion.status, ad_group_criterion.negative, ad_group_criterion.cpc_bid_micros, ad_group_criterion.final_urls FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.negative = FALSE{statusScope} ORDER BY campaign.name`,
480
+ defaultDateRange: "ALL_TIME",
481
+ defaultLimit: 500,
482
+ statusFields: ["campaign.status", "ad_group.status", "ad_group_criterion.status"]
483
+ },
484
+ {
485
+ name: "campaign-negative-keywords",
486
+ description: "Campaign-level negative keywords with the resource name `negative-keywords remove` takes",
487
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, campaign_criterion.resource_name, campaign_criterion.keyword.text, campaign_criterion.keyword.match_type FROM campaign_criterion WHERE campaign_criterion.type = 'KEYWORD' AND campaign_criterion.negative = TRUE AND campaign_criterion.status != 'REMOVED' AND campaign.status != 'REMOVED' ORDER BY campaign.name`,
488
+ defaultDateRange: "ALL_TIME",
489
+ defaultLimit: 500
490
+ },
491
+ {
492
+ name: "ad-group-negative-keywords",
493
+ description: "Ad-group-level negative keywords with the resource name `negative-keywords remove` takes",
494
+ gaqlTemplate: `SELECT campaign.id, campaign.name, ad_group.id, ad_group.name, ad_group_criterion.resource_name, ad_group_criterion.keyword.text, ad_group_criterion.keyword.match_type, ad_group_criterion.negative FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.negative = TRUE AND ad_group_criterion.status != 'REMOVED' AND ad_group.status != 'REMOVED' AND campaign.status != 'REMOVED' ORDER BY campaign.name`,
495
+ defaultDateRange: "ALL_TIME",
496
+ defaultLimit: 500
497
+ },
498
+ {
499
+ name: "shared-sets",
500
+ description: "Every shared list (negative keyword / placement lists): id, name, type, member count and how many campaigns use it",
501
+ gaqlTemplate: `SELECT shared_set.id, shared_set.name, shared_set.type, shared_set.status, shared_set.member_count, shared_set.reference_count FROM shared_set WHERE shared_set.status != 'REMOVED' ORDER BY shared_set.name`,
502
+ defaultDateRange: "ALL_TIME",
503
+ defaultLimit: 200
504
+ },
505
+ {
506
+ name: "ads",
507
+ description: "Every ad: id, type, name, status, approval and final URLs, under its ad group",
508
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, ad_group.id, ad_group.name, ad_group.status, ad_group_ad.resource_name, ad_group_ad.ad.id, ad_group_ad.ad.type, ad_group_ad.ad.name, ad_group_ad.status, ad_group_ad.policy_summary.approval_status, ad_group_ad.ad.final_urls FROM ad_group_ad{statusWhere} ORDER BY campaign.name`,
509
+ defaultDateRange: "ALL_TIME",
510
+ defaultLimit: 500,
511
+ statusFields: ["campaign.status", "ad_group.status", "ad_group_ad.status"]
512
+ },
513
+ {
514
+ name: "assets",
515
+ description: "Every asset in the account library: id, name, type, text and final URLs",
516
+ gaqlTemplate: `SELECT asset.id, asset.name, asset.type, asset.text_asset.text, asset.sitelink_asset.link_text, asset.callout_asset.callout_text, asset.image_asset.full_size.url, asset.youtube_video_asset.youtube_video_id, asset.final_urls FROM asset ORDER BY asset.type`,
517
+ defaultDateRange: "ALL_TIME",
518
+ defaultLimit: 500
519
+ },
520
+ {
521
+ name: "asset-groups",
522
+ description: "Every Performance Max asset group: id, name, status, final URLs and strength, under its campaign",
523
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, asset_group.resource_name, asset_group.id, asset_group.name, asset_group.status, asset_group.final_urls, asset_group.ad_strength FROM asset_group{statusWhere} ORDER BY campaign.name`,
524
+ defaultDateRange: "ALL_TIME",
525
+ defaultLimit: 200,
526
+ statusFields: ["campaign.status", "asset_group.status"]
527
+ },
528
+ {
529
+ name: "audiences",
530
+ description: "Every audience (user list): id, name, type, membership status, size on search and display, membership duration",
531
+ gaqlTemplate: `SELECT user_list.id, user_list.name, user_list.type, user_list.membership_status, user_list.size_for_search, user_list.size_for_display, user_list.membership_life_span, user_list.eligible_for_search, user_list.eligible_for_display FROM user_list ORDER BY user_list.name`,
532
+ defaultDateRange: "ALL_TIME",
533
+ defaultLimit: 200
534
+ },
535
+ {
536
+ name: "conversion-actions",
537
+ description: "Every conversion action: id, name, type, category, origin, status, primary or secondary, counting",
538
+ gaqlTemplate: `SELECT conversion_action.id, conversion_action.name, conversion_action.type, conversion_action.category, conversion_action.origin, conversion_action.status, conversion_action.primary_for_goal, conversion_action.counting_type FROM conversion_action WHERE conversion_action.status != 'REMOVED' ORDER BY conversion_action.name`,
539
+ defaultDateRange: "ALL_TIME",
540
+ defaultLimit: 200
541
+ },
542
+ {
543
+ name: "bidding-strategies",
544
+ description: "Every portfolio bidding strategy: id, name, type, status and how many campaigns use it",
545
+ gaqlTemplate: `SELECT bidding_strategy.id, bidding_strategy.name, bidding_strategy.type, bidding_strategy.status, bidding_strategy.campaign_count FROM bidding_strategy WHERE bidding_strategy.status != 'REMOVED' ORDER BY bidding_strategy.name`,
546
+ defaultDateRange: "ALL_TIME",
547
+ defaultLimit: 200
548
+ },
549
+ {
550
+ name: "labels",
551
+ description: "Every label: id, name, colour and description",
552
+ gaqlTemplate: `SELECT label.id, label.name, label.status, label.text_label.background_color, label.text_label.description FROM label WHERE label.status != 'REMOVED' ORDER BY label.name`,
553
+ defaultDateRange: "ALL_TIME",
554
+ defaultLimit: 200
555
+ },
556
+ {
557
+ name: "merchant-center",
558
+ description: "Merchant Center accounts linked to this Google Ads account \u2014 the merchantId a Shopping or retail Performance Max campaign names",
559
+ gaqlTemplate: `SELECT product_link.resource_name, product_link.product_link_id, product_link.type, product_link.merchant_center.merchant_center_id FROM product_link WHERE product_link.type = 'MERCHANT_CENTER'`,
560
+ defaultDateRange: "ALL_TIME",
561
+ defaultLimit: 200
562
+ },
563
+ {
564
+ name: "campaign-criteria",
565
+ description: "Every campaign targeting criterion and exclusion \u2014 locations, languages, devices, ad schedules, radius, carriers, operating systems, placements, topics, demographics, content types, IP addresses, web pages, brand lists, audiences \u2014 with the resource name `campaign-criteria update|remove` takes",
566
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, campaign.advertising_channel_type, campaign_criterion.resource_name, campaign_criterion.type, campaign_criterion.negative, campaign_criterion.bid_modifier, campaign_criterion.location.geo_target_constant, campaign_criterion.language.language_constant, campaign_criterion.device.type, campaign_criterion.ad_schedule.day_of_week, campaign_criterion.ad_schedule.start_hour, campaign_criterion.ad_schedule.end_hour, campaign_criterion.proximity.radius, campaign_criterion.placement.url, campaign_criterion.mobile_application.app_id, campaign_criterion.youtube_channel.channel_id, campaign_criterion.youtube_video.video_id, campaign_criterion.topic.topic_constant, campaign_criterion.age_range.type, campaign_criterion.gender.type, campaign_criterion.income_range.type, campaign_criterion.parental_status.type, campaign_criterion.content_label.type, campaign_criterion.ip_block.ip_address, campaign_criterion.webpage.criterion_name, campaign_criterion.brand_list.shared_set, campaign_criterion.carrier.carrier_constant, campaign_criterion.operating_system_version.operating_system_version_constant, campaign_criterion.user_list.user_list, campaign_criterion.user_interest.user_interest_category FROM campaign_criterion WHERE campaign_criterion.type != 'KEYWORD' AND campaign_criterion.status != 'REMOVED' AND campaign.status != 'REMOVED' ORDER BY campaign.name`,
567
+ defaultDateRange: "ALL_TIME",
568
+ defaultLimit: 500
569
+ },
570
+ {
571
+ name: "ad-group-criteria",
572
+ description: "Every ad group targeting criterion and exclusion other than keywords \u2014 placements, apps, YouTube, topics, demographics, web pages, Demand Gen locations, languages and audience, audiences \u2014 with its bid adjustment, max CPC, status and the resource name `ad-group-criteria update|remove` takes",
573
+ gaqlTemplate: `SELECT campaign.id, campaign.name, campaign.status, campaign.advertising_channel_type, ad_group.id, ad_group.name, ad_group.status, ad_group_criterion.resource_name, ad_group_criterion.type, ad_group_criterion.negative, ad_group_criterion.status, ad_group_criterion.bid_modifier, ad_group_criterion.cpc_bid_micros, ad_group_criterion.placement.url, ad_group_criterion.mobile_application.app_id, ad_group_criterion.youtube_channel.channel_id, ad_group_criterion.youtube_video.video_id, ad_group_criterion.topic.topic_constant, ad_group_criterion.age_range.type, ad_group_criterion.gender.type, ad_group_criterion.parental_status.type, ad_group_criterion.income_range.type, ad_group_criterion.webpage.criterion_name, ad_group_criterion.location.geo_target_constant, ad_group_criterion.language.language_constant, ad_group_criterion.audience.audience, ad_group_criterion.brand_list.shared_set, ad_group_criterion.user_list.user_list, ad_group_criterion.user_interest.user_interest_category FROM ad_group_criterion WHERE ad_group_criterion.type NOT IN ('KEYWORD', 'LISTING_GROUP'){statusScope} ORDER BY campaign.name`,
574
+ defaultDateRange: "ALL_TIME",
575
+ defaultLimit: 500,
576
+ statusFields: ["campaign.status", "ad_group.status", "ad_group_criterion.status"]
577
+ },
578
+ {
579
+ name: "account-exclusions",
580
+ description: "Every account-wide exclusion \u2014 sites, apps, app categories, YouTube, content types, IP addresses, account negative keyword lists \u2014 with the resource name `account-exclusions remove` takes",
581
+ gaqlTemplate: `SELECT customer_negative_criterion.resource_name, customer_negative_criterion.type, customer_negative_criterion.placement.url, customer_negative_criterion.mobile_application.app_id, customer_negative_criterion.mobile_app_category.mobile_app_category_constant, customer_negative_criterion.youtube_channel.channel_id, customer_negative_criterion.youtube_video.video_id, customer_negative_criterion.content_label.type, customer_negative_criterion.ip_block.ip_address, customer_negative_criterion.negative_keyword_list.shared_set FROM customer_negative_criterion`,
582
+ defaultDateRange: "ALL_TIME",
583
+ defaultLimit: 500
584
+ },
585
+ {
586
+ name: "asset-group-signals",
587
+ description: "Every Performance Max asset group's signals \u2014 search themes and the combined audience \u2014 under its campaign and group, with the resource name `asset-group-signals remove` takes",
588
+ gaqlTemplate: `SELECT campaign.id, campaign.name, asset_group.id, asset_group.name, asset_group_signal.resource_name, asset_group_signal.search_theme.text, asset_group_signal.audience.audience, asset_group_signal.approval_status FROM asset_group_signal WHERE campaign.status != 'REMOVED' AND asset_group.status != 'REMOVED' ORDER BY campaign.name`,
589
+ defaultDateRange: "ALL_TIME",
590
+ defaultLimit: 500
591
+ },
592
+ {
593
+ name: "ad-group-bid-modifiers",
594
+ description: "Every ad group's own device bid adjustment, with the resource name `ad-group-bid-modifiers update|remove` takes",
595
+ gaqlTemplate: `SELECT campaign.id, campaign.name, ad_group.id, ad_group.name, ad_group_bid_modifier.resource_name, ad_group_bid_modifier.device.type, ad_group_bid_modifier.bid_modifier FROM ad_group_bid_modifier WHERE campaign.status != 'REMOVED' AND ad_group.status != 'REMOVED' ORDER BY campaign.name`,
596
+ defaultDateRange: "ALL_TIME",
597
+ defaultLimit: 500
598
+ }
599
+ ];
600
+ var PRESETS = [...CORE_PRESETS, ...REPORT_PRESETS, ...INVENTORY_PRESETS];
601
+ function isInventoryPreset(name) {
602
+ return INVENTORY_PRESETS.some((preset) => preset.name === name);
603
+ }
604
+ function getPreset(name) {
605
+ return PRESETS.find((p) => p.name === name);
606
+ }
607
+ function buildStatusScope(statusFields, includePaused) {
608
+ if (!statusFields || statusFields.length === 0) return "";
609
+ const predicate = includePaused ? "!= 'REMOVED'" : "= 'ENABLED'";
610
+ return statusFields.map((field) => ` AND ${field} ${predicate}`).join("");
611
+ }
612
+ function expandPreset(preset, params, now = /* @__PURE__ */ new Date()) {
613
+ const dateRange = params.dateRange ?? preset.defaultDateRange;
614
+ if (preset.gaqlTemplate.includes("{dateRange}") && !isValidDateRange(dateRange)) {
615
+ return { query: "", dateRangeError: dateRangeError(dateRange, now) };
616
+ }
617
+ const statusScope = buildStatusScope(preset.statusFields, params.includePaused ?? false);
618
+ const range = dateRange.trim();
619
+ const query = preset.gaqlTemplate.replace(/DURING\s+\{dateRange\}/g, BETWEEN_RE.test(range) ? range : `DURING ${range}`).replace(/\{dateRange\}/g, range).replace(/\{statusScope\}/g, statusScope).replace(/\{statusWhere\}/g, statusScope ? ` WHERE${statusScope.replace(/^ AND/, "")}` : "");
620
+ return { query: scopeToCampaigns(query, params.campaignIds) };
621
+ }
622
+ function scopeToCampaigns(query, campaignIds) {
623
+ if (!campaignIds?.length) return query;
624
+ const predicate = `campaign.id IN (${campaignIds.join(", ")})`;
625
+ if (query.includes(" WHERE ")) return query.replace(" WHERE ", ` WHERE ${predicate} AND `);
626
+ const tail = query.search(/ (ORDER BY|LIMIT|PARAMETERS) /);
627
+ return tail === -1 ? `${query} WHERE ${predicate}` : `${query.slice(0, tail)} WHERE ${predicate}${query.slice(tail)}`;
628
+ }
629
+
630
+ // src/commands/ads/google/list-fields.ts
631
+ var LIST_FIELDS = /* @__PURE__ */ new Set([
632
+ "ad.final_mobile_urls",
633
+ "ad.final_urls",
634
+ "ad_group.excluded_parent_asset_field_types",
635
+ "ad_group.excluded_parent_asset_set_types",
636
+ "ad_group.labels",
637
+ "ad_group.primary_status_reasons",
638
+ "ad_group_ad.ad.final_mobile_urls",
639
+ "ad_group_ad.ad.final_urls",
640
+ "ad_group_ad.labels",
641
+ "ad_group_ad.primary_status_reasons",
642
+ "ad_group_asset.primary_status_reasons",
643
+ "ad_group_criterion.disapproval_reasons",
644
+ "ad_group_criterion.final_mobile_urls",
645
+ "ad_group_criterion.final_urls",
646
+ "ad_group_criterion.labels",
647
+ "ad_group_criterion.primary_status_reasons",
648
+ "ad_group_criterion.topic.path",
649
+ "ad_group_criterion.webpage.sample.sample_urls",
650
+ "asset.dynamic_custom_asset.contextual_keywords",
651
+ "asset.dynamic_custom_asset.similar_ids",
652
+ "asset.dynamic_education_asset.contextual_keywords",
653
+ "asset.dynamic_education_asset.similar_program_ids",
654
+ "asset.dynamic_flights_asset.similar_destination_ids",
655
+ "asset.dynamic_hotels_and_rentals_asset.contextual_keywords",
656
+ "asset.dynamic_hotels_and_rentals_asset.similar_property_ids",
657
+ "asset.dynamic_jobs_asset.contextual_keywords",
658
+ "asset.dynamic_jobs_asset.similar_job_ids",
659
+ "asset.dynamic_local_asset.contextual_keywords",
660
+ "asset.dynamic_local_asset.similar_deal_ids",
661
+ "asset.dynamic_real_estate_asset.contextual_keywords",
662
+ "asset.dynamic_real_estate_asset.similar_listing_ids",
663
+ "asset.dynamic_travel_asset.contextual_keywords",
664
+ "asset.dynamic_travel_asset.similar_destination_ids",
665
+ "asset.final_mobile_urls",
666
+ "asset.final_urls",
667
+ "asset.page_feed_asset.labels",
668
+ "asset.structured_snippet_asset.values",
669
+ "asset_group.final_mobile_urls",
670
+ "asset_group.final_urls",
671
+ "asset_group.primary_status_reasons",
672
+ "asset_group_asset.primary_status_reasons",
673
+ "asset_group_signal.disapproval_reasons",
674
+ "asset_set.business_profile_location_group.dynamic_business_profile_location_group_filter.label_filters",
675
+ "asset_set.business_profile_location_group.dynamic_business_profile_location_group_filter.listing_id_filters",
676
+ "asset_set.location_set.business_profile_location_set.label_filters",
677
+ "asset_set.location_set.business_profile_location_set.listing_id_filters",
678
+ "bidding_data_exclusion.advertising_channel_types",
679
+ "bidding_data_exclusion.campaigns",
680
+ "bidding_data_exclusion.devices",
681
+ "bidding_seasonality_adjustment.advertising_channel_types",
682
+ "bidding_seasonality_adjustment.campaigns",
683
+ "bidding_seasonality_adjustment.devices",
684
+ "campaign.excluded_parent_asset_field_types",
685
+ "campaign.excluded_parent_asset_set_types",
686
+ "campaign.feed_types",
687
+ "campaign.labels",
688
+ "campaign.optimization_goal_setting.optimization_goal_types",
689
+ "campaign.primary_status_reasons",
690
+ "campaign.selective_optimization.conversion_actions",
691
+ "campaign.shopping_setting.advertising_partner_ids",
692
+ "campaign.text_guidelines.term_exclusions",
693
+ "campaign_asset.primary_status_reasons",
694
+ "campaign_criterion.location_group.geo_target_constants",
695
+ "campaign_criterion.topic.path",
696
+ "campaign_criterion.webpage.sample.sample_urls",
697
+ "conversion_value_rule.audience_condition.user_interests",
698
+ "conversion_value_rule.audience_condition.user_lists",
699
+ "conversion_value_rule.device_condition.device_types",
700
+ "conversion_value_rule.geo_location_condition.excluded_geo_target_constants",
701
+ "conversion_value_rule.geo_location_condition.geo_target_constants",
702
+ "conversion_value_rule_set.conversion_value_rules",
703
+ "conversion_value_rule_set.dimensions",
704
+ "custom_conversion_goal.conversion_actions",
705
+ "customer.pay_per_conversion_eligibility_failure_reasons",
706
+ "customer_asset.primary_status_reasons",
707
+ "customer_client.applied_labels",
708
+ "experiment_arm.campaigns",
709
+ "experiment_arm.in_design_campaigns",
710
+ "keyword_plan_campaign.language_constants",
711
+ "lift_measurement_config.campaigns",
712
+ "lift_measurement_config.conversion_actions",
713
+ "lift_measurement_config.single_measurement_question_set.competitor_choices",
714
+ "lift_measurement_config.single_measurement_question_set.question_measurements",
715
+ "local_services_employee.category_ids",
716
+ "local_services_employee.languages_spoken",
717
+ "metrics.interaction_event_types",
718
+ "recommendation.campaigns",
719
+ "shared_criterion.webpage.sample.sample_urls",
720
+ "shopping_product.target_countries",
721
+ "topic_constant.path",
722
+ "user_list.lookalike_user_list.country_codes",
723
+ "user_list.lookalike_user_list.seed_user_list_ids"
724
+ ]);
725
+ var LIST_FIELD_OPERATORS = "CONTAINS ALL, CONTAINS ANY, CONTAINS NONE";
726
+ function listFieldGuidance(field) {
727
+ return `${field} is a list field: it takes only ${LIST_FIELD_OPERATORS} \u2014 no comparison (=, !=, IN), pattern match or null test. To find rows that have it, drop that condition, keep ${field} in SELECT and filter the rows (rows without it omit the key); to match values, use ${field} CONTAINS ANY ('value')`;
728
+ }
729
+
730
+ // src/commands/ads/google/correction-table.ts
731
+ function buildCommand(query, ctx) {
732
+ return `baker ads google query "${query}" --customer-id ${ctx.customerId}`;
733
+ }
734
+ var NO_OR_EXPLANATION = "GAQL has no OR: WHERE conditions combine only with AND, and cannot be grouped in parentheses. For several values of one field use IN: field IN ('a', 'b'). For several patterns on one text field use REGEXP_MATCH: field REGEXP_MATCH '(?i).*(a|b).*'. For alternatives on different fields, run one query per condition and merge the rows.";
735
+ var KNOWN_FIELDS = /* @__PURE__ */ new Set([
736
+ ...PRESETS.flatMap((preset) => preset.gaqlTemplate.match(/\b[a-z_]+(?:\.[a-z0-9_]+)+/g) ?? []),
737
+ ...LIST_FIELDS
738
+ ]);
739
+ function sharedPrefixLength(a, b) {
740
+ let i = 0;
741
+ while (i < a.length && i < b.length && a[i] === b[i]) i++;
742
+ return i;
743
+ }
744
+ function similarKnownFields(field) {
745
+ const [resource = "", attribute = ""] = field.split(/\.(.*)/s);
746
+ const firstWord = attribute.split(/[_.]/)[0];
747
+ if (!firstWord) return [];
748
+ const stem = `${resource}.${firstWord}`;
749
+ return [...KNOWN_FIELDS].filter((known) => known !== field && known.startsWith(stem)).sort((a, b) => sharedPrefixLength(b, field) - sharedPrefixLength(a, field) || a.localeCompare(b)).slice(0, 3);
750
+ }
751
+ var MOVED_FIELDS = {
752
+ "campaign.conversion_goal_config.goal_config_level": "conversion_goal_campaign_config.goal_config_level"
753
+ };
754
+ function unknownFieldFix(field, ctx) {
755
+ const similar = similarKnownFields(field);
756
+ const gone = `${field} does not exist in this Google Ads API version (removed, renamed or misspelled).`;
757
+ const moved = MOVED_FIELDS[field];
758
+ if (moved) {
759
+ const resource = moved.split(".")[0];
760
+ return {
761
+ action: "retry_with_modified_query",
762
+ explanation: `${gone} It moved to ${moved}: select it FROM ${resource} (campaign fields such as campaign.name can be selected alongside).`
763
+ };
764
+ }
765
+ if (similar.length === 0) {
766
+ return {
767
+ action: "retry_with_modified_query",
768
+ explanation: `${gone} Drop it, or find its replacement in Google's field reference for that resource.`
769
+ };
770
+ }
771
+ const renamed = similar.filter((known) => known.startsWith(`${field}_`));
772
+ const [replacement] = renamed;
773
+ if (renamed.length === 1 && replacement) {
774
+ const corrected = ctx.originalQuery.replace(
775
+ new RegExp(`(?<![\\w.])${field.replace(/\./g, "\\.")}(?![\\w.])`, "g"),
776
+ replacement
777
+ );
778
+ return {
779
+ action: "retry_with_modified_query",
780
+ correctedCommand: buildCommand(corrected, ctx),
781
+ explanation: `${gone} Its current name is ${replacement} \u2014 swapped in.`
782
+ };
783
+ }
784
+ return {
785
+ action: "retry_with_modified_query",
786
+ explanation: `${gone} Fields with a similar name on this resource: ${similar.join(", ")}. Use the one you meant, or drop it.`
787
+ };
788
+ }
789
+ var CORRECTION_RULES = [
790
+ // 0. EXPECTED_REFERENCED_FIELD_IN_SELECT_CLAUSE — some resources (e.g. campaign_budget)
791
+ // require fields filtered in WHERE to also be selected. The error names the exact field,
792
+ // so add it to SELECT and retry. Kept first: field-specific rules below must not shadow
793
+ // this with an unrelated rewrite when the named field happens to match their pattern.
794
+ {
795
+ matchApiError: /must be present in SELECT clause:\s*'([\w.]+)'/i,
796
+ fix: (ctx) => {
797
+ const field = ctx.apiErrorMessage?.match(/must be present in SELECT clause:\s*'([\w.]+)'/i)?.[1];
798
+ if (!field) {
799
+ return {
800
+ action: "add_required_field",
801
+ explanation: "Add the field named in the error to the SELECT clause and retry"
802
+ };
803
+ }
804
+ const corrected = ctx.originalQuery.replace(/SELECT\s+/i, `SELECT ${field}, `);
805
+ return {
806
+ action: "add_required_field",
807
+ correctedCommand: buildCommand(corrected, ctx),
808
+ explanation: `${field} is used in WHERE but this resource requires it in SELECT too \u2014 added it`
809
+ };
810
+ }
811
+ },
812
+ // 0b. OPERATOR_FIELD_MISMATCH — the field refuses this operator, and Google names the
813
+ // ones it takes. Kept ahead of the field-specific rules for the same reason as rule 0.
814
+ // A repeated field (final_urls, labels, …) takes only CONTAINS ALL/ANY/NONE, so it has
815
+ // no null test at all: read it unfiltered and filter the rows instead.
816
+ {
817
+ matchApiError: /OPERATOR_FIELD_MISMATCH|is not a valid operator to use with/i,
818
+ fix: (ctx) => {
819
+ const message = ctx.apiErrorMessage ?? "";
820
+ const field = message.match(/valid operator to use with '([\w.]+)'/i)?.[1] ?? "this field";
821
+ const operator = message.match(/([A-Z=!<>][A-Z_ =!<>]*?) is not a valid operator/)?.[1]?.trim();
822
+ const valid = message.match(/Valid operators: (.+?)\.?(?:"|$)/i)?.[1]?.trim();
823
+ const refused = operator ? `${operator} cannot be used on ${field}` : `${field} does not take that operator`;
824
+ const allowed = valid ? `; its valid operators are ${valid}` : "";
825
+ const repeated = valid?.split(",").every((op) => /^CONTAINS (ALL|ANY|NONE)$/i.test(op.trim())) ?? false;
826
+ const guidance = repeated ? `. ${listFieldGuidance(field)}` : ". Rewrite that condition with one of them, or drop it and filter the rows";
827
+ return {
828
+ action: "change_operator",
829
+ explanation: `${refused}${allowed}${guidance}`
830
+ };
831
+ }
832
+ },
833
+ // 0c. An OR, or a parenthesised group, in WHERE. Google names the token it choked on
834
+ // ("unexpected input OR", "invalid field name '('"), never the reason, so without this the
835
+ // "invalid … field" wording fell through to the bare-resource rule below.
836
+ {
837
+ matchApiError: /unexpected input (?:OR|\()|invalid field name \\?'\(/i,
838
+ fix: () => ({ action: "retry_with_modified_query", explanation: NO_OR_EXPLANATION })
839
+ },
840
+ // 0d. An enum value this field does not have in this API version.
841
+ {
842
+ matchApiError: /BAD_ENUM_CONSTANT|Invalid enum value/i,
843
+ fix: (ctx) => {
844
+ const value = ctx.apiErrorMessage?.match(/Invalid enum value[^']*\\?'([\w]+)/i)?.[1];
845
+ return {
846
+ action: "retry_with_modified_query",
847
+ explanation: `${value ? `'${value}' is` : "A value in this query is"} not one of the values Google accepts for the field it filters, in this API version. Use one the field's reference lists, or drop that condition and filter the rows.`
848
+ };
849
+ }
850
+ },
851
+ // 1. bare keyword.text → ad_group_criterion.keyword.text (leaves <resource>.keyword.text untouched)
852
+ {
853
+ matchApiError: /keyword\.text/i,
854
+ fix: (ctx) => {
855
+ const corrected = ctx.originalQuery.replace(/(?<![\w.])keyword\.text\b/g, "ad_group_criterion.keyword.text");
856
+ return {
857
+ action: "retry_with_modified_query",
858
+ correctedCommand: buildCommand(corrected, ctx),
859
+ explanation: "Use ad_group_criterion.keyword.text \u2014 keywords are accessed through the criterion resource"
860
+ };
861
+ }
862
+ },
863
+ // 2. bare keyword.match_type → ad_group_criterion.keyword.match_type (leaves <resource>.keyword.match_type untouched)
864
+ {
865
+ matchApiError: /keyword\.match_type/i,
866
+ fix: (ctx) => {
867
+ const corrected = ctx.originalQuery.replace(
868
+ /(?<![\w.])keyword\.match_type\b/g,
869
+ "ad_group_criterion.keyword.match_type"
870
+ );
871
+ return {
872
+ action: "retry_with_modified_query",
873
+ correctedCommand: buildCommand(corrected, ctx),
874
+ explanation: "Use ad_group_criterion.keyword.match_type for keyword match type"
875
+ };
876
+ }
877
+ },
878
+ // 3. campaign_budget.* queried FROM campaign
879
+ {
880
+ matchApiError: /campaign_budget.*not.*valid.*campaign|cannot.*select.*campaign_budget/i,
881
+ fix: (ctx) => {
882
+ const corrected = ctx.originalQuery.replace(/FROM\s+campaign\b/i, "FROM campaign_budget");
883
+ return {
884
+ action: "use_different_resource",
885
+ correctedCommand: buildCommand(corrected, ctx),
886
+ explanation: "campaign_budget fields must be queried FROM campaign_budget, not FROM campaign"
887
+ };
888
+ }
889
+ },
890
+ // 6. Missing campaign.id in ad_group queries
891
+ {
892
+ matchApiError: /campaign\.id.*required|must.*include.*campaign\.id/i,
893
+ fix: (ctx) => {
894
+ const corrected = ctx.originalQuery.replace(/SELECT\s+/i, "SELECT campaign.id, ");
895
+ return {
896
+ action: "add_required_field",
897
+ correctedCommand: buildCommand(corrected, ctx),
898
+ explanation: "Ad group queries require campaign.id in SELECT for parent context"
899
+ };
900
+ }
901
+ },
902
+ // 6. Missing campaign.id in keyword_view queries
903
+ {
904
+ matchApiError: /campaign\.id.*required.*keyword/i,
905
+ fix: (ctx) => {
906
+ const corrected = ctx.originalQuery.replace(/SELECT\s+/i, "SELECT campaign.id, ");
907
+ return {
908
+ action: "add_required_field",
909
+ correctedCommand: buildCommand(corrected, ctx),
910
+ explanation: "Keyword view queries require campaign.id in SELECT"
911
+ };
912
+ }
913
+ },
914
+ // 7. shopping_performance_view.product_* → segments.product_*
915
+ {
916
+ matchApiError: /shopping_performance_view\.product/i,
917
+ fix: (ctx) => {
918
+ const corrected = ctx.originalQuery.replace(/shopping_performance_view\.product_(\w+)/g, "segments.product_$1");
919
+ return {
920
+ action: "retry_with_modified_query",
921
+ correctedCommand: buildCommand(corrected, ctx),
922
+ explanation: "Product fields are segments (segments.product_*), not fields on shopping_performance_view"
923
+ };
924
+ }
925
+ },
926
+ // 8. Open-ended date range
927
+ {
928
+ matchApiError: /date.*range.*must.*finite|open.*ended/i,
929
+ fix: (ctx) => {
930
+ const match = ctx.originalQuery.match(/segments\.date\s*>=\s*'(\d{4}-\d{2}-\d{2})'/i);
931
+ const startDate = match?.[1] ?? "2024-01-01";
932
+ const today = (/* @__PURE__ */ new Date()).toISOString().slice(0, 10);
933
+ const corrected = ctx.originalQuery.replace(
934
+ /segments\.date\s*>=\s*'(\d{4}-\d{2}-\d{2})'/i,
935
+ `segments.date BETWEEN '${startDate}' AND '${today}'`
936
+ );
937
+ return {
938
+ action: "narrow_date_range",
939
+ correctedCommand: buildCommand(corrected, ctx),
940
+ explanation: "Use BETWEEN with explicit end date \u2014 open-ended ranges are not supported"
941
+ };
942
+ }
943
+ },
944
+ // 10a. Customer not found (wrong customer ID)
945
+ {
946
+ matchApiError: /CUSTOMER_NOT_FOUND|not.*found.*customer/i,
947
+ fix: () => ({
948
+ action: "reject",
949
+ explanation: "Customer ID not found. Run 'baker ads google accounts' to list valid customer IDs, then retry with a valid --customer-id."
950
+ })
951
+ },
952
+ // 10b. Not accessible / login-customer-id required
953
+ {
954
+ matchApiError: /not.*accessible|login.customer.id/i,
955
+ fix: (ctx) => ({
956
+ action: "reject",
957
+ correctedCommand: buildCommand(ctx.originalQuery, ctx),
958
+ explanation: "Account not accessible \u2014 may need a manager (MCC) login-customer-id. Run 'baker ads google accounts' to refresh the accounts cache, then retry."
959
+ })
960
+ },
961
+ // 12. Incompatible fields
962
+ {
963
+ matchApiError: /incompatible|mutually.*exclusive|cannot.*select.*together/i,
964
+ fix: () => ({
965
+ action: "split_query",
966
+ explanation: "These fields cannot be in the same query \u2014 split into separate queries and join client-side"
967
+ })
968
+ },
969
+ // 15. ad.final_urls → ad_group_ad.ad.final_urls
970
+ {
971
+ matchApiError: /ad\.final_urls/i,
972
+ fix: (ctx) => {
973
+ const corrected = ctx.originalQuery.replace(/\bad\.final_urls\b/g, "ad_group_ad.ad.final_urls");
974
+ return {
975
+ action: "retry_with_modified_query",
976
+ correctedCommand: buildCommand(corrected, ctx),
977
+ explanation: "Use the full path: ad_group_ad.ad.final_urls"
978
+ };
979
+ }
980
+ },
981
+ // 15b. asset.<type>_asset.final_urls → asset.final_urls (final URLs live on the asset
982
+ // itself; the typed sub-message only carries type-specific fields like link_text)
983
+ {
984
+ matchApiError: /asset\.\w+_asset\.final_(mobile_)?urls/i,
985
+ fix: (ctx) => {
986
+ const corrected = ctx.originalQuery.replace(/asset\.\w+_asset\.final_(mobile_)?urls\b/g, "asset.final_$1urls");
987
+ return {
988
+ action: "retry_with_modified_query",
989
+ correctedCommand: buildCommand(corrected, ctx),
990
+ explanation: "Final URLs are on the asset itself \u2014 use asset.final_urls, not asset.<type>_asset.final_urls"
991
+ };
992
+ }
993
+ },
994
+ // 16. Rate limit / quota
995
+ {
996
+ matchApiError: /RESOURCE_EXHAUSTED|quota.*exceeded|rate.*limit/i,
997
+ fix: () => ({
998
+ action: "wait_and_retry",
999
+ explanation: "API quota exceeded \u2014 wait 30 seconds before retrying"
1000
+ })
1001
+ },
1002
+ // 17. WHERE on metrics
1003
+ {
1004
+ matchApiError: /cannot.*filter.*metric|WHERE.*metrics|prohibited.*where/i,
1005
+ fix: () => ({
1006
+ action: "reject",
1007
+ explanation: "Cannot filter on metrics in WHERE clause \u2014 remove the metrics filter and filter results client-side"
1008
+ })
1009
+ },
1010
+ // 18. ORDER BY field not in SELECT
1011
+ {
1012
+ matchApiError: /order.*by.*field.*not.*selected|must.*select.*field.*order/i,
1013
+ fix: (ctx) => {
1014
+ const orderMatch = ctx.originalQuery.match(/ORDER\s+BY\s+([\w.]+)/i);
1015
+ const field = orderMatch?.[1] ?? "field";
1016
+ const corrected = ctx.originalQuery.replace(/SELECT\s+/i, `SELECT ${field}, `);
1017
+ return {
1018
+ action: "add_required_field",
1019
+ correctedCommand: buildCommand(corrected, ctx),
1020
+ explanation: `Add ${field} to SELECT \u2014 ORDER BY fields must be selected`
1021
+ };
1022
+ }
1023
+ },
1024
+ // The change-history rules must stay ahead of rule 19: its `status.*filter`
1025
+ // pattern also matches Google's change_status errors ("the change_status request
1026
+ // is missing filters on ..."), and the first matching rule wins.
1027
+ // 18a. change_event past its 30-day reach → change_status, which reaches 90 days.
1028
+ // These three rules match on the error code only, never on the resource in the query:
1029
+ // keyed on the query, they would answer every unrelated failure on a history query with
1030
+ // "switch resources", which is never the real fix. The backend forwards the
1031
+ // code as JSON (`"changeEventError":"START_DATE_TOO_OLD"`), so match that shape as well
1032
+ // as the dotted enum spelling.
1033
+ {
1034
+ matchApiError: /changeEventError\W{0,4}START_DATE_TOO_OLD/i,
1035
+ fix: (ctx) => {
1036
+ const limit = ctx.originalQuery.match(/LIMIT\s+(\d+)/i)?.[1] ?? "50";
1037
+ const requested = ctx.originalQuery.match(/change_date_time\s*>=\s*'([^']+)'/i)?.[1]?.slice(0, 10);
1038
+ const oldestStart = new Date(Date.now() - 89 * 24 * 60 * 60 * 1e3).toISOString().slice(0, 10);
1039
+ const start = requested && requested > oldestStart ? requested : oldestStart;
1040
+ const corrected = `SELECT change_status.last_change_date_time, change_status.resource_type, change_status.resource_status, change_status.resource_name, change_status.campaign, change_status.ad_group FROM change_status WHERE change_status.last_change_date_time >= '${start}' ORDER BY change_status.last_change_date_time DESC LIMIT ${limit}`;
1041
+ return {
1042
+ action: "use_different_resource",
1043
+ correctedCommand: buildCommand(corrected, ctx),
1044
+ explanation: `change_event only reaches back 30 days. change_status reaches 90 (from ${start}) but reports only which resources changed and whether they were added, changed or removed \u2014 no old/new values and no user email. Read a changed resource by its resource_name to see its current values.`
1045
+ };
1046
+ }
1047
+ },
1048
+ // 18b. Past 90 days no history resource reaches — infer the change from spend instead.
1049
+ {
1050
+ matchApiError: /changeStatusError\W{0,4}START_DATE_TOO_OLD/i,
1051
+ fix: () => ({
1052
+ action: "use_different_resource",
1053
+ explanation: `Google's account history reaches back 90 days at most, and this query asks for more. Do not abort \u2014 infer the change from performance: ${monthlySpendTrendQuery()} shows which campaigns started or stopped spending and when, though not who changed them. Anything older with attribution exists only in the Google Ads web UI, which has no API.`
1054
+ })
1055
+ },
1056
+ // 18c. change_status rejects a date range it cannot bound. Google raises this both for
1057
+ // a half-open range and for no date filter at all, so supply whichever end is missing.
1058
+ {
1059
+ matchApiError: /CHANGE_DATE_RANGE_INFINITE/i,
1060
+ fix: (ctx) => {
1061
+ const today = (/* @__PURE__ */ new Date()).toISOString().slice(0, 10);
1062
+ const oldestStart = new Date(Date.now() - 89 * 24 * 60 * 60 * 1e3).toISOString().slice(0, 10);
1063
+ const hasLowerBound = /last_change_date_time\s*>=?/i.test(ctx.originalQuery);
1064
+ const hasUpperBound = /last_change_date_time\s*<=?/i.test(ctx.originalQuery);
1065
+ const bounds = [
1066
+ ...hasLowerBound ? [] : [`change_status.last_change_date_time >= '${oldestStart}'`],
1067
+ ...hasUpperBound ? [] : [`change_status.last_change_date_time <= '${today}'`]
1068
+ ];
1069
+ const hasWhere = /\bWHERE\b/i.test(ctx.originalQuery);
1070
+ const clause = hasWhere ? ` AND ${bounds.join(" AND ")}` : ` WHERE ${bounds.join(" AND ")}`;
1071
+ const corrected = /\s+(ORDER\s+BY|LIMIT)\b/i.test(ctx.originalQuery) ? ctx.originalQuery.replace(/(\s+)(ORDER\s+BY|LIMIT)\b/i, `${clause}$1$2`) : ctx.originalQuery.trimEnd() + clause;
1072
+ return {
1073
+ action: "add_required_field",
1074
+ correctedCommand: buildCommand(corrected, ctx),
1075
+ explanation: "change_status needs a date range bounded at both ends \u2014 added the missing bound(s) on last_change_date_time."
1076
+ };
1077
+ }
1078
+ },
1079
+ // 19. Results include REMOVED entities
1080
+ {
1081
+ matchApiError: /REMOVED.*entities|status.*filter/i,
1082
+ fix: (ctx) => {
1083
+ const resourceMatch = ctx.originalQuery.match(/FROM\s+(\w+)/i);
1084
+ const resource = resourceMatch?.[1] ?? "campaign";
1085
+ const hasWhere = /WHERE/i.test(ctx.originalQuery);
1086
+ const suffix = hasWhere ? ` AND ${resource}.status != 'REMOVED'` : ` WHERE ${resource}.status != 'REMOVED'`;
1087
+ const limitMatch = ctx.originalQuery.match(/(\s+LIMIT\s+\d+)/i);
1088
+ let corrected;
1089
+ if (limitMatch) {
1090
+ corrected = ctx.originalQuery.replace(/(\s+LIMIT\s+\d+)/i, `${suffix}$1`);
1091
+ } else {
1092
+ corrected = ctx.originalQuery.trimEnd() + suffix;
1093
+ }
1094
+ return {
1095
+ action: "retry_with_modified_query",
1096
+ correctedCommand: buildCommand(corrected, ctx),
1097
+ explanation: `Add status filter to exclude REMOVED ${resource}s`
1098
+ };
1099
+ }
1100
+ },
1101
+ // 20. change_event without date constraint
1102
+ {
1103
+ matchApiError: /change_event.*date|date.*required.*change/i,
1104
+ fix: (ctx) => {
1105
+ const sevenDaysAgo = new Date(Date.now() - 7 * 24 * 60 * 60 * 1e3).toISOString().slice(0, 10);
1106
+ const hasWhere = /WHERE/i.test(ctx.originalQuery);
1107
+ const suffix = hasWhere ? ` AND change_event.change_date_time >= '${sevenDaysAgo}'` : ` WHERE change_event.change_date_time >= '${sevenDaysAgo}'`;
1108
+ const corrected = ctx.originalQuery.trimEnd() + suffix;
1109
+ return {
1110
+ action: "add_required_field",
1111
+ correctedCommand: buildCommand(corrected, ctx),
1112
+ explanation: "change_event queries require a date constraint on change_date_time"
1113
+ };
1114
+ }
1115
+ },
1116
+ // 22. segments.click_type incompatibility
1117
+ {
1118
+ matchApiError: /click_type.*incompatible|cannot.*click_type/i,
1119
+ fix: (ctx) => {
1120
+ const corrected = ctx.originalQuery.replace(/,?\s*segments\.click_type/g, "");
1121
+ return {
1122
+ action: "split_query",
1123
+ correctedCommand: buildCommand(corrected, ctx),
1124
+ explanation: "segments.click_type is incompatible with other segments \u2014 remove it or query separately"
1125
+ };
1126
+ }
1127
+ },
1128
+ // 22b. A field this API version does not have (removed, renamed, or misspelled). The rules above
1129
+ // rewrite the known renames; anything left is named back so the agent drops or replaces it —
1130
+ // without this, "invalid argument … field" fell through to the bare-resource rule below.
1131
+ {
1132
+ matchApiError: /UNRECOGNIZED_FIELD|Unrecognized field in the query/i,
1133
+ fix: (ctx) => {
1134
+ const field = ctx.apiErrorMessage?.match(/Unrecognized field in the query:\s*\\?'([\w.]+)/i)?.[1];
1135
+ return field ? unknownFieldFix(field, ctx) : {
1136
+ action: "retry_with_modified_query",
1137
+ explanation: "A field in this query does not exist in this Google Ads API version. Drop it, or find its replacement in Google's field reference."
1138
+ };
1139
+ }
1140
+ },
1141
+ // 22c. A field that exists but cannot be SELECTed (only filtered on, or read through another resource).
1142
+ {
1143
+ matchApiError: /PROHIBITED_FIELD_IN_SELECT_CLAUSE|may not be used in SELECT clause/i,
1144
+ fix: (ctx) => {
1145
+ const field = ctx.apiErrorMessage?.match(/may not be used in SELECT clause:\s*\\?'([\w.]+)/i)?.[1];
1146
+ return {
1147
+ action: "retry_with_modified_query",
1148
+ explanation: `${field ?? "A field in this query"} cannot be selected \u2014 Google allows it only in WHERE, or not at all on this resource. Drop it from SELECT.`
1149
+ };
1150
+ }
1151
+ },
1152
+ // 23. Bare resource in SELECT
1153
+ {
1154
+ matchApiError: /cannot.*select.*bare.*resource|invalid.*field/i,
1155
+ fix: () => ({
1156
+ action: "retry_with_modified_query",
1157
+ explanation: "Cannot SELECT a bare resource name \u2014 use resource.id, resource.name, or resource.resource_name"
1158
+ })
1159
+ },
1160
+ // 24. Authentication error
1161
+ {
1162
+ matchApiError: /unauthenticated|authentication.*required|invalid.*credentials/i,
1163
+ fix: () => ({
1164
+ action: "authenticate",
1165
+ explanation: "Google Ads authentication failed \u2014 reconnect Google Ads in dashboard settings"
1166
+ })
1167
+ },
1168
+ // 25. Timeout / deadline exceeded
1169
+ {
1170
+ matchApiError: /timeout|deadline.*exceeded|DEADLINE_EXCEEDED/i,
1171
+ fix: (ctx) => ({
1172
+ action: "retry_with_modified_query",
1173
+ correctedCommand: buildCommand(ctx.originalQuery, ctx),
1174
+ explanation: "Query timed out \u2014 narrow the date range, add more WHERE filters, or reduce LIMIT"
1175
+ })
1176
+ }
1177
+ ];
1178
+
1179
+ // src/commands/ads/google/error-parser.ts
1180
+ function mapErrorCode(message) {
1181
+ if (/must be present in SELECT clause/i.test(message)) return "MISSING_SELECT_FIELD";
1182
+ if (/unexpected input (?:OR|\()|invalid field name \\?'\(/i.test(message)) return "INVALID_SYNTAX";
1183
+ if (/BAD_ENUM_CONSTANT|Invalid enum value/i.test(message)) return "INVALID_ENUM_VALUE";
1184
+ if (/field.*not.*found|unrecognized.*field|not.*valid.*field/i.test(message)) return "FIELD_NOT_FOUND";
1185
+ if (/not.*valid.*resource|cannot.*select.*from/i.test(message)) return "WRONG_RESOURCE";
1186
+ if (/operator|CONTAINS|LIKE/i.test(message)) return "INVALID_OPERATOR";
1187
+ if (/CUSTOMER_NOT_FOUND/i.test(message)) return "CUSTOMER_NOT_FOUND";
1188
+ if (/login.customer.id|not.*accessible/i.test(message)) return "MISSING_MANAGER_ID";
1189
+ if (/incompatible|mutually.*exclusive|PROHIBITED_SEGMENT_WITH_METRIC/i.test(message)) return "INCOMPATIBLE_FIELDS";
1190
+ if (/unauthenticated|authentication/i.test(message)) return "AUTH_ERROR";
1191
+ if (/permission/i.test(message)) return "PERMISSION_DENIED";
1192
+ if (/RESOURCE_EXHAUSTED|quota|rate.*limit/i.test(message)) return "QUOTA_EXCEEDED";
1193
+ if (/timeout|DEADLINE_EXCEEDED/i.test(message)) return "TIMEOUT";
1194
+ return "API_ERROR";
1195
+ }
1196
+ function isRetryable(code) {
1197
+ return code === "QUOTA_EXCEEDED" || code === "TIMEOUT";
1198
+ }
1199
+ function getRetryDelay(code) {
1200
+ if (code === "QUOTA_EXCEEDED") return 3e4;
1201
+ if (code === "TIMEOUT") return 5e3;
1202
+ return void 0;
1203
+ }
1204
+ var QUERY_NARROWING = " If it fails again, ask for less in one call \u2014 a shorter date range, or a lower --limit instead of --all.";
1205
+ function serverFailure(apiCode, message, narrowing = "") {
1206
+ if (apiCode !== "INTERNAL_ERROR" && apiCode !== "UNAVAILABLE") return null;
1207
+ return {
1208
+ ok: false,
1209
+ error: {
1210
+ code: apiCode,
1211
+ message,
1212
+ fix: {
1213
+ action: "wait_and_retry",
1214
+ explanation: `Google Ads or Baker failed on its own side; nothing in the request was refused. Retry it once as it is.${narrowing}`
1215
+ },
1216
+ retryable: true,
1217
+ retryAfterMs: 5e3
1218
+ }
1219
+ };
1220
+ }
1221
+ function rateLimited(message) {
1222
+ return {
1223
+ ok: false,
1224
+ error: {
1225
+ code: "RATE_LIMITED",
1226
+ message,
1227
+ fix: {
1228
+ action: "wait_and_retry",
1229
+ explanation: "Google Ads is limiting how often Baker can ask for this account; nothing in the request was refused. Wait as the message says, then retry it as it is."
1230
+ },
1231
+ retryable: true,
1232
+ retryAfterMs: 6e4
1233
+ }
1234
+ };
1235
+ }
1236
+ function parseApiError(errorMessage, originalQuery, customerId, apiCode) {
1237
+ const ctx = {
1238
+ originalQuery,
1239
+ customerId,
1240
+ apiErrorMessage: errorMessage
1241
+ };
1242
+ if (apiCode && isNotConnectedError(apiCode, errorMessage)) {
1243
+ return {
1244
+ ok: false,
1245
+ error: {
1246
+ code: "NO_GOOGLE_ADS_CONNECTION",
1247
+ message: errorMessage,
1248
+ fix: { action: "request_connection", explanation: connectionFixExplanation("google_ads") },
1249
+ retryable: false
1250
+ }
1251
+ };
1252
+ }
1253
+ const failure = serverFailure(apiCode, errorMessage, originalQuery ? QUERY_NARROWING : "");
1254
+ if (failure) return failure;
1255
+ if (apiCode === "RATE_LIMITED") return rateLimited(errorMessage);
1256
+ if (apiCode === "CONFLICT") {
1257
+ return {
1258
+ ok: false,
1259
+ error: {
1260
+ code: "CONFLICT",
1261
+ message: errorMessage,
1262
+ fix: {
1263
+ action: "retry_with_modified_query",
1264
+ explanation: "The rows moved between two pages. Read again from the first page (no --cursor), with a unique field last in the ORDER BY (e.g. ORDER BY metrics.cost_micros DESC, campaign.id) so pages stay stable."
1265
+ },
1266
+ retryable: true
1267
+ }
1268
+ };
1269
+ }
1270
+ for (const rule of CORRECTION_RULES) {
1271
+ if (rule.matchApiError.test(errorMessage)) {
1272
+ const fix = rule.fix(ctx);
1273
+ const code2 = mapErrorCode(errorMessage);
1274
+ return {
1275
+ ok: false,
1276
+ error: {
1277
+ code: code2,
1278
+ message: errorMessage,
1279
+ fix,
1280
+ retryable: isRetryable(code2),
1281
+ retryAfterMs: getRetryDelay(code2)
1282
+ }
1283
+ };
1284
+ }
1285
+ }
1286
+ const mapped = mapErrorCode(errorMessage);
1287
+ const code = mapped === "API_ERROR" && apiCode ? apiCode : mapped;
1288
+ return {
1289
+ ok: false,
1290
+ error: {
1291
+ code,
1292
+ message: errorMessage,
1293
+ fix: {
1294
+ action: "reject",
1295
+ explanation: "Baker has no specific fix for this error. The message says what was refused: change that, and do not retry the same request unchanged."
1296
+ },
1297
+ retryable: isRetryable(code),
1298
+ retryAfterMs: getRetryDelay(code)
1299
+ }
1300
+ };
1301
+ }
1302
+
1303
+ export {
1304
+ isDuringLiteral,
1305
+ equivalentBetween,
1306
+ duringLiteralExplanation,
1307
+ resolveChangesWindow,
1308
+ cappedChangesHint,
1309
+ LIST_FIELDS,
1310
+ listFieldGuidance,
1311
+ SERVING_CHAINS,
1312
+ PRESETS,
1313
+ isInventoryPreset,
1314
+ getPreset,
1315
+ expandPreset,
1316
+ NO_OR_EXPLANATION,
1317
+ serverFailure,
1318
+ parseApiError
1319
+ };
1320
+ //# sourceMappingURL=chunk-TEQEZAJI.js.map