@koda-sl/baker-cli 0.512.0 → 0.514.0-dev.555f7007e
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 +20 -3
- package/dist/account-QX4G4BJ7.js +82 -0
- package/dist/account-QX4G4BJ7.js.map +1 -0
- package/dist/account-UFYZS3K6.js +82 -0
- package/dist/account-UFYZS3K6.js.map +1 -0
- package/dist/account-assets-J5Z4URLQ.js +290 -0
- package/dist/account-level-4SBYYHRS.js +611 -0
- package/dist/account-level-4SBYYHRS.js.map +1 -0
- package/dist/account-reads-FOEVPWDP.js +219 -0
- package/dist/account-users-UTIF7MIT.js +64 -0
- package/dist/account-users-UTIF7MIT.js.map +1 -0
- package/dist/account-writes-QAQXRIEY.js +68 -0
- package/dist/account-writes-QAQXRIEY.js.map +1 -0
- package/dist/accounts-JK3OAS5U.js +701 -0
- package/dist/accounts-JK3OAS5U.js.map +1 -0
- package/dist/accounts-OE33CKWD.js +80 -0
- package/dist/accounts-OE33CKWD.js.map +1 -0
- package/dist/actions-QZDSLFFK.js +55 -0
- package/dist/activecampaign-U6TKRR45.js +938 -0
- package/dist/activecampaign-U6TKRR45.js.map +1 -0
- package/dist/ad-group-writes-XY5JYTKT.js +172 -0
- package/dist/ad-group-writes-XY5JYTKT.js.map +1 -0
- package/dist/ad-groups-YEO5ZS5U.js +70 -0
- package/dist/ad-groups-YEO5ZS5U.js.map +1 -0
- package/dist/ad-writes-XRCPK4SP.js +176 -0
- package/dist/ad-writes-XRCPK4SP.js.map +1 -0
- package/dist/add-2EF7S4NK.js +305 -0
- package/dist/add-2EF7S4NK.js.map +1 -0
- package/dist/add-YCJ6RXPG.js +107 -0
- package/dist/add-YCJ6RXPG.js.map +1 -0
- package/dist/ads-AYJAYLFR.js +48 -0
- package/dist/ads-H7H7H2CM.js +79 -0
- package/dist/ads-H7H7H2CM.js.map +1 -0
- package/dist/ads-MAOI7S6V.js +115 -0
- package/dist/adsets-QRKICEFD.js +182 -0
- package/dist/advertisers-JLSU3G35.js +123 -0
- package/dist/advertisers-JLSU3G35.js.map +1 -0
- package/dist/analytics-ADIWEM6G.js +2437 -0
- package/dist/analytics-ADIWEM6G.js.map +1 -0
- package/dist/analytics-XB6FRNVJ.js +447 -0
- package/dist/analytics-XB6FRNVJ.js.map +1 -0
- package/dist/animate-HRWFVE2N.js +480 -0
- package/dist/asset-writes-JLVUAVUZ.js +50 -0
- package/dist/assign-IWZ2OPFL.js +80 -0
- package/dist/assign-IWZ2OPFL.js.map +1 -0
- package/dist/audience-size-P5L6MZ4C.js +76 -0
- package/dist/audience-size-P5L6MZ4C.js.map +1 -0
- package/dist/audience-writes-CDKQB3SM.js +327 -0
- package/dist/audience-writes-CDKQB3SM.js.map +1 -0
- package/dist/audiences-CDDI5HR5.js +86 -0
- package/dist/audiences-XKERWKKE.js +280 -0
- package/dist/audiences-XKERWKKE.js.map +1 -0
- package/dist/audit-SEADLC6F.js +154 -0
- package/dist/audit-SEADLC6F.js.map +1 -0
- package/dist/autocomplete-AJQBJS5R.js +114 -0
- package/dist/autocomplete-AJQBJS5R.js.map +1 -0
- package/dist/avatars-4HCGWBOL.js +38 -0
- package/dist/bid-pricing-NWSUO3VM.js +103 -0
- package/dist/bid-pricing-NWSUO3VM.js.map +1 -0
- package/dist/brand-C6OB6Q4U.js +22 -0
- package/dist/brief-LCWWQ4OC.js +543 -0
- package/dist/brief-LCWWQ4OC.js.map +1 -0
- package/dist/campaign-groups-PH64UXZJ.js +99 -0
- package/dist/campaign-groups-PH64UXZJ.js.map +1 -0
- package/dist/campaign-writes-BN3EGDK5.js +168 -0
- package/dist/campaign-writes-BN3EGDK5.js.map +1 -0
- package/dist/campaign-writes-CLV5ZSUK.js +176 -0
- package/dist/campaign-writes-CLV5ZSUK.js.map +1 -0
- package/dist/campaigns-5XRY27JZ.js +78 -0
- package/dist/campaigns-5XRY27JZ.js.map +1 -0
- package/dist/campaigns-HES5MDUG.js +130 -0
- package/dist/campaigns-JF4TYYUP.js +113 -0
- package/dist/campaigns-JF4TYYUP.js.map +1 -0
- package/dist/campaigns-ZYU4BXDP.js +111 -0
- package/dist/canvas-AI34UBGU.js +46 -0
- package/dist/capabilities-TRHAPTUU.js +147 -0
- package/dist/capabilities-TRHAPTUU.js.map +1 -0
- package/dist/catalog-ZY3MFT55.js +65 -0
- package/dist/catalogs-6XLBWAUS.js +130 -0
- package/dist/catalogs-6XLBWAUS.js.map +1 -0
- package/dist/catalogs-TGLSJEK5.js +781 -0
- package/dist/catalogs-TGLSJEK5.js.map +1 -0
- package/dist/changes-OOUVQDBY.js +135 -0
- package/dist/chatgpt-NAXIFWXV.js +47 -0
- package/dist/chats-I5RHBRS5.js +279 -0
- package/dist/chats-I5RHBRS5.js.map +1 -0
- package/dist/check-3E64VBUE.js +107 -0
- package/dist/check-3E64VBUE.js.map +1 -0
- package/dist/chunk-3CHYJYSS.js +319 -0
- package/dist/chunk-3G3GC5N4.js +429 -0
- package/dist/chunk-3M45PYU7.js +274 -0
- package/dist/chunk-3QHXF3QI.js +23 -0
- package/dist/chunk-3XPHUMLJ.js +3868 -0
- package/dist/chunk-45EERHDB.js +783 -0
- package/dist/chunk-4FGTANFK.js +387 -0
- package/dist/chunk-4IHWT7PH.js +167 -0
- package/dist/chunk-4LF4AYPT.js +846 -0
- package/dist/chunk-4UQRXKYJ.js +219 -0
- package/dist/chunk-5JJD33Y2.js +455 -0
- package/dist/chunk-5K4QYYOJ.js +831 -0
- package/dist/chunk-5LJ6E4YU.js +163 -0
- package/dist/chunk-5T73MMBL.js +275 -0
- package/dist/chunk-64MAHLTK.js +363 -0
- package/dist/chunk-6OIKNJ7G.js +26 -0
- package/dist/chunk-6ZFSDYWV.js +131 -0
- package/dist/chunk-7BUIOP36.js +287 -0
- package/dist/chunk-7I6ZVBLM.js +358 -0
- package/dist/chunk-7I6ZVBLM.js.map +1 -0
- package/dist/chunk-AN4OEQXE.js +122 -0
- package/dist/chunk-AULSX5ZA.js +5368 -0
- package/dist/chunk-AVYUFJQQ.js +46 -0
- package/dist/chunk-B4YF7VQF.js +97 -0
- package/dist/chunk-BDOYNGUL.js +98 -0
- package/dist/chunk-BJOK7QD4.js +207 -0
- package/dist/chunk-CMCGFSUS.js +197 -0
- package/dist/chunk-DMJUIUAL.js +676 -0
- package/dist/chunk-DUCUOZLS.js +225 -0
- package/dist/chunk-EW7JSTRZ.js +24026 -0
- package/dist/chunk-EW7JSTRZ.js.map +1 -0
- package/dist/chunk-F3CZFUXZ.js +3187 -0
- package/dist/chunk-F3CZFUXZ.js.map +1 -0
- package/dist/chunk-FJZYOVSW.js +843 -0
- package/dist/chunk-FKP4ECJY.js +19 -0
- package/dist/chunk-G4FG5EQO.js +110 -0
- package/dist/chunk-G4FG5EQO.js.map +1 -0
- package/dist/chunk-GAYRBIEF.js +712 -0
- package/dist/chunk-GAYRBIEF.js.map +1 -0
- package/dist/chunk-GNMEOU46.js +8954 -0
- package/dist/chunk-GYKYXWUQ.js +156 -0
- package/dist/chunk-GYPLRU4Y.js +297 -0
- package/dist/chunk-I43ZEWJQ.js +285 -0
- package/dist/chunk-IZABTTW5.js +228 -0
- package/dist/chunk-JOE42ZW6.js +2984 -0
- package/dist/chunk-JOE42ZW6.js.map +1 -0
- package/dist/chunk-K7IE6UYV.js +1646 -0
- package/dist/chunk-KH5YHHJV.js +604 -0
- package/dist/chunk-KMY7AD3N.js +51 -0
- package/dist/chunk-KPCHWDJM.js +8914 -0
- package/dist/chunk-KTZCLJ2D.js +148 -0
- package/dist/chunk-MKUA54QE.js +638 -0
- package/dist/chunk-MTV2RSGY.js +63 -0
- package/dist/chunk-MUS2UTWU.js +4254 -0
- package/dist/chunk-MUS2UTWU.js.map +1 -0
- package/dist/chunk-N2QX57K3.js +392 -0
- package/dist/chunk-NB2FU6EZ.js +179 -0
- package/dist/chunk-NEYWS2DQ.js +479 -0
- package/dist/chunk-NKQWDEB7.js +115 -0
- package/dist/chunk-NKQWDEB7.js.map +1 -0
- package/dist/chunk-NWF2LRKO.js +188 -0
- package/dist/chunk-NZ34KM46.js +7211 -0
- package/dist/chunk-NZ34KM46.js.map +1 -0
- package/dist/chunk-OTC6UMJ2.js +191 -0
- package/dist/chunk-OUY2IAWL.js +224 -0
- package/dist/chunk-PJXNCRMR.js +344 -0
- package/dist/chunk-PYQ3GF7R.js +91 -0
- package/dist/chunk-Q3EIVZAR.js +170 -0
- package/dist/chunk-Q3GSVLE5.js +4274 -0
- package/dist/chunk-Q3GSVLE5.js.map +1 -0
- package/dist/chunk-QDQZ62FL.js +207 -0
- package/dist/chunk-QHZE62GP.js +1919 -0
- package/dist/chunk-RGR6TSTJ.js +103 -0
- package/dist/chunk-SAAXU7QR.js +203 -0
- package/dist/chunk-SHTKLRI6.js +66 -0
- package/dist/chunk-SIKCVWM3.js +76 -0
- package/dist/chunk-SOPVIIUW.js +68 -0
- package/dist/chunk-SOPVIIUW.js.map +1 -0
- package/dist/chunk-SSXG53CZ.js +89 -0
- package/dist/chunk-TBWAM577.js +547 -0
- package/dist/chunk-TGPGQTZA.js +169 -0
- package/dist/chunk-UMIX2BMM.js +1518 -0
- package/dist/chunk-URMAEVZO.js +150 -0
- package/dist/chunk-VBO3ZVUU.js +61 -0
- package/dist/chunk-VFLYMHTO.js +592 -0
- package/dist/chunk-VGYIVXIZ.js +249 -0
- package/dist/chunk-VIB7R533.js +57 -0
- package/dist/chunk-WLESMH4J.js +45 -0
- package/dist/chunk-WVWLPXBO.js +910 -0
- package/dist/chunk-XEH5XAP6.js +494 -0
- package/dist/chunk-XEOKVL4E.js +142 -0
- package/dist/chunk-XOGQJYXH.js +64 -0
- package/dist/chunk-XOQNM7I4.js +396 -0
- package/dist/chunk-XOQNM7I4.js.map +1 -0
- package/dist/chunk-XUXRA7IB.js +942 -0
- package/dist/claim-FIK2YTLM.js +200 -0
- package/dist/claim-FIK2YTLM.js.map +1 -0
- package/dist/cli.js +34 -33
- package/dist/cli.js.map +1 -1
- package/dist/companies-KMMV6EJW.js +198 -0
- package/dist/companies-KMMV6EJW.js.map +1 -0
- package/dist/company-B54URPJG.js +308 -0
- package/dist/company-B54URPJG.js.map +1 -0
- package/dist/complete-PPCWEXS3.js +84 -0
- package/dist/complete-PPCWEXS3.js.map +1 -0
- package/dist/connect-IAXSZPGA.js +45 -0
- package/dist/conversation-KHTZBGX2.js +96 -0
- package/dist/conversation-KHTZBGX2.js.map +1 -0
- package/dist/conversion-report-U66HW6JM.js +127 -0
- package/dist/conversion-report-U66HW6JM.js.map +1 -0
- package/dist/conversion-upload-command-IHFKVX2M.js +439 -0
- package/dist/conversion-writes-RSGDOAET.js +122 -0
- package/dist/conversion-writes-RSGDOAET.js.map +1 -0
- package/dist/conversions-BVOL43W4.js +78 -0
- package/dist/conversions-BVOL43W4.js.map +1 -0
- package/dist/conversions-SUMZAV2T.js +140 -0
- package/dist/conversions-SUMZAV2T.js.map +1 -0
- package/dist/copy-writes-CIHIFLY6.js +170 -0
- package/dist/copy-writes-CIHIFLY6.js.map +1 -0
- package/dist/create-732HQL3C.js +210 -0
- package/dist/create-732HQL3C.js.map +1 -0
- package/dist/create-TFR6R2KF.js +239 -0
- package/dist/create-TFR6R2KF.js.map +1 -0
- package/dist/create-UC57ULRL.js +62 -0
- package/dist/create-UC57ULRL.js.map +1 -0
- package/dist/create-UL2OYXOA.js +135 -0
- package/dist/create-UL2OYXOA.js.map +1 -0
- package/dist/creatives-BB6S2OF6.js +89 -0
- package/dist/creatives-BZEVJ6ER.js +58 -0
- package/dist/creatives-FU3YELGU.js +223 -0
- package/dist/creatives-FU3YELGU.js.map +1 -0
- package/dist/credentials-AYV5YQE4.js +290 -0
- package/dist/credentials-AYV5YQE4.js.map +1 -0
- package/dist/critique-FKIJB72I.js +1451 -0
- package/dist/critique-FKIJB72I.js.map +1 -0
- package/dist/critique-IQYNDXCN.js +232 -0
- package/dist/critique-IQYNDXCN.js.map +1 -0
- package/dist/crm-ILQMNJPX.js +323 -0
- package/dist/crm-ILQMNJPX.js.map +1 -0
- package/dist/crm-MQQRBITZ.js +227 -0
- package/dist/crm-MQQRBITZ.js.map +1 -0
- package/dist/currency-CGKO5GKH.js +88 -0
- package/dist/custom-conversions-HAGG72LF.js +128 -0
- package/dist/customers-NKKU6S7G.js +59 -0
- package/dist/delete-2TCCNRMH.js +57 -0
- package/dist/delete-2TCCNRMH.js.map +1 -0
- package/dist/delete-HCZTISBT.js +69 -0
- package/dist/delete-HCZTISBT.js.map +1 -0
- package/dist/delete-UIKB5ZXS.js +67 -0
- package/dist/delete-UIKB5ZXS.js.map +1 -0
- package/dist/demographics-ABZODD45.js +141 -0
- package/dist/demographics-ABZODD45.js.map +1 -0
- package/dist/discard-V3K5PZ4W.js +69 -0
- package/dist/discard-V3K5PZ4W.js.map +1 -0
- package/dist/discover-VM3O7CQM.js +172 -0
- package/dist/domain-A66DHOTQ.js +101 -0
- package/dist/domain-A66DHOTQ.js.map +1 -0
- package/dist/download-LSAZD5JO.js +172 -0
- package/dist/download-LSAZD5JO.js.map +1 -0
- package/dist/draft-5UUJC675.js +335 -0
- package/dist/draft-5UUJC675.js.map +1 -0
- package/dist/draft-BATA5CVI.js +283 -0
- package/dist/draft-BATA5CVI.js.map +1 -0
- package/dist/draft-CRDBU6LF.js +308 -0
- package/dist/draft-P7IDMXWR.js +310 -0
- package/dist/draft-P7IDMXWR.js.map +1 -0
- package/dist/draft-YBNL4ZZA.js +220 -0
- package/dist/draft-YBNL4ZZA.js.map +1 -0
- package/dist/engine/index.js +7 -7
- package/dist/experiments-MLLTHMMS.js +236 -0
- package/dist/experiments-MLLTHMMS.js.map +1 -0
- package/dist/facets-KSHR3MBE.js +117 -0
- package/dist/facets-KSHR3MBE.js.map +1 -0
- package/dist/feedback-4GCPXZSI.js +111 -0
- package/dist/feedback-4GCPXZSI.js.map +1 -0
- package/dist/feedback-record-VEFHUIUJ.js +265 -0
- package/dist/feedback-record-VEFHUIUJ.js.map +1 -0
- package/dist/fetch-42QL56JC.js +179 -0
- package/dist/fetch-42QL56JC.js.map +1 -0
- package/dist/fit-Q5GRVF2O.js +65 -0
- package/dist/flows-M3WBZQET.js +250 -0
- package/dist/flows-M3WBZQET.js.map +1 -0
- package/dist/fonts-GD4YRXQU.js +39 -0
- package/dist/forecast-HT46MFL4.js +121 -0
- package/dist/forecast-HT46MFL4.js.map +1 -0
- package/dist/forecast-ONVS2QAI.js +169 -0
- package/dist/funnel-76BAD64Q.js +397 -0
- package/dist/funnel-76BAD64Q.js.map +1 -0
- package/dist/generate-VBEY3N3L.js +263 -0
- package/dist/get-4KFAO475.js +82 -0
- package/dist/get-4KFAO475.js.map +1 -0
- package/dist/get-QV5NIADE.js +59 -0
- package/dist/get-QV5NIADE.js.map +1 -0
- package/dist/google-7EZP7I6J.js +3267 -0
- package/dist/google-ads-J7WHTJO4.js +198 -0
- package/dist/google-ads-J7WHTJO4.js.map +1 -0
- package/dist/history-EULKWQUS.js +136 -0
- package/dist/history-EULKWQUS.js.map +1 -0
- package/dist/history-FEBJHFHJ.js +69 -0
- package/dist/history-FEBJHFHJ.js.map +1 -0
- package/dist/history-RDVV7KBN.js +102 -0
- package/dist/history-RDVV7KBN.js.map +1 -0
- package/dist/hubspot-A3RQNMYN.js +782 -0
- package/dist/hubspot-A3RQNMYN.js.map +1 -0
- package/dist/ideas-WX7EBPSF.js +45 -0
- package/dist/images-4AXF4LAC.js +92 -0
- package/dist/ingest-AM5YDTRH.js +110 -0
- package/dist/ingest-AM5YDTRH.js.map +1 -0
- package/dist/ingest-C3M4GUO6.js +26 -0
- package/dist/insights-UTCMSWSC.js +132 -0
- package/dist/insights-UTCMSWSC.js.map +1 -0
- package/dist/insights-XZL2EM53.js +439 -0
- package/dist/insights-XZL2EM53.js.map +1 -0
- package/dist/inspect-DWCLRZGR.js +192 -0
- package/dist/inspect-DWCLRZGR.js.map +1 -0
- package/dist/instant-experiences-RM4MLJTL.js +260 -0
- package/dist/instant-experiences-RM4MLJTL.js.map +1 -0
- package/dist/intent-ZMYMFGB4.js +95 -0
- package/dist/keyword-gap-XSJO2R77.js +130 -0
- package/dist/keyword-metrics-M46FCTAS.js +200 -0
- package/dist/keyword-metrics-M46FCTAS.js.map +1 -0
- package/dist/keywords-for-site-XNSLX7EA.js +131 -0
- package/dist/keywords-for-site-XNSLX7EA.js.map +1 -0
- package/dist/landing-MUNYZQNA.js +28 -0
- package/dist/languages-DIQ3OG3E.js +40 -0
- package/dist/lead-routes-XBO2GOBL.js +608 -0
- package/dist/lead-routes-XBO2GOBL.js.map +1 -0
- package/dist/leads-LAATTW5G.js +115 -0
- package/dist/leads-LAATTW5G.js.map +1 -0
- package/dist/leads-ULYHTG22.js +540 -0
- package/dist/leads-ULYHTG22.js.map +1 -0
- package/dist/learn-3GLY4G3H.js +207 -0
- package/dist/learn-3GLY4G3H.js.map +1 -0
- package/dist/line-item-writes-XJTTA3X5.js +211 -0
- package/dist/line-item-writes-XJTTA3X5.js.map +1 -0
- package/dist/line-items-JR25T2C5.js +107 -0
- package/dist/link-7DSLIF3I.js +67 -0
- package/dist/link-7DSLIF3I.js.map +1 -0
- package/dist/linkedin-W5BJ6HEH.js +1316 -0
- package/dist/linkedin-W5BJ6HEH.js.map +1 -0
- package/dist/linkedin-person-2ZYSOHYR.js +139 -0
- package/dist/linkedin-person-2ZYSOHYR.js.map +1 -0
- package/dist/list-3653DIYB.js +67 -0
- package/dist/list-3653DIYB.js.map +1 -0
- package/dist/list-G66HVYCR.js +306 -0
- package/dist/list-G66HVYCR.js.map +1 -0
- package/dist/list-Z4M53MS5.js +154 -0
- package/dist/list-Z4M53MS5.js.map +1 -0
- package/dist/locations-HTVYJSDJ.js +40 -0
- package/dist/locations-M2B5XDU4.js +69 -0
- package/dist/locations-M2B5XDU4.js.map +1 -0
- package/dist/log-2RJU5BOW.js +95 -0
- package/dist/log-2RJU5BOW.js.map +1 -0
- package/dist/lookup-S5VG7AWH.js +23 -0
- package/dist/make-MJ6JMU5T.js +1370 -0
- package/dist/make-MJ6JMU5T.js.map +1 -0
- package/dist/map-27IPOBY6.js +436 -0
- package/dist/map-27IPOBY6.js.map +1 -0
- package/dist/mcp-TFQTME4P.js +717 -0
- package/dist/mcp-TFQTME4P.js.map +1 -0
- package/dist/media-P4T4ZBNS.js +18 -0
- package/dist/media-sources-P246GM7W.js +35 -0
- package/dist/members-KOKBTUC2.js +47 -0
- package/dist/members-KOKBTUC2.js.map +1 -0
- package/dist/meta-IPLWNYC7.js +122 -0
- package/dist/metrics-WYWUX6Y5.js +152 -0
- package/dist/models-HJ7Y55AH.js +155 -0
- package/dist/normalize-GXBUNTYJ.js +144 -0
- package/dist/normalize-GXBUNTYJ.js.map +1 -0
- package/dist/options-MA25RNXF.js +125 -0
- package/dist/options-MA25RNXF.js.map +1 -0
- package/dist/organization-NLEVNGKQ.js +949 -0
- package/dist/organization-NLEVNGKQ.js.map +1 -0
- package/dist/page-photos-OQ5QATQH.js +118 -0
- package/dist/page-photos-OQ5QATQH.js.map +1 -0
- package/dist/performance-34EUP5KL.js +5541 -0
- package/dist/performance-34EUP5KL.js.map +1 -0
- package/dist/performance-J3DLNI2W.js +27 -0
- package/dist/pixels-THEGYRXT.js +62 -0
- package/dist/pixels-THEGYRXT.js.map +1 -0
- package/dist/plan-7UF76Q6U.js +208 -0
- package/dist/plan-7UF76Q6U.js.map +1 -0
- package/dist/preview-LRJOQ7LM.js +218 -0
- package/dist/preview-LRJOQ7LM.js.map +1 -0
- package/dist/promoted-tweet-writes-SBXWKO23.js +183 -0
- package/dist/promoted-tweet-writes-SBXWKO23.js.map +1 -0
- package/dist/promoted-tweets-W42FNWS7.js +119 -0
- package/dist/publish-YG76GOA7.js +344 -0
- package/dist/publish-YG76GOA7.js.map +1 -0
- package/dist/query-IQICLABN.js +62 -0
- package/dist/questionnaire-DWEH5II4.js +94 -0
- package/dist/questionnaire-DWEH5II4.js.map +1 -0
- package/dist/reddit-X4CERXYF.js +29 -0
- package/dist/refresh-A36GA7JN.js +97 -0
- package/dist/refresh-A36GA7JN.js.map +1 -0
- package/dist/release-3NCMZIDI.js +63 -0
- package/dist/release-3NCMZIDI.js.map +1 -0
- package/dist/relevant-pages-UDDQOYLD.js +99 -0
- package/dist/remove-6LE3XNRG.js +53 -0
- package/dist/remove-6LE3XNRG.js.map +1 -0
- package/dist/reopen-XLADJ2UU.js +66 -0
- package/dist/reopen-XLADJ2UU.js.map +1 -0
- package/dist/rerun-QVMFJZA2.js +95 -0
- package/dist/rerun-QVMFJZA2.js.map +1 -0
- package/dist/research-D5UUJF74.js +72 -0
- package/dist/research-QCI5ISUE.js +265 -0
- package/dist/research-QCI5ISUE.js.map +1 -0
- package/dist/reset-DD37KDXQ.js +57 -0
- package/dist/reset-DD37KDXQ.js.map +1 -0
- package/dist/reset-FLZPKY2N.js +57 -0
- package/dist/reset-FLZPKY2N.js.map +1 -0
- package/dist/resolve-KRKIJKT7.js +124 -0
- package/dist/resolve-KRKIJKT7.js.map +1 -0
- package/dist/retry-ALXYEKFV.js +65 -0
- package/dist/retry-ALXYEKFV.js.map +1 -0
- package/dist/retry-MIXKW4EW.js +63 -0
- package/dist/retry-MIXKW4EW.js.map +1 -0
- package/dist/revenue-UBZUTSXN.js +91 -0
- package/dist/revenue-UBZUTSXN.js.map +1 -0
- package/dist/rule-writes-UAVWT4XS.js +525 -0
- package/dist/rule-writes-UAVWT4XS.js.map +1 -0
- package/dist/rules-SO6P44B6.js +99 -0
- package/dist/rules-SO6P44B6.js.map +1 -0
- package/dist/rules-ZVS2MWED.js +217 -0
- package/dist/rules-add-XN3BZKFO.js +465 -0
- package/dist/rules-add-XN3BZKFO.js.map +1 -0
- package/dist/run-K2DOMOAN.js +69 -0
- package/dist/run-K2DOMOAN.js.map +1 -0
- package/dist/run-T7XAH2W5.js +70 -0
- package/dist/scaffold-ad-TWIT7R4U.js +1516 -0
- package/dist/scaffold-ad-TWIT7R4U.js.map +1 -0
- package/dist/scaffold-static-ad-GPJKOGOI.js +1015 -0
- package/dist/scaffold-static-ad-GPJKOGOI.js.map +1 -0
- package/dist/scaffold-video-7BQNOJ4S.js +888 -0
- package/dist/scaffold-video-7BQNOJ4S.js.map +1 -0
- package/dist/schedule-UTRVEWPE.js +64 -0
- package/dist/schedule-UTRVEWPE.js.map +1 -0
- package/dist/scheduled-agents-ZGCUZ6SB.js +55 -0
- package/dist/schema-D6BMZAPB.js +69 -0
- package/dist/schema-DSMF6ELE.js +135 -0
- package/dist/schema-DSMF6ELE.js.map +1 -0
- package/dist/search-2P72GSKY.js +177 -0
- package/dist/search-2P72GSKY.js.map +1 -0
- package/dist/select-N7VWQ2ZQ.js +106 -0
- package/dist/select-N7VWQ2ZQ.js.map +1 -0
- package/dist/sends-LAY5C74B.js +349 -0
- package/dist/sends-LAY5C74B.js.map +1 -0
- package/dist/set-prompt-3N3HMHT6.js +198 -0
- package/dist/set-prompt-3N3HMHT6.js.map +1 -0
- package/dist/setup-links-I5RFZTS4.js +144 -0
- package/dist/setup-links-I5RFZTS4.js.map +1 -0
- package/dist/shopify-LXSR37XI.js +3958 -0
- package/dist/shopify-LXSR37XI.js.map +1 -0
- package/dist/site-AI3BFWRK.js +180 -0
- package/dist/site-AI3BFWRK.js.map +1 -0
- package/dist/sources-AOF2YDYX.js +457 -0
- package/dist/sources-AOF2YDYX.js.map +1 -0
- package/dist/sources-DVMJEXEX.js +30 -0
- package/dist/stale-P4GGOLIB.js +76 -0
- package/dist/stale-P4GGOLIB.js.map +1 -0
- package/dist/status-O25MXHU4.js +65 -0
- package/dist/status-O25MXHU4.js.map +1 -0
- package/dist/studies-EPO2AM4M.js +250 -0
- package/dist/studio-5Z4NMA4K.js +49 -0
- package/dist/study-writes-7FP443QQ.js +470 -0
- package/dist/study-writes-7FP443QQ.js.map +1 -0
- package/dist/sync-2AI7LKKN.js +57 -0
- package/dist/sync-2AI7LKKN.js.map +1 -0
- package/dist/sync-definition-F3CXG6KG.js +69 -0
- package/dist/tags-SEZ2CQJM.js +26 -0
- package/dist/tags-TJDZXOXS.js +227 -0
- package/dist/tags-TJDZXOXS.js.map +1 -0
- package/dist/tags-YSC7ZILI.js +23 -0
- package/dist/tags-YSC7ZILI.js.map +1 -0
- package/dist/tags-Z6EALYOS.js +23 -0
- package/dist/tags-Z6EALYOS.js.map +1 -0
- package/dist/tags-ZXSVW6XO.js +23 -0
- package/dist/tags-ZXSVW6XO.js.map +1 -0
- package/dist/targeting-NKZFEZD7.js +762 -0
- package/dist/targeting-NKZFEZD7.js.map +1 -0
- package/dist/targeting-criteria-AU5CSMAU.js +113 -0
- package/dist/targets-IOIH5JYS.js +106 -0
- package/dist/targets-IOIH5JYS.js.map +1 -0
- package/dist/testimonials-Y6PUV6AL.js +32 -0
- package/dist/themes-PGPIAKAO.js +95 -0
- package/dist/top-companies-FSITN3ZR.js +111 -0
- package/dist/top-companies-FSITN3ZR.js.map +1 -0
- package/dist/transcript-CGPX7Y37.js +165 -0
- package/dist/transcript-CGPX7Y37.js.map +1 -0
- package/dist/translate-QCBMGOKR.js +609 -0
- package/dist/translate-QCBMGOKR.js.map +1 -0
- package/dist/triggers-MONMZSKT.js +144 -0
- package/dist/triggers-MONMZSKT.js.map +1 -0
- package/dist/unlink-I7QFQQKO.js +70 -0
- package/dist/unlink-I7QFQQKO.js.map +1 -0
- package/dist/unstage-JXG5AU5Q.js +88 -0
- package/dist/unstage-JXG5AU5Q.js.map +1 -0
- package/dist/unstage-ZA3WQBEA.js +96 -0
- package/dist/unstage-ZA3WQBEA.js.map +1 -0
- package/dist/update-BVZGM54I.js +66 -0
- package/dist/update-BVZGM54I.js.map +1 -0
- package/dist/update-EI2BHUM2.js +101 -0
- package/dist/update-EI2BHUM2.js.map +1 -0
- package/dist/update-RZSV4NYP.js +155 -0
- package/dist/update-RZSV4NYP.js.map +1 -0
- package/dist/update-WLDNOZ5U.js +192 -0
- package/dist/update-WLDNOZ5U.js.map +1 -0
- package/dist/upload-BP3YEQSF.js +129 -0
- package/dist/upload-BP3YEQSF.js.map +1 -0
- package/dist/url-options-63DED6CR.js +131 -0
- package/dist/url-options-63DED6CR.js.map +1 -0
- package/dist/url-params-TRFI2PMD.js +101 -0
- package/dist/url-params-TRFI2PMD.js.map +1 -0
- package/dist/validate-SNCR25A7.js +122 -0
- package/dist/validate-SNCR25A7.js.map +1 -0
- package/dist/videos-SVZV5YYC.js +41 -0
- package/dist/viewer-check-LUAEGV6H.js +83 -0
- package/dist/web-MJQEK7BB.js +143 -0
- package/dist/web-MJQEK7BB.js.map +1 -0
- package/dist/winning-ads-KNLJHHCO.js +86 -0
- package/dist/write-commands-NVCX7IAU.js +1502 -0
- package/dist/write-commands-NVCX7IAU.js.map +1 -0
- package/dist/write-commands-OGVDWWBV.js +1172 -0
- package/dist/write-commands-OGVDWWBV.js.map +1 -0
- package/dist/x-ZQNHYIDU.js +47 -0
- package/package.json +1 -1
- package/dist/account-C635ATVM.js +0 -80
- package/dist/account-C635ATVM.js.map +0 -1
- package/dist/account-WLQBAQMD.js +0 -80
- package/dist/account-WLQBAQMD.js.map +0 -1
- package/dist/account-assets-O7IA37RE.js +0 -290
- package/dist/account-level-EU7BWCO7.js +0 -609
- package/dist/account-level-EU7BWCO7.js.map +0 -1
- package/dist/account-reads-SNOWDHHF.js +0 -219
- package/dist/account-users-XYYENK6X.js +0 -62
- package/dist/account-users-XYYENK6X.js.map +0 -1
- package/dist/account-writes-TU3WJRSI.js +0 -66
- package/dist/account-writes-TU3WJRSI.js.map +0 -1
- package/dist/accounts-A2FBLZ5H.js +0 -78
- package/dist/accounts-A2FBLZ5H.js.map +0 -1
- package/dist/accounts-V2IZZ5KU.js +0 -699
- package/dist/accounts-V2IZZ5KU.js.map +0 -1
- package/dist/actions-Y4SULW2E.js +0 -55
- package/dist/activecampaign-63XG6CLL.js +0 -936
- package/dist/activecampaign-63XG6CLL.js.map +0 -1
- package/dist/ad-group-writes-HLBWN4E4.js +0 -170
- package/dist/ad-group-writes-HLBWN4E4.js.map +0 -1
- package/dist/ad-groups-33NZD6J3.js +0 -68
- package/dist/ad-groups-33NZD6J3.js.map +0 -1
- package/dist/ad-writes-7ZDNDZ2E.js +0 -174
- package/dist/ad-writes-7ZDNDZ2E.js.map +0 -1
- package/dist/add-FOLFVGQO.js +0 -303
- package/dist/add-FOLFVGQO.js.map +0 -1
- package/dist/add-RYB4JSYC.js +0 -105
- package/dist/add-RYB4JSYC.js.map +0 -1
- package/dist/ads-2TVWICGM.js +0 -48
- package/dist/ads-KBE5JXCH.js +0 -115
- package/dist/ads-X3AM6M7L.js +0 -77
- package/dist/ads-X3AM6M7L.js.map +0 -1
- package/dist/adsets-YWBJFPAZ.js +0 -182
- package/dist/advertisers-IGUMSK5Q.js +0 -121
- package/dist/advertisers-IGUMSK5Q.js.map +0 -1
- package/dist/analytics-3DKM7J43.js +0 -445
- package/dist/analytics-3DKM7J43.js.map +0 -1
- package/dist/analytics-R3QDSX2K.js +0 -2435
- package/dist/analytics-R3QDSX2K.js.map +0 -1
- package/dist/animate-2BMHZ4FM.js +0 -480
- package/dist/asset-writes-72DEVXGO.js +0 -48
- package/dist/assign-EKCGLNZB.js +0 -78
- package/dist/assign-EKCGLNZB.js.map +0 -1
- package/dist/audience-size-IKXK32HU.js +0 -74
- package/dist/audience-size-IKXK32HU.js.map +0 -1
- package/dist/audience-writes-KCHLNFSI.js +0 -325
- package/dist/audience-writes-KCHLNFSI.js.map +0 -1
- package/dist/audiences-QAH42HIM.js +0 -86
- package/dist/audiences-WCDWN64L.js +0 -268
- package/dist/audiences-WCDWN64L.js.map +0 -1
- package/dist/audit-CY76S4V7.js +0 -152
- package/dist/audit-CY76S4V7.js.map +0 -1
- package/dist/autocomplete-G2S5HNUS.js +0 -112
- package/dist/autocomplete-G2S5HNUS.js.map +0 -1
- package/dist/avatars-P4UPNZM4.js +0 -38
- package/dist/bid-pricing-AJT4QU2C.js +0 -101
- package/dist/bid-pricing-AJT4QU2C.js.map +0 -1
- package/dist/brand-HALQWZWB.js +0 -22
- package/dist/brief-NW7TGG2Q.js +0 -541
- package/dist/brief-NW7TGG2Q.js.map +0 -1
- package/dist/campaign-groups-I43KMAJP.js +0 -97
- package/dist/campaign-groups-I43KMAJP.js.map +0 -1
- package/dist/campaign-writes-DLLPFAGG.js +0 -166
- package/dist/campaign-writes-DLLPFAGG.js.map +0 -1
- package/dist/campaign-writes-XO74BALZ.js +0 -174
- package/dist/campaign-writes-XO74BALZ.js.map +0 -1
- package/dist/campaigns-LS65QM6W.js +0 -76
- package/dist/campaigns-LS65QM6W.js.map +0 -1
- package/dist/campaigns-UIYSYCF3.js +0 -111
- package/dist/campaigns-UIYSYCF3.js.map +0 -1
- package/dist/campaigns-XZOQ2VTK.js +0 -130
- package/dist/campaigns-YMM5TQVO.js +0 -111
- package/dist/canvas-IJS7H3VE.js +0 -46
- package/dist/capabilities-XMQPM3UL.js +0 -145
- package/dist/capabilities-XMQPM3UL.js.map +0 -1
- package/dist/catalog-TZLU5NWI.js +0 -65
- package/dist/catalogs-JLCSFZYC.js +0 -779
- package/dist/catalogs-JLCSFZYC.js.map +0 -1
- package/dist/catalogs-T23RKYFC.js +0 -128
- package/dist/catalogs-T23RKYFC.js.map +0 -1
- package/dist/changes-36C754R4.js +0 -135
- package/dist/chatgpt-3WFOPURY.js +0 -47
- package/dist/chats-ZI6EYDAF.js +0 -277
- package/dist/chats-ZI6EYDAF.js.map +0 -1
- package/dist/check-CHJ2OLAU.js +0 -105
- package/dist/check-CHJ2OLAU.js.map +0 -1
- package/dist/chunk-2TOIY2WN.js +0 -4254
- package/dist/chunk-2TOIY2WN.js.map +0 -1
- package/dist/chunk-3YJNSUNF.js +0 -131
- package/dist/chunk-4GAEB6NK.js +0 -228
- package/dist/chunk-5RVQK3SP.js +0 -494
- package/dist/chunk-5SRUAGTG.js +0 -547
- package/dist/chunk-5XTGG4PV.js +0 -274
- package/dist/chunk-6KWEF6HF.js +0 -8914
- package/dist/chunk-6Z7Y4KQB.js +0 -275
- package/dist/chunk-7HZSORAB.js +0 -843
- package/dist/chunk-7J3NZBPV.js +0 -2982
- package/dist/chunk-7J3NZBPV.js.map +0 -1
- package/dist/chunk-A3IQAONL.js +0 -638
- package/dist/chunk-AIRD6T4W.js +0 -169
- package/dist/chunk-AQOFQNKQ.js +0 -57
- package/dist/chunk-ARUXGKZO.js +0 -91
- package/dist/chunk-ASRS37QE.js +0 -710
- package/dist/chunk-ASRS37QE.js.map +0 -1
- package/dist/chunk-AYPBARKP.js +0 -156
- package/dist/chunk-BRLZX3VP.js +0 -207
- package/dist/chunk-BTJSGJNQ.js +0 -604
- package/dist/chunk-C7QQQVBS.js +0 -51
- package/dist/chunk-CCEDZTP7.js +0 -391
- package/dist/chunk-CCEDZTP7.js.map +0 -1
- package/dist/chunk-D3KLDIPQ.js +0 -45
- package/dist/chunk-DUR7PEJI.js +0 -170
- package/dist/chunk-EDLZGTGN.js +0 -216
- package/dist/chunk-EDLZGTGN.js.map +0 -1
- package/dist/chunk-F4YQ5PVR.js +0 -1518
- package/dist/chunk-FFFJBNHA.js +0 -63
- package/dist/chunk-FFG2OYVV.js +0 -64
- package/dist/chunk-FPWQA7TK.js +0 -344
- package/dist/chunk-G5Y7OIPL.js +0 -392
- package/dist/chunk-GACSA5A6.js +0 -1646
- package/dist/chunk-GMHCHHAA.js +0 -19
- package/dist/chunk-H4NNQGG6.js +0 -66
- package/dist/chunk-HML3VQIW.js +0 -225
- package/dist/chunk-HSQRITKG.js +0 -203
- package/dist/chunk-I47BEKYK.js +0 -831
- package/dist/chunk-JAC6JVCI.js +0 -26
- package/dist/chunk-JND6XSGZ.js +0 -7192
- package/dist/chunk-JND6XSGZ.js.map +0 -1
- package/dist/chunk-KBRJSPIM.js +0 -676
- package/dist/chunk-KQTNUDKD.js +0 -97
- package/dist/chunk-LRV6M2WB.js +0 -1919
- package/dist/chunk-M7HD42M6.js +0 -24017
- package/dist/chunk-M7HD42M6.js.map +0 -1
- package/dist/chunk-MBSFEVOG.js +0 -163
- package/dist/chunk-MCJ5I5LR.js +0 -3187
- package/dist/chunk-MCJ5I5LR.js.map +0 -1
- package/dist/chunk-MGYC2IRC.js +0 -783
- package/dist/chunk-MUXKYSTI.js +0 -297
- package/dist/chunk-MVD7QIXI.js +0 -46
- package/dist/chunk-MZCTX37B.js +0 -3868
- package/dist/chunk-MZPS46OR.js +0 -76
- package/dist/chunk-N7M2TWR5.js +0 -592
- package/dist/chunk-NDFS3APP.js +0 -319
- package/dist/chunk-OBJCNGZL.js +0 -207
- package/dist/chunk-OJGYYH6K.js +0 -179
- package/dist/chunk-P6BKKUSX.js +0 -142
- package/dist/chunk-PLAOK4AK.js +0 -103
- package/dist/chunk-PLBITHV6.js +0 -846
- package/dist/chunk-PNKIOTCK.js +0 -349
- package/dist/chunk-PNKIOTCK.js.map +0 -1
- package/dist/chunk-PX3PUDK7.js +0 -167
- package/dist/chunk-QBRPM3DQ.js +0 -61
- package/dist/chunk-QMDMTZAW.js +0 -224
- package/dist/chunk-QW6HL7D6.js +0 -429
- package/dist/chunk-R53XMPDO.js +0 -363
- package/dist/chunk-RFIUOQLN.js +0 -89
- package/dist/chunk-RVEY7BTT.js +0 -8954
- package/dist/chunk-SCL7PM6P.js +0 -479
- package/dist/chunk-SM7G7RUA.js +0 -910
- package/dist/chunk-SVBJ56T7.js +0 -455
- package/dist/chunk-SWN6OHXG.js +0 -148
- package/dist/chunk-TVAIOC77.js +0 -287
- package/dist/chunk-TVTSA4EN.js +0 -188
- package/dist/chunk-TX7CQTD4.js +0 -5368
- package/dist/chunk-UKSSNYLU.js +0 -98
- package/dist/chunk-VIPKDXGU.js +0 -4229
- package/dist/chunk-VIPKDXGU.js.map +0 -1
- package/dist/chunk-W574NV67.js +0 -191
- package/dist/chunk-XGPU2VDU.js +0 -219
- package/dist/chunk-XQXZJ5IR.js +0 -249
- package/dist/chunk-YMF2RG4Z.js +0 -942
- package/dist/chunk-YNYAT2TZ.js +0 -285
- package/dist/chunk-Z2DRGXBB.js +0 -197
- package/dist/chunk-Z7YMSHRZ.js +0 -23
- package/dist/chunk-ZEC46NWW.js +0 -122
- package/dist/chunk-ZFC562TP.js +0 -387
- package/dist/chunk-ZNRGH4NS.js +0 -150
- package/dist/claim-OUYHVGB4.js +0 -198
- package/dist/claim-OUYHVGB4.js.map +0 -1
- package/dist/companies-XDNSG7ME.js +0 -196
- package/dist/companies-XDNSG7ME.js.map +0 -1
- package/dist/company-4FAYYPEJ.js +0 -306
- package/dist/company-4FAYYPEJ.js.map +0 -1
- package/dist/complete-M2PAUMDP.js +0 -82
- package/dist/complete-M2PAUMDP.js.map +0 -1
- package/dist/connect-PP6Z3F7Y.js +0 -43
- package/dist/conversation-B5NPTLFQ.js +0 -94
- package/dist/conversation-B5NPTLFQ.js.map +0 -1
- package/dist/conversion-report-DKXFHLLX.js +0 -125
- package/dist/conversion-report-DKXFHLLX.js.map +0 -1
- package/dist/conversion-upload-command-KTYAY7IG.js +0 -439
- package/dist/conversion-writes-7ODJDAUP.js +0 -120
- package/dist/conversion-writes-7ODJDAUP.js.map +0 -1
- package/dist/conversions-BKVGNNC6.js +0 -76
- package/dist/conversions-BKVGNNC6.js.map +0 -1
- package/dist/conversions-QRJL6JIO.js +0 -138
- package/dist/conversions-QRJL6JIO.js.map +0 -1
- package/dist/copy-writes-P4WK6OPM.js +0 -168
- package/dist/copy-writes-P4WK6OPM.js.map +0 -1
- package/dist/create-4DWCJ2UA.js +0 -208
- package/dist/create-4DWCJ2UA.js.map +0 -1
- package/dist/create-OYV33CQ6.js +0 -60
- package/dist/create-OYV33CQ6.js.map +0 -1
- package/dist/create-U6JVIYFY.js +0 -237
- package/dist/create-U6JVIYFY.js.map +0 -1
- package/dist/create-V4FNRO63.js +0 -133
- package/dist/create-V4FNRO63.js.map +0 -1
- package/dist/creatives-64FKWEGL.js +0 -221
- package/dist/creatives-64FKWEGL.js.map +0 -1
- package/dist/creatives-JPKA2RHU.js +0 -89
- package/dist/creatives-UJDPD4CI.js +0 -58
- package/dist/credentials-EIPEZ2C2.js +0 -288
- package/dist/credentials-EIPEZ2C2.js.map +0 -1
- package/dist/critique-BADMZAZP.js +0 -230
- package/dist/critique-BADMZAZP.js.map +0 -1
- package/dist/critique-M3DEVEDA.js +0 -1449
- package/dist/critique-M3DEVEDA.js.map +0 -1
- package/dist/crm-GIYSLLY7.js +0 -321
- package/dist/crm-GIYSLLY7.js.map +0 -1
- package/dist/crm-HXKSJRY3.js +0 -225
- package/dist/crm-HXKSJRY3.js.map +0 -1
- package/dist/currency-R4ORE2U3.js +0 -88
- package/dist/custom-conversions-5HJBB5XL.js +0 -128
- package/dist/customers-7J3QGSOJ.js +0 -57
- package/dist/delete-EDWJQMMV.js +0 -65
- package/dist/delete-EDWJQMMV.js.map +0 -1
- package/dist/delete-O24CVQMJ.js +0 -67
- package/dist/delete-O24CVQMJ.js.map +0 -1
- package/dist/delete-QN2OYUCS.js +0 -55
- package/dist/delete-QN2OYUCS.js.map +0 -1
- package/dist/demographics-MPYYF2OI.js +0 -139
- package/dist/demographics-MPYYF2OI.js.map +0 -1
- package/dist/discard-FJCFB6SA.js +0 -67
- package/dist/discard-FJCFB6SA.js.map +0 -1
- package/dist/discover-GSJRZUOC.js +0 -172
- package/dist/domain-UILPSEA5.js +0 -99
- package/dist/domain-UILPSEA5.js.map +0 -1
- package/dist/download-ZMAI7QSG.js +0 -170
- package/dist/download-ZMAI7QSG.js.map +0 -1
- package/dist/draft-5OQT3APG.js +0 -308
- package/dist/draft-5OQT3APG.js.map +0 -1
- package/dist/draft-LPVK6YHI.js +0 -281
- package/dist/draft-LPVK6YHI.js.map +0 -1
- package/dist/draft-MSESA5UE.js +0 -333
- package/dist/draft-MSESA5UE.js.map +0 -1
- package/dist/draft-WYDMLNYA.js +0 -308
- package/dist/draft-XOOSEVY5.js +0 -218
- package/dist/draft-XOOSEVY5.js.map +0 -1
- package/dist/experiments-PVOQUL47.js +0 -234
- package/dist/experiments-PVOQUL47.js.map +0 -1
- package/dist/facets-5RW4Z3D3.js +0 -115
- package/dist/facets-5RW4Z3D3.js.map +0 -1
- package/dist/feedback-GC56R2EJ.js +0 -109
- package/dist/feedback-GC56R2EJ.js.map +0 -1
- package/dist/feedback-record-JX7ZU6J7.js +0 -263
- package/dist/feedback-record-JX7ZU6J7.js.map +0 -1
- package/dist/fetch-WUTXAPBL.js +0 -177
- package/dist/fetch-WUTXAPBL.js.map +0 -1
- package/dist/fit-N7WDGWYZ.js +0 -63
- package/dist/flows-ULZACISF.js +0 -248
- package/dist/flows-ULZACISF.js.map +0 -1
- package/dist/fonts-TTUAP7HS.js +0 -37
- package/dist/forecast-4AG5F7YC.js +0 -169
- package/dist/forecast-RQJJRN5D.js +0 -119
- package/dist/forecast-RQJJRN5D.js.map +0 -1
- package/dist/funnel-QPWJIXWK.js +0 -395
- package/dist/funnel-QPWJIXWK.js.map +0 -1
- package/dist/generate-NWHPM2GQ.js +0 -263
- package/dist/get-35D7YHWJ.js +0 -57
- package/dist/get-35D7YHWJ.js.map +0 -1
- package/dist/get-GIETDPF4.js +0 -80
- package/dist/get-GIETDPF4.js.map +0 -1
- package/dist/google-NAA4BASO.js +0 -3267
- package/dist/google-ads-2IZFZO4C.js +0 -196
- package/dist/google-ads-2IZFZO4C.js.map +0 -1
- package/dist/history-5MRLNTCI.js +0 -67
- package/dist/history-5MRLNTCI.js.map +0 -1
- package/dist/history-RPLWWPLQ.js +0 -134
- package/dist/history-RPLWWPLQ.js.map +0 -1
- package/dist/history-TQYLUYVU.js +0 -100
- package/dist/history-TQYLUYVU.js.map +0 -1
- package/dist/hubspot-EPK43X4C.js +0 -780
- package/dist/hubspot-EPK43X4C.js.map +0 -1
- package/dist/ideas-SUXKKZC7.js +0 -43
- package/dist/images-VKVZ3DWG.js +0 -92
- package/dist/ingest-BBBFT6FZ.js +0 -24
- package/dist/ingest-EM2UY42Z.js +0 -108
- package/dist/ingest-EM2UY42Z.js.map +0 -1
- package/dist/insights-M3CYB22P.js +0 -437
- package/dist/insights-M3CYB22P.js.map +0 -1
- package/dist/insights-XCT3ONC7.js +0 -130
- package/dist/insights-XCT3ONC7.js.map +0 -1
- package/dist/inspect-ZPOVOENK.js +0 -190
- package/dist/inspect-ZPOVOENK.js.map +0 -1
- package/dist/instant-experiences-HT3HB4QZ.js +0 -258
- package/dist/instant-experiences-HT3HB4QZ.js.map +0 -1
- package/dist/intent-NSHW7EJT.js +0 -95
- package/dist/keyword-gap-ITTWKBWZ.js +0 -130
- package/dist/keyword-metrics-7DPR264W.js +0 -198
- package/dist/keyword-metrics-7DPR264W.js.map +0 -1
- package/dist/keywords-for-site-IXL22UKQ.js +0 -129
- package/dist/keywords-for-site-IXL22UKQ.js.map +0 -1
- package/dist/landing-KZ4OSHHR.js +0 -28
- package/dist/languages-MEFQQBJ2.js +0 -40
- package/dist/leads-DNQTRYIR.js +0 -113
- package/dist/leads-DNQTRYIR.js.map +0 -1
- package/dist/leads-SZOGCQFK.js +0 -538
- package/dist/leads-SZOGCQFK.js.map +0 -1
- package/dist/learn-Q7WZG7FA.js +0 -205
- package/dist/learn-Q7WZG7FA.js.map +0 -1
- package/dist/line-item-writes-3K7FT5GO.js +0 -209
- package/dist/line-item-writes-3K7FT5GO.js.map +0 -1
- package/dist/line-items-G5YJG25N.js +0 -107
- package/dist/link-2QVSIZJT.js +0 -65
- package/dist/link-2QVSIZJT.js.map +0 -1
- package/dist/linkedin-VAFPZNWZ.js +0 -1314
- package/dist/linkedin-VAFPZNWZ.js.map +0 -1
- package/dist/linkedin-person-EHTYVNZY.js +0 -137
- package/dist/linkedin-person-EHTYVNZY.js.map +0 -1
- package/dist/list-5TS2VPQZ.js +0 -152
- package/dist/list-5TS2VPQZ.js.map +0 -1
- package/dist/list-PSSQXQRJ.js +0 -65
- package/dist/list-PSSQXQRJ.js.map +0 -1
- package/dist/list-UMVIFQ3X.js +0 -304
- package/dist/list-UMVIFQ3X.js.map +0 -1
- package/dist/locations-RLWAS6AC.js +0 -40
- package/dist/locations-UKBOT6SB.js +0 -67
- package/dist/locations-UKBOT6SB.js.map +0 -1
- package/dist/log-ZZK3QMZB.js +0 -93
- package/dist/log-ZZK3QMZB.js.map +0 -1
- package/dist/lookup-ZJIP2M4X.js +0 -22
- package/dist/make-DB2BDVB3.js +0 -1368
- package/dist/make-DB2BDVB3.js.map +0 -1
- package/dist/map-UJ23GKRH.js +0 -434
- package/dist/map-UJ23GKRH.js.map +0 -1
- package/dist/mcp-SS2ALFRJ.js +0 -715
- package/dist/mcp-SS2ALFRJ.js.map +0 -1
- package/dist/media-ZWN7E777.js +0 -18
- package/dist/media-sources-GKSEDSE3.js +0 -35
- package/dist/members-KD2XRYPZ.js +0 -45
- package/dist/members-KD2XRYPZ.js.map +0 -1
- package/dist/meta-EHKXH257.js +0 -122
- package/dist/metrics-K6FDCMK7.js +0 -152
- package/dist/models-JQEPSPNQ.js +0 -155
- package/dist/normalize-ZNTXNX6D.js +0 -142
- package/dist/normalize-ZNTXNX6D.js.map +0 -1
- package/dist/options-TBIFJF3E.js +0 -123
- package/dist/options-TBIFJF3E.js.map +0 -1
- package/dist/organization-26J2ZIKM.js +0 -947
- package/dist/organization-26J2ZIKM.js.map +0 -1
- package/dist/page-photos-HWKQOSCU.js +0 -116
- package/dist/page-photos-HWKQOSCU.js.map +0 -1
- package/dist/performance-6TPJGM6A.js +0 -25
- package/dist/performance-O5BXZGS6.js +0 -5539
- package/dist/performance-O5BXZGS6.js.map +0 -1
- package/dist/pixels-Z7ZGXAGB.js +0 -60
- package/dist/pixels-Z7ZGXAGB.js.map +0 -1
- package/dist/plan-TVQSEKYL.js +0 -207
- package/dist/plan-TVQSEKYL.js.map +0 -1
- package/dist/preview-CWRGDFCP.js +0 -216
- package/dist/preview-CWRGDFCP.js.map +0 -1
- package/dist/promoted-tweet-writes-SZN74JHY.js +0 -181
- package/dist/promoted-tweet-writes-SZN74JHY.js.map +0 -1
- package/dist/promoted-tweets-7P4TSQU7.js +0 -119
- package/dist/publish-3DUERLGT.js +0 -342
- package/dist/publish-3DUERLGT.js.map +0 -1
- package/dist/query-QM7MBQD7.js +0 -62
- package/dist/questionnaire-LEZJLMAV.js +0 -93
- package/dist/questionnaire-LEZJLMAV.js.map +0 -1
- package/dist/reddit-SN5CESF4.js +0 -27
- package/dist/refresh-2ICQBTK4.js +0 -95
- package/dist/refresh-2ICQBTK4.js.map +0 -1
- package/dist/release-JSZ4JXYJ.js +0 -61
- package/dist/release-JSZ4JXYJ.js.map +0 -1
- package/dist/relevant-pages-VOICMQ7U.js +0 -99
- package/dist/remove-TFUAVRFM.js +0 -51
- package/dist/remove-TFUAVRFM.js.map +0 -1
- package/dist/reopen-5T2PE7MU.js +0 -64
- package/dist/reopen-5T2PE7MU.js.map +0 -1
- package/dist/rerun-EZJ4MLYG.js +0 -93
- package/dist/rerun-EZJ4MLYG.js.map +0 -1
- package/dist/research-BKYSU2C6.js +0 -263
- package/dist/research-BKYSU2C6.js.map +0 -1
- package/dist/research-QU63CJB5.js +0 -72
- package/dist/reset-DKTKZF7G.js +0 -55
- package/dist/reset-DKTKZF7G.js.map +0 -1
- package/dist/reset-SXABIVP6.js +0 -55
- package/dist/reset-SXABIVP6.js.map +0 -1
- package/dist/resolve-L47U2T77.js +0 -122
- package/dist/resolve-L47U2T77.js.map +0 -1
- package/dist/retry-JEWPK2B5.js +0 -63
- package/dist/retry-JEWPK2B5.js.map +0 -1
- package/dist/retry-SXFVLT3W.js +0 -61
- package/dist/retry-SXFVLT3W.js.map +0 -1
- package/dist/revenue-2MAYTXRM.js +0 -89
- package/dist/revenue-2MAYTXRM.js.map +0 -1
- package/dist/rule-writes-S3RN47OG.js +0 -523
- package/dist/rule-writes-S3RN47OG.js.map +0 -1
- package/dist/rules-CHWTFASP.js +0 -97
- package/dist/rules-CHWTFASP.js.map +0 -1
- package/dist/rules-KTJ2ZZ62.js +0 -217
- package/dist/rules-add-3M5TALWN.js +0 -463
- package/dist/rules-add-3M5TALWN.js.map +0 -1
- package/dist/run-2DLA6YO4.js +0 -68
- package/dist/run-JCGH2NHD.js +0 -67
- package/dist/run-JCGH2NHD.js.map +0 -1
- package/dist/scaffold-ad-VEW7JDY7.js +0 -1514
- package/dist/scaffold-ad-VEW7JDY7.js.map +0 -1
- package/dist/scaffold-static-ad-DYRL7DOS.js +0 -1013
- package/dist/scaffold-static-ad-DYRL7DOS.js.map +0 -1
- package/dist/scaffold-video-YRAVVKUH.js +0 -886
- package/dist/scaffold-video-YRAVVKUH.js.map +0 -1
- package/dist/schedule-WYIC6VNW.js +0 -62
- package/dist/schedule-WYIC6VNW.js.map +0 -1
- package/dist/scheduled-agents-FRBF4EOK.js +0 -55
- package/dist/schema-6Y3IXFDC.js +0 -69
- package/dist/schema-TC2O3FYY.js +0 -133
- package/dist/schema-TC2O3FYY.js.map +0 -1
- package/dist/search-VDW242BN.js +0 -175
- package/dist/search-VDW242BN.js.map +0 -1
- package/dist/select-O5HSSC36.js +0 -104
- package/dist/select-O5HSSC36.js.map +0 -1
- package/dist/sends-6FI7WELX.js +0 -348
- package/dist/sends-6FI7WELX.js.map +0 -1
- package/dist/set-prompt-TI7N64PJ.js +0 -196
- package/dist/set-prompt-TI7N64PJ.js.map +0 -1
- package/dist/setup-links-BM2FTXUZ.js +0 -142
- package/dist/setup-links-BM2FTXUZ.js.map +0 -1
- package/dist/shopify-FIHG5PYP.js +0 -3956
- package/dist/shopify-FIHG5PYP.js.map +0 -1
- package/dist/site-S3IGBMVC.js +0 -178
- package/dist/site-S3IGBMVC.js.map +0 -1
- package/dist/sources-77WLFY4Y.js +0 -30
- package/dist/sources-A4B3R5JC.js +0 -455
- package/dist/sources-A4B3R5JC.js.map +0 -1
- package/dist/stale-YIRCXDOK.js +0 -74
- package/dist/stale-YIRCXDOK.js.map +0 -1
- package/dist/status-6YNR647D.js +0 -63
- package/dist/status-6YNR647D.js.map +0 -1
- package/dist/studies-ZOEUY6YP.js +0 -250
- package/dist/studio-T5L7UEX6.js +0 -49
- package/dist/study-writes-DTGMCNFP.js +0 -468
- package/dist/study-writes-DTGMCNFP.js.map +0 -1
- package/dist/sync-FFVWHGLE.js +0 -55
- package/dist/sync-FFVWHGLE.js.map +0 -1
- package/dist/sync-definition-K4XOAG2B.js +0 -67
- package/dist/tags-5KIOGEKN.js +0 -21
- package/dist/tags-5KIOGEKN.js.map +0 -1
- package/dist/tags-BKAN5EAJ.js +0 -21
- package/dist/tags-BKAN5EAJ.js.map +0 -1
- package/dist/tags-ETOOYQ57.js +0 -26
- package/dist/tags-RPNK7TMO.js +0 -225
- package/dist/tags-RPNK7TMO.js.map +0 -1
- package/dist/tags-UM4QO46J.js +0 -21
- package/dist/tags-UM4QO46J.js.map +0 -1
- package/dist/targeting-VBQY3HUN.js +0 -760
- package/dist/targeting-VBQY3HUN.js.map +0 -1
- package/dist/targeting-criteria-L4DYIJZI.js +0 -113
- package/dist/targets-S6N7327Q.js +0 -104
- package/dist/targets-S6N7327Q.js.map +0 -1
- package/dist/testimonials-65N7IYN7.js +0 -32
- package/dist/themes-B4LCQUXB.js +0 -95
- package/dist/top-companies-SJKND75M.js +0 -109
- package/dist/top-companies-SJKND75M.js.map +0 -1
- package/dist/transcript-5I7I6DWL.js +0 -163
- package/dist/transcript-5I7I6DWL.js.map +0 -1
- package/dist/translate-SH6IG5Y7.js +0 -607
- package/dist/translate-SH6IG5Y7.js.map +0 -1
- package/dist/triggers-YRY3HTYU.js +0 -142
- package/dist/triggers-YRY3HTYU.js.map +0 -1
- package/dist/unlink-4B4YTQE4.js +0 -68
- package/dist/unlink-4B4YTQE4.js.map +0 -1
- package/dist/unstage-H5NTDJ6A.js +0 -86
- package/dist/unstage-H5NTDJ6A.js.map +0 -1
- package/dist/unstage-MDSSPUKV.js +0 -95
- package/dist/unstage-MDSSPUKV.js.map +0 -1
- package/dist/update-DI52JJGB.js +0 -99
- package/dist/update-DI52JJGB.js.map +0 -1
- package/dist/update-DMPDLMMV.js +0 -64
- package/dist/update-DMPDLMMV.js.map +0 -1
- package/dist/update-TUS4PJIG.js +0 -190
- package/dist/update-TUS4PJIG.js.map +0 -1
- package/dist/update-Z66LMXNS.js +0 -153
- package/dist/update-Z66LMXNS.js.map +0 -1
- package/dist/upload-7KQYZ7T7.js +0 -127
- package/dist/upload-7KQYZ7T7.js.map +0 -1
- package/dist/url-options-IHL4OU4C.js +0 -130
- package/dist/url-options-IHL4OU4C.js.map +0 -1
- package/dist/url-params-SDA2MWB5.js +0 -99
- package/dist/url-params-SDA2MWB5.js.map +0 -1
- package/dist/validate-ZABZNCSB.js +0 -120
- package/dist/validate-ZABZNCSB.js.map +0 -1
- package/dist/videos-BKVCCKIH.js +0 -41
- package/dist/viewer-check-B5O7ZY3Q.js +0 -81
- package/dist/web-KN3BTVG4.js +0 -141
- package/dist/web-KN3BTVG4.js.map +0 -1
- package/dist/winning-ads-JIDPISKM.js +0 -86
- package/dist/write-commands-K6M3RTVK.js +0 -1170
- package/dist/write-commands-K6M3RTVK.js.map +0 -1
- package/dist/write-commands-RVHLLLDR.js +0 -1498
- package/dist/write-commands-RVHLLLDR.js.map +0 -1
- package/dist/x-NLGWZCGX.js +0 -47
- /package/dist/{account-assets-O7IA37RE.js.map → account-assets-J5Z4URLQ.js.map} +0 -0
- /package/dist/{account-reads-SNOWDHHF.js.map → account-reads-FOEVPWDP.js.map} +0 -0
- /package/dist/{actions-Y4SULW2E.js.map → actions-QZDSLFFK.js.map} +0 -0
- /package/dist/{ads-2TVWICGM.js.map → ads-AYJAYLFR.js.map} +0 -0
- /package/dist/{ads-KBE5JXCH.js.map → ads-MAOI7S6V.js.map} +0 -0
- /package/dist/{adsets-YWBJFPAZ.js.map → adsets-QRKICEFD.js.map} +0 -0
- /package/dist/{animate-2BMHZ4FM.js.map → animate-HRWFVE2N.js.map} +0 -0
- /package/dist/{asset-writes-72DEVXGO.js.map → asset-writes-JLVUAVUZ.js.map} +0 -0
- /package/dist/{audiences-QAH42HIM.js.map → audiences-CDDI5HR5.js.map} +0 -0
- /package/dist/{avatars-P4UPNZM4.js.map → avatars-4HCGWBOL.js.map} +0 -0
- /package/dist/{brand-HALQWZWB.js.map → brand-C6OB6Q4U.js.map} +0 -0
- /package/dist/{campaigns-XZOQ2VTK.js.map → campaigns-HES5MDUG.js.map} +0 -0
- /package/dist/{campaigns-YMM5TQVO.js.map → campaigns-ZYU4BXDP.js.map} +0 -0
- /package/dist/{canvas-IJS7H3VE.js.map → canvas-AI34UBGU.js.map} +0 -0
- /package/dist/{catalog-TZLU5NWI.js.map → catalog-ZY3MFT55.js.map} +0 -0
- /package/dist/{changes-36C754R4.js.map → changes-OOUVQDBY.js.map} +0 -0
- /package/dist/{chatgpt-3WFOPURY.js.map → chatgpt-NAXIFWXV.js.map} +0 -0
- /package/dist/{chunk-NDFS3APP.js.map → chunk-3CHYJYSS.js.map} +0 -0
- /package/dist/{chunk-QW6HL7D6.js.map → chunk-3G3GC5N4.js.map} +0 -0
- /package/dist/{chunk-5XTGG4PV.js.map → chunk-3M45PYU7.js.map} +0 -0
- /package/dist/{chunk-Z7YMSHRZ.js.map → chunk-3QHXF3QI.js.map} +0 -0
- /package/dist/{chunk-MZCTX37B.js.map → chunk-3XPHUMLJ.js.map} +0 -0
- /package/dist/{chunk-MGYC2IRC.js.map → chunk-45EERHDB.js.map} +0 -0
- /package/dist/{chunk-ZFC562TP.js.map → chunk-4FGTANFK.js.map} +0 -0
- /package/dist/{chunk-PX3PUDK7.js.map → chunk-4IHWT7PH.js.map} +0 -0
- /package/dist/{chunk-PLBITHV6.js.map → chunk-4LF4AYPT.js.map} +0 -0
- /package/dist/{chunk-XGPU2VDU.js.map → chunk-4UQRXKYJ.js.map} +0 -0
- /package/dist/{chunk-SVBJ56T7.js.map → chunk-5JJD33Y2.js.map} +0 -0
- /package/dist/{chunk-I47BEKYK.js.map → chunk-5K4QYYOJ.js.map} +0 -0
- /package/dist/{chunk-MBSFEVOG.js.map → chunk-5LJ6E4YU.js.map} +0 -0
- /package/dist/{chunk-6Z7Y4KQB.js.map → chunk-5T73MMBL.js.map} +0 -0
- /package/dist/{chunk-R53XMPDO.js.map → chunk-64MAHLTK.js.map} +0 -0
- /package/dist/{chunk-JAC6JVCI.js.map → chunk-6OIKNJ7G.js.map} +0 -0
- /package/dist/{chunk-3YJNSUNF.js.map → chunk-6ZFSDYWV.js.map} +0 -0
- /package/dist/{chunk-TVAIOC77.js.map → chunk-7BUIOP36.js.map} +0 -0
- /package/dist/{chunk-ZEC46NWW.js.map → chunk-AN4OEQXE.js.map} +0 -0
- /package/dist/{chunk-TX7CQTD4.js.map → chunk-AULSX5ZA.js.map} +0 -0
- /package/dist/{chunk-MVD7QIXI.js.map → chunk-AVYUFJQQ.js.map} +0 -0
- /package/dist/{chunk-KQTNUDKD.js.map → chunk-B4YF7VQF.js.map} +0 -0
- /package/dist/{chunk-UKSSNYLU.js.map → chunk-BDOYNGUL.js.map} +0 -0
- /package/dist/{chunk-BRLZX3VP.js.map → chunk-BJOK7QD4.js.map} +0 -0
- /package/dist/{chunk-Z2DRGXBB.js.map → chunk-CMCGFSUS.js.map} +0 -0
- /package/dist/{chunk-KBRJSPIM.js.map → chunk-DMJUIUAL.js.map} +0 -0
- /package/dist/{chunk-HML3VQIW.js.map → chunk-DUCUOZLS.js.map} +0 -0
- /package/dist/{chunk-7HZSORAB.js.map → chunk-FJZYOVSW.js.map} +0 -0
- /package/dist/{chunk-GMHCHHAA.js.map → chunk-FKP4ECJY.js.map} +0 -0
- /package/dist/{chunk-RVEY7BTT.js.map → chunk-GNMEOU46.js.map} +0 -0
- /package/dist/{chunk-AYPBARKP.js.map → chunk-GYKYXWUQ.js.map} +0 -0
- /package/dist/{chunk-MUXKYSTI.js.map → chunk-GYPLRU4Y.js.map} +0 -0
- /package/dist/{chunk-YNYAT2TZ.js.map → chunk-I43ZEWJQ.js.map} +0 -0
- /package/dist/{chunk-4GAEB6NK.js.map → chunk-IZABTTW5.js.map} +0 -0
- /package/dist/{chunk-GACSA5A6.js.map → chunk-K7IE6UYV.js.map} +0 -0
- /package/dist/{chunk-BTJSGJNQ.js.map → chunk-KH5YHHJV.js.map} +0 -0
- /package/dist/{chunk-C7QQQVBS.js.map → chunk-KMY7AD3N.js.map} +0 -0
- /package/dist/{chunk-6KWEF6HF.js.map → chunk-KPCHWDJM.js.map} +0 -0
- /package/dist/{chunk-SWN6OHXG.js.map → chunk-KTZCLJ2D.js.map} +0 -0
- /package/dist/{chunk-A3IQAONL.js.map → chunk-MKUA54QE.js.map} +0 -0
- /package/dist/{chunk-FFFJBNHA.js.map → chunk-MTV2RSGY.js.map} +0 -0
- /package/dist/{chunk-G5Y7OIPL.js.map → chunk-N2QX57K3.js.map} +0 -0
- /package/dist/{chunk-OJGYYH6K.js.map → chunk-NB2FU6EZ.js.map} +0 -0
- /package/dist/{chunk-SCL7PM6P.js.map → chunk-NEYWS2DQ.js.map} +0 -0
- /package/dist/{chunk-TVTSA4EN.js.map → chunk-NWF2LRKO.js.map} +0 -0
- /package/dist/{chunk-W574NV67.js.map → chunk-OTC6UMJ2.js.map} +0 -0
- /package/dist/{chunk-QMDMTZAW.js.map → chunk-OUY2IAWL.js.map} +0 -0
- /package/dist/{chunk-FPWQA7TK.js.map → chunk-PJXNCRMR.js.map} +0 -0
- /package/dist/{chunk-ARUXGKZO.js.map → chunk-PYQ3GF7R.js.map} +0 -0
- /package/dist/{chunk-DUR7PEJI.js.map → chunk-Q3EIVZAR.js.map} +0 -0
- /package/dist/{chunk-OBJCNGZL.js.map → chunk-QDQZ62FL.js.map} +0 -0
- /package/dist/{chunk-LRV6M2WB.js.map → chunk-QHZE62GP.js.map} +0 -0
- /package/dist/{chunk-PLAOK4AK.js.map → chunk-RGR6TSTJ.js.map} +0 -0
- /package/dist/{chunk-HSQRITKG.js.map → chunk-SAAXU7QR.js.map} +0 -0
- /package/dist/{chunk-H4NNQGG6.js.map → chunk-SHTKLRI6.js.map} +0 -0
- /package/dist/{chunk-MZPS46OR.js.map → chunk-SIKCVWM3.js.map} +0 -0
- /package/dist/{chunk-RFIUOQLN.js.map → chunk-SSXG53CZ.js.map} +0 -0
- /package/dist/{chunk-5SRUAGTG.js.map → chunk-TBWAM577.js.map} +0 -0
- /package/dist/{chunk-AIRD6T4W.js.map → chunk-TGPGQTZA.js.map} +0 -0
- /package/dist/{chunk-F4YQ5PVR.js.map → chunk-UMIX2BMM.js.map} +0 -0
- /package/dist/{chunk-ZNRGH4NS.js.map → chunk-URMAEVZO.js.map} +0 -0
- /package/dist/{chunk-QBRPM3DQ.js.map → chunk-VBO3ZVUU.js.map} +0 -0
- /package/dist/{chunk-N7M2TWR5.js.map → chunk-VFLYMHTO.js.map} +0 -0
- /package/dist/{chunk-XQXZJ5IR.js.map → chunk-VGYIVXIZ.js.map} +0 -0
- /package/dist/{chunk-AQOFQNKQ.js.map → chunk-VIB7R533.js.map} +0 -0
- /package/dist/{chunk-D3KLDIPQ.js.map → chunk-WLESMH4J.js.map} +0 -0
- /package/dist/{chunk-SM7G7RUA.js.map → chunk-WVWLPXBO.js.map} +0 -0
- /package/dist/{chunk-5RVQK3SP.js.map → chunk-XEH5XAP6.js.map} +0 -0
- /package/dist/{chunk-P6BKKUSX.js.map → chunk-XEOKVL4E.js.map} +0 -0
- /package/dist/{chunk-FFG2OYVV.js.map → chunk-XOGQJYXH.js.map} +0 -0
- /package/dist/{chunk-YMF2RG4Z.js.map → chunk-XUXRA7IB.js.map} +0 -0
- /package/dist/{connect-PP6Z3F7Y.js.map → connect-IAXSZPGA.js.map} +0 -0
- /package/dist/{conversion-upload-command-KTYAY7IG.js.map → conversion-upload-command-IHFKVX2M.js.map} +0 -0
- /package/dist/{creatives-JPKA2RHU.js.map → creatives-BB6S2OF6.js.map} +0 -0
- /package/dist/{creatives-UJDPD4CI.js.map → creatives-BZEVJ6ER.js.map} +0 -0
- /package/dist/{currency-R4ORE2U3.js.map → currency-CGKO5GKH.js.map} +0 -0
- /package/dist/{custom-conversions-5HJBB5XL.js.map → custom-conversions-HAGG72LF.js.map} +0 -0
- /package/dist/{customers-7J3QGSOJ.js.map → customers-NKKU6S7G.js.map} +0 -0
- /package/dist/{discover-GSJRZUOC.js.map → discover-VM3O7CQM.js.map} +0 -0
- /package/dist/{draft-WYDMLNYA.js.map → draft-CRDBU6LF.js.map} +0 -0
- /package/dist/{fit-N7WDGWYZ.js.map → fit-Q5GRVF2O.js.map} +0 -0
- /package/dist/{fonts-TTUAP7HS.js.map → fonts-GD4YRXQU.js.map} +0 -0
- /package/dist/{forecast-4AG5F7YC.js.map → forecast-ONVS2QAI.js.map} +0 -0
- /package/dist/{generate-NWHPM2GQ.js.map → generate-VBEY3N3L.js.map} +0 -0
- /package/dist/{google-NAA4BASO.js.map → google-7EZP7I6J.js.map} +0 -0
- /package/dist/{ideas-SUXKKZC7.js.map → ideas-WX7EBPSF.js.map} +0 -0
- /package/dist/{images-VKVZ3DWG.js.map → images-4AXF4LAC.js.map} +0 -0
- /package/dist/{ingest-BBBFT6FZ.js.map → ingest-C3M4GUO6.js.map} +0 -0
- /package/dist/{intent-NSHW7EJT.js.map → intent-ZMYMFGB4.js.map} +0 -0
- /package/dist/{keyword-gap-ITTWKBWZ.js.map → keyword-gap-XSJO2R77.js.map} +0 -0
- /package/dist/{landing-KZ4OSHHR.js.map → landing-MUNYZQNA.js.map} +0 -0
- /package/dist/{languages-MEFQQBJ2.js.map → languages-DIQ3OG3E.js.map} +0 -0
- /package/dist/{line-items-G5YJG25N.js.map → line-items-JR25T2C5.js.map} +0 -0
- /package/dist/{locations-RLWAS6AC.js.map → locations-HTVYJSDJ.js.map} +0 -0
- /package/dist/{lookup-ZJIP2M4X.js.map → lookup-S5VG7AWH.js.map} +0 -0
- /package/dist/{media-ZWN7E777.js.map → media-P4T4ZBNS.js.map} +0 -0
- /package/dist/{media-sources-GKSEDSE3.js.map → media-sources-P246GM7W.js.map} +0 -0
- /package/dist/{meta-EHKXH257.js.map → meta-IPLWNYC7.js.map} +0 -0
- /package/dist/{metrics-K6FDCMK7.js.map → metrics-WYWUX6Y5.js.map} +0 -0
- /package/dist/{models-JQEPSPNQ.js.map → models-HJ7Y55AH.js.map} +0 -0
- /package/dist/{performance-6TPJGM6A.js.map → performance-J3DLNI2W.js.map} +0 -0
- /package/dist/{promoted-tweets-7P4TSQU7.js.map → promoted-tweets-W42FNWS7.js.map} +0 -0
- /package/dist/{query-QM7MBQD7.js.map → query-IQICLABN.js.map} +0 -0
- /package/dist/{reddit-SN5CESF4.js.map → reddit-X4CERXYF.js.map} +0 -0
- /package/dist/{relevant-pages-VOICMQ7U.js.map → relevant-pages-UDDQOYLD.js.map} +0 -0
- /package/dist/{research-QU63CJB5.js.map → research-D5UUJF74.js.map} +0 -0
- /package/dist/{rules-KTJ2ZZ62.js.map → rules-ZVS2MWED.js.map} +0 -0
- /package/dist/{run-2DLA6YO4.js.map → run-T7XAH2W5.js.map} +0 -0
- /package/dist/{scheduled-agents-FRBF4EOK.js.map → scheduled-agents-ZGCUZ6SB.js.map} +0 -0
- /package/dist/{schema-6Y3IXFDC.js.map → schema-D6BMZAPB.js.map} +0 -0
- /package/dist/{sources-77WLFY4Y.js.map → sources-DVMJEXEX.js.map} +0 -0
- /package/dist/{studies-ZOEUY6YP.js.map → studies-EPO2AM4M.js.map} +0 -0
- /package/dist/{studio-T5L7UEX6.js.map → studio-5Z4NMA4K.js.map} +0 -0
- /package/dist/{sync-definition-K4XOAG2B.js.map → sync-definition-F3CXG6KG.js.map} +0 -0
- /package/dist/{tags-ETOOYQ57.js.map → tags-SEZ2CQJM.js.map} +0 -0
- /package/dist/{targeting-criteria-L4DYIJZI.js.map → targeting-criteria-AU5CSMAU.js.map} +0 -0
- /package/dist/{testimonials-65N7IYN7.js.map → testimonials-Y6PUV6AL.js.map} +0 -0
- /package/dist/{themes-B4LCQUXB.js.map → themes-PGPIAKAO.js.map} +0 -0
- /package/dist/{videos-BKVCCKIH.js.map → videos-SVZV5YYC.js.map} +0 -0
- /package/dist/{viewer-check-B5O7ZY3Q.js.map → viewer-check-LUAEGV6H.js.map} +0 -0
- /package/dist/{winning-ads-JIDPISKM.js.map → winning-ads-KNLJHHCO.js.map} +0 -0
- /package/dist/{x-NLGWZCGX.js.map → x-ZQNHYIDU.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/commands/ads/chatgpt/draft.ts","../src/commands/ads/chatgpt/draft-status.ts"],"sourcesContent":["import { readFileSync } from \"node:fs\";\nimport type {\n ChatgptDraftClearResponse,\n ChatgptDraftListResponse,\n ChatgptDraftRemoveResponse,\n ChatgptDraftShowResponse,\n ChatgptDraftStageResponse,\n} from \"@baker/api/ads-chatgpt\";\nimport { defineCommand } from \"citty\";\nimport { apiPost } from \"../../../client.ts\";\nimport { requireChatId, resolveChatId } from \"../../../env.ts\";\nimport { registerSchema } from \"../../../schemas.ts\";\nimport { CHAT_READ_ARG } from \"../../chat-arg.ts\";\nimport { writeJsonEnvelope } from \"../output.ts\";\nimport { renderChatgptDraftStatus } from \"./draft-status.ts\";\nimport { CHATGPT_ADS_REFERENCE, chatgptFailure } from \"./shared.ts\";\nimport { failWriteValidation, schemaArgs } from \"./write-shared.ts\";\n\n/**\n * Review and edit the ChatGPT Ads changes staged on this chat. Nothing staged\n * has reached ChatGPT Ads; it all applies when the chat is published.\n */\n\n/** The ChatGPT Ads routes answer with the payload itself; the envelope is the CLI's to add. */\nasync function run<T>(call: () => Promise<T>): Promise<void> {\n try {\n writeJsonEnvelope({ ok: true, data: await call() });\n } catch (err) {\n writeJsonEnvelope({ ...chatgptFailure(err, CHATGPT_ADS_REFERENCE.overview) });\n process.exit(1);\n }\n}\n\nconst LIST_ARGS = {\n json: { type: \"boolean\", description: \"Print the raw JSON envelope instead of the readable tree\" },\n chat: CHAT_READ_ARG,\n} as const;\n\nregisterSchema({\n command: \"ads.chatgpt.draft\",\n description:\n \"Review everything staged for ChatGPT Ads on this chat as a Campaign ▸ Ad group ▸ Ad tree. After a publish this is the authoritative record: `published · N applied`, or a `✗ … failed:` line per change that did not land, with ChatGPT Ads' reason.\",\n args: schemaArgs(LIST_ARGS),\n});\n\nconst listCommand = defineCommand({\n meta: {\n name: \"list\",\n description: \"Review everything staged as a Campaign ▸ Ad group ▸ Ad tree. Example: baker ads chatgpt draft\",\n },\n args: LIST_ARGS,\n run: async ({ args }) => {\n try {\n const draft = await apiPost<ChatgptDraftListResponse>(\"/api/ads/chatgpt/draft\", {\n chatId: resolveChatId(args.chat),\n });\n if (args.json === true) {\n writeJsonEnvelope({ ok: true, data: draft });\n return;\n }\n process.stdout.write(`${renderChatgptDraftStatus(draft)}\\n`);\n } catch (err) {\n writeJsonEnvelope({ ...chatgptFailure(err, CHATGPT_ADS_REFERENCE.overview) });\n process.exit(1);\n }\n },\n});\n\nconst SHOW_ARGS = {\n ref: {\n type: \"positional\",\n description: \"Op ref (chatgpt_temp_* for creates), or the target id for a staged update\",\n required: true,\n },\n chat: CHAT_READ_ARG,\n} as const;\n\nregisterSchema({\n command: \"ads.chatgpt.draft.show\",\n description:\n \"The full staged payload, warnings and before-snapshot for one change — the receipt to check before publishing.\",\n args: schemaArgs(SHOW_ARGS),\n});\n\nconst showCommand = defineCommand({\n meta: {\n name: \"show\",\n description: \"Show one staged change in full. Example: baker ads chatgpt draft show chatgpt_temp_ab12\",\n },\n args: SHOW_ARGS,\n run: async ({ args }) => {\n await run(() =>\n apiPost<ChatgptDraftShowResponse>(\"/api/ads/chatgpt/draft/show\", {\n chatId: resolveChatId(args.chat),\n ref: String(args.ref),\n }),\n );\n },\n});\n\nconst AMEND_ARGS = {\n ref: { type: \"positional\", description: \"Op ref or target id\", required: true },\n patch: { type: \"positional\", description: \"JSON object, or @path to a file holding one\", required: true },\n} as const;\n\nregisterSchema({\n command: \"ads.chatgpt.draft.amend\",\n description:\n \"Change a staged op in place instead of removing and re-staging it. The patch merges into the payload (JSON merge-patch: `null` deletes a key; money is in micros) and the whole op re-validates.\",\n args: schemaArgs(AMEND_ARGS),\n});\n\nconst amendCommand = defineCommand({\n meta: {\n name: \"amend\",\n description: `Change a staged op in place. Money in the payload is micros: 20 = 20000000.\n\nExample:\n baker ads chatgpt draft amend chatgpt_temp_ab12 '{\"dailyBudgetMicros\": 30000000}'`,\n },\n args: AMEND_ARGS,\n run: async ({ args }) => {\n const raw = String(args.patch);\n let patch: unknown;\n try {\n patch = JSON.parse(raw.startsWith(\"@\") ? readFileSync(raw.slice(1), \"utf8\") : raw);\n } catch {\n failWriteValidation(\"patch must be a JSON object, or @path to a file holding one\");\n }\n if (patch === null || typeof patch !== \"object\" || Array.isArray(patch)) {\n failWriteValidation(\"patch must be a JSON object\");\n }\n await run(() =>\n apiPost<ChatgptDraftStageResponse>(\"/api/ads/chatgpt/draft/amend\", {\n chatId: requireChatId(),\n ref: String(args.ref),\n patch,\n }),\n );\n },\n});\n\nconst REMOVE_ARGS = { ref: { type: \"positional\", description: \"Op ref or target id\", required: true } } as const;\n\nregisterSchema({\n command: \"ads.chatgpt.draft.remove\",\n description: \"Drop one staged ChatGPT Ads change. Removing a create also drops everything staged under it.\",\n args: schemaArgs(REMOVE_ARGS),\n});\n\nconst removeCommand = defineCommand({\n meta: {\n name: \"remove\",\n description:\n \"Drop one staged change (and what depends on it). Example: baker ads chatgpt draft remove chatgpt_temp_ab12\",\n },\n args: REMOVE_ARGS,\n run: async ({ args }) => {\n await run(() =>\n apiPost<ChatgptDraftRemoveResponse>(\"/api/ads/chatgpt/draft/remove\", {\n chatId: requireChatId(),\n ref: String(args.ref),\n }),\n );\n },\n});\n\nregisterSchema({\n command: \"ads.chatgpt.draft.clear\",\n description:\n \"Drop every staged ChatGPT Ads change on this chat. Nothing reached ChatGPT Ads, so nothing needs reversing.\",\n args: {},\n});\n\nconst clearCommand = defineCommand({\n meta: {\n name: \"clear\",\n description: \"Drop every staged ChatGPT Ads change on this chat. Example: baker ads chatgpt draft clear\",\n },\n args: {},\n run: async () => {\n await run(() =>\n apiPost<ChatgptDraftClearResponse>(\"/api/ads/chatgpt/draft/clear\", {\n chatId: requireChatId(),\n }),\n );\n },\n});\n\nexport const draftCommand = defineCommand({\n meta: {\n name: \"draft\",\n description: `Review and edit the ChatGPT Ads changes staged on this chat.\n\nNothing staged has reached ChatGPT Ads. Everything applies when the chat is\npublished, and discarding the chat drops all of it.\n\nExamples:\n baker ads chatgpt draft — the Campaign ▸ Ad group ▸ Ad tree\n baker ads chatgpt draft show chatgpt_temp_ab12 — one change in full\n baker ads chatgpt draft amend chatgpt_temp_ab12 '{\"name\":\"New\"}'\n baker ads chatgpt draft remove chatgpt_temp_ab12\n baker ads chatgpt draft clear`,\n },\n subCommands: {\n list: listCommand,\n show: showCommand,\n amend: amendCommand,\n remove: removeCommand,\n clear: clearCommand,\n },\n // A parent must never declare `run`: citty falls through to it after the\n // matched subcommand, so every edit would also print the whole draft.\n args: LIST_ARGS,\n default: \"list\",\n});\n","import type { ChatgptDraftListResponse, ChatgptDraftOpView, ChatgptDraftStatusNode } from \"@baker/api/ads-chatgpt\";\n\n/**\n * The staged ChatGPT Ads draft as a readable Campaign ▸ Ad group ▸ Ad tree.\n * After a publish its first line is the authoritative record: a draft still\n * reading `publishing` minutes later did not finish, whatever ChatGPT Ads shows.\n */\n\nconst OPERATION_LABELS: Record<string, { staged: string; done: string; notDone: string }> = {\n create: { staged: \"Creating\", done: \"Created\", notDone: \"Not created\" },\n update: { staged: \"Updating\", done: \"Updated\", notDone: \"Not updated\" },\n pause: { staged: \"Pausing\", done: \"Paused\", notDone: \"Not paused\" },\n resume: { staged: \"Resuming\", done: \"Resumed\", notDone: \"Not resumed\" },\n archive: { staged: \"Archiving\", done: \"Archived\", notDone: \"Not archived\" },\n};\n\nconst STATUS_HEADINGS: Record<string, string> = {\n active: \"staged\",\n publishing: \"publishing\",\n applied: \"published\",\n discarded: \"discarded\",\n};\n\nfunction badge(node: ChatgptDraftStatusNode): string {\n const label = node.operation ? OPERATION_LABELS[node.operation] : undefined;\n if (!label) {\n return node.existing ? \"on ChatGPT Ads\" : \"staged\";\n }\n if (node.outcome === \"applied\") {\n return label.done;\n }\n return node.outcome ? `${label.notDone} (${node.outcome})` : label.staged;\n}\n\nfunction renderNode(node: ChatgptDraftStatusNode, depth: number, out: string[]): void {\n const indent = \" \".repeat(depth);\n out.push(`${indent}${node.entity}: ${node.name} — ${badge(node)}`);\n for (const warning of node.warnings ?? []) {\n out.push(`${indent} ! ${warning}`);\n }\n for (const child of node.children) {\n renderNode(child, depth + 1, out);\n }\n}\n\nfunction didNotApply(op: ChatgptDraftOpView): boolean {\n return op.result?.status === \"failed\" || op.result?.status === \"skipped\";\n}\n\nfunction didApply(op: ChatgptDraftOpView): boolean {\n return op.result?.status === \"applied\" || op.result?.status === \"simulated\";\n}\n\nfunction headingLine(draft: ChatgptDraftListResponse): string {\n const heading = STATUS_HEADINGS[draft.status] ?? draft.status;\n if (draft.status !== \"applied\" && draft.status !== \"publishing\") {\n return `ChatGPT Ads: ${draft.count} change${draft.count === 1 ? \"\" : \"s\"} ${heading}`;\n }\n const applied = draft.ops.filter(didApply).length;\n const failed = draft.ops.filter(didNotApply).length;\n return `ChatGPT Ads: ${heading} · ${applied} applied${failed > 0 ? `, ${failed} failed` : \"\"}`;\n}\n\nexport function renderChatgptDraftStatus(draft: ChatgptDraftListResponse): string {\n if (draft.status === \"none\" || draft.count === 0) {\n return \"No ChatGPT Ads changes staged\";\n }\n const out = [headingLine(draft), \"\"];\n for (const node of draft.tree ?? []) {\n renderNode(node, 0, out);\n }\n const summaryByRef = new Map(draft.ops.map((op) => [op.ref, op.summary]));\n const problems = draft.ops.filter(didNotApply).map((op) => {\n if (op.result?.status === \"failed\") {\n return `✗ ${op.summary} — failed: ${op.result.error ?? \"ChatGPT Ads gave no reason\"}`;\n }\n const waitedOn = op.result?.skippedBecause;\n const parent = (waitedOn && summaryByRef.get(waitedOn)) ?? \"a change that did not apply\";\n return `✗ ${op.summary} — skipped: waiting on ${parent}, which did not apply`;\n });\n if (problems.length > 0) {\n out.push(\"\", ...problems);\n }\n return out.join(\"\\n\");\n}\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,308 @@
|
|
|
1
|
+
import {
|
|
2
|
+
draftAction,
|
|
3
|
+
draftListAction,
|
|
4
|
+
failWriteValidation,
|
|
5
|
+
handleGoogleError,
|
|
6
|
+
loadJsonPayloads,
|
|
7
|
+
loadPatchArg,
|
|
8
|
+
requireTarget,
|
|
9
|
+
stageGoogleOps
|
|
10
|
+
} from "./chunk-DMJUIUAL.js";
|
|
11
|
+
import "./chunk-ERSX3MKH.js";
|
|
12
|
+
import "./chunk-SCAGMX2I.js";
|
|
13
|
+
import "./chunk-4NZ47VXO.js";
|
|
14
|
+
import "./chunk-D5FY4FAK.js";
|
|
15
|
+
import "./chunk-QPESDKZC.js";
|
|
16
|
+
import "./chunk-Y2JZX6JB.js";
|
|
17
|
+
import "./chunk-IZABTTW5.js";
|
|
18
|
+
import {
|
|
19
|
+
writeJsonEnvelope
|
|
20
|
+
} from "./chunk-ZRP7Y2DM.js";
|
|
21
|
+
import "./chunk-E44NXCTL.js";
|
|
22
|
+
import "./chunk-EJGAJHLB.js";
|
|
23
|
+
import "./chunk-LNNTHEL7.js";
|
|
24
|
+
import "./chunk-FOMFU2RX.js";
|
|
25
|
+
import "./chunk-PSGIHSNC.js";
|
|
26
|
+
import "./chunk-PONLPYD7.js";
|
|
27
|
+
import {
|
|
28
|
+
CHAT_READ_ARG
|
|
29
|
+
} from "./chunk-PFBQERWX.js";
|
|
30
|
+
import "./chunk-NSBNIPIW.js";
|
|
31
|
+
import {
|
|
32
|
+
GOOGLE_DRAFT_BATCH_MAX
|
|
33
|
+
} from "./chunk-MUS2UTWU.js";
|
|
34
|
+
import {
|
|
35
|
+
apiPost
|
|
36
|
+
} from "./chunk-X7VQFLHI.js";
|
|
37
|
+
import "./chunk-LU4HI4KI.js";
|
|
38
|
+
import {
|
|
39
|
+
requireChatId
|
|
40
|
+
} from "./chunk-LGK7UWBN.js";
|
|
41
|
+
import {
|
|
42
|
+
registerSchema
|
|
43
|
+
} from "./chunk-Q7US4OOA.js";
|
|
44
|
+
import "./chunk-YQSBHWOI.js";
|
|
45
|
+
|
|
46
|
+
// src/commands/ads/google/draft.ts
|
|
47
|
+
import { defineCommand } from "citty";
|
|
48
|
+
|
|
49
|
+
// src/commands/ads/google/draft-batch.ts
|
|
50
|
+
function refuseOversized(count, what) {
|
|
51
|
+
if (count > GOOGLE_DRAFT_BATCH_MAX) {
|
|
52
|
+
failWriteValidation(
|
|
53
|
+
`${count} ${what} exceeds the batch limit of ${GOOGLE_DRAFT_BATCH_MAX} \u2014 split the file and run the command once per part`
|
|
54
|
+
);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
function stageFileOps(items, customerId) {
|
|
58
|
+
if (items.length === 0) {
|
|
59
|
+
failWriteValidation(
|
|
60
|
+
'pass --file with the ops to stage: a JSON array (or JSON Lines) of {"kind","customerId","target"?,"payload"?}'
|
|
61
|
+
);
|
|
62
|
+
}
|
|
63
|
+
refuseOversized(items.length, "ops");
|
|
64
|
+
return items.map((item, index) => {
|
|
65
|
+
if (typeof item.kind !== "string") {
|
|
66
|
+
failWriteValidation(
|
|
67
|
+
`item ${index} has no "kind" \u2014 every item is a whole op, e.g. {"kind":"google.keyword.add",\u2026}`
|
|
68
|
+
);
|
|
69
|
+
}
|
|
70
|
+
return item.customerId === void 0 && customerId ? { ...item, customerId } : item;
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
function amendBatchEntries(items) {
|
|
74
|
+
refuseOversized(items.length, "amends");
|
|
75
|
+
return items.map((item, index) => {
|
|
76
|
+
const { ref, patch } = item;
|
|
77
|
+
if (typeof ref !== "string" || ref.length === 0) {
|
|
78
|
+
failWriteValidation(`item ${index} has no "ref" \u2014 name the staged op (g_temp_* or its target) to amend`);
|
|
79
|
+
}
|
|
80
|
+
if (patch === null || typeof patch !== "object" || Array.isArray(patch)) {
|
|
81
|
+
failWriteValidation(`item ${index} has no "patch" object \u2014 {"ref":"\u2026","patch":{\u2026fields to change\u2026}}`);
|
|
82
|
+
}
|
|
83
|
+
return { ref, patch };
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
// src/commands/ads/google/draft-validate.ts
|
|
88
|
+
var QUIET = /* @__PURE__ */ new Set(["accepted", "applied"]);
|
|
89
|
+
function changes(n) {
|
|
90
|
+
return n === 1 ? "1 change" : `${n} changes`;
|
|
91
|
+
}
|
|
92
|
+
function validationHints(data) {
|
|
93
|
+
const { refused, blocked, unchecked } = data.counts;
|
|
94
|
+
const hints = [];
|
|
95
|
+
if (refused > 0) {
|
|
96
|
+
hints.push(
|
|
97
|
+
`${changes(refused)} would fail at publish. Fix each refused op in place with \`draft amend <ref>\` (or \`draft remove <ref>\` if it should not exist), then run \`draft validate\` again before asking the user to publish. Never tell the user a refused change will go live.`
|
|
98
|
+
);
|
|
99
|
+
}
|
|
100
|
+
if (blocked > 0) {
|
|
101
|
+
hints.push(
|
|
102
|
+
`${changes(blocked)} would not apply only because a refused change they depend on fails \u2014 fixing the refused one clears them.`
|
|
103
|
+
);
|
|
104
|
+
}
|
|
105
|
+
if (data.publishHeld) {
|
|
106
|
+
hints.push(
|
|
107
|
+
"Baker would hold this whole publish: a refused change stops a first publish from sending anything. Fix it first."
|
|
108
|
+
);
|
|
109
|
+
}
|
|
110
|
+
if (unchecked > 0) {
|
|
111
|
+
hints.push(
|
|
112
|
+
`${changes(unchecked)} can only be checked by Google at publish (the reason is on each one). Nothing here says they will fail.`
|
|
113
|
+
);
|
|
114
|
+
}
|
|
115
|
+
if (refused + blocked === 0 && !data.publishHeld && data.ops.length > 0) {
|
|
116
|
+
hints.push(
|
|
117
|
+
"Google accepted every change it was asked about. The draft is ready for the user to review and publish."
|
|
118
|
+
);
|
|
119
|
+
}
|
|
120
|
+
return hints;
|
|
121
|
+
}
|
|
122
|
+
function validationEnvelope(data, full = false) {
|
|
123
|
+
const ops = full ? data.ops : data.ops.filter((op) => !QUIET.has(op.verdict));
|
|
124
|
+
return { ok: true, data: { ...data, ops }, hints: validationHints(data) };
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
// src/commands/ads/google/draft.ts
|
|
128
|
+
var VALIDATE_DESCRIPTION = `Ask Google whether the whole staged draft would publish \u2014 without applying anything.
|
|
129
|
+
|
|
130
|
+
Start here, after the last staged change and before telling the user the draft is ready:
|
|
131
|
+
baker ads google draft validate
|
|
132
|
+
|
|
133
|
+
Every staged op is built, batched and sent exactly as publish sends it, with Google's validateOnly
|
|
134
|
+
flag, so each verdict is the answer publish would get: accepted | refused | blocked (a change it
|
|
135
|
+
depends on was refused) | unchecked (only publish can check it) | applied (an earlier publish did).
|
|
136
|
+
Compact by default \u2014 counts, plus only the ops that need attention, each with Google's reason.
|
|
137
|
+
Fix refused ops with \`draft amend <ref>\` and validate again.
|
|
138
|
+
|
|
139
|
+
Examples:
|
|
140
|
+
baker ads google draft validate
|
|
141
|
+
baker ads google draft validate --full # every op, with its built request and Google's raw answer`;
|
|
142
|
+
registerSchema({
|
|
143
|
+
command: "ads.google.draft.validate",
|
|
144
|
+
description: VALIDATE_DESCRIPTION,
|
|
145
|
+
args: {
|
|
146
|
+
full: {
|
|
147
|
+
type: "boolean",
|
|
148
|
+
description: "List every op with its built request and Google's raw answer",
|
|
149
|
+
required: false
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
var STAGE_DESCRIPTION = `Stage many Google Ads changes from ONE file, in one call \u2014 any mix of kinds, up to 500 ops.
|
|
154
|
+
|
|
155
|
+
Start here whenever a change touches more than a few rows (a keyword cleanup, bid changes, pausing
|
|
156
|
+
ads, a list of negatives): write the ops to a file and stage them together instead of running one
|
|
157
|
+
command per row.
|
|
158
|
+
baker ads google draft stage --file changes.json --customer-id 1234567890
|
|
159
|
+
|
|
160
|
+
The file is a JSON array (or JSON Lines, one op per line). Each op is what the single commands
|
|
161
|
+
build \u2014 kind, customerId (or --customer-id for all), target for a change to something that exists,
|
|
162
|
+
payload. Read the shape for a kind with \`baker capabilities google-ads\`.
|
|
163
|
+
[
|
|
164
|
+
{"kind":"google.keyword.add","payload":{"adGroup":"customers/1234567890/adGroups/111","text":"solar panels","matchType":"PHRASE"}},
|
|
165
|
+
{"kind":"google.keyword.update","target":"customers/1234567890/adGroupCriteria/111~222","payload":{"status":"PAUSED"}},
|
|
166
|
+
{"kind":"google.negativeKeyword.add","payload":{"level":"campaign","parent":"222333","text":"free","matchType":"BROAD"}}
|
|
167
|
+
]
|
|
168
|
+
An op may name a g_temp_* ref an EARLIER call returned (a campaign or ad group staged before), but
|
|
169
|
+
not another op in the same file \u2014 a ref exists only once its op is staged, so stage new parents first.
|
|
170
|
+
All-or-nothing: one invalid op stages nothing. Ops already in effect come back as skipped.
|
|
171
|
+
Then: baker ads google draft validate`;
|
|
172
|
+
registerSchema({
|
|
173
|
+
command: "ads.google.draft.stage",
|
|
174
|
+
description: STAGE_DESCRIPTION,
|
|
175
|
+
args: {
|
|
176
|
+
file: {
|
|
177
|
+
type: "string",
|
|
178
|
+
description: "JSON array or JSON Lines of ops ({kind, customerId?, target?, payload?}), path or inline",
|
|
179
|
+
required: true
|
|
180
|
+
},
|
|
181
|
+
"customer-id": {
|
|
182
|
+
type: "string",
|
|
183
|
+
description: "10-digit customer id for every op that does not name its own",
|
|
184
|
+
required: false
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
var BULK_STAGE_HINTS = [
|
|
189
|
+
"Run `baker ads google draft validate` next: it asks Google about every staged op at once and lists only the ones it would refuse.",
|
|
190
|
+
'To fix several staged ops, amend them together: `baker ads google draft amend --file amends.json` with [{"ref":"\u2026","patch":{\u2026}}, \u2026].'
|
|
191
|
+
];
|
|
192
|
+
var draftCommand = defineCommand({
|
|
193
|
+
meta: {
|
|
194
|
+
name: "draft",
|
|
195
|
+
description: "Stage many ops from one file, or list, validate, remove, clear, amend, or show staged Google Ads write ops for this chat. `list` and `show` take --chat <id> to read an earlier chat's changes instead."
|
|
196
|
+
},
|
|
197
|
+
subCommands: {
|
|
198
|
+
stage: defineCommand({
|
|
199
|
+
meta: { name: "stage", description: STAGE_DESCRIPTION },
|
|
200
|
+
args: {
|
|
201
|
+
file: {
|
|
202
|
+
type: "string",
|
|
203
|
+
description: "JSON array or JSON Lines of ops ({kind, customerId?, target?, payload?}), path or inline"
|
|
204
|
+
},
|
|
205
|
+
"customer-id": { type: "string", description: "10-digit customer id for every op that does not name its own" }
|
|
206
|
+
},
|
|
207
|
+
run: async ({ args }) => {
|
|
208
|
+
const customerId = typeof args["customer-id"] === "string" ? args["customer-id"] : void 0;
|
|
209
|
+
await stageGoogleOps(stageFileOps(loadJsonPayloads(args.file), customerId), BULK_STAGE_HINTS);
|
|
210
|
+
}
|
|
211
|
+
}),
|
|
212
|
+
list: defineCommand({
|
|
213
|
+
meta: {
|
|
214
|
+
name: "list",
|
|
215
|
+
description: "Review everything staged as a campaign \u25B8 ad group \u25B8 ad tree (--json for the raw envelope)"
|
|
216
|
+
},
|
|
217
|
+
args: {
|
|
218
|
+
json: { type: "boolean", description: "Print the raw JSON envelope instead of the readable tree" },
|
|
219
|
+
chat: CHAT_READ_ARG
|
|
220
|
+
},
|
|
221
|
+
run: async ({ args }) => {
|
|
222
|
+
await draftListAction(args.json === true, args.chat);
|
|
223
|
+
}
|
|
224
|
+
}),
|
|
225
|
+
remove: defineCommand({
|
|
226
|
+
meta: { name: "remove", description: "Remove one staged op (cascades to dependents)" },
|
|
227
|
+
args: { ref: { type: "positional", description: "Staged op ref (g_temp_* or target)", required: false } },
|
|
228
|
+
run: async ({ args }) => {
|
|
229
|
+
await draftAction("/api/ads/google/draft/remove", { ref: requireTarget(args, "op") });
|
|
230
|
+
}
|
|
231
|
+
}),
|
|
232
|
+
clear: defineCommand({
|
|
233
|
+
meta: { name: "clear", description: "Discard all staged ops on this chat" },
|
|
234
|
+
run: async () => {
|
|
235
|
+
await draftAction("/api/ads/google/draft/clear", {});
|
|
236
|
+
}
|
|
237
|
+
}),
|
|
238
|
+
amend: defineCommand({
|
|
239
|
+
meta: {
|
|
240
|
+
name: "amend",
|
|
241
|
+
description: 'Update a staged op in place \u2014 merges a JSON patch into its payload (RFC-7386: objects deep-merge, null deletes a key, arrays/scalars replace) and re-validates. Use this instead of remove + re-create. Many at once: no ref, and --file holding [{"ref":"g_temp_\u2026","patch":{\u2026}}, \u2026] \u2014 all amended in one call, or none if any is refused.'
|
|
242
|
+
},
|
|
243
|
+
args: {
|
|
244
|
+
ref: {
|
|
245
|
+
type: "positional",
|
|
246
|
+
description: "Staged op ref (g_temp_*) or target id/resource name \u2014 leave out to amend many from --file",
|
|
247
|
+
required: false
|
|
248
|
+
},
|
|
249
|
+
file: {
|
|
250
|
+
type: "string",
|
|
251
|
+
description: 'JSON file with the patch object \u2014 or, with no ref, a JSON array of {"ref","patch"} amends'
|
|
252
|
+
},
|
|
253
|
+
patch: { type: "string", description: "Inline JSON patch object" }
|
|
254
|
+
},
|
|
255
|
+
run: async ({ args }) => {
|
|
256
|
+
const positional = Array.isArray(args._) ? args._[0] : void 0;
|
|
257
|
+
if (!(args.ref ?? positional) && typeof args.file === "string" && args.file.length > 0) {
|
|
258
|
+
const amends = amendBatchEntries(loadJsonPayloads(args.file));
|
|
259
|
+
await draftAction("/api/ads/google/draft/amend-batch", { amends });
|
|
260
|
+
return;
|
|
261
|
+
}
|
|
262
|
+
const ref = requireTarget(args, "op");
|
|
263
|
+
const patch = loadPatchArg(args);
|
|
264
|
+
await draftAction("/api/ads/google/draft/amend", { ref, patch });
|
|
265
|
+
}
|
|
266
|
+
}),
|
|
267
|
+
validate: defineCommand({
|
|
268
|
+
meta: { name: "validate", description: VALIDATE_DESCRIPTION },
|
|
269
|
+
args: {
|
|
270
|
+
full: { type: "boolean", description: "List every op with its built request and Google's raw answer" }
|
|
271
|
+
},
|
|
272
|
+
run: async ({ args }) => {
|
|
273
|
+
try {
|
|
274
|
+
const full = args.full === true;
|
|
275
|
+
const response = await apiPost(
|
|
276
|
+
"/api/ads/google/draft/validate",
|
|
277
|
+
{ chatId: requireChatId(), full }
|
|
278
|
+
);
|
|
279
|
+
writeJsonEnvelope(response.ok && response.data ? validationEnvelope(response.data, full) : response);
|
|
280
|
+
} catch (err) {
|
|
281
|
+
handleGoogleError(err);
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
}),
|
|
285
|
+
show: defineCommand({
|
|
286
|
+
meta: {
|
|
287
|
+
name: "show",
|
|
288
|
+
description: "Print the full staged payload for one op \u2014 the receipt to verify a change looks right before publish (never truncated)."
|
|
289
|
+
},
|
|
290
|
+
args: {
|
|
291
|
+
ref: {
|
|
292
|
+
type: "positional",
|
|
293
|
+
description: "Staged op ref (g_temp_*) or target id/resource name",
|
|
294
|
+
required: false
|
|
295
|
+
},
|
|
296
|
+
chat: CHAT_READ_ARG
|
|
297
|
+
},
|
|
298
|
+
run: async ({ args }) => {
|
|
299
|
+
await draftAction("/api/ads/google/draft/show", { ref: requireTarget(args, "op") }, args.chat);
|
|
300
|
+
}
|
|
301
|
+
})
|
|
302
|
+
}
|
|
303
|
+
});
|
|
304
|
+
export {
|
|
305
|
+
BULK_STAGE_HINTS,
|
|
306
|
+
draftCommand
|
|
307
|
+
};
|
|
308
|
+
//# sourceMappingURL=draft-CRDBU6LF.js.map
|
|
@@ -0,0 +1,310 @@
|
|
|
1
|
+
import {
|
|
2
|
+
loadPatchArg,
|
|
3
|
+
requireTarget
|
|
4
|
+
} from "./chunk-7I6ZVBLM.js";
|
|
5
|
+
import {
|
|
6
|
+
handleLinkedinError
|
|
7
|
+
} from "./chunk-BJOK7QD4.js";
|
|
8
|
+
import "./chunk-SCAGMX2I.js";
|
|
9
|
+
import "./chunk-4NZ47VXO.js";
|
|
10
|
+
import {
|
|
11
|
+
hintLines
|
|
12
|
+
} from "./chunk-D5FY4FAK.js";
|
|
13
|
+
import "./chunk-QPESDKZC.js";
|
|
14
|
+
import {
|
|
15
|
+
writeJsonEnvelope
|
|
16
|
+
} from "./chunk-ZRP7Y2DM.js";
|
|
17
|
+
import "./chunk-E44NXCTL.js";
|
|
18
|
+
import "./chunk-EJGAJHLB.js";
|
|
19
|
+
import "./chunk-LNNTHEL7.js";
|
|
20
|
+
import "./chunk-FOMFU2RX.js";
|
|
21
|
+
import "./chunk-PSGIHSNC.js";
|
|
22
|
+
import "./chunk-PONLPYD7.js";
|
|
23
|
+
import {
|
|
24
|
+
CHAT_READ_ARG
|
|
25
|
+
} from "./chunk-PFBQERWX.js";
|
|
26
|
+
import "./chunk-NZ34KM46.js";
|
|
27
|
+
import "./chunk-CAZGM2NX.js";
|
|
28
|
+
import "./chunk-NZS3KEQ2.js";
|
|
29
|
+
import "./chunk-GIWHHCD6.js";
|
|
30
|
+
import "./chunk-SOPVIIUW.js";
|
|
31
|
+
import "./chunk-G4FG5EQO.js";
|
|
32
|
+
import "./chunk-NSBNIPIW.js";
|
|
33
|
+
import "./chunk-MUS2UTWU.js";
|
|
34
|
+
import {
|
|
35
|
+
apiPost
|
|
36
|
+
} from "./chunk-X7VQFLHI.js";
|
|
37
|
+
import "./chunk-LU4HI4KI.js";
|
|
38
|
+
import {
|
|
39
|
+
requireChatId,
|
|
40
|
+
resolveChatId
|
|
41
|
+
} from "./chunk-LGK7UWBN.js";
|
|
42
|
+
import "./chunk-Q7US4OOA.js";
|
|
43
|
+
import "./chunk-YQSBHWOI.js";
|
|
44
|
+
|
|
45
|
+
// src/commands/ads/linkedin/draft.ts
|
|
46
|
+
import { defineCommand } from "citty";
|
|
47
|
+
|
|
48
|
+
// src/commands/ads/linkedin/draft-status.ts
|
|
49
|
+
var OPERATION_LABELS = {
|
|
50
|
+
create: "Creating",
|
|
51
|
+
update: "Updating",
|
|
52
|
+
pause: "Pausing",
|
|
53
|
+
resume: "Resuming",
|
|
54
|
+
archive: "Archiving",
|
|
55
|
+
delete: "Deleting"
|
|
56
|
+
};
|
|
57
|
+
function badge(node) {
|
|
58
|
+
const label = node.operation ? OPERATION_LABELS[node.operation] : void 0;
|
|
59
|
+
if (label) {
|
|
60
|
+
return label;
|
|
61
|
+
}
|
|
62
|
+
return node.existing ? "on LinkedIn" : "staged";
|
|
63
|
+
}
|
|
64
|
+
function collectionLine(collection) {
|
|
65
|
+
const parts = [];
|
|
66
|
+
if (collection.added > 0) {
|
|
67
|
+
parts.push(`+${collection.added}`);
|
|
68
|
+
}
|
|
69
|
+
if (collection.existing > 0) {
|
|
70
|
+
parts.push(`${collection.existing} existing`);
|
|
71
|
+
}
|
|
72
|
+
if (collection.removed > 0) {
|
|
73
|
+
parts.push(`-${collection.removed}`);
|
|
74
|
+
}
|
|
75
|
+
return parts.length > 0 ? `${collection.label}: ${parts.join(", ")}` : void 0;
|
|
76
|
+
}
|
|
77
|
+
function accountsInTree(nodes) {
|
|
78
|
+
const accounts = /* @__PURE__ */ new Set();
|
|
79
|
+
const walk = (node) => {
|
|
80
|
+
accounts.add(node.accountId);
|
|
81
|
+
for (const child of node.children) {
|
|
82
|
+
walk(child);
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
for (const node of nodes) {
|
|
86
|
+
walk(node);
|
|
87
|
+
}
|
|
88
|
+
return accounts;
|
|
89
|
+
}
|
|
90
|
+
function renderNode(node, depth, lines, showAccount) {
|
|
91
|
+
const indent = " ".repeat(depth);
|
|
92
|
+
const account = showAccount ? ` \xB7 account ${node.accountId}` : "";
|
|
93
|
+
lines.push(`${indent}\u2022 ${node.name} \xB7 ${badge(node)}${account}`);
|
|
94
|
+
for (const warning of node.warnings ?? []) {
|
|
95
|
+
lines.push(`${indent} \u26A0 ${warning}`);
|
|
96
|
+
}
|
|
97
|
+
for (const collection of node.collections) {
|
|
98
|
+
const line = collectionLine(collection);
|
|
99
|
+
if (line) {
|
|
100
|
+
lines.push(`${indent} ${line}`);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
for (const child of node.children) {
|
|
104
|
+
renderNode(child, depth + 1, lines, showAccount);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
function renderSection(title, nodes, lines, showAccount) {
|
|
108
|
+
if (nodes.length === 0) {
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
lines.push("");
|
|
112
|
+
lines.push(title);
|
|
113
|
+
for (const node of nodes) {
|
|
114
|
+
renderNode(node, 1, lines, showAccount);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
var CAMPAIGN_TREE_ENTITIES = /* @__PURE__ */ new Set(["campaignGroup", "campaign", "creative"]);
|
|
118
|
+
function renderOutcome(data, lines) {
|
|
119
|
+
const counts = /* @__PURE__ */ new Map();
|
|
120
|
+
for (const op of data.ops ?? []) {
|
|
121
|
+
const status = op.result?.status ?? "pending";
|
|
122
|
+
counts.set(status, (counts.get(status) ?? 0) + 1);
|
|
123
|
+
}
|
|
124
|
+
const summary = [...counts].map(([status, count]) => `${count} ${status}`).join(", ");
|
|
125
|
+
lines.push(`LinkedIn Ads \u2014 published \xB7 ${summary || `${data.count} op(s)`} \xB7 ${data.mode}`);
|
|
126
|
+
for (const op of data.ops ?? []) {
|
|
127
|
+
const status = op.result?.status;
|
|
128
|
+
if (status === "applied" && op.result?.error) {
|
|
129
|
+
lines.push(` \u26A0 ${op.summary} \u2014 applied in part: ${op.result.error}`);
|
|
130
|
+
continue;
|
|
131
|
+
}
|
|
132
|
+
if (status !== "failed" && status !== "skipped") {
|
|
133
|
+
continue;
|
|
134
|
+
}
|
|
135
|
+
const reason = op.result?.error ?? op.result?.skippedBecause ?? "no reason recorded";
|
|
136
|
+
lines.push(` \u2717 ${op.summary} \u2014 ${status}: ${reason}`);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
function renderDraftStatus(data) {
|
|
140
|
+
if (data.status === "none" || data.count === 0) {
|
|
141
|
+
return "No staged LinkedIn changes on this chat.";
|
|
142
|
+
}
|
|
143
|
+
const modeNote = data.mode === "live" ? "Live \u2014 publishing writes directly to LinkedIn." : "Simulated \u2014 publishing completes the whole draft without calling LinkedIn.";
|
|
144
|
+
const lines = [];
|
|
145
|
+
if (data.status === "applied") {
|
|
146
|
+
renderOutcome(data, lines);
|
|
147
|
+
} else if (data.status === "publishing") {
|
|
148
|
+
lines.push(`LinkedIn Ads \u2014 publishing ${data.count} change${data.count === 1 ? "" : "s"} \xB7 ${data.mode}`);
|
|
149
|
+
} else {
|
|
150
|
+
lines.push(`LinkedIn Ads \u2014 ${data.count} staged change${data.count === 1 ? "" : "s"} \xB7 ${data.mode}`);
|
|
151
|
+
}
|
|
152
|
+
lines.push(modeNote);
|
|
153
|
+
const tree = data.tree ?? [];
|
|
154
|
+
const showAccount = accountsInTree(tree).size > 1;
|
|
155
|
+
renderSection(
|
|
156
|
+
"Campaigns",
|
|
157
|
+
tree.filter((node) => CAMPAIGN_TREE_ENTITIES.has(node.entity)),
|
|
158
|
+
lines,
|
|
159
|
+
showAccount
|
|
160
|
+
);
|
|
161
|
+
const rest = tree.filter((node) => !CAMPAIGN_TREE_ENTITIES.has(node.entity));
|
|
162
|
+
renderSection("Other", rest, lines, showAccount);
|
|
163
|
+
return lines.join("\n");
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
// src/commands/ads/linkedin/draft.ts
|
|
167
|
+
async function listDraft(json, chat) {
|
|
168
|
+
try {
|
|
169
|
+
const chatId = resolveChatId(chat);
|
|
170
|
+
const response = await apiPost("/api/ads/linkedin/draft", {
|
|
171
|
+
chatId
|
|
172
|
+
});
|
|
173
|
+
if (json || !response.ok || !response.data) {
|
|
174
|
+
writeJsonEnvelope(response);
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
177
|
+
process.stdout.write(`${renderDraftStatus(response.data)}${hintLines(response)}
|
|
178
|
+
`);
|
|
179
|
+
} catch (err) {
|
|
180
|
+
handleLinkedinError(err);
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
var listCommand = defineCommand({
|
|
184
|
+
meta: {
|
|
185
|
+
name: "list",
|
|
186
|
+
description: "Review everything staged as a Campaign group \u25B8 Campaign \u25B8 Creative tree (--json for the raw envelope). Example: baker ads linkedin draft"
|
|
187
|
+
},
|
|
188
|
+
args: {
|
|
189
|
+
json: { type: "boolean", description: "Print the raw JSON envelope instead of the readable tree" },
|
|
190
|
+
chat: CHAT_READ_ARG
|
|
191
|
+
},
|
|
192
|
+
run: async ({ args }) => {
|
|
193
|
+
await listDraft(args.json === true, args.chat);
|
|
194
|
+
}
|
|
195
|
+
});
|
|
196
|
+
var removeCommand = defineCommand({
|
|
197
|
+
meta: {
|
|
198
|
+
name: "remove",
|
|
199
|
+
description: "Drop one staged LinkedIn op. Removing a create cascades to everything that depends on it \u2014 except a company exclusion, which only loses the removed audience and keeps its companies (listed under `updated`). Example: baker ads linkedin draft remove li_temp_abc123"
|
|
200
|
+
},
|
|
201
|
+
args: {
|
|
202
|
+
ref: {
|
|
203
|
+
type: "positional",
|
|
204
|
+
description: "Op ref (li_temp_* for creates, target id/URN for updates)",
|
|
205
|
+
required: true
|
|
206
|
+
}
|
|
207
|
+
},
|
|
208
|
+
run: async ({ args }) => {
|
|
209
|
+
try {
|
|
210
|
+
const chatId = requireChatId();
|
|
211
|
+
const response = await apiPost(
|
|
212
|
+
"/api/ads/linkedin/draft/remove",
|
|
213
|
+
{ chatId, ref: args.ref }
|
|
214
|
+
);
|
|
215
|
+
writeJsonEnvelope(response);
|
|
216
|
+
} catch (err) {
|
|
217
|
+
handleLinkedinError(err);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
});
|
|
221
|
+
var clearCommand = defineCommand({
|
|
222
|
+
meta: {
|
|
223
|
+
name: "clear",
|
|
224
|
+
description: "Discard ALL staged LinkedIn ops in this chat's draft \u2014 nothing will apply on publish. Example: baker ads linkedin draft clear"
|
|
225
|
+
},
|
|
226
|
+
run: async () => {
|
|
227
|
+
try {
|
|
228
|
+
const chatId = requireChatId();
|
|
229
|
+
const response = await apiPost("/api/ads/linkedin/draft/clear", {
|
|
230
|
+
chatId
|
|
231
|
+
});
|
|
232
|
+
writeJsonEnvelope(response);
|
|
233
|
+
} catch (err) {
|
|
234
|
+
handleLinkedinError(err);
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
});
|
|
238
|
+
var amendCommand = defineCommand({
|
|
239
|
+
meta: {
|
|
240
|
+
name: "amend",
|
|
241
|
+
description: "Update a staged op in place \u2014 merges a JSON patch into its payload (RFC-7386: objects deep-merge, null deletes a key, arrays/scalars replace) and re-validates. Use this instead of remove + re-create."
|
|
242
|
+
},
|
|
243
|
+
args: {
|
|
244
|
+
ref: { type: "positional", description: "Staged op ref (li_temp_*) or target id/URN", required: true },
|
|
245
|
+
file: { type: "string", description: "JSON file with the patch object" },
|
|
246
|
+
patch: { type: "string", description: "Inline JSON patch object" }
|
|
247
|
+
},
|
|
248
|
+
run: async ({ args }) => {
|
|
249
|
+
const ref = requireTarget(args, "op");
|
|
250
|
+
const patch = loadPatchArg(args);
|
|
251
|
+
try {
|
|
252
|
+
const chatId = requireChatId();
|
|
253
|
+
const body = { chatId, ref, patch };
|
|
254
|
+
const response = await apiPost(
|
|
255
|
+
"/api/ads/linkedin/draft/amend",
|
|
256
|
+
body
|
|
257
|
+
);
|
|
258
|
+
writeJsonEnvelope(response);
|
|
259
|
+
} catch (err) {
|
|
260
|
+
handleLinkedinError(err);
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
});
|
|
264
|
+
var showCommand = defineCommand({
|
|
265
|
+
meta: {
|
|
266
|
+
name: "show",
|
|
267
|
+
description: "Print the full staged payload for one op \u2014 the receipt to verify a change looks right before publish (never truncated)."
|
|
268
|
+
},
|
|
269
|
+
args: {
|
|
270
|
+
ref: { type: "positional", description: "Staged op ref (li_temp_*) or target id/URN", required: true },
|
|
271
|
+
chat: CHAT_READ_ARG
|
|
272
|
+
},
|
|
273
|
+
run: async ({ args }) => {
|
|
274
|
+
const ref = requireTarget(args, "op");
|
|
275
|
+
try {
|
|
276
|
+
const chatId = resolveChatId(args.chat);
|
|
277
|
+
const body = { chatId, ref };
|
|
278
|
+
const response = await apiPost(
|
|
279
|
+
"/api/ads/linkedin/draft/show",
|
|
280
|
+
body
|
|
281
|
+
);
|
|
282
|
+
writeJsonEnvelope(response);
|
|
283
|
+
} catch (err) {
|
|
284
|
+
handleLinkedinError(err);
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
});
|
|
288
|
+
var linkedinDraftCommand = defineCommand({
|
|
289
|
+
meta: {
|
|
290
|
+
name: "draft",
|
|
291
|
+
description: "Review and edit the LinkedIn write ops staged in this chat BEFORE publish. Subcommands: list (default), remove, clear, amend, show. Ops never hit LinkedIn until the chat is published. `list` and `show` take --chat <id> to read an earlier chat's changes instead."
|
|
292
|
+
},
|
|
293
|
+
// Declared on the parent too: `default: "list"` dispatches the bare `draft --chat <id>` form, and
|
|
294
|
+
// citty prints help for a flag the parent does not know instead of forwarding it.
|
|
295
|
+
args: { chat: CHAT_READ_ARG },
|
|
296
|
+
subCommands: {
|
|
297
|
+
list: listCommand,
|
|
298
|
+
remove: removeCommand,
|
|
299
|
+
clear: clearCommand,
|
|
300
|
+
amend: amendCommand,
|
|
301
|
+
show: showCommand
|
|
302
|
+
},
|
|
303
|
+
// A parent must never declare `run`: citty falls through to it *after* running
|
|
304
|
+
// the matched subcommand, so `draft show <ref>` would also re-list the draft.
|
|
305
|
+
default: "list"
|
|
306
|
+
});
|
|
307
|
+
export {
|
|
308
|
+
linkedinDraftCommand
|
|
309
|
+
};
|
|
310
|
+
//# sourceMappingURL=draft-P7IDMXWR.js.map
|