@koda-sl/baker-cli 0.481.0-dev.2d33e194f → 0.482.0-dev.a5555ab55
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.
- package/README.md +131 -149
- package/canvas/avocado-tutorial.json +3 -3
- package/canvas/hello-world-overlay.json +1 -1
- package/dist/account-7LUQWY6Q.js +49 -0
- package/dist/account-ELL7ZZLM.js +80 -0
- package/dist/account-KZVOT6HL.js +79 -0
- package/dist/account-reads-LA45L6G3.js +218 -0
- package/dist/account-writes-CEPERFD6.js +66 -0
- package/dist/accounts-7G556DH4.js +77 -0
- package/dist/accounts-E4TVYTUR.js +115 -0
- package/dist/accounts-HC7GPQNG.js +611 -0
- package/dist/accounts-SMB3TNXX.js +114 -0
- package/dist/accounts-UA2ZWRN4.js +75 -0
- package/dist/actions-V6YP5C3X.js +55 -0
- package/dist/active-entities-MCL7UEGV.js +103 -0
- package/dist/activecampaign-CHZEHRHZ.js +935 -0
- package/dist/activecampaign-CHZEHRHZ.js.map +1 -0
- package/dist/activities-IQPJPP4B.js +74 -0
- package/dist/ad-group-writes-XGSCEQTW.js +170 -0
- package/dist/ad-groups-GKOLDGET.js +68 -0
- package/dist/ad-writes-VVD36JKH.js +174 -0
- package/dist/add-3MD72QMT.js +104 -0
- package/dist/add-5IGUQHVZ.js +105 -0
- package/dist/add-BK5AQI5A.js +97 -0
- package/dist/add-TSQNUP5N.js +302 -0
- package/dist/add-accounts-CJSV5NPL.js +91 -0
- package/dist/ads-EKZVHKPN.js +77 -0
- package/dist/ads-HXX2IAFF.js +113 -0
- package/dist/ads-KRM4WAMZ.js +40 -0
- package/dist/ads-KRM4WAMZ.js.map +1 -0
- package/dist/ads-RAUM6ISF.js +128 -0
- package/dist/adsets-LPN6WFGF.js +176 -0
- package/dist/advertisers-DS2NRWKI.js +125 -0
- package/dist/advertisers-XJG7XDK7.js +120 -0
- package/dist/analytics-DO4UKW2H.js +1976 -0
- package/dist/analytics-JVT2OBQC.js +433 -0
- package/dist/analytics-JVT2OBQC.js.map +1 -0
- package/dist/animate-G4P3OEJE.js +480 -0
- package/dist/assign-72YAL6TP.js +77 -0
- package/dist/audience-size-M5NU4QYN.js +73 -0
- package/dist/audience-size-M5NU4QYN.js.map +1 -0
- package/dist/audiences-3LRCLHTQ.js +85 -0
- package/dist/audiences-BU4JZJT7.js +268 -0
- package/dist/audiences-XEZHACKH.js +78 -0
- package/dist/audit-22KQAHJR.js +151 -0
- package/dist/audit-YEGQU474.js +88 -0
- package/dist/autocomplete-KLNQIK5T.js +111 -0
- package/dist/avatars-VO6FMJFB.js +38 -0
- package/dist/bid-pricing-52HDANYL.js +100 -0
- package/dist/bid-pricing-52HDANYL.js.map +1 -0
- package/dist/brand-XXNOVSGE.js +22 -0
- package/dist/brief-JIARAUIR.js +538 -0
- package/dist/brief-JIARAUIR.js.map +1 -0
- package/dist/businesses-PRRYPR7H.js +53 -0
- package/dist/campaign-groups-JFOFU76X.js +95 -0
- package/dist/campaign-writes-NSEJCINS.js +170 -0
- package/dist/campaign-writes-PKWLLKB5.js +165 -0
- package/dist/campaigns-4SOLY7OR.js +110 -0
- package/dist/campaigns-5AZMOOID.js +107 -0
- package/dist/campaigns-H4VK3GKK.js +109 -0
- package/dist/campaigns-VWN2XPK2.js +76 -0
- package/dist/canvas-TTV7QZZT.js +46 -0
- package/dist/capabilities-VJ53ROIP.js +144 -0
- package/dist/cards-WHMCSRZX.js +85 -0
- package/dist/catalog-43BSTAT6.js +65 -0
- package/dist/catalog-43BSTAT6.js.map +1 -0
- package/dist/catalogs-XH5NHH4C.js +128 -0
- package/dist/changes-F6WUXFC3.js +135 -0
- package/dist/chatgpt-K6KNTME4.js +47 -0
- package/dist/chats-PWLQO7UY.js +262 -0
- package/dist/check-545MAB4E.js +104 -0
- package/dist/check-545MAB4E.js.map +1 -0
- package/dist/chunk-232YUPUI.js +125 -0
- package/dist/chunk-23H4ZJRP.js +136 -0
- package/dist/chunk-2FSEESJU.js +1744 -0
- package/dist/chunk-2FSEESJU.js.map +1 -0
- package/dist/chunk-2QSPPWOU.js +6306 -0
- package/dist/chunk-2QSPPWOU.js.map +1 -0
- package/dist/chunk-2WTD5Y34.js +66 -0
- package/dist/chunk-2WTD5Y34.js.map +1 -0
- package/dist/chunk-3BKNGXCL.js +23992 -0
- package/dist/chunk-3BKNGXCL.js.map +1 -0
- package/dist/chunk-3OCSWUHV.js +67 -0
- package/dist/chunk-3UBTVAFJ.js +392 -0
- package/dist/chunk-3UBTVAFJ.js.map +1 -0
- package/dist/chunk-3ZHOBEQD.js +122 -0
- package/dist/chunk-3ZHOBEQD.js.map +1 -0
- package/dist/chunk-46TND6YK.js +207 -0
- package/dist/chunk-46TND6YK.js.map +1 -0
- package/dist/chunk-5SRHACZW.js +274 -0
- package/dist/chunk-5WMTPYKT.js +84 -0
- package/dist/chunk-64HQDJ2E.js +344 -0
- package/dist/chunk-64HQDJ2E.js.map +1 -0
- package/dist/chunk-6JWEGFM5.js +174 -0
- package/dist/chunk-6OIKNJ7G.js +26 -0
- package/dist/chunk-7RBJ2Z7Z.js +172 -0
- package/dist/chunk-AOZ7547I.js +159 -0
- package/dist/chunk-AOZ7547I.js.map +1 -0
- package/dist/chunk-B7FVPHCW.js +843 -0
- package/dist/chunk-B7FVPHCW.js.map +1 -0
- package/dist/chunk-BC2BXRXY.js +2887 -0
- package/dist/chunk-BC2BXRXY.js.map +1 -0
- package/dist/chunk-BFRIRZRZ.js +98 -0
- package/dist/chunk-BFZS3WHS.js +84 -0
- package/dist/chunk-BITS62MF.js +77 -0
- package/dist/chunk-BLAHHMPF.js +333 -0
- package/dist/chunk-C7MENOP5.js +224 -0
- package/dist/chunk-C7MENOP5.js.map +1 -0
- package/dist/chunk-CM6FCSWN.js +644 -0
- package/dist/chunk-CM6FCSWN.js.map +1 -0
- package/dist/chunk-CSN6L345.js +547 -0
- package/dist/chunk-CSN6L345.js.map +1 -0
- package/dist/chunk-CVBKW75S.js +296 -0
- package/dist/chunk-D4LKZJYJ.js +76 -0
- package/dist/chunk-D6KHVUDS.js +297 -0
- package/dist/chunk-D7KR6KXR.js +66 -0
- package/dist/chunk-D7KR6KXR.js.map +1 -0
- package/dist/chunk-DDES6J6A.js +97 -0
- package/dist/chunk-DDES6J6A.js.map +1 -0
- package/dist/chunk-DMVDVZJK.js +97 -0
- package/dist/chunk-DMVDVZJK.js.map +1 -0
- package/dist/chunk-DWX44QL6.js +75 -0
- package/dist/chunk-EE72SSB2.js +472 -0
- package/dist/chunk-EE72SSB2.js.map +1 -0
- package/dist/chunk-F3CZFUXZ.js +3187 -0
- package/dist/chunk-F3CZFUXZ.js.map +1 -0
- package/dist/chunk-F5IH7G2F.js +1919 -0
- package/dist/chunk-F5IH7G2F.js.map +1 -0
- package/dist/chunk-FNA277HP.js +97 -0
- package/dist/chunk-FQXGII24.js +592 -0
- package/dist/chunk-FU7HJWGM.js +26 -0
- package/dist/chunk-G5GV6SUK.js +399 -0
- package/dist/chunk-G5GV6SUK.js.map +1 -0
- package/dist/chunk-GD6UJDOB.js +665 -0
- package/dist/chunk-GDLQ6SGW.js +46 -0
- package/dist/chunk-GEKXIXMG.js +106 -0
- package/dist/chunk-GJWMPTUE.js +156 -0
- package/dist/chunk-GJWMPTUE.js.map +1 -0
- package/dist/chunk-GLW7UJLB.js +58 -0
- package/dist/chunk-GM46ZEYP.js +831 -0
- package/dist/chunk-GM46ZEYP.js.map +1 -0
- package/dist/chunk-H5HDZ7IC.js +139 -0
- package/dist/chunk-HNEYIWXW.js +8896 -0
- package/dist/chunk-HNEYIWXW.js.map +1 -0
- package/dist/chunk-I2WRZJAC.js +46 -0
- package/dist/chunk-I2WRZJAC.js.map +1 -0
- package/dist/chunk-I44SNQ34.js +275 -0
- package/dist/chunk-I5VZVQBZ.js +35 -0
- package/dist/chunk-IC6SDOED.js +45 -0
- package/dist/chunk-IN4G7X6W.js +94 -0
- package/dist/chunk-IPLE5K5E.js +188 -0
- package/dist/chunk-IYELKHBG.js +197 -0
- package/dist/chunk-JQNO6JCV.js +206 -0
- package/dist/chunk-JRFVSSKP.js +160 -0
- package/dist/chunk-JRFVSSKP.js.map +1 -0
- package/dist/chunk-JYBLCIRN.js +106 -0
- package/dist/chunk-K3TNTBZJ.js +52 -0
- package/dist/chunk-K4NMOWG7.js +455 -0
- package/dist/chunk-KOVQ2JGM.js +903 -0
- package/dist/chunk-KOVQ2JGM.js.map +1 -0
- package/dist/chunk-KPYDTIAI.js +317 -0
- package/dist/chunk-KPYDTIAI.js.map +1 -0
- package/dist/chunk-KXSXZAC2.js +225 -0
- package/dist/chunk-KXSXZAC2.js.map +1 -0
- package/dist/chunk-LCW3U4EA.js +25 -0
- package/dist/chunk-LFXE2G6R.js +61 -0
- package/dist/chunk-LFXE2G6R.js.map +1 -0
- package/dist/chunk-LMZAOTRX.js +846 -0
- package/dist/chunk-M6UNISGO.js +66 -0
- package/dist/chunk-M6UNISGO.js.map +1 -0
- package/dist/chunk-MI3JB5KB.js +76 -0
- package/dist/chunk-MJQBXFW6.js +74 -0
- package/dist/chunk-MK3OJZIU.js +23 -0
- package/dist/chunk-MPACDBH5.js +74 -0
- package/dist/chunk-MXWOYFI2.js +544 -0
- package/dist/chunk-MXWOYFI2.js.map +1 -0
- package/dist/chunk-N5O67GK5.js +215 -0
- package/dist/chunk-OP7DNHD2.js +137 -0
- package/dist/chunk-OP7DNHD2.js.map +1 -0
- package/dist/chunk-P3TNRS56.js +149 -0
- package/dist/chunk-P5PX2G7E.js +225 -0
- package/dist/chunk-P5PX2G7E.js.map +1 -0
- package/dist/chunk-PAJJXZ3Z.js +170 -0
- package/dist/chunk-PHPXAMY3.js +346 -0
- package/dist/chunk-PNVEV3XP.js +8928 -0
- package/dist/chunk-PNVEV3XP.js.map +1 -0
- package/dist/chunk-QABSQADZ.js +56 -0
- package/dist/chunk-QKABEX3F.js +148 -0
- package/dist/chunk-QKABEX3F.js.map +1 -0
- package/dist/chunk-QTLZXIF3.js +5366 -0
- package/dist/chunk-QTLZXIF3.js.map +1 -0
- package/dist/chunk-QVQKCVP7.js +85 -0
- package/dist/chunk-QVQKCVP7.js.map +1 -0
- package/dist/chunk-QYAI24PN.js +172 -0
- package/dist/chunk-QZHGIJOW.js +51 -0
- package/dist/chunk-REMR5FHD.js +91 -0
- package/dist/chunk-REMR5FHD.js.map +1 -0
- package/dist/chunk-RGX7AQ2K.js +131 -0
- package/dist/chunk-RGX7AQ2K.js.map +1 -0
- package/dist/chunk-RMNKCVRB.js +275 -0
- package/dist/chunk-RMNKCVRB.js.map +1 -0
- package/dist/chunk-ROX7LQRR.js +19 -0
- package/dist/chunk-S7A34DOA.js +111 -0
- package/dist/chunk-S7A34DOA.js.map +1 -0
- package/dist/chunk-S7B2TOOU.js +98 -0
- package/dist/chunk-SFJW2KED.js +166 -0
- package/dist/chunk-SIKCVWM3.js +76 -0
- package/dist/chunk-SK2N45LO.js +1079 -0
- package/dist/chunk-SOKVXKRM.js +74 -0
- package/dist/chunk-STNCMKL6.js +191 -0
- package/dist/chunk-SWL4AAPP.js +320 -0
- package/dist/chunk-SWL4AAPP.js.map +1 -0
- package/dist/chunk-TBHRRQZD.js +942 -0
- package/dist/chunk-TBHRRQZD.js.map +1 -0
- package/dist/chunk-TKPVVD52.js +169 -0
- package/dist/chunk-TNB5EIFV.js +433 -0
- package/dist/chunk-TUSR5R7I.js +57 -0
- package/dist/chunk-TY4BDVLG.js +624 -0
- package/dist/chunk-TY4BDVLG.js.map +1 -0
- package/dist/chunk-U63S2JWI.js +167 -0
- package/dist/chunk-U63S2JWI.js.map +1 -0
- package/dist/chunk-ULPO72IQ.js +225 -0
- package/dist/chunk-UTLIQBRY.js +604 -0
- package/dist/chunk-UTLIQBRY.js.map +1 -0
- package/dist/chunk-UWT7RCL3.js +363 -0
- package/dist/chunk-V4UIM4QE.js +103 -0
- package/dist/chunk-WHSTZRUY.js +64 -0
- package/dist/chunk-WHSTZRUY.js.map +1 -0
- package/dist/chunk-WNSE7N75.js +2123 -0
- package/dist/chunk-WNSE7N75.js.map +1 -0
- package/dist/chunk-XDZVBX6L.js +220 -0
- package/dist/chunk-XDZVBX6L.js.map +1 -0
- package/dist/chunk-XF5R2FQT.js +3868 -0
- package/dist/chunk-XF5R2FQT.js.map +1 -0
- package/dist/chunk-XFJNCZXA.js +142 -0
- package/dist/chunk-XFJNCZXA.js.map +1 -0
- package/dist/chunk-XGOEX2VJ.js +55 -0
- package/dist/chunk-XLJVJ5TK.js +1518 -0
- package/dist/chunk-XLJVJ5TK.js.map +1 -0
- package/dist/chunk-XP4G2DJL.js +494 -0
- package/dist/chunk-XZ4YMCZK.js +66 -0
- package/dist/chunk-Y3VRMFGF.js +42 -0
- package/dist/chunk-YU2XIIL3.js +191 -0
- package/dist/chunk-YU2XIIL3.js.map +1 -0
- package/dist/chunk-ZBUWO4XH.js +1599 -0
- package/dist/chunk-ZBUWO4XH.js.map +1 -0
- package/dist/chunk-ZJ6HUCRK.js +89 -0
- package/dist/chunk-ZJ6HUCRK.js.map +1 -0
- package/dist/claim-QHXKN7W6.js +197 -0
- package/dist/cli.js +101 -81
- package/dist/cli.js.map +1 -1
- package/dist/client-WL2FKW4T.js +19 -0
- package/dist/code-NXN7QYKU.js +76 -0
- package/dist/companies-PGVT62JL.js +195 -0
- package/dist/complete-TCTR3XVD.js +81 -0
- package/dist/config-VOF57KBL.js +88 -0
- package/dist/connect-4S7JLICS.js +42 -0
- package/dist/content-KA25YYO3.js +85 -0
- package/dist/conversation-DI4WMEL2.js +93 -0
- package/dist/conversion-report-KL4LIVY5.js +125 -0
- package/dist/conversion-upload-command-EIKJU5ZW.js +438 -0
- package/dist/conversion-writes-MPBCTVSP.js +120 -0
- package/dist/conversions-ACYT6K7H.js +76 -0
- package/dist/conversions-JTYMFX66.js +135 -0
- package/dist/countries-XGMZWUGP.js +82 -0
- package/dist/create-3QA7X2DD.js +207 -0
- package/dist/create-AFVT5JTH.js +235 -0
- package/dist/create-TYCOMVWR.js +59 -0
- package/dist/create-VFXEJ3EV.js +132 -0
- package/dist/create-VFXEJ3EV.js.map +1 -0
- package/dist/creatives-5VY3LT6X.js +58 -0
- package/dist/creatives-5VY3LT6X.js.map +1 -0
- package/dist/creatives-E6N2YLHE.js +182 -0
- package/dist/creatives-YJ3CXZQC.js +87 -0
- package/dist/credentials-34I6ZZWU.js +287 -0
- package/dist/critique-JM5QADYW.js +1451 -0
- package/dist/critique-JM5QADYW.js.map +1 -0
- package/dist/critique-OCVV6N3U.js +227 -0
- package/dist/critique-OCVV6N3U.js.map +1 -0
- package/dist/crm-4F3LFOZD.js +318 -0
- package/dist/crm-MNBYNP5R.js +224 -0
- package/dist/crop-7UTYG7GS.js +113 -0
- package/dist/currency-3QTI5RSB.js +88 -0
- package/dist/custom-conversions-YRYE65PU.js +125 -0
- package/dist/customers-VNYNT2EQ.js +56 -0
- package/dist/decide-TWKH5QQU.js +199 -0
- package/dist/delete-2GIIUPA3.js +69 -0
- package/dist/delete-AZEVPMVO.js +64 -0
- package/dist/delete-AZEVPMVO.js.map +1 -0
- package/dist/delete-GLLYPNNB.js +71 -0
- package/dist/delete-J7DXPGKD.js +71 -0
- package/dist/delete-PRJGFA2U.js +54 -0
- package/dist/delete-UZRHYEPK.js +66 -0
- package/dist/demographics-JMZA7MB6.js +138 -0
- package/dist/describe-5QCPRSIG.js +97 -0
- package/dist/describe-L3UC6MIL.js +97 -0
- package/dist/dimensions-POH4JXEM.js +101 -0
- package/dist/discard-OH3B5P4C.js +66 -0
- package/dist/discover-5GLET36U.js +172 -0
- package/dist/discover-XAJKZCMM.js +93 -0
- package/dist/domain-K3IILLYE.js +98 -0
- package/dist/download-N4J5WFHD.js +299 -0
- package/dist/draft-2KHUZTIE.js +217 -0
- package/dist/draft-7RYDPOFS.js +307 -0
- package/dist/draft-BB3UUWJP.js +328 -0
- package/dist/draft-EWDOIXSH.js +233 -0
- package/dist/draft-IL37WDST.js +103 -0
- package/dist/draft-KDMYGLWN.js +100 -0
- package/dist/draft-LZL6VWHX.js +306 -0
- package/dist/draft-VXGZDBC7.js +281 -0
- package/dist/engine/index.d.ts +31 -1
- package/dist/engine/index.js +15 -14
- package/dist/env-5MUVYE2L.js +51 -0
- package/dist/experiment-G3FQVAJU.js +1397 -0
- package/dist/export-OLDI32HM.js +168 -0
- package/dist/extract-PPS6ONQN.js +113 -0
- package/dist/facets-PAWOEHOK.js +114 -0
- package/dist/favorites-4ELADD3R.js +178 -0
- package/dist/feed-XIY5TVDL.js +177 -0
- package/dist/feedback-GAGIKZ6B.js +106 -0
- package/dist/feedback-GAGIKZ6B.js.map +1 -0
- package/dist/feedback-record-ZORDBRV2.js +260 -0
- package/dist/feedback-record-ZORDBRV2.js.map +1 -0
- package/dist/fetch-M5GIBURQ.js +176 -0
- package/dist/fetch-YWUVDMUH.js +139 -0
- package/dist/find-EVY4XEIQ.js +134 -0
- package/dist/find-EVY4XEIQ.js.map +1 -0
- package/dist/fit-DGCYW7LN.js +62 -0
- package/dist/flows-TD6PNUDM.js +247 -0
- package/dist/flows-TD6PNUDM.js.map +1 -0
- package/dist/follow-ZTPZKIMZ.js +94 -0
- package/dist/follow-competitors-6QDVQ4VJ.js +112 -0
- package/dist/following-PBZLZFGQ.js +113 -0
- package/dist/fonts-IQ6XOUGU.js +36 -0
- package/dist/forecast-FACEH4WR.js +118 -0
- package/dist/forecast-FACEH4WR.js.map +1 -0
- package/dist/forecast-YXOKAWDZ.js +168 -0
- package/dist/funding-ULBMKUMW.js +85 -0
- package/dist/funnel-CJRFDTCD.js +394 -0
- package/dist/ga4-2BL5YAYN.js +55 -0
- package/dist/generate-D3LUXFJT.js +263 -0
- package/dist/generate-D3LUXFJT.js.map +1 -0
- package/dist/get-6RZU4M6W.js +63 -0
- package/dist/get-7GCEJ6KG.js +92 -0
- package/dist/get-JRMJLLU5.js +79 -0
- package/dist/get-JRMJLLU5.js.map +1 -0
- package/dist/get-MZWUMHEF.js +61 -0
- package/dist/get-NUL4YJG5.js +56 -0
- package/dist/get-OAZZHUZP.js +59 -0
- package/dist/get-OHU2N7B7.js +63 -0
- package/dist/gif-NYZYV5RY.js +102 -0
- package/dist/gif-NYZYV5RY.js.map +1 -0
- package/dist/google-7STODZQR.js +136 -0
- package/dist/google-URYXWN5O.js +3190 -0
- package/dist/google-URYXWN5O.js.map +1 -0
- package/dist/google-ads-BB7CF4NV.js +195 -0
- package/dist/group-D5WXNFCP.js +43 -0
- package/dist/group-Y5PLETFT.js +43 -0
- package/dist/gsc-UU3T2C6B.js +30 -0
- package/dist/history-OQAOTEO3.js +67 -0
- package/dist/history-Q47TKZJS.js +133 -0
- package/dist/hubspot-A6O5GVTH.js +779 -0
- package/dist/icon-GB7UH5RF.js +137 -0
- package/dist/ideas-LD6X753E.js +40 -0
- package/dist/images-XY5DLJEA.js +92 -0
- package/dist/images-XY5DLJEA.js.map +1 -0
- package/dist/improve-U5USRH4G.js +86 -0
- package/dist/ingest-PUMTHASV.js +107 -0
- package/dist/ingest-WWNSA6VZ.js +23 -0
- package/dist/insights-4HT2NAYP.js +423 -0
- package/dist/insights-4HT2NAYP.js.map +1 -0
- package/dist/insights-PZXFCMX2.js +122 -0
- package/dist/insights-PZXFCMX2.js.map +1 -0
- package/dist/inspect-5PRLZLF5.js +189 -0
- package/dist/inspiration-XQYHBJY2.js +53 -0
- package/dist/intent-4QVVI4FF.js +95 -0
- package/dist/job-CGQHEANB.js +202 -0
- package/dist/job-create-SZYJT2NC.js +109 -0
- package/dist/job-status-6LAKLCKH.js +74 -0
- package/dist/keep-3MJSHWU3.js +78 -0
- package/dist/keyword-gap-YMMDRYVK.js +130 -0
- package/dist/keyword-metrics-FB7FCYK6.js +197 -0
- package/dist/keywords-for-site-YZYALONY.js +128 -0
- package/dist/landing-XOCPIOWX.js +28 -0
- package/dist/landings-ZLKUP66P.js +151 -0
- package/dist/languages-3IJVDS5Z.js +55 -0
- package/dist/languages-R3Y2IOFU.js +40 -0
- package/dist/launches-RG2SWEXM.js +19 -0
- package/dist/layerize-SJYK6HPD.js +190 -0
- package/dist/leads-2XOSAYP4.js +293 -0
- package/dist/leads-SWINPYEP.js +90 -0
- package/dist/learn-6HVDSTTJ.js +204 -0
- package/dist/learn-6HVDSTTJ.js.map +1 -0
- package/dist/library-Q4OU7VR7.js +109 -0
- package/dist/library-Q4OU7VR7.js.map +1 -0
- package/dist/lighthouse-FALRSVQH.js +75 -0
- package/dist/line-item-writes-FG3TY4W4.js +208 -0
- package/dist/line-items-ZNVBFA4H.js +103 -0
- package/dist/link-IFEXIUDW.js +64 -0
- package/dist/linkedin-NINSMEW6.js +1045 -0
- package/dist/linkedin-NINSMEW6.js.map +1 -0
- package/dist/list-2ZTOMTES.js +65 -0
- package/dist/list-FR2OVRVL.js +151 -0
- package/dist/list-GK6LNWIW.js +76 -0
- package/dist/list-K65FY6SV.js +303 -0
- package/dist/list-RJG3FMZR.js +64 -0
- package/dist/list-RJG3FMZR.js.map +1 -0
- package/dist/list-RR53EF3O.js +57 -0
- package/dist/list-TB677Q2F.js +50 -0
- package/dist/list-VTVRZIYL.js +51 -0
- package/dist/locations-6IH7WGRG.js +40 -0
- package/dist/locations-VL2G22Y5.js +67 -0
- package/dist/log-TAKCMC2C.js +92 -0
- package/dist/logo-YSNUUT33.js +18 -0
- package/dist/lookup-RH5N3OWJ.js +22 -0
- package/dist/make-EWHS4EHQ.js +1345 -0
- package/dist/make-EWHS4EHQ.js.map +1 -0
- package/dist/map-DWLEYXSW.js +433 -0
- package/dist/map-DWLEYXSW.js.map +1 -0
- package/dist/mcp-NNQZ5B7N.js +463 -0
- package/dist/media-ES2UBGYW.js +15 -0
- package/dist/media-MPXEXN4O.js +89 -0
- package/dist/media-sources-OAFBA62X.js +32 -0
- package/dist/members-SS7IBYVE.js +44 -0
- package/dist/meme-FMHHKWVU.js +100 -0
- package/dist/meme-FMHHKWVU.js.map +1 -0
- package/dist/meta-AOIPEDV5.js +69 -0
- package/dist/metrics-YLAREC4T.js +152 -0
- package/dist/models-IH6KE6OH.js +155 -0
- package/dist/normalize-NR5RS3WR.js +806 -0
- package/dist/normalize-WOZTAI6C.js +141 -0
- package/dist/options-PL44BV5E.js +122 -0
- package/dist/options-PL44BV5E.js.map +1 -0
- package/dist/organization-SQBODZUK.js +328 -0
- package/dist/organization-SQBODZUK.js.map +1 -0
- package/dist/output-GWIP6ROX.js +24 -0
- package/dist/page-YWGBCN65.js +105 -0
- package/dist/pages-FTI44OSH.js +66 -0
- package/dist/performance-WRARV3YR.js +24 -0
- package/dist/pinterest-J442QLQS.js +96 -0
- package/dist/pixels-DWW2TDY2.js +60 -0
- package/dist/pixels-MBKR4XPX.js +108 -0
- package/dist/plan-YPE77T4R.js +207 -0
- package/dist/preview-V4YBD45S.js +169 -0
- package/dist/profile-S3MXS2VO.js +159 -0
- package/dist/profile-S3MXS2VO.js.map +1 -0
- package/dist/promoted-tweet-writes-CAD3RGU4.js +180 -0
- package/dist/promoted-tweets-NYJP3TXL.js +119 -0
- package/dist/properties-G3L2OAOL.js +101 -0
- package/dist/publish-ZW6VHB27.js +341 -0
- package/dist/publish-ZW6VHB27.js.map +1 -0
- package/dist/query-QRPBV2AR.js +61 -0
- package/dist/query-WCB5W4NW.js +236 -0
- package/dist/query-YBS6ZQ75.js +247 -0
- package/dist/questionnaire-PAK4DALP.js +93 -0
- package/dist/read-LUTB3UOR.js +141 -0
- package/dist/reddit-VJTNXORD.js +26 -0
- package/dist/refresh-6I52WXG5.js +94 -0
- package/dist/release-LSSYP2ZJ.js +60 -0
- package/dist/relevant-pages-2XHS5WP4.js +99 -0
- package/dist/remove-K62YJYGT.js +50 -0
- package/dist/remove-X6DNVS67.js +48 -0
- package/dist/reopen-RPVEBQVR.js +63 -0
- package/dist/rerun-ETH2NEEX.js +90 -0
- package/dist/rerun-ETH2NEEX.js.map +1 -0
- package/dist/research-4ASN2KMB.js +62 -0
- package/dist/research-6J3EOBAL.js +262 -0
- package/dist/reset-ETORO5UO.js +54 -0
- package/dist/reset-YVTYHSTY.js +54 -0
- package/dist/resolve-BI7GB5U2.js +121 -0
- package/dist/retry-2ZZCKSRW.js +62 -0
- package/dist/retry-QZ7YHXF3.js +60 -0
- package/dist/retry-failed-EJBP4236.js +45 -0
- package/dist/rules-KEHQEXEU.js +96 -0
- package/dist/rules-KEHQEXEU.js.map +1 -0
- package/dist/rules-add-IDBWO6XV.js +462 -0
- package/dist/rules-add-IDBWO6XV.js.map +1 -0
- package/dist/run-FFASB4YB.js +65 -0
- package/dist/run-KYEOLJFV.js +66 -0
- package/dist/run-KYEOLJFV.js.map +1 -0
- package/dist/scaffold-ad-EKCXHZPT.js +1511 -0
- package/dist/scaffold-ad-EKCXHZPT.js.map +1 -0
- package/dist/scaffold-static-ad-MWKTXATN.js +1005 -0
- package/dist/scaffold-static-ad-MWKTXATN.js.map +1 -0
- package/dist/scaffold-video-BYPPH352.js +883 -0
- package/dist/scaffold-video-BYPPH352.js.map +1 -0
- package/dist/schedule-4BK2ML6F.js +61 -0
- package/dist/schedule-IDZC6M32.js +66 -0
- package/dist/scheduled-agents-GMGP3G6T.js +50 -0
- package/dist/scheduled-agents-GMGP3G6T.js.map +1 -0
- package/dist/schema-EFR7NGJG.js +69 -0
- package/dist/schema-EFR7NGJG.js.map +1 -0
- package/dist/schema-QPPWADIL.js +132 -0
- package/dist/scrape-J2Y7YZ4Z.js +2241 -0
- package/dist/screenshot-K7ZGTVTE.js +102 -0
- package/dist/search-CI7LEOOK.js +92 -0
- package/dist/search-GCSQ6CSD.js +174 -0
- package/dist/search-I6DRUXBX.js +224 -0
- package/dist/search-TTL7VQET.js +26 -0
- package/dist/search-VT2KUAH6.js +91 -0
- package/dist/search-copy-N2AIJNUH.js +168 -0
- package/dist/seeds-EYYQCMGF.js +101 -0
- package/dist/select-CPFKK57J.js +101 -0
- package/dist/select-CPFKK57J.js.map +1 -0
- package/dist/sends-RHVFV2XM.js +309 -0
- package/dist/sequences-5DUWNSWQ.js +146 -0
- package/dist/set-prompt-TJ3UTNYS.js +193 -0
- package/dist/set-prompt-TJ3UTNYS.js.map +1 -0
- package/dist/setup-links-C3EUV2RX.js +141 -0
- package/dist/shared-NDRFKAH7.js +31 -0
- package/dist/site-W5W7FCUD.js +177 -0
- package/dist/sitemaps-QKKXMXMV.js +87 -0
- package/dist/sites-GRC6CCCK.js +101 -0
- package/dist/skills-UML6GSW6.js +47 -0
- package/dist/sources-AWODYZDS.js +454 -0
- package/dist/sources-AWODYZDS.js.map +1 -0
- package/dist/sources-SGGLJIOA.js +30 -0
- package/dist/stale-KILEXX57.js +71 -0
- package/dist/stale-KILEXX57.js.map +1 -0
- package/dist/stats-RCLQE4HJ.js +34 -0
- package/dist/status-KUSLGZD7.js +62 -0
- package/dist/sticker-SINY47WT.js +94 -0
- package/dist/stock-ECRBD7RP.js +179 -0
- package/dist/studio-LMDDQWRY.js +49 -0
- package/dist/sync-2MFUI3ME.js +54 -0
- package/dist/sync-IE4AAVGY.js +265 -0
- package/dist/sync-IE4AAVGY.js.map +1 -0
- package/dist/sync-TCY4NX7J.js +54 -0
- package/dist/sync-definition-DGSAZGQZ.js +64 -0
- package/dist/tag-manager-G3LBQZUL.js +43 -0
- package/dist/tags-IHLO2NDM.js +20 -0
- package/dist/tags-QQLYW2QQ.js +224 -0
- package/dist/tags-QXRKKRIR.js +20 -0
- package/dist/tags-U5YWCPFW.js +20 -0
- package/dist/tags-ZYVOKGHU.js +26 -0
- package/dist/targeting-constants-KEKYU5JQ.js +118 -0
- package/dist/targeting-criteria-AEBSY6OY.js +113 -0
- package/dist/targets-5Q2OFVXL.js +103 -0
- package/dist/targets-5Q2OFVXL.js.map +1 -0
- package/dist/testimonials-O52ULRAU.js +32 -0
- package/dist/themes-26XFWSWC.js +94 -0
- package/dist/top-companies-OMGAFFWN.js +108 -0
- package/dist/translate-C5LZ6KVN.js +604 -0
- package/dist/translate-C5LZ6KVN.js.map +1 -0
- package/dist/triggers-PTPG6OQ6.js +142 -0
- package/dist/triggers-PTPG6OQ6.js.map +1 -0
- package/dist/tweets-C3QUKS3I.js +123 -0
- package/dist/unfollow-ZI5QU7RD.js +46 -0
- package/dist/unlink-3BAXM2OH.js +67 -0
- package/dist/unstage-7F7JI6HY.js +95 -0
- package/dist/unstage-EFW465VN.js +85 -0
- package/dist/unstage-EFW465VN.js.map +1 -0
- package/dist/update-2RCIXWP3.js +98 -0
- package/dist/update-5A7Q7S6I.js +63 -0
- package/dist/update-VTUB2M5I.js +188 -0
- package/dist/update-VTUB2M5I.js.map +1 -0
- package/dist/update-XPRHUFBR.js +152 -0
- package/dist/update-XPRHUFBR.js.map +1 -0
- package/dist/upload-KO46L76G.js +150 -0
- package/dist/upload-Y3TACPEN.js +126 -0
- package/dist/upscale-SJ7SCSRS.js +109 -0
- package/dist/url-options-6CNDIUDM.js +130 -0
- package/dist/url-params-ZUYOLAJG.js +98 -0
- package/dist/use-6ULEM3WE.js +95 -0
- package/dist/validate-KPJLIGYY.js +117 -0
- package/dist/validate-KPJLIGYY.js.map +1 -0
- package/dist/variant-5TRRSYBB.js +338 -0
- package/dist/videos-EFMNE6U2.js +39 -0
- package/dist/view-ABSWZMXW.js +121 -0
- package/dist/viewer-check-2GI26EKA.js +80 -0
- package/dist/viewer-check-2GI26EKA.js.map +1 -0
- package/dist/web-4JGYRY36.js +140 -0
- package/dist/winners-KRISBKOR.js +113 -0
- package/dist/winning-ads-6SXA4HGB.js +84 -0
- package/dist/write-commands-HCQI4Y27.js +737 -0
- package/dist/write-commands-LQXKNBA5.js +1015 -0
- package/dist/write-commands-QCI6XBM7.js +206 -0
- package/dist/write-commands-RHCCPMAE.js +713 -0
- package/dist/x-LUEUC3XO.js +47 -0
- package/package.json +2 -1
- package/dist/account-67PZBEP6.js +0 -79
- package/dist/account-HZC6X2PH.js +0 -49
- package/dist/account-TQUV64XP.js +0 -80
- package/dist/account-reads-IRBTERTY.js +0 -218
- package/dist/account-writes-ALDSHAEV.js +0 -66
- package/dist/accounts-4P54UY6F.js +0 -115
- package/dist/accounts-6UNBLIUH.js +0 -75
- package/dist/accounts-GVTZN4VE.js +0 -114
- package/dist/accounts-NJ6TF6WH.js +0 -611
- package/dist/accounts-WTB737BM.js +0 -77
- package/dist/actions-D3BOWDEB.js +0 -55
- package/dist/active-entities-J2O76SRP.js +0 -103
- package/dist/activities-2J7FTZMN.js +0 -74
- package/dist/ad-group-writes-PQKDCMQF.js +0 -170
- package/dist/ad-groups-NGYEJMV4.js +0 -68
- package/dist/ad-writes-77FVHJTS.js +0 -174
- package/dist/add-2FHPLALV.js +0 -105
- package/dist/add-2XJYOGKW.js +0 -104
- package/dist/add-62JPGFD4.js +0 -302
- package/dist/add-JP76KCCY.js +0 -97
- package/dist/add-accounts-M5Y4DQFM.js +0 -91
- package/dist/ads-DB5NDHX5.js +0 -128
- package/dist/ads-J2F7BSHR.js +0 -45
- package/dist/ads-J2F7BSHR.js.map +0 -1
- package/dist/ads-LYNA2I7B.js +0 -77
- package/dist/ads-W2IPUWHQ.js +0 -113
- package/dist/adsets-PY5ZKGBO.js +0 -176
- package/dist/advertisers-BVAZ4XUX.js +0 -125
- package/dist/advertisers-NZPJQF7W.js +0 -120
- package/dist/analytics-K2QIWKBN.js +0 -444
- package/dist/analytics-K2QIWKBN.js.map +0 -1
- package/dist/analytics-NTPZKMYK.js +0 -1976
- package/dist/animate-EIV2OHXT.js +0 -480
- package/dist/assign-UNIA5YDC.js +0 -77
- package/dist/audience-size-4NN6ENP5.js +0 -94
- package/dist/audience-size-4NN6ENP5.js.map +0 -1
- package/dist/audiences-45ZCY2VZ.js +0 -268
- package/dist/audiences-UUIYQFS6.js +0 -78
- package/dist/audiences-VYFX7OFS.js +0 -85
- package/dist/audit-NSVHNA5J.js +0 -151
- package/dist/audit-OWXTLQC4.js +0 -88
- package/dist/autocomplete-EHWAQYVB.js +0 -111
- package/dist/avatars-7WZPW7BV.js +0 -38
- package/dist/bid-pricing-F5NDMS6W.js +0 -99
- package/dist/bid-pricing-F5NDMS6W.js.map +0 -1
- package/dist/brand-QAJ5VWFM.js +0 -22
- package/dist/brief-V2OB5OJW.js +0 -490
- package/dist/brief-V2OB5OJW.js.map +0 -1
- package/dist/businesses-ZH67AXR6.js +0 -53
- package/dist/campaign-groups-KFJKLNNU.js +0 -95
- package/dist/campaign-writes-BDGQ6XB3.js +0 -170
- package/dist/campaign-writes-FNMAGCKB.js +0 -165
- package/dist/campaigns-66OOGMDW.js +0 -110
- package/dist/campaigns-6HMHOXXY.js +0 -109
- package/dist/campaigns-HJTGX5WW.js +0 -76
- package/dist/campaigns-KT3J2O7S.js +0 -107
- package/dist/canvas-MQ6ZE5CZ.js +0 -46
- package/dist/capabilities-RVUMPP7C.js +0 -144
- package/dist/cards-I4BZIYUV.js +0 -85
- package/dist/catalog-NLL5VDRK.js +0 -64
- package/dist/catalog-NLL5VDRK.js.map +0 -1
- package/dist/catalogs-B2NKQO24.js +0 -128
- package/dist/changes-FX3TPYGT.js +0 -135
- package/dist/chatgpt-3NS2R442.js +0 -47
- package/dist/chats-72L7U4ML.js +0 -262
- package/dist/chunk-2KIF3U2C.js +0 -51
- package/dist/chunk-35ENAFJX.js +0 -46
- package/dist/chunk-3ZWHAIMU.js +0 -207
- package/dist/chunk-3ZWHAIMU.js.map +0 -1
- package/dist/chunk-4DM6OAQ6.js +0 -2065
- package/dist/chunk-4DM6OAQ6.js.map +0 -1
- package/dist/chunk-4TU2MWBJ.js +0 -275
- package/dist/chunk-57UECM77.js +0 -98
- package/dist/chunk-5HYSKH77.js +0 -315
- package/dist/chunk-5HYSKH77.js.map +0 -1
- package/dist/chunk-65BQAJMH.js +0 -136
- package/dist/chunk-6GFJFTG6.js +0 -75
- package/dist/chunk-6HPIWZHS.js +0 -76
- package/dist/chunk-73B3RQJC.js +0 -610
- package/dist/chunk-73B3RQJC.js.map +0 -1
- package/dist/chunk-7GYM4I5I.js +0 -206
- package/dist/chunk-7NTION5F.js +0 -26
- package/dist/chunk-7SX73SH2.js +0 -2902
- package/dist/chunk-7SX73SH2.js.map +0 -1
- package/dist/chunk-AFDPISNJ.js +0 -111
- package/dist/chunk-AFDPISNJ.js.map +0 -1
- package/dist/chunk-AIDXJHZ4.js +0 -433
- package/dist/chunk-AR7PU7BB.js +0 -76
- package/dist/chunk-AXVOBRQT.js +0 -1442
- package/dist/chunk-AXVOBRQT.js.map +0 -1
- package/dist/chunk-BBBZR7MF.js +0 -160
- package/dist/chunk-BBBZR7MF.js.map +0 -1
- package/dist/chunk-BVYPRGPG.js +0 -92
- package/dist/chunk-BVYPRGPG.js.map +0 -1
- package/dist/chunk-CAMX6OHF.js +0 -3182
- package/dist/chunk-CAMX6OHF.js.map +0 -1
- package/dist/chunk-CBCGVPHB.js +0 -125
- package/dist/chunk-CECS3DHZ.js +0 -333
- package/dist/chunk-CZYUZL6R.js +0 -3151
- package/dist/chunk-CZYUZL6R.js.map +0 -1
- package/dist/chunk-D5MF337I.js +0 -97
- package/dist/chunk-DDTILZXI.js +0 -103
- package/dist/chunk-DL2W4N7J.js +0 -52
- package/dist/chunk-DLUWHZCE.js +0 -225
- package/dist/chunk-EOGPNV25.js +0 -509
- package/dist/chunk-EOGPNV25.js.map +0 -1
- package/dist/chunk-F3FSD6BO.js +0 -96
- package/dist/chunk-F3FSD6BO.js.map +0 -1
- package/dist/chunk-FDG2LLX7.js +0 -494
- package/dist/chunk-FE7T32YL.js +0 -163
- package/dist/chunk-FE7T32YL.js.map +0 -1
- package/dist/chunk-FIN4ZXGJ.js +0 -70
- package/dist/chunk-FIN4ZXGJ.js.map +0 -1
- package/dist/chunk-FO5EP6DA.js +0 -24008
- package/dist/chunk-FO5EP6DA.js.map +0 -1
- package/dist/chunk-FSGTITIW.js +0 -622
- package/dist/chunk-FSGTITIW.js.map +0 -1
- package/dist/chunk-FSPV2DUG.js +0 -310
- package/dist/chunk-FSPV2DUG.js.map +0 -1
- package/dist/chunk-FYAWA3FO.js +0 -1830
- package/dist/chunk-FYAWA3FO.js.map +0 -1
- package/dist/chunk-G3KO2HFZ.js +0 -35
- package/dist/chunk-GKXMIXEV.js +0 -166
- package/dist/chunk-GT4UFORX.js +0 -296
- package/dist/chunk-GZ6YS7TG.js +0 -106
- package/dist/chunk-H7JOVRHO.js +0 -106
- package/dist/chunk-IJDF7D4U.js +0 -139
- package/dist/chunk-INJHF7AF.js +0 -172
- package/dist/chunk-IZFGTGFR.js +0 -67
- package/dist/chunk-J2QOKD2F.js +0 -76
- package/dist/chunk-J5WZ7SAD.js +0 -346
- package/dist/chunk-JC6GNMA7.js +0 -297
- package/dist/chunk-KB5HBQEK.js +0 -25
- package/dist/chunk-KB5XJHQX.js +0 -216
- package/dist/chunk-KB5XJHQX.js.map +0 -1
- package/dist/chunk-KM4AAAHZ.js +0 -5187
- package/dist/chunk-KM4AAAHZ.js.map +0 -1
- package/dist/chunk-LFZTGIPJ.js +0 -384
- package/dist/chunk-LFZTGIPJ.js.map +0 -1
- package/dist/chunk-LHNL6JM2.js +0 -309
- package/dist/chunk-LHNL6JM2.js.map +0 -1
- package/dist/chunk-LMHVLUD4.js +0 -175
- package/dist/chunk-LMHVLUD4.js.map +0 -1
- package/dist/chunk-NAMEFVWL.js +0 -1743
- package/dist/chunk-NAMEFVWL.js.map +0 -1
- package/dist/chunk-NFSLRRIE.js +0 -77
- package/dist/chunk-NORAJYUI.js +0 -172
- package/dist/chunk-NQTSHC7Z.js +0 -304
- package/dist/chunk-NQTSHC7Z.js.map +0 -1
- package/dist/chunk-O3LHCQ7Q.js +0 -136
- package/dist/chunk-O3LHCQ7Q.js.map +0 -1
- package/dist/chunk-O4ABJ352.js +0 -4410
- package/dist/chunk-O4ABJ352.js.map +0 -1
- package/dist/chunk-O5XLQUDS.js +0 -846
- package/dist/chunk-OI7KSXZM.js +0 -6265
- package/dist/chunk-OI7KSXZM.js.map +0 -1
- package/dist/chunk-OO67YTPM.js +0 -35
- package/dist/chunk-OO67YTPM.js.map +0 -1
- package/dist/chunk-OXBPKBSK.js +0 -6667
- package/dist/chunk-OXBPKBSK.js.map +0 -1
- package/dist/chunk-P3XJUOWT.js +0 -474
- package/dist/chunk-P3XJUOWT.js.map +0 -1
- package/dist/chunk-P3ZJIIDS.js +0 -57
- package/dist/chunk-P5T7OZKV.js +0 -26
- package/dist/chunk-P66JWKAL.js +0 -533
- package/dist/chunk-P66JWKAL.js.map +0 -1
- package/dist/chunk-PA5MYVQY.js +0 -66
- package/dist/chunk-PELW56D7.js +0 -45
- package/dist/chunk-PGVF4SB7.js +0 -169
- package/dist/chunk-Q676JHJA.js +0 -58
- package/dist/chunk-QDOVBGKZ.js +0 -149
- package/dist/chunk-QHIUJXU7.js +0 -363
- package/dist/chunk-QJPPPQPD.js +0 -98
- package/dist/chunk-QNEX7FEC.js +0 -174
- package/dist/chunk-QTL4NJ5I.js +0 -65
- package/dist/chunk-QTL4NJ5I.js.map +0 -1
- package/dist/chunk-QWX3QJNM.js +0 -170
- package/dist/chunk-QXDEZKAR.js +0 -455
- package/dist/chunk-QXDEZKAR.js.map +0 -1
- package/dist/chunk-RG7OMI5W.js +0 -1621
- package/dist/chunk-RG7OMI5W.js.map +0 -1
- package/dist/chunk-RUHMLPH5.js +0 -455
- package/dist/chunk-SJLIV6PF.js +0 -19
- package/dist/chunk-SLCSLVGS.js +0 -274
- package/dist/chunk-THU74XR6.js +0 -96
- package/dist/chunk-THU74XR6.js.map +0 -1
- package/dist/chunk-TY7TEU3T.js +0 -1079
- package/dist/chunk-UXTZ5MBE.js +0 -56
- package/dist/chunk-V43RLLZE.js +0 -55
- package/dist/chunk-V7PMSMPF.js +0 -817
- package/dist/chunk-V7PMSMPF.js.map +0 -1
- package/dist/chunk-VFSLIDXA.js +0 -42
- package/dist/chunk-VHMNSO2B.js +0 -84
- package/dist/chunk-VKH6LSC2.js +0 -188
- package/dist/chunk-VTCBPYGE.js +0 -592
- package/dist/chunk-W6ASM6UP.js +0 -197
- package/dist/chunk-W7KB3LJE.js +0 -60
- package/dist/chunk-W7KB3LJE.js.map +0 -1
- package/dist/chunk-WESRVXFS.js +0 -133
- package/dist/chunk-WESRVXFS.js.map +0 -1
- package/dist/chunk-WILN7TD6.js +0 -84
- package/dist/chunk-YGK7ZHNI.js +0 -337
- package/dist/chunk-YGK7ZHNI.js.map +0 -1
- package/dist/chunk-YGL5LTEA.js +0 -665
- package/dist/chunk-YONSWWCF.js +0 -215
- package/dist/chunk-Z5KBRTB2.js +0 -191
- package/dist/chunk-Z62XZCBE.js +0 -541
- package/dist/chunk-Z62XZCBE.js.map +0 -1
- package/dist/chunk-ZBKBTTHD.js +0 -74
- package/dist/chunk-ZJR5E53N.js +0 -23
- package/dist/chunk-ZLU5QDLU.js +0 -486
- package/dist/chunk-ZLU5QDLU.js.map +0 -1
- package/dist/chunk-ZNNC6B75.js +0 -94
- package/dist/chunk-ZO2YLHRW.js +0 -74
- package/dist/chunk-ZPJE6D7W.js +0 -74
- package/dist/claim-DIITRUIN.js +0 -197
- package/dist/client-LY2JCQS2.js +0 -19
- package/dist/code-7CBNYUPU.js +0 -76
- package/dist/companies-HHSYHL74.js +0 -195
- package/dist/complete-M3TURPU5.js +0 -81
- package/dist/config-7COTFJWK.js +0 -88
- package/dist/connect-TQL5EVVE.js +0 -42
- package/dist/content-OXMONMHJ.js +0 -85
- package/dist/conversation-GE273GC4.js +0 -93
- package/dist/conversion-report-BH4HH2Q3.js +0 -125
- package/dist/conversion-upload-command-QWWYCTNV.js +0 -438
- package/dist/conversion-writes-HG2O6JI7.js +0 -120
- package/dist/conversions-DP6ZF57D.js +0 -135
- package/dist/conversions-XPSN7SOW.js +0 -76
- package/dist/countries-UXAUGSBR.js +0 -82
- package/dist/create-ENQWVWGB.js +0 -59
- package/dist/create-NVXJP477.js +0 -207
- package/dist/create-PITWGVAS.js +0 -130
- package/dist/create-PITWGVAS.js.map +0 -1
- package/dist/create-XLZYNFKN.js +0 -235
- package/dist/creatives-O3444SBT.js +0 -182
- package/dist/creatives-ONKKGW5T.js +0 -87
- package/dist/creatives-U6IKIQBT.js +0 -51
- package/dist/creatives-U6IKIQBT.js.map +0 -1
- package/dist/credentials-3UY7RVUL.js +0 -287
- package/dist/critique-3LMW73QJ.js +0 -1449
- package/dist/critique-3LMW73QJ.js.map +0 -1
- package/dist/critique-KB32Y4AW.js +0 -213
- package/dist/critique-KB32Y4AW.js.map +0 -1
- package/dist/crm-OX67TBWD.js +0 -224
- package/dist/crm-XXU5XZIQ.js +0 -318
- package/dist/crop-3ZV5BFCA.js +0 -113
- package/dist/currency-XP4EMU4M.js +0 -88
- package/dist/custom-conversions-TV23XQHW.js +0 -125
- package/dist/customers-EJ7FVCTC.js +0 -56
- package/dist/decide-EGQ3CRHI.js +0 -199
- package/dist/delete-55IHV25V.js +0 -63
- package/dist/delete-55IHV25V.js.map +0 -1
- package/dist/delete-GXLPIGTC.js +0 -54
- package/dist/delete-MUPTLWHI.js +0 -71
- package/dist/delete-OW2N4WIA.js +0 -66
- package/dist/delete-R2SEUSLV.js +0 -69
- package/dist/delete-ZGBBWFAW.js +0 -71
- package/dist/demographics-K6DEWUE5.js +0 -138
- package/dist/describe-4O3VCV6L.js +0 -97
- package/dist/describe-FCTM53MM.js +0 -97
- package/dist/dimensions-AD4VS5AH.js +0 -101
- package/dist/discard-NZ7FQJEE.js +0 -66
- package/dist/discover-OISU5EJF.js +0 -172
- package/dist/discover-UQXQUPNO.js +0 -93
- package/dist/domain-DXBHNZLO.js +0 -98
- package/dist/download-IE6XLFHM.js +0 -299
- package/dist/draft-DB6KMBCH.js +0 -306
- package/dist/draft-ENA7S4Y7.js +0 -103
- package/dist/draft-HJBAG3SN.js +0 -307
- package/dist/draft-ICEVLF4E.js +0 -328
- package/dist/draft-MGKJ5RYI.js +0 -100
- package/dist/draft-OBFKQEPK.js +0 -281
- package/dist/draft-OOHU6NMA.js +0 -217
- package/dist/draft-S6VPKZYY.js +0 -233
- package/dist/env-YLOVBOAE.js +0 -43
- package/dist/experiment-PHFP6IBM.js +0 -1397
- package/dist/export-R2IMUCQO.js +0 -168
- package/dist/extract-OQP3TSQG.js +0 -113
- package/dist/facets-NUKR7I57.js +0 -114
- package/dist/favorites-NS73FDG5.js +0 -178
- package/dist/feed-SQPOB7SP.js +0 -177
- package/dist/feedback-SQAAAKOQ.js +0 -66
- package/dist/feedback-SQAAAKOQ.js.map +0 -1
- package/dist/feedback-record-7W7WBHSQ.js +0 -175
- package/dist/feedback-record-7W7WBHSQ.js.map +0 -1
- package/dist/fetch-PQ3NOPIE.js +0 -139
- package/dist/fetch-PTSAVQW5.js +0 -176
- package/dist/find-Y22AANDE.js +0 -134
- package/dist/find-Y22AANDE.js.map +0 -1
- package/dist/fit-IITU6UWC.js +0 -45
- package/dist/flows-ZLF3QJ76.js +0 -247
- package/dist/flows-ZLF3QJ76.js.map +0 -1
- package/dist/follow-N3DQZV7M.js +0 -94
- package/dist/follow-competitors-BZPCBGIB.js +0 -112
- package/dist/following-KESWTEBR.js +0 -113
- package/dist/fonts-FG6XMK5A.js +0 -34
- package/dist/forecast-43XBSHJR.js +0 -168
- package/dist/forecast-MAFZQ4UF.js +0 -104
- package/dist/forecast-MAFZQ4UF.js.map +0 -1
- package/dist/funding-HYSCYS62.js +0 -85
- package/dist/funnel-32CNV57L.js +0 -394
- package/dist/ga4-J2KTNCD4.js +0 -55
- package/dist/generate-G3I5BLLW.js +0 -262
- package/dist/generate-G3I5BLLW.js.map +0 -1
- package/dist/get-3P2EQLP3.js +0 -63
- package/dist/get-FJB3X44Z.js +0 -61
- package/dist/get-GDF5V3RN.js +0 -78
- package/dist/get-GDF5V3RN.js.map +0 -1
- package/dist/get-MBGO4VJD.js +0 -63
- package/dist/get-NOKSZPIV.js +0 -59
- package/dist/get-W7MKBMQ3.js +0 -56
- package/dist/get-WHC4SRYK.js +0 -92
- package/dist/gif-SFYVDLCU.js +0 -94
- package/dist/gif-SFYVDLCU.js.map +0 -1
- package/dist/google-THWFDDHJ.js +0 -3191
- package/dist/google-THWFDDHJ.js.map +0 -1
- package/dist/google-XRAMIES5.js +0 -136
- package/dist/google-ads-N55SE2CB.js +0 -195
- package/dist/group-6RDJTWVN.js +0 -43
- package/dist/group-TZJCKHKS.js +0 -43
- package/dist/gsc-HD6UFRYM.js +0 -30
- package/dist/history-4RWCE7WW.js +0 -67
- package/dist/history-IROFQ6LA.js +0 -133
- package/dist/hubspot-75N4AI43.js +0 -779
- package/dist/icon-BMCDFGMN.js +0 -137
- package/dist/ideas-7UQMXLI5.js +0 -32
- package/dist/images-OFR3S2U4.js +0 -90
- package/dist/images-OFR3S2U4.js.map +0 -1
- package/dist/improve-P6F2HXYQ.js +0 -86
- package/dist/ingest-HGR7KSG4.js +0 -107
- package/dist/ingest-XU4WXE4U.js +0 -23
- package/dist/insights-7SI2TB72.js +0 -128
- package/dist/insights-7SI2TB72.js.map +0 -1
- package/dist/insights-P5VIDOZN.js +0 -432
- package/dist/insights-P5VIDOZN.js.map +0 -1
- package/dist/inspect-TL2VZBN7.js +0 -189
- package/dist/inspiration-7WTS3AVI.js +0 -53
- package/dist/intent-OCZE4O7R.js +0 -95
- package/dist/job-XMPQ27SJ.js +0 -202
- package/dist/job-create-HTDQHPEF.js +0 -109
- package/dist/job-status-L7WUTZ2C.js +0 -74
- package/dist/keep-42SLV4CR.js +0 -78
- package/dist/keyword-gap-323NE4AK.js +0 -130
- package/dist/keyword-metrics-V6DGO7U5.js +0 -197
- package/dist/keywords-for-site-ANSLXBHB.js +0 -128
- package/dist/landing-K25GUBLZ.js +0 -28
- package/dist/landings-5IYXHA5Z.js +0 -151
- package/dist/languages-SRFGW6Z3.js +0 -55
- package/dist/languages-US6JUATO.js +0 -40
- package/dist/launches-7U4TPNO3.js +0 -108
- package/dist/launches-7U4TPNO3.js.map +0 -1
- package/dist/layerize-U672AXED.js +0 -190
- package/dist/leads-MXUQISOC.js +0 -293
- package/dist/leads-UJVKPRXX.js +0 -90
- package/dist/learn-XTEU4K66.js +0 -203
- package/dist/learn-XTEU4K66.js.map +0 -1
- package/dist/library-RPFXNER4.js +0 -109
- package/dist/library-RPFXNER4.js.map +0 -1
- package/dist/lighthouse-SJ4QNLUS.js +0 -75
- package/dist/line-item-writes-NURRHJ7P.js +0 -208
- package/dist/line-items-PC6QWV5J.js +0 -103
- package/dist/link-ZSXKCLQD.js +0 -64
- package/dist/linkedin-EZJJBKY3.js +0 -1008
- package/dist/linkedin-EZJJBKY3.js.map +0 -1
- package/dist/list-ECF3RA26.js +0 -303
- package/dist/list-GQ65MC2N.js +0 -65
- package/dist/list-K56J7FZW.js +0 -51
- package/dist/list-M4Z3WYPM.js +0 -76
- package/dist/list-N7ZLO2LE.js +0 -63
- package/dist/list-N7ZLO2LE.js.map +0 -1
- package/dist/list-Q5ZZRPHO.js +0 -151
- package/dist/list-SXYVDDMU.js +0 -57
- package/dist/list-XFIOXFB2.js +0 -50
- package/dist/locations-LZUHWKZY.js +0 -40
- package/dist/locations-NG4YXIBT.js +0 -67
- package/dist/log-EEBJQ6X2.js +0 -92
- package/dist/logo-4JOWGJ5A.js +0 -18
- package/dist/lookup-7NBZ64TE.js +0 -22
- package/dist/make-3J5EK52U.js +0 -633
- package/dist/make-3J5EK52U.js.map +0 -1
- package/dist/map-JVVNH2RI.js +0 -404
- package/dist/map-JVVNH2RI.js.map +0 -1
- package/dist/mcp-DAKGMA2Z.js +0 -463
- package/dist/media-2SWDJDA6.js +0 -15
- package/dist/media-R64YP7T2.js +0 -89
- package/dist/media-sources-L2X3KRDU.js +0 -32
- package/dist/members-22BOEGQS.js +0 -44
- package/dist/meta-RBHF2RG3.js +0 -69
- package/dist/metrics-IXRQZVSM.js +0 -152
- package/dist/models-BDXZ56GI.js +0 -155
- package/dist/normalize-JAE3NVOX.js +0 -141
- package/dist/normalize-P5Q3F7FU.js +0 -806
- package/dist/options-YTIU3BDC.js +0 -121
- package/dist/options-YTIU3BDC.js.map +0 -1
- package/dist/output-ZL62UZHQ.js +0 -24
- package/dist/page-FZ7IZ5CV.js +0 -105
- package/dist/pages-SS7TZTHV.js +0 -66
- package/dist/performance-FOOV624A.js +0 -24
- package/dist/performance-VYEANYQ5.js +0 -4707
- package/dist/performance-VYEANYQ5.js.map +0 -1
- package/dist/pinterest-UETS7U7U.js +0 -96
- package/dist/pixels-LCTMLKGP.js +0 -108
- package/dist/pixels-MPZYWGFD.js +0 -60
- package/dist/plan-V74EVXTW.js +0 -207
- package/dist/preview-RU54Z4EM.js +0 -169
- package/dist/profile-NQOIBLJL.js +0 -150
- package/dist/profile-NQOIBLJL.js.map +0 -1
- package/dist/promoted-tweet-writes-FQRFU7PB.js +0 -180
- package/dist/promoted-tweets-L2L3V5SF.js +0 -119
- package/dist/properties-ZUDQH3LE.js +0 -101
- package/dist/publish-5XTAHTM4.js +0 -322
- package/dist/publish-5XTAHTM4.js.map +0 -1
- package/dist/query-26T7XATH.js +0 -236
- package/dist/query-SHUOHXTO.js +0 -247
- package/dist/query-XISUHMBR.js +0 -62
- package/dist/questionnaire-UG55JLVW.js +0 -93
- package/dist/read-UYSQAXRV.js +0 -141
- package/dist/reddit-BCB4FT6J.js +0 -26
- package/dist/refresh-WY5NPNLX.js +0 -94
- package/dist/release-JBSPPNQE.js +0 -60
- package/dist/relevant-pages-OU5H56KY.js +0 -99
- package/dist/remove-2KACTXKP.js +0 -48
- package/dist/remove-M5P7M5JU.js +0 -50
- package/dist/reopen-J3VW5766.js +0 -63
- package/dist/rerun-5MRYJG6U.js +0 -84
- package/dist/rerun-5MRYJG6U.js.map +0 -1
- package/dist/research-4CAA5CA2.js +0 -262
- package/dist/research-7LBTJ2B2.js +0 -62
- package/dist/reset-DBWWGCXY.js +0 -54
- package/dist/reset-DJSSXC4Y.js +0 -54
- package/dist/resolve-BNRUYS56.js +0 -121
- package/dist/retry-TMRIFGVT.js +0 -62
- package/dist/retry-WRBGLB7O.js +0 -60
- package/dist/retry-failed-NWLH6WHK.js +0 -45
- package/dist/run-TA3DP6QG.js +0 -59
- package/dist/run-VVTLDRRW.js +0 -65
- package/dist/run-VVTLDRRW.js.map +0 -1
- package/dist/scaffold-ad-7DSV6XDB.js +0 -1548
- package/dist/scaffold-ad-7DSV6XDB.js.map +0 -1
- package/dist/scaffold-static-ad-BEZ37QWN.js +0 -971
- package/dist/scaffold-static-ad-BEZ37QWN.js.map +0 -1
- package/dist/scaffold-video-SPCMTYK3.js +0 -872
- package/dist/scaffold-video-SPCMTYK3.js.map +0 -1
- package/dist/schedule-BQQGYGT7.js +0 -61
- package/dist/schedule-S547HPUT.js +0 -66
- package/dist/scheduled-agents-4Q6WS333.js +0 -49
- package/dist/scheduled-agents-4Q6WS333.js.map +0 -1
- package/dist/schema-DDEWM5ZX.js +0 -132
- package/dist/schema-SQIP75WG.js +0 -63
- package/dist/schema-SQIP75WG.js.map +0 -1
- package/dist/scrape-TI6S2W7I.js +0 -2241
- package/dist/screenshot-XFAYY4WW.js +0 -102
- package/dist/search-4HIOKYFR.js +0 -26
- package/dist/search-D2IV7KFJ.js +0 -92
- package/dist/search-IZPDHRJ4.js +0 -224
- package/dist/search-KFDL2IGG.js +0 -91
- package/dist/search-VJBKRD2U.js +0 -174
- package/dist/search-copy-QZXCAGK4.js +0 -168
- package/dist/seeds-VUNZMHZH.js +0 -101
- package/dist/select-U5TPAXGY.js +0 -94
- package/dist/select-U5TPAXGY.js.map +0 -1
- package/dist/sends-7HWLIOUO.js +0 -309
- package/dist/sequences-5RAGZE7L.js +0 -146
- package/dist/set-prompt-MHU4WI3Q.js +0 -185
- package/dist/set-prompt-MHU4WI3Q.js.map +0 -1
- package/dist/setup-links-SPIGXQTY.js +0 -141
- package/dist/shared-3CGGKICB.js +0 -31
- package/dist/site-FW6K6L6M.js +0 -177
- package/dist/sitemaps-3WDYQHYR.js +0 -87
- package/dist/sites-G4DQ2Z2X.js +0 -101
- package/dist/skills-PA26HXEP.js +0 -47
- package/dist/sources-4NAC6HV6.js +0 -421
- package/dist/sources-4NAC6HV6.js.map +0 -1
- package/dist/sources-PMBWG4KO.js +0 -30
- package/dist/stale-5IMY6MWC.js +0 -63
- package/dist/stale-5IMY6MWC.js.map +0 -1
- package/dist/stats-Q35I5DRW.js +0 -34
- package/dist/status-62SUXUWW.js +0 -62
- package/dist/sticker-MC2IAIQB.js +0 -94
- package/dist/stock-B7LKMKUK.js +0 -179
- package/dist/studio-BB2EVW5I.js +0 -49
- package/dist/sync-CLZDZL5F.js +0 -54
- package/dist/sync-XCHBEBZG.js +0 -279
- package/dist/sync-XCHBEBZG.js.map +0 -1
- package/dist/sync-YTHNOAAM.js +0 -54
- package/dist/sync-definition-DYSVT7BJ.js +0 -52
- package/dist/tag-manager-EAREWVYR.js +0 -43
- package/dist/tags-53AG3FYG.js +0 -20
- package/dist/tags-7TH7TVR6.js +0 -224
- package/dist/tags-EB4RE3ML.js +0 -20
- package/dist/tags-EUEWDTTN.js +0 -20
- package/dist/tags-ICAWBCOR.js +0 -26
- package/dist/targeting-constants-IFE72XKL.js +0 -118
- package/dist/targeting-criteria-WZDGJKOI.js +0 -113
- package/dist/targets-OKJ6A4YL.js +0 -102
- package/dist/targets-OKJ6A4YL.js.map +0 -1
- package/dist/templates-IA5TDCCZ.js +0 -178
- package/dist/templates-IA5TDCCZ.js.map +0 -1
- package/dist/testimonials-THHR5JH5.js +0 -32
- package/dist/themes-ZFRM6AVO.js +0 -94
- package/dist/top-companies-63Q475IA.js +0 -108
- package/dist/translate-XKUWIIOS.js +0 -598
- package/dist/translate-XKUWIIOS.js.map +0 -1
- package/dist/triggers-XLKO2QXQ.js +0 -141
- package/dist/triggers-XLKO2QXQ.js.map +0 -1
- package/dist/tweets-7EZRFG3Y.js +0 -123
- package/dist/unfollow-WBBTVEHE.js +0 -46
- package/dist/unlink-P7KU54YU.js +0 -67
- package/dist/unstage-EG7AUE5X.js +0 -84
- package/dist/unstage-EG7AUE5X.js.map +0 -1
- package/dist/unstage-GHXGDOT2.js +0 -95
- package/dist/update-7EWDO32L.js +0 -98
- package/dist/update-BVYGB4YL.js +0 -142
- package/dist/update-BVYGB4YL.js.map +0 -1
- package/dist/update-KVMQOVQK.js +0 -63
- package/dist/update-N74F5KXB.js +0 -155
- package/dist/update-N74F5KXB.js.map +0 -1
- package/dist/upload-6PYPHPCZ.js +0 -126
- package/dist/upload-NA62W5RS.js +0 -150
- package/dist/upscale-RXJUBHXN.js +0 -109
- package/dist/url-options-EUDXLDBD.js +0 -130
- package/dist/url-params-DBJSM2LP.js +0 -98
- package/dist/use-MHPNS4V4.js +0 -95
- package/dist/validate-TTAGVGM2.js +0 -88
- package/dist/validate-TTAGVGM2.js.map +0 -1
- package/dist/variant-ZFCWILPG.js +0 -338
- package/dist/videos-DUG7JYUA.js +0 -39
- package/dist/view-PYCGDGT2.js +0 -121
- package/dist/viewer-check-HIMNCZGY.js +0 -68
- package/dist/web-SDG42OBC.js +0 -140
- package/dist/winners-AI4PVSOI.js +0 -113
- package/dist/winning-ads-KGAYAIPG.js +0 -84
- package/dist/write-commands-34L5LJIB.js +0 -713
- package/dist/write-commands-5TJ3LQ5F.js +0 -737
- package/dist/write-commands-OYMWOFEY.js +0 -1015
- package/dist/write-commands-R3UCCBUI.js +0 -206
- package/dist/x-VNRVGVLI.js +0 -47
- /package/dist/{account-HZC6X2PH.js.map → account-7LUQWY6Q.js.map} +0 -0
- /package/dist/{account-TQUV64XP.js.map → account-ELL7ZZLM.js.map} +0 -0
- /package/dist/{account-67PZBEP6.js.map → account-KZVOT6HL.js.map} +0 -0
- /package/dist/{account-reads-IRBTERTY.js.map → account-reads-LA45L6G3.js.map} +0 -0
- /package/dist/{account-writes-ALDSHAEV.js.map → account-writes-CEPERFD6.js.map} +0 -0
- /package/dist/{accounts-WTB737BM.js.map → accounts-7G556DH4.js.map} +0 -0
- /package/dist/{accounts-4P54UY6F.js.map → accounts-E4TVYTUR.js.map} +0 -0
- /package/dist/{accounts-NJ6TF6WH.js.map → accounts-HC7GPQNG.js.map} +0 -0
- /package/dist/{accounts-GVTZN4VE.js.map → accounts-SMB3TNXX.js.map} +0 -0
- /package/dist/{accounts-6UNBLIUH.js.map → accounts-UA2ZWRN4.js.map} +0 -0
- /package/dist/{actions-D3BOWDEB.js.map → actions-V6YP5C3X.js.map} +0 -0
- /package/dist/{active-entities-J2O76SRP.js.map → active-entities-MCL7UEGV.js.map} +0 -0
- /package/dist/{activities-2J7FTZMN.js.map → activities-IQPJPP4B.js.map} +0 -0
- /package/dist/{ad-group-writes-PQKDCMQF.js.map → ad-group-writes-XGSCEQTW.js.map} +0 -0
- /package/dist/{ad-groups-NGYEJMV4.js.map → ad-groups-GKOLDGET.js.map} +0 -0
- /package/dist/{ad-writes-77FVHJTS.js.map → ad-writes-VVD36JKH.js.map} +0 -0
- /package/dist/{add-2XJYOGKW.js.map → add-3MD72QMT.js.map} +0 -0
- /package/dist/{add-2FHPLALV.js.map → add-5IGUQHVZ.js.map} +0 -0
- /package/dist/{add-JP76KCCY.js.map → add-BK5AQI5A.js.map} +0 -0
- /package/dist/{add-62JPGFD4.js.map → add-TSQNUP5N.js.map} +0 -0
- /package/dist/{add-accounts-M5Y4DQFM.js.map → add-accounts-CJSV5NPL.js.map} +0 -0
- /package/dist/{ads-LYNA2I7B.js.map → ads-EKZVHKPN.js.map} +0 -0
- /package/dist/{ads-W2IPUWHQ.js.map → ads-HXX2IAFF.js.map} +0 -0
- /package/dist/{ads-DB5NDHX5.js.map → ads-RAUM6ISF.js.map} +0 -0
- /package/dist/{adsets-PY5ZKGBO.js.map → adsets-LPN6WFGF.js.map} +0 -0
- /package/dist/{advertisers-BVAZ4XUX.js.map → advertisers-DS2NRWKI.js.map} +0 -0
- /package/dist/{advertisers-NZPJQF7W.js.map → advertisers-XJG7XDK7.js.map} +0 -0
- /package/dist/{analytics-NTPZKMYK.js.map → analytics-DO4UKW2H.js.map} +0 -0
- /package/dist/{animate-EIV2OHXT.js.map → animate-G4P3OEJE.js.map} +0 -0
- /package/dist/{assign-UNIA5YDC.js.map → assign-72YAL6TP.js.map} +0 -0
- /package/dist/{audiences-VYFX7OFS.js.map → audiences-3LRCLHTQ.js.map} +0 -0
- /package/dist/{audiences-45ZCY2VZ.js.map → audiences-BU4JZJT7.js.map} +0 -0
- /package/dist/{audiences-UUIYQFS6.js.map → audiences-XEZHACKH.js.map} +0 -0
- /package/dist/{audit-NSVHNA5J.js.map → audit-22KQAHJR.js.map} +0 -0
- /package/dist/{audit-OWXTLQC4.js.map → audit-YEGQU474.js.map} +0 -0
- /package/dist/{autocomplete-EHWAQYVB.js.map → autocomplete-KLNQIK5T.js.map} +0 -0
- /package/dist/{avatars-7WZPW7BV.js.map → avatars-VO6FMJFB.js.map} +0 -0
- /package/dist/{brand-QAJ5VWFM.js.map → brand-XXNOVSGE.js.map} +0 -0
- /package/dist/{businesses-ZH67AXR6.js.map → businesses-PRRYPR7H.js.map} +0 -0
- /package/dist/{campaign-groups-KFJKLNNU.js.map → campaign-groups-JFOFU76X.js.map} +0 -0
- /package/dist/{campaign-writes-BDGQ6XB3.js.map → campaign-writes-NSEJCINS.js.map} +0 -0
- /package/dist/{campaign-writes-FNMAGCKB.js.map → campaign-writes-PKWLLKB5.js.map} +0 -0
- /package/dist/{campaigns-66OOGMDW.js.map → campaigns-4SOLY7OR.js.map} +0 -0
- /package/dist/{campaigns-KT3J2O7S.js.map → campaigns-5AZMOOID.js.map} +0 -0
- /package/dist/{campaigns-6HMHOXXY.js.map → campaigns-H4VK3GKK.js.map} +0 -0
- /package/dist/{campaigns-HJTGX5WW.js.map → campaigns-VWN2XPK2.js.map} +0 -0
- /package/dist/{canvas-MQ6ZE5CZ.js.map → canvas-TTV7QZZT.js.map} +0 -0
- /package/dist/{capabilities-RVUMPP7C.js.map → capabilities-VJ53ROIP.js.map} +0 -0
- /package/dist/{cards-I4BZIYUV.js.map → cards-WHMCSRZX.js.map} +0 -0
- /package/dist/{catalogs-B2NKQO24.js.map → catalogs-XH5NHH4C.js.map} +0 -0
- /package/dist/{changes-FX3TPYGT.js.map → changes-F6WUXFC3.js.map} +0 -0
- /package/dist/{chatgpt-3NS2R442.js.map → chatgpt-K6KNTME4.js.map} +0 -0
- /package/dist/{chats-72L7U4ML.js.map → chats-PWLQO7UY.js.map} +0 -0
- /package/dist/{chunk-CBCGVPHB.js.map → chunk-232YUPUI.js.map} +0 -0
- /package/dist/{chunk-65BQAJMH.js.map → chunk-23H4ZJRP.js.map} +0 -0
- /package/dist/{chunk-IZFGTGFR.js.map → chunk-3OCSWUHV.js.map} +0 -0
- /package/dist/{chunk-SLCSLVGS.js.map → chunk-5SRHACZW.js.map} +0 -0
- /package/dist/{chunk-VHMNSO2B.js.map → chunk-5WMTPYKT.js.map} +0 -0
- /package/dist/{chunk-QNEX7FEC.js.map → chunk-6JWEGFM5.js.map} +0 -0
- /package/dist/{chunk-P5T7OZKV.js.map → chunk-6OIKNJ7G.js.map} +0 -0
- /package/dist/{chunk-INJHF7AF.js.map → chunk-7RBJ2Z7Z.js.map} +0 -0
- /package/dist/{chunk-57UECM77.js.map → chunk-BFRIRZRZ.js.map} +0 -0
- /package/dist/{chunk-WILN7TD6.js.map → chunk-BFZS3WHS.js.map} +0 -0
- /package/dist/{chunk-NFSLRRIE.js.map → chunk-BITS62MF.js.map} +0 -0
- /package/dist/{chunk-CECS3DHZ.js.map → chunk-BLAHHMPF.js.map} +0 -0
- /package/dist/{chunk-GT4UFORX.js.map → chunk-CVBKW75S.js.map} +0 -0
- /package/dist/{chunk-J2QOKD2F.js.map → chunk-D4LKZJYJ.js.map} +0 -0
- /package/dist/{chunk-JC6GNMA7.js.map → chunk-D6KHVUDS.js.map} +0 -0
- /package/dist/{chunk-6GFJFTG6.js.map → chunk-DWX44QL6.js.map} +0 -0
- /package/dist/{chunk-D5MF337I.js.map → chunk-FNA277HP.js.map} +0 -0
- /package/dist/{chunk-VTCBPYGE.js.map → chunk-FQXGII24.js.map} +0 -0
- /package/dist/{chunk-7NTION5F.js.map → chunk-FU7HJWGM.js.map} +0 -0
- /package/dist/{chunk-YGL5LTEA.js.map → chunk-GD6UJDOB.js.map} +0 -0
- /package/dist/{chunk-35ENAFJX.js.map → chunk-GDLQ6SGW.js.map} +0 -0
- /package/dist/{chunk-GZ6YS7TG.js.map → chunk-GEKXIXMG.js.map} +0 -0
- /package/dist/{chunk-Q676JHJA.js.map → chunk-GLW7UJLB.js.map} +0 -0
- /package/dist/{chunk-IJDF7D4U.js.map → chunk-H5HDZ7IC.js.map} +0 -0
- /package/dist/{chunk-4TU2MWBJ.js.map → chunk-I44SNQ34.js.map} +0 -0
- /package/dist/{chunk-G3KO2HFZ.js.map → chunk-I5VZVQBZ.js.map} +0 -0
- /package/dist/{chunk-PELW56D7.js.map → chunk-IC6SDOED.js.map} +0 -0
- /package/dist/{chunk-ZNNC6B75.js.map → chunk-IN4G7X6W.js.map} +0 -0
- /package/dist/{chunk-VKH6LSC2.js.map → chunk-IPLE5K5E.js.map} +0 -0
- /package/dist/{chunk-W6ASM6UP.js.map → chunk-IYELKHBG.js.map} +0 -0
- /package/dist/{chunk-7GYM4I5I.js.map → chunk-JQNO6JCV.js.map} +0 -0
- /package/dist/{chunk-H7JOVRHO.js.map → chunk-JYBLCIRN.js.map} +0 -0
- /package/dist/{chunk-DL2W4N7J.js.map → chunk-K3TNTBZJ.js.map} +0 -0
- /package/dist/{chunk-RUHMLPH5.js.map → chunk-K4NMOWG7.js.map} +0 -0
- /package/dist/{chunk-KB5HBQEK.js.map → chunk-LCW3U4EA.js.map} +0 -0
- /package/dist/{chunk-O5XLQUDS.js.map → chunk-LMZAOTRX.js.map} +0 -0
- /package/dist/{chunk-6HPIWZHS.js.map → chunk-MI3JB5KB.js.map} +0 -0
- /package/dist/{chunk-ZBKBTTHD.js.map → chunk-MJQBXFW6.js.map} +0 -0
- /package/dist/{chunk-ZJR5E53N.js.map → chunk-MK3OJZIU.js.map} +0 -0
- /package/dist/{chunk-ZO2YLHRW.js.map → chunk-MPACDBH5.js.map} +0 -0
- /package/dist/{chunk-YONSWWCF.js.map → chunk-N5O67GK5.js.map} +0 -0
- /package/dist/{chunk-QDOVBGKZ.js.map → chunk-P3TNRS56.js.map} +0 -0
- /package/dist/{chunk-QWX3QJNM.js.map → chunk-PAJJXZ3Z.js.map} +0 -0
- /package/dist/{chunk-J5WZ7SAD.js.map → chunk-PHPXAMY3.js.map} +0 -0
- /package/dist/{chunk-UXTZ5MBE.js.map → chunk-QABSQADZ.js.map} +0 -0
- /package/dist/{chunk-NORAJYUI.js.map → chunk-QYAI24PN.js.map} +0 -0
- /package/dist/{chunk-2KIF3U2C.js.map → chunk-QZHGIJOW.js.map} +0 -0
- /package/dist/{chunk-SJLIV6PF.js.map → chunk-ROX7LQRR.js.map} +0 -0
- /package/dist/{chunk-QJPPPQPD.js.map → chunk-S7B2TOOU.js.map} +0 -0
- /package/dist/{chunk-GKXMIXEV.js.map → chunk-SFJW2KED.js.map} +0 -0
- /package/dist/{chunk-AR7PU7BB.js.map → chunk-SIKCVWM3.js.map} +0 -0
- /package/dist/{chunk-TY7TEU3T.js.map → chunk-SK2N45LO.js.map} +0 -0
- /package/dist/{chunk-ZPJE6D7W.js.map → chunk-SOKVXKRM.js.map} +0 -0
- /package/dist/{chunk-Z5KBRTB2.js.map → chunk-STNCMKL6.js.map} +0 -0
- /package/dist/{chunk-PGVF4SB7.js.map → chunk-TKPVVD52.js.map} +0 -0
- /package/dist/{chunk-AIDXJHZ4.js.map → chunk-TNB5EIFV.js.map} +0 -0
- /package/dist/{chunk-P3ZJIIDS.js.map → chunk-TUSR5R7I.js.map} +0 -0
- /package/dist/{chunk-DLUWHZCE.js.map → chunk-ULPO72IQ.js.map} +0 -0
- /package/dist/{chunk-QHIUJXU7.js.map → chunk-UWT7RCL3.js.map} +0 -0
- /package/dist/{chunk-DDTILZXI.js.map → chunk-V4UIM4QE.js.map} +0 -0
- /package/dist/{chunk-V43RLLZE.js.map → chunk-XGOEX2VJ.js.map} +0 -0
- /package/dist/{chunk-FDG2LLX7.js.map → chunk-XP4G2DJL.js.map} +0 -0
- /package/dist/{chunk-PA5MYVQY.js.map → chunk-XZ4YMCZK.js.map} +0 -0
- /package/dist/{chunk-VFSLIDXA.js.map → chunk-Y3VRMFGF.js.map} +0 -0
- /package/dist/{claim-DIITRUIN.js.map → claim-QHXKN7W6.js.map} +0 -0
- /package/dist/{client-LY2JCQS2.js.map → client-WL2FKW4T.js.map} +0 -0
- /package/dist/{code-7CBNYUPU.js.map → code-NXN7QYKU.js.map} +0 -0
- /package/dist/{companies-HHSYHL74.js.map → companies-PGVT62JL.js.map} +0 -0
- /package/dist/{complete-M3TURPU5.js.map → complete-TCTR3XVD.js.map} +0 -0
- /package/dist/{config-7COTFJWK.js.map → config-VOF57KBL.js.map} +0 -0
- /package/dist/{connect-TQL5EVVE.js.map → connect-4S7JLICS.js.map} +0 -0
- /package/dist/{content-OXMONMHJ.js.map → content-KA25YYO3.js.map} +0 -0
- /package/dist/{conversation-GE273GC4.js.map → conversation-DI4WMEL2.js.map} +0 -0
- /package/dist/{conversion-report-BH4HH2Q3.js.map → conversion-report-KL4LIVY5.js.map} +0 -0
- /package/dist/{conversion-upload-command-QWWYCTNV.js.map → conversion-upload-command-EIKJU5ZW.js.map} +0 -0
- /package/dist/{conversion-writes-HG2O6JI7.js.map → conversion-writes-MPBCTVSP.js.map} +0 -0
- /package/dist/{conversions-XPSN7SOW.js.map → conversions-ACYT6K7H.js.map} +0 -0
- /package/dist/{conversions-DP6ZF57D.js.map → conversions-JTYMFX66.js.map} +0 -0
- /package/dist/{countries-UXAUGSBR.js.map → countries-XGMZWUGP.js.map} +0 -0
- /package/dist/{create-NVXJP477.js.map → create-3QA7X2DD.js.map} +0 -0
- /package/dist/{create-XLZYNFKN.js.map → create-AFVT5JTH.js.map} +0 -0
- /package/dist/{create-ENQWVWGB.js.map → create-TYCOMVWR.js.map} +0 -0
- /package/dist/{creatives-O3444SBT.js.map → creatives-E6N2YLHE.js.map} +0 -0
- /package/dist/{creatives-ONKKGW5T.js.map → creatives-YJ3CXZQC.js.map} +0 -0
- /package/dist/{credentials-3UY7RVUL.js.map → credentials-34I6ZZWU.js.map} +0 -0
- /package/dist/{crm-XXU5XZIQ.js.map → crm-4F3LFOZD.js.map} +0 -0
- /package/dist/{crm-OX67TBWD.js.map → crm-MNBYNP5R.js.map} +0 -0
- /package/dist/{crop-3ZV5BFCA.js.map → crop-7UTYG7GS.js.map} +0 -0
- /package/dist/{currency-XP4EMU4M.js.map → currency-3QTI5RSB.js.map} +0 -0
- /package/dist/{custom-conversions-TV23XQHW.js.map → custom-conversions-YRYE65PU.js.map} +0 -0
- /package/dist/{customers-EJ7FVCTC.js.map → customers-VNYNT2EQ.js.map} +0 -0
- /package/dist/{decide-EGQ3CRHI.js.map → decide-TWKH5QQU.js.map} +0 -0
- /package/dist/{delete-R2SEUSLV.js.map → delete-2GIIUPA3.js.map} +0 -0
- /package/dist/{delete-ZGBBWFAW.js.map → delete-GLLYPNNB.js.map} +0 -0
- /package/dist/{delete-MUPTLWHI.js.map → delete-J7DXPGKD.js.map} +0 -0
- /package/dist/{delete-GXLPIGTC.js.map → delete-PRJGFA2U.js.map} +0 -0
- /package/dist/{delete-OW2N4WIA.js.map → delete-UZRHYEPK.js.map} +0 -0
- /package/dist/{demographics-K6DEWUE5.js.map → demographics-JMZA7MB6.js.map} +0 -0
- /package/dist/{describe-FCTM53MM.js.map → describe-5QCPRSIG.js.map} +0 -0
- /package/dist/{describe-4O3VCV6L.js.map → describe-L3UC6MIL.js.map} +0 -0
- /package/dist/{dimensions-AD4VS5AH.js.map → dimensions-POH4JXEM.js.map} +0 -0
- /package/dist/{discard-NZ7FQJEE.js.map → discard-OH3B5P4C.js.map} +0 -0
- /package/dist/{discover-OISU5EJF.js.map → discover-5GLET36U.js.map} +0 -0
- /package/dist/{discover-UQXQUPNO.js.map → discover-XAJKZCMM.js.map} +0 -0
- /package/dist/{domain-DXBHNZLO.js.map → domain-K3IILLYE.js.map} +0 -0
- /package/dist/{download-IE6XLFHM.js.map → download-N4J5WFHD.js.map} +0 -0
- /package/dist/{draft-OOHU6NMA.js.map → draft-2KHUZTIE.js.map} +0 -0
- /package/dist/{draft-HJBAG3SN.js.map → draft-7RYDPOFS.js.map} +0 -0
- /package/dist/{draft-ICEVLF4E.js.map → draft-BB3UUWJP.js.map} +0 -0
- /package/dist/{draft-S6VPKZYY.js.map → draft-EWDOIXSH.js.map} +0 -0
- /package/dist/{draft-ENA7S4Y7.js.map → draft-IL37WDST.js.map} +0 -0
- /package/dist/{draft-MGKJ5RYI.js.map → draft-KDMYGLWN.js.map} +0 -0
- /package/dist/{draft-DB6KMBCH.js.map → draft-LZL6VWHX.js.map} +0 -0
- /package/dist/{draft-OBFKQEPK.js.map → draft-VXGZDBC7.js.map} +0 -0
- /package/dist/{env-YLOVBOAE.js.map → env-5MUVYE2L.js.map} +0 -0
- /package/dist/{experiment-PHFP6IBM.js.map → experiment-G3FQVAJU.js.map} +0 -0
- /package/dist/{export-R2IMUCQO.js.map → export-OLDI32HM.js.map} +0 -0
- /package/dist/{extract-OQP3TSQG.js.map → extract-PPS6ONQN.js.map} +0 -0
- /package/dist/{facets-NUKR7I57.js.map → facets-PAWOEHOK.js.map} +0 -0
- /package/dist/{favorites-NS73FDG5.js.map → favorites-4ELADD3R.js.map} +0 -0
- /package/dist/{feed-SQPOB7SP.js.map → feed-XIY5TVDL.js.map} +0 -0
- /package/dist/{fetch-PTSAVQW5.js.map → fetch-M5GIBURQ.js.map} +0 -0
- /package/dist/{fetch-PQ3NOPIE.js.map → fetch-YWUVDMUH.js.map} +0 -0
- /package/dist/{fit-IITU6UWC.js.map → fit-DGCYW7LN.js.map} +0 -0
- /package/dist/{follow-N3DQZV7M.js.map → follow-ZTPZKIMZ.js.map} +0 -0
- /package/dist/{follow-competitors-BZPCBGIB.js.map → follow-competitors-6QDVQ4VJ.js.map} +0 -0
- /package/dist/{following-KESWTEBR.js.map → following-PBZLZFGQ.js.map} +0 -0
- /package/dist/{fonts-FG6XMK5A.js.map → fonts-IQ6XOUGU.js.map} +0 -0
- /package/dist/{forecast-43XBSHJR.js.map → forecast-YXOKAWDZ.js.map} +0 -0
- /package/dist/{funding-HYSCYS62.js.map → funding-ULBMKUMW.js.map} +0 -0
- /package/dist/{funnel-32CNV57L.js.map → funnel-CJRFDTCD.js.map} +0 -0
- /package/dist/{ga4-J2KTNCD4.js.map → ga4-2BL5YAYN.js.map} +0 -0
- /package/dist/{get-MBGO4VJD.js.map → get-6RZU4M6W.js.map} +0 -0
- /package/dist/{get-WHC4SRYK.js.map → get-7GCEJ6KG.js.map} +0 -0
- /package/dist/{get-FJB3X44Z.js.map → get-MZWUMHEF.js.map} +0 -0
- /package/dist/{get-W7MKBMQ3.js.map → get-NUL4YJG5.js.map} +0 -0
- /package/dist/{get-NOKSZPIV.js.map → get-OAZZHUZP.js.map} +0 -0
- /package/dist/{get-3P2EQLP3.js.map → get-OHU2N7B7.js.map} +0 -0
- /package/dist/{google-XRAMIES5.js.map → google-7STODZQR.js.map} +0 -0
- /package/dist/{google-ads-N55SE2CB.js.map → google-ads-BB7CF4NV.js.map} +0 -0
- /package/dist/{group-6RDJTWVN.js.map → group-D5WXNFCP.js.map} +0 -0
- /package/dist/{group-TZJCKHKS.js.map → group-Y5PLETFT.js.map} +0 -0
- /package/dist/{gsc-HD6UFRYM.js.map → gsc-UU3T2C6B.js.map} +0 -0
- /package/dist/{history-4RWCE7WW.js.map → history-OQAOTEO3.js.map} +0 -0
- /package/dist/{history-IROFQ6LA.js.map → history-Q47TKZJS.js.map} +0 -0
- /package/dist/{hubspot-75N4AI43.js.map → hubspot-A6O5GVTH.js.map} +0 -0
- /package/dist/{icon-BMCDFGMN.js.map → icon-GB7UH5RF.js.map} +0 -0
- /package/dist/{ideas-7UQMXLI5.js.map → ideas-LD6X753E.js.map} +0 -0
- /package/dist/{improve-P6F2HXYQ.js.map → improve-U5USRH4G.js.map} +0 -0
- /package/dist/{ingest-HGR7KSG4.js.map → ingest-PUMTHASV.js.map} +0 -0
- /package/dist/{ingest-XU4WXE4U.js.map → ingest-WWNSA6VZ.js.map} +0 -0
- /package/dist/{inspect-TL2VZBN7.js.map → inspect-5PRLZLF5.js.map} +0 -0
- /package/dist/{inspiration-7WTS3AVI.js.map → inspiration-XQYHBJY2.js.map} +0 -0
- /package/dist/{intent-OCZE4O7R.js.map → intent-4QVVI4FF.js.map} +0 -0
- /package/dist/{job-XMPQ27SJ.js.map → job-CGQHEANB.js.map} +0 -0
- /package/dist/{job-create-HTDQHPEF.js.map → job-create-SZYJT2NC.js.map} +0 -0
- /package/dist/{job-status-L7WUTZ2C.js.map → job-status-6LAKLCKH.js.map} +0 -0
- /package/dist/{keep-42SLV4CR.js.map → keep-3MJSHWU3.js.map} +0 -0
- /package/dist/{keyword-gap-323NE4AK.js.map → keyword-gap-YMMDRYVK.js.map} +0 -0
- /package/dist/{keyword-metrics-V6DGO7U5.js.map → keyword-metrics-FB7FCYK6.js.map} +0 -0
- /package/dist/{keywords-for-site-ANSLXBHB.js.map → keywords-for-site-YZYALONY.js.map} +0 -0
- /package/dist/{landing-K25GUBLZ.js.map → landing-XOCPIOWX.js.map} +0 -0
- /package/dist/{landings-5IYXHA5Z.js.map → landings-ZLKUP66P.js.map} +0 -0
- /package/dist/{languages-SRFGW6Z3.js.map → languages-3IJVDS5Z.js.map} +0 -0
- /package/dist/{languages-US6JUATO.js.map → languages-R3Y2IOFU.js.map} +0 -0
- /package/dist/{logo-4JOWGJ5A.js.map → launches-RG2SWEXM.js.map} +0 -0
- /package/dist/{layerize-U672AXED.js.map → layerize-SJYK6HPD.js.map} +0 -0
- /package/dist/{leads-MXUQISOC.js.map → leads-2XOSAYP4.js.map} +0 -0
- /package/dist/{leads-UJVKPRXX.js.map → leads-SWINPYEP.js.map} +0 -0
- /package/dist/{lighthouse-SJ4QNLUS.js.map → lighthouse-FALRSVQH.js.map} +0 -0
- /package/dist/{line-item-writes-NURRHJ7P.js.map → line-item-writes-FG3TY4W4.js.map} +0 -0
- /package/dist/{line-items-PC6QWV5J.js.map → line-items-ZNVBFA4H.js.map} +0 -0
- /package/dist/{link-ZSXKCLQD.js.map → link-IFEXIUDW.js.map} +0 -0
- /package/dist/{list-GQ65MC2N.js.map → list-2ZTOMTES.js.map} +0 -0
- /package/dist/{list-Q5ZZRPHO.js.map → list-FR2OVRVL.js.map} +0 -0
- /package/dist/{list-M4Z3WYPM.js.map → list-GK6LNWIW.js.map} +0 -0
- /package/dist/{list-ECF3RA26.js.map → list-K65FY6SV.js.map} +0 -0
- /package/dist/{list-SXYVDDMU.js.map → list-RR53EF3O.js.map} +0 -0
- /package/dist/{list-XFIOXFB2.js.map → list-TB677Q2F.js.map} +0 -0
- /package/dist/{list-K56J7FZW.js.map → list-VTVRZIYL.js.map} +0 -0
- /package/dist/{locations-LZUHWKZY.js.map → locations-6IH7WGRG.js.map} +0 -0
- /package/dist/{locations-NG4YXIBT.js.map → locations-VL2G22Y5.js.map} +0 -0
- /package/dist/{log-EEBJQ6X2.js.map → log-TAKCMC2C.js.map} +0 -0
- /package/dist/{lookup-7NBZ64TE.js.map → logo-YSNUUT33.js.map} +0 -0
- /package/dist/{output-ZL62UZHQ.js.map → lookup-RH5N3OWJ.js.map} +0 -0
- /package/dist/{mcp-DAKGMA2Z.js.map → mcp-NNQZ5B7N.js.map} +0 -0
- /package/dist/{media-2SWDJDA6.js.map → media-ES2UBGYW.js.map} +0 -0
- /package/dist/{media-R64YP7T2.js.map → media-MPXEXN4O.js.map} +0 -0
- /package/dist/{media-sources-L2X3KRDU.js.map → media-sources-OAFBA62X.js.map} +0 -0
- /package/dist/{members-22BOEGQS.js.map → members-SS7IBYVE.js.map} +0 -0
- /package/dist/{meta-RBHF2RG3.js.map → meta-AOIPEDV5.js.map} +0 -0
- /package/dist/{metrics-IXRQZVSM.js.map → metrics-YLAREC4T.js.map} +0 -0
- /package/dist/{models-BDXZ56GI.js.map → models-IH6KE6OH.js.map} +0 -0
- /package/dist/{normalize-P5Q3F7FU.js.map → normalize-NR5RS3WR.js.map} +0 -0
- /package/dist/{normalize-JAE3NVOX.js.map → normalize-WOZTAI6C.js.map} +0 -0
- /package/dist/{performance-FOOV624A.js.map → output-GWIP6ROX.js.map} +0 -0
- /package/dist/{page-FZ7IZ5CV.js.map → page-YWGBCN65.js.map} +0 -0
- /package/dist/{pages-SS7TZTHV.js.map → pages-FTI44OSH.js.map} +0 -0
- /package/dist/{query-XISUHMBR.js.map → performance-WRARV3YR.js.map} +0 -0
- /package/dist/{pinterest-UETS7U7U.js.map → pinterest-J442QLQS.js.map} +0 -0
- /package/dist/{pixels-MPZYWGFD.js.map → pixels-DWW2TDY2.js.map} +0 -0
- /package/dist/{pixels-LCTMLKGP.js.map → pixels-MBKR4XPX.js.map} +0 -0
- /package/dist/{plan-V74EVXTW.js.map → plan-YPE77T4R.js.map} +0 -0
- /package/dist/{preview-RU54Z4EM.js.map → preview-V4YBD45S.js.map} +0 -0
- /package/dist/{promoted-tweet-writes-FQRFU7PB.js.map → promoted-tweet-writes-CAD3RGU4.js.map} +0 -0
- /package/dist/{promoted-tweets-L2L3V5SF.js.map → promoted-tweets-NYJP3TXL.js.map} +0 -0
- /package/dist/{properties-ZUDQH3LE.js.map → properties-G3L2OAOL.js.map} +0 -0
- /package/dist/{reddit-BCB4FT6J.js.map → query-QRPBV2AR.js.map} +0 -0
- /package/dist/{query-26T7XATH.js.map → query-WCB5W4NW.js.map} +0 -0
- /package/dist/{query-SHUOHXTO.js.map → query-YBS6ZQ75.js.map} +0 -0
- /package/dist/{questionnaire-UG55JLVW.js.map → questionnaire-PAK4DALP.js.map} +0 -0
- /package/dist/{read-UYSQAXRV.js.map → read-LUTB3UOR.js.map} +0 -0
- /package/dist/{run-TA3DP6QG.js.map → reddit-VJTNXORD.js.map} +0 -0
- /package/dist/{refresh-WY5NPNLX.js.map → refresh-6I52WXG5.js.map} +0 -0
- /package/dist/{release-JBSPPNQE.js.map → release-LSSYP2ZJ.js.map} +0 -0
- /package/dist/{relevant-pages-OU5H56KY.js.map → relevant-pages-2XHS5WP4.js.map} +0 -0
- /package/dist/{remove-M5P7M5JU.js.map → remove-K62YJYGT.js.map} +0 -0
- /package/dist/{remove-2KACTXKP.js.map → remove-X6DNVS67.js.map} +0 -0
- /package/dist/{reopen-J3VW5766.js.map → reopen-RPVEBQVR.js.map} +0 -0
- /package/dist/{research-7LBTJ2B2.js.map → research-4ASN2KMB.js.map} +0 -0
- /package/dist/{research-4CAA5CA2.js.map → research-6J3EOBAL.js.map} +0 -0
- /package/dist/{reset-DJSSXC4Y.js.map → reset-ETORO5UO.js.map} +0 -0
- /package/dist/{reset-DBWWGCXY.js.map → reset-YVTYHSTY.js.map} +0 -0
- /package/dist/{resolve-BNRUYS56.js.map → resolve-BI7GB5U2.js.map} +0 -0
- /package/dist/{retry-TMRIFGVT.js.map → retry-2ZZCKSRW.js.map} +0 -0
- /package/dist/{retry-WRBGLB7O.js.map → retry-QZ7YHXF3.js.map} +0 -0
- /package/dist/{retry-failed-NWLH6WHK.js.map → retry-failed-EJBP4236.js.map} +0 -0
- /package/dist/{search-4HIOKYFR.js.map → run-FFASB4YB.js.map} +0 -0
- /package/dist/{schedule-BQQGYGT7.js.map → schedule-4BK2ML6F.js.map} +0 -0
- /package/dist/{schedule-S547HPUT.js.map → schedule-IDZC6M32.js.map} +0 -0
- /package/dist/{schema-DDEWM5ZX.js.map → schema-QPPWADIL.js.map} +0 -0
- /package/dist/{scrape-TI6S2W7I.js.map → scrape-J2Y7YZ4Z.js.map} +0 -0
- /package/dist/{screenshot-XFAYY4WW.js.map → screenshot-K7ZGTVTE.js.map} +0 -0
- /package/dist/{search-D2IV7KFJ.js.map → search-CI7LEOOK.js.map} +0 -0
- /package/dist/{search-VJBKRD2U.js.map → search-GCSQ6CSD.js.map} +0 -0
- /package/dist/{search-IZPDHRJ4.js.map → search-I6DRUXBX.js.map} +0 -0
- /package/dist/{shared-3CGGKICB.js.map → search-TTL7VQET.js.map} +0 -0
- /package/dist/{search-KFDL2IGG.js.map → search-VT2KUAH6.js.map} +0 -0
- /package/dist/{search-copy-QZXCAGK4.js.map → search-copy-N2AIJNUH.js.map} +0 -0
- /package/dist/{seeds-VUNZMHZH.js.map → seeds-EYYQCMGF.js.map} +0 -0
- /package/dist/{sends-7HWLIOUO.js.map → sends-RHVFV2XM.js.map} +0 -0
- /package/dist/{sequences-5RAGZE7L.js.map → sequences-5DUWNSWQ.js.map} +0 -0
- /package/dist/{setup-links-SPIGXQTY.js.map → setup-links-C3EUV2RX.js.map} +0 -0
- /package/dist/{sync-definition-DYSVT7BJ.js.map → shared-NDRFKAH7.js.map} +0 -0
- /package/dist/{site-FW6K6L6M.js.map → site-W5W7FCUD.js.map} +0 -0
- /package/dist/{sitemaps-3WDYQHYR.js.map → sitemaps-QKKXMXMV.js.map} +0 -0
- /package/dist/{sites-G4DQ2Z2X.js.map → sites-GRC6CCCK.js.map} +0 -0
- /package/dist/{skills-PA26HXEP.js.map → skills-UML6GSW6.js.map} +0 -0
- /package/dist/{sources-PMBWG4KO.js.map → sources-SGGLJIOA.js.map} +0 -0
- /package/dist/{stats-Q35I5DRW.js.map → stats-RCLQE4HJ.js.map} +0 -0
- /package/dist/{status-62SUXUWW.js.map → status-KUSLGZD7.js.map} +0 -0
- /package/dist/{sticker-MC2IAIQB.js.map → sticker-SINY47WT.js.map} +0 -0
- /package/dist/{stock-B7LKMKUK.js.map → stock-ECRBD7RP.js.map} +0 -0
- /package/dist/{studio-BB2EVW5I.js.map → studio-LMDDQWRY.js.map} +0 -0
- /package/dist/{sync-CLZDZL5F.js.map → sync-2MFUI3ME.js.map} +0 -0
- /package/dist/{sync-YTHNOAAM.js.map → sync-TCY4NX7J.js.map} +0 -0
- /package/dist/{viewer-check-HIMNCZGY.js.map → sync-definition-DGSAZGQZ.js.map} +0 -0
- /package/dist/{tag-manager-EAREWVYR.js.map → tag-manager-G3LBQZUL.js.map} +0 -0
- /package/dist/{tags-53AG3FYG.js.map → tags-IHLO2NDM.js.map} +0 -0
- /package/dist/{tags-7TH7TVR6.js.map → tags-QQLYW2QQ.js.map} +0 -0
- /package/dist/{tags-EUEWDTTN.js.map → tags-QXRKKRIR.js.map} +0 -0
- /package/dist/{tags-EB4RE3ML.js.map → tags-U5YWCPFW.js.map} +0 -0
- /package/dist/{tags-ICAWBCOR.js.map → tags-ZYVOKGHU.js.map} +0 -0
- /package/dist/{targeting-constants-IFE72XKL.js.map → targeting-constants-KEKYU5JQ.js.map} +0 -0
- /package/dist/{targeting-criteria-WZDGJKOI.js.map → targeting-criteria-AEBSY6OY.js.map} +0 -0
- /package/dist/{testimonials-THHR5JH5.js.map → testimonials-O52ULRAU.js.map} +0 -0
- /package/dist/{themes-ZFRM6AVO.js.map → themes-26XFWSWC.js.map} +0 -0
- /package/dist/{top-companies-63Q475IA.js.map → top-companies-OMGAFFWN.js.map} +0 -0
- /package/dist/{tweets-7EZRFG3Y.js.map → tweets-C3QUKS3I.js.map} +0 -0
- /package/dist/{unfollow-WBBTVEHE.js.map → unfollow-ZI5QU7RD.js.map} +0 -0
- /package/dist/{unlink-P7KU54YU.js.map → unlink-3BAXM2OH.js.map} +0 -0
- /package/dist/{unstage-GHXGDOT2.js.map → unstage-7F7JI6HY.js.map} +0 -0
- /package/dist/{update-7EWDO32L.js.map → update-2RCIXWP3.js.map} +0 -0
- /package/dist/{update-KVMQOVQK.js.map → update-5A7Q7S6I.js.map} +0 -0
- /package/dist/{upload-NA62W5RS.js.map → upload-KO46L76G.js.map} +0 -0
- /package/dist/{upload-6PYPHPCZ.js.map → upload-Y3TACPEN.js.map} +0 -0
- /package/dist/{upscale-RXJUBHXN.js.map → upscale-SJ7SCSRS.js.map} +0 -0
- /package/dist/{url-options-EUDXLDBD.js.map → url-options-6CNDIUDM.js.map} +0 -0
- /package/dist/{url-params-DBJSM2LP.js.map → url-params-ZUYOLAJG.js.map} +0 -0
- /package/dist/{use-MHPNS4V4.js.map → use-6ULEM3WE.js.map} +0 -0
- /package/dist/{variant-ZFCWILPG.js.map → variant-5TRRSYBB.js.map} +0 -0
- /package/dist/{videos-DUG7JYUA.js.map → videos-EFMNE6U2.js.map} +0 -0
- /package/dist/{view-PYCGDGT2.js.map → view-ABSWZMXW.js.map} +0 -0
- /package/dist/{web-SDG42OBC.js.map → web-4JGYRY36.js.map} +0 -0
- /package/dist/{winners-AI4PVSOI.js.map → winners-KRISBKOR.js.map} +0 -0
- /package/dist/{winning-ads-KGAYAIPG.js.map → winning-ads-6SXA4HGB.js.map} +0 -0
- /package/dist/{write-commands-5TJ3LQ5F.js.map → write-commands-HCQI4Y27.js.map} +0 -0
- /package/dist/{write-commands-OYMWOFEY.js.map → write-commands-LQXKNBA5.js.map} +0 -0
- /package/dist/{write-commands-R3UCCBUI.js.map → write-commands-QCI6XBM7.js.map} +0 -0
- /package/dist/{write-commands-34L5LJIB.js.map → write-commands-RHCCPMAE.js.map} +0 -0
- /package/dist/{x-VNRVGVLI.js.map → x-LUEUC3XO.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/commands/flows/connect.ts"],"sourcesContent":["/**\n * `connect`: fill a Form's step or destination yourself once you know which\n * resource is meant, instead of parking the turn on the chat's picker card.\n *\n * Three sources, one write:\n * - `--hubspot-form <id>` — a HubSpot form as a `hubspotForm` destination.\n * - `--resource <id>` / `--new-sheet <title>` / nothing — Calendly, SavvyCal\n * and GoHighLevel steps; Google Sheets, Pipedrive, GoHighLevel and\n * ActiveCampaign destinations. The backend reads the resource through the company's\n * connected account and answers with exactly what the card would write,\n * sealed under the flow key where it is a destination — so this command\n * writes ciphertext it cannot read.\n * - `--same-as <slug>:<id>` — the destination or step another Form already\n * has, copied as-is. No platform is asked anything.\n *\n * `request_flow_input` stays the path when nothing is connected, when a\n * spreadsheet has never been chosen, or when the agent cannot tell which\n * resource is meant.\n */\n\nimport {\n FLOW_AGENT_DESTINATION_KINDS,\n FLOW_PROVIDER_TYPE,\n type FlowAgentDestinationKind,\n type FlowsResolveResponse,\n type FlowsSealRequest,\n type FlowsSealResponse,\n type HubspotFormsDestinationResponse,\n} from \"@baker/api\";\nimport { defineCommand } from \"citty\";\nimport { ApiError, apiPost } from \"../../client.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { failApi } from \"../actions/shared.ts\";\nimport { hubspotRefusal } from \"../hubspot/refusal.ts\";\nimport { collectSideEffects, readFlowTree, readSettings, walkNodes, writeFlowTree } from \"./shared.ts\";\n\ntype AnyRecord = Record<string, unknown>;\n\ntype Sealed = { oauthProviderId: string; encryptedConfig: string };\n\ntype Attached = { ok: true; nodeId: string; sideEffectId: string } | { ok: false; message: string; fix: string };\n\ntype Target = { kind: string; on: \"node\" | \"sideEffect\"; ids: string[] };\n\ntype Stepped = { ok: true; nodeId: string; type: string } | { ok: false; message: string; fix: string };\n\nconst STEP_KINDS = new Set([\"calendly\", \"savvycal\", \"highlevel\", \"highlevelForm\", \"hubspot\", \"hubspotMeeting\"]);\nconst OAUTH_SIDE_EFFECTS = new Set([\n \"hubspotForm\",\n \"googleSpreadsheet\",\n \"pipedrive\",\n \"goHighlevelContact\",\n \"activeCampaignContact\",\n]);\n\n/**\n * Put the sealed destination on the side effect `named` picks — or, with no\n * name, on the form's only one of `type`. Mutates `tree`; the caller writes it.\n */\nexport function attachDestination(\n tree: AnyRecord,\n named: string | undefined,\n sealed: Sealed,\n type = \"hubspotForm\",\n): Attached {\n const ofType = collectSideEffects(tree).filter((entry) => entry.sideEffect.type === type);\n const inventory = ofType.map((entry) => String(entry.sideEffect.id)).join(\", \") || \"none\";\n const chosen = named\n ? collectSideEffects(tree).find((entry) => entry.sideEffect.id === named)\n : ofType.length === 1\n ? ofType[0]\n : undefined;\n if (!chosen) {\n return {\n ok: false,\n message: named\n ? `No side effect with id \"${named}\" in this form.`\n : `This form has ${ofType.length} ${type} side effects — name one with --side-effect <id>.`,\n fix:\n ofType.length === 0\n ? `Add one first: baker flows add-side-effect <slug> --node <stepId> --type ${type}`\n : `${type} side effects in this form: ${inventory}`,\n };\n }\n if (chosen.sideEffect.type !== type) {\n return {\n ok: false,\n message: `Side effect \"${named}\" is a ${String(chosen.sideEffect.type)}, not a ${type}.`,\n fix: `${type} side effects in this form: ${inventory}`,\n };\n }\n chosen.sideEffect.oauthProviderId = sealed.oauthProviderId;\n chosen.sideEffect.encryptedConfig = sealed.encryptedConfig;\n return { ok: true, nodeId: String(chosen.node.id), sideEffectId: String(chosen.sideEffect.id) };\n}\n\nfunction isSet(value: unknown): boolean {\n return typeof value === \"string\" && value.length > 0;\n}\n\n/**\n * Every side effect of `type` that still lacks its account or its config — what\n * `--all` wires. One already wired is left alone, so re-running after a partial\n * setup never repoints a destination someone chose.\n */\nexport function unwiredSideEffects(tree: AnyRecord, type: string): string[] {\n return collectSideEffects(tree)\n .filter(({ sideEffect }) => sideEffect.type === type)\n .filter(\n ({ sideEffect }) =>\n (OAUTH_SIDE_EFFECTS.has(type) && !isSet(sideEffect.oauthProviderId)) || !isSet(sideEffect.encryptedConfig),\n )\n .map(({ sideEffect }) => String(sideEffect.id));\n}\n\nexport function unwiredHubspotForms(tree: AnyRecord): string[] {\n return unwiredSideEffects(tree, \"hubspotForm\");\n}\n\n/** Destinations with nothing confidential in them: the agent states them, no card. */\nconst STATED_KINDS = new Set([\"email\", \"httpWebhook\"]);\n\n/** The stated kind an `--email` / `--subject` / `--url` call is about. */\nfunction statedKind(args: AnyRecord): string | undefined {\n if (typeof args.email === \"string\" || typeof args.subject === \"string\") return \"email\";\n if (typeof args.url === \"string\") return \"httpWebhook\";\n return undefined;\n}\n\ntype SealPlan = { ok: true; request: FlowsSealRequest } | { ok: false; message: string; fix: string };\n\n/** What `--email/--subject` or `--url` say, as the request the backend seals — or why not. */\nexport function sealRequestFor(kind: string, args: AnyRecord): SealPlan {\n const text = (key: string) => (typeof args[key] === \"string\" && args[key].trim() ? args[key].trim() : undefined);\n if (kind === \"email\") {\n const email = text(\"email\");\n const subject = text(\"subject\");\n if (!email || !subject) {\n return {\n ok: false,\n message: \"An email destination needs both who receives it and its subject.\",\n fix: 'Pass --email \"a@x.com, b@x.com\" --subject \"New lead — <Form name>\". Write the subject yourself from the Form; ask the user only for an address you were not given.',\n };\n }\n return { ok: true, request: { type: \"email\", email, subject } };\n }\n if (kind === \"httpWebhook\") {\n const apiUrl = text(\"url\");\n if (!apiUrl) {\n return { ok: false, message: \"A webhook destination needs its address.\", fix: \"Pass --url https://…\" };\n }\n return { ok: true, request: { type: \"httpWebhook\", apiUrl } };\n }\n return {\n ok: false,\n message: `A ${kind} destination holds a credential, so it is not one you can state.`,\n fix: \"Its token or URL is the user's to enter: request_flow_input.\",\n };\n}\n\ntype Restatable = { ok: true; ids: string[]; skipped: string[] } | { ok: false; message: string; fix: string };\n\n/** Why a stated value must not replace what `settings` holds, or undefined when it may. */\nconst UNREADABLE = \"holds settings this chat cannot read\";\n\nfunction keepsWhatTheAgentCannotState(kind: string, settings: AnyRecord | null | undefined): string | undefined {\n if (settings === null) return UNREADABLE;\n if (kind === \"httpWebhook\" && typeof settings?.auth === \"string\" && settings.auth !== \"noAuth\") {\n return \"sends a credential the user entered\";\n }\n if (kind === \"email\" && settings !== undefined && \"email\" in settings && typeof settings.email !== \"string\") {\n return \"replies to the visitor's own email answer\";\n }\n return undefined;\n}\n\n/**\n * Which of `target`'s destinations a stated `--email` / `--url` may overwrite.\n * The sealed value is replaced whole, so a webhook's credential or a reply to\n * the visitor's own address would be lost and nothing the agent can say puts it\n * back. One whose settings came back unreadable (null) is treated the same:\n * unknown is not empty. `--all` passes over those. An unreadable email may be\n * replaced explicitly with a complete recipient list and subject, without\n * reading the old value or claiming ownership of its ciphertext.\n */\nexport function restatableTargets(\n target: Target,\n settingsById: Record<string, AnyRecord | null>,\n all: boolean,\n replaceUnreadableEmail = false,\n): Restatable {\n const kept = target.ids.flatMap((id) => {\n if (\n target.kind === \"email\" &&\n settingsById[id] === null &&\n replaceUnreadableEmail &&\n !all &&\n target.ids.length === 1\n ) {\n return [];\n }\n const why = keepsWhatTheAgentCannotState(target.kind, settingsById[id]);\n return why ? [{ id, why }] : [];\n });\n const ids = target.ids.filter((id) => !kept.some((entry) => entry.id === id));\n if (kept.length > 0 && (!all || ids.length === 0)) {\n const [first] = kept;\n return {\n ok: false,\n message: `\"${first?.id}\" ${first?.why}; restating it would replace that.`,\n fix:\n first?.why === UNREADABLE\n ? target.kind === \"email\"\n ? `Baker cannot read the old recipients or tell whether this replies to a visitor. If the user wants to replace this destination, pass --side-effect ${first?.id} --replace-unreadable --email <complete recipient list> --subject <subject>. This replaces its entire previous setup; never use it to add a recipient to an unknown list. Otherwise leave it as it is and add a separate team email destination.`\n : \"Have the user restate the webhook address and any credential once with request_flow_input; after that this command can change a webhook with no credential.\"\n : target.kind === \"httpWebhook\"\n ? \"A new address for a webhook with a credential is the user's to enter with it: request_flow_input.\"\n : \"Leave it as it is. Add a separate email destination for the team: baker flows add-side-effect.\",\n };\n }\n return { ok: true, ids, skipped: kept.map((entry) => entry.id) };\n}\n\n/** Write sealed settings onto a destination that has no account (email, webhook). Mutates `tree`. */\nexport function attachSettings(tree: AnyRecord, id: string, encryptedConfig: string, type: string): Attached {\n const chosen = collectSideEffects(tree).find((entry) => entry.sideEffect.id === id);\n if (!chosen || chosen.sideEffect.type !== type) {\n const ofType = collectSideEffects(tree).filter((entry) => entry.sideEffect.type === type);\n return {\n ok: false,\n message: chosen\n ? `Side effect \"${id}\" is a ${String(chosen.sideEffect.type)}, not a ${type}.`\n : `No side effect with id \"${id}\" in this form.`,\n fix: `${type} side effects in this form: ${ofType.map((entry) => String(entry.sideEffect.id)).join(\", \") || \"none\"}`,\n };\n }\n chosen.sideEffect.encryptedConfig = encryptedConfig;\n return { ok: true, nodeId: String(chosen.node.id), sideEffectId: id };\n}\n\nfunction stepType(node: AnyRecord | undefined): string | undefined {\n const type = (node?.nodeData as AnyRecord | undefined)?.type;\n return typeof type === \"string\" ? type : undefined;\n}\n\nfunction findStep(tree: AnyRecord, nodeId: string): AnyRecord | undefined {\n return walkNodes(tree).find((node) => node.id === nodeId);\n}\n\n/** Write a picked resource into a step's `form.external`, keeping what the step autofills. */\nexport function attachStep(tree: AnyRecord, nodeId: string, external: AnyRecord): Stepped {\n const node = findStep(tree, nodeId);\n const type = stepType(node);\n if (!node || !type) {\n return {\n ok: false,\n message: `No step with id \"${nodeId}\" in this form.`,\n fix: \"Step ids: baker flows show <slug>\",\n };\n }\n if (!STEP_KINDS.has(type)) {\n return {\n ok: false,\n message: `Step \"${nodeId}\" is a ${type}, which embeds nothing from another platform.`,\n fix: \"Only calendly, savvycal, highlevel, highlevelForm, hubspot and hubspotMeeting steps take a resource.\",\n };\n }\n const nodeData = node.nodeData as AnyRecord;\n const form = (nodeData.form as AnyRecord | undefined) ?? {};\n nodeData.form = { autofilledFields: {}, ...form, external };\n return { ok: true, nodeId, type };\n}\n\n/** Steps of `type` with nothing picked yet — what `--all` fills for a step kind. */\nexport function unpickedSteps(tree: AnyRecord, type: string): string[] {\n return walkNodes(tree)\n .filter((node) => stepType(node) === type)\n .filter((node) => ((node.nodeData as AnyRecord).form as AnyRecord | undefined)?.external == null)\n .map((node) => String(node.id));\n}\n\n/**\n * Give `targetId` exactly the destination (or picked resource) `sourceId`\n * already has in another Form. Only between the same type: a sheet's sealed\n * config means nothing to Pipedrive.\n */\nexport function copyDestination(source: AnyRecord, sourceId: string, target: AnyRecord, targetId: string): Stepped {\n const from = collectSideEffects(source).find((entry) => entry.sideEffect.id === sourceId);\n if (from) {\n const type = String(from.sideEffect.type);\n if (!isSet(from.sideEffect.oauthProviderId) || !isSet(from.sideEffect.encryptedConfig)) {\n return {\n ok: false,\n message: `\"${sourceId}\" is not wired itself — nothing to copy.`,\n fix: \"Copy from one that is.\",\n };\n }\n const attached = attachDestination(\n target,\n targetId,\n {\n oauthProviderId: String(from.sideEffect.oauthProviderId),\n encryptedConfig: String(from.sideEffect.encryptedConfig),\n },\n type,\n );\n return attached.ok ? { ok: true, nodeId: attached.nodeId, type } : attached;\n }\n const step = findStep(source, sourceId);\n const external = ((step?.nodeData as AnyRecord | undefined)?.form as AnyRecord | undefined)?.external;\n if (!step || external == null || typeof external !== \"object\") {\n return {\n ok: false,\n message: `No wired side effect or picked step \"${sourceId}\" in the source form.`,\n fix: \"Ids: baker flows show <slug>\",\n };\n }\n const targetType = stepType(findStep(target, targetId));\n if (targetType !== stepType(step)) {\n return {\n ok: false,\n message: `\"${sourceId}\" is a ${String(stepType(step))} and \"${targetId}\" a ${String(targetType)} — copy only between the same type.`,\n fix: \"Pick a source of the same type.\",\n };\n }\n return attachStep(target, targetId, structuredClone(external as AnyRecord));\n}\n\nfunction refuse(\n message: string,\n fix: string | { action: string; explanation: string },\n code = \"VALIDATION_ERROR\",\n): never {\n writeJson({ ok: false, error: { code, message, fix } });\n process.exit(1);\n}\n\nfunction allTargets(tree: AnyRecord, kind: string | undefined): Target {\n if (!kind) refuse(\"--all needs --type <kind> to know what to wire.\", \"e.g. --all --type googleSpreadsheet\");\n const on = STEP_KINDS.has(kind) ? \"node\" : \"sideEffect\";\n // A stated destination is restated whole (\"every lead to Vicente and Fran\"), set or not.\n const ids = STATED_KINDS.has(kind)\n ? collectSideEffects(tree)\n .filter(({ sideEffect }) => sideEffect.type === kind)\n .map(({ sideEffect }) => String(sideEffect.id))\n : on === \"node\"\n ? unpickedSteps(tree, kind)\n : unwiredSideEffects(tree, kind);\n if (ids.length === 0 && STATED_KINDS.has(kind)) {\n refuse(\n `This Form has no ${kind} destination.`,\n `Add one: baker flows add-side-effect <slug> --node <stepId> --type ${kind}`,\n );\n }\n if (ids.length === 0) {\n refuse(\n `Every ${kind} in this Form is already wired.`,\n \"Repoint one by naming it with --node / --side-effect instead of --all.\",\n );\n }\n return { kind, on, ids };\n}\n\nfunction onlyOfType(tree: AnyRecord, type: string): string {\n const probe = attachDestination(tree, undefined, { oauthProviderId: \"\", encryptedConfig: \"\" }, type);\n if (!probe.ok) refuse(probe.message, probe.fix);\n return probe.sideEffectId;\n}\n\nfunction stepTarget(tree: AnyRecord, node: string): Target {\n const type = stepType(findStep(tree, node));\n if (!type) refuse(`No step with id \"${node}\" in this form.`, \"Step ids: baker flows show <slug>\");\n return { kind: type, on: \"node\", ids: [node] };\n}\n\nfunction sideEffectTarget(tree: AnyRecord, named: string): Target {\n const found = collectSideEffects(tree).find((entry) => entry.sideEffect.id === named);\n if (!found) refuse(`No side effect with id \"${named}\" in this form.`, \"Side-effect ids: baker flows show <slug>\");\n return { kind: String(found.sideEffect.type), on: \"sideEffect\", ids: [named] };\n}\n\n/** Which steps or side effects this call fills, resolved before any platform is asked anything. */\nexport function targetsFor(tree: AnyRecord, args: AnyRecord): Target {\n const node = typeof args.node === \"string\" ? args.node : undefined;\n const named = typeof args[\"side-effect\"] === \"string\" ? args[\"side-effect\"] : undefined;\n if ([node, named, args.all === true ? \"all\" : undefined].filter(Boolean).length > 1) {\n refuse(\"Pass one of --node, --side-effect or --all.\", \"One target per call; --all for every unwired one.\");\n }\n if (args.all === true) {\n const kind = typeof args.type === \"string\" ? args.type : args[\"hubspot-form\"] ? \"hubspotForm\" : statedKind(args);\n return allTargets(tree, kind);\n }\n if (node) return stepTarget(tree, node);\n if (named) return sideEffectTarget(tree, named);\n if (args[\"hubspot-form\"]) return { kind: \"hubspotForm\", on: \"sideEffect\", ids: [onlyOfType(tree, \"hubspotForm\")] };\n const stated = statedKind(args);\n if (stated) return { kind: stated, on: \"sideEffect\", ids: [onlyOfType(tree, stated)] };\n return refuse(\n \"Name what to fill: --node <stepId>, --side-effect <id>, or --all --type <kind>.\",\n \"Ids: baker flows show <slug>\",\n );\n}\n\nasync function sealHubspotForm(formId: string): Promise<HubspotFormsDestinationResponse[\"data\"]> {\n try {\n return (await apiPost<HubspotFormsDestinationResponse>(\"/api/hubspot/forms/destination\", { formId })).data;\n } catch (err) {\n const refusal = err instanceof ApiError ? hubspotRefusal(err.code, err.message) : null;\n if (err instanceof ApiError && refusal !== null) refuse(err.message, refusal.fix, refusal.code);\n failApi(err);\n }\n}\n\nfunction isAgentKind(kind: string): kind is FlowAgentDestinationKind {\n return (FLOW_AGENT_DESTINATION_KINDS as readonly string[]).includes(kind);\n}\n\n/**\n * The refusals only the user can clear, as the call that clears them: nothing\n * connected is the connect card; two accounts is a question only when the\n * agent cannot tell which one the user means.\n */\nexport function destinationRefusal(\n kind: FlowAgentDestinationKind,\n err: ApiError,\n): { code: string; fix: string } | null {\n if (err.code === \"NOT_FOUND\" && err.message.includes(\"is connected to this company\")) {\n return {\n code: \"NOT_CONNECTED\",\n fix: `AGENT INSTRUCTION: only the user can connect it. Call request_connection with { platform: \"${FLOW_PROVIDER_TYPE[kind]}\", reason } — reason in their words — then run this again. Keep going with the rest of the task meanwhile.`,\n };\n }\n if (err.code === \"CONFLICT\" && err.message.includes(\"--account\")) {\n return {\n code: \"SEVERAL_ACCOUNTS\",\n fix: \"Pass --account <id> when the user or the brief makes clear which one; otherwise ask them which (AskUserQuestion), naming the accounts above.\",\n };\n }\n return null;\n}\n\nfunction resolveBody(kind: FlowAgentDestinationKind, args: AnyRecord): AnyRecord {\n const columns =\n typeof args.columns === \"string\"\n ? args.columns\n .split(\",\")\n .map((column) => column.trim())\n .filter(Boolean)\n : undefined;\n return {\n kind,\n ...(typeof args.account === \"string\" ? { account: args.account } : {}),\n ...(typeof args.resource === \"string\" ? { resourceId: args.resource } : {}),\n ...(typeof args.tab === \"string\" ? { tab: args.tab } : {}),\n ...(typeof args[\"new-sheet\"] === \"string\" ? { newSheet: { title: args[\"new-sheet\"], columns } } : {}),\n };\n}\n\nasync function resolveDestination(\n kind: FlowAgentDestinationKind,\n args: AnyRecord,\n): Promise<FlowsResolveResponse[\"data\"]> {\n try {\n return (await apiPost<FlowsResolveResponse>(\"/api/flows/destinations/resolve\", resolveBody(kind, args))).data;\n } catch (err) {\n const refusal = err instanceof ApiError ? destinationRefusal(kind, err) : null;\n if (err instanceof ApiError && refusal !== null) refuse(err.message, refusal.fix, refusal.code);\n failApi(err);\n }\n}\n\ntype Wired = { wired: { nodeId: string; sideEffectId?: string }[]; destination: unknown; hints: string[] };\n\nfunction applyAll(target: Target, apply: (id: string) => Stepped | Attached): Wired[\"wired\"] {\n return target.ids.map((id) => {\n const done = apply(id);\n if (!done.ok) refuse(done.message, done.fix);\n return \"sideEffectId\" in done ? { nodeId: done.nodeId, sideEffectId: done.sideEffectId } : { nodeId: done.nodeId };\n });\n}\n\nfunction sameAs(tree: AnyRecord, target: Target, ref: string): Wired {\n const [slug, id] = ref.split(\":\");\n if (!slug || !id) refuse(`--same-as takes <slug>:<id>, got \"${ref}\".`, \"e.g. --same-as madrid:se-gsheet-1\");\n const source = readFlowTree(slug);\n const wired = applyAll(target, (targetId) => copyDestination(source, id, tree, targetId));\n return { wired, destination: { sameAs: ref }, hints: [] };\n}\n\nasync function fromHubspot(tree: AnyRecord, target: Target, formId: string, slug: string): Promise<Wired> {\n if (target.kind !== \"hubspotForm\") {\n refuse(\n `--hubspot-form wires a hubspotForm side effect, not a ${target.kind}.`,\n \"A HubSpot step takes `baker hubspot forms view <id> --as-node` (or `meetings view <slug> --as-node`).\",\n );\n }\n const sealed = await sealHubspotForm(formId);\n const wired = applyAll(target, (id) => attachDestination(tree, id, sealed));\n return {\n wired,\n destination: { formGuid: sealed.formGuid, formName: sealed.formName, portalId: sealed.portalId },\n hints: [\n `Now map each step's answers onto it: baker flows map ${slug} --side-effect <id> --hubspot-form ${sealed.formGuid} --map email=<value> … --write. Field names come from \\`baker hubspot forms view ${sealed.formGuid}\\`.`,\n ],\n };\n}\n\nfunction sheetHints(slug: string, data: Extract<FlowsResolveResponse[\"data\"], { target: \"sideEffect\" }>): string[] {\n const sheet = data.destination;\n if (!sheet)\n return [`Now map the fields: baker flows map ${slug} --side-effect <id> --map <fieldKey>=<value> … --write.`];\n const columns = sheet.columns.map((column) => `${column.letter}=${column.header}`).join(\", \");\n return [\n ...(sheet.created\n ? [\n `Created \"${sheet.name}\" in the connected Google account${sheet.url ? ` (${sheet.url})` : \"\"} — tell the user where their leads will land.`,\n ]\n : []),\n columns\n ? `Columns: ${columns}. Map by letter: baker flows map ${slug} --side-effect <id> --map A=<value> … --write.`\n : `The \"${sheet.tab}\" tab has no header row. Map by letter anyway, and say which column holds what.`,\n ];\n}\n\nasync function fromStated(tree: AnyRecord, target: Target, args: AnyRecord): Promise<Wired> {\n const plan = sealRequestFor(target.kind, args);\n if (!plan.ok) refuse(plan.message, plan.fix);\n const current = await readSettings(tree);\n if (current === null) {\n refuse(\n \"Could not read what this Form's destinations hold now, so nothing was overwritten.\",\n \"Try again in a moment; if it keeps failing, carry on with the rest and tell the user this one is not set.\",\n \"NETWORK_ERROR\",\n );\n }\n const restatable = restatableTargets(target, current, args.all === true, args[\"replace-unreadable\"] === true);\n if (!restatable.ok) refuse(restatable.message, restatable.fix);\n const kept = restatable.skipped.length\n ? [`Left as it was: ${restatable.skipped.join(\", \")} (it holds what only the user can set).`]\n : [];\n let sealed: FlowsSealResponse[\"data\"];\n try {\n sealed = (await apiPost<FlowsSealResponse>(\"/api/flows/destinations/seal\", plan.request)).data;\n } catch (err) {\n failApi(err);\n }\n const wired = applyAll({ ...target, ids: restatable.ids }, (id) =>\n attachSettings(tree, id, sealed.encryptedConfig, target.kind),\n );\n return {\n wired,\n destination: sealed.settings,\n hints: [\n ...kept,\n target.kind === \"email\"\n ? `Leads from these steps now go to ${String(sealed.settings.email)} with the subject \"${String(sealed.settings.subject)}\". Tell the user in those words.`\n : `Submissions now go to ${String(sealed.settings.apiUrl)}.`,\n ],\n };\n}\n\nasync function fromPlatform(tree: AnyRecord, target: Target, args: AnyRecord, slug: string): Promise<Wired> {\n const kind = target.kind;\n if (!isAgentKind(kind)) {\n const hubspotStep = kind === \"hubspot\" || kind === \"hubspotMeeting\";\n refuse(\n `A ${kind} ${target.on === \"node\" ? \"step\" : \"side effect\"} is not something this command can fill from a platform.`,\n hubspotStep\n ? \"Write the blob from `baker hubspot forms view <id> --as-node` (or `meetings view <slug> --as-node`) into the step's form.external.\"\n : OAUTH_SIDE_EFFECTS.has(kind)\n ? \"Pass --hubspot-form <formId>.\"\n : \"It takes typed credentials only the user has: request_flow_input.\",\n );\n }\n const data = await resolveDestination(kind, args);\n if (data.target === \"node\") {\n const wired = applyAll(target, (id) => attachStep(tree, id, data.external));\n return {\n wired,\n destination: { name: data.name, account: data.account },\n hints: [`Picked \"${data.name}\". Autofill its fields from earlier answers in the step's form.autofilledFields.`],\n };\n }\n const sealed = { oauthProviderId: data.oauthProviderId, encryptedConfig: data.encryptedConfig };\n const wired = applyAll(target, (id) => attachDestination(tree, id, sealed, kind));\n return {\n wired,\n destination: data.destination ? { ...data.destination, account: data.account } : { account: data.account },\n hints: sheetHints(slug, data),\n };\n}\n\nregisterSchema({\n command: \"flows.connect\",\n description:\n 'Fill a Form\\'s step or destination yourself — no card for the user. Steps: Calendly, SavvyCal, GoHighLevel calendar/form (`--node <id> --resource <id>`). Destinations: HubSpot form (`--hubspot-form <id>`), Google Sheets (`--resource <spreadsheetId>` or `--new-sheet <title> --columns …`), Pipedrive, GoHighLevel contact and ActiveCampaign contact (no resource: the connected account is the destination), email (`--email \"a@x.com, b@x.com\" --subject \"New lead — <Form>\"`, never a card), webhook without a credential (`--url`). `--same-as <slug>:<id>` copies what another Form already has. `--all --type <kind>` fills every unwired one of that kind at once. Ids come from `baker flows options <kind>`. Fall back to request_flow_input only when nothing is connected, the sheet was never chosen, or several resources plausibly match.',\n args: {\n slug: { type: \"positional\", description: \"Form slug\", required: true },\n node: {\n type: \"string\",\n description: \"Step id to fill (calendly, savvycal, highlevel, highlevelForm)\",\n required: false,\n },\n \"side-effect\": { type: \"string\", description: \"Side-effect id to wire\", required: false },\n all: { type: \"boolean\", description: \"Every unwired one of --type in this Form\", required: false, default: false },\n type: { type: \"string\", description: \"The kind --all wires (e.g. googleSpreadsheet, calendly)\", required: false },\n resource: { type: \"string\", description: \"Option id from `baker flows options <kind>`\", required: false },\n \"hubspot-form\": {\n type: \"string\",\n description: \"HubSpot form id (from `baker hubspot forms list`)\",\n required: false,\n },\n \"new-sheet\": {\n type: \"string\",\n description: \"Create a Google spreadsheet with this title and wire it\",\n required: false,\n },\n columns: {\n type: \"string\",\n description: \"With --new-sheet: header row, comma-separated, from column A\",\n required: false,\n },\n tab: { type: \"string\", description: \"Google Sheets tab to append to (default: the first)\", required: false },\n \"same-as\": {\n type: \"string\",\n description: \"<slug>:<id> — copy another Form's wired destination or picked step\",\n required: false,\n },\n account: {\n type: \"string\",\n description: \"Connection id, when more than one account of the platform is connected\",\n required: false,\n },\n email: {\n type: \"string\",\n description:\n 'Email destination: who receives each lead, comma-separated for several (--email \"ana@x.com, luis@x.com\"). Never a card: you state it.',\n required: false,\n },\n subject: {\n type: \"string\",\n description:\n 'Email destination: the subject line. Write it yourself from the Form (\"New lead — Private events\").',\n required: false,\n },\n \"replace-unreadable\": {\n type: \"boolean\",\n description:\n \"Email only, one destination: replace unreadable old settings with the complete --email and --subject. Use only when the user intends replacement, never to add to an unknown recipient list. Does not apply with --all.\",\n required: false,\n default: false,\n },\n url: {\n type: \"string\",\n description:\n \"Webhook destination with no credential: its https address. One that needs a token goes to request_flow_input.\",\n required: false,\n },\n },\n});\n\nexport const connectCommand = defineCommand({\n meta: {\n name: \"connect\",\n description:\n 'Fill a step or destination yourself. Start here: baker flows options calendly, then baker flows connect contact --node book --resource <id>. Email: --side-effect se-email-1 --email \"ana@x.com, luis@x.com\" --subject \"New lead — Contact\". Sheets: --side-effect se-gsheet-1 --new-sheet \"Leads\" --columns \"Name,Email\". Same as another Form: --same-as madrid:se-gsheet-1',\n },\n args: {\n slug: { type: \"positional\", description: \"Form slug\", required: true },\n node: { type: \"string\", description: \"Step id to fill\" },\n \"side-effect\": { type: \"string\", description: \"Side-effect id to wire\" },\n all: { type: \"boolean\", description: \"Every unwired one of --type\" },\n type: { type: \"string\", description: \"The kind --all wires\" },\n resource: { type: \"string\", description: \"Option id from baker flows options <kind>\" },\n \"hubspot-form\": { type: \"string\", description: \"HubSpot form id (from baker hubspot forms list)\" },\n \"new-sheet\": { type: \"string\", description: \"Create a spreadsheet with this title\" },\n columns: { type: \"string\", description: \"Header row for --new-sheet, comma-separated\" },\n tab: { type: \"string\", description: \"Sheet tab (default: the first)\" },\n \"same-as\": { type: \"string\", description: \"<slug>:<id> to copy\" },\n account: { type: \"string\", description: \"Connection id when several are connected\" },\n email: { type: \"string\", description: \"Email destination: recipients, comma-separated\" },\n subject: { type: \"string\", description: \"Email destination: subject line\" },\n \"replace-unreadable\": {\n type: \"boolean\",\n description: \"Replace one unreadable email's entire setup with --email and --subject\",\n },\n url: { type: \"string\", description: \"Webhook destination with no credential: its address\" },\n },\n run: async ({ args }) => {\n const slug = String(args.slug);\n const target = targetsFor(readFlowTree(slug), args);\n\n const tree = readFlowTree(slug);\n const result =\n typeof args[\"same-as\"] === \"string\"\n ? sameAs(tree, target, args[\"same-as\"])\n : typeof args[\"hubspot-form\"] === \"string\"\n ? await fromHubspot(tree, target, args[\"hubspot-form\"], slug)\n : STATED_KINDS.has(target.kind)\n ? await fromStated(tree, target, args)\n : await fromPlatform(tree, target, args, slug);\n writeFlowTree(slug, tree);\n\n writeJson({\n ok: true,\n data: {\n slug,\n kind: target.kind,\n [target.on === \"node\" ? \"steps\" : \"sideEffects\"]: result.wired,\n destination: result.destination,\n connected: true,\n },\n hints: [...result.hints, \"Staged like any other edit in this chat: it goes live when the chat is published.\"],\n });\n },\n});\n"],"mappings":"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","names":["wired"]}
|
|
@@ -0,0 +1,296 @@
|
|
|
1
|
+
import {
|
|
2
|
+
DIRECT_ROUTE,
|
|
3
|
+
captureProxyCredentials,
|
|
4
|
+
childEnvWith,
|
|
5
|
+
plannedRoutes,
|
|
6
|
+
shouldEscalate
|
|
7
|
+
} from "./chunk-EE72SSB2.js";
|
|
8
|
+
|
|
9
|
+
// src/lib/vimeoCookie.ts
|
|
10
|
+
import { writeFile } from "fs/promises";
|
|
11
|
+
import path from "path";
|
|
12
|
+
var COOKIE_NAME = "vimeo";
|
|
13
|
+
async function writeVimeoCookieFile(cookie, workDir) {
|
|
14
|
+
const value = cookie?.trim();
|
|
15
|
+
if (!value) return void 0;
|
|
16
|
+
const expires = Math.floor(Date.now() / 1e3) + 365 * 24 * 60 * 60;
|
|
17
|
+
const jar = [
|
|
18
|
+
"# Netscape HTTP Cookie File",
|
|
19
|
+
[".vimeo.com", "TRUE", "/", "TRUE", String(expires), COOKIE_NAME, value].join(" "),
|
|
20
|
+
""
|
|
21
|
+
].join("\n");
|
|
22
|
+
const filePath = path.join(workDir, "vimeo-cookies.txt");
|
|
23
|
+
await writeFile(filePath, jar, { mode: 384 });
|
|
24
|
+
return filePath;
|
|
25
|
+
}
|
|
26
|
+
var VIMEO_AUTH_SIGNATURES = ["oauth token", "only works when logged-in", "unable to fetch new oauth tokens"];
|
|
27
|
+
function isVimeoAuthFailure(detail) {
|
|
28
|
+
const haystack = detail.toLowerCase();
|
|
29
|
+
if (!haystack.includes("[vimeo]")) return false;
|
|
30
|
+
return VIMEO_AUTH_SIGNATURES.some((signature) => haystack.includes(signature));
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
// src/lib/ytDlpSignal.ts
|
|
34
|
+
var HTTP_ERROR = /HTTP Error (\d{3})/i;
|
|
35
|
+
var CHALLENGE_PHRASES = [
|
|
36
|
+
"sign in to confirm you're not a bot",
|
|
37
|
+
"sign in to confirm you\u2019re not a bot",
|
|
38
|
+
"confirm you are not a bot",
|
|
39
|
+
"unusual traffic",
|
|
40
|
+
"captcha"
|
|
41
|
+
];
|
|
42
|
+
var NOT_A_BLOCK_PHRASES = ["private video", "video unavailable", "members-only", "this video is available to"];
|
|
43
|
+
var PROXY_TUNNEL_FAILURE = /tunnel connection failed: 407|proxy authentication required|http error 407/i;
|
|
44
|
+
function ytDlpBlockSignal(stderr) {
|
|
45
|
+
const text = stderr.toLowerCase();
|
|
46
|
+
if (PROXY_TUNNEL_FAILURE.test(stderr)) return { status: 407 };
|
|
47
|
+
if (NOT_A_BLOCK_PHRASES.some((phrase) => text.includes(phrase))) return {};
|
|
48
|
+
const status = HTTP_ERROR.exec(stderr);
|
|
49
|
+
if (status) return { status: Number(status[1]) };
|
|
50
|
+
if (CHALLENGE_PHRASES.some((phrase) => text.includes(phrase))) return { challenge: true };
|
|
51
|
+
return {};
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
// src/lib/ytDlp.ts
|
|
55
|
+
import { spawn } from "child_process";
|
|
56
|
+
import { readdir, readFile } from "fs/promises";
|
|
57
|
+
import path2 from "path";
|
|
58
|
+
|
|
59
|
+
// src/lib/ytDlpFormat.ts
|
|
60
|
+
function videoFormatArgs(maxResolution) {
|
|
61
|
+
const sort = maxResolution ? ["-S", `res:${maxResolution}`] : [];
|
|
62
|
+
return ["--format", "bv*+ba/b", ...sort, "--merge-output-format", "mp4"];
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// src/lib/ytDlpPlayerClient.ts
|
|
66
|
+
var YOUTUBE_FALLBACK_CLIENT_ARGS = ["--extractor-args", "youtube:player_client=android"];
|
|
67
|
+
var MEDIA_FETCH_REFUSED = "unable to download video data";
|
|
68
|
+
var YOUTUBE_HOSTS = ["youtube.com", "youtu.be"];
|
|
69
|
+
function isYouTube(url) {
|
|
70
|
+
let host;
|
|
71
|
+
try {
|
|
72
|
+
host = new URL(url).hostname.toLowerCase();
|
|
73
|
+
} catch {
|
|
74
|
+
return false;
|
|
75
|
+
}
|
|
76
|
+
return YOUTUBE_HOSTS.some((known) => host === known || host.endsWith(`.${known}`));
|
|
77
|
+
}
|
|
78
|
+
function needsPlayerClientRetry(url, stderr) {
|
|
79
|
+
return isYouTube(url) && stderr.toLowerCase().includes(MEDIA_FETCH_REFUSED);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
// src/lib/ytDlp.ts
|
|
83
|
+
var YT_DLP_BIN = "yt-dlp";
|
|
84
|
+
var YT_DLP_TIMEOUT_MS = 10 * 60 * 1e3;
|
|
85
|
+
var YT_DLP_PROBE_TIMEOUT_MS = 60 * 1e3;
|
|
86
|
+
var TRUST_SYSTEM_CERTS = ["--compat-options", "no-certifi"];
|
|
87
|
+
var YtDlpError = class extends Error {
|
|
88
|
+
constructor(message, stderrTail) {
|
|
89
|
+
super(message);
|
|
90
|
+
this.stderrTail = stderrTail;
|
|
91
|
+
this.name = "YtDlpError";
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
function tail(text, maxLines) {
|
|
95
|
+
return text.split("\n").slice(-maxLines).join("\n");
|
|
96
|
+
}
|
|
97
|
+
async function runYtDlp(args) {
|
|
98
|
+
const outTemplate = path2.join(args.workDir, "out.%(ext)s");
|
|
99
|
+
const infoPath = path2.join(args.workDir, "out.info.json");
|
|
100
|
+
const argv = [
|
|
101
|
+
args.url,
|
|
102
|
+
"--no-playlist",
|
|
103
|
+
"--no-progress",
|
|
104
|
+
"--no-warnings",
|
|
105
|
+
"--quiet",
|
|
106
|
+
"--write-info-json",
|
|
107
|
+
...TRUST_SYSTEM_CERTS,
|
|
108
|
+
"-o",
|
|
109
|
+
outTemplate
|
|
110
|
+
];
|
|
111
|
+
if (args.audioOnly) {
|
|
112
|
+
argv.push("-x", "--audio-format", "m4a");
|
|
113
|
+
} else {
|
|
114
|
+
argv.push(...videoFormatArgs(args.maxHeight));
|
|
115
|
+
}
|
|
116
|
+
const cookieFile = await writeVimeoCookieFile(args.vimeoCookie, args.workDir);
|
|
117
|
+
if (cookieFile) argv.push("--cookies", cookieFile);
|
|
118
|
+
args.onLog?.(`yt-dlp: downloading ${args.audioOnly ? "audio" : "video"}`);
|
|
119
|
+
const timeoutMs = args.timeoutMs ?? YT_DLP_TIMEOUT_MS;
|
|
120
|
+
const { code, stderr, tier, reducedQuality } = await downloadWithClientFallback({
|
|
121
|
+
url: args.url,
|
|
122
|
+
argv,
|
|
123
|
+
onLog: args.onLog,
|
|
124
|
+
ladder: (attemptArgv) => runViaLadder({ url: args.url, argv: attemptArgv, timeoutMs, onLog: args.onLog, country: args.country }),
|
|
125
|
+
repeat: (attemptArgv, route) => spawnAndWait(YT_DLP_BIN, attemptArgv, timeoutMs, { extraEnv: proxyEnvFor(route) })
|
|
126
|
+
});
|
|
127
|
+
if (code !== 0) {
|
|
128
|
+
throw new YtDlpError(`yt-dlp exited ${code}`, tail(stderr, 40));
|
|
129
|
+
}
|
|
130
|
+
const files = await readdir(args.workDir);
|
|
131
|
+
const wanted = args.audioOnly ? ".m4a" : ".mp4";
|
|
132
|
+
const downloaded = files.find((f) => f.startsWith("out.") && f.endsWith(wanted));
|
|
133
|
+
if (!downloaded) {
|
|
134
|
+
throw new YtDlpError(`yt-dlp finished but produced no ${wanted} file (saw: ${files.join(", ")})`, "");
|
|
135
|
+
}
|
|
136
|
+
let info = {};
|
|
137
|
+
try {
|
|
138
|
+
info = JSON.parse(await readFile(infoPath, "utf-8"));
|
|
139
|
+
} catch {
|
|
140
|
+
}
|
|
141
|
+
return { filePath: path2.join(args.workDir, downloaded), info, tier, reducedQuality };
|
|
142
|
+
}
|
|
143
|
+
async function probeYtDlp(args) {
|
|
144
|
+
const argv = [
|
|
145
|
+
args.url,
|
|
146
|
+
"--no-playlist",
|
|
147
|
+
"--no-warnings",
|
|
148
|
+
"--dump-single-json",
|
|
149
|
+
"--skip-download",
|
|
150
|
+
// Without this the probe fails wherever the *download* would fail, which
|
|
151
|
+
// defeats the point of probing: yt-dlp still runs format selection for
|
|
152
|
+
// `--dump-single-json`, so a binary too old to read a site's format list
|
|
153
|
+
// exits "Requested format is not available" and we learn nothing — measured
|
|
154
|
+
// against a stale build, which returned full metadata the moment this flag
|
|
155
|
+
// was added. Duration and id come from the page, not from a format.
|
|
156
|
+
"--ignore-no-formats-error",
|
|
157
|
+
...TRUST_SYSTEM_CERTS
|
|
158
|
+
];
|
|
159
|
+
if (args.cookieDir) {
|
|
160
|
+
const cookieFile = await writeVimeoCookieFile(args.vimeoCookie, args.cookieDir);
|
|
161
|
+
if (cookieFile) argv.push("--cookies", cookieFile);
|
|
162
|
+
}
|
|
163
|
+
let stdout = "";
|
|
164
|
+
const { code, stderr, tier } = await walkYtDlpLadder({
|
|
165
|
+
url: args.url,
|
|
166
|
+
credentials: captureProxyCredentials(),
|
|
167
|
+
attempt: async (route) => {
|
|
168
|
+
const result = await spawnAndWait(YT_DLP_BIN, argv, args.timeoutMs ?? YT_DLP_PROBE_TIMEOUT_MS, {
|
|
169
|
+
extraEnv: proxyEnvFor(route),
|
|
170
|
+
captureStdout: true
|
|
171
|
+
});
|
|
172
|
+
stdout = result.stdout ?? "";
|
|
173
|
+
return result;
|
|
174
|
+
},
|
|
175
|
+
onLog: args.onLog,
|
|
176
|
+
country: args.country
|
|
177
|
+
});
|
|
178
|
+
if (code !== 0) {
|
|
179
|
+
throw new YtDlpError(`yt-dlp exited ${code}`, tail(stderr, 40));
|
|
180
|
+
}
|
|
181
|
+
let parsed;
|
|
182
|
+
try {
|
|
183
|
+
parsed = JSON.parse(stdout);
|
|
184
|
+
} catch {
|
|
185
|
+
throw new YtDlpError("yt-dlp returned metadata that could not be read", tail(stdout, 5));
|
|
186
|
+
}
|
|
187
|
+
if (parsed === null || typeof parsed !== "object") {
|
|
188
|
+
throw new YtDlpError("yt-dlp returned no metadata for that link", tail(stderr, 40));
|
|
189
|
+
}
|
|
190
|
+
return { info: parsed, tier };
|
|
191
|
+
}
|
|
192
|
+
function isAudioOnly(info) {
|
|
193
|
+
return info.vcodec === "none";
|
|
194
|
+
}
|
|
195
|
+
function durationSeconds(info) {
|
|
196
|
+
const raw = info.duration;
|
|
197
|
+
return typeof raw === "number" && Number.isFinite(raw) && raw > 0 ? raw : void 0;
|
|
198
|
+
}
|
|
199
|
+
function canonicalUrl(info) {
|
|
200
|
+
const raw = info.webpage_url;
|
|
201
|
+
return typeof raw === "string" && raw.length > 0 ? raw : void 0;
|
|
202
|
+
}
|
|
203
|
+
async function walkYtDlpLadder(args) {
|
|
204
|
+
const routes = plannedRoutes(args.url, args.credentials, args.country ? { country: args.country } : void 0);
|
|
205
|
+
let last = { code: -1, stderr: "", tier: "direct", route: DIRECT_ROUTE };
|
|
206
|
+
for (const route of routes) {
|
|
207
|
+
const tier = route.kind === "proxy" ? route.tier : "direct";
|
|
208
|
+
if (route.kind === "proxy") args.onLog?.(`yt-dlp: retrying via ${tier}`);
|
|
209
|
+
last = { ...await args.attempt(route), tier, route };
|
|
210
|
+
if (last.code === 0) return last;
|
|
211
|
+
if (!shouldEscalate(ytDlpBlockSignal(last.stderr))) return last;
|
|
212
|
+
}
|
|
213
|
+
return last;
|
|
214
|
+
}
|
|
215
|
+
async function downloadWithClientFallback(args) {
|
|
216
|
+
const first = await args.ladder(args.argv);
|
|
217
|
+
if (first.code === 0 || !needsPlayerClientRetry(args.url, first.stderr)) {
|
|
218
|
+
return { ...first, reducedQuality: false };
|
|
219
|
+
}
|
|
220
|
+
args.onLog?.("yt-dlp: retrying with the fallback player client");
|
|
221
|
+
const again = await args.repeat([...args.argv, ...YOUTUBE_FALLBACK_CLIENT_ARGS], first.route);
|
|
222
|
+
return { ...again, tier: first.tier, route: first.route, reducedQuality: again.code === 0 };
|
|
223
|
+
}
|
|
224
|
+
function runViaLadder(args) {
|
|
225
|
+
return walkYtDlpLadder({
|
|
226
|
+
url: args.url,
|
|
227
|
+
credentials: captureProxyCredentials(),
|
|
228
|
+
attempt: (route) => spawnAndWait(YT_DLP_BIN, args.argv, args.timeoutMs, { extraEnv: proxyEnvFor(route) }),
|
|
229
|
+
onLog: args.onLog,
|
|
230
|
+
country: args.country
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
function proxyEnvFor(route) {
|
|
234
|
+
if (route.kind !== "proxy") return void 0;
|
|
235
|
+
const uri = new URL(route.server);
|
|
236
|
+
uri.username = encodeURIComponent(route.username);
|
|
237
|
+
uri.password = encodeURIComponent(route.password);
|
|
238
|
+
return {
|
|
239
|
+
HTTP_PROXY: uri.toString(),
|
|
240
|
+
HTTPS_PROXY: uri.toString(),
|
|
241
|
+
http_proxy: uri.toString(),
|
|
242
|
+
https_proxy: uri.toString()
|
|
243
|
+
};
|
|
244
|
+
}
|
|
245
|
+
function spawnAndWait(bin, argv, timeoutMs, options = {}) {
|
|
246
|
+
return new Promise((resolve, reject) => {
|
|
247
|
+
const child = spawn(bin, argv, {
|
|
248
|
+
stdio: ["ignore", "pipe", "pipe"],
|
|
249
|
+
// `childEnvWith` because `spawn`'s `env` REPLACES the environment rather
|
|
250
|
+
// than extending it — passing only the additions would strip PATH.
|
|
251
|
+
...options.extraEnv ? { env: childEnvWith(options.extraEnv) } : {}
|
|
252
|
+
});
|
|
253
|
+
const stderrChunks = [];
|
|
254
|
+
const stdoutChunks = [];
|
|
255
|
+
let stderrLen = 0;
|
|
256
|
+
const MAX_STDERR = 256 * 1024;
|
|
257
|
+
child.stdout.on("data", (chunk) => {
|
|
258
|
+
if (options.captureStdout) stdoutChunks.push(chunk);
|
|
259
|
+
});
|
|
260
|
+
child.stderr.on("data", (chunk) => {
|
|
261
|
+
if (stderrLen < MAX_STDERR) {
|
|
262
|
+
stderrChunks.push(chunk);
|
|
263
|
+
stderrLen += chunk.length;
|
|
264
|
+
}
|
|
265
|
+
});
|
|
266
|
+
const timer = setTimeout(() => {
|
|
267
|
+
child.kill("SIGKILL");
|
|
268
|
+
reject(new Error(`${bin} timed out after ${timeoutMs}ms`));
|
|
269
|
+
}, timeoutMs);
|
|
270
|
+
child.on("error", (err) => {
|
|
271
|
+
clearTimeout(timer);
|
|
272
|
+
reject(new Error(`failed to spawn "${bin}" \u2014 ${err.message}`));
|
|
273
|
+
});
|
|
274
|
+
child.on("close", (code) => {
|
|
275
|
+
clearTimeout(timer);
|
|
276
|
+
resolve({
|
|
277
|
+
code: code ?? -1,
|
|
278
|
+
stderr: Buffer.concat(stderrChunks).toString("utf-8"),
|
|
279
|
+
...options.captureStdout ? { stdout: Buffer.concat(stdoutChunks).toString("utf-8") } : {}
|
|
280
|
+
});
|
|
281
|
+
});
|
|
282
|
+
});
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
export {
|
|
286
|
+
isVimeoAuthFailure,
|
|
287
|
+
ytDlpBlockSignal,
|
|
288
|
+
YT_DLP_BIN,
|
|
289
|
+
YtDlpError,
|
|
290
|
+
runYtDlp,
|
|
291
|
+
probeYtDlp,
|
|
292
|
+
isAudioOnly,
|
|
293
|
+
durationSeconds,
|
|
294
|
+
canonicalUrl
|
|
295
|
+
};
|
|
296
|
+
//# sourceMappingURL=chunk-CVBKW75S.js.map
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import {
|
|
2
|
+
handleConnectionError,
|
|
3
|
+
isNotConnectedError,
|
|
4
|
+
writeAdsJson
|
|
5
|
+
} from "./chunk-SWL4AAPP.js";
|
|
6
|
+
import {
|
|
7
|
+
ApiError
|
|
8
|
+
} from "./chunk-XDZVBX6L.js";
|
|
9
|
+
|
|
10
|
+
// src/commands/ads/google/service-read-errors.ts
|
|
11
|
+
var KNOWN_REFUSALS = [
|
|
12
|
+
{
|
|
13
|
+
match: /BILLING_SETUP_NOT_ON_MONTHLY_INVOICING/,
|
|
14
|
+
code: "NOT_INVOICED",
|
|
15
|
+
message: "This account is not billed by monthly invoicing, so Google issues no invoices through the API.",
|
|
16
|
+
explanation: "Degrade, don't abort: the account pays automatically (card or bank), and its receipts are in Google Ads \u2192 Billing \u2192 Documents for the user to download. Spend itself is readable with `query --preset account-summary`. Carry on with the rest of the job."
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
match: /no approved billing setup/i,
|
|
20
|
+
code: "NO_BILLING_SETUP",
|
|
21
|
+
message: "This account has no approved billing setup, so it has no invoices.",
|
|
22
|
+
explanation: "Degrade, don't abort: nothing is billed to this account yet (or a manager account pays). Carry on with the rest of the job."
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
match: /BILLING_NOT_ON_MONTHLY_INVOICING|verification is only open to customers with billing setup for monthly invoicing/,
|
|
26
|
+
code: "VERIFICATION_NOT_READABLE",
|
|
27
|
+
message: "Google only reports advertiser verification through the API for accounts on monthly invoicing.",
|
|
28
|
+
explanation: "Degrade, don't abort: the status is in Google Ads \u2192 Billing \u2192 Advertiser verification, where the user can read it. Say that, and carry on with the rest of the job."
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
match: /UNSUPPORTED_AD_TYPE/,
|
|
32
|
+
code: "NO_PREVIEW_FOR_AD_TYPE",
|
|
33
|
+
message: "Google has no shareable preview for this ad type: --ads previews only video ads of Video campaigns, live on YouTube (search, display and Demand Gen ads answer unsupported).",
|
|
34
|
+
explanation: "Degrade, don't abort: preview a Performance Max campaign with --asset-groups, and describe any other ad from its copy (`ads list`, `query --preset ad-copy-performance`). Carry on with the rest of the job."
|
|
35
|
+
}
|
|
36
|
+
];
|
|
37
|
+
function serviceReadRefusal(message) {
|
|
38
|
+
const known = KNOWN_REFUSALS.find((refusal) => refusal.match.test(message));
|
|
39
|
+
if (!known) return null;
|
|
40
|
+
return {
|
|
41
|
+
ok: false,
|
|
42
|
+
error: {
|
|
43
|
+
code: known.code,
|
|
44
|
+
message: known.message,
|
|
45
|
+
fix: { action: "reject", explanation: known.explanation },
|
|
46
|
+
retryable: false
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
function exitWithServiceReadError(err) {
|
|
51
|
+
if (err instanceof ApiError) {
|
|
52
|
+
if (isNotConnectedError(err.code, err.message)) handleConnectionError("google_ads", err.message);
|
|
53
|
+
writeAdsJson(
|
|
54
|
+
serviceReadRefusal(err.message) ?? {
|
|
55
|
+
ok: false,
|
|
56
|
+
error: {
|
|
57
|
+
code: err.code,
|
|
58
|
+
message: err.message,
|
|
59
|
+
fix: { action: "reject", explanation: err.message },
|
|
60
|
+
retryable: err.code === "RATE_LIMITED" || err.code === "UNAVAILABLE"
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
);
|
|
64
|
+
process.exit(1);
|
|
65
|
+
}
|
|
66
|
+
writeAdsJson({
|
|
67
|
+
ok: false,
|
|
68
|
+
error: { code: "NETWORK_ERROR", message: err instanceof Error ? err.message : "Unexpected error" }
|
|
69
|
+
});
|
|
70
|
+
process.exit(1);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
export {
|
|
74
|
+
exitWithServiceReadError
|
|
75
|
+
};
|
|
76
|
+
//# sourceMappingURL=chunk-D4LKZJYJ.js.map
|