@koda-sl/baker-cli 0.571.0-dev.6a3439a0a → 0.572.0-dev.61ba69c66
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 +7 -5
- package/dist/account-6RJ6ZI3B.js +82 -0
- package/dist/account-AIGNJ2RP.js +82 -0
- package/dist/account-E5LLPRZ6.js +139 -0
- package/dist/account-assets-J6SVHSXR.js +290 -0
- package/dist/account-level-FGE33OJT.js +612 -0
- package/dist/account-level-FGE33OJT.js.map +1 -0
- package/dist/account-reads-BNVCJ37E.js +220 -0
- package/dist/account-reads-BNVCJ37E.js.map +1 -0
- package/dist/account-users-MFH5CJIA.js +65 -0
- package/dist/account-users-MFH5CJIA.js.map +1 -0
- package/dist/account-writes-XNS4IKZV.js +68 -0
- package/dist/accounts-3ZWYGRVM.js +80 -0
- package/dist/accounts-5TLHSEZR.js +119 -0
- package/dist/accounts-BAZYYDFV.js +713 -0
- package/dist/accounts-L2HVNJUF.js +76 -0
- package/dist/accounts-NTBIRB52.js +115 -0
- package/dist/actions-N2FBJMT4.js +55 -0
- package/dist/active-entities-IJPRN45K.js +103 -0
- package/dist/activecampaign-U77COT2F.js +938 -0
- package/dist/activities-SS3SUWSS.js +75 -0
- package/dist/ad-group-writes-DTQSUNE2.js +172 -0
- package/dist/ad-groups-CX23GLVE.js +70 -0
- package/dist/ad-writes-HAAUOJCG.js +176 -0
- package/dist/add-ABPQTO2M.js +305 -0
- package/dist/add-BK6N7KWU.js +97 -0
- package/dist/add-ECN2FTMH.js +85 -0
- package/dist/add-FH7OVKFF.js +148 -0
- package/dist/add-KHY3H54G.js +81 -0
- package/dist/add-MZZLFU3M.js +513 -0
- package/dist/add-MZZLFU3M.js.map +1 -0
- package/dist/add-VDH2VCXR.js +107 -0
- package/dist/add-accounts-6JAOSCXK.js +91 -0
- package/dist/ads-BEMEXBDJ.js +128 -0
- package/dist/ads-GAU2XKNL.js +48 -0
- package/dist/ads-HZOXZ3FY.js +79 -0
- package/dist/ads-I5OBZ5VI.js +120 -0
- package/dist/adsets-PMQGA6TW.js +182 -0
- package/dist/advertisers-EOLL3VFQ.js +123 -0
- package/dist/advertisers-FNKY2PP4.js +125 -0
- package/dist/analytics-DOAUCF2Y.js +2437 -0
- package/dist/analytics-MR3T34KN.js +447 -0
- package/dist/animate-EKGVDSWM.js +480 -0
- package/dist/approved-WQL4Z4EB.js +73 -0
- package/dist/asset-writes-A5X2T6LQ.js +51 -0
- package/dist/assign-UMNHINRA.js +80 -0
- package/dist/audience-size-Q7DZ6TGM.js +76 -0
- package/dist/audience-writes-SNFFF2QR.js +328 -0
- package/dist/audience-writes-SNFFF2QR.js.map +1 -0
- package/dist/audiences-HBJGEGKL.js +106 -0
- package/dist/audiences-RDQZNGPI.js +280 -0
- package/dist/audiences-TA636UBN.js +85 -0
- package/dist/audit-H3F6FZNE.js +154 -0
- package/dist/audit-QMCK76AT.js +88 -0
- package/dist/autocomplete-DIBJ57VC.js +114 -0
- package/dist/avatars-UIXRGLPA.js +38 -0
- package/dist/bid-pricing-OMY2F2SB.js +103 -0
- package/dist/brand-WV6CAU3M.js +22 -0
- package/dist/brief-PNBP56X2.js +543 -0
- package/dist/brief-PNBP56X2.js.map +1 -0
- package/dist/businesses-56IUB5X4.js +54 -0
- package/dist/campaign-groups-PGJIQV4S.js +99 -0
- package/dist/campaign-writes-MAJ5FGXG.js +176 -0
- package/dist/campaign-writes-WL3YAEGJ.js +168 -0
- package/dist/campaigns-5L4ZTGF7.js +130 -0
- package/dist/campaigns-EK7EUKZD.js +113 -0
- package/dist/campaigns-HCJ3AIDK.js +78 -0
- package/dist/campaigns-NHACWGWS.js +111 -0
- package/dist/canvas-INL3J7HO.js +46 -0
- package/dist/capabilities-Y33EWDMJ.js +147 -0
- package/dist/cards-IWWKA5WH.js +85 -0
- package/dist/catalog-NSA2FUI2.js +66 -0
- package/dist/catalogs-QOE2V4QK.js +783 -0
- package/dist/catalogs-QOE2V4QK.js.map +1 -0
- package/dist/catalogs-SJMYID7N.js +130 -0
- package/dist/changes-2HOF2HSV.js +167 -0
- package/dist/chatgpt-J6MNVQVT.js +47 -0
- package/dist/chats-4HK6UYD2.js +584 -0
- package/dist/check-DJOIL56P.js +169 -0
- package/dist/check-DJOIL56P.js.map +1 -0
- package/dist/chunk-2B2JFTWI.js +296 -0
- package/dist/chunk-2HWX6AWY.js +2235 -0
- package/dist/chunk-2HWX6AWY.js.map +1 -0
- package/dist/chunk-2O5CCKV7.js +23 -0
- package/dist/chunk-2W6DMVGH.js +8954 -0
- package/dist/chunk-2W6DMVGH.js.map +1 -0
- package/dist/chunk-3BKESS5W.js +66 -0
- package/dist/chunk-3VBPJQ7L.js +288 -0
- package/dist/chunk-3X262BEG.js +19 -0
- package/dist/chunk-4CUBOXBS.js +99 -0
- package/dist/chunk-4CUBOXBS.js.map +1 -0
- package/dist/chunk-4CYB33V3.js +136 -0
- package/dist/chunk-4JB556VC.js +142 -0
- package/dist/chunk-4LZNCDHU.js +46 -0
- package/dist/chunk-4LZNCDHU.js.map +1 -0
- package/dist/chunk-4QYZJPSM.js +207 -0
- package/dist/chunk-4WLJYLRL.js +544 -0
- package/dist/chunk-55AX6DOP.js +86 -0
- package/dist/chunk-55AX6DOP.js.map +1 -0
- package/dist/chunk-56ZJO7TM.js +1320 -0
- package/dist/chunk-5LQGW5UF.js +138 -0
- package/dist/chunk-5U6OL4NN.js +709 -0
- package/dist/chunk-6IL7JFX5.js +203 -0
- package/dist/chunk-6LNCKT6S.js +35 -0
- package/dist/chunk-6LUDG5AB.js +476 -0
- package/dist/chunk-6UQV5DOD.js +45 -0
- package/dist/chunk-6V4UAC5I.js +2523 -0
- package/dist/chunk-6V4UAC5I.js.map +1 -0
- package/dist/chunk-6WA7QSCN.js +46 -0
- package/dist/chunk-7CHPHER2.js +455 -0
- package/dist/chunk-7J7ASYIM.js +225 -0
- package/dist/chunk-7MMTIJO3.js +220 -0
- package/dist/chunk-7Y3LKR4P.js +5368 -0
- package/dist/chunk-7Y3LKR4P.js.map +1 -0
- package/dist/chunk-AA3D7GZF.js +125 -0
- package/dist/chunk-AGL7EWP2.js +75 -0
- package/dist/chunk-AHVD6IEI.js +76 -0
- package/dist/chunk-ASJMLTMX.js +106 -0
- package/dist/chunk-AWENMEFC.js +297 -0
- package/dist/chunk-AYX7PB2L.js +1920 -0
- package/dist/chunk-AYX7PB2L.js.map +1 -0
- package/dist/chunk-BHZLKLK7.js +69 -0
- package/dist/chunk-BVER7I36.js +58 -0
- package/dist/chunk-C3RZNVLM.js +98 -0
- package/dist/chunk-CA5QBLIZ.js +114 -0
- package/dist/chunk-CKIENAAO.js +156 -0
- package/dist/chunk-CKIENAAO.js.map +1 -0
- package/dist/chunk-CONTVNSN.js +51 -0
- package/dist/chunk-EE6NZ6NG.js +225 -0
- package/dist/chunk-EG6HMBCF.js +188 -0
- package/dist/chunk-EGZM35HT.js +3510 -0
- package/dist/chunk-EGZM35HT.js.map +1 -0
- package/dist/chunk-ESSA3AWR.js +133 -0
- package/dist/chunk-ESSA3AWR.js.map +1 -0
- package/dist/chunk-FHLAJYZE.js +225 -0
- package/dist/chunk-FSNQFZ2Z.js +718 -0
- package/dist/chunk-G67OBCXI.js +91 -0
- package/dist/chunk-GFYGVIT3.js +392 -0
- package/dist/chunk-GRNHQWSV.js +430 -0
- package/dist/chunk-GWQSZWHT.js +42 -0
- package/dist/chunk-HBXR26LB.js +1518 -0
- package/dist/chunk-HKKHOMEQ.js +180 -0
- package/dist/chunk-HKKHOMEQ.js.map +1 -0
- package/dist/chunk-HUO5MZ7S.js +962 -0
- package/dist/chunk-HVL22WUU.js +930 -0
- package/dist/chunk-IA5GLVRV.js +64 -0
- package/dist/chunk-IEPCI2EB.js +479 -0
- package/dist/chunk-IKSBLQTL.js +5471 -0
- package/dist/chunk-IRLMIKI7.js +224 -0
- package/dist/chunk-IW4MX7OX.js +399 -0
- package/dist/chunk-J4WOF6WK.js +97 -0
- package/dist/chunk-J63TN3GR.js +89 -0
- package/dist/chunk-JESSFI7R.js +468 -0
- package/dist/chunk-K4QPBXV7.js +61 -0
- package/dist/chunk-K5VDDKKF.js +219 -0
- package/dist/chunk-KM5K47TW.js +152 -0
- package/dist/chunk-KPVZ2CZA.js +642 -0
- package/dist/chunk-KPVZ2CZA.js.map +1 -0
- package/dist/chunk-LGJIJVVH.js +131 -0
- package/dist/chunk-LHSSIUU4.js +604 -0
- package/dist/chunk-LQMPA4DY.js +685 -0
- package/dist/chunk-M3IXPK6U.js +344 -0
- package/dist/chunk-MJU5VKX2.js +91 -0
- package/dist/chunk-MRGU3NPN.js +163 -0
- package/dist/chunk-MSLFPL77.js +454 -0
- package/dist/chunk-MX5NQAK6.js +54 -0
- package/dist/chunk-MX5NQAK6.js.map +1 -0
- package/dist/chunk-NKCWJPMN.js +111 -0
- package/dist/chunk-NT7NCSEB.js +24026 -0
- package/dist/chunk-O5GZJ6YJ.js +1085 -0
- package/dist/chunk-O5GZJ6YJ.js.map +1 -0
- package/dist/chunk-OADMSHME.js +334 -0
- package/dist/chunk-OGWCLE4W.js +858 -0
- package/dist/chunk-OGWCLE4W.js.map +1 -0
- package/dist/chunk-ONGZKI5J.js +57 -0
- package/dist/chunk-OOZNTJP6.js +26 -0
- package/dist/chunk-OP3NHIFH.js +39 -0
- package/dist/chunk-OU4KWL6B.js +106 -0
- package/dist/chunk-OW3D63SI.js +91 -0
- package/dist/chunk-OW3D63SI.js.map +1 -0
- package/dist/chunk-PLIGHRIQ.js +312 -0
- package/dist/chunk-PLROJ3SX.js +73 -0
- package/dist/chunk-PSM3RI4B.js +167 -0
- package/dist/chunk-Q4O7ICAK.js +84 -0
- package/dist/chunk-Q6XM6ZDB.js +547 -0
- package/dist/chunk-QHRUCSRI.js +197 -0
- package/dist/chunk-QUDPMIW7.js +74 -0
- package/dist/chunk-R2JGUOT6.js +64 -0
- package/dist/chunk-R5I4IHJ5.js +494 -0
- package/dist/chunk-R5NABIJ4.js +1919 -0
- package/dist/chunk-R5NABIJ4.js.map +1 -0
- package/dist/chunk-RJXO66C4.js +66 -0
- package/dist/chunk-RYNN6UUF.js +69 -0
- package/dist/chunk-S4V2GOKV.js +215 -0
- package/dist/chunk-S7D4GTYY.js +191 -0
- package/dist/chunk-T4RV7XOC.js +217 -0
- package/dist/chunk-TDUAGNSQ.js +52 -0
- package/dist/chunk-TZRWET3S.js +285 -0
- package/dist/chunk-U5V4CIIG.js +274 -0
- package/dist/chunk-U625CQ3Y.js +287 -0
- package/dist/chunk-UDEVIXKX.js +1254 -0
- package/dist/chunk-UNLFRXST.js +126 -0
- package/dist/chunk-UNLFRXST.js.map +1 -0
- package/dist/chunk-UUDWZIDC.js +246 -0
- package/dist/chunk-VAQBBNLD.js +98 -0
- package/dist/chunk-VCDFBFPT.js +97 -0
- package/dist/chunk-VF3W7CI7.js +325 -0
- package/dist/chunk-VHOOAQY4.js +169 -0
- package/dist/chunk-VK2VC6A2.js +25 -0
- package/dist/chunk-WWPRSJOS.js +94 -0
- package/dist/chunk-XKYFNMTB.js +343 -0
- package/dist/chunk-XL42ZEVH.js +170 -0
- package/dist/chunk-XPUQFPIU.js +831 -0
- package/dist/chunk-XQEHLDGP.js +1744 -0
- package/dist/chunk-XQWC223L.js +56 -0
- package/dist/chunk-XYDHBLZ2.js +103 -0
- package/dist/chunk-XZO6ONVI.js +115 -0
- package/dist/chunk-YFFQ3HY4.js +139 -0
- package/dist/chunk-YGUGL4ZL.js +76 -0
- package/dist/chunk-YOHGEF2N.js +7899 -0
- package/dist/chunk-YOHGEF2N.js.map +1 -0
- package/dist/chunk-YT3S2XFG.js +84 -0
- package/dist/chunk-ZPCZ4XDB.js +148 -0
- package/dist/cite-2ZJG3FBV.js +191 -0
- package/dist/claim-IGU5W4CT.js +200 -0
- package/dist/cli.js +48 -47
- package/dist/cli.js.map +1 -1
- package/dist/client-MSRCSDB7.js +19 -0
- package/dist/code-T7Z5JDQ2.js +76 -0
- package/dist/companies-HCSBVXCE.js +198 -0
- package/dist/company-SSMY4G2T.js +308 -0
- package/dist/complete-FQNRXUI5.js +84 -0
- package/dist/config-XRPKA5QR.js +88 -0
- package/dist/connect-VXEE3QBU.js +45 -0
- package/dist/content-2JFP747N.js +85 -0
- package/dist/conversation-KKJKZIX5.js +96 -0
- package/dist/conversion-report-G65UHQRO.js +127 -0
- package/dist/conversion-upload-command-Z7IOS6ZG.js +440 -0
- package/dist/conversion-upload-command-Z7IOS6ZG.js.map +1 -0
- package/dist/conversion-writes-333V4OVR.js +122 -0
- package/dist/conversions-7UHCNIAO.js +140 -0
- package/dist/conversions-L6775Q22.js +78 -0
- package/dist/copy-writes-G7GJ5RWS.js +171 -0
- package/dist/copy-writes-G7GJ5RWS.js.map +1 -0
- package/dist/countries-XJVDM635.js +82 -0
- package/dist/create-AXWJECPP.js +239 -0
- package/dist/create-B24XHUGZ.js +62 -0
- package/dist/create-HJKTD5FN.js +218 -0
- package/dist/create-V4NGP5KB.js +135 -0
- package/dist/creatives-HLWMABYL.js +55 -0
- package/dist/creatives-HLWMABYL.js.map +1 -0
- package/dist/creatives-OKFLX67Y.js +118 -0
- package/dist/creatives-WX6GQ37F.js +229 -0
- package/dist/credentials-4JFUH6FN.js +290 -0
- package/dist/critique-4SF44VFJ.js +420 -0
- package/dist/critique-4SF44VFJ.js.map +1 -0
- package/dist/critique-S3PDXLAZ.js +233 -0
- package/dist/critique-S3PDXLAZ.js.map +1 -0
- package/dist/crm-6MLYUEK7.js +323 -0
- package/dist/crm-PUQBWZKE.js +229 -0
- package/dist/crop-V5MSIY5F.js +113 -0
- package/dist/currency-SCSJ5FW2.js +88 -0
- package/dist/custom-conversions-GN4JDS5F.js +128 -0
- package/dist/customers-WXD2LTUC.js +65 -0
- package/dist/decide-PW2NRMRK.js +199 -0
- package/dist/delete-EAJN6ZHT.js +67 -0
- package/dist/delete-GDIFIYA2.js +69 -0
- package/dist/delete-JQG3ZWQX.js +57 -0
- package/dist/delete-L7CGJ23X.js +71 -0
- package/dist/delete-OQREQEGN.js +85 -0
- package/dist/delete-ZR3DVLWU.js +69 -0
- package/dist/demographics-LMRGNO7J.js +141 -0
- package/dist/describe-OHWLLBDE.js +97 -0
- package/dist/describe-YELOXWHY.js +97 -0
- package/dist/dimensions-CLLCVVRY.js +101 -0
- package/dist/discard-K2KIIFJQ.js +69 -0
- package/dist/discover-SQJLRS4G.js +93 -0
- package/dist/discover-UJMDGDQO.js +172 -0
- package/dist/domain-CJX5JSLS.js +101 -0
- package/dist/download-HFDBP6BO.js +172 -0
- package/dist/download-SZ5P3GLV.js +337 -0
- package/dist/draft-7QDE2Z3N.js +315 -0
- package/dist/draft-A7ZQPUFS.js +579 -0
- package/dist/draft-A7ZQPUFS.js.map +1 -0
- package/dist/draft-ILXHFWTT.js +134 -0
- package/dist/draft-NUFU5YME.js +374 -0
- package/dist/draft-QSTD3DH2.js +220 -0
- package/dist/draft-TV5IH5U4.js +260 -0
- package/dist/draft-WNMHUFAH.js +138 -0
- package/dist/draft-XJP3SCZ6.js +333 -0
- package/dist/draft-XJP3SCZ6.js.map +1 -0
- package/dist/engine/index.js +14 -14
- package/dist/env-3256G2OE.js +53 -0
- package/dist/experiment-5L5USMAL.js +1397 -0
- package/dist/experiments-CFBG5UOT.js +237 -0
- package/dist/experiments-CFBG5UOT.js.map +1 -0
- package/dist/export-YSOM4E3B.js +168 -0
- package/dist/extract-7FYXXEQZ.js +143 -0
- package/dist/facets-2FRELYRC.js +117 -0
- package/dist/favorites-LTG2F6W2.js +178 -0
- package/dist/feed-RSBWEI75.js +177 -0
- package/dist/feedback-LZSJR5KL.js +116 -0
- package/dist/feedback-LZSJR5KL.js.map +1 -0
- package/dist/feedback-PQUM7UBT.js +114 -0
- package/dist/feedback-record-4MVI4O3Q.js +270 -0
- package/dist/feedback-record-4MVI4O3Q.js.map +1 -0
- package/dist/fetch-3PWYTX4R.js +139 -0
- package/dist/fetch-FLQYW27W.js +204 -0
- package/dist/find-SHHDWCPM.js +144 -0
- package/dist/fit-4XCDLF7C.js +65 -0
- package/dist/flows-4ALWJVNF.js +340 -0
- package/dist/follow-N4TKU3UM.js +94 -0
- package/dist/follow-competitors-AHQ57BWS.js +112 -0
- package/dist/following-CEYH33DW.js +113 -0
- package/dist/fonts-CYJ5EFR4.js +40 -0
- package/dist/forecast-AH3AFVJ7.js +170 -0
- package/dist/forecast-AH3AFVJ7.js.map +1 -0
- package/dist/forecast-SG2VUBZD.js +121 -0
- package/dist/funding-X7M5WLDX.js +85 -0
- package/dist/funnel-F7DS7PUN.js +397 -0
- package/dist/ga4-QPBAKGSH.js +55 -0
- package/dist/generate-LVBI3VDD.js +263 -0
- package/dist/get-DMV7KG2F.js +92 -0
- package/dist/get-EA7AX4NW.js +59 -0
- package/dist/get-EOSJWMWT.js +38 -0
- package/dist/get-HVQHHDW6.js +74 -0
- package/dist/get-KQLCVQCK.js +56 -0
- package/dist/get-NAOMB6Q2.js +62 -0
- package/dist/get-XYJBQFIT.js +62 -0
- package/dist/get-XZ7XPXZE.js +82 -0
- package/dist/gif-XJ26IWAP.js +111 -0
- package/dist/google-ED4VGLSX.js +3301 -0
- package/dist/google-ED4VGLSX.js.map +1 -0
- package/dist/google-QOKWSPOA.js +163 -0
- package/dist/google-ads-B4FBPQ7O.js +198 -0
- package/dist/group-7EYM3PNJ.js +43 -0
- package/dist/group-GDTEICRY.js +43 -0
- package/dist/gsc-KVIAZMF4.js +30 -0
- package/dist/history-22YGILIT.js +69 -0
- package/dist/history-E3JGYADF.js +102 -0
- package/dist/history-HKCSYH5L.js +153 -0
- package/dist/hubspot-LEW2RP5D.js +814 -0
- package/dist/icon-JLVEYF34.js +138 -0
- package/dist/ideas-JAIU4GC4.js +45 -0
- package/dist/images-ZG6RRAEP.js +92 -0
- package/dist/improve-XSHWCMZS.js +86 -0
- package/dist/ingest-GTXBGUNQ.js +28 -0
- package/dist/ingest-SX7K6GNE.js +131 -0
- package/dist/insights-IVUUWSQL.js +132 -0
- package/dist/insights-PJPQB46E.js +658 -0
- package/dist/inspect-55BXSPJG.js +192 -0
- package/dist/inspiration-NBOKHPZ5.js +53 -0
- package/dist/instant-experiences-ARST4KWB.js +265 -0
- package/dist/instant-experiences-ARST4KWB.js.map +1 -0
- package/dist/intent-KSVTHFFE.js +95 -0
- package/dist/job-4VXDCYSG.js +202 -0
- package/dist/job-create-NZEZDOZT.js +109 -0
- package/dist/job-status-XI3ENS7D.js +74 -0
- package/dist/keep-UYNOC3JZ.js +78 -0
- package/dist/keyword-gap-7UVDSID5.js +130 -0
- package/dist/keyword-metrics-QFRXZRAQ.js +200 -0
- package/dist/keywords-for-site-Q4BCJ4PQ.js +131 -0
- package/dist/knowledge-LVE3J3AK.js +195 -0
- package/dist/landing-AJYM5GBY.js +28 -0
- package/dist/landings-SIN3MTUZ.js +151 -0
- package/dist/languages-AIASAINW.js +40 -0
- package/dist/languages-RDR6EBNJ.js +55 -0
- package/dist/launches-4TVHXAZT.js +19 -0
- package/dist/layerize-OLVGZRND.js +190 -0
- package/dist/lead-routes-ZOQDPCR3.js +733 -0
- package/dist/leads-M57K5EDK.js +542 -0
- package/dist/leads-M57K5EDK.js.map +1 -0
- package/dist/leads-YSDLFBHN.js +115 -0
- package/dist/learn-FDQZNIP3.js +207 -0
- package/dist/library-7CLWRDM3.js +212 -0
- package/dist/lighthouse-3ACQ3MVG.js +75 -0
- package/dist/line-item-writes-JARN73DV.js +211 -0
- package/dist/line-items-B5GLDAJ2.js +107 -0
- package/dist/link-YAZF34BZ.js +67 -0
- package/dist/linkedin-MLPAY7IL.js +1345 -0
- package/dist/linkedin-MLPAY7IL.js.map +1 -0
- package/dist/linkedin-person-XDH7Q3PB.js +139 -0
- package/dist/list-6NYRZXKQ.js +76 -0
- package/dist/list-6WISGNQ2.js +65 -0
- package/dist/list-6YBIWX44.js +50 -0
- package/dist/list-72JQGWNO.js +154 -0
- package/dist/list-FX7OG3OJ.js +67 -0
- package/dist/list-ITPBLMV3.js +51 -0
- package/dist/list-J43GOBOX.js +57 -0
- package/dist/list-K4Z3BOWI.js +93 -0
- package/dist/list-ONSYTCX2.js +306 -0
- package/dist/locations-UNSREUBX.js +69 -0
- package/dist/locations-XAC3GME3.js +40 -0
- package/dist/log-PPNNFETI.js +95 -0
- package/dist/logo-UNVIMA4B.js +19 -0
- package/dist/lookup-L5QG3BWH.js +23 -0
- package/dist/make-YWW7Q4T5.js +1368 -0
- package/dist/make-YWW7Q4T5.js.map +1 -0
- package/dist/map-QILMIKS7.js +445 -0
- package/dist/mcp-GOKFM4PF.js +729 -0
- package/dist/media-BN6B75NF.js +18 -0
- package/dist/media-YDDWV32Y.js +89 -0
- package/dist/media-sources-HABLVJE3.js +35 -0
- package/dist/members-B4UI6ISY.js +47 -0
- package/dist/meme-2MERLAVW.js +108 -0
- package/dist/meta-7FJQD44L.js +124 -0
- package/dist/metrics-SBKBEZJR.js +152 -0
- package/dist/models-ZBLBNNEH.js +155 -0
- package/dist/normalize-5WVEQJXD.js +806 -0
- package/dist/normalize-YPQBHWYS.js +144 -0
- package/dist/older-spellings-KGYXGRHU.js +70 -0
- package/dist/older-spellings-KGYXGRHU.js.map +1 -0
- package/dist/options-BV3TVUCK.js +125 -0
- package/dist/organization-4OTGNRHP.js +949 -0
- package/dist/output-FX4KJAO5.js +24 -0
- package/dist/page-5KWQ7PM3.js +105 -0
- package/dist/page-photos-AUTUSCVR.js +119 -0
- package/dist/page-photos-AUTUSCVR.js.map +1 -0
- package/dist/pages-HKTAGXH3.js +67 -0
- package/dist/performance-4MWQVTTA.js +5565 -0
- package/dist/performance-TKE7NQF6.js +27 -0
- package/dist/pinterest-UDX53CWY.js +105 -0
- package/dist/pixels-BSNCVT77.js +109 -0
- package/dist/pixels-TR2PAYWV.js +62 -0
- package/dist/plan-V57AATQ5.js +208 -0
- package/dist/posts-JHMXNHDV.js +36 -0
- package/dist/preview-VY7UH2SK.js +245 -0
- package/dist/preview-XUG4K4KV.js +101 -0
- package/dist/profile-PV3R3BEG.js +159 -0
- package/dist/promoted-tweet-writes-O3S5OKUZ.js +183 -0
- package/dist/promoted-tweets-4ZKSEC4I.js +119 -0
- package/dist/properties-U2XUD2M6.js +101 -0
- package/dist/publish-4RAYD7VI.js +350 -0
- package/dist/query-4C6UQN42.js +62 -0
- package/dist/query-7FWE7GLV.js +231 -0
- package/dist/query-7Y2Y6YFI.js +236 -0
- package/dist/questionnaire-3IPJXJT7.js +94 -0
- package/dist/read-WEQLEI7R.js +141 -0
- package/dist/reddit-2FWCB7XY.js +29 -0
- package/dist/refresh-SGDB4QOD.js +97 -0
- package/dist/refresh-WZBVPKWE.js +42 -0
- package/dist/release-YL3ZII3Z.js +63 -0
- package/dist/relevant-pages-PF3LLUED.js +99 -0
- package/dist/remove-52MSQXSW.js +49 -0
- package/dist/remove-EIV7LJUA.js +53 -0
- package/dist/reopen-CW27MUJH.js +66 -0
- package/dist/rerun-4WUZY4SO.js +98 -0
- package/dist/rerun-4WUZY4SO.js.map +1 -0
- package/dist/research-234BOCKM.js +265 -0
- package/dist/research-RABLL4HR.js +75 -0
- package/dist/reset-5KJDDVJL.js +57 -0
- package/dist/reset-REUL47CB.js +57 -0
- package/dist/resolve-WRDEHLYL.js +124 -0
- package/dist/retry-2A5HV4SN.js +63 -0
- package/dist/retry-FNT2XVH3.js +65 -0
- package/dist/retry-failed-ND7UXYTJ.js +45 -0
- package/dist/revenue-YQV2BRGA.js +92 -0
- package/dist/revenue-YQV2BRGA.js.map +1 -0
- package/dist/rule-writes-L7BRELYW.js +531 -0
- package/dist/rule-writes-L7BRELYW.js.map +1 -0
- package/dist/rules-2CUG2YG7.js +217 -0
- package/dist/rules-5DIOAOOO.js +55 -0
- package/dist/rules-5DIOAOOO.js.map +1 -0
- package/dist/run-RKLNKV2U.js +73 -0
- package/dist/run-YKGN3GQR.js +69 -0
- package/dist/scaffold-ad-SPU2HKHU.js +1514 -0
- package/dist/scaffold-ad-SPU2HKHU.js.map +1 -0
- package/dist/scaffold-static-ad-ENGGU26W.js +1013 -0
- package/dist/scaffold-static-ad-ENGGU26W.js.map +1 -0
- package/dist/scaffold-video-OZHIU3SZ.js +886 -0
- package/dist/scaffold-video-OZHIU3SZ.js.map +1 -0
- package/dist/schedule-774JCRVM.js +67 -0
- package/dist/schedule-PKKSZ5RX.js +64 -0
- package/dist/scheduled-agents-ZI3EWKAT.js +55 -0
- package/dist/schema-BXNL4LKR.js +135 -0
- package/dist/schema-GFMVUZL2.js +152 -0
- package/dist/scrape-KKLE4WAU.js +2209 -0
- package/dist/screenshot-K6XOER6Z.js +103 -0
- package/dist/search-43ULIJL3.js +91 -0
- package/dist/search-AXUNJUWY.js +51 -0
- package/dist/search-DLLJEYMB.js +26 -0
- package/dist/search-LWWTXBB2.js +92 -0
- package/dist/search-VU6GI3U3.js +228 -0
- package/dist/search-XO365KES.js +177 -0
- package/dist/search-copy-BHNLLCUV.js +168 -0
- package/dist/seeds-6ROVZBFB.js +101 -0
- package/dist/select-4KMA72MV.js +111 -0
- package/dist/select-4KMA72MV.js.map +1 -0
- package/dist/sends-P6OPCYH5.js +349 -0
- package/dist/sequences-DP4BHM3E.js +146 -0
- package/dist/set-prompt-AII24NMX.js +200 -0
- package/dist/set-prompt-AII24NMX.js.map +1 -0
- package/dist/setup-links-T5TJZA3E.js +144 -0
- package/dist/shared-24IPELBM.js +32 -0
- package/dist/shopify-OQEKI7HC.js +4009 -0
- package/dist/site-QRLBZPEV.js +180 -0
- package/dist/sitemaps-SWADO4SI.js +77 -0
- package/dist/sites-H3FYJQFO.js +97 -0
- package/dist/skills-OYO6Y3DQ.js +47 -0
- package/dist/sources-U2WRH6D7.js +457 -0
- package/dist/sources-Y2BKZVXA.js +30 -0
- package/dist/stale-KE4K36UE.js +91 -0
- package/dist/stale-KE4K36UE.js.map +1 -0
- package/dist/stats-TTJHXR3E.js +34 -0
- package/dist/status-4BSXND3I.js +65 -0
- package/dist/sticker-CRIAIO75.js +103 -0
- package/dist/stock-TOFKLWSR.js +212 -0
- package/dist/studies-VFNWS6ND.js +250 -0
- package/dist/studio-WD364TWB.js +49 -0
- package/dist/study-writes-R7XYH3VH.js +472 -0
- package/dist/study-writes-R7XYH3VH.js.map +1 -0
- package/dist/suggest-GX4IROQN.js +66 -0
- package/dist/sync-BU7HU3FS.js +55 -0
- package/dist/sync-GQL5JX4U.js +57 -0
- package/dist/sync-VNBBOVBU.js +279 -0
- package/dist/sync-definition-EOARPSBS.js +71 -0
- package/dist/tag-SQ5ROLTP.js +57 -0
- package/dist/tag-manager-7S7PVYIJ.js +43 -0
- package/dist/tags-2226Q3VK.js +23 -0
- package/dist/tags-7QIBFIBX.js +227 -0
- package/dist/tags-BNWKAV3H.js +23 -0
- package/dist/tags-HG5EBHSO.js +23 -0
- package/dist/tags-WTN4EBT5.js +26 -0
- package/dist/targeting-SSI2F7XM.js +763 -0
- package/dist/targeting-SSI2F7XM.js.map +1 -0
- package/dist/targeting-constants-6KZXMRNI.js +118 -0
- package/dist/targeting-criteria-QSCRW75G.js +113 -0
- package/dist/targets-3KT3DO6O.js +106 -0
- package/dist/terms-IRLEAMIY.js +102 -0
- package/dist/testimonials-35FTFNQ5.js +32 -0
- package/dist/themes-WTMD2RE2.js +96 -0
- package/dist/themes-WTMD2RE2.js.map +1 -0
- package/dist/top-companies-JAWMSK2Q.js +111 -0
- package/dist/transcript-OIYU7F4E.js +165 -0
- package/dist/translate-S7ZQXQJH.js +604 -0
- package/dist/translate-S7ZQXQJH.js.map +1 -0
- package/dist/triggers-7QRQFTVM.js +144 -0
- package/dist/tweets-7XVF7PJO.js +123 -0
- package/dist/unfollow-ZCP6D2SC.js +46 -0
- package/dist/unlink-PYCYTYVN.js +70 -0
- package/dist/unstage-2OUF6ELM.js +88 -0
- package/dist/unstage-YADONHH6.js +96 -0
- package/dist/update-DEBDSBDI.js +81 -0
- package/dist/update-IDUSNDOI.js +192 -0
- package/dist/update-NG3HUYZZ.js +101 -0
- package/dist/update-P5IT7AIN.js +155 -0
- package/dist/update-U6NU7OXI.js +66 -0
- package/dist/upload-4F2JICEH.js +137 -0
- package/dist/upload-SS64KHDS.js +155 -0
- package/dist/upscale-JNNXDN6X.js +109 -0
- package/dist/url-options-EDPKAPPP.js +131 -0
- package/dist/url-params-4G26OEOO.js +101 -0
- package/dist/use-TKFP6WVP.js +111 -0
- package/dist/validate-HER6GMOZ.js +136 -0
- package/dist/validate-HER6GMOZ.js.map +1 -0
- package/dist/variant-3VTKOQUR.js +338 -0
- package/dist/videos-EDTBHLOZ.js +146 -0
- package/dist/videos-JRNJH66J.js +41 -0
- package/dist/view-6HX3FYMS.js +133 -0
- package/dist/viewer-check-OBBBAYV5.js +83 -0
- package/dist/web-GPUEUIDT.js +173 -0
- package/dist/winners-MEC77MZ4.js +113 -0
- package/dist/winning-ads-2DECFON4.js +86 -0
- package/dist/write-commands-AU2NJ4MR.js +1525 -0
- package/dist/write-commands-AU2NJ4MR.js.map +1 -0
- package/dist/write-commands-D5M5A4YI.js +721 -0
- package/dist/write-commands-LQVERLAQ.js +206 -0
- package/dist/write-commands-Y6U4WABA.js +1170 -0
- package/dist/write-commands-Y6U4WABA.js.map +1 -0
- package/dist/x-4TM5RET4.js +47 -0
- package/package.json +1 -1
- package/dist/account-EXGRZIXS.js +0 -82
- package/dist/account-JVDP5ERG.js +0 -82
- package/dist/account-NSBALYYS.js +0 -139
- package/dist/account-assets-EPEYTJFD.js +0 -290
- package/dist/account-level-VD4NLB2D.js +0 -611
- package/dist/account-level-VD4NLB2D.js.map +0 -1
- package/dist/account-reads-Z467VAL4.js +0 -219
- package/dist/account-reads-Z467VAL4.js.map +0 -1
- package/dist/account-users-342OZALE.js +0 -64
- package/dist/account-users-342OZALE.js.map +0 -1
- package/dist/account-writes-KEXINJ5D.js +0 -68
- package/dist/accounts-A47QUTTB.js +0 -76
- package/dist/accounts-E5TF2AFI.js +0 -115
- package/dist/accounts-QESGQJGZ.js +0 -713
- package/dist/accounts-QR6OQ3GC.js +0 -119
- package/dist/accounts-UWC2TT6R.js +0 -80
- package/dist/actions-NT3HXFFA.js +0 -55
- package/dist/active-entities-XRSJNBOV.js +0 -103
- package/dist/activecampaign-EYRHDSXY.js +0 -938
- package/dist/activities-ZDWREYR7.js +0 -75
- package/dist/ad-group-writes-SVR4RCKB.js +0 -172
- package/dist/ad-groups-C726HUXS.js +0 -70
- package/dist/ad-writes-RWJIWGEL.js +0 -176
- package/dist/add-25YZMFSH.js +0 -85
- package/dist/add-7MAL7JRX.js +0 -81
- package/dist/add-D44VCDRU.js +0 -148
- package/dist/add-EPOHDTUO.js +0 -305
- package/dist/add-JO4ZPS23.js +0 -97
- package/dist/add-NSW26HIM.js +0 -107
- package/dist/add-accounts-EKMSHAA4.js +0 -91
- package/dist/ads-3KK7VQPU.js +0 -79
- package/dist/ads-4YZYNU66.js +0 -128
- package/dist/ads-DGL5SGP3.js +0 -120
- package/dist/ads-EWZGIC4T.js +0 -48
- package/dist/adsets-PSVCPCE3.js +0 -182
- package/dist/advertisers-7NAPI5ZU.js +0 -125
- package/dist/advertisers-AHOWL3YL.js +0 -123
- package/dist/analytics-7H6NDVUQ.js +0 -447
- package/dist/analytics-GFFXCMLV.js +0 -2437
- package/dist/animate-GTUI7XX4.js +0 -480
- package/dist/approved-E4EZA5RT.js +0 -73
- package/dist/asset-writes-NDSHY5OT.js +0 -50
- package/dist/assign-SDPPWP3Q.js +0 -80
- package/dist/audience-size-LKDDHKED.js +0 -76
- package/dist/audience-writes-4KQXVGHO.js +0 -327
- package/dist/audience-writes-4KQXVGHO.js.map +0 -1
- package/dist/audiences-6L43K2T2.js +0 -280
- package/dist/audiences-T5LMTT3B.js +0 -85
- package/dist/audiences-UHLVATR6.js +0 -106
- package/dist/audit-46DO2HV3.js +0 -88
- package/dist/audit-TSZIQTUB.js +0 -154
- package/dist/autocomplete-5BSAOAMZ.js +0 -114
- package/dist/avatars-S6RRD7M3.js +0 -38
- package/dist/bid-pricing-5KUAINH4.js +0 -103
- package/dist/brand-KFK2MQWW.js +0 -22
- package/dist/brief-6DV2PKAU.js +0 -543
- package/dist/brief-6DV2PKAU.js.map +0 -1
- package/dist/businesses-TRFYMZ4I.js +0 -54
- package/dist/campaign-groups-5RPZPDNW.js +0 -99
- package/dist/campaign-writes-FUIGN5OR.js +0 -176
- package/dist/campaign-writes-XMYBEVZF.js +0 -168
- package/dist/campaigns-2MTON2IE.js +0 -130
- package/dist/campaigns-5A3IE735.js +0 -111
- package/dist/campaigns-JNP3VDZK.js +0 -113
- package/dist/campaigns-N2SWSBYT.js +0 -78
- package/dist/canvas-CHFNQTLY.js +0 -46
- package/dist/capabilities-2W3SRZ2I.js +0 -147
- package/dist/cards-CXKIVM4D.js +0 -85
- package/dist/catalog-6BER3SF7.js +0 -66
- package/dist/catalogs-4DNLG4AM.js +0 -782
- package/dist/catalogs-4DNLG4AM.js.map +0 -1
- package/dist/catalogs-G5NOKL4L.js +0 -130
- package/dist/changes-AS4RVEAL.js +0 -167
- package/dist/chatgpt-O6EEAYLF.js +0 -47
- package/dist/chats-4JLWMUAC.js +0 -584
- package/dist/check-BOKLY5WG.js +0 -107
- package/dist/check-BOKLY5WG.js.map +0 -1
- package/dist/chunk-2CC4CPDT.js +0 -225
- package/dist/chunk-3GXHML4V.js +0 -106
- package/dist/chunk-3KUNRKNV.js +0 -430
- package/dist/chunk-3QPG2D27.js +0 -125
- package/dist/chunk-3UNMVVSI.js +0 -917
- package/dist/chunk-3UNMVVSI.js.map +0 -1
- package/dist/chunk-3WN5GWX4.js +0 -94
- package/dist/chunk-4AO3LSYM.js +0 -73
- package/dist/chunk-4HFM5RCP.js +0 -217
- package/dist/chunk-4INBMXUS.js +0 -930
- package/dist/chunk-4NZ47VXO.js +0 -137
- package/dist/chunk-4NZ47VXO.js.map +0 -1
- package/dist/chunk-5NMKNHJI.js +0 -46
- package/dist/chunk-5NMKNHJI.js.map +0 -1
- package/dist/chunk-5QNW5PCM.js +0 -106
- package/dist/chunk-6AMN346B.js +0 -114
- package/dist/chunk-6D7WTUF3.js +0 -98
- package/dist/chunk-6DSPB6YA.js +0 -7904
- package/dist/chunk-6DSPB6YA.js.map +0 -1
- package/dist/chunk-6EOWBGGW.js +0 -191
- package/dist/chunk-6FQ7CJEX.js +0 -57
- package/dist/chunk-6MJKVNLL.js +0 -25
- package/dist/chunk-6OZDN2FI.js +0 -19
- package/dist/chunk-75OGTGC4.js +0 -89
- package/dist/chunk-7NBQQOCU.js +0 -97
- package/dist/chunk-AQRBEPZL.js +0 -138
- package/dist/chunk-AXLKR3E4.js +0 -66
- package/dist/chunk-AZIXX73C.js +0 -64
- package/dist/chunk-B64KJW5C.js +0 -476
- package/dist/chunk-BEZEZHQ6.js +0 -455
- package/dist/chunk-BIBXZJZI.js +0 -97
- package/dist/chunk-BMK4F4CU.js +0 -169
- package/dist/chunk-C52Q3L4C.js +0 -51
- package/dist/chunk-CBVUO7SK.js +0 -1744
- package/dist/chunk-CF5I4Q5M.js +0 -69
- package/dist/chunk-CST52ZME.js +0 -142
- package/dist/chunk-DGHSXHZR.js +0 -136
- package/dist/chunk-DHF4FXWS.js +0 -58
- package/dist/chunk-DPOUS5DN.js +0 -287
- package/dist/chunk-DW3H2XQA.js +0 -91
- package/dist/chunk-EAA273XW.js +0 -2250
- package/dist/chunk-EAA273XW.js.map +0 -1
- package/dist/chunk-EJ6EED6I.js +0 -69
- package/dist/chunk-EM5R3BYC.js +0 -131
- package/dist/chunk-EMR5KGNY.js +0 -685
- package/dist/chunk-EONUZOJV.js +0 -962
- package/dist/chunk-FLTAPEVY.js +0 -288
- package/dist/chunk-GRX3JXSR.js +0 -843
- package/dist/chunk-GRX3JXSR.js.map +0 -1
- package/dist/chunk-H25GY4U4.js +0 -139
- package/dist/chunk-H4RHZJ65.js +0 -207
- package/dist/chunk-H6ASYVQX.js +0 -544
- package/dist/chunk-HFIHXIYY.js +0 -547
- package/dist/chunk-HOA74TOS.js +0 -249
- package/dist/chunk-HOA74TOS.js.map +0 -1
- package/dist/chunk-HPF3USL2.js +0 -52
- package/dist/chunk-HQDNDKNR.js +0 -5471
- package/dist/chunk-HXSYWXLH.js +0 -709
- package/dist/chunk-I3QLWGKS.js +0 -64
- package/dist/chunk-IYDESWW4.js +0 -74
- package/dist/chunk-J4AWNWKN.js +0 -1919
- package/dist/chunk-J4AWNWKN.js.map +0 -1
- package/dist/chunk-JAK5VDSG.js +0 -103
- package/dist/chunk-JAME5NBT.js +0 -42
- package/dist/chunk-JGSEHX2Q.js +0 -3107
- package/dist/chunk-JGSEHX2Q.js.map +0 -1
- package/dist/chunk-JLAFNORO.js +0 -285
- package/dist/chunk-KG5VNPKU.js +0 -91
- package/dist/chunk-KGJ6EIX3.js +0 -76
- package/dist/chunk-KJHG2DWS.js +0 -170
- package/dist/chunk-L4QEMWNJ.js +0 -111
- package/dist/chunk-L7I47VGM.js +0 -46
- package/dist/chunk-LAMSUL26.js +0 -1518
- package/dist/chunk-LJEJCIHR.js +0 -246
- package/dist/chunk-LLTHDEM2.js +0 -479
- package/dist/chunk-M4KFO256.js +0 -188
- package/dist/chunk-M5PZ6QQB.js +0 -312
- package/dist/chunk-MFGUR5OD.js +0 -334
- package/dist/chunk-MIHY534L.js +0 -39
- package/dist/chunk-MKOI6QYM.js +0 -225
- package/dist/chunk-MPTNN35I.js +0 -325
- package/dist/chunk-MSIOGH67.js +0 -66
- package/dist/chunk-MTW2NDDD.js +0 -98
- package/dist/chunk-MZLPOYCC.js +0 -10058
- package/dist/chunk-MZLPOYCC.js.map +0 -1
- package/dist/chunk-NOCBNING.js +0 -638
- package/dist/chunk-NOCBNING.js.map +0 -1
- package/dist/chunk-NWLK5RPA.js +0 -197
- package/dist/chunk-NXNOXZGB.js +0 -2523
- package/dist/chunk-NXNOXZGB.js.map +0 -1
- package/dist/chunk-O5VSYBUA.js +0 -343
- package/dist/chunk-PR5OPERY.js +0 -167
- package/dist/chunk-Q3G4ZI2U.js +0 -84
- package/dist/chunk-Q5XUFN2W.js +0 -35
- package/dist/chunk-Q736UFSD.js +0 -75
- package/dist/chunk-QGAUDVMR.js +0 -148
- package/dist/chunk-QRRAMUKV.js +0 -468
- package/dist/chunk-QVQKCVP7.js +0 -85
- package/dist/chunk-QVQKCVP7.js.map +0 -1
- package/dist/chunk-RGLTITIH.js +0 -494
- package/dist/chunk-RIVQ4PQQ.js +0 -225
- package/dist/chunk-RLLPY62L.js +0 -163
- package/dist/chunk-RQHXWPET.js +0 -61
- package/dist/chunk-RRKUXGAU.js +0 -26
- package/dist/chunk-RULW4627.js +0 -23
- package/dist/chunk-S4RCF3YT.js +0 -156
- package/dist/chunk-S4RCF3YT.js.map +0 -1
- package/dist/chunk-S5S54J2K.js +0 -56
- package/dist/chunk-SIRRBWQ2.js +0 -215
- package/dist/chunk-TCLJRWST.js +0 -831
- package/dist/chunk-TLQY4QBW.js +0 -84
- package/dist/chunk-UK4XSLV2.js +0 -296
- package/dist/chunk-URGXEDFV.js +0 -76
- package/dist/chunk-UVUY6FLV.js +0 -1254
- package/dist/chunk-V4HS5JRL.js +0 -1320
- package/dist/chunk-V7EN5LFS.js +0 -115
- package/dist/chunk-WTOBG3YL.js +0 -392
- package/dist/chunk-WTPID22G.js +0 -152
- package/dist/chunk-WYMX3F47.js +0 -399
- package/dist/chunk-X5YHMGAT.js +0 -224
- package/dist/chunk-X7USE7IA.js +0 -24026
- package/dist/chunk-XA76OGSL.js +0 -718
- package/dist/chunk-XA7JN7YE.js +0 -297
- package/dist/chunk-XHAGX4J4.js +0 -604
- package/dist/chunk-XY7W6MQN.js +0 -274
- package/dist/chunk-YAINUFSC.js +0 -203
- package/dist/chunk-YAMKCMAS.js +0 -219
- package/dist/chunk-YRWCXYWW.js +0 -178
- package/dist/chunk-YRWCXYWW.js.map +0 -1
- package/dist/chunk-Z5BG47PO.js +0 -5752
- package/dist/chunk-Z5BG47PO.js.map +0 -1
- package/dist/chunk-Z7ICQKC2.js +0 -344
- package/dist/chunk-ZBXV2KOQ.js +0 -220
- package/dist/chunk-ZCGM7ZWM.js +0 -45
- package/dist/chunk-ZMNRSTNV.js +0 -454
- package/dist/cite-WCAOCOO5.js +0 -191
- package/dist/claim-L4WLCVUL.js +0 -200
- package/dist/client-VCKP6WBR.js +0 -19
- package/dist/code-VXOTFGD2.js +0 -76
- package/dist/companies-HW46BRQG.js +0 -198
- package/dist/company-KCIDE7SL.js +0 -308
- package/dist/complete-JXM25FVW.js +0 -84
- package/dist/config-UR45YCIN.js +0 -88
- package/dist/connect-7TX7AAM5.js +0 -45
- package/dist/content-EQQIKG5H.js +0 -85
- package/dist/conversation-YIDUB6GL.js +0 -96
- package/dist/conversion-report-33SG7SHU.js +0 -127
- package/dist/conversion-upload-command-N3OMLLF2.js +0 -439
- package/dist/conversion-upload-command-N3OMLLF2.js.map +0 -1
- package/dist/conversion-writes-XGGTBML5.js +0 -122
- package/dist/conversions-F4OZYUCT.js +0 -140
- package/dist/conversions-PPP4QK7U.js +0 -78
- package/dist/copy-writes-JVUX3YDL.js +0 -170
- package/dist/copy-writes-JVUX3YDL.js.map +0 -1
- package/dist/countries-GRCU4IGM.js +0 -82
- package/dist/create-6EAKNERA.js +0 -239
- package/dist/create-772LZHZR.js +0 -218
- package/dist/create-FDNMIVFX.js +0 -62
- package/dist/create-X2QM7GA7.js +0 -135
- package/dist/creatives-4EPM3RHG.js +0 -118
- package/dist/creatives-K2AAW6EL.js +0 -58
- package/dist/creatives-K2AAW6EL.js.map +0 -1
- package/dist/creatives-SNYN4KIM.js +0 -229
- package/dist/credentials-KZZVBO42.js +0 -290
- package/dist/critique-G5QXRHPF.js +0 -1451
- package/dist/critique-G5QXRHPF.js.map +0 -1
- package/dist/critique-PUHOJI7V.js +0 -232
- package/dist/critique-PUHOJI7V.js.map +0 -1
- package/dist/crm-4LZZVT4N.js +0 -229
- package/dist/crm-M6NXDU5B.js +0 -323
- package/dist/crop-NE7YX4SS.js +0 -113
- package/dist/currency-HK2ZW2VW.js +0 -88
- package/dist/custom-conversions-GQTU5E6X.js +0 -128
- package/dist/customers-V5NT4W7X.js +0 -65
- package/dist/decide-6Q5X3V3F.js +0 -199
- package/dist/delete-EKKOEB3N.js +0 -69
- package/dist/delete-GQIKNO53.js +0 -57
- package/dist/delete-LFZIPQEO.js +0 -69
- package/dist/delete-QHDDR66K.js +0 -85
- package/dist/delete-SP66F7ZV.js +0 -71
- package/dist/delete-YOEI63OT.js +0 -67
- package/dist/demographics-CEQ74O74.js +0 -141
- package/dist/describe-DJPIUEFE.js +0 -97
- package/dist/describe-MAGTSOW4.js +0 -97
- package/dist/dimensions-IC2H7V3H.js +0 -101
- package/dist/discard-5GDF3TP3.js +0 -69
- package/dist/discover-PSL2NBJL.js +0 -93
- package/dist/discover-Q5PAOIQQ.js +0 -172
- package/dist/domain-PKOUPHHF.js +0 -101
- package/dist/download-2WNTN7JQ.js +0 -172
- package/dist/download-EHDJXBAC.js +0 -337
- package/dist/draft-27NMTARB.js +0 -134
- package/dist/draft-CF4XNJG5.js +0 -578
- package/dist/draft-CF4XNJG5.js.map +0 -1
- package/dist/draft-F4CVSL2I.js +0 -332
- package/dist/draft-F4CVSL2I.js.map +0 -1
- package/dist/draft-JESKGZ6O.js +0 -138
- package/dist/draft-L2NXCIYT.js +0 -315
- package/dist/draft-MWYKIZC4.js +0 -260
- package/dist/draft-RZCTAOI2.js +0 -374
- package/dist/draft-UEVBUNKV.js +0 -220
- package/dist/env-NZXNMWSD.js +0 -53
- package/dist/experiment-XAYSEYTU.js +0 -1397
- package/dist/experiments-DWC6L72S.js +0 -236
- package/dist/experiments-DWC6L72S.js.map +0 -1
- package/dist/export-W54UZ62P.js +0 -168
- package/dist/extract-6HJXSOZW.js +0 -143
- package/dist/facets-TBOXGYJT.js +0 -117
- package/dist/favorites-Y6CT6NSQ.js +0 -178
- package/dist/feed-35BRQPTH.js +0 -177
- package/dist/feedback-MSMFYAEY.js +0 -114
- package/dist/feedback-WAC6S42V.js +0 -115
- package/dist/feedback-WAC6S42V.js.map +0 -1
- package/dist/feedback-record-XRQ2R2WD.js +0 -269
- package/dist/feedback-record-XRQ2R2WD.js.map +0 -1
- package/dist/fetch-I6P72CDL.js +0 -139
- package/dist/fetch-LGX7B3IC.js +0 -204
- package/dist/find-SVGRA7IA.js +0 -144
- package/dist/fit-RVWPRBNO.js +0 -65
- package/dist/flows-LA6EYMLS.js +0 -340
- package/dist/follow-24QSDNAG.js +0 -94
- package/dist/follow-competitors-AG4E4XFA.js +0 -112
- package/dist/following-YGM6TBK3.js +0 -113
- package/dist/fonts-WRC34VSV.js +0 -39
- package/dist/forecast-6VHRGBJG.js +0 -121
- package/dist/forecast-OVKXBLJB.js +0 -169
- package/dist/forecast-OVKXBLJB.js.map +0 -1
- package/dist/funding-WZNGXRLJ.js +0 -85
- package/dist/funnel-U3GQIGND.js +0 -397
- package/dist/ga4-W3U5YTRT.js +0 -55
- package/dist/generate-Y4NJEYIH.js +0 -263
- package/dist/get-3MTAVNTP.js +0 -56
- package/dist/get-5SPNAIUQ.js +0 -62
- package/dist/get-AHI247JG.js +0 -82
- package/dist/get-GEUSRD5Y.js +0 -59
- package/dist/get-JIZPYK3Z.js +0 -74
- package/dist/get-PF3HGECD.js +0 -62
- package/dist/get-TS2ZJDCQ.js +0 -38
- package/dist/get-YWDZYEAC.js +0 -92
- package/dist/gif-NP6EDGEE.js +0 -111
- package/dist/google-BMUJKAUO.js +0 -3300
- package/dist/google-BMUJKAUO.js.map +0 -1
- package/dist/google-ZVAIFXQZ.js +0 -163
- package/dist/google-ads-6Z7P3SCD.js +0 -198
- package/dist/group-3DT4UYSR.js +0 -43
- package/dist/group-OEKKCFXT.js +0 -43
- package/dist/gsc-4FEFPFPB.js +0 -30
- package/dist/history-4QUV45ZJ.js +0 -102
- package/dist/history-PD7FCTDD.js +0 -153
- package/dist/history-VKRYKQ4C.js +0 -69
- package/dist/hubspot-WEFAFKVJ.js +0 -814
- package/dist/icon-43UJTGGE.js +0 -138
- package/dist/ideas-SMSEXKIA.js +0 -45
- package/dist/images-KAT4BPYV.js +0 -92
- package/dist/improve-IMXQN6OD.js +0 -86
- package/dist/ingest-IHKTSJ4H.js +0 -28
- package/dist/ingest-TOHQ6MZA.js +0 -131
- package/dist/insights-3IPSEBYW.js +0 -132
- package/dist/insights-BR3456EI.js +0 -658
- package/dist/inspect-5MZBPDYS.js +0 -192
- package/dist/inspiration-XZI5KCQW.js +0 -53
- package/dist/instant-experiences-2LKF7XVK.js +0 -264
- package/dist/instant-experiences-2LKF7XVK.js.map +0 -1
- package/dist/intent-ZM4K623V.js +0 -95
- package/dist/job-GOX3KIKG.js +0 -202
- package/dist/job-create-F2PQSN3C.js +0 -109
- package/dist/job-status-3FMA5D7T.js +0 -74
- package/dist/keep-23ZYMWPG.js +0 -78
- package/dist/keyword-gap-FAAF2I6V.js +0 -130
- package/dist/keyword-metrics-EXNJRJBY.js +0 -200
- package/dist/keywords-for-site-5LW77QWF.js +0 -131
- package/dist/knowledge-7M7DSRF3.js +0 -195
- package/dist/landing-ZH4SD3DW.js +0 -28
- package/dist/landings-VNQ4VA2U.js +0 -151
- package/dist/languages-2X22HXM3.js +0 -55
- package/dist/languages-ZGDTERIQ.js +0 -40
- package/dist/launches-L4EUROCJ.js +0 -19
- package/dist/layerize-6QHQMA7Q.js +0 -190
- package/dist/lead-routes-5TPFJEVH.js +0 -733
- package/dist/leads-4TLOH47R.js +0 -541
- package/dist/leads-4TLOH47R.js.map +0 -1
- package/dist/leads-736RILZN.js +0 -115
- package/dist/learn-BESXWXEN.js +0 -207
- package/dist/library-MNJC24E4.js +0 -212
- package/dist/lighthouse-DJMAXFTD.js +0 -75
- package/dist/line-item-writes-FA72DHNQ.js +0 -211
- package/dist/line-items-XVYE3IYT.js +0 -107
- package/dist/link-6FPKFVC3.js +0 -67
- package/dist/linkedin-TE6P4RYN.js +0 -1344
- package/dist/linkedin-TE6P4RYN.js.map +0 -1
- package/dist/linkedin-person-TZJ6VEXE.js +0 -139
- package/dist/list-2277GCPH.js +0 -51
- package/dist/list-4R5EMKUQ.js +0 -154
- package/dist/list-537S75BZ.js +0 -76
- package/dist/list-MN2FPF3T.js +0 -306
- package/dist/list-ORO4WDF4.js +0 -67
- package/dist/list-Q52FPW3H.js +0 -50
- package/dist/list-V4PSDBLX.js +0 -93
- package/dist/list-WIXQXNKB.js +0 -65
- package/dist/list-XK33NCSC.js +0 -57
- package/dist/locations-A65MFB7Q.js +0 -69
- package/dist/locations-WN6B3IJK.js +0 -40
- package/dist/log-ABBZLPRU.js +0 -95
- package/dist/logo-4LSFZ3ZO.js +0 -19
- package/dist/lookup-WIM5WR25.js +0 -23
- package/dist/make-QAFKU6WO.js +0 -1367
- package/dist/make-QAFKU6WO.js.map +0 -1
- package/dist/map-52P35OKE.js +0 -445
- package/dist/mcp-PZ3VBIF4.js +0 -729
- package/dist/media-34I7UB7Z.js +0 -89
- package/dist/media-KKI3KWLR.js +0 -18
- package/dist/media-sources-TT374PLN.js +0 -35
- package/dist/members-CF6VG6ZW.js +0 -47
- package/dist/meme-6NFYFQ7T.js +0 -108
- package/dist/meta-2UK7KIE4.js +0 -124
- package/dist/metrics-3U3ZO2RF.js +0 -152
- package/dist/models-VOSJJFO2.js +0 -155
- package/dist/normalize-4LZCLMTQ.js +0 -144
- package/dist/normalize-G75RDSE4.js +0 -806
- package/dist/options-6IRL7CL6.js +0 -125
- package/dist/organization-WMLLJE66.js +0 -949
- package/dist/output-ELEO2Z6R.js +0 -24
- package/dist/page-4X6IBUWG.js +0 -105
- package/dist/page-photos-KNBLMFLN.js +0 -118
- package/dist/page-photos-KNBLMFLN.js.map +0 -1
- package/dist/pages-7HW5YOZV.js +0 -67
- package/dist/performance-A7CYFBW2.js +0 -5565
- package/dist/performance-HYSTXLTS.js +0 -27
- package/dist/pinterest-KA6VFDM4.js +0 -105
- package/dist/pixels-D5HF24FI.js +0 -109
- package/dist/pixels-U6UA662G.js +0 -62
- package/dist/plan-XCA6R3HZ.js +0 -208
- package/dist/posts-ALGM6ONV.js +0 -36
- package/dist/preview-55TRUF4Q.js +0 -245
- package/dist/preview-76ZP2QA3.js +0 -101
- package/dist/profile-NHUPUCBR.js +0 -159
- package/dist/promoted-tweet-writes-I5G4IDL5.js +0 -183
- package/dist/promoted-tweets-X5XNO7IT.js +0 -119
- package/dist/properties-2ZXA5BPJ.js +0 -101
- package/dist/publish-S2Z4EF4H.js +0 -350
- package/dist/query-63CTX2PH.js +0 -231
- package/dist/query-DMWY3TDD.js +0 -236
- package/dist/query-SAQADBM2.js +0 -62
- package/dist/questionnaire-WHE42RD4.js +0 -94
- package/dist/read-NESEKULG.js +0 -141
- package/dist/reddit-S2L5WDY7.js +0 -29
- package/dist/refresh-ILDEPU5A.js +0 -42
- package/dist/refresh-K2YTJSH3.js +0 -97
- package/dist/release-FX76IIVN.js +0 -63
- package/dist/relevant-pages-KTSODNNW.js +0 -99
- package/dist/remove-LOVWPLDO.js +0 -53
- package/dist/remove-NHE4UT7G.js +0 -49
- package/dist/reopen-DXV2Y6Z3.js +0 -66
- package/dist/rerun-TFQCRRFK.js +0 -97
- package/dist/rerun-TFQCRRFK.js.map +0 -1
- package/dist/research-7PGDAKC7.js +0 -265
- package/dist/research-HY5PSUCC.js +0 -75
- package/dist/reset-MEHUQJA4.js +0 -57
- package/dist/reset-Y5VZJRDQ.js +0 -57
- package/dist/resolve-FAVABEJW.js +0 -124
- package/dist/retry-5IY4MNDW.js +0 -65
- package/dist/retry-OMJ3C3AX.js +0 -63
- package/dist/retry-failed-R5HPQ3KQ.js +0 -45
- package/dist/revenue-S4KFZCOI.js +0 -91
- package/dist/revenue-S4KFZCOI.js.map +0 -1
- package/dist/rule-writes-QB4IWFCJ.js +0 -530
- package/dist/rule-writes-QB4IWFCJ.js.map +0 -1
- package/dist/rules-66IGR2KA.js +0 -99
- package/dist/rules-66IGR2KA.js.map +0 -1
- package/dist/rules-FYVD2QBB.js +0 -217
- package/dist/rules-add-G7YGOYZJ.js +0 -465
- package/dist/rules-add-G7YGOYZJ.js.map +0 -1
- package/dist/run-LJVBH3JS.js +0 -72
- package/dist/run-XJBWDWN6.js +0 -69
- package/dist/scaffold-ad-GNMCB3QY.js +0 -1513
- package/dist/scaffold-ad-GNMCB3QY.js.map +0 -1
- package/dist/scaffold-static-ad-QIWKWURL.js +0 -1013
- package/dist/scaffold-static-ad-QIWKWURL.js.map +0 -1
- package/dist/scaffold-video-G6G2NPUF.js +0 -885
- package/dist/scaffold-video-G6G2NPUF.js.map +0 -1
- package/dist/schedule-D7EDEM45.js +0 -67
- package/dist/schedule-OX5XHXLH.js +0 -64
- package/dist/scheduled-agents-A5ZFQB5X.js +0 -55
- package/dist/schema-NTGHAPR2.js +0 -135
- package/dist/schema-Z43AJOJ4.js +0 -152
- package/dist/scrape-VL2RWSTW.js +0 -2209
- package/dist/screenshot-Y6EEXS3Q.js +0 -103
- package/dist/search-CXC7N5XJ.js +0 -51
- package/dist/search-JEXYEAPQ.js +0 -228
- package/dist/search-L3GTZYRW.js +0 -92
- package/dist/search-TXBYKNQC.js +0 -91
- package/dist/search-WCXQBMMM.js +0 -177
- package/dist/search-XHSTUBDY.js +0 -26
- package/dist/search-copy-FIPG7OCC.js +0 -168
- package/dist/seeds-ADJKURNG.js +0 -101
- package/dist/select-5ZD7FVBT.js +0 -110
- package/dist/select-5ZD7FVBT.js.map +0 -1
- package/dist/sends-RS4LWRAC.js +0 -349
- package/dist/sequences-2RPKDKGQ.js +0 -146
- package/dist/set-prompt-NGCVMQIQ.js +0 -199
- package/dist/set-prompt-NGCVMQIQ.js.map +0 -1
- package/dist/setup-links-4HCSF55G.js +0 -144
- package/dist/shared-4GGUIOF2.js +0 -32
- package/dist/shopify-GDR5WGHH.js +0 -4009
- package/dist/site-B7LT6KAO.js +0 -180
- package/dist/sitemaps-Z6IELTQV.js +0 -77
- package/dist/sites-KLAKI2EY.js +0 -97
- package/dist/skills-OJP36EVR.js +0 -47
- package/dist/sources-6DPUEROC.js +0 -30
- package/dist/sources-OSUXCLID.js +0 -457
- package/dist/stale-YKFKPPOH.js +0 -90
- package/dist/stale-YKFKPPOH.js.map +0 -1
- package/dist/stats-MIMFX4R7.js +0 -34
- package/dist/status-KIC3P5JV.js +0 -65
- package/dist/sticker-IREEEN7I.js +0 -103
- package/dist/stock-VWFUFRYV.js +0 -212
- package/dist/studies-YGYAH3JI.js +0 -250
- package/dist/studio-XLC37YGX.js +0 -49
- package/dist/study-writes-UPGJB36A.js +0 -471
- package/dist/study-writes-UPGJB36A.js.map +0 -1
- package/dist/suggest-5RTISDLI.js +0 -66
- package/dist/sync-OHIXI4I6.js +0 -55
- package/dist/sync-QBW4XH2H.js +0 -57
- package/dist/sync-VCAFAYW4.js +0 -279
- package/dist/sync-definition-4KMJK46H.js +0 -70
- package/dist/tag-DSCUKNC3.js +0 -57
- package/dist/tag-manager-IINALUEJ.js +0 -43
- package/dist/tags-4F5UBPYG.js +0 -227
- package/dist/tags-4O5FPEEY.js +0 -26
- package/dist/tags-7RKKCQ4X.js +0 -23
- package/dist/tags-CB4MWI3A.js +0 -23
- package/dist/tags-QZJIP4LJ.js +0 -23
- package/dist/targeting-BM72UTI6.js +0 -762
- package/dist/targeting-BM72UTI6.js.map +0 -1
- package/dist/targeting-constants-54S3FXIF.js +0 -118
- package/dist/targeting-criteria-65UU7EYD.js +0 -113
- package/dist/targets-T742OPQI.js +0 -106
- package/dist/terms-OFHNLW6U.js +0 -102
- package/dist/testimonials-HKJJXONO.js +0 -32
- package/dist/themes-Q6LVMEMF.js +0 -95
- package/dist/themes-Q6LVMEMF.js.map +0 -1
- package/dist/top-companies-T6AMU4C6.js +0 -111
- package/dist/transcript-DOUYMZAP.js +0 -165
- package/dist/translate-WKOXFZTQ.js +0 -603
- package/dist/translate-WKOXFZTQ.js.map +0 -1
- package/dist/triggers-EYY4GSUL.js +0 -144
- package/dist/tweets-TRTXC6O4.js +0 -123
- package/dist/unfollow-DATOGPLZ.js +0 -46
- package/dist/unlink-JNM4WRZK.js +0 -70
- package/dist/unstage-LLQCMZ5H.js +0 -96
- package/dist/unstage-QF4JT5YP.js +0 -88
- package/dist/update-6V3RBRIE.js +0 -101
- package/dist/update-J4DURR4K.js +0 -192
- package/dist/update-J7Y6LZC5.js +0 -155
- package/dist/update-MQ4NYIU6.js +0 -66
- package/dist/update-SD5YQIJC.js +0 -81
- package/dist/upload-7PPMVWVA.js +0 -155
- package/dist/upload-CEIYYPID.js +0 -137
- package/dist/upscale-WVJZG76V.js +0 -109
- package/dist/url-options-6WC2XQKB.js +0 -131
- package/dist/url-params-OVBIP6UA.js +0 -101
- package/dist/use-6FADOAFZ.js +0 -111
- package/dist/validate-UHXI2ESE.js +0 -135
- package/dist/validate-UHXI2ESE.js.map +0 -1
- package/dist/variant-RNM36P4J.js +0 -338
- package/dist/videos-GHFCOTT7.js +0 -146
- package/dist/videos-Z72RXCRB.js +0 -41
- package/dist/view-YR6MDLWL.js +0 -133
- package/dist/viewer-check-655BZRML.js +0 -83
- package/dist/web-4QN6QB7L.js +0 -173
- package/dist/winners-4T5RFQXU.js +0 -113
- package/dist/winning-ads-2J2RIOLR.js +0 -86
- package/dist/write-commands-6D55SB56.js +0 -206
- package/dist/write-commands-AIWLEGO2.js +0 -1169
- package/dist/write-commands-AIWLEGO2.js.map +0 -1
- package/dist/write-commands-UO3OQIHH.js +0 -721
- package/dist/write-commands-V7B4FBMX.js +0 -1524
- package/dist/write-commands-V7B4FBMX.js.map +0 -1
- package/dist/x-7KXNCWTJ.js +0 -47
- /package/dist/{account-JVDP5ERG.js.map → account-6RJ6ZI3B.js.map} +0 -0
- /package/dist/{account-EXGRZIXS.js.map → account-AIGNJ2RP.js.map} +0 -0
- /package/dist/{account-NSBALYYS.js.map → account-E5LLPRZ6.js.map} +0 -0
- /package/dist/{account-assets-EPEYTJFD.js.map → account-assets-J6SVHSXR.js.map} +0 -0
- /package/dist/{account-writes-KEXINJ5D.js.map → account-writes-XNS4IKZV.js.map} +0 -0
- /package/dist/{accounts-UWC2TT6R.js.map → accounts-3ZWYGRVM.js.map} +0 -0
- /package/dist/{accounts-QR6OQ3GC.js.map → accounts-5TLHSEZR.js.map} +0 -0
- /package/dist/{accounts-QESGQJGZ.js.map → accounts-BAZYYDFV.js.map} +0 -0
- /package/dist/{accounts-A47QUTTB.js.map → accounts-L2HVNJUF.js.map} +0 -0
- /package/dist/{accounts-E5TF2AFI.js.map → accounts-NTBIRB52.js.map} +0 -0
- /package/dist/{actions-NT3HXFFA.js.map → actions-N2FBJMT4.js.map} +0 -0
- /package/dist/{active-entities-XRSJNBOV.js.map → active-entities-IJPRN45K.js.map} +0 -0
- /package/dist/{activecampaign-EYRHDSXY.js.map → activecampaign-U77COT2F.js.map} +0 -0
- /package/dist/{activities-ZDWREYR7.js.map → activities-SS3SUWSS.js.map} +0 -0
- /package/dist/{ad-group-writes-SVR4RCKB.js.map → ad-group-writes-DTQSUNE2.js.map} +0 -0
- /package/dist/{ad-groups-C726HUXS.js.map → ad-groups-CX23GLVE.js.map} +0 -0
- /package/dist/{ad-writes-RWJIWGEL.js.map → ad-writes-HAAUOJCG.js.map} +0 -0
- /package/dist/{add-EPOHDTUO.js.map → add-ABPQTO2M.js.map} +0 -0
- /package/dist/{add-JO4ZPS23.js.map → add-BK6N7KWU.js.map} +0 -0
- /package/dist/{add-25YZMFSH.js.map → add-ECN2FTMH.js.map} +0 -0
- /package/dist/{add-D44VCDRU.js.map → add-FH7OVKFF.js.map} +0 -0
- /package/dist/{add-7MAL7JRX.js.map → add-KHY3H54G.js.map} +0 -0
- /package/dist/{add-NSW26HIM.js.map → add-VDH2VCXR.js.map} +0 -0
- /package/dist/{add-accounts-EKMSHAA4.js.map → add-accounts-6JAOSCXK.js.map} +0 -0
- /package/dist/{ads-4YZYNU66.js.map → ads-BEMEXBDJ.js.map} +0 -0
- /package/dist/{ads-EWZGIC4T.js.map → ads-GAU2XKNL.js.map} +0 -0
- /package/dist/{ads-3KK7VQPU.js.map → ads-HZOXZ3FY.js.map} +0 -0
- /package/dist/{ads-DGL5SGP3.js.map → ads-I5OBZ5VI.js.map} +0 -0
- /package/dist/{adsets-PSVCPCE3.js.map → adsets-PMQGA6TW.js.map} +0 -0
- /package/dist/{advertisers-AHOWL3YL.js.map → advertisers-EOLL3VFQ.js.map} +0 -0
- /package/dist/{advertisers-7NAPI5ZU.js.map → advertisers-FNKY2PP4.js.map} +0 -0
- /package/dist/{analytics-GFFXCMLV.js.map → analytics-DOAUCF2Y.js.map} +0 -0
- /package/dist/{analytics-7H6NDVUQ.js.map → analytics-MR3T34KN.js.map} +0 -0
- /package/dist/{animate-GTUI7XX4.js.map → animate-EKGVDSWM.js.map} +0 -0
- /package/dist/{approved-E4EZA5RT.js.map → approved-WQL4Z4EB.js.map} +0 -0
- /package/dist/{asset-writes-NDSHY5OT.js.map → asset-writes-A5X2T6LQ.js.map} +0 -0
- /package/dist/{assign-SDPPWP3Q.js.map → assign-UMNHINRA.js.map} +0 -0
- /package/dist/{audience-size-LKDDHKED.js.map → audience-size-Q7DZ6TGM.js.map} +0 -0
- /package/dist/{audiences-UHLVATR6.js.map → audiences-HBJGEGKL.js.map} +0 -0
- /package/dist/{audiences-6L43K2T2.js.map → audiences-RDQZNGPI.js.map} +0 -0
- /package/dist/{audiences-T5LMTT3B.js.map → audiences-TA636UBN.js.map} +0 -0
- /package/dist/{audit-TSZIQTUB.js.map → audit-H3F6FZNE.js.map} +0 -0
- /package/dist/{audit-46DO2HV3.js.map → audit-QMCK76AT.js.map} +0 -0
- /package/dist/{autocomplete-5BSAOAMZ.js.map → autocomplete-DIBJ57VC.js.map} +0 -0
- /package/dist/{avatars-S6RRD7M3.js.map → avatars-UIXRGLPA.js.map} +0 -0
- /package/dist/{bid-pricing-5KUAINH4.js.map → bid-pricing-OMY2F2SB.js.map} +0 -0
- /package/dist/{brand-KFK2MQWW.js.map → brand-WV6CAU3M.js.map} +0 -0
- /package/dist/{businesses-TRFYMZ4I.js.map → businesses-56IUB5X4.js.map} +0 -0
- /package/dist/{campaign-groups-5RPZPDNW.js.map → campaign-groups-PGJIQV4S.js.map} +0 -0
- /package/dist/{campaign-writes-FUIGN5OR.js.map → campaign-writes-MAJ5FGXG.js.map} +0 -0
- /package/dist/{campaign-writes-XMYBEVZF.js.map → campaign-writes-WL3YAEGJ.js.map} +0 -0
- /package/dist/{campaigns-2MTON2IE.js.map → campaigns-5L4ZTGF7.js.map} +0 -0
- /package/dist/{campaigns-JNP3VDZK.js.map → campaigns-EK7EUKZD.js.map} +0 -0
- /package/dist/{campaigns-N2SWSBYT.js.map → campaigns-HCJ3AIDK.js.map} +0 -0
- /package/dist/{campaigns-5A3IE735.js.map → campaigns-NHACWGWS.js.map} +0 -0
- /package/dist/{canvas-CHFNQTLY.js.map → canvas-INL3J7HO.js.map} +0 -0
- /package/dist/{capabilities-2W3SRZ2I.js.map → capabilities-Y33EWDMJ.js.map} +0 -0
- /package/dist/{cards-CXKIVM4D.js.map → cards-IWWKA5WH.js.map} +0 -0
- /package/dist/{catalog-6BER3SF7.js.map → catalog-NSA2FUI2.js.map} +0 -0
- /package/dist/{catalogs-G5NOKL4L.js.map → catalogs-SJMYID7N.js.map} +0 -0
- /package/dist/{changes-AS4RVEAL.js.map → changes-2HOF2HSV.js.map} +0 -0
- /package/dist/{chatgpt-O6EEAYLF.js.map → chatgpt-J6MNVQVT.js.map} +0 -0
- /package/dist/{chats-4JLWMUAC.js.map → chats-4HK6UYD2.js.map} +0 -0
- /package/dist/{chunk-UK4XSLV2.js.map → chunk-2B2JFTWI.js.map} +0 -0
- /package/dist/{chunk-RULW4627.js.map → chunk-2O5CCKV7.js.map} +0 -0
- /package/dist/{chunk-AXLKR3E4.js.map → chunk-3BKESS5W.js.map} +0 -0
- /package/dist/{chunk-FLTAPEVY.js.map → chunk-3VBPJQ7L.js.map} +0 -0
- /package/dist/{chunk-6OZDN2FI.js.map → chunk-3X262BEG.js.map} +0 -0
- /package/dist/{chunk-DGHSXHZR.js.map → chunk-4CYB33V3.js.map} +0 -0
- /package/dist/{chunk-CST52ZME.js.map → chunk-4JB556VC.js.map} +0 -0
- /package/dist/{chunk-H4RHZJ65.js.map → chunk-4QYZJPSM.js.map} +0 -0
- /package/dist/{chunk-H6ASYVQX.js.map → chunk-4WLJYLRL.js.map} +0 -0
- /package/dist/{chunk-V4HS5JRL.js.map → chunk-56ZJO7TM.js.map} +0 -0
- /package/dist/{chunk-AQRBEPZL.js.map → chunk-5LQGW5UF.js.map} +0 -0
- /package/dist/{chunk-HXSYWXLH.js.map → chunk-5U6OL4NN.js.map} +0 -0
- /package/dist/{chunk-YAINUFSC.js.map → chunk-6IL7JFX5.js.map} +0 -0
- /package/dist/{chunk-Q5XUFN2W.js.map → chunk-6LNCKT6S.js.map} +0 -0
- /package/dist/{chunk-B64KJW5C.js.map → chunk-6LUDG5AB.js.map} +0 -0
- /package/dist/{chunk-ZCGM7ZWM.js.map → chunk-6UQV5DOD.js.map} +0 -0
- /package/dist/{chunk-L7I47VGM.js.map → chunk-6WA7QSCN.js.map} +0 -0
- /package/dist/{chunk-BEZEZHQ6.js.map → chunk-7CHPHER2.js.map} +0 -0
- /package/dist/{chunk-RIVQ4PQQ.js.map → chunk-7J7ASYIM.js.map} +0 -0
- /package/dist/{chunk-ZBXV2KOQ.js.map → chunk-7MMTIJO3.js.map} +0 -0
- /package/dist/{chunk-3QPG2D27.js.map → chunk-AA3D7GZF.js.map} +0 -0
- /package/dist/{chunk-Q736UFSD.js.map → chunk-AGL7EWP2.js.map} +0 -0
- /package/dist/{chunk-KGJ6EIX3.js.map → chunk-AHVD6IEI.js.map} +0 -0
- /package/dist/{chunk-3GXHML4V.js.map → chunk-ASJMLTMX.js.map} +0 -0
- /package/dist/{chunk-XA7JN7YE.js.map → chunk-AWENMEFC.js.map} +0 -0
- /package/dist/{chunk-EJ6EED6I.js.map → chunk-BHZLKLK7.js.map} +0 -0
- /package/dist/{chunk-DHF4FXWS.js.map → chunk-BVER7I36.js.map} +0 -0
- /package/dist/{chunk-MTW2NDDD.js.map → chunk-C3RZNVLM.js.map} +0 -0
- /package/dist/{chunk-6AMN346B.js.map → chunk-CA5QBLIZ.js.map} +0 -0
- /package/dist/{chunk-C52Q3L4C.js.map → chunk-CONTVNSN.js.map} +0 -0
- /package/dist/{chunk-2CC4CPDT.js.map → chunk-EE6NZ6NG.js.map} +0 -0
- /package/dist/{chunk-M4KFO256.js.map → chunk-EG6HMBCF.js.map} +0 -0
- /package/dist/{chunk-MKOI6QYM.js.map → chunk-FHLAJYZE.js.map} +0 -0
- /package/dist/{chunk-XA76OGSL.js.map → chunk-FSNQFZ2Z.js.map} +0 -0
- /package/dist/{chunk-DW3H2XQA.js.map → chunk-G67OBCXI.js.map} +0 -0
- /package/dist/{chunk-WTOBG3YL.js.map → chunk-GFYGVIT3.js.map} +0 -0
- /package/dist/{chunk-3KUNRKNV.js.map → chunk-GRNHQWSV.js.map} +0 -0
- /package/dist/{chunk-JAME5NBT.js.map → chunk-GWQSZWHT.js.map} +0 -0
- /package/dist/{chunk-LAMSUL26.js.map → chunk-HBXR26LB.js.map} +0 -0
- /package/dist/{chunk-EONUZOJV.js.map → chunk-HUO5MZ7S.js.map} +0 -0
- /package/dist/{chunk-4INBMXUS.js.map → chunk-HVL22WUU.js.map} +0 -0
- /package/dist/{chunk-AZIXX73C.js.map → chunk-IA5GLVRV.js.map} +0 -0
- /package/dist/{chunk-LLTHDEM2.js.map → chunk-IEPCI2EB.js.map} +0 -0
- /package/dist/{chunk-HQDNDKNR.js.map → chunk-IKSBLQTL.js.map} +0 -0
- /package/dist/{chunk-X5YHMGAT.js.map → chunk-IRLMIKI7.js.map} +0 -0
- /package/dist/{chunk-WYMX3F47.js.map → chunk-IW4MX7OX.js.map} +0 -0
- /package/dist/{chunk-7NBQQOCU.js.map → chunk-J4WOF6WK.js.map} +0 -0
- /package/dist/{chunk-75OGTGC4.js.map → chunk-J63TN3GR.js.map} +0 -0
- /package/dist/{chunk-QRRAMUKV.js.map → chunk-JESSFI7R.js.map} +0 -0
- /package/dist/{chunk-RQHXWPET.js.map → chunk-K4QPBXV7.js.map} +0 -0
- /package/dist/{chunk-YAMKCMAS.js.map → chunk-K5VDDKKF.js.map} +0 -0
- /package/dist/{chunk-WTPID22G.js.map → chunk-KM5K47TW.js.map} +0 -0
- /package/dist/{chunk-EM5R3BYC.js.map → chunk-LGJIJVVH.js.map} +0 -0
- /package/dist/{chunk-XHAGX4J4.js.map → chunk-LHSSIUU4.js.map} +0 -0
- /package/dist/{chunk-EMR5KGNY.js.map → chunk-LQMPA4DY.js.map} +0 -0
- /package/dist/{chunk-Z7ICQKC2.js.map → chunk-M3IXPK6U.js.map} +0 -0
- /package/dist/{chunk-KG5VNPKU.js.map → chunk-MJU5VKX2.js.map} +0 -0
- /package/dist/{chunk-RLLPY62L.js.map → chunk-MRGU3NPN.js.map} +0 -0
- /package/dist/{chunk-ZMNRSTNV.js.map → chunk-MSLFPL77.js.map} +0 -0
- /package/dist/{chunk-L4QEMWNJ.js.map → chunk-NKCWJPMN.js.map} +0 -0
- /package/dist/{chunk-X7USE7IA.js.map → chunk-NT7NCSEB.js.map} +0 -0
- /package/dist/{chunk-MFGUR5OD.js.map → chunk-OADMSHME.js.map} +0 -0
- /package/dist/{chunk-6FQ7CJEX.js.map → chunk-ONGZKI5J.js.map} +0 -0
- /package/dist/{chunk-RRKUXGAU.js.map → chunk-OOZNTJP6.js.map} +0 -0
- /package/dist/{chunk-MIHY534L.js.map → chunk-OP3NHIFH.js.map} +0 -0
- /package/dist/{chunk-5QNW5PCM.js.map → chunk-OU4KWL6B.js.map} +0 -0
- /package/dist/{chunk-M5PZ6QQB.js.map → chunk-PLIGHRIQ.js.map} +0 -0
- /package/dist/{chunk-4AO3LSYM.js.map → chunk-PLROJ3SX.js.map} +0 -0
- /package/dist/{chunk-PR5OPERY.js.map → chunk-PSM3RI4B.js.map} +0 -0
- /package/dist/{chunk-Q3G4ZI2U.js.map → chunk-Q4O7ICAK.js.map} +0 -0
- /package/dist/{chunk-HFIHXIYY.js.map → chunk-Q6XM6ZDB.js.map} +0 -0
- /package/dist/{chunk-NWLK5RPA.js.map → chunk-QHRUCSRI.js.map} +0 -0
- /package/dist/{chunk-IYDESWW4.js.map → chunk-QUDPMIW7.js.map} +0 -0
- /package/dist/{chunk-I3QLWGKS.js.map → chunk-R2JGUOT6.js.map} +0 -0
- /package/dist/{chunk-RGLTITIH.js.map → chunk-R5I4IHJ5.js.map} +0 -0
- /package/dist/{chunk-MSIOGH67.js.map → chunk-RJXO66C4.js.map} +0 -0
- /package/dist/{chunk-CF5I4Q5M.js.map → chunk-RYNN6UUF.js.map} +0 -0
- /package/dist/{chunk-SIRRBWQ2.js.map → chunk-S4V2GOKV.js.map} +0 -0
- /package/dist/{chunk-6EOWBGGW.js.map → chunk-S7D4GTYY.js.map} +0 -0
- /package/dist/{chunk-4HFM5RCP.js.map → chunk-T4RV7XOC.js.map} +0 -0
- /package/dist/{chunk-HPF3USL2.js.map → chunk-TDUAGNSQ.js.map} +0 -0
- /package/dist/{chunk-JLAFNORO.js.map → chunk-TZRWET3S.js.map} +0 -0
- /package/dist/{chunk-XY7W6MQN.js.map → chunk-U5V4CIIG.js.map} +0 -0
- /package/dist/{chunk-DPOUS5DN.js.map → chunk-U625CQ3Y.js.map} +0 -0
- /package/dist/{chunk-UVUY6FLV.js.map → chunk-UDEVIXKX.js.map} +0 -0
- /package/dist/{chunk-LJEJCIHR.js.map → chunk-UUDWZIDC.js.map} +0 -0
- /package/dist/{chunk-6D7WTUF3.js.map → chunk-VAQBBNLD.js.map} +0 -0
- /package/dist/{chunk-BIBXZJZI.js.map → chunk-VCDFBFPT.js.map} +0 -0
- /package/dist/{chunk-MPTNN35I.js.map → chunk-VF3W7CI7.js.map} +0 -0
- /package/dist/{chunk-BMK4F4CU.js.map → chunk-VHOOAQY4.js.map} +0 -0
- /package/dist/{chunk-6MJKVNLL.js.map → chunk-VK2VC6A2.js.map} +0 -0
- /package/dist/{chunk-3WN5GWX4.js.map → chunk-WWPRSJOS.js.map} +0 -0
- /package/dist/{chunk-O5VSYBUA.js.map → chunk-XKYFNMTB.js.map} +0 -0
- /package/dist/{chunk-KJHG2DWS.js.map → chunk-XL42ZEVH.js.map} +0 -0
- /package/dist/{chunk-TCLJRWST.js.map → chunk-XPUQFPIU.js.map} +0 -0
- /package/dist/{chunk-CBVUO7SK.js.map → chunk-XQEHLDGP.js.map} +0 -0
- /package/dist/{chunk-S5S54J2K.js.map → chunk-XQWC223L.js.map} +0 -0
- /package/dist/{chunk-JAK5VDSG.js.map → chunk-XYDHBLZ2.js.map} +0 -0
- /package/dist/{chunk-V7EN5LFS.js.map → chunk-XZO6ONVI.js.map} +0 -0
- /package/dist/{chunk-H25GY4U4.js.map → chunk-YFFQ3HY4.js.map} +0 -0
- /package/dist/{chunk-URGXEDFV.js.map → chunk-YGUGL4ZL.js.map} +0 -0
- /package/dist/{chunk-TLQY4QBW.js.map → chunk-YT3S2XFG.js.map} +0 -0
- /package/dist/{chunk-QGAUDVMR.js.map → chunk-ZPCZ4XDB.js.map} +0 -0
- /package/dist/{cite-WCAOCOO5.js.map → cite-2ZJG3FBV.js.map} +0 -0
- /package/dist/{claim-L4WLCVUL.js.map → claim-IGU5W4CT.js.map} +0 -0
- /package/dist/{client-VCKP6WBR.js.map → client-MSRCSDB7.js.map} +0 -0
- /package/dist/{code-VXOTFGD2.js.map → code-T7Z5JDQ2.js.map} +0 -0
- /package/dist/{companies-HW46BRQG.js.map → companies-HCSBVXCE.js.map} +0 -0
- /package/dist/{company-KCIDE7SL.js.map → company-SSMY4G2T.js.map} +0 -0
- /package/dist/{complete-JXM25FVW.js.map → complete-FQNRXUI5.js.map} +0 -0
- /package/dist/{config-UR45YCIN.js.map → config-XRPKA5QR.js.map} +0 -0
- /package/dist/{connect-7TX7AAM5.js.map → connect-VXEE3QBU.js.map} +0 -0
- /package/dist/{content-EQQIKG5H.js.map → content-2JFP747N.js.map} +0 -0
- /package/dist/{conversation-YIDUB6GL.js.map → conversation-KKJKZIX5.js.map} +0 -0
- /package/dist/{conversion-report-33SG7SHU.js.map → conversion-report-G65UHQRO.js.map} +0 -0
- /package/dist/{conversion-writes-XGGTBML5.js.map → conversion-writes-333V4OVR.js.map} +0 -0
- /package/dist/{conversions-F4OZYUCT.js.map → conversions-7UHCNIAO.js.map} +0 -0
- /package/dist/{conversions-PPP4QK7U.js.map → conversions-L6775Q22.js.map} +0 -0
- /package/dist/{countries-GRCU4IGM.js.map → countries-XJVDM635.js.map} +0 -0
- /package/dist/{create-6EAKNERA.js.map → create-AXWJECPP.js.map} +0 -0
- /package/dist/{create-FDNMIVFX.js.map → create-B24XHUGZ.js.map} +0 -0
- /package/dist/{create-772LZHZR.js.map → create-HJKTD5FN.js.map} +0 -0
- /package/dist/{create-X2QM7GA7.js.map → create-V4NGP5KB.js.map} +0 -0
- /package/dist/{creatives-4EPM3RHG.js.map → creatives-OKFLX67Y.js.map} +0 -0
- /package/dist/{creatives-SNYN4KIM.js.map → creatives-WX6GQ37F.js.map} +0 -0
- /package/dist/{credentials-KZZVBO42.js.map → credentials-4JFUH6FN.js.map} +0 -0
- /package/dist/{crm-M6NXDU5B.js.map → crm-6MLYUEK7.js.map} +0 -0
- /package/dist/{crm-4LZZVT4N.js.map → crm-PUQBWZKE.js.map} +0 -0
- /package/dist/{crop-NE7YX4SS.js.map → crop-V5MSIY5F.js.map} +0 -0
- /package/dist/{currency-HK2ZW2VW.js.map → currency-SCSJ5FW2.js.map} +0 -0
- /package/dist/{custom-conversions-GQTU5E6X.js.map → custom-conversions-GN4JDS5F.js.map} +0 -0
- /package/dist/{customers-V5NT4W7X.js.map → customers-WXD2LTUC.js.map} +0 -0
- /package/dist/{decide-6Q5X3V3F.js.map → decide-PW2NRMRK.js.map} +0 -0
- /package/dist/{delete-YOEI63OT.js.map → delete-EAJN6ZHT.js.map} +0 -0
- /package/dist/{delete-LFZIPQEO.js.map → delete-GDIFIYA2.js.map} +0 -0
- /package/dist/{delete-GQIKNO53.js.map → delete-JQG3ZWQX.js.map} +0 -0
- /package/dist/{delete-SP66F7ZV.js.map → delete-L7CGJ23X.js.map} +0 -0
- /package/dist/{delete-QHDDR66K.js.map → delete-OQREQEGN.js.map} +0 -0
- /package/dist/{delete-EKKOEB3N.js.map → delete-ZR3DVLWU.js.map} +0 -0
- /package/dist/{demographics-CEQ74O74.js.map → demographics-LMRGNO7J.js.map} +0 -0
- /package/dist/{describe-MAGTSOW4.js.map → describe-OHWLLBDE.js.map} +0 -0
- /package/dist/{describe-DJPIUEFE.js.map → describe-YELOXWHY.js.map} +0 -0
- /package/dist/{dimensions-IC2H7V3H.js.map → dimensions-CLLCVVRY.js.map} +0 -0
- /package/dist/{discard-5GDF3TP3.js.map → discard-K2KIIFJQ.js.map} +0 -0
- /package/dist/{discover-PSL2NBJL.js.map → discover-SQJLRS4G.js.map} +0 -0
- /package/dist/{discover-Q5PAOIQQ.js.map → discover-UJMDGDQO.js.map} +0 -0
- /package/dist/{domain-PKOUPHHF.js.map → domain-CJX5JSLS.js.map} +0 -0
- /package/dist/{download-2WNTN7JQ.js.map → download-HFDBP6BO.js.map} +0 -0
- /package/dist/{download-EHDJXBAC.js.map → download-SZ5P3GLV.js.map} +0 -0
- /package/dist/{draft-L2NXCIYT.js.map → draft-7QDE2Z3N.js.map} +0 -0
- /package/dist/{draft-27NMTARB.js.map → draft-ILXHFWTT.js.map} +0 -0
- /package/dist/{draft-RZCTAOI2.js.map → draft-NUFU5YME.js.map} +0 -0
- /package/dist/{draft-UEVBUNKV.js.map → draft-QSTD3DH2.js.map} +0 -0
- /package/dist/{draft-MWYKIZC4.js.map → draft-TV5IH5U4.js.map} +0 -0
- /package/dist/{draft-JESKGZ6O.js.map → draft-WNMHUFAH.js.map} +0 -0
- /package/dist/{env-NZXNMWSD.js.map → env-3256G2OE.js.map} +0 -0
- /package/dist/{experiment-XAYSEYTU.js.map → experiment-5L5USMAL.js.map} +0 -0
- /package/dist/{export-W54UZ62P.js.map → export-YSOM4E3B.js.map} +0 -0
- /package/dist/{extract-6HJXSOZW.js.map → extract-7FYXXEQZ.js.map} +0 -0
- /package/dist/{facets-TBOXGYJT.js.map → facets-2FRELYRC.js.map} +0 -0
- /package/dist/{favorites-Y6CT6NSQ.js.map → favorites-LTG2F6W2.js.map} +0 -0
- /package/dist/{feed-35BRQPTH.js.map → feed-RSBWEI75.js.map} +0 -0
- /package/dist/{feedback-MSMFYAEY.js.map → feedback-PQUM7UBT.js.map} +0 -0
- /package/dist/{fetch-I6P72CDL.js.map → fetch-3PWYTX4R.js.map} +0 -0
- /package/dist/{fetch-LGX7B3IC.js.map → fetch-FLQYW27W.js.map} +0 -0
- /package/dist/{find-SVGRA7IA.js.map → find-SHHDWCPM.js.map} +0 -0
- /package/dist/{fit-RVWPRBNO.js.map → fit-4XCDLF7C.js.map} +0 -0
- /package/dist/{flows-LA6EYMLS.js.map → flows-4ALWJVNF.js.map} +0 -0
- /package/dist/{follow-24QSDNAG.js.map → follow-N4TKU3UM.js.map} +0 -0
- /package/dist/{follow-competitors-AG4E4XFA.js.map → follow-competitors-AHQ57BWS.js.map} +0 -0
- /package/dist/{following-YGM6TBK3.js.map → following-CEYH33DW.js.map} +0 -0
- /package/dist/{fonts-WRC34VSV.js.map → fonts-CYJ5EFR4.js.map} +0 -0
- /package/dist/{forecast-6VHRGBJG.js.map → forecast-SG2VUBZD.js.map} +0 -0
- /package/dist/{funding-WZNGXRLJ.js.map → funding-X7M5WLDX.js.map} +0 -0
- /package/dist/{funnel-U3GQIGND.js.map → funnel-F7DS7PUN.js.map} +0 -0
- /package/dist/{ga4-W3U5YTRT.js.map → ga4-QPBAKGSH.js.map} +0 -0
- /package/dist/{generate-Y4NJEYIH.js.map → generate-LVBI3VDD.js.map} +0 -0
- /package/dist/{get-YWDZYEAC.js.map → get-DMV7KG2F.js.map} +0 -0
- /package/dist/{get-GEUSRD5Y.js.map → get-EA7AX4NW.js.map} +0 -0
- /package/dist/{get-TS2ZJDCQ.js.map → get-EOSJWMWT.js.map} +0 -0
- /package/dist/{get-JIZPYK3Z.js.map → get-HVQHHDW6.js.map} +0 -0
- /package/dist/{get-3MTAVNTP.js.map → get-KQLCVQCK.js.map} +0 -0
- /package/dist/{get-PF3HGECD.js.map → get-NAOMB6Q2.js.map} +0 -0
- /package/dist/{get-5SPNAIUQ.js.map → get-XYJBQFIT.js.map} +0 -0
- /package/dist/{get-AHI247JG.js.map → get-XZ7XPXZE.js.map} +0 -0
- /package/dist/{gif-NP6EDGEE.js.map → gif-XJ26IWAP.js.map} +0 -0
- /package/dist/{google-ZVAIFXQZ.js.map → google-QOKWSPOA.js.map} +0 -0
- /package/dist/{google-ads-6Z7P3SCD.js.map → google-ads-B4FBPQ7O.js.map} +0 -0
- /package/dist/{group-3DT4UYSR.js.map → group-7EYM3PNJ.js.map} +0 -0
- /package/dist/{group-OEKKCFXT.js.map → group-GDTEICRY.js.map} +0 -0
- /package/dist/{gsc-4FEFPFPB.js.map → gsc-KVIAZMF4.js.map} +0 -0
- /package/dist/{history-VKRYKQ4C.js.map → history-22YGILIT.js.map} +0 -0
- /package/dist/{history-4QUV45ZJ.js.map → history-E3JGYADF.js.map} +0 -0
- /package/dist/{history-PD7FCTDD.js.map → history-HKCSYH5L.js.map} +0 -0
- /package/dist/{hubspot-WEFAFKVJ.js.map → hubspot-LEW2RP5D.js.map} +0 -0
- /package/dist/{icon-43UJTGGE.js.map → icon-JLVEYF34.js.map} +0 -0
- /package/dist/{ideas-SMSEXKIA.js.map → ideas-JAIU4GC4.js.map} +0 -0
- /package/dist/{images-KAT4BPYV.js.map → images-ZG6RRAEP.js.map} +0 -0
- /package/dist/{improve-IMXQN6OD.js.map → improve-XSHWCMZS.js.map} +0 -0
- /package/dist/{ingest-IHKTSJ4H.js.map → ingest-GTXBGUNQ.js.map} +0 -0
- /package/dist/{ingest-TOHQ6MZA.js.map → ingest-SX7K6GNE.js.map} +0 -0
- /package/dist/{insights-3IPSEBYW.js.map → insights-IVUUWSQL.js.map} +0 -0
- /package/dist/{insights-BR3456EI.js.map → insights-PJPQB46E.js.map} +0 -0
- /package/dist/{inspect-5MZBPDYS.js.map → inspect-55BXSPJG.js.map} +0 -0
- /package/dist/{inspiration-XZI5KCQW.js.map → inspiration-NBOKHPZ5.js.map} +0 -0
- /package/dist/{intent-ZM4K623V.js.map → intent-KSVTHFFE.js.map} +0 -0
- /package/dist/{job-GOX3KIKG.js.map → job-4VXDCYSG.js.map} +0 -0
- /package/dist/{job-create-F2PQSN3C.js.map → job-create-NZEZDOZT.js.map} +0 -0
- /package/dist/{job-status-3FMA5D7T.js.map → job-status-XI3ENS7D.js.map} +0 -0
- /package/dist/{keep-23ZYMWPG.js.map → keep-UYNOC3JZ.js.map} +0 -0
- /package/dist/{keyword-gap-FAAF2I6V.js.map → keyword-gap-7UVDSID5.js.map} +0 -0
- /package/dist/{keyword-metrics-EXNJRJBY.js.map → keyword-metrics-QFRXZRAQ.js.map} +0 -0
- /package/dist/{keywords-for-site-5LW77QWF.js.map → keywords-for-site-Q4BCJ4PQ.js.map} +0 -0
- /package/dist/{knowledge-7M7DSRF3.js.map → knowledge-LVE3J3AK.js.map} +0 -0
- /package/dist/{landing-ZH4SD3DW.js.map → landing-AJYM5GBY.js.map} +0 -0
- /package/dist/{landings-VNQ4VA2U.js.map → landings-SIN3MTUZ.js.map} +0 -0
- /package/dist/{languages-ZGDTERIQ.js.map → languages-AIASAINW.js.map} +0 -0
- /package/dist/{languages-2X22HXM3.js.map → languages-RDR6EBNJ.js.map} +0 -0
- /package/dist/{launches-L4EUROCJ.js.map → launches-4TVHXAZT.js.map} +0 -0
- /package/dist/{layerize-6QHQMA7Q.js.map → layerize-OLVGZRND.js.map} +0 -0
- /package/dist/{lead-routes-5TPFJEVH.js.map → lead-routes-ZOQDPCR3.js.map} +0 -0
- /package/dist/{leads-736RILZN.js.map → leads-YSDLFBHN.js.map} +0 -0
- /package/dist/{learn-BESXWXEN.js.map → learn-FDQZNIP3.js.map} +0 -0
- /package/dist/{library-MNJC24E4.js.map → library-7CLWRDM3.js.map} +0 -0
- /package/dist/{lighthouse-DJMAXFTD.js.map → lighthouse-3ACQ3MVG.js.map} +0 -0
- /package/dist/{line-item-writes-FA72DHNQ.js.map → line-item-writes-JARN73DV.js.map} +0 -0
- /package/dist/{line-items-XVYE3IYT.js.map → line-items-B5GLDAJ2.js.map} +0 -0
- /package/dist/{link-6FPKFVC3.js.map → link-YAZF34BZ.js.map} +0 -0
- /package/dist/{linkedin-person-TZJ6VEXE.js.map → linkedin-person-XDH7Q3PB.js.map} +0 -0
- /package/dist/{list-537S75BZ.js.map → list-6NYRZXKQ.js.map} +0 -0
- /package/dist/{list-WIXQXNKB.js.map → list-6WISGNQ2.js.map} +0 -0
- /package/dist/{list-Q52FPW3H.js.map → list-6YBIWX44.js.map} +0 -0
- /package/dist/{list-4R5EMKUQ.js.map → list-72JQGWNO.js.map} +0 -0
- /package/dist/{list-ORO4WDF4.js.map → list-FX7OG3OJ.js.map} +0 -0
- /package/dist/{list-2277GCPH.js.map → list-ITPBLMV3.js.map} +0 -0
- /package/dist/{list-XK33NCSC.js.map → list-J43GOBOX.js.map} +0 -0
- /package/dist/{list-V4PSDBLX.js.map → list-K4Z3BOWI.js.map} +0 -0
- /package/dist/{list-MN2FPF3T.js.map → list-ONSYTCX2.js.map} +0 -0
- /package/dist/{locations-A65MFB7Q.js.map → locations-UNSREUBX.js.map} +0 -0
- /package/dist/{locations-WN6B3IJK.js.map → locations-XAC3GME3.js.map} +0 -0
- /package/dist/{log-ABBZLPRU.js.map → log-PPNNFETI.js.map} +0 -0
- /package/dist/{logo-4LSFZ3ZO.js.map → logo-UNVIMA4B.js.map} +0 -0
- /package/dist/{lookup-WIM5WR25.js.map → lookup-L5QG3BWH.js.map} +0 -0
- /package/dist/{map-52P35OKE.js.map → map-QILMIKS7.js.map} +0 -0
- /package/dist/{mcp-PZ3VBIF4.js.map → mcp-GOKFM4PF.js.map} +0 -0
- /package/dist/{media-KKI3KWLR.js.map → media-BN6B75NF.js.map} +0 -0
- /package/dist/{media-34I7UB7Z.js.map → media-YDDWV32Y.js.map} +0 -0
- /package/dist/{media-sources-TT374PLN.js.map → media-sources-HABLVJE3.js.map} +0 -0
- /package/dist/{members-CF6VG6ZW.js.map → members-B4UI6ISY.js.map} +0 -0
- /package/dist/{meme-6NFYFQ7T.js.map → meme-2MERLAVW.js.map} +0 -0
- /package/dist/{meta-2UK7KIE4.js.map → meta-7FJQD44L.js.map} +0 -0
- /package/dist/{metrics-3U3ZO2RF.js.map → metrics-SBKBEZJR.js.map} +0 -0
- /package/dist/{models-VOSJJFO2.js.map → models-ZBLBNNEH.js.map} +0 -0
- /package/dist/{normalize-G75RDSE4.js.map → normalize-5WVEQJXD.js.map} +0 -0
- /package/dist/{normalize-4LZCLMTQ.js.map → normalize-YPQBHWYS.js.map} +0 -0
- /package/dist/{options-6IRL7CL6.js.map → options-BV3TVUCK.js.map} +0 -0
- /package/dist/{organization-WMLLJE66.js.map → organization-4OTGNRHP.js.map} +0 -0
- /package/dist/{output-ELEO2Z6R.js.map → output-FX4KJAO5.js.map} +0 -0
- /package/dist/{page-4X6IBUWG.js.map → page-5KWQ7PM3.js.map} +0 -0
- /package/dist/{pages-7HW5YOZV.js.map → pages-HKTAGXH3.js.map} +0 -0
- /package/dist/{performance-A7CYFBW2.js.map → performance-4MWQVTTA.js.map} +0 -0
- /package/dist/{performance-HYSTXLTS.js.map → performance-TKE7NQF6.js.map} +0 -0
- /package/dist/{pinterest-KA6VFDM4.js.map → pinterest-UDX53CWY.js.map} +0 -0
- /package/dist/{pixels-D5HF24FI.js.map → pixels-BSNCVT77.js.map} +0 -0
- /package/dist/{pixels-U6UA662G.js.map → pixels-TR2PAYWV.js.map} +0 -0
- /package/dist/{plan-XCA6R3HZ.js.map → plan-V57AATQ5.js.map} +0 -0
- /package/dist/{posts-ALGM6ONV.js.map → posts-JHMXNHDV.js.map} +0 -0
- /package/dist/{preview-55TRUF4Q.js.map → preview-VY7UH2SK.js.map} +0 -0
- /package/dist/{preview-76ZP2QA3.js.map → preview-XUG4K4KV.js.map} +0 -0
- /package/dist/{profile-NHUPUCBR.js.map → profile-PV3R3BEG.js.map} +0 -0
- /package/dist/{promoted-tweet-writes-I5G4IDL5.js.map → promoted-tweet-writes-O3S5OKUZ.js.map} +0 -0
- /package/dist/{promoted-tweets-X5XNO7IT.js.map → promoted-tweets-4ZKSEC4I.js.map} +0 -0
- /package/dist/{properties-2ZXA5BPJ.js.map → properties-U2XUD2M6.js.map} +0 -0
- /package/dist/{publish-S2Z4EF4H.js.map → publish-4RAYD7VI.js.map} +0 -0
- /package/dist/{query-SAQADBM2.js.map → query-4C6UQN42.js.map} +0 -0
- /package/dist/{query-63CTX2PH.js.map → query-7FWE7GLV.js.map} +0 -0
- /package/dist/{query-DMWY3TDD.js.map → query-7Y2Y6YFI.js.map} +0 -0
- /package/dist/{questionnaire-WHE42RD4.js.map → questionnaire-3IPJXJT7.js.map} +0 -0
- /package/dist/{read-NESEKULG.js.map → read-WEQLEI7R.js.map} +0 -0
- /package/dist/{reddit-S2L5WDY7.js.map → reddit-2FWCB7XY.js.map} +0 -0
- /package/dist/{refresh-K2YTJSH3.js.map → refresh-SGDB4QOD.js.map} +0 -0
- /package/dist/{refresh-ILDEPU5A.js.map → refresh-WZBVPKWE.js.map} +0 -0
- /package/dist/{release-FX76IIVN.js.map → release-YL3ZII3Z.js.map} +0 -0
- /package/dist/{relevant-pages-KTSODNNW.js.map → relevant-pages-PF3LLUED.js.map} +0 -0
- /package/dist/{remove-NHE4UT7G.js.map → remove-52MSQXSW.js.map} +0 -0
- /package/dist/{remove-LOVWPLDO.js.map → remove-EIV7LJUA.js.map} +0 -0
- /package/dist/{reopen-DXV2Y6Z3.js.map → reopen-CW27MUJH.js.map} +0 -0
- /package/dist/{research-7PGDAKC7.js.map → research-234BOCKM.js.map} +0 -0
- /package/dist/{research-HY5PSUCC.js.map → research-RABLL4HR.js.map} +0 -0
- /package/dist/{reset-Y5VZJRDQ.js.map → reset-5KJDDVJL.js.map} +0 -0
- /package/dist/{reset-MEHUQJA4.js.map → reset-REUL47CB.js.map} +0 -0
- /package/dist/{resolve-FAVABEJW.js.map → resolve-WRDEHLYL.js.map} +0 -0
- /package/dist/{retry-OMJ3C3AX.js.map → retry-2A5HV4SN.js.map} +0 -0
- /package/dist/{retry-5IY4MNDW.js.map → retry-FNT2XVH3.js.map} +0 -0
- /package/dist/{retry-failed-R5HPQ3KQ.js.map → retry-failed-ND7UXYTJ.js.map} +0 -0
- /package/dist/{rules-FYVD2QBB.js.map → rules-2CUG2YG7.js.map} +0 -0
- /package/dist/{run-LJVBH3JS.js.map → run-RKLNKV2U.js.map} +0 -0
- /package/dist/{run-XJBWDWN6.js.map → run-YKGN3GQR.js.map} +0 -0
- /package/dist/{schedule-D7EDEM45.js.map → schedule-774JCRVM.js.map} +0 -0
- /package/dist/{schedule-OX5XHXLH.js.map → schedule-PKKSZ5RX.js.map} +0 -0
- /package/dist/{scheduled-agents-A5ZFQB5X.js.map → scheduled-agents-ZI3EWKAT.js.map} +0 -0
- /package/dist/{schema-NTGHAPR2.js.map → schema-BXNL4LKR.js.map} +0 -0
- /package/dist/{schema-Z43AJOJ4.js.map → schema-GFMVUZL2.js.map} +0 -0
- /package/dist/{scrape-VL2RWSTW.js.map → scrape-KKLE4WAU.js.map} +0 -0
- /package/dist/{screenshot-Y6EEXS3Q.js.map → screenshot-K6XOER6Z.js.map} +0 -0
- /package/dist/{search-TXBYKNQC.js.map → search-43ULIJL3.js.map} +0 -0
- /package/dist/{search-CXC7N5XJ.js.map → search-AXUNJUWY.js.map} +0 -0
- /package/dist/{search-XHSTUBDY.js.map → search-DLLJEYMB.js.map} +0 -0
- /package/dist/{search-L3GTZYRW.js.map → search-LWWTXBB2.js.map} +0 -0
- /package/dist/{search-JEXYEAPQ.js.map → search-VU6GI3U3.js.map} +0 -0
- /package/dist/{search-WCXQBMMM.js.map → search-XO365KES.js.map} +0 -0
- /package/dist/{search-copy-FIPG7OCC.js.map → search-copy-BHNLLCUV.js.map} +0 -0
- /package/dist/{seeds-ADJKURNG.js.map → seeds-6ROVZBFB.js.map} +0 -0
- /package/dist/{sends-RS4LWRAC.js.map → sends-P6OPCYH5.js.map} +0 -0
- /package/dist/{sequences-2RPKDKGQ.js.map → sequences-DP4BHM3E.js.map} +0 -0
- /package/dist/{setup-links-4HCSF55G.js.map → setup-links-T5TJZA3E.js.map} +0 -0
- /package/dist/{shared-4GGUIOF2.js.map → shared-24IPELBM.js.map} +0 -0
- /package/dist/{shopify-GDR5WGHH.js.map → shopify-OQEKI7HC.js.map} +0 -0
- /package/dist/{site-B7LT6KAO.js.map → site-QRLBZPEV.js.map} +0 -0
- /package/dist/{sitemaps-Z6IELTQV.js.map → sitemaps-SWADO4SI.js.map} +0 -0
- /package/dist/{sites-KLAKI2EY.js.map → sites-H3FYJQFO.js.map} +0 -0
- /package/dist/{skills-OJP36EVR.js.map → skills-OYO6Y3DQ.js.map} +0 -0
- /package/dist/{sources-OSUXCLID.js.map → sources-U2WRH6D7.js.map} +0 -0
- /package/dist/{sources-6DPUEROC.js.map → sources-Y2BKZVXA.js.map} +0 -0
- /package/dist/{stats-MIMFX4R7.js.map → stats-TTJHXR3E.js.map} +0 -0
- /package/dist/{status-KIC3P5JV.js.map → status-4BSXND3I.js.map} +0 -0
- /package/dist/{sticker-IREEEN7I.js.map → sticker-CRIAIO75.js.map} +0 -0
- /package/dist/{stock-VWFUFRYV.js.map → stock-TOFKLWSR.js.map} +0 -0
- /package/dist/{studies-YGYAH3JI.js.map → studies-VFNWS6ND.js.map} +0 -0
- /package/dist/{studio-XLC37YGX.js.map → studio-WD364TWB.js.map} +0 -0
- /package/dist/{suggest-5RTISDLI.js.map → suggest-GX4IROQN.js.map} +0 -0
- /package/dist/{sync-OHIXI4I6.js.map → sync-BU7HU3FS.js.map} +0 -0
- /package/dist/{sync-QBW4XH2H.js.map → sync-GQL5JX4U.js.map} +0 -0
- /package/dist/{sync-VCAFAYW4.js.map → sync-VNBBOVBU.js.map} +0 -0
- /package/dist/{sync-definition-4KMJK46H.js.map → sync-definition-EOARPSBS.js.map} +0 -0
- /package/dist/{tag-DSCUKNC3.js.map → tag-SQ5ROLTP.js.map} +0 -0
- /package/dist/{tag-manager-IINALUEJ.js.map → tag-manager-7S7PVYIJ.js.map} +0 -0
- /package/dist/{tags-7RKKCQ4X.js.map → tags-2226Q3VK.js.map} +0 -0
- /package/dist/{tags-4F5UBPYG.js.map → tags-7QIBFIBX.js.map} +0 -0
- /package/dist/{tags-QZJIP4LJ.js.map → tags-BNWKAV3H.js.map} +0 -0
- /package/dist/{tags-CB4MWI3A.js.map → tags-HG5EBHSO.js.map} +0 -0
- /package/dist/{tags-4O5FPEEY.js.map → tags-WTN4EBT5.js.map} +0 -0
- /package/dist/{targeting-constants-54S3FXIF.js.map → targeting-constants-6KZXMRNI.js.map} +0 -0
- /package/dist/{targeting-criteria-65UU7EYD.js.map → targeting-criteria-QSCRW75G.js.map} +0 -0
- /package/dist/{targets-T742OPQI.js.map → targets-3KT3DO6O.js.map} +0 -0
- /package/dist/{terms-OFHNLW6U.js.map → terms-IRLEAMIY.js.map} +0 -0
- /package/dist/{testimonials-HKJJXONO.js.map → testimonials-35FTFNQ5.js.map} +0 -0
- /package/dist/{top-companies-T6AMU4C6.js.map → top-companies-JAWMSK2Q.js.map} +0 -0
- /package/dist/{transcript-DOUYMZAP.js.map → transcript-OIYU7F4E.js.map} +0 -0
- /package/dist/{triggers-EYY4GSUL.js.map → triggers-7QRQFTVM.js.map} +0 -0
- /package/dist/{tweets-TRTXC6O4.js.map → tweets-7XVF7PJO.js.map} +0 -0
- /package/dist/{unfollow-DATOGPLZ.js.map → unfollow-ZCP6D2SC.js.map} +0 -0
- /package/dist/{unlink-JNM4WRZK.js.map → unlink-PYCYTYVN.js.map} +0 -0
- /package/dist/{unstage-QF4JT5YP.js.map → unstage-2OUF6ELM.js.map} +0 -0
- /package/dist/{unstage-LLQCMZ5H.js.map → unstage-YADONHH6.js.map} +0 -0
- /package/dist/{update-SD5YQIJC.js.map → update-DEBDSBDI.js.map} +0 -0
- /package/dist/{update-J4DURR4K.js.map → update-IDUSNDOI.js.map} +0 -0
- /package/dist/{update-6V3RBRIE.js.map → update-NG3HUYZZ.js.map} +0 -0
- /package/dist/{update-J7Y6LZC5.js.map → update-P5IT7AIN.js.map} +0 -0
- /package/dist/{update-MQ4NYIU6.js.map → update-U6NU7OXI.js.map} +0 -0
- /package/dist/{upload-CEIYYPID.js.map → upload-4F2JICEH.js.map} +0 -0
- /package/dist/{upload-7PPMVWVA.js.map → upload-SS64KHDS.js.map} +0 -0
- /package/dist/{upscale-WVJZG76V.js.map → upscale-JNNXDN6X.js.map} +0 -0
- /package/dist/{url-options-6WC2XQKB.js.map → url-options-EDPKAPPP.js.map} +0 -0
- /package/dist/{url-params-OVBIP6UA.js.map → url-params-4G26OEOO.js.map} +0 -0
- /package/dist/{use-6FADOAFZ.js.map → use-TKFP6WVP.js.map} +0 -0
- /package/dist/{variant-RNM36P4J.js.map → variant-3VTKOQUR.js.map} +0 -0
- /package/dist/{videos-GHFCOTT7.js.map → videos-EDTBHLOZ.js.map} +0 -0
- /package/dist/{videos-Z72RXCRB.js.map → videos-JRNJH66J.js.map} +0 -0
- /package/dist/{view-YR6MDLWL.js.map → view-6HX3FYMS.js.map} +0 -0
- /package/dist/{viewer-check-655BZRML.js.map → viewer-check-OBBBAYV5.js.map} +0 -0
- /package/dist/{web-4QN6QB7L.js.map → web-GPUEUIDT.js.map} +0 -0
- /package/dist/{winners-4T5RFQXU.js.map → winners-MEC77MZ4.js.map} +0 -0
- /package/dist/{winning-ads-2J2RIOLR.js.map → winning-ads-2DECFON4.js.map} +0 -0
- /package/dist/{write-commands-UO3OQIHH.js.map → write-commands-D5M5A4YI.js.map} +0 -0
- /package/dist/{write-commands-6D55SB56.js.map → write-commands-LQVERLAQ.js.map} +0 -0
- /package/dist/{x-7KXNCWTJ.js.map → x-4TM5RET4.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/commands/rules/add.ts","../src/engine/creative-rules/admission.ts","../src/engine/creative-rules/compare.ts","../src/engine/creative-rules/write.ts"],"sourcesContent":["/**\n * `baker rules add` and `retire`: a rule a person agreed to, saved for every ad (or every\n * landing, or both) from now on as one file in src/content/creative-rules/ (staged in the Session\n * and published with it), and a rule retired, never deleted. A rule is saved only when it is not one\n * the company already has, contradicts none without the person picking the winner, and, when ads\n * are held to it, catches the version it came from and blocks none the person approved.\n */\nimport { mkdir, readFile, writeFile } from \"node:fs/promises\";\nimport path from \"node:path\";\nimport type { CreativesFeedbackResponse } from \"@baker/api\";\nimport { defineCommand } from \"citty\";\nimport sharp from \"sharp\";\nimport { apiPost } from \"../../client.ts\";\nimport { readAllRules } from \"../../engine/creative-context/index.ts\";\nimport {\n type Admission,\n admissionRefusal,\n admissionTest,\n type ReviewedVersion,\n} from \"../../engine/creative-rules/admission.ts\";\nimport { type Comparison, compareRule, jevPairs } from \"../../engine/creative-rules/compare.ts\";\nimport { parseRuleFile, RULES_DIR } from \"../../engine/creative-rules/read.ts\";\nimport {\n type CreativeRule,\n RULE_APPLIES,\n RULE_FOR,\n RULE_KINDS,\n RULE_STRENGTHS,\n type RuleCheck,\n type RuleScope,\n} from \"../../engine/creative-rules/schema.ts\";\nimport { covers, meetsOn } from \"../../engine/creative-rules/select.ts\";\nimport { ruleFileText, ruleSlug } from \"../../engine/creative-rules/write.ts\";\nimport { reviewAgainstRules } from \"../../engine/nodes/local/lib/rules-review.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { findWorkspaceRoot } from \"../canvas/normalize-paths.ts\";\nimport { fetchRunRecord } from \"../canvas/run-history.ts\";\nimport { holdWorkspaceSpend } from \"../canvas/unbilled-spend.ts\";\nimport { loadCandidate, type SavedCandidate } from \"../creatives/rule-candidate.ts\";\nimport { rulesView } from \"./view.ts\";\n\n/** What the flags say of the rule; each overrides the candidate's. */\nexport type RuleFlags = {\n text?: string;\n strength?: string;\n for?: string;\n applies?: string;\n forbid?: string[];\n require?: string[];\n allow?: string[];\n people?: string;\n kinds?: string[];\n products?: string[];\n platforms?: string[];\n language?: string;\n quote?: string;\n slug?: string;\n run?: string;\n why?: string;\n id?: string;\n};\n\nconst oneOf = <T extends string>(values: readonly T[], value: string | undefined): T | undefined =>\n value && (values as readonly string[]).includes(value) ? (value as T) : undefined;\n\nconst defined = <T extends object>(value: T): T =>\n Object.fromEntries(\n Object.entries(value).filter(([, v]) => v !== undefined && !(Array.isArray(v) && v.length === 0)),\n ) as T;\n\n/** Where the rule holds: the flags over the candidate's. Pure. */\nfunction scopeOf(f: RuleFlags, c: SavedCandidate | undefined): RuleScope {\n return defined<RuleScope>({\n kinds: (f.kinds ?? c?.kinds)?.flatMap((k) => oneOf(RULE_KINDS, k) ?? []),\n products: f.products,\n platforms: f.platforms ?? c?.platforms,\n language: f.language ?? c?.language,\n });\n}\n\n/** What code decides of the rule: the flags over the candidate's. Pure. */\nfunction checkOf(f: RuleFlags, c: SavedCandidate | undefined): RuleCheck {\n const realPeople = f.people === undefined ? c?.people === \"real\" : f.people === \"real\";\n return defined<RuleCheck>({\n forbid: f.forbid ?? c?.forbid,\n require: f.require ?? c?.require,\n allow: f.allow ?? c?.allow,\n people: realPeople ? \"real\" : undefined,\n });\n}\n\n/** What the rule holds for, as it is saved (ads says nothing); null for a value that is none of them. Pure. */\nfunction reachOf(value: string | undefined): Pick<CreativeRule, \"for\"> | null {\n if (value === undefined) return {};\n const reach = oneOf(RULE_FOR, value);\n if (!reach) return null;\n return reach === \"ads\" ? {} : { for: reach };\n}\n\n/** The rule to save, from a drafted candidate and the flags over it; what is missing when there is none. Pure. */\nexport function ruleFromInputs(\n inputs: { candidate?: SavedCandidate; flags?: RuleFlags },\n at: { today: string; taken: readonly string[] },\n): CreativeRule | { error: string } {\n const c = inputs.candidate;\n const f = inputs.flags ?? {};\n const text = (f.text ?? c?.text)?.trim();\n if (!text) return { error: \"--text: the rule, in the person's words (or --candidate <id> from `feedback record`).\" };\n const reach = reachOf(f.for);\n if (!reach) return { error: \"--for: ads, landings or all (what the rule holds for).\" };\n const check = checkOf(f, c);\n const source = defined({\n kind: c ? (\"feedback\" as const) : (\"user\" as const),\n slug: f.slug ?? c?.source.slug,\n runId: f.run ?? c?.source.runId,\n quote: f.quote ?? c?.source.quote,\n date: at.today,\n });\n return {\n id: ruleSlug(f.id ?? text, at.taken),\n origin: \"learned\",\n strength: oneOf(RULE_STRENGTHS, f.strength) ?? c?.strength ?? \"must\",\n ...reach,\n applies: oneOf(RULE_APPLIES, f.applies) ?? c?.applies ?? \"any\",\n scope: scopeOf(f, c),\n ...(Object.keys(check).length > 0 ? { check } : {}),\n text,\n ...(f.why ? { why: f.why } : {}),\n source,\n status: \"active\",\n };\n}\n\n/** One version's finished sizes as review stills, from the run history; null when it has no picture. */\nasync function versionOf(runId: string): Promise<ReviewedVersion | null> {\n const record = await fetchRunRecord(runId).catch(() => null);\n const images = (record?.finalOutputs ?? []).filter((o) => o.kind === \"image\" && o.url);\n const stills = await Promise.all(\n images.map(async (o) => {\n const response = await fetch(o.url as string).catch(() => null);\n if (!response?.ok) return null;\n const bytes = Buffer.from(await response.arrayBuffer());\n return (await sharp(bytes).resize({ width: 1024 }).jpeg({ quality: 85 }).toBuffer()).toString(\"base64\");\n }),\n );\n const kept = images.flatMap((o, i) =>\n stills[i] ? [{ still: stills[i] as string, format: o.label ?? \"image\" }] : [],\n );\n return kept.length > 0 ? { runId, stills: kept.map((k) => k.still), formats: kept.map((k) => k.format) } : null;\n}\n\n/** How many approved versions a rule is tested against: a few, other creatives' first. */\nconst APPROVED_VERSIONS = 3;\n\n/** The company's approved versions to test a rule against, other creatives' first. */\nasync function approvedVersions(except: string | undefined, slug: string | undefined): Promise<ReviewedVersion[]> {\n const feedback = await apiPost<CreativesFeedbackResponse>(\"/api/creatives/feedback\", { full: true }).catch(\n () => null,\n );\n const approved = (feedback?.data.recent ?? []).filter((e) => e.verdict === \"approved\" && e.runId !== except);\n const ordered = [...approved.filter((e) => e.creative !== slug), ...approved.filter((e) => e.creative === slug)];\n const runIds = [...new Set(ordered.map((e) => e.runId))];\n const versions: ReviewedVersion[] = [];\n for (const runId of runIds) {\n if (versions.length === APPROVED_VERSIONS) break;\n const version = await versionOf(runId);\n if (version) versions.push(version);\n }\n return versions;\n}\n\n/** The rule on the version it came from and on the company's approved ones (`admissionTest`). */\nasync function admit(rule: CreativeRule): Promise<Admission> {\n const spent: Parameters<typeof holdWorkspaceSpend>[0][number][] = [];\n const review = (version: ReviewedVersion, rules: CreativeRule[]) =>\n reviewAgainstRules({ ...version, rules, onSpend: (u) => spent.push(u) });\n const [origin, approved] = await Promise.all([\n rule.source.runId ? versionOf(rule.source.runId) : Promise.resolve(null),\n approvedVersions(rule.source.runId, rule.source.slug),\n ]);\n const admission = await admissionTest(rule, origin, approved, review);\n await holdWorkspaceSpend(spent);\n return admission;\n}\n\n/**\n * `rule` against the existing ones, what the decision model cost held for the workspace's next run\n * record: a duplicate or conflict refusal exits right after this, and the calls were still paid.\n */\nexport async function compareHoldingSpend(rule: CreativeRule, existing: readonly CreativeRule[]): Promise<Comparison> {\n const spent: Parameters<typeof holdWorkspaceSpend>[0][number][] = [];\n try {\n return await compareRule(\n rule,\n existing,\n jevPairs((u) => spent.push(u)),\n );\n } finally {\n await holdWorkspaceSpend(spent);\n }\n}\n\n/** A learned rule's file, retired by `by`; null when there is no such file. */\nasync function retireFile(root: string, id: string, by: string | undefined): Promise<CreativeRule | null> {\n const file = path.join(root, RULES_DIR, `${id}.md`);\n const rule = parseRuleFile(id, await readFile(file, \"utf8\").catch(() => \"\"));\n if (!rule) return null;\n const retired: CreativeRule = { ...rule, status: \"retired\", ...(by ? { retiredBy: by } : {}) };\n await writeFile(file, ruleFileText(retired), \"utf8\");\n return retired;\n}\n\nfunction fail(code: string, message: string, fix?: string, extra: Record<string, unknown> = {}): never {\n writeJson({ ok: false, error: { code, message, ...(fix ? { fix } : {}), ...extra } });\n process.exit(1);\n}\n\nconst list = (value: unknown): string[] | undefined =>\n typeof value === \"string\" && value.trim()\n ? value\n .split(\",\")\n .map((s) => s.trim())\n .filter(Boolean)\n : undefined;\nconst text = (value: unknown): string | undefined =>\n typeof value === \"string\" && value.trim() ? value.trim() : undefined;\n\nconst ADD_DESCRIPTION = `Save a rule the person agreed to, for every ad, every landing, or both, from now on: one file in src/content/creative-rules/, published with the Session. Only after they said yes to \"make this a rule for every ad?\" (or landing).\nStart here: baker rules add --candidate rc-1a2b3c4d # a rule \\`feedback record\\` drafted from their words\n baker rules add --text \"No AI-generated people.\" --strength never --applies cast --people real --quote \"<their words>\" --slug <ad> --run <r_…>\n baker rules add --for landings --text \"No prices on landings: they go to the sales call.\" --strength never --applies copy --quote \"<their words>\"\nThe same words as a rule for less (one for ads, now --for all) widen it: that one is retired (data.widens). It is refused when the company already has it where this one would hold (DUPLICATE_RULE), when it contradicts one (RULE_CONFLICT: ask which wins, then --replaces <id>), when it does not catch the version it came from (RULE_MISSES_ITS_AD), or would block versions the person approved (RULE_BLOCKS_APPROVED): ask the person, never save it anyway.`;\n\nconst ADD_ARGS = {\n candidate: {\n type: \"string\",\n description: \"A rule `feedback record` drafted (rc-…): the flags below override its parts\",\n required: false,\n },\n text: {\n type: \"string\",\n description: \"The rule, one sentence, in the person's own language and words\",\n required: false,\n },\n strength: {\n type: \"string\",\n description: `${RULE_STRENGTHS.join(\" | \")}: never and must are checked and block; prefer is a note`,\n required: false,\n },\n for: {\n type: \"string\",\n description: `${RULE_FOR.join(\" | \")}: what it holds for (default ads). landings: every page in src/pages/; all: every ad and page`,\n required: false,\n },\n applies: { type: \"string\", description: `What of the ad it is about: ${RULE_APPLIES.join(\", \")}`, required: false },\n forbid: {\n type: \"string\",\n description: 'Words it bans, comma-separated, only when a word decides it (\"online\")',\n required: false,\n },\n allow: { type: \"string\", description: 'The right phrase that holds a banned word (\"100 % online\")', required: false },\n require: { type: \"string\", description: \"Words every ad must say, comma-separated (rare)\", required: false },\n people: {\n type: \"string\",\n description: \"real: only real people appear (a real person's Avatar, a customer, footage or nobody)\",\n required: false,\n },\n kinds: { type: \"string\", description: \"static,video: only ads of these kinds\", required: false },\n products: { type: \"string\", description: \"Product slugs (a business unit): only ads of these\", required: false },\n platforms: { type: \"string\", description: \"meta,linkedin,…: only ads for these\", required: false },\n language: {\n type: \"string\",\n description: \"The language its words are in (es): its banned words are checked only in ads in it\",\n required: false,\n },\n quote: { type: \"string\", description: \"The person's own words it came from, verbatim\", required: false },\n slug: { type: \"string\", description: \"The creative they said it about\", required: false },\n run: { type: \"string\", description: \"The version they said it about (r_…): the rule must catch it\", required: false },\n why: { type: \"string\", description: \"Why, in a sentence, when the person said\", required: false },\n id: { type: \"string\", description: \"The rule's id (its file name); default: from its words\", required: false },\n replaces: {\n type: \"string\",\n description: \"A rule of the person's it contradicts and wins over: retired, never deleted\",\n required: false,\n },\n} as const;\n\nregisterSchema({ command: \"rules.add\", description: ADD_DESCRIPTION, args: ADD_ARGS });\n\n/**\n * What to do about a BRAND.md rule the new one repeats or contradicts. The rule a person taught lives\n * in its own file only: a copy in BRAND.md would stay in force after it is retired. Pure.\n */\nexport function brandMdHint(declared: Pick<CreativeRule, \"text\">, relation: \"same\" | \"conflict\"): string {\n return relation === \"same\"\n ? `BRAND.md states this too (\"${declared.text}\"): now the person confirmed it, every finished ad is checked against it.`\n : `BRAND.md says otherwise (\"${declared.text}\"): tell the person, and change only that line of BRAND.md (/brand-build) so it no longer says otherwise; never write the rule itself into BRAND.md, or retiring it would leave it in force.`;\n}\n\n/** What the agent says and runs once a rule is saved: who it now holds, and the check for what breaks it. Pure. */\nexport function savedHint(rule: Pick<CreativeRule, \"for\">, admission: Pick<Admission, \"origin\">): string {\n if (rule.for === \"landings\") {\n return \"Saved for every landing from now on: an edit to a page shows it. Tell the person in one line, then run `baker rules check --for landings`: which pages already break it.\";\n }\n const untested =\n admission.origin === \"untested\"\n ? \" (not tested on a version: nothing a picture shows decides it, or the version had no picture)\"\n : \"\";\n const check =\n rule.for === \"all\"\n ? \"`baker rules check` and `baker rules check --for landings`: which ads and pages already made break it\"\n : \"`baker rules check`: which ads already made break it\";\n return `Saved for every ad${rule.for === \"all\" ? \" and every landing\" : \"\"} from now on${untested}. Tell the person in one line, then run ${check}.`;\n}\n\n/**\n * The taught rules saying the same as `rule`: the ones already holding wherever it would (a\n * duplicate), and the narrower ones it widens (one only for ads, said again for all), which it\n * retires. Pure.\n */\nexport function sameTaught(\n rule: CreativeRule,\n same: readonly CreativeRule[],\n): { repeats: CreativeRule[]; widens: CreativeRule[] } {\n const taught = same.filter((r) => r.origin === \"learned\");\n return { repeats: taught.filter((r) => covers(r, rule)), widens: taught.filter((r) => !covers(r, rule)) };\n}\n\n/** A rule only for landings has no ad version to catch or approved ad to spare. */\nconst admitted = (rule: CreativeRule): Promise<Admission> =>\n rule.for === \"landings\"\n ? Promise.resolve({ origin: \"untested\", approved: { checked: 0, blocked: [] } })\n : admit(rule);\n\nexport const rulesAddCommand = defineCommand({\n meta: { name: \"add\", description: ADD_DESCRIPTION },\n args: ADD_ARGS,\n async run({ args }) {\n const root = findWorkspaceRoot(process.cwd()) ?? process.cwd();\n const cacheDir = path.join(root, \"canvas\", \".cache\");\n const candidateId = text(args.candidate);\n const candidate = candidateId ? await loadCandidate(cacheDir, candidateId) : undefined;\n if (candidateId && !candidate) {\n fail(\n \"VALIDATION_ERROR\",\n `No drafted rule ${candidateId} here.`,\n \"Use the id `feedback record` printed in this chat, or pass --text.\",\n );\n }\n const all = await readAllRules(root);\n const rule = ruleFromInputs(\n {\n ...(candidate ? { candidate } : {}),\n flags: {\n text: text(args.text),\n strength: text(args.strength),\n for: text(args.for),\n applies: text(args.applies),\n forbid: list(args.forbid),\n allow: list(args.allow),\n require: list(args.require),\n people: text(args.people),\n kinds: list(args.kinds),\n products: list(args.products),\n platforms: list(args.platforms),\n language: text(args.language),\n quote: text(args.quote),\n slug: text(args.slug),\n run: text(args.run),\n why: text(args.why),\n id: text(args.id),\n },\n },\n { today: new Date().toISOString().slice(0, 10), taken: all.map((r) => r.id) },\n );\n if (\"error\" in rule) fail(\"VALIDATION_ERROR\", rule.error);\n const replaces = text(args.replaces);\n const compared = await compareHoldingSpend(\n rule,\n all.filter((r) => meetsOn(rule, r)),\n );\n const { repeats, widens } = sameTaught(rule, compared.same);\n if (repeats.length > 0) {\n fail(\n \"DUPLICATE_RULE\",\n `The company already has this rule: ${repeats.map((r) => `${r.id} (\"${r.text}\")`).join(\"; \")}.`,\n \"Nothing to add. If the person wants it worded otherwise, retire that one and add this.\",\n );\n }\n const widening = new Set(widens.map((r) => r.id));\n const conflicts = compared.conflicts.filter(\n (r) => r.origin === \"learned\" && r.id !== replaces && !widening.has(r.id),\n );\n if (conflicts.length > 0) {\n fail(\n \"RULE_CONFLICT\",\n `It contradicts ${conflicts.map((r) => `${r.id} (\"${r.text}\")`).join(\"; \")}.`,\n \"Ask the person which one wins. This one: add it again with --replaces <id> (that rule is retired, never deleted). The other: do not add this one.\",\n );\n }\n const admission = await admitted(rule);\n const refusal = admissionRefusal(rule, admission);\n if (refusal) fail(refusal.code, refusal.message, refusal.fix, { admission });\n await mkdir(path.join(root, RULES_DIR), { recursive: true });\n const file = path.join(RULES_DIR, `${rule.id}.md`);\n await writeFile(path.join(root, file), ruleFileText(rule), \"utf8\");\n const retired = replaces ? await retireFile(root, replaces, rule.id) : null;\n const widened = (await Promise.all(widens.map((r) => retireFile(root, r.id, rule.id)))).flatMap((r) =>\n r ? [r.id] : [],\n );\n const declared = [...compared.same, ...compared.conflicts].filter((r) => r.origin === \"declared\");\n writeJson({\n ok: true,\n data: {\n rule: rulesView([rule], { full: true })[0],\n file,\n admission,\n ...(retired ? { retired: retired.id } : {}),\n ...(widened.length > 0 ? { widens: widened } : {}),\n },\n hints: [\n savedHint(rule, admission),\n ...(widened.length > 0\n ? [\n `It widens ${widened.join(\", \")} (the same rule, for less): retired, never deleted; this one holds there now.`,\n ]\n : []),\n ...(compared.judged\n ? []\n : [\n \"Whether it repeats or contradicts another rule could not be read (the decision model did not answer): look at `baker rules list`.\",\n ]),\n ...declared.map((r) => brandMdHint(r, compared.same.includes(r) ? \"same\" : \"conflict\")),\n ],\n });\n },\n});\n\nconst RETIRE_DESCRIPTION = `Retire a rule a person taught, when they say it no longer holds or another replaces it: it stays in its file as retired, never deleted, and no ad or landing is held to it.\nStart here: baker rules retire cien-por-cien-online [--by <rule id>|BRAND.md]\nA rule of BRAND.md is changed in BRAND.md (/brand-build).`;\n\nconst RETIRE_ARGS = {\n id: { type: \"positional\", description: \"The rule's id (`baker rules list`)\", required: true },\n by: { type: \"string\", description: \"What replaces it: another rule's id, or BRAND.md\", required: false },\n} as const;\n\nregisterSchema({ command: \"rules.retire\", description: RETIRE_DESCRIPTION, args: RETIRE_ARGS });\n\nexport const rulesRetireCommand = defineCommand({\n meta: { name: \"retire\", description: RETIRE_DESCRIPTION },\n args: RETIRE_ARGS,\n async run({ args }) {\n const root = findWorkspaceRoot(process.cwd()) ?? process.cwd();\n const id = String(args.id);\n if (/^brand-[0-9a-f]{8}$/.test(id)) {\n fail(\"VALIDATION_ERROR\", `${id} is a rule of BRAND.md.`, \"Change it in BRAND.md with /brand-build.\");\n }\n const retired = await retireFile(root, id, text(args.by));\n if (!retired) fail(\"NOT_FOUND\", `No rule ${id} in ${RULES_DIR}.`, \"See `baker rules list --all`.\");\n writeJson({\n ok: true,\n data: { rule: rulesView([retired], { full: true })[0] },\n hints: [\"Retired: no ad or landing is held to it from now on.\"],\n });\n },\n});\n","/**\n * A rule's admission test, before it is saved for every ad: it must catch the version it came from\n * (the rejected one), and stay silent on versions of the company the person approved. A rule that\n * misses its own ad is worded for something else; one that would block approved ads is stricter\n * than the person. Either way the person is asked again, never the rule saved as drafted. Only the\n * rules the finished-ad review holds an ad to by eye are tested (`reviewedRules`); a voice or a\n * sound needs the video playing, and is saved untested, saying so.\n */\nimport type { RenderFinding } from \"../nodes/local/lib/render-review.ts\";\nimport { reviewedRules } from \"../nodes/local/lib/rules-findings.ts\";\nimport type { CreativeRule } from \"./schema.ts\";\n\n/** One version as the rules review looks at it: its sizes as base64 JPEG, in `formats` order. */\nexport type ReviewedVersion = { runId: string; stills: string[]; formats: string[] };\n\n/** The rules review on one version (`reviewAgainstRules`); null when nobody looked. */\nexport type ReviewVersion = (version: ReviewedVersion, rules: CreativeRule[]) => Promise<RenderFinding[] | null>;\n\nexport type Admission = {\n origin: \"caught\" | \"missed\" | \"untested\";\n approved: { checked: number; blocked: Array<{ runId: string; what: string }> };\n};\n\n/** The rule's blocking findings on a version; null when nobody looked. */\nasync function breaks(\n rule: CreativeRule,\n version: ReviewedVersion,\n review: ReviewVersion,\n): Promise<RenderFinding[] | null> {\n const found = await review(version, [rule]).catch(() => null);\n return found === null ? null : found.filter((f) => f.kind?.rule === rule.id && f.severity === \"blocking\");\n}\n\n/** The rule on the version it came from and on up to a few the person approved. */\nexport async function admissionTest(\n rule: CreativeRule,\n origin: ReviewedVersion | null,\n approved: readonly ReviewedVersion[],\n review: ReviewVersion,\n): Promise<Admission> {\n const untested: Admission = { origin: \"untested\", approved: { checked: 0, blocked: [] } };\n // A prefer never blocks: it is tested as if it did, since the person reads it the same.\n const tested = { ...rule, strength: rule.strength === \"prefer\" ? (\"must\" as const) : rule.strength };\n if (reviewedRules([tested]).length === 0) return untested;\n const own = origin ? await breaks(tested, origin, review) : null;\n const results = await Promise.all(\n approved.map(async (v) => ({ runId: v.runId, found: await breaks(tested, v, review) })),\n );\n const looked = results.filter((r) => r.found !== null);\n return {\n origin: own === null ? \"untested\" : own.length > 0 ? \"caught\" : \"missed\",\n approved: {\n checked: looked.length,\n blocked: looked.flatMap((r) =>\n r.found?.[0] ? [{ runId: r.runId, what: r.found[0].what.replace(/^.*?\\): /, \"\") }] : [],\n ),\n },\n };\n}\n\n/** Why the rule is not saved as drafted, and what to ask the person; null when it passed or was not tested. Pure. */\nexport function admissionRefusal(\n rule: CreativeRule,\n admission: Admission,\n): { code: \"RULE_MISSES_ITS_AD\" | \"RULE_BLOCKS_APPROVED\"; message: string; fix: string } | null {\n if (admission.origin === \"missed\") {\n return {\n code: \"RULE_MISSES_ITS_AD\",\n message: `Not saved: \"${rule.text}\" does not catch the version it came from (${rule.source.runId ?? \"the rejected one\"}), so it is worded for something else.`,\n fix: \"Reword it to name exactly what was wrong on that version, in the person's words, and add it again; or ask the person what the rule is.\",\n };\n }\n const blocked = admission.approved.blocked;\n if (blocked.length > 0) {\n return {\n code: \"RULE_BLOCKS_APPROVED\",\n message: `Not saved: \"${rule.text}\" would block ${blocked.length} version${blocked.length === 1 ? \"\" : \"s\"} the person approved: ${blocked.map((b) => `${b.runId} (${b.what})`).join(\"; \")}.`,\n fix: \"Ask the person whether those approved ads break it. If they do not, reword the rule so it names only what they reject, and add it again.\",\n };\n }\n return null;\n}\n","/**\n * A new rule against the ones the company already has, read by the decision model in any language:\n * which say the same (a duplicate), and which it contradicts (an ad could not keep both). `rules add`\n * refuses a duplicate of a rule a person taught, and a contradiction until the person picks the winner;\n * the loser is retired, never deleted.\n */\nimport { askJev } from \"../nodes/local/lib/jev.ts\";\nimport type { ReviewUsage } from \"../nodes/local/lib/render-review.ts\";\nimport type { CreativeRule } from \"./schema.ts\";\n\nconst SAME =\n \"Do rules `a` and `b` ask the same thing of an ad, in any words or language, so that an ad keeping one keeps the other?\";\nconst CONFLICT =\n \"Do rules `a` and `b` contradict each other, so that no ad could keep both: following one breaks the other?\";\n\n/** Above these, two rules are the same or contradict: refusing a rule by mistake costs the person a rule. */\nconst SAME_BAND = 0.6;\nconst CONFLICT_BAND = 0.6;\n\nexport type RulePair = { a: string; b: string; question: \"same\" | \"conflict\" };\n\n/** Each pair's probability of yes, in order; null when the decision model did not answer. */\nexport type AskPairs = (pairs: readonly RulePair[]) => Promise<number[] | null>;\n\n/** The most questions one request carries. */\nconst BATCH = 40;\n\n/** The decision model asked about each pair, a batch at a time. */\nexport function jevPairs(onSpend?: (usage: ReviewUsage) => void): AskPairs {\n return async (pairs) => {\n const answers: number[] = [];\n for (let i = 0; i < pairs.length; i += BATCH) {\n const batch = pairs.slice(i, i + BATCH);\n const got = await askJev(\n batch.map((p) => ({ instructions: { a: p.a, b: p.b, question: p.question === \"same\" ? SAME : CONFLICT } })),\n onSpend,\n );\n if (!got) return null;\n answers.push(...got);\n }\n return answers;\n };\n}\n\nexport type Comparison = { same: CreativeRule[]; conflicts: CreativeRule[]; judged: boolean };\n\n/** The active rules `candidate` duplicates and the ones it contradicts. */\nexport async function compareRule(\n candidate: CreativeRule,\n existing: readonly CreativeRule[],\n ask: AskPairs,\n): Promise<Comparison> {\n const active = existing.filter((r) => r.status === \"active\" && r.id !== candidate.id);\n if (active.length === 0) return { same: [], conflicts: [], judged: true };\n const pairs = active.flatMap((r): RulePair[] => [\n { a: candidate.text, b: r.text, question: \"same\" },\n { a: candidate.text, b: r.text, question: \"conflict\" },\n ]);\n const answers = await ask(pairs).catch(() => null);\n if (!answers || answers.length !== pairs.length) return { same: [], conflicts: [], judged: false };\n return {\n same: active.filter((_, i) => (answers[2 * i] ?? 0) >= SAME_BAND),\n conflicts: active.filter((_, i) => (answers[2 * i + 1] ?? 0) >= CONFLICT_BAND),\n judged: true,\n };\n}\n","/**\n * A rule a person agreed to, as the file it lives in (`src/content/creative-rules/<slug>.md`): its\n * frontmatter (what decides it, where it came from) and its words, then why. The reader\n * (`parseRuleFile`) reads it back the same. Pure.\n */\nimport { stringify as stringifyYaml } from \"yaml\";\nimport type { CreativeRule } from \"./schema.ts\";\n\n/** The rule's file: frontmatter, its words, then why. Pure. */\nexport function ruleFileText(rule: CreativeRule): string {\n const frontmatter = {\n strength: rule.strength,\n ...(rule.for ? { for: rule.for } : {}),\n applies: rule.applies,\n ...(Object.keys(rule.scope).length > 0 ? { scope: rule.scope } : {}),\n ...(rule.check && Object.keys(rule.check).length > 0 ? { check: rule.check } : {}),\n source: rule.source,\n status: rule.status,\n ...(rule.retiredBy ? { retiredBy: rule.retiredBy } : {}),\n };\n // Every string quoted: a date stays a date's words, and a quote with a colon stays one value.\n const yaml = stringifyYaml(frontmatter, { defaultStringType: \"QUOTE_DOUBLE\", defaultKeyType: \"PLAIN\", lineWidth: 0 });\n return `---\\n${yaml}---\\n${rule.text.trim()}\\n${rule.why ? `\\nWhy: ${rule.why.trim()}\\n` : \"\"}`;\n}\n\nconst SLUG_WORDS = 8;\n\n/** A file name from the rule's words, not one of `taken`. Pure. */\nexport function ruleSlug(text: string, taken: readonly string[]): string {\n const base =\n text\n .normalize(\"NFKD\")\n .replace(/\\p{M}/gu, \"\")\n .toLowerCase()\n .replace(/[^a-z0-9]+/g, \" \")\n .trim()\n .split(/\\s+/)\n .filter(Boolean)\n .slice(0, SLUG_WORDS)\n .join(\"-\") || \"rule\";\n if (!taken.includes(base)) return base;\n let n = 2;\n while (taken.includes(`${base}-${n}`)) n++;\n return `${base}-${n}`;\n}\n"],"mappings":"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","names":["text","text"]}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import {
|
|
2
|
+
compactSource,
|
|
3
|
+
reportError,
|
|
4
|
+
reportInvalid
|
|
5
|
+
} from "./chunk-6WA7QSCN.js";
|
|
6
|
+
import {
|
|
7
|
+
testimonialSourceRefreshIntervalSchema,
|
|
8
|
+
testimonialSourceTypeSchema,
|
|
9
|
+
testimonialSourcesAddRequestSchema
|
|
10
|
+
} from "./chunk-YOHGEF2N.js";
|
|
11
|
+
import "./chunk-QV6AST5T.js";
|
|
12
|
+
import "./chunk-WCU362Z6.js";
|
|
13
|
+
import "./chunk-GIWHHCD6.js";
|
|
14
|
+
import "./chunk-SOPVIIUW.js";
|
|
15
|
+
import "./chunk-G4FG5EQO.js";
|
|
16
|
+
import "./chunk-R7XDGNZD.js";
|
|
17
|
+
import "./chunk-IMS53EQU.js";
|
|
18
|
+
import {
|
|
19
|
+
apiPost
|
|
20
|
+
} from "./chunk-UUDWZIDC.js";
|
|
21
|
+
import "./chunk-S4V2GOKV.js";
|
|
22
|
+
import "./chunk-6LUDG5AB.js";
|
|
23
|
+
import {
|
|
24
|
+
registerSchema,
|
|
25
|
+
writeJson
|
|
26
|
+
} from "./chunk-6V4UAC5I.js";
|
|
27
|
+
import "./chunk-YQSBHWOI.js";
|
|
28
|
+
|
|
29
|
+
// src/commands/testimonials/sources/add.ts
|
|
30
|
+
import { defineCommand } from "citty";
|
|
31
|
+
var SITES = testimonialSourceTypeSchema.options.join("|");
|
|
32
|
+
registerSchema({
|
|
33
|
+
command: "testimonials.sources.add",
|
|
34
|
+
description: "Add a review page as a testimonial source \u2014 Google Maps, Trustpilot, Yelp, Tripadvisor, G2, Capterra, Amazon, App Store or Google Play. Pass the page's link (it names its own site), or a business name for Google Maps. Its reviews (up to 700) are imported, tagged and made searchable in the background over the next minutes. Each imported review costs a little, so add only the client's own listings the user asked for. Applies immediately and shows on the chat as an already-applied change. Adding a listing that is already a source is a no-op that starts a fresh import.",
|
|
35
|
+
args: {
|
|
36
|
+
input: {
|
|
37
|
+
type: "string",
|
|
38
|
+
description: "The review page's link, or a business name (Google Maps only)",
|
|
39
|
+
required: true
|
|
40
|
+
},
|
|
41
|
+
platform: {
|
|
42
|
+
type: "string",
|
|
43
|
+
description: `Only to force a site: ${SITES}. A bare domain with trustpilot is that company's Trustpilot page.`,
|
|
44
|
+
required: false
|
|
45
|
+
},
|
|
46
|
+
every: {
|
|
47
|
+
type: "string",
|
|
48
|
+
description: `Auto-sync cadence: ${testimonialSourceRefreshIntervalSchema.options.join("|")} (default never)`,
|
|
49
|
+
required: false
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
function addSourceHints(input, { created, source }) {
|
|
54
|
+
const hints = [
|
|
55
|
+
created ? `Added ${source.label} on ${source.platformLabel}. Its reviews are importing in the background \u2014 they become searchable with \`baker testimonials search\` as each one is analysed, usually within a few minutes. Don't wait on them in this turn; check with \`baker testimonials sources list\`.` : `${source.label} on ${source.platformLabel} was already a source; a fresh import was started if one wasn't running.`
|
|
56
|
+
];
|
|
57
|
+
if (created && source.platform === "google" && !/^https?:\/\/|\.[a-z]{2,}\//i.test(input.trim())) {
|
|
58
|
+
hints.push(
|
|
59
|
+
`Matched the name to ${source.label} on Google Maps (${source.pageUrl ?? "no link"}). If that is not the client's business, run \`baker testimonials sources remove ${source.id}\` at once and add the listing's Google Maps link instead.`
|
|
60
|
+
);
|
|
61
|
+
}
|
|
62
|
+
if (source.refreshInterval === "never") {
|
|
63
|
+
hints.push(
|
|
64
|
+
`Auto-sync is off. If the user wants new reviews to keep arriving: \`baker testimonials sources schedule ${source.id} --every monthly\`.`
|
|
65
|
+
);
|
|
66
|
+
}
|
|
67
|
+
return hints;
|
|
68
|
+
}
|
|
69
|
+
var addCommand = defineCommand({
|
|
70
|
+
meta: {
|
|
71
|
+
name: "add",
|
|
72
|
+
description: `Add a review page as a testimonial source. Start here with the page's link; for Google Maps a business name also works.
|
|
73
|
+
|
|
74
|
+
Examples:
|
|
75
|
+
baker testimonials sources add https://www.yelp.com/biz/acme-bakery-madrid
|
|
76
|
+
baker testimonials sources add https://www.g2.com/products/acme --every monthly
|
|
77
|
+
baker testimonials sources add "Acme Bakery Madrid" # Google Maps, found by name
|
|
78
|
+
baker testimonials sources add acme.com --platform trustpilot`
|
|
79
|
+
},
|
|
80
|
+
args: {
|
|
81
|
+
input: { type: "positional", description: "Review page link, or a business name for Google Maps", required: true },
|
|
82
|
+
platform: { type: "string", description: `Force a site: ${SITES}`, required: false },
|
|
83
|
+
every: { type: "string", description: "Auto-sync: never|daily|weekly|monthly", required: false }
|
|
84
|
+
},
|
|
85
|
+
run: async ({ args }) => {
|
|
86
|
+
const parsed = testimonialSourcesAddRequestSchema.safeParse({
|
|
87
|
+
input: String(args.input ?? ""),
|
|
88
|
+
platform: args.platform ? String(args.platform).toLowerCase().replace(/[\s-]/g, "_") : void 0,
|
|
89
|
+
every: args.every ? String(args.every).toLowerCase() : void 0
|
|
90
|
+
});
|
|
91
|
+
if (!parsed.success) reportInvalid(parsed.error.issues[0]);
|
|
92
|
+
try {
|
|
93
|
+
const data = await apiPost("/api/testimonials/sources/add", parsed.data, {
|
|
94
|
+
timeoutMs: 12e4
|
|
95
|
+
});
|
|
96
|
+
const hints = addSourceHints(parsed.data.input, data);
|
|
97
|
+
writeJson({ ok: true, data: { created: data.created, source: compactSource(data.source) }, hints });
|
|
98
|
+
} catch (err) {
|
|
99
|
+
reportError(err);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
export {
|
|
104
|
+
addCommand,
|
|
105
|
+
addSourceHints
|
|
106
|
+
};
|
|
107
|
+
//# sourceMappingURL=add-VDH2VCXR.js.map
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import {
|
|
2
|
+
PLATFORM_NAMES,
|
|
3
|
+
reportError,
|
|
4
|
+
splitList
|
|
5
|
+
} from "./chunk-6LNCKT6S.js";
|
|
6
|
+
import {
|
|
7
|
+
apiPost
|
|
8
|
+
} from "./chunk-UUDWZIDC.js";
|
|
9
|
+
import "./chunk-S4V2GOKV.js";
|
|
10
|
+
import "./chunk-6LUDG5AB.js";
|
|
11
|
+
import {
|
|
12
|
+
BRAND_ACCOUNTS_MAX,
|
|
13
|
+
registerSchema,
|
|
14
|
+
writeJson
|
|
15
|
+
} from "./chunk-6V4UAC5I.js";
|
|
16
|
+
import "./chunk-YQSBHWOI.js";
|
|
17
|
+
|
|
18
|
+
// src/commands/winning-ads/add-accounts.ts
|
|
19
|
+
import { defineCommand } from "citty";
|
|
20
|
+
var ADD_TIMEOUT_MS = 12e4;
|
|
21
|
+
var named = (accounts) => accounts.map((a) => `${a.name} (${PLATFORM_NAMES[a.platform]})`).join(", ");
|
|
22
|
+
function addAccountsHints(data) {
|
|
23
|
+
const hints = [];
|
|
24
|
+
if (data.added.length > 0) {
|
|
25
|
+
hints.push(
|
|
26
|
+
`Now tracking ${named(data.added)} \u2014 its ads arrive over the next minutes; check \`baker winning-ads following\`.`
|
|
27
|
+
);
|
|
28
|
+
}
|
|
29
|
+
if (data.already_tracked.length > 0) {
|
|
30
|
+
hints.push(`Already tracked under this brand: ${named(data.already_tracked)}.`);
|
|
31
|
+
}
|
|
32
|
+
for (const failure of data.failed) {
|
|
33
|
+
hints.push(`Not added: "${failure.input}" \u2014 ${failure.error}`);
|
|
34
|
+
}
|
|
35
|
+
return hints;
|
|
36
|
+
}
|
|
37
|
+
registerSchema({
|
|
38
|
+
command: "winning-ads.add-accounts",
|
|
39
|
+
description: "Track more accounts under a brand you already follow \u2014 another country's or language's Facebook page, a second LinkedIn company, another Google Ads entity. Pass the brand's advertiser id and one or more links (comma-separated): profile or ad-library links, Google advertiser ids (AR\u2026), or a website. `follow` returns ready-made calls for the look-alike accounts it found.",
|
|
40
|
+
args: {
|
|
41
|
+
advertiser: { type: "string", description: "Advertiser id of a followed brand (from `following`)", required: true },
|
|
42
|
+
inputs: {
|
|
43
|
+
type: "string",
|
|
44
|
+
description: `Comma-separated links, advertiser ids or websites \u2014 up to ${BRAND_ACCOUNTS_MAX}`,
|
|
45
|
+
required: true
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
var addAccountsCommand = defineCommand({
|
|
50
|
+
meta: {
|
|
51
|
+
name: "add-accounts",
|
|
52
|
+
description: `Add more of a followed brand's accounts (another market's Facebook page, a second LinkedIn company). Example: baker winning-ads add-accounts adv_123 "https://www.facebook.com/barkibu.it,AR01614014350098432001"`
|
|
53
|
+
},
|
|
54
|
+
args: {
|
|
55
|
+
advertiser: { type: "positional", description: "Advertiser id of a followed brand", required: true },
|
|
56
|
+
inputs: {
|
|
57
|
+
type: "positional",
|
|
58
|
+
description: "Comma-separated links, advertiser ids or websites",
|
|
59
|
+
required: true
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
run: async ({ args }) => {
|
|
63
|
+
try {
|
|
64
|
+
const inputs = [...new Set(splitList(String(args.inputs ?? "")))];
|
|
65
|
+
if (inputs.length === 0 || inputs.length > BRAND_ACCOUNTS_MAX) {
|
|
66
|
+
writeJson({
|
|
67
|
+
ok: false,
|
|
68
|
+
error: {
|
|
69
|
+
code: "VALIDATION_ERROR",
|
|
70
|
+
message: `Pass between 1 and ${BRAND_ACCOUNTS_MAX} comma-separated links.`
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
process.exit(1);
|
|
74
|
+
}
|
|
75
|
+
const data = await apiPost(
|
|
76
|
+
"/api/ad-library/accounts/add",
|
|
77
|
+
{ advertiser_id: String(args.advertiser), inputs },
|
|
78
|
+
{ timeoutMs: ADD_TIMEOUT_MS }
|
|
79
|
+
);
|
|
80
|
+
const hints = addAccountsHints(data);
|
|
81
|
+
writeJson({ ok: true, data, hints: hints.length > 0 ? hints : void 0 });
|
|
82
|
+
} catch (err) {
|
|
83
|
+
reportError(err);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
export {
|
|
88
|
+
addAccountsCommand,
|
|
89
|
+
addAccountsHints
|
|
90
|
+
};
|
|
91
|
+
//# sourceMappingURL=add-accounts-6JAOSCXK.js.map
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import {
|
|
2
|
+
adFieldPlan,
|
|
3
|
+
adRows
|
|
4
|
+
} from "./chunk-RJXO66C4.js";
|
|
5
|
+
import {
|
|
6
|
+
reportError
|
|
7
|
+
} from "./chunk-6LNCKT6S.js";
|
|
8
|
+
import {
|
|
9
|
+
apiGet
|
|
10
|
+
} from "./chunk-UUDWZIDC.js";
|
|
11
|
+
import "./chunk-S4V2GOKV.js";
|
|
12
|
+
import "./chunk-6LUDG5AB.js";
|
|
13
|
+
import {
|
|
14
|
+
advertiserAdsRequestSchema,
|
|
15
|
+
registerSchema,
|
|
16
|
+
winningAdNormalizer,
|
|
17
|
+
writeJson,
|
|
18
|
+
writeOutput
|
|
19
|
+
} from "./chunk-6V4UAC5I.js";
|
|
20
|
+
import "./chunk-YQSBHWOI.js";
|
|
21
|
+
|
|
22
|
+
// src/commands/winning-ads/ads.ts
|
|
23
|
+
import { defineCommand } from "citty";
|
|
24
|
+
registerSchema({
|
|
25
|
+
command: "winning-ads.ads",
|
|
26
|
+
description: "Every ad one advertiser has run (one row per distinct ad, strongest first), on every platform or one, running, stopped or both, of every format or the ones in --format (`--platform google --format text`: its Google search ads). The brand page's All ads; `winners` is its top winners. Pages with --offset; `next_offset` is null on the last page. Rows are compact; --fields ad_id,summary,days_active,active keeps a long listing small.",
|
|
27
|
+
args: {
|
|
28
|
+
advertiser: { type: "string", description: "Advertiser id (from `advertisers` or `following`)", required: true },
|
|
29
|
+
platform: { type: "string", description: "Only this platform: meta|linkedin|tiktok|google", required: false },
|
|
30
|
+
running: { type: "string", description: "all|running|stopped (default all)", required: false, default: "all" },
|
|
31
|
+
format: {
|
|
32
|
+
type: "string",
|
|
33
|
+
description: "Comma list: video,static,carousel,text (text = Google search ads); every format when omitted",
|
|
34
|
+
required: false
|
|
35
|
+
},
|
|
36
|
+
limit: { type: "number", description: "Ads per page 1-100 (default 24)", required: false, default: 24 },
|
|
37
|
+
offset: { type: "number", description: "Skip this many ads (from `next_offset`)", required: false, default: 0 },
|
|
38
|
+
full: { type: "boolean", description: "Include DNA detail + longevity", required: false, default: false }
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
function nextOffset(page, offset) {
|
|
42
|
+
const reached = offset + page.returned;
|
|
43
|
+
if (page.returned === 0) return null;
|
|
44
|
+
if (page.total === null) return page.returned === page.limit ? reached : null;
|
|
45
|
+
return reached < page.total ? reached : null;
|
|
46
|
+
}
|
|
47
|
+
function adsHints(request, returned, next) {
|
|
48
|
+
if (next !== null) return [`More ads: run again with --offset ${next}.`];
|
|
49
|
+
if (returned === 0 && request.offset === 0 && request.running === "running") {
|
|
50
|
+
return [
|
|
51
|
+
`No ad counts as running unless the brand was checked in the last 35 days: read last_checked_at in \`baker winning-ads profile ${request.id}\` before saying it runs nothing.`
|
|
52
|
+
];
|
|
53
|
+
}
|
|
54
|
+
return [];
|
|
55
|
+
}
|
|
56
|
+
var adsCommand = defineCommand({
|
|
57
|
+
meta: {
|
|
58
|
+
name: "ads",
|
|
59
|
+
description: "Every ad an advertiser has run, per platform and format or all together. Example: baker winning-ads ads adv_123 --platform google --format text --running running --output md"
|
|
60
|
+
},
|
|
61
|
+
args: {
|
|
62
|
+
advertiser: { type: "positional", description: "Advertiser id", required: true },
|
|
63
|
+
platform: { type: "string", description: "Only this platform: meta|linkedin|tiktok|google", required: false },
|
|
64
|
+
running: { type: "string", description: "all|running|stopped (default all)", required: false },
|
|
65
|
+
format: { type: "string", description: "Comma list: video,static,carousel,text", required: false },
|
|
66
|
+
limit: { type: "string", description: "Ads per page 1-100 (default 24)", required: false },
|
|
67
|
+
offset: { type: "string", description: "Skip this many ads (from next_offset)", required: false },
|
|
68
|
+
output: { type: "string", description: "Output format: json|files|md", required: false, default: "json" },
|
|
69
|
+
fields: { type: "string", description: "Comma-separated field names to include", required: false },
|
|
70
|
+
full: { type: "boolean", description: "Include DNA detail + longevity", required: false, default: false }
|
|
71
|
+
},
|
|
72
|
+
run: async ({ args }) => {
|
|
73
|
+
try {
|
|
74
|
+
const parsed = advertiserAdsRequestSchema.safeParse({
|
|
75
|
+
id: String(args.advertiser),
|
|
76
|
+
platform: args.platform || void 0,
|
|
77
|
+
running: args.running || void 0,
|
|
78
|
+
format: args.format || void 0,
|
|
79
|
+
limit: args.limit || void 0,
|
|
80
|
+
offset: args.offset || void 0
|
|
81
|
+
});
|
|
82
|
+
if (!parsed.success) {
|
|
83
|
+
const issue = parsed.error.issues[0];
|
|
84
|
+
writeJson({
|
|
85
|
+
ok: false,
|
|
86
|
+
error: { code: "BAD_REQUEST", message: `--${issue?.path.join(".") ?? "args"}: ${issue?.message}` }
|
|
87
|
+
});
|
|
88
|
+
process.exit(1);
|
|
89
|
+
}
|
|
90
|
+
const request = parsed.data;
|
|
91
|
+
const params = {
|
|
92
|
+
id: request.id,
|
|
93
|
+
running: request.running,
|
|
94
|
+
limit: String(request.limit),
|
|
95
|
+
offset: String(request.offset)
|
|
96
|
+
};
|
|
97
|
+
if (request.platform) params.platform = request.platform;
|
|
98
|
+
if (request.format) params.format = request.format.join(",");
|
|
99
|
+
const data = await apiGet("/api/ad-library/advertiser-ads", params);
|
|
100
|
+
const plan = adFieldPlan(args.fields, args.full);
|
|
101
|
+
const next = nextOffset({ returned: data.ads.length, total: data.total, limit: request.limit }, request.offset);
|
|
102
|
+
const hints = adsHints(request, data.ads.length, next);
|
|
103
|
+
const output = args.output || "json";
|
|
104
|
+
if (output === "json") {
|
|
105
|
+
writeJson({
|
|
106
|
+
ok: true,
|
|
107
|
+
data: {
|
|
108
|
+
advertiser_id: data.advertiser_id,
|
|
109
|
+
total: data.total,
|
|
110
|
+
next_offset: next,
|
|
111
|
+
ads: adRows(data.ads, plan)
|
|
112
|
+
},
|
|
113
|
+
...hints.length > 0 ? { hints } : {}
|
|
114
|
+
});
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
writeOutput({ ok: true, data: data.ads }, output, plan.fields, plan.full, winningAdNormalizer);
|
|
118
|
+
} catch (err) {
|
|
119
|
+
reportError(err);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
export {
|
|
124
|
+
adsCommand,
|
|
125
|
+
adsHints,
|
|
126
|
+
nextOffset
|
|
127
|
+
};
|
|
128
|
+
//# sourceMappingURL=ads-BEMEXBDJ.js.map
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import "./chunk-YQSBHWOI.js";
|
|
2
|
+
|
|
3
|
+
// src/commands/ads/index.ts
|
|
4
|
+
import { defineCommand } from "citty";
|
|
5
|
+
var adsCommand = defineCommand({
|
|
6
|
+
meta: {
|
|
7
|
+
name: "ads",
|
|
8
|
+
description: `Ad platform commands. Each platform exposes its own native command surface \u2014 no forced parity.
|
|
9
|
+
|
|
10
|
+
Platforms:
|
|
11
|
+
google \u2014 Google Ads (GAQL queries, keywords, accounts, ad library)
|
|
12
|
+
meta \u2014 Meta Ads (campaigns, adsets, ads, insights, previews)
|
|
13
|
+
linkedin \u2014 LinkedIn Ads (firmographic analytics \u2014 job-title \xD7 company \xD7 industry \xD7 seniority pivots)
|
|
14
|
+
x \u2014 X (Twitter) Ads (campaigns, line items, promoted tweets, analytics)
|
|
15
|
+
chatgpt \u2014 ChatGPT Ads (account, campaigns, ad groups, ads, insights \u2014 read-only)
|
|
16
|
+
terms \u2014 which platform terms an ad account has accepted (customer lists, lead forms, \u2026) and how to accept the rest
|
|
17
|
+
|
|
18
|
+
Across platforms:
|
|
19
|
+
performance \u2014 Baker's stored copy of every connected platform's results, changes and alerts (no platform call). Start here for "how are the ads doing".
|
|
20
|
+
|
|
21
|
+
Examples:
|
|
22
|
+
baker ads performance overview
|
|
23
|
+
baker ads google accounts
|
|
24
|
+
baker ads google query --preset campaign-performance --customer-id 1234567890
|
|
25
|
+
baker ads meta accounts
|
|
26
|
+
baker ads meta campaigns --account-id act_123 --effective-status ACTIVE
|
|
27
|
+
baker ads meta insights --object act_123 --level ad --date-preset last_7d --fields impressions,spend,ctr
|
|
28
|
+
baker ads linkedin accounts
|
|
29
|
+
baker ads x accounts
|
|
30
|
+
baker ads x stats sync --preset campaign-engagement-7d --entity-ids abc,def
|
|
31
|
+
baker ads chatgpt insights --days 30 --granularity daily
|
|
32
|
+
baker ads terms --platform google --account-id 1234567890
|
|
33
|
+
Full guides: __tooling__/docs/tools/baker/ads-<platform>.md (google|meta|linkedin|x|chatgpt|performance|terms)`
|
|
34
|
+
},
|
|
35
|
+
subCommands: {
|
|
36
|
+
google: () => import("./google-ED4VGLSX.js").then((m) => m.googleCommand),
|
|
37
|
+
meta: () => import("./meta-7FJQD44L.js").then((m) => m.metaCommand),
|
|
38
|
+
linkedin: () => import("./linkedin-MLPAY7IL.js").then((m) => m.linkedinCommand),
|
|
39
|
+
x: () => import("./x-4TM5RET4.js").then((m) => m.xCommand),
|
|
40
|
+
chatgpt: () => import("./chatgpt-J6MNVQVT.js").then((m) => m.chatgptCommand),
|
|
41
|
+
performance: () => import("./performance-4MWQVTTA.js").then((m) => m.performanceCommand),
|
|
42
|
+
terms: () => import("./terms-IRLEAMIY.js").then((m) => m.termsCommand)
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
export {
|
|
46
|
+
adsCommand
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=ads-GAU2XKNL.js.map
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import {
|
|
2
|
+
CHATGPT_ADS_REFERENCE,
|
|
3
|
+
runChatgptListRead
|
|
4
|
+
} from "./chunk-NT7NCSEB.js";
|
|
5
|
+
import "./chunk-VF3W7CI7.js";
|
|
6
|
+
import "./chunk-SOPVIIUW.js";
|
|
7
|
+
import "./chunk-G4FG5EQO.js";
|
|
8
|
+
import "./chunk-UUDWZIDC.js";
|
|
9
|
+
import "./chunk-S4V2GOKV.js";
|
|
10
|
+
import "./chunk-6LUDG5AB.js";
|
|
11
|
+
import {
|
|
12
|
+
registerSchema
|
|
13
|
+
} from "./chunk-6V4UAC5I.js";
|
|
14
|
+
import "./chunk-YQSBHWOI.js";
|
|
15
|
+
|
|
16
|
+
// src/commands/ads/chatgpt/ads.ts
|
|
17
|
+
import { defineCommand } from "citty";
|
|
18
|
+
var args = {
|
|
19
|
+
"ad-group-id": { type: "string", description: "Only this ad group's ads (adgrp_\u2026)", required: false },
|
|
20
|
+
full: { type: "boolean", description: "Return ChatGPT Ads' own ad objects", required: false }
|
|
21
|
+
};
|
|
22
|
+
registerSchema({
|
|
23
|
+
command: "ads.chatgpt.ads",
|
|
24
|
+
description: "Ads in the connected ChatGPT Ads account, or in one ad group: the card's title, body, image and destination, its review outcome and reason, and serving issues.",
|
|
25
|
+
args
|
|
26
|
+
});
|
|
27
|
+
function adHints(ads) {
|
|
28
|
+
const rejected = ads.filter((ad) => ad.review === "rejected");
|
|
29
|
+
return rejected.length > 0 ? [
|
|
30
|
+
`${rejected.length} ad(s) were rejected in review; reviewReason says why. Editing the creative sends it back to review.`
|
|
31
|
+
] : [];
|
|
32
|
+
}
|
|
33
|
+
var adsListCommand = defineCommand({
|
|
34
|
+
meta: { name: "list", description: "ChatGPT Ads chat cards. Example: baker ads chatgpt ads --ad-group-id adgrp_123" },
|
|
35
|
+
args,
|
|
36
|
+
run: async ({ args: input }) => {
|
|
37
|
+
const params = {};
|
|
38
|
+
if (input["ad-group-id"]) {
|
|
39
|
+
params["ad-group-id"] = input["ad-group-id"];
|
|
40
|
+
}
|
|
41
|
+
if (input.full) {
|
|
42
|
+
params.full = "true";
|
|
43
|
+
}
|
|
44
|
+
await runChatgptListRead(
|
|
45
|
+
CHATGPT_ADS_REFERENCE.ads,
|
|
46
|
+
"/api/ads/chatgpt/ads",
|
|
47
|
+
params,
|
|
48
|
+
(ads) => input.full ? [] : adHints(ads)
|
|
49
|
+
);
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
var adsCommand = defineCommand({
|
|
53
|
+
meta: {
|
|
54
|
+
name: "ads",
|
|
55
|
+
description: `ChatGPT Ads ads (chat cards): copy, image, destination and review status \u2014 or stage a change that applies when the chat is published.
|
|
56
|
+
|
|
57
|
+
Examples:
|
|
58
|
+
baker ads chatgpt ads --ad-group-id adgrp_123
|
|
59
|
+
baker ads chatgpt ads create --ad-group-id adgrp_123 --name "Card A" --title "\u2026" --body "\u2026" --target-url https://\u2026 --image-url https://\u2026
|
|
60
|
+
baker ads chatgpt ads update ad_123 --title "Solar with no upfront cost"
|
|
61
|
+
baker ads chatgpt ads pause ad_123`
|
|
62
|
+
},
|
|
63
|
+
subCommands: {
|
|
64
|
+
list: adsListCommand,
|
|
65
|
+
create: () => import("./ad-writes-HAAUOJCG.js").then((m) => m.adsCreateCommand),
|
|
66
|
+
update: () => import("./ad-writes-HAAUOJCG.js").then((m) => m.adsUpdateCommand),
|
|
67
|
+
pause: () => import("./ad-writes-HAAUOJCG.js").then((m) => m.adsPauseCommand),
|
|
68
|
+
resume: () => import("./ad-writes-HAAUOJCG.js").then((m) => m.adsResumeCommand),
|
|
69
|
+
archive: () => import("./ad-writes-HAAUOJCG.js").then((m) => m.adsArchiveCommand),
|
|
70
|
+
"create-product": () => import("./ad-writes-HAAUOJCG.js").then((m) => m.adsCreateProductCommand)
|
|
71
|
+
},
|
|
72
|
+
// A parent must never declare `run`: citty falls through to it after the matched subcommand.
|
|
73
|
+
args,
|
|
74
|
+
default: "list"
|
|
75
|
+
});
|
|
76
|
+
export {
|
|
77
|
+
adsCommand
|
|
78
|
+
};
|
|
79
|
+
//# sourceMappingURL=ads-HZOXZ3FY.js.map
|