@koda-sl/baker-cli 0.489.0-dev.63e618e80 → 0.490.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +170 -8
- package/dist/account-3H6BZO5H.js +80 -0
- package/dist/account-IKFDY52P.js +138 -0
- package/dist/account-IKFDY52P.js.map +1 -0
- package/dist/account-KNRDOUJP.js +79 -0
- package/dist/account-assets-LKZVWZAR.js +289 -0
- package/dist/account-assets-LKZVWZAR.js.map +1 -0
- package/dist/account-level-UJOZDVXY.js +608 -0
- package/dist/account-level-UJOZDVXY.js.map +1 -0
- package/dist/account-reads-GA6FVKLE.js +218 -0
- package/dist/account-writes-AE5IJGGW.js +66 -0
- package/dist/accounts-K4INATCW.js +75 -0
- package/dist/accounts-RTN5ZGTU.js +611 -0
- package/dist/accounts-RW6KXBOQ.js +77 -0
- package/dist/actions-HNLISA7T.js +55 -0
- package/dist/activecampaign-I5CILZPU.js +935 -0
- package/dist/activities-T253KK4Q.js +74 -0
- package/dist/ad-group-writes-VRSBI2Z2.js +170 -0
- package/dist/ad-groups-IEBVEAMS.js +68 -0
- package/dist/ad-writes-ALV4KFPZ.js +174 -0
- package/dist/add-6WKPFMLG.js +302 -0
- package/dist/add-XF5COUAS.js +104 -0
- package/dist/ads-CQZHD7FC.js +77 -0
- package/dist/ads-QIKZ6O2N.js +40 -0
- package/dist/ads-ZEY72UBN.js +114 -0
- package/dist/ads-ZEY72UBN.js.map +1 -0
- package/dist/adsets-5H3MOT3D.js +177 -0
- package/dist/adsets-5H3MOT3D.js.map +1 -0
- package/dist/advertisers-6NUM2Q3A.js +120 -0
- package/dist/analytics-ALOZ7ZZ4.js +1976 -0
- package/dist/analytics-VLHE5A2M.js +433 -0
- package/dist/animate-SVEPM267.js +480 -0
- package/dist/asset-writes-L5TMKIZC.js +47 -0
- package/dist/assign-6HI6TNLP.js +77 -0
- package/dist/audience-size-25LP2OBF.js +73 -0
- package/dist/audience-writes-X52VG35Y.js +324 -0
- package/dist/audience-writes-X52VG35Y.js.map +1 -0
- package/dist/audiences-AAZH56WD.js +268 -0
- package/dist/audiences-X3RLGOVM.js +84 -0
- package/dist/audiences-X3RLGOVM.js.map +1 -0
- package/dist/audit-YY6X2MPA.js +151 -0
- package/dist/autocomplete-SAWJK4NF.js +111 -0
- package/dist/avatars-YSFFRHDK.js +38 -0
- package/dist/bid-pricing-HZ74SLEB.js +100 -0
- package/dist/brand-T3OACVQX.js +22 -0
- package/dist/brief-7S6XCJIA.js +538 -0
- package/dist/businesses-H3HIDQX6.js +53 -0
- package/dist/campaign-groups-YJK767AP.js +95 -0
- package/dist/campaign-writes-7ZF57KLH.js +165 -0
- package/dist/campaign-writes-7ZF57KLH.js.map +1 -0
- package/dist/campaign-writes-U5PUVSMT.js +170 -0
- package/dist/campaigns-AV6G3AUU.js +127 -0
- package/dist/campaigns-AV6G3AUU.js.map +1 -0
- package/dist/campaigns-GALDR5KK.js +109 -0
- package/dist/campaigns-JEIKY2M4.js +76 -0
- package/dist/campaigns-VTRMKSAT.js +107 -0
- package/dist/canvas-SVJEQO4V.js +46 -0
- package/dist/capabilities-2KT6TCGZ.js +144 -0
- package/dist/catalog-S32MX453.js +65 -0
- package/dist/catalogs-OCVXZLIF.js +128 -0
- package/dist/catalogs-RXJTZTVX.js +778 -0
- package/dist/catalogs-RXJTZTVX.js.map +1 -0
- package/dist/changes-5TOYRKZR.js +135 -0
- package/dist/chatgpt-QVF2FD3E.js +47 -0
- package/dist/chats-QG72JB6Y.js +276 -0
- package/dist/chats-QG72JB6Y.js.map +1 -0
- package/dist/check-SLNHVYGS.js +104 -0
- package/dist/chunk-2C7AHPM4.js +191 -0
- package/dist/chunk-2C7AHPM4.js.map +1 -0
- package/dist/chunk-2LI6746F.js +103 -0
- package/dist/chunk-2PWNIEW4.js +197 -0
- package/dist/chunk-2WZI36D3.js +317 -0
- package/dist/chunk-3W6G6ARX.js +122 -0
- package/dist/chunk-45UK4KYJ.js +1606 -0
- package/dist/chunk-46GWHUKN.js +225 -0
- package/dist/chunk-4AMIHNNP.js +1919 -0
- package/dist/chunk-4KJMLYCD.js +224 -0
- package/dist/chunk-5C35OW7L.js +205 -0
- package/dist/chunk-5C35OW7L.js.map +1 -0
- package/dist/chunk-5GQCN2QZ.js +391 -0
- package/dist/chunk-5GQCN2QZ.js.map +1 -0
- package/dist/chunk-5HJRZFMW.js +207 -0
- package/dist/chunk-65Y3RCWP.js +68 -0
- package/dist/chunk-65Y3RCWP.js.map +1 -0
- package/dist/chunk-66QHX566.js +6306 -0
- package/dist/chunk-6NCJGU6I.js +191 -0
- package/dist/chunk-6WCAV27H.js +494 -0
- package/dist/chunk-A4MVVPJ2.js +4204 -0
- package/dist/chunk-A4MVVPJ2.js.map +1 -0
- package/dist/chunk-AO45BX6Q.js +66 -0
- package/dist/chunk-AQM4JH62.js +274 -0
- package/dist/chunk-AQM4JH62.js.map +1 -0
- package/dist/chunk-BDYLILMW.js +150 -0
- package/dist/chunk-BL2MX6CR.js +249 -0
- package/dist/chunk-BOPC3D6I.js +604 -0
- package/dist/chunk-BTY4LZBG.js +46 -0
- package/dist/chunk-C7NWUCLQ.js +64 -0
- package/dist/chunk-CP4P6YKM.js +287 -0
- package/dist/chunk-CP4P6YKM.js.map +1 -0
- package/dist/chunk-D4CKCNGW.js +547 -0
- package/dist/chunk-D5CUAOQX.js +297 -0
- package/dist/chunk-D5UXWKLQ.js +903 -0
- package/dist/chunk-DCBZ5CHZ.js +139 -0
- package/dist/chunk-E2RFM6R2.js +1518 -0
- package/dist/chunk-EOY6BK4C.js +148 -0
- package/dist/chunk-FA4YZFRV.js +392 -0
- package/dist/chunk-FVHJCERJ.js +942 -0
- package/dist/chunk-G2LGMWNG.js +627 -0
- package/dist/chunk-G4STCTY3.js +399 -0
- package/dist/chunk-G6XKD7QE.js +77 -0
- package/dist/chunk-GSZZLW5Q.js +831 -0
- package/dist/chunk-HLVRHBKL.js +1078 -0
- package/dist/chunk-HLVRHBKL.js.map +1 -0
- package/dist/chunk-HSPMBLKE.js +363 -0
- package/dist/chunk-IG627WWY.js +23992 -0
- package/dist/chunk-IG627WWY.js.map +1 -0
- package/dist/chunk-IJ22WP3G.js +275 -0
- package/dist/chunk-IKCP5NCE.js +843 -0
- package/dist/chunk-ILSKYRDR.js +169 -0
- package/dist/chunk-JAC6JVCI.js +26 -0
- package/dist/chunk-JKJQWRLO.js +91 -0
- package/dist/chunk-JQH5VG6F.js +5368 -0
- package/dist/chunk-JQU2LUZG.js +57 -0
- package/dist/chunk-JVH5A3XC.js +8914 -0
- package/dist/chunk-JYALBYN7.js +131 -0
- package/dist/chunk-KOXDXSKN.js +8939 -0
- package/dist/chunk-LOMH4TTC.js +1079 -0
- package/dist/chunk-LXQB4ZGE.js +142 -0
- package/dist/chunk-M6PN3VH6.js +19 -0
- package/dist/chunk-M7IJU77B.js +665 -0
- package/dist/chunk-MCJ5I5LR.js +3187 -0
- package/dist/chunk-MCJ5I5LR.js.map +1 -0
- package/dist/chunk-MVB32GPI.js +592 -0
- package/dist/chunk-MXH35PJ5.js +51 -0
- package/dist/chunk-MZPS46OR.js +76 -0
- package/dist/chunk-NEIUVSDK.js +206 -0
- package/dist/chunk-NEOUY3Q7.js +285 -0
- package/dist/chunk-NXZCCGES.js +159 -0
- package/dist/chunk-P3W6SRSQ.js +455 -0
- package/dist/chunk-P5FRWPG7.js +160 -0
- package/dist/chunk-PA4W7BCQ.js +23 -0
- package/dist/chunk-PQJXIY64.js +97 -0
- package/dist/chunk-PTGYM4J6.js +89 -0
- package/dist/chunk-QNLJ3GNZ.js +433 -0
- package/dist/chunk-QTOZ32SU.js +163 -0
- package/dist/chunk-QTOZ32SU.js.map +1 -0
- package/dist/chunk-SISA4HQR.js +61 -0
- package/dist/chunk-SVAB6KV5.js +219 -0
- package/dist/chunk-SVAB6KV5.js.map +1 -0
- package/dist/chunk-SVM3DGAQ.js +228 -0
- package/dist/chunk-TP7HKSBX.js +172 -0
- package/dist/chunk-TRPJJMCS.js +346 -0
- package/dist/chunk-UNX6BS4U.js +3868 -0
- package/dist/chunk-VD73V44J.js +344 -0
- package/dist/chunk-VL65H6YM.js +846 -0
- package/dist/chunk-WTJSMYY2.js +4249 -0
- package/dist/chunk-WTJSMYY2.js.map +1 -0
- package/dist/chunk-X7F4Z6UM.js +156 -0
- package/dist/chunk-YW7VMU5L.js +654 -0
- package/dist/chunk-YW7VMU5L.js.map +1 -0
- package/dist/chunk-ZCQVKDHV.js +98 -0
- package/dist/chunk-ZJSGGJ5R.js +167 -0
- package/dist/claim-SLGYOOWD.js +197 -0
- package/dist/cli.js +36 -36
- package/dist/companies-IVMH6YII.js +195 -0
- package/dist/complete-45L2FI2X.js +81 -0
- package/dist/connect-S54TJ6OV.js +42 -0
- package/dist/conversation-RIOL3OJ7.js +93 -0
- package/dist/conversion-report-REOHVLCI.js +125 -0
- package/dist/conversion-upload-command-W4GELHIQ.js +438 -0
- package/dist/conversion-writes-ECZBVY7D.js +120 -0
- package/dist/conversions-5QCSCRLI.js +76 -0
- package/dist/conversions-TKIXNSYR.js +135 -0
- package/dist/copy-writes-D2RTHAL6.js +167 -0
- package/dist/copy-writes-D2RTHAL6.js.map +1 -0
- package/dist/create-7JY2PTIZ.js +132 -0
- package/dist/create-ACLCRXQP.js +59 -0
- package/dist/create-KYBMFD32.js +207 -0
- package/dist/create-VAPJ52GJ.js +235 -0
- package/dist/creatives-5I3G5YP3.js +182 -0
- package/dist/creatives-MZ6ICNSY.js +88 -0
- package/dist/creatives-MZ6ICNSY.js.map +1 -0
- package/dist/creatives-PCAGWPW3.js +58 -0
- package/dist/credentials-YTQ6BHWV.js +287 -0
- package/dist/critique-BHYJYZDV.js +1458 -0
- package/dist/critique-NRHUPIWF.js +227 -0
- package/dist/crm-IKTWHWEB.js +318 -0
- package/dist/crm-N7K57LZJ.js +224 -0
- package/dist/currency-PW7HIBZ6.js +88 -0
- package/dist/custom-conversions-FIP6ZS34.js +127 -0
- package/dist/custom-conversions-FIP6ZS34.js.map +1 -0
- package/dist/customers-NLU7NYDC.js +56 -0
- package/dist/delete-26J3X3ZH.js +64 -0
- package/dist/delete-A4F5Z54J.js +66 -0
- package/dist/delete-EVXOFT2H.js +54 -0
- package/dist/demographics-VZKFMM4X.js +138 -0
- package/dist/discard-ULRVUJDV.js +66 -0
- package/dist/discover-PVXWX2WL.js +172 -0
- package/dist/domain-L4WCCX7R.js +98 -0
- package/dist/draft-34CGWUVA.js +281 -0
- package/dist/draft-4P3YO67N.js +332 -0
- package/dist/draft-4P3YO67N.js.map +1 -0
- package/dist/draft-57OQKHZI.js +306 -0
- package/dist/draft-L45PGCYZ.js +237 -0
- package/dist/draft-L45PGCYZ.js.map +1 -0
- package/dist/draft-O4S5RKWK.js +217 -0
- package/dist/draft-PAYD6GIM.js +307 -0
- package/dist/engine/index.js +9 -9
- package/dist/experiment-7N4QFRWV.js +1397 -0
- package/dist/facets-EHQKGGJ2.js +114 -0
- package/dist/feedback-O3H42V4I.js +106 -0
- package/dist/feedback-record-FAPN2GBS.js +260 -0
- package/dist/fetch-ETKT2RBC.js +176 -0
- package/dist/find-FSQAEGGF.js +134 -0
- package/dist/fit-UJQ47C4A.js +62 -0
- package/dist/flows-T22B77J3.js +247 -0
- package/dist/fonts-7VWBQPJF.js +36 -0
- package/dist/forecast-HB3RDBQN.js +168 -0
- package/dist/forecast-OI7YWZ6F.js +118 -0
- package/dist/funnel-7OA33VRP.js +394 -0
- package/dist/ga4-LPDIBNYP.js +55 -0
- package/dist/generate-OMXBFGGR.js +263 -0
- package/dist/get-2RSN4N3J.js +56 -0
- package/dist/get-6N7QJMIP.js +79 -0
- package/dist/google-5ESVO76E.js +136 -0
- package/dist/google-6JZBJ2ZQ.js +3265 -0
- package/dist/google-ads-G7REKD4A.js +195 -0
- package/dist/gsc-FIZTQX3N.js +30 -0
- package/dist/history-QKDYBSYM.js +67 -0
- package/dist/history-YMK2JNZU.js +133 -0
- package/dist/hubspot-BUFS7S33.js +779 -0
- package/dist/icon-CSVAZ7NE.js +137 -0
- package/dist/ideas-JQT422P7.js +40 -0
- package/dist/images-WBNWK2ZH.js +92 -0
- package/dist/ingest-RQUJGS7K.js +107 -0
- package/dist/ingest-XLTRLCDV.js +23 -0
- package/dist/insights-SQLE5NOJ.js +122 -0
- package/dist/insights-YWVJMATY.js +424 -0
- package/dist/insights-YWVJMATY.js.map +1 -0
- package/dist/inspect-KFVAMD4N.js +189 -0
- package/dist/inspiration-IX5N724J.js +53 -0
- package/dist/instant-experiences-NQ2GWIWL.js +257 -0
- package/dist/instant-experiences-NQ2GWIWL.js.map +1 -0
- package/dist/intent-4KJGYYHL.js +95 -0
- package/dist/keyword-gap-U64KXDR4.js +130 -0
- package/dist/keyword-metrics-WYF3QMCW.js +197 -0
- package/dist/keywords-for-site-G5L5EP3T.js +128 -0
- package/dist/landing-Y6QCTXCZ.js +28 -0
- package/dist/languages-7IPVGGW5.js +40 -0
- package/dist/leads-4SJ4NJOI.js +90 -0
- package/dist/leads-THI37ZMD.js +537 -0
- package/dist/leads-THI37ZMD.js.map +1 -0
- package/dist/learn-3BDZUWDT.js +204 -0
- package/dist/line-item-writes-YXKYR25W.js +208 -0
- package/dist/line-items-CKUD2UU4.js +103 -0
- package/dist/link-VBYFI7AM.js +64 -0
- package/dist/linkedin-UGMAFSGO.js +1057 -0
- package/dist/list-6ZNZGRRK.js +151 -0
- package/dist/list-ENYDGT3F.js +64 -0
- package/dist/list-VSUF2IWT.js +303 -0
- package/dist/locations-HM56X2MK.js +67 -0
- package/dist/locations-HM56X2MK.js.map +1 -0
- package/dist/locations-QJBYWRCN.js +40 -0
- package/dist/log-AACKGBDW.js +92 -0
- package/dist/logo-VHXH4J6A.js +18 -0
- package/dist/make-W2PYZXYF.js +1353 -0
- package/dist/map-63CQHWPI.js +433 -0
- package/dist/mcp-RKAXC6IP.js +714 -0
- package/dist/media-H6B7VDON.js +18 -0
- package/dist/media-H6B7VDON.js.map +1 -0
- package/dist/media-sources-EZKAJNVD.js +32 -0
- package/dist/members-SELIA674.js +44 -0
- package/dist/meta-YHDTGJQ6.js +122 -0
- package/dist/meta-YHDTGJQ6.js.map +1 -0
- package/dist/metrics-V6SKOVNH.js +152 -0
- package/dist/models-2XRYXSRA.js +155 -0
- package/dist/normalize-VAZPTBDX.js +141 -0
- package/dist/options-NSCZSQ5P.js +122 -0
- package/dist/organization-SHREKDST.js +881 -0
- package/dist/organization-SHREKDST.js.map +1 -0
- package/dist/page-photos-CXRG4AXV.js +115 -0
- package/dist/page-photos-CXRG4AXV.js.map +1 -0
- package/dist/pages-PTWRXAZT.js +66 -0
- package/dist/performance-K7E5KAZW.js +24 -0
- package/dist/pixels-MYT3TCHZ.js +60 -0
- package/dist/pixels-ZZCQUS3J.js +108 -0
- package/dist/preview-XOXAAPMQ.js +215 -0
- package/dist/preview-XOXAAPMQ.js.map +1 -0
- package/dist/promoted-tweet-writes-PKEO6WUK.js +180 -0
- package/dist/promoted-tweets-7MXVZRBI.js +119 -0
- package/dist/publish-MPMGRV72.js +341 -0
- package/dist/query-UD4OIZ3A.js +61 -0
- package/dist/reddit-XIHRI3CN.js +26 -0
- package/dist/refresh-A27N75NH.js +94 -0
- package/dist/release-UKRB5IUN.js +60 -0
- package/dist/relevant-pages-VXSHEOU2.js +99 -0
- package/dist/remove-AFNFVPZY.js +50 -0
- package/dist/reopen-M5HE6J3G.js +63 -0
- package/dist/rerun-5THJLQQJ.js +90 -0
- package/dist/research-JHDWWFL7.js +62 -0
- package/dist/research-U7RQXMYH.js +262 -0
- package/dist/reset-4CCWB2RT.js +54 -0
- package/dist/reset-J3KCWFMZ.js +54 -0
- package/dist/resolve-HEK27ANI.js +121 -0
- package/dist/retry-HPZIUG2S.js +62 -0
- package/dist/retry-VVI6N6UR.js +60 -0
- package/dist/rule-writes-6ZCAJDYZ.js +522 -0
- package/dist/rule-writes-6ZCAJDYZ.js.map +1 -0
- package/dist/rules-BMYOY2BM.js +216 -0
- package/dist/rules-BMYOY2BM.js.map +1 -0
- package/dist/rules-YLLFDZEM.js +96 -0
- package/dist/rules-add-U2GU4AGP.js +462 -0
- package/dist/run-M7ZDE6IA.js +66 -0
- package/dist/run-V5YQB6TH.js +65 -0
- package/dist/scaffold-ad-H4GJOKAW.js +1511 -0
- package/dist/scaffold-static-ad-2YIFHCTL.js +1005 -0
- package/dist/scaffold-video-3EJLKR2O.js +883 -0
- package/dist/schedule-QMOKWTJ3.js +61 -0
- package/dist/scheduled-agents-FCQHQ6KR.js +50 -0
- package/dist/schema-THFLCMBN.js +132 -0
- package/dist/schema-XKEEAUXP.js +69 -0
- package/dist/search-XIUYSWO6.js +174 -0
- package/dist/select-I22NPSIW.js +101 -0
- package/dist/set-prompt-S75OMQ7L.js +193 -0
- package/dist/setup-links-QVI6NAOK.js +141 -0
- package/dist/shared-3IBNDEFL.js +31 -0
- package/dist/site-PZPJY33N.js +177 -0
- package/dist/sources-ER7ANNG3.js +454 -0
- package/dist/sources-VA23PDND.js +30 -0
- package/dist/stale-MHTU2NQJ.js +71 -0
- package/dist/stats-ZAGJH4AD.js +34 -0
- package/dist/status-ABMJBCPJ.js +62 -0
- package/dist/stock-6SHHLSKG.js +179 -0
- package/dist/studies-4NIV4D5Y.js +249 -0
- package/dist/studies-4NIV4D5Y.js.map +1 -0
- package/dist/studio-ZLCGXFAN.js +49 -0
- package/dist/study-writes-L2AA2PGL.js +467 -0
- package/dist/study-writes-L2AA2PGL.js.map +1 -0
- package/dist/sync-QDD3MRJ6.js +54 -0
- package/dist/sync-definition-2EBSQA6A.js +64 -0
- package/dist/tag-manager-3CJ66GKJ.js +43 -0
- package/dist/tags-5JYOEYIT.js +20 -0
- package/dist/tags-B473RWAA.js +224 -0
- package/dist/tags-EWHPUM2V.js +20 -0
- package/dist/tags-KBCX6BDU.js +26 -0
- package/dist/tags-PEWN6GNZ.js +20 -0
- package/dist/targeting-LNDQV4EK.js +759 -0
- package/dist/targeting-LNDQV4EK.js.map +1 -0
- package/dist/targeting-criteria-EU65WUUF.js +113 -0
- package/dist/targets-KVXS5QKM.js +103 -0
- package/dist/testimonials-GR6TIS5S.js +32 -0
- package/dist/themes-JWWTOR3I.js +94 -0
- package/dist/top-companies-OOX3DITI.js +108 -0
- package/dist/translate-GEFUP6KQ.js +604 -0
- package/dist/triggers-OX2GKG4Y.js +142 -0
- package/dist/unlink-3USEPJSA.js +67 -0
- package/dist/unstage-VSCNPTAC.js +85 -0
- package/dist/update-6JKTH65B.js +152 -0
- package/dist/update-FG4ELXYJ.js +98 -0
- package/dist/update-GZFKHA3A.js +188 -0
- package/dist/update-HZHG67N6.js +63 -0
- package/dist/upload-BKCQ6FRW.js +126 -0
- package/dist/url-options-HCVRPZYU.js +130 -0
- package/dist/url-params-UN4DRN2H.js +98 -0
- package/dist/validate-NOWIOAHE.js +117 -0
- package/dist/videos-XMTDEHEJ.js +39 -0
- package/dist/viewer-check-U4XZMMS7.js +80 -0
- package/dist/viewer-check-U4XZMMS7.js.map +1 -0
- package/dist/web-UGU7YMII.js +140 -0
- package/dist/winning-ads-QOAYIR5U.js +84 -0
- package/dist/write-commands-6VR2UD3T.js +1024 -0
- package/dist/write-commands-PEJBTME6.js +1165 -0
- package/dist/write-commands-PEJBTME6.js.map +1 -0
- package/dist/x-VCSMV7T5.js +47 -0
- package/package.json +1 -1
- package/dist/account-7LUQWY6Q.js +0 -49
- package/dist/account-7LUQWY6Q.js.map +0 -1
- package/dist/account-ELL7ZZLM.js +0 -80
- package/dist/account-YVQGH2GB.js +0 -79
- package/dist/account-reads-5B4FFOZU.js +0 -218
- package/dist/account-writes-CEPERFD6.js +0 -66
- package/dist/accounts-6WNFCGUW.js +0 -611
- package/dist/accounts-UA2ZWRN4.js +0 -75
- package/dist/accounts-ZIE7J6RR.js +0 -77
- package/dist/actions-QZQTB3KR.js +0 -55
- package/dist/activecampaign-LIXWDX74.js +0 -935
- package/dist/activities-IQPJPP4B.js +0 -74
- package/dist/ad-group-writes-XGSCEQTW.js +0 -170
- package/dist/ad-groups-GKOLDGET.js +0 -68
- package/dist/ad-writes-VVD36JKH.js +0 -174
- package/dist/add-HQFI5UVS.js +0 -302
- package/dist/add-JWJP4CQY.js +0 -104
- package/dist/ads-EKZVHKPN.js +0 -77
- package/dist/ads-F365TPXO.js +0 -40
- package/dist/ads-HXX2IAFF.js +0 -113
- package/dist/ads-HXX2IAFF.js.map +0 -1
- package/dist/adsets-LPN6WFGF.js +0 -176
- package/dist/adsets-LPN6WFGF.js.map +0 -1
- package/dist/advertisers-TPIS4R73.js +0 -120
- package/dist/analytics-AFW7ESJW.js +0 -1976
- package/dist/analytics-QG7TBGMC.js +0 -433
- package/dist/animate-G4P3OEJE.js +0 -480
- package/dist/assign-VKINQVCJ.js +0 -77
- package/dist/audience-size-6ZEWCPX6.js +0 -73
- package/dist/audiences-BU4JZJT7.js +0 -268
- package/dist/audiences-XEZHACKH.js +0 -78
- package/dist/audiences-XEZHACKH.js.map +0 -1
- package/dist/audit-5US7TTUF.js +0 -151
- package/dist/autocomplete-XBVLHJ4R.js +0 -111
- package/dist/avatars-5IBVOF63.js +0 -38
- package/dist/bid-pricing-EFYUHTWP.js +0 -100
- package/dist/brand-Z5KRGJX4.js +0 -22
- package/dist/brief-DGAZ6NJG.js +0 -538
- package/dist/businesses-PRRYPR7H.js +0 -53
- package/dist/campaign-groups-AOMTKPUY.js +0 -95
- package/dist/campaign-writes-NSEJCINS.js +0 -170
- package/dist/campaign-writes-NXVLFVZ6.js +0 -165
- package/dist/campaign-writes-NXVLFVZ6.js.map +0 -1
- package/dist/campaigns-4SOLY7OR.js +0 -110
- package/dist/campaigns-4SOLY7OR.js.map +0 -1
- package/dist/campaigns-UELLCVI2.js +0 -109
- package/dist/campaigns-VWN2XPK2.js +0 -76
- package/dist/campaigns-WE42FQKM.js +0 -107
- package/dist/canvas-DG3CJ7FA.js +0 -46
- package/dist/capabilities-FDCILMJK.js +0 -144
- package/dist/catalog-KZNB2YJS.js +0 -65
- package/dist/catalogs-XH5NHH4C.js +0 -128
- package/dist/changes-DKP263OZ.js +0 -135
- package/dist/chatgpt-K6KNTME4.js +0 -47
- package/dist/chats-NFSZEF5L.js +0 -262
- package/dist/chats-NFSZEF5L.js.map +0 -1
- package/dist/check-6UVMPPNH.js +0 -104
- package/dist/chunk-2GT76KEX.js +0 -285
- package/dist/chunk-33XFNSBM.js +0 -433
- package/dist/chunk-36SU43V2.js +0 -6306
- package/dist/chunk-3BKNGXCL.js +0 -23992
- package/dist/chunk-3BKNGXCL.js.map +0 -1
- package/dist/chunk-3VCHJN2B.js +0 -627
- package/dist/chunk-5562QFVB.js +0 -275
- package/dist/chunk-5QW4OQM4.js +0 -831
- package/dist/chunk-5SRHACZW.js +0 -274
- package/dist/chunk-5SRHACZW.js.map +0 -1
- package/dist/chunk-6JWEGFM5.js +0 -174
- package/dist/chunk-6JWEGFM5.js.map +0 -1
- package/dist/chunk-6KULDLLR.js +0 -547
- package/dist/chunk-6OIKNJ7G.js +0 -26
- package/dist/chunk-6TG4CAYD.js +0 -19
- package/dist/chunk-6VZHOXP6.js +0 -172
- package/dist/chunk-7RBJ2Z7Z.js +0 -172
- package/dist/chunk-7RBJ2Z7Z.js.map +0 -1
- package/dist/chunk-7RKUHTS6.js +0 -224
- package/dist/chunk-AGVCQHQK.js +0 -344
- package/dist/chunk-AJ45PER5.js +0 -57
- package/dist/chunk-AL3VGEG5.js +0 -665
- package/dist/chunk-AQMMAB2N.js +0 -197
- package/dist/chunk-B6VCTXSD.js +0 -97
- package/dist/chunk-B7FVPHCW.js +0 -843
- package/dist/chunk-BITS62MF.js +0 -77
- package/dist/chunk-C4MJ3WPQ.js +0 -592
- package/dist/chunk-C6BFE4X2.js +0 -51
- package/dist/chunk-D2YHDDKW.js +0 -23
- package/dist/chunk-E4GWQFTL.js +0 -66
- package/dist/chunk-EIDTAHUC.js +0 -191
- package/dist/chunk-ERRMJ7AZ.js +0 -169
- package/dist/chunk-EZ5KY6I2.js +0 -1079
- package/dist/chunk-F3CZFUXZ.js +0 -3187
- package/dist/chunk-F3CZFUXZ.js.map +0 -1
- package/dist/chunk-F5IH7G2F.js +0 -1919
- package/dist/chunk-GFTDR3Z2.js +0 -604
- package/dist/chunk-GGY2KH3K.js +0 -249
- package/dist/chunk-GOJXKIFQ.js +0 -1605
- package/dist/chunk-GOJXKIFQ.js.map +0 -1
- package/dist/chunk-GYJQV3IX.js +0 -225
- package/dist/chunk-H5HDZ7IC.js +0 -139
- package/dist/chunk-HVI4DNZL.js +0 -103
- package/dist/chunk-HY4G44UC.js +0 -156
- package/dist/chunk-I2WRZJAC.js +0 -46
- package/dist/chunk-IHUIXQBP.js +0 -206
- package/dist/chunk-IMWXYSCP.js +0 -392
- package/dist/chunk-KIGGMKAE.js +0 -66
- package/dist/chunk-KIGGMKAE.js.map +0 -1
- package/dist/chunk-KPYDTIAI.js +0 -317
- package/dist/chunk-L63JZLCX.js +0 -647
- package/dist/chunk-L63JZLCX.js.map +0 -1
- package/dist/chunk-M2D7ZWEU.js +0 -150
- package/dist/chunk-MP5IMGKF.js +0 -148
- package/dist/chunk-NA2KOPW6.js +0 -363
- package/dist/chunk-NAA4CKZZ.js +0 -4249
- package/dist/chunk-NAA4CKZZ.js.map +0 -1
- package/dist/chunk-NDVAOHMY.js +0 -903
- package/dist/chunk-NLUFREI6.js +0 -160
- package/dist/chunk-OKLYOMQ3.js +0 -1606
- package/dist/chunk-ONVPV23E.js +0 -122
- package/dist/chunk-OP7DNHD2.js +0 -137
- package/dist/chunk-OP7DNHD2.js.map +0 -1
- package/dist/chunk-OWRFIAW2.js +0 -91
- package/dist/chunk-P5ENZXC2.js +0 -64
- package/dist/chunk-QK76OM22.js +0 -297
- package/dist/chunk-R5IZ6P3E.js +0 -3868
- package/dist/chunk-RBIWYPJQ.js +0 -159
- package/dist/chunk-RESDRJRP.js +0 -399
- package/dist/chunk-RGX7AQ2K.js +0 -131
- package/dist/chunk-RWLQYW2L.js +0 -8939
- package/dist/chunk-S7B2TOOU.js +0 -98
- package/dist/chunk-SIKCVWM3.js +0 -76
- package/dist/chunk-TBZPXGEW.js +0 -142
- package/dist/chunk-TFJW5CXD.js +0 -5368
- package/dist/chunk-TPS3X5DI.js +0 -89
- package/dist/chunk-UM7ESCIN.js +0 -846
- package/dist/chunk-UWDYGSJF.js +0 -61
- package/dist/chunk-V57TZQPI.js +0 -228
- package/dist/chunk-VLKYUZF7.js +0 -346
- package/dist/chunk-VYZ4KQ3C.js +0 -942
- package/dist/chunk-WRMMJUNJ.js +0 -494
- package/dist/chunk-WY5H3XYC.js +0 -167
- package/dist/chunk-XLJVJ5TK.js +0 -1518
- package/dist/chunk-Y2GH4YWA.js +0 -207
- package/dist/chunk-YSB26POP.js +0 -8914
- package/dist/chunk-YT2ZSPWF.js +0 -455
- package/dist/claim-7CB6TVEW.js +0 -197
- package/dist/companies-CACKHSY5.js +0 -195
- package/dist/complete-IHLTYFT2.js +0 -81
- package/dist/connect-J722BTO4.js +0 -42
- package/dist/conversation-HRNJJJW5.js +0 -93
- package/dist/conversion-report-KL4LIVY5.js +0 -125
- package/dist/conversion-upload-command-WT6C35QL.js +0 -438
- package/dist/conversion-writes-MPBCTVSP.js +0 -120
- package/dist/conversions-ACYT6K7H.js +0 -76
- package/dist/conversions-DE7W5T4Z.js +0 -135
- package/dist/create-6ZDLKC4F.js +0 -59
- package/dist/create-7YO6DAAT.js +0 -207
- package/dist/create-W7OTXLCZ.js +0 -132
- package/dist/create-ZU7AHBYM.js +0 -235
- package/dist/creatives-6UYAAC5E.js +0 -58
- package/dist/creatives-XUIY3MQI.js +0 -182
- package/dist/creatives-YJ3CXZQC.js +0 -87
- package/dist/creatives-YJ3CXZQC.js.map +0 -1
- package/dist/credentials-ADGJKYA7.js +0 -287
- package/dist/critique-BBHPASRE.js +0 -227
- package/dist/critique-T7QGPPEX.js +0 -1458
- package/dist/crm-EKDV2SET.js +0 -224
- package/dist/crm-MXT2HUKU.js +0 -318
- package/dist/currency-TBBXPWXU.js +0 -88
- package/dist/custom-conversions-YRYE65PU.js +0 -125
- package/dist/custom-conversions-YRYE65PU.js.map +0 -1
- package/dist/customers-EZEVYT4Z.js +0 -56
- package/dist/delete-3UDIH2ZD.js +0 -66
- package/dist/delete-4L3HO5B6.js +0 -54
- package/dist/delete-SRU4GRDT.js +0 -64
- package/dist/demographics-3OWQDW7B.js +0 -138
- package/dist/discard-UEMA5UHL.js +0 -66
- package/dist/discover-RTV5XWRI.js +0 -172
- package/dist/domain-6324IS6I.js +0 -98
- package/dist/draft-2KS56KCT.js +0 -307
- package/dist/draft-777O2UIX.js +0 -217
- package/dist/draft-EWDOIXSH.js +0 -233
- package/dist/draft-EWDOIXSH.js.map +0 -1
- package/dist/draft-GRL7577L.js +0 -306
- package/dist/draft-VOFJXUOC.js +0 -328
- package/dist/draft-VOFJXUOC.js.map +0 -1
- package/dist/draft-VXGZDBC7.js +0 -281
- package/dist/experiment-G3FQVAJU.js +0 -1397
- package/dist/facets-YV6NORA6.js +0 -114
- package/dist/feedback-YITFVOHX.js +0 -106
- package/dist/feedback-record-FW2QWFYQ.js +0 -260
- package/dist/fetch-EYXLTSKW.js +0 -176
- package/dist/find-EVY4XEIQ.js +0 -134
- package/dist/fit-KEFUU7QA.js +0 -62
- package/dist/flows-EJV7WMGD.js +0 -247
- package/dist/fonts-DMIBVZ6D.js +0 -36
- package/dist/forecast-5YKQZSE7.js +0 -118
- package/dist/forecast-G43FKEZE.js +0 -168
- package/dist/funnel-ND7OXIKT.js +0 -394
- package/dist/ga4-2BL5YAYN.js +0 -55
- package/dist/generate-D3LUXFJT.js +0 -263
- package/dist/get-GB6SPWCA.js +0 -79
- package/dist/get-PU3YHQWN.js +0 -56
- package/dist/google-7STODZQR.js +0 -136
- package/dist/google-MHB5TOFN.js +0 -3265
- package/dist/google-ads-XGEGKEL6.js +0 -195
- package/dist/gsc-UU3T2C6B.js +0 -30
- package/dist/history-NYWAMWAY.js +0 -133
- package/dist/history-OQAOTEO3.js +0 -67
- package/dist/hubspot-LMIVY7FR.js +0 -779
- package/dist/icon-GB7UH5RF.js +0 -137
- package/dist/ideas-W4IIVOZ4.js +0 -40
- package/dist/images-PPMIMPTS.js +0 -92
- package/dist/ingest-2YGWBWAB.js +0 -107
- package/dist/ingest-FRDTTPYD.js +0 -23
- package/dist/insights-4HT2NAYP.js +0 -423
- package/dist/insights-4HT2NAYP.js.map +0 -1
- package/dist/insights-PZXFCMX2.js +0 -122
- package/dist/inspect-QF2S3U2E.js +0 -189
- package/dist/inspiration-XQYHBJY2.js +0 -53
- package/dist/intent-JJTDJ732.js +0 -95
- package/dist/keyword-gap-4NQN56JP.js +0 -130
- package/dist/keyword-metrics-QCIOBMTW.js +0 -197
- package/dist/keywords-for-site-FS635JXM.js +0 -128
- package/dist/landing-6H5QEHOW.js +0 -28
- package/dist/languages-FNE45NXJ.js +0 -40
- package/dist/leads-2XOSAYP4.js +0 -293
- package/dist/leads-2XOSAYP4.js.map +0 -1
- package/dist/leads-MKLSWZO6.js +0 -90
- package/dist/learn-C564OA7W.js +0 -204
- package/dist/line-item-writes-K7QNWRQ3.js +0 -208
- package/dist/line-items-TBTHVKCZ.js +0 -103
- package/dist/link-CPJJ6T4M.js +0 -64
- package/dist/linkedin-HGUK624E.js +0 -1057
- package/dist/list-AAT5CWDA.js +0 -303
- package/dist/list-N5SJXLYF.js +0 -64
- package/dist/list-OKDU5W4D.js +0 -151
- package/dist/locations-FTDI4FBI.js +0 -40
- package/dist/locations-VL2G22Y5.js +0 -67
- package/dist/locations-VL2G22Y5.js.map +0 -1
- package/dist/log-KVRWIJS5.js +0 -92
- package/dist/logo-YSNUUT33.js +0 -18
- package/dist/make-4NTHJ4TG.js +0 -1353
- package/dist/map-HQ43MKEC.js +0 -433
- package/dist/mcp-MFLUHPL5.js +0 -714
- package/dist/media-ES2UBGYW.js +0 -15
- package/dist/media-ES2UBGYW.js.map +0 -1
- package/dist/media-sources-A4ICRSKB.js +0 -32
- package/dist/members-NRKQSSVS.js +0 -44
- package/dist/meta-AOIPEDV5.js +0 -69
- package/dist/meta-AOIPEDV5.js.map +0 -1
- package/dist/metrics-3BRTJNGW.js +0 -152
- package/dist/models-IH6KE6OH.js +0 -155
- package/dist/normalize-EH6BTBOB.js +0 -141
- package/dist/options-YEPQXXRY.js +0 -122
- package/dist/organization-XSWT7S5S.js +0 -836
- package/dist/organization-XSWT7S5S.js.map +0 -1
- package/dist/pages-FTI44OSH.js +0 -66
- package/dist/performance-YJVMM6DL.js +0 -24
- package/dist/pixels-DWW2TDY2.js +0 -60
- package/dist/pixels-MBKR4XPX.js +0 -108
- package/dist/preview-V4YBD45S.js +0 -169
- package/dist/preview-V4YBD45S.js.map +0 -1
- package/dist/promoted-tweet-writes-M5OVEBC5.js +0 -180
- package/dist/promoted-tweets-2MOIERNB.js +0 -119
- package/dist/publish-NPENZIHV.js +0 -341
- package/dist/query-3OMCFGLU.js +0 -61
- package/dist/reddit-LI37G5LS.js +0 -26
- package/dist/refresh-4BBV5SPL.js +0 -94
- package/dist/release-4X3TLMQT.js +0 -60
- package/dist/relevant-pages-DIYZM6FJ.js +0 -99
- package/dist/remove-Q4AES5UH.js +0 -50
- package/dist/reopen-SDTPL3BN.js +0 -63
- package/dist/rerun-NA3MH4HG.js +0 -90
- package/dist/research-5H265UV7.js +0 -262
- package/dist/research-LXQRNAQ2.js +0 -62
- package/dist/reset-42M5IKDI.js +0 -54
- package/dist/reset-52PU3CVD.js +0 -54
- package/dist/resolve-R4IACKIZ.js +0 -121
- package/dist/retry-FPF42ZNG.js +0 -62
- package/dist/retry-RTQGAH6G.js +0 -60
- package/dist/rules-CGNYJYVC.js +0 -96
- package/dist/rules-add-EO5476BF.js +0 -462
- package/dist/run-3AZJ3UQU.js +0 -66
- package/dist/run-AFMTXJTU.js +0 -65
- package/dist/scaffold-ad-OGU2IINY.js +0 -1511
- package/dist/scaffold-static-ad-HO4BJW4H.js +0 -1005
- package/dist/scaffold-video-TLQ4WSDK.js +0 -883
- package/dist/schedule-AWWMI5FO.js +0 -61
- package/dist/scheduled-agents-ELLU7BSE.js +0 -50
- package/dist/schema-BOOZEJPA.js +0 -69
- package/dist/schema-QNVLKMKG.js +0 -132
- package/dist/search-BZNIB2XF.js +0 -174
- package/dist/select-NLWZIQ7L.js +0 -101
- package/dist/set-prompt-QKW2L553.js +0 -193
- package/dist/setup-links-NMSQ4BG7.js +0 -141
- package/dist/shared-NDRFKAH7.js +0 -31
- package/dist/site-GGYFBZT5.js +0 -177
- package/dist/sources-KTGDMUV4.js +0 -30
- package/dist/sources-LPQZDTIU.js +0 -454
- package/dist/stale-C5JLQ4D2.js +0 -71
- package/dist/stats-RCLQE4HJ.js +0 -34
- package/dist/status-6PS3HDS5.js +0 -62
- package/dist/stock-ECRBD7RP.js +0 -179
- package/dist/studio-LMDDQWRY.js +0 -49
- package/dist/sync-XSATDLE6.js +0 -54
- package/dist/sync-definition-LSGDHMHV.js +0 -64
- package/dist/tag-manager-G3LBQZUL.js +0 -43
- package/dist/tags-5Y7TPJNZ.js +0 -20
- package/dist/tags-6TT5ZJVX.js +0 -26
- package/dist/tags-BQLIOWS4.js +0 -20
- package/dist/tags-EXWKO6Q6.js +0 -224
- package/dist/tags-OK34UGSM.js +0 -20
- package/dist/targeting-criteria-AWPMOX4V.js +0 -113
- package/dist/targets-EXYCOHEX.js +0 -103
- package/dist/testimonials-BTYMR3U4.js +0 -32
- package/dist/themes-AOU4ZZXL.js +0 -94
- package/dist/top-companies-FRPAURAH.js +0 -108
- package/dist/translate-SF234KLG.js +0 -604
- package/dist/triggers-SJUXDU3X.js +0 -142
- package/dist/unlink-RIZD3XTI.js +0 -67
- package/dist/unstage-MKTIVI3I.js +0 -85
- package/dist/update-COHXM25C.js +0 -152
- package/dist/update-NKX2GXAR.js +0 -63
- package/dist/update-OXVZXDYH.js +0 -98
- package/dist/update-SZLYEEU4.js +0 -188
- package/dist/upload-LEDO3IRC.js +0 -126
- package/dist/url-options-Q5SL42CV.js +0 -130
- package/dist/url-params-KP6D7BF3.js +0 -98
- package/dist/validate-7QWQZ2OL.js +0 -117
- package/dist/videos-VABK4KHJ.js +0 -39
- package/dist/viewer-check-I45HHWSW.js +0 -80
- package/dist/web-DZGUPZYQ.js +0 -140
- package/dist/winning-ads-6MDLRSKM.js +0 -84
- package/dist/write-commands-3VIK3VC4.js +0 -1024
- package/dist/write-commands-HCQI4Y27.js +0 -737
- package/dist/write-commands-HCQI4Y27.js.map +0 -1
- package/dist/x-GRDU7QC2.js +0 -47
- /package/dist/{account-ELL7ZZLM.js.map → account-3H6BZO5H.js.map} +0 -0
- /package/dist/{account-YVQGH2GB.js.map → account-KNRDOUJP.js.map} +0 -0
- /package/dist/{account-reads-5B4FFOZU.js.map → account-reads-GA6FVKLE.js.map} +0 -0
- /package/dist/{account-writes-CEPERFD6.js.map → account-writes-AE5IJGGW.js.map} +0 -0
- /package/dist/{accounts-UA2ZWRN4.js.map → accounts-K4INATCW.js.map} +0 -0
- /package/dist/{accounts-6WNFCGUW.js.map → accounts-RTN5ZGTU.js.map} +0 -0
- /package/dist/{accounts-ZIE7J6RR.js.map → accounts-RW6KXBOQ.js.map} +0 -0
- /package/dist/{actions-QZQTB3KR.js.map → actions-HNLISA7T.js.map} +0 -0
- /package/dist/{activecampaign-LIXWDX74.js.map → activecampaign-I5CILZPU.js.map} +0 -0
- /package/dist/{activities-IQPJPP4B.js.map → activities-T253KK4Q.js.map} +0 -0
- /package/dist/{ad-group-writes-XGSCEQTW.js.map → ad-group-writes-VRSBI2Z2.js.map} +0 -0
- /package/dist/{ad-groups-GKOLDGET.js.map → ad-groups-IEBVEAMS.js.map} +0 -0
- /package/dist/{ad-writes-VVD36JKH.js.map → ad-writes-ALV4KFPZ.js.map} +0 -0
- /package/dist/{add-HQFI5UVS.js.map → add-6WKPFMLG.js.map} +0 -0
- /package/dist/{add-JWJP4CQY.js.map → add-XF5COUAS.js.map} +0 -0
- /package/dist/{ads-EKZVHKPN.js.map → ads-CQZHD7FC.js.map} +0 -0
- /package/dist/{ads-F365TPXO.js.map → ads-QIKZ6O2N.js.map} +0 -0
- /package/dist/{advertisers-TPIS4R73.js.map → advertisers-6NUM2Q3A.js.map} +0 -0
- /package/dist/{analytics-AFW7ESJW.js.map → analytics-ALOZ7ZZ4.js.map} +0 -0
- /package/dist/{analytics-QG7TBGMC.js.map → analytics-VLHE5A2M.js.map} +0 -0
- /package/dist/{animate-G4P3OEJE.js.map → animate-SVEPM267.js.map} +0 -0
- /package/dist/{connect-J722BTO4.js.map → asset-writes-L5TMKIZC.js.map} +0 -0
- /package/dist/{assign-VKINQVCJ.js.map → assign-6HI6TNLP.js.map} +0 -0
- /package/dist/{audience-size-6ZEWCPX6.js.map → audience-size-25LP2OBF.js.map} +0 -0
- /package/dist/{audiences-BU4JZJT7.js.map → audiences-AAZH56WD.js.map} +0 -0
- /package/dist/{audit-5US7TTUF.js.map → audit-YY6X2MPA.js.map} +0 -0
- /package/dist/{autocomplete-XBVLHJ4R.js.map → autocomplete-SAWJK4NF.js.map} +0 -0
- /package/dist/{avatars-5IBVOF63.js.map → avatars-YSFFRHDK.js.map} +0 -0
- /package/dist/{bid-pricing-EFYUHTWP.js.map → bid-pricing-HZ74SLEB.js.map} +0 -0
- /package/dist/{brand-Z5KRGJX4.js.map → brand-T3OACVQX.js.map} +0 -0
- /package/dist/{brief-DGAZ6NJG.js.map → brief-7S6XCJIA.js.map} +0 -0
- /package/dist/{businesses-PRRYPR7H.js.map → businesses-H3HIDQX6.js.map} +0 -0
- /package/dist/{campaign-groups-AOMTKPUY.js.map → campaign-groups-YJK767AP.js.map} +0 -0
- /package/dist/{campaign-writes-NSEJCINS.js.map → campaign-writes-U5PUVSMT.js.map} +0 -0
- /package/dist/{campaigns-UELLCVI2.js.map → campaigns-GALDR5KK.js.map} +0 -0
- /package/dist/{campaigns-VWN2XPK2.js.map → campaigns-JEIKY2M4.js.map} +0 -0
- /package/dist/{campaigns-WE42FQKM.js.map → campaigns-VTRMKSAT.js.map} +0 -0
- /package/dist/{canvas-DG3CJ7FA.js.map → canvas-SVJEQO4V.js.map} +0 -0
- /package/dist/{capabilities-FDCILMJK.js.map → capabilities-2KT6TCGZ.js.map} +0 -0
- /package/dist/{catalog-KZNB2YJS.js.map → catalog-S32MX453.js.map} +0 -0
- /package/dist/{catalogs-XH5NHH4C.js.map → catalogs-OCVXZLIF.js.map} +0 -0
- /package/dist/{changes-DKP263OZ.js.map → changes-5TOYRKZR.js.map} +0 -0
- /package/dist/{chatgpt-K6KNTME4.js.map → chatgpt-QVF2FD3E.js.map} +0 -0
- /package/dist/{check-6UVMPPNH.js.map → check-SLNHVYGS.js.map} +0 -0
- /package/dist/{chunk-HVI4DNZL.js.map → chunk-2LI6746F.js.map} +0 -0
- /package/dist/{chunk-AQMMAB2N.js.map → chunk-2PWNIEW4.js.map} +0 -0
- /package/dist/{chunk-KPYDTIAI.js.map → chunk-2WZI36D3.js.map} +0 -0
- /package/dist/{chunk-ONVPV23E.js.map → chunk-3W6G6ARX.js.map} +0 -0
- /package/dist/{chunk-OKLYOMQ3.js.map → chunk-45UK4KYJ.js.map} +0 -0
- /package/dist/{chunk-GYJQV3IX.js.map → chunk-46GWHUKN.js.map} +0 -0
- /package/dist/{chunk-F5IH7G2F.js.map → chunk-4AMIHNNP.js.map} +0 -0
- /package/dist/{chunk-7RKUHTS6.js.map → chunk-4KJMLYCD.js.map} +0 -0
- /package/dist/{chunk-Y2GH4YWA.js.map → chunk-5HJRZFMW.js.map} +0 -0
- /package/dist/{chunk-36SU43V2.js.map → chunk-66QHX566.js.map} +0 -0
- /package/dist/{chunk-EIDTAHUC.js.map → chunk-6NCJGU6I.js.map} +0 -0
- /package/dist/{chunk-WRMMJUNJ.js.map → chunk-6WCAV27H.js.map} +0 -0
- /package/dist/{chunk-E4GWQFTL.js.map → chunk-AO45BX6Q.js.map} +0 -0
- /package/dist/{chunk-M2D7ZWEU.js.map → chunk-BDYLILMW.js.map} +0 -0
- /package/dist/{chunk-GGY2KH3K.js.map → chunk-BL2MX6CR.js.map} +0 -0
- /package/dist/{chunk-GFTDR3Z2.js.map → chunk-BOPC3D6I.js.map} +0 -0
- /package/dist/{chunk-I2WRZJAC.js.map → chunk-BTY4LZBG.js.map} +0 -0
- /package/dist/{chunk-P5ENZXC2.js.map → chunk-C7NWUCLQ.js.map} +0 -0
- /package/dist/{chunk-6KULDLLR.js.map → chunk-D4CKCNGW.js.map} +0 -0
- /package/dist/{chunk-QK76OM22.js.map → chunk-D5CUAOQX.js.map} +0 -0
- /package/dist/{chunk-NDVAOHMY.js.map → chunk-D5UXWKLQ.js.map} +0 -0
- /package/dist/{chunk-H5HDZ7IC.js.map → chunk-DCBZ5CHZ.js.map} +0 -0
- /package/dist/{chunk-XLJVJ5TK.js.map → chunk-E2RFM6R2.js.map} +0 -0
- /package/dist/{chunk-MP5IMGKF.js.map → chunk-EOY6BK4C.js.map} +0 -0
- /package/dist/{chunk-IMWXYSCP.js.map → chunk-FA4YZFRV.js.map} +0 -0
- /package/dist/{chunk-VYZ4KQ3C.js.map → chunk-FVHJCERJ.js.map} +0 -0
- /package/dist/{chunk-3VCHJN2B.js.map → chunk-G2LGMWNG.js.map} +0 -0
- /package/dist/{chunk-RESDRJRP.js.map → chunk-G4STCTY3.js.map} +0 -0
- /package/dist/{chunk-BITS62MF.js.map → chunk-G6XKD7QE.js.map} +0 -0
- /package/dist/{chunk-5QW4OQM4.js.map → chunk-GSZZLW5Q.js.map} +0 -0
- /package/dist/{chunk-NA2KOPW6.js.map → chunk-HSPMBLKE.js.map} +0 -0
- /package/dist/{chunk-5562QFVB.js.map → chunk-IJ22WP3G.js.map} +0 -0
- /package/dist/{chunk-B7FVPHCW.js.map → chunk-IKCP5NCE.js.map} +0 -0
- /package/dist/{chunk-ERRMJ7AZ.js.map → chunk-ILSKYRDR.js.map} +0 -0
- /package/dist/{chunk-6OIKNJ7G.js.map → chunk-JAC6JVCI.js.map} +0 -0
- /package/dist/{chunk-OWRFIAW2.js.map → chunk-JKJQWRLO.js.map} +0 -0
- /package/dist/{chunk-TFJW5CXD.js.map → chunk-JQH5VG6F.js.map} +0 -0
- /package/dist/{chunk-AJ45PER5.js.map → chunk-JQU2LUZG.js.map} +0 -0
- /package/dist/{chunk-YSB26POP.js.map → chunk-JVH5A3XC.js.map} +0 -0
- /package/dist/{chunk-RGX7AQ2K.js.map → chunk-JYALBYN7.js.map} +0 -0
- /package/dist/{chunk-RWLQYW2L.js.map → chunk-KOXDXSKN.js.map} +0 -0
- /package/dist/{chunk-EZ5KY6I2.js.map → chunk-LOMH4TTC.js.map} +0 -0
- /package/dist/{chunk-TBZPXGEW.js.map → chunk-LXQB4ZGE.js.map} +0 -0
- /package/dist/{chunk-6TG4CAYD.js.map → chunk-M6PN3VH6.js.map} +0 -0
- /package/dist/{chunk-AL3VGEG5.js.map → chunk-M7IJU77B.js.map} +0 -0
- /package/dist/{chunk-C4MJ3WPQ.js.map → chunk-MVB32GPI.js.map} +0 -0
- /package/dist/{chunk-C6BFE4X2.js.map → chunk-MXH35PJ5.js.map} +0 -0
- /package/dist/{chunk-SIKCVWM3.js.map → chunk-MZPS46OR.js.map} +0 -0
- /package/dist/{chunk-IHUIXQBP.js.map → chunk-NEIUVSDK.js.map} +0 -0
- /package/dist/{chunk-2GT76KEX.js.map → chunk-NEOUY3Q7.js.map} +0 -0
- /package/dist/{chunk-RBIWYPJQ.js.map → chunk-NXZCCGES.js.map} +0 -0
- /package/dist/{chunk-YT2ZSPWF.js.map → chunk-P3W6SRSQ.js.map} +0 -0
- /package/dist/{chunk-NLUFREI6.js.map → chunk-P5FRWPG7.js.map} +0 -0
- /package/dist/{chunk-D2YHDDKW.js.map → chunk-PA4W7BCQ.js.map} +0 -0
- /package/dist/{chunk-B6VCTXSD.js.map → chunk-PQJXIY64.js.map} +0 -0
- /package/dist/{chunk-TPS3X5DI.js.map → chunk-PTGYM4J6.js.map} +0 -0
- /package/dist/{chunk-33XFNSBM.js.map → chunk-QNLJ3GNZ.js.map} +0 -0
- /package/dist/{chunk-UWDYGSJF.js.map → chunk-SISA4HQR.js.map} +0 -0
- /package/dist/{chunk-V57TZQPI.js.map → chunk-SVM3DGAQ.js.map} +0 -0
- /package/dist/{chunk-6VZHOXP6.js.map → chunk-TP7HKSBX.js.map} +0 -0
- /package/dist/{chunk-VLKYUZF7.js.map → chunk-TRPJJMCS.js.map} +0 -0
- /package/dist/{chunk-R5IZ6P3E.js.map → chunk-UNX6BS4U.js.map} +0 -0
- /package/dist/{chunk-AGVCQHQK.js.map → chunk-VD73V44J.js.map} +0 -0
- /package/dist/{chunk-UM7ESCIN.js.map → chunk-VL65H6YM.js.map} +0 -0
- /package/dist/{chunk-HY4G44UC.js.map → chunk-X7F4Z6UM.js.map} +0 -0
- /package/dist/{chunk-S7B2TOOU.js.map → chunk-ZCQVKDHV.js.map} +0 -0
- /package/dist/{chunk-WY5H3XYC.js.map → chunk-ZJSGGJ5R.js.map} +0 -0
- /package/dist/{claim-7CB6TVEW.js.map → claim-SLGYOOWD.js.map} +0 -0
- /package/dist/{companies-CACKHSY5.js.map → companies-IVMH6YII.js.map} +0 -0
- /package/dist/{complete-IHLTYFT2.js.map → complete-45L2FI2X.js.map} +0 -0
- /package/dist/{customers-EZEVYT4Z.js.map → connect-S54TJ6OV.js.map} +0 -0
- /package/dist/{conversation-HRNJJJW5.js.map → conversation-RIOL3OJ7.js.map} +0 -0
- /package/dist/{conversion-report-KL4LIVY5.js.map → conversion-report-REOHVLCI.js.map} +0 -0
- /package/dist/{conversion-upload-command-WT6C35QL.js.map → conversion-upload-command-W4GELHIQ.js.map} +0 -0
- /package/dist/{conversion-writes-MPBCTVSP.js.map → conversion-writes-ECZBVY7D.js.map} +0 -0
- /package/dist/{conversions-ACYT6K7H.js.map → conversions-5QCSCRLI.js.map} +0 -0
- /package/dist/{conversions-DE7W5T4Z.js.map → conversions-TKIXNSYR.js.map} +0 -0
- /package/dist/{create-W7OTXLCZ.js.map → create-7JY2PTIZ.js.map} +0 -0
- /package/dist/{create-6ZDLKC4F.js.map → create-ACLCRXQP.js.map} +0 -0
- /package/dist/{create-7YO6DAAT.js.map → create-KYBMFD32.js.map} +0 -0
- /package/dist/{create-ZU7AHBYM.js.map → create-VAPJ52GJ.js.map} +0 -0
- /package/dist/{creatives-XUIY3MQI.js.map → creatives-5I3G5YP3.js.map} +0 -0
- /package/dist/{creatives-6UYAAC5E.js.map → creatives-PCAGWPW3.js.map} +0 -0
- /package/dist/{credentials-ADGJKYA7.js.map → credentials-YTQ6BHWV.js.map} +0 -0
- /package/dist/{critique-T7QGPPEX.js.map → critique-BHYJYZDV.js.map} +0 -0
- /package/dist/{critique-BBHPASRE.js.map → critique-NRHUPIWF.js.map} +0 -0
- /package/dist/{crm-MXT2HUKU.js.map → crm-IKTWHWEB.js.map} +0 -0
- /package/dist/{crm-EKDV2SET.js.map → crm-N7K57LZJ.js.map} +0 -0
- /package/dist/{currency-TBBXPWXU.js.map → currency-PW7HIBZ6.js.map} +0 -0
- /package/dist/{fit-KEFUU7QA.js.map → customers-NLU7NYDC.js.map} +0 -0
- /package/dist/{delete-SRU4GRDT.js.map → delete-26J3X3ZH.js.map} +0 -0
- /package/dist/{delete-3UDIH2ZD.js.map → delete-A4F5Z54J.js.map} +0 -0
- /package/dist/{delete-4L3HO5B6.js.map → delete-EVXOFT2H.js.map} +0 -0
- /package/dist/{demographics-3OWQDW7B.js.map → demographics-VZKFMM4X.js.map} +0 -0
- /package/dist/{discard-UEMA5UHL.js.map → discard-ULRVUJDV.js.map} +0 -0
- /package/dist/{discover-RTV5XWRI.js.map → discover-PVXWX2WL.js.map} +0 -0
- /package/dist/{domain-6324IS6I.js.map → domain-L4WCCX7R.js.map} +0 -0
- /package/dist/{draft-VXGZDBC7.js.map → draft-34CGWUVA.js.map} +0 -0
- /package/dist/{draft-GRL7577L.js.map → draft-57OQKHZI.js.map} +0 -0
- /package/dist/{draft-777O2UIX.js.map → draft-O4S5RKWK.js.map} +0 -0
- /package/dist/{draft-2KS56KCT.js.map → draft-PAYD6GIM.js.map} +0 -0
- /package/dist/{experiment-G3FQVAJU.js.map → experiment-7N4QFRWV.js.map} +0 -0
- /package/dist/{facets-YV6NORA6.js.map → facets-EHQKGGJ2.js.map} +0 -0
- /package/dist/{feedback-YITFVOHX.js.map → feedback-O3H42V4I.js.map} +0 -0
- /package/dist/{feedback-record-FW2QWFYQ.js.map → feedback-record-FAPN2GBS.js.map} +0 -0
- /package/dist/{fetch-EYXLTSKW.js.map → fetch-ETKT2RBC.js.map} +0 -0
- /package/dist/{find-EVY4XEIQ.js.map → find-FSQAEGGF.js.map} +0 -0
- /package/dist/{fonts-DMIBVZ6D.js.map → fit-UJQ47C4A.js.map} +0 -0
- /package/dist/{flows-EJV7WMGD.js.map → flows-T22B77J3.js.map} +0 -0
- /package/dist/{ideas-W4IIVOZ4.js.map → fonts-7VWBQPJF.js.map} +0 -0
- /package/dist/{forecast-G43FKEZE.js.map → forecast-HB3RDBQN.js.map} +0 -0
- /package/dist/{forecast-5YKQZSE7.js.map → forecast-OI7YWZ6F.js.map} +0 -0
- /package/dist/{funnel-ND7OXIKT.js.map → funnel-7OA33VRP.js.map} +0 -0
- /package/dist/{ga4-2BL5YAYN.js.map → ga4-LPDIBNYP.js.map} +0 -0
- /package/dist/{generate-D3LUXFJT.js.map → generate-OMXBFGGR.js.map} +0 -0
- /package/dist/{get-PU3YHQWN.js.map → get-2RSN4N3J.js.map} +0 -0
- /package/dist/{get-GB6SPWCA.js.map → get-6N7QJMIP.js.map} +0 -0
- /package/dist/{google-7STODZQR.js.map → google-5ESVO76E.js.map} +0 -0
- /package/dist/{google-MHB5TOFN.js.map → google-6JZBJ2ZQ.js.map} +0 -0
- /package/dist/{google-ads-XGEGKEL6.js.map → google-ads-G7REKD4A.js.map} +0 -0
- /package/dist/{gsc-UU3T2C6B.js.map → gsc-FIZTQX3N.js.map} +0 -0
- /package/dist/{history-OQAOTEO3.js.map → history-QKDYBSYM.js.map} +0 -0
- /package/dist/{history-NYWAMWAY.js.map → history-YMK2JNZU.js.map} +0 -0
- /package/dist/{hubspot-LMIVY7FR.js.map → hubspot-BUFS7S33.js.map} +0 -0
- /package/dist/{icon-GB7UH5RF.js.map → icon-CSVAZ7NE.js.map} +0 -0
- /package/dist/{ingest-FRDTTPYD.js.map → ideas-JQT422P7.js.map} +0 -0
- /package/dist/{images-PPMIMPTS.js.map → images-WBNWK2ZH.js.map} +0 -0
- /package/dist/{ingest-2YGWBWAB.js.map → ingest-RQUJGS7K.js.map} +0 -0
- /package/dist/{logo-YSNUUT33.js.map → ingest-XLTRLCDV.js.map} +0 -0
- /package/dist/{insights-PZXFCMX2.js.map → insights-SQLE5NOJ.js.map} +0 -0
- /package/dist/{inspect-QF2S3U2E.js.map → inspect-KFVAMD4N.js.map} +0 -0
- /package/dist/{inspiration-XQYHBJY2.js.map → inspiration-IX5N724J.js.map} +0 -0
- /package/dist/{intent-JJTDJ732.js.map → intent-4KJGYYHL.js.map} +0 -0
- /package/dist/{keyword-gap-4NQN56JP.js.map → keyword-gap-U64KXDR4.js.map} +0 -0
- /package/dist/{keyword-metrics-QCIOBMTW.js.map → keyword-metrics-WYF3QMCW.js.map} +0 -0
- /package/dist/{keywords-for-site-FS635JXM.js.map → keywords-for-site-G5L5EP3T.js.map} +0 -0
- /package/dist/{landing-6H5QEHOW.js.map → landing-Y6QCTXCZ.js.map} +0 -0
- /package/dist/{languages-FNE45NXJ.js.map → languages-7IPVGGW5.js.map} +0 -0
- /package/dist/{leads-MKLSWZO6.js.map → leads-4SJ4NJOI.js.map} +0 -0
- /package/dist/{learn-C564OA7W.js.map → learn-3BDZUWDT.js.map} +0 -0
- /package/dist/{line-item-writes-K7QNWRQ3.js.map → line-item-writes-YXKYR25W.js.map} +0 -0
- /package/dist/{line-items-TBTHVKCZ.js.map → line-items-CKUD2UU4.js.map} +0 -0
- /package/dist/{link-CPJJ6T4M.js.map → link-VBYFI7AM.js.map} +0 -0
- /package/dist/{linkedin-HGUK624E.js.map → linkedin-UGMAFSGO.js.map} +0 -0
- /package/dist/{list-OKDU5W4D.js.map → list-6ZNZGRRK.js.map} +0 -0
- /package/dist/{list-N5SJXLYF.js.map → list-ENYDGT3F.js.map} +0 -0
- /package/dist/{list-AAT5CWDA.js.map → list-VSUF2IWT.js.map} +0 -0
- /package/dist/{locations-FTDI4FBI.js.map → locations-QJBYWRCN.js.map} +0 -0
- /package/dist/{log-KVRWIJS5.js.map → log-AACKGBDW.js.map} +0 -0
- /package/dist/{performance-YJVMM6DL.js.map → logo-VHXH4J6A.js.map} +0 -0
- /package/dist/{make-4NTHJ4TG.js.map → make-W2PYZXYF.js.map} +0 -0
- /package/dist/{map-HQ43MKEC.js.map → map-63CQHWPI.js.map} +0 -0
- /package/dist/{mcp-MFLUHPL5.js.map → mcp-RKAXC6IP.js.map} +0 -0
- /package/dist/{media-sources-A4ICRSKB.js.map → media-sources-EZKAJNVD.js.map} +0 -0
- /package/dist/{members-NRKQSSVS.js.map → members-SELIA674.js.map} +0 -0
- /package/dist/{metrics-3BRTJNGW.js.map → metrics-V6SKOVNH.js.map} +0 -0
- /package/dist/{models-IH6KE6OH.js.map → models-2XRYXSRA.js.map} +0 -0
- /package/dist/{normalize-EH6BTBOB.js.map → normalize-VAZPTBDX.js.map} +0 -0
- /package/dist/{options-YEPQXXRY.js.map → options-NSCZSQ5P.js.map} +0 -0
- /package/dist/{pages-FTI44OSH.js.map → pages-PTWRXAZT.js.map} +0 -0
- /package/dist/{query-3OMCFGLU.js.map → performance-K7E5KAZW.js.map} +0 -0
- /package/dist/{pixels-DWW2TDY2.js.map → pixels-MYT3TCHZ.js.map} +0 -0
- /package/dist/{pixels-MBKR4XPX.js.map → pixels-ZZCQUS3J.js.map} +0 -0
- /package/dist/{promoted-tweet-writes-M5OVEBC5.js.map → promoted-tweet-writes-PKEO6WUK.js.map} +0 -0
- /package/dist/{promoted-tweets-2MOIERNB.js.map → promoted-tweets-7MXVZRBI.js.map} +0 -0
- /package/dist/{publish-NPENZIHV.js.map → publish-MPMGRV72.js.map} +0 -0
- /package/dist/{reddit-LI37G5LS.js.map → query-UD4OIZ3A.js.map} +0 -0
- /package/dist/{run-AFMTXJTU.js.map → reddit-XIHRI3CN.js.map} +0 -0
- /package/dist/{refresh-4BBV5SPL.js.map → refresh-A27N75NH.js.map} +0 -0
- /package/dist/{release-4X3TLMQT.js.map → release-UKRB5IUN.js.map} +0 -0
- /package/dist/{relevant-pages-DIYZM6FJ.js.map → relevant-pages-VXSHEOU2.js.map} +0 -0
- /package/dist/{remove-Q4AES5UH.js.map → remove-AFNFVPZY.js.map} +0 -0
- /package/dist/{reopen-SDTPL3BN.js.map → reopen-M5HE6J3G.js.map} +0 -0
- /package/dist/{rerun-NA3MH4HG.js.map → rerun-5THJLQQJ.js.map} +0 -0
- /package/dist/{research-LXQRNAQ2.js.map → research-JHDWWFL7.js.map} +0 -0
- /package/dist/{research-5H265UV7.js.map → research-U7RQXMYH.js.map} +0 -0
- /package/dist/{reset-52PU3CVD.js.map → reset-4CCWB2RT.js.map} +0 -0
- /package/dist/{reset-42M5IKDI.js.map → reset-J3KCWFMZ.js.map} +0 -0
- /package/dist/{resolve-R4IACKIZ.js.map → resolve-HEK27ANI.js.map} +0 -0
- /package/dist/{retry-FPF42ZNG.js.map → retry-HPZIUG2S.js.map} +0 -0
- /package/dist/{retry-RTQGAH6G.js.map → retry-VVI6N6UR.js.map} +0 -0
- /package/dist/{rules-CGNYJYVC.js.map → rules-YLLFDZEM.js.map} +0 -0
- /package/dist/{rules-add-EO5476BF.js.map → rules-add-U2GU4AGP.js.map} +0 -0
- /package/dist/{run-3AZJ3UQU.js.map → run-M7ZDE6IA.js.map} +0 -0
- /package/dist/{shared-NDRFKAH7.js.map → run-V5YQB6TH.js.map} +0 -0
- /package/dist/{scaffold-ad-OGU2IINY.js.map → scaffold-ad-H4GJOKAW.js.map} +0 -0
- /package/dist/{scaffold-static-ad-HO4BJW4H.js.map → scaffold-static-ad-2YIFHCTL.js.map} +0 -0
- /package/dist/{scaffold-video-TLQ4WSDK.js.map → scaffold-video-3EJLKR2O.js.map} +0 -0
- /package/dist/{schedule-AWWMI5FO.js.map → schedule-QMOKWTJ3.js.map} +0 -0
- /package/dist/{scheduled-agents-ELLU7BSE.js.map → scheduled-agents-FCQHQ6KR.js.map} +0 -0
- /package/dist/{schema-QNVLKMKG.js.map → schema-THFLCMBN.js.map} +0 -0
- /package/dist/{schema-BOOZEJPA.js.map → schema-XKEEAUXP.js.map} +0 -0
- /package/dist/{search-BZNIB2XF.js.map → search-XIUYSWO6.js.map} +0 -0
- /package/dist/{select-NLWZIQ7L.js.map → select-I22NPSIW.js.map} +0 -0
- /package/dist/{set-prompt-QKW2L553.js.map → set-prompt-S75OMQ7L.js.map} +0 -0
- /package/dist/{setup-links-NMSQ4BG7.js.map → setup-links-QVI6NAOK.js.map} +0 -0
- /package/dist/{sync-definition-LSGDHMHV.js.map → shared-3IBNDEFL.js.map} +0 -0
- /package/dist/{site-GGYFBZT5.js.map → site-PZPJY33N.js.map} +0 -0
- /package/dist/{sources-LPQZDTIU.js.map → sources-ER7ANNG3.js.map} +0 -0
- /package/dist/{sources-KTGDMUV4.js.map → sources-VA23PDND.js.map} +0 -0
- /package/dist/{stale-C5JLQ4D2.js.map → stale-MHTU2NQJ.js.map} +0 -0
- /package/dist/{stats-RCLQE4HJ.js.map → stats-ZAGJH4AD.js.map} +0 -0
- /package/dist/{status-6PS3HDS5.js.map → status-ABMJBCPJ.js.map} +0 -0
- /package/dist/{stock-ECRBD7RP.js.map → stock-6SHHLSKG.js.map} +0 -0
- /package/dist/{studio-LMDDQWRY.js.map → studio-ZLCGXFAN.js.map} +0 -0
- /package/dist/{sync-XSATDLE6.js.map → sync-QDD3MRJ6.js.map} +0 -0
- /package/dist/{viewer-check-I45HHWSW.js.map → sync-definition-2EBSQA6A.js.map} +0 -0
- /package/dist/{tag-manager-G3LBQZUL.js.map → tag-manager-3CJ66GKJ.js.map} +0 -0
- /package/dist/{tags-OK34UGSM.js.map → tags-5JYOEYIT.js.map} +0 -0
- /package/dist/{tags-EXWKO6Q6.js.map → tags-B473RWAA.js.map} +0 -0
- /package/dist/{tags-5Y7TPJNZ.js.map → tags-EWHPUM2V.js.map} +0 -0
- /package/dist/{tags-6TT5ZJVX.js.map → tags-KBCX6BDU.js.map} +0 -0
- /package/dist/{tags-BQLIOWS4.js.map → tags-PEWN6GNZ.js.map} +0 -0
- /package/dist/{targeting-criteria-AWPMOX4V.js.map → targeting-criteria-EU65WUUF.js.map} +0 -0
- /package/dist/{targets-EXYCOHEX.js.map → targets-KVXS5QKM.js.map} +0 -0
- /package/dist/{testimonials-BTYMR3U4.js.map → testimonials-GR6TIS5S.js.map} +0 -0
- /package/dist/{themes-AOU4ZZXL.js.map → themes-JWWTOR3I.js.map} +0 -0
- /package/dist/{top-companies-FRPAURAH.js.map → top-companies-OOX3DITI.js.map} +0 -0
- /package/dist/{translate-SF234KLG.js.map → translate-GEFUP6KQ.js.map} +0 -0
- /package/dist/{triggers-SJUXDU3X.js.map → triggers-OX2GKG4Y.js.map} +0 -0
- /package/dist/{unlink-RIZD3XTI.js.map → unlink-3USEPJSA.js.map} +0 -0
- /package/dist/{unstage-MKTIVI3I.js.map → unstage-VSCNPTAC.js.map} +0 -0
- /package/dist/{update-COHXM25C.js.map → update-6JKTH65B.js.map} +0 -0
- /package/dist/{update-OXVZXDYH.js.map → update-FG4ELXYJ.js.map} +0 -0
- /package/dist/{update-SZLYEEU4.js.map → update-GZFKHA3A.js.map} +0 -0
- /package/dist/{update-NKX2GXAR.js.map → update-HZHG67N6.js.map} +0 -0
- /package/dist/{upload-LEDO3IRC.js.map → upload-BKCQ6FRW.js.map} +0 -0
- /package/dist/{url-options-Q5SL42CV.js.map → url-options-HCVRPZYU.js.map} +0 -0
- /package/dist/{url-params-KP6D7BF3.js.map → url-params-UN4DRN2H.js.map} +0 -0
- /package/dist/{validate-7QWQZ2OL.js.map → validate-NOWIOAHE.js.map} +0 -0
- /package/dist/{videos-VABK4KHJ.js.map → videos-XMTDEHEJ.js.map} +0 -0
- /package/dist/{web-DZGUPZYQ.js.map → web-UGU7YMII.js.map} +0 -0
- /package/dist/{winning-ads-6MDLRSKM.js.map → winning-ads-QOAYIR5U.js.map} +0 -0
- /package/dist/{write-commands-3VIK3VC4.js.map → write-commands-6VR2UD3T.js.map} +0 -0
- /package/dist/{x-GRDU7QC2.js.map → x-VCSMV7T5.js.map} +0 -0
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import {
|
|
2
|
+
COST_TYPES,
|
|
3
|
+
OBJECTIVE_TYPES,
|
|
4
|
+
calendarDaySchema,
|
|
5
|
+
targetingCriteriaSchema
|
|
6
|
+
} from "./chunk-66QHX566.js";
|
|
7
|
+
|
|
8
|
+
// ../api/src/ads-linkedin/planning.ts
|
|
9
|
+
import { z } from "zod";
|
|
10
|
+
var moneySchema = z.object({
|
|
11
|
+
amount: z.string().regex(/^\d+(\.\d+)?$/, "use a plain amount such as 250 or 5.57"),
|
|
12
|
+
currencyCode: z.string().regex(/^[A-Z]{3}$/).optional()
|
|
13
|
+
});
|
|
14
|
+
var accountIdSchema = z.string().min(1);
|
|
15
|
+
var linkedinBidPricingRequestSchema = z.object({
|
|
16
|
+
accountId: accountIdSchema,
|
|
17
|
+
objectiveType: z.enum(OBJECTIVE_TYPES),
|
|
18
|
+
costType: z.enum(COST_TYPES).default("CPC"),
|
|
19
|
+
campaignType: z.enum(["SPONSORED_UPDATES", "TEXT_AD", "SPONSORED_INMAILS"]).default("SPONSORED_UPDATES"),
|
|
20
|
+
/** EXACT = audience expansion off, the playbook default. */
|
|
21
|
+
matchType: z.enum(["EXACT", "AUDIENCE_EXPANDED"]).default("EXACT"),
|
|
22
|
+
targetingCriteria: targetingCriteriaSchema,
|
|
23
|
+
skipCache: z.boolean().optional()
|
|
24
|
+
});
|
|
25
|
+
var LINKEDIN_FORECAST_DEFAULT_DAYS = 30;
|
|
26
|
+
var linkedinForecastRequestSchema = z.object({
|
|
27
|
+
accountId: accountIdSchema,
|
|
28
|
+
objectiveType: z.enum(OBJECTIVE_TYPES).optional(),
|
|
29
|
+
costType: z.enum(COST_TYPES).default("CPC"),
|
|
30
|
+
campaignType: z.enum(["SPONSORED_UPDATES", "SPONSORED_INMAILS", "DYNAMIC"]).default("SPONSORED_UPDATES"),
|
|
31
|
+
/** First forecast day (UTC); defaults to tomorrow — LinkedIn forecasts only the future. */
|
|
32
|
+
startDate: calendarDaySchema.optional(),
|
|
33
|
+
days: z.number().int().min(1).max(365).default(LINKEDIN_FORECAST_DEFAULT_DAYS),
|
|
34
|
+
dailyBudget: moneySchema.optional(),
|
|
35
|
+
totalBudget: moneySchema.optional(),
|
|
36
|
+
/** A manual bid; without one LinkedIn forecasts its automated bidding. */
|
|
37
|
+
bid: moneySchema.optional(),
|
|
38
|
+
optimizationTarget: z.string().regex(/^[A-Z_]+$/).optional(),
|
|
39
|
+
targetingCriteria: targetingCriteriaSchema,
|
|
40
|
+
/** Add LinkedIn's raw series (daily, 7-day, 30-day) to the summary. */
|
|
41
|
+
full: z.boolean().default(false),
|
|
42
|
+
skipCache: z.boolean().optional()
|
|
43
|
+
}).superRefine((req, ctx) => {
|
|
44
|
+
if (!req.dailyBudget && !req.totalBudget) {
|
|
45
|
+
ctx.addIssue({
|
|
46
|
+
code: "custom",
|
|
47
|
+
path: ["totalBudget"],
|
|
48
|
+
message: "a budget is required (daily or total) \u2014 LinkedIn forecasts what a budget buys"
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
if (req.dailyBudget && req.totalBudget) {
|
|
52
|
+
ctx.addIssue({ code: "custom", path: ["totalBudget"], message: "pass a daily or a total budget, not both" });
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
export {
|
|
57
|
+
linkedinBidPricingRequestSchema,
|
|
58
|
+
LINKEDIN_FORECAST_DEFAULT_DAYS,
|
|
59
|
+
linkedinForecastRequestSchema
|
|
60
|
+
};
|
|
61
|
+
//# sourceMappingURL=chunk-SISA4HQR.js.map
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
import {
|
|
2
|
+
bareAccountId,
|
|
3
|
+
failWriteValidation,
|
|
4
|
+
numberFlag,
|
|
5
|
+
requireTarget,
|
|
6
|
+
stageOp,
|
|
7
|
+
stageOps
|
|
8
|
+
} from "./chunk-5C35OW7L.js";
|
|
9
|
+
import {
|
|
10
|
+
repeatedValues
|
|
11
|
+
} from "./chunk-ERSX3MKH.js";
|
|
12
|
+
import {
|
|
13
|
+
registerSchema
|
|
14
|
+
} from "./chunk-WNSE7N75.js";
|
|
15
|
+
|
|
16
|
+
// src/commands/ads/meta/asset-writes.ts
|
|
17
|
+
import { defineCommand } from "citty";
|
|
18
|
+
var STAGED_NOTE = "Staged until publish \u2014 review with `baker ads meta draft`.";
|
|
19
|
+
var accountArg = { type: "string", description: "Meta ad account ID (act_123)" };
|
|
20
|
+
var schemaId = (what) => ({ type: "positional", description: what, required: true });
|
|
21
|
+
function command(input) {
|
|
22
|
+
registerSchema({
|
|
23
|
+
command: input.schema,
|
|
24
|
+
description: input.schemaDescription,
|
|
25
|
+
args: Object.fromEntries(
|
|
26
|
+
Object.entries(input.args).map(([key, arg]) => [
|
|
27
|
+
key,
|
|
28
|
+
{ type: arg.type, description: arg.description, required: arg.required === true }
|
|
29
|
+
])
|
|
30
|
+
)
|
|
31
|
+
});
|
|
32
|
+
return defineCommand({
|
|
33
|
+
meta: { name: input.name, description: `${input.description} ${STAGED_NOTE}` },
|
|
34
|
+
args: input.args,
|
|
35
|
+
run: async ({ args, rawArgs }) => {
|
|
36
|
+
await input.run(args, rawArgs);
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
var creativesDeleteCommand = command({
|
|
41
|
+
schema: "ads.meta.creatives.delete",
|
|
42
|
+
name: "delete",
|
|
43
|
+
description: "Stage deleting an ad creative. Meta deletes only a creative no ad runs \u2014 repoint or delete the ad first. Permanent.",
|
|
44
|
+
schemaDescription: "Stage deleting a Meta ad creative (status DELETED) \u2014 applied at publish, permanent. Meta refuses a creative an ad still runs.",
|
|
45
|
+
args: { id: { type: "positional", description: "Creative id", required: true }, "account-id": accountArg },
|
|
46
|
+
run: async (args) => {
|
|
47
|
+
await stageOp({
|
|
48
|
+
kind: "adCreative.update",
|
|
49
|
+
accountId: bareAccountId(args),
|
|
50
|
+
target: requireTarget(args, "creative"),
|
|
51
|
+
payload: { status: "DELETED" }
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
var mediaDeleteCommand = command({
|
|
56
|
+
schema: "ads.meta.media.delete",
|
|
57
|
+
name: "delete",
|
|
58
|
+
description: "Stage taking an image out of the ad account's image library, by its hash (`baker ads meta images`), or one of its videos by id (`--video-id`, from `baker ads meta media`). Meta refuses an image a creative still uses.",
|
|
59
|
+
schemaDescription: "Stage deleting an image from a Meta ad account's image library by hash, or a video from its video library by id \u2014 applied at publish. Meta refuses an image a creative uses.",
|
|
60
|
+
args: {
|
|
61
|
+
"account-id": accountArg,
|
|
62
|
+
"image-hash": { type: "string", description: "The image's hash" },
|
|
63
|
+
"video-id": { type: "string", description: "Or a video of the ad account, by id" }
|
|
64
|
+
},
|
|
65
|
+
run: async (args) => {
|
|
66
|
+
const imageHash = typeof args["image-hash"] === "string" ? args["image-hash"] : void 0;
|
|
67
|
+
const videoId = typeof args["video-id"] === "string" ? args["video-id"] : void 0;
|
|
68
|
+
if (imageHash === void 0 === (videoId === void 0)) {
|
|
69
|
+
failWriteValidation("pass --image-hash (from `baker ads meta images`) or --video-id \u2014 one of them");
|
|
70
|
+
}
|
|
71
|
+
await stageOp({ kind: "media.delete", accountId: bareAccountId(args), payload: { imageHash, videoId } });
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
var customConversionsUpdateCommand = command({
|
|
75
|
+
schema: "ads.meta.custom-conversions.update",
|
|
76
|
+
name: "update",
|
|
77
|
+
description: "Stage renaming a Custom Conversion, its description or its value per conversion. Meta keeps a conversion's rule and event category for good \u2014 a conversion that counts something else is a new one.",
|
|
78
|
+
schemaDescription: "Stage a change to a Meta Custom Conversion: --name, --description, --value (value per conversion, account currency). The rule and event category cannot change (Meta accepts and ignores them).",
|
|
79
|
+
args: {
|
|
80
|
+
id: { type: "positional", description: "Custom conversion id", required: true },
|
|
81
|
+
"account-id": accountArg,
|
|
82
|
+
name: { type: "string", description: "New name" },
|
|
83
|
+
description: { type: "string", description: "New description" },
|
|
84
|
+
value: { type: "string", description: "Value of one conversion, in the account currency" }
|
|
85
|
+
},
|
|
86
|
+
run: async (args) => {
|
|
87
|
+
const payload = Object.fromEntries(
|
|
88
|
+
Object.entries({
|
|
89
|
+
name: args.name,
|
|
90
|
+
description: args.description,
|
|
91
|
+
default_conversion_value: numberFlag(args.value, "--value")
|
|
92
|
+
}).filter(([, value]) => value !== void 0)
|
|
93
|
+
);
|
|
94
|
+
await stageOp({
|
|
95
|
+
kind: "customConversion.update",
|
|
96
|
+
accountId: bareAccountId(args),
|
|
97
|
+
target: requireTarget(args, "custom conversion"),
|
|
98
|
+
payload
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
var customConversionsDeleteCommand = command({
|
|
103
|
+
schema: "ads.meta.custom-conversions.delete",
|
|
104
|
+
name: "delete",
|
|
105
|
+
description: "Stage deleting a Custom Conversion. Meta archives it: it stops counting and leaves the active list, and still uses one of the account's slots. Ad sets optimizing toward it stop finding conversions.",
|
|
106
|
+
schemaDescription: "Stage deleting (archiving) a Meta Custom Conversion \u2014 applied at publish. Not reversible; it keeps its slot in the account's cap.",
|
|
107
|
+
args: { id: schemaId("Custom conversion id"), "account-id": accountArg },
|
|
108
|
+
run: async (args) => {
|
|
109
|
+
await stageOp({
|
|
110
|
+
kind: "customConversion.update",
|
|
111
|
+
accountId: bareAccountId(args),
|
|
112
|
+
target: requireTarget(args, "custom conversion"),
|
|
113
|
+
payload: { status: "DELETED" }
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
var labelsCreateCommand = command({
|
|
118
|
+
schema: "ads.meta.labels.create",
|
|
119
|
+
name: "create",
|
|
120
|
+
description: 'Stage a new ad label. File things under it with `labels attach <ref> --campaigns \u2026` in the same chat. Example: baker ads meta labels create --name "Q4 launch"',
|
|
121
|
+
schemaDescription: "Stage a new Meta ad label (created at publish). Returns a meta_temp_* ref `labels attach` takes.",
|
|
122
|
+
args: { "account-id": accountArg, name: { type: "string", description: "Label name" } },
|
|
123
|
+
run: async (args) => {
|
|
124
|
+
await stageOp({ kind: "adLabel.create", accountId: bareAccountId(args), payload: { name: args.name } });
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
var labelsRenameCommand = command({
|
|
128
|
+
schema: "ads.meta.labels.rename",
|
|
129
|
+
name: "rename",
|
|
130
|
+
description: "Stage renaming an ad label.",
|
|
131
|
+
schemaDescription: "Stage renaming a Meta ad label.",
|
|
132
|
+
args: { id: schemaId("Label id"), "account-id": accountArg, name: { type: "string", description: "New name" } },
|
|
133
|
+
run: async (args) => {
|
|
134
|
+
await stageOp({
|
|
135
|
+
kind: "adLabel.update",
|
|
136
|
+
accountId: bareAccountId(args),
|
|
137
|
+
target: requireTarget(args, "label"),
|
|
138
|
+
payload: { name: args.name }
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
var labelsDeleteCommand = command({
|
|
143
|
+
schema: "ads.meta.labels.delete",
|
|
144
|
+
name: "delete",
|
|
145
|
+
description: "Stage deleting an ad label. Everything filed under it keeps running, unlabelled.",
|
|
146
|
+
schemaDescription: "Stage deleting a Meta ad label \u2014 applied at publish; labelled objects keep running.",
|
|
147
|
+
args: { id: schemaId("Label id"), "account-id": accountArg },
|
|
148
|
+
run: async (args) => {
|
|
149
|
+
await stageOp({
|
|
150
|
+
kind: "adLabel.update",
|
|
151
|
+
accountId: bareAccountId(args),
|
|
152
|
+
target: requireTarget(args, "label"),
|
|
153
|
+
payload: { status: "DELETED" }
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
});
|
|
157
|
+
var LABELLED = [
|
|
158
|
+
["campaigns", "campaign.update"],
|
|
159
|
+
["adsets", "adSet.update"],
|
|
160
|
+
["ads", "ad.update"],
|
|
161
|
+
["creatives", "adCreative.update"]
|
|
162
|
+
];
|
|
163
|
+
var targetArgs = {
|
|
164
|
+
campaigns: { type: "string", description: "Campaign ids (comma-separated or repeated)" },
|
|
165
|
+
adsets: { type: "string", description: "Ad set ids" },
|
|
166
|
+
ads: { type: "string", description: "Ad ids" },
|
|
167
|
+
creatives: {
|
|
168
|
+
type: "string",
|
|
169
|
+
description: "Creative ids (live ones \u2014 a creative created in this chat is labelled later)"
|
|
170
|
+
}
|
|
171
|
+
};
|
|
172
|
+
function idsOf(rawArgs, flag, parsed) {
|
|
173
|
+
return repeatedValues(rawArgs, flag, parsed).flatMap((value) => value.split(",")).map((value) => value.trim()).filter(Boolean);
|
|
174
|
+
}
|
|
175
|
+
async function stageLabelChange(verb, args, rawArgs) {
|
|
176
|
+
const accountId = bareAccountId(args);
|
|
177
|
+
const label = requireTarget(args, "label");
|
|
178
|
+
const targets = LABELLED.flatMap(([flag, kind]) => idsOf(rawArgs, flag, args[flag]).map((id) => ({ kind, id })));
|
|
179
|
+
if (targets.length === 0) {
|
|
180
|
+
failWriteValidation("name what to label: --campaigns, --adsets, --ads or --creatives");
|
|
181
|
+
}
|
|
182
|
+
await stageOps(
|
|
183
|
+
targets.map((target) => ({ kind: target.kind, accountId, target: target.id, payload: { [verb]: [label] } }))
|
|
184
|
+
);
|
|
185
|
+
}
|
|
186
|
+
var labelsAttachCommand = command({
|
|
187
|
+
schema: "ads.meta.labels.attach",
|
|
188
|
+
name: "attach",
|
|
189
|
+
description: "Stage filing campaigns, ad sets, ads or creatives under a label (a label id, or a meta_temp_* ref from `labels create`). Their other labels stay. Example: baker ads meta labels attach 120249 --campaigns 6123,6124",
|
|
190
|
+
schemaDescription: "Stage adding a Meta ad label to campaigns/ad sets/ads/creatives (--campaigns, --adsets, --ads, --creatives; comma-separated). One staged change per object; other labels kept.",
|
|
191
|
+
args: { id: schemaId("Label id or meta_temp_* ref"), "account-id": accountArg, ...targetArgs },
|
|
192
|
+
run: async (args, rawArgs) => {
|
|
193
|
+
await stageLabelChange("addLabels", args, rawArgs);
|
|
194
|
+
}
|
|
195
|
+
});
|
|
196
|
+
var labelsDetachCommand = command({
|
|
197
|
+
schema: "ads.meta.labels.detach",
|
|
198
|
+
name: "detach",
|
|
199
|
+
description: "Stage taking a label off campaigns, ad sets, ads or creatives. Their other labels stay.",
|
|
200
|
+
schemaDescription: "Stage removing a Meta ad label from campaigns/ad sets/ads/creatives (--campaigns, --adsets, --ads, --creatives). Other labels kept.",
|
|
201
|
+
args: { id: schemaId("Label id"), "account-id": accountArg, ...targetArgs },
|
|
202
|
+
run: async (args, rawArgs) => {
|
|
203
|
+
await stageLabelChange("removeLabels", args, rawArgs);
|
|
204
|
+
}
|
|
205
|
+
});
|
|
206
|
+
|
|
207
|
+
export {
|
|
208
|
+
command,
|
|
209
|
+
creativesDeleteCommand,
|
|
210
|
+
mediaDeleteCommand,
|
|
211
|
+
customConversionsUpdateCommand,
|
|
212
|
+
customConversionsDeleteCommand,
|
|
213
|
+
labelsCreateCommand,
|
|
214
|
+
labelsRenameCommand,
|
|
215
|
+
labelsDeleteCommand,
|
|
216
|
+
labelsAttachCommand,
|
|
217
|
+
labelsDetachCommand
|
|
218
|
+
};
|
|
219
|
+
//# sourceMappingURL=chunk-SVAB6KV5.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/commands/ads/meta/asset-writes.ts"],"sourcesContent":["import { type ArgsDef, type CommandDef, defineCommand } from \"citty\";\nimport { repeatedValues } from \"../../../lib/repeatedFlags.ts\";\nimport { registerSchema } from \"../../../schemas.ts\";\nimport { bareAccountId, failWriteValidation, numberFlag, requireTarget, stageOp, stageOps } from \"./write-shared.ts\";\n\n/**\n * Staged writes on the account's own assets: deleting a creative or an image,\n * changing or deleting a Custom Conversion, and ad labels — creating, renaming,\n * deleting them, and filing campaigns, ad sets, ads and creatives under them.\n * Nothing reaches Meta until the chat publishes.\n */\n\nconst STAGED_NOTE = \"Staged until publish — review with `baker ads meta draft`.\";\nconst accountArg = { type: \"string\", description: \"Meta ad account ID (act_123)\" } as const;\nconst schemaId = (what: string) => ({ type: \"positional\", description: what, required: true });\n\nexport function command(input: {\n schema: string;\n name: string;\n description: string;\n schemaDescription: string;\n args: Record<string, { type: string; description: string; required?: boolean }>;\n run: (args: Record<string, unknown>, rawArgs: readonly string[] | undefined) => Promise<void>;\n}): CommandDef<ArgsDef> {\n registerSchema({\n command: input.schema,\n description: input.schemaDescription,\n args: Object.fromEntries(\n Object.entries(input.args).map(([key, arg]) => [\n key,\n { type: arg.type, description: arg.description, required: arg.required === true },\n ]),\n ),\n });\n return defineCommand<ArgsDef>({\n meta: { name: input.name, description: `${input.description} ${STAGED_NOTE}` },\n args: input.args as ArgsDef,\n run: async ({ args, rawArgs }) => {\n await input.run(args as Record<string, unknown>, rawArgs);\n },\n });\n}\n\n// --- Creatives ---\n\nexport const creativesDeleteCommand = command({\n schema: \"ads.meta.creatives.delete\",\n name: \"delete\",\n description:\n \"Stage deleting an ad creative. Meta deletes only a creative no ad runs — repoint or delete the ad first. Permanent.\",\n schemaDescription:\n \"Stage deleting a Meta ad creative (status DELETED) — applied at publish, permanent. Meta refuses a creative an ad still runs.\",\n args: { id: { type: \"positional\", description: \"Creative id\", required: true }, \"account-id\": accountArg },\n run: async (args) => {\n await stageOp({\n kind: \"adCreative.update\",\n accountId: bareAccountId(args),\n target: requireTarget(args, \"creative\"),\n payload: { status: \"DELETED\" },\n });\n },\n});\n\n// --- Images ---\n\nexport const mediaDeleteCommand = command({\n schema: \"ads.meta.media.delete\",\n name: \"delete\",\n description:\n \"Stage taking an image out of the ad account's image library, by its hash (`baker ads meta images`), or one of its videos by id (`--video-id`, from `baker ads meta media`). Meta refuses an image a creative still uses.\",\n schemaDescription:\n \"Stage deleting an image from a Meta ad account's image library by hash, or a video from its video library by id — applied at publish. Meta refuses an image a creative uses.\",\n args: {\n \"account-id\": accountArg,\n \"image-hash\": { type: \"string\", description: \"The image's hash\" },\n \"video-id\": { type: \"string\", description: \"Or a video of the ad account, by id\" },\n },\n run: async (args) => {\n const imageHash = typeof args[\"image-hash\"] === \"string\" ? args[\"image-hash\"] : undefined;\n const videoId = typeof args[\"video-id\"] === \"string\" ? args[\"video-id\"] : undefined;\n if ((imageHash === undefined) === (videoId === undefined)) {\n failWriteValidation(\"pass --image-hash (from `baker ads meta images`) or --video-id — one of them\");\n }\n await stageOp({ kind: \"media.delete\", accountId: bareAccountId(args), payload: { imageHash, videoId } });\n },\n});\n\n// --- Custom conversions ---\n\nexport const customConversionsUpdateCommand = command({\n schema: \"ads.meta.custom-conversions.update\",\n name: \"update\",\n description:\n \"Stage renaming a Custom Conversion, its description or its value per conversion. Meta keeps a conversion's rule and event category for good — a conversion that counts something else is a new one.\",\n schemaDescription:\n \"Stage a change to a Meta Custom Conversion: --name, --description, --value (value per conversion, account currency). The rule and event category cannot change (Meta accepts and ignores them).\",\n args: {\n id: { type: \"positional\", description: \"Custom conversion id\", required: true },\n \"account-id\": accountArg,\n name: { type: \"string\", description: \"New name\" },\n description: { type: \"string\", description: \"New description\" },\n value: { type: \"string\", description: \"Value of one conversion, in the account currency\" },\n },\n run: async (args) => {\n const payload = Object.fromEntries(\n Object.entries({\n name: args.name,\n description: args.description,\n default_conversion_value: numberFlag(args.value, \"--value\"),\n }).filter(([, value]) => value !== undefined),\n );\n await stageOp({\n kind: \"customConversion.update\",\n accountId: bareAccountId(args),\n target: requireTarget(args, \"custom conversion\"),\n payload,\n });\n },\n});\n\nexport const customConversionsDeleteCommand = command({\n schema: \"ads.meta.custom-conversions.delete\",\n name: \"delete\",\n description:\n \"Stage deleting a Custom Conversion. Meta archives it: it stops counting and leaves the active list, and still uses one of the account's slots. Ad sets optimizing toward it stop finding conversions.\",\n schemaDescription:\n \"Stage deleting (archiving) a Meta Custom Conversion — applied at publish. Not reversible; it keeps its slot in the account's cap.\",\n args: { id: schemaId(\"Custom conversion id\"), \"account-id\": accountArg },\n run: async (args) => {\n await stageOp({\n kind: \"customConversion.update\",\n accountId: bareAccountId(args),\n target: requireTarget(args, \"custom conversion\"),\n payload: { status: \"DELETED\" },\n });\n },\n});\n\n// --- Labels ---\n\nexport const labelsCreateCommand = command({\n schema: \"ads.meta.labels.create\",\n name: \"create\",\n description:\n 'Stage a new ad label. File things under it with `labels attach <ref> --campaigns …` in the same chat. Example: baker ads meta labels create --name \"Q4 launch\"',\n schemaDescription: \"Stage a new Meta ad label (created at publish). Returns a meta_temp_* ref `labels attach` takes.\",\n args: { \"account-id\": accountArg, name: { type: \"string\", description: \"Label name\" } },\n run: async (args) => {\n await stageOp({ kind: \"adLabel.create\", accountId: bareAccountId(args), payload: { name: args.name } });\n },\n});\n\nexport const labelsRenameCommand = command({\n schema: \"ads.meta.labels.rename\",\n name: \"rename\",\n description: \"Stage renaming an ad label.\",\n schemaDescription: \"Stage renaming a Meta ad label.\",\n args: { id: schemaId(\"Label id\"), \"account-id\": accountArg, name: { type: \"string\", description: \"New name\" } },\n run: async (args) => {\n await stageOp({\n kind: \"adLabel.update\",\n accountId: bareAccountId(args),\n target: requireTarget(args, \"label\"),\n payload: { name: args.name },\n });\n },\n});\n\nexport const labelsDeleteCommand = command({\n schema: \"ads.meta.labels.delete\",\n name: \"delete\",\n description: \"Stage deleting an ad label. Everything filed under it keeps running, unlabelled.\",\n schemaDescription: \"Stage deleting a Meta ad label — applied at publish; labelled objects keep running.\",\n args: { id: schemaId(\"Label id\"), \"account-id\": accountArg },\n run: async (args) => {\n await stageOp({\n kind: \"adLabel.update\",\n accountId: bareAccountId(args),\n target: requireTarget(args, \"label\"),\n payload: { status: \"DELETED\" },\n });\n },\n});\n\nconst LABELLED = [\n [\"campaigns\", \"campaign.update\"],\n [\"adsets\", \"adSet.update\"],\n [\"ads\", \"ad.update\"],\n [\"creatives\", \"adCreative.update\"],\n] as const;\n\nconst targetArgs = {\n campaigns: { type: \"string\", description: \"Campaign ids (comma-separated or repeated)\" },\n adsets: { type: \"string\", description: \"Ad set ids\" },\n ads: { type: \"string\", description: \"Ad ids\" },\n creatives: {\n type: \"string\",\n description: \"Creative ids (live ones — a creative created in this chat is labelled later)\",\n },\n} as const;\n\nfunction idsOf(rawArgs: readonly string[] | undefined, flag: string, parsed: unknown): string[] {\n return repeatedValues(rawArgs, flag, parsed)\n .flatMap((value) => value.split(\",\"))\n .map((value) => value.trim())\n .filter(Boolean);\n}\n\n/**\n * One staged update per object. Each names only the label to add or take\n * away; staging reads the labels the object has now and stages the whole set,\n * because Meta replaces an object's labels with the set it is sent.\n */\nasync function stageLabelChange(\n verb: \"addLabels\" | \"removeLabels\",\n args: Record<string, unknown>,\n rawArgs: readonly string[] | undefined,\n): Promise<void> {\n const accountId = bareAccountId(args);\n const label = requireTarget(args, \"label\");\n const targets = LABELLED.flatMap(([flag, kind]) => idsOf(rawArgs, flag, args[flag]).map((id) => ({ kind, id })));\n if (targets.length === 0) {\n failWriteValidation(\"name what to label: --campaigns, --adsets, --ads or --creatives\");\n }\n await stageOps(\n targets.map((target) => ({ kind: target.kind, accountId, target: target.id, payload: { [verb]: [label] } })),\n );\n}\n\nexport const labelsAttachCommand = command({\n schema: \"ads.meta.labels.attach\",\n name: \"attach\",\n description:\n \"Stage filing campaigns, ad sets, ads or creatives under a label (a label id, or a meta_temp_* ref from `labels create`). Their other labels stay. Example: baker ads meta labels attach 120249 --campaigns 6123,6124\",\n schemaDescription:\n \"Stage adding a Meta ad label to campaigns/ad sets/ads/creatives (--campaigns, --adsets, --ads, --creatives; comma-separated). One staged change per object; other labels kept.\",\n args: { id: schemaId(\"Label id or meta_temp_* ref\"), \"account-id\": accountArg, ...targetArgs },\n run: async (args, rawArgs) => {\n await stageLabelChange(\"addLabels\", args, rawArgs);\n },\n});\n\nexport const labelsDetachCommand = command({\n schema: \"ads.meta.labels.detach\",\n name: \"detach\",\n description: \"Stage taking a label off campaigns, ad sets, ads or creatives. Their other labels stay.\",\n schemaDescription:\n \"Stage removing a Meta ad label from campaigns/ad sets/ads/creatives (--campaigns, --adsets, --ads, --creatives). Other labels kept.\",\n args: { id: schemaId(\"Label id\"), \"account-id\": accountArg, ...targetArgs },\n run: async (args, rawArgs) => {\n await stageLabelChange(\"removeLabels\", args, rawArgs);\n },\n});\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
import {
|
|
2
|
+
NUMERIC_ID_REGEX
|
|
3
|
+
} from "./chunk-WTJSMYY2.js";
|
|
4
|
+
|
|
5
|
+
// ../api/src/ads-google/change-history.ts
|
|
6
|
+
var CHANGE_SCOPES = ["detail", "summary"];
|
|
7
|
+
var CHANGE_SCOPE_MAX_DAYS = {
|
|
8
|
+
detail: 30,
|
|
9
|
+
summary: 90
|
|
10
|
+
};
|
|
11
|
+
var DEFAULT_CHANGE_DAYS = 7;
|
|
12
|
+
var MAX_CHANGE_DAYS = CHANGE_SCOPE_MAX_DAYS.summary;
|
|
13
|
+
function isChangeLookbackWithinReach(days, scope) {
|
|
14
|
+
return days <= CHANGE_SCOPE_MAX_DAYS[scope];
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
// ../api/src/ads-google/keyword-planning.ts
|
|
18
|
+
import { z } from "zod";
|
|
19
|
+
var ISO_DATE = /^\d{4}-\d{2}-\d{2}$/;
|
|
20
|
+
var micros = z.number().int().positive();
|
|
21
|
+
var FORECAST_MATCH_TYPES = ["EXACT", "PHRASE", "BROAD"];
|
|
22
|
+
var googleForecastBiddingSchema = z.discriminatedUnion("strategy", [
|
|
23
|
+
z.object({ strategy: z.literal("MANUAL_CPC"), maxCpcBidMicros: micros, dailyBudgetMicros: micros.optional() }),
|
|
24
|
+
z.object({
|
|
25
|
+
strategy: z.literal("MAXIMIZE_CLICKS"),
|
|
26
|
+
dailyTargetSpendMicros: micros,
|
|
27
|
+
maxCpcBidCeilingMicros: micros.optional()
|
|
28
|
+
}),
|
|
29
|
+
z.object({ strategy: z.literal("MAXIMIZE_CONVERSIONS"), dailyTargetSpendMicros: micros })
|
|
30
|
+
]);
|
|
31
|
+
var googleKeywordForecastRequestSchema = z.object({
|
|
32
|
+
customerId: z.string().regex(NUMERIC_ID_REGEX, "customerId must be the bare numeric customer id"),
|
|
33
|
+
managerId: z.string().optional(),
|
|
34
|
+
/** One forecast ad group per entry; most forecasts are a single group. */
|
|
35
|
+
adGroups: z.array(
|
|
36
|
+
z.object({
|
|
37
|
+
keywords: z.array(z.object({ text: z.string().trim().min(1).max(80), matchType: z.enum(FORECAST_MATCH_TYPES) })).min(1)
|
|
38
|
+
})
|
|
39
|
+
).min(1),
|
|
40
|
+
locationIds: z.array(z.string().regex(NUMERIC_ID_REGEX)).optional(),
|
|
41
|
+
languageId: z.string().regex(NUMERIC_ID_REGEX).optional(),
|
|
42
|
+
bidding: googleForecastBiddingSchema,
|
|
43
|
+
/** Must start in the future and end within a year. Without them Baker forecasts the 30 days from tomorrow. */
|
|
44
|
+
startDate: z.string().regex(ISO_DATE).optional(),
|
|
45
|
+
endDate: z.string().regex(ISO_DATE).optional(),
|
|
46
|
+
currencyCode: z.string().length(3).optional()
|
|
47
|
+
}).refine((body) => body.startDate === void 0 === (body.endDate === void 0), {
|
|
48
|
+
message: "Give both --start and --end, or neither (the forecast then covers the 30 days from tomorrow)",
|
|
49
|
+
path: ["endDate"]
|
|
50
|
+
});
|
|
51
|
+
var KEYWORD_FORECAST_SOURCE = "keyword_planner_forecast";
|
|
52
|
+
var googleKeywordForecastResponseSchema = z.object({
|
|
53
|
+
source: z.literal(KEYWORD_FORECAST_SOURCE),
|
|
54
|
+
period: z.object({ startDate: z.string(), endDate: z.string() }),
|
|
55
|
+
forecast_clicks: z.number().nullable(),
|
|
56
|
+
forecast_cost_micros: z.number().nullable(),
|
|
57
|
+
forecast_conversions: z.number().nullable(),
|
|
58
|
+
forecast_average_cpc_micros: z.number().nullable(),
|
|
59
|
+
forecast_average_cpa_micros: z.number().nullable()
|
|
60
|
+
});
|
|
61
|
+
var googleAdGroupThemesRequestSchema = z.object({
|
|
62
|
+
customerId: z.string().regex(NUMERIC_ID_REGEX, "customerId must be the bare numeric customer id"),
|
|
63
|
+
managerId: z.string().optional(),
|
|
64
|
+
keywords: z.array(z.string().trim().min(1)).min(1),
|
|
65
|
+
/** Existing ad groups to sort the keywords into: numeric ids or `customers/{cid}/adGroups/{id}`. */
|
|
66
|
+
adGroups: z.array(z.string().min(1)).min(1)
|
|
67
|
+
});
|
|
68
|
+
var googleAdGroupThemesResponseSchema = z.object({
|
|
69
|
+
suggestions: z.array(
|
|
70
|
+
z.object({
|
|
71
|
+
keyword: z.string(),
|
|
72
|
+
suggested_keyword: z.string(),
|
|
73
|
+
match_type: z.string(),
|
|
74
|
+
ad_group: z.string(),
|
|
75
|
+
campaign: z.string()
|
|
76
|
+
})
|
|
77
|
+
),
|
|
78
|
+
unusable_ad_groups: z.array(z.object({ ad_group: z.string(), campaign: z.string() }))
|
|
79
|
+
});
|
|
80
|
+
|
|
81
|
+
// ../api/src/ads-google/url-options.ts
|
|
82
|
+
import { z as z2 } from "zod";
|
|
83
|
+
var URL_OPTION_LEVELS = ["account", "campaign", "ad_group", "ad"];
|
|
84
|
+
var googleUrlOptionValueSchema = z2.discriminatedUnion("state", [
|
|
85
|
+
z2.object({ state: z2.literal("set"), value: z2.string() }),
|
|
86
|
+
z2.object({ state: z2.literal("not_set") }),
|
|
87
|
+
z2.object({ state: z2.literal("not_read"), reason: z2.string() })
|
|
88
|
+
]);
|
|
89
|
+
var googleUrlOptionsRequestSchema = z2.object({
|
|
90
|
+
customerId: z2.string().regex(NUMERIC_ID_REGEX, "customerId must be the bare numeric customer id"),
|
|
91
|
+
managerId: z2.string().optional(),
|
|
92
|
+
/** Compact by default: only campaigns that actually override the account. `full` lists every campaign. */
|
|
93
|
+
full: z2.boolean().optional(),
|
|
94
|
+
skipCache: z2.boolean().optional()
|
|
95
|
+
});
|
|
96
|
+
var googleUrlOptionsCampaignSchema = z2.object({
|
|
97
|
+
id: z2.string(),
|
|
98
|
+
name: z2.string(),
|
|
99
|
+
status: z2.string(),
|
|
100
|
+
final_url_suffix: googleUrlOptionValueSchema,
|
|
101
|
+
tracking_url_template: googleUrlOptionValueSchema
|
|
102
|
+
});
|
|
103
|
+
var googleUrlOptionsAdGroupSchema = z2.object({
|
|
104
|
+
id: z2.string(),
|
|
105
|
+
name: z2.string(),
|
|
106
|
+
status: z2.string(),
|
|
107
|
+
campaign_id: z2.string(),
|
|
108
|
+
final_url_suffix: googleUrlOptionValueSchema,
|
|
109
|
+
tracking_url_template: googleUrlOptionValueSchema
|
|
110
|
+
});
|
|
111
|
+
var googleUrlOptionsAdSchema = z2.object({
|
|
112
|
+
id: z2.string(),
|
|
113
|
+
status: z2.string(),
|
|
114
|
+
ad_group_id: z2.string(),
|
|
115
|
+
campaign_id: z2.string(),
|
|
116
|
+
final_url_suffix: googleUrlOptionValueSchema,
|
|
117
|
+
tracking_url_template: googleUrlOptionValueSchema
|
|
118
|
+
});
|
|
119
|
+
var googleUrlOptionsResponseSchema = z2.object({
|
|
120
|
+
customer_id: z2.string(),
|
|
121
|
+
account: z2.object({
|
|
122
|
+
level: z2.literal("account"),
|
|
123
|
+
read: z2.boolean(),
|
|
124
|
+
final_url_suffix: googleUrlOptionValueSchema,
|
|
125
|
+
tracking_url_template: googleUrlOptionValueSchema
|
|
126
|
+
}),
|
|
127
|
+
campaigns: z2.object({
|
|
128
|
+
level: z2.literal("campaign"),
|
|
129
|
+
read: z2.boolean(),
|
|
130
|
+
/** Campaigns actually observed. 0 with `read: true` means the account has no non-removed campaigns. */
|
|
131
|
+
campaigns_read: z2.number().int().nonnegative(),
|
|
132
|
+
/** Campaigns observed to carry no override of their own — an explicit finding, not an omission. */
|
|
133
|
+
campaigns_without_override: z2.number().int().nonnegative(),
|
|
134
|
+
overrides: z2.array(googleUrlOptionsCampaignSchema),
|
|
135
|
+
/** Compact mode only: campaigns read but not listed because they carry no override. */
|
|
136
|
+
omitted: z2.number().int().nonnegative()
|
|
137
|
+
}),
|
|
138
|
+
/**
|
|
139
|
+
* Ad groups and ads that carry an override of their own — read by asking Google only for the
|
|
140
|
+
* entities whose suffix or template IS NOT NULL, so an account of thousands of ads costs one page.
|
|
141
|
+
* `read: true` with no overrides is a finding: nothing at this level overrides the levels above.
|
|
142
|
+
* `truncated` means more overriding entities exist than one page listed.
|
|
143
|
+
*/
|
|
144
|
+
ad_groups: z2.object({
|
|
145
|
+
level: z2.literal("ad_group"),
|
|
146
|
+
read: z2.boolean(),
|
|
147
|
+
overrides: z2.array(googleUrlOptionsAdGroupSchema),
|
|
148
|
+
truncated: z2.boolean()
|
|
149
|
+
}),
|
|
150
|
+
ads: z2.object({
|
|
151
|
+
level: z2.literal("ad"),
|
|
152
|
+
read: z2.boolean(),
|
|
153
|
+
overrides: z2.array(googleUrlOptionsAdSchema),
|
|
154
|
+
truncated: z2.boolean()
|
|
155
|
+
}),
|
|
156
|
+
/** Levels this command could not read. Nothing here may be reported as "not configured". */
|
|
157
|
+
levels_not_read: z2.array(z2.object({ level: z2.enum(URL_OPTION_LEVELS), reason: z2.string() }))
|
|
158
|
+
});
|
|
159
|
+
var ACCOUNT_URL_OPTIONS_LOCATION = "Google Ads UI \u2192 Admin \u2192 Account settings \u2192 Tracking (account-level tracking template and final URL suffix)";
|
|
160
|
+
var ACCOUNT_URL_OPTIONS_STAGE_COMMAND = 'baker ads google account update --customer-id <id> --final-url-suffix "utm_agency=baker"';
|
|
161
|
+
function isSet(value) {
|
|
162
|
+
return value.state === "set";
|
|
163
|
+
}
|
|
164
|
+
function entityOverrideHints(label, plural, field, level) {
|
|
165
|
+
if (!level.read) return [];
|
|
166
|
+
const hints = [];
|
|
167
|
+
const overriding = level.overrides.filter((entity) => isSet(entity.final_url_suffix));
|
|
168
|
+
if (overriding.length > 0) {
|
|
169
|
+
const named = overriding.slice(0, 5).map((entity) => entity.name || entity.id).join(", ");
|
|
170
|
+
hints.push(
|
|
171
|
+
`${overriding.length} ${label}(s) set their own final URL suffix (${named}${overriding.length > 5 ? ", \u2026" : ""}). It REPLACES the campaign and account suffix for every click through it, so an account-wide parameter must be added to theirs too.`
|
|
172
|
+
);
|
|
173
|
+
}
|
|
174
|
+
if (level.truncated) {
|
|
175
|
+
hints.push(
|
|
176
|
+
`More ${plural} override the URL options than one page lists \u2014 read them all with \`baker ads google query\` on ${field}.final_url_suffix IS NOT NULL --all before saying which ones do.`
|
|
177
|
+
);
|
|
178
|
+
}
|
|
179
|
+
return hints;
|
|
180
|
+
}
|
|
181
|
+
function urlOptionsHints(report) {
|
|
182
|
+
const hints = [];
|
|
183
|
+
const { account, campaigns } = report;
|
|
184
|
+
if (!account.read) {
|
|
185
|
+
hints.push(
|
|
186
|
+
"The account level did NOT read \u2014 its URL options are unknown, not empty. Re-run before telling the user anything about account-wide tagging."
|
|
187
|
+
);
|
|
188
|
+
} else if (account.final_url_suffix.state === "not_set") {
|
|
189
|
+
hints.push(
|
|
190
|
+
`No account-level final URL suffix is set. An account-wide parameter (agency/partner tagging such as utm_agency=\u2026) belongs at the account level so it reaches every ad \u2014 stage it with \`${ACCOUNT_URL_OPTIONS_STAGE_COMMAND}\` (applies at Publish; the user sees it under ${ACCOUNT_URL_OPTIONS_LOCATION}).`
|
|
191
|
+
);
|
|
192
|
+
}
|
|
193
|
+
if (!campaigns.read) {
|
|
194
|
+
hints.push(
|
|
195
|
+
"Campaign-level URL options did NOT read \u2014 do not report that no campaign overrides exist. Re-run before concluding."
|
|
196
|
+
);
|
|
197
|
+
} else {
|
|
198
|
+
const overriding = campaigns.overrides.filter((c) => isSet(c.final_url_suffix));
|
|
199
|
+
if (overriding.length > 0) {
|
|
200
|
+
const named = overriding.slice(0, 5).map((c) => c.name || c.id).join(", ");
|
|
201
|
+
hints.push(
|
|
202
|
+
`A campaign's final URL suffix REPLACES the account-level one for that campaign \u2014 it does not merge. ${overriding.length} campaign(s) set their own (${named}${overriding.length > 5 ? ", \u2026" : ""}) and will not pick up an account-wide parameter until their own suffix carries it too. Every other campaign read here inherits the account level normally.`
|
|
203
|
+
);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
hints.push(...entityOverrideHints("ad group", "ad groups", "ad_group", report.ad_groups));
|
|
207
|
+
hints.push(...entityOverrideHints("ad", "ads", "ad_group_ad.ad", report.ads));
|
|
208
|
+
const overridingLevelsNotRead = report.levels_not_read.filter((level) => level.level !== "account");
|
|
209
|
+
if (overridingLevelsNotRead.length > 0) {
|
|
210
|
+
hints.push(
|
|
211
|
+
`Not read at this level: ${overridingLevelsNotRead.map((l) => l.level).join(", ")}. A suffix set there still wins over the levels above it.`
|
|
212
|
+
);
|
|
213
|
+
}
|
|
214
|
+
if (campaigns.omitted > 0) {
|
|
215
|
+
hints.push(`${campaigns.omitted} campaign(s) read with no override of their own are not listed \u2014 pass --full.`);
|
|
216
|
+
}
|
|
217
|
+
return hints;
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
export {
|
|
221
|
+
CHANGE_SCOPES,
|
|
222
|
+
CHANGE_SCOPE_MAX_DAYS,
|
|
223
|
+
DEFAULT_CHANGE_DAYS,
|
|
224
|
+
isChangeLookbackWithinReach,
|
|
225
|
+
googleKeywordForecastRequestSchema,
|
|
226
|
+
urlOptionsHints
|
|
227
|
+
};
|
|
228
|
+
//# sourceMappingURL=chunk-SVM3DGAQ.js.map
|