@mastra/deployer-cloud 0.0.0-stream-vnext-usage-20250908171242 → 0.0.0-testing-cloud-studios-20260114234039
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/CHANGELOG.md +864 -5
- package/README.md +3 -5
- package/dist/index.cjs +85 -82
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +7 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +85 -82
- package/dist/index.js.map +1 -1
- package/dist/playground/assets/GeistMonoVF-BHyMa335.woff +0 -0
- package/dist/playground/assets/InterVariable-H_M6nIbt.ttf +0 -0
- package/dist/playground/assets/TASAExplorerVF-FO8P5krV.woff2 +0 -0
- package/dist/playground/assets/abap-BoqbsvLM.js +1 -0
- package/dist/playground/assets/abap-DsBKuouk.js +1 -0
- package/dist/playground/assets/abnf-CwDcVPue.js +1 -0
- package/dist/playground/assets/actionscript-3-D_z4Izcz.js +1 -0
- package/dist/playground/assets/actionscript-CQHNg1bn.js +1 -0
- package/dist/playground/assets/ada-727ZlQH0.js +1 -0
- package/dist/playground/assets/ada-_v2TqyiK.js +1 -0
- package/dist/playground/assets/agda-DA7Q-eRH.js +1 -0
- package/dist/playground/assets/al-BoGRGBBo.js +1 -0
- package/dist/playground/assets/andromeeda-C3khCPGq.js +1 -0
- package/dist/playground/assets/angular-html-LfdN0zeE.js +1 -0
- package/dist/playground/assets/angular-ts-CKsD7JZE.js +1 -0
- package/dist/playground/assets/antlr4-BOOD3fWR.js +1 -0
- package/dist/playground/assets/apache-Dn00JSTd.js +1 -0
- package/dist/playground/assets/apacheconf-CcV3RsSB.js +1 -0
- package/dist/playground/assets/apex-COJ4H7py.js +1 -0
- package/dist/playground/assets/apex-PEefsrzO.js +1 -0
- package/dist/playground/assets/apl-B4CMkyY2.js +1 -0
- package/dist/playground/assets/apl-BBq3IX1j.js +1 -0
- package/dist/playground/assets/apl-DNA2YTAZ.js +1 -0
- package/dist/playground/assets/applescript-Bu5BbsvL.js +1 -0
- package/dist/playground/assets/applescript-Dpmu8hnf.js +1 -0
- package/dist/playground/assets/aql-Hc-WgXpX.js +1 -0
- package/dist/playground/assets/ara-7O62HKoU.js +1 -0
- package/dist/playground/assets/arduino-Bp-zcKEw.js +1 -0
- package/dist/playground/assets/arff-Du7WHVy_.js +1 -0
- package/dist/playground/assets/asciiarmor-Df11BRmG.js +1 -0
- package/dist/playground/assets/asciidoc-BA2dSie1.js +1 -0
- package/dist/playground/assets/asciidoc-BPT9niGB.js +1 -0
- package/dist/playground/assets/asm-Dhn9LcZ4.js +1 -0
- package/dist/playground/assets/asm6502-CmzrmzAs.js +1 -0
- package/dist/playground/assets/asmatmel-Df1OBh7B.js +1 -0
- package/dist/playground/assets/asn1-EdZsLKOL.js +1 -0
- package/dist/playground/assets/aspnet-Cr-dRCrA.js +1 -0
- package/dist/playground/assets/asterisk-B-8jnY81.js +1 -0
- package/dist/playground/assets/astro-CqkE3fuf.js +1 -0
- package/dist/playground/assets/aurora-x-D-2ljcwZ.js +1 -0
- package/dist/playground/assets/autohotkey-DJRbIYKu.js +1 -0
- package/dist/playground/assets/autoit-DgsrTEf7.js +1 -0
- package/dist/playground/assets/avisynth-DUNkTGMd.js +1 -0
- package/dist/playground/assets/avro-idl-PaD_NXoV.js +1 -0
- package/dist/playground/assets/awk-eg146-Ew.js +1 -0
- package/dist/playground/assets/ayu-dark-Cv9koXgw.js +1 -0
- package/dist/playground/assets/ballerina-Du268qiB.js +1 -0
- package/dist/playground/assets/bash-CefCgV5_.js +1 -0
- package/dist/playground/assets/bash-DIziVO5F.js +1 -0
- package/dist/playground/assets/basic-BoQNbrIY.js +1 -0
- package/dist/playground/assets/basic-DBS9NaGG.js +1 -0
- package/dist/playground/assets/bat-fje9CFhw.js +1 -0
- package/dist/playground/assets/batch-JkvpBscB.js +1 -0
- package/dist/playground/assets/bbcode-DxED2x-H.js +1 -0
- package/dist/playground/assets/beancount-BwXTMy5W.js +1 -0
- package/dist/playground/assets/berry-3xVqZejG.js +1 -0
- package/dist/playground/assets/bibtex-xW4inM5L.js +1 -0
- package/dist/playground/assets/bicep-DCGEFVAn.js +1 -0
- package/dist/playground/assets/bicep-DHo0CJ0O.js +1 -0
- package/dist/playground/assets/birb-CwR-z46B.js +1 -0
- package/dist/playground/assets/bison-DZYo0Z3n.js +1 -0
- package/dist/playground/assets/blade-a8OxSdnT.js +1 -0
- package/dist/playground/assets/bnf-DWxb1NVs.js +1 -0
- package/dist/playground/assets/brainfuck-C4LP7Hcl.js +1 -0
- package/dist/playground/assets/brainfuck-CyruRLSA.js +1 -0
- package/dist/playground/assets/brightscript-MF5md4l2.js +1 -0
- package/dist/playground/assets/bro-DT9X93oO.js +1 -0
- package/dist/playground/assets/bsl-B8SZvl4c.js +1 -0
- package/dist/playground/assets/bsl-Dgyn0ogV.js +1 -0
- package/dist/playground/assets/c-C3t2pwGQ.js +1 -0
- package/dist/playground/assets/c-C6PyiLYI.js +1 -0
- package/dist/playground/assets/c-kgVuzdLE.js +1 -0
- package/dist/playground/assets/cadence-DNquZEk8.js +1 -0
- package/dist/playground/assets/cairo--RitsXJZ.js +1 -0
- package/dist/playground/assets/catppuccin-frappe-CD_QflpE.js +1 -0
- package/dist/playground/assets/catppuccin-latte-DRW-0cLl.js +1 -0
- package/dist/playground/assets/catppuccin-macchiato-C-_shW-Y.js +1 -0
- package/dist/playground/assets/catppuccin-mocha-LGGdnPYs.js +1 -0
- package/dist/playground/assets/cfscript-BsjYmzaC.js +1 -0
- package/dist/playground/assets/chaiscript-IoGpMlm1.js +1 -0
- package/dist/playground/assets/chunk-55VPMN3N-BuAJ8n05-CQP9_FDp.js +1 -0
- package/dist/playground/assets/chunk-55VPMN3N-jBHuGsdQ.js +1 -0
- package/dist/playground/assets/cil-BuD0fAnv.js +1 -0
- package/dist/playground/assets/clarity-BHOwM8T6.js +1 -0
- package/dist/playground/assets/clike-B5tY_8Hg.js +1 -0
- package/dist/playground/assets/clike-B9uivgTg.js +1 -0
- package/dist/playground/assets/clike-Be0r7JdS.js +1 -0
- package/dist/playground/assets/clojure-BMjYHr_A.js +1 -0
- package/dist/playground/assets/clojure-BkjDv4ow.js +1 -0
- package/dist/playground/assets/clojure-DxSadP1t.js +1 -0
- package/dist/playground/assets/cmake-BQqOBYOt.js +1 -0
- package/dist/playground/assets/cmake-DbXoA79R.js +1 -0
- package/dist/playground/assets/cmake-QXxM5rcB.js +1 -0
- package/dist/playground/assets/cobol-CWcv1MsR.js +1 -0
- package/dist/playground/assets/cobol-DffpiD93.js +1 -0
- package/dist/playground/assets/cobol-PTqiYgYu.js +1 -0
- package/dist/playground/assets/codeowners-Bp6g37R7.js +1 -0
- package/dist/playground/assets/codeql-sacFqUAJ.js +1 -0
- package/dist/playground/assets/coffee-dyiR41kL.js +1 -0
- package/dist/playground/assets/coffeescript-DyoFcduS.js +1 -0
- package/dist/playground/assets/coffeescript-S37ZYGWr.js +1 -0
- package/dist/playground/assets/common-lisp-C7gG9l05.js +1 -0
- package/dist/playground/assets/commonlisp-DBKNyK5s.js +1 -0
- package/dist/playground/assets/concurnas-Ba2Top3X.js +1 -0
- package/dist/playground/assets/coq-DSCNe2hY.js +1 -0
- package/dist/playground/assets/coq-Dsg_Bt_b.js +1 -0
- package/dist/playground/assets/core-Ccmh9AJn.js +1 -0
- package/dist/playground/assets/cpp-BdJVwJpi.js +1 -0
- package/dist/playground/assets/cpp-BksuvNSY.js +1 -0
- package/dist/playground/assets/cpp-CW3j5YPu.js +1 -0
- package/dist/playground/assets/crystal-6KKmtNEL.js +1 -0
- package/dist/playground/assets/crystal-DtDmRg-F.js +1 -0
- package/dist/playground/assets/crystal-SjHAIU92.js +1 -0
- package/dist/playground/assets/csharp-BA2xIqyC.js +1 -0
- package/dist/playground/assets/csharp-Cd5Udg29.js +1 -0
- package/dist/playground/assets/csharp-D9R-vmeu.js +1 -0
- package/dist/playground/assets/cshtml-fRKvrFrs.js +1 -0
- package/dist/playground/assets/csp-NDGsc5bV.js +1 -0
- package/dist/playground/assets/css-BPhBrDlE.js +1 -0
- package/dist/playground/assets/css-BnMrqG3P.js +1 -0
- package/dist/playground/assets/css-CF9HHZb0.js +1 -0
- package/dist/playground/assets/css-DpA9aLEG.js +1 -0
- package/dist/playground/assets/css-extras-Dw50lWQa.js +1 -0
- package/dist/playground/assets/csv-AcC43kRa.js +1 -0
- package/dist/playground/assets/csv-B0qRVHPH.js +1 -0
- package/dist/playground/assets/cue-DtFQj3wx.js +1 -0
- package/dist/playground/assets/cypher-C_CwsFkJ.js +1 -0
- package/dist/playground/assets/cypher-D5hvfn9V.js +1 -0
- package/dist/playground/assets/cypher-m2LEI-9-.js +1 -0
- package/dist/playground/assets/d-9ge0NX4U.js +1 -0
- package/dist/playground/assets/d-BoXegm-a.js +1 -0
- package/dist/playground/assets/d-pRatUO7H.js +1 -0
- package/dist/playground/assets/dark-plus-C3mMm8J8.js +1 -0
- package/dist/playground/assets/dart-B9wLZaAG.js +1 -0
- package/dist/playground/assets/dart-CXCIoy6h.js +1 -0
- package/dist/playground/assets/dataweave-DR91Wb0Z.js +1 -0
- package/dist/playground/assets/dax-ClGRhx96.js +1 -0
- package/dist/playground/assets/dax-DZJM2EHa.js +1 -0
- package/dist/playground/assets/desktop-DEIpsLCJ.js +1 -0
- package/dist/playground/assets/dhall-BN94kDkG.js +1 -0
- package/dist/playground/assets/diff-2VWiyE-Y.js +3 -0
- package/dist/playground/assets/diff-BgYniUM_.js +1 -0
- package/dist/playground/assets/diff-DbItnlRl.js +1 -0
- package/dist/playground/assets/django-C1xrNR2A.js +1 -0
- package/dist/playground/assets/dns-zone-file-Cj479sFT.js +1 -0
- package/dist/playground/assets/docker-COcR7UxN.js +1 -0
- package/dist/playground/assets/docker-Dh5RaSy2.js +1 -0
- package/dist/playground/assets/dockerfile-BKs6k2Af.js +1 -0
- package/dist/playground/assets/dot-Ci5Z5GLn.js +1 -0
- package/dist/playground/assets/dotenv-BjQB5zDj.js +1 -0
- package/dist/playground/assets/dracula-BzJJZx-M.js +1 -0
- package/dist/playground/assets/dracula-soft-BXkSAIEj.js +1 -0
- package/dist/playground/assets/dream-maker-C-nORZOA.js +1 -0
- package/dist/playground/assets/dtd-DF_7sFjM.js +1 -0
- package/dist/playground/assets/dylan-DwRh75JA.js +1 -0
- package/dist/playground/assets/ebnf-BTqY7UPN.js +1 -0
- package/dist/playground/assets/ebnf-CDyGwa7X.js +1 -0
- package/dist/playground/assets/ecl-Cabwm37j.js +1 -0
- package/dist/playground/assets/edge-D5gP-w-T.js +1 -0
- package/dist/playground/assets/editorconfig-C4Pk9QVK.js +1 -0
- package/dist/playground/assets/eiffel-CnydiIhH.js +1 -0
- package/dist/playground/assets/eiffel-DMwyIk09.js +1 -0
- package/dist/playground/assets/ejs-CdTjqX3r.js +1 -0
- package/dist/playground/assets/elixir-CLiX3zqd.js +1 -0
- package/dist/playground/assets/elixir-hrSCn8gQ.js +1 -0
- package/dist/playground/assets/elm-CmHSxxaM.js +1 -0
- package/dist/playground/assets/elm-DGPiXias.js +1 -0
- package/dist/playground/assets/elm-vLlmbW-K.js +1 -0
- package/dist/playground/assets/emacs-lisp-BX77sIaO.js +1 -0
- package/dist/playground/assets/erb-BYTLMnw6.js +1 -0
- package/dist/playground/assets/erb-qivyB3oV.js +1 -0
- package/dist/playground/assets/erlang-B-DoSBHF.js +1 -0
- package/dist/playground/assets/erlang-BNw1qcRV.js +1 -0
- package/dist/playground/assets/erlang-xoHUmbiH.js +1 -0
- package/dist/playground/assets/etlua-DmNCKy0R.js +1 -0
- package/dist/playground/assets/everforest-dark-BgDCqdQA.js +1 -0
- package/dist/playground/assets/everforest-light-C8M2exoo.js +1 -0
- package/dist/playground/assets/excel-formula-DOGKI81c.js +1 -0
- package/dist/playground/assets/factor-ByUumn2r.js +1 -0
- package/dist/playground/assets/factor-kuTfRLto.js +1 -0
- package/dist/playground/assets/false-Bdy8oW05.js +1 -0
- package/dist/playground/assets/fcl-Kvtd6kyn.js +1 -0
- package/dist/playground/assets/fennel-bCA53EVm.js +1 -0
- package/dist/playground/assets/firestore-security-rules-DPo0zewj.js +1 -0
- package/dist/playground/assets/fish-w-ucz2PV.js +1 -0
- package/dist/playground/assets/flow-DhfG6VqP.js +1 -0
- package/dist/playground/assets/fluent-Dayu4EKP.js +1 -0
- package/dist/playground/assets/forth-Ffai-XNe.js +1 -0
- package/dist/playground/assets/fortran-DE3G8_wd.js +1 -0
- package/dist/playground/assets/fortran-DYz_wnZ1.js +1 -0
- package/dist/playground/assets/fortran-fixed-form-TqA4NnZg.js +1 -0
- package/dist/playground/assets/fortran-free-form-DKXYxT9g.js +1 -0
- package/dist/playground/assets/fsharp-CtmFmbdH.js +1 -0
- package/dist/playground/assets/fsharp-XplgxFYe.js +1 -0
- package/dist/playground/assets/ftl-D9yNi6xB.js +1 -0
- package/dist/playground/assets/gap-CeON3f5N.js +1 -0
- package/dist/playground/assets/gas-Bneqetm1.js +1 -0
- package/dist/playground/assets/gcode-DS60BhiY.js +1 -0
- package/dist/playground/assets/gdresource-BHYsBjWJ.js +1 -0
- package/dist/playground/assets/gdscript-DCLuPlXW.js +1 -0
- package/dist/playground/assets/gdscript-DfxzS6Rs.js +1 -0
- package/dist/playground/assets/gdshader-SKMF96pI.js +1 -0
- package/dist/playground/assets/gedcom-CDy9_Ekm.js +1 -0
- package/dist/playground/assets/genie-ajMbGru0.js +1 -0
- package/dist/playground/assets/gherkin--30QC5Em.js +1 -0
- package/dist/playground/assets/gherkin-BdlAWJ9g.js +1 -0
- package/dist/playground/assets/gherkin-heZmZLOM.js +1 -0
- package/dist/playground/assets/git-commit-i4q6IMui.js +1 -0
- package/dist/playground/assets/git-gS_wpzpF.js +1 -0
- package/dist/playground/assets/git-rebase-B-v9cOL2.js +1 -0
- package/dist/playground/assets/github-dark-DHJKELXO.js +1 -0
- package/dist/playground/assets/github-dark-default-Cuk6v7N8.js +1 -0
- package/dist/playground/assets/github-dark-dimmed-DH5Ifo-i.js +1 -0
- package/dist/playground/assets/github-dark-high-contrast-E3gJ1_iC.js +1 -0
- package/dist/playground/assets/github-light-DAi9KRSo.js +1 -0
- package/dist/playground/assets/github-light-default-D7oLnXFd.js +1 -0
- package/dist/playground/assets/github-light-high-contrast-BfjtVDDH.js +1 -0
- package/dist/playground/assets/gleam-B430Bg39.js +1 -0
- package/dist/playground/assets/glimmer-js-D-cwc0-E.js +1 -0
- package/dist/playground/assets/glimmer-ts-pgjy16dm.js +1 -0
- package/dist/playground/assets/glsl-DBO2IWDn.js +1 -0
- package/dist/playground/assets/glsl-tEPjjanl.js +1 -0
- package/dist/playground/assets/gml-DboOcTdr.js +1 -0
- package/dist/playground/assets/gn-QF-wedsJ.js +1 -0
- package/dist/playground/assets/gnuplot-CM8KxXT1.js +1 -0
- package/dist/playground/assets/go-B1SYOhNW.js +1 -0
- package/dist/playground/assets/go-DCKaQjzI.js +1 -0
- package/dist/playground/assets/go-module-CxYgsq3n.js +1 -0
- package/dist/playground/assets/graphql-BQZAD9s3.js +1 -0
- package/dist/playground/assets/graphql-cDcHW_If.js +1 -0
- package/dist/playground/assets/groovy-B5FN9_RC.js +1 -0
- package/dist/playground/assets/groovy-D9Dt4D0W.js +1 -0
- package/dist/playground/assets/groovy-DkBy-JyN.js +1 -0
- package/dist/playground/assets/hack-D1yCygmZ.js +1 -0
- package/dist/playground/assets/haml-B2EZWmdv.js +1 -0
- package/dist/playground/assets/haml-DXpVodL4.js +1 -0
- package/dist/playground/assets/handlebars-B69Gg8RN.js +1 -0
- package/dist/playground/assets/handlebars-BQGss363.js +1 -0
- package/dist/playground/assets/haskell-BILxekzW.js +1 -0
- package/dist/playground/assets/haskell-Cto_DjvQ.js +1 -0
- package/dist/playground/assets/haskell-Cw1EW3IL.js +1 -0
- package/dist/playground/assets/haskell-Ds42Eazu.js +1 -0
- package/dist/playground/assets/haxe-C5wWYbrZ.js +1 -0
- package/dist/playground/assets/haxe-CtM09cmI.js +1 -0
- package/dist/playground/assets/haxe-H-WmDvRZ.js +1 -0
- package/dist/playground/assets/hcl-BBGZJ9Ow.js +1 -0
- package/dist/playground/assets/hcl-HzYwdGDm.js +1 -0
- package/dist/playground/assets/hjson-T-Tgc4AT.js +1 -0
- package/dist/playground/assets/hlsl-C5rLdD8B.js +1 -0
- package/dist/playground/assets/hlsl-ifBTmRxC.js +1 -0
- package/dist/playground/assets/hoon-D5-XiYej.js +1 -0
- package/dist/playground/assets/houston-DnULxvSX.js +1 -0
- package/dist/playground/assets/hpkp-C6UZ_8CQ.js +1 -0
- package/dist/playground/assets/hsts-CRl-9OcP.js +1 -0
- package/dist/playground/assets/html-C2L_23MC.js +1 -0
- package/dist/playground/assets/html-derivative-CSfWNPLT.js +1 -0
- package/dist/playground/assets/http-DBlCnlav.js +1 -0
- package/dist/playground/assets/http-Dm8Ne7J7.js +1 -0
- package/dist/playground/assets/http-FRrOvY1W.js +1 -0
- package/dist/playground/assets/hxml-TIA70rKU.js +1 -0
- package/dist/playground/assets/hy-BMj5Y0dO.js +1 -0
- package/dist/playground/assets/ichigojam-BJQJdtkZ.js +1 -0
- package/dist/playground/assets/icon-dQIBb9XF.js +1 -0
- package/dist/playground/assets/icu-message-format-CAlq58tr.js +1 -0
- package/dist/playground/assets/idl-BEugSyMb.js +1 -0
- package/dist/playground/assets/idris-jJL3iM1e.js +1 -0
- package/dist/playground/assets/iecst-1cwq23dt.js +1 -0
- package/dist/playground/assets/ignore-B-Arbp2r.js +1 -0
- package/dist/playground/assets/imba-bv_oIlVt.js +1 -0
- package/dist/playground/assets/index-BFDOxmQX.js +2 -0
- package/dist/playground/assets/index-Be3MKAGA.js +1 -0
- package/dist/playground/assets/index-Biu7pL8o.js +1 -0
- package/dist/playground/assets/index-BsyGuRl4.js +1 -0
- package/dist/playground/assets/index-C-zNUznH.js +3 -0
- package/dist/playground/assets/index-C1OzXW5i-yUiD89B4.js +1 -0
- package/dist/playground/assets/index-CgqLBptB.js +1 -0
- package/dist/playground/assets/index-DFFSVmYr.js +1 -0
- package/dist/playground/assets/index-DQySKReo.js +1 -0
- package/dist/playground/assets/index-DUJBjjqp.js +7 -0
- package/dist/playground/assets/index-DVJs8YtR.js +13 -0
- package/dist/playground/assets/index-Dn7tOwSt.js +1 -0
- package/dist/playground/assets/index-DpjIvv1C.js +1 -0
- package/dist/playground/assets/index-Kmt5ihm_.js +1 -0
- package/dist/playground/assets/index-OeDOZGuP.js +1 -0
- package/dist/playground/assets/index-V-2pBAYw.js +1 -0
- package/dist/playground/assets/index-aDxidveC.js +1 -0
- package/dist/playground/assets/index-dNerPbXp.js +1 -0
- package/dist/playground/assets/index-nM-wZeWS.js +1 -0
- package/dist/playground/assets/index-yUiD89B4.js +1 -0
- package/dist/playground/assets/inform7-BleXN3OI.js +1 -0
- package/dist/playground/assets/ini-BjABl1g7.js +1 -0
- package/dist/playground/assets/ini-EoV4cgfp.js +1 -0
- package/dist/playground/assets/io-CGNdtIig.js +1 -0
- package/dist/playground/assets/j-BVWFJXmJ.js +1 -0
- package/dist/playground/assets/java-BxMbkJZ_.js +1 -0
- package/dist/playground/assets/java-COdnSWu1.js +1 -0
- package/dist/playground/assets/java-xI-RfyKK.js +1 -0
- package/dist/playground/assets/javadoc-CQ1YaYss.js +1 -0
- package/dist/playground/assets/javadoclike-CPc5ALwr.js +1 -0
- package/dist/playground/assets/javadoclike-myFApC35.js +1 -0
- package/dist/playground/assets/javascript-BTyoKm82.js +1 -0
- package/dist/playground/assets/javascript-D8vYUPHd.js +1 -0
- package/dist/playground/assets/javascript-iXu5QeM3.js +1 -0
- package/dist/playground/assets/javascript-ySlJ1b_l.js +1 -0
- package/dist/playground/assets/javastacktrace-BYWxbGtC.js +1 -0
- package/dist/playground/assets/jexl-DAuF402S.js +1 -0
- package/dist/playground/assets/jinja-DGy0s7-h.js +1 -0
- package/dist/playground/assets/jison-BqZprYcd.js +1 -0
- package/dist/playground/assets/jolie-Dn5rGXVY.js +1 -0
- package/dist/playground/assets/jq-DtqjAQx5.js +1 -0
- package/dist/playground/assets/js-extras-CtR7X1Yl.js +1 -0
- package/dist/playground/assets/js-templates-_CeAgEhY.js +1 -0
- package/dist/playground/assets/jsdoc-c5Yajq3l.js +1 -0
- package/dist/playground/assets/json-BESjz4hO.js +1 -0
- package/dist/playground/assets/json-BQoSv7ci.js +1 -0
- package/dist/playground/assets/json-NruzPn4S.js +1 -0
- package/dist/playground/assets/json5-Cb-iBtVr.js +1 -0
- package/dist/playground/assets/json5-w8dY5SsB.js +1 -0
- package/dist/playground/assets/jsonc-TU54ms6u.js +1 -0
- package/dist/playground/assets/jsonl-DREVFZK8.js +1 -0
- package/dist/playground/assets/jsonnet-BfivnA6A.js +1 -0
- package/dist/playground/assets/jsonp-BzqSRewr.js +1 -0
- package/dist/playground/assets/jssm-P4WzXJd0.js +1 -0
- package/dist/playground/assets/jsstacktrace-B1_MHrtD.js +1 -0
- package/dist/playground/assets/jsx-BAng5TT0.js +1 -0
- package/dist/playground/assets/jsx-CWP8P1mH.js +1 -0
- package/dist/playground/assets/jsx-Dvg11yKy.js +1 -0
- package/dist/playground/assets/julia-BBuGR-5E.js +1 -0
- package/dist/playground/assets/julia-DqaXGIhb.js +1 -0
- package/dist/playground/assets/julia-DuME0IfC.js +1 -0
- package/dist/playground/assets/kanagawa-dragon-CkXjmgJE.js +1 -0
- package/dist/playground/assets/kanagawa-lotus-CfQXZHmo.js +1 -0
- package/dist/playground/assets/kanagawa-wave-DWedfzmr.js +1 -0
- package/dist/playground/assets/keepalived-C8nPp54r.js +1 -0
- package/dist/playground/assets/keyman-DyIMfNWm.js +1 -0
- package/dist/playground/assets/kotlin-B5lbUyaz.js +1 -0
- package/dist/playground/assets/kotlin-BirWjtRB.js +1 -0
- package/dist/playground/assets/kumir-ORS0bAQL.js +1 -0
- package/dist/playground/assets/kusto-BbuVW-oE.js +1 -0
- package/dist/playground/assets/kusto-mebxcVVE.js +1 -0
- package/dist/playground/assets/laserwave-DUszq2jm.js +1 -0
- package/dist/playground/assets/latex-C-cWTeAZ.js +1 -0
- package/dist/playground/assets/latex-Co0MG9sS.js +1 -0
- package/dist/playground/assets/latte-B7evdTRS.js +1 -0
- package/dist/playground/assets/lean-XBlWyCtg.js +1 -0
- package/dist/playground/assets/less-BfCpw3nA.js +1 -0
- package/dist/playground/assets/less-OROR0C1H.js +1 -0
- package/dist/playground/assets/light-plus-B7mTdjB0.js +1 -0
- package/dist/playground/assets/lilypond-CkeJXDRE.js +1 -0
- package/dist/playground/assets/liquid-D3W5UaiH.js +1 -0
- package/dist/playground/assets/liquid-D7WRzBMH.js +1 -0
- package/dist/playground/assets/lisp-BUfe7fij.js +1 -0
- package/dist/playground/assets/livescript-BwQOo05w.js +1 -0
- package/dist/playground/assets/livescript-ClXY-XQd.js +1 -0
- package/dist/playground/assets/llvm-mQ_rwiGZ.js +1 -0
- package/dist/playground/assets/log-Cc5clBb7.js +1 -0
- package/dist/playground/assets/log-Da6unOka.js +1 -0
- package/dist/playground/assets/logo-IuBKFhSY.js +1 -0
- package/dist/playground/assets/lolcode-DjsGDncW.js +1 -0
- package/dist/playground/assets/lua-BgMRiT3U.js +1 -0
- package/dist/playground/assets/lua-CMSpEgvD.js +1 -0
- package/dist/playground/assets/lua-CvWAzNxB.js +1 -0
- package/dist/playground/assets/lua-DER4jxlW.js +1 -0
- package/dist/playground/assets/luau-Du5NY7AG.js +1 -0
- package/dist/playground/assets/magma-DMlNw1cn.js +1 -0
- package/dist/playground/assets/main-BAlO6SZs.js +579 -0
- package/dist/playground/assets/make-Bvotw-X0.js +1 -0
- package/dist/playground/assets/makefile-DQGxB750.js +1 -0
- package/dist/playground/assets/markdown-9RrLrlQ0.js +1 -0
- package/dist/playground/assets/markdown-UIAJJxZW.js +1 -0
- package/dist/playground/assets/marko-z0MBrx5-.js +1 -0
- package/dist/playground/assets/markup-BONeskWm.js +1 -0
- package/dist/playground/assets/markup-Cgvo3-XH.js +1 -0
- package/dist/playground/assets/markup-templating-BxAVv-bL.js +1 -0
- package/dist/playground/assets/markup-templating-Dka1RIHJ.js +1 -0
- package/dist/playground/assets/material-theme-D5KoaKCx.js +1 -0
- package/dist/playground/assets/material-theme-darker-BfHTSMKl.js +1 -0
- package/dist/playground/assets/material-theme-lighter-B0m2ddpp.js +1 -0
- package/dist/playground/assets/material-theme-ocean-CyktbL80.js +1 -0
- package/dist/playground/assets/material-theme-palenight-Csfq5Kiy.js +1 -0
- package/dist/playground/assets/mathematica-DTrFuWx2.js +1 -0
- package/dist/playground/assets/matlab-BSUkkaFu.js +1 -0
- package/dist/playground/assets/matlab-D9-PGadD.js +1 -0
- package/dist/playground/assets/maxscript-CISOWvhV.js +1 -0
- package/dist/playground/assets/mbox-CNhZ1qSd.js +1 -0
- package/dist/playground/assets/mdc-DB_EDNY_.js +1 -0
- package/dist/playground/assets/mdx-sdHcTMYB.js +1 -0
- package/dist/playground/assets/mel-D9z0Tx2-.js +1 -0
- package/dist/playground/assets/mermaid-CNmQljfu.js +1 -0
- package/dist/playground/assets/mermaid-Ci6OQyBP.js +1 -0
- package/dist/playground/assets/min-dark-CafNBF8u.js +1 -0
- package/dist/playground/assets/min-light-CTRr51gU.js +1 -0
- package/dist/playground/assets/mipsasm-BC5c_5Pe.js +1 -0
- package/dist/playground/assets/mirc-CjQqDB4T.js +1 -0
- package/dist/playground/assets/mizar-eWvD9znL.js +1 -0
- package/dist/playground/assets/mllike-BO34x3tv.js +1 -0
- package/dist/playground/assets/modelica-Dc1JOy9r.js +1 -0
- package/dist/playground/assets/mojo-Tz6hzZYG.js +1 -0
- package/dist/playground/assets/mongodb-DLYkl0ld.js +1 -0
- package/dist/playground/assets/monkey-CS5fCzIG.js +1 -0
- package/dist/playground/assets/monokai-D4h5O-jR.js +1 -0
- package/dist/playground/assets/moonscript-CMCw00UQ.js +1 -0
- package/dist/playground/assets/move-DB_GagMm.js +1 -0
- package/dist/playground/assets/mscgen-BA5vi2Kp.js +1 -0
- package/dist/playground/assets/mumps-BT43cFF4.js +1 -0
- package/dist/playground/assets/n1ql-BtX-mnY3.js +1 -0
- package/dist/playground/assets/n4js-C3lyDWY5.js +1 -0
- package/dist/playground/assets/nand2tetris-hdl-T-9hrwKe.js +1 -0
- package/dist/playground/assets/naniscript-KxrUWmA7.js +1 -0
- package/dist/playground/assets/narrat-DLbgOhZU.js +1 -0
- package/dist/playground/assets/nasm-CNwJds04.js +1 -0
- package/dist/playground/assets/neon-wouFfx4g.js +1 -0
- package/dist/playground/assets/nevod-BaX_t8AG.js +1 -0
- package/dist/playground/assets/nextflow-B0XVJmRM.js +1 -0
- package/dist/playground/assets/nginx-D606UXoq.js +1 -0
- package/dist/playground/assets/nginx-D_VnBJ67.js +1 -0
- package/dist/playground/assets/nginx-DdIZxoE0.js +1 -0
- package/dist/playground/assets/night-owl-C39BiMTA.js +1 -0
- package/dist/playground/assets/nim-DIpIEzXS.js +1 -0
- package/dist/playground/assets/nim-ZlGxZxc3.js +1 -0
- package/dist/playground/assets/nix-CtNuU1UG.js +1 -0
- package/dist/playground/assets/nix-shcSOmrb.js +1 -0
- package/dist/playground/assets/nord-Ddv68eIx.js +1 -0
- package/dist/playground/assets/nsis-CCmvIKaB.js +1 -0
- package/dist/playground/assets/nsis-LdVXkNf5.js +1 -0
- package/dist/playground/assets/ntriples-BfvgReVJ.js +1 -0
- package/dist/playground/assets/nushell-D4Tzg5kh.js +1 -0
- package/dist/playground/assets/objective-c-Deuh7S70.js +1 -0
- package/dist/playground/assets/objective-cpp-BUEGK8hf.js +1 -0
- package/dist/playground/assets/objectivec-B6cSDFZy.js +1 -0
- package/dist/playground/assets/ocaml-BNioltXt.js +1 -0
- package/dist/playground/assets/ocaml-C-dwlA0Y.js +1 -0
- package/dist/playground/assets/octave-Ck1zUtKM.js +1 -0
- package/dist/playground/assets/one-dark-pro-GBQ2dnAY.js +1 -0
- package/dist/playground/assets/one-light-PoHY5YXO.js +1 -0
- package/dist/playground/assets/opencl-B7IJia7x.js +1 -0
- package/dist/playground/assets/openqasm-BadlQYRX.js +1 -0
- package/dist/playground/assets/oz-BzwKVEFT.js +1 -0
- package/dist/playground/assets/oz-CzZfRvEO.js +1 -0
- package/dist/playground/assets/parigp-BYzPrwEG.js +1 -0
- package/dist/playground/assets/parser-B3lX_0aa.js +1 -0
- package/dist/playground/assets/pascal--L3eBynH.js +1 -0
- package/dist/playground/assets/pascal-BAVm_K-m.js +1 -0
- package/dist/playground/assets/pascal-JqZropPD.js +1 -0
- package/dist/playground/assets/pascaligo-BZPC7R25.js +1 -0
- package/dist/playground/assets/pcaxis-B5yefYgO.js +1 -0
- package/dist/playground/assets/peoplecode-BnGGOfNC.js +1 -0
- package/dist/playground/assets/perl-CHQXSrWU.js +1 -0
- package/dist/playground/assets/perl-CdXCOZ3F.js +1 -0
- package/dist/playground/assets/perl-Cdf86vzN.js +1 -0
- package/dist/playground/assets/php-B5ebYQev.js +1 -0
- package/dist/playground/assets/php-Cir-ywS6.js +1 -0
- package/dist/playground/assets/php-extras-D38mvi19.js +1 -0
- package/dist/playground/assets/php-iTdQntIy.js +1 -0
- package/dist/playground/assets/phpdoc-7XCqejNW.js +1 -0
- package/dist/playground/assets/pig-CevX1Tat.js +1 -0
- package/dist/playground/assets/plastic-3e1v2bzS.js +1 -0
- package/dist/playground/assets/plsql-DeowLXtT.js +1 -0
- package/dist/playground/assets/plsql-LKU2TuZ1.js +1 -0
- package/dist/playground/assets/po-BFLt1xDp.js +1 -0
- package/dist/playground/assets/poimandres-CS3Unz2-.js +1 -0
- package/dist/playground/assets/polar-DKykz6zU.js +1 -0
- package/dist/playground/assets/postcss-B3ZDOciz.js +1 -0
- package/dist/playground/assets/powerquery-Bh637DWN.js +1 -0
- package/dist/playground/assets/powerquery-CSHBycmS.js +1 -0
- package/dist/playground/assets/powershell-BIEUsx6d.js +1 -0
- package/dist/playground/assets/powershell-CaxLzxiJ.js +1 -0
- package/dist/playground/assets/powershell-DXTFvxPW.js +1 -0
- package/dist/playground/assets/prisma-B48N-Iqd.js +1 -0
- package/dist/playground/assets/processing-lXQbnqB7.js +1 -0
- package/dist/playground/assets/prolog-BJ97sl8b.js +1 -0
- package/dist/playground/assets/prolog-BY-TUvya.js +1 -0
- package/dist/playground/assets/promql-B8PwUlfb.js +1 -0
- package/dist/playground/assets/properties-BPaI8Kr5.js +1 -0
- package/dist/playground/assets/properties-C78fOPTZ.js +1 -0
- package/dist/playground/assets/proto-zocC4JxJ.js +1 -0
- package/dist/playground/assets/protobuf-ChK-085T.js +1 -0
- package/dist/playground/assets/protobuf-CsNQMtOD.js +1 -0
- package/dist/playground/assets/psl-CE8lFezj.js +1 -0
- package/dist/playground/assets/pug-BdBWoFv-.js +1 -0
- package/dist/playground/assets/pug-CM9l7STV.js +1 -0
- package/dist/playground/assets/pug-DeIclll2.js +1 -0
- package/dist/playground/assets/puppet-ClMJIo6y.js +1 -0
- package/dist/playground/assets/puppet-Cza_XSSt.js +1 -0
- package/dist/playground/assets/puppet-DMA9R1ak.js +1 -0
- package/dist/playground/assets/pure-D-07xnQy.js +1 -0
- package/dist/playground/assets/purebasic-D_ScWw2U.js +1 -0
- package/dist/playground/assets/purescript-Bg-kzb6g.js +1 -0
- package/dist/playground/assets/purescript-D28CAH4X.js +1 -0
- package/dist/playground/assets/python-BuPzkPfP.js +1 -0
- package/dist/playground/assets/python-DZKFYtAv.js +1 -0
- package/dist/playground/assets/python-DhUJRlN_.js +1 -0
- package/dist/playground/assets/q-Btp5flga.js +1 -0
- package/dist/playground/assets/q-pXgVlZs6.js +1 -0
- package/dist/playground/assets/qml-D8XfuvdV.js +1 -0
- package/dist/playground/assets/qml-ivPhNWyf.js +1 -0
- package/dist/playground/assets/qmldir-C8lEn-DE.js +1 -0
- package/dist/playground/assets/qore-COTDKaGo.js +1 -0
- package/dist/playground/assets/qsharp-CeMA_4Qj.js +1 -0
- package/dist/playground/assets/qss-DhMKtDLN.js +1 -0
- package/dist/playground/assets/r-B6wPVr8A.js +1 -0
- package/dist/playground/assets/r-CfYHQGzk.js +1 -0
- package/dist/playground/assets/r-CwjWoCRV.js +1 -0
- package/dist/playground/assets/racket-CzouJOBO.js +1 -0
- package/dist/playground/assets/racket-Dmy3FNb-.js +1 -0
- package/dist/playground/assets/raku-B1bQXN8T.js +1 -0
- package/dist/playground/assets/razor-CNLDkMZG.js +1 -0
- package/dist/playground/assets/reason-B4Hfv1iK.js +1 -0
- package/dist/playground/assets/red-bN70gL4F.js +1 -0
- package/dist/playground/assets/reg-5LuOXUq_.js +1 -0
- package/dist/playground/assets/regex-BP1gQJhD.js +1 -0
- package/dist/playground/assets/regexp-DWJ3fJO_.js +1 -0
- package/dist/playground/assets/rego-DdRUK_fM.js +1 -0
- package/dist/playground/assets/rel-DJlmqQ1C.js +1 -0
- package/dist/playground/assets/renpy-C9Oid5wx.js +1 -0
- package/dist/playground/assets/rest-BfI5LuMV.js +1 -0
- package/dist/playground/assets/rip-CrjAr2Hr.js +1 -0
- package/dist/playground/assets/riscv-QhoSD0DR.js +1 -0
- package/dist/playground/assets/roboconf-D5e5a1aw.js +1 -0
- package/dist/playground/assets/robotframework-BzVAbrZd.js +1 -0
- package/dist/playground/assets/rose-pine-CmCqftbK.js +1 -0
- package/dist/playground/assets/rose-pine-dawn-Ds-gbosJ.js +1 -0
- package/dist/playground/assets/rose-pine-moon-CjDtw9vr.js +1 -0
- package/dist/playground/assets/rpm-CTu-6PCP.js +1 -0
- package/dist/playground/assets/rst-4NLicBqY.js +1 -0
- package/dist/playground/assets/ruby-B2Rjki9n.js +1 -0
- package/dist/playground/assets/ruby-DYsn9XfW.js +1 -0
- package/dist/playground/assets/ruby-DeZ3UC14.js +1 -0
- package/dist/playground/assets/ruby-q8B956ZT.js +1 -0
- package/dist/playground/assets/rust-B9a2DBuE.js +1 -0
- package/dist/playground/assets/rust-Be6lgOlo.js +1 -0
- package/dist/playground/assets/sas-B4kiWyti.js +1 -0
- package/dist/playground/assets/sas-BmTFh92c.js +1 -0
- package/dist/playground/assets/sas-D-GmfPV1.js +1 -0
- package/dist/playground/assets/sass-BJ4Li9vH.js +1 -0
- package/dist/playground/assets/sass-BQgqoaID.js +1 -0
- package/dist/playground/assets/scala-DQVVAn-B.js +1 -0
- package/dist/playground/assets/scala-G-fH0jNj.js +1 -0
- package/dist/playground/assets/scheme-BJGe-b2p.js +1 -0
- package/dist/playground/assets/scheme-BzNtL0ek.js +1 -0
- package/dist/playground/assets/scheme-C41bIUwD.js +1 -0
- package/dist/playground/assets/scheme-Cscf027c.js +1 -0
- package/dist/playground/assets/scss-C31hgJw-.js +1 -0
- package/dist/playground/assets/scss-CanCd4OQ.js +1 -0
- package/dist/playground/assets/sdbl-BLhTXw86.js +1 -0
- package/dist/playground/assets/shaderlab-B7qAK45m.js +1 -0
- package/dist/playground/assets/shell-CjFT_Tl9.js +1 -0
- package/dist/playground/assets/shell-session-BhLLlZL2.js +1 -0
- package/dist/playground/assets/shellscript-atvbtKCR.js +1 -0
- package/dist/playground/assets/shellsession-C_rIy8kc.js +1 -0
- package/dist/playground/assets/sieve-C3Gn_uJK.js +1 -0
- package/dist/playground/assets/simple-mode-GW_nhZxv.js +1 -0
- package/dist/playground/assets/slack-dark-BthQWCQV.js +1 -0
- package/dist/playground/assets/slack-ochin-DqwNpetd.js +1 -0
- package/dist/playground/assets/smali-D7KmjaKd.js +1 -0
- package/dist/playground/assets/smalltalk-BfEBKVcw.js +1 -0
- package/dist/playground/assets/smalltalk-CnHTOXQT.js +1 -0
- package/dist/playground/assets/smalltalk-DkLiglaE.js +1 -0
- package/dist/playground/assets/smarty-BSNjKmxY.js +1 -0
- package/dist/playground/assets/sml-BzT1RNrr.js +1 -0
- package/dist/playground/assets/snazzy-light-Bw305WKR.js +1 -0
- package/dist/playground/assets/solarized-dark-DXbdFlpD.js +1 -0
- package/dist/playground/assets/solarized-light-L9t79GZl.js +1 -0
- package/dist/playground/assets/solidity-C1w2a3ep.js +1 -0
- package/dist/playground/assets/solidity-Cu_1EbRu.js +1 -0
- package/dist/playground/assets/solr-DehyRSwq.js +1 -0
- package/dist/playground/assets/solution-file-9EFvsaBH.js +1 -0
- package/dist/playground/assets/soy-C-lX7w71.js +1 -0
- package/dist/playground/assets/soy-DHLob3vG.js +1 -0
- package/dist/playground/assets/sparql-DgISjLcj.js +1 -0
- package/dist/playground/assets/sparql-DkYu6x3z.js +1 -0
- package/dist/playground/assets/sparql-bYkjHRlG.js +1 -0
- package/dist/playground/assets/splunk-Cf8iN4DR.js +1 -0
- package/dist/playground/assets/splunk-spl-C8rVS7IU.js +1 -0
- package/dist/playground/assets/spreadsheet-BCZA_wO0.js +1 -0
- package/dist/playground/assets/sqf-CPfCtcNa.js +1 -0
- package/dist/playground/assets/sql-BrGPLi3M.js +1 -0
- package/dist/playground/assets/sql-CJATM1Qp.js +1 -0
- package/dist/playground/assets/sql-COK4E0Yg.js +1 -0
- package/dist/playground/assets/sql-D0XecflT.js +1 -0
- package/dist/playground/assets/squirrel-bs6ANkRf.js +1 -0
- package/dist/playground/assets/ssh-config-BknIz3MU.js +1 -0
- package/dist/playground/assets/stan-KHfADg6W.js +1 -0
- package/dist/playground/assets/stata-DorPZHa4.js +1 -0
- package/dist/playground/assets/stex-C3f8Ysf7.js +1 -0
- package/dist/playground/assets/style-vvQWH0FZ.css +1 -0
- package/dist/playground/assets/stylus-B533Al4x.js +1 -0
- package/dist/playground/assets/stylus-BceUHj0i.js +1 -0
- package/dist/playground/assets/stylus-BeQkCIfX.js +1 -0
- package/dist/playground/assets/svelte-MSaWC3Je.js +1 -0
- package/dist/playground/assets/swift-BSxZ-RaX.js +1 -0
- package/dist/playground/assets/swift-BzpIVaGY.js +1 -0
- package/dist/playground/assets/swift-wlX1rZzI.js +1 -0
- package/dist/playground/assets/synthwave-84-CbfX1IO0.js +1 -0
- package/dist/playground/assets/system-verilog-C7L56vO4.js +1 -0
- package/dist/playground/assets/systemd-CUnW07Te.js +1 -0
- package/dist/playground/assets/systemd-DuRlO34w.js +2 -0
- package/dist/playground/assets/t4-cs-Bki2Asbq.js +1 -0
- package/dist/playground/assets/t4-templating-B5EzSFYT.js +1 -0
- package/dist/playground/assets/t4-templating-B9717bZ0.js +1 -0
- package/dist/playground/assets/t4-vb-D5FfJWWR.js +1 -0
- package/dist/playground/assets/talonscript-C1XDQQGZ.js +1 -0
- package/dist/playground/assets/tap-C9mDEIZK.js +1 -0
- package/dist/playground/assets/tasl-CQjiPCtT.js +1 -0
- package/dist/playground/assets/tcl-CWXmNWRM.js +1 -0
- package/dist/playground/assets/tcl-DQ1-QYvQ.js +1 -0
- package/dist/playground/assets/tcl-DVfN8rqt.js +1 -0
- package/dist/playground/assets/templ-dwX3ZSMB.js +1 -0
- package/dist/playground/assets/terraform-BbSNqyBO.js +1 -0
- package/dist/playground/assets/tex-rYs2v40G.js +1 -0
- package/dist/playground/assets/textile-CkjYdUkD.js +1 -0
- package/dist/playground/assets/textile-CnDTJFAw.js +1 -0
- package/dist/playground/assets/tiddlywiki-DO-Gjzrf.js +1 -0
- package/dist/playground/assets/tiki-DGYXhP31.js +1 -0
- package/dist/playground/assets/token-6GSAFR2W-SPYPLMBM-D1XCu0TW.js +1 -0
- package/dist/playground/assets/token-6GSAFR2W-SPYPLMBM-Dw0-CxcM-C-3WzytS.js +1 -0
- package/dist/playground/assets/token-util-NEHG7TUY-JRJTGTAB-CrKHYQe8-DRq-UI3R.js +1 -0
- package/dist/playground/assets/token-util-NEHG7TUY-JRJTGTAB-rg_rNggF.js +1 -0
- package/dist/playground/assets/tokyo-night-DBQeEorK.js +1 -0
- package/dist/playground/assets/toml-Bm5Em-hy.js +1 -0
- package/dist/playground/assets/toml-CB2ApiWb.js +1 -0
- package/dist/playground/assets/toml-DvGdUWW1.js +1 -0
- package/dist/playground/assets/tremor-C_aU6ToX.js +1 -0
- package/dist/playground/assets/troff-wAsdV37c.js +1 -0
- package/dist/playground/assets/ts-tags-CipyTH0X.js +1 -0
- package/dist/playground/assets/tsv-B_m7g4N7.js +1 -0
- package/dist/playground/assets/tsx-B6W0miNI.js +1 -0
- package/dist/playground/assets/tsx-BZk9cpsQ.js +1 -0
- package/dist/playground/assets/tt2-CPINKQmg.js +1 -0
- package/dist/playground/assets/ttcn-CfJYG6tj.js +1 -0
- package/dist/playground/assets/ttcn-cfg-B9xdYoR4.js +1 -0
- package/dist/playground/assets/turtle-B1tBg_DP.js +1 -0
- package/dist/playground/assets/turtle-BMR_PYu6.js +1 -0
- package/dist/playground/assets/turtle-DX4gfz7Y.js +1 -0
- package/dist/playground/assets/turtle-Ro1R6Je7.js +1 -0
- package/dist/playground/assets/twig-NC5TFiHP.js +1 -0
- package/dist/playground/assets/twig-lI9nU4cx.js +1 -0
- package/dist/playground/assets/typescript-C8g_UTaz.js +1 -0
- package/dist/playground/assets/typescript-CVO-8GEc.js +1 -0
- package/dist/playground/assets/typescript-Dj6nwHGl.js +1 -0
- package/dist/playground/assets/typespec-BpWG_bgh.js +1 -0
- package/dist/playground/assets/typoscript-hZus_LiW.js +1 -0
- package/dist/playground/assets/typst-BVUVsWT6.js +1 -0
- package/dist/playground/assets/unrealscript-DwpNz0t5.js +1 -0
- package/dist/playground/assets/uorazor-BdKHW7ZK.js +1 -0
- package/dist/playground/assets/uri-DYwyz23I.js +1 -0
- package/dist/playground/assets/v-CAQ2eGtk.js +1 -0
- package/dist/playground/assets/v-agdfTzhu.js +1 -0
- package/dist/playground/assets/vala-B9RLmoKd.js +1 -0
- package/dist/playground/assets/vala-BFOHcciG.js +1 -0
- package/dist/playground/assets/vb-CdO5JTpU.js +1 -0
- package/dist/playground/assets/vb-CmGdzxic.js +1 -0
- package/dist/playground/assets/vbnet-BhrUc4aD.js +1 -0
- package/dist/playground/assets/vbnet-yNu3WRgQ.js +1 -0
- package/dist/playground/assets/vbscript-BuJXcnF6.js +1 -0
- package/dist/playground/assets/velocity-D8B20fx6.js +1 -0
- package/dist/playground/assets/velocity-DnqyA_q5.js +1 -0
- package/dist/playground/assets/verilog-C6RDOZhf.js +1 -0
- package/dist/playground/assets/verilog-CIJRii-T.js +1 -0
- package/dist/playground/assets/verilog-CJaU5se_.js +1 -0
- package/dist/playground/assets/vesper-BEBZ7ncR.js +1 -0
- package/dist/playground/assets/vhdl-CgLg4qZk.js +1 -0
- package/dist/playground/assets/vhdl-DYoNaHQp.js +1 -0
- package/dist/playground/assets/vhdl-lSbBsy5d.js +1 -0
- package/dist/playground/assets/vim-zAl_EOzo.js +1 -0
- package/dist/playground/assets/viml-m4uW47V2.js +1 -0
- package/dist/playground/assets/visual-basic-CiYRahqo.js +1 -0
- package/dist/playground/assets/vitesse-black-Bkuqu6BP.js +1 -0
- package/dist/playground/assets/vitesse-dark-D0r3Knsf.js +1 -0
- package/dist/playground/assets/vitesse-light-CVO1_9PV.js +1 -0
- package/dist/playground/assets/vue-BuYVFjOK.js +1 -0
- package/dist/playground/assets/vue-html-xdeiXROB.js +1 -0
- package/dist/playground/assets/vyper-nyqBNV6O.js +1 -0
- package/dist/playground/assets/warpscript-Cl8j-0u3.js +1 -0
- package/dist/playground/assets/wasm-BjclfCeD.js +1 -0
- package/dist/playground/assets/wasm-C6j12Q_x.js +1 -0
- package/dist/playground/assets/wasm-CG6Dc4jp.js +1 -0
- package/dist/playground/assets/web-idl-C3FBZw_9.js +1 -0
- package/dist/playground/assets/webidl-ZXfAyPTL.js +1 -0
- package/dist/playground/assets/wenyan-7A4Fjokl.js +1 -0
- package/dist/playground/assets/wgsl-CB0Krxn9.js +1 -0
- package/dist/playground/assets/wiki-zIQCJo-u.js +1 -0
- package/dist/playground/assets/wikitext-DCE3LsBG.js +1 -0
- package/dist/playground/assets/wolfram-C3FkfJm5.js +1 -0
- package/dist/playground/assets/wolfram-Db046-Q2.js +1 -0
- package/dist/playground/assets/wren-eZJ-SfY3.js +1 -0
- package/dist/playground/assets/xeora-C0TD-sqr.js +1 -0
- package/dist/playground/assets/xml-doc-D5lAbYaB.js +1 -0
- package/dist/playground/assets/xml-e3z08dGr.js +1 -0
- package/dist/playground/assets/xojo-mvp_lxCZ.js +1 -0
- package/dist/playground/assets/xquery-DTffsCMj.js +1 -0
- package/dist/playground/assets/xquery-DzFWVndE.js +1 -0
- package/dist/playground/assets/xsl-Dd0NUgwM.js +1 -0
- package/dist/playground/assets/yacas-BJ4BC0dw.js +1 -0
- package/dist/playground/assets/yaml-CVw76BM1.js +1 -0
- package/dist/playground/assets/yaml-aUHHkJUS.js +1 -0
- package/dist/playground/assets/yaml-pHjxJgpq.js +1 -0
- package/dist/playground/assets/yang-BPDZwF5S.js +1 -0
- package/dist/playground/assets/z80-Hz9HOZM7.js +1 -0
- package/dist/playground/assets/zenscript-HnGAYVZD.js +1 -0
- package/dist/playground/assets/zig-B6IdNGLt.js +1 -0
- package/dist/playground/assets/zig-BVz_zdnA.js +1 -0
- package/dist/playground/favicon.ico +0 -0
- package/dist/playground/index.html +47 -0
- package/dist/playground/mastra.svg +17 -0
- package/dist/utils/auth.d.ts.map +1 -1
- package/dist/utils/constants.d.ts +1 -0
- package/dist/utils/constants.d.ts.map +1 -1
- package/dist/utils/deps.d.ts.map +1 -1
- package/dist/utils/execa.d.ts +1 -1
- package/dist/utils/execa.d.ts.map +1 -1
- package/dist/utils/logger.d.ts +3 -3
- package/dist/utils/logger.d.ts.map +1 -1
- package/package.json +22 -14
- package/versions.json +1 -0
- package/templates/instrumentation-template.js +0 -69
package/README.md
CHANGED
|
@@ -76,6 +76,9 @@ MASTRA_STORAGE_AUTH_TOKEN=your-auth-token
|
|
|
76
76
|
BUSINESS_API_RUNNER_LOGS_ENDPOINT=your-logs-endpoint
|
|
77
77
|
BUSINESS_JWT_TOKEN=your-jwt-token
|
|
78
78
|
|
|
79
|
+
# Playground Configuration
|
|
80
|
+
PLAYGROUND_JWT_TOKEN=your-playground-jwt-token
|
|
81
|
+
|
|
79
82
|
# Runtime Configuration
|
|
80
83
|
RUNNER_START_TIME=deployment-start-time
|
|
81
84
|
CI=true|false
|
|
@@ -115,7 +118,6 @@ After deployment, your project will have:
|
|
|
115
118
|
|
|
116
119
|
```
|
|
117
120
|
output/
|
|
118
|
-
├── instrumentation.mjs # OpenTelemetry setup
|
|
119
121
|
├── package.json # With cloud dependencies
|
|
120
122
|
├── index.mjs # Main server entry
|
|
121
123
|
├── mastra.mjs # Your Mastra configuration
|
|
@@ -170,7 +172,3 @@ pnpm test
|
|
|
170
172
|
# Lint code
|
|
171
173
|
pnpm lint
|
|
172
174
|
```
|
|
173
|
-
|
|
174
|
-
## License
|
|
175
|
-
|
|
176
|
-
Apache-2.0
|
package/dist/index.cjs
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var url = require('url');
|
|
4
3
|
var path = require('path');
|
|
4
|
+
var url = require('url');
|
|
5
5
|
var deployer = require('@mastra/deployer');
|
|
6
|
-
var
|
|
6
|
+
var bundler = require('@mastra/deployer/bundler');
|
|
7
|
+
var esm = require('fs-extra/esm');
|
|
7
8
|
var os = require('os');
|
|
8
9
|
var fs = require('fs');
|
|
9
10
|
var error = require('@mastra/core/error');
|
|
@@ -41,37 +42,43 @@ var fs__namespace = /*#__PURE__*/_interopNamespace(fs);
|
|
|
41
42
|
|
|
42
43
|
// src/utils/auth.ts
|
|
43
44
|
function getAuthEntrypoint() {
|
|
45
|
+
const tokensObject = {};
|
|
46
|
+
if (process.env.PLAYGROUND_JWT_TOKEN) {
|
|
47
|
+
tokensObject[process.env.PLAYGROUND_JWT_TOKEN] = { id: "business-api" };
|
|
48
|
+
}
|
|
49
|
+
if (process.env.BUSINESS_JWT_TOKEN) {
|
|
50
|
+
tokensObject[process.env.BUSINESS_JWT_TOKEN] = { id: "business-api" };
|
|
51
|
+
}
|
|
44
52
|
return `
|
|
45
|
-
import {
|
|
53
|
+
import { SimpleAuth, CompositeAuth } from '@mastra/core/server';
|
|
46
54
|
|
|
47
|
-
class MastraCloudAuth extends
|
|
48
|
-
constructor
|
|
49
|
-
super(
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
async authenticateToken (...args) {
|
|
54
|
-
if (typeof args[0] === 'string' && args[0].replace('Bearer ', '') === '${process.env.BUSINESS_JWT_TOKEN}') {
|
|
55
|
-
return { id: 'business-api' }
|
|
56
|
-
}
|
|
57
|
-
return this.auth.authenticateToken(...args)
|
|
55
|
+
class MastraCloudAuth extends SimpleAuth {
|
|
56
|
+
constructor() {
|
|
57
|
+
super({
|
|
58
|
+
tokens: ${JSON.stringify(tokensObject)}
|
|
59
|
+
});
|
|
58
60
|
}
|
|
59
61
|
|
|
60
|
-
async authorizeUser
|
|
61
|
-
|
|
62
|
-
|
|
62
|
+
async authorizeUser(user, request) {
|
|
63
|
+
// Allow access to /api path
|
|
64
|
+
if (request && request.url && new URL(request.url).pathname === '/api') {
|
|
65
|
+
return true;
|
|
63
66
|
}
|
|
64
|
-
|
|
65
|
-
|
|
67
|
+
// Allow access for business-api users
|
|
68
|
+
if (user && user.id === 'business-api') {
|
|
69
|
+
return true;
|
|
66
70
|
}
|
|
67
|
-
return
|
|
71
|
+
return false;
|
|
68
72
|
}
|
|
69
73
|
}
|
|
70
74
|
|
|
71
75
|
const serverConfig = mastra.getServer()
|
|
72
|
-
if (serverConfig && serverConfig.
|
|
73
|
-
const
|
|
74
|
-
|
|
76
|
+
if (serverConfig && serverConfig.auth) {
|
|
77
|
+
const existingAuth = serverConfig.auth
|
|
78
|
+
const cloudAuth = new MastraCloudAuth()
|
|
79
|
+
|
|
80
|
+
// Use CompositeAuth to combine cloud auth with existing auth
|
|
81
|
+
serverConfig.auth = new CompositeAuth([cloudAuth, existingAuth])
|
|
75
82
|
}
|
|
76
83
|
`;
|
|
77
84
|
}
|
|
@@ -135,7 +142,7 @@ var RedisTransport = class extends logger$1.LoggerTransport {
|
|
|
135
142
|
await closeLogger();
|
|
136
143
|
cb(err);
|
|
137
144
|
}
|
|
138
|
-
|
|
145
|
+
listLogs(_args) {
|
|
139
146
|
return Promise.resolve({
|
|
140
147
|
logs: [],
|
|
141
148
|
total: 0,
|
|
@@ -144,7 +151,7 @@ var RedisTransport = class extends logger$1.LoggerTransport {
|
|
|
144
151
|
hasMore: false
|
|
145
152
|
});
|
|
146
153
|
}
|
|
147
|
-
|
|
154
|
+
listLogsByRunId(_args) {
|
|
148
155
|
return Promise.resolve({
|
|
149
156
|
logs: [],
|
|
150
157
|
total: 0,
|
|
@@ -250,7 +257,7 @@ function detectPm({ path }) {
|
|
|
250
257
|
async function installDeps({ path, pm }) {
|
|
251
258
|
pm = pm ?? detectPm({ path });
|
|
252
259
|
logger.info(`Installing dependencies with ${pm} in ${path}`);
|
|
253
|
-
const args = ["install"];
|
|
260
|
+
const args = ["install", "--legacy-peer-deps=false", "--force"];
|
|
254
261
|
const { success, error: error$1 } = await runWithExeca({ cmd: pm, args, cwd: path });
|
|
255
262
|
if (!success) {
|
|
256
263
|
throw new error.MastraError(
|
|
@@ -285,12 +292,12 @@ function getMastraEntryFile(mastraDir) {
|
|
|
285
292
|
// src/utils/report.ts
|
|
286
293
|
function successEntrypoint() {
|
|
287
294
|
return `
|
|
288
|
-
if (process.env.CI !== 'true'
|
|
289
|
-
await fetch(process.env.REPORTER_API_URL, {
|
|
295
|
+
if (process.env.CI !== 'true') {
|
|
296
|
+
await fetch('${process.env.REPORTER_API_URL}', {
|
|
290
297
|
method: 'POST',
|
|
291
298
|
headers: {
|
|
292
299
|
'Content-Type': 'application/json',
|
|
293
|
-
Authorization:
|
|
300
|
+
Authorization: 'Bearer ${process.env.REPORTER_API_URL_AUTH_TOKEN}',
|
|
294
301
|
},
|
|
295
302
|
body: JSON.stringify(${JSON.stringify({
|
|
296
303
|
projectId: PROJECT_ID,
|
|
@@ -310,20 +317,39 @@ function successEntrypoint() {
|
|
|
310
317
|
|
|
311
318
|
// src/index.ts
|
|
312
319
|
var CloudDeployer = class extends deployer.Deployer {
|
|
313
|
-
|
|
320
|
+
studio;
|
|
321
|
+
constructor({ studio } = {}) {
|
|
314
322
|
super({ name: "cloud" });
|
|
323
|
+
this.studio = studio ?? false;
|
|
324
|
+
}
|
|
325
|
+
async getUserBundlerOptions(mastraEntryFile, outputDirectory) {
|
|
326
|
+
const bundlerOptions = await super.getUserBundlerOptions(mastraEntryFile, outputDirectory);
|
|
327
|
+
if (!bundlerOptions?.[bundler.IS_DEFAULT]) {
|
|
328
|
+
return bundlerOptions;
|
|
329
|
+
}
|
|
330
|
+
return {
|
|
331
|
+
...bundlerOptions,
|
|
332
|
+
externals: true
|
|
333
|
+
};
|
|
315
334
|
}
|
|
316
335
|
async deploy(_outputDirectory) {
|
|
317
336
|
}
|
|
318
|
-
async
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
337
|
+
async prepare(outputDirectory) {
|
|
338
|
+
await super.prepare(outputDirectory);
|
|
339
|
+
if (this.studio) {
|
|
340
|
+
const __filename = url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index.cjs', document.baseURI).href)));
|
|
341
|
+
const __dirname = path.dirname(__filename);
|
|
342
|
+
const playgroundServePath = path.join(outputDirectory, this.outputDir, "playground");
|
|
343
|
+
await esm.copy(path.join(path.dirname(__dirname), "dist/playground"), playgroundServePath, {
|
|
344
|
+
overwrite: true
|
|
345
|
+
});
|
|
346
|
+
}
|
|
322
347
|
}
|
|
323
|
-
writePackageJson(outputDirectory, dependencies) {
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
348
|
+
async writePackageJson(outputDirectory, dependencies) {
|
|
349
|
+
const versions = await esm.readJSON(path.join(path.dirname(url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('index.cjs', document.baseURI).href)))), "../versions.json"));
|
|
350
|
+
for (const [pkgName, version] of Object.entries(versions || {})) {
|
|
351
|
+
dependencies.set(pkgName, version);
|
|
352
|
+
}
|
|
327
353
|
return super.writePackageJson(outputDirectory, dependencies);
|
|
328
354
|
}
|
|
329
355
|
async lint() {
|
|
@@ -335,8 +361,18 @@ var CloudDeployer = class extends deployer.Deployer {
|
|
|
335
361
|
const currentCwd = process.cwd();
|
|
336
362
|
process.chdir(mastraDir);
|
|
337
363
|
const mastraEntryFile = getMastraEntryFile(mastraDir);
|
|
338
|
-
const
|
|
339
|
-
|
|
364
|
+
const mastraAppDir = path.join(mastraDir, MASTRA_DIRECTORY);
|
|
365
|
+
const discoveredTools = this.getAllToolPaths(mastraAppDir);
|
|
366
|
+
await this.prepare(outputDirectory);
|
|
367
|
+
await this._bundle(
|
|
368
|
+
this.getEntry(),
|
|
369
|
+
mastraEntryFile,
|
|
370
|
+
{
|
|
371
|
+
outputDirectory,
|
|
372
|
+
projectRoot: mastraDir
|
|
373
|
+
},
|
|
374
|
+
discoveredTools
|
|
375
|
+
);
|
|
340
376
|
process.chdir(currentCwd);
|
|
341
377
|
}
|
|
342
378
|
getAuthEntrypoint() {
|
|
@@ -349,12 +385,9 @@ import { tools } from '#tools';
|
|
|
349
385
|
import { mastra } from '#mastra';
|
|
350
386
|
import { MultiLogger } from '@mastra/core/logger';
|
|
351
387
|
import { PinoLogger } from '@mastra/loggers';
|
|
352
|
-
import { UpstashTransport } from '@mastra/loggers/upstash';
|
|
353
388
|
import { HttpTransport } from '@mastra/loggers/http';
|
|
354
|
-
import { evaluate } from '@mastra/core/eval';
|
|
355
|
-
import { AvailableHooks, registerHook } from '@mastra/core/hooks';
|
|
356
389
|
import { LibSQLStore, LibSQLVector } from '@mastra/libsql';
|
|
357
|
-
|
|
390
|
+
import { scoreTracesWorkflow } from '@mastra/core/evals/scoreTraces';
|
|
358
391
|
const startTime = process.env.RUNNER_START_TIME ? new Date(process.env.RUNNER_START_TIME).getTime() : Date.now();
|
|
359
392
|
const createNodeServerStartTime = Date.now();
|
|
360
393
|
|
|
@@ -393,63 +426,33 @@ const combinedLogger = existingLogger ? new MultiLogger([logger, existingLogger]
|
|
|
393
426
|
|
|
394
427
|
mastra.setLogger({ logger: combinedLogger });
|
|
395
428
|
|
|
396
|
-
if (mastra?.storage) {
|
|
397
|
-
mastra.storage.init()
|
|
398
|
-
}
|
|
399
|
-
|
|
400
429
|
if (process.env.MASTRA_STORAGE_URL && process.env.MASTRA_STORAGE_AUTH_TOKEN) {
|
|
401
430
|
const { MastraStorage } = await import('@mastra/core/storage');
|
|
402
431
|
logger.info('Using Mastra Cloud Storage: ' + process.env.MASTRA_STORAGE_URL)
|
|
403
432
|
const storage = new LibSQLStore({
|
|
433
|
+
id: 'mastra-cloud-storage-libsql',
|
|
404
434
|
url: process.env.MASTRA_STORAGE_URL,
|
|
405
435
|
authToken: process.env.MASTRA_STORAGE_AUTH_TOKEN,
|
|
406
436
|
})
|
|
407
437
|
const vector = new LibSQLVector({
|
|
438
|
+
id: 'mastra-cloud-storage-libsql-vector',
|
|
408
439
|
connectionUrl: process.env.MASTRA_STORAGE_URL,
|
|
409
440
|
authToken: process.env.MASTRA_STORAGE_AUTH_TOKEN,
|
|
410
441
|
})
|
|
411
442
|
|
|
412
443
|
await storage.init()
|
|
413
444
|
mastra?.setStorage(storage)
|
|
445
|
+
} else if (mastra?.storage) {
|
|
446
|
+
mastra.storage.init()
|
|
447
|
+
}
|
|
414
448
|
|
|
415
|
-
|
|
416
|
-
mastra
|
|
417
|
-
|
|
418
|
-
registerHook(AvailableHooks.ON_GENERATION, ({ input, output, metric, runId, agentName, instructions }) => {
|
|
419
|
-
evaluate({
|
|
420
|
-
agentName,
|
|
421
|
-
input,
|
|
422
|
-
metric,
|
|
423
|
-
output,
|
|
424
|
-
runId,
|
|
425
|
-
globalRunId: runId,
|
|
426
|
-
instructions,
|
|
427
|
-
});
|
|
428
|
-
});
|
|
429
|
-
registerHook(AvailableHooks.ON_EVALUATION, async traceObject => {
|
|
430
|
-
if (mastra?.storage) {
|
|
431
|
-
await mastra.storage.insert({
|
|
432
|
-
tableName: MastraStorage.TABLE_EVALS,
|
|
433
|
-
record: {
|
|
434
|
-
input: traceObject.input,
|
|
435
|
-
output: traceObject.output,
|
|
436
|
-
result: JSON.stringify(traceObject.result),
|
|
437
|
-
agent_name: traceObject.agentName,
|
|
438
|
-
metric_name: traceObject.metricName,
|
|
439
|
-
instructions: traceObject.instructions,
|
|
440
|
-
test_info: null,
|
|
441
|
-
global_run_id: traceObject.globalRunId,
|
|
442
|
-
run_id: traceObject.runId,
|
|
443
|
-
created_at: new Date().toISOString(),
|
|
444
|
-
},
|
|
445
|
-
});
|
|
446
|
-
}
|
|
447
|
-
});
|
|
449
|
+
if (mastra?.getStorage()) {
|
|
450
|
+
mastra.__registerInternalWorkflow(scoreTracesWorkflow);
|
|
448
451
|
}
|
|
449
452
|
|
|
450
453
|
${getAuthEntrypoint()}
|
|
451
454
|
|
|
452
|
-
await createNodeServer(mastra, { playground:
|
|
455
|
+
await createNodeServer(mastra, { playground: ${this.studio}, swaggerUI: false, tools: getToolExports(tools) });
|
|
453
456
|
|
|
454
457
|
${successEntrypoint()}
|
|
455
458
|
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/utils/auth.ts","../src/utils/constants.ts","../src/utils/logger.ts","../src/utils/execa.ts","../src/utils/deps.ts","../src/utils/file.ts","../src/utils/report.ts","../src/index.ts"],"names":["os","createClient","LoggerTransport","resolve","PinoLogger","Transform","execa","fs","join","error","MastraError","FileService","Deployer","dirname","fileURLToPath","copy"],"mappings":"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","file":"index.cjs","sourcesContent":["export function getAuthEntrypoint() {\n return `\n import { MastraAuthProvider } from '@mastra/core/server';\n\n class MastraCloudAuth extends MastraAuthProvider {\n constructor (auth) {\n super()\n this.auth = auth\n }\n\n async authenticateToken (...args) {\n if (typeof args[0] === 'string' && args[0].replace('Bearer ', '') === '${process.env.BUSINESS_JWT_TOKEN}') {\n return { id: 'business-api' }\n }\n return this.auth.authenticateToken(...args)\n }\n\n async authorizeUser (...args) {\n if (args[1] && args[1].path === '/api') {\n return true\n }\n if (args[0] && args[0].id === 'business-api') {\n return true\n }\n return this.auth.authorizeUser(...args)\n }\n }\n\n const serverConfig = mastra.getServer()\n if (serverConfig && serverConfig.experimental_auth) {\n const auth = serverConfig.experimental_auth\n serverConfig.experimental_auth = new MastraCloudAuth(auth)\n }\n `;\n}\n","import os from 'os';\n\nexport const LOCAL = process.env.LOCAL === 'true';\nexport const TEAM_ID: string = process.env.TEAM_ID ?? '';\nexport const PROJECT_ID: string = process.env.PROJECT_ID ?? '';\nexport const BUILD_ID: string = process.env.BUILD_ID ?? '';\nexport const BUILD_URL: string = process.env.BUILD_URL ?? '';\nexport const LOG_REDIS_URL: string = process.env.LOG_REDIS_URL ?? 'redis://localhost:6379';\nexport const BUSINESS_JWT_TOKEN: string = process.env.BUSINESS_JWT_TOKEN ?? '';\nexport const USER_IP_ADDRESS: string = process.env.USER_IP_ADDRESS ?? '';\nexport const MASTRA_DIRECTORY: string = process.env.MASTRA_DIRECTORY ?? 'src/mastra';\nexport const PROJECT_ENV_VARS: Record<string, string> = safelyParseJson(process.env.PROJECT_ENV_VARS ?? '{}');\n\nexport const PROJECT_ROOT = LOCAL ? os.tmpdir() + '/project' : (process.env.PROJECT_ROOT ?? '/project');\n\nexport function safelyParseJson(json: string) {\n try {\n return JSON.parse(json);\n } catch {\n return {};\n }\n}\n","import type { TransformCallback } from 'stream';\nimport type { BaseLogMessage, LogLevel } from '@mastra/core/logger';\nimport { LoggerTransport } from '@mastra/core/logger';\nimport { PinoLogger } from '@mastra/loggers';\nimport { createClient } from 'redis';\nimport { BUILD_ID, LOG_REDIS_URL, PROJECT_ID, TEAM_ID } from './constants.js';\n\nconst redisClient = createClient({\n url: LOG_REDIS_URL,\n});\n\nclass RedisTransport extends LoggerTransport {\n _transform(chunk: any, _encoding: string, callback: TransformCallback): void {\n chunk = chunk.toString();\n const logKey = `builder:logs:${TEAM_ID}:${PROJECT_ID}:${BUILD_ID}`;\n const ttl = 2 * 24 * 60 * 60; // 2 days in seconds\n const logData = typeof chunk === 'string' ? chunk : JSON.stringify(chunk);\n\n // Don't block the event loop - process logs asynchronously\n process.nextTick(async () => {\n try {\n // Connect to Redis if not already connected\n if (!redisClient.isOpen) {\n await redisClient.connect().catch(err => {\n console.error('Redis connection error:', err);\n });\n }\n\n // Use pipeline to batch Redis operations\n const pipeline = redisClient.multi();\n pipeline.rPush(logKey, logData);\n pipeline.expire(logKey, ttl);\n await pipeline.exec();\n } catch (err) {\n console.error('Redis logging error:', err);\n }\n });\n\n // Immediately pass through the chunk without waiting\n callback(null, chunk);\n }\n\n _write(chunk: any, encoding?: string, callback?: (error?: Error | null) => void): boolean {\n if (typeof callback === 'function') {\n this._transform(chunk, encoding || 'utf8', callback);\n return true;\n }\n\n this._transform(chunk, encoding || 'utf8', (error: Error | null | undefined) => {\n if (error) console.error('Transform error in write:', error);\n });\n return true;\n }\n\n async _flush(): Promise<void> {\n // // Ensure the pipeline is closed and flushed\n // redisClient.quit().catch(err => {\n // console.error('Redis connection error:', err);\n // });\n // callback();\n await new Promise(resolve => setTimeout(resolve, 10));\n }\n\n async _destroy(err: Error, cb: Function) {\n await closeLogger();\n cb(err);\n }\n\n getLogs(_args: {\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n returnPaginationResults?: boolean;\n page?: number;\n perPage?: number;\n }): Promise<{ logs: BaseLogMessage[]; total: number; page: number; perPage: number; hasMore: boolean }> {\n return Promise.resolve({\n logs: [],\n total: 0,\n page: _args?.page ?? 1,\n perPage: _args?.perPage ?? 100,\n hasMore: false,\n });\n }\n\n getLogsByRunId(_args?: {\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n returnPaginationResults?: boolean;\n page?: number;\n perPage?: number;\n }): Promise<{\n logs: BaseLogMessage[];\n total: number;\n page: number;\n perPage: number;\n hasMore: boolean;\n }> {\n return Promise.resolve({\n logs: [],\n total: 0,\n page: _args?.page ?? 1,\n perPage: _args?.perPage ?? 100,\n hasMore: false,\n });\n }\n}\n\nexport const transport = new RedisTransport();\n\nexport const closeLogger = async () => {\n if (redisClient.isOpen) {\n setTimeout(async () => {\n await redisClient.quit();\n }, 10);\n }\n};\n\nexport const logger = new PinoLogger({\n level: 'info',\n transports: {\n redis: transport,\n },\n});\n","import { Transform } from 'stream';\nimport { execa } from 'execa';\nimport { PROJECT_ENV_VARS, PROJECT_ROOT } from './constants.js';\nimport { logger } from './logger.js';\n\nexport const createPinoStream = () => {\n return new Transform({\n transform(chunk, encoding, callback) {\n // Convert Buffer/string to string and trim whitespace\n const line = chunk.toString().trim();\n\n if (line) {\n // Log each line through Pino\n logger.info(line);\n }\n\n // Pass through the original data\n callback(null, chunk);\n },\n });\n};\n\nexport async function runWithExeca({\n cmd,\n args,\n cwd = process.cwd(),\n env = PROJECT_ENV_VARS,\n}: {\n cmd: string;\n args: string[];\n cwd?: string;\n env?: Record<string, string>;\n}): Promise<{ stdout?: string; stderr?: string; success: boolean; error?: Error }> {\n const pinoStream = createPinoStream();\n\n try {\n const subprocess = execa(cmd, args, {\n cwd,\n env: {\n ...process.env,\n ...env,\n },\n });\n\n // Pipe stdout and stderr through the Pino stream\n subprocess.stdout?.pipe(pinoStream);\n subprocess.stderr?.pipe(pinoStream);\n\n const { stdout, stderr, exitCode } = await subprocess;\n return { stdout, stderr, success: exitCode === 0 };\n } catch (error) {\n logger.error(`Process failed: ${error}`);\n return { success: false, error: error instanceof Error ? error : new Error(String(error)) };\n }\n}\n\nexport function runWithChildProcess(cmd: string, args: string[]): { stdout?: string; stderr?: string } {\n const pinoStream = createPinoStream();\n\n try {\n const { stdout, stderr } = require('child_process').spawnSync(cmd, args, {\n cwd: PROJECT_ROOT,\n encoding: 'utf8',\n shell: true,\n env: {\n ...process.env,\n ...PROJECT_ENV_VARS,\n },\n maxBuffer: 1024 * 1024 * 10, // 10MB buffer\n });\n\n if (stdout) {\n pinoStream.write(stdout);\n }\n if (stderr) {\n pinoStream.write(stderr);\n }\n\n pinoStream.end();\n return { stdout, stderr };\n } catch (error) {\n logger.error('Process failed' + error);\n pinoStream.end();\n return {};\n }\n}\n","import * as fs from 'fs';\nimport { join, resolve } from 'path';\n\nimport { MastraError } from '@mastra/core/error';\nimport { runWithExeca } from './execa.js';\nimport { logger } from './logger.js';\n\nconst MEMOIZED = new Map();\n\nfunction findLockFile(dir: string): string | null {\n const lockFiles = ['pnpm-lock.yaml', 'package-lock.json', 'yarn.lock', 'bun.lock'];\n for (const file of lockFiles) {\n if (fs.existsSync(join(dir, file))) {\n return file;\n }\n }\n const parentDir = resolve(dir, '..');\n if (parentDir !== dir) {\n return findLockFile(parentDir);\n }\n return null;\n}\n\nexport function detectPm({ path }: { path: string }): string {\n const cached = MEMOIZED.get(path);\n if (cached) {\n return cached;\n }\n\n const lockFile = findLockFile(path);\n let pm: string = 'npm';\n switch (lockFile) {\n case 'pnpm-lock.yaml':\n pm = 'pnpm';\n break;\n case 'package-lock.json':\n pm = 'npm';\n break;\n case 'yarn.lock':\n pm = 'yarn';\n break;\n case 'bun.lock':\n pm = 'bun';\n break;\n default:\n pm = 'npm';\n }\n\n MEMOIZED.set(path, pm);\n return pm;\n}\n\nexport async function installNodeVersion({ path }: { path: string }) {\n let nvmrcExists = false;\n let nodeVersionExists = false;\n\n try {\n fs.accessSync(join(path, '.nvmrc'));\n nvmrcExists = true;\n } catch {\n // File does not exist\n }\n\n try {\n fs.accessSync(join(path, '.node-version'));\n nodeVersionExists = true;\n } catch {\n // File does not exist\n }\n\n if (nvmrcExists || nodeVersionExists) {\n logger.info('Node version file found, installing specified Node.js version...');\n const { success, error } = await runWithExeca({\n cmd: 'n',\n args: ['auto'],\n cwd: path,\n });\n if (!success) {\n throw new MastraError(\n {\n id: 'NODE_FAIL_INSTALL_SPECIFIED_VERSION',\n category: 'USER',\n domain: 'DEPLOYER',\n },\n error,\n );\n }\n }\n}\n\nexport async function installDeps({ path, pm }: { path: string; pm?: string }) {\n pm = pm ?? detectPm({ path });\n logger.info(`Installing dependencies with ${pm} in ${path}`);\n const args = ['install'];\n const { success, error } = await runWithExeca({ cmd: pm, args, cwd: path });\n if (!success) {\n throw new MastraError(\n {\n id: 'FAIL_INSTALL_DEPS',\n category: 'USER',\n domain: 'DEPLOYER',\n },\n error,\n );\n }\n}\n\nexport async function runInstallCommand({ path, installCommand }: { path: string; installCommand: string }) {\n logger.info(`Running install command ${installCommand} in workspace with ${path}`);\n const { success, error } = await runWithExeca({ cmd: 'sh', args: ['-c', installCommand], cwd: path });\n if (!success) {\n throw new MastraError(\n {\n id: 'FAIL_CUSTOM_INSTALL_COMMAND',\n category: 'USER',\n domain: 'DEPLOYER',\n },\n error,\n );\n }\n}\n\nexport async function runScript({ scriptName, path, args }: { scriptName: string; path: string; args?: string[] }) {\n const pm = detectPm({ path });\n logger.info(`Running script ${scriptName} in workspace with ${pm}`);\n const { success, error } = await runWithExeca({\n cmd: pm,\n args: pm === 'npm' ? ['run', scriptName, ...(args ?? [])] : [scriptName, ...(args ?? [])],\n cwd: path,\n });\n if (!success) {\n throw new MastraError(\n {\n id: 'FAIL_BUILD_SCRIPT',\n category: 'USER',\n domain: 'DEPLOYER',\n },\n error,\n );\n }\n}\n\nexport async function runBuildCommand({ command, path }: { command: string; path: string }) {\n logger.info(`Running build command ${command}`);\n const { success, error } = await runWithExeca({ cmd: 'sh', args: ['-c', command], cwd: path });\n if (!success) {\n throw new MastraError(\n {\n id: 'FAIL_BUILD_COMMAND',\n category: 'USER',\n domain: 'DEPLOYER',\n },\n error,\n );\n }\n}\n","import { join } from 'path';\nimport { MastraError } from '@mastra/core/error';\nimport { FileService } from '@mastra/deployer';\n\nimport { MASTRA_DIRECTORY } from './constants.js';\n\nexport function getMastraEntryFile(mastraDir: string) {\n try {\n const fileService = new FileService();\n return fileService.getFirstExistingFile([\n join(mastraDir, MASTRA_DIRECTORY, 'index.ts'),\n join(mastraDir, MASTRA_DIRECTORY, 'index.js'),\n ]);\n } catch (error) {\n throw new MastraError(\n {\n id: 'MASTRA_ENTRY_FILE_NOT_FOUND',\n category: 'USER',\n domain: 'DEPLOYER',\n },\n error,\n );\n }\n}\n","import { PROJECT_ID, BUILD_ID, BUILD_URL, USER_IP_ADDRESS } from './constants.js';\n\nexport function successEntrypoint() {\n return `\n if (process.env.CI !== 'true' && process.env.REPORTER_API_URL && process.env.REPORTER_API_URL_AUTH_TOKEN) {\n await fetch(process.env.REPORTER_API_URL, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n Authorization: \\`Bearer \\$\\{process.env.REPORTER_API_URL_AUTH_TOKEN\\}\\`,\n },\n body: JSON.stringify(${JSON.stringify({\n projectId: PROJECT_ID,\n buildId: BUILD_ID,\n status: 'success',\n url: BUILD_URL,\n userIpAddress: USER_IP_ADDRESS,\n })}),\n }).catch(err => {\n console.error('Failed to report build status to monitoring service', {\n error: err,\n });\n })\n }\n `;\n}\n","import { fileURLToPath } from 'node:url';\nimport { join, dirname } from 'path';\nimport { Deployer } from '@mastra/deployer';\nimport { copy } from 'fs-extra';\n\nimport { getAuthEntrypoint } from './utils/auth.js';\nimport { MASTRA_DIRECTORY, BUILD_ID, PROJECT_ID, TEAM_ID } from './utils/constants.js';\nimport { installDeps } from './utils/deps.js';\nimport { getMastraEntryFile } from './utils/file.js';\nimport { successEntrypoint } from './utils/report.js';\n\nexport class CloudDeployer extends Deployer {\n constructor() {\n super({ name: 'cloud' });\n }\n\n async deploy(_outputDirectory: string): Promise<void> {}\n async writeInstrumentationFile(outputDirectory: string) {\n const instrumentationFile = join(outputDirectory, 'instrumentation.mjs');\n const __dirname = dirname(fileURLToPath(import.meta.url));\n\n await copy(join(__dirname, '../templates', 'instrumentation-template.js'), instrumentationFile);\n }\n writePackageJson(outputDirectory: string, dependencies: Map<string, string>) {\n dependencies.set('@mastra/loggers', '0.10.6');\n dependencies.set('@mastra/libsql', '0.13.1');\n dependencies.set('@mastra/cloud', '0.1.7');\n return super.writePackageJson(outputDirectory, dependencies);\n }\n\n async lint() {}\n\n protected async installDependencies(outputDirectory: string, _rootDir = process.cwd()) {\n await installDeps({ path: join(outputDirectory, 'output'), pm: 'npm' });\n }\n\n async bundle(mastraDir: string, outputDirectory: string): Promise<void> {\n const currentCwd = process.cwd();\n process.chdir(mastraDir);\n\n const mastraEntryFile = getMastraEntryFile(mastraDir);\n\n const defaultToolsPath = join(mastraDir, MASTRA_DIRECTORY, 'tools');\n\n await this._bundle(this.getEntry(), mastraEntryFile, outputDirectory, [defaultToolsPath]);\n process.chdir(currentCwd);\n }\n\n getAuthEntrypoint() {\n return getAuthEntrypoint();\n }\n\n private getEntry(): string {\n return `\nimport { createNodeServer, getToolExports } from '#server';\nimport { tools } from '#tools';\nimport { mastra } from '#mastra';\nimport { MultiLogger } from '@mastra/core/logger';\nimport { PinoLogger } from '@mastra/loggers';\nimport { UpstashTransport } from '@mastra/loggers/upstash';\nimport { HttpTransport } from '@mastra/loggers/http';\nimport { evaluate } from '@mastra/core/eval';\nimport { AvailableHooks, registerHook } from '@mastra/core/hooks';\nimport { LibSQLStore, LibSQLVector } from '@mastra/libsql';\n\nconst startTime = process.env.RUNNER_START_TIME ? new Date(process.env.RUNNER_START_TIME).getTime() : Date.now();\nconst createNodeServerStartTime = Date.now();\n\nconsole.log(JSON.stringify({\n message: \"Server starting\",\n operation: 'builder.createNodeServer',\n operation_startTime: createNodeServerStartTime,\n type: \"READINESS\",\n startTime,\n metadata: {\n teamId: \"${TEAM_ID}\",\n projectId: \"${PROJECT_ID}\",\n buildId: \"${BUILD_ID}\",\n },\n}));\n\nconst transports = {}\nif (process.env.CI !== 'true') {\n if (process.env.BUSINESS_API_RUNNER_LOGS_ENDPOINT) {\n transports.default = new HttpTransport({\n url: process.env.BUSINESS_API_RUNNER_LOGS_ENDPOINT,\n headers: {\n Authorization: 'Bearer ' + process.env.BUSINESS_JWT_TOKEN,\n },\n });\n }\n}\n\nconst logger = new PinoLogger({\n name: 'MastraCloud',\n transports,\n level: 'debug',\n});\nconst existingLogger = mastra?.getLogger();\nconst combinedLogger = existingLogger ? new MultiLogger([logger, existingLogger]) : logger;\n\nmastra.setLogger({ logger: combinedLogger });\n\nif (mastra?.storage) {\n mastra.storage.init()\n}\n\nif (process.env.MASTRA_STORAGE_URL && process.env.MASTRA_STORAGE_AUTH_TOKEN) {\n const { MastraStorage } = await import('@mastra/core/storage');\n logger.info('Using Mastra Cloud Storage: ' + process.env.MASTRA_STORAGE_URL)\n const storage = new LibSQLStore({\n url: process.env.MASTRA_STORAGE_URL,\n authToken: process.env.MASTRA_STORAGE_AUTH_TOKEN,\n })\n const vector = new LibSQLVector({\n connectionUrl: process.env.MASTRA_STORAGE_URL,\n authToken: process.env.MASTRA_STORAGE_AUTH_TOKEN,\n })\n\n await storage.init()\n mastra?.setStorage(storage)\n\n mastra?.memory?.setStorage(storage)\n mastra?.memory?.setVector(vector)\n\n registerHook(AvailableHooks.ON_GENERATION, ({ input, output, metric, runId, agentName, instructions }) => {\n evaluate({\n agentName,\n input,\n metric,\n output,\n runId,\n globalRunId: runId,\n instructions,\n });\n });\n registerHook(AvailableHooks.ON_EVALUATION, async traceObject => {\n if (mastra?.storage) {\n await mastra.storage.insert({\n tableName: MastraStorage.TABLE_EVALS,\n record: {\n input: traceObject.input,\n output: traceObject.output,\n result: JSON.stringify(traceObject.result),\n agent_name: traceObject.agentName,\n metric_name: traceObject.metricName,\n instructions: traceObject.instructions,\n test_info: null,\n global_run_id: traceObject.globalRunId,\n run_id: traceObject.runId,\n created_at: new Date().toISOString(),\n },\n });\n }\n });\n}\n\n${getAuthEntrypoint()}\n\nawait createNodeServer(mastra, { playground: false, swaggerUI: false, tools: getToolExports(tools) });\n\n${successEntrypoint()}\n\nconsole.log(JSON.stringify({\n message: \"Server started\",\n operation: 'builder.createNodeServer',\n operation_startTime: createNodeServerStartTime,\n operation_durationMs: Date.now() - createNodeServerStartTime,\n type: \"READINESS\",\n startTime,\n metadata: {\n teamId: \"${TEAM_ID}\",\n projectId: \"${PROJECT_ID}\",\n buildId: \"${BUILD_ID}\",\n },\n}));\n\n\nconsole.log(JSON.stringify({\n message: \"Runner Initialized\",\n type: \"READINESS\",\n startTime,\n durationMs: Date.now() - startTime,\n metadata: {\n teamId: \"${TEAM_ID}\",\n projectId: \"${PROJECT_ID}\",\n buildId: \"${BUILD_ID}\",\n },\n}));\n`;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/utils/auth.ts","../src/utils/constants.ts","../src/utils/logger.ts","../src/utils/execa.ts","../src/utils/deps.ts","../src/utils/file.ts","../src/utils/report.ts","../src/index.ts"],"names":["os","createClient","LoggerTransport","resolve","PinoLogger","Transform","execa","fs","join","error","MastraError","FileService","Deployer","IS_DEFAULT","fileURLToPath","dirname","copy","readJSON"],"mappings":"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","file":"index.cjs","sourcesContent":["export function getAuthEntrypoint() {\n const tokensObject: Record<string, { id: string }> = {};\n\n if (process.env.PLAYGROUND_JWT_TOKEN) {\n tokensObject[process.env.PLAYGROUND_JWT_TOKEN] = { id: 'business-api' };\n }\n if (process.env.BUSINESS_JWT_TOKEN) {\n tokensObject[process.env.BUSINESS_JWT_TOKEN] = { id: 'business-api' };\n }\n\n return `\n import { SimpleAuth, CompositeAuth } from '@mastra/core/server';\n\n class MastraCloudAuth extends SimpleAuth {\n constructor() {\n super({\n tokens: ${JSON.stringify(tokensObject)}\n });\n }\n\n async authorizeUser(user, request) {\n // Allow access to /api path\n if (request && request.url && new URL(request.url).pathname === '/api') {\n return true;\n }\n // Allow access for business-api users\n if (user && user.id === 'business-api') {\n return true;\n }\n return false;\n }\n }\n\n const serverConfig = mastra.getServer()\n if (serverConfig && serverConfig.auth) {\n const existingAuth = serverConfig.auth\n const cloudAuth = new MastraCloudAuth()\n \n // Use CompositeAuth to combine cloud auth with existing auth\n serverConfig.auth = new CompositeAuth([cloudAuth, existingAuth])\n }\n `;\n}\n","import os from 'node:os';\n\nexport const LOCAL = process.env.LOCAL === 'true';\nexport const TEAM_ID: string = process.env.TEAM_ID ?? '';\nexport const PROJECT_ID: string = process.env.PROJECT_ID ?? '';\nexport const BUILD_ID: string = process.env.BUILD_ID ?? '';\nexport const BUILD_URL: string = process.env.BUILD_URL ?? '';\nexport const LOG_REDIS_URL: string = process.env.LOG_REDIS_URL ?? 'redis://localhost:6379';\nexport const BUSINESS_JWT_TOKEN: string = process.env.BUSINESS_JWT_TOKEN ?? '';\nexport const PLAYGROUND_JWT_TOKEN: string = process.env.PLAYGROUND_JWT_TOKEN ?? '';\nexport const USER_IP_ADDRESS: string = process.env.USER_IP_ADDRESS ?? '';\nexport const MASTRA_DIRECTORY: string = process.env.MASTRA_DIRECTORY ?? 'src/mastra';\nexport const PROJECT_ENV_VARS: Record<string, string> = safelyParseJson(process.env.PROJECT_ENV_VARS ?? '{}');\n\nexport const PROJECT_ROOT = LOCAL ? os.tmpdir() + '/project' : (process.env.PROJECT_ROOT ?? '/project');\n\nexport function safelyParseJson(json: string) {\n try {\n return JSON.parse(json);\n } catch {\n return {};\n }\n}\n","import type { TransformCallback } from 'node:stream';\nimport type { BaseLogMessage, LogLevel } from '@mastra/core/logger';\nimport { LoggerTransport } from '@mastra/core/logger';\nimport { PinoLogger } from '@mastra/loggers';\nimport { createClient } from 'redis';\nimport { BUILD_ID, LOG_REDIS_URL, PROJECT_ID, TEAM_ID } from './constants.js';\n\nconst redisClient = createClient({\n url: LOG_REDIS_URL,\n});\n\nclass RedisTransport extends LoggerTransport {\n _transform(chunk: any, _encoding: string, callback: TransformCallback): void {\n chunk = chunk.toString();\n const logKey = `builder:logs:${TEAM_ID}:${PROJECT_ID}:${BUILD_ID}`;\n const ttl = 2 * 24 * 60 * 60; // 2 days in seconds\n const logData = typeof chunk === 'string' ? chunk : JSON.stringify(chunk);\n\n // Don't block the event loop - process logs asynchronously\n process.nextTick(async () => {\n try {\n // Connect to Redis if not already connected\n if (!redisClient.isOpen) {\n await redisClient.connect().catch(err => {\n console.error('Redis connection error:', err);\n });\n }\n\n // Use pipeline to batch Redis operations\n const pipeline = redisClient.multi();\n pipeline.rPush(logKey, logData);\n pipeline.expire(logKey, ttl);\n await pipeline.exec();\n } catch (err) {\n console.error('Redis logging error:', err);\n }\n });\n\n // Immediately pass through the chunk without waiting\n callback(null, chunk);\n }\n\n _write(chunk: any, encoding?: string, callback?: (error?: Error | null) => void): boolean {\n if (typeof callback === 'function') {\n this._transform(chunk, encoding || 'utf8', callback);\n return true;\n }\n\n this._transform(chunk, encoding || 'utf8', (error: Error | null | undefined) => {\n if (error) console.error('Transform error in write:', error);\n });\n return true;\n }\n\n async _flush(): Promise<void> {\n // // Ensure the pipeline is closed and flushed\n // redisClient.quit().catch(err => {\n // console.error('Redis connection error:', err);\n // });\n // callback();\n await new Promise(resolve => setTimeout(resolve, 10));\n }\n\n async _destroy(err: Error, cb: Function) {\n await closeLogger();\n cb(err);\n }\n\n listLogs(_args: {\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n returnPaginationResults?: boolean;\n page?: number;\n perPage?: number;\n }): Promise<{ logs: BaseLogMessage[]; total: number; page: number; perPage: number; hasMore: boolean }> {\n return Promise.resolve({\n logs: [],\n total: 0,\n page: _args?.page ?? 1,\n perPage: _args?.perPage ?? 100,\n hasMore: false,\n });\n }\n\n listLogsByRunId(_args?: {\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n returnPaginationResults?: boolean;\n page?: number;\n perPage?: number;\n }): Promise<{\n logs: BaseLogMessage[];\n total: number;\n page: number;\n perPage: number;\n hasMore: boolean;\n }> {\n return Promise.resolve({\n logs: [],\n total: 0,\n page: _args?.page ?? 1,\n perPage: _args?.perPage ?? 100,\n hasMore: false,\n });\n }\n}\n\nexport const transport = new RedisTransport();\n\nexport const closeLogger = async () => {\n if (redisClient.isOpen) {\n setTimeout(async () => {\n await redisClient.quit();\n }, 10);\n }\n};\n\nexport const logger = new PinoLogger({\n level: 'info',\n transports: {\n redis: transport,\n },\n});\n","import { Transform } from 'node:stream';\nimport { execa } from 'execa';\nimport { PROJECT_ENV_VARS, PROJECT_ROOT } from './constants.js';\nimport { logger } from './logger.js';\n\nexport const createPinoStream = () => {\n return new Transform({\n transform(chunk, encoding, callback) {\n // Convert Buffer/string to string and trim whitespace\n const line = chunk.toString().trim();\n\n if (line) {\n // Log each line through Pino\n logger.info(line);\n }\n\n // Pass through the original data\n callback(null, chunk);\n },\n });\n};\n\nexport async function runWithExeca({\n cmd,\n args,\n cwd = process.cwd(),\n env = PROJECT_ENV_VARS,\n}: {\n cmd: string;\n args: string[];\n cwd?: string;\n env?: Record<string, string>;\n}): Promise<{ stdout?: string; stderr?: string; success: boolean; error?: Error }> {\n const pinoStream = createPinoStream();\n\n try {\n const subprocess = execa(cmd, args, {\n cwd,\n env: {\n ...process.env,\n ...env,\n },\n });\n\n // Pipe stdout and stderr through the Pino stream\n subprocess.stdout?.pipe(pinoStream);\n subprocess.stderr?.pipe(pinoStream);\n\n const { stdout, stderr, exitCode } = await subprocess;\n return { stdout, stderr, success: exitCode === 0 };\n } catch (error) {\n logger.error(`Process failed: ${error}`);\n return { success: false, error: error instanceof Error ? error : new Error(String(error)) };\n }\n}\n\nexport function runWithChildProcess(cmd: string, args: string[]): { stdout?: string; stderr?: string } {\n const pinoStream = createPinoStream();\n\n try {\n const { stdout, stderr } = require('node:child_process').spawnSync(cmd, args, {\n cwd: PROJECT_ROOT,\n encoding: 'utf8',\n shell: true,\n env: {\n ...process.env,\n ...PROJECT_ENV_VARS,\n },\n maxBuffer: 1024 * 1024 * 10, // 10MB buffer\n });\n\n if (stdout) {\n pinoStream.write(stdout);\n }\n if (stderr) {\n pinoStream.write(stderr);\n }\n\n pinoStream.end();\n return { stdout, stderr };\n } catch (error) {\n logger.error('Process failed' + error);\n pinoStream.end();\n return {};\n }\n}\n","import * as fs from 'node:fs';\nimport { join, resolve } from 'node:path';\n\nimport { MastraError } from '@mastra/core/error';\nimport { runWithExeca } from './execa.js';\nimport { logger } from './logger.js';\n\nconst MEMOIZED = new Map();\n\nfunction findLockFile(dir: string): string | null {\n const lockFiles = ['pnpm-lock.yaml', 'package-lock.json', 'yarn.lock', 'bun.lock'];\n for (const file of lockFiles) {\n if (fs.existsSync(join(dir, file))) {\n return file;\n }\n }\n const parentDir = resolve(dir, '..');\n if (parentDir !== dir) {\n return findLockFile(parentDir);\n }\n return null;\n}\n\nexport function detectPm({ path }: { path: string }): string {\n const cached = MEMOIZED.get(path);\n if (cached) {\n return cached;\n }\n\n const lockFile = findLockFile(path);\n let pm: string = 'npm';\n switch (lockFile) {\n case 'pnpm-lock.yaml':\n pm = 'pnpm';\n break;\n case 'package-lock.json':\n pm = 'npm';\n break;\n case 'yarn.lock':\n pm = 'yarn';\n break;\n case 'bun.lock':\n pm = 'bun';\n break;\n default:\n pm = 'npm';\n }\n\n MEMOIZED.set(path, pm);\n return pm;\n}\n\nexport async function installNodeVersion({ path }: { path: string }) {\n let nvmrcExists = false;\n let nodeVersionExists = false;\n\n try {\n fs.accessSync(join(path, '.nvmrc'));\n nvmrcExists = true;\n } catch {\n // File does not exist\n }\n\n try {\n fs.accessSync(join(path, '.node-version'));\n nodeVersionExists = true;\n } catch {\n // File does not exist\n }\n\n if (nvmrcExists || nodeVersionExists) {\n logger.info('Node version file found, installing specified Node.js version...');\n const { success, error } = await runWithExeca({\n cmd: 'n',\n args: ['auto'],\n cwd: path,\n });\n if (!success) {\n throw new MastraError(\n {\n id: 'NODE_FAIL_INSTALL_SPECIFIED_VERSION',\n category: 'USER',\n domain: 'DEPLOYER',\n },\n error,\n );\n }\n }\n}\n\nexport async function installDeps({ path, pm }: { path: string; pm?: string }) {\n pm = pm ?? detectPm({ path });\n logger.info(`Installing dependencies with ${pm} in ${path}`);\n // --force is needed to install peer deps for external packages in the mastra output directory\n // --legacy-peer-deps=false is needed to override other overrides by the repo package manager such as pnpm. Pnpm would set it to true\n const args = ['install', '--legacy-peer-deps=false', '--force'];\n const { success, error } = await runWithExeca({ cmd: pm, args, cwd: path });\n if (!success) {\n throw new MastraError(\n {\n id: 'FAIL_INSTALL_DEPS',\n category: 'USER',\n domain: 'DEPLOYER',\n },\n error,\n );\n }\n}\n\nexport async function runInstallCommand({ path, installCommand }: { path: string; installCommand: string }) {\n logger.info(`Running install command ${installCommand} in workspace with ${path}`);\n const { success, error } = await runWithExeca({ cmd: 'sh', args: ['-c', installCommand], cwd: path });\n if (!success) {\n throw new MastraError(\n {\n id: 'FAIL_CUSTOM_INSTALL_COMMAND',\n category: 'USER',\n domain: 'DEPLOYER',\n },\n error,\n );\n }\n}\n\nexport async function runScript({ scriptName, path, args }: { scriptName: string; path: string; args?: string[] }) {\n const pm = detectPm({ path });\n logger.info(`Running script ${scriptName} in workspace with ${pm}`);\n const { success, error } = await runWithExeca({\n cmd: pm,\n args: pm === 'npm' ? ['run', scriptName, ...(args ?? [])] : [scriptName, ...(args ?? [])],\n cwd: path,\n });\n if (!success) {\n throw new MastraError(\n {\n id: 'FAIL_BUILD_SCRIPT',\n category: 'USER',\n domain: 'DEPLOYER',\n },\n error,\n );\n }\n}\n\nexport async function runBuildCommand({ command, path }: { command: string; path: string }) {\n logger.info(`Running build command ${command}`);\n const { success, error } = await runWithExeca({ cmd: 'sh', args: ['-c', command], cwd: path });\n if (!success) {\n throw new MastraError(\n {\n id: 'FAIL_BUILD_COMMAND',\n category: 'USER',\n domain: 'DEPLOYER',\n },\n error,\n );\n }\n}\n","import { join } from 'node:path';\nimport { MastraError } from '@mastra/core/error';\nimport { FileService } from '@mastra/deployer';\n\nimport { MASTRA_DIRECTORY } from './constants.js';\n\nexport function getMastraEntryFile(mastraDir: string) {\n try {\n const fileService = new FileService();\n return fileService.getFirstExistingFile([\n join(mastraDir, MASTRA_DIRECTORY, 'index.ts'),\n join(mastraDir, MASTRA_DIRECTORY, 'index.js'),\n ]);\n } catch (error) {\n throw new MastraError(\n {\n id: 'MASTRA_ENTRY_FILE_NOT_FOUND',\n category: 'USER',\n domain: 'DEPLOYER',\n },\n error,\n );\n }\n}\n","import { PROJECT_ID, BUILD_ID, BUILD_URL, USER_IP_ADDRESS } from './constants.js';\n\nexport function successEntrypoint() {\n return `\n if (process.env.CI !== 'true') {\n await fetch('${process.env.REPORTER_API_URL}', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n Authorization: 'Bearer ${process.env.REPORTER_API_URL_AUTH_TOKEN}',\n },\n body: JSON.stringify(${JSON.stringify({\n projectId: PROJECT_ID,\n buildId: BUILD_ID,\n status: 'success',\n url: BUILD_URL,\n userIpAddress: USER_IP_ADDRESS,\n })}),\n }).catch(err => {\n console.error('Failed to report build status to monitoring service', {\n error: err,\n });\n })\n }\n `;\n}\n","import { join, dirname } from 'node:path';\nimport { fileURLToPath } from 'node:url';\nimport type { Config } from '@mastra/core/mastra';\nimport { Deployer } from '@mastra/deployer';\nimport { IS_DEFAULT } from '@mastra/deployer/bundler';\nimport { copy, readJSON } from 'fs-extra/esm';\n\nimport { getAuthEntrypoint } from './utils/auth.js';\nimport { MASTRA_DIRECTORY, BUILD_ID, PROJECT_ID, TEAM_ID } from './utils/constants.js';\nimport { installDeps } from './utils/deps.js';\nimport { getMastraEntryFile } from './utils/file.js';\nimport { successEntrypoint } from './utils/report.js';\n\nexport class CloudDeployer extends Deployer {\n private studio: boolean;\n\n constructor({ studio }: { studio?: boolean } = {}) {\n super({ name: 'cloud' });\n this.studio = studio ?? false;\n }\n\n protected async getUserBundlerOptions(\n mastraEntryFile: string,\n outputDirectory: string,\n ): Promise<NonNullable<Config['bundler']>> {\n const bundlerOptions = await super.getUserBundlerOptions(mastraEntryFile, outputDirectory);\n\n if (!bundlerOptions?.[IS_DEFAULT]) {\n return bundlerOptions;\n }\n\n return {\n ...bundlerOptions,\n externals: true,\n };\n }\n\n async deploy(_outputDirectory: string): Promise<void> {}\n\n async prepare(outputDirectory: string): Promise<void> {\n await super.prepare(outputDirectory);\n\n if (this.studio) {\n const __filename = fileURLToPath(import.meta.url);\n const __dirname = dirname(__filename);\n\n const playgroundServePath = join(outputDirectory, this.outputDir, 'playground');\n await copy(join(dirname(__dirname), 'dist/playground'), playgroundServePath, {\n overwrite: true,\n });\n }\n }\n async writePackageJson(outputDirectory: string, dependencies: Map<string, string>) {\n const versions = (await readJSON(join(dirname(fileURLToPath(import.meta.url)), '../versions.json'))) as\n | Record<string, string>\n | undefined;\n for (const [pkgName, version] of Object.entries(versions || {})) {\n dependencies.set(pkgName, version);\n }\n\n return super.writePackageJson(outputDirectory, dependencies);\n }\n\n async lint() {}\n\n protected async installDependencies(outputDirectory: string, _rootDir = process.cwd()) {\n await installDeps({ path: join(outputDirectory, 'output'), pm: 'npm' });\n }\n\n async bundle(mastraDir: string, outputDirectory: string): Promise<void> {\n const currentCwd = process.cwd();\n process.chdir(mastraDir);\n\n const mastraEntryFile = getMastraEntryFile(mastraDir);\n\n const mastraAppDir = join(mastraDir, MASTRA_DIRECTORY);\n\n // Use the getAllToolPaths method to prepare tools paths\n const discoveredTools = this.getAllToolPaths(mastraAppDir);\n\n await this.prepare(outputDirectory);\n await this._bundle(\n this.getEntry(),\n mastraEntryFile,\n {\n outputDirectory,\n projectRoot: mastraDir,\n },\n discoveredTools,\n );\n process.chdir(currentCwd);\n }\n\n getAuthEntrypoint() {\n return getAuthEntrypoint();\n }\n\n private getEntry(): string {\n return `\nimport { createNodeServer, getToolExports } from '#server';\nimport { tools } from '#tools';\nimport { mastra } from '#mastra';\nimport { MultiLogger } from '@mastra/core/logger';\nimport { PinoLogger } from '@mastra/loggers';\nimport { HttpTransport } from '@mastra/loggers/http';\nimport { LibSQLStore, LibSQLVector } from '@mastra/libsql';\nimport { scoreTracesWorkflow } from '@mastra/core/evals/scoreTraces';\nconst startTime = process.env.RUNNER_START_TIME ? new Date(process.env.RUNNER_START_TIME).getTime() : Date.now();\nconst createNodeServerStartTime = Date.now();\n\nconsole.log(JSON.stringify({\n message: \"Server starting\",\n operation: 'builder.createNodeServer',\n operation_startTime: createNodeServerStartTime,\n type: \"READINESS\",\n startTime,\n metadata: {\n teamId: \"${TEAM_ID}\",\n projectId: \"${PROJECT_ID}\",\n buildId: \"${BUILD_ID}\",\n },\n}));\n\nconst transports = {}\nif (process.env.CI !== 'true') {\n if (process.env.BUSINESS_API_RUNNER_LOGS_ENDPOINT) {\n transports.default = new HttpTransport({\n url: process.env.BUSINESS_API_RUNNER_LOGS_ENDPOINT,\n headers: {\n Authorization: 'Bearer ' + process.env.BUSINESS_JWT_TOKEN,\n },\n });\n }\n}\n\nconst logger = new PinoLogger({\n name: 'MastraCloud',\n transports,\n level: 'debug',\n});\nconst existingLogger = mastra?.getLogger();\nconst combinedLogger = existingLogger ? new MultiLogger([logger, existingLogger]) : logger;\n\nmastra.setLogger({ logger: combinedLogger });\n\nif (process.env.MASTRA_STORAGE_URL && process.env.MASTRA_STORAGE_AUTH_TOKEN) {\n const { MastraStorage } = await import('@mastra/core/storage');\n logger.info('Using Mastra Cloud Storage: ' + process.env.MASTRA_STORAGE_URL)\n const storage = new LibSQLStore({\n id: 'mastra-cloud-storage-libsql',\n url: process.env.MASTRA_STORAGE_URL,\n authToken: process.env.MASTRA_STORAGE_AUTH_TOKEN,\n })\n const vector = new LibSQLVector({\n id: 'mastra-cloud-storage-libsql-vector',\n connectionUrl: process.env.MASTRA_STORAGE_URL,\n authToken: process.env.MASTRA_STORAGE_AUTH_TOKEN,\n })\n\n await storage.init()\n mastra?.setStorage(storage)\n} else if (mastra?.storage) {\n mastra.storage.init()\n}\n\nif (mastra?.getStorage()) {\n mastra.__registerInternalWorkflow(scoreTracesWorkflow);\n}\n\n${getAuthEntrypoint()}\n\nawait createNodeServer(mastra, { playground: ${this.studio}, swaggerUI: false, tools: getToolExports(tools) });\n\n${successEntrypoint()}\n\nconsole.log(JSON.stringify({\n message: \"Server started\",\n operation: 'builder.createNodeServer',\n operation_startTime: createNodeServerStartTime,\n operation_durationMs: Date.now() - createNodeServerStartTime,\n type: \"READINESS\",\n startTime,\n metadata: {\n teamId: \"${TEAM_ID}\",\n projectId: \"${PROJECT_ID}\",\n buildId: \"${BUILD_ID}\",\n },\n}));\n\n\nconsole.log(JSON.stringify({\n message: \"Runner Initialized\",\n type: \"READINESS\",\n startTime,\n durationMs: Date.now() - startTime,\n metadata: {\n teamId: \"${TEAM_ID}\",\n projectId: \"${PROJECT_ID}\",\n buildId: \"${BUILD_ID}\",\n },\n}));\n`;\n }\n}\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,13 @@
|
|
|
1
|
+
import type { Config } from '@mastra/core/mastra';
|
|
1
2
|
import { Deployer } from '@mastra/deployer';
|
|
2
3
|
export declare class CloudDeployer extends Deployer {
|
|
3
|
-
|
|
4
|
+
private studio;
|
|
5
|
+
constructor({ studio }?: {
|
|
6
|
+
studio?: boolean;
|
|
7
|
+
});
|
|
8
|
+
protected getUserBundlerOptions(mastraEntryFile: string, outputDirectory: string): Promise<NonNullable<Config['bundler']>>;
|
|
4
9
|
deploy(_outputDirectory: string): Promise<void>;
|
|
5
|
-
|
|
10
|
+
prepare(outputDirectory: string): Promise<void>;
|
|
6
11
|
writePackageJson(outputDirectory: string, dependencies: Map<string, string>): Promise<void>;
|
|
7
12
|
lint(): Promise<void>;
|
|
8
13
|
protected installDependencies(outputDirectory: string, _rootDir?: string): Promise<void>;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAU5C,qBAAa,aAAc,SAAQ,QAAQ;IACzC,OAAO,CAAC,MAAM,CAAU;gBAEZ,EAAE,MAAM,EAAE,GAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAO;cAKjC,qBAAqB,CACnC,eAAe,EAAE,MAAM,EACvB,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IAapC,MAAM,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAE/C,OAAO,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAa/C,gBAAgB,CAAC,eAAe,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAW3E,IAAI;cAEM,mBAAmB,CAAC,eAAe,EAAE,MAAM,EAAE,QAAQ,SAAgB;IAI/E,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBvE,iBAAiB;IAIjB,OAAO,CAAC,QAAQ;CA0GjB"}
|