@orsetra/wiki-ui 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +196 -0
- package/dist/apl-B2DGVGxc.mjs +77 -0
- package/dist/apl-B2DGVGxc.mjs.map +1 -0
- package/dist/apl-M-DNMvvR.js +2 -0
- package/dist/apl-M-DNMvvR.js.map +1 -0
- package/dist/asciiarmor-2LVJmxlE.mjs +35 -0
- package/dist/asciiarmor-2LVJmxlE.mjs.map +1 -0
- package/dist/asciiarmor-BMx3XVjX.js +2 -0
- package/dist/asciiarmor-BMx3XVjX.js.map +1 -0
- package/dist/asn1-OOsVM4yU.js +2 -0
- package/dist/asn1-OOsVM4yU.js.map +1 -0
- package/dist/asn1-jKiBa2Ya.mjs +96 -0
- package/dist/asn1-jKiBa2Ya.mjs.map +1 -0
- package/dist/asterisk-B1QUaW1C.js +2 -0
- package/dist/asterisk-B1QUaW1C.js.map +1 -0
- package/dist/asterisk-DS281yxp.mjs +272 -0
- package/dist/asterisk-DS281yxp.mjs.map +1 -0
- package/dist/brainfuck-BjUlYKdF.js +2 -0
- package/dist/brainfuck-BjUlYKdF.js.map +1 -0
- package/dist/brainfuck-C_p9pTT8.mjs +35 -0
- package/dist/brainfuck-C_p9pTT8.mjs.map +1 -0
- package/dist/clike-BMALKCNj.mjs +621 -0
- package/dist/clike-BMALKCNj.mjs.map +1 -0
- package/dist/clike-D0cgxzLA.js +2 -0
- package/dist/clike-D0cgxzLA.js.map +1 -0
- package/dist/clojure-Ap_IXD2I.js +2 -0
- package/dist/clojure-Ap_IXD2I.js.map +1 -0
- package/dist/clojure-CCKyeQKf.mjs +801 -0
- package/dist/clojure-CCKyeQKf.mjs.map +1 -0
- package/dist/cmake-C4D5_VmS.js +2 -0
- package/dist/cmake-C4D5_VmS.js.map +1 -0
- package/dist/cmake-CuaCgAKt.mjs +29 -0
- package/dist/cmake-CuaCgAKt.mjs.map +1 -0
- package/dist/cobol-BlTKFDRj.mjs +73 -0
- package/dist/cobol-BlTKFDRj.mjs.map +1 -0
- package/dist/cobol-Du-cT2hr.js +2 -0
- package/dist/cobol-Du-cT2hr.js.map +1 -0
- package/dist/coffeescript-BVCvwO8I.mjs +180 -0
- package/dist/coffeescript-BVCvwO8I.mjs.map +1 -0
- package/dist/coffeescript-DDFAj2ea.js +2 -0
- package/dist/coffeescript-DDFAj2ea.js.map +1 -0
- package/dist/commonlisp-CXBBRCTx.js +2 -0
- package/dist/commonlisp-CXBBRCTx.js.map +1 -0
- package/dist/commonlisp-D_kxz07b.mjs +76 -0
- package/dist/commonlisp-D_kxz07b.mjs.map +1 -0
- package/dist/components/MarkdownEditor.d.ts +8 -0
- package/dist/components/MarkdownViewer.d.ts +8 -0
- package/dist/components/Modal.d.ts +11 -0
- package/dist/components/Sidebar.d.ts +11 -0
- package/dist/components/Wiki.d.ts +4 -0
- package/dist/crystal-D309uH6_.mjs +218 -0
- package/dist/crystal-D309uH6_.mjs.map +1 -0
- package/dist/crystal-DAFWRDbh.js +2 -0
- package/dist/crystal-DAFWRDbh.js.map +1 -0
- package/dist/css-BkF-NPzE.mjs +1554 -0
- package/dist/css-BkF-NPzE.mjs.map +1 -0
- package/dist/css-DzFJyRJ8.js +2 -0
- package/dist/css-DzFJyRJ8.js.map +1 -0
- package/dist/cypher-BMq4Fwjl.mjs +69 -0
- package/dist/cypher-BMq4Fwjl.mjs.map +1 -0
- package/dist/cypher-BN0-oCze.js +2 -0
- package/dist/cypher-BN0-oCze.js.map +1 -0
- package/dist/d-BHsqGcfm.js +2 -0
- package/dist/d-BHsqGcfm.js.map +1 -0
- package/dist/d-BZcgY6La.mjs +128 -0
- package/dist/d-BZcgY6La.mjs.map +1 -0
- package/dist/diff-CemTHKfk.js +2 -0
- package/dist/diff-CemTHKfk.js.map +1 -0
- package/dist/diff-Cg9d_RX2.mjs +19 -0
- package/dist/diff-Cg9d_RX2.mjs.map +1 -0
- package/dist/dockerfile-BmicwmnY.mjs +195 -0
- package/dist/dockerfile-BmicwmnY.mjs.map +1 -0
- package/dist/dockerfile-BwZiqVB0.js +2 -0
- package/dist/dockerfile-BwZiqVB0.js.map +1 -0
- package/dist/dtd-ChoVQPwv.js +2 -0
- package/dist/dtd-ChoVQPwv.js.map +1 -0
- package/dist/dtd-CtLokQ-U.mjs +85 -0
- package/dist/dtd-CtLokQ-U.mjs.map +1 -0
- package/dist/dylan-QYeExnWK.mjs +235 -0
- package/dist/dylan-QYeExnWK.mjs.map +1 -0
- package/dist/dylan-apTQIgUA.js +2 -0
- package/dist/dylan-apTQIgUA.js.map +1 -0
- package/dist/ebnf-LYmLy17h.js +2 -0
- package/dist/ebnf-LYmLy17h.js.map +1 -0
- package/dist/ebnf-Xa2PN7SI.mjs +78 -0
- package/dist/ebnf-Xa2PN7SI.mjs.map +1 -0
- package/dist/ecl-C7WNQq7-.js +2 -0
- package/dist/ecl-C7WNQq7-.js.map +1 -0
- package/dist/ecl-CiXN-g_D.mjs +122 -0
- package/dist/ecl-CiXN-g_D.mjs.map +1 -0
- package/dist/eiffel-BJThA8RG.js +2 -0
- package/dist/eiffel-BJThA8RG.js.map +1 -0
- package/dist/eiffel-yQhjl4T1.mjs +111 -0
- package/dist/eiffel-yQhjl4T1.mjs.map +1 -0
- package/dist/elm-CNT9vbN0.mjs +109 -0
- package/dist/elm-CNT9vbN0.mjs.map +1 -0
- package/dist/elm-CcXP9T36.js +2 -0
- package/dist/elm-CcXP9T36.js.map +1 -0
- package/dist/erlang-B6mpcObI.js +2 -0
- package/dist/erlang-B6mpcObI.js.map +1 -0
- package/dist/erlang-CFOYdy9e.mjs +488 -0
- package/dist/erlang-CFOYdy9e.mjs.map +1 -0
- package/dist/factor-CYi8BYN3.mjs +66 -0
- package/dist/factor-CYi8BYN3.mjs.map +1 -0
- package/dist/factor-InghB-ob.js +2 -0
- package/dist/factor-InghB-ob.js.map +1 -0
- package/dist/fcl-BzAKklXo.js +2 -0
- package/dist/fcl-BzAKklXo.js.map +1 -0
- package/dist/fcl-CPC2WYrI.mjs +104 -0
- package/dist/fcl-CPC2WYrI.mjs.map +1 -0
- package/dist/forth-BmxRyE9S.mjs +61 -0
- package/dist/forth-BmxRyE9S.mjs.map +1 -0
- package/dist/forth-CPAzyZ_n.js +2 -0
- package/dist/forth-CPAzyZ_n.js.map +1 -0
- package/dist/fortran-9bvPyrOW.mjs +443 -0
- package/dist/fortran-9bvPyrOW.mjs.map +1 -0
- package/dist/fortran-DHiTlGV1.js +2 -0
- package/dist/fortran-DHiTlGV1.js.map +1 -0
- package/dist/gas-BiPtGF2E.js +2 -0
- package/dist/gas-BiPtGF2E.js.map +1 -0
- package/dist/gas-cpmYfFX2.mjs +184 -0
- package/dist/gas-cpmYfFX2.mjs.map +1 -0
- package/dist/gherkin-CJuwpceU.mjs +35 -0
- package/dist/gherkin-CJuwpceU.mjs.map +1 -0
- package/dist/gherkin-Djo7Y51D.js +2 -0
- package/dist/gherkin-Djo7Y51D.js.map +1 -0
- package/dist/groovy-BMVITiCm.js +2 -0
- package/dist/groovy-BMVITiCm.js.map +1 -0
- package/dist/groovy-DZeT_VM-.mjs +147 -0
- package/dist/groovy-DZeT_VM-.mjs.map +1 -0
- package/dist/haskell-Bvt3Qq1t.mjs +376 -0
- package/dist/haskell-Bvt3Qq1t.mjs.map +1 -0
- package/dist/haskell-CngODaW-.js +2 -0
- package/dist/haskell-CngODaW-.js.map +1 -0
- package/dist/haxe-70NVW1pR.mjs +360 -0
- package/dist/haxe-70NVW1pR.mjs.map +1 -0
- package/dist/haxe-Dyk-piTh.js +2 -0
- package/dist/haxe-Dyk-piTh.js.map +1 -0
- package/dist/http-BkLifcnL.js +2 -0
- package/dist/http-BkLifcnL.js.map +1 -0
- package/dist/http-D9LttvKF.mjs +45 -0
- package/dist/http-D9LttvKF.mjs.map +1 -0
- package/dist/idl-B6TRFYjl.mjs +948 -0
- package/dist/idl-B6TRFYjl.mjs.map +1 -0
- package/dist/idl-FmHDmsE-.js +2 -0
- package/dist/idl-FmHDmsE-.js.map +1 -0
- package/dist/index-5NQ_GRzk.mjs +269 -0
- package/dist/index-5NQ_GRzk.mjs.map +1 -0
- package/dist/index-B44LK8Ij.js +2 -0
- package/dist/index-B44LK8Ij.js.map +1 -0
- package/dist/index-BBWPLWCQ.mjs +94 -0
- package/dist/index-BBWPLWCQ.mjs.map +1 -0
- package/dist/index-BEe-FCJC.js +4 -0
- package/dist/index-BEe-FCJC.js.map +1 -0
- package/dist/index-BITH_pLG.mjs +289 -0
- package/dist/index-BITH_pLG.mjs.map +1 -0
- package/dist/index-BMVYCl6V.js +3 -0
- package/dist/index-BMVYCl6V.js.map +1 -0
- package/dist/index-BWOhwi7O.mjs +250 -0
- package/dist/index-BWOhwi7O.mjs.map +1 -0
- package/dist/index-BXHxjBZn.js +2 -0
- package/dist/index-BXHxjBZn.js.map +1 -0
- package/dist/index-BZzC2wSb.js +2 -0
- package/dist/index-BZzC2wSb.js.map +1 -0
- package/dist/index-BfsL370f.js +132 -0
- package/dist/index-BfsL370f.js.map +1 -0
- package/dist/index-BrqlmrLi.js +2 -0
- package/dist/index-BrqlmrLi.js.map +1 -0
- package/dist/index-Bu79INFX.mjs +59 -0
- package/dist/index-Bu79INFX.mjs.map +1 -0
- package/dist/index-Bv0a9ZLs.js +2 -0
- package/dist/index-Bv0a9ZLs.js.map +1 -0
- package/dist/index-BvPdsD4p.js +2 -0
- package/dist/index-BvPdsD4p.js.map +1 -0
- package/dist/index-CE74di9B.js +2 -0
- package/dist/index-CE74di9B.js.map +1 -0
- package/dist/index-CJjawP4l.mjs +612 -0
- package/dist/index-CJjawP4l.mjs.map +1 -0
- package/dist/index-Ce9BFvqJ.js +2 -0
- package/dist/index-Ce9BFvqJ.js.map +1 -0
- package/dist/index-CtmFQJ3k.mjs +342 -0
- package/dist/index-CtmFQJ3k.mjs.map +1 -0
- package/dist/index-DDqdUdVS.mjs +138 -0
- package/dist/index-DDqdUdVS.mjs.map +1 -0
- package/dist/index-DHfWY4nC.js +2 -0
- package/dist/index-DHfWY4nC.js.map +1 -0
- package/dist/index-DV85ftYm.js +8 -0
- package/dist/index-DV85ftYm.js.map +1 -0
- package/dist/index-DYikJvrj.js +2 -0
- package/dist/index-DYikJvrj.js.map +1 -0
- package/dist/index-Dd5okOPF.mjs +135 -0
- package/dist/index-Dd5okOPF.mjs.map +1 -0
- package/dist/index-De3EaYep.js +2 -0
- package/dist/index-De3EaYep.js.map +1 -0
- package/dist/index-Dgfd7uDt.mjs +72 -0
- package/dist/index-Dgfd7uDt.mjs.map +1 -0
- package/dist/index-DnpLQHc8.mjs +157 -0
- package/dist/index-DnpLQHc8.mjs.map +1 -0
- package/dist/index-Dr0ZLr_9.mjs +301 -0
- package/dist/index-Dr0ZLr_9.mjs.map +1 -0
- package/dist/index-DtlFhA0P.mjs +565 -0
- package/dist/index-DtlFhA0P.mjs.map +1 -0
- package/dist/index-DzD8HqGh.mjs +309 -0
- package/dist/index-DzD8HqGh.mjs.map +1 -0
- package/dist/index-IsoI5fWK.js +2 -0
- package/dist/index-IsoI5fWK.js.map +1 -0
- package/dist/index-N7O8LN7P.mjs +77654 -0
- package/dist/index-N7O8LN7P.mjs.map +1 -0
- package/dist/index-X1_65Wm6.js +2 -0
- package/dist/index-X1_65Wm6.js.map +1 -0
- package/dist/index-aCtul_CH.mjs +99 -0
- package/dist/index-aCtul_CH.mjs.map +1 -0
- package/dist/index-yAkuheO7.mjs +76 -0
- package/dist/index-yAkuheO7.mjs.map +1 -0
- package/dist/index.cjs.js +2 -0
- package/dist/index.cjs.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.esm.js +10 -0
- package/dist/index.esm.js.map +1 -0
- package/dist/javascript-C2yteZeJ.mjs +692 -0
- package/dist/javascript-C2yteZeJ.mjs.map +1 -0
- package/dist/javascript-DngSGg_0.js +2 -0
- package/dist/javascript-DngSGg_0.js.map +1 -0
- package/dist/jinja2-DnB6dQmV.mjs +155 -0
- package/dist/jinja2-DnB6dQmV.mjs.map +1 -0
- package/dist/jinja2-wbVbDTNi.js +2 -0
- package/dist/jinja2-wbVbDTNi.js.map +1 -0
- package/dist/julia-DA67Qw9E.js +2 -0
- package/dist/julia-DA67Qw9E.js.map +1 -0
- package/dist/julia-DpvXAuO6.mjs +242 -0
- package/dist/julia-DpvXAuO6.mjs.map +1 -0
- package/dist/livescript-Bg3URadp.js +2 -0
- package/dist/livescript-Bg3URadp.js.map +1 -0
- package/dist/livescript-CanGTf8u.mjs +273 -0
- package/dist/livescript-CanGTf8u.mjs.map +1 -0
- package/dist/lua-CIsxjGwi.js +2 -0
- package/dist/lua-CIsxjGwi.js.map +1 -0
- package/dist/lua-XplVlWi_.mjs +218 -0
- package/dist/lua-XplVlWi_.mjs.map +1 -0
- package/dist/mathematica-BG089QIc.js +2 -0
- package/dist/mathematica-BG089QIc.js.map +1 -0
- package/dist/mathematica-jaRHnSxC.mjs +36 -0
- package/dist/mathematica-jaRHnSxC.mjs.map +1 -0
- package/dist/mbox-BctzC1hL.mjs +77 -0
- package/dist/mbox-BctzC1hL.mjs.map +1 -0
- package/dist/mbox-CySolFFZ.js +2 -0
- package/dist/mbox-CySolFFZ.js.map +1 -0
- package/dist/mirc-BfqEffzk.js +2 -0
- package/dist/mirc-BfqEffzk.js.map +1 -0
- package/dist/mirc-CFBPAOaF.mjs +73 -0
- package/dist/mirc-CFBPAOaF.mjs.map +1 -0
- package/dist/mllike-BSnXJBGA.mjs +273 -0
- package/dist/mllike-BSnXJBGA.mjs.map +1 -0
- package/dist/mllike-QUjwI6zq.js +2 -0
- package/dist/mllike-QUjwI6zq.js.map +1 -0
- package/dist/modelica-B6Zhcb-M.js +2 -0
- package/dist/modelica-B6Zhcb-M.js.map +1 -0
- package/dist/modelica-vUgVs--1.mjs +94 -0
- package/dist/modelica-vUgVs--1.mjs.map +1 -0
- package/dist/mscgen-BToym4Bs.js +2 -0
- package/dist/mscgen-BToym4Bs.js.map +1 -0
- package/dist/mscgen-Cpl0NYLN.mjs +105 -0
- package/dist/mscgen-Cpl0NYLN.mjs.map +1 -0
- package/dist/mumps-CQoS1kWX.mjs +26 -0
- package/dist/mumps-CQoS1kWX.mjs.map +1 -0
- package/dist/mumps-wfyQdxSu.js +2 -0
- package/dist/mumps-wfyQdxSu.js.map +1 -0
- package/dist/nginx-CwqyBUfA.js +2 -0
- package/dist/nginx-CwqyBUfA.js.map +1 -0
- package/dist/nginx-zDPm3Z74.mjs +90 -0
- package/dist/nginx-zDPm3Z74.mjs.map +1 -0
- package/dist/nsis-D9c90ZYp.js +2 -0
- package/dist/nsis-D9c90ZYp.js.map +1 -0
- package/dist/nsis-DYWPgAyk.mjs +63 -0
- package/dist/nsis-DYWPgAyk.mjs.map +1 -0
- package/dist/ntriples-CsNjv2QF.mjs +80 -0
- package/dist/ntriples-CsNjv2QF.mjs.map +1 -0
- package/dist/ntriples-DgwJmozm.js +2 -0
- package/dist/ntriples-DgwJmozm.js.map +1 -0
- package/dist/octave-1pkKrgAA.js +2 -0
- package/dist/octave-1pkKrgAA.js.map +1 -0
- package/dist/octave-C8PmmSRH.mjs +144 -0
- package/dist/octave-C8PmmSRH.mjs.map +1 -0
- package/dist/oz-BXOZCt0U.js +2 -0
- package/dist/oz-BXOZCt0U.js.map +1 -0
- package/dist/oz-Ce8aN8oE.mjs +152 -0
- package/dist/oz-Ce8aN8oE.mjs.map +1 -0
- package/dist/pascal-De0D6mP7.mjs +78 -0
- package/dist/pascal-De0D6mP7.mjs.map +1 -0
- package/dist/pascal-DtY2LEkJ.js +2 -0
- package/dist/pascal-DtY2LEkJ.js.map +1 -0
- package/dist/perl-B4bSCe1C.mjs +916 -0
- package/dist/perl-B4bSCe1C.mjs.map +1 -0
- package/dist/perl-CVDWbEju.js +2 -0
- package/dist/perl-CVDWbEju.js.map +1 -0
- package/dist/pig-D24Z8EXi.mjs +55 -0
- package/dist/pig-D24Z8EXi.mjs.map +1 -0
- package/dist/pig-DMByOrnr.js +2 -0
- package/dist/pig-DMByOrnr.js.map +1 -0
- package/dist/powershell-BaoYaFvj.js +2 -0
- package/dist/powershell-BaoYaFvj.js.map +1 -0
- package/dist/powershell-DkYVfTzP.mjs +250 -0
- package/dist/powershell-DkYVfTzP.mjs.map +1 -0
- package/dist/properties-DXHJZ3WE.js +2 -0
- package/dist/properties-DXHJZ3WE.js.map +1 -0
- package/dist/properties-Dn9wna3M.mjs +27 -0
- package/dist/properties-Dn9wna3M.mjs.map +1 -0
- package/dist/protobuf-BKhXdfH6.js +2 -0
- package/dist/protobuf-BKhXdfH6.js.map +1 -0
- package/dist/protobuf-BPIjwpzm.mjs +50 -0
- package/dist/protobuf-BPIjwpzm.mjs.map +1 -0
- package/dist/pug-CIYIOCVP.js +2 -0
- package/dist/pug-CIYIOCVP.js.map +1 -0
- package/dist/pug-DNXUX8Xe.mjs +249 -0
- package/dist/pug-DNXUX8Xe.mjs.map +1 -0
- package/dist/puppet-8mAyuMbW.js +2 -0
- package/dist/puppet-8mAyuMbW.js.map +1 -0
- package/dist/puppet-nyd4dhjf.mjs +46 -0
- package/dist/puppet-nyd4dhjf.mjs.map +1 -0
- package/dist/python-BkR3uSy8.mjs +314 -0
- package/dist/python-BkR3uSy8.mjs.map +1 -0
- package/dist/python-D-iU6WXz.js +2 -0
- package/dist/python-D-iU6WXz.js.map +1 -0
- package/dist/q-DyHZGnqm.mjs +87 -0
- package/dist/q-DyHZGnqm.mjs.map +1 -0
- package/dist/q-al1YZWDo.js +2 -0
- package/dist/q-al1YZWDo.js.map +1 -0
- package/dist/r-Bz1d3XP0.mjs +105 -0
- package/dist/r-Bz1d3XP0.mjs.map +1 -0
- package/dist/r-C9Q2pnpu.js +2 -0
- package/dist/r-C9Q2pnpu.js.map +1 -0
- package/dist/rpm-IznJm2Xc.mjs +58 -0
- package/dist/rpm-IznJm2Xc.mjs.map +1 -0
- package/dist/rpm-YK81m3qU.js +2 -0
- package/dist/rpm-YK81m3qU.js.map +1 -0
- package/dist/ruby-CcYfvIk6.mjs +229 -0
- package/dist/ruby-CcYfvIk6.mjs.map +1 -0
- package/dist/ruby-Cn1sFkZF.js +2 -0
- package/dist/ruby-Cn1sFkZF.js.map +1 -0
- package/dist/sas-7E8yHoCW.mjs +106 -0
- package/dist/sas-7E8yHoCW.mjs.map +1 -0
- package/dist/sas-DAGcJy94.js +2 -0
- package/dist/sas-DAGcJy94.js.map +1 -0
- package/dist/scheme-B0ZrbojV.js +2 -0
- package/dist/scheme-B0ZrbojV.js.map +1 -0
- package/dist/scheme-DjibxsNh.mjs +125 -0
- package/dist/scheme-DjibxsNh.mjs.map +1 -0
- package/dist/shell-BMYo43V6.js +2 -0
- package/dist/shell-BMYo43V6.js.map +1 -0
- package/dist/shell-C0C2sNA_.mjs +183 -0
- package/dist/shell-C0C2sNA_.mjs.map +1 -0
- package/dist/sieve-Bwz7vjP5.mjs +73 -0
- package/dist/sieve-Bwz7vjP5.mjs.map +1 -0
- package/dist/sieve-CIYW-b_H.js +2 -0
- package/dist/sieve-CIYW-b_H.js.map +1 -0
- package/dist/simple-mode-BuOwkNTN.js +2 -0
- package/dist/simple-mode-BuOwkNTN.js.map +1 -0
- package/dist/simple-mode-mNVtnu0l.mjs +90 -0
- package/dist/simple-mode-mNVtnu0l.mjs.map +1 -0
- package/dist/smalltalk-Bhddl2pB.mjs +49 -0
- package/dist/smalltalk-Bhddl2pB.mjs.map +1 -0
- package/dist/smalltalk-CSslY-3i.js +2 -0
- package/dist/smalltalk-CSslY-3i.js.map +1 -0
- package/dist/solr-A1kSnAwJ.js +2 -0
- package/dist/solr-A1kSnAwJ.js.map +1 -0
- package/dist/solr-BNlsLglM.mjs +42 -0
- package/dist/solr-BNlsLglM.mjs.map +1 -0
- package/dist/sparql-DnHMBLLY.js +2 -0
- package/dist/sparql-DnHMBLLY.js.map +1 -0
- package/dist/sparql-FarWu_Gb.mjs +198 -0
- package/dist/sparql-FarWu_Gb.mjs.map +1 -0
- package/dist/spreadsheet-B7_BK8hB.js +2 -0
- package/dist/spreadsheet-B7_BK8hB.js.map +1 -0
- package/dist/spreadsheet-C-cy4P5N.mjs +50 -0
- package/dist/spreadsheet-C-cy4P5N.mjs.map +1 -0
- package/dist/sql-9VmIWHrZ.js +2 -0
- package/dist/sql-9VmIWHrZ.js.map +1 -0
- package/dist/sql-CfG5lQ3l.mjs +283 -0
- package/dist/sql-CfG5lQ3l.mjs.map +1 -0
- package/dist/stex-B4wyjEnp.js +2 -0
- package/dist/stex-B4wyjEnp.js.map +1 -0
- package/dist/stex-Du4h4KAU.mjs +130 -0
- package/dist/stex-Du4h4KAU.mjs.map +1 -0
- package/dist/store/wikiStore.d.ts +30 -0
- package/dist/style.css +1 -0
- package/dist/stylus-CAdqWld3.mjs +251 -0
- package/dist/stylus-CAdqWld3.mjs.map +1 -0
- package/dist/stylus-D6GYOT3Z.js +2 -0
- package/dist/stylus-D6GYOT3Z.js.map +1 -0
- package/dist/swift-DGw6Cgu8.js +2 -0
- package/dist/swift-DGw6Cgu8.js.map +1 -0
- package/dist/swift-DSxqR9R6.mjs +231 -0
- package/dist/swift-DSxqR9R6.mjs.map +1 -0
- package/dist/tcl-ByLXbQFo.js +2 -0
- package/dist/tcl-ByLXbQFo.js.map +1 -0
- package/dist/tcl-xfoLljhY.mjs +82 -0
- package/dist/tcl-xfoLljhY.mjs.map +1 -0
- package/dist/textile-D1AWE-pc.mjs +296 -0
- package/dist/textile-D1AWE-pc.mjs.map +1 -0
- package/dist/textile-iryw-lTw.js +2 -0
- package/dist/textile-iryw-lTw.js.map +1 -0
- package/dist/tiddlywiki-5wqsXtSk.mjs +156 -0
- package/dist/tiddlywiki-5wqsXtSk.mjs.map +1 -0
- package/dist/tiddlywiki-D8IJz1k7.js +2 -0
- package/dist/tiddlywiki-D8IJz1k7.js.map +1 -0
- package/dist/tiki-C5p5KSQK.js +2 -0
- package/dist/tiki-C5p5KSQK.js.map +1 -0
- package/dist/tiki-D9z-T0ea.mjs +179 -0
- package/dist/tiki-D9z-T0ea.mjs.map +1 -0
- package/dist/toml-CekOMZjo.js +2 -0
- package/dist/toml-CekOMZjo.js.map +1 -0
- package/dist/toml-DWAmxCjl.mjs +59 -0
- package/dist/toml-DWAmxCjl.mjs.map +1 -0
- package/dist/troff-D-3QCOYN.js +2 -0
- package/dist/troff-D-3QCOYN.js.map +1 -0
- package/dist/troff-D2UO-fKf.mjs +36 -0
- package/dist/troff-D2UO-fKf.mjs.map +1 -0
- package/dist/ttcn-Bsa4sfRm.mjs +124 -0
- package/dist/ttcn-Bsa4sfRm.mjs.map +1 -0
- package/dist/ttcn-C2MXAqcM.js +2 -0
- package/dist/ttcn-C2MXAqcM.js.map +1 -0
- package/dist/ttcn-cfg-BYqcMRxC.js +2 -0
- package/dist/ttcn-cfg-BYqcMRxC.js.map +1 -0
- package/dist/ttcn-cfg-Bac_acMi.mjs +89 -0
- package/dist/ttcn-cfg-Bac_acMi.mjs.map +1 -0
- package/dist/turtle-DSJNatSv.js +2 -0
- package/dist/turtle-DSJNatSv.js.map +1 -0
- package/dist/turtle-xwJUxoPV.mjs +81 -0
- package/dist/turtle-xwJUxoPV.mjs.map +1 -0
- package/dist/types.d.ts +14 -0
- package/dist/vb-c2kQGd6-.mjs +75 -0
- package/dist/vb-c2kQGd6-.mjs.map +1 -0
- package/dist/vb-qzHzzvyB.js +2 -0
- package/dist/vb-qzHzzvyB.js.map +1 -0
- package/dist/vbscript-1f_Dhg5H.mjs +325 -0
- package/dist/vbscript-1f_Dhg5H.mjs.map +1 -0
- package/dist/vbscript-CWm8v9tE.js +2 -0
- package/dist/vbscript-CWm8v9tE.js.map +1 -0
- package/dist/velocity-D3_yAIp3.js +2 -0
- package/dist/velocity-D3_yAIp3.js.map +1 -0
- package/dist/velocity-DJd0pTTC.mjs +97 -0
- package/dist/velocity-DJd0pTTC.mjs.map +1 -0
- package/dist/verilog-BOhLNmQo.js +2 -0
- package/dist/verilog-BOhLNmQo.js.map +1 -0
- package/dist/verilog-CiS1jyi5.mjs +263 -0
- package/dist/verilog-CiS1jyi5.mjs.map +1 -0
- package/dist/vhdl-CMFbi8Im.js +2 -0
- package/dist/vhdl-CMFbi8Im.js.map +1 -0
- package/dist/vhdl-T9HkrbI2.mjs +107 -0
- package/dist/vhdl-T9HkrbI2.mjs.map +1 -0
- package/dist/webidl-CWb_flNk.js +2 -0
- package/dist/webidl-CWb_flNk.js.map +1 -0
- package/dist/webidl-CjfDENEo.mjs +156 -0
- package/dist/webidl-CjfDENEo.mjs.map +1 -0
- package/dist/xquery-BUQdORAS.mjs +423 -0
- package/dist/xquery-BUQdORAS.mjs.map +1 -0
- package/dist/xquery-Cjw5fRnG.js +2 -0
- package/dist/xquery-Cjw5fRnG.js.map +1 -0
- package/dist/yacas-C0absKBh.mjs +74 -0
- package/dist/yacas-C0absKBh.mjs.map +1 -0
- package/dist/yacas-urx_N5C8.js +2 -0
- package/dist/yacas-urx_N5C8.js.map +1 -0
- package/dist/z80-CsG3CM6M.js +2 -0
- package/dist/z80-CsG3CM6M.js.map +1 -0
- package/dist/z80-Pki2zAjW.mjs +62 -0
- package/dist/z80-Pki2zAjW.mjs.map +1 -0
- package/package.json +55 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"javascript-C2yteZeJ.mjs","sources":["../node_modules/@codemirror/legacy-modes/mode/javascript.js"],"sourcesContent":["function mkJavaScript(parserConfig) {\n var statementIndent = parserConfig.statementIndent;\n var jsonldMode = parserConfig.jsonld;\n var jsonMode = parserConfig.json || jsonldMode;\n var isTS = parserConfig.typescript;\n var wordRE = parserConfig.wordCharacters || /[\\w$\\xa1-\\uffff]/;\n\n // Tokenizer\n\n var keywords = function(){\n function kw(type) {return {type: type, style: \"keyword\"};}\n var A = kw(\"keyword a\"), B = kw(\"keyword b\"), C = kw(\"keyword c\"), D = kw(\"keyword d\");\n var operator = kw(\"operator\"), atom = {type: \"atom\", style: \"atom\"};\n\n return {\n \"if\": kw(\"if\"), \"while\": A, \"with\": A, \"else\": B, \"do\": B, \"try\": B, \"finally\": B,\n \"return\": D, \"break\": D, \"continue\": D, \"new\": kw(\"new\"), \"delete\": C, \"void\": C, \"throw\": C,\n \"debugger\": kw(\"debugger\"), \"var\": kw(\"var\"), \"const\": kw(\"var\"), \"let\": kw(\"var\"),\n \"function\": kw(\"function\"), \"catch\": kw(\"catch\"),\n \"for\": kw(\"for\"), \"switch\": kw(\"switch\"), \"case\": kw(\"case\"), \"default\": kw(\"default\"),\n \"in\": operator, \"typeof\": operator, \"instanceof\": operator,\n \"true\": atom, \"false\": atom, \"null\": atom, \"undefined\": atom, \"NaN\": atom, \"Infinity\": atom,\n \"this\": kw(\"this\"), \"class\": kw(\"class\"), \"super\": kw(\"atom\"),\n \"yield\": C, \"export\": kw(\"export\"), \"import\": kw(\"import\"), \"extends\": C,\n \"await\": C\n };\n }();\n\n var isOperatorChar = /[+\\-*&%=<>!?|~^@]/;\n var isJsonldKeyword = /^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)\"/;\n\n function readRegexp(stream) {\n var escaped = false, next, inSet = false;\n while ((next = stream.next()) != null) {\n if (!escaped) {\n if (next == \"/\" && !inSet) return;\n if (next == \"[\") inSet = true;\n else if (inSet && next == \"]\") inSet = false;\n }\n escaped = !escaped && next == \"\\\\\";\n }\n }\n\n // Used as scratch variables to communicate multiple values without\n // consing up tons of objects.\n var type, content;\n function ret(tp, style, cont) {\n type = tp; content = cont;\n return style;\n }\n function tokenBase(stream, state) {\n var ch = stream.next();\n if (ch == '\"' || ch == \"'\") {\n state.tokenize = tokenString(ch);\n return state.tokenize(stream, state);\n } else if (ch == \".\" && stream.match(/^\\d[\\d_]*(?:[eE][+\\-]?[\\d_]+)?/)) {\n return ret(\"number\", \"number\");\n } else if (ch == \".\" && stream.match(\"..\")) {\n return ret(\"spread\", \"meta\");\n } else if (/[\\[\\]{}\\(\\),;\\:\\.]/.test(ch)) {\n return ret(ch);\n } else if (ch == \"=\" && stream.eat(\">\")) {\n return ret(\"=>\", \"operator\");\n } else if (ch == \"0\" && stream.match(/^(?:x[\\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/)) {\n return ret(\"number\", \"number\");\n } else if (/\\d/.test(ch)) {\n stream.match(/^[\\d_]*(?:n|(?:\\.[\\d_]*)?(?:[eE][+\\-]?[\\d_]+)?)?/);\n return ret(\"number\", \"number\");\n } else if (ch == \"/\") {\n if (stream.eat(\"*\")) {\n state.tokenize = tokenComment;\n return tokenComment(stream, state);\n } else if (stream.eat(\"/\")) {\n stream.skipToEnd();\n return ret(\"comment\", \"comment\");\n } else if (expressionAllowed(stream, state, 1)) {\n readRegexp(stream);\n stream.match(/^\\b(([gimyus])(?![gimyus]*\\2))+\\b/);\n return ret(\"regexp\", \"string.special\");\n } else {\n stream.eat(\"=\");\n return ret(\"operator\", \"operator\", stream.current());\n }\n } else if (ch == \"`\") {\n state.tokenize = tokenQuasi;\n return tokenQuasi(stream, state);\n } else if (ch == \"#\" && stream.peek() == \"!\") {\n stream.skipToEnd();\n return ret(\"meta\", \"meta\");\n } else if (ch == \"#\" && stream.eatWhile(wordRE)) {\n return ret(\"variable\", \"property\")\n } else if (ch == \"<\" && stream.match(\"!--\") ||\n (ch == \"-\" && stream.match(\"->\") && !/\\S/.test(stream.string.slice(0, stream.start)))) {\n stream.skipToEnd()\n return ret(\"comment\", \"comment\")\n } else if (isOperatorChar.test(ch)) {\n if (ch != \">\" || !state.lexical || state.lexical.type != \">\") {\n if (stream.eat(\"=\")) {\n if (ch == \"!\" || ch == \"=\") stream.eat(\"=\")\n } else if (/[<>*+\\-|&?]/.test(ch)) {\n stream.eat(ch)\n if (ch == \">\") stream.eat(ch)\n }\n }\n if (ch == \"?\" && stream.eat(\".\")) return ret(\".\")\n return ret(\"operator\", \"operator\", stream.current());\n } else if (wordRE.test(ch)) {\n stream.eatWhile(wordRE);\n var word = stream.current()\n if (state.lastType != \".\") {\n if (keywords.propertyIsEnumerable(word)) {\n var kw = keywords[word]\n return ret(kw.type, kw.style, word)\n }\n if (word == \"async\" && stream.match(/^(\\s|\\/\\*([^*]|\\*(?!\\/))*?\\*\\/)*[\\[\\(\\w]/, false))\n return ret(\"async\", \"keyword\", word)\n }\n return ret(\"variable\", \"variable\", word)\n }\n }\n\n function tokenString(quote) {\n return function(stream, state) {\n var escaped = false, next;\n if (jsonldMode && stream.peek() == \"@\" && stream.match(isJsonldKeyword)){\n state.tokenize = tokenBase;\n return ret(\"jsonld-keyword\", \"meta\");\n }\n while ((next = stream.next()) != null) {\n if (next == quote && !escaped) break;\n escaped = !escaped && next == \"\\\\\";\n }\n if (!escaped) state.tokenize = tokenBase;\n return ret(\"string\", \"string\");\n };\n }\n\n function tokenComment(stream, state) {\n var maybeEnd = false, ch;\n while (ch = stream.next()) {\n if (ch == \"/\" && maybeEnd) {\n state.tokenize = tokenBase;\n break;\n }\n maybeEnd = (ch == \"*\");\n }\n return ret(\"comment\", \"comment\");\n }\n\n function tokenQuasi(stream, state) {\n var escaped = false, next;\n while ((next = stream.next()) != null) {\n if (!escaped && (next == \"`\" || next == \"$\" && stream.eat(\"{\"))) {\n state.tokenize = tokenBase;\n break;\n }\n escaped = !escaped && next == \"\\\\\";\n }\n return ret(\"quasi\", \"string.special\", stream.current());\n }\n\n var brackets = \"([{}])\";\n // This is a crude lookahead trick to try and notice that we're\n // parsing the argument patterns for a fat-arrow function before we\n // actually hit the arrow token. It only works if the arrow is on\n // the same line as the arguments and there's no strange noise\n // (comments) in between. Fallback is to only notice when we hit the\n // arrow, and not declare the arguments as locals for the arrow\n // body.\n function findFatArrow(stream, state) {\n if (state.fatArrowAt) state.fatArrowAt = null;\n var arrow = stream.string.indexOf(\"=>\", stream.start);\n if (arrow < 0) return;\n\n if (isTS) { // Try to skip TypeScript return type declarations after the arguments\n var m = /:\\s*(?:\\w+(?:<[^>]*>|\\[\\])?|\\{[^}]*\\})\\s*$/.exec(stream.string.slice(stream.start, arrow))\n if (m) arrow = m.index\n }\n\n var depth = 0, sawSomething = false;\n for (var pos = arrow - 1; pos >= 0; --pos) {\n var ch = stream.string.charAt(pos);\n var bracket = brackets.indexOf(ch);\n if (bracket >= 0 && bracket < 3) {\n if (!depth) { ++pos; break; }\n if (--depth == 0) { if (ch == \"(\") sawSomething = true; break; }\n } else if (bracket >= 3 && bracket < 6) {\n ++depth;\n } else if (wordRE.test(ch)) {\n sawSomething = true;\n } else if (/[\"'\\/`]/.test(ch)) {\n for (;; --pos) {\n if (pos == 0) return\n var next = stream.string.charAt(pos - 1)\n if (next == ch && stream.string.charAt(pos - 2) != \"\\\\\") { pos--; break }\n }\n } else if (sawSomething && !depth) {\n ++pos;\n break;\n }\n }\n if (sawSomething && !depth) state.fatArrowAt = pos;\n }\n\n // Parser\n\n var atomicTypes = {\"atom\": true, \"number\": true, \"variable\": true, \"string\": true,\n \"regexp\": true, \"this\": true, \"import\": true, \"jsonld-keyword\": true};\n\n function JSLexical(indented, column, type, align, prev, info) {\n this.indented = indented;\n this.column = column;\n this.type = type;\n this.prev = prev;\n this.info = info;\n if (align != null) this.align = align;\n }\n\n function inScope(state, varname) {\n for (var v = state.localVars; v; v = v.next)\n if (v.name == varname) return true;\n for (var cx = state.context; cx; cx = cx.prev) {\n for (var v = cx.vars; v; v = v.next)\n if (v.name == varname) return true;\n }\n }\n\n function parseJS(state, style, type, content, stream) {\n var cc = state.cc;\n // Communicate our context to the combinators.\n // (Less wasteful than consing up a hundred closures on every call.)\n cx.state = state; cx.stream = stream; cx.marked = null; cx.cc = cc; cx.style = style;\n\n if (!state.lexical.hasOwnProperty(\"align\"))\n state.lexical.align = true;\n\n while(true) {\n var combinator = cc.length ? cc.pop() : jsonMode ? expression : statement;\n if (combinator(type, content)) {\n while(cc.length && cc[cc.length - 1].lex)\n cc.pop()();\n if (cx.marked) return cx.marked;\n if (type == \"variable\" && inScope(state, content)) return \"variableName.local\";\n return style;\n }\n }\n }\n\n // Combinator utils\n\n var cx = {state: null, column: null, marked: null, cc: null};\n function pass() {\n for (var i = arguments.length - 1; i >= 0; i--) cx.cc.push(arguments[i]);\n }\n function cont() {\n pass.apply(null, arguments);\n return true;\n }\n function inList(name, list) {\n for (var v = list; v; v = v.next) if (v.name == name) return true\n return false;\n }\n function register(varname) {\n var state = cx.state;\n cx.marked = \"def\";\n if (state.context) {\n if (state.lexical.info == \"var\" && state.context && state.context.block) {\n // FIXME function decls are also not block scoped\n var newContext = registerVarScoped(varname, state.context)\n if (newContext != null) {\n state.context = newContext\n return\n }\n } else if (!inList(varname, state.localVars)) {\n state.localVars = new Var(varname, state.localVars)\n return\n }\n }\n // Fall through means this is global\n if (parserConfig.globalVars && !inList(varname, state.globalVars))\n state.globalVars = new Var(varname, state.globalVars)\n }\n function registerVarScoped(varname, context) {\n if (!context) {\n return null\n } else if (context.block) {\n var inner = registerVarScoped(varname, context.prev)\n if (!inner) return null\n if (inner == context.prev) return context\n return new Context(inner, context.vars, true)\n } else if (inList(varname, context.vars)) {\n return context\n } else {\n return new Context(context.prev, new Var(varname, context.vars), false)\n }\n }\n\n function isModifier(name) {\n return name == \"public\" || name == \"private\" || name == \"protected\" || name == \"abstract\" || name == \"readonly\"\n }\n\n // Combinators\n\n function Context(prev, vars, block) { this.prev = prev; this.vars = vars; this.block = block }\n function Var(name, next) { this.name = name; this.next = next }\n\n var defaultVars = new Var(\"this\", new Var(\"arguments\", null))\n function pushcontext() {\n cx.state.context = new Context(cx.state.context, cx.state.localVars, false)\n cx.state.localVars = defaultVars\n }\n function pushblockcontext() {\n cx.state.context = new Context(cx.state.context, cx.state.localVars, true)\n cx.state.localVars = null\n }\n pushcontext.lex = pushblockcontext.lex = true\n function popcontext() {\n cx.state.localVars = cx.state.context.vars\n cx.state.context = cx.state.context.prev\n }\n popcontext.lex = true\n function pushlex(type, info) {\n var result = function() {\n var state = cx.state, indent = state.indented;\n if (state.lexical.type == \"stat\") indent = state.lexical.indented;\n else for (var outer = state.lexical; outer && outer.type == \")\" && outer.align; outer = outer.prev)\n indent = outer.indented;\n state.lexical = new JSLexical(indent, cx.stream.column(), type, null, state.lexical, info);\n };\n result.lex = true;\n return result;\n }\n function poplex() {\n var state = cx.state;\n if (state.lexical.prev) {\n if (state.lexical.type == \")\")\n state.indented = state.lexical.indented;\n state.lexical = state.lexical.prev;\n }\n }\n poplex.lex = true;\n\n function expect(wanted) {\n function exp(type) {\n if (type == wanted) return cont();\n else if (wanted == \";\" || type == \"}\" || type == \")\" || type == \"]\") return pass();\n else return cont(exp);\n };\n return exp;\n }\n\n function statement(type, value) {\n if (type == \"var\") return cont(pushlex(\"vardef\", value), vardef, expect(\";\"), poplex);\n if (type == \"keyword a\") return cont(pushlex(\"form\"), parenExpr, statement, poplex);\n if (type == \"keyword b\") return cont(pushlex(\"form\"), statement, poplex);\n if (type == \"keyword d\") return cx.stream.match(/^\\s*$/, false) ? cont() : cont(pushlex(\"stat\"), maybeexpression, expect(\";\"), poplex);\n if (type == \"debugger\") return cont(expect(\";\"));\n if (type == \"{\") return cont(pushlex(\"}\"), pushblockcontext, block, poplex, popcontext);\n if (type == \";\") return cont();\n if (type == \"if\") {\n if (cx.state.lexical.info == \"else\" && cx.state.cc[cx.state.cc.length - 1] == poplex)\n cx.state.cc.pop()();\n return cont(pushlex(\"form\"), parenExpr, statement, poplex, maybeelse);\n }\n if (type == \"function\") return cont(functiondef);\n if (type == \"for\") return cont(pushlex(\"form\"), pushblockcontext, forspec, statement, popcontext, poplex);\n if (type == \"class\" || (isTS && value == \"interface\")) {\n cx.marked = \"keyword\"\n return cont(pushlex(\"form\", type == \"class\" ? type : value), className, poplex)\n }\n if (type == \"variable\") {\n if (isTS && value == \"declare\") {\n cx.marked = \"keyword\"\n return cont(statement)\n } else if (isTS && (value == \"module\" || value == \"enum\" || value == \"type\") && cx.stream.match(/^\\s*\\w/, false)) {\n cx.marked = \"keyword\"\n if (value == \"enum\") return cont(enumdef);\n else if (value == \"type\") return cont(typename, expect(\"operator\"), typeexpr, expect(\";\"));\n else return cont(pushlex(\"form\"), pattern, expect(\"{\"), pushlex(\"}\"), block, poplex, poplex)\n } else if (isTS && value == \"namespace\") {\n cx.marked = \"keyword\"\n return cont(pushlex(\"form\"), expression, statement, poplex)\n } else if (isTS && value == \"abstract\") {\n cx.marked = \"keyword\"\n return cont(statement)\n } else {\n return cont(pushlex(\"stat\"), maybelabel);\n }\n }\n if (type == \"switch\") return cont(pushlex(\"form\"), parenExpr, expect(\"{\"), pushlex(\"}\", \"switch\"), pushblockcontext,\n block, poplex, poplex, popcontext);\n if (type == \"case\") return cont(expression, expect(\":\"));\n if (type == \"default\") return cont(expect(\":\"));\n if (type == \"catch\") return cont(pushlex(\"form\"), pushcontext, maybeCatchBinding, statement, poplex, popcontext);\n if (type == \"export\") return cont(pushlex(\"stat\"), afterExport, poplex);\n if (type == \"import\") return cont(pushlex(\"stat\"), afterImport, poplex);\n if (type == \"async\") return cont(statement)\n if (value == \"@\") return cont(expression, statement)\n return pass(pushlex(\"stat\"), expression, expect(\";\"), poplex);\n }\n function maybeCatchBinding(type) {\n if (type == \"(\") return cont(funarg, expect(\")\"))\n }\n function expression(type, value) {\n return expressionInner(type, value, false);\n }\n function expressionNoComma(type, value) {\n return expressionInner(type, value, true);\n }\n function parenExpr(type) {\n if (type != \"(\") return pass()\n return cont(pushlex(\")\"), maybeexpression, expect(\")\"), poplex)\n }\n function expressionInner(type, value, noComma) {\n if (cx.state.fatArrowAt == cx.stream.start) {\n var body = noComma ? arrowBodyNoComma : arrowBody;\n if (type == \"(\") return cont(pushcontext, pushlex(\")\"), commasep(funarg, \")\"), poplex, expect(\"=>\"), body, popcontext);\n else if (type == \"variable\") return pass(pushcontext, pattern, expect(\"=>\"), body, popcontext);\n }\n\n var maybeop = noComma ? maybeoperatorNoComma : maybeoperatorComma;\n if (atomicTypes.hasOwnProperty(type)) return cont(maybeop);\n if (type == \"function\") return cont(functiondef, maybeop);\n if (type == \"class\" || (isTS && value == \"interface\")) { cx.marked = \"keyword\"; return cont(pushlex(\"form\"), classExpression, poplex); }\n if (type == \"keyword c\" || type == \"async\") return cont(noComma ? expressionNoComma : expression);\n if (type == \"(\") return cont(pushlex(\")\"), maybeexpression, expect(\")\"), poplex, maybeop);\n if (type == \"operator\" || type == \"spread\") return cont(noComma ? expressionNoComma : expression);\n if (type == \"[\") return cont(pushlex(\"]\"), arrayLiteral, poplex, maybeop);\n if (type == \"{\") return contCommasep(objprop, \"}\", null, maybeop);\n if (type == \"quasi\") return pass(quasi, maybeop);\n if (type == \"new\") return cont(maybeTarget(noComma));\n return cont();\n }\n function maybeexpression(type) {\n if (type.match(/[;\\}\\)\\],]/)) return pass();\n return pass(expression);\n }\n\n function maybeoperatorComma(type, value) {\n if (type == \",\") return cont(maybeexpression);\n return maybeoperatorNoComma(type, value, false);\n }\n function maybeoperatorNoComma(type, value, noComma) {\n var me = noComma == false ? maybeoperatorComma : maybeoperatorNoComma;\n var expr = noComma == false ? expression : expressionNoComma;\n if (type == \"=>\") return cont(pushcontext, noComma ? arrowBodyNoComma : arrowBody, popcontext);\n if (type == \"operator\") {\n if (/\\+\\+|--/.test(value) || isTS && value == \"!\") return cont(me);\n if (isTS && value == \"<\" && cx.stream.match(/^([^<>]|<[^<>]*>)*>\\s*\\(/, false))\n return cont(pushlex(\">\"), commasep(typeexpr, \">\"), poplex, me);\n if (value == \"?\") return cont(expression, expect(\":\"), expr);\n return cont(expr);\n }\n if (type == \"quasi\") { return pass(quasi, me); }\n if (type == \";\") return;\n if (type == \"(\") return contCommasep(expressionNoComma, \")\", \"call\", me);\n if (type == \".\") return cont(property, me);\n if (type == \"[\") return cont(pushlex(\"]\"), maybeexpression, expect(\"]\"), poplex, me);\n if (isTS && value == \"as\") { cx.marked = \"keyword\"; return cont(typeexpr, me) }\n if (type == \"regexp\") {\n cx.state.lastType = cx.marked = \"operator\"\n cx.stream.backUp(cx.stream.pos - cx.stream.start - 1)\n return cont(expr)\n }\n }\n function quasi(type, value) {\n if (type != \"quasi\") return pass();\n if (value.slice(value.length - 2) != \"${\") return cont(quasi);\n return cont(maybeexpression, continueQuasi);\n }\n function continueQuasi(type) {\n if (type == \"}\") {\n cx.marked = \"string.special\";\n cx.state.tokenize = tokenQuasi;\n return cont(quasi);\n }\n }\n function arrowBody(type) {\n findFatArrow(cx.stream, cx.state);\n return pass(type == \"{\" ? statement : expression);\n }\n function arrowBodyNoComma(type) {\n findFatArrow(cx.stream, cx.state);\n return pass(type == \"{\" ? statement : expressionNoComma);\n }\n function maybeTarget(noComma) {\n return function(type) {\n if (type == \".\") return cont(noComma ? targetNoComma : target);\n else if (type == \"variable\" && isTS) return cont(maybeTypeArgs, noComma ? maybeoperatorNoComma : maybeoperatorComma)\n else return pass(noComma ? expressionNoComma : expression);\n };\n }\n function target(_, value) {\n if (value == \"target\") { cx.marked = \"keyword\"; return cont(maybeoperatorComma); }\n }\n function targetNoComma(_, value) {\n if (value == \"target\") { cx.marked = \"keyword\"; return cont(maybeoperatorNoComma); }\n }\n function maybelabel(type) {\n if (type == \":\") return cont(poplex, statement);\n return pass(maybeoperatorComma, expect(\";\"), poplex);\n }\n function property(type) {\n if (type == \"variable\") {cx.marked = \"property\"; return cont();}\n }\n function objprop(type, value) {\n if (type == \"async\") {\n cx.marked = \"property\";\n return cont(objprop);\n } else if (type == \"variable\" || cx.style == \"keyword\") {\n cx.marked = \"property\";\n if (value == \"get\" || value == \"set\") return cont(getterSetter);\n var m // Work around fat-arrow-detection complication for detecting typescript typed arrow params\n if (isTS && cx.state.fatArrowAt == cx.stream.start && (m = cx.stream.match(/^\\s*:\\s*/, false)))\n cx.state.fatArrowAt = cx.stream.pos + m[0].length\n return cont(afterprop);\n } else if (type == \"number\" || type == \"string\") {\n cx.marked = jsonldMode ? \"property\" : (cx.style + \" property\");\n return cont(afterprop);\n } else if (type == \"jsonld-keyword\") {\n return cont(afterprop);\n } else if (isTS && isModifier(value)) {\n cx.marked = \"keyword\"\n return cont(objprop)\n } else if (type == \"[\") {\n return cont(expression, maybetype, expect(\"]\"), afterprop);\n } else if (type == \"spread\") {\n return cont(expressionNoComma, afterprop);\n } else if (value == \"*\") {\n cx.marked = \"keyword\";\n return cont(objprop);\n } else if (type == \":\") {\n return pass(afterprop)\n }\n }\n function getterSetter(type) {\n if (type != \"variable\") return pass(afterprop);\n cx.marked = \"property\";\n return cont(functiondef);\n }\n function afterprop(type) {\n if (type == \":\") return cont(expressionNoComma);\n if (type == \"(\") return pass(functiondef);\n }\n function commasep(what, end, sep) {\n function proceed(type, value) {\n if (sep ? sep.indexOf(type) > -1 : type == \",\") {\n var lex = cx.state.lexical;\n if (lex.info == \"call\") lex.pos = (lex.pos || 0) + 1;\n return cont(function(type, value) {\n if (type == end || value == end) return pass()\n return pass(what)\n }, proceed);\n }\n if (type == end || value == end) return cont();\n if (sep && sep.indexOf(\";\") > -1) return pass(what)\n return cont(expect(end));\n }\n return function(type, value) {\n if (type == end || value == end) return cont();\n return pass(what, proceed);\n };\n }\n function contCommasep(what, end, info) {\n for (var i = 3; i < arguments.length; i++)\n cx.cc.push(arguments[i]);\n return cont(pushlex(end, info), commasep(what, end), poplex);\n }\n function block(type) {\n if (type == \"}\") return cont();\n return pass(statement, block);\n }\n function maybetype(type, value) {\n if (isTS) {\n if (type == \":\") return cont(typeexpr);\n if (value == \"?\") return cont(maybetype);\n }\n }\n function maybetypeOrIn(type, value) {\n if (isTS && (type == \":\" || value == \"in\")) return cont(typeexpr)\n }\n function mayberettype(type) {\n if (isTS && type == \":\") {\n if (cx.stream.match(/^\\s*\\w+\\s+is\\b/, false)) return cont(expression, isKW, typeexpr)\n else return cont(typeexpr)\n }\n }\n function isKW(_, value) {\n if (value == \"is\") {\n cx.marked = \"keyword\"\n return cont()\n }\n }\n function typeexpr(type, value) {\n if (value == \"keyof\" || value == \"typeof\" || value == \"infer\" || value == \"readonly\") {\n cx.marked = \"keyword\"\n return cont(value == \"typeof\" ? expressionNoComma : typeexpr)\n }\n if (type == \"variable\" || value == \"void\") {\n cx.marked = \"type\"\n return cont(afterType)\n }\n if (value == \"|\" || value == \"&\") return cont(typeexpr)\n if (type == \"string\" || type == \"number\" || type == \"atom\") return cont(afterType);\n if (type == \"[\") return cont(pushlex(\"]\"), commasep(typeexpr, \"]\", \",\"), poplex, afterType)\n if (type == \"{\") return cont(pushlex(\"}\"), typeprops, poplex, afterType)\n if (type == \"(\") return cont(commasep(typearg, \")\"), maybeReturnType, afterType)\n if (type == \"<\") return cont(commasep(typeexpr, \">\"), typeexpr)\n if (type == \"quasi\") return pass(quasiType, afterType)\n }\n function maybeReturnType(type) {\n if (type == \"=>\") return cont(typeexpr)\n }\n function typeprops(type) {\n if (type.match(/[\\}\\)\\]]/)) return cont()\n if (type == \",\" || type == \";\") return cont(typeprops)\n return pass(typeprop, typeprops)\n }\n function typeprop(type, value) {\n if (type == \"variable\" || cx.style == \"keyword\") {\n cx.marked = \"property\"\n return cont(typeprop)\n } else if (value == \"?\" || type == \"number\" || type == \"string\") {\n return cont(typeprop)\n } else if (type == \":\") {\n return cont(typeexpr)\n } else if (type == \"[\") {\n return cont(expect(\"variable\"), maybetypeOrIn, expect(\"]\"), typeprop)\n } else if (type == \"(\") {\n return pass(functiondecl, typeprop)\n } else if (!type.match(/[;\\}\\)\\],]/)) {\n return cont()\n }\n }\n function quasiType(type, value) {\n if (type != \"quasi\") return pass();\n if (value.slice(value.length - 2) != \"${\") return cont(quasiType);\n return cont(typeexpr, continueQuasiType);\n }\n function continueQuasiType(type) {\n if (type == \"}\") {\n cx.marked = \"string.special\";\n cx.state.tokenize = tokenQuasi;\n return cont(quasiType);\n }\n }\n function typearg(type, value) {\n if (type == \"variable\" && cx.stream.match(/^\\s*[?:]/, false) || value == \"?\") return cont(typearg)\n if (type == \":\") return cont(typeexpr)\n if (type == \"spread\") return cont(typearg)\n return pass(typeexpr)\n }\n function afterType(type, value) {\n if (value == \"<\") return cont(pushlex(\">\"), commasep(typeexpr, \">\"), poplex, afterType)\n if (value == \"|\" || type == \".\" || value == \"&\") return cont(typeexpr)\n if (type == \"[\") return cont(typeexpr, expect(\"]\"), afterType)\n if (value == \"extends\" || value == \"implements\") { cx.marked = \"keyword\"; return cont(typeexpr) }\n if (value == \"?\") return cont(typeexpr, expect(\":\"), typeexpr)\n }\n function maybeTypeArgs(_, value) {\n if (value == \"<\") return cont(pushlex(\">\"), commasep(typeexpr, \">\"), poplex, afterType)\n }\n function typeparam() {\n return pass(typeexpr, maybeTypeDefault)\n }\n function maybeTypeDefault(_, value) {\n if (value == \"=\") return cont(typeexpr)\n }\n function vardef(_, value) {\n if (value == \"enum\") {cx.marked = \"keyword\"; return cont(enumdef)}\n return pass(pattern, maybetype, maybeAssign, vardefCont);\n }\n function pattern(type, value) {\n if (isTS && isModifier(value)) { cx.marked = \"keyword\"; return cont(pattern) }\n if (type == \"variable\") { register(value); return cont(); }\n if (type == \"spread\") return cont(pattern);\n if (type == \"[\") return contCommasep(eltpattern, \"]\");\n if (type == \"{\") return contCommasep(proppattern, \"}\");\n }\n function proppattern(type, value) {\n if (type == \"variable\" && !cx.stream.match(/^\\s*:/, false)) {\n register(value);\n return cont(maybeAssign);\n }\n if (type == \"variable\") cx.marked = \"property\";\n if (type == \"spread\") return cont(pattern);\n if (type == \"}\") return pass();\n if (type == \"[\") return cont(expression, expect(']'), expect(':'), proppattern);\n return cont(expect(\":\"), pattern, maybeAssign);\n }\n function eltpattern() {\n return pass(pattern, maybeAssign)\n }\n function maybeAssign(_type, value) {\n if (value == \"=\") return cont(expressionNoComma);\n }\n function vardefCont(type) {\n if (type == \",\") return cont(vardef);\n }\n function maybeelse(type, value) {\n if (type == \"keyword b\" && value == \"else\") return cont(pushlex(\"form\", \"else\"), statement, poplex);\n }\n function forspec(type, value) {\n if (value == \"await\") return cont(forspec);\n if (type == \"(\") return cont(pushlex(\")\"), forspec1, poplex);\n }\n function forspec1(type) {\n if (type == \"var\") return cont(vardef, forspec2);\n if (type == \"variable\") return cont(forspec2);\n return pass(forspec2)\n }\n function forspec2(type, value) {\n if (type == \")\") return cont()\n if (type == \";\") return cont(forspec2)\n if (value == \"in\" || value == \"of\") { cx.marked = \"keyword\"; return cont(expression, forspec2) }\n return pass(expression, forspec2)\n }\n function functiondef(type, value) {\n if (value == \"*\") {cx.marked = \"keyword\"; return cont(functiondef);}\n if (type == \"variable\") {register(value); return cont(functiondef);}\n if (type == \"(\") return cont(pushcontext, pushlex(\")\"), commasep(funarg, \")\"), poplex, mayberettype, statement, popcontext);\n if (isTS && value == \"<\") return cont(pushlex(\">\"), commasep(typeparam, \">\"), poplex, functiondef)\n }\n function functiondecl(type, value) {\n if (value == \"*\") {cx.marked = \"keyword\"; return cont(functiondecl);}\n if (type == \"variable\") {register(value); return cont(functiondecl);}\n if (type == \"(\") return cont(pushcontext, pushlex(\")\"), commasep(funarg, \")\"), poplex, mayberettype, popcontext);\n if (isTS && value == \"<\") return cont(pushlex(\">\"), commasep(typeparam, \">\"), poplex, functiondecl)\n }\n function typename(type, value) {\n if (type == \"keyword\" || type == \"variable\") {\n cx.marked = \"type\"\n return cont(typename)\n } else if (value == \"<\") {\n return cont(pushlex(\">\"), commasep(typeparam, \">\"), poplex)\n }\n }\n function funarg(type, value) {\n if (value == \"@\") cont(expression, funarg)\n if (type == \"spread\") return cont(funarg);\n if (isTS && isModifier(value)) { cx.marked = \"keyword\"; return cont(funarg); }\n if (isTS && type == \"this\") return cont(maybetype, maybeAssign)\n return pass(pattern, maybetype, maybeAssign);\n }\n function classExpression(type, value) {\n // Class expressions may have an optional name.\n if (type == \"variable\") return className(type, value);\n return classNameAfter(type, value);\n }\n function className(type, value) {\n if (type == \"variable\") {register(value); return cont(classNameAfter);}\n }\n function classNameAfter(type, value) {\n if (value == \"<\") return cont(pushlex(\">\"), commasep(typeparam, \">\"), poplex, classNameAfter)\n if (value == \"extends\" || value == \"implements\" || (isTS && type == \",\")) {\n if (value == \"implements\") cx.marked = \"keyword\";\n return cont(isTS ? typeexpr : expression, classNameAfter);\n }\n if (type == \"{\") return cont(pushlex(\"}\"), classBody, poplex);\n }\n function classBody(type, value) {\n if (type == \"async\" ||\n (type == \"variable\" &&\n (value == \"static\" || value == \"get\" || value == \"set\" || (isTS && isModifier(value))) &&\n cx.stream.match(/^\\s+#?[\\w$\\xa1-\\uffff]/, false))) {\n cx.marked = \"keyword\";\n return cont(classBody);\n }\n if (type == \"variable\" || cx.style == \"keyword\") {\n cx.marked = \"property\";\n return cont(classfield, classBody);\n }\n if (type == \"number\" || type == \"string\") return cont(classfield, classBody);\n if (type == \"[\")\n return cont(expression, maybetype, expect(\"]\"), classfield, classBody)\n if (value == \"*\") {\n cx.marked = \"keyword\";\n return cont(classBody);\n }\n if (isTS && type == \"(\") return pass(functiondecl, classBody)\n if (type == \";\" || type == \",\") return cont(classBody);\n if (type == \"}\") return cont();\n if (value == \"@\") return cont(expression, classBody)\n }\n function classfield(type, value) {\n if (value == \"!\" || value == \"?\") return cont(classfield)\n if (type == \":\") return cont(typeexpr, maybeAssign)\n if (value == \"=\") return cont(expressionNoComma)\n var context = cx.state.lexical.prev, isInterface = context && context.info == \"interface\"\n return pass(isInterface ? functiondecl : functiondef)\n }\n function afterExport(type, value) {\n if (value == \"*\") { cx.marked = \"keyword\"; return cont(maybeFrom, expect(\";\")); }\n if (value == \"default\") { cx.marked = \"keyword\"; return cont(expression, expect(\";\")); }\n if (type == \"{\") return cont(commasep(exportField, \"}\"), maybeFrom, expect(\";\"));\n return pass(statement);\n }\n function exportField(type, value) {\n if (value == \"as\") { cx.marked = \"keyword\"; return cont(expect(\"variable\")); }\n if (type == \"variable\") return pass(expressionNoComma, exportField);\n }\n function afterImport(type) {\n if (type == \"string\") return cont();\n if (type == \"(\") return pass(expression);\n if (type == \".\") return pass(maybeoperatorComma);\n return pass(importSpec, maybeMoreImports, maybeFrom);\n }\n function importSpec(type, value) {\n if (type == \"{\") return contCommasep(importSpec, \"}\");\n if (type == \"variable\") register(value);\n if (value == \"*\") cx.marked = \"keyword\";\n return cont(maybeAs);\n }\n function maybeMoreImports(type) {\n if (type == \",\") return cont(importSpec, maybeMoreImports)\n }\n function maybeAs(_type, value) {\n if (value == \"as\") { cx.marked = \"keyword\"; return cont(importSpec); }\n }\n function maybeFrom(_type, value) {\n if (value == \"from\") { cx.marked = \"keyword\"; return cont(expression); }\n }\n function arrayLiteral(type) {\n if (type == \"]\") return cont();\n return pass(commasep(expressionNoComma, \"]\"));\n }\n function enumdef() {\n return pass(pushlex(\"form\"), pattern, expect(\"{\"), pushlex(\"}\"), commasep(enummember, \"}\"), poplex, poplex)\n }\n function enummember() {\n return pass(pattern, maybeAssign);\n }\n\n function isContinuedStatement(state, textAfter) {\n return state.lastType == \"operator\" || state.lastType == \",\" ||\n isOperatorChar.test(textAfter.charAt(0)) ||\n /[,.]/.test(textAfter.charAt(0));\n }\n\n function expressionAllowed(stream, state, backUp) {\n return state.tokenize == tokenBase &&\n /^(?:operator|sof|keyword [bcd]|case|new|export|default|spread|[\\[{}\\(,;:]|=>)$/.test(state.lastType) ||\n (state.lastType == \"quasi\" && /\\{\\s*$/.test(stream.string.slice(0, stream.pos - (backUp || 0))))\n }\n\n // Interface\n\n return {\n name: parserConfig.name,\n\n startState: function(indentUnit) {\n var state = {\n tokenize: tokenBase,\n lastType: \"sof\",\n cc: [],\n lexical: new JSLexical(-indentUnit, 0, \"block\", false),\n localVars: parserConfig.localVars,\n context: parserConfig.localVars && new Context(null, null, false),\n indented: 0\n };\n if (parserConfig.globalVars && typeof parserConfig.globalVars == \"object\")\n state.globalVars = parserConfig.globalVars;\n return state;\n },\n\n token: function(stream, state) {\n if (stream.sol()) {\n if (!state.lexical.hasOwnProperty(\"align\"))\n state.lexical.align = false;\n state.indented = stream.indentation();\n findFatArrow(stream, state);\n }\n if (state.tokenize != tokenComment && stream.eatSpace()) return null;\n var style = state.tokenize(stream, state);\n if (type == \"comment\") return style;\n state.lastType = type == \"operator\" && (content == \"++\" || content == \"--\") ? \"incdec\" : type;\n return parseJS(state, style, type, content, stream);\n },\n\n indent: function(state, textAfter, cx) {\n if (state.tokenize == tokenComment || state.tokenize == tokenQuasi) return null;\n if (state.tokenize != tokenBase) return 0;\n var firstChar = textAfter && textAfter.charAt(0), lexical = state.lexical, top\n // Kludge to prevent 'maybelse' from blocking lexical scope pops\n if (!/^\\s*else\\b/.test(textAfter)) for (var i = state.cc.length - 1; i >= 0; --i) {\n var c = state.cc[i];\n if (c == poplex) lexical = lexical.prev;\n else if (c != maybeelse && c != popcontext) break;\n }\n while ((lexical.type == \"stat\" || lexical.type == \"form\") &&\n (firstChar == \"}\" || ((top = state.cc[state.cc.length - 1]) &&\n (top == maybeoperatorComma || top == maybeoperatorNoComma) &&\n !/^[,\\.=+\\-*:?[\\(]/.test(textAfter))))\n lexical = lexical.prev;\n if (statementIndent && lexical.type == \")\" && lexical.prev.type == \"stat\")\n lexical = lexical.prev;\n var type = lexical.type, closing = firstChar == type;\n\n if (type == \"vardef\") return lexical.indented + (state.lastType == \"operator\" || state.lastType == \",\" ? lexical.info.length + 1 : 0);\n else if (type == \"form\" && firstChar == \"{\") return lexical.indented;\n else if (type == \"form\") return lexical.indented + cx.unit;\n else if (type == \"stat\")\n return lexical.indented + (isContinuedStatement(state, textAfter) ? statementIndent || cx.unit : 0);\n else if (lexical.info == \"switch\" && !closing && parserConfig.doubleIndentSwitch != false)\n return lexical.indented + (/^(?:case|default)\\b/.test(textAfter) ? cx.unit : 2 * cx.unit);\n else if (lexical.align) return lexical.column + (closing ? 0 : 1);\n else return lexical.indented + (closing ? 0 : cx.unit);\n },\n\n languageData: {\n indentOnInput: /^\\s*(?:case .*?:|default:|\\{|\\})$/,\n commentTokens: jsonMode ? undefined : {line: \"//\", block: {open: \"/*\", close: \"*/\"}},\n closeBrackets: {brackets: [\"(\", \"[\", \"{\", \"'\", '\"', \"`\"]},\n wordChars: \"$\"\n }\n };\n};\n\nexport const javascript = mkJavaScript({name: \"javascript\"})\nexport const json = mkJavaScript({name: \"json\", json: true})\nexport const jsonld = mkJavaScript({name: \"json\", jsonld: true})\nexport const typescript = mkJavaScript({name: \"typescript\", typescript: true})\n"],"names":["mkJavaScript","parserConfig","statementIndent","jsonldMode","jsonMode","isTS","wordRE","keywords","kw","type","A","B","C","D","operator","atom","isOperatorChar","isJsonldKeyword","readRegexp","stream","escaped","next","inSet","content","ret","tp","style","cont","tokenBase","state","ch","tokenString","tokenComment","expressionAllowed","tokenQuasi","word","quote","maybeEnd","brackets","findFatArrow","arrow","m","depth","sawSomething","pos","bracket","atomicTypes","JSLexical","indented","column","align","prev","info","inScope","varname","v","cx","parseJS","cc","combinator","expression","statement","pass","i","inList","name","list","register","newContext","registerVarScoped","Var","context","inner","Context","isModifier","vars","block","defaultVars","pushcontext","pushblockcontext","popcontext","pushlex","result","indent","outer","poplex","expect","wanted","exp","value","vardef","parenExpr","maybeexpression","maybeelse","functiondef","forspec","className","enumdef","typename","typeexpr","pattern","maybelabel","maybeCatchBinding","afterExport","afterImport","funarg","expressionInner","expressionNoComma","noComma","body","arrowBodyNoComma","arrowBody","commasep","maybeop","maybeoperatorNoComma","maybeoperatorComma","classExpression","arrayLiteral","contCommasep","objprop","quasi","maybeTarget","me","expr","property","continueQuasi","targetNoComma","target","maybeTypeArgs","_","getterSetter","afterprop","maybetype","what","end","sep","proceed","lex","maybetypeOrIn","mayberettype","isKW","afterType","typeprops","typearg","maybeReturnType","quasiType","typeprop","functiondecl","continueQuasiType","typeparam","maybeTypeDefault","maybeAssign","vardefCont","eltpattern","proppattern","_type","forspec1","forspec2","classNameAfter","classBody","classfield","isInterface","maybeFrom","exportField","importSpec","maybeMoreImports","maybeAs","enummember","isContinuedStatement","textAfter","backUp","indentUnit","firstChar","lexical","top","c","closing","javascript","jsonld"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function fr(g){var br=g.statementIndent,ur=g.jsonld,pr=g.json||ur,k=g.typescript,U=g.wordCharacters||/[\w$\xa1-\uffff]/,wr=function(){function r(v){return{type:v,style:"keyword"}}var e=r("keyword a"),t=r("keyword b"),f=r("keyword c"),u=r("keyword d"),c=r("operator"),m={type:"atom",style:"atom"};return{if:r("if"),while:e,with:e,else:t,do:t,try:t,finally:t,return:u,break:u,continue:u,new:r("new"),delete:f,void:f,throw:f,debugger:r("debugger"),var:r("var"),const:r("var"),let:r("var"),function:r("function"),catch:r("catch"),for:r("for"),switch:r("switch"),case:r("case"),default:r("default"),in:c,typeof:c,instanceof:c,true:m,false:m,null:m,undefined:m,NaN:m,Infinity:m,this:r("this"),class:r("class"),super:r("atom"),yield:f,export:r("export"),import:r("import"),extends:f,await:f}}(),hr=/[+\-*&%=<>!?|~^@]/,$r=/^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;function qr(r){for(var e=!1,t,f=!1;(t=r.next())!=null;){if(!e){if(t=="/"&&!f)return;t=="["?f=!0:f&&t=="]"&&(f=!1)}e=!e&&t=="\\"}}var P,G;function p(r,e,t){return P=r,G=t,e}function _(r,e){var t=r.next();if(t=='"'||t=="'")return e.tokenize=Nr(t),e.tokenize(r,e);if(t=="."&&r.match(/^\d[\d_]*(?:[eE][+\-]?[\d_]+)?/))return p("number","number");if(t=="."&&r.match(".."))return p("spread","meta");if(/[\[\]{}\(\),;\:\.]/.test(t))return p(t);if(t=="="&&r.eat(">"))return p("=>","operator");if(t=="0"&&r.match(/^(?:x[\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/))return p("number","number");if(/\d/.test(t))return r.match(/^[\d_]*(?:n|(?:\.[\d_]*)?(?:[eE][+\-]?[\d_]+)?)?/),p("number","number");if(t=="/")return r.eat("*")?(e.tokenize=H,H(r,e)):r.eat("/")?(r.skipToEnd(),p("comment","comment")):ce(r,e,1)?(qr(r),r.match(/^\b(([gimyus])(?![gimyus]*\2))+\b/),p("regexp","string.special")):(r.eat("="),p("operator","operator",r.current()));if(t=="`")return e.tokenize=D,D(r,e);if(t=="#"&&r.peek()=="!")return r.skipToEnd(),p("meta","meta");if(t=="#"&&r.eatWhile(U))return p("variable","property");if(t=="<"&&r.match("!--")||t=="-"&&r.match("->")&&!/\S/.test(r.string.slice(0,r.start)))return r.skipToEnd(),p("comment","comment");if(hr.test(t))return(t!=">"||!e.lexical||e.lexical.type!=">")&&(r.eat("=")?(t=="!"||t=="=")&&r.eat("="):/[<>*+\-|&?]/.test(t)&&(r.eat(t),t==">"&&r.eat(t))),t=="?"&&r.eat(".")?p("."):p("operator","operator",r.current());if(U.test(t)){r.eatWhile(U);var f=r.current();if(e.lastType!="."){if(wr.propertyIsEnumerable(f)){var u=wr[f];return p(u.type,u.style,f)}if(f=="async"&&r.match(/^(\s|\/\*([^*]|\*(?!\/))*?\*\/)*[\[\(\w]/,!1))return p("async","keyword",f)}return p("variable","variable",f)}}function Nr(r){return function(e,t){var f=!1,u;if(ur&&e.peek()=="@"&&e.match($r))return t.tokenize=_,p("jsonld-keyword","meta");for(;(u=e.next())!=null&&!(u==r&&!f);)f=!f&&u=="\\";return f||(t.tokenize=_),p("string","string")}}function H(r,e){for(var t=!1,f;f=r.next();){if(f=="/"&&t){e.tokenize=_;break}t=f=="*"}return p("comment","comment")}function D(r,e){for(var t=!1,f;(f=r.next())!=null;){if(!t&&(f=="`"||f=="$"&&r.eat("{"))){e.tokenize=_;break}t=!t&&f=="\\"}return p("quasi","string.special",r.current())}var Br="([{}])";function ar(r,e){e.fatArrowAt&&(e.fatArrowAt=null);var t=r.string.indexOf("=>",r.start);if(!(t<0)){if(k){var f=/:\s*(?:\w+(?:<[^>]*>|\[\])?|\{[^}]*\})\s*$/.exec(r.string.slice(r.start,t));f&&(t=f.index)}for(var u=0,c=!1,m=t-1;m>=0;--m){var v=r.string.charAt(m),y=Br.indexOf(v);if(y>=0&&y<3){if(!u){++m;break}if(--u==0){v=="("&&(c=!0);break}}else if(y>=3&&y<6)++u;else if(U.test(v))c=!0;else if(/["'\/`]/.test(v))for(;;--m){if(m==0)return;var K=r.string.charAt(m-1);if(K==v&&r.string.charAt(m-2)!="\\"){m--;break}}else if(c&&!u){++m;break}}c&&!u&&(e.fatArrowAt=m)}}var Mr={atom:!0,number:!0,variable:!0,string:!0,regexp:!0,this:!0,import:!0,"jsonld-keyword":!0};function gr(r,e,t,f,u,c){this.indented=r,this.column=e,this.type=t,this.prev=u,this.info=c,f!=null&&(this.align=f)}function Fr(r,e){for(var t=r.localVars;t;t=t.next)if(t.name==e)return!0;for(var f=r.context;f;f=f.prev)for(var t=f.vars;t;t=t.next)if(t.name==e)return!0}function Jr(r,e,t,f,u){var c=r.cc;for(i.state=r,i.stream=u,i.marked=null,i.cc=c,i.style=e,r.lexical.hasOwnProperty("align")||(r.lexical.align=!0);;){var m=c.length?c.pop():pr?b:w;if(m(t,f)){for(;c.length&&c[c.length-1].lex;)c.pop()();return i.marked?i.marked:t=="variable"&&Fr(r,f)?"variableName.local":e}}}var i={state:null,marked:null,cc:null};function o(){for(var r=arguments.length-1;r>=0;r--)i.cc.push(arguments[r])}function n(){return o.apply(null,arguments),!0}function or(r,e){for(var t=e;t;t=t.next)if(t.name==r)return!0;return!1}function q(r){var e=i.state;if(i.marked="def",e.context){if(e.lexical.info=="var"&&e.context&&e.context.block){var t=xr(r,e.context);if(t!=null){e.context=t;return}}else if(!or(r,e.localVars)){e.localVars=new Q(r,e.localVars);return}}g.globalVars&&!or(r,e.globalVars)&&(e.globalVars=new Q(r,e.globalVars))}function xr(r,e){if(e)if(e.block){var t=xr(r,e.prev);return t?t==e.prev?e:new L(t,e.vars,!0):null}else return or(r,e.vars)?e:new L(e.prev,new Q(r,e.vars),!1);else return null}function X(r){return r=="public"||r=="private"||r=="protected"||r=="abstract"||r=="readonly"}function L(r,e,t){this.prev=r,this.vars=e,this.block=t}function Q(r,e){this.name=r,this.next=e}var Pr=new Q("this",new Q("arguments",null));function E(){i.state.context=new L(i.state.context,i.state.localVars,!1),i.state.localVars=Pr}function Y(){i.state.context=new L(i.state.context,i.state.localVars,!0),i.state.localVars=null}E.lex=Y.lex=!0;function T(){i.state.localVars=i.state.context.vars,i.state.context=i.state.context.prev}T.lex=!0;function s(r,e){var t=function(){var f=i.state,u=f.indented;if(f.lexical.type=="stat")u=f.lexical.indented;else for(var c=f.lexical;c&&c.type==")"&&c.align;c=c.prev)u=c.indented;f.lexical=new gr(u,i.stream.column(),r,null,f.lexical,e)};return t.lex=!0,t}function a(){var r=i.state;r.lexical.prev&&(r.lexical.type==")"&&(r.indented=r.lexical.indented),r.lexical=r.lexical.prev)}a.lex=!0;function l(r){function e(t){return t==r?n():r==";"||t=="}"||t==")"||t=="]"?o():n(e)}return e}function w(r,e){return r=="var"?n(s("vardef",e),mr,l(";"),a):r=="keyword a"?n(s("form"),sr,w,a):r=="keyword b"?n(s("form"),w,a):r=="keyword d"?i.stream.match(/^\s*$/,!1)?n():n(s("stat"),N,l(";"),a):r=="debugger"?n(l(";")):r=="{"?n(s("}"),Y,rr,a,T):r==";"?n():r=="if"?(i.state.lexical.info=="else"&&i.state.cc[i.state.cc.length-1]==a&&i.state.cc.pop()(),n(s("form"),sr,w,a,jr)):r=="function"?n(z):r=="for"?n(s("form"),Y,Sr,w,T,a):r=="class"||k&&e=="interface"?(i.marked="keyword",n(s("form",r=="class"?r:e),_r,a)):r=="variable"?k&&e=="declare"?(i.marked="keyword",n(w)):k&&(e=="module"||e=="enum"||e=="type")&&i.stream.match(/^\s*\w/,!1)?(i.marked="keyword",e=="enum"?n(Or):e=="type"?n(zr,l("operator"),d,l(";")):n(s("form"),V,l("{"),s("}"),rr,a,a)):k&&e=="namespace"?(i.marked="keyword",n(s("form"),b,w,a)):k&&e=="abstract"?(i.marked="keyword",n(w)):n(s("stat"),Kr):r=="switch"?n(s("form"),sr,l("{"),s("}","switch"),Y,rr,a,a,T):r=="case"?n(b,l(":")):r=="default"?n(l(":")):r=="catch"?n(s("form"),E,Dr,w,a,T):r=="export"?n(s("stat"),fe,a):r=="import"?n(s("stat"),ue,a):r=="async"?n(w):e=="@"?n(b,w):o(s("stat"),b,l(";"),a)}function Dr(r){if(r=="(")return n($,l(")"))}function b(r,e){return vr(r,e,!1)}function x(r,e){return vr(r,e,!0)}function sr(r){return r!="("?o():n(s(")"),N,l(")"),a)}function vr(r,e,t){if(i.state.fatArrowAt==i.stream.start){var f=t?Tr:yr;if(r=="(")return n(E,s(")"),h($,")"),a,l("=>"),f,T);if(r=="variable")return o(E,V,l("=>"),f,T)}var u=t?B:I;return Mr.hasOwnProperty(r)?n(u):r=="function"?n(z,u):r=="class"||k&&e=="interface"?(i.marked="keyword",n(s("form"),ie,a)):r=="keyword c"||r=="async"?n(t?x:b):r=="("?n(s(")"),N,l(")"),a,u):r=="operator"||r=="spread"?n(t?x:b):r=="["?n(s("]"),oe,a,u):r=="{"?R(C,"}",null,u):r=="quasi"?o(Z,u):r=="new"?n(Qr(t)):n()}function N(r){return r.match(/[;\}\)\],]/)?o():o(b)}function I(r,e){return r==","?n(N):B(r,e,!1)}function B(r,e,t){var f=t==!1?I:B,u=t==!1?b:x;if(r=="=>")return n(E,t?Tr:yr,T);if(r=="operator")return/\+\+|--/.test(e)||k&&e=="!"?n(f):k&&e=="<"&&i.stream.match(/^([^<>]|<[^<>]*>)*>\s*\(/,!1)?n(s(">"),h(d,">"),a,f):e=="?"?n(b,l(":"),u):n(u);if(r=="quasi")return o(Z,f);if(r!=";"){if(r=="(")return R(x,")","call",f);if(r==".")return n(Ur,f);if(r=="[")return n(s("]"),N,l("]"),a,f);if(k&&e=="as")return i.marked="keyword",n(d,f);if(r=="regexp")return i.state.lastType=i.marked="operator",i.stream.backUp(i.stream.pos-i.stream.start-1),n(u)}}function Z(r,e){return r!="quasi"?o():e.slice(e.length-2)!="${"?n(Z):n(N,Lr)}function Lr(r){if(r=="}")return i.marked="string.special",i.state.tokenize=D,n(Z)}function yr(r){return ar(i.stream,i.state),o(r=="{"?w:b)}function Tr(r){return ar(i.stream,i.state),o(r=="{"?w:x)}function Qr(r){return function(e){return e=="."?n(r?Wr:Rr):e=="variable"&&k?n(Cr,r?B:I):o(r?x:b)}}function Rr(r,e){if(e=="target")return i.marked="keyword",n(I)}function Wr(r,e){if(e=="target")return i.marked="keyword",n(B)}function Kr(r){return r==":"?n(a,w):o(I,l(";"),a)}function Ur(r){if(r=="variable")return i.marked="property",n()}function C(r,e){if(r=="async")return i.marked="property",n(C);if(r=="variable"||i.style=="keyword"){if(i.marked="property",e=="get"||e=="set")return n(Gr);var t;return k&&i.state.fatArrowAt==i.stream.start&&(t=i.stream.match(/^\s*:\s*/,!1))&&(i.state.fatArrowAt=i.stream.pos+t[0].length),n(O)}else{if(r=="number"||r=="string")return i.marked=ur?"property":i.style+" property",n(O);if(r=="jsonld-keyword")return n(O);if(k&&X(e))return i.marked="keyword",n(C);if(r=="[")return n(b,M,l("]"),O);if(r=="spread")return n(x,O);if(e=="*")return i.marked="keyword",n(C);if(r==":")return o(O)}}function Gr(r){return r!="variable"?o(O):(i.marked="property",n(z))}function O(r){if(r==":")return n(x);if(r=="(")return o(z)}function h(r,e,t){function f(u,c){if(t?t.indexOf(u)>-1:u==","){var m=i.state.lexical;return m.info=="call"&&(m.pos=(m.pos||0)+1),n(function(v,y){return v==e||y==e?o():o(r)},f)}return u==e||c==e?n():t&&t.indexOf(";")>-1?o(r):n(l(e))}return function(u,c){return u==e||c==e?n():o(r,f)}}function R(r,e,t){for(var f=3;f<arguments.length;f++)i.cc.push(arguments[f]);return n(s(e,t),h(r,e),a)}function rr(r){return r=="}"?n():o(w,rr)}function M(r,e){if(k){if(r==":")return n(d);if(e=="?")return n(M)}}function Hr(r,e){if(k&&(r==":"||e=="in"))return n(d)}function Vr(r){if(k&&r==":")return i.stream.match(/^\s*\w+\s+is\b/,!1)?n(b,Xr,d):n(d)}function Xr(r,e){if(e=="is")return i.marked="keyword",n()}function d(r,e){if(e=="keyof"||e=="typeof"||e=="infer"||e=="readonly")return i.marked="keyword",n(e=="typeof"?x:d);if(r=="variable"||e=="void")return i.marked="type",n(A);if(e=="|"||e=="&")return n(d);if(r=="string"||r=="number"||r=="atom")return n(A);if(r=="[")return n(s("]"),h(d,"]",","),a,A);if(r=="{")return n(s("}"),lr,a,A);if(r=="(")return n(h(dr,")"),Yr,A);if(r=="<")return n(h(d,">"),d);if(r=="quasi")return o(cr,A)}function Yr(r){if(r=="=>")return n(d)}function lr(r){return r.match(/[\}\)\]]/)?n():r==","||r==";"?n(lr):o(W,lr)}function W(r,e){if(r=="variable"||i.style=="keyword")return i.marked="property",n(W);if(e=="?"||r=="number"||r=="string")return n(W);if(r==":")return n(d);if(r=="[")return n(l("variable"),Hr,l("]"),W);if(r=="(")return o(J,W);if(!r.match(/[;\}\)\],]/))return n()}function cr(r,e){return r!="quasi"?o():e.slice(e.length-2)!="${"?n(cr):n(d,Zr)}function Zr(r){if(r=="}")return i.marked="string.special",i.state.tokenize=D,n(cr)}function dr(r,e){return r=="variable"&&i.stream.match(/^\s*[?:]/,!1)||e=="?"?n(dr):r==":"?n(d):r=="spread"?n(dr):o(d)}function A(r,e){if(e=="<")return n(s(">"),h(d,">"),a,A);if(e=="|"||r=="."||e=="&")return n(d);if(r=="[")return n(d,l("]"),A);if(e=="extends"||e=="implements")return i.marked="keyword",n(d);if(e=="?")return n(d,l(":"),d)}function Cr(r,e){if(e=="<")return n(s(">"),h(d,">"),a,A)}function er(){return o(d,re)}function re(r,e){if(e=="=")return n(d)}function mr(r,e){return e=="enum"?(i.marked="keyword",n(Or)):o(V,M,S,ne)}function V(r,e){if(k&&X(e))return i.marked="keyword",n(V);if(r=="variable")return q(e),n();if(r=="spread")return n(V);if(r=="[")return R(ee,"]");if(r=="{")return R(Ar,"}")}function Ar(r,e){return r=="variable"&&!i.stream.match(/^\s*:/,!1)?(q(e),n(S)):(r=="variable"&&(i.marked="property"),r=="spread"?n(V):r=="}"?o():r=="["?n(b,l("]"),l(":"),Ar):n(l(":"),V,S))}function ee(){return o(V,S)}function S(r,e){if(e=="=")return n(x)}function ne(r){if(r==",")return n(mr)}function jr(r,e){if(r=="keyword b"&&e=="else")return n(s("form","else"),w,a)}function Sr(r,e){if(e=="await")return n(Sr);if(r=="(")return n(s(")"),te,a)}function te(r){return r=="var"?n(mr,F):r=="variable"?n(F):o(F)}function F(r,e){return r==")"?n():r==";"?n(F):e=="in"||e=="of"?(i.marked="keyword",n(b,F)):o(b,F)}function z(r,e){if(e=="*")return i.marked="keyword",n(z);if(r=="variable")return q(e),n(z);if(r=="(")return n(E,s(")"),h($,")"),a,Vr,w,T);if(k&&e=="<")return n(s(">"),h(er,">"),a,z)}function J(r,e){if(e=="*")return i.marked="keyword",n(J);if(r=="variable")return q(e),n(J);if(r=="(")return n(E,s(")"),h($,")"),a,Vr,T);if(k&&e=="<")return n(s(">"),h(er,">"),a,J)}function zr(r,e){if(r=="keyword"||r=="variable")return i.marked="type",n(zr);if(e=="<")return n(s(">"),h(er,">"),a)}function $(r,e){return e=="@"&&n(b,$),r=="spread"?n($):k&&X(e)?(i.marked="keyword",n($)):k&&r=="this"?n(M,S):o(V,M,S)}function ie(r,e){return r=="variable"?_r(r,e):nr(r,e)}function _r(r,e){if(r=="variable")return q(e),n(nr)}function nr(r,e){if(e=="<")return n(s(">"),h(er,">"),a,nr);if(e=="extends"||e=="implements"||k&&r==",")return e=="implements"&&(i.marked="keyword"),n(k?d:b,nr);if(r=="{")return n(s("}"),j,a)}function j(r,e){if(r=="async"||r=="variable"&&(e=="static"||e=="get"||e=="set"||k&&X(e))&&i.stream.match(/^\s+#?[\w$\xa1-\uffff]/,!1))return i.marked="keyword",n(j);if(r=="variable"||i.style=="keyword")return i.marked="property",n(tr,j);if(r=="number"||r=="string")return n(tr,j);if(r=="[")return n(b,M,l("]"),tr,j);if(e=="*")return i.marked="keyword",n(j);if(k&&r=="(")return o(J,j);if(r==";"||r==",")return n(j);if(r=="}")return n();if(e=="@")return n(b,j)}function tr(r,e){if(e=="!"||e=="?")return n(tr);if(r==":")return n(d,S);if(e=="=")return n(x);var t=i.state.lexical.prev,f=t&&t.info=="interface";return o(f?J:z)}function fe(r,e){return e=="*"?(i.marked="keyword",n(kr,l(";"))):e=="default"?(i.marked="keyword",n(b,l(";"))):r=="{"?n(h(Er,"}"),kr,l(";")):o(w)}function Er(r,e){if(e=="as")return i.marked="keyword",n(l("variable"));if(r=="variable")return o(x,Er)}function ue(r){return r=="string"?n():r=="("?o(b):r=="."?o(I):o(ir,Ir,kr)}function ir(r,e){return r=="{"?R(ir,"}"):(r=="variable"&&q(e),e=="*"&&(i.marked="keyword"),n(ae))}function Ir(r){if(r==",")return n(ir,Ir)}function ae(r,e){if(e=="as")return i.marked="keyword",n(ir)}function kr(r,e){if(e=="from")return i.marked="keyword",n(b)}function oe(r){return r=="]"?n():o(h(x,"]"))}function Or(){return o(s("form"),V,l("{"),s("}"),h(se,"}"),a,a)}function se(){return o(V,S)}function le(r,e){return r.lastType=="operator"||r.lastType==","||hr.test(e.charAt(0))||/[,.]/.test(e.charAt(0))}function ce(r,e,t){return e.tokenize==_&&/^(?:operator|sof|keyword [bcd]|case|new|export|default|spread|[\[{}\(,;:]|=>)$/.test(e.lastType)||e.lastType=="quasi"&&/\{\s*$/.test(r.string.slice(0,r.pos-t))}return{name:g.name,startState:function(r){var e={tokenize:_,lastType:"sof",cc:[],lexical:new gr(-r,0,"block",!1),localVars:g.localVars,context:g.localVars&&new L(null,null,!1),indented:0};return g.globalVars&&typeof g.globalVars=="object"&&(e.globalVars=g.globalVars),e},token:function(r,e){if(r.sol()&&(e.lexical.hasOwnProperty("align")||(e.lexical.align=!1),e.indented=r.indentation(),ar(r,e)),e.tokenize!=H&&r.eatSpace())return null;var t=e.tokenize(r,e);return P=="comment"?t:(e.lastType=P=="operator"&&(G=="++"||G=="--")?"incdec":P,Jr(e,t,P,G,r))},indent:function(r,e,t){if(r.tokenize==H||r.tokenize==D)return null;if(r.tokenize!=_)return 0;var f=e&&e.charAt(0),u=r.lexical,c;if(!/^\s*else\b/.test(e))for(var m=r.cc.length-1;m>=0;--m){var v=r.cc[m];if(v==a)u=u.prev;else if(v!=jr&&v!=T)break}for(;(u.type=="stat"||u.type=="form")&&(f=="}"||(c=r.cc[r.cc.length-1])&&(c==I||c==B)&&!/^[,\.=+\-*:?[\(]/.test(e));)u=u.prev;br&&u.type==")"&&u.prev.type=="stat"&&(u=u.prev);var y=u.type,K=f==y;return y=="vardef"?u.indented+(r.lastType=="operator"||r.lastType==","?u.info.length+1:0):y=="form"&&f=="{"?u.indented:y=="form"?u.indented+t.unit:y=="stat"?u.indented+(le(r,e)?br||t.unit:0):u.info=="switch"&&!K&&g.doubleIndentSwitch!=!1?u.indented+(/^(?:case|default)\b/.test(e)?t.unit:2*t.unit):u.align?u.column+(K?0:1):u.indented+(K?0:t.unit)},languageData:{indentOnInput:/^\s*(?:case .*?:|default:|\{|\})$/,commentTokens:pr?void 0:{line:"//",block:{open:"/*",close:"*/"}},closeBrackets:{brackets:["(","[","{","'",'"',"`"]},wordChars:"$"}}}const de=fr({name:"javascript"});fr({name:"json",json:!0});const me=fr({name:"json",jsonld:!0});fr({name:"typescript",typescript:!0});exports.javascript=de;exports.jsonld=me;
|
|
2
|
+
//# sourceMappingURL=javascript-DngSGg_0.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"javascript-DngSGg_0.js","sources":["../node_modules/@codemirror/legacy-modes/mode/javascript.js"],"sourcesContent":["function mkJavaScript(parserConfig) {\n var statementIndent = parserConfig.statementIndent;\n var jsonldMode = parserConfig.jsonld;\n var jsonMode = parserConfig.json || jsonldMode;\n var isTS = parserConfig.typescript;\n var wordRE = parserConfig.wordCharacters || /[\\w$\\xa1-\\uffff]/;\n\n // Tokenizer\n\n var keywords = function(){\n function kw(type) {return {type: type, style: \"keyword\"};}\n var A = kw(\"keyword a\"), B = kw(\"keyword b\"), C = kw(\"keyword c\"), D = kw(\"keyword d\");\n var operator = kw(\"operator\"), atom = {type: \"atom\", style: \"atom\"};\n\n return {\n \"if\": kw(\"if\"), \"while\": A, \"with\": A, \"else\": B, \"do\": B, \"try\": B, \"finally\": B,\n \"return\": D, \"break\": D, \"continue\": D, \"new\": kw(\"new\"), \"delete\": C, \"void\": C, \"throw\": C,\n \"debugger\": kw(\"debugger\"), \"var\": kw(\"var\"), \"const\": kw(\"var\"), \"let\": kw(\"var\"),\n \"function\": kw(\"function\"), \"catch\": kw(\"catch\"),\n \"for\": kw(\"for\"), \"switch\": kw(\"switch\"), \"case\": kw(\"case\"), \"default\": kw(\"default\"),\n \"in\": operator, \"typeof\": operator, \"instanceof\": operator,\n \"true\": atom, \"false\": atom, \"null\": atom, \"undefined\": atom, \"NaN\": atom, \"Infinity\": atom,\n \"this\": kw(\"this\"), \"class\": kw(\"class\"), \"super\": kw(\"atom\"),\n \"yield\": C, \"export\": kw(\"export\"), \"import\": kw(\"import\"), \"extends\": C,\n \"await\": C\n };\n }();\n\n var isOperatorChar = /[+\\-*&%=<>!?|~^@]/;\n var isJsonldKeyword = /^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)\"/;\n\n function readRegexp(stream) {\n var escaped = false, next, inSet = false;\n while ((next = stream.next()) != null) {\n if (!escaped) {\n if (next == \"/\" && !inSet) return;\n if (next == \"[\") inSet = true;\n else if (inSet && next == \"]\") inSet = false;\n }\n escaped = !escaped && next == \"\\\\\";\n }\n }\n\n // Used as scratch variables to communicate multiple values without\n // consing up tons of objects.\n var type, content;\n function ret(tp, style, cont) {\n type = tp; content = cont;\n return style;\n }\n function tokenBase(stream, state) {\n var ch = stream.next();\n if (ch == '\"' || ch == \"'\") {\n state.tokenize = tokenString(ch);\n return state.tokenize(stream, state);\n } else if (ch == \".\" && stream.match(/^\\d[\\d_]*(?:[eE][+\\-]?[\\d_]+)?/)) {\n return ret(\"number\", \"number\");\n } else if (ch == \".\" && stream.match(\"..\")) {\n return ret(\"spread\", \"meta\");\n } else if (/[\\[\\]{}\\(\\),;\\:\\.]/.test(ch)) {\n return ret(ch);\n } else if (ch == \"=\" && stream.eat(\">\")) {\n return ret(\"=>\", \"operator\");\n } else if (ch == \"0\" && stream.match(/^(?:x[\\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/)) {\n return ret(\"number\", \"number\");\n } else if (/\\d/.test(ch)) {\n stream.match(/^[\\d_]*(?:n|(?:\\.[\\d_]*)?(?:[eE][+\\-]?[\\d_]+)?)?/);\n return ret(\"number\", \"number\");\n } else if (ch == \"/\") {\n if (stream.eat(\"*\")) {\n state.tokenize = tokenComment;\n return tokenComment(stream, state);\n } else if (stream.eat(\"/\")) {\n stream.skipToEnd();\n return ret(\"comment\", \"comment\");\n } else if (expressionAllowed(stream, state, 1)) {\n readRegexp(stream);\n stream.match(/^\\b(([gimyus])(?![gimyus]*\\2))+\\b/);\n return ret(\"regexp\", \"string.special\");\n } else {\n stream.eat(\"=\");\n return ret(\"operator\", \"operator\", stream.current());\n }\n } else if (ch == \"`\") {\n state.tokenize = tokenQuasi;\n return tokenQuasi(stream, state);\n } else if (ch == \"#\" && stream.peek() == \"!\") {\n stream.skipToEnd();\n return ret(\"meta\", \"meta\");\n } else if (ch == \"#\" && stream.eatWhile(wordRE)) {\n return ret(\"variable\", \"property\")\n } else if (ch == \"<\" && stream.match(\"!--\") ||\n (ch == \"-\" && stream.match(\"->\") && !/\\S/.test(stream.string.slice(0, stream.start)))) {\n stream.skipToEnd()\n return ret(\"comment\", \"comment\")\n } else if (isOperatorChar.test(ch)) {\n if (ch != \">\" || !state.lexical || state.lexical.type != \">\") {\n if (stream.eat(\"=\")) {\n if (ch == \"!\" || ch == \"=\") stream.eat(\"=\")\n } else if (/[<>*+\\-|&?]/.test(ch)) {\n stream.eat(ch)\n if (ch == \">\") stream.eat(ch)\n }\n }\n if (ch == \"?\" && stream.eat(\".\")) return ret(\".\")\n return ret(\"operator\", \"operator\", stream.current());\n } else if (wordRE.test(ch)) {\n stream.eatWhile(wordRE);\n var word = stream.current()\n if (state.lastType != \".\") {\n if (keywords.propertyIsEnumerable(word)) {\n var kw = keywords[word]\n return ret(kw.type, kw.style, word)\n }\n if (word == \"async\" && stream.match(/^(\\s|\\/\\*([^*]|\\*(?!\\/))*?\\*\\/)*[\\[\\(\\w]/, false))\n return ret(\"async\", \"keyword\", word)\n }\n return ret(\"variable\", \"variable\", word)\n }\n }\n\n function tokenString(quote) {\n return function(stream, state) {\n var escaped = false, next;\n if (jsonldMode && stream.peek() == \"@\" && stream.match(isJsonldKeyword)){\n state.tokenize = tokenBase;\n return ret(\"jsonld-keyword\", \"meta\");\n }\n while ((next = stream.next()) != null) {\n if (next == quote && !escaped) break;\n escaped = !escaped && next == \"\\\\\";\n }\n if (!escaped) state.tokenize = tokenBase;\n return ret(\"string\", \"string\");\n };\n }\n\n function tokenComment(stream, state) {\n var maybeEnd = false, ch;\n while (ch = stream.next()) {\n if (ch == \"/\" && maybeEnd) {\n state.tokenize = tokenBase;\n break;\n }\n maybeEnd = (ch == \"*\");\n }\n return ret(\"comment\", \"comment\");\n }\n\n function tokenQuasi(stream, state) {\n var escaped = false, next;\n while ((next = stream.next()) != null) {\n if (!escaped && (next == \"`\" || next == \"$\" && stream.eat(\"{\"))) {\n state.tokenize = tokenBase;\n break;\n }\n escaped = !escaped && next == \"\\\\\";\n }\n return ret(\"quasi\", \"string.special\", stream.current());\n }\n\n var brackets = \"([{}])\";\n // This is a crude lookahead trick to try and notice that we're\n // parsing the argument patterns for a fat-arrow function before we\n // actually hit the arrow token. It only works if the arrow is on\n // the same line as the arguments and there's no strange noise\n // (comments) in between. Fallback is to only notice when we hit the\n // arrow, and not declare the arguments as locals for the arrow\n // body.\n function findFatArrow(stream, state) {\n if (state.fatArrowAt) state.fatArrowAt = null;\n var arrow = stream.string.indexOf(\"=>\", stream.start);\n if (arrow < 0) return;\n\n if (isTS) { // Try to skip TypeScript return type declarations after the arguments\n var m = /:\\s*(?:\\w+(?:<[^>]*>|\\[\\])?|\\{[^}]*\\})\\s*$/.exec(stream.string.slice(stream.start, arrow))\n if (m) arrow = m.index\n }\n\n var depth = 0, sawSomething = false;\n for (var pos = arrow - 1; pos >= 0; --pos) {\n var ch = stream.string.charAt(pos);\n var bracket = brackets.indexOf(ch);\n if (bracket >= 0 && bracket < 3) {\n if (!depth) { ++pos; break; }\n if (--depth == 0) { if (ch == \"(\") sawSomething = true; break; }\n } else if (bracket >= 3 && bracket < 6) {\n ++depth;\n } else if (wordRE.test(ch)) {\n sawSomething = true;\n } else if (/[\"'\\/`]/.test(ch)) {\n for (;; --pos) {\n if (pos == 0) return\n var next = stream.string.charAt(pos - 1)\n if (next == ch && stream.string.charAt(pos - 2) != \"\\\\\") { pos--; break }\n }\n } else if (sawSomething && !depth) {\n ++pos;\n break;\n }\n }\n if (sawSomething && !depth) state.fatArrowAt = pos;\n }\n\n // Parser\n\n var atomicTypes = {\"atom\": true, \"number\": true, \"variable\": true, \"string\": true,\n \"regexp\": true, \"this\": true, \"import\": true, \"jsonld-keyword\": true};\n\n function JSLexical(indented, column, type, align, prev, info) {\n this.indented = indented;\n this.column = column;\n this.type = type;\n this.prev = prev;\n this.info = info;\n if (align != null) this.align = align;\n }\n\n function inScope(state, varname) {\n for (var v = state.localVars; v; v = v.next)\n if (v.name == varname) return true;\n for (var cx = state.context; cx; cx = cx.prev) {\n for (var v = cx.vars; v; v = v.next)\n if (v.name == varname) return true;\n }\n }\n\n function parseJS(state, style, type, content, stream) {\n var cc = state.cc;\n // Communicate our context to the combinators.\n // (Less wasteful than consing up a hundred closures on every call.)\n cx.state = state; cx.stream = stream; cx.marked = null; cx.cc = cc; cx.style = style;\n\n if (!state.lexical.hasOwnProperty(\"align\"))\n state.lexical.align = true;\n\n while(true) {\n var combinator = cc.length ? cc.pop() : jsonMode ? expression : statement;\n if (combinator(type, content)) {\n while(cc.length && cc[cc.length - 1].lex)\n cc.pop()();\n if (cx.marked) return cx.marked;\n if (type == \"variable\" && inScope(state, content)) return \"variableName.local\";\n return style;\n }\n }\n }\n\n // Combinator utils\n\n var cx = {state: null, column: null, marked: null, cc: null};\n function pass() {\n for (var i = arguments.length - 1; i >= 0; i--) cx.cc.push(arguments[i]);\n }\n function cont() {\n pass.apply(null, arguments);\n return true;\n }\n function inList(name, list) {\n for (var v = list; v; v = v.next) if (v.name == name) return true\n return false;\n }\n function register(varname) {\n var state = cx.state;\n cx.marked = \"def\";\n if (state.context) {\n if (state.lexical.info == \"var\" && state.context && state.context.block) {\n // FIXME function decls are also not block scoped\n var newContext = registerVarScoped(varname, state.context)\n if (newContext != null) {\n state.context = newContext\n return\n }\n } else if (!inList(varname, state.localVars)) {\n state.localVars = new Var(varname, state.localVars)\n return\n }\n }\n // Fall through means this is global\n if (parserConfig.globalVars && !inList(varname, state.globalVars))\n state.globalVars = new Var(varname, state.globalVars)\n }\n function registerVarScoped(varname, context) {\n if (!context) {\n return null\n } else if (context.block) {\n var inner = registerVarScoped(varname, context.prev)\n if (!inner) return null\n if (inner == context.prev) return context\n return new Context(inner, context.vars, true)\n } else if (inList(varname, context.vars)) {\n return context\n } else {\n return new Context(context.prev, new Var(varname, context.vars), false)\n }\n }\n\n function isModifier(name) {\n return name == \"public\" || name == \"private\" || name == \"protected\" || name == \"abstract\" || name == \"readonly\"\n }\n\n // Combinators\n\n function Context(prev, vars, block) { this.prev = prev; this.vars = vars; this.block = block }\n function Var(name, next) { this.name = name; this.next = next }\n\n var defaultVars = new Var(\"this\", new Var(\"arguments\", null))\n function pushcontext() {\n cx.state.context = new Context(cx.state.context, cx.state.localVars, false)\n cx.state.localVars = defaultVars\n }\n function pushblockcontext() {\n cx.state.context = new Context(cx.state.context, cx.state.localVars, true)\n cx.state.localVars = null\n }\n pushcontext.lex = pushblockcontext.lex = true\n function popcontext() {\n cx.state.localVars = cx.state.context.vars\n cx.state.context = cx.state.context.prev\n }\n popcontext.lex = true\n function pushlex(type, info) {\n var result = function() {\n var state = cx.state, indent = state.indented;\n if (state.lexical.type == \"stat\") indent = state.lexical.indented;\n else for (var outer = state.lexical; outer && outer.type == \")\" && outer.align; outer = outer.prev)\n indent = outer.indented;\n state.lexical = new JSLexical(indent, cx.stream.column(), type, null, state.lexical, info);\n };\n result.lex = true;\n return result;\n }\n function poplex() {\n var state = cx.state;\n if (state.lexical.prev) {\n if (state.lexical.type == \")\")\n state.indented = state.lexical.indented;\n state.lexical = state.lexical.prev;\n }\n }\n poplex.lex = true;\n\n function expect(wanted) {\n function exp(type) {\n if (type == wanted) return cont();\n else if (wanted == \";\" || type == \"}\" || type == \")\" || type == \"]\") return pass();\n else return cont(exp);\n };\n return exp;\n }\n\n function statement(type, value) {\n if (type == \"var\") return cont(pushlex(\"vardef\", value), vardef, expect(\";\"), poplex);\n if (type == \"keyword a\") return cont(pushlex(\"form\"), parenExpr, statement, poplex);\n if (type == \"keyword b\") return cont(pushlex(\"form\"), statement, poplex);\n if (type == \"keyword d\") return cx.stream.match(/^\\s*$/, false) ? cont() : cont(pushlex(\"stat\"), maybeexpression, expect(\";\"), poplex);\n if (type == \"debugger\") return cont(expect(\";\"));\n if (type == \"{\") return cont(pushlex(\"}\"), pushblockcontext, block, poplex, popcontext);\n if (type == \";\") return cont();\n if (type == \"if\") {\n if (cx.state.lexical.info == \"else\" && cx.state.cc[cx.state.cc.length - 1] == poplex)\n cx.state.cc.pop()();\n return cont(pushlex(\"form\"), parenExpr, statement, poplex, maybeelse);\n }\n if (type == \"function\") return cont(functiondef);\n if (type == \"for\") return cont(pushlex(\"form\"), pushblockcontext, forspec, statement, popcontext, poplex);\n if (type == \"class\" || (isTS && value == \"interface\")) {\n cx.marked = \"keyword\"\n return cont(pushlex(\"form\", type == \"class\" ? type : value), className, poplex)\n }\n if (type == \"variable\") {\n if (isTS && value == \"declare\") {\n cx.marked = \"keyword\"\n return cont(statement)\n } else if (isTS && (value == \"module\" || value == \"enum\" || value == \"type\") && cx.stream.match(/^\\s*\\w/, false)) {\n cx.marked = \"keyword\"\n if (value == \"enum\") return cont(enumdef);\n else if (value == \"type\") return cont(typename, expect(\"operator\"), typeexpr, expect(\";\"));\n else return cont(pushlex(\"form\"), pattern, expect(\"{\"), pushlex(\"}\"), block, poplex, poplex)\n } else if (isTS && value == \"namespace\") {\n cx.marked = \"keyword\"\n return cont(pushlex(\"form\"), expression, statement, poplex)\n } else if (isTS && value == \"abstract\") {\n cx.marked = \"keyword\"\n return cont(statement)\n } else {\n return cont(pushlex(\"stat\"), maybelabel);\n }\n }\n if (type == \"switch\") return cont(pushlex(\"form\"), parenExpr, expect(\"{\"), pushlex(\"}\", \"switch\"), pushblockcontext,\n block, poplex, poplex, popcontext);\n if (type == \"case\") return cont(expression, expect(\":\"));\n if (type == \"default\") return cont(expect(\":\"));\n if (type == \"catch\") return cont(pushlex(\"form\"), pushcontext, maybeCatchBinding, statement, poplex, popcontext);\n if (type == \"export\") return cont(pushlex(\"stat\"), afterExport, poplex);\n if (type == \"import\") return cont(pushlex(\"stat\"), afterImport, poplex);\n if (type == \"async\") return cont(statement)\n if (value == \"@\") return cont(expression, statement)\n return pass(pushlex(\"stat\"), expression, expect(\";\"), poplex);\n }\n function maybeCatchBinding(type) {\n if (type == \"(\") return cont(funarg, expect(\")\"))\n }\n function expression(type, value) {\n return expressionInner(type, value, false);\n }\n function expressionNoComma(type, value) {\n return expressionInner(type, value, true);\n }\n function parenExpr(type) {\n if (type != \"(\") return pass()\n return cont(pushlex(\")\"), maybeexpression, expect(\")\"), poplex)\n }\n function expressionInner(type, value, noComma) {\n if (cx.state.fatArrowAt == cx.stream.start) {\n var body = noComma ? arrowBodyNoComma : arrowBody;\n if (type == \"(\") return cont(pushcontext, pushlex(\")\"), commasep(funarg, \")\"), poplex, expect(\"=>\"), body, popcontext);\n else if (type == \"variable\") return pass(pushcontext, pattern, expect(\"=>\"), body, popcontext);\n }\n\n var maybeop = noComma ? maybeoperatorNoComma : maybeoperatorComma;\n if (atomicTypes.hasOwnProperty(type)) return cont(maybeop);\n if (type == \"function\") return cont(functiondef, maybeop);\n if (type == \"class\" || (isTS && value == \"interface\")) { cx.marked = \"keyword\"; return cont(pushlex(\"form\"), classExpression, poplex); }\n if (type == \"keyword c\" || type == \"async\") return cont(noComma ? expressionNoComma : expression);\n if (type == \"(\") return cont(pushlex(\")\"), maybeexpression, expect(\")\"), poplex, maybeop);\n if (type == \"operator\" || type == \"spread\") return cont(noComma ? expressionNoComma : expression);\n if (type == \"[\") return cont(pushlex(\"]\"), arrayLiteral, poplex, maybeop);\n if (type == \"{\") return contCommasep(objprop, \"}\", null, maybeop);\n if (type == \"quasi\") return pass(quasi, maybeop);\n if (type == \"new\") return cont(maybeTarget(noComma));\n return cont();\n }\n function maybeexpression(type) {\n if (type.match(/[;\\}\\)\\],]/)) return pass();\n return pass(expression);\n }\n\n function maybeoperatorComma(type, value) {\n if (type == \",\") return cont(maybeexpression);\n return maybeoperatorNoComma(type, value, false);\n }\n function maybeoperatorNoComma(type, value, noComma) {\n var me = noComma == false ? maybeoperatorComma : maybeoperatorNoComma;\n var expr = noComma == false ? expression : expressionNoComma;\n if (type == \"=>\") return cont(pushcontext, noComma ? arrowBodyNoComma : arrowBody, popcontext);\n if (type == \"operator\") {\n if (/\\+\\+|--/.test(value) || isTS && value == \"!\") return cont(me);\n if (isTS && value == \"<\" && cx.stream.match(/^([^<>]|<[^<>]*>)*>\\s*\\(/, false))\n return cont(pushlex(\">\"), commasep(typeexpr, \">\"), poplex, me);\n if (value == \"?\") return cont(expression, expect(\":\"), expr);\n return cont(expr);\n }\n if (type == \"quasi\") { return pass(quasi, me); }\n if (type == \";\") return;\n if (type == \"(\") return contCommasep(expressionNoComma, \")\", \"call\", me);\n if (type == \".\") return cont(property, me);\n if (type == \"[\") return cont(pushlex(\"]\"), maybeexpression, expect(\"]\"), poplex, me);\n if (isTS && value == \"as\") { cx.marked = \"keyword\"; return cont(typeexpr, me) }\n if (type == \"regexp\") {\n cx.state.lastType = cx.marked = \"operator\"\n cx.stream.backUp(cx.stream.pos - cx.stream.start - 1)\n return cont(expr)\n }\n }\n function quasi(type, value) {\n if (type != \"quasi\") return pass();\n if (value.slice(value.length - 2) != \"${\") return cont(quasi);\n return cont(maybeexpression, continueQuasi);\n }\n function continueQuasi(type) {\n if (type == \"}\") {\n cx.marked = \"string.special\";\n cx.state.tokenize = tokenQuasi;\n return cont(quasi);\n }\n }\n function arrowBody(type) {\n findFatArrow(cx.stream, cx.state);\n return pass(type == \"{\" ? statement : expression);\n }\n function arrowBodyNoComma(type) {\n findFatArrow(cx.stream, cx.state);\n return pass(type == \"{\" ? statement : expressionNoComma);\n }\n function maybeTarget(noComma) {\n return function(type) {\n if (type == \".\") return cont(noComma ? targetNoComma : target);\n else if (type == \"variable\" && isTS) return cont(maybeTypeArgs, noComma ? maybeoperatorNoComma : maybeoperatorComma)\n else return pass(noComma ? expressionNoComma : expression);\n };\n }\n function target(_, value) {\n if (value == \"target\") { cx.marked = \"keyword\"; return cont(maybeoperatorComma); }\n }\n function targetNoComma(_, value) {\n if (value == \"target\") { cx.marked = \"keyword\"; return cont(maybeoperatorNoComma); }\n }\n function maybelabel(type) {\n if (type == \":\") return cont(poplex, statement);\n return pass(maybeoperatorComma, expect(\";\"), poplex);\n }\n function property(type) {\n if (type == \"variable\") {cx.marked = \"property\"; return cont();}\n }\n function objprop(type, value) {\n if (type == \"async\") {\n cx.marked = \"property\";\n return cont(objprop);\n } else if (type == \"variable\" || cx.style == \"keyword\") {\n cx.marked = \"property\";\n if (value == \"get\" || value == \"set\") return cont(getterSetter);\n var m // Work around fat-arrow-detection complication for detecting typescript typed arrow params\n if (isTS && cx.state.fatArrowAt == cx.stream.start && (m = cx.stream.match(/^\\s*:\\s*/, false)))\n cx.state.fatArrowAt = cx.stream.pos + m[0].length\n return cont(afterprop);\n } else if (type == \"number\" || type == \"string\") {\n cx.marked = jsonldMode ? \"property\" : (cx.style + \" property\");\n return cont(afterprop);\n } else if (type == \"jsonld-keyword\") {\n return cont(afterprop);\n } else if (isTS && isModifier(value)) {\n cx.marked = \"keyword\"\n return cont(objprop)\n } else if (type == \"[\") {\n return cont(expression, maybetype, expect(\"]\"), afterprop);\n } else if (type == \"spread\") {\n return cont(expressionNoComma, afterprop);\n } else if (value == \"*\") {\n cx.marked = \"keyword\";\n return cont(objprop);\n } else if (type == \":\") {\n return pass(afterprop)\n }\n }\n function getterSetter(type) {\n if (type != \"variable\") return pass(afterprop);\n cx.marked = \"property\";\n return cont(functiondef);\n }\n function afterprop(type) {\n if (type == \":\") return cont(expressionNoComma);\n if (type == \"(\") return pass(functiondef);\n }\n function commasep(what, end, sep) {\n function proceed(type, value) {\n if (sep ? sep.indexOf(type) > -1 : type == \",\") {\n var lex = cx.state.lexical;\n if (lex.info == \"call\") lex.pos = (lex.pos || 0) + 1;\n return cont(function(type, value) {\n if (type == end || value == end) return pass()\n return pass(what)\n }, proceed);\n }\n if (type == end || value == end) return cont();\n if (sep && sep.indexOf(\";\") > -1) return pass(what)\n return cont(expect(end));\n }\n return function(type, value) {\n if (type == end || value == end) return cont();\n return pass(what, proceed);\n };\n }\n function contCommasep(what, end, info) {\n for (var i = 3; i < arguments.length; i++)\n cx.cc.push(arguments[i]);\n return cont(pushlex(end, info), commasep(what, end), poplex);\n }\n function block(type) {\n if (type == \"}\") return cont();\n return pass(statement, block);\n }\n function maybetype(type, value) {\n if (isTS) {\n if (type == \":\") return cont(typeexpr);\n if (value == \"?\") return cont(maybetype);\n }\n }\n function maybetypeOrIn(type, value) {\n if (isTS && (type == \":\" || value == \"in\")) return cont(typeexpr)\n }\n function mayberettype(type) {\n if (isTS && type == \":\") {\n if (cx.stream.match(/^\\s*\\w+\\s+is\\b/, false)) return cont(expression, isKW, typeexpr)\n else return cont(typeexpr)\n }\n }\n function isKW(_, value) {\n if (value == \"is\") {\n cx.marked = \"keyword\"\n return cont()\n }\n }\n function typeexpr(type, value) {\n if (value == \"keyof\" || value == \"typeof\" || value == \"infer\" || value == \"readonly\") {\n cx.marked = \"keyword\"\n return cont(value == \"typeof\" ? expressionNoComma : typeexpr)\n }\n if (type == \"variable\" || value == \"void\") {\n cx.marked = \"type\"\n return cont(afterType)\n }\n if (value == \"|\" || value == \"&\") return cont(typeexpr)\n if (type == \"string\" || type == \"number\" || type == \"atom\") return cont(afterType);\n if (type == \"[\") return cont(pushlex(\"]\"), commasep(typeexpr, \"]\", \",\"), poplex, afterType)\n if (type == \"{\") return cont(pushlex(\"}\"), typeprops, poplex, afterType)\n if (type == \"(\") return cont(commasep(typearg, \")\"), maybeReturnType, afterType)\n if (type == \"<\") return cont(commasep(typeexpr, \">\"), typeexpr)\n if (type == \"quasi\") return pass(quasiType, afterType)\n }\n function maybeReturnType(type) {\n if (type == \"=>\") return cont(typeexpr)\n }\n function typeprops(type) {\n if (type.match(/[\\}\\)\\]]/)) return cont()\n if (type == \",\" || type == \";\") return cont(typeprops)\n return pass(typeprop, typeprops)\n }\n function typeprop(type, value) {\n if (type == \"variable\" || cx.style == \"keyword\") {\n cx.marked = \"property\"\n return cont(typeprop)\n } else if (value == \"?\" || type == \"number\" || type == \"string\") {\n return cont(typeprop)\n } else if (type == \":\") {\n return cont(typeexpr)\n } else if (type == \"[\") {\n return cont(expect(\"variable\"), maybetypeOrIn, expect(\"]\"), typeprop)\n } else if (type == \"(\") {\n return pass(functiondecl, typeprop)\n } else if (!type.match(/[;\\}\\)\\],]/)) {\n return cont()\n }\n }\n function quasiType(type, value) {\n if (type != \"quasi\") return pass();\n if (value.slice(value.length - 2) != \"${\") return cont(quasiType);\n return cont(typeexpr, continueQuasiType);\n }\n function continueQuasiType(type) {\n if (type == \"}\") {\n cx.marked = \"string.special\";\n cx.state.tokenize = tokenQuasi;\n return cont(quasiType);\n }\n }\n function typearg(type, value) {\n if (type == \"variable\" && cx.stream.match(/^\\s*[?:]/, false) || value == \"?\") return cont(typearg)\n if (type == \":\") return cont(typeexpr)\n if (type == \"spread\") return cont(typearg)\n return pass(typeexpr)\n }\n function afterType(type, value) {\n if (value == \"<\") return cont(pushlex(\">\"), commasep(typeexpr, \">\"), poplex, afterType)\n if (value == \"|\" || type == \".\" || value == \"&\") return cont(typeexpr)\n if (type == \"[\") return cont(typeexpr, expect(\"]\"), afterType)\n if (value == \"extends\" || value == \"implements\") { cx.marked = \"keyword\"; return cont(typeexpr) }\n if (value == \"?\") return cont(typeexpr, expect(\":\"), typeexpr)\n }\n function maybeTypeArgs(_, value) {\n if (value == \"<\") return cont(pushlex(\">\"), commasep(typeexpr, \">\"), poplex, afterType)\n }\n function typeparam() {\n return pass(typeexpr, maybeTypeDefault)\n }\n function maybeTypeDefault(_, value) {\n if (value == \"=\") return cont(typeexpr)\n }\n function vardef(_, value) {\n if (value == \"enum\") {cx.marked = \"keyword\"; return cont(enumdef)}\n return pass(pattern, maybetype, maybeAssign, vardefCont);\n }\n function pattern(type, value) {\n if (isTS && isModifier(value)) { cx.marked = \"keyword\"; return cont(pattern) }\n if (type == \"variable\") { register(value); return cont(); }\n if (type == \"spread\") return cont(pattern);\n if (type == \"[\") return contCommasep(eltpattern, \"]\");\n if (type == \"{\") return contCommasep(proppattern, \"}\");\n }\n function proppattern(type, value) {\n if (type == \"variable\" && !cx.stream.match(/^\\s*:/, false)) {\n register(value);\n return cont(maybeAssign);\n }\n if (type == \"variable\") cx.marked = \"property\";\n if (type == \"spread\") return cont(pattern);\n if (type == \"}\") return pass();\n if (type == \"[\") return cont(expression, expect(']'), expect(':'), proppattern);\n return cont(expect(\":\"), pattern, maybeAssign);\n }\n function eltpattern() {\n return pass(pattern, maybeAssign)\n }\n function maybeAssign(_type, value) {\n if (value == \"=\") return cont(expressionNoComma);\n }\n function vardefCont(type) {\n if (type == \",\") return cont(vardef);\n }\n function maybeelse(type, value) {\n if (type == \"keyword b\" && value == \"else\") return cont(pushlex(\"form\", \"else\"), statement, poplex);\n }\n function forspec(type, value) {\n if (value == \"await\") return cont(forspec);\n if (type == \"(\") return cont(pushlex(\")\"), forspec1, poplex);\n }\n function forspec1(type) {\n if (type == \"var\") return cont(vardef, forspec2);\n if (type == \"variable\") return cont(forspec2);\n return pass(forspec2)\n }\n function forspec2(type, value) {\n if (type == \")\") return cont()\n if (type == \";\") return cont(forspec2)\n if (value == \"in\" || value == \"of\") { cx.marked = \"keyword\"; return cont(expression, forspec2) }\n return pass(expression, forspec2)\n }\n function functiondef(type, value) {\n if (value == \"*\") {cx.marked = \"keyword\"; return cont(functiondef);}\n if (type == \"variable\") {register(value); return cont(functiondef);}\n if (type == \"(\") return cont(pushcontext, pushlex(\")\"), commasep(funarg, \")\"), poplex, mayberettype, statement, popcontext);\n if (isTS && value == \"<\") return cont(pushlex(\">\"), commasep(typeparam, \">\"), poplex, functiondef)\n }\n function functiondecl(type, value) {\n if (value == \"*\") {cx.marked = \"keyword\"; return cont(functiondecl);}\n if (type == \"variable\") {register(value); return cont(functiondecl);}\n if (type == \"(\") return cont(pushcontext, pushlex(\")\"), commasep(funarg, \")\"), poplex, mayberettype, popcontext);\n if (isTS && value == \"<\") return cont(pushlex(\">\"), commasep(typeparam, \">\"), poplex, functiondecl)\n }\n function typename(type, value) {\n if (type == \"keyword\" || type == \"variable\") {\n cx.marked = \"type\"\n return cont(typename)\n } else if (value == \"<\") {\n return cont(pushlex(\">\"), commasep(typeparam, \">\"), poplex)\n }\n }\n function funarg(type, value) {\n if (value == \"@\") cont(expression, funarg)\n if (type == \"spread\") return cont(funarg);\n if (isTS && isModifier(value)) { cx.marked = \"keyword\"; return cont(funarg); }\n if (isTS && type == \"this\") return cont(maybetype, maybeAssign)\n return pass(pattern, maybetype, maybeAssign);\n }\n function classExpression(type, value) {\n // Class expressions may have an optional name.\n if (type == \"variable\") return className(type, value);\n return classNameAfter(type, value);\n }\n function className(type, value) {\n if (type == \"variable\") {register(value); return cont(classNameAfter);}\n }\n function classNameAfter(type, value) {\n if (value == \"<\") return cont(pushlex(\">\"), commasep(typeparam, \">\"), poplex, classNameAfter)\n if (value == \"extends\" || value == \"implements\" || (isTS && type == \",\")) {\n if (value == \"implements\") cx.marked = \"keyword\";\n return cont(isTS ? typeexpr : expression, classNameAfter);\n }\n if (type == \"{\") return cont(pushlex(\"}\"), classBody, poplex);\n }\n function classBody(type, value) {\n if (type == \"async\" ||\n (type == \"variable\" &&\n (value == \"static\" || value == \"get\" || value == \"set\" || (isTS && isModifier(value))) &&\n cx.stream.match(/^\\s+#?[\\w$\\xa1-\\uffff]/, false))) {\n cx.marked = \"keyword\";\n return cont(classBody);\n }\n if (type == \"variable\" || cx.style == \"keyword\") {\n cx.marked = \"property\";\n return cont(classfield, classBody);\n }\n if (type == \"number\" || type == \"string\") return cont(classfield, classBody);\n if (type == \"[\")\n return cont(expression, maybetype, expect(\"]\"), classfield, classBody)\n if (value == \"*\") {\n cx.marked = \"keyword\";\n return cont(classBody);\n }\n if (isTS && type == \"(\") return pass(functiondecl, classBody)\n if (type == \";\" || type == \",\") return cont(classBody);\n if (type == \"}\") return cont();\n if (value == \"@\") return cont(expression, classBody)\n }\n function classfield(type, value) {\n if (value == \"!\" || value == \"?\") return cont(classfield)\n if (type == \":\") return cont(typeexpr, maybeAssign)\n if (value == \"=\") return cont(expressionNoComma)\n var context = cx.state.lexical.prev, isInterface = context && context.info == \"interface\"\n return pass(isInterface ? functiondecl : functiondef)\n }\n function afterExport(type, value) {\n if (value == \"*\") { cx.marked = \"keyword\"; return cont(maybeFrom, expect(\";\")); }\n if (value == \"default\") { cx.marked = \"keyword\"; return cont(expression, expect(\";\")); }\n if (type == \"{\") return cont(commasep(exportField, \"}\"), maybeFrom, expect(\";\"));\n return pass(statement);\n }\n function exportField(type, value) {\n if (value == \"as\") { cx.marked = \"keyword\"; return cont(expect(\"variable\")); }\n if (type == \"variable\") return pass(expressionNoComma, exportField);\n }\n function afterImport(type) {\n if (type == \"string\") return cont();\n if (type == \"(\") return pass(expression);\n if (type == \".\") return pass(maybeoperatorComma);\n return pass(importSpec, maybeMoreImports, maybeFrom);\n }\n function importSpec(type, value) {\n if (type == \"{\") return contCommasep(importSpec, \"}\");\n if (type == \"variable\") register(value);\n if (value == \"*\") cx.marked = \"keyword\";\n return cont(maybeAs);\n }\n function maybeMoreImports(type) {\n if (type == \",\") return cont(importSpec, maybeMoreImports)\n }\n function maybeAs(_type, value) {\n if (value == \"as\") { cx.marked = \"keyword\"; return cont(importSpec); }\n }\n function maybeFrom(_type, value) {\n if (value == \"from\") { cx.marked = \"keyword\"; return cont(expression); }\n }\n function arrayLiteral(type) {\n if (type == \"]\") return cont();\n return pass(commasep(expressionNoComma, \"]\"));\n }\n function enumdef() {\n return pass(pushlex(\"form\"), pattern, expect(\"{\"), pushlex(\"}\"), commasep(enummember, \"}\"), poplex, poplex)\n }\n function enummember() {\n return pass(pattern, maybeAssign);\n }\n\n function isContinuedStatement(state, textAfter) {\n return state.lastType == \"operator\" || state.lastType == \",\" ||\n isOperatorChar.test(textAfter.charAt(0)) ||\n /[,.]/.test(textAfter.charAt(0));\n }\n\n function expressionAllowed(stream, state, backUp) {\n return state.tokenize == tokenBase &&\n /^(?:operator|sof|keyword [bcd]|case|new|export|default|spread|[\\[{}\\(,;:]|=>)$/.test(state.lastType) ||\n (state.lastType == \"quasi\" && /\\{\\s*$/.test(stream.string.slice(0, stream.pos - (backUp || 0))))\n }\n\n // Interface\n\n return {\n name: parserConfig.name,\n\n startState: function(indentUnit) {\n var state = {\n tokenize: tokenBase,\n lastType: \"sof\",\n cc: [],\n lexical: new JSLexical(-indentUnit, 0, \"block\", false),\n localVars: parserConfig.localVars,\n context: parserConfig.localVars && new Context(null, null, false),\n indented: 0\n };\n if (parserConfig.globalVars && typeof parserConfig.globalVars == \"object\")\n state.globalVars = parserConfig.globalVars;\n return state;\n },\n\n token: function(stream, state) {\n if (stream.sol()) {\n if (!state.lexical.hasOwnProperty(\"align\"))\n state.lexical.align = false;\n state.indented = stream.indentation();\n findFatArrow(stream, state);\n }\n if (state.tokenize != tokenComment && stream.eatSpace()) return null;\n var style = state.tokenize(stream, state);\n if (type == \"comment\") return style;\n state.lastType = type == \"operator\" && (content == \"++\" || content == \"--\") ? \"incdec\" : type;\n return parseJS(state, style, type, content, stream);\n },\n\n indent: function(state, textAfter, cx) {\n if (state.tokenize == tokenComment || state.tokenize == tokenQuasi) return null;\n if (state.tokenize != tokenBase) return 0;\n var firstChar = textAfter && textAfter.charAt(0), lexical = state.lexical, top\n // Kludge to prevent 'maybelse' from blocking lexical scope pops\n if (!/^\\s*else\\b/.test(textAfter)) for (var i = state.cc.length - 1; i >= 0; --i) {\n var c = state.cc[i];\n if (c == poplex) lexical = lexical.prev;\n else if (c != maybeelse && c != popcontext) break;\n }\n while ((lexical.type == \"stat\" || lexical.type == \"form\") &&\n (firstChar == \"}\" || ((top = state.cc[state.cc.length - 1]) &&\n (top == maybeoperatorComma || top == maybeoperatorNoComma) &&\n !/^[,\\.=+\\-*:?[\\(]/.test(textAfter))))\n lexical = lexical.prev;\n if (statementIndent && lexical.type == \")\" && lexical.prev.type == \"stat\")\n lexical = lexical.prev;\n var type = lexical.type, closing = firstChar == type;\n\n if (type == \"vardef\") return lexical.indented + (state.lastType == \"operator\" || state.lastType == \",\" ? lexical.info.length + 1 : 0);\n else if (type == \"form\" && firstChar == \"{\") return lexical.indented;\n else if (type == \"form\") return lexical.indented + cx.unit;\n else if (type == \"stat\")\n return lexical.indented + (isContinuedStatement(state, textAfter) ? statementIndent || cx.unit : 0);\n else if (lexical.info == \"switch\" && !closing && parserConfig.doubleIndentSwitch != false)\n return lexical.indented + (/^(?:case|default)\\b/.test(textAfter) ? cx.unit : 2 * cx.unit);\n else if (lexical.align) return lexical.column + (closing ? 0 : 1);\n else return lexical.indented + (closing ? 0 : cx.unit);\n },\n\n languageData: {\n indentOnInput: /^\\s*(?:case .*?:|default:|\\{|\\})$/,\n commentTokens: jsonMode ? undefined : {line: \"//\", block: {open: \"/*\", close: \"*/\"}},\n closeBrackets: {brackets: [\"(\", \"[\", \"{\", \"'\", '\"', \"`\"]},\n wordChars: \"$\"\n }\n };\n};\n\nexport const javascript = mkJavaScript({name: \"javascript\"})\nexport const json = mkJavaScript({name: \"json\", json: true})\nexport const jsonld = mkJavaScript({name: \"json\", jsonld: true})\nexport const typescript = mkJavaScript({name: \"typescript\", typescript: true})\n"],"names":["mkJavaScript","parserConfig","statementIndent","jsonldMode","jsonMode","isTS","wordRE","keywords","kw","type","A","B","C","D","operator","atom","isOperatorChar","isJsonldKeyword","readRegexp","stream","escaped","next","inSet","content","ret","tp","style","cont","tokenBase","state","ch","tokenString","tokenComment","expressionAllowed","tokenQuasi","word","quote","maybeEnd","brackets","findFatArrow","arrow","m","depth","sawSomething","pos","bracket","atomicTypes","JSLexical","indented","column","align","prev","info","inScope","varname","v","cx","parseJS","cc","combinator","expression","statement","pass","i","inList","name","list","register","newContext","registerVarScoped","Var","context","inner","Context","isModifier","vars","block","defaultVars","pushcontext","pushblockcontext","popcontext","pushlex","result","indent","outer","poplex","expect","wanted","exp","value","vardef","parenExpr","maybeexpression","maybeelse","functiondef","forspec","className","enumdef","typename","typeexpr","pattern","maybelabel","maybeCatchBinding","afterExport","afterImport","funarg","expressionInner","expressionNoComma","noComma","body","arrowBodyNoComma","arrowBody","commasep","maybeop","maybeoperatorNoComma","maybeoperatorComma","classExpression","arrayLiteral","contCommasep","objprop","quasi","maybeTarget","me","expr","property","continueQuasi","targetNoComma","target","maybeTypeArgs","_","getterSetter","afterprop","maybetype","what","end","sep","proceed","lex","maybetypeOrIn","mayberettype","isKW","afterType","typeprops","typearg","maybeReturnType","quasiType","typeprop","functiondecl","continueQuasiType","typeparam","maybeTypeDefault","maybeAssign","vardefCont","eltpattern","proppattern","_type","forspec1","forspec2","classNameAfter","classBody","classfield","isInterface","maybeFrom","exportField","importSpec","maybeMoreImports","maybeAs","enummember","isContinuedStatement","textAfter","backUp","indentUnit","firstChar","lexical","top","c","closing","javascript","jsonld"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
var l = [
|
|
2
|
+
"and",
|
|
3
|
+
"as",
|
|
4
|
+
"block",
|
|
5
|
+
"endblock",
|
|
6
|
+
"by",
|
|
7
|
+
"cycle",
|
|
8
|
+
"debug",
|
|
9
|
+
"else",
|
|
10
|
+
"elif",
|
|
11
|
+
"extends",
|
|
12
|
+
"filter",
|
|
13
|
+
"endfilter",
|
|
14
|
+
"firstof",
|
|
15
|
+
"do",
|
|
16
|
+
"for",
|
|
17
|
+
"endfor",
|
|
18
|
+
"if",
|
|
19
|
+
"endif",
|
|
20
|
+
"ifchanged",
|
|
21
|
+
"endifchanged",
|
|
22
|
+
"ifequal",
|
|
23
|
+
"endifequal",
|
|
24
|
+
"ifnotequal",
|
|
25
|
+
"set",
|
|
26
|
+
"raw",
|
|
27
|
+
"endraw",
|
|
28
|
+
"endifnotequal",
|
|
29
|
+
"in",
|
|
30
|
+
"include",
|
|
31
|
+
"load",
|
|
32
|
+
"not",
|
|
33
|
+
"now",
|
|
34
|
+
"or",
|
|
35
|
+
"parsed",
|
|
36
|
+
"regroup",
|
|
37
|
+
"reversed",
|
|
38
|
+
"spaceless",
|
|
39
|
+
"call",
|
|
40
|
+
"endcall",
|
|
41
|
+
"macro",
|
|
42
|
+
"endmacro",
|
|
43
|
+
"endspaceless",
|
|
44
|
+
"ssi",
|
|
45
|
+
"templatetag",
|
|
46
|
+
"openblock",
|
|
47
|
+
"closeblock",
|
|
48
|
+
"openvariable",
|
|
49
|
+
"closevariable",
|
|
50
|
+
"without",
|
|
51
|
+
"context",
|
|
52
|
+
"openbrace",
|
|
53
|
+
"closebrace",
|
|
54
|
+
"opencomment",
|
|
55
|
+
"closecomment",
|
|
56
|
+
"widthratio",
|
|
57
|
+
"url",
|
|
58
|
+
"with",
|
|
59
|
+
"endwith",
|
|
60
|
+
"get_current_language",
|
|
61
|
+
"trans",
|
|
62
|
+
"endtrans",
|
|
63
|
+
"noop",
|
|
64
|
+
"blocktrans",
|
|
65
|
+
"endblocktrans",
|
|
66
|
+
"get_available_languages",
|
|
67
|
+
"get_current_language_bidi",
|
|
68
|
+
"pluralize",
|
|
69
|
+
"autoescape",
|
|
70
|
+
"endautoescape"
|
|
71
|
+
], c = /^[+\-*&%=<>!?|~^]/, f = /^[:\[\(\{]/, o = ["true", "false"], r = /^(\d[+\-\*\/])?\d+(\.\d+)?/;
|
|
72
|
+
l = new RegExp("((" + l.join(")|(") + "))\\b");
|
|
73
|
+
o = new RegExp("((" + o.join(")|(") + "))\\b");
|
|
74
|
+
function u(n, e) {
|
|
75
|
+
var i = n.peek();
|
|
76
|
+
if (e.incomment)
|
|
77
|
+
return n.skipTo("#}") ? (n.eatWhile(/\#|}/), e.incomment = !1) : n.skipToEnd(), "comment";
|
|
78
|
+
if (e.intag) {
|
|
79
|
+
if (e.operator) {
|
|
80
|
+
if (e.operator = !1, n.match(o))
|
|
81
|
+
return "atom";
|
|
82
|
+
if (n.match(r))
|
|
83
|
+
return "number";
|
|
84
|
+
}
|
|
85
|
+
if (e.sign) {
|
|
86
|
+
if (e.sign = !1, n.match(o))
|
|
87
|
+
return "atom";
|
|
88
|
+
if (n.match(r))
|
|
89
|
+
return "number";
|
|
90
|
+
}
|
|
91
|
+
if (e.instring)
|
|
92
|
+
return i == e.instring && (e.instring = !1), n.next(), "string";
|
|
93
|
+
if (i == "'" || i == '"')
|
|
94
|
+
return e.instring = i, n.next(), "string";
|
|
95
|
+
if (e.inbraces > 0 && i == ")")
|
|
96
|
+
n.next(), e.inbraces--;
|
|
97
|
+
else if (i == "(")
|
|
98
|
+
n.next(), e.inbraces++;
|
|
99
|
+
else if (e.inbrackets > 0 && i == "]")
|
|
100
|
+
n.next(), e.inbrackets--;
|
|
101
|
+
else if (i == "[")
|
|
102
|
+
n.next(), e.inbrackets++;
|
|
103
|
+
else {
|
|
104
|
+
if (!e.lineTag && (n.match(e.intag + "}") || n.eat("-") && n.match(e.intag + "}")))
|
|
105
|
+
return e.intag = !1, "tag";
|
|
106
|
+
if (n.match(c))
|
|
107
|
+
return e.operator = !0, "operator";
|
|
108
|
+
if (n.match(f))
|
|
109
|
+
e.sign = !0;
|
|
110
|
+
else {
|
|
111
|
+
if (n.column() == 1 && e.lineTag && n.match(l))
|
|
112
|
+
return "keyword";
|
|
113
|
+
if (n.eat(" ") || n.sol()) {
|
|
114
|
+
if (n.match(l))
|
|
115
|
+
return "keyword";
|
|
116
|
+
if (n.match(o))
|
|
117
|
+
return "atom";
|
|
118
|
+
if (n.match(r))
|
|
119
|
+
return "number";
|
|
120
|
+
n.sol() && n.next();
|
|
121
|
+
} else
|
|
122
|
+
n.next();
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
return "variable";
|
|
126
|
+
} else if (n.eat("{")) {
|
|
127
|
+
if (n.eat("#"))
|
|
128
|
+
return e.incomment = !0, n.skipTo("#}") ? (n.eatWhile(/\#|}/), e.incomment = !1) : n.skipToEnd(), "comment";
|
|
129
|
+
if (i = n.eat(/\{|%/))
|
|
130
|
+
return e.intag = i, e.inbraces = 0, e.inbrackets = 0, i == "{" && (e.intag = "}"), n.eat("-"), "tag";
|
|
131
|
+
} else if (n.eat("#")) {
|
|
132
|
+
if (n.peek() == "#")
|
|
133
|
+
return n.skipToEnd(), "comment";
|
|
134
|
+
if (!n.eol())
|
|
135
|
+
return e.intag = !0, e.lineTag = !0, e.inbraces = 0, e.inbrackets = 0, "tag";
|
|
136
|
+
}
|
|
137
|
+
n.next();
|
|
138
|
+
}
|
|
139
|
+
const a = {
|
|
140
|
+
name: "jinja2",
|
|
141
|
+
startState: function() {
|
|
142
|
+
return { tokenize: u, inbrackets: 0, inbraces: 0 };
|
|
143
|
+
},
|
|
144
|
+
token: function(n, e) {
|
|
145
|
+
var i = e.tokenize(n, e);
|
|
146
|
+
return n.eol() && e.lineTag && !e.instring && e.inbraces == 0 && e.inbrackets == 0 && (e.intag = !1, e.lineTag = !1), i;
|
|
147
|
+
},
|
|
148
|
+
languageData: {
|
|
149
|
+
commentTokens: { block: { open: "{#", close: "#}", line: "##" } }
|
|
150
|
+
}
|
|
151
|
+
};
|
|
152
|
+
export {
|
|
153
|
+
a as jinja2
|
|
154
|
+
};
|
|
155
|
+
//# sourceMappingURL=jinja2-DnB6dQmV.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jinja2-DnB6dQmV.mjs","sources":["../node_modules/@codemirror/legacy-modes/mode/jinja2.js"],"sourcesContent":["var keywords = [\"and\", \"as\", \"block\", \"endblock\", \"by\", \"cycle\", \"debug\", \"else\", \"elif\",\n \"extends\", \"filter\", \"endfilter\", \"firstof\", \"do\", \"for\",\n \"endfor\", \"if\", \"endif\", \"ifchanged\", \"endifchanged\",\n \"ifequal\", \"endifequal\", \"ifnotequal\", \"set\", \"raw\", \"endraw\",\n \"endifnotequal\", \"in\", \"include\", \"load\", \"not\", \"now\", \"or\",\n \"parsed\", \"regroup\", \"reversed\", \"spaceless\", \"call\", \"endcall\", \"macro\",\n \"endmacro\", \"endspaceless\", \"ssi\", \"templatetag\", \"openblock\",\n \"closeblock\", \"openvariable\", \"closevariable\", \"without\", \"context\",\n \"openbrace\", \"closebrace\", \"opencomment\",\n \"closecomment\", \"widthratio\", \"url\", \"with\", \"endwith\",\n \"get_current_language\", \"trans\", \"endtrans\", \"noop\", \"blocktrans\",\n \"endblocktrans\", \"get_available_languages\",\n \"get_current_language_bidi\", \"pluralize\", \"autoescape\", \"endautoescape\"],\n operator = /^[+\\-*&%=<>!?|~^]/,\n sign = /^[:\\[\\(\\{]/,\n atom = [\"true\", \"false\"],\n number = /^(\\d[+\\-\\*\\/])?\\d+(\\.\\d+)?/;\n\nkeywords = new RegExp(\"((\" + keywords.join(\")|(\") + \"))\\\\b\");\natom = new RegExp(\"((\" + atom.join(\")|(\") + \"))\\\\b\");\n\nfunction tokenBase (stream, state) {\n var ch = stream.peek();\n\n //Comment\n if (state.incomment) {\n if(!stream.skipTo(\"#}\")) {\n stream.skipToEnd();\n } else {\n stream.eatWhile(/\\#|}/);\n state.incomment = false;\n }\n return \"comment\";\n //Tag\n } else if (state.intag) {\n //After operator\n if(state.operator) {\n state.operator = false;\n if(stream.match(atom)) {\n return \"atom\";\n }\n if(stream.match(number)) {\n return \"number\";\n }\n }\n //After sign\n if(state.sign) {\n state.sign = false;\n if(stream.match(atom)) {\n return \"atom\";\n }\n if(stream.match(number)) {\n return \"number\";\n }\n }\n\n if(state.instring) {\n if(ch == state.instring) {\n state.instring = false;\n }\n stream.next();\n return \"string\";\n } else if(ch == \"'\" || ch == '\"') {\n state.instring = ch;\n stream.next();\n return \"string\";\n } else if (state.inbraces > 0 && ch ==\")\") {\n stream.next()\n state.inbraces--;\n }\n else if (ch == \"(\") {\n stream.next()\n state.inbraces++;\n }\n else if (state.inbrackets > 0 && ch ==\"]\") {\n stream.next()\n state.inbrackets--;\n }\n else if (ch == \"[\") {\n stream.next()\n state.inbrackets++;\n } else if (!state.lineTag && (stream.match(state.intag + \"}\") || stream.eat(\"-\") && stream.match(state.intag + \"}\"))) {\n state.intag = false;\n return \"tag\";\n } else if(stream.match(operator)) {\n state.operator = true;\n return \"operator\";\n } else if(stream.match(sign)) {\n state.sign = true;\n } else {\n if (stream.column() == 1 && state.lineTag && stream.match(keywords)) {\n //allow nospace after tag before the keyword\n return \"keyword\";\n }\n if(stream.eat(\" \") || stream.sol()) {\n if(stream.match(keywords)) {\n return \"keyword\";\n }\n if(stream.match(atom)) {\n return \"atom\";\n }\n if(stream.match(number)) {\n return \"number\";\n }\n if(stream.sol()) {\n stream.next();\n }\n } else {\n stream.next();\n }\n\n }\n return \"variable\";\n } else if (stream.eat(\"{\")) {\n if (stream.eat(\"#\")) {\n state.incomment = true;\n if(!stream.skipTo(\"#}\")) {\n stream.skipToEnd();\n } else {\n stream.eatWhile(/\\#|}/);\n state.incomment = false;\n }\n return \"comment\";\n //Open tag\n } else if (ch = stream.eat(/\\{|%/)) {\n //Cache close tag\n state.intag = ch;\n state.inbraces = 0;\n state.inbrackets = 0;\n if(ch == \"{\") {\n state.intag = \"}\";\n }\n stream.eat(\"-\");\n return \"tag\";\n }\n //Line statements\n } else if (stream.eat('#')) {\n if (stream.peek() == '#') {\n stream.skipToEnd();\n return \"comment\"\n }\n else if (!stream.eol()) {\n state.intag = true;\n state.lineTag = true;\n state.inbraces = 0;\n state.inbrackets = 0;\n return \"tag\";\n }\n }\n stream.next();\n};\n\nexport const jinja2 = {\n name: \"jinja2\",\n startState: function () {\n return {tokenize: tokenBase, inbrackets: 0, inbraces: 0};\n },\n token: function(stream, state) {\n var style = state.tokenize(stream, state);\n if (stream.eol() && state.lineTag && !state.instring && state.inbraces == 0 && state.inbrackets == 0) {\n //Close line statement at the EOL\n state.intag = false\n state.lineTag = false\n }\n return style;\n },\n languageData: {\n commentTokens: {block: {open: \"{#\", close: \"#}\", line: \"##\"}}\n }\n};\n"],"names":["keywords","operator","sign","atom","number","tokenBase","stream","state","ch","jinja2","style"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var l=["and","as","block","endblock","by","cycle","debug","else","elif","extends","filter","endfilter","firstof","do","for","endfor","if","endif","ifchanged","endifchanged","ifequal","endifequal","ifnotequal","set","raw","endraw","endifnotequal","in","include","load","not","now","or","parsed","regroup","reversed","spaceless","call","endcall","macro","endmacro","endspaceless","ssi","templatetag","openblock","closeblock","openvariable","closevariable","without","context","openbrace","closebrace","opencomment","closecomment","widthratio","url","with","endwith","get_current_language","trans","endtrans","noop","blocktrans","endblocktrans","get_available_languages","get_current_language_bidi","pluralize","autoescape","endautoescape"],c=/^[+\-*&%=<>!?|~^]/,f=/^[:\[\(\{]/,o=["true","false"],r=/^(\d[+\-\*\/])?\d+(\.\d+)?/;l=new RegExp("(("+l.join(")|(")+"))\\b");o=new RegExp("(("+o.join(")|(")+"))\\b");function u(n,e){var i=n.peek();if(e.incomment)return n.skipTo("#}")?(n.eatWhile(/\#|}/),e.incomment=!1):n.skipToEnd(),"comment";if(e.intag){if(e.operator){if(e.operator=!1,n.match(o))return"atom";if(n.match(r))return"number"}if(e.sign){if(e.sign=!1,n.match(o))return"atom";if(n.match(r))return"number"}if(e.instring)return i==e.instring&&(e.instring=!1),n.next(),"string";if(i=="'"||i=='"')return e.instring=i,n.next(),"string";if(e.inbraces>0&&i==")")n.next(),e.inbraces--;else if(i=="(")n.next(),e.inbraces++;else if(e.inbrackets>0&&i=="]")n.next(),e.inbrackets--;else if(i=="[")n.next(),e.inbrackets++;else{if(!e.lineTag&&(n.match(e.intag+"}")||n.eat("-")&&n.match(e.intag+"}")))return e.intag=!1,"tag";if(n.match(c))return e.operator=!0,"operator";if(n.match(f))e.sign=!0;else{if(n.column()==1&&e.lineTag&&n.match(l))return"keyword";if(n.eat(" ")||n.sol()){if(n.match(l))return"keyword";if(n.match(o))return"atom";if(n.match(r))return"number";n.sol()&&n.next()}else n.next()}}return"variable"}else if(n.eat("{")){if(n.eat("#"))return e.incomment=!0,n.skipTo("#}")?(n.eatWhile(/\#|}/),e.incomment=!1):n.skipToEnd(),"comment";if(i=n.eat(/\{|%/))return e.intag=i,e.inbraces=0,e.inbrackets=0,i=="{"&&(e.intag="}"),n.eat("-"),"tag"}else if(n.eat("#")){if(n.peek()=="#")return n.skipToEnd(),"comment";if(!n.eol())return e.intag=!0,e.lineTag=!0,e.inbraces=0,e.inbrackets=0,"tag"}n.next()}const a={name:"jinja2",startState:function(){return{tokenize:u,inbrackets:0,inbraces:0}},token:function(n,e){var i=e.tokenize(n,e);return n.eol()&&e.lineTag&&!e.instring&&e.inbraces==0&&e.inbrackets==0&&(e.intag=!1,e.lineTag=!1),i},languageData:{commentTokens:{block:{open:"{#",close:"#}",line:"##"}}}};exports.jinja2=a;
|
|
2
|
+
//# sourceMappingURL=jinja2-wbVbDTNi.js.map
|