repl-sdk 1.0.0 → 1.0.1
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/dist/apl-fqmucPXA.js +141 -0
- package/dist/apl-fqmucPXA.js.map +1 -0
- package/dist/asciiarmor-DucZyvP0.js +57 -0
- package/dist/asciiarmor-DucZyvP0.js.map +1 -0
- package/dist/asn1-BnOEsgAm.js +145 -0
- package/dist/asn1-BnOEsgAm.js.map +1 -0
- package/dist/assets/{tar-worker-kdkltuRC.js → tar-worker-CxTcoQcr.js} +1 -6
- package/dist/assets/{tar-worker-kdkltuRC.js.map → tar-worker-CxTcoQcr.js.map} +1 -1
- package/dist/asterisk-QAlztEwS.js +346 -0
- package/dist/asterisk-QAlztEwS.js.map +1 -0
- package/dist/brainfuck-DZVCuF_t.js +54 -0
- package/dist/brainfuck-DZVCuF_t.js.map +1 -0
- package/dist/clike-CTYGlS6x.js +800 -0
- package/dist/clike-CTYGlS6x.js.map +1 -0
- package/dist/clojure-BhXMqnxz.js +850 -0
- package/dist/clojure-BhXMqnxz.js.map +1 -0
- package/dist/cmake-BGaNd9E7.js +72 -0
- package/dist/cmake-BGaNd9E7.js.map +1 -0
- package/dist/cobol-4yqQntpt.js +121 -0
- package/dist/cobol-4yqQntpt.js.map +1 -0
- package/dist/codemirror-De3S70Np.js +2912 -0
- package/dist/codemirror-De3S70Np.js.map +1 -0
- package/dist/coffeescript-D2dXvhEc.js +309 -0
- package/dist/coffeescript-D2dXvhEc.js.map +1 -0
- package/dist/commonlisp-CF_VNHQR.js +131 -0
- package/dist/commonlisp-CF_VNHQR.js.map +1 -0
- package/dist/crystal-DyuLTqLs.js +399 -0
- package/dist/crystal-DyuLTqLs.js.map +1 -0
- package/dist/css-DkSyTW67.js +1773 -0
- package/dist/css-DkSyTW67.js.map +1 -0
- package/dist/cypher-Dlu_3r4V.js +122 -0
- package/dist/cypher-Dlu_3r4V.js.map +1 -0
- package/dist/d-UURgV0Ux.js +180 -0
- package/dist/d-UURgV0Ux.js.map +1 -0
- package/dist/diff-B_Bi2Crb.js +26 -0
- package/dist/diff-B_Bi2Crb.js.map +1 -0
- package/dist/dockerfile-Bvk733Ga.js +202 -0
- package/dist/dockerfile-Bvk733Ga.js.map +1 -0
- package/dist/dtd-Dy74G54E.js +115 -0
- package/dist/dtd-Dy74G54E.js.map +1 -0
- package/dist/dylan-TSb-Nfix.js +315 -0
- package/dist/dylan-TSb-Nfix.js.map +1 -0
- package/dist/ebnf-4fKAGW3a.js +141 -0
- package/dist/ebnf-4fKAGW3a.js.map +1 -0
- package/dist/ecl-B59qGGVg.js +179 -0
- package/dist/ecl-B59qGGVg.js.map +1 -0
- package/dist/eiffel-Dze7nlu3.js +135 -0
- package/dist/eiffel-Dze7nlu3.js.map +1 -0
- package/dist/elm-DG7jkhNZ.js +177 -0
- package/dist/elm-DG7jkhNZ.js.map +1 -0
- package/dist/erlang-BO6gOnGA.js +675 -0
- package/dist/erlang-BO6gOnGA.js.map +1 -0
- package/dist/factor-CMxFHDqz.js +66 -0
- package/dist/factor-CMxFHDqz.js.map +1 -0
- package/dist/fcl-CDDUNjTj.js +142 -0
- package/dist/fcl-CDDUNjTj.js.map +1 -0
- package/dist/forth-B9D2JCeE.js +117 -0
- package/dist/forth-B9D2JCeE.js.map +1 -0
- package/dist/fortran-CAG2BFbe.js +468 -0
- package/dist/fortran-CAG2BFbe.js.map +1 -0
- package/dist/gas-0Aw8zDr5.js +294 -0
- package/dist/gas-0Aw8zDr5.js.map +1 -0
- package/dist/gherkin-DhZlEZiy.js +116 -0
- package/dist/gherkin-DhZlEZiy.js.map +1 -0
- package/dist/{gjs-CzFzkEFv.js → gjs-DfguZDLq.js} +4 -4
- package/dist/gjs-DfguZDLq.js.map +1 -0
- package/dist/{gmd-D9OXs2v3.js → gmd-Yas-Oo8k.js} +3 -6
- package/dist/gmd-Yas-Oo8k.js.map +1 -0
- package/dist/groovy-CpwJiBl7.js +224 -0
- package/dist/groovy-CpwJiBl7.js.map +1 -0
- package/dist/haskell-ySd-OUo8.js +460 -0
- package/dist/haskell-ySd-OUo8.js.map +1 -0
- package/dist/haxe-7MlzfeYV.js +515 -0
- package/dist/haxe-7MlzfeYV.js.map +1 -0
- package/dist/{hbs-CuhWjffM.js → hbs-CxcmWxSJ.js} +2 -2
- package/dist/{hbs-CuhWjffM.js.map → hbs-CxcmWxSJ.js.map} +1 -1
- package/dist/http-BqypyemW.js +80 -0
- package/dist/http-BqypyemW.js.map +1 -0
- package/dist/idl-4HIGJlDI.js +986 -0
- package/dist/idl-4HIGJlDI.js.map +1 -0
- package/dist/index-B3Meoznj.js +118 -0
- package/dist/index-B3Meoznj.js.map +1 -0
- package/dist/index-BQyfDUUx.js +692 -0
- package/dist/index-BQyfDUUx.js.map +1 -0
- package/dist/index-BRDroAD8.js +305 -0
- package/dist/index-BRDroAD8.js.map +1 -0
- package/dist/index-BRMAzRyM.js +179 -0
- package/dist/index-BRMAzRyM.js.map +1 -0
- package/dist/index-Bb8uYQgv.js +927 -0
- package/dist/index-Bb8uYQgv.js.map +1 -0
- package/dist/index-BlOjO66K.js +17618 -0
- package/dist/index-BlOjO66K.js.map +1 -0
- package/dist/index-BoGWnSNL.js +706 -0
- package/dist/index-BoGWnSNL.js.map +1 -0
- package/dist/index-BsRrEiOu.js +98 -0
- package/dist/index-BsRrEiOu.js.map +1 -0
- package/dist/index-C2sFZMth.js +391 -0
- package/dist/index-C2sFZMth.js.map +1 -0
- package/dist/index-C7xwOjmS.js +291 -0
- package/dist/index-C7xwOjmS.js.map +1 -0
- package/dist/index-CA3lFUx6.js +315 -0
- package/dist/index-CA3lFUx6.js.map +1 -0
- package/dist/index-CB-pPTIf.js +98 -0
- package/dist/index-CB-pPTIf.js.map +1 -0
- package/dist/index-CCa6x1FE.js +386 -0
- package/dist/index-CCa6x1FE.js.map +1 -0
- package/dist/index-CD4DINI1.js +158 -0
- package/dist/index-CD4DINI1.js.map +1 -0
- package/dist/index-CE0B_fcG.js +328 -0
- package/dist/index-CE0B_fcG.js.map +1 -0
- package/dist/{index-CUWCqMoD.js → index-CVGAEPMV.js} +33 -27
- package/dist/index-CVGAEPMV.js.map +1 -0
- package/dist/index-CmaT2afn.js +332 -0
- package/dist/index-CmaT2afn.js.map +1 -0
- package/dist/index-D8sUxXp5.js +83 -0
- package/dist/index-D8sUxXp5.js.map +1 -0
- package/dist/index-DIz8Vpn-.js +737 -0
- package/dist/index-DIz8Vpn-.js.map +1 -0
- package/dist/index-DNP1xT-S.js +408 -0
- package/dist/index-DNP1xT-S.js.map +1 -0
- package/dist/index-DOAqdvnQ.js +862 -0
- package/dist/index-DOAqdvnQ.js.map +1 -0
- package/dist/index-DVUMFbgi.js +152 -0
- package/dist/index-DVUMFbgi.js.map +1 -0
- package/dist/index-VeTBKRVd.js +83 -0
- package/dist/index-VeTBKRVd.js.map +1 -0
- package/dist/index-dXZeR7Bx.js +1767 -0
- package/dist/index-dXZeR7Bx.js.map +1 -0
- package/dist/index-gtqbIb6T.js +62 -0
- package/dist/index-gtqbIb6T.js.map +1 -0
- package/dist/index-pN_pUAQ7.js +2426 -0
- package/dist/index-pN_pUAQ7.js.map +1 -0
- package/dist/index-wasu5VX0.js +1150 -0
- package/dist/index-wasu5VX0.js.map +1 -0
- package/dist/javascript-Bt8B7yTi.js +993 -0
- package/dist/javascript-Bt8B7yTi.js.map +1 -0
- package/dist/julia-Bs6JJhYG.js +408 -0
- package/dist/julia-Bs6JJhYG.js.map +1 -0
- package/dist/livescript-DmzgM3Yt.js +297 -0
- package/dist/livescript-DmzgM3Yt.js.map +1 -0
- package/dist/lua-8cJgIlqe.js +257 -0
- package/dist/lua-8cJgIlqe.js.map +1 -0
- package/dist/mathematica-DNLOL9PQ.js +111 -0
- package/dist/mathematica-DNLOL9PQ.js.map +1 -0
- package/dist/mbox-Ga7d4MMN.js +118 -0
- package/dist/mbox-Ga7d4MMN.js.map +1 -0
- package/dist/mirc-Dma3B8rS.js +108 -0
- package/dist/mirc-Dma3B8rS.js.map +1 -0
- package/dist/mllike-DHn7xckP.js +335 -0
- package/dist/mllike-DHn7xckP.js.map +1 -0
- package/dist/modelica-0d55jYY0.js +148 -0
- package/dist/modelica-0d55jYY0.js.map +1 -0
- package/dist/mscgen-DdqZYINH.js +136 -0
- package/dist/mscgen-DdqZYINH.js.map +1 -0
- package/dist/mumps-Btr8VblO.js +94 -0
- package/dist/mumps-Btr8VblO.js.map +1 -0
- package/dist/nginx-DTDtBDVN.js +142 -0
- package/dist/nginx-DTDtBDVN.js.map +1 -0
- package/dist/nsis-3zG7tgur.js +63 -0
- package/dist/nsis-3zG7tgur.js.map +1 -0
- package/dist/ntriples-CvgOYMpL.js +154 -0
- package/dist/ntriples-CvgOYMpL.js.map +1 -0
- package/dist/octave-DYBj3-tl.js +201 -0
- package/dist/octave-DYBj3-tl.js.map +1 -0
- package/dist/oz-R_e8WMIi.js +232 -0
- package/dist/oz-R_e8WMIi.js.map +1 -0
- package/dist/parse-CAqQaKsh.js +21685 -0
- package/dist/parse-CAqQaKsh.js.map +1 -0
- package/dist/pascal-GD8iposT.js +106 -0
- package/dist/pascal-GD8iposT.js.map +1 -0
- package/dist/perl-DL9mHpoi.js +1106 -0
- package/dist/perl-DL9mHpoi.js.map +1 -0
- package/dist/pig-C_4T4YIV.js +102 -0
- package/dist/pig-C_4T4YIV.js.map +1 -0
- package/dist/powershell-B0suO7Vd.js +329 -0
- package/dist/powershell-B0suO7Vd.js.map +1 -0
- package/dist/properties-BR-vP1aU.js +59 -0
- package/dist/properties-BR-vP1aU.js.map +1 -0
- package/dist/protobuf-BxgpyhoW.js +78 -0
- package/dist/protobuf-BxgpyhoW.js.map +1 -0
- package/dist/pug-vHnWR0UE.js +406 -0
- package/dist/pug-vHnWR0UE.js.map +1 -0
- package/dist/puppet-Bdao66PW.js +138 -0
- package/dist/puppet-Bdao66PW.js.map +1 -0
- package/dist/python-BFGRmuZ9.js +427 -0
- package/dist/python-BFGRmuZ9.js.map +1 -0
- package/dist/q-CrbCVq4a.js +132 -0
- package/dist/q-CrbCVq4a.js.map +1 -0
- package/dist/r-V7nswm59.js +171 -0
- package/dist/r-V7nswm59.js.map +1 -0
- package/dist/repl-sdk.js +7 -0
- package/dist/repl-sdk.js.map +1 -0
- package/dist/rpm-C-DLY-If.js +110 -0
- package/dist/rpm-C-DLY-If.js.map +1 -0
- package/dist/ruby-JDKLJNK0.js +331 -0
- package/dist/ruby-JDKLJNK0.js.map +1 -0
- package/dist/sas-D2UG-yhZ.js +208 -0
- package/dist/sas-D2UG-yhZ.js.map +1 -0
- package/dist/scheme-BKzrkGJD.js +223 -0
- package/dist/scheme-BKzrkGJD.js.map +1 -0
- package/dist/shell-BlsXDxCn.js +223 -0
- package/dist/shell-BlsXDxCn.js.map +1 -0
- package/dist/sieve-CjwBwOY5.js +136 -0
- package/dist/sieve-CjwBwOY5.js.map +1 -0
- package/dist/simple-mode-DMneyfDu.js +131 -0
- package/dist/simple-mode-DMneyfDu.js.map +1 -0
- package/dist/smalltalk-BOIGQuhN.js +122 -0
- package/dist/smalltalk-BOIGQuhN.js.map +1 -0
- package/dist/solr-CwD7U71z.js +70 -0
- package/dist/solr-CwD7U71z.js.map +1 -0
- package/dist/sparql-DYskk2vE.js +250 -0
- package/dist/sparql-DYskk2vE.js.map +1 -0
- package/dist/spreadsheet-Bgtt3oLP.js +88 -0
- package/dist/spreadsheet-Bgtt3oLP.js.map +1 -0
- package/dist/sql-Cei9CMfk.js +343 -0
- package/dist/sql-Cei9CMfk.js.map +1 -0
- package/dist/stex-C1nZSzAw.js +231 -0
- package/dist/stex-C1nZSzAw.js.map +1 -0
- package/dist/stylus-BkS-boTH.js +566 -0
- package/dist/stylus-BkS-boTH.js.map +1 -0
- package/dist/swift-FRZi1uvB.js +292 -0
- package/dist/swift-FRZi1uvB.js.map +1 -0
- package/dist/tcl-CUcaCdmq.js +115 -0
- package/dist/tcl-CUcaCdmq.js.map +1 -0
- package/dist/textile-BnFpjsrl.js +415 -0
- package/dist/textile-BnFpjsrl.js.map +1 -0
- package/dist/tiddlywiki-CjprD-Qp.js +219 -0
- package/dist/tiddlywiki-CjprD-Qp.js.map +1 -0
- package/dist/tiki-DK9DOeWn.js +269 -0
- package/dist/tiki-DK9DOeWn.js.map +1 -0
- package/dist/toml-BOuWGMcf.js +77 -0
- package/dist/toml-BOuWGMcf.js.map +1 -0
- package/dist/troff-E1bJ0PPL.js +62 -0
- package/dist/troff-E1bJ0PPL.js.map +1 -0
- package/dist/ttcn-cfg-Dc39-fIP.js +134 -0
- package/dist/ttcn-cfg-Dc39-fIP.js.map +1 -0
- package/dist/ttcn-tKd4HLu4.js +193 -0
- package/dist/ttcn-tKd4HLu4.js.map +1 -0
- package/dist/turtle-Dq7-1WAf.js +125 -0
- package/dist/turtle-Dq7-1WAf.js.map +1 -0
- package/dist/vb-Dp90gtsv.js +197 -0
- package/dist/vb-Dp90gtsv.js.map +1 -0
- package/dist/vbscript-Bfn8O8I7.js +479 -0
- package/dist/vbscript-Bfn8O8I7.js.map +1 -0
- package/dist/velocity-BwIZK1TH.js +150 -0
- package/dist/velocity-BwIZK1TH.js.map +1 -0
- package/dist/verilog-CnT9bMk0.js +430 -0
- package/dist/verilog-CnT9bMk0.js.map +1 -0
- package/dist/vhdl-DCkMIyT9.js +159 -0
- package/dist/vhdl-DCkMIyT9.js.map +1 -0
- package/dist/webidl-BTLTThCm.js +205 -0
- package/dist/webidl-BTLTThCm.js.map +1 -0
- package/dist/xquery-BrBUuxMR.js +526 -0
- package/dist/xquery-BrBUuxMR.js.map +1 -0
- package/dist/yacas-b5lAVEIl.js +131 -0
- package/dist/yacas-b5lAVEIl.js.map +1 -0
- package/dist/z80-ClgwfNdB.js +93 -0
- package/dist/z80-ClgwfNdB.js.map +1 -0
- package/package.json +10 -11
- package/src/compilers/ember/gjs.js +2 -2
- package/src/compilers/ember/gmd.js +1 -1
- package/src/compilers/markdown.js +1 -1
- package/src/compilers/react.js +15 -3
- package/dist/codemirror-D4aIVflZ.js +0 -110
- package/dist/codemirror-D4aIVflZ.js.map +0 -1
- package/dist/gjs-CzFzkEFv.js.map +0 -1
- package/dist/gmd-D9OXs2v3.js.map +0 -1
- package/dist/index-CUWCqMoD.js.map +0 -1
- package/dist/index.js +0 -7
- package/dist/index.js.map +0 -1
- package/dist/parse-aBKk9rfS.js +0 -328
- package/dist/parse-aBKk9rfS.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { wrap } from "comlink";
|
|
2
|
-
import { exports } from "resolve.exports";
|
|
2
|
+
import { exports as _exports } from "resolve.exports";
|
|
3
3
|
import { resolve as resolve$2 } from "resolve.imports";
|
|
4
4
|
const types = {
|
|
5
5
|
"application/andrew-inset": ["ez"],
|
|
@@ -622,12 +622,12 @@ const gjs = {
|
|
|
622
622
|
onUnhandled,
|
|
623
623
|
codemirror: {
|
|
624
624
|
lang: async () => {
|
|
625
|
-
const { gjs: gjs2 } = await import("
|
|
625
|
+
const { gjs: gjs2 } = await import("./index-CB-pPTIf.js");
|
|
626
626
|
return gjs2();
|
|
627
627
|
}
|
|
628
628
|
},
|
|
629
629
|
compiler: async (...args) => {
|
|
630
|
-
const gjs2 = await import("./gjs-
|
|
630
|
+
const gjs2 = await import("./gjs-DfguZDLq.js");
|
|
631
631
|
return gjs2.compiler(...args);
|
|
632
632
|
}
|
|
633
633
|
};
|
|
@@ -636,12 +636,12 @@ const hbs = {
|
|
|
636
636
|
onUnhandled,
|
|
637
637
|
codemirror: {
|
|
638
638
|
lang: async () => {
|
|
639
|
-
const { glimmer } = await import("
|
|
639
|
+
const { glimmer } = await import("./index-Bb8uYQgv.js");
|
|
640
640
|
return glimmer();
|
|
641
641
|
}
|
|
642
642
|
},
|
|
643
643
|
compiler: async (...args) => {
|
|
644
|
-
const hbs2 = await import("./hbs-
|
|
644
|
+
const hbs2 = await import("./hbs-CxcmWxSJ.js");
|
|
645
645
|
return hbs2.compiler(...args);
|
|
646
646
|
}
|
|
647
647
|
};
|
|
@@ -650,23 +650,23 @@ const gmd = {
|
|
|
650
650
|
onUnhandled,
|
|
651
651
|
codemirror: {
|
|
652
652
|
lang: async () => {
|
|
653
|
-
const { glimdown } = await import("
|
|
653
|
+
const { glimdown } = await import("./index-wasu5VX0.js");
|
|
654
654
|
return glimdown();
|
|
655
655
|
},
|
|
656
656
|
support: async () => {
|
|
657
|
-
const { gjs: gjs2 } = await import("
|
|
657
|
+
const { gjs: gjs2 } = await import("./index-CB-pPTIf.js");
|
|
658
658
|
return [gjs2().support];
|
|
659
659
|
}
|
|
660
660
|
},
|
|
661
661
|
compiler: async (...args) => {
|
|
662
|
-
const hbs2 = await import("./gmd-
|
|
662
|
+
const hbs2 = await import("./gmd-Yas-Oo8k.js");
|
|
663
663
|
return hbs2.compiler(...args);
|
|
664
664
|
}
|
|
665
665
|
};
|
|
666
666
|
const js = {
|
|
667
667
|
codemirror: {
|
|
668
668
|
lang: async () => {
|
|
669
|
-
const { javascript } = await import("
|
|
669
|
+
const { javascript } = await import("./index-pN_pUAQ7.js").then((n) => n.k);
|
|
670
670
|
return javascript();
|
|
671
671
|
}
|
|
672
672
|
},
|
|
@@ -741,7 +741,7 @@ function filterOptions(options) {
|
|
|
741
741
|
const md = {
|
|
742
742
|
codemirror: {
|
|
743
743
|
lang: async () => {
|
|
744
|
-
const { glimdown } = await import("
|
|
744
|
+
const { glimdown } = await import("./index-wasu5VX0.js");
|
|
745
745
|
return glimdown();
|
|
746
746
|
}
|
|
747
747
|
},
|
|
@@ -751,10 +751,7 @@ const md = {
|
|
|
751
751
|
/** @type {Record<string, unknown>} */
|
|
752
752
|
config.userOptions?.md || config
|
|
753
753
|
);
|
|
754
|
-
const { parseMarkdown } = await import(
|
|
755
|
-
/* @vite-ignore */
|
|
756
|
-
"./parse-aBKk9rfS.js"
|
|
757
|
-
);
|
|
754
|
+
const { parseMarkdown } = await import("./parse-CAqQaKsh.js");
|
|
758
755
|
return {
|
|
759
756
|
compile: async (text, options) => {
|
|
760
757
|
const compileOptions = filterOptions(options);
|
|
@@ -916,7 +913,7 @@ const mermaid = {
|
|
|
916
913
|
needsLiveMeta: false,
|
|
917
914
|
codemirror: {
|
|
918
915
|
lang: async () => {
|
|
919
|
-
const { mermaid: mermaid2 } = await import("
|
|
916
|
+
const { mermaid: mermaid2 } = await import("./index-DOAqdvnQ.js");
|
|
920
917
|
return mermaid2();
|
|
921
918
|
}
|
|
922
919
|
},
|
|
@@ -941,16 +938,18 @@ const mermaid = {
|
|
|
941
938
|
const jsx = {
|
|
942
939
|
codemirror: {
|
|
943
940
|
lang: async () => {
|
|
944
|
-
const { javascript } = await import("
|
|
941
|
+
const { javascript } = await import("./index-pN_pUAQ7.js").then((n) => n.k);
|
|
945
942
|
return javascript({ jsx: true });
|
|
946
943
|
}
|
|
947
944
|
},
|
|
948
945
|
resolve: (id) => {
|
|
949
946
|
switch (id) {
|
|
950
947
|
case "react":
|
|
951
|
-
return `https://esm.sh/react`;
|
|
948
|
+
return `https://esm.sh/react@19.2.3/es2022/react.development.mjs`;
|
|
949
|
+
case "react/jsx-dev-runtime":
|
|
950
|
+
return `https://esm.sh/react@19.2.3/es2022/jsx-dev-runtime.development.mjs`;
|
|
952
951
|
case "react-dom/client":
|
|
953
|
-
return `https://esm.sh/react-dom/client`;
|
|
952
|
+
return `https://esm.sh/react-dom@19.2.3/es2022/client.development.mjs`;
|
|
954
953
|
case "@babel/standalone":
|
|
955
954
|
return `https://esm.sh/@babel/standalone`;
|
|
956
955
|
}
|
|
@@ -962,7 +961,14 @@ const jsx = {
|
|
|
962
961
|
async compile(text) {
|
|
963
962
|
const result = babel.transform(text, {
|
|
964
963
|
filename: `repl.js`,
|
|
965
|
-
presets: [
|
|
964
|
+
presets: [
|
|
965
|
+
[
|
|
966
|
+
babel.availablePresets.react,
|
|
967
|
+
{
|
|
968
|
+
// useBuiltIns: true,
|
|
969
|
+
}
|
|
970
|
+
]
|
|
971
|
+
]
|
|
966
972
|
});
|
|
967
973
|
return result.code;
|
|
968
974
|
},
|
|
@@ -978,7 +984,7 @@ const jsx = {
|
|
|
978
984
|
const svelte = {
|
|
979
985
|
codemirror: {
|
|
980
986
|
lang: async () => {
|
|
981
|
-
const { svelte: svelte2 } = await import("
|
|
987
|
+
const { svelte: svelte2 } = await import("./index-DIz8Vpn-.js");
|
|
982
988
|
return svelte2();
|
|
983
989
|
}
|
|
984
990
|
},
|
|
@@ -1056,7 +1062,7 @@ const svelte = {
|
|
|
1056
1062
|
const vue = {
|
|
1057
1063
|
codemirror: {
|
|
1058
1064
|
lang: async () => {
|
|
1059
|
-
const { vue: vue2 } = await import("
|
|
1065
|
+
const { vue: vue2 } = await import("./index-VeTBKRVd.js");
|
|
1060
1066
|
return vue2();
|
|
1061
1067
|
}
|
|
1062
1068
|
},
|
|
@@ -1366,7 +1372,7 @@ function fromExports(untarred, request, answer) {
|
|
|
1366
1372
|
if (answer) return answer;
|
|
1367
1373
|
const exports$1 = untarred.manifest.exports;
|
|
1368
1374
|
if (!(typeof exports$1 === "object")) return answer;
|
|
1369
|
-
const foundArray =
|
|
1375
|
+
const foundArray = _exports(untarred.manifest, request.to, {
|
|
1370
1376
|
conditions: CONDITIONS
|
|
1371
1377
|
});
|
|
1372
1378
|
const found = foundArray?.map((f) => checkFile(untarred, f)).find(Boolean);
|
|
@@ -1470,11 +1476,11 @@ function createAnswer(forFile, request, fromMethod) {
|
|
|
1470
1476
|
};
|
|
1471
1477
|
}
|
|
1472
1478
|
function printError(untarred, request, answer) {
|
|
1473
|
-
const { name, exports:
|
|
1479
|
+
const { name, exports: exports$1, main, module, browser } = untarred.manifest;
|
|
1474
1480
|
console.group(`${name} file info`);
|
|
1475
1481
|
console.info(`${name} has these files: `, Object.keys(untarred.contents));
|
|
1476
1482
|
console.info(`We searched for '${request.original}'`);
|
|
1477
|
-
console.info(`from: `, { exports:
|
|
1483
|
+
console.info(`from: `, { exports: exports$1, main, module, browser });
|
|
1478
1484
|
console.info(`And found: `, answer);
|
|
1479
1485
|
console.info(`The request was: `, request);
|
|
1480
1486
|
console.groupEnd();
|
|
@@ -1483,7 +1489,7 @@ function printError(untarred, request, answer) {
|
|
|
1483
1489
|
}
|
|
1484
1490
|
const worker = new Worker(new URL(
|
|
1485
1491
|
/* @vite-ignore */
|
|
1486
|
-
"/assets/tar-worker-
|
|
1492
|
+
"/assets/tar-worker-CxTcoQcr.js",
|
|
1487
1493
|
import.meta.url
|
|
1488
1494
|
), {
|
|
1489
1495
|
name: "Tar & NPM Downloader Worker",
|
|
@@ -1550,7 +1556,7 @@ class Compiler {
|
|
|
1550
1556
|
*/
|
|
1551
1557
|
async createEditor(element, { text, format, handleUpdate, extensions }) {
|
|
1552
1558
|
return cache.cachedPromise("codemirror", async () => {
|
|
1553
|
-
const { buildCodemirror } = await import("./codemirror-
|
|
1559
|
+
const { buildCodemirror } = await import("./codemirror-De3S70Np.js");
|
|
1554
1560
|
return buildCodemirror({
|
|
1555
1561
|
element,
|
|
1556
1562
|
text,
|
|
@@ -2130,4 +2136,4 @@ export {
|
|
|
2130
2136
|
isRecord as i,
|
|
2131
2137
|
nextId as n
|
|
2132
2138
|
};
|
|
2133
|
-
//# sourceMappingURL=index-
|
|
2139
|
+
//# sourceMappingURL=index-CVGAEPMV.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-CVGAEPMV.js","sources":["../../../node_modules/.pnpm/mime@4.1.0/node_modules/mime/dist/types/standard.js","../../../node_modules/.pnpm/mime@4.1.0/node_modules/mime/dist/src/Mime.js","../../../node_modules/.pnpm/mime@4.1.0/node_modules/mime/dist/src/index_lite.js","../src/utils.js","../src/cache.js","../src/compilers/ember.js","../src/compilers/js.js","../src/compilers/markdown/utils.js","../src/compilers/markdown.js","../src/specifier.js","../src/cdn.js","../src/compilers/mermaid.js","../src/compilers/react.js","../src/compilers/svelte.js","../src/compilers/vue.js","../src/compilers.js","../src/es-module-shim.js","../src/request.js","../src/resolve.js","../src/tar.js","../src/index.js"],"sourcesContent":["const types = {\n 'application/andrew-inset': ['ez'],\n 'application/appinstaller': ['appinstaller'],\n 'application/applixware': ['aw'],\n 'application/appx': ['appx'],\n 'application/appxbundle': ['appxbundle'],\n 'application/atom+xml': ['atom'],\n 'application/atomcat+xml': ['atomcat'],\n 'application/atomdeleted+xml': ['atomdeleted'],\n 'application/atomsvc+xml': ['atomsvc'],\n 'application/atsc-dwd+xml': ['dwd'],\n 'application/atsc-held+xml': ['held'],\n 'application/atsc-rsat+xml': ['rsat'],\n 'application/automationml-aml+xml': ['aml'],\n 'application/automationml-amlx+zip': ['amlx'],\n 'application/bdoc': ['bdoc'],\n 'application/calendar+xml': ['xcs'],\n 'application/ccxml+xml': ['ccxml'],\n 'application/cdfx+xml': ['cdfx'],\n 'application/cdmi-capability': ['cdmia'],\n 'application/cdmi-container': ['cdmic'],\n 'application/cdmi-domain': ['cdmid'],\n 'application/cdmi-object': ['cdmio'],\n 'application/cdmi-queue': ['cdmiq'],\n 'application/cpl+xml': ['cpl'],\n 'application/cu-seeme': ['cu'],\n 'application/cwl': ['cwl'],\n 'application/dash+xml': ['mpd'],\n 'application/dash-patch+xml': ['mpp'],\n 'application/davmount+xml': ['davmount'],\n 'application/dicom': ['dcm'],\n 'application/docbook+xml': ['dbk'],\n 'application/dssc+der': ['dssc'],\n 'application/dssc+xml': ['xdssc'],\n 'application/ecmascript': ['ecma'],\n 'application/emma+xml': ['emma'],\n 'application/emotionml+xml': ['emotionml'],\n 'application/epub+zip': ['epub'],\n 'application/exi': ['exi'],\n 'application/express': ['exp'],\n 'application/fdf': ['fdf'],\n 'application/fdt+xml': ['fdt'],\n 'application/font-tdpfr': ['pfr'],\n 'application/geo+json': ['geojson'],\n 'application/gml+xml': ['gml'],\n 'application/gpx+xml': ['gpx'],\n 'application/gxf': ['gxf'],\n 'application/gzip': ['gz'],\n 'application/hjson': ['hjson'],\n 'application/hyperstudio': ['stk'],\n 'application/inkml+xml': ['ink', 'inkml'],\n 'application/ipfix': ['ipfix'],\n 'application/its+xml': ['its'],\n 'application/java-archive': ['jar', 'war', 'ear'],\n 'application/java-serialized-object': ['ser'],\n 'application/java-vm': ['class'],\n 'application/javascript': ['*js'],\n 'application/json': ['json', 'map'],\n 'application/json5': ['json5'],\n 'application/jsonml+json': ['jsonml'],\n 'application/ld+json': ['jsonld'],\n 'application/lgr+xml': ['lgr'],\n 'application/lost+xml': ['lostxml'],\n 'application/mac-binhex40': ['hqx'],\n 'application/mac-compactpro': ['cpt'],\n 'application/mads+xml': ['mads'],\n 'application/manifest+json': ['webmanifest'],\n 'application/marc': ['mrc'],\n 'application/marcxml+xml': ['mrcx'],\n 'application/mathematica': ['ma', 'nb', 'mb'],\n 'application/mathml+xml': ['mathml'],\n 'application/mbox': ['mbox'],\n 'application/media-policy-dataset+xml': ['mpf'],\n 'application/mediaservercontrol+xml': ['mscml'],\n 'application/metalink+xml': ['metalink'],\n 'application/metalink4+xml': ['meta4'],\n 'application/mets+xml': ['mets'],\n 'application/mmt-aei+xml': ['maei'],\n 'application/mmt-usd+xml': ['musd'],\n 'application/mods+xml': ['mods'],\n 'application/mp21': ['m21', 'mp21'],\n 'application/mp4': ['*mp4', '*mpg4', 'mp4s', 'm4p'],\n 'application/msix': ['msix'],\n 'application/msixbundle': ['msixbundle'],\n 'application/msword': ['doc', 'dot'],\n 'application/mxf': ['mxf'],\n 'application/n-quads': ['nq'],\n 'application/n-triples': ['nt'],\n 'application/node': ['cjs'],\n 'application/octet-stream': [\n 'bin',\n 'dms',\n 'lrf',\n 'mar',\n 'so',\n 'dist',\n 'distz',\n 'pkg',\n 'bpk',\n 'dump',\n 'elc',\n 'deploy',\n 'exe',\n 'dll',\n 'deb',\n 'dmg',\n 'iso',\n 'img',\n 'msi',\n 'msp',\n 'msm',\n 'buffer',\n ],\n 'application/oda': ['oda'],\n 'application/oebps-package+xml': ['opf'],\n 'application/ogg': ['ogx'],\n 'application/omdoc+xml': ['omdoc'],\n 'application/onenote': [\n 'onetoc',\n 'onetoc2',\n 'onetmp',\n 'onepkg',\n 'one',\n 'onea',\n ],\n 'application/oxps': ['oxps'],\n 'application/p2p-overlay+xml': ['relo'],\n 'application/patch-ops-error+xml': ['xer'],\n 'application/pdf': ['pdf'],\n 'application/pgp-encrypted': ['pgp'],\n 'application/pgp-keys': ['asc'],\n 'application/pgp-signature': ['sig', '*asc'],\n 'application/pics-rules': ['prf'],\n 'application/pkcs10': ['p10'],\n 'application/pkcs7-mime': ['p7m', 'p7c'],\n 'application/pkcs7-signature': ['p7s'],\n 'application/pkcs8': ['p8'],\n 'application/pkix-attr-cert': ['ac'],\n 'application/pkix-cert': ['cer'],\n 'application/pkix-crl': ['crl'],\n 'application/pkix-pkipath': ['pkipath'],\n 'application/pkixcmp': ['pki'],\n 'application/pls+xml': ['pls'],\n 'application/postscript': ['ai', 'eps', 'ps'],\n 'application/provenance+xml': ['provx'],\n 'application/pskc+xml': ['pskcxml'],\n 'application/raml+yaml': ['raml'],\n 'application/rdf+xml': ['rdf', 'owl'],\n 'application/reginfo+xml': ['rif'],\n 'application/relax-ng-compact-syntax': ['rnc'],\n 'application/resource-lists+xml': ['rl'],\n 'application/resource-lists-diff+xml': ['rld'],\n 'application/rls-services+xml': ['rs'],\n 'application/route-apd+xml': ['rapd'],\n 'application/route-s-tsid+xml': ['sls'],\n 'application/route-usd+xml': ['rusd'],\n 'application/rpki-ghostbusters': ['gbr'],\n 'application/rpki-manifest': ['mft'],\n 'application/rpki-roa': ['roa'],\n 'application/rsd+xml': ['rsd'],\n 'application/rss+xml': ['rss'],\n 'application/rtf': ['rtf'],\n 'application/sbml+xml': ['sbml'],\n 'application/scvp-cv-request': ['scq'],\n 'application/scvp-cv-response': ['scs'],\n 'application/scvp-vp-request': ['spq'],\n 'application/scvp-vp-response': ['spp'],\n 'application/sdp': ['sdp'],\n 'application/senml+xml': ['senmlx'],\n 'application/sensml+xml': ['sensmlx'],\n 'application/set-payment-initiation': ['setpay'],\n 'application/set-registration-initiation': ['setreg'],\n 'application/shf+xml': ['shf'],\n 'application/sieve': ['siv', 'sieve'],\n 'application/smil+xml': ['smi', 'smil'],\n 'application/sparql-query': ['rq'],\n 'application/sparql-results+xml': ['srx'],\n 'application/sql': ['sql'],\n 'application/srgs': ['gram'],\n 'application/srgs+xml': ['grxml'],\n 'application/sru+xml': ['sru'],\n 'application/ssdl+xml': ['ssdl'],\n 'application/ssml+xml': ['ssml'],\n 'application/swid+xml': ['swidtag'],\n 'application/tei+xml': ['tei', 'teicorpus'],\n 'application/thraud+xml': ['tfi'],\n 'application/timestamped-data': ['tsd'],\n 'application/toml': ['toml'],\n 'application/trig': ['trig'],\n 'application/ttml+xml': ['ttml'],\n 'application/ubjson': ['ubj'],\n 'application/urc-ressheet+xml': ['rsheet'],\n 'application/urc-targetdesc+xml': ['td'],\n 'application/voicexml+xml': ['vxml'],\n 'application/wasm': ['wasm'],\n 'application/watcherinfo+xml': ['wif'],\n 'application/widget': ['wgt'],\n 'application/winhlp': ['hlp'],\n 'application/wsdl+xml': ['wsdl'],\n 'application/wspolicy+xml': ['wspolicy'],\n 'application/xaml+xml': ['xaml'],\n 'application/xcap-att+xml': ['xav'],\n 'application/xcap-caps+xml': ['xca'],\n 'application/xcap-diff+xml': ['xdf'],\n 'application/xcap-el+xml': ['xel'],\n 'application/xcap-ns+xml': ['xns'],\n 'application/xenc+xml': ['xenc'],\n 'application/xfdf': ['xfdf'],\n 'application/xhtml+xml': ['xhtml', 'xht'],\n 'application/xliff+xml': ['xlf'],\n 'application/xml': ['xml', 'xsl', 'xsd', 'rng'],\n 'application/xml-dtd': ['dtd'],\n 'application/xop+xml': ['xop'],\n 'application/xproc+xml': ['xpl'],\n 'application/xslt+xml': ['*xsl', 'xslt'],\n 'application/xspf+xml': ['xspf'],\n 'application/xv+xml': ['mxml', 'xhvml', 'xvml', 'xvm'],\n 'application/yang': ['yang'],\n 'application/yin+xml': ['yin'],\n 'application/zip': ['zip'],\n 'application/zip+dotlottie': ['lottie'],\n 'audio/3gpp': ['*3gpp'],\n 'audio/aac': ['adts', 'aac'],\n 'audio/adpcm': ['adp'],\n 'audio/amr': ['amr'],\n 'audio/basic': ['au', 'snd'],\n 'audio/midi': ['mid', 'midi', 'kar', 'rmi'],\n 'audio/mobile-xmf': ['mxmf'],\n 'audio/mp3': ['*mp3'],\n 'audio/mp4': ['m4a', 'mp4a', 'm4b'],\n 'audio/mpeg': ['mpga', 'mp2', 'mp2a', 'mp3', 'm2a', 'm3a'],\n 'audio/ogg': ['oga', 'ogg', 'spx', 'opus'],\n 'audio/s3m': ['s3m'],\n 'audio/silk': ['sil'],\n 'audio/wav': ['wav'],\n 'audio/wave': ['*wav'],\n 'audio/webm': ['weba'],\n 'audio/xm': ['xm'],\n 'font/collection': ['ttc'],\n 'font/otf': ['otf'],\n 'font/ttf': ['ttf'],\n 'font/woff': ['woff'],\n 'font/woff2': ['woff2'],\n 'image/aces': ['exr'],\n 'image/apng': ['apng'],\n 'image/avci': ['avci'],\n 'image/avcs': ['avcs'],\n 'image/avif': ['avif'],\n 'image/bmp': ['bmp', 'dib'],\n 'image/cgm': ['cgm'],\n 'image/dicom-rle': ['drle'],\n 'image/dpx': ['dpx'],\n 'image/emf': ['emf'],\n 'image/fits': ['fits'],\n 'image/g3fax': ['g3'],\n 'image/gif': ['gif'],\n 'image/heic': ['heic'],\n 'image/heic-sequence': ['heics'],\n 'image/heif': ['heif'],\n 'image/heif-sequence': ['heifs'],\n 'image/hej2k': ['hej2'],\n 'image/ief': ['ief'],\n 'image/jaii': ['jaii'],\n 'image/jais': ['jais'],\n 'image/jls': ['jls'],\n 'image/jp2': ['jp2', 'jpg2'],\n 'image/jpeg': ['jpg', 'jpeg', 'jpe'],\n 'image/jph': ['jph'],\n 'image/jphc': ['jhc'],\n 'image/jpm': ['jpm', 'jpgm'],\n 'image/jpx': ['jpx', 'jpf'],\n 'image/jxl': ['jxl'],\n 'image/jxr': ['jxr'],\n 'image/jxra': ['jxra'],\n 'image/jxrs': ['jxrs'],\n 'image/jxs': ['jxs'],\n 'image/jxsc': ['jxsc'],\n 'image/jxsi': ['jxsi'],\n 'image/jxss': ['jxss'],\n 'image/ktx': ['ktx'],\n 'image/ktx2': ['ktx2'],\n 'image/pjpeg': ['jfif'],\n 'image/png': ['png'],\n 'image/sgi': ['sgi'],\n 'image/svg+xml': ['svg', 'svgz'],\n 'image/t38': ['t38'],\n 'image/tiff': ['tif', 'tiff'],\n 'image/tiff-fx': ['tfx'],\n 'image/webp': ['webp'],\n 'image/wmf': ['wmf'],\n 'message/disposition-notification': ['disposition-notification'],\n 'message/global': ['u8msg'],\n 'message/global-delivery-status': ['u8dsn'],\n 'message/global-disposition-notification': ['u8mdn'],\n 'message/global-headers': ['u8hdr'],\n 'message/rfc822': ['eml', 'mime', 'mht', 'mhtml'],\n 'model/3mf': ['3mf'],\n 'model/gltf+json': ['gltf'],\n 'model/gltf-binary': ['glb'],\n 'model/iges': ['igs', 'iges'],\n 'model/jt': ['jt'],\n 'model/mesh': ['msh', 'mesh', 'silo'],\n 'model/mtl': ['mtl'],\n 'model/obj': ['obj'],\n 'model/prc': ['prc'],\n 'model/step': ['step', 'stp', 'stpnc', 'p21', '210'],\n 'model/step+xml': ['stpx'],\n 'model/step+zip': ['stpz'],\n 'model/step-xml+zip': ['stpxz'],\n 'model/stl': ['stl'],\n 'model/u3d': ['u3d'],\n 'model/vrml': ['wrl', 'vrml'],\n 'model/x3d+binary': ['*x3db', 'x3dbz'],\n 'model/x3d+fastinfoset': ['x3db'],\n 'model/x3d+vrml': ['*x3dv', 'x3dvz'],\n 'model/x3d+xml': ['x3d', 'x3dz'],\n 'model/x3d-vrml': ['x3dv'],\n 'text/cache-manifest': ['appcache', 'manifest'],\n 'text/calendar': ['ics', 'ifb'],\n 'text/coffeescript': ['coffee', 'litcoffee'],\n 'text/css': ['css'],\n 'text/csv': ['csv'],\n 'text/html': ['html', 'htm', 'shtml'],\n 'text/jade': ['jade'],\n 'text/javascript': ['js', 'mjs'],\n 'text/jsx': ['jsx'],\n 'text/less': ['less'],\n 'text/markdown': ['md', 'markdown'],\n 'text/mathml': ['mml'],\n 'text/mdx': ['mdx'],\n 'text/n3': ['n3'],\n 'text/plain': ['txt', 'text', 'conf', 'def', 'list', 'log', 'in', 'ini'],\n 'text/richtext': ['rtx'],\n 'text/rtf': ['*rtf'],\n 'text/sgml': ['sgml', 'sgm'],\n 'text/shex': ['shex'],\n 'text/slim': ['slim', 'slm'],\n 'text/spdx': ['spdx'],\n 'text/stylus': ['stylus', 'styl'],\n 'text/tab-separated-values': ['tsv'],\n 'text/troff': ['t', 'tr', 'roff', 'man', 'me', 'ms'],\n 'text/turtle': ['ttl'],\n 'text/uri-list': ['uri', 'uris', 'urls'],\n 'text/vcard': ['vcard'],\n 'text/vtt': ['vtt'],\n 'text/wgsl': ['wgsl'],\n 'text/xml': ['*xml'],\n 'text/yaml': ['yaml', 'yml'],\n 'video/3gpp': ['3gp', '3gpp'],\n 'video/3gpp2': ['3g2'],\n 'video/h261': ['h261'],\n 'video/h263': ['h263'],\n 'video/h264': ['h264'],\n 'video/iso.segment': ['m4s'],\n 'video/jpeg': ['jpgv'],\n 'video/jpm': ['*jpm', '*jpgm'],\n 'video/mj2': ['mj2', 'mjp2'],\n 'video/mp2t': ['ts', 'm2t', 'm2ts', 'mts'],\n 'video/mp4': ['mp4', 'mp4v', 'mpg4'],\n 'video/mpeg': ['mpeg', 'mpg', 'mpe', 'm1v', 'm2v'],\n 'video/ogg': ['ogv'],\n 'video/quicktime': ['qt', 'mov'],\n 'video/webm': ['webm'],\n};\nObject.freeze(types);\nexport default types;\n","var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n};\nvar _Mime_extensionToType, _Mime_typeToExtension, _Mime_typeToExtensions;\nclass Mime {\n constructor(...args) {\n _Mime_extensionToType.set(this, new Map());\n _Mime_typeToExtension.set(this, new Map());\n _Mime_typeToExtensions.set(this, new Map());\n for (const arg of args) {\n this.define(arg);\n }\n }\n define(typeMap, force = false) {\n for (let [type, extensions] of Object.entries(typeMap)) {\n type = type.toLowerCase();\n extensions = extensions.map((ext) => ext.toLowerCase());\n if (!__classPrivateFieldGet(this, _Mime_typeToExtensions, \"f\").has(type)) {\n __classPrivateFieldGet(this, _Mime_typeToExtensions, \"f\").set(type, new Set());\n }\n const allExtensions = __classPrivateFieldGet(this, _Mime_typeToExtensions, \"f\").get(type);\n let first = true;\n for (let extension of extensions) {\n const starred = extension.startsWith('*');\n extension = starred ? extension.slice(1) : extension;\n allExtensions?.add(extension);\n if (first) {\n __classPrivateFieldGet(this, _Mime_typeToExtension, \"f\").set(type, extension);\n }\n first = false;\n if (starred)\n continue;\n const currentType = __classPrivateFieldGet(this, _Mime_extensionToType, \"f\").get(extension);\n if (currentType && currentType != type && !force) {\n throw new Error(`\"${type} -> ${extension}\" conflicts with \"${currentType} -> ${extension}\". Pass \\`force=true\\` to override this definition.`);\n }\n __classPrivateFieldGet(this, _Mime_extensionToType, \"f\").set(extension, type);\n }\n }\n return this;\n }\n getType(path) {\n if (typeof path !== 'string')\n return null;\n const last = path.replace(/^.*[/\\\\]/s, '').toLowerCase();\n const ext = last.replace(/^.*\\./s, '').toLowerCase();\n const hasPath = last.length < path.length;\n const hasDot = ext.length < last.length - 1;\n if (!hasDot && hasPath)\n return null;\n return __classPrivateFieldGet(this, _Mime_extensionToType, \"f\").get(ext) ?? null;\n }\n getExtension(type) {\n if (typeof type !== 'string')\n return null;\n type = type?.split?.(';')[0];\n return ((type && __classPrivateFieldGet(this, _Mime_typeToExtension, \"f\").get(type.trim().toLowerCase())) ?? null);\n }\n getAllExtensions(type) {\n if (typeof type !== 'string')\n return null;\n return __classPrivateFieldGet(this, _Mime_typeToExtensions, \"f\").get(type.toLowerCase()) ?? null;\n }\n _freeze() {\n this.define = () => {\n throw new Error('define() not allowed for built-in Mime objects. See https://github.com/broofa/mime/blob/main/README.md#custom-mime-instances');\n };\n Object.freeze(this);\n for (const extensions of __classPrivateFieldGet(this, _Mime_typeToExtensions, \"f\").values()) {\n Object.freeze(extensions);\n }\n return this;\n }\n _getTestState() {\n return {\n types: __classPrivateFieldGet(this, _Mime_extensionToType, \"f\"),\n extensions: __classPrivateFieldGet(this, _Mime_typeToExtension, \"f\"),\n };\n }\n}\n_Mime_extensionToType = new WeakMap(), _Mime_typeToExtension = new WeakMap(), _Mime_typeToExtensions = new WeakMap();\nexport default Mime;\n","import standardTypes from '../types/standard.js';\nimport Mime from './Mime.js';\nexport { default as Mime } from './Mime.js';\nexport default new Mime(standardTypes)._freeze();\n","/**\n * @param {string} message\n * @param {unknown} test\n * @returns {asserts test}\n */\nexport function assert(message, test) {\n if (!test) {\n throw new Error(message);\n }\n}\n\nlet i = 0;\n\nexport function nextId() {\n i += 1;\n\n return `repl_${i}`;\n}\n\nexport const fakeDomain = 'repl.sdk';\nexport const tgzPrefix = 'file:///tgz.repl.sdk/';\nexport const unzippedPrefix = 'file:///tgz.repl.sdk/unzipped';\n\n/**\n * @param {string} url\n */\nexport function prefix_tgz(url) {\n return `${tgzPrefix}${url}`;\n}\n\n/**\n * @param {unknown} x\n * @returns {x is Record<string, unknown>}\n */\nexport function isRecord(x) {\n return typeof x === 'object' && x !== null && !Array.isArray(x);\n}\n","import { assert } from './utils.js';\n\nexport const secretKey = '__repl-sdk__compiler__';\n\n/**\n * @typedef {object} ResolveIdValue\n * @property {string} name\n * @property {string} version\n * @property {import('./types.ts').RequestAnswer} path\n *\n * @typedef {import('./request.js').Request} Request\n *\n * @typedef {typeof globalThis & { [secret]?: {\n * requestCache?: Map<string, Request>,\n * resolveId?: Map<string, ResolveIdValue>,\n * tarballs?: Map<string, import('./types.ts').UntarredPackage>,\n * resolves?: { [modulePath: string]: unknown },\n * promiseCache?: Map<string, Promise<unknown>>,\n * fileCache?: Map<string, { code: string, ext: string }>\n * caches?: Caches\n * } }} ExtendedWindow\n */\nconst secret = Symbol.for(secretKey);\n\nfunction getGlobal() {\n const global = /** @type {ExtendedWindow} */ (globalThis);\n\n return global;\n}\n\nassert(\n `There is already an instance of repl-sdk, and there can only be one. Make sure that your dependency graph is correct.`,\n !getGlobal()[secret]\n);\n\nclass Caches {\n clear() {\n delete getGlobal()[secret];\n }\n\n /**\n * Cache of resolved modulePaths to their module \"value\"\n *\n * @type {{ [modulePath: string]: unknown }}\n */\n get resolves() {\n this.#root.resolves ||= {};\n\n return this.#root.resolves;\n }\n\n /**\n * Cache of untarred tarballs\n *\n * @type {Map<string, import('./types.ts').UntarredPackage>}\n */\n get tarballs() {\n this.#root.tarballs ||= new Map();\n\n return this.#root.tarballs;\n }\n\n /**\n * Cache of request resolutions\n *\n * @type {Map<string, ResolveIdValue>}\n */\n get resolveId() {\n this.#root.resolveId ||= new Map();\n\n return this.#root.resolveId;\n }\n\n /**\n * Cache of request Key to file content string\n *\n * @type {Map<string, { code: string, ext: string }>}\n */\n get fileCache() {\n this.#root.fileCache ||= new Map();\n\n return this.#root.fileCache;\n }\n\n /**\n * For any key, store a promise for resolving later\n *\n * @type {Map<string, Promise<unknown>>}\n */\n get promiseCache() {\n this.#root.promiseCache ||= new Map();\n\n return this.#root.promiseCache;\n }\n\n /**\n * @template Return\n * @type {(key: string, callback: () => Promise<any>) => Promise<any>}\n */\n cachedPromise(key, callback) {\n const existing = this.promiseCache.get(key);\n\n if (existing) {\n return /** @type {Promise<Return>} */ (existing);\n }\n\n const promise = callback();\n\n this.promiseCache.set(key, promise);\n\n return promise;\n }\n\n get requestCache() {\n this.#root.requestCache ||= new Map();\n\n return this.#root.requestCache;\n }\n\n get #root() {\n const global = getGlobal();\n\n global[secret] ||= {};\n global[secret].caches ||= this;\n\n return global[secret];\n }\n}\n\nexport function deleteCache() {\n if (!getGlobal()?.[secret]) {\n return;\n }\n\n delete getGlobal()[secret];\n}\n\nexport const cache = new Caches();\n","/**\n * @typedef {import('../types.ts').CompilerConfig} CompilerConfig\n */\n\n/**\n * Other `@ember` (and `@glimmer`) packages are bundled in ember-source,\n * and typecilaly use a build plugin to resolve from `@ember/*` imports.\n */\nconst externalPackages = [\n '@ember/test-helpers',\n '@ember/string',\n '@ember/test-waiters',\n '@ember/render-modifiers',\n '@glimmer/component',\n];\n\n/**\n * @param {string} id\n * @returns {string | undefined | (() => Record<string, unknown>)}\n */\nfunction resolve(id) {\n if (id === '@ember/template-compiler/runtime') {\n return `https://esm.sh/*ember-source/dist/packages/@ember/template-compiler/runtime.js`;\n }\n\n const isExternalEmber = externalPackages.some((name) => id.startsWith(name));\n\n if (isExternalEmber) {\n return `https://esm.sh/*${id}`;\n }\n\n if (id.startsWith('@ember')) {\n return `https://esm.sh/*ember-source/dist/packages/${id}`;\n }\n\n if (id.startsWith('@glimmer')) {\n return `https://esm.sh/*ember-source/dist/dependencies/${id}.js`;\n }\n\n if (id.startsWith('@embroider/macros')) {\n return () => ({\n // passthrough, we are not doing dead-code-elimination\n\n /**\n * @param {unknown} x\n */\n macroCondition: (x) => Boolean(x),\n // I *could* actually implement this\n dependencySatisfies: () => true,\n isDevelopingApp: () => true,\n getGlobalConfig: () => ({\n WarpDrive: {\n debug: false,\n env: {\n DEBUG: false,\n TESTING: false,\n PRODUCTION: true,\n },\n activeLogging: false,\n compatWith: '99.0',\n features: {},\n deprecations: {},\n polyfillUUID: false,\n includeDataAdapter: false,\n },\n }),\n });\n }\n}\n\n/**\n Example:\n \n Uncaught (in promise) Error: Assertion Failed: You attempted to update `count` on `Demo`, but it had already been used previously in the same computation. Attempting to update a value after using it in a computation can cause logical errors, infinite revalidation bugs, and performance issues, and is not supported.\n\n `count` was first used:\n\n - While rendering:\n {{outlet}} for -top-level\n -top-level\n {{outlet}} for application\n Demo\n this.foos.value\n this.foos\n\n Stack trace for the update:\n *\n * @param {PromiseRejectionEvent} e\n * @param {(message: string) => void} handle\n */\nfunction onUnhandled(e, handle) {\n if (!e.reason?.message) return;\n\n let reason = e.reason.message;\n\n if (reason.includes('Stack trace for the update:')) {\n reason += ' (see console)';\n }\n\n handle(reason);\n}\n\n/**\n * @type {CompilerConfig}\n */\nexport const gjs = {\n resolve,\n onUnhandled,\n codemirror: {\n lang: async () => {\n const { gjs } = await import('codemirror-lang-glimmer-js');\n\n return gjs();\n },\n },\n compiler: async (...args) => {\n const gjs = await import('./ember/gjs.js');\n\n return gjs.compiler(...args);\n },\n};\n\n/**\n * @type {CompilerConfig}\n */\nexport const hbs = {\n resolve,\n onUnhandled,\n codemirror: {\n lang: async () => {\n const { glimmer } = await import('codemirror-lang-glimmer');\n\n return glimmer();\n },\n },\n compiler: async (...args) => {\n const hbs = await import('./ember/hbs.js');\n\n return hbs.compiler(...args);\n },\n};\n\n/**\n * @type {CompilerConfig}\n */\nexport const gmd = {\n resolve,\n onUnhandled,\n codemirror: {\n lang: async () => {\n const { glimdown } = await import('codemirror-lang-glimdown');\n\n return glimdown();\n },\n support: async () => {\n const { gjs } = await import('codemirror-lang-glimmer-js');\n\n return [gjs().support];\n },\n },\n compiler: async (...args) => {\n const hbs = await import('./ember/gmd.js');\n\n return hbs.compiler(...args);\n },\n};\n","import { assert } from '../utils.js';\n\n/**\n * @type {import('../types.ts').CompilerConfig}\n */\nexport const js = {\n codemirror: {\n lang: async () => {\n const { javascript } = await import('@codemirror/lang-javascript');\n\n return javascript();\n },\n },\n compiler: async (config, api) => {\n return {\n compile: async (text, options) => {\n // No compiling needed. Just JS\n return text;\n },\n render: async (element, fun, extra, compiler) => {\n assert(\n `js document must have a function for a default export. Instead received: ${typeof fun}`,\n typeof fun === 'function'\n );\n\n await fun(element);\n\n compiler.announce('info', 'Done');\n },\n };\n },\n};\n","/**\n * @param {string} lang\n */\nexport function isNotMarkdownLike(lang) {\n return lang !== 'md' && lang !== 'gmd' && lang !== 'mdx';\n}\n\n/**\n * @param {string} meta\n */\nexport function isPreview(meta) {\n if (!meta) return false;\n\n return meta.includes('preview');\n}\n\n/**\n * @param {string} meta\n */\nexport function isBelow(meta) {\n if (!meta) return false;\n\n return meta.includes('below');\n}\n\n/**\n * @param {Pick<import('../../types').PublicMethods, 'getAllowedFormats' | 'getFlavorsFor' | 'optionsFor'>} api\n */\nexport function buildCodeFenceMetaUtils(api) {\n const allowedFormats = api.getAllowedFormats().filter(isNotMarkdownLike);\n\n /**\n * @param {string} lang\n * @param {string | undefined} [ flavor ]\n */\n function needsLive(lang, flavor) {\n if (!allowedFormats.includes(lang)) return false;\n\n return api.optionsFor(lang, flavor).needsLiveMeta ?? true;\n }\n\n /**\n * @param {string} meta\n * @param {string} lang\n */\n function getFlavorFromMeta(meta, lang) {\n const flavors = api.getFlavorsFor(lang);\n\n const flavor = meta\n ?.trim()\n .split(' ')\n .find((metum) => flavors.includes(metum));\n\n return flavor;\n }\n\n /**\n * @param {string} meta\n * @param {string} lang\n */\n function isLive(meta, lang) {\n const flavor = getFlavorFromMeta(meta, lang);\n\n if (!needsLive(lang, flavor)) return true;\n if (!meta) return false;\n\n return meta.includes('live');\n }\n\n return {\n isPreview,\n isBelow,\n isLive,\n needsLive,\n allowedFormats,\n getFlavorFromMeta,\n };\n}\n","/**\n * @typedef {import('unified').Plugin} Plugin\n */\nimport { assert, isRecord } from '../utils.js';\nimport { buildCodeFenceMetaUtils } from './markdown/utils.js';\n\n/**\n * @param {unknown} [ options ]\n * @returns {{ remarkPlugins: Plugin[], rehypePlugins: Plugin[] }}\n */\nexport function filterOptions(options) {\n if (!isRecord(options)) {\n return { remarkPlugins: [], rehypePlugins: [] };\n }\n\n return {\n remarkPlugins: /** @type {Plugin[]}*/ (options?.remarkPlugins || []),\n rehypePlugins: /** @type {Plugin[]}*/ (options?.rehypePlugins || []),\n };\n}\n\n/**\n * @type {import('../types.ts').CompilerConfig}\n */\nexport const md = {\n codemirror: {\n lang: async () => {\n const { glimdown } = await import('codemirror-lang-glimdown');\n\n /**\n * pre-configured markdown with GFM, and a few other extensions\n */\n return glimdown();\n },\n },\n compiler: async (config, api) => {\n const { isLive, isPreview, needsLive, allowedFormats, isBelow, getFlavorFromMeta } =\n buildCodeFenceMetaUtils(api);\n\n // Try both possible structures\n const userOptions = filterOptions(\n /** @type {Record<string, unknown>} */ (config.userOptions)?.md || config\n );\n\n // No recursing for now.\n\n const { parseMarkdown } = await import('./markdown/parse.js');\n\n /**\n * @type {import('../types.ts').Compiler}\n */\n return {\n compile: async (text, options) => {\n const compileOptions = filterOptions(options);\n const result = await parseMarkdown(text, {\n remarkPlugins: [...userOptions.remarkPlugins, ...compileOptions.remarkPlugins],\n rehypePlugins: [...userOptions.rehypePlugins, ...compileOptions.rehypePlugins],\n isLive,\n isPreview,\n isBelow,\n needsLive,\n ALLOWED_FORMATS: allowedFormats,\n getFlavorFromMeta,\n });\n const escaped = result.text.replace(/`/g, '\\\\`');\n\n return { compiled: `export default \\`${escaped}\\``, ...result };\n },\n render: async (element, compiled, extra, compiler) => {\n element.innerHTML = /** @type {string} */ (compiled);\n\n /**\n * @type {(() => void)[]}\n */\n const destroyables = [];\n\n await Promise.all(\n /** @type {unknown[]} */ (extra.codeBlocks).map(async (/** @type {unknown} */ info) => {\n /** @type {Record<string, unknown>} */\n const infoObj = /** @type {Record<string, unknown>} */ (info);\n\n if (\n !api.canCompile(\n /** @type {string} */ (infoObj.format),\n /** @type {string} */ (infoObj.flavor)\n )\n ) {\n return;\n }\n\n const flavor = /** @type {string} */ (infoObj.flavor);\n const subRender = await compiler.compile(\n /** @type {string} */ (infoObj.format),\n /** @type {string} */ (infoObj.code),\n {\n ...compiler.optionsFor(/** @type {string} */ (infoObj.format), flavor),\n flavor: flavor,\n }\n );\n\n const selector = `#${/** @type {string} */ (infoObj.placeholderId)}`;\n const target = element.querySelector(selector);\n\n assert(\n `Could not find placeholder / target element (using selector: \\`${selector}\\`). ` +\n `Could not render ${/** @type {string} */ (infoObj.format)} block.`,\n target\n );\n\n destroyables.push(subRender.destroy);\n target.appendChild(subRender.element);\n })\n );\n\n compiler.announce('info', 'Done');\n\n return () => {\n for (const subDestroy of destroyables) {\n subDestroy();\n }\n };\n },\n };\n },\n};\n","/**\n * Parses\n * @scope/pkgName\n * pkgName\n * @scope/pkgName@version\n * pkgName@version\n * @scope/pkgName@version/path\n * pkgName@version/path\n *\n * @param {string} specifier\n * @returns {{ name: string, version: string | undefined, path: string }}\n */\nexport function parseSpecifier(specifier) {\n let name = '';\n let version = '';\n let path = '.';\n\n const chars = specifier.split('');\n\n const hasScope = chars[0] === '@';\n\n let isVersion = false;\n let isPath = false;\n let finishedName = false;\n let slashCount = 0;\n\n for (let i = 0; i < chars.length; i++) {\n const char = chars[i];\n\n // Enter version mode\n // Goes until the end, or a slash\n if (char === '@' && i > 0) {\n finishedName = true;\n isVersion = true;\n continue;\n } else if (char === '/') {\n slashCount++;\n\n if (hasScope) {\n if (slashCount > 1) {\n finishedName = true;\n }\n } else {\n finishedName = true;\n }\n\n if (finishedName) {\n isPath = true;\n }\n }\n\n if (isVersion && char === '/') {\n isVersion = false;\n isPath = true;\n }\n\n if (isVersion) {\n version += char;\n } else if (isPath) {\n path += char;\n } else {\n name += char;\n }\n }\n\n return {\n name,\n version: version || undefined,\n path,\n };\n}\n","import { parseSpecifier } from './specifier.js';\n\n/**\n * @param {string} importPath\n * @returns {[string, string]}\n */\nfunction splitSubPath(importPath) {\n const parsed = parseSpecifier(importPath);\n\n return [parsed.name, parsed.path === '.' ? '' : parsed.path];\n}\n\n/**\n * Generate an import URL for esm.sh\n *\n * @param {Record<string, string>} versions\n * @param {string} importPath\n */\nexport function esmSh(versions, importPath, allExternal = false) {\n const [name, subPath] = splitSubPath(importPath);\n\n const version = versions[name];\n const subPathExport = subPath.length === 0 || subPath.startsWith('/') ? subPath : `/${subPath}`;\n\n const externals = allExternal ? '*' : '';\n\n return version\n ? `https://esm.sh/${externals}${name}@${version}${subPathExport}`\n : `https://esm.sh/${externals}${name}${subPathExport}`;\n}\n\n/**\n * Generate an import URL for esm.run (jsdelivr)\n *\n * @param {Record<string, string>} versions\n * @param {string} importPath\n */\nexport function esmRun(versions, importPath) {\n const [name, subPath] = splitSubPath(importPath);\n\n const version = versions[name];\n const subPathExport = subPath.length === 0 || subPath.startsWith('/') ? subPath : `/${subPath}`;\n\n return version\n ? `https://esm.run/${name}@latest${subPathExport}`\n : `https://esm.run/${name}${subPathExport}`;\n}\n\nexport const jsdelivr = {\n /**\n * @param {Record<string, string>} versions\n * @param {string} importPath\n */\n async import(versions, importPath) {\n const url = esmRun(versions, importPath);\n\n return await import(/* @vite-ignore */ url);\n },\n /**\n * @param {Record<string, string>} versions\n * @param {string[]} deps the names of deps to pull from esm.sh\n */\n async importAll(versions, deps = []) {\n return await Promise.all(\n deps.map((dep) => {\n return jsdelivr.import(versions, dep);\n })\n );\n },\n};\n\nexport const esmsh = {\n /**\n * @param {Record<string, string>} versions\n * @param {string} importPath\n */\n async import(versions, importPath) {\n const url = esmSh(versions, importPath);\n\n return await import(/* @vite-ignore */ url);\n },\n /**\n * @param {Record<string, string>} versions\n * @param {string[]} deps the names of deps to pull from esm.sh\n */\n async importAll(versions, deps = []) {\n return await Promise.all(\n deps.map((dep) => {\n return esmsh.import(versions, dep);\n })\n );\n },\n};\n","import { esmsh } from '../cdn.js';\n\n/**\n * @type {import('../types.ts').CompilerConfig}\n */\nexport const mermaid = {\n needsLiveMeta: false,\n codemirror: {\n lang: async () => {\n const { mermaid } = await import('codemirror-lang-mermaid');\n\n return mermaid();\n },\n },\n compiler: async (config, api) => {\n const versions = config.versions;\n const { default: mermaid } = await api.tryResolve('mermaid', () => {\n return esmsh.import(versions, 'mermaid');\n });\n\n let id = 0;\n\n return {\n compile: async (text) => {\n return `export default \\`${text}\\`;`;\n },\n render: async (element, text, _, compiler) => {\n const { svg } = await mermaid.render('graphDiv' + id++, text);\n\n element.innerHTML = svg;\n compiler.announce('info', 'Done');\n },\n };\n },\n};\n","/**\n * @type {import('../types.ts').CompilerConfig}\n */\nexport const jsx = {\n codemirror: {\n lang: async () => {\n const { javascript } = await import('@codemirror/lang-javascript');\n\n return javascript({ jsx: true });\n },\n },\n resolve: (id) => {\n /**\n * NOTE: react still only publishes CJS to NPM\n */\n switch (id) {\n case 'react':\n return `https://esm.sh/react@19.2.3/es2022/react.development.mjs`;\n case 'react/jsx-dev-runtime':\n return `https://esm.sh/react@19.2.3/es2022/jsx-dev-runtime.development.mjs`;\n case 'react-dom/client':\n return `https://esm.sh/react-dom@19.2.3/es2022/client.development.mjs`;\n case '@babel/standalone':\n return `https://esm.sh/@babel/standalone`;\n }\n },\n compiler: async (config, api) => {\n const [reactDom, babel] = await api.tryResolveAll(['react-dom/client', '@babel/standalone']);\n\n const { createRoot } = reactDom;\n\n return {\n async compile(text) {\n const result = babel.transform(text, {\n filename: `repl.js`,\n presets: [\n [\n babel.availablePresets.react,\n {\n // useBuiltIns: true,\n },\n ],\n ],\n });\n\n return result.code;\n },\n async render(element, component) {\n const root = createRoot(element);\n\n await new Promise((resolve) => requestAnimationFrame(resolve));\n root.render(component);\n\n // Wait for react-dom to render\n await new Promise((resolve) => requestAnimationFrame(resolve));\n },\n };\n },\n};\n","import { esmSh } from '../cdn.js';\n\n/**\n * @type {import('../types.ts').CompilerConfig}\n */\nexport const svelte = {\n codemirror: {\n lang: async () => {\n const { svelte } = await import('@replit/codemirror-lang-svelte');\n\n return svelte();\n },\n },\n\n /**\n * Default config, known to work with how the compiler and render functions are configured.\n */\n resolve: (id) => {\n // This is basically an importmap.\n // Because Svelte 5 is no longer bundled, we need another service to provide\n // these.\n //\n // Svelte 5 has a tooooon of modules, and repl-sdk (at the time of writing)\n // runs out of memory and crashes the browser while loading everything.\n //\n // There are optimizations to be had, for sure.\n // But this is good for now.\n //\n // See also: https://github.com/sveltejs/svelte/discussions/15658\n if (['svelte'].some((x) => id.startsWith(x))) {\n return (\n esmSh(\n {\n svelte: '5.35.7',\n },\n id,\n false\n ) +\n // + '?target=esnext';\n '?dev&target=esnext&keep-names'\n );\n }\n\n // dependencies of svelte / the compiler\n if (\n [\n 'zimmerframe',\n 'locate-character',\n 'acorn',\n 'clsx',\n 'magic-string',\n '@ampproject/remapping',\n '@jridgewell/sourcemap-codec',\n 'axobject-query',\n 'esrap',\n 'is-reference',\n 'aria-query',\n '@sveltejs/acorn-typescript',\n ].some((x) => id.startsWith(x))\n ) {\n return esmSh({}, id, false);\n }\n },\n compiler: async (config, api) => {\n const [svelte, compiler] = await api.tryResolveAll(['svelte', 'svelte/compiler']);\n\n return {\n compile: async (text, options) => {\n /**\n * source: https://github.com/sveltejs/svelte/blob/26e328689950b390189c6da31c32283d217df4b4/packages/svelte/src/compiler/index.js#L22\n *\n * Usages:\n * https://github.com/sveltejs/svelte/blob/main/playgrounds/sandbox/run.js#L75\n */\n const output = await compiler.compile(text, {\n /* this errors if unexpected options are passed */\n generate: 'client',\n fragments: 'html',\n // Placeholder for now until multiple files are supported\n filename: 'repl-sdk.svelte',\n dev: true,\n runes: true,\n // experimental: {\n // async: true,\n // },\n });\n\n return { compiled: output.js.code, css: output.css?.code };\n },\n render: async (element, component, { css }) => {\n const div = document.createElement('div');\n\n if (css) {\n const style = document.createElement('style');\n\n style.innerHTML = /** @type {string} */ (css);\n element.appendChild(style);\n }\n\n element.appendChild(div);\n\n requestAnimationFrame(() => {\n // @ts-ignore\n svelte.mount(component, {\n target: element,\n props: {\n /* no props */\n },\n });\n\n api.announce('info', 'Done');\n });\n },\n };\n },\n};\n","/**\n * @type {import('../types.ts').CompilerConfig}\n */\nexport const vue = {\n codemirror: {\n lang: async () => {\n const { vue } = await import('@codemirror/lang-vue');\n\n return vue();\n },\n },\n /**\n * Default config, known to work with how the compiler and render functions are configured.\n */\n resolve: (id) => {\n switch (id) {\n case 'vue':\n return `https://cdn.jsdelivr.net/npm/vue@3.5.16/+esm`;\n case '@vue/repl':\n return `https://cdn.jsdelivr.net/npm/@vue/repl@4.5.1/+esm`;\n }\n },\n compiler: async (config, api) => {\n const [{ createApp }, { compileFile, useStore }] = await api.tryResolveAll([\n 'vue',\n '@vue/repl',\n ]);\n\n const store = useStore();\n\n return {\n compile: async (text, options) => {\n const output = { js: '', css: '', ssr: '' };\n\n await compileFile(store, {\n code: text,\n filename: options.fileName,\n language: 'vue',\n compiled: output,\n });\n\n return { compiled: output.js, css: output.css };\n },\n render: async (element, component, { css }, compiler) => {\n const div = document.createElement('div');\n const style = document.createElement('style');\n\n style.innerHTML = /** @type {string} */ (css);\n\n element.appendChild(div);\n element.appendChild(style);\n\n createApp(component).mount(div);\n compiler.announce('info', 'Done');\n },\n };\n },\n};\n","import * as ember from './compilers/ember.js';\nimport { js } from './compilers/js.js';\nimport * as markdown from './compilers/markdown.js';\nimport { mermaid } from './compilers/mermaid.js';\nimport * as react from './compilers/react.js';\nimport { svelte } from './compilers/svelte.js';\nimport { vue } from './compilers/vue.js';\n\n/**\n * @type {import('./types').Options['formats']}\n */\nexport const compilers = {\n hbs: {\n /**\n * ember has historically used a subset of HBS, and then built its own features on top of.\n *\n * It is not \"handlebars\", but does share a lot of similarities.\n * (and these continue in ember's new gjs and gts formats)\n *\n */\n ember: ember.hbs,\n },\n /**\n * Markdown, but every code fense can be a live \"Island\"\n * if `live` is in the codefence's meta tag and the compiler\n * is registered here, or by the user of repl-sdk.\n */\n md: markdown.md,\n\n /**\n * Glimmer-flavored Markdown.\n *\n * Like the markdow renderer, but the resulting HTML\n * is a Glimmer Component, rather than just plain HTML.\n *\n * https://emberjs.com\n * https://repl.nullvoxpopuli.com\n * https://kolay.nullvoxpopuli.com\n * https://tutorial.glimdown.com\n * https://limber.glimdown.com\n */\n gmd: ember.gmd,\n /**\n * Glimmer-Flavored JavaScript\n *\n * https://emberjs.com\n */\n gjs: ember.gjs,\n /**\n * TODO:\n * Glimmer-flavored TypeScript\n *\n * https://emberjs.com\n */\n // gts: ember.gts,\n\n /**\n * Just vanilla JS.\n */\n js,\n\n /**\n * JSX is too overloaded to treat one way.\n * We need to split this, and then make folks choose which one to use\n * - jsx-react\n * - jsx-vue\n * - jsx-solid\n * - (etc)\n *\n * This means that as a generic compiler, we can't just have jsx support.\n * And in markdown, we'll need to support choosing which flavor of jsx\n * via meta tags on the codefences.\n *\n * For example:\n * ```jsx solid\n * export default <></>;\n * ```\n *\n * or\n * ```jsx react\n * export default <></>;\n * ```\n */\n jsx: {\n /**\n * https://react.dev/\n */\n react: react.jsx,\n\n /**\n * TODO:\n * https://www.solidjs.com/\n */\n // solid: solid.jsx,\n },\n /**\n * https://mermaid.js.org/\n */\n mermaid,\n /**\n * https://svelte.dev/\n */\n svelte,\n /**\n * https://vuejs.org/\n */\n vue,\n};\n","/**\n * es-module-shim can only be initialized once.\n * it freezes its caches and options passed to it.\n *\n * So... here we are. Making stuff dynamic so we can have es-module-shims\n * deal with the \"most recent\" intance of the compiler\n * (since the compiler holds state,\n * and our tests share all globals as they run in the same browser window).\n */\n\n/**\n * @type {{\n * resolve: (id: string, parentUrl: string, parentResolve: (id: string, parentUrl: string) => string) => string\n * fetch: (id: string, options: RequestInit) => Promise<Response>\n * }}\n */\nexport const STABLE_REFERENCE = {\n resolve: () => {\n throw new Error(\n `'resolve' not implemented in STABLE_REFERENCE. Has the Compiler been set up correctly?`\n );\n },\n fetch: async () => {\n throw new Error(\n `'fetch' not implemented in STABLE_REFERENCE. Has the Compiler been set up correctly?`\n );\n },\n};\n\nglobalThis.esmsInitOptions = {\n shimMode: true,\n // skip: [`https://esm.sh`, 'https://jspm.dev/', 'https://cdn.jsdelivr.net/'],\n revokeBlobURLs: true, // default false\n mapOverrides: true, // default false\n\n /**\n * @param {string} id\n * @param {string} parentUrl\n * @param {(id: string, parentUrl: string) => string} resolve\n * @returns {string}\n */\n resolve: (id, parentUrl, resolve) => STABLE_REFERENCE.resolve(id, parentUrl, resolve),\n // NOTE: may need source hook\n // https://github.com/guybedford/es-module-shims?tab=readme-ov-file#source-hook\n //\n\n /**\n * @param {string} url\n * @param {RequestInit} options\n * @returns {Promise<Response>}\n */\n fetch: (url, options) => STABLE_REFERENCE.fetch(url, options),\n};\n","import { cache } from './cache.js';\nimport { parseSpecifier } from './specifier.js';\nimport { assert, unzippedPrefix } from './utils.js';\n\nlet requestId = 1;\n\nfunction requestKey() {\n return `repl-request-${requestId++}`;\n}\n\n/**\n * @param {{ to: string, from?: string }} options\n * @returns {string} the id of the request\n */\nexport function idForRequest({ to, from }) {\n const url = getTarRequestId({ to, from });\n\n return idFromRequestUrl(url);\n}\n\n/**\n * @param {{ to: string, from?: string }} options\n * @returns {string} the URL of the request\n */\nexport function getTarRequestId({ to, from }) {\n const request = Request.of({ to, from });\n\n const key = requestKey();\n\n cache.requestCache.set(key, request);\n\n return `${unzippedPrefix}/${key}`;\n}\n\n/**\n * @param {string} url\n * @returnns {string}\n */\nexport function idFromRequestUrl(url) {\n return url.replace(unzippedPrefix + '/', '');\n}\n\nexport class Request {\n static get #idCache() {\n return cache.requestCache;\n }\n\n /**\n * @param {{ to: string, from?: string }} toFrom\n */\n static of({ to, from }) {\n const isRoot = to.match(/^[A-Za-z@]/);\n const fromId = from?.replace(unzippedPrefix + '/', '');\n const request = Request.fromSpecifier(isRoot ? to : `${to}?from=${fromId}`);\n\n return request;\n }\n\n /**\n * @param {string} id\n */\n static fromRequestId(id) {\n const request = Request.#idCache.get(id);\n\n assert(`Could not find request from id:${id}`, request);\n\n return request;\n }\n\n /**\n * @param {string} specifier\n */\n static fromSpecifier(specifier) {\n return new Request(specifier);\n }\n\n /** @type {string} */\n #to;\n\n /** @type {Request | undefined} */\n #from;\n\n /**\n * @private\n * @param {string} specifier\n */\n constructor(specifier) {\n const removedPrefix = specifier.replace(unzippedPrefix, '');\n const [full, query] = removedPrefix.split('?');\n\n this.original = specifier;\n\n assert(`Invalid specifier: ${specifier}`, full);\n\n if (full.startsWith('.') || full.startsWith('#')) {\n if (!query) {\n throw new Error(\n `Missing query, ?from for specifier: ${specifier}. From is required for relative and subpath-imports.`\n );\n }\n }\n\n /**\n * This will either be '.' or have the leading ./\n */\n this.#to = full;\n\n if (query) {\n const search = new URLSearchParams(query);\n const fromQp = search.get('from');\n\n assert(`Missing query, ?from for specifier: ${specifier}`, fromQp);\n\n const from = Request.fromRequestId(fromQp);\n\n this.#from = from;\n this.name = from.name;\n this.version = from.version;\n } else {\n const parsed = parseSpecifier(full);\n const { name, version = 'latest', path } = parsed;\n\n this.name = name;\n this.version = version.replace(/\\.+$/, '');\n this.#to = path;\n }\n }\n\n get to() {\n return this.#to;\n }\n\n get from() {\n return this.#from;\n }\n\n get key() {\n return `__name__/${this.name}[AT:V]${this.version}/__to__/${this.to}`;\n }\n}\n","import { exports as resolveExports } from 'resolve.exports';\nimport { resolve as resolveImports } from 'resolve.imports';\n\n/**\n * @typedef {import('./request.js').Request} Request\n */\nimport { assert, fakeDomain } from './utils.js';\n\n/**\n * If a package wanted, they could provide a special export condition\n * targeting REPLs.\n *\n * This format should still be ESM.\n * CJS is not supported in browsers, and I won't support CJS in this REPL.\n */\nconst CONDITIONS = ['repl', 'module', 'browser', 'import', 'default', 'development'];\n\n/**\n * @type {Map<string, import('./types.ts').RequestAnswer>} specifier => filePath in the tgz\n */\nconst resolveCache = new Map();\n\nconst AT = '___AT___';\nconst fakeProtocol = 'repl://';\n\n/**\n *\n * @param {*} start packageName or packageName with file\n * @param {*} target file to resolve within the packageName\n * @returns\n */\nexport function resolvePath(start, target) {\n /**\n * How to make the whole package name look like one segment for URL\n */\n const base = start.replace(/^@([^/]+)\\/([^/]+)/, `${AT}$1___$2`);\n\n const url = new URL(target, fakeProtocol + fakeDomain + base);\n\n /**\n * href omits the protocol\n * (which is what we want)\n */\n return url.href\n .replace(fakeProtocol + fakeDomain, '')\n .replace(AT, '@')\n .replace('___', '/')\n .replace(/^\\//, './');\n}\n\n/**\n * @param {import('./types.ts').UntarredPackage} untarred\n * @param {Request} request\n * @returns {undefined | import('./types.ts').RequestAnswer} the in-tar path\n */\nexport function resolve(untarred, request) {\n let answer = undefined;\n\n const key = request.key;\n\n if (resolveCache.has(key)) {\n return resolveCache.get(key);\n }\n\n answer ||= fromImports(untarred, request, answer);\n answer ||= fromInternalImport(untarred, request, answer);\n answer ||= fromExportsString(untarred, request, answer);\n answer ||= fromExports(untarred, request, answer);\n answer ||= fromModule(untarred, request, answer);\n answer ||= fromBrowser(untarred, request, answer);\n answer ||= fromMain(untarred, request, answer);\n answer ||= fromIndex(untarred, request, answer);\n answer ||= fromFallback(untarred, request, answer);\n\n if (answer) {\n resolveCache.set(key, answer);\n }\n\n return answer;\n}\n\n/**\n * These are likely all private imports\n *\n * @param {import('./types.ts').UntarredPackage} untarred\n * @param {Request} request\n * @param {undefined | import('./types.ts').RequestAnswer} answer\n * @returns {undefined | import('./types.ts').RequestAnswer} the in-tar path\n */\nexport function fromInternalImport(untarred, request, answer) {\n if (answer) return answer;\n\n if (!request.from) return answer;\n\n const fromSpecifier = request.from;\n const answerFrom = resolve(untarred, fromSpecifier);\n\n if (!answerFrom) {\n printError(untarred, fromSpecifier, answer);\n\n return;\n }\n\n const inTarFile = resolvePath(\n fromSpecifier.name + '/' + answerFrom.inTarFile,\n request.to\n ).replace(new RegExp(`^${fromSpecifier.name}/`), '');\n const result = checkFile(untarred, inTarFile);\n\n if (result) {\n return createAnswer(result, request, 'internalImport');\n }\n\n // Internal imports should always exist, unless a package is just broken.\n printError(untarred, request, answer);\n}\n\n/**\n * @param {import('./types.ts').UntarredPackage} untarred\n * @param {Request} request\n * @param {undefined | import('./types.ts').RequestAnswer} answer\n * @returns {undefined | import('./types.ts').RequestAnswer} the in-tar path\n */\nfunction fromExports(untarred, request, answer) {\n if (answer) return answer;\n\n const exports = untarred.manifest.exports;\n\n if (!(typeof exports === 'object')) return answer;\n\n const foundArray = resolveExports(untarred.manifest, request.to, {\n conditions: CONDITIONS,\n });\n\n const found = foundArray?.map((f) => checkFile(untarred, f)).find(Boolean);\n\n if (found) {\n return createAnswer(found, request, 'exports');\n }\n}\n\n/**\n * @param {import('./types.ts').UntarredPackage} untarred\n * @param {Request} request\n * @param {undefined | import('./types.ts').RequestAnswer} answer\n * @returns {undefined | import('./types.ts').RequestAnswer} the in-tar path\n */\nexport function fromImports(untarred, request, answer) {\n if (answer) return answer;\n if (!request.to.startsWith('#')) return answer;\n\n const imports = untarred.manifest.imports;\n\n if (!(typeof imports === 'object')) return answer;\n\n const found = resolveImports({ content: untarred.manifest }, request.to, {\n conditions: CONDITIONS,\n });\n\n if (found) {\n return createAnswer(found.replace(/^\\.\\//, ''), request, 'imports');\n }\n}\n\n/**\n * @param {import('./types.ts').UntarredPackage} untarred\n * @param {Request} request\n * @param {undefined | import('./types.ts').RequestAnswer} answer\n * @returns {undefined | import('./types.ts').RequestAnswer} the in-tar path\n */\nfunction fromExportsString(untarred, request, answer) {\n if (answer) return answer;\n if (!hasExports(untarred)) return answer;\n\n // technically not legacy, but it's the same logic\n return checkLegacyEntry(untarred, request, 'exports');\n}\n\n/**\n * @param {import('./types.ts').UntarredPackage} untarred\n * @param {Request} request\n * @param {undefined | import('./types.ts').RequestAnswer} answer\n * @returns {undefined | import('./types.ts').RequestAnswer} the in-tar path\n */\nfunction fromModule(untarred, request, answer) {\n if (answer) return answer;\n if (hasExports(untarred)) return answer;\n\n return checkLegacyEntry(untarred, request, 'module');\n}\n\n/**\n * @param {import('./types.ts').UntarredPackage} untarred\n * @param {Request} request\n * @param {undefined | import('./types.ts').RequestAnswer} answer\n * @returns {undefined | import('./types.ts').RequestAnswer} the in-tar path\n */\nfunction fromBrowser(untarred, request, answer) {\n if (answer) return answer;\n if (hasExports(untarred)) return answer;\n\n return checkLegacyEntry(untarred, request, 'browser');\n}\n\n/**\n * @param {import('./types.ts').UntarredPackage} untarred\n * @param {Request} request\n * @param {undefined | import('./types.ts').RequestAnswer} answer\n * @returns {undefined | import('./types.ts').RequestAnswer} the in-tar path\n */\nfunction fromMain(untarred, request, answer) {\n if (answer) return answer;\n if (hasExports(untarred)) return answer;\n\n return checkLegacyEntry(untarred, request, 'main');\n}\n\n/**\n * @param {import('./types.ts').UntarredPackage} untarred\n * @param {Request} request\n * @param {string} entryName\n * @returns {undefined | import('./types.ts').RequestAnswer} the in-tar path\n */\nfunction checkLegacyEntry(untarred, request, entryName) {\n if (request.to !== '.') return;\n\n const filePath = untarred.manifest[/** @type {keyof typeof untarred.manifest} */ (entryName)];\n\n if (!filePath || typeof filePath !== 'string') return;\n\n const result = checkFile(untarred, filePath);\n\n if (result) {\n return createAnswer(result, request, entryName);\n }\n}\n\n/**\n * @param {import('./types.ts').UntarredPackage} untarred\n * @param {Request} request\n * @param {undefined | import('./types.ts').RequestAnswer} answer\n * @returns {undefined | import('./types.ts').RequestAnswer} the in-tar path\n */\nfunction fromIndex(untarred, request, answer) {\n if (answer) return answer;\n if (hasExports(untarred)) return answer;\n\n if (request.to === '.') {\n if (untarred.contents['index.js']) {\n return {\n inTarFile: 'index.js',\n ext: 'js',\n from: 'index',\n };\n }\n }\n}\n\n/**\n * @param {import('./types.ts').UntarredPackage} untarred\n * @param {Request} request\n * @param {undefined | import('./types.ts').RequestAnswer} answer\n * @returns {undefined | import('./types.ts').RequestAnswer} the in-tar path\n */\nfunction fromFallback(untarred, request, answer) {\n if (answer) return answer;\n\n const result = checkFile(untarred, request.to);\n\n if (result) {\n return createAnswer(result, request, 'fallback');\n }\n}\n\n/**\n *\n * @param {import('./types.ts').UntarredPackage} untarred\n * @param {string | undefined} filePath\n * @returns {string | undefined} the variant\n */\nfunction checkFile(untarred, filePath) {\n if (!filePath) return;\n\n for (const prefix of ['', 'pkg/']) {\n const path = prefix + filePath;\n const dotless = prefix + filePath.replace(/^\\.\\//, '');\n\n if (untarred.contents[path]) {\n return path;\n }\n\n if (untarred.contents[dotless]) {\n return dotless;\n }\n }\n}\n\n/**\n * @param {string} filePath\n */\nfunction extName(filePath) {\n return filePath.split('.').pop();\n}\n\n/**\n * @param {import('./types.ts').UntarredPackage} untarred\n */\nfunction hasExports(untarred) {\n return Boolean(untarred.manifest.exports);\n}\n\n/**\n * @param {string} forFile\n * @param {Request} request\n * @param {string} fromMethod\n */\nfunction createAnswer(forFile, request, fromMethod) {\n const ext = extName(forFile);\n\n assert(\n `All files must have an extension. This file (in ${request.name}) did not have an extension: ${forFile}`,\n ext\n );\n\n return {\n inTarFile: forFile,\n ext,\n from: fromMethod,\n };\n}\n\n/**\n * @param {import('./types.ts').UntarredPackage} untarred\n * @param {Request} request\n * @param {undefined | import('./types.ts').RequestAnswer} answer\n * @throws {Error}\n */\nexport function printError(untarred, request, answer) {\n const { name, exports, main, module, browser } = untarred.manifest;\n\n console.group(`${name} file info`);\n console.info(`${name} has these files: `, Object.keys(untarred.contents));\n console.info(`We searched for '${request.original}'`);\n console.info(`from: `, { exports, main, module, browser });\n console.info(`And found: `, answer);\n console.info(`The request was: `, request);\n console.groupEnd();\n\n // eslint-disable-next-line no-debugger\n debugger;\n throw new Error(`Could not find file for ${request.original}`);\n}\n","import { wrap } from 'comlink';\n\nimport { cache } from './cache.js';\nimport { Request } from './request.js';\nimport { printError, resolve } from './resolve.js';\nimport { assert, unzippedPrefix } from './utils.js';\n\nconst worker = new Worker(new URL('./tar-worker.js', import.meta.url), {\n name: 'Tar & NPM Downloader Worker',\n type: 'module',\n});\nconst com = wrap(worker);\n\n/**\n * @param {string} url request URL\n * @returns {Promise<undefined | { code: string, ext: string }>}\n */\nexport async function getFromTarball(url) {\n const key = url.replace(unzippedPrefix + '/', '');\n const request = cache.requestCache.get(key);\n\n assert(`Missing request for ${url}`, request);\n\n if (cache.fileCache.has(key)) {\n return cache.fileCache.get(key);\n }\n\n const data = await cache.cachedPromise(key, async () => {\n const untarred = await com.getTar(request.name, request.version);\n const answer = resolve(untarred, request);\n\n if (!answer) {\n throw new Error(`Could not find file for ${request.original}`);\n }\n\n return { answer, name: request.name, version: request.version };\n });\n\n const untarred = await com.getTar(request.name, request.version);\n\n const result = getFile(untarred, key, data.answer);\n\n assert(`Missing file for ${url}`, result);\n\n cache.fileCache.set(key, result);\n\n return result;\n}\n\n/**\n * @param {import('./types.ts').UntarredPackage} untarred\n * @param {string} key\n * @param {undefined | import('./types.ts').RequestAnswer} answer\n * @returns {undefined | { code: string, ext: string }}\n */\nfunction getFile(untarred, key, answer) {\n const request = Request.fromRequestId(key);\n\n if (!answer) {\n printError(untarred, request, answer);\n\n return;\n }\n\n const { inTarFile, ext } = answer;\n\n const code = untarred.contents[inTarFile]?.text;\n\n if (!code) {\n printError(untarred, request, answer);\n\n return;\n }\n\n return { code, ext };\n}\n","/**\n * @typedef {import(\"./types.ts\").Options} Options\n * @typedef {import('./types.ts').CompilerConfig} CompilerConfig\n */\n\nimport mime from 'mime/lite';\n\nimport { cache, secretKey } from './cache.js';\nimport { compilers } from './compilers.js';\nimport { STABLE_REFERENCE } from './es-module-shim.js';\nimport { getTarRequestId } from './request.js';\nimport { getFromTarball } from './tar.js';\nimport { assert, nextId, prefix_tgz, tgzPrefix, unzippedPrefix } from './utils.js';\n\nassert(`There is no document. repl-sdk is meant to be ran in a browser`, globalThis.document);\n\nexport const defaultFormats = Object.keys(compilers);\n\nexport const defaults = {\n formats: compilers,\n};\n\nexport class Compiler {\n /** @type {Options} */\n #options;\n\n /**\n * Options may be passed to the compiler to add to its behavior.\n * @param {Partial<Options>} options\n */\n constructor(options = defaults) {\n this.#options = Object.assign({}, defaults, options);\n\n STABLE_REFERENCE.resolve = this.#resolve;\n STABLE_REFERENCE.fetch = this.#fetch;\n\n window.addEventListener('unhandledrejection', this.#handleUnhandledRejection);\n }\n\n /**\n *\n * @param {HTMLElement} element\n * @param {any} options\n */\n async createEditor(element, { text, format, handleUpdate, extensions }) {\n // Only one instance is allowed\n return cache.cachedPromise('codemirror', async () => {\n const { buildCodemirror } = await import('./codemirror.js');\n\n return buildCodemirror({\n element,\n text,\n format,\n extensions,\n handleUpdate,\n getLang: async (format) => {\n const [lang, flavor] = format.split('|');\n\n assert(`Could not determine 'lang' from format: ${format}`, lang);\n\n const compiler = this.#resolveFormat(lang, flavor);\n const loadLang = compiler.codemirror?.lang;\n\n assert(\n `The compiler for '${format}' is missing its configuration for 'codemirror.lang'`,\n loadLang\n );\n\n return await loadLang();\n },\n getSupport: async (format) => {\n const [lang, flavor] = format.split('|');\n\n assert(`Could not determine 'lang' from format: ${format}`, lang);\n\n const compiler = this.#resolveFormat(lang, flavor);\n const loadSupport = compiler.codemirror.support;\n\n return await loadSupport?.();\n },\n });\n });\n }\n\n /**\n * @param {PromiseRejectionEvent} e\n */\n #handleUnhandledRejection = (e) => {\n let handled = false;\n\n for (const onUnhandled of this.#compilerOnUnhandled) {\n onUnhandled(e, (message) => {\n this.#announce('error', message);\n handled = true;\n });\n if (handled) break;\n }\n\n if (handled) return;\n\n this.#announce('error', e.reason);\n };\n\n /**\n * Order of preference\n * 1. manually resolved (from the caller)\n * 2. specified in the compiler config (to use CDN)\n * 3. download tarball from npm\n * or resolve from already downloaded tarball\n *\n * NOTE: when we return a new URL, we want to collapse the parentURI\n * so that we don't get compound query params in nested requests.\n *\n * @param {string} id\n * @param {string} parentUrl\n * @param {(id: string, parentUrl: string) => string} resolve\n * @returns {string}\n */\n #resolve = (id, parentUrl, resolve) => {\n /**\n * We have to strip the query params because our manual resolving\n * doesn't use them -- but CDNs do\n */\n const vanilla = deCDN(id);\n\n this.#announce('info', `Loading ${vanilla}`);\n this.#log('[resolve]', id, 'from', parentUrl);\n\n if (this.#options.resolve?.[vanilla]) {\n this.#log(`[resolve] ${vanilla} found in manually specified resolver`);\n\n return `manual:${vanilla}`;\n }\n\n for (const compilerResolve of this.#compilerResolvers) {\n const result = compilerResolve(vanilla);\n\n if (result) {\n this.#log(`[resolve] ${vanilla} found in compiler config at ${result}.`);\n\n if (typeof result === 'function') {\n return `configured:${vanilla}`;\n }\n\n return result;\n }\n }\n\n if (parentUrl.startsWith(tgzPrefix) && (id.startsWith('.') || id.startsWith('#'))) {\n const answer = getTarRequestId({ to: id, from: parentUrl });\n\n return answer;\n }\n\n if (id.startsWith('https://')) return resolve(id, parentUrl);\n if (id.startsWith('blob:')) return resolve(id, parentUrl);\n if (id.startsWith('.')) return resolve(id, parentUrl);\n if (parentUrl.startsWith('https://') && parentUrl !== location.href)\n return resolve(id, parentUrl);\n if (parentUrl.startsWith('https://') && parentUrl.startsWith('/'))\n return resolve(id, parentUrl);\n\n if (id.startsWith('node:')) {\n this.#log(`Is known node module: ${id}. Grabbing polyfill`);\n\n if (id === 'node:process') return prefix_tgz(`process`);\n if (id === 'node:buffer') return prefix_tgz(`buffer`);\n if (id === 'node:events') return prefix_tgz(`events`);\n if (id === 'node:path') return prefix_tgz(`path-browser`);\n if (id === 'node:util') return prefix_tgz(`util-browser`);\n if (id === 'node:crypto') return prefix_tgz(`crypto-browserify`);\n if (id === 'node:stream') return prefix_tgz(`stream-browserify`);\n if (id === 'node:fs') return prefix_tgz(`browserify-fs`);\n }\n\n this.#log(`[resolve] ${id} not found, deferring to npmjs.com's provided tarball`);\n\n return getTarRequestId({ to: id, from: parentUrl });\n };\n /**\n * @param {string} url\n * @param {RequestInit} options\n * @returns {Promise<Response>}\n */\n #fetch = async (url, options) => {\n const mimeType = mime.getType(url) ?? 'application/javascript';\n\n this.#log(`[fetch] attempting to fetch: ${url}. Assuming ${mimeType}`);\n\n if (url.startsWith('manual:')) {\n const name = url.replace(/^manual:/, '');\n\n this.#log('[fetch] resolved url in manually specified resolver', url);\n\n const result = await this.#resolveManually(name);\n\n assert(`Failed to resolve ${name}`, result);\n\n const blobContent =\n `const mod = window[Symbol.for('${secretKey}')].resolves?.['${name}'];\\n` +\n `\\n\\n` +\n `if (!mod) { throw new Error('Could not resolve \\`${name}\\`. Does the module exist? ( checked ${url} )') }` +\n `\\n\\n` +\n /**\n * This is semi-trying to polyfill modules\n * that aren't proper ESM. very annoying.\n */\n `${Object.keys(result)\n .map((exportName) => {\n if (exportName === 'default') {\n return `export default mod.default ?? mod;`;\n }\n\n return `export const ${exportName} = mod.${exportName};`;\n })\n .join('\\n')}\n `;\n\n const blob = new Blob(Array.from(blobContent), { type: mimeType });\n\n this.#log(\n `[fetch] returning blob mapping to manually resolved import for ${name}`\n // blobContent\n );\n\n this.#announce('info', `Loaded ${name}`);\n\n return new Response(blob);\n }\n\n if (url.startsWith('configured:')) {\n const name = url.replace(/^configured:/, '');\n\n this.#log(\n '[fetch] resolved url in a preconfigured (in the compiler config) specified resolver',\n url\n );\n\n let result;\n\n /**\n * Unlike the manual resolver, these are just functions per\n * id, they represent a way to get a module\n */\n for (const compilerResolve of this.#compilerResolvers) {\n const fn = compilerResolve(name);\n\n if (fn) {\n this.#log(`[fetch] ${name} found in compiler config at ${result}.`);\n\n result = await fn();\n }\n }\n\n assert(`Failed to resolve ${name}`, result);\n cache.resolves[name] = result;\n\n const blobContent =\n `const mod = window[Symbol.for('${secretKey}')].resolves?.['${name}'];\\n` +\n `\\n\\n` +\n `if (!mod) { throw new Error('Could not resolve \\`${name}\\`. Does the module exist? ( checked ${url} )') }` +\n `\\n\\n` +\n /**\n * This is semi-trying to polyfill modules\n * that aren't proper ESM. very annoying.\n */\n `${Object.keys(result)\n .map((exportName) => {\n if (exportName === 'default') {\n return `export default mod.default ?? mod;`;\n }\n\n return `export const ${exportName} = mod.${exportName};`;\n })\n .join('\\n')}\n `;\n\n const blob = new Blob(Array.from(blobContent), { type: mimeType });\n\n this.#log(\n `[fetch] returning blob mapping to configured resolved import for ${name}`\n // blobContent\n );\n\n this.#announce('info', `Loaded ${name}`);\n\n return new Response(blob);\n }\n\n if (url.startsWith(unzippedPrefix)) {\n this.#log('[fetch] resolved url via tgz resolver', url, options);\n\n const tarInfo = await getFromTarball(url);\n\n assert(`Could not find file for ${url}`, tarInfo);\n\n const { code, ext } = tarInfo;\n\n /**\n * We don't know if this code is completely ready to run in the browser yet, so we might need to run in through the compiler again\n */\n const file = await this.#postProcess(code, ext);\n const type = mime.getType(ext);\n\n return new Response(new Blob([file], { type: type ?? 'application/javascript' }));\n }\n\n if (url.startsWith('https://')) {\n return fetch(url, options);\n }\n\n this.#log('[fetch] fetching url', url, options);\n\n const response = await fetch(url, options);\n\n if (!response.ok) return response;\n\n const source = await response.text();\n\n this.#announce('info', `Loaded ${url}`);\n\n return new Response(new Blob([source], { type: 'application/javascript' }));\n };\n\n /**\n * NOTE: this does not resolve compilers that are not loaded yet.\n * So there would be a bit of a race condition here if different compilers\n * were to have incompatible post-processing handlers.\n *\n * @param {string} text\n * @param {string} ext\n */\n async #postProcess(text, ext) {\n let code = text;\n\n for (const compiler of this.#compilers) {\n if (compiler.handlers?.[ext]) {\n code = await compiler.handlers[ext](code);\n }\n }\n\n return code;\n }\n\n /**\n * @param {string} format\n * @param {string} text\n * @param {{ fileName?: string, flavor?: string, [key: string]: unknown }} [ options ]\n * @returns {Promise<{ element: HTMLElement, destroy: () => void }>}\n */\n async compile(format, text, options = {}) {\n this.#announce('info', `Compiling ${format}`);\n\n try {\n return await this.#compile(format, text, options);\n } catch (e) {\n // for on.log usage\n const message = e instanceof Error ? e.message : e;\n\n this.#announce('error', String(message));\n\n // Don't hide errors!\n this.#error(e);\n throw e;\n }\n }\n\n /**\n * @param {string} format\n * @param {string} text\n * @param {{ fileName?: string, flavor?: string, [key: string]: unknown }} [ options ]\n * @returns {Promise<{ element: HTMLElement, destroy: () => void }>}\n */\n async #compile(format, text, options) {\n this.#log('[compile] idempotently installing es-module-shim');\n\n // @ts-ignore\n await import('es-module-shims');\n\n const opts = { ...options };\n\n opts.fileName ||= `dynamic.${format}`;\n\n this.#log('[compile] compiling');\n\n const compiler = await this.#getCompiler(format, opts.flavor);\n const compiled = await compiler.compile(text, opts);\n\n let compiledText = 'export default \"failed to compile\"';\n let extras = { compiled: '' };\n\n if (typeof compiled === 'string') {\n compiledText = compiled;\n extras = { compiled: compiledText };\n } else if (typeof compiled.compiled === 'string') {\n const { compiled: text } = compiled;\n\n compiledText = text;\n extras = compiled;\n } else {\n /**\n * the compiler didn't return text, so we can skip import shimming\n */\n let value = compiled;\n\n if ('compiled' in compiled) {\n value = compiled.compiled;\n extras = compiled;\n }\n\n return this.#render(compiler, value, {\n ...extras,\n compiled: value,\n });\n }\n\n const asBlobUrl = textToBlobUrl(compiledText);\n\n // @ts-ignore\n const { default: defaultExport } = await shimmedImport(/* @vite-ignore */ asBlobUrl);\n\n this.#log('[compile] preparing to render', defaultExport, extras);\n\n return this.#render(compiler, defaultExport, extras);\n }\n\n #compilerCache = new WeakMap();\n #compilers = new Set();\n #compilerResolvers = new Set();\n /**\n * @type {Set<(e: PromiseRejectionEvent, handle: (message: string) => void) => void>}\n */\n #compilerOnUnhandled = new Set();\n\n /**\n * @param {string} format\n * @param {string | undefined} flavor\n */\n async #getCompiler(format, flavor) {\n const config = this.#resolveFormat(format, flavor);\n\n if (this.#compilerCache.has(config)) {\n return this.#compilerCache.get(config);\n }\n\n if (config.resolve) {\n this.#compilerResolvers.add(config.resolve);\n }\n\n if (config.onUnhandled) {\n this.#compilerOnUnhandled.add(config.onUnhandled);\n }\n\n const options = this.optionsFor(format, flavor);\n const compiler = await config.compiler(options, this.#nestedPublicAPI);\n\n this.#compilerCache.set(config, compiler);\n this.#compilers.add(compiler);\n\n return compiler;\n }\n\n /**\n * @param {string} format\n * @param {string | undefined} flavor\n * @returns {import('./types').CompilerConfig}\n */\n #resolveFormat(format, flavor) {\n let config = this.#options.formats[format];\n\n assert(\n `${format} is not a configured format / extension. ` +\n `The currently configured formats are ${Object.keys(this.#options.formats).join(', ')}`,\n config\n );\n\n if (flavor && flavor in config) {\n config = /** @type {{ [flavor: string]: CompilerConfig}} */ (config)[flavor];\n }\n\n assert(\n `The config for ${format}${flavor ? ` (using flavor ${flavor})` : ''} is missing the 'compiler' function. It had keys: ${Object.keys(/** @type {any} */ (config))}. If this is a language with multiple flavors, make sure you specify the flavor.`,\n 'compiler' in /** @type {any} */ (config)\n );\n\n return /** @type {import('./types').CompilerConfig} */ (config);\n }\n\n /**\n * @param {string} format\n * @param {string | undefined} flavor\n * @returns {{ [key: string]: unknown }}\n */\n #resolveUserOptions(format, flavor) {\n let config = /** @type {{ [key: string]: unknown }} */ (this.#options.options?.[format]);\n\n if (!config) return {};\n\n if (flavor && flavor in config) {\n config = /** @type {{ [key: string]: unknown }} */ (config[flavor]);\n }\n\n return config ?? {};\n }\n\n /**\n * @param {import('./types.ts').Compiler} compiler\n * @param {string} whatToRender\n * @param {{ compiled: string } & Record<string, unknown>} extras\n * @returns {Promise<{ element: HTMLElement, destroy: () => void }>}\n */\n async #render(compiler, whatToRender, extras) {\n this.#announce('info', 'Rendering');\n\n const div = this.#createDiv();\n\n assert(`Cannot render falsey values. Did compilation succeed?`, whatToRender);\n\n const destroy = await compiler.render(div, whatToRender, extras, this.#nestedPublicAPI);\n\n // Wait for render\n await new Promise((resolve) => requestAnimationFrame(resolve));\n\n return {\n element: div,\n destroy: () => {\n if (destroy) {\n return destroy();\n }\n },\n };\n }\n\n /**\n * @param {string} format\n * @param {string | undefined} flavor\n */\n optionsFor = (format, flavor) => {\n const { needsLiveMeta } = this.#resolveFormat(format, flavor);\n\n return {\n needsLiveMeta: /* @type {boolean | undefined} */ needsLiveMeta ?? true,\n versions: this.#options.versions ?? {},\n ...(this.#resolveUserOptions(format, flavor) ?? {}),\n };\n };\n\n static clearCache() {\n cache.clear();\n }\n\n /**\n * @param {string} name\n * @param {(name?: string) => Promise<undefined | object>} [fallback]\n * @returns {Promise<undefined | object>}\n */\n #resolveManually = async (name, fallback) => {\n const existing = cache.resolves[name];\n\n if (existing) {\n this.#log('[#resolveManually]', name, 'already resolved');\n\n return existing;\n }\n\n let result =\n /** @type {object | undefined} */\n (await this.#options.resolve?.[name]);\n\n if (!result) {\n this.#log(`[#resolveManually] Could not resolve ${name}`);\n }\n\n if (typeof result === 'function') {\n if (!result) {\n this.#log(`[#resolveManually] Value for ${name} is a function. Invoking.`);\n }\n\n result = await result();\n }\n\n /**\n * Compiler-implementation-provided fallback takes precidence over\n * going through the shimmedImport / tgz / npm fallback.\n */\n if (fallback) {\n result = await fallback(name);\n }\n\n cache.resolves[name] ||= await result;\n\n return result;\n };\n\n /**\n * @type {import('./types.ts').PublicMethods}\n */\n #nestedPublicAPI = {\n /**\n * @param {'error' | 'info'} type\n * @param {string} message\n * @returns {void}\n */\n announce: (type, message) => this.#announce(type, message),\n\n /**\n * @param {string} name\n * @param {(name?: string) => Promise<object | undefined>} [fallback]\n * @returns {Promise<object | undefined>}\n */\n tryResolve: async (name, fallback) => {\n const existing = await this.#resolveManually(name, fallback);\n\n if (existing) {\n this.#log(name, 'already resolved');\n\n return existing;\n }\n\n // @ts-ignore\n const shimmed = await shimmedImport(/* vite-ignore */ name);\n\n return shimmed;\n },\n /**\n * @param {string[]} names\n * @param {(name?: string) => Promise<unknown>} [fallback]\n * @returns {Promise<unknown[]>}\n */\n tryResolveAll: async (names, fallback) => {\n const results = await Promise.all(\n names.map((name) => {\n return this.#nestedPublicAPI.tryResolve(name);\n })\n );\n\n if (fallback) {\n /** @type {Record<string, Promise<unknown>>} */\n const morePromises = {};\n\n for (let i = 0; i < results.length; i++) {\n const result = results[i];\n const name = names[i];\n\n if (!result) {\n this.#warn(`Could not load ${name}. Trying fallback.`);\n\n morePromises[i] = fallback(name);\n }\n }\n\n await Promise.all(Object.values(morePromises));\n\n for (let i = 0; i < results.length; i++) {\n let result = results[i];\n\n if (!result && morePromises[i]) {\n result = morePromises[i];\n }\n }\n }\n\n return results;\n },\n /**\n * @param {Parameters<Compiler['compile']>} args\n */\n compile: (...args) => this.compile(...args),\n /**\n * @param {Parameters<Compiler['optionsFor']>} args\n */\n optionsFor: (...args) => this.optionsFor(...args),\n\n canCompile: (format, flavor) => {\n let config = this.#options.formats[format];\n\n if (!config) {\n return {\n result: false,\n reason:\n `${format} is not a configured format / extension. ` +\n `The currently configured formats are ${Object.keys(this.#options.formats).join(', ')}`,\n };\n }\n\n if (flavor && flavor in config) {\n config = /** @type {{ [flavor: string]: CompilerConfig}} */ (config)[flavor];\n }\n\n if (!config) {\n return {\n result: false,\n reason:\n `${format} for ${flavor} is not a configured format / extension. ` +\n `The currently configured formats are ${Object.keys(this.#options.formats).join(', ')}`,\n };\n }\n\n if ('compiler' in config) {\n return { result: true };\n }\n\n return {\n result: false,\n reason: `The config for ${format}${flavor ? ` (using flavor ${flavor})` : ''} is missing the 'compiler' function. It had keys: ${Object.keys(config)}. If this is a language with multiple flavors, make sure you specify the flavor.`,\n };\n },\n\n getCompiler: (format, flavor) => this.#getCompiler(format, flavor),\n\n getAllowedFormats: () => Object.keys(this.#options.formats),\n\n getFlavorsFor: (format) => {\n const config = this.#options.formats[format];\n\n if (!config) return [];\n if (typeof config === 'function') return [];\n\n if (typeof config === 'object') {\n return Object.keys(config);\n }\n\n return [];\n },\n };\n\n #createDiv() {\n const div = document.createElement('div');\n\n div.setAttribute('data-repl-output', '');\n div.id = nextId();\n\n return div;\n }\n\n /**\n * @param {'error' | 'info'} type\n * @param {string} message\n */\n #announce(type, message) {\n if (!this.#options?.on?.log) return;\n\n this.#options.on.log(type, message);\n }\n\n /**\n * @param {Parameters<typeof console.debug>} args\n */\n #log(...args) {\n if (this.#options.logging) {\n console.debug(...args);\n }\n }\n\n /**\n * @param {Parameters<typeof console.warn>} args\n */\n #warn(...args) {\n if (this.#options.logging) {\n console.warn(...args);\n }\n }\n\n /**\n * @param {Parameters<typeof console.error>} args\n */\n #error(...args) {\n if (this.#options.logging) {\n console.error(...args);\n }\n }\n\n /**\n * @param {string} message\n */\n announceError(message) {\n this.#announce('error', message);\n }\n}\n\n/**\n * @param {string} text\n */\nfunction textToBlobUrl(text) {\n const blob = new Blob([text], { type: 'text/javascript' });\n\n const blobUrl = URL.createObjectURL(blob);\n\n return blobUrl;\n}\n\n/**\n * This should have happened at the beginning of the compile function.\n * If this error is ever thrown, something goofy has happened, and it would be very unexpected.\n\n * @param {...any[]} args\n */\nfunction shimmedImport(...args) {\n if (!globalThis.importShim) {\n throw new Error(`Could not find importShim. Has the REPL been set up correctly?`);\n }\n\n // @ts-ignore\n return globalThis.importShim(/* @vite-ignore */ ...args);\n}\n\n/**\n * CDNs will pre-process every file to make sure every import goes through them.\n * We don't want this.\n *\n * @param {string} id\n * @returns {string}\n */\nfunction deCDN(id) {\n const noQPs = id.split('?')[0];\n\n return /** @type {string} */ (noQPs);\n}\n"],"names":["standardTypes","resolve","gjs","hbs","isPreview","isBelow","i","mermaid","svelte","vue","ember.hbs","react.jsx","exports","resolveExports","resolveImports","untarred","format","onUnhandled","text"],"mappings":"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","x_google_ignoreList":[0,1,2]}
|