@koda-sl/baker-cli 0.442.0 → 0.443.0-dev.043c1d4ac
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 +38 -23
- package/canvas/tiktok-captions-composition/index.html +5 -6
- package/canvas/tiktok-captions-composition/meta.json +5 -0
- package/dist/account-4H7QVBRK.js +80 -0
- package/dist/account-4H7QVBRK.js.map +1 -0
- package/dist/account-IEVEOFIK.js +49 -0
- package/dist/account-IEVEOFIK.js.map +1 -0
- package/dist/account-RDRK7NOE.js +79 -0
- package/dist/account-RDRK7NOE.js.map +1 -0
- package/dist/account-writes-AK42HGRM.js +66 -0
- package/dist/account-writes-AK42HGRM.js.map +1 -0
- package/dist/accounts-4CDRK4S4.js +75 -0
- package/dist/accounts-4CDRK4S4.js.map +1 -0
- package/dist/accounts-4TYIUVWY.js +77 -0
- package/dist/accounts-4TYIUVWY.js.map +1 -0
- package/dist/accounts-5QDKBZMH.js +115 -0
- package/dist/accounts-5QDKBZMH.js.map +1 -0
- package/dist/accounts-6COLJJHM.js +611 -0
- package/dist/accounts-6COLJJHM.js.map +1 -0
- package/dist/accounts-KYJO3JC6.js +114 -0
- package/dist/accounts-KYJO3JC6.js.map +1 -0
- package/dist/actions-PEI6ZQAG.js +55 -0
- package/dist/active-entities-YUSOUR5M.js +103 -0
- package/dist/active-entities-YUSOUR5M.js.map +1 -0
- package/dist/activities-ZVQOBHZH.js +74 -0
- package/dist/activities-ZVQOBHZH.js.map +1 -0
- package/dist/ad-group-writes-QQS4223F.js +170 -0
- package/dist/ad-group-writes-QQS4223F.js.map +1 -0
- package/dist/ad-groups-WGPDPUI2.js +68 -0
- package/dist/ad-groups-WGPDPUI2.js.map +1 -0
- package/dist/ad-writes-XE2IE4DS.js +174 -0
- package/dist/ad-writes-XE2IE4DS.js.map +1 -0
- package/dist/add-577QWMCF.js +97 -0
- package/dist/add-577QWMCF.js.map +1 -0
- package/dist/add-CUWAW7KG.js +105 -0
- package/dist/add-CUWAW7KG.js.map +1 -0
- package/dist/add-XDOQQCHS.js +104 -0
- package/dist/add-XDOQQCHS.js.map +1 -0
- package/dist/add-XEDSBYLM.js +280 -0
- package/dist/add-XEDSBYLM.js.map +1 -0
- package/dist/ads-BCOSQALY.js +77 -0
- package/dist/ads-BCOSQALY.js.map +1 -0
- package/dist/ads-H7GH7A26.js +113 -0
- package/dist/ads-H7GH7A26.js.map +1 -0
- package/dist/ads-TJ7ACFHG.js +40 -0
- package/dist/adsets-H7QT42U6.js +176 -0
- package/dist/adsets-H7QT42U6.js.map +1 -0
- package/dist/advertisers-WSNHNCBQ.js +116 -0
- package/dist/advertisers-WSNHNCBQ.js.map +1 -0
- package/dist/advertisers-YMHPZYNF.js +111 -0
- package/dist/advertisers-YMHPZYNF.js.map +1 -0
- package/dist/analytics-PT2GKCFU.js +1958 -0
- package/dist/analytics-PT2GKCFU.js.map +1 -0
- package/dist/analytics-ZVWUY66X.js +433 -0
- package/dist/analytics-ZVWUY66X.js.map +1 -0
- package/dist/animate-3Z7HXOLE.js +480 -0
- package/dist/animate-3Z7HXOLE.js.map +1 -0
- package/dist/assign-B26AJLGN.js +77 -0
- package/dist/assign-B26AJLGN.js.map +1 -0
- package/dist/audience-size-ZX565D5P.js +94 -0
- package/dist/audience-size-ZX565D5P.js.map +1 -0
- package/dist/audiences-HFRVIE2X.js +85 -0
- package/dist/audiences-HFRVIE2X.js.map +1 -0
- package/dist/audiences-JACGRBNN.js +78 -0
- package/dist/audiences-JACGRBNN.js.map +1 -0
- package/dist/audiences-TGD5US2M.js +268 -0
- package/dist/audiences-TGD5US2M.js.map +1 -0
- package/dist/audit-AD4ZZNJN.js +88 -0
- package/dist/audit-AD4ZZNJN.js.map +1 -0
- package/dist/audit-SAXVPGWS.js +151 -0
- package/dist/audit-SAXVPGWS.js.map +1 -0
- package/dist/autocomplete-6PYFCOMX.js +107 -0
- package/dist/autocomplete-6PYFCOMX.js.map +1 -0
- package/dist/avatars-2UQJXHPV.js +38 -0
- package/dist/bid-pricing-WSHACGX4.js +99 -0
- package/dist/bid-pricing-WSHACGX4.js.map +1 -0
- package/dist/brand-XBABUT52.js +22 -0
- package/dist/brief-KKNC32TA.js +478 -0
- package/dist/brief-KKNC32TA.js.map +1 -0
- package/dist/businesses-JBDQZZIG.js +53 -0
- package/dist/businesses-JBDQZZIG.js.map +1 -0
- package/dist/campaign-groups-G35366AW.js +95 -0
- package/dist/campaign-groups-G35366AW.js.map +1 -0
- package/dist/campaign-writes-SXLZFYF6.js +170 -0
- package/dist/campaign-writes-SXLZFYF6.js.map +1 -0
- package/dist/campaign-writes-ZQGN7FQ3.js +165 -0
- package/dist/campaign-writes-ZQGN7FQ3.js.map +1 -0
- package/dist/campaigns-GXUCHQ2S.js +109 -0
- package/dist/campaigns-GXUCHQ2S.js.map +1 -0
- package/dist/campaigns-WBEG5QA4.js +110 -0
- package/dist/campaigns-WBEG5QA4.js.map +1 -0
- package/dist/campaigns-WECN54WV.js +107 -0
- package/dist/campaigns-WECN54WV.js.map +1 -0
- package/dist/campaigns-YS3OGQXO.js +76 -0
- package/dist/campaigns-YS3OGQXO.js.map +1 -0
- package/dist/canvas-KEXE5P6S.js +46 -0
- package/dist/capabilities-74I5AQ36.js +144 -0
- package/dist/capabilities-74I5AQ36.js.map +1 -0
- package/dist/cards-4477BFEV.js +85 -0
- package/dist/cards-4477BFEV.js.map +1 -0
- package/dist/catalog-IQEQ5TGQ.js +66 -0
- package/dist/catalog-IQEQ5TGQ.js.map +1 -0
- package/dist/catalogs-BRXEDE56.js +128 -0
- package/dist/catalogs-BRXEDE56.js.map +1 -0
- package/dist/changes-6QBJMGJC.js +135 -0
- package/dist/changes-6QBJMGJC.js.map +1 -0
- package/dist/chatgpt-7W75X3ER.js +47 -0
- package/dist/chats-DWHF64IU.js +262 -0
- package/dist/chats-DWHF64IU.js.map +1 -0
- package/dist/chunk-27NMXSC3.js +486 -0
- package/dist/chunk-27NMXSC3.js.map +1 -0
- package/dist/chunk-2CD5ZP7M.js +6659 -0
- package/dist/chunk-2CD5ZP7M.js.map +1 -0
- package/dist/chunk-2TK4DEOE.js +74 -0
- package/dist/chunk-3RJ3VGJP.js +197 -0
- package/dist/chunk-3RJ3VGJP.js.map +1 -0
- package/dist/chunk-4NDCTLI5.js +191 -0
- package/dist/chunk-4NZ47VXO.js +137 -0
- package/dist/chunk-4NZ47VXO.js.map +1 -0
- package/dist/chunk-4SJDDGPV.js +1411 -0
- package/dist/chunk-4SJDDGPV.js.map +1 -0
- package/dist/chunk-5ARG3CQG.js +141 -0
- package/dist/chunk-5HYSKH77.js +315 -0
- package/dist/chunk-5HYSKH77.js.map +1 -0
- package/dist/chunk-5Z2KSVIV.js +67 -0
- package/dist/chunk-654U6NU6.js +534 -0
- package/dist/chunk-654U6NU6.js.map +1 -0
- package/dist/chunk-6B7VKFS4.js +172 -0
- package/dist/chunk-6G5K6ZC6.js +46 -0
- package/dist/chunk-73QKIIIR.js +23 -0
- package/dist/chunk-75FDTDLH.js +96 -0
- package/dist/chunk-75VNSKS3.js +455 -0
- package/dist/chunk-75VNSKS3.js.map +1 -0
- package/dist/chunk-7GPDUS3P.js +494 -0
- package/dist/chunk-7GPDUS3P.js.map +1 -0
- package/dist/chunk-7J6EHOH6.js +274 -0
- package/dist/chunk-7OFNN4CT.js +58 -0
- package/dist/chunk-7QJVPMVB.js +592 -0
- package/dist/chunk-7QJVPMVB.js.map +1 -0
- package/dist/chunk-AN447DQB.js +159 -0
- package/dist/chunk-AN447DQB.js.map +1 -0
- package/dist/chunk-BYDF22T4.js +346 -0
- package/dist/chunk-BYDF22T4.js.map +1 -0
- package/dist/chunk-C6U6UDHJ.js +106 -0
- package/dist/chunk-CLMM6P6B.js +1751 -0
- package/dist/chunk-CLMM6P6B.js.map +1 -0
- package/dist/chunk-DIY6QR3E.js +96 -0
- package/dist/chunk-EFSYTROP.js +94 -0
- package/dist/chunk-EIP4PYCL.js +496 -0
- package/dist/chunk-EIP4PYCL.js.map +1 -0
- package/dist/chunk-EZUG6WE2.js +60 -0
- package/dist/chunk-EZUG6WE2.js.map +1 -0
- package/dist/chunk-F2S5BLPE.js +97 -0
- package/dist/chunk-F2S5BLPE.js.map +1 -0
- package/dist/chunk-FEXDI4NM.js +103 -0
- package/dist/chunk-FHXIEMCG.js +382 -0
- package/dist/chunk-FTWJFDIN.js +23992 -0
- package/dist/chunk-FTWJFDIN.js.map +1 -0
- package/dist/chunk-FXED3VZK.js +174 -0
- package/dist/chunk-FXED3VZK.js.map +1 -0
- package/dist/chunk-GIJT3A5U.js +166 -0
- package/dist/chunk-GIJT3A5U.js.map +1 -0
- package/dist/chunk-H26L3OQY.js +42 -0
- package/dist/chunk-HIPDMQZ6.js +136 -0
- package/dist/chunk-HMEFD2CG.js +5163 -0
- package/dist/chunk-HMEFD2CG.js.map +1 -0
- package/dist/chunk-HO3IUJ4K.js +70 -0
- package/dist/chunk-HO3IUJ4K.js.map +1 -0
- package/dist/chunk-HXTGYOQC.js +813 -0
- package/dist/chunk-HXTGYOQC.js.map +1 -0
- package/dist/chunk-HYCIBVDW.js +98 -0
- package/dist/chunk-ICM2OXZV.js +304 -0
- package/dist/chunk-ICM2OXZV.js.map +1 -0
- package/dist/chunk-IFWP3ZDO.js +215 -0
- package/dist/chunk-IKGWQBKJ.js +422 -0
- package/dist/chunk-IKGWQBKJ.js.map +1 -0
- package/dist/chunk-IXKEWS7X.js +433 -0
- package/dist/chunk-JERXV5A3.js +26 -0
- package/dist/chunk-JM73NDCM.js +163 -0
- package/dist/chunk-JM73NDCM.js.map +1 -0
- package/dist/chunk-K3PN7TN5.js +84 -0
- package/dist/chunk-K3PN7TN5.js.map +1 -0
- package/dist/chunk-KLNKEVIY.js +136 -0
- package/dist/chunk-KNY76UGC.js +84 -0
- package/dist/chunk-KWAOTV7F.js +830 -0
- package/dist/chunk-L3OLEAJN.js +92 -0
- package/dist/chunk-L3OLEAJN.js.map +1 -0
- package/dist/chunk-LERTEZST.js +28 -0
- package/dist/chunk-LL2CD5WU.js +310 -0
- package/dist/chunk-LO6GEJ4Z.js +51 -0
- package/dist/chunk-LS5MTRFI.js +106 -0
- package/dist/chunk-LZ73CZGP.js +188 -0
- package/dist/chunk-MELOSESI.js +20 -0
- package/dist/chunk-MLU6STIN.js +66 -0
- package/dist/chunk-MLU6STIN.js.map +1 -0
- package/dist/chunk-MZL4H5PY.js +225 -0
- package/dist/chunk-MZL4H5PY.js.map +1 -0
- package/dist/chunk-NAWWC5I3.js +454 -0
- package/dist/chunk-NFSLRRIE.js +77 -0
- package/dist/chunk-NFSLRRIE.js.map +1 -0
- package/dist/chunk-NPE7EWBE.js +297 -0
- package/dist/chunk-NU7JSWVA.js +946 -0
- package/dist/chunk-NU7JSWVA.js.map +1 -0
- package/dist/chunk-OBDAYP2P.js +3155 -0
- package/dist/chunk-OBDAYP2P.js.map +1 -0
- package/dist/chunk-OC5IJSIW.js +420 -0
- package/dist/chunk-OC5IJSIW.js.map +1 -0
- package/dist/chunk-OKG6GX2F.js +169 -0
- package/dist/chunk-OTFHEHIU.js +1706 -0
- package/dist/chunk-OTFHEHIU.js.map +1 -0
- package/dist/chunk-PBA3YCZA.js +76 -0
- package/dist/chunk-PWGWMIIJ.js +25 -0
- package/dist/chunk-QHLB5V7J.js +19 -0
- package/dist/chunk-QJE6ZYGI.js +131 -0
- package/dist/chunk-QSN5MZGS.js +74 -0
- package/dist/chunk-QXZYAIWS.js +390 -0
- package/dist/chunk-QXZYAIWS.js.map +1 -0
- package/dist/chunk-RRUJQVWA.js +4372 -0
- package/dist/chunk-RRUJQVWA.js.map +1 -0
- package/dist/chunk-RSW6QJPH.js +217 -0
- package/dist/chunk-RX6F3GEA.js +610 -0
- package/dist/chunk-RX6F3GEA.js.map +1 -0
- package/dist/chunk-SBMIQDCX.js +175 -0
- package/dist/chunk-SJDPHVGE.js +363 -0
- package/dist/chunk-SJDPHVGE.js.map +1 -0
- package/dist/chunk-STIB5DR5.js +56 -0
- package/dist/chunk-TBEUMOEL.js +95 -0
- package/dist/chunk-TCNNOLVZ.js +207 -0
- package/dist/chunk-TCNNOLVZ.js.map +1 -0
- package/dist/chunk-TD2P4HBP.js +55 -0
- package/dist/chunk-URIYUZIN.js +111 -0
- package/dist/chunk-URIYUZIN.js.map +1 -0
- package/dist/chunk-VAJBWA2U.js +75 -0
- package/dist/chunk-VAJBWA2U.js.map +1 -0
- package/dist/chunk-VBHDZSI5.js +57 -0
- package/dist/chunk-VFIOJD5M.js +309 -0
- package/dist/chunk-VVZBBKRC.js +296 -0
- package/dist/chunk-VWCELTQE.js +1079 -0
- package/dist/chunk-VWCELTQE.js.map +1 -0
- package/dist/chunk-W3B4BHQU.js +31 -0
- package/dist/chunk-W3ZHJJVT.js +139 -0
- package/dist/chunk-W3ZHJJVT.js.map +1 -0
- package/dist/chunk-WS2GMOSG.js +74 -0
- package/dist/chunk-XBOK23HI.js +214 -0
- package/dist/chunk-XG3XCHN6.js +26 -0
- package/dist/chunk-XL3BMSYG.js +125 -0
- package/dist/chunk-XWH7CCBL.js +6065 -0
- package/dist/chunk-XWH7CCBL.js.map +1 -0
- package/dist/chunk-XYMPS526.js +622 -0
- package/dist/chunk-Y5ZGWLWP.js +2882 -0
- package/dist/chunk-Y5ZGWLWP.js.map +1 -0
- package/dist/chunk-YBMVHGY3.js +333 -0
- package/dist/chunk-ZJ47BR6X.js +337 -0
- package/dist/chunk-ZJ47BR6X.js.map +1 -0
- package/dist/chunk-ZNBDKK4Y.js +76 -0
- package/dist/chunk-ZNBDKK4Y.js.map +1 -0
- package/dist/chunk-ZXTW3TXY.js +133 -0
- package/dist/chunk-ZXTW3TXY.js.map +1 -0
- package/dist/claim-EIL4ZBSN.js +197 -0
- package/dist/claim-EIL4ZBSN.js.map +1 -0
- package/dist/cli.js +36 -37
- package/dist/cli.js.map +1 -1
- package/dist/client-VHN32ZRE.js +19 -0
- package/dist/code-YS6ZMGX3.js +76 -0
- package/dist/code-YS6ZMGX3.js.map +1 -0
- package/dist/companies-2UG7RDYN.js +195 -0
- package/dist/companies-2UG7RDYN.js.map +1 -0
- package/dist/complete-I4KRFYMD.js +81 -0
- package/dist/complete-I4KRFYMD.js.map +1 -0
- package/dist/config-CQN5FHMZ.js +88 -0
- package/dist/config-CQN5FHMZ.js.map +1 -0
- package/dist/connect-TA5W6YGW.js +36 -0
- package/dist/content-3ZPP4SW2.js +81 -0
- package/dist/content-3ZPP4SW2.js.map +1 -0
- package/dist/conversation-BJI54MI6.js +93 -0
- package/dist/conversation-BJI54MI6.js.map +1 -0
- package/dist/conversion-report-XQBJ6LG4.js +125 -0
- package/dist/conversion-report-XQBJ6LG4.js.map +1 -0
- package/dist/conversion-upload-command-JULHGVIR.js +438 -0
- package/dist/conversion-upload-command-JULHGVIR.js.map +1 -0
- package/dist/conversion-writes-UBCVXP2E.js +120 -0
- package/dist/conversion-writes-UBCVXP2E.js.map +1 -0
- package/dist/conversions-D236RTUK.js +76 -0
- package/dist/conversions-D236RTUK.js.map +1 -0
- package/dist/conversions-VJOJ5S4U.js +135 -0
- package/dist/conversions-VJOJ5S4U.js.map +1 -0
- package/dist/countries-FYHM3IMJ.js +82 -0
- package/dist/countries-FYHM3IMJ.js.map +1 -0
- package/dist/create-E7BIZNUC.js +130 -0
- package/dist/create-E7BIZNUC.js.map +1 -0
- package/dist/create-HKOO7O5L.js +59 -0
- package/dist/create-HKOO7O5L.js.map +1 -0
- package/dist/create-JLQCXAT2.js +207 -0
- package/dist/create-JLQCXAT2.js.map +1 -0
- package/dist/create-VY3RQXOY.js +235 -0
- package/dist/create-VY3RQXOY.js.map +1 -0
- package/dist/creatives-PSWCNY7U.js +87 -0
- package/dist/creatives-PSWCNY7U.js.map +1 -0
- package/dist/creatives-QXMBEA2V.js +51 -0
- package/dist/creatives-QXMBEA2V.js.map +1 -0
- package/dist/creatives-VXQQUH2F.js +182 -0
- package/dist/creatives-VXQQUH2F.js.map +1 -0
- package/dist/credentials-G5BJK7OR.js +1055 -0
- package/dist/credentials-G5BJK7OR.js.map +1 -0
- package/dist/critique-CMLAPVUB.js +1449 -0
- package/dist/critique-CMLAPVUB.js.map +1 -0
- package/dist/critique-O5VNNBPB.js +214 -0
- package/dist/critique-O5VNNBPB.js.map +1 -0
- package/dist/crm-CL7R67FT.js +224 -0
- package/dist/crm-CL7R67FT.js.map +1 -0
- package/dist/crm-GJCAM3DI.js +318 -0
- package/dist/crm-GJCAM3DI.js.map +1 -0
- package/dist/crop-2J4RKJ6B.js +113 -0
- package/dist/crop-2J4RKJ6B.js.map +1 -0
- package/dist/currency-DJDVIR3C.js +88 -0
- package/dist/currency-DJDVIR3C.js.map +1 -0
- package/dist/custom-conversions-6P555U2K.js +125 -0
- package/dist/custom-conversions-6P555U2K.js.map +1 -0
- package/dist/customers-4RJGRR2Y.js +56 -0
- package/dist/delete-3AV3ARMX.js +71 -0
- package/dist/delete-3AV3ARMX.js.map +1 -0
- package/dist/delete-4QXLTL24.js +63 -0
- package/dist/delete-4QXLTL24.js.map +1 -0
- package/dist/delete-A5XD52K4.js +69 -0
- package/dist/delete-A5XD52K4.js.map +1 -0
- package/dist/delete-IJNJTAGW.js +54 -0
- package/dist/delete-IJNJTAGW.js.map +1 -0
- package/dist/delete-MRM2S4Z5.js +71 -0
- package/dist/delete-MRM2S4Z5.js.map +1 -0
- package/dist/delete-R57JFJ3A.js +66 -0
- package/dist/delete-R57JFJ3A.js.map +1 -0
- package/dist/demographics-VMARSTTE.js +138 -0
- package/dist/demographics-VMARSTTE.js.map +1 -0
- package/dist/describe-6NVOWIBE.js +97 -0
- package/dist/describe-6NVOWIBE.js.map +1 -0
- package/dist/describe-P3PPIQME.js +97 -0
- package/dist/describe-P3PPIQME.js.map +1 -0
- package/dist/dimensions-EYAYO27I.js +101 -0
- package/dist/dimensions-EYAYO27I.js.map +1 -0
- package/dist/discard-Y2BKPW4Z.js +66 -0
- package/dist/discard-Y2BKPW4Z.js.map +1 -0
- package/dist/discover-M3ZKKFEL.js +172 -0
- package/dist/discover-M3ZKKFEL.js.map +1 -0
- package/dist/domain-YTHDTRWN.js +98 -0
- package/dist/domain-YTHDTRWN.js.map +1 -0
- package/dist/download-7T6HIJKD.js +299 -0
- package/dist/download-7T6HIJKD.js.map +1 -0
- package/dist/draft-ABGQYDHP.js +328 -0
- package/dist/draft-ABGQYDHP.js.map +1 -0
- package/dist/draft-BGUJDHXR.js +103 -0
- package/dist/draft-BGUJDHXR.js.map +1 -0
- package/dist/draft-KIBMVKSR.js +100 -0
- package/dist/draft-KIBMVKSR.js.map +1 -0
- package/dist/draft-KOLU5BRR.js +217 -0
- package/dist/draft-KOLU5BRR.js.map +1 -0
- package/dist/draft-MNFJ4G3C.js +281 -0
- package/dist/draft-MNFJ4G3C.js.map +1 -0
- package/dist/draft-U6CT6LCC.js +107 -0
- package/dist/draft-U6CT6LCC.js.map +1 -0
- package/dist/draft-YDY2Q2K6.js +233 -0
- package/dist/draft-YDY2Q2K6.js.map +1 -0
- package/dist/draft-ZVVUAMMQ.js +306 -0
- package/dist/draft-ZVVUAMMQ.js.map +1 -0
- package/dist/engine/index.d.ts +10 -0
- package/dist/engine/index.js +16 -17
- package/dist/env-KIP2J2UB.js +43 -0
- package/dist/experiment-LKK77YAN.js +1377 -0
- package/dist/experiment-LKK77YAN.js.map +1 -0
- package/dist/export-JQRMBJ7D.js +168 -0
- package/dist/export-JQRMBJ7D.js.map +1 -0
- package/dist/extract-7QKLME7Z.js +113 -0
- package/dist/extract-7QKLME7Z.js.map +1 -0
- package/dist/facets-UXN4MYPO.js +114 -0
- package/dist/facets-UXN4MYPO.js.map +1 -0
- package/dist/favorites-NSGF4OV5.js +178 -0
- package/dist/favorites-NSGF4OV5.js.map +1 -0
- package/dist/feed-RV4KPPXM.js +157 -0
- package/dist/feed-RV4KPPXM.js.map +1 -0
- package/dist/feedback-3FQYLADC.js +66 -0
- package/dist/feedback-3FQYLADC.js.map +1 -0
- package/dist/feedback-record-DTRZC73R.js +176 -0
- package/dist/feedback-record-DTRZC73R.js.map +1 -0
- package/dist/fetch-UTTJAOLC.js +171 -0
- package/dist/fetch-UTTJAOLC.js.map +1 -0
- package/dist/fetch-XF76JABV.js +139 -0
- package/dist/fetch-XF76JABV.js.map +1 -0
- package/dist/find-OTDIX6V4.js +134 -0
- package/dist/find-OTDIX6V4.js.map +1 -0
- package/dist/fit-KXHYKIA4.js +43 -0
- package/dist/flows-PB4K66NJ.js +244 -0
- package/dist/flows-PB4K66NJ.js.map +1 -0
- package/dist/follow-DUIEGDVK.js +82 -0
- package/dist/follow-DUIEGDVK.js.map +1 -0
- package/dist/follow-competitors-IT5ZVJPE.js +131 -0
- package/dist/follow-competitors-IT5ZVJPE.js.map +1 -0
- package/dist/following-RKC2FLHI.js +109 -0
- package/dist/following-RKC2FLHI.js.map +1 -0
- package/dist/fonts-NTOQS2KU.js +34 -0
- package/dist/forecast-RWDIDDWP.js +104 -0
- package/dist/forecast-RWDIDDWP.js.map +1 -0
- package/dist/funding-NYO65IMT.js +85 -0
- package/dist/funding-NYO65IMT.js.map +1 -0
- package/dist/funnel-XCKPRYTV.js +837 -0
- package/dist/funnel-XCKPRYTV.js.map +1 -0
- package/dist/ga4-UDQ2HA2J.js +55 -0
- package/dist/generate-DMQUS665.js +262 -0
- package/dist/generate-DMQUS665.js.map +1 -0
- package/dist/get-3L6W3E3T.js +59 -0
- package/dist/get-3L6W3E3T.js.map +1 -0
- package/dist/get-67IG7SZI.js +78 -0
- package/dist/get-67IG7SZI.js.map +1 -0
- package/dist/get-6WEYKOY6.js +63 -0
- package/dist/get-6WEYKOY6.js.map +1 -0
- package/dist/get-P743RPSI.js +63 -0
- package/dist/get-P743RPSI.js.map +1 -0
- package/dist/get-WO22OCMZ.js +54 -0
- package/dist/get-WO22OCMZ.js.map +1 -0
- package/dist/get-XN5ZGDIK.js +61 -0
- package/dist/get-XN5ZGDIK.js.map +1 -0
- package/dist/get-YIHTAMRT.js +92 -0
- package/dist/get-YIHTAMRT.js.map +1 -0
- package/dist/gif-53ULFVLR.js +94 -0
- package/dist/gif-53ULFVLR.js.map +1 -0
- package/dist/google-KIBLORXX.js +1872 -0
- package/dist/google-KIBLORXX.js.map +1 -0
- package/dist/google-KTO3PLEU.js +136 -0
- package/dist/google-KTO3PLEU.js.map +1 -0
- package/dist/group-EFZ3AJIE.js +43 -0
- package/dist/group-EFZ3AJIE.js.map +1 -0
- package/dist/group-GKWCCX66.js +43 -0
- package/dist/group-GKWCCX66.js.map +1 -0
- package/dist/gsc-P3QYGDV2.js +30 -0
- package/dist/history-PBFRKLU6.js +133 -0
- package/dist/history-PBFRKLU6.js.map +1 -0
- package/dist/history-Q3QCT64S.js +67 -0
- package/dist/history-Q3QCT64S.js.map +1 -0
- package/dist/hubspot-PMOZST7W.js +779 -0
- package/dist/hubspot-PMOZST7W.js.map +1 -0
- package/dist/icon-I43F77FV.js +137 -0
- package/dist/icon-I43F77FV.js.map +1 -0
- package/dist/ideas-PU7IAX6F.js +32 -0
- package/dist/images-QI2HTX6B.js +90 -0
- package/dist/improve-BCCU5AS6.js +86 -0
- package/dist/improve-BCCU5AS6.js.map +1 -0
- package/dist/ingest-BYJNFOOT.js +23 -0
- package/dist/ingest-ZQM47NVZ.js +107 -0
- package/dist/ingest-ZQM47NVZ.js.map +1 -0
- package/dist/insights-LNAXV2CG.js +122 -0
- package/dist/insights-LNAXV2CG.js.map +1 -0
- package/dist/insights-NZWSJKU4.js +423 -0
- package/dist/insights-NZWSJKU4.js.map +1 -0
- package/dist/inspect-CQH55Q6G.js +189 -0
- package/dist/inspect-CQH55Q6G.js.map +1 -0
- package/dist/inspiration-I4MMKAWA.js +53 -0
- package/dist/intent-ICKFJRT2.js +95 -0
- package/dist/intent-ICKFJRT2.js.map +1 -0
- package/dist/job-L7RJZMSG.js +202 -0
- package/dist/job-L7RJZMSG.js.map +1 -0
- package/dist/job-create-JUDAN52O.js +109 -0
- package/dist/job-create-JUDAN52O.js.map +1 -0
- package/dist/job-status-U43WE3RJ.js +74 -0
- package/dist/job-status-U43WE3RJ.js.map +1 -0
- package/dist/keep-55CPC7DG.js +78 -0
- package/dist/keep-55CPC7DG.js.map +1 -0
- package/dist/keyword-gap-NGPH32FN.js +130 -0
- package/dist/keyword-gap-NGPH32FN.js.map +1 -0
- package/dist/keyword-metrics-E3NJUSEQ.js +197 -0
- package/dist/keyword-metrics-E3NJUSEQ.js.map +1 -0
- package/dist/keywords-for-site-RH47P4GJ.js +124 -0
- package/dist/keywords-for-site-RH47P4GJ.js.map +1 -0
- package/dist/landing-4PA7GCPM.js +28 -0
- package/dist/landing-4PA7GCPM.js.map +1 -0
- package/dist/languages-JDYL2N5F.js +40 -0
- package/dist/languages-JDYL2N5F.js.map +1 -0
- package/dist/languages-JMVNOHMG.js +55 -0
- package/dist/languages-JMVNOHMG.js.map +1 -0
- package/dist/layerize-RPD6SNP6.js +190 -0
- package/dist/layerize-RPD6SNP6.js.map +1 -0
- package/dist/leads-7EVHMNUF.js +293 -0
- package/dist/leads-7EVHMNUF.js.map +1 -0
- package/dist/leads-I7BO5V7P.js +90 -0
- package/dist/leads-I7BO5V7P.js.map +1 -0
- package/dist/learn-HZU3QWNN.js +204 -0
- package/dist/library-ARKRLCNJ.js +109 -0
- package/dist/library-ARKRLCNJ.js.map +1 -0
- package/dist/lighthouse-NQBUCHTW.js +75 -0
- package/dist/lighthouse-NQBUCHTW.js.map +1 -0
- package/dist/line-item-writes-JSR53MID.js +208 -0
- package/dist/line-item-writes-JSR53MID.js.map +1 -0
- package/dist/line-items-2WFLKOOR.js +103 -0
- package/dist/line-items-2WFLKOOR.js.map +1 -0
- package/dist/link-AYXOJQDV.js +64 -0
- package/dist/link-AYXOJQDV.js.map +1 -0
- package/dist/linkedin-M2PVZYLV.js +1008 -0
- package/dist/linkedin-M2PVZYLV.js.map +1 -0
- package/dist/list-3OKEMUFD.js +151 -0
- package/dist/list-3OKEMUFD.js.map +1 -0
- package/dist/list-4MQC23JH.js +63 -0
- package/dist/list-4MQC23JH.js.map +1 -0
- package/dist/list-7MVBXOJT.js +51 -0
- package/dist/list-7MVBXOJT.js.map +1 -0
- package/dist/list-A5UCIR2J.js +65 -0
- package/dist/list-A5UCIR2J.js.map +1 -0
- package/dist/list-AL7N6X2P.js +50 -0
- package/dist/list-AL7N6X2P.js.map +1 -0
- package/dist/list-LI4OGQFW.js +57 -0
- package/dist/list-LI4OGQFW.js.map +1 -0
- package/dist/list-P7NAFN6J.js +76 -0
- package/dist/list-P7NAFN6J.js.map +1 -0
- package/dist/list-QGLIL7J6.js +303 -0
- package/dist/list-QGLIL7J6.js.map +1 -0
- package/dist/locations-2NKBJKBT.js +67 -0
- package/dist/locations-2NKBJKBT.js.map +1 -0
- package/dist/locations-S4U6IJIS.js +40 -0
- package/dist/locations-S4U6IJIS.js.map +1 -0
- package/dist/log-QHR2JNKW.js +92 -0
- package/dist/log-QHR2JNKW.js.map +1 -0
- package/dist/logo-2IP663QO.js +18 -0
- package/dist/lookup-XK45W2SH.js +22 -0
- package/dist/make-ANPR2D2L.js +516 -0
- package/dist/make-ANPR2D2L.js.map +1 -0
- package/dist/map-3BVFAP33.js +404 -0
- package/dist/map-3BVFAP33.js.map +1 -0
- package/dist/mcp-LH5KR6RO.js +476 -0
- package/dist/mcp-LH5KR6RO.js.map +1 -0
- package/dist/media-6CQYG4UY.js +89 -0
- package/dist/media-6CQYG4UY.js.map +1 -0
- package/dist/media-M7E6V2XU.js +15 -0
- package/dist/media-sources-3D246I3O.js +32 -0
- package/dist/members-4DUQHLZH.js +44 -0
- package/dist/members-4DUQHLZH.js.map +1 -0
- package/dist/meta-EZ4SY25M.js +69 -0
- package/dist/metrics-AY4RP54F.js +152 -0
- package/dist/metrics-AY4RP54F.js.map +1 -0
- package/dist/models-5NTC7A5G.js +155 -0
- package/dist/models-5NTC7A5G.js.map +1 -0
- package/dist/normalize-CD4PQRYY.js +138 -0
- package/dist/normalize-CD4PQRYY.js.map +1 -0
- package/dist/normalize-ICQF2AST.js +806 -0
- package/dist/normalize-ICQF2AST.js.map +1 -0
- package/dist/options-6TE5E34Z.js +121 -0
- package/dist/options-6TE5E34Z.js.map +1 -0
- package/dist/output-RAH3TSIL.js +24 -0
- package/dist/page-GS3WLT2C.js +105 -0
- package/dist/page-GS3WLT2C.js.map +1 -0
- package/dist/pages-FXYQLHSJ.js +66 -0
- package/dist/pages-FXYQLHSJ.js.map +1 -0
- package/dist/performance-7LQQCEAW.js +24 -0
- package/dist/pinterest-AUH7WBA7.js +96 -0
- package/dist/pinterest-AUH7WBA7.js.map +1 -0
- package/dist/pixels-TZPF746S.js +60 -0
- package/dist/pixels-TZPF746S.js.map +1 -0
- package/dist/pixels-ZFF4BGUH.js +108 -0
- package/dist/pixels-ZFF4BGUH.js.map +1 -0
- package/dist/preview-AD4GKYIA.js +169 -0
- package/dist/preview-AD4GKYIA.js.map +1 -0
- package/dist/promoted-tweet-writes-F76YIMB6.js +180 -0
- package/dist/promoted-tweet-writes-F76YIMB6.js.map +1 -0
- package/dist/promoted-tweets-EJL37P7K.js +119 -0
- package/dist/promoted-tweets-EJL37P7K.js.map +1 -0
- package/dist/properties-L2XIYQDS.js +101 -0
- package/dist/properties-L2XIYQDS.js.map +1 -0
- package/dist/publish-H5S2IKZP.js +322 -0
- package/dist/publish-H5S2IKZP.js.map +1 -0
- package/dist/query-CPZZNMDY.js +1341 -0
- package/dist/query-CPZZNMDY.js.map +1 -0
- package/dist/query-SGGBCHTF.js +236 -0
- package/dist/query-SGGBCHTF.js.map +1 -0
- package/dist/query-VTGVZQIO.js +247 -0
- package/dist/query-VTGVZQIO.js.map +1 -0
- package/dist/read-LSF7DYTG.js +140 -0
- package/dist/read-LSF7DYTG.js.map +1 -0
- package/dist/reddit-INGPFGP4.js +26 -0
- package/dist/refresh-MKSKISPX.js +94 -0
- package/dist/refresh-MKSKISPX.js.map +1 -0
- package/dist/release-J5LIAIZT.js +60 -0
- package/dist/release-J5LIAIZT.js.map +1 -0
- package/dist/relevant-pages-MTMFMBPD.js +99 -0
- package/dist/relevant-pages-MTMFMBPD.js.map +1 -0
- package/dist/remove-6LGGKMLJ.js +48 -0
- package/dist/remove-6LGGKMLJ.js.map +1 -0
- package/dist/remove-LYEK7VFV.js +50 -0
- package/dist/remove-LYEK7VFV.js.map +1 -0
- package/dist/reopen-FR4UBOG7.js +63 -0
- package/dist/reopen-FR4UBOG7.js.map +1 -0
- package/dist/rerun-3FEOYNG2.js +86 -0
- package/dist/rerun-3FEOYNG2.js.map +1 -0
- package/dist/research-PA53M335.js +59 -0
- package/dist/research-RPJSOWPT.js +226 -0
- package/dist/research-RPJSOWPT.js.map +1 -0
- package/dist/reset-H3ES4WV5.js +54 -0
- package/dist/reset-H3ES4WV5.js.map +1 -0
- package/dist/reset-RCYRE5WO.js +54 -0
- package/dist/reset-RCYRE5WO.js.map +1 -0
- package/dist/resolve-QIDQJCE6.js +121 -0
- package/dist/resolve-QIDQJCE6.js.map +1 -0
- package/dist/retry-PLLCFOJW.js +60 -0
- package/dist/retry-PLLCFOJW.js.map +1 -0
- package/dist/retry-WLVMR7XP.js +62 -0
- package/dist/retry-WLVMR7XP.js.map +1 -0
- package/dist/retry-failed-6HXPUVXJ.js +45 -0
- package/dist/retry-failed-6HXPUVXJ.js.map +1 -0
- package/dist/run-2IM2QOCI.js +61 -0
- package/dist/run-4D7ZCLMF.js +65 -0
- package/dist/run-4D7ZCLMF.js.map +1 -0
- package/dist/scaffold-ad-YYUVL4IP.js +1550 -0
- package/dist/scaffold-ad-YYUVL4IP.js.map +1 -0
- package/dist/scaffold-static-ad-SUEYXLOR.js +948 -0
- package/dist/scaffold-static-ad-SUEYXLOR.js.map +1 -0
- package/dist/scaffold-video-IBH2YJZD.js +874 -0
- package/dist/scaffold-video-IBH2YJZD.js.map +1 -0
- package/dist/schedule-O2K6M43V.js +66 -0
- package/dist/schedule-O2K6M43V.js.map +1 -0
- package/dist/schedule-RXUUCNNI.js +61 -0
- package/dist/schedule-RXUUCNNI.js.map +1 -0
- package/dist/scheduled-agents-2NCGSD76.js +49 -0
- package/dist/schema-6GR77VJG.js +63 -0
- package/dist/schema-6GR77VJG.js.map +1 -0
- package/dist/schema-SFODURN7.js +129 -0
- package/dist/schema-SFODURN7.js.map +1 -0
- package/dist/scrape-ETAMW43A.js +2241 -0
- package/dist/scrape-ETAMW43A.js.map +1 -0
- package/dist/screenshot-YCQF25ZB.js +102 -0
- package/dist/screenshot-YCQF25ZB.js.map +1 -0
- package/dist/search-742XSULP.js +224 -0
- package/dist/search-742XSULP.js.map +1 -0
- package/dist/search-7QVZOWSI.js +174 -0
- package/dist/search-7QVZOWSI.js.map +1 -0
- package/dist/search-MEEM4D3W.js +92 -0
- package/dist/search-MEEM4D3W.js.map +1 -0
- package/dist/search-OQNGSMUH.js +91 -0
- package/dist/search-OQNGSMUH.js.map +1 -0
- package/dist/search-XUIVHGAY.js +26 -0
- package/dist/seeds-N6FF5S4T.js +101 -0
- package/dist/seeds-N6FF5S4T.js.map +1 -0
- package/dist/select-ZWDEVAH2.js +95 -0
- package/dist/sends-WGJVQUMF.js +309 -0
- package/dist/sends-WGJVQUMF.js.map +1 -0
- package/dist/sequences-OIPVR7JL.js +146 -0
- package/dist/sequences-OIPVR7JL.js.map +1 -0
- package/dist/set-prompt-SBEOQGCF.js +187 -0
- package/dist/set-prompt-SBEOQGCF.js.map +1 -0
- package/dist/setup-links-XW4A6L2I.js +141 -0
- package/dist/setup-links-XW4A6L2I.js.map +1 -0
- package/dist/shared-HJDFNID4.js +31 -0
- package/dist/site-6UTQSYIK.js +177 -0
- package/dist/site-6UTQSYIK.js.map +1 -0
- package/dist/sitemaps-POPZJTAX.js +87 -0
- package/dist/sitemaps-POPZJTAX.js.map +1 -0
- package/dist/sites-262H6LM4.js +101 -0
- package/dist/sites-262H6LM4.js.map +1 -0
- package/dist/skills-6TQZLIMP.js +47 -0
- package/dist/skills-6TQZLIMP.js.map +1 -0
- package/dist/sources-QQNWQLUM.js +421 -0
- package/dist/sources-QQNWQLUM.js.map +1 -0
- package/dist/sources-UGMZFZ2E.js +30 -0
- package/dist/stale-QRO3M5R2.js +64 -0
- package/dist/stale-QRO3M5R2.js.map +1 -0
- package/dist/stats-NNXZMPZR.js +34 -0
- package/dist/status-NXGKJGH7.js +62 -0
- package/dist/status-NXGKJGH7.js.map +1 -0
- package/dist/sticker-4KMBSMP5.js +94 -0
- package/dist/sticker-4KMBSMP5.js.map +1 -0
- package/dist/stock-2YCDN3N6.js +179 -0
- package/dist/stock-2YCDN3N6.js.map +1 -0
- package/dist/studio-HUEBE6DS.js +49 -0
- package/dist/sync-CF7FVUQJ.js +54 -0
- package/dist/sync-CF7FVUQJ.js.map +1 -0
- package/dist/sync-RXS6BPLM.js +54 -0
- package/dist/sync-RXS6BPLM.js.map +1 -0
- package/dist/sync-ZSNUBYPM.js +265 -0
- package/dist/sync-ZSNUBYPM.js.map +1 -0
- package/dist/sync-definition-YBDM7D4M.js +54 -0
- package/dist/tag-manager-HREEYGVM.js +43 -0
- package/dist/tags-C65JB762.js +224 -0
- package/dist/tags-C65JB762.js.map +1 -0
- package/dist/tags-CMBKEXIZ.js +20 -0
- package/dist/tags-CMBKEXIZ.js.map +1 -0
- package/dist/tags-GFFQLLG2.js +20 -0
- package/dist/tags-GFFQLLG2.js.map +1 -0
- package/dist/tags-IJN2SPSM.js +20 -0
- package/dist/tags-IJN2SPSM.js.map +1 -0
- package/dist/tags-R3K35KTL.js +26 -0
- package/dist/targeting-constants-XJ2VOW7K.js +118 -0
- package/dist/targeting-constants-XJ2VOW7K.js.map +1 -0
- package/dist/targeting-criteria-IHBPLHSX.js +113 -0
- package/dist/targeting-criteria-IHBPLHSX.js.map +1 -0
- package/dist/targets-JH37NVJF.js +102 -0
- package/dist/targets-JH37NVJF.js.map +1 -0
- package/dist/templates-HXSHQ23T.js +178 -0
- package/dist/templates-HXSHQ23T.js.map +1 -0
- package/dist/testimonials-5QGCPZ6K.js +32 -0
- package/dist/top-companies-FJEFKVI7.js +108 -0
- package/dist/top-companies-FJEFKVI7.js.map +1 -0
- package/dist/translate-H7O5K3RC.js +457 -0
- package/dist/translate-H7O5K3RC.js.map +1 -0
- package/dist/triggers-SEOAAJSS.js +141 -0
- package/dist/triggers-SEOAAJSS.js.map +1 -0
- package/dist/tweets-ATP3FQAC.js +123 -0
- package/dist/tweets-ATP3FQAC.js.map +1 -0
- package/dist/unfollow-CBVPGPF7.js +46 -0
- package/dist/unfollow-CBVPGPF7.js.map +1 -0
- package/dist/unlink-UZDVSHBO.js +67 -0
- package/dist/unlink-UZDVSHBO.js.map +1 -0
- package/dist/unstage-4ZEULXEQ.js +95 -0
- package/dist/unstage-4ZEULXEQ.js.map +1 -0
- package/dist/unstage-CE5RRGM5.js +84 -0
- package/dist/unstage-CE5RRGM5.js.map +1 -0
- package/dist/update-DGZKEP6T.js +63 -0
- package/dist/update-DGZKEP6T.js.map +1 -0
- package/dist/update-JOS4ITAV.js +142 -0
- package/dist/update-JOS4ITAV.js.map +1 -0
- package/dist/update-JZ4I6WW7.js +98 -0
- package/dist/update-JZ4I6WW7.js.map +1 -0
- package/dist/update-ZXOG2V34.js +155 -0
- package/dist/update-ZXOG2V34.js.map +1 -0
- package/dist/upload-L5SYZB3X.js +150 -0
- package/dist/upload-L5SYZB3X.js.map +1 -0
- package/dist/upload-SSOPA7ZT.js +126 -0
- package/dist/upload-SSOPA7ZT.js.map +1 -0
- package/dist/upscale-YWRLFU22.js +109 -0
- package/dist/upscale-YWRLFU22.js.map +1 -0
- package/dist/url-options-QEWKRKZ3.js +127 -0
- package/dist/url-options-QEWKRKZ3.js.map +1 -0
- package/dist/url-params-OR5N5EWT.js +98 -0
- package/dist/url-params-OR5N5EWT.js.map +1 -0
- package/dist/use-UT2DIZOG.js +95 -0
- package/dist/use-UT2DIZOG.js.map +1 -0
- package/dist/validate-2PLHIP6I.js +90 -0
- package/dist/validate-2PLHIP6I.js.map +1 -0
- package/dist/variant-FLZJYGYL.js +338 -0
- package/dist/variant-FLZJYGYL.js.map +1 -0
- package/dist/videos-GIYDCCKR.js +39 -0
- package/dist/view-NPAG66QK.js +121 -0
- package/dist/view-NPAG66QK.js.map +1 -0
- package/dist/viewer-check-VN2JK2LW.js +70 -0
- package/dist/web-WUGLSULO.js +135 -0
- package/dist/web-WUGLSULO.js.map +1 -0
- package/dist/winners-I5BMATJZ.js +79 -0
- package/dist/winners-I5BMATJZ.js.map +1 -0
- package/dist/winning-ads-7QWEIMRU.js +62 -0
- package/dist/write-commands-ERKVRHTC.js +206 -0
- package/dist/write-commands-ERKVRHTC.js.map +1 -0
- package/dist/write-commands-SVJ43D7G.js +1015 -0
- package/dist/write-commands-SVJ43D7G.js.map +1 -0
- package/dist/write-commands-TAYGTJEZ.js +737 -0
- package/dist/write-commands-TAYGTJEZ.js.map +1 -0
- package/dist/write-commands-WTRSOSO3.js +713 -0
- package/dist/write-commands-WTRSOSO3.js.map +1 -0
- package/dist/x-OEAKQBB7.js +47 -0
- package/package.json +1 -1
- package/dist/account-5GT2BEST.js +0 -80
- package/dist/account-5GT2BEST.js.map +0 -1
- package/dist/account-S2RDGMMM.js +0 -81
- package/dist/account-S2RDGMMM.js.map +0 -1
- package/dist/account-YLZAL6W7.js +0 -50
- package/dist/account-YLZAL6W7.js.map +0 -1
- package/dist/account-writes-VBY7FJ7C.js +0 -67
- package/dist/account-writes-VBY7FJ7C.js.map +0 -1
- package/dist/accounts-4IIHAQGS.js +0 -116
- package/dist/accounts-4IIHAQGS.js.map +0 -1
- package/dist/accounts-E7TRNPFA.js +0 -115
- package/dist/accounts-E7TRNPFA.js.map +0 -1
- package/dist/accounts-GFJOGX7J.js +0 -613
- package/dist/accounts-GFJOGX7J.js.map +0 -1
- package/dist/accounts-INB4Z4LZ.js +0 -76
- package/dist/accounts-INB4Z4LZ.js.map +0 -1
- package/dist/accounts-NLL4QWKY.js +0 -78
- package/dist/accounts-NLL4QWKY.js.map +0 -1
- package/dist/actions-7XF5L4U3.js +0 -55
- package/dist/active-entities-IGQG5EZO.js +0 -104
- package/dist/active-entities-IGQG5EZO.js.map +0 -1
- package/dist/activities-MH4C4IVV.js +0 -75
- package/dist/activities-MH4C4IVV.js.map +0 -1
- package/dist/ad-group-writes-B64OBHQ4.js +0 -171
- package/dist/ad-group-writes-B64OBHQ4.js.map +0 -1
- package/dist/ad-groups-APCFB6SI.js +0 -69
- package/dist/ad-groups-APCFB6SI.js.map +0 -1
- package/dist/ad-writes-A7P772KD.js +0 -175
- package/dist/ad-writes-A7P772KD.js.map +0 -1
- package/dist/add-33WQDKGF.js +0 -106
- package/dist/add-33WQDKGF.js.map +0 -1
- package/dist/add-65OIGMD7.js +0 -99
- package/dist/add-65OIGMD7.js.map +0 -1
- package/dist/add-EW276CKL.js +0 -282
- package/dist/add-EW276CKL.js.map +0 -1
- package/dist/add-EXKVB5KR.js +0 -107
- package/dist/add-EXKVB5KR.js.map +0 -1
- package/dist/ads-A2HP6UVG.js +0 -114
- package/dist/ads-A2HP6UVG.js.map +0 -1
- package/dist/ads-H6NPLMNX.js +0 -78
- package/dist/ads-H6NPLMNX.js.map +0 -1
- package/dist/ads-IRE5RZCS.js +0 -40
- package/dist/adsets-UZJTGQQM.js +0 -153
- package/dist/adsets-UZJTGQQM.js.map +0 -1
- package/dist/advertisers-CFS2JAYJ.js +0 -113
- package/dist/advertisers-CFS2JAYJ.js.map +0 -1
- package/dist/advertisers-WQBPBK4D.js +0 -117
- package/dist/advertisers-WQBPBK4D.js.map +0 -1
- package/dist/analytics-L46XME7Y.js +0 -434
- package/dist/analytics-L46XME7Y.js.map +0 -1
- package/dist/analytics-UT7FQ6XA.js +0 -1959
- package/dist/analytics-UT7FQ6XA.js.map +0 -1
- package/dist/animate-S6ZU3723.js +0 -482
- package/dist/animate-S6ZU3723.js.map +0 -1
- package/dist/assign-XHHVXXOL.js +0 -79
- package/dist/assign-XHHVXXOL.js.map +0 -1
- package/dist/audience-size-6FR7WFVU.js +0 -95
- package/dist/audience-size-6FR7WFVU.js.map +0 -1
- package/dist/audiences-BN2LT7E6.js +0 -86
- package/dist/audiences-BN2LT7E6.js.map +0 -1
- package/dist/audiences-HQS6V7EV.js +0 -269
- package/dist/audiences-HQS6V7EV.js.map +0 -1
- package/dist/audiences-JVEXHN67.js +0 -79
- package/dist/audiences-JVEXHN67.js.map +0 -1
- package/dist/audit-7UDFEGZV.js +0 -152
- package/dist/audit-7UDFEGZV.js.map +0 -1
- package/dist/audit-YTRTNTAK.js +0 -89
- package/dist/audit-YTRTNTAK.js.map +0 -1
- package/dist/autocomplete-LAZ6FFG6.js +0 -108
- package/dist/autocomplete-LAZ6FFG6.js.map +0 -1
- package/dist/avatars-G54K55J3.js +0 -38
- package/dist/bid-pricing-EQKORHAA.js +0 -100
- package/dist/bid-pricing-EQKORHAA.js.map +0 -1
- package/dist/brand-ODTHWWFL.js +0 -22
- package/dist/brief-EA4DWOJW.js +0 -479
- package/dist/brief-EA4DWOJW.js.map +0 -1
- package/dist/businesses-QHNI7MSK.js +0 -54
- package/dist/businesses-QHNI7MSK.js.map +0 -1
- package/dist/campaign-groups-EJEGKHQD.js +0 -96
- package/dist/campaign-groups-EJEGKHQD.js.map +0 -1
- package/dist/campaign-writes-DZE43ZOC.js +0 -166
- package/dist/campaign-writes-DZE43ZOC.js.map +0 -1
- package/dist/campaign-writes-OX62FCEH.js +0 -171
- package/dist/campaign-writes-OX62FCEH.js.map +0 -1
- package/dist/campaigns-APRWHCGF.js +0 -111
- package/dist/campaigns-APRWHCGF.js.map +0 -1
- package/dist/campaigns-D2LYKUO2.js +0 -108
- package/dist/campaigns-D2LYKUO2.js.map +0 -1
- package/dist/campaigns-E3H4POUU.js +0 -77
- package/dist/campaigns-E3H4POUU.js.map +0 -1
- package/dist/campaigns-OPLRDMJW.js +0 -110
- package/dist/campaigns-OPLRDMJW.js.map +0 -1
- package/dist/canvas-M5HAG7VA.js +0 -46
- package/dist/capabilities-4Q4CMVIE.js +0 -146
- package/dist/capabilities-4Q4CMVIE.js.map +0 -1
- package/dist/cards-L37M7Q3L.js +0 -86
- package/dist/cards-L37M7Q3L.js.map +0 -1
- package/dist/catalog-HOWAUW2V.js +0 -67
- package/dist/catalog-HOWAUW2V.js.map +0 -1
- package/dist/catalogs-XBIQ4PNK.js +0 -129
- package/dist/catalogs-XBIQ4PNK.js.map +0 -1
- package/dist/changes-HCOPS4FF.js +0 -136
- package/dist/changes-HCOPS4FF.js.map +0 -1
- package/dist/chatgpt-PLKNBNVL.js +0 -47
- package/dist/chats-HELZHJO4.js +0 -264
- package/dist/chats-HELZHJO4.js.map +0 -1
- package/dist/chunk-3KQ5R3H7.js +0 -45
- package/dist/chunk-3KQ5R3H7.js.map +0 -1
- package/dist/chunk-4MU3U3SO.js +0 -103
- package/dist/chunk-4VKV3DNC.js +0 -23992
- package/dist/chunk-4VKV3DNC.js.map +0 -1
- package/dist/chunk-5HH4RGC4.js +0 -136
- package/dist/chunk-5HH4RGC4.js.map +0 -1
- package/dist/chunk-5NQIFCNX.js +0 -141
- package/dist/chunk-6CCDQO2F.js +0 -225
- package/dist/chunk-6CCDQO2F.js.map +0 -1
- package/dist/chunk-6FBZ5E6L.js +0 -96
- package/dist/chunk-6YWRJMGR.js +0 -309
- package/dist/chunk-73MCYA5Z.js +0 -310
- package/dist/chunk-7DQAVVUA.js +0 -130
- package/dist/chunk-7DQAVVUA.js.map +0 -1
- package/dist/chunk-A3PEJ3V3.js +0 -95
- package/dist/chunk-A57AHUNA.js +0 -28
- package/dist/chunk-ABELDLY3.js +0 -594
- package/dist/chunk-ABELDLY3.js.map +0 -1
- package/dist/chunk-AWICKT2B.js +0 -25
- package/dist/chunk-AYC2WM4P.js +0 -106
- package/dist/chunk-AYC2WM4P.js.map +0 -1
- package/dist/chunk-BDD2ILIT.js +0 -56
- package/dist/chunk-BSFTG66P.js +0 -2743
- package/dist/chunk-BSFTG66P.js.map +0 -1
- package/dist/chunk-BSUN6JMU.js +0 -215
- package/dist/chunk-CBEL3P22.js +0 -57
- package/dist/chunk-CSADPKPC.js +0 -161
- package/dist/chunk-CSADPKPC.js.map +0 -1
- package/dist/chunk-DPEQVHTX.js +0 -26
- package/dist/chunk-DQLBKU7G.js +0 -469
- package/dist/chunk-DQLBKU7G.js.map +0 -1
- package/dist/chunk-ECXNE6RJ.js +0 -622
- package/dist/chunk-EDFVATFW.js +0 -211
- package/dist/chunk-EDFVATFW.js.map +0 -1
- package/dist/chunk-EPK2GYLV.js +0 -214
- package/dist/chunk-EYO62URT.js +0 -172
- package/dist/chunk-F3WFP75M.js +0 -94
- package/dist/chunk-F6NJAHAZ.js +0 -19
- package/dist/chunk-F7HBCFUA.js +0 -188
- package/dist/chunk-FCTWXNRC.js +0 -365
- package/dist/chunk-FCTWXNRC.js.map +0 -1
- package/dist/chunk-FFZBW4CC.js +0 -297
- package/dist/chunk-FR345TDN.js +0 -577
- package/dist/chunk-FR345TDN.js.map +0 -1
- package/dist/chunk-FRVROFI6.js +0 -98
- package/dist/chunk-G32FXVQ6.js +0 -31
- package/dist/chunk-HA5D6US2.js +0 -26
- package/dist/chunk-HWWPDUZM.js +0 -217
- package/dist/chunk-IEULFYA2.js +0 -174
- package/dist/chunk-IEULFYA2.js.map +0 -1
- package/dist/chunk-IMZIECST.js +0 -830
- package/dist/chunk-IPF4P6ZQ.js +0 -392
- package/dist/chunk-IPF4P6ZQ.js.map +0 -1
- package/dist/chunk-IRHNWYDT.js +0 -106
- package/dist/chunk-JH7NHC5W.js +0 -169
- package/dist/chunk-JIHG6K7N.js +0 -30
- package/dist/chunk-JIHG6K7N.js.map +0 -1
- package/dist/chunk-JKDITP62.js +0 -1380
- package/dist/chunk-JKDITP62.js.map +0 -1
- package/dist/chunk-JMXBUIVI.js +0 -84
- package/dist/chunk-KHCN2QXV.js +0 -346
- package/dist/chunk-KHCN2QXV.js.map +0 -1
- package/dist/chunk-KY4MPR6R.js +0 -3155
- package/dist/chunk-KY4MPR6R.js.map +0 -1
- package/dist/chunk-L4DOL7L7.js +0 -125
- package/dist/chunk-L6PDFIND.js +0 -496
- package/dist/chunk-L6PDFIND.js.map +0 -1
- package/dist/chunk-L7HPNEKW.js +0 -304
- package/dist/chunk-L7HPNEKW.js.map +0 -1
- package/dist/chunk-LB3VYIS2.js +0 -141
- package/dist/chunk-LB3VYIS2.js.map +0 -1
- package/dist/chunk-LDVMMLRA.js +0 -106
- package/dist/chunk-LQ4HBQ2B.js +0 -433
- package/dist/chunk-LXUEWTHJ.js +0 -788
- package/dist/chunk-LXUEWTHJ.js.map +0 -1
- package/dist/chunk-LYZVLKRA.js +0 -175
- package/dist/chunk-MBKCUSMR.js +0 -6078
- package/dist/chunk-MBKCUSMR.js.map +0 -1
- package/dist/chunk-MPI3SWIT.js +0 -536
- package/dist/chunk-MPI3SWIT.js.map +0 -1
- package/dist/chunk-MXPFUDFR.js +0 -1024
- package/dist/chunk-MXPFUDFR.js.map +0 -1
- package/dist/chunk-N5SQSMMR.js +0 -229
- package/dist/chunk-N5SQSMMR.js.map +0 -1
- package/dist/chunk-NEONVKMJ.js +0 -455
- package/dist/chunk-NEONVKMJ.js.map +0 -1
- package/dist/chunk-NFSV3CDO.js +0 -6198
- package/dist/chunk-NFSV3CDO.js.map +0 -1
- package/dist/chunk-NGT6MARJ.js +0 -274
- package/dist/chunk-NGYKF4T6.js +0 -20
- package/dist/chunk-NMMKTPGI.js +0 -136
- package/dist/chunk-O4AXPEOE.js +0 -923
- package/dist/chunk-O4AXPEOE.js.map +0 -1
- package/dist/chunk-OPEMWO6C.js +0 -5096
- package/dist/chunk-OPEMWO6C.js.map +0 -1
- package/dist/chunk-OZLBLXTK.js +0 -74
- package/dist/chunk-PB4LQHL2.js +0 -4341
- package/dist/chunk-PB4LQHL2.js.map +0 -1
- package/dist/chunk-PDJZMQ7F.js +0 -316
- package/dist/chunk-PDJZMQ7F.js.map +0 -1
- package/dist/chunk-PNHDM76R.js +0 -74
- package/dist/chunk-PNHDM76R.js.map +0 -1
- package/dist/chunk-Q7UF4ERB.js +0 -74
- package/dist/chunk-QRXTDXMX.js +0 -129
- package/dist/chunk-QRXTDXMX.js.map +0 -1
- package/dist/chunk-QTERC4PG.js +0 -1700
- package/dist/chunk-QTERC4PG.js.map +0 -1
- package/dist/chunk-QYOPQRLI.js +0 -296
- package/dist/chunk-R34LJSPM.js +0 -42
- package/dist/chunk-R4ODZS43.js +0 -492
- package/dist/chunk-R4ODZS43.js.map +0 -1
- package/dist/chunk-RJAQEZVD.js +0 -23
- package/dist/chunk-RPFBZHHE.js +0 -55
- package/dist/chunk-SXRSLUW7.js +0 -454
- package/dist/chunk-T5RKIWPQ.js +0 -352
- package/dist/chunk-T5RKIWPQ.js.map +0 -1
- package/dist/chunk-TCSPJQ2X.js +0 -136
- package/dist/chunk-TD44SXQX.js +0 -58
- package/dist/chunk-TQAXOBKJ.js +0 -364
- package/dist/chunk-TQAXOBKJ.js.map +0 -1
- package/dist/chunk-TTFTS2SO.js +0 -131
- package/dist/chunk-UA5EUJXV.js +0 -51
- package/dist/chunk-W7OFLOZB.js +0 -46
- package/dist/chunk-WAQYXH2U.js +0 -76
- package/dist/chunk-WWD4PITU.js +0 -333
- package/dist/chunk-WZ5YRUQU.js +0 -12
- package/dist/chunk-WZ5YRUQU.js.map +0 -1
- package/dist/chunk-XEVVAGAG.js +0 -422
- package/dist/chunk-XEVVAGAG.js.map +0 -1
- package/dist/chunk-Y4JR4RDM.js +0 -74
- package/dist/chunk-YMOVI3WT.js +0 -382
- package/dist/chunk-YS6PCTPS.js +0 -96
- package/dist/chunk-YUP46PWY.js +0 -199
- package/dist/chunk-YUP46PWY.js.map +0 -1
- package/dist/chunk-Z4NYXXTP.js +0 -42
- package/dist/chunk-Z4NYXXTP.js.map +0 -1
- package/dist/chunk-Z5AUNK6P.js +0 -1709
- package/dist/chunk-Z5AUNK6P.js.map +0 -1
- package/dist/chunk-ZAFR46HG.js +0 -67
- package/dist/chunk-ZHW3O25C.js +0 -191
- package/dist/claim-CG2IMTHK.js +0 -199
- package/dist/claim-CG2IMTHK.js.map +0 -1
- package/dist/client-XKDFFS7O.js +0 -20
- package/dist/code-JWIOO2AJ.js +0 -78
- package/dist/code-JWIOO2AJ.js.map +0 -1
- package/dist/companies-LQN4HUUH.js +0 -196
- package/dist/companies-LQN4HUUH.js.map +0 -1
- package/dist/complete-MKB27QP7.js +0 -82
- package/dist/complete-MKB27QP7.js.map +0 -1
- package/dist/config-LJOEAYFZ.js +0 -89
- package/dist/config-LJOEAYFZ.js.map +0 -1
- package/dist/connect-ATGYJNG4.js +0 -37
- package/dist/content-Y2BJSXG6.js +0 -83
- package/dist/content-Y2BJSXG6.js.map +0 -1
- package/dist/conversation-EFNQM435.js +0 -94
- package/dist/conversation-EFNQM435.js.map +0 -1
- package/dist/conversion-report-EUSTSHPV.js +0 -126
- package/dist/conversion-report-EUSTSHPV.js.map +0 -1
- package/dist/conversion-upload-command-677OT5NZ.js +0 -432
- package/dist/conversion-upload-command-677OT5NZ.js.map +0 -1
- package/dist/conversion-writes-E7M6VHGB.js +0 -121
- package/dist/conversion-writes-E7M6VHGB.js.map +0 -1
- package/dist/conversions-BXZLEXHU.js +0 -136
- package/dist/conversions-BXZLEXHU.js.map +0 -1
- package/dist/conversions-FERAOXWG.js +0 -77
- package/dist/conversions-FERAOXWG.js.map +0 -1
- package/dist/countries-TKPX2GDH.js +0 -83
- package/dist/countries-TKPX2GDH.js.map +0 -1
- package/dist/create-HGMIWFVX.js +0 -132
- package/dist/create-HGMIWFVX.js.map +0 -1
- package/dist/create-LBJV3NPD.js +0 -209
- package/dist/create-LBJV3NPD.js.map +0 -1
- package/dist/create-QTPZ7PP7.js +0 -117
- package/dist/create-QTPZ7PP7.js.map +0 -1
- package/dist/create-SBIHEG25.js +0 -60
- package/dist/create-SBIHEG25.js.map +0 -1
- package/dist/creatives-CIOOFE3T.js +0 -88
- package/dist/creatives-CIOOFE3T.js.map +0 -1
- package/dist/creatives-MIUJAK4E.js +0 -49
- package/dist/creatives-MIUJAK4E.js.map +0 -1
- package/dist/creatives-QXR7QDXM.js +0 -183
- package/dist/creatives-QXR7QDXM.js.map +0 -1
- package/dist/credentials-CMVAKAUL.js +0 -1057
- package/dist/credentials-CMVAKAUL.js.map +0 -1
- package/dist/critique-LUB35ORK.js +0 -213
- package/dist/critique-LUB35ORK.js.map +0 -1
- package/dist/critique-XXCM7YAV.js +0 -1477
- package/dist/critique-XXCM7YAV.js.map +0 -1
- package/dist/crm-EGNVKQHB.js +0 -279
- package/dist/crm-EGNVKQHB.js.map +0 -1
- package/dist/crm-I6IQ5M55.js +0 -226
- package/dist/crm-I6IQ5M55.js.map +0 -1
- package/dist/crop-ES2IDPUL.js +0 -115
- package/dist/crop-ES2IDPUL.js.map +0 -1
- package/dist/currency-VFKYXFBM.js +0 -89
- package/dist/currency-VFKYXFBM.js.map +0 -1
- package/dist/custom-conversions-WPTEXOWR.js +0 -126
- package/dist/custom-conversions-WPTEXOWR.js.map +0 -1
- package/dist/customers-ACRYXALZ.js +0 -58
- package/dist/delete-3AHBFPQJ.js +0 -68
- package/dist/delete-3AHBFPQJ.js.map +0 -1
- package/dist/delete-E7WYQN2L.js +0 -73
- package/dist/delete-E7WYQN2L.js.map +0 -1
- package/dist/delete-EJCB5MHV.js +0 -71
- package/dist/delete-EJCB5MHV.js.map +0 -1
- package/dist/delete-J677F4BG.js +0 -64
- package/dist/delete-J677F4BG.js.map +0 -1
- package/dist/delete-LVQ7R6DI.js +0 -73
- package/dist/delete-LVQ7R6DI.js.map +0 -1
- package/dist/delete-U4K6NIOE.js +0 -55
- package/dist/delete-U4K6NIOE.js.map +0 -1
- package/dist/demographics-RY6R6VWA.js +0 -139
- package/dist/demographics-RY6R6VWA.js.map +0 -1
- package/dist/describe-N36XDO4P.js +0 -99
- package/dist/describe-N36XDO4P.js.map +0 -1
- package/dist/describe-Q5OAJDYH.js +0 -99
- package/dist/describe-Q5OAJDYH.js.map +0 -1
- package/dist/dimensions-YIWQVFTO.js +0 -103
- package/dist/dimensions-YIWQVFTO.js.map +0 -1
- package/dist/discard-UO4DJNP3.js +0 -67
- package/dist/discard-UO4DJNP3.js.map +0 -1
- package/dist/discover-IASOLBUQ.js +0 -173
- package/dist/discover-IASOLBUQ.js.map +0 -1
- package/dist/domain-QBF4TBGL.js +0 -100
- package/dist/domain-QBF4TBGL.js.map +0 -1
- package/dist/download-DKFYGXEH.js +0 -301
- package/dist/download-DKFYGXEH.js.map +0 -1
- package/dist/draft-5ZZOTJZR.js +0 -282
- package/dist/draft-5ZZOTJZR.js.map +0 -1
- package/dist/draft-DKMUTG4F.js +0 -104
- package/dist/draft-DKMUTG4F.js.map +0 -1
- package/dist/draft-FMOQUVPP.js +0 -219
- package/dist/draft-FMOQUVPP.js.map +0 -1
- package/dist/draft-KFXJCKCH.js +0 -234
- package/dist/draft-KFXJCKCH.js.map +0 -1
- package/dist/draft-KJ6SH67P.js +0 -101
- package/dist/draft-KJ6SH67P.js.map +0 -1
- package/dist/draft-QW7EYFFU.js +0 -329
- package/dist/draft-QW7EYFFU.js.map +0 -1
- package/dist/draft-URMXE4U4.js +0 -101
- package/dist/draft-URMXE4U4.js.map +0 -1
- package/dist/draft-ZU7MZLIT.js +0 -300
- package/dist/draft-ZU7MZLIT.js.map +0 -1
- package/dist/env-ODWJOKNV.js +0 -44
- package/dist/experiment-TUKKH6UJ.js +0 -1378
- package/dist/experiment-TUKKH6UJ.js.map +0 -1
- package/dist/export-WXFUVX6F.js +0 -170
- package/dist/export-WXFUVX6F.js.map +0 -1
- package/dist/extract-PY3J3WVF.js +0 -115
- package/dist/extract-PY3J3WVF.js.map +0 -1
- package/dist/facets-NUEIHCKA.js +0 -115
- package/dist/facets-NUEIHCKA.js.map +0 -1
- package/dist/favorites-JDFIYSV2.js +0 -180
- package/dist/favorites-JDFIYSV2.js.map +0 -1
- package/dist/feed-CYFNDBJS.js +0 -159
- package/dist/feed-CYFNDBJS.js.map +0 -1
- package/dist/feedback-E2P3NB7H.js +0 -68
- package/dist/feedback-E2P3NB7H.js.map +0 -1
- package/dist/feedback-record-IMCTEDOX.js +0 -137
- package/dist/feedback-record-IMCTEDOX.js.map +0 -1
- package/dist/fetch-ELSDT3NZ.js +0 -141
- package/dist/fetch-ELSDT3NZ.js.map +0 -1
- package/dist/fetch-NM7MD3CN.js +0 -172
- package/dist/fetch-NM7MD3CN.js.map +0 -1
- package/dist/find-HYMLZCKA.js +0 -136
- package/dist/find-HYMLZCKA.js.map +0 -1
- package/dist/fit-5WZ6NVSF.js +0 -44
- package/dist/flows-ZEUUIXCS.js +0 -246
- package/dist/flows-ZEUUIXCS.js.map +0 -1
- package/dist/follow-RGJ76HHD.js +0 -84
- package/dist/follow-RGJ76HHD.js.map +0 -1
- package/dist/follow-competitors-JMNOP2ZT.js +0 -133
- package/dist/follow-competitors-JMNOP2ZT.js.map +0 -1
- package/dist/following-5GINRDTL.js +0 -111
- package/dist/following-5GINRDTL.js.map +0 -1
- package/dist/fonts-7U7I2TWV.js +0 -27
- package/dist/forecast-PGDYFFKQ.js +0 -105
- package/dist/forecast-PGDYFFKQ.js.map +0 -1
- package/dist/funding-ED6PDKJF.js +0 -86
- package/dist/funding-ED6PDKJF.js.map +0 -1
- package/dist/funnel-IML4F5ZP.js +0 -838
- package/dist/funnel-IML4F5ZP.js.map +0 -1
- package/dist/ga4-QPEXE6YG.js +0 -55
- package/dist/generate-VVTQCJRI.js +0 -264
- package/dist/generate-VVTQCJRI.js.map +0 -1
- package/dist/get-CZSESEHU.js +0 -61
- package/dist/get-CZSESEHU.js.map +0 -1
- package/dist/get-DEGOS3R6.js +0 -63
- package/dist/get-DEGOS3R6.js.map +0 -1
- package/dist/get-L3ZGUJJB.js +0 -65
- package/dist/get-L3ZGUJJB.js.map +0 -1
- package/dist/get-NX5DGSRP.js +0 -65
- package/dist/get-NX5DGSRP.js.map +0 -1
- package/dist/get-TL6UET23.js +0 -56
- package/dist/get-TL6UET23.js.map +0 -1
- package/dist/get-UNZMYRB6.js +0 -80
- package/dist/get-UNZMYRB6.js.map +0 -1
- package/dist/get-ZVRRZDUU.js +0 -94
- package/dist/get-ZVRRZDUU.js.map +0 -1
- package/dist/gif-MNBSPA64.js +0 -96
- package/dist/gif-MNBSPA64.js.map +0 -1
- package/dist/google-C2Z4XWRL.js +0 -1866
- package/dist/google-C2Z4XWRL.js.map +0 -1
- package/dist/google-LJSSLBP3.js +0 -138
- package/dist/google-LJSSLBP3.js.map +0 -1
- package/dist/group-7BGYA6LK.js +0 -44
- package/dist/group-7BGYA6LK.js.map +0 -1
- package/dist/group-MPYAKBH5.js +0 -44
- package/dist/group-MPYAKBH5.js.map +0 -1
- package/dist/gsc-LC5ADBA3.js +0 -30
- package/dist/history-GPQE2ZYR.js +0 -68
- package/dist/history-GPQE2ZYR.js.map +0 -1
- package/dist/history-XTSLGMK6.js +0 -135
- package/dist/history-XTSLGMK6.js.map +0 -1
- package/dist/hubspot-GPTEZD3A.js +0 -781
- package/dist/hubspot-GPTEZD3A.js.map +0 -1
- package/dist/icon-YKMRIU7A.js +0 -139
- package/dist/icon-YKMRIU7A.js.map +0 -1
- package/dist/ideas-NEBJBIBM.js +0 -31
- package/dist/images-ASWWS5TH.js +0 -90
- package/dist/improve-VXDJGXTG.js +0 -88
- package/dist/improve-VXDJGXTG.js.map +0 -1
- package/dist/ingest-AW37RWJN.js +0 -109
- package/dist/ingest-AW37RWJN.js.map +0 -1
- package/dist/ingest-X7UPOCKP.js +0 -24
- package/dist/insights-MHUV75RQ.js +0 -424
- package/dist/insights-MHUV75RQ.js.map +0 -1
- package/dist/insights-NLQXAW3F.js +0 -123
- package/dist/insights-NLQXAW3F.js.map +0 -1
- package/dist/inspect-TXVKPBAR.js +0 -191
- package/dist/inspect-TXVKPBAR.js.map +0 -1
- package/dist/inspiration-64DY3QWN.js +0 -53
- package/dist/intent-3HY6DRHW.js +0 -96
- package/dist/intent-3HY6DRHW.js.map +0 -1
- package/dist/job-L73KC4TC.js +0 -203
- package/dist/job-L73KC4TC.js.map +0 -1
- package/dist/job-create-LR3EHWKO.js +0 -110
- package/dist/job-create-LR3EHWKO.js.map +0 -1
- package/dist/job-status-MSL4EAJT.js +0 -75
- package/dist/job-status-MSL4EAJT.js.map +0 -1
- package/dist/keep-XUATLR5B.js +0 -80
- package/dist/keep-XUATLR5B.js.map +0 -1
- package/dist/keyword-gap-DJAYVD4U.js +0 -131
- package/dist/keyword-gap-DJAYVD4U.js.map +0 -1
- package/dist/keyword-metrics-4FEFFTQO.js +0 -198
- package/dist/keyword-metrics-4FEFFTQO.js.map +0 -1
- package/dist/keywords-for-site-HIMEQY63.js +0 -125
- package/dist/keywords-for-site-HIMEQY63.js.map +0 -1
- package/dist/landing-KU3ILVB3.js +0 -28
- package/dist/landing-KU3ILVB3.js.map +0 -1
- package/dist/languages-4QYK5DMW.js +0 -56
- package/dist/languages-4QYK5DMW.js.map +0 -1
- package/dist/languages-L5E7WS77.js +0 -41
- package/dist/languages-L5E7WS77.js.map +0 -1
- package/dist/layerize-YAVLAXYM.js +0 -192
- package/dist/layerize-YAVLAXYM.js.map +0 -1
- package/dist/leads-DR3EK77T.js +0 -91
- package/dist/leads-DR3EK77T.js.map +0 -1
- package/dist/leads-PFPQOCBR.js +0 -286
- package/dist/leads-PFPQOCBR.js.map +0 -1
- package/dist/learn-D4D75X2Y.js +0 -204
- package/dist/library-E2SJS7PT.js +0 -111
- package/dist/library-E2SJS7PT.js.map +0 -1
- package/dist/lighthouse-QMECKX4R.js +0 -76
- package/dist/lighthouse-QMECKX4R.js.map +0 -1
- package/dist/line-item-writes-XMDA7AZQ.js +0 -209
- package/dist/line-item-writes-XMDA7AZQ.js.map +0 -1
- package/dist/line-items-YGKTYKVE.js +0 -104
- package/dist/line-items-YGKTYKVE.js.map +0 -1
- package/dist/link-AOB3WGGN.js +0 -65
- package/dist/link-AOB3WGGN.js.map +0 -1
- package/dist/linkedin-WRJNY6NY.js +0 -1002
- package/dist/linkedin-WRJNY6NY.js.map +0 -1
- package/dist/list-66VKYGKM.js +0 -52
- package/dist/list-66VKYGKM.js.map +0 -1
- package/dist/list-6DZWRLDN.js +0 -59
- package/dist/list-6DZWRLDN.js.map +0 -1
- package/dist/list-6KJWGPPS.js +0 -67
- package/dist/list-6KJWGPPS.js.map +0 -1
- package/dist/list-GXCKA2AN.js +0 -153
- package/dist/list-GXCKA2AN.js.map +0 -1
- package/dist/list-KNHZPT7L.js +0 -65
- package/dist/list-KNHZPT7L.js.map +0 -1
- package/dist/list-LPETG6A6.js +0 -78
- package/dist/list-LPETG6A6.js.map +0 -1
- package/dist/list-WHJNWHSZ.js +0 -53
- package/dist/list-WHJNWHSZ.js.map +0 -1
- package/dist/list-YV5Z2J6U.js +0 -305
- package/dist/list-YV5Z2J6U.js.map +0 -1
- package/dist/locations-4FZYKG2A.js +0 -68
- package/dist/locations-4FZYKG2A.js.map +0 -1
- package/dist/locations-W32YE2KS.js +0 -41
- package/dist/locations-W32YE2KS.js.map +0 -1
- package/dist/log-YVW46HL7.js +0 -94
- package/dist/log-YVW46HL7.js.map +0 -1
- package/dist/logo-7O7VW5R3.js +0 -19
- package/dist/lookup-Z2X5WAO6.js +0 -23
- package/dist/make-Q6BQ7LNT.js +0 -505
- package/dist/make-Q6BQ7LNT.js.map +0 -1
- package/dist/map-VZM5C6DA.js +0 -406
- package/dist/map-VZM5C6DA.js.map +0 -1
- package/dist/mcp-KSJDALG6.js +0 -478
- package/dist/mcp-KSJDALG6.js.map +0 -1
- package/dist/media-7P66TUIR.js +0 -15
- package/dist/media-JBQKYSRQ.js +0 -90
- package/dist/media-JBQKYSRQ.js.map +0 -1
- package/dist/media-sources-427U333M.js +0 -32
- package/dist/members-ABGEFALK.js +0 -46
- package/dist/members-ABGEFALK.js.map +0 -1
- package/dist/meta-JH4FHVNX.js +0 -69
- package/dist/metrics-ALSPX6EQ.js +0 -153
- package/dist/metrics-ALSPX6EQ.js.map +0 -1
- package/dist/models-7BM5BKXX.js +0 -157
- package/dist/models-7BM5BKXX.js.map +0 -1
- package/dist/normalize-DFK3DGGZ.js +0 -808
- package/dist/normalize-DFK3DGGZ.js.map +0 -1
- package/dist/normalize-NDR7YEQE.js +0 -140
- package/dist/normalize-NDR7YEQE.js.map +0 -1
- package/dist/options-G5VGH22X.js +0 -123
- package/dist/options-G5VGH22X.js.map +0 -1
- package/dist/output-ZLXBAA4O.js +0 -25
- package/dist/page-L7BBMINT.js +0 -107
- package/dist/page-L7BBMINT.js.map +0 -1
- package/dist/pages-NBV35ECG.js +0 -67
- package/dist/pages-NBV35ECG.js.map +0 -1
- package/dist/performance-SOMZNPIG.js +0 -25
- package/dist/pinterest-KXAZTRDP.js +0 -98
- package/dist/pinterest-KXAZTRDP.js.map +0 -1
- package/dist/pixels-DYWHXAJT.js +0 -109
- package/dist/pixels-DYWHXAJT.js.map +0 -1
- package/dist/pixels-UMS2QBUG.js +0 -61
- package/dist/pixels-UMS2QBUG.js.map +0 -1
- package/dist/preview-C5FER5SU.js +0 -170
- package/dist/preview-C5FER5SU.js.map +0 -1
- package/dist/promoted-tweet-writes-3PECZLQA.js +0 -181
- package/dist/promoted-tweet-writes-3PECZLQA.js.map +0 -1
- package/dist/promoted-tweets-GMV6WIWV.js +0 -120
- package/dist/promoted-tweets-GMV6WIWV.js.map +0 -1
- package/dist/properties-YAJQF577.js +0 -102
- package/dist/properties-YAJQF577.js.map +0 -1
- package/dist/publish-5WDUTTG5.js +0 -355
- package/dist/publish-5WDUTTG5.js.map +0 -1
- package/dist/query-TBWL52JI.js +0 -1342
- package/dist/query-TBWL52JI.js.map +0 -1
- package/dist/query-VESQSTQI.js +0 -237
- package/dist/query-VESQSTQI.js.map +0 -1
- package/dist/query-XZQSY62P.js +0 -248
- package/dist/query-XZQSY62P.js.map +0 -1
- package/dist/read-UMAWDVKX.js +0 -141
- package/dist/read-UMAWDVKX.js.map +0 -1
- package/dist/reddit-OPHQFRRC.js +0 -27
- package/dist/refresh-U56RE7DI.js +0 -96
- package/dist/refresh-U56RE7DI.js.map +0 -1
- package/dist/release-P66DYNKQ.js +0 -61
- package/dist/release-P66DYNKQ.js.map +0 -1
- package/dist/relevant-pages-DSQQU6F7.js +0 -100
- package/dist/relevant-pages-DSQQU6F7.js.map +0 -1
- package/dist/remove-GRLXSDZC.js +0 -50
- package/dist/remove-GRLXSDZC.js.map +0 -1
- package/dist/remove-IRIP4OKM.js +0 -52
- package/dist/remove-IRIP4OKM.js.map +0 -1
- package/dist/reopen-PMIO7NJJ.js +0 -65
- package/dist/reopen-PMIO7NJJ.js.map +0 -1
- package/dist/rerun-V4O6TKBY.js +0 -84
- package/dist/rerun-V4O6TKBY.js.map +0 -1
- package/dist/research-MG3MESKH.js +0 -59
- package/dist/research-RFPBKIVP.js +0 -228
- package/dist/research-RFPBKIVP.js.map +0 -1
- package/dist/reset-3HKXFAV7.js +0 -56
- package/dist/reset-3HKXFAV7.js.map +0 -1
- package/dist/reset-LQZA3CIB.js +0 -56
- package/dist/reset-LQZA3CIB.js.map +0 -1
- package/dist/resolve-H33CQAY4.js +0 -122
- package/dist/resolve-H33CQAY4.js.map +0 -1
- package/dist/retry-6F3YAVYQ.js +0 -64
- package/dist/retry-6F3YAVYQ.js.map +0 -1
- package/dist/retry-QWD3HWFP.js +0 -62
- package/dist/retry-QWD3HWFP.js.map +0 -1
- package/dist/retry-failed-7OAJ5TMD.js +0 -47
- package/dist/retry-failed-7OAJ5TMD.js.map +0 -1
- package/dist/run-CGZIVYLV.js +0 -67
- package/dist/run-CGZIVYLV.js.map +0 -1
- package/dist/run-PZF26R6H.js +0 -59
- package/dist/scaffold-ad-AI6R4GDU.js +0 -1458
- package/dist/scaffold-ad-AI6R4GDU.js.map +0 -1
- package/dist/scaffold-static-ad-T7ZDHRB3.js +0 -944
- package/dist/scaffold-static-ad-T7ZDHRB3.js.map +0 -1
- package/dist/scaffold-video-R24U2WC7.js +0 -840
- package/dist/scaffold-video-R24U2WC7.js.map +0 -1
- package/dist/schedule-BK44B77G.js +0 -68
- package/dist/schedule-BK44B77G.js.map +0 -1
- package/dist/schedule-F2EEY4UK.js +0 -63
- package/dist/schedule-F2EEY4UK.js.map +0 -1
- package/dist/scheduled-agents-CIEAOWM6.js +0 -49
- package/dist/schema-3B6FDPBF.js +0 -131
- package/dist/schema-3B6FDPBF.js.map +0 -1
- package/dist/schema-4FOZ5W35.js +0 -65
- package/dist/schema-4FOZ5W35.js.map +0 -1
- package/dist/scrape-P46M2J43.js +0 -2243
- package/dist/scrape-P46M2J43.js.map +0 -1
- package/dist/screenshot-6F7G3LN5.js +0 -104
- package/dist/screenshot-6F7G3LN5.js.map +0 -1
- package/dist/search-23LREBOG.js +0 -94
- package/dist/search-23LREBOG.js.map +0 -1
- package/dist/search-DNYAA6TT.js +0 -176
- package/dist/search-DNYAA6TT.js.map +0 -1
- package/dist/search-FORHMB7P.js +0 -27
- package/dist/search-KQMPPO3X.js +0 -226
- package/dist/search-KQMPPO3X.js.map +0 -1
- package/dist/search-X4AKUB2K.js +0 -93
- package/dist/search-X4AKUB2K.js.map +0 -1
- package/dist/seeds-K4CHZ2HU.js +0 -103
- package/dist/seeds-K4CHZ2HU.js.map +0 -1
- package/dist/select-52K6KZGY.js +0 -95
- package/dist/sends-UH2MZGCD.js +0 -310
- package/dist/sends-UH2MZGCD.js.map +0 -1
- package/dist/sequences-BXGO3NPA.js +0 -148
- package/dist/sequences-BXGO3NPA.js.map +0 -1
- package/dist/set-prompt-3IXP42AK.js +0 -186
- package/dist/set-prompt-3IXP42AK.js.map +0 -1
- package/dist/setup-links-OV6ALAUU.js +0 -143
- package/dist/setup-links-OV6ALAUU.js.map +0 -1
- package/dist/shared-VMV44VPB.js +0 -32
- package/dist/site-MQ5ORTKV.js +0 -179
- package/dist/site-MQ5ORTKV.js.map +0 -1
- package/dist/sitemaps-LKCTG2WM.js +0 -88
- package/dist/sitemaps-LKCTG2WM.js.map +0 -1
- package/dist/sites-YHUF7G4Z.js +0 -102
- package/dist/sites-YHUF7G4Z.js.map +0 -1
- package/dist/skills-CG674XHN.js +0 -49
- package/dist/skills-CG674XHN.js.map +0 -1
- package/dist/sources-44THTN2Y.js +0 -422
- package/dist/sources-44THTN2Y.js.map +0 -1
- package/dist/sources-BQNCLGWT.js +0 -30
- package/dist/stale-JGLP7BAC.js +0 -63
- package/dist/stale-JGLP7BAC.js.map +0 -1
- package/dist/stats-TO3J2FU6.js +0 -34
- package/dist/status-NJ3SMBGS.js +0 -64
- package/dist/status-NJ3SMBGS.js.map +0 -1
- package/dist/sticker-YBOWSWMR.js +0 -96
- package/dist/sticker-YBOWSWMR.js.map +0 -1
- package/dist/stock-E6NMDSVI.js +0 -181
- package/dist/stock-E6NMDSVI.js.map +0 -1
- package/dist/studio-LHH62SZC.js +0 -49
- package/dist/sync-2R5UKTHN.js +0 -56
- package/dist/sync-2R5UKTHN.js.map +0 -1
- package/dist/sync-AZRR5JNS.js +0 -266
- package/dist/sync-AZRR5JNS.js.map +0 -1
- package/dist/sync-ML7E5J22.js +0 -56
- package/dist/sync-ML7E5J22.js.map +0 -1
- package/dist/sync-definition-LBPI7P5F.js +0 -48
- package/dist/tag-manager-D3YNI7JG.js +0 -43
- package/dist/tags-BYGKXDDS.js +0 -21
- package/dist/tags-BYGKXDDS.js.map +0 -1
- package/dist/tags-OOQV4G2Y.js +0 -26
- package/dist/tags-TKYXWGN4.js +0 -21
- package/dist/tags-TKYXWGN4.js.map +0 -1
- package/dist/tags-V732MEES.js +0 -226
- package/dist/tags-V732MEES.js.map +0 -1
- package/dist/tags-YLC46IXM.js +0 -21
- package/dist/tags-YLC46IXM.js.map +0 -1
- package/dist/targeting-constants-XT56MOGP.js +0 -119
- package/dist/targeting-constants-XT56MOGP.js.map +0 -1
- package/dist/targeting-criteria-24X3IIJS.js +0 -114
- package/dist/targeting-criteria-24X3IIJS.js.map +0 -1
- package/dist/targets-AKAN2HFY.js +0 -104
- package/dist/targets-AKAN2HFY.js.map +0 -1
- package/dist/templates-7MRVQTB2.js +0 -180
- package/dist/templates-7MRVQTB2.js.map +0 -1
- package/dist/testimonials-OIZMXEYZ.js +0 -32
- package/dist/top-companies-3IG5FRQ2.js +0 -109
- package/dist/top-companies-3IG5FRQ2.js.map +0 -1
- package/dist/triggers-ZHNWHJG4.js +0 -143
- package/dist/triggers-ZHNWHJG4.js.map +0 -1
- package/dist/tweets-V5R5DUA2.js +0 -124
- package/dist/tweets-V5R5DUA2.js.map +0 -1
- package/dist/unfollow-RYDJDDAV.js +0 -48
- package/dist/unfollow-RYDJDDAV.js.map +0 -1
- package/dist/unlink-CS7QNOU2.js +0 -68
- package/dist/unlink-CS7QNOU2.js.map +0 -1
- package/dist/unstage-DDZ5F2Z6.js +0 -86
- package/dist/unstage-DDZ5F2Z6.js.map +0 -1
- package/dist/unstage-KPLOFKU5.js +0 -96
- package/dist/unstage-KPLOFKU5.js.map +0 -1
- package/dist/update-ASY63WIK.js +0 -157
- package/dist/update-ASY63WIK.js.map +0 -1
- package/dist/update-HA5IQCJ2.js +0 -99
- package/dist/update-HA5IQCJ2.js.map +0 -1
- package/dist/update-R3VD5DC3.js +0 -143
- package/dist/update-R3VD5DC3.js.map +0 -1
- package/dist/update-WMCBSNSD.js +0 -64
- package/dist/update-WMCBSNSD.js.map +0 -1
- package/dist/upload-ADEYBWTV.js +0 -152
- package/dist/upload-ADEYBWTV.js.map +0 -1
- package/dist/upload-WBNPIOVR.js +0 -128
- package/dist/upload-WBNPIOVR.js.map +0 -1
- package/dist/upscale-WYTZPUIA.js +0 -111
- package/dist/upscale-WYTZPUIA.js.map +0 -1
- package/dist/url-options-DOCH5AWX.js +0 -128
- package/dist/url-options-DOCH5AWX.js.map +0 -1
- package/dist/url-params-IYTU3MVV.js +0 -99
- package/dist/url-params-IYTU3MVV.js.map +0 -1
- package/dist/use-RGJMULXG.js +0 -97
- package/dist/use-RGJMULXG.js.map +0 -1
- package/dist/validate-T22BKIFK.js +0 -89
- package/dist/validate-T22BKIFK.js.map +0 -1
- package/dist/variant-3DBL2RDV.js +0 -339
- package/dist/variant-3DBL2RDV.js.map +0 -1
- package/dist/videos-7SB2CLZW.js +0 -39
- package/dist/view-5QDCP7HF.js +0 -123
- package/dist/view-5QDCP7HF.js.map +0 -1
- package/dist/viewer-check-NGIMC2BR.js +0 -66
- package/dist/web-IRWXTGE2.js +0 -136
- package/dist/web-IRWXTGE2.js.map +0 -1
- package/dist/winners-JSI4N26Y.js +0 -81
- package/dist/winners-JSI4N26Y.js.map +0 -1
- package/dist/winning-ads-XQZ6HEX5.js +0 -62
- package/dist/write-commands-3C3TV2YC.js +0 -714
- package/dist/write-commands-3C3TV2YC.js.map +0 -1
- package/dist/write-commands-7WIG5UDU.js +0 -731
- package/dist/write-commands-7WIG5UDU.js.map +0 -1
- package/dist/write-commands-G7HHGAEE.js +0 -1009
- package/dist/write-commands-G7HHGAEE.js.map +0 -1
- package/dist/write-commands-ROQSZFXR.js +0 -207
- package/dist/write-commands-ROQSZFXR.js.map +0 -1
- package/dist/x-BLTCL6L3.js +0 -47
- /package/dist/{actions-7XF5L4U3.js.map → actions-PEI6ZQAG.js.map} +0 -0
- /package/dist/{ads-IRE5RZCS.js.map → ads-TJ7ACFHG.js.map} +0 -0
- /package/dist/{avatars-G54K55J3.js.map → avatars-2UQJXHPV.js.map} +0 -0
- /package/dist/{brand-ODTHWWFL.js.map → brand-XBABUT52.js.map} +0 -0
- /package/dist/{canvas-M5HAG7VA.js.map → canvas-KEXE5P6S.js.map} +0 -0
- /package/dist/{chatgpt-PLKNBNVL.js.map → chatgpt-7W75X3ER.js.map} +0 -0
- /package/dist/{chunk-OZLBLXTK.js.map → chunk-2TK4DEOE.js.map} +0 -0
- /package/dist/{chunk-ZHW3O25C.js.map → chunk-4NDCTLI5.js.map} +0 -0
- /package/dist/{chunk-5NQIFCNX.js.map → chunk-5ARG3CQG.js.map} +0 -0
- /package/dist/{chunk-ZAFR46HG.js.map → chunk-5Z2KSVIV.js.map} +0 -0
- /package/dist/{chunk-EYO62URT.js.map → chunk-6B7VKFS4.js.map} +0 -0
- /package/dist/{chunk-W7OFLOZB.js.map → chunk-6G5K6ZC6.js.map} +0 -0
- /package/dist/{chunk-RJAQEZVD.js.map → chunk-73QKIIIR.js.map} +0 -0
- /package/dist/{chunk-YS6PCTPS.js.map → chunk-75FDTDLH.js.map} +0 -0
- /package/dist/{chunk-NGT6MARJ.js.map → chunk-7J6EHOH6.js.map} +0 -0
- /package/dist/{chunk-TD44SXQX.js.map → chunk-7OFNN4CT.js.map} +0 -0
- /package/dist/{chunk-LDVMMLRA.js.map → chunk-C6U6UDHJ.js.map} +0 -0
- /package/dist/{chunk-6FBZ5E6L.js.map → chunk-DIY6QR3E.js.map} +0 -0
- /package/dist/{chunk-F3WFP75M.js.map → chunk-EFSYTROP.js.map} +0 -0
- /package/dist/{chunk-4MU3U3SO.js.map → chunk-FEXDI4NM.js.map} +0 -0
- /package/dist/{chunk-YMOVI3WT.js.map → chunk-FHXIEMCG.js.map} +0 -0
- /package/dist/{chunk-R34LJSPM.js.map → chunk-H26L3OQY.js.map} +0 -0
- /package/dist/{chunk-NMMKTPGI.js.map → chunk-HIPDMQZ6.js.map} +0 -0
- /package/dist/{chunk-FRVROFI6.js.map → chunk-HYCIBVDW.js.map} +0 -0
- /package/dist/{chunk-BSUN6JMU.js.map → chunk-IFWP3ZDO.js.map} +0 -0
- /package/dist/{chunk-LQ4HBQ2B.js.map → chunk-IXKEWS7X.js.map} +0 -0
- /package/dist/{chunk-DPEQVHTX.js.map → chunk-JERXV5A3.js.map} +0 -0
- /package/dist/{chunk-TCSPJQ2X.js.map → chunk-KLNKEVIY.js.map} +0 -0
- /package/dist/{chunk-JMXBUIVI.js.map → chunk-KNY76UGC.js.map} +0 -0
- /package/dist/{chunk-IMZIECST.js.map → chunk-KWAOTV7F.js.map} +0 -0
- /package/dist/{chunk-A57AHUNA.js.map → chunk-LERTEZST.js.map} +0 -0
- /package/dist/{chunk-73MCYA5Z.js.map → chunk-LL2CD5WU.js.map} +0 -0
- /package/dist/{chunk-UA5EUJXV.js.map → chunk-LO6GEJ4Z.js.map} +0 -0
- /package/dist/{chunk-IRHNWYDT.js.map → chunk-LS5MTRFI.js.map} +0 -0
- /package/dist/{chunk-F7HBCFUA.js.map → chunk-LZ73CZGP.js.map} +0 -0
- /package/dist/{chunk-NGYKF4T6.js.map → chunk-MELOSESI.js.map} +0 -0
- /package/dist/{chunk-SXRSLUW7.js.map → chunk-NAWWC5I3.js.map} +0 -0
- /package/dist/{chunk-FFZBW4CC.js.map → chunk-NPE7EWBE.js.map} +0 -0
- /package/dist/{chunk-JH7NHC5W.js.map → chunk-OKG6GX2F.js.map} +0 -0
- /package/dist/{chunk-WAQYXH2U.js.map → chunk-PBA3YCZA.js.map} +0 -0
- /package/dist/{chunk-AWICKT2B.js.map → chunk-PWGWMIIJ.js.map} +0 -0
- /package/dist/{chunk-F6NJAHAZ.js.map → chunk-QHLB5V7J.js.map} +0 -0
- /package/dist/{chunk-TTFTS2SO.js.map → chunk-QJE6ZYGI.js.map} +0 -0
- /package/dist/{chunk-Y4JR4RDM.js.map → chunk-QSN5MZGS.js.map} +0 -0
- /package/dist/{chunk-HWWPDUZM.js.map → chunk-RSW6QJPH.js.map} +0 -0
- /package/dist/{chunk-LYZVLKRA.js.map → chunk-SBMIQDCX.js.map} +0 -0
- /package/dist/{chunk-BDD2ILIT.js.map → chunk-STIB5DR5.js.map} +0 -0
- /package/dist/{chunk-A3PEJ3V3.js.map → chunk-TBEUMOEL.js.map} +0 -0
- /package/dist/{chunk-RPFBZHHE.js.map → chunk-TD2P4HBP.js.map} +0 -0
- /package/dist/{chunk-CBEL3P22.js.map → chunk-VBHDZSI5.js.map} +0 -0
- /package/dist/{chunk-6YWRJMGR.js.map → chunk-VFIOJD5M.js.map} +0 -0
- /package/dist/{chunk-QYOPQRLI.js.map → chunk-VVZBBKRC.js.map} +0 -0
- /package/dist/{chunk-G32FXVQ6.js.map → chunk-W3B4BHQU.js.map} +0 -0
- /package/dist/{chunk-Q7UF4ERB.js.map → chunk-WS2GMOSG.js.map} +0 -0
- /package/dist/{chunk-EPK2GYLV.js.map → chunk-XBOK23HI.js.map} +0 -0
- /package/dist/{chunk-HA5D6US2.js.map → chunk-XG3XCHN6.js.map} +0 -0
- /package/dist/{chunk-L4DOL7L7.js.map → chunk-XL3BMSYG.js.map} +0 -0
- /package/dist/{chunk-ECXNE6RJ.js.map → chunk-XYMPS526.js.map} +0 -0
- /package/dist/{chunk-WWD4PITU.js.map → chunk-YBMVHGY3.js.map} +0 -0
- /package/dist/{client-XKDFFS7O.js.map → client-VHN32ZRE.js.map} +0 -0
- /package/dist/{connect-ATGYJNG4.js.map → connect-TA5W6YGW.js.map} +0 -0
- /package/dist/{customers-ACRYXALZ.js.map → customers-4RJGRR2Y.js.map} +0 -0
- /package/dist/{env-ODWJOKNV.js.map → env-KIP2J2UB.js.map} +0 -0
- /package/dist/{fit-5WZ6NVSF.js.map → fit-KXHYKIA4.js.map} +0 -0
- /package/dist/{fonts-7U7I2TWV.js.map → fonts-NTOQS2KU.js.map} +0 -0
- /package/dist/{ga4-QPEXE6YG.js.map → ga4-UDQ2HA2J.js.map} +0 -0
- /package/dist/{gsc-LC5ADBA3.js.map → gsc-P3QYGDV2.js.map} +0 -0
- /package/dist/{ideas-NEBJBIBM.js.map → ideas-PU7IAX6F.js.map} +0 -0
- /package/dist/{images-ASWWS5TH.js.map → images-QI2HTX6B.js.map} +0 -0
- /package/dist/{ingest-X7UPOCKP.js.map → ingest-BYJNFOOT.js.map} +0 -0
- /package/dist/{inspiration-64DY3QWN.js.map → inspiration-I4MMKAWA.js.map} +0 -0
- /package/dist/{learn-D4D75X2Y.js.map → learn-HZU3QWNN.js.map} +0 -0
- /package/dist/{logo-7O7VW5R3.js.map → logo-2IP663QO.js.map} +0 -0
- /package/dist/{lookup-Z2X5WAO6.js.map → lookup-XK45W2SH.js.map} +0 -0
- /package/dist/{media-7P66TUIR.js.map → media-M7E6V2XU.js.map} +0 -0
- /package/dist/{media-sources-427U333M.js.map → media-sources-3D246I3O.js.map} +0 -0
- /package/dist/{meta-JH4FHVNX.js.map → meta-EZ4SY25M.js.map} +0 -0
- /package/dist/{output-ZLXBAA4O.js.map → output-RAH3TSIL.js.map} +0 -0
- /package/dist/{performance-SOMZNPIG.js.map → performance-7LQQCEAW.js.map} +0 -0
- /package/dist/{reddit-OPHQFRRC.js.map → reddit-INGPFGP4.js.map} +0 -0
- /package/dist/{research-MG3MESKH.js.map → research-PA53M335.js.map} +0 -0
- /package/dist/{run-PZF26R6H.js.map → run-2IM2QOCI.js.map} +0 -0
- /package/dist/{scheduled-agents-CIEAOWM6.js.map → scheduled-agents-2NCGSD76.js.map} +0 -0
- /package/dist/{search-FORHMB7P.js.map → search-XUIVHGAY.js.map} +0 -0
- /package/dist/{select-52K6KZGY.js.map → select-ZWDEVAH2.js.map} +0 -0
- /package/dist/{shared-VMV44VPB.js.map → shared-HJDFNID4.js.map} +0 -0
- /package/dist/{sources-BQNCLGWT.js.map → sources-UGMZFZ2E.js.map} +0 -0
- /package/dist/{stats-TO3J2FU6.js.map → stats-NNXZMPZR.js.map} +0 -0
- /package/dist/{studio-LHH62SZC.js.map → studio-HUEBE6DS.js.map} +0 -0
- /package/dist/{sync-definition-LBPI7P5F.js.map → sync-definition-YBDM7D4M.js.map} +0 -0
- /package/dist/{tag-manager-D3YNI7JG.js.map → tag-manager-HREEYGVM.js.map} +0 -0
- /package/dist/{tags-OOQV4G2Y.js.map → tags-R3K35KTL.js.map} +0 -0
- /package/dist/{testimonials-OIZMXEYZ.js.map → testimonials-5QGCPZ6K.js.map} +0 -0
- /package/dist/{videos-7SB2CLZW.js.map → videos-GIYDCCKR.js.map} +0 -0
- /package/dist/{viewer-check-NGIMC2BR.js.map → viewer-check-VN2JK2LW.js.map} +0 -0
- /package/dist/{winning-ads-XQZ6HEX5.js.map → winning-ads-7QWEIMRU.js.map} +0 -0
- /package/dist/{x-BLTCL6L3.js.map → x-OEAKQBB7.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/commands/images/normalize.ts","../src/lib/image/color-changer.ts","../src/lib/image/image-processor.ts"],"sourcesContent":["import { defineCommand } from \"citty\";\nimport { type Color, parseHex } from \"../../lib/image/color-changer.ts\";\nimport { type ProcessingOptions, processImage, type ResizeOptions } from \"../../lib/image/image-processor.ts\";\nimport {\n atomicWrite,\n expandInputs,\n isDirectory,\n isRemoteUrl,\n readImageBuffer,\n resolveOutputPath,\n} from \"../../lib/image/io.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\n\nregisterSchema({\n command: \"images.normalize\",\n description:\n \"Normalize one or more local images: recolor, two-pass background removal, trim, and resize. Multi-fill SVG recolor preserves relative contrast. Declarative — describe the desired final state via flags; the pipeline runs the needed stages in order. Writes in-place by default. For upscaling, use 'baker images upscale <imageId>' after uploading.\",\n args: {\n files: {\n type: \"string\",\n description:\n \"Single path, glob (quote it), or comma-separated list. Commas are treated as separators — paths containing commas are not supported. Use 'logos/*.png', 'a.png,b.png', or 'logo.png'.\",\n required: true,\n },\n color: {\n type: \"string\",\n description: \"Recolor target as hex (e.g. '#FFFFFF', '#fff'). Omit to keep original colors.\",\n required: false,\n },\n \"remove-bg\": {\n type: \"boolean\",\n description:\n \"Two-pass background removal. Default true when --color is set, false otherwise. Idempotent on already-transparent input.\",\n required: false,\n },\n \"shrink-to-content\": {\n type: \"boolean\",\n description: \"Trim transparent borders after bg removal. Default true when --remove-bg is on.\",\n required: false,\n },\n height: {\n type: \"number\",\n description: \"Resize to N pixels tall, width auto (preserves aspect). Mutex with --size.\",\n required: false,\n },\n width: {\n type: \"number\",\n description: \"Resize to N pixels wide, height auto (preserves aspect). Mutex with --size.\",\n required: false,\n },\n size: {\n type: \"string\",\n description: \"Fit into a W×H box. Format 'WxH' (e.g. '200x200'). Mutex with --height/--width.\",\n required: false,\n },\n fit: {\n type: \"string\",\n description: \"Used with --size: 'contain' (default, letterbox transparent) or 'cover' (crop to fill).\",\n required: false,\n enum: [\"contain\", \"cover\"],\n },\n output: {\n type: \"string\",\n description: \"Output path. Default: in-place. With multiple inputs, must be a directory.\",\n required: false,\n },\n \"dry-run\": {\n type: \"boolean\",\n description: \"Resolve inputs + pipeline without writing any files.\",\n required: false,\n default: false,\n },\n },\n});\n\nclass ValidationError extends Error {\n constructor(message: string) {\n super(message);\n this.name = \"ValidationError\";\n }\n}\n\ninterface NormalizedArgs {\n options: ProcessingOptions;\n outputArg: string | undefined;\n dryRun: boolean;\n}\n\ninterface RawArgs {\n files?: string;\n color?: string;\n \"remove-bg\"?: boolean;\n \"shrink-to-content\"?: boolean;\n height?: number;\n width?: number;\n size?: string;\n fit?: string;\n output?: string;\n \"dry-run\"?: boolean;\n}\n\nfunction parseSize(raw: string): { width: number; height: number } {\n const match = /^(\\d+)x(\\d+)$/i.exec(raw.trim());\n if (!match || match.length < 3) {\n throw new ValidationError(`Invalid --size value \"${raw}\". Expected WxH (e.g. 200x200).`);\n }\n const [, w, h] = match;\n return { width: Number.parseInt(w ?? \"\", 10), height: Number.parseInt(h ?? \"\", 10) };\n}\n\nfunction parseResize(args: RawArgs): ResizeOptions | undefined {\n const hasSize = typeof args.size === \"string\" && args.size.length > 0;\n const hasHeight = typeof args.height === \"number\";\n const hasWidth = typeof args.width === \"number\";\n\n if (hasSize && (hasHeight || hasWidth)) {\n throw new ValidationError(\"--height/--width and --size are mutually exclusive\");\n }\n if (args.fit !== undefined && !hasSize) {\n throw new ValidationError(\"--fit requires --size\");\n }\n\n if (hasSize && typeof args.size === \"string\") {\n return {\n size: parseSize(args.size),\n fit: (args.fit ?? \"contain\") as \"contain\" | \"cover\",\n };\n }\n if (hasHeight || hasWidth) {\n return { width: args.width, height: args.height };\n }\n return undefined;\n}\n\nfunction parseColor(raw: string | undefined): Color | undefined {\n if (typeof raw !== \"string\" || raw.length === 0) return undefined;\n try {\n return parseHex(raw);\n } catch (err) {\n throw new ValidationError(err instanceof Error ? err.message : \"Invalid --color\");\n }\n}\n\nfunction buildOptions(args: RawArgs): NormalizedArgs {\n const resize = parseResize(args);\n const color = parseColor(args.color);\n\n const removeBackground = typeof args[\"remove-bg\"] === \"boolean\" ? args[\"remove-bg\"] : color !== undefined;\n const shrinkToContent = typeof args[\"shrink-to-content\"] === \"boolean\" ? args[\"shrink-to-content\"] : removeBackground;\n\n return {\n options: { color, removeBackground, shrinkToContent, resize },\n outputArg: typeof args.output === \"string\" && args.output.length > 0 ? args.output : undefined,\n dryRun: args[\"dry-run\"] === true,\n };\n}\n\nfunction colorToHex(color: Color | undefined): string | null {\n if (!color) return null;\n return `#${[color.r, color.g, color.b].map((n) => n.toString(16).padStart(2, \"0\")).join(\"\")}`;\n}\n\ninterface ProcessedFile {\n input: string;\n output: string;\n format: string;\n width: number;\n height: number;\n sizeBytes: number;\n stages: string[];\n}\n\nasync function processFile(\n inputPath: string,\n options: ProcessingOptions,\n outputArg: string | undefined,\n multipleInputs: boolean,\n): Promise<ProcessedFile> {\n const inputBuffer = await readImageBuffer(inputPath);\n const result = await processImage(inputBuffer, options);\n const newExt = result.format === \"png\" ? \".png\" : \".svg\";\n const outputPath = await resolveOutputPath(inputPath, outputArg, { multipleInputs, newExtension: newExt });\n await atomicWrite(outputPath, result.buffer);\n return {\n input: inputPath,\n output: outputPath,\n format: result.format,\n width: result.width,\n height: result.height,\n sizeBytes: result.buffer.length,\n stages: result.stages,\n };\n}\n\nasync function resolveInputs(spec: string): Promise<string[]> {\n const all = await expandInputs(spec);\n if (all.length === 0) {\n throw new ValidationError(`No files matched \"${spec}\"`);\n }\n const remote = all.filter(isRemoteUrl);\n if (remote.length > 0) {\n throw new ValidationError(\n \"Remote URLs are not supported by 'normalize'. Download the file first or use a local path.\",\n );\n }\n return all;\n}\n\nfunction emitDryRun(inputs: string[], normalized: NormalizedArgs): void {\n writeJson({\n ok: true,\n dryRun: true,\n operation: \"images.normalize\",\n params: {\n inputs,\n options: {\n color: colorToHex(normalized.options.color),\n removeBackground: normalized.options.removeBackground ?? false,\n shrinkToContent: normalized.options.shrinkToContent ?? false,\n resize: normalized.options.resize ?? null,\n },\n outputArg: normalized.outputArg ?? null,\n },\n });\n}\n\nfunction emitError(err: unknown): never {\n if (err instanceof ValidationError) {\n writeJson({ ok: false, error: { code: \"VALIDATION_ERROR\", message: err.message } });\n } else {\n const message = err instanceof Error ? err.message : \"Unexpected error\";\n writeJson({ ok: false, error: { code: \"IMAGE_PROCESSING_ERROR\", message } });\n }\n process.exit(1);\n}\n\nfunction coerceRawArgs(args: Record<string, unknown>): RawArgs {\n const num = (v: unknown): number | undefined => {\n if (typeof v === \"number\") return v;\n if (typeof v === \"string\" && v.length > 0) {\n const n = Number(v);\n return Number.isFinite(n) ? n : undefined;\n }\n return undefined;\n };\n const str = (v: unknown): string | undefined => (typeof v === \"string\" ? v : undefined);\n const bool = (v: unknown): boolean | undefined => (typeof v === \"boolean\" ? v : undefined);\n return {\n files: str(args.files),\n color: str(args.color),\n \"remove-bg\": bool(args[\"remove-bg\"]),\n \"shrink-to-content\": bool(args[\"shrink-to-content\"]),\n height: num(args.height),\n width: num(args.width),\n size: str(args.size),\n fit: str(args.fit),\n output: str(args.output),\n \"dry-run\": bool(args[\"dry-run\"]),\n };\n}\n\nexport const normalizeCommand = defineCommand({\n meta: {\n name: \"normalize\",\n description:\n 'Normalize logos / images: declarative recolor + bg removal + trim + resize. Operates on local files; writes in-place by default.\\n\\nExamples:\\n baker images normalize \"logos/*.png\" --color \\'#FFFFFF\\' --height 200\\n baker images normalize logo.png --remove-bg --shrink-to-content\\n baker images normalize \"a.png,b.png\" --size 200x200 --fit cover --output ./out',\n },\n args: {\n files: {\n type: \"positional\",\n description: \"Single path, glob (quote it), or comma-separated list\",\n required: false,\n },\n color: { type: \"string\", description: \"Recolor target as hex\", required: false },\n \"remove-bg\": { type: \"boolean\", description: \"Two-pass background removal\", required: false },\n \"shrink-to-content\": { type: \"boolean\", description: \"Trim transparent borders\", required: false },\n height: { type: \"string\", description: \"Resize to N px tall, width auto\", required: false },\n width: { type: \"string\", description: \"Resize to N px wide, height auto\", required: false },\n size: { type: \"string\", description: \"Fit into a WxH box (e.g. 200x200)\", required: false },\n fit: { type: \"string\", description: \"contain (default) or cover (with --size)\", required: false },\n output: { type: \"string\", description: \"Output path or directory\", required: false },\n \"dry-run\": { type: \"boolean\", description: \"Preview without writing\", required: false, default: false },\n },\n run: async ({ args }) => {\n try {\n const raw = coerceRawArgs(args);\n if (!raw.files) {\n throw new ValidationError(\"files argument is required\");\n }\n const inputs = await resolveInputs(raw.files);\n const normalized = buildOptions(raw);\n\n if (inputs.length > 1 && normalized.outputArg && !(await isDirectory(normalized.outputArg))) {\n throw new ValidationError(\n `--output must be an existing directory when processing multiple files (got \"${normalized.outputArg}\")`,\n );\n }\n\n if (normalized.dryRun) {\n emitDryRun(inputs, normalized);\n return;\n }\n\n const processed: ProcessedFile[] = [];\n for (const inputPath of inputs) {\n processed.push(await processFile(inputPath, normalized.options, normalized.outputArg, inputs.length > 1));\n }\n writeJson({ ok: true, data: { processed } });\n } catch (err) {\n emitError(err);\n }\n },\n});\n","import quantize from \"quantize\";\n\nexport interface Color {\n r: number;\n g: number;\n b: number;\n}\n\nexport const COLOR_RANGE_THRESHOLD = 15;\n\nconst HEX_RE = /^#?([0-9a-f]{3}|[0-9a-f]{6})$/i;\n\nexport function parseHex(hex: string): Color {\n const match = HEX_RE.exec(hex.trim());\n if (!match) {\n throw new Error(`Invalid hex color: \"${hex}\". Expected #RGB or #RRGGBB.`);\n }\n let body = match[1]!;\n if (body.length === 3) {\n body = body\n .split(\"\")\n .map((c) => c + c)\n .join(\"\");\n }\n return {\n r: Number.parseInt(body.slice(0, 2), 16),\n g: Number.parseInt(body.slice(2, 4), 16),\n b: Number.parseInt(body.slice(4, 6), 16),\n };\n}\n\nexport function colorDistance(color1: Color, color2: Color): number {\n const rDiff = color1.r - color2.r;\n const gDiff = color1.g - color2.g;\n const bDiff = color1.b - color2.b;\n return Math.sqrt(rDiff * rDiff + gDiff * gDiff + bDiff * bDiff);\n}\n\nexport function getDominantEdgeColor(data: Buffer, width: number, height: number): Color {\n const colorCount: Record<string, number> = {};\n\n function accumulateColor(i: number, j: number) {\n const idx = (i * width + j) * 4;\n const colorKey = `${data[idx]},${data[idx + 1]},${data[idx + 2]}`;\n colorCount[colorKey] = (colorCount[colorKey] ?? 0) + 1;\n }\n\n for (let j = 0; j < width; j++) {\n accumulateColor(0, j);\n accumulateColor(height - 1, j);\n }\n for (let i = 1; i < height - 1; i++) {\n accumulateColor(i, 0);\n accumulateColor(i, width - 1);\n }\n\n let maxCount = 0;\n let dominantColor: Color = { r: 0, g: 0, b: 0 };\n for (const key in colorCount) {\n const count = colorCount[key]!;\n if (count > maxCount) {\n maxCount = count;\n const parts = key.split(\",\").map(Number) as [number, number, number];\n dominantColor = { r: parts[0], g: parts[1], b: parts[2] };\n }\n }\n return dominantColor;\n}\n\nexport function hasTransparency(data: Buffer, threshold = 0.02): boolean {\n let transparentPixels = 0;\n let totalPixels = 0;\n for (let i = 3; i < data.length; i += 4) {\n totalPixels++;\n if (data[i]! < 255) {\n transparentPixels++;\n }\n }\n if (totalPixels === 0) return false;\n return transparentPixels / totalPixels > threshold;\n}\n\nfunction hasGradientColors(data: Buffer): boolean {\n const uniqueColors = new Set<string>();\n for (let i = 0; i < data.length; i += 4) {\n if (data[i + 3]! < 10) continue;\n uniqueColors.add(`${data[i]},${data[i + 1]},${data[i + 2]}`);\n }\n return uniqueColors.size > 50;\n}\n\nfunction removeIsolatedPixels(data: Buffer, width: number, height: number): Buffer {\n const result = Buffer.from(data);\n const offsets: [number, number][] = [\n [-1, -1],\n [0, -1],\n [1, -1],\n [-1, 0],\n [1, 0],\n [-1, 1],\n [0, 1],\n [1, 1],\n ];\n\n for (let y = 1; y < height - 1; y++) {\n for (let x = 1; x < width - 1; x++) {\n const idx = (y * width + x) * 4;\n if (result[idx + 3]! < 10) continue;\n\n let transparentNeighbors = 0;\n for (const [dx, dy] of offsets) {\n const neighborIdx = ((y + dy) * width + (x + dx)) * 4;\n if (result[neighborIdx + 3]! < 10) transparentNeighbors++;\n }\n if (transparentNeighbors >= 6) {\n result[idx + 3] = 0;\n }\n }\n }\n return result;\n}\n\nfunction removeInteriorBackground(data: Buffer, dominantEdgeColor: Color, threshold: number): Buffer {\n const result = Buffer.from(data);\n for (let i = 0; i < result.length; i += 4) {\n if (result[i + 3]! < 10) continue;\n const pixelColor: Color = { r: result[i]!, g: result[i + 1]!, b: result[i + 2]! };\n if (colorDistance(dominantEdgeColor, pixelColor) < threshold) {\n result[i + 3] = 0;\n }\n }\n return result;\n}\n\nexport function removeBackground(\n data: Buffer,\n width: number,\n height: number,\n colorRangeThreshold = COLOR_RANGE_THRESHOLD,\n): Buffer {\n if (hasTransparency(data)) {\n return data;\n }\n const dominantEdgeColor = getDominantEdgeColor(data, width, height);\n const isGradient = hasGradientColors(data);\n const result = Buffer.from(data);\n\n if (isGradient) {\n for (let i = 0; i < result.length; i += 4) {\n let alpha = result[i + 3]!;\n if (alpha < 25.5) {\n result[i + 3] = 0;\n continue;\n }\n const pixelColor: Color = { r: result[i]!, g: result[i + 1]!, b: result[i + 2]! };\n if (colorDistance(dominantEdgeColor, pixelColor) < 40) {\n alpha = 0;\n }\n result[i + 3] = alpha;\n }\n const cleaned = removeInteriorBackground(result, dominantEdgeColor, 40);\n return removeIsolatedPixels(cleaned, width, height);\n }\n\n const colorRange = findColorRange(data, dominantEdgeColor);\n\n for (let i = 0; i < result.length; i += 4) {\n let alpha = result[i + 3]!;\n if (alpha < 25.5) {\n result[i + 3] = 0;\n continue;\n }\n const pixelColor: Color = { r: result[i]!, g: result[i + 1]!, b: result[i + 2]! };\n\n if (colorDistance(dominantEdgeColor, pixelColor) < 50) {\n alpha = 0;\n } else {\n const colorRangeIndex = colorRange.findIndex((c) => colorDistance(c, pixelColor) < colorRangeThreshold);\n if (colorRangeIndex === -1) {\n alpha = 0;\n } else {\n alpha = Math.max(255 - 255 * colorRangeIndex * 0.35, 50);\n }\n }\n result[i + 3] = alpha;\n }\n\n const cleaned = removeInteriorBackground(result, dominantEdgeColor, 50);\n return removeIsolatedPixels(cleaned, width, height);\n}\n\nfunction findClosestColor(color: Color, palette: number[][]): number[] {\n let minDist = Number.POSITIVE_INFINITY;\n let closestColor = palette[0]!;\n for (const palColor of palette) {\n const dist = colorDistance(color, { r: palColor[0]!, g: palColor[1]!, b: palColor[2]! });\n if (dist < minDist) {\n minDist = dist;\n closestColor = palColor;\n }\n }\n return closestColor;\n}\n\nexport function applyQuantization(data: Buffer, numColors: number): Buffer {\n const pixels: quantize.RgbPixel[] = [];\n let hasWhitePixels = false;\n\n for (let i = 0; i < data.length; i += 4) {\n const r = data[i]!;\n const g = data[i + 1]!;\n const b = data[i + 2]!;\n pixels.push([r, g, b]);\n if (r > 240 && g > 240 && b > 240) hasWhitePixels = true;\n }\n\n const quantizer = quantize(pixels, numColors);\n if (!quantizer) {\n throw new Error(\"Failed to quantize image\");\n }\n const palette = quantizer.palette();\n\n if (hasWhitePixels) {\n const hasWhiteInPalette = palette.some((c) => c[0]! > 240 && c[1]! > 240 && c[2]! > 240);\n if (!hasWhiteInPalette) {\n let darkestIndex = 0;\n let darkestLuminance = Number.POSITIVE_INFINITY;\n palette.forEach((color, i) => {\n const luminance = (0.299 * color[0]! + 0.587 * color[1]! + 0.114 * color[2]!) / 255;\n if (luminance < darkestLuminance) {\n darkestLuminance = luminance;\n darkestIndex = i;\n }\n });\n palette[darkestIndex] = [255, 255, 255];\n }\n }\n\n const quantizedData = Buffer.from(data);\n for (let i = 0; i < data.length; i += 4) {\n const originalColor: Color = { r: data[i]!, g: data[i + 1]!, b: data[i + 2]! };\n const closest = findClosestColor(originalColor, palette);\n quantizedData[i] = closest[0]!;\n quantizedData[i + 1] = closest[1]!;\n quantizedData[i + 2] = closest[2]!;\n }\n return quantizedData;\n}\n\nfunction getLuminance(color: Color): number {\n const r = color.r / 255;\n const g = color.g / 255;\n const b = color.b / 255;\n return 0.299 * r + 0.587 * g + 0.114 * b;\n}\n\nfunction getContrastRatio(color1: Color, color2: Color): number {\n const lum1 = getLuminance(color1);\n const lum2 = getLuminance(color2);\n const brightest = Math.max(lum1, lum2);\n const darkest = Math.min(lum1, lum2);\n return (brightest + 0.05) / (darkest + 0.05);\n}\n\nfunction getHueDistance(color1: Color, color2: Color): number {\n const [h1] = rgbToHsl(color1.r, color1.g, color1.b);\n const [h2] = rgbToHsl(color2.r, color2.g, color2.b);\n const hue1 = h1 * 360;\n const hue2 = h2 * 360;\n const diff = Math.abs(hue1 - hue2);\n return Math.min(diff, 360 - diff);\n}\n\nfunction isHighlySaturated(color: Color): boolean {\n const [, s] = rgbToHsl(color.r, color.g, color.b);\n return s > 0.6;\n}\n\nfunction findColorRangeInternal(data: Buffer, ignoredColor: Color | null = null, customThreshold?: number): Color[] {\n const groups: { color: Color; count: number }[] = [];\n const threshold = customThreshold ?? COLOR_RANGE_THRESHOLD;\n\n for (let i = 0; i < data.length; i += 4) {\n if (data[i + 3]! < 10) continue;\n const color: Color = { r: data[i]!, g: data[i + 1]!, b: data[i + 2]! };\n if (ignoredColor && colorDistance(color, ignoredColor) < threshold) continue;\n\n let found = false;\n for (const group of groups) {\n const distance = colorDistance(group.color, color);\n const contrastRatio = getContrastRatio(group.color, color);\n\n let groupingThreshold = threshold;\n if (contrastRatio > 3) groupingThreshold = Math.min(groupingThreshold, 8);\n const hueDistance = getHueDistance(group.color, color);\n if (hueDistance > 20) groupingThreshold = Math.min(groupingThreshold, 5);\n if (isHighlySaturated(color) && isHighlySaturated(group.color)) {\n groupingThreshold = Math.min(groupingThreshold, 10);\n }\n\n if (distance < groupingThreshold) {\n group.count++;\n found = true;\n break;\n }\n }\n\n if (!found) groups.push({ color, count: 1 });\n }\n\n const sorted = groups.sort((a, b) => b.count - a.count);\n\n let filtered = sorted.filter((g) => g.count > sorted[0]!.count * 0.03).map((g) => g.color);\n\n if (filtered.length < 2 && sorted.length >= 2) {\n filtered = sorted.slice(0, 2).map((g) => g.color);\n }\n return filtered.slice(0, 6);\n}\n\nexport function findColorRange(data: Buffer, ignoredColor: Color | null = null): Color[] {\n return findColorRangeInternal(data, ignoredColor);\n}\n\nexport function findColorRangeWithThreshold(\n data: Buffer,\n threshold: number,\n ignoredColor: Color | null = null,\n): Color[] {\n return findColorRangeInternal(data, ignoredColor, threshold);\n}\n\nexport function rgbToHsl(r: number, g: number, b: number): [number, number, number] {\n const rNorm = r / 255;\n const gNorm = g / 255;\n const bNorm = b / 255;\n const max = Math.max(rNorm, gNorm, bNorm);\n const min = Math.min(rNorm, gNorm, bNorm);\n let h = 0;\n let s = 0;\n const l = (max + min) / 2;\n if (max !== min) {\n const d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch (max) {\n case rNorm:\n h = (gNorm - bNorm) / d + (gNorm < bNorm ? 6 : 0);\n break;\n case gNorm:\n h = (bNorm - rNorm) / d + 2;\n break;\n case bNorm:\n h = (rNorm - gNorm) / d + 4;\n break;\n default:\n break;\n }\n h /= 6;\n }\n return [h, s, l];\n}\n\nexport function hslToRgb(h: number, s: number, l: number): [number, number, number] {\n let r: number;\n let g: number;\n let b: number;\n if (s === 0) {\n r = g = b = l;\n } else {\n const hue2rgb = (p: number, q: number, t: number) => {\n let tMod = t;\n if (tMod < 0) tMod += 1;\n if (tMod > 1) tMod -= 1;\n if (tMod < 1 / 6) return p + (q - p) * 6 * tMod;\n if (tMod < 1 / 2) return q;\n if (tMod < 2 / 3) return p + (q - p) * (2 / 3 - tMod) * 6;\n return p;\n };\n const q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n const p = 2 * l - q;\n r = hue2rgb(p, q, h + 1 / 3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1 / 3);\n }\n return [Math.round(r * 255), Math.round(g * 255), Math.round(b * 255)];\n}\n\nexport function solidifyEdges(data: Buffer, saturationBoost = 0.25): Buffer {\n const result = Buffer.from(data);\n for (let i = 0; i < result.length; i += 4) {\n const alpha = result[i + 3]!;\n if (alpha > 0 && alpha < 255) {\n const r = result[i]!;\n const g = result[i + 1]!;\n const b = result[i + 2]!;\n const hsl = rgbToHsl(r, g, b);\n const rgb = hslToRgb(hsl[0], Math.min(1, hsl[1] + saturationBoost), hsl[2]);\n result[i] = rgb[0];\n result[i + 1] = rgb[1];\n result[i + 2] = rgb[2];\n result[i + 3] = 255;\n }\n }\n return result;\n}\n","import sharp from \"sharp\";\nimport {\n applyQuantization,\n COLOR_RANGE_THRESHOLD,\n type Color,\n colorDistance,\n findColorRange,\n findColorRangeWithThreshold,\n getDominantEdgeColor,\n hasTransparency,\n hslToRgb,\n removeBackground,\n rgbToHsl,\n solidifyEdges,\n} from \"./color-changer.ts\";\n\nexport interface ResizeOptions {\n width?: number;\n height?: number;\n size?: { width: number; height: number };\n fit?: \"contain\" | \"cover\";\n}\n\nexport interface ProcessingOptions {\n color?: Color;\n removeBackground?: boolean;\n shrinkToContent?: boolean;\n resize?: ResizeOptions;\n}\n\ninterface ProcessedImage {\n buffer: Buffer;\n format: \"png\" | \"svg\";\n width: number;\n height: number;\n stages: string[];\n}\n\nfunction hasGradient(data: Buffer): boolean {\n const uniqueColors = new Set<string>();\n for (let i = 0; i < data.length; i += 4) {\n if (data[i + 3]! < 10) continue;\n uniqueColors.add(`${data[i]},${data[i + 1]},${data[i + 2]}`);\n }\n return uniqueColors.size > 50;\n}\n\nfunction perceivedLuminance(color: Color): number {\n return (0.299 * color.r + 0.587 * color.g + 0.114 * color.b) / 255;\n}\n\nfunction createSvgRecolorer(target: Color, palette: Color[]): (source: Color) => Color {\n if (palette.length < 2) return () => target;\n\n const luminances = palette.map(perceivedLuminance);\n const min = Math.min(...luminances);\n const max = Math.max(...luminances);\n if (max - min < 0.05) return () => target;\n\n const [h, s, targetLightness] = rgbToHsl(target.r, target.g, target.b);\n const lightnessRange = 0.75;\n const minLightness = targetLightness >= 0.5 ? Math.max(0, targetLightness - lightnessRange) : targetLightness;\n const maxLightness = targetLightness >= 0.5 ? targetLightness : Math.min(1, targetLightness + lightnessRange);\n\n return (source) => {\n const sourcePosition = (perceivedLuminance(source) - min) / (max - min);\n const nextLightness = minLightness + sourcePosition * (maxLightness - minLightness);\n const [r, g, b] = hslToRgb(h, s, Math.max(0, Math.min(1, nextLightness)));\n return { r, g, b };\n };\n}\n\nasync function processGradient(data: Buffer, info: sharp.OutputInfo) {\n if (!hasGradient(data)) return { data, info };\n const solidified = solidifyEdges(data, 0.1);\n const blurred = await sharp(solidified, {\n raw: { channels: 4, width: info.width, height: info.height },\n })\n .png()\n .blur(0.3)\n .toBuffer();\n const result = await sharp(blurred).ensureAlpha().raw().toBuffer({ resolveWithObject: true });\n return { data: result.data, info: result.info };\n}\n\nfunction isSvgBuffer(buffer: Buffer): boolean {\n const head = buffer.subarray(0, Math.min(buffer.length, 512)).toString(\"utf8\").trimStart();\n return head.startsWith(\"<?xml\") ? head.includes(\"<svg\") : head.startsWith(\"<svg\");\n}\n\nasync function processInternal(\n inputBuffer: Buffer,\n isSVG: boolean,\n options: ProcessingOptions,\n): Promise<{ buffer: Buffer; stages: string[] }> {\n const stages: string[] = [];\n\n const metadata = await sharp(inputBuffer).metadata();\n let alreadyTransparent = false;\n if (metadata.hasAlpha) {\n const { data: alphaData } = await sharp(inputBuffer).raw().toBuffer({ resolveWithObject: true });\n alreadyTransparent = hasTransparency(alphaData, 0.05);\n }\n\n let { data: processedData, info } = await sharp(inputBuffer)\n .ensureAlpha()\n .raw()\n .toBuffer({ resolveWithObject: true });\n\n if (options.color) {\n stages.push(\"recolor\");\n processedData = applyQuantization(processedData, 8);\n\n let dominantEdgeColor: Color | null = null;\n let colorRange: Color[] = [];\n if (isSVG) {\n dominantEdgeColor = getDominantEdgeColor(processedData, info.width, info.height);\n colorRange = findColorRangeWithThreshold(processedData, 5, null);\n } else {\n dominantEdgeColor = alreadyTransparent ? null : getDominantEdgeColor(processedData, info.width, info.height);\n colorRange = findColorRange(processedData, dominantEdgeColor);\n }\n const isMultiFillSvg = isSVG && colorRange.length >= 2;\n const recolorSvgFill = isMultiFillSvg ? createSvgRecolorer(options.color, colorRange) : null;\n\n let didRemoveBackground = false;\n\n for (let i = 0; i < processedData.length; i += 4) {\n let alpha = processedData[i + 3]!;\n if (alpha < 25.5) {\n processedData[i + 3] = 0;\n continue;\n }\n const pixelColor: Color = { r: processedData[i]!, g: processedData[i + 1]!, b: processedData[i + 2]! };\n\n if (isSVG) {\n const isLight = pixelColor.r > 240 && pixelColor.g > 240 && pixelColor.b > 240;\n const isEdgeBackground = dominantEdgeColor ? colorDistance(dominantEdgeColor, pixelColor) < 5 : false;\n if (isLight && (!isMultiFillSvg || isEdgeBackground)) {\n alpha = 0;\n didRemoveBackground = true;\n } else {\n const idx = colorRange.findIndex((c) => colorDistance(c, pixelColor) < 5);\n if (idx === -1) {\n alpha = 0;\n didRemoveBackground = true;\n } else if (!isMultiFillSvg) {\n const levels = [255, 200, 150, 100, 80];\n alpha = levels[idx] ?? 60;\n }\n }\n } else if (!alreadyTransparent && dominantEdgeColor && colorDistance(dominantEdgeColor, pixelColor) < 25) {\n alpha = 0;\n didRemoveBackground = true;\n } else {\n const idx = colorRange.findIndex((c) => colorDistance(c, pixelColor) < COLOR_RANGE_THRESHOLD);\n if (idx === -1) {\n alpha = 0;\n didRemoveBackground = true;\n } else {\n alpha = Math.max(255 - 255 * idx * 0.35, 50);\n }\n }\n\n const recolored = recolorSvgFill ? recolorSvgFill(pixelColor) : options.color;\n processedData[i] = recolored.r;\n processedData[i + 1] = recolored.g;\n processedData[i + 2] = recolored.b;\n processedData[i + 3] = alpha;\n }\n\n if (didRemoveBackground && !alreadyTransparent) {\n stages.push(\"solidify-edges\");\n const result = await processGradient(processedData, info);\n processedData = result.data;\n info = result.info;\n }\n } else if (options.removeBackground && !alreadyTransparent) {\n stages.push(\"remove-bg\");\n processedData = removeBackground(processedData, info.width, info.height);\n stages.push(\"solidify-edges\");\n const result = await processGradient(processedData, info);\n processedData = result.data;\n info = result.info;\n }\n\n let pipeline = sharp(processedData, {\n raw: { channels: 4, width: info.width, height: info.height },\n }).png();\n\n if (options.shrinkToContent) {\n stages.push(\"trim\");\n pipeline = pipeline.trim();\n }\n\n const outputBuffer = await pipeline.toBuffer();\n return { buffer: outputBuffer, stages };\n}\n\nfunction applyResize(buffer: Buffer, resize: ResizeOptions): Promise<Buffer> {\n const transparent = { r: 0, g: 0, b: 0, alpha: 0 };\n if (resize.size) {\n return sharp(buffer)\n .resize(resize.size.width, resize.size.height, {\n fit: resize.fit ?? \"contain\",\n background: transparent,\n })\n .toBuffer();\n }\n return sharp(buffer)\n .resize(resize.width ?? null, resize.height ?? null, { fit: \"inside\", withoutEnlargement: false })\n .toBuffer();\n}\n\nexport async function processImage(inputBuffer: Buffer, options: ProcessingOptions = {}): Promise<ProcessedImage> {\n const stages: string[] = [];\n const isSVG = isSvgBuffer(inputBuffer);\n\n if (isSVG && !options.color && !options.removeBackground && !options.shrinkToContent) {\n if (options.resize) {\n stages.push(\"resize\");\n const resized = await applyResize(inputBuffer, options.resize);\n const meta = await sharp(resized).metadata();\n return {\n buffer: resized,\n format: \"png\",\n width: meta.width ?? 0,\n height: meta.height ?? 0,\n stages,\n };\n }\n const meta = await sharp(inputBuffer).metadata();\n return {\n buffer: inputBuffer,\n format: \"svg\",\n width: meta.width ?? 0,\n height: meta.height ?? 0,\n stages,\n };\n }\n\n let workingBuffer = inputBuffer;\n if (isSVG) {\n stages.push(\"rasterize-svg\");\n workingBuffer = await sharp(inputBuffer)\n .png({ compressionLevel: 0, force: true, palette: false, quality: 100 })\n .toBuffer();\n }\n\n const pass = await processInternal(workingBuffer, isSVG, options);\n stages.push(...pass.stages);\n let processed = pass.buffer;\n\n if (options.resize) {\n stages.push(\"resize\");\n processed = await applyResize(processed, options.resize);\n }\n\n const meta = await sharp(processed).metadata();\n return {\n buffer: processed,\n format: \"png\",\n width: meta.width ?? 0,\n height: meta.height ?? 0,\n stages,\n };\n}\n"],"mappings":"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","names":["cleaned","p","q","meta","removeBackground"]}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import {
|
|
2
|
+
destinationRefusal
|
|
3
|
+
} from "./chunk-QXZYAIWS.js";
|
|
4
|
+
import "./chunk-LO6GEJ4Z.js";
|
|
5
|
+
import "./chunk-RSW6QJPH.js";
|
|
6
|
+
import {
|
|
7
|
+
failApi
|
|
8
|
+
} from "./chunk-JM73NDCM.js";
|
|
9
|
+
import {
|
|
10
|
+
FLOW_AGENT_DESTINATION_KINDS
|
|
11
|
+
} from "./chunk-XWH7CCBL.js";
|
|
12
|
+
import "./chunk-GXDLWBOY.js";
|
|
13
|
+
import "./chunk-WYCVJIHD.js";
|
|
14
|
+
import "./chunk-ZJWUBJYQ.js";
|
|
15
|
+
import "./chunk-XML7AJM3.js";
|
|
16
|
+
import {
|
|
17
|
+
ApiError,
|
|
18
|
+
apiPost
|
|
19
|
+
} from "./chunk-XBOK23HI.js";
|
|
20
|
+
import "./chunk-IFWP3ZDO.js";
|
|
21
|
+
import "./chunk-NAWWC5I3.js";
|
|
22
|
+
import {
|
|
23
|
+
registerSchema,
|
|
24
|
+
writeJson
|
|
25
|
+
} from "./chunk-NU7JSWVA.js";
|
|
26
|
+
import "./chunk-YQSBHWOI.js";
|
|
27
|
+
|
|
28
|
+
// src/commands/flows/options.ts
|
|
29
|
+
import { defineCommand } from "citty";
|
|
30
|
+
var HUBSPOT_KINDS = {
|
|
31
|
+
hubspot: "baker hubspot forms list",
|
|
32
|
+
hubspotForm: "baker hubspot forms list",
|
|
33
|
+
hubspotMeeting: "baker hubspot meetings list"
|
|
34
|
+
};
|
|
35
|
+
function optionsHints(data) {
|
|
36
|
+
const { kind, options } = data;
|
|
37
|
+
if (kind === "pipedrive" || kind === "goHighlevelContact") {
|
|
38
|
+
return [
|
|
39
|
+
`Nothing to choose: the connected account is the destination. Wire it: baker flows connect <slug> --side-effect <id> (or --all --type ${kind}).`
|
|
40
|
+
];
|
|
41
|
+
}
|
|
42
|
+
if (kind === "googleSpreadsheet") {
|
|
43
|
+
return [
|
|
44
|
+
"These are the only spreadsheets Baker can reach: ones someone chose for a Form before, and ones Baker created. Pick one: baker flows connect <slug> --side-effect <id> --resource <id> [--tab <name>].",
|
|
45
|
+
'None fits? Create one yourself: baker flows connect <slug> --side-effect <id> --new-sheet "<Form name> leads" --columns "Name,Email,\u2026". Only when the user wants their own existing sheet: request_flow_input.'
|
|
46
|
+
];
|
|
47
|
+
}
|
|
48
|
+
const empty = options.length === 0 ? ["The account has none. Tell the user what to create there, or skip this step \u2014 do not invent one."] : [];
|
|
49
|
+
return [
|
|
50
|
+
...empty,
|
|
51
|
+
`Fill the step: baker flows connect <slug> --node <stepId> --resource <id> (or --all --type ${kind}). One clear match \u2192 use it; several plausible \u2192 ask the user which.`
|
|
52
|
+
];
|
|
53
|
+
}
|
|
54
|
+
registerSchema({
|
|
55
|
+
command: "flows.options",
|
|
56
|
+
description: "What a Form step or destination can be filled with, read from the connected account: Calendly events, SavvyCal links, GoHighLevel calendars and forms, the Google spreadsheets Baker can reach. Pipedrive and GoHighLevel contact have nothing to choose \u2014 the account is the destination. Next: `baker flows connect <slug> --node|--side-effect <id> --resource <id>`. HubSpot has its own: `baker hubspot forms list` / `meetings list`.",
|
|
57
|
+
args: {
|
|
58
|
+
kind: {
|
|
59
|
+
type: "positional",
|
|
60
|
+
description: `One of: ${FLOW_AGENT_DESTINATION_KINDS.join(", ")}`,
|
|
61
|
+
required: true
|
|
62
|
+
},
|
|
63
|
+
account: {
|
|
64
|
+
type: "string",
|
|
65
|
+
description: "Connection id, when more than one account of the platform is connected",
|
|
66
|
+
required: false
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
var optionsCommand = defineCommand({
|
|
71
|
+
meta: {
|
|
72
|
+
name: "options",
|
|
73
|
+
description: "What a step or destination can be filled with, from the connected account. Start here: baker flows options calendly"
|
|
74
|
+
},
|
|
75
|
+
args: {
|
|
76
|
+
kind: { type: "positional", description: FLOW_AGENT_DESTINATION_KINDS.join(" | "), required: true },
|
|
77
|
+
account: { type: "string", description: "Connection id when several are connected" }
|
|
78
|
+
},
|
|
79
|
+
run: async ({ args }) => {
|
|
80
|
+
const kind = String(args.kind);
|
|
81
|
+
const hubspot = HUBSPOT_KINDS[kind];
|
|
82
|
+
if (hubspot) {
|
|
83
|
+
writeJson({ ok: false, error: { code: "VALIDATION_ERROR", message: `HubSpot has its own list: ${hubspot}.` } });
|
|
84
|
+
process.exit(1);
|
|
85
|
+
}
|
|
86
|
+
if (!FLOW_AGENT_DESTINATION_KINDS.includes(kind)) {
|
|
87
|
+
writeJson({
|
|
88
|
+
ok: false,
|
|
89
|
+
error: {
|
|
90
|
+
code: "VALIDATION_ERROR",
|
|
91
|
+
message: `"${kind}" is not filled from a platform account.`,
|
|
92
|
+
fix: `Kinds: ${FLOW_AGENT_DESTINATION_KINDS.join(", ")}. Typed credentials (webhooks, Zapier, Crmble) go through request_flow_input.`
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
process.exit(1);
|
|
96
|
+
}
|
|
97
|
+
try {
|
|
98
|
+
const { data } = await apiPost("/api/flows/destinations/options", {
|
|
99
|
+
kind,
|
|
100
|
+
...args.account ? { account: String(args.account) } : {}
|
|
101
|
+
});
|
|
102
|
+
writeJson({
|
|
103
|
+
ok: true,
|
|
104
|
+
data: { ...data, accounts: data.accounts.length > 1 ? data.accounts : void 0 },
|
|
105
|
+
hints: optionsHints(data)
|
|
106
|
+
});
|
|
107
|
+
} catch (err) {
|
|
108
|
+
const refusal = err instanceof ApiError ? destinationRefusal(kind, err) : null;
|
|
109
|
+
if (err instanceof ApiError && refusal !== null) {
|
|
110
|
+
writeJson({ ok: false, error: { code: refusal.code, message: err.message, fix: refusal.fix } });
|
|
111
|
+
process.exit(1);
|
|
112
|
+
}
|
|
113
|
+
failApi(err);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
export {
|
|
118
|
+
optionsCommand,
|
|
119
|
+
optionsHints
|
|
120
|
+
};
|
|
121
|
+
//# sourceMappingURL=options-6TE5E34Z.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/commands/flows/options.ts"],"sourcesContent":["/**\n * `options`: what a Form's step or destination could be filled with, read\n * through the company's connected account — the same list the card shows the\n * user, so the agent can choose instead of asking.\n */\n\nimport { FLOW_AGENT_DESTINATION_KINDS, type FlowAgentDestinationKind, type FlowsOptionsResponse } from \"@baker/api\";\nimport { defineCommand } from \"citty\";\nimport { ApiError, apiPost } from \"../../client.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { failApi } from \"../actions/shared.ts\";\nimport { destinationRefusal } from \"./connect.ts\";\n\nconst HUBSPOT_KINDS: Record<string, string> = {\n hubspot: \"baker hubspot forms list\",\n hubspotForm: \"baker hubspot forms list\",\n hubspotMeeting: \"baker hubspot meetings list\",\n};\n\n/** The next call for each kind, spelled out — the target flag differs between a step and a destination. */\nexport function optionsHints(data: FlowsOptionsResponse[\"data\"]): string[] {\n const { kind, options } = data;\n if (kind === \"pipedrive\" || kind === \"goHighlevelContact\") {\n return [\n `Nothing to choose: the connected account is the destination. Wire it: baker flows connect <slug> --side-effect <id> (or --all --type ${kind}).`,\n ];\n }\n if (kind === \"googleSpreadsheet\") {\n return [\n \"These are the only spreadsheets Baker can reach: ones someone chose for a Form before, and ones Baker created. Pick one: baker flows connect <slug> --side-effect <id> --resource <id> [--tab <name>].\",\n 'None fits? Create one yourself: baker flows connect <slug> --side-effect <id> --new-sheet \"<Form name> leads\" --columns \"Name,Email,…\". Only when the user wants their own existing sheet: request_flow_input.',\n ];\n }\n const empty =\n options.length === 0\n ? [\"The account has none. Tell the user what to create there, or skip this step — do not invent one.\"]\n : [];\n return [\n ...empty,\n `Fill the step: baker flows connect <slug> --node <stepId> --resource <id> (or --all --type ${kind}). One clear match → use it; several plausible → ask the user which.`,\n ];\n}\n\nregisterSchema({\n command: \"flows.options\",\n description:\n \"What a Form step or destination can be filled with, read from the connected account: Calendly events, SavvyCal links, GoHighLevel calendars and forms, the Google spreadsheets Baker can reach. Pipedrive and GoHighLevel contact have nothing to choose — the account is the destination. Next: `baker flows connect <slug> --node|--side-effect <id> --resource <id>`. HubSpot has its own: `baker hubspot forms list` / `meetings list`.\",\n args: {\n kind: {\n type: \"positional\",\n description: `One of: ${FLOW_AGENT_DESTINATION_KINDS.join(\", \")}`,\n required: true,\n },\n account: {\n type: \"string\",\n description: \"Connection id, when more than one account of the platform is connected\",\n required: false,\n },\n },\n});\n\nexport const optionsCommand = defineCommand({\n meta: {\n name: \"options\",\n description:\n \"What a step or destination can be filled with, from the connected account. Start here: baker flows options calendly\",\n },\n args: {\n kind: { type: \"positional\", description: FLOW_AGENT_DESTINATION_KINDS.join(\" | \"), required: true },\n account: { type: \"string\", description: \"Connection id when several are connected\" },\n },\n run: async ({ args }) => {\n const kind = String(args.kind);\n const hubspot = HUBSPOT_KINDS[kind];\n if (hubspot) {\n writeJson({ ok: false, error: { code: \"VALIDATION_ERROR\", message: `HubSpot has its own list: ${hubspot}.` } });\n process.exit(1);\n }\n if (!(FLOW_AGENT_DESTINATION_KINDS as readonly string[]).includes(kind)) {\n writeJson({\n ok: false,\n error: {\n code: \"VALIDATION_ERROR\",\n message: `\"${kind}\" is not filled from a platform account.`,\n fix: `Kinds: ${FLOW_AGENT_DESTINATION_KINDS.join(\", \")}. Typed credentials (webhooks, Zapier, Crmble) go through request_flow_input.`,\n },\n });\n process.exit(1);\n }\n try {\n const { data } = await apiPost<FlowsOptionsResponse>(\"/api/flows/destinations/options\", {\n kind,\n ...(args.account ? { account: String(args.account) } : {}),\n });\n writeJson({\n ok: true,\n data: { ...data, accounts: data.accounts.length > 1 ? data.accounts : undefined },\n hints: optionsHints(data),\n });\n } catch (err) {\n const refusal = err instanceof ApiError ? destinationRefusal(kind as FlowAgentDestinationKind, err) : null;\n if (err instanceof ApiError && refusal !== null) {\n writeJson({ ok: false, error: { code: refusal.code, message: err.message, fix: refusal.fix } });\n process.exit(1);\n }\n failApi(err);\n }\n },\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,SAAS,qBAAqB;AAO9B,IAAM,gBAAwC;AAAA,EAC5C,SAAS;AAAA,EACT,aAAa;AAAA,EACb,gBAAgB;AAClB;AAGO,SAAS,aAAa,MAA8C;AACzE,QAAM,EAAE,MAAM,QAAQ,IAAI;AAC1B,MAAI,SAAS,eAAe,SAAS,sBAAsB;AACzD,WAAO;AAAA,MACL,wIAAwI,IAAI;AAAA,IAC9I;AAAA,EACF;AACA,MAAI,SAAS,qBAAqB;AAChC,WAAO;AAAA,MACL;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACA,QAAM,QACJ,QAAQ,WAAW,IACf,CAAC,uGAAkG,IACnG,CAAC;AACP,SAAO;AAAA,IACL,GAAG;AAAA,IACH,8FAA8F,IAAI;AAAA,EACpG;AACF;AAEA,eAAe;AAAA,EACb,SAAS;AAAA,EACT,aACE;AAAA,EACF,MAAM;AAAA,IACJ,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,aAAa,WAAW,6BAA6B,KAAK,IAAI,CAAC;AAAA,MAC/D,UAAU;AAAA,IACZ;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,aAAa;AAAA,MACb,UAAU;AAAA,IACZ;AAAA,EACF;AACF,CAAC;AAEM,IAAM,iBAAiB,cAAc;AAAA,EAC1C,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aACE;AAAA,EACJ;AAAA,EACA,MAAM;AAAA,IACJ,MAAM,EAAE,MAAM,cAAc,aAAa,6BAA6B,KAAK,KAAK,GAAG,UAAU,KAAK;AAAA,IAClG,SAAS,EAAE,MAAM,UAAU,aAAa,2CAA2C;AAAA,EACrF;AAAA,EACA,KAAK,OAAO,EAAE,KAAK,MAAM;AACvB,UAAM,OAAO,OAAO,KAAK,IAAI;AAC7B,UAAM,UAAU,cAAc,IAAI;AAClC,QAAI,SAAS;AACX,gBAAU,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,oBAAoB,SAAS,6BAA6B,OAAO,IAAI,EAAE,CAAC;AAC9G,cAAQ,KAAK,CAAC;AAAA,IAChB;AACA,QAAI,CAAE,6BAAmD,SAAS,IAAI,GAAG;AACvE,gBAAU;AAAA,QACR,IAAI;AAAA,QACJ,OAAO;AAAA,UACL,MAAM;AAAA,UACN,SAAS,IAAI,IAAI;AAAA,UACjB,KAAK,UAAU,6BAA6B,KAAK,IAAI,CAAC;AAAA,QACxD;AAAA,MACF,CAAC;AACD,cAAQ,KAAK,CAAC;AAAA,IAChB;AACA,QAAI;AACF,YAAM,EAAE,KAAK,IAAI,MAAM,QAA8B,mCAAmC;AAAA,QACtF;AAAA,QACA,GAAI,KAAK,UAAU,EAAE,SAAS,OAAO,KAAK,OAAO,EAAE,IAAI,CAAC;AAAA,MAC1D,CAAC;AACD,gBAAU;AAAA,QACR,IAAI;AAAA,QACJ,MAAM,EAAE,GAAG,MAAM,UAAU,KAAK,SAAS,SAAS,IAAI,KAAK,WAAW,OAAU;AAAA,QAChF,OAAO,aAAa,IAAI;AAAA,MAC1B,CAAC;AAAA,IACH,SAAS,KAAK;AACZ,YAAM,UAAU,eAAe,WAAW,mBAAmB,MAAkC,GAAG,IAAI;AACtG,UAAI,eAAe,YAAY,YAAY,MAAM;AAC/C,kBAAU,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,QAAQ,MAAM,SAAS,IAAI,SAAS,KAAK,QAAQ,IAAI,EAAE,CAAC;AAC9F,gBAAQ,KAAK,CAAC;AAAA,MAChB;AACA,cAAQ,GAAG;AAAA,IACb;AAAA,EACF;AACF,CAAC;","names":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import {
|
|
2
|
+
TABLE_OUTPUT_FORMATS,
|
|
3
|
+
outputFormatRefusal,
|
|
4
|
+
resolveCustomerId,
|
|
5
|
+
toCsvRow,
|
|
6
|
+
writeAdsJson,
|
|
7
|
+
writeAdsOutput,
|
|
8
|
+
writeJsonEnvelope
|
|
9
|
+
} from "./chunk-VFIOJD5M.js";
|
|
10
|
+
import "./chunk-XBOK23HI.js";
|
|
11
|
+
import "./chunk-IFWP3ZDO.js";
|
|
12
|
+
import "./chunk-NAWWC5I3.js";
|
|
13
|
+
import "./chunk-NU7JSWVA.js";
|
|
14
|
+
import "./chunk-YQSBHWOI.js";
|
|
15
|
+
export {
|
|
16
|
+
TABLE_OUTPUT_FORMATS,
|
|
17
|
+
outputFormatRefusal,
|
|
18
|
+
resolveCustomerId,
|
|
19
|
+
toCsvRow,
|
|
20
|
+
writeAdsJson,
|
|
21
|
+
writeAdsOutput,
|
|
22
|
+
writeJsonEnvelope
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=output-RAH3TSIL.js.map
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import {
|
|
2
|
+
INSPIRATION_HINTS,
|
|
3
|
+
reportError,
|
|
4
|
+
staleCopyHint
|
|
5
|
+
} from "./chunk-EFSYTROP.js";
|
|
6
|
+
import {
|
|
7
|
+
apiGet
|
|
8
|
+
} from "./chunk-XBOK23HI.js";
|
|
9
|
+
import "./chunk-IFWP3ZDO.js";
|
|
10
|
+
import "./chunk-NAWWC5I3.js";
|
|
11
|
+
import {
|
|
12
|
+
registerSchema,
|
|
13
|
+
writeJson
|
|
14
|
+
} from "./chunk-NU7JSWVA.js";
|
|
15
|
+
import "./chunk-YQSBHWOI.js";
|
|
16
|
+
|
|
17
|
+
// src/commands/landing/inspiration/page.ts
|
|
18
|
+
import { defineCommand } from "citty";
|
|
19
|
+
registerSchema({
|
|
20
|
+
command: "landing.inspiration.page",
|
|
21
|
+
description: "Show a whole reference page as a sequence: every section top to bottom with its type and the idea behind it. This is the view to use when the question is how a good page is ORDERED rather than what one section looks like.",
|
|
22
|
+
args: {
|
|
23
|
+
id: {
|
|
24
|
+
type: "string",
|
|
25
|
+
description: "Page id \u2014 the `page_id` on any search result or favorites row",
|
|
26
|
+
required: true
|
|
27
|
+
},
|
|
28
|
+
full: {
|
|
29
|
+
type: "boolean",
|
|
30
|
+
description: "Add the transferable idea behind every section. A long page roughly triples the response",
|
|
31
|
+
required: false
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
var pageCommand = defineCommand({
|
|
36
|
+
meta: {
|
|
37
|
+
name: "page",
|
|
38
|
+
description: "Show how a reference page sequences its sections. Example: baker landing inspiration page j91xyz\u2026 \u2014 the blueprint, not the pixels."
|
|
39
|
+
},
|
|
40
|
+
args: {
|
|
41
|
+
id: { type: "positional", description: "Page id (the `page_id` on a search result)", required: true },
|
|
42
|
+
full: { type: "boolean", description: "Include why_it_works per section", required: false, default: false }
|
|
43
|
+
},
|
|
44
|
+
run: async ({ args }) => {
|
|
45
|
+
try {
|
|
46
|
+
const data = await apiGet("/api/landing-inspiration/page", { id: args.id });
|
|
47
|
+
if (data.status !== "indexed") {
|
|
48
|
+
writeJson({
|
|
49
|
+
ok: true,
|
|
50
|
+
data: { id: data.id, url: data.url, status: data.status, sections: [] },
|
|
51
|
+
hints: [
|
|
52
|
+
data.status === "error" ? "We couldn't read this page. Try a different address, or a different page on the same site." : "Still being studied \u2014 check back later in the turn or in a later one."
|
|
53
|
+
]
|
|
54
|
+
});
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
const full = args.full;
|
|
58
|
+
writeJson({
|
|
59
|
+
ok: true,
|
|
60
|
+
data: {
|
|
61
|
+
id: data.id,
|
|
62
|
+
url: data.url,
|
|
63
|
+
domain: data.domain,
|
|
64
|
+
title: data.title,
|
|
65
|
+
archetype: data.archetype,
|
|
66
|
+
stack: data.detectedStack,
|
|
67
|
+
page_fidelity: data.pageFidelity,
|
|
68
|
+
read_at: data.studiedAt ? new Date(data.studiedAt).toISOString().slice(0, 10) : null,
|
|
69
|
+
...data.refreshFailedAt ? { refresh_failed_at: new Date(data.refreshFailedAt).toISOString().slice(0, 10) } : {},
|
|
70
|
+
blueprint: data.sectionOrder,
|
|
71
|
+
sections: data.sections.map((section) => ({
|
|
72
|
+
id: section.id,
|
|
73
|
+
position: section.index,
|
|
74
|
+
section: section.sectionType,
|
|
75
|
+
composition: section.composition,
|
|
76
|
+
look: section.visualRegister,
|
|
77
|
+
motion: section.motionSummary,
|
|
78
|
+
craft: section.craftScore,
|
|
79
|
+
// Behind --full. This command exists to answer an ordering
|
|
80
|
+
// question, and `blueprint` answers it in a line; a 600-character
|
|
81
|
+
// paragraph per section turned a 40-section page into ~5,900 tokens
|
|
82
|
+
// of material about individual sections nobody had chosen yet.
|
|
83
|
+
...full ? { why_it_works: section.whyItWorks } : {}
|
|
84
|
+
}))
|
|
85
|
+
},
|
|
86
|
+
hints: [
|
|
87
|
+
"The blueprint is the section order top to bottom \u2014 the answer to 'how do good pages in this category sequence themselves'.",
|
|
88
|
+
"Use `baker landing inspiration view <section id>` for any section worth a closer look.",
|
|
89
|
+
...full ? [] : ["Add --full for the idea behind every section, once you know which page you care about."],
|
|
90
|
+
INSPIRATION_HINTS.adapt,
|
|
91
|
+
...[staleCopyHint(data.studiedAt, data.filedUrl)].filter((hint) => hint !== null),
|
|
92
|
+
...data.refreshFailedAt ? [
|
|
93
|
+
"The last attempt to read this page again failed, so this is the earlier copy. Tell the user if the live page may differ."
|
|
94
|
+
] : []
|
|
95
|
+
]
|
|
96
|
+
});
|
|
97
|
+
} catch (error) {
|
|
98
|
+
reportError(error);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
export {
|
|
103
|
+
pageCommand
|
|
104
|
+
};
|
|
105
|
+
//# sourceMappingURL=page-GS3WLT2C.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/commands/landing/inspiration/page.ts"],"sourcesContent":["import type { InspirationPageResponse } from \"@baker/api/landing-library\";\nimport { defineCommand } from \"citty\";\nimport { apiGet } from \"../../../client.ts\";\nimport { writeJson } from \"../../../output.ts\";\nimport { registerSchema } from \"../../../schemas.ts\";\nimport { INSPIRATION_HINTS, reportError, staleCopyHint } from \"./shared.ts\";\n\nregisterSchema({\n command: \"landing.inspiration.page\",\n description:\n \"Show a whole reference page as a sequence: every section top to bottom with its type and the idea behind it. This is the view to use when the question is how a good page is ORDERED rather than what one section looks like.\",\n args: {\n id: {\n type: \"string\",\n description: \"Page id — the `page_id` on any search result or favorites row\",\n required: true,\n },\n full: {\n type: \"boolean\",\n description: \"Add the transferable idea behind every section. A long page roughly triples the response\",\n required: false,\n },\n },\n});\n\nexport const pageCommand = defineCommand({\n meta: {\n name: \"page\",\n description:\n \"Show how a reference page sequences its sections. Example: baker landing inspiration page j91xyz… — the blueprint, not the pixels.\",\n },\n args: {\n id: { type: \"positional\", description: \"Page id (the `page_id` on a search result)\", required: true },\n full: { type: \"boolean\", description: \"Include why_it_works per section\", required: false, default: false },\n },\n run: async ({ args }) => {\n try {\n const data = await apiGet<InspirationPageResponse>(\"/api/landing-inspiration/page\", { id: args.id as string });\n\n if (data.status !== \"indexed\") {\n writeJson({\n ok: true,\n data: { id: data.id, url: data.url, status: data.status, sections: [] },\n hints: [\n data.status === \"error\"\n ? \"We couldn't read this page. Try a different address, or a different page on the same site.\"\n : \"Still being studied — check back later in the turn or in a later one.\",\n ],\n });\n return;\n }\n\n const full = args.full as boolean;\n writeJson({\n ok: true,\n data: {\n id: data.id,\n url: data.url,\n domain: data.domain,\n title: data.title,\n archetype: data.archetype,\n stack: data.detectedStack,\n page_fidelity: data.pageFidelity,\n read_at: data.studiedAt ? new Date(data.studiedAt).toISOString().slice(0, 10) : null,\n ...(data.refreshFailedAt\n ? { refresh_failed_at: new Date(data.refreshFailedAt).toISOString().slice(0, 10) }\n : {}),\n blueprint: data.sectionOrder,\n sections: data.sections.map((section) => ({\n id: section.id,\n position: section.index,\n section: section.sectionType,\n composition: section.composition,\n look: section.visualRegister,\n motion: section.motionSummary,\n craft: section.craftScore,\n // Behind --full. This command exists to answer an ordering\n // question, and `blueprint` answers it in a line; a 600-character\n // paragraph per section turned a 40-section page into ~5,900 tokens\n // of material about individual sections nobody had chosen yet.\n ...(full ? { why_it_works: section.whyItWorks } : {}),\n })),\n },\n hints: [\n \"The blueprint is the section order top to bottom — the answer to 'how do good pages in this category sequence themselves'.\",\n \"Use `baker landing inspiration view <section id>` for any section worth a closer look.\",\n ...(full ? [] : [\"Add --full for the idea behind every section, once you know which page you care about.\"]),\n INSPIRATION_HINTS.adapt,\n ...[staleCopyHint(data.studiedAt, data.filedUrl)].filter((hint): hint is string => hint !== null),\n ...(data.refreshFailedAt\n ? [\n \"The last attempt to read this page again failed, so this is the earlier copy. Tell the user if the live page may differ.\",\n ]\n : []),\n ],\n });\n } catch (error) {\n reportError(error);\n }\n },\n});\n"],"mappings":";;;;;;;;;;;;;;;;;AACA,SAAS,qBAAqB;AAM9B,eAAe;AAAA,EACb,SAAS;AAAA,EACT,aACE;AAAA,EACF,MAAM;AAAA,IACJ,IAAI;AAAA,MACF,MAAM;AAAA,MACN,aAAa;AAAA,MACb,UAAU;AAAA,IACZ;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,aAAa;AAAA,MACb,UAAU;AAAA,IACZ;AAAA,EACF;AACF,CAAC;AAEM,IAAM,cAAc,cAAc;AAAA,EACvC,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aACE;AAAA,EACJ;AAAA,EACA,MAAM;AAAA,IACJ,IAAI,EAAE,MAAM,cAAc,aAAa,8CAA8C,UAAU,KAAK;AAAA,IACpG,MAAM,EAAE,MAAM,WAAW,aAAa,oCAAoC,UAAU,OAAO,SAAS,MAAM;AAAA,EAC5G;AAAA,EACA,KAAK,OAAO,EAAE,KAAK,MAAM;AACvB,QAAI;AACF,YAAM,OAAO,MAAM,OAAgC,iCAAiC,EAAE,IAAI,KAAK,GAAa,CAAC;AAE7G,UAAI,KAAK,WAAW,WAAW;AAC7B,kBAAU;AAAA,UACR,IAAI;AAAA,UACJ,MAAM,EAAE,IAAI,KAAK,IAAI,KAAK,KAAK,KAAK,QAAQ,KAAK,QAAQ,UAAU,CAAC,EAAE;AAAA,UACtE,OAAO;AAAA,YACL,KAAK,WAAW,UACZ,+FACA;AAAA,UACN;AAAA,QACF,CAAC;AACD;AAAA,MACF;AAEA,YAAM,OAAO,KAAK;AAClB,gBAAU;AAAA,QACR,IAAI;AAAA,QACJ,MAAM;AAAA,UACJ,IAAI,KAAK;AAAA,UACT,KAAK,KAAK;AAAA,UACV,QAAQ,KAAK;AAAA,UACb,OAAO,KAAK;AAAA,UACZ,WAAW,KAAK;AAAA,UAChB,OAAO,KAAK;AAAA,UACZ,eAAe,KAAK;AAAA,UACpB,SAAS,KAAK,YAAY,IAAI,KAAK,KAAK,SAAS,EAAE,YAAY,EAAE,MAAM,GAAG,EAAE,IAAI;AAAA,UAChF,GAAI,KAAK,kBACL,EAAE,mBAAmB,IAAI,KAAK,KAAK,eAAe,EAAE,YAAY,EAAE,MAAM,GAAG,EAAE,EAAE,IAC/E,CAAC;AAAA,UACL,WAAW,KAAK;AAAA,UAChB,UAAU,KAAK,SAAS,IAAI,CAAC,aAAa;AAAA,YACxC,IAAI,QAAQ;AAAA,YACZ,UAAU,QAAQ;AAAA,YAClB,SAAS,QAAQ;AAAA,YACjB,aAAa,QAAQ;AAAA,YACrB,MAAM,QAAQ;AAAA,YACd,QAAQ,QAAQ;AAAA,YAChB,OAAO,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA,YAKf,GAAI,OAAO,EAAE,cAAc,QAAQ,WAAW,IAAI,CAAC;AAAA,UACrD,EAAE;AAAA,QACJ;AAAA,QACA,OAAO;AAAA,UACL;AAAA,UACA;AAAA,UACA,GAAI,OAAO,CAAC,IAAI,CAAC,wFAAwF;AAAA,UACzG,kBAAkB;AAAA,UAClB,GAAG,CAAC,cAAc,KAAK,WAAW,KAAK,QAAQ,CAAC,EAAE,OAAO,CAAC,SAAyB,SAAS,IAAI;AAAA,UAChG,GAAI,KAAK,kBACL;AAAA,YACE;AAAA,UACF,IACA,CAAC;AAAA,QACP;AAAA,MACF,CAAC;AAAA,IACH,SAAS,OAAO;AACd,kBAAY,KAAK;AAAA,IACnB;AAAA,EACF;AACF,CAAC;","names":[]}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import {
|
|
2
|
+
csvOrJson,
|
|
3
|
+
handleMetaError
|
|
4
|
+
} from "./chunk-KLNKEVIY.js";
|
|
5
|
+
import {
|
|
6
|
+
writeAdsOutput,
|
|
7
|
+
writeJsonEnvelope
|
|
8
|
+
} from "./chunk-VFIOJD5M.js";
|
|
9
|
+
import {
|
|
10
|
+
NO_CACHE_ARG
|
|
11
|
+
} from "./chunk-X7ZODEXJ.js";
|
|
12
|
+
import {
|
|
13
|
+
apiGet
|
|
14
|
+
} from "./chunk-XBOK23HI.js";
|
|
15
|
+
import "./chunk-IFWP3ZDO.js";
|
|
16
|
+
import "./chunk-NAWWC5I3.js";
|
|
17
|
+
import "./chunk-NU7JSWVA.js";
|
|
18
|
+
import "./chunk-YQSBHWOI.js";
|
|
19
|
+
|
|
20
|
+
// src/commands/ads/meta/pages.ts
|
|
21
|
+
import { defineCommand } from "citty";
|
|
22
|
+
function pageSelectionHints(data) {
|
|
23
|
+
if (data.length === 0) return [];
|
|
24
|
+
const accountHint = "Use a Page only with an ad account listed in its promotingAccountIds. hasPageAccessToken must be true to read instant forms; null means Meta could not check it. Form reads also require the company's lead-ads permissions.";
|
|
25
|
+
if (data.length > 1) {
|
|
26
|
+
return [
|
|
27
|
+
accountHint,
|
|
28
|
+
"MULTIPLE Pages can run ads from the selected Meta ad accounts \u2014 do NOT guess. Confirm with the user which Page an ad should run from before passing --page to `creatives create`; a wrong Page publishes the ad under the wrong brand identity and staging will not catch it."
|
|
29
|
+
];
|
|
30
|
+
}
|
|
31
|
+
return [accountHint];
|
|
32
|
+
}
|
|
33
|
+
var pagesCommand = defineCommand({
|
|
34
|
+
meta: {
|
|
35
|
+
name: "pages",
|
|
36
|
+
description: `List the Facebook Pages that the selected Meta ad accounts can promote, showing which accounts can promote each Page. Every Meta ad publishes from a Page, so match its promotingAccountIds to the target account. hasPageAccessToken shows whether the connected person can also read that Page's instant forms. If more than one Page is listed, confirm the brand with the user.
|
|
37
|
+
|
|
38
|
+
Examples:
|
|
39
|
+
baker ads meta pages`
|
|
40
|
+
},
|
|
41
|
+
args: {
|
|
42
|
+
"no-cache": NO_CACHE_ARG,
|
|
43
|
+
output: { type: "string", description: "Output format", default: "json" }
|
|
44
|
+
},
|
|
45
|
+
run: async ({ args }) => {
|
|
46
|
+
try {
|
|
47
|
+
const params = {};
|
|
48
|
+
if (args["no-cache"]) params["skip-cache"] = "true";
|
|
49
|
+
const data = await apiGet("/api/ads/meta/pages", params);
|
|
50
|
+
const fmt = csvOrJson(args);
|
|
51
|
+
if (fmt !== "json") {
|
|
52
|
+
writeAdsOutput(data, fmt);
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
const hints = pageSelectionHints(data);
|
|
56
|
+
writeJsonEnvelope(hints.length > 0 ? { ok: true, data, hints } : { ok: true, data });
|
|
57
|
+
} catch (err) {
|
|
58
|
+
handleMetaError(err);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
export {
|
|
63
|
+
pageSelectionHints,
|
|
64
|
+
pagesCommand
|
|
65
|
+
};
|
|
66
|
+
//# sourceMappingURL=pages-FXYQLHSJ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/commands/ads/meta/pages.ts"],"sourcesContent":["import { defineCommand } from \"citty\";\nimport { NO_CACHE_ARG } from \"../../../cache-flag.ts\";\nimport { apiGet } from \"../../../client.ts\";\nimport { writeAdsOutput, writeJsonEnvelope } from \"../output.ts\";\nimport { csvOrJson, handleMetaError } from \"./shared.ts\";\n\n/** Page Meta lists as promotable by a selected ad account. */\nexport interface MetaPage {\n id: string;\n name?: string;\n category?: string;\n promotingAccountIds: string[];\n hasPageAccessToken: boolean | null;\n}\n\n/**\n * Guide the agent to the right Page and ad-account pairing.\n */\nexport function pageSelectionHints(data: MetaPage[]): string[] {\n if (data.length === 0) return [];\n const accountHint =\n \"Use a Page only with an ad account listed in its promotingAccountIds. hasPageAccessToken must be true to read instant forms; null means Meta could not check it. Form reads also require the company's lead-ads permissions.\";\n if (data.length > 1) {\n return [\n accountHint,\n \"MULTIPLE Pages can run ads from the selected Meta ad accounts — do NOT guess. Confirm with the user which Page an ad should run from before passing --page to `creatives create`; a wrong Page publishes the ad under the wrong brand identity and staging will not catch it.\",\n ];\n }\n return [accountHint];\n}\n\nexport const pagesCommand = defineCommand({\n meta: {\n name: \"pages\",\n description: `List the Facebook Pages that the selected Meta ad accounts can promote, showing which accounts can promote each Page. Every Meta ad publishes from a Page, so match its promotingAccountIds to the target account. hasPageAccessToken shows whether the connected person can also read that Page's instant forms. If more than one Page is listed, confirm the brand with the user.\n\nExamples:\n baker ads meta pages`,\n },\n args: {\n \"no-cache\": NO_CACHE_ARG,\n output: { type: \"string\", description: \"Output format\", default: \"json\" },\n },\n run: async ({ args }) => {\n try {\n const params: Record<string, string> = {};\n if (args[\"no-cache\"]) params[\"skip-cache\"] = \"true\";\n const data = await apiGet<MetaPage[]>(\"/api/ads/meta/pages\", params);\n const fmt = csvOrJson(args);\n if (fmt !== \"json\") {\n writeAdsOutput(data as unknown as Array<Record<string, unknown>>, fmt);\n return;\n }\n const hints = pageSelectionHints(data);\n writeJsonEnvelope(hints.length > 0 ? { ok: true, data, hints } : { ok: true, data });\n } catch (err) {\n handleMetaError(err);\n }\n },\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,SAAS,qBAAqB;AAkBvB,SAAS,mBAAmB,MAA4B;AAC7D,MAAI,KAAK,WAAW,EAAG,QAAO,CAAC;AAC/B,QAAM,cACJ;AACF,MAAI,KAAK,SAAS,GAAG;AACnB,WAAO;AAAA,MACL;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACA,SAAO,CAAC,WAAW;AACrB;AAEO,IAAM,eAAe,cAAc;AAAA,EACxC,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aAAa;AAAA;AAAA;AAAA;AAAA,EAIf;AAAA,EACA,MAAM;AAAA,IACJ,YAAY;AAAA,IACZ,QAAQ,EAAE,MAAM,UAAU,aAAa,iBAAiB,SAAS,OAAO;AAAA,EAC1E;AAAA,EACA,KAAK,OAAO,EAAE,KAAK,MAAM;AACvB,QAAI;AACF,YAAM,SAAiC,CAAC;AACxC,UAAI,KAAK,UAAU,EAAG,QAAO,YAAY,IAAI;AAC7C,YAAM,OAAO,MAAM,OAAmB,uBAAuB,MAAM;AACnE,YAAM,MAAM,UAAU,IAAI;AAC1B,UAAI,QAAQ,QAAQ;AAClB,uBAAe,MAAmD,GAAG;AACrE;AAAA,MACF;AACA,YAAM,QAAQ,mBAAmB,IAAI;AACrC,wBAAkB,MAAM,SAAS,IAAI,EAAE,IAAI,MAAM,MAAM,MAAM,IAAI,EAAE,IAAI,MAAM,KAAK,CAAC;AAAA,IACrF,SAAS,KAAK;AACZ,sBAAgB,GAAG;AAAA,IACrB;AAAA,EACF;AACF,CAAC;","names":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import {
|
|
2
|
+
definitionInsights,
|
|
3
|
+
parseDays,
|
|
4
|
+
performanceCommand,
|
|
5
|
+
withDefinitions
|
|
6
|
+
} from "./chunk-AN447DQB.js";
|
|
7
|
+
import "./chunk-JM73NDCM.js";
|
|
8
|
+
import "./chunk-XWH7CCBL.js";
|
|
9
|
+
import "./chunk-GXDLWBOY.js";
|
|
10
|
+
import "./chunk-WYCVJIHD.js";
|
|
11
|
+
import "./chunk-ZJWUBJYQ.js";
|
|
12
|
+
import "./chunk-XML7AJM3.js";
|
|
13
|
+
import "./chunk-XBOK23HI.js";
|
|
14
|
+
import "./chunk-IFWP3ZDO.js";
|
|
15
|
+
import "./chunk-NAWWC5I3.js";
|
|
16
|
+
import "./chunk-NU7JSWVA.js";
|
|
17
|
+
import "./chunk-YQSBHWOI.js";
|
|
18
|
+
export {
|
|
19
|
+
definitionInsights,
|
|
20
|
+
parseDays,
|
|
21
|
+
performanceCommand,
|
|
22
|
+
withDefinitions
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=performance-7LQQCEAW.js.map
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import {
|
|
2
|
+
AUTO_INGEST_MAX,
|
|
3
|
+
parseAutoIngest
|
|
4
|
+
} from "./chunk-KKJ4KJCW.js";
|
|
5
|
+
import {
|
|
6
|
+
ApiError,
|
|
7
|
+
apiPost
|
|
8
|
+
} from "./chunk-XBOK23HI.js";
|
|
9
|
+
import "./chunk-IFWP3ZDO.js";
|
|
10
|
+
import "./chunk-NAWWC5I3.js";
|
|
11
|
+
import {
|
|
12
|
+
registerSchema,
|
|
13
|
+
writeJson
|
|
14
|
+
} from "./chunk-NU7JSWVA.js";
|
|
15
|
+
import "./chunk-YQSBHWOI.js";
|
|
16
|
+
|
|
17
|
+
// src/commands/images/pinterest.ts
|
|
18
|
+
import { defineCommand } from "citty";
|
|
19
|
+
registerSchema({
|
|
20
|
+
command: "images.pinterest",
|
|
21
|
+
description: "Pinterest image search via ScrapeCreators. Reference-grade real-world photography, product styling, interiors, fashion, food, and aesthetic mood boards. Inspect before placing \u2014 Pinterest is unverified, trademark-bearing web content.",
|
|
22
|
+
args: {
|
|
23
|
+
query: { type: "string", description: "Search query", required: true },
|
|
24
|
+
limit: { type: "number", description: "Max results (1-20, default 5)", required: false, default: 5 },
|
|
25
|
+
"auto-ingest": {
|
|
26
|
+
type: "number",
|
|
27
|
+
description: `Auto-ingest top N (0-${AUTO_INGEST_MAX.pinterest}, default 0) and return Baker-owned URLs on ingested hits`,
|
|
28
|
+
required: false,
|
|
29
|
+
default: 0
|
|
30
|
+
},
|
|
31
|
+
context: {
|
|
32
|
+
type: "string",
|
|
33
|
+
description: "Free-text hint applied to every auto-ingested hit (overrides the pin title)",
|
|
34
|
+
required: false
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
var pinterestCommand = defineCommand({
|
|
39
|
+
meta: {
|
|
40
|
+
name: "pinterest",
|
|
41
|
+
description: "Pinterest image search via ScrapeCreators ($0.00188/request). Best for photo-realistic reference imagery \u2014 lifestyle, interiors, fashion, food, product styling, and mood boards to brief AI generation against. \u26A0 Unverified, trademark-bearing web content \u2014 inspect and respect rights before placing on a customer page. Browse first; auto-ingest only the pins you commit to.\n\nExamples:\n baker images pinterest 'scandinavian living room'\n baker images pinterest 'minimalist skincare product photography' --limit 20\n baker images pinterest 'cozy coffee shop interior' --auto-ingest 2 --context 'Mood reference for hero photography'"
|
|
42
|
+
},
|
|
43
|
+
args: {
|
|
44
|
+
query: { type: "positional", description: "Search query", required: false },
|
|
45
|
+
limit: { type: "string", description: "Max results (1-20)", required: false },
|
|
46
|
+
"auto-ingest": {
|
|
47
|
+
type: "string",
|
|
48
|
+
description: `Auto-ingest top N (0-${AUTO_INGEST_MAX.pinterest}) and return Baker-owned URLs on ingested hits`,
|
|
49
|
+
required: false
|
|
50
|
+
},
|
|
51
|
+
context: { type: "string", description: "Description context hint applied to auto-ingested hits", required: false }
|
|
52
|
+
},
|
|
53
|
+
run: async ({ args }) => {
|
|
54
|
+
try {
|
|
55
|
+
const query = args.query;
|
|
56
|
+
if (!query) {
|
|
57
|
+
writeJson({ ok: false, error: { code: "VALIDATION_ERROR", message: "Query is required" } });
|
|
58
|
+
process.exit(1);
|
|
59
|
+
}
|
|
60
|
+
const body = { query };
|
|
61
|
+
if (args.limit) body.limit = Number(args.limit);
|
|
62
|
+
if (args["auto-ingest"] !== void 0) {
|
|
63
|
+
const parsed = parseAutoIngest(args["auto-ingest"], AUTO_INGEST_MAX.pinterest);
|
|
64
|
+
if (!parsed.ok) {
|
|
65
|
+
writeJson({
|
|
66
|
+
ok: false,
|
|
67
|
+
error: {
|
|
68
|
+
code: "VALIDATION_ERROR",
|
|
69
|
+
message: parsed.message,
|
|
70
|
+
fix: {
|
|
71
|
+
action: "retry_with_changes",
|
|
72
|
+
explanation: `Re-run with --auto-ingest in 0-${AUTO_INGEST_MAX.pinterest}.`
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
process.exit(1);
|
|
77
|
+
}
|
|
78
|
+
body.autoIngest = parsed.value;
|
|
79
|
+
}
|
|
80
|
+
if (args.context) body.descriptionContext = args.context;
|
|
81
|
+
const data = await apiPost("/api/images/pinterest", body);
|
|
82
|
+
writeJson({ ok: true, data });
|
|
83
|
+
} catch (err) {
|
|
84
|
+
if (err instanceof ApiError) {
|
|
85
|
+
writeJson({ ok: false, error: { code: err.code, message: err.message } });
|
|
86
|
+
process.exit(1);
|
|
87
|
+
}
|
|
88
|
+
writeJson({ ok: false, error: { code: "INTERNAL_ERROR", message: "Unexpected error" } });
|
|
89
|
+
process.exit(1);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
export {
|
|
94
|
+
pinterestCommand
|
|
95
|
+
};
|
|
96
|
+
//# sourceMappingURL=pinterest-AUH7WBA7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/commands/images/pinterest.ts"],"sourcesContent":["import type { ImagesPinterestRequest, ImagesPinterestResponse } from \"@baker/api\";\nimport { defineCommand } from \"citty\";\nimport { ApiError, apiPost } from \"../../client.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { AUTO_INGEST_MAX, parseAutoIngest } from \"./autoIngest.ts\";\n\nregisterSchema({\n command: \"images.pinterest\",\n description:\n \"Pinterest image search via ScrapeCreators. Reference-grade real-world photography, product styling, interiors, fashion, food, and aesthetic mood boards. Inspect before placing — Pinterest is unverified, trademark-bearing web content.\",\n args: {\n query: { type: \"string\", description: \"Search query\", required: true },\n limit: { type: \"number\", description: \"Max results (1-20, default 5)\", required: false, default: 5 },\n \"auto-ingest\": {\n type: \"number\",\n description: `Auto-ingest top N (0-${AUTO_INGEST_MAX.pinterest}, default 0) and return Baker-owned URLs on ingested hits`,\n required: false,\n default: 0,\n },\n context: {\n type: \"string\",\n description: \"Free-text hint applied to every auto-ingested hit (overrides the pin title)\",\n required: false,\n },\n },\n});\n\nexport const pinterestCommand = defineCommand({\n meta: {\n name: \"pinterest\",\n description:\n \"Pinterest image search via ScrapeCreators ($0.00188/request). Best for photo-realistic reference imagery — lifestyle, interiors, fashion, food, product styling, and mood boards to brief AI generation against. ⚠ Unverified, trademark-bearing web content — inspect and respect rights before placing on a customer page. Browse first; auto-ingest only the pins you commit to.\\n\\nExamples:\\n baker images pinterest 'scandinavian living room'\\n baker images pinterest 'minimalist skincare product photography' --limit 20\\n baker images pinterest 'cozy coffee shop interior' --auto-ingest 2 --context 'Mood reference for hero photography'\",\n },\n args: {\n query: { type: \"positional\", description: \"Search query\", required: false },\n limit: { type: \"string\", description: \"Max results (1-20)\", required: false },\n \"auto-ingest\": {\n type: \"string\",\n description: `Auto-ingest top N (0-${AUTO_INGEST_MAX.pinterest}) and return Baker-owned URLs on ingested hits`,\n required: false,\n },\n context: { type: \"string\", description: \"Description context hint applied to auto-ingested hits\", required: false },\n },\n run: async ({ args }) => {\n try {\n const query = args.query as string | undefined;\n if (!query) {\n writeJson({ ok: false, error: { code: \"VALIDATION_ERROR\", message: \"Query is required\" } });\n process.exit(1);\n }\n const body: ImagesPinterestRequest = { query };\n if (args.limit) body.limit = Number(args.limit);\n if (args[\"auto-ingest\"] !== undefined) {\n const parsed = parseAutoIngest(args[\"auto-ingest\"], AUTO_INGEST_MAX.pinterest);\n if (!parsed.ok) {\n writeJson({\n ok: false,\n error: {\n code: \"VALIDATION_ERROR\",\n message: parsed.message,\n fix: {\n action: \"retry_with_changes\",\n explanation: `Re-run with --auto-ingest in 0-${AUTO_INGEST_MAX.pinterest}.`,\n },\n },\n });\n process.exit(1);\n }\n body.autoIngest = parsed.value;\n }\n if (args.context) body.descriptionContext = args.context as string;\n\n const data = await apiPost<ImagesPinterestResponse>(\"/api/images/pinterest\", body);\n writeJson({ ok: true, data });\n } catch (err) {\n if (err instanceof ApiError) {\n writeJson({ ok: false, error: { code: err.code, message: err.message } });\n process.exit(1);\n }\n writeJson({ ok: false, error: { code: \"INTERNAL_ERROR\", message: \"Unexpected error\" } });\n process.exit(1);\n }\n },\n});\n"],"mappings":";;;;;;;;;;;;;;;;;AACA,SAAS,qBAAqB;AAM9B,eAAe;AAAA,EACb,SAAS;AAAA,EACT,aACE;AAAA,EACF,MAAM;AAAA,IACJ,OAAO,EAAE,MAAM,UAAU,aAAa,gBAAgB,UAAU,KAAK;AAAA,IACrE,OAAO,EAAE,MAAM,UAAU,aAAa,iCAAiC,UAAU,OAAO,SAAS,EAAE;AAAA,IACnG,eAAe;AAAA,MACb,MAAM;AAAA,MACN,aAAa,wBAAwB,gBAAgB,SAAS;AAAA,MAC9D,UAAU;AAAA,MACV,SAAS;AAAA,IACX;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,aAAa;AAAA,MACb,UAAU;AAAA,IACZ;AAAA,EACF;AACF,CAAC;AAEM,IAAM,mBAAmB,cAAc;AAAA,EAC5C,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,aACE;AAAA,EACJ;AAAA,EACA,MAAM;AAAA,IACJ,OAAO,EAAE,MAAM,cAAc,aAAa,gBAAgB,UAAU,MAAM;AAAA,IAC1E,OAAO,EAAE,MAAM,UAAU,aAAa,sBAAsB,UAAU,MAAM;AAAA,IAC5E,eAAe;AAAA,MACb,MAAM;AAAA,MACN,aAAa,wBAAwB,gBAAgB,SAAS;AAAA,MAC9D,UAAU;AAAA,IACZ;AAAA,IACA,SAAS,EAAE,MAAM,UAAU,aAAa,0DAA0D,UAAU,MAAM;AAAA,EACpH;AAAA,EACA,KAAK,OAAO,EAAE,KAAK,MAAM;AACvB,QAAI;AACF,YAAM,QAAQ,KAAK;AACnB,UAAI,CAAC,OAAO;AACV,kBAAU,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,oBAAoB,SAAS,oBAAoB,EAAE,CAAC;AAC1F,gBAAQ,KAAK,CAAC;AAAA,MAChB;AACA,YAAM,OAA+B,EAAE,MAAM;AAC7C,UAAI,KAAK,MAAO,MAAK,QAAQ,OAAO,KAAK,KAAK;AAC9C,UAAI,KAAK,aAAa,MAAM,QAAW;AACrC,cAAM,SAAS,gBAAgB,KAAK,aAAa,GAAG,gBAAgB,SAAS;AAC7E,YAAI,CAAC,OAAO,IAAI;AACd,oBAAU;AAAA,YACR,IAAI;AAAA,YACJ,OAAO;AAAA,cACL,MAAM;AAAA,cACN,SAAS,OAAO;AAAA,cAChB,KAAK;AAAA,gBACH,QAAQ;AAAA,gBACR,aAAa,kCAAkC,gBAAgB,SAAS;AAAA,cAC1E;AAAA,YACF;AAAA,UACF,CAAC;AACD,kBAAQ,KAAK,CAAC;AAAA,QAChB;AACA,aAAK,aAAa,OAAO;AAAA,MAC3B;AACA,UAAI,KAAK,QAAS,MAAK,qBAAqB,KAAK;AAEjD,YAAM,OAAO,MAAM,QAAiC,yBAAyB,IAAI;AACjF,gBAAU,EAAE,IAAI,MAAM,KAAK,CAAC;AAAA,IAC9B,SAAS,KAAK;AACZ,UAAI,eAAe,UAAU;AAC3B,kBAAU,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,IAAI,MAAM,SAAS,IAAI,QAAQ,EAAE,CAAC;AACxE,gBAAQ,KAAK,CAAC;AAAA,MAChB;AACA,gBAAU,EAAE,IAAI,OAAO,OAAO,EAAE,MAAM,kBAAkB,SAAS,mBAAmB,EAAE,CAAC;AACvF,cAAQ,KAAK,CAAC;AAAA,IAChB;AAAA,EACF;AACF,CAAC;","names":[]}
|