@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,140 @@
|
|
|
1
|
+
import {
|
|
2
|
+
csvOrJson,
|
|
3
|
+
handleLinkedinError,
|
|
4
|
+
resolveAccountIdArg
|
|
5
|
+
} from "./chunk-NFII3MTG.js";
|
|
6
|
+
import {
|
|
7
|
+
writeAdsJson,
|
|
8
|
+
writeAdsOutput
|
|
9
|
+
} from "./chunk-6DPSWLGY.js";
|
|
10
|
+
import {
|
|
11
|
+
NO_CACHE_ARG
|
|
12
|
+
} from "./chunk-AGBBTTKA.js";
|
|
13
|
+
import "./chunk-PC3FJEZH.js";
|
|
14
|
+
import "./chunk-CAZGM2NX.js";
|
|
15
|
+
import "./chunk-NZS3KEQ2.js";
|
|
16
|
+
import "./chunk-GIWHHCD6.js";
|
|
17
|
+
import "./chunk-SOPVIIUW.js";
|
|
18
|
+
import "./chunk-G4FG5EQO.js";
|
|
19
|
+
import "./chunk-NSBNIPIW.js";
|
|
20
|
+
import "./chunk-46YLDIQG.js";
|
|
21
|
+
import {
|
|
22
|
+
apiGet
|
|
23
|
+
} from "./chunk-X7VQFLHI.js";
|
|
24
|
+
import "./chunk-LU4HI4KI.js";
|
|
25
|
+
import "./chunk-LGK7UWBN.js";
|
|
26
|
+
import "./chunk-Q7US4OOA.js";
|
|
27
|
+
import "./chunk-YQSBHWOI.js";
|
|
28
|
+
|
|
29
|
+
// src/commands/ads/linkedin/conversions.ts
|
|
30
|
+
import { defineCommand } from "citty";
|
|
31
|
+
var DAY_MS = 864e5;
|
|
32
|
+
function healthOf(rules) {
|
|
33
|
+
const enabled = rules.filter((r) => r.enabled !== false);
|
|
34
|
+
const capi = enabled.filter((r) => r.conversionMethod === "CONVERSIONS_API");
|
|
35
|
+
const pixel = enabled.filter((r) => r.conversionMethod === "PIXEL");
|
|
36
|
+
const staleCapi = capi.filter(
|
|
37
|
+
(r) => !r.lastConversionReportedAt || Date.now() - r.lastConversionReportedAt > 7 * DAY_MS
|
|
38
|
+
);
|
|
39
|
+
const longView = enabled.filter(
|
|
40
|
+
(r) => r.viewThroughAttributionWindowSize !== void 0 && r.viewThroughAttributionWindowSize > 7
|
|
41
|
+
);
|
|
42
|
+
const leads = enabled.filter((r) => r.type === "LEAD");
|
|
43
|
+
const wrongDedup = leads.filter((r) => r.countingMethod && r.countingMethod !== "ONE_TIME_EACH_MEMBER");
|
|
44
|
+
return {
|
|
45
|
+
totalRules: rules.length,
|
|
46
|
+
enabledRules: enabled.length,
|
|
47
|
+
capiRules: capi.length,
|
|
48
|
+
pixelRules: pixel.length,
|
|
49
|
+
hasLeadEvent: leads.length > 0,
|
|
50
|
+
hasPurchaseEvent: enabled.some((r) => r.type === "PURCHASE"),
|
|
51
|
+
staleCapiRules: staleCapi,
|
|
52
|
+
longViewWindow: longView,
|
|
53
|
+
wrongLeadDedup: wrongDedup
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
var listCmd = defineCommand({
|
|
57
|
+
meta: {
|
|
58
|
+
name: "list",
|
|
59
|
+
description: `List conversion rules on the account.`
|
|
60
|
+
},
|
|
61
|
+
args: {
|
|
62
|
+
"account-id": { type: "string", description: "Numeric account ID or urn:li:sponsoredAccount:N" },
|
|
63
|
+
"account-urn": { type: "string", description: "Alias for --account-id" },
|
|
64
|
+
"no-cache": NO_CACHE_ARG,
|
|
65
|
+
output: { type: "string", description: "json|csv|jsonl|md", default: "json" }
|
|
66
|
+
},
|
|
67
|
+
run: async ({ args }) => {
|
|
68
|
+
const accountId = resolveAccountIdArg(args);
|
|
69
|
+
try {
|
|
70
|
+
const params = { "account-id": accountId };
|
|
71
|
+
if (args["no-cache"]) params["skip-cache"] = "true";
|
|
72
|
+
const data = await apiGet("/api/ads/linkedin/conversions", params);
|
|
73
|
+
const fmt = csvOrJson(args);
|
|
74
|
+
if (fmt !== "json") {
|
|
75
|
+
writeAdsOutput(data, fmt);
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
writeAdsJson({ ok: true, data });
|
|
79
|
+
} catch (err) {
|
|
80
|
+
handleLinkedinError(err);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
var healthCmd = defineCommand({
|
|
85
|
+
meta: {
|
|
86
|
+
name: "health",
|
|
87
|
+
description: `5-point Insight Tag / CAPI health check (playbook \xA707).
|
|
88
|
+
|
|
89
|
+
Surfaces:
|
|
90
|
+
- Are rules enabled?
|
|
91
|
+
- Do we have at least one LEAD or PURCHASE event?
|
|
92
|
+
- Do CAPI rules show recent activity (\u22647 days)?
|
|
93
|
+
- Is the view-through window \u22647 days?
|
|
94
|
+
- Do LEAD rules use ONE_TIME_EACH_MEMBER de-dup?`
|
|
95
|
+
},
|
|
96
|
+
args: {
|
|
97
|
+
"account-id": { type: "string", description: "Numeric account ID or urn:li:sponsoredAccount:N" },
|
|
98
|
+
"account-urn": { type: "string", description: "Alias for --account-id" },
|
|
99
|
+
"no-cache": NO_CACHE_ARG,
|
|
100
|
+
output: { type: "string", description: "json", default: "json" }
|
|
101
|
+
},
|
|
102
|
+
run: async ({ args }) => {
|
|
103
|
+
const accountId = resolveAccountIdArg(args);
|
|
104
|
+
try {
|
|
105
|
+
const params = { "account-id": accountId };
|
|
106
|
+
if (args["no-cache"]) params["skip-cache"] = "true";
|
|
107
|
+
const data = await apiGet("/api/ads/linkedin/conversions", params);
|
|
108
|
+
writeAdsJson({ ok: true, data: healthOf(data) });
|
|
109
|
+
} catch (err) {
|
|
110
|
+
handleLinkedinError(err);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
var conversionsCommand = defineCommand({
|
|
115
|
+
meta: {
|
|
116
|
+
name: "conversions",
|
|
117
|
+
description: `Conversion rules \u2014 Insight Tag and Conversions API.
|
|
118
|
+
|
|
119
|
+
Subcommands:
|
|
120
|
+
list \u2014 every rule on the account
|
|
121
|
+
health \u2014 playbook \xA707 5-point health check
|
|
122
|
+
create / update \u2014 stage a conversion-rule write (applies on chat publish)
|
|
123
|
+
associate-campaign / dissociate-campaign
|
|
124
|
+
\u2014 which ad sets a rule counts for (its own LinkedIn record, not a field on the rule)
|
|
125
|
+
upload \u2014 stage CRM / offline conversions (deals won, qualified leads) into a Conversions API rule`
|
|
126
|
+
},
|
|
127
|
+
subCommands: {
|
|
128
|
+
list: listCmd,
|
|
129
|
+
health: healthCmd,
|
|
130
|
+
create: () => import("./write-commands-DO2YUOMG.js").then((m) => m.conversionsCreateCommand),
|
|
131
|
+
update: () => import("./write-commands-DO2YUOMG.js").then((m) => m.conversionsUpdateCommand),
|
|
132
|
+
"associate-campaign": () => import("./write-commands-DO2YUOMG.js").then((m) => m.conversionsAssociateCommand),
|
|
133
|
+
"dissociate-campaign": () => import("./write-commands-DO2YUOMG.js").then((m) => m.conversionsDissociateCommand),
|
|
134
|
+
upload: () => import("./write-commands-DO2YUOMG.js").then((m) => m.conversionsUploadCommand)
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
export {
|
|
138
|
+
conversionsCommand
|
|
139
|
+
};
|
|
140
|
+
//# sourceMappingURL=conversions-MLRK35ZV.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/commands/ads/linkedin/conversions.ts"],"sourcesContent":["import { defineCommand } from \"citty\";\nimport { NO_CACHE_ARG } from \"../../../cache-flag.ts\";\nimport { apiGet } from \"../../../client.ts\";\nimport { writeAdsJson, writeAdsOutput } from \"../output.ts\";\nimport { csvOrJson, handleLinkedinError, resolveAccountIdArg } from \"./shared.ts\";\n\ninterface ConversionRule {\n id: string;\n urn: string;\n account: string;\n name?: string;\n type?: string;\n enabled?: boolean;\n conversionMethod?: string;\n attributionType?: string;\n postClickAttributionWindowSize?: number;\n viewThroughAttributionWindowSize?: number;\n associatedCampaigns?: string[];\n countingMethod?: string;\n lastConversionReportedAt?: number;\n}\n\nconst DAY_MS = 86_400_000;\n\nfunction healthOf(rules: ConversionRule[]): {\n totalRules: number;\n enabledRules: number;\n capiRules: number;\n pixelRules: number;\n hasLeadEvent: boolean;\n hasPurchaseEvent: boolean;\n staleCapiRules: ConversionRule[];\n longViewWindow: ConversionRule[];\n wrongLeadDedup: ConversionRule[];\n} {\n const enabled = rules.filter((r) => r.enabled !== false);\n const capi = enabled.filter((r) => r.conversionMethod === \"CONVERSIONS_API\");\n const pixel = enabled.filter((r) => r.conversionMethod === \"PIXEL\");\n const staleCapi = capi.filter(\n (r) => !r.lastConversionReportedAt || Date.now() - r.lastConversionReportedAt > 7 * DAY_MS,\n );\n const longView = enabled.filter(\n (r) => r.viewThroughAttributionWindowSize !== undefined && r.viewThroughAttributionWindowSize > 7,\n );\n const leads = enabled.filter((r) => r.type === \"LEAD\");\n const wrongDedup = leads.filter((r) => r.countingMethod && r.countingMethod !== \"ONE_TIME_EACH_MEMBER\");\n return {\n totalRules: rules.length,\n enabledRules: enabled.length,\n capiRules: capi.length,\n pixelRules: pixel.length,\n hasLeadEvent: leads.length > 0,\n hasPurchaseEvent: enabled.some((r) => r.type === \"PURCHASE\"),\n staleCapiRules: staleCapi,\n longViewWindow: longView,\n wrongLeadDedup: wrongDedup,\n };\n}\n\nconst listCmd = defineCommand({\n meta: {\n name: \"list\",\n description: `List conversion rules on the account.`,\n },\n args: {\n \"account-id\": { type: \"string\", description: \"Numeric account ID or urn:li:sponsoredAccount:N\" },\n \"account-urn\": { type: \"string\", description: \"Alias for --account-id\" },\n \"no-cache\": NO_CACHE_ARG,\n output: { type: \"string\", description: \"json|csv|jsonl|md\", default: \"json\" },\n },\n run: async ({ args }) => {\n const accountId = resolveAccountIdArg(args);\n try {\n const params: Record<string, string> = { \"account-id\": accountId };\n if (args[\"no-cache\"]) params[\"skip-cache\"] = \"true\";\n const data = await apiGet<ConversionRule[]>(\"/api/ads/linkedin/conversions\", params);\n const fmt = csvOrJson(args);\n if (fmt !== \"json\") {\n writeAdsOutput(data as unknown as Array<Record<string, unknown>>, fmt);\n return;\n }\n writeAdsJson({ ok: true, data });\n } catch (err) {\n handleLinkedinError(err);\n }\n },\n});\n\nconst healthCmd = defineCommand({\n meta: {\n name: \"health\",\n description: `5-point Insight Tag / CAPI health check (playbook §07).\n\nSurfaces:\n - Are rules enabled?\n - Do we have at least one LEAD or PURCHASE event?\n - Do CAPI rules show recent activity (≤7 days)?\n - Is the view-through window ≤7 days?\n - Do LEAD rules use ONE_TIME_EACH_MEMBER de-dup?`,\n },\n args: {\n \"account-id\": { type: \"string\", description: \"Numeric account ID or urn:li:sponsoredAccount:N\" },\n \"account-urn\": { type: \"string\", description: \"Alias for --account-id\" },\n \"no-cache\": NO_CACHE_ARG,\n output: { type: \"string\", description: \"json\", default: \"json\" },\n },\n run: async ({ args }) => {\n const accountId = resolveAccountIdArg(args);\n try {\n const params: Record<string, string> = { \"account-id\": accountId };\n if (args[\"no-cache\"]) params[\"skip-cache\"] = \"true\";\n const data = await apiGet<ConversionRule[]>(\"/api/ads/linkedin/conversions\", params);\n writeAdsJson({ ok: true, data: healthOf(data) });\n } catch (err) {\n handleLinkedinError(err);\n }\n },\n});\n\nexport const conversionsCommand = defineCommand({\n meta: {\n name: \"conversions\",\n description: `Conversion rules — Insight Tag and Conversions API.\n\nSubcommands:\n list — every rule on the account\n health — playbook §07 5-point health check\n create / update — stage a conversion-rule write (applies on chat publish)\n associate-campaign / dissociate-campaign\n — which ad sets a rule counts for (its own LinkedIn record, not a field on the rule)\n upload — stage CRM / offline conversions (deals won, qualified leads) into a Conversions API rule`,\n },\n subCommands: {\n list: listCmd,\n health: healthCmd,\n create: () => import(\"./write-commands.ts\").then((m) => m.conversionsCreateCommand),\n update: () => import(\"./write-commands.ts\").then((m) => m.conversionsUpdateCommand),\n \"associate-campaign\": () => import(\"./write-commands.ts\").then((m) => m.conversionsAssociateCommand),\n \"dissociate-campaign\": () => import(\"./write-commands.ts\").then((m) => m.conversionsDissociateCommand),\n upload: () => import(\"./write-commands.ts\").then((m) => m.conversionsUploadCommand),\n },\n});\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
import {
|
|
2
|
+
command
|
|
3
|
+
} from "./chunk-Z35KUMBW.js";
|
|
4
|
+
import {
|
|
5
|
+
bareAccountId,
|
|
6
|
+
failWriteValidation,
|
|
7
|
+
parseDateFlag,
|
|
8
|
+
requireTarget,
|
|
9
|
+
stageOp,
|
|
10
|
+
upper
|
|
11
|
+
} from "./chunk-ILPHIYAL.js";
|
|
12
|
+
import "./chunk-Q3GSVLE5.js";
|
|
13
|
+
import "./chunk-GDFJOCDO.js";
|
|
14
|
+
import "./chunk-M7QZSEHF.js";
|
|
15
|
+
import "./chunk-ERSX3MKH.js";
|
|
16
|
+
import "./chunk-SCAGMX2I.js";
|
|
17
|
+
import "./chunk-4NZ47VXO.js";
|
|
18
|
+
import "./chunk-D5FY4FAK.js";
|
|
19
|
+
import "./chunk-QPESDKZC.js";
|
|
20
|
+
import "./chunk-Y2JZX6JB.js";
|
|
21
|
+
import "./chunk-6DPSWLGY.js";
|
|
22
|
+
import "./chunk-E44NXCTL.js";
|
|
23
|
+
import "./chunk-EJGAJHLB.js";
|
|
24
|
+
import "./chunk-LNNTHEL7.js";
|
|
25
|
+
import "./chunk-FOMFU2RX.js";
|
|
26
|
+
import "./chunk-PSGIHSNC.js";
|
|
27
|
+
import "./chunk-PONLPYD7.js";
|
|
28
|
+
import "./chunk-SOPVIIUW.js";
|
|
29
|
+
import "./chunk-G4FG5EQO.js";
|
|
30
|
+
import "./chunk-NSBNIPIW.js";
|
|
31
|
+
import "./chunk-X7VQFLHI.js";
|
|
32
|
+
import "./chunk-LU4HI4KI.js";
|
|
33
|
+
import "./chunk-LGK7UWBN.js";
|
|
34
|
+
import "./chunk-Q7US4OOA.js";
|
|
35
|
+
import "./chunk-YQSBHWOI.js";
|
|
36
|
+
|
|
37
|
+
// src/commands/ads/meta/copy-writes.ts
|
|
38
|
+
var STATUS_WORDS = {
|
|
39
|
+
PAUSED: "PAUSED",
|
|
40
|
+
ACTIVE: "ACTIVE",
|
|
41
|
+
INHERITED: "INHERITED_FROM_SOURCE",
|
|
42
|
+
INHERITED_FROM_SOURCE: "INHERITED_FROM_SOURCE",
|
|
43
|
+
SAME: "INHERITED_FROM_SOURCE"
|
|
44
|
+
};
|
|
45
|
+
var RENAME_WORDS = {
|
|
46
|
+
TOP: "ONLY_TOP_LEVEL_RENAME",
|
|
47
|
+
ONLY_TOP_LEVEL_RENAME: "ONLY_TOP_LEVEL_RENAME",
|
|
48
|
+
DEEP: "DEEP_RENAME",
|
|
49
|
+
ALL: "DEEP_RENAME",
|
|
50
|
+
DEEP_RENAME: "DEEP_RENAME",
|
|
51
|
+
NONE: "NO_RENAME",
|
|
52
|
+
NO_RENAME: "NO_RENAME"
|
|
53
|
+
};
|
|
54
|
+
function mapped(words, value, flag, allowed) {
|
|
55
|
+
const key = upper(value);
|
|
56
|
+
if (key === void 0) {
|
|
57
|
+
return void 0;
|
|
58
|
+
}
|
|
59
|
+
const word = words[key];
|
|
60
|
+
if (!word) {
|
|
61
|
+
failWriteValidation(`${flag} takes ${allowed}`);
|
|
62
|
+
}
|
|
63
|
+
return word;
|
|
64
|
+
}
|
|
65
|
+
function copyPayloadFromFlags(level, args) {
|
|
66
|
+
const payload = {
|
|
67
|
+
source_id: args.id,
|
|
68
|
+
status_option: mapped(STATUS_WORDS, args.status, "--status", "PAUSED, ACTIVE or INHERITED"),
|
|
69
|
+
rename_strategy: mapped(RENAME_WORDS, args.rename, "--rename", "top, deep or none"),
|
|
70
|
+
rename_prefix: args["rename-prefix"],
|
|
71
|
+
rename_suffix: args["rename-suffix"]
|
|
72
|
+
};
|
|
73
|
+
if (level !== "ad") {
|
|
74
|
+
payload.deep_copy = args.deep === true ? true : void 0;
|
|
75
|
+
payload.start_time = parseDateFlag(args.start, "--start");
|
|
76
|
+
payload.end_time = parseDateFlag(args.end, "--end");
|
|
77
|
+
}
|
|
78
|
+
if (level === "adSet") {
|
|
79
|
+
payload.campaign_id = args["to-campaign"];
|
|
80
|
+
}
|
|
81
|
+
if (level === "ad") {
|
|
82
|
+
payload.adset_id = args["to-adset"];
|
|
83
|
+
}
|
|
84
|
+
return Object.fromEntries(Object.entries(payload).filter(([, value]) => value !== void 0));
|
|
85
|
+
}
|
|
86
|
+
var accountArg = { type: "string", description: "Meta ad account ID (act_123)" };
|
|
87
|
+
var naming = {
|
|
88
|
+
status: {
|
|
89
|
+
type: "string",
|
|
90
|
+
description: "PAUSED (default) | ACTIVE \u2014 the copy delivers and spends once published | INHERITED \u2014 the original's"
|
|
91
|
+
},
|
|
92
|
+
rename: {
|
|
93
|
+
type: "string",
|
|
94
|
+
description: "top (default: only the copied object is renamed) | deep (its ad sets and ads too) | none"
|
|
95
|
+
},
|
|
96
|
+
"rename-prefix": { type: "string", description: "Put this before each renamed name" },
|
|
97
|
+
"rename-suffix": {
|
|
98
|
+
type: "string",
|
|
99
|
+
description: `Put this after each renamed name instead of Meta's " - Copy" (in the account's language)`
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
var schedule = {
|
|
103
|
+
start: { type: "string", description: "When the copied ad sets start (ISO date or datetime); else the original's" },
|
|
104
|
+
end: { type: "string", description: "When the copied ad sets end; else the original's" }
|
|
105
|
+
};
|
|
106
|
+
var WHEN_TO_COPY = `copy is Meta's own copy: it keeps everything Meta holds \u2014 creatives, placements, every setting Baker cannot read back \u2014 and, with --deep, everything underneath. Use \`duplicate\` instead when the copy must differ in the same step (a new name, budget or targeting); or copy, then change the copy by its ref (\`adsets update <ref> --daily-budget 30\`), which applies once Meta has made it.`;
|
|
107
|
+
function copyArgs(level, label) {
|
|
108
|
+
const args = {
|
|
109
|
+
id: { type: "positional", description: `${label} id to copy (a published one)`, required: true },
|
|
110
|
+
"account-id": accountArg
|
|
111
|
+
};
|
|
112
|
+
if (level !== "ad") {
|
|
113
|
+
const children = level === "campaign" ? "ad sets and ads" : "ads";
|
|
114
|
+
args.deep = { type: "boolean", description: `Copy its ${children} too (Meta copies at most 51 ads in one go)` };
|
|
115
|
+
}
|
|
116
|
+
if (level === "adSet") {
|
|
117
|
+
args["to-campaign"] = {
|
|
118
|
+
type: "string",
|
|
119
|
+
description: "Campaign id or meta_temp_* ref to put the copy in; else beside the original"
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
if (level === "ad") {
|
|
123
|
+
args["to-adset"] = {
|
|
124
|
+
type: "string",
|
|
125
|
+
description: "Ad set id or meta_temp_* ref to put the copy in; else beside the original"
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
Object.assign(args, naming, level === "ad" ? {} : schedule);
|
|
129
|
+
return args;
|
|
130
|
+
}
|
|
131
|
+
function copyCommand(level, input) {
|
|
132
|
+
return command({
|
|
133
|
+
schema: `ads.meta.${input.family}.copy`,
|
|
134
|
+
name: "copy",
|
|
135
|
+
description: `Stage Meta's own copy of a ${input.label}${level === "ad" ? "" : " (with --deep, of everything under it)"}, paused unless --status. Prints a meta_temp_* ref for the copy that later changes in this chat can name. ${WHEN_TO_COPY}
|
|
136
|
+
Example: ${input.extra}`,
|
|
137
|
+
schemaDescription: `Stage a copy of a Meta ${input.label} through Meta's copies edge \u2014 applied at publish; the copy's ref resolves to its new id.`,
|
|
138
|
+
args: copyArgs(level, input.label),
|
|
139
|
+
run: async (args) => {
|
|
140
|
+
requireTarget(args, input.label);
|
|
141
|
+
await stageOp({
|
|
142
|
+
kind: `${level}.copy`,
|
|
143
|
+
accountId: bareAccountId(args),
|
|
144
|
+
payload: copyPayloadFromFlags(level, args)
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
var campaignsCopyCommand = copyCommand("campaign", {
|
|
150
|
+
family: "campaigns",
|
|
151
|
+
label: "campaign",
|
|
152
|
+
extra: 'baker ads meta campaigns copy 6123 --deep --rename-suffix " \u2013 Q4" --start 2026-11-01'
|
|
153
|
+
});
|
|
154
|
+
var adSetsCopyCommand = copyCommand("adSet", {
|
|
155
|
+
family: "adsets",
|
|
156
|
+
label: "ad set",
|
|
157
|
+
extra: "baker ads meta adsets copy 6124 --deep --to-campaign meta_temp_ab12"
|
|
158
|
+
});
|
|
159
|
+
var adsCopyCommand = copyCommand("ad", {
|
|
160
|
+
family: "ads",
|
|
161
|
+
label: "ad",
|
|
162
|
+
extra: "baker ads meta ads copy 6125 --to-adset 6130"
|
|
163
|
+
});
|
|
164
|
+
export {
|
|
165
|
+
adSetsCopyCommand,
|
|
166
|
+
adsCopyCommand,
|
|
167
|
+
campaignsCopyCommand,
|
|
168
|
+
copyPayloadFromFlags
|
|
169
|
+
};
|
|
170
|
+
//# sourceMappingURL=copy-writes-E3V5TUVU.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/commands/ads/meta/copy-writes.ts"],"sourcesContent":["import type { ArgsDef, CommandDef } from \"citty\";\nimport { command } from \"./asset-writes.ts\";\nimport { bareAccountId, failWriteValidation, parseDateFlag, requireTarget, stageOp, upper } from \"./write-shared.ts\";\n\n/**\n * `campaigns|adsets|ads copy` — Meta's own copy (`POST /{id}/copies`), staged\n * until publish. Meta builds the copy from everything it holds, so it keeps\n * what Baker cannot read back or write; `duplicate` is the other tool, for a\n * copy whose fields change in the same step.\n */\n\ntype Level = \"campaign\" | \"adSet\" | \"ad\";\n\nconst STATUS_WORDS: Record<string, string> = {\n PAUSED: \"PAUSED\",\n ACTIVE: \"ACTIVE\",\n INHERITED: \"INHERITED_FROM_SOURCE\",\n INHERITED_FROM_SOURCE: \"INHERITED_FROM_SOURCE\",\n SAME: \"INHERITED_FROM_SOURCE\",\n};\n\nconst RENAME_WORDS: Record<string, string> = {\n TOP: \"ONLY_TOP_LEVEL_RENAME\",\n ONLY_TOP_LEVEL_RENAME: \"ONLY_TOP_LEVEL_RENAME\",\n DEEP: \"DEEP_RENAME\",\n ALL: \"DEEP_RENAME\",\n DEEP_RENAME: \"DEEP_RENAME\",\n NONE: \"NO_RENAME\",\n NO_RENAME: \"NO_RENAME\",\n};\n\nfunction mapped(words: Record<string, string>, value: unknown, flag: string, allowed: string): string | undefined {\n const key = upper(value);\n if (key === undefined) {\n return undefined;\n }\n const word = words[key];\n if (!word) {\n failWriteValidation(`${flag} takes ${allowed}`);\n }\n return word;\n}\n\n/** The staged copy payload from the command's flags. */\nexport function copyPayloadFromFlags(level: Level, args: Record<string, unknown>): Record<string, unknown> {\n const payload: Record<string, unknown> = {\n source_id: args.id,\n status_option: mapped(STATUS_WORDS, args.status, \"--status\", \"PAUSED, ACTIVE or INHERITED\"),\n rename_strategy: mapped(RENAME_WORDS, args.rename, \"--rename\", \"top, deep or none\"),\n rename_prefix: args[\"rename-prefix\"],\n rename_suffix: args[\"rename-suffix\"],\n };\n if (level !== \"ad\") {\n payload.deep_copy = args.deep === true ? true : undefined;\n payload.start_time = parseDateFlag(args.start, \"--start\");\n payload.end_time = parseDateFlag(args.end, \"--end\");\n }\n if (level === \"adSet\") {\n payload.campaign_id = args[\"to-campaign\"];\n }\n if (level === \"ad\") {\n payload.adset_id = args[\"to-adset\"];\n }\n return Object.fromEntries(Object.entries(payload).filter(([, value]) => value !== undefined));\n}\n\nconst accountArg = { type: \"string\", description: \"Meta ad account ID (act_123)\" } as const;\nconst naming = {\n status: {\n type: \"string\",\n description: \"PAUSED (default) | ACTIVE — the copy delivers and spends once published | INHERITED — the original's\",\n },\n rename: {\n type: \"string\",\n description: \"top (default: only the copied object is renamed) | deep (its ad sets and ads too) | none\",\n },\n \"rename-prefix\": { type: \"string\", description: \"Put this before each renamed name\" },\n \"rename-suffix\": {\n type: \"string\",\n description: \"Put this after each renamed name instead of Meta's \\\" - Copy\\\" (in the account's language)\",\n },\n} as const;\nconst schedule = {\n start: { type: \"string\", description: \"When the copied ad sets start (ISO date or datetime); else the original's\" },\n end: { type: \"string\", description: \"When the copied ad sets end; else the original's\" },\n} as const;\n\nconst WHEN_TO_COPY = `copy is Meta's own copy: it keeps everything Meta holds — creatives, placements, every setting Baker cannot read back — and, with --deep, everything underneath. Use \\`duplicate\\` instead when the copy must differ in the same step (a new name, budget or targeting); or copy, then change the copy by its ref (\\`adsets update <ref> --daily-budget 30\\`), which applies once Meta has made it.`;\n\ntype ArgSpec = { type: string; description: string; required?: boolean };\n\nfunction copyArgs(level: Level, label: string): Record<string, ArgSpec> {\n const args: Record<string, ArgSpec> = {\n id: { type: \"positional\", description: `${label} id to copy (a published one)`, required: true },\n \"account-id\": accountArg,\n };\n if (level !== \"ad\") {\n const children = level === \"campaign\" ? \"ad sets and ads\" : \"ads\";\n args.deep = { type: \"boolean\", description: `Copy its ${children} too (Meta copies at most 51 ads in one go)` };\n }\n if (level === \"adSet\") {\n args[\"to-campaign\"] = {\n type: \"string\",\n description: \"Campaign id or meta_temp_* ref to put the copy in; else beside the original\",\n };\n }\n if (level === \"ad\") {\n args[\"to-adset\"] = {\n type: \"string\",\n description: \"Ad set id or meta_temp_* ref to put the copy in; else beside the original\",\n };\n }\n Object.assign(args, naming, level === \"ad\" ? {} : schedule);\n return args;\n}\n\nfunction copyCommand(level: Level, input: { family: string; label: string; extra: string }): CommandDef<ArgsDef> {\n return command({\n schema: `ads.meta.${input.family}.copy`,\n name: \"copy\",\n description: `Stage Meta's own copy of a ${input.label}${level === \"ad\" ? \"\" : \" (with --deep, of everything under it)\"}, paused unless --status. Prints a meta_temp_* ref for the copy that later changes in this chat can name. ${WHEN_TO_COPY}\nExample: ${input.extra}`,\n schemaDescription: `Stage a copy of a Meta ${input.label} through Meta's copies edge — applied at publish; the copy's ref resolves to its new id.`,\n args: copyArgs(level, input.label),\n run: async (args) => {\n requireTarget(args, input.label);\n await stageOp({\n kind: `${level}.copy`,\n accountId: bareAccountId(args),\n payload: copyPayloadFromFlags(level, args),\n });\n },\n });\n}\n\nexport const campaignsCopyCommand = copyCommand(\"campaign\", {\n family: \"campaigns\",\n label: \"campaign\",\n extra: 'baker ads meta campaigns copy 6123 --deep --rename-suffix \" – Q4\" --start 2026-11-01',\n});\nexport const adSetsCopyCommand = copyCommand(\"adSet\", {\n family: \"adsets\",\n label: \"ad set\",\n extra: \"baker ads meta adsets copy 6124 --deep --to-campaign meta_temp_ab12\",\n});\nexport const adsCopyCommand = copyCommand(\"ad\", {\n family: \"ads\",\n label: \"ad\",\n extra: \"baker ads meta ads copy 6125 --to-adset 6130\",\n});\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
import {
|
|
2
|
+
holdWorkspaceSpend
|
|
3
|
+
} from "./chunk-E44NXCTL.js";
|
|
4
|
+
import "./chunk-EJGAJHLB.js";
|
|
5
|
+
import {
|
|
6
|
+
askJev
|
|
7
|
+
} from "./chunk-LNNTHEL7.js";
|
|
8
|
+
import "./chunk-FOMFU2RX.js";
|
|
9
|
+
import "./chunk-PSGIHSNC.js";
|
|
10
|
+
import "./chunk-PONLPYD7.js";
|
|
11
|
+
import {
|
|
12
|
+
ACTION_PRIORITIES,
|
|
13
|
+
buildCreateHints,
|
|
14
|
+
failApi,
|
|
15
|
+
failValidation,
|
|
16
|
+
generateTempId,
|
|
17
|
+
parsePriority,
|
|
18
|
+
parseTagList
|
|
19
|
+
} from "./chunk-UDIEKCIR.js";
|
|
20
|
+
import {
|
|
21
|
+
actionTempIdSchema
|
|
22
|
+
} from "./chunk-PC3FJEZH.js";
|
|
23
|
+
import "./chunk-CAZGM2NX.js";
|
|
24
|
+
import "./chunk-NZS3KEQ2.js";
|
|
25
|
+
import "./chunk-GIWHHCD6.js";
|
|
26
|
+
import "./chunk-SOPVIIUW.js";
|
|
27
|
+
import "./chunk-G4FG5EQO.js";
|
|
28
|
+
import "./chunk-NSBNIPIW.js";
|
|
29
|
+
import "./chunk-46YLDIQG.js";
|
|
30
|
+
import {
|
|
31
|
+
apiPost
|
|
32
|
+
} from "./chunk-X7VQFLHI.js";
|
|
33
|
+
import "./chunk-LU4HI4KI.js";
|
|
34
|
+
import {
|
|
35
|
+
requireChatId
|
|
36
|
+
} from "./chunk-LGK7UWBN.js";
|
|
37
|
+
import {
|
|
38
|
+
registerSchema,
|
|
39
|
+
writeJson
|
|
40
|
+
} from "./chunk-Q7US4OOA.js";
|
|
41
|
+
import "./chunk-YQSBHWOI.js";
|
|
42
|
+
|
|
43
|
+
// src/commands/actions/create.ts
|
|
44
|
+
import { defineCommand } from "citty";
|
|
45
|
+
|
|
46
|
+
// src/commands/actions/advisory.ts
|
|
47
|
+
var EXECUTABLE_SURFACES = [
|
|
48
|
+
"ask-user",
|
|
49
|
+
"analysis",
|
|
50
|
+
"ads-write",
|
|
51
|
+
"tag-manager",
|
|
52
|
+
"site-tags",
|
|
53
|
+
"landing",
|
|
54
|
+
"flow"
|
|
55
|
+
];
|
|
56
|
+
var SCHEDULED_HINT = 'This reads as recurring/scheduled work. If it should run on a cadence or a future date, create a Scheduled agent instead \u2014 baker scheduled-agents create --cron "0 9 * * MON" (or --run-at, or --trigger for a reaction rather than a clock; guide: `__tooling__/docs/tools/baker/scheduled-agents.md`). Do not capture "set up a schedule" as a Work Action.';
|
|
57
|
+
var SURFACES = {
|
|
58
|
+
"ask-user": {
|
|
59
|
+
questions: [
|
|
60
|
+
"Does `task` say the work cannot go ahead until the client or user gives or confirms one specific value, such as a production domain, an account ID or credentials? Work that is blocked for any other reason is not."
|
|
61
|
+
],
|
|
62
|
+
hint: "This is a missing input, not blocked work. Ask for it with AskUserQuestion (one question), then do the work in the same turn \u2014 filing the Task AND asking the question is the same request twice."
|
|
63
|
+
},
|
|
64
|
+
analysis: {
|
|
65
|
+
questions: [
|
|
66
|
+
"Is the work `task` names itself an investigation: to audit, review, analyse, verify, check, document or research something, where the result is a finding rather than a change?"
|
|
67
|
+
],
|
|
68
|
+
hint: "This names the analysis itself \u2014 investigating, auditing and documenting are work you do now, not work you file. Run it in this chat and deliver the finding; a Task is for a fix something genuinely blocks (bar: `__tooling__/docs/tools/baker/actions.md`)."
|
|
69
|
+
},
|
|
70
|
+
"ads-write": {
|
|
71
|
+
// The platform often goes unnamed ("6 new WhatsApp campaigns" are Google Ads campaigns).
|
|
72
|
+
questions: [
|
|
73
|
+
"Is `task` a change to the settings of paid ad campaigns or ad sets: location targeting, ad schedule, audiences or audience signals, bids, tracking URL templates or final URLs?",
|
|
74
|
+
"Is `task` setting, applying, raising, lowering or capping the budget of paid ad campaigns or ad sets? Approving a budget is not.",
|
|
75
|
+
"Is `task` a change to what paid ads say or show: ad copy, search ad (RSA) headlines or descriptions, display paths, claims in the ads, callouts, sitelinks, structured snippets or other ad extensions?",
|
|
76
|
+
"Is `task` a change to the keywords of paid search campaigns: adding keywords, match types or negative keywords? Work that needs another company's permission first is not.",
|
|
77
|
+
"Is `task` pausing, launching, enabling, duplicating, pruning, reweighting or restructuring paid ad campaigns, ad sets or ads, or labelling them? Getting a decision or an approval is not."
|
|
78
|
+
],
|
|
79
|
+
hint: "This is an ad-platform change the write surface covers \u2014 stage it now with `baker ads google|meta|linkedin` and it applies at publish (guides: `__tooling__/docs/tools/baker/ads-google.md`, `__tooling__/docs/tools/baker/ads-meta.md`, `__tooling__/docs/tools/baker/ads-linkedin.md`). Staging is not going live."
|
|
80
|
+
},
|
|
81
|
+
"tag-manager": {
|
|
82
|
+
questions: [
|
|
83
|
+
"Is `task` a change inside the Google Tag Manager container: its tags, triggers, variables, data layer events, consent settings, GA4 events or conversion measurement? Server-side tagging, or hosting, is not."
|
|
84
|
+
],
|
|
85
|
+
hint: "This is a change inside the GTM container \u2014 `baker tag-manager` stages it now and it applies at publish (guide: `__tooling__/docs/tools/baker/tag-manager.md`). Stage it instead of filing it, and if several container fixes really are blocked, they belong in ONE Task, not one per finding."
|
|
86
|
+
},
|
|
87
|
+
"site-tags": {
|
|
88
|
+
questions: [
|
|
89
|
+
"Is `task` installing, configuring or removing a tracking script, pixel or tag on the website pages (a Meta pixel and its Conversions API events, Clarity, Hotjar, a HubSpot tracking code, a LinkedIn Insight tag)? A server-side setup on the company's own domain is not."
|
|
90
|
+
],
|
|
91
|
+
hint: "This is a tag or script on the site \u2014 it goes through the `request_tag_input` approval form in this chat, which also collects any secret values (guide: `__tooling__/docs/tools/baker/tags.md`). Show the form instead of filing a Task."
|
|
92
|
+
},
|
|
93
|
+
landing: {
|
|
94
|
+
questions: [
|
|
95
|
+
"Is `task` building or editing a page of the website or a landing page: its copy, hero, headline, sections or layout? A headline of an ad, or a page only mentioned as the cause of another problem, is not."
|
|
96
|
+
],
|
|
97
|
+
hint: "This is a page change \u2014 build it in this chat with the `/landing` skill. Only file it if something outside the page blocks the work."
|
|
98
|
+
},
|
|
99
|
+
flow: {
|
|
100
|
+
questions: ["Is `task` changing how a form behaves: its steps, branching logic, or the redirect after it is sent?"],
|
|
101
|
+
hint: "This is form behaviour \u2014 change it in this chat with the `/flow-builder` skill. Only file it if something outside the form blocks the work."
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
var SCHEDULED_QUESTIONS = [
|
|
105
|
+
"Does `task` ask for work to be done again and again on a schedule (every day, every week, each Monday, monthly)? A month or period that only says what the work is about is not.",
|
|
106
|
+
"Does `task` ask to be reminded, or for work to be done, at a later date or moment (before a launch, on a given day)? A month or date that only names the period the work is about is not."
|
|
107
|
+
];
|
|
108
|
+
var ROUTING_BANDS = { scheduled: 0.5, surface: 0.5 };
|
|
109
|
+
var jevTaskJudge = async (task) => {
|
|
110
|
+
const groups = [
|
|
111
|
+
SCHEDULED_QUESTIONS,
|
|
112
|
+
...EXECUTABLE_SURFACES.map((s) => SURFACES[s].questions)
|
|
113
|
+
];
|
|
114
|
+
const spent = [];
|
|
115
|
+
const answers = await askJev(
|
|
116
|
+
groups.flat().map((question) => ({ instructions: { task, question } })),
|
|
117
|
+
(usage) => spent.push(usage)
|
|
118
|
+
);
|
|
119
|
+
await holdWorkspaceSpend(spent);
|
|
120
|
+
if (answers === null) return null;
|
|
121
|
+
let next = 0;
|
|
122
|
+
const [scheduled = 0, ...surfaces] = groups.map((group) => Math.max(...group.map(() => answers[next++] ?? 0)));
|
|
123
|
+
return {
|
|
124
|
+
scheduled,
|
|
125
|
+
surfaces: Object.fromEntries(EXECUTABLE_SURFACES.map((s, i) => [s, surfaces[i] ?? 0]))
|
|
126
|
+
};
|
|
127
|
+
};
|
|
128
|
+
function hintFor(reading) {
|
|
129
|
+
if (reading.scheduled >= ROUTING_BANDS.scheduled) return { kind: "scheduled", hint: SCHEDULED_HINT };
|
|
130
|
+
if (reading.surfaces["ask-user"] >= ROUTING_BANDS.surface) {
|
|
131
|
+
return { kind: "executable", surface: "ask-user", hint: SURFACES["ask-user"].hint };
|
|
132
|
+
}
|
|
133
|
+
let best = null;
|
|
134
|
+
for (const surface of EXECUTABLE_SURFACES) {
|
|
135
|
+
const p = reading.surfaces[surface];
|
|
136
|
+
if (p >= ROUTING_BANDS.surface && (best === null || p > best.p)) best = { surface, p };
|
|
137
|
+
}
|
|
138
|
+
return best ? { kind: "executable", surface: best.surface, hint: SURFACES[best.surface].hint } : null;
|
|
139
|
+
}
|
|
140
|
+
function taskText(name, description) {
|
|
141
|
+
return description.trim() ? `${name.trim()}
|
|
142
|
+
|
|
143
|
+
${description.trim()}` : name.trim();
|
|
144
|
+
}
|
|
145
|
+
async function advisoryHint(name, description, judge) {
|
|
146
|
+
const reading = await judge(taskText(name, description)).catch(() => null);
|
|
147
|
+
return reading === null ? null : hintFor(reading);
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
// src/commands/actions/create.ts
|
|
151
|
+
registerSchema({
|
|
152
|
+
command: "actions.create",
|
|
153
|
+
description: "Stage creation of a new action (applies when the chat is published). Returns a tempId you can use to link in the same draft. Pass --tags (REQUIRED \u2014 run `baker actions tags list` for the taxonomy) and --priority (one of urgent|high|medium|low \u2014 drives the dependency-aware 'Do first' ordering). After creating, check if this action blocks or is blocked by other actions and wire dependencies with `baker actions link`.",
|
|
154
|
+
args: {
|
|
155
|
+
name: { type: "string", description: "Action name (short, action-verb, \u22646 words)", required: true },
|
|
156
|
+
description: {
|
|
157
|
+
type: "string",
|
|
158
|
+
description: "Context-complete description in markdown: what / why / where / done-when. Use `##` headings for those sections, `-` bullets for lists of items, and `**bold**` for the figures that drive the decision. Anything longer than a couple of sentences needs headings \u2014 it is read in a narrow panel.",
|
|
159
|
+
required: false
|
|
160
|
+
},
|
|
161
|
+
tags: {
|
|
162
|
+
type: "string",
|
|
163
|
+
description: "Comma-separated tag slugs (e.g. google-ads,audit-finding). Must be known \u2014 see `baker actions tags list`.",
|
|
164
|
+
required: false
|
|
165
|
+
},
|
|
166
|
+
priority: {
|
|
167
|
+
type: "string",
|
|
168
|
+
description: `User priority for the do-first ordering. One of: ${ACTION_PRIORITIES.join(", ")}.`,
|
|
169
|
+
required: false
|
|
170
|
+
},
|
|
171
|
+
"temp-id": {
|
|
172
|
+
type: "string",
|
|
173
|
+
description: "Custom tempId \u2014 must start with `temp_` (e.g. temp_hero_copy). Auto-generated if omitted; omitting it is fine.",
|
|
174
|
+
required: false
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
});
|
|
178
|
+
var createCommand = defineCommand({
|
|
179
|
+
meta: {
|
|
180
|
+
name: "create",
|
|
181
|
+
description: 'Stage a new action. Applies when the chat is published. Example: baker actions create --name "Build hero"'
|
|
182
|
+
},
|
|
183
|
+
args: {
|
|
184
|
+
name: { type: "string", description: "Action name", required: false },
|
|
185
|
+
description: { type: "string", description: "Description", required: false, default: "" },
|
|
186
|
+
tags: { type: "string", description: "Comma-separated tag slugs (see `baker actions tags list`)", required: false },
|
|
187
|
+
priority: { type: "string", description: `User priority: ${ACTION_PRIORITIES.join("|")}`, required: false },
|
|
188
|
+
"temp-id": { type: "string", description: "Optional custom tempId (must start with `temp_`)", required: false }
|
|
189
|
+
},
|
|
190
|
+
run: async ({ args }) => {
|
|
191
|
+
try {
|
|
192
|
+
const name = args.name;
|
|
193
|
+
if (!name || name.trim().length === 0) {
|
|
194
|
+
failValidation("--name is required.");
|
|
195
|
+
}
|
|
196
|
+
const customTempId = args["temp-id"];
|
|
197
|
+
if (customTempId) {
|
|
198
|
+
const parsed = actionTempIdSchema.safeParse(customTempId);
|
|
199
|
+
if (!parsed.success) {
|
|
200
|
+
failValidation(parsed.error.issues[0]?.message ?? "Invalid --temp-id.");
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
const chatId = requireChatId();
|
|
204
|
+
const tempId = customTempId || generateTempId();
|
|
205
|
+
const tags = parseTagList(args.tags);
|
|
206
|
+
const priority = parsePriority(args.priority, { allowClear: false });
|
|
207
|
+
const description = args.description ?? "";
|
|
208
|
+
const [response, advisory] = await Promise.all([
|
|
209
|
+
apiPost("/api/actions/create", {
|
|
210
|
+
chatId,
|
|
211
|
+
tempId,
|
|
212
|
+
name,
|
|
213
|
+
description,
|
|
214
|
+
...tags ? { tags } : {},
|
|
215
|
+
...priority !== void 0 && priority !== null ? { priority } : {}
|
|
216
|
+
}),
|
|
217
|
+
advisoryHint(name, description, jevTaskJudge)
|
|
218
|
+
]);
|
|
219
|
+
writeJson({
|
|
220
|
+
...response,
|
|
221
|
+
hints: buildCreateHints({
|
|
222
|
+
advisory,
|
|
223
|
+
name,
|
|
224
|
+
description,
|
|
225
|
+
tempId,
|
|
226
|
+
tags,
|
|
227
|
+
prioritySet: priority !== void 0,
|
|
228
|
+
draftCreateCount: response.data.draftCreateCount ?? 0
|
|
229
|
+
})
|
|
230
|
+
});
|
|
231
|
+
} catch (err) {
|
|
232
|
+
failApi(err);
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
});
|
|
236
|
+
export {
|
|
237
|
+
createCommand
|
|
238
|
+
};
|
|
239
|
+
//# sourceMappingURL=create-3WOZO2XT.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/commands/actions/create.ts","../src/commands/actions/advisory.ts"],"sourcesContent":["import { type ActionsCreateResponse, actionTempIdSchema } from \"@baker/api\";\nimport { defineCommand } from \"citty\";\nimport { apiPost } from \"../../client.ts\";\nimport { requireChatId } from \"../../env.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { advisoryHint, jevTaskJudge } from \"./advisory.ts\";\nimport {\n ACTION_PRIORITIES,\n buildCreateHints,\n failApi,\n failValidation,\n generateTempId,\n parsePriority,\n parseTagList,\n} from \"./shared.ts\";\n\nregisterSchema({\n command: \"actions.create\",\n description:\n \"Stage creation of a new action (applies when the chat is published). Returns a tempId you can use to link in the same draft. Pass --tags (REQUIRED — run `baker actions tags list` for the taxonomy) and --priority (one of urgent|high|medium|low — drives the dependency-aware 'Do first' ordering). After creating, check if this action blocks or is blocked by other actions and wire dependencies with `baker actions link`.\",\n args: {\n name: { type: \"string\", description: \"Action name (short, action-verb, ≤6 words)\", required: true },\n description: {\n type: \"string\",\n description:\n \"Context-complete description in markdown: what / why / where / done-when. Use `##` headings for those sections, `-` bullets for lists of items, and `**bold**` for the figures that drive the decision. Anything longer than a couple of sentences needs headings — it is read in a narrow panel.\",\n required: false,\n },\n tags: {\n type: \"string\",\n description:\n \"Comma-separated tag slugs (e.g. google-ads,audit-finding). Must be known — see `baker actions tags list`.\",\n required: false,\n },\n priority: {\n type: \"string\",\n description: `User priority for the do-first ordering. One of: ${ACTION_PRIORITIES.join(\", \")}.`,\n required: false,\n },\n \"temp-id\": {\n type: \"string\",\n description:\n \"Custom tempId — must start with `temp_` (e.g. temp_hero_copy). Auto-generated if omitted; omitting it is fine.\",\n required: false,\n },\n },\n});\n\nexport const createCommand = defineCommand({\n meta: {\n name: \"create\",\n description:\n 'Stage a new action. Applies when the chat is published. Example: baker actions create --name \"Build hero\"',\n },\n args: {\n name: { type: \"string\", description: \"Action name\", required: false },\n description: { type: \"string\", description: \"Description\", required: false, default: \"\" },\n tags: { type: \"string\", description: \"Comma-separated tag slugs (see `baker actions tags list`)\", required: false },\n priority: { type: \"string\", description: `User priority: ${ACTION_PRIORITIES.join(\"|\")}`, required: false },\n \"temp-id\": { type: \"string\", description: \"Optional custom tempId (must start with `temp_`)\", required: false },\n },\n run: async ({ args }) => {\n try {\n const name = args.name as string | undefined;\n if (!name || name.trim().length === 0) {\n failValidation(\"--name is required.\");\n }\n // Check the args the agent typed before anything about the environment:\n // a bad --temp-id must report itself, not hide behind a missing chat id.\n // Refusing here rather than at publish is the point — `temp_` is what\n // tells a staged Task apart from a published action id in every later\n // command, and by publish time the draft is already written.\n const customTempId = args[\"temp-id\"] as string | undefined;\n if (customTempId) {\n const parsed = actionTempIdSchema.safeParse(customTempId);\n if (!parsed.success) {\n failValidation(parsed.error.issues[0]?.message ?? \"Invalid --temp-id.\");\n }\n }\n const chatId = requireChatId();\n const tempId = customTempId || generateTempId();\n const tags = parseTagList(args.tags);\n // Create doesn't support clearing — there's nothing to clear yet. Reject\n // \"none\"/empty so the agent doesn't think it just unset something.\n const priority = parsePriority(args.priority, { allowClear: false });\n const description = (args.description as string) ?? \"\";\n const [response, advisory] = await Promise.all([\n apiPost<ActionsCreateResponse>(\"/api/actions/create\", {\n chatId,\n tempId,\n name,\n description,\n ...(tags ? { tags } : {}),\n ...(priority !== undefined && priority !== null ? { priority } : {}),\n }),\n advisoryHint(name, description, jevTaskJudge),\n ]);\n\n writeJson({\n ...response,\n hints: buildCreateHints({\n advisory,\n name,\n description,\n tempId,\n tags,\n prioritySet: priority !== undefined,\n draftCreateCount: response.data.draftCreateCount ?? 0,\n }),\n });\n } catch (err) {\n failApi(err);\n }\n },\n});\n","/**\n * The one advisory hint `baker actions create` returns about the Task itself: it reads as\n * recurring work (a Scheduled agent), or as work a surface of this chat executes now. A Task is\n * the exception, not the default. The agent names Tasks in the marketer's language, so the\n * decision model reads the name and description in whatever language they are in\n * (docs/decision-model.md). Advisory only: a wrong hint costs one line, a missing one costs a\n * Task that should not exist.\n */\nimport { askJev } from \"../../engine/nodes/local/lib/jev.ts\";\nimport type { ReviewUsage } from \"../../engine/nodes/local/lib/render-review.ts\";\nimport { holdWorkspaceSpend } from \"../canvas/unbilled-spend.ts\";\n\nexport const EXECUTABLE_SURFACES = [\n \"ask-user\",\n \"analysis\",\n \"ads-write\",\n \"tag-manager\",\n \"site-tags\",\n \"landing\",\n \"flow\",\n] as const;\nexport type ExecutableSurface = (typeof EXECUTABLE_SURFACES)[number];\n\nexport const SCHEDULED_HINT =\n 'This reads as recurring/scheduled work. If it should run on a cadence or a future date, create a Scheduled agent instead — baker scheduled-agents create --cron \"0 9 * * MON\" (or --run-at, or --trigger for a reaction rather than a clock; guide: `__tooling__/docs/tools/baker/scheduled-agents.md`). Do not capture \"set up a schedule\" as a Work Action.';\n\n// A surface is asked as one or more questions, the highest kept: one judgment per question reads\n// better than one long question listing everything a surface covers.\ntype Surface = { questions: readonly string[]; hint: string };\n\nconst SURFACES: Readonly<Record<ExecutableSurface, Surface>> = {\n \"ask-user\": {\n questions: [\n \"Does `task` say the work cannot go ahead until the client or user gives or confirms one specific value, such as a production domain, an account ID or credentials? Work that is blocked for any other reason is not.\",\n ],\n hint: \"This is a missing input, not blocked work. Ask for it with AskUserQuestion (one question), then do the work in the same turn — filing the Task AND asking the question is the same request twice.\",\n },\n analysis: {\n questions: [\n \"Is the work `task` names itself an investigation: to audit, review, analyse, verify, check, document or research something, where the result is a finding rather than a change?\",\n ],\n hint: \"This names the analysis itself — investigating, auditing and documenting are work you do now, not work you file. Run it in this chat and deliver the finding; a Task is for a fix something genuinely blocks (bar: `__tooling__/docs/tools/baker/actions.md`).\",\n },\n \"ads-write\": {\n // The platform often goes unnamed (\"6 new WhatsApp campaigns\" are Google Ads campaigns).\n questions: [\n \"Is `task` a change to the settings of paid ad campaigns or ad sets: location targeting, ad schedule, audiences or audience signals, bids, tracking URL templates or final URLs?\",\n \"Is `task` setting, applying, raising, lowering or capping the budget of paid ad campaigns or ad sets? Approving a budget is not.\",\n \"Is `task` a change to what paid ads say or show: ad copy, search ad (RSA) headlines or descriptions, display paths, claims in the ads, callouts, sitelinks, structured snippets or other ad extensions?\",\n \"Is `task` a change to the keywords of paid search campaigns: adding keywords, match types or negative keywords? Work that needs another company's permission first is not.\",\n \"Is `task` pausing, launching, enabling, duplicating, pruning, reweighting or restructuring paid ad campaigns, ad sets or ads, or labelling them? Getting a decision or an approval is not.\",\n ],\n hint: \"This is an ad-platform change the write surface covers — stage it now with `baker ads google|meta|linkedin` and it applies at publish (guides: `__tooling__/docs/tools/baker/ads-google.md`, `__tooling__/docs/tools/baker/ads-meta.md`, `__tooling__/docs/tools/baker/ads-linkedin.md`). Staging is not going live.\",\n },\n \"tag-manager\": {\n questions: [\n \"Is `task` a change inside the Google Tag Manager container: its tags, triggers, variables, data layer events, consent settings, GA4 events or conversion measurement? Server-side tagging, or hosting, is not.\",\n ],\n hint: \"This is a change inside the GTM container — `baker tag-manager` stages it now and it applies at publish (guide: `__tooling__/docs/tools/baker/tag-manager.md`). Stage it instead of filing it, and if several container fixes really are blocked, they belong in ONE Task, not one per finding.\",\n },\n \"site-tags\": {\n questions: [\n \"Is `task` installing, configuring or removing a tracking script, pixel or tag on the website pages (a Meta pixel and its Conversions API events, Clarity, Hotjar, a HubSpot tracking code, a LinkedIn Insight tag)? A server-side setup on the company's own domain is not.\",\n ],\n hint: \"This is a tag or script on the site — it goes through the `request_tag_input` approval form in this chat, which also collects any secret values (guide: `__tooling__/docs/tools/baker/tags.md`). Show the form instead of filing a Task.\",\n },\n landing: {\n questions: [\n \"Is `task` building or editing a page of the website or a landing page: its copy, hero, headline, sections or layout? A headline of an ad, or a page only mentioned as the cause of another problem, is not.\",\n ],\n hint: \"This is a page change — build it in this chat with the `/landing` skill. Only file it if something outside the page blocks the work.\",\n },\n flow: {\n questions: [\"Is `task` changing how a form behaves: its steps, branching logic, or the redirect after it is sent?\"],\n hint: \"This is form behaviour — change it in this chat with the `/flow-builder` skill. Only file it if something outside the form blocks the work.\",\n },\n};\n\n// Two shapes of the same answer, the higher kept.\nconst SCHEDULED_QUESTIONS = [\n \"Does `task` ask for work to be done again and again on a schedule (every day, every week, each Monday, monthly)? A month or period that only says what the work is about is not.\",\n \"Does `task` ask to be reminded, or for work to be done, at a later date or moment (before a launch, on a given day)? A month or date that only names the period the work is about is not.\",\n];\n\n/**\n * The bands, measured 2026-10-07 on 74 Task names and descriptions, verbatim from production chats\n * and in five languages (scripts/task-routing-evals, 74/74 on three runs). Recurring or reminder\n * work scored 0.66 or more and one-off work 0.38 or less; the surface that executes a Task 0.59 or\n * more, and Tasks no surface executes (an approval, server-side hosting, a CRM integration) 0.40\n * or less on every surface.\n */\nexport const ROUTING_BANDS = { scheduled: 0.5, surface: 0.5 } as const;\n\n/** The decision model's reading of one Task: the probability it is recurring, and that each surface executes it. */\nexport type TaskReading = { scheduled: number; surfaces: Readonly<Record<ExecutableSurface, number>> };\n\n/** Reads a Task; null when no judgment came back. */\nexport type TaskJudge = (task: string) => Promise<TaskReading | null>;\n\n/** The decision model as the judge: one Noul per question, all in one request. */\nexport const jevTaskJudge: TaskJudge = async (task) => {\n const groups: ReadonlyArray<readonly string[]> = [\n SCHEDULED_QUESTIONS,\n ...EXECUTABLE_SURFACES.map((s) => SURFACES[s].questions),\n ];\n const spent: ReviewUsage[] = [];\n const answers = await askJev(\n groups.flat().map((question) => ({ instructions: { task, question } })),\n (usage) => spent.push(usage),\n );\n await holdWorkspaceSpend(spent);\n if (answers === null) return null;\n let next = 0;\n const [scheduled = 0, ...surfaces] = groups.map((group) => Math.max(...group.map(() => answers[next++] ?? 0)));\n return {\n scheduled,\n surfaces: Object.fromEntries(EXECUTABLE_SURFACES.map((s, i) => [s, surfaces[i] ?? 0])) as Record<\n ExecutableSurface,\n number\n >,\n };\n};\n\nexport type AdvisoryHint =\n | { kind: \"scheduled\"; hint: string }\n | { kind: \"executable\"; surface: ExecutableSurface; hint: string };\n\n/**\n * One advisory hint, never two. A recurring GTM review is both; the scheduled redirect is the more\n * specific instruction, and two hints would tell the agent to do different things with one Task.\n * Pure.\n */\nexport function hintFor(reading: TaskReading): AdvisoryHint | null {\n if (reading.scheduled >= ROUTING_BANDS.scheduled) return { kind: \"scheduled\", hint: SCHEDULED_HINT };\n // A missing input beats the surface next to it: asking and then doing is one turn.\n if (reading.surfaces[\"ask-user\"] >= ROUTING_BANDS.surface) {\n return { kind: \"executable\", surface: \"ask-user\", hint: SURFACES[\"ask-user\"].hint };\n }\n let best: { surface: ExecutableSurface; p: number } | null = null;\n for (const surface of EXECUTABLE_SURFACES) {\n const p = reading.surfaces[surface];\n if (p >= ROUTING_BANDS.surface && (best === null || p > best.p)) best = { surface, p };\n }\n return best ? { kind: \"executable\", surface: best.surface, hint: SURFACES[best.surface].hint } : null;\n}\n\n/** The Task as the decision model reads it: its name, then its description. */\nexport function taskText(name: string, description: string): string {\n return description.trim() ? `${name.trim()}\\n\\n${description.trim()}` : name.trim();\n}\n\n/** The advisory hint for a staged Task; none when the decision model gives no judgment. */\nexport async function advisoryHint(name: string, description: string, judge: TaskJudge): Promise<AdvisoryHint | null> {\n const reading = await judge(taskText(name, description)).catch(() => null);\n return reading === null ? null : hintFor(reading);\n}\n\n/** Every hint above points the agent somewhere; a test asserts each referenced doc still exists. */\nexport function executableSurfaceHints(): string[] {\n return EXECUTABLE_SURFACES.map((s) => SURFACES[s].hint);\n}\n"],"mappings":"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","names":[]}
|