@koda-sl/baker-cli 0.498.0 → 0.500.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 (1498) hide show
  1. package/README.md +242 -6
  2. package/dist/account-PYK5VMQ4.js +80 -0
  3. package/dist/account-YSMZB5ZC.js +80 -0
  4. package/dist/account-ZY655BIU.js +139 -0
  5. package/dist/account-assets-GAKJQB6R.js +290 -0
  6. package/dist/account-level-CAVVN4ZN.js +609 -0
  7. package/dist/account-reads-2U5OGO72.js +219 -0
  8. package/dist/account-users-XFNFGZB7.js +62 -0
  9. package/dist/account-writes-4MAKFM7L.js +66 -0
  10. package/dist/accounts-FT2SRKMD.js +76 -0
  11. package/dist/accounts-K5XLEO6W.js +114 -0
  12. package/dist/accounts-SNB65ZEW.js +115 -0
  13. package/dist/accounts-ZKY6KPU3.js +78 -0
  14. package/dist/accounts-ZYOQSFX5.js +699 -0
  15. package/dist/accounts-ZYOQSFX5.js.map +1 -0
  16. package/dist/actions-PF62UVHS.js +55 -0
  17. package/dist/active-entities-3BAPHE4P.js +103 -0
  18. package/dist/activecampaign-Q7LLZSZ4.js +936 -0
  19. package/dist/activities-CTGCJHLC.js +75 -0
  20. package/dist/ad-group-writes-XZ7XSJ3C.js +170 -0
  21. package/dist/ad-groups-HI5YNTX3.js +68 -0
  22. package/dist/ad-writes-E2C4BKWT.js +174 -0
  23. package/dist/add-3GL76LTP.js +105 -0
  24. package/dist/add-6TDY6LPL.js +148 -0
  25. package/dist/add-CGHX6D4N.js +97 -0
  26. package/dist/add-EVFOCMOM.js +81 -0
  27. package/dist/add-GDEQN43J.js +303 -0
  28. package/dist/add-RNU2PVXW.js +80 -0
  29. package/dist/add-accounts-76WYQJC6.js +91 -0
  30. package/dist/ads-46BH2TCU.js +128 -0
  31. package/dist/ads-HH5YTV4O.js +48 -0
  32. package/dist/ads-HH5YTV4O.js.map +1 -0
  33. package/dist/ads-VXF5STHG.js +77 -0
  34. package/dist/ads-WU4ITH6J.js +115 -0
  35. package/dist/adsets-MMPN2SKX.js +178 -0
  36. package/dist/advertisers-7TYBQMB5.js +125 -0
  37. package/dist/advertisers-B5L4LZW2.js +121 -0
  38. package/dist/analytics-BBX6CU3S.js +2138 -0
  39. package/dist/analytics-BBX6CU3S.js.map +1 -0
  40. package/dist/analytics-WLV24XJE.js +445 -0
  41. package/dist/analytics-WLV24XJE.js.map +1 -0
  42. package/dist/animate-2BMHZ4FM.js +480 -0
  43. package/dist/asset-writes-IE3HUPWM.js +48 -0
  44. package/dist/assign-BSV765I3.js +78 -0
  45. package/dist/audience-size-KJGSHN45.js +74 -0
  46. package/dist/audience-writes-VXQTCSHH.js +325 -0
  47. package/dist/audiences-34IQKOGS.js +85 -0
  48. package/dist/audiences-75WHI3A3.js +86 -0
  49. package/dist/audiences-SUW2NSXG.js +268 -0
  50. package/dist/audit-7ED6CUTQ.js +88 -0
  51. package/dist/audit-RKDWAPMX.js +152 -0
  52. package/dist/autocomplete-BNQXAPDX.js +112 -0
  53. package/dist/avatars-BRDNW4ZF.js +38 -0
  54. package/dist/bid-pricing-ARPPR45O.js +101 -0
  55. package/dist/brand-JJDZKJSM.js +22 -0
  56. package/dist/brief-FSVESR44.js +541 -0
  57. package/dist/businesses-MGP2YCEU.js +54 -0
  58. package/dist/campaign-groups-DRUQ5WBQ.js +97 -0
  59. package/dist/campaign-writes-JFT4OPL5.js +170 -0
  60. package/dist/campaign-writes-SDQ7IPHU.js +166 -0
  61. package/dist/campaigns-FM2V3RIE.js +111 -0
  62. package/dist/campaigns-UDPZIIPK.js +107 -0
  63. package/dist/campaigns-WHMJUFYV.js +128 -0
  64. package/dist/campaigns-XFNPYDO6.js +76 -0
  65. package/dist/canvas-ZRMKN442.js +46 -0
  66. package/dist/capabilities-HMT6ZBPH.js +145 -0
  67. package/dist/cards-A7GQVC7B.js +85 -0
  68. package/dist/catalog-TZLU5NWI.js +65 -0
  69. package/dist/catalogs-ORSZM5SY.js +779 -0
  70. package/dist/catalogs-WR3D6VEY.js +128 -0
  71. package/dist/changes-ONEEMEMT.js +135 -0
  72. package/dist/chatgpt-23X76OFD.js +47 -0
  73. package/dist/chats-77MJ5SIT.js +277 -0
  74. package/dist/check-TA3HM2QA.js +105 -0
  75. package/dist/chunk-2572627P.js +547 -0
  76. package/dist/chunk-34Z4YPXD.js +846 -0
  77. package/dist/chunk-3GAR4AZK.js +149 -0
  78. package/dist/chunk-3HFGJFRM.js +387 -0
  79. package/dist/chunk-3HFGJFRM.js.map +1 -0
  80. package/dist/chunk-3LFPQSSC.js +406 -0
  81. package/dist/chunk-3LFPQSSC.js.map +1 -0
  82. package/dist/chunk-3YJNSUNF.js +131 -0
  83. package/dist/chunk-42YFMKEU.js +191 -0
  84. package/dist/chunk-457XEP63.js +97 -0
  85. package/dist/chunk-4KZMKI67.js +42 -0
  86. package/dist/chunk-5KDFRTMY.js +89 -0
  87. package/dist/chunk-5MSRVAUZ.js +7112 -0
  88. package/dist/chunk-5MSRVAUZ.js.map +1 -0
  89. package/dist/chunk-5YQATOWK.js +66 -0
  90. package/dist/chunk-6IE7RGIC.js +363 -0
  91. package/dist/chunk-6KWEF6HF.js +8914 -0
  92. package/dist/chunk-6QBSUYQZ.js +197 -0
  93. package/dist/chunk-7HZSORAB.js +843 -0
  94. package/dist/chunk-7NF73SCB.js +106 -0
  95. package/dist/chunk-A3IQAONL.js +638 -0
  96. package/dist/chunk-AGBBTTKA.js +52 -0
  97. package/dist/chunk-AIOICB5Q.js +392 -0
  98. package/dist/chunk-ASRS37QE.js +710 -0
  99. package/dist/chunk-ASRS37QE.js.map +1 -0
  100. package/dist/chunk-AZH6H4TV.js +783 -0
  101. package/dist/chunk-AZH6H4TV.js.map +1 -0
  102. package/dist/chunk-B2POVFR2.js +175 -0
  103. package/dist/chunk-B537ISAP.js +76 -0
  104. package/dist/chunk-BBBWMD5R.js +274 -0
  105. package/dist/chunk-C4I5NCMG.js +224 -0
  106. package/dist/chunk-C4LZIBNP.js +191 -0
  107. package/dist/chunk-DI44SZVP.js +2952 -0
  108. package/dist/chunk-DI44SZVP.js.map +1 -0
  109. package/dist/chunk-DM3Q6F5F.js +26 -0
  110. package/dist/chunk-DQVI7GCX.js +69 -0
  111. package/dist/chunk-DX46OE4U.js +179 -0
  112. package/dist/chunk-E44NXCTL.js +84 -0
  113. package/dist/chunk-EBEZFAUH.js +24014 -0
  114. package/dist/chunk-EBEZFAUH.js.map +1 -0
  115. package/dist/chunk-EDWRTYEO.js +46 -0
  116. package/dist/chunk-EJGAJHLB.js +136 -0
  117. package/dist/chunk-ESQX7SRQ.js +74 -0
  118. package/dist/chunk-F4YQ5PVR.js +1518 -0
  119. package/dist/chunk-FFG2OYVV.js +64 -0
  120. package/dist/chunk-FIN4ZXGJ.js +70 -0
  121. package/dist/chunk-FIN4ZXGJ.js.map +1 -0
  122. package/dist/chunk-FOMFU2RX.js +1744 -0
  123. package/dist/chunk-FQWZIYFC.js +64 -0
  124. package/dist/chunk-FR6RFLFP.js +942 -0
  125. package/dist/chunk-G4HLEELG.js +111 -0
  126. package/dist/chunk-GCLKAQUS.js +287 -0
  127. package/dist/chunk-GNKICND2.js +604 -0
  128. package/dist/chunk-GSKZ3ZDO.js +98 -0
  129. package/dist/chunk-GTNNH3AI.js +23 -0
  130. package/dist/chunk-GU5MXV2Y.js +191 -0
  131. package/dist/chunk-HGUYC5K6.js +76 -0
  132. package/dist/chunk-HITRGZIS.js +57 -0
  133. package/dist/chunk-HMIROUFV.js +74 -0
  134. package/dist/chunk-HML3VQIW.js +225 -0
  135. package/dist/chunk-HNS5OURO.js +103 -0
  136. package/dist/chunk-I2C4IUDP.js +831 -0
  137. package/dist/chunk-I46D7YXI.js +207 -0
  138. package/dist/chunk-I46D7YXI.js.map +1 -0
  139. package/dist/chunk-JCRCI7Q3.js +139 -0
  140. package/dist/chunk-JCRGGVV5.js +910 -0
  141. package/dist/chunk-JDUPYPYB.js +676 -0
  142. package/dist/chunk-JRCYNIXC.js +39 -0
  143. package/dist/chunk-KJZPCLQE.js +166 -0
  144. package/dist/chunk-KMRXPNQA.js +297 -0
  145. package/dist/chunk-KXWEI3IX.js +106 -0
  146. package/dist/chunk-LGK7UWBN.js +476 -0
  147. package/dist/chunk-LGK7UWBN.js.map +1 -0
  148. package/dist/chunk-LIX4S3ZM.js +61 -0
  149. package/dist/chunk-LNNTHEL7.js +75 -0
  150. package/dist/chunk-LRV6M2WB.js +1919 -0
  151. package/dist/chunk-LU4HI4KI.js +215 -0
  152. package/dist/chunk-MKTLZCRJ.js +97 -0
  153. package/dist/chunk-MVD7QIXI.js +46 -0
  154. package/dist/chunk-N4CHIGLO.js +51 -0
  155. package/dist/chunk-N7KICNZD.js +142 -0
  156. package/dist/chunk-NNLVFRF6.js +66 -0
  157. package/dist/chunk-NT3NJVPZ.js +169 -0
  158. package/dist/chunk-NXWEQTHL.js +1628 -0
  159. package/dist/chunk-NXWEQTHL.js.map +1 -0
  160. package/dist/chunk-OG6IHSQF.js +125 -0
  161. package/dist/chunk-OLQSKCMO.js +225 -0
  162. package/dist/chunk-PFGRHBQY.js +122 -0
  163. package/dist/chunk-PONLPYD7.js +333 -0
  164. package/dist/chunk-PRVX32SQ.js +219 -0
  165. package/dist/chunk-PSGIHSNC.js +296 -0
  166. package/dist/chunk-PX3PUDK7.js +167 -0
  167. package/dist/chunk-Q7US4OOA.js +2285 -0
  168. package/dist/chunk-Q7US4OOA.js.map +1 -0
  169. package/dist/chunk-QPESDKZC.js +97 -0
  170. package/dist/chunk-QY4GBBOV.js +249 -0
  171. package/dist/chunk-RCJKABOS.js +74 -0
  172. package/dist/chunk-RESTDRYX.js +56 -0
  173. package/dist/chunk-SKXXSTNM.js +84 -0
  174. package/dist/chunk-SP6BZLM4.js +494 -0
  175. package/dist/chunk-SSJR3FZ5.js +19 -0
  176. package/dist/chunk-ST2777KW.js +156 -0
  177. package/dist/chunk-SWN6OHXG.js +148 -0
  178. package/dist/chunk-TESOYFMQ.js +319 -0
  179. package/dist/chunk-TESOYFMQ.js.map +1 -0
  180. package/dist/chunk-TGQAEHLA.js +170 -0
  181. package/dist/chunk-TT7RFKUE.js +544 -0
  182. package/dist/chunk-TWKZVPOA.js +50 -0
  183. package/dist/chunk-TWKZVPOA.js.map +1 -0
  184. package/dist/chunk-TX7CQTD4.js +5368 -0
  185. package/dist/chunk-UC5HG2UF.js +275 -0
  186. package/dist/chunk-UKSSNYLU.js +98 -0
  187. package/dist/chunk-UQWBJNQY.js +592 -0
  188. package/dist/chunk-UX45LDRM.js +63 -0
  189. package/dist/chunk-UX45LDRM.js.map +1 -0
  190. package/dist/chunk-VAHDJ5CK.js +344 -0
  191. package/dist/chunk-VM4IQ75N.js +163 -0
  192. package/dist/chunk-VM4IQ75N.js.map +1 -0
  193. package/dist/chunk-VOAWBGRQ.js +8954 -0
  194. package/dist/chunk-VRP677NO.js +455 -0
  195. package/dist/chunk-VU5Z2V4S.js +45 -0
  196. package/dist/chunk-WAEWKD75.js +479 -0
  197. package/dist/chunk-WHBFXR6F.js +25 -0
  198. package/dist/chunk-X64DJIZG.js +349 -0
  199. package/dist/chunk-X7VQFLHI.js +229 -0
  200. package/dist/chunk-X7VQFLHI.js.map +1 -0
  201. package/dist/chunk-XB63MQ6E.js +35 -0
  202. package/dist/chunk-XV5TBA5P.js +94 -0
  203. package/dist/chunk-XVFZDPEW.js +66 -0
  204. package/dist/chunk-XYBSTW3P.js +203 -0
  205. package/dist/chunk-XYBSTW3P.js.map +1 -0
  206. package/dist/chunk-YIN6QNZD.js +207 -0
  207. package/dist/chunk-YLDZFO3A.js +67 -0
  208. package/dist/chunk-YNYAT2TZ.js +285 -0
  209. package/dist/chunk-YSPCWJCO.js +58 -0
  210. package/dist/chunk-YZYDB77W.js +3868 -0
  211. package/dist/chunk-ZEGNIP3Y.js +188 -0
  212. package/dist/chunk-ZNH45NXP.js +91 -0
  213. package/dist/chunk-ZRP7Y2DM.js +320 -0
  214. package/dist/claim-CIUU5QEZ.js +198 -0
  215. package/dist/cli.js +63 -45
  216. package/dist/cli.js.map +1 -1
  217. package/dist/client-EYPNMTBH.js +19 -0
  218. package/dist/code-MSWCKVV6.js +76 -0
  219. package/dist/companies-VV5XD3BP.js +196 -0
  220. package/dist/company-EZH6ZPXD.js +306 -0
  221. package/dist/company-EZH6ZPXD.js.map +1 -0
  222. package/dist/complete-NKYCSYKX.js +82 -0
  223. package/dist/config-SMVIY6RW.js +88 -0
  224. package/dist/connect-TFH4AFFO.js +43 -0
  225. package/dist/content-XJMRCTWX.js +85 -0
  226. package/dist/conversation-S6CKSNYW.js +94 -0
  227. package/dist/conversion-report-V3TGPELD.js +125 -0
  228. package/dist/conversion-upload-command-K2SB6O6K.js +439 -0
  229. package/dist/conversion-writes-B2QOYL56.js +120 -0
  230. package/dist/conversions-ILF5HJOO.js +76 -0
  231. package/dist/conversions-KXYOUSBR.js +138 -0
  232. package/dist/copy-writes-OVCOZODC.js +168 -0
  233. package/dist/countries-BMEABV4N.js +82 -0
  234. package/dist/create-BZWX5KLI.js +60 -0
  235. package/dist/create-WEIGJ4BF.js +237 -0
  236. package/dist/create-XKGV6TEW.js +133 -0
  237. package/dist/create-Y44CPUE4.js +208 -0
  238. package/dist/creatives-P5MX2AZL.js +58 -0
  239. package/dist/creatives-RF3AG7HW.js +89 -0
  240. package/dist/creatives-WFDFLRQV.js +221 -0
  241. package/dist/credentials-5EOUA5VL.js +288 -0
  242. package/dist/critique-4ETQZBQG.js +1459 -0
  243. package/dist/critique-OYUMBZ4Y.js +230 -0
  244. package/dist/crm-6UU3GFQU.js +225 -0
  245. package/dist/crm-UGP57XSN.js +321 -0
  246. package/dist/crm-UGP57XSN.js.map +1 -0
  247. package/dist/crop-NBVWWXF2.js +113 -0
  248. package/dist/currency-UVQIYZUP.js +88 -0
  249. package/dist/custom-conversions-QFGIAISN.js +128 -0
  250. package/dist/customers-RT75T4ZB.js +57 -0
  251. package/dist/decide-4GWMV7VZ.js +199 -0
  252. package/dist/delete-37IIUYQU.js +67 -0
  253. package/dist/delete-E575BF73.js +55 -0
  254. package/dist/delete-EZHOZ2D2.js +71 -0
  255. package/dist/delete-GPTU4DJ5.js +71 -0
  256. package/dist/delete-GQYFBLMP.js +65 -0
  257. package/dist/delete-ULUQIENX.js +69 -0
  258. package/dist/demographics-3LIUI2SM.js +139 -0
  259. package/dist/describe-DUPBGFKA.js +97 -0
  260. package/dist/describe-YW32V6EW.js +97 -0
  261. package/dist/dimensions-M4LMNCBV.js +101 -0
  262. package/dist/discard-7OARQRS7.js +67 -0
  263. package/dist/discover-2TPMVIW7.js +172 -0
  264. package/dist/discover-PPSZ6BQI.js +93 -0
  265. package/dist/domain-ZRWUGUOO.js +99 -0
  266. package/dist/download-NNDBNAVZ.js +299 -0
  267. package/dist/draft-5XV2BJ3N.js +281 -0
  268. package/dist/draft-A2I4RLMW.js +308 -0
  269. package/dist/draft-CVSGNA4Z.js +308 -0
  270. package/dist/draft-DJIYEMZU.js +103 -0
  271. package/dist/draft-RIR2V6A2.js +238 -0
  272. package/dist/draft-SNBK2KY6.js +218 -0
  273. package/dist/draft-UHNTXGY7.js +333 -0
  274. package/dist/draft-ZCL7FVBH.js +100 -0
  275. package/dist/engine/index.js +13 -13
  276. package/dist/env-ABXQWHDO.js +53 -0
  277. package/dist/experiment-I5CRLOVN.js +1397 -0
  278. package/dist/experiments-IGMLMSLX.js +234 -0
  279. package/dist/export-T5WPU75G.js +168 -0
  280. package/dist/extract-55YRHNCV.js +113 -0
  281. package/dist/facets-AURXB76V.js +115 -0
  282. package/dist/favorites-B5L4RBBH.js +178 -0
  283. package/dist/feed-QJ2QHVJH.js +177 -0
  284. package/dist/feedback-UDTPDCMS.js +109 -0
  285. package/dist/feedback-record-Z34XJF6K.js +263 -0
  286. package/dist/fetch-53TIHU4X.js +139 -0
  287. package/dist/fetch-GR3FXFXL.js +177 -0
  288. package/dist/find-FHM5R2XW.js +134 -0
  289. package/dist/fit-SLEEJWVR.js +63 -0
  290. package/dist/flows-NAFSRRY2.js +248 -0
  291. package/dist/follow-CMCZVFHU.js +94 -0
  292. package/dist/follow-competitors-B4ITK7QT.js +112 -0
  293. package/dist/following-GUZRR5YB.js +113 -0
  294. package/dist/fonts-POBAXXBC.js +37 -0
  295. package/dist/forecast-CLQKEFI6.js +169 -0
  296. package/dist/forecast-RN6VUKLS.js +119 -0
  297. package/dist/funding-5W4LX6DU.js +85 -0
  298. package/dist/funnel-O3XOHYI3.js +395 -0
  299. package/dist/ga4-HTD6WC3P.js +55 -0
  300. package/dist/generate-NWHPM2GQ.js +263 -0
  301. package/dist/get-2MC5LYXY.js +80 -0
  302. package/dist/get-75MIX7TJ.js +92 -0
  303. package/dist/get-LSUOV5YD.js +63 -0
  304. package/dist/get-LYFN4SI7.js +38 -0
  305. package/dist/get-OB3UGRPN.js +63 -0
  306. package/dist/get-UOXXHYXJ.js +61 -0
  307. package/dist/get-UQ43T25B.js +57 -0
  308. package/dist/get-WJYHHRTS.js +59 -0
  309. package/dist/gif-2D6UXHP5.js +102 -0
  310. package/dist/google-AFV6DMTA.js +136 -0
  311. package/dist/google-ZZCSZR63.js +3267 -0
  312. package/dist/google-ZZCSZR63.js.map +1 -0
  313. package/dist/google-ads-7DJ5STPS.js +196 -0
  314. package/dist/group-JROMVKDU.js +43 -0
  315. package/dist/group-Z3U67VRY.js +43 -0
  316. package/dist/gsc-2MPE4N32.js +30 -0
  317. package/dist/history-IXV4ZR6F.js +67 -0
  318. package/dist/history-QRM76S4Q.js +134 -0
  319. package/dist/hubspot-HVZNR2IR.js +780 -0
  320. package/dist/icon-XO2EKLWL.js +137 -0
  321. package/dist/ideas-S2UXZSFB.js +43 -0
  322. package/dist/images-FYSBKRU6.js +92 -0
  323. package/dist/improve-S47VKH5Y.js +86 -0
  324. package/dist/ingest-37F3NOLA.js +24 -0
  325. package/dist/ingest-YQINQGG7.js +108 -0
  326. package/dist/insights-GISXHHOI.js +437 -0
  327. package/dist/insights-GISXHHOI.js.map +1 -0
  328. package/dist/insights-UKWLUS5P.js +130 -0
  329. package/dist/insights-UKWLUS5P.js.map +1 -0
  330. package/dist/inspect-RVU5RDCE.js +190 -0
  331. package/dist/inspiration-QJNUFRNH.js +53 -0
  332. package/dist/instant-experiences-Y53I7FT4.js +258 -0
  333. package/dist/intent-57BBLPLP.js +95 -0
  334. package/dist/job-DRFCQ27M.js +202 -0
  335. package/dist/job-create-2EC25Y3J.js +109 -0
  336. package/dist/job-status-UNVZRPIA.js +74 -0
  337. package/dist/keep-44JRYTBY.js +78 -0
  338. package/dist/keyword-gap-TSIQBZ6G.js +130 -0
  339. package/dist/keyword-metrics-7XZXPSQO.js +198 -0
  340. package/dist/keywords-for-site-A43QNTLD.js +129 -0
  341. package/dist/landing-NFDGD3PQ.js +28 -0
  342. package/dist/landings-FLELWQDN.js +151 -0
  343. package/dist/languages-J275RIZC.js +55 -0
  344. package/dist/languages-WKOFWZ7S.js +40 -0
  345. package/dist/launches-CGRWUGRB.js +19 -0
  346. package/dist/layerize-M5XLTCO4.js +190 -0
  347. package/dist/leads-GF24GM54.js +538 -0
  348. package/dist/leads-UHJS7VNH.js +113 -0
  349. package/dist/learn-POJ5ORBK.js +205 -0
  350. package/dist/library-OLXEGJ73.js +109 -0
  351. package/dist/lighthouse-QYCKJ6GT.js +75 -0
  352. package/dist/line-item-writes-K4BSUEIJ.js +209 -0
  353. package/dist/line-items-DLLEPPIN.js +103 -0
  354. package/dist/link-L2KC5EIZ.js +65 -0
  355. package/dist/linkedin-A4U6IGZX.js +1314 -0
  356. package/dist/linkedin-person-DSLAOKKN.js +137 -0
  357. package/dist/linkedin-person-DSLAOKKN.js.map +1 -0
  358. package/dist/list-3HOASRXD.js +57 -0
  359. package/dist/list-3M6LPVUB.js +65 -0
  360. package/dist/list-C3AQ4TMI.js +93 -0
  361. package/dist/list-JKB33W6K.js +304 -0
  362. package/dist/list-MMRU3ZLP.js +51 -0
  363. package/dist/list-PHWCEYCP.js +65 -0
  364. package/dist/list-R3TZDYXS.js +50 -0
  365. package/dist/list-WIYIF2CI.js +76 -0
  366. package/dist/list-Y4V276ND.js +152 -0
  367. package/dist/locations-EQKMPX4G.js +40 -0
  368. package/dist/locations-MID4EY6D.js +67 -0
  369. package/dist/log-O3I5JZCM.js +93 -0
  370. package/dist/logo-UJIVQZRI.js +18 -0
  371. package/dist/lookup-LWJMDEEL.js +22 -0
  372. package/dist/make-GLGNEOK6.js +1368 -0
  373. package/dist/map-D3EH7S2T.js +434 -0
  374. package/dist/mcp-R4ZTYQW7.js +715 -0
  375. package/dist/media-RTXIJEHY.js +18 -0
  376. package/dist/media-XCTZJIW4.js +89 -0
  377. package/dist/media-sources-TVGS34TE.js +35 -0
  378. package/dist/members-OBA4MXAQ.js +45 -0
  379. package/dist/meme-LVRZR7XL.js +100 -0
  380. package/dist/meta-AHI2HVBM.js +122 -0
  381. package/dist/metrics-35OGYZNY.js +152 -0
  382. package/dist/models-JQEPSPNQ.js +155 -0
  383. package/dist/normalize-BREMV3IB.js +806 -0
  384. package/dist/normalize-HU37AR7G.js +142 -0
  385. package/dist/options-HLMTCEDW.js +123 -0
  386. package/dist/organization-6ZVXU5JC.js +947 -0
  387. package/dist/output-WTEPRUPE.js +24 -0
  388. package/dist/page-QEJO3QT6.js +105 -0
  389. package/dist/page-photos-UUZRIJ4U.js +116 -0
  390. package/dist/pages-J6AF5NDU.js +67 -0
  391. package/dist/performance-PIB2AXKO.js +25 -0
  392. package/dist/performance-V5WZCJYT.js +5445 -0
  393. package/dist/performance-V5WZCJYT.js.map +1 -0
  394. package/dist/pinterest-PONS4KLN.js +96 -0
  395. package/dist/pixels-WHQLX4FV.js +60 -0
  396. package/dist/pixels-ZZTB6NWF.js +109 -0
  397. package/dist/plan-O2TTEUIW.js +207 -0
  398. package/dist/posts-QAMZRCRY.js +34 -0
  399. package/dist/preview-BM3NBH53.js +216 -0
  400. package/dist/profile-T5LAXXFY.js +159 -0
  401. package/dist/promoted-tweet-writes-E4EJZM76.js +181 -0
  402. package/dist/promoted-tweets-M44AIHSQ.js +119 -0
  403. package/dist/properties-RBLJCVSG.js +101 -0
  404. package/dist/publish-H7UGB5IP.js +342 -0
  405. package/dist/query-BJJYUGQZ.js +247 -0
  406. package/dist/query-KQ675KJZ.js +236 -0
  407. package/dist/query-ZH5CWI3X.js +62 -0
  408. package/dist/questionnaire-VE42SW77.js +93 -0
  409. package/dist/read-QME7JYVF.js +141 -0
  410. package/dist/reddit-KCPU4RW4.js +27 -0
  411. package/dist/refresh-E4JU2KR3.js +42 -0
  412. package/dist/refresh-WTSCSEQE.js +95 -0
  413. package/dist/release-SVOT7QVX.js +61 -0
  414. package/dist/relevant-pages-7KEKKRQ2.js +99 -0
  415. package/dist/remove-2ISYRP4H.js +49 -0
  416. package/dist/remove-TY3AF5K5.js +51 -0
  417. package/dist/reopen-WCUZMTYE.js +64 -0
  418. package/dist/rerun-FKYNFNSI.js +93 -0
  419. package/dist/research-N2RWKIRQ.js +72 -0
  420. package/dist/research-N2RWKIRQ.js.map +1 -0
  421. package/dist/research-X6ITCPFY.js +263 -0
  422. package/dist/reset-O77UZD6Z.js +55 -0
  423. package/dist/reset-TDAMB4BO.js +55 -0
  424. package/dist/resolve-NC4MLM42.js +122 -0
  425. package/dist/retry-QNXWTHOL.js +63 -0
  426. package/dist/retry-XVUWY7ZH.js +61 -0
  427. package/dist/retry-failed-P6KVU263.js +45 -0
  428. package/dist/revenue-D3B4DMBC.js +89 -0
  429. package/dist/rule-writes-5FFQKSOE.js +523 -0
  430. package/dist/rules-3FKLSJ5R.js +217 -0
  431. package/dist/rules-Y3BH7SO5.js +97 -0
  432. package/dist/rules-add-GSPFBNYU.js +463 -0
  433. package/dist/run-G6XAJOJ7.js +67 -0
  434. package/dist/run-ON72O5YS.js +68 -0
  435. package/dist/scaffold-ad-YF6FUEJZ.js +1514 -0
  436. package/dist/scaffold-static-ad-C2C6NC6Y.js +1008 -0
  437. package/dist/scaffold-video-BUOCGJNH.js +886 -0
  438. package/dist/schedule-7EQLO22N.js +62 -0
  439. package/dist/schedule-P6MVM7TK.js +67 -0
  440. package/dist/scheduled-agents-4WCPCMYC.js +50 -0
  441. package/dist/schema-6Y3IXFDC.js +69 -0
  442. package/dist/schema-KM5MFQUQ.js +133 -0
  443. package/dist/scrape-ZDBCLPGQ.js +2241 -0
  444. package/dist/screenshot-CREF7FB4.js +102 -0
  445. package/dist/search-3OMMKHJB.js +26 -0
  446. package/dist/search-7343MBTZ.js +92 -0
  447. package/dist/search-AHMNQDGC.js +224 -0
  448. package/dist/search-MPY2OGDM.js +51 -0
  449. package/dist/search-WI2L755B.js +91 -0
  450. package/dist/search-YEYQDDLA.js +175 -0
  451. package/dist/search-copy-EMS5PVMK.js +168 -0
  452. package/dist/seeds-JETCIUR3.js +101 -0
  453. package/dist/select-QSGZYOFV.js +104 -0
  454. package/dist/sends-OLVQGOAE.js +348 -0
  455. package/dist/sends-OLVQGOAE.js.map +1 -0
  456. package/dist/sequences-2P7UQRQT.js +146 -0
  457. package/dist/set-prompt-4OTBGPDQ.js +196 -0
  458. package/dist/setup-links-E2GARNTU.js +142 -0
  459. package/dist/shared-ZFULUOPQ.js +32 -0
  460. package/dist/shopify-GT6PJ77M.js +3956 -0
  461. package/dist/site-TMF2P7JR.js +178 -0
  462. package/dist/sitemaps-F3HYH5ZP.js +87 -0
  463. package/dist/sites-JSMF72BY.js +101 -0
  464. package/dist/skills-P6CA3YSS.js +47 -0
  465. package/dist/sources-47LE2UCO.js +455 -0
  466. package/dist/sources-H6XX2WBO.js +30 -0
  467. package/dist/stale-JTX5U752.js +74 -0
  468. package/dist/stats-LNEQJ42S.js +34 -0
  469. package/dist/status-3X3MECDY.js +63 -0
  470. package/dist/sticker-CJ6Y36AO.js +94 -0
  471. package/dist/stock-4AQFDZLE.js +179 -0
  472. package/dist/studies-ULLCWJSM.js +250 -0
  473. package/dist/studio-Z4AJRIGP.js +49 -0
  474. package/dist/study-writes-ZAASDTGZ.js +468 -0
  475. package/dist/suggest-UIO2RDOC.js +66 -0
  476. package/dist/sync-GSDC2OK2.js +55 -0
  477. package/dist/sync-HWTVXGOT.js +55 -0
  478. package/dist/sync-YOKQEZ46.js +279 -0
  479. package/dist/sync-YOKQEZ46.js.map +1 -0
  480. package/dist/sync-definition-CAPYMYIS.js +67 -0
  481. package/dist/tag-LFYVMDNK.js +57 -0
  482. package/dist/tag-manager-TU3FBSYO.js +43 -0
  483. package/dist/tags-75QCVBQB.js +26 -0
  484. package/dist/tags-7BT63PUE.js +21 -0
  485. package/dist/tags-7K5RSCHI.js +21 -0
  486. package/dist/tags-IELH7YAY.js +21 -0
  487. package/dist/tags-UPA4KKQZ.js +225 -0
  488. package/dist/targeting-TKV7XGRQ.js +760 -0
  489. package/dist/targeting-constants-QGZOSY4Q.js +118 -0
  490. package/dist/targeting-criteria-HJQ2FW6E.js +113 -0
  491. package/dist/targets-CBZ37ALP.js +104 -0
  492. package/dist/terms-O6ODXEOK.js +102 -0
  493. package/dist/testimonials-4W6HI2PQ.js +32 -0
  494. package/dist/themes-RDNVUJHG.js +95 -0
  495. package/dist/top-companies-CW77UVK3.js +109 -0
  496. package/dist/transcript-FA2TOVPP.js +163 -0
  497. package/dist/transcript-FA2TOVPP.js.map +1 -0
  498. package/dist/translate-7W7O6W3J.js +607 -0
  499. package/dist/triggers-MCP6IGTX.js +142 -0
  500. package/dist/triggers-MCP6IGTX.js.map +1 -0
  501. package/dist/tweets-IUINLOXF.js +123 -0
  502. package/dist/unfollow-Z7SCZDPM.js +46 -0
  503. package/dist/unlink-RK5V4QO2.js +68 -0
  504. package/dist/unstage-5JTGVEB7.js +86 -0
  505. package/dist/unstage-QFVL7AZ4.js +95 -0
  506. package/dist/update-5AAMF5JP.js +153 -0
  507. package/dist/update-G2KB3RIW.js +64 -0
  508. package/dist/update-LCE2QN53.js +99 -0
  509. package/dist/update-MCUXTMIZ.js +81 -0
  510. package/dist/update-U2ETZHVU.js +189 -0
  511. package/dist/upload-5237F4WV.js +150 -0
  512. package/dist/upload-ORFEAADP.js +127 -0
  513. package/dist/upscale-KLMXV6JG.js +109 -0
  514. package/dist/url-options-6U7QCTAY.js +130 -0
  515. package/dist/url-params-KQIUVVGX.js +99 -0
  516. package/dist/use-J3TZJZ4M.js +95 -0
  517. package/dist/validate-BF656HWM.js +120 -0
  518. package/dist/variant-NZL2ZMYM.js +338 -0
  519. package/dist/videos-66FB7BPY.js +39 -0
  520. package/dist/view-G66NM2IJ.js +121 -0
  521. package/dist/viewer-check-THBLTL2G.js +81 -0
  522. package/dist/web-2EKHRXCS.js +141 -0
  523. package/dist/winners-YKLNIUJH.js +113 -0
  524. package/dist/winning-ads-LW5SMMLB.js +86 -0
  525. package/dist/write-commands-5J47ZNO4.js +206 -0
  526. package/dist/write-commands-OTWH6BKZ.js +713 -0
  527. package/dist/write-commands-S7AX24WF.js +1170 -0
  528. package/dist/write-commands-Z556OHHH.js +1493 -0
  529. package/dist/x-F5CSO2RN.js +47 -0
  530. package/package.json +1 -1
  531. package/dist/account-263FLP5Y.js +0 -80
  532. package/dist/account-Q3BRNQUW.js +0 -139
  533. package/dist/account-Y2NNZBQU.js +0 -80
  534. package/dist/account-assets-FGXPTJAC.js +0 -290
  535. package/dist/account-level-HHFTDEEF.js +0 -609
  536. package/dist/account-reads-LJCF2BT6.js +0 -219
  537. package/dist/account-users-65TL5KL7.js +0 -62
  538. package/dist/account-writes-M274CK75.js +0 -66
  539. package/dist/accounts-4HPLJD7O.js +0 -115
  540. package/dist/accounts-FGBD6Y23.js +0 -76
  541. package/dist/accounts-OWLAMDJX.js +0 -114
  542. package/dist/accounts-ST32A4L4.js +0 -78
  543. package/dist/accounts-VVMBENKE.js +0 -612
  544. package/dist/accounts-VVMBENKE.js.map +0 -1
  545. package/dist/actions-EAMKQC4A.js +0 -55
  546. package/dist/active-entities-2TRODKWO.js +0 -103
  547. package/dist/activecampaign-XYEFFSZF.js +0 -936
  548. package/dist/activities-CRMTS5Y7.js +0 -75
  549. package/dist/ad-group-writes-M7S67GLQ.js +0 -170
  550. package/dist/ad-groups-BF4KNJFS.js +0 -68
  551. package/dist/ad-writes-FNWVH7SP.js +0 -174
  552. package/dist/add-2OOHZBKD.js +0 -80
  553. package/dist/add-5PK6LCD2.js +0 -81
  554. package/dist/add-EXF7UGIG.js +0 -148
  555. package/dist/add-IJA475VW.js +0 -105
  556. package/dist/add-UGMEJ5L3.js +0 -303
  557. package/dist/add-WZFXWMG7.js +0 -97
  558. package/dist/add-accounts-KQUUBIIG.js +0 -91
  559. package/dist/ads-3RBMFZMU.js +0 -115
  560. package/dist/ads-6GTQ2HS4.js +0 -43
  561. package/dist/ads-6GTQ2HS4.js.map +0 -1
  562. package/dist/ads-C6LVVX4F.js +0 -128
  563. package/dist/ads-TLJI5KCA.js +0 -77
  564. package/dist/adsets-2536GR4Q.js +0 -178
  565. package/dist/advertisers-OHTC7Q63.js +0 -125
  566. package/dist/advertisers-RBLLFCET.js +0 -121
  567. package/dist/analytics-QQ7PLUU3.js +0 -434
  568. package/dist/analytics-QQ7PLUU3.js.map +0 -1
  569. package/dist/analytics-UXUF6IVD.js +0 -1981
  570. package/dist/analytics-UXUF6IVD.js.map +0 -1
  571. package/dist/animate-G2PISVIA.js +0 -480
  572. package/dist/asset-writes-LW3KSG2B.js +0 -48
  573. package/dist/assign-UC6OK2R7.js +0 -78
  574. package/dist/audience-size-4S2ZWQ3G.js +0 -74
  575. package/dist/audience-writes-75HWK4IY.js +0 -325
  576. package/dist/audiences-2342U7XH.js +0 -85
  577. package/dist/audiences-EZO6PYRL.js +0 -268
  578. package/dist/audiences-OS4U3J6Y.js +0 -86
  579. package/dist/audit-KQ7GVWMO.js +0 -88
  580. package/dist/audit-QTLUKQW5.js +0 -152
  581. package/dist/autocomplete-XMRWWWJB.js +0 -112
  582. package/dist/avatars-QU5GIMCL.js +0 -38
  583. package/dist/bid-pricing-KBWHJKVH.js +0 -101
  584. package/dist/brand-REYK7QBZ.js +0 -22
  585. package/dist/brief-ZGGGJTBT.js +0 -541
  586. package/dist/businesses-T77Z5X35.js +0 -54
  587. package/dist/campaign-groups-47IYCWKX.js +0 -97
  588. package/dist/campaign-writes-IPSJMNQX.js +0 -166
  589. package/dist/campaign-writes-RHMIJAC3.js +0 -170
  590. package/dist/campaigns-7WLJWRVB.js +0 -76
  591. package/dist/campaigns-N3GQSKRU.js +0 -128
  592. package/dist/campaigns-NTEP5DKT.js +0 -107
  593. package/dist/campaigns-SCV5ZDLA.js +0 -111
  594. package/dist/canvas-X55KDZQX.js +0 -46
  595. package/dist/capabilities-FJIYYIMF.js +0 -145
  596. package/dist/cards-UZ3TAVOU.js +0 -85
  597. package/dist/catalog-OLWWOUXL.js +0 -65
  598. package/dist/catalogs-4PEZDXLP.js +0 -128
  599. package/dist/catalogs-WRBUBIRV.js +0 -779
  600. package/dist/changes-T6RKIP2B.js +0 -135
  601. package/dist/chatgpt-J3ITRRCX.js +0 -47
  602. package/dist/chats-PAHEOSL5.js +0 -277
  603. package/dist/check-PAVRHQAR.js +0 -105
  604. package/dist/chunk-23HT4U3O.js +0 -66
  605. package/dist/chunk-25IPX5BK.js +0 -592
  606. package/dist/chunk-2M36ESEZ.js +0 -84
  607. package/dist/chunk-2Q324LIK.js +0 -333
  608. package/dist/chunk-2YUVO3LP.js +0 -46
  609. package/dist/chunk-3BAAO72V.js +0 -56
  610. package/dist/chunk-3FF5UMV5.js +0 -89
  611. package/dist/chunk-3Q32TXSP.js +0 -35
  612. package/dist/chunk-3Z3O7ZD6.js +0 -197
  613. package/dist/chunk-44QHWWUX.js +0 -224
  614. package/dist/chunk-4D5OBSWR.js +0 -98
  615. package/dist/chunk-4ISA7PPB.js +0 -219
  616. package/dist/chunk-4WI5PJU6.js +0 -249
  617. package/dist/chunk-52KXFESB.js +0 -136
  618. package/dist/chunk-565M26EE.js +0 -25
  619. package/dist/chunk-5LYTDXWP.js +0 -106
  620. package/dist/chunk-5NYU2UYT.js +0 -159
  621. package/dist/chunk-5NYU2UYT.js.map +0 -1
  622. package/dist/chunk-6IFTTSHH.js +0 -66
  623. package/dist/chunk-6M22WJ5Y.js +0 -455
  624. package/dist/chunk-6PWVNCQH.js +0 -74
  625. package/dist/chunk-6UW4J6IU.js +0 -215
  626. package/dist/chunk-6ZFOF6J2.js +0 -103
  627. package/dist/chunk-73JJQ2DB.js +0 -287
  628. package/dist/chunk-73LQJBBF.js +0 -274
  629. package/dist/chunk-7IAA3REE.js +0 -1079
  630. package/dist/chunk-7IAA3REE.js.map +0 -1
  631. package/dist/chunk-AL6AEGWH.js +0 -2140
  632. package/dist/chunk-AL6AEGWH.js.map +0 -1
  633. package/dist/chunk-AQE4Q7K3.js +0 -149
  634. package/dist/chunk-AS46I4WH.js +0 -220
  635. package/dist/chunk-AS46I4WH.js.map +0 -1
  636. package/dist/chunk-ASHCV6DO.js +0 -207
  637. package/dist/chunk-ASHCV6DO.js.map +0 -1
  638. package/dist/chunk-BCFIMEZJ.js +0 -296
  639. package/dist/chunk-BJY6223Q.js +0 -942
  640. package/dist/chunk-BSFJW7LD.js +0 -401
  641. package/dist/chunk-BSFJW7LD.js.map +0 -1
  642. package/dist/chunk-BTGOVA2H.js +0 -75
  643. package/dist/chunk-BX4JR6ZU.js +0 -111
  644. package/dist/chunk-BYDTLQ77.js +0 -547
  645. package/dist/chunk-CFUFTIOU.js +0 -156
  646. package/dist/chunk-CFZUKCC3.js +0 -846
  647. package/dist/chunk-CVHUZFHA.js +0 -494
  648. package/dist/chunk-EGHPYAI7.js +0 -170
  649. package/dist/chunk-EHS3QWHJ.js +0 -206
  650. package/dist/chunk-EHS3QWHJ.js.map +0 -1
  651. package/dist/chunk-ERMKQMMJ.js +0 -64
  652. package/dist/chunk-EZMF6W4M.js +0 -64
  653. package/dist/chunk-FO2JX473.js +0 -1518
  654. package/dist/chunk-FUFMB3MS.js +0 -61
  655. package/dist/chunk-GZWBHJ4Y.js +0 -191
  656. package/dist/chunk-HIAXIRPX.js +0 -225
  657. package/dist/chunk-HLIZO3FD.js +0 -76
  658. package/dist/chunk-HS56YCCN.js +0 -225
  659. package/dist/chunk-HVJ25XVM.js +0 -131
  660. package/dist/chunk-IL36BNFB.js +0 -169
  661. package/dist/chunk-IMHJU7FX.js +0 -23
  662. package/dist/chunk-J5JYBRUE.js +0 -344
  663. package/dist/chunk-J6Q6RPKY.js +0 -67
  664. package/dist/chunk-JASI6RR6.js +0 -1606
  665. package/dist/chunk-JASI6RR6.js.map +0 -1
  666. package/dist/chunk-JTXOP6YW.js +0 -831
  667. package/dist/chunk-JWBJFF2K.js +0 -122
  668. package/dist/chunk-K5X62YHZ.js +0 -6831
  669. package/dist/chunk-K5X62YHZ.js.map +0 -1
  670. package/dist/chunk-K76OKYM7.js +0 -45
  671. package/dist/chunk-KBSWQKOT.js +0 -320
  672. package/dist/chunk-KS7VB275.js +0 -285
  673. package/dist/chunk-KW5WVJTH.js +0 -544
  674. package/dist/chunk-KZRJLBQO.js +0 -349
  675. package/dist/chunk-L3FWLIAU.js +0 -188
  676. package/dist/chunk-L6GYTD3A.js +0 -1919
  677. package/dist/chunk-M2LBB44P.js +0 -207
  678. package/dist/chunk-M6UNISGO.js +0 -66
  679. package/dist/chunk-M6UNISGO.js.map +0 -1
  680. package/dist/chunk-MITWP546.js +0 -84
  681. package/dist/chunk-MRQKDVDR.js +0 -42
  682. package/dist/chunk-NBAJACSF.js +0 -26
  683. package/dist/chunk-NBWZ6YFU.js +0 -142
  684. package/dist/chunk-NWML6X6Y.js +0 -97
  685. package/dist/chunk-NX5U6BXW.js +0 -297
  686. package/dist/chunk-PEY4YGW3.js +0 -57
  687. package/dist/chunk-Q6GYSW47.js +0 -52
  688. package/dist/chunk-QDJRLPT5.js +0 -76
  689. package/dist/chunk-QM7OZC3R.js +0 -392
  690. package/dist/chunk-QO46CYKH.js +0 -275
  691. package/dist/chunk-QR44DQTC.js +0 -66
  692. package/dist/chunk-QVRVSFIQ.js +0 -3868
  693. package/dist/chunk-R6OMFEFR.js +0 -195
  694. package/dist/chunk-R6OMFEFR.js.map +0 -1
  695. package/dist/chunk-RAUZWRJC.js +0 -74
  696. package/dist/chunk-RF73OV6K.js +0 -19
  697. package/dist/chunk-RKP76SGL.js +0 -139
  698. package/dist/chunk-RXNBOUCW.js +0 -910
  699. package/dist/chunk-S6VQMNPI.js +0 -74
  700. package/dist/chunk-SGUUPOPY.js +0 -51
  701. package/dist/chunk-SJJHM57A.js +0 -843
  702. package/dist/chunk-SQ23BTGW.js +0 -676
  703. package/dist/chunk-SVNKWUBQ.js +0 -191
  704. package/dist/chunk-T7JGOFVX.js +0 -91
  705. package/dist/chunk-TEX7Z7WC.js +0 -2903
  706. package/dist/chunk-TEX7Z7WC.js.map +0 -1
  707. package/dist/chunk-TPQOIWSU.js +0 -58
  708. package/dist/chunk-TSVC2RTQ.js +0 -179
  709. package/dist/chunk-U3LW43UG.js +0 -604
  710. package/dist/chunk-UAKNLPIU.js +0 -1744
  711. package/dist/chunk-US3NQJ4L.js +0 -8954
  712. package/dist/chunk-UWABLMIK.js +0 -479
  713. package/dist/chunk-V7T3OXUT.js +0 -638
  714. package/dist/chunk-VE4BTRLV.js +0 -167
  715. package/dist/chunk-VR6BCP3U.js +0 -5368
  716. package/dist/chunk-VSVAXKKS.js +0 -97
  717. package/dist/chunk-VWUGI7LE.js +0 -94
  718. package/dist/chunk-W3H7CX5E.js +0 -175
  719. package/dist/chunk-W5IS6CMZ.js +0 -166
  720. package/dist/chunk-WAMT3TUD.js +0 -8914
  721. package/dist/chunk-WN6WHZRC.js +0 -191
  722. package/dist/chunk-WO2SGESS.js +0 -148
  723. package/dist/chunk-WU6ULBSY.js +0 -661
  724. package/dist/chunk-WU6ULBSY.js.map +0 -1
  725. package/dist/chunk-X6KDRJZE.js +0 -69
  726. package/dist/chunk-XOHXG5TG.js +0 -472
  727. package/dist/chunk-XOHXG5TG.js.map +0 -1
  728. package/dist/chunk-XPNCOUXB.js +0 -125
  729. package/dist/chunk-XS7FMDCX.js +0 -363
  730. package/dist/chunk-XVMRO6W5.js +0 -97
  731. package/dist/chunk-Y4UQHVTM.js +0 -39
  732. package/dist/chunk-YJKAVF3E.js +0 -98
  733. package/dist/chunk-ZFINQBE7.js +0 -23992
  734. package/dist/chunk-ZFINQBE7.js.map +0 -1
  735. package/dist/chunk-ZJMOYNZF.js +0 -46
  736. package/dist/chunk-ZZCJNSZ6.js +0 -106
  737. package/dist/claim-WJ5TLA74.js +0 -198
  738. package/dist/client-PVBPZ7PY.js +0 -19
  739. package/dist/code-CSXOLKOP.js +0 -76
  740. package/dist/companies-3QI5C5Y6.js +0 -196
  741. package/dist/complete-ASGIH43P.js +0 -82
  742. package/dist/config-MNPHHWYU.js +0 -88
  743. package/dist/connect-F2PU33RV.js +0 -43
  744. package/dist/content-UYBZ5S7Z.js +0 -85
  745. package/dist/conversation-BYO57I25.js +0 -94
  746. package/dist/conversion-report-UCP43YAG.js +0 -125
  747. package/dist/conversion-upload-command-YVA3Y7GJ.js +0 -439
  748. package/dist/conversion-writes-6ZIY7DHZ.js +0 -120
  749. package/dist/conversions-BDSIXF2V.js +0 -76
  750. package/dist/conversions-JBZD2FZN.js +0 -138
  751. package/dist/copy-writes-SIQPN7L4.js +0 -168
  752. package/dist/countries-N2PAVVCQ.js +0 -82
  753. package/dist/create-EDDKOKK6.js +0 -133
  754. package/dist/create-PESL7TJ5.js +0 -237
  755. package/dist/create-UXH5MYEO.js +0 -208
  756. package/dist/create-YEHXJBFR.js +0 -60
  757. package/dist/creatives-3HSV4K6W.js +0 -89
  758. package/dist/creatives-3TRWYOYU.js +0 -221
  759. package/dist/creatives-KYSRCR5C.js +0 -58
  760. package/dist/credentials-Z4KS5QU6.js +0 -288
  761. package/dist/critique-NYW7FEPO.js +0 -230
  762. package/dist/critique-YZWJ3ABO.js +0 -1459
  763. package/dist/crm-CDAVHXUS.js +0 -319
  764. package/dist/crm-CDAVHXUS.js.map +0 -1
  765. package/dist/crm-TMEDDF67.js +0 -225
  766. package/dist/crop-4WS3WNXI.js +0 -113
  767. package/dist/currency-K4PRDLDG.js +0 -88
  768. package/dist/custom-conversions-XY6G3BXU.js +0 -128
  769. package/dist/customers-R6HXVXAS.js +0 -57
  770. package/dist/decide-IWUWMLIG.js +0 -199
  771. package/dist/delete-DECECVGG.js +0 -65
  772. package/dist/delete-F6AEBS4G.js +0 -55
  773. package/dist/delete-H2L2EGKF.js +0 -71
  774. package/dist/delete-R5IY7VHP.js +0 -71
  775. package/dist/delete-UCL6SL5B.js +0 -67
  776. package/dist/delete-Z4LRS6FG.js +0 -69
  777. package/dist/demographics-JFUKFKK7.js +0 -139
  778. package/dist/describe-44KTJQ6Z.js +0 -97
  779. package/dist/describe-V7LY3RUT.js +0 -97
  780. package/dist/dimensions-FZAJYJJ4.js +0 -101
  781. package/dist/discard-W4B5GF4S.js +0 -67
  782. package/dist/discover-E7OE4WFV.js +0 -93
  783. package/dist/discover-OYVXV25X.js +0 -172
  784. package/dist/domain-5WXROX3N.js +0 -99
  785. package/dist/download-JNNN7GSF.js +0 -299
  786. package/dist/draft-5I6DUWGA.js +0 -281
  787. package/dist/draft-KYARHXHR.js +0 -333
  788. package/dist/draft-RCD6ETPQ.js +0 -308
  789. package/dist/draft-SET2FGU3.js +0 -218
  790. package/dist/draft-URGXA6TO.js +0 -238
  791. package/dist/draft-US7FTGVC.js +0 -103
  792. package/dist/draft-XK4QG5HQ.js +0 -100
  793. package/dist/draft-YPSHMRPS.js +0 -308
  794. package/dist/env-3ZELNMXQ.js +0 -51
  795. package/dist/experiment-IKWEIJKD.js +0 -1397
  796. package/dist/experiments-LEAZ4BNF.js +0 -234
  797. package/dist/export-HMF33UYY.js +0 -168
  798. package/dist/extract-PK3MHV6C.js +0 -113
  799. package/dist/facets-WSFLCFYN.js +0 -115
  800. package/dist/favorites-Z7MKEDY3.js +0 -178
  801. package/dist/feed-6VZ3XWKC.js +0 -177
  802. package/dist/feedback-4Y76VRYD.js +0 -109
  803. package/dist/feedback-record-NJAUC2KM.js +0 -263
  804. package/dist/fetch-3DI7EKDS.js +0 -177
  805. package/dist/fetch-LGKTI6A6.js +0 -139
  806. package/dist/find-PAWW75PW.js +0 -134
  807. package/dist/fit-FROY76YE.js +0 -63
  808. package/dist/flows-M5DQAKCJ.js +0 -248
  809. package/dist/follow-PNWO2V4L.js +0 -94
  810. package/dist/follow-competitors-BFUGW6PC.js +0 -112
  811. package/dist/following-LKNHRKVC.js +0 -113
  812. package/dist/fonts-G3UCJ6UI.js +0 -37
  813. package/dist/forecast-OOGPMYEK.js +0 -169
  814. package/dist/forecast-VFGNPTYV.js +0 -119
  815. package/dist/funding-O5ZRZN7D.js +0 -85
  816. package/dist/funnel-PNN4HMDB.js +0 -395
  817. package/dist/ga4-SSRVUS7H.js +0 -55
  818. package/dist/generate-T3B6GOO6.js +0 -263
  819. package/dist/get-2BJKONHE.js +0 -61
  820. package/dist/get-6MHTPGHS.js +0 -80
  821. package/dist/get-DDBTEMJL.js +0 -59
  822. package/dist/get-G7JYP5E5.js +0 -57
  823. package/dist/get-IIIYTJY4.js +0 -63
  824. package/dist/get-JE3VGJPS.js +0 -92
  825. package/dist/get-KL7VTM6W.js +0 -38
  826. package/dist/get-ZNCET7LN.js +0 -63
  827. package/dist/gif-HZC5PIGN.js +0 -102
  828. package/dist/google-2JAG2MZJ.js +0 -136
  829. package/dist/google-JQHC36XQ.js +0 -3266
  830. package/dist/google-JQHC36XQ.js.map +0 -1
  831. package/dist/google-ads-Q2WVOJU2.js +0 -196
  832. package/dist/group-5KTGIHXJ.js +0 -43
  833. package/dist/group-6U4GJLHB.js +0 -43
  834. package/dist/gsc-76PWFEHH.js +0 -30
  835. package/dist/history-BVMIJLIL.js +0 -67
  836. package/dist/history-W22KYHZV.js +0 -134
  837. package/dist/hubspot-RF4FMSX2.js +0 -780
  838. package/dist/icon-ENQRKK4O.js +0 -137
  839. package/dist/ideas-Y7HFEXFE.js +0 -43
  840. package/dist/images-2PKU5XDS.js +0 -92
  841. package/dist/improve-L43S5YWU.js +0 -86
  842. package/dist/ingest-JHJOFWIU.js +0 -108
  843. package/dist/ingest-JU67Z5D3.js +0 -24
  844. package/dist/insights-HOOHR2FS.js +0 -425
  845. package/dist/insights-HOOHR2FS.js.map +0 -1
  846. package/dist/insights-NOOVPFK3.js +0 -122
  847. package/dist/insights-NOOVPFK3.js.map +0 -1
  848. package/dist/inspect-53NDMKC5.js +0 -190
  849. package/dist/inspiration-6NICXN3P.js +0 -53
  850. package/dist/instant-experiences-3LQ7RR6D.js +0 -258
  851. package/dist/intent-MLZCTLEX.js +0 -95
  852. package/dist/job-EXB5MGPT.js +0 -202
  853. package/dist/job-create-EPYGKZPB.js +0 -109
  854. package/dist/job-status-E7YXP2PT.js +0 -74
  855. package/dist/keep-ELL3JFEC.js +0 -78
  856. package/dist/keyword-gap-WD5TDZFR.js +0 -130
  857. package/dist/keyword-metrics-QMQCZKMX.js +0 -198
  858. package/dist/keywords-for-site-WL54QH6G.js +0 -129
  859. package/dist/landing-ZHCVMCYK.js +0 -28
  860. package/dist/landings-YVXUVNPA.js +0 -151
  861. package/dist/languages-F4FX2VC2.js +0 -40
  862. package/dist/languages-YIYCOFLI.js +0 -55
  863. package/dist/launches-G5AYQIEO.js +0 -19
  864. package/dist/layerize-EEHJX2QP.js +0 -190
  865. package/dist/leads-BDGL7TNL.js +0 -538
  866. package/dist/leads-C26QFD46.js +0 -113
  867. package/dist/learn-YRHVTBEW.js +0 -205
  868. package/dist/library-GLXT2ZZI.js +0 -109
  869. package/dist/lighthouse-DUAYYKVA.js +0 -75
  870. package/dist/line-item-writes-HSXCO3UM.js +0 -209
  871. package/dist/line-items-LU7VFYJ3.js +0 -103
  872. package/dist/link-N4F54R2W.js +0 -65
  873. package/dist/linkedin-F43WCEFC.js +0 -1314
  874. package/dist/list-CMCHPFU4.js +0 -76
  875. package/dist/list-EXKTPY65.js +0 -57
  876. package/dist/list-FGWN66JV.js +0 -65
  877. package/dist/list-H4YHY65J.js +0 -304
  878. package/dist/list-IIUY5WTV.js +0 -93
  879. package/dist/list-MNFGWVNZ.js +0 -152
  880. package/dist/list-QUQ5TUDK.js +0 -51
  881. package/dist/list-TY5WZFFE.js +0 -50
  882. package/dist/list-YWEP74CM.js +0 -65
  883. package/dist/locations-N3USZ27M.js +0 -40
  884. package/dist/locations-S67HBZA7.js +0 -67
  885. package/dist/log-CGQRPLGU.js +0 -93
  886. package/dist/logo-IXIQBWRL.js +0 -18
  887. package/dist/lookup-NKLRB3NS.js +0 -22
  888. package/dist/make-WOO3XWQ2.js +0 -1368
  889. package/dist/map-GW7NDNYC.js +0 -434
  890. package/dist/mcp-DUTXWJFC.js +0 -715
  891. package/dist/media-2JCAFWCU.js +0 -89
  892. package/dist/media-NPMNY5MJ.js +0 -18
  893. package/dist/media-sources-J2LY7NLR.js +0 -35
  894. package/dist/members-5YUHOWVS.js +0 -45
  895. package/dist/meme-G2HE54IY.js +0 -100
  896. package/dist/meta-ACKABP2H.js +0 -122
  897. package/dist/metrics-ZNQDSBVO.js +0 -152
  898. package/dist/models-QAR6ZOM3.js +0 -155
  899. package/dist/normalize-QP5Z5EYO.js +0 -142
  900. package/dist/normalize-X6GW75LV.js +0 -806
  901. package/dist/options-743FW5PT.js +0 -123
  902. package/dist/organization-OW6WPRA3.js +0 -947
  903. package/dist/output-GAAXGXQS.js +0 -24
  904. package/dist/page-ZA6VOW7F.js +0 -105
  905. package/dist/page-photos-B5775SA4.js +0 -116
  906. package/dist/pages-Q4LDTTOZ.js +0 -67
  907. package/dist/performance-F7OHUDYL.js +0 -25
  908. package/dist/pinterest-SH7Q3BGY.js +0 -96
  909. package/dist/pixels-CKH6Q2LC.js +0 -109
  910. package/dist/pixels-YVOTALZW.js +0 -60
  911. package/dist/plan-SF3AJ3U3.js +0 -207
  912. package/dist/posts-JMGQEPWZ.js +0 -34
  913. package/dist/preview-UJH6FFJV.js +0 -216
  914. package/dist/profile-GE6L5LGA.js +0 -159
  915. package/dist/promoted-tweet-writes-T2ZN246D.js +0 -181
  916. package/dist/promoted-tweets-EW3VXPZU.js +0 -119
  917. package/dist/properties-EJ6ANQZO.js +0 -101
  918. package/dist/publish-PIUYQKOE.js +0 -342
  919. package/dist/query-732XAQUN.js +0 -61
  920. package/dist/query-D7OVFIC4.js +0 -236
  921. package/dist/query-EKMXON7N.js +0 -247
  922. package/dist/questionnaire-RSAGT4BO.js +0 -93
  923. package/dist/read-JQ3OAR7D.js +0 -141
  924. package/dist/reddit-33K3IIHG.js +0 -27
  925. package/dist/refresh-JIJVT3SV.js +0 -95
  926. package/dist/refresh-Q5ZVBWQX.js +0 -42
  927. package/dist/release-3MTLVI3Q.js +0 -61
  928. package/dist/relevant-pages-HKF77GO5.js +0 -99
  929. package/dist/remove-3EIQM4ZN.js +0 -51
  930. package/dist/remove-T6UJSL5S.js +0 -49
  931. package/dist/reopen-56LN4EDE.js +0 -64
  932. package/dist/rerun-FQCYQ5OO.js +0 -93
  933. package/dist/research-IU26Y65V.js +0 -263
  934. package/dist/research-P5FLAJIZ.js +0 -62
  935. package/dist/research-P5FLAJIZ.js.map +0 -1
  936. package/dist/reset-7L6UNBW6.js +0 -55
  937. package/dist/reset-7T3QY4MY.js +0 -55
  938. package/dist/resolve-LZGMF3RI.js +0 -122
  939. package/dist/retry-CCQPI5MS.js +0 -63
  940. package/dist/retry-EJIMFCPU.js +0 -61
  941. package/dist/retry-failed-FTS44UES.js +0 -45
  942. package/dist/revenue-3WIZFO4L.js +0 -89
  943. package/dist/rule-writes-GOUJ7QDD.js +0 -523
  944. package/dist/rules-CC4M4WH5.js +0 -217
  945. package/dist/rules-TMLFDY6X.js +0 -97
  946. package/dist/rules-add-O766M6I5.js +0 -463
  947. package/dist/run-Y7VNP5EE.js +0 -67
  948. package/dist/run-ZXGD5GAY.js +0 -68
  949. package/dist/scaffold-ad-RM7ZUCJQ.js +0 -1514
  950. package/dist/scaffold-static-ad-KLP7UD3Q.js +0 -1008
  951. package/dist/scaffold-video-B7KMSBCG.js +0 -886
  952. package/dist/schedule-AJDMS4BD.js +0 -62
  953. package/dist/schedule-NCCNWKDY.js +0 -67
  954. package/dist/scheduled-agents-PCS3VL4R.js +0 -50
  955. package/dist/schema-KIA5RJDM.js +0 -69
  956. package/dist/schema-ZUOO5D6X.js +0 -133
  957. package/dist/scrape-MWW6FBUC.js +0 -2241
  958. package/dist/screenshot-6K7AEO4C.js +0 -102
  959. package/dist/search-2VJC4CVT.js +0 -26
  960. package/dist/search-EUGQ45JM.js +0 -224
  961. package/dist/search-L5CMOZA3.js +0 -175
  962. package/dist/search-NPL5TN7D.js +0 -92
  963. package/dist/search-RZKZUUZC.js +0 -91
  964. package/dist/search-YLKXXAYA.js +0 -51
  965. package/dist/search-copy-LC5EPYJG.js +0 -168
  966. package/dist/seeds-JI34P4HA.js +0 -101
  967. package/dist/select-ZAJH4HZ5.js +0 -104
  968. package/dist/sends-7WGK6K6C.js +0 -309
  969. package/dist/sends-7WGK6K6C.js.map +0 -1
  970. package/dist/sequences-IIEG46TU.js +0 -146
  971. package/dist/set-prompt-6H6JQW3X.js +0 -196
  972. package/dist/setup-links-VNEI42A5.js +0 -142
  973. package/dist/shared-UNQ3OBEC.js +0 -32
  974. package/dist/shopify-TOUT5NTX.js +0 -3956
  975. package/dist/site-E4EUL77X.js +0 -178
  976. package/dist/sitemaps-R6462TYK.js +0 -87
  977. package/dist/sites-BS5SBTVM.js +0 -101
  978. package/dist/skills-7BZQVAEY.js +0 -47
  979. package/dist/sources-6TCMSLQK.js +0 -30
  980. package/dist/sources-LO3YOOQO.js +0 -455
  981. package/dist/stale-DWC6547O.js +0 -74
  982. package/dist/stats-TVQVRDQS.js +0 -34
  983. package/dist/status-J4K5HOKZ.js +0 -63
  984. package/dist/sticker-IQTULOZN.js +0 -94
  985. package/dist/stock-25YD32HR.js +0 -179
  986. package/dist/studies-GVNMVY57.js +0 -250
  987. package/dist/studio-2M2XBR7E.js +0 -49
  988. package/dist/study-writes-GHA7REOK.js +0 -468
  989. package/dist/suggest-6PNUDXOE.js +0 -66
  990. package/dist/sync-3HWGVAQV.js +0 -55
  991. package/dist/sync-4IBJWSBV.js +0 -55
  992. package/dist/sync-GHPIPBO6.js +0 -265
  993. package/dist/sync-GHPIPBO6.js.map +0 -1
  994. package/dist/sync-definition-HEASUFK6.js +0 -67
  995. package/dist/tag-76TTKDKF.js +0 -57
  996. package/dist/tag-manager-4AJIUX7V.js +0 -43
  997. package/dist/tags-2XK6ZQI2.js +0 -26
  998. package/dist/tags-6LW4FTZ3.js +0 -21
  999. package/dist/tags-QEAH2IRF.js +0 -21
  1000. package/dist/tags-XTY5VXDS.js +0 -225
  1001. package/dist/tags-ZPBHZBLV.js +0 -21
  1002. package/dist/targeting-7IF7LRXO.js +0 -760
  1003. package/dist/targeting-constants-ARGJ3QQV.js +0 -118
  1004. package/dist/targeting-criteria-GMWARSTV.js +0 -113
  1005. package/dist/targets-I2WFL6JZ.js +0 -104
  1006. package/dist/terms-YM6UNNYX.js +0 -102
  1007. package/dist/testimonials-DKFN34CI.js +0 -32
  1008. package/dist/themes-XXVYTL54.js +0 -95
  1009. package/dist/top-companies-7C3QZ3Q4.js +0 -109
  1010. package/dist/translate-W6S6U4EE.js +0 -607
  1011. package/dist/triggers-I6BWR2BN.js +0 -143
  1012. package/dist/triggers-I6BWR2BN.js.map +0 -1
  1013. package/dist/tweets-SGNWR3H5.js +0 -123
  1014. package/dist/unfollow-TMZ76BRA.js +0 -46
  1015. package/dist/unlink-CD7WJQBU.js +0 -68
  1016. package/dist/unstage-ATF3XNAD.js +0 -95
  1017. package/dist/unstage-KP5VRZMN.js +0 -86
  1018. package/dist/update-4EZRHJNR.js +0 -81
  1019. package/dist/update-5MWCI3DR.js +0 -64
  1020. package/dist/update-7XYPACZR.js +0 -189
  1021. package/dist/update-FLNXNPQA.js +0 -99
  1022. package/dist/update-K75QQ2GN.js +0 -153
  1023. package/dist/upload-NSSD63IM.js +0 -150
  1024. package/dist/upload-O4IINV5I.js +0 -127
  1025. package/dist/upscale-UXOBILTP.js +0 -109
  1026. package/dist/url-options-UK244DY7.js +0 -130
  1027. package/dist/url-params-2SXL2PX4.js +0 -99
  1028. package/dist/use-F5TRLSNK.js +0 -95
  1029. package/dist/validate-2N3N3ING.js +0 -120
  1030. package/dist/variant-KLBKFKHB.js +0 -338
  1031. package/dist/videos-TBYEUE35.js +0 -39
  1032. package/dist/view-R64LLT5L.js +0 -121
  1033. package/dist/viewer-check-KBF5PCQV.js +0 -81
  1034. package/dist/web-TMQHTWRB.js +0 -141
  1035. package/dist/winners-VN2EHFDV.js +0 -113
  1036. package/dist/winning-ads-YYBQZJRL.js +0 -86
  1037. package/dist/write-commands-3RLSYXOH.js +0 -1170
  1038. package/dist/write-commands-AGKTMDAR.js +0 -713
  1039. package/dist/write-commands-EZH66GPE.js +0 -1493
  1040. package/dist/write-commands-G6423E2M.js +0 -206
  1041. package/dist/x-JGV5D7AV.js +0 -47
  1042. /package/dist/{account-263FLP5Y.js.map → account-PYK5VMQ4.js.map} +0 -0
  1043. /package/dist/{account-Y2NNZBQU.js.map → account-YSMZB5ZC.js.map} +0 -0
  1044. /package/dist/{account-Q3BRNQUW.js.map → account-ZY655BIU.js.map} +0 -0
  1045. /package/dist/{account-assets-FGXPTJAC.js.map → account-assets-GAKJQB6R.js.map} +0 -0
  1046. /package/dist/{account-level-HHFTDEEF.js.map → account-level-CAVVN4ZN.js.map} +0 -0
  1047. /package/dist/{account-reads-LJCF2BT6.js.map → account-reads-2U5OGO72.js.map} +0 -0
  1048. /package/dist/{account-users-65TL5KL7.js.map → account-users-XFNFGZB7.js.map} +0 -0
  1049. /package/dist/{account-writes-M274CK75.js.map → account-writes-4MAKFM7L.js.map} +0 -0
  1050. /package/dist/{accounts-FGBD6Y23.js.map → accounts-FT2SRKMD.js.map} +0 -0
  1051. /package/dist/{accounts-OWLAMDJX.js.map → accounts-K5XLEO6W.js.map} +0 -0
  1052. /package/dist/{accounts-4HPLJD7O.js.map → accounts-SNB65ZEW.js.map} +0 -0
  1053. /package/dist/{accounts-ST32A4L4.js.map → accounts-ZKY6KPU3.js.map} +0 -0
  1054. /package/dist/{actions-EAMKQC4A.js.map → actions-PF62UVHS.js.map} +0 -0
  1055. /package/dist/{active-entities-2TRODKWO.js.map → active-entities-3BAPHE4P.js.map} +0 -0
  1056. /package/dist/{activecampaign-XYEFFSZF.js.map → activecampaign-Q7LLZSZ4.js.map} +0 -0
  1057. /package/dist/{activities-CRMTS5Y7.js.map → activities-CTGCJHLC.js.map} +0 -0
  1058. /package/dist/{ad-group-writes-M7S67GLQ.js.map → ad-group-writes-XZ7XSJ3C.js.map} +0 -0
  1059. /package/dist/{ad-groups-BF4KNJFS.js.map → ad-groups-HI5YNTX3.js.map} +0 -0
  1060. /package/dist/{ad-writes-FNWVH7SP.js.map → ad-writes-E2C4BKWT.js.map} +0 -0
  1061. /package/dist/{add-IJA475VW.js.map → add-3GL76LTP.js.map} +0 -0
  1062. /package/dist/{add-EXF7UGIG.js.map → add-6TDY6LPL.js.map} +0 -0
  1063. /package/dist/{add-WZFXWMG7.js.map → add-CGHX6D4N.js.map} +0 -0
  1064. /package/dist/{add-5PK6LCD2.js.map → add-EVFOCMOM.js.map} +0 -0
  1065. /package/dist/{add-UGMEJ5L3.js.map → add-GDEQN43J.js.map} +0 -0
  1066. /package/dist/{add-2OOHZBKD.js.map → add-RNU2PVXW.js.map} +0 -0
  1067. /package/dist/{add-accounts-KQUUBIIG.js.map → add-accounts-76WYQJC6.js.map} +0 -0
  1068. /package/dist/{ads-C6LVVX4F.js.map → ads-46BH2TCU.js.map} +0 -0
  1069. /package/dist/{ads-TLJI5KCA.js.map → ads-VXF5STHG.js.map} +0 -0
  1070. /package/dist/{ads-3RBMFZMU.js.map → ads-WU4ITH6J.js.map} +0 -0
  1071. /package/dist/{adsets-2536GR4Q.js.map → adsets-MMPN2SKX.js.map} +0 -0
  1072. /package/dist/{advertisers-OHTC7Q63.js.map → advertisers-7TYBQMB5.js.map} +0 -0
  1073. /package/dist/{advertisers-RBLLFCET.js.map → advertisers-B5L4LZW2.js.map} +0 -0
  1074. /package/dist/{animate-G2PISVIA.js.map → animate-2BMHZ4FM.js.map} +0 -0
  1075. /package/dist/{asset-writes-LW3KSG2B.js.map → asset-writes-IE3HUPWM.js.map} +0 -0
  1076. /package/dist/{assign-UC6OK2R7.js.map → assign-BSV765I3.js.map} +0 -0
  1077. /package/dist/{audience-size-4S2ZWQ3G.js.map → audience-size-KJGSHN45.js.map} +0 -0
  1078. /package/dist/{audience-writes-75HWK4IY.js.map → audience-writes-VXQTCSHH.js.map} +0 -0
  1079. /package/dist/{audiences-2342U7XH.js.map → audiences-34IQKOGS.js.map} +0 -0
  1080. /package/dist/{audiences-OS4U3J6Y.js.map → audiences-75WHI3A3.js.map} +0 -0
  1081. /package/dist/{audiences-EZO6PYRL.js.map → audiences-SUW2NSXG.js.map} +0 -0
  1082. /package/dist/{audit-KQ7GVWMO.js.map → audit-7ED6CUTQ.js.map} +0 -0
  1083. /package/dist/{audit-QTLUKQW5.js.map → audit-RKDWAPMX.js.map} +0 -0
  1084. /package/dist/{autocomplete-XMRWWWJB.js.map → autocomplete-BNQXAPDX.js.map} +0 -0
  1085. /package/dist/{avatars-QU5GIMCL.js.map → avatars-BRDNW4ZF.js.map} +0 -0
  1086. /package/dist/{bid-pricing-KBWHJKVH.js.map → bid-pricing-ARPPR45O.js.map} +0 -0
  1087. /package/dist/{brand-REYK7QBZ.js.map → brand-JJDZKJSM.js.map} +0 -0
  1088. /package/dist/{brief-ZGGGJTBT.js.map → brief-FSVESR44.js.map} +0 -0
  1089. /package/dist/{businesses-T77Z5X35.js.map → businesses-MGP2YCEU.js.map} +0 -0
  1090. /package/dist/{campaign-groups-47IYCWKX.js.map → campaign-groups-DRUQ5WBQ.js.map} +0 -0
  1091. /package/dist/{campaign-writes-RHMIJAC3.js.map → campaign-writes-JFT4OPL5.js.map} +0 -0
  1092. /package/dist/{campaign-writes-IPSJMNQX.js.map → campaign-writes-SDQ7IPHU.js.map} +0 -0
  1093. /package/dist/{campaigns-SCV5ZDLA.js.map → campaigns-FM2V3RIE.js.map} +0 -0
  1094. /package/dist/{campaigns-NTEP5DKT.js.map → campaigns-UDPZIIPK.js.map} +0 -0
  1095. /package/dist/{campaigns-N3GQSKRU.js.map → campaigns-WHMJUFYV.js.map} +0 -0
  1096. /package/dist/{campaigns-7WLJWRVB.js.map → campaigns-XFNPYDO6.js.map} +0 -0
  1097. /package/dist/{canvas-X55KDZQX.js.map → canvas-ZRMKN442.js.map} +0 -0
  1098. /package/dist/{capabilities-FJIYYIMF.js.map → capabilities-HMT6ZBPH.js.map} +0 -0
  1099. /package/dist/{cards-UZ3TAVOU.js.map → cards-A7GQVC7B.js.map} +0 -0
  1100. /package/dist/{catalog-OLWWOUXL.js.map → catalog-TZLU5NWI.js.map} +0 -0
  1101. /package/dist/{catalogs-WRBUBIRV.js.map → catalogs-ORSZM5SY.js.map} +0 -0
  1102. /package/dist/{catalogs-4PEZDXLP.js.map → catalogs-WR3D6VEY.js.map} +0 -0
  1103. /package/dist/{changes-T6RKIP2B.js.map → changes-ONEEMEMT.js.map} +0 -0
  1104. /package/dist/{chatgpt-J3ITRRCX.js.map → chatgpt-23X76OFD.js.map} +0 -0
  1105. /package/dist/{chats-PAHEOSL5.js.map → chats-77MJ5SIT.js.map} +0 -0
  1106. /package/dist/{check-PAVRHQAR.js.map → check-TA3HM2QA.js.map} +0 -0
  1107. /package/dist/{chunk-BYDTLQ77.js.map → chunk-2572627P.js.map} +0 -0
  1108. /package/dist/{chunk-CFZUKCC3.js.map → chunk-34Z4YPXD.js.map} +0 -0
  1109. /package/dist/{chunk-AQE4Q7K3.js.map → chunk-3GAR4AZK.js.map} +0 -0
  1110. /package/dist/{chunk-HVJ25XVM.js.map → chunk-3YJNSUNF.js.map} +0 -0
  1111. /package/dist/{chunk-GZWBHJ4Y.js.map → chunk-42YFMKEU.js.map} +0 -0
  1112. /package/dist/{chunk-NWML6X6Y.js.map → chunk-457XEP63.js.map} +0 -0
  1113. /package/dist/{chunk-MRQKDVDR.js.map → chunk-4KZMKI67.js.map} +0 -0
  1114. /package/dist/{chunk-3FF5UMV5.js.map → chunk-5KDFRTMY.js.map} +0 -0
  1115. /package/dist/{chunk-6IFTTSHH.js.map → chunk-5YQATOWK.js.map} +0 -0
  1116. /package/dist/{chunk-XS7FMDCX.js.map → chunk-6IE7RGIC.js.map} +0 -0
  1117. /package/dist/{chunk-WAMT3TUD.js.map → chunk-6KWEF6HF.js.map} +0 -0
  1118. /package/dist/{chunk-3Z3O7ZD6.js.map → chunk-6QBSUYQZ.js.map} +0 -0
  1119. /package/dist/{chunk-SJJHM57A.js.map → chunk-7HZSORAB.js.map} +0 -0
  1120. /package/dist/{chunk-5LYTDXWP.js.map → chunk-7NF73SCB.js.map} +0 -0
  1121. /package/dist/{chunk-V7T3OXUT.js.map → chunk-A3IQAONL.js.map} +0 -0
  1122. /package/dist/{chunk-Q6GYSW47.js.map → chunk-AGBBTTKA.js.map} +0 -0
  1123. /package/dist/{chunk-QM7OZC3R.js.map → chunk-AIOICB5Q.js.map} +0 -0
  1124. /package/dist/{chunk-W3H7CX5E.js.map → chunk-B2POVFR2.js.map} +0 -0
  1125. /package/dist/{chunk-QDJRLPT5.js.map → chunk-B537ISAP.js.map} +0 -0
  1126. /package/dist/{chunk-73LQJBBF.js.map → chunk-BBBWMD5R.js.map} +0 -0
  1127. /package/dist/{chunk-44QHWWUX.js.map → chunk-C4I5NCMG.js.map} +0 -0
  1128. /package/dist/{chunk-WN6WHZRC.js.map → chunk-C4LZIBNP.js.map} +0 -0
  1129. /package/dist/{chunk-NBAJACSF.js.map → chunk-DM3Q6F5F.js.map} +0 -0
  1130. /package/dist/{chunk-X6KDRJZE.js.map → chunk-DQVI7GCX.js.map} +0 -0
  1131. /package/dist/{chunk-TSVC2RTQ.js.map → chunk-DX46OE4U.js.map} +0 -0
  1132. /package/dist/{chunk-MITWP546.js.map → chunk-E44NXCTL.js.map} +0 -0
  1133. /package/dist/{chunk-ZJMOYNZF.js.map → chunk-EDWRTYEO.js.map} +0 -0
  1134. /package/dist/{chunk-52KXFESB.js.map → chunk-EJGAJHLB.js.map} +0 -0
  1135. /package/dist/{chunk-S6VQMNPI.js.map → chunk-ESQX7SRQ.js.map} +0 -0
  1136. /package/dist/{chunk-FO2JX473.js.map → chunk-F4YQ5PVR.js.map} +0 -0
  1137. /package/dist/{chunk-EZMF6W4M.js.map → chunk-FFG2OYVV.js.map} +0 -0
  1138. /package/dist/{chunk-UAKNLPIU.js.map → chunk-FOMFU2RX.js.map} +0 -0
  1139. /package/dist/{chunk-ERMKQMMJ.js.map → chunk-FQWZIYFC.js.map} +0 -0
  1140. /package/dist/{chunk-BJY6223Q.js.map → chunk-FR6RFLFP.js.map} +0 -0
  1141. /package/dist/{chunk-BX4JR6ZU.js.map → chunk-G4HLEELG.js.map} +0 -0
  1142. /package/dist/{chunk-73JJQ2DB.js.map → chunk-GCLKAQUS.js.map} +0 -0
  1143. /package/dist/{chunk-U3LW43UG.js.map → chunk-GNKICND2.js.map} +0 -0
  1144. /package/dist/{chunk-4D5OBSWR.js.map → chunk-GSKZ3ZDO.js.map} +0 -0
  1145. /package/dist/{chunk-IMHJU7FX.js.map → chunk-GTNNH3AI.js.map} +0 -0
  1146. /package/dist/{chunk-SVNKWUBQ.js.map → chunk-GU5MXV2Y.js.map} +0 -0
  1147. /package/dist/{chunk-HLIZO3FD.js.map → chunk-HGUYC5K6.js.map} +0 -0
  1148. /package/dist/{chunk-PEY4YGW3.js.map → chunk-HITRGZIS.js.map} +0 -0
  1149. /package/dist/{chunk-RAUZWRJC.js.map → chunk-HMIROUFV.js.map} +0 -0
  1150. /package/dist/{chunk-HIAXIRPX.js.map → chunk-HML3VQIW.js.map} +0 -0
  1151. /package/dist/{chunk-6ZFOF6J2.js.map → chunk-HNS5OURO.js.map} +0 -0
  1152. /package/dist/{chunk-JTXOP6YW.js.map → chunk-I2C4IUDP.js.map} +0 -0
  1153. /package/dist/{chunk-RKP76SGL.js.map → chunk-JCRCI7Q3.js.map} +0 -0
  1154. /package/dist/{chunk-RXNBOUCW.js.map → chunk-JCRGGVV5.js.map} +0 -0
  1155. /package/dist/{chunk-SQ23BTGW.js.map → chunk-JDUPYPYB.js.map} +0 -0
  1156. /package/dist/{chunk-Y4UQHVTM.js.map → chunk-JRCYNIXC.js.map} +0 -0
  1157. /package/dist/{chunk-W5IS6CMZ.js.map → chunk-KJZPCLQE.js.map} +0 -0
  1158. /package/dist/{chunk-NX5U6BXW.js.map → chunk-KMRXPNQA.js.map} +0 -0
  1159. /package/dist/{chunk-ZZCJNSZ6.js.map → chunk-KXWEI3IX.js.map} +0 -0
  1160. /package/dist/{chunk-FUFMB3MS.js.map → chunk-LIX4S3ZM.js.map} +0 -0
  1161. /package/dist/{chunk-BTGOVA2H.js.map → chunk-LNNTHEL7.js.map} +0 -0
  1162. /package/dist/{chunk-L6GYTD3A.js.map → chunk-LRV6M2WB.js.map} +0 -0
  1163. /package/dist/{chunk-6UW4J6IU.js.map → chunk-LU4HI4KI.js.map} +0 -0
  1164. /package/dist/{chunk-VSVAXKKS.js.map → chunk-MKTLZCRJ.js.map} +0 -0
  1165. /package/dist/{chunk-2YUVO3LP.js.map → chunk-MVD7QIXI.js.map} +0 -0
  1166. /package/dist/{chunk-SGUUPOPY.js.map → chunk-N4CHIGLO.js.map} +0 -0
  1167. /package/dist/{chunk-NBWZ6YFU.js.map → chunk-N7KICNZD.js.map} +0 -0
  1168. /package/dist/{chunk-QR44DQTC.js.map → chunk-NNLVFRF6.js.map} +0 -0
  1169. /package/dist/{chunk-IL36BNFB.js.map → chunk-NT3NJVPZ.js.map} +0 -0
  1170. /package/dist/{chunk-XPNCOUXB.js.map → chunk-OG6IHSQF.js.map} +0 -0
  1171. /package/dist/{chunk-HS56YCCN.js.map → chunk-OLQSKCMO.js.map} +0 -0
  1172. /package/dist/{chunk-JWBJFF2K.js.map → chunk-PFGRHBQY.js.map} +0 -0
  1173. /package/dist/{chunk-2Q324LIK.js.map → chunk-PONLPYD7.js.map} +0 -0
  1174. /package/dist/{chunk-4ISA7PPB.js.map → chunk-PRVX32SQ.js.map} +0 -0
  1175. /package/dist/{chunk-BCFIMEZJ.js.map → chunk-PSGIHSNC.js.map} +0 -0
  1176. /package/dist/{chunk-VE4BTRLV.js.map → chunk-PX3PUDK7.js.map} +0 -0
  1177. /package/dist/{chunk-XVMRO6W5.js.map → chunk-QPESDKZC.js.map} +0 -0
  1178. /package/dist/{chunk-4WI5PJU6.js.map → chunk-QY4GBBOV.js.map} +0 -0
  1179. /package/dist/{chunk-6PWVNCQH.js.map → chunk-RCJKABOS.js.map} +0 -0
  1180. /package/dist/{chunk-3BAAO72V.js.map → chunk-RESTDRYX.js.map} +0 -0
  1181. /package/dist/{chunk-2M36ESEZ.js.map → chunk-SKXXSTNM.js.map} +0 -0
  1182. /package/dist/{chunk-CVHUZFHA.js.map → chunk-SP6BZLM4.js.map} +0 -0
  1183. /package/dist/{chunk-RF73OV6K.js.map → chunk-SSJR3FZ5.js.map} +0 -0
  1184. /package/dist/{chunk-CFUFTIOU.js.map → chunk-ST2777KW.js.map} +0 -0
  1185. /package/dist/{chunk-WO2SGESS.js.map → chunk-SWN6OHXG.js.map} +0 -0
  1186. /package/dist/{chunk-EGHPYAI7.js.map → chunk-TGQAEHLA.js.map} +0 -0
  1187. /package/dist/{chunk-KW5WVJTH.js.map → chunk-TT7RFKUE.js.map} +0 -0
  1188. /package/dist/{chunk-VR6BCP3U.js.map → chunk-TX7CQTD4.js.map} +0 -0
  1189. /package/dist/{chunk-QO46CYKH.js.map → chunk-UC5HG2UF.js.map} +0 -0
  1190. /package/dist/{chunk-YJKAVF3E.js.map → chunk-UKSSNYLU.js.map} +0 -0
  1191. /package/dist/{chunk-25IPX5BK.js.map → chunk-UQWBJNQY.js.map} +0 -0
  1192. /package/dist/{chunk-J5JYBRUE.js.map → chunk-VAHDJ5CK.js.map} +0 -0
  1193. /package/dist/{chunk-US3NQJ4L.js.map → chunk-VOAWBGRQ.js.map} +0 -0
  1194. /package/dist/{chunk-6M22WJ5Y.js.map → chunk-VRP677NO.js.map} +0 -0
  1195. /package/dist/{chunk-K76OKYM7.js.map → chunk-VU5Z2V4S.js.map} +0 -0
  1196. /package/dist/{chunk-UWABLMIK.js.map → chunk-WAEWKD75.js.map} +0 -0
  1197. /package/dist/{chunk-565M26EE.js.map → chunk-WHBFXR6F.js.map} +0 -0
  1198. /package/dist/{chunk-KZRJLBQO.js.map → chunk-X64DJIZG.js.map} +0 -0
  1199. /package/dist/{chunk-3Q32TXSP.js.map → chunk-XB63MQ6E.js.map} +0 -0
  1200. /package/dist/{chunk-VWUGI7LE.js.map → chunk-XV5TBA5P.js.map} +0 -0
  1201. /package/dist/{chunk-23HT4U3O.js.map → chunk-XVFZDPEW.js.map} +0 -0
  1202. /package/dist/{chunk-M2LBB44P.js.map → chunk-YIN6QNZD.js.map} +0 -0
  1203. /package/dist/{chunk-J6Q6RPKY.js.map → chunk-YLDZFO3A.js.map} +0 -0
  1204. /package/dist/{chunk-KS7VB275.js.map → chunk-YNYAT2TZ.js.map} +0 -0
  1205. /package/dist/{chunk-TPQOIWSU.js.map → chunk-YSPCWJCO.js.map} +0 -0
  1206. /package/dist/{chunk-QVRVSFIQ.js.map → chunk-YZYDB77W.js.map} +0 -0
  1207. /package/dist/{chunk-L3FWLIAU.js.map → chunk-ZEGNIP3Y.js.map} +0 -0
  1208. /package/dist/{chunk-T7JGOFVX.js.map → chunk-ZNH45NXP.js.map} +0 -0
  1209. /package/dist/{chunk-KBSWQKOT.js.map → chunk-ZRP7Y2DM.js.map} +0 -0
  1210. /package/dist/{claim-WJ5TLA74.js.map → claim-CIUU5QEZ.js.map} +0 -0
  1211. /package/dist/{client-PVBPZ7PY.js.map → client-EYPNMTBH.js.map} +0 -0
  1212. /package/dist/{code-CSXOLKOP.js.map → code-MSWCKVV6.js.map} +0 -0
  1213. /package/dist/{companies-3QI5C5Y6.js.map → companies-VV5XD3BP.js.map} +0 -0
  1214. /package/dist/{complete-ASGIH43P.js.map → complete-NKYCSYKX.js.map} +0 -0
  1215. /package/dist/{config-MNPHHWYU.js.map → config-SMVIY6RW.js.map} +0 -0
  1216. /package/dist/{connect-F2PU33RV.js.map → connect-TFH4AFFO.js.map} +0 -0
  1217. /package/dist/{content-UYBZ5S7Z.js.map → content-XJMRCTWX.js.map} +0 -0
  1218. /package/dist/{conversation-BYO57I25.js.map → conversation-S6CKSNYW.js.map} +0 -0
  1219. /package/dist/{conversion-report-UCP43YAG.js.map → conversion-report-V3TGPELD.js.map} +0 -0
  1220. /package/dist/{conversion-upload-command-YVA3Y7GJ.js.map → conversion-upload-command-K2SB6O6K.js.map} +0 -0
  1221. /package/dist/{conversion-writes-6ZIY7DHZ.js.map → conversion-writes-B2QOYL56.js.map} +0 -0
  1222. /package/dist/{conversions-BDSIXF2V.js.map → conversions-ILF5HJOO.js.map} +0 -0
  1223. /package/dist/{conversions-JBZD2FZN.js.map → conversions-KXYOUSBR.js.map} +0 -0
  1224. /package/dist/{copy-writes-SIQPN7L4.js.map → copy-writes-OVCOZODC.js.map} +0 -0
  1225. /package/dist/{countries-N2PAVVCQ.js.map → countries-BMEABV4N.js.map} +0 -0
  1226. /package/dist/{create-YEHXJBFR.js.map → create-BZWX5KLI.js.map} +0 -0
  1227. /package/dist/{create-PESL7TJ5.js.map → create-WEIGJ4BF.js.map} +0 -0
  1228. /package/dist/{create-EDDKOKK6.js.map → create-XKGV6TEW.js.map} +0 -0
  1229. /package/dist/{create-UXH5MYEO.js.map → create-Y44CPUE4.js.map} +0 -0
  1230. /package/dist/{creatives-KYSRCR5C.js.map → creatives-P5MX2AZL.js.map} +0 -0
  1231. /package/dist/{creatives-3HSV4K6W.js.map → creatives-RF3AG7HW.js.map} +0 -0
  1232. /package/dist/{creatives-3TRWYOYU.js.map → creatives-WFDFLRQV.js.map} +0 -0
  1233. /package/dist/{credentials-Z4KS5QU6.js.map → credentials-5EOUA5VL.js.map} +0 -0
  1234. /package/dist/{critique-YZWJ3ABO.js.map → critique-4ETQZBQG.js.map} +0 -0
  1235. /package/dist/{critique-NYW7FEPO.js.map → critique-OYUMBZ4Y.js.map} +0 -0
  1236. /package/dist/{crm-TMEDDF67.js.map → crm-6UU3GFQU.js.map} +0 -0
  1237. /package/dist/{crop-4WS3WNXI.js.map → crop-NBVWWXF2.js.map} +0 -0
  1238. /package/dist/{currency-K4PRDLDG.js.map → currency-UVQIYZUP.js.map} +0 -0
  1239. /package/dist/{custom-conversions-XY6G3BXU.js.map → custom-conversions-QFGIAISN.js.map} +0 -0
  1240. /package/dist/{customers-R6HXVXAS.js.map → customers-RT75T4ZB.js.map} +0 -0
  1241. /package/dist/{decide-IWUWMLIG.js.map → decide-4GWMV7VZ.js.map} +0 -0
  1242. /package/dist/{delete-UCL6SL5B.js.map → delete-37IIUYQU.js.map} +0 -0
  1243. /package/dist/{delete-F6AEBS4G.js.map → delete-E575BF73.js.map} +0 -0
  1244. /package/dist/{delete-H2L2EGKF.js.map → delete-EZHOZ2D2.js.map} +0 -0
  1245. /package/dist/{delete-R5IY7VHP.js.map → delete-GPTU4DJ5.js.map} +0 -0
  1246. /package/dist/{delete-DECECVGG.js.map → delete-GQYFBLMP.js.map} +0 -0
  1247. /package/dist/{delete-Z4LRS6FG.js.map → delete-ULUQIENX.js.map} +0 -0
  1248. /package/dist/{demographics-JFUKFKK7.js.map → demographics-3LIUI2SM.js.map} +0 -0
  1249. /package/dist/{describe-V7LY3RUT.js.map → describe-DUPBGFKA.js.map} +0 -0
  1250. /package/dist/{describe-44KTJQ6Z.js.map → describe-YW32V6EW.js.map} +0 -0
  1251. /package/dist/{dimensions-FZAJYJJ4.js.map → dimensions-M4LMNCBV.js.map} +0 -0
  1252. /package/dist/{discard-W4B5GF4S.js.map → discard-7OARQRS7.js.map} +0 -0
  1253. /package/dist/{discover-OYVXV25X.js.map → discover-2TPMVIW7.js.map} +0 -0
  1254. /package/dist/{discover-E7OE4WFV.js.map → discover-PPSZ6BQI.js.map} +0 -0
  1255. /package/dist/{domain-5WXROX3N.js.map → domain-ZRWUGUOO.js.map} +0 -0
  1256. /package/dist/{download-JNNN7GSF.js.map → download-NNDBNAVZ.js.map} +0 -0
  1257. /package/dist/{draft-5I6DUWGA.js.map → draft-5XV2BJ3N.js.map} +0 -0
  1258. /package/dist/{draft-YPSHMRPS.js.map → draft-A2I4RLMW.js.map} +0 -0
  1259. /package/dist/{draft-RCD6ETPQ.js.map → draft-CVSGNA4Z.js.map} +0 -0
  1260. /package/dist/{draft-US7FTGVC.js.map → draft-DJIYEMZU.js.map} +0 -0
  1261. /package/dist/{draft-URGXA6TO.js.map → draft-RIR2V6A2.js.map} +0 -0
  1262. /package/dist/{draft-SET2FGU3.js.map → draft-SNBK2KY6.js.map} +0 -0
  1263. /package/dist/{draft-KYARHXHR.js.map → draft-UHNTXGY7.js.map} +0 -0
  1264. /package/dist/{draft-XK4QG5HQ.js.map → draft-ZCL7FVBH.js.map} +0 -0
  1265. /package/dist/{env-3ZELNMXQ.js.map → env-ABXQWHDO.js.map} +0 -0
  1266. /package/dist/{experiment-IKWEIJKD.js.map → experiment-I5CRLOVN.js.map} +0 -0
  1267. /package/dist/{experiments-LEAZ4BNF.js.map → experiments-IGMLMSLX.js.map} +0 -0
  1268. /package/dist/{export-HMF33UYY.js.map → export-T5WPU75G.js.map} +0 -0
  1269. /package/dist/{extract-PK3MHV6C.js.map → extract-55YRHNCV.js.map} +0 -0
  1270. /package/dist/{facets-WSFLCFYN.js.map → facets-AURXB76V.js.map} +0 -0
  1271. /package/dist/{favorites-Z7MKEDY3.js.map → favorites-B5L4RBBH.js.map} +0 -0
  1272. /package/dist/{feed-6VZ3XWKC.js.map → feed-QJ2QHVJH.js.map} +0 -0
  1273. /package/dist/{feedback-4Y76VRYD.js.map → feedback-UDTPDCMS.js.map} +0 -0
  1274. /package/dist/{feedback-record-NJAUC2KM.js.map → feedback-record-Z34XJF6K.js.map} +0 -0
  1275. /package/dist/{fetch-LGKTI6A6.js.map → fetch-53TIHU4X.js.map} +0 -0
  1276. /package/dist/{fetch-3DI7EKDS.js.map → fetch-GR3FXFXL.js.map} +0 -0
  1277. /package/dist/{find-PAWW75PW.js.map → find-FHM5R2XW.js.map} +0 -0
  1278. /package/dist/{fit-FROY76YE.js.map → fit-SLEEJWVR.js.map} +0 -0
  1279. /package/dist/{flows-M5DQAKCJ.js.map → flows-NAFSRRY2.js.map} +0 -0
  1280. /package/dist/{follow-PNWO2V4L.js.map → follow-CMCZVFHU.js.map} +0 -0
  1281. /package/dist/{follow-competitors-BFUGW6PC.js.map → follow-competitors-B4ITK7QT.js.map} +0 -0
  1282. /package/dist/{following-LKNHRKVC.js.map → following-GUZRR5YB.js.map} +0 -0
  1283. /package/dist/{fonts-G3UCJ6UI.js.map → fonts-POBAXXBC.js.map} +0 -0
  1284. /package/dist/{forecast-OOGPMYEK.js.map → forecast-CLQKEFI6.js.map} +0 -0
  1285. /package/dist/{forecast-VFGNPTYV.js.map → forecast-RN6VUKLS.js.map} +0 -0
  1286. /package/dist/{funding-O5ZRZN7D.js.map → funding-5W4LX6DU.js.map} +0 -0
  1287. /package/dist/{funnel-PNN4HMDB.js.map → funnel-O3XOHYI3.js.map} +0 -0
  1288. /package/dist/{ga4-SSRVUS7H.js.map → ga4-HTD6WC3P.js.map} +0 -0
  1289. /package/dist/{generate-T3B6GOO6.js.map → generate-NWHPM2GQ.js.map} +0 -0
  1290. /package/dist/{get-6MHTPGHS.js.map → get-2MC5LYXY.js.map} +0 -0
  1291. /package/dist/{get-JE3VGJPS.js.map → get-75MIX7TJ.js.map} +0 -0
  1292. /package/dist/{get-ZNCET7LN.js.map → get-LSUOV5YD.js.map} +0 -0
  1293. /package/dist/{get-KL7VTM6W.js.map → get-LYFN4SI7.js.map} +0 -0
  1294. /package/dist/{get-IIIYTJY4.js.map → get-OB3UGRPN.js.map} +0 -0
  1295. /package/dist/{get-2BJKONHE.js.map → get-UOXXHYXJ.js.map} +0 -0
  1296. /package/dist/{get-G7JYP5E5.js.map → get-UQ43T25B.js.map} +0 -0
  1297. /package/dist/{get-DDBTEMJL.js.map → get-WJYHHRTS.js.map} +0 -0
  1298. /package/dist/{gif-HZC5PIGN.js.map → gif-2D6UXHP5.js.map} +0 -0
  1299. /package/dist/{google-2JAG2MZJ.js.map → google-AFV6DMTA.js.map} +0 -0
  1300. /package/dist/{google-ads-Q2WVOJU2.js.map → google-ads-7DJ5STPS.js.map} +0 -0
  1301. /package/dist/{group-6U4GJLHB.js.map → group-JROMVKDU.js.map} +0 -0
  1302. /package/dist/{group-5KTGIHXJ.js.map → group-Z3U67VRY.js.map} +0 -0
  1303. /package/dist/{gsc-76PWFEHH.js.map → gsc-2MPE4N32.js.map} +0 -0
  1304. /package/dist/{history-BVMIJLIL.js.map → history-IXV4ZR6F.js.map} +0 -0
  1305. /package/dist/{history-W22KYHZV.js.map → history-QRM76S4Q.js.map} +0 -0
  1306. /package/dist/{hubspot-RF4FMSX2.js.map → hubspot-HVZNR2IR.js.map} +0 -0
  1307. /package/dist/{icon-ENQRKK4O.js.map → icon-XO2EKLWL.js.map} +0 -0
  1308. /package/dist/{ideas-Y7HFEXFE.js.map → ideas-S2UXZSFB.js.map} +0 -0
  1309. /package/dist/{images-2PKU5XDS.js.map → images-FYSBKRU6.js.map} +0 -0
  1310. /package/dist/{improve-L43S5YWU.js.map → improve-S47VKH5Y.js.map} +0 -0
  1311. /package/dist/{ingest-JU67Z5D3.js.map → ingest-37F3NOLA.js.map} +0 -0
  1312. /package/dist/{ingest-JHJOFWIU.js.map → ingest-YQINQGG7.js.map} +0 -0
  1313. /package/dist/{inspect-53NDMKC5.js.map → inspect-RVU5RDCE.js.map} +0 -0
  1314. /package/dist/{inspiration-6NICXN3P.js.map → inspiration-QJNUFRNH.js.map} +0 -0
  1315. /package/dist/{instant-experiences-3LQ7RR6D.js.map → instant-experiences-Y53I7FT4.js.map} +0 -0
  1316. /package/dist/{intent-MLZCTLEX.js.map → intent-57BBLPLP.js.map} +0 -0
  1317. /package/dist/{job-EXB5MGPT.js.map → job-DRFCQ27M.js.map} +0 -0
  1318. /package/dist/{job-create-EPYGKZPB.js.map → job-create-2EC25Y3J.js.map} +0 -0
  1319. /package/dist/{job-status-E7YXP2PT.js.map → job-status-UNVZRPIA.js.map} +0 -0
  1320. /package/dist/{keep-ELL3JFEC.js.map → keep-44JRYTBY.js.map} +0 -0
  1321. /package/dist/{keyword-gap-WD5TDZFR.js.map → keyword-gap-TSIQBZ6G.js.map} +0 -0
  1322. /package/dist/{keyword-metrics-QMQCZKMX.js.map → keyword-metrics-7XZXPSQO.js.map} +0 -0
  1323. /package/dist/{keywords-for-site-WL54QH6G.js.map → keywords-for-site-A43QNTLD.js.map} +0 -0
  1324. /package/dist/{landing-ZHCVMCYK.js.map → landing-NFDGD3PQ.js.map} +0 -0
  1325. /package/dist/{landings-YVXUVNPA.js.map → landings-FLELWQDN.js.map} +0 -0
  1326. /package/dist/{languages-YIYCOFLI.js.map → languages-J275RIZC.js.map} +0 -0
  1327. /package/dist/{languages-F4FX2VC2.js.map → languages-WKOFWZ7S.js.map} +0 -0
  1328. /package/dist/{launches-G5AYQIEO.js.map → launches-CGRWUGRB.js.map} +0 -0
  1329. /package/dist/{layerize-EEHJX2QP.js.map → layerize-M5XLTCO4.js.map} +0 -0
  1330. /package/dist/{leads-BDGL7TNL.js.map → leads-GF24GM54.js.map} +0 -0
  1331. /package/dist/{leads-C26QFD46.js.map → leads-UHJS7VNH.js.map} +0 -0
  1332. /package/dist/{learn-YRHVTBEW.js.map → learn-POJ5ORBK.js.map} +0 -0
  1333. /package/dist/{library-GLXT2ZZI.js.map → library-OLXEGJ73.js.map} +0 -0
  1334. /package/dist/{lighthouse-DUAYYKVA.js.map → lighthouse-QYCKJ6GT.js.map} +0 -0
  1335. /package/dist/{line-item-writes-HSXCO3UM.js.map → line-item-writes-K4BSUEIJ.js.map} +0 -0
  1336. /package/dist/{line-items-LU7VFYJ3.js.map → line-items-DLLEPPIN.js.map} +0 -0
  1337. /package/dist/{link-N4F54R2W.js.map → link-L2KC5EIZ.js.map} +0 -0
  1338. /package/dist/{linkedin-F43WCEFC.js.map → linkedin-A4U6IGZX.js.map} +0 -0
  1339. /package/dist/{list-EXKTPY65.js.map → list-3HOASRXD.js.map} +0 -0
  1340. /package/dist/{list-FGWN66JV.js.map → list-3M6LPVUB.js.map} +0 -0
  1341. /package/dist/{list-IIUY5WTV.js.map → list-C3AQ4TMI.js.map} +0 -0
  1342. /package/dist/{list-H4YHY65J.js.map → list-JKB33W6K.js.map} +0 -0
  1343. /package/dist/{list-QUQ5TUDK.js.map → list-MMRU3ZLP.js.map} +0 -0
  1344. /package/dist/{list-YWEP74CM.js.map → list-PHWCEYCP.js.map} +0 -0
  1345. /package/dist/{list-TY5WZFFE.js.map → list-R3TZDYXS.js.map} +0 -0
  1346. /package/dist/{list-CMCHPFU4.js.map → list-WIYIF2CI.js.map} +0 -0
  1347. /package/dist/{list-MNFGWVNZ.js.map → list-Y4V276ND.js.map} +0 -0
  1348. /package/dist/{locations-N3USZ27M.js.map → locations-EQKMPX4G.js.map} +0 -0
  1349. /package/dist/{locations-S67HBZA7.js.map → locations-MID4EY6D.js.map} +0 -0
  1350. /package/dist/{log-CGQRPLGU.js.map → log-O3I5JZCM.js.map} +0 -0
  1351. /package/dist/{logo-IXIQBWRL.js.map → logo-UJIVQZRI.js.map} +0 -0
  1352. /package/dist/{lookup-NKLRB3NS.js.map → lookup-LWJMDEEL.js.map} +0 -0
  1353. /package/dist/{make-WOO3XWQ2.js.map → make-GLGNEOK6.js.map} +0 -0
  1354. /package/dist/{map-GW7NDNYC.js.map → map-D3EH7S2T.js.map} +0 -0
  1355. /package/dist/{mcp-DUTXWJFC.js.map → mcp-R4ZTYQW7.js.map} +0 -0
  1356. /package/dist/{media-NPMNY5MJ.js.map → media-RTXIJEHY.js.map} +0 -0
  1357. /package/dist/{media-2JCAFWCU.js.map → media-XCTZJIW4.js.map} +0 -0
  1358. /package/dist/{media-sources-J2LY7NLR.js.map → media-sources-TVGS34TE.js.map} +0 -0
  1359. /package/dist/{members-5YUHOWVS.js.map → members-OBA4MXAQ.js.map} +0 -0
  1360. /package/dist/{meme-G2HE54IY.js.map → meme-LVRZR7XL.js.map} +0 -0
  1361. /package/dist/{meta-ACKABP2H.js.map → meta-AHI2HVBM.js.map} +0 -0
  1362. /package/dist/{metrics-ZNQDSBVO.js.map → metrics-35OGYZNY.js.map} +0 -0
  1363. /package/dist/{models-QAR6ZOM3.js.map → models-JQEPSPNQ.js.map} +0 -0
  1364. /package/dist/{normalize-X6GW75LV.js.map → normalize-BREMV3IB.js.map} +0 -0
  1365. /package/dist/{normalize-QP5Z5EYO.js.map → normalize-HU37AR7G.js.map} +0 -0
  1366. /package/dist/{options-743FW5PT.js.map → options-HLMTCEDW.js.map} +0 -0
  1367. /package/dist/{organization-OW6WPRA3.js.map → organization-6ZVXU5JC.js.map} +0 -0
  1368. /package/dist/{output-GAAXGXQS.js.map → output-WTEPRUPE.js.map} +0 -0
  1369. /package/dist/{page-ZA6VOW7F.js.map → page-QEJO3QT6.js.map} +0 -0
  1370. /package/dist/{page-photos-B5775SA4.js.map → page-photos-UUZRIJ4U.js.map} +0 -0
  1371. /package/dist/{pages-Q4LDTTOZ.js.map → pages-J6AF5NDU.js.map} +0 -0
  1372. /package/dist/{performance-F7OHUDYL.js.map → performance-PIB2AXKO.js.map} +0 -0
  1373. /package/dist/{pinterest-SH7Q3BGY.js.map → pinterest-PONS4KLN.js.map} +0 -0
  1374. /package/dist/{pixels-YVOTALZW.js.map → pixels-WHQLX4FV.js.map} +0 -0
  1375. /package/dist/{pixels-CKH6Q2LC.js.map → pixels-ZZTB6NWF.js.map} +0 -0
  1376. /package/dist/{plan-SF3AJ3U3.js.map → plan-O2TTEUIW.js.map} +0 -0
  1377. /package/dist/{posts-JMGQEPWZ.js.map → posts-QAMZRCRY.js.map} +0 -0
  1378. /package/dist/{preview-UJH6FFJV.js.map → preview-BM3NBH53.js.map} +0 -0
  1379. /package/dist/{profile-GE6L5LGA.js.map → profile-T5LAXXFY.js.map} +0 -0
  1380. /package/dist/{promoted-tweet-writes-T2ZN246D.js.map → promoted-tweet-writes-E4EJZM76.js.map} +0 -0
  1381. /package/dist/{promoted-tweets-EW3VXPZU.js.map → promoted-tweets-M44AIHSQ.js.map} +0 -0
  1382. /package/dist/{properties-EJ6ANQZO.js.map → properties-RBLJCVSG.js.map} +0 -0
  1383. /package/dist/{publish-PIUYQKOE.js.map → publish-H7UGB5IP.js.map} +0 -0
  1384. /package/dist/{query-EKMXON7N.js.map → query-BJJYUGQZ.js.map} +0 -0
  1385. /package/dist/{query-D7OVFIC4.js.map → query-KQ675KJZ.js.map} +0 -0
  1386. /package/dist/{query-732XAQUN.js.map → query-ZH5CWI3X.js.map} +0 -0
  1387. /package/dist/{questionnaire-RSAGT4BO.js.map → questionnaire-VE42SW77.js.map} +0 -0
  1388. /package/dist/{read-JQ3OAR7D.js.map → read-QME7JYVF.js.map} +0 -0
  1389. /package/dist/{reddit-33K3IIHG.js.map → reddit-KCPU4RW4.js.map} +0 -0
  1390. /package/dist/{refresh-Q5ZVBWQX.js.map → refresh-E4JU2KR3.js.map} +0 -0
  1391. /package/dist/{refresh-JIJVT3SV.js.map → refresh-WTSCSEQE.js.map} +0 -0
  1392. /package/dist/{release-3MTLVI3Q.js.map → release-SVOT7QVX.js.map} +0 -0
  1393. /package/dist/{relevant-pages-HKF77GO5.js.map → relevant-pages-7KEKKRQ2.js.map} +0 -0
  1394. /package/dist/{remove-T6UJSL5S.js.map → remove-2ISYRP4H.js.map} +0 -0
  1395. /package/dist/{remove-3EIQM4ZN.js.map → remove-TY3AF5K5.js.map} +0 -0
  1396. /package/dist/{reopen-56LN4EDE.js.map → reopen-WCUZMTYE.js.map} +0 -0
  1397. /package/dist/{rerun-FQCYQ5OO.js.map → rerun-FKYNFNSI.js.map} +0 -0
  1398. /package/dist/{research-IU26Y65V.js.map → research-X6ITCPFY.js.map} +0 -0
  1399. /package/dist/{reset-7T3QY4MY.js.map → reset-O77UZD6Z.js.map} +0 -0
  1400. /package/dist/{reset-7L6UNBW6.js.map → reset-TDAMB4BO.js.map} +0 -0
  1401. /package/dist/{resolve-LZGMF3RI.js.map → resolve-NC4MLM42.js.map} +0 -0
  1402. /package/dist/{retry-CCQPI5MS.js.map → retry-QNXWTHOL.js.map} +0 -0
  1403. /package/dist/{retry-EJIMFCPU.js.map → retry-XVUWY7ZH.js.map} +0 -0
  1404. /package/dist/{retry-failed-FTS44UES.js.map → retry-failed-P6KVU263.js.map} +0 -0
  1405. /package/dist/{revenue-3WIZFO4L.js.map → revenue-D3B4DMBC.js.map} +0 -0
  1406. /package/dist/{rule-writes-GOUJ7QDD.js.map → rule-writes-5FFQKSOE.js.map} +0 -0
  1407. /package/dist/{rules-CC4M4WH5.js.map → rules-3FKLSJ5R.js.map} +0 -0
  1408. /package/dist/{rules-TMLFDY6X.js.map → rules-Y3BH7SO5.js.map} +0 -0
  1409. /package/dist/{rules-add-O766M6I5.js.map → rules-add-GSPFBNYU.js.map} +0 -0
  1410. /package/dist/{run-Y7VNP5EE.js.map → run-G6XAJOJ7.js.map} +0 -0
  1411. /package/dist/{run-ZXGD5GAY.js.map → run-ON72O5YS.js.map} +0 -0
  1412. /package/dist/{scaffold-ad-RM7ZUCJQ.js.map → scaffold-ad-YF6FUEJZ.js.map} +0 -0
  1413. /package/dist/{scaffold-static-ad-KLP7UD3Q.js.map → scaffold-static-ad-C2C6NC6Y.js.map} +0 -0
  1414. /package/dist/{scaffold-video-B7KMSBCG.js.map → scaffold-video-BUOCGJNH.js.map} +0 -0
  1415. /package/dist/{schedule-AJDMS4BD.js.map → schedule-7EQLO22N.js.map} +0 -0
  1416. /package/dist/{schedule-NCCNWKDY.js.map → schedule-P6MVM7TK.js.map} +0 -0
  1417. /package/dist/{scheduled-agents-PCS3VL4R.js.map → scheduled-agents-4WCPCMYC.js.map} +0 -0
  1418. /package/dist/{schema-KIA5RJDM.js.map → schema-6Y3IXFDC.js.map} +0 -0
  1419. /package/dist/{schema-ZUOO5D6X.js.map → schema-KM5MFQUQ.js.map} +0 -0
  1420. /package/dist/{scrape-MWW6FBUC.js.map → scrape-ZDBCLPGQ.js.map} +0 -0
  1421. /package/dist/{screenshot-6K7AEO4C.js.map → screenshot-CREF7FB4.js.map} +0 -0
  1422. /package/dist/{search-2VJC4CVT.js.map → search-3OMMKHJB.js.map} +0 -0
  1423. /package/dist/{search-NPL5TN7D.js.map → search-7343MBTZ.js.map} +0 -0
  1424. /package/dist/{search-EUGQ45JM.js.map → search-AHMNQDGC.js.map} +0 -0
  1425. /package/dist/{search-YLKXXAYA.js.map → search-MPY2OGDM.js.map} +0 -0
  1426. /package/dist/{search-RZKZUUZC.js.map → search-WI2L755B.js.map} +0 -0
  1427. /package/dist/{search-L5CMOZA3.js.map → search-YEYQDDLA.js.map} +0 -0
  1428. /package/dist/{search-copy-LC5EPYJG.js.map → search-copy-EMS5PVMK.js.map} +0 -0
  1429. /package/dist/{seeds-JI34P4HA.js.map → seeds-JETCIUR3.js.map} +0 -0
  1430. /package/dist/{select-ZAJH4HZ5.js.map → select-QSGZYOFV.js.map} +0 -0
  1431. /package/dist/{sequences-IIEG46TU.js.map → sequences-2P7UQRQT.js.map} +0 -0
  1432. /package/dist/{set-prompt-6H6JQW3X.js.map → set-prompt-4OTBGPDQ.js.map} +0 -0
  1433. /package/dist/{setup-links-VNEI42A5.js.map → setup-links-E2GARNTU.js.map} +0 -0
  1434. /package/dist/{shared-UNQ3OBEC.js.map → shared-ZFULUOPQ.js.map} +0 -0
  1435. /package/dist/{shopify-TOUT5NTX.js.map → shopify-GT6PJ77M.js.map} +0 -0
  1436. /package/dist/{site-E4EUL77X.js.map → site-TMF2P7JR.js.map} +0 -0
  1437. /package/dist/{sitemaps-R6462TYK.js.map → sitemaps-F3HYH5ZP.js.map} +0 -0
  1438. /package/dist/{sites-BS5SBTVM.js.map → sites-JSMF72BY.js.map} +0 -0
  1439. /package/dist/{skills-7BZQVAEY.js.map → skills-P6CA3YSS.js.map} +0 -0
  1440. /package/dist/{sources-LO3YOOQO.js.map → sources-47LE2UCO.js.map} +0 -0
  1441. /package/dist/{sources-6TCMSLQK.js.map → sources-H6XX2WBO.js.map} +0 -0
  1442. /package/dist/{stale-DWC6547O.js.map → stale-JTX5U752.js.map} +0 -0
  1443. /package/dist/{stats-TVQVRDQS.js.map → stats-LNEQJ42S.js.map} +0 -0
  1444. /package/dist/{status-J4K5HOKZ.js.map → status-3X3MECDY.js.map} +0 -0
  1445. /package/dist/{sticker-IQTULOZN.js.map → sticker-CJ6Y36AO.js.map} +0 -0
  1446. /package/dist/{stock-25YD32HR.js.map → stock-4AQFDZLE.js.map} +0 -0
  1447. /package/dist/{studies-GVNMVY57.js.map → studies-ULLCWJSM.js.map} +0 -0
  1448. /package/dist/{studio-2M2XBR7E.js.map → studio-Z4AJRIGP.js.map} +0 -0
  1449. /package/dist/{study-writes-GHA7REOK.js.map → study-writes-ZAASDTGZ.js.map} +0 -0
  1450. /package/dist/{suggest-6PNUDXOE.js.map → suggest-UIO2RDOC.js.map} +0 -0
  1451. /package/dist/{sync-3HWGVAQV.js.map → sync-GSDC2OK2.js.map} +0 -0
  1452. /package/dist/{sync-4IBJWSBV.js.map → sync-HWTVXGOT.js.map} +0 -0
  1453. /package/dist/{sync-definition-HEASUFK6.js.map → sync-definition-CAPYMYIS.js.map} +0 -0
  1454. /package/dist/{tag-76TTKDKF.js.map → tag-LFYVMDNK.js.map} +0 -0
  1455. /package/dist/{tag-manager-4AJIUX7V.js.map → tag-manager-TU3FBSYO.js.map} +0 -0
  1456. /package/dist/{tags-2XK6ZQI2.js.map → tags-75QCVBQB.js.map} +0 -0
  1457. /package/dist/{tags-QEAH2IRF.js.map → tags-7BT63PUE.js.map} +0 -0
  1458. /package/dist/{tags-ZPBHZBLV.js.map → tags-7K5RSCHI.js.map} +0 -0
  1459. /package/dist/{tags-6LW4FTZ3.js.map → tags-IELH7YAY.js.map} +0 -0
  1460. /package/dist/{tags-XTY5VXDS.js.map → tags-UPA4KKQZ.js.map} +0 -0
  1461. /package/dist/{targeting-7IF7LRXO.js.map → targeting-TKV7XGRQ.js.map} +0 -0
  1462. /package/dist/{targeting-constants-ARGJ3QQV.js.map → targeting-constants-QGZOSY4Q.js.map} +0 -0
  1463. /package/dist/{targeting-criteria-GMWARSTV.js.map → targeting-criteria-HJQ2FW6E.js.map} +0 -0
  1464. /package/dist/{targets-I2WFL6JZ.js.map → targets-CBZ37ALP.js.map} +0 -0
  1465. /package/dist/{terms-YM6UNNYX.js.map → terms-O6ODXEOK.js.map} +0 -0
  1466. /package/dist/{testimonials-DKFN34CI.js.map → testimonials-4W6HI2PQ.js.map} +0 -0
  1467. /package/dist/{themes-XXVYTL54.js.map → themes-RDNVUJHG.js.map} +0 -0
  1468. /package/dist/{top-companies-7C3QZ3Q4.js.map → top-companies-CW77UVK3.js.map} +0 -0
  1469. /package/dist/{translate-W6S6U4EE.js.map → translate-7W7O6W3J.js.map} +0 -0
  1470. /package/dist/{tweets-SGNWR3H5.js.map → tweets-IUINLOXF.js.map} +0 -0
  1471. /package/dist/{unfollow-TMZ76BRA.js.map → unfollow-Z7SCZDPM.js.map} +0 -0
  1472. /package/dist/{unlink-CD7WJQBU.js.map → unlink-RK5V4QO2.js.map} +0 -0
  1473. /package/dist/{unstage-KP5VRZMN.js.map → unstage-5JTGVEB7.js.map} +0 -0
  1474. /package/dist/{unstage-ATF3XNAD.js.map → unstage-QFVL7AZ4.js.map} +0 -0
  1475. /package/dist/{update-K75QQ2GN.js.map → update-5AAMF5JP.js.map} +0 -0
  1476. /package/dist/{update-5MWCI3DR.js.map → update-G2KB3RIW.js.map} +0 -0
  1477. /package/dist/{update-FLNXNPQA.js.map → update-LCE2QN53.js.map} +0 -0
  1478. /package/dist/{update-4EZRHJNR.js.map → update-MCUXTMIZ.js.map} +0 -0
  1479. /package/dist/{update-7XYPACZR.js.map → update-U2ETZHVU.js.map} +0 -0
  1480. /package/dist/{upload-NSSD63IM.js.map → upload-5237F4WV.js.map} +0 -0
  1481. /package/dist/{upload-O4IINV5I.js.map → upload-ORFEAADP.js.map} +0 -0
  1482. /package/dist/{upscale-UXOBILTP.js.map → upscale-KLMXV6JG.js.map} +0 -0
  1483. /package/dist/{url-options-UK244DY7.js.map → url-options-6U7QCTAY.js.map} +0 -0
  1484. /package/dist/{url-params-2SXL2PX4.js.map → url-params-KQIUVVGX.js.map} +0 -0
  1485. /package/dist/{use-F5TRLSNK.js.map → use-J3TZJZ4M.js.map} +0 -0
  1486. /package/dist/{validate-2N3N3ING.js.map → validate-BF656HWM.js.map} +0 -0
  1487. /package/dist/{variant-KLBKFKHB.js.map → variant-NZL2ZMYM.js.map} +0 -0
  1488. /package/dist/{videos-TBYEUE35.js.map → videos-66FB7BPY.js.map} +0 -0
  1489. /package/dist/{view-R64LLT5L.js.map → view-G66NM2IJ.js.map} +0 -0
  1490. /package/dist/{viewer-check-KBF5PCQV.js.map → viewer-check-THBLTL2G.js.map} +0 -0
  1491. /package/dist/{web-TMQHTWRB.js.map → web-2EKHRXCS.js.map} +0 -0
  1492. /package/dist/{winners-VN2EHFDV.js.map → winners-YKLNIUJH.js.map} +0 -0
  1493. /package/dist/{winning-ads-YYBQZJRL.js.map → winning-ads-LW5SMMLB.js.map} +0 -0
  1494. /package/dist/{write-commands-G6423E2M.js.map → write-commands-5J47ZNO4.js.map} +0 -0
  1495. /package/dist/{write-commands-AGKTMDAR.js.map → write-commands-OTWH6BKZ.js.map} +0 -0
  1496. /package/dist/{write-commands-3RLSYXOH.js.map → write-commands-S7AX24WF.js.map} +0 -0
  1497. /package/dist/{write-commands-EZH66GPE.js.map → write-commands-Z556OHHH.js.map} +0 -0
  1498. /package/dist/{x-JGV5D7AV.js.map → x-F5CSO2RN.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../api/src/accounts/crm.ts","../../api/src/accounts/website.ts","../../api/src/accounts/targets.ts"],"sourcesContent":["/**\n * The CRM a client sends Baker itself, for Account insights when Baker cannot\n * read the CRM (Salesforce, Pipedrive, a home-grown one).\n *\n * The client decides what Baker sees: companies and deals only, each field but\n * the id optional, and anything that names a person refused rather than\n * ignored — so a careless export cannot hand over contacts by accident.\n *\n * One judge for every door: the HTTP endpoint, the dashboard's spreadsheet\n * upload and the agent's `baker accounts crm check` all run a record through\n * `judgeCrmBatch`, so the three cannot disagree about what is accepted.\n */\n\nimport { z } from \"zod\";\nimport type { FieldSpec } from \"../event-ingest/fields\";\nimport { INGEST_MODE_HEADER, INGEST_MODES } from \"../event-ingest/mode\";\n\nexport const CRM_DEAL_STATUSES = [\"open\", \"won\", \"lost\"] as const;\nexport type CrmDealStatus = (typeof CRM_DEAL_STATUSES)[number];\n\nconst text = (max: number) => z.string().trim().max(max);\n\n/** A field the record needs, flagged so the rejection reads `missing_field` rather than `invalid_field`. */\nfunction needed(context: z.RefinementCtx, field: string, message: string): void {\n context.addIssue({ code: \"custom\", path: [field], message, params: { missing: true } });\n}\n\n/** `2026-03-15`, with a time and a zone or without; anything looser (`March 5`, `03.04.2026`) is not taken. */\nconst ISO_INSTANT = /^(\\d{4}-\\d{2}-\\d{2})([T ]\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d+)?)?)?(Z|[+-]\\d{2}:?\\d{2})?$/;\n\n/** A day or an instant, as ISO 8601; read as UTC when it has no zone. */\nconst instantSchema = z.string().transform((value, context) => {\n const slashed = /^(\\d{1,2})[/.](\\d{1,2})[/.](\\d{4})$/.exec(value);\n if (slashed) {\n const [, first, second, year] = slashed;\n context.addIssue({\n code: \"custom\",\n message: `${value} could be either day first or month first — write it as ${year}-${second?.padStart(2, \"0\")}-${first?.padStart(2, \"0\")} or ${year}-${first?.padStart(2, \"0\")}-${second?.padStart(2, \"0\")}`,\n });\n return z.NEVER;\n }\n const iso = ISO_INSTANT.exec(value);\n const ms = iso ? Date.parse(`${iso[1]}${iso[2]?.replace(\" \", \"T\") ?? \"T00:00:00\"}${iso[3] ?? \"Z\"}`) : Number.NaN;\n if (!Number.isFinite(ms)) {\n context.addIssue({ code: \"custom\", message: `${value} is not a date — use YYYY-MM-DD or an ISO 8601 time` });\n return z.NEVER;\n }\n return new Date(ms).toISOString();\n});\n\nconst amountSchema = z.union([z.number(), z.string().trim()]).transform((value, context) => {\n const amount = typeof value === \"number\" ? value : Number(value);\n if (!Number.isFinite(amount) || amount < 0 || (typeof value === \"string\" && value === \"\")) {\n context.addIssue({ code: \"custom\", message: `${value} is not an amount — send a number like 12000.50` });\n return z.NEVER;\n }\n return amount;\n});\n\nconst companyFields = z.strictObject({\n id: text(128).optional(),\n name: text(300).optional(),\n domain: text(253).optional(),\n linkedinPage: text(300).optional(),\n deleted: z.boolean().optional(),\n});\n\n/**\n * A company is known by its CRM id — or, for a plain list of target companies\n * with no CRM behind it, by its website or LinkedIn page, which Baker turns\n * into the id (`domain:acme.com`) a deal sent with that website files under.\n */\nconst companySchema = companyFields.superRefine((company, context) => {\n if (company.id || company.domain || company.linkedinPage) return;\n needed(context, \"id\", \"needed — or the company's website or LinkedIn page, to know it by\");\n});\n\nconst dealFields = z.strictObject({\n id: text(128).min(1),\n companyId: text(128).optional(),\n companyDomain: text(253).optional(),\n /** The company's name, for a deal sent with `companyDomain` and no company of its own. */\n companyName: text(300).optional(),\n /** The company's LinkedIn page, likewise — the surest match of all. */\n companyLinkedinPage: text(300).optional(),\n name: text(300).optional(),\n amount: amountSchema.nullable().optional(),\n currency: z\n .string()\n .trim()\n .regex(/^[A-Za-z]{3}$/, \"use a three-letter currency code like EUR\")\n .transform((code) => code.toUpperCase())\n .optional(),\n pipeline: text(128).optional(),\n stage: text(128).optional(),\n status: z.enum(CRM_DEAL_STATUSES).optional(),\n createdAt: instantSchema.optional(),\n closedAt: instantSchema.nullable().optional(),\n deleted: z.boolean().optional(),\n});\n\n/**\n * A deal is dated by when it was created (the pipeline it joined) and, once\n * won or lost, by when it closed (the revenue it became). A deletion needs\n * only its id.\n */\nconst dealSchema = dealFields.superRefine((deal, context) => {\n if (deal.deleted === true) return;\n if (deal.createdAt === undefined) needed(context, \"createdAt\", \"needed — the day the deal was created\");\n if ((deal.status === \"won\" || deal.status === \"lost\") && !deal.closedAt) {\n needed(context, \"closedAt\", \"needed when status is won or lost\");\n }\n});\n\nexport interface CrmCompanyInput {\n /** Empty when the company was sent without one: the store knows it by its website or LinkedIn page. */\n id: string;\n name: string;\n domain: string;\n linkedinPage: string;\n deleted: boolean;\n}\n\nexport interface CrmDealInput {\n id: string;\n companyId: string;\n companyDomain: string;\n companyName: string;\n companyLinkedinPage: string;\n name: string;\n amount: number | null;\n currency: string;\n pipeline: string;\n stage: string;\n status: CrmDealStatus | null;\n createdAt: string | null;\n closedAt: string | null;\n deleted: boolean;\n}\n\nexport const CRM_REJECTION_CODES = [\"personal_data\", \"unknown_field\", \"missing_field\", \"invalid_field\"] as const;\nexport type CrmRejectionCode = (typeof CRM_REJECTION_CODES)[number];\n\nexport interface CrmRejection {\n kind: \"company\" | \"deal\";\n index: number;\n id: string;\n code: CrmRejectionCode;\n message: string;\n}\n\nexport interface JudgedCrmBatch {\n companies: CrmCompanyInput[];\n deals: CrmDealInput[];\n rejected: CrmRejection[];\n}\n\nconst PERSON_FIELD = /e-?mail|phone|mobile|first_?name|last_?name|full_?name|contact|person|owner|address|birth/i;\nconst EMAIL_IN_TEXT = /[^\\s@]+@[^\\s@]+\\.[^\\s@]+/;\n\nconst FIELDS = {\n company: Object.keys(companyFields.shape),\n deal: Object.keys(dealFields.shape),\n} as const;\n\n/** A person in the record: a field named for one, or an email address in any value. */\nfunction personIn(raw: unknown): string | null {\n if (raw === null || typeof raw !== \"object\") return null;\n for (const [field, value] of Object.entries(raw)) {\n if (PERSON_FIELD.test(field)) return `${field} names a person — Baker takes companies and deals, never people`;\n if (typeof value === \"string\" && EMAIL_IN_TEXT.test(value)) {\n return `${field} holds an email address — Baker takes companies and deals, never people`;\n }\n }\n return null;\n}\n\nfunction issueMessage(issue: z.core.$ZodIssue): string {\n const field = issue.path.join(\".\");\n return field === \"\" ? issue.message : `${field}: ${issue.message}`;\n}\n\nfunction rejectionFor(\n kind: \"company\" | \"deal\",\n issues: readonly z.core.$ZodIssue[],\n): Pick<CrmRejection, \"code\" | \"message\"> {\n const unknown = issues.find((issue) => issue.code === \"unrecognized_keys\");\n if (unknown && unknown.code === \"unrecognized_keys\") {\n return {\n code: \"unknown_field\",\n message: `unknown field ${unknown.keys.join(\", \")} — send only ${FIELDS[kind].join(\", \")}`,\n };\n }\n const missing = issues.find(\n (issue) =>\n (issue.code === \"invalid_type\" && issue.input === undefined) ||\n (issue.code === \"custom\" && issue.params?.missing === true),\n );\n return {\n code: missing ? \"missing_field\" : \"invalid_field\",\n message: issues.map(issueMessage).join(\"; \"),\n };\n}\n\nfunction recordId(raw: unknown): string {\n const id = (raw as { id?: unknown } | null)?.id;\n return typeof id === \"string\" ? id : \"\";\n}\n\nfunction judgeRecord<T>(\n kind: \"company\" | \"deal\",\n schema: z.ZodType<T>,\n raw: unknown,\n index: number,\n rejected: CrmRejection[],\n): T | null {\n const base = { kind, index, id: recordId(raw) };\n const person = personIn(raw);\n if (person !== null) {\n rejected.push({ ...base, code: \"personal_data\", message: person });\n return null;\n }\n const parsed = schema.safeParse(raw);\n if (!parsed.success) {\n rejected.push({ ...base, ...rejectionFor(kind, parsed.error.issues) });\n return null;\n }\n return parsed.data;\n}\n\n/** Each record on its own: one bad row is named in `rejected`, and the rest are kept. */\nexport function judgeCrmBatch(batch: { companies?: readonly unknown[]; deals?: readonly unknown[] }): JudgedCrmBatch {\n const judged: JudgedCrmBatch = { companies: [], deals: [], rejected: [] };\n (batch.companies ?? []).forEach((raw, index) => {\n const company = judgeRecord(\"company\", companySchema, raw, index, judged.rejected);\n if (company === null) return;\n judged.companies.push({\n id: company.id ?? \"\",\n name: company.name ?? \"\",\n domain: company.domain ?? \"\",\n linkedinPage: company.linkedinPage ?? \"\",\n deleted: company.deleted === true,\n });\n });\n (batch.deals ?? []).forEach((raw, index) => {\n const deal = judgeRecord(\"deal\", dealSchema, raw, index, judged.rejected);\n if (deal === null) return;\n judged.deals.push({\n id: deal.id,\n companyId: deal.companyId ?? \"\",\n companyDomain: deal.companyDomain ?? \"\",\n companyName: deal.companyName ?? \"\",\n companyLinkedinPage: deal.companyLinkedinPage ?? \"\",\n name: deal.name ?? \"\",\n amount: deal.amount ?? null,\n currency: deal.currency ?? \"\",\n pipeline: deal.pipeline ?? \"\",\n stage: deal.stage ?? \"\",\n status: deal.status ?? null,\n createdAt: deal.createdAt ?? null,\n closedAt: deal.closedAt ?? null,\n deleted: deal.deleted === true,\n });\n });\n return judged;\n}\n\n/**\n * A CSV's separator, read off its header: Excel writes `;` where the decimal\n * mark is a comma, and parsing with several at once would split `12.000,50`.\n */\nexport function sheetDelimiter(text: string): \",\" | \";\" | \"\\t\" {\n const header = text.split(/\\r?\\n/, 1)[0] ?? \"\";\n const count = (mark: string) => header.split(mark).length - 1;\n return ([\",\", \";\", \"\\t\"] as const).reduce((best, mark) => (count(mark) > count(best) ? mark : best), \",\");\n}\n\n/**\n * A spreadsheet amount as the contract takes it: `12,000.50`, `12.000,50` and\n * `12 000` all read as the number they mean — the last separator is the\n * decimal point unless exactly three digits follow it, every other one groups\n * thousands. A linked sheet hands over the raw number a formula left\n * (`110.00000000000001`, `1.5e+21`), which keeps its decimals.\n */\nfunction sheetAmount(cell: string): string {\n if (/^-?\\d+(\\.\\d+)?e[+-]?\\d+$/i.test(cell)) return cell;\n const compact = cell.replace(/[\\s\\u00a0]/g, \"\").replace(/[^\\d.,-]/g, \"\");\n const decimal = /[.,](\\d{1,2}|\\d{4,})$/.exec(compact);\n if (!decimal) return compact.replace(/[.,]/g, \"\");\n const whole = compact.slice(0, decimal.index).replace(/[.,]/g, \"\");\n return `${whole}.${decimal[1]}`;\n}\n\n/** What a spreadsheet holds: one row per deal, or one row per company (an accounts export, a target list). */\nexport type CrmSheetKind = \"deals\" | \"companies\";\n\n/**\n * How much a column matters, in the words a sheet's reader is told: a row\n * without a required one is refused or can never count; a recommended one\n * makes the numbers worth reading; an optional one only labels.\n */\nexport type CrmSheetColumnNeed = \"required\" | \"recommended\" | \"optional\";\n\nexport interface CrmSheetColumn<Field extends string = string> {\n /** The header Baker's templates and the sheets it creates use; a column headed exactly so is read without asking. */\n header: string;\n /** The record field it fills. */\n field: Field;\n need: CrmSheetColumnNeed;\n /** What goes in it, in a line. */\n takes: string;\n /** The condition on a requirement — \"or Company LinkedIn\" — when it is not absolute. */\n note?: string;\n example: string;\n /** A second example row: a closed deal, or a company without an id. */\n example2?: string;\n}\n\n/**\n * Every column a hand-kept sheet has, required ones first — the one list the\n * upload's and the linked sheet's column guides, the templates and the sheet\n * Baker creates are all drawn from, so none of them can disagree about what\n * is needed.\n */\nexport const CRM_SHEET_COLUMNS: {\n readonly deals: readonly CrmSheetColumn<CrmColumnField>[];\n readonly companies: readonly CrmSheetColumn<CrmCompanyField>[];\n} = {\n deals: [\n {\n header: \"Deal ID\",\n field: \"id\",\n need: \"required\",\n takes: \"Your CRM's id for the deal. The same id again updates the row instead of adding one.\",\n example: \"deal-001\",\n example2: \"deal-002\",\n },\n {\n header: \"Created date\",\n field: \"createdAt\",\n need: \"required\",\n takes: \"The day the deal was created, like 2026-06-15. It dates the deal as pipeline.\",\n example: \"2026-06-15\",\n example2: \"2026-02-01\",\n },\n {\n header: \"Website\",\n field: \"companyDomain\",\n need: \"required\",\n takes:\n \"The website of the deal's company, like acme.com. It is how Baker finds the company among those your ads reached.\",\n note: \"or Company LinkedIn\",\n example: \"acme.com\",\n example2: \"globex.com\",\n },\n {\n header: \"Amount\",\n field: \"amount\",\n need: \"recommended\",\n takes: \"The deal's value, like 24000. Without it the deal counts but adds no value.\",\n example: \"24000\",\n example2: \"8000\",\n },\n {\n header: \"Currency\",\n field: \"currency\",\n need: \"recommended\",\n takes: \"Three letters: EUR, USD, GBP…\",\n example: \"EUR\",\n example2: \"EUR\",\n },\n {\n header: \"Status\",\n field: \"status\",\n need: \"recommended\",\n takes: \"open, won or lost. Without it, you choose which stages mean won and lost.\",\n example: \"open\",\n example2: \"won\",\n },\n {\n header: \"Close date\",\n field: \"closedAt\",\n need: \"recommended\",\n takes: \"The day it was won or lost. Needed once Status is won or lost.\",\n example: \"\",\n example2: \"2026-04-20\",\n },\n {\n header: \"Company\",\n field: \"companyName\",\n need: \"optional\",\n takes: \"The company's name, as the Accounts screen shows it.\",\n example: \"Acme Inc\",\n example2: \"Globex\",\n },\n {\n header: \"Company LinkedIn\",\n field: \"companyLinkedinPage\",\n need: \"optional\",\n takes: \"The company's LinkedIn page. The surest match of all, and enough without a Website.\",\n example: \"https://www.linkedin.com/company/acme-inc\",\n example2: \"\",\n },\n {\n header: \"Deal name\",\n field: \"name\",\n need: \"optional\",\n takes: \"The deal's name.\",\n example: \"Acme annual plan\",\n example2: \"Globex pilot\",\n },\n {\n header: \"Pipeline\",\n field: \"pipeline\",\n need: \"optional\",\n takes: \"Its pipeline, if you use several.\",\n example: \"Sales\",\n example2: \"Sales\",\n },\n {\n header: \"Stage\",\n field: \"stage\",\n need: \"optional\",\n takes: \"Its stage.\",\n example: \"Proposal\",\n example2: \"Closed Won\",\n },\n ],\n companies: [\n {\n header: \"Website\",\n field: \"domain\",\n need: \"required\",\n takes: \"The company's website, like acme.com. It is how Baker finds the company among those your ads reached.\",\n note: \"or LinkedIn page\",\n example: \"acme.com\",\n example2: \"globex.com\",\n },\n {\n header: \"Company name\",\n field: \"name\",\n need: \"recommended\",\n takes: \"The company's name, as the Accounts screen shows it.\",\n example: \"Acme Inc\",\n example2: \"Globex\",\n },\n {\n header: \"LinkedIn page\",\n field: \"linkedinPage\",\n need: \"optional\",\n takes: \"The company's LinkedIn page. The surest match of all, and enough without a Website.\",\n example: \"https://www.linkedin.com/company/acme-inc\",\n example2: \"\",\n },\n {\n header: \"Company ID\",\n field: \"id\",\n need: \"optional\",\n takes: \"Your CRM's id for the company. Only needed when your deals name their company by this id.\",\n example: \"acct-001\",\n example2: \"\",\n },\n ],\n};\n\nfunction sheetTemplate(columns: readonly CrmSheetColumn[]): string {\n return [\n columns.map((column) => column.header).join(\",\"),\n columns.map((column) => column.example).join(\",\"),\n columns.map((column) => column.example2 ?? \"\").join(\",\"),\n \"\",\n ].join(\"\\n\");\n}\n\n/** A sheet to fill in, for a client exporting by hand: every column Baker reads, and two example rows. */\nexport const CRM_SHEET_TEMPLATE = sheetTemplate(CRM_SHEET_COLUMNS.deals);\n\n/**\n * A company list to fill in: a CRM's accounts, or simply the companies the\n * client sells to. The id is optional — a company without one is known by its\n * website, so a deals sheet naming the same website lands on it.\n */\nexport const CRM_COMPANY_SHEET_TEMPLATE = sheetTemplate(CRM_SHEET_COLUMNS.companies);\n\nexport interface CrmSheet {\n kind: CrmSheetKind;\n batch: { companies?: Array<Record<string, string>>; deals?: Array<Record<string, string>> };\n /** Columns the sheet has that Baker does not take — left behind, never sent. */\n ignoredColumns: string[];\n}\n\nconst DATE_FIELDS = new Set([\"createdAt\", \"closedAt\"]);\nconst SLASHED_DAY = /^(\\d{1,2})[/.](\\d{1,2})[/.](\\d{4})$/;\n/** Google Sheets' and Excel's day count starts here: 1 is 31 December 1899. */\nconst SHEET_EPOCH_MS = Date.UTC(1899, 11, 30);\nconst DAY_MS = 86_400_000;\n\n/** How a column writes `12/03/2026`: told by any day past 12 in it; null while every one could be either. */\nfunction slashOrder(cells: readonly string[]): \"dmy\" | \"mdy\" | null {\n for (const cell of cells) {\n const parts = SLASHED_DAY.exec(cell);\n if (!parts) continue;\n if (Number(parts[1]) > 12) return \"dmy\";\n if (Number(parts[2]) > 12) return \"mdy\";\n }\n return null;\n}\n\n/**\n * A spreadsheet's day as the contract takes it: a Sheets or Excel day number\n * (46096, what a date cell holds) or `15/03/2026` / `03/15/2026`, read the way\n * the rest of its column shows. A column whose every day could be either is\n * left as written, and the judge asks for YYYY-MM-DD.\n */\nfunction sheetDate(cell: string, order: \"dmy\" | \"mdy\" | null): string {\n if (/^\\d{5}(\\.\\d+)?$/.test(cell)) {\n return new Date(SHEET_EPOCH_MS + Math.round(Number(cell) * DAY_MS)).toISOString().slice(0, 10);\n }\n const parts = SLASHED_DAY.exec(cell);\n if (!parts || order === null) return cell;\n const [, first = \"\", second = \"\", year] = parts;\n const [day, month] = order === \"dmy\" ? [first, second] : [second, first];\n return `${year}-${month.padStart(2, \"0\")}-${day.padStart(2, \"0\")}`;\n}\n\nfunction sheetCell(field: string, cell: string, order: \"dmy\" | \"mdy\" | null): string {\n if (field === \"amount\") return sheetAmount(cell);\n if (field === \"status\") return cell.toLowerCase();\n if (DATE_FIELDS.has(field)) return sheetDate(cell, order);\n return cell;\n}\n\nfunction sheetRecords(\n rows: ReadonlyArray<Record<string, string>>,\n columns: Readonly<Record<string, string>>,\n): Array<Record<string, string>> {\n const cells = (field: string) =>\n rows.flatMap((row) =>\n Object.entries(row)\n .filter(([column]) => columns[column] === field)\n .map(([, cell]) => String(cell ?? \"\").trim()),\n );\n const order = slashOrder([...DATE_FIELDS].flatMap(cells));\n return rows.map((row) => {\n const record: Record<string, string> = {};\n for (const [column, raw] of Object.entries(row)) {\n const field = columns[column];\n const cell = String(raw ?? \"\").trim();\n if (field === undefined || cell === \"\" || record[field] !== undefined) continue;\n record[field] = sheetCell(field, cell, order);\n }\n return record;\n });\n}\n\n/** Every header a sheet's rows carry, in order. */\nexport function sheetHeaders(rows: ReadonlyArray<Record<string, string>>): string[] {\n return [...new Set(rows.flatMap((row) => Object.keys(row)))];\n}\n\n/** Cells shown beside a header when what it holds is asked: the first few different ones, which stay put as rows are added. */\nconst SAMPLES_PER_COLUMN = 3;\n\n/** Each column with a few of its cells, so a header in any wording can be read by what it holds. */\nexport function sheetColumnSamples(\n rows: ReadonlyArray<Record<string, string>>,\n): Array<{ header: string; samples: string[] }> {\n return sheetHeaders(rows).map((header) => {\n const samples: string[] = [];\n for (const row of rows) {\n const cell = String(row[header] ?? \"\").trim();\n if (cell !== \"\" && !samples.includes(cell)) samples.push(cell);\n if (samples.length === SAMPLES_PER_COLUMN) break;\n }\n return { header, samples };\n });\n}\n\n/**\n * A column's meaning, in a deal's fields — the words any sheet's columns are\n * read in, a company list's included: a company list's columns are the deal's\n * company fields (`companyDomain` is its `domain`).\n */\nexport const CRM_COLUMN_FIELDS = [\n \"id\",\n \"name\",\n \"companyId\",\n \"companyName\",\n \"companyDomain\",\n \"companyLinkedinPage\",\n \"amount\",\n \"currency\",\n \"pipeline\",\n \"stage\",\n \"status\",\n \"createdAt\",\n \"closedAt\",\n] as const satisfies readonly (keyof z.infer<typeof dealFields>)[];\nexport type CrmColumnField = (typeof CRM_COLUMN_FIELDS)[number];\nexport type CrmCompanyField = Exclude<keyof z.infer<typeof companyFields>, \"deleted\">;\n\n/** What a sheet holds and the field each column fills; a column not in `columns` is left behind. */\nexport interface CrmColumnReading {\n kind: CrmSheetKind;\n /** Header → the field of `kind`'s record it fills. */\n columns: Readonly<Record<string, string>>;\n}\n\n/** A company's field as a deal names it. */\nconst COMPANY_AS_DEAL: Readonly<Record<CrmCompanyField, CrmColumnField>> = {\n id: \"companyId\",\n name: \"companyName\",\n domain: \"companyDomain\",\n linkedinPage: \"companyLinkedinPage\",\n};\nconst COMPANY_FIELD: Partial<Record<CrmColumnField, CrmCompanyField>> = {\n companyId: \"id\",\n companyName: \"name\",\n companyDomain: \"domain\",\n companyLinkedinPage: \"linkedinPage\",\n};\n\n/** Fields only a deal has: a sheet with any of them holds deals. A created date does not decide it — companies have one too. */\nconst DEAL_ONLY: ReadonlySet<CrmColumnField> = new Set([\n \"id\",\n \"name\",\n \"amount\",\n \"pipeline\",\n \"stage\",\n \"status\",\n \"closedAt\",\n]);\n\n/** Baker's own names for a column, compared without case, spaces or punctuation — but with every letter, in any script. */\nconst headerKey = (header: string) => header.toLowerCase().replace(/[^\\p{L}\\p{N}]/gu, \"\");\n\n/** `id` and `name` are both records' own fields, so a column called just that is the deal's or the company's by what the sheet holds. */\nconst SHARED_NAMES: ReadonlySet<string> = new Set([\"id\", \"name\"]);\nconst isSharedName = (header: string) => SHARED_NAMES.has(headerKey(header));\n\n/**\n * The headers that are Baker's own contract strings — a template's header\n * (\"Deal ID\", \"Created date\") or a field's name (\"createdAt\", \"domain\") — and\n * what they mean. Not a list of the names CRMs give columns: every other\n * header is read by what it says and holds (`mapCrmColumns` in the backend).\n */\nconst EXACT: ReadonlyMap<string, CrmColumnField> = new Map<string, CrmColumnField>([\n ...CRM_COLUMN_FIELDS.map((field): [string, CrmColumnField] => [headerKey(field), field]),\n [headerKey(\"domain\"), \"companyDomain\"],\n [headerKey(\"linkedinPage\"), \"companyLinkedinPage\"],\n ...CRM_SHEET_COLUMNS.deals.map((column): [string, CrmColumnField] => [headerKey(column.header), column.field]),\n ...CRM_SHEET_COLUMNS.companies.map((column): [string, CrmColumnField] => [\n headerKey(column.header),\n COMPANY_AS_DEAL[column.field],\n ]),\n]);\n\n/** The headers that are Baker's own names, and the field each means; every other header is absent. */\nexport function exactCrmColumns(headers: readonly string[]): Record<string, CrmColumnField> {\n const meanings: Record<string, CrmColumnField> = {};\n for (const header of headers) {\n const field = EXACT.get(headerKey(header));\n if (field !== undefined) meanings[header] = field;\n }\n return meanings;\n}\n\n/**\n * Deals or companies, and each column's field in that record, from what each\n * column means: deals when any column is a field only a deal has, or as\n * `kind` says. A meaning the record has no field for (a deal's amount in a\n * company list) leaves its column behind.\n */\nexport function crmColumnReading(\n meanings: Readonly<Record<string, CrmColumnField>>,\n kind?: CrmSheetKind,\n): CrmColumnReading {\n const entries = Object.entries(meanings);\n const read =\n kind ?? (entries.some(([header, field]) => DEAL_ONLY.has(field) && !isSharedName(header)) ? \"deals\" : \"companies\");\n const columns: Record<string, string> = {};\n for (const [header, field] of entries) {\n const target = read === \"deals\" ? field : isSharedName(header) ? field : COMPANY_FIELD[field];\n if (target !== undefined) columns[header] = target;\n }\n return { kind: read, columns };\n}\n\n/**\n * A spreadsheet from any CRM — a deals export or a company list — as a batch\n * the judge reads, each column filling the field `reading` gives it. Without\n * one, or with only a kind, only Baker's own headers are read. Every other\n * column is left behind, so a sheet with owners' emails in it sends no email.\n */\nexport function crmBatchFromSheet(\n rows: ReadonlyArray<Record<string, string>>,\n reading?: CrmColumnReading | CrmSheetKind,\n): CrmSheet {\n const headers = sheetHeaders(rows);\n const { kind, columns } = typeof reading === \"object\" ? reading : crmColumnReading(exactCrmColumns(headers), reading);\n const records = sheetRecords(rows, columns);\n return {\n kind,\n batch: kind === \"deals\" ? { deals: records } : { companies: records },\n ignoredColumns: headers.filter((header) => columns[header] === undefined),\n };\n}\n\n// ---------------------------------------------------------------------------\n// The wire: where a client's system sends, and what it hears back\n// ---------------------------------------------------------------------------\n\nexport const CRM_PUSH_PATH = \"/v1/accounts/crm\";\n\n/** Companies and deals together, per request. */\nexport const CRM_PUSH_BATCH_MAX = 500;\n\n/** The address to show a developer: the branded host when there is one, the Convex site otherwise. */\nexport function crmPushUrl(brandedUrl: string | undefined, convexSiteUrl: string): string {\n return `${(brandedUrl || convexSiteUrl).replace(/\\/$/, \"\")}${CRM_PUSH_PATH}`;\n}\n\n/**\n * The body's structure only; every record is judged on its own by\n * `judgeCrmBatch`, so one bad row never takes the batch down.\n */\nexport const crmPushRequestSchema = z\n .strictObject({\n companies: z.array(z.unknown()).optional(),\n deals: z.array(z.unknown()).optional(),\n })\n .refine((body) => (body.companies?.length ?? 0) + (body.deals?.length ?? 0) > 0, {\n message: \"send at least one company or deal\",\n })\n .refine((body) => (body.companies?.length ?? 0) + (body.deals?.length ?? 0) <= CRM_PUSH_BATCH_MAX, {\n message: `at most ${CRM_PUSH_BATCH_MAX} companies and deals per request — split the batch`,\n });\nexport type CrmPushRequest = z.infer<typeof crmPushRequestSchema>;\n\nexport const crmRejectionSchema = z.object({\n kind: z.enum([\"company\", \"deal\"]),\n index: z.number().int().nonnegative(),\n id: z.string(),\n code: z.enum(CRM_REJECTION_CODES),\n message: z.string(),\n});\n\nexport const crmPushResponseSchema = z.object({\n /** Echoed from `X-Baker-Mode`: a `test` request is judged in full and stores nothing. */\n mode: z.enum(INGEST_MODES),\n received: z.object({ companies: z.number().int(), deals: z.number().int() }),\n /** Passed the checks: stored in a live send, only judged in a test. */\n accepted: z.object({ companies: z.number().int(), deals: z.number().int() }),\n deleted: z.object({ companies: z.number().int(), deals: z.number().int() }),\n rejected: z.array(crmRejectionSchema),\n});\nexport type CrmPushResponse = z.infer<typeof crmPushResponseSchema>;\n\n/** What a sent CRM holds now, per pipeline and stage — what the setup shows and won/lost is chosen from. */\nexport const crmContentsSchema = z.object({\n companies: z.number().int(),\n deals: z.number().int(),\n stages: z.array(\n z.object({\n pipeline: z.string(),\n stage: z.string(),\n deals: z.number().int(),\n /** Sent as `status: won`. */\n won: z.number().int(),\n /** Sent as `status: lost`. */\n lost: z.number().int(),\n }),\n ),\n});\nexport type CrmContents = z.infer<typeof crmContentsSchema>;\n\n/** How a send arrived: their system posting, a person's upload, or a linked Google Sheet Baker read. */\nexport const CRM_SEND_VIAS = [\"api\", \"upload\", \"sheet\"] as const;\nexport type CrmSendVia = (typeof CRM_SEND_VIAS)[number];\n\nexport const crmPushSummarySchema = z.object({\n at: z.number(),\n via: z.enum(CRM_SEND_VIAS),\n companies: z.number().int(),\n deals: z.number().int(),\n deleted: z.number().int(),\n rejected: z.number().int(),\n samples: z.array(\n z.object({ kind: z.enum([\"company\", \"deal\"]), id: z.string(), code: z.string(), message: z.string() }),\n ),\n});\n\n/** A linked sheet's address in Google Sheets. */\nexport const spreadsheetUrl = (spreadsheetId: string) =>\n `https://docs.google.com/spreadsheets/d/${encodeURIComponent(spreadsheetId)}/edit`;\n\n/**\n * A Google Sheet the client linked: Baker reads it again every night and when\n * asked, and it is the whole truth for what it brought — a row gone from the\n * sheet is gone from Baker.\n */\nexport const crmSheetLinkSchema = z.object({\n id: z.string(),\n spreadsheetName: z.string(),\n /** Where the sheet opens — for a person, or a scenario that writes its rows. */\n url: z.string().optional(),\n tab: z.string(),\n kind: z.enum([\"deals\", \"companies\"]),\n lastRead: z\n .object({\n at: z.number(),\n ok: z.boolean(),\n companies: z.number().int(),\n deals: z.number().int(),\n /** Records the sheet no longer has, removed from Baker. */\n removed: z.number().int(),\n rejected: z.number().int(),\n /** Why the read failed or what was held back, in words. */\n message: z.string().optional(),\n })\n .nullable(),\n});\nexport type CrmSheetLink = z.infer<typeof crmSheetLinkSchema>;\n\n/** Linked sheets per company; each read is one Google request and a store write. */\nexport const CRM_SHEET_LINKS_MAX = 5;\n\n/** `baker accounts crm status`: where deals come from, what arrived last, what the store holds. */\nexport const accountsCrmStatusResponseSchema = z.object({\n ok: z.literal(true),\n data: z.object({\n /**\n * Always true, for CLIs from when Account insights was a per-company\n * switch: they read its absence as \"switched off\". Drop it once no\n * Runtime runs one of them.\n */\n enabled: z.literal(true).optional(),\n /** `hubspot` (Baker reads it), `api` (the client sends it), or null before anyone chose. */\n source: z.enum([\"hubspot\", \"api\"]).nullable(),\n /** Where a client's system sends. */\n url: z.string(),\n lastLive: crmPushSummarySchema.nullable(),\n lastTest: crmPushSummarySchema.nullable(),\n /** Google Sheets Baker reads every night, with how the last read went. */\n sheets: z.array(crmSheetLinkSchema),\n /** What the sent CRM holds; null unless the source is `api`. */\n contents: crmContentsSchema.nullable(),\n }),\n});\nexport type AccountsCrmStatusResponse = z.infer<typeof accountsCrmStatusResponseSchema>;\n\n/** `baker accounts crm sheet`: the deals sheet for LinkedIn's Account insights, made in the client's Google Drive. */\nexport const accountsCrmSheetRequestSchema = z.object({\n /** The Google Drive connection to make it with, when the company has more than one. */\n account: z.string().optional(),\n});\nexport type AccountsCrmSheetRequest = z.infer<typeof accountsCrmSheetRequestSchema>;\n\nexport const accountsCrmSheetResponseSchema = z.object({\n ok: z.literal(true),\n data: z.object({\n /** False when the company already had the sheet: it is handed back, never made twice. */\n created: z.boolean(),\n spreadsheetName: z.string(),\n url: z.string(),\n tabs: z.array(z.string()),\n }),\n});\nexport type AccountsCrmSheetResponse = z.infer<typeof accountsCrmSheetResponseSchema>;\n\n/** What the curl sends: one company, one deal of it — the shortest body that reads as a real one. */\nexport const CRM_PUSH_EXAMPLE = {\n companies: [{ id: \"acct-001\", name: \"Acme Inc\", domain: \"acme.com\", linkedinPage: \"acme-inc\" }],\n deals: [\n {\n id: \"deal-001\",\n companyId: \"acct-001\",\n name: \"Acme — annual plan\",\n amount: 24000,\n currency: \"EUR\",\n stage: \"Proposal\",\n status: \"open\",\n createdAt: \"2026-06-15\",\n },\n ],\n} as const;\n\nconst MODE_HINT = `\\n# Check it first: add -H '${INGEST_MODE_HEADER}: test' — judged the same way, nothing stored.`;\n\nexport function crmPushCurl(url: string, apiKey: string): string {\n return (\n [\n `curl -X POST ${url} \\\\`,\n ` -H 'Authorization: Bearer ${apiKey}' \\\\`,\n ` -H 'Content-Type: application/json' \\\\`,\n ` -d '${JSON.stringify(CRM_PUSH_EXAMPLE)}'`,\n ].join(\"\\n\") + MODE_HINT\n );\n}\n\nconst PEOPLE_NOTE = \"Anything naming a person — a contact, an owner, an email or phone — is refused, never stored.\";\n\nexport const CRM_COMPANY_FIELDS: readonly FieldSpec[] = [\n {\n name: \"id\",\n need: \"conditional\",\n takes: \"Your CRM's id for the company (1–128 characters).\",\n note: \"Without one, Baker knows the company by its domain (or LinkedIn page) — fine for a plain list of target companies.\",\n },\n { name: \"name\", need: \"optional\", takes: \"The company's name, as the Accounts screen shows it.\" },\n {\n name: \"domain\",\n need: \"optional\",\n takes: \"Its website — acme.com or https://www.acme.com both work.\",\n note: \"The main way a company is matched to the LinkedIn companies your ads reached. Send it whenever you have it.\",\n },\n {\n name: \"linkedinPage\",\n need: \"optional\",\n takes: \"Its LinkedIn page: the URL or the part after /company/.\",\n note: \"The surest match of all when the website is shared or missing.\",\n },\n { name: \"deleted\", need: \"optional\", takes: \"true to remove a company sent before. Only the id is needed.\" },\n];\n\nexport const CRM_DEAL_FIELDS: readonly FieldSpec[] = [\n {\n name: \"id\",\n need: \"required\",\n takes: \"Your CRM's id for the deal (1–128 characters). Sending it again updates it.\",\n },\n {\n name: \"createdAt\",\n need: \"required\",\n takes: \"The day it was created: 2026-06-15 or an ISO 8601 time.\",\n note: \"What dates it as pipeline.\",\n },\n {\n name: \"companyId\",\n need: \"conditional\",\n takes: \"The id of its company, as sent in companies.\",\n note: \"Or send companyDomain (and companyName) instead and skip companies altogether. Use one way consistently. A deal with neither is kept but cannot be influenced.\",\n },\n { name: \"companyDomain\", need: \"conditional\", takes: \"Its company's website, when you send no companies.\" },\n { name: \"companyName\", need: \"optional\", takes: \"Its company's name, with companyDomain.\" },\n {\n name: \"companyLinkedinPage\",\n need: \"optional\",\n takes: \"Its company's LinkedIn page, with companyDomain: the surest match.\",\n },\n { name: \"name\", need: \"optional\", takes: \"The deal's name.\" },\n {\n name: \"amount\",\n need: \"optional\",\n takes: 'Its value: 24000 or \"24000.00\". Left out, the deal counts but adds no value.',\n },\n { name: \"currency\", need: \"optional\", takes: \"Three letters: EUR, USD, GBP…\" },\n { name: \"pipeline\", need: \"optional\", takes: \"Its pipeline's name or id, if you use several.\" },\n { name: \"stage\", need: \"optional\", takes: \"Its stage's name or id.\" },\n {\n name: \"status\",\n need: \"optional\",\n takes: \"open, won or lost.\",\n note: \"Send it and Baker needs nothing else to tell won from lost. Without it, choose which stages mean won and lost in Measure → Accounts.\",\n },\n {\n name: \"closedAt\",\n need: \"conditional\",\n takes: \"The day it was won or lost.\",\n note: \"Needed when status is won or lost: it dates the revenue.\",\n },\n { name: \"deleted\", need: \"optional\", takes: \"true to remove a deal sent before. Only the id is needed.\" },\n];\n\nexport const CRM_RESPONSE_FIELDS: readonly FieldSpec[] = [\n { name: \"mode\", need: \"required\", takes: \"live or test, echoed from X-Baker-Mode.\" },\n { name: \"received\", need: \"required\", takes: \"How many companies and deals arrived.\" },\n { name: \"accepted\", need: \"required\", takes: \"How many passed the checks — stored, unless it was a test.\" },\n { name: \"deleted\", need: \"required\", takes: \"How many removals were accepted.\" },\n {\n name: \"rejected\",\n need: \"required\",\n takes: \"Each refused record: kind, index, id, code and a message saying what to fix.\",\n note: `Codes: ${CRM_REJECTION_CODES.join(\", \")}. ${PEOPLE_NOTE}`,\n },\n];\n\nfunction fieldTable(fields: readonly FieldSpec[]): string {\n return [\n \"| Field | Need | Takes |\",\n \"| --- | --- | --- |\",\n ...fields.map(\n (field) => `| \\`${field.name}\\` | ${field.need} | ${field.takes}${field.note ? ` ${field.note}` : \"\"} |`,\n ),\n ].join(\"\\n\");\n}\n\n/**\n * The whole contract as Markdown, for a developer or their coding assistant —\n * the same tables the dashboard draws, so the two cannot drift.\n */\nexport function crmPushBrief(url: string): string {\n return `# Sending your CRM to Baker\n\nBaker compares the companies your LinkedIn ads reached with your deals. When Baker cannot read\nyour CRM itself, your system sends the companies and deals here — only what you choose to send.\n\n\\`POST ${url}\\` with \\`Authorization: Bearer <key>\\` and \\`Content-Type: application/json\\`.\n\n1. **Use a key that can only send CRM data.** Create it in Baker → Measure → Accounts → Deal\n settings (or Settings → API keys, \"Sending CRM data only\"). Never put it in source or a chat;\n read it from an environment variable.\n2. **Send \\`${INGEST_MODE_HEADER}: test\\` while you build.** It is judged exactly the same way and\n stores nothing.\n3. **Send everything once, then what changes.** Sending a record again with the same \\`id\\`\n updates it; \\`\"deleted\": true\\` removes it. Up to ${CRM_PUSH_BATCH_MAX} records per request; a\n nightly job of your deals changed since the last run is plenty.\n4. **Companies and deals only.** ${PEOPLE_NOTE}\n\nBody: \\`{ \"companies\": [ … ], \"deals\": [ … ] }\\` — either list may be left out.\n\n## Companies\n\n${fieldTable(CRM_COMPANY_FIELDS)}\n\n## Deals\n\n${fieldTable(CRM_DEAL_FIELDS)}\n\n## The answer\n\nA \\`200\\` with \\`{ \"ok\": true, \"data\": { … } }\\`. One bad record never refuses the others: read\n\\`rejected\\`.\n\n${fieldTable(CRM_RESPONSE_FIELDS)}\n\n## Example\n\n\\`\\`\\`json\n${JSON.stringify(CRM_PUSH_EXAMPLE, null, 2)}\n\\`\\`\\`\n`;\n}\n","/**\n * A company website reduced to the registrable domain Account insights joins\n * on — the one rule for a LinkedIn page's website, a CRM company's domain and\n * a target-account list, so the three meet on equality.\n */\n\nimport { parse as parseDomain } from \"tldts\";\n\nexport type OrgDomainSource = \"website\" | \"subdomain\" | \"none\";\n\nexport interface OrgWebsiteDomain {\n domain: string | null;\n host: string | null;\n domainSource: OrgDomainSource;\n}\n\n/** Link shorteners and redirectors — their domain is never the org's own. */\nconst REDIRECTOR_DOMAINS: ReadonlySet<string> = new Set([\"goo.gle\", \"bit.ly\", \"lnkd.in\", \"t.co\", \"ow.ly\", \"linktr.ee\"]);\n/** Whole TLDs used for vanity redirects (`figma.bot/…`). */\nconst REDIRECTOR_SUFFIXES: ReadonlySet<string> = new Set([\"bot\"]);\n\n/**\n * Reduce an org's LinkedIn `localizedWebsite` to the registrable domain a CRM\n * would store. Never follows redirects — the URL is read, not fetched.\n */\nexport function normalizeOrgWebsite(website: string | undefined): OrgWebsiteDomain {\n const parsed = parseDomain(website ?? \"\");\n if (\n parsed.domain === null ||\n REDIRECTOR_DOMAINS.has(parsed.domain) ||\n REDIRECTOR_SUFFIXES.has(parsed.publicSuffix ?? \"\")\n ) {\n return { domain: null, host: parsed.hostname, domainSource: \"none\" };\n }\n const subdomain = parsed.subdomain ?? \"\";\n const domainSource = subdomain === \"\" || subdomain === \"www\" ? \"website\" : \"subdomain\";\n return { domain: parsed.domain, host: parsed.hostname, domainSource };\n}\n\n/** A registrable domain, reduced exactly as a LinkedIn website is; empty when it is not one. */\nexport function registrableWebsite(website: string): string {\n return website === \"\" ? \"\" : (normalizeOrgWebsite(website.toLowerCase()).domain ?? \"\");\n}\n","/**\n * Target accounts — the companies an ABM program names, with their tier — as\n * `baker accounts … --targets` sends them and the reports answer for them. A\n * target is its registrable website domain, reduced exactly as a LinkedIn\n * page's website is (`website.ts`), so it meets the report rows on equality.\n */\n\nimport { z } from \"zod\";\nimport { registrableWebsite } from \"./website\";\n\n/** The most targets one read takes — the most companies one engagement read returns. */\nexport const TARGET_ACCOUNTS_MAX = 5000;\n\nexport const targetAccountSchema = z.object({\n /** Registrable domain: `acme.com`, never `www.acme.com/about`. */\n domain: z.string().min(1),\n name: z.string().optional(),\n tier: z.string().optional(),\n});\nexport type TargetAccount = z.infer<typeof targetAccountSchema>;\n\nexport const targetAccountsSchema = z.array(targetAccountSchema).min(1).max(TARGET_ACCOUNTS_MAX);\n\nfunction optionalText(value: unknown): string | undefined {\n if (typeof value === \"number\" && Number.isFinite(value)) return String(value);\n return typeof value === \"string\" && value.trim() !== \"\" ? value.trim() : undefined;\n}\n\n/**\n * The targets a list names, each once (the first entry for a domain wins), and\n * the domains that do not reduce to a website — said back, never guessed.\n */\nexport function targetAccountsFrom(entries: ReadonlyArray<{ domain?: unknown; name?: unknown; tier?: unknown }>): {\n targets: TargetAccount[];\n unreadable: string[];\n} {\n const targets = new Map<string, TargetAccount>();\n const unreadable: string[] = [];\n for (const entry of entries) {\n const raw = typeof entry.domain === \"string\" ? entry.domain.trim() : \"\";\n const domain = registrableWebsite(raw);\n if (domain === \"\") {\n unreadable.push(raw);\n continue;\n }\n if (targets.has(domain)) continue;\n const name = optionalText(entry.name);\n const tier = optionalText(entry.tier);\n targets.set(domain, { domain, ...(name ? { name } : {}), ...(tier ? { tier } : {}) });\n }\n return { targets: [...targets.values()], unreadable };\n}\n\nconst tierCountsSchema = z.object({ total: z.number(), reached: z.number(), engaged: z.number() });\ntype TierCounts = z.infer<typeof tierCountsSchema>;\n\n/**\n * How far the ads got with the targets in the period: reached (any LinkedIn\n * page of the company saw an ad), engaged (any of them engaged), per tier\n * when the list names tiers, and the targets never reached.\n */\nexport const targetsSummarySchema = tierCountsSchema.extend({\n notReached: z.array(targetAccountSchema),\n byTier: z.record(z.string(), tierCountsSchema).optional(),\n});\nexport type TargetsSummary = z.infer<typeof targetsSummarySchema>;\n\n/** Whether any LinkedIn page of each reached domain engaged. */\nfunction engagedByDomain(rows: ReadonlyArray<{ domain: string; engagements: number }>): Map<string, boolean> {\n const engaged = new Map<string, boolean>();\n for (const row of rows) {\n if (row.domain !== \"\") engaged.set(row.domain, (engaged.get(row.domain) ?? false) || row.engagements > 0);\n }\n return engaged;\n}\n\n/** `engaged` undefined: never reached. */\nfunction count(counts: TierCounts, engaged: boolean | undefined): void {\n counts.total += 1;\n if (engaged !== undefined) counts.reached += 1;\n if (engaged === true) counts.engaged += 1;\n}\n\n/** `rows` are the companies the ads reached; a company several LinkedIn pages name counts once. */\nexport function targetsSummary(\n targets: readonly TargetAccount[],\n rows: ReadonlyArray<{ domain: string; engagements: number }>,\n): TargetsSummary {\n const reached = engagedByDomain(rows);\n const summary: TargetsSummary = { total: 0, reached: 0, engaged: 0, notReached: [] };\n const byTier = new Map<string, TierCounts>();\n for (const target of targets) {\n const engaged = reached.get(target.domain);\n count(summary, engaged);\n if (target.tier !== undefined) {\n const tier = byTier.get(target.tier) ?? { total: 0, reached: 0, engaged: 0 };\n count(tier, engaged);\n byTier.set(target.tier, tier);\n }\n if (engaged === undefined) summary.notReached.push(target);\n }\n return byTier.size > 0 ? { ...summary, byTier: Object.fromEntries(byTier) } : summary;\n}\n"],"mappings":"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","names":["text","z","z"]}
@@ -0,0 +1,175 @@
1
+ import {
2
+ termsRefusalFix
3
+ } from "./chunk-Y2JZX6JB.js";
4
+ import {
5
+ handleConnectionError,
6
+ isOrganizationReadRefusal,
7
+ needsConnectionFix,
8
+ writeAdsJson,
9
+ writeJsonEnvelope
10
+ } from "./chunk-ZRP7Y2DM.js";
11
+ import {
12
+ ApiError
13
+ } from "./chunk-X7VQFLHI.js";
14
+ import {
15
+ getEnv
16
+ } from "./chunk-LGK7UWBN.js";
17
+
18
+ // ../api/src/ads-meta/permissionGates.ts
19
+ var META_PERMISSION_NOT_ENABLED_MESSAGE = {
20
+ catalog: "Catalog changes need the Catalog permission for Meta \u2014 ask a Baker admin to turn it on, then reconnect Meta. Everything else on Meta keeps working: tell the user, and carry on with the rest of the job.",
21
+ pagePosts: "Facebook Page posts need the Page posts permission for Meta \u2014 ask a Baker admin to turn it on, then reconnect Meta. Everything else on Meta keeps working: tell the user, and carry on with the rest of the job."
22
+ };
23
+ var META_PERMISSION_RECONNECT_MESSAGE = {
24
+ catalog: "Catalog changes need the Catalog permission for Meta. It is turned on for this company, but this Meta connection was made before, so it does not hold it \u2014 ask the user to reconnect Meta in the dashboard, then try again. Everything else on Meta keeps working meanwhile.",
25
+ pagePosts: "Facebook Page posts need the Page posts permission for Meta. It is turned on for this company, but this Meta connection was made before, so it does not hold it \u2014 ask the user to reconnect Meta in the dashboard, then try again. Everything else on Meta keeps working meanwhile."
26
+ };
27
+ var META_UNREQUESTED_PERMISSION_MESSAGE = {
28
+ comments: "Reading and moderating comments on ads needs Meta permissions Baker's Meta connection does not ask for yet (reading people's comments and managing them on the Page). Tell the user that comment moderation happens in Meta Business Suite for now, and carry on with the rest of the job.",
29
+ instagramMedia: "Listing an Instagram account's posts needs a Meta permission Baker's Meta connection does not ask for yet. Ask the user for the post's link or id instead, or boost it from Meta Business Suite, and carry on."
30
+ };
31
+ var META_PAGE_ADS_PERMISSION_REMEDY = "A Baker admin turns it on with the lead ads switch for this company; then the user reconnects Meta in the dashboard. Tell the user, and carry on with the rest of the job.";
32
+ function isMetaPermissionGateRefusal(message) {
33
+ return [
34
+ ...Object.values(META_PERMISSION_NOT_ENABLED_MESSAGE),
35
+ ...Object.values(META_PERMISSION_RECONNECT_MESSAGE),
36
+ ...Object.values(META_UNREQUESTED_PERMISSION_MESSAGE),
37
+ META_PAGE_ADS_PERMISSION_REMEDY
38
+ ].some((refusal) => message.includes(refusal));
39
+ }
40
+
41
+ // src/commands/ads/meta/shared.ts
42
+ var DAY_MS = 864e5;
43
+ function metaForbiddenFix(message) {
44
+ if (isMetaPermissionGateRefusal(message)) {
45
+ return { action: "reject", explanation: message };
46
+ }
47
+ if (message.includes("has not accepted Meta's Lead Generation Terms")) {
48
+ return {
49
+ action: "reject",
50
+ explanation: `${message}
51
+
52
+ Meta confirmed the Page's terms status using its Page access. Give the Page owner the terms link in the error and ask them to accept it before trying the form or lead ad set again. Do not suggest reconnecting Meta for this refusal; continue with other work that does not require the form or ad set.`
53
+ };
54
+ }
55
+ return {
56
+ action: "reject",
57
+ explanation: [
58
+ message,
59
+ "This is a permission refusal, not a dead connection, and Meta returns the same code for two causes with opposite remedies. Tell them apart by how much else works before you answer.",
60
+ "If other reads on this account are ALSO refused (campaigns, ad sets, insights), the connection is short a permission it was never granted. Only the user can widen it, by reconnecting Meta from the dashboard.",
61
+ "If those reads work and only this object is refused, the asset (pixel/dataset, Page, or catalog) belongs to a Business the connected user holds no role in. Ad-account access does not carry asset access and reconnecting cannot grant it \u2014 the client assigns that asset to the connected user or partner in Meta Business settings, under the asset's own section (Data sources \u2192 Datasets for a pixel).",
62
+ "Either way do not retry the same call, and do not abort the wider job. Continue with what you can read, and state in your answer that this specific check could not run and why \u2014 never present the task as verified when this step was skipped."
63
+ ].join("\n\n")
64
+ };
65
+ }
66
+ function handleMetaError(err) {
67
+ if (err instanceof ApiError) {
68
+ if (needsConnectionFix(err.code, err.message)) {
69
+ handleConnectionError("meta_ads", err.message);
70
+ }
71
+ const terms = termsRefusalFix(err.code, err.message);
72
+ if (terms) {
73
+ writeJsonEnvelope({
74
+ ok: false,
75
+ error: { code: terms.code, message: err.message, fix: terms.fix, retryable: false }
76
+ });
77
+ process.exit(1);
78
+ }
79
+ const envelope = {
80
+ ok: false,
81
+ error: {
82
+ code: err.code,
83
+ message: err.message,
84
+ fix: err.code === "FORBIDDEN" && !isOrganizationReadRefusal(err.message) ? metaForbiddenFix(err.message) : { action: "reject", explanation: err.message },
85
+ retryable: err.code === "RATE_LIMITED" || err.code === "UNAVAILABLE" || err.code === "INTERNAL_ERROR"
86
+ }
87
+ };
88
+ writeAdsJson(envelope);
89
+ process.exit(1);
90
+ }
91
+ const message = err instanceof Error ? err.message : "Unexpected error";
92
+ writeAdsJson({ ok: false, error: { code: "NETWORK_ERROR", message } });
93
+ process.exit(1);
94
+ }
95
+ var ACCOUNT_ID_RE = /^(act_)?[0-9]+$/;
96
+ function resolveAccountIdArg(args) {
97
+ const fromArgs = args["account-id"];
98
+ const id = fromArgs || getEnv().BAKER_META_AD_ACCOUNT_ID;
99
+ if (!id) {
100
+ writeAdsJson({
101
+ ok: false,
102
+ error: {
103
+ code: "MISSING_ACCOUNT_ID",
104
+ message: "Pass --account-id or set BAKER_META_AD_ACCOUNT_ID. Run `baker ads meta accounts` to find IDs."
105
+ }
106
+ });
107
+ process.exit(1);
108
+ }
109
+ if (!ACCOUNT_ID_RE.test(id)) {
110
+ writeAdsJson({
111
+ ok: false,
112
+ error: {
113
+ code: "INVALID_ACCOUNT_ID",
114
+ message: `Invalid account ID "${id}". Expected numeric ID, optionally prefixed with "act_".`
115
+ }
116
+ });
117
+ process.exit(1);
118
+ }
119
+ return id.startsWith("act_") ? id : `act_${id}`;
120
+ }
121
+ function getDateRange(args) {
122
+ const datePreset = args["date-preset"];
123
+ const since = args.since;
124
+ const until = args.until;
125
+ if (since && until) return { since, until };
126
+ return { datePreset: datePreset ?? "last_7d" };
127
+ }
128
+ function todayIso() {
129
+ return (/* @__PURE__ */ new Date()).toISOString().slice(0, 10);
130
+ }
131
+ function daysAgoIso(days) {
132
+ return new Date(Date.now() - days * DAY_MS).toISOString().slice(0, 10);
133
+ }
134
+ function csvOrJson(args) {
135
+ return args.output ?? "json";
136
+ }
137
+ var NAME_CONTAINS_ARG = {
138
+ type: "string",
139
+ description: "Only rows whose name contains this text, matched by Meta before anything is returned. Start here to find one entity by name: --name-contains octubre --all-statuses"
140
+ };
141
+ function resolveEffectiveStatus(args) {
142
+ if (args["all-statuses"]) {
143
+ return void 0;
144
+ }
145
+ const explicit = args["effective-status"];
146
+ if (explicit) {
147
+ return explicit;
148
+ }
149
+ return "ACTIVE";
150
+ }
151
+ function statusFilterHints(rows, effectiveStatus, noun) {
152
+ if (rows.length > 0 || effectiveStatus === void 0) return [];
153
+ if (effectiveStatus === "ACTIVE") {
154
+ return [
155
+ `No ACTIVE ${noun}. The ACTIVE filter hides paused, archived and in-review ones (under a paused campaign or ad set that is all of them), so this does NOT mean none exist. Re-run with --all-statuses before concluding there are none.`
156
+ ];
157
+ }
158
+ return [
159
+ `No ${noun} with effective_status ${effectiveStatus}. Re-run with --all-statuses to see every status before concluding there are none.`
160
+ ];
161
+ }
162
+
163
+ export {
164
+ metaForbiddenFix,
165
+ handleMetaError,
166
+ resolveAccountIdArg,
167
+ getDateRange,
168
+ todayIso,
169
+ daysAgoIso,
170
+ csvOrJson,
171
+ NAME_CONTAINS_ARG,
172
+ resolveEffectiveStatus,
173
+ statusFilterHints
174
+ };
175
+ //# sourceMappingURL=chunk-B2POVFR2.js.map
@@ -0,0 +1,76 @@
1
+ import {
2
+ MAX_REMOTE_IMAGE_BYTES,
3
+ fetchExternalBytes
4
+ } from "./chunk-PONLPYD7.js";
5
+
6
+ // src/lib/image/io.ts
7
+ import { randomBytes } from "crypto";
8
+ import { glob as fsGlob, readFile, rename, stat, writeFile } from "fs/promises";
9
+ import { dirname, extname, join, resolve } from "path";
10
+ var REMOTE_RE = /^https?:\/\//i;
11
+ var GLOB_RE = /[*?[\]{}]/;
12
+ function isRemoteUrl(value) {
13
+ return REMOTE_RE.test(value);
14
+ }
15
+ function looksLikeGlob(value) {
16
+ return GLOB_RE.test(value);
17
+ }
18
+ async function expandInputs(spec) {
19
+ const parts = spec.split(",").map((p) => p.trim()).filter(Boolean);
20
+ const out = [];
21
+ for (const part of parts) {
22
+ if (isRemoteUrl(part)) {
23
+ out.push(part);
24
+ continue;
25
+ }
26
+ if (looksLikeGlob(part)) {
27
+ for await (const match of fsGlob(part)) {
28
+ if (typeof match === "string") out.push(match);
29
+ }
30
+ } else {
31
+ out.push(part);
32
+ }
33
+ }
34
+ return out;
35
+ }
36
+ async function readImageBuffer(pathOrUrl) {
37
+ if (isRemoteUrl(pathOrUrl)) {
38
+ const { buffer } = await fetchExternalBytes(pathOrUrl, { maxBytes: MAX_REMOTE_IMAGE_BYTES });
39
+ return buffer;
40
+ }
41
+ return readFile(pathOrUrl);
42
+ }
43
+ async function isDirectory(path) {
44
+ try {
45
+ const s = await stat(path);
46
+ return s.isDirectory();
47
+ } catch {
48
+ return false;
49
+ }
50
+ }
51
+ async function resolveOutputPath(inputPath, outputArg, options) {
52
+ const base = options.newExtension ? inputPath.slice(0, -extname(inputPath).length) + options.newExtension : inputPath;
53
+ if (!outputArg) return base;
54
+ if (options.multipleInputs || await isDirectory(outputArg)) {
55
+ const filename = base.split("/").pop() ?? "out.png";
56
+ return join(outputArg, filename);
57
+ }
58
+ return outputArg;
59
+ }
60
+ async function atomicWrite(targetPath, data) {
61
+ const absolute = resolve(targetPath);
62
+ const dir = dirname(absolute);
63
+ const tmp = join(dir, `.baker-image-${randomBytes(8).toString("hex")}.tmp`);
64
+ await writeFile(tmp, data);
65
+ await rename(tmp, absolute);
66
+ }
67
+
68
+ export {
69
+ isRemoteUrl,
70
+ expandInputs,
71
+ readImageBuffer,
72
+ isDirectory,
73
+ resolveOutputPath,
74
+ atomicWrite
75
+ };
76
+ //# sourceMappingURL=chunk-B537ISAP.js.map