prosemirror-codemirror-block 0.2.14 → 0.3.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 CHANGED
@@ -109,6 +109,7 @@ Interface for the settings used by this plugin.
109
109
  | redo | (state: EditorState, dispatch: (tr: Transaction) => void) => void | Redo provided by `prosemirror-history`. YJS uses a different one! |
110
110
  | theme | Extension[] | Insert codemirror theme here. Or any other extension you want! |
111
111
  | stopEvent | (e: Event) => boolean | Can be used to override stopEvent in NodeView. Can be used for custom drag handles for ex. |
112
+ | readOnly | boolean | Read only editor mode. Defaults to false |
112
113
 
113
114
  ### CSS & Styles
114
115
 
package/dist/index.d.ts CHANGED
@@ -5,7 +5,7 @@ import { codeBlockArrowHandlers } from "./utils";
5
5
  import { CodeBlockLanguages, LegacyLanguages } from "./languages";
6
6
  import { defaultSettings } from "./defaults";
7
7
  import languageLoaders, { legacyLanguageLoaders } from "./languageLoaders";
8
- export declare const codeMirrorBlockKey: PluginKey<any, any>;
9
- declare const codeMirrorBlockPlugin: (settings: CodeBlockSettings) => Plugin<any, any>;
8
+ export declare const codeMirrorBlockKey: PluginKey<any>;
9
+ declare const codeMirrorBlockPlugin: (settings: CodeBlockSettings) => Plugin<any>;
10
10
  export default codeMirrorBlockPlugin;
11
11
  export { codeMirrorBlockNodeView, codeBlockArrowHandlers, codeMirrorBlockPlugin, CodeBlockSettings, LanguageLoaders, CodeBlockLanguages, LegacyLanguages, defaultSettings, languageLoaders, legacyLanguageLoaders, };
package/dist/index.es.js CHANGED
@@ -1,15 +1 @@
1
- import{Selection as e,TextSelection as o,PluginKey as r,Plugin as t}from"prosemirror-state";import{lineNumbers as i,highlightActiveLineGutter as m}from"@codemirror/gutter";import{closeBrackets as d,closeBracketsKeymap as n}from"@codemirror/closebrackets";import{drawSelection as c,highlightActiveLine as a,EditorView as l,keymap as s}from"@codemirror/view";import{highlightSelectionMatches as p,selectNextOccurrence as f}from"@codemirror/search";import{foldGutter as h,foldKeymap as g}from"@codemirror/fold";import{indentOnInput as y}from"@codemirror/language";import{autocompletion as u,completionKeymap as v}from"@codemirror/autocomplete";import{defaultKeymap as k,indentWithTab as b}from"@codemirror/commands";import{commentKeymap as x}from"@codemirror/comment";import{defaultHighlightStyle as w}from"@codemirror/highlight";import{rectangularSelection as j}from"@codemirror/rectangular-selection";import{bracketMatching as q}from"@codemirror/matchbrackets";import{Compartment as S,EditorState as z}from"@codemirror/state";import{setBlockType as A,selectAll as E,exitCode as M}from"prosemirror-commands";import{StreamLanguage as C}from"@codemirror/stream-parser";
2
- /*! *****************************************************************************
3
- Copyright (c) Microsoft Corporation.
4
-
5
- Permission to use, copy, modify, and/or distribute this software for any
6
- purpose with or without fee is hereby granted.
7
-
8
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
9
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
10
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
11
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
- PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */function L(e,o,r,t){return new(r||(r=Promise))((function(i,m){function d(e){try{c(t.next(e))}catch(e){m(e)}}function n(e){try{c(t.throw(e))}catch(e){m(e)}}function c(e){var o;e.done?i(e.value):(o=e.value,o instanceof r?o:new r((function(e){e(o)}))).then(d,n)}c((t=t.apply(e,o||[])).next())}))}function N(e,o){if(e===o)return null;let r=0,t=e.length,i=o.length;for(;r<t&&e.charCodeAt(r)===o.charCodeAt(r);)r+=1;for(;t>r&&i>r&&e.charCodeAt(t-1)===o.charCodeAt(i-1);)t-=1,i-=1;return{from:r,to:t,text:o.slice(r,i)}}const O=(e,r,t)=>{if(!e.hasFocus)return;const i=((e,r,t)=>{const i=("function"==typeof t&&t()||0)+1,m=r.state.selection.main.from+i,d=r.state.selection.main.to+i;return o.create(e,m,d)})(r.state.doc,e,t);i.eq(r.state.selection)||r.dispatch(r.state.tr.setSelection(i))},D=(o,r,t,i,m)=>{const d=t.state.selection.main,n=t.state.doc.lineAt(d.from),c=t.state.doc.lines;if(d.to!==d.from||n.number!==(r<0?1:c)||"char"===o&&d.from!==(r<0?0:n.to)||"function"!=typeof m)return!1;i.focus();const a=i.state.doc.nodeAt(m());if(!a)return!1;const l=m()+(r<0?0:a.nodeSize),s=e.near(i.state.doc.resolve(l),r);return i.dispatch(i.state.tr.setSelection(s).scrollIntoView()),i.focus(),!0},T=(e,o)=>{const{selection:r}=o.state;return!(!r.main.empty||0!==r.main.from)&&(A(e.state.schema.nodes.paragraph)(e.state,e.dispatch),setTimeout((()=>e.focus()),20),!0)},W=(e,o,r,t)=>L(void 0,void 0,void 0,(function*(){var i,m;const d=yield null===(m=null===(i=r.languageLoaders)||void 0===i?void 0:i[e])||void 0===m?void 0:m.call(i);d&&o.dispatch({effects:t.reconfigure(d)})})),B=o=>(r,t,i)=>{if(r.selection.empty&&(null==i?void 0:i.endOfTextblock(o))){const i="left"===o||"up"===o?-1:1,{$head:m}=r.selection,d=e.near(r.doc.resolve(i>0?m.after():m.before()),i);if(d.$head&&"code_block"===d.$head.parent.type.name)return null==t||t(r.tr.setSelection(d)),!0}return!1},H={ArrowLeft:B("left"),ArrowRight:B("right"),ArrowUp:B("up"),ArrowDown:B("down")},R=e=>(o,r,t)=>{let A=o,C=!1;const L=document.createElement("div");L.className="codeblock-root";const B=new S,H=z.create({extensions:[i(),m(),h(),q(),d(),p(),u(),j(),c({cursorBlinkRate:1e3}),z.allowMultipleSelections.of(!0),a(),w.fallback,B.of([]),y(),l.domEventHandlers({blur(e,o){o.dispatch({selection:{anchor:0}})}}),s.of([{key:"Mod-d",run:f,preventDefault:!0},{key:"ArrowUp",run:e=>D("line",-1,e,r,t)},{key:"ArrowLeft",run:e=>D("char",-1,e,r,t)},{key:"ArrowDown",run:e=>D("line",1,e,r,t)},{key:"ArrowRight",run:e=>D("char",1,e,r,t)},{key:"Mod-z",run:()=>{var o;return(null===(o=e.undo)||void 0===o?void 0:o.call(e,r.state,r.dispatch))||!0},shift:()=>{var o;return(null===(o=e.redo)||void 0===o?void 0:o.call(e,r.state,r.dispatch))||!0}},{key:"Mod-y",run:()=>{var o;return(null===(o=e.redo)||void 0===o?void 0:o.call(e,r.state,r.dispatch))||!0}},{key:"Backspace",run:e=>T(r,e)},{key:"Mod-Backspace",run:e=>T(r,e)},{key:"Mod-a",run:()=>{const e=E(r.state,r.dispatch);return r.focus(),e}},{key:"Enter",run:e=>{const o=e.state.selection.main;return""===e.state.doc.line(e.state.doc.lines).text&&o.from===o.to&&o.from===e.state.doc.length&&(M(r.state,r.dispatch),r.focus(),!0)}},...k,...g,...n,...v,...x,b]),...e.theme?e.theme:[]],doc:A.textContent}),R=new l({state:H,dispatch:e=>{if(R.update([e]),!C){((e,o,r,t)=>{const i=N(o.textContent,e);if(i&&"function"==typeof r){const e=r()+1,o=t.state.tr.replaceWith(e+i.from,e+i.to,i.text?t.state.schema.text(i.text):null);t.dispatch(o)}})(e.state.toJSON().doc,A,t,r),O(R,r,t)}}});L.append(R.dom);const $=e.createSelect(e,L,A,r,t);return W(A.attrs.lang,R,e,B),{dom:L,selectNode(){R.focus()},stopEvent:o=>e.stopEvent(o,A,t,r,L),setSelection:(e,o)=>{R.focus(),O(R,r,t),C=!0,"function"==typeof t&&t(),R.dispatch({selection:{anchor:e,head:o}}),C=!1},update:o=>{if(o.type.name!==A.type.name)return!1;o.attrs.lang!==A.attrs.lang&&W(o.attrs.lang,R,e,B);const i=A;A=o;const m=N(R.state.doc.toString(),A.textContent);return m&&(C=!0,R.dispatch({changes:{from:m.from,to:m.to,insert:m.text},selection:{anchor:m.from+m.text.length}}),C=!1),e.updateSelect(e,L,o,r,t,i),!0},ignoreMutation:()=>!0,destroy:()=>{$()}}};var $,F;!function(e){e.javascript="javascript",e.html="html",e.css="css",e.sql="sql",e.python="python",e.rust="rust",e.xml="xml",e.json="json",e.markdown="markdown",e.java="java",e.cpp="cpp",e.lezer="lezer",e.php="php",e.wast="wast"}($||($={})),function(e){e.apl="apl",e.asciiarmor="asciiarmor",e.asn1="asn1",e.asterisk="asterisk",e.brainfuck="brainfuck",e.clike="clike",e.clojure="clojure",e.cmake="cmake",e.cobol="cobol",e.coffeescript="coffeescript",e.commonlisp="commonlisp",e.crystal="crystal",e.cypher="cypher",e.d="d",e.diff="diff",e.dockerfile="dockerfile",e.dtd="dtd",e.dylan="dylan",e.ebnf="ebnf",e.ecl="ecl",e.eiffel="eiffel",e.elm="elm",e.erlang="erlang",e.factor="factor",e.fcl="fcl",e.forth="forth",e.fortran="fortran",e.gas="gas",e.gherkin="gherkin",e.go="go",e.groovy="groovy",e.haskell="haskell",e.haxe="haxe",e.http="http",e.idl="idl",e.jinja2="jinja2",e.julia="julia",e.livescript="livescript",e.lua="lua",e.mathematica="mathematica",e.mbox="mbox",e.mirc="mirc",e.mllike="mllike",e.modelica="modelica",e.mscgen="mscgen",e.mumps="mumps",e.nginx="nginx",e.nsis="nsis",e.ntriples="ntriples",e.octave="octave",e.oz="oz",e.pascal="pascal",e.perl="perl",e.pig="pig",e.powershell="powershell",e.properties="properties",e.protobuf="protobuf",e.puppet="puppet",e.q="q",e.r="r",e.rpm="rpm",e.ruby="ruby",e.sas="sas",e.scheme="scheme",e.shell="shell",e.smalltalk="smalltalk",e.solr="solr",e.sparql="sparql",e.spreadsheet="spreadsheet",e.stex="stex",e.stylus="stylus",e.swift="swift",e.tcl="tcl",e.textile="textile",e.tiddlywiki="tiddlywiki",e.tiki="tiki",e.toml="toml",e.troff="troff",e.ttcn="ttcn",e.turtle="turtle",e.vb="vb",e.vbscript="vbscript",e.velocity="velocity",e.verilog="verilog",e.vhdl="vhdl",e.webidl="webidl",e.xquery="xquery",e.yacas="yacas",e.yaml="yaml",e.z80="z80"}(F||(F={}));const I={createSelect:(e,o,r,t,i)=>{var m;if(!e.languageLoaders)return()=>{};const{languageLoaders:d}=e,n=document.createElement("select");n.className="codeblock-select";const c=document.createElement("option");return c.value="none",c.textContent=(null===(m=e.languageNameMap)||void 0===m?void 0:m.none)||"none",n.append(c),Object.keys(d).sort().forEach((o=>{var r;if(e.languageWhitelist&&!e.languageWhitelist.includes(o))return;const t=document.createElement("option");t.value=o,t.textContent=(null===(r=e.languageNameMap)||void 0===r?void 0:r[o])||o,n.append(t)})),n.value=r.attrs.lang||"none",o.prepend(n),n.onchange=e=>L(void 0,void 0,void 0,(function*(){if(!(e.target instanceof HTMLSelectElement))return;const o=e.target.value;"function"==typeof i&&t.dispatch(t.state.tr.setNodeMarkup(i(),void 0,Object.assign(Object.assign({},r.attrs),{lang:o})))})),()=>{}},updateSelect:(e,o,r,t,i,m)=>{if(m.attrs.lang!==r.attrs.lang){const e=o.querySelector(".codeblock-select");if(!(e instanceof HTMLSelectElement))return;e.value=r.attrs.lang||"none"}},stopEvent:()=>!0},U={[$.cpp]:()=>import("@codemirror/lang-cpp").then((e=>e.cpp())),[$.css]:()=>import("@codemirror/lang-css").then((e=>e.css())),[$.html]:()=>import("@codemirror/lang-html").then((e=>e.html())),[$.php]:()=>import("@codemirror/lang-php").then((e=>e.php())),[$.sql]:()=>import("@codemirror/lang-sql").then((e=>e.sql())),[$.xml]:()=>import("@codemirror/lang-xml").then((e=>e.xml())),[$.javascript]:()=>import("@codemirror/lang-javascript").then((e=>e.javascript())),[$.java]:()=>import("@codemirror/lang-java").then((e=>e.java())),[$.json]:()=>import("@codemirror/lang-json").then((e=>e.json())),[$.lezer]:()=>import("@codemirror/lang-lezer").then((e=>e.lezer())),[$.markdown]:()=>import("@codemirror/lang-markdown").then((e=>e.markdown())),[$.python]:()=>import("@codemirror/lang-python").then((e=>e.python())),[$.rust]:()=>import("@codemirror/lang-rust").then((e=>e.rust())),[$.wast]:()=>import("@codemirror/lang-wast").then((e=>e.wast()))},V={[F.apl]:()=>import("@codemirror/legacy-modes/mode/apl").then((({apl:e})=>C.define(e))),[F.asciiarmor]:()=>import("@codemirror/legacy-modes/mode/asciiarmor").then((({asciiArmor:e})=>C.define(e))),[F.asn1]:()=>import("@codemirror/legacy-modes/mode/asn1").then((({asn1:e})=>C.define(e))),[F.asterisk]:()=>import("@codemirror/legacy-modes/mode/asterisk").then((({asterisk:e})=>C.define(e))),[F.brainfuck]:()=>import("@codemirror/legacy-modes/mode/brainfuck").then((({brainfuck:e})=>C.define(e))),[F.clike]:()=>import("@codemirror/legacy-modes/mode/clike").then((({clike:e})=>C.define(e))),[F.clojure]:()=>import("@codemirror/legacy-modes/mode/clojure").then((({clojure:e})=>C.define(e))),[F.cmake]:()=>import("@codemirror/legacy-modes/mode/cmake").then((({cmake:e})=>C.define(e))),[F.cobol]:()=>import("@codemirror/legacy-modes/mode/cobol").then((({cobol:e})=>C.define(e))),[F.coffeescript]:()=>import("@codemirror/legacy-modes/mode/coffeescript").then((({coffeeScript:e})=>C.define(e))),[F.commonlisp]:()=>import("@codemirror/legacy-modes/mode/commonlisp").then((({commonLisp:e})=>C.define(e))),[F.crystal]:()=>import("@codemirror/legacy-modes/mode/crystal").then((({crystal:e})=>C.define(e))),[F.cypher]:()=>import("@codemirror/legacy-modes/mode/cypher").then((({cypher:e})=>C.define(e))),[F.d]:()=>import("@codemirror/legacy-modes/mode/d").then((({d:e})=>C.define(e))),[F.diff]:()=>import("@codemirror/legacy-modes/mode/diff").then((({diff:e})=>C.define(e))),[F.dockerfile]:()=>import("@codemirror/legacy-modes/mode/dockerfile").then((({dockerFile:e})=>C.define(e))),[F.dtd]:()=>import("@codemirror/legacy-modes/mode/dtd").then((({dtd:e})=>C.define(e))),[F.dylan]:()=>import("@codemirror/legacy-modes/mode/dylan").then((({dylan:e})=>C.define(e))),[F.ebnf]:()=>import("@codemirror/legacy-modes/mode/ebnf").then((({ebnf:e})=>C.define(e))),[F.ecl]:()=>import("@codemirror/legacy-modes/mode/ecl").then((({ecl:e})=>C.define(e))),[F.eiffel]:()=>import("@codemirror/legacy-modes/mode/eiffel").then((({eiffel:e})=>C.define(e))),[F.elm]:()=>import("@codemirror/legacy-modes/mode/elm").then((({elm:e})=>C.define(e))),[F.erlang]:()=>import("@codemirror/legacy-modes/mode/erlang").then((({erlang:e})=>C.define(e))),[F.factor]:()=>import("@codemirror/legacy-modes/mode/factor").then((({factor:e})=>C.define(e))),[F.fcl]:()=>import("@codemirror/legacy-modes/mode/fcl").then((({fcl:e})=>C.define(e))),[F.forth]:()=>import("@codemirror/legacy-modes/mode/forth").then((({forth:e})=>C.define(e))),[F.fortran]:()=>import("@codemirror/legacy-modes/mode/fortran").then((({fortran:e})=>C.define(e))),[F.gas]:()=>import("@codemirror/legacy-modes/mode/gas").then((({gas:e})=>C.define(e))),[F.gherkin]:()=>import("@codemirror/legacy-modes/mode/gherkin").then((({gherkin:e})=>C.define(e))),[F.go]:()=>import("@codemirror/legacy-modes/mode/go").then((({go:e})=>C.define(e))),[F.groovy]:()=>import("@codemirror/legacy-modes/mode/groovy").then((({groovy:e})=>C.define(e))),[F.haskell]:()=>import("@codemirror/legacy-modes/mode/haskell").then((({haskell:e})=>C.define(e))),[F.haxe]:()=>import("@codemirror/legacy-modes/mode/haxe").then((({haxe:e})=>C.define(e))),[F.http]:()=>import("@codemirror/legacy-modes/mode/http").then((({http:e})=>C.define(e))),[F.idl]:()=>import("@codemirror/legacy-modes/mode/idl").then((({idl:e})=>C.define(e))),[F.jinja2]:()=>import("@codemirror/legacy-modes/mode/jinja2").then((({jinja2:e})=>C.define(e))),[F.julia]:()=>import("@codemirror/legacy-modes/mode/julia").then((({julia:e})=>C.define(e))),[F.livescript]:()=>import("@codemirror/legacy-modes/mode/livescript").then((({liveScript:e})=>C.define(e))),[F.lua]:()=>import("@codemirror/legacy-modes/mode/lua").then((({lua:e})=>C.define(e))),[F.mathematica]:()=>import("@codemirror/legacy-modes/mode/mathematica").then((({mathematica:e})=>C.define(e))),[F.mbox]:()=>import("@codemirror/legacy-modes/mode/mbox").then((({mbox:e})=>C.define(e))),[F.mirc]:()=>import("@codemirror/legacy-modes/mode/mirc").then((({mirc:e})=>C.define(e))),[F.mllike]:()=>import("@codemirror/legacy-modes/mode/mllike").then((({oCaml:e})=>C.define(e))),[F.modelica]:()=>import("@codemirror/legacy-modes/mode/modelica").then((({modelica:e})=>C.define(e))),[F.mscgen]:()=>import("@codemirror/legacy-modes/mode/mscgen").then((({mscgen:e})=>C.define(e))),[F.mumps]:()=>import("@codemirror/legacy-modes/mode/mumps").then((({mumps:e})=>C.define(e))),[F.nginx]:()=>import("@codemirror/legacy-modes/mode/nginx").then((({nginx:e})=>C.define(e))),[F.nsis]:()=>import("@codemirror/legacy-modes/mode/nsis").then((({nsis:e})=>C.define(e))),[F.ntriples]:()=>import("@codemirror/legacy-modes/mode/ntriples").then((({ntriples:e})=>C.define(e))),[F.octave]:()=>import("@codemirror/legacy-modes/mode/octave").then((({octave:e})=>C.define(e))),[F.oz]:()=>import("@codemirror/legacy-modes/mode/oz").then((({oz:e})=>C.define(e))),[F.pascal]:()=>import("@codemirror/legacy-modes/mode/pascal").then((({pascal:e})=>C.define(e))),[F.perl]:()=>import("@codemirror/legacy-modes/mode/perl").then((({perl:e})=>C.define(e))),[F.pig]:()=>import("@codemirror/legacy-modes/mode/pig").then((({pig:e})=>C.define(e))),[F.powershell]:()=>import("@codemirror/legacy-modes/mode/powershell").then((({powerShell:e})=>C.define(e))),[F.properties]:()=>import("@codemirror/legacy-modes/mode/properties").then((({properties:e})=>C.define(e))),[F.protobuf]:()=>import("@codemirror/legacy-modes/mode/protobuf").then((({protobuf:e})=>C.define(e))),[F.puppet]:()=>import("@codemirror/legacy-modes/mode/puppet").then((({puppet:e})=>C.define(e))),[F.q]:()=>import("@codemirror/legacy-modes/mode/q").then((({q:e})=>C.define(e))),[F.r]:()=>import("@codemirror/legacy-modes/mode/r").then((({r:e})=>C.define(e))),[F.rpm]:()=>import("@codemirror/legacy-modes/mode/rpm").then((({rpmSpec:e})=>C.define(e))),[F.ruby]:()=>import("@codemirror/legacy-modes/mode/ruby").then((({ruby:e})=>C.define(e))),[F.sas]:()=>import("@codemirror/legacy-modes/mode/sas").then((({sas:e})=>C.define(e))),[F.scheme]:()=>import("@codemirror/legacy-modes/mode/scheme").then((({scheme:e})=>C.define(e))),[F.shell]:()=>import("@codemirror/legacy-modes/mode/shell").then((({shell:e})=>C.define(e))),[F.smalltalk]:()=>import("@codemirror/legacy-modes/mode/smalltalk").then((({smalltalk:e})=>C.define(e))),[F.solr]:()=>import("@codemirror/legacy-modes/mode/solr").then((({solr:e})=>C.define(e))),[F.sparql]:()=>import("@codemirror/legacy-modes/mode/sparql").then((({sparql:e})=>C.define(e))),[F.spreadsheet]:()=>import("@codemirror/legacy-modes/mode/spreadsheet").then((({spreadsheet:e})=>C.define(e))),[F.stex]:()=>import("@codemirror/legacy-modes/mode/stex").then((({stex:e})=>C.define(e))),[F.stylus]:()=>import("@codemirror/legacy-modes/mode/stylus").then((({stylus:e})=>C.define(e))),[F.swift]:()=>import("@codemirror/legacy-modes/mode/swift").then((({swift:e})=>C.define(e))),[F.tcl]:()=>import("@codemirror/legacy-modes/mode/tcl").then((({tcl:e})=>C.define(e))),[F.textile]:()=>import("@codemirror/legacy-modes/mode/textile").then((({textile:e})=>C.define(e))),[F.tiddlywiki]:()=>import("@codemirror/legacy-modes/mode/tiddlywiki").then((({tiddlyWiki:e})=>C.define(e))),[F.tiki]:()=>import("@codemirror/legacy-modes/mode/tiki").then((({tiki:e})=>C.define(e))),[F.toml]:()=>import("@codemirror/legacy-modes/mode/toml").then((({toml:e})=>C.define(e))),[F.troff]:()=>import("@codemirror/legacy-modes/mode/troff").then((({troff:e})=>C.define(e))),[F.ttcn]:()=>import("@codemirror/legacy-modes/mode/ttcn").then((({ttcn:e})=>C.define(e))),[F.turtle]:()=>import("@codemirror/legacy-modes/mode/turtle").then((({turtle:e})=>C.define(e))),[F.vb]:()=>import("@codemirror/legacy-modes/mode/vb").then((({vb:e})=>C.define(e))),[F.vbscript]:()=>import("@codemirror/legacy-modes/mode/vbscript").then((({vbScript:e})=>C.define(e))),[F.velocity]:()=>import("@codemirror/legacy-modes/mode/velocity").then((({velocity:e})=>C.define(e))),[F.verilog]:()=>import("@codemirror/legacy-modes/mode/verilog").then((({verilog:e})=>C.define(e))),[F.vhdl]:()=>import("@codemirror/legacy-modes/mode/vhdl").then((({vhdl:e})=>C.define(e))),[F.webidl]:()=>import("@codemirror/legacy-modes/mode/webidl").then((({webIDL:e})=>C.define(e))),[F.xquery]:()=>import("@codemirror/legacy-modes/mode/xquery").then((({xQuery:e})=>C.define(e))),[F.yacas]:()=>import("@codemirror/legacy-modes/mode/yacas").then((({yacas:e})=>C.define(e))),[F.yaml]:()=>import("@codemirror/legacy-modes/mode/yaml").then((({yaml:e})=>C.define(e))),[F.z80]:()=>import("@codemirror/legacy-modes/mode/z80").then((({z80:e})=>C.define(e)))},_=new r("codemirror-block"),J=e=>new t({key:_,props:{nodeViews:{code_block:R(e)}}});export{$ as CodeBlockLanguages,F as LegacyLanguages,H as codeBlockArrowHandlers,_ as codeMirrorBlockKey,R as codeMirrorBlockNodeView,J as codeMirrorBlockPlugin,J as default,I as defaultSettings,U as languageLoaders,V as legacyLanguageLoaders};
1
+ import{Selection as e,TextSelection as o,PluginKey as r,Plugin as t}from"prosemirror-state";import{EditorView as i,lineNumbers as m,highlightActiveLineGutter as d,rectangularSelection as n,drawSelection as c,highlightActiveLine as a,keymap as l}from"@codemirror/view";import{highlightSelectionMatches as s,selectNextOccurrence as p}from"@codemirror/search";import{foldGutter as f,bracketMatching as h,syntaxHighlighting as g,defaultHighlightStyle as y,indentOnInput as u,foldKeymap as v,StreamLanguage as k}from"@codemirror/language";import{closeBrackets as b,autocompletion as x,closeBracketsKeymap as w,completionKeymap as j}from"@codemirror/autocomplete";import{defaultKeymap as q,indentWithTab as S}from"@codemirror/commands";import{Compartment as z,EditorState as A}from"@codemirror/state";import{setBlockType as E,selectAll as M,exitCode as C}from"prosemirror-commands";function L(e,o,r,t){return new(r||(r=Promise))((function(i,m){function d(e){try{c(t.next(e))}catch(e){m(e)}}function n(e){try{c(t.throw(e))}catch(e){m(e)}}function c(e){var o;e.done?i(e.value):(o=e.value,o instanceof r?o:new r((function(e){e(o)}))).then(d,n)}c((t=t.apply(e,o||[])).next())}))}function O(e,o){if(e===o)return null;let r=0,t=e.length,i=o.length;for(;r<t&&e.charCodeAt(r)===o.charCodeAt(r);)r+=1;for(;t>r&&i>r&&e.charCodeAt(t-1)===o.charCodeAt(i-1);)t-=1,i-=1;return{from:r,to:t,text:o.slice(r,i)}}const N=(e,r,t)=>{if(!e.hasFocus)return;const i=((e,r,t)=>{const i=("function"==typeof t&&t()||0)+1,m=r.state.selection.main.from+i,d=r.state.selection.main.to+i;return o.create(e,m,d)})(r.state.doc,e,t);i.eq(r.state.selection)||r.dispatch(r.state.tr.setSelection(i))},D=(o,r,t,i,m)=>{const d=t.state.selection.main,n=t.state.doc.lineAt(d.from),c=t.state.doc.lines;if(d.to!==d.from||n.number!==(r<0?1:c)||"char"===o&&d.from!==(r<0?0:n.to)||"function"!=typeof m)return!1;i.focus();const a=i.state.doc.nodeAt(m());if(!a)return!1;const l=m()+(r<0?0:a.nodeSize),s=e.near(i.state.doc.resolve(l),r);return i.dispatch(i.state.tr.setSelection(s).scrollIntoView()),i.focus(),!0},T=(e,o)=>{const{selection:r}=o.state;return!(!r.main.empty||0!==r.main.from)&&(E(e.state.schema.nodes.paragraph)(e.state,e.dispatch),setTimeout((()=>e.focus()),20),!0)},W=(e,o,r,t)=>L(void 0,void 0,void 0,(function*(){var i,m;const d=yield null===(m=null===(i=r.languageLoaders)||void 0===i?void 0:i[e])||void 0===m?void 0:m.call(i);d&&o.dispatch({effects:t.reconfigure(d)})})),B=o=>(r,t,i)=>{if(r.selection.empty&&(null==i?void 0:i.endOfTextblock(o))){const i="left"===o||"up"===o?-1:1,{$head:m}=r.selection,d=e.near(r.doc.resolve(i>0?m.after():m.before()),i);if(d.$head&&"code_block"===d.$head.parent.type.name)return null==t||t(r.tr.setSelection(d)),!0}return!1},H={ArrowLeft:B("left"),ArrowRight:B("right"),ArrowUp:B("up"),ArrowDown:B("down")},R=e=>(o,r,t)=>{let k=o,E=!1;const L=document.createElement("div");L.className="codeblock-root";const B=new z,H=A.create({extensions:[A.readOnly.of(e.readOnly),i.editable.of(!e.readOnly),m(),d(),f(),h(),b(),s(),x(),n(),c({cursorBlinkRate:1e3}),A.allowMultipleSelections.of(!0),a(),g(y,{fallback:!0}),B.of([]),u(),i.domEventHandlers({blur(e,o){o.dispatch({selection:{anchor:0}})}}),l.of([{key:"Mod-d",run:p,preventDefault:!0},{key:"ArrowUp",run:e=>D("line",-1,e,r,t)},{key:"ArrowLeft",run:e=>D("char",-1,e,r,t)},{key:"ArrowDown",run:e=>D("line",1,e,r,t)},{key:"ArrowRight",run:e=>D("char",1,e,r,t)},{key:"Mod-z",run:()=>{var o;return(null===(o=e.undo)||void 0===o?void 0:o.call(e,r.state,r.dispatch))||!0},shift:()=>{var o;return(null===(o=e.redo)||void 0===o?void 0:o.call(e,r.state,r.dispatch))||!0}},{key:"Mod-y",run:()=>{var o;return(null===(o=e.redo)||void 0===o?void 0:o.call(e,r.state,r.dispatch))||!0}},{key:"Backspace",run:e=>T(r,e)},{key:"Mod-Backspace",run:e=>T(r,e)},{key:"Mod-a",run:()=>{const e=M(r.state,r.dispatch);return r.focus(),e}},{key:"Enter",run:e=>{const o=e.state.selection.main;return""===e.state.doc.line(e.state.doc.lines).text&&o.from===o.to&&o.from===e.state.doc.length&&(C(r.state,r.dispatch),r.focus(),!0)}},...q,...v,...w,...j,S]),...e.theme?e.theme:[]],doc:k.textContent}),R=new i({state:H,dispatch:e=>{if(R.update([e]),!E){((e,o,r,t)=>{const i=O(o.textContent,e);if(i&&"function"==typeof r){const e=r()+1;let o=t.state.tr;i.text&&(o=o.replaceWith(e+i.from,e+i.to,t.state.schema.text(i.text))),t.dispatch(o)}})(e.state.toJSON().doc,k,t,r),N(R,r,t)}}});L.append(R.dom);const $=e.createSelect(e,L,k,r,t);return W(k.attrs.lang,R,e,B),{dom:L,selectNode(){R.focus()},stopEvent:o=>e.stopEvent(o,k,t,r,L),setSelection:(e,o)=>{R.focus(),N(R,r,t),E=!0,"function"==typeof t&&t(),R.dispatch({selection:{anchor:e,head:o}}),E=!1},update:o=>{if(o.type.name!==k.type.name)return!1;o.attrs.lang!==k.attrs.lang&&W(o.attrs.lang,R,e,B);const i=k;k=o;const m=O(R.state.doc.toString(),k.textContent);return m&&(E=!0,R.dispatch({changes:{from:m.from,to:m.to,insert:m.text},selection:{anchor:m.from+m.text.length}}),E=!1),e.updateSelect(e,L,o,r,t,i),!0},ignoreMutation:()=>!0,destroy:()=>{$()}}};var $,F;!function(e){e.javascript="javascript",e.html="html",e.css="css",e.sql="sql",e.python="python",e.rust="rust",e.xml="xml",e.json="json",e.markdown="markdown",e.java="java",e.cpp="cpp",e.lezer="lezer",e.php="php",e.wast="wast"}($||($={})),function(e){e.apl="apl",e.asciiarmor="asciiarmor",e.asn1="asn1",e.asterisk="asterisk",e.brainfuck="brainfuck",e.clike="clike",e.clojure="clojure",e.cmake="cmake",e.cobol="cobol",e.coffeescript="coffeescript",e.commonlisp="commonlisp",e.crystal="crystal",e.cypher="cypher",e.d="d",e.diff="diff",e.dockerfile="dockerfile",e.dtd="dtd",e.dylan="dylan",e.ebnf="ebnf",e.ecl="ecl",e.eiffel="eiffel",e.elm="elm",e.erlang="erlang",e.factor="factor",e.fcl="fcl",e.forth="forth",e.fortran="fortran",e.gas="gas",e.gherkin="gherkin",e.go="go",e.groovy="groovy",e.haskell="haskell",e.haxe="haxe",e.http="http",e.idl="idl",e.jinja2="jinja2",e.julia="julia",e.livescript="livescript",e.lua="lua",e.mathematica="mathematica",e.mbox="mbox",e.mirc="mirc",e.mllike="mllike",e.modelica="modelica",e.mscgen="mscgen",e.mumps="mumps",e.nginx="nginx",e.nsis="nsis",e.ntriples="ntriples",e.octave="octave",e.oz="oz",e.pascal="pascal",e.perl="perl",e.pig="pig",e.powershell="powershell",e.properties="properties",e.protobuf="protobuf",e.puppet="puppet",e.q="q",e.r="r",e.rpm="rpm",e.ruby="ruby",e.sas="sas",e.scheme="scheme",e.shell="shell",e.smalltalk="smalltalk",e.solr="solr",e.sparql="sparql",e.spreadsheet="spreadsheet",e.stex="stex",e.stylus="stylus",e.swift="swift",e.tcl="tcl",e.textile="textile",e.tiddlywiki="tiddlywiki",e.tiki="tiki",e.toml="toml",e.troff="troff",e.ttcn="ttcn",e.turtle="turtle",e.vb="vb",e.vbscript="vbscript",e.velocity="velocity",e.verilog="verilog",e.vhdl="vhdl",e.webidl="webidl",e.xquery="xquery",e.yacas="yacas",e.yaml="yaml",e.z80="z80"}(F||(F={}));const I={createSelect:(e,o,r,t,i)=>{var m;if(!e.languageLoaders)return()=>{};const{languageLoaders:d}=e,n=document.createElement("select");n.className="codeblock-select";const c=document.createElement("option");return c.value="none",c.textContent=(null===(m=e.languageNameMap)||void 0===m?void 0:m.none)||"none",n.append(c),Object.keys(d).sort().forEach((o=>{var r;if(e.languageWhitelist&&!e.languageWhitelist.includes(o))return;const t=document.createElement("option");t.value=o,t.textContent=(null===(r=e.languageNameMap)||void 0===r?void 0:r[o])||o,n.append(t)})),n.value=r.attrs.lang||"none",o.prepend(n),n.onchange=e=>L(void 0,void 0,void 0,(function*(){if(!(e.target instanceof HTMLSelectElement))return;const o=e.target.value;"function"==typeof i&&t.dispatch(t.state.tr.setNodeMarkup(i(),void 0,Object.assign(Object.assign({},r.attrs),{lang:o})))})),()=>{}},updateSelect:(e,o,r,t,i,m)=>{if(m.attrs.lang!==r.attrs.lang){const e=o.querySelector(".codeblock-select");if(!(e instanceof HTMLSelectElement))return;e.value=r.attrs.lang||"none"}},stopEvent:()=>!0,readOnly:!1},U={[$.cpp]:()=>import("@codemirror/lang-cpp").then((e=>e.cpp())),[$.css]:()=>import("@codemirror/lang-css").then((e=>e.css())),[$.html]:()=>import("@codemirror/lang-html").then((e=>e.html())),[$.php]:()=>import("@codemirror/lang-php").then((e=>e.php())),[$.sql]:()=>import("@codemirror/lang-sql").then((e=>e.sql())),[$.xml]:()=>import("@codemirror/lang-xml").then((e=>e.xml())),[$.javascript]:()=>import("@codemirror/lang-javascript").then((e=>e.javascript())),[$.java]:()=>import("@codemirror/lang-java").then((e=>e.java())),[$.json]:()=>import("@codemirror/lang-json").then((e=>e.json())),[$.lezer]:()=>import("@codemirror/lang-lezer").then((e=>e.lezer())),[$.markdown]:()=>import("@codemirror/lang-markdown").then((e=>e.markdown())),[$.python]:()=>import("@codemirror/lang-python").then((e=>e.python())),[$.rust]:()=>import("@codemirror/lang-rust").then((e=>e.rust())),[$.wast]:()=>import("@codemirror/lang-wast").then((e=>e.wast()))},V={[F.apl]:()=>import("@codemirror/legacy-modes/mode/apl").then((({apl:e})=>k.define(e))),[F.asciiarmor]:()=>import("@codemirror/legacy-modes/mode/asciiarmor").then((({asciiArmor:e})=>k.define(e))),[F.asn1]:()=>import("@codemirror/legacy-modes/mode/asn1").then((({asn1:e})=>k.define(e))),[F.asterisk]:()=>import("@codemirror/legacy-modes/mode/asterisk").then((({asterisk:e})=>k.define(e))),[F.brainfuck]:()=>import("@codemirror/legacy-modes/mode/brainfuck").then((({brainfuck:e})=>k.define(e))),[F.clike]:()=>import("@codemirror/legacy-modes/mode/clike").then((({clike:e})=>k.define(e))),[F.clojure]:()=>import("@codemirror/legacy-modes/mode/clojure").then((({clojure:e})=>k.define(e))),[F.cmake]:()=>import("@codemirror/legacy-modes/mode/cmake").then((({cmake:e})=>k.define(e))),[F.cobol]:()=>import("@codemirror/legacy-modes/mode/cobol").then((({cobol:e})=>k.define(e))),[F.coffeescript]:()=>import("@codemirror/legacy-modes/mode/coffeescript").then((({coffeeScript:e})=>k.define(e))),[F.commonlisp]:()=>import("@codemirror/legacy-modes/mode/commonlisp").then((({commonLisp:e})=>k.define(e))),[F.crystal]:()=>import("@codemirror/legacy-modes/mode/crystal").then((({crystal:e})=>k.define(e))),[F.cypher]:()=>import("@codemirror/legacy-modes/mode/cypher").then((({cypher:e})=>k.define(e))),[F.d]:()=>import("@codemirror/legacy-modes/mode/d").then((({d:e})=>k.define(e))),[F.diff]:()=>import("@codemirror/legacy-modes/mode/diff").then((({diff:e})=>k.define(e))),[F.dockerfile]:()=>import("@codemirror/legacy-modes/mode/dockerfile").then((({dockerFile:e})=>k.define(e))),[F.dtd]:()=>import("@codemirror/legacy-modes/mode/dtd").then((({dtd:e})=>k.define(e))),[F.dylan]:()=>import("@codemirror/legacy-modes/mode/dylan").then((({dylan:e})=>k.define(e))),[F.ebnf]:()=>import("@codemirror/legacy-modes/mode/ebnf").then((({ebnf:e})=>k.define(e))),[F.ecl]:()=>import("@codemirror/legacy-modes/mode/ecl").then((({ecl:e})=>k.define(e))),[F.eiffel]:()=>import("@codemirror/legacy-modes/mode/eiffel").then((({eiffel:e})=>k.define(e))),[F.elm]:()=>import("@codemirror/legacy-modes/mode/elm").then((({elm:e})=>k.define(e))),[F.erlang]:()=>import("@codemirror/legacy-modes/mode/erlang").then((({erlang:e})=>k.define(e))),[F.factor]:()=>import("@codemirror/legacy-modes/mode/factor").then((({factor:e})=>k.define(e))),[F.fcl]:()=>import("@codemirror/legacy-modes/mode/fcl").then((({fcl:e})=>k.define(e))),[F.forth]:()=>import("@codemirror/legacy-modes/mode/forth").then((({forth:e})=>k.define(e))),[F.fortran]:()=>import("@codemirror/legacy-modes/mode/fortran").then((({fortran:e})=>k.define(e))),[F.gas]:()=>import("@codemirror/legacy-modes/mode/gas").then((({gas:e})=>k.define(e))),[F.gherkin]:()=>import("@codemirror/legacy-modes/mode/gherkin").then((({gherkin:e})=>k.define(e))),[F.go]:()=>import("@codemirror/legacy-modes/mode/go").then((({go:e})=>k.define(e))),[F.groovy]:()=>import("@codemirror/legacy-modes/mode/groovy").then((({groovy:e})=>k.define(e))),[F.haskell]:()=>import("@codemirror/legacy-modes/mode/haskell").then((({haskell:e})=>k.define(e))),[F.haxe]:()=>import("@codemirror/legacy-modes/mode/haxe").then((({haxe:e})=>k.define(e))),[F.http]:()=>import("@codemirror/legacy-modes/mode/http").then((({http:e})=>k.define(e))),[F.idl]:()=>import("@codemirror/legacy-modes/mode/idl").then((({idl:e})=>k.define(e))),[F.jinja2]:()=>import("@codemirror/legacy-modes/mode/jinja2").then((({jinja2:e})=>k.define(e))),[F.julia]:()=>import("@codemirror/legacy-modes/mode/julia").then((({julia:e})=>k.define(e))),[F.livescript]:()=>import("@codemirror/legacy-modes/mode/livescript").then((({liveScript:e})=>k.define(e))),[F.lua]:()=>import("@codemirror/legacy-modes/mode/lua").then((({lua:e})=>k.define(e))),[F.mathematica]:()=>import("@codemirror/legacy-modes/mode/mathematica").then((({mathematica:e})=>k.define(e))),[F.mbox]:()=>import("@codemirror/legacy-modes/mode/mbox").then((({mbox:e})=>k.define(e))),[F.mirc]:()=>import("@codemirror/legacy-modes/mode/mirc").then((({mirc:e})=>k.define(e))),[F.mllike]:()=>import("@codemirror/legacy-modes/mode/mllike").then((({oCaml:e})=>k.define(e))),[F.modelica]:()=>import("@codemirror/legacy-modes/mode/modelica").then((({modelica:e})=>k.define(e))),[F.mscgen]:()=>import("@codemirror/legacy-modes/mode/mscgen").then((({mscgen:e})=>k.define(e))),[F.mumps]:()=>import("@codemirror/legacy-modes/mode/mumps").then((({mumps:e})=>k.define(e))),[F.nginx]:()=>import("@codemirror/legacy-modes/mode/nginx").then((({nginx:e})=>k.define(e))),[F.nsis]:()=>import("@codemirror/legacy-modes/mode/nsis").then((({nsis:e})=>k.define(e))),[F.ntriples]:()=>import("@codemirror/legacy-modes/mode/ntriples").then((({ntriples:e})=>k.define(e))),[F.octave]:()=>import("@codemirror/legacy-modes/mode/octave").then((({octave:e})=>k.define(e))),[F.oz]:()=>import("@codemirror/legacy-modes/mode/oz").then((({oz:e})=>k.define(e))),[F.pascal]:()=>import("@codemirror/legacy-modes/mode/pascal").then((({pascal:e})=>k.define(e))),[F.perl]:()=>import("@codemirror/legacy-modes/mode/perl").then((({perl:e})=>k.define(e))),[F.pig]:()=>import("@codemirror/legacy-modes/mode/pig").then((({pig:e})=>k.define(e))),[F.powershell]:()=>import("@codemirror/legacy-modes/mode/powershell").then((({powerShell:e})=>k.define(e))),[F.properties]:()=>import("@codemirror/legacy-modes/mode/properties").then((({properties:e})=>k.define(e))),[F.protobuf]:()=>import("@codemirror/legacy-modes/mode/protobuf").then((({protobuf:e})=>k.define(e))),[F.puppet]:()=>import("@codemirror/legacy-modes/mode/puppet").then((({puppet:e})=>k.define(e))),[F.q]:()=>import("@codemirror/legacy-modes/mode/q").then((({q:e})=>k.define(e))),[F.r]:()=>import("@codemirror/legacy-modes/mode/r").then((({r:e})=>k.define(e))),[F.rpm]:()=>import("@codemirror/legacy-modes/mode/rpm").then((({rpmSpec:e})=>k.define(e))),[F.ruby]:()=>import("@codemirror/legacy-modes/mode/ruby").then((({ruby:e})=>k.define(e))),[F.sas]:()=>import("@codemirror/legacy-modes/mode/sas").then((({sas:e})=>k.define(e))),[F.scheme]:()=>import("@codemirror/legacy-modes/mode/scheme").then((({scheme:e})=>k.define(e))),[F.shell]:()=>import("@codemirror/legacy-modes/mode/shell").then((({shell:e})=>k.define(e))),[F.smalltalk]:()=>import("@codemirror/legacy-modes/mode/smalltalk").then((({smalltalk:e})=>k.define(e))),[F.solr]:()=>import("@codemirror/legacy-modes/mode/solr").then((({solr:e})=>k.define(e))),[F.sparql]:()=>import("@codemirror/legacy-modes/mode/sparql").then((({sparql:e})=>k.define(e))),[F.spreadsheet]:()=>import("@codemirror/legacy-modes/mode/spreadsheet").then((({spreadsheet:e})=>k.define(e))),[F.stex]:()=>import("@codemirror/legacy-modes/mode/stex").then((({stex:e})=>k.define(e))),[F.stylus]:()=>import("@codemirror/legacy-modes/mode/stylus").then((({stylus:e})=>k.define(e))),[F.swift]:()=>import("@codemirror/legacy-modes/mode/swift").then((({swift:e})=>k.define(e))),[F.tcl]:()=>import("@codemirror/legacy-modes/mode/tcl").then((({tcl:e})=>k.define(e))),[F.textile]:()=>import("@codemirror/legacy-modes/mode/textile").then((({textile:e})=>k.define(e))),[F.tiddlywiki]:()=>import("@codemirror/legacy-modes/mode/tiddlywiki").then((({tiddlyWiki:e})=>k.define(e))),[F.tiki]:()=>import("@codemirror/legacy-modes/mode/tiki").then((({tiki:e})=>k.define(e))),[F.toml]:()=>import("@codemirror/legacy-modes/mode/toml").then((({toml:e})=>k.define(e))),[F.troff]:()=>import("@codemirror/legacy-modes/mode/troff").then((({troff:e})=>k.define(e))),[F.ttcn]:()=>import("@codemirror/legacy-modes/mode/ttcn").then((({ttcn:e})=>k.define(e))),[F.turtle]:()=>import("@codemirror/legacy-modes/mode/turtle").then((({turtle:e})=>k.define(e))),[F.vb]:()=>import("@codemirror/legacy-modes/mode/vb").then((({vb:e})=>k.define(e))),[F.vbscript]:()=>import("@codemirror/legacy-modes/mode/vbscript").then((({vbScript:e})=>k.define(e))),[F.velocity]:()=>import("@codemirror/legacy-modes/mode/velocity").then((({velocity:e})=>k.define(e))),[F.verilog]:()=>import("@codemirror/legacy-modes/mode/verilog").then((({verilog:e})=>k.define(e))),[F.vhdl]:()=>import("@codemirror/legacy-modes/mode/vhdl").then((({vhdl:e})=>k.define(e))),[F.webidl]:()=>import("@codemirror/legacy-modes/mode/webidl").then((({webIDL:e})=>k.define(e))),[F.xquery]:()=>import("@codemirror/legacy-modes/mode/xquery").then((({xQuery:e})=>k.define(e))),[F.yacas]:()=>import("@codemirror/legacy-modes/mode/yacas").then((({yacas:e})=>k.define(e))),[F.yaml]:()=>import("@codemirror/legacy-modes/mode/yaml").then((({yaml:e})=>k.define(e))),[F.z80]:()=>import("@codemirror/legacy-modes/mode/z80").then((({z80:e})=>k.define(e)))},_=new r("codemirror-block"),J=e=>new t({key:_,props:{nodeViews:{code_block:R(e)}}});export{$ as CodeBlockLanguages,F as LegacyLanguages,H as codeBlockArrowHandlers,_ as codeMirrorBlockKey,R as codeMirrorBlockNodeView,J as codeMirrorBlockPlugin,J as default,I as defaultSettings,U as languageLoaders,V as legacyLanguageLoaders};
package/dist/index.js CHANGED
@@ -1,15 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("prosemirror-state"),r=require("@codemirror/gutter"),o=require("@codemirror/closebrackets"),t=require("@codemirror/view"),n=require("@codemirror/search"),a=require("@codemirror/fold"),s=require("@codemirror/language"),i=require("@codemirror/autocomplete"),c=require("@codemirror/commands"),u=require("@codemirror/comment"),g=require("@codemirror/highlight"),m=require("@codemirror/rectangular-selection"),l=require("@codemirror/matchbrackets"),d=require("@codemirror/state"),f=require("prosemirror-commands"),h=require("@codemirror/stream-parser");function p(e){if(e&&e.__esModule)return e;var r=Object.create(null);return e&&Object.keys(e).forEach((function(o){if("default"!==o){var t=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(r,o,t.get?t:{enumerable:!0,get:function(){return e[o]}})}})),r.default=e,Object.freeze(r)}
2
- /*! *****************************************************************************
3
- Copyright (c) Microsoft Corporation.
4
-
5
- Permission to use, copy, modify, and/or distribute this software for any
6
- purpose with or without fee is hereby granted.
7
-
8
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
9
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
10
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
11
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
- PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */function L(e,r,o,t){return new(o||(o=Promise))((function(n,a){function s(e){try{c(t.next(e))}catch(e){a(e)}}function i(e){try{c(t.throw(e))}catch(e){a(e)}}function c(e){var r;e.done?n(e.value):(r=e.value,r instanceof o?r:new o((function(e){e(r)}))).then(s,i)}c((t=t.apply(e,r||[])).next())}))}function y(e,r){if(e===r)return null;let o=0,t=e.length,n=r.length;for(;o<t&&e.charCodeAt(o)===r.charCodeAt(o);)o+=1;for(;t>o&&n>o&&e.charCodeAt(t-1)===r.charCodeAt(n-1);)t-=1,n-=1;return{from:o,to:t,text:r.slice(o,n)}}const v=(r,o,t)=>{if(!r.hasFocus)return;const n=((r,o,t)=>{const n=("function"==typeof t&&t()||0)+1,a=o.state.selection.main.from+n,s=o.state.selection.main.to+n;return e.TextSelection.create(r,a,s)})(o.state.doc,r,t);n.eq(o.state.selection)||o.dispatch(o.state.tr.setSelection(n))},x=(r,o,t,n,a)=>{const s=t.state.selection.main,i=t.state.doc.lineAt(s.from),c=t.state.doc.lines;if(s.to!==s.from||i.number!==(o<0?1:c)||"char"===r&&s.from!==(o<0?0:i.to)||"function"!=typeof a)return!1;n.focus();const u=n.state.doc.nodeAt(a());if(!u)return!1;const g=a()+(o<0?0:u.nodeSize),m=e.Selection.near(n.state.doc.resolve(g),o);return n.dispatch(n.state.tr.setSelection(m).scrollIntoView()),n.focus(),!0},q=(e,r)=>{const{selection:o}=r.state;return!(!o.main.empty||0!==o.main.from)&&(f.setBlockType(e.state.schema.nodes.paragraph)(e.state,e.dispatch),setTimeout((()=>e.focus()),20),!0)},S=(e,r,o,t)=>L(void 0,void 0,void 0,(function*(){var n,a;const s=yield null===(a=null===(n=o.languageLoaders)||void 0===n?void 0:n[e])||void 0===a?void 0:a.call(n);s&&r.dispatch({effects:t.reconfigure(s)})})),k=r=>(o,t,n)=>{if(o.selection.empty&&(null==n?void 0:n.endOfTextblock(r))){const n="left"===r||"up"===r?-1:1,{$head:a}=o.selection,s=e.Selection.near(o.doc.resolve(n>0?a.after():a.before()),n);if(s.$head&&"code_block"===s.$head.parent.type.name)return null==t||t(o.tr.setSelection(s)),!0}return!1},P={ArrowLeft:k("left"),ArrowRight:k("right"),ArrowUp:k("up"),ArrowDown:k("down")},b=e=>(h,p,L)=>{let k=h,P=!1;const b=document.createElement("div");b.className="codeblock-root";const w=new d.Compartment,j=d.EditorState.create({extensions:[r.lineNumbers(),r.highlightActiveLineGutter(),a.foldGutter(),l.bracketMatching(),o.closeBrackets(),n.highlightSelectionMatches(),i.autocompletion(),m.rectangularSelection(),t.drawSelection({cursorBlinkRate:1e3}),d.EditorState.allowMultipleSelections.of(!0),t.highlightActiveLine(),g.defaultHighlightStyle.fallback,w.of([]),s.indentOnInput(),t.EditorView.domEventHandlers({blur(e,r){r.dispatch({selection:{anchor:0}})}}),t.keymap.of([{key:"Mod-d",run:n.selectNextOccurrence,preventDefault:!0},{key:"ArrowUp",run:e=>x("line",-1,e,p,L)},{key:"ArrowLeft",run:e=>x("char",-1,e,p,L)},{key:"ArrowDown",run:e=>x("line",1,e,p,L)},{key:"ArrowRight",run:e=>x("char",1,e,p,L)},{key:"Mod-z",run:()=>{var r;return(null===(r=e.undo)||void 0===r?void 0:r.call(e,p.state,p.dispatch))||!0},shift:()=>{var r;return(null===(r=e.redo)||void 0===r?void 0:r.call(e,p.state,p.dispatch))||!0}},{key:"Mod-y",run:()=>{var r;return(null===(r=e.redo)||void 0===r?void 0:r.call(e,p.state,p.dispatch))||!0}},{key:"Backspace",run:e=>q(p,e)},{key:"Mod-Backspace",run:e=>q(p,e)},{key:"Mod-a",run:()=>{const e=f.selectAll(p.state,p.dispatch);return p.focus(),e}},{key:"Enter",run:e=>{const r=e.state.selection.main;return""===e.state.doc.line(e.state.doc.lines).text&&r.from===r.to&&r.from===e.state.doc.length&&(f.exitCode(p.state,p.dispatch),p.focus(),!0)}},...c.defaultKeymap,...a.foldKeymap,...o.closeBracketsKeymap,...i.completionKeymap,...u.commentKeymap,c.indentWithTab]),...e.theme?e.theme:[]],doc:k.textContent}),C=new t.EditorView({state:j,dispatch:e=>{if(C.update([e]),!P){((e,r,o,t)=>{const n=y(r.textContent,e);if(n&&"function"==typeof o){const e=o()+1,r=t.state.tr.replaceWith(e+n.from,e+n.to,n.text?t.state.schema.text(n.text):null);t.dispatch(r)}})(e.state.toJSON().doc,k,L,p),v(C,p,L)}}});b.append(C.dom);const B=e.createSelect(e,b,k,p,L);return S(k.attrs.lang,C,e,w),{dom:b,selectNode(){C.focus()},stopEvent:r=>e.stopEvent(r,k,L,p,b),setSelection:(e,r)=>{C.focus(),v(C,p,L),P=!0,"function"==typeof L&&L(),C.dispatch({selection:{anchor:e,head:r}}),P=!1},update:r=>{if(r.type.name!==k.type.name)return!1;r.attrs.lang!==k.attrs.lang&&S(r.attrs.lang,C,e,w);const o=k;k=r;const t=y(C.state.doc.toString(),k.textContent);return t&&(P=!0,C.dispatch({changes:{from:t.from,to:t.to,insert:t.text},selection:{anchor:t.from+t.text.length}}),P=!1),e.updateSelect(e,b,r,p,L,o),!0},ignoreMutation:()=>!0,destroy:()=>{B()}}};var w,j;exports.CodeBlockLanguages=void 0,(w=exports.CodeBlockLanguages||(exports.CodeBlockLanguages={})).javascript="javascript",w.html="html",w.css="css",w.sql="sql",w.python="python",w.rust="rust",w.xml="xml",w.json="json",w.markdown="markdown",w.java="java",w.cpp="cpp",w.lezer="lezer",w.php="php",w.wast="wast",exports.LegacyLanguages=void 0,(j=exports.LegacyLanguages||(exports.LegacyLanguages={})).apl="apl",j.asciiarmor="asciiarmor",j.asn1="asn1",j.asterisk="asterisk",j.brainfuck="brainfuck",j.clike="clike",j.clojure="clojure",j.cmake="cmake",j.cobol="cobol",j.coffeescript="coffeescript",j.commonlisp="commonlisp",j.crystal="crystal",j.cypher="cypher",j.d="d",j.diff="diff",j.dockerfile="dockerfile",j.dtd="dtd",j.dylan="dylan",j.ebnf="ebnf",j.ecl="ecl",j.eiffel="eiffel",j.elm="elm",j.erlang="erlang",j.factor="factor",j.fcl="fcl",j.forth="forth",j.fortran="fortran",j.gas="gas",j.gherkin="gherkin",j.go="go",j.groovy="groovy",j.haskell="haskell",j.haxe="haxe",j.http="http",j.idl="idl",j.jinja2="jinja2",j.julia="julia",j.livescript="livescript",j.lua="lua",j.mathematica="mathematica",j.mbox="mbox",j.mirc="mirc",j.mllike="mllike",j.modelica="modelica",j.mscgen="mscgen",j.mumps="mumps",j.nginx="nginx",j.nsis="nsis",j.ntriples="ntriples",j.octave="octave",j.oz="oz",j.pascal="pascal",j.perl="perl",j.pig="pig",j.powershell="powershell",j.properties="properties",j.protobuf="protobuf",j.puppet="puppet",j.q="q",j.r="r",j.rpm="rpm",j.ruby="ruby",j.sas="sas",j.scheme="scheme",j.shell="shell",j.smalltalk="smalltalk",j.solr="solr",j.sparql="sparql",j.spreadsheet="spreadsheet",j.stex="stex",j.stylus="stylus",j.swift="swift",j.tcl="tcl",j.textile="textile",j.tiddlywiki="tiddlywiki",j.tiki="tiki",j.toml="toml",j.troff="troff",j.ttcn="ttcn",j.turtle="turtle",j.vb="vb",j.vbscript="vbscript",j.velocity="velocity",j.verilog="verilog",j.vhdl="vhdl",j.webidl="webidl",j.xquery="xquery",j.yacas="yacas",j.yaml="yaml",j.z80="z80";const C={createSelect:(e,r,o,t,n)=>{var a;if(!e.languageLoaders)return()=>{};const{languageLoaders:s}=e,i=document.createElement("select");i.className="codeblock-select";const c=document.createElement("option");return c.value="none",c.textContent=(null===(a=e.languageNameMap)||void 0===a?void 0:a.none)||"none",i.append(c),Object.keys(s).sort().forEach((r=>{var o;if(e.languageWhitelist&&!e.languageWhitelist.includes(r))return;const t=document.createElement("option");t.value=r,t.textContent=(null===(o=e.languageNameMap)||void 0===o?void 0:o[r])||r,i.append(t)})),i.value=o.attrs.lang||"none",r.prepend(i),i.onchange=e=>L(void 0,void 0,void 0,(function*(){if(!(e.target instanceof HTMLSelectElement))return;const r=e.target.value;"function"==typeof n&&t.dispatch(t.state.tr.setNodeMarkup(n(),void 0,Object.assign(Object.assign({},o.attrs),{lang:r})))})),()=>{}},updateSelect:(e,r,o,t,n,a)=>{if(a.attrs.lang!==o.attrs.lang){const e=r.querySelector(".codeblock-select");if(!(e instanceof HTMLSelectElement))return;e.value=o.attrs.lang||"none"}},stopEvent:()=>!0},B={[exports.CodeBlockLanguages.cpp]:()=>Promise.resolve().then((function(){return p(require("@codemirror/lang-cpp"))})).then((e=>e.cpp())),[exports.CodeBlockLanguages.css]:()=>Promise.resolve().then((function(){return p(require("@codemirror/lang-css"))})).then((e=>e.css())),[exports.CodeBlockLanguages.html]:()=>Promise.resolve().then((function(){return p(require("@codemirror/lang-html"))})).then((e=>e.html())),[exports.CodeBlockLanguages.php]:()=>Promise.resolve().then((function(){return p(require("@codemirror/lang-php"))})).then((e=>e.php())),[exports.CodeBlockLanguages.sql]:()=>Promise.resolve().then((function(){return p(require("@codemirror/lang-sql"))})).then((e=>e.sql())),[exports.CodeBlockLanguages.xml]:()=>Promise.resolve().then((function(){return p(require("@codemirror/lang-xml"))})).then((e=>e.xml())),[exports.CodeBlockLanguages.javascript]:()=>Promise.resolve().then((function(){return p(require("@codemirror/lang-javascript"))})).then((e=>e.javascript())),[exports.CodeBlockLanguages.java]:()=>Promise.resolve().then((function(){return p(require("@codemirror/lang-java"))})).then((e=>e.java())),[exports.CodeBlockLanguages.json]:()=>Promise.resolve().then((function(){return p(require("@codemirror/lang-json"))})).then((e=>e.json())),[exports.CodeBlockLanguages.lezer]:()=>Promise.resolve().then((function(){return p(require("@codemirror/lang-lezer"))})).then((e=>e.lezer())),[exports.CodeBlockLanguages.markdown]:()=>Promise.resolve().then((function(){return p(require("@codemirror/lang-markdown"))})).then((e=>e.markdown())),[exports.CodeBlockLanguages.python]:()=>Promise.resolve().then((function(){return p(require("@codemirror/lang-python"))})).then((e=>e.python())),[exports.CodeBlockLanguages.rust]:()=>Promise.resolve().then((function(){return p(require("@codemirror/lang-rust"))})).then((e=>e.rust())),[exports.CodeBlockLanguages.wast]:()=>Promise.resolve().then((function(){return p(require("@codemirror/lang-wast"))})).then((e=>e.wast()))},A={[exports.LegacyLanguages.apl]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/apl"))})).then((({apl:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.asciiarmor]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/asciiarmor"))})).then((({asciiArmor:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.asn1]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/asn1"))})).then((({asn1:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.asterisk]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/asterisk"))})).then((({asterisk:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.brainfuck]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/brainfuck"))})).then((({brainfuck:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.clike]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/clike"))})).then((({clike:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.clojure]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/clojure"))})).then((({clojure:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.cmake]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/cmake"))})).then((({cmake:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.cobol]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/cobol"))})).then((({cobol:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.coffeescript]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/coffeescript"))})).then((({coffeeScript:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.commonlisp]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/commonlisp"))})).then((({commonLisp:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.crystal]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/crystal"))})).then((({crystal:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.cypher]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/cypher"))})).then((({cypher:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.d]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/d"))})).then((({d:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.diff]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/diff"))})).then((({diff:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.dockerfile]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/dockerfile"))})).then((({dockerFile:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.dtd]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/dtd"))})).then((({dtd:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.dylan]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/dylan"))})).then((({dylan:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.ebnf]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/ebnf"))})).then((({ebnf:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.ecl]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/ecl"))})).then((({ecl:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.eiffel]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/eiffel"))})).then((({eiffel:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.elm]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/elm"))})).then((({elm:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.erlang]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/erlang"))})).then((({erlang:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.factor]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/factor"))})).then((({factor:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.fcl]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/fcl"))})).then((({fcl:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.forth]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/forth"))})).then((({forth:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.fortran]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/fortran"))})).then((({fortran:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.gas]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/gas"))})).then((({gas:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.gherkin]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/gherkin"))})).then((({gherkin:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.go]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/go"))})).then((({go:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.groovy]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/groovy"))})).then((({groovy:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.haskell]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/haskell"))})).then((({haskell:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.haxe]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/haxe"))})).then((({haxe:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.http]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/http"))})).then((({http:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.idl]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/idl"))})).then((({idl:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.jinja2]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/jinja2"))})).then((({jinja2:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.julia]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/julia"))})).then((({julia:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.livescript]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/livescript"))})).then((({liveScript:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.lua]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/lua"))})).then((({lua:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.mathematica]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/mathematica"))})).then((({mathematica:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.mbox]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/mbox"))})).then((({mbox:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.mirc]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/mirc"))})).then((({mirc:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.mllike]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/mllike"))})).then((({oCaml:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.modelica]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/modelica"))})).then((({modelica:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.mscgen]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/mscgen"))})).then((({mscgen:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.mumps]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/mumps"))})).then((({mumps:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.nginx]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/nginx"))})).then((({nginx:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.nsis]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/nsis"))})).then((({nsis:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.ntriples]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/ntriples"))})).then((({ntriples:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.octave]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/octave"))})).then((({octave:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.oz]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/oz"))})).then((({oz:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.pascal]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/pascal"))})).then((({pascal:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.perl]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/perl"))})).then((({perl:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.pig]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/pig"))})).then((({pig:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.powershell]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/powershell"))})).then((({powerShell:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.properties]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/properties"))})).then((({properties:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.protobuf]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/protobuf"))})).then((({protobuf:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.puppet]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/puppet"))})).then((({puppet:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.q]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/q"))})).then((({q:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.r]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/r"))})).then((({r:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.rpm]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/rpm"))})).then((({rpmSpec:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.ruby]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/ruby"))})).then((({ruby:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.sas]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/sas"))})).then((({sas:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.scheme]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/scheme"))})).then((({scheme:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.shell]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/shell"))})).then((({shell:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.smalltalk]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/smalltalk"))})).then((({smalltalk:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.solr]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/solr"))})).then((({solr:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.sparql]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/sparql"))})).then((({sparql:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.spreadsheet]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/spreadsheet"))})).then((({spreadsheet:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.stex]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/stex"))})).then((({stex:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.stylus]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/stylus"))})).then((({stylus:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.swift]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/swift"))})).then((({swift:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.tcl]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/tcl"))})).then((({tcl:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.textile]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/textile"))})).then((({textile:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.tiddlywiki]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/tiddlywiki"))})).then((({tiddlyWiki:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.tiki]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/tiki"))})).then((({tiki:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.toml]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/toml"))})).then((({toml:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.troff]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/troff"))})).then((({troff:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.ttcn]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/ttcn"))})).then((({ttcn:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.turtle]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/turtle"))})).then((({turtle:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.vb]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/vb"))})).then((({vb:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.vbscript]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/vbscript"))})).then((({vbScript:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.velocity]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/velocity"))})).then((({velocity:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.verilog]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/verilog"))})).then((({verilog:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.vhdl]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/vhdl"))})).then((({vhdl:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.webidl]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/webidl"))})).then((({webIDL:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.xquery]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/xquery"))})).then((({xQuery:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.yacas]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/yacas"))})).then((({yacas:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.yaml]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/yaml"))})).then((({yaml:e})=>h.StreamLanguage.define(e))),[exports.LegacyLanguages.z80]:()=>Promise.resolve().then((function(){return p(require("@codemirror/legacy-modes/mode/z80"))})).then((({z80:e})=>h.StreamLanguage.define(e)))},M=new e.PluginKey("codemirror-block"),z=r=>new e.Plugin({key:M,props:{nodeViews:{code_block:b(r)}}});exports.codeBlockArrowHandlers=P,exports.codeMirrorBlockKey=M,exports.codeMirrorBlockNodeView=b,exports.codeMirrorBlockPlugin=z,exports.default=z,exports.defaultSettings=C,exports.languageLoaders=B,exports.legacyLanguageLoaders=A;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("prosemirror-state"),a=require("@codemirror/view"),o=require("@codemirror/search"),r=require("@codemirror/language"),t=require("@codemirror/autocomplete"),n=require("@codemirror/commands"),g=require("@codemirror/state"),s=require("prosemirror-commands");function i(e,a,o,r){return new(o||(o=Promise))((function(t,n){function g(e){try{i(r.next(e))}catch(e){n(e)}}function s(e){try{i(r.throw(e))}catch(e){n(e)}}function i(e){var a;e.done?t(e.value):(a=e.value,a instanceof o?a:new o((function(e){e(a)}))).then(g,s)}i((r=r.apply(e,a||[])).next())}))}function c(e,a){if(e===a)return null;let o=0,r=e.length,t=a.length;for(;o<r&&e.charCodeAt(o)===a.charCodeAt(o);)o+=1;for(;r>o&&t>o&&e.charCodeAt(r-1)===a.charCodeAt(t-1);)r-=1,t-=1;return{from:o,to:r,text:a.slice(o,t)}}const m=(a,o,r)=>{if(!a.hasFocus)return;const t=((a,o,r)=>{const t=("function"==typeof r&&r()||0)+1,n=o.state.selection.main.from+t,g=o.state.selection.main.to+t;return e.TextSelection.create(a,n,g)})(o.state.doc,a,r);t.eq(o.state.selection)||o.dispatch(o.state.tr.setSelection(t))},d=(a,o,r,t,n)=>{const g=r.state.selection.main,s=r.state.doc.lineAt(g.from),i=r.state.doc.lines;if(g.to!==g.from||s.number!==(o<0?1:i)||"char"===a&&g.from!==(o<0?0:s.to)||"function"!=typeof n)return!1;t.focus();const c=t.state.doc.nodeAt(n());if(!c)return!1;const m=n()+(o<0?0:c.nodeSize),d=e.Selection.near(t.state.doc.resolve(m),o);return t.dispatch(t.state.tr.setSelection(d).scrollIntoView()),t.focus(),!0},l=(e,a)=>{const{selection:o}=a.state;return!(!o.main.empty||0!==o.main.from)&&(s.setBlockType(e.state.schema.nodes.paragraph)(e.state,e.dispatch),setTimeout((()=>e.focus()),20),!0)},p=(e,a,o,r)=>i(void 0,void 0,void 0,(function*(){var t,n;const g=yield null===(n=null===(t=o.languageLoaders)||void 0===t?void 0:t[e])||void 0===n?void 0:n.call(t);g&&a.dispatch({effects:r.reconfigure(g)})})),u=a=>(o,r,t)=>{if(o.selection.empty&&(null==t?void 0:t.endOfTextblock(a))){const t="left"===a||"up"===a?-1:1,{$head:n}=o.selection,g=e.Selection.near(o.doc.resolve(t>0?n.after():n.before()),t);if(g.$head&&"code_block"===g.$head.parent.type.name)return null==r||r(o.tr.setSelection(g)),!0}return!1},L={ArrowLeft:u("left"),ArrowRight:u("right"),ArrowUp:u("up"),ArrowDown:u("down")},y=e=>(i,u,L)=>{let y=i,f=!1;const h=document.createElement("div");h.className="codeblock-root";const x=new g.Compartment,S=g.EditorState.create({extensions:[g.EditorState.readOnly.of(e.readOnly),a.EditorView.editable.of(!e.readOnly),a.lineNumbers(),a.highlightActiveLineGutter(),r.foldGutter(),r.bracketMatching(),t.closeBrackets(),o.highlightSelectionMatches(),t.autocompletion(),a.rectangularSelection(),a.drawSelection({cursorBlinkRate:1e3}),g.EditorState.allowMultipleSelections.of(!0),a.highlightActiveLine(),r.syntaxHighlighting(r.defaultHighlightStyle,{fallback:!0}),x.of([]),r.indentOnInput(),a.EditorView.domEventHandlers({blur(e,a){a.dispatch({selection:{anchor:0}})}}),a.keymap.of([{key:"Mod-d",run:o.selectNextOccurrence,preventDefault:!0},{key:"ArrowUp",run:e=>d("line",-1,e,u,L)},{key:"ArrowLeft",run:e=>d("char",-1,e,u,L)},{key:"ArrowDown",run:e=>d("line",1,e,u,L)},{key:"ArrowRight",run:e=>d("char",1,e,u,L)},{key:"Mod-z",run:()=>{var a;return(null===(a=e.undo)||void 0===a?void 0:a.call(e,u.state,u.dispatch))||!0},shift:()=>{var a;return(null===(a=e.redo)||void 0===a?void 0:a.call(e,u.state,u.dispatch))||!0}},{key:"Mod-y",run:()=>{var a;return(null===(a=e.redo)||void 0===a?void 0:a.call(e,u.state,u.dispatch))||!0}},{key:"Backspace",run:e=>l(u,e)},{key:"Mod-Backspace",run:e=>l(u,e)},{key:"Mod-a",run:()=>{const e=s.selectAll(u.state,u.dispatch);return u.focus(),e}},{key:"Enter",run:e=>{const a=e.state.selection.main;return""===e.state.doc.line(e.state.doc.lines).text&&a.from===a.to&&a.from===e.state.doc.length&&(s.exitCode(u.state,u.dispatch),u.focus(),!0)}},...n.defaultKeymap,...r.foldKeymap,...t.closeBracketsKeymap,...t.completionKeymap,n.indentWithTab]),...e.theme?e.theme:[]],doc:y.textContent}),k=new a.EditorView({state:S,dispatch:e=>{if(k.update([e]),!f){((e,a,o,r)=>{const t=c(a.textContent,e);if(t&&"function"==typeof o){const e=o()+1;let a=r.state.tr;t.text&&(a=a.replaceWith(e+t.from,e+t.to,r.state.schema.text(t.text))),r.dispatch(a)}})(e.state.toJSON().doc,y,L,u),m(k,u,L)}}});h.append(k.dom);const v=e.createSelect(e,h,y,u,L);return p(y.attrs.lang,k,e,x),{dom:h,selectNode(){k.focus()},stopEvent:a=>e.stopEvent(a,y,L,u,h),setSelection:(e,a)=>{k.focus(),m(k,u,L),f=!0,"function"==typeof L&&L(),k.dispatch({selection:{anchor:e,head:a}}),f=!1},update:a=>{if(a.type.name!==y.type.name)return!1;a.attrs.lang!==y.attrs.lang&&p(a.attrs.lang,k,e,x);const o=y;y=a;const r=c(k.state.doc.toString(),y.textContent);return r&&(f=!0,k.dispatch({changes:{from:r.from,to:r.to,insert:r.text},selection:{anchor:r.from+r.text.length}}),f=!1),e.updateSelect(e,h,a,u,L,o),!0},ignoreMutation:()=>!0,destroy:()=>{v()}}};var f,h;exports.CodeBlockLanguages=void 0,(f=exports.CodeBlockLanguages||(exports.CodeBlockLanguages={})).javascript="javascript",f.html="html",f.css="css",f.sql="sql",f.python="python",f.rust="rust",f.xml="xml",f.json="json",f.markdown="markdown",f.java="java",f.cpp="cpp",f.lezer="lezer",f.php="php",f.wast="wast",exports.LegacyLanguages=void 0,(h=exports.LegacyLanguages||(exports.LegacyLanguages={})).apl="apl",h.asciiarmor="asciiarmor",h.asn1="asn1",h.asterisk="asterisk",h.brainfuck="brainfuck",h.clike="clike",h.clojure="clojure",h.cmake="cmake",h.cobol="cobol",h.coffeescript="coffeescript",h.commonlisp="commonlisp",h.crystal="crystal",h.cypher="cypher",h.d="d",h.diff="diff",h.dockerfile="dockerfile",h.dtd="dtd",h.dylan="dylan",h.ebnf="ebnf",h.ecl="ecl",h.eiffel="eiffel",h.elm="elm",h.erlang="erlang",h.factor="factor",h.fcl="fcl",h.forth="forth",h.fortran="fortran",h.gas="gas",h.gherkin="gherkin",h.go="go",h.groovy="groovy",h.haskell="haskell",h.haxe="haxe",h.http="http",h.idl="idl",h.jinja2="jinja2",h.julia="julia",h.livescript="livescript",h.lua="lua",h.mathematica="mathematica",h.mbox="mbox",h.mirc="mirc",h.mllike="mllike",h.modelica="modelica",h.mscgen="mscgen",h.mumps="mumps",h.nginx="nginx",h.nsis="nsis",h.ntriples="ntriples",h.octave="octave",h.oz="oz",h.pascal="pascal",h.perl="perl",h.pig="pig",h.powershell="powershell",h.properties="properties",h.protobuf="protobuf",h.puppet="puppet",h.q="q",h.r="r",h.rpm="rpm",h.ruby="ruby",h.sas="sas",h.scheme="scheme",h.shell="shell",h.smalltalk="smalltalk",h.solr="solr",h.sparql="sparql",h.spreadsheet="spreadsheet",h.stex="stex",h.stylus="stylus",h.swift="swift",h.tcl="tcl",h.textile="textile",h.tiddlywiki="tiddlywiki",h.tiki="tiki",h.toml="toml",h.troff="troff",h.ttcn="ttcn",h.turtle="turtle",h.vb="vb",h.vbscript="vbscript",h.velocity="velocity",h.verilog="verilog",h.vhdl="vhdl",h.webidl="webidl",h.xquery="xquery",h.yacas="yacas",h.yaml="yaml",h.z80="z80";const x={createSelect:(e,a,o,r,t)=>{var n;if(!e.languageLoaders)return()=>{};const{languageLoaders:g}=e,s=document.createElement("select");s.className="codeblock-select";const c=document.createElement("option");return c.value="none",c.textContent=(null===(n=e.languageNameMap)||void 0===n?void 0:n.none)||"none",s.append(c),Object.keys(g).sort().forEach((a=>{var o;if(e.languageWhitelist&&!e.languageWhitelist.includes(a))return;const r=document.createElement("option");r.value=a,r.textContent=(null===(o=e.languageNameMap)||void 0===o?void 0:o[a])||a,s.append(r)})),s.value=o.attrs.lang||"none",a.prepend(s),s.onchange=e=>i(void 0,void 0,void 0,(function*(){if(!(e.target instanceof HTMLSelectElement))return;const a=e.target.value;"function"==typeof t&&r.dispatch(r.state.tr.setNodeMarkup(t(),void 0,Object.assign(Object.assign({},o.attrs),{lang:a})))})),()=>{}},updateSelect:(e,a,o,r,t,n)=>{if(n.attrs.lang!==o.attrs.lang){const e=a.querySelector(".codeblock-select");if(!(e instanceof HTMLSelectElement))return;e.value=o.attrs.lang||"none"}},stopEvent:()=>!0,readOnly:!1},S={[exports.CodeBlockLanguages.cpp]:()=>import("@codemirror/lang-cpp").then((e=>e.cpp())),[exports.CodeBlockLanguages.css]:()=>import("@codemirror/lang-css").then((e=>e.css())),[exports.CodeBlockLanguages.html]:()=>import("@codemirror/lang-html").then((e=>e.html())),[exports.CodeBlockLanguages.php]:()=>import("@codemirror/lang-php").then((e=>e.php())),[exports.CodeBlockLanguages.sql]:()=>import("@codemirror/lang-sql").then((e=>e.sql())),[exports.CodeBlockLanguages.xml]:()=>import("@codemirror/lang-xml").then((e=>e.xml())),[exports.CodeBlockLanguages.javascript]:()=>import("@codemirror/lang-javascript").then((e=>e.javascript())),[exports.CodeBlockLanguages.java]:()=>import("@codemirror/lang-java").then((e=>e.java())),[exports.CodeBlockLanguages.json]:()=>import("@codemirror/lang-json").then((e=>e.json())),[exports.CodeBlockLanguages.lezer]:()=>import("@codemirror/lang-lezer").then((e=>e.lezer())),[exports.CodeBlockLanguages.markdown]:()=>import("@codemirror/lang-markdown").then((e=>e.markdown())),[exports.CodeBlockLanguages.python]:()=>import("@codemirror/lang-python").then((e=>e.python())),[exports.CodeBlockLanguages.rust]:()=>import("@codemirror/lang-rust").then((e=>e.rust())),[exports.CodeBlockLanguages.wast]:()=>import("@codemirror/lang-wast").then((e=>e.wast()))},k={[exports.LegacyLanguages.apl]:()=>import("@codemirror/legacy-modes/mode/apl").then((({apl:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.asciiarmor]:()=>import("@codemirror/legacy-modes/mode/asciiarmor").then((({asciiArmor:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.asn1]:()=>import("@codemirror/legacy-modes/mode/asn1").then((({asn1:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.asterisk]:()=>import("@codemirror/legacy-modes/mode/asterisk").then((({asterisk:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.brainfuck]:()=>import("@codemirror/legacy-modes/mode/brainfuck").then((({brainfuck:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.clike]:()=>import("@codemirror/legacy-modes/mode/clike").then((({clike:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.clojure]:()=>import("@codemirror/legacy-modes/mode/clojure").then((({clojure:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.cmake]:()=>import("@codemirror/legacy-modes/mode/cmake").then((({cmake:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.cobol]:()=>import("@codemirror/legacy-modes/mode/cobol").then((({cobol:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.coffeescript]:()=>import("@codemirror/legacy-modes/mode/coffeescript").then((({coffeeScript:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.commonlisp]:()=>import("@codemirror/legacy-modes/mode/commonlisp").then((({commonLisp:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.crystal]:()=>import("@codemirror/legacy-modes/mode/crystal").then((({crystal:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.cypher]:()=>import("@codemirror/legacy-modes/mode/cypher").then((({cypher:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.d]:()=>import("@codemirror/legacy-modes/mode/d").then((({d:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.diff]:()=>import("@codemirror/legacy-modes/mode/diff").then((({diff:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.dockerfile]:()=>import("@codemirror/legacy-modes/mode/dockerfile").then((({dockerFile:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.dtd]:()=>import("@codemirror/legacy-modes/mode/dtd").then((({dtd:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.dylan]:()=>import("@codemirror/legacy-modes/mode/dylan").then((({dylan:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.ebnf]:()=>import("@codemirror/legacy-modes/mode/ebnf").then((({ebnf:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.ecl]:()=>import("@codemirror/legacy-modes/mode/ecl").then((({ecl:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.eiffel]:()=>import("@codemirror/legacy-modes/mode/eiffel").then((({eiffel:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.elm]:()=>import("@codemirror/legacy-modes/mode/elm").then((({elm:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.erlang]:()=>import("@codemirror/legacy-modes/mode/erlang").then((({erlang:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.factor]:()=>import("@codemirror/legacy-modes/mode/factor").then((({factor:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.fcl]:()=>import("@codemirror/legacy-modes/mode/fcl").then((({fcl:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.forth]:()=>import("@codemirror/legacy-modes/mode/forth").then((({forth:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.fortran]:()=>import("@codemirror/legacy-modes/mode/fortran").then((({fortran:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.gas]:()=>import("@codemirror/legacy-modes/mode/gas").then((({gas:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.gherkin]:()=>import("@codemirror/legacy-modes/mode/gherkin").then((({gherkin:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.go]:()=>import("@codemirror/legacy-modes/mode/go").then((({go:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.groovy]:()=>import("@codemirror/legacy-modes/mode/groovy").then((({groovy:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.haskell]:()=>import("@codemirror/legacy-modes/mode/haskell").then((({haskell:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.haxe]:()=>import("@codemirror/legacy-modes/mode/haxe").then((({haxe:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.http]:()=>import("@codemirror/legacy-modes/mode/http").then((({http:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.idl]:()=>import("@codemirror/legacy-modes/mode/idl").then((({idl:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.jinja2]:()=>import("@codemirror/legacy-modes/mode/jinja2").then((({jinja2:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.julia]:()=>import("@codemirror/legacy-modes/mode/julia").then((({julia:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.livescript]:()=>import("@codemirror/legacy-modes/mode/livescript").then((({liveScript:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.lua]:()=>import("@codemirror/legacy-modes/mode/lua").then((({lua:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.mathematica]:()=>import("@codemirror/legacy-modes/mode/mathematica").then((({mathematica:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.mbox]:()=>import("@codemirror/legacy-modes/mode/mbox").then((({mbox:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.mirc]:()=>import("@codemirror/legacy-modes/mode/mirc").then((({mirc:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.mllike]:()=>import("@codemirror/legacy-modes/mode/mllike").then((({oCaml:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.modelica]:()=>import("@codemirror/legacy-modes/mode/modelica").then((({modelica:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.mscgen]:()=>import("@codemirror/legacy-modes/mode/mscgen").then((({mscgen:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.mumps]:()=>import("@codemirror/legacy-modes/mode/mumps").then((({mumps:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.nginx]:()=>import("@codemirror/legacy-modes/mode/nginx").then((({nginx:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.nsis]:()=>import("@codemirror/legacy-modes/mode/nsis").then((({nsis:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.ntriples]:()=>import("@codemirror/legacy-modes/mode/ntriples").then((({ntriples:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.octave]:()=>import("@codemirror/legacy-modes/mode/octave").then((({octave:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.oz]:()=>import("@codemirror/legacy-modes/mode/oz").then((({oz:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.pascal]:()=>import("@codemirror/legacy-modes/mode/pascal").then((({pascal:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.perl]:()=>import("@codemirror/legacy-modes/mode/perl").then((({perl:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.pig]:()=>import("@codemirror/legacy-modes/mode/pig").then((({pig:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.powershell]:()=>import("@codemirror/legacy-modes/mode/powershell").then((({powerShell:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.properties]:()=>import("@codemirror/legacy-modes/mode/properties").then((({properties:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.protobuf]:()=>import("@codemirror/legacy-modes/mode/protobuf").then((({protobuf:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.puppet]:()=>import("@codemirror/legacy-modes/mode/puppet").then((({puppet:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.q]:()=>import("@codemirror/legacy-modes/mode/q").then((({q:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.r]:()=>import("@codemirror/legacy-modes/mode/r").then((({r:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.rpm]:()=>import("@codemirror/legacy-modes/mode/rpm").then((({rpmSpec:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.ruby]:()=>import("@codemirror/legacy-modes/mode/ruby").then((({ruby:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.sas]:()=>import("@codemirror/legacy-modes/mode/sas").then((({sas:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.scheme]:()=>import("@codemirror/legacy-modes/mode/scheme").then((({scheme:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.shell]:()=>import("@codemirror/legacy-modes/mode/shell").then((({shell:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.smalltalk]:()=>import("@codemirror/legacy-modes/mode/smalltalk").then((({smalltalk:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.solr]:()=>import("@codemirror/legacy-modes/mode/solr").then((({solr:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.sparql]:()=>import("@codemirror/legacy-modes/mode/sparql").then((({sparql:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.spreadsheet]:()=>import("@codemirror/legacy-modes/mode/spreadsheet").then((({spreadsheet:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.stex]:()=>import("@codemirror/legacy-modes/mode/stex").then((({stex:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.stylus]:()=>import("@codemirror/legacy-modes/mode/stylus").then((({stylus:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.swift]:()=>import("@codemirror/legacy-modes/mode/swift").then((({swift:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.tcl]:()=>import("@codemirror/legacy-modes/mode/tcl").then((({tcl:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.textile]:()=>import("@codemirror/legacy-modes/mode/textile").then((({textile:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.tiddlywiki]:()=>import("@codemirror/legacy-modes/mode/tiddlywiki").then((({tiddlyWiki:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.tiki]:()=>import("@codemirror/legacy-modes/mode/tiki").then((({tiki:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.toml]:()=>import("@codemirror/legacy-modes/mode/toml").then((({toml:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.troff]:()=>import("@codemirror/legacy-modes/mode/troff").then((({troff:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.ttcn]:()=>import("@codemirror/legacy-modes/mode/ttcn").then((({ttcn:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.turtle]:()=>import("@codemirror/legacy-modes/mode/turtle").then((({turtle:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.vb]:()=>import("@codemirror/legacy-modes/mode/vb").then((({vb:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.vbscript]:()=>import("@codemirror/legacy-modes/mode/vbscript").then((({vbScript:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.velocity]:()=>import("@codemirror/legacy-modes/mode/velocity").then((({velocity:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.verilog]:()=>import("@codemirror/legacy-modes/mode/verilog").then((({verilog:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.vhdl]:()=>import("@codemirror/legacy-modes/mode/vhdl").then((({vhdl:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.webidl]:()=>import("@codemirror/legacy-modes/mode/webidl").then((({webIDL:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.xquery]:()=>import("@codemirror/legacy-modes/mode/xquery").then((({xQuery:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.yacas]:()=>import("@codemirror/legacy-modes/mode/yacas").then((({yacas:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.yaml]:()=>import("@codemirror/legacy-modes/mode/yaml").then((({yaml:e})=>r.StreamLanguage.define(e))),[exports.LegacyLanguages.z80]:()=>import("@codemirror/legacy-modes/mode/z80").then((({z80:e})=>r.StreamLanguage.define(e)))},v=new e.PluginKey("codemirror-block"),b=a=>new e.Plugin({key:v,props:{nodeViews:{code_block:y(a)}}});exports.codeBlockArrowHandlers=L,exports.codeMirrorBlockKey=v,exports.codeMirrorBlockNodeView=y,exports.codeMirrorBlockPlugin=b,exports.default=b,exports.defaultSettings=x,exports.languageLoaders=S,exports.legacyLanguageLoaders=k;
package/dist/types.d.ts CHANGED
@@ -2,9 +2,9 @@ import { EditorState, Transaction } from "prosemirror-state";
2
2
  import { Node } from "prosemirror-model";
3
3
  import { EditorView } from "prosemirror-view";
4
4
  import { LanguageSupport } from "@codemirror/language";
5
- export declare type LanguageLoaders = Record<string, () => Promise<LanguageSupport>>;
5
+ export type LanguageLoaders = Record<string, () => Promise<LanguageSupport>>;
6
6
  import { Extension } from "@codemirror/state";
7
- export declare type CodeBlockSettings = {
7
+ export type CodeBlockSettings = {
8
8
  createSelect: (settings: CodeBlockSettings, dom: HTMLElement, node: Node, view: EditorView, getPos: (() => number) | boolean) => () => void;
9
9
  updateSelect: (settings: CodeBlockSettings, dom: HTMLElement, node: Node, view: EditorView, getPos: (() => number) | boolean, oldNode: Node) => void;
10
10
  stopEvent: (e: Event, node: Node, getPos: (() => number) | boolean, view: EditorView, dom: HTMLElement) => boolean;
@@ -14,4 +14,5 @@ export declare type CodeBlockSettings = {
14
14
  undo?: (state: EditorState, dispatch: (tr: Transaction) => void) => void;
15
15
  redo?: (state: EditorState, dispatch: (tr: Transaction) => void) => void;
16
16
  theme?: Extension[];
17
+ readOnly: boolean;
17
18
  };
package/dist/utils.d.ts CHANGED
@@ -9,15 +9,15 @@ export declare function computeChange(oldVal: string, newVal: string): {
9
9
  to: number;
10
10
  text: string;
11
11
  } | null;
12
- export declare const asProseMirrorSelection: (pmDoc: Node, cmView: EditorView, getPos: (() => number) | boolean) => TextSelection<any>;
12
+ export declare const asProseMirrorSelection: (pmDoc: Node, cmView: EditorView, getPos: (() => number) | boolean) => TextSelection;
13
13
  export declare const forwardSelection: (cmView: EditorView, pmView: PMEditorView, getPos: (() => number) | boolean) => void;
14
14
  export declare const valueChanged: (textUpdate: string, node: Node, getPos: (() => number) | boolean, view: PMEditorView) => void;
15
15
  export declare const maybeEscape: (unit: "char" | "line", dir: -1 | 1, cm: EditorView, view: PMEditorView, getPos: boolean | (() => number)) => boolean;
16
16
  export declare const backspaceHandler: (pmView: PMEditorView, view: EditorView) => boolean;
17
17
  export declare const setMode: (lang: string, cmView: EditorView, settings: CodeBlockSettings, languageConf: Compartment) => Promise<void>;
18
18
  export declare const codeBlockArrowHandlers: {
19
- ArrowLeft: (state: EditorState, dispatch: ((tr: Transaction) => void) | undefined, view?: PMEditorView<any> | undefined) => boolean;
20
- ArrowRight: (state: EditorState, dispatch: ((tr: Transaction) => void) | undefined, view?: PMEditorView<any> | undefined) => boolean;
21
- ArrowUp: (state: EditorState, dispatch: ((tr: Transaction) => void) | undefined, view?: PMEditorView<any> | undefined) => boolean;
22
- ArrowDown: (state: EditorState, dispatch: ((tr: Transaction) => void) | undefined, view?: PMEditorView<any> | undefined) => boolean;
19
+ ArrowLeft: (state: EditorState, dispatch: ((tr: Transaction) => void) | undefined, view?: PMEditorView) => boolean;
20
+ ArrowRight: (state: EditorState, dispatch: ((tr: Transaction) => void) | undefined, view?: PMEditorView) => boolean;
21
+ ArrowUp: (state: EditorState, dispatch: ((tr: Transaction) => void) | undefined, view?: PMEditorView) => boolean;
22
+ ArrowDown: (state: EditorState, dispatch: ((tr: Transaction) => void) | undefined, view?: PMEditorView) => boolean;
23
23
  };
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "prosemirror-codemirror-block",
3
- "version": "0.2.14",
3
+ "version": "0.3.0",
4
4
  "description": "ProseMirror CodeMirror code block plugin",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.es.js",
7
7
  "types": "dist/index.d.ts",
8
8
  "scripts": {
9
9
  "prebuild": "rimraf dist",
10
- "build": "rollup -c",
11
- "dev": "rollup -c -w",
10
+ "build": "rollup -c --bundleConfigAsCjs",
11
+ "dev": "rollup -c -w --bundleConfigAsCjs",
12
12
  "format": "eslint src --ext .ts --fix",
13
13
  "prepublishOnly": "npm run build && npm test && npm run lint",
14
14
  "version": "npm run format && git add -A src",
@@ -42,63 +42,53 @@
42
42
  "access": "public"
43
43
  },
44
44
  "dependencies": {
45
- "@codemirror/autocomplete": "^0.19.12",
46
- "@codemirror/closebrackets": "^0.19.0",
47
- "@codemirror/commands": "^0.19.8",
48
- "@codemirror/comment": "^0.19.0",
49
- "@codemirror/fold": "^0.19.3",
50
- "@codemirror/gutter": "^0.19.9",
51
- "@codemirror/highlight": "^0.19.7",
52
- "@codemirror/lang-cpp": "^0.19.1",
53
- "@codemirror/lang-css": "^0.19.3",
54
- "@codemirror/lang-html": "^0.19.4",
55
- "@codemirror/lang-java": "^0.19.1",
56
- "@codemirror/lang-javascript": "^0.19.7",
57
- "@codemirror/lang-json": "^0.19.1",
58
- "@codemirror/lang-lezer": "^0.19.1",
59
- "@codemirror/lang-markdown": "^0.19.5",
60
- "@codemirror/lang-php": "^0.19.1",
61
- "@codemirror/lang-python": "^0.19.4",
62
- "@codemirror/lang-rust": "^0.19.1",
63
- "@codemirror/lang-sql": "^0.19.4",
64
- "@codemirror/lang-wast": "^0.19.0",
65
- "@codemirror/lang-xml": "^0.19.2",
66
- "@codemirror/language": "^0.19.7",
67
- "@codemirror/legacy-modes": "^0.19.0",
68
- "@codemirror/matchbrackets": "^0.19.3",
69
- "@codemirror/rectangular-selection": "^0.19.1",
70
- "@codemirror/search": "^0.19.6",
71
- "@codemirror/state": "^0.19.6",
72
- "@codemirror/stream-parser": "^0.19.5",
73
- "@codemirror/view": "^0.19.40"
45
+ "@codemirror/autocomplete": "^6.3.4",
46
+ "@codemirror/commands": "^6.1.2",
47
+ "@codemirror/lang-cpp": "^6.0.2",
48
+ "@codemirror/lang-css": "^6.0.1",
49
+ "@codemirror/lang-html": "^6.4.0",
50
+ "@codemirror/lang-java": "^6.0.1",
51
+ "@codemirror/lang-javascript": "^6.1.2",
52
+ "@codemirror/lang-json": "^6.0.1",
53
+ "@codemirror/lang-lezer": "^6.0.1",
54
+ "@codemirror/lang-markdown": "^6.0.5",
55
+ "@codemirror/lang-php": "^6.0.1",
56
+ "@codemirror/lang-python": "^6.1.0",
57
+ "@codemirror/lang-rust": "^6.0.1",
58
+ "@codemirror/lang-sql": "^6.3.3",
59
+ "@codemirror/lang-wast": "^6.0.1",
60
+ "@codemirror/lang-xml": "^6.0.1",
61
+ "@codemirror/language": "^6.3.1",
62
+ "@codemirror/legacy-modes": "^6.3.1",
63
+ "@codemirror/search": "^6.2.3",
64
+ "@codemirror/view": "^6.7.1",
65
+ "@lezer/common": "^1.0.2"
74
66
  },
75
67
  "peerDependencies": {
76
- "prosemirror-commands": "^1.1.4",
77
- "prosemirror-model": "^1.15.0",
78
- "prosemirror-state": "^1.3.3"
68
+ "@codemirror/state": "^6.1.4",
69
+ "prosemirror-commands": "^1.5.0",
70
+ "prosemirror-model": "^1.18.3",
71
+ "prosemirror-state": "^1.4.2",
72
+ "prosemirror-view": "^1.29.1"
79
73
  },
80
74
  "devDependencies": {
81
- "@types/prosemirror-commands": "^1.0.4",
82
- "@types/prosemirror-model": "^1.13.2",
83
- "@types/prosemirror-state": "^1.2.8",
84
- "@types/prosemirror-view": "^1.19.1",
85
- "@typescript-eslint/eslint-plugin": "^5.4.0",
86
- "@typescript-eslint/parser": "^5.4.0",
87
- "eslint": "^8.2.0",
88
- "eslint-config-airbnb-typescript": "^16.0.0",
89
- "eslint-config-prettier": "^8.3.0",
90
- "eslint-plugin-import": "^2.25.3",
91
- "eslint-plugin-jsx-a11y": "^6.5.1",
92
- "eslint-plugin-prettier": "^4.0.0",
93
- "eslint-plugin-react": "^7.27.0",
94
- "np": "^7.5.0",
95
- "npm-check": "^5.9.2",
75
+ "@typescript-eslint/eslint-plugin": "^5.46.1",
76
+ "@typescript-eslint/parser": "^5.46.1",
77
+ "eslint": "^8.29.0",
78
+ "eslint-config-airbnb-typescript": "^17.0.0",
79
+ "eslint-config-prettier": "^8.5.0",
80
+ "eslint-plugin-import": "^2.26.0",
81
+ "eslint-plugin-jsx-a11y": "^6.6.1",
82
+ "eslint-plugin-prettier": "^4.2.1",
83
+ "eslint-plugin-react": "^7.31.11",
84
+ "np": "^7.6.2",
85
+ "npm-check": "^6.0.1",
96
86
  "npm-install-peers": "^1.2.2",
97
- "prettier": "^2.4.1",
98
- "rollup": "^2.60.0",
87
+ "prettier": "^2.8.1",
88
+ "rollup": "^3.7.4",
89
+ "rollup-plugin-minification": "^0.2.0",
99
90
  "rollup-plugin-peer-deps-external": "^2.2.4",
100
- "rollup-plugin-terser": "^7.0.2",
101
- "rollup-plugin-typescript2": "^0.31.0",
102
- "typescript": "^4.5.2"
91
+ "rollup-plugin-typescript2": "^0.34.1",
92
+ "typescript": "^4.9.4"
103
93
  }
104
94
  }