@koda-sl/baker-cli 0.513.0 → 0.515.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/dist/account-BA3IO3AN.js +139 -0
- package/dist/account-LVJFHDA3.js +82 -0
- package/dist/account-LVJFHDA3.js.map +1 -0
- package/dist/account-PTJ6OK6Z.js +82 -0
- package/dist/account-PTJ6OK6Z.js.map +1 -0
- package/dist/account-assets-T3VVNBUG.js +290 -0
- package/dist/account-level-MPFWRPEK.js +611 -0
- package/dist/account-level-MPFWRPEK.js.map +1 -0
- package/dist/account-reads-5CXFLJ5Q.js +219 -0
- package/dist/account-users-B7DCJEFD.js +64 -0
- package/dist/account-users-B7DCJEFD.js.map +1 -0
- package/dist/account-writes-W5EOTS7P.js +68 -0
- package/dist/account-writes-W5EOTS7P.js.map +1 -0
- package/dist/accounts-4R3MBNJG.js +76 -0
- package/dist/accounts-5WF7VE7J.js +115 -0
- package/dist/accounts-IQTEH4BX.js +701 -0
- package/dist/accounts-IQTEH4BX.js.map +1 -0
- package/dist/accounts-SV7JZUCC.js +80 -0
- package/dist/accounts-SV7JZUCC.js.map +1 -0
- package/dist/accounts-VPWCLF6X.js +114 -0
- package/dist/actions-D7OWCP36.js +55 -0
- package/dist/active-entities-WDPW7652.js +103 -0
- package/dist/activecampaign-LBS4M4C4.js +938 -0
- package/dist/activecampaign-LBS4M4C4.js.map +1 -0
- package/dist/activities-WGPHYSFU.js +75 -0
- package/dist/ad-group-writes-JL56DPC4.js +172 -0
- package/dist/ad-group-writes-JL56DPC4.js.map +1 -0
- package/dist/ad-groups-62JPLIK3.js +70 -0
- package/dist/ad-groups-62JPLIK3.js.map +1 -0
- package/dist/ad-writes-WSKLRGB7.js +176 -0
- package/dist/ad-writes-WSKLRGB7.js.map +1 -0
- package/dist/add-HFQB2NTU.js +107 -0
- package/dist/add-HFQB2NTU.js.map +1 -0
- package/dist/add-IUYE5H6A.js +305 -0
- package/dist/add-IUYE5H6A.js.map +1 -0
- package/dist/ads-F7AUJWK7.js +115 -0
- package/dist/ads-JFI56MZL.js +79 -0
- package/dist/ads-JFI56MZL.js.map +1 -0
- package/dist/ads-OV3SMLKA.js +48 -0
- package/dist/adsets-XH2ULWPM.js +182 -0
- package/dist/advertisers-XXM6POO5.js +123 -0
- package/dist/advertisers-XXM6POO5.js.map +1 -0
- package/dist/analytics-MJT6DS3L.js +447 -0
- package/dist/analytics-MJT6DS3L.js.map +1 -0
- package/dist/analytics-W7EUOI2Q.js +2437 -0
- package/dist/analytics-W7EUOI2Q.js.map +1 -0
- package/dist/asset-writes-4X3AJQ4Q.js +50 -0
- package/dist/assign-2GQVQKKO.js +80 -0
- package/dist/assign-2GQVQKKO.js.map +1 -0
- package/dist/audience-size-VHXBNNIB.js +76 -0
- package/dist/audience-size-VHXBNNIB.js.map +1 -0
- package/dist/audience-writes-TXWPDJ2F.js +327 -0
- package/dist/audience-writes-TXWPDJ2F.js.map +1 -0
- package/dist/audiences-B2LFKWIS.js +280 -0
- package/dist/audiences-B2LFKWIS.js.map +1 -0
- package/dist/audiences-MBBXWEOI.js +86 -0
- package/dist/audiences-YUG5JLL4.js +85 -0
- package/dist/audit-VT2WSZWM.js +154 -0
- package/dist/audit-VT2WSZWM.js.map +1 -0
- package/dist/audit-WFXS5ELM.js +88 -0
- package/dist/autocomplete-ZYMHHV7E.js +114 -0
- package/dist/autocomplete-ZYMHHV7E.js.map +1 -0
- package/dist/avatars-WZ2JDMHH.js +38 -0
- package/dist/bid-pricing-5F3GBSAI.js +103 -0
- package/dist/bid-pricing-5F3GBSAI.js.map +1 -0
- package/dist/brand-IZTTBZII.js +22 -0
- package/dist/brief-OPQ7ICOY.js +543 -0
- package/dist/brief-OPQ7ICOY.js.map +1 -0
- package/dist/businesses-24JNY46Z.js +54 -0
- package/dist/campaign-groups-BDCDTMBF.js +99 -0
- package/dist/campaign-groups-BDCDTMBF.js.map +1 -0
- package/dist/campaign-writes-73H7G3JM.js +168 -0
- package/dist/campaign-writes-73H7G3JM.js.map +1 -0
- package/dist/campaign-writes-FNVOHONL.js +176 -0
- package/dist/campaign-writes-FNVOHONL.js.map +1 -0
- package/dist/campaigns-FUDZUVHN.js +78 -0
- package/dist/campaigns-FUDZUVHN.js.map +1 -0
- package/dist/campaigns-J65Q4WAZ.js +113 -0
- package/dist/campaigns-J65Q4WAZ.js.map +1 -0
- package/dist/campaigns-KXYGSH27.js +130 -0
- package/dist/campaigns-U5FQ2VWL.js +111 -0
- package/dist/canvas-IQ753Q2O.js +46 -0
- package/dist/capabilities-ZITW4RF7.js +147 -0
- package/dist/capabilities-ZITW4RF7.js.map +1 -0
- package/dist/cards-NSNAFTEB.js +85 -0
- package/dist/catalogs-OWQGGCIO.js +130 -0
- package/dist/catalogs-OWQGGCIO.js.map +1 -0
- package/dist/catalogs-VZYAATUR.js +781 -0
- package/dist/catalogs-VZYAATUR.js.map +1 -0
- package/dist/changes-RDWMNSTK.js +135 -0
- package/dist/chatgpt-27NEJVGF.js +47 -0
- package/dist/chats-AL2SYBJO.js +279 -0
- package/dist/chats-AL2SYBJO.js.map +1 -0
- package/dist/check-U2YLRD6H.js +107 -0
- package/dist/check-U2YLRD6H.js.map +1 -0
- package/dist/chunk-2F4DELSV.js +200 -0
- package/dist/chunk-2GYCWRF3.js +170 -0
- package/dist/chunk-2L7F7KR4.js +61 -0
- package/dist/chunk-44ZRCSR7.js +228 -0
- package/dist/chunk-46YLDIQG.js +4254 -0
- package/dist/chunk-4EDWXZ3I.js +363 -0
- package/dist/chunk-4FFBGR5L.js +66 -0
- package/dist/chunk-4UZUUSVL.js +592 -0
- package/dist/chunk-4XHCEYHI.js +831 -0
- package/dist/chunk-4Z6PVR3M.js +479 -0
- package/dist/chunk-5Y5FZV2W.js +122 -0
- package/dist/chunk-6DPSWLGY.js +324 -0
- package/dist/chunk-6DPSWLGY.js.map +1 -0
- package/dist/chunk-6HJXLGDV.js +392 -0
- package/dist/chunk-6S5CWGDA.js +429 -0
- package/dist/chunk-6VYROVWO.js +494 -0
- package/dist/chunk-AQRXXC6E.js +319 -0
- package/dist/chunk-ARBXT73X.js +387 -0
- package/dist/chunk-BEZHQIEI.js +97 -0
- package/dist/chunk-BFURWHVR.js +547 -0
- package/dist/chunk-EZSPVWLQ.js +169 -0
- package/dist/chunk-FCHZ5TNG.js +26 -0
- package/dist/chunk-FLWDFPXE.js +23 -0
- package/dist/chunk-FQMEX3GX.js +846 -0
- package/dist/chunk-G4FG5EQO.js +110 -0
- package/dist/chunk-G4FG5EQO.js.map +1 -0
- package/dist/chunk-GE3VT3CA.js +51 -0
- package/dist/chunk-GGK2CX6B.js +24026 -0
- package/dist/chunk-GGK2CX6B.js.map +1 -0
- package/dist/chunk-GHZ6HP2X.js +358 -0
- package/dist/chunk-GHZ6HP2X.js.map +1 -0
- package/dist/chunk-HCQJYI6X.js +74 -0
- package/dist/chunk-HGBJQGO5.js +142 -0
- package/dist/chunk-HHVWV5BJ.js +191 -0
- package/dist/chunk-I3WGTSDY.js +76 -0
- package/dist/chunk-I7AYMJZA.js +783 -0
- package/dist/chunk-IDSDJHRS.js +106 -0
- package/dist/chunk-ILPHIYAL.js +207 -0
- package/dist/chunk-IWKD56AY.js +156 -0
- package/dist/chunk-JLAQWMVF.js +3868 -0
- package/dist/chunk-JOE42ZW6.js +2984 -0
- package/dist/chunk-JOE42ZW6.js.map +1 -0
- package/dist/chunk-K6NULQN7.js +57 -0
- package/dist/chunk-L2BRAC2J.js +19 -0
- package/dist/chunk-LGMI4LSY.js +455 -0
- package/dist/chunk-LNODLR7W.js +149 -0
- package/dist/chunk-LQ2BRGMX.js +274 -0
- package/dist/chunk-M7QZSEHF.js +175 -0
- package/dist/chunk-NB2FU6EZ.js +179 -0
- package/dist/chunk-NFII3MTG.js +207 -0
- package/dist/chunk-NKQWDEB7.js +115 -0
- package/dist/chunk-NKQWDEB7.js.map +1 -0
- package/dist/chunk-OG47L5GG.js +275 -0
- package/dist/chunk-PC3FJEZH.js +7211 -0
- package/dist/chunk-PC3FJEZH.js.map +1 -0
- package/dist/chunk-Q3GSVLE5.js +4274 -0
- package/dist/chunk-Q3GSVLE5.js.map +1 -0
- package/dist/chunk-QIOFOD4K.js +344 -0
- package/dist/chunk-R2SYF5FC.js +249 -0
- package/dist/chunk-RTH2I55B.js +942 -0
- package/dist/chunk-S6VFDNSQ.js +63 -0
- package/dist/chunk-SG2TDQEE.js +150 -0
- package/dist/chunk-SOPVIIUW.js +68 -0
- package/dist/chunk-SOPVIIUW.js.map +1 -0
- package/dist/chunk-T3P6O2VU.js +89 -0
- package/dist/chunk-TU5LQUJM.js +74 -0
- package/dist/chunk-TU7DWSTW.js +69 -0
- package/dist/chunk-TXDE2QJ3.js +604 -0
- package/dist/chunk-TYXZ2SRW.js +287 -0
- package/dist/chunk-UDIEKCIR.js +203 -0
- package/dist/chunk-UQHHGT67.js +676 -0
- package/dist/chunk-USCADMM3.js +163 -0
- package/dist/chunk-UUGISMNE.js +910 -0
- package/dist/chunk-VDPOCAQ2.js +197 -0
- package/dist/chunk-VEJ3QX6M.js +103 -0
- package/dist/chunk-VFJB7OG6.js +91 -0
- package/dist/chunk-VPABGAN4.js +188 -0
- package/dist/chunk-VRIPVLE7.js +8954 -0
- package/dist/chunk-WLESMH4J.js +45 -0
- package/dist/chunk-XOQNM7I4.js +396 -0
- package/dist/chunk-XOQNM7I4.js.map +1 -0
- package/dist/chunk-YILZR3XI.js +224 -0
- package/dist/chunk-YJFLXOH4.js +191 -0
- package/dist/chunk-YWHZYR6S.js +297 -0
- package/dist/chunk-Z35KUMBW.js +219 -0
- package/dist/chunk-Z7I2ZFXS.js +1646 -0
- package/dist/claim-GOLUTAJ3.js +200 -0
- package/dist/claim-GOLUTAJ3.js.map +1 -0
- package/dist/cli.js +34 -34
- package/dist/companies-CSN7DPYW.js +198 -0
- package/dist/companies-CSN7DPYW.js.map +1 -0
- package/dist/company-MOSPLRZJ.js +308 -0
- package/dist/company-MOSPLRZJ.js.map +1 -0
- package/dist/complete-777BDV45.js +84 -0
- package/dist/complete-777BDV45.js.map +1 -0
- package/dist/config-55WGRLY3.js +88 -0
- package/dist/connect-3YY7MF3I.js +45 -0
- package/dist/conversation-6K2TNYBQ.js +96 -0
- package/dist/conversation-6K2TNYBQ.js.map +1 -0
- package/dist/conversion-report-WYYB3BK2.js +127 -0
- package/dist/conversion-report-WYYB3BK2.js.map +1 -0
- package/dist/conversion-upload-command-VM2P57K6.js +439 -0
- package/dist/conversion-writes-DHOPMA7X.js +122 -0
- package/dist/conversion-writes-DHOPMA7X.js.map +1 -0
- package/dist/conversions-KWY7BNDN.js +78 -0
- package/dist/conversions-KWY7BNDN.js.map +1 -0
- package/dist/conversions-MLRK35ZV.js +140 -0
- package/dist/conversions-MLRK35ZV.js.map +1 -0
- package/dist/copy-writes-E3V5TUVU.js +170 -0
- package/dist/copy-writes-E3V5TUVU.js.map +1 -0
- package/dist/create-3WOZO2XT.js +239 -0
- package/dist/create-3WOZO2XT.js.map +1 -0
- package/dist/create-7IFYLX7P.js +210 -0
- package/dist/create-7IFYLX7P.js.map +1 -0
- package/dist/create-FOHIQC3E.js +62 -0
- package/dist/create-FOHIQC3E.js.map +1 -0
- package/dist/create-UWQSQTK6.js +135 -0
- package/dist/create-UWQSQTK6.js.map +1 -0
- package/dist/creatives-2DR3QHJW.js +58 -0
- package/dist/creatives-DUR5Z5AN.js +89 -0
- package/dist/creatives-KN3MT533.js +223 -0
- package/dist/creatives-KN3MT533.js.map +1 -0
- package/dist/credentials-IP4L37XP.js +290 -0
- package/dist/credentials-IP4L37XP.js.map +1 -0
- package/dist/critique-LGDNMLBL.js +232 -0
- package/dist/critique-LGDNMLBL.js.map +1 -0
- package/dist/critique-LJMFAURK.js +1451 -0
- package/dist/critique-LJMFAURK.js.map +1 -0
- package/dist/crm-BNYW7PF7.js +323 -0
- package/dist/crm-BNYW7PF7.js.map +1 -0
- package/dist/crm-DMADHALO.js +227 -0
- package/dist/crm-DMADHALO.js.map +1 -0
- package/dist/currency-X4KEACEP.js +88 -0
- package/dist/custom-conversions-OIA5Y2GX.js +128 -0
- package/dist/customers-663K2OCP.js +59 -0
- package/dist/delete-5W3YVA4L.js +67 -0
- package/dist/delete-5W3YVA4L.js.map +1 -0
- package/dist/delete-6U7E6YUW.js +57 -0
- package/dist/delete-6U7E6YUW.js.map +1 -0
- package/dist/delete-G4NY6ZG6.js +69 -0
- package/dist/delete-G4NY6ZG6.js.map +1 -0
- package/dist/demographics-UZ7BCQ7K.js +141 -0
- package/dist/demographics-UZ7BCQ7K.js.map +1 -0
- package/dist/discard-RKCZNKMN.js +69 -0
- package/dist/discard-RKCZNKMN.js.map +1 -0
- package/dist/discover-2W42JB56.js +172 -0
- package/dist/domain-PLA2O4FW.js +101 -0
- package/dist/domain-PLA2O4FW.js.map +1 -0
- package/dist/download-4EFLVSA4.js +172 -0
- package/dist/download-4EFLVSA4.js.map +1 -0
- package/dist/draft-2ZX73IRO.js +238 -0
- package/dist/draft-6XMZYSMR.js +283 -0
- package/dist/draft-6XMZYSMR.js.map +1 -0
- package/dist/draft-CKLIIWXZ.js +308 -0
- package/dist/draft-IUEULQDT.js +310 -0
- package/dist/draft-IUEULQDT.js.map +1 -0
- package/dist/draft-JMNAGW7C.js +220 -0
- package/dist/draft-JMNAGW7C.js.map +1 -0
- package/dist/draft-L5Q6KEER.js +100 -0
- package/dist/draft-MJRMZGMP.js +103 -0
- package/dist/draft-WPMVLRME.js +335 -0
- package/dist/draft-WPMVLRME.js.map +1 -0
- package/dist/experiment-3VRHCQN5.js +1397 -0
- package/dist/experiments-S4TSXCK6.js +236 -0
- package/dist/experiments-S4TSXCK6.js.map +1 -0
- package/dist/facets-D3JG7OSO.js +117 -0
- package/dist/facets-D3JG7OSO.js.map +1 -0
- package/dist/feedback-IRSRPXV6.js +111 -0
- package/dist/feedback-IRSRPXV6.js.map +1 -0
- package/dist/feedback-record-DT3R4NA3.js +265 -0
- package/dist/feedback-record-DT3R4NA3.js.map +1 -0
- package/dist/fetch-YLQP5VQL.js +179 -0
- package/dist/fetch-YLQP5VQL.js.map +1 -0
- package/dist/fit-BEFCY2B4.js +65 -0
- package/dist/flows-FDMF3F3P.js +250 -0
- package/dist/flows-FDMF3F3P.js.map +1 -0
- package/dist/fonts-C6XN5667.js +39 -0
- package/dist/forecast-4YHMKO54.js +121 -0
- package/dist/forecast-4YHMKO54.js.map +1 -0
- package/dist/forecast-LYN6ZGQC.js +169 -0
- package/dist/funding-TCEPQXRQ.js +85 -0
- package/dist/funnel-CQIT3F23.js +397 -0
- package/dist/funnel-CQIT3F23.js.map +1 -0
- package/dist/ga4-JE3HS36B.js +55 -0
- package/dist/get-KBSKPTAV.js +59 -0
- package/dist/get-KBSKPTAV.js.map +1 -0
- package/dist/get-OSVQVMP6.js +82 -0
- package/dist/get-OSVQVMP6.js.map +1 -0
- package/dist/google-24FDG4C4.js +3267 -0
- package/dist/google-ads-XCJVAXWF.js +198 -0
- package/dist/google-ads-XCJVAXWF.js.map +1 -0
- package/dist/gsc-RMVOYIM3.js +30 -0
- package/dist/history-4TN2A6BL.js +136 -0
- package/dist/history-4TN2A6BL.js.map +1 -0
- package/dist/history-5IWW2X33.js +102 -0
- package/dist/history-5IWW2X33.js.map +1 -0
- package/dist/history-GIXIG276.js +69 -0
- package/dist/history-GIXIG276.js.map +1 -0
- package/dist/hubspot-5WB7TQBG.js +782 -0
- package/dist/hubspot-5WB7TQBG.js.map +1 -0
- package/dist/ideas-M66FU45H.js +45 -0
- package/dist/images-MM5OPUKV.js +92 -0
- package/dist/ingest-GU3WEBN3.js +110 -0
- package/dist/ingest-GU3WEBN3.js.map +1 -0
- package/dist/ingest-KMLYCFF4.js +26 -0
- package/dist/insights-HATH3IC6.js +439 -0
- package/dist/insights-HATH3IC6.js.map +1 -0
- package/dist/insights-VKPIVJMK.js +132 -0
- package/dist/insights-VKPIVJMK.js.map +1 -0
- package/dist/inspect-4JO2J3D6.js +192 -0
- package/dist/inspect-4JO2J3D6.js.map +1 -0
- package/dist/instant-experiences-A2SIQNB5.js +260 -0
- package/dist/instant-experiences-A2SIQNB5.js.map +1 -0
- package/dist/intent-YCQCUCV3.js +95 -0
- package/dist/job-SM2OQ2LO.js +202 -0
- package/dist/job-create-ECZHPVKH.js +109 -0
- package/dist/job-status-QSYDKIIV.js +74 -0
- package/dist/keyword-gap-PUSF7EKY.js +130 -0
- package/dist/keyword-metrics-JXBM22ZD.js +200 -0
- package/dist/keyword-metrics-JXBM22ZD.js.map +1 -0
- package/dist/keywords-for-site-OAYA7KP7.js +131 -0
- package/dist/keywords-for-site-OAYA7KP7.js.map +1 -0
- package/dist/landing-OZU5RRFV.js +28 -0
- package/dist/languages-Q5SKO4AM.js +40 -0
- package/dist/leads-QAYS7AJO.js +540 -0
- package/dist/leads-QAYS7AJO.js.map +1 -0
- package/dist/leads-VOSFVNUK.js +115 -0
- package/dist/leads-VOSFVNUK.js.map +1 -0
- package/dist/learn-NBBJRMVZ.js +207 -0
- package/dist/learn-NBBJRMVZ.js.map +1 -0
- package/dist/line-item-writes-VBBB3TRS.js +211 -0
- package/dist/line-item-writes-VBBB3TRS.js.map +1 -0
- package/dist/line-items-2V5FY33R.js +107 -0
- package/dist/link-WZSNUQQ2.js +67 -0
- package/dist/link-WZSNUQQ2.js.map +1 -0
- package/dist/linkedin-CDFCOHKI.js +1316 -0
- package/dist/linkedin-CDFCOHKI.js.map +1 -0
- package/dist/linkedin-person-MVRI7LLC.js +139 -0
- package/dist/linkedin-person-MVRI7LLC.js.map +1 -0
- package/dist/list-6S54IAUX.js +67 -0
- package/dist/list-6S54IAUX.js.map +1 -0
- package/dist/list-QRJ4E3SC.js +154 -0
- package/dist/list-QRJ4E3SC.js.map +1 -0
- package/dist/list-RZUDFLJN.js +306 -0
- package/dist/list-RZUDFLJN.js.map +1 -0
- package/dist/locations-RFTE42OS.js +69 -0
- package/dist/locations-RFTE42OS.js.map +1 -0
- package/dist/locations-VQYREHYI.js +40 -0
- package/dist/log-53SAPZZ3.js +95 -0
- package/dist/log-53SAPZZ3.js.map +1 -0
- package/dist/lookup-MELV3RUL.js +23 -0
- package/dist/make-ZF3YIMKW.js +1370 -0
- package/dist/make-ZF3YIMKW.js.map +1 -0
- package/dist/map-J37QFJSV.js +436 -0
- package/dist/map-J37QFJSV.js.map +1 -0
- package/dist/mcp-B7WSZQFD.js +729 -0
- package/dist/mcp-B7WSZQFD.js.map +1 -0
- package/dist/media-BPI2VE6A.js +89 -0
- package/dist/media-EEWZZU3P.js +18 -0
- package/dist/media-sources-EQI3U4TC.js +35 -0
- package/dist/members-GYVMSCKL.js +47 -0
- package/dist/members-GYVMSCKL.js.map +1 -0
- package/dist/meta-SMJUQP37.js +122 -0
- package/dist/metrics-EMAP7ESR.js +152 -0
- package/dist/normalize-MFN3WCH5.js +144 -0
- package/dist/normalize-MFN3WCH5.js.map +1 -0
- package/dist/options-DLHDHO7H.js +125 -0
- package/dist/options-DLHDHO7H.js.map +1 -0
- package/dist/organization-C2VOA2SD.js +949 -0
- package/dist/organization-C2VOA2SD.js.map +1 -0
- package/dist/output-4QBQEM4C.js +24 -0
- package/dist/page-photos-HRKPDQBM.js +118 -0
- package/dist/page-photos-HRKPDQBM.js.map +1 -0
- package/dist/pages-DTQWQUKP.js +67 -0
- package/dist/performance-NIF3CESZ.js +27 -0
- package/dist/performance-T6TBVHVU.js +5541 -0
- package/dist/performance-T6TBVHVU.js.map +1 -0
- package/dist/pixels-2BKADWE6.js +109 -0
- package/dist/pixels-F6BZNTDD.js +62 -0
- package/dist/pixels-F6BZNTDD.js.map +1 -0
- package/dist/plan-A6VC3ZO7.js +208 -0
- package/dist/plan-A6VC3ZO7.js.map +1 -0
- package/dist/preview-GGIGXPJW.js +218 -0
- package/dist/preview-GGIGXPJW.js.map +1 -0
- package/dist/promoted-tweet-writes-WU2SKKZF.js +183 -0
- package/dist/promoted-tweet-writes-WU2SKKZF.js.map +1 -0
- package/dist/promoted-tweets-653Q5AC6.js +119 -0
- package/dist/properties-VWKO3AAK.js +101 -0
- package/dist/publish-IOTMJCCY.js +344 -0
- package/dist/publish-IOTMJCCY.js.map +1 -0
- package/dist/query-CXIOL7WI.js +62 -0
- package/dist/query-OOP63DJF.js +236 -0
- package/dist/query-RBZFAIDK.js +247 -0
- package/dist/questionnaire-7SHYRTMJ.js +94 -0
- package/dist/questionnaire-7SHYRTMJ.js.map +1 -0
- package/dist/read-GOULD7YL.js +141 -0
- package/dist/reddit-JIHMAKAQ.js +29 -0
- package/dist/refresh-OQZ263CS.js +97 -0
- package/dist/refresh-OQZ263CS.js.map +1 -0
- package/dist/release-4CHFURO3.js +63 -0
- package/dist/release-4CHFURO3.js.map +1 -0
- package/dist/relevant-pages-FS7GBVXK.js +99 -0
- package/dist/remove-IJQPHPDI.js +53 -0
- package/dist/remove-IJQPHPDI.js.map +1 -0
- package/dist/reopen-YTLPVKUR.js +66 -0
- package/dist/reopen-YTLPVKUR.js.map +1 -0
- package/dist/rerun-C7NB7B35.js +95 -0
- package/dist/rerun-C7NB7B35.js.map +1 -0
- package/dist/research-PNBACCCP.js +72 -0
- package/dist/research-TLHNPK3O.js +265 -0
- package/dist/research-TLHNPK3O.js.map +1 -0
- package/dist/reset-JVLW7HA2.js +57 -0
- package/dist/reset-JVLW7HA2.js.map +1 -0
- package/dist/reset-Y6FXLAQE.js +57 -0
- package/dist/reset-Y6FXLAQE.js.map +1 -0
- package/dist/resolve-RCFAYPWR.js +124 -0
- package/dist/resolve-RCFAYPWR.js.map +1 -0
- package/dist/retry-3V3IGDRR.js +65 -0
- package/dist/retry-3V3IGDRR.js.map +1 -0
- package/dist/retry-AEKQLQMP.js +63 -0
- package/dist/retry-AEKQLQMP.js.map +1 -0
- package/dist/revenue-3R6JLYCQ.js +91 -0
- package/dist/revenue-3R6JLYCQ.js.map +1 -0
- package/dist/rule-writes-K4P3XBJW.js +525 -0
- package/dist/rule-writes-K4P3XBJW.js.map +1 -0
- package/dist/rules-34BQAWU3.js +99 -0
- package/dist/rules-34BQAWU3.js.map +1 -0
- package/dist/rules-HY7S2YTD.js +217 -0
- package/dist/rules-add-CM5XUYNS.js +465 -0
- package/dist/rules-add-CM5XUYNS.js.map +1 -0
- package/dist/run-MD64RDHZ.js +69 -0
- package/dist/run-MD64RDHZ.js.map +1 -0
- package/dist/run-QCNRR3CA.js +70 -0
- package/dist/scaffold-ad-NADPY3CB.js +1516 -0
- package/dist/scaffold-ad-NADPY3CB.js.map +1 -0
- package/dist/scaffold-static-ad-5YEYYVYH.js +1015 -0
- package/dist/scaffold-static-ad-5YEYYVYH.js.map +1 -0
- package/dist/scaffold-video-W7DF2CBJ.js +888 -0
- package/dist/scaffold-video-W7DF2CBJ.js.map +1 -0
- package/dist/schedule-CTRRF6TS.js +64 -0
- package/dist/schedule-CTRRF6TS.js.map +1 -0
- package/dist/scheduled-agents-OXYAVSIE.js +55 -0
- package/dist/schema-BEUYOGSW.js +135 -0
- package/dist/schema-BEUYOGSW.js.map +1 -0
- package/dist/search-GFJKWPKN.js +177 -0
- package/dist/search-GFJKWPKN.js.map +1 -0
- package/dist/select-S72CCL57.js +106 -0
- package/dist/select-S72CCL57.js.map +1 -0
- package/dist/sends-WBYTALR7.js +349 -0
- package/dist/sends-WBYTALR7.js.map +1 -0
- package/dist/set-prompt-YYFDRXRI.js +198 -0
- package/dist/set-prompt-YYFDRXRI.js.map +1 -0
- package/dist/setup-links-D4JJLESN.js +144 -0
- package/dist/setup-links-D4JJLESN.js.map +1 -0
- package/dist/shared-CGEJI2RB.js +32 -0
- package/dist/shopify-DQWEYPDX.js +3958 -0
- package/dist/shopify-DQWEYPDX.js.map +1 -0
- package/dist/site-BBZAUZA3.js +180 -0
- package/dist/site-BBZAUZA3.js.map +1 -0
- package/dist/sitemaps-5SP7PVQ6.js +87 -0
- package/dist/sites-YZDPHBST.js +101 -0
- package/dist/sources-7FIBHL6A.js +457 -0
- package/dist/sources-7FIBHL6A.js.map +1 -0
- package/dist/sources-FLUGHSVP.js +30 -0
- package/dist/stale-HP54JS5X.js +76 -0
- package/dist/stale-HP54JS5X.js.map +1 -0
- package/dist/stats-EGGNFTKI.js +34 -0
- package/dist/status-CLSWQFCQ.js +65 -0
- package/dist/status-CLSWQFCQ.js.map +1 -0
- package/dist/studies-6VUUOMZD.js +250 -0
- package/dist/study-writes-IR7RSSTK.js +470 -0
- package/dist/study-writes-IR7RSSTK.js.map +1 -0
- package/dist/sync-4YTVVEVC.js +57 -0
- package/dist/sync-4YTVVEVC.js.map +1 -0
- package/dist/sync-SCM6JGJP.js +279 -0
- package/dist/sync-definition-OGQ5XTQE.js +69 -0
- package/dist/tag-manager-REKD4WGU.js +43 -0
- package/dist/tags-CZTRQNXV.js +26 -0
- package/dist/tags-FDQXWTCQ.js +23 -0
- package/dist/tags-FDQXWTCQ.js.map +1 -0
- package/dist/tags-R67DKRZ6.js +23 -0
- package/dist/tags-R67DKRZ6.js.map +1 -0
- package/dist/tags-SA2LU6AW.js +227 -0
- package/dist/tags-SA2LU6AW.js.map +1 -0
- package/dist/tags-ZOXX6VRE.js +23 -0
- package/dist/tags-ZOXX6VRE.js.map +1 -0
- package/dist/targeting-BQUD54MF.js +762 -0
- package/dist/targeting-BQUD54MF.js.map +1 -0
- package/dist/targeting-constants-MRQB4N5I.js +118 -0
- package/dist/targeting-criteria-HSAESZIR.js +113 -0
- package/dist/targets-UUVCEG3F.js +106 -0
- package/dist/targets-UUVCEG3F.js.map +1 -0
- package/dist/terms-D2KAFHKJ.js +102 -0
- package/dist/testimonials-G3OCNPBY.js +32 -0
- package/dist/themes-X56KIX3Z.js +95 -0
- package/dist/top-companies-2RLNCSVS.js +111 -0
- package/dist/top-companies-2RLNCSVS.js.map +1 -0
- package/dist/transcript-U46AEOEI.js +165 -0
- package/dist/transcript-U46AEOEI.js.map +1 -0
- package/dist/translate-AS7JVKYM.js +609 -0
- package/dist/translate-AS7JVKYM.js.map +1 -0
- package/dist/triggers-ECRBPYYF.js +144 -0
- package/dist/triggers-ECRBPYYF.js.map +1 -0
- package/dist/tweets-JN6ARKF6.js +123 -0
- package/dist/unlink-VDNCSRJV.js +70 -0
- package/dist/unlink-VDNCSRJV.js.map +1 -0
- package/dist/unstage-5C27F2LZ.js +96 -0
- package/dist/unstage-5C27F2LZ.js.map +1 -0
- package/dist/unstage-ATDXUYP2.js +88 -0
- package/dist/unstage-ATDXUYP2.js.map +1 -0
- package/dist/update-FJ6TBV3E.js +101 -0
- package/dist/update-FJ6TBV3E.js.map +1 -0
- package/dist/update-HDBJCSTI.js +66 -0
- package/dist/update-HDBJCSTI.js.map +1 -0
- package/dist/update-U43DJRGV.js +155 -0
- package/dist/update-U43DJRGV.js.map +1 -0
- package/dist/update-Z7TIUBMJ.js +192 -0
- package/dist/update-Z7TIUBMJ.js.map +1 -0
- package/dist/upload-LXCFSRIU.js +129 -0
- package/dist/upload-LXCFSRIU.js.map +1 -0
- package/dist/url-options-C543MY7L.js +131 -0
- package/dist/url-options-C543MY7L.js.map +1 -0
- package/dist/url-params-TEFCXQ5N.js +101 -0
- package/dist/url-params-TEFCXQ5N.js.map +1 -0
- package/dist/validate-VR3HEOMJ.js +122 -0
- package/dist/validate-VR3HEOMJ.js.map +1 -0
- package/dist/videos-36AXDUGZ.js +41 -0
- package/dist/viewer-check-6HL4OUQY.js +83 -0
- package/dist/web-7BRJRQX7.js +143 -0
- package/dist/web-7BRJRQX7.js.map +1 -0
- package/dist/winning-ads-GMM5W2O4.js +86 -0
- package/dist/write-commands-B25W4FP5.js +713 -0
- package/dist/write-commands-DO2YUOMG.js +1502 -0
- package/dist/write-commands-DO2YUOMG.js.map +1 -0
- package/dist/write-commands-GNNEUVDW.js +206 -0
- package/dist/write-commands-NXJQQ62W.js +1172 -0
- package/dist/write-commands-NXJQQ62W.js.map +1 -0
- package/dist/x-JNR5SO6F.js +47 -0
- package/package.json +1 -1
- package/dist/account-UUAEQWO3.js +0 -80
- package/dist/account-UUAEQWO3.js.map +0 -1
- package/dist/account-WLQBAQMD.js +0 -80
- package/dist/account-WLQBAQMD.js.map +0 -1
- package/dist/account-ZY655BIU.js +0 -139
- package/dist/account-assets-O7IA37RE.js +0 -290
- package/dist/account-level-EU7BWCO7.js +0 -609
- package/dist/account-level-EU7BWCO7.js.map +0 -1
- package/dist/account-reads-SNOWDHHF.js +0 -219
- package/dist/account-users-NV37Z2XJ.js +0 -62
- package/dist/account-users-NV37Z2XJ.js.map +0 -1
- package/dist/account-writes-TU3WJRSI.js +0 -66
- package/dist/account-writes-TU3WJRSI.js.map +0 -1
- package/dist/accounts-FT2SRKMD.js +0 -76
- package/dist/accounts-K5XLEO6W.js +0 -114
- package/dist/accounts-MZ6SETJJ.js +0 -78
- package/dist/accounts-MZ6SETJJ.js.map +0 -1
- package/dist/accounts-SNB65ZEW.js +0 -115
- package/dist/accounts-U7ZBEAY6.js +0 -699
- package/dist/accounts-U7ZBEAY6.js.map +0 -1
- package/dist/actions-4JYHXRFH.js +0 -55
- package/dist/active-entities-3BAPHE4P.js +0 -103
- package/dist/activecampaign-IDBV26HH.js +0 -936
- package/dist/activecampaign-IDBV26HH.js.map +0 -1
- package/dist/activities-LKLPORDI.js +0 -75
- package/dist/ad-group-writes-HLBWN4E4.js +0 -170
- package/dist/ad-group-writes-HLBWN4E4.js.map +0 -1
- package/dist/ad-groups-33NZD6J3.js +0 -68
- package/dist/ad-groups-33NZD6J3.js.map +0 -1
- package/dist/ad-writes-7ZDNDZ2E.js +0 -174
- package/dist/ad-writes-7ZDNDZ2E.js.map +0 -1
- package/dist/add-AF42LQQQ.js +0 -105
- package/dist/add-AF42LQQQ.js.map +0 -1
- package/dist/add-LJRZYJ7I.js +0 -303
- package/dist/add-LJRZYJ7I.js.map +0 -1
- package/dist/ads-KBE5JXCH.js +0 -115
- package/dist/ads-LXWXOQHX.js +0 -48
- package/dist/ads-X3AM6M7L.js +0 -77
- package/dist/ads-X3AM6M7L.js.map +0 -1
- package/dist/adsets-YWBJFPAZ.js +0 -182
- package/dist/advertisers-6FOCN2W3.js +0 -121
- package/dist/advertisers-6FOCN2W3.js.map +0 -1
- package/dist/analytics-64HBRJJE.js +0 -2435
- package/dist/analytics-64HBRJJE.js.map +0 -1
- package/dist/analytics-VY5NL2GL.js +0 -445
- package/dist/analytics-VY5NL2GL.js.map +0 -1
- package/dist/asset-writes-72DEVXGO.js +0 -48
- package/dist/assign-N2I2BM67.js +0 -78
- package/dist/assign-N2I2BM67.js.map +0 -1
- package/dist/audience-size-H5DEZXJN.js +0 -74
- package/dist/audience-size-H5DEZXJN.js.map +0 -1
- package/dist/audience-writes-KCHLNFSI.js +0 -325
- package/dist/audience-writes-KCHLNFSI.js.map +0 -1
- package/dist/audiences-34IQKOGS.js +0 -85
- package/dist/audiences-QAH42HIM.js +0 -86
- package/dist/audiences-WCDWN64L.js +0 -268
- package/dist/audiences-WCDWN64L.js.map +0 -1
- package/dist/audit-2AAF6AOX.js +0 -152
- package/dist/audit-2AAF6AOX.js.map +0 -1
- package/dist/audit-7ED6CUTQ.js +0 -88
- package/dist/autocomplete-3GSKRNCZ.js +0 -112
- package/dist/autocomplete-3GSKRNCZ.js.map +0 -1
- package/dist/avatars-N6W6HUPP.js +0 -38
- package/dist/bid-pricing-IMITXHXN.js +0 -101
- package/dist/bid-pricing-IMITXHXN.js.map +0 -1
- package/dist/brand-ITWQVZD2.js +0 -22
- package/dist/brief-JJNEYPYB.js +0 -541
- package/dist/brief-JJNEYPYB.js.map +0 -1
- package/dist/businesses-MGP2YCEU.js +0 -54
- package/dist/campaign-groups-TTQLP32Q.js +0 -97
- package/dist/campaign-groups-TTQLP32Q.js.map +0 -1
- package/dist/campaign-writes-MAKPHQ3V.js +0 -166
- package/dist/campaign-writes-MAKPHQ3V.js.map +0 -1
- package/dist/campaign-writes-XO74BALZ.js +0 -174
- package/dist/campaign-writes-XO74BALZ.js.map +0 -1
- package/dist/campaigns-5BIDXYSR.js +0 -111
- package/dist/campaigns-LS65QM6W.js +0 -76
- package/dist/campaigns-LS65QM6W.js.map +0 -1
- package/dist/campaigns-XZOQ2VTK.js +0 -130
- package/dist/campaigns-XZPXCS7I.js +0 -111
- package/dist/campaigns-XZPXCS7I.js.map +0 -1
- package/dist/canvas-SL3RMOY5.js +0 -46
- package/dist/capabilities-LSR5GCE6.js +0 -145
- package/dist/capabilities-LSR5GCE6.js.map +0 -1
- package/dist/cards-A7GQVC7B.js +0 -85
- package/dist/catalogs-JLCSFZYC.js +0 -779
- package/dist/catalogs-JLCSFZYC.js.map +0 -1
- package/dist/catalogs-T23RKYFC.js +0 -128
- package/dist/catalogs-T23RKYFC.js.map +0 -1
- package/dist/changes-36C754R4.js +0 -135
- package/dist/chatgpt-3WFOPURY.js +0 -47
- package/dist/chats-GGYTXNJS.js +0 -277
- package/dist/chats-GGYTXNJS.js.map +0 -1
- package/dist/check-P7UPBBG7.js +0 -105
- package/dist/check-P7UPBBG7.js.map +0 -1
- package/dist/chunk-2TOIY2WN.js +0 -4254
- package/dist/chunk-3GAR4AZK.js +0 -149
- package/dist/chunk-4D46PS6J.js +0 -344
- package/dist/chunk-4GAEB6NK.js +0 -228
- package/dist/chunk-5XTGG4PV.js +0 -274
- package/dist/chunk-6JCX3YLM.js +0 -249
- package/dist/chunk-7J3NZBPV.js +0 -2982
- package/dist/chunk-7J3NZBPV.js.map +0 -1
- package/dist/chunk-7NF73SCB.js +0 -106
- package/dist/chunk-ALMYGH5U.js +0 -479
- package/dist/chunk-AQKRSEBQ.js +0 -103
- package/dist/chunk-B2POVFR2.js +0 -175
- package/dist/chunk-BL6RTOK3.js +0 -297
- package/dist/chunk-C6CBBZBO.js +0 -203
- package/dist/chunk-CCEDZTP7.js +0 -391
- package/dist/chunk-CCEDZTP7.js.map +0 -1
- package/dist/chunk-CKQTJ2LV.js +0 -89
- package/dist/chunk-D3KLDIPQ.js +0 -45
- package/dist/chunk-DL2UJNJ7.js +0 -8954
- package/dist/chunk-DM3Q6F5F.js +0 -26
- package/dist/chunk-DQ54POZN.js +0 -363
- package/dist/chunk-EDLZGTGN.js +0 -216
- package/dist/chunk-EDLZGTGN.js.map +0 -1
- package/dist/chunk-EXSHBYNQ.js +0 -349
- package/dist/chunk-EXSHBYNQ.js.map +0 -1
- package/dist/chunk-FFFJBNHA.js +0 -63
- package/dist/chunk-FKQK22IX.js +0 -51
- package/dist/chunk-FLK6QHOY.js +0 -142
- package/dist/chunk-GACSA5A6.js +0 -1646
- package/dist/chunk-GU5MXV2Y.js +0 -191
- package/dist/chunk-HGUYC5K6.js +0 -76
- package/dist/chunk-HJKYTNAZ.js +0 -61
- package/dist/chunk-HMIROUFV.js +0 -74
- package/dist/chunk-INUU3752.js +0 -392
- package/dist/chunk-IQHO2ABF.js +0 -197
- package/dist/chunk-J3UWMBOP.js +0 -547
- package/dist/chunk-JDR3HUEL.js +0 -191
- package/dist/chunk-JI77AKT6.js +0 -19
- package/dist/chunk-JNURZHZJ.js +0 -942
- package/dist/chunk-JSNMKTFM.js +0 -592
- package/dist/chunk-K4FLWDEX.js +0 -122
- package/dist/chunk-KBRJSPIM.js +0 -676
- package/dist/chunk-KUY26RCF.js +0 -200
- package/dist/chunk-LAC6YHHX.js +0 -97
- package/dist/chunk-M7HD42M6.js +0 -24017
- package/dist/chunk-M7HD42M6.js.map +0 -1
- package/dist/chunk-MGYC2IRC.js +0 -783
- package/dist/chunk-MI4HXE7M.js +0 -23
- package/dist/chunk-MJ7RNDD4.js +0 -910
- package/dist/chunk-OBJCNGZL.js +0 -207
- package/dist/chunk-OJGYYH6K.js +0 -179
- package/dist/chunk-OLBLXJNI.js +0 -224
- package/dist/chunk-PFTYKINE.js +0 -207
- package/dist/chunk-PLBITHV6.js +0 -846
- package/dist/chunk-Q6JMMBSQ.js +0 -831
- package/dist/chunk-RAQHUMKS.js +0 -169
- package/dist/chunk-RCJKABOS.js +0 -74
- package/dist/chunk-SA22KXWT.js +0 -163
- package/dist/chunk-SIXU5PDF.js +0 -66
- package/dist/chunk-SXMK5AEJ.js +0 -494
- package/dist/chunk-TLQOMWLQ.js +0 -69
- package/dist/chunk-TTLD66NI.js +0 -319
- package/dist/chunk-TVAIOC77.js +0 -287
- package/dist/chunk-TVTSA4EN.js +0 -188
- package/dist/chunk-V5NHJU3M.js +0 -604
- package/dist/chunk-VIPKDXGU.js +0 -4229
- package/dist/chunk-VIPKDXGU.js.map +0 -1
- package/dist/chunk-W4D7C74B.js +0 -387
- package/dist/chunk-WF25CCLD.js +0 -170
- package/dist/chunk-WQPUX3BA.js +0 -275
- package/dist/chunk-WR3FR3K3.js +0 -156
- package/dist/chunk-XDNJC62G.js +0 -91
- package/dist/chunk-XE6N4SZI.js +0 -429
- package/dist/chunk-XGPU2VDU.js +0 -219
- package/dist/chunk-XUJZO7MZ.js +0 -57
- package/dist/chunk-Y67LUJBE.js +0 -455
- package/dist/chunk-Y7XSDJEA.js +0 -3868
- package/dist/chunk-ZNNQK366.js +0 -7198
- package/dist/chunk-ZNNQK366.js.map +0 -1
- package/dist/chunk-ZNRGH4NS.js +0 -150
- package/dist/chunk-ZRP7Y2DM.js +0 -320
- package/dist/chunk-ZRP7Y2DM.js.map +0 -1
- package/dist/claim-4KUETSW3.js +0 -198
- package/dist/claim-4KUETSW3.js.map +0 -1
- package/dist/companies-XFO6WPVT.js +0 -196
- package/dist/companies-XFO6WPVT.js.map +0 -1
- package/dist/company-OJGISG7K.js +0 -306
- package/dist/company-OJGISG7K.js.map +0 -1
- package/dist/complete-CXOST5J3.js +0 -82
- package/dist/complete-CXOST5J3.js.map +0 -1
- package/dist/config-SMVIY6RW.js +0 -88
- package/dist/connect-HPQ32KGV.js +0 -43
- package/dist/conversation-D5HKCTDA.js +0 -94
- package/dist/conversation-D5HKCTDA.js.map +0 -1
- package/dist/conversion-report-DKXFHLLX.js +0 -125
- package/dist/conversion-report-DKXFHLLX.js.map +0 -1
- package/dist/conversion-upload-command-KTYAY7IG.js +0 -439
- package/dist/conversion-writes-7ODJDAUP.js +0 -120
- package/dist/conversion-writes-7ODJDAUP.js.map +0 -1
- package/dist/conversions-BKVGNNC6.js +0 -76
- package/dist/conversions-BKVGNNC6.js.map +0 -1
- package/dist/conversions-SYNDEB6D.js +0 -138
- package/dist/conversions-SYNDEB6D.js.map +0 -1
- package/dist/copy-writes-P4WK6OPM.js +0 -168
- package/dist/copy-writes-P4WK6OPM.js.map +0 -1
- package/dist/create-7D4VD4TC.js +0 -208
- package/dist/create-7D4VD4TC.js.map +0 -1
- package/dist/create-7QDEAWZS.js +0 -133
- package/dist/create-7QDEAWZS.js.map +0 -1
- package/dist/create-IQSYEC4M.js +0 -60
- package/dist/create-IQSYEC4M.js.map +0 -1
- package/dist/create-TQSCM7MG.js +0 -237
- package/dist/create-TQSCM7MG.js.map +0 -1
- package/dist/creatives-JPKA2RHU.js +0 -89
- package/dist/creatives-RNOL4F4E.js +0 -58
- package/dist/creatives-RXI27T2D.js +0 -221
- package/dist/creatives-RXI27T2D.js.map +0 -1
- package/dist/credentials-PYW55B52.js +0 -288
- package/dist/credentials-PYW55B52.js.map +0 -1
- package/dist/critique-2SYHNAW5.js +0 -1449
- package/dist/critique-2SYHNAW5.js.map +0 -1
- package/dist/critique-72GFZSHA.js +0 -230
- package/dist/critique-72GFZSHA.js.map +0 -1
- package/dist/crm-EATDSXXB.js +0 -225
- package/dist/crm-EATDSXXB.js.map +0 -1
- package/dist/crm-XXP3VBYD.js +0 -321
- package/dist/crm-XXP3VBYD.js.map +0 -1
- package/dist/currency-R4ORE2U3.js +0 -88
- package/dist/custom-conversions-5HJBB5XL.js +0 -128
- package/dist/customers-OFZTEXST.js +0 -57
- package/dist/delete-FGVZIK4R.js +0 -55
- package/dist/delete-FGVZIK4R.js.map +0 -1
- package/dist/delete-HBZZL4UA.js +0 -67
- package/dist/delete-HBZZL4UA.js.map +0 -1
- package/dist/delete-JOUXMRIX.js +0 -65
- package/dist/delete-JOUXMRIX.js.map +0 -1
- package/dist/demographics-SB7NBYOI.js +0 -139
- package/dist/demographics-SB7NBYOI.js.map +0 -1
- package/dist/discard-YYGIRDII.js +0 -67
- package/dist/discard-YYGIRDII.js.map +0 -1
- package/dist/discover-GSJRZUOC.js +0 -172
- package/dist/domain-3KRAJAUH.js +0 -99
- package/dist/domain-3KRAJAUH.js.map +0 -1
- package/dist/download-QCBKJ6OR.js +0 -170
- package/dist/download-QCBKJ6OR.js.map +0 -1
- package/dist/draft-7CGFFZTH.js +0 -333
- package/dist/draft-7CGFFZTH.js.map +0 -1
- package/dist/draft-BI4NW6AU.js +0 -308
- package/dist/draft-BI4NW6AU.js.map +0 -1
- package/dist/draft-DJIYEMZU.js +0 -103
- package/dist/draft-LPVK6YHI.js +0 -281
- package/dist/draft-LPVK6YHI.js.map +0 -1
- package/dist/draft-QF5JEUTH.js +0 -218
- package/dist/draft-QF5JEUTH.js.map +0 -1
- package/dist/draft-RIR2V6A2.js +0 -238
- package/dist/draft-WYDMLNYA.js +0 -308
- package/dist/draft-ZCL7FVBH.js +0 -100
- package/dist/experiment-I5CRLOVN.js +0 -1397
- package/dist/experiments-ZCEYRP3H.js +0 -234
- package/dist/experiments-ZCEYRP3H.js.map +0 -1
- package/dist/facets-G7ZDPI5Q.js +0 -115
- package/dist/facets-G7ZDPI5Q.js.map +0 -1
- package/dist/feedback-3U3CL2VB.js +0 -109
- package/dist/feedback-3U3CL2VB.js.map +0 -1
- package/dist/feedback-record-4ZHPENIP.js +0 -263
- package/dist/feedback-record-4ZHPENIP.js.map +0 -1
- package/dist/fetch-PNVNNWTP.js +0 -177
- package/dist/fetch-PNVNNWTP.js.map +0 -1
- package/dist/fit-53DGYRFD.js +0 -63
- package/dist/flows-JXLQBP5Q.js +0 -248
- package/dist/flows-JXLQBP5Q.js.map +0 -1
- package/dist/fonts-LFMBUT4R.js +0 -37
- package/dist/forecast-4AG5F7YC.js +0 -169
- package/dist/forecast-VZAXI74O.js +0 -119
- package/dist/forecast-VZAXI74O.js.map +0 -1
- package/dist/funding-5W4LX6DU.js +0 -85
- package/dist/funnel-EACC35UD.js +0 -395
- package/dist/funnel-EACC35UD.js.map +0 -1
- package/dist/ga4-BWVCDVIR.js +0 -55
- package/dist/get-AXBVYGAC.js +0 -57
- package/dist/get-AXBVYGAC.js.map +0 -1
- package/dist/get-D6A27Q4E.js +0 -80
- package/dist/get-D6A27Q4E.js.map +0 -1
- package/dist/google-NAA4BASO.js +0 -3267
- package/dist/google-ads-OIYUNDXQ.js +0 -196
- package/dist/google-ads-OIYUNDXQ.js.map +0 -1
- package/dist/gsc-2MPE4N32.js +0 -30
- package/dist/history-5MRLNTCI.js +0 -67
- package/dist/history-5MRLNTCI.js.map +0 -1
- package/dist/history-IDYNIB6R.js +0 -134
- package/dist/history-IDYNIB6R.js.map +0 -1
- package/dist/history-IOUKN3WD.js +0 -100
- package/dist/history-IOUKN3WD.js.map +0 -1
- package/dist/hubspot-HL6WGC4G.js +0 -780
- package/dist/hubspot-HL6WGC4G.js.map +0 -1
- package/dist/ideas-NK3KQHAK.js +0 -43
- package/dist/images-2XS3JT7E.js +0 -92
- package/dist/ingest-DHXWZZX4.js +0 -24
- package/dist/ingest-FGTJRCWK.js +0 -108
- package/dist/ingest-FGTJRCWK.js.map +0 -1
- package/dist/insights-M3CYB22P.js +0 -437
- package/dist/insights-M3CYB22P.js.map +0 -1
- package/dist/insights-XCT3ONC7.js +0 -130
- package/dist/insights-XCT3ONC7.js.map +0 -1
- package/dist/inspect-53GGYRC4.js +0 -190
- package/dist/inspect-53GGYRC4.js.map +0 -1
- package/dist/instant-experiences-HT3HB4QZ.js +0 -258
- package/dist/instant-experiences-HT3HB4QZ.js.map +0 -1
- package/dist/intent-NSHW7EJT.js +0 -95
- package/dist/job-DRFCQ27M.js +0 -202
- package/dist/job-create-2EC25Y3J.js +0 -109
- package/dist/job-status-UNVZRPIA.js +0 -74
- package/dist/keyword-gap-ITTWKBWZ.js +0 -130
- package/dist/keyword-metrics-LWPE3HHW.js +0 -198
- package/dist/keyword-metrics-LWPE3HHW.js.map +0 -1
- package/dist/keywords-for-site-5K25VJ35.js +0 -129
- package/dist/keywords-for-site-5K25VJ35.js.map +0 -1
- package/dist/landing-QONUUP3C.js +0 -28
- package/dist/languages-MEFQQBJ2.js +0 -40
- package/dist/leads-FSSISJGL.js +0 -113
- package/dist/leads-FSSISJGL.js.map +0 -1
- package/dist/leads-SZOGCQFK.js +0 -538
- package/dist/leads-SZOGCQFK.js.map +0 -1
- package/dist/learn-FWWJWBDN.js +0 -205
- package/dist/learn-FWWJWBDN.js.map +0 -1
- package/dist/line-item-writes-A3UQ44NG.js +0 -209
- package/dist/line-item-writes-A3UQ44NG.js.map +0 -1
- package/dist/line-items-OH426JGT.js +0 -107
- package/dist/link-67E4NVEX.js +0 -65
- package/dist/link-67E4NVEX.js.map +0 -1
- package/dist/linkedin-CT2OSQ2I.js +0 -1314
- package/dist/linkedin-CT2OSQ2I.js.map +0 -1
- package/dist/linkedin-person-OSNLPLJJ.js +0 -137
- package/dist/linkedin-person-OSNLPLJJ.js.map +0 -1
- package/dist/list-J4OUXAKN.js +0 -65
- package/dist/list-J4OUXAKN.js.map +0 -1
- package/dist/list-L2OQK4W3.js +0 -304
- package/dist/list-L2OQK4W3.js.map +0 -1
- package/dist/list-LHMDAA2D.js +0 -152
- package/dist/list-LHMDAA2D.js.map +0 -1
- package/dist/locations-RLWAS6AC.js +0 -40
- package/dist/locations-UKBOT6SB.js +0 -67
- package/dist/locations-UKBOT6SB.js.map +0 -1
- package/dist/log-4EIV54V4.js +0 -93
- package/dist/log-4EIV54V4.js.map +0 -1
- package/dist/lookup-ZJIP2M4X.js +0 -22
- package/dist/make-MFU3CSN7.js +0 -1368
- package/dist/make-MFU3CSN7.js.map +0 -1
- package/dist/map-VWWWMQLK.js +0 -434
- package/dist/map-VWWWMQLK.js.map +0 -1
- package/dist/mcp-EKLO2VD7.js +0 -715
- package/dist/mcp-EKLO2VD7.js.map +0 -1
- package/dist/media-XCTZJIW4.js +0 -89
- package/dist/media-ZWN7E777.js +0 -18
- package/dist/media-sources-7L622UTF.js +0 -35
- package/dist/members-QK5M5NCJ.js +0 -45
- package/dist/members-QK5M5NCJ.js.map +0 -1
- package/dist/meta-EHKXH257.js +0 -122
- package/dist/metrics-K6FDCMK7.js +0 -152
- package/dist/normalize-WI4OGKH5.js +0 -142
- package/dist/normalize-WI4OGKH5.js.map +0 -1
- package/dist/options-FKJ2QXI6.js +0 -123
- package/dist/options-FKJ2QXI6.js.map +0 -1
- package/dist/organization-7A7MPUDG.js +0 -947
- package/dist/organization-7A7MPUDG.js.map +0 -1
- package/dist/output-WTEPRUPE.js +0 -24
- package/dist/page-photos-HWKQOSCU.js +0 -116
- package/dist/page-photos-HWKQOSCU.js.map +0 -1
- package/dist/pages-J6AF5NDU.js +0 -67
- package/dist/performance-K4VB6L6Z.js +0 -25
- package/dist/performance-LHAL53YO.js +0 -5539
- package/dist/performance-LHAL53YO.js.map +0 -1
- package/dist/pixels-Z7ZGXAGB.js +0 -60
- package/dist/pixels-Z7ZGXAGB.js.map +0 -1
- package/dist/pixels-ZZTB6NWF.js +0 -109
- package/dist/plan-TVQSEKYL.js +0 -207
- package/dist/plan-TVQSEKYL.js.map +0 -1
- package/dist/preview-CWRGDFCP.js +0 -216
- package/dist/preview-CWRGDFCP.js.map +0 -1
- package/dist/promoted-tweet-writes-V4ZVJOJU.js +0 -181
- package/dist/promoted-tweet-writes-V4ZVJOJU.js.map +0 -1
- package/dist/promoted-tweets-KPG4IUVD.js +0 -119
- package/dist/properties-RBLJCVSG.js +0 -101
- package/dist/publish-Y465CVUD.js +0 -342
- package/dist/publish-Y465CVUD.js.map +0 -1
- package/dist/query-BJJYUGQZ.js +0 -247
- package/dist/query-KQ675KJZ.js +0 -236
- package/dist/query-QM7MBQD7.js +0 -62
- package/dist/questionnaire-LEZJLMAV.js +0 -93
- package/dist/questionnaire-LEZJLMAV.js.map +0 -1
- package/dist/read-QME7JYVF.js +0 -141
- package/dist/reddit-Z7DOVIGR.js +0 -27
- package/dist/refresh-A6TW2Z2F.js +0 -95
- package/dist/refresh-A6TW2Z2F.js.map +0 -1
- package/dist/release-UFESJ4TM.js +0 -61
- package/dist/release-UFESJ4TM.js.map +0 -1
- package/dist/relevant-pages-VOICMQ7U.js +0 -99
- package/dist/remove-YONNYA4G.js +0 -51
- package/dist/remove-YONNYA4G.js.map +0 -1
- package/dist/reopen-FYJU2IPO.js +0 -64
- package/dist/reopen-FYJU2IPO.js.map +0 -1
- package/dist/rerun-B5SBG6ZE.js +0 -93
- package/dist/rerun-B5SBG6ZE.js.map +0 -1
- package/dist/research-HW4EVOZU.js +0 -72
- package/dist/research-OV53DIBX.js +0 -263
- package/dist/research-OV53DIBX.js.map +0 -1
- package/dist/reset-R4SIQXFH.js +0 -55
- package/dist/reset-R4SIQXFH.js.map +0 -1
- package/dist/reset-X6ODAKYH.js +0 -55
- package/dist/reset-X6ODAKYH.js.map +0 -1
- package/dist/resolve-DNRJCLCR.js +0 -122
- package/dist/resolve-DNRJCLCR.js.map +0 -1
- package/dist/retry-D5MKBHUB.js +0 -63
- package/dist/retry-D5MKBHUB.js.map +0 -1
- package/dist/retry-DVFLE7JY.js +0 -61
- package/dist/retry-DVFLE7JY.js.map +0 -1
- package/dist/revenue-QGI6XWSK.js +0 -89
- package/dist/revenue-QGI6XWSK.js.map +0 -1
- package/dist/rule-writes-S3RN47OG.js +0 -523
- package/dist/rule-writes-S3RN47OG.js.map +0 -1
- package/dist/rules-KTJ2ZZ62.js +0 -217
- package/dist/rules-TR6BAC23.js +0 -97
- package/dist/rules-TR6BAC23.js.map +0 -1
- package/dist/rules-add-T5ZO5RLR.js +0 -463
- package/dist/rules-add-T5ZO5RLR.js.map +0 -1
- package/dist/run-WZ5IXWA4.js +0 -67
- package/dist/run-WZ5IXWA4.js.map +0 -1
- package/dist/run-YRR3KOUU.js +0 -68
- package/dist/scaffold-ad-DNUCGCIH.js +0 -1514
- package/dist/scaffold-ad-DNUCGCIH.js.map +0 -1
- package/dist/scaffold-static-ad-VR65EZAG.js +0 -1013
- package/dist/scaffold-static-ad-VR65EZAG.js.map +0 -1
- package/dist/scaffold-video-JLMKCCWE.js +0 -886
- package/dist/scaffold-video-JLMKCCWE.js.map +0 -1
- package/dist/schedule-VRHCVBZA.js +0 -62
- package/dist/schedule-VRHCVBZA.js.map +0 -1
- package/dist/scheduled-agents-DG7FTCUZ.js +0 -55
- package/dist/schema-WZKDWF5N.js +0 -133
- package/dist/schema-WZKDWF5N.js.map +0 -1
- package/dist/search-MN66QIKJ.js +0 -175
- package/dist/search-MN66QIKJ.js.map +0 -1
- package/dist/select-IPSM2BF2.js +0 -104
- package/dist/select-IPSM2BF2.js.map +0 -1
- package/dist/sends-6FI7WELX.js +0 -348
- package/dist/sends-6FI7WELX.js.map +0 -1
- package/dist/set-prompt-N6BD3DME.js +0 -196
- package/dist/set-prompt-N6BD3DME.js.map +0 -1
- package/dist/setup-links-GTA2AROS.js +0 -142
- package/dist/setup-links-GTA2AROS.js.map +0 -1
- package/dist/shared-ZFULUOPQ.js +0 -32
- package/dist/shopify-S4TG6WJH.js +0 -3956
- package/dist/shopify-S4TG6WJH.js.map +0 -1
- package/dist/site-NY622E3H.js +0 -178
- package/dist/site-NY622E3H.js.map +0 -1
- package/dist/sitemaps-F3HYH5ZP.js +0 -87
- package/dist/sites-JSMF72BY.js +0 -101
- package/dist/sources-4F2XO7Z6.js +0 -455
- package/dist/sources-4F2XO7Z6.js.map +0 -1
- package/dist/sources-562ITR77.js +0 -30
- package/dist/stale-JKM6MXJF.js +0 -74
- package/dist/stale-JKM6MXJF.js.map +0 -1
- package/dist/stats-QP4LFQZJ.js +0 -34
- package/dist/status-AUWMUDA4.js +0 -63
- package/dist/status-AUWMUDA4.js.map +0 -1
- package/dist/studies-ZOEUY6YP.js +0 -250
- package/dist/study-writes-DTGMCNFP.js +0 -468
- package/dist/study-writes-DTGMCNFP.js.map +0 -1
- package/dist/sync-76MCGHX4.js +0 -55
- package/dist/sync-76MCGHX4.js.map +0 -1
- package/dist/sync-PHH65JFS.js +0 -279
- package/dist/sync-definition-NJPT6ABG.js +0 -67
- package/dist/tag-manager-F7PVTDBB.js +0 -43
- package/dist/tags-5KBOJJ5R.js +0 -26
- package/dist/tags-CSMLTHTU.js +0 -21
- package/dist/tags-CSMLTHTU.js.map +0 -1
- package/dist/tags-IFRZYM3G.js +0 -21
- package/dist/tags-IFRZYM3G.js.map +0 -1
- package/dist/tags-S44ADJ75.js +0 -21
- package/dist/tags-S44ADJ75.js.map +0 -1
- package/dist/tags-WR7IY3OT.js +0 -225
- package/dist/tags-WR7IY3OT.js.map +0 -1
- package/dist/targeting-VBQY3HUN.js +0 -760
- package/dist/targeting-VBQY3HUN.js.map +0 -1
- package/dist/targeting-constants-236ES5HE.js +0 -118
- package/dist/targeting-criteria-FJWNK53T.js +0 -113
- package/dist/targets-2EHMMXD4.js +0 -104
- package/dist/targets-2EHMMXD4.js.map +0 -1
- package/dist/terms-O6ODXEOK.js +0 -102
- package/dist/testimonials-WAPFIGFJ.js +0 -32
- package/dist/themes-B4LCQUXB.js +0 -95
- package/dist/top-companies-DJ2XQKMW.js +0 -109
- package/dist/top-companies-DJ2XQKMW.js.map +0 -1
- package/dist/transcript-J3LGOHCM.js +0 -163
- package/dist/transcript-J3LGOHCM.js.map +0 -1
- package/dist/translate-6RXO4C6Z.js +0 -607
- package/dist/translate-6RXO4C6Z.js.map +0 -1
- package/dist/triggers-CYXPNHQB.js +0 -142
- package/dist/triggers-CYXPNHQB.js.map +0 -1
- package/dist/tweets-IUINLOXF.js +0 -123
- package/dist/unlink-5FJI7XZB.js +0 -68
- package/dist/unlink-5FJI7XZB.js.map +0 -1
- package/dist/unstage-54ZE2SZK.js +0 -86
- package/dist/unstage-54ZE2SZK.js.map +0 -1
- package/dist/unstage-MDSSPUKV.js +0 -95
- package/dist/unstage-MDSSPUKV.js.map +0 -1
- package/dist/update-BVBFNFMO.js +0 -99
- package/dist/update-BVBFNFMO.js.map +0 -1
- package/dist/update-GV3T7ZRC.js +0 -190
- package/dist/update-GV3T7ZRC.js.map +0 -1
- package/dist/update-PUQWUGPJ.js +0 -64
- package/dist/update-PUQWUGPJ.js.map +0 -1
- package/dist/update-YQBK6C3L.js +0 -153
- package/dist/update-YQBK6C3L.js.map +0 -1
- package/dist/upload-PXT5JAEV.js +0 -127
- package/dist/upload-PXT5JAEV.js.map +0 -1
- package/dist/url-options-IHL4OU4C.js +0 -130
- package/dist/url-options-IHL4OU4C.js.map +0 -1
- package/dist/url-params-IYUI6SFJ.js +0 -99
- package/dist/url-params-IYUI6SFJ.js.map +0 -1
- package/dist/validate-AD7F7LQ5.js +0 -120
- package/dist/validate-AD7F7LQ5.js.map +0 -1
- package/dist/videos-ZJCTODEB.js +0 -41
- package/dist/viewer-check-GWZNGWCO.js +0 -81
- package/dist/web-76CWAZNW.js +0 -141
- package/dist/web-76CWAZNW.js.map +0 -1
- package/dist/winning-ads-W7GTXTX7.js +0 -86
- package/dist/write-commands-5J47ZNO4.js +0 -206
- package/dist/write-commands-K6M3RTVK.js +0 -1170
- package/dist/write-commands-K6M3RTVK.js.map +0 -1
- package/dist/write-commands-OTWH6BKZ.js +0 -713
- package/dist/write-commands-VPU53DLB.js +0 -1498
- package/dist/write-commands-VPU53DLB.js.map +0 -1
- package/dist/x-V4NNNWRU.js +0 -47
- /package/dist/{account-ZY655BIU.js.map → account-BA3IO3AN.js.map} +0 -0
- /package/dist/{account-assets-O7IA37RE.js.map → account-assets-T3VVNBUG.js.map} +0 -0
- /package/dist/{account-reads-SNOWDHHF.js.map → account-reads-5CXFLJ5Q.js.map} +0 -0
- /package/dist/{accounts-FT2SRKMD.js.map → accounts-4R3MBNJG.js.map} +0 -0
- /package/dist/{accounts-SNB65ZEW.js.map → accounts-5WF7VE7J.js.map} +0 -0
- /package/dist/{accounts-K5XLEO6W.js.map → accounts-VPWCLF6X.js.map} +0 -0
- /package/dist/{actions-4JYHXRFH.js.map → actions-D7OWCP36.js.map} +0 -0
- /package/dist/{active-entities-3BAPHE4P.js.map → active-entities-WDPW7652.js.map} +0 -0
- /package/dist/{activities-LKLPORDI.js.map → activities-WGPHYSFU.js.map} +0 -0
- /package/dist/{ads-KBE5JXCH.js.map → ads-F7AUJWK7.js.map} +0 -0
- /package/dist/{ads-LXWXOQHX.js.map → ads-OV3SMLKA.js.map} +0 -0
- /package/dist/{adsets-YWBJFPAZ.js.map → adsets-XH2ULWPM.js.map} +0 -0
- /package/dist/{asset-writes-72DEVXGO.js.map → asset-writes-4X3AJQ4Q.js.map} +0 -0
- /package/dist/{audiences-QAH42HIM.js.map → audiences-MBBXWEOI.js.map} +0 -0
- /package/dist/{audiences-34IQKOGS.js.map → audiences-YUG5JLL4.js.map} +0 -0
- /package/dist/{audit-7ED6CUTQ.js.map → audit-WFXS5ELM.js.map} +0 -0
- /package/dist/{avatars-N6W6HUPP.js.map → avatars-WZ2JDMHH.js.map} +0 -0
- /package/dist/{brand-ITWQVZD2.js.map → brand-IZTTBZII.js.map} +0 -0
- /package/dist/{businesses-MGP2YCEU.js.map → businesses-24JNY46Z.js.map} +0 -0
- /package/dist/{campaigns-XZOQ2VTK.js.map → campaigns-KXYGSH27.js.map} +0 -0
- /package/dist/{campaigns-5BIDXYSR.js.map → campaigns-U5FQ2VWL.js.map} +0 -0
- /package/dist/{canvas-SL3RMOY5.js.map → canvas-IQ753Q2O.js.map} +0 -0
- /package/dist/{cards-A7GQVC7B.js.map → cards-NSNAFTEB.js.map} +0 -0
- /package/dist/{changes-36C754R4.js.map → changes-RDWMNSTK.js.map} +0 -0
- /package/dist/{chatgpt-3WFOPURY.js.map → chatgpt-27NEJVGF.js.map} +0 -0
- /package/dist/{chunk-KUY26RCF.js.map → chunk-2F4DELSV.js.map} +0 -0
- /package/dist/{chunk-WF25CCLD.js.map → chunk-2GYCWRF3.js.map} +0 -0
- /package/dist/{chunk-HJKYTNAZ.js.map → chunk-2L7F7KR4.js.map} +0 -0
- /package/dist/{chunk-4GAEB6NK.js.map → chunk-44ZRCSR7.js.map} +0 -0
- /package/dist/{chunk-2TOIY2WN.js.map → chunk-46YLDIQG.js.map} +0 -0
- /package/dist/{chunk-DQ54POZN.js.map → chunk-4EDWXZ3I.js.map} +0 -0
- /package/dist/{chunk-SIXU5PDF.js.map → chunk-4FFBGR5L.js.map} +0 -0
- /package/dist/{chunk-JSNMKTFM.js.map → chunk-4UZUUSVL.js.map} +0 -0
- /package/dist/{chunk-Q6JMMBSQ.js.map → chunk-4XHCEYHI.js.map} +0 -0
- /package/dist/{chunk-ALMYGH5U.js.map → chunk-4Z6PVR3M.js.map} +0 -0
- /package/dist/{chunk-K4FLWDEX.js.map → chunk-5Y5FZV2W.js.map} +0 -0
- /package/dist/{chunk-INUU3752.js.map → chunk-6HJXLGDV.js.map} +0 -0
- /package/dist/{chunk-XE6N4SZI.js.map → chunk-6S5CWGDA.js.map} +0 -0
- /package/dist/{chunk-SXMK5AEJ.js.map → chunk-6VYROVWO.js.map} +0 -0
- /package/dist/{chunk-TTLD66NI.js.map → chunk-AQRXXC6E.js.map} +0 -0
- /package/dist/{chunk-W4D7C74B.js.map → chunk-ARBXT73X.js.map} +0 -0
- /package/dist/{chunk-LAC6YHHX.js.map → chunk-BEZHQIEI.js.map} +0 -0
- /package/dist/{chunk-J3UWMBOP.js.map → chunk-BFURWHVR.js.map} +0 -0
- /package/dist/{chunk-RAQHUMKS.js.map → chunk-EZSPVWLQ.js.map} +0 -0
- /package/dist/{chunk-DM3Q6F5F.js.map → chunk-FCHZ5TNG.js.map} +0 -0
- /package/dist/{chunk-MI4HXE7M.js.map → chunk-FLWDFPXE.js.map} +0 -0
- /package/dist/{chunk-PLBITHV6.js.map → chunk-FQMEX3GX.js.map} +0 -0
- /package/dist/{chunk-FKQK22IX.js.map → chunk-GE3VT3CA.js.map} +0 -0
- /package/dist/{chunk-HMIROUFV.js.map → chunk-HCQJYI6X.js.map} +0 -0
- /package/dist/{chunk-FLK6QHOY.js.map → chunk-HGBJQGO5.js.map} +0 -0
- /package/dist/{chunk-GU5MXV2Y.js.map → chunk-HHVWV5BJ.js.map} +0 -0
- /package/dist/{chunk-HGUYC5K6.js.map → chunk-I3WGTSDY.js.map} +0 -0
- /package/dist/{chunk-MGYC2IRC.js.map → chunk-I7AYMJZA.js.map} +0 -0
- /package/dist/{chunk-7NF73SCB.js.map → chunk-IDSDJHRS.js.map} +0 -0
- /package/dist/{chunk-OBJCNGZL.js.map → chunk-ILPHIYAL.js.map} +0 -0
- /package/dist/{chunk-WR3FR3K3.js.map → chunk-IWKD56AY.js.map} +0 -0
- /package/dist/{chunk-Y7XSDJEA.js.map → chunk-JLAQWMVF.js.map} +0 -0
- /package/dist/{chunk-XUJZO7MZ.js.map → chunk-K6NULQN7.js.map} +0 -0
- /package/dist/{chunk-JI77AKT6.js.map → chunk-L2BRAC2J.js.map} +0 -0
- /package/dist/{chunk-Y67LUJBE.js.map → chunk-LGMI4LSY.js.map} +0 -0
- /package/dist/{chunk-3GAR4AZK.js.map → chunk-LNODLR7W.js.map} +0 -0
- /package/dist/{chunk-5XTGG4PV.js.map → chunk-LQ2BRGMX.js.map} +0 -0
- /package/dist/{chunk-B2POVFR2.js.map → chunk-M7QZSEHF.js.map} +0 -0
- /package/dist/{chunk-OJGYYH6K.js.map → chunk-NB2FU6EZ.js.map} +0 -0
- /package/dist/{chunk-PFTYKINE.js.map → chunk-NFII3MTG.js.map} +0 -0
- /package/dist/{chunk-WQPUX3BA.js.map → chunk-OG47L5GG.js.map} +0 -0
- /package/dist/{chunk-4D46PS6J.js.map → chunk-QIOFOD4K.js.map} +0 -0
- /package/dist/{chunk-6JCX3YLM.js.map → chunk-R2SYF5FC.js.map} +0 -0
- /package/dist/{chunk-JNURZHZJ.js.map → chunk-RTH2I55B.js.map} +0 -0
- /package/dist/{chunk-FFFJBNHA.js.map → chunk-S6VFDNSQ.js.map} +0 -0
- /package/dist/{chunk-ZNRGH4NS.js.map → chunk-SG2TDQEE.js.map} +0 -0
- /package/dist/{chunk-CKQTJ2LV.js.map → chunk-T3P6O2VU.js.map} +0 -0
- /package/dist/{chunk-RCJKABOS.js.map → chunk-TU5LQUJM.js.map} +0 -0
- /package/dist/{chunk-TLQOMWLQ.js.map → chunk-TU7DWSTW.js.map} +0 -0
- /package/dist/{chunk-V5NHJU3M.js.map → chunk-TXDE2QJ3.js.map} +0 -0
- /package/dist/{chunk-TVAIOC77.js.map → chunk-TYXZ2SRW.js.map} +0 -0
- /package/dist/{chunk-C6CBBZBO.js.map → chunk-UDIEKCIR.js.map} +0 -0
- /package/dist/{chunk-KBRJSPIM.js.map → chunk-UQHHGT67.js.map} +0 -0
- /package/dist/{chunk-SA22KXWT.js.map → chunk-USCADMM3.js.map} +0 -0
- /package/dist/{chunk-MJ7RNDD4.js.map → chunk-UUGISMNE.js.map} +0 -0
- /package/dist/{chunk-IQHO2ABF.js.map → chunk-VDPOCAQ2.js.map} +0 -0
- /package/dist/{chunk-AQKRSEBQ.js.map → chunk-VEJ3QX6M.js.map} +0 -0
- /package/dist/{chunk-XDNJC62G.js.map → chunk-VFJB7OG6.js.map} +0 -0
- /package/dist/{chunk-TVTSA4EN.js.map → chunk-VPABGAN4.js.map} +0 -0
- /package/dist/{chunk-DL2UJNJ7.js.map → chunk-VRIPVLE7.js.map} +0 -0
- /package/dist/{chunk-D3KLDIPQ.js.map → chunk-WLESMH4J.js.map} +0 -0
- /package/dist/{chunk-OLBLXJNI.js.map → chunk-YILZR3XI.js.map} +0 -0
- /package/dist/{chunk-JDR3HUEL.js.map → chunk-YJFLXOH4.js.map} +0 -0
- /package/dist/{chunk-BL6RTOK3.js.map → chunk-YWHZYR6S.js.map} +0 -0
- /package/dist/{chunk-XGPU2VDU.js.map → chunk-Z35KUMBW.js.map} +0 -0
- /package/dist/{chunk-GACSA5A6.js.map → chunk-Z7I2ZFXS.js.map} +0 -0
- /package/dist/{config-SMVIY6RW.js.map → config-55WGRLY3.js.map} +0 -0
- /package/dist/{connect-HPQ32KGV.js.map → connect-3YY7MF3I.js.map} +0 -0
- /package/dist/{conversion-upload-command-KTYAY7IG.js.map → conversion-upload-command-VM2P57K6.js.map} +0 -0
- /package/dist/{creatives-RNOL4F4E.js.map → creatives-2DR3QHJW.js.map} +0 -0
- /package/dist/{creatives-JPKA2RHU.js.map → creatives-DUR5Z5AN.js.map} +0 -0
- /package/dist/{currency-R4ORE2U3.js.map → currency-X4KEACEP.js.map} +0 -0
- /package/dist/{custom-conversions-5HJBB5XL.js.map → custom-conversions-OIA5Y2GX.js.map} +0 -0
- /package/dist/{customers-OFZTEXST.js.map → customers-663K2OCP.js.map} +0 -0
- /package/dist/{discover-GSJRZUOC.js.map → discover-2W42JB56.js.map} +0 -0
- /package/dist/{draft-RIR2V6A2.js.map → draft-2ZX73IRO.js.map} +0 -0
- /package/dist/{draft-WYDMLNYA.js.map → draft-CKLIIWXZ.js.map} +0 -0
- /package/dist/{draft-ZCL7FVBH.js.map → draft-L5Q6KEER.js.map} +0 -0
- /package/dist/{draft-DJIYEMZU.js.map → draft-MJRMZGMP.js.map} +0 -0
- /package/dist/{experiment-I5CRLOVN.js.map → experiment-3VRHCQN5.js.map} +0 -0
- /package/dist/{fit-53DGYRFD.js.map → fit-BEFCY2B4.js.map} +0 -0
- /package/dist/{fonts-LFMBUT4R.js.map → fonts-C6XN5667.js.map} +0 -0
- /package/dist/{forecast-4AG5F7YC.js.map → forecast-LYN6ZGQC.js.map} +0 -0
- /package/dist/{funding-5W4LX6DU.js.map → funding-TCEPQXRQ.js.map} +0 -0
- /package/dist/{ga4-BWVCDVIR.js.map → ga4-JE3HS36B.js.map} +0 -0
- /package/dist/{google-NAA4BASO.js.map → google-24FDG4C4.js.map} +0 -0
- /package/dist/{gsc-2MPE4N32.js.map → gsc-RMVOYIM3.js.map} +0 -0
- /package/dist/{ideas-NK3KQHAK.js.map → ideas-M66FU45H.js.map} +0 -0
- /package/dist/{images-2XS3JT7E.js.map → images-MM5OPUKV.js.map} +0 -0
- /package/dist/{ingest-DHXWZZX4.js.map → ingest-KMLYCFF4.js.map} +0 -0
- /package/dist/{intent-NSHW7EJT.js.map → intent-YCQCUCV3.js.map} +0 -0
- /package/dist/{job-DRFCQ27M.js.map → job-SM2OQ2LO.js.map} +0 -0
- /package/dist/{job-create-2EC25Y3J.js.map → job-create-ECZHPVKH.js.map} +0 -0
- /package/dist/{job-status-UNVZRPIA.js.map → job-status-QSYDKIIV.js.map} +0 -0
- /package/dist/{keyword-gap-ITTWKBWZ.js.map → keyword-gap-PUSF7EKY.js.map} +0 -0
- /package/dist/{landing-QONUUP3C.js.map → landing-OZU5RRFV.js.map} +0 -0
- /package/dist/{languages-MEFQQBJ2.js.map → languages-Q5SKO4AM.js.map} +0 -0
- /package/dist/{line-items-OH426JGT.js.map → line-items-2V5FY33R.js.map} +0 -0
- /package/dist/{locations-RLWAS6AC.js.map → locations-VQYREHYI.js.map} +0 -0
- /package/dist/{lookup-ZJIP2M4X.js.map → lookup-MELV3RUL.js.map} +0 -0
- /package/dist/{media-XCTZJIW4.js.map → media-BPI2VE6A.js.map} +0 -0
- /package/dist/{media-ZWN7E777.js.map → media-EEWZZU3P.js.map} +0 -0
- /package/dist/{media-sources-7L622UTF.js.map → media-sources-EQI3U4TC.js.map} +0 -0
- /package/dist/{meta-EHKXH257.js.map → meta-SMJUQP37.js.map} +0 -0
- /package/dist/{metrics-K6FDCMK7.js.map → metrics-EMAP7ESR.js.map} +0 -0
- /package/dist/{output-WTEPRUPE.js.map → output-4QBQEM4C.js.map} +0 -0
- /package/dist/{pages-J6AF5NDU.js.map → pages-DTQWQUKP.js.map} +0 -0
- /package/dist/{performance-K4VB6L6Z.js.map → performance-NIF3CESZ.js.map} +0 -0
- /package/dist/{pixels-ZZTB6NWF.js.map → pixels-2BKADWE6.js.map} +0 -0
- /package/dist/{promoted-tweets-KPG4IUVD.js.map → promoted-tweets-653Q5AC6.js.map} +0 -0
- /package/dist/{properties-RBLJCVSG.js.map → properties-VWKO3AAK.js.map} +0 -0
- /package/dist/{query-QM7MBQD7.js.map → query-CXIOL7WI.js.map} +0 -0
- /package/dist/{query-KQ675KJZ.js.map → query-OOP63DJF.js.map} +0 -0
- /package/dist/{query-BJJYUGQZ.js.map → query-RBZFAIDK.js.map} +0 -0
- /package/dist/{read-QME7JYVF.js.map → read-GOULD7YL.js.map} +0 -0
- /package/dist/{reddit-Z7DOVIGR.js.map → reddit-JIHMAKAQ.js.map} +0 -0
- /package/dist/{relevant-pages-VOICMQ7U.js.map → relevant-pages-FS7GBVXK.js.map} +0 -0
- /package/dist/{research-HW4EVOZU.js.map → research-PNBACCCP.js.map} +0 -0
- /package/dist/{rules-KTJ2ZZ62.js.map → rules-HY7S2YTD.js.map} +0 -0
- /package/dist/{run-YRR3KOUU.js.map → run-QCNRR3CA.js.map} +0 -0
- /package/dist/{scheduled-agents-DG7FTCUZ.js.map → scheduled-agents-OXYAVSIE.js.map} +0 -0
- /package/dist/{shared-ZFULUOPQ.js.map → shared-CGEJI2RB.js.map} +0 -0
- /package/dist/{sitemaps-F3HYH5ZP.js.map → sitemaps-5SP7PVQ6.js.map} +0 -0
- /package/dist/{sites-JSMF72BY.js.map → sites-YZDPHBST.js.map} +0 -0
- /package/dist/{sources-562ITR77.js.map → sources-FLUGHSVP.js.map} +0 -0
- /package/dist/{stats-QP4LFQZJ.js.map → stats-EGGNFTKI.js.map} +0 -0
- /package/dist/{studies-ZOEUY6YP.js.map → studies-6VUUOMZD.js.map} +0 -0
- /package/dist/{sync-PHH65JFS.js.map → sync-SCM6JGJP.js.map} +0 -0
- /package/dist/{sync-definition-NJPT6ABG.js.map → sync-definition-OGQ5XTQE.js.map} +0 -0
- /package/dist/{tag-manager-F7PVTDBB.js.map → tag-manager-REKD4WGU.js.map} +0 -0
- /package/dist/{tags-5KBOJJ5R.js.map → tags-CZTRQNXV.js.map} +0 -0
- /package/dist/{targeting-constants-236ES5HE.js.map → targeting-constants-MRQB4N5I.js.map} +0 -0
- /package/dist/{targeting-criteria-FJWNK53T.js.map → targeting-criteria-HSAESZIR.js.map} +0 -0
- /package/dist/{terms-O6ODXEOK.js.map → terms-D2KAFHKJ.js.map} +0 -0
- /package/dist/{testimonials-WAPFIGFJ.js.map → testimonials-G3OCNPBY.js.map} +0 -0
- /package/dist/{themes-B4LCQUXB.js.map → themes-X56KIX3Z.js.map} +0 -0
- /package/dist/{tweets-IUINLOXF.js.map → tweets-JN6ARKF6.js.map} +0 -0
- /package/dist/{videos-ZJCTODEB.js.map → videos-36AXDUGZ.js.map} +0 -0
- /package/dist/{viewer-check-GWZNGWCO.js.map → viewer-check-6HL4OUQY.js.map} +0 -0
- /package/dist/{winning-ads-W7GTXTX7.js.map → winning-ads-GMM5W2O4.js.map} +0 -0
- /package/dist/{write-commands-OTWH6BKZ.js.map → write-commands-B25W4FP5.js.map} +0 -0
- /package/dist/{write-commands-5J47ZNO4.js.map → write-commands-GNNEUVDW.js.map} +0 -0
- /package/dist/{x-V4NNNWRU.js.map → x-JNR5SO6F.js.map} +0 -0
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
import {
|
|
2
|
+
handleConnectionError,
|
|
3
|
+
needsConnectionFix,
|
|
4
|
+
writeAdsJson
|
|
5
|
+
} from "./chunk-6DPSWLGY.js";
|
|
6
|
+
import {
|
|
7
|
+
LINKEDIN_SEARCH_STATUSES,
|
|
8
|
+
unsupportedLinkedinSearchStatuses
|
|
9
|
+
} from "./chunk-PC3FJEZH.js";
|
|
10
|
+
import {
|
|
11
|
+
ApiError
|
|
12
|
+
} from "./chunk-X7VQFLHI.js";
|
|
13
|
+
import {
|
|
14
|
+
MissingChatIdError,
|
|
15
|
+
getEnv
|
|
16
|
+
} from "./chunk-LGK7UWBN.js";
|
|
17
|
+
|
|
18
|
+
// src/commands/ads/linkedin/shared.ts
|
|
19
|
+
import { readFileSync } from "fs";
|
|
20
|
+
var DAY_MS = 864e5;
|
|
21
|
+
function handleLinkedinError(err) {
|
|
22
|
+
if (err instanceof ApiError) {
|
|
23
|
+
if (needsConnectionFix(err.code, err.message)) {
|
|
24
|
+
handleConnectionError("linkedin_ads", err.message);
|
|
25
|
+
}
|
|
26
|
+
if (isNoAccountsSelectedError(err.code, err.message)) {
|
|
27
|
+
handleConnectionError("linkedin_ads", err.message);
|
|
28
|
+
}
|
|
29
|
+
const explanation = explainLinkedinError(err);
|
|
30
|
+
const envelope = {
|
|
31
|
+
ok: false,
|
|
32
|
+
error: {
|
|
33
|
+
code: err.code,
|
|
34
|
+
message: err.message,
|
|
35
|
+
fix: {
|
|
36
|
+
action: explanation.action,
|
|
37
|
+
explanation: explanation.message,
|
|
38
|
+
correctedCommand: explanation.correctedCommand
|
|
39
|
+
},
|
|
40
|
+
retryable: err.code === "RATE_LIMITED" || err.code === "UNAVAILABLE" || err.code === "INTERNAL_ERROR"
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
writeAdsJson(envelope);
|
|
44
|
+
process.exit(1);
|
|
45
|
+
}
|
|
46
|
+
writeAdsJson(unexpectedErrorEnvelope(err));
|
|
47
|
+
process.exit(1);
|
|
48
|
+
}
|
|
49
|
+
function unexpectedErrorEnvelope(err) {
|
|
50
|
+
if (err instanceof MissingChatIdError) {
|
|
51
|
+
return {
|
|
52
|
+
ok: false,
|
|
53
|
+
error: {
|
|
54
|
+
code: err.code,
|
|
55
|
+
message: err.message,
|
|
56
|
+
fix: {
|
|
57
|
+
action: "reject",
|
|
58
|
+
explanation: "LinkedIn changes are staged in a chat and this run has none. Don't retry: carry on with the rest of the job and tell the user this change couldn't be staged from here."
|
|
59
|
+
},
|
|
60
|
+
retryable: false
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
const message = err instanceof Error ? err.message : "Unexpected error";
|
|
65
|
+
return { ok: false, error: { code: "NETWORK_ERROR", message } };
|
|
66
|
+
}
|
|
67
|
+
function isNoAccountsSelectedError(code, message) {
|
|
68
|
+
return code === "VALIDATION_ERROR" && /no linkedin ad accounts selected/i.test(message);
|
|
69
|
+
}
|
|
70
|
+
function explainLinkedinError(err) {
|
|
71
|
+
const lower = err.message.toLowerCase();
|
|
72
|
+
if (err.code === "VALIDATION_ERROR" && lower.includes("granularity") && lower.includes("daily")) {
|
|
73
|
+
return {
|
|
74
|
+
action: "retry_with_flag",
|
|
75
|
+
message: "LinkedIn rejects DAILY granularity when pivoting on demographic dims (job-title, company, etc.). Re-run with --granularity ALL or MONTHLY.",
|
|
76
|
+
correctedCommand: void 0
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
if (err.code === "RATE_LIMITED") {
|
|
80
|
+
return {
|
|
81
|
+
action: "wait_and_retry",
|
|
82
|
+
message: "LinkedIn asked Baker to wait. A short wait is already sat out for you, so this one is long \u2014 up to LinkedIn's daily limit, which resets at midnight UTC. Don't retry in a loop: carry on with the rest of the job without this LinkedIn data, and tell the user it can be read again later."
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
if (err.code === "INTERNAL_ERROR" && lower.includes("deprecat")) {
|
|
86
|
+
return {
|
|
87
|
+
action: "reject",
|
|
88
|
+
message: "LinkedIn-Version header is deprecated. The backend constant LINKEDIN_API_VERSION needs to be bumped \u2014 file an issue or update the constant."
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
return { action: "reject", message: err.message };
|
|
92
|
+
}
|
|
93
|
+
var LI_ACCOUNT_ID_RE = /^(urn:li:sponsoredAccount:)?\d+$/;
|
|
94
|
+
function resolveAccountIdArg(args) {
|
|
95
|
+
const fromArgs = args["account-id"] ?? args["account-urn"];
|
|
96
|
+
const id = fromArgs || getEnv().BAKER_LINKEDIN_AD_ACCOUNT_ID;
|
|
97
|
+
if (!id) {
|
|
98
|
+
writeAdsJson({
|
|
99
|
+
ok: false,
|
|
100
|
+
error: {
|
|
101
|
+
code: "MISSING_ACCOUNT_ID",
|
|
102
|
+
message: "Pass --account-id (numeric) or --account-urn (urn:li:sponsoredAccount:N), or set BAKER_LINKEDIN_AD_ACCOUNT_ID. Run `baker ads linkedin accounts` to find IDs."
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
process.exit(1);
|
|
106
|
+
}
|
|
107
|
+
if (!LI_ACCOUNT_ID_RE.test(id)) {
|
|
108
|
+
writeAdsJson({
|
|
109
|
+
ok: false,
|
|
110
|
+
error: {
|
|
111
|
+
code: "INVALID_ACCOUNT_ID",
|
|
112
|
+
message: `Invalid LinkedIn account ID "${id}". Expected numeric or urn:li:sponsoredAccount:N.`
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
process.exit(1);
|
|
116
|
+
}
|
|
117
|
+
return id.startsWith("urn:") ? id.split(":").pop() ?? id : id;
|
|
118
|
+
}
|
|
119
|
+
function todayIso() {
|
|
120
|
+
return (/* @__PURE__ */ new Date()).toISOString().slice(0, 10);
|
|
121
|
+
}
|
|
122
|
+
function daysAgoIso(days) {
|
|
123
|
+
return new Date(Date.now() - days * DAY_MS).toISOString().slice(0, 10);
|
|
124
|
+
}
|
|
125
|
+
function csvOrJson(args) {
|
|
126
|
+
return args.output ?? "json";
|
|
127
|
+
}
|
|
128
|
+
function statusesArgDescription(level) {
|
|
129
|
+
return `CSV of statuses (${LINKEDIN_SEARCH_STATUSES[level].join(",")})`;
|
|
130
|
+
}
|
|
131
|
+
function statusFilterError(level, statuses) {
|
|
132
|
+
const unsupported = unsupportedLinkedinSearchStatuses(level, statuses);
|
|
133
|
+
if (unsupported.length === 0) {
|
|
134
|
+
return null;
|
|
135
|
+
}
|
|
136
|
+
const accepted = LINKEDIN_SEARCH_STATUSES[level].join(",");
|
|
137
|
+
return {
|
|
138
|
+
ok: false,
|
|
139
|
+
error: {
|
|
140
|
+
code: "INVALID_STATUS",
|
|
141
|
+
message: `LinkedIn does not accept status ${unsupported.join(", ")} for this listing.`,
|
|
142
|
+
fix: {
|
|
143
|
+
action: "retry_with_flag",
|
|
144
|
+
explanation: `Re-run with --statuses from ${accepted}, or --all-statuses to drop the filter.`
|
|
145
|
+
},
|
|
146
|
+
retryable: false
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
function resolveStatusFilter(args, level) {
|
|
151
|
+
if (args["all-statuses"]) {
|
|
152
|
+
return void 0;
|
|
153
|
+
}
|
|
154
|
+
const explicit = args.statuses;
|
|
155
|
+
if (!explicit) {
|
|
156
|
+
return ["ACTIVE"];
|
|
157
|
+
}
|
|
158
|
+
const statuses = explicit.split(",").map((s) => s.trim().toUpperCase()).filter(Boolean);
|
|
159
|
+
const error = statusFilterError(level, statuses);
|
|
160
|
+
if (error) {
|
|
161
|
+
writeAdsJson(error);
|
|
162
|
+
process.exit(1);
|
|
163
|
+
}
|
|
164
|
+
return statuses;
|
|
165
|
+
}
|
|
166
|
+
function loadTargetingArg(args) {
|
|
167
|
+
const inline = args.targeting;
|
|
168
|
+
if (inline) {
|
|
169
|
+
try {
|
|
170
|
+
return JSON.parse(inline);
|
|
171
|
+
} catch {
|
|
172
|
+
handleLinkedinError(new Error("--targeting must be valid JSON. See LinkedIn 'targetingCriteria' shape."));
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
const file = args["targeting-file"];
|
|
176
|
+
if (file) {
|
|
177
|
+
try {
|
|
178
|
+
return JSON.parse(readFileSync(file, "utf-8"));
|
|
179
|
+
} catch (e) {
|
|
180
|
+
handleLinkedinError(
|
|
181
|
+
new Error(`Failed to read --targeting-file: ${e instanceof Error ? e.message : "I/O error"}`)
|
|
182
|
+
);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
handleLinkedinError(new Error("Pass --targeting-file <path> or --targeting '{...JSON...}'"));
|
|
186
|
+
}
|
|
187
|
+
function exitOnInvalidArgs(issues, flagByField) {
|
|
188
|
+
const messages = issues.map((issue) => {
|
|
189
|
+
const field = String(issue.path[0] ?? "");
|
|
190
|
+
return `${flagByField[field] ?? (field || "args")}: ${issue.message}`;
|
|
191
|
+
});
|
|
192
|
+
writeAdsJson({ ok: false, error: { code: "INVALID_ARGS", message: messages.join("; ") } });
|
|
193
|
+
process.exit(1);
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
export {
|
|
197
|
+
handleLinkedinError,
|
|
198
|
+
resolveAccountIdArg,
|
|
199
|
+
todayIso,
|
|
200
|
+
daysAgoIso,
|
|
201
|
+
csvOrJson,
|
|
202
|
+
statusesArgDescription,
|
|
203
|
+
resolveStatusFilter,
|
|
204
|
+
loadTargetingArg,
|
|
205
|
+
exitOnInvalidArgs
|
|
206
|
+
};
|
|
207
|
+
//# sourceMappingURL=chunk-NFII3MTG.js.map
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import {
|
|
2
|
+
MATCH_FIELDS
|
|
3
|
+
} from "./chunk-G4FG5EQO.js";
|
|
4
|
+
|
|
5
|
+
// ../api/src/event-ingest/vocabulary.ts
|
|
6
|
+
var INGEST_CLICK_ID_PARAMS = [
|
|
7
|
+
"gclid",
|
|
8
|
+
"wbraid",
|
|
9
|
+
"gbraid",
|
|
10
|
+
"dclid",
|
|
11
|
+
"fbclid",
|
|
12
|
+
"ttclid",
|
|
13
|
+
"twclid",
|
|
14
|
+
"li_fat_id",
|
|
15
|
+
"msclkid",
|
|
16
|
+
"rdt_cid",
|
|
17
|
+
"epik",
|
|
18
|
+
"sccid",
|
|
19
|
+
"oppref"
|
|
20
|
+
];
|
|
21
|
+
|
|
22
|
+
// ../api/src/event-sources/fields.ts
|
|
23
|
+
var MATCH_LABELS = {
|
|
24
|
+
first_name: "First name",
|
|
25
|
+
last_name: "Last name",
|
|
26
|
+
date_of_birth: "Date of birth",
|
|
27
|
+
gender: "Gender",
|
|
28
|
+
city: "City",
|
|
29
|
+
region: "Region",
|
|
30
|
+
postal_code: "Postcode",
|
|
31
|
+
country: "Country"
|
|
32
|
+
};
|
|
33
|
+
var CLICK_LABELS = {
|
|
34
|
+
gclid: "Google click id",
|
|
35
|
+
wbraid: "Google click id (iOS, web to app)",
|
|
36
|
+
gbraid: "Google click id (iOS, app)",
|
|
37
|
+
dclid: "Google click id (Display & Video)",
|
|
38
|
+
fbclid: "Meta click id",
|
|
39
|
+
ttclid: "TikTok click id",
|
|
40
|
+
twclid: "X click id",
|
|
41
|
+
li_fat_id: "LinkedIn click id",
|
|
42
|
+
msclkid: "Microsoft click id",
|
|
43
|
+
rdt_cid: "Reddit click id",
|
|
44
|
+
epik: "Pinterest click id",
|
|
45
|
+
sccid: "Snapchat click id",
|
|
46
|
+
oppref: "ChatGPT Ads click id"
|
|
47
|
+
};
|
|
48
|
+
var SOURCE_FIELDS = [
|
|
49
|
+
{ field: "event_name", label: "What happened", group: "event" },
|
|
50
|
+
{ field: "event_time", label: "When it happened", group: "event" },
|
|
51
|
+
{ field: "event_id", label: "Its id", group: "event" },
|
|
52
|
+
{ field: "email", label: "Email", group: "person" },
|
|
53
|
+
{ field: "phone", label: "Phone", group: "person" },
|
|
54
|
+
{ field: "external_id", label: "Your own id for the person", group: "person" },
|
|
55
|
+
...MATCH_FIELDS.map((field) => ({ field, label: MATCH_LABELS[field], group: "person" })),
|
|
56
|
+
{ field: "value", label: "Amount", group: "money" },
|
|
57
|
+
{ field: "currency", label: "Currency", group: "money" },
|
|
58
|
+
...INGEST_CLICK_ID_PARAMS.map((field) => ({ field, label: CLICK_LABELS[field], group: "click" }))
|
|
59
|
+
];
|
|
60
|
+
var SOURCE_FIELD_NAMES = SOURCE_FIELDS.map((spec) => spec.field);
|
|
61
|
+
var FIELD_SET = new Set(SOURCE_FIELD_NAMES);
|
|
62
|
+
function isSourceField(value) {
|
|
63
|
+
return FIELD_SET.has(value);
|
|
64
|
+
}
|
|
65
|
+
var PROPERTY_ROW_PREFIX = "properties.";
|
|
66
|
+
var PROPERTY_KEY_MAX = 64;
|
|
67
|
+
var PROPERTY_KEY = /^[A-Za-z0-9_][A-Za-z0-9_.-]*$/;
|
|
68
|
+
var RESERVED_PROPERTY_KEYS = ["baker_source", "hubspot_property", "hubspot_value"];
|
|
69
|
+
function isPropertyRow(row) {
|
|
70
|
+
return row.startsWith(PROPERTY_ROW_PREFIX);
|
|
71
|
+
}
|
|
72
|
+
function propertyKeyOf(row) {
|
|
73
|
+
return isPropertyRow(row) ? row.slice(PROPERTY_ROW_PREFIX.length) : null;
|
|
74
|
+
}
|
|
75
|
+
function propertyKeyProblem(key) {
|
|
76
|
+
const trimmed = key.trim();
|
|
77
|
+
if (trimmed === "") return "A property needs a name.";
|
|
78
|
+
if (trimmed.length > PROPERTY_KEY_MAX) return `A property name is at most ${PROPERTY_KEY_MAX} characters.`;
|
|
79
|
+
if (!PROPERTY_KEY.test(trimmed)) {
|
|
80
|
+
return `"${trimmed}" is not a property name: letters, digits, underscore, dash and dot only, starting with a letter or digit.`;
|
|
81
|
+
}
|
|
82
|
+
if (RESERVED_PROPERTY_KEYS.includes(trimmed)) return `"${trimmed}" is written by Baker itself; pick another name.`;
|
|
83
|
+
return null;
|
|
84
|
+
}
|
|
85
|
+
function mappingRowProblem(row) {
|
|
86
|
+
if (isSourceField(row)) return null;
|
|
87
|
+
const key = propertyKeyOf(row);
|
|
88
|
+
if (key === null) {
|
|
89
|
+
return `"${row}" is not a field an event can carry. A field is one of ${SOURCE_FIELD_NAMES.join(", ")}; an extra property is spelled properties.<name>.`;
|
|
90
|
+
}
|
|
91
|
+
return propertyKeyProblem(key);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
// ../api/src/event-sources/template.ts
|
|
95
|
+
var MENTION = /\{\{\s*([^{}]+?)\s*\}\}/g;
|
|
96
|
+
function mentionOf(path) {
|
|
97
|
+
return `{{${path}}}`;
|
|
98
|
+
}
|
|
99
|
+
function templateMentions(template) {
|
|
100
|
+
const seen = [];
|
|
101
|
+
for (const match of template.matchAll(MENTION)) {
|
|
102
|
+
const path = (match[1] ?? "").trim();
|
|
103
|
+
if (path !== "" && !seen.includes(path)) seen.push(path);
|
|
104
|
+
}
|
|
105
|
+
return seen;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
export {
|
|
109
|
+
INGEST_CLICK_ID_PARAMS,
|
|
110
|
+
SOURCE_FIELD_NAMES,
|
|
111
|
+
mappingRowProblem,
|
|
112
|
+
mentionOf,
|
|
113
|
+
templateMentions
|
|
114
|
+
};
|
|
115
|
+
//# sourceMappingURL=chunk-NKQWDEB7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../api/src/event-ingest/vocabulary.ts","../../api/src/event-sources/fields.ts","../../api/src/event-sources/template.ts"],"sourcesContent":["/**\n * The click ids a sender may hand over, named the way their own system stored\n * them.\n *\n * The wire uses the **URL parameter** spelling (`li_fat_id`) rather than the\n * analytics row's field spelling (`liFatId`), because a client's CRM captured\n * these off a landing URL and that is the name it wrote them down under.\n * {@link clickIdsFromWire} is the one place the two vocabularies meet.\n *\n * Mirrored from `CLICK_ID_FIELDS` in `../analytics/normalize.ts`, which is the\n * source of truth for which click ids the store has columns for.\n * `vocabulary.parity.test.ts` reads that file and fails if the two drift — a\n * missing entry here is an attribution a client sent and we dropped.\n */\n\nimport type { ClickIdFields } from \"../analytics/normalize\";\n\nexport const INGEST_CLICK_ID_PARAMS = [\n \"gclid\",\n \"wbraid\",\n \"gbraid\",\n \"dclid\",\n \"fbclid\",\n \"ttclid\",\n \"twclid\",\n \"li_fat_id\",\n \"msclkid\",\n \"rdt_cid\",\n \"epik\",\n \"sccid\",\n \"oppref\",\n] as const;\nexport type IngestClickIdParam = (typeof INGEST_CLICK_ID_PARAMS)[number];\n\nconst FIELD_FOR_PARAM: Readonly<Record<IngestClickIdParam, keyof ClickIdFields>> = {\n gclid: \"gclid\",\n wbraid: \"wbraid\",\n gbraid: \"gbraid\",\n dclid: \"dclid\",\n fbclid: \"fbclid\",\n ttclid: \"ttclid\",\n twclid: \"twclid\",\n li_fat_id: \"liFatId\",\n msclkid: \"msclkid\",\n rdt_cid: \"rdtCid\",\n epik: \"epik\",\n sccid: \"sccid\",\n oppref: \"oppref\",\n};\n\n/** The wire's click block as the analytics row builder names its fields. Empty values are dropped. */\nexport function clickIdsFromWire(click: Partial<Record<IngestClickIdParam, string | null>> | null | undefined): {\n clickIds: ClickIdFields;\n kinds: IngestClickIdParam[];\n} {\n const clickIds: ClickIdFields = {};\n const kinds: IngestClickIdParam[] = [];\n for (const param of INGEST_CLICK_ID_PARAMS) {\n const value = click?.[param];\n if (typeof value !== \"string\" || value === \"\") continue;\n clickIds[FIELD_FOR_PARAM[param]] = value;\n kinds.push(param);\n }\n return { clickIds, kinds };\n}\n","/**\n * What a source can be read into: the fields of an event, named the way\n * `POST /v1/events` already names them.\n *\n * Assembled from the ingest vocabulary rather than spelled a fourth time. A\n * mapping is `SourceField → dotted path`, and the field half of that pair has\n * to be a name the wire already accepts, because the whole of what a source\n * does is build an `IngestEventInput` and hand it to the same door the\n * client's own server would have used. A field that existed only here would be\n * a field the event could not carry.\n */\n\nimport { MATCH_FIELDS, type MatchField } from \"../event-ingest/matching\";\nimport type { IngestClickIdParam } from \"../event-ingest/vocabulary\";\nimport { INGEST_CLICK_ID_PARAMS } from \"../event-ingest/vocabulary\";\n\n/** Where a field sits on the sheet: one row per group, in this order. */\nexport type SourceFieldGroup = \"event\" | \"person\" | \"money\" | \"click\";\n\nexport type SourceField =\n | \"event_name\"\n | \"event_time\"\n | \"event_id\"\n | \"email\"\n | \"phone\"\n | \"external_id\"\n | MatchField\n | \"value\"\n | \"currency\"\n | IngestClickIdParam;\n\nexport interface SourceFieldSpec {\n field: SourceField;\n /** The product word for it — what the sheet and the CLI show. */\n label: string;\n group: SourceFieldGroup;\n}\n\nconst MATCH_LABELS: Readonly<Record<MatchField, string>> = {\n first_name: \"First name\",\n last_name: \"Last name\",\n date_of_birth: \"Date of birth\",\n gender: \"Gender\",\n city: \"City\",\n region: \"Region\",\n postal_code: \"Postcode\",\n country: \"Country\",\n};\n\nconst CLICK_LABELS: Readonly<Record<IngestClickIdParam, string>> = {\n gclid: \"Google click id\",\n wbraid: \"Google click id (iOS, web to app)\",\n gbraid: \"Google click id (iOS, app)\",\n dclid: \"Google click id (Display & Video)\",\n fbclid: \"Meta click id\",\n ttclid: \"TikTok click id\",\n twclid: \"X click id\",\n li_fat_id: \"LinkedIn click id\",\n msclkid: \"Microsoft click id\",\n rdt_cid: \"Reddit click id\",\n epik: \"Pinterest click id\",\n sccid: \"Snapchat click id\",\n oppref: \"ChatGPT Ads click id\",\n};\n\nexport const SOURCE_FIELDS: readonly SourceFieldSpec[] = [\n { field: \"event_name\", label: \"What happened\", group: \"event\" },\n { field: \"event_time\", label: \"When it happened\", group: \"event\" },\n { field: \"event_id\", label: \"Its id\", group: \"event\" },\n { field: \"email\", label: \"Email\", group: \"person\" },\n { field: \"phone\", label: \"Phone\", group: \"person\" },\n { field: \"external_id\", label: \"Your own id for the person\", group: \"person\" },\n ...MATCH_FIELDS.map((field) => ({ field, label: MATCH_LABELS[field], group: \"person\" as const })),\n { field: \"value\", label: \"Amount\", group: \"money\" },\n { field: \"currency\", label: \"Currency\", group: \"money\" },\n ...INGEST_CLICK_ID_PARAMS.map((field) => ({ field, label: CLICK_LABELS[field], group: \"click\" as const })),\n];\n\nexport const SOURCE_FIELD_NAMES: readonly SourceField[] = SOURCE_FIELDS.map((spec) => spec.field);\n\nconst FIELD_SET: ReadonlySet<string> = new Set(SOURCE_FIELD_NAMES);\n\nexport function isSourceField(value: string): value is SourceField {\n return FIELD_SET.has(value);\n}\n\nexport const SOURCE_FIELD_GROUPS: readonly { group: SourceFieldGroup; label: string; detail: string }[] = [\n { group: \"event\", label: \"The event\", detail: \"What it is called, when it happened, and its own id.\" },\n {\n group: \"person\",\n label: \"Who it is about\",\n detail: \"How the platforms find the person. Email or phone is the one that matters.\",\n },\n {\n group: \"money\",\n label: \"What it was worth\",\n detail: \"The amount and its currency, for revenue and for the platforms.\",\n },\n {\n group: \"click\",\n label: \"The ad click that brought them\",\n detail: \"When the source keeps the click id, the campaign gets the credit.\",\n },\n];\n\n/**\n * A row that is not a field of the event but one of its own **properties** —\n * the flat `properties` object every event carries, which Measure → Events\n * breaks an event down by and which a send can forward to a platform as an\n * extra parameter (Meta's `custom_data`, a GA4 event parameter).\n *\n * Spelled `properties.<key>` in the mapping so the row shares the table with\n * the fields and the CLI's `--field` takes it unchanged, while an unknown bare\n * key is still refused: the namespace is what tells a deliberate extra\n * property from a typo that would otherwise silently map nothing.\n */\nexport const PROPERTY_ROW_PREFIX = \"properties.\";\n\n/** The longest a property's key may be. Keys are a shared dictionary in the store, so they are kept short and plain. */\nexport const PROPERTY_KEY_MAX = 64;\n\n/** Letters, digits, underscore, dash and dot — what a property key of `POST /v1/events` may be, and what a platform parameter name may be. */\nconst PROPERTY_KEY = /^[A-Za-z0-9_][A-Za-z0-9_.-]*$/;\n\n/** Keys a source writes itself; a row naming one would be overwritten in silence. */\nexport const RESERVED_PROPERTY_KEYS: readonly string[] = [\"baker_source\", \"hubspot_property\", \"hubspot_value\"];\n\n/** Whether a mapping row names a property rather than a field. */\nexport function isPropertyRow(row: string): boolean {\n return row.startsWith(PROPERTY_ROW_PREFIX);\n}\n\n/** The property's own key, for a `properties.<key>` row; null for anything else. */\nexport function propertyKeyOf(row: string): string | null {\n return isPropertyRow(row) ? row.slice(PROPERTY_ROW_PREFIX.length) : null;\n}\n\n/** The mapping row for a property key. */\nexport function propertyRow(key: string): string {\n return `${PROPERTY_ROW_PREFIX}${key}`;\n}\n\n/**\n * Why a property key cannot be used, in one sentence, or null when it can.\n * The same rule for a source's extra properties and for a send's parameters.\n */\nexport function propertyKeyProblem(key: string): string | null {\n const trimmed = key.trim();\n if (trimmed === \"\") return \"A property needs a name.\";\n if (trimmed.length > PROPERTY_KEY_MAX) return `A property name is at most ${PROPERTY_KEY_MAX} characters.`;\n if (!PROPERTY_KEY.test(trimmed)) {\n return `\"${trimmed}\" is not a property name: letters, digits, underscore, dash and dot only, starting with a letter or digit.`;\n }\n if (RESERVED_PROPERTY_KEYS.includes(trimmed)) return `\"${trimmed}\" is written by Baker itself; pick another name.`;\n return null;\n}\n\n/**\n * Whether a mapping row is one a source can hold: a field of the event, or a\n * well-named property. The reason when it is not.\n */\nexport function mappingRowProblem(row: string): string | null {\n if (isSourceField(row)) return null;\n const key = propertyKeyOf(row);\n if (key === null) {\n return `\"${row}\" is not a field an event can carry. A field is one of ${SOURCE_FIELD_NAMES.join(\", \")}; an extra property is spelled properties.<name>.`;\n }\n return propertyKeyProblem(key);\n}\n\n/** The property rows of a mapping, as `key → template`, in the order stored. */\nexport function propertyRows(mapping: Readonly<Record<string, string>>): { key: string; template: string }[] {\n return Object.entries(mapping).flatMap(([row, template]) => {\n const key = propertyKeyOf(row);\n return key === null ? [] : [{ key, template }];\n });\n}\n","/**\n * A mapping row is a template: literal text with `{{mentions}}` in it.\n *\n * ## Why a template and not a path\n *\n * A row used to hold one dotted path, and one path answers one question —\n * \"which field of the payload is the email\". It cannot answer the next three:\n * a currency the tool never sends but the company knows (`EUR`), a name split\n * over two fields (`{{firstname}} {{lastname}}`), or an amount a HubSpot\n * contact carries under a property nobody would guess. A template answers all\n * of them with one rule the Forms builder already teaches: type text, insert\n * a variable. The same spelling is what the CLI takes, so an agent and a\n * person write the same thing.\n *\n * ## What a mention points at\n *\n * Whatever the source can read. For an address it is a dotted path into the\n * payload (`contact.email`, `deal.contacts.0.email`); for a HubSpot read it\n * is a contact property's internal name (`hs_google_click_id`), plus `id` for\n * the contact's own id. The template does not know which — the lookup passed\n * to `renderTemplate` does.\n *\n * A mention names exactly one thing. There was a `{{phone|mobilephone}}`\n * spelling for \"the first that holds anything\"; it is gone, because it was a\n * rule the Forms builder's variables do not have, and a row that reads\n * differently from every other variable field in the product is a row nobody\n * can predict. A person who wants the mobile picks the mobile.\n */\n\nconst MENTION = /\\{\\{\\s*([^{}]+?)\\s*\\}\\}/g;\n\n/** The path a mention names, with the braces on. */\nexport function mentionOf(path: string): string {\n return `{{${path}}}`;\n}\n\n/** Every path a template reads, in order, once each. */\nexport function templateMentions(template: string): string[] {\n const seen: string[] = [];\n for (const match of template.matchAll(MENTION)) {\n const path = (match[1] ?? \"\").trim();\n if (path !== \"\" && !seen.includes(path)) seen.push(path);\n }\n return seen;\n}\n\n/**\n * The template with every mention replaced by what it points at, trimmed —\n * or nothing, when what is left is empty. An empty mention reads as empty\n * text rather than as its own spelling, so a template made only of mentions\n * the payload did not fill is \"not sent\", not the literal `{{phone}}`.\n */\nexport function renderTemplate(template: string, lookup: (path: string) => string | undefined): string | undefined {\n const rendered = template.replace(MENTION, (_whole, path: string) => lookup(path.trim()) ?? \"\").trim();\n return rendered === \"\" ? undefined : rendered;\n}\n\n/** The one path a template is, when it is exactly one mention and nothing else. */\nexport function isBareMention(template: string): string | null {\n const match = /^\\{\\{\\s*([^{}]+?)\\s*\\}\\}$/.exec(template.trim());\n return match === null ? null : (match[1] ?? null);\n}\n"],"mappings":";;;;;AAiBO,IAAM,yBAAyB;AAAA,EACpC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;;;ACOA,IAAM,eAAqD;AAAA,EACzD,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,eAAe;AAAA,EACf,QAAQ;AAAA,EACR,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,aAAa;AAAA,EACb,SAAS;AACX;AAEA,IAAM,eAA6D;AAAA,EACjE,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,WAAW;AAAA,EACX,SAAS;AAAA,EACT,SAAS;AAAA,EACT,MAAM;AAAA,EACN,OAAO;AAAA,EACP,QAAQ;AACV;AAEO,IAAM,gBAA4C;AAAA,EACvD,EAAE,OAAO,cAAc,OAAO,iBAAiB,OAAO,QAAQ;AAAA,EAC9D,EAAE,OAAO,cAAc,OAAO,oBAAoB,OAAO,QAAQ;AAAA,EACjE,EAAE,OAAO,YAAY,OAAO,UAAU,OAAO,QAAQ;AAAA,EACrD,EAAE,OAAO,SAAS,OAAO,SAAS,OAAO,SAAS;AAAA,EAClD,EAAE,OAAO,SAAS,OAAO,SAAS,OAAO,SAAS;AAAA,EAClD,EAAE,OAAO,eAAe,OAAO,8BAA8B,OAAO,SAAS;AAAA,EAC7E,GAAG,aAAa,IAAI,CAAC,WAAW,EAAE,OAAO,OAAO,aAAa,KAAK,GAAG,OAAO,SAAkB,EAAE;AAAA,EAChG,EAAE,OAAO,SAAS,OAAO,UAAU,OAAO,QAAQ;AAAA,EAClD,EAAE,OAAO,YAAY,OAAO,YAAY,OAAO,QAAQ;AAAA,EACvD,GAAG,uBAAuB,IAAI,CAAC,WAAW,EAAE,OAAO,OAAO,aAAa,KAAK,GAAG,OAAO,QAAiB,EAAE;AAC3G;AAEO,IAAM,qBAA6C,cAAc,IAAI,CAAC,SAAS,KAAK,KAAK;AAEhG,IAAM,YAAiC,IAAI,IAAI,kBAAkB;AAE1D,SAAS,cAAc,OAAqC;AACjE,SAAO,UAAU,IAAI,KAAK;AAC5B;AAgCO,IAAM,sBAAsB;AAG5B,IAAM,mBAAmB;AAGhC,IAAM,eAAe;AAGd,IAAM,yBAA4C,CAAC,gBAAgB,oBAAoB,eAAe;AAGtG,SAAS,cAAc,KAAsB;AAClD,SAAO,IAAI,WAAW,mBAAmB;AAC3C;AAGO,SAAS,cAAc,KAA4B;AACxD,SAAO,cAAc,GAAG,IAAI,IAAI,MAAM,oBAAoB,MAAM,IAAI;AACtE;AAWO,SAAS,mBAAmB,KAA4B;AAC7D,QAAM,UAAU,IAAI,KAAK;AACzB,MAAI,YAAY,GAAI,QAAO;AAC3B,MAAI,QAAQ,SAAS,iBAAkB,QAAO,8BAA8B,gBAAgB;AAC5F,MAAI,CAAC,aAAa,KAAK,OAAO,GAAG;AAC/B,WAAO,IAAI,OAAO;AAAA,EACpB;AACA,MAAI,uBAAuB,SAAS,OAAO,EAAG,QAAO,IAAI,OAAO;AAChE,SAAO;AACT;AAMO,SAAS,kBAAkB,KAA4B;AAC5D,MAAI,cAAc,GAAG,EAAG,QAAO;AAC/B,QAAM,MAAM,cAAc,GAAG;AAC7B,MAAI,QAAQ,MAAM;AAChB,WAAO,IAAI,GAAG,0DAA0D,mBAAmB,KAAK,IAAI,CAAC;AAAA,EACvG;AACA,SAAO,mBAAmB,GAAG;AAC/B;;;AC3IA,IAAM,UAAU;AAGT,SAAS,UAAU,MAAsB;AAC9C,SAAO,KAAK,IAAI;AAClB;AAGO,SAAS,iBAAiB,UAA4B;AAC3D,QAAM,OAAiB,CAAC;AACxB,aAAW,SAAS,SAAS,SAAS,OAAO,GAAG;AAC9C,UAAM,QAAQ,MAAM,CAAC,KAAK,IAAI,KAAK;AACnC,QAAI,SAAS,MAAM,CAAC,KAAK,SAAS,IAAI,EAAG,MAAK,KAAK,IAAI;AAAA,EACzD;AACA,SAAO;AACT;","names":[]}
|
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
import {
|
|
2
|
+
FLOW_ACCOUNT_ONLY_KINDS,
|
|
3
|
+
FLOW_AGENT_DESTINATION_KINDS,
|
|
4
|
+
FLOW_DELIVERY_SIDE_EFFECT_TYPES,
|
|
5
|
+
FLOW_RESOURCE_NODE_TYPES,
|
|
6
|
+
FLOW_SECRET_FIELDS,
|
|
7
|
+
flowCatalogEntry,
|
|
8
|
+
isFlowOauthSideEffect
|
|
9
|
+
} from "./chunk-PC3FJEZH.js";
|
|
10
|
+
import {
|
|
11
|
+
apiPost
|
|
12
|
+
} from "./chunk-X7VQFLHI.js";
|
|
13
|
+
import {
|
|
14
|
+
writeJson
|
|
15
|
+
} from "./chunk-Q7US4OOA.js";
|
|
16
|
+
|
|
17
|
+
// src/commands/flows/shared.ts
|
|
18
|
+
import { existsSync, readdirSync, readFileSync, writeFileSync } from "fs";
|
|
19
|
+
import { join } from "path";
|
|
20
|
+
var FLOWS_DIR = "src/lib/flow-engine/flows";
|
|
21
|
+
function flowsDir() {
|
|
22
|
+
let dir = process.cwd();
|
|
23
|
+
for (let i = 0; i < 6; i++) {
|
|
24
|
+
const candidate = join(dir, FLOWS_DIR);
|
|
25
|
+
if (existsSync(candidate)) {
|
|
26
|
+
return candidate;
|
|
27
|
+
}
|
|
28
|
+
const parent = join(dir, "..");
|
|
29
|
+
if (parent === dir) {
|
|
30
|
+
break;
|
|
31
|
+
}
|
|
32
|
+
dir = parent;
|
|
33
|
+
}
|
|
34
|
+
return join(process.cwd(), FLOWS_DIR);
|
|
35
|
+
}
|
|
36
|
+
function failLocal(message) {
|
|
37
|
+
writeJson({ ok: false, error: { code: "NOT_FOUND", message } });
|
|
38
|
+
process.exit(1);
|
|
39
|
+
}
|
|
40
|
+
function listFlowSlugs() {
|
|
41
|
+
const dir = flowsDir();
|
|
42
|
+
if (!existsSync(dir)) {
|
|
43
|
+
return [];
|
|
44
|
+
}
|
|
45
|
+
return readdirSync(dir, { withFileTypes: true }).filter((entry) => entry.isDirectory() && !entry.name.startsWith("_") && entry.name !== ".gitkeep").map((entry) => entry.name).sort();
|
|
46
|
+
}
|
|
47
|
+
function flowDataPath(slug) {
|
|
48
|
+
return join(flowsDir(), slug, "_data.json");
|
|
49
|
+
}
|
|
50
|
+
function writeFlowTree(slug, tree) {
|
|
51
|
+
writeFileSync(flowDataPath(slug), `${JSON.stringify(tree, null, 2)}
|
|
52
|
+
`, "utf-8");
|
|
53
|
+
}
|
|
54
|
+
function walkNodes(node, acc = []) {
|
|
55
|
+
if (!node || typeof node !== "object") return acc;
|
|
56
|
+
acc.push(node);
|
|
57
|
+
if (Array.isArray(node.children)) {
|
|
58
|
+
for (const child of node.children) walkNodes(child, acc);
|
|
59
|
+
}
|
|
60
|
+
return acc;
|
|
61
|
+
}
|
|
62
|
+
function collectSideEffects(tree) {
|
|
63
|
+
return walkNodes(tree).flatMap(
|
|
64
|
+
(node) => Array.isArray(node.sideEffects) ? node.sideEffects.filter((sideEffect) => Boolean(sideEffect) && typeof sideEffect === "object").map((sideEffect) => ({ node, sideEffect })) : []
|
|
65
|
+
);
|
|
66
|
+
}
|
|
67
|
+
function sealedSideEffects(tree) {
|
|
68
|
+
return collectSideEffects(tree).flatMap(({ sideEffect }) => {
|
|
69
|
+
const { id, type, encryptedConfig } = sideEffect;
|
|
70
|
+
const sealed = typeof id === "string" && typeof type === "string" && FLOW_DELIVERY_SIDE_EFFECT_TYPES.includes(type) && typeof encryptedConfig === "string" && encryptedConfig.length > 0;
|
|
71
|
+
return sealed ? [{ sideEffectId: id, type, encryptedConfig }] : [];
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
function describeSettings(settings) {
|
|
75
|
+
if (typeof settings.email === "string") {
|
|
76
|
+
return `to ${settings.email}${typeof settings.subject === "string" ? ` \xB7 subject "${settings.subject}"` : ""}`;
|
|
77
|
+
}
|
|
78
|
+
return Object.entries(settings).filter(([, value]) => typeof value === "string" || typeof value === "number").map(([key, value]) => `${key}: ${String(value)}`).join(" \xB7 ");
|
|
79
|
+
}
|
|
80
|
+
function withSettings(rows, settingsById) {
|
|
81
|
+
return rows.map((row) => {
|
|
82
|
+
const settings = row.sideEffectId ? settingsById[row.sideEffectId] : void 0;
|
|
83
|
+
const described = settings ? describeSettings(settings) : "";
|
|
84
|
+
return described ? { ...row, status: `${row.status} \u2192 ${described}` } : row;
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
function flowExists(slug) {
|
|
88
|
+
return existsSync(join(flowsDir(), slug, "_data.json"));
|
|
89
|
+
}
|
|
90
|
+
function readFlowTree(slug) {
|
|
91
|
+
const path = join(flowsDir(), slug, "_data.json");
|
|
92
|
+
if (!existsSync(path)) {
|
|
93
|
+
failLocal(`No form "${slug}". Run "baker flows list" to see the forms in this workspace.`);
|
|
94
|
+
}
|
|
95
|
+
try {
|
|
96
|
+
return JSON.parse(readFileSync(path, "utf-8"));
|
|
97
|
+
} catch (error) {
|
|
98
|
+
failLocal(`Could not read form "${slug}": ${error instanceof Error ? error.message : String(error)}`);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
function isConfigured(value) {
|
|
102
|
+
return typeof value === "string" && value.length > 0;
|
|
103
|
+
}
|
|
104
|
+
function nodeMeta(record) {
|
|
105
|
+
const nodeId = typeof record.id === "string" ? record.id : "";
|
|
106
|
+
const nodeName = typeof record.name === "string" ? record.name : void 0;
|
|
107
|
+
return { nodeId, ...nodeName ? { nodeName } : {} };
|
|
108
|
+
}
|
|
109
|
+
function widgetNodeStatus(record, meta) {
|
|
110
|
+
const nodeData = record.nodeData;
|
|
111
|
+
const nodeType = nodeData?.type;
|
|
112
|
+
if (typeof nodeType !== "string" || !FLOW_RESOURCE_NODE_TYPES.includes(nodeType)) {
|
|
113
|
+
return null;
|
|
114
|
+
}
|
|
115
|
+
const external = nodeData?.form?.external;
|
|
116
|
+
const selected = external != null && typeof external === "object";
|
|
117
|
+
const name = selected ? external.name : void 0;
|
|
118
|
+
return {
|
|
119
|
+
...meta,
|
|
120
|
+
target: "node",
|
|
121
|
+
kind: nodeType,
|
|
122
|
+
status: selected ? `${nodeType} \u2014 selected${typeof name === "string" ? ` "${name}"` : ""}` : `${nodeType} \u2014 not selected`,
|
|
123
|
+
needsInput: !selected
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
function sideEffectNeedsInput(raw) {
|
|
127
|
+
const effect = raw;
|
|
128
|
+
const type = effect?.type;
|
|
129
|
+
if (typeof type !== "string" || !FLOW_DELIVERY_SIDE_EFFECT_TYPES.includes(type)) {
|
|
130
|
+
return false;
|
|
131
|
+
}
|
|
132
|
+
const configured = isConfigured(effect?.encryptedConfig);
|
|
133
|
+
if (!isFlowOauthSideEffect(type)) return !configured;
|
|
134
|
+
return !isConfigured(effect?.oauthProviderId) || !configured;
|
|
135
|
+
}
|
|
136
|
+
function trackingStatus(effect, type, meta) {
|
|
137
|
+
if (flowCatalogEntry("side-effect", type)?.owners?.tagIds !== "tags") return null;
|
|
138
|
+
const tags = Array.isArray(effect.tagIds) ? effect.tagIds.length : 0;
|
|
139
|
+
const event = typeof effect.eventName === "string" ? ` "${effect.eventName}"` : "";
|
|
140
|
+
return {
|
|
141
|
+
...meta,
|
|
142
|
+
target: "sideEffect",
|
|
143
|
+
...typeof effect.id === "string" ? { sideEffectId: effect.id } : {},
|
|
144
|
+
kind: type,
|
|
145
|
+
status: `${type}${event} \u2014 ${tags > 0 ? `[${tags} tag${tags === 1 ? "" : "s"}]` : "[no tag]"}`,
|
|
146
|
+
needsInput: false
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
function sideEffectStatus(raw, meta) {
|
|
150
|
+
const effect = raw;
|
|
151
|
+
const type = effect?.type;
|
|
152
|
+
if (typeof type !== "string") return null;
|
|
153
|
+
if (!FLOW_DELIVERY_SIDE_EFFECT_TYPES.includes(type)) {
|
|
154
|
+
return effect ? trackingStatus(effect, type, meta) : null;
|
|
155
|
+
}
|
|
156
|
+
const configured = isConfigured(effect?.encryptedConfig);
|
|
157
|
+
const oauth = isFlowOauthSideEffect(type);
|
|
158
|
+
const connected = isConfigured(effect?.oauthProviderId);
|
|
159
|
+
const needs = FLOW_SECRET_FIELDS[type];
|
|
160
|
+
const status = oauth ? `${type} \u2014 connection ${connected ? "[connected]" : "[needs connection]"}, config ${configured ? "[set]" : "[missing]"}` : configured ? `${type} \u2014 [configured]` : `${type} \u2014 [missing]${needs.length > 0 ? ` (needs: ${needs.join(", ")})` : ""}`;
|
|
161
|
+
return {
|
|
162
|
+
...meta,
|
|
163
|
+
target: "sideEffect",
|
|
164
|
+
...typeof effect?.id === "string" ? { sideEffectId: effect.id } : {},
|
|
165
|
+
kind: type,
|
|
166
|
+
status,
|
|
167
|
+
needsInput: sideEffectNeedsInput(effect)
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
function requestFlowInputCall(slug, status) {
|
|
171
|
+
const args = status.target === "node" ? `{ target: "node", flowSlug: "${slug}", nodeId: "${status.nodeId}", nodeType: "${status.kind}" }` : `{ target: "sideEffect", flowSlug: "${slug}", nodeId: "${status.nodeId}", sideEffectId: "${status.sideEffectId}", sideEffectType: "${status.kind}" }`;
|
|
172
|
+
const card = `request_flow_input with ${args}`;
|
|
173
|
+
const target = status.target === "node" ? `--node ${status.nodeId}` : `--side-effect ${status.sideEffectId}`;
|
|
174
|
+
const fallback = "only if nothing is connected or several could be meant";
|
|
175
|
+
if (status.kind === "email") {
|
|
176
|
+
return `baker flows connect ${slug} ${target} --email "<who receives each lead, comma-separated>" --subject "<New lead \u2014 the Form's name>"`;
|
|
177
|
+
}
|
|
178
|
+
if (status.kind === "httpWebhook") {
|
|
179
|
+
return `baker flows connect ${slug} ${target} --url <https address> \u2014 only a webhook that needs a token or password goes to the user: ${card}`;
|
|
180
|
+
}
|
|
181
|
+
if (status.kind === "hubspotForm") {
|
|
182
|
+
return `baker flows connect ${slug} ${target} --hubspot-form <formId from baker hubspot forms list> \u2014 ${fallback}: ${card}`;
|
|
183
|
+
}
|
|
184
|
+
if (status.kind === "hubspot" || status.kind === "hubspotMeeting") {
|
|
185
|
+
const list = status.kind === "hubspot" ? "forms view <id>" : "meetings view <slug>";
|
|
186
|
+
return `write \`baker hubspot ${list} --as-node\` into the step's form.external \u2014 ${fallback}: ${card}`;
|
|
187
|
+
}
|
|
188
|
+
if (FLOW_ACCOUNT_ONLY_KINDS.includes(status.kind)) {
|
|
189
|
+
return `baker flows connect ${slug} ${target} \u2014 ${fallback}: ${card}`;
|
|
190
|
+
}
|
|
191
|
+
if (FLOW_AGENT_DESTINATION_KINDS.includes(status.kind)) {
|
|
192
|
+
const sheet = status.kind === "googleSpreadsheet" ? ' (or --new-sheet "<title>" --columns "\u2026")' : "";
|
|
193
|
+
return `baker flows connect ${slug} ${target} --resource <id from baker flows options ${status.kind}>${sheet} \u2014 ${fallback}: ${card}`;
|
|
194
|
+
}
|
|
195
|
+
return card;
|
|
196
|
+
}
|
|
197
|
+
function collectConfigStatus(node, acc) {
|
|
198
|
+
if (!node || typeof node !== "object") {
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
201
|
+
const record = node;
|
|
202
|
+
const meta = nodeMeta(record);
|
|
203
|
+
const widget = widgetNodeStatus(record, meta);
|
|
204
|
+
if (widget) {
|
|
205
|
+
acc.push(widget);
|
|
206
|
+
}
|
|
207
|
+
if (Array.isArray(record.sideEffects)) {
|
|
208
|
+
for (const raw of record.sideEffects) {
|
|
209
|
+
const status = sideEffectStatus(raw, meta);
|
|
210
|
+
if (status) {
|
|
211
|
+
acc.push(status);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
if (Array.isArray(record.children)) {
|
|
216
|
+
for (const child of record.children) {
|
|
217
|
+
collectConfigStatus(child, acc);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
function redactTree(node) {
|
|
222
|
+
if (Array.isArray(node)) {
|
|
223
|
+
return node.map(redactTree);
|
|
224
|
+
}
|
|
225
|
+
if (!node || typeof node !== "object") {
|
|
226
|
+
return node;
|
|
227
|
+
}
|
|
228
|
+
const out = {};
|
|
229
|
+
for (const [key, value] of Object.entries(node)) {
|
|
230
|
+
if (key === "encryptedConfig") {
|
|
231
|
+
out[key] = isConfigured(value) ? "[configured]" : value;
|
|
232
|
+
} else {
|
|
233
|
+
out[key] = redactTree(value);
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
return out;
|
|
237
|
+
}
|
|
238
|
+
function stepNameKey(name) {
|
|
239
|
+
return name.replace(/([a-z])([A-Z])/g, "$1_$2").replace(/[-\s]+/g, "_").toUpperCase();
|
|
240
|
+
}
|
|
241
|
+
function isUsableStepNameKey(key) {
|
|
242
|
+
return /^[\p{ID_Start}$_][\p{ID_Continue}$]*$/u.test(key);
|
|
243
|
+
}
|
|
244
|
+
async function readSettings(tree) {
|
|
245
|
+
const sealed = sealedSideEffects(tree);
|
|
246
|
+
if (sealed.length === 0) return {};
|
|
247
|
+
try {
|
|
248
|
+
const { data } = await apiPost("/api/flows/destinations/reveal", {
|
|
249
|
+
items: sealed.map(({ type, encryptedConfig }) => ({ type, encryptedConfig }))
|
|
250
|
+
});
|
|
251
|
+
return Object.fromEntries(sealed.map((item, index) => [item.sideEffectId, data.items[index] ?? null]));
|
|
252
|
+
} catch {
|
|
253
|
+
return null;
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
export {
|
|
258
|
+
flowsDir,
|
|
259
|
+
listFlowSlugs,
|
|
260
|
+
flowDataPath,
|
|
261
|
+
writeFlowTree,
|
|
262
|
+
walkNodes,
|
|
263
|
+
collectSideEffects,
|
|
264
|
+
withSettings,
|
|
265
|
+
flowExists,
|
|
266
|
+
readFlowTree,
|
|
267
|
+
sideEffectNeedsInput,
|
|
268
|
+
requestFlowInputCall,
|
|
269
|
+
collectConfigStatus,
|
|
270
|
+
redactTree,
|
|
271
|
+
stepNameKey,
|
|
272
|
+
isUsableStepNameKey,
|
|
273
|
+
readSettings
|
|
274
|
+
};
|
|
275
|
+
//# sourceMappingURL=chunk-OG47L5GG.js.map
|