@koda-sl/baker-cli 0.564.0 → 0.566.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 +4 -2
- package/dist/{account-R3GWLAQD.js → account-EFZSU23W.js} +4 -4
- package/dist/{account-users-AQSRZXEM.js → account-users-ZS7S3XST.js} +4 -4
- package/dist/{accounts-RIYQZZQD.js → accounts-HHNJP2HK.js} +5 -5
- package/dist/{accounts-FS6YGLOR.js → accounts-R7FX5RTQ.js} +3 -3
- package/dist/{actions-RUCWCCWN.js → actions-AS77IUIW.js} +18 -18
- package/dist/{activecampaign-HP4WKQOG.js → activecampaign-LVVAEAZ7.js} +3 -3
- package/dist/{add-LYIMFKFR.js → add-NNTB7UC7.js} +3 -3
- package/dist/{add-BBKIUDIO.js → add-YT75GMYQ.js} +2 -2
- package/dist/{ads-HDU7GLOZ.js → ads-RTUNE3XQ.js} +6 -6
- package/dist/{advertisers-KKZRGHZL.js → advertisers-UKHV7DMF.js} +3 -3
- package/dist/{analytics-WEHKIKPT.js → analytics-3HPYB3LJ.js} +10 -10
- package/dist/{analytics-MVVSPVAB.js → analytics-ZNHNNEZO.js} +3 -3
- package/dist/{assign-3HOA5LOV.js → assign-3LP47K4A.js} +3 -3
- package/dist/{audience-size-ZPRWRWTV.js → audience-size-GZQBVP4G.js} +3 -3
- package/dist/{audit-XIEU7MDY.js → audit-JOS4VENF.js} +3 -3
- package/dist/{autocomplete-6FHHTJLF.js → autocomplete-QTV3USWN.js} +3 -3
- package/dist/{avatars-CFPVQQHB.js → avatars-QH6FKWOF.js} +4 -4
- package/dist/{bid-pricing-Y2DRXIBQ.js → bid-pricing-KK25LRZG.js} +4 -4
- package/dist/{brand-KC5LQUK6.js → brand-XQ6EXK6B.js} +2 -2
- package/dist/{brief-2ZCKOD2B.js → brief-OAXDT6M2.js} +14 -14
- package/dist/{campaign-groups-Z3G6REGC.js → campaign-groups-SKTIXZFH.js} +9 -9
- package/dist/{campaign-writes-B4WOMLIE.js → campaign-writes-QI3MPKZE.js} +3 -3
- package/dist/{campaigns-LLJTH6WP.js → campaigns-J6TJ5I6U.js} +12 -12
- package/dist/{campaigns-KMHUJNZX.js → campaigns-KJ6TFKHO.js} +5 -5
- package/dist/{canvas-HEZLAGL7.js → canvas-NY43T57N.js} +13 -13
- package/dist/{capabilities-GK7SIQF4.js → capabilities-H4CMKTJ5.js} +3 -3
- package/dist/{chatgpt-HLIQ7OJZ.js → chatgpt-ZI4GWP6S.js} +2 -2
- package/dist/{chats-RGYP5GIA.js → chats-XQLS3UJZ.js} +3 -3
- package/dist/{check-3HWKXL4O.js → check-24FR7WPA.js} +5 -5
- package/dist/{chunk-SKW7CDXE.js → chunk-2A24YMHV.js} +3 -3
- package/dist/{chunk-7BV5QN2P.js → chunk-2J5OCFOW.js} +29 -4
- package/dist/chunk-2J5OCFOW.js.map +1 -0
- package/dist/{chunk-RNS5MVHS.js → chunk-2KT7DG5E.js} +2 -2
- package/dist/{chunk-ULKMNQ4I.js → chunk-4E6EZ4RL.js} +3 -3
- package/dist/{chunk-GFMSRP5Q.js → chunk-4JONZ6LA.js} +56 -19
- package/dist/chunk-4JONZ6LA.js.map +1 -0
- package/dist/{chunk-S456S5VM.js → chunk-4NCQIO37.js} +2 -2
- package/dist/{chunk-I4VURNFW.js → chunk-5O57QLEV.js} +2 -2
- package/dist/{chunk-N3P5BGPD.js → chunk-5VBGY6CB.js} +2 -2
- package/dist/{chunk-T6RZ7ZOM.js → chunk-6AK74BNG.js} +3 -3
- package/dist/{chunk-2NWVSWGS.js → chunk-7QWLIZFI.js} +3 -3
- package/dist/{chunk-7YOCZ27T.js → chunk-BW3E6EDJ.js} +12 -12
- package/dist/{chunk-D67TRX67.js → chunk-CE25X6HT.js} +2 -2
- package/dist/{chunk-Q4VZZYMR.js → chunk-CVVWIXOP.js} +2 -2
- package/dist/{chunk-RM6ZIQHH.js → chunk-CXRFK47Z.js} +2 -2
- package/dist/{chunk-ERQZNOKZ.js → chunk-FZ4OKE7N.js} +6 -6
- package/dist/{chunk-RQSZDYEH.js → chunk-IWNINMRI.js} +2 -2
- package/dist/{chunk-F62BW6DJ.js → chunk-IWNLW7ZC.js} +4 -4
- package/dist/{chunk-KGAYDZM2.js → chunk-J47JWEHU.js} +2 -2
- package/dist/{chunk-Y4B7RLIE.js → chunk-JAZZ3HFR.js} +2 -2
- package/dist/{chunk-QML3FCJC.js → chunk-JPICIFPM.js} +2 -2
- package/dist/{chunk-PNA7GXBR.js → chunk-KBFYB6YK.js} +2 -2
- package/dist/{chunk-ORFYWLJP.js → chunk-LCDWDG4U.js} +54 -2
- package/dist/chunk-LCDWDG4U.js.map +1 -0
- package/dist/{chunk-KPXURSDF.js → chunk-NQVUPVI5.js} +3 -3
- package/dist/{chunk-SGEI7HNU.js → chunk-OBVSGXTA.js} +5 -5
- package/dist/{chunk-UIEVJ2HR.js → chunk-OJGNQYYS.js} +2 -2
- package/dist/{chunk-TSFHW2W4.js → chunk-OZTNA2O7.js} +2 -2
- package/dist/{chunk-MXGXVYF3.js → chunk-PX2VBLV7.js} +2 -2
- package/dist/{chunk-7KLTVL4J.js → chunk-RNVDTUWO.js} +6 -6
- package/dist/{chunk-UHWGXVYT.js → chunk-SICI27M7.js} +2 -2
- package/dist/{chunk-J35R2D6B.js → chunk-SSEJKI43.js} +3 -3
- package/dist/{chunk-SIQMOZNP.js → chunk-T2MBCTLY.js} +2 -2
- package/dist/{chunk-HDL6MTZG.js → chunk-TH4LKHWT.js} +2 -2
- package/dist/{chunk-7JBDVH7L.js → chunk-TMFC2LYC.js} +2 -2
- package/dist/{chunk-5W2FXAMY.js → chunk-UGIF23QY.js} +2 -2
- package/dist/{chunk-2YGUNIQJ.js → chunk-UMTGHV5C.js} +3 -3
- package/dist/{chunk-DJCG3C2K.js → chunk-UXY7V3PK.js} +2 -2
- package/dist/{chunk-6RDVZRK2.js → chunk-VNRL3EF7.js} +3 -3
- package/dist/{chunk-7DKJF3Y5.js → chunk-WGD6LMRW.js} +2 -2
- package/dist/{chunk-QDCU26CB.js → chunk-XWN2BUAD.js} +3 -3
- package/dist/{chunk-YXEUUGUJ.js → chunk-YFXF5XAT.js} +2 -2
- package/dist/{chunk-TJHEMCST.js → chunk-ZF5G7QTP.js} +5 -5
- package/dist/{chunk-FZJALNM6.js → chunk-ZIKSJBWD.js} +2 -2
- package/dist/{chunk-5W3PAQTH.js → chunk-ZNZHEDVB.js} +2 -2
- package/dist/{chunk-E5V5HPYO.js → chunk-ZV2GM3LW.js} +2 -2
- package/dist/{claim-23PPIKS4.js → claim-44U3RIL6.js} +3 -3
- package/dist/cli.js +36 -36
- package/dist/{companies-F5WNG6SA.js → companies-CBWSZMLE.js} +3 -3
- package/dist/{company-LXEKV5YA.js → company-XZAQYAAE.js} +3 -3
- package/dist/{complete-G3GRNRMY.js → complete-FQH646EJ.js} +3 -3
- package/dist/{connect-NEUYLAWT.js → connect-JCN3JCGD.js} +6 -6
- package/dist/{conversation-CRNAMONB.js → conversation-VW7VBIOQ.js} +3 -3
- package/dist/{conversions-G5ISEE5Z.js → conversions-Q3TYENCG.js} +8 -8
- package/dist/{conversions-A524MH5C.js → conversions-QZJRF4WN.js} +1 -1
- package/dist/{create-P72PSLV7.js → create-5X2MFN6V.js} +3 -3
- package/dist/{create-63IX52HC.js → create-CG34L6OG.js} +2 -2
- package/dist/{create-MZHQ422P.js → create-FYJFH6A7.js} +3 -3
- package/dist/{create-46WB2E3A.js → create-LQCOOKWJ.js} +3 -3
- package/dist/{creatives-OUAFL46L.js → creatives-PU3V4EDT.js} +9 -9
- package/dist/{creatives-FEVOUC2R.js → creatives-PWIEGVPE.js} +12 -12
- package/dist/{credentials-PN4YOTED.js → credentials-RHSPLXSE.js} +3 -3
- package/dist/{critique-IDUJYXRT.js → critique-B5FSBCL6.js} +3 -3
- package/dist/{critique-6PZWQ6GE.js → critique-WEIGEHNU.js} +8 -8
- package/dist/{crm-UA5QNDY4.js → crm-EBK4Z6EO.js} +4 -4
- package/dist/{crm-DC7BXQBS.js → crm-QB4AUGEW.js} +4 -4
- package/dist/{customers-F6FZ4BYS.js → customers-U3SNJUZB.js} +5 -5
- package/dist/{delete-TAGNP5FJ.js → delete-B4WV52YL.js} +3 -3
- package/dist/{delete-ZHGITRWJ.js → delete-CKCG56WV.js} +2 -2
- package/dist/{delete-PUX6AGGG.js → delete-Q2WPGQQQ.js} +3 -3
- package/dist/{demographics-265MC2Y5.js → demographics-HRH4TJ76.js} +3 -3
- package/dist/{discard-RAYUL25N.js → discard-R2SJQDCW.js} +3 -3
- package/dist/{domain-GSQX4Z2V.js → domain-LV6YI57G.js} +3 -3
- package/dist/{download-CP3Y2K54.js → download-5NLYEXK3.js} +2 -2
- package/dist/{draft-3HRGCNWA.js → draft-33DTE674.js} +3 -3
- package/dist/{draft-LJJ7K45J.js → draft-KA5F4QIQ.js} +4 -4
- package/dist/{draft-NNLOJEEV.js → draft-MRRCPIKF.js} +3 -3
- package/dist/{experiment-EFLKDQ3C.js → experiment-AZUKJ7ZO.js} +4 -4
- package/dist/{experiments-SSXYFZRC.js → experiments-AKQDYU5Z.js} +4 -4
- package/dist/{extract-JNKU6ANI.js → extract-FZ7YZFYN.js} +2 -2
- package/dist/{facets-67DUHP7G.js → facets-IRDQ2TNF.js} +3 -3
- package/dist/{feedback-3W3F3YUN.js → feedback-CGOFO6UH.js} +12 -12
- package/dist/{feedback-FGOUIPFM.js → feedback-V6TCMABL.js} +3 -3
- package/dist/{feedback-record-I3XMUJOX.js → feedback-record-SKMSWYAI.js} +13 -13
- package/dist/{fetch-I74KDC2I.js → fetch-2ZOPSTXX.js} +3 -3
- package/dist/{find-57WYB4V3.js → find-UGFONLSD.js} +4 -4
- package/dist/{fit-DEY4SJ3Z.js → fit-JQ7MR5FU.js} +5 -5
- package/dist/{flows-3OVUMHEN.js → flows-77X3R6XX.js} +108 -18
- package/dist/flows-77X3R6XX.js.map +1 -0
- package/dist/{fonts-WPI3P562.js → fonts-VOHGLU5R.js} +5 -5
- package/dist/{forecast-B4PXDUUF.js → forecast-PAGM5TBI.js} +4 -4
- package/dist/{funnel-QGMJBM23.js → funnel-7FWBX2MH.js} +4 -4
- package/dist/{ga4-FCMTGV4S.js → ga4-YVKA3V4V.js} +1 -1
- package/dist/{get-4QQDVHFA.js → get-DISZAEWO.js} +3 -3
- package/dist/{get-FS5JCUJ6.js → get-TPFELCGO.js} +3 -3
- package/dist/{google-Y4IDMDA4.js → google-OYCSQ6Z3.js} +6 -6
- package/dist/{google-ads-HLE2JZKC.js → google-ads-6KW323PN.js} +3 -3
- package/dist/{gsc-A3KB36WH.js → gsc-OJDMSP6H.js} +1 -1
- package/dist/{history-TTTAC775.js → history-BFWII3NI.js} +3 -3
- package/dist/{history-NULATRWC.js → history-GXFXEPSQ.js} +3 -3
- package/dist/{hubspot-J7ZLBL6R.js → hubspot-BU3UJNZY.js} +7 -7
- package/dist/{icon-7WND6UPY.js → icon-THWS5VPO.js} +4 -4
- package/dist/{ideas-PDIJ3I2H.js → ideas-WSUZEFLG.js} +4 -4
- package/dist/{images-SCTL5MTZ.js → images-CFZL3N4Z.js} +10 -10
- package/dist/{ingest-4FLTGD2G.js → ingest-ML2BFCNR.js} +2 -2
- package/dist/{ingest-M47H5CT7.js → ingest-NGNELRYE.js} +3 -3
- package/dist/{inspect-HDC263MS.js → inspect-VF3DJBRX.js} +3 -3
- package/dist/{inspiration-TQHQNILK.js → inspiration-FPB3IB7X.js} +1 -1
- package/dist/{keyword-metrics-QZKWO3BX.js → keyword-metrics-VDLZYA76.js} +3 -3
- package/dist/{keywords-for-site-EEIRZ77L.js → keywords-for-site-6IAS7QK3.js} +3 -3
- package/dist/{landing-IAPJPFFW.js → landing-HBBNHU4W.js} +3 -3
- package/dist/{leads-DGOFIQMH.js → leads-6RFLDXIP.js} +3 -3
- package/dist/{learn-56DN2S6B.js → learn-QL2ZO7OP.js} +4 -4
- package/dist/{line-item-writes-BHYFH4AZ.js → line-item-writes-FZVYSBWK.js} +3 -3
- package/dist/{line-items-PUWPYZOV.js → line-items-44QSYZTE.js} +5 -5
- package/dist/{link-AED2A2ML.js → link-N7VUZE5R.js} +3 -3
- package/dist/{linkedin-VC2YF6OF.js → linkedin-BP6LWQIS.js} +30 -30
- package/dist/{linkedin-person-EPSR7OIR.js → linkedin-person-KPFROM7O.js} +3 -3
- package/dist/{list-2YE5JWYG.js → list-IZ2MUUQ5.js} +3 -3
- package/dist/{list-LLLEF6YM.js → list-OW5UIFI3.js} +2 -2
- package/dist/{list-O5RQLGQO.js → list-VSDOV3QX.js} +3 -3
- package/dist/{log-FRQ2XD7O.js → log-U5P25U6W.js} +3 -3
- package/dist/{logo-ODONF6N7.js → logo-ZSSR66WS.js} +3 -3
- package/dist/{make-4QQXDW3F.js → make-55LQECUE.js} +27 -27
- package/dist/{map-6FIEOF2C.js → map-QSBCVWNW.js} +16 -7
- package/dist/map-QSBCVWNW.js.map +1 -0
- package/dist/{mcp-AGZL4CA3.js → mcp-4VUUHCWJ.js} +2 -2
- package/dist/{media-sources-AI6JDWZD.js → media-sources-B36AGK4K.js} +2 -2
- package/dist/{members-CH5TDNEZ.js → members-O5MYSZ6W.js} +3 -3
- package/dist/{meta-5KQ6CQBT.js → meta-5TRG7RTQ.js} +3 -1
- package/dist/{meta-5KQ6CQBT.js.map → meta-5TRG7RTQ.js.map} +1 -1
- package/dist/{normalize-AEJP2AEI.js → normalize-6YBZQ6MJ.js} +3 -3
- package/dist/{options-VENBF5ES.js → options-WCJ4SZ4Q.js} +6 -6
- package/dist/{organization-USVPE43J.js → organization-RKV7KDMQ.js} +3 -3
- package/dist/{performance-2V2O5QIB.js → performance-ASGNJQTT.js} +3 -3
- package/dist/{performance-GEALWLJF.js → performance-JZ2IUWJX.js} +4 -4
- package/dist/{posts-TRQCRLYZ.js → posts-F327IP23.js} +1 -1
- package/dist/{preview-Q3N6NMQ5.js → preview-SMFKMMZU.js} +3 -3
- package/dist/{promoted-tweet-writes-DB6U5OIJ.js → promoted-tweet-writes-5VBLE23Q.js} +3 -3
- package/dist/{promoted-tweets-ATKIVR2F.js → promoted-tweets-N7XPG3XB.js} +3 -3
- package/dist/{publish-R7RFAVGE.js → publish-ZCVVBT2E.js} +3 -3
- package/dist/{reddit-2FEGFGU7.js → reddit-ZWA4GSD3.js} +4 -4
- package/dist/{refresh-BDEAUQEB.js → refresh-GZSPTRQO.js} +2 -2
- package/dist/{release-CA7H6KLD.js → release-YQSDFSAD.js} +3 -3
- package/dist/{remove-GVLJDVSB.js → remove-IC6XZSLZ.js} +2 -2
- package/dist/{reopen-5UVQ5EXY.js → reopen-4D4S5TFN.js} +3 -3
- package/dist/{rerun-QGCY5TRB.js → rerun-QCV3QX2U.js} +16 -16
- package/dist/{research-63R4XYM6.js → research-SPWJYSF3.js} +2 -2
- package/dist/{research-5AO6DRY5.js → research-XRKLDLK3.js} +13 -13
- package/dist/{reset-RKW5GJAX.js → reset-MTSRIAXC.js} +2 -2
- package/dist/{reset-75QSSW7G.js → reset-RPHQ6R4T.js} +2 -2
- package/dist/{resolve-GZPY2HSF.js → resolve-F4Q7TPBU.js} +3 -3
- package/dist/{retry-QXKDF4VY.js → retry-EY4VUCWE.js} +2 -2
- package/dist/{retry-ZZM63KIG.js → retry-ZJYQRVXA.js} +2 -2
- package/dist/{revenue-QJIUOCIR.js → revenue-MWDAUG2M.js} +4 -4
- package/dist/{rules-MTOM5TXU.js → rules-LIHB6YIY.js} +5 -5
- package/dist/{rules-add-P7QMIJ47.js → rules-add-6NIC4BSS.js} +5 -5
- package/dist/{run-UXLXTYI4.js → run-K3ZTVHXF.js} +3 -3
- package/dist/{run-5PRW3VXO.js → run-TSLHGOVM.js} +16 -16
- package/dist/{scaffold-ad-WGNIHTWJ.js → scaffold-ad-G4GPAJNA.js} +10 -10
- package/dist/{scaffold-static-ad-DULWCCZW.js → scaffold-static-ad-5G4T4QOV.js} +32 -32
- package/dist/{scaffold-video-UUHRYZFC.js → scaffold-video-BCQTXK3B.js} +9 -9
- package/dist/{schedule-HVLI4YDP.js → schedule-6AEZXHSM.js} +2 -2
- package/dist/{scheduled-agents-DHKDQSOS.js → scheduled-agents-4ALAF7S2.js} +11 -11
- package/dist/{schema-CCM76NWZ.js → schema-G2RFAHMC.js} +4 -4
- package/dist/{search-563LZ4JQ.js → search-QXTEVPDB.js} +2 -2
- package/dist/{select-EBBZB4I7.js → select-BDE4444H.js} +11 -11
- package/dist/{set-prompt-DIWUIE6L.js → set-prompt-BJGXSGF7.js} +8 -8
- package/dist/{setup-links-BTG7AOMH.js → setup-links-PI6HRHB3.js} +3 -3
- package/dist/{shopify-XOZ6H5WN.js → shopify-RTWQDLMB.js} +3 -3
- package/dist/{site-BUJSVT4Y.js → site-F5YCQRXX.js} +4 -4
- package/dist/{sources-6IU6U3CQ.js → sources-AIY3SEIE.js} +6 -6
- package/dist/{sources-QSKRDIT5.js → sources-JBOEVF5L.js} +6 -6
- package/dist/{stale-MZCPHFMS.js → stale-R63TSO5I.js} +10 -10
- package/dist/{status-OHMKGRZ6.js → status-NXZSC3WG.js} +3 -3
- package/dist/{stock-WBNGQUZT.js → stock-WUOFRG3K.js} +6 -6
- package/dist/{studio-ZRAZ2C25.js → studio-D2OMFCZZ.js} +1 -1
- package/dist/{sync-EVJR4GY6.js → sync-4T577GH4.js} +2 -2
- package/dist/{sync-definition-PESPTSAQ.js → sync-definition-IRW4MSRQ.js} +9 -9
- package/dist/{tags-OZUQMA2G.js → tags-24RR4Q2Y.js} +3 -3
- package/dist/{tags-PF4TBBEX.js → tags-DVWORXQR.js} +4 -4
- package/dist/{tags-T4QZEQIR.js → tags-R66INE52.js} +3 -3
- package/dist/{tags-YTZ6ZPQQ.js → tags-VAPD3LWN.js} +2 -2
- package/dist/{tags-HN67SXIG.js → tags-VS37KZCM.js} +3 -3
- package/dist/{targeting-criteria-JTY4OUQV.js → targeting-criteria-CR5VHR35.js} +3 -3
- package/dist/{targets-RG3NONXL.js → targets-MF2K7JRS.js} +3 -3
- package/dist/{testimonials-UOVGKW23.js → testimonials-J6FUERA2.js} +6 -6
- package/dist/{top-companies-VNFPTJBI.js → top-companies-ZEFG2CVI.js} +3 -3
- package/dist/{transcript-F5XLS33R.js → transcript-O2UOSI54.js} +3 -3
- package/dist/{translate-IXHJUXWD.js → translate-DZAZAUI2.js} +13 -13
- package/dist/{triggers-3GJOP4QN.js → triggers-NQMVL755.js} +3 -3
- package/dist/{unlink-636FAP6D.js → unlink-2RGEODVO.js} +3 -3
- package/dist/{unstage-445BCA7J.js → unstage-KLYI3EMB.js} +3 -3
- package/dist/{update-V5WN6HAR.js → update-CVUA6TTH.js} +2 -2
- package/dist/{update-J357GPUA.js → update-HDI54TX2.js} +3 -3
- package/dist/{update-U4UVU7LC.js → update-YUMXVVIV.js} +3 -3
- package/dist/{update-64M3KSXE.js → update-ZUB7IM4K.js} +3 -3
- package/dist/{upload-PCXMVTGL.js → upload-RARJSXYY.js} +3 -3
- package/dist/{url-params-NEVV6NED.js → url-params-YRMDSBOO.js} +3 -3
- package/dist/{validate-73GLPP7O.js → validate-NG3O63DD.js} +11 -11
- package/dist/{videos-HROOMEHA.js → videos-IWTKAIJL.js} +6 -6
- package/dist/videos-NITQKILV.js +146 -0
- package/dist/videos-NITQKILV.js.map +1 -0
- package/dist/{viewer-check-7YL3WXQK.js → viewer-check-JNFFC5IK.js} +6 -6
- package/dist/{web-JUSF75RR.js → web-VR6XXNL6.js} +3 -3
- package/dist/{winning-ads-ZEVLZPOA.js → winning-ads-M6UG74BB.js} +3 -3
- package/dist/{write-commands-2TODH3QX.js → write-commands-6OHNL3UR.js} +4 -4
- package/dist/{x-5OJJOFRB.js → x-TSLM5O2T.js} +6 -6
- package/package.json +1 -1
- package/dist/chunk-7BV5QN2P.js.map +0 -1
- package/dist/chunk-GFMSRP5Q.js.map +0 -1
- package/dist/chunk-ORFYWLJP.js.map +0 -1
- package/dist/flows-3OVUMHEN.js.map +0 -1
- package/dist/map-6FIEOF2C.js.map +0 -1
- /package/dist/{account-R3GWLAQD.js.map → account-EFZSU23W.js.map} +0 -0
- /package/dist/{account-users-AQSRZXEM.js.map → account-users-ZS7S3XST.js.map} +0 -0
- /package/dist/{accounts-RIYQZZQD.js.map → accounts-HHNJP2HK.js.map} +0 -0
- /package/dist/{accounts-FS6YGLOR.js.map → accounts-R7FX5RTQ.js.map} +0 -0
- /package/dist/{actions-RUCWCCWN.js.map → actions-AS77IUIW.js.map} +0 -0
- /package/dist/{activecampaign-HP4WKQOG.js.map → activecampaign-LVVAEAZ7.js.map} +0 -0
- /package/dist/{add-LYIMFKFR.js.map → add-NNTB7UC7.js.map} +0 -0
- /package/dist/{add-BBKIUDIO.js.map → add-YT75GMYQ.js.map} +0 -0
- /package/dist/{ads-HDU7GLOZ.js.map → ads-RTUNE3XQ.js.map} +0 -0
- /package/dist/{advertisers-KKZRGHZL.js.map → advertisers-UKHV7DMF.js.map} +0 -0
- /package/dist/{analytics-WEHKIKPT.js.map → analytics-3HPYB3LJ.js.map} +0 -0
- /package/dist/{analytics-MVVSPVAB.js.map → analytics-ZNHNNEZO.js.map} +0 -0
- /package/dist/{assign-3HOA5LOV.js.map → assign-3LP47K4A.js.map} +0 -0
- /package/dist/{audience-size-ZPRWRWTV.js.map → audience-size-GZQBVP4G.js.map} +0 -0
- /package/dist/{audit-XIEU7MDY.js.map → audit-JOS4VENF.js.map} +0 -0
- /package/dist/{autocomplete-6FHHTJLF.js.map → autocomplete-QTV3USWN.js.map} +0 -0
- /package/dist/{avatars-CFPVQQHB.js.map → avatars-QH6FKWOF.js.map} +0 -0
- /package/dist/{bid-pricing-Y2DRXIBQ.js.map → bid-pricing-KK25LRZG.js.map} +0 -0
- /package/dist/{brand-KC5LQUK6.js.map → brand-XQ6EXK6B.js.map} +0 -0
- /package/dist/{brief-2ZCKOD2B.js.map → brief-OAXDT6M2.js.map} +0 -0
- /package/dist/{campaign-groups-Z3G6REGC.js.map → campaign-groups-SKTIXZFH.js.map} +0 -0
- /package/dist/{campaign-writes-B4WOMLIE.js.map → campaign-writes-QI3MPKZE.js.map} +0 -0
- /package/dist/{campaigns-LLJTH6WP.js.map → campaigns-J6TJ5I6U.js.map} +0 -0
- /package/dist/{campaigns-KMHUJNZX.js.map → campaigns-KJ6TFKHO.js.map} +0 -0
- /package/dist/{canvas-HEZLAGL7.js.map → canvas-NY43T57N.js.map} +0 -0
- /package/dist/{capabilities-GK7SIQF4.js.map → capabilities-H4CMKTJ5.js.map} +0 -0
- /package/dist/{chatgpt-HLIQ7OJZ.js.map → chatgpt-ZI4GWP6S.js.map} +0 -0
- /package/dist/{chats-RGYP5GIA.js.map → chats-XQLS3UJZ.js.map} +0 -0
- /package/dist/{check-3HWKXL4O.js.map → check-24FR7WPA.js.map} +0 -0
- /package/dist/{chunk-SKW7CDXE.js.map → chunk-2A24YMHV.js.map} +0 -0
- /package/dist/{chunk-RNS5MVHS.js.map → chunk-2KT7DG5E.js.map} +0 -0
- /package/dist/{chunk-ULKMNQ4I.js.map → chunk-4E6EZ4RL.js.map} +0 -0
- /package/dist/{chunk-S456S5VM.js.map → chunk-4NCQIO37.js.map} +0 -0
- /package/dist/{chunk-I4VURNFW.js.map → chunk-5O57QLEV.js.map} +0 -0
- /package/dist/{chunk-N3P5BGPD.js.map → chunk-5VBGY6CB.js.map} +0 -0
- /package/dist/{chunk-T6RZ7ZOM.js.map → chunk-6AK74BNG.js.map} +0 -0
- /package/dist/{chunk-2NWVSWGS.js.map → chunk-7QWLIZFI.js.map} +0 -0
- /package/dist/{chunk-7YOCZ27T.js.map → chunk-BW3E6EDJ.js.map} +0 -0
- /package/dist/{chunk-D67TRX67.js.map → chunk-CE25X6HT.js.map} +0 -0
- /package/dist/{chunk-Q4VZZYMR.js.map → chunk-CVVWIXOP.js.map} +0 -0
- /package/dist/{chunk-RM6ZIQHH.js.map → chunk-CXRFK47Z.js.map} +0 -0
- /package/dist/{chunk-ERQZNOKZ.js.map → chunk-FZ4OKE7N.js.map} +0 -0
- /package/dist/{chunk-RQSZDYEH.js.map → chunk-IWNINMRI.js.map} +0 -0
- /package/dist/{chunk-F62BW6DJ.js.map → chunk-IWNLW7ZC.js.map} +0 -0
- /package/dist/{chunk-KGAYDZM2.js.map → chunk-J47JWEHU.js.map} +0 -0
- /package/dist/{chunk-Y4B7RLIE.js.map → chunk-JAZZ3HFR.js.map} +0 -0
- /package/dist/{chunk-QML3FCJC.js.map → chunk-JPICIFPM.js.map} +0 -0
- /package/dist/{chunk-PNA7GXBR.js.map → chunk-KBFYB6YK.js.map} +0 -0
- /package/dist/{chunk-KPXURSDF.js.map → chunk-NQVUPVI5.js.map} +0 -0
- /package/dist/{chunk-SGEI7HNU.js.map → chunk-OBVSGXTA.js.map} +0 -0
- /package/dist/{chunk-UIEVJ2HR.js.map → chunk-OJGNQYYS.js.map} +0 -0
- /package/dist/{chunk-TSFHW2W4.js.map → chunk-OZTNA2O7.js.map} +0 -0
- /package/dist/{chunk-MXGXVYF3.js.map → chunk-PX2VBLV7.js.map} +0 -0
- /package/dist/{chunk-7KLTVL4J.js.map → chunk-RNVDTUWO.js.map} +0 -0
- /package/dist/{chunk-UHWGXVYT.js.map → chunk-SICI27M7.js.map} +0 -0
- /package/dist/{chunk-J35R2D6B.js.map → chunk-SSEJKI43.js.map} +0 -0
- /package/dist/{chunk-SIQMOZNP.js.map → chunk-T2MBCTLY.js.map} +0 -0
- /package/dist/{chunk-HDL6MTZG.js.map → chunk-TH4LKHWT.js.map} +0 -0
- /package/dist/{chunk-7JBDVH7L.js.map → chunk-TMFC2LYC.js.map} +0 -0
- /package/dist/{chunk-5W2FXAMY.js.map → chunk-UGIF23QY.js.map} +0 -0
- /package/dist/{chunk-2YGUNIQJ.js.map → chunk-UMTGHV5C.js.map} +0 -0
- /package/dist/{chunk-DJCG3C2K.js.map → chunk-UXY7V3PK.js.map} +0 -0
- /package/dist/{chunk-6RDVZRK2.js.map → chunk-VNRL3EF7.js.map} +0 -0
- /package/dist/{chunk-7DKJF3Y5.js.map → chunk-WGD6LMRW.js.map} +0 -0
- /package/dist/{chunk-QDCU26CB.js.map → chunk-XWN2BUAD.js.map} +0 -0
- /package/dist/{chunk-YXEUUGUJ.js.map → chunk-YFXF5XAT.js.map} +0 -0
- /package/dist/{chunk-TJHEMCST.js.map → chunk-ZF5G7QTP.js.map} +0 -0
- /package/dist/{chunk-FZJALNM6.js.map → chunk-ZIKSJBWD.js.map} +0 -0
- /package/dist/{chunk-5W3PAQTH.js.map → chunk-ZNZHEDVB.js.map} +0 -0
- /package/dist/{chunk-E5V5HPYO.js.map → chunk-ZV2GM3LW.js.map} +0 -0
- /package/dist/{claim-23PPIKS4.js.map → claim-44U3RIL6.js.map} +0 -0
- /package/dist/{companies-F5WNG6SA.js.map → companies-CBWSZMLE.js.map} +0 -0
- /package/dist/{company-LXEKV5YA.js.map → company-XZAQYAAE.js.map} +0 -0
- /package/dist/{complete-G3GRNRMY.js.map → complete-FQH646EJ.js.map} +0 -0
- /package/dist/{connect-NEUYLAWT.js.map → connect-JCN3JCGD.js.map} +0 -0
- /package/dist/{conversation-CRNAMONB.js.map → conversation-VW7VBIOQ.js.map} +0 -0
- /package/dist/{conversions-G5ISEE5Z.js.map → conversions-Q3TYENCG.js.map} +0 -0
- /package/dist/{conversions-A524MH5C.js.map → conversions-QZJRF4WN.js.map} +0 -0
- /package/dist/{create-P72PSLV7.js.map → create-5X2MFN6V.js.map} +0 -0
- /package/dist/{create-63IX52HC.js.map → create-CG34L6OG.js.map} +0 -0
- /package/dist/{create-MZHQ422P.js.map → create-FYJFH6A7.js.map} +0 -0
- /package/dist/{create-46WB2E3A.js.map → create-LQCOOKWJ.js.map} +0 -0
- /package/dist/{creatives-OUAFL46L.js.map → creatives-PU3V4EDT.js.map} +0 -0
- /package/dist/{creatives-FEVOUC2R.js.map → creatives-PWIEGVPE.js.map} +0 -0
- /package/dist/{credentials-PN4YOTED.js.map → credentials-RHSPLXSE.js.map} +0 -0
- /package/dist/{critique-IDUJYXRT.js.map → critique-B5FSBCL6.js.map} +0 -0
- /package/dist/{critique-6PZWQ6GE.js.map → critique-WEIGEHNU.js.map} +0 -0
- /package/dist/{crm-UA5QNDY4.js.map → crm-EBK4Z6EO.js.map} +0 -0
- /package/dist/{crm-DC7BXQBS.js.map → crm-QB4AUGEW.js.map} +0 -0
- /package/dist/{customers-F6FZ4BYS.js.map → customers-U3SNJUZB.js.map} +0 -0
- /package/dist/{delete-TAGNP5FJ.js.map → delete-B4WV52YL.js.map} +0 -0
- /package/dist/{delete-ZHGITRWJ.js.map → delete-CKCG56WV.js.map} +0 -0
- /package/dist/{delete-PUX6AGGG.js.map → delete-Q2WPGQQQ.js.map} +0 -0
- /package/dist/{demographics-265MC2Y5.js.map → demographics-HRH4TJ76.js.map} +0 -0
- /package/dist/{discard-RAYUL25N.js.map → discard-R2SJQDCW.js.map} +0 -0
- /package/dist/{domain-GSQX4Z2V.js.map → domain-LV6YI57G.js.map} +0 -0
- /package/dist/{download-CP3Y2K54.js.map → download-5NLYEXK3.js.map} +0 -0
- /package/dist/{draft-3HRGCNWA.js.map → draft-33DTE674.js.map} +0 -0
- /package/dist/{draft-LJJ7K45J.js.map → draft-KA5F4QIQ.js.map} +0 -0
- /package/dist/{draft-NNLOJEEV.js.map → draft-MRRCPIKF.js.map} +0 -0
- /package/dist/{experiment-EFLKDQ3C.js.map → experiment-AZUKJ7ZO.js.map} +0 -0
- /package/dist/{experiments-SSXYFZRC.js.map → experiments-AKQDYU5Z.js.map} +0 -0
- /package/dist/{extract-JNKU6ANI.js.map → extract-FZ7YZFYN.js.map} +0 -0
- /package/dist/{facets-67DUHP7G.js.map → facets-IRDQ2TNF.js.map} +0 -0
- /package/dist/{feedback-3W3F3YUN.js.map → feedback-CGOFO6UH.js.map} +0 -0
- /package/dist/{feedback-FGOUIPFM.js.map → feedback-V6TCMABL.js.map} +0 -0
- /package/dist/{feedback-record-I3XMUJOX.js.map → feedback-record-SKMSWYAI.js.map} +0 -0
- /package/dist/{fetch-I74KDC2I.js.map → fetch-2ZOPSTXX.js.map} +0 -0
- /package/dist/{find-57WYB4V3.js.map → find-UGFONLSD.js.map} +0 -0
- /package/dist/{fit-DEY4SJ3Z.js.map → fit-JQ7MR5FU.js.map} +0 -0
- /package/dist/{fonts-WPI3P562.js.map → fonts-VOHGLU5R.js.map} +0 -0
- /package/dist/{forecast-B4PXDUUF.js.map → forecast-PAGM5TBI.js.map} +0 -0
- /package/dist/{funnel-QGMJBM23.js.map → funnel-7FWBX2MH.js.map} +0 -0
- /package/dist/{ga4-FCMTGV4S.js.map → ga4-YVKA3V4V.js.map} +0 -0
- /package/dist/{get-4QQDVHFA.js.map → get-DISZAEWO.js.map} +0 -0
- /package/dist/{get-FS5JCUJ6.js.map → get-TPFELCGO.js.map} +0 -0
- /package/dist/{google-Y4IDMDA4.js.map → google-OYCSQ6Z3.js.map} +0 -0
- /package/dist/{google-ads-HLE2JZKC.js.map → google-ads-6KW323PN.js.map} +0 -0
- /package/dist/{gsc-A3KB36WH.js.map → gsc-OJDMSP6H.js.map} +0 -0
- /package/dist/{history-TTTAC775.js.map → history-BFWII3NI.js.map} +0 -0
- /package/dist/{history-NULATRWC.js.map → history-GXFXEPSQ.js.map} +0 -0
- /package/dist/{hubspot-J7ZLBL6R.js.map → hubspot-BU3UJNZY.js.map} +0 -0
- /package/dist/{icon-7WND6UPY.js.map → icon-THWS5VPO.js.map} +0 -0
- /package/dist/{ideas-PDIJ3I2H.js.map → ideas-WSUZEFLG.js.map} +0 -0
- /package/dist/{images-SCTL5MTZ.js.map → images-CFZL3N4Z.js.map} +0 -0
- /package/dist/{ingest-4FLTGD2G.js.map → ingest-ML2BFCNR.js.map} +0 -0
- /package/dist/{ingest-M47H5CT7.js.map → ingest-NGNELRYE.js.map} +0 -0
- /package/dist/{inspect-HDC263MS.js.map → inspect-VF3DJBRX.js.map} +0 -0
- /package/dist/{inspiration-TQHQNILK.js.map → inspiration-FPB3IB7X.js.map} +0 -0
- /package/dist/{keyword-metrics-QZKWO3BX.js.map → keyword-metrics-VDLZYA76.js.map} +0 -0
- /package/dist/{keywords-for-site-EEIRZ77L.js.map → keywords-for-site-6IAS7QK3.js.map} +0 -0
- /package/dist/{landing-IAPJPFFW.js.map → landing-HBBNHU4W.js.map} +0 -0
- /package/dist/{leads-DGOFIQMH.js.map → leads-6RFLDXIP.js.map} +0 -0
- /package/dist/{learn-56DN2S6B.js.map → learn-QL2ZO7OP.js.map} +0 -0
- /package/dist/{line-item-writes-BHYFH4AZ.js.map → line-item-writes-FZVYSBWK.js.map} +0 -0
- /package/dist/{line-items-PUWPYZOV.js.map → line-items-44QSYZTE.js.map} +0 -0
- /package/dist/{link-AED2A2ML.js.map → link-N7VUZE5R.js.map} +0 -0
- /package/dist/{linkedin-VC2YF6OF.js.map → linkedin-BP6LWQIS.js.map} +0 -0
- /package/dist/{linkedin-person-EPSR7OIR.js.map → linkedin-person-KPFROM7O.js.map} +0 -0
- /package/dist/{list-2YE5JWYG.js.map → list-IZ2MUUQ5.js.map} +0 -0
- /package/dist/{list-LLLEF6YM.js.map → list-OW5UIFI3.js.map} +0 -0
- /package/dist/{list-O5RQLGQO.js.map → list-VSDOV3QX.js.map} +0 -0
- /package/dist/{log-FRQ2XD7O.js.map → log-U5P25U6W.js.map} +0 -0
- /package/dist/{logo-ODONF6N7.js.map → logo-ZSSR66WS.js.map} +0 -0
- /package/dist/{make-4QQXDW3F.js.map → make-55LQECUE.js.map} +0 -0
- /package/dist/{mcp-AGZL4CA3.js.map → mcp-4VUUHCWJ.js.map} +0 -0
- /package/dist/{media-sources-AI6JDWZD.js.map → media-sources-B36AGK4K.js.map} +0 -0
- /package/dist/{members-CH5TDNEZ.js.map → members-O5MYSZ6W.js.map} +0 -0
- /package/dist/{normalize-AEJP2AEI.js.map → normalize-6YBZQ6MJ.js.map} +0 -0
- /package/dist/{options-VENBF5ES.js.map → options-WCJ4SZ4Q.js.map} +0 -0
- /package/dist/{organization-USVPE43J.js.map → organization-RKV7KDMQ.js.map} +0 -0
- /package/dist/{performance-2V2O5QIB.js.map → performance-ASGNJQTT.js.map} +0 -0
- /package/dist/{performance-GEALWLJF.js.map → performance-JZ2IUWJX.js.map} +0 -0
- /package/dist/{posts-TRQCRLYZ.js.map → posts-F327IP23.js.map} +0 -0
- /package/dist/{preview-Q3N6NMQ5.js.map → preview-SMFKMMZU.js.map} +0 -0
- /package/dist/{promoted-tweet-writes-DB6U5OIJ.js.map → promoted-tweet-writes-5VBLE23Q.js.map} +0 -0
- /package/dist/{promoted-tweets-ATKIVR2F.js.map → promoted-tweets-N7XPG3XB.js.map} +0 -0
- /package/dist/{publish-R7RFAVGE.js.map → publish-ZCVVBT2E.js.map} +0 -0
- /package/dist/{reddit-2FEGFGU7.js.map → reddit-ZWA4GSD3.js.map} +0 -0
- /package/dist/{refresh-BDEAUQEB.js.map → refresh-GZSPTRQO.js.map} +0 -0
- /package/dist/{release-CA7H6KLD.js.map → release-YQSDFSAD.js.map} +0 -0
- /package/dist/{remove-GVLJDVSB.js.map → remove-IC6XZSLZ.js.map} +0 -0
- /package/dist/{reopen-5UVQ5EXY.js.map → reopen-4D4S5TFN.js.map} +0 -0
- /package/dist/{rerun-QGCY5TRB.js.map → rerun-QCV3QX2U.js.map} +0 -0
- /package/dist/{research-63R4XYM6.js.map → research-SPWJYSF3.js.map} +0 -0
- /package/dist/{research-5AO6DRY5.js.map → research-XRKLDLK3.js.map} +0 -0
- /package/dist/{reset-RKW5GJAX.js.map → reset-MTSRIAXC.js.map} +0 -0
- /package/dist/{reset-75QSSW7G.js.map → reset-RPHQ6R4T.js.map} +0 -0
- /package/dist/{resolve-GZPY2HSF.js.map → resolve-F4Q7TPBU.js.map} +0 -0
- /package/dist/{retry-QXKDF4VY.js.map → retry-EY4VUCWE.js.map} +0 -0
- /package/dist/{retry-ZZM63KIG.js.map → retry-ZJYQRVXA.js.map} +0 -0
- /package/dist/{revenue-QJIUOCIR.js.map → revenue-MWDAUG2M.js.map} +0 -0
- /package/dist/{rules-MTOM5TXU.js.map → rules-LIHB6YIY.js.map} +0 -0
- /package/dist/{rules-add-P7QMIJ47.js.map → rules-add-6NIC4BSS.js.map} +0 -0
- /package/dist/{run-UXLXTYI4.js.map → run-K3ZTVHXF.js.map} +0 -0
- /package/dist/{run-5PRW3VXO.js.map → run-TSLHGOVM.js.map} +0 -0
- /package/dist/{scaffold-ad-WGNIHTWJ.js.map → scaffold-ad-G4GPAJNA.js.map} +0 -0
- /package/dist/{scaffold-static-ad-DULWCCZW.js.map → scaffold-static-ad-5G4T4QOV.js.map} +0 -0
- /package/dist/{scaffold-video-UUHRYZFC.js.map → scaffold-video-BCQTXK3B.js.map} +0 -0
- /package/dist/{schedule-HVLI4YDP.js.map → schedule-6AEZXHSM.js.map} +0 -0
- /package/dist/{scheduled-agents-DHKDQSOS.js.map → scheduled-agents-4ALAF7S2.js.map} +0 -0
- /package/dist/{schema-CCM76NWZ.js.map → schema-G2RFAHMC.js.map} +0 -0
- /package/dist/{search-563LZ4JQ.js.map → search-QXTEVPDB.js.map} +0 -0
- /package/dist/{select-EBBZB4I7.js.map → select-BDE4444H.js.map} +0 -0
- /package/dist/{set-prompt-DIWUIE6L.js.map → set-prompt-BJGXSGF7.js.map} +0 -0
- /package/dist/{setup-links-BTG7AOMH.js.map → setup-links-PI6HRHB3.js.map} +0 -0
- /package/dist/{shopify-XOZ6H5WN.js.map → shopify-RTWQDLMB.js.map} +0 -0
- /package/dist/{site-BUJSVT4Y.js.map → site-F5YCQRXX.js.map} +0 -0
- /package/dist/{sources-6IU6U3CQ.js.map → sources-AIY3SEIE.js.map} +0 -0
- /package/dist/{sources-QSKRDIT5.js.map → sources-JBOEVF5L.js.map} +0 -0
- /package/dist/{stale-MZCPHFMS.js.map → stale-R63TSO5I.js.map} +0 -0
- /package/dist/{status-OHMKGRZ6.js.map → status-NXZSC3WG.js.map} +0 -0
- /package/dist/{stock-WBNGQUZT.js.map → stock-WUOFRG3K.js.map} +0 -0
- /package/dist/{studio-ZRAZ2C25.js.map → studio-D2OMFCZZ.js.map} +0 -0
- /package/dist/{sync-EVJR4GY6.js.map → sync-4T577GH4.js.map} +0 -0
- /package/dist/{sync-definition-PESPTSAQ.js.map → sync-definition-IRW4MSRQ.js.map} +0 -0
- /package/dist/{tags-OZUQMA2G.js.map → tags-24RR4Q2Y.js.map} +0 -0
- /package/dist/{tags-PF4TBBEX.js.map → tags-DVWORXQR.js.map} +0 -0
- /package/dist/{tags-T4QZEQIR.js.map → tags-R66INE52.js.map} +0 -0
- /package/dist/{tags-YTZ6ZPQQ.js.map → tags-VAPD3LWN.js.map} +0 -0
- /package/dist/{tags-HN67SXIG.js.map → tags-VS37KZCM.js.map} +0 -0
- /package/dist/{targeting-criteria-JTY4OUQV.js.map → targeting-criteria-CR5VHR35.js.map} +0 -0
- /package/dist/{targets-RG3NONXL.js.map → targets-MF2K7JRS.js.map} +0 -0
- /package/dist/{testimonials-UOVGKW23.js.map → testimonials-J6FUERA2.js.map} +0 -0
- /package/dist/{top-companies-VNFPTJBI.js.map → top-companies-ZEFG2CVI.js.map} +0 -0
- /package/dist/{transcript-F5XLS33R.js.map → transcript-O2UOSI54.js.map} +0 -0
- /package/dist/{translate-IXHJUXWD.js.map → translate-DZAZAUI2.js.map} +0 -0
- /package/dist/{triggers-3GJOP4QN.js.map → triggers-NQMVL755.js.map} +0 -0
- /package/dist/{unlink-636FAP6D.js.map → unlink-2RGEODVO.js.map} +0 -0
- /package/dist/{unstage-445BCA7J.js.map → unstage-KLYI3EMB.js.map} +0 -0
- /package/dist/{update-V5WN6HAR.js.map → update-CVUA6TTH.js.map} +0 -0
- /package/dist/{update-J357GPUA.js.map → update-HDI54TX2.js.map} +0 -0
- /package/dist/{update-U4UVU7LC.js.map → update-YUMXVVIV.js.map} +0 -0
- /package/dist/{update-64M3KSXE.js.map → update-ZUB7IM4K.js.map} +0 -0
- /package/dist/{upload-PCXMVTGL.js.map → upload-RARJSXYY.js.map} +0 -0
- /package/dist/{url-params-NEVV6NED.js.map → url-params-YRMDSBOO.js.map} +0 -0
- /package/dist/{validate-73GLPP7O.js.map → validate-NG3O63DD.js.map} +0 -0
- /package/dist/{videos-HROOMEHA.js.map → videos-IWTKAIJL.js.map} +0 -0
- /package/dist/{viewer-check-7YL3WXQK.js.map → viewer-check-JNFFC5IK.js.map} +0 -0
- /package/dist/{web-JUSF75RR.js.map → web-VR6XXNL6.js.map} +0 -0
- /package/dist/{winning-ads-ZEVLZPOA.js.map → winning-ads-M6UG74BB.js.map} +0 -0
- /package/dist/{write-commands-2TODH3QX.js.map → write-commands-6OHNL3UR.js.map} +0 -0
- /package/dist/{x-5OJJOFRB.js.map → x-TSLM5O2T.js.map} +0 -0
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
failApi
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-CXRFK47Z.js";
|
|
4
4
|
import "./chunk-WR5Y64OE.js";
|
|
5
5
|
import {
|
|
6
6
|
triggerCatalogSchema
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-2J5OCFOW.js";
|
|
8
8
|
import "./chunk-QV6AST5T.js";
|
|
9
9
|
import "./chunk-WCU362Z6.js";
|
|
10
10
|
import "./chunk-GIWHHCD6.js";
|
|
@@ -141,4 +141,4 @@ export {
|
|
|
141
141
|
shapeTriggerCatalog,
|
|
142
142
|
triggersCommand
|
|
143
143
|
};
|
|
144
|
-
//# sourceMappingURL=triggers-
|
|
144
|
+
//# sourceMappingURL=triggers-NQMVL755.js.map
|
|
@@ -2,8 +2,8 @@ import {
|
|
|
2
2
|
failApi,
|
|
3
3
|
failValidation,
|
|
4
4
|
writeOk
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-OZTNA2O7.js";
|
|
6
|
+
import "./chunk-2J5OCFOW.js";
|
|
7
7
|
import "./chunk-QV6AST5T.js";
|
|
8
8
|
import "./chunk-WCU362Z6.js";
|
|
9
9
|
import "./chunk-GIWHHCD6.js";
|
|
@@ -67,4 +67,4 @@ var unlinkCommand = defineCommand({
|
|
|
67
67
|
export {
|
|
68
68
|
unlinkCommand
|
|
69
69
|
};
|
|
70
|
-
//# sourceMappingURL=unlink-
|
|
70
|
+
//# sourceMappingURL=unlink-2RGEODVO.js.map
|
|
@@ -2,9 +2,9 @@ import {
|
|
|
2
2
|
failApi,
|
|
3
3
|
failValidation,
|
|
4
4
|
validateScheduledAgentRef
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-CXRFK47Z.js";
|
|
6
6
|
import "./chunk-WR5Y64OE.js";
|
|
7
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-2J5OCFOW.js";
|
|
8
8
|
import "./chunk-QV6AST5T.js";
|
|
9
9
|
import "./chunk-WCU362Z6.js";
|
|
10
10
|
import "./chunk-GIWHHCD6.js";
|
|
@@ -85,4 +85,4 @@ export {
|
|
|
85
85
|
unstageBody,
|
|
86
86
|
unstageCommand
|
|
87
87
|
};
|
|
88
|
-
//# sourceMappingURL=unstage-
|
|
88
|
+
//# sourceMappingURL=unstage-KLYI3EMB.js.map
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
import {
|
|
16
16
|
AVATAR_HANDLE_PATTERN,
|
|
17
17
|
AVATAR_RELATIONS
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-2J5OCFOW.js";
|
|
19
19
|
import "./chunk-QV6AST5T.js";
|
|
20
20
|
import "./chunk-WCU362Z6.js";
|
|
21
21
|
import "./chunk-GIWHHCD6.js";
|
|
@@ -189,4 +189,4 @@ var updateCommand = defineCommand({
|
|
|
189
189
|
export {
|
|
190
190
|
updateCommand
|
|
191
191
|
};
|
|
192
|
-
//# sourceMappingURL=update-
|
|
192
|
+
//# sourceMappingURL=update-CVUA6TTH.js.map
|
|
@@ -16,9 +16,9 @@ import {
|
|
|
16
16
|
slackBody,
|
|
17
17
|
validateScheduledAgentRef,
|
|
18
18
|
writeOk
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-CXRFK47Z.js";
|
|
20
20
|
import "./chunk-WR5Y64OE.js";
|
|
21
|
-
import "./chunk-
|
|
21
|
+
import "./chunk-2J5OCFOW.js";
|
|
22
22
|
import "./chunk-QV6AST5T.js";
|
|
23
23
|
import "./chunk-WCU362Z6.js";
|
|
24
24
|
import "./chunk-GIWHHCD6.js";
|
|
@@ -152,4 +152,4 @@ var updateCommand = defineCommand({
|
|
|
152
152
|
export {
|
|
153
153
|
updateCommand
|
|
154
154
|
};
|
|
155
|
-
//# sourceMappingURL=update-
|
|
155
|
+
//# sourceMappingURL=update-HDI54TX2.js.map
|
|
@@ -6,8 +6,8 @@ import {
|
|
|
6
6
|
parsePriority,
|
|
7
7
|
parseTagList,
|
|
8
8
|
writeOk
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
9
|
+
} from "./chunk-OZTNA2O7.js";
|
|
10
|
+
import "./chunk-2J5OCFOW.js";
|
|
11
11
|
import "./chunk-QV6AST5T.js";
|
|
12
12
|
import "./chunk-WCU362Z6.js";
|
|
13
13
|
import "./chunk-GIWHHCD6.js";
|
|
@@ -98,4 +98,4 @@ var updateCommand = defineCommand({
|
|
|
98
98
|
export {
|
|
99
99
|
updateCommand
|
|
100
100
|
};
|
|
101
|
-
//# sourceMappingURL=update-
|
|
101
|
+
//# sourceMappingURL=update-YUMXVVIV.js.map
|
|
@@ -2,8 +2,8 @@ import {
|
|
|
2
2
|
failApi,
|
|
3
3
|
failValidation,
|
|
4
4
|
writeOk
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-OZTNA2O7.js";
|
|
6
|
+
import "./chunk-2J5OCFOW.js";
|
|
7
7
|
import "./chunk-QV6AST5T.js";
|
|
8
8
|
import "./chunk-WCU362Z6.js";
|
|
9
9
|
import "./chunk-GIWHHCD6.js";
|
|
@@ -63,4 +63,4 @@ var tagsUpdateCommand = defineCommand({
|
|
|
63
63
|
export {
|
|
64
64
|
tagsUpdateCommand
|
|
65
65
|
};
|
|
66
|
-
//# sourceMappingURL=update-
|
|
66
|
+
//# sourceMappingURL=update-ZUB7IM4K.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
runVideoIngest
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-5O57QLEV.js";
|
|
4
4
|
import "./chunk-FKOECEVC.js";
|
|
5
5
|
import "./chunk-RJ2ETGAQ.js";
|
|
6
6
|
import {
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
librarySaveHint
|
|
12
12
|
} from "./chunk-I7OJZ7QE.js";
|
|
13
13
|
import "./chunk-G6U45QD3.js";
|
|
14
|
-
import "./chunk-
|
|
14
|
+
import "./chunk-2J5OCFOW.js";
|
|
15
15
|
import "./chunk-QV6AST5T.js";
|
|
16
16
|
import "./chunk-WCU362Z6.js";
|
|
17
17
|
import "./chunk-GIWHHCD6.js";
|
|
@@ -134,4 +134,4 @@ var uploadCommand = defineCommand({
|
|
|
134
134
|
export {
|
|
135
135
|
uploadCommand
|
|
136
136
|
};
|
|
137
|
-
//# sourceMappingURL=upload-
|
|
137
|
+
//# sourceMappingURL=upload-RARJSXYY.js.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
handleLinkedinError,
|
|
3
3
|
resolveAccountIdArg
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-JPICIFPM.js";
|
|
5
5
|
import {
|
|
6
6
|
writeAdsJson
|
|
7
7
|
} from "./chunk-RBCO3C3Q.js";
|
|
8
8
|
import {
|
|
9
9
|
LINKEDIN_TRACKING_PARAMS_AD_SET_MAX
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-2J5OCFOW.js";
|
|
11
11
|
import "./chunk-QV6AST5T.js";
|
|
12
12
|
import "./chunk-WCU362Z6.js";
|
|
13
13
|
import "./chunk-GIWHHCD6.js";
|
|
@@ -98,4 +98,4 @@ export {
|
|
|
98
98
|
hints,
|
|
99
99
|
urlParamsCommand
|
|
100
100
|
};
|
|
101
|
-
//# sourceMappingURL=url-params-
|
|
101
|
+
//# sourceMappingURL=url-params-YRMDSBOO.js.map
|
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
import {
|
|
2
2
|
outputRatioWarningsFor,
|
|
3
3
|
shownBaseline
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-SSEJKI43.js";
|
|
5
|
+
import "./chunk-FZ4OKE7N.js";
|
|
6
6
|
import {
|
|
7
7
|
creativeSlugFromCanvasPath
|
|
8
8
|
} from "./chunk-EJBLF2LI.js";
|
|
9
9
|
import {
|
|
10
10
|
exitOnPrepareError,
|
|
11
11
|
prepareCanvas
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-ZF5G7QTP.js";
|
|
13
|
+
import "./chunk-6AK74BNG.js";
|
|
14
|
+
import "./chunk-NQVUPVI5.js";
|
|
15
15
|
import "./chunk-CP6RFWLW.js";
|
|
16
16
|
import "./chunk-EKX37C3T.js";
|
|
17
17
|
import "./chunk-Q5DFEVLE.js";
|
|
18
|
-
import "./chunk-
|
|
18
|
+
import "./chunk-J47JWEHU.js";
|
|
19
19
|
import "./chunk-OFMFBRSL.js";
|
|
20
|
-
import "./chunk-
|
|
20
|
+
import "./chunk-2KT7DG5E.js";
|
|
21
21
|
import "./chunk-UKZKLXTE.js";
|
|
22
|
-
import "./chunk-
|
|
23
|
-
import "./chunk-
|
|
22
|
+
import "./chunk-SICI27M7.js";
|
|
23
|
+
import "./chunk-PX2VBLV7.js";
|
|
24
24
|
import "./chunk-KDAINT54.js";
|
|
25
25
|
import "./chunk-G6XKD7QE.js";
|
|
26
26
|
import "./chunk-4H6XLX7E.js";
|
|
@@ -46,7 +46,7 @@ import "./chunk-E56V3RFO.js";
|
|
|
46
46
|
import "./chunk-EL3TDR5S.js";
|
|
47
47
|
import "./chunk-G6U45QD3.js";
|
|
48
48
|
import "./chunk-X6U3B6YK.js";
|
|
49
|
-
import "./chunk-
|
|
49
|
+
import "./chunk-2J5OCFOW.js";
|
|
50
50
|
import "./chunk-QV6AST5T.js";
|
|
51
51
|
import "./chunk-WCU362Z6.js";
|
|
52
52
|
import "./chunk-GIWHHCD6.js";
|
|
@@ -122,4 +122,4 @@ var validateCommand = defineCommand({
|
|
|
122
122
|
export {
|
|
123
123
|
validateCommand
|
|
124
124
|
};
|
|
125
|
-
//# sourceMappingURL=validate-
|
|
125
|
+
//# sourceMappingURL=validate-NG3O63DD.js.map
|
|
@@ -25,17 +25,17 @@ Full guide: __tooling__/docs/tools/baker/videos.md`
|
|
|
25
25
|
get: () => import("./get-BQBLPGFE.js").then((m) => m.getCommand),
|
|
26
26
|
group: () => import("./group-THZPJALS.js").then((m) => m.groupCommand),
|
|
27
27
|
search: () => import("./search-QQDR74KQ.js").then((m) => m.searchCommand),
|
|
28
|
-
upload: () => import("./upload-
|
|
29
|
-
ingest: () => import("./ingest-
|
|
28
|
+
upload: () => import("./upload-RARJSXYY.js").then((m) => m.uploadCommand),
|
|
29
|
+
ingest: () => import("./ingest-NGNELRYE.js").then((m) => m.ingestCommand),
|
|
30
30
|
fetch: () => import("./fetch-KB64NPDF.js").then((m) => m.fetchCommand),
|
|
31
|
-
download: () => import("./download-
|
|
31
|
+
download: () => import("./download-5NLYEXK3.js").then((m) => m.downloadCommand),
|
|
32
32
|
describe: () => import("./describe-EAPKNUUU.js").then((m) => m.describeCommand),
|
|
33
33
|
delete: () => import("./delete-46B7DSQV.js").then((m) => m.deleteCommand),
|
|
34
|
-
retry: () => import("./retry-
|
|
35
|
-
tags: () => import("./tags-
|
|
34
|
+
retry: () => import("./retry-ZJYQRVXA.js").then((m) => m.retryCommand),
|
|
35
|
+
tags: () => import("./tags-R66INE52.js").then((m) => m.tagsCommand)
|
|
36
36
|
}
|
|
37
37
|
});
|
|
38
38
|
export {
|
|
39
39
|
videosCommand
|
|
40
40
|
};
|
|
41
|
-
//# sourceMappingURL=videos-
|
|
41
|
+
//# sourceMappingURL=videos-IWTKAIJL.js.map
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import {
|
|
2
|
+
handleMetaError
|
|
3
|
+
} from "./chunk-5H6N36LS.js";
|
|
4
|
+
import "./chunk-QALAJNBG.js";
|
|
5
|
+
import {
|
|
6
|
+
writeJsonEnvelope
|
|
7
|
+
} from "./chunk-RBCO3C3Q.js";
|
|
8
|
+
import {
|
|
9
|
+
apiGet
|
|
10
|
+
} from "./chunk-QEREDRZO.js";
|
|
11
|
+
import "./chunk-JXTNP3B5.js";
|
|
12
|
+
import "./chunk-45D6WRCJ.js";
|
|
13
|
+
import {
|
|
14
|
+
registerSchema
|
|
15
|
+
} from "./chunk-CCYZJMZ7.js";
|
|
16
|
+
import "./chunk-YQSBHWOI.js";
|
|
17
|
+
|
|
18
|
+
// src/commands/ads/meta/videos.ts
|
|
19
|
+
import { createWriteStream, mkdirSync } from "fs";
|
|
20
|
+
import { join } from "path";
|
|
21
|
+
import { Readable } from "stream";
|
|
22
|
+
import { pipeline } from "stream/promises";
|
|
23
|
+
|
|
24
|
+
// ../api/src/ads-meta/adVideos.ts
|
|
25
|
+
import { z } from "zod";
|
|
26
|
+
var metaAdVideoSchema = z.object({
|
|
27
|
+
videoId: z.string(),
|
|
28
|
+
/** Short-lived MP4 address; null when Meta does not hand the file to this connection. */
|
|
29
|
+
source: z.string().url().nullable(),
|
|
30
|
+
seconds: z.number().nullable(),
|
|
31
|
+
title: z.string().nullable(),
|
|
32
|
+
thumbnail: z.string().url().nullable()
|
|
33
|
+
});
|
|
34
|
+
var metaAdVideosResponseSchema = z.object({
|
|
35
|
+
adId: z.string().nullable(),
|
|
36
|
+
creativeId: z.string(),
|
|
37
|
+
videos: z.array(metaAdVideoSchema)
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
// src/commands/ads/meta/videos.ts
|
|
41
|
+
import { defineCommand } from "citty";
|
|
42
|
+
var DEFAULT_OUT_DIR = "/tmp/meta-ad-videos";
|
|
43
|
+
function downloadHints(results) {
|
|
44
|
+
const all = results.flatMap((result) => result.videos);
|
|
45
|
+
const hints = [];
|
|
46
|
+
if (all.length === 0)
|
|
47
|
+
hints.push("No video in these ads: they are image or carousel ads (`creatives --creative-id` shows their assets).");
|
|
48
|
+
if (all.some((video) => video.file === null && video.url === void 0)) {
|
|
49
|
+
hints.push(
|
|
50
|
+
"A video with no file is a copy Meta does not hand to this connection (usually the Page's copy of the same upload); the other video of that ad is the same film."
|
|
51
|
+
);
|
|
52
|
+
}
|
|
53
|
+
if (all.some((video) => video.file !== null)) {
|
|
54
|
+
hints.push(
|
|
55
|
+
"Watch before judging: a frame strip (`ffmpeg -i <file> -vf fps=2,scale=240:-1,tile=8x2 strip.jpg`) and the 3-second hold rate from `insights --level ad --intent video`."
|
|
56
|
+
);
|
|
57
|
+
}
|
|
58
|
+
return hints;
|
|
59
|
+
}
|
|
60
|
+
async function download(url, file) {
|
|
61
|
+
const response = await fetch(url);
|
|
62
|
+
if (!response.ok || !response.body) throw new Error(`Meta's video address answered ${response.status}`);
|
|
63
|
+
await pipeline(Readable.fromWeb(response.body), createWriteStream(file));
|
|
64
|
+
return Number(response.headers.get("content-length") ?? 0);
|
|
65
|
+
}
|
|
66
|
+
async function fetchAndSave(params, outDir, save) {
|
|
67
|
+
const data = metaAdVideosResponseSchema.parse(await apiGet("/api/ads/meta/videos", params));
|
|
68
|
+
const owner = data.adId ?? data.creativeId;
|
|
69
|
+
const videos = [];
|
|
70
|
+
for (const video of data.videos) {
|
|
71
|
+
if (!video.source || !save) {
|
|
72
|
+
videos.push({
|
|
73
|
+
videoId: video.videoId,
|
|
74
|
+
file: null,
|
|
75
|
+
...video.source ? { url: video.source } : {},
|
|
76
|
+
seconds: video.seconds,
|
|
77
|
+
megabytes: null
|
|
78
|
+
});
|
|
79
|
+
continue;
|
|
80
|
+
}
|
|
81
|
+
const file = join(outDir, `${owner}-${video.videoId}.mp4`);
|
|
82
|
+
const bytes = await download(video.source, file);
|
|
83
|
+
videos.push({
|
|
84
|
+
videoId: video.videoId,
|
|
85
|
+
file,
|
|
86
|
+
seconds: video.seconds,
|
|
87
|
+
megabytes: bytes ? Math.round(bytes / 1e5) / 10 : null
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
return { adId: data.adId, creativeId: data.creativeId, videos };
|
|
91
|
+
}
|
|
92
|
+
var splitIds = (value) => typeof value === "string" ? value.split(",").map((id) => id.trim()).filter(Boolean) : [];
|
|
93
|
+
registerSchema({
|
|
94
|
+
command: "ads.meta.videos",
|
|
95
|
+
description: "Download the video files of running Meta ads (or creatives) to disk, to watch, cut or analyse them. One call for several ads.",
|
|
96
|
+
args: {
|
|
97
|
+
"ad-id": { type: "string", description: "Ad id, or several comma-separated", required: false },
|
|
98
|
+
"creative-id": { type: "string", description: "Creative id, or several comma-separated", required: false },
|
|
99
|
+
"out-dir": { type: "string", description: `Where the MP4s go (default ${DEFAULT_OUT_DIR})`, required: false },
|
|
100
|
+
"url-only": {
|
|
101
|
+
type: "boolean",
|
|
102
|
+
description: "Return Meta's short-lived addresses instead of files",
|
|
103
|
+
required: false
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
var videosCommand = defineCommand({
|
|
108
|
+
meta: {
|
|
109
|
+
name: "videos",
|
|
110
|
+
description: `Download the video files behind Meta ads, to watch, cut or analyse the company's own ads.
|
|
111
|
+
baker ads meta videos --ad-id 120211234567890,120211234567891 \u2014 MP4s in ${DEFAULT_OUT_DIR}
|
|
112
|
+
baker ads meta videos --creative-id 9988 --out-dir /tmp/ads \u2014 by creative
|
|
113
|
+
Start here when judging video ads: \`insights --level ad --intent video\` names the ads, this gets their files.`
|
|
114
|
+
},
|
|
115
|
+
args: {
|
|
116
|
+
"ad-id": { type: "string", description: "Ad id, or several comma-separated" },
|
|
117
|
+
"creative-id": { type: "string", description: "Creative id, or several comma-separated" },
|
|
118
|
+
"out-dir": { type: "string", description: `Where the MP4s go (default ${DEFAULT_OUT_DIR})` },
|
|
119
|
+
// Not `--no-download`: citty reads any `--no-x` as `x: false`, so that flag would never be set.
|
|
120
|
+
"url-only": { type: "boolean", description: "Return Meta's short-lived addresses instead of files" }
|
|
121
|
+
},
|
|
122
|
+
run: async ({ args }) => {
|
|
123
|
+
const adIds = splitIds(args["ad-id"]);
|
|
124
|
+
const creativeIds = splitIds(args["creative-id"]);
|
|
125
|
+
if (adIds.length + creativeIds.length === 0) {
|
|
126
|
+
writeJsonEnvelope({ ok: false, error: { code: "VALIDATION_ERROR", message: "Name --ad-id or --creative-id" } });
|
|
127
|
+
process.exit(1);
|
|
128
|
+
}
|
|
129
|
+
const outDir = typeof args["out-dir"] === "string" ? args["out-dir"] : DEFAULT_OUT_DIR;
|
|
130
|
+
const save = !args["url-only"];
|
|
131
|
+
if (save) mkdirSync(outDir, { recursive: true });
|
|
132
|
+
try {
|
|
133
|
+
const results = [];
|
|
134
|
+
for (const id of adIds) results.push(await fetchAndSave({ "ad-id": id }, outDir, save));
|
|
135
|
+
for (const id of creativeIds) results.push(await fetchAndSave({ "creative-id": id }, outDir, save));
|
|
136
|
+
writeJsonEnvelope({ ok: true, data: results, hints: downloadHints(results) });
|
|
137
|
+
} catch (err) {
|
|
138
|
+
handleMetaError(err);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
export {
|
|
143
|
+
downloadHints,
|
|
144
|
+
videosCommand
|
|
145
|
+
};
|
|
146
|
+
//# sourceMappingURL=videos-NITQKILV.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/commands/ads/meta/videos.ts","../../api/src/ads-meta/adVideos.ts"],"sourcesContent":["import { createWriteStream, mkdirSync } from \"node:fs\";\nimport { join } from \"node:path\";\nimport { Readable } from \"node:stream\";\nimport { pipeline } from \"node:stream/promises\";\nimport type { ReadableStream as WebReadableStream } from \"node:stream/web\";\nimport { type MetaAdVideosResponse, metaAdVideosResponseSchema } from \"@baker/api/ads-meta/adVideos\";\nimport { defineCommand } from \"citty\";\nimport { apiGet } from \"../../../client.ts\";\nimport { registerSchema } from \"../../../schemas.ts\";\nimport { writeJsonEnvelope } from \"../output.ts\";\nimport { handleMetaError } from \"./shared.ts\";\n\n/**\n * The video files behind running ads, downloaded to disk so the agent can\n * watch, cut and judge the company's own ads. Before this it pulled them out of\n * a preview's HTML in about ten steps per ad.\n */\n\nconst DEFAULT_OUT_DIR = \"/tmp/meta-ad-videos\";\n\nexport interface DownloadedVideo {\n videoId: string;\n file: string | null;\n /** Only with --url-only: Meta's short-lived address, instead of a file. */\n url?: string;\n seconds: number | null;\n megabytes: number | null;\n}\n\n/** One line per video: where it is on disk, or why it is not. */\nexport function downloadHints(results: ReadonlyArray<{ videos: readonly DownloadedVideo[] }>): string[] {\n const all = results.flatMap((result) => result.videos);\n const hints: string[] = [];\n if (all.length === 0)\n hints.push(\"No video in these ads: they are image or carousel ads (`creatives --creative-id` shows their assets).\");\n if (all.some((video) => video.file === null && video.url === undefined)) {\n hints.push(\n \"A video with no file is a copy Meta does not hand to this connection (usually the Page's copy of the same upload); the other video of that ad is the same film.\",\n );\n }\n if (all.some((video) => video.file !== null)) {\n hints.push(\n \"Watch before judging: a frame strip (`ffmpeg -i <file> -vf fps=2,scale=240:-1,tile=8x2 strip.jpg`) and the 3-second hold rate from `insights --level ad --intent video`.\",\n );\n }\n return hints;\n}\n\nasync function download(url: string, file: string): Promise<number> {\n const response = await fetch(url);\n if (!response.ok || !response.body) throw new Error(`Meta's video address answered ${response.status}`);\n await pipeline(Readable.fromWeb(response.body as WebReadableStream<Uint8Array>), createWriteStream(file));\n return Number(response.headers.get(\"content-length\") ?? 0);\n}\n\nasync function fetchAndSave(\n params: Record<string, string>,\n outDir: string,\n save: boolean,\n): Promise<{ adId: string | null; creativeId: string; videos: DownloadedVideo[] }> {\n const data: MetaAdVideosResponse = metaAdVideosResponseSchema.parse(await apiGet(\"/api/ads/meta/videos\", params));\n const owner = data.adId ?? data.creativeId;\n const videos: DownloadedVideo[] = [];\n for (const video of data.videos) {\n if (!video.source || !save) {\n videos.push({\n videoId: video.videoId,\n file: null,\n ...(video.source ? { url: video.source } : {}),\n seconds: video.seconds,\n megabytes: null,\n });\n continue;\n }\n const file = join(outDir, `${owner}-${video.videoId}.mp4`);\n const bytes = await download(video.source, file);\n videos.push({\n videoId: video.videoId,\n file,\n seconds: video.seconds,\n megabytes: bytes ? Math.round(bytes / 1e5) / 10 : null,\n });\n }\n return { adId: data.adId, creativeId: data.creativeId, videos };\n}\n\nconst splitIds = (value: unknown): string[] =>\n typeof value === \"string\"\n ? value\n .split(\",\")\n .map((id) => id.trim())\n .filter(Boolean)\n : [];\n\nregisterSchema({\n command: \"ads.meta.videos\",\n description:\n \"Download the video files of running Meta ads (or creatives) to disk, to watch, cut or analyse them. One call for several ads.\",\n args: {\n \"ad-id\": { type: \"string\", description: \"Ad id, or several comma-separated\", required: false },\n \"creative-id\": { type: \"string\", description: \"Creative id, or several comma-separated\", required: false },\n \"out-dir\": { type: \"string\", description: `Where the MP4s go (default ${DEFAULT_OUT_DIR})`, required: false },\n \"url-only\": {\n type: \"boolean\",\n description: \"Return Meta's short-lived addresses instead of files\",\n required: false,\n },\n },\n});\n\nexport const videosCommand = defineCommand({\n meta: {\n name: \"videos\",\n description: `Download the video files behind Meta ads, to watch, cut or analyse the company's own ads.\n baker ads meta videos --ad-id 120211234567890,120211234567891 — MP4s in ${DEFAULT_OUT_DIR}\n baker ads meta videos --creative-id 9988 --out-dir /tmp/ads — by creative\nStart here when judging video ads: \\`insights --level ad --intent video\\` names the ads, this gets their files.`,\n },\n args: {\n \"ad-id\": { type: \"string\", description: \"Ad id, or several comma-separated\" },\n \"creative-id\": { type: \"string\", description: \"Creative id, or several comma-separated\" },\n \"out-dir\": { type: \"string\", description: `Where the MP4s go (default ${DEFAULT_OUT_DIR})` },\n // Not `--no-download`: citty reads any `--no-x` as `x: false`, so that flag would never be set.\n \"url-only\": { type: \"boolean\", description: \"Return Meta's short-lived addresses instead of files\" },\n },\n run: async ({ args }) => {\n const adIds = splitIds(args[\"ad-id\"]);\n const creativeIds = splitIds(args[\"creative-id\"]);\n if (adIds.length + creativeIds.length === 0) {\n writeJsonEnvelope({ ok: false, error: { code: \"VALIDATION_ERROR\", message: \"Name --ad-id or --creative-id\" } });\n process.exit(1);\n }\n const outDir = typeof args[\"out-dir\"] === \"string\" ? args[\"out-dir\"] : DEFAULT_OUT_DIR;\n const save = !args[\"url-only\"];\n if (save) mkdirSync(outDir, { recursive: true });\n try {\n const results = [];\n for (const id of adIds) results.push(await fetchAndSave({ \"ad-id\": id }, outDir, save));\n for (const id of creativeIds) results.push(await fetchAndSave({ \"creative-id\": id }, outDir, save));\n writeJsonEnvelope({ ok: true, data: results, hints: downloadHints(results) });\n } catch (err) {\n handleMetaError(err);\n }\n },\n});\n","/**\n * The video files behind a running ad, so an agent can watch and cut the\n * company's own ads instead of scraping them out of a preview.\n *\n * A creative names its videos in three places, and which one depends on how\n * it was built: `video_id` on the creative itself, `object_story_spec.video_data`\n * for a single-video ad, and `asset_feed_spec.videos` for a dynamic creative\n * (Baker builds these itself). `GET /{video_id}?fields=source` then hands back\n * a short-lived MP4 address.\n */\nimport { z } from \"zod\";\n\n/** The parts of a Meta creative that can name a video. */\nexport interface CreativeVideoFields {\n video_id?: string;\n object_story_spec?: { video_data?: { video_id?: string } };\n asset_feed_spec?: { videos?: Array<{ video_id?: string }> };\n}\n\n/** Every video a creative uses, each once, in the order Meta lists them. */\nexport function videoIdsOfCreative(creative: CreativeVideoFields): string[] {\n const ids = [\n creative.video_id,\n creative.object_story_spec?.video_data?.video_id,\n ...(creative.asset_feed_spec?.videos ?? []).map((video) => video.video_id),\n ];\n return [...new Set(ids.filter((id): id is string => typeof id === \"string\" && id.length > 0))];\n}\n\nexport const metaAdVideoSchema = z.object({\n videoId: z.string(),\n /** Short-lived MP4 address; null when Meta does not hand the file to this connection. */\n source: z.string().url().nullable(),\n seconds: z.number().nullable(),\n title: z.string().nullable(),\n thumbnail: z.string().url().nullable(),\n});\nexport type MetaAdVideo = z.infer<typeof metaAdVideoSchema>;\n\nexport const metaAdVideosResponseSchema = z.object({\n adId: z.string().nullable(),\n creativeId: z.string(),\n videos: z.array(metaAdVideoSchema),\n});\nexport type MetaAdVideosResponse = z.infer<typeof metaAdVideosResponseSchema>;\n"],"mappings":"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","names":[]}
|
|
@@ -22,11 +22,11 @@ import {
|
|
|
22
22
|
viewerCheckCommand,
|
|
23
23
|
viewerCheckFailure,
|
|
24
24
|
viewerCheckSkip
|
|
25
|
-
} from "./chunk-
|
|
26
|
-
import "./chunk-
|
|
27
|
-
import "./chunk-
|
|
25
|
+
} from "./chunk-6AK74BNG.js";
|
|
26
|
+
import "./chunk-NQVUPVI5.js";
|
|
27
|
+
import "./chunk-J47JWEHU.js";
|
|
28
28
|
import "./chunk-OFMFBRSL.js";
|
|
29
|
-
import "./chunk-
|
|
29
|
+
import "./chunk-2KT7DG5E.js";
|
|
30
30
|
import "./chunk-UKZKLXTE.js";
|
|
31
31
|
import "./chunk-KDAINT54.js";
|
|
32
32
|
import "./chunk-G6XKD7QE.js";
|
|
@@ -42,7 +42,7 @@ import "./chunk-E56V3RFO.js";
|
|
|
42
42
|
import "./chunk-EL3TDR5S.js";
|
|
43
43
|
import "./chunk-G6U45QD3.js";
|
|
44
44
|
import "./chunk-X6U3B6YK.js";
|
|
45
|
-
import "./chunk-
|
|
45
|
+
import "./chunk-2J5OCFOW.js";
|
|
46
46
|
import "./chunk-QV6AST5T.js";
|
|
47
47
|
import "./chunk-WCU362Z6.js";
|
|
48
48
|
import "./chunk-GIWHHCD6.js";
|
|
@@ -80,4 +80,4 @@ export {
|
|
|
80
80
|
viewerCheckFailure,
|
|
81
81
|
viewerCheckSkip
|
|
82
82
|
};
|
|
83
|
-
//# sourceMappingURL=viewer-check-
|
|
83
|
+
//# sourceMappingURL=viewer-check-JNFFC5IK.js.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
webDepthHints,
|
|
3
3
|
webSourceHints
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-JAZZ3HFR.js";
|
|
5
5
|
import {
|
|
6
6
|
handleResearchError,
|
|
7
7
|
writeResearchHints,
|
|
8
8
|
writeResearchJson
|
|
9
9
|
} from "./chunk-D3YAFC6K.js";
|
|
10
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-2J5OCFOW.js";
|
|
11
11
|
import "./chunk-QV6AST5T.js";
|
|
12
12
|
import "./chunk-WCU362Z6.js";
|
|
13
13
|
import "./chunk-GIWHHCD6.js";
|
|
@@ -170,4 +170,4 @@ export {
|
|
|
170
170
|
webCommand,
|
|
171
171
|
webMarkdown
|
|
172
172
|
};
|
|
173
|
-
//# sourceMappingURL=web-
|
|
173
|
+
//# sourceMappingURL=web-VR6XXNL6.js.map
|
|
@@ -72,9 +72,9 @@ Full guide: __tooling__/docs/tools/baker/winning-ads.md`
|
|
|
72
72
|
landings: () => import("./landings-AELJXEYN.js").then((m) => m.landingsCommand),
|
|
73
73
|
"search-copy": () => import("./search-copy-EB3TONDS.js").then((m) => m.searchCopyCommand),
|
|
74
74
|
content: () => import("./content-EQZKKIST.js").then((m) => m.contentCommand),
|
|
75
|
-
fit: () => import("./fit-
|
|
75
|
+
fit: () => import("./fit-JQ7MR5FU.js").then((m) => m.fitCommand),
|
|
76
76
|
unfollow: () => import("./unfollow-OEMFPAFS.js").then((m) => m.unfollowCommand),
|
|
77
|
-
refresh: () => import("./refresh-
|
|
77
|
+
refresh: () => import("./refresh-GZSPTRQO.js").then((m) => m.refreshCommand),
|
|
78
78
|
hooks: () => import("./seeds-RGIFHHYC.js").then((m) => m.hooksCommand),
|
|
79
79
|
mechanisms: () => import("./seeds-RGIFHHYC.js").then((m) => m.mechanismsCommand),
|
|
80
80
|
formats: () => import("./seeds-RGIFHHYC.js").then((m) => m.formatsCommand)
|
|
@@ -83,4 +83,4 @@ Full guide: __tooling__/docs/tools/baker/winning-ads.md`
|
|
|
83
83
|
export {
|
|
84
84
|
winningAdsCommand
|
|
85
85
|
};
|
|
86
|
-
//# sourceMappingURL=winning-ads-
|
|
86
|
+
//# sourceMappingURL=winning-ads-M6UG74BB.js.map
|
|
@@ -16,10 +16,10 @@ import {
|
|
|
16
16
|
stageLinkedinOps,
|
|
17
17
|
stageOp,
|
|
18
18
|
stageStatusChange
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-2A24YMHV.js";
|
|
20
20
|
import {
|
|
21
21
|
handleLinkedinError
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-JPICIFPM.js";
|
|
23
23
|
import {
|
|
24
24
|
repeatedValues
|
|
25
25
|
} from "./chunk-ERSX3MKH.js";
|
|
@@ -43,7 +43,7 @@ import {
|
|
|
43
43
|
TRACKING_PARAM_DYNAMIC_VALUES,
|
|
44
44
|
campaignExcludeCompaniesSchema,
|
|
45
45
|
sponsoredPostUrn
|
|
46
|
-
} from "./chunk-
|
|
46
|
+
} from "./chunk-2J5OCFOW.js";
|
|
47
47
|
import "./chunk-QV6AST5T.js";
|
|
48
48
|
import "./chunk-WCU362Z6.js";
|
|
49
49
|
import "./chunk-GIWHHCD6.js";
|
|
@@ -1521,4 +1521,4 @@ export {
|
|
|
1521
1521
|
sponsoredPostArgs,
|
|
1522
1522
|
trackingParamsPayload
|
|
1523
1523
|
};
|
|
1524
|
-
//# sourceMappingURL=write-commands-
|
|
1524
|
+
//# sourceMappingURL=write-commands-6OHNL3UR.js.map
|
|
@@ -27,15 +27,15 @@ Full guide: __tooling__/docs/tools/baker/ads-x.md`
|
|
|
27
27
|
subCommands: {
|
|
28
28
|
accounts: () => import("./accounts-AK4QIG24.js").then((m) => m.accountsCommand),
|
|
29
29
|
funding: () => import("./funding-BSAHWU35.js").then((m) => m.fundingCommand),
|
|
30
|
-
campaigns: () => import("./campaigns-
|
|
31
|
-
"line-items": () => import("./line-items-
|
|
32
|
-
"promoted-tweets": () => import("./promoted-tweets-
|
|
30
|
+
campaigns: () => import("./campaigns-KJ6TFKHO.js").then((m) => m.campaignsCommand),
|
|
31
|
+
"line-items": () => import("./line-items-44QSYZTE.js").then((m) => m.lineItemsCommand),
|
|
32
|
+
"promoted-tweets": () => import("./promoted-tweets-N7XPG3XB.js").then((m) => m.promotedTweetsCommand),
|
|
33
33
|
tweets: () => import("./tweets-MLDLLLDB.js").then((m) => m.tweetsCommand),
|
|
34
34
|
cards: () => import("./cards-CAOGPPG4.js").then((m) => m.cardsCommand),
|
|
35
|
-
draft: () => import("./draft-
|
|
35
|
+
draft: () => import("./draft-33DTE674.js").then((m) => m.draftCommand),
|
|
36
36
|
media: () => import("./media-DGV2AMZI.js").then((m) => m.mediaCommand),
|
|
37
37
|
audiences: () => import("./audiences-7OS2ZJYO.js").then((m) => m.audiencesCommand),
|
|
38
|
-
"targeting-criteria": () => import("./targeting-criteria-
|
|
38
|
+
"targeting-criteria": () => import("./targeting-criteria-CR5VHR35.js").then((m) => m.targetingCriteriaCommand),
|
|
39
39
|
"targeting-constants": () => import("./targeting-constants-RJS2STR5.js").then((m) => m.targetingConstantsCommand),
|
|
40
40
|
"active-entities": () => import("./active-entities-HR7NJJLU.js").then((m) => m.activeEntitiesCommand),
|
|
41
41
|
stats: () => import("./stats-XNKAJD2Z.js").then((m) => m.statsCommand)
|
|
@@ -44,4 +44,4 @@ Full guide: __tooling__/docs/tools/baker/ads-x.md`
|
|
|
44
44
|
export {
|
|
45
45
|
xCommand
|
|
46
46
|
};
|
|
47
|
-
//# sourceMappingURL=x-
|
|
47
|
+
//# sourceMappingURL=x-TSLM5O2T.js.map
|