@koda-sl/baker-cli 0.512.0 → 0.514.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 +3 -3
- package/dist/account-D6LEVVWT.js +82 -0
- package/dist/account-D6LEVVWT.js.map +1 -0
- package/dist/account-SGK3IJ6N.js +82 -0
- package/dist/account-SGK3IJ6N.js.map +1 -0
- package/dist/account-assets-J5Z4URLQ.js +290 -0
- package/dist/account-level-4SBYYHRS.js +611 -0
- package/dist/account-level-4SBYYHRS.js.map +1 -0
- package/dist/account-reads-2MSUVG46.js +219 -0
- package/dist/account-users-MHC7AD6K.js +64 -0
- package/dist/account-users-MHC7AD6K.js.map +1 -0
- package/dist/account-writes-QQQC54WC.js +68 -0
- package/dist/account-writes-QQQC54WC.js.map +1 -0
- package/dist/accounts-2O6I7YBN.js +80 -0
- package/dist/accounts-2O6I7YBN.js.map +1 -0
- package/dist/accounts-QNE5QWBG.js +701 -0
- package/dist/accounts-QNE5QWBG.js.map +1 -0
- package/dist/actions-D7OWCP36.js +55 -0
- package/dist/activecampaign-LBS4M4C4.js +938 -0
- package/dist/activecampaign-LBS4M4C4.js.map +1 -0
- package/dist/ad-group-writes-CJTTUUIT.js +172 -0
- package/dist/ad-group-writes-CJTTUUIT.js.map +1 -0
- package/dist/ad-groups-HLGSVH74.js +70 -0
- package/dist/ad-groups-HLGSVH74.js.map +1 -0
- package/dist/ad-writes-3UE3U7VE.js +176 -0
- package/dist/ad-writes-3UE3U7VE.js.map +1 -0
- package/dist/add-HFQB2NTU.js +107 -0
- package/dist/add-HFQB2NTU.js.map +1 -0
- package/dist/add-IUYE5H6A.js +305 -0
- package/dist/add-IUYE5H6A.js.map +1 -0
- package/dist/ads-HLUJB5SQ.js +48 -0
- package/dist/ads-MAOI7S6V.js +115 -0
- package/dist/ads-PYNDMHUD.js +79 -0
- package/dist/ads-PYNDMHUD.js.map +1 -0
- package/dist/adsets-QRKICEFD.js +182 -0
- package/dist/advertisers-XXM6POO5.js +123 -0
- package/dist/advertisers-XXM6POO5.js.map +1 -0
- package/dist/analytics-AULKYNNT.js +447 -0
- package/dist/analytics-AULKYNNT.js.map +1 -0
- package/dist/analytics-DNDTC643.js +2437 -0
- package/dist/analytics-DNDTC643.js.map +1 -0
- package/dist/asset-writes-JLVUAVUZ.js +50 -0
- package/dist/assign-2GQVQKKO.js +80 -0
- package/dist/assign-2GQVQKKO.js.map +1 -0
- package/dist/audience-size-C3YHQPZB.js +76 -0
- package/dist/audience-size-C3YHQPZB.js.map +1 -0
- package/dist/audience-writes-CDKQB3SM.js +327 -0
- package/dist/audience-writes-CDKQB3SM.js.map +1 -0
- package/dist/audiences-CDDI5HR5.js +86 -0
- package/dist/audiences-M3A3QK52.js +280 -0
- package/dist/audiences-M3A3QK52.js.map +1 -0
- package/dist/audit-FLPJ7GTE.js +154 -0
- package/dist/audit-FLPJ7GTE.js.map +1 -0
- package/dist/autocomplete-ZYMHHV7E.js +114 -0
- package/dist/autocomplete-ZYMHHV7E.js.map +1 -0
- package/dist/avatars-WZ2JDMHH.js +38 -0
- package/dist/bid-pricing-H3M63PTW.js +103 -0
- package/dist/bid-pricing-H3M63PTW.js.map +1 -0
- package/dist/brand-IZTTBZII.js +22 -0
- package/dist/brief-OPQ7ICOY.js +543 -0
- package/dist/brief-OPQ7ICOY.js.map +1 -0
- package/dist/campaign-groups-IQSDKOVI.js +99 -0
- package/dist/campaign-groups-IQSDKOVI.js.map +1 -0
- package/dist/campaign-writes-APAAV4ZU.js +168 -0
- package/dist/campaign-writes-APAAV4ZU.js.map +1 -0
- package/dist/campaign-writes-BN4PZP4Z.js +176 -0
- package/dist/campaign-writes-BN4PZP4Z.js.map +1 -0
- package/dist/campaigns-4Y3JQC2U.js +111 -0
- package/dist/campaigns-GA34MEN2.js +78 -0
- package/dist/campaigns-GA34MEN2.js.map +1 -0
- package/dist/campaigns-HES5MDUG.js +130 -0
- package/dist/campaigns-K2FVD3XW.js +113 -0
- package/dist/campaigns-K2FVD3XW.js.map +1 -0
- package/dist/canvas-IQ753Q2O.js +46 -0
- package/dist/capabilities-ZITW4RF7.js +147 -0
- package/dist/capabilities-ZITW4RF7.js.map +1 -0
- package/dist/catalogs-TGLSJEK5.js +781 -0
- package/dist/catalogs-TGLSJEK5.js.map +1 -0
- package/dist/catalogs-ZR7DECMG.js +130 -0
- package/dist/catalogs-ZR7DECMG.js.map +1 -0
- package/dist/changes-VWKTM27U.js +135 -0
- package/dist/chatgpt-OPOD2WHB.js +47 -0
- package/dist/chats-AL2SYBJO.js +279 -0
- package/dist/chats-AL2SYBJO.js.map +1 -0
- package/dist/check-U2YLRD6H.js +107 -0
- package/dist/check-U2YLRD6H.js.map +1 -0
- package/dist/chunk-2GYCWRF3.js +170 -0
- package/dist/chunk-2L7F7KR4.js +61 -0
- package/dist/chunk-44ZRCSR7.js +228 -0
- package/dist/chunk-46YLDIQG.js +4254 -0
- package/dist/chunk-4EDWXZ3I.js +363 -0
- package/dist/chunk-4FFBGR5L.js +66 -0
- package/dist/chunk-4UQRXKYJ.js +219 -0
- package/dist/chunk-4UZUUSVL.js +592 -0
- package/dist/chunk-4XHCEYHI.js +831 -0
- package/dist/chunk-4Z6PVR3M.js +479 -0
- package/dist/chunk-5Y5FZV2W.js +122 -0
- package/dist/chunk-6HJXLGDV.js +392 -0
- package/dist/chunk-6S5CWGDA.js +429 -0
- package/dist/chunk-6VYROVWO.js +494 -0
- package/dist/chunk-7BUIOP36.js +287 -0
- package/dist/chunk-AQRXXC6E.js +319 -0
- package/dist/chunk-ARBXT73X.js +387 -0
- package/dist/chunk-BEZHQIEI.js +97 -0
- package/dist/chunk-BFURWHVR.js +547 -0
- package/dist/chunk-BX6B25KK.js +358 -0
- package/dist/chunk-BX6B25KK.js.map +1 -0
- package/dist/chunk-DSCEXBDR.js +676 -0
- package/dist/chunk-FLWDFPXE.js +23 -0
- package/dist/chunk-FRNBRN2C.js +1646 -0
- package/dist/chunk-G4FG5EQO.js +110 -0
- package/dist/chunk-G4FG5EQO.js.map +1 -0
- package/dist/chunk-GE3VT3CA.js +51 -0
- package/dist/chunk-GW2WRZZA.js +24026 -0
- package/dist/chunk-GW2WRZZA.js.map +1 -0
- package/dist/chunk-HGBJQGO5.js +142 -0
- package/dist/chunk-I7AYMJZA.js +783 -0
- package/dist/chunk-IRM273C7.js +207 -0
- package/dist/chunk-IWKD56AY.js +156 -0
- package/dist/chunk-JLAQWMVF.js +3868 -0
- package/dist/chunk-JOE42ZW6.js +2984 -0
- package/dist/chunk-JOE42ZW6.js.map +1 -0
- package/dist/chunk-K6NULQN7.js +57 -0
- package/dist/chunk-L2BRAC2J.js +19 -0
- package/dist/chunk-LGMI4LSY.js +455 -0
- package/dist/chunk-NB2FU6EZ.js +179 -0
- package/dist/chunk-NKQWDEB7.js +115 -0
- package/dist/chunk-NKQWDEB7.js.map +1 -0
- package/dist/chunk-NWF2LRKO.js +188 -0
- package/dist/chunk-OG47L5GG.js +275 -0
- package/dist/chunk-OR6KVLI5.js +169 -0
- package/dist/chunk-PC3FJEZH.js +7211 -0
- package/dist/chunk-PC3FJEZH.js.map +1 -0
- package/dist/chunk-Q3GSVLE5.js +4274 -0
- package/dist/chunk-Q3GSVLE5.js.map +1 -0
- package/dist/chunk-QDQZ62FL.js +207 -0
- package/dist/chunk-QIOFOD4K.js +344 -0
- package/dist/chunk-R2SYF5FC.js +249 -0
- package/dist/chunk-RTH2I55B.js +942 -0
- package/dist/chunk-S6VFDNSQ.js +63 -0
- package/dist/chunk-SG2TDQEE.js +150 -0
- package/dist/chunk-SOPVIIUW.js +68 -0
- package/dist/chunk-SOPVIIUW.js.map +1 -0
- package/dist/chunk-T3P6O2VU.js +89 -0
- package/dist/chunk-TXDE2QJ3.js +604 -0
- package/dist/chunk-UDIEKCIR.js +203 -0
- package/dist/chunk-USCADMM3.js +163 -0
- package/dist/chunk-UUGISMNE.js +910 -0
- package/dist/chunk-VDPOCAQ2.js +197 -0
- package/dist/chunk-VEJ3QX6M.js +103 -0
- package/dist/chunk-VFJB7OG6.js +91 -0
- package/dist/chunk-VRIPVLE7.js +8954 -0
- package/dist/chunk-WFY7KSHB.js +274 -0
- package/dist/chunk-WLESMH4J.js +45 -0
- package/dist/chunk-XHQYFNNK.js +846 -0
- package/dist/chunk-XOQNM7I4.js +396 -0
- package/dist/chunk-XOQNM7I4.js.map +1 -0
- package/dist/chunk-YILZR3XI.js +224 -0
- package/dist/chunk-YJFLXOH4.js +191 -0
- package/dist/chunk-YWHZYR6S.js +297 -0
- package/dist/claim-GOLUTAJ3.js +200 -0
- package/dist/claim-GOLUTAJ3.js.map +1 -0
- package/dist/cli.js +30 -30
- package/dist/companies-4AJJGTMC.js +198 -0
- package/dist/companies-4AJJGTMC.js.map +1 -0
- package/dist/company-MOSPLRZJ.js +308 -0
- package/dist/company-MOSPLRZJ.js.map +1 -0
- package/dist/complete-777BDV45.js +84 -0
- package/dist/complete-777BDV45.js.map +1 -0
- package/dist/connect-3YY7MF3I.js +45 -0
- package/dist/conversation-KROMHDHK.js +96 -0
- package/dist/conversation-KROMHDHK.js.map +1 -0
- package/dist/conversion-report-JZHI2IHY.js +127 -0
- package/dist/conversion-report-JZHI2IHY.js.map +1 -0
- package/dist/conversion-upload-command-7RSZ5ZQU.js +439 -0
- package/dist/conversion-writes-SNCLQDXQ.js +122 -0
- package/dist/conversion-writes-SNCLQDXQ.js.map +1 -0
- package/dist/conversions-43EYP2W2.js +140 -0
- package/dist/conversions-43EYP2W2.js.map +1 -0
- package/dist/conversions-EUOWILCQ.js +78 -0
- package/dist/conversions-EUOWILCQ.js.map +1 -0
- package/dist/copy-writes-CIHIFLY6.js +170 -0
- package/dist/copy-writes-CIHIFLY6.js.map +1 -0
- package/dist/create-3WOZO2XT.js +239 -0
- package/dist/create-3WOZO2XT.js.map +1 -0
- package/dist/create-7IFYLX7P.js +210 -0
- package/dist/create-7IFYLX7P.js.map +1 -0
- package/dist/create-FOHIQC3E.js +62 -0
- package/dist/create-FOHIQC3E.js.map +1 -0
- package/dist/create-UWQSQTK6.js +135 -0
- package/dist/create-UWQSQTK6.js.map +1 -0
- package/dist/creatives-2DR3QHJW.js +58 -0
- package/dist/creatives-BB6S2OF6.js +89 -0
- package/dist/creatives-KUO67WYA.js +223 -0
- package/dist/creatives-KUO67WYA.js.map +1 -0
- package/dist/credentials-IP4L37XP.js +290 -0
- package/dist/credentials-IP4L37XP.js.map +1 -0
- package/dist/critique-LGDNMLBL.js +232 -0
- package/dist/critique-LGDNMLBL.js.map +1 -0
- package/dist/critique-LJMFAURK.js +1451 -0
- package/dist/critique-LJMFAURK.js.map +1 -0
- package/dist/crm-BNYW7PF7.js +323 -0
- package/dist/crm-BNYW7PF7.js.map +1 -0
- package/dist/crm-J53V2QTN.js +227 -0
- package/dist/crm-J53V2QTN.js.map +1 -0
- package/dist/currency-X7Y6TSLF.js +88 -0
- package/dist/custom-conversions-HAGG72LF.js +128 -0
- package/dist/customers-663K2OCP.js +59 -0
- package/dist/delete-5W3YVA4L.js +67 -0
- package/dist/delete-5W3YVA4L.js.map +1 -0
- package/dist/delete-6U7E6YUW.js +57 -0
- package/dist/delete-6U7E6YUW.js.map +1 -0
- package/dist/delete-G4NY6ZG6.js +69 -0
- package/dist/delete-G4NY6ZG6.js.map +1 -0
- package/dist/demographics-4Y5LTCU4.js +141 -0
- package/dist/demographics-4Y5LTCU4.js.map +1 -0
- package/dist/discard-RKCZNKMN.js +69 -0
- package/dist/discard-RKCZNKMN.js.map +1 -0
- package/dist/discover-6DORQWXY.js +172 -0
- package/dist/domain-PLA2O4FW.js +101 -0
- package/dist/domain-PLA2O4FW.js.map +1 -0
- package/dist/download-4EFLVSA4.js +172 -0
- package/dist/download-4EFLVSA4.js.map +1 -0
- package/dist/draft-4V7W5DV2.js +310 -0
- package/dist/draft-4V7W5DV2.js.map +1 -0
- package/dist/draft-HY3U2GHU.js +283 -0
- package/dist/draft-HY3U2GHU.js.map +1 -0
- package/dist/draft-JMNAGW7C.js +220 -0
- package/dist/draft-JMNAGW7C.js.map +1 -0
- package/dist/draft-R6EKORNS.js +308 -0
- package/dist/draft-TRPQCJ4B.js +335 -0
- package/dist/draft-TRPQCJ4B.js.map +1 -0
- package/dist/experiments-4V242DG2.js +236 -0
- package/dist/experiments-4V242DG2.js.map +1 -0
- package/dist/facets-WXJ2MCU6.js +117 -0
- package/dist/facets-WXJ2MCU6.js.map +1 -0
- package/dist/feedback-IRSRPXV6.js +111 -0
- package/dist/feedback-IRSRPXV6.js.map +1 -0
- package/dist/feedback-record-DT3R4NA3.js +265 -0
- package/dist/feedback-record-DT3R4NA3.js.map +1 -0
- package/dist/fetch-YLQP5VQL.js +179 -0
- package/dist/fetch-YLQP5VQL.js.map +1 -0
- package/dist/fit-BEFCY2B4.js +65 -0
- package/dist/flows-FDMF3F3P.js +250 -0
- package/dist/flows-FDMF3F3P.js.map +1 -0
- package/dist/fonts-C6XN5667.js +39 -0
- package/dist/forecast-BTPIXEQ5.js +169 -0
- package/dist/forecast-ZTXZD3HD.js +121 -0
- package/dist/forecast-ZTXZD3HD.js.map +1 -0
- package/dist/funnel-7KOEX7YM.js +397 -0
- package/dist/funnel-7KOEX7YM.js.map +1 -0
- package/dist/get-KBSKPTAV.js +59 -0
- package/dist/get-KBSKPTAV.js.map +1 -0
- package/dist/get-OSVQVMP6.js +82 -0
- package/dist/get-OSVQVMP6.js.map +1 -0
- package/dist/google-M6BJ22UL.js +3267 -0
- package/dist/google-ads-XCJVAXWF.js +198 -0
- package/dist/google-ads-XCJVAXWF.js.map +1 -0
- package/dist/history-3NTM5SFN.js +69 -0
- package/dist/history-3NTM5SFN.js.map +1 -0
- package/dist/history-4TN2A6BL.js +136 -0
- package/dist/history-4TN2A6BL.js.map +1 -0
- package/dist/history-5IWW2X33.js +102 -0
- package/dist/history-5IWW2X33.js.map +1 -0
- package/dist/hubspot-HMVSRJQZ.js +782 -0
- package/dist/hubspot-HMVSRJQZ.js.map +1 -0
- package/dist/ideas-M66FU45H.js +45 -0
- package/dist/images-MM5OPUKV.js +92 -0
- package/dist/ingest-GU3WEBN3.js +110 -0
- package/dist/ingest-GU3WEBN3.js.map +1 -0
- package/dist/ingest-KMLYCFF4.js +26 -0
- package/dist/insights-CQCWOCIT.js +132 -0
- package/dist/insights-CQCWOCIT.js.map +1 -0
- package/dist/insights-XZL2EM53.js +439 -0
- package/dist/insights-XZL2EM53.js.map +1 -0
- package/dist/inspect-4JO2J3D6.js +192 -0
- package/dist/inspect-4JO2J3D6.js.map +1 -0
- package/dist/instant-experiences-RM4MLJTL.js +260 -0
- package/dist/instant-experiences-RM4MLJTL.js.map +1 -0
- package/dist/intent-YCQCUCV3.js +95 -0
- package/dist/keyword-gap-PUSF7EKY.js +130 -0
- package/dist/keyword-metrics-JXBM22ZD.js +200 -0
- package/dist/keyword-metrics-JXBM22ZD.js.map +1 -0
- package/dist/keywords-for-site-OAYA7KP7.js +131 -0
- package/dist/keywords-for-site-OAYA7KP7.js.map +1 -0
- package/dist/landing-OZU5RRFV.js +28 -0
- package/dist/languages-SLFV73GE.js +40 -0
- package/dist/leads-Q7APIJRQ.js +115 -0
- package/dist/leads-Q7APIJRQ.js.map +1 -0
- package/dist/leads-ULYHTG22.js +540 -0
- package/dist/leads-ULYHTG22.js.map +1 -0
- package/dist/learn-NBBJRMVZ.js +207 -0
- package/dist/learn-NBBJRMVZ.js.map +1 -0
- package/dist/line-item-writes-X3L5NQEH.js +211 -0
- package/dist/line-item-writes-X3L5NQEH.js.map +1 -0
- package/dist/line-items-NJMEPEF5.js +107 -0
- package/dist/link-WZSNUQQ2.js +67 -0
- package/dist/link-WZSNUQQ2.js.map +1 -0
- package/dist/linkedin-55PAID62.js +1316 -0
- package/dist/linkedin-55PAID62.js.map +1 -0
- package/dist/linkedin-person-MVRI7LLC.js +139 -0
- package/dist/linkedin-person-MVRI7LLC.js.map +1 -0
- package/dist/list-6S54IAUX.js +67 -0
- package/dist/list-6S54IAUX.js.map +1 -0
- package/dist/list-QRJ4E3SC.js +154 -0
- package/dist/list-QRJ4E3SC.js.map +1 -0
- package/dist/list-RZUDFLJN.js +306 -0
- package/dist/list-RZUDFLJN.js.map +1 -0
- package/dist/locations-T2OMP6QN.js +40 -0
- package/dist/locations-W3VOYBWL.js +69 -0
- package/dist/locations-W3VOYBWL.js.map +1 -0
- package/dist/log-53SAPZZ3.js +95 -0
- package/dist/log-53SAPZZ3.js.map +1 -0
- package/dist/lookup-S5VG7AWH.js +23 -0
- package/dist/make-ZF3YIMKW.js +1370 -0
- package/dist/make-ZF3YIMKW.js.map +1 -0
- package/dist/map-J37QFJSV.js +436 -0
- package/dist/map-J37QFJSV.js.map +1 -0
- package/dist/mcp-YRIFPYNU.js +717 -0
- package/dist/mcp-YRIFPYNU.js.map +1 -0
- package/dist/media-P4T4ZBNS.js +18 -0
- package/dist/media-sources-EQI3U4TC.js +35 -0
- package/dist/members-GYVMSCKL.js +47 -0
- package/dist/members-GYVMSCKL.js.map +1 -0
- package/dist/meta-IPLWNYC7.js +122 -0
- package/dist/metrics-4YVJHYRI.js +152 -0
- package/dist/normalize-MFN3WCH5.js +144 -0
- package/dist/normalize-MFN3WCH5.js.map +1 -0
- package/dist/options-DLHDHO7H.js +125 -0
- package/dist/options-DLHDHO7H.js.map +1 -0
- package/dist/organization-C2VOA2SD.js +949 -0
- package/dist/organization-C2VOA2SD.js.map +1 -0
- package/dist/page-photos-OQ5QATQH.js +118 -0
- package/dist/page-photos-OQ5QATQH.js.map +1 -0
- package/dist/performance-NIF3CESZ.js +27 -0
- package/dist/performance-T6TBVHVU.js +5541 -0
- package/dist/performance-T6TBVHVU.js.map +1 -0
- package/dist/pixels-LQAJOZIM.js +62 -0
- package/dist/pixels-LQAJOZIM.js.map +1 -0
- package/dist/plan-7UF76Q6U.js +208 -0
- package/dist/plan-7UF76Q6U.js.map +1 -0
- package/dist/preview-LRJOQ7LM.js +218 -0
- package/dist/preview-LRJOQ7LM.js.map +1 -0
- package/dist/promoted-tweet-writes-Y6BBOWDL.js +183 -0
- package/dist/promoted-tweet-writes-Y6BBOWDL.js.map +1 -0
- package/dist/promoted-tweets-RJT53DRM.js +119 -0
- package/dist/publish-IOTMJCCY.js +344 -0
- package/dist/publish-IOTMJCCY.js.map +1 -0
- package/dist/query-XZMDGRO5.js +62 -0
- package/dist/questionnaire-DWEH5II4.js +94 -0
- package/dist/questionnaire-DWEH5II4.js.map +1 -0
- package/dist/reddit-JIHMAKAQ.js +29 -0
- package/dist/refresh-OQZ263CS.js +97 -0
- package/dist/refresh-OQZ263CS.js.map +1 -0
- package/dist/release-4CHFURO3.js +63 -0
- package/dist/release-4CHFURO3.js.map +1 -0
- package/dist/relevant-pages-FS7GBVXK.js +99 -0
- package/dist/remove-IJQPHPDI.js +53 -0
- package/dist/remove-IJQPHPDI.js.map +1 -0
- package/dist/reopen-YTLPVKUR.js +66 -0
- package/dist/reopen-YTLPVKUR.js.map +1 -0
- package/dist/rerun-C7NB7B35.js +95 -0
- package/dist/rerun-C7NB7B35.js.map +1 -0
- package/dist/research-PNBACCCP.js +72 -0
- package/dist/research-TLHNPK3O.js +265 -0
- package/dist/research-TLHNPK3O.js.map +1 -0
- package/dist/reset-JVLW7HA2.js +57 -0
- package/dist/reset-JVLW7HA2.js.map +1 -0
- package/dist/reset-Y6FXLAQE.js +57 -0
- package/dist/reset-Y6FXLAQE.js.map +1 -0
- package/dist/resolve-YLRESES5.js +124 -0
- package/dist/resolve-YLRESES5.js.map +1 -0
- package/dist/retry-3V3IGDRR.js +65 -0
- package/dist/retry-3V3IGDRR.js.map +1 -0
- package/dist/retry-AEKQLQMP.js +63 -0
- package/dist/retry-AEKQLQMP.js.map +1 -0
- package/dist/revenue-E4GQIOUY.js +91 -0
- package/dist/revenue-E4GQIOUY.js.map +1 -0
- package/dist/rule-writes-UAVWT4XS.js +525 -0
- package/dist/rule-writes-UAVWT4XS.js.map +1 -0
- package/dist/rules-34BQAWU3.js +99 -0
- package/dist/rules-34BQAWU3.js.map +1 -0
- package/dist/rules-ZVS2MWED.js +217 -0
- package/dist/rules-add-CM5XUYNS.js +465 -0
- package/dist/rules-add-CM5XUYNS.js.map +1 -0
- package/dist/run-MD64RDHZ.js +69 -0
- package/dist/run-MD64RDHZ.js.map +1 -0
- package/dist/run-QCNRR3CA.js +70 -0
- package/dist/scaffold-ad-NADPY3CB.js +1516 -0
- package/dist/scaffold-ad-NADPY3CB.js.map +1 -0
- package/dist/scaffold-static-ad-5YEYYVYH.js +1015 -0
- package/dist/scaffold-static-ad-5YEYYVYH.js.map +1 -0
- package/dist/scaffold-video-W7DF2CBJ.js +888 -0
- package/dist/scaffold-video-W7DF2CBJ.js.map +1 -0
- package/dist/schedule-CTRRF6TS.js +64 -0
- package/dist/schedule-CTRRF6TS.js.map +1 -0
- package/dist/scheduled-agents-OXYAVSIE.js +55 -0
- package/dist/schema-BEUYOGSW.js +135 -0
- package/dist/schema-BEUYOGSW.js.map +1 -0
- package/dist/search-GFJKWPKN.js +177 -0
- package/dist/search-GFJKWPKN.js.map +1 -0
- package/dist/select-S72CCL57.js +106 -0
- package/dist/select-S72CCL57.js.map +1 -0
- package/dist/sends-LAY5C74B.js +349 -0
- package/dist/sends-LAY5C74B.js.map +1 -0
- package/dist/set-prompt-YYFDRXRI.js +198 -0
- package/dist/set-prompt-YYFDRXRI.js.map +1 -0
- package/dist/setup-links-D4JJLESN.js +144 -0
- package/dist/setup-links-D4JJLESN.js.map +1 -0
- package/dist/shopify-T4UWFIQC.js +3958 -0
- package/dist/shopify-T4UWFIQC.js.map +1 -0
- package/dist/site-BBZAUZA3.js +180 -0
- package/dist/site-BBZAUZA3.js.map +1 -0
- package/dist/sources-BUPV7H7F.js +457 -0
- package/dist/sources-BUPV7H7F.js.map +1 -0
- package/dist/sources-FLUGHSVP.js +30 -0
- package/dist/stale-HP54JS5X.js +76 -0
- package/dist/stale-HP54JS5X.js.map +1 -0
- package/dist/status-CLSWQFCQ.js +65 -0
- package/dist/status-CLSWQFCQ.js.map +1 -0
- package/dist/studies-EPO2AM4M.js +250 -0
- package/dist/study-writes-7FP443QQ.js +470 -0
- package/dist/study-writes-7FP443QQ.js.map +1 -0
- package/dist/sync-4YTVVEVC.js +57 -0
- package/dist/sync-4YTVVEVC.js.map +1 -0
- package/dist/sync-definition-OGQ5XTQE.js +69 -0
- package/dist/tags-CZTRQNXV.js +26 -0
- package/dist/tags-FDQXWTCQ.js +23 -0
- package/dist/tags-FDQXWTCQ.js.map +1 -0
- package/dist/tags-R67DKRZ6.js +23 -0
- package/dist/tags-R67DKRZ6.js.map +1 -0
- package/dist/tags-SA2LU6AW.js +227 -0
- package/dist/tags-SA2LU6AW.js.map +1 -0
- package/dist/tags-ZOXX6VRE.js +23 -0
- package/dist/tags-ZOXX6VRE.js.map +1 -0
- package/dist/targeting-NKZFEZD7.js +762 -0
- package/dist/targeting-NKZFEZD7.js.map +1 -0
- package/dist/targeting-criteria-AQYXVSGN.js +113 -0
- package/dist/targets-UUVCEG3F.js +106 -0
- package/dist/targets-UUVCEG3F.js.map +1 -0
- package/dist/testimonials-G3OCNPBY.js +32 -0
- package/dist/themes-FEVYZZCW.js +95 -0
- package/dist/top-companies-BQGWKYUK.js +111 -0
- package/dist/top-companies-BQGWKYUK.js.map +1 -0
- package/dist/transcript-U46AEOEI.js +165 -0
- package/dist/transcript-U46AEOEI.js.map +1 -0
- package/dist/translate-AS7JVKYM.js +609 -0
- package/dist/translate-AS7JVKYM.js.map +1 -0
- package/dist/triggers-ECRBPYYF.js +144 -0
- package/dist/triggers-ECRBPYYF.js.map +1 -0
- package/dist/unlink-VDNCSRJV.js +70 -0
- package/dist/unlink-VDNCSRJV.js.map +1 -0
- package/dist/unstage-ATDXUYP2.js +88 -0
- package/dist/unstage-ATDXUYP2.js.map +1 -0
- package/dist/unstage-ZA3WQBEA.js +96 -0
- package/dist/unstage-ZA3WQBEA.js.map +1 -0
- package/dist/update-FJ6TBV3E.js +101 -0
- package/dist/update-FJ6TBV3E.js.map +1 -0
- package/dist/update-HDBJCSTI.js +66 -0
- package/dist/update-HDBJCSTI.js.map +1 -0
- package/dist/update-U43DJRGV.js +155 -0
- package/dist/update-U43DJRGV.js.map +1 -0
- package/dist/update-Z7TIUBMJ.js +192 -0
- package/dist/update-Z7TIUBMJ.js.map +1 -0
- package/dist/upload-LXCFSRIU.js +129 -0
- package/dist/upload-LXCFSRIU.js.map +1 -0
- package/dist/url-options-Z4BQBEMI.js +131 -0
- package/dist/url-options-Z4BQBEMI.js.map +1 -0
- package/dist/url-params-J7RKP5RB.js +101 -0
- package/dist/url-params-J7RKP5RB.js.map +1 -0
- package/dist/validate-VR3HEOMJ.js +122 -0
- package/dist/validate-VR3HEOMJ.js.map +1 -0
- package/dist/videos-36AXDUGZ.js +41 -0
- package/dist/viewer-check-6HL4OUQY.js +83 -0
- package/dist/web-7BRJRQX7.js +143 -0
- package/dist/web-7BRJRQX7.js.map +1 -0
- package/dist/winning-ads-GMM5W2O4.js +86 -0
- package/dist/write-commands-IM5DPG3R.js +1502 -0
- package/dist/write-commands-IM5DPG3R.js.map +1 -0
- package/dist/write-commands-OGVDWWBV.js +1172 -0
- package/dist/write-commands-OGVDWWBV.js.map +1 -0
- package/dist/x-HGFAL3NY.js +47 -0
- package/package.json +1 -1
- package/dist/account-C635ATVM.js +0 -80
- package/dist/account-C635ATVM.js.map +0 -1
- package/dist/account-WLQBAQMD.js +0 -80
- package/dist/account-WLQBAQMD.js.map +0 -1
- package/dist/account-assets-O7IA37RE.js +0 -290
- package/dist/account-level-EU7BWCO7.js +0 -609
- package/dist/account-level-EU7BWCO7.js.map +0 -1
- package/dist/account-reads-SNOWDHHF.js +0 -219
- package/dist/account-users-XYYENK6X.js +0 -62
- package/dist/account-users-XYYENK6X.js.map +0 -1
- package/dist/account-writes-TU3WJRSI.js +0 -66
- package/dist/account-writes-TU3WJRSI.js.map +0 -1
- package/dist/accounts-A2FBLZ5H.js +0 -78
- package/dist/accounts-A2FBLZ5H.js.map +0 -1
- package/dist/accounts-V2IZZ5KU.js +0 -699
- package/dist/accounts-V2IZZ5KU.js.map +0 -1
- package/dist/actions-Y4SULW2E.js +0 -55
- package/dist/activecampaign-63XG6CLL.js +0 -936
- package/dist/activecampaign-63XG6CLL.js.map +0 -1
- package/dist/ad-group-writes-HLBWN4E4.js +0 -170
- package/dist/ad-group-writes-HLBWN4E4.js.map +0 -1
- package/dist/ad-groups-33NZD6J3.js +0 -68
- package/dist/ad-groups-33NZD6J3.js.map +0 -1
- package/dist/ad-writes-7ZDNDZ2E.js +0 -174
- package/dist/ad-writes-7ZDNDZ2E.js.map +0 -1
- package/dist/add-FOLFVGQO.js +0 -303
- package/dist/add-FOLFVGQO.js.map +0 -1
- package/dist/add-RYB4JSYC.js +0 -105
- package/dist/add-RYB4JSYC.js.map +0 -1
- package/dist/ads-2TVWICGM.js +0 -48
- package/dist/ads-KBE5JXCH.js +0 -115
- package/dist/ads-X3AM6M7L.js +0 -77
- package/dist/ads-X3AM6M7L.js.map +0 -1
- package/dist/adsets-YWBJFPAZ.js +0 -182
- package/dist/advertisers-IGUMSK5Q.js +0 -121
- package/dist/advertisers-IGUMSK5Q.js.map +0 -1
- package/dist/analytics-3DKM7J43.js +0 -445
- package/dist/analytics-3DKM7J43.js.map +0 -1
- package/dist/analytics-R3QDSX2K.js +0 -2435
- package/dist/analytics-R3QDSX2K.js.map +0 -1
- package/dist/asset-writes-72DEVXGO.js +0 -48
- package/dist/assign-EKCGLNZB.js +0 -78
- package/dist/assign-EKCGLNZB.js.map +0 -1
- package/dist/audience-size-IKXK32HU.js +0 -74
- package/dist/audience-size-IKXK32HU.js.map +0 -1
- package/dist/audience-writes-KCHLNFSI.js +0 -325
- package/dist/audience-writes-KCHLNFSI.js.map +0 -1
- package/dist/audiences-QAH42HIM.js +0 -86
- package/dist/audiences-WCDWN64L.js +0 -268
- package/dist/audiences-WCDWN64L.js.map +0 -1
- package/dist/audit-CY76S4V7.js +0 -152
- package/dist/audit-CY76S4V7.js.map +0 -1
- package/dist/autocomplete-G2S5HNUS.js +0 -112
- package/dist/autocomplete-G2S5HNUS.js.map +0 -1
- package/dist/avatars-P4UPNZM4.js +0 -38
- package/dist/bid-pricing-AJT4QU2C.js +0 -101
- package/dist/bid-pricing-AJT4QU2C.js.map +0 -1
- package/dist/brand-HALQWZWB.js +0 -22
- package/dist/brief-NW7TGG2Q.js +0 -541
- package/dist/brief-NW7TGG2Q.js.map +0 -1
- package/dist/campaign-groups-I43KMAJP.js +0 -97
- package/dist/campaign-groups-I43KMAJP.js.map +0 -1
- package/dist/campaign-writes-DLLPFAGG.js +0 -166
- package/dist/campaign-writes-DLLPFAGG.js.map +0 -1
- package/dist/campaign-writes-XO74BALZ.js +0 -174
- package/dist/campaign-writes-XO74BALZ.js.map +0 -1
- package/dist/campaigns-LS65QM6W.js +0 -76
- package/dist/campaigns-LS65QM6W.js.map +0 -1
- package/dist/campaigns-UIYSYCF3.js +0 -111
- package/dist/campaigns-UIYSYCF3.js.map +0 -1
- package/dist/campaigns-XZOQ2VTK.js +0 -130
- package/dist/campaigns-YMM5TQVO.js +0 -111
- package/dist/canvas-IJS7H3VE.js +0 -46
- package/dist/capabilities-XMQPM3UL.js +0 -145
- package/dist/capabilities-XMQPM3UL.js.map +0 -1
- package/dist/catalogs-JLCSFZYC.js +0 -779
- package/dist/catalogs-JLCSFZYC.js.map +0 -1
- package/dist/catalogs-T23RKYFC.js +0 -128
- package/dist/catalogs-T23RKYFC.js.map +0 -1
- package/dist/changes-36C754R4.js +0 -135
- package/dist/chatgpt-3WFOPURY.js +0 -47
- package/dist/chats-ZI6EYDAF.js +0 -277
- package/dist/chats-ZI6EYDAF.js.map +0 -1
- package/dist/check-CHJ2OLAU.js +0 -105
- package/dist/check-CHJ2OLAU.js.map +0 -1
- package/dist/chunk-2TOIY2WN.js +0 -4254
- package/dist/chunk-4GAEB6NK.js +0 -228
- package/dist/chunk-5RVQK3SP.js +0 -494
- package/dist/chunk-5SRUAGTG.js +0 -547
- package/dist/chunk-5XTGG4PV.js +0 -274
- package/dist/chunk-6Z7Y4KQB.js +0 -275
- package/dist/chunk-7J3NZBPV.js +0 -2982
- package/dist/chunk-7J3NZBPV.js.map +0 -1
- package/dist/chunk-AIRD6T4W.js +0 -169
- package/dist/chunk-AQOFQNKQ.js +0 -57
- package/dist/chunk-ARUXGKZO.js +0 -91
- package/dist/chunk-AYPBARKP.js +0 -156
- package/dist/chunk-BRLZX3VP.js +0 -207
- package/dist/chunk-BTJSGJNQ.js +0 -604
- package/dist/chunk-C7QQQVBS.js +0 -51
- package/dist/chunk-CCEDZTP7.js +0 -391
- package/dist/chunk-CCEDZTP7.js.map +0 -1
- package/dist/chunk-D3KLDIPQ.js +0 -45
- package/dist/chunk-DUR7PEJI.js +0 -170
- package/dist/chunk-EDLZGTGN.js +0 -216
- package/dist/chunk-EDLZGTGN.js.map +0 -1
- package/dist/chunk-FFFJBNHA.js +0 -63
- package/dist/chunk-FPWQA7TK.js +0 -344
- package/dist/chunk-G5Y7OIPL.js +0 -392
- package/dist/chunk-GACSA5A6.js +0 -1646
- package/dist/chunk-GMHCHHAA.js +0 -19
- package/dist/chunk-H4NNQGG6.js +0 -66
- package/dist/chunk-HSQRITKG.js +0 -203
- package/dist/chunk-I47BEKYK.js +0 -831
- package/dist/chunk-JND6XSGZ.js +0 -7192
- package/dist/chunk-JND6XSGZ.js.map +0 -1
- package/dist/chunk-KBRJSPIM.js +0 -676
- package/dist/chunk-KQTNUDKD.js +0 -97
- package/dist/chunk-M7HD42M6.js +0 -24017
- package/dist/chunk-M7HD42M6.js.map +0 -1
- package/dist/chunk-MBSFEVOG.js +0 -163
- package/dist/chunk-MGYC2IRC.js +0 -783
- package/dist/chunk-MUXKYSTI.js +0 -297
- package/dist/chunk-MZCTX37B.js +0 -3868
- package/dist/chunk-N7M2TWR5.js +0 -592
- package/dist/chunk-NDFS3APP.js +0 -319
- package/dist/chunk-OBJCNGZL.js +0 -207
- package/dist/chunk-OJGYYH6K.js +0 -179
- package/dist/chunk-P6BKKUSX.js +0 -142
- package/dist/chunk-PLAOK4AK.js +0 -103
- package/dist/chunk-PLBITHV6.js +0 -846
- package/dist/chunk-PNKIOTCK.js +0 -349
- package/dist/chunk-PNKIOTCK.js.map +0 -1
- package/dist/chunk-QBRPM3DQ.js +0 -61
- package/dist/chunk-QMDMTZAW.js +0 -224
- package/dist/chunk-QW6HL7D6.js +0 -429
- package/dist/chunk-R53XMPDO.js +0 -363
- package/dist/chunk-RFIUOQLN.js +0 -89
- package/dist/chunk-RVEY7BTT.js +0 -8954
- package/dist/chunk-SCL7PM6P.js +0 -479
- package/dist/chunk-SM7G7RUA.js +0 -910
- package/dist/chunk-SVBJ56T7.js +0 -455
- package/dist/chunk-TVAIOC77.js +0 -287
- package/dist/chunk-TVTSA4EN.js +0 -188
- package/dist/chunk-VIPKDXGU.js +0 -4229
- package/dist/chunk-VIPKDXGU.js.map +0 -1
- package/dist/chunk-W574NV67.js +0 -191
- package/dist/chunk-XGPU2VDU.js +0 -219
- package/dist/chunk-XQXZJ5IR.js +0 -249
- package/dist/chunk-YMF2RG4Z.js +0 -942
- package/dist/chunk-Z2DRGXBB.js +0 -197
- package/dist/chunk-Z7YMSHRZ.js +0 -23
- package/dist/chunk-ZEC46NWW.js +0 -122
- package/dist/chunk-ZFC562TP.js +0 -387
- package/dist/chunk-ZNRGH4NS.js +0 -150
- package/dist/claim-OUYHVGB4.js +0 -198
- package/dist/claim-OUYHVGB4.js.map +0 -1
- package/dist/companies-XDNSG7ME.js +0 -196
- package/dist/companies-XDNSG7ME.js.map +0 -1
- package/dist/company-4FAYYPEJ.js +0 -306
- package/dist/company-4FAYYPEJ.js.map +0 -1
- package/dist/complete-M2PAUMDP.js +0 -82
- package/dist/complete-M2PAUMDP.js.map +0 -1
- package/dist/connect-PP6Z3F7Y.js +0 -43
- package/dist/conversation-B5NPTLFQ.js +0 -94
- package/dist/conversation-B5NPTLFQ.js.map +0 -1
- package/dist/conversion-report-DKXFHLLX.js +0 -125
- package/dist/conversion-report-DKXFHLLX.js.map +0 -1
- package/dist/conversion-upload-command-KTYAY7IG.js +0 -439
- package/dist/conversion-writes-7ODJDAUP.js +0 -120
- package/dist/conversion-writes-7ODJDAUP.js.map +0 -1
- package/dist/conversions-BKVGNNC6.js +0 -76
- package/dist/conversions-BKVGNNC6.js.map +0 -1
- package/dist/conversions-QRJL6JIO.js +0 -138
- package/dist/conversions-QRJL6JIO.js.map +0 -1
- package/dist/copy-writes-P4WK6OPM.js +0 -168
- package/dist/copy-writes-P4WK6OPM.js.map +0 -1
- package/dist/create-4DWCJ2UA.js +0 -208
- package/dist/create-4DWCJ2UA.js.map +0 -1
- package/dist/create-OYV33CQ6.js +0 -60
- package/dist/create-OYV33CQ6.js.map +0 -1
- package/dist/create-U6JVIYFY.js +0 -237
- package/dist/create-U6JVIYFY.js.map +0 -1
- package/dist/create-V4FNRO63.js +0 -133
- package/dist/create-V4FNRO63.js.map +0 -1
- package/dist/creatives-64FKWEGL.js +0 -221
- package/dist/creatives-64FKWEGL.js.map +0 -1
- package/dist/creatives-JPKA2RHU.js +0 -89
- package/dist/creatives-UJDPD4CI.js +0 -58
- package/dist/credentials-EIPEZ2C2.js +0 -288
- package/dist/credentials-EIPEZ2C2.js.map +0 -1
- package/dist/critique-BADMZAZP.js +0 -230
- package/dist/critique-BADMZAZP.js.map +0 -1
- package/dist/critique-M3DEVEDA.js +0 -1449
- package/dist/critique-M3DEVEDA.js.map +0 -1
- package/dist/crm-GIYSLLY7.js +0 -321
- package/dist/crm-GIYSLLY7.js.map +0 -1
- package/dist/crm-HXKSJRY3.js +0 -225
- package/dist/crm-HXKSJRY3.js.map +0 -1
- package/dist/currency-R4ORE2U3.js +0 -88
- package/dist/custom-conversions-5HJBB5XL.js +0 -128
- package/dist/customers-7J3QGSOJ.js +0 -57
- package/dist/delete-EDWJQMMV.js +0 -65
- package/dist/delete-EDWJQMMV.js.map +0 -1
- package/dist/delete-O24CVQMJ.js +0 -67
- package/dist/delete-O24CVQMJ.js.map +0 -1
- package/dist/delete-QN2OYUCS.js +0 -55
- package/dist/delete-QN2OYUCS.js.map +0 -1
- package/dist/demographics-MPYYF2OI.js +0 -139
- package/dist/demographics-MPYYF2OI.js.map +0 -1
- package/dist/discard-FJCFB6SA.js +0 -67
- package/dist/discard-FJCFB6SA.js.map +0 -1
- package/dist/discover-GSJRZUOC.js +0 -172
- package/dist/domain-UILPSEA5.js +0 -99
- package/dist/domain-UILPSEA5.js.map +0 -1
- package/dist/download-ZMAI7QSG.js +0 -170
- package/dist/download-ZMAI7QSG.js.map +0 -1
- package/dist/draft-5OQT3APG.js +0 -308
- package/dist/draft-5OQT3APG.js.map +0 -1
- package/dist/draft-LPVK6YHI.js +0 -281
- package/dist/draft-LPVK6YHI.js.map +0 -1
- package/dist/draft-MSESA5UE.js +0 -333
- package/dist/draft-MSESA5UE.js.map +0 -1
- package/dist/draft-WYDMLNYA.js +0 -308
- package/dist/draft-XOOSEVY5.js +0 -218
- package/dist/draft-XOOSEVY5.js.map +0 -1
- package/dist/experiments-PVOQUL47.js +0 -234
- package/dist/experiments-PVOQUL47.js.map +0 -1
- package/dist/facets-5RW4Z3D3.js +0 -115
- package/dist/facets-5RW4Z3D3.js.map +0 -1
- package/dist/feedback-GC56R2EJ.js +0 -109
- package/dist/feedback-GC56R2EJ.js.map +0 -1
- package/dist/feedback-record-JX7ZU6J7.js +0 -263
- package/dist/feedback-record-JX7ZU6J7.js.map +0 -1
- package/dist/fetch-WUTXAPBL.js +0 -177
- package/dist/fetch-WUTXAPBL.js.map +0 -1
- package/dist/fit-N7WDGWYZ.js +0 -63
- package/dist/flows-ULZACISF.js +0 -248
- package/dist/flows-ULZACISF.js.map +0 -1
- package/dist/fonts-TTUAP7HS.js +0 -37
- package/dist/forecast-4AG5F7YC.js +0 -169
- package/dist/forecast-RQJJRN5D.js +0 -119
- package/dist/forecast-RQJJRN5D.js.map +0 -1
- package/dist/funnel-QPWJIXWK.js +0 -395
- package/dist/funnel-QPWJIXWK.js.map +0 -1
- package/dist/get-35D7YHWJ.js +0 -57
- package/dist/get-35D7YHWJ.js.map +0 -1
- package/dist/get-GIETDPF4.js +0 -80
- package/dist/get-GIETDPF4.js.map +0 -1
- package/dist/google-NAA4BASO.js +0 -3267
- package/dist/google-ads-2IZFZO4C.js +0 -196
- package/dist/google-ads-2IZFZO4C.js.map +0 -1
- package/dist/history-5MRLNTCI.js +0 -67
- package/dist/history-5MRLNTCI.js.map +0 -1
- package/dist/history-RPLWWPLQ.js +0 -134
- package/dist/history-RPLWWPLQ.js.map +0 -1
- package/dist/history-TQYLUYVU.js +0 -100
- package/dist/history-TQYLUYVU.js.map +0 -1
- package/dist/hubspot-EPK43X4C.js +0 -780
- package/dist/hubspot-EPK43X4C.js.map +0 -1
- package/dist/ideas-SUXKKZC7.js +0 -43
- package/dist/images-VKVZ3DWG.js +0 -92
- package/dist/ingest-BBBFT6FZ.js +0 -24
- package/dist/ingest-EM2UY42Z.js +0 -108
- package/dist/ingest-EM2UY42Z.js.map +0 -1
- package/dist/insights-M3CYB22P.js +0 -437
- package/dist/insights-M3CYB22P.js.map +0 -1
- package/dist/insights-XCT3ONC7.js +0 -130
- package/dist/insights-XCT3ONC7.js.map +0 -1
- package/dist/inspect-ZPOVOENK.js +0 -190
- package/dist/inspect-ZPOVOENK.js.map +0 -1
- package/dist/instant-experiences-HT3HB4QZ.js +0 -258
- package/dist/instant-experiences-HT3HB4QZ.js.map +0 -1
- package/dist/intent-NSHW7EJT.js +0 -95
- package/dist/keyword-gap-ITTWKBWZ.js +0 -130
- package/dist/keyword-metrics-7DPR264W.js +0 -198
- package/dist/keyword-metrics-7DPR264W.js.map +0 -1
- package/dist/keywords-for-site-IXL22UKQ.js +0 -129
- package/dist/keywords-for-site-IXL22UKQ.js.map +0 -1
- package/dist/landing-KZ4OSHHR.js +0 -28
- package/dist/languages-MEFQQBJ2.js +0 -40
- package/dist/leads-DNQTRYIR.js +0 -113
- package/dist/leads-DNQTRYIR.js.map +0 -1
- package/dist/leads-SZOGCQFK.js +0 -538
- package/dist/leads-SZOGCQFK.js.map +0 -1
- package/dist/learn-Q7WZG7FA.js +0 -205
- package/dist/learn-Q7WZG7FA.js.map +0 -1
- package/dist/line-item-writes-3K7FT5GO.js +0 -209
- package/dist/line-item-writes-3K7FT5GO.js.map +0 -1
- package/dist/line-items-G5YJG25N.js +0 -107
- package/dist/link-2QVSIZJT.js +0 -65
- package/dist/link-2QVSIZJT.js.map +0 -1
- package/dist/linkedin-VAFPZNWZ.js +0 -1314
- package/dist/linkedin-VAFPZNWZ.js.map +0 -1
- package/dist/linkedin-person-EHTYVNZY.js +0 -137
- package/dist/linkedin-person-EHTYVNZY.js.map +0 -1
- package/dist/list-5TS2VPQZ.js +0 -152
- package/dist/list-5TS2VPQZ.js.map +0 -1
- package/dist/list-PSSQXQRJ.js +0 -65
- package/dist/list-PSSQXQRJ.js.map +0 -1
- package/dist/list-UMVIFQ3X.js +0 -304
- package/dist/list-UMVIFQ3X.js.map +0 -1
- package/dist/locations-RLWAS6AC.js +0 -40
- package/dist/locations-UKBOT6SB.js +0 -67
- package/dist/locations-UKBOT6SB.js.map +0 -1
- package/dist/log-ZZK3QMZB.js +0 -93
- package/dist/log-ZZK3QMZB.js.map +0 -1
- package/dist/lookup-ZJIP2M4X.js +0 -22
- package/dist/make-DB2BDVB3.js +0 -1368
- package/dist/make-DB2BDVB3.js.map +0 -1
- package/dist/map-UJ23GKRH.js +0 -434
- package/dist/map-UJ23GKRH.js.map +0 -1
- package/dist/mcp-SS2ALFRJ.js +0 -715
- package/dist/mcp-SS2ALFRJ.js.map +0 -1
- package/dist/media-ZWN7E777.js +0 -18
- package/dist/media-sources-GKSEDSE3.js +0 -35
- package/dist/members-KD2XRYPZ.js +0 -45
- package/dist/members-KD2XRYPZ.js.map +0 -1
- package/dist/meta-EHKXH257.js +0 -122
- package/dist/metrics-K6FDCMK7.js +0 -152
- package/dist/normalize-ZNTXNX6D.js +0 -142
- package/dist/normalize-ZNTXNX6D.js.map +0 -1
- package/dist/options-TBIFJF3E.js +0 -123
- package/dist/options-TBIFJF3E.js.map +0 -1
- package/dist/organization-26J2ZIKM.js +0 -947
- package/dist/organization-26J2ZIKM.js.map +0 -1
- package/dist/page-photos-HWKQOSCU.js +0 -116
- package/dist/page-photos-HWKQOSCU.js.map +0 -1
- package/dist/performance-6TPJGM6A.js +0 -25
- package/dist/performance-O5BXZGS6.js +0 -5539
- package/dist/performance-O5BXZGS6.js.map +0 -1
- package/dist/pixels-Z7ZGXAGB.js +0 -60
- package/dist/pixels-Z7ZGXAGB.js.map +0 -1
- package/dist/plan-TVQSEKYL.js +0 -207
- package/dist/plan-TVQSEKYL.js.map +0 -1
- package/dist/preview-CWRGDFCP.js +0 -216
- package/dist/preview-CWRGDFCP.js.map +0 -1
- package/dist/promoted-tweet-writes-SZN74JHY.js +0 -181
- package/dist/promoted-tweet-writes-SZN74JHY.js.map +0 -1
- package/dist/promoted-tweets-7P4TSQU7.js +0 -119
- package/dist/publish-3DUERLGT.js +0 -342
- package/dist/publish-3DUERLGT.js.map +0 -1
- package/dist/query-QM7MBQD7.js +0 -62
- package/dist/questionnaire-LEZJLMAV.js +0 -93
- package/dist/questionnaire-LEZJLMAV.js.map +0 -1
- package/dist/reddit-SN5CESF4.js +0 -27
- package/dist/refresh-2ICQBTK4.js +0 -95
- package/dist/refresh-2ICQBTK4.js.map +0 -1
- package/dist/release-JSZ4JXYJ.js +0 -61
- package/dist/release-JSZ4JXYJ.js.map +0 -1
- package/dist/relevant-pages-VOICMQ7U.js +0 -99
- package/dist/remove-TFUAVRFM.js +0 -51
- package/dist/remove-TFUAVRFM.js.map +0 -1
- package/dist/reopen-5T2PE7MU.js +0 -64
- package/dist/reopen-5T2PE7MU.js.map +0 -1
- package/dist/rerun-EZJ4MLYG.js +0 -93
- package/dist/rerun-EZJ4MLYG.js.map +0 -1
- package/dist/research-BKYSU2C6.js +0 -263
- package/dist/research-BKYSU2C6.js.map +0 -1
- package/dist/research-QU63CJB5.js +0 -72
- package/dist/reset-DKTKZF7G.js +0 -55
- package/dist/reset-DKTKZF7G.js.map +0 -1
- package/dist/reset-SXABIVP6.js +0 -55
- package/dist/reset-SXABIVP6.js.map +0 -1
- package/dist/resolve-L47U2T77.js +0 -122
- package/dist/resolve-L47U2T77.js.map +0 -1
- package/dist/retry-JEWPK2B5.js +0 -63
- package/dist/retry-JEWPK2B5.js.map +0 -1
- package/dist/retry-SXFVLT3W.js +0 -61
- package/dist/retry-SXFVLT3W.js.map +0 -1
- package/dist/revenue-2MAYTXRM.js +0 -89
- package/dist/revenue-2MAYTXRM.js.map +0 -1
- package/dist/rule-writes-S3RN47OG.js +0 -523
- package/dist/rule-writes-S3RN47OG.js.map +0 -1
- package/dist/rules-CHWTFASP.js +0 -97
- package/dist/rules-CHWTFASP.js.map +0 -1
- package/dist/rules-KTJ2ZZ62.js +0 -217
- package/dist/rules-add-3M5TALWN.js +0 -463
- package/dist/rules-add-3M5TALWN.js.map +0 -1
- package/dist/run-2DLA6YO4.js +0 -68
- package/dist/run-JCGH2NHD.js +0 -67
- package/dist/run-JCGH2NHD.js.map +0 -1
- package/dist/scaffold-ad-VEW7JDY7.js +0 -1514
- package/dist/scaffold-ad-VEW7JDY7.js.map +0 -1
- package/dist/scaffold-static-ad-DYRL7DOS.js +0 -1013
- package/dist/scaffold-static-ad-DYRL7DOS.js.map +0 -1
- package/dist/scaffold-video-YRAVVKUH.js +0 -886
- package/dist/scaffold-video-YRAVVKUH.js.map +0 -1
- package/dist/schedule-WYIC6VNW.js +0 -62
- package/dist/schedule-WYIC6VNW.js.map +0 -1
- package/dist/scheduled-agents-FRBF4EOK.js +0 -55
- package/dist/schema-TC2O3FYY.js +0 -133
- package/dist/schema-TC2O3FYY.js.map +0 -1
- package/dist/search-VDW242BN.js +0 -175
- package/dist/search-VDW242BN.js.map +0 -1
- package/dist/select-O5HSSC36.js +0 -104
- package/dist/select-O5HSSC36.js.map +0 -1
- package/dist/sends-6FI7WELX.js +0 -348
- package/dist/sends-6FI7WELX.js.map +0 -1
- package/dist/set-prompt-TI7N64PJ.js +0 -196
- package/dist/set-prompt-TI7N64PJ.js.map +0 -1
- package/dist/setup-links-BM2FTXUZ.js +0 -142
- package/dist/setup-links-BM2FTXUZ.js.map +0 -1
- package/dist/shopify-FIHG5PYP.js +0 -3956
- package/dist/shopify-FIHG5PYP.js.map +0 -1
- package/dist/site-S3IGBMVC.js +0 -178
- package/dist/site-S3IGBMVC.js.map +0 -1
- package/dist/sources-77WLFY4Y.js +0 -30
- package/dist/sources-A4B3R5JC.js +0 -455
- package/dist/sources-A4B3R5JC.js.map +0 -1
- package/dist/stale-YIRCXDOK.js +0 -74
- package/dist/stale-YIRCXDOK.js.map +0 -1
- package/dist/status-6YNR647D.js +0 -63
- package/dist/status-6YNR647D.js.map +0 -1
- package/dist/studies-ZOEUY6YP.js +0 -250
- package/dist/study-writes-DTGMCNFP.js +0 -468
- package/dist/study-writes-DTGMCNFP.js.map +0 -1
- package/dist/sync-FFVWHGLE.js +0 -55
- package/dist/sync-FFVWHGLE.js.map +0 -1
- package/dist/sync-definition-K4XOAG2B.js +0 -67
- package/dist/tags-5KIOGEKN.js +0 -21
- package/dist/tags-5KIOGEKN.js.map +0 -1
- package/dist/tags-BKAN5EAJ.js +0 -21
- package/dist/tags-BKAN5EAJ.js.map +0 -1
- package/dist/tags-ETOOYQ57.js +0 -26
- package/dist/tags-RPNK7TMO.js +0 -225
- package/dist/tags-RPNK7TMO.js.map +0 -1
- package/dist/tags-UM4QO46J.js +0 -21
- package/dist/tags-UM4QO46J.js.map +0 -1
- package/dist/targeting-VBQY3HUN.js +0 -760
- package/dist/targeting-VBQY3HUN.js.map +0 -1
- package/dist/targeting-criteria-L4DYIJZI.js +0 -113
- package/dist/targets-S6N7327Q.js +0 -104
- package/dist/targets-S6N7327Q.js.map +0 -1
- package/dist/testimonials-65N7IYN7.js +0 -32
- package/dist/themes-B4LCQUXB.js +0 -95
- package/dist/top-companies-SJKND75M.js +0 -109
- package/dist/top-companies-SJKND75M.js.map +0 -1
- package/dist/transcript-5I7I6DWL.js +0 -163
- package/dist/transcript-5I7I6DWL.js.map +0 -1
- package/dist/translate-SH6IG5Y7.js +0 -607
- package/dist/translate-SH6IG5Y7.js.map +0 -1
- package/dist/triggers-YRY3HTYU.js +0 -142
- package/dist/triggers-YRY3HTYU.js.map +0 -1
- package/dist/unlink-4B4YTQE4.js +0 -68
- package/dist/unlink-4B4YTQE4.js.map +0 -1
- package/dist/unstage-H5NTDJ6A.js +0 -86
- package/dist/unstage-H5NTDJ6A.js.map +0 -1
- package/dist/unstage-MDSSPUKV.js +0 -95
- package/dist/unstage-MDSSPUKV.js.map +0 -1
- package/dist/update-DI52JJGB.js +0 -99
- package/dist/update-DI52JJGB.js.map +0 -1
- package/dist/update-DMPDLMMV.js +0 -64
- package/dist/update-DMPDLMMV.js.map +0 -1
- package/dist/update-TUS4PJIG.js +0 -190
- package/dist/update-TUS4PJIG.js.map +0 -1
- package/dist/update-Z66LMXNS.js +0 -153
- package/dist/update-Z66LMXNS.js.map +0 -1
- package/dist/upload-7KQYZ7T7.js +0 -127
- package/dist/upload-7KQYZ7T7.js.map +0 -1
- package/dist/url-options-IHL4OU4C.js +0 -130
- package/dist/url-options-IHL4OU4C.js.map +0 -1
- package/dist/url-params-SDA2MWB5.js +0 -99
- package/dist/url-params-SDA2MWB5.js.map +0 -1
- package/dist/validate-ZABZNCSB.js +0 -120
- package/dist/validate-ZABZNCSB.js.map +0 -1
- package/dist/videos-BKVCCKIH.js +0 -41
- package/dist/viewer-check-B5O7ZY3Q.js +0 -81
- package/dist/web-KN3BTVG4.js +0 -141
- package/dist/web-KN3BTVG4.js.map +0 -1
- package/dist/winning-ads-JIDPISKM.js +0 -86
- package/dist/write-commands-K6M3RTVK.js +0 -1170
- package/dist/write-commands-K6M3RTVK.js.map +0 -1
- package/dist/write-commands-RVHLLLDR.js +0 -1498
- package/dist/write-commands-RVHLLLDR.js.map +0 -1
- package/dist/x-NLGWZCGX.js +0 -47
- /package/dist/{account-assets-O7IA37RE.js.map → account-assets-J5Z4URLQ.js.map} +0 -0
- /package/dist/{account-reads-SNOWDHHF.js.map → account-reads-2MSUVG46.js.map} +0 -0
- /package/dist/{actions-Y4SULW2E.js.map → actions-D7OWCP36.js.map} +0 -0
- /package/dist/{ads-2TVWICGM.js.map → ads-HLUJB5SQ.js.map} +0 -0
- /package/dist/{ads-KBE5JXCH.js.map → ads-MAOI7S6V.js.map} +0 -0
- /package/dist/{adsets-YWBJFPAZ.js.map → adsets-QRKICEFD.js.map} +0 -0
- /package/dist/{asset-writes-72DEVXGO.js.map → asset-writes-JLVUAVUZ.js.map} +0 -0
- /package/dist/{audiences-QAH42HIM.js.map → audiences-CDDI5HR5.js.map} +0 -0
- /package/dist/{avatars-P4UPNZM4.js.map → avatars-WZ2JDMHH.js.map} +0 -0
- /package/dist/{brand-HALQWZWB.js.map → brand-IZTTBZII.js.map} +0 -0
- /package/dist/{campaigns-YMM5TQVO.js.map → campaigns-4Y3JQC2U.js.map} +0 -0
- /package/dist/{campaigns-XZOQ2VTK.js.map → campaigns-HES5MDUG.js.map} +0 -0
- /package/dist/{canvas-IJS7H3VE.js.map → canvas-IQ753Q2O.js.map} +0 -0
- /package/dist/{changes-36C754R4.js.map → changes-VWKTM27U.js.map} +0 -0
- /package/dist/{chatgpt-3WFOPURY.js.map → chatgpt-OPOD2WHB.js.map} +0 -0
- /package/dist/{chunk-DUR7PEJI.js.map → chunk-2GYCWRF3.js.map} +0 -0
- /package/dist/{chunk-QBRPM3DQ.js.map → chunk-2L7F7KR4.js.map} +0 -0
- /package/dist/{chunk-4GAEB6NK.js.map → chunk-44ZRCSR7.js.map} +0 -0
- /package/dist/{chunk-2TOIY2WN.js.map → chunk-46YLDIQG.js.map} +0 -0
- /package/dist/{chunk-R53XMPDO.js.map → chunk-4EDWXZ3I.js.map} +0 -0
- /package/dist/{chunk-H4NNQGG6.js.map → chunk-4FFBGR5L.js.map} +0 -0
- /package/dist/{chunk-XGPU2VDU.js.map → chunk-4UQRXKYJ.js.map} +0 -0
- /package/dist/{chunk-N7M2TWR5.js.map → chunk-4UZUUSVL.js.map} +0 -0
- /package/dist/{chunk-I47BEKYK.js.map → chunk-4XHCEYHI.js.map} +0 -0
- /package/dist/{chunk-SCL7PM6P.js.map → chunk-4Z6PVR3M.js.map} +0 -0
- /package/dist/{chunk-ZEC46NWW.js.map → chunk-5Y5FZV2W.js.map} +0 -0
- /package/dist/{chunk-G5Y7OIPL.js.map → chunk-6HJXLGDV.js.map} +0 -0
- /package/dist/{chunk-QW6HL7D6.js.map → chunk-6S5CWGDA.js.map} +0 -0
- /package/dist/{chunk-5RVQK3SP.js.map → chunk-6VYROVWO.js.map} +0 -0
- /package/dist/{chunk-TVAIOC77.js.map → chunk-7BUIOP36.js.map} +0 -0
- /package/dist/{chunk-NDFS3APP.js.map → chunk-AQRXXC6E.js.map} +0 -0
- /package/dist/{chunk-ZFC562TP.js.map → chunk-ARBXT73X.js.map} +0 -0
- /package/dist/{chunk-KQTNUDKD.js.map → chunk-BEZHQIEI.js.map} +0 -0
- /package/dist/{chunk-5SRUAGTG.js.map → chunk-BFURWHVR.js.map} +0 -0
- /package/dist/{chunk-KBRJSPIM.js.map → chunk-DSCEXBDR.js.map} +0 -0
- /package/dist/{chunk-Z7YMSHRZ.js.map → chunk-FLWDFPXE.js.map} +0 -0
- /package/dist/{chunk-GACSA5A6.js.map → chunk-FRNBRN2C.js.map} +0 -0
- /package/dist/{chunk-C7QQQVBS.js.map → chunk-GE3VT3CA.js.map} +0 -0
- /package/dist/{chunk-P6BKKUSX.js.map → chunk-HGBJQGO5.js.map} +0 -0
- /package/dist/{chunk-MGYC2IRC.js.map → chunk-I7AYMJZA.js.map} +0 -0
- /package/dist/{chunk-BRLZX3VP.js.map → chunk-IRM273C7.js.map} +0 -0
- /package/dist/{chunk-AYPBARKP.js.map → chunk-IWKD56AY.js.map} +0 -0
- /package/dist/{chunk-MZCTX37B.js.map → chunk-JLAQWMVF.js.map} +0 -0
- /package/dist/{chunk-AQOFQNKQ.js.map → chunk-K6NULQN7.js.map} +0 -0
- /package/dist/{chunk-GMHCHHAA.js.map → chunk-L2BRAC2J.js.map} +0 -0
- /package/dist/{chunk-SVBJ56T7.js.map → chunk-LGMI4LSY.js.map} +0 -0
- /package/dist/{chunk-OJGYYH6K.js.map → chunk-NB2FU6EZ.js.map} +0 -0
- /package/dist/{chunk-TVTSA4EN.js.map → chunk-NWF2LRKO.js.map} +0 -0
- /package/dist/{chunk-6Z7Y4KQB.js.map → chunk-OG47L5GG.js.map} +0 -0
- /package/dist/{chunk-AIRD6T4W.js.map → chunk-OR6KVLI5.js.map} +0 -0
- /package/dist/{chunk-OBJCNGZL.js.map → chunk-QDQZ62FL.js.map} +0 -0
- /package/dist/{chunk-FPWQA7TK.js.map → chunk-QIOFOD4K.js.map} +0 -0
- /package/dist/{chunk-XQXZJ5IR.js.map → chunk-R2SYF5FC.js.map} +0 -0
- /package/dist/{chunk-YMF2RG4Z.js.map → chunk-RTH2I55B.js.map} +0 -0
- /package/dist/{chunk-FFFJBNHA.js.map → chunk-S6VFDNSQ.js.map} +0 -0
- /package/dist/{chunk-ZNRGH4NS.js.map → chunk-SG2TDQEE.js.map} +0 -0
- /package/dist/{chunk-RFIUOQLN.js.map → chunk-T3P6O2VU.js.map} +0 -0
- /package/dist/{chunk-BTJSGJNQ.js.map → chunk-TXDE2QJ3.js.map} +0 -0
- /package/dist/{chunk-HSQRITKG.js.map → chunk-UDIEKCIR.js.map} +0 -0
- /package/dist/{chunk-MBSFEVOG.js.map → chunk-USCADMM3.js.map} +0 -0
- /package/dist/{chunk-SM7G7RUA.js.map → chunk-UUGISMNE.js.map} +0 -0
- /package/dist/{chunk-Z2DRGXBB.js.map → chunk-VDPOCAQ2.js.map} +0 -0
- /package/dist/{chunk-PLAOK4AK.js.map → chunk-VEJ3QX6M.js.map} +0 -0
- /package/dist/{chunk-ARUXGKZO.js.map → chunk-VFJB7OG6.js.map} +0 -0
- /package/dist/{chunk-RVEY7BTT.js.map → chunk-VRIPVLE7.js.map} +0 -0
- /package/dist/{chunk-5XTGG4PV.js.map → chunk-WFY7KSHB.js.map} +0 -0
- /package/dist/{chunk-D3KLDIPQ.js.map → chunk-WLESMH4J.js.map} +0 -0
- /package/dist/{chunk-PLBITHV6.js.map → chunk-XHQYFNNK.js.map} +0 -0
- /package/dist/{chunk-QMDMTZAW.js.map → chunk-YILZR3XI.js.map} +0 -0
- /package/dist/{chunk-W574NV67.js.map → chunk-YJFLXOH4.js.map} +0 -0
- /package/dist/{chunk-MUXKYSTI.js.map → chunk-YWHZYR6S.js.map} +0 -0
- /package/dist/{connect-PP6Z3F7Y.js.map → connect-3YY7MF3I.js.map} +0 -0
- /package/dist/{conversion-upload-command-KTYAY7IG.js.map → conversion-upload-command-7RSZ5ZQU.js.map} +0 -0
- /package/dist/{creatives-UJDPD4CI.js.map → creatives-2DR3QHJW.js.map} +0 -0
- /package/dist/{creatives-JPKA2RHU.js.map → creatives-BB6S2OF6.js.map} +0 -0
- /package/dist/{currency-R4ORE2U3.js.map → currency-X7Y6TSLF.js.map} +0 -0
- /package/dist/{custom-conversions-5HJBB5XL.js.map → custom-conversions-HAGG72LF.js.map} +0 -0
- /package/dist/{customers-7J3QGSOJ.js.map → customers-663K2OCP.js.map} +0 -0
- /package/dist/{discover-GSJRZUOC.js.map → discover-6DORQWXY.js.map} +0 -0
- /package/dist/{draft-WYDMLNYA.js.map → draft-R6EKORNS.js.map} +0 -0
- /package/dist/{fit-N7WDGWYZ.js.map → fit-BEFCY2B4.js.map} +0 -0
- /package/dist/{fonts-TTUAP7HS.js.map → fonts-C6XN5667.js.map} +0 -0
- /package/dist/{forecast-4AG5F7YC.js.map → forecast-BTPIXEQ5.js.map} +0 -0
- /package/dist/{google-NAA4BASO.js.map → google-M6BJ22UL.js.map} +0 -0
- /package/dist/{ideas-SUXKKZC7.js.map → ideas-M66FU45H.js.map} +0 -0
- /package/dist/{images-VKVZ3DWG.js.map → images-MM5OPUKV.js.map} +0 -0
- /package/dist/{ingest-BBBFT6FZ.js.map → ingest-KMLYCFF4.js.map} +0 -0
- /package/dist/{intent-NSHW7EJT.js.map → intent-YCQCUCV3.js.map} +0 -0
- /package/dist/{keyword-gap-ITTWKBWZ.js.map → keyword-gap-PUSF7EKY.js.map} +0 -0
- /package/dist/{landing-KZ4OSHHR.js.map → landing-OZU5RRFV.js.map} +0 -0
- /package/dist/{languages-MEFQQBJ2.js.map → languages-SLFV73GE.js.map} +0 -0
- /package/dist/{line-items-G5YJG25N.js.map → line-items-NJMEPEF5.js.map} +0 -0
- /package/dist/{locations-RLWAS6AC.js.map → locations-T2OMP6QN.js.map} +0 -0
- /package/dist/{lookup-ZJIP2M4X.js.map → lookup-S5VG7AWH.js.map} +0 -0
- /package/dist/{media-ZWN7E777.js.map → media-P4T4ZBNS.js.map} +0 -0
- /package/dist/{media-sources-GKSEDSE3.js.map → media-sources-EQI3U4TC.js.map} +0 -0
- /package/dist/{meta-EHKXH257.js.map → meta-IPLWNYC7.js.map} +0 -0
- /package/dist/{metrics-K6FDCMK7.js.map → metrics-4YVJHYRI.js.map} +0 -0
- /package/dist/{performance-6TPJGM6A.js.map → performance-NIF3CESZ.js.map} +0 -0
- /package/dist/{promoted-tweets-7P4TSQU7.js.map → promoted-tweets-RJT53DRM.js.map} +0 -0
- /package/dist/{query-QM7MBQD7.js.map → query-XZMDGRO5.js.map} +0 -0
- /package/dist/{reddit-SN5CESF4.js.map → reddit-JIHMAKAQ.js.map} +0 -0
- /package/dist/{relevant-pages-VOICMQ7U.js.map → relevant-pages-FS7GBVXK.js.map} +0 -0
- /package/dist/{research-QU63CJB5.js.map → research-PNBACCCP.js.map} +0 -0
- /package/dist/{rules-KTJ2ZZ62.js.map → rules-ZVS2MWED.js.map} +0 -0
- /package/dist/{run-2DLA6YO4.js.map → run-QCNRR3CA.js.map} +0 -0
- /package/dist/{scheduled-agents-FRBF4EOK.js.map → scheduled-agents-OXYAVSIE.js.map} +0 -0
- /package/dist/{sources-77WLFY4Y.js.map → sources-FLUGHSVP.js.map} +0 -0
- /package/dist/{studies-ZOEUY6YP.js.map → studies-EPO2AM4M.js.map} +0 -0
- /package/dist/{sync-definition-K4XOAG2B.js.map → sync-definition-OGQ5XTQE.js.map} +0 -0
- /package/dist/{tags-ETOOYQ57.js.map → tags-CZTRQNXV.js.map} +0 -0
- /package/dist/{targeting-criteria-L4DYIJZI.js.map → targeting-criteria-AQYXVSGN.js.map} +0 -0
- /package/dist/{testimonials-65N7IYN7.js.map → testimonials-G3OCNPBY.js.map} +0 -0
- /package/dist/{themes-B4LCQUXB.js.map → themes-FEVYZZCW.js.map} +0 -0
- /package/dist/{videos-BKVCCKIH.js.map → videos-36AXDUGZ.js.map} +0 -0
- /package/dist/{viewer-check-B5O7ZY3Q.js.map → viewer-check-6HL4OUQY.js.map} +0 -0
- /package/dist/{winning-ads-JIDPISKM.js.map → winning-ads-GMM5W2O4.js.map} +0 -0
- /package/dist/{x-NLGWZCGX.js.map → x-HGFAL3NY.js.map} +0 -0
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
command,
|
|
3
|
-
creativesDeleteCommand,
|
|
4
|
-
customConversionsDeleteCommand,
|
|
5
|
-
customConversionsUpdateCommand,
|
|
6
|
-
labelsAttachCommand,
|
|
7
|
-
labelsCreateCommand,
|
|
8
|
-
labelsDeleteCommand,
|
|
9
|
-
labelsDetachCommand,
|
|
10
|
-
labelsRenameCommand,
|
|
11
|
-
mediaDeleteCommand
|
|
12
|
-
} from "./chunk-XGPU2VDU.js";
|
|
13
|
-
import "./chunk-OBJCNGZL.js";
|
|
14
|
-
import "./chunk-VIPKDXGU.js";
|
|
15
|
-
import "./chunk-GDFJOCDO.js";
|
|
16
|
-
import "./chunk-B2POVFR2.js";
|
|
17
|
-
import "./chunk-ERSX3MKH.js";
|
|
18
|
-
import "./chunk-SCAGMX2I.js";
|
|
19
|
-
import "./chunk-4NZ47VXO.js";
|
|
20
|
-
import "./chunk-D5FY4FAK.js";
|
|
21
|
-
import "./chunk-QPESDKZC.js";
|
|
22
|
-
import "./chunk-Y2JZX6JB.js";
|
|
23
|
-
import "./chunk-ZRP7Y2DM.js";
|
|
24
|
-
import "./chunk-E44NXCTL.js";
|
|
25
|
-
import "./chunk-EJGAJHLB.js";
|
|
26
|
-
import "./chunk-LNNTHEL7.js";
|
|
27
|
-
import "./chunk-FOMFU2RX.js";
|
|
28
|
-
import "./chunk-PSGIHSNC.js";
|
|
29
|
-
import "./chunk-PONLPYD7.js";
|
|
30
|
-
import "./chunk-NSBNIPIW.js";
|
|
31
|
-
import "./chunk-X7VQFLHI.js";
|
|
32
|
-
import "./chunk-LU4HI4KI.js";
|
|
33
|
-
import "./chunk-LGK7UWBN.js";
|
|
34
|
-
import "./chunk-Q7US4OOA.js";
|
|
35
|
-
import "./chunk-YQSBHWOI.js";
|
|
36
|
-
export {
|
|
37
|
-
command,
|
|
38
|
-
creativesDeleteCommand,
|
|
39
|
-
customConversionsDeleteCommand,
|
|
40
|
-
customConversionsUpdateCommand,
|
|
41
|
-
labelsAttachCommand,
|
|
42
|
-
labelsCreateCommand,
|
|
43
|
-
labelsDeleteCommand,
|
|
44
|
-
labelsDetachCommand,
|
|
45
|
-
labelsRenameCommand,
|
|
46
|
-
mediaDeleteCommand
|
|
47
|
-
};
|
|
48
|
-
//# sourceMappingURL=asset-writes-72DEVXGO.js.map
|
package/dist/assign-EKCGLNZB.js
DELETED
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
failApi,
|
|
3
|
-
failValidation,
|
|
4
|
-
isTempId
|
|
5
|
-
} from "./chunk-HSQRITKG.js";
|
|
6
|
-
import "./chunk-JND6XSGZ.js";
|
|
7
|
-
import "./chunk-CAZGM2NX.js";
|
|
8
|
-
import "./chunk-NZS3KEQ2.js";
|
|
9
|
-
import "./chunk-GIWHHCD6.js";
|
|
10
|
-
import "./chunk-NSBNIPIW.js";
|
|
11
|
-
import "./chunk-2TOIY2WN.js";
|
|
12
|
-
import {
|
|
13
|
-
apiPost,
|
|
14
|
-
validateConvexId
|
|
15
|
-
} from "./chunk-X7VQFLHI.js";
|
|
16
|
-
import "./chunk-LU4HI4KI.js";
|
|
17
|
-
import {
|
|
18
|
-
requireChatId
|
|
19
|
-
} from "./chunk-LGK7UWBN.js";
|
|
20
|
-
import {
|
|
21
|
-
registerSchema,
|
|
22
|
-
writeJson
|
|
23
|
-
} from "./chunk-Q7US4OOA.js";
|
|
24
|
-
import "./chunk-YQSBHWOI.js";
|
|
25
|
-
|
|
26
|
-
// src/commands/actions/assign.ts
|
|
27
|
-
import { defineCommand } from "citty";
|
|
28
|
-
registerSchema({
|
|
29
|
-
command: "actions.assign",
|
|
30
|
-
description: "Stage who a Task is assigned to \u2014 applies when the chat is published, like every other Task change. --to takes a userId or email from `baker actions members` (only those teammates can be named), or `none` to unassign. Works on a published Task by id or on one this chat is creating by its tempId. Restaging replaces the earlier assignment; drop it with `baker actions draft remove <id> --op assign`. No claim needed; blocked only while another chat has the Task claimed.",
|
|
31
|
-
args: {
|
|
32
|
-
id: { type: "string", description: "Action ID, or tempId (temp_*) of a Task staged in this chat", required: true },
|
|
33
|
-
to: {
|
|
34
|
-
type: "string",
|
|
35
|
-
description: "userId or email from `baker actions members`, or `none` to unassign",
|
|
36
|
-
required: true
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
});
|
|
40
|
-
function assignBody(args, chatId) {
|
|
41
|
-
const to = args.to?.trim();
|
|
42
|
-
if (!to) {
|
|
43
|
-
failValidation("--to is required: a userId or email from `baker actions members`, or `none` to unassign the Task.");
|
|
44
|
-
}
|
|
45
|
-
if (!isTempId(args.ref)) {
|
|
46
|
-
validateConvexId(args.ref);
|
|
47
|
-
}
|
|
48
|
-
return { chatId, actionRef: args.ref, to };
|
|
49
|
-
}
|
|
50
|
-
var assignCommand = defineCommand({
|
|
51
|
-
meta: {
|
|
52
|
-
name: "assign",
|
|
53
|
-
description: "Stage who a Task is assigned to (applies on publish). Examples: baker actions assign <id> --to maria@empresa.com | baker actions assign temp_brief --to <userId> | baker actions assign <id> --to none"
|
|
54
|
-
},
|
|
55
|
-
args: {
|
|
56
|
-
id: { type: "positional", description: "Action ID or tempId (temp_*)", required: false },
|
|
57
|
-
"action-id": { type: "string", description: "Action ID or tempId (temp_*)", required: false },
|
|
58
|
-
to: { type: "string", description: "userId or email from `baker actions members`, or none", required: false }
|
|
59
|
-
},
|
|
60
|
-
run: async ({ args }) => {
|
|
61
|
-
try {
|
|
62
|
-
const ref = args.id || args["action-id"];
|
|
63
|
-
if (!ref) {
|
|
64
|
-
failValidation("Action ID is required.");
|
|
65
|
-
}
|
|
66
|
-
const body = assignBody({ ref, ...typeof args.to === "string" ? { to: args.to } : {} }, requireChatId());
|
|
67
|
-
const response = await apiPost("/api/actions/assign", body);
|
|
68
|
-
writeJson({ ...response, hints: ["Staged: the Task changes hands when the chat is published."] });
|
|
69
|
-
} catch (err) {
|
|
70
|
-
failApi(err);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
});
|
|
74
|
-
export {
|
|
75
|
-
assignBody,
|
|
76
|
-
assignCommand
|
|
77
|
-
};
|
|
78
|
-
//# sourceMappingURL=assign-EKCGLNZB.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/actions/assign.ts"],"sourcesContent":["import type { ActionsAssignRequest, ActionsAssignResponse } from \"@baker/api\";\nimport { defineCommand } from \"citty\";\nimport { apiPost, validateConvexId } from \"../../client.ts\";\nimport { requireChatId } from \"../../env.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { failApi, failValidation, isTempId } from \"./shared.ts\";\n\nregisterSchema({\n command: \"actions.assign\",\n description:\n \"Stage who a Task is assigned to — applies when the chat is published, like every other Task change. --to takes a userId or email from `baker actions members` (only those teammates can be named), or `none` to unassign. Works on a published Task by id or on one this chat is creating by its tempId. Restaging replaces the earlier assignment; drop it with `baker actions draft remove <id> --op assign`. No claim needed; blocked only while another chat has the Task claimed.\",\n args: {\n id: { type: \"string\", description: \"Action ID, or tempId (temp_*) of a Task staged in this chat\", required: true },\n to: {\n type: \"string\",\n description: \"userId or email from `baker actions members`, or `none` to unassign\",\n required: true,\n },\n },\n});\n\n/** The request for one assignment, checked before the round trip. */\nexport function assignBody(args: { ref: string; to?: string }, chatId: string): ActionsAssignRequest {\n const to = args.to?.trim();\n if (!to) {\n failValidation(\"--to is required: a userId or email from `baker actions members`, or `none` to unassign the Task.\");\n }\n if (!isTempId(args.ref)) {\n validateConvexId(args.ref);\n }\n return { chatId, actionRef: args.ref, to };\n}\n\nexport const assignCommand = defineCommand({\n meta: {\n name: \"assign\",\n description:\n \"Stage who a Task is assigned to (applies on publish). Examples: baker actions assign <id> --to maria@empresa.com | baker actions assign temp_brief --to <userId> | baker actions assign <id> --to none\",\n },\n args: {\n id: { type: \"positional\", description: \"Action ID or tempId (temp_*)\", required: false },\n \"action-id\": { type: \"string\", description: \"Action ID or tempId (temp_*)\", required: false },\n to: { type: \"string\", description: \"userId or email from `baker actions members`, or none\", required: false },\n },\n run: async ({ args }) => {\n try {\n const ref = (args.id as string | undefined) || (args[\"action-id\"] as string | undefined);\n if (!ref) {\n failValidation(\"Action ID is required.\");\n }\n const body = assignBody({ ref, ...(typeof args.to === \"string\" ? { to: args.to } : {}) }, requireChatId());\n const response = await apiPost<ActionsAssignResponse>(\"/api/actions/assign\", body);\n writeJson({ ...response, hints: [\"Staged: the Task changes hands when the chat is published.\"] });\n } catch (err) {\n failApi(err);\n }\n },\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,SAAS,qBAAqB;AAO9B,eAAe;AAAA,EACb,SAAS;AAAA,EACT,aACE;AAAA,EACF,MAAM;AAAA,IACJ,IAAI,EAAE,MAAM,UAAU,aAAa,+DAA+D,UAAU,KAAK;AAAA,IACjH,IAAI;AAAA,MACF,MAAM;AAAA,MACN,aAAa;AAAA,MACb,UAAU;AAAA,IACZ;AAAA,EACF;AACF,CAAC;AAGM,SAAS,WAAW,MAAoC,QAAsC;AACnG,QAAM,KAAK,KAAK,IAAI,KAAK;AACzB,MAAI,CAAC,IAAI;AACP,mBAAe,mGAAmG;AAAA,EACpH;AACA,MAAI,CAAC,SAAS,KAAK,GAAG,GAAG;AACvB,qBAAiB,KAAK,GAAG;AAAA,EAC3B;AACA,SAAO,EAAE,QAAQ,WAAW,KAAK,KAAK,GAAG;AAC3C;AAEO,IAAM,gBAAgB,cAAc;AAAA,EACzC,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aACE;AAAA,EACJ;AAAA,EACA,MAAM;AAAA,IACJ,IAAI,EAAE,MAAM,cAAc,aAAa,gCAAgC,UAAU,MAAM;AAAA,IACvF,aAAa,EAAE,MAAM,UAAU,aAAa,gCAAgC,UAAU,MAAM;AAAA,IAC5F,IAAI,EAAE,MAAM,UAAU,aAAa,yDAAyD,UAAU,MAAM;AAAA,EAC9G;AAAA,EACA,KAAK,OAAO,EAAE,KAAK,MAAM;AACvB,QAAI;AACF,YAAM,MAAO,KAAK,MAA8B,KAAK,WAAW;AAChE,UAAI,CAAC,KAAK;AACR,uBAAe,wBAAwB;AAAA,MACzC;AACA,YAAM,OAAO,WAAW,EAAE,KAAK,GAAI,OAAO,KAAK,OAAO,WAAW,EAAE,IAAI,KAAK,GAAG,IAAI,CAAC,EAAG,GAAG,cAAc,CAAC;AACzG,YAAM,WAAW,MAAM,QAA+B,uBAAuB,IAAI;AACjF,gBAAU,EAAE,GAAG,UAAU,OAAO,CAAC,4DAA4D,EAAE,CAAC;AAAA,IAClG,SAAS,KAAK;AACZ,cAAQ,GAAG;AAAA,IACb;AAAA,EACF;AACF,CAAC;","names":[]}
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
handleLinkedinError,
|
|
3
|
-
loadTargetingArg,
|
|
4
|
-
resolveAccountIdArg
|
|
5
|
-
} from "./chunk-BRLZX3VP.js";
|
|
6
|
-
import {
|
|
7
|
-
writeAdsJson
|
|
8
|
-
} from "./chunk-ZRP7Y2DM.js";
|
|
9
|
-
import {
|
|
10
|
-
NO_CACHE_ARG
|
|
11
|
-
} from "./chunk-AGBBTTKA.js";
|
|
12
|
-
import "./chunk-JND6XSGZ.js";
|
|
13
|
-
import "./chunk-CAZGM2NX.js";
|
|
14
|
-
import "./chunk-NZS3KEQ2.js";
|
|
15
|
-
import "./chunk-GIWHHCD6.js";
|
|
16
|
-
import "./chunk-NSBNIPIW.js";
|
|
17
|
-
import "./chunk-2TOIY2WN.js";
|
|
18
|
-
import {
|
|
19
|
-
apiPost
|
|
20
|
-
} from "./chunk-X7VQFLHI.js";
|
|
21
|
-
import "./chunk-LU4HI4KI.js";
|
|
22
|
-
import "./chunk-LGK7UWBN.js";
|
|
23
|
-
import "./chunk-Q7US4OOA.js";
|
|
24
|
-
import "./chunk-YQSBHWOI.js";
|
|
25
|
-
|
|
26
|
-
// src/commands/ads/linkedin/audience-size.ts
|
|
27
|
-
import { defineCommand } from "citty";
|
|
28
|
-
var audienceSizeCommand = defineCommand({
|
|
29
|
-
meta: {
|
|
30
|
-
name: "audience-size",
|
|
31
|
-
description: `Estimate audience size for a targeting payload \u2014 pre-launch sanity check.
|
|
32
|
-
|
|
33
|
-
Returns total + active counts plus playbook \xA704 warnings:
|
|
34
|
-
size <20K \u2192 too narrow (will not deliver)
|
|
35
|
-
size <50K \u2192 outside the 50K\u2013500K sweet spot
|
|
36
|
-
size >500K \u2192 outside the sweet spot
|
|
37
|
-
size >1M \u2192 too broad, refine ICP
|
|
38
|
-
|
|
39
|
-
The targeting payload must follow LinkedIn's 'targetingCriteria' shape \u2014 an
|
|
40
|
-
include/exclude tree of and/or boolean operators with adTargetingFacet keys.
|
|
41
|
-
The simplest form:
|
|
42
|
-
{ "include": { "and": [{ "or": { "urn:li:adTargetingFacet:locations": ["urn:li:geo:103644278"] }}]}}
|
|
43
|
-
|
|
44
|
-
Examples:
|
|
45
|
-
baker ads linkedin audience-size --account-id 503001492 --targeting-file targeting.json
|
|
46
|
-
baker ads linkedin audience-size --account-id 503001492 --targeting '{"include":{"and":[]}}'`
|
|
47
|
-
},
|
|
48
|
-
args: {
|
|
49
|
-
"account-id": { type: "string", description: "Numeric account ID or urn:li:sponsoredAccount:N" },
|
|
50
|
-
"account-urn": { type: "string", description: "Alias for --account-id" },
|
|
51
|
-
targeting: { type: "string", description: "Inline JSON targetingCriteria payload" },
|
|
52
|
-
"targeting-file": { type: "string", description: "Path to JSON file with targetingCriteria" },
|
|
53
|
-
"no-cache": NO_CACHE_ARG,
|
|
54
|
-
output: { type: "string", description: "json", default: "json" }
|
|
55
|
-
},
|
|
56
|
-
run: async ({ args }) => {
|
|
57
|
-
const accountId = resolveAccountIdArg(args);
|
|
58
|
-
const targetingCriteria = loadTargetingArg(args);
|
|
59
|
-
try {
|
|
60
|
-
const data = await apiPost("/api/ads/linkedin/audience-size", {
|
|
61
|
-
accountId,
|
|
62
|
-
targetingCriteria,
|
|
63
|
-
skipCache: Boolean(args["no-cache"])
|
|
64
|
-
});
|
|
65
|
-
writeAdsJson({ ok: true, data });
|
|
66
|
-
} catch (err) {
|
|
67
|
-
handleLinkedinError(err);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
});
|
|
71
|
-
export {
|
|
72
|
-
audienceSizeCommand
|
|
73
|
-
};
|
|
74
|
-
//# sourceMappingURL=audience-size-IKXK32HU.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/ads/linkedin/audience-size.ts"],"sourcesContent":["import { defineCommand } from \"citty\";\nimport { NO_CACHE_ARG } from \"../../../cache-flag.ts\";\nimport { apiPost } from \"../../../client.ts\";\nimport { writeAdsJson } from \"../output.ts\";\nimport { handleLinkedinError, loadTargetingArg, resolveAccountIdArg } from \"./shared.ts\";\n\ninterface AudienceSizeResult {\n total: number;\n active: number;\n warnings: string[];\n}\n\nexport const audienceSizeCommand = defineCommand({\n meta: {\n name: \"audience-size\",\n description: `Estimate audience size for a targeting payload — pre-launch sanity check.\n\nReturns total + active counts plus playbook §04 warnings:\n size <20K → too narrow (will not deliver)\n size <50K → outside the 50K–500K sweet spot\n size >500K → outside the sweet spot\n size >1M → too broad, refine ICP\n\nThe targeting payload must follow LinkedIn's 'targetingCriteria' shape — an\ninclude/exclude tree of and/or boolean operators with adTargetingFacet keys.\nThe simplest form:\n { \"include\": { \"and\": [{ \"or\": { \"urn:li:adTargetingFacet:locations\": [\"urn:li:geo:103644278\"] }}]}}\n\nExamples:\n baker ads linkedin audience-size --account-id 503001492 --targeting-file targeting.json\n baker ads linkedin audience-size --account-id 503001492 --targeting '{\"include\":{\"and\":[]}}'`,\n },\n args: {\n \"account-id\": { type: \"string\", description: \"Numeric account ID or urn:li:sponsoredAccount:N\" },\n \"account-urn\": { type: \"string\", description: \"Alias for --account-id\" },\n targeting: { type: \"string\", description: \"Inline JSON targetingCriteria payload\" },\n \"targeting-file\": { type: \"string\", description: \"Path to JSON file with targetingCriteria\" },\n \"no-cache\": NO_CACHE_ARG,\n output: { type: \"string\", description: \"json\", default: \"json\" },\n },\n run: async ({ args }) => {\n const accountId = resolveAccountIdArg(args);\n const targetingCriteria = loadTargetingArg(args);\n try {\n const data = await apiPost<AudienceSizeResult>(\"/api/ads/linkedin/audience-size\", {\n accountId,\n targetingCriteria,\n skipCache: Boolean(args[\"no-cache\"]),\n });\n writeAdsJson({ ok: true, data });\n } catch (err) {\n handleLinkedinError(err);\n }\n },\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAS,qBAAqB;AAYvB,IAAM,sBAAsB,cAAc;AAAA,EAC/C,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAgBf;AAAA,EACA,MAAM;AAAA,IACJ,cAAc,EAAE,MAAM,UAAU,aAAa,kDAAkD;AAAA,IAC/F,eAAe,EAAE,MAAM,UAAU,aAAa,yBAAyB;AAAA,IACvE,WAAW,EAAE,MAAM,UAAU,aAAa,wCAAwC;AAAA,IAClF,kBAAkB,EAAE,MAAM,UAAU,aAAa,2CAA2C;AAAA,IAC5F,YAAY;AAAA,IACZ,QAAQ,EAAE,MAAM,UAAU,aAAa,QAAQ,SAAS,OAAO;AAAA,EACjE;AAAA,EACA,KAAK,OAAO,EAAE,KAAK,MAAM;AACvB,UAAM,YAAY,oBAAoB,IAAI;AAC1C,UAAM,oBAAoB,iBAAiB,IAAI;AAC/C,QAAI;AACF,YAAM,OAAO,MAAM,QAA4B,mCAAmC;AAAA,QAChF;AAAA,QACA;AAAA,QACA,WAAW,QAAQ,KAAK,UAAU,CAAC;AAAA,MACrC,CAAC;AACD,mBAAa,EAAE,IAAI,MAAM,KAAK,CAAC;AAAA,IACjC,SAAS,KAAK;AACZ,0BAAoB,GAAG;AAAA,IACzB;AAAA,EACF;AACF,CAAC;","names":[]}
|
|
@@ -1,325 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
DATE_ORDERS,
|
|
3
|
-
customerListBatches,
|
|
4
|
-
customerListFromFile,
|
|
5
|
-
customerListUploadRefusal
|
|
6
|
-
} from "./chunk-CCEDZTP7.js";
|
|
7
|
-
import {
|
|
8
|
-
bareAccountId,
|
|
9
|
-
failWriteValidation,
|
|
10
|
-
repeatedListFlag,
|
|
11
|
-
requireTarget,
|
|
12
|
-
stageOp
|
|
13
|
-
} from "./chunk-OBJCNGZL.js";
|
|
14
|
-
import {
|
|
15
|
-
CUSTOMER_LIST_BATCH_ROWS,
|
|
16
|
-
CUSTOMER_LIST_MAX_BATCHES,
|
|
17
|
-
brandSafetyTargetingFields
|
|
18
|
-
} from "./chunk-VIPKDXGU.js";
|
|
19
|
-
import "./chunk-GDFJOCDO.js";
|
|
20
|
-
import {
|
|
21
|
-
csvOrJson,
|
|
22
|
-
handleMetaError,
|
|
23
|
-
resolveAccountIdArg
|
|
24
|
-
} from "./chunk-B2POVFR2.js";
|
|
25
|
-
import "./chunk-ERSX3MKH.js";
|
|
26
|
-
import "./chunk-SCAGMX2I.js";
|
|
27
|
-
import "./chunk-4NZ47VXO.js";
|
|
28
|
-
import "./chunk-D5FY4FAK.js";
|
|
29
|
-
import "./chunk-QPESDKZC.js";
|
|
30
|
-
import "./chunk-Y2JZX6JB.js";
|
|
31
|
-
import {
|
|
32
|
-
writeAdsOutput,
|
|
33
|
-
writeJsonEnvelope
|
|
34
|
-
} from "./chunk-ZRP7Y2DM.js";
|
|
35
|
-
import "./chunk-E44NXCTL.js";
|
|
36
|
-
import "./chunk-EJGAJHLB.js";
|
|
37
|
-
import "./chunk-LNNTHEL7.js";
|
|
38
|
-
import "./chunk-FOMFU2RX.js";
|
|
39
|
-
import "./chunk-PSGIHSNC.js";
|
|
40
|
-
import "./chunk-PONLPYD7.js";
|
|
41
|
-
import "./chunk-NSBNIPIW.js";
|
|
42
|
-
import {
|
|
43
|
-
apiGet,
|
|
44
|
-
apiPost
|
|
45
|
-
} from "./chunk-X7VQFLHI.js";
|
|
46
|
-
import "./chunk-LU4HI4KI.js";
|
|
47
|
-
import {
|
|
48
|
-
requireChatId
|
|
49
|
-
} from "./chunk-LGK7UWBN.js";
|
|
50
|
-
import {
|
|
51
|
-
registerSchema
|
|
52
|
-
} from "./chunk-Q7US4OOA.js";
|
|
53
|
-
import "./chunk-YQSBHWOI.js";
|
|
54
|
-
|
|
55
|
-
// src/commands/ads/meta/audience-writes.ts
|
|
56
|
-
import { readFileSync } from "fs";
|
|
57
|
-
import { defineCommand } from "citty";
|
|
58
|
-
var STAGED_NOTE = "Staged until publish \u2014 review with `baker ads meta draft`.";
|
|
59
|
-
var membersArgs = {
|
|
60
|
-
id: {
|
|
61
|
-
type: "positional",
|
|
62
|
-
description: "Customer-list audience id, or a meta_temp_* ref created in this chat",
|
|
63
|
-
required: true
|
|
64
|
-
},
|
|
65
|
-
"account-id": { type: "string", description: "Meta ad account ID (act_123)" },
|
|
66
|
-
file: {
|
|
67
|
-
type: "string",
|
|
68
|
-
description: "CSV (or ;/tab separated) in the workspace with a header row: email, phone, first name, last name, city, state, zip, country, birthday, gender, madid, external id"
|
|
69
|
-
},
|
|
70
|
-
country: {
|
|
71
|
-
type: "string",
|
|
72
|
-
description: "Two-letter country for phones written without their country code (when the row has no country column)"
|
|
73
|
-
},
|
|
74
|
-
"value-column": {
|
|
75
|
-
type: "string",
|
|
76
|
-
description: "Value-based list only: the column with each person's value (e.g. revenue)"
|
|
77
|
-
},
|
|
78
|
-
columns: {
|
|
79
|
-
type: "string",
|
|
80
|
-
description: "For a file without a header row: what each column is, in order (email,phone,country \u2014 comma-separated or repeated)"
|
|
81
|
-
},
|
|
82
|
-
"date-format": {
|
|
83
|
-
type: "string",
|
|
84
|
-
description: "How birthdays like 03/07/1990 are written: DMY (day first) or MDY (month first, US). Needed only when no date in the file shows it"
|
|
85
|
-
}
|
|
86
|
-
};
|
|
87
|
-
function schemaArgs(args) {
|
|
88
|
-
return Object.fromEntries(
|
|
89
|
-
Object.entries(args).map(([key, arg]) => [
|
|
90
|
-
key,
|
|
91
|
-
{ type: arg.type, description: arg.description, required: arg.required === true }
|
|
92
|
-
])
|
|
93
|
-
);
|
|
94
|
-
}
|
|
95
|
-
var ACTION_NOTES = {
|
|
96
|
-
add: "Adds the people in the file to the list; those already in it stay.",
|
|
97
|
-
remove: "Removes the people in the file from the list.",
|
|
98
|
-
replace: "Replaces the whole list with the file \u2014 everyone not in it leaves. Runs alone: not beside another change to the same list in this chat."
|
|
99
|
-
};
|
|
100
|
-
function dateFormatFlag(value) {
|
|
101
|
-
if (value === void 0) return void 0;
|
|
102
|
-
const upperValue = String(value).toUpperCase();
|
|
103
|
-
if (!DATE_ORDERS.includes(upperValue)) {
|
|
104
|
-
failWriteValidation(`--date-format takes ${DATE_ORDERS.join(" or ")}, not ${String(value)}`);
|
|
105
|
-
}
|
|
106
|
-
return upperValue;
|
|
107
|
-
}
|
|
108
|
-
function readList(args, rawArgs) {
|
|
109
|
-
const path = typeof args.file === "string" ? args.file : "";
|
|
110
|
-
if (!path) {
|
|
111
|
-
failWriteValidation("pass --file with the customer list (CSV in the workspace)");
|
|
112
|
-
}
|
|
113
|
-
let content;
|
|
114
|
-
try {
|
|
115
|
-
content = readFileSync(path, "utf8");
|
|
116
|
-
} catch (err) {
|
|
117
|
-
failWriteValidation(`could not read ${path}: ${err instanceof Error ? err.message : String(err)}`);
|
|
118
|
-
}
|
|
119
|
-
try {
|
|
120
|
-
return customerListFromFile(content, {
|
|
121
|
-
defaultCountry: typeof args.country === "string" ? args.country : void 0,
|
|
122
|
-
valueColumn: typeof args["value-column"] === "string" ? args["value-column"] : void 0,
|
|
123
|
-
columns: repeatedListFlag(rawArgs, "columns", args.columns),
|
|
124
|
-
dateFormat: dateFormatFlag(args["date-format"])
|
|
125
|
-
});
|
|
126
|
-
} catch (err) {
|
|
127
|
-
failWriteValidation(err instanceof Error ? err.message : String(err));
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
function listHints(list) {
|
|
131
|
-
const hints = [`${list.rows.length.toLocaleString("en-US")} people read from the file, hashed before upload`];
|
|
132
|
-
const unreadable = Object.entries(list.unreadable).map(([key, count]) => `${count} ${key}`);
|
|
133
|
-
if (unreadable.length > 0) {
|
|
134
|
-
hints.push(`values that could not be read and were left out: ${unreadable.join(", ")}`);
|
|
135
|
-
}
|
|
136
|
-
if (list.skippedRows > 0) {
|
|
137
|
-
hints.push(
|
|
138
|
-
`${list.skippedRows} rows had nothing Meta can match on (no readable email, phone or id${list.schema.includes("LOOKALIKE_VALUE") ? ", or no readable value" : ""}) and were left out`
|
|
139
|
-
);
|
|
140
|
-
}
|
|
141
|
-
if (list.ignoredColumns.length > 0) {
|
|
142
|
-
hints.push(`columns not sent (Meta does not match on them): ${list.ignoredColumns.join(", ")}`);
|
|
143
|
-
}
|
|
144
|
-
if (list.rows.length < 100) {
|
|
145
|
-
hints.push("Meta needs about 100 matched people before a list can be used for ads or as a lookalike seed");
|
|
146
|
-
}
|
|
147
|
-
return hints;
|
|
148
|
-
}
|
|
149
|
-
async function stageMembers(action, args, rawArgs) {
|
|
150
|
-
const accountId = bareAccountId(args);
|
|
151
|
-
const audienceId = requireTarget(args, "audience");
|
|
152
|
-
const list = readList(args, rawArgs);
|
|
153
|
-
if (list.rows.length === 0) {
|
|
154
|
-
failWriteValidation("no one in this file can be matched \u2014 check the columns (email, phone, \u2026) and their values");
|
|
155
|
-
}
|
|
156
|
-
const batches = customerListBatches(list.rows);
|
|
157
|
-
if (batches.length > CUSTOMER_LIST_MAX_BATCHES) {
|
|
158
|
-
failWriteValidation(
|
|
159
|
-
`this file holds ${list.rows.length.toLocaleString("en-US")} people; one change carries at most ${(CUSTOMER_LIST_BATCH_ROWS * CUSTOMER_LIST_MAX_BATCHES).toLocaleString("en-US")} \u2014 split the file and stage one add per part`
|
|
160
|
-
);
|
|
161
|
-
}
|
|
162
|
-
const refusal = customerListUploadRefusal(audienceId, action, list);
|
|
163
|
-
if (refusal) {
|
|
164
|
-
failWriteValidation(refusal);
|
|
165
|
-
}
|
|
166
|
-
const stored = [];
|
|
167
|
-
try {
|
|
168
|
-
const chatId = requireChatId();
|
|
169
|
-
for (const rows of batches) {
|
|
170
|
-
const response = await apiPost(
|
|
171
|
-
"/api/ads/meta/draft/customer-list-batch",
|
|
172
|
-
{ chatId, accountId, batch: { schema: list.schema, rows } },
|
|
173
|
-
{ timeoutMs: 12e4 }
|
|
174
|
-
);
|
|
175
|
-
stored.push(response.data);
|
|
176
|
-
}
|
|
177
|
-
} catch (err) {
|
|
178
|
-
handleMetaError(err);
|
|
179
|
-
}
|
|
180
|
-
await stageOp(
|
|
181
|
-
{
|
|
182
|
-
kind: "customAudience.members",
|
|
183
|
-
accountId,
|
|
184
|
-
payload: { audience_id: audienceId, action, schema: list.schema, batches: stored }
|
|
185
|
-
},
|
|
186
|
-
listHints(list)
|
|
187
|
-
);
|
|
188
|
-
}
|
|
189
|
-
function membersCommand(action) {
|
|
190
|
-
registerSchema({
|
|
191
|
-
command: `ads.meta.audiences.members.${action}`,
|
|
192
|
-
description: `Stage ${action === "add" ? "adding people to" : action === "remove" ? "removing people from" : "replacing everyone in"} a Meta customer list from a CSV in the workspace. ${ACTION_NOTES[action]} Every value is normalized and SHA-256 hashed on this machine before upload, as Meta asks; only counts are printed. Applied at publish; Meta takes up to 24h to match.`,
|
|
193
|
-
args: schemaArgs(membersArgs)
|
|
194
|
-
});
|
|
195
|
-
return defineCommand({
|
|
196
|
-
meta: {
|
|
197
|
-
name: action,
|
|
198
|
-
description: `${ACTION_NOTES[action]} ${STAGED_NOTE}
|
|
199
|
-
Example: baker ads meta audiences members ${action} 120249492603650208 --file customers.csv --country ES`
|
|
200
|
-
},
|
|
201
|
-
args: membersArgs,
|
|
202
|
-
run: async ({ args, rawArgs }) => {
|
|
203
|
-
await stageMembers(action, args, rawArgs);
|
|
204
|
-
}
|
|
205
|
-
});
|
|
206
|
-
}
|
|
207
|
-
var audiencesMembersCommand = defineCommand({
|
|
208
|
-
meta: {
|
|
209
|
-
name: "members",
|
|
210
|
-
description: `Change who is in a customer-list audience, from a CSV in the workspace. Hashed here before upload. ${STAGED_NOTE}
|
|
211
|
-
baker ads meta audiences members add <audienceId|meta_temp_\u2026> --file customers.csv [--country ES]
|
|
212
|
-
baker ads meta audiences members remove <audienceId> --file unsubscribed.csv
|
|
213
|
-
baker ads meta audiences members replace <audienceId> --file customers.csv
|
|
214
|
-
value-based list: add --value-column revenue`
|
|
215
|
-
},
|
|
216
|
-
subCommands: {
|
|
217
|
-
add: membersCommand("add"),
|
|
218
|
-
remove: membersCommand("remove"),
|
|
219
|
-
replace: membersCommand("replace")
|
|
220
|
-
}
|
|
221
|
-
});
|
|
222
|
-
registerSchema({
|
|
223
|
-
command: "ads.meta.audiences.delete",
|
|
224
|
-
description: "Stage deleting a Meta custom audience \u2014 permanent, applied at publish. Every ad that targets it stops and cannot be restarted; Meta refuses while a lookalike is built from it (delete the lookalike first).",
|
|
225
|
-
args: {
|
|
226
|
-
id: { type: "positional", description: "Audience id", required: true },
|
|
227
|
-
"account-id": { type: "string", description: "Meta ad account ID (act_123)", required: false }
|
|
228
|
-
}
|
|
229
|
-
});
|
|
230
|
-
var audiencesDeleteCommand = defineCommand({
|
|
231
|
-
meta: {
|
|
232
|
-
name: "delete",
|
|
233
|
-
description: `Stage deleting an audience \u2014 permanent: ads that target it stop for good. Only when the user asked to delete it. ${STAGED_NOTE}`
|
|
234
|
-
},
|
|
235
|
-
args: {
|
|
236
|
-
id: { type: "positional", description: "Audience id", required: true },
|
|
237
|
-
"account-id": { type: "string", description: "Meta ad account ID (act_123)" }
|
|
238
|
-
},
|
|
239
|
-
run: async ({ args }) => {
|
|
240
|
-
await stageOp({
|
|
241
|
-
kind: "customAudience.update",
|
|
242
|
-
accountId: bareAccountId(args),
|
|
243
|
-
target: requireTarget(args, "audience"),
|
|
244
|
-
payload: { status: "DELETED" }
|
|
245
|
-
});
|
|
246
|
-
}
|
|
247
|
-
});
|
|
248
|
-
registerSchema({
|
|
249
|
-
command: "ads.meta.audiences.saved",
|
|
250
|
-
description: "List the ad account's saved audiences (targeting saved in Ads Manager), or one with --saved-audience-id. Read-only \u2014 Meta's API cannot create or change one. Use one on a new ad set with `adsets create --saved-audience <id>`.",
|
|
251
|
-
args: {
|
|
252
|
-
"account-id": { type: "string", description: "Meta ad account ID (act_123)", required: false },
|
|
253
|
-
"saved-audience-id": {
|
|
254
|
-
type: "string",
|
|
255
|
-
description: "One saved audience, with its full targeting",
|
|
256
|
-
required: false
|
|
257
|
-
},
|
|
258
|
-
full: { type: "boolean", description: "Include each audience's whole targeting spec", required: false },
|
|
259
|
-
output: { type: "string", description: "json|csv|jsonl|md", required: false, default: "json" }
|
|
260
|
-
}
|
|
261
|
-
});
|
|
262
|
-
var savedAudiencesCommand = defineCommand({
|
|
263
|
-
meta: {
|
|
264
|
-
name: "saved",
|
|
265
|
-
description: "Saved audiences on the account (read-only). Example: baker ads meta audiences saved --account-id act_123; use one with `adsets create --saved-audience <id>`"
|
|
266
|
-
},
|
|
267
|
-
args: {
|
|
268
|
-
"account-id": { type: "string", description: "Meta ad account ID (act_123)" },
|
|
269
|
-
"saved-audience-id": { type: "string", description: "One saved audience, with its full targeting" },
|
|
270
|
-
full: { type: "boolean", description: "Include each audience's whole targeting spec" },
|
|
271
|
-
output: { type: "string", description: "json|csv|jsonl|md", default: "json" }
|
|
272
|
-
},
|
|
273
|
-
run: async ({ args }) => {
|
|
274
|
-
const accountId = resolveAccountIdArg(args);
|
|
275
|
-
try {
|
|
276
|
-
const params = { "account-id": accountId };
|
|
277
|
-
if (args["saved-audience-id"]) params["saved-audience-id"] = String(args["saved-audience-id"]);
|
|
278
|
-
const rows = await apiGet("/api/ads/meta/saved-audiences", params);
|
|
279
|
-
const shown = args.full || args["saved-audience-id"] ? rows : rows.map(({ targeting: _targeting, ...row }) => row);
|
|
280
|
-
const hints = rows.length === 0 ? [
|
|
281
|
-
"This account has no saved audiences \u2014 Meta's API cannot create one; build the targeting on the ad set instead."
|
|
282
|
-
] : [
|
|
283
|
-
"Use one on a new ad set: `baker ads meta adsets create \u2026 --saved-audience <id>` (its targeting is copied)."
|
|
284
|
-
];
|
|
285
|
-
const fmt = csvOrJson(args);
|
|
286
|
-
if (fmt !== "json") {
|
|
287
|
-
writeAdsOutput(shown, fmt, void 0, hints);
|
|
288
|
-
return;
|
|
289
|
-
}
|
|
290
|
-
writeJsonEnvelope({ ok: true, data: shown, hints });
|
|
291
|
-
} catch (err) {
|
|
292
|
-
handleMetaError(err);
|
|
293
|
-
}
|
|
294
|
-
}
|
|
295
|
-
});
|
|
296
|
-
function targetingFromSavedAudience(saved, flagged) {
|
|
297
|
-
if (flagged === void 0) return { targeting: saved };
|
|
298
|
-
if (!Object.keys(flagged).every((key) => key in brandSafetyTargetingFields)) {
|
|
299
|
-
return { refusal: "--saved-audience brings the targeting \u2014 pass it or --targeting-file, not both" };
|
|
300
|
-
}
|
|
301
|
-
return { targeting: { ...saved, ...flagged } };
|
|
302
|
-
}
|
|
303
|
-
async function savedAudienceTargeting(accountId, savedAudienceId) {
|
|
304
|
-
try {
|
|
305
|
-
const rows = await apiGet("/api/ads/meta/saved-audiences", {
|
|
306
|
-
"account-id": accountId,
|
|
307
|
-
"saved-audience-id": savedAudienceId
|
|
308
|
-
});
|
|
309
|
-
const targeting = rows[0]?.targeting;
|
|
310
|
-
if (!targeting) {
|
|
311
|
-
failWriteValidation(`saved audience ${savedAudienceId} has no targeting to copy`);
|
|
312
|
-
}
|
|
313
|
-
return targeting;
|
|
314
|
-
} catch (err) {
|
|
315
|
-
handleMetaError(err);
|
|
316
|
-
}
|
|
317
|
-
}
|
|
318
|
-
export {
|
|
319
|
-
audiencesDeleteCommand,
|
|
320
|
-
audiencesMembersCommand,
|
|
321
|
-
savedAudienceTargeting,
|
|
322
|
-
savedAudiencesCommand,
|
|
323
|
-
targetingFromSavedAudience
|
|
324
|
-
};
|
|
325
|
-
//# sourceMappingURL=audience-writes-KCHLNFSI.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/ads/meta/audience-writes.ts"],"sourcesContent":["import { readFileSync } from \"node:fs\";\nimport { brandSafetyTargetingFields } from \"@baker/api/ads-meta/brandSafety\";\nimport {\n CUSTOMER_LIST_BATCH_ROWS,\n CUSTOMER_LIST_MAX_BATCHES,\n type CustomerListAction,\n type CustomerListBatchResponse,\n} from \"@baker/api/ads-meta/customerList\";\nimport { defineCommand } from \"citty\";\nimport { apiGet, apiPost } from \"../../../client.ts\";\nimport { requireChatId } from \"../../../env.ts\";\nimport { registerSchema } from \"../../../schemas.ts\";\nimport { writeAdsOutput, writeJsonEnvelope } from \"../output.ts\";\nimport {\n customerListBatches,\n customerListFromFile,\n customerListUploadRefusal,\n DATE_ORDERS,\n type DateOrder,\n type HashedCustomerList,\n} from \"./customer-list.ts\";\nimport { csvOrJson, handleMetaError, resolveAccountIdArg } from \"./shared.ts\";\nimport { bareAccountId, failWriteValidation, repeatedListFlag, requireTarget, stageOp } from \"./write-shared.ts\";\n\n/**\n * Staged writes on who is in a customer list, deleting an audience, and the\n * saved audiences an ad set can copy. The people are read from a file in the\n * workspace and hashed here; only their digests are held by Baker until the\n * chat publishes, and only counts are ever printed.\n */\n\nconst STAGED_NOTE = \"Staged until publish — review with `baker ads meta draft`.\";\n\nconst membersArgs = {\n id: {\n type: \"positional\",\n description: \"Customer-list audience id, or a meta_temp_* ref created in this chat\",\n required: true,\n },\n \"account-id\": { type: \"string\", description: \"Meta ad account ID (act_123)\" },\n file: {\n type: \"string\",\n description:\n \"CSV (or ;/tab separated) in the workspace with a header row: email, phone, first name, last name, city, state, zip, country, birthday, gender, madid, external id\",\n },\n country: {\n type: \"string\",\n description:\n \"Two-letter country for phones written without their country code (when the row has no country column)\",\n },\n \"value-column\": {\n type: \"string\",\n description: \"Value-based list only: the column with each person's value (e.g. revenue)\",\n },\n columns: {\n type: \"string\",\n description:\n \"For a file without a header row: what each column is, in order (email,phone,country — comma-separated or repeated)\",\n },\n \"date-format\": {\n type: \"string\",\n description:\n \"How birthdays like 03/07/1990 are written: DMY (day first) or MDY (month first, US). Needed only when no date in the file shows it\",\n },\n} as const;\n\nfunction schemaArgs<T extends Record<string, { type: string; description: string; required?: boolean }>>(args: T) {\n return Object.fromEntries(\n Object.entries(args).map(([key, arg]) => [\n key,\n { type: arg.type, description: arg.description, required: arg.required === true },\n ]),\n );\n}\n\nconst ACTION_NOTES: Record<CustomerListAction, string> = {\n add: \"Adds the people in the file to the list; those already in it stay.\",\n remove: \"Removes the people in the file from the list.\",\n replace:\n \"Replaces the whole list with the file — everyone not in it leaves. Runs alone: not beside another change to the same list in this chat.\",\n};\n\nfunction dateFormatFlag(value: unknown): DateOrder | undefined {\n if (value === undefined) return undefined;\n const upperValue = String(value).toUpperCase();\n if (!(DATE_ORDERS as readonly string[]).includes(upperValue)) {\n failWriteValidation(`--date-format takes ${DATE_ORDERS.join(\" or \")}, not ${String(value)}`);\n }\n return upperValue as DateOrder;\n}\n\nfunction readList(args: Record<string, unknown>, rawArgs: readonly string[] | undefined): HashedCustomerList {\n const path = typeof args.file === \"string\" ? args.file : \"\";\n if (!path) {\n failWriteValidation(\"pass --file with the customer list (CSV in the workspace)\");\n }\n let content: string;\n try {\n content = readFileSync(path, \"utf8\");\n } catch (err) {\n failWriteValidation(`could not read ${path}: ${err instanceof Error ? err.message : String(err)}`);\n }\n try {\n return customerListFromFile(content, {\n defaultCountry: typeof args.country === \"string\" ? args.country : undefined,\n valueColumn: typeof args[\"value-column\"] === \"string\" ? args[\"value-column\"] : undefined,\n columns: repeatedListFlag(rawArgs, \"columns\", args.columns),\n dateFormat: dateFormatFlag(args[\"date-format\"]),\n });\n } catch (err) {\n failWriteValidation(err instanceof Error ? err.message : String(err));\n }\n}\n\n/** What the agent learns about the file: counts only. */\nfunction listHints(list: HashedCustomerList): string[] {\n const hints = [`${list.rows.length.toLocaleString(\"en-US\")} people read from the file, hashed before upload`];\n const unreadable = Object.entries(list.unreadable).map(([key, count]) => `${count} ${key}`);\n if (unreadable.length > 0) {\n hints.push(`values that could not be read and were left out: ${unreadable.join(\", \")}`);\n }\n if (list.skippedRows > 0) {\n hints.push(\n `${list.skippedRows} rows had nothing Meta can match on (no readable email, phone or id${list.schema.includes(\"LOOKALIKE_VALUE\") ? \", or no readable value\" : \"\"}) and were left out`,\n );\n }\n if (list.ignoredColumns.length > 0) {\n hints.push(`columns not sent (Meta does not match on them): ${list.ignoredColumns.join(\", \")}`);\n }\n if (list.rows.length < 100) {\n hints.push(\"Meta needs about 100 matched people before a list can be used for ads or as a lookalike seed\");\n }\n return hints;\n}\n\nasync function stageMembers(\n action: CustomerListAction,\n args: Record<string, unknown>,\n rawArgs: readonly string[] | undefined,\n): Promise<void> {\n const accountId = bareAccountId(args);\n const audienceId = requireTarget(args, \"audience\");\n const list = readList(args, rawArgs);\n if (list.rows.length === 0) {\n failWriteValidation(\"no one in this file can be matched — check the columns (email, phone, …) and their values\");\n }\n const batches = customerListBatches(list.rows);\n if (batches.length > CUSTOMER_LIST_MAX_BATCHES) {\n failWriteValidation(\n `this file holds ${list.rows.length.toLocaleString(\"en-US\")} people; one change carries at most ${(CUSTOMER_LIST_BATCH_ROWS * CUSTOMER_LIST_MAX_BATCHES).toLocaleString(\"en-US\")} — split the file and stage one add per part`,\n );\n }\n const refusal = customerListUploadRefusal(audienceId, action, list);\n if (refusal) {\n failWriteValidation(refusal);\n }\n const stored: CustomerListBatchResponse[] = [];\n try {\n const chatId = requireChatId();\n for (const rows of batches) {\n const response = await apiPost<{ ok: true; data: CustomerListBatchResponse }>(\n \"/api/ads/meta/draft/customer-list-batch\",\n { chatId, accountId, batch: { schema: list.schema, rows } },\n { timeoutMs: 120_000 },\n );\n stored.push(response.data);\n }\n } catch (err) {\n handleMetaError(err);\n }\n await stageOp(\n {\n kind: \"customAudience.members\",\n accountId,\n payload: { audience_id: audienceId, action, schema: list.schema, batches: stored },\n },\n listHints(list),\n );\n}\n\nfunction membersCommand(action: CustomerListAction) {\n registerSchema({\n command: `ads.meta.audiences.members.${action}`,\n description: `Stage ${action === \"add\" ? \"adding people to\" : action === \"remove\" ? \"removing people from\" : \"replacing everyone in\"} a Meta customer list from a CSV in the workspace. ${ACTION_NOTES[action]} Every value is normalized and SHA-256 hashed on this machine before upload, as Meta asks; only counts are printed. Applied at publish; Meta takes up to 24h to match.`,\n args: schemaArgs(membersArgs),\n });\n return defineCommand({\n meta: {\n name: action,\n description: `${ACTION_NOTES[action]} ${STAGED_NOTE}\nExample: baker ads meta audiences members ${action} 120249492603650208 --file customers.csv --country ES`,\n },\n args: membersArgs,\n run: async ({ args, rawArgs }) => {\n await stageMembers(action, args as Record<string, unknown>, rawArgs);\n },\n });\n}\n\nexport const audiencesMembersCommand = defineCommand({\n meta: {\n name: \"members\",\n description: `Change who is in a customer-list audience, from a CSV in the workspace. Hashed here before upload. ${STAGED_NOTE}\n baker ads meta audiences members add <audienceId|meta_temp_…> --file customers.csv [--country ES]\n baker ads meta audiences members remove <audienceId> --file unsubscribed.csv\n baker ads meta audiences members replace <audienceId> --file customers.csv\n value-based list: add --value-column revenue`,\n },\n subCommands: {\n add: membersCommand(\"add\"),\n remove: membersCommand(\"remove\"),\n replace: membersCommand(\"replace\"),\n },\n});\n\n// --- Delete ---\n\nregisterSchema({\n command: \"ads.meta.audiences.delete\",\n description:\n \"Stage deleting a Meta custom audience — permanent, applied at publish. Every ad that targets it stops and cannot be restarted; Meta refuses while a lookalike is built from it (delete the lookalike first).\",\n args: {\n id: { type: \"positional\", description: \"Audience id\", required: true },\n \"account-id\": { type: \"string\", description: \"Meta ad account ID (act_123)\", required: false },\n },\n});\n\nexport const audiencesDeleteCommand = defineCommand({\n meta: {\n name: \"delete\",\n description: `Stage deleting an audience — permanent: ads that target it stop for good. Only when the user asked to delete it. ${STAGED_NOTE}`,\n },\n args: {\n id: { type: \"positional\", description: \"Audience id\", required: true },\n \"account-id\": { type: \"string\", description: \"Meta ad account ID (act_123)\" },\n },\n run: async ({ args }) => {\n await stageOp({\n kind: \"customAudience.update\",\n accountId: bareAccountId(args as Record<string, unknown>),\n target: requireTarget(args as Record<string, unknown>, \"audience\"),\n payload: { status: \"DELETED\" },\n });\n },\n});\n\n// --- Saved audiences ---\n\nregisterSchema({\n command: \"ads.meta.audiences.saved\",\n description:\n \"List the ad account's saved audiences (targeting saved in Ads Manager), or one with --saved-audience-id. Read-only — Meta's API cannot create or change one. Use one on a new ad set with `adsets create --saved-audience <id>`.\",\n args: {\n \"account-id\": { type: \"string\", description: \"Meta ad account ID (act_123)\", required: false },\n \"saved-audience-id\": {\n type: \"string\",\n description: \"One saved audience, with its full targeting\",\n required: false,\n },\n full: { type: \"boolean\", description: \"Include each audience's whole targeting spec\", required: false },\n output: { type: \"string\", description: \"json|csv|jsonl|md\", required: false, default: \"json\" },\n },\n});\n\nexport const savedAudiencesCommand = defineCommand({\n meta: {\n name: \"saved\",\n description:\n \"Saved audiences on the account (read-only). Example: baker ads meta audiences saved --account-id act_123; use one with `adsets create --saved-audience <id>`\",\n },\n args: {\n \"account-id\": { type: \"string\", description: \"Meta ad account ID (act_123)\" },\n \"saved-audience-id\": { type: \"string\", description: \"One saved audience, with its full targeting\" },\n full: { type: \"boolean\", description: \"Include each audience's whole targeting spec\" },\n output: { type: \"string\", description: \"json|csv|jsonl|md\", default: \"json\" },\n },\n run: async ({ args }) => {\n const accountId = resolveAccountIdArg(args);\n try {\n const params: Record<string, string> = { \"account-id\": accountId };\n if (args[\"saved-audience-id\"]) params[\"saved-audience-id\"] = String(args[\"saved-audience-id\"]);\n const rows = await apiGet<Array<Record<string, unknown>>>(\"/api/ads/meta/saved-audiences\", params);\n const shown =\n args.full || args[\"saved-audience-id\"] ? rows : rows.map(({ targeting: _targeting, ...row }) => row);\n const hints =\n rows.length === 0\n ? [\n \"This account has no saved audiences — Meta's API cannot create one; build the targeting on the ad set instead.\",\n ]\n : [\n \"Use one on a new ad set: `baker ads meta adsets create … --saved-audience <id>` (its targeting is copied).\",\n ];\n const fmt = csvOrJson(args);\n if (fmt !== \"json\") {\n writeAdsOutput(shown, fmt, undefined, hints);\n return;\n }\n writeJsonEnvelope({ ok: true, data: shown, hints });\n } catch (err) {\n handleMetaError(err);\n }\n },\n});\n\n/**\n * A saved audience's targeting with the command's own targeting laid over it:\n * the brand-safety flags (`--block-list`, …) join it, while a targeting file\n * would replace it whole, so the two are refused together.\n */\nexport function targetingFromSavedAudience(\n saved: Record<string, unknown>,\n flagged: Record<string, unknown> | undefined,\n): { targeting: Record<string, unknown> } | { refusal: string } {\n if (flagged === undefined) return { targeting: saved };\n if (!Object.keys(flagged).every((key) => key in brandSafetyTargetingFields)) {\n return { refusal: \"--saved-audience brings the targeting — pass it or --targeting-file, not both\" };\n }\n return { targeting: { ...saved, ...flagged } };\n}\n\n/** A saved audience's targeting, to start an ad set from. */\nexport async function savedAudienceTargeting(\n accountId: string,\n savedAudienceId: string,\n): Promise<Record<string, unknown>> {\n try {\n const rows = await apiGet<Array<{ targeting?: Record<string, unknown> }>>(\"/api/ads/meta/saved-audiences\", {\n \"account-id\": accountId,\n \"saved-audience-id\": savedAudienceId,\n });\n const targeting = rows[0]?.targeting;\n if (!targeting) {\n failWriteValidation(`saved audience ${savedAudienceId} has no targeting to copy`);\n }\n return targeting;\n } catch (err) {\n handleMetaError(err);\n }\n}\n"],"mappings":"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","names":[]}
|