@mastra/deployer-cloud 0.0.0-remove-unused-model-providers-api-20251030210744 → 0.0.0-remove-ai-peer-dep-from-evals-20260105220639
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 +256 -5
- package/README.md +0 -1
- package/dist/index.cjs +63 -46
- 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 +63 -46
- 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-CuyxfDje.js +1 -0
- package/dist/playground/assets/abap-DsBKuouk.js +1 -0
- package/dist/playground/assets/abnf-DmPXQeha.js +1 -0
- package/dist/playground/assets/actionscript-3-D_z4Izcz.js +1 -0
- package/dist/playground/assets/actionscript-RwxJflcD.js +1 -0
- package/dist/playground/assets/ada-727ZlQH0.js +1 -0
- package/dist/playground/assets/ada-Dfh6Uaz2.js +1 -0
- package/dist/playground/assets/agda-B0PXrqw4.js +1 -0
- package/dist/playground/assets/al-D3GNosa4.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-1prxTQlG.js +1 -0
- package/dist/playground/assets/apache-Dn00JSTd.js +1 -0
- package/dist/playground/assets/apacheconf-C_LVSnN6.js +1 -0
- package/dist/playground/assets/apex-COJ4H7py.js +1 -0
- package/dist/playground/assets/apex-DCw1ipJ8.js +1 -0
- package/dist/playground/assets/apl-B4CMkyY2.js +1 -0
- package/dist/playground/assets/apl-B9Owxg7w.js +1 -0
- package/dist/playground/assets/apl-BBq3IX1j.js +1 -0
- package/dist/playground/assets/applescript-Bu5BbsvL.js +1 -0
- package/dist/playground/assets/applescript-CEcFKDzj.js +1 -0
- package/dist/playground/assets/aql-BIarVvKf.js +1 -0
- package/dist/playground/assets/ara-7O62HKoU.js +1 -0
- package/dist/playground/assets/arduino-XC3j5Rlx.js +1 -0
- package/dist/playground/assets/arff-iULeVGfO.js +1 -0
- package/dist/playground/assets/asciiarmor-Df11BRmG.js +1 -0
- package/dist/playground/assets/asciidoc-BPT9niGB.js +1 -0
- package/dist/playground/assets/asciidoc-Bm6F_rwB.js +1 -0
- package/dist/playground/assets/asm-Dhn9LcZ4.js +1 -0
- package/dist/playground/assets/asm6502-C3XLZEEK.js +1 -0
- package/dist/playground/assets/asmatmel-DHOIAbco.js +1 -0
- package/dist/playground/assets/asn1-EdZsLKOL.js +1 -0
- package/dist/playground/assets/aspnet-BMrOJBPM.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-BZWzFibP.js +1 -0
- package/dist/playground/assets/autoit-BjvOdiHD.js +1 -0
- package/dist/playground/assets/avisynth-BI9uCaUy.js +1 -0
- package/dist/playground/assets/avro-idl-Z9E-AwiP.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-CTRYCT3r.js +1 -0
- package/dist/playground/assets/bash-CefCgV5_.js +1 -0
- package/dist/playground/assets/basic-DBS9NaGG.js +1 -0
- package/dist/playground/assets/basic-Occx0Kb_.js +1 -0
- package/dist/playground/assets/bat-fje9CFhw.js +1 -0
- package/dist/playground/assets/batch-mPYdh-qr.js +1 -0
- package/dist/playground/assets/bbcode-Bv8sGusm.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-DHo0CJ0O.js +1 -0
- package/dist/playground/assets/bicep-XMq-JZh4.js +1 -0
- package/dist/playground/assets/birb-BtF0iSMA.js +1 -0
- package/dist/playground/assets/bison-Dmius7S2.js +1 -0
- package/dist/playground/assets/blade-a8OxSdnT.js +1 -0
- package/dist/playground/assets/bnf-CQwsQhOy.js +1 -0
- package/dist/playground/assets/brainfuck-BROK22ed.js +1 -0
- package/dist/playground/assets/brainfuck-C4LP7Hcl.js +1 -0
- package/dist/playground/assets/brightscript-4I-4Atgi.js +1 -0
- package/dist/playground/assets/bro-BO57O6nZ.js +1 -0
- package/dist/playground/assets/bsl-Chov_eqm.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-DdM2tsTy.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-W_4Sp6mT.js +1 -0
- package/dist/playground/assets/chaiscript-B_TuFtU1.js +1 -0
- package/dist/playground/assets/chunk-55VPMN3N-5Go-xBwx.js +1 -0
- package/dist/playground/assets/cil-DKwsmXqx.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-CFG37S2P.js +1 -0
- package/dist/playground/assets/clojure-BMjYHr_A.js +1 -0
- package/dist/playground/assets/clojure-BpQDDggH.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-lUk1t_Il.js +1 -0
- package/dist/playground/assets/cobol-CWcv1MsR.js +1 -0
- package/dist/playground/assets/cobol-DA4WKxea.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-13C4Y__p.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-BFBaBM60.js +1 -0
- package/dist/playground/assets/coq-86ktafuh.js +1 -0
- package/dist/playground/assets/coq-Dsg_Bt_b.js +1 -0
- package/dist/playground/assets/core-DWKnh9Yx.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-MLae8E4W.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/crystal-XX5atDMS.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/csharp-v6dgd4_p.js +1 -0
- package/dist/playground/assets/cshtml-ByhTydHR.js +1 -0
- package/dist/playground/assets/csp-dbBAEV5X.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-E63s38UF.js +1 -0
- package/dist/playground/assets/css-extras-BfIM_7gn.js +1 -0
- package/dist/playground/assets/csv-B0qRVHPH.js +1 -0
- package/dist/playground/assets/csv-D4ui4PjS.js +1 -0
- package/dist/playground/assets/cue-DtFQj3wx.js +1 -0
- package/dist/playground/assets/cypher-BQGkjANA.js +1 -0
- package/dist/playground/assets/cypher-C_CwsFkJ.js +1 -0
- package/dist/playground/assets/cypher-m2LEI-9-.js +1 -0
- package/dist/playground/assets/d-BoXegm-a.js +1 -0
- package/dist/playground/assets/d-CnRudTJG.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-Cb5f0y3S.js +1 -0
- package/dist/playground/assets/dataweave-D6xnAg1H.js +1 -0
- package/dist/playground/assets/dax-ClGRhx96.js +1 -0
- package/dist/playground/assets/dax-DhSUQqAn.js +1 -0
- package/dist/playground/assets/desktop-DEIpsLCJ.js +1 -0
- package/dist/playground/assets/dhall-CWwKDFe7.js +1 -0
- package/dist/playground/assets/diff-BgYniUM_.js +1 -0
- package/dist/playground/assets/diff-Cy4G304l.js +3 -0
- package/dist/playground/assets/diff-DbItnlRl.js +1 -0
- package/dist/playground/assets/django-BiJsIrWn.js +1 -0
- package/dist/playground/assets/dns-zone-file-CN6o3uHp.js +1 -0
- package/dist/playground/assets/docker-B9gXwTkD.js +1 -0
- package/dist/playground/assets/docker-COcR7UxN.js +1 -0
- package/dist/playground/assets/dockerfile-BKs6k2Af.js +1 -0
- package/dist/playground/assets/dot-CVJztAnC.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-CDyGwa7X.js +1 -0
- package/dist/playground/assets/ebnf-Ip5QB8lB.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-D3_NS9dU.js +1 -0
- package/dist/playground/assets/eiffel-CRGF7rfN.js +1 -0
- package/dist/playground/assets/eiffel-CnydiIhH.js +1 -0
- package/dist/playground/assets/ejs-CkSZUEY0.js +1 -0
- package/dist/playground/assets/elixir--a7qrrSA.js +1 -0
- package/dist/playground/assets/elixir-CLiX3zqd.js +1 -0
- package/dist/playground/assets/elm-BciOsdY8.js +1 -0
- package/dist/playground/assets/elm-CmHSxxaM.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-Dtt5I5mO.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-pm6YnnFy.js +1 -0
- package/dist/playground/assets/etlua-3r4njCXC.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-BEUTFfoA.js +1 -0
- package/dist/playground/assets/factor-kuTfRLto.js +1 -0
- package/dist/playground/assets/factor-xpwbqmQZ.js +1 -0
- package/dist/playground/assets/false-BCmYpC4i.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-CRwPD2xa.js +1 -0
- package/dist/playground/assets/fish-w-ucz2PV.js +1 -0
- package/dist/playground/assets/flow-BQfda4p4.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-DYz_wnZ1.js +1 -0
- package/dist/playground/assets/fortran-IKwB4RqV.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-5y3_nMIL.js +1 -0
- package/dist/playground/assets/fsharp-XplgxFYe.js +1 -0
- package/dist/playground/assets/ftl-BOKOxbj2.js +1 -0
- package/dist/playground/assets/gap-D9YVJqaC.js +1 -0
- package/dist/playground/assets/gas-Bneqetm1.js +1 -0
- package/dist/playground/assets/gcode-B9il5H_J.js +1 -0
- package/dist/playground/assets/gdresource-BHYsBjWJ.js +1 -0
- package/dist/playground/assets/gdscript-CU26QNYh.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-Cf1UmPZm.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-Bs2HiHl1.js +1 -0
- package/dist/playground/assets/gherkin-heZmZLOM.js +1 -0
- package/dist/playground/assets/git-CyvRVOwh.js +1 -0
- package/dist/playground/assets/git-commit-i4q6IMui.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-BOUHJIO7.js +1 -0
- package/dist/playground/assets/glsl-DBO2IWDn.js +1 -0
- package/dist/playground/assets/gml-BKHD6bC3.js +1 -0
- package/dist/playground/assets/gn-BUqLaw98.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-DhGLCSVF.js +1 -0
- package/dist/playground/assets/go-module-0RCYvLpN.js +1 -0
- package/dist/playground/assets/graphql-Cs3jiySy.js +1 -0
- package/dist/playground/assets/graphql-cDcHW_If.js +1 -0
- package/dist/playground/assets/groovy-B8r-2t0h.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-BiQ0-67b.js +1 -0
- package/dist/playground/assets/handlebars-BQGss363.js +1 -0
- package/dist/playground/assets/handlebars-vIu8HVsR.js +1 -0
- package/dist/playground/assets/haskell-BILxekzW.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/haskell-KeVM0RKZ.js +1 -0
- package/dist/playground/assets/haxe-C5wWYbrZ.js +1 -0
- package/dist/playground/assets/haxe-H-WmDvRZ.js +1 -0
- package/dist/playground/assets/haxe-Lq7K0Sq0.js +1 -0
- package/dist/playground/assets/hcl-15efxXpv.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-BQo66zea.js +1 -0
- package/dist/playground/assets/hlsl-ifBTmRxC.js +1 -0
- package/dist/playground/assets/hoon-B1WFrdqj.js +1 -0
- package/dist/playground/assets/houston-DnULxvSX.js +1 -0
- package/dist/playground/assets/hpkp-BQKV_Fqu.js +1 -0
- package/dist/playground/assets/hsts-DcM_Q4_B.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-DRIsmaMx.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-CE-kuJf4.js +1 -0
- package/dist/playground/assets/icon-D2B88OY2.js +1 -0
- package/dist/playground/assets/icu-message-format-DFVVp1W-.js +1 -0
- package/dist/playground/assets/idl-BEugSyMb.js +1 -0
- package/dist/playground/assets/idris-BL3wFWKe.js +1 -0
- package/dist/playground/assets/iecst-50neppxo.js +1 -0
- package/dist/playground/assets/ignore-CP-xvFFZ.js +1 -0
- package/dist/playground/assets/imba-bv_oIlVt.js +1 -0
- package/dist/playground/assets/index-5pxCBy8_.js +7 -0
- package/dist/playground/assets/index-BDCd1k-Z.js +1 -0
- package/dist/playground/assets/index-BfSe1BAk.js +13 -0
- package/dist/playground/assets/index-CRY7HbBE.js +1 -0
- package/dist/playground/assets/index-CX8W-NgL.js +1 -0
- package/dist/playground/assets/index-C_3YruAw.js +1 -0
- package/dist/playground/assets/index-CekXFBL9.js +1 -0
- package/dist/playground/assets/index-CzkaXg0I.js +1 -0
- package/dist/playground/assets/index-D8Jq0o85.js +1 -0
- package/dist/playground/assets/index-D9xUNnek.js +2 -0
- package/dist/playground/assets/index-DfyXu2Gq.js +1 -0
- package/dist/playground/assets/index-Lm83qaFL.js +1 -0
- package/dist/playground/assets/index-NFrBPXuR.js +1 -0
- package/dist/playground/assets/index-OFurLtWU.js +3 -0
- package/dist/playground/assets/index-YQ0NKOoW.js +1 -0
- package/dist/playground/assets/index-_eMonWrd.js +1 -0
- package/dist/playground/assets/index-m5MH8BcQ.js +1 -0
- package/dist/playground/assets/index-svSQIhk-.js +1 -0
- package/dist/playground/assets/index-yUiD89B4.js +1 -0
- package/dist/playground/assets/inform7-u1jt_eSJ.js +1 -0
- package/dist/playground/assets/ini-BjABl1g7.js +1 -0
- package/dist/playground/assets/ini-BuxG6Ru5.js +1 -0
- package/dist/playground/assets/io-C0aEdKzG.js +1 -0
- package/dist/playground/assets/j-CulKbZNP.js +1 -0
- package/dist/playground/assets/java-BE9rPWhm.js +1 -0
- package/dist/playground/assets/java-BxMbkJZ_.js +1 -0
- package/dist/playground/assets/java-xI-RfyKK.js +1 -0
- package/dist/playground/assets/javadoc-C0PTUJ8E.js +1 -0
- package/dist/playground/assets/javadoclike-CSP3dV53.js +1 -0
- package/dist/playground/assets/javadoclike-myFApC35.js +1 -0
- package/dist/playground/assets/javascript-CoEKrxcy.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-Bldq7GGA.js +1 -0
- package/dist/playground/assets/jexl-vIcsQAR4.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-C2tiBN5X.js +1 -0
- package/dist/playground/assets/jq-BKX5W-AI.js +1 -0
- package/dist/playground/assets/js-extras-DjlwbvoP.js +1 -0
- package/dist/playground/assets/js-templates-ClVDxMY3.js +1 -0
- package/dist/playground/assets/jsdoc-D7tfuOc9.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-Ba5vJxH3.js +1 -0
- package/dist/playground/assets/json5-DnOwfRR2.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-SA9OeAXj.js +1 -0
- package/dist/playground/assets/jssm-P4WzXJd0.js +1 -0
- package/dist/playground/assets/jsstacktrace-DwHe3q8V.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-DpTEZfbx.js +1 -0
- package/dist/playground/assets/julia---EEdwvM.js +1 -0
- package/dist/playground/assets/julia-BBuGR-5E.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-stx3MzGJ.js +1 -0
- package/dist/playground/assets/keyman-Dmmd8o42.js +1 -0
- package/dist/playground/assets/kotlin-B5lbUyaz.js +1 -0
- package/dist/playground/assets/kotlin-Bwj9DXMF.js +1 -0
- package/dist/playground/assets/kumir-CQPzu3a8.js +1 -0
- package/dist/playground/assets/kusto-2EE2bukD.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-TMS-d6ix.js +1 -0
- package/dist/playground/assets/latte-58Ish1Jn.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-nlyP4HfI.js +1 -0
- package/dist/playground/assets/light-plus-B7mTdjB0.js +1 -0
- package/dist/playground/assets/lilypond-H1tAf6Ln.js +1 -0
- package/dist/playground/assets/liquid-CxKtLfDd.js +1 -0
- package/dist/playground/assets/liquid-D3W5UaiH.js +1 -0
- package/dist/playground/assets/lisp-B_FNcrjs.js +1 -0
- package/dist/playground/assets/livescript-BwQOo05w.js +1 -0
- package/dist/playground/assets/livescript-X_srvhEd.js +1 -0
- package/dist/playground/assets/llvm-C6DWJ5EQ.js +1 -0
- package/dist/playground/assets/log-Cc5clBb7.js +1 -0
- package/dist/playground/assets/log-WECVKy9h.js +1 -0
- package/dist/playground/assets/logo-IuBKFhSY.js +1 -0
- package/dist/playground/assets/lolcode-CpyBtUI_.js +1 -0
- package/dist/playground/assets/lua-BH6FJ6zE.js +1 -0
- package/dist/playground/assets/lua-BgMRiT3U.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-zfOcyGFD.js +1 -0
- package/dist/playground/assets/main-ByIucY14.js +522 -0
- package/dist/playground/assets/make-Bvotw-X0.js +1 -0
- package/dist/playground/assets/makefile-Dzx66EhP.js +1 -0
- package/dist/playground/assets/markdown-B_bCWQgB.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-fPiSOBr9.js +1 -0
- package/dist/playground/assets/markup-templating-B8RoUb2-.js +1 -0
- package/dist/playground/assets/markup-templating-BxAVv-bL.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-C-BTRBE5.js +1 -0
- package/dist/playground/assets/matlab-D9-PGadD.js +1 -0
- package/dist/playground/assets/maxscript-e52aLgKU.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-6ABJLpYg.js +1 -0
- package/dist/playground/assets/mermaid-C-JpHKlC.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-BPBdSRo2.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-BLWmRZ13.js +1 -0
- package/dist/playground/assets/monkey-DPzpZnUb.js +1 -0
- package/dist/playground/assets/monokai-D4h5O-jR.js +1 -0
- package/dist/playground/assets/moonscript-BsjCuRAd.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-CSU7ni94.js +1 -0
- package/dist/playground/assets/n4js-BLvJJnSG.js +1 -0
- package/dist/playground/assets/nand2tetris-hdl-DYbOudYJ.js +1 -0
- package/dist/playground/assets/naniscript-5isG1O7p.js +1 -0
- package/dist/playground/assets/narrat-DLbgOhZU.js +1 -0
- package/dist/playground/assets/nasm-xm2W3fFF.js +1 -0
- package/dist/playground/assets/neon-F8lEJPQa.js +1 -0
- package/dist/playground/assets/nevod-BXuMBlyB.js +1 -0
- package/dist/playground/assets/nextflow-B0XVJmRM.js +1 -0
- package/dist/playground/assets/nginx-B2xNq08H.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-DSI6SYyU.js +1 -0
- package/dist/playground/assets/nim-ZlGxZxc3.js +1 -0
- package/dist/playground/assets/nix-DSUdSMOW.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-Dd1wa0DI.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-C2kRn1Z8.js +1 -0
- package/dist/playground/assets/ocaml-BNioltXt.js +1 -0
- package/dist/playground/assets/ocaml-CRIs_yJe.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-VsI187FO.js +1 -0
- package/dist/playground/assets/openqasm-BXvMuvo7.js +1 -0
- package/dist/playground/assets/oz-BzwKVEFT.js +1 -0
- package/dist/playground/assets/oz-DRk-z4bB.js +1 -0
- package/dist/playground/assets/parigp-CltLyQyn.js +1 -0
- package/dist/playground/assets/parser-BbzrM57j.js +1 -0
- package/dist/playground/assets/pascal--L3eBynH.js +1 -0
- package/dist/playground/assets/pascal-C96OuQDi.js +1 -0
- package/dist/playground/assets/pascal-JqZropPD.js +1 -0
- package/dist/playground/assets/pascaligo-Dd8Y0lYd.js +1 -0
- package/dist/playground/assets/pcaxis-BGi2Sz73.js +1 -0
- package/dist/playground/assets/peoplecode-DLxUvgHk.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-QON4ML2O.js +1 -0
- package/dist/playground/assets/php-B5ebYQev.js +1 -0
- package/dist/playground/assets/php-CR-lTttI.js +1 -0
- package/dist/playground/assets/php-extras-CnGthWjD.js +1 -0
- package/dist/playground/assets/php-iTdQntIy.js +1 -0
- package/dist/playground/assets/phpdoc-DQohxVaE.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-LKU2TuZ1.js +1 -0
- package/dist/playground/assets/plsql-YzqW3tkf.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-B6lSlVP2.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-C95nfIsp.js +1 -0
- package/dist/playground/assets/powershell-CaxLzxiJ.js +1 -0
- package/dist/playground/assets/prisma-B48N-Iqd.js +1 -0
- package/dist/playground/assets/processing-DeD_J88X.js +1 -0
- package/dist/playground/assets/prolog-BY-TUvya.js +1 -0
- package/dist/playground/assets/prolog-FM0azl_R.js +1 -0
- package/dist/playground/assets/promql-Y152u2fc.js +1 -0
- package/dist/playground/assets/properties-C78fOPTZ.js +1 -0
- package/dist/playground/assets/properties-DXBC_Nqx.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-DBpUqlis.js +1 -0
- package/dist/playground/assets/psl-m3GtiQpg.js +1 -0
- package/dist/playground/assets/pug-B8NnOmUx.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-Cza_XSSt.js +1 -0
- package/dist/playground/assets/puppet-D9WGFJba.js +1 -0
- package/dist/playground/assets/puppet-DMA9R1ak.js +1 -0
- package/dist/playground/assets/pure-PcK4-gST.js +1 -0
- package/dist/playground/assets/purebasic-DhbYQZyf.js +1 -0
- package/dist/playground/assets/purescript-Bg-kzb6g.js +1 -0
- package/dist/playground/assets/purescript-COpd7NaM.js +1 -0
- package/dist/playground/assets/python-BuPzkPfP.js +1 -0
- package/dist/playground/assets/python-DhUJRlN_.js +1 -0
- package/dist/playground/assets/python-s1BMyuJF.js +1 -0
- package/dist/playground/assets/q-BnlME7XU.js +1 -0
- package/dist/playground/assets/q-pXgVlZs6.js +1 -0
- package/dist/playground/assets/qml-CdFyS6CQ.js +1 -0
- package/dist/playground/assets/qml-D8XfuvdV.js +1 -0
- package/dist/playground/assets/qmldir-C8lEn-DE.js +1 -0
- package/dist/playground/assets/qore-BqGe7DCE.js +1 -0
- package/dist/playground/assets/qsharp-BakgD9hk.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-CiRVI6CT.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-D9JIRxhq.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-Bhec5b96.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-GyJ6e1o8.js +1 -0
- package/dist/playground/assets/regexp-DWJ3fJO_.js +1 -0
- package/dist/playground/assets/rego-RQ9NKZiz.js +1 -0
- package/dist/playground/assets/rel-DJlmqQ1C.js +1 -0
- package/dist/playground/assets/renpy-DEbg8wld.js +1 -0
- package/dist/playground/assets/rest--br_9QfL.js +1 -0
- package/dist/playground/assets/rip-Z_cehwRx.js +1 -0
- package/dist/playground/assets/riscv-QhoSD0DR.js +1 -0
- package/dist/playground/assets/roboconf-CkGMlekf.js +1 -0
- package/dist/playground/assets/robotframework-BZvk6b8i.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-CRc_BXYD.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/rust-B0ZME1Uq.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-BfKh84RN.js +1 -0
- package/dist/playground/assets/sas-BmTFh92c.js +1 -0
- package/dist/playground/assets/sass-BJ4Li9vH.js +1 -0
- package/dist/playground/assets/sass-CgR2uJVQ.js +1 -0
- package/dist/playground/assets/scala-BPvgToq3.js +1 -0
- package/dist/playground/assets/scala-DQVVAn-B.js +1 -0
- package/dist/playground/assets/scheme-BIsMs9vk.js +1 -0
- package/dist/playground/assets/scheme-BJGe-b2p.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-D4tuSqTr.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-BALCNlGO.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-EscFeC61.js +1 -0
- package/dist/playground/assets/smalltalk-CnHTOXQT.js +1 -0
- package/dist/playground/assets/smalltalk-DQBJqsPd.js +1 -0
- package/dist/playground/assets/smalltalk-DkLiglaE.js +1 -0
- package/dist/playground/assets/smarty-B4P1ncua.js +1 -0
- package/dist/playground/assets/sml-BOVrgpMx.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-BPyd0bSH.js +1 -0
- package/dist/playground/assets/solidity-C1w2a3ep.js +1 -0
- package/dist/playground/assets/solr-DehyRSwq.js +1 -0
- package/dist/playground/assets/solution-file-DVcpxbW2.js +1 -0
- package/dist/playground/assets/soy-BaQiBOlZ.js +1 -0
- package/dist/playground/assets/soy-C-lX7w71.js +1 -0
- package/dist/playground/assets/sparql-Bokrr16G.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-Ctv7eBvy.js +1 -0
- package/dist/playground/assets/spreadsheet-BCZA_wO0.js +1 -0
- package/dist/playground/assets/sqf-BEeBCQOd.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/sql-pTmZuZKl.js +1 -0
- package/dist/playground/assets/squirrel-Cyqj8v7m.js +1 -0
- package/dist/playground/assets/ssh-config-BknIz3MU.js +1 -0
- package/dist/playground/assets/stan-m6_8QMyf.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-Bpg1AkgL.css +1 -0
- package/dist/playground/assets/stylus-B533Al4x.js +1 -0
- package/dist/playground/assets/stylus-BeQkCIfX.js +1 -0
- package/dist/playground/assets/stylus-DFgjDOuT.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-oNr6nXqM.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-zy3jU9Pg.js +2 -0
- package/dist/playground/assets/t4-cs-BluHqzuI.js +1 -0
- package/dist/playground/assets/t4-templating-B5EzSFYT.js +1 -0
- package/dist/playground/assets/t4-templating-Cdq55WMU.js +1 -0
- package/dist/playground/assets/t4-vb-BuUZLRO7.js +1 -0
- package/dist/playground/assets/talonscript-C1XDQQGZ.js +1 -0
- package/dist/playground/assets/tap-D4K_ERut.js +1 -0
- package/dist/playground/assets/tasl-CQjiPCtT.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/tcl-Dds8xB3b.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-Bry6nHxr.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-BwQOT0rL.js +1 -0
- package/dist/playground/assets/token-util-NEHG7TUY-JRJTGTAB-CEnVi-Sz.js +1 -0
- package/dist/playground/assets/tokyo-night-DBQeEorK.js +1 -0
- package/dist/playground/assets/toml-BCpi9ECr.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/tremor-BVakYqKC.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-XMfIuFUs.js +1 -0
- package/dist/playground/assets/tt2-CB_Zctj1.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-DkhjT1bI.js +1 -0
- package/dist/playground/assets/turtle-Ro1R6Je7.js +1 -0
- package/dist/playground/assets/twig-B454l6mX.js +1 -0
- package/dist/playground/assets/twig-NC5TFiHP.js +1 -0
- package/dist/playground/assets/typescript-CVO-8GEc.js +1 -0
- package/dist/playground/assets/typescript-DiFbOwlg.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-0O2HZaYx.js +1 -0
- package/dist/playground/assets/typst-BVUVsWT6.js +1 -0
- package/dist/playground/assets/unrealscript-8j_8SPGg.js +1 -0
- package/dist/playground/assets/uorazor-CsAQj0RZ.js +1 -0
- package/dist/playground/assets/uri-Ca8qX_Sk.js +1 -0
- package/dist/playground/assets/v-CAQ2eGtk.js +1 -0
- package/dist/playground/assets/v-l4hN08HN.js +1 -0
- package/dist/playground/assets/vala-BFOHcciG.js +1 -0
- package/dist/playground/assets/vala-DwaSD_Fg.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-BK5X03Ue.js +1 -0
- package/dist/playground/assets/vbnet-BhrUc4aD.js +1 -0
- package/dist/playground/assets/vbscript-BuJXcnF6.js +1 -0
- package/dist/playground/assets/velocity-Cd-qtKyI.js +1 -0
- package/dist/playground/assets/velocity-D8B20fx6.js +1 -0
- package/dist/playground/assets/verilog-C6RDOZhf.js +1 -0
- package/dist/playground/assets/verilog-CJaU5se_.js +1 -0
- package/dist/playground/assets/verilog-CfDHP-xk.js +1 -0
- package/dist/playground/assets/vesper-BEBZ7ncR.js +1 -0
- package/dist/playground/assets/vhdl-DYoNaHQp.js +1 -0
- package/dist/playground/assets/vhdl-Dr8u-XYg.js +1 -0
- package/dist/playground/assets/vhdl-lSbBsy5d.js +1 -0
- package/dist/playground/assets/vim-Br9c6zoj.js +1 -0
- package/dist/playground/assets/viml-m4uW47V2.js +1 -0
- package/dist/playground/assets/visual-basic-i2Cy0GDA.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-IH6Lagvf.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/wasm-DHg1SMAq.js +1 -0
- package/dist/playground/assets/web-idl-osPLOmbs.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-C_Z1tLYi.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-DWbZdHT6.js +1 -0
- package/dist/playground/assets/wren-OJQW7eZL.js +1 -0
- package/dist/playground/assets/xeora-DzJUk5le.js +1 -0
- package/dist/playground/assets/xml-doc-CmPsCoJH.js +1 -0
- package/dist/playground/assets/xml-e3z08dGr.js +1 -0
- package/dist/playground/assets/xojo-fGGtKuaV.js +1 -0
- package/dist/playground/assets/xquery-Bz9UVmEx.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-9hgkpP6W.js +1 -0
- package/dist/playground/assets/yaml-CVw76BM1.js +1 -0
- package/dist/playground/assets/yaml-pHjxJgpq.js +1 -0
- package/dist/playground/assets/yang-B0M9nNWn.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-BU6KN6ft.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 +46 -0
- package/dist/playground/mastra.svg +17 -0
- package/dist/utils/auth.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 +1 -1
- package/dist/utils/logger.d.ts.map +1 -1
- package/package.json +17 -12
- package/versions.json +1 -1
- package/templates/instrumentation-template.js +0 -69
package/dist/index.cjs
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
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 bundler = require('@mastra/deployer/bundler');
|
|
6
7
|
var esm = require('fs-extra/esm');
|
|
7
8
|
var os = require('os');
|
|
8
9
|
var fs = require('fs');
|
|
@@ -41,44 +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') {
|
|
55
|
-
const token = args[0].replace('Bearer ', '');
|
|
56
|
-
const validTokens = [];
|
|
57
|
-
${process.env.PLAYGROUND_JWT_TOKEN ? `validTokens.push('${process.env.PLAYGROUND_JWT_TOKEN}');` : ""}
|
|
58
|
-
${process.env.BUSINESS_JWT_TOKEN ? `validTokens.push('${process.env.BUSINESS_JWT_TOKEN}');` : ""}
|
|
59
|
-
|
|
60
|
-
if (validTokens.includes(token)) {
|
|
61
|
-
return { id: 'business-api' }
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
return this.auth.authenticateToken(...args)
|
|
55
|
+
class MastraCloudAuth extends SimpleAuth {
|
|
56
|
+
constructor() {
|
|
57
|
+
super({
|
|
58
|
+
tokens: ${JSON.stringify(tokensObject)}
|
|
59
|
+
});
|
|
65
60
|
}
|
|
66
61
|
|
|
67
|
-
async authorizeUser
|
|
68
|
-
|
|
69
|
-
|
|
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;
|
|
70
66
|
}
|
|
71
|
-
|
|
72
|
-
|
|
67
|
+
// Allow access for business-api users
|
|
68
|
+
if (user && user.id === 'business-api') {
|
|
69
|
+
return true;
|
|
73
70
|
}
|
|
74
|
-
return
|
|
71
|
+
return false;
|
|
75
72
|
}
|
|
76
73
|
}
|
|
77
74
|
|
|
78
75
|
const serverConfig = mastra.getServer()
|
|
79
|
-
if (serverConfig && serverConfig.
|
|
80
|
-
const
|
|
81
|
-
|
|
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])
|
|
82
82
|
}
|
|
83
83
|
`;
|
|
84
84
|
}
|
|
@@ -257,7 +257,7 @@ function detectPm({ path }) {
|
|
|
257
257
|
async function installDeps({ path, pm }) {
|
|
258
258
|
pm = pm ?? detectPm({ path });
|
|
259
259
|
logger.info(`Installing dependencies with ${pm} in ${path}`);
|
|
260
|
-
const args = ["install"];
|
|
260
|
+
const args = ["install", "--legacy-peer-deps=false", "--force"];
|
|
261
261
|
const { success, error: error$1 } = await runWithExeca({ cmd: pm, args, cwd: path });
|
|
262
262
|
if (!success) {
|
|
263
263
|
throw new error.MastraError(
|
|
@@ -317,15 +317,33 @@ function successEntrypoint() {
|
|
|
317
317
|
|
|
318
318
|
// src/index.ts
|
|
319
319
|
var CloudDeployer = class extends deployer.Deployer {
|
|
320
|
-
|
|
320
|
+
studio;
|
|
321
|
+
constructor({ studio } = {}) {
|
|
321
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
|
+
};
|
|
322
334
|
}
|
|
323
335
|
async deploy(_outputDirectory) {
|
|
324
336
|
}
|
|
325
|
-
async
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
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
|
+
}
|
|
329
347
|
}
|
|
330
348
|
async writePackageJson(outputDirectory, dependencies) {
|
|
331
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"));
|
|
@@ -343,7 +361,9 @@ var CloudDeployer = class extends deployer.Deployer {
|
|
|
343
361
|
const currentCwd = process.cwd();
|
|
344
362
|
process.chdir(mastraDir);
|
|
345
363
|
const mastraEntryFile = getMastraEntryFile(mastraDir);
|
|
346
|
-
const
|
|
364
|
+
const mastraAppDir = path.join(mastraDir, MASTRA_DIRECTORY);
|
|
365
|
+
const discoveredTools = this.getAllToolPaths(mastraAppDir);
|
|
366
|
+
await this.prepare(outputDirectory);
|
|
347
367
|
await this._bundle(
|
|
348
368
|
this.getEntry(),
|
|
349
369
|
mastraEntryFile,
|
|
@@ -351,7 +371,7 @@ var CloudDeployer = class extends deployer.Deployer {
|
|
|
351
371
|
outputDirectory,
|
|
352
372
|
projectRoot: mastraDir
|
|
353
373
|
},
|
|
354
|
-
|
|
374
|
+
discoveredTools
|
|
355
375
|
);
|
|
356
376
|
process.chdir(currentCwd);
|
|
357
377
|
}
|
|
@@ -367,7 +387,7 @@ import { MultiLogger } from '@mastra/core/logger';
|
|
|
367
387
|
import { PinoLogger } from '@mastra/loggers';
|
|
368
388
|
import { HttpTransport } from '@mastra/loggers/http';
|
|
369
389
|
import { LibSQLStore, LibSQLVector } from '@mastra/libsql';
|
|
370
|
-
import { scoreTracesWorkflow } from '@mastra/core/
|
|
390
|
+
import { scoreTracesWorkflow } from '@mastra/core/evals/scoreTraces';
|
|
371
391
|
const startTime = process.env.RUNNER_START_TIME ? new Date(process.env.RUNNER_START_TIME).getTime() : Date.now();
|
|
372
392
|
const createNodeServerStartTime = Date.now();
|
|
373
393
|
|
|
@@ -406,27 +426,24 @@ const combinedLogger = existingLogger ? new MultiLogger([logger, existingLogger]
|
|
|
406
426
|
|
|
407
427
|
mastra.setLogger({ logger: combinedLogger });
|
|
408
428
|
|
|
409
|
-
if (mastra?.storage) {
|
|
410
|
-
mastra.storage.init()
|
|
411
|
-
}
|
|
412
|
-
|
|
413
429
|
if (process.env.MASTRA_STORAGE_URL && process.env.MASTRA_STORAGE_AUTH_TOKEN) {
|
|
414
430
|
const { MastraStorage } = await import('@mastra/core/storage');
|
|
415
431
|
logger.info('Using Mastra Cloud Storage: ' + process.env.MASTRA_STORAGE_URL)
|
|
416
432
|
const storage = new LibSQLStore({
|
|
433
|
+
id: 'mastra-cloud-storage-libsql',
|
|
417
434
|
url: process.env.MASTRA_STORAGE_URL,
|
|
418
435
|
authToken: process.env.MASTRA_STORAGE_AUTH_TOKEN,
|
|
419
436
|
})
|
|
420
437
|
const vector = new LibSQLVector({
|
|
438
|
+
id: 'mastra-cloud-storage-libsql-vector',
|
|
421
439
|
connectionUrl: process.env.MASTRA_STORAGE_URL,
|
|
422
440
|
authToken: process.env.MASTRA_STORAGE_AUTH_TOKEN,
|
|
423
441
|
})
|
|
424
442
|
|
|
425
443
|
await storage.init()
|
|
426
444
|
mastra?.setStorage(storage)
|
|
427
|
-
|
|
428
|
-
mastra
|
|
429
|
-
mastra?.memory?.setVector(vector)
|
|
445
|
+
} else if (mastra?.storage) {
|
|
446
|
+
mastra.storage.init()
|
|
430
447
|
}
|
|
431
448
|
|
|
432
449
|
if (mastra?.getStorage()) {
|
|
@@ -435,7 +452,7 @@ if (mastra?.getStorage()) {
|
|
|
435
452
|
|
|
436
453
|
${getAuthEntrypoint()}
|
|
437
454
|
|
|
438
|
-
await createNodeServer(mastra, { playground:
|
|
455
|
+
await createNodeServer(mastra, { playground: ${this.studio}, swaggerUI: false, tools: getToolExports(tools) });
|
|
439
456
|
|
|
440
457
|
${successEntrypoint()}
|
|
441
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","readJSON"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,SAAS,iBAAA,GAAoB;AAClC,EAAA,OAAO;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA,QAAA,EAaC,OAAA,CAAQ,IAAI,oBAAA,GAAuB,CAAA,kBAAA,EAAqB,QAAQ,GAAA,CAAI,oBAAoB,QAAQ,EAAE;AAAA,QAAA,EAClG,OAAA,CAAQ,IAAI,kBAAA,GAAqB,CAAA,kBAAA,EAAqB,QAAQ,GAAA,CAAI,kBAAkB,QAAQ,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAA,CAAA;AA0BxG;ACvCO,IAAM,KAAA,GAAQ,OAAA,CAAQ,GAAA,CAAI,KAAA,KAAU,MAAA;AACpC,IAAM,OAAA,GAAkB,OAAA,CAAQ,GAAA,CAAI,OAAA,IAAW,EAAA;AAC/C,IAAM,UAAA,GAAqB,OAAA,CAAQ,GAAA,CAAI,UAAA,IAAc,EAAA;AACrD,IAAM,QAAA,GAAmB,OAAA,CAAQ,GAAA,CAAI,QAAA,IAAY,EAAA;AACjD,IAAM,SAAA,GAAoB,OAAA,CAAQ,GAAA,CAAI,SAAA,IAAa,EAAA;AACnD,IAAM,aAAA,GAAwB,OAAA,CAAQ,GAAA,CAAI,aAAA,IAAiB,wBAAA;AAG3D,IAAM,eAAA,GAA0B,OAAA,CAAQ,GAAA,CAAI,eAAA,IAAmB,EAAA;AAC/D,IAAM,gBAAA,GAA2B,OAAA,CAAQ,GAAA,CAAI,gBAAA,IAAoB,YAAA;AACjE,IAAM,gBAAA,GAA2C,eAAA,CAAgB,OAAA,CAAQ,GAAA,CAAI,oBAAoB,IAAI,CAAA;AAEhF,QAAQA,mBAAA,CAAG,MAAA,KAAW,UAAA,GAAc,OAAA,CAAQ,IAAI,YAAA,IAAgB;AAErF,SAAS,gBAAgB,IAAA,EAAc;AAC5C,EAAA,IAAI;AACF,IAAA,OAAO,IAAA,CAAK,MAAM,IAAI,CAAA;AAAA,EACxB,CAAA,CAAA,MAAQ;AACN,IAAA,OAAO,EAAC;AAAA,EACV;AACF;ACfA,IAAM,cAAcC,kBAAA,CAAa;AAAA,EAC/B,GAAA,EAAK;AACP,CAAC,CAAA;AAED,IAAM,cAAA,GAAN,cAA6BC,wBAAA,CAAgB;AAAA,EAC3C,UAAA,CAAW,KAAA,EAAY,SAAA,EAAmB,QAAA,EAAmC;AAC3E,IAAA,KAAA,GAAQ,MAAM,QAAA,EAAS;AACvB,IAAA,MAAM,SAAS,CAAA,aAAA,EAAgB,OAAO,CAAA,CAAA,EAAI,UAAU,IAAI,QAAQ,CAAA,CAAA;AAChE,IAAA,MAAM,GAAA,GAAM,CAAA,GAAI,EAAA,GAAK,EAAA,GAAK,EAAA;AAC1B,IAAA,MAAM,UAAU,OAAO,KAAA,KAAU,WAAW,KAAA,GAAQ,IAAA,CAAK,UAAU,KAAK,CAAA;AAGxE,IAAA,OAAA,CAAQ,SAAS,YAAY;AAC3B,MAAA,IAAI;AAEF,QAAA,IAAI,CAAC,YAAY,MAAA,EAAQ;AACvB,UAAA,MAAM,WAAA,CAAY,OAAA,EAAQ,CAAE,KAAA,CAAM,CAAA,GAAA,KAAO;AACvC,YAAA,OAAA,CAAQ,KAAA,CAAM,2BAA2B,GAAG,CAAA;AAAA,UAC9C,CAAC,CAAA;AAAA,QACH;AAGA,QAAA,MAAM,QAAA,GAAW,YAAY,KAAA,EAAM;AACnC,QAAA,QAAA,CAAS,KAAA,CAAM,QAAQ,OAAO,CAAA;AAC9B,QAAA,QAAA,CAAS,MAAA,CAAO,QAAQ,GAAG,CAAA;AAC3B,QAAA,MAAM,SAAS,IAAA,EAAK;AAAA,MACtB,SAAS,GAAA,EAAK;AACZ,QAAA,OAAA,CAAQ,KAAA,CAAM,wBAAwB,GAAG,CAAA;AAAA,MAC3C;AAAA,IACF,CAAC,CAAA;AAGD,IAAA,QAAA,CAAS,MAAM,KAAK,CAAA;AAAA,EACtB;AAAA,EAEA,MAAA,CAAO,KAAA,EAAY,QAAA,EAAmB,QAAA,EAAoD;AACxF,IAAA,IAAI,OAAO,aAAa,UAAA,EAAY;AAClC,MAAA,IAAA,CAAK,UAAA,CAAW,KAAA,EAAO,QAAA,IAAY,MAAA,EAAQ,QAAQ,CAAA;AACnD,MAAA,OAAO,IAAA;AAAA,IACT;AAEA,IAAA,IAAA,CAAK,UAAA,CAAW,KAAA,EAAO,QAAA,IAAY,MAAA,EAAQ,CAAC,KAAA,KAAoC;AAC9E,MAAA,IAAI,KAAA,EAAO,OAAA,CAAQ,KAAA,CAAM,2BAAA,EAA6B,KAAK,CAAA;AAAA,IAC7D,CAAC,CAAA;AACD,IAAA,OAAO,IAAA;AAAA,EACT;AAAA,EAEA,MAAM,MAAA,GAAwB;AAM5B,IAAA,MAAM,IAAI,OAAA,CAAQ,CAAAC,aAAW,UAAA,CAAWA,QAAAA,EAAS,EAAE,CAAC,CAAA;AAAA,EACtD;AAAA,EAEA,MAAM,QAAA,CAAS,GAAA,EAAY,EAAA,EAAc;AACvC,IAAA,MAAM,WAAA,EAAY;AAClB,IAAA,EAAA,CAAG,GAAG,CAAA;AAAA,EACR;AAAA,EAEA,SAAS,KAAA,EAQ+F;AACtG,IAAA,OAAO,QAAQ,OAAA,CAAQ;AAAA,MACrB,MAAM,EAAC;AAAA,MACP,KAAA,EAAO,CAAA;AAAA,MACP,IAAA,EAAM,OAAO,IAAA,IAAQ,CAAA;AAAA,MACrB,OAAA,EAAS,OAAO,OAAA,IAAW,GAAA;AAAA,MAC3B,OAAA,EAAS;AAAA,KACV,CAAA;AAAA,EACH;AAAA,EAEA,gBAAgB,KAAA,EAcb;AACD,IAAA,OAAO,QAAQ,OAAA,CAAQ;AAAA,MACrB,MAAM,EAAC;AAAA,MACP,KAAA,EAAO,CAAA;AAAA,MACP,IAAA,EAAM,OAAO,IAAA,IAAQ,CAAA;AAAA,MACrB,OAAA,EAAS,OAAO,OAAA,IAAW,GAAA;AAAA,MAC3B,OAAA,EAAS;AAAA,KACV,CAAA;AAAA,EACH;AACF,CAAA;AAEO,IAAM,SAAA,GAAY,IAAI,cAAA,EAAe;AAErC,IAAM,cAAc,YAAY;AACrC,EAAA,IAAI,YAAY,MAAA,EAAQ;AACtB,IAAA,UAAA,CAAW,YAAY;AACrB,MAAA,MAAM,YAAY,IAAA,EAAK;AAAA,IACzB,GAAG,EAAE,CAAA;AAAA,EACP;AACF,CAAA;AAEO,IAAM,MAAA,GAAS,IAAIC,kBAAA,CAAW;AAAA,EACnC,KAAA,EAAO,MAAA;AAAA,EACP,UAAA,EAAY;AAAA,IACV,KAAA,EAAO;AAAA;AAEX,CAAC,CAAA;;;ACzHM,IAAM,mBAAmB,MAAM;AACpC,EAAA,OAAO,IAAIC,gBAAA,CAAU;AAAA,IACnB,SAAA,CAAU,KAAA,EAAO,QAAA,EAAU,QAAA,EAAU;AAEnC,MAAA,MAAM,IAAA,GAAO,KAAA,CAAM,QAAA,EAAS,CAAE,IAAA,EAAK;AAEnC,MAAA,IAAI,IAAA,EAAM;AAER,QAAA,MAAA,CAAO,KAAK,IAAI,CAAA;AAAA,MAClB;AAGA,MAAA,QAAA,CAAS,MAAM,KAAK,CAAA;AAAA,IACtB;AAAA,GACD,CAAA;AACH,CAAA;AAEA,eAAsB,YAAA,CAAa;AAAA,EACjC,GAAA;AAAA,EACA,IAAA;AAAA,EACA,GAAA,GAAM,QAAQ,GAAA,EAAI;AAAA,EAClB,GAAA,GAAM;AACR,CAAA,EAKmF;AACjF,EAAA,MAAM,aAAa,gBAAA,EAAiB;AAEpC,EAAA,IAAI;AACF,IAAA,MAAM,UAAA,GAAaC,WAAA,CAAM,GAAA,EAAK,IAAA,EAAM;AAAA,MAClC,GAAA;AAAA,MACA,GAAA,EAAK;AAAA,QACH,GAAG,OAAA,CAAQ,GAAA;AAAA,QACX,GAAG;AAAA;AACL,KACD,CAAA;AAGD,IAAA,UAAA,CAAW,MAAA,EAAQ,KAAK,UAAU,CAAA;AAClC,IAAA,UAAA,CAAW,MAAA,EAAQ,KAAK,UAAU,CAAA;AAElC,IAAA,MAAM,EAAE,MAAA,EAAQ,MAAA,EAAQ,QAAA,KAAa,MAAM,UAAA;AAC3C,IAAA,OAAO,EAAE,MAAA,EAAQ,MAAA,EAAQ,OAAA,EAAS,aAAa,CAAA,EAAE;AAAA,EACnD,SAAS,KAAA,EAAO;AACd,IAAA,MAAA,CAAO,KAAA,CAAM,CAAA,gBAAA,EAAmB,KAAK,CAAA,CAAE,CAAA;AACvC,IAAA,OAAO,EAAE,OAAA,EAAS,KAAA,EAAO,KAAA,EAAO,KAAA,YAAiB,KAAA,GAAQ,KAAA,GAAQ,IAAI,KAAA,CAAM,MAAA,CAAO,KAAK,CAAC,CAAA,EAAE;AAAA,EAC5F;AACF;;;AC/CA,IAAM,QAAA,uBAAe,GAAA,EAAI;AAEzB,SAAS,aAAa,GAAA,EAA4B;AAChD,EAAA,MAAM,SAAA,GAAY,CAAC,gBAAA,EAAkB,mBAAA,EAAqB,aAAa,UAAU,CAAA;AACjF,EAAA,KAAA,MAAW,QAAQ,SAAA,EAAW;AAC5B,IAAA,IAAOC,aAAA,CAAA,UAAA,CAAWC,SAAA,CAAK,GAAA,EAAK,IAAI,CAAC,CAAA,EAAG;AAClC,MAAA,OAAO,IAAA;AAAA,IACT;AAAA,EACF;AACA,EAAA,MAAM,SAAA,GAAYL,YAAA,CAAQ,GAAA,EAAK,IAAI,CAAA;AACnC,EAAA,IAAI,cAAc,GAAA,EAAK;AACrB,IAAA,OAAO,aAAa,SAAS,CAAA;AAAA,EAC/B;AACA,EAAA,OAAO,IAAA;AACT;AAEO,SAAS,QAAA,CAAS,EAAE,IAAA,EAAK,EAA6B;AAC3D,EAAA,MAAM,MAAA,GAAS,QAAA,CAAS,GAAA,CAAI,IAAI,CAAA;AAChC,EAAA,IAAI,MAAA,EAAQ;AACV,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,MAAM,QAAA,GAAW,aAAa,IAAI,CAAA;AAClC,EAAA,IAAI,EAAA,GAAa,KAAA;AACjB,EAAA,QAAQ,QAAA;AAAU,IAChB,KAAK,gBAAA;AACH,MAAA,EAAA,GAAK,MAAA;AACL,MAAA;AAAA,IACF,KAAK,mBAAA;AACH,MAAA,EAAA,GAAK,KAAA;AACL,MAAA;AAAA,IACF,KAAK,WAAA;AACH,MAAA,EAAA,GAAK,MAAA;AACL,MAAA;AAAA,IACF,KAAK,UAAA;AACH,MAAA,EAAA,GAAK,KAAA;AACL,MAAA;AAAA,IACF;AACE,MAAA,EAAA,GAAK,KAAA;AAAA;AAGT,EAAA,QAAA,CAAS,GAAA,CAAI,MAAM,EAAE,CAAA;AACrB,EAAA,OAAO,EAAA;AACT;AAwCA,eAAsB,WAAA,CAAY,EAAE,IAAA,EAAM,EAAA,EAAG,EAAkC;AAC7E,EAAA,EAAA,GAAK,EAAA,IAAM,QAAA,CAAS,EAAE,IAAA,EAAM,CAAA;AAC5B,EAAA,MAAA,CAAO,IAAA,CAAK,CAAA,6BAAA,EAAgC,EAAE,CAAA,IAAA,EAAO,IAAI,CAAA,CAAE,CAAA;AAC3D,EAAA,MAAM,IAAA,GAAO,CAAC,SAAS,CAAA;AACvB,EAAA,MAAM,EAAE,OAAA,SAASM,OAAA,EAAM,GAAI,MAAM,YAAA,CAAa,EAAE,GAAA,EAAK,EAAA,EAAI,IAAA,EAAM,GAAA,EAAK,IAAA,EAAM,CAAA;AAC1E,EAAA,IAAI,CAAC,OAAA,EAAS;AACZ,IAAA,MAAM,IAAIC,iBAAA;AAAA,MACR;AAAA,QACE,EAAA,EAAI,mBAAA;AAAA,QACJ,QAAA,EAAU,MAAA;AAAA,QACV,MAAA,EAAQ;AAAA,OACV;AAAA,MACAD;AAAA,KACF;AAAA,EACF;AACF;ACnGO,SAAS,mBAAmB,SAAA,EAAmB;AACpD,EAAA,IAAI;AACF,IAAA,MAAM,WAAA,GAAc,IAAIE,oBAAA,EAAY;AACpC,IAAA,OAAO,YAAY,oBAAA,CAAqB;AAAA,MACtCH,SAAAA,CAAK,SAAA,EAAW,gBAAA,EAAkB,UAAU,CAAA;AAAA,MAC5CA,SAAAA,CAAK,SAAA,EAAW,gBAAA,EAAkB,UAAU;AAAA,KAC7C,CAAA;AAAA,EACH,SAASC,OAAA,EAAO;AACd,IAAA,MAAM,IAAIC,iBAAAA;AAAA,MACR;AAAA,QACE,EAAA,EAAI,6BAAA;AAAA,QACJ,QAAA,EAAU,MAAA;AAAA,QACV,MAAA,EAAQ;AAAA,OACV;AAAA,MACAD;AAAA,KACF;AAAA,EACF;AACF;;;ACrBO,SAAS,iBAAA,GAAoB;AAClC,EAAA,OAAO;AAAA;AAAA,iBAAA,EAEU,OAAA,CAAQ,IAAI,gBAAgB,CAAA;AAAA;AAAA;AAAA;AAAA,+BAAA,EAId,OAAA,CAAQ,IAAI,2BAA2B,CAAA;AAAA;AAAA,2BAAA,EAE3C,KAAK,SAAA,CAAU;AAAA,IACpC,SAAA,EAAW,UAAA;AAAA,IACX,OAAA,EAAS,QAAA;AAAA,IACT,MAAA,EAAQ,SAAA;AAAA,IACR,GAAA,EAAK,SAAA;AAAA,IACL,aAAA,EAAe;AAAA,GAChB,CAAC,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAA,CAAA;AAQR;;;ACdO,IAAM,aAAA,GAAN,cAA4BG,iBAAA,CAAS;AAAA,EAC1C,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,EAAE,IAAA,EAAM,OAAA,EAAS,CAAA;AAAA,EACzB;AAAA,EAEA,MAAM,OAAO,gBAAA,EAAyC;AAAA,EAAC;AAAA,EACvD,MAAM,yBAAyB,eAAA,EAAyB;AACtD,IAAA,MAAM,mBAAA,GAAsBJ,SAAAA,CAAK,eAAA,EAAiB,qBAAqB,CAAA;AACvE,IAAA,MAAM,SAAA,GAAYK,YAAA,CAAQC,iBAAA,CAAc,2PAAe,CAAC,CAAA;AAExD,IAAA,MAAMC,SAAKP,SAAAA,CAAK,SAAA,EAAW,cAAA,EAAgB,6BAA6B,GAAG,mBAAmB,CAAA;AAAA,EAChG;AAAA,EACA,MAAM,gBAAA,CAAiB,eAAA,EAAyB,YAAA,EAAmC;AACjF,IAAA,MAAM,QAAA,GAAY,MAAMQ,YAAA,CAASR,SAAAA,CAAKK,YAAA,CAAQC,iBAAA,CAAc,2PAAe,CAAC,CAAA,EAAG,kBAAkB,CAAC,CAAA;AAGlG,IAAA,KAAA,MAAW,CAAC,SAAS,OAAO,CAAA,IAAK,OAAO,OAAA,CAAQ,QAAA,IAAY,EAAE,CAAA,EAAG;AAC/D,MAAA,YAAA,CAAa,GAAA,CAAI,SAAS,OAAO,CAAA;AAAA,IACnC;AAEA,IAAA,OAAO,KAAA,CAAM,gBAAA,CAAiB,eAAA,EAAiB,YAAY,CAAA;AAAA,EAC7D;AAAA,EAEA,MAAM,IAAA,GAAO;AAAA,EAAC;AAAA,EAEd,MAAgB,mBAAA,CAAoB,eAAA,EAAyB,QAAA,GAAW,OAAA,CAAQ,KAAI,EAAG;AACrF,IAAA,MAAM,WAAA,CAAY,EAAE,IAAA,EAAMN,SAAAA,CAAK,iBAAiB,QAAQ,CAAA,EAAG,EAAA,EAAI,KAAA,EAAO,CAAA;AAAA,EACxE;AAAA,EAEA,MAAM,MAAA,CAAO,SAAA,EAAmB,eAAA,EAAwC;AACtE,IAAA,MAAM,UAAA,GAAa,QAAQ,GAAA,EAAI;AAC/B,IAAA,OAAA,CAAQ,MAAM,SAAS,CAAA;AAEvB,IAAA,MAAM,eAAA,GAAkB,mBAAmB,SAAS,CAAA;AAEpD,IAAA,MAAM,gBAAA,GAAmBA,SAAAA,CAAK,SAAA,EAAW,gBAAA,EAAkB,OAAO,CAAA;AAElE,IAAA,MAAM,IAAA,CAAK,OAAA;AAAA,MACT,KAAK,QAAA,EAAS;AAAA,MACd,eAAA;AAAA,MACA;AAAA,QACE,eAAA;AAAA,QACA,WAAA,EAAa;AAAA,OACf;AAAA,MACA,CAAC,gBAAgB;AAAA,KACnB;AACA,IAAA,OAAA,CAAQ,MAAM,UAAU,CAAA;AAAA,EAC1B;AAAA,EAEA,iBAAA,GAAoB;AAClB,IAAA,OAAO,iBAAA,EAAkB;AAAA,EAC3B;AAAA,EAEQ,QAAA,GAAmB;AACzB,IAAA,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAAA,EAmBI,OAAO,CAAA;AAAA,gBAAA,EACJ,UAAU,CAAA;AAAA,cAAA,EACZ,QAAQ,CAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA,EAqDtB,mBAAmB;;AAAA;;AAAA,EAInB,mBAAmB;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAAA,EAUN,OAAO,CAAA;AAAA,gBAAA,EACJ,UAAU,CAAA;AAAA,cAAA,EACZ,QAAQ,CAAA;AAAA;AAAA;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAAA,EAWT,OAAO,CAAA;AAAA,gBAAA,EACJ,UAAU,CAAA;AAAA,cAAA,EACZ,QAAQ,CAAA;AAAA;AAAA;AAAA,CAAA;AAAA,EAItB;AACF","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') {\n const token = args[0].replace('Bearer ', '');\n const validTokens = [];\n ${process.env.PLAYGROUND_JWT_TOKEN ? `validTokens.push('${process.env.PLAYGROUND_JWT_TOKEN}');` : ''}\n ${process.env.BUSINESS_JWT_TOKEN ? `validTokens.push('${process.env.BUSINESS_JWT_TOKEN}');` : ''}\n \n if (validTokens.includes(token)) {\n return { id: 'business-api' }\n }\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 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 '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 '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') {\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, 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 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 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 defaultToolsPath = join(mastraDir, MASTRA_DIRECTORY, 'tools');\n\n await this._bundle(\n this.getEntry(),\n mastraEntryFile,\n {\n outputDirectory,\n projectRoot: mastraDir,\n },\n [defaultToolsPath],\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/scores/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 (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\nif (mastra?.getStorage()) {\n mastra.__registerInternalWorkflow(scoreTracesWorkflow);\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"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { dirname, join, resolve } from 'path';
|
|
1
2
|
import { fileURLToPath } from 'url';
|
|
2
|
-
import { join, dirname, resolve } from 'path';
|
|
3
3
|
import { Deployer, FileService } from '@mastra/deployer';
|
|
4
|
+
import { IS_DEFAULT } from '@mastra/deployer/bundler';
|
|
4
5
|
import { copy, readJSON } from 'fs-extra/esm';
|
|
5
6
|
import os from 'os';
|
|
6
7
|
import * as fs from 'fs';
|
|
@@ -15,44 +16,43 @@ import { createClient } from 'redis';
|
|
|
15
16
|
|
|
16
17
|
// src/utils/auth.ts
|
|
17
18
|
function getAuthEntrypoint() {
|
|
19
|
+
const tokensObject = {};
|
|
20
|
+
if (process.env.PLAYGROUND_JWT_TOKEN) {
|
|
21
|
+
tokensObject[process.env.PLAYGROUND_JWT_TOKEN] = { id: "business-api" };
|
|
22
|
+
}
|
|
23
|
+
if (process.env.BUSINESS_JWT_TOKEN) {
|
|
24
|
+
tokensObject[process.env.BUSINESS_JWT_TOKEN] = { id: "business-api" };
|
|
25
|
+
}
|
|
18
26
|
return `
|
|
19
|
-
import {
|
|
20
|
-
|
|
21
|
-
class MastraCloudAuth extends MastraAuthProvider {
|
|
22
|
-
constructor (auth) {
|
|
23
|
-
super()
|
|
24
|
-
this.auth = auth
|
|
25
|
-
}
|
|
27
|
+
import { SimpleAuth, CompositeAuth } from '@mastra/core/server';
|
|
26
28
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
${process.env.BUSINESS_JWT_TOKEN ? `validTokens.push('${process.env.BUSINESS_JWT_TOKEN}');` : ""}
|
|
33
|
-
|
|
34
|
-
if (validTokens.includes(token)) {
|
|
35
|
-
return { id: 'business-api' }
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
return this.auth.authenticateToken(...args)
|
|
29
|
+
class MastraCloudAuth extends SimpleAuth {
|
|
30
|
+
constructor() {
|
|
31
|
+
super({
|
|
32
|
+
tokens: ${JSON.stringify(tokensObject)}
|
|
33
|
+
});
|
|
39
34
|
}
|
|
40
35
|
|
|
41
|
-
async authorizeUser
|
|
42
|
-
|
|
43
|
-
|
|
36
|
+
async authorizeUser(user, request) {
|
|
37
|
+
// Allow access to /api path
|
|
38
|
+
if (request && request.url && new URL(request.url).pathname === '/api') {
|
|
39
|
+
return true;
|
|
44
40
|
}
|
|
45
|
-
|
|
46
|
-
|
|
41
|
+
// Allow access for business-api users
|
|
42
|
+
if (user && user.id === 'business-api') {
|
|
43
|
+
return true;
|
|
47
44
|
}
|
|
48
|
-
return
|
|
45
|
+
return false;
|
|
49
46
|
}
|
|
50
47
|
}
|
|
51
48
|
|
|
52
49
|
const serverConfig = mastra.getServer()
|
|
53
|
-
if (serverConfig && serverConfig.
|
|
54
|
-
const
|
|
55
|
-
|
|
50
|
+
if (serverConfig && serverConfig.auth) {
|
|
51
|
+
const existingAuth = serverConfig.auth
|
|
52
|
+
const cloudAuth = new MastraCloudAuth()
|
|
53
|
+
|
|
54
|
+
// Use CompositeAuth to combine cloud auth with existing auth
|
|
55
|
+
serverConfig.auth = new CompositeAuth([cloudAuth, existingAuth])
|
|
56
56
|
}
|
|
57
57
|
`;
|
|
58
58
|
}
|
|
@@ -231,7 +231,7 @@ function detectPm({ path }) {
|
|
|
231
231
|
async function installDeps({ path, pm }) {
|
|
232
232
|
pm = pm ?? detectPm({ path });
|
|
233
233
|
logger.info(`Installing dependencies with ${pm} in ${path}`);
|
|
234
|
-
const args = ["install"];
|
|
234
|
+
const args = ["install", "--legacy-peer-deps=false", "--force"];
|
|
235
235
|
const { success, error } = await runWithExeca({ cmd: pm, args, cwd: path });
|
|
236
236
|
if (!success) {
|
|
237
237
|
throw new MastraError(
|
|
@@ -291,15 +291,33 @@ function successEntrypoint() {
|
|
|
291
291
|
|
|
292
292
|
// src/index.ts
|
|
293
293
|
var CloudDeployer = class extends Deployer {
|
|
294
|
-
|
|
294
|
+
studio;
|
|
295
|
+
constructor({ studio } = {}) {
|
|
295
296
|
super({ name: "cloud" });
|
|
297
|
+
this.studio = studio ?? false;
|
|
298
|
+
}
|
|
299
|
+
async getUserBundlerOptions(mastraEntryFile, outputDirectory) {
|
|
300
|
+
const bundlerOptions = await super.getUserBundlerOptions(mastraEntryFile, outputDirectory);
|
|
301
|
+
if (!bundlerOptions?.[IS_DEFAULT]) {
|
|
302
|
+
return bundlerOptions;
|
|
303
|
+
}
|
|
304
|
+
return {
|
|
305
|
+
...bundlerOptions,
|
|
306
|
+
externals: true
|
|
307
|
+
};
|
|
296
308
|
}
|
|
297
309
|
async deploy(_outputDirectory) {
|
|
298
310
|
}
|
|
299
|
-
async
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
311
|
+
async prepare(outputDirectory) {
|
|
312
|
+
await super.prepare(outputDirectory);
|
|
313
|
+
if (this.studio) {
|
|
314
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
315
|
+
const __dirname = dirname(__filename);
|
|
316
|
+
const playgroundServePath = join(outputDirectory, this.outputDir, "playground");
|
|
317
|
+
await copy(join(dirname(__dirname), "dist/playground"), playgroundServePath, {
|
|
318
|
+
overwrite: true
|
|
319
|
+
});
|
|
320
|
+
}
|
|
303
321
|
}
|
|
304
322
|
async writePackageJson(outputDirectory, dependencies) {
|
|
305
323
|
const versions = await readJSON(join(dirname(fileURLToPath(import.meta.url)), "../versions.json"));
|
|
@@ -317,7 +335,9 @@ var CloudDeployer = class extends Deployer {
|
|
|
317
335
|
const currentCwd = process.cwd();
|
|
318
336
|
process.chdir(mastraDir);
|
|
319
337
|
const mastraEntryFile = getMastraEntryFile(mastraDir);
|
|
320
|
-
const
|
|
338
|
+
const mastraAppDir = join(mastraDir, MASTRA_DIRECTORY);
|
|
339
|
+
const discoveredTools = this.getAllToolPaths(mastraAppDir);
|
|
340
|
+
await this.prepare(outputDirectory);
|
|
321
341
|
await this._bundle(
|
|
322
342
|
this.getEntry(),
|
|
323
343
|
mastraEntryFile,
|
|
@@ -325,7 +345,7 @@ var CloudDeployer = class extends Deployer {
|
|
|
325
345
|
outputDirectory,
|
|
326
346
|
projectRoot: mastraDir
|
|
327
347
|
},
|
|
328
|
-
|
|
348
|
+
discoveredTools
|
|
329
349
|
);
|
|
330
350
|
process.chdir(currentCwd);
|
|
331
351
|
}
|
|
@@ -341,7 +361,7 @@ import { MultiLogger } from '@mastra/core/logger';
|
|
|
341
361
|
import { PinoLogger } from '@mastra/loggers';
|
|
342
362
|
import { HttpTransport } from '@mastra/loggers/http';
|
|
343
363
|
import { LibSQLStore, LibSQLVector } from '@mastra/libsql';
|
|
344
|
-
import { scoreTracesWorkflow } from '@mastra/core/
|
|
364
|
+
import { scoreTracesWorkflow } from '@mastra/core/evals/scoreTraces';
|
|
345
365
|
const startTime = process.env.RUNNER_START_TIME ? new Date(process.env.RUNNER_START_TIME).getTime() : Date.now();
|
|
346
366
|
const createNodeServerStartTime = Date.now();
|
|
347
367
|
|
|
@@ -380,27 +400,24 @@ const combinedLogger = existingLogger ? new MultiLogger([logger, existingLogger]
|
|
|
380
400
|
|
|
381
401
|
mastra.setLogger({ logger: combinedLogger });
|
|
382
402
|
|
|
383
|
-
if (mastra?.storage) {
|
|
384
|
-
mastra.storage.init()
|
|
385
|
-
}
|
|
386
|
-
|
|
387
403
|
if (process.env.MASTRA_STORAGE_URL && process.env.MASTRA_STORAGE_AUTH_TOKEN) {
|
|
388
404
|
const { MastraStorage } = await import('@mastra/core/storage');
|
|
389
405
|
logger.info('Using Mastra Cloud Storage: ' + process.env.MASTRA_STORAGE_URL)
|
|
390
406
|
const storage = new LibSQLStore({
|
|
407
|
+
id: 'mastra-cloud-storage-libsql',
|
|
391
408
|
url: process.env.MASTRA_STORAGE_URL,
|
|
392
409
|
authToken: process.env.MASTRA_STORAGE_AUTH_TOKEN,
|
|
393
410
|
})
|
|
394
411
|
const vector = new LibSQLVector({
|
|
412
|
+
id: 'mastra-cloud-storage-libsql-vector',
|
|
395
413
|
connectionUrl: process.env.MASTRA_STORAGE_URL,
|
|
396
414
|
authToken: process.env.MASTRA_STORAGE_AUTH_TOKEN,
|
|
397
415
|
})
|
|
398
416
|
|
|
399
417
|
await storage.init()
|
|
400
418
|
mastra?.setStorage(storage)
|
|
401
|
-
|
|
402
|
-
mastra
|
|
403
|
-
mastra?.memory?.setVector(vector)
|
|
419
|
+
} else if (mastra?.storage) {
|
|
420
|
+
mastra.storage.init()
|
|
404
421
|
}
|
|
405
422
|
|
|
406
423
|
if (mastra?.getStorage()) {
|
|
@@ -409,7 +426,7 @@ if (mastra?.getStorage()) {
|
|
|
409
426
|
|
|
410
427
|
${getAuthEntrypoint()}
|
|
411
428
|
|
|
412
|
-
await createNodeServer(mastra, { playground:
|
|
429
|
+
await createNodeServer(mastra, { playground: ${this.studio}, swaggerUI: false, tools: getToolExports(tools) });
|
|
413
430
|
|
|
414
431
|
${successEntrypoint()}
|
|
415
432
|
|