@koda-sl/baker-cli 0.495.0-dev.6b9c22aff → 0.495.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 (860) hide show
  1. package/README.md +1 -5
  2. package/dist/account-EF6OPUJT.js +80 -0
  3. package/dist/account-UHNR5KTE.js +79 -0
  4. package/dist/account-reads-CDZ3EL5D.js +218 -0
  5. package/dist/account-writes-VWU4FRGQ.js +66 -0
  6. package/dist/accounts-KMLXHADA.js +77 -0
  7. package/dist/accounts-QDGNTSTV.js +611 -0
  8. package/dist/actions-QL5UD2W4.js +55 -0
  9. package/dist/activecampaign-5OD45ROS.js +935 -0
  10. package/dist/ad-group-writes-ID6I3QUZ.js +170 -0
  11. package/dist/ad-groups-M7CV6NTH.js +68 -0
  12. package/dist/ad-writes-TSOAZYRE.js +174 -0
  13. package/dist/add-6K6LO7CM.js +104 -0
  14. package/dist/add-LYDJZDGO.js +302 -0
  15. package/dist/ads-CGLO73MH.js +77 -0
  16. package/dist/ads-DHPJFU52.js +40 -0
  17. package/dist/advertisers-23LU7GTV.js +120 -0
  18. package/dist/analytics-DVD4OBBR.js +1976 -0
  19. package/dist/analytics-HO2SLL4W.js +433 -0
  20. package/dist/animate-RGZWDZG2.js +480 -0
  21. package/dist/assign-CLKJKH2B.js +77 -0
  22. package/dist/audience-size-NNYYXODL.js +73 -0
  23. package/dist/audiences-WXIP5PJH.js +268 -0
  24. package/dist/audit-KB4P2XGS.js +151 -0
  25. package/dist/autocomplete-VZD2SMTE.js +111 -0
  26. package/dist/avatars-FKOO6VZ2.js +38 -0
  27. package/dist/bid-pricing-6LLXOLLI.js +100 -0
  28. package/dist/brand-NNWHBIAX.js +22 -0
  29. package/dist/brief-CPJQWT6W.js +538 -0
  30. package/dist/campaign-groups-YPYNXOWU.js +95 -0
  31. package/dist/campaign-groups-YPYNXOWU.js.map +1 -0
  32. package/dist/campaign-writes-UJ4L2O6G.js +165 -0
  33. package/dist/campaign-writes-W5IL6ZGB.js +170 -0
  34. package/dist/campaigns-FLTPD66X.js +76 -0
  35. package/dist/campaigns-HLBZRH5A.js +107 -0
  36. package/dist/campaigns-N44ZDGB5.js +109 -0
  37. package/dist/campaigns-N44ZDGB5.js.map +1 -0
  38. package/dist/canvas-D64GLWUO.js +46 -0
  39. package/dist/capabilities-LWXCWMIY.js +144 -0
  40. package/dist/catalog-ZDLQAODO.js +65 -0
  41. package/dist/catalogs-26VXVUST.js +128 -0
  42. package/dist/changes-SX2N5KIO.js +135 -0
  43. package/dist/chatgpt-YI6YNACI.js +47 -0
  44. package/dist/chats-7WGC2CVW.js +276 -0
  45. package/dist/check-EH6BXWWL.js +104 -0
  46. package/dist/chunk-2B772ZEA.js +169 -0
  47. package/dist/chunk-2KRK667G.js +51 -0
  48. package/dist/chunk-2TVXJPGR.js +103 -0
  49. package/dist/chunk-3AMLOCXY.js +392 -0
  50. package/dist/chunk-3N5A44NQ.js +122 -0
  51. package/dist/chunk-3S274625.js +131 -0
  52. package/dist/chunk-3WAYZQNV.js +61 -0
  53. package/dist/chunk-5A257KJA.js +160 -0
  54. package/dist/chunk-6QGS3RQP.js +363 -0
  55. package/dist/chunk-7KHTJQGV.js +1518 -0
  56. package/dist/chunk-A3DKSAEL.js +1606 -0
  57. package/dist/chunk-A4DZ5L3T.js +665 -0
  58. package/dist/chunk-ACDLKTUP.js +23992 -0
  59. package/dist/chunk-ACDLKTUP.js.map +1 -0
  60. package/dist/chunk-AFD32O4A.js +494 -0
  61. package/dist/chunk-AW2GKIGS.js +433 -0
  62. package/dist/chunk-B7GF34FU.js +8914 -0
  63. package/dist/chunk-BDYLILMW.js +150 -0
  64. package/dist/chunk-DAO63OOP.js +6352 -0
  65. package/dist/chunk-DAO63OOP.js.map +1 -0
  66. package/dist/chunk-EJ4QCMM6.js +285 -0
  67. package/dist/chunk-EMQUW6JB.js +942 -0
  68. package/dist/chunk-EW3JEKIV.js +139 -0
  69. package/dist/chunk-F377KYIM.js +274 -0
  70. package/dist/chunk-FBFWMTOP.js +19 -0
  71. package/dist/chunk-FCM6VPFP.js +98 -0
  72. package/dist/chunk-FKYPAGKK.js +1919 -0
  73. package/dist/chunk-GXGYTFZA.js +8939 -0
  74. package/dist/chunk-I7J7YQXZ.js +142 -0
  75. package/dist/chunk-IBY44U2M.js +1079 -0
  76. package/dist/chunk-IFXGCI33.js +297 -0
  77. package/dist/chunk-IKLHXGMF.js +91 -0
  78. package/dist/chunk-IYTPWAN3.js +604 -0
  79. package/dist/chunk-J3CWAERS.js +3868 -0
  80. package/dist/chunk-JAC6JVCI.js +26 -0
  81. package/dist/chunk-JH2L5CQD.js +206 -0
  82. package/dist/chunk-JUVVCA7B.js +97 -0
  83. package/dist/chunk-MCJ5I5LR.js +3187 -0
  84. package/dist/chunk-MCJ5I5LR.js.map +1 -0
  85. package/dist/chunk-MK6XJUCQ.js +197 -0
  86. package/dist/chunk-MOFMOYUA.js +148 -0
  87. package/dist/chunk-MZPS46OR.js +76 -0
  88. package/dist/chunk-N3I6ZXR7.js +66 -0
  89. package/dist/chunk-NBO2NSAW.js +592 -0
  90. package/dist/chunk-NEU5QD2C.js +249 -0
  91. package/dist/chunk-NKIBXOHT.js +344 -0
  92. package/dist/chunk-NZKBW4YB.js +846 -0
  93. package/dist/chunk-OE3MIV4F.js +547 -0
  94. package/dist/chunk-OL7JS4NG.js +5368 -0
  95. package/dist/chunk-P2MFWJR3.js +903 -0
  96. package/dist/chunk-PHCIFBP3.js +89 -0
  97. package/dist/chunk-PTUXBO5O.js +224 -0
  98. package/dist/chunk-Q3LXLWZY.js +275 -0
  99. package/dist/chunk-Q5WBTVA7.js +455 -0
  100. package/dist/chunk-QMOYQJIN.js +46 -0
  101. package/dist/chunk-QRLTVJ6F.js +167 -0
  102. package/dist/chunk-RDEAVCMF.js +399 -0
  103. package/dist/chunk-RGMKXNQP.js +23 -0
  104. package/dist/chunk-RJZS4XDJ.js +64 -0
  105. package/dist/chunk-RZTKCCUL.js +831 -0
  106. package/dist/chunk-S4VLLGTW.js +843 -0
  107. package/dist/chunk-SVM3DGAQ.js +228 -0
  108. package/dist/chunk-TTKBNBQF.js +156 -0
  109. package/dist/chunk-VB3XUR6A.js +207 -0
  110. package/dist/chunk-WTJSMYY2.js +4249 -0
  111. package/dist/chunk-WTJSMYY2.js.map +1 -0
  112. package/dist/chunk-XCKINS7K.js +57 -0
  113. package/dist/chunk-Y46FE75E.js +627 -0
  114. package/dist/chunk-Y6GKV7CU.js +346 -0
  115. package/dist/chunk-Y6GKV7CU.js.map +1 -0
  116. package/dist/chunk-Z2GQREJY.js +159 -0
  117. package/dist/chunk-ZA7OQLDJ.js +225 -0
  118. package/dist/chunk-ZDAVSTEE.js +172 -0
  119. package/dist/chunk-ZXCSOVS5.js +191 -0
  120. package/dist/claim-SVDCQ2AI.js +197 -0
  121. package/dist/cli.js +34 -34
  122. package/dist/companies-BYMYQK6A.js +195 -0
  123. package/dist/complete-NEH3MWRI.js +81 -0
  124. package/dist/connect-5PGL7ZOM.js +42 -0
  125. package/dist/conversation-CSOKJXDW.js +93 -0
  126. package/dist/conversion-report-7JJ5L6WH.js +125 -0
  127. package/dist/conversion-upload-command-UO2QWG3J.js +438 -0
  128. package/dist/conversion-writes-GIGAZT4T.js +120 -0
  129. package/dist/conversions-4JOTTFEH.js +135 -0
  130. package/dist/conversions-4JOTTFEH.js.map +1 -0
  131. package/dist/conversions-CIJZLGII.js +76 -0
  132. package/dist/create-2XYMBULY.js +207 -0
  133. package/dist/create-56PTZABQ.js +235 -0
  134. package/dist/create-D6S6TGWY.js +59 -0
  135. package/dist/create-SMW4O5PC.js +132 -0
  136. package/dist/creatives-OO76DAFS.js +58 -0
  137. package/dist/creatives-VJUYWJL6.js +182 -0
  138. package/dist/creatives-VJUYWJL6.js.map +1 -0
  139. package/dist/credentials-2ONYUJW6.js +287 -0
  140. package/dist/critique-NDDFSGPE.js +1458 -0
  141. package/dist/critique-YXZVMLZ4.js +227 -0
  142. package/dist/crm-Q6CEP5XV.js +224 -0
  143. package/dist/crm-WRONZYDH.js +318 -0
  144. package/dist/currency-TAEJVMVK.js +88 -0
  145. package/dist/customers-2EFYSCU2.js +56 -0
  146. package/dist/delete-7WEVC3FS.js +66 -0
  147. package/dist/delete-RBWK255M.js +54 -0
  148. package/dist/delete-VN4WWMQF.js +64 -0
  149. package/dist/demographics-I5XZ435C.js +138 -0
  150. package/dist/discard-XJLIXTNM.js +66 -0
  151. package/dist/discover-5Z253HXF.js +172 -0
  152. package/dist/domain-M7AEGAYI.js +98 -0
  153. package/dist/draft-5DQI4W5F.js +306 -0
  154. package/dist/draft-5DQI4W5F.js.map +1 -0
  155. package/dist/draft-7DWRFCXW.js +281 -0
  156. package/dist/draft-7IIYHSY2.js +332 -0
  157. package/dist/draft-CN6GKVBF.js +217 -0
  158. package/dist/draft-MNEM4N5W.js +307 -0
  159. package/dist/engine/index.js +7 -7
  160. package/dist/experiment-IDDWRCJ7.js +1397 -0
  161. package/dist/facets-ZLZ6LIHN.js +114 -0
  162. package/dist/feedback-7LEX2P5Q.js +106 -0
  163. package/dist/feedback-record-P4JJ63KA.js +260 -0
  164. package/dist/fetch-MIVCEHXZ.js +176 -0
  165. package/dist/find-VHN34MWL.js +134 -0
  166. package/dist/fit-SS6HSZPU.js +62 -0
  167. package/dist/flows-UTIIHDNE.js +247 -0
  168. package/dist/fonts-YPNN7ZJP.js +36 -0
  169. package/dist/forecast-OBSHG2GJ.js +118 -0
  170. package/dist/forecast-W7Z5TVQX.js +168 -0
  171. package/dist/funnel-Z2VLXUEQ.js +394 -0
  172. package/dist/ga4-ZPAEF2G2.js +55 -0
  173. package/dist/generate-Y76WU7M7.js +263 -0
  174. package/dist/get-MDAO6I7T.js +56 -0
  175. package/dist/get-ZB553BSH.js +79 -0
  176. package/dist/google-C3X7O2UO.js +136 -0
  177. package/dist/google-WYXDMH2N.js +3265 -0
  178. package/dist/google-ads-FTWL772L.js +195 -0
  179. package/dist/gsc-SDDHGTZK.js +30 -0
  180. package/dist/history-DGHMJ2XF.js +67 -0
  181. package/dist/history-WKJYKDMG.js +133 -0
  182. package/dist/hubspot-EPHVEPOO.js +779 -0
  183. package/dist/icon-MYPDC6FM.js +137 -0
  184. package/dist/ideas-3PBH7VEX.js +40 -0
  185. package/dist/images-J35C3WG4.js +92 -0
  186. package/dist/ingest-5QOPUKFE.js +107 -0
  187. package/dist/ingest-OKUYP632.js +23 -0
  188. package/dist/insights-EU45J56U.js +122 -0
  189. package/dist/inspect-PMNCP6MV.js +189 -0
  190. package/dist/inspiration-QAL7NS7G.js +53 -0
  191. package/dist/intent-FUGWRUSW.js +95 -0
  192. package/dist/keyword-gap-DXTKZLV2.js +130 -0
  193. package/dist/keyword-metrics-R752SJIT.js +197 -0
  194. package/dist/keywords-for-site-7UWPJYQF.js +128 -0
  195. package/dist/landing-CBVIOGJ5.js +28 -0
  196. package/dist/languages-XRTTEJ5P.js +40 -0
  197. package/dist/leads-LIJS6Y5W.js +90 -0
  198. package/dist/leads-LIJS6Y5W.js.map +1 -0
  199. package/dist/learn-N6QV7GXA.js +204 -0
  200. package/dist/line-item-writes-3WPJXKIL.js +208 -0
  201. package/dist/line-items-ZOFKOGAA.js +103 -0
  202. package/dist/link-DDRQKOUL.js +64 -0
  203. package/dist/linkedin-UWZCF66X.js +1057 -0
  204. package/dist/linkedin-UWZCF66X.js.map +1 -0
  205. package/dist/list-5PLXVPLB.js +151 -0
  206. package/dist/list-VSJISE7U.js +303 -0
  207. package/dist/list-WTVOBQYX.js +64 -0
  208. package/dist/locations-PCZPKH47.js +40 -0
  209. package/dist/locations-TGJH3URF.js +67 -0
  210. package/dist/log-YKKPROLZ.js +92 -0
  211. package/dist/logo-WE2UELX6.js +18 -0
  212. package/dist/make-RNOWBLZQ.js +1353 -0
  213. package/dist/map-WTDPQLVO.js +433 -0
  214. package/dist/mcp-XJNSCPP3.js +714 -0
  215. package/dist/media-sources-JGBDDXZ5.js +32 -0
  216. package/dist/members-O3BTMRXX.js +44 -0
  217. package/dist/metrics-PYPCW7FJ.js +152 -0
  218. package/dist/models-IAGO5GIH.js +155 -0
  219. package/dist/normalize-R5AYLA2J.js +141 -0
  220. package/dist/options-AILRY7JY.js +122 -0
  221. package/dist/organization-KJJXZLVK.js +946 -0
  222. package/dist/performance-7YU4HOGH.js +24 -0
  223. package/dist/pixels-R4MOLWAR.js +60 -0
  224. package/dist/promoted-tweet-writes-TNELWPVG.js +180 -0
  225. package/dist/promoted-tweets-76WKUFJQ.js +119 -0
  226. package/dist/publish-BKLHCKHB.js +341 -0
  227. package/dist/query-XDHZMGLX.js +61 -0
  228. package/dist/reddit-YK3YUZEI.js +26 -0
  229. package/dist/refresh-WIII7KXB.js +94 -0
  230. package/dist/release-ZHXYQI7G.js +60 -0
  231. package/dist/relevant-pages-CTG72PBR.js +99 -0
  232. package/dist/remove-NOX4BXWK.js +50 -0
  233. package/dist/reopen-NLWKK5HB.js +63 -0
  234. package/dist/rerun-DZWQNMZQ.js +90 -0
  235. package/dist/research-Q3P76RHN.js +62 -0
  236. package/dist/research-UDZBCDNX.js +262 -0
  237. package/dist/reset-5UHFX7QY.js +54 -0
  238. package/dist/reset-MTRJQUP7.js +54 -0
  239. package/dist/resolve-DA72VT7Q.js +121 -0
  240. package/dist/retry-LQUBX5TK.js +62 -0
  241. package/dist/retry-U6F4CS6O.js +60 -0
  242. package/dist/rules-VS5PZ7VO.js +96 -0
  243. package/dist/rules-add-LMVZYDXE.js +462 -0
  244. package/dist/run-6PRA2YSD.js +65 -0
  245. package/dist/run-R6COFNOR.js +66 -0
  246. package/dist/scaffold-ad-3OVJ7VZQ.js +1511 -0
  247. package/dist/scaffold-static-ad-DDRA3Q5I.js +1005 -0
  248. package/dist/scaffold-video-3JZYFYFU.js +883 -0
  249. package/dist/schedule-ED2YDUPY.js +61 -0
  250. package/dist/scheduled-agents-5P67MVGX.js +50 -0
  251. package/dist/schema-4XVKERSA.js +132 -0
  252. package/dist/search-Y2UMIQ57.js +174 -0
  253. package/dist/select-OZ4E6VLF.js +101 -0
  254. package/dist/set-prompt-O4YAE4CE.js +193 -0
  255. package/dist/setup-links-2GJYCV2A.js +141 -0
  256. package/dist/site-47B6V2UX.js +177 -0
  257. package/dist/sources-DXPZAPQ7.js +454 -0
  258. package/dist/sources-NDXYTASG.js +30 -0
  259. package/dist/stale-VLVBO2L6.js +71 -0
  260. package/dist/stats-37OFAMPW.js +34 -0
  261. package/dist/status-4ODD46XY.js +62 -0
  262. package/dist/stock-6R5E7MJX.js +179 -0
  263. package/dist/studio-LEIGL3Q7.js +49 -0
  264. package/dist/sync-TKNVBUDM.js +54 -0
  265. package/dist/sync-definition-M5R3H3TP.js +64 -0
  266. package/dist/tag-manager-3Q55PBEW.js +43 -0
  267. package/dist/tags-4N5UUUN6.js +26 -0
  268. package/dist/tags-5NHIAD5A.js +20 -0
  269. package/dist/tags-UUKWSWCN.js +20 -0
  270. package/dist/tags-VK7B5DJF.js +20 -0
  271. package/dist/tags-XAHIB3WA.js +224 -0
  272. package/dist/targeting-criteria-AVARWV2G.js +113 -0
  273. package/dist/targets-6RYLQRID.js +103 -0
  274. package/dist/testimonials-6TF6BOFN.js +32 -0
  275. package/dist/themes-JZ3DPE7L.js +94 -0
  276. package/dist/top-companies-45EHRCJD.js +108 -0
  277. package/dist/translate-VHLBACCE.js +604 -0
  278. package/dist/triggers-ERQONJNO.js +142 -0
  279. package/dist/unlink-TPDO6JNF.js +67 -0
  280. package/dist/unstage-YKKQQ7LW.js +85 -0
  281. package/dist/update-43WU6X7R.js +63 -0
  282. package/dist/update-CAHLAXWO.js +98 -0
  283. package/dist/update-NGH6YADN.js +152 -0
  284. package/dist/update-SPJIHHLE.js +188 -0
  285. package/dist/upload-ACESIZIZ.js +126 -0
  286. package/dist/url-options-VNX5KYUQ.js +130 -0
  287. package/dist/url-params-MIXEDBF7.js +98 -0
  288. package/dist/validate-XJJA7ULE.js +117 -0
  289. package/dist/videos-LBXPG7WC.js +39 -0
  290. package/dist/viewer-check-7VJ3GUZX.js +80 -0
  291. package/dist/web-EWQJC2SD.js +140 -0
  292. package/dist/winning-ads-SAOJAKEQ.js +86 -0
  293. package/dist/write-commands-QPDE4GWW.js +1024 -0
  294. package/dist/write-commands-QPDE4GWW.js.map +1 -0
  295. package/dist/x-LXOJPCRF.js +47 -0
  296. package/package.json +1 -1
  297. package/dist/account-CJGLH2OL.js +0 -80
  298. package/dist/account-UTFFCFNW.js +0 -79
  299. package/dist/account-reads-SOTNVUM6.js +0 -218
  300. package/dist/account-users-FUJVP4UG.js +0 -61
  301. package/dist/account-users-FUJVP4UG.js.map +0 -1
  302. package/dist/account-writes-OE5FKALN.js +0 -66
  303. package/dist/accounts-OY4DII7M.js +0 -611
  304. package/dist/accounts-XUMRFVLY.js +0 -77
  305. package/dist/actions-KYKLFVUI.js +0 -55
  306. package/dist/activecampaign-P6RO7B2Q.js +0 -935
  307. package/dist/ad-group-writes-343HA4ZG.js +0 -170
  308. package/dist/ad-groups-YMU6ATTW.js +0 -68
  309. package/dist/ad-writes-MINKG33L.js +0 -174
  310. package/dist/add-34QTAS7S.js +0 -104
  311. package/dist/add-3IZ3Z2PX.js +0 -302
  312. package/dist/ads-JRZVJFXS.js +0 -40
  313. package/dist/ads-QOXCMKZ2.js +0 -77
  314. package/dist/advertisers-G2UUCWA7.js +0 -120
  315. package/dist/analytics-CKF7HTWT.js +0 -433
  316. package/dist/analytics-FO4EDDQW.js +0 -1976
  317. package/dist/animate-K3MJ3GW4.js +0 -480
  318. package/dist/assign-76E76PJY.js +0 -77
  319. package/dist/audience-size-IGDEX4XR.js +0 -73
  320. package/dist/audiences-4GRCVFZN.js +0 -268
  321. package/dist/audit-LPSYEY4S.js +0 -151
  322. package/dist/autocomplete-G7MSIJQL.js +0 -111
  323. package/dist/avatars-BF7VWGPH.js +0 -38
  324. package/dist/bid-pricing-EAZHVAMJ.js +0 -100
  325. package/dist/brand-WQI4NV3H.js +0 -22
  326. package/dist/brief-DVFCPBR3.js +0 -538
  327. package/dist/campaign-groups-LCTAUXTU.js +0 -96
  328. package/dist/campaign-groups-LCTAUXTU.js.map +0 -1
  329. package/dist/campaign-writes-ECPSPFAB.js +0 -165
  330. package/dist/campaign-writes-EZEJNO3O.js +0 -170
  331. package/dist/campaigns-7S35PC44.js +0 -76
  332. package/dist/campaigns-MVLKQWX2.js +0 -110
  333. package/dist/campaigns-MVLKQWX2.js.map +0 -1
  334. package/dist/campaigns-R3EUC5Y2.js +0 -107
  335. package/dist/canvas-Y3DKVETP.js +0 -46
  336. package/dist/capabilities-OBP5PDRK.js +0 -144
  337. package/dist/catalog-SZS2JCLN.js +0 -65
  338. package/dist/catalogs-LEABW6AS.js +0 -128
  339. package/dist/changes-4EDY3RNX.js +0 -135
  340. package/dist/chatgpt-JOAEGWCB.js +0 -47
  341. package/dist/chats-KE7FNWKF.js +0 -276
  342. package/dist/check-XHK2HVD2.js +0 -104
  343. package/dist/chunk-22HH46DF.js +0 -122
  344. package/dist/chunk-2VWWLUDJ.js +0 -23
  345. package/dist/chunk-2WBRRYSS.js +0 -197
  346. package/dist/chunk-2XH7GKCO.js +0 -156
  347. package/dist/chunk-3LMAPV6P.js +0 -942
  348. package/dist/chunk-3LZM5MWM.js +0 -57
  349. package/dist/chunk-4ARHIC23.js +0 -392
  350. package/dist/chunk-5KEQXSCN.js +0 -1919
  351. package/dist/chunk-5PMEMWKS.js +0 -665
  352. package/dist/chunk-64BRPYJD.js +0 -225
  353. package/dist/chunk-6DQDZIBL.js +0 -363
  354. package/dist/chunk-6H64SENZ.js +0 -285
  355. package/dist/chunk-6KGLAMPV.js +0 -167
  356. package/dist/chunk-6OIKNJ7G.js +0 -26
  357. package/dist/chunk-6VIHWBOD.js +0 -1606
  358. package/dist/chunk-74BP3JIV.js +0 -275
  359. package/dist/chunk-7AWSJ6Z5.js +0 -66
  360. package/dist/chunk-7IVY55AU.js +0 -903
  361. package/dist/chunk-7POQSUPH.js +0 -455
  362. package/dist/chunk-7RCNWRKK.js +0 -206
  363. package/dist/chunk-ABEIEHOV.js +0 -131
  364. package/dist/chunk-AREUZGX7.js +0 -344
  365. package/dist/chunk-CNFFNE4L.js +0 -274
  366. package/dist/chunk-CORXHFKY.js +0 -433
  367. package/dist/chunk-D3SHD4KA.js +0 -399
  368. package/dist/chunk-DD3C6TSW.js +0 -61
  369. package/dist/chunk-DQU2GVU7.js +0 -51
  370. package/dist/chunk-ECHVJII5.js +0 -97
  371. package/dist/chunk-EFWXYUSK.js +0 -139
  372. package/dist/chunk-F3CZFUXZ.js +0 -3187
  373. package/dist/chunk-F3CZFUXZ.js.map +0 -1
  374. package/dist/chunk-F4KWLFCC.js +0 -103
  375. package/dist/chunk-FL2KIDPV.js +0 -494
  376. package/dist/chunk-FT7RYWOL.js +0 -160
  377. package/dist/chunk-HPIKZPTU.js +0 -297
  378. package/dist/chunk-HUPHZ35H.js +0 -547
  379. package/dist/chunk-JGM4WGC2.js +0 -6704
  380. package/dist/chunk-JGM4WGC2.js.map +0 -1
  381. package/dist/chunk-JMW3AVN7.js +0 -346
  382. package/dist/chunk-JMW3AVN7.js.map +0 -1
  383. package/dist/chunk-JQHLF74O.js +0 -8939
  384. package/dist/chunk-K2TOE6XL.js +0 -142
  385. package/dist/chunk-KI6TENTW.js +0 -5368
  386. package/dist/chunk-LMYCLUY2.js +0 -8914
  387. package/dist/chunk-LQR4CKYW.js +0 -191
  388. package/dist/chunk-LRFNUCHV.js +0 -89
  389. package/dist/chunk-M2D7ZWEU.js +0 -150
  390. package/dist/chunk-ML7GGHTU.js +0 -592
  391. package/dist/chunk-MMUGSEF4.js +0 -23992
  392. package/dist/chunk-MMUGSEF4.js.map +0 -1
  393. package/dist/chunk-MYSLMKTG.js +0 -604
  394. package/dist/chunk-NAA4CKZZ.js +0 -4249
  395. package/dist/chunk-NAA4CKZZ.js.map +0 -1
  396. package/dist/chunk-NDKLPDZ3.js +0 -1079
  397. package/dist/chunk-OUQSDUVI.js +0 -831
  398. package/dist/chunk-PFPUPR3H.js +0 -91
  399. package/dist/chunk-PGD7USOH.js +0 -207
  400. package/dist/chunk-QKT7W5JP.js +0 -98
  401. package/dist/chunk-QU4XX5Z7.js +0 -169
  402. package/dist/chunk-R3OXH3ML.js +0 -148
  403. package/dist/chunk-RNQMXS7G.js +0 -172
  404. package/dist/chunk-SEMNRIOR.js +0 -19
  405. package/dist/chunk-SHBFBQYT.js +0 -846
  406. package/dist/chunk-SIKCVWM3.js +0 -76
  407. package/dist/chunk-UJPURLUZ.js +0 -3868
  408. package/dist/chunk-UM7NJIOU.js +0 -64
  409. package/dist/chunk-V57TZQPI.js +0 -228
  410. package/dist/chunk-WXKSUL4U.js +0 -224
  411. package/dist/chunk-YJRZVGES.js +0 -1518
  412. package/dist/chunk-YQICNXIA.js +0 -249
  413. package/dist/chunk-YTF2MI3E.js +0 -627
  414. package/dist/chunk-YYPWVQZQ.js +0 -843
  415. package/dist/chunk-Z7BQGWKG.js +0 -46
  416. package/dist/chunk-ZXSXRSFX.js +0 -159
  417. package/dist/claim-W2ZV4SH3.js +0 -197
  418. package/dist/companies-ITK3W3H6.js +0 -195
  419. package/dist/complete-RYEVEF3S.js +0 -81
  420. package/dist/connect-FFFNSJ2O.js +0 -42
  421. package/dist/conversation-KKJNQRFB.js +0 -93
  422. package/dist/conversion-report-PLQ4MVJR.js +0 -125
  423. package/dist/conversion-upload-command-Z7F6NQH4.js +0 -438
  424. package/dist/conversion-writes-VNOXZ4NR.js +0 -120
  425. package/dist/conversions-KHAXFD3Z.js +0 -137
  426. package/dist/conversions-KHAXFD3Z.js.map +0 -1
  427. package/dist/conversions-KPIFDO2R.js +0 -76
  428. package/dist/create-3R6Q2E2M.js +0 -59
  429. package/dist/create-A3R7YRT3.js +0 -235
  430. package/dist/create-TYWQP57A.js +0 -207
  431. package/dist/create-UUEWQUPT.js +0 -132
  432. package/dist/creatives-EEDDL3VG.js +0 -220
  433. package/dist/creatives-EEDDL3VG.js.map +0 -1
  434. package/dist/creatives-UK4VITNW.js +0 -58
  435. package/dist/credentials-A65GYH4D.js +0 -287
  436. package/dist/critique-46O4VVPM.js +0 -1458
  437. package/dist/critique-RPRMG2ZC.js +0 -227
  438. package/dist/crm-2WYW3D22.js +0 -224
  439. package/dist/crm-PQ24MNIU.js +0 -318
  440. package/dist/currency-Q3HCK447.js +0 -88
  441. package/dist/customers-YTQ7IQ5C.js +0 -56
  442. package/dist/delete-BBISJTFG.js +0 -54
  443. package/dist/delete-PQ4NUNLX.js +0 -66
  444. package/dist/delete-TBW6TJ6A.js +0 -64
  445. package/dist/demographics-EVP55FT3.js +0 -138
  446. package/dist/discard-LPJA4DEY.js +0 -66
  447. package/dist/discover-3G6CE7X3.js +0 -172
  448. package/dist/domain-5MM7V7JD.js +0 -98
  449. package/dist/draft-34D5MOKA.js +0 -217
  450. package/dist/draft-A6M562M4.js +0 -307
  451. package/dist/draft-A6M562M4.js.map +0 -1
  452. package/dist/draft-EGS7UFF3.js +0 -281
  453. package/dist/draft-J6GJXZRX.js +0 -307
  454. package/dist/draft-K3O7Q3A5.js +0 -332
  455. package/dist/experiment-7RJ5X2LL.js +0 -1397
  456. package/dist/experiments-HERTVBYK.js +0 -233
  457. package/dist/experiments-HERTVBYK.js.map +0 -1
  458. package/dist/facets-RUZKALF3.js +0 -114
  459. package/dist/feedback-S5LHJYZD.js +0 -106
  460. package/dist/feedback-record-GAM2R5GG.js +0 -260
  461. package/dist/fetch-FA6TR66Y.js +0 -176
  462. package/dist/find-2EPXK5RF.js +0 -134
  463. package/dist/fit-MOMO4AXL.js +0 -62
  464. package/dist/flows-DMMCSBWY.js +0 -247
  465. package/dist/fonts-G4JLXWX2.js +0 -36
  466. package/dist/forecast-OOP4K5DE.js +0 -118
  467. package/dist/forecast-V65WS5QG.js +0 -168
  468. package/dist/funnel-SEQPUM3X.js +0 -394
  469. package/dist/ga4-6EIQC2TG.js +0 -55
  470. package/dist/generate-IDDQD5FU.js +0 -263
  471. package/dist/get-DEOZMGOQ.js +0 -56
  472. package/dist/get-SEJINVOS.js +0 -79
  473. package/dist/google-7L3FWKPJ.js +0 -3265
  474. package/dist/google-O5OI6QFU.js +0 -136
  475. package/dist/google-ads-MIGWMCWY.js +0 -195
  476. package/dist/gsc-BM3T2GDL.js +0 -30
  477. package/dist/history-IBWXCDCB.js +0 -133
  478. package/dist/history-Z5577FPQ.js +0 -67
  479. package/dist/hubspot-6AZKUX72.js +0 -779
  480. package/dist/icon-B7DG53S5.js +0 -137
  481. package/dist/ideas-AX7S3NCG.js +0 -40
  482. package/dist/images-632SXTB5.js +0 -92
  483. package/dist/ingest-HS55RVKH.js +0 -23
  484. package/dist/ingest-T3OK3DRG.js +0 -107
  485. package/dist/insights-UDX66IMV.js +0 -122
  486. package/dist/inspect-D6ZIUBH3.js +0 -189
  487. package/dist/inspiration-TCCKM4R7.js +0 -53
  488. package/dist/intent-3WTKKTUX.js +0 -95
  489. package/dist/keyword-gap-7GESZXY2.js +0 -130
  490. package/dist/keyword-metrics-J43MV3RQ.js +0 -197
  491. package/dist/keywords-for-site-6YKCTFJZ.js +0 -128
  492. package/dist/landing-Y7DI2FUT.js +0 -28
  493. package/dist/languages-LSKNZI2A.js +0 -40
  494. package/dist/leads-R3WBKADF.js +0 -112
  495. package/dist/leads-R3WBKADF.js.map +0 -1
  496. package/dist/learn-M4UHA476.js +0 -204
  497. package/dist/line-item-writes-F2OPBMIE.js +0 -208
  498. package/dist/line-items-YJ3DLV2U.js +0 -103
  499. package/dist/link-RZKYW22K.js +0 -64
  500. package/dist/linkedin-JYZOPU7A.js +0 -1299
  501. package/dist/linkedin-JYZOPU7A.js.map +0 -1
  502. package/dist/list-NPJ34244.js +0 -151
  503. package/dist/list-WTVBOTA4.js +0 -64
  504. package/dist/list-XK5CHKYJ.js +0 -303
  505. package/dist/locations-DSDCNP5Z.js +0 -40
  506. package/dist/locations-SFZN4MYW.js +0 -67
  507. package/dist/log-K4FWHXIM.js +0 -92
  508. package/dist/logo-QTSBKP2J.js +0 -18
  509. package/dist/make-VQDUKVPB.js +0 -1353
  510. package/dist/map-Z3MEM6QX.js +0 -433
  511. package/dist/mcp-KJOSR534.js +0 -714
  512. package/dist/media-sources-44HTWIY3.js +0 -32
  513. package/dist/members-HGU22NL3.js +0 -44
  514. package/dist/metrics-OV2EKPJ6.js +0 -152
  515. package/dist/models-NGAUD6QJ.js +0 -155
  516. package/dist/normalize-IUPOHEZJ.js +0 -141
  517. package/dist/options-TL5TPGHK.js +0 -122
  518. package/dist/organization-3ORT4474.js +0 -946
  519. package/dist/performance-PCZHQCZ5.js +0 -24
  520. package/dist/pixels-GHEAK62X.js +0 -60
  521. package/dist/promoted-tweet-writes-O4RTZFSI.js +0 -180
  522. package/dist/promoted-tweets-AWP6MGJI.js +0 -119
  523. package/dist/publish-PODZKJHW.js +0 -341
  524. package/dist/query-FUSR27T4.js +0 -61
  525. package/dist/reddit-UNUNWSNR.js +0 -26
  526. package/dist/refresh-34UO2LXY.js +0 -94
  527. package/dist/release-BD3EAD75.js +0 -60
  528. package/dist/relevant-pages-FNKYR2OG.js +0 -99
  529. package/dist/remove-YQYSQCWI.js +0 -50
  530. package/dist/reopen-MULNJOR5.js +0 -63
  531. package/dist/rerun-6YGYJPM7.js +0 -90
  532. package/dist/research-6WEL3USW.js +0 -62
  533. package/dist/research-OBECRSPL.js +0 -262
  534. package/dist/reset-5TTLZ43U.js +0 -54
  535. package/dist/reset-PRTK6YUD.js +0 -54
  536. package/dist/resolve-6RM63T55.js +0 -121
  537. package/dist/retry-XYTVP7BV.js +0 -60
  538. package/dist/retry-Z3C624JW.js +0 -62
  539. package/dist/revenue-VSH6KXCV.js +0 -88
  540. package/dist/revenue-VSH6KXCV.js.map +0 -1
  541. package/dist/rules-AUAJUM2T.js +0 -96
  542. package/dist/rules-add-7VFGPGZ7.js +0 -462
  543. package/dist/run-S3SVCTIB.js +0 -65
  544. package/dist/run-YA5RCRIX.js +0 -66
  545. package/dist/scaffold-ad-2KQULVJU.js +0 -1511
  546. package/dist/scaffold-static-ad-S46QADGV.js +0 -1005
  547. package/dist/scaffold-video-ZMHI2JDU.js +0 -883
  548. package/dist/schedule-FT6P3EKG.js +0 -61
  549. package/dist/scheduled-agents-L7K4QWMD.js +0 -50
  550. package/dist/schema-CH654RZB.js +0 -132
  551. package/dist/search-YKYB2P2M.js +0 -174
  552. package/dist/select-PM7JUDQY.js +0 -101
  553. package/dist/set-prompt-VATAT7H6.js +0 -193
  554. package/dist/setup-links-TM3NCVU7.js +0 -141
  555. package/dist/site-ATAXCWXS.js +0 -177
  556. package/dist/sources-N5RKYKFS.js +0 -30
  557. package/dist/sources-V544MB26.js +0 -454
  558. package/dist/stale-RNEYXKFX.js +0 -71
  559. package/dist/stats-CVF6AC7R.js +0 -34
  560. package/dist/status-DPTFOJVV.js +0 -62
  561. package/dist/stock-4LPQ6SM7.js +0 -179
  562. package/dist/studio-NZ3NA4L4.js +0 -49
  563. package/dist/sync-UBLCCOQZ.js +0 -54
  564. package/dist/sync-definition-RXRSI2LT.js +0 -64
  565. package/dist/tag-manager-FLXXLNKP.js +0 -43
  566. package/dist/tags-2D4AN2QB.js +0 -224
  567. package/dist/tags-5OM2VN3Q.js +0 -26
  568. package/dist/tags-CJWSUBCD.js +0 -20
  569. package/dist/tags-MHKZW2JN.js +0 -20
  570. package/dist/tags-Z6AH7FDT.js +0 -20
  571. package/dist/targeting-criteria-RSAN4KW5.js +0 -113
  572. package/dist/targets-EER2G4WH.js +0 -103
  573. package/dist/testimonials-4WJKAZ5S.js +0 -32
  574. package/dist/themes-XUALHDHR.js +0 -94
  575. package/dist/top-companies-BSOYGMIB.js +0 -108
  576. package/dist/translate-2XRHDWSC.js +0 -604
  577. package/dist/triggers-NU6BQ5NJ.js +0 -142
  578. package/dist/unlink-LQGPZND2.js +0 -67
  579. package/dist/unstage-GDKW56MH.js +0 -85
  580. package/dist/update-43QN723C.js +0 -63
  581. package/dist/update-6CAZKFTC.js +0 -188
  582. package/dist/update-EGOWYBEH.js +0 -152
  583. package/dist/update-QRGEMNBY.js +0 -98
  584. package/dist/upload-LIHRXWUY.js +0 -126
  585. package/dist/url-options-JXL4W7TB.js +0 -130
  586. package/dist/url-params-YXRZ4TUD.js +0 -98
  587. package/dist/validate-KO3MEJUZ.js +0 -117
  588. package/dist/videos-BPJ34YZL.js +0 -39
  589. package/dist/viewer-check-SA5AUQ26.js +0 -80
  590. package/dist/web-KS47ZHXX.js +0 -140
  591. package/dist/winning-ads-LE2ALICG.js +0 -86
  592. package/dist/write-commands-PPR7G4UN.js +0 -1453
  593. package/dist/write-commands-PPR7G4UN.js.map +0 -1
  594. package/dist/x-DZGRJQ7Y.js +0 -47
  595. /package/dist/{account-CJGLH2OL.js.map → account-EF6OPUJT.js.map} +0 -0
  596. /package/dist/{account-UTFFCFNW.js.map → account-UHNR5KTE.js.map} +0 -0
  597. /package/dist/{account-reads-SOTNVUM6.js.map → account-reads-CDZ3EL5D.js.map} +0 -0
  598. /package/dist/{account-writes-OE5FKALN.js.map → account-writes-VWU4FRGQ.js.map} +0 -0
  599. /package/dist/{accounts-XUMRFVLY.js.map → accounts-KMLXHADA.js.map} +0 -0
  600. /package/dist/{accounts-OY4DII7M.js.map → accounts-QDGNTSTV.js.map} +0 -0
  601. /package/dist/{actions-KYKLFVUI.js.map → actions-QL5UD2W4.js.map} +0 -0
  602. /package/dist/{activecampaign-P6RO7B2Q.js.map → activecampaign-5OD45ROS.js.map} +0 -0
  603. /package/dist/{ad-group-writes-343HA4ZG.js.map → ad-group-writes-ID6I3QUZ.js.map} +0 -0
  604. /package/dist/{ad-groups-YMU6ATTW.js.map → ad-groups-M7CV6NTH.js.map} +0 -0
  605. /package/dist/{ad-writes-MINKG33L.js.map → ad-writes-TSOAZYRE.js.map} +0 -0
  606. /package/dist/{add-34QTAS7S.js.map → add-6K6LO7CM.js.map} +0 -0
  607. /package/dist/{add-3IZ3Z2PX.js.map → add-LYDJZDGO.js.map} +0 -0
  608. /package/dist/{ads-QOXCMKZ2.js.map → ads-CGLO73MH.js.map} +0 -0
  609. /package/dist/{ads-JRZVJFXS.js.map → ads-DHPJFU52.js.map} +0 -0
  610. /package/dist/{advertisers-G2UUCWA7.js.map → advertisers-23LU7GTV.js.map} +0 -0
  611. /package/dist/{analytics-FO4EDDQW.js.map → analytics-DVD4OBBR.js.map} +0 -0
  612. /package/dist/{analytics-CKF7HTWT.js.map → analytics-HO2SLL4W.js.map} +0 -0
  613. /package/dist/{animate-K3MJ3GW4.js.map → animate-RGZWDZG2.js.map} +0 -0
  614. /package/dist/{assign-76E76PJY.js.map → assign-CLKJKH2B.js.map} +0 -0
  615. /package/dist/{audience-size-IGDEX4XR.js.map → audience-size-NNYYXODL.js.map} +0 -0
  616. /package/dist/{audiences-4GRCVFZN.js.map → audiences-WXIP5PJH.js.map} +0 -0
  617. /package/dist/{audit-LPSYEY4S.js.map → audit-KB4P2XGS.js.map} +0 -0
  618. /package/dist/{autocomplete-G7MSIJQL.js.map → autocomplete-VZD2SMTE.js.map} +0 -0
  619. /package/dist/{avatars-BF7VWGPH.js.map → avatars-FKOO6VZ2.js.map} +0 -0
  620. /package/dist/{bid-pricing-EAZHVAMJ.js.map → bid-pricing-6LLXOLLI.js.map} +0 -0
  621. /package/dist/{brand-WQI4NV3H.js.map → brand-NNWHBIAX.js.map} +0 -0
  622. /package/dist/{brief-DVFCPBR3.js.map → brief-CPJQWT6W.js.map} +0 -0
  623. /package/dist/{campaign-writes-ECPSPFAB.js.map → campaign-writes-UJ4L2O6G.js.map} +0 -0
  624. /package/dist/{campaign-writes-EZEJNO3O.js.map → campaign-writes-W5IL6ZGB.js.map} +0 -0
  625. /package/dist/{campaigns-7S35PC44.js.map → campaigns-FLTPD66X.js.map} +0 -0
  626. /package/dist/{campaigns-R3EUC5Y2.js.map → campaigns-HLBZRH5A.js.map} +0 -0
  627. /package/dist/{canvas-Y3DKVETP.js.map → canvas-D64GLWUO.js.map} +0 -0
  628. /package/dist/{capabilities-OBP5PDRK.js.map → capabilities-LWXCWMIY.js.map} +0 -0
  629. /package/dist/{catalog-SZS2JCLN.js.map → catalog-ZDLQAODO.js.map} +0 -0
  630. /package/dist/{catalogs-LEABW6AS.js.map → catalogs-26VXVUST.js.map} +0 -0
  631. /package/dist/{changes-4EDY3RNX.js.map → changes-SX2N5KIO.js.map} +0 -0
  632. /package/dist/{chatgpt-JOAEGWCB.js.map → chatgpt-YI6YNACI.js.map} +0 -0
  633. /package/dist/{chats-KE7FNWKF.js.map → chats-7WGC2CVW.js.map} +0 -0
  634. /package/dist/{check-XHK2HVD2.js.map → check-EH6BXWWL.js.map} +0 -0
  635. /package/dist/{chunk-QU4XX5Z7.js.map → chunk-2B772ZEA.js.map} +0 -0
  636. /package/dist/{chunk-DQU2GVU7.js.map → chunk-2KRK667G.js.map} +0 -0
  637. /package/dist/{chunk-F4KWLFCC.js.map → chunk-2TVXJPGR.js.map} +0 -0
  638. /package/dist/{chunk-4ARHIC23.js.map → chunk-3AMLOCXY.js.map} +0 -0
  639. /package/dist/{chunk-22HH46DF.js.map → chunk-3N5A44NQ.js.map} +0 -0
  640. /package/dist/{chunk-ABEIEHOV.js.map → chunk-3S274625.js.map} +0 -0
  641. /package/dist/{chunk-DD3C6TSW.js.map → chunk-3WAYZQNV.js.map} +0 -0
  642. /package/dist/{chunk-FT7RYWOL.js.map → chunk-5A257KJA.js.map} +0 -0
  643. /package/dist/{chunk-6DQDZIBL.js.map → chunk-6QGS3RQP.js.map} +0 -0
  644. /package/dist/{chunk-YJRZVGES.js.map → chunk-7KHTJQGV.js.map} +0 -0
  645. /package/dist/{chunk-6VIHWBOD.js.map → chunk-A3DKSAEL.js.map} +0 -0
  646. /package/dist/{chunk-5PMEMWKS.js.map → chunk-A4DZ5L3T.js.map} +0 -0
  647. /package/dist/{chunk-FL2KIDPV.js.map → chunk-AFD32O4A.js.map} +0 -0
  648. /package/dist/{chunk-CORXHFKY.js.map → chunk-AW2GKIGS.js.map} +0 -0
  649. /package/dist/{chunk-LMYCLUY2.js.map → chunk-B7GF34FU.js.map} +0 -0
  650. /package/dist/{chunk-M2D7ZWEU.js.map → chunk-BDYLILMW.js.map} +0 -0
  651. /package/dist/{chunk-6H64SENZ.js.map → chunk-EJ4QCMM6.js.map} +0 -0
  652. /package/dist/{chunk-3LMAPV6P.js.map → chunk-EMQUW6JB.js.map} +0 -0
  653. /package/dist/{chunk-EFWXYUSK.js.map → chunk-EW3JEKIV.js.map} +0 -0
  654. /package/dist/{chunk-CNFFNE4L.js.map → chunk-F377KYIM.js.map} +0 -0
  655. /package/dist/{chunk-SEMNRIOR.js.map → chunk-FBFWMTOP.js.map} +0 -0
  656. /package/dist/{chunk-QKT7W5JP.js.map → chunk-FCM6VPFP.js.map} +0 -0
  657. /package/dist/{chunk-5KEQXSCN.js.map → chunk-FKYPAGKK.js.map} +0 -0
  658. /package/dist/{chunk-JQHLF74O.js.map → chunk-GXGYTFZA.js.map} +0 -0
  659. /package/dist/{chunk-K2TOE6XL.js.map → chunk-I7J7YQXZ.js.map} +0 -0
  660. /package/dist/{chunk-NDKLPDZ3.js.map → chunk-IBY44U2M.js.map} +0 -0
  661. /package/dist/{chunk-HPIKZPTU.js.map → chunk-IFXGCI33.js.map} +0 -0
  662. /package/dist/{chunk-PFPUPR3H.js.map → chunk-IKLHXGMF.js.map} +0 -0
  663. /package/dist/{chunk-MYSLMKTG.js.map → chunk-IYTPWAN3.js.map} +0 -0
  664. /package/dist/{chunk-UJPURLUZ.js.map → chunk-J3CWAERS.js.map} +0 -0
  665. /package/dist/{chunk-6OIKNJ7G.js.map → chunk-JAC6JVCI.js.map} +0 -0
  666. /package/dist/{chunk-7RCNWRKK.js.map → chunk-JH2L5CQD.js.map} +0 -0
  667. /package/dist/{chunk-ECHVJII5.js.map → chunk-JUVVCA7B.js.map} +0 -0
  668. /package/dist/{chunk-2WBRRYSS.js.map → chunk-MK6XJUCQ.js.map} +0 -0
  669. /package/dist/{chunk-R3OXH3ML.js.map → chunk-MOFMOYUA.js.map} +0 -0
  670. /package/dist/{chunk-SIKCVWM3.js.map → chunk-MZPS46OR.js.map} +0 -0
  671. /package/dist/{chunk-7AWSJ6Z5.js.map → chunk-N3I6ZXR7.js.map} +0 -0
  672. /package/dist/{chunk-ML7GGHTU.js.map → chunk-NBO2NSAW.js.map} +0 -0
  673. /package/dist/{chunk-YQICNXIA.js.map → chunk-NEU5QD2C.js.map} +0 -0
  674. /package/dist/{chunk-AREUZGX7.js.map → chunk-NKIBXOHT.js.map} +0 -0
  675. /package/dist/{chunk-SHBFBQYT.js.map → chunk-NZKBW4YB.js.map} +0 -0
  676. /package/dist/{chunk-HUPHZ35H.js.map → chunk-OE3MIV4F.js.map} +0 -0
  677. /package/dist/{chunk-KI6TENTW.js.map → chunk-OL7JS4NG.js.map} +0 -0
  678. /package/dist/{chunk-7IVY55AU.js.map → chunk-P2MFWJR3.js.map} +0 -0
  679. /package/dist/{chunk-LRFNUCHV.js.map → chunk-PHCIFBP3.js.map} +0 -0
  680. /package/dist/{chunk-WXKSUL4U.js.map → chunk-PTUXBO5O.js.map} +0 -0
  681. /package/dist/{chunk-74BP3JIV.js.map → chunk-Q3LXLWZY.js.map} +0 -0
  682. /package/dist/{chunk-7POQSUPH.js.map → chunk-Q5WBTVA7.js.map} +0 -0
  683. /package/dist/{chunk-Z7BQGWKG.js.map → chunk-QMOYQJIN.js.map} +0 -0
  684. /package/dist/{chunk-6KGLAMPV.js.map → chunk-QRLTVJ6F.js.map} +0 -0
  685. /package/dist/{chunk-D3SHD4KA.js.map → chunk-RDEAVCMF.js.map} +0 -0
  686. /package/dist/{chunk-2VWWLUDJ.js.map → chunk-RGMKXNQP.js.map} +0 -0
  687. /package/dist/{chunk-UM7NJIOU.js.map → chunk-RJZS4XDJ.js.map} +0 -0
  688. /package/dist/{chunk-OUQSDUVI.js.map → chunk-RZTKCCUL.js.map} +0 -0
  689. /package/dist/{chunk-YYPWVQZQ.js.map → chunk-S4VLLGTW.js.map} +0 -0
  690. /package/dist/{chunk-V57TZQPI.js.map → chunk-SVM3DGAQ.js.map} +0 -0
  691. /package/dist/{chunk-2XH7GKCO.js.map → chunk-TTKBNBQF.js.map} +0 -0
  692. /package/dist/{chunk-PGD7USOH.js.map → chunk-VB3XUR6A.js.map} +0 -0
  693. /package/dist/{chunk-3LZM5MWM.js.map → chunk-XCKINS7K.js.map} +0 -0
  694. /package/dist/{chunk-YTF2MI3E.js.map → chunk-Y46FE75E.js.map} +0 -0
  695. /package/dist/{chunk-ZXSXRSFX.js.map → chunk-Z2GQREJY.js.map} +0 -0
  696. /package/dist/{chunk-64BRPYJD.js.map → chunk-ZA7OQLDJ.js.map} +0 -0
  697. /package/dist/{chunk-RNQMXS7G.js.map → chunk-ZDAVSTEE.js.map} +0 -0
  698. /package/dist/{chunk-LQR4CKYW.js.map → chunk-ZXCSOVS5.js.map} +0 -0
  699. /package/dist/{claim-W2ZV4SH3.js.map → claim-SVDCQ2AI.js.map} +0 -0
  700. /package/dist/{companies-ITK3W3H6.js.map → companies-BYMYQK6A.js.map} +0 -0
  701. /package/dist/{complete-RYEVEF3S.js.map → complete-NEH3MWRI.js.map} +0 -0
  702. /package/dist/{connect-FFFNSJ2O.js.map → connect-5PGL7ZOM.js.map} +0 -0
  703. /package/dist/{conversation-KKJNQRFB.js.map → conversation-CSOKJXDW.js.map} +0 -0
  704. /package/dist/{conversion-report-PLQ4MVJR.js.map → conversion-report-7JJ5L6WH.js.map} +0 -0
  705. /package/dist/{conversion-upload-command-Z7F6NQH4.js.map → conversion-upload-command-UO2QWG3J.js.map} +0 -0
  706. /package/dist/{conversion-writes-VNOXZ4NR.js.map → conversion-writes-GIGAZT4T.js.map} +0 -0
  707. /package/dist/{conversions-KPIFDO2R.js.map → conversions-CIJZLGII.js.map} +0 -0
  708. /package/dist/{create-TYWQP57A.js.map → create-2XYMBULY.js.map} +0 -0
  709. /package/dist/{create-A3R7YRT3.js.map → create-56PTZABQ.js.map} +0 -0
  710. /package/dist/{create-3R6Q2E2M.js.map → create-D6S6TGWY.js.map} +0 -0
  711. /package/dist/{create-UUEWQUPT.js.map → create-SMW4O5PC.js.map} +0 -0
  712. /package/dist/{creatives-UK4VITNW.js.map → creatives-OO76DAFS.js.map} +0 -0
  713. /package/dist/{credentials-A65GYH4D.js.map → credentials-2ONYUJW6.js.map} +0 -0
  714. /package/dist/{critique-46O4VVPM.js.map → critique-NDDFSGPE.js.map} +0 -0
  715. /package/dist/{critique-RPRMG2ZC.js.map → critique-YXZVMLZ4.js.map} +0 -0
  716. /package/dist/{crm-2WYW3D22.js.map → crm-Q6CEP5XV.js.map} +0 -0
  717. /package/dist/{crm-PQ24MNIU.js.map → crm-WRONZYDH.js.map} +0 -0
  718. /package/dist/{currency-Q3HCK447.js.map → currency-TAEJVMVK.js.map} +0 -0
  719. /package/dist/{customers-YTQ7IQ5C.js.map → customers-2EFYSCU2.js.map} +0 -0
  720. /package/dist/{delete-PQ4NUNLX.js.map → delete-7WEVC3FS.js.map} +0 -0
  721. /package/dist/{delete-BBISJTFG.js.map → delete-RBWK255M.js.map} +0 -0
  722. /package/dist/{delete-TBW6TJ6A.js.map → delete-VN4WWMQF.js.map} +0 -0
  723. /package/dist/{demographics-EVP55FT3.js.map → demographics-I5XZ435C.js.map} +0 -0
  724. /package/dist/{discard-LPJA4DEY.js.map → discard-XJLIXTNM.js.map} +0 -0
  725. /package/dist/{discover-3G6CE7X3.js.map → discover-5Z253HXF.js.map} +0 -0
  726. /package/dist/{domain-5MM7V7JD.js.map → domain-M7AEGAYI.js.map} +0 -0
  727. /package/dist/{draft-EGS7UFF3.js.map → draft-7DWRFCXW.js.map} +0 -0
  728. /package/dist/{draft-K3O7Q3A5.js.map → draft-7IIYHSY2.js.map} +0 -0
  729. /package/dist/{draft-34D5MOKA.js.map → draft-CN6GKVBF.js.map} +0 -0
  730. /package/dist/{draft-J6GJXZRX.js.map → draft-MNEM4N5W.js.map} +0 -0
  731. /package/dist/{experiment-7RJ5X2LL.js.map → experiment-IDDWRCJ7.js.map} +0 -0
  732. /package/dist/{facets-RUZKALF3.js.map → facets-ZLZ6LIHN.js.map} +0 -0
  733. /package/dist/{feedback-S5LHJYZD.js.map → feedback-7LEX2P5Q.js.map} +0 -0
  734. /package/dist/{feedback-record-GAM2R5GG.js.map → feedback-record-P4JJ63KA.js.map} +0 -0
  735. /package/dist/{fetch-FA6TR66Y.js.map → fetch-MIVCEHXZ.js.map} +0 -0
  736. /package/dist/{find-2EPXK5RF.js.map → find-VHN34MWL.js.map} +0 -0
  737. /package/dist/{fit-MOMO4AXL.js.map → fit-SS6HSZPU.js.map} +0 -0
  738. /package/dist/{flows-DMMCSBWY.js.map → flows-UTIIHDNE.js.map} +0 -0
  739. /package/dist/{fonts-G4JLXWX2.js.map → fonts-YPNN7ZJP.js.map} +0 -0
  740. /package/dist/{forecast-OOP4K5DE.js.map → forecast-OBSHG2GJ.js.map} +0 -0
  741. /package/dist/{forecast-V65WS5QG.js.map → forecast-W7Z5TVQX.js.map} +0 -0
  742. /package/dist/{funnel-SEQPUM3X.js.map → funnel-Z2VLXUEQ.js.map} +0 -0
  743. /package/dist/{ga4-6EIQC2TG.js.map → ga4-ZPAEF2G2.js.map} +0 -0
  744. /package/dist/{generate-IDDQD5FU.js.map → generate-Y76WU7M7.js.map} +0 -0
  745. /package/dist/{get-DEOZMGOQ.js.map → get-MDAO6I7T.js.map} +0 -0
  746. /package/dist/{get-SEJINVOS.js.map → get-ZB553BSH.js.map} +0 -0
  747. /package/dist/{google-O5OI6QFU.js.map → google-C3X7O2UO.js.map} +0 -0
  748. /package/dist/{google-7L3FWKPJ.js.map → google-WYXDMH2N.js.map} +0 -0
  749. /package/dist/{google-ads-MIGWMCWY.js.map → google-ads-FTWL772L.js.map} +0 -0
  750. /package/dist/{gsc-BM3T2GDL.js.map → gsc-SDDHGTZK.js.map} +0 -0
  751. /package/dist/{history-Z5577FPQ.js.map → history-DGHMJ2XF.js.map} +0 -0
  752. /package/dist/{history-IBWXCDCB.js.map → history-WKJYKDMG.js.map} +0 -0
  753. /package/dist/{hubspot-6AZKUX72.js.map → hubspot-EPHVEPOO.js.map} +0 -0
  754. /package/dist/{icon-B7DG53S5.js.map → icon-MYPDC6FM.js.map} +0 -0
  755. /package/dist/{ideas-AX7S3NCG.js.map → ideas-3PBH7VEX.js.map} +0 -0
  756. /package/dist/{images-632SXTB5.js.map → images-J35C3WG4.js.map} +0 -0
  757. /package/dist/{ingest-T3OK3DRG.js.map → ingest-5QOPUKFE.js.map} +0 -0
  758. /package/dist/{ingest-HS55RVKH.js.map → ingest-OKUYP632.js.map} +0 -0
  759. /package/dist/{insights-UDX66IMV.js.map → insights-EU45J56U.js.map} +0 -0
  760. /package/dist/{inspect-D6ZIUBH3.js.map → inspect-PMNCP6MV.js.map} +0 -0
  761. /package/dist/{inspiration-TCCKM4R7.js.map → inspiration-QAL7NS7G.js.map} +0 -0
  762. /package/dist/{intent-3WTKKTUX.js.map → intent-FUGWRUSW.js.map} +0 -0
  763. /package/dist/{keyword-gap-7GESZXY2.js.map → keyword-gap-DXTKZLV2.js.map} +0 -0
  764. /package/dist/{keyword-metrics-J43MV3RQ.js.map → keyword-metrics-R752SJIT.js.map} +0 -0
  765. /package/dist/{keywords-for-site-6YKCTFJZ.js.map → keywords-for-site-7UWPJYQF.js.map} +0 -0
  766. /package/dist/{landing-Y7DI2FUT.js.map → landing-CBVIOGJ5.js.map} +0 -0
  767. /package/dist/{languages-LSKNZI2A.js.map → languages-XRTTEJ5P.js.map} +0 -0
  768. /package/dist/{learn-M4UHA476.js.map → learn-N6QV7GXA.js.map} +0 -0
  769. /package/dist/{line-item-writes-F2OPBMIE.js.map → line-item-writes-3WPJXKIL.js.map} +0 -0
  770. /package/dist/{line-items-YJ3DLV2U.js.map → line-items-ZOFKOGAA.js.map} +0 -0
  771. /package/dist/{link-RZKYW22K.js.map → link-DDRQKOUL.js.map} +0 -0
  772. /package/dist/{list-NPJ34244.js.map → list-5PLXVPLB.js.map} +0 -0
  773. /package/dist/{list-XK5CHKYJ.js.map → list-VSJISE7U.js.map} +0 -0
  774. /package/dist/{list-WTVBOTA4.js.map → list-WTVOBQYX.js.map} +0 -0
  775. /package/dist/{locations-DSDCNP5Z.js.map → locations-PCZPKH47.js.map} +0 -0
  776. /package/dist/{locations-SFZN4MYW.js.map → locations-TGJH3URF.js.map} +0 -0
  777. /package/dist/{log-K4FWHXIM.js.map → log-YKKPROLZ.js.map} +0 -0
  778. /package/dist/{logo-QTSBKP2J.js.map → logo-WE2UELX6.js.map} +0 -0
  779. /package/dist/{make-VQDUKVPB.js.map → make-RNOWBLZQ.js.map} +0 -0
  780. /package/dist/{map-Z3MEM6QX.js.map → map-WTDPQLVO.js.map} +0 -0
  781. /package/dist/{mcp-KJOSR534.js.map → mcp-XJNSCPP3.js.map} +0 -0
  782. /package/dist/{media-sources-44HTWIY3.js.map → media-sources-JGBDDXZ5.js.map} +0 -0
  783. /package/dist/{members-HGU22NL3.js.map → members-O3BTMRXX.js.map} +0 -0
  784. /package/dist/{metrics-OV2EKPJ6.js.map → metrics-PYPCW7FJ.js.map} +0 -0
  785. /package/dist/{models-NGAUD6QJ.js.map → models-IAGO5GIH.js.map} +0 -0
  786. /package/dist/{normalize-IUPOHEZJ.js.map → normalize-R5AYLA2J.js.map} +0 -0
  787. /package/dist/{options-TL5TPGHK.js.map → options-AILRY7JY.js.map} +0 -0
  788. /package/dist/{organization-3ORT4474.js.map → organization-KJJXZLVK.js.map} +0 -0
  789. /package/dist/{performance-PCZHQCZ5.js.map → performance-7YU4HOGH.js.map} +0 -0
  790. /package/dist/{pixels-GHEAK62X.js.map → pixels-R4MOLWAR.js.map} +0 -0
  791. /package/dist/{promoted-tweet-writes-O4RTZFSI.js.map → promoted-tweet-writes-TNELWPVG.js.map} +0 -0
  792. /package/dist/{promoted-tweets-AWP6MGJI.js.map → promoted-tweets-76WKUFJQ.js.map} +0 -0
  793. /package/dist/{publish-PODZKJHW.js.map → publish-BKLHCKHB.js.map} +0 -0
  794. /package/dist/{query-FUSR27T4.js.map → query-XDHZMGLX.js.map} +0 -0
  795. /package/dist/{reddit-UNUNWSNR.js.map → reddit-YK3YUZEI.js.map} +0 -0
  796. /package/dist/{refresh-34UO2LXY.js.map → refresh-WIII7KXB.js.map} +0 -0
  797. /package/dist/{release-BD3EAD75.js.map → release-ZHXYQI7G.js.map} +0 -0
  798. /package/dist/{relevant-pages-FNKYR2OG.js.map → relevant-pages-CTG72PBR.js.map} +0 -0
  799. /package/dist/{remove-YQYSQCWI.js.map → remove-NOX4BXWK.js.map} +0 -0
  800. /package/dist/{reopen-MULNJOR5.js.map → reopen-NLWKK5HB.js.map} +0 -0
  801. /package/dist/{rerun-6YGYJPM7.js.map → rerun-DZWQNMZQ.js.map} +0 -0
  802. /package/dist/{research-6WEL3USW.js.map → research-Q3P76RHN.js.map} +0 -0
  803. /package/dist/{research-OBECRSPL.js.map → research-UDZBCDNX.js.map} +0 -0
  804. /package/dist/{reset-5TTLZ43U.js.map → reset-5UHFX7QY.js.map} +0 -0
  805. /package/dist/{reset-PRTK6YUD.js.map → reset-MTRJQUP7.js.map} +0 -0
  806. /package/dist/{resolve-6RM63T55.js.map → resolve-DA72VT7Q.js.map} +0 -0
  807. /package/dist/{retry-Z3C624JW.js.map → retry-LQUBX5TK.js.map} +0 -0
  808. /package/dist/{retry-XYTVP7BV.js.map → retry-U6F4CS6O.js.map} +0 -0
  809. /package/dist/{rules-AUAJUM2T.js.map → rules-VS5PZ7VO.js.map} +0 -0
  810. /package/dist/{rules-add-7VFGPGZ7.js.map → rules-add-LMVZYDXE.js.map} +0 -0
  811. /package/dist/{run-S3SVCTIB.js.map → run-6PRA2YSD.js.map} +0 -0
  812. /package/dist/{run-YA5RCRIX.js.map → run-R6COFNOR.js.map} +0 -0
  813. /package/dist/{scaffold-ad-2KQULVJU.js.map → scaffold-ad-3OVJ7VZQ.js.map} +0 -0
  814. /package/dist/{scaffold-static-ad-S46QADGV.js.map → scaffold-static-ad-DDRA3Q5I.js.map} +0 -0
  815. /package/dist/{scaffold-video-ZMHI2JDU.js.map → scaffold-video-3JZYFYFU.js.map} +0 -0
  816. /package/dist/{schedule-FT6P3EKG.js.map → schedule-ED2YDUPY.js.map} +0 -0
  817. /package/dist/{scheduled-agents-L7K4QWMD.js.map → scheduled-agents-5P67MVGX.js.map} +0 -0
  818. /package/dist/{schema-CH654RZB.js.map → schema-4XVKERSA.js.map} +0 -0
  819. /package/dist/{search-YKYB2P2M.js.map → search-Y2UMIQ57.js.map} +0 -0
  820. /package/dist/{select-PM7JUDQY.js.map → select-OZ4E6VLF.js.map} +0 -0
  821. /package/dist/{set-prompt-VATAT7H6.js.map → set-prompt-O4YAE4CE.js.map} +0 -0
  822. /package/dist/{setup-links-TM3NCVU7.js.map → setup-links-2GJYCV2A.js.map} +0 -0
  823. /package/dist/{site-ATAXCWXS.js.map → site-47B6V2UX.js.map} +0 -0
  824. /package/dist/{sources-V544MB26.js.map → sources-DXPZAPQ7.js.map} +0 -0
  825. /package/dist/{sources-N5RKYKFS.js.map → sources-NDXYTASG.js.map} +0 -0
  826. /package/dist/{stale-RNEYXKFX.js.map → stale-VLVBO2L6.js.map} +0 -0
  827. /package/dist/{stats-CVF6AC7R.js.map → stats-37OFAMPW.js.map} +0 -0
  828. /package/dist/{status-DPTFOJVV.js.map → status-4ODD46XY.js.map} +0 -0
  829. /package/dist/{stock-4LPQ6SM7.js.map → stock-6R5E7MJX.js.map} +0 -0
  830. /package/dist/{studio-NZ3NA4L4.js.map → studio-LEIGL3Q7.js.map} +0 -0
  831. /package/dist/{sync-UBLCCOQZ.js.map → sync-TKNVBUDM.js.map} +0 -0
  832. /package/dist/{sync-definition-RXRSI2LT.js.map → sync-definition-M5R3H3TP.js.map} +0 -0
  833. /package/dist/{tag-manager-FLXXLNKP.js.map → tag-manager-3Q55PBEW.js.map} +0 -0
  834. /package/dist/{tags-5OM2VN3Q.js.map → tags-4N5UUUN6.js.map} +0 -0
  835. /package/dist/{tags-MHKZW2JN.js.map → tags-5NHIAD5A.js.map} +0 -0
  836. /package/dist/{tags-Z6AH7FDT.js.map → tags-UUKWSWCN.js.map} +0 -0
  837. /package/dist/{tags-CJWSUBCD.js.map → tags-VK7B5DJF.js.map} +0 -0
  838. /package/dist/{tags-2D4AN2QB.js.map → tags-XAHIB3WA.js.map} +0 -0
  839. /package/dist/{targeting-criteria-RSAN4KW5.js.map → targeting-criteria-AVARWV2G.js.map} +0 -0
  840. /package/dist/{targets-EER2G4WH.js.map → targets-6RYLQRID.js.map} +0 -0
  841. /package/dist/{testimonials-4WJKAZ5S.js.map → testimonials-6TF6BOFN.js.map} +0 -0
  842. /package/dist/{themes-XUALHDHR.js.map → themes-JZ3DPE7L.js.map} +0 -0
  843. /package/dist/{top-companies-BSOYGMIB.js.map → top-companies-45EHRCJD.js.map} +0 -0
  844. /package/dist/{translate-2XRHDWSC.js.map → translate-VHLBACCE.js.map} +0 -0
  845. /package/dist/{triggers-NU6BQ5NJ.js.map → triggers-ERQONJNO.js.map} +0 -0
  846. /package/dist/{unlink-LQGPZND2.js.map → unlink-TPDO6JNF.js.map} +0 -0
  847. /package/dist/{unstage-GDKW56MH.js.map → unstage-YKKQQ7LW.js.map} +0 -0
  848. /package/dist/{update-43QN723C.js.map → update-43WU6X7R.js.map} +0 -0
  849. /package/dist/{update-QRGEMNBY.js.map → update-CAHLAXWO.js.map} +0 -0
  850. /package/dist/{update-EGOWYBEH.js.map → update-NGH6YADN.js.map} +0 -0
  851. /package/dist/{update-6CAZKFTC.js.map → update-SPJIHHLE.js.map} +0 -0
  852. /package/dist/{upload-LIHRXWUY.js.map → upload-ACESIZIZ.js.map} +0 -0
  853. /package/dist/{url-options-JXL4W7TB.js.map → url-options-VNX5KYUQ.js.map} +0 -0
  854. /package/dist/{url-params-YXRZ4TUD.js.map → url-params-MIXEDBF7.js.map} +0 -0
  855. /package/dist/{validate-KO3MEJUZ.js.map → validate-XJJA7ULE.js.map} +0 -0
  856. /package/dist/{videos-BPJ34YZL.js.map → videos-LBXPG7WC.js.map} +0 -0
  857. /package/dist/{viewer-check-SA5AUQ26.js.map → viewer-check-7VJ3GUZX.js.map} +0 -0
  858. /package/dist/{web-KS47ZHXX.js.map → web-EWQJC2SD.js.map} +0 -0
  859. /package/dist/{winning-ads-LE2ALICG.js.map → winning-ads-SAOJAKEQ.js.map} +0 -0
  860. /package/dist/{x-DZGRJQ7Y.js.map → x-LXOJPCRF.js.map} +0 -0
@@ -0,0 +1,903 @@
1
+ import {
2
+ flowsDir,
3
+ walkNodes
4
+ } from "./chunk-Q3LXLWZY.js";
5
+
6
+ // ../api/src/activecampaign.ts
7
+ import { z } from "zod";
8
+ var ACTIVECAMPAIGN_FIELD_TYPES = [
9
+ "standard",
10
+ "custom",
11
+ "tags",
12
+ "lists",
13
+ "automations",
14
+ "deal",
15
+ "account",
16
+ "note",
17
+ "event"
18
+ ];
19
+ var ACTIVECAMPAIGN_TAGS_KEY = "tags";
20
+ var ACTIVECAMPAIGN_DEAL_FIELDS = [
21
+ { key: "title", label: "Deal title" },
22
+ { key: "value", label: "Deal value" },
23
+ { key: "currency", label: "Deal currency" },
24
+ { key: "pipeline", label: "Pipeline" },
25
+ { key: "stage", label: "Stage" },
26
+ { key: "owner", label: "Deal owner" },
27
+ { key: "description", label: "Deal description" }
28
+ ];
29
+ var ACTIVECAMPAIGN_ACCOUNT_FIELDS = [
30
+ { key: "name", label: "Account name" },
31
+ { key: "url", label: "Account website" }
32
+ ];
33
+ var ACTIVECAMPAIGN_EVENT_FIELDS = [
34
+ { key: "name", label: "Event name" },
35
+ { key: "data", label: "Event details" }
36
+ ];
37
+ function splitActiveCampaignNames(value) {
38
+ const seen = /* @__PURE__ */ new Set();
39
+ for (const raw of value.split(",")) {
40
+ const name = raw.trim().slice(0, 255);
41
+ if (name) seen.add(name);
42
+ }
43
+ return [...seen];
44
+ }
45
+ function findActiveCampaignOption(options, named) {
46
+ const wanted = named.trim();
47
+ if (!wanted) return void 0;
48
+ return options.find((option) => option.id === wanted) ?? options.find((option) => option.name.trim().toLowerCase() === wanted.toLowerCase());
49
+ }
50
+ var activeCampaignFieldSchema = z.object({
51
+ fieldType: z.enum(ACTIVECAMPAIGN_FIELD_TYPES),
52
+ /** What the mapping stores: the standard field's name, a custom field's id, `tags`, a deal part, …. */
53
+ fieldKey: z.string(),
54
+ label: z.string(),
55
+ /** ActiveCampaign's own type for a custom field (`text`, `date`, `dropdown`, …); null otherwise. */
56
+ dataType: z.string().nullable(),
57
+ /** A custom field's personalization tag (`%SECTOR%`), which people recognise it by. */
58
+ perstag: z.string().nullable()
59
+ });
60
+ function fixedField(fieldType, fieldKey, label, dataType = null) {
61
+ return { fieldType, fieldKey, label, dataType, perstag: null };
62
+ }
63
+ var ACTIVECAMPAIGN_FIXED_FIELDS = [
64
+ fixedField("tags", ACTIVECAMPAIGN_TAGS_KEY, "Tags"),
65
+ fixedField("lists", "lists", "Lists"),
66
+ fixedField("automations", "automations", "Automations"),
67
+ ...ACTIVECAMPAIGN_DEAL_FIELDS.map(
68
+ (field) => fixedField("deal", field.key, field.label, field.key === "value" ? "currency" : null)
69
+ ),
70
+ ...ACTIVECAMPAIGN_ACCOUNT_FIELDS.map((field) => fixedField("account", field.key, field.label)),
71
+ fixedField("note", "note", "Note"),
72
+ ...ACTIVECAMPAIGN_EVENT_FIELDS.map((field) => fixedField("event", field.key, field.label))
73
+ ];
74
+ var activeCampaignOptionSchema = z.object({ id: z.string(), name: z.string() });
75
+ var activeCampaignPipelineSchema = activeCampaignOptionSchema.extend({
76
+ stages: z.array(activeCampaignOptionSchema)
77
+ });
78
+ var activeCampaignAutomationSchema = activeCampaignOptionSchema.extend({
79
+ startTags: z.array(z.string()).default([])
80
+ });
81
+ var activeCampaignCatalogSchema = z.object({
82
+ fields: z.array(activeCampaignFieldSchema),
83
+ lists: z.array(activeCampaignOptionSchema).default([]),
84
+ automations: z.array(activeCampaignAutomationSchema).default([]),
85
+ pipelines: z.array(activeCampaignPipelineSchema).default([]),
86
+ users: z.array(activeCampaignOptionSchema).default([]),
87
+ /** Whether events can be sent: an event key is pasted on the connection, or ActiveCampaign reports one (event tracking is on). */
88
+ eventKeySaved: z.boolean().default(false)
89
+ });
90
+ var activeCampaignFieldsRequestSchema = z.object({
91
+ /** Connection id; optional when the company has exactly one ActiveCampaign account. */
92
+ account: z.string().optional()
93
+ });
94
+ var activeCampaignFieldsResponseSchema = z.object({
95
+ ok: z.literal(true),
96
+ data: activeCampaignCatalogSchema.extend({ account: z.string() })
97
+ });
98
+
99
+ // src/commands/flows/value-expression.ts
100
+ import { existsSync, readFileSync } from "fs";
101
+ import { join } from "path";
102
+ var PREFIXES = ["field", "tracking", "global", "code"];
103
+ function splitParts(raw) {
104
+ const parts = [];
105
+ let current = "";
106
+ let inQuotes = false;
107
+ for (let i = 0; i < raw.length; i++) {
108
+ const char = raw[i];
109
+ if (char === '"') {
110
+ inQuotes = !inQuotes;
111
+ current += char;
112
+ } else if (char === "+" && !inQuotes) {
113
+ parts.push(current);
114
+ current = "";
115
+ } else {
116
+ current += char;
117
+ }
118
+ }
119
+ parts.push(current);
120
+ if (inQuotes) {
121
+ throw new MappingError(`Unclosed quote in value \`${raw}\`.`, 'A literal is written "like this".');
122
+ }
123
+ return parts.map((part) => part.trim()).filter((part) => part.length > 0);
124
+ }
125
+ var TRANSFORM_REFUSAL = "A value cannot run code. Map the field as it is (firstname=full_name), or split it in the step with a codeExecution that exposes first_name and last_name and map code:first_name.";
126
+ var METHOD_CALL = /\.\s*[A-Za-z_$][\w$]*\s*\(/;
127
+ var TRAILING_INDEX = /\[[^\]]*\]$/;
128
+ function mentionPart(inner) {
129
+ if (inner.startsWith("tracking.")) return { kind: "tracking", name: inner.slice("tracking.".length) };
130
+ if (inner.startsWith("global.")) return { kind: "global", name: inner.slice("global.".length) };
131
+ return referencePart(inner);
132
+ }
133
+ function referencePart(ref) {
134
+ return /\.codeExecution\.[^.]+$/.test(ref) ? { kind: "code", ref } : { kind: "field", ref };
135
+ }
136
+ function parsePart(part) {
137
+ if (part.startsWith('"') && part.endsWith('"') && part.length >= 2) {
138
+ return { kind: "text", text: part.slice(1, -1) };
139
+ }
140
+ if (METHOD_CALL.test(part) || TRAILING_INDEX.test(part)) {
141
+ throw new MappingError(TRANSFORM_REFUSAL);
142
+ }
143
+ if (part.startsWith("{{")) {
144
+ const close = part.indexOf("}}");
145
+ if (close < 0) {
146
+ throw new MappingError(
147
+ `Unclosed \`{{\` in value \`${part}\`.`,
148
+ "A mention is written {{<stepId>.customForm.<field>}}."
149
+ );
150
+ }
151
+ if (part.slice(close + 2).trim()) throw new MappingError(TRANSFORM_REFUSAL);
152
+ return mentionPart(part.slice(2, close).trim());
153
+ }
154
+ const colon = part.indexOf(":");
155
+ if (colon <= 0) return referencePart(part);
156
+ const prefix = part.slice(0, colon);
157
+ const rest = part.slice(colon + 1).trim();
158
+ if (!PREFIXES.includes(prefix)) {
159
+ throw new MappingError(
160
+ `\`${prefix}:\` is not a value kind.`,
161
+ `Use one of ${PREFIXES.map((candidate) => `${candidate}:`).join(" ")}, a bare form field name, or a "quoted literal".`
162
+ );
163
+ }
164
+ if (!rest) throw new MappingError(`\`${part}\` names no ${prefix}.`);
165
+ switch (prefix) {
166
+ case "tracking":
167
+ return { kind: "tracking", name: rest.replace(/^tracking\./, "") };
168
+ case "global":
169
+ return { kind: "global", name: rest };
170
+ case "code":
171
+ return { kind: "code", ref: rest };
172
+ default:
173
+ return { kind: "field", ref: rest };
174
+ }
175
+ }
176
+ function parseValueExpression(raw) {
177
+ const parts = splitParts(raw);
178
+ if (parts.length === 0) {
179
+ throw new MappingError("A --map needs a value on the right of the `=`.");
180
+ }
181
+ return parts.map(parsePart);
182
+ }
183
+ function trackingFieldIds() {
184
+ const path = join(flowsDir(), "..", "tracking.ts");
185
+ if (!existsSync(path)) return null;
186
+ try {
187
+ const source = readFileSync(path, "utf-8");
188
+ const block = source.match(/TRACKING_FIELD_IDS\s*=\s*\[([\s\S]*?)\]\s*as const/)?.[1];
189
+ if (!block) return null;
190
+ const ids = [...block.matchAll(/"(tracking\.[a-z0-9_]+)"/g)].map((match) => match[1]);
191
+ return ids.length > 0 ? new Set(ids) : null;
192
+ } catch {
193
+ return null;
194
+ }
195
+ }
196
+ function externalOf(node) {
197
+ const nodeData = node.nodeData ?? {};
198
+ return nodeData.form?.external ?? {};
199
+ }
200
+ function fieldOwners(tree) {
201
+ return walkNodes(tree).flatMap((node) => {
202
+ const external = externalOf(node);
203
+ if (!Array.isArray(external.fields)) return [];
204
+ return [
205
+ {
206
+ id: String(node.id ?? ""),
207
+ name: typeof node.name === "string" && node.name ? node.name : "Form",
208
+ fields: external.fields.map((field) => field?.fieldName).filter((name) => typeof name === "string")
209
+ }
210
+ ];
211
+ });
212
+ }
213
+ function splitRef(ref, segment) {
214
+ const marker = `.${segment}.`;
215
+ const at = ref.lastIndexOf(marker);
216
+ if (at > 0 && !ref.slice(at + marker.length).includes(".")) {
217
+ return { step: ref.slice(0, at), name: ref.slice(at + marker.length) };
218
+ }
219
+ const dot = ref.lastIndexOf(".");
220
+ if (dot <= 0) return { name: ref };
221
+ return { step: ref.slice(0, dot), name: ref.slice(dot + 1) };
222
+ }
223
+ function mention(id, label) {
224
+ return { type: "VariablesMention", attrs: { id, label, mentionSuggestionChar: "{{" } };
225
+ }
226
+ function titleize(value) {
227
+ return value.split(/[_-]+/).filter(Boolean).map((word) => word.charAt(0).toUpperCase() + word.slice(1)).join(" ");
228
+ }
229
+ function resolveField(tree, ref) {
230
+ const { step, name } = splitRef(ref, "customForm");
231
+ const owners = fieldOwners(tree);
232
+ const inventory = owners.map((owner2) => ` ${owner2.name} (${owner2.id}): ${owner2.fields.join(", ") || "(no fields)"}`).join("\n");
233
+ const candidates = owners.filter(
234
+ (owner2) => owner2.fields.includes(name) && (!step || owner2.name === step || owner2.id === step)
235
+ );
236
+ if (candidates.length === 0) {
237
+ throw new MappingError(`Form field "${ref}" does not exist in this form.`, inventory);
238
+ }
239
+ if (candidates.length > 1) {
240
+ throw new MappingError(
241
+ `Form field "${name}" exists on ${candidates.length} steps \u2014 say which: field:<step>.${name}`,
242
+ candidates.map((owner2) => ` field:${owner2.name}.${name}`).join("\n")
243
+ );
244
+ }
245
+ const owner = candidates[0];
246
+ return mention(`${owner.id}.customForm.${name}`, `${owner.name} => ${titleize(name)}`);
247
+ }
248
+ function resolveTracking(name) {
249
+ const id = `tracking.${name}`;
250
+ const known = trackingFieldIds();
251
+ if (known && !known.has(id)) {
252
+ const near = [...known].filter((candidate) => candidate.includes(name.split("_")[0] ?? name)).slice(0, 8);
253
+ throw new MappingError(
254
+ `\`${id}\` is not a tracking variable.`,
255
+ near.length > 0 ? `Close matches: ${near.join(", ")}` : "See references/autofill-and-variables.md \xA7 Built-in Tracking Variables."
256
+ );
257
+ }
258
+ return mention(id, id);
259
+ }
260
+ function resolveGlobal(tree, name) {
261
+ const globals = tree.globalVariables ?? [];
262
+ const match = globals.find((variable) => variable?.name === name || variable?.id === name);
263
+ if (!match) {
264
+ throw new MappingError(
265
+ `No global variable named "${name}" on this form.`,
266
+ globals.length > 0 ? `Defined: ${globals.map((variable) => String(variable.name)).join(", ")}` : "This form defines none. Globals live on the first node only \u2014 see references/autofill-and-variables.md \xA7 Global Variables."
267
+ );
268
+ }
269
+ const id = `global.${String(match.id)}`;
270
+ return mention(id, id);
271
+ }
272
+ function resolveCode(tree, ref) {
273
+ const { step, name } = splitRef(ref, "codeExecution");
274
+ const owners = walkNodes(tree).flatMap((node) => {
275
+ const exposed = externalOf(node).codeExecution?.exposedValues ?? [];
276
+ const names = exposed.map((value) => value?.name).filter((value) => typeof value === "string");
277
+ return names.length > 0 ? [{ id: String(node.id ?? ""), name: String(node.name ?? "step"), names }] : [];
278
+ });
279
+ const candidates = owners.filter(
280
+ (owner2) => owner2.names.includes(name) && (!step || owner2.name === step || owner2.id === step)
281
+ );
282
+ if (candidates.length !== 1) {
283
+ throw new MappingError(
284
+ candidates.length === 0 ? `No codeExecution exposes "${ref}" on this form.` : `"${name}" is exposed by ${candidates.length} steps \u2014 say which: code:<step>.${name}`,
285
+ owners.length > 0 ? owners.map((owner2) => ` ${owner2.name} (${owner2.id}): ${owner2.names.join(", ")}`).join("\n") : "No step on this form exposes any codeExecution value."
286
+ );
287
+ }
288
+ const owner = candidates[0];
289
+ return mention(`${owner.id}.codeExecution.${name}`, `${owner.name} => ${titleize(name)}`);
290
+ }
291
+ function buildValueDoc(tree, expression) {
292
+ const parts = parseValueExpression(expression);
293
+ const content = parts.map((part) => {
294
+ switch (part.kind) {
295
+ case "text":
296
+ return { type: "text", text: part.text };
297
+ case "tracking":
298
+ return resolveTracking(part.name);
299
+ case "global":
300
+ return resolveGlobal(tree, part.name);
301
+ case "code":
302
+ return resolveCode(tree, part.ref);
303
+ default:
304
+ return resolveField(tree, part.ref);
305
+ }
306
+ });
307
+ const single = content.length === 1 && parts[0]?.kind !== "text";
308
+ return {
309
+ type: "doc",
310
+ content: [{ type: "paragraph", content: single ? [...content, { type: "text", text: " " }] : content }]
311
+ };
312
+ }
313
+
314
+ // src/commands/flows/mapping.ts
315
+ var MappingError = class extends Error {
316
+ fix;
317
+ constructor(message, fix) {
318
+ super(message);
319
+ this.name = "MappingError";
320
+ this.fix = fix;
321
+ }
322
+ };
323
+ var PAYLOAD = (key) => ({ kind: "list", key, addressedBy: "key" });
324
+ var META_MATCHING = ["em", "fn", "ln", "ph", "external_id", "ge", "db", "ct", "st", "zp", "country"];
325
+ var ADS_MATCHING = [
326
+ "email",
327
+ "phone_number",
328
+ "first_name",
329
+ "last_name",
330
+ "street",
331
+ "city",
332
+ "region",
333
+ "postal_code",
334
+ "country"
335
+ ];
336
+ var MAPPING_SLOTS = {
337
+ googleSpreadsheet: [{ kind: "list", key: "columnMapping", addressedBy: "column" }],
338
+ hubspotForm: [
339
+ {
340
+ kind: "list",
341
+ key: "fieldMapping",
342
+ addressedBy: "fieldName",
343
+ needsFieldType: true,
344
+ fieldTypeSource: "Pass --hubspot-form <formGuid> and this command reads every property's type off the form itself \u2014 the guid is the `formGuid` in the `destination` request_flow_input returned. `baker hubspot forms view <formGuid>` prints the same list if you want to see it."
345
+ }
346
+ ],
347
+ pipedrive: [
348
+ {
349
+ kind: "list",
350
+ key: "fieldMapping",
351
+ addressedBy: "fieldKey",
352
+ entities: ["person", "organization", "lead"],
353
+ needsFieldType: true,
354
+ needsIsCustom: true
355
+ }
356
+ ],
357
+ goHighlevelContact: [
358
+ {
359
+ kind: "list",
360
+ key: "fieldMapping",
361
+ addressedBy: "fieldKey",
362
+ entities: ["business", "contact", "opportunity"],
363
+ needsFieldType: true,
364
+ needsIsCustom: true
365
+ }
366
+ ],
367
+ crmble: [
368
+ { kind: "list", key: "fieldMapping", addressedBy: "fieldId", entities: ["contact", "lead"], needsFieldType: true }
369
+ ],
370
+ activeCampaignContact: [
371
+ {
372
+ kind: "list",
373
+ key: "fieldMapping",
374
+ addressedBy: "fieldKey",
375
+ needsFieldType: true,
376
+ fieldTypes: ACTIVECAMPAIGN_FIELD_TYPES,
377
+ qualifiedByFieldType: true,
378
+ fieldTypeSource: 'None to write: this command reads the connected ActiveCampaign account\'s field list itself. Write `email=email`, `firstName=nombre`, a custom field by its id, personalization tag or label (`SECTOR=sector`; `custom.UTM_SOURCE=\u2026` for one only staged so far), `tags="withbaker-"+tracking:page_path`, `lists="Newsletter"`, `automations="Welcome"`, `deal.title=\u2026` / `deal.pipeline="Sales"` / `deal.value=budget`, `account.name=company`, `note=\u2026`, `event.name="demo_requested"`.'
379
+ }
380
+ ],
381
+ email: [{ ...PAYLOAD("fields"), under: "body" }],
382
+ zapier: [PAYLOAD("payloadKeys")],
383
+ httpWebhook: [PAYLOAD("payloadKeys")],
384
+ googleTagManager: [PAYLOAD("dataLayerParams")],
385
+ googleAnalytics: [PAYLOAD("eventParams")],
386
+ posthog: [PAYLOAD("eventParams")],
387
+ amplitude: [PAYLOAD("eventProperties")],
388
+ hubspot: [PAYLOAD("eventProperties")],
389
+ vwo: [PAYLOAD("eventProperties")],
390
+ code: [PAYLOAD("eventProperties")],
391
+ datafast: [PAYLOAD("goalParams")],
392
+ meta: [PAYLOAD("eventParams"), { kind: "record", key: "advancedMatching", allowed: META_MATCHING }],
393
+ chatgptAds: [
394
+ PAYLOAD("eventParams"),
395
+ {
396
+ kind: "record",
397
+ key: "advancedMatching",
398
+ allowed: ["em", "ph", "fn", "ln", "external_id", "ct", "st", "zp", "country"]
399
+ }
400
+ ],
401
+ tiktok: [
402
+ PAYLOAD("eventParams"),
403
+ { kind: "record", key: "identify", allowed: ["email", "phone_number", "external_id"] }
404
+ ],
405
+ pinterest: [PAYLOAD("eventParams"), { kind: "record", key: "enhancedMatching", allowed: ["em", "hashed_maids"] }],
406
+ googleAds: [
407
+ { kind: "record", key: "enhancedConversions", allowed: ADS_MATCHING },
408
+ { kind: "scalar", keys: ["value", "currency", "transactionId"] }
409
+ ],
410
+ linkedinInsightTag: [
411
+ { kind: "record", key: "userMatching", allowed: ["em", "fn", "ln", "title", "companyName", "country"] },
412
+ { kind: "scalar", keys: ["value", "currency"] }
413
+ ],
414
+ twitterAds: [
415
+ { kind: "record", key: "userMatching", allowed: ["em", "ph"] },
416
+ { kind: "scalar", keys: ["value", "currency"] }
417
+ ]
418
+ };
419
+ var UNMAPPABLE = {
420
+ hotjar: "A Hotjar event carries only its name.",
421
+ clarity: "A Clarity custom tag carries only its name."
422
+ };
423
+ function slotName(shape) {
424
+ if (shape.kind === "scalar") return shape.keys.join("/");
425
+ if (shape.kind === "list" && shape.under) return `${shape.under}.${shape.key}`;
426
+ return shape.key;
427
+ }
428
+ function shapeFor(type, into) {
429
+ const slots = MAPPING_SLOTS[type];
430
+ if (!slots) {
431
+ const why = UNMAPPABLE[type];
432
+ throw new MappingError(
433
+ `Side effect "${type}" has no mappable field.`,
434
+ why ?? `"${type}" is not a side-effect type this workspace's flow engine defines.`
435
+ );
436
+ }
437
+ if (!into) return slots[0];
438
+ const chosen = slots.find(
439
+ (slot) => slot.kind === "scalar" ? slot.keys.includes(into) || into === "scalar" : slot.key === into || slotName(slot) === into
440
+ );
441
+ if (!chosen) {
442
+ throw new MappingError(
443
+ `"${into}" is not a mappable slot on a ${type} side effect.`,
444
+ `Slots on ${type}: ${slots.map(slotName).join(", ")}`
445
+ );
446
+ }
447
+ return chosen;
448
+ }
449
+ function namesComeFromAccount(shape) {
450
+ return shape.kind === "list" && shape.addressedBy !== "key";
451
+ }
452
+ function describeSlots(type) {
453
+ return (MAPPING_SLOTS[type] ?? []).map((shape) => {
454
+ if (shape.kind === "record") {
455
+ return {
456
+ slot: shape.key,
457
+ addressedBy: "one of a closed set",
458
+ keysFrom: "closed",
459
+ keys: shape.allowed,
460
+ note: `${type} defines these names; any other is refused.`
461
+ };
462
+ }
463
+ if (shape.kind === "scalar") {
464
+ return {
465
+ slot: shape.keys.join("/"),
466
+ addressedBy: "the field's own name",
467
+ keysFrom: "closed",
468
+ keys: shape.keys,
469
+ note: "Each is a single value on the side effect, mapped like any other."
470
+ };
471
+ }
472
+ if (shape.addressedBy === "key") {
473
+ return {
474
+ slot: slotName(shape),
475
+ addressedBy: "key",
476
+ keysFrom: "yours",
477
+ note: "You name these \u2014 they are what the receiving system expects. Ask the user if you do not know them."
478
+ };
479
+ }
480
+ return {
481
+ slot: slotName(shape),
482
+ addressedBy: shape.addressedBy,
483
+ keysFrom: "account",
484
+ note: "These live in the connected account. Read them off the request_flow_input result; they cannot be guessed.",
485
+ ...shape.needsFieldType ? { fieldTypes: shape.fieldTypeSource ?? FIELD_TYPE_FROM_INPUT } : {}
486
+ };
487
+ });
488
+ }
489
+ var FIELD_TYPE_FROM_INPUT = "Each mapping stores a field type. They come back from request_flow_input with the field list \u2014 write one on the LEFT: <field>:<fieldType>=<value>.";
490
+ function otherSlots(type, used) {
491
+ return (MAPPING_SLOTS[type] ?? []).filter((slot) => slot !== used).map(slotName);
492
+ }
493
+ var ACTIVECAMPAIGN_BARE_KINDS = /* @__PURE__ */ new Set(["standard", "custom", "tags", "lists", "automations", "note"]);
494
+ function addCustomAliases(catalog, field) {
495
+ const entry = catalog.get(`custom.${field.fieldKey}`);
496
+ if (!entry) return;
497
+ const tag = field.perstag?.replaceAll("%", "");
498
+ if (tag) catalog.set(`custom.${tag.toUpperCase()}`, entry);
499
+ const aliases = [field.perstag, tag, field.label].filter((alias) => !!alias);
500
+ for (const alias of aliases) {
501
+ const key = alias.trim().toLowerCase();
502
+ if (key && !catalog.has(key)) catalog.set(key, entry);
503
+ }
504
+ }
505
+ function activeCampaignDestinationFields(fields) {
506
+ const catalog = /* @__PURE__ */ new Map();
507
+ for (const field of fields) {
508
+ const qualified = `${field.fieldType}.${field.fieldKey}`;
509
+ const bare = ACTIVECAMPAIGN_BARE_KINDS.has(field.fieldType);
510
+ const entry = {
511
+ fieldType: field.fieldType,
512
+ fieldKey: field.fieldKey,
513
+ label: field.label,
514
+ ...bare ? {} : { listedAs: qualified }
515
+ };
516
+ catalog.set(qualified, entry);
517
+ if (bare && !catalog.has(field.fieldKey)) {
518
+ catalog.set(field.fieldKey, entry);
519
+ }
520
+ }
521
+ for (const field of fields) {
522
+ if (field.fieldType === "custom") addCustomAliases(catalog, field);
523
+ }
524
+ return catalog;
525
+ }
526
+ function activeCampaignUnlistedField(destField) {
527
+ const match = /^custom\.%?([A-Za-z][A-Za-z0-9_]*)%?$/.exec(destField.trim());
528
+ if (!match?.[1]) return void 0;
529
+ const tag = match[1].toUpperCase();
530
+ return { fieldType: "custom", fieldKey: tag, label: `%${tag}%` };
531
+ }
532
+ function literalText(value) {
533
+ const paragraphs = (value ?? {}).content;
534
+ if (!Array.isArray(paragraphs)) return null;
535
+ const inline = paragraphs.flatMap((paragraph) => paragraph.content ?? []);
536
+ if (inline.length === 0 || inline.some((node) => node.type !== "text")) return null;
537
+ return inline.map((node) => node.text ?? "").join("");
538
+ }
539
+ function optionListing(options) {
540
+ return options.length > 0 ? options.map((option) => `${option.name} (${option.id})`).join(", ") : "none";
541
+ }
542
+ function unknownNames(value, options) {
543
+ const text = literalText(value);
544
+ if (text === null) return [];
545
+ return splitActiveCampaignNames(text).filter((name) => !findActiveCampaignOption(options, name));
546
+ }
547
+ function namedOptionHints(mapped, catalog) {
548
+ const hints = [];
549
+ const unknown = (type, key, options, noun) => {
550
+ for (const name of unknownNames(mapped(type, key)?.value, options)) {
551
+ hints.push(
552
+ `ActiveCampaign has no ${noun} called "${name}", so that part will be skipped. It has: ${optionListing(options)}.`
553
+ );
554
+ }
555
+ };
556
+ unknown("lists", "lists", catalog.lists, "list");
557
+ unknown("automations", "automations", catalog.automations, "automation");
558
+ if (mapped("automations", "automations") && catalog.automations.length === 0) {
559
+ hints.push(
560
+ "This ActiveCampaign account has no automations. They can only be built in ActiveCampaign \u2014 ask the user to create one."
561
+ );
562
+ }
563
+ unknown("deal", "pipeline", catalog.pipelines, "pipeline");
564
+ unknown("deal", "owner", catalog.users, "user");
565
+ return hints;
566
+ }
567
+ function literalTags(value) {
568
+ const paragraphs = (value ?? {}).content;
569
+ if (!Array.isArray(paragraphs)) return [];
570
+ const inline = paragraphs.flatMap((paragraph) => paragraph.content ?? []);
571
+ return inline.flatMap((node, index) => {
572
+ if (node.type !== "text") return [];
573
+ const pieces = (node.text ?? "").split(",");
574
+ const touchesBefore = index > 0 && inline[index - 1]?.type !== "text";
575
+ const touchesAfter = index < inline.length - 1 && inline[index + 1]?.type !== "text";
576
+ return pieces.filter((_, piece) => !(piece === 0 && touchesBefore) && !(piece === pieces.length - 1 && touchesAfter)).map((piece) => piece.trim()).filter((piece) => piece !== "");
577
+ });
578
+ }
579
+ function doubleEnrollmentHints(mapped, catalog) {
580
+ const enrolled = literalText(mapped("automations", "automations")?.value);
581
+ if (enrolled === null) return [];
582
+ const tags = new Set(literalTags(mapped("tags", "tags")?.value).map((tag) => tag.toLowerCase()));
583
+ return splitActiveCampaignNames(enrolled).flatMap((name) => {
584
+ const automation = catalog.automations.find((option) => findActiveCampaignOption([option], name));
585
+ const tag = automation?.startTags.find((start) => tags.has(start.toLowerCase()));
586
+ return automation && tag ? [
587
+ `"${automation.name}" starts when the tag "${tag}" is added, and this Form adds that tag AND enrolls the lead in it \u2014 every lead would run it twice (ActiveCampaign's "runs once" does not stop a direct enrollment). Keep one: drop "${automation.name}" from automations, or drop the tag.`
588
+ ] : [];
589
+ });
590
+ }
591
+ function dealHints(fieldMapping, mapped, catalog) {
592
+ if (!fieldMapping.some((entry) => entry.fieldType === "deal")) return [];
593
+ const hints = [];
594
+ if (!mapped("deal", "title") && !mapped("deal", "pipeline")) {
595
+ hints.push("No deal is created without deal.title or deal.pipeline \u2014 map one of them too.");
596
+ }
597
+ if (catalog.pipelines.length === 0) {
598
+ hints.push("This ActiveCampaign account has no deal pipeline, so no deal can be created until one exists.");
599
+ }
600
+ const pipelineText = literalText(mapped("deal", "pipeline")?.value);
601
+ const pipeline = pipelineText ? findActiveCampaignOption(catalog.pipelines, pipelineText) : catalog.pipelines[0];
602
+ if (!pipeline) return hints;
603
+ for (const name of unknownNames(mapped("deal", "stage")?.value, pipeline.stages)) {
604
+ hints.push(
605
+ `The pipeline "${pipeline.name}" has no stage called "${name}", so deals land in its first stage. Its stages: ${optionListing(pipeline.stages)}.`
606
+ );
607
+ }
608
+ return hints;
609
+ }
610
+ function attachmentHints(mapped, catalog) {
611
+ const hints = [];
612
+ if (mapped("account", "url") && !mapped("account", "name")) {
613
+ hints.push("account.url is only sent with account.name \u2014 map the company name too.");
614
+ }
615
+ if (mapped("event", "data") && !mapped("event", "name")) hints.push("event.data is only sent with event.name.");
616
+ if (mapped("event", "name") && !catalog.eventKeySaved) {
617
+ hints.push(
618
+ "Event tracking is off on this ActiveCampaign account, so the event will be skipped: ask the user to switch event tracking on in ActiveCampaign (Settings \u2192 Tracking \u2192 Event Tracking). There is nothing to paste \u2014 Baker reads the account's event key itself once it is on. Until then only the event is skipped; the contact and the rest still arrive."
619
+ );
620
+ }
621
+ return hints;
622
+ }
623
+ function unlistedCustomHints(fieldMapping, catalog) {
624
+ const listedIds = new Set(catalog.fields.flatMap((field) => field.fieldType === "custom" ? [field.fieldKey] : []));
625
+ return fieldMapping.flatMap((entry) => {
626
+ const key = typeof entry.fieldKey === "string" ? entry.fieldKey : "";
627
+ if (entry.fieldType !== "custom" || /^\d+$/.test(key) || listedIds.has(key)) return [];
628
+ return [
629
+ `custom.${key} is not on the ActiveCampaign account yet. Stage the field (\`baker activecampaign stage field\`) so it exists at Publish; until it does, that value is left empty on each contact.`
630
+ ];
631
+ });
632
+ }
633
+ function activeCampaignMappingHints(fieldMapping, catalog) {
634
+ const mapped = (type, key) => fieldMapping.find((entry) => entry.fieldType === type && entry.fieldKey === key);
635
+ return [
636
+ ...namedOptionHints(mapped, catalog),
637
+ ...doubleEnrollmentHints(mapped, catalog),
638
+ ...dealHints(fieldMapping, mapped, catalog),
639
+ ...attachmentHints(mapped, catalog),
640
+ ...unlistedCustomHints(fieldMapping, catalog)
641
+ ];
642
+ }
643
+ function parseMapSpec(raw) {
644
+ const eq = raw.indexOf("=");
645
+ if (eq <= 0 || eq === raw.length - 1) {
646
+ throw new MappingError(
647
+ `--map "${raw}" must be <destField>[:<fieldType>]=<value>`,
648
+ 'Value: a form field (`nombre`), `tracking:utm_source`, `global:Name`, `code:name`, a "literal", or those joined with `+`.'
649
+ );
650
+ }
651
+ const left = raw.slice(0, eq).trim();
652
+ const expression = raw.slice(eq + 1).trim();
653
+ const colon = left.indexOf(":");
654
+ const destField = (colon > 0 ? left.slice(0, colon) : left).trim();
655
+ const fieldType = colon > 0 ? left.slice(colon + 1).trim() : "";
656
+ if (!destField) throw new MappingError(`--map "${raw}" names no destination field.`);
657
+ return { raw, destField, fieldType: fieldType || void 0, expression };
658
+ }
659
+ function sheetEntry(spec, value) {
660
+ if (!/^[A-Z]{1,3}$/.test(spec.destField)) {
661
+ throw new MappingError(
662
+ `--map "${spec.raw}": a Google Sheet is addressed by COLUMN, so the left side must be a column letter (A, B, \u2026 AA), got "${spec.destField}".`,
663
+ "Read the real destination back from the configured side effect first \u2014 a column letter is a guess until a spreadsheet is picked."
664
+ );
665
+ }
666
+ return { column: spec.destField, value };
667
+ }
668
+ function destinationField(spec, options) {
669
+ const catalog = options.destinationFields;
670
+ if (!catalog) return void 0;
671
+ const match = catalog.get(spec.destField);
672
+ if (match) return match;
673
+ const alias = catalog.get(spec.destField.trim().toLowerCase());
674
+ if (alias?.fieldKey) return alias;
675
+ const unlisted = options.unlistedField?.(spec.destField);
676
+ if (unlisted) return unlisted;
677
+ throw new MappingError(
678
+ `--map "${spec.raw}": the destination has no field called "${spec.destField}".`,
679
+ `Fields on it: ${catalogListing(catalog) || "(none)"}`
680
+ );
681
+ }
682
+ function catalogListing(catalog) {
683
+ const seen = /* @__PURE__ */ new Set();
684
+ const names = [];
685
+ for (const [name, field] of catalog) {
686
+ if (seen.has(field)) continue;
687
+ seen.add(field);
688
+ const key = field.listedAs ?? field.fieldKey ?? name;
689
+ names.push(field.label && field.label.toLowerCase() !== key.toLowerCase() ? `${key} (${field.label})` : key);
690
+ }
691
+ return names.join(", ");
692
+ }
693
+ function fieldTypeFor(type, shape, spec, known) {
694
+ const resolved = spec.fieldType ?? known?.fieldType;
695
+ if (resolved && shape.fieldTypes && !shape.fieldTypes.includes(resolved)) {
696
+ throw new MappingError(
697
+ `--map "${spec.raw}": "${resolved}" is not a ${type} field type \u2014 expected one of: ${shape.fieldTypes.join(", ")}.`,
698
+ shape.fieldTypeSource
699
+ );
700
+ }
701
+ if (resolved) return resolved;
702
+ throw new MappingError(
703
+ `--map "${spec.raw}": ${type} stores a field type per mapping, and "${spec.destField}" has none \u2014 write it on the left: <field>:<fieldType>=<value>.`,
704
+ shape.fieldTypeSource ?? FIELD_TYPE_FROM_INPUT
705
+ );
706
+ }
707
+ function assertCrmOptions(type, shape, options) {
708
+ const entities = shape.entities;
709
+ if (entities) {
710
+ if (!options.entity) {
711
+ throw new MappingError(
712
+ `${type} addresses a specific object, so --entity is required (one of: ${entities.join(", ")}).`,
713
+ "Which object a value lands on is a destination-side fact \u2014 read it back from the configured side effect, do not assume."
714
+ );
715
+ }
716
+ if (!entities.includes(options.entity)) {
717
+ throw new MappingError(
718
+ `--entity "${options.entity}" is not valid for ${type} \u2014 expected one of: ${entities.join(", ")}.`
719
+ );
720
+ }
721
+ }
722
+ if (shape.needsIsCustom && options.isCustomField === void 0) {
723
+ throw new MappingError(
724
+ `${type} looks a key up differently for custom and standard fields, so pass --custom or --standard.`,
725
+ "Mapping a custom field as standard (or the reverse) is accepted and then dropped. The field list from request_flow_input says which each one is."
726
+ );
727
+ }
728
+ }
729
+ function buildEntry(type, shape, spec, value, options) {
730
+ if (shape.key === "columnMapping") {
731
+ return sheetEntry(spec, value);
732
+ }
733
+ if (shape.addressedBy === "key") {
734
+ if (spec.fieldType) {
735
+ throw new MappingError(
736
+ `--map "${spec.raw}": a ${type} ${shape.key} entry is just a name and a value \u2014 it takes no field type.`,
737
+ `Write it as ${spec.destField}=${spec.expression}`
738
+ );
739
+ }
740
+ return { key: spec.destField, value };
741
+ }
742
+ const known = destinationField(spec, options);
743
+ if (type === "hubspotForm") {
744
+ return {
745
+ objectTypeId: options.objectType ?? known?.objectTypeId ?? "0-1",
746
+ fieldType: fieldTypeFor(type, shape, spec, known),
747
+ fieldName: spec.destField,
748
+ value
749
+ };
750
+ }
751
+ assertCrmOptions(type, shape, options);
752
+ return {
753
+ ...shape.entities ? { entityType: options.entity } : {},
754
+ fieldType: fieldTypeFor(type, shape, spec, known),
755
+ ...shape.needsIsCustom ? { isCustomField: options.isCustomField } : {},
756
+ [shape.addressedBy]: known?.fieldKey ?? spec.destField,
757
+ value
758
+ };
759
+ }
760
+ function listPatch(shape, sideEffect, entries) {
761
+ if (!shape.under) return { [shape.key]: entries };
762
+ const owner = sideEffect[shape.under] ?? {};
763
+ return { [shape.under]: { ...owner, [shape.key]: entries } };
764
+ }
765
+ function existingEntries(shape, sideEffect) {
766
+ const owner = shape.under ? sideEffect[shape.under] : sideEffect;
767
+ if (!owner || typeof owner !== "object") return [];
768
+ const list = owner[shape.key];
769
+ if (!Array.isArray(list)) return [];
770
+ return list.filter((entry) => Boolean(entry) && typeof entry === "object");
771
+ }
772
+ function entryAddress(shape, entry) {
773
+ const value = entry[shape.addressedBy];
774
+ if (typeof value !== "string") return null;
775
+ return shape.qualifiedByFieldType && typeof entry.fieldType === "string" ? `${entry.fieldType}.${value}` : value;
776
+ }
777
+ function mergeEntries(shape, existing, incoming) {
778
+ const address = (entry) => entryAddress(shape, entry);
779
+ const entries = [...existing];
780
+ const overwritten = /* @__PURE__ */ new Set();
781
+ for (const entry of incoming) {
782
+ const name = address(entry);
783
+ const at = name === null ? -1 : entries.findIndex((candidate) => address(candidate) === name);
784
+ if (at === -1) {
785
+ entries.push(entry);
786
+ continue;
787
+ }
788
+ entries[at] = entry;
789
+ if (at < existing.length) overwritten.add(at);
790
+ }
791
+ const kept = existing.length - overwritten.size;
792
+ return { entries, written: entries.length - kept, kept };
793
+ }
794
+ function assertMappableOwner(type, shape, sideEffect) {
795
+ if (shape.under !== "body") return;
796
+ const format = (sideEffect.body ?? {}).format;
797
+ if (format !== void 0 && format !== "json") {
798
+ throw new MappingError(
799
+ `This ${type} side effect sends \`body.format: "${String(format)}"\`, which is one written message rather than named keys.`,
800
+ 'Set `body` to `{ "format": "json", "fields": [] }` first if you want mapped keys, or write the message in `body.content` and map nothing.'
801
+ );
802
+ }
803
+ }
804
+ function buildList(tree, type, shape, sideEffect, specs, options) {
805
+ assertMappableOwner(type, shape, sideEffect);
806
+ const incoming = specs.map((raw) => {
807
+ const spec = parseMapSpec(raw);
808
+ return buildEntry(type, shape, spec, buildValueDoc(tree, spec.expression), options);
809
+ });
810
+ const present = options.replace === true ? [] : existingEntries(shape, sideEffect);
811
+ const { kept: existing, dropped } = pruneAbsent(shape, present, options);
812
+ const { entries, written, kept } = mergeEntries(shape, existing, incoming);
813
+ return { key: slotName(shape), count: written, kept, dropped, patch: listPatch(shape, sideEffect, entries) };
814
+ }
815
+ function pruneAbsent(shape, existing, options) {
816
+ if (options.pruneMissing !== true) return { kept: existing, dropped: [] };
817
+ const catalog = options.destinationFields;
818
+ if (!catalog) {
819
+ throw new MappingError(
820
+ "--prune-missing needs the destination's own field list, and it could not be read.",
821
+ "Name the destination so its fields can be read \u2014 --hubspot-form <formGuid> for HubSpot (an ActiveCampaign side effect is read automatically). `baker flows show <slug>` names the side effect and returns the request_flow_input call that carries the guid."
822
+ );
823
+ }
824
+ const kept = [];
825
+ const dropped = [];
826
+ for (const entry of existing) {
827
+ const name = entryAddress(shape, entry);
828
+ if (name === null || catalog.has(name)) {
829
+ kept.push(entry);
830
+ continue;
831
+ }
832
+ dropped.push(name);
833
+ }
834
+ return { kept, dropped };
835
+ }
836
+ function buildRecord(tree, type, shape, sideEffect, specs, options) {
837
+ const existing = options.replace === true ? {} : sideEffect[shape.key] ?? {};
838
+ const record = Object.fromEntries(shape.allowed.map((slot) => [slot, existing[slot] ?? null]));
839
+ const filledBefore = shape.allowed.filter((slot) => record[slot] != null);
840
+ const written = /* @__PURE__ */ new Set();
841
+ for (const raw of specs) {
842
+ const spec = parseMapSpec(raw);
843
+ if (!shape.allowed.includes(spec.destField)) {
844
+ throw new MappingError(
845
+ `"${spec.destField}" is not a slot in ${shape.key} on a ${type} side effect.`,
846
+ `${shape.key} slots: ${shape.allowed.join(", ")}`
847
+ );
848
+ }
849
+ if (spec.fieldType) {
850
+ throw new MappingError(`--map "${spec.raw}": a ${shape.key} slot takes no field type.`);
851
+ }
852
+ record[spec.destField] = buildValueDoc(tree, spec.expression);
853
+ written.add(spec.destField);
854
+ }
855
+ return {
856
+ key: shape.key,
857
+ count: written.size,
858
+ kept: filledBefore.filter((slot) => !written.has(slot)).length,
859
+ dropped: [],
860
+ patch: { [shape.key]: record }
861
+ };
862
+ }
863
+ function buildScalar(tree, type, shape, sideEffect, specs, options) {
864
+ const patch = options.replace === true ? Object.fromEntries(shape.keys.map((key) => [key, null])) : {};
865
+ const written = /* @__PURE__ */ new Set();
866
+ for (const raw of specs) {
867
+ const spec = parseMapSpec(raw);
868
+ if (!shape.keys.includes(spec.destField)) {
869
+ throw new MappingError(
870
+ `"${spec.destField}" is not a mappable field on a ${type} side effect.`,
871
+ `Mappable directly: ${shape.keys.join(", ")}`
872
+ );
873
+ }
874
+ if (spec.fieldType) {
875
+ throw new MappingError(`--map "${spec.raw}": ${spec.destField} takes no field type.`);
876
+ }
877
+ patch[spec.destField] = buildValueDoc(tree, spec.expression);
878
+ written.add(spec.destField);
879
+ }
880
+ const kept = options.replace === true ? 0 : shape.keys.filter((key) => !written.has(key) && sideEffect[key] != null).length;
881
+ return { key: shape.keys.join("/"), count: written.size, kept, dropped: [], patch };
882
+ }
883
+ function buildFieldMapping(tree, sideEffect, specs, options = {}) {
884
+ const type = String(sideEffect.type ?? "");
885
+ const shape = shapeFor(type, options.into);
886
+ if (shape.kind === "record") return buildRecord(tree, type, shape, sideEffect, specs, options);
887
+ if (shape.kind === "scalar") return buildScalar(tree, type, shape, sideEffect, specs, options);
888
+ return buildList(tree, type, shape, sideEffect, specs, options);
889
+ }
890
+
891
+ export {
892
+ activeCampaignFieldsResponseSchema,
893
+ MappingError,
894
+ shapeFor,
895
+ namesComeFromAccount,
896
+ describeSlots,
897
+ otherSlots,
898
+ activeCampaignDestinationFields,
899
+ activeCampaignUnlistedField,
900
+ activeCampaignMappingHints,
901
+ buildFieldMapping
902
+ };
903
+ //# sourceMappingURL=chunk-P2MFWJR3.js.map