@koda-sl/baker-cli 0.465.0 → 0.467.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 +18 -1
- package/dist/account-2VTEV5C3.js +79 -0
- package/dist/account-2VTEV5C3.js.map +1 -0
- package/dist/account-HZC6X2PH.js +49 -0
- package/dist/account-MLX2MQTO.js +80 -0
- package/dist/account-reads-FCETXYI7.js +218 -0
- package/dist/account-writes-UNVXSLMV.js +66 -0
- package/dist/accounts-4P54UY6F.js +115 -0
- package/dist/accounts-6UNBLIUH.js +75 -0
- package/dist/accounts-GVTZN4VE.js +114 -0
- package/dist/accounts-PSNCMJLI.js +611 -0
- package/dist/accounts-PSNCMJLI.js.map +1 -0
- package/dist/accounts-XVQVPFDG.js +77 -0
- package/dist/accounts-XVQVPFDG.js.map +1 -0
- package/dist/actions-MEKXFKDN.js +55 -0
- package/dist/active-entities-UGHMVRWH.js +103 -0
- package/dist/activities-2J7FTZMN.js +74 -0
- package/dist/ad-group-writes-2YEZNT5Q.js +170 -0
- package/dist/ad-groups-YXVIPI7B.js +68 -0
- package/dist/ad-writes-HBNG55VT.js +174 -0
- package/dist/add-2FHPLALV.js +105 -0
- package/dist/add-JEMGWBRH.js +104 -0
- package/dist/add-JEMGWBRH.js.map +1 -0
- package/dist/add-JP76KCCY.js +97 -0
- package/dist/add-OZIORHYQ.js +302 -0
- package/dist/add-OZIORHYQ.js.map +1 -0
- package/dist/add-accounts-M5Y4DQFM.js +91 -0
- package/dist/ads-DB5NDHX5.js +128 -0
- package/dist/ads-NDV3GOIW.js +40 -0
- package/dist/ads-QBXR7IPO.js +77 -0
- package/dist/ads-W2IPUWHQ.js +113 -0
- package/dist/adsets-PY5ZKGBO.js +176 -0
- package/dist/advertisers-7BN7X2IH.js +120 -0
- package/dist/advertisers-7BN7X2IH.js.map +1 -0
- package/dist/advertisers-BVAZ4XUX.js +125 -0
- package/dist/analytics-CQMJG7S4.js +1976 -0
- package/dist/analytics-CQMJG7S4.js.map +1 -0
- package/dist/analytics-S6P7FO7Z.js +433 -0
- package/dist/analytics-S6P7FO7Z.js.map +1 -0
- package/dist/animate-QEHFEQHZ.js +480 -0
- package/dist/assign-NNI5YU4M.js +77 -0
- package/dist/assign-NNI5YU4M.js.map +1 -0
- package/dist/audience-size-BCKF7ETB.js +94 -0
- package/dist/audience-size-BCKF7ETB.js.map +1 -0
- package/dist/audiences-NTT3HZN7.js +85 -0
- package/dist/audiences-QWJ34WIW.js +268 -0
- package/dist/audiences-UUIYQFS6.js +78 -0
- package/dist/audit-3IEVQLR4.js +151 -0
- package/dist/audit-3IEVQLR4.js.map +1 -0
- package/dist/audit-OWXTLQC4.js +88 -0
- package/dist/autocomplete-5PN6N7DQ.js +111 -0
- package/dist/autocomplete-5PN6N7DQ.js.map +1 -0
- package/dist/avatars-3PC7FTU3.js +38 -0
- package/dist/bid-pricing-S5IU2BQW.js +99 -0
- package/dist/bid-pricing-S5IU2BQW.js.map +1 -0
- package/dist/brand-XVXQ7VAU.js +22 -0
- package/dist/brief-SZSPXGG4.js +490 -0
- package/dist/businesses-ZH67AXR6.js +53 -0
- package/dist/campaign-groups-SBUN3CVL.js +95 -0
- package/dist/campaign-groups-SBUN3CVL.js.map +1 -0
- package/dist/campaign-writes-2LMGW7FW.js +165 -0
- package/dist/campaign-writes-2LMGW7FW.js.map +1 -0
- package/dist/campaign-writes-4N3LQJL2.js +170 -0
- package/dist/campaigns-5FH5THMS.js +76 -0
- package/dist/campaigns-66OOGMDW.js +110 -0
- package/dist/campaigns-CYPLOBK3.js +109 -0
- package/dist/campaigns-CYPLOBK3.js.map +1 -0
- package/dist/campaigns-QUQQYMIO.js +107 -0
- package/dist/canvas-3GSDOZTI.js +46 -0
- package/dist/canvas-3GSDOZTI.js.map +1 -0
- package/dist/capabilities-UP52NQJ7.js +144 -0
- package/dist/capabilities-UP52NQJ7.js.map +1 -0
- package/dist/cards-RSMTBND3.js +85 -0
- package/dist/catalog-YDDBFPRO.js +64 -0
- package/dist/catalog-YDDBFPRO.js.map +1 -0
- package/dist/catalogs-3IYC53GK.js +128 -0
- package/dist/changes-U263PWVD.js +135 -0
- package/dist/chatgpt-O64OJE6R.js +47 -0
- package/dist/chats-FP44JQYE.js +262 -0
- package/dist/chats-FP44JQYE.js.map +1 -0
- package/dist/chunk-35ENAFJX.js +46 -0
- package/dist/chunk-3KIH22M7.js +207 -0
- package/dist/chunk-4DM6OAQ6.js +2065 -0
- package/dist/chunk-4DM6OAQ6.js.map +1 -0
- package/dist/chunk-4FCLXJYW.js +1442 -0
- package/dist/chunk-4OSBBGG5.js +304 -0
- package/dist/chunk-57UECM77.js +98 -0
- package/dist/chunk-5Q3XCLMS.js +455 -0
- package/dist/chunk-65BQAJMH.js +136 -0
- package/dist/chunk-6GFJFTG6.js +75 -0
- package/dist/chunk-6GKC2PBR.js +160 -0
- package/dist/chunk-6HPIWZHS.js +76 -0
- package/dist/chunk-73B3RQJC.js +610 -0
- package/dist/chunk-7MQVCSA7.js +310 -0
- package/dist/chunk-7NTION5F.js +26 -0
- package/dist/chunk-A3VUXG5G.js +1079 -0
- package/dist/chunk-A3VUXG5G.js.map +1 -0
- package/dist/chunk-AQ4HEXUH.js +1830 -0
- package/dist/chunk-AUWN3C2K.js +474 -0
- package/dist/chunk-B3SPFCKC.js +494 -0
- package/dist/chunk-CBCGVPHB.js +125 -0
- package/dist/chunk-CECS3DHZ.js +333 -0
- package/dist/chunk-CHFKTRB5.js +665 -0
- package/dist/chunk-D24DJ7DB.js +67 -0
- package/dist/chunk-D5MF337I.js +97 -0
- package/dist/chunk-DL2W4N7J.js +52 -0
- package/dist/chunk-DL2W4N7J.js.map +1 -0
- package/dist/chunk-DLUWHZCE.js +225 -0
- package/dist/chunk-ECBHE5S6.js +51 -0
- package/dist/chunk-EXZ2NIKX.js +111 -0
- package/dist/chunk-F3FSD6BO.js +96 -0
- package/dist/chunk-F5XU546T.js +23 -0
- package/dist/chunk-G3KO2HFZ.js +35 -0
- package/dist/chunk-GIWHHCD6.js +145 -0
- package/dist/chunk-GIWHHCD6.js.map +1 -0
- package/dist/chunk-GKXMIXEV.js +166 -0
- package/dist/chunk-GT4UFORX.js +296 -0
- package/dist/chunk-GWM4DCAK.js +4410 -0
- package/dist/chunk-GZ6YS7TG.js +106 -0
- package/dist/chunk-H7JOVRHO.js +106 -0
- package/dist/chunk-HF5V7TWU.js +592 -0
- package/dist/chunk-HM25R6XJ.js +433 -0
- package/dist/chunk-HWSUW5PX.js +169 -0
- package/dist/chunk-I7R3YSZF.js +346 -0
- package/dist/chunk-IJDF7D4U.js +139 -0
- package/dist/chunk-IK2S7QGF.js +363 -0
- package/dist/chunk-INI7U2SZ.js +188 -0
- package/dist/chunk-INJHF7AF.js +172 -0
- package/dist/chunk-J2QOKD2F.js +76 -0
- package/dist/chunk-J57EXXFU.js +175 -0
- package/dist/chunk-JE5NMVRX.js +274 -0
- package/dist/chunk-JHLGXB6K.js +45 -0
- package/dist/chunk-JSEPE5EP.js +23992 -0
- package/dist/chunk-JSKBCXI5.js +3151 -0
- package/dist/chunk-JSKBCXI5.js.map +1 -0
- package/dist/chunk-KB5HBQEK.js +25 -0
- package/dist/chunk-KB5XJHQX.js +216 -0
- package/dist/chunk-KB5XJHQX.js.map +1 -0
- package/dist/chunk-KCCWCK6L.js +6667 -0
- package/dist/chunk-KTL2D7NT.js +96 -0
- package/dist/chunk-KWTKAYCG.js +1599 -0
- package/dist/chunk-LHNL6JM2.js +309 -0
- package/dist/chunk-MPXDQWYI.js +57 -0
- package/dist/chunk-NAMEFVWL.js +1743 -0
- package/dist/chunk-NAMEFVWL.js.map +1 -0
- package/dist/chunk-NBYP5N4X.js +509 -0
- package/dist/chunk-NOSWSBLW.js +382 -0
- package/dist/chunk-O3LHCQ7Q.js +136 -0
- package/dist/chunk-P5H2BL4J.js +92 -0
- package/dist/chunk-P66JWKAL.js +533 -0
- package/dist/chunk-PA5MYVQY.js +66 -0
- package/dist/chunk-Q676JHJA.js +58 -0
- package/dist/chunk-QDOVBGKZ.js +149 -0
- package/dist/chunk-QN5VAYER.js +622 -0
- package/dist/chunk-QNEX7FEC.js +174 -0
- package/dist/chunk-QTL4NJ5I.js +65 -0
- package/dist/chunk-QXDEZKAR.js +455 -0
- package/dist/chunk-QXDEZKAR.js.map +1 -0
- package/dist/chunk-R3GZRH43.js +98 -0
- package/dist/chunk-R7CQCE3E.js +103 -0
- package/dist/chunk-RFJ3S47F.js +172 -0
- package/dist/chunk-RV67UWHI.js +5187 -0
- package/dist/chunk-RV67UWHI.js.map +1 -0
- package/dist/chunk-TMQ5LHZ3.js +159 -0
- package/dist/chunk-TRLVH7T3.js +846 -0
- package/dist/chunk-UUBFYAVE.js +337 -0
- package/dist/chunk-UXTZ5MBE.js +56 -0
- package/dist/chunk-V43RLLZE.js +55 -0
- package/dist/chunk-V4UFNEHE.js +541 -0
- package/dist/chunk-V5L5QD7R.js +60 -0
- package/dist/chunk-VAYFVC5B.js +297 -0
- package/dist/chunk-VFSLIDXA.js +42 -0
- package/dist/chunk-VHMNSO2B.js +84 -0
- package/dist/chunk-VOH2QWVG.js +275 -0
- package/dist/chunk-WESRVXFS.js +133 -0
- package/dist/chunk-WILN7TD6.js +84 -0
- package/dist/chunk-WXC3I4CT.js +6188 -0
- package/dist/chunk-X4DLIDFW.js +197 -0
- package/dist/chunk-XUMMI5WJ.js +817 -0
- package/dist/chunk-XUMMI5WJ.js.map +1 -0
- package/dist/chunk-YONSWWCF.js +215 -0
- package/dist/chunk-YONSWWCF.js.map +1 -0
- package/dist/chunk-YT74ZEVP.js +206 -0
- package/dist/chunk-Z5KBRTB2.js +191 -0
- package/dist/chunk-ZBKBTTHD.js +74 -0
- package/dist/chunk-ZFIYN7KP.js +19 -0
- package/dist/chunk-ZLU5QDLU.js +486 -0
- package/dist/chunk-ZNNC6B75.js +94 -0
- package/dist/chunk-ZO2YLHRW.js +74 -0
- package/dist/chunk-ZPJE6D7W.js +74 -0
- package/dist/claim-Y5HNMIGT.js +197 -0
- package/dist/claim-Y5HNMIGT.js.map +1 -0
- package/dist/cli.js +40 -37
- package/dist/cli.js.map +1 -1
- package/dist/client-LY2JCQS2.js +19 -0
- package/dist/code-7CBNYUPU.js +76 -0
- package/dist/companies-KXL2F27Q.js +195 -0
- package/dist/companies-KXL2F27Q.js.map +1 -0
- package/dist/complete-Y47RTEZU.js +81 -0
- package/dist/complete-Y47RTEZU.js.map +1 -0
- package/dist/config-7COTFJWK.js +88 -0
- package/dist/connect-VOCZSB3W.js +42 -0
- package/dist/content-OXMONMHJ.js +85 -0
- package/dist/conversation-DJLUJC2V.js +93 -0
- package/dist/conversation-DJLUJC2V.js.map +1 -0
- package/dist/conversion-report-ZRNV7X7D.js +125 -0
- package/dist/conversion-upload-command-IMHHSGYU.js +438 -0
- package/dist/conversion-writes-7N5UDQGH.js +120 -0
- package/dist/conversions-CRRH74GZ.js +135 -0
- package/dist/conversions-CRRH74GZ.js.map +1 -0
- package/dist/conversions-QOXRO26I.js +76 -0
- package/dist/countries-UXAUGSBR.js +82 -0
- package/dist/create-4HHYBOZF.js +59 -0
- package/dist/create-4HHYBOZF.js.map +1 -0
- package/dist/create-FVIVHA37.js +207 -0
- package/dist/create-FVIVHA37.js.map +1 -0
- package/dist/create-XSXCJ2IS.js +235 -0
- package/dist/create-XSXCJ2IS.js.map +1 -0
- package/dist/create-YTCXQUUX.js +130 -0
- package/dist/create-YTCXQUUX.js.map +1 -0
- package/dist/creatives-6DJPLVV7.js +182 -0
- package/dist/creatives-6DJPLVV7.js.map +1 -0
- package/dist/creatives-F26GDJG2.js +51 -0
- package/dist/creatives-ONKKGW5T.js +87 -0
- package/dist/credentials-6W4YNIWY.js +287 -0
- package/dist/credentials-6W4YNIWY.js.map +1 -0
- package/dist/critique-EFZPHFIS.js +213 -0
- package/dist/critique-EFZPHFIS.js.map +1 -0
- package/dist/critique-JNWRNCVW.js +1449 -0
- package/dist/critique-JNWRNCVW.js.map +1 -0
- package/dist/crm-E3BPZUW3.js +224 -0
- package/dist/crm-E3BPZUW3.js.map +1 -0
- package/dist/crm-MAZU2GZR.js +318 -0
- package/dist/crm-MAZU2GZR.js.map +1 -0
- package/dist/crop-3ZV5BFCA.js +113 -0
- package/dist/currency-PGLGLRKU.js +88 -0
- package/dist/custom-conversions-TV23XQHW.js +125 -0
- package/dist/customers-I2EHMEX3.js +56 -0
- package/dist/decide-EGQ3CRHI.js +199 -0
- package/dist/decide-EGQ3CRHI.js.map +1 -0
- package/dist/delete-A5NP6I7U.js +54 -0
- package/dist/delete-A5NP6I7U.js.map +1 -0
- package/dist/delete-MN6GZAZH.js +66 -0
- package/dist/delete-MN6GZAZH.js.map +1 -0
- package/dist/delete-MUPTLWHI.js +71 -0
- package/dist/delete-QMIJ5Z3V.js +63 -0
- package/dist/delete-QMIJ5Z3V.js.map +1 -0
- package/dist/delete-R2SEUSLV.js +69 -0
- package/dist/delete-ZGBBWFAW.js +71 -0
- package/dist/demographics-3DHCGMUR.js +138 -0
- package/dist/demographics-3DHCGMUR.js.map +1 -0
- package/dist/describe-4O3VCV6L.js +97 -0
- package/dist/describe-FCTM53MM.js +97 -0
- package/dist/dimensions-AD4VS5AH.js +101 -0
- package/dist/discard-7QUFDYVK.js +66 -0
- package/dist/discard-7QUFDYVK.js.map +1 -0
- package/dist/discover-6XSPNZYE.js +172 -0
- package/dist/discover-UQXQUPNO.js +93 -0
- package/dist/domain-NRPTYLT2.js +98 -0
- package/dist/domain-NRPTYLT2.js.map +1 -0
- package/dist/download-IE6XLFHM.js +299 -0
- package/dist/draft-24B2O3SG.js +217 -0
- package/dist/draft-24B2O3SG.js.map +1 -0
- package/dist/draft-ENA7S4Y7.js +103 -0
- package/dist/draft-FGPMNIZK.js +306 -0
- package/dist/draft-FGPMNIZK.js.map +1 -0
- package/dist/draft-MGKJ5RYI.js +100 -0
- package/dist/draft-PPRDQDGW.js +307 -0
- package/dist/draft-R5RZ72PS.js +328 -0
- package/dist/draft-R5RZ72PS.js.map +1 -0
- package/dist/draft-S6VPKZYY.js +233 -0
- package/dist/draft-VVDI2OR3.js +281 -0
- package/dist/engine/index.js +12 -13
- package/dist/env-YLOVBOAE.js +43 -0
- package/dist/experiment-PHFP6IBM.js +1397 -0
- package/dist/export-R2IMUCQO.js +168 -0
- package/dist/extract-OQP3TSQG.js +113 -0
- package/dist/facets-HFX6SZT6.js +114 -0
- package/dist/facets-HFX6SZT6.js.map +1 -0
- package/dist/favorites-NS73FDG5.js +178 -0
- package/dist/feed-SQPOB7SP.js +177 -0
- package/dist/feedback-XHSJBBEJ.js +66 -0
- package/dist/feedback-record-Z7Z4AW2L.js +175 -0
- package/dist/feedback-record-Z7Z4AW2L.js.map +1 -0
- package/dist/fetch-PQ3NOPIE.js +139 -0
- package/dist/fetch-TPRDJJGI.js +176 -0
- package/dist/fetch-TPRDJJGI.js.map +1 -0
- package/dist/find-Y22AANDE.js +134 -0
- package/dist/fit-XJPM6573.js +45 -0
- package/dist/flows-NF3IHOVV.js +247 -0
- package/dist/flows-NF3IHOVV.js.map +1 -0
- package/dist/follow-N3DQZV7M.js +94 -0
- package/dist/follow-competitors-BZPCBGIB.js +112 -0
- package/dist/following-KESWTEBR.js +113 -0
- package/dist/fonts-3FX3OYEQ.js +34 -0
- package/dist/forecast-CYSEUIS4.js +168 -0
- package/dist/forecast-MO4PAKTH.js +104 -0
- package/dist/forecast-MO4PAKTH.js.map +1 -0
- package/dist/funding-G6S4UVU5.js +85 -0
- package/dist/funnel-MM4AXAE7.js +394 -0
- package/dist/funnel-MM4AXAE7.js.map +1 -0
- package/dist/ga4-2QHOA4RO.js +55 -0
- package/dist/generate-F4FDRDAW.js +262 -0
- package/dist/get-3P2EQLP3.js +63 -0
- package/dist/get-FJB3X44Z.js +61 -0
- package/dist/get-HV2VIJYO.js +78 -0
- package/dist/get-HV2VIJYO.js.map +1 -0
- package/dist/get-LHL6CGOR.js +56 -0
- package/dist/get-LHL6CGOR.js.map +1 -0
- package/dist/get-MBGO4VJD.js +63 -0
- package/dist/get-NOKSZPIV.js +59 -0
- package/dist/get-WHC4SRYK.js +92 -0
- package/dist/gif-SFYVDLCU.js +94 -0
- package/dist/google-MY45TUC4.js +3190 -0
- package/dist/google-XRAMIES5.js +136 -0
- package/dist/google-ads-DMOYC7OY.js +195 -0
- package/dist/google-ads-DMOYC7OY.js.map +1 -0
- package/dist/group-6RDJTWVN.js +43 -0
- package/dist/group-TZJCKHKS.js +43 -0
- package/dist/gsc-HD6UFRYM.js +30 -0
- package/dist/history-2WBZRPPE.js +67 -0
- package/dist/history-PY5BYL7T.js +133 -0
- package/dist/history-PY5BYL7T.js.map +1 -0
- package/dist/hubspot-WQ6P3TZL.js +779 -0
- package/dist/hubspot-WQ6P3TZL.js.map +1 -0
- package/dist/icon-BMCDFGMN.js +137 -0
- package/dist/ideas-VLHUTFHP.js +32 -0
- package/dist/images-C4TBUPXM.js +90 -0
- package/dist/improve-P6F2HXYQ.js +86 -0
- package/dist/ingest-SXT33KE6.js +23 -0
- package/dist/ingest-V42IQ2FN.js +107 -0
- package/dist/ingest-V42IQ2FN.js.map +1 -0
- package/dist/insights-DI4W3D2Y.js +423 -0
- package/dist/insights-X75LRPS3.js +122 -0
- package/dist/inspect-YO5ER5OK.js +189 -0
- package/dist/inspect-YO5ER5OK.js.map +1 -0
- package/dist/inspiration-MDCCU2CF.js +53 -0
- package/dist/intent-A4SOIFKK.js +95 -0
- package/dist/job-QDLPQFIT.js +202 -0
- package/dist/job-create-6XKD5GEC.js +109 -0
- package/dist/job-status-MH7CGLWC.js +74 -0
- package/dist/keep-42SLV4CR.js +78 -0
- package/dist/keyword-gap-D4P2CC2L.js +130 -0
- package/dist/keyword-metrics-JLTZ4533.js +197 -0
- package/dist/keyword-metrics-JLTZ4533.js.map +1 -0
- package/dist/keywords-for-site-UCUPPHVX.js +128 -0
- package/dist/keywords-for-site-UCUPPHVX.js.map +1 -0
- package/dist/landing-JWD3U2K5.js +28 -0
- package/dist/landings-5IYXHA5Z.js +151 -0
- package/dist/languages-HX4FD3GX.js +40 -0
- package/dist/languages-SRFGW6Z3.js +55 -0
- package/dist/launches-7U4TPNO3.js +108 -0
- package/dist/layerize-U672AXED.js +190 -0
- package/dist/leads-MXUQISOC.js +293 -0
- package/dist/leads-WMKTJWW5.js +90 -0
- package/dist/leads-WMKTJWW5.js.map +1 -0
- package/dist/learn-C4AJ2JDS.js +203 -0
- package/dist/learn-C4AJ2JDS.js.map +1 -0
- package/dist/library-RPFXNER4.js +109 -0
- package/dist/lighthouse-SJ4QNLUS.js +75 -0
- package/dist/line-item-writes-N5XUSGEM.js +208 -0
- package/dist/line-item-writes-N5XUSGEM.js.map +1 -0
- package/dist/line-items-QIBNOEOH.js +103 -0
- package/dist/link-ZC6MH7AP.js +64 -0
- package/dist/link-ZC6MH7AP.js.map +1 -0
- package/dist/linkedin-MIEUUP4J.js +1008 -0
- package/dist/linkedin-MIEUUP4J.js.map +1 -0
- package/dist/list-GQ65MC2N.js +65 -0
- package/dist/list-HT4HZWF4.js +63 -0
- package/dist/list-HT4HZWF4.js.map +1 -0
- package/dist/list-K56J7FZW.js +51 -0
- package/dist/list-LLBBUXTM.js +151 -0
- package/dist/list-LLBBUXTM.js.map +1 -0
- package/dist/list-LYRCC67M.js +303 -0
- package/dist/list-LYRCC67M.js.map +1 -0
- package/dist/list-M4Z3WYPM.js +76 -0
- package/dist/list-SXYVDDMU.js +57 -0
- package/dist/list-XFIOXFB2.js +50 -0
- package/dist/locations-PQWB7EGC.js +40 -0
- package/dist/locations-WNSET6RM.js +67 -0
- package/dist/log-SXXIU7ZP.js +92 -0
- package/dist/log-SXXIU7ZP.js.map +1 -0
- package/dist/logo-4JOWGJ5A.js +18 -0
- package/dist/lookup-QGGSAHOO.js +22 -0
- package/dist/make-6OQBIYWC.js +633 -0
- package/dist/map-YMFE54VT.js +404 -0
- package/dist/map-YMFE54VT.js.map +1 -0
- package/dist/mcp-QAZ4XLMN.js +463 -0
- package/dist/mcp-QAZ4XLMN.js.map +1 -0
- package/dist/media-2SWDJDA6.js +15 -0
- package/dist/media-O5L7GO72.js +89 -0
- package/dist/media-sources-LF6I6AYP.js +32 -0
- package/dist/members-RGK6FRVY.js +44 -0
- package/dist/members-RGK6FRVY.js.map +1 -0
- package/dist/meta-37L6QBOZ.js +69 -0
- package/dist/metrics-WVG3IUMH.js +152 -0
- package/dist/models-5QWYGJ7Y.js +155 -0
- package/dist/normalize-5G6MMOAB.js +141 -0
- package/dist/normalize-5G6MMOAB.js.map +1 -0
- package/dist/normalize-P5Q3F7FU.js +806 -0
- package/dist/options-TYQL4KRW.js +121 -0
- package/dist/options-TYQL4KRW.js.map +1 -0
- package/dist/output-ZL62UZHQ.js +24 -0
- package/dist/page-FZ7IZ5CV.js +105 -0
- package/dist/pages-SS7TZTHV.js +66 -0
- package/dist/performance-2K425XAN.js +24 -0
- package/dist/pinterest-UETS7U7U.js +96 -0
- package/dist/pixels-D73GQFGM.js +60 -0
- package/dist/pixels-LCTMLKGP.js +108 -0
- package/dist/plan-4HLITU3A.js +207 -0
- package/dist/preview-RU54Z4EM.js +169 -0
- package/dist/profile-NQOIBLJL.js +150 -0
- package/dist/promoted-tweet-writes-YIZGFYZO.js +180 -0
- package/dist/promoted-tweet-writes-YIZGFYZO.js.map +1 -0
- package/dist/promoted-tweets-D5NKZ3FS.js +119 -0
- package/dist/properties-ZUDQH3LE.js +101 -0
- package/dist/publish-WDHGUTNP.js +322 -0
- package/dist/publish-WDHGUTNP.js.map +1 -0
- package/dist/query-26T7XATH.js +236 -0
- package/dist/query-IJVVSB54.js +61 -0
- package/dist/query-SHUOHXTO.js +247 -0
- package/dist/questionnaire-7AEVHZDR.js +93 -0
- package/dist/read-UYSQAXRV.js +141 -0
- package/dist/reddit-YBEYPDZP.js +26 -0
- package/dist/refresh-NKBJT47F.js +94 -0
- package/dist/refresh-NKBJT47F.js.map +1 -0
- package/dist/release-4UPLYFTE.js +60 -0
- package/dist/release-4UPLYFTE.js.map +1 -0
- package/dist/relevant-pages-OI7GTPOK.js +99 -0
- package/dist/remove-2KACTXKP.js +48 -0
- package/dist/remove-HEL2YO3Q.js +50 -0
- package/dist/remove-HEL2YO3Q.js.map +1 -0
- package/dist/reopen-3RWFCQU2.js +63 -0
- package/dist/reopen-3RWFCQU2.js.map +1 -0
- package/dist/rerun-LM52CBPS.js +84 -0
- package/dist/research-547KDC54.js +62 -0
- package/dist/research-VW37GQ5K.js +262 -0
- package/dist/research-VW37GQ5K.js.map +1 -0
- package/dist/reset-LHQJDSVK.js +54 -0
- package/dist/reset-LHQJDSVK.js.map +1 -0
- package/dist/reset-OIRUQHMS.js +54 -0
- package/dist/reset-OIRUQHMS.js.map +1 -0
- package/dist/resolve-2N35OI2Y.js +121 -0
- package/dist/resolve-2N35OI2Y.js.map +1 -0
- package/dist/retry-EZRMUB4I.js +62 -0
- package/dist/retry-EZRMUB4I.js.map +1 -0
- package/dist/retry-GXH7SCNK.js +60 -0
- package/dist/retry-GXH7SCNK.js.map +1 -0
- package/dist/retry-failed-NWLH6WHK.js +45 -0
- package/dist/run-DWR24LCU.js +65 -0
- package/dist/run-DWR24LCU.js.map +1 -0
- package/dist/run-PLUL33QX.js +59 -0
- package/dist/scaffold-ad-W4RZXLDX.js +1548 -0
- package/dist/scaffold-static-ad-IPJYRAOT.js +971 -0
- package/dist/scaffold-video-XBII4YLS.js +872 -0
- package/dist/schedule-QZPDYWHK.js +61 -0
- package/dist/schedule-QZPDYWHK.js.map +1 -0
- package/dist/schedule-S547HPUT.js +66 -0
- package/dist/scheduled-agents-DWSVPMZP.js +49 -0
- package/dist/schema-O4JTYZEY.js +132 -0
- package/dist/schema-O4JTYZEY.js.map +1 -0
- package/dist/schema-SQIP75WG.js +63 -0
- package/dist/scrape-TI6S2W7I.js +2241 -0
- package/dist/screenshot-XFAYY4WW.js +102 -0
- package/dist/search-4HIOKYFR.js +26 -0
- package/dist/search-D2IV7KFJ.js +92 -0
- package/dist/search-IZPDHRJ4.js +224 -0
- package/dist/search-KFDL2IGG.js +91 -0
- package/dist/search-L3RYKE3G.js +174 -0
- package/dist/search-L3RYKE3G.js.map +1 -0
- package/dist/search-copy-QZXCAGK4.js +168 -0
- package/dist/seeds-VUNZMHZH.js +101 -0
- package/dist/select-IAHFSSDX.js +94 -0
- package/dist/select-IAHFSSDX.js.map +1 -0
- package/dist/sends-UT4WXVOS.js +309 -0
- package/dist/sequences-5RAGZE7L.js +146 -0
- package/dist/set-prompt-WVQ4AI66.js +185 -0
- package/dist/setup-links-DFGWE4CV.js +141 -0
- package/dist/setup-links-DFGWE4CV.js.map +1 -0
- package/dist/shared-3CGGKICB.js +31 -0
- package/dist/site-4XF273BE.js +177 -0
- package/dist/site-4XF273BE.js.map +1 -0
- package/dist/sitemaps-3WDYQHYR.js +87 -0
- package/dist/sites-G4DQ2Z2X.js +101 -0
- package/dist/skills-PA26HXEP.js +47 -0
- package/dist/sources-M46IYW42.js +421 -0
- package/dist/sources-M46IYW42.js.map +1 -0
- package/dist/sources-PZXOSE4S.js +30 -0
- package/dist/stale-M64FB7J3.js +63 -0
- package/dist/stale-M64FB7J3.js.map +1 -0
- package/dist/stats-6DPPYSP3.js +34 -0
- package/dist/status-C6UZ45WO.js +62 -0
- package/dist/status-C6UZ45WO.js.map +1 -0
- package/dist/sticker-MC2IAIQB.js +94 -0
- package/dist/stock-B7LKMKUK.js +179 -0
- package/dist/studio-EQ2L6OBJ.js +49 -0
- package/dist/sync-CLZDZL5F.js +54 -0
- package/dist/sync-V26UBMAN.js +265 -0
- package/dist/sync-VYOJ7G6S.js +54 -0
- package/dist/sync-VYOJ7G6S.js.map +1 -0
- package/dist/sync-definition-2SGGHSKR.js +52 -0
- package/dist/tag-manager-KIHXVFMF.js +43 -0
- package/dist/tags-6RGJF4GS.js +20 -0
- package/dist/tags-6RGJF4GS.js.map +1 -0
- package/dist/tags-FGCZJZWK.js +20 -0
- package/dist/tags-FGCZJZWK.js.map +1 -0
- package/dist/tags-JN475JPP.js +26 -0
- package/dist/tags-ODT4WI57.js +20 -0
- package/dist/tags-ODT4WI57.js.map +1 -0
- package/dist/tags-SURC65KF.js +224 -0
- package/dist/tags-SURC65KF.js.map +1 -0
- package/dist/targeting-constants-6Y5J2PPZ.js +118 -0
- package/dist/targeting-criteria-NMZD3CK6.js +113 -0
- package/dist/targets-L4M53NRI.js +102 -0
- package/dist/targets-L4M53NRI.js.map +1 -0
- package/dist/templates-5AC4336C.js +178 -0
- package/dist/templates-5AC4336C.js.map +1 -0
- package/dist/testimonials-YN2AB7U7.js +32 -0
- package/dist/themes-BYRMCXYR.js +94 -0
- package/dist/top-companies-X75ZLN4Y.js +108 -0
- package/dist/top-companies-X75ZLN4Y.js.map +1 -0
- package/dist/translate-YPVSDMH6.js +598 -0
- package/dist/translate-YPVSDMH6.js.map +1 -0
- package/dist/triggers-GBKVEQZF.js +141 -0
- package/dist/triggers-GBKVEQZF.js.map +1 -0
- package/dist/tweets-KTM7HX5R.js +123 -0
- package/dist/unfollow-WBBTVEHE.js +46 -0
- package/dist/unlink-ORHXBQKH.js +67 -0
- package/dist/unlink-ORHXBQKH.js.map +1 -0
- package/dist/unstage-2R23KGQG.js +84 -0
- package/dist/unstage-2R23KGQG.js.map +1 -0
- package/dist/unstage-GYBJZWCZ.js +95 -0
- package/dist/update-2VOYUTLV.js +155 -0
- package/dist/update-2VOYUTLV.js.map +1 -0
- package/dist/update-JTFWVXRB.js +142 -0
- package/dist/update-JTFWVXRB.js.map +1 -0
- package/dist/update-VKPYJXNK.js +63 -0
- package/dist/update-VKPYJXNK.js.map +1 -0
- package/dist/update-YTDA3XJ3.js +98 -0
- package/dist/update-YTDA3XJ3.js.map +1 -0
- package/dist/upload-NA62W5RS.js +150 -0
- package/dist/upload-V42RNE7Q.js +126 -0
- package/dist/upload-V42RNE7Q.js.map +1 -0
- package/dist/upscale-RXJUBHXN.js +109 -0
- package/dist/url-options-LZIHCPP4.js +130 -0
- package/dist/url-params-5SRJGPT6.js +98 -0
- package/dist/url-params-5SRJGPT6.js.map +1 -0
- package/dist/use-MHPNS4V4.js +95 -0
- package/dist/validate-IIOV3YJK.js +88 -0
- package/dist/variant-ZFCWILPG.js +338 -0
- package/dist/videos-MIHTMO3G.js +39 -0
- package/dist/view-PYCGDGT2.js +121 -0
- package/dist/viewer-check-65TIGVAJ.js +68 -0
- package/dist/web-2ACSE34L.js +140 -0
- package/dist/web-2ACSE34L.js.map +1 -0
- package/dist/winners-AI4PVSOI.js +113 -0
- package/dist/winning-ads-2ZOUOAYM.js +84 -0
- package/dist/winning-ads-2ZOUOAYM.js.map +1 -0
- package/dist/write-commands-34L5LJIB.js +713 -0
- package/dist/write-commands-5TJ3LQ5F.js +737 -0
- package/dist/write-commands-GLIDTGI3.js +1015 -0
- package/dist/write-commands-GLIDTGI3.js.map +1 -0
- package/dist/write-commands-R3UCCBUI.js +206 -0
- package/dist/x-V7V47E4N.js +47 -0
- package/package.json +1 -1
- package/dist/account-EVSPW2NO.js +0 -78
- package/dist/account-EVSPW2NO.js.map +0 -1
- package/dist/account-NN54QFVE.js +0 -80
- package/dist/account-W3YGN5RU.js +0 -49
- package/dist/account-reads-3UBDY7R4.js +0 -218
- package/dist/account-writes-M35QGN3H.js +0 -66
- package/dist/accounts-7X62JNDG.js +0 -115
- package/dist/accounts-IUV2RDXE.js +0 -75
- package/dist/accounts-MYN4PSB5.js +0 -610
- package/dist/accounts-MYN4PSB5.js.map +0 -1
- package/dist/accounts-NSJGNWOW.js +0 -76
- package/dist/accounts-NSJGNWOW.js.map +0 -1
- package/dist/accounts-RKAIEZ3N.js +0 -114
- package/dist/actions-R64YNGQ6.js +0 -55
- package/dist/active-entities-O2NQ6ME7.js +0 -103
- package/dist/activities-LAPEEDLI.js +0 -74
- package/dist/ad-group-writes-W757O2JA.js +0 -170
- package/dist/ad-groups-VPUTJHQ6.js +0 -68
- package/dist/ad-writes-6O7ZPQB6.js +0 -174
- package/dist/add-73WQXNDK.js +0 -301
- package/dist/add-73WQXNDK.js.map +0 -1
- package/dist/add-B5PDUYPI.js +0 -97
- package/dist/add-K54IJOCB.js +0 -103
- package/dist/add-K54IJOCB.js.map +0 -1
- package/dist/add-ZLVF72VE.js +0 -105
- package/dist/add-accounts-JJCODXBQ.js +0 -91
- package/dist/ads-3HJPFZEV.js +0 -40
- package/dist/ads-63MVBIHB.js +0 -113
- package/dist/ads-JUCDJ5ZC.js +0 -128
- package/dist/ads-KCELHZAZ.js +0 -77
- package/dist/adsets-Z43O26IR.js +0 -176
- package/dist/advertisers-IANKSIDM.js +0 -125
- package/dist/advertisers-ZGFQ3T3W.js +0 -119
- package/dist/advertisers-ZGFQ3T3W.js.map +0 -1
- package/dist/analytics-KRWVFOBE.js +0 -432
- package/dist/analytics-KRWVFOBE.js.map +0 -1
- package/dist/analytics-VVLCX7LM.js +0 -1975
- package/dist/analytics-VVLCX7LM.js.map +0 -1
- package/dist/animate-CUJNLMHT.js +0 -480
- package/dist/assign-X5DTLHIV.js +0 -76
- package/dist/assign-X5DTLHIV.js.map +0 -1
- package/dist/audience-size-PQA3NQZK.js +0 -93
- package/dist/audience-size-PQA3NQZK.js.map +0 -1
- package/dist/audiences-PLTZX3EZ.js +0 -85
- package/dist/audiences-QXQJWDVX.js +0 -78
- package/dist/audiences-YZKSBJKA.js +0 -268
- package/dist/audit-IBY6D6U3.js +0 -150
- package/dist/audit-IBY6D6U3.js.map +0 -1
- package/dist/audit-VBRVGMF2.js +0 -88
- package/dist/autocomplete-YA2DS6YM.js +0 -110
- package/dist/autocomplete-YA2DS6YM.js.map +0 -1
- package/dist/avatars-IXEYEQZD.js +0 -38
- package/dist/bid-pricing-OXIRMCY4.js +0 -98
- package/dist/bid-pricing-OXIRMCY4.js.map +0 -1
- package/dist/brand-EUGPDVYQ.js +0 -22
- package/dist/brief-GGR3JRG3.js +0 -490
- package/dist/businesses-3HJBLPMC.js +0 -53
- package/dist/campaign-groups-EPT7UL24.js +0 -94
- package/dist/campaign-groups-EPT7UL24.js.map +0 -1
- package/dist/campaign-writes-34CK5DDY.js +0 -170
- package/dist/campaign-writes-HJBJUF4F.js +0 -164
- package/dist/campaign-writes-HJBJUF4F.js.map +0 -1
- package/dist/campaigns-2SNG6SBB.js +0 -110
- package/dist/campaigns-CSEWMSLB.js +0 -108
- package/dist/campaigns-CSEWMSLB.js.map +0 -1
- package/dist/campaigns-M652OGDL.js +0 -76
- package/dist/campaigns-W7IOUU6R.js +0 -107
- package/dist/canvas-UGXQ2OUR.js +0 -46
- package/dist/canvas-UGXQ2OUR.js.map +0 -1
- package/dist/capabilities-OGOB267O.js +0 -143
- package/dist/capabilities-OGOB267O.js.map +0 -1
- package/dist/cards-RB4IQP3D.js +0 -85
- package/dist/catalog-6GXTR7XW.js +0 -65
- package/dist/catalog-6GXTR7XW.js.map +0 -1
- package/dist/catalogs-WKOWOYE6.js +0 -128
- package/dist/changes-UU3FWB63.js +0 -135
- package/dist/chatgpt-AGS322BK.js +0 -47
- package/dist/chats-TWFWA5WN.js +0 -261
- package/dist/chats-TWFWA5WN.js.map +0 -1
- package/dist/chunk-22IO6KYA.js +0 -19
- package/dist/chunk-2XJDWQE6.js +0 -6667
- package/dist/chunk-3BNFG5IH.js +0 -60
- package/dist/chunk-3JER367J.js +0 -46
- package/dist/chunk-3QDGEASC.js +0 -67
- package/dist/chunk-3QLACKNX.js +0 -310
- package/dist/chunk-4EGXTLKD.js +0 -23
- package/dist/chunk-4TOE7NXN.js +0 -188
- package/dist/chunk-4XVVTERH.js +0 -149
- package/dist/chunk-5LHDRP5F.js +0 -166
- package/dist/chunk-5PFKCXTT.js +0 -42
- package/dist/chunk-5W3GSAPI.js +0 -169
- package/dist/chunk-5ZYR2ZDH.js +0 -92
- package/dist/chunk-65VDFALQ.js +0 -846
- package/dist/chunk-6ZCYWVKZ.js +0 -486
- package/dist/chunk-7DIIZUZO.js +0 -454
- package/dist/chunk-7DIIZUZO.js.map +0 -1
- package/dist/chunk-7FCNHAAZ.js +0 -592
- package/dist/chunk-7KSJUVNK.js +0 -346
- package/dist/chunk-7LWVWFIV.js +0 -215
- package/dist/chunk-7LWVWFIV.js.map +0 -1
- package/dist/chunk-7V2FDO3O.js +0 -56
- package/dist/chunk-7YRESXIS.js +0 -125
- package/dist/chunk-ANAJIYDY.js +0 -296
- package/dist/chunk-AVMJDODA.js +0 -98
- package/dist/chunk-BXDWSA2Q.js +0 -191
- package/dist/chunk-C26QSQXP.js +0 -57
- package/dist/chunk-DJV7NHSB.js +0 -3153
- package/dist/chunk-DJV7NHSB.js.map +0 -1
- package/dist/chunk-DWUBZGYX.js +0 -541
- package/dist/chunk-DZD3XEBO.js +0 -84
- package/dist/chunk-EXSVOUU4.js +0 -174
- package/dist/chunk-FPUVMFR6.js +0 -1830
- package/dist/chunk-FXNJMN76.js +0 -160
- package/dist/chunk-G54P65K2.js +0 -76
- package/dist/chunk-GEMBH2HB.js +0 -106
- package/dist/chunk-GF5SLKYH.js +0 -55
- package/dist/chunk-GHIV4TYN.js +0 -494
- package/dist/chunk-GWKYXBZV.js +0 -1711
- package/dist/chunk-GWKYXBZV.js.map +0 -1
- package/dist/chunk-HHLEPWHB.js +0 -433
- package/dist/chunk-IKQE6HHT.js +0 -136
- package/dist/chunk-INMTAPMV.js +0 -74
- package/dist/chunk-IPQ533MQ.js +0 -622
- package/dist/chunk-ISC7J3F2.js +0 -31
- package/dist/chunk-ISC7J3F2.js.map +0 -1
- package/dist/chunk-JAEVTZ6J.js +0 -197
- package/dist/chunk-JM6XT33N.js +0 -1079
- package/dist/chunk-JM6XT33N.js.map +0 -1
- package/dist/chunk-JQH5YQOD.js +0 -337
- package/dist/chunk-KREO4YIC.js +0 -76
- package/dist/chunk-KW6VVXDJ.js +0 -23992
- package/dist/chunk-L7OTZTWV.js +0 -35
- package/dist/chunk-LUQM6DFI.js +0 -133
- package/dist/chunk-LW7OGQOG.js +0 -274
- package/dist/chunk-MLBXDAHX.js +0 -455
- package/dist/chunk-MZ7AEXVL.js +0 -74
- package/dist/chunk-NDEACMK4.js +0 -665
- package/dist/chunk-NDVUUGKL.js +0 -304
- package/dist/chunk-NH7FE2DD.js +0 -5189
- package/dist/chunk-NH7FE2DD.js.map +0 -1
- package/dist/chunk-NRWU674J.js +0 -139
- package/dist/chunk-O47IL4FE.js +0 -26
- package/dist/chunk-OEWBWKDE.js +0 -175
- package/dist/chunk-ON4ITQ3U.js +0 -111
- package/dist/chunk-PAE5XKKY.js +0 -97
- package/dist/chunk-PBHQPJZG.js +0 -474
- package/dist/chunk-PGZ4EHAA.js +0 -610
- package/dist/chunk-PJFGOJGF.js +0 -74
- package/dist/chunk-Q4BQ4OQK.js +0 -207
- package/dist/chunk-QI42BRSW.js +0 -333
- package/dist/chunk-QL57CR4R.js +0 -275
- package/dist/chunk-QMJ22KGU.js +0 -363
- package/dist/chunk-QRQ3LNSX.js +0 -297
- package/dist/chunk-QTYQPOGZ.js +0 -25
- package/dist/chunk-RIYI4BBQ.js +0 -94
- package/dist/chunk-RKOFMNU6.js +0 -819
- package/dist/chunk-RKOFMNU6.js.map +0 -1
- package/dist/chunk-S6JDX5NI.js +0 -103
- package/dist/chunk-S7HMUFO3.js +0 -65
- package/dist/chunk-SHVQFDNY.js +0 -2057
- package/dist/chunk-SHVQFDNY.js.map +0 -1
- package/dist/chunk-SPJJVPPV.js +0 -66
- package/dist/chunk-T2MH5SCT.js +0 -214
- package/dist/chunk-T2MH5SCT.js.map +0 -1
- package/dist/chunk-T4RQKMGO.js +0 -45
- package/dist/chunk-TC3SJU2O.js +0 -509
- package/dist/chunk-U3CTJ2SE.js +0 -172
- package/dist/chunk-U7DPRTS4.js +0 -382
- package/dist/chunk-UC4C6JUW.js +0 -1442
- package/dist/chunk-UQ6DXUOQ.js +0 -533
- package/dist/chunk-UU67QDR7.js +0 -58
- package/dist/chunk-UVVY55HY.js +0 -75
- package/dist/chunk-VAX5ITZ5.js +0 -309
- package/dist/chunk-W2PXP333.js +0 -1599
- package/dist/chunk-WHA3DDV6.js +0 -96
- package/dist/chunk-WY6PPZO4.js +0 -172
- package/dist/chunk-X7ZODEXJ.js +0 -36
- package/dist/chunk-X7ZODEXJ.js.map +0 -1
- package/dist/chunk-XD7F3BSP.js +0 -51
- package/dist/chunk-XPFQ3RSQ.js +0 -84
- package/dist/chunk-XX5DXKEI.js +0 -206
- package/dist/chunk-YDO5NMF3.js +0 -96
- package/dist/chunk-YHXACQKB.js +0 -4410
- package/dist/chunk-YOFHPTWU.js +0 -136
- package/dist/chunk-YSSW437J.js +0 -225
- package/dist/chunk-YX74KMNK.js +0 -106
- package/dist/chunk-ZBWUDJUC.js +0 -98
- package/dist/chunk-ZJVHZHYP.js +0 -6188
- package/dist/chunk-ZQKJIWDS.js +0 -159
- package/dist/claim-OEDHDWP2.js +0 -196
- package/dist/claim-OEDHDWP2.js.map +0 -1
- package/dist/client-P7OREXNC.js +0 -19
- package/dist/code-PRV5LVMQ.js +0 -76
- package/dist/companies-EPGH7WDU.js +0 -194
- package/dist/companies-EPGH7WDU.js.map +0 -1
- package/dist/complete-OB6F2GDY.js +0 -80
- package/dist/complete-OB6F2GDY.js.map +0 -1
- package/dist/config-Y644DINP.js +0 -88
- package/dist/connect-DGTD2N25.js +0 -41
- package/dist/content-TALOFHDP.js +0 -85
- package/dist/conversation-TKNFW3UK.js +0 -92
- package/dist/conversation-TKNFW3UK.js.map +0 -1
- package/dist/conversion-report-QZU2PAQN.js +0 -125
- package/dist/conversion-upload-command-A5X42QDR.js +0 -438
- package/dist/conversion-writes-NSAEZNCR.js +0 -120
- package/dist/conversions-OOWE5O3I.js +0 -134
- package/dist/conversions-OOWE5O3I.js.map +0 -1
- package/dist/conversions-QVNRC7CU.js +0 -76
- package/dist/countries-2I6VNSVR.js +0 -82
- package/dist/create-6BWXUH4T.js +0 -206
- package/dist/create-6BWXUH4T.js.map +0 -1
- package/dist/create-7PBP2D5I.js +0 -234
- package/dist/create-7PBP2D5I.js.map +0 -1
- package/dist/create-JAZ7UYPQ.js +0 -58
- package/dist/create-JAZ7UYPQ.js.map +0 -1
- package/dist/create-KFVDKOPX.js +0 -129
- package/dist/create-KFVDKOPX.js.map +0 -1
- package/dist/creatives-CYKVB3ZK.js +0 -181
- package/dist/creatives-CYKVB3ZK.js.map +0 -1
- package/dist/creatives-JBHNQEH4.js +0 -51
- package/dist/creatives-KNQHWJFJ.js +0 -87
- package/dist/credentials-JD7367HY.js +0 -286
- package/dist/credentials-JD7367HY.js.map +0 -1
- package/dist/critique-234EJDWZ.js +0 -1448
- package/dist/critique-234EJDWZ.js.map +0 -1
- package/dist/critique-JPUJSS3Z.js +0 -212
- package/dist/critique-JPUJSS3Z.js.map +0 -1
- package/dist/crm-AFK6H2PB.js +0 -223
- package/dist/crm-AFK6H2PB.js.map +0 -1
- package/dist/crm-SHU2VNHK.js +0 -317
- package/dist/crm-SHU2VNHK.js.map +0 -1
- package/dist/crop-4ANU2DAZ.js +0 -113
- package/dist/currency-Q7QTY444.js +0 -88
- package/dist/custom-conversions-PAH42DOH.js +0 -125
- package/dist/customers-AWIDLQKG.js +0 -55
- package/dist/delete-DEZGXUCQ.js +0 -69
- package/dist/delete-GDYLLHYS.js +0 -53
- package/dist/delete-GDYLLHYS.js.map +0 -1
- package/dist/delete-OMHFV5PL.js +0 -71
- package/dist/delete-PKWPIXF6.js +0 -62
- package/dist/delete-PKWPIXF6.js.map +0 -1
- package/dist/delete-XABKZH7Z.js +0 -71
- package/dist/delete-Y27LLJRB.js +0 -65
- package/dist/delete-Y27LLJRB.js.map +0 -1
- package/dist/demographics-6UIWUTUD.js +0 -137
- package/dist/demographics-6UIWUTUD.js.map +0 -1
- package/dist/describe-EKDSVBFK.js +0 -97
- package/dist/describe-LK3XJEXX.js +0 -97
- package/dist/dimensions-NKLUJ4I7.js +0 -101
- package/dist/discard-ZOIHZ6LZ.js +0 -65
- package/dist/discard-ZOIHZ6LZ.js.map +0 -1
- package/dist/discover-NZ4L2FAB.js +0 -93
- package/dist/discover-S24Q43VD.js +0 -172
- package/dist/domain-FSFPQHVD.js +0 -97
- package/dist/domain-FSFPQHVD.js.map +0 -1
- package/dist/download-27QM2APL.js +0 -299
- package/dist/draft-3H5DWKCM.js +0 -233
- package/dist/draft-6KLOODXX.js +0 -216
- package/dist/draft-6KLOODXX.js.map +0 -1
- package/dist/draft-JZ26MIHK.js +0 -307
- package/dist/draft-KI2HEV22.js +0 -281
- package/dist/draft-LINEUQZE.js +0 -100
- package/dist/draft-QBYS4BEE.js +0 -327
- package/dist/draft-QBYS4BEE.js.map +0 -1
- package/dist/draft-UYZXKTVR.js +0 -103
- package/dist/draft-ZS5YYGLD.js +0 -305
- package/dist/draft-ZS5YYGLD.js.map +0 -1
- package/dist/env-5OVWQ4KR.js +0 -43
- package/dist/experiment-ZY6GKKFO.js +0 -1397
- package/dist/export-EM7PJUWD.js +0 -168
- package/dist/extract-QFCDAP24.js +0 -113
- package/dist/facets-ZDSC4YPY.js +0 -113
- package/dist/facets-ZDSC4YPY.js.map +0 -1
- package/dist/favorites-A5EKOJRD.js +0 -178
- package/dist/feed-WPL7WCH7.js +0 -177
- package/dist/feedback-FOZ6M7LL.js +0 -66
- package/dist/feedback-record-4QSC2MV2.js +0 -174
- package/dist/feedback-record-4QSC2MV2.js.map +0 -1
- package/dist/fetch-2S2HM7NY.js +0 -175
- package/dist/fetch-2S2HM7NY.js.map +0 -1
- package/dist/fetch-CLHL6XXD.js +0 -139
- package/dist/find-WP6D3QCM.js +0 -134
- package/dist/fit-QOQ2KMBY.js +0 -45
- package/dist/flows-EF3WRATZ.js +0 -246
- package/dist/flows-EF3WRATZ.js.map +0 -1
- package/dist/follow-LA35GI4S.js +0 -94
- package/dist/follow-competitors-N6IUS5NO.js +0 -112
- package/dist/following-XCHW4KIF.js +0 -113
- package/dist/fonts-SKUCXIJM.js +0 -33
- package/dist/forecast-6KWNTFIO.js +0 -168
- package/dist/forecast-XAAUSN5P.js +0 -103
- package/dist/forecast-XAAUSN5P.js.map +0 -1
- package/dist/funding-M2UCPM6X.js +0 -85
- package/dist/funnel-DJGSPOR3.js +0 -393
- package/dist/funnel-DJGSPOR3.js.map +0 -1
- package/dist/ga4-QYCDH25I.js +0 -55
- package/dist/generate-OITIKU7P.js +0 -262
- package/dist/get-2FYPCEQK.js +0 -63
- package/dist/get-DKTWEZUI.js +0 -55
- package/dist/get-DKTWEZUI.js.map +0 -1
- package/dist/get-FNVMXQP3.js +0 -59
- package/dist/get-HS2ACWTQ.js +0 -92
- package/dist/get-SQESAJ4Z.js +0 -61
- package/dist/get-WVNYQQRG.js +0 -77
- package/dist/get-WVNYQQRG.js.map +0 -1
- package/dist/get-YDIJZRT3.js +0 -63
- package/dist/gif-S5EOHDRF.js +0 -94
- package/dist/google-C6U5YMTM.js +0 -136
- package/dist/google-KPER3UKQ.js +0 -3190
- package/dist/google-ads-EYEHCGFP.js +0 -194
- package/dist/google-ads-EYEHCGFP.js.map +0 -1
- package/dist/group-22AAKFSB.js +0 -43
- package/dist/group-V5VAZVOY.js +0 -43
- package/dist/gsc-AC23WZU4.js +0 -30
- package/dist/history-54PMYEOE.js +0 -132
- package/dist/history-54PMYEOE.js.map +0 -1
- package/dist/history-CJCMB2KQ.js +0 -67
- package/dist/hubspot-V3Q7TWB5.js +0 -778
- package/dist/hubspot-V3Q7TWB5.js.map +0 -1
- package/dist/icon-U4RUUEP5.js +0 -137
- package/dist/ideas-J6AJYFTI.js +0 -31
- package/dist/images-BFL4OXSL.js +0 -90
- package/dist/improve-A5UIOZOB.js +0 -86
- package/dist/ingest-JWLERIDM.js +0 -106
- package/dist/ingest-JWLERIDM.js.map +0 -1
- package/dist/ingest-RAWSXS4T.js +0 -22
- package/dist/insights-4DMLJZEE.js +0 -122
- package/dist/insights-GKGZJMAB.js +0 -423
- package/dist/inspect-MZTZ2K4G.js +0 -188
- package/dist/inspect-MZTZ2K4G.js.map +0 -1
- package/dist/inspiration-XCBXTDB6.js +0 -53
- package/dist/intent-TZD4G3JE.js +0 -95
- package/dist/job-63B2WPM2.js +0 -202
- package/dist/job-create-5PZ256PD.js +0 -109
- package/dist/job-status-H5WXV55V.js +0 -74
- package/dist/keep-HGLSG6CJ.js +0 -78
- package/dist/keyword-gap-5H6LPS7Y.js +0 -130
- package/dist/keyword-metrics-IH4FCU7C.js +0 -196
- package/dist/keyword-metrics-IH4FCU7C.js.map +0 -1
- package/dist/keywords-for-site-MDBTGZUE.js +0 -127
- package/dist/keywords-for-site-MDBTGZUE.js.map +0 -1
- package/dist/landing-YYBDXADL.js +0 -28
- package/dist/landings-LUW24CTP.js +0 -151
- package/dist/languages-7X5PROWY.js +0 -55
- package/dist/languages-Q7NLDV5C.js +0 -40
- package/dist/launches-HXMKMYJX.js +0 -108
- package/dist/layerize-SYLRTQ3A.js +0 -190
- package/dist/leads-RQG6LB7K.js +0 -293
- package/dist/leads-SDQBAGZX.js +0 -89
- package/dist/leads-SDQBAGZX.js.map +0 -1
- package/dist/learn-BKMNJ4RL.js +0 -202
- package/dist/learn-BKMNJ4RL.js.map +0 -1
- package/dist/library-PIIT56GK.js +0 -109
- package/dist/lighthouse-ASYAZ4YL.js +0 -75
- package/dist/line-item-writes-IIAXRUEP.js +0 -207
- package/dist/line-item-writes-IIAXRUEP.js.map +0 -1
- package/dist/line-items-IKBF3UU2.js +0 -103
- package/dist/link-6W5LKLN6.js +0 -63
- package/dist/link-6W5LKLN6.js.map +0 -1
- package/dist/linkedin-BJSJRWXC.js +0 -1007
- package/dist/linkedin-BJSJRWXC.js.map +0 -1
- package/dist/list-AHBRL6CF.js +0 -51
- package/dist/list-CO3EEAZK.js +0 -302
- package/dist/list-CO3EEAZK.js.map +0 -1
- package/dist/list-GW3LWBP2.js +0 -57
- package/dist/list-IDWGB4X3.js +0 -62
- package/dist/list-IDWGB4X3.js.map +0 -1
- package/dist/list-IZUXVPNL.js +0 -150
- package/dist/list-IZUXVPNL.js.map +0 -1
- package/dist/list-LQZDHNG3.js +0 -50
- package/dist/list-TSTTP5AF.js +0 -65
- package/dist/list-U46RRB5O.js +0 -76
- package/dist/locations-PQLM4426.js +0 -40
- package/dist/locations-VBHVPYER.js +0 -67
- package/dist/log-3MBBTTPW.js +0 -91
- package/dist/log-3MBBTTPW.js.map +0 -1
- package/dist/logo-YF46CHZO.js +0 -18
- package/dist/lookup-SOGUDT5P.js +0 -22
- package/dist/make-UOAOMFT3.js +0 -633
- package/dist/map-4QGLZFBQ.js +0 -403
- package/dist/map-4QGLZFBQ.js.map +0 -1
- package/dist/mcp-AYTX4TDA.js +0 -462
- package/dist/mcp-AYTX4TDA.js.map +0 -1
- package/dist/media-HX3X5ZW7.js +0 -89
- package/dist/media-VGJYSC4H.js +0 -15
- package/dist/media-sources-ESNG2EUR.js +0 -32
- package/dist/members-GSAI5DKT.js +0 -43
- package/dist/members-GSAI5DKT.js.map +0 -1
- package/dist/meta-BMUEM3KS.js +0 -69
- package/dist/metrics-N7SG5ME6.js +0 -152
- package/dist/models-DKTFCIPI.js +0 -155
- package/dist/normalize-2YBSAX54.js +0 -140
- package/dist/normalize-2YBSAX54.js.map +0 -1
- package/dist/normalize-E75DZCVO.js +0 -806
- package/dist/options-JF627M4S.js +0 -120
- package/dist/options-JF627M4S.js.map +0 -1
- package/dist/output-VNUB3ZDU.js +0 -24
- package/dist/page-T5GQ74JQ.js +0 -105
- package/dist/pages-Y6GD5TNO.js +0 -66
- package/dist/performance-VP7LFTOX.js +0 -23
- package/dist/pinterest-IO4HREWY.js +0 -96
- package/dist/pixels-QM3COIKE.js +0 -108
- package/dist/pixels-WWIVBVBD.js +0 -60
- package/dist/plan-M2L7MJEQ.js +0 -207
- package/dist/preview-VFM2WX4B.js +0 -169
- package/dist/profile-35CJMR2D.js +0 -150
- package/dist/promoted-tweet-writes-BGH7YQD3.js +0 -179
- package/dist/promoted-tweet-writes-BGH7YQD3.js.map +0 -1
- package/dist/promoted-tweets-AX3RBOMH.js +0 -119
- package/dist/properties-YPRTWLT3.js +0 -101
- package/dist/publish-QLTJ7MWQ.js +0 -321
- package/dist/publish-QLTJ7MWQ.js.map +0 -1
- package/dist/query-APOXSSD6.js +0 -236
- package/dist/query-IBHH6WZX.js +0 -247
- package/dist/query-SDOGFOUT.js +0 -61
- package/dist/questionnaire-DKZNPZMI.js +0 -93
- package/dist/read-LVAHQREC.js +0 -141
- package/dist/reddit-7KE75WNK.js +0 -25
- package/dist/refresh-U2HT4J6D.js +0 -93
- package/dist/refresh-U2HT4J6D.js.map +0 -1
- package/dist/release-YEI5C7QA.js +0 -59
- package/dist/release-YEI5C7QA.js.map +0 -1
- package/dist/relevant-pages-I3JY3IJV.js +0 -99
- package/dist/remove-4T4MG4EM.js +0 -49
- package/dist/remove-4T4MG4EM.js.map +0 -1
- package/dist/remove-QPYAI6UW.js +0 -48
- package/dist/reopen-RDQKY3A2.js +0 -62
- package/dist/reopen-RDQKY3A2.js.map +0 -1
- package/dist/rerun-SBUXP6SE.js +0 -84
- package/dist/research-GJW3K4PY.js +0 -62
- package/dist/research-QXX7N2AG.js +0 -261
- package/dist/research-QXX7N2AG.js.map +0 -1
- package/dist/reset-Q7DXAOPP.js +0 -53
- package/dist/reset-Q7DXAOPP.js.map +0 -1
- package/dist/reset-YES7QBG5.js +0 -53
- package/dist/reset-YES7QBG5.js.map +0 -1
- package/dist/resolve-XCJBMS7K.js +0 -120
- package/dist/resolve-XCJBMS7K.js.map +0 -1
- package/dist/retry-N5BAWMOX.js +0 -61
- package/dist/retry-N5BAWMOX.js.map +0 -1
- package/dist/retry-WUCEB7VA.js +0 -59
- package/dist/retry-WUCEB7VA.js.map +0 -1
- package/dist/retry-failed-XR6YAXQP.js +0 -45
- package/dist/run-2BZ43ROF.js +0 -59
- package/dist/run-YC2P6ZY6.js +0 -64
- package/dist/run-YC2P6ZY6.js.map +0 -1
- package/dist/scaffold-ad-UVCBYEXD.js +0 -1548
- package/dist/scaffold-static-ad-6MAOUZ7U.js +0 -971
- package/dist/scaffold-video-L2HMY2DR.js +0 -872
- package/dist/schedule-TLRN22JZ.js +0 -66
- package/dist/schedule-U5AUACBX.js +0 -60
- package/dist/schedule-U5AUACBX.js.map +0 -1
- package/dist/scheduled-agents-MDGPI2M4.js +0 -49
- package/dist/schema-PMUG7S5V.js +0 -63
- package/dist/schema-YURGT27S.js +0 -131
- package/dist/schema-YURGT27S.js.map +0 -1
- package/dist/scrape-ROILJTKL.js +0 -2241
- package/dist/screenshot-VWSXFIAR.js +0 -102
- package/dist/search-5FWLOOSS.js +0 -224
- package/dist/search-5VQOH7OZ.js +0 -26
- package/dist/search-5X42EKRW.js +0 -92
- package/dist/search-BBUAHFWV.js +0 -173
- package/dist/search-BBUAHFWV.js.map +0 -1
- package/dist/search-Y4YQGHK5.js +0 -91
- package/dist/search-copy-67XYV63G.js +0 -168
- package/dist/seeds-LE2CJPFA.js +0 -101
- package/dist/select-HMSZ6AAI.js +0 -93
- package/dist/select-HMSZ6AAI.js.map +0 -1
- package/dist/sends-B5ONB2KY.js +0 -309
- package/dist/sequences-EPTEYUDS.js +0 -146
- package/dist/set-prompt-6PDWQCT7.js +0 -185
- package/dist/setup-links-ZSGBSJG5.js +0 -140
- package/dist/setup-links-ZSGBSJG5.js.map +0 -1
- package/dist/shared-3FM2MOWA.js +0 -31
- package/dist/site-QXFPQYX6.js +0 -176
- package/dist/site-QXFPQYX6.js.map +0 -1
- package/dist/sitemaps-CKHZOGR6.js +0 -87
- package/dist/sites-OEHXRMWU.js +0 -101
- package/dist/skills-RD7IHMUO.js +0 -47
- package/dist/sources-3NPURARN.js +0 -30
- package/dist/sources-QD4NGNGY.js +0 -420
- package/dist/sources-QD4NGNGY.js.map +0 -1
- package/dist/stale-3RLO6UPG.js +0 -62
- package/dist/stale-3RLO6UPG.js.map +0 -1
- package/dist/stats-RWAXEWYD.js +0 -34
- package/dist/status-W64RG5TR.js +0 -61
- package/dist/status-W64RG5TR.js.map +0 -1
- package/dist/sticker-EVDFBJXE.js +0 -94
- package/dist/stock-WRTAR4PW.js +0 -179
- package/dist/studio-Y7OB5J6R.js +0 -49
- package/dist/sync-EKBT6R57.js +0 -54
- package/dist/sync-ITRZURD7.js +0 -53
- package/dist/sync-ITRZURD7.js.map +0 -1
- package/dist/sync-SPFI5726.js +0 -265
- package/dist/sync-definition-Z73K6BU2.js +0 -52
- package/dist/tag-manager-G4KPRTI2.js +0 -43
- package/dist/tags-22XRJTPJ.js +0 -26
- package/dist/tags-2BCS5MAY.js +0 -19
- package/dist/tags-2BCS5MAY.js.map +0 -1
- package/dist/tags-CFTVMRNR.js +0 -223
- package/dist/tags-CFTVMRNR.js.map +0 -1
- package/dist/tags-NZNVT5GK.js +0 -19
- package/dist/tags-NZNVT5GK.js.map +0 -1
- package/dist/tags-XHAFEXAM.js +0 -19
- package/dist/tags-XHAFEXAM.js.map +0 -1
- package/dist/targeting-constants-JTN45K7O.js +0 -118
- package/dist/targeting-criteria-A3PCU32M.js +0 -113
- package/dist/targets-BDSBX4FE.js +0 -101
- package/dist/targets-BDSBX4FE.js.map +0 -1
- package/dist/templates-64SHG73N.js +0 -177
- package/dist/templates-64SHG73N.js.map +0 -1
- package/dist/testimonials-QAEQK2QH.js +0 -32
- package/dist/themes-V27A4BN5.js +0 -94
- package/dist/top-companies-HYUHXCG4.js +0 -107
- package/dist/top-companies-HYUHXCG4.js.map +0 -1
- package/dist/translate-NRRZCXCE.js +0 -597
- package/dist/translate-NRRZCXCE.js.map +0 -1
- package/dist/triggers-XFY2NQ26.js +0 -140
- package/dist/triggers-XFY2NQ26.js.map +0 -1
- package/dist/tweets-FCHLCYSG.js +0 -123
- package/dist/unfollow-RRLQBX76.js +0 -46
- package/dist/unlink-IWTJMF7A.js +0 -66
- package/dist/unlink-IWTJMF7A.js.map +0 -1
- package/dist/unstage-743JO3CK.js +0 -83
- package/dist/unstage-743JO3CK.js.map +0 -1
- package/dist/unstage-GPI6FRJZ.js +0 -95
- package/dist/update-36HCI3GC.js +0 -97
- package/dist/update-36HCI3GC.js.map +0 -1
- package/dist/update-4H56EP7C.js +0 -154
- package/dist/update-4H56EP7C.js.map +0 -1
- package/dist/update-AN4IFT7R.js +0 -141
- package/dist/update-AN4IFT7R.js.map +0 -1
- package/dist/update-S3OWWI4P.js +0 -62
- package/dist/update-S3OWWI4P.js.map +0 -1
- package/dist/upload-NOKZB2WK.js +0 -150
- package/dist/upload-RXW2TNVG.js +0 -125
- package/dist/upload-RXW2TNVG.js.map +0 -1
- package/dist/upscale-HWT7BFR7.js +0 -109
- package/dist/url-options-6DISOYNT.js +0 -130
- package/dist/url-params-EGGK7XLL.js +0 -97
- package/dist/url-params-EGGK7XLL.js.map +0 -1
- package/dist/use-UNLVMWCI.js +0 -95
- package/dist/validate-4KUSCG5B.js +0 -88
- package/dist/variant-ZNLZOGOP.js +0 -338
- package/dist/videos-3GCK5R4D.js +0 -39
- package/dist/view-JBR45SOC.js +0 -121
- package/dist/viewer-check-LLQ3N4BI.js +0 -69
- package/dist/web-C7RX4AM7.js +0 -139
- package/dist/web-C7RX4AM7.js.map +0 -1
- package/dist/winners-G6UVDODV.js +0 -113
- package/dist/winning-ads-UKRM3SJO.js +0 -84
- package/dist/winning-ads-UKRM3SJO.js.map +0 -1
- package/dist/write-commands-DHMPOFSX.js +0 -1014
- package/dist/write-commands-DHMPOFSX.js.map +0 -1
- package/dist/write-commands-J2RGNLIP.js +0 -206
- package/dist/write-commands-SNGBG2FP.js +0 -713
- package/dist/write-commands-VPPBX4VX.js +0 -737
- package/dist/x-XEPTIJZ6.js +0 -47
- /package/dist/{account-W3YGN5RU.js.map → account-HZC6X2PH.js.map} +0 -0
- /package/dist/{account-NN54QFVE.js.map → account-MLX2MQTO.js.map} +0 -0
- /package/dist/{account-reads-3UBDY7R4.js.map → account-reads-FCETXYI7.js.map} +0 -0
- /package/dist/{account-writes-M35QGN3H.js.map → account-writes-UNVXSLMV.js.map} +0 -0
- /package/dist/{accounts-7X62JNDG.js.map → accounts-4P54UY6F.js.map} +0 -0
- /package/dist/{accounts-IUV2RDXE.js.map → accounts-6UNBLIUH.js.map} +0 -0
- /package/dist/{accounts-RKAIEZ3N.js.map → accounts-GVTZN4VE.js.map} +0 -0
- /package/dist/{actions-R64YNGQ6.js.map → actions-MEKXFKDN.js.map} +0 -0
- /package/dist/{active-entities-O2NQ6ME7.js.map → active-entities-UGHMVRWH.js.map} +0 -0
- /package/dist/{activities-LAPEEDLI.js.map → activities-2J7FTZMN.js.map} +0 -0
- /package/dist/{ad-group-writes-W757O2JA.js.map → ad-group-writes-2YEZNT5Q.js.map} +0 -0
- /package/dist/{ad-groups-VPUTJHQ6.js.map → ad-groups-YXVIPI7B.js.map} +0 -0
- /package/dist/{ad-writes-6O7ZPQB6.js.map → ad-writes-HBNG55VT.js.map} +0 -0
- /package/dist/{add-ZLVF72VE.js.map → add-2FHPLALV.js.map} +0 -0
- /package/dist/{add-B5PDUYPI.js.map → add-JP76KCCY.js.map} +0 -0
- /package/dist/{add-accounts-JJCODXBQ.js.map → add-accounts-M5Y4DQFM.js.map} +0 -0
- /package/dist/{ads-JUCDJ5ZC.js.map → ads-DB5NDHX5.js.map} +0 -0
- /package/dist/{ads-3HJPFZEV.js.map → ads-NDV3GOIW.js.map} +0 -0
- /package/dist/{ads-KCELHZAZ.js.map → ads-QBXR7IPO.js.map} +0 -0
- /package/dist/{ads-63MVBIHB.js.map → ads-W2IPUWHQ.js.map} +0 -0
- /package/dist/{adsets-Z43O26IR.js.map → adsets-PY5ZKGBO.js.map} +0 -0
- /package/dist/{advertisers-IANKSIDM.js.map → advertisers-BVAZ4XUX.js.map} +0 -0
- /package/dist/{animate-CUJNLMHT.js.map → animate-QEHFEQHZ.js.map} +0 -0
- /package/dist/{audiences-PLTZX3EZ.js.map → audiences-NTT3HZN7.js.map} +0 -0
- /package/dist/{audiences-YZKSBJKA.js.map → audiences-QWJ34WIW.js.map} +0 -0
- /package/dist/{audiences-QXQJWDVX.js.map → audiences-UUIYQFS6.js.map} +0 -0
- /package/dist/{audit-VBRVGMF2.js.map → audit-OWXTLQC4.js.map} +0 -0
- /package/dist/{avatars-IXEYEQZD.js.map → avatars-3PC7FTU3.js.map} +0 -0
- /package/dist/{brand-EUGPDVYQ.js.map → brand-XVXQ7VAU.js.map} +0 -0
- /package/dist/{brief-GGR3JRG3.js.map → brief-SZSPXGG4.js.map} +0 -0
- /package/dist/{businesses-3HJBLPMC.js.map → businesses-ZH67AXR6.js.map} +0 -0
- /package/dist/{campaign-writes-34CK5DDY.js.map → campaign-writes-4N3LQJL2.js.map} +0 -0
- /package/dist/{campaigns-M652OGDL.js.map → campaigns-5FH5THMS.js.map} +0 -0
- /package/dist/{campaigns-2SNG6SBB.js.map → campaigns-66OOGMDW.js.map} +0 -0
- /package/dist/{campaigns-W7IOUU6R.js.map → campaigns-QUQQYMIO.js.map} +0 -0
- /package/dist/{cards-RB4IQP3D.js.map → cards-RSMTBND3.js.map} +0 -0
- /package/dist/{catalogs-WKOWOYE6.js.map → catalogs-3IYC53GK.js.map} +0 -0
- /package/dist/{changes-UU3FWB63.js.map → changes-U263PWVD.js.map} +0 -0
- /package/dist/{chatgpt-AGS322BK.js.map → chatgpt-O64OJE6R.js.map} +0 -0
- /package/dist/{chunk-3JER367J.js.map → chunk-35ENAFJX.js.map} +0 -0
- /package/dist/{chunk-Q4BQ4OQK.js.map → chunk-3KIH22M7.js.map} +0 -0
- /package/dist/{chunk-UC4C6JUW.js.map → chunk-4FCLXJYW.js.map} +0 -0
- /package/dist/{chunk-NDVUUGKL.js.map → chunk-4OSBBGG5.js.map} +0 -0
- /package/dist/{chunk-AVMJDODA.js.map → chunk-57UECM77.js.map} +0 -0
- /package/dist/{chunk-MLBXDAHX.js.map → chunk-5Q3XCLMS.js.map} +0 -0
- /package/dist/{chunk-YOFHPTWU.js.map → chunk-65BQAJMH.js.map} +0 -0
- /package/dist/{chunk-UVVY55HY.js.map → chunk-6GFJFTG6.js.map} +0 -0
- /package/dist/{chunk-FXNJMN76.js.map → chunk-6GKC2PBR.js.map} +0 -0
- /package/dist/{chunk-KREO4YIC.js.map → chunk-6HPIWZHS.js.map} +0 -0
- /package/dist/{chunk-PGZ4EHAA.js.map → chunk-73B3RQJC.js.map} +0 -0
- /package/dist/{chunk-3QLACKNX.js.map → chunk-7MQVCSA7.js.map} +0 -0
- /package/dist/{chunk-O47IL4FE.js.map → chunk-7NTION5F.js.map} +0 -0
- /package/dist/{chunk-FPUVMFR6.js.map → chunk-AQ4HEXUH.js.map} +0 -0
- /package/dist/{chunk-PBHQPJZG.js.map → chunk-AUWN3C2K.js.map} +0 -0
- /package/dist/{chunk-GHIV4TYN.js.map → chunk-B3SPFCKC.js.map} +0 -0
- /package/dist/{chunk-7YRESXIS.js.map → chunk-CBCGVPHB.js.map} +0 -0
- /package/dist/{chunk-QI42BRSW.js.map → chunk-CECS3DHZ.js.map} +0 -0
- /package/dist/{chunk-NDEACMK4.js.map → chunk-CHFKTRB5.js.map} +0 -0
- /package/dist/{chunk-3QDGEASC.js.map → chunk-D24DJ7DB.js.map} +0 -0
- /package/dist/{chunk-PAE5XKKY.js.map → chunk-D5MF337I.js.map} +0 -0
- /package/dist/{chunk-YSSW437J.js.map → chunk-DLUWHZCE.js.map} +0 -0
- /package/dist/{chunk-XD7F3BSP.js.map → chunk-ECBHE5S6.js.map} +0 -0
- /package/dist/{chunk-ON4ITQ3U.js.map → chunk-EXZ2NIKX.js.map} +0 -0
- /package/dist/{chunk-WHA3DDV6.js.map → chunk-F3FSD6BO.js.map} +0 -0
- /package/dist/{chunk-4EGXTLKD.js.map → chunk-F5XU546T.js.map} +0 -0
- /package/dist/{chunk-L7OTZTWV.js.map → chunk-G3KO2HFZ.js.map} +0 -0
- /package/dist/{chunk-5LHDRP5F.js.map → chunk-GKXMIXEV.js.map} +0 -0
- /package/dist/{chunk-ANAJIYDY.js.map → chunk-GT4UFORX.js.map} +0 -0
- /package/dist/{chunk-YHXACQKB.js.map → chunk-GWM4DCAK.js.map} +0 -0
- /package/dist/{chunk-GEMBH2HB.js.map → chunk-GZ6YS7TG.js.map} +0 -0
- /package/dist/{chunk-YX74KMNK.js.map → chunk-H7JOVRHO.js.map} +0 -0
- /package/dist/{chunk-7FCNHAAZ.js.map → chunk-HF5V7TWU.js.map} +0 -0
- /package/dist/{chunk-HHLEPWHB.js.map → chunk-HM25R6XJ.js.map} +0 -0
- /package/dist/{chunk-5W3GSAPI.js.map → chunk-HWSUW5PX.js.map} +0 -0
- /package/dist/{chunk-7KSJUVNK.js.map → chunk-I7R3YSZF.js.map} +0 -0
- /package/dist/{chunk-NRWU674J.js.map → chunk-IJDF7D4U.js.map} +0 -0
- /package/dist/{chunk-QMJ22KGU.js.map → chunk-IK2S7QGF.js.map} +0 -0
- /package/dist/{chunk-4TOE7NXN.js.map → chunk-INI7U2SZ.js.map} +0 -0
- /package/dist/{chunk-U3CTJ2SE.js.map → chunk-INJHF7AF.js.map} +0 -0
- /package/dist/{chunk-G54P65K2.js.map → chunk-J2QOKD2F.js.map} +0 -0
- /package/dist/{chunk-OEWBWKDE.js.map → chunk-J57EXXFU.js.map} +0 -0
- /package/dist/{chunk-LW7OGQOG.js.map → chunk-JE5NMVRX.js.map} +0 -0
- /package/dist/{chunk-T4RQKMGO.js.map → chunk-JHLGXB6K.js.map} +0 -0
- /package/dist/{chunk-KW6VVXDJ.js.map → chunk-JSEPE5EP.js.map} +0 -0
- /package/dist/{chunk-QTYQPOGZ.js.map → chunk-KB5HBQEK.js.map} +0 -0
- /package/dist/{chunk-2XJDWQE6.js.map → chunk-KCCWCK6L.js.map} +0 -0
- /package/dist/{chunk-YDO5NMF3.js.map → chunk-KTL2D7NT.js.map} +0 -0
- /package/dist/{chunk-W2PXP333.js.map → chunk-KWTKAYCG.js.map} +0 -0
- /package/dist/{chunk-VAX5ITZ5.js.map → chunk-LHNL6JM2.js.map} +0 -0
- /package/dist/{chunk-C26QSQXP.js.map → chunk-MPXDQWYI.js.map} +0 -0
- /package/dist/{chunk-TC3SJU2O.js.map → chunk-NBYP5N4X.js.map} +0 -0
- /package/dist/{chunk-U7DPRTS4.js.map → chunk-NOSWSBLW.js.map} +0 -0
- /package/dist/{chunk-IKQE6HHT.js.map → chunk-O3LHCQ7Q.js.map} +0 -0
- /package/dist/{chunk-5ZYR2ZDH.js.map → chunk-P5H2BL4J.js.map} +0 -0
- /package/dist/{chunk-UQ6DXUOQ.js.map → chunk-P66JWKAL.js.map} +0 -0
- /package/dist/{chunk-SPJJVPPV.js.map → chunk-PA5MYVQY.js.map} +0 -0
- /package/dist/{chunk-UU67QDR7.js.map → chunk-Q676JHJA.js.map} +0 -0
- /package/dist/{chunk-4XVVTERH.js.map → chunk-QDOVBGKZ.js.map} +0 -0
- /package/dist/{chunk-IPQ533MQ.js.map → chunk-QN5VAYER.js.map} +0 -0
- /package/dist/{chunk-EXSVOUU4.js.map → chunk-QNEX7FEC.js.map} +0 -0
- /package/dist/{chunk-S7HMUFO3.js.map → chunk-QTL4NJ5I.js.map} +0 -0
- /package/dist/{chunk-ZBWUDJUC.js.map → chunk-R3GZRH43.js.map} +0 -0
- /package/dist/{chunk-S6JDX5NI.js.map → chunk-R7CQCE3E.js.map} +0 -0
- /package/dist/{chunk-WY6PPZO4.js.map → chunk-RFJ3S47F.js.map} +0 -0
- /package/dist/{chunk-ZQKJIWDS.js.map → chunk-TMQ5LHZ3.js.map} +0 -0
- /package/dist/{chunk-65VDFALQ.js.map → chunk-TRLVH7T3.js.map} +0 -0
- /package/dist/{chunk-JQH5YQOD.js.map → chunk-UUBFYAVE.js.map} +0 -0
- /package/dist/{chunk-7V2FDO3O.js.map → chunk-UXTZ5MBE.js.map} +0 -0
- /package/dist/{chunk-GF5SLKYH.js.map → chunk-V43RLLZE.js.map} +0 -0
- /package/dist/{chunk-DWUBZGYX.js.map → chunk-V4UFNEHE.js.map} +0 -0
- /package/dist/{chunk-3BNFG5IH.js.map → chunk-V5L5QD7R.js.map} +0 -0
- /package/dist/{chunk-QRQ3LNSX.js.map → chunk-VAYFVC5B.js.map} +0 -0
- /package/dist/{chunk-5PFKCXTT.js.map → chunk-VFSLIDXA.js.map} +0 -0
- /package/dist/{chunk-DZD3XEBO.js.map → chunk-VHMNSO2B.js.map} +0 -0
- /package/dist/{chunk-QL57CR4R.js.map → chunk-VOH2QWVG.js.map} +0 -0
- /package/dist/{chunk-LUQM6DFI.js.map → chunk-WESRVXFS.js.map} +0 -0
- /package/dist/{chunk-XPFQ3RSQ.js.map → chunk-WILN7TD6.js.map} +0 -0
- /package/dist/{chunk-ZJVHZHYP.js.map → chunk-WXC3I4CT.js.map} +0 -0
- /package/dist/{chunk-JAEVTZ6J.js.map → chunk-X4DLIDFW.js.map} +0 -0
- /package/dist/{chunk-XX5DXKEI.js.map → chunk-YT74ZEVP.js.map} +0 -0
- /package/dist/{chunk-BXDWSA2Q.js.map → chunk-Z5KBRTB2.js.map} +0 -0
- /package/dist/{chunk-MZ7AEXVL.js.map → chunk-ZBKBTTHD.js.map} +0 -0
- /package/dist/{chunk-22IO6KYA.js.map → chunk-ZFIYN7KP.js.map} +0 -0
- /package/dist/{chunk-6ZCYWVKZ.js.map → chunk-ZLU5QDLU.js.map} +0 -0
- /package/dist/{chunk-RIYI4BBQ.js.map → chunk-ZNNC6B75.js.map} +0 -0
- /package/dist/{chunk-PJFGOJGF.js.map → chunk-ZO2YLHRW.js.map} +0 -0
- /package/dist/{chunk-INMTAPMV.js.map → chunk-ZPJE6D7W.js.map} +0 -0
- /package/dist/{client-P7OREXNC.js.map → client-LY2JCQS2.js.map} +0 -0
- /package/dist/{code-PRV5LVMQ.js.map → code-7CBNYUPU.js.map} +0 -0
- /package/dist/{config-Y644DINP.js.map → config-7COTFJWK.js.map} +0 -0
- /package/dist/{connect-DGTD2N25.js.map → connect-VOCZSB3W.js.map} +0 -0
- /package/dist/{content-TALOFHDP.js.map → content-OXMONMHJ.js.map} +0 -0
- /package/dist/{conversion-report-QZU2PAQN.js.map → conversion-report-ZRNV7X7D.js.map} +0 -0
- /package/dist/{conversion-upload-command-A5X42QDR.js.map → conversion-upload-command-IMHHSGYU.js.map} +0 -0
- /package/dist/{conversion-writes-NSAEZNCR.js.map → conversion-writes-7N5UDQGH.js.map} +0 -0
- /package/dist/{conversions-QVNRC7CU.js.map → conversions-QOXRO26I.js.map} +0 -0
- /package/dist/{countries-2I6VNSVR.js.map → countries-UXAUGSBR.js.map} +0 -0
- /package/dist/{creatives-JBHNQEH4.js.map → creatives-F26GDJG2.js.map} +0 -0
- /package/dist/{creatives-KNQHWJFJ.js.map → creatives-ONKKGW5T.js.map} +0 -0
- /package/dist/{crop-4ANU2DAZ.js.map → crop-3ZV5BFCA.js.map} +0 -0
- /package/dist/{currency-Q7QTY444.js.map → currency-PGLGLRKU.js.map} +0 -0
- /package/dist/{custom-conversions-PAH42DOH.js.map → custom-conversions-TV23XQHW.js.map} +0 -0
- /package/dist/{customers-AWIDLQKG.js.map → customers-I2EHMEX3.js.map} +0 -0
- /package/dist/{delete-OMHFV5PL.js.map → delete-MUPTLWHI.js.map} +0 -0
- /package/dist/{delete-DEZGXUCQ.js.map → delete-R2SEUSLV.js.map} +0 -0
- /package/dist/{delete-XABKZH7Z.js.map → delete-ZGBBWFAW.js.map} +0 -0
- /package/dist/{describe-LK3XJEXX.js.map → describe-4O3VCV6L.js.map} +0 -0
- /package/dist/{describe-EKDSVBFK.js.map → describe-FCTM53MM.js.map} +0 -0
- /package/dist/{dimensions-NKLUJ4I7.js.map → dimensions-AD4VS5AH.js.map} +0 -0
- /package/dist/{discover-S24Q43VD.js.map → discover-6XSPNZYE.js.map} +0 -0
- /package/dist/{discover-NZ4L2FAB.js.map → discover-UQXQUPNO.js.map} +0 -0
- /package/dist/{download-27QM2APL.js.map → download-IE6XLFHM.js.map} +0 -0
- /package/dist/{draft-UYZXKTVR.js.map → draft-ENA7S4Y7.js.map} +0 -0
- /package/dist/{draft-LINEUQZE.js.map → draft-MGKJ5RYI.js.map} +0 -0
- /package/dist/{draft-JZ26MIHK.js.map → draft-PPRDQDGW.js.map} +0 -0
- /package/dist/{draft-3H5DWKCM.js.map → draft-S6VPKZYY.js.map} +0 -0
- /package/dist/{draft-KI2HEV22.js.map → draft-VVDI2OR3.js.map} +0 -0
- /package/dist/{env-5OVWQ4KR.js.map → env-YLOVBOAE.js.map} +0 -0
- /package/dist/{experiment-ZY6GKKFO.js.map → experiment-PHFP6IBM.js.map} +0 -0
- /package/dist/{export-EM7PJUWD.js.map → export-R2IMUCQO.js.map} +0 -0
- /package/dist/{extract-QFCDAP24.js.map → extract-OQP3TSQG.js.map} +0 -0
- /package/dist/{favorites-A5EKOJRD.js.map → favorites-NS73FDG5.js.map} +0 -0
- /package/dist/{feed-WPL7WCH7.js.map → feed-SQPOB7SP.js.map} +0 -0
- /package/dist/{feedback-FOZ6M7LL.js.map → feedback-XHSJBBEJ.js.map} +0 -0
- /package/dist/{fetch-CLHL6XXD.js.map → fetch-PQ3NOPIE.js.map} +0 -0
- /package/dist/{find-WP6D3QCM.js.map → find-Y22AANDE.js.map} +0 -0
- /package/dist/{fit-QOQ2KMBY.js.map → fit-XJPM6573.js.map} +0 -0
- /package/dist/{follow-LA35GI4S.js.map → follow-N3DQZV7M.js.map} +0 -0
- /package/dist/{follow-competitors-N6IUS5NO.js.map → follow-competitors-BZPCBGIB.js.map} +0 -0
- /package/dist/{following-XCHW4KIF.js.map → following-KESWTEBR.js.map} +0 -0
- /package/dist/{fonts-SKUCXIJM.js.map → fonts-3FX3OYEQ.js.map} +0 -0
- /package/dist/{forecast-6KWNTFIO.js.map → forecast-CYSEUIS4.js.map} +0 -0
- /package/dist/{funding-M2UCPM6X.js.map → funding-G6S4UVU5.js.map} +0 -0
- /package/dist/{ga4-QYCDH25I.js.map → ga4-2QHOA4RO.js.map} +0 -0
- /package/dist/{generate-OITIKU7P.js.map → generate-F4FDRDAW.js.map} +0 -0
- /package/dist/{get-YDIJZRT3.js.map → get-3P2EQLP3.js.map} +0 -0
- /package/dist/{get-SQESAJ4Z.js.map → get-FJB3X44Z.js.map} +0 -0
- /package/dist/{get-2FYPCEQK.js.map → get-MBGO4VJD.js.map} +0 -0
- /package/dist/{get-FNVMXQP3.js.map → get-NOKSZPIV.js.map} +0 -0
- /package/dist/{get-HS2ACWTQ.js.map → get-WHC4SRYK.js.map} +0 -0
- /package/dist/{gif-S5EOHDRF.js.map → gif-SFYVDLCU.js.map} +0 -0
- /package/dist/{google-KPER3UKQ.js.map → google-MY45TUC4.js.map} +0 -0
- /package/dist/{google-C6U5YMTM.js.map → google-XRAMIES5.js.map} +0 -0
- /package/dist/{group-V5VAZVOY.js.map → group-6RDJTWVN.js.map} +0 -0
- /package/dist/{group-22AAKFSB.js.map → group-TZJCKHKS.js.map} +0 -0
- /package/dist/{gsc-AC23WZU4.js.map → gsc-HD6UFRYM.js.map} +0 -0
- /package/dist/{history-CJCMB2KQ.js.map → history-2WBZRPPE.js.map} +0 -0
- /package/dist/{icon-U4RUUEP5.js.map → icon-BMCDFGMN.js.map} +0 -0
- /package/dist/{ideas-J6AJYFTI.js.map → ideas-VLHUTFHP.js.map} +0 -0
- /package/dist/{images-BFL4OXSL.js.map → images-C4TBUPXM.js.map} +0 -0
- /package/dist/{improve-A5UIOZOB.js.map → improve-P6F2HXYQ.js.map} +0 -0
- /package/dist/{ingest-RAWSXS4T.js.map → ingest-SXT33KE6.js.map} +0 -0
- /package/dist/{insights-GKGZJMAB.js.map → insights-DI4W3D2Y.js.map} +0 -0
- /package/dist/{insights-4DMLJZEE.js.map → insights-X75LRPS3.js.map} +0 -0
- /package/dist/{inspiration-XCBXTDB6.js.map → inspiration-MDCCU2CF.js.map} +0 -0
- /package/dist/{intent-TZD4G3JE.js.map → intent-A4SOIFKK.js.map} +0 -0
- /package/dist/{job-63B2WPM2.js.map → job-QDLPQFIT.js.map} +0 -0
- /package/dist/{job-create-5PZ256PD.js.map → job-create-6XKD5GEC.js.map} +0 -0
- /package/dist/{job-status-H5WXV55V.js.map → job-status-MH7CGLWC.js.map} +0 -0
- /package/dist/{keep-HGLSG6CJ.js.map → keep-42SLV4CR.js.map} +0 -0
- /package/dist/{keyword-gap-5H6LPS7Y.js.map → keyword-gap-D4P2CC2L.js.map} +0 -0
- /package/dist/{landing-YYBDXADL.js.map → landing-JWD3U2K5.js.map} +0 -0
- /package/dist/{landings-LUW24CTP.js.map → landings-5IYXHA5Z.js.map} +0 -0
- /package/dist/{languages-Q7NLDV5C.js.map → languages-HX4FD3GX.js.map} +0 -0
- /package/dist/{languages-7X5PROWY.js.map → languages-SRFGW6Z3.js.map} +0 -0
- /package/dist/{launches-HXMKMYJX.js.map → launches-7U4TPNO3.js.map} +0 -0
- /package/dist/{layerize-SYLRTQ3A.js.map → layerize-U672AXED.js.map} +0 -0
- /package/dist/{leads-RQG6LB7K.js.map → leads-MXUQISOC.js.map} +0 -0
- /package/dist/{library-PIIT56GK.js.map → library-RPFXNER4.js.map} +0 -0
- /package/dist/{lighthouse-ASYAZ4YL.js.map → lighthouse-SJ4QNLUS.js.map} +0 -0
- /package/dist/{line-items-IKBF3UU2.js.map → line-items-QIBNOEOH.js.map} +0 -0
- /package/dist/{list-TSTTP5AF.js.map → list-GQ65MC2N.js.map} +0 -0
- /package/dist/{list-AHBRL6CF.js.map → list-K56J7FZW.js.map} +0 -0
- /package/dist/{list-U46RRB5O.js.map → list-M4Z3WYPM.js.map} +0 -0
- /package/dist/{list-GW3LWBP2.js.map → list-SXYVDDMU.js.map} +0 -0
- /package/dist/{list-LQZDHNG3.js.map → list-XFIOXFB2.js.map} +0 -0
- /package/dist/{locations-PQLM4426.js.map → locations-PQWB7EGC.js.map} +0 -0
- /package/dist/{locations-VBHVPYER.js.map → locations-WNSET6RM.js.map} +0 -0
- /package/dist/{logo-YF46CHZO.js.map → logo-4JOWGJ5A.js.map} +0 -0
- /package/dist/{lookup-SOGUDT5P.js.map → lookup-QGGSAHOO.js.map} +0 -0
- /package/dist/{make-UOAOMFT3.js.map → make-6OQBIYWC.js.map} +0 -0
- /package/dist/{media-VGJYSC4H.js.map → media-2SWDJDA6.js.map} +0 -0
- /package/dist/{media-HX3X5ZW7.js.map → media-O5L7GO72.js.map} +0 -0
- /package/dist/{media-sources-ESNG2EUR.js.map → media-sources-LF6I6AYP.js.map} +0 -0
- /package/dist/{meta-BMUEM3KS.js.map → meta-37L6QBOZ.js.map} +0 -0
- /package/dist/{metrics-N7SG5ME6.js.map → metrics-WVG3IUMH.js.map} +0 -0
- /package/dist/{models-DKTFCIPI.js.map → models-5QWYGJ7Y.js.map} +0 -0
- /package/dist/{normalize-E75DZCVO.js.map → normalize-P5Q3F7FU.js.map} +0 -0
- /package/dist/{output-VNUB3ZDU.js.map → output-ZL62UZHQ.js.map} +0 -0
- /package/dist/{page-T5GQ74JQ.js.map → page-FZ7IZ5CV.js.map} +0 -0
- /package/dist/{pages-Y6GD5TNO.js.map → pages-SS7TZTHV.js.map} +0 -0
- /package/dist/{performance-VP7LFTOX.js.map → performance-2K425XAN.js.map} +0 -0
- /package/dist/{pinterest-IO4HREWY.js.map → pinterest-UETS7U7U.js.map} +0 -0
- /package/dist/{pixels-WWIVBVBD.js.map → pixels-D73GQFGM.js.map} +0 -0
- /package/dist/{pixels-QM3COIKE.js.map → pixels-LCTMLKGP.js.map} +0 -0
- /package/dist/{plan-M2L7MJEQ.js.map → plan-4HLITU3A.js.map} +0 -0
- /package/dist/{preview-VFM2WX4B.js.map → preview-RU54Z4EM.js.map} +0 -0
- /package/dist/{profile-35CJMR2D.js.map → profile-NQOIBLJL.js.map} +0 -0
- /package/dist/{promoted-tweets-AX3RBOMH.js.map → promoted-tweets-D5NKZ3FS.js.map} +0 -0
- /package/dist/{properties-YPRTWLT3.js.map → properties-ZUDQH3LE.js.map} +0 -0
- /package/dist/{query-APOXSSD6.js.map → query-26T7XATH.js.map} +0 -0
- /package/dist/{query-SDOGFOUT.js.map → query-IJVVSB54.js.map} +0 -0
- /package/dist/{query-IBHH6WZX.js.map → query-SHUOHXTO.js.map} +0 -0
- /package/dist/{questionnaire-DKZNPZMI.js.map → questionnaire-7AEVHZDR.js.map} +0 -0
- /package/dist/{read-LVAHQREC.js.map → read-UYSQAXRV.js.map} +0 -0
- /package/dist/{reddit-7KE75WNK.js.map → reddit-YBEYPDZP.js.map} +0 -0
- /package/dist/{relevant-pages-I3JY3IJV.js.map → relevant-pages-OI7GTPOK.js.map} +0 -0
- /package/dist/{remove-QPYAI6UW.js.map → remove-2KACTXKP.js.map} +0 -0
- /package/dist/{rerun-SBUXP6SE.js.map → rerun-LM52CBPS.js.map} +0 -0
- /package/dist/{research-GJW3K4PY.js.map → research-547KDC54.js.map} +0 -0
- /package/dist/{retry-failed-XR6YAXQP.js.map → retry-failed-NWLH6WHK.js.map} +0 -0
- /package/dist/{run-2BZ43ROF.js.map → run-PLUL33QX.js.map} +0 -0
- /package/dist/{scaffold-ad-UVCBYEXD.js.map → scaffold-ad-W4RZXLDX.js.map} +0 -0
- /package/dist/{scaffold-static-ad-6MAOUZ7U.js.map → scaffold-static-ad-IPJYRAOT.js.map} +0 -0
- /package/dist/{scaffold-video-L2HMY2DR.js.map → scaffold-video-XBII4YLS.js.map} +0 -0
- /package/dist/{schedule-TLRN22JZ.js.map → schedule-S547HPUT.js.map} +0 -0
- /package/dist/{scheduled-agents-MDGPI2M4.js.map → scheduled-agents-DWSVPMZP.js.map} +0 -0
- /package/dist/{schema-PMUG7S5V.js.map → schema-SQIP75WG.js.map} +0 -0
- /package/dist/{scrape-ROILJTKL.js.map → scrape-TI6S2W7I.js.map} +0 -0
- /package/dist/{screenshot-VWSXFIAR.js.map → screenshot-XFAYY4WW.js.map} +0 -0
- /package/dist/{search-5VQOH7OZ.js.map → search-4HIOKYFR.js.map} +0 -0
- /package/dist/{search-5X42EKRW.js.map → search-D2IV7KFJ.js.map} +0 -0
- /package/dist/{search-5FWLOOSS.js.map → search-IZPDHRJ4.js.map} +0 -0
- /package/dist/{search-Y4YQGHK5.js.map → search-KFDL2IGG.js.map} +0 -0
- /package/dist/{search-copy-67XYV63G.js.map → search-copy-QZXCAGK4.js.map} +0 -0
- /package/dist/{seeds-LE2CJPFA.js.map → seeds-VUNZMHZH.js.map} +0 -0
- /package/dist/{sends-B5ONB2KY.js.map → sends-UT4WXVOS.js.map} +0 -0
- /package/dist/{sequences-EPTEYUDS.js.map → sequences-5RAGZE7L.js.map} +0 -0
- /package/dist/{set-prompt-6PDWQCT7.js.map → set-prompt-WVQ4AI66.js.map} +0 -0
- /package/dist/{shared-3FM2MOWA.js.map → shared-3CGGKICB.js.map} +0 -0
- /package/dist/{sitemaps-CKHZOGR6.js.map → sitemaps-3WDYQHYR.js.map} +0 -0
- /package/dist/{sites-OEHXRMWU.js.map → sites-G4DQ2Z2X.js.map} +0 -0
- /package/dist/{skills-RD7IHMUO.js.map → skills-PA26HXEP.js.map} +0 -0
- /package/dist/{sources-3NPURARN.js.map → sources-PZXOSE4S.js.map} +0 -0
- /package/dist/{stats-RWAXEWYD.js.map → stats-6DPPYSP3.js.map} +0 -0
- /package/dist/{sticker-EVDFBJXE.js.map → sticker-MC2IAIQB.js.map} +0 -0
- /package/dist/{stock-WRTAR4PW.js.map → stock-B7LKMKUK.js.map} +0 -0
- /package/dist/{studio-Y7OB5J6R.js.map → studio-EQ2L6OBJ.js.map} +0 -0
- /package/dist/{sync-EKBT6R57.js.map → sync-CLZDZL5F.js.map} +0 -0
- /package/dist/{sync-SPFI5726.js.map → sync-V26UBMAN.js.map} +0 -0
- /package/dist/{sync-definition-Z73K6BU2.js.map → sync-definition-2SGGHSKR.js.map} +0 -0
- /package/dist/{tag-manager-G4KPRTI2.js.map → tag-manager-KIHXVFMF.js.map} +0 -0
- /package/dist/{tags-22XRJTPJ.js.map → tags-JN475JPP.js.map} +0 -0
- /package/dist/{targeting-constants-JTN45K7O.js.map → targeting-constants-6Y5J2PPZ.js.map} +0 -0
- /package/dist/{targeting-criteria-A3PCU32M.js.map → targeting-criteria-NMZD3CK6.js.map} +0 -0
- /package/dist/{testimonials-QAEQK2QH.js.map → testimonials-YN2AB7U7.js.map} +0 -0
- /package/dist/{themes-V27A4BN5.js.map → themes-BYRMCXYR.js.map} +0 -0
- /package/dist/{tweets-FCHLCYSG.js.map → tweets-KTM7HX5R.js.map} +0 -0
- /package/dist/{unfollow-RRLQBX76.js.map → unfollow-WBBTVEHE.js.map} +0 -0
- /package/dist/{unstage-GPI6FRJZ.js.map → unstage-GYBJZWCZ.js.map} +0 -0
- /package/dist/{upload-NOKZB2WK.js.map → upload-NA62W5RS.js.map} +0 -0
- /package/dist/{upscale-HWT7BFR7.js.map → upscale-RXJUBHXN.js.map} +0 -0
- /package/dist/{url-options-6DISOYNT.js.map → url-options-LZIHCPP4.js.map} +0 -0
- /package/dist/{use-UNLVMWCI.js.map → use-MHPNS4V4.js.map} +0 -0
- /package/dist/{validate-4KUSCG5B.js.map → validate-IIOV3YJK.js.map} +0 -0
- /package/dist/{variant-ZNLZOGOP.js.map → variant-ZFCWILPG.js.map} +0 -0
- /package/dist/{videos-3GCK5R4D.js.map → videos-MIHTMO3G.js.map} +0 -0
- /package/dist/{view-JBR45SOC.js.map → view-PYCGDGT2.js.map} +0 -0
- /package/dist/{viewer-check-LLQ3N4BI.js.map → viewer-check-65TIGVAJ.js.map} +0 -0
- /package/dist/{winners-G6UVDODV.js.map → winners-AI4PVSOI.js.map} +0 -0
- /package/dist/{write-commands-SNGBG2FP.js.map → write-commands-34L5LJIB.js.map} +0 -0
- /package/dist/{write-commands-VPPBX4VX.js.map → write-commands-5TJ3LQ5F.js.map} +0 -0
- /package/dist/{write-commands-J2RGNLIP.js.map → write-commands-R3UCCBUI.js.map} +0 -0
- /package/dist/{x-XEPTIJZ6.js.map → x-V7V47E4N.js.map} +0 -0
|
@@ -0,0 +1,322 @@
|
|
|
1
|
+
import {
|
|
2
|
+
advanceDefinitionStatus,
|
|
3
|
+
definitionPathFor
|
|
4
|
+
} from "./chunk-3ACMDRSE.js";
|
|
5
|
+
import {
|
|
6
|
+
defaultVideoApiDeps,
|
|
7
|
+
detectVideoContentType,
|
|
8
|
+
isVideoFile,
|
|
9
|
+
uploadLocalVideo,
|
|
10
|
+
videoProcessingTimeoutMs,
|
|
11
|
+
waitForPlayableVideo
|
|
12
|
+
} from "./chunk-WILN7TD6.js";
|
|
13
|
+
import {
|
|
14
|
+
defaultImageApiDeps,
|
|
15
|
+
detectImageContentType,
|
|
16
|
+
imageProcessingTimeoutMs,
|
|
17
|
+
publishImageAsCreative,
|
|
18
|
+
uploadImageBytes,
|
|
19
|
+
uploadLocalImage,
|
|
20
|
+
waitForReadyImage
|
|
21
|
+
} from "./chunk-F3FSD6BO.js";
|
|
22
|
+
import {
|
|
23
|
+
fetchRunRecord
|
|
24
|
+
} from "./chunk-F5XU546T.js";
|
|
25
|
+
import {
|
|
26
|
+
findWorkspaceRoot
|
|
27
|
+
} from "./chunk-65BQAJMH.js";
|
|
28
|
+
import {
|
|
29
|
+
sha256Hex
|
|
30
|
+
} from "./chunk-NAMEFVWL.js";
|
|
31
|
+
import "./chunk-GT4UFORX.js";
|
|
32
|
+
import "./chunk-CECS3DHZ.js";
|
|
33
|
+
import "./chunk-WXC3I4CT.js";
|
|
34
|
+
import "./chunk-GXDLWBOY.js";
|
|
35
|
+
import "./chunk-GIWHHCD6.js";
|
|
36
|
+
import "./chunk-XQIOCIDO.js";
|
|
37
|
+
import "./chunk-ML7DLFFY.js";
|
|
38
|
+
import {
|
|
39
|
+
ApiError
|
|
40
|
+
} from "./chunk-KB5XJHQX.js";
|
|
41
|
+
import "./chunk-YONSWWCF.js";
|
|
42
|
+
import {
|
|
43
|
+
optionalChatId
|
|
44
|
+
} from "./chunk-QXDEZKAR.js";
|
|
45
|
+
import {
|
|
46
|
+
registerSchema,
|
|
47
|
+
writeJson
|
|
48
|
+
} from "./chunk-4DM6OAQ6.js";
|
|
49
|
+
import "./chunk-YQSBHWOI.js";
|
|
50
|
+
|
|
51
|
+
// src/commands/creatives/publish.ts
|
|
52
|
+
import { Buffer } from "buffer";
|
|
53
|
+
import { defineCommand } from "citty";
|
|
54
|
+
var creativeContentTypes = ["image/png", "image/jpeg", "image/webp"];
|
|
55
|
+
var creativeVideoContentTypes = ["video/mp4", "video/quicktime", "video/webm"];
|
|
56
|
+
var UNSUPPORTED_CREATIVE_FILE = "Unsupported creative file extension. Use PNG, JPG or WebP for an image, MP4, MOV or WebM for a video.";
|
|
57
|
+
var DESCRIPTION = `Save a finished creative to Baker Creatives and return a creative reference: a static image (PNG/JPG/WebP) or a finished video render (MP4/MOV/WebM).
|
|
58
|
+
Start here:
|
|
59
|
+
baker creatives publish ./canvas/r_01K\u2026/final_4x5.png --title "Spring Offer" --slug spring-offer --run-id r_01K\u2026
|
|
60
|
+
baker creatives publish --title "Spring Offer" --slug spring-offer --run-id r_01K\u2026 --output 4:5
|
|
61
|
+
baker creatives publish ./canvas/r_01K\u2026/final.mp4 --title "Spring Offer Reel" --slug spring-offer --run-id r_01K\u2026
|
|
62
|
+
With --run-id and no file, the run's own saved image is published (--output picks one when the run made several). A video goes to the company's video library first and is saved once it plays (up to 3 minutes); it needs the file and --slug. Choose and save the finished version yourself, including in the turn that rendered it. Saving pins that version without recording user approval or putting an ad live. An image publish marks the creative's _definition.md published.`;
|
|
63
|
+
var ARGS = {
|
|
64
|
+
file: {
|
|
65
|
+
type: "string",
|
|
66
|
+
description: "Local creative file: PNG/JPG/WebP image or MP4/MOV/WebM video. Optional for an image with --run-id: the run's saved output is used instead.",
|
|
67
|
+
required: false
|
|
68
|
+
},
|
|
69
|
+
title: { type: "string", description: "Human title for the creative output", required: true },
|
|
70
|
+
context: { type: "string", description: "Optional describe context for the image asset", required: false },
|
|
71
|
+
sourceReferenceUrl: {
|
|
72
|
+
type: "string",
|
|
73
|
+
description: "Optional URL of the original reference ad",
|
|
74
|
+
required: false
|
|
75
|
+
},
|
|
76
|
+
slug: {
|
|
77
|
+
type: "string",
|
|
78
|
+
description: "Creative slug (src/creatives/<slug>/). Attaches the image or video to that creative's row. Required for a video",
|
|
79
|
+
required: false
|
|
80
|
+
},
|
|
81
|
+
runId: {
|
|
82
|
+
type: "string",
|
|
83
|
+
description: "Canvas run id (r_\u2026) of the finished generation to pin as published",
|
|
84
|
+
required: false
|
|
85
|
+
},
|
|
86
|
+
output: {
|
|
87
|
+
type: "string",
|
|
88
|
+
description: "With --run-id and no file: which of the run's outputs to save when it made several, by label (e.g. 4:5), slot, or number (1 = first).",
|
|
89
|
+
required: false
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
registerSchema({ command: "creatives.publish", description: DESCRIPTION, args: ARGS });
|
|
93
|
+
function detectCreativeContentType(filePath) {
|
|
94
|
+
return detectImageContentType(filePath, {
|
|
95
|
+
allowedContentTypes: creativeContentTypes,
|
|
96
|
+
unsupportedMessage: UNSUPPORTED_CREATIVE_FILE
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
function chatIdFromEnv() {
|
|
100
|
+
return optionalChatId();
|
|
101
|
+
}
|
|
102
|
+
function parseOptionalUrl(value) {
|
|
103
|
+
if (value === void 0 || value.trim() === "") {
|
|
104
|
+
return void 0;
|
|
105
|
+
}
|
|
106
|
+
try {
|
|
107
|
+
return new URL(value).toString();
|
|
108
|
+
} catch {
|
|
109
|
+
throw new ApiError("VALIDATION_ERROR", "--source-reference-url must be a valid URL");
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
async function downloadBytes(url) {
|
|
113
|
+
const res = await fetch(url);
|
|
114
|
+
if (!res.ok) throw new ApiError("UNAVAILABLE", `Could not read the run's output (${res.status} ${res.statusText})`);
|
|
115
|
+
return Buffer.from(await res.arrayBuffer());
|
|
116
|
+
}
|
|
117
|
+
function runImages(run) {
|
|
118
|
+
if (run.status !== "completed") {
|
|
119
|
+
throw new ApiError(
|
|
120
|
+
"VALIDATION_ERROR",
|
|
121
|
+
`Run ${run.runId} did not finish (${run.status}), so it has no result to publish. Finish the run first, or pass the image file.`
|
|
122
|
+
);
|
|
123
|
+
}
|
|
124
|
+
const finals = run.finalOutputs.filter((o) => typeof o.url === "string");
|
|
125
|
+
if (finals.some((o) => !creativeContentTypes.some((t) => t === o.mime))) {
|
|
126
|
+
throw new ApiError(
|
|
127
|
+
"VALIDATION_ERROR",
|
|
128
|
+
`Run ${run.runId} made a video, not a still image. Publish the video file: baker creatives publish ./canvas/${run.runId}/<file>.mp4 --slug <slug> --run-id ${run.runId}.`
|
|
129
|
+
);
|
|
130
|
+
}
|
|
131
|
+
return finals;
|
|
132
|
+
}
|
|
133
|
+
function describeOutputs(outputs) {
|
|
134
|
+
return outputs.map((o, i) => `${i + 1}: ${o.label ?? o.slot}`).join(", ");
|
|
135
|
+
}
|
|
136
|
+
function chooseOutput(run, choice) {
|
|
137
|
+
const images = runImages(run);
|
|
138
|
+
if (images.length === 0) {
|
|
139
|
+
throw new ApiError(
|
|
140
|
+
"VALIDATION_ERROR",
|
|
141
|
+
`Run ${run.runId} has no saved image to publish. Pass the image file instead.`
|
|
142
|
+
);
|
|
143
|
+
}
|
|
144
|
+
if (choice === void 0) {
|
|
145
|
+
const [only] = images;
|
|
146
|
+
if (images.length === 1 && only) return only;
|
|
147
|
+
throw new ApiError(
|
|
148
|
+
"VALIDATION_ERROR",
|
|
149
|
+
`Run ${run.runId} made ${images.length} images; pick one with --output (${describeOutputs(images)}).`
|
|
150
|
+
);
|
|
151
|
+
}
|
|
152
|
+
const wanted = choice.trim();
|
|
153
|
+
const byNumber = /^\d+$/.test(wanted) ? images[Number(wanted) - 1] : void 0;
|
|
154
|
+
const found = byNumber ?? images.find((o) => o.label === wanted || o.slot === wanted);
|
|
155
|
+
if (!found) {
|
|
156
|
+
throw new ApiError("VALIDATION_ERROR", `Run ${run.runId} has no output "${wanted}" (${describeOutputs(images)}).`);
|
|
157
|
+
}
|
|
158
|
+
return found;
|
|
159
|
+
}
|
|
160
|
+
var EXTENSION = { "image/png": ".png", "image/jpeg": ".jpg", "image/webp": ".webp" };
|
|
161
|
+
async function uploadRunOutput(args, deps) {
|
|
162
|
+
const run = await fetchRunRecord(args.runId, deps.post);
|
|
163
|
+
if (!run) {
|
|
164
|
+
throw new ApiError(
|
|
165
|
+
"NOT_FOUND",
|
|
166
|
+
`No run "${args.runId}" in this company's run history. Pass the image file instead.`
|
|
167
|
+
);
|
|
168
|
+
}
|
|
169
|
+
const chosen = chooseOutput(run, args.output);
|
|
170
|
+
const bytes = await (deps.download ?? downloadBytes)(String(chosen.url));
|
|
171
|
+
if (sha256Hex(bytes) !== chosen.sha256) {
|
|
172
|
+
throw new ApiError(
|
|
173
|
+
"VALIDATION_ERROR",
|
|
174
|
+
`The saved output of run ${run.runId} does not match its recorded fingerprint`
|
|
175
|
+
);
|
|
176
|
+
}
|
|
177
|
+
const name = (chosen.label ?? chosen.slot).replace(/[^a-z0-9.-]+/gi, "_");
|
|
178
|
+
return uploadImageBytes(
|
|
179
|
+
{
|
|
180
|
+
bytes,
|
|
181
|
+
contentType: chosen.mime,
|
|
182
|
+
originalFilename: `${run.runId}-${name}${EXTENSION[chosen.mime] ?? ""}`,
|
|
183
|
+
source: "ai_generated",
|
|
184
|
+
descriptionContext: args.descriptionContext
|
|
185
|
+
},
|
|
186
|
+
deps
|
|
187
|
+
);
|
|
188
|
+
}
|
|
189
|
+
async function publishCreative(args, deps = defaultImageApiDeps) {
|
|
190
|
+
const title = args.title.trim();
|
|
191
|
+
if (!title) {
|
|
192
|
+
throw new ApiError("VALIDATION_ERROR", "--title is required");
|
|
193
|
+
}
|
|
194
|
+
const sourceReferenceUrl = parseOptionalUrl(args.sourceReferenceUrl);
|
|
195
|
+
const descriptionContext = args.context ?? `Static ad creative: ${title}`;
|
|
196
|
+
let upload;
|
|
197
|
+
if (args.file) {
|
|
198
|
+
upload = await uploadLocalImage(
|
|
199
|
+
{
|
|
200
|
+
file: args.file,
|
|
201
|
+
contentType: detectCreativeContentType(args.file),
|
|
202
|
+
source: "ai_generated",
|
|
203
|
+
descriptionContext
|
|
204
|
+
},
|
|
205
|
+
deps
|
|
206
|
+
);
|
|
207
|
+
} else if (args.runId) {
|
|
208
|
+
upload = await uploadRunOutput(
|
|
209
|
+
{
|
|
210
|
+
runId: args.runId,
|
|
211
|
+
output: args.output,
|
|
212
|
+
descriptionContext
|
|
213
|
+
},
|
|
214
|
+
deps
|
|
215
|
+
);
|
|
216
|
+
} else {
|
|
217
|
+
throw new ApiError("VALIDATION_ERROR", "Pass the image file, or --run-id to save the run's own output");
|
|
218
|
+
}
|
|
219
|
+
await waitForReadyImage(deps, upload.imageId, { timeoutMs: imageProcessingTimeoutMs });
|
|
220
|
+
const result = await publishImageAsCreative(deps, {
|
|
221
|
+
imageId: upload.imageId,
|
|
222
|
+
title,
|
|
223
|
+
sourceReferenceUrl,
|
|
224
|
+
slug: args.slug,
|
|
225
|
+
runId: args.runId,
|
|
226
|
+
// Attribute the publish to the driving chat (injected by the bridge).
|
|
227
|
+
chatId: chatIdFromEnv()
|
|
228
|
+
});
|
|
229
|
+
if (args.slug && args.runId) {
|
|
230
|
+
const cwd = process.cwd();
|
|
231
|
+
const root = deps.workspaceRoot ?? findWorkspaceRoot(cwd) ?? cwd;
|
|
232
|
+
const status = await advanceDefinitionStatus(definitionPathFor(root, args.slug), "published");
|
|
233
|
+
if (status === "updated") return { ...result, definitionStatus: "published" };
|
|
234
|
+
}
|
|
235
|
+
return result;
|
|
236
|
+
}
|
|
237
|
+
async function publishVideoCreative(args, deps = defaultVideoApiDeps) {
|
|
238
|
+
const title = args.title.trim();
|
|
239
|
+
if (!title) {
|
|
240
|
+
throw new ApiError("VALIDATION_ERROR", "--title is required");
|
|
241
|
+
}
|
|
242
|
+
const slug = args.slug?.trim();
|
|
243
|
+
if (!slug) {
|
|
244
|
+
throw new ApiError(
|
|
245
|
+
"VALIDATION_ERROR",
|
|
246
|
+
"--slug is required for a video: name the creative (src/creatives/<slug>/) this render belongs to"
|
|
247
|
+
);
|
|
248
|
+
}
|
|
249
|
+
const sourceReferenceUrl = parseOptionalUrl(args.sourceReferenceUrl);
|
|
250
|
+
const contentType = detectVideoContentType(args.file, {
|
|
251
|
+
allowedContentTypes: creativeVideoContentTypes,
|
|
252
|
+
unsupportedMessage: UNSUPPORTED_CREATIVE_FILE
|
|
253
|
+
});
|
|
254
|
+
const { videoId } = await uploadLocalVideo(
|
|
255
|
+
{ file: args.file, contentType, descriptionContext: args.context ?? `Video ad creative: ${title}` },
|
|
256
|
+
deps
|
|
257
|
+
);
|
|
258
|
+
await waitForPlayableVideo(deps, videoId, { timeoutMs: videoProcessingTimeoutMs });
|
|
259
|
+
const body = { videoId, title, slug };
|
|
260
|
+
if (args.runId) body.runId = args.runId;
|
|
261
|
+
if (sourceReferenceUrl) body.sourceReferenceUrl = sourceReferenceUrl;
|
|
262
|
+
const chatId = chatIdFromEnv();
|
|
263
|
+
if (chatId) body.chatId = chatId;
|
|
264
|
+
return deps.post("/api/creatives/publish-video", body);
|
|
265
|
+
}
|
|
266
|
+
var publishCommand = defineCommand({
|
|
267
|
+
meta: { name: "publish", description: DESCRIPTION },
|
|
268
|
+
// Checked in `run` rather than by citty, so a missing value answers with the JSON envelope.
|
|
269
|
+
args: { ...ARGS, file: { ...ARGS.file, type: "positional" }, title: { ...ARGS.title, required: false } },
|
|
270
|
+
run: async ({ args }) => {
|
|
271
|
+
try {
|
|
272
|
+
const file = args.file;
|
|
273
|
+
const title = args.title;
|
|
274
|
+
const runId = args.runId;
|
|
275
|
+
if (!file && !runId) {
|
|
276
|
+
writeJson({
|
|
277
|
+
ok: false,
|
|
278
|
+
error: {
|
|
279
|
+
code: "VALIDATION_ERROR",
|
|
280
|
+
message: "Image or video path is required (or --run-id to save the run's own image)"
|
|
281
|
+
}
|
|
282
|
+
});
|
|
283
|
+
process.exit(1);
|
|
284
|
+
}
|
|
285
|
+
if (!title) {
|
|
286
|
+
writeJson({ ok: false, error: { code: "VALIDATION_ERROR", message: "--title is required" } });
|
|
287
|
+
process.exit(1);
|
|
288
|
+
}
|
|
289
|
+
const publishArgs = {
|
|
290
|
+
file: file || void 0,
|
|
291
|
+
title,
|
|
292
|
+
context: args.context,
|
|
293
|
+
sourceReferenceUrl: args.sourceReferenceUrl,
|
|
294
|
+
slug: args.slug,
|
|
295
|
+
runId
|
|
296
|
+
};
|
|
297
|
+
if (file && isVideoFile(file)) {
|
|
298
|
+
writeJson(await publishVideoCreative({ ...publishArgs, file }));
|
|
299
|
+
return;
|
|
300
|
+
}
|
|
301
|
+
const data = await publishCreative({
|
|
302
|
+
...publishArgs,
|
|
303
|
+
output: args.output
|
|
304
|
+
});
|
|
305
|
+
writeJson({ ok: true, data });
|
|
306
|
+
} catch (err) {
|
|
307
|
+
if (err instanceof ApiError) {
|
|
308
|
+
writeJson({ ok: false, error: { code: err.code, message: err.message } });
|
|
309
|
+
process.exit(1);
|
|
310
|
+
}
|
|
311
|
+
writeJson({ ok: false, error: { code: "INTERNAL_ERROR", message: "Unexpected error" } });
|
|
312
|
+
process.exit(1);
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
});
|
|
316
|
+
export {
|
|
317
|
+
detectCreativeContentType,
|
|
318
|
+
publishCommand,
|
|
319
|
+
publishCreative,
|
|
320
|
+
publishVideoCreative
|
|
321
|
+
};
|
|
322
|
+
//# sourceMappingURL=publish-WDHGUTNP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/commands/creatives/publish.ts"],"sourcesContent":["import { Buffer } from \"node:buffer\";\nimport type {\n CreativesPublishVideoRequest,\n CreativesPublishVideoResponse,\n CreativesRunData,\n CreativesRunOutput,\n} from \"@baker/api\";\nimport { defineCommand } from \"citty\";\nimport { ApiError } from \"../../client.ts\";\nimport { sha256Hex } from \"../../engine/storage/sha256.ts\";\nimport { optionalChatId } from \"../../env.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { advanceDefinitionStatus, definitionPathFor } from \"../canvas/definition-status.ts\";\nimport { findWorkspaceRoot } from \"../canvas/normalize-paths.ts\";\nimport { fetchRunRecord } from \"../canvas/run-history.ts\";\nimport {\n defaultImageApiDeps,\n detectImageContentType,\n type ImageApiDeps,\n imageProcessingTimeoutMs,\n publishImageAsCreative,\n uploadImageBytes,\n uploadLocalImage,\n waitForReadyImage,\n} from \"../images/api.ts\";\nimport {\n defaultVideoApiDeps,\n detectVideoContentType,\n isVideoFile,\n uploadLocalVideo,\n type VideoApiDeps,\n videoProcessingTimeoutMs,\n waitForPlayableVideo,\n} from \"../videos/api.ts\";\n\nconst creativeContentTypes = [\"image/png\", \"image/jpeg\", \"image/webp\"] as const;\nconst creativeVideoContentTypes = [\"video/mp4\", \"video/quicktime\", \"video/webm\"] as const;\nconst UNSUPPORTED_CREATIVE_FILE =\n \"Unsupported creative file extension. Use PNG, JPG or WebP for an image, MP4, MOV or WebM for a video.\";\n\ntype CreativeReference = {\n type: \"creative\";\n slug: string;\n creativeId: string;\n title: string;\n asset: {\n kind: \"static_image\";\n imageId: string;\n imageUrl: string;\n storageKey?: string;\n width?: number;\n height?: number;\n aspectRatio?: number;\n };\n imageUrl: string;\n thumbnailUrl: string;\n storageKey?: string;\n sourceReferenceUrl?: string;\n width?: number;\n height?: number;\n aspectRatio?: number;\n};\n\ntype CreativesPublishResult = {\n creativeId: string;\n imageId: string;\n reference: CreativeReference;\n /** Set when `src/creatives/<slug>/_definition.md` was moved to `published`. */\n definitionStatus?: \"published\";\n};\n\nconst DESCRIPTION = `Save a finished creative to Baker Creatives and return a creative reference: a static image (PNG/JPG/WebP) or a finished video render (MP4/MOV/WebM).\nStart here:\n baker creatives publish ./canvas/r_01K…/final_4x5.png --title \"Spring Offer\" --slug spring-offer --run-id r_01K…\n baker creatives publish --title \"Spring Offer\" --slug spring-offer --run-id r_01K… --output 4:5\n baker creatives publish ./canvas/r_01K…/final.mp4 --title \"Spring Offer Reel\" --slug spring-offer --run-id r_01K…\nWith --run-id and no file, the run's own saved image is published (--output picks one when the run made several). A video goes to the company's video library first and is saved once it plays (up to 3 minutes); it needs the file and --slug. Choose and save the finished version yourself, including in the turn that rendered it. Saving pins that version without recording user approval or putting an ad live. An image publish marks the creative's _definition.md published.`;\n\nconst ARGS = {\n file: {\n type: \"string\",\n description:\n \"Local creative file: PNG/JPG/WebP image or MP4/MOV/WebM video. Optional for an image with --run-id: the run's saved output is used instead.\",\n required: false,\n },\n title: { type: \"string\", description: \"Human title for the creative output\", required: true },\n context: { type: \"string\", description: \"Optional describe context for the image asset\", required: false },\n sourceReferenceUrl: {\n type: \"string\",\n description: \"Optional URL of the original reference ad\",\n required: false,\n },\n slug: {\n type: \"string\",\n description:\n \"Creative slug (src/creatives/<slug>/). Attaches the image or video to that creative's row. Required for a video\",\n required: false,\n },\n runId: {\n type: \"string\",\n description: \"Canvas run id (r_…) of the finished generation to pin as published\",\n required: false,\n },\n output: {\n type: \"string\",\n description:\n \"With --run-id and no file: which of the run's outputs to save when it made several, by label (e.g. 4:5), slot, or number (1 = first).\",\n required: false,\n },\n} as const;\n\nregisterSchema({ command: \"creatives.publish\", description: DESCRIPTION, args: ARGS });\n\nexport function detectCreativeContentType(filePath: string): string {\n return detectImageContentType(filePath, {\n allowedContentTypes: creativeContentTypes,\n unsupportedMessage: UNSUPPORTED_CREATIVE_FILE,\n });\n}\n\nfunction chatIdFromEnv(): string | undefined {\n // Soft read: publish attribution is best-effort. Direct callers (tests,\n // local one-offs) may run without the full env contract — missing creds\n // already fail loudly at the API call itself.\n return optionalChatId();\n}\n\nfunction parseOptionalUrl(value: string | undefined): string | undefined {\n if (value === undefined || value.trim() === \"\") {\n return undefined;\n }\n\n try {\n return new URL(value).toString();\n } catch {\n throw new ApiError(\"VALIDATION_ERROR\", \"--source-reference-url must be a valid URL\");\n }\n}\n\n/** What publishing needs beyond the image API: fetching a run's output, and where the workspace is. */\nexport type PublishDeps = ImageApiDeps & {\n download?: (url: string) => Promise<Buffer>;\n workspaceRoot?: string;\n};\n\nasync function downloadBytes(url: string): Promise<Buffer> {\n const res = await fetch(url);\n if (!res.ok) throw new ApiError(\"UNAVAILABLE\", `Could not read the run's output (${res.status} ${res.statusText})`);\n return Buffer.from(await res.arrayBuffer());\n}\n\n/**\n * The run's result, when it is still images, in the order the run delivered them. Only the\n * final outputs of a finished run count: the frames and reference sheets its steps made on\n * the way are images too, and publishing one of those would save a stand-in as the creative.\n */\nfunction runImages(run: CreativesRunData): CreativesRunOutput[] {\n if (run.status !== \"completed\") {\n throw new ApiError(\n \"VALIDATION_ERROR\",\n `Run ${run.runId} did not finish (${run.status}), so it has no result to publish. Finish the run first, or pass the image file.`,\n );\n }\n const finals = run.finalOutputs.filter((o) => typeof o.url === \"string\");\n if (finals.some((o) => !creativeContentTypes.some((t) => t === o.mime))) {\n throw new ApiError(\n \"VALIDATION_ERROR\",\n `Run ${run.runId} made a video, not a still image. Publish the video file: baker creatives publish ./canvas/${run.runId}/<file>.mp4 --slug <slug> --run-id ${run.runId}.`,\n );\n }\n return finals;\n}\n\nfunction describeOutputs(outputs: CreativesRunOutput[]): string {\n return outputs.map((o, i) => `${i + 1}: ${o.label ?? o.slot}`).join(\", \");\n}\n\n/** The one output to save: the only one, or the one `choice` names by label, slot or number. */\nfunction chooseOutput(run: CreativesRunData, choice: string | undefined): CreativesRunOutput {\n const images = runImages(run);\n if (images.length === 0) {\n throw new ApiError(\n \"VALIDATION_ERROR\",\n `Run ${run.runId} has no saved image to publish. Pass the image file instead.`,\n );\n }\n if (choice === undefined) {\n const [only] = images;\n if (images.length === 1 && only) return only;\n throw new ApiError(\n \"VALIDATION_ERROR\",\n `Run ${run.runId} made ${images.length} images; pick one with --output (${describeOutputs(images)}).`,\n );\n }\n const wanted = choice.trim();\n const byNumber = /^\\d+$/.test(wanted) ? images[Number(wanted) - 1] : undefined;\n const found = byNumber ?? images.find((o) => o.label === wanted || o.slot === wanted);\n if (!found) {\n throw new ApiError(\"VALIDATION_ERROR\", `Run ${run.runId} has no output \"${wanted}\" (${describeOutputs(images)}).`);\n }\n return found;\n}\n\nconst EXTENSION: Record<string, string> = { \"image/png\": \".png\", \"image/jpeg\": \".jpg\", \"image/webp\": \".webp\" };\n\n/**\n * Upload the run's saved output, byte for byte: the version that was chosen, not whichever\n * local file happens to sit at a path (and it works in a workspace that never had one).\n */\nasync function uploadRunOutput(\n args: {\n runId: string;\n output: string | undefined;\n descriptionContext: string;\n },\n deps: PublishDeps,\n): Promise<{ imageId: string }> {\n const run = await fetchRunRecord(args.runId, deps.post);\n if (!run) {\n throw new ApiError(\n \"NOT_FOUND\",\n `No run \"${args.runId}\" in this company's run history. Pass the image file instead.`,\n );\n }\n const chosen = chooseOutput(run, args.output);\n const bytes = await (deps.download ?? downloadBytes)(String(chosen.url));\n if (sha256Hex(bytes) !== chosen.sha256) {\n throw new ApiError(\n \"VALIDATION_ERROR\",\n `The saved output of run ${run.runId} does not match its recorded fingerprint`,\n );\n }\n const name = (chosen.label ?? chosen.slot).replace(/[^a-z0-9.-]+/gi, \"_\");\n return uploadImageBytes(\n {\n bytes,\n contentType: chosen.mime,\n originalFilename: `${run.runId}-${name}${EXTENSION[chosen.mime] ?? \"\"}`,\n source: \"ai_generated\",\n descriptionContext: args.descriptionContext,\n },\n deps,\n );\n}\n\nexport async function publishCreative(\n args: {\n file?: string;\n title: string;\n context?: string;\n sourceReferenceUrl?: string;\n slug?: string;\n runId?: string;\n output?: string;\n },\n deps: PublishDeps = defaultImageApiDeps,\n): Promise<CreativesPublishResult> {\n const title = args.title.trim();\n if (!title) {\n throw new ApiError(\"VALIDATION_ERROR\", \"--title is required\");\n }\n\n const sourceReferenceUrl = parseOptionalUrl(args.sourceReferenceUrl);\n const descriptionContext = args.context ?? `Static ad creative: ${title}`;\n let upload: { imageId: string };\n if (args.file) {\n upload = await uploadLocalImage(\n {\n file: args.file,\n contentType: detectCreativeContentType(args.file),\n source: \"ai_generated\",\n descriptionContext,\n },\n deps,\n );\n } else if (args.runId) {\n upload = await uploadRunOutput(\n {\n runId: args.runId,\n output: args.output,\n descriptionContext,\n },\n deps,\n );\n } else {\n throw new ApiError(\"VALIDATION_ERROR\", \"Pass the image file, or --run-id to save the run's own output\");\n }\n await waitForReadyImage(deps, upload.imageId, { timeoutMs: imageProcessingTimeoutMs });\n const result = await publishImageAsCreative(deps, {\n imageId: upload.imageId,\n title,\n sourceReferenceUrl,\n slug: args.slug,\n runId: args.runId,\n // Attribute the publish to the driving chat (injected by the bridge).\n chatId: chatIdFromEnv(),\n });\n // The lifecycle field moves with what happened: saving a finished version marks the\n // creative published in its definition, so nobody edits it by hand.\n if (args.slug && args.runId) {\n const cwd = process.cwd();\n const root = deps.workspaceRoot ?? findWorkspaceRoot(cwd) ?? cwd;\n const status = await advanceDefinitionStatus(definitionPathFor(root, args.slug), \"published\");\n if (status === \"updated\") return { ...result, definitionStatus: \"published\" };\n }\n return result;\n}\n\n/**\n * `baker creatives publish <video>`: upload the render to the company's video\n * library, wait until Baker can play it, then save it on the creative. The\n * image path above is untouched by this.\n */\nexport async function publishVideoCreative(\n args: { file: string; title: string; context?: string; sourceReferenceUrl?: string; slug?: string; runId?: string },\n deps: VideoApiDeps = defaultVideoApiDeps,\n): Promise<CreativesPublishVideoResponse> {\n const title = args.title.trim();\n if (!title) {\n throw new ApiError(\"VALIDATION_ERROR\", \"--title is required\");\n }\n const slug = args.slug?.trim();\n if (!slug) {\n throw new ApiError(\n \"VALIDATION_ERROR\",\n \"--slug is required for a video: name the creative (src/creatives/<slug>/) this render belongs to\",\n );\n }\n const sourceReferenceUrl = parseOptionalUrl(args.sourceReferenceUrl);\n const contentType = detectVideoContentType(args.file, {\n allowedContentTypes: creativeVideoContentTypes,\n unsupportedMessage: UNSUPPORTED_CREATIVE_FILE,\n });\n const { videoId } = await uploadLocalVideo(\n { file: args.file, contentType, descriptionContext: args.context ?? `Video ad creative: ${title}` },\n deps,\n );\n await waitForPlayableVideo(deps, videoId, { timeoutMs: videoProcessingTimeoutMs });\n const body: CreativesPublishVideoRequest = { videoId, title, slug };\n if (args.runId) body.runId = args.runId;\n if (sourceReferenceUrl) body.sourceReferenceUrl = sourceReferenceUrl;\n const chatId = chatIdFromEnv();\n if (chatId) body.chatId = chatId;\n return deps.post<CreativesPublishVideoResponse>(\"/api/creatives/publish-video\", body);\n}\n\nexport const publishCommand = defineCommand({\n meta: { name: \"publish\", description: DESCRIPTION },\n // Checked in `run` rather than by citty, so a missing value answers with the JSON envelope.\n args: { ...ARGS, file: { ...ARGS.file, type: \"positional\" }, title: { ...ARGS.title, required: false } },\n run: async ({ args }) => {\n try {\n const file = args.file as string | undefined;\n const title = args.title as string | undefined;\n const runId = args.runId as string | undefined;\n if (!file && !runId) {\n writeJson({\n ok: false,\n error: {\n code: \"VALIDATION_ERROR\",\n message: \"Image or video path is required (or --run-id to save the run's own image)\",\n },\n });\n process.exit(1);\n }\n if (!title) {\n writeJson({ ok: false, error: { code: \"VALIDATION_ERROR\", message: \"--title is required\" } });\n process.exit(1);\n }\n const publishArgs = {\n file: file || undefined,\n title,\n context: args.context as string | undefined,\n sourceReferenceUrl: args.sourceReferenceUrl as string | undefined,\n slug: args.slug as string | undefined,\n runId,\n };\n if (file && isVideoFile(file)) {\n writeJson(await publishVideoCreative({ ...publishArgs, file }));\n return;\n }\n const data = await publishCreative({\n ...publishArgs,\n output: args.output as string | undefined,\n });\n writeJson({ ok: true, data });\n } catch (err) {\n if (err instanceof ApiError) {\n writeJson({ ok: false, error: { code: err.code, message: err.message } });\n process.exit(1);\n }\n writeJson({ ok: false, error: { code: \"INTERNAL_ERROR\", message: \"Unexpected error\" } });\n process.exit(1);\n }\n },\n});\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
import {
|
|
2
|
+
resolvePropertyId
|
|
3
|
+
} from "./chunk-ZO2YLHRW.js";
|
|
4
|
+
import {
|
|
5
|
+
buildQueryCacheKey,
|
|
6
|
+
cacheGet,
|
|
7
|
+
cacheSet,
|
|
8
|
+
getQueryTtl,
|
|
9
|
+
handleConnectionError,
|
|
10
|
+
isNotConnectedError,
|
|
11
|
+
toCsvRow,
|
|
12
|
+
writeAdsOutput,
|
|
13
|
+
writeJsonEnvelope
|
|
14
|
+
} from "./chunk-LHNL6JM2.js";
|
|
15
|
+
import {
|
|
16
|
+
ApiError,
|
|
17
|
+
apiPost
|
|
18
|
+
} from "./chunk-KB5XJHQX.js";
|
|
19
|
+
import "./chunk-YONSWWCF.js";
|
|
20
|
+
import "./chunk-QXDEZKAR.js";
|
|
21
|
+
import {
|
|
22
|
+
registerSchema
|
|
23
|
+
} from "./chunk-4DM6OAQ6.js";
|
|
24
|
+
import "./chunk-YQSBHWOI.js";
|
|
25
|
+
|
|
26
|
+
// src/commands/ga4/query.ts
|
|
27
|
+
import { appendFileSync, existsSync, readFileSync, writeFileSync } from "fs";
|
|
28
|
+
import { resolve } from "path";
|
|
29
|
+
import { defineCommand } from "citty";
|
|
30
|
+
|
|
31
|
+
// src/commands/ga4/presets.ts
|
|
32
|
+
var GA4_PRESETS = [
|
|
33
|
+
{
|
|
34
|
+
name: "tracking-health",
|
|
35
|
+
description: "Compare GA4 sessions to GAds clicks \u2014 flag >20% discrepancy",
|
|
36
|
+
playbook: "[07] Discrepancy Check"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: "lp-performance",
|
|
40
|
+
description: "Landing page UX diagnostic \u2014 flag duration <10s as message mismatch",
|
|
41
|
+
playbook: "[06] LP Diagnostic"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
name: "traffic-quality",
|
|
45
|
+
description: "Warm traffic trap \u2014 flag >40% returning user conversions",
|
|
46
|
+
playbook: "[06] Warm Traffic Trap"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: "funnel-leakage",
|
|
50
|
+
description: "Funnel drop-off analysis between form events",
|
|
51
|
+
playbook: "[06] Funnel Analysis"
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
name: "first-touch",
|
|
55
|
+
description: "First-touch attribution \u2014 true acquisition value of channels",
|
|
56
|
+
playbook: "First-Touch Attribution"
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
name: "traffic-overview",
|
|
60
|
+
description: "General traffic trends by date and source",
|
|
61
|
+
playbook: "General"
|
|
62
|
+
}
|
|
63
|
+
];
|
|
64
|
+
|
|
65
|
+
// src/commands/ga4/query.ts
|
|
66
|
+
registerSchema({
|
|
67
|
+
command: "ga4.query",
|
|
68
|
+
description: "Run GA4 Data API reports. Use --preset for playbook-aligned queries (primary usage) or --dimensions/--metrics for free-form queries.",
|
|
69
|
+
args: {
|
|
70
|
+
"property-id": { type: "string", description: "GA4 property ID (auto-resolved if not provided)", required: false },
|
|
71
|
+
preset: {
|
|
72
|
+
type: "string",
|
|
73
|
+
description: "Named preset (tracking-health, lp-performance, traffic-quality, funnel-leakage, first-touch, traffic-overview)",
|
|
74
|
+
required: false
|
|
75
|
+
},
|
|
76
|
+
dimensions: { type: "string", description: "Comma-separated dimension names (escape hatch)", required: false },
|
|
77
|
+
metrics: { type: "string", description: "Comma-separated metric names (escape hatch)", required: false },
|
|
78
|
+
days: { type: "string", description: "Lookback window in days (default: 30)", required: false },
|
|
79
|
+
"start-date": {
|
|
80
|
+
type: "string",
|
|
81
|
+
description: "Explicit start date (YYYY-MM-DD or GA4 relative like '30daysAgo')",
|
|
82
|
+
required: false
|
|
83
|
+
},
|
|
84
|
+
"end-date": { type: "string", description: "Explicit end date (YYYY-MM-DD or 'yesterday')", required: false },
|
|
85
|
+
limit: { type: "string", description: "Max rows (default: 1000)", required: false },
|
|
86
|
+
"list-presets": { type: "boolean", description: "List available presets", required: false },
|
|
87
|
+
out: { type: "string", description: "Write data to file (.csv, .jsonl, .json)", required: false },
|
|
88
|
+
append: { type: "boolean", description: "Append to existing file", required: false },
|
|
89
|
+
output: { type: "string", description: "Format: json|csv|jsonl|md", required: false, default: "json" },
|
|
90
|
+
"no-cache": { type: "boolean", description: "Skip cache", required: false }
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
function extractFields(rows) {
|
|
94
|
+
const first = rows[0];
|
|
95
|
+
return first ? Object.keys(first) : [];
|
|
96
|
+
}
|
|
97
|
+
function writeRowsToFile(filePath, rows, append) {
|
|
98
|
+
const fields = extractFields(rows);
|
|
99
|
+
const ext = filePath.split(".").pop()?.toLowerCase();
|
|
100
|
+
if (ext === "csv") {
|
|
101
|
+
if (!append || !existsSync(filePath)) {
|
|
102
|
+
writeFileSync(filePath, `${toCsvRow(fields)}
|
|
103
|
+
`, "utf-8");
|
|
104
|
+
}
|
|
105
|
+
const csvRows = rows.map((row) => toCsvRow(fields.map((f) => String(row[f] ?? ""))));
|
|
106
|
+
appendFileSync(filePath, `${csvRows.join("\n")}
|
|
107
|
+
`, "utf-8");
|
|
108
|
+
} else if (ext === "jsonl") {
|
|
109
|
+
const lines = rows.map((row) => JSON.stringify(row));
|
|
110
|
+
const content = `${lines.join("\n")}
|
|
111
|
+
`;
|
|
112
|
+
if (append && existsSync(filePath)) {
|
|
113
|
+
appendFileSync(filePath, content, "utf-8");
|
|
114
|
+
} else {
|
|
115
|
+
writeFileSync(filePath, content, "utf-8");
|
|
116
|
+
}
|
|
117
|
+
} else if (append && existsSync(filePath)) {
|
|
118
|
+
const existing = JSON.parse(readFileSync(filePath, "utf-8"));
|
|
119
|
+
writeFileSync(filePath, JSON.stringify([...existing, ...rows], null, 2), "utf-8");
|
|
120
|
+
} else {
|
|
121
|
+
writeFileSync(filePath, JSON.stringify(rows, null, 2), "utf-8");
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
function outputRows(rows, args, response, cached) {
|
|
125
|
+
if (args.out) {
|
|
126
|
+
const filePath = resolve(args.out);
|
|
127
|
+
writeRowsToFile(filePath, rows, !!args.append);
|
|
128
|
+
writeJsonEnvelope({ ok: true, file: filePath, rows: rows.length, ...cached && { cached: true } });
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
const format = args.output || "json";
|
|
132
|
+
if (format !== "json") {
|
|
133
|
+
writeAdsOutput(rows, format);
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
writeJsonEnvelope({ ...response, ...cached && { cached: true } });
|
|
137
|
+
}
|
|
138
|
+
function buildRequestBody(args, propertyId, useCache) {
|
|
139
|
+
const body = { propertyId };
|
|
140
|
+
if (args.preset) body.preset = args.preset;
|
|
141
|
+
if (args.dimensions) body.dimensions = args.dimensions.split(",").map((d) => d.trim());
|
|
142
|
+
if (args.metrics) body.metrics = args.metrics.split(",").map((m) => m.trim());
|
|
143
|
+
if (args.days) body.days = Number(args.days);
|
|
144
|
+
if (args["start-date"]) body.startDate = args["start-date"];
|
|
145
|
+
if (args["end-date"]) body.endDate = args["end-date"];
|
|
146
|
+
if (args.limit) body.limit = Number(args.limit);
|
|
147
|
+
if (!useCache) body.skipCache = true;
|
|
148
|
+
return body;
|
|
149
|
+
}
|
|
150
|
+
function handleError(err) {
|
|
151
|
+
if (err instanceof ApiError) {
|
|
152
|
+
if (isNotConnectedError(err.code, err.message)) {
|
|
153
|
+
handleConnectionError("ga4", err.message);
|
|
154
|
+
}
|
|
155
|
+
writeJsonEnvelope({ ok: false, error: { code: err.code, message: err.message } });
|
|
156
|
+
process.exit(1);
|
|
157
|
+
}
|
|
158
|
+
writeJsonEnvelope({
|
|
159
|
+
ok: false,
|
|
160
|
+
error: { code: "NETWORK_ERROR", message: err instanceof Error ? err.message : "Unexpected error" }
|
|
161
|
+
});
|
|
162
|
+
process.exit(1);
|
|
163
|
+
}
|
|
164
|
+
var queryCommand = defineCommand({
|
|
165
|
+
meta: {
|
|
166
|
+
name: "query",
|
|
167
|
+
description: `Run GA4 Data API reports. Preset-first with free-form escape hatch.
|
|
168
|
+
|
|
169
|
+
Presets (primary usage):
|
|
170
|
+
baker ga4 query --preset tracking-health
|
|
171
|
+
baker ga4 query --preset lp-performance --days 14
|
|
172
|
+
baker ga4 query --list-presets
|
|
173
|
+
|
|
174
|
+
Free-form (escape hatch):
|
|
175
|
+
baker ga4 query --dimensions "date,sessionSourceMedium" --metrics "sessions,conversions"
|
|
176
|
+
baker ga4 query --metrics "eventCount" --dimensions "eventName" --days 7`
|
|
177
|
+
},
|
|
178
|
+
args: {
|
|
179
|
+
"property-id": { type: "string", description: "GA4 property ID", required: false },
|
|
180
|
+
preset: { type: "string", description: "Named preset", required: false },
|
|
181
|
+
dimensions: { type: "string", description: "Comma-separated dimensions", required: false },
|
|
182
|
+
metrics: { type: "string", description: "Comma-separated metrics", required: false },
|
|
183
|
+
days: { type: "string", description: "Lookback days (default: 30)", required: false },
|
|
184
|
+
"start-date": { type: "string", description: "Start date override", required: false },
|
|
185
|
+
"end-date": { type: "string", description: "End date override", required: false },
|
|
186
|
+
limit: { type: "string", description: "Max rows (default: 1000)", required: false },
|
|
187
|
+
"list-presets": { type: "boolean", description: "List presets", required: false },
|
|
188
|
+
out: { type: "string", description: "Output file path", required: false },
|
|
189
|
+
append: { type: "boolean", description: "Append to file", required: false },
|
|
190
|
+
output: { type: "string", description: "Format: json|csv|jsonl|md", required: false, default: "json" },
|
|
191
|
+
"no-cache": { type: "boolean", description: "Skip cache", required: false }
|
|
192
|
+
},
|
|
193
|
+
run: async ({ args }) => {
|
|
194
|
+
if (args["list-presets"]) {
|
|
195
|
+
writeJsonEnvelope({
|
|
196
|
+
ok: true,
|
|
197
|
+
data: GA4_PRESETS.map((p) => ({ name: p.name, description: p.description, playbook: p.playbook }))
|
|
198
|
+
});
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
201
|
+
if (!args.preset && !args.metrics) {
|
|
202
|
+
writeJsonEnvelope({
|
|
203
|
+
ok: false,
|
|
204
|
+
error: {
|
|
205
|
+
code: "VALIDATION_ERROR",
|
|
206
|
+
message: "Provide --preset or --metrics. Run --list-presets to see options."
|
|
207
|
+
}
|
|
208
|
+
});
|
|
209
|
+
process.exit(1);
|
|
210
|
+
}
|
|
211
|
+
const propertyId = await resolvePropertyId(args);
|
|
212
|
+
const useCache = !args["no-cache"];
|
|
213
|
+
const body = buildRequestBody(args, propertyId, useCache);
|
|
214
|
+
const cacheKey = buildQueryCacheKey(propertyId, JSON.stringify(body));
|
|
215
|
+
if (useCache) {
|
|
216
|
+
const cached = cacheGet("ga4-queries", cacheKey);
|
|
217
|
+
if (cached) {
|
|
218
|
+
outputRows(cached.data.data ?? [], args, cached.data, true);
|
|
219
|
+
return;
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
try {
|
|
223
|
+
const response = await apiPost("/api/ga4/query", body);
|
|
224
|
+
if (useCache) {
|
|
225
|
+
cacheSet("ga4-queries", cacheKey, response, getQueryTtl(JSON.stringify(body)));
|
|
226
|
+
}
|
|
227
|
+
outputRows(response.data ?? [], args, response, false);
|
|
228
|
+
} catch (err) {
|
|
229
|
+
handleError(err);
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
});
|
|
233
|
+
export {
|
|
234
|
+
queryCommand
|
|
235
|
+
};
|
|
236
|
+
//# sourceMappingURL=query-26T7XATH.js.map
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import {
|
|
2
|
+
buildFileSummary,
|
|
3
|
+
buildQueryEnvelope,
|
|
4
|
+
completenessWarnings,
|
|
5
|
+
effectiveRowLimit,
|
|
6
|
+
keywordServingOptions,
|
|
7
|
+
missingFieldWarnings,
|
|
8
|
+
missingFieldWarningsFor,
|
|
9
|
+
outputResults,
|
|
10
|
+
pageCacheKey,
|
|
11
|
+
parseQueryLimit,
|
|
12
|
+
parseSelectedFields,
|
|
13
|
+
queryCommand,
|
|
14
|
+
queryPageSize,
|
|
15
|
+
resolveGaqlInput,
|
|
16
|
+
resultColumns,
|
|
17
|
+
runQuery,
|
|
18
|
+
servingScopeWarnings,
|
|
19
|
+
shouldReadCache,
|
|
20
|
+
summariseWarnings,
|
|
21
|
+
unobservedFields,
|
|
22
|
+
unobservedSelectedFields,
|
|
23
|
+
unwrittenColumnWarnings,
|
|
24
|
+
warningLines
|
|
25
|
+
} from "./chunk-KWTKAYCG.js";
|
|
26
|
+
import "./chunk-JPK34QPS.js";
|
|
27
|
+
import "./chunk-TRLVH7T3.js";
|
|
28
|
+
import "./chunk-7VHPAGPK.js";
|
|
29
|
+
import "./chunk-LHNL6JM2.js";
|
|
30
|
+
import "./chunk-ML7DLFFY.js";
|
|
31
|
+
import "./chunk-KB5XJHQX.js";
|
|
32
|
+
import "./chunk-YONSWWCF.js";
|
|
33
|
+
import "./chunk-QXDEZKAR.js";
|
|
34
|
+
import "./chunk-4DM6OAQ6.js";
|
|
35
|
+
import "./chunk-YQSBHWOI.js";
|
|
36
|
+
export {
|
|
37
|
+
buildFileSummary,
|
|
38
|
+
buildQueryEnvelope,
|
|
39
|
+
completenessWarnings,
|
|
40
|
+
effectiveRowLimit,
|
|
41
|
+
keywordServingOptions,
|
|
42
|
+
missingFieldWarnings,
|
|
43
|
+
missingFieldWarningsFor,
|
|
44
|
+
outputResults,
|
|
45
|
+
pageCacheKey,
|
|
46
|
+
parseQueryLimit,
|
|
47
|
+
parseSelectedFields,
|
|
48
|
+
queryCommand,
|
|
49
|
+
queryPageSize,
|
|
50
|
+
resolveGaqlInput,
|
|
51
|
+
resultColumns,
|
|
52
|
+
runQuery,
|
|
53
|
+
servingScopeWarnings,
|
|
54
|
+
shouldReadCache,
|
|
55
|
+
summariseWarnings,
|
|
56
|
+
unobservedFields,
|
|
57
|
+
unobservedSelectedFields,
|
|
58
|
+
unwrittenColumnWarnings,
|
|
59
|
+
warningLines
|
|
60
|
+
};
|
|
61
|
+
//# sourceMappingURL=query-IJVVSB54.js.map
|