@koda-sl/baker-cli 0.449.0 → 0.450.0-dev.b454c3dd2
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 +11 -2
- package/dist/account-4H7QVBRK.js +80 -0
- package/dist/account-XQXC7BR6.js +80 -0
- package/dist/account-XQXC7BR6.js.map +1 -0
- package/dist/account-writes-AK42HGRM.js +66 -0
- package/dist/accounts-722UY53A.js +78 -0
- package/dist/accounts-722UY53A.js.map +1 -0
- package/dist/accounts-E67BMK7T.js +612 -0
- package/dist/accounts-E67BMK7T.js.map +1 -0
- package/dist/actions-6TQMSVWD.js +55 -0
- package/dist/ad-group-writes-QQS4223F.js +170 -0
- package/dist/ad-groups-WGPDPUI2.js +68 -0
- package/dist/ad-writes-XE2IE4DS.js +174 -0
- package/dist/add-2BEGRHUX.js +303 -0
- package/dist/add-2BEGRHUX.js.map +1 -0
- package/dist/add-LEMKEOPO.js +105 -0
- package/dist/add-LEMKEOPO.js.map +1 -0
- package/dist/ads-AGYCVD62.js +40 -0
- package/dist/ads-BCOSQALY.js +77 -0
- package/dist/advertisers-2VQKAYKG.js +121 -0
- package/dist/advertisers-2VQKAYKG.js.map +1 -0
- package/dist/analytics-IFELDWLL.js +1962 -0
- package/dist/analytics-IFELDWLL.js.map +1 -0
- package/dist/analytics-OH5QEH7F.js +434 -0
- package/dist/analytics-OH5QEH7F.js.map +1 -0
- package/dist/animate-AIZ3GS4J.js +480 -0
- package/dist/assign-PTUJUCEL.js +78 -0
- package/dist/assign-PTUJUCEL.js.map +1 -0
- package/dist/audience-size-LRI6GJRT.js +95 -0
- package/dist/audience-size-LRI6GJRT.js.map +1 -0
- package/dist/audiences-TGD5US2M.js +268 -0
- package/dist/audit-HWP7OPB7.js +152 -0
- package/dist/audit-HWP7OPB7.js.map +1 -0
- package/dist/autocomplete-J6DHU6MR.js +112 -0
- package/dist/autocomplete-J6DHU6MR.js.map +1 -0
- package/dist/avatars-467OSBD6.js +38 -0
- package/dist/bid-pricing-EO5WLHGV.js +100 -0
- package/dist/bid-pricing-EO5WLHGV.js.map +1 -0
- package/dist/brand-YRTEPGBK.js +22 -0
- package/dist/brief-OSFJ2V7F.js +478 -0
- package/dist/brief-OSFJ2V7F.js.map +1 -0
- package/dist/campaign-groups-PQ6KSQJR.js +96 -0
- package/dist/campaign-groups-PQ6KSQJR.js.map +1 -0
- package/dist/campaign-writes-5OVLUD5E.js +166 -0
- package/dist/campaign-writes-5OVLUD5E.js.map +1 -0
- package/dist/campaign-writes-SXLZFYF6.js +170 -0
- package/dist/campaigns-6T3NSUT2.js +110 -0
- package/dist/campaigns-6T3NSUT2.js.map +1 -0
- package/dist/campaigns-OYMXDGWX.js +107 -0
- package/dist/campaigns-YS3OGQXO.js +76 -0
- package/dist/canvas-YQFG52IG.js +46 -0
- package/dist/capabilities-PXBKUN2G.js +145 -0
- package/dist/capabilities-PXBKUN2G.js.map +1 -0
- package/dist/catalog-XLXIM7IW.js +65 -0
- package/dist/catalogs-BRXEDE56.js +128 -0
- package/dist/chatgpt-7W75X3ER.js +47 -0
- package/dist/chats-UK47UE7C.js +263 -0
- package/dist/chats-UK47UE7C.js.map +1 -0
- package/dist/chunk-24EB7EDR.js +433 -0
- package/dist/chunk-2AOE2MZQ.js +159 -0
- package/dist/chunk-2VPBIT65.js +509 -0
- package/dist/chunk-4PDHHHUJ.js +537 -0
- package/dist/chunk-4PDHHHUJ.js.map +1 -0
- package/dist/chunk-54C6YDGJ.js +622 -0
- package/dist/chunk-5WCSKQ7Z.js +188 -0
- package/dist/chunk-5ZNTADVR.js +197 -0
- package/dist/chunk-6F7DVPOS.js +310 -0
- package/dist/chunk-6NY2GPR4.js +304 -0
- package/dist/chunk-6Y7ZBENQ.js +207 -0
- package/dist/chunk-7CTMH5AK.js +111 -0
- package/dist/chunk-7EPXVICM.js +6184 -0
- package/dist/chunk-7EPXVICM.js.map +1 -0
- package/dist/chunk-7J6EHOH6.js +274 -0
- package/dist/chunk-ASI4P6X2.js +6667 -0
- package/dist/chunk-C46GUI2S.js +19 -0
- package/dist/chunk-CAMX6OHF.js +3182 -0
- package/dist/chunk-CAMX6OHF.js.map +1 -0
- package/dist/chunk-CWYAELVG.js +60 -0
- package/dist/chunk-DCRPXOJJ.js +363 -0
- package/dist/chunk-EAP4O4FE.js +440 -0
- package/dist/chunk-FPOGPFAG.js +4383 -0
- package/dist/chunk-FTWJFDIN.js +23992 -0
- package/dist/chunk-FTWJFDIN.js.map +1 -0
- package/dist/chunk-FUHN4MFY.js +103 -0
- package/dist/chunk-FYGR3I2A.js +297 -0
- package/dist/chunk-H3427GPU.js +206 -0
- package/dist/chunk-HDLYPC6K.js +172 -0
- package/dist/chunk-HDLYPC6K.js.map +1 -0
- package/dist/chunk-HR6IWNKE.js +2942 -0
- package/dist/chunk-HR6IWNKE.js.map +1 -0
- package/dist/chunk-HROZYQ5H.js +275 -0
- package/dist/chunk-HROZYQ5H.js.map +1 -0
- package/dist/chunk-HZUDRKGR.js +98 -0
- package/dist/chunk-I3ZR655O.js +382 -0
- package/dist/chunk-KMKEYI37.js +96 -0
- package/dist/chunk-KS2QY6MK.js +139 -0
- package/dist/chunk-LYQJ4PZW.js +5189 -0
- package/dist/chunk-MACCF4JZ.js +3147 -0
- package/dist/chunk-N4LAYIIN.js +175 -0
- package/dist/chunk-NA63BH7V.js +346 -0
- package/dist/chunk-NCWCZY5P.js +1441 -0
- package/dist/chunk-NDEE6G2J.js +494 -0
- package/dist/chunk-NJXNU2G6.js +819 -0
- package/dist/chunk-NYIGXDUG.js +178 -0
- package/dist/chunk-NYIGXDUG.js.map +1 -0
- package/dist/chunk-P5T7OZKV.js +26 -0
- package/dist/chunk-PZXCWSKV.js +1830 -0
- package/dist/chunk-QE7W555R.js +541 -0
- package/dist/chunk-QE7W555R.js.map +1 -0
- package/dist/chunk-R25YLW6H.js +20 -0
- package/dist/chunk-RL5CP7N6.js +57 -0
- package/dist/chunk-RX2DKU3W.js +592 -0
- package/dist/chunk-SJYEY5MV.js +172 -0
- package/dist/chunk-SJYEY5MV.js.map +1 -0
- package/dist/chunk-ULG4QRTV.js +92 -0
- package/dist/chunk-VL43TNIP.js +455 -0
- package/dist/chunk-VLMBTPXU.js +51 -0
- package/dist/chunk-VNUNE5AB.js +160 -0
- package/dist/chunk-VYQ3QJ3C.js +169 -0
- package/dist/chunk-WGUQHAJY.js +23 -0
- package/dist/chunk-WKQG6TER.js +1079 -0
- package/dist/chunk-XFGAUP5B.js +76 -0
- package/dist/chunk-ZDMTXQ2Q.js +337 -0
- package/dist/claim-W6G6VEG5.js +198 -0
- package/dist/claim-W6G6VEG5.js.map +1 -0
- package/dist/cli.js +30 -30
- package/dist/companies-TS6KBATJ.js +196 -0
- package/dist/companies-TS6KBATJ.js.map +1 -0
- package/dist/complete-LYR2HMQU.js +82 -0
- package/dist/complete-LYR2HMQU.js.map +1 -0
- package/dist/connect-FCXNVTXG.js +43 -0
- package/dist/conversation-6ZJGPCXM.js +94 -0
- package/dist/conversation-6ZJGPCXM.js.map +1 -0
- package/dist/conversion-report-XQBJ6LG4.js +125 -0
- package/dist/conversion-writes-UBCVXP2E.js +120 -0
- package/dist/conversions-D236RTUK.js +76 -0
- package/dist/conversions-UHB55MMQ.js +136 -0
- package/dist/conversions-UHB55MMQ.js.map +1 -0
- package/dist/create-EX6OWLNM.js +208 -0
- package/dist/create-EX6OWLNM.js.map +1 -0
- package/dist/create-JCA7JPLP.js +131 -0
- package/dist/create-JCA7JPLP.js.map +1 -0
- package/dist/create-JFSK4BOP.js +60 -0
- package/dist/create-JFSK4BOP.js.map +1 -0
- package/dist/create-WU22YYU2.js +236 -0
- package/dist/create-WU22YYU2.js.map +1 -0
- package/dist/creatives-FXUQ5WSD.js +51 -0
- package/dist/creatives-KGXUOYPE.js +183 -0
- package/dist/creatives-KGXUOYPE.js.map +1 -0
- package/dist/credentials-MJC7PGKR.js +1056 -0
- package/dist/credentials-MJC7PGKR.js.map +1 -0
- package/dist/critique-GS5VV5ZC.js +214 -0
- package/dist/critique-GS5VV5ZC.js.map +1 -0
- package/dist/critique-TPHR27KH.js +1450 -0
- package/dist/critique-TPHR27KH.js.map +1 -0
- package/dist/crm-AVCM5D4G.js +319 -0
- package/dist/crm-AVCM5D4G.js.map +1 -0
- package/dist/crm-VK44O3ED.js +225 -0
- package/dist/crm-VK44O3ED.js.map +1 -0
- package/dist/customers-XH2DMTFH.js +57 -0
- package/dist/delete-E3R3TKIL.js +67 -0
- package/dist/delete-E3R3TKIL.js.map +1 -0
- package/dist/delete-KRH2YMSZ.js +55 -0
- package/dist/delete-KRH2YMSZ.js.map +1 -0
- package/dist/delete-WI5E3DR3.js +64 -0
- package/dist/delete-WI5E3DR3.js.map +1 -0
- package/dist/demographics-XV5PBA77.js +139 -0
- package/dist/demographics-XV5PBA77.js.map +1 -0
- package/dist/discard-HTQUUHJR.js +67 -0
- package/dist/discard-HTQUUHJR.js.map +1 -0
- package/dist/domain-RECGZXJB.js +99 -0
- package/dist/domain-RECGZXJB.js.map +1 -0
- package/dist/draft-2IBSJEKC.js +218 -0
- package/dist/draft-2IBSJEKC.js.map +1 -0
- package/dist/draft-MNFJ4G3C.js +281 -0
- package/dist/draft-PVTX6QT6.js +329 -0
- package/dist/draft-PVTX6QT6.js.map +1 -0
- package/dist/draft-Q546QPPU.js +307 -0
- package/dist/draft-Q546QPPU.js.map +1 -0
- package/dist/engine/index.js +6 -6
- package/dist/facets-7EVPJMKS.js +115 -0
- package/dist/facets-7EVPJMKS.js.map +1 -0
- package/dist/feedback-EIZKS4JU.js +66 -0
- package/dist/feedback-record-TKO54BOE.js +176 -0
- package/dist/feedback-record-TKO54BOE.js.map +1 -0
- package/dist/fetch-4BY6HYUM.js +177 -0
- package/dist/fetch-4BY6HYUM.js.map +1 -0
- package/dist/find-FRRHAPWX.js +134 -0
- package/dist/fit-UOFYFJ4Q.js +45 -0
- package/dist/flows-KTFAML22.js +248 -0
- package/dist/flows-KTFAML22.js.map +1 -0
- package/dist/fonts-MXR3ZKDX.js +35 -0
- package/dist/forecast-3QTJYVND.js +105 -0
- package/dist/forecast-3QTJYVND.js.map +1 -0
- package/dist/funnel-I6XIAEHG.js +393 -0
- package/dist/funnel-I6XIAEHG.js.map +1 -0
- package/dist/ga4-DV2AXCSL.js +55 -0
- package/dist/generate-3XYYITU6.js +262 -0
- package/dist/get-5PKNKJ5S.js +57 -0
- package/dist/get-5PKNKJ5S.js.map +1 -0
- package/dist/get-72YPHJGV.js +79 -0
- package/dist/get-72YPHJGV.js.map +1 -0
- package/dist/google-6OGZX47I.js +1872 -0
- package/dist/google-QYYYSSXI.js +136 -0
- package/dist/google-ads-QGMQKZQD.js +196 -0
- package/dist/google-ads-QGMQKZQD.js.map +1 -0
- package/dist/gsc-TAKOF7J5.js +30 -0
- package/dist/history-6AVQX2OQ.js +134 -0
- package/dist/history-6AVQX2OQ.js.map +1 -0
- package/dist/history-Q3QCT64S.js +67 -0
- package/dist/hubspot-SVEMFK5S.js +780 -0
- package/dist/hubspot-SVEMFK5S.js.map +1 -0
- package/dist/icon-L4RSS6PZ.js +137 -0
- package/dist/ideas-NFOW3HKJ.js +33 -0
- package/dist/images-2EFFUNNV.js +90 -0
- package/dist/ingest-2EIKN4QC.js +24 -0
- package/dist/ingest-2SO62RRI.js +108 -0
- package/dist/ingest-2SO62RRI.js.map +1 -0
- package/dist/insights-LNAXV2CG.js +122 -0
- package/dist/inspect-4OOS4APT.js +190 -0
- package/dist/inspect-4OOS4APT.js.map +1 -0
- package/dist/inspiration-S3DU4CMQ.js +53 -0
- package/dist/keyword-metrics-SF4CSNZ2.js +198 -0
- package/dist/keyword-metrics-SF4CSNZ2.js.map +1 -0
- package/dist/keywords-for-site-WDAOPNKC.js +129 -0
- package/dist/keywords-for-site-WDAOPNKC.js.map +1 -0
- package/dist/landing-2ZB46LXH.js +28 -0
- package/dist/leads-A4W5KTWB.js +91 -0
- package/dist/leads-A4W5KTWB.js.map +1 -0
- package/dist/learn-IPULBCOD.js +204 -0
- package/dist/learn-IPULBCOD.js.map +1 -0
- package/dist/line-item-writes-EMYSOJKM.js +209 -0
- package/dist/line-item-writes-EMYSOJKM.js.map +1 -0
- package/dist/line-items-5NECXUZT.js +103 -0
- package/dist/link-CI45HWFN.js +65 -0
- package/dist/link-CI45HWFN.js.map +1 -0
- package/dist/linkedin-B7SYR75X.js +1009 -0
- package/dist/linkedin-B7SYR75X.js.map +1 -0
- package/dist/list-2BARXOT5.js +152 -0
- package/dist/list-2BARXOT5.js.map +1 -0
- package/dist/list-BIEVLEHS.js +304 -0
- package/dist/list-BIEVLEHS.js.map +1 -0
- package/dist/list-ZBT3EBVZ.js +64 -0
- package/dist/list-ZBT3EBVZ.js.map +1 -0
- package/dist/locations-2NKBJKBT.js +67 -0
- package/dist/log-C23OOAJZ.js +93 -0
- package/dist/log-C23OOAJZ.js.map +1 -0
- package/dist/logo-Q5D7PZY6.js +18 -0
- package/dist/lookup-ETWY47F7.js +23 -0
- package/dist/make-TPKKJXGL.js +594 -0
- package/dist/make-TPKKJXGL.js.map +1 -0
- package/dist/map-SYZMPHLL.js +405 -0
- package/dist/map-SYZMPHLL.js.map +1 -0
- package/dist/mcp-6FQBVJ6F.js +477 -0
- package/dist/mcp-6FQBVJ6F.js.map +1 -0
- package/dist/media-sources-ZXHEEP6T.js +32 -0
- package/dist/members-UDY4OOJW.js +45 -0
- package/dist/members-UDY4OOJW.js.map +1 -0
- package/dist/models-3Z6MDHQW.js +155 -0
- package/dist/normalize-DAKHYS3V.js +142 -0
- package/dist/normalize-DAKHYS3V.js.map +1 -0
- package/dist/options-QL3ULED5.js +122 -0
- package/dist/options-QL3ULED5.js.map +1 -0
- package/dist/performance-UF5VTY2U.js +25 -0
- package/dist/pixels-TZPF746S.js +60 -0
- package/dist/plan-FT632COT.js +51 -0
- package/dist/plan-FT632COT.js.map +1 -0
- package/dist/promoted-tweet-writes-7HGESJ46.js +181 -0
- package/dist/promoted-tweet-writes-7HGESJ46.js.map +1 -0
- package/dist/promoted-tweets-LZKS5JIF.js +119 -0
- package/dist/publish-NPD3SMZL.js +323 -0
- package/dist/publish-NPD3SMZL.js.map +1 -0
- package/dist/questionnaire-JNGYJTAY.js +37 -0
- package/dist/questionnaire-JNGYJTAY.js.map +1 -0
- package/dist/reddit-NU2N3LZD.js +27 -0
- package/dist/refresh-EBVJ2C6L.js +95 -0
- package/dist/refresh-EBVJ2C6L.js.map +1 -0
- package/dist/release-V43YB2PY.js +61 -0
- package/dist/release-V43YB2PY.js.map +1 -0
- package/dist/remove-QPSWLFI4.js +51 -0
- package/dist/remove-QPSWLFI4.js.map +1 -0
- package/dist/reopen-GQ66NMWF.js +64 -0
- package/dist/reopen-GQ66NMWF.js.map +1 -0
- package/dist/rerun-PZK275DY.js +86 -0
- package/dist/rerun-PZK275DY.js.map +1 -0
- package/dist/research-FMM6AWZC.js +62 -0
- package/dist/research-GEOCUBXB.js +263 -0
- package/dist/research-GEOCUBXB.js.map +1 -0
- package/dist/reset-REXJ6AUK.js +55 -0
- package/dist/reset-REXJ6AUK.js.map +1 -0
- package/dist/reset-Y72IVESB.js +55 -0
- package/dist/reset-Y72IVESB.js.map +1 -0
- package/dist/resolve-OGX7C4TV.js +122 -0
- package/dist/resolve-OGX7C4TV.js.map +1 -0
- package/dist/retry-CD6JAQ3F.js +61 -0
- package/dist/retry-CD6JAQ3F.js.map +1 -0
- package/dist/retry-TCUBBFR5.js +63 -0
- package/dist/retry-TCUBBFR5.js.map +1 -0
- package/dist/run-A5ZDXTOI.js +66 -0
- package/dist/run-A5ZDXTOI.js.map +1 -0
- package/dist/run-EUO34T2J.js +61 -0
- package/dist/scaffold-ad-SW2HEWM3.js +1550 -0
- package/dist/scaffold-ad-SW2HEWM3.js.map +1 -0
- package/dist/scaffold-static-ad-ECTJL54Y.js +967 -0
- package/dist/scaffold-static-ad-ECTJL54Y.js.map +1 -0
- package/dist/scaffold-video-EI7U7RBK.js +874 -0
- package/dist/scaffold-video-EI7U7RBK.js.map +1 -0
- package/dist/schedule-S5YZJZ5U.js +62 -0
- package/dist/schedule-S5YZJZ5U.js.map +1 -0
- package/dist/scheduled-agents-N4LJRM4C.js +49 -0
- package/dist/schema-R7JWWOF4.js +133 -0
- package/dist/schema-R7JWWOF4.js.map +1 -0
- package/dist/search-KHMQH3AT.js +175 -0
- package/dist/search-KHMQH3AT.js.map +1 -0
- package/dist/select-O2FN2JEQ.js +95 -0
- package/dist/select-O2FN2JEQ.js.map +1 -0
- package/dist/sends-BQZM5PLS.js +310 -0
- package/dist/sends-BQZM5PLS.js.map +1 -0
- package/dist/set-prompt-2HASHGWC.js +187 -0
- package/dist/set-prompt-2HASHGWC.js.map +1 -0
- package/dist/setup-links-GYSE56GX.js +142 -0
- package/dist/setup-links-GYSE56GX.js.map +1 -0
- package/dist/site-4SKM7RKG.js +178 -0
- package/dist/site-4SKM7RKG.js.map +1 -0
- package/dist/sources-FQ2UZTHL.js +30 -0
- package/dist/sources-R2NKNC6J.js +422 -0
- package/dist/sources-R2NKNC6J.js.map +1 -0
- package/dist/stale-W756ACKC.js +64 -0
- package/dist/stale-W756ACKC.js.map +1 -0
- package/dist/status-SE2VZJJB.js +63 -0
- package/dist/status-SE2VZJJB.js.map +1 -0
- package/dist/stock-KXJ26BY4.js +179 -0
- package/dist/studio-SYKOSNDB.js +49 -0
- package/dist/sync-LJGSODK3.js +55 -0
- package/dist/sync-LJGSODK3.js.map +1 -0
- package/dist/sync-definition-QR2N233R.js +54 -0
- package/dist/tags-4BAVFH4S.js +225 -0
- package/dist/tags-4BAVFH4S.js.map +1 -0
- package/dist/tags-5SBMRC2A.js +21 -0
- package/dist/tags-5SBMRC2A.js.map +1 -0
- package/dist/tags-PYWFSBTR.js +26 -0
- package/dist/tags-QQU3OKMZ.js +21 -0
- package/dist/tags-QQU3OKMZ.js.map +1 -0
- package/dist/tags-YYLNF3PK.js +21 -0
- package/dist/tags-YYLNF3PK.js.map +1 -0
- package/dist/targeting-criteria-RJFLFICN.js +113 -0
- package/dist/targets-S2MT2PNB.js +103 -0
- package/dist/targets-S2MT2PNB.js.map +1 -0
- package/dist/templates-ZE5TOGRT.js +179 -0
- package/dist/templates-ZE5TOGRT.js.map +1 -0
- package/dist/testimonials-DII5DYLR.js +32 -0
- package/dist/top-companies-PGIAEHDF.js +109 -0
- package/dist/top-companies-PGIAEHDF.js.map +1 -0
- package/dist/translate-GXTS633J.js +599 -0
- package/dist/translate-GXTS633J.js.map +1 -0
- package/dist/triggers-2PTONXRU.js +142 -0
- package/dist/triggers-2PTONXRU.js.map +1 -0
- package/dist/unlink-XRMYJ6DB.js +68 -0
- package/dist/unlink-XRMYJ6DB.js.map +1 -0
- package/dist/unstage-FY7A3YFF.js +85 -0
- package/dist/unstage-FY7A3YFF.js.map +1 -0
- package/dist/unstage-RM2RLXKD.js +96 -0
- package/dist/unstage-RM2RLXKD.js.map +1 -0
- package/dist/update-E5SRBXQR.js +143 -0
- package/dist/update-E5SRBXQR.js.map +1 -0
- package/dist/update-PJ67D2OG.js +156 -0
- package/dist/update-PJ67D2OG.js.map +1 -0
- package/dist/update-S4562V3O.js +64 -0
- package/dist/update-S4562V3O.js.map +1 -0
- package/dist/update-V6YVEUI2.js +99 -0
- package/dist/update-V6YVEUI2.js.map +1 -0
- package/dist/upload-R6CQVLKF.js +127 -0
- package/dist/upload-R6CQVLKF.js.map +1 -0
- package/dist/url-options-JOKU46F2.js +128 -0
- package/dist/url-options-JOKU46F2.js.map +1 -0
- package/dist/url-params-7U2XMOWF.js +99 -0
- package/dist/url-params-7U2XMOWF.js.map +1 -0
- package/dist/validate-7YPOUKPB.js +90 -0
- package/dist/validate-7YPOUKPB.js.map +1 -0
- package/dist/videos-LICG6ACJ.js +39 -0
- package/dist/viewer-check-L4B4LIAX.js +69 -0
- package/dist/web-BA2PGTWU.js +141 -0
- package/dist/web-BA2PGTWU.js.map +1 -0
- package/dist/winning-ads-C6S2C5VP.js +62 -0
- package/dist/write-commands-7SJ3BOW5.js +1016 -0
- package/dist/write-commands-7SJ3BOW5.js.map +1 -0
- package/dist/x-CZHRC6U7.js +47 -0
- package/package.json +1 -1
- package/dist/account-AL2ZDSR7.js +0 -79
- package/dist/account-AL2ZDSR7.js.map +0 -1
- package/dist/account-F6MHQ64I.js +0 -80
- package/dist/account-writes-ISE4U2FQ.js +0 -66
- package/dist/accounts-HAFCLSR5.js +0 -77
- package/dist/accounts-HAFCLSR5.js.map +0 -1
- package/dist/accounts-O5MFO3QQ.js +0 -611
- package/dist/accounts-O5MFO3QQ.js.map +0 -1
- package/dist/actions-P35MEMGN.js +0 -55
- package/dist/ad-group-writes-UU5NNKSO.js +0 -170
- package/dist/ad-groups-CGFXZNIA.js +0 -68
- package/dist/ad-writes-NALDYWOR.js +0 -174
- package/dist/add-5GAN6CVO.js +0 -280
- package/dist/add-5GAN6CVO.js.map +0 -1
- package/dist/add-6DTC6X5G.js +0 -104
- package/dist/add-6DTC6X5G.js.map +0 -1
- package/dist/ads-C47NA2HH.js +0 -40
- package/dist/ads-PV7GZXPR.js +0 -77
- package/dist/advertisers-AE75CGVE.js +0 -120
- package/dist/advertisers-AE75CGVE.js.map +0 -1
- package/dist/analytics-FKCXIMPO.js +0 -1958
- package/dist/analytics-FKCXIMPO.js.map +0 -1
- package/dist/analytics-FPWQQGRM.js +0 -433
- package/dist/analytics-FPWQQGRM.js.map +0 -1
- package/dist/animate-FWWHSYPL.js +0 -480
- package/dist/assign-ABN2AQ4J.js +0 -77
- package/dist/assign-ABN2AQ4J.js.map +0 -1
- package/dist/audience-size-GNBJY35X.js +0 -94
- package/dist/audience-size-GNBJY35X.js.map +0 -1
- package/dist/audiences-VEKGLWBG.js +0 -268
- package/dist/audit-3VS63TBW.js +0 -151
- package/dist/audit-3VS63TBW.js.map +0 -1
- package/dist/autocomplete-VS3XG3B7.js +0 -111
- package/dist/autocomplete-VS3XG3B7.js.map +0 -1
- package/dist/avatars-EKCKHCC3.js +0 -38
- package/dist/bid-pricing-Q72B65AY.js +0 -99
- package/dist/bid-pricing-Q72B65AY.js.map +0 -1
- package/dist/brand-C6PFGGQN.js +0 -22
- package/dist/brief-UO52ZHFI.js +0 -477
- package/dist/brief-UO52ZHFI.js.map +0 -1
- package/dist/campaign-groups-KFFYQPU3.js +0 -95
- package/dist/campaign-groups-KFFYQPU3.js.map +0 -1
- package/dist/campaign-writes-FHOS5XZY.js +0 -165
- package/dist/campaign-writes-FHOS5XZY.js.map +0 -1
- package/dist/campaign-writes-SX52CJYW.js +0 -170
- package/dist/campaigns-2NHWBF5C.js +0 -109
- package/dist/campaigns-2NHWBF5C.js.map +0 -1
- package/dist/campaigns-KZYZTXDS.js +0 -107
- package/dist/campaigns-X3DPCCSN.js +0 -76
- package/dist/canvas-DPCBGW7K.js +0 -46
- package/dist/capabilities-DJFTRJKS.js +0 -144
- package/dist/capabilities-DJFTRJKS.js.map +0 -1
- package/dist/catalog-ME44ZRZF.js +0 -65
- package/dist/catalogs-G3YEVG6S.js +0 -128
- package/dist/chatgpt-QNUN63YS.js +0 -47
- package/dist/chats-D2CSDX5Q.js +0 -262
- package/dist/chats-D2CSDX5Q.js.map +0 -1
- package/dist/chunk-2QHODRR6.js +0 -19
- package/dist/chunk-35XWJEWH.js +0 -274
- package/dist/chunk-3G3ZDLMI.js +0 -197
- package/dist/chunk-3HJLHTWP.js +0 -163
- package/dist/chunk-3HJLHTWP.js.map +0 -1
- package/dist/chunk-3IBYKLXR.js +0 -337
- package/dist/chunk-4AUMTNVB.js +0 -346
- package/dist/chunk-4BQXAE7Z.js +0 -494
- package/dist/chunk-54UVGFX3.js +0 -440
- package/dist/chunk-5Y5UAJWD.js +0 -111
- package/dist/chunk-5ZDLTE5T.js +0 -159
- package/dist/chunk-647RO73Q.js +0 -92
- package/dist/chunk-7YCRFMXF.js +0 -433
- package/dist/chunk-7ZHMGXE2.js +0 -819
- package/dist/chunk-A4LOJ2VD.js +0 -23
- package/dist/chunk-AEOSAVVL.js +0 -310
- package/dist/chunk-CHSNHVYF.js +0 -3182
- package/dist/chunk-CHSNHVYF.js.map +0 -1
- package/dist/chunk-CSYSX4D2.js +0 -175
- package/dist/chunk-DWHIOO7E.js +0 -390
- package/dist/chunk-DWHIOO7E.js.map +0 -1
- package/dist/chunk-EDLZGTGN.js +0 -216
- package/dist/chunk-EDLZGTGN.js.map +0 -1
- package/dist/chunk-FD27ZDVP.js +0 -304
- package/dist/chunk-GBMP4F45.js +0 -3147
- package/dist/chunk-GLCPTMPG.js +0 -5189
- package/dist/chunk-HBTF25YG.js +0 -592
- package/dist/chunk-HQSCJYZO.js +0 -26
- package/dist/chunk-IBURXTL4.js +0 -509
- package/dist/chunk-IR6D7K4H.js +0 -382
- package/dist/chunk-J5IY3GVE.js +0 -96
- package/dist/chunk-JQJDXPCO.js +0 -103
- package/dist/chunk-K66OLA6Y.js +0 -4383
- package/dist/chunk-K7FZXIOZ.js +0 -60
- package/dist/chunk-KFE3S63W.js +0 -1441
- package/dist/chunk-KHRXPQID.js +0 -169
- package/dist/chunk-KLBTXETO.js +0 -23992
- package/dist/chunk-KLBTXETO.js.map +0 -1
- package/dist/chunk-KQTYTCKQ.js +0 -98
- package/dist/chunk-LYBXCXJB.js +0 -160
- package/dist/chunk-LZ73CZGP.js +0 -188
- package/dist/chunk-MELOSESI.js +0 -20
- package/dist/chunk-MXYBTMKB.js +0 -363
- package/dist/chunk-NPY4QUMQ.js +0 -622
- package/dist/chunk-OZRUJVIQ.js +0 -206
- package/dist/chunk-QRP3PXWN.js +0 -455
- package/dist/chunk-RPUSTYHL.js +0 -170
- package/dist/chunk-RPUSTYHL.js.map +0 -1
- package/dist/chunk-S77PZVYM.js +0 -297
- package/dist/chunk-SHL7LOC3.js +0 -51
- package/dist/chunk-SSJK7FEV.js +0 -2886
- package/dist/chunk-SSJK7FEV.js.map +0 -1
- package/dist/chunk-TT5R35PJ.js +0 -207
- package/dist/chunk-ULJ5RFOV.js +0 -76
- package/dist/chunk-VB6WJJR3.js +0 -1830
- package/dist/chunk-W3ZHJJVT.js +0 -139
- package/dist/chunk-XF4JUKVF.js +0 -6151
- package/dist/chunk-XF4JUKVF.js.map +0 -1
- package/dist/chunk-Y6O7EWYY.js +0 -57
- package/dist/chunk-YRQYA2LR.js +0 -217
- package/dist/chunk-YRQYA2LR.js.map +0 -1
- package/dist/chunk-Z2EOC6PL.js +0 -6667
- package/dist/chunk-ZEYEWPK6.js +0 -1079
- package/dist/claim-FZ5OQLMU.js +0 -197
- package/dist/claim-FZ5OQLMU.js.map +0 -1
- package/dist/companies-DNI634RC.js +0 -195
- package/dist/companies-DNI634RC.js.map +0 -1
- package/dist/complete-2FZMGJV5.js +0 -81
- package/dist/complete-2FZMGJV5.js.map +0 -1
- package/dist/connect-QCOGEPP4.js +0 -36
- package/dist/conversation-6IOGV7B7.js +0 -93
- package/dist/conversation-6IOGV7B7.js.map +0 -1
- package/dist/conversion-report-N4HANYOB.js +0 -125
- package/dist/conversion-writes-LW4HQKK5.js +0 -120
- package/dist/conversions-4SRZPBBX.js +0 -135
- package/dist/conversions-4SRZPBBX.js.map +0 -1
- package/dist/conversions-TS723AZV.js +0 -76
- package/dist/create-BJNMO6HT.js +0 -207
- package/dist/create-BJNMO6HT.js.map +0 -1
- package/dist/create-FX4OJ2XF.js +0 -59
- package/dist/create-FX4OJ2XF.js.map +0 -1
- package/dist/create-RM7HV77Y.js +0 -130
- package/dist/create-RM7HV77Y.js.map +0 -1
- package/dist/create-VXM34ZWH.js +0 -235
- package/dist/create-VXM34ZWH.js.map +0 -1
- package/dist/creatives-JSWBFQ5R.js +0 -182
- package/dist/creatives-JSWBFQ5R.js.map +0 -1
- package/dist/creatives-SJTJU6VT.js +0 -51
- package/dist/credentials-VOZTILFO.js +0 -1055
- package/dist/credentials-VOZTILFO.js.map +0 -1
- package/dist/critique-65W63MFZ.js +0 -213
- package/dist/critique-65W63MFZ.js.map +0 -1
- package/dist/critique-ZS4ON3SU.js +0 -1449
- package/dist/critique-ZS4ON3SU.js.map +0 -1
- package/dist/crm-52ROSWH5.js +0 -224
- package/dist/crm-52ROSWH5.js.map +0 -1
- package/dist/crm-R5IXIFIV.js +0 -318
- package/dist/crm-R5IXIFIV.js.map +0 -1
- package/dist/customers-4AWBFDUF.js +0 -56
- package/dist/delete-AIGE4Y4H.js +0 -63
- package/dist/delete-AIGE4Y4H.js.map +0 -1
- package/dist/delete-HGHXY24R.js +0 -54
- package/dist/delete-HGHXY24R.js.map +0 -1
- package/dist/delete-M2GDLPYN.js +0 -66
- package/dist/delete-M2GDLPYN.js.map +0 -1
- package/dist/demographics-NTWB2IMG.js +0 -138
- package/dist/demographics-NTWB2IMG.js.map +0 -1
- package/dist/discard-2WWQG6OU.js +0 -66
- package/dist/discard-2WWQG6OU.js.map +0 -1
- package/dist/domain-Y2LT6JLT.js +0 -98
- package/dist/domain-Y2LT6JLT.js.map +0 -1
- package/dist/draft-EJXNNJ3Y.js +0 -306
- package/dist/draft-EJXNNJ3Y.js.map +0 -1
- package/dist/draft-FJ7WHIXW.js +0 -328
- package/dist/draft-FJ7WHIXW.js.map +0 -1
- package/dist/draft-SLHAKJ2A.js +0 -217
- package/dist/draft-SLHAKJ2A.js.map +0 -1
- package/dist/draft-THPZFASM.js +0 -281
- package/dist/facets-U7AQC4H6.js +0 -114
- package/dist/facets-U7AQC4H6.js.map +0 -1
- package/dist/feedback-XNJQ63DS.js +0 -66
- package/dist/feedback-record-FDLMWMDG.js +0 -175
- package/dist/feedback-record-FDLMWMDG.js.map +0 -1
- package/dist/fetch-W7NULDEO.js +0 -176
- package/dist/fetch-W7NULDEO.js.map +0 -1
- package/dist/find-OTDIX6V4.js +0 -134
- package/dist/fit-7237F5EB.js +0 -45
- package/dist/flows-KABCBS3S.js +0 -244
- package/dist/flows-KABCBS3S.js.map +0 -1
- package/dist/fonts-EMMX3KII.js +0 -34
- package/dist/forecast-GNODEIIC.js +0 -104
- package/dist/forecast-GNODEIIC.js.map +0 -1
- package/dist/funnel-AAX27NH4.js +0 -837
- package/dist/funnel-AAX27NH4.js.map +0 -1
- package/dist/ga4-UDQ2HA2J.js +0 -55
- package/dist/generate-MMBYB44G.js +0 -262
- package/dist/get-QEYJRLV3.js +0 -54
- package/dist/get-QEYJRLV3.js.map +0 -1
- package/dist/get-RTVUZM6E.js +0 -78
- package/dist/get-RTVUZM6E.js.map +0 -1
- package/dist/google-KTO3PLEU.js +0 -136
- package/dist/google-M7KEXVK5.js +0 -1872
- package/dist/google-ads-OK6IG3UV.js +0 -195
- package/dist/google-ads-OK6IG3UV.js.map +0 -1
- package/dist/gsc-P3QYGDV2.js +0 -30
- package/dist/history-DBIEYQHY.js +0 -67
- package/dist/history-PQUJKK26.js +0 -133
- package/dist/history-PQUJKK26.js.map +0 -1
- package/dist/hubspot-Y77VLY6Y.js +0 -779
- package/dist/hubspot-Y77VLY6Y.js.map +0 -1
- package/dist/icon-I43F77FV.js +0 -137
- package/dist/ideas-MIDU7YOA.js +0 -32
- package/dist/images-S254MS6O.js +0 -90
- package/dist/ingest-J4I3HKM3.js +0 -107
- package/dist/ingest-J4I3HKM3.js.map +0 -1
- package/dist/ingest-YV2NLDBE.js +0 -23
- package/dist/insights-ZIU6FJMS.js +0 -122
- package/dist/inspect-Q5NHBBHX.js +0 -189
- package/dist/inspect-Q5NHBBHX.js.map +0 -1
- package/dist/inspiration-P265QJ2H.js +0 -53
- package/dist/keyword-metrics-PDY4ZXSP.js +0 -197
- package/dist/keyword-metrics-PDY4ZXSP.js.map +0 -1
- package/dist/keywords-for-site-GALSCV77.js +0 -128
- package/dist/keywords-for-site-GALSCV77.js.map +0 -1
- package/dist/landing-CJYGWCK4.js +0 -28
- package/dist/leads-PHKG6CP3.js +0 -90
- package/dist/leads-PHKG6CP3.js.map +0 -1
- package/dist/learn-3VO6DXUX.js +0 -203
- package/dist/learn-3VO6DXUX.js.map +0 -1
- package/dist/line-item-writes-E6MZPIZZ.js +0 -208
- package/dist/line-item-writes-E6MZPIZZ.js.map +0 -1
- package/dist/line-items-7ZGIKEF2.js +0 -103
- package/dist/link-QYAW6A2W.js +0 -64
- package/dist/link-QYAW6A2W.js.map +0 -1
- package/dist/linkedin-FFSDSGGS.js +0 -1008
- package/dist/linkedin-FFSDSGGS.js.map +0 -1
- package/dist/list-5IC6KIKO.js +0 -63
- package/dist/list-5IC6KIKO.js.map +0 -1
- package/dist/list-NVQC5SNY.js +0 -151
- package/dist/list-NVQC5SNY.js.map +0 -1
- package/dist/list-SAV3LQHY.js +0 -303
- package/dist/list-SAV3LQHY.js.map +0 -1
- package/dist/locations-74TPQWAT.js +0 -67
- package/dist/log-XZPVOALD.js +0 -92
- package/dist/log-XZPVOALD.js.map +0 -1
- package/dist/logo-2IP663QO.js +0 -18
- package/dist/lookup-XK45W2SH.js +0 -22
- package/dist/make-LCNP76OF.js +0 -593
- package/dist/make-LCNP76OF.js.map +0 -1
- package/dist/map-4J5WIWIG.js +0 -404
- package/dist/map-4J5WIWIG.js.map +0 -1
- package/dist/mcp-XXD7ZQCP.js +0 -476
- package/dist/mcp-XXD7ZQCP.js.map +0 -1
- package/dist/media-sources-O6ZRUA3N.js +0 -32
- package/dist/members-D5ZYLS4Y.js +0 -44
- package/dist/members-D5ZYLS4Y.js.map +0 -1
- package/dist/models-7U3GRYHF.js +0 -155
- package/dist/normalize-PCNC6E2N.js +0 -138
- package/dist/normalize-PCNC6E2N.js.map +0 -1
- package/dist/options-MQ65VEVD.js +0 -121
- package/dist/options-MQ65VEVD.js.map +0 -1
- package/dist/performance-6QW2KEEQ.js +0 -24
- package/dist/pixels-45A55MOP.js +0 -60
- package/dist/promoted-tweet-writes-JPLHY3GM.js +0 -180
- package/dist/promoted-tweet-writes-JPLHY3GM.js.map +0 -1
- package/dist/promoted-tweets-SURKMHFI.js +0 -119
- package/dist/publish-HCQ6MXLB.js +0 -322
- package/dist/publish-HCQ6MXLB.js.map +0 -1
- package/dist/reddit-GIP3ADMS.js +0 -26
- package/dist/refresh-UXQSLCR3.js +0 -94
- package/dist/refresh-UXQSLCR3.js.map +0 -1
- package/dist/release-5KVLXNP6.js +0 -60
- package/dist/release-5KVLXNP6.js.map +0 -1
- package/dist/remove-6FIVKCJI.js +0 -50
- package/dist/remove-6FIVKCJI.js.map +0 -1
- package/dist/reopen-YM5LNOLB.js +0 -63
- package/dist/reopen-YM5LNOLB.js.map +0 -1
- package/dist/rerun-CET74VPF.js +0 -85
- package/dist/rerun-CET74VPF.js.map +0 -1
- package/dist/research-EY7C7JJY.js +0 -62
- package/dist/research-YOGE7GT2.js +0 -262
- package/dist/research-YOGE7GT2.js.map +0 -1
- package/dist/reset-C4UHQ3EU.js +0 -54
- package/dist/reset-C4UHQ3EU.js.map +0 -1
- package/dist/reset-OLVB6AE6.js +0 -54
- package/dist/reset-OLVB6AE6.js.map +0 -1
- package/dist/resolve-XYH2GDAE.js +0 -121
- package/dist/resolve-XYH2GDAE.js.map +0 -1
- package/dist/retry-726GKI6V.js +0 -62
- package/dist/retry-726GKI6V.js.map +0 -1
- package/dist/retry-7EELDEQP.js +0 -60
- package/dist/retry-7EELDEQP.js.map +0 -1
- package/dist/run-P4KR2MXC.js +0 -65
- package/dist/run-P4KR2MXC.js.map +0 -1
- package/dist/run-XQ7EM3JT.js +0 -60
- package/dist/scaffold-ad-U2KSHKBC.js +0 -1549
- package/dist/scaffold-ad-U2KSHKBC.js.map +0 -1
- package/dist/scaffold-static-ad-63LQKUSO.js +0 -966
- package/dist/scaffold-static-ad-63LQKUSO.js.map +0 -1
- package/dist/scaffold-video-MUS6LHJQ.js +0 -873
- package/dist/scaffold-video-MUS6LHJQ.js.map +0 -1
- package/dist/schedule-RDK4GEPI.js +0 -61
- package/dist/schedule-RDK4GEPI.js.map +0 -1
- package/dist/scheduled-agents-6U44QE76.js +0 -49
- package/dist/schema-CHJDC7GQ.js +0 -129
- package/dist/schema-CHJDC7GQ.js.map +0 -1
- package/dist/search-PMJRU3C4.js +0 -174
- package/dist/search-PMJRU3C4.js.map +0 -1
- package/dist/select-4Z7BW5RH.js +0 -94
- package/dist/select-4Z7BW5RH.js.map +0 -1
- package/dist/sends-WGJVQUMF.js +0 -309
- package/dist/sends-WGJVQUMF.js.map +0 -1
- package/dist/set-prompt-OB2V3XJP.js +0 -186
- package/dist/set-prompt-OB2V3XJP.js.map +0 -1
- package/dist/setup-links-REPREN3C.js +0 -141
- package/dist/setup-links-REPREN3C.js.map +0 -1
- package/dist/site-WFSWIA3S.js +0 -177
- package/dist/site-WFSWIA3S.js.map +0 -1
- package/dist/sources-AMI2AWKZ.js +0 -421
- package/dist/sources-AMI2AWKZ.js.map +0 -1
- package/dist/sources-YBQ6KPFM.js +0 -30
- package/dist/stale-DAYXOY3Z.js +0 -63
- package/dist/stale-DAYXOY3Z.js.map +0 -1
- package/dist/status-7F2KHFGA.js +0 -62
- package/dist/status-7F2KHFGA.js.map +0 -1
- package/dist/stock-2YCDN3N6.js +0 -179
- package/dist/studio-C5K3YX3P.js +0 -49
- package/dist/sync-GWTLKZTU.js +0 -54
- package/dist/sync-GWTLKZTU.js.map +0 -1
- package/dist/sync-definition-ILS2B2BJ.js +0 -53
- package/dist/tags-3WPW6PTV.js +0 -26
- package/dist/tags-6342FQEB.js +0 -20
- package/dist/tags-6342FQEB.js.map +0 -1
- package/dist/tags-ABHSX6M5.js +0 -20
- package/dist/tags-ABHSX6M5.js.map +0 -1
- package/dist/tags-FJIBBBRG.js +0 -20
- package/dist/tags-FJIBBBRG.js.map +0 -1
- package/dist/tags-KFYLZLB3.js +0 -224
- package/dist/tags-KFYLZLB3.js.map +0 -1
- package/dist/targeting-criteria-NR47AF5C.js +0 -113
- package/dist/targets-L56KOVQE.js +0 -102
- package/dist/targets-L56KOVQE.js.map +0 -1
- package/dist/templates-B6XGDYUF.js +0 -178
- package/dist/templates-B6XGDYUF.js.map +0 -1
- package/dist/testimonials-CVC4YIXO.js +0 -32
- package/dist/top-companies-45X3DT7Z.js +0 -108
- package/dist/top-companies-45X3DT7Z.js.map +0 -1
- package/dist/translate-TA5KQIU7.js +0 -598
- package/dist/translate-TA5KQIU7.js.map +0 -1
- package/dist/triggers-22EMIVFD.js +0 -141
- package/dist/triggers-22EMIVFD.js.map +0 -1
- package/dist/unlink-65KUN6ID.js +0 -67
- package/dist/unlink-65KUN6ID.js.map +0 -1
- package/dist/unstage-2E3I5SWF.js +0 -84
- package/dist/unstage-2E3I5SWF.js.map +0 -1
- package/dist/unstage-4ZEULXEQ.js +0 -95
- package/dist/unstage-4ZEULXEQ.js.map +0 -1
- package/dist/update-2S7CSEAW.js +0 -63
- package/dist/update-2S7CSEAW.js.map +0 -1
- package/dist/update-7NCOTAQZ.js +0 -98
- package/dist/update-7NCOTAQZ.js.map +0 -1
- package/dist/update-D6DJC6T7.js +0 -155
- package/dist/update-D6DJC6T7.js.map +0 -1
- package/dist/update-KREBPGBH.js +0 -142
- package/dist/update-KREBPGBH.js.map +0 -1
- package/dist/upload-O6NHRPS7.js +0 -126
- package/dist/upload-O6NHRPS7.js.map +0 -1
- package/dist/url-options-GGXAL3J4.js +0 -127
- package/dist/url-options-GGXAL3J4.js.map +0 -1
- package/dist/url-params-3EFGVTZZ.js +0 -98
- package/dist/url-params-3EFGVTZZ.js.map +0 -1
- package/dist/validate-LDBAAXQO.js +0 -89
- package/dist/validate-LDBAAXQO.js.map +0 -1
- package/dist/videos-YSXYGTBM.js +0 -39
- package/dist/viewer-check-45T2HLAH.js +0 -69
- package/dist/web-IGIGVEKS.js +0 -140
- package/dist/web-IGIGVEKS.js.map +0 -1
- package/dist/winning-ads-ASH5DSV3.js +0 -62
- package/dist/write-commands-5C7FUOVN.js +0 -1015
- package/dist/write-commands-5C7FUOVN.js.map +0 -1
- package/dist/x-BFSKFCZD.js +0 -47
- /package/dist/{account-F6MHQ64I.js.map → account-4H7QVBRK.js.map} +0 -0
- /package/dist/{account-writes-ISE4U2FQ.js.map → account-writes-AK42HGRM.js.map} +0 -0
- /package/dist/{actions-P35MEMGN.js.map → actions-6TQMSVWD.js.map} +0 -0
- /package/dist/{ad-group-writes-UU5NNKSO.js.map → ad-group-writes-QQS4223F.js.map} +0 -0
- /package/dist/{ad-groups-CGFXZNIA.js.map → ad-groups-WGPDPUI2.js.map} +0 -0
- /package/dist/{ad-writes-NALDYWOR.js.map → ad-writes-XE2IE4DS.js.map} +0 -0
- /package/dist/{ads-C47NA2HH.js.map → ads-AGYCVD62.js.map} +0 -0
- /package/dist/{ads-PV7GZXPR.js.map → ads-BCOSQALY.js.map} +0 -0
- /package/dist/{animate-FWWHSYPL.js.map → animate-AIZ3GS4J.js.map} +0 -0
- /package/dist/{audiences-VEKGLWBG.js.map → audiences-TGD5US2M.js.map} +0 -0
- /package/dist/{avatars-EKCKHCC3.js.map → avatars-467OSBD6.js.map} +0 -0
- /package/dist/{brand-C6PFGGQN.js.map → brand-YRTEPGBK.js.map} +0 -0
- /package/dist/{campaign-writes-SX52CJYW.js.map → campaign-writes-SXLZFYF6.js.map} +0 -0
- /package/dist/{campaigns-KZYZTXDS.js.map → campaigns-OYMXDGWX.js.map} +0 -0
- /package/dist/{campaigns-X3DPCCSN.js.map → campaigns-YS3OGQXO.js.map} +0 -0
- /package/dist/{canvas-DPCBGW7K.js.map → canvas-YQFG52IG.js.map} +0 -0
- /package/dist/{catalog-ME44ZRZF.js.map → catalog-XLXIM7IW.js.map} +0 -0
- /package/dist/{catalogs-G3YEVG6S.js.map → catalogs-BRXEDE56.js.map} +0 -0
- /package/dist/{chatgpt-QNUN63YS.js.map → chatgpt-7W75X3ER.js.map} +0 -0
- /package/dist/{chunk-7YCRFMXF.js.map → chunk-24EB7EDR.js.map} +0 -0
- /package/dist/{chunk-5ZDLTE5T.js.map → chunk-2AOE2MZQ.js.map} +0 -0
- /package/dist/{chunk-IBURXTL4.js.map → chunk-2VPBIT65.js.map} +0 -0
- /package/dist/{chunk-NPY4QUMQ.js.map → chunk-54C6YDGJ.js.map} +0 -0
- /package/dist/{chunk-LZ73CZGP.js.map → chunk-5WCSKQ7Z.js.map} +0 -0
- /package/dist/{chunk-3G3ZDLMI.js.map → chunk-5ZNTADVR.js.map} +0 -0
- /package/dist/{chunk-AEOSAVVL.js.map → chunk-6F7DVPOS.js.map} +0 -0
- /package/dist/{chunk-FD27ZDVP.js.map → chunk-6NY2GPR4.js.map} +0 -0
- /package/dist/{chunk-TT5R35PJ.js.map → chunk-6Y7ZBENQ.js.map} +0 -0
- /package/dist/{chunk-5Y5UAJWD.js.map → chunk-7CTMH5AK.js.map} +0 -0
- /package/dist/{chunk-35XWJEWH.js.map → chunk-7J6EHOH6.js.map} +0 -0
- /package/dist/{chunk-Z2EOC6PL.js.map → chunk-ASI4P6X2.js.map} +0 -0
- /package/dist/{chunk-2QHODRR6.js.map → chunk-C46GUI2S.js.map} +0 -0
- /package/dist/{chunk-K7FZXIOZ.js.map → chunk-CWYAELVG.js.map} +0 -0
- /package/dist/{chunk-MXYBTMKB.js.map → chunk-DCRPXOJJ.js.map} +0 -0
- /package/dist/{chunk-54UVGFX3.js.map → chunk-EAP4O4FE.js.map} +0 -0
- /package/dist/{chunk-K66OLA6Y.js.map → chunk-FPOGPFAG.js.map} +0 -0
- /package/dist/{chunk-JQJDXPCO.js.map → chunk-FUHN4MFY.js.map} +0 -0
- /package/dist/{chunk-S77PZVYM.js.map → chunk-FYGR3I2A.js.map} +0 -0
- /package/dist/{chunk-OZRUJVIQ.js.map → chunk-H3427GPU.js.map} +0 -0
- /package/dist/{chunk-KQTYTCKQ.js.map → chunk-HZUDRKGR.js.map} +0 -0
- /package/dist/{chunk-IR6D7K4H.js.map → chunk-I3ZR655O.js.map} +0 -0
- /package/dist/{chunk-J5IY3GVE.js.map → chunk-KMKEYI37.js.map} +0 -0
- /package/dist/{chunk-W3ZHJJVT.js.map → chunk-KS2QY6MK.js.map} +0 -0
- /package/dist/{chunk-GLCPTMPG.js.map → chunk-LYQJ4PZW.js.map} +0 -0
- /package/dist/{chunk-GBMP4F45.js.map → chunk-MACCF4JZ.js.map} +0 -0
- /package/dist/{chunk-CSYSX4D2.js.map → chunk-N4LAYIIN.js.map} +0 -0
- /package/dist/{chunk-4AUMTNVB.js.map → chunk-NA63BH7V.js.map} +0 -0
- /package/dist/{chunk-KFE3S63W.js.map → chunk-NCWCZY5P.js.map} +0 -0
- /package/dist/{chunk-4BQXAE7Z.js.map → chunk-NDEE6G2J.js.map} +0 -0
- /package/dist/{chunk-7ZHMGXE2.js.map → chunk-NJXNU2G6.js.map} +0 -0
- /package/dist/{chunk-HQSCJYZO.js.map → chunk-P5T7OZKV.js.map} +0 -0
- /package/dist/{chunk-VB6WJJR3.js.map → chunk-PZXCWSKV.js.map} +0 -0
- /package/dist/{chunk-MELOSESI.js.map → chunk-R25YLW6H.js.map} +0 -0
- /package/dist/{chunk-Y6O7EWYY.js.map → chunk-RL5CP7N6.js.map} +0 -0
- /package/dist/{chunk-HBTF25YG.js.map → chunk-RX2DKU3W.js.map} +0 -0
- /package/dist/{chunk-647RO73Q.js.map → chunk-ULG4QRTV.js.map} +0 -0
- /package/dist/{chunk-QRP3PXWN.js.map → chunk-VL43TNIP.js.map} +0 -0
- /package/dist/{chunk-SHL7LOC3.js.map → chunk-VLMBTPXU.js.map} +0 -0
- /package/dist/{chunk-LYBXCXJB.js.map → chunk-VNUNE5AB.js.map} +0 -0
- /package/dist/{chunk-KHRXPQID.js.map → chunk-VYQ3QJ3C.js.map} +0 -0
- /package/dist/{chunk-A4LOJ2VD.js.map → chunk-WGUQHAJY.js.map} +0 -0
- /package/dist/{chunk-ZEYEWPK6.js.map → chunk-WKQG6TER.js.map} +0 -0
- /package/dist/{chunk-ULJ5RFOV.js.map → chunk-XFGAUP5B.js.map} +0 -0
- /package/dist/{chunk-3IBYKLXR.js.map → chunk-ZDMTXQ2Q.js.map} +0 -0
- /package/dist/{connect-QCOGEPP4.js.map → connect-FCXNVTXG.js.map} +0 -0
- /package/dist/{conversion-report-N4HANYOB.js.map → conversion-report-XQBJ6LG4.js.map} +0 -0
- /package/dist/{conversion-writes-LW4HQKK5.js.map → conversion-writes-UBCVXP2E.js.map} +0 -0
- /package/dist/{conversions-TS723AZV.js.map → conversions-D236RTUK.js.map} +0 -0
- /package/dist/{creatives-SJTJU6VT.js.map → creatives-FXUQ5WSD.js.map} +0 -0
- /package/dist/{customers-4AWBFDUF.js.map → customers-XH2DMTFH.js.map} +0 -0
- /package/dist/{draft-THPZFASM.js.map → draft-MNFJ4G3C.js.map} +0 -0
- /package/dist/{feedback-XNJQ63DS.js.map → feedback-EIZKS4JU.js.map} +0 -0
- /package/dist/{find-OTDIX6V4.js.map → find-FRRHAPWX.js.map} +0 -0
- /package/dist/{fit-7237F5EB.js.map → fit-UOFYFJ4Q.js.map} +0 -0
- /package/dist/{fonts-EMMX3KII.js.map → fonts-MXR3ZKDX.js.map} +0 -0
- /package/dist/{ga4-UDQ2HA2J.js.map → ga4-DV2AXCSL.js.map} +0 -0
- /package/dist/{generate-MMBYB44G.js.map → generate-3XYYITU6.js.map} +0 -0
- /package/dist/{google-M7KEXVK5.js.map → google-6OGZX47I.js.map} +0 -0
- /package/dist/{google-KTO3PLEU.js.map → google-QYYYSSXI.js.map} +0 -0
- /package/dist/{gsc-P3QYGDV2.js.map → gsc-TAKOF7J5.js.map} +0 -0
- /package/dist/{history-DBIEYQHY.js.map → history-Q3QCT64S.js.map} +0 -0
- /package/dist/{icon-I43F77FV.js.map → icon-L4RSS6PZ.js.map} +0 -0
- /package/dist/{ideas-MIDU7YOA.js.map → ideas-NFOW3HKJ.js.map} +0 -0
- /package/dist/{images-S254MS6O.js.map → images-2EFFUNNV.js.map} +0 -0
- /package/dist/{ingest-YV2NLDBE.js.map → ingest-2EIKN4QC.js.map} +0 -0
- /package/dist/{insights-ZIU6FJMS.js.map → insights-LNAXV2CG.js.map} +0 -0
- /package/dist/{inspiration-P265QJ2H.js.map → inspiration-S3DU4CMQ.js.map} +0 -0
- /package/dist/{landing-CJYGWCK4.js.map → landing-2ZB46LXH.js.map} +0 -0
- /package/dist/{line-items-7ZGIKEF2.js.map → line-items-5NECXUZT.js.map} +0 -0
- /package/dist/{locations-74TPQWAT.js.map → locations-2NKBJKBT.js.map} +0 -0
- /package/dist/{logo-2IP663QO.js.map → logo-Q5D7PZY6.js.map} +0 -0
- /package/dist/{lookup-XK45W2SH.js.map → lookup-ETWY47F7.js.map} +0 -0
- /package/dist/{media-sources-O6ZRUA3N.js.map → media-sources-ZXHEEP6T.js.map} +0 -0
- /package/dist/{models-7U3GRYHF.js.map → models-3Z6MDHQW.js.map} +0 -0
- /package/dist/{performance-6QW2KEEQ.js.map → performance-UF5VTY2U.js.map} +0 -0
- /package/dist/{pixels-45A55MOP.js.map → pixels-TZPF746S.js.map} +0 -0
- /package/dist/{promoted-tweets-SURKMHFI.js.map → promoted-tweets-LZKS5JIF.js.map} +0 -0
- /package/dist/{reddit-GIP3ADMS.js.map → reddit-NU2N3LZD.js.map} +0 -0
- /package/dist/{research-EY7C7JJY.js.map → research-FMM6AWZC.js.map} +0 -0
- /package/dist/{run-XQ7EM3JT.js.map → run-EUO34T2J.js.map} +0 -0
- /package/dist/{scheduled-agents-6U44QE76.js.map → scheduled-agents-N4LJRM4C.js.map} +0 -0
- /package/dist/{sources-YBQ6KPFM.js.map → sources-FQ2UZTHL.js.map} +0 -0
- /package/dist/{stock-2YCDN3N6.js.map → stock-KXJ26BY4.js.map} +0 -0
- /package/dist/{studio-C5K3YX3P.js.map → studio-SYKOSNDB.js.map} +0 -0
- /package/dist/{sync-definition-ILS2B2BJ.js.map → sync-definition-QR2N233R.js.map} +0 -0
- /package/dist/{tags-3WPW6PTV.js.map → tags-PYWFSBTR.js.map} +0 -0
- /package/dist/{targeting-criteria-NR47AF5C.js.map → targeting-criteria-RJFLFICN.js.map} +0 -0
- /package/dist/{testimonials-CVC4YIXO.js.map → testimonials-DII5DYLR.js.map} +0 -0
- /package/dist/{videos-YSXYGTBM.js.map → videos-LICG6ACJ.js.map} +0 -0
- /package/dist/{viewer-check-45T2HLAH.js.map → viewer-check-L4B4LIAX.js.map} +0 -0
- /package/dist/{winning-ads-ASH5DSV3.js.map → winning-ads-C6S2C5VP.js.map} +0 -0
- /package/dist/{x-BFSKFCZD.js.map → x-CZHRC6U7.js.map} +0 -0
|
@@ -1,180 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
csvArg,
|
|
3
|
-
requireTargets,
|
|
4
|
-
stageAccountId,
|
|
5
|
-
stageXOp,
|
|
6
|
-
stageXOps
|
|
7
|
-
} from "./chunk-KHRXPQID.js";
|
|
8
|
-
import "./chunk-M6UNISGO.js";
|
|
9
|
-
import "./chunk-C6U6UDHJ.js";
|
|
10
|
-
import "./chunk-VFIOJD5M.js";
|
|
11
|
-
import {
|
|
12
|
-
TARGETING_OPERATORS,
|
|
13
|
-
TARGETING_TYPES
|
|
14
|
-
} from "./chunk-XF4JUKVF.js";
|
|
15
|
-
import "./chunk-GXDLWBOY.js";
|
|
16
|
-
import "./chunk-TEINLN64.js";
|
|
17
|
-
import "./chunk-ZJWUBJYQ.js";
|
|
18
|
-
import "./chunk-NE4F3FHN.js";
|
|
19
|
-
import "./chunk-XBOK23HI.js";
|
|
20
|
-
import "./chunk-IFWP3ZDO.js";
|
|
21
|
-
import "./chunk-NAWWC5I3.js";
|
|
22
|
-
import {
|
|
23
|
-
registerSchema
|
|
24
|
-
} from "./chunk-NU7JSWVA.js";
|
|
25
|
-
import "./chunk-YQSBHWOI.js";
|
|
26
|
-
|
|
27
|
-
// src/commands/ads/x/promoted-tweet-writes.ts
|
|
28
|
-
import { defineCommand } from "citty";
|
|
29
|
-
registerSchema({
|
|
30
|
-
command: "ads.x.promotedTweets.create",
|
|
31
|
-
description: "Stage promoting one or more existing posts in an X ad group. Takes post (tweet) ids \u2014 the numeric id from the post's URL, not a base36 ads id.",
|
|
32
|
-
args: {
|
|
33
|
-
"account-id": { type: "string", description: "X Ads account ID", required: false },
|
|
34
|
-
"line-item-id": {
|
|
35
|
-
type: "string",
|
|
36
|
-
description: "Ad group id, or an x_temp_* ref staged in this draft",
|
|
37
|
-
required: true
|
|
38
|
-
},
|
|
39
|
-
"tweet-ids": { type: "string", description: "CSV of post ids", required: true }
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
var promotedTweetsCreateCommand = defineCommand({
|
|
43
|
-
meta: {
|
|
44
|
-
name: "create",
|
|
45
|
-
description: `Stage promoting posts in an ad group (applies when the chat is published).
|
|
46
|
-
|
|
47
|
-
Example:
|
|
48
|
-
baker ads x promoted-tweets create --line-item-id wiee9 --tweet-ids 2042198488033661285`
|
|
49
|
-
},
|
|
50
|
-
args: {
|
|
51
|
-
"account-id": { type: "string", description: "X Ads account ID" },
|
|
52
|
-
"line-item-id": { type: "string", description: "Ad group id or x_temp_* ref", required: true },
|
|
53
|
-
"tweet-ids": { type: "string", description: "CSV of post ids", required: true }
|
|
54
|
-
},
|
|
55
|
-
run: async ({ args }) => {
|
|
56
|
-
const accountId = await stageAccountId(args);
|
|
57
|
-
await stageXOp({
|
|
58
|
-
kind: "promotedTweet.create",
|
|
59
|
-
accountId,
|
|
60
|
-
payload: { lineItemId: args["line-item-id"], tweetIds: csvArg(args["tweet-ids"]) ?? [] }
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
registerSchema({
|
|
65
|
-
command: "ads.x.promotedTweets.remove",
|
|
66
|
-
description: "Stage removing one or more promoted posts. X has no pause for these \u2014 removal is the only way to stop one serving, and it cannot be undone (re-promoting creates a new association).",
|
|
67
|
-
args: {
|
|
68
|
-
ids: { type: "string", description: "Promoted-post ids, comma-separated", required: true },
|
|
69
|
-
"account-id": { type: "string", description: "X Ads account ID", required: false }
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
|
-
var promotedTweetsRemoveCommand = defineCommand({
|
|
73
|
-
meta: {
|
|
74
|
-
name: "remove",
|
|
75
|
-
description: `Stage removing promoted posts. Cannot be undone.
|
|
76
|
-
|
|
77
|
-
Example:
|
|
78
|
-
baker ads x promoted-tweets remove ayyorn,ayyoro`
|
|
79
|
-
},
|
|
80
|
-
args: {
|
|
81
|
-
ids: { type: "positional", description: "Promoted-post ids, comma-separated", required: true },
|
|
82
|
-
"account-id": { type: "string", description: "X Ads account ID" }
|
|
83
|
-
},
|
|
84
|
-
run: async ({ args }) => {
|
|
85
|
-
const accountId = await stageAccountId(args);
|
|
86
|
-
await stageXOps(
|
|
87
|
-
requireTargets(args, "ids").map((id) => ({
|
|
88
|
-
kind: "promotedTweet.remove",
|
|
89
|
-
accountId,
|
|
90
|
-
target: id,
|
|
91
|
-
payload: {}
|
|
92
|
-
}))
|
|
93
|
-
);
|
|
94
|
-
}
|
|
95
|
-
});
|
|
96
|
-
registerSchema({
|
|
97
|
-
command: "ads.x.targetingCriteria.create",
|
|
98
|
-
description: `Stage one targeting criterion on an X ad group. One op per value, because X stores each criterion as its own entity. Look values up first with \`baker ads x targeting-constants\`.
|
|
99
|
-
Types: ${TARGETING_TYPES.join(", ")}. Operators: ${TARGETING_OPERATORS.join(" (include) | ")} (exclude).`,
|
|
100
|
-
args: {
|
|
101
|
-
"account-id": { type: "string", description: "X Ads account ID", required: false },
|
|
102
|
-
"line-item-id": { type: "string", description: "Ad group id, or an x_temp_* ref", required: true },
|
|
103
|
-
type: { type: "string", description: TARGETING_TYPES.join(" | "), required: true },
|
|
104
|
-
value: {
|
|
105
|
-
type: "string",
|
|
106
|
-
description: "Targeting value \u2014 from `targeting-constants` for the lookup types",
|
|
107
|
-
required: true
|
|
108
|
-
},
|
|
109
|
-
operator: { type: "string", description: "EQ to include (default), NE to exclude", required: false }
|
|
110
|
-
}
|
|
111
|
-
});
|
|
112
|
-
var targetingCriteriaCreateCommand = defineCommand({
|
|
113
|
-
meta: {
|
|
114
|
-
name: "create",
|
|
115
|
-
description: `Stage one targeting criterion on an ad group.
|
|
116
|
-
|
|
117
|
-
Examples:
|
|
118
|
-
baker ads x targeting-criteria create --line-item-id wiee9 --type LOCATION --value 96683cc9126741d1
|
|
119
|
-
baker ads x targeting-criteria create --line-item-id wiee9 --type INTEREST --value 25 --operator NE`
|
|
120
|
-
},
|
|
121
|
-
args: {
|
|
122
|
-
"account-id": { type: "string", description: "X Ads account ID" },
|
|
123
|
-
"line-item-id": { type: "string", description: "Ad group id or x_temp_* ref", required: true },
|
|
124
|
-
type: { type: "string", description: TARGETING_TYPES.join(" | "), required: true },
|
|
125
|
-
value: { type: "string", description: "Targeting value", required: true },
|
|
126
|
-
operator: { type: "string", description: "EQ (include) | NE (exclude)" }
|
|
127
|
-
},
|
|
128
|
-
run: async ({ args }) => {
|
|
129
|
-
const accountId = await stageAccountId(args);
|
|
130
|
-
await stageXOp({
|
|
131
|
-
kind: "targetingCriteria.create",
|
|
132
|
-
accountId,
|
|
133
|
-
payload: {
|
|
134
|
-
lineItemId: args["line-item-id"],
|
|
135
|
-
targetingType: args.type,
|
|
136
|
-
targetingValue: args.value,
|
|
137
|
-
...args.operator ? { operatorType: args.operator } : {}
|
|
138
|
-
}
|
|
139
|
-
});
|
|
140
|
-
}
|
|
141
|
-
});
|
|
142
|
-
registerSchema({
|
|
143
|
-
command: "ads.x.targetingCriteria.remove",
|
|
144
|
-
description: "Stage removing one or more targeting criteria from an X ad group.",
|
|
145
|
-
args: {
|
|
146
|
-
ids: { type: "string", description: "Targeting criterion ids, comma-separated", required: true },
|
|
147
|
-
"account-id": { type: "string", description: "X Ads account ID", required: false }
|
|
148
|
-
}
|
|
149
|
-
});
|
|
150
|
-
var targetingCriteriaRemoveCommand = defineCommand({
|
|
151
|
-
meta: {
|
|
152
|
-
name: "remove",
|
|
153
|
-
description: `Stage removing targeting criteria.
|
|
154
|
-
|
|
155
|
-
Example:
|
|
156
|
-
baker ads x targeting-criteria remove 1dmtken`
|
|
157
|
-
},
|
|
158
|
-
args: {
|
|
159
|
-
ids: { type: "positional", description: "Targeting criterion ids, comma-separated", required: true },
|
|
160
|
-
"account-id": { type: "string", description: "X Ads account ID" }
|
|
161
|
-
},
|
|
162
|
-
run: async ({ args }) => {
|
|
163
|
-
const accountId = await stageAccountId(args);
|
|
164
|
-
await stageXOps(
|
|
165
|
-
requireTargets(args, "ids").map((id) => ({
|
|
166
|
-
kind: "targetingCriteria.remove",
|
|
167
|
-
accountId,
|
|
168
|
-
target: id,
|
|
169
|
-
payload: {}
|
|
170
|
-
}))
|
|
171
|
-
);
|
|
172
|
-
}
|
|
173
|
-
});
|
|
174
|
-
export {
|
|
175
|
-
promotedTweetsCreateCommand,
|
|
176
|
-
promotedTweetsRemoveCommand,
|
|
177
|
-
targetingCriteriaCreateCommand,
|
|
178
|
-
targetingCriteriaRemoveCommand
|
|
179
|
-
};
|
|
180
|
-
//# sourceMappingURL=promoted-tweet-writes-JPLHY3GM.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/ads/x/promoted-tweet-writes.ts"],"sourcesContent":["import { TARGETING_OPERATORS, TARGETING_TYPES } from \"@baker/api\";\nimport { defineCommand } from \"citty\";\nimport { registerSchema } from \"../../../schemas.ts\";\nimport { csvArg, requireTargets, stageAccountId, stageXOp, stageXOps } from \"./write-shared.ts\";\n\n/**\n * Staged ad and targeting writes.\n *\n * \"Promoted tweet\" is X's name for the association between a post and an ad\n * group — the thing X Ads Manager calls an ad. There is no pause: the only way\n * to stop one serving is to remove the association, which leaves the post itself\n * untouched.\n */\n\nregisterSchema({\n command: \"ads.x.promotedTweets.create\",\n description:\n \"Stage promoting one or more existing posts in an X ad group. Takes post (tweet) ids — the numeric id from the post's URL, not a base36 ads id.\",\n args: {\n \"account-id\": { type: \"string\", description: \"X Ads account ID\", required: false },\n \"line-item-id\": {\n type: \"string\",\n description: \"Ad group id, or an x_temp_* ref staged in this draft\",\n required: true,\n },\n \"tweet-ids\": { type: \"string\", description: \"CSV of post ids\", required: true },\n },\n});\n\nexport const promotedTweetsCreateCommand = defineCommand({\n meta: {\n name: \"create\",\n description: `Stage promoting posts in an ad group (applies when the chat is published).\n\nExample:\n baker ads x promoted-tweets create --line-item-id wiee9 --tweet-ids 2042198488033661285`,\n },\n args: {\n \"account-id\": { type: \"string\", description: \"X Ads account ID\" },\n \"line-item-id\": { type: \"string\", description: \"Ad group id or x_temp_* ref\", required: true },\n \"tweet-ids\": { type: \"string\", description: \"CSV of post ids\", required: true },\n },\n run: async ({ args }) => {\n const accountId = await stageAccountId(args);\n await stageXOp({\n kind: \"promotedTweet.create\",\n accountId,\n payload: { lineItemId: args[\"line-item-id\"], tweetIds: csvArg(args[\"tweet-ids\"]) ?? [] },\n });\n },\n});\n\nregisterSchema({\n command: \"ads.x.promotedTweets.remove\",\n description:\n \"Stage removing one or more promoted posts. X has no pause for these — removal is the only way to stop one serving, and it cannot be undone (re-promoting creates a new association).\",\n args: {\n ids: { type: \"string\", description: \"Promoted-post ids, comma-separated\", required: true },\n \"account-id\": { type: \"string\", description: \"X Ads account ID\", required: false },\n },\n});\n\nexport const promotedTweetsRemoveCommand = defineCommand({\n meta: {\n name: \"remove\",\n description: `Stage removing promoted posts. Cannot be undone.\n\nExample:\n baker ads x promoted-tweets remove ayyorn,ayyoro`,\n },\n args: {\n ids: { type: \"positional\", description: \"Promoted-post ids, comma-separated\", required: true },\n \"account-id\": { type: \"string\", description: \"X Ads account ID\" },\n },\n run: async ({ args }) => {\n const accountId = await stageAccountId(args);\n await stageXOps(\n requireTargets(args, \"ids\").map((id) => ({\n kind: \"promotedTweet.remove\",\n accountId,\n target: id,\n payload: {},\n })),\n );\n },\n});\n\nregisterSchema({\n command: \"ads.x.targetingCriteria.create\",\n description: `Stage one targeting criterion on an X ad group. One op per value, because X stores each criterion as its own entity. Look values up first with \\`baker ads x targeting-constants\\`.\nTypes: ${TARGETING_TYPES.join(\", \")}. Operators: ${TARGETING_OPERATORS.join(\" (include) | \")} (exclude).`,\n args: {\n \"account-id\": { type: \"string\", description: \"X Ads account ID\", required: false },\n \"line-item-id\": { type: \"string\", description: \"Ad group id, or an x_temp_* ref\", required: true },\n type: { type: \"string\", description: TARGETING_TYPES.join(\" | \"), required: true },\n value: {\n type: \"string\",\n description: \"Targeting value — from `targeting-constants` for the lookup types\",\n required: true,\n },\n operator: { type: \"string\", description: \"EQ to include (default), NE to exclude\", required: false },\n },\n});\n\nexport const targetingCriteriaCreateCommand = defineCommand({\n meta: {\n name: \"create\",\n description: `Stage one targeting criterion on an ad group.\n\nExamples:\n baker ads x targeting-criteria create --line-item-id wiee9 --type LOCATION --value 96683cc9126741d1\n baker ads x targeting-criteria create --line-item-id wiee9 --type INTEREST --value 25 --operator NE`,\n },\n args: {\n \"account-id\": { type: \"string\", description: \"X Ads account ID\" },\n \"line-item-id\": { type: \"string\", description: \"Ad group id or x_temp_* ref\", required: true },\n type: { type: \"string\", description: TARGETING_TYPES.join(\" | \"), required: true },\n value: { type: \"string\", description: \"Targeting value\", required: true },\n operator: { type: \"string\", description: \"EQ (include) | NE (exclude)\" },\n },\n run: async ({ args }) => {\n const accountId = await stageAccountId(args);\n await stageXOp({\n kind: \"targetingCriteria.create\",\n accountId,\n payload: {\n lineItemId: args[\"line-item-id\"],\n targetingType: args.type,\n targetingValue: args.value,\n ...(args.operator ? { operatorType: args.operator } : {}),\n },\n });\n },\n});\n\nregisterSchema({\n command: \"ads.x.targetingCriteria.remove\",\n description: \"Stage removing one or more targeting criteria from an X ad group.\",\n args: {\n ids: { type: \"string\", description: \"Targeting criterion ids, comma-separated\", required: true },\n \"account-id\": { type: \"string\", description: \"X Ads account ID\", required: false },\n },\n});\n\nexport const targetingCriteriaRemoveCommand = defineCommand({\n meta: {\n name: \"remove\",\n description: `Stage removing targeting criteria.\n\nExample:\n baker ads x targeting-criteria remove 1dmtken`,\n },\n args: {\n ids: { type: \"positional\", description: \"Targeting criterion ids, comma-separated\", required: true },\n \"account-id\": { type: \"string\", description: \"X Ads account ID\" },\n },\n run: async ({ args }) => {\n const accountId = await stageAccountId(args);\n await stageXOps(\n requireTargets(args, \"ids\").map((id) => ({\n kind: \"targetingCriteria.remove\",\n accountId,\n target: id,\n payload: {},\n })),\n );\n },\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,SAAS,qBAAqB;AAa9B,eAAe;AAAA,EACb,SAAS;AAAA,EACT,aACE;AAAA,EACF,MAAM;AAAA,IACJ,cAAc,EAAE,MAAM,UAAU,aAAa,oBAAoB,UAAU,MAAM;AAAA,IACjF,gBAAgB;AAAA,MACd,MAAM;AAAA,MACN,aAAa;AAAA,MACb,UAAU;AAAA,IACZ;AAAA,IACA,aAAa,EAAE,MAAM,UAAU,aAAa,mBAAmB,UAAU,KAAK;AAAA,EAChF;AACF,CAAC;AAEM,IAAM,8BAA8B,cAAc;AAAA,EACvD,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aAAa;AAAA;AAAA;AAAA;AAAA,EAIf;AAAA,EACA,MAAM;AAAA,IACJ,cAAc,EAAE,MAAM,UAAU,aAAa,mBAAmB;AAAA,IAChE,gBAAgB,EAAE,MAAM,UAAU,aAAa,+BAA+B,UAAU,KAAK;AAAA,IAC7F,aAAa,EAAE,MAAM,UAAU,aAAa,mBAAmB,UAAU,KAAK;AAAA,EAChF;AAAA,EACA,KAAK,OAAO,EAAE,KAAK,MAAM;AACvB,UAAM,YAAY,MAAM,eAAe,IAAI;AAC3C,UAAM,SAAS;AAAA,MACb,MAAM;AAAA,MACN;AAAA,MACA,SAAS,EAAE,YAAY,KAAK,cAAc,GAAG,UAAU,OAAO,KAAK,WAAW,CAAC,KAAK,CAAC,EAAE;AAAA,IACzF,CAAC;AAAA,EACH;AACF,CAAC;AAED,eAAe;AAAA,EACb,SAAS;AAAA,EACT,aACE;AAAA,EACF,MAAM;AAAA,IACJ,KAAK,EAAE,MAAM,UAAU,aAAa,sCAAsC,UAAU,KAAK;AAAA,IACzF,cAAc,EAAE,MAAM,UAAU,aAAa,oBAAoB,UAAU,MAAM;AAAA,EACnF;AACF,CAAC;AAEM,IAAM,8BAA8B,cAAc;AAAA,EACvD,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aAAa;AAAA;AAAA;AAAA;AAAA,EAIf;AAAA,EACA,MAAM;AAAA,IACJ,KAAK,EAAE,MAAM,cAAc,aAAa,sCAAsC,UAAU,KAAK;AAAA,IAC7F,cAAc,EAAE,MAAM,UAAU,aAAa,mBAAmB;AAAA,EAClE;AAAA,EACA,KAAK,OAAO,EAAE,KAAK,MAAM;AACvB,UAAM,YAAY,MAAM,eAAe,IAAI;AAC3C,UAAM;AAAA,MACJ,eAAe,MAAM,KAAK,EAAE,IAAI,CAAC,QAAQ;AAAA,QACvC,MAAM;AAAA,QACN;AAAA,QACA,QAAQ;AAAA,QACR,SAAS,CAAC;AAAA,MACZ,EAAE;AAAA,IACJ;AAAA,EACF;AACF,CAAC;AAED,eAAe;AAAA,EACb,SAAS;AAAA,EACT,aAAa;AAAA,SACN,gBAAgB,KAAK,IAAI,CAAC,gBAAgB,oBAAoB,KAAK,eAAe,CAAC;AAAA,EAC1F,MAAM;AAAA,IACJ,cAAc,EAAE,MAAM,UAAU,aAAa,oBAAoB,UAAU,MAAM;AAAA,IACjF,gBAAgB,EAAE,MAAM,UAAU,aAAa,mCAAmC,UAAU,KAAK;AAAA,IACjG,MAAM,EAAE,MAAM,UAAU,aAAa,gBAAgB,KAAK,KAAK,GAAG,UAAU,KAAK;AAAA,IACjF,OAAO;AAAA,MACL,MAAM;AAAA,MACN,aAAa;AAAA,MACb,UAAU;AAAA,IACZ;AAAA,IACA,UAAU,EAAE,MAAM,UAAU,aAAa,0CAA0C,UAAU,MAAM;AAAA,EACrG;AACF,CAAC;AAEM,IAAM,iCAAiC,cAAc;AAAA,EAC1D,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA,EAKf;AAAA,EACA,MAAM;AAAA,IACJ,cAAc,EAAE,MAAM,UAAU,aAAa,mBAAmB;AAAA,IAChE,gBAAgB,EAAE,MAAM,UAAU,aAAa,+BAA+B,UAAU,KAAK;AAAA,IAC7F,MAAM,EAAE,MAAM,UAAU,aAAa,gBAAgB,KAAK,KAAK,GAAG,UAAU,KAAK;AAAA,IACjF,OAAO,EAAE,MAAM,UAAU,aAAa,mBAAmB,UAAU,KAAK;AAAA,IACxE,UAAU,EAAE,MAAM,UAAU,aAAa,8BAA8B;AAAA,EACzE;AAAA,EACA,KAAK,OAAO,EAAE,KAAK,MAAM;AACvB,UAAM,YAAY,MAAM,eAAe,IAAI;AAC3C,UAAM,SAAS;AAAA,MACb,MAAM;AAAA,MACN;AAAA,MACA,SAAS;AAAA,QACP,YAAY,KAAK,cAAc;AAAA,QAC/B,eAAe,KAAK;AAAA,QACpB,gBAAgB,KAAK;AAAA,QACrB,GAAI,KAAK,WAAW,EAAE,cAAc,KAAK,SAAS,IAAI,CAAC;AAAA,MACzD;AAAA,IACF,CAAC;AAAA,EACH;AACF,CAAC;AAED,eAAe;AAAA,EACb,SAAS;AAAA,EACT,aAAa;AAAA,EACb,MAAM;AAAA,IACJ,KAAK,EAAE,MAAM,UAAU,aAAa,4CAA4C,UAAU,KAAK;AAAA,IAC/F,cAAc,EAAE,MAAM,UAAU,aAAa,oBAAoB,UAAU,MAAM;AAAA,EACnF;AACF,CAAC;AAEM,IAAM,iCAAiC,cAAc;AAAA,EAC1D,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aAAa;AAAA;AAAA;AAAA;AAAA,EAIf;AAAA,EACA,MAAM;AAAA,IACJ,KAAK,EAAE,MAAM,cAAc,aAAa,4CAA4C,UAAU,KAAK;AAAA,IACnG,cAAc,EAAE,MAAM,UAAU,aAAa,mBAAmB;AAAA,EAClE;AAAA,EACA,KAAK,OAAO,EAAE,KAAK,MAAM;AACvB,UAAM,YAAY,MAAM,eAAe,IAAI;AAC3C,UAAM;AAAA,MACJ,eAAe,MAAM,KAAK,EAAE,IAAI,CAAC,QAAQ;AAAA,QACvC,MAAM;AAAA,QACN;AAAA,QACA,QAAQ;AAAA,QACR,SAAS,CAAC;AAAA,MACZ,EAAE;AAAA,IACJ;AAAA,EACF;AACF,CAAC;","names":[]}
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
parseXApiError
|
|
3
|
-
} from "./chunk-M6UNISGO.js";
|
|
4
|
-
import {
|
|
5
|
-
resolveXAccountId
|
|
6
|
-
} from "./chunk-C6U6UDHJ.js";
|
|
7
|
-
import {
|
|
8
|
-
cacheGet,
|
|
9
|
-
cacheSet,
|
|
10
|
-
writeAdsJson,
|
|
11
|
-
writeAdsOutput
|
|
12
|
-
} from "./chunk-VFIOJD5M.js";
|
|
13
|
-
import {
|
|
14
|
-
ApiError,
|
|
15
|
-
apiGet
|
|
16
|
-
} from "./chunk-XBOK23HI.js";
|
|
17
|
-
import "./chunk-IFWP3ZDO.js";
|
|
18
|
-
import "./chunk-NAWWC5I3.js";
|
|
19
|
-
import {
|
|
20
|
-
registerSchema
|
|
21
|
-
} from "./chunk-NU7JSWVA.js";
|
|
22
|
-
import "./chunk-YQSBHWOI.js";
|
|
23
|
-
|
|
24
|
-
// src/commands/ads/x/promoted-tweets.ts
|
|
25
|
-
import { defineCommand } from "citty";
|
|
26
|
-
registerSchema({
|
|
27
|
-
command: "ads.x.promotedTweets",
|
|
28
|
-
description: "List promoted tweets for an X Ads account. Returns id, line_item_id, tweet_id, approval_status. Filter by line-item-ids (CSV).",
|
|
29
|
-
args: {
|
|
30
|
-
"account-id": { type: "string", description: "X Ads account ID", required: false },
|
|
31
|
-
"line-item-ids": { type: "string", description: "CSV of line item IDs", required: false },
|
|
32
|
-
"with-deleted": { type: "boolean", description: "Include deleted", required: false },
|
|
33
|
-
"no-cache": { type: "boolean", description: "Skip cache", required: false }
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
var promotedTweetsListCommand = defineCommand({
|
|
37
|
-
meta: {
|
|
38
|
-
name: "promoted-tweets",
|
|
39
|
-
description: `List X Ads promoted tweets.
|
|
40
|
-
|
|
41
|
-
Examples:
|
|
42
|
-
baker ads x promoted-tweets --account-id 18ce53xyz --line-item-ids abc,def`
|
|
43
|
-
},
|
|
44
|
-
args: {
|
|
45
|
-
"account-id": { type: "string", description: "X Ads account ID", required: false },
|
|
46
|
-
"line-item-ids": { type: "string", description: "CSV of line item IDs", required: false },
|
|
47
|
-
"with-deleted": { type: "boolean", description: "Include deleted", required: false },
|
|
48
|
-
"no-cache": { type: "boolean", description: "Skip cache", required: false },
|
|
49
|
-
output: { type: "string", description: "Format: json|csv|md", required: false, default: "json" }
|
|
50
|
-
},
|
|
51
|
-
run: async ({ args }) => {
|
|
52
|
-
const accountId = await resolveXAccountId(args);
|
|
53
|
-
const useCache = !args["no-cache"];
|
|
54
|
-
const today = (/* @__PURE__ */ new Date()).toISOString().slice(0, 10);
|
|
55
|
-
const cacheKey = `promoted-tweets:${accountId}:${today}:${args["line-item-ids"] ?? ""}:${args["with-deleted"] ? "1" : "0"}`;
|
|
56
|
-
if (useCache) {
|
|
57
|
-
const cached = cacheGet("x-account-data", cacheKey);
|
|
58
|
-
if (cached) {
|
|
59
|
-
writeAdsJson({ ok: true, data: cached.data, cached: true });
|
|
60
|
-
return;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
try {
|
|
64
|
-
const params = { "account-id": accountId };
|
|
65
|
-
if (args["line-item-ids"]) params["line-item-ids"] = args["line-item-ids"];
|
|
66
|
-
if (args["with-deleted"]) params["with-deleted"] = "true";
|
|
67
|
-
if (!useCache) params["skip-cache"] = "true";
|
|
68
|
-
const data = await apiGet("/api/ads/x/promoted-tweets", params);
|
|
69
|
-
if (useCache) {
|
|
70
|
-
cacheSet("x-account-data", cacheKey, data, 60 * 60 * 1e3);
|
|
71
|
-
}
|
|
72
|
-
const format = args.output || "json";
|
|
73
|
-
if (format !== "json") {
|
|
74
|
-
writeAdsOutput(data, format);
|
|
75
|
-
return;
|
|
76
|
-
}
|
|
77
|
-
writeAdsJson({ ok: true, data });
|
|
78
|
-
} catch (err) {
|
|
79
|
-
if (err instanceof ApiError) {
|
|
80
|
-
writeAdsJson(parseXApiError(err.message, accountId));
|
|
81
|
-
process.exit(1);
|
|
82
|
-
}
|
|
83
|
-
writeAdsJson({ ok: false, error: { code: "NETWORK_ERROR", message: "Unexpected error" } });
|
|
84
|
-
process.exit(1);
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
});
|
|
88
|
-
var promotedTweetsCommand = defineCommand({
|
|
89
|
-
meta: {
|
|
90
|
-
name: "promoted-tweets",
|
|
91
|
-
description: `Promoted posts \u2014 the association between a post and an ad group, which X Ads Manager calls an ad.
|
|
92
|
-
|
|
93
|
-
There is no pause: removing the association is the only way to stop one serving,
|
|
94
|
-
and it cannot be undone (re-promoting creates a new one). The post itself is
|
|
95
|
-
never touched.
|
|
96
|
-
|
|
97
|
-
Examples:
|
|
98
|
-
baker ads x promoted-tweets
|
|
99
|
-
baker ads x promoted-tweets create --line-item-id wiee9 --tweet-ids 2042198488033661285
|
|
100
|
-
baker ads x promoted-tweets remove ayyorn`
|
|
101
|
-
},
|
|
102
|
-
subCommands: {
|
|
103
|
-
list: promotedTweetsListCommand,
|
|
104
|
-
create: () => import("./promoted-tweet-writes-JPLHY3GM.js").then((m) => m.promotedTweetsCreateCommand),
|
|
105
|
-
remove: () => import("./promoted-tweet-writes-JPLHY3GM.js").then((m) => m.promotedTweetsRemoveCommand)
|
|
106
|
-
},
|
|
107
|
-
args: {
|
|
108
|
-
"account-id": { type: "string", description: "X Ads account ID" },
|
|
109
|
-
"line-item-ids": { type: "string", description: "CSV of line item IDs" },
|
|
110
|
-
"with-deleted": { type: "boolean", description: "Include deleted" },
|
|
111
|
-
"no-cache": { type: "boolean", description: "Skip cache" },
|
|
112
|
-
output: { type: "string", description: "Format: json|csv|md", default: "json" }
|
|
113
|
-
},
|
|
114
|
-
default: "list"
|
|
115
|
-
});
|
|
116
|
-
export {
|
|
117
|
-
promotedTweetsCommand
|
|
118
|
-
};
|
|
119
|
-
//# sourceMappingURL=promoted-tweets-SURKMHFI.js.map
|
package/dist/publish-HCQ6MXLB.js
DELETED
|
@@ -1,322 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
advanceDefinitionStatus,
|
|
3
|
-
definitionPathFor
|
|
4
|
-
} from "./chunk-3ACMDRSE.js";
|
|
5
|
-
import {
|
|
6
|
-
defaultVideoApiDeps,
|
|
7
|
-
detectVideoContentType,
|
|
8
|
-
isVideoFile,
|
|
9
|
-
uploadLocalVideo,
|
|
10
|
-
videoProcessingTimeoutMs,
|
|
11
|
-
waitForPlayableVideo
|
|
12
|
-
} from "./chunk-KNY76UGC.js";
|
|
13
|
-
import {
|
|
14
|
-
defaultImageApiDeps,
|
|
15
|
-
detectImageContentType,
|
|
16
|
-
imageProcessingTimeoutMs,
|
|
17
|
-
publishImageAsCreative,
|
|
18
|
-
uploadImageBytes,
|
|
19
|
-
uploadLocalImage,
|
|
20
|
-
waitForReadyImage
|
|
21
|
-
} from "./chunk-75FDTDLH.js";
|
|
22
|
-
import {
|
|
23
|
-
fetchRunRecord
|
|
24
|
-
} from "./chunk-A4LOJ2VD.js";
|
|
25
|
-
import {
|
|
26
|
-
findWorkspaceRoot
|
|
27
|
-
} from "./chunk-DZSIUEGH.js";
|
|
28
|
-
import {
|
|
29
|
-
sha256Hex
|
|
30
|
-
} from "./chunk-HRYOZUSK.js";
|
|
31
|
-
import "./chunk-VVZBBKRC.js";
|
|
32
|
-
import "./chunk-YBMVHGY3.js";
|
|
33
|
-
import "./chunk-XF4JUKVF.js";
|
|
34
|
-
import "./chunk-GXDLWBOY.js";
|
|
35
|
-
import "./chunk-TEINLN64.js";
|
|
36
|
-
import "./chunk-ZJWUBJYQ.js";
|
|
37
|
-
import "./chunk-NE4F3FHN.js";
|
|
38
|
-
import {
|
|
39
|
-
ApiError
|
|
40
|
-
} from "./chunk-XBOK23HI.js";
|
|
41
|
-
import "./chunk-IFWP3ZDO.js";
|
|
42
|
-
import {
|
|
43
|
-
optionalChatId
|
|
44
|
-
} from "./chunk-NAWWC5I3.js";
|
|
45
|
-
import {
|
|
46
|
-
registerSchema,
|
|
47
|
-
writeJson
|
|
48
|
-
} from "./chunk-NU7JSWVA.js";
|
|
49
|
-
import "./chunk-YQSBHWOI.js";
|
|
50
|
-
|
|
51
|
-
// src/commands/creatives/publish.ts
|
|
52
|
-
import { Buffer } from "buffer";
|
|
53
|
-
import { defineCommand } from "citty";
|
|
54
|
-
var creativeContentTypes = ["image/png", "image/jpeg", "image/webp"];
|
|
55
|
-
var creativeVideoContentTypes = ["video/mp4", "video/quicktime", "video/webm"];
|
|
56
|
-
var UNSUPPORTED_CREATIVE_FILE = "Unsupported creative file extension. Use PNG, JPG or WebP for an image, MP4, MOV or WebM for a video.";
|
|
57
|
-
var DESCRIPTION = `Save a finished creative to Baker Creatives and return a creative reference: a static image (PNG/JPG/WebP) or a finished video render (MP4/MOV/WebM).
|
|
58
|
-
Start here:
|
|
59
|
-
baker creatives publish ./canvas/r_01K\u2026/final_4x5.png --title "Spring Offer" --slug spring-offer --run-id r_01K\u2026
|
|
60
|
-
baker creatives publish --title "Spring Offer" --slug spring-offer --run-id r_01K\u2026 --output 4:5
|
|
61
|
-
baker creatives publish ./canvas/r_01K\u2026/final.mp4 --title "Spring Offer Reel" --slug spring-offer --run-id r_01K\u2026
|
|
62
|
-
With --run-id and no file, the run's own saved image is published (--output picks one when the run made several). A video goes to the company's video library first and is saved once it plays (up to 3 minutes); it needs the file and --slug. Choose and save the finished version yourself, including in the turn that rendered it. Saving pins that version without recording user approval or putting an ad live. An image publish marks the creative's _definition.md published.`;
|
|
63
|
-
var ARGS = {
|
|
64
|
-
file: {
|
|
65
|
-
type: "string",
|
|
66
|
-
description: "Local creative file: PNG/JPG/WebP image or MP4/MOV/WebM video. Optional for an image with --run-id: the run's saved output is used instead.",
|
|
67
|
-
required: false
|
|
68
|
-
},
|
|
69
|
-
title: { type: "string", description: "Human title for the creative output", required: true },
|
|
70
|
-
context: { type: "string", description: "Optional describe context for the image asset", required: false },
|
|
71
|
-
sourceReferenceUrl: {
|
|
72
|
-
type: "string",
|
|
73
|
-
description: "Optional URL of the original reference ad",
|
|
74
|
-
required: false
|
|
75
|
-
},
|
|
76
|
-
slug: {
|
|
77
|
-
type: "string",
|
|
78
|
-
description: "Creative slug (src/creatives/<slug>/). Attaches the image or video to that creative's row. Required for a video",
|
|
79
|
-
required: false
|
|
80
|
-
},
|
|
81
|
-
runId: {
|
|
82
|
-
type: "string",
|
|
83
|
-
description: "Canvas run id (r_\u2026) of the finished generation to pin as published",
|
|
84
|
-
required: false
|
|
85
|
-
},
|
|
86
|
-
output: {
|
|
87
|
-
type: "string",
|
|
88
|
-
description: "With --run-id and no file: which of the run's outputs to save when it made several, by label (e.g. 4:5), slot, or number (1 = first).",
|
|
89
|
-
required: false
|
|
90
|
-
}
|
|
91
|
-
};
|
|
92
|
-
registerSchema({ command: "creatives.publish", description: DESCRIPTION, args: ARGS });
|
|
93
|
-
function detectCreativeContentType(filePath) {
|
|
94
|
-
return detectImageContentType(filePath, {
|
|
95
|
-
allowedContentTypes: creativeContentTypes,
|
|
96
|
-
unsupportedMessage: UNSUPPORTED_CREATIVE_FILE
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
function chatIdFromEnv() {
|
|
100
|
-
return optionalChatId();
|
|
101
|
-
}
|
|
102
|
-
function parseOptionalUrl(value) {
|
|
103
|
-
if (value === void 0 || value.trim() === "") {
|
|
104
|
-
return void 0;
|
|
105
|
-
}
|
|
106
|
-
try {
|
|
107
|
-
return new URL(value).toString();
|
|
108
|
-
} catch {
|
|
109
|
-
throw new ApiError("VALIDATION_ERROR", "--source-reference-url must be a valid URL");
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
async function downloadBytes(url) {
|
|
113
|
-
const res = await fetch(url);
|
|
114
|
-
if (!res.ok) throw new ApiError("UNAVAILABLE", `Could not read the run's output (${res.status} ${res.statusText})`);
|
|
115
|
-
return Buffer.from(await res.arrayBuffer());
|
|
116
|
-
}
|
|
117
|
-
function runImages(run) {
|
|
118
|
-
if (run.status !== "completed") {
|
|
119
|
-
throw new ApiError(
|
|
120
|
-
"VALIDATION_ERROR",
|
|
121
|
-
`Run ${run.runId} did not finish (${run.status}), so it has no result to publish. Finish the run first, or pass the image file.`
|
|
122
|
-
);
|
|
123
|
-
}
|
|
124
|
-
const finals = run.finalOutputs.filter((o) => typeof o.url === "string");
|
|
125
|
-
if (finals.some((o) => !creativeContentTypes.some((t) => t === o.mime))) {
|
|
126
|
-
throw new ApiError(
|
|
127
|
-
"VALIDATION_ERROR",
|
|
128
|
-
`Run ${run.runId} made a video, not a still image. Publish the video file: baker creatives publish ./canvas/${run.runId}/<file>.mp4 --slug <slug> --run-id ${run.runId}.`
|
|
129
|
-
);
|
|
130
|
-
}
|
|
131
|
-
return finals;
|
|
132
|
-
}
|
|
133
|
-
function describeOutputs(outputs) {
|
|
134
|
-
return outputs.map((o, i) => `${i + 1}: ${o.label ?? o.slot}`).join(", ");
|
|
135
|
-
}
|
|
136
|
-
function chooseOutput(run, choice) {
|
|
137
|
-
const images = runImages(run);
|
|
138
|
-
if (images.length === 0) {
|
|
139
|
-
throw new ApiError(
|
|
140
|
-
"VALIDATION_ERROR",
|
|
141
|
-
`Run ${run.runId} has no saved image to publish. Pass the image file instead.`
|
|
142
|
-
);
|
|
143
|
-
}
|
|
144
|
-
if (choice === void 0) {
|
|
145
|
-
const [only] = images;
|
|
146
|
-
if (images.length === 1 && only) return only;
|
|
147
|
-
throw new ApiError(
|
|
148
|
-
"VALIDATION_ERROR",
|
|
149
|
-
`Run ${run.runId} made ${images.length} images; pick one with --output (${describeOutputs(images)}).`
|
|
150
|
-
);
|
|
151
|
-
}
|
|
152
|
-
const wanted = choice.trim();
|
|
153
|
-
const byNumber = /^\d+$/.test(wanted) ? images[Number(wanted) - 1] : void 0;
|
|
154
|
-
const found = byNumber ?? images.find((o) => o.label === wanted || o.slot === wanted);
|
|
155
|
-
if (!found) {
|
|
156
|
-
throw new ApiError("VALIDATION_ERROR", `Run ${run.runId} has no output "${wanted}" (${describeOutputs(images)}).`);
|
|
157
|
-
}
|
|
158
|
-
return found;
|
|
159
|
-
}
|
|
160
|
-
var EXTENSION = { "image/png": ".png", "image/jpeg": ".jpg", "image/webp": ".webp" };
|
|
161
|
-
async function uploadRunOutput(args, deps) {
|
|
162
|
-
const run = await fetchRunRecord(args.runId, deps.post);
|
|
163
|
-
if (!run) {
|
|
164
|
-
throw new ApiError(
|
|
165
|
-
"NOT_FOUND",
|
|
166
|
-
`No run "${args.runId}" in this company's run history. Pass the image file instead.`
|
|
167
|
-
);
|
|
168
|
-
}
|
|
169
|
-
const chosen = chooseOutput(run, args.output);
|
|
170
|
-
const bytes = await (deps.download ?? downloadBytes)(String(chosen.url));
|
|
171
|
-
if (sha256Hex(bytes) !== chosen.sha256) {
|
|
172
|
-
throw new ApiError(
|
|
173
|
-
"VALIDATION_ERROR",
|
|
174
|
-
`The saved output of run ${run.runId} does not match its recorded fingerprint`
|
|
175
|
-
);
|
|
176
|
-
}
|
|
177
|
-
const name = (chosen.label ?? chosen.slot).replace(/[^a-z0-9.-]+/gi, "_");
|
|
178
|
-
return uploadImageBytes(
|
|
179
|
-
{
|
|
180
|
-
bytes,
|
|
181
|
-
contentType: chosen.mime,
|
|
182
|
-
originalFilename: `${run.runId}-${name}${EXTENSION[chosen.mime] ?? ""}`,
|
|
183
|
-
source: "ai_generated",
|
|
184
|
-
descriptionContext: args.descriptionContext
|
|
185
|
-
},
|
|
186
|
-
deps
|
|
187
|
-
);
|
|
188
|
-
}
|
|
189
|
-
async function publishCreative(args, deps = defaultImageApiDeps) {
|
|
190
|
-
const title = args.title.trim();
|
|
191
|
-
if (!title) {
|
|
192
|
-
throw new ApiError("VALIDATION_ERROR", "--title is required");
|
|
193
|
-
}
|
|
194
|
-
const sourceReferenceUrl = parseOptionalUrl(args.sourceReferenceUrl);
|
|
195
|
-
const descriptionContext = args.context ?? `Static ad creative: ${title}`;
|
|
196
|
-
let upload;
|
|
197
|
-
if (args.file) {
|
|
198
|
-
upload = await uploadLocalImage(
|
|
199
|
-
{
|
|
200
|
-
file: args.file,
|
|
201
|
-
contentType: detectCreativeContentType(args.file),
|
|
202
|
-
source: "ai_generated",
|
|
203
|
-
descriptionContext
|
|
204
|
-
},
|
|
205
|
-
deps
|
|
206
|
-
);
|
|
207
|
-
} else if (args.runId) {
|
|
208
|
-
upload = await uploadRunOutput(
|
|
209
|
-
{
|
|
210
|
-
runId: args.runId,
|
|
211
|
-
output: args.output,
|
|
212
|
-
descriptionContext
|
|
213
|
-
},
|
|
214
|
-
deps
|
|
215
|
-
);
|
|
216
|
-
} else {
|
|
217
|
-
throw new ApiError("VALIDATION_ERROR", "Pass the image file, or --run-id to save the run's own output");
|
|
218
|
-
}
|
|
219
|
-
await waitForReadyImage(deps, upload.imageId, { timeoutMs: imageProcessingTimeoutMs });
|
|
220
|
-
const result = await publishImageAsCreative(deps, {
|
|
221
|
-
imageId: upload.imageId,
|
|
222
|
-
title,
|
|
223
|
-
sourceReferenceUrl,
|
|
224
|
-
slug: args.slug,
|
|
225
|
-
runId: args.runId,
|
|
226
|
-
// Attribute the publish to the driving chat (injected by the bridge).
|
|
227
|
-
chatId: chatIdFromEnv()
|
|
228
|
-
});
|
|
229
|
-
if (args.slug && args.runId) {
|
|
230
|
-
const cwd = process.cwd();
|
|
231
|
-
const root = deps.workspaceRoot ?? findWorkspaceRoot(cwd) ?? cwd;
|
|
232
|
-
const status = await advanceDefinitionStatus(definitionPathFor(root, args.slug), "published");
|
|
233
|
-
if (status === "updated") return { ...result, definitionStatus: "published" };
|
|
234
|
-
}
|
|
235
|
-
return result;
|
|
236
|
-
}
|
|
237
|
-
async function publishVideoCreative(args, deps = defaultVideoApiDeps) {
|
|
238
|
-
const title = args.title.trim();
|
|
239
|
-
if (!title) {
|
|
240
|
-
throw new ApiError("VALIDATION_ERROR", "--title is required");
|
|
241
|
-
}
|
|
242
|
-
const slug = args.slug?.trim();
|
|
243
|
-
if (!slug) {
|
|
244
|
-
throw new ApiError(
|
|
245
|
-
"VALIDATION_ERROR",
|
|
246
|
-
"--slug is required for a video: name the creative (src/creatives/<slug>/) this render belongs to"
|
|
247
|
-
);
|
|
248
|
-
}
|
|
249
|
-
const sourceReferenceUrl = parseOptionalUrl(args.sourceReferenceUrl);
|
|
250
|
-
const contentType = detectVideoContentType(args.file, {
|
|
251
|
-
allowedContentTypes: creativeVideoContentTypes,
|
|
252
|
-
unsupportedMessage: UNSUPPORTED_CREATIVE_FILE
|
|
253
|
-
});
|
|
254
|
-
const { videoId } = await uploadLocalVideo(
|
|
255
|
-
{ file: args.file, contentType, descriptionContext: args.context ?? `Video ad creative: ${title}` },
|
|
256
|
-
deps
|
|
257
|
-
);
|
|
258
|
-
await waitForPlayableVideo(deps, videoId, { timeoutMs: videoProcessingTimeoutMs });
|
|
259
|
-
const body = { videoId, title, slug };
|
|
260
|
-
if (args.runId) body.runId = args.runId;
|
|
261
|
-
if (sourceReferenceUrl) body.sourceReferenceUrl = sourceReferenceUrl;
|
|
262
|
-
const chatId = chatIdFromEnv();
|
|
263
|
-
if (chatId) body.chatId = chatId;
|
|
264
|
-
return deps.post("/api/creatives/publish-video", body);
|
|
265
|
-
}
|
|
266
|
-
var publishCommand = defineCommand({
|
|
267
|
-
meta: { name: "publish", description: DESCRIPTION },
|
|
268
|
-
// Checked in `run` rather than by citty, so a missing value answers with the JSON envelope.
|
|
269
|
-
args: { ...ARGS, file: { ...ARGS.file, type: "positional" }, title: { ...ARGS.title, required: false } },
|
|
270
|
-
run: async ({ args }) => {
|
|
271
|
-
try {
|
|
272
|
-
const file = args.file;
|
|
273
|
-
const title = args.title;
|
|
274
|
-
const runId = args.runId;
|
|
275
|
-
if (!file && !runId) {
|
|
276
|
-
writeJson({
|
|
277
|
-
ok: false,
|
|
278
|
-
error: {
|
|
279
|
-
code: "VALIDATION_ERROR",
|
|
280
|
-
message: "Image or video path is required (or --run-id to save the run's own image)"
|
|
281
|
-
}
|
|
282
|
-
});
|
|
283
|
-
process.exit(1);
|
|
284
|
-
}
|
|
285
|
-
if (!title) {
|
|
286
|
-
writeJson({ ok: false, error: { code: "VALIDATION_ERROR", message: "--title is required" } });
|
|
287
|
-
process.exit(1);
|
|
288
|
-
}
|
|
289
|
-
const publishArgs = {
|
|
290
|
-
file: file || void 0,
|
|
291
|
-
title,
|
|
292
|
-
context: args.context,
|
|
293
|
-
sourceReferenceUrl: args.sourceReferenceUrl,
|
|
294
|
-
slug: args.slug,
|
|
295
|
-
runId
|
|
296
|
-
};
|
|
297
|
-
if (file && isVideoFile(file)) {
|
|
298
|
-
writeJson(await publishVideoCreative({ ...publishArgs, file }));
|
|
299
|
-
return;
|
|
300
|
-
}
|
|
301
|
-
const data = await publishCreative({
|
|
302
|
-
...publishArgs,
|
|
303
|
-
output: args.output
|
|
304
|
-
});
|
|
305
|
-
writeJson({ ok: true, data });
|
|
306
|
-
} catch (err) {
|
|
307
|
-
if (err instanceof ApiError) {
|
|
308
|
-
writeJson({ ok: false, error: { code: err.code, message: err.message } });
|
|
309
|
-
process.exit(1);
|
|
310
|
-
}
|
|
311
|
-
writeJson({ ok: false, error: { code: "INTERNAL_ERROR", message: "Unexpected error" } });
|
|
312
|
-
process.exit(1);
|
|
313
|
-
}
|
|
314
|
-
}
|
|
315
|
-
});
|
|
316
|
-
export {
|
|
317
|
-
detectCreativeContentType,
|
|
318
|
-
publishCommand,
|
|
319
|
-
publishCreative,
|
|
320
|
-
publishVideoCreative
|
|
321
|
-
};
|
|
322
|
-
//# sourceMappingURL=publish-HCQ6MXLB.js.map
|