@koda-sl/baker-cli 0.447.0-dev.f5788a631 → 0.447.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 +14 -10
- package/dist/account-2ZMZFPIU.js +79 -0
- package/dist/account-F6MHQ64I.js +80 -0
- package/dist/account-writes-ISE4U2FQ.js +66 -0
- package/dist/accounts-RHGN5WMU.js +611 -0
- package/dist/accounts-VINHZRWA.js +77 -0
- package/dist/actions-5F4ZP6M4.js +55 -0
- package/dist/ad-group-writes-UU5NNKSO.js +170 -0
- package/dist/ad-groups-CGFXZNIA.js +68 -0
- package/dist/ad-writes-NALDYWOR.js +174 -0
- package/dist/add-KBPMSK2P.js +104 -0
- package/dist/add-OGH4DZZ5.js +280 -0
- package/dist/ads-56OWZBXZ.js +40 -0
- package/dist/ads-H7GH7A26.js +113 -0
- package/dist/ads-PV7GZXPR.js +77 -0
- package/dist/adsets-H7QT42U6.js +176 -0
- package/dist/advertisers-PM4WPG4N.js +120 -0
- package/dist/advertisers-PM4WPG4N.js.map +1 -0
- package/dist/analytics-5FALU2GL.js +433 -0
- package/dist/analytics-JVZKN735.js +1958 -0
- package/dist/animate-FWWHSYPL.js +480 -0
- package/dist/assign-KLYZ6USE.js +77 -0
- package/dist/audience-size-JHB42DB4.js +94 -0
- package/dist/audiences-JACGRBNN.js +78 -0
- package/dist/audiences-VEKGLWBG.js +268 -0
- package/dist/audit-5XH7WZIM.js +151 -0
- package/dist/autocomplete-7F3PZLEY.js +111 -0
- package/dist/autocomplete-7F3PZLEY.js.map +1 -0
- package/dist/avatars-N4SRNQI7.js +38 -0
- package/dist/bid-pricing-VYLVGU26.js +99 -0
- package/dist/brand-ASBS2HZM.js +22 -0
- package/dist/brief-JSZKDPGU.js +477 -0
- package/dist/brief-JSZKDPGU.js.map +1 -0
- package/dist/campaign-groups-ATE2DE4V.js +95 -0
- package/dist/campaign-writes-ETT57KLQ.js +165 -0
- package/dist/campaign-writes-SX52CJYW.js +170 -0
- package/dist/campaigns-FGBAS6AZ.js +107 -0
- package/dist/campaigns-J6VZBIV6.js +109 -0
- package/dist/campaigns-WBEG5QA4.js +110 -0
- package/dist/campaigns-X3DPCCSN.js +76 -0
- package/dist/canvas-K7IN7HLO.js +46 -0
- package/dist/capabilities-RDAERPYY.js +144 -0
- package/dist/catalog-MENVHL5U.js +65 -0
- package/dist/catalog-MENVHL5U.js.map +1 -0
- package/dist/catalogs-G3YEVG6S.js +128 -0
- package/dist/changes-TP7ZZHB3.js +135 -0
- package/dist/chatgpt-QNUN63YS.js +47 -0
- package/dist/chats-YIAQGQ3X.js +262 -0
- package/dist/chunk-2GK33EJV.js +382 -0
- package/dist/chunk-35XWJEWH.js +274 -0
- package/dist/chunk-3CWL2LY4.js +206 -0
- package/dist/chunk-3CWL2LY4.js.map +1 -0
- package/dist/chunk-4NBVGARW.js +1079 -0
- package/dist/chunk-5R5ADJ47.js +2880 -0
- package/dist/chunk-5R5ADJ47.js.map +1 -0
- package/dist/chunk-65RIB7A6.js +592 -0
- package/dist/chunk-6DB2B3GF.js +175 -0
- package/dist/chunk-7SDFKGQ4.js +363 -0
- package/dist/chunk-ACANMASG.js +19 -0
- package/dist/chunk-ALTBBAYU.js +96 -0
- package/dist/chunk-ANCSKUWI.js +433 -0
- package/dist/chunk-AWMFUGVX.js +160 -0
- package/dist/chunk-AWMFUGVX.js.map +1 -0
- package/dist/chunk-BA7FDXQC.js +197 -0
- package/dist/chunk-BNCW67EM.js +534 -0
- package/dist/chunk-BSC33FLJ.js +217 -0
- package/dist/chunk-CHSNHVYF.js +3182 -0
- package/dist/chunk-CHSNHVYF.js.map +1 -0
- package/dist/chunk-DKGTQSLR.js +310 -0
- package/dist/chunk-DR34ZTWD.js +207 -0
- package/dist/chunk-E4MDJBLO.js +163 -0
- package/dist/chunk-EH4C4CZK.js +455 -0
- package/dist/chunk-FXED3VZK.js +174 -0
- package/dist/chunk-G7UTTEBS.js +337 -0
- package/dist/chunk-GATKK4RJ.js +440 -0
- package/dist/chunk-GATKK4RJ.js.map +1 -0
- package/dist/chunk-GIJT3A5U.js +166 -0
- package/dist/chunk-GX6VAHY7.js +830 -0
- package/dist/chunk-HIPDMQZ6.js +136 -0
- package/dist/chunk-HQSCJYZO.js +26 -0
- package/dist/chunk-HZ5DR5MX.js +51 -0
- package/dist/chunk-I4NEHDSD.js +813 -0
- package/dist/chunk-I4NEHDSD.js.map +1 -0
- package/dist/chunk-IM52NHGL.js +390 -0
- package/dist/chunk-JF47LEPU.js +5163 -0
- package/dist/chunk-JF47LEPU.js.map +1 -0
- package/dist/chunk-K3PN7TN5.js +84 -0
- package/dist/chunk-KBP7WJQB.js +446 -0
- package/dist/chunk-KBP7WJQB.js.map +1 -0
- package/dist/chunk-KLBTXETO.js +23992 -0
- package/dist/chunk-KLBTXETO.js.map +1 -0
- package/dist/chunk-KNWHUMVZ.js +4381 -0
- package/dist/chunk-KNWHUMVZ.js.map +1 -0
- package/dist/chunk-KQTYTCKQ.js +98 -0
- package/dist/chunk-LIQ4SQ2T.js +150 -0
- package/dist/chunk-LW4VSTL5.js +304 -0
- package/dist/chunk-LW4VSTL5.js.map +1 -0
- package/dist/chunk-MADAAZZV.js +169 -0
- package/dist/chunk-MLU6STIN.js +66 -0
- package/dist/chunk-NDXBU22S.js +6145 -0
- package/dist/chunk-NDXBU22S.js.map +1 -0
- package/dist/chunk-NE4F3FHN.js +1854 -0
- package/dist/chunk-NE4F3FHN.js.map +1 -0
- package/dist/chunk-OTFHEHIU.js +1706 -0
- package/dist/chunk-OTFHEHIU.js.map +1 -0
- package/dist/chunk-PDTB5EX6.js +57 -0
- package/dist/chunk-SB3GZFCV.js +622 -0
- package/dist/chunk-T3BDNJIX.js +494 -0
- package/dist/chunk-TEINLN64.js +649 -0
- package/dist/chunk-TEINLN64.js.map +1 -0
- package/dist/chunk-TIOQ7ZFQ.js +496 -0
- package/dist/chunk-U3HAMW5W.js +133 -0
- package/dist/chunk-U6SYRIOB.js +486 -0
- package/dist/chunk-UC6BWM5J.js +159 -0
- package/dist/chunk-ULJ5RFOV.js +76 -0
- package/dist/chunk-VAISMQQB.js +346 -0
- package/dist/chunk-VB6WJJR3.js +1830 -0
- package/dist/chunk-VB6WJJR3.js.map +1 -0
- package/dist/chunk-VDHQJ6HD.js +23 -0
- package/dist/chunk-VMDAXFRI.js +111 -0
- package/dist/chunk-WNFIJAUO.js +98 -0
- package/dist/chunk-WNFIJAUO.js.map +1 -0
- package/dist/chunk-XCM6XWOB.js +417 -0
- package/dist/chunk-XMD4SHFI.js +60 -0
- package/dist/chunk-Y6QAJNKP.js +1411 -0
- package/dist/chunk-YBP7O5P4.js +103 -0
- package/dist/chunk-YC2TQ3VC.js +297 -0
- package/dist/chunk-YPZYOJP6.js +6664 -0
- package/dist/chunk-YPZYOJP6.js.map +1 -0
- package/dist/chunk-ZPU3WDVK.js +92 -0
- package/dist/claim-V4F5GZJK.js +197 -0
- package/dist/cli.js +29 -29
- package/dist/companies-NJGJ7XNN.js +195 -0
- package/dist/complete-MGNF5OAK.js +81 -0
- package/dist/connect-PJOTRTT4.js +36 -0
- package/dist/conversation-4DM26FRD.js +93 -0
- package/dist/conversion-report-N4HANYOB.js +125 -0
- package/dist/conversion-upload-command-TZTHU2CD.js +438 -0
- package/dist/conversion-writes-LW4HQKK5.js +120 -0
- package/dist/conversions-JGECVZSY.js +135 -0
- package/dist/conversions-TS723AZV.js +76 -0
- package/dist/countries-ESAKTQAE.js +82 -0
- package/dist/create-DSGQFBI7.js +207 -0
- package/dist/create-I2KVDTCQ.js +59 -0
- package/dist/create-SBQWVLXG.js +130 -0
- package/dist/create-WOHPIGBK.js +235 -0
- package/dist/creatives-4JGVZQGC.js +182 -0
- package/dist/creatives-DWO5KEQC.js +51 -0
- package/dist/creatives-PSWCNY7U.js +87 -0
- package/dist/credentials-UULYCN2L.js +1055 -0
- package/dist/credentials-UULYCN2L.js.map +1 -0
- package/dist/critique-NGMZK5LX.js +213 -0
- package/dist/critique-NGMZK5LX.js.map +1 -0
- package/dist/critique-TIZJ5GFM.js +1449 -0
- package/dist/crm-2WAR565U.js +224 -0
- package/dist/crm-VDXUO2YU.js +318 -0
- package/dist/currency-XCGKQ7FE.js +88 -0
- package/dist/custom-conversions-6P555U2K.js +125 -0
- package/dist/customers-ATENMXDO.js +56 -0
- package/dist/delete-AVMZYNVT.js +54 -0
- package/dist/delete-H744GNS4.js +63 -0
- package/dist/delete-OEYPFATY.js +66 -0
- package/dist/demographics-M5LJF3RZ.js +138 -0
- package/dist/discard-72I6SM7G.js +66 -0
- package/dist/discover-BJPZNXUQ.js +172 -0
- package/dist/domain-R4EIZD2W.js +98 -0
- package/dist/draft-34C3F5U4.js +217 -0
- package/dist/draft-BBFJNZ5X.js +328 -0
- package/dist/draft-BV2QRPZ4.js +107 -0
- package/dist/draft-THPZFASM.js +281 -0
- package/dist/draft-YYYRWF7M.js +306 -0
- package/dist/engine/index.d.ts +0 -12
- package/dist/engine/index.js +6 -7
- package/dist/facets-F2H52MS4.js +114 -0
- package/dist/feedback-IQKKT4MC.js +66 -0
- package/dist/feedback-IQKKT4MC.js.map +1 -0
- package/dist/feedback-record-UZV4Y7UD.js +175 -0
- package/dist/feedback-record-UZV4Y7UD.js.map +1 -0
- package/dist/fetch-ZUAZPLAE.js +176 -0
- package/dist/fetch-ZUAZPLAE.js.map +1 -0
- package/dist/fit-2CA4JH7N.js +45 -0
- package/dist/flows-CWXCXEUD.js +244 -0
- package/dist/follow-FN7LV3WV.js +82 -0
- package/dist/follow-competitors-MKXFHLXB.js +131 -0
- package/dist/fonts-F2XUCIIW.js +34 -0
- package/dist/forecast-IDKJYM2B.js +104 -0
- package/dist/funnel-RLGQGYKO.js +837 -0
- package/dist/generate-MMBYB44G.js +262 -0
- package/dist/get-C6UQ22HH.js +54 -0
- package/dist/get-EEUR6SAW.js +78 -0
- package/dist/google-35GDU3G3.js +1872 -0
- package/dist/google-35GDU3G3.js.map +1 -0
- package/dist/google-ads-Q37I2D5P.js +195 -0
- package/dist/google-ads-Q37I2D5P.js.map +1 -0
- package/dist/history-4II5QA4B.js +133 -0
- package/dist/history-DBIEYQHY.js +67 -0
- package/dist/hubspot-TTITJFBO.js +779 -0
- package/dist/ideas-V4Q6JDKV.js +32 -0
- package/dist/images-SP5REF6E.js +90 -0
- package/dist/ingest-574GIFAR.js +107 -0
- package/dist/ingest-IC4T76W6.js +23 -0
- package/dist/insights-ZIU6FJMS.js +122 -0
- package/dist/inspect-ATHYY6A2.js +189 -0
- package/dist/inspiration-P265QJ2H.js +53 -0
- package/dist/intent-E3UIVZBN.js +95 -0
- package/dist/keyword-gap-BG6M665A.js +130 -0
- package/dist/keyword-metrics-J4UPUDN7.js +197 -0
- package/dist/keywords-for-site-MWADFEO2.js +128 -0
- package/dist/keywords-for-site-MWADFEO2.js.map +1 -0
- package/dist/landing-R6DN7XLK.js +28 -0
- package/dist/languages-HORKPDNH.js +40 -0
- package/dist/languages-JSGWCC7Z.js +55 -0
- package/dist/leads-7EVHMNUF.js +293 -0
- package/dist/leads-JM6HUERX.js +90 -0
- package/dist/learn-LGS2F5TR.js +203 -0
- package/dist/learn-LGS2F5TR.js.map +1 -0
- package/dist/lighthouse-6ZC45E53.js +75 -0
- package/dist/line-item-writes-KUYEXSIH.js +208 -0
- package/dist/line-items-GIWLP3FL.js +103 -0
- package/dist/link-PVM7XJQI.js +64 -0
- package/dist/linkedin-WX54EAX6.js +1008 -0
- package/dist/list-4ZKQZBCL.js +151 -0
- package/dist/list-MCEFXC6L.js +63 -0
- package/dist/list-WR7QYTON.js +303 -0
- package/dist/locations-74TPQWAT.js +67 -0
- package/dist/locations-J4G5RNPH.js +40 -0
- package/dist/log-U6IWZGOF.js +92 -0
- package/dist/make-RXFHEGUI.js +593 -0
- package/dist/make-RXFHEGUI.js.map +1 -0
- package/dist/map-TWL7T4KP.js +404 -0
- package/dist/mcp-HVAVJGGS.js +476 -0
- package/dist/media-M7E6V2XU.js +15 -0
- package/dist/media-sources-JWGO23BZ.js +32 -0
- package/dist/members-5FAW4YE7.js +44 -0
- package/dist/meta-EZ4SY25M.js +69 -0
- package/dist/metrics-SQDJ5NQO.js +152 -0
- package/dist/models-7U3GRYHF.js +155 -0
- package/dist/normalize-GW4GZNVY.js +138 -0
- package/dist/options-NSUCENLU.js +121 -0
- package/dist/performance-FGCDWHMC.js +24 -0
- package/dist/pixels-45A55MOP.js +60 -0
- package/dist/promoted-tweet-writes-BPWTDESL.js +180 -0
- package/dist/promoted-tweets-OS3NHYVE.js +119 -0
- package/dist/publish-SXZEWBVJ.js +322 -0
- package/dist/query-IEZRY6HV.js +1341 -0
- package/dist/reddit-TF6K37SB.js +26 -0
- package/dist/refresh-APVDWXRZ.js +94 -0
- package/dist/release-32SEJU4L.js +60 -0
- package/dist/relevant-pages-OWMNUCP7.js +99 -0
- package/dist/remove-U64GTHLQ.js +50 -0
- package/dist/reopen-5VS233SF.js +63 -0
- package/dist/rerun-7Z45QOOO.js +85 -0
- package/dist/rerun-7Z45QOOO.js.map +1 -0
- package/dist/research-O7CJV5IS.js +62 -0
- package/dist/research-O7CJV5IS.js.map +1 -0
- package/dist/research-QYSQ6LW4.js +262 -0
- package/dist/reset-22FC7BXQ.js +54 -0
- package/dist/reset-47B5VPT4.js +54 -0
- package/dist/resolve-7KQGVTQT.js +121 -0
- package/dist/retry-J5UVLS72.js +62 -0
- package/dist/retry-UJ5UF4BM.js +60 -0
- package/dist/run-SI4FA32F.js +65 -0
- package/dist/run-TFLFBQU2.js +60 -0
- package/dist/scaffold-ad-SEXNE2K6.js +1549 -0
- package/dist/scaffold-ad-SEXNE2K6.js.map +1 -0
- package/dist/scaffold-static-ad-VBOL6CLN.js +966 -0
- package/dist/scaffold-static-ad-VBOL6CLN.js.map +1 -0
- package/dist/scaffold-video-Z37MIBDI.js +873 -0
- package/dist/scaffold-video-Z37MIBDI.js.map +1 -0
- package/dist/schedule-52ZM4KRQ.js +61 -0
- package/dist/scheduled-agents-PCWCQAKP.js +49 -0
- package/dist/schema-FY6ORDXZ.js +129 -0
- package/dist/search-NS7XNRZC.js +174 -0
- package/dist/search-UO5KJTYS.js +26 -0
- package/dist/select-4XCYVV2G.js +94 -0
- package/dist/select-4XCYVV2G.js.map +1 -0
- package/dist/set-prompt-TRJBYA3D.js +186 -0
- package/dist/set-prompt-TRJBYA3D.js.map +1 -0
- package/dist/setup-links-V3URI7DL.js +141 -0
- package/dist/site-WIQ7SSU3.js +177 -0
- package/dist/sources-DWJXOLEH.js +421 -0
- package/dist/sources-L453U5MT.js +30 -0
- package/dist/stale-6OVG6VME.js +63 -0
- package/dist/stale-6OVG6VME.js.map +1 -0
- package/dist/status-WXWU54WR.js +62 -0
- package/dist/studio-C5K3YX3P.js +49 -0
- package/dist/sync-CDZUTGV3.js +54 -0
- package/dist/sync-definition-BAJQUBE3.js +53 -0
- package/dist/tag-manager-DYZUOIAS.js +43 -0
- package/dist/tags-6RY23XOG.js +20 -0
- package/dist/tags-BHFQWNPL.js +224 -0
- package/dist/tags-SG3NVC3J.js +26 -0
- package/dist/tags-VN5HTL35.js +20 -0
- package/dist/tags-WR6PDIDR.js +20 -0
- package/dist/targeting-criteria-5EXP2NXF.js +113 -0
- package/dist/targets-WUVEJPSD.js +102 -0
- package/dist/templates-LOJQX2NG.js +178 -0
- package/dist/testimonials-6M5DXORT.js +32 -0
- package/dist/top-companies-E2OMMPSV.js +108 -0
- package/dist/translate-AW4CUKDA.js +598 -0
- package/dist/translate-AW4CUKDA.js.map +1 -0
- package/dist/triggers-MRXIDCSN.js +141 -0
- package/dist/unlink-HNL747YM.js +67 -0
- package/dist/unstage-OL2JDCLK.js +84 -0
- package/dist/update-4KGIT4BF.js +142 -0
- package/dist/update-JPBUF7M2.js +98 -0
- package/dist/update-RTTC3SAK.js +155 -0
- package/dist/update-YNNRX5B2.js +63 -0
- package/dist/upload-UIXPCSXJ.js +126 -0
- package/dist/url-options-GGXAL3J4.js +127 -0
- package/dist/url-params-K47CE7Y5.js +98 -0
- package/dist/validate-TD2BY4VE.js +89 -0
- package/dist/validate-TD2BY4VE.js.map +1 -0
- package/dist/videos-BP3BKNTY.js +39 -0
- package/dist/viewer-check-HFRUJ4ZU.js +69 -0
- package/dist/web-RPSGFN4U.js +140 -0
- package/dist/web-RPSGFN4U.js.map +1 -0
- package/dist/winning-ads-WUENRDVJ.js +62 -0
- package/dist/write-commands-4WARNR2T.js +1015 -0
- package/dist/write-commands-TAYGTJEZ.js +737 -0
- package/dist/x-VZCELH3P.js +47 -0
- package/package.json +1 -1
- package/dist/account-4H7QVBRK.js +0 -80
- package/dist/account-PCEZQUK7.js +0 -79
- package/dist/account-writes-AK42HGRM.js +0 -66
- package/dist/accounts-5AXLYU7P.js +0 -77
- package/dist/accounts-OSXDZZLY.js +0 -611
- package/dist/actions-HM4VVTGW.js +0 -55
- package/dist/ad-group-writes-QQS4223F.js +0 -170
- package/dist/ad-groups-WGPDPUI2.js +0 -68
- package/dist/ad-writes-XE2IE4DS.js +0 -174
- package/dist/add-4J2EF54O.js +0 -104
- package/dist/add-VZAY57M4.js +0 -280
- package/dist/ads-6UEDYT3O.js +0 -113
- package/dist/ads-BCOSQALY.js +0 -77
- package/dist/ads-NUME2UXH.js +0 -40
- package/dist/adsets-Q5DWGANV.js +0 -176
- package/dist/advertisers-WSNHNCBQ.js +0 -116
- package/dist/advertisers-WSNHNCBQ.js.map +0 -1
- package/dist/analytics-PHU7H5VY.js +0 -433
- package/dist/analytics-QTR2ZITZ.js +0 -1958
- package/dist/animate-3Z7HXOLE.js +0 -480
- package/dist/assign-IIAVNATI.js +0 -77
- package/dist/audience-size-2L7XMYJL.js +0 -94
- package/dist/audiences-AMRFZRZ7.js +0 -78
- package/dist/audiences-TGD5US2M.js +0 -268
- package/dist/audit-ZCUFJLUG.js +0 -151
- package/dist/autocomplete-6PYFCOMX.js +0 -107
- package/dist/autocomplete-6PYFCOMX.js.map +0 -1
- package/dist/avatars-OEK3FYKK.js +0 -38
- package/dist/bid-pricing-FDW3IY6G.js +0 -99
- package/dist/brand-OXYFSNA5.js +0 -22
- package/dist/brief-TBSXPEXI.js +0 -478
- package/dist/brief-TBSXPEXI.js.map +0 -1
- package/dist/campaign-groups-5GCFQT2W.js +0 -95
- package/dist/campaign-writes-3SJQSCUK.js +0 -165
- package/dist/campaign-writes-SXLZFYF6.js +0 -170
- package/dist/campaigns-7QDDWZ76.js +0 -107
- package/dist/campaigns-D6B6Z67Y.js +0 -110
- package/dist/campaigns-SYEOFKFV.js +0 -109
- package/dist/campaigns-YS3OGQXO.js +0 -76
- package/dist/canvas-B6DPRQGN.js +0 -46
- package/dist/capabilities-GVHPHH2G.js +0 -144
- package/dist/catalog-TNNG66MH.js +0 -66
- package/dist/catalog-TNNG66MH.js.map +0 -1
- package/dist/catalogs-BRXEDE56.js +0 -128
- package/dist/changes-6QBJMGJC.js +0 -135
- package/dist/chatgpt-7W75X3ER.js +0 -47
- package/dist/chats-54CWM7DL.js +0 -262
- package/dist/chunk-2SCPDSFN.js +0 -150
- package/dist/chunk-3X3446TG.js +0 -169
- package/dist/chunk-4SJDDGPV.js +0 -1411
- package/dist/chunk-4SNOWJV7.js +0 -103
- package/dist/chunk-5EEDEVOR.js +0 -486
- package/dist/chunk-5VC6IK7B.js +0 -390
- package/dist/chunk-654U6NU6.js +0 -534
- package/dist/chunk-6HJAHLLA.js +0 -6086
- package/dist/chunk-6HJAHLLA.js.map +0 -1
- package/dist/chunk-6TCDQSM7.js +0 -111
- package/dist/chunk-6YYEBLYI.js +0 -92
- package/dist/chunk-7FVWIZHM.js +0 -382
- package/dist/chunk-7J6EHOH6.js +0 -274
- package/dist/chunk-7JUUKYKG.js +0 -57
- package/dist/chunk-ACFWVULZ.js +0 -304
- package/dist/chunk-ACFWVULZ.js.map +0 -1
- package/dist/chunk-AO5UQQLJ.js +0 -197
- package/dist/chunk-CKU4WYTF.js +0 -175
- package/dist/chunk-CLMM6P6B.js +0 -1751
- package/dist/chunk-CLMM6P6B.js.map +0 -1
- package/dist/chunk-DE6ANJLU.js +0 -310
- package/dist/chunk-DZSIUEGH.js +0 -136
- package/dist/chunk-E5IFTZJ3.js +0 -622
- package/dist/chunk-EAHP7L2R.js +0 -363
- package/dist/chunk-EPMN4BK7.js +0 -217
- package/dist/chunk-EVYXTT7V.js +0 -417
- package/dist/chunk-F46KAIBS.js +0 -159
- package/dist/chunk-FGH4Z5K5.js +0 -433
- package/dist/chunk-FTWJFDIN.js +0 -23992
- package/dist/chunk-FTWJFDIN.js.map +0 -1
- package/dist/chunk-FYQPB2SS.js +0 -207
- package/dist/chunk-GTK46DE3.js +0 -346
- package/dist/chunk-H2QNBOPS.js +0 -819
- package/dist/chunk-H2QNBOPS.js.map +0 -1
- package/dist/chunk-HDWKLFF5.js +0 -96
- package/dist/chunk-HO3IUJ4K.js +0 -70
- package/dist/chunk-HO3IUJ4K.js.map +0 -1
- package/dist/chunk-HRYOZUSK.js +0 -1711
- package/dist/chunk-HRYOZUSK.js.map +0 -1
- package/dist/chunk-HYCIBVDW.js +0 -98
- package/dist/chunk-HYUUH4BE.js +0 -3149
- package/dist/chunk-HYUUH4BE.js.map +0 -1
- package/dist/chunk-IH4UQ2OK.js +0 -6668
- package/dist/chunk-IH4UQ2OK.js.map +0 -1
- package/dist/chunk-IKYNOT57.js +0 -131
- package/dist/chunk-IKYNOT57.js.map +0 -1
- package/dist/chunk-J5IU4OX2.js +0 -297
- package/dist/chunk-KMEMA7AZ.js +0 -496
- package/dist/chunk-KV5BCSUR.js +0 -337
- package/dist/chunk-KWAOTV7F.js +0 -830
- package/dist/chunk-L27H2R2N.js +0 -174
- package/dist/chunk-NK2UFFVH.js +0 -19
- package/dist/chunk-NSA6HRG6.js +0 -60
- package/dist/chunk-NTPXZU3V.js +0 -163
- package/dist/chunk-OAQPHP6V.js +0 -592
- package/dist/chunk-OBDAYP2P.js +0 -3155
- package/dist/chunk-OBDAYP2P.js.map +0 -1
- package/dist/chunk-PIWMNKWI.js +0 -164
- package/dist/chunk-PIWMNKWI.js.map +0 -1
- package/dist/chunk-RB5DB3WN.js +0 -1079
- package/dist/chunk-RCQJHKK5.js +0 -4374
- package/dist/chunk-RCQJHKK5.js.map +0 -1
- package/dist/chunk-SKT3SAHG.js +0 -133
- package/dist/chunk-T4DD5YMP.js +0 -166
- package/dist/chunk-TBEUMOEL.js +0 -95
- package/dist/chunk-TBEUMOEL.js.map +0 -1
- package/dist/chunk-V2X3KK52.js +0 -420
- package/dist/chunk-V2X3KK52.js.map +0 -1
- package/dist/chunk-V5WSJP5A.js +0 -51
- package/dist/chunk-VJZHVOA4.js +0 -509
- package/dist/chunk-VJZHVOA4.js.map +0 -1
- package/dist/chunk-WRIC2RPQ.js +0 -23
- package/dist/chunk-WTOYCUKH.js +0 -84
- package/dist/chunk-WYCVJIHD.js +0 -638
- package/dist/chunk-WYCVJIHD.js.map +0 -1
- package/dist/chunk-XDNEG2H6.js +0 -5189
- package/dist/chunk-XDNEG2H6.js.map +0 -1
- package/dist/chunk-XG3XCHN6.js +0 -26
- package/dist/chunk-XML7AJM3.js +0 -1854
- package/dist/chunk-XML7AJM3.js.map +0 -1
- package/dist/chunk-XV6XCFF7.js +0 -494
- package/dist/chunk-YUPRCOEN.js +0 -455
- package/dist/chunk-ZNBDKK4Y.js +0 -76
- package/dist/chunk-ZZQXVYUY.js +0 -66
- package/dist/claim-CIASHKMC.js +0 -197
- package/dist/companies-ECVMO24S.js +0 -195
- package/dist/complete-32CPBFIG.js +0 -81
- package/dist/connect-OJSOM6PY.js +0 -36
- package/dist/conversation-7FHN5ESN.js +0 -93
- package/dist/conversion-report-XQBJ6LG4.js +0 -125
- package/dist/conversion-upload-command-BBUXLFT3.js +0 -438
- package/dist/conversion-writes-UBCVXP2E.js +0 -120
- package/dist/conversions-7YJDNZ7Y.js +0 -135
- package/dist/conversions-D236RTUK.js +0 -76
- package/dist/countries-FYHM3IMJ.js +0 -82
- package/dist/create-2TBDXHAM.js +0 -130
- package/dist/create-FE5QLW7V.js +0 -207
- package/dist/create-OYT76OMJ.js +0 -235
- package/dist/create-ZGRL7YCV.js +0 -59
- package/dist/creatives-5MUTX4DQ.js +0 -51
- package/dist/creatives-IUB57I3T.js +0 -182
- package/dist/creatives-UEPLNCPN.js +0 -87
- package/dist/credentials-AETHKP5T.js +0 -1055
- package/dist/credentials-AETHKP5T.js.map +0 -1
- package/dist/critique-C53EJDPA.js +0 -214
- package/dist/critique-C53EJDPA.js.map +0 -1
- package/dist/critique-T7HJ42D4.js +0 -1449
- package/dist/crm-JP4UOPMN.js +0 -318
- package/dist/crm-KH6XX2TT.js +0 -224
- package/dist/currency-DJDVIR3C.js +0 -88
- package/dist/custom-conversions-2VLJGPRV.js +0 -125
- package/dist/customers-7I7UY5PS.js +0 -56
- package/dist/delete-6IOUDEWY.js +0 -54
- package/dist/delete-ODFKNHAI.js +0 -63
- package/dist/delete-RAETUVO2.js +0 -66
- package/dist/demographics-2FTDKPBD.js +0 -138
- package/dist/discard-ZX5TLFYH.js +0 -66
- package/dist/discover-M3ZKKFEL.js +0 -172
- package/dist/domain-TH7KIC2T.js +0 -98
- package/dist/draft-CRE2Y24G.js +0 -328
- package/dist/draft-MNFJ4G3C.js +0 -281
- package/dist/draft-S2FSQOJN.js +0 -217
- package/dist/draft-SH25PKST.js +0 -107
- package/dist/draft-YHUIFDDR.js +0 -306
- package/dist/facets-6B2U4BSM.js +0 -114
- package/dist/feedback-QGSAJJVC.js +0 -66
- package/dist/feedback-QGSAJJVC.js.map +0 -1
- package/dist/feedback-record-NUAJ6UBL.js +0 -176
- package/dist/feedback-record-NUAJ6UBL.js.map +0 -1
- package/dist/fetch-UTTJAOLC.js +0 -171
- package/dist/fetch-UTTJAOLC.js.map +0 -1
- package/dist/fit-FJ5CLQS4.js +0 -43
- package/dist/flows-OGGSWWGT.js +0 -244
- package/dist/follow-DUIEGDVK.js +0 -82
- package/dist/follow-competitors-IT5ZVJPE.js +0 -131
- package/dist/fonts-GCJRLEGD.js +0 -34
- package/dist/forecast-2AGTFMXH.js +0 -104
- package/dist/funnel-7U55LNJ4.js +0 -837
- package/dist/generate-DMQUS665.js +0 -262
- package/dist/get-IRJIHOQK.js +0 -78
- package/dist/get-N7FR6NFX.js +0 -54
- package/dist/google-NYRI2NDZ.js +0 -1872
- package/dist/google-NYRI2NDZ.js.map +0 -1
- package/dist/history-PSNJAUTW.js +0 -133
- package/dist/history-Q3QCT64S.js +0 -67
- package/dist/hubspot-2NHL47R2.js +0 -779
- package/dist/ideas-22MRXKT7.js +0 -32
- package/dist/images-LXFWEON7.js +0 -90
- package/dist/ingest-W7VEDEYD.js +0 -107
- package/dist/ingest-ZN3DEZHY.js +0 -23
- package/dist/insights-LNAXV2CG.js +0 -122
- package/dist/inspect-3LBIHMMP.js +0 -189
- package/dist/inspiration-I4MMKAWA.js +0 -53
- package/dist/intent-ICKFJRT2.js +0 -95
- package/dist/keyword-gap-NGPH32FN.js +0 -130
- package/dist/keyword-metrics-PZXFB4NG.js +0 -197
- package/dist/keywords-for-site-RH47P4GJ.js +0 -124
- package/dist/keywords-for-site-RH47P4GJ.js.map +0 -1
- package/dist/landing-D7QS42GK.js +0 -28
- package/dist/languages-JDYL2N5F.js +0 -40
- package/dist/languages-JMVNOHMG.js +0 -55
- package/dist/leads-ARUWPHBM.js +0 -293
- package/dist/leads-E22XFSX2.js +0 -90
- package/dist/learn-Y4KIZNRF.js +0 -204
- package/dist/learn-Y4KIZNRF.js.map +0 -1
- package/dist/lighthouse-NQBUCHTW.js +0 -75
- package/dist/line-item-writes-KA5PVKFO.js +0 -208
- package/dist/line-items-3ZFFZCNH.js +0 -103
- package/dist/link-AEU6BV75.js +0 -64
- package/dist/linkedin-WCB2H5NH.js +0 -1008
- package/dist/list-OLX7AI3O.js +0 -63
- package/dist/list-PAMYQS4X.js +0 -151
- package/dist/list-TOUUGHMS.js +0 -303
- package/dist/locations-2NKBJKBT.js +0 -67
- package/dist/locations-S4U6IJIS.js +0 -40
- package/dist/log-UGVWSK7Z.js +0 -92
- package/dist/make-3PZLTEXT.js +0 -516
- package/dist/make-3PZLTEXT.js.map +0 -1
- package/dist/map-BW4CHSIO.js +0 -404
- package/dist/mcp-JOXKA5HY.js +0 -476
- package/dist/media-53DJRC4N.js +0 -15
- package/dist/media-sources-SJZUOMI2.js +0 -32
- package/dist/members-VAX6KAFN.js +0 -44
- package/dist/meta-A7KM6TF5.js +0 -69
- package/dist/metrics-AY4RP54F.js +0 -152
- package/dist/models-5NTC7A5G.js +0 -155
- package/dist/normalize-IVQ7I54Z.js +0 -138
- package/dist/options-V7C6CU6M.js +0 -121
- package/dist/performance-L6RJZPXX.js +0 -24
- package/dist/pixels-TZPF746S.js +0 -60
- package/dist/promoted-tweet-writes-DBATH765.js +0 -180
- package/dist/promoted-tweets-AU3XF3JD.js +0 -119
- package/dist/publish-G6DYVT4S.js +0 -322
- package/dist/query-CPZZNMDY.js +0 -1341
- package/dist/reddit-S2S6C4RT.js +0 -26
- package/dist/refresh-ARJ2SOMY.js +0 -94
- package/dist/release-3WCBAHPO.js +0 -60
- package/dist/relevant-pages-MTMFMBPD.js +0 -99
- package/dist/remove-FUAARCSC.js +0 -50
- package/dist/reopen-PZI5H4X2.js +0 -63
- package/dist/rerun-AUP4XT6T.js +0 -86
- package/dist/rerun-AUP4XT6T.js.map +0 -1
- package/dist/research-SY3QRGOC.js +0 -262
- package/dist/research-TISR736S.js +0 -59
- package/dist/research-TISR736S.js.map +0 -1
- package/dist/reset-E6F5NXOI.js +0 -54
- package/dist/reset-ZWM7DDD7.js +0 -54
- package/dist/resolve-I5R5ELMZ.js +0 -121
- package/dist/retry-7CFZTKWI.js +0 -60
- package/dist/retry-JO3JXXT2.js +0 -62
- package/dist/run-JR6SILHL.js +0 -61
- package/dist/run-UKB647DI.js +0 -65
- package/dist/scaffold-ad-BYGVU7MT.js +0 -1550
- package/dist/scaffold-ad-BYGVU7MT.js.map +0 -1
- package/dist/scaffold-static-ad-U57V5UV3.js +0 -948
- package/dist/scaffold-static-ad-U57V5UV3.js.map +0 -1
- package/dist/scaffold-video-POZTINEV.js +0 -874
- package/dist/scaffold-video-POZTINEV.js.map +0 -1
- package/dist/schedule-SOAHLZZF.js +0 -61
- package/dist/scheduled-agents-K5WU7SVJ.js +0 -49
- package/dist/schema-SOPL6GJP.js +0 -129
- package/dist/search-5VUDFOHI.js +0 -174
- package/dist/search-XUIVHGAY.js +0 -26
- package/dist/select-T36UH4HL.js +0 -95
- package/dist/select-T36UH4HL.js.map +0 -1
- package/dist/set-prompt-Y4X7GV2Q.js +0 -187
- package/dist/set-prompt-Y4X7GV2Q.js.map +0 -1
- package/dist/setup-links-KFROCISS.js +0 -141
- package/dist/site-MXPKMRQT.js +0 -177
- package/dist/sources-FFHNWVLV.js +0 -30
- package/dist/sources-MLDLMEDT.js +0 -421
- package/dist/stale-UXL4X4AD.js +0 -64
- package/dist/stale-UXL4X4AD.js.map +0 -1
- package/dist/status-M47G5HD4.js +0 -62
- package/dist/studio-HUEBE6DS.js +0 -49
- package/dist/sync-HS7VZJ2H.js +0 -54
- package/dist/sync-definition-PY6REQ4J.js +0 -54
- package/dist/tag-manager-HREEYGVM.js +0 -43
- package/dist/tags-DIXLYB5P.js +0 -224
- package/dist/tags-DYRZTYHD.js +0 -20
- package/dist/tags-MRG56YOE.js +0 -26
- package/dist/tags-WAW6MQAY.js +0 -20
- package/dist/tags-Y4HHJJGE.js +0 -20
- package/dist/targeting-criteria-5UUESFWC.js +0 -113
- package/dist/targets-COZPVG52.js +0 -102
- package/dist/templates-75VFYZ3E.js +0 -178
- package/dist/testimonials-WJBRWLNW.js +0 -32
- package/dist/top-companies-C2R4FG6H.js +0 -108
- package/dist/translate-RYAJAFV7.js +0 -599
- package/dist/translate-RYAJAFV7.js.map +0 -1
- package/dist/triggers-5UHVJPBV.js +0 -141
- package/dist/unlink-PLOOAGM3.js +0 -67
- package/dist/unstage-JIIOTBTF.js +0 -84
- package/dist/update-G6R5ZHUI.js +0 -63
- package/dist/update-QYM6U7LL.js +0 -142
- package/dist/update-RCP7F5L5.js +0 -98
- package/dist/update-RGVNTA5X.js +0 -155
- package/dist/upload-EEJ34Q3Y.js +0 -126
- package/dist/url-options-QEWKRKZ3.js +0 -127
- package/dist/url-params-2G5M2B3J.js +0 -98
- package/dist/validate-M33VLUG4.js +0 -90
- package/dist/validate-M33VLUG4.js.map +0 -1
- package/dist/videos-FVVID55J.js +0 -39
- package/dist/viewer-check-2Q3WHSEL.js +0 -70
- package/dist/web-WUGLSULO.js +0 -135
- package/dist/web-WUGLSULO.js.map +0 -1
- package/dist/winning-ads-OSRFHVLV.js +0 -62
- package/dist/write-commands-CLJOD2XF.js +0 -1015
- package/dist/write-commands-CT74VHH6.js +0 -737
- package/dist/x-EBKLJJPJ.js +0 -47
- /package/dist/{account-PCEZQUK7.js.map → account-2ZMZFPIU.js.map} +0 -0
- /package/dist/{account-4H7QVBRK.js.map → account-F6MHQ64I.js.map} +0 -0
- /package/dist/{account-writes-AK42HGRM.js.map → account-writes-ISE4U2FQ.js.map} +0 -0
- /package/dist/{accounts-OSXDZZLY.js.map → accounts-RHGN5WMU.js.map} +0 -0
- /package/dist/{accounts-5AXLYU7P.js.map → accounts-VINHZRWA.js.map} +0 -0
- /package/dist/{actions-HM4VVTGW.js.map → actions-5F4ZP6M4.js.map} +0 -0
- /package/dist/{ad-group-writes-QQS4223F.js.map → ad-group-writes-UU5NNKSO.js.map} +0 -0
- /package/dist/{ad-groups-WGPDPUI2.js.map → ad-groups-CGFXZNIA.js.map} +0 -0
- /package/dist/{ad-writes-XE2IE4DS.js.map → ad-writes-NALDYWOR.js.map} +0 -0
- /package/dist/{add-4J2EF54O.js.map → add-KBPMSK2P.js.map} +0 -0
- /package/dist/{add-VZAY57M4.js.map → add-OGH4DZZ5.js.map} +0 -0
- /package/dist/{ads-NUME2UXH.js.map → ads-56OWZBXZ.js.map} +0 -0
- /package/dist/{ads-6UEDYT3O.js.map → ads-H7GH7A26.js.map} +0 -0
- /package/dist/{ads-BCOSQALY.js.map → ads-PV7GZXPR.js.map} +0 -0
- /package/dist/{adsets-Q5DWGANV.js.map → adsets-H7QT42U6.js.map} +0 -0
- /package/dist/{analytics-PHU7H5VY.js.map → analytics-5FALU2GL.js.map} +0 -0
- /package/dist/{analytics-QTR2ZITZ.js.map → analytics-JVZKN735.js.map} +0 -0
- /package/dist/{animate-3Z7HXOLE.js.map → animate-FWWHSYPL.js.map} +0 -0
- /package/dist/{assign-IIAVNATI.js.map → assign-KLYZ6USE.js.map} +0 -0
- /package/dist/{audience-size-2L7XMYJL.js.map → audience-size-JHB42DB4.js.map} +0 -0
- /package/dist/{audiences-AMRFZRZ7.js.map → audiences-JACGRBNN.js.map} +0 -0
- /package/dist/{audiences-TGD5US2M.js.map → audiences-VEKGLWBG.js.map} +0 -0
- /package/dist/{audit-ZCUFJLUG.js.map → audit-5XH7WZIM.js.map} +0 -0
- /package/dist/{avatars-OEK3FYKK.js.map → avatars-N4SRNQI7.js.map} +0 -0
- /package/dist/{bid-pricing-FDW3IY6G.js.map → bid-pricing-VYLVGU26.js.map} +0 -0
- /package/dist/{brand-OXYFSNA5.js.map → brand-ASBS2HZM.js.map} +0 -0
- /package/dist/{campaign-groups-5GCFQT2W.js.map → campaign-groups-ATE2DE4V.js.map} +0 -0
- /package/dist/{campaign-writes-3SJQSCUK.js.map → campaign-writes-ETT57KLQ.js.map} +0 -0
- /package/dist/{campaign-writes-SXLZFYF6.js.map → campaign-writes-SX52CJYW.js.map} +0 -0
- /package/dist/{campaigns-7QDDWZ76.js.map → campaigns-FGBAS6AZ.js.map} +0 -0
- /package/dist/{campaigns-SYEOFKFV.js.map → campaigns-J6VZBIV6.js.map} +0 -0
- /package/dist/{campaigns-D6B6Z67Y.js.map → campaigns-WBEG5QA4.js.map} +0 -0
- /package/dist/{campaigns-YS3OGQXO.js.map → campaigns-X3DPCCSN.js.map} +0 -0
- /package/dist/{canvas-B6DPRQGN.js.map → canvas-K7IN7HLO.js.map} +0 -0
- /package/dist/{capabilities-GVHPHH2G.js.map → capabilities-RDAERPYY.js.map} +0 -0
- /package/dist/{catalogs-BRXEDE56.js.map → catalogs-G3YEVG6S.js.map} +0 -0
- /package/dist/{changes-6QBJMGJC.js.map → changes-TP7ZZHB3.js.map} +0 -0
- /package/dist/{chatgpt-7W75X3ER.js.map → chatgpt-QNUN63YS.js.map} +0 -0
- /package/dist/{chats-54CWM7DL.js.map → chats-YIAQGQ3X.js.map} +0 -0
- /package/dist/{chunk-7FVWIZHM.js.map → chunk-2GK33EJV.js.map} +0 -0
- /package/dist/{chunk-7J6EHOH6.js.map → chunk-35XWJEWH.js.map} +0 -0
- /package/dist/{chunk-RB5DB3WN.js.map → chunk-4NBVGARW.js.map} +0 -0
- /package/dist/{chunk-OAQPHP6V.js.map → chunk-65RIB7A6.js.map} +0 -0
- /package/dist/{chunk-CKU4WYTF.js.map → chunk-6DB2B3GF.js.map} +0 -0
- /package/dist/{chunk-EAHP7L2R.js.map → chunk-7SDFKGQ4.js.map} +0 -0
- /package/dist/{chunk-NK2UFFVH.js.map → chunk-ACANMASG.js.map} +0 -0
- /package/dist/{chunk-HDWKLFF5.js.map → chunk-ALTBBAYU.js.map} +0 -0
- /package/dist/{chunk-FGH4Z5K5.js.map → chunk-ANCSKUWI.js.map} +0 -0
- /package/dist/{chunk-AO5UQQLJ.js.map → chunk-BA7FDXQC.js.map} +0 -0
- /package/dist/{chunk-654U6NU6.js.map → chunk-BNCW67EM.js.map} +0 -0
- /package/dist/{chunk-EPMN4BK7.js.map → chunk-BSC33FLJ.js.map} +0 -0
- /package/dist/{chunk-DE6ANJLU.js.map → chunk-DKGTQSLR.js.map} +0 -0
- /package/dist/{chunk-FYQPB2SS.js.map → chunk-DR34ZTWD.js.map} +0 -0
- /package/dist/{chunk-NTPXZU3V.js.map → chunk-E4MDJBLO.js.map} +0 -0
- /package/dist/{chunk-YUPRCOEN.js.map → chunk-EH4C4CZK.js.map} +0 -0
- /package/dist/{chunk-L27H2R2N.js.map → chunk-FXED3VZK.js.map} +0 -0
- /package/dist/{chunk-KV5BCSUR.js.map → chunk-G7UTTEBS.js.map} +0 -0
- /package/dist/{chunk-T4DD5YMP.js.map → chunk-GIJT3A5U.js.map} +0 -0
- /package/dist/{chunk-KWAOTV7F.js.map → chunk-GX6VAHY7.js.map} +0 -0
- /package/dist/{chunk-DZSIUEGH.js.map → chunk-HIPDMQZ6.js.map} +0 -0
- /package/dist/{chunk-XG3XCHN6.js.map → chunk-HQSCJYZO.js.map} +0 -0
- /package/dist/{chunk-V5WSJP5A.js.map → chunk-HZ5DR5MX.js.map} +0 -0
- /package/dist/{chunk-5VC6IK7B.js.map → chunk-IM52NHGL.js.map} +0 -0
- /package/dist/{chunk-WTOYCUKH.js.map → chunk-K3PN7TN5.js.map} +0 -0
- /package/dist/{chunk-HYCIBVDW.js.map → chunk-KQTYTCKQ.js.map} +0 -0
- /package/dist/{chunk-2SCPDSFN.js.map → chunk-LIQ4SQ2T.js.map} +0 -0
- /package/dist/{chunk-3X3446TG.js.map → chunk-MADAAZZV.js.map} +0 -0
- /package/dist/{chunk-ZZQXVYUY.js.map → chunk-MLU6STIN.js.map} +0 -0
- /package/dist/{chunk-7JUUKYKG.js.map → chunk-PDTB5EX6.js.map} +0 -0
- /package/dist/{chunk-E5IFTZJ3.js.map → chunk-SB3GZFCV.js.map} +0 -0
- /package/dist/{chunk-XV6XCFF7.js.map → chunk-T3BDNJIX.js.map} +0 -0
- /package/dist/{chunk-KMEMA7AZ.js.map → chunk-TIOQ7ZFQ.js.map} +0 -0
- /package/dist/{chunk-SKT3SAHG.js.map → chunk-U3HAMW5W.js.map} +0 -0
- /package/dist/{chunk-5EEDEVOR.js.map → chunk-U6SYRIOB.js.map} +0 -0
- /package/dist/{chunk-F46KAIBS.js.map → chunk-UC6BWM5J.js.map} +0 -0
- /package/dist/{chunk-ZNBDKK4Y.js.map → chunk-ULJ5RFOV.js.map} +0 -0
- /package/dist/{chunk-GTK46DE3.js.map → chunk-VAISMQQB.js.map} +0 -0
- /package/dist/{chunk-WRIC2RPQ.js.map → chunk-VDHQJ6HD.js.map} +0 -0
- /package/dist/{chunk-6TCDQSM7.js.map → chunk-VMDAXFRI.js.map} +0 -0
- /package/dist/{chunk-EVYXTT7V.js.map → chunk-XCM6XWOB.js.map} +0 -0
- /package/dist/{chunk-NSA6HRG6.js.map → chunk-XMD4SHFI.js.map} +0 -0
- /package/dist/{chunk-4SJDDGPV.js.map → chunk-Y6QAJNKP.js.map} +0 -0
- /package/dist/{chunk-4SNOWJV7.js.map → chunk-YBP7O5P4.js.map} +0 -0
- /package/dist/{chunk-J5IU4OX2.js.map → chunk-YC2TQ3VC.js.map} +0 -0
- /package/dist/{chunk-6YYEBLYI.js.map → chunk-ZPU3WDVK.js.map} +0 -0
- /package/dist/{claim-CIASHKMC.js.map → claim-V4F5GZJK.js.map} +0 -0
- /package/dist/{companies-ECVMO24S.js.map → companies-NJGJ7XNN.js.map} +0 -0
- /package/dist/{complete-32CPBFIG.js.map → complete-MGNF5OAK.js.map} +0 -0
- /package/dist/{connect-OJSOM6PY.js.map → connect-PJOTRTT4.js.map} +0 -0
- /package/dist/{conversation-7FHN5ESN.js.map → conversation-4DM26FRD.js.map} +0 -0
- /package/dist/{conversion-report-XQBJ6LG4.js.map → conversion-report-N4HANYOB.js.map} +0 -0
- /package/dist/{conversion-upload-command-BBUXLFT3.js.map → conversion-upload-command-TZTHU2CD.js.map} +0 -0
- /package/dist/{conversion-writes-UBCVXP2E.js.map → conversion-writes-LW4HQKK5.js.map} +0 -0
- /package/dist/{conversions-7YJDNZ7Y.js.map → conversions-JGECVZSY.js.map} +0 -0
- /package/dist/{conversions-D236RTUK.js.map → conversions-TS723AZV.js.map} +0 -0
- /package/dist/{countries-FYHM3IMJ.js.map → countries-ESAKTQAE.js.map} +0 -0
- /package/dist/{create-FE5QLW7V.js.map → create-DSGQFBI7.js.map} +0 -0
- /package/dist/{create-ZGRL7YCV.js.map → create-I2KVDTCQ.js.map} +0 -0
- /package/dist/{create-2TBDXHAM.js.map → create-SBQWVLXG.js.map} +0 -0
- /package/dist/{create-OYT76OMJ.js.map → create-WOHPIGBK.js.map} +0 -0
- /package/dist/{creatives-IUB57I3T.js.map → creatives-4JGVZQGC.js.map} +0 -0
- /package/dist/{creatives-5MUTX4DQ.js.map → creatives-DWO5KEQC.js.map} +0 -0
- /package/dist/{creatives-UEPLNCPN.js.map → creatives-PSWCNY7U.js.map} +0 -0
- /package/dist/{critique-T7HJ42D4.js.map → critique-TIZJ5GFM.js.map} +0 -0
- /package/dist/{crm-KH6XX2TT.js.map → crm-2WAR565U.js.map} +0 -0
- /package/dist/{crm-JP4UOPMN.js.map → crm-VDXUO2YU.js.map} +0 -0
- /package/dist/{currency-DJDVIR3C.js.map → currency-XCGKQ7FE.js.map} +0 -0
- /package/dist/{custom-conversions-2VLJGPRV.js.map → custom-conversions-6P555U2K.js.map} +0 -0
- /package/dist/{customers-7I7UY5PS.js.map → customers-ATENMXDO.js.map} +0 -0
- /package/dist/{delete-6IOUDEWY.js.map → delete-AVMZYNVT.js.map} +0 -0
- /package/dist/{delete-ODFKNHAI.js.map → delete-H744GNS4.js.map} +0 -0
- /package/dist/{delete-RAETUVO2.js.map → delete-OEYPFATY.js.map} +0 -0
- /package/dist/{demographics-2FTDKPBD.js.map → demographics-M5LJF3RZ.js.map} +0 -0
- /package/dist/{discard-ZX5TLFYH.js.map → discard-72I6SM7G.js.map} +0 -0
- /package/dist/{discover-M3ZKKFEL.js.map → discover-BJPZNXUQ.js.map} +0 -0
- /package/dist/{domain-TH7KIC2T.js.map → domain-R4EIZD2W.js.map} +0 -0
- /package/dist/{draft-S2FSQOJN.js.map → draft-34C3F5U4.js.map} +0 -0
- /package/dist/{draft-CRE2Y24G.js.map → draft-BBFJNZ5X.js.map} +0 -0
- /package/dist/{draft-SH25PKST.js.map → draft-BV2QRPZ4.js.map} +0 -0
- /package/dist/{draft-MNFJ4G3C.js.map → draft-THPZFASM.js.map} +0 -0
- /package/dist/{draft-YHUIFDDR.js.map → draft-YYYRWF7M.js.map} +0 -0
- /package/dist/{facets-6B2U4BSM.js.map → facets-F2H52MS4.js.map} +0 -0
- /package/dist/{fit-FJ5CLQS4.js.map → fit-2CA4JH7N.js.map} +0 -0
- /package/dist/{flows-OGGSWWGT.js.map → flows-CWXCXEUD.js.map} +0 -0
- /package/dist/{follow-DUIEGDVK.js.map → follow-FN7LV3WV.js.map} +0 -0
- /package/dist/{follow-competitors-IT5ZVJPE.js.map → follow-competitors-MKXFHLXB.js.map} +0 -0
- /package/dist/{fonts-GCJRLEGD.js.map → fonts-F2XUCIIW.js.map} +0 -0
- /package/dist/{forecast-2AGTFMXH.js.map → forecast-IDKJYM2B.js.map} +0 -0
- /package/dist/{funnel-7U55LNJ4.js.map → funnel-RLGQGYKO.js.map} +0 -0
- /package/dist/{generate-DMQUS665.js.map → generate-MMBYB44G.js.map} +0 -0
- /package/dist/{get-N7FR6NFX.js.map → get-C6UQ22HH.js.map} +0 -0
- /package/dist/{get-IRJIHOQK.js.map → get-EEUR6SAW.js.map} +0 -0
- /package/dist/{history-PSNJAUTW.js.map → history-4II5QA4B.js.map} +0 -0
- /package/dist/{history-Q3QCT64S.js.map → history-DBIEYQHY.js.map} +0 -0
- /package/dist/{hubspot-2NHL47R2.js.map → hubspot-TTITJFBO.js.map} +0 -0
- /package/dist/{ideas-22MRXKT7.js.map → ideas-V4Q6JDKV.js.map} +0 -0
- /package/dist/{images-LXFWEON7.js.map → images-SP5REF6E.js.map} +0 -0
- /package/dist/{ingest-W7VEDEYD.js.map → ingest-574GIFAR.js.map} +0 -0
- /package/dist/{ingest-ZN3DEZHY.js.map → ingest-IC4T76W6.js.map} +0 -0
- /package/dist/{insights-LNAXV2CG.js.map → insights-ZIU6FJMS.js.map} +0 -0
- /package/dist/{inspect-3LBIHMMP.js.map → inspect-ATHYY6A2.js.map} +0 -0
- /package/dist/{inspiration-I4MMKAWA.js.map → inspiration-P265QJ2H.js.map} +0 -0
- /package/dist/{intent-ICKFJRT2.js.map → intent-E3UIVZBN.js.map} +0 -0
- /package/dist/{keyword-gap-NGPH32FN.js.map → keyword-gap-BG6M665A.js.map} +0 -0
- /package/dist/{keyword-metrics-PZXFB4NG.js.map → keyword-metrics-J4UPUDN7.js.map} +0 -0
- /package/dist/{landing-D7QS42GK.js.map → landing-R6DN7XLK.js.map} +0 -0
- /package/dist/{languages-JDYL2N5F.js.map → languages-HORKPDNH.js.map} +0 -0
- /package/dist/{languages-JMVNOHMG.js.map → languages-JSGWCC7Z.js.map} +0 -0
- /package/dist/{leads-ARUWPHBM.js.map → leads-7EVHMNUF.js.map} +0 -0
- /package/dist/{leads-E22XFSX2.js.map → leads-JM6HUERX.js.map} +0 -0
- /package/dist/{lighthouse-NQBUCHTW.js.map → lighthouse-6ZC45E53.js.map} +0 -0
- /package/dist/{line-item-writes-KA5PVKFO.js.map → line-item-writes-KUYEXSIH.js.map} +0 -0
- /package/dist/{line-items-3ZFFZCNH.js.map → line-items-GIWLP3FL.js.map} +0 -0
- /package/dist/{link-AEU6BV75.js.map → link-PVM7XJQI.js.map} +0 -0
- /package/dist/{linkedin-WCB2H5NH.js.map → linkedin-WX54EAX6.js.map} +0 -0
- /package/dist/{list-PAMYQS4X.js.map → list-4ZKQZBCL.js.map} +0 -0
- /package/dist/{list-OLX7AI3O.js.map → list-MCEFXC6L.js.map} +0 -0
- /package/dist/{list-TOUUGHMS.js.map → list-WR7QYTON.js.map} +0 -0
- /package/dist/{locations-2NKBJKBT.js.map → locations-74TPQWAT.js.map} +0 -0
- /package/dist/{locations-S4U6IJIS.js.map → locations-J4G5RNPH.js.map} +0 -0
- /package/dist/{log-UGVWSK7Z.js.map → log-U6IWZGOF.js.map} +0 -0
- /package/dist/{map-BW4CHSIO.js.map → map-TWL7T4KP.js.map} +0 -0
- /package/dist/{mcp-JOXKA5HY.js.map → mcp-HVAVJGGS.js.map} +0 -0
- /package/dist/{media-53DJRC4N.js.map → media-M7E6V2XU.js.map} +0 -0
- /package/dist/{media-sources-SJZUOMI2.js.map → media-sources-JWGO23BZ.js.map} +0 -0
- /package/dist/{members-VAX6KAFN.js.map → members-5FAW4YE7.js.map} +0 -0
- /package/dist/{meta-A7KM6TF5.js.map → meta-EZ4SY25M.js.map} +0 -0
- /package/dist/{metrics-AY4RP54F.js.map → metrics-SQDJ5NQO.js.map} +0 -0
- /package/dist/{models-5NTC7A5G.js.map → models-7U3GRYHF.js.map} +0 -0
- /package/dist/{normalize-IVQ7I54Z.js.map → normalize-GW4GZNVY.js.map} +0 -0
- /package/dist/{options-V7C6CU6M.js.map → options-NSUCENLU.js.map} +0 -0
- /package/dist/{performance-L6RJZPXX.js.map → performance-FGCDWHMC.js.map} +0 -0
- /package/dist/{pixels-TZPF746S.js.map → pixels-45A55MOP.js.map} +0 -0
- /package/dist/{promoted-tweet-writes-DBATH765.js.map → promoted-tweet-writes-BPWTDESL.js.map} +0 -0
- /package/dist/{promoted-tweets-AU3XF3JD.js.map → promoted-tweets-OS3NHYVE.js.map} +0 -0
- /package/dist/{publish-G6DYVT4S.js.map → publish-SXZEWBVJ.js.map} +0 -0
- /package/dist/{query-CPZZNMDY.js.map → query-IEZRY6HV.js.map} +0 -0
- /package/dist/{reddit-S2S6C4RT.js.map → reddit-TF6K37SB.js.map} +0 -0
- /package/dist/{refresh-ARJ2SOMY.js.map → refresh-APVDWXRZ.js.map} +0 -0
- /package/dist/{release-3WCBAHPO.js.map → release-32SEJU4L.js.map} +0 -0
- /package/dist/{relevant-pages-MTMFMBPD.js.map → relevant-pages-OWMNUCP7.js.map} +0 -0
- /package/dist/{remove-FUAARCSC.js.map → remove-U64GTHLQ.js.map} +0 -0
- /package/dist/{reopen-PZI5H4X2.js.map → reopen-5VS233SF.js.map} +0 -0
- /package/dist/{research-SY3QRGOC.js.map → research-QYSQ6LW4.js.map} +0 -0
- /package/dist/{reset-E6F5NXOI.js.map → reset-22FC7BXQ.js.map} +0 -0
- /package/dist/{reset-ZWM7DDD7.js.map → reset-47B5VPT4.js.map} +0 -0
- /package/dist/{resolve-I5R5ELMZ.js.map → resolve-7KQGVTQT.js.map} +0 -0
- /package/dist/{retry-JO3JXXT2.js.map → retry-J5UVLS72.js.map} +0 -0
- /package/dist/{retry-7CFZTKWI.js.map → retry-UJ5UF4BM.js.map} +0 -0
- /package/dist/{run-UKB647DI.js.map → run-SI4FA32F.js.map} +0 -0
- /package/dist/{run-JR6SILHL.js.map → run-TFLFBQU2.js.map} +0 -0
- /package/dist/{schedule-SOAHLZZF.js.map → schedule-52ZM4KRQ.js.map} +0 -0
- /package/dist/{scheduled-agents-K5WU7SVJ.js.map → scheduled-agents-PCWCQAKP.js.map} +0 -0
- /package/dist/{schema-SOPL6GJP.js.map → schema-FY6ORDXZ.js.map} +0 -0
- /package/dist/{search-5VUDFOHI.js.map → search-NS7XNRZC.js.map} +0 -0
- /package/dist/{search-XUIVHGAY.js.map → search-UO5KJTYS.js.map} +0 -0
- /package/dist/{setup-links-KFROCISS.js.map → setup-links-V3URI7DL.js.map} +0 -0
- /package/dist/{site-MXPKMRQT.js.map → site-WIQ7SSU3.js.map} +0 -0
- /package/dist/{sources-MLDLMEDT.js.map → sources-DWJXOLEH.js.map} +0 -0
- /package/dist/{sources-FFHNWVLV.js.map → sources-L453U5MT.js.map} +0 -0
- /package/dist/{status-M47G5HD4.js.map → status-WXWU54WR.js.map} +0 -0
- /package/dist/{studio-HUEBE6DS.js.map → studio-C5K3YX3P.js.map} +0 -0
- /package/dist/{sync-HS7VZJ2H.js.map → sync-CDZUTGV3.js.map} +0 -0
- /package/dist/{sync-definition-PY6REQ4J.js.map → sync-definition-BAJQUBE3.js.map} +0 -0
- /package/dist/{tag-manager-HREEYGVM.js.map → tag-manager-DYZUOIAS.js.map} +0 -0
- /package/dist/{tags-WAW6MQAY.js.map → tags-6RY23XOG.js.map} +0 -0
- /package/dist/{tags-DIXLYB5P.js.map → tags-BHFQWNPL.js.map} +0 -0
- /package/dist/{tags-MRG56YOE.js.map → tags-SG3NVC3J.js.map} +0 -0
- /package/dist/{tags-DYRZTYHD.js.map → tags-VN5HTL35.js.map} +0 -0
- /package/dist/{tags-Y4HHJJGE.js.map → tags-WR6PDIDR.js.map} +0 -0
- /package/dist/{targeting-criteria-5UUESFWC.js.map → targeting-criteria-5EXP2NXF.js.map} +0 -0
- /package/dist/{targets-COZPVG52.js.map → targets-WUVEJPSD.js.map} +0 -0
- /package/dist/{templates-75VFYZ3E.js.map → templates-LOJQX2NG.js.map} +0 -0
- /package/dist/{testimonials-WJBRWLNW.js.map → testimonials-6M5DXORT.js.map} +0 -0
- /package/dist/{top-companies-C2R4FG6H.js.map → top-companies-E2OMMPSV.js.map} +0 -0
- /package/dist/{triggers-5UHVJPBV.js.map → triggers-MRXIDCSN.js.map} +0 -0
- /package/dist/{unlink-PLOOAGM3.js.map → unlink-HNL747YM.js.map} +0 -0
- /package/dist/{unstage-JIIOTBTF.js.map → unstage-OL2JDCLK.js.map} +0 -0
- /package/dist/{update-QYM6U7LL.js.map → update-4KGIT4BF.js.map} +0 -0
- /package/dist/{update-RCP7F5L5.js.map → update-JPBUF7M2.js.map} +0 -0
- /package/dist/{update-RGVNTA5X.js.map → update-RTTC3SAK.js.map} +0 -0
- /package/dist/{update-G6R5ZHUI.js.map → update-YNNRX5B2.js.map} +0 -0
- /package/dist/{upload-EEJ34Q3Y.js.map → upload-UIXPCSXJ.js.map} +0 -0
- /package/dist/{url-options-QEWKRKZ3.js.map → url-options-GGXAL3J4.js.map} +0 -0
- /package/dist/{url-params-2G5M2B3J.js.map → url-params-K47CE7Y5.js.map} +0 -0
- /package/dist/{videos-FVVID55J.js.map → videos-BP3BKNTY.js.map} +0 -0
- /package/dist/{viewer-check-2Q3WHSEL.js.map → viewer-check-HFRUJ4ZU.js.map} +0 -0
- /package/dist/{winning-ads-OSRFHVLV.js.map → winning-ads-WUENRDVJ.js.map} +0 -0
- /package/dist/{write-commands-CLJOD2XF.js.map → write-commands-4WARNR2T.js.map} +0 -0
- /package/dist/{write-commands-CT74VHH6.js.map → write-commands-TAYGTJEZ.js.map} +0 -0
- /package/dist/{x-EBKLJJPJ.js.map → x-VZCELH3P.js.map} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/creatives/feedback-record.ts","../src/commands/creatives/agent-option-note.ts"],"sourcesContent":["import {\n CREATIVE_FEEDBACK_REASONS,\n type CreativesFeedbackRecordResponse,\n creativesFeedbackRecordRequestSchema,\n} from \"@baker/api\";\nimport { defineCommand } from \"citty\";\nimport { ApiError, apiPost } from \"../../client.ts\";\nimport { writeJson } from \"../../output.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { jevNoteJudge, readNoteAuthor } from \"./agent-option-note.ts\";\nimport { versionOf } from \"./version-of.ts\";\n\nconst DESCRIPTION = `Record what the user said about one version of a creative in this chat: Approve, or Not this one with reasons. Saved as their verdict (the person who wrote the latest message here), exactly like reviewing it in Baker, and read back by baker creatives feedback. One verdict per person per version or option: a later one replaces it.\nStart here: baker creatives feedback record --slug spring-offer --verdict rejected --reasons text_mistakes --note \"<their words>\"\nOnly record what the user said, never your own judgment. Picking one of several concepts is not a rejection of the others.`;\n\nconst ARGS = {\n slug: { type: \"string\", description: \"The creative: its folder name under src/creatives/.\", required: true },\n run: {\n type: \"string\",\n description: \"The version: its canvas run id (r_…) Left out, the version the creative shows now (its last render).\",\n required: false,\n },\n option: {\n type: \"string\",\n description:\n 'One option of a version that made several: its label (\"ugc\"), its number (\"2\") or its slot. Left out, the whole version.',\n required: false,\n },\n verdict: { type: \"string\", description: \"approved | rejected\", required: true },\n reasons: {\n type: \"string\",\n description: `Why it was rejected, comma-separated: ${CREATIVE_FEEDBACK_REASONS.join(\", \")}. Map the user's words to these; \"other\" when none fits. On a video, voice_or_sound covers the voiceover, music and mix (\"the voice sounds robotic\", \"music too loud\") and pacing covers the timing (\"too slow\", \"the hook comes too late\").`,\n required: false,\n },\n note: {\n type: \"string\",\n description: \"The user's own words, verbatim (not your summary). Up to 1000 characters.\",\n required: false,\n },\n} as const;\n\nregisterSchema({ command: \"creatives.feedback.record\", description: DESCRIPTION, args: ARGS });\n\nfunction splitList(value: unknown): string[] | undefined {\n if (typeof value !== \"string\" || value.trim() === \"\") return undefined;\n return value\n .split(\",\")\n .map((item) => item.trim())\n .filter((item) => item.length > 0);\n}\n\nfunction fail(code: string, message: string): never {\n writeJson({ ok: false, error: { code, message } });\n process.exit(1);\n}\n\n/**\n * A rejection whose note only answers the agent's own question, or that says nothing, is not the\n * person's feedback. Returns whether the note could not be confirmed as the person's words.\n */\nasync function refuseNotFeedback(body: {\n verdict: string;\n reasons?: readonly string[];\n note?: string;\n}): Promise<boolean> {\n if (body.verdict === \"rejected\" && !body.reasons?.length && !body.note) {\n fail(\n \"VALIDATION_ERROR\",\n \"A rejection needs --reasons or --note (the user's words), so the next version knows what to change.\",\n );\n }\n if (body.verdict !== \"rejected\" || !body.note) return false;\n const author = await readNoteAuthor(body.note, jevNoteJudge);\n if (author === \"agent_option\") {\n fail(\n \"AGENT_OPTION_NOT_FEEDBACK\",\n `\"${body.note}\" is the answer to your own question, not the person's taste: a defect the checks found is yours to fix inside this version (\\`baker canvas run --fix\\`), never feedback to record. Record only what the person says about the ad in their own words.`,\n );\n }\n return author === \"unconfirmed\";\n}\n\nexport const feedbackRecordCommand = defineCommand({\n meta: { name: \"record\", description: DESCRIPTION },\n args: ARGS,\n run: async ({ args }) => {\n const reasons = splitList(args.reasons);\n const unknown = (reasons ?? []).filter(\n (reason) => !(CREATIVE_FEEDBACK_REASONS as readonly string[]).includes(reason),\n );\n if (unknown.length > 0) {\n fail(\"VALIDATION_ERROR\", `Unknown reason ${unknown.join(\", \")}. Use: ${CREATIVE_FEEDBACK_REASONS.join(\", \")}.`);\n }\n const parsed = creativesFeedbackRecordRequestSchema.safeParse({\n slug: args.slug,\n runId: await versionOf(String(args.slug), args.run).then(\n (run) => run ?? fail(\"VALIDATION_ERROR\", \"--run: this creative has no rendered version here; name one (r_…).\"),\n ),\n ...(typeof args.option === \"string\" && args.option.trim() ? { option: args.option.trim() } : {}),\n verdict: args.verdict,\n ...(reasons ? { reasons } : {}),\n ...(typeof args.note === \"string\" && args.note.trim() ? { note: args.note } : {}),\n });\n if (!parsed.success) {\n const issue = parsed.error.issues[0];\n fail(\"VALIDATION_ERROR\", `--${String(issue?.path[0] ?? \"args\")}: ${issue?.message ?? \"invalid\"}`);\n }\n const body = parsed.data;\n const noteUnconfirmed = await refuseNotFeedback(body);\n try {\n const response = await apiPost<CreativesFeedbackRecordResponse>(\n \"/api/creatives/feedback/record\",\n noteUnconfirmed ? { ...body, noteUnconfirmed } : body,\n );\n writeJson(response);\n } catch (err) {\n if (err instanceof ApiError) fail(err.code, err.message);\n fail(\"INTERNAL_ERROR\", \"Unexpected error\");\n }\n },\n});\n","/**\n * Whether a rejection's note is the agent's own words rather than the person's taste: the label\n * of an option the agent offered (\"Sí, corrige todo (Recomendado)\") or the answer to its own\n * \"fix what is pending?\" (\"Fix everything\"). Production Oct 2026: both were recorded as\n * rejections, so every fix became a new version and later chats read the agent's own defects as\n * the company's taste. The agent writes those options in the marketer's language, so the decision\n * model reads the note in whatever language it is in (docs/decision-model.md).\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\n/**\n * The bands, measured 2026-10-07 on 30 notes in 8 languages (scripts/agent-option-note-evals,\n * three runs). A recommended tag scored 0.92 or more on the agent's labels and 0.03 or less on\n * people's notes. A bare yes to fixing scored 0.59 or more on the agent's untagged answers and\n * 0.31 or less on people's, except \"fix all the typos\" (0.52-0.56), which names its problem\n * (0.86; the agent's answers 0.12 or less).\n */\nexport const NOTE_BANDS = { tagged: 0.5, bareFix: 0.45, namesProblem: 0.5 } as const;\n\nconst TAGGED = \"Does `note` end with a tag marking it as the recommended option, like (Recommended), in any language?\";\nconst BARE_FIX =\n 'Is `note` a bare yes to an offer to fix things, like \"fix everything\" or \"fix what is pending\", naming no particular problem? A note that names what is wrong or what to change (the typos, the price, cut-off text, redo the pieces) is not.';\nconst NAMES_PROBLEM =\n \"Does `note` name a particular problem, element or part of an ad (a typo, the price, the logo, the audio, the text, the colours, a person), apart from a whole format or size?\";\n\n/** Three judgments about one note, each a probability; one judgment per question, combined in code. */\nexport type NoteReading = { tagged: number; bareFix: number; namesProblem: number };\n\n/** The decision model's reading of `note`; null when no judgment came back. */\nexport type NoteJudge = (note: string) => Promise<NoteReading | null>;\n\n/** The decision model as the judge: three Nouls in one request. */\nexport const jevNoteJudge: NoteJudge = async (note) => {\n const spent: ReviewUsage[] = [];\n const answers = await askJev(\n [TAGGED, BARE_FIX, NAMES_PROBLEM].map((question) => ({ instructions: { note, question } })),\n (usage) => spent.push(usage),\n );\n await holdWorkspaceSpend(spent);\n if (answers === null) return null;\n const [tagged = 0, bareFix = 0, namesProblem = 1] = answers;\n return { tagged, bareFix, namesProblem };\n};\n\n/** The agent's option label, or its bare fix answer naming nothing of the ad. Pure. */\nexport function readsAsAgentOption(reading: NoteReading): boolean {\n if (reading.tagged >= NOTE_BANDS.tagged) return true;\n return reading.bareFix >= NOTE_BANDS.bareFix && reading.namesProblem < NOTE_BANDS.namesProblem;\n}\n\n/** Whose words a note is: the agent's own option, the person's, or unconfirmed when no judgment came back. */\nexport type NoteAuthor = \"agent_option\" | \"person\" | \"unconfirmed\";\n\n/**\n * Who wrote `note`, as the decision model reads it. No judgment (no key, a timeout, an outage) is\n * \"unconfirmed\", never the person's: Baker keeps that note but does not read it as taste (B5).\n */\nexport async function readNoteAuthor(note: string, judge: NoteJudge): Promise<NoteAuthor> {\n const text = note.trim();\n if (!text) return \"person\";\n const reading = await judge(text).catch(() => null);\n if (reading === null) return \"unconfirmed\";\n return readsAsAgentOption(reading) ? \"agent_option\" : \"person\";\n}\n"],"mappings":"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","names":[]}
|
package/dist/fetch-UTTJAOLC.js
DELETED
|
@@ -1,171 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
fetchHints,
|
|
3
|
-
redditPageFix
|
|
4
|
-
} from "./chunk-PIWMNKWI.js";
|
|
5
|
-
import {
|
|
6
|
-
handleResearchError,
|
|
7
|
-
writeResearchJson
|
|
8
|
-
} from "./chunk-TBEUMOEL.js";
|
|
9
|
-
import {
|
|
10
|
-
apiPost
|
|
11
|
-
} from "./chunk-XBOK23HI.js";
|
|
12
|
-
import "./chunk-IFWP3ZDO.js";
|
|
13
|
-
import "./chunk-NAWWC5I3.js";
|
|
14
|
-
import {
|
|
15
|
-
registerSchema
|
|
16
|
-
} from "./chunk-NU7JSWVA.js";
|
|
17
|
-
import "./chunk-YQSBHWOI.js";
|
|
18
|
-
|
|
19
|
-
// src/commands/research/fetch.ts
|
|
20
|
-
import { defineCommand } from "citty";
|
|
21
|
-
var CONTENT_PREVIEW_CHARS = 2e4;
|
|
22
|
-
var TIMEOUT_MS = 18e4;
|
|
23
|
-
registerSchema({
|
|
24
|
-
command: "research.fetch",
|
|
25
|
-
description: "Read a page an ordinary web fetch could not \u2014 bot walls and JavaScript-rendered pages are resolved for you. Use it when your normal page read came back with a security check, an error page, or an empty shell.",
|
|
26
|
-
args: {
|
|
27
|
-
url: { type: "string", description: "Full URL of the page to read", required: true },
|
|
28
|
-
format: {
|
|
29
|
-
type: "string",
|
|
30
|
-
description: "markdown (default, best for reading) or html (when you need the markup)",
|
|
31
|
-
required: false,
|
|
32
|
-
enum: ["markdown", "html"]
|
|
33
|
-
},
|
|
34
|
-
"wait-for": {
|
|
35
|
-
type: "number",
|
|
36
|
-
description: "Extra ms to let late content settle (0-30000). Only for pages that fill in after load",
|
|
37
|
-
required: false
|
|
38
|
-
},
|
|
39
|
-
"whole-page": {
|
|
40
|
-
type: "boolean",
|
|
41
|
-
description: "Include nav, footer and sidebars (default: main content only)",
|
|
42
|
-
required: false,
|
|
43
|
-
default: false
|
|
44
|
-
},
|
|
45
|
-
full: {
|
|
46
|
-
type: "boolean",
|
|
47
|
-
description: `Return the whole page instead of the first ${CONTENT_PREVIEW_CHARS} characters`,
|
|
48
|
-
required: false,
|
|
49
|
-
default: false
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
});
|
|
53
|
-
var FIELDS = {
|
|
54
|
-
url: "The URL as asked for",
|
|
55
|
-
final_url: "Where the read landed after redirects",
|
|
56
|
-
title: "Page title, or null when the page declares none",
|
|
57
|
-
content: "The page text (markdown by default)",
|
|
58
|
-
content_chars: "Length of the full page available on the server",
|
|
59
|
-
content_shown: "Characters in `content` \u2014 below content_chars unless --full",
|
|
60
|
-
truncated: "The page was longer than one read returns, so the tail is missing",
|
|
61
|
-
provider: "Who resolved the read"
|
|
62
|
-
};
|
|
63
|
-
function fetchFix(code) {
|
|
64
|
-
if (code === "VALIDATION_ERROR") {
|
|
65
|
-
return {
|
|
66
|
-
action: "retry_with_changes",
|
|
67
|
-
explanation: "Re-run with a complete address, including https://."
|
|
68
|
-
};
|
|
69
|
-
}
|
|
70
|
-
if (code === "TIMEOUT") {
|
|
71
|
-
return {
|
|
72
|
-
action: "retry_with_changes",
|
|
73
|
-
explanation: "The page never settled. Retry this URL once with `--wait-for 10000`; if that fails too, carry on with the rest of the job and say this page couldn't be read."
|
|
74
|
-
};
|
|
75
|
-
}
|
|
76
|
-
if (code === "RATE_LIMITED") {
|
|
77
|
-
return {
|
|
78
|
-
action: "continue_without",
|
|
79
|
-
explanation: "The page reader is busy. Do the rest of the job first and come back to this URL once, later \u2014 don't loop on it."
|
|
80
|
-
};
|
|
81
|
-
}
|
|
82
|
-
if (code === "FORBIDDEN" || code === "NOT_FOUND") {
|
|
83
|
-
return {
|
|
84
|
-
action: "continue_without",
|
|
85
|
-
explanation: "This page will not open for us, and retrying will not change that. Carry on with the sources you can reach and say plainly which page you couldn't read."
|
|
86
|
-
};
|
|
87
|
-
}
|
|
88
|
-
return {
|
|
89
|
-
action: "continue_without",
|
|
90
|
-
explanation: "This read failed. Don't build a retry ladder around it \u2014 finish the rest of the job with what you can reach and name this page as a gap."
|
|
91
|
-
};
|
|
92
|
-
}
|
|
93
|
-
var fetchCommand = defineCommand({
|
|
94
|
-
meta: {
|
|
95
|
-
name: "fetch",
|
|
96
|
-
description: `Read a page an ordinary web fetch could not. Bot walls and JavaScript-rendered pages are resolved for you \u2014 you never have to retry, wait, or drive a browser yourself.
|
|
97
|
-
|
|
98
|
-
Reach for this the moment a normal page read comes back with a security check, an error page, or an empty shell. One call, no escalation ladder.
|
|
99
|
-
|
|
100
|
-
Examples:
|
|
101
|
-
baker research fetch "https://competitor.com/pricing"
|
|
102
|
-
baker research fetch "https://competitor.com/pricing" --full
|
|
103
|
-
baker research fetch "https://app.competitor.com/blog/post" --wait-for 5000
|
|
104
|
-
baker research fetch "https://competitor.com" --format html --whole-page`
|
|
105
|
-
},
|
|
106
|
-
args: {
|
|
107
|
-
url: { type: "positional", description: "URL of the page to read", required: false },
|
|
108
|
-
format: { type: "string", description: "markdown (default) or html", required: false },
|
|
109
|
-
"wait-for": { type: "string", description: "Extra ms to let late content settle (0-30000)", required: false },
|
|
110
|
-
"whole-page": { type: "boolean", description: "Include nav, footer and sidebars", required: false },
|
|
111
|
-
full: { type: "boolean", description: "Return the whole page, not just the first chunk", required: false }
|
|
112
|
-
},
|
|
113
|
-
run: async ({ args }) => {
|
|
114
|
-
const url = args.url;
|
|
115
|
-
if (!url) {
|
|
116
|
-
writeResearchJson({
|
|
117
|
-
ok: false,
|
|
118
|
-
error: {
|
|
119
|
-
code: "VALIDATION_ERROR",
|
|
120
|
-
message: "A URL is required",
|
|
121
|
-
fix: fetchFix("VALIDATION_ERROR")
|
|
122
|
-
}
|
|
123
|
-
});
|
|
124
|
-
process.exit(1);
|
|
125
|
-
}
|
|
126
|
-
const format = args.format ?? "markdown";
|
|
127
|
-
if (format !== "markdown" && format !== "html") {
|
|
128
|
-
writeResearchJson({
|
|
129
|
-
ok: false,
|
|
130
|
-
error: {
|
|
131
|
-
code: "VALIDATION_ERROR",
|
|
132
|
-
message: "Format must be markdown or html",
|
|
133
|
-
fix: { action: "retry_with_changes", explanation: "Re-run with --format markdown or --format html." }
|
|
134
|
-
}
|
|
135
|
-
});
|
|
136
|
-
process.exit(1);
|
|
137
|
-
}
|
|
138
|
-
const body = { url, format };
|
|
139
|
-
if (args["wait-for"]) body.waitFor = Number(args["wait-for"]);
|
|
140
|
-
if (args["whole-page"]) body.onlyMainContent = false;
|
|
141
|
-
try {
|
|
142
|
-
const page = await apiPost("/api/research/fetch", body, { timeoutMs: TIMEOUT_MS });
|
|
143
|
-
const content = args.full ? page.content : page.content.slice(0, CONTENT_PREVIEW_CHARS);
|
|
144
|
-
writeResearchJson({
|
|
145
|
-
ok: true,
|
|
146
|
-
data: {
|
|
147
|
-
url: page.url,
|
|
148
|
-
final_url: page.finalUrl,
|
|
149
|
-
title: page.title,
|
|
150
|
-
content_chars: page.contentChars,
|
|
151
|
-
content_shown: content.length,
|
|
152
|
-
truncated: page.truncated,
|
|
153
|
-
provider: page.provider,
|
|
154
|
-
content
|
|
155
|
-
},
|
|
156
|
-
fields: FIELDS,
|
|
157
|
-
hints: fetchHints({
|
|
158
|
-
truncated: page.truncated,
|
|
159
|
-
contentChars: page.contentChars,
|
|
160
|
-
shownChars: content.length
|
|
161
|
-
})
|
|
162
|
-
});
|
|
163
|
-
} catch (err) {
|
|
164
|
-
handleResearchError(err, (code) => redditPageFix(url, code) ?? fetchFix(code));
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
});
|
|
168
|
-
export {
|
|
169
|
-
fetchCommand
|
|
170
|
-
};
|
|
171
|
-
//# sourceMappingURL=fetch-UTTJAOLC.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/commands/research/fetch.ts"],"sourcesContent":["import type { ResearchFetchRequest, ResearchFetchResponse } from \"@baker/api\";\nimport { defineCommand } from \"citty\";\nimport { apiPost } from \"../../client.ts\";\nimport { registerSchema } from \"../../schemas.ts\";\nimport { fetchHints, redditPageFix } from \"./hints.ts\";\nimport { handleResearchError, type ResearchFix, writeResearchJson } from \"./output.ts\";\n\n/**\n * A page big enough to matter is bigger than a turn wants to carry, and the\n * read is cached — so the default shows the top of it and `--full` returns for\n * the rest at no extra cost.\n */\nconst CONTENT_PREVIEW_CHARS = 20_000;\n\n/** A page behind a bot wall can take a while to clear; the default 60s is not enough. */\nconst TIMEOUT_MS = 180_000;\n\nregisterSchema({\n command: \"research.fetch\",\n description:\n \"Read a page an ordinary web fetch could not — bot walls and JavaScript-rendered pages are resolved for you. Use it when your normal page read came back with a security check, an error page, or an empty shell.\",\n args: {\n url: { type: \"string\", description: \"Full URL of the page to read\", required: true },\n format: {\n type: \"string\",\n description: \"markdown (default, best for reading) or html (when you need the markup)\",\n required: false,\n enum: [\"markdown\", \"html\"],\n },\n \"wait-for\": {\n type: \"number\",\n description: \"Extra ms to let late content settle (0-30000). Only for pages that fill in after load\",\n required: false,\n },\n \"whole-page\": {\n type: \"boolean\",\n description: \"Include nav, footer and sidebars (default: main content only)\",\n required: false,\n default: false,\n },\n full: {\n type: \"boolean\",\n description: `Return the whole page instead of the first ${CONTENT_PREVIEW_CHARS} characters`,\n required: false,\n default: false,\n },\n },\n});\n\nconst FIELDS: Record<string, string> = {\n url: \"The URL as asked for\",\n final_url: \"Where the read landed after redirects\",\n title: \"Page title, or null when the page declares none\",\n content: \"The page text (markdown by default)\",\n content_chars: \"Length of the full page available on the server\",\n content_shown: \"Characters in `content` — below content_chars unless --full\",\n truncated: \"The page was longer than one read returns, so the tail is missing\",\n provider: \"Who resolved the read\",\n};\n\n/**\n * Every failure here is one source out of a larger job, so the remediation is\n * about finishing the job: name the gap, keep going. The only case worth a\n * second attempt is a page that never settled.\n */\nfunction fetchFix(code: string): ResearchFix {\n if (code === \"VALIDATION_ERROR\") {\n return {\n action: \"retry_with_changes\",\n explanation: \"Re-run with a complete address, including https://.\",\n };\n }\n if (code === \"TIMEOUT\") {\n return {\n action: \"retry_with_changes\",\n explanation:\n \"The page never settled. Retry this URL once with `--wait-for 10000`; if that fails too, carry on with the rest of the job and say this page couldn't be read.\",\n };\n }\n if (code === \"RATE_LIMITED\") {\n return {\n action: \"continue_without\",\n explanation:\n \"The page reader is busy. Do the rest of the job first and come back to this URL once, later — don't loop on it.\",\n };\n }\n if (code === \"FORBIDDEN\" || code === \"NOT_FOUND\") {\n return {\n action: \"continue_without\",\n explanation:\n \"This page will not open for us, and retrying will not change that. Carry on with the sources you can reach and say plainly which page you couldn't read.\",\n };\n }\n return {\n action: \"continue_without\",\n explanation:\n \"This read failed. Don't build a retry ladder around it — finish the rest of the job with what you can reach and name this page as a gap.\",\n };\n}\n\nexport const fetchCommand = defineCommand({\n meta: {\n name: \"fetch\",\n description: `Read a page an ordinary web fetch could not. Bot walls and JavaScript-rendered pages are resolved for you — you never have to retry, wait, or drive a browser yourself.\n\nReach for this the moment a normal page read comes back with a security check, an error page, or an empty shell. One call, no escalation ladder.\n\nExamples:\n baker research fetch \"https://competitor.com/pricing\"\n baker research fetch \"https://competitor.com/pricing\" --full\n baker research fetch \"https://app.competitor.com/blog/post\" --wait-for 5000\n baker research fetch \"https://competitor.com\" --format html --whole-page`,\n },\n args: {\n url: { type: \"positional\", description: \"URL of the page to read\", required: false },\n format: { type: \"string\", description: \"markdown (default) or html\", required: false },\n \"wait-for\": { type: \"string\", description: \"Extra ms to let late content settle (0-30000)\", required: false },\n \"whole-page\": { type: \"boolean\", description: \"Include nav, footer and sidebars\", required: false },\n full: { type: \"boolean\", description: \"Return the whole page, not just the first chunk\", required: false },\n },\n run: async ({ args }) => {\n const url = args.url as string | undefined;\n if (!url) {\n writeResearchJson({\n ok: false,\n error: {\n code: \"VALIDATION_ERROR\",\n message: \"A URL is required\",\n fix: fetchFix(\"VALIDATION_ERROR\"),\n },\n });\n process.exit(1);\n }\n\n const format = (args.format as string | undefined) ?? \"markdown\";\n if (format !== \"markdown\" && format !== \"html\") {\n writeResearchJson({\n ok: false,\n error: {\n code: \"VALIDATION_ERROR\",\n message: \"Format must be markdown or html\",\n fix: { action: \"retry_with_changes\", explanation: \"Re-run with --format markdown or --format html.\" },\n },\n });\n process.exit(1);\n }\n\n const body: ResearchFetchRequest = { url, format };\n if (args[\"wait-for\"]) body.waitFor = Number(args[\"wait-for\"]);\n if (args[\"whole-page\"]) body.onlyMainContent = false;\n\n try {\n const page = await apiPost<ResearchFetchResponse>(\"/api/research/fetch\", body, { timeoutMs: TIMEOUT_MS });\n const content = args.full ? page.content : page.content.slice(0, CONTENT_PREVIEW_CHARS);\n\n writeResearchJson({\n ok: true,\n data: {\n url: page.url,\n final_url: page.finalUrl,\n title: page.title,\n content_chars: page.contentChars,\n content_shown: content.length,\n truncated: page.truncated,\n provider: page.provider,\n content,\n },\n fields: FIELDS,\n hints: fetchHints({\n truncated: page.truncated,\n contentChars: page.contentChars,\n shownChars: content.length,\n }),\n });\n } catch (err) {\n handleResearchError(err, (code) => redditPageFix(url, code) ?? fetchFix(code));\n }\n },\n});\n"],"mappings":"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","names":[]}
|
package/dist/fit-FJ5CLQS4.js
DELETED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
FitAnswerSchema,
|
|
3
|
-
buildFitPrompt,
|
|
4
|
-
conceptFromFit,
|
|
5
|
-
fitCachePath,
|
|
6
|
-
fitCommand,
|
|
7
|
-
fitHints,
|
|
8
|
-
fitOnce,
|
|
9
|
-
fitReference,
|
|
10
|
-
readCachedFit,
|
|
11
|
-
readKnowledge,
|
|
12
|
-
reviewsForFit
|
|
13
|
-
} from "./chunk-V2X3KK52.js";
|
|
14
|
-
import "./chunk-WTOYCUKH.js";
|
|
15
|
-
import "./chunk-DZSIUEGH.js";
|
|
16
|
-
import "./chunk-4SJDDGPV.js";
|
|
17
|
-
import "./chunk-DGCUPJZD.js";
|
|
18
|
-
import "./chunk-HO3IUJ4K.js";
|
|
19
|
-
import "./chunk-OBDAYP2P.js";
|
|
20
|
-
import "./chunk-RX6F3GEA.js";
|
|
21
|
-
import "./chunk-VAJBWA2U.js";
|
|
22
|
-
import "./chunk-HRYOZUSK.js";
|
|
23
|
-
import "./chunk-VVZBBKRC.js";
|
|
24
|
-
import "./chunk-YBMVHGY3.js";
|
|
25
|
-
import "./chunk-XBOK23HI.js";
|
|
26
|
-
import "./chunk-IFWP3ZDO.js";
|
|
27
|
-
import "./chunk-NAWWC5I3.js";
|
|
28
|
-
import "./chunk-NU7JSWVA.js";
|
|
29
|
-
import "./chunk-YQSBHWOI.js";
|
|
30
|
-
export {
|
|
31
|
-
FitAnswerSchema,
|
|
32
|
-
buildFitPrompt,
|
|
33
|
-
conceptFromFit,
|
|
34
|
-
fitCachePath,
|
|
35
|
-
fitCommand,
|
|
36
|
-
fitHints,
|
|
37
|
-
fitOnce,
|
|
38
|
-
fitReference,
|
|
39
|
-
readCachedFit,
|
|
40
|
-
readKnowledge,
|
|
41
|
-
reviewsForFit
|
|
42
|
-
};
|
|
43
|
-
//# sourceMappingURL=fit-FJ5CLQS4.js.map
|
package/dist/flows-OGGSWWGT.js
DELETED
|
@@ -1,244 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
collectConfigStatus,
|
|
3
|
-
collectSideEffects,
|
|
4
|
-
listFlowSlugs,
|
|
5
|
-
readFlowTree,
|
|
6
|
-
redactTree,
|
|
7
|
-
requestFlowInputCall
|
|
8
|
-
} from "./chunk-EPMN4BK7.js";
|
|
9
|
-
import {
|
|
10
|
-
FLOW_AGENT_DESTINATION_KINDS,
|
|
11
|
-
driftRepairHint,
|
|
12
|
-
flowNodeTriggers
|
|
13
|
-
} from "./chunk-6HJAHLLA.js";
|
|
14
|
-
import "./chunk-GXDLWBOY.js";
|
|
15
|
-
import "./chunk-WYCVJIHD.js";
|
|
16
|
-
import "./chunk-ZJWUBJYQ.js";
|
|
17
|
-
import "./chunk-XML7AJM3.js";
|
|
18
|
-
import {
|
|
19
|
-
apiPost
|
|
20
|
-
} from "./chunk-XBOK23HI.js";
|
|
21
|
-
import "./chunk-IFWP3ZDO.js";
|
|
22
|
-
import "./chunk-NAWWC5I3.js";
|
|
23
|
-
import {
|
|
24
|
-
registerSchema,
|
|
25
|
-
writeJson
|
|
26
|
-
} from "./chunk-NU7JSWVA.js";
|
|
27
|
-
import "./chunk-YQSBHWOI.js";
|
|
28
|
-
|
|
29
|
-
// src/commands/flows/index.ts
|
|
30
|
-
import { defineCommand } from "citty";
|
|
31
|
-
registerSchema({
|
|
32
|
-
command: "flows.list",
|
|
33
|
-
description: "List the Forms (flows) in this workspace and how many confidential fields each still needs configured. Read-only.",
|
|
34
|
-
args: {}
|
|
35
|
-
});
|
|
36
|
-
registerSchema({
|
|
37
|
-
command: "flows.show",
|
|
38
|
-
description: "Show a Form's confidential fields and whether each is configured (secrets/connections/third-party resources), AND whether its destination has changed under it \u2014 never reveals secret values. Destination drift is the one problem a Form cannot show you itself: when a HubSpot field a Form maps is deleted, HubSpot refuses the WHOLE submission and the visitor still sees the thank-you screen, so every lead is lost silently. Run this before changing any Form. Author structure by editing the flow's _data.json; configure confidential fields with the request_flow_input tool.",
|
|
39
|
-
args: {
|
|
40
|
-
slug: { type: "positional", description: "Form slug (folder under flows/)", required: true },
|
|
41
|
-
full: { type: "boolean", description: "Include the full flow tree (secret values redacted)", required: false }
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
function statusFor(slug) {
|
|
45
|
-
const tree = readFlowTree(slug);
|
|
46
|
-
const config = [];
|
|
47
|
-
collectConfigStatus(tree, config);
|
|
48
|
-
return config;
|
|
49
|
-
}
|
|
50
|
-
function pendingInputHints(slug, config) {
|
|
51
|
-
const pending = config.filter((row) => row.needsInput);
|
|
52
|
-
if (pending.length === 0) return [];
|
|
53
|
-
const calls = pending.slice(0, MAX_PENDING_HINTS).map((row) => `${row.kind}: ${requestFlowInputCall(slug, row)}`);
|
|
54
|
-
const rest = pending.length - calls.length;
|
|
55
|
-
return [
|
|
56
|
-
...repeatedKindHints(slug, pending),
|
|
57
|
-
`${pending.length} item${pending.length === 1 ? "" : "s"} still unwired. Wire each yourself with the command below when you know which resource is meant; the card is the fallback, and its result carries the destination \u2014 read the names from there rather than looking them up again.`,
|
|
58
|
-
...calls,
|
|
59
|
-
...rest > 0 ? [`\u2026and ${rest} more \u2014 see \`config\` above.`] : []
|
|
60
|
-
];
|
|
61
|
-
}
|
|
62
|
-
function repeatedKindHints(slug, pending) {
|
|
63
|
-
const counts = /* @__PURE__ */ new Map();
|
|
64
|
-
for (const row of pending) counts.set(row.kind, (counts.get(row.kind) ?? 0) + 1);
|
|
65
|
-
return [...counts].flatMap(([kind, count]) => {
|
|
66
|
-
if (count < 2) return [];
|
|
67
|
-
if (kind === "hubspotForm") {
|
|
68
|
-
return [
|
|
69
|
-
`${count} hubspotForm side effects are unwired. When they all send to the same HubSpot form: baker flows connect ${slug} --all --hubspot-form <formId>.`
|
|
70
|
-
];
|
|
71
|
-
}
|
|
72
|
-
if (!FLOW_AGENT_DESTINATION_KINDS.includes(kind)) return [];
|
|
73
|
-
return [
|
|
74
|
-
`${count} ${kind} items are unwired. When they share one destination: baker flows connect ${slug} --all --type ${kind} [--resource <id>].`
|
|
75
|
-
];
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
var MAX_PENDING_HINTS = 6;
|
|
79
|
-
function inertSideEffectHints(tree) {
|
|
80
|
-
const dead = collectSideEffects(tree).flatMap(({ node, sideEffect }) => {
|
|
81
|
-
const triggers = flowNodeTriggers(node.nodeData);
|
|
82
|
-
if (!triggers.known) return [];
|
|
83
|
-
const triggerId = String(sideEffect.triggerId ?? "");
|
|
84
|
-
if (triggers.available.includes(triggerId)) return [];
|
|
85
|
-
const where = `${String(sideEffect.id ?? sideEffect.type)} on "${String(node.name ?? node.id)}"`;
|
|
86
|
-
const raises = triggers.available.length > 0 ? `It raises: ${triggers.available.join(", ")}.` : triggers.why ?? "That step raises nothing.";
|
|
87
|
-
return [`${where} fires on \`${triggerId || "(none)"}\`, which that step never raises. ${raises}`];
|
|
88
|
-
});
|
|
89
|
-
if (dead.length === 0) return [];
|
|
90
|
-
return [
|
|
91
|
-
`${dead.length} side effect${dead.length === 1 ? " has" : "s have"} a triggerId their step never raises, so ${dead.length === 1 ? "it never runs" : "they never run"} \u2014 no error, nothing half-written, just nothing. A triggerId belongs to the STEP, not to the side-effect type.`,
|
|
92
|
-
...dead.slice(0, MAX_PENDING_HINTS),
|
|
93
|
-
...dead.length > MAX_PENDING_HINTS ? [`\u2026and ${dead.length - MAX_PENDING_HINTS} more.`] : [],
|
|
94
|
-
"Fix each by setting the id its own step raises: `baker flows schema node <nodeType>` lists them."
|
|
95
|
-
];
|
|
96
|
-
}
|
|
97
|
-
function funnelPlacementHint(slug) {
|
|
98
|
-
return `Whether this Form moves anyone along the company funnel is not in _data.json either: \`baker funnel\` names every Form no step counts. If it names this one, place its ending on the step it moves people to \u2014 \`submit:${slug}\`, or its booking trigger, both listed by \`baker funnel --moments\` \u2014 with \`baker funnel --step\`, which replaces the step it names, so keep that step's other ways in.`;
|
|
99
|
-
}
|
|
100
|
-
async function readDrift(slug) {
|
|
101
|
-
try {
|
|
102
|
-
const response = await apiPost("/api/flows/drift", { slug });
|
|
103
|
-
return response.data;
|
|
104
|
-
} catch {
|
|
105
|
-
return null;
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
function driftHints(slug, drift) {
|
|
109
|
-
if (drift === null) {
|
|
110
|
-
return [
|
|
111
|
-
"Could not check whether this Form's destination has changed under it. Treat that as UNKNOWN, not as healthy \u2014 a deleted HubSpot field refuses every submission while the visitor still sees the thank-you screen."
|
|
112
|
-
];
|
|
113
|
-
}
|
|
114
|
-
const forms = drift.forms.filter((form) => form.slug === slug);
|
|
115
|
-
if (forms.length === 0) {
|
|
116
|
-
return drift.checkedAt === null ? [
|
|
117
|
-
"This Form's destination has never been checked, so nothing here says it is healthy \u2014 only that nothing was compared."
|
|
118
|
-
] : [];
|
|
119
|
-
}
|
|
120
|
-
return forms.flatMap((form) => {
|
|
121
|
-
const repair = driftRepairHint(slug, form.formGuid, form.deadFields, form.sideEffectId);
|
|
122
|
-
return [`DESTINATION DRIFT (${form.severity}): ${form.summary}`, ...repair === null ? [] : [repair]];
|
|
123
|
-
});
|
|
124
|
-
}
|
|
125
|
-
function displayName(slug) {
|
|
126
|
-
const tree = readFlowTree(slug);
|
|
127
|
-
const name = tree.displayName;
|
|
128
|
-
return typeof name === "string" && name.trim() ? name.trim() : slug;
|
|
129
|
-
}
|
|
130
|
-
var listCommand = defineCommand({
|
|
131
|
-
meta: {
|
|
132
|
-
name: "list",
|
|
133
|
-
description: "List Forms in this workspace with the count of confidential fields still needing setup. Example: baker flows list"
|
|
134
|
-
},
|
|
135
|
-
run: () => {
|
|
136
|
-
const flows = listFlowSlugs().map((slug) => ({
|
|
137
|
-
slug,
|
|
138
|
-
name: displayName(slug),
|
|
139
|
-
needsConfig: statusFor(slug).filter((c) => c.needsInput).length
|
|
140
|
-
}));
|
|
141
|
-
const pending = flows.filter((flow) => flow.needsConfig > 0);
|
|
142
|
-
writeJson({
|
|
143
|
-
ok: true,
|
|
144
|
-
data: { flows },
|
|
145
|
-
hints: [
|
|
146
|
-
...pending.length > 0 ? [
|
|
147
|
-
`Still waiting on the user: ${pending.map((flow) => `${flow.slug} (${flow.needsConfig})`).join(", ")}. \`baker flows show <slug>\` returns the request_flow_input call for each.`
|
|
148
|
-
] : [],
|
|
149
|
-
// "Set the conversions on the Forms" lands here first, and nothing in
|
|
150
|
-
// this family can do it — the conversion side effects it does offer
|
|
151
|
-
// fire a pixel and are not what any Baker report counts.
|
|
152
|
-
"Setting what a Form COUNTS is not in this family: a conversion is a named event held in Baker. `baker analytics conversions` lists what this company counts; `--flow <slug>` spells one Form's endings as keys you can count, traffic or no traffic."
|
|
153
|
-
]
|
|
154
|
-
});
|
|
155
|
-
}
|
|
156
|
-
});
|
|
157
|
-
var showCommand = defineCommand({
|
|
158
|
-
meta: {
|
|
159
|
-
name: "show",
|
|
160
|
-
description: "Show a Form's confidential fields and their configuration status (never secret values). Example: baker flows show contact"
|
|
161
|
-
},
|
|
162
|
-
args: {
|
|
163
|
-
slug: { type: "positional", description: "Form slug", required: true },
|
|
164
|
-
full: { type: "boolean", description: "Include the full flow tree (secret values redacted)" }
|
|
165
|
-
},
|
|
166
|
-
run: async ({ args }) => {
|
|
167
|
-
const slug = String(args.slug);
|
|
168
|
-
const config = statusFor(slug);
|
|
169
|
-
const tree = readFlowTree(slug);
|
|
170
|
-
const drift = await readDrift(slug);
|
|
171
|
-
const response = {
|
|
172
|
-
slug,
|
|
173
|
-
name: displayName(slug),
|
|
174
|
-
config,
|
|
175
|
-
drift: drift === null ? null : drift.forms.filter((form) => form.slug === slug),
|
|
176
|
-
...drift === null ? {} : { driftCheckedAt: drift.checkedAt },
|
|
177
|
-
...args.full === true ? { tree: redactTree(tree) } : {}
|
|
178
|
-
};
|
|
179
|
-
writeJson({
|
|
180
|
-
ok: true,
|
|
181
|
-
data: response,
|
|
182
|
-
// Drift first, above everything. The other hints are about work still to
|
|
183
|
-
// do; this one is about leads already being lost, and it is the only
|
|
184
|
-
// thing here that is true of a Form that looks completely finished.
|
|
185
|
-
hints: [
|
|
186
|
-
...driftHints(slug, drift),
|
|
187
|
-
...inertSideEffectHints(tree),
|
|
188
|
-
...pendingInputHints(slug, config),
|
|
189
|
-
// The question this command is asked — "is this Form wired up?" — has
|
|
190
|
-
// an answer that is not in this file at all. What a Form counts is a
|
|
191
|
-
// named event in Baker, and a Form can be perfectly configured, fire
|
|
192
|
-
// every pixel it has, and still report converting nobody.
|
|
193
|
-
`What this Form counts as a conversion is NOT in _data.json and not in any side effect here: it is a named event held in Baker. Read it, and this Form's own endings spelled as event keys, with \`baker analytics conversions --flow ${slug}\`.`,
|
|
194
|
-
funnelPlacementHint(slug)
|
|
195
|
-
]
|
|
196
|
-
});
|
|
197
|
-
}
|
|
198
|
-
});
|
|
199
|
-
var flowsCommand = defineCommand({
|
|
200
|
-
meta: {
|
|
201
|
-
name: "flows",
|
|
202
|
-
description: `Read and shape this workspace's Forms (flows).
|
|
203
|
-
|
|
204
|
-
Reads never reveal a secret value. Writes touch only the form's own _data.json \u2014 they stage structure, never a live system.
|
|
205
|
-
|
|
206
|
-
Wire a connected platform yourself once you know which resource is meant \u2014 no card for the user: \`baker flows options <kind>\` lists what the account holds, \`baker flows connect\` writes it (Calendly, SavvyCal, GoHighLevel steps; Google Sheets, Pipedrive, GoHighLevel and HubSpot destinations; \`--same-as\` copies another Form's). A HubSpot step takes \`baker hubspot forms view <id> --as-node\`. Anything sealed is written sealed; you never see a secret.
|
|
207
|
-
|
|
208
|
-
The request_flow_input tool (baker_ui MCP server) is the fallback: typed secrets (webhooks, Zapier, Crmble), a platform nobody connected, the user's own existing spreadsheet, or several resources that could be meant.
|
|
209
|
-
|
|
210
|
-
Examples:
|
|
211
|
-
baker flows list # every Form + how many fields still need setup
|
|
212
|
-
baker flows show contact # one Form's confidential fields and their status
|
|
213
|
-
baker flows schema node customForm # the shape of a step, before you author one
|
|
214
|
-
baker flows add-node contact --type text --name "Thanks"
|
|
215
|
-
baker flows add-side-effect contact --node <id> --type googleSpreadsheet
|
|
216
|
-
baker flows options calendly # what the connected account holds
|
|
217
|
-
baker flows connect contact --node book --resource <id>
|
|
218
|
-
baker flows connect contact --side-effect se-hubspotForm-1 --hubspot-form <formId> # --all: every unwired one
|
|
219
|
-
baker flows map contact --map A=name --map B=email --write
|
|
220
|
-
Full guide: __tooling__/docs/tools/baker/flows.md`
|
|
221
|
-
},
|
|
222
|
-
subCommands: {
|
|
223
|
-
list: listCommand,
|
|
224
|
-
show: showCommand,
|
|
225
|
-
schema: () => import("./schema-SOPL6GJP.js").then((m) => m.schemaCommand),
|
|
226
|
-
"add-node": () => import("./add-VZAY57M4.js").then((m) => m.addNodeCommand),
|
|
227
|
-
"add-side-effect": () => import("./add-VZAY57M4.js").then((m) => m.addSideEffectCommand),
|
|
228
|
-
options: () => import("./options-V7C6CU6M.js").then((m) => m.optionsCommand),
|
|
229
|
-
connect: () => import("./connect-OJSOM6PY.js").then((m) => m.connectCommand),
|
|
230
|
-
map: () => import("./map-BW4CHSIO.js").then((m) => m.mapCommand),
|
|
231
|
-
normalize: () => import("./normalize-IVQ7I54Z.js").then((m) => m.normalizeCommand)
|
|
232
|
-
},
|
|
233
|
-
// Bare `baker flows` lists the Forms. This must be `default`, not `run`: citty falls
|
|
234
|
-
// through to `run` after dispatching a subcommand, so a `run` here would also print
|
|
235
|
-
// the list on every `baker flows show <slug>`.
|
|
236
|
-
default: "list"
|
|
237
|
-
});
|
|
238
|
-
export {
|
|
239
|
-
driftHints,
|
|
240
|
-
flowsCommand,
|
|
241
|
-
funnelPlacementHint,
|
|
242
|
-
inertSideEffectHints
|
|
243
|
-
};
|
|
244
|
-
//# sourceMappingURL=flows-OGGSWWGT.js.map
|
package/dist/follow-DUIEGDVK.js
DELETED
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
reportError
|
|
3
|
-
} from "./chunk-LERTEZST.js";
|
|
4
|
-
import {
|
|
5
|
-
adLibraryPlatformSchema
|
|
6
|
-
} from "./chunk-WYCVJIHD.js";
|
|
7
|
-
import {
|
|
8
|
-
apiPost
|
|
9
|
-
} from "./chunk-XBOK23HI.js";
|
|
10
|
-
import "./chunk-IFWP3ZDO.js";
|
|
11
|
-
import "./chunk-NAWWC5I3.js";
|
|
12
|
-
import {
|
|
13
|
-
registerSchema,
|
|
14
|
-
writeJson
|
|
15
|
-
} from "./chunk-NU7JSWVA.js";
|
|
16
|
-
import "./chunk-YQSBHWOI.js";
|
|
17
|
-
|
|
18
|
-
// src/commands/winning-ads/follow.ts
|
|
19
|
-
import { defineCommand } from "citty";
|
|
20
|
-
var PLATFORMS = adLibraryPlatformSchema.options;
|
|
21
|
-
registerSchema({
|
|
22
|
-
command: "winning-ads.follow",
|
|
23
|
-
description: "Follow a brand so ALL its ads join your library \u2014 every platform (Meta, LinkedIn, TikTok) and every country. Pass a domain (best \u2014 resolves both platforms), an ad-library / profile URL, or a brand name. --platform tells us how to read your input; it does NOT limit what we track. Already-in-corpus brands are subscribed instantly; new brands are queued for ingestion.",
|
|
24
|
-
args: {
|
|
25
|
-
input: { type: "string", description: "Domain (best), profile/ad-library URL, or brand name", required: true },
|
|
26
|
-
platform: {
|
|
27
|
-
type: "string",
|
|
28
|
-
description: "meta|linkedin|tiktok \u2014 how to read the input, not a tracking limit. We track every platform we can resolve.",
|
|
29
|
-
required: true
|
|
30
|
-
},
|
|
31
|
-
label: { type: "string", description: "Optional display label (defaults to the resolved name)", required: false }
|
|
32
|
-
}
|
|
33
|
-
});
|
|
34
|
-
var followCommand = defineCommand({
|
|
35
|
-
meta: {
|
|
36
|
-
name: "follow",
|
|
37
|
-
description: 'Follow a brand to track ALL its ads \u2014 every platform and country. --platform is how we read your input, not a limit. A domain tracks every platform we can resolve. Example: baker winning-ads follow "deel.com" --platform meta'
|
|
38
|
-
},
|
|
39
|
-
args: {
|
|
40
|
-
input: { type: "positional", description: "Domain (best), profile/ad-library URL, or brand name", required: true },
|
|
41
|
-
platform: {
|
|
42
|
-
type: "string",
|
|
43
|
-
description: "meta|linkedin|tiktok \u2014 how to read the input, not a tracking limit.",
|
|
44
|
-
required: true
|
|
45
|
-
},
|
|
46
|
-
label: { type: "string", description: "Optional display label", required: false }
|
|
47
|
-
},
|
|
48
|
-
run: async ({ args }) => {
|
|
49
|
-
try {
|
|
50
|
-
const platform = String(args.platform ?? "");
|
|
51
|
-
if (!PLATFORMS.includes(platform)) {
|
|
52
|
-
writeJson({
|
|
53
|
-
ok: false,
|
|
54
|
-
error: { code: "VALIDATION_ERROR", message: "--platform must be one of: meta, linkedin, tiktok" }
|
|
55
|
-
});
|
|
56
|
-
process.exit(1);
|
|
57
|
-
}
|
|
58
|
-
const body = { input: String(args.input), platform };
|
|
59
|
-
if (args.label) {
|
|
60
|
-
body.label = String(args.label);
|
|
61
|
-
}
|
|
62
|
-
const data = await apiPost("/api/ad-library/follow", body);
|
|
63
|
-
let hints;
|
|
64
|
-
if (data.status === "added") {
|
|
65
|
-
hints = [
|
|
66
|
-
"This brand is new \u2014 we're adding every ad we can find across all platforms and countries. They appear as ingestion completes; check `baker winning-ads following`."
|
|
67
|
-
];
|
|
68
|
-
} else if (data.status === "ambiguous") {
|
|
69
|
-
hints = [
|
|
70
|
-
"Multiple brands matched. Pick one from `candidates` and re-run `follow` with its exact domain/URL, or follow the specific advertiser id."
|
|
71
|
-
];
|
|
72
|
-
}
|
|
73
|
-
writeJson({ ok: true, data, hints });
|
|
74
|
-
} catch (err) {
|
|
75
|
-
reportError(err);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
});
|
|
79
|
-
export {
|
|
80
|
-
followCommand
|
|
81
|
-
};
|
|
82
|
-
//# sourceMappingURL=follow-DUIEGDVK.js.map
|