prosemirror-codemirror-block 0.2.3 → 0.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.es.js CHANGED
@@ -1,4 +1,4 @@
1
- import{Selection as t,TextSelection as e,PluginKey as o,Plugin as r}from"prosemirror-state";import{lineNumbers as n,highlightActiveLineGutter as a}from"@codemirror/gutter";import{closeBrackets as c,closeBracketsKeymap as s}from"@codemirror/closebrackets";import{drawSelection as i,highlightActiveLine as l,EditorView as m,keymap as d}from"@codemirror/view";import{highlightSelectionMatches as p,selectNextOccurrence as u}from"@codemirror/search";import{foldGutter as f,foldKeymap as h}from"@codemirror/fold";import{indentOnInput as g}from"@codemirror/language";import{autocompletion as v,completionKeymap as y}from"@codemirror/autocomplete";import{defaultKeymap as w,indentWithTab as k}from"@codemirror/commands";import{commentKeymap as x}from"@codemirror/comment";import{defaultHighlightStyle as j}from"@codemirror/highlight";import{rectangularSelection as b}from"@codemirror/rectangular-selection";import{bracketMatching as S}from"@codemirror/matchbrackets";import{Compartment as A,EditorState as M}from"@codemirror/state";import{setBlockType as q,selectAll as E}from"prosemirror-commands";
1
+ import{Selection as e,TextSelection as t,PluginKey as r,Plugin as o}from"prosemirror-state";import{lineNumbers as a,highlightActiveLineGutter as n}from"@codemirror/gutter";import{closeBrackets as l,closeBracketsKeymap as c}from"@codemirror/closebrackets";import{drawSelection as i,highlightActiveLine as s,EditorView as m,keymap as p}from"@codemirror/view";import{highlightSelectionMatches as d,selectNextOccurrence as u}from"@codemirror/search";import{foldGutter as f,foldKeymap as h}from"@codemirror/fold";import{indentOnInput as g}from"@codemirror/language";import{autocompletion as v,completionKeymap as y}from"@codemirror/autocomplete";import{defaultKeymap as k,indentWithTab as w}from"@codemirror/commands";import{commentKeymap as b}from"@codemirror/comment";import{defaultHighlightStyle as x}from"@codemirror/highlight";import{rectangularSelection as j}from"@codemirror/rectangular-selection";import{bracketMatching as q}from"@codemirror/matchbrackets";import{Compartment as S,EditorState as A}from"@codemirror/state";import{setBlockType as z,selectAll as M}from"prosemirror-commands";import{StreamLanguage as C}from"@codemirror/stream-parser";
2
2
  /*! *****************************************************************************
3
3
  Copyright (c) Microsoft Corporation.
4
4
 
@@ -12,4 +12,4 @@ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12
12
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
13
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
14
  PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */function C(t,e,o,r){return new(o||(o=Promise))((function(n,a){function c(t){try{i(r.next(t))}catch(t){a(t)}}function s(t){try{i(r.throw(t))}catch(t){a(t)}}function i(t){var e;t.done?n(t.value):(e=t.value,e instanceof o?e:new o((function(t){t(e)}))).then(c,s)}i((r=r.apply(t,e||[])).next())}))}function z(t,e){if(t===e)return null;let o=0,r=t.length,n=e.length;for(;o<r&&t.charCodeAt(o)===e.charCodeAt(o);)o+=1;for(;r>o&&n>o&&t.charCodeAt(r-1)===e.charCodeAt(n-1);)r-=1,n-=1;return{from:o,to:r,text:e.slice(o,n)}}const L=(t,o,r)=>{if(!t.hasFocus)return;const n=((t,o,r)=>{const n=("function"==typeof r&&r()||0)+1,a=o.state.selection.main.from+n,c=o.state.selection.main.to+n;return e.create(t,a,c)})(o.state.doc,t,r);n.eq(o.state.selection)||o.dispatch(o.state.tr.setSelection(n))},N=(e,o,r,n,a)=>{console.log("up");const c=r.state.selection.main,s=r.state.doc.lineAt(c.from),i=r.state.doc.lines;if(console.log({selEq:c.to!==c.from,lineeq:s.number!==(o<0?0:i),chareq:"char"===e&&c.from!==(o<0?0:s.to),getpos:"function"!=typeof a,line:s}),c.to!==c.from||s.number!==(o<0?1:i)||"char"===e&&c.from!==(o<0?0:s.to)||"function"!=typeof a)return!1;console.log("afterescapes"),n.focus();const l=n.state.doc.nodeAt(a());if(!l)return!1;const m=a()+(o<0?0:l.nodeSize),d=t.near(n.state.doc.resolve(m),o);return n.dispatch(n.state.tr.setSelection(d).scrollIntoView()),n.focus(),!0},O=(t,e)=>{const{selection:o}=e.state;return!o.main.empty||0!==o.main.from||(q(t.state.schema.nodes.paragraph)(t.state,t.dispatch),setTimeout((()=>t.focus()),20),!1)},T=(t,e,o,r)=>C(void 0,void 0,void 0,(function*(){var n,a;const c=yield null===(a=null===(n=o.languageLoaders)||void 0===n?void 0:n[t])||void 0===a?void 0:a.call(n);c&&e.dispatch({effects:r.reconfigure(c)})})),B=e=>(o,r,n)=>{if(o.selection.empty&&(null==n?void 0:n.endOfTextblock(e))){const n="left"===e||"up"===e?-1:1,{$head:a}=o.selection,c=t.near(o.doc.resolve(n>0?a.after():a.before()),n);if(c.$head&&"code_block"===c.$head.parent.type.name)return null==r||r(o.tr.setSelection(c)),!0}return!1},D={ArrowLeft:B("left"),ArrowRight:B("right"),ArrowUp:B("up"),ArrowDown:B("down")},H=t=>(e,o,r)=>{let q=e,C=!1;const B=document.createElement("div");B.className="codeblock-root";const D=new A,H=M.create({extensions:[n(),a(),f(),S(),c(),p(),v(),b(),i({cursorBlinkRate:1e3}),M.allowMultipleSelections.of(!0),l(),j.fallback,D.of([]),g(),m.domEventHandlers({blur(t,e){e.dispatch({selection:{anchor:0}})}}),d.of([{key:"Mod-d",run:u,preventDefault:!0},{key:"ArrowUp",run:t=>N("line",-1,t,o,r)},{key:"ArrowLeft",run:t=>N("char",-1,t,o,r)},{key:"ArrowDown",run:t=>N("line",1,t,o,r)},{key:"ArrowRight",run:t=>N("char",1,t,o,r)},{key:"Mod-z",run:()=>{var e;return(null===(e=t.undo)||void 0===e?void 0:e.call(t,o.state,o.dispatch))||!0},shift:()=>{var e;return(null===(e=t.redo)||void 0===e?void 0:e.call(t,o.state,o.dispatch))||!0}},{key:"Mod-y",run:()=>{var e;return(null===(e=t.redo)||void 0===e?void 0:e.call(t,o.state,o.dispatch))||!0}},{key:"Backspace",run:t=>O(o,t)},{key:"Mod-Backspace",run:t=>O(o,t)},{key:"Mod-a",run:()=>{const t=E(o.state,o.dispatch);return o.focus(),t}},...w,...h,...s,...y,...x,k])],doc:q.textContent}),R=new m({state:H,dispatch:t=>{if(!C){const e=t.state.toJSON().doc;R.update([t]),((t,e,o,r)=>{const n=z(e.textContent,t);if(n&&"function"==typeof o){const t=o()+1,e=r.state.tr.replaceWith(t+n.from,t+n.to,n.text?r.state.schema.text(n.text):null);r.dispatch(e)}})(e,q,r,o),L(R,o,r)}}});B.append(R.dom);const W=t.createSelect(t,B,q,o,r);return T(q.attrs.lang,R,t,D),{dom:B,selectNode(){R.focus()},stopEvent:()=>!0,setSelection:(t,e)=>{R.focus(),L(R,o,r),C=!0;const n="function"==typeof r?r():0;R.dispatch({selection:{anchor:t-n,head:e-n}}),C=!1},update:e=>{if(e.type.name!==q.type.name)return!1;e.attrs.lang!==q.attrs.lang&&T(e.attrs.lang,R,t,D);const n=q;q=e;const a=z(R.state.doc.toString(),q.textContent);return a&&(C=!0,R.dispatch({changes:{from:a.from,to:a.to,insert:a.text},selection:{anchor:a.from+a.text.length}}),C=!1),t.updateSelect(t,B,e,o,r,n),!0},ignoreMutation:()=>!0,destroy:()=>{W()}}};var R;!function(t){t.javascript="javascript",t.html="html",t.css="css",t.sql="sql",t.python="python",t.rust="rust",t.xml="xml",t.json="json",t.markdown="markdown",t.java="java",t.cpp="cpp",t.lezer="lezer",t.php="php",t.wast="wast"}(R||(R={}));const W={createSelect:(t,e,o,r,n)=>{var a;if(!t.languageLoaders)return()=>{};const{languageLoaders:c}=t,s=document.createElement("select");s.className="codeblock-select";const i=document.createElement("option");return i.value="none",i.textContent=(null===(a=t.languageNameMap)||void 0===a?void 0:a.none)||"none",s.append(i),Object.keys(c).sort().forEach((e=>{var o;if(t.languageWhitelist&&!t.languageWhitelist.includes(e))return;const r=document.createElement("option");r.value=e,r.textContent=(null===(o=t.languageNameMap)||void 0===o?void 0:o[e])||e,s.append(r)})),s.value=o.attrs.lang||"none",e.prepend(s),s.onchange=t=>C(void 0,void 0,void 0,(function*(){if(!(t.target instanceof HTMLSelectElement))return;const e=t.target.value;console.log({lang:e}),"function"==typeof n&&(console.log("dispatch"),r.dispatch(r.state.tr.setNodeMarkup(n(),void 0,Object.assign(Object.assign({},o.attrs),{lang:e}))))})),()=>{}},updateSelect:(t,e,o,r,n,a)=>{if(a.attrs.lang!==o.attrs.lang){const t=e.querySelector(".codeblock-select");if(!(t instanceof HTMLSelectElement))return;t.value=o.attrs.lang||"none"}}},$={[R.cpp]:()=>import("@codemirror/lang-cpp").then((t=>t.cpp())),[R.css]:()=>import("@codemirror/lang-css").then((t=>t.css())),[R.html]:()=>import("@codemirror/lang-html").then((t=>t.html())),[R.php]:()=>import("@codemirror/lang-php").then((t=>t.php())),[R.sql]:()=>import("@codemirror/lang-sql").then((t=>t.sql())),[R.xml]:()=>import("@codemirror/lang-xml").then((t=>t.xml())),[R.javascript]:()=>import("@codemirror/lang-javascript").then((t=>t.javascript())),[R.java]:()=>import("@codemirror/lang-java").then((t=>t.java())),[R.json]:()=>import("@codemirror/lang-json").then((t=>t.json())),[R.lezer]:()=>import("@codemirror/lang-lezer").then((t=>t.lezer())),[R.markdown]:()=>import("@codemirror/lang-markdown").then((t=>t.markdown())),[R.python]:()=>import("@codemirror/lang-python").then((t=>t.python())),[R.rust]:()=>import("@codemirror/lang-rust").then((t=>t.rust())),[R.wast]:()=>import("@codemirror/lang-wast").then((t=>t.wast()))},U=new o("codemirror-block"),V=t=>new r({key:U,props:{nodeViews:{code_block:H(t)}}});export{R as CodeBlockLanguages,D as codeBlockArrowHandlers,U as codeMirrorBlockKey,H as codeMirrorBlockNodeView,V as codeMirrorBlockPlugin,V as default,W as defaultSettings,$ as languageLoaders};
15
+ ***************************************************************************** */function E(e,t,r,o){return new(r||(r=Promise))((function(a,n){function l(e){try{i(o.next(e))}catch(e){n(e)}}function c(e){try{i(o.throw(e))}catch(e){n(e)}}function i(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(l,c)}i((o=o.apply(e,t||[])).next())}))}function L(e,t){if(e===t)return null;let r=0,o=e.length,a=t.length;for(;r<o&&e.charCodeAt(r)===t.charCodeAt(r);)r+=1;for(;o>r&&a>r&&e.charCodeAt(o-1)===t.charCodeAt(a-1);)o-=1,a-=1;return{from:r,to:o,text:t.slice(r,a)}}const N=(e,r,o)=>{if(!e.hasFocus)return;const a=((e,r,o)=>{const a=("function"==typeof o&&o()||0)+1,n=r.state.selection.main.from+a,l=r.state.selection.main.to+a;return t.create(e,n,l)})(r.state.doc,e,o);a.eq(r.state.selection)||r.dispatch(r.state.tr.setSelection(a))},O=(t,r,o,a,n)=>{const l=o.state.selection.main,c=o.state.doc.lineAt(l.from),i=o.state.doc.lines;if(l.to!==l.from||c.number!==(r<0?1:i)||"char"===t&&l.from!==(r<0?0:c.to)||"function"!=typeof n)return!1;a.focus();const s=a.state.doc.nodeAt(n());if(!s)return!1;const m=n()+(r<0?0:s.nodeSize),p=e.near(a.state.doc.resolve(m),r);return a.dispatch(a.state.tr.setSelection(p).scrollIntoView()),a.focus(),!0},T=(e,t)=>{const{selection:r}=t.state;return!(!r.main.empty||0!==r.main.from)&&(z(e.state.schema.nodes.paragraph)(e.state,e.dispatch),setTimeout((()=>e.focus()),20),!0)},B=(e,t,r,o)=>E(void 0,void 0,void 0,(function*(){var a,n;const l=yield null===(n=null===(a=r.languageLoaders)||void 0===a?void 0:a[e])||void 0===n?void 0:n.call(a);l&&t.dispatch({effects:o.reconfigure(l)})})),D=t=>(r,o,a)=>{if(r.selection.empty&&(null==a?void 0:a.endOfTextblock(t))){const a="left"===t||"up"===t?-1:1,{$head:n}=r.selection,l=e.near(r.doc.resolve(a>0?n.after():n.before()),a);if(l.$head&&"code_block"===l.$head.parent.type.name)return null==o||o(r.tr.setSelection(l)),!0}return!1},H={ArrowLeft:D("left"),ArrowRight:D("right"),ArrowUp:D("up"),ArrowDown:D("down")},R=e=>(t,r,o)=>{let z=t,C=!1;const E=document.createElement("div");E.className="codeblock-root";const D=new S,H=A.create({extensions:[a(),n(),f(),q(),l(),d(),v(),j(),i({cursorBlinkRate:1e3}),A.allowMultipleSelections.of(!0),s(),x.fallback,D.of([]),g(),m.domEventHandlers({blur(e,t){t.dispatch({selection:{anchor:0}})}}),p.of([{key:"Mod-d",run:u,preventDefault:!0},{key:"ArrowUp",run:e=>O("line",-1,e,r,o)},{key:"ArrowLeft",run:e=>O("char",-1,e,r,o)},{key:"ArrowDown",run:e=>O("line",1,e,r,o)},{key:"ArrowRight",run:e=>O("char",1,e,r,o)},{key:"Mod-z",run:()=>{var t;return(null===(t=e.undo)||void 0===t?void 0:t.call(e,r.state,r.dispatch))||!0},shift:()=>{var t;return(null===(t=e.redo)||void 0===t?void 0:t.call(e,r.state,r.dispatch))||!0}},{key:"Mod-y",run:()=>{var t;return(null===(t=e.redo)||void 0===t?void 0:t.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}},...k,...h,...c,...y,...b,w]),...e.theme?e.theme:[]],doc:z.textContent}),R=new m({state:H,dispatch:e=>{if(R.update([e]),!C){((e,t,r,o)=>{const a=L(t.textContent,e);if(a&&"function"==typeof r){const e=r()+1,t=o.state.tr.replaceWith(e+a.from,e+a.to,a.text?o.state.schema.text(a.text):null);o.dispatch(t)}})(e.state.toJSON().doc,z,o,r),N(R,r,o)}}});E.append(R.dom);const W=e.createSelect(e,E,z,r,o);return B(z.attrs.lang,R,e,D),{dom:E,selectNode(){R.focus()},stopEvent:()=>!0,setSelection:(e,t)=>{R.focus(),N(R,r,o),C=!0,"function"==typeof o&&o(),R.dispatch({selection:{anchor:e,head:t}}),C=!1},update:t=>{if(t.type.name!==z.type.name)return!1;t.attrs.lang!==z.attrs.lang&&B(t.attrs.lang,R,e,D);const a=z;z=t;const n=L(R.state.doc.toString(),z.textContent);return n&&(C=!0,R.dispatch({changes:{from:n.from,to:n.to,insert:n.text},selection:{anchor:n.from+n.text.length}}),C=!1),e.updateSelect(e,E,t,r,o,a),!0},ignoreMutation:()=>!0,destroy:()=>{W()}}};var W,$;!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"}(W||(W={})),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"}($||($={}));const U={createSelect:(e,t,r,o,a)=>{var n;if(!e.languageLoaders)return()=>{};const{languageLoaders:l}=e,c=document.createElement("select");c.className="codeblock-select";const i=document.createElement("option");return i.value="none",i.textContent=(null===(n=e.languageNameMap)||void 0===n?void 0:n.none)||"none",c.append(i),Object.keys(l).sort().forEach((t=>{var r;if(e.languageWhitelist&&!e.languageWhitelist.includes(t))return;const o=document.createElement("option");o.value=t,o.textContent=(null===(r=e.languageNameMap)||void 0===r?void 0:r[t])||t,c.append(o)})),c.value=r.attrs.lang||"none",t.prepend(c),c.onchange=e=>E(void 0,void 0,void 0,(function*(){if(!(e.target instanceof HTMLSelectElement))return;const t=e.target.value;"function"==typeof a&&o.dispatch(o.state.tr.setNodeMarkup(a(),void 0,Object.assign(Object.assign({},r.attrs),{lang:t})))})),()=>{}},updateSelect:(e,t,r,o,a,n)=>{if(n.attrs.lang!==r.attrs.lang){const e=t.querySelector(".codeblock-select");if(!(e instanceof HTMLSelectElement))return;e.value=r.attrs.lang||"none"}}},V={[W.cpp]:()=>import("@codemirror/lang-cpp").then((e=>e.cpp())),[W.css]:()=>import("@codemirror/lang-css").then((e=>e.css())),[W.html]:()=>import("@codemirror/lang-html").then((e=>e.html())),[W.php]:()=>import("@codemirror/lang-php").then((e=>e.php())),[W.sql]:()=>import("@codemirror/lang-sql").then((e=>e.sql())),[W.xml]:()=>import("@codemirror/lang-xml").then((e=>e.xml())),[W.javascript]:()=>import("@codemirror/lang-javascript").then((e=>e.javascript())),[W.java]:()=>import("@codemirror/lang-java").then((e=>e.java())),[W.json]:()=>import("@codemirror/lang-json").then((e=>e.json())),[W.lezer]:()=>import("@codemirror/lang-lezer").then((e=>e.lezer())),[W.markdown]:()=>import("@codemirror/lang-markdown").then((e=>e.markdown())),[W.python]:()=>import("@codemirror/lang-python").then((e=>e.python())),[W.rust]:()=>import("@codemirror/lang-rust").then((e=>e.rust())),[W.wast]:()=>import("@codemirror/lang-wast").then((e=>e.wast()))};$.apl,$.asciiarmor,$.asn1,$.asterisk,$.brainfuck,$.clike,$.clojure,$.cmake,$.cobol,$.coffeescript,$.commonlisp,$.crystal,$.cypher,$.d,$.diff,$.dockerfile,$.dtd,$.dylan,$.ebnf,$.ecl,$.eiffel,$.elm,$.erlang,$.factor,$.fcl,$.forth,$.fortran,$.gas,$.gherkin,$.go,$.groovy,$.haskell,$.haxe,$.http,$.idl,$.jinja2,$.julia,$.livescript,$.lua,$.mathematica,$.mbox,$.mirc,$.mllike,$.modelica,$.mscgen,$.mumps,$.nginx,$.nsis,$.ntriples,$.octave,$.oz,$.pascal,$.perl,$.pig,$.powershell,$.properties,$.protobuf,$.puppet,$.q,$.r,$.rpm,$.ruby,$.sas,$.scheme,$.shell,$.smalltalk,$.solr,$.sparql,$.spreadsheet,$.stex,$.stylus,$.swift,$.tcl,$.textile,$.tiddlywiki,$.tiki,$.toml,$.troff,$.ttcn,$.turtle,$.vb,$.vbscript,$.velocity,$.verilog,$.vhdl,$.webidl,$.xquery,$.yacas,$.yaml,$.z80;const _=new r("codemirror-block"),F=e=>new o({key:_,props:{nodeViews:{code_block:R(e)}}});export{W as CodeBlockLanguages,H as codeBlockArrowHandlers,_ as codeMirrorBlockKey,R as codeMirrorBlockNodeView,F as codeMirrorBlockPlugin,F as default,U as defaultSettings,V as languageLoaders};
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("prosemirror-state"),t=require("@codemirror/gutter"),r=require("@codemirror/closebrackets"),o=require("@codemirror/view"),n=require("@codemirror/search"),a=require("@codemirror/fold"),c=require("@codemirror/language"),s=require("@codemirror/autocomplete"),i=require("@codemirror/commands"),l=require("@codemirror/comment"),u=require("@codemirror/highlight"),d=require("@codemirror/rectangular-selection"),p=require("@codemirror/matchbrackets"),m=require("@codemirror/state"),g=require("prosemirror-commands");function h(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var o=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,o.get?o:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("prosemirror-state"),t=require("@codemirror/gutter"),r=require("@codemirror/closebrackets"),o=require("@codemirror/view"),n=require("@codemirror/search"),a=require("@codemirror/fold"),c=require("@codemirror/language"),l=require("@codemirror/autocomplete"),i=require("@codemirror/commands"),s=require("@codemirror/comment"),u=require("@codemirror/highlight"),d=require("@codemirror/rectangular-selection"),p=require("@codemirror/matchbrackets"),m=require("@codemirror/state"),f=require("prosemirror-commands");require("@codemirror/stream-parser");function h(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var o=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,o.get?o:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}
2
2
  /*! *****************************************************************************
3
3
  Copyright (c) Microsoft Corporation.
4
4
 
@@ -12,4 +12,4 @@ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12
12
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
13
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
14
  PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */function f(e,t,r,o){return new(r||(r=Promise))((function(n,a){function c(e){try{i(o.next(e))}catch(e){a(e)}}function s(e){try{i(o.throw(e))}catch(e){a(e)}}function i(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(c,s)}i((o=o.apply(e,t||[])).next())}))}function v(e,t){if(e===t)return null;let r=0,o=e.length,n=t.length;for(;r<o&&e.charCodeAt(r)===t.charCodeAt(r);)r+=1;for(;o>r&&n>r&&e.charCodeAt(o-1)===t.charCodeAt(n-1);)o-=1,n-=1;return{from:r,to:o,text:t.slice(r,n)}}const k=(t,r,o)=>{if(!t.hasFocus)return;const n=((t,r,o)=>{const n=("function"==typeof o&&o()||0)+1,a=r.state.selection.main.from+n,c=r.state.selection.main.to+n;return e.TextSelection.create(t,a,c)})(r.state.doc,t,o);n.eq(r.state.selection)||r.dispatch(r.state.tr.setSelection(n))},y=(t,r,o,n,a)=>{console.log("up");const c=o.state.selection.main,s=o.state.doc.lineAt(c.from),i=o.state.doc.lines;if(console.log({selEq:c.to!==c.from,lineeq:s.number!==(r<0?0:i),chareq:"char"===t&&c.from!==(r<0?0:s.to),getpos:"function"!=typeof a,line:s}),c.to!==c.from||s.number!==(r<0?1:i)||"char"===t&&c.from!==(r<0?0:s.to)||"function"!=typeof a)return!1;console.log("afterescapes"),n.focus();const l=n.state.doc.nodeAt(a());if(!l)return!1;const u=a()+(r<0?0:l.nodeSize),d=e.Selection.near(n.state.doc.resolve(u),r);return n.dispatch(n.state.tr.setSelection(d).scrollIntoView()),n.focus(),!0},x=(e,t)=>{const{selection:r}=t.state;return!r.main.empty||0!==r.main.from||(g.setBlockType(e.state.schema.nodes.paragraph)(e.state,e.dispatch),setTimeout((()=>e.focus()),20),!1)},q=(e,t,r,o)=>f(void 0,void 0,void 0,(function*(){var n,a;const c=yield null===(a=null===(n=r.languageLoaders)||void 0===n?void 0:n[e])||void 0===a?void 0:a.call(n);c&&t.dispatch({effects:o.reconfigure(c)})})),w=t=>(r,o,n)=>{if(r.selection.empty&&(null==n?void 0:n.endOfTextblock(t))){const n="left"===t||"up"===t?-1:1,{$head:a}=r.selection,c=e.Selection.near(r.doc.resolve(n>0?a.after():a.before()),n);if(c.$head&&"code_block"===c.$head.parent.type.name)return null==o||o(r.tr.setSelection(c)),!0}return!1},b={ArrowLeft:w("left"),ArrowRight:w("right"),ArrowUp:w("up"),ArrowDown:w("down")},B=e=>(h,f,w)=>{let b=h,B=!1;const C=document.createElement("div");C.className="codeblock-root";const L=new m.Compartment,S=m.EditorState.create({extensions:[t.lineNumbers(),t.highlightActiveLineGutter(),a.foldGutter(),p.bracketMatching(),r.closeBrackets(),n.highlightSelectionMatches(),s.autocompletion(),d.rectangularSelection(),o.drawSelection({cursorBlinkRate:1e3}),m.EditorState.allowMultipleSelections.of(!0),o.highlightActiveLine(),u.defaultHighlightStyle.fallback,L.of([]),c.indentOnInput(),o.EditorView.domEventHandlers({blur(e,t){t.dispatch({selection:{anchor:0}})}}),o.keymap.of([{key:"Mod-d",run:n.selectNextOccurrence,preventDefault:!0},{key:"ArrowUp",run:e=>y("line",-1,e,f,w)},{key:"ArrowLeft",run:e=>y("char",-1,e,f,w)},{key:"ArrowDown",run:e=>y("line",1,e,f,w)},{key:"ArrowRight",run:e=>y("char",1,e,f,w)},{key:"Mod-z",run:()=>{var t;return(null===(t=e.undo)||void 0===t?void 0:t.call(e,f.state,f.dispatch))||!0},shift:()=>{var t;return(null===(t=e.redo)||void 0===t?void 0:t.call(e,f.state,f.dispatch))||!0}},{key:"Mod-y",run:()=>{var t;return(null===(t=e.redo)||void 0===t?void 0:t.call(e,f.state,f.dispatch))||!0}},{key:"Backspace",run:e=>x(f,e)},{key:"Mod-Backspace",run:e=>x(f,e)},{key:"Mod-a",run:()=>{const e=g.selectAll(f.state,f.dispatch);return f.focus(),e}},...i.defaultKeymap,...a.foldKeymap,...r.closeBracketsKeymap,...s.completionKeymap,...l.commentKeymap,i.indentWithTab])],doc:b.textContent}),j=new o.EditorView({state:S,dispatch:e=>{if(!B){const t=e.state.toJSON().doc;j.update([e]),((e,t,r,o)=>{const n=v(t.textContent,e);if(n&&"function"==typeof r){const e=r()+1,t=o.state.tr.replaceWith(e+n.from,e+n.to,n.text?o.state.schema.text(n.text):null);o.dispatch(t)}})(t,b,w,f),k(j,f,w)}}});C.append(j.dom);const P=e.createSelect(e,C,b,f,w);return q(b.attrs.lang,j,e,L),{dom:C,selectNode(){j.focus()},stopEvent:()=>!0,setSelection:(e,t)=>{j.focus(),k(j,f,w),B=!0;const r="function"==typeof w?w():0;j.dispatch({selection:{anchor:e-r,head:t-r}}),B=!1},update:t=>{if(t.type.name!==b.type.name)return!1;t.attrs.lang!==b.attrs.lang&&q(t.attrs.lang,j,e,L);const r=b;b=t;const o=v(j.state.doc.toString(),b.textContent);return o&&(B=!0,j.dispatch({changes:{from:o.from,to:o.to,insert:o.text},selection:{anchor:o.from+o.text.length}}),B=!1),e.updateSelect(e,C,t,f,w,r),!0},ignoreMutation:()=>!0,destroy:()=>{P()}}};var C;exports.CodeBlockLanguages=void 0,(C=exports.CodeBlockLanguages||(exports.CodeBlockLanguages={})).javascript="javascript",C.html="html",C.css="css",C.sql="sql",C.python="python",C.rust="rust",C.xml="xml",C.json="json",C.markdown="markdown",C.java="java",C.cpp="cpp",C.lezer="lezer",C.php="php",C.wast="wast";const L={createSelect:(e,t,r,o,n)=>{var a;if(!e.languageLoaders)return()=>{};const{languageLoaders:c}=e,s=document.createElement("select");s.className="codeblock-select";const i=document.createElement("option");return i.value="none",i.textContent=(null===(a=e.languageNameMap)||void 0===a?void 0:a.none)||"none",s.append(i),Object.keys(c).sort().forEach((t=>{var r;if(e.languageWhitelist&&!e.languageWhitelist.includes(t))return;const o=document.createElement("option");o.value=t,o.textContent=(null===(r=e.languageNameMap)||void 0===r?void 0:r[t])||t,s.append(o)})),s.value=r.attrs.lang||"none",t.prepend(s),s.onchange=e=>f(void 0,void 0,void 0,(function*(){if(!(e.target instanceof HTMLSelectElement))return;const t=e.target.value;console.log({lang:t}),"function"==typeof n&&(console.log("dispatch"),o.dispatch(o.state.tr.setNodeMarkup(n(),void 0,Object.assign(Object.assign({},r.attrs),{lang:t}))))})),()=>{}},updateSelect:(e,t,r,o,n,a)=>{if(a.attrs.lang!==r.attrs.lang){const e=t.querySelector(".codeblock-select");if(!(e instanceof HTMLSelectElement))return;e.value=r.attrs.lang||"none"}}},S={[exports.CodeBlockLanguages.cpp]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-cpp"))})).then((e=>e.cpp())),[exports.CodeBlockLanguages.css]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-css"))})).then((e=>e.css())),[exports.CodeBlockLanguages.html]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-html"))})).then((e=>e.html())),[exports.CodeBlockLanguages.php]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-php"))})).then((e=>e.php())),[exports.CodeBlockLanguages.sql]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-sql"))})).then((e=>e.sql())),[exports.CodeBlockLanguages.xml]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-xml"))})).then((e=>e.xml())),[exports.CodeBlockLanguages.javascript]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-javascript"))})).then((e=>e.javascript())),[exports.CodeBlockLanguages.java]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-java"))})).then((e=>e.java())),[exports.CodeBlockLanguages.json]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-json"))})).then((e=>e.json())),[exports.CodeBlockLanguages.lezer]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-lezer"))})).then((e=>e.lezer())),[exports.CodeBlockLanguages.markdown]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-markdown"))})).then((e=>e.markdown())),[exports.CodeBlockLanguages.python]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-python"))})).then((e=>e.python())),[exports.CodeBlockLanguages.rust]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-rust"))})).then((e=>e.rust())),[exports.CodeBlockLanguages.wast]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-wast"))})).then((e=>e.wast()))},j=new e.PluginKey("codemirror-block"),P=t=>new e.Plugin({key:j,props:{nodeViews:{code_block:B(t)}}});exports.codeBlockArrowHandlers=b,exports.codeMirrorBlockKey=j,exports.codeMirrorBlockNodeView=B,exports.codeMirrorBlockPlugin=P,exports.default=P,exports.defaultSettings=L,exports.languageLoaders=S;
15
+ ***************************************************************************** */function g(e,t,r,o){return new(r||(r=Promise))((function(n,a){function c(e){try{i(o.next(e))}catch(e){a(e)}}function l(e){try{i(o.throw(e))}catch(e){a(e)}}function i(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(c,l)}i((o=o.apply(e,t||[])).next())}))}function v(e,t){if(e===t)return null;let r=0,o=e.length,n=t.length;for(;r<o&&e.charCodeAt(r)===t.charCodeAt(r);)r+=1;for(;o>r&&n>r&&e.charCodeAt(o-1)===t.charCodeAt(n-1);)o-=1,n-=1;return{from:r,to:o,text:t.slice(r,n)}}const k=(t,r,o)=>{if(!t.hasFocus)return;const n=((t,r,o)=>{const n=("function"==typeof o&&o()||0)+1,a=r.state.selection.main.from+n,c=r.state.selection.main.to+n;return e.TextSelection.create(t,a,c)})(r.state.doc,t,o);n.eq(r.state.selection)||r.dispatch(r.state.tr.setSelection(n))},y=(t,r,o,n,a)=>{const c=o.state.selection.main,l=o.state.doc.lineAt(c.from),i=o.state.doc.lines;if(c.to!==c.from||l.number!==(r<0?1:i)||"char"===t&&c.from!==(r<0?0:l.to)||"function"!=typeof a)return!1;n.focus();const s=n.state.doc.nodeAt(a());if(!s)return!1;const u=a()+(r<0?0:s.nodeSize),d=e.Selection.near(n.state.doc.resolve(u),r);return n.dispatch(n.state.tr.setSelection(d).scrollIntoView()),n.focus(),!0},x=(e,t)=>{const{selection:r}=t.state;return!(!r.main.empty||0!==r.main.from)&&(f.setBlockType(e.state.schema.nodes.paragraph)(e.state,e.dispatch),setTimeout((()=>e.focus()),20),!0)},b=(e,t,r,o)=>g(void 0,void 0,void 0,(function*(){var n,a;const c=yield null===(a=null===(n=r.languageLoaders)||void 0===n?void 0:n[e])||void 0===a?void 0:a.call(n);c&&t.dispatch({effects:o.reconfigure(c)})})),w=t=>(r,o,n)=>{if(r.selection.empty&&(null==n?void 0:n.endOfTextblock(t))){const n="left"===t||"up"===t?-1:1,{$head:a}=r.selection,c=e.Selection.near(r.doc.resolve(n>0?a.after():a.before()),n);if(c.$head&&"code_block"===c.$head.parent.type.name)return null==o||o(r.tr.setSelection(c)),!0}return!1},q={ArrowLeft:w("left"),ArrowRight:w("right"),ArrowUp:w("up"),ArrowDown:w("down")},j=e=>(h,g,w)=>{let q=h,j=!1;const B=document.createElement("div");B.className="codeblock-root";const C=new m.Compartment,L=m.EditorState.create({extensions:[t.lineNumbers(),t.highlightActiveLineGutter(),a.foldGutter(),p.bracketMatching(),r.closeBrackets(),n.highlightSelectionMatches(),l.autocompletion(),d.rectangularSelection(),o.drawSelection({cursorBlinkRate:1e3}),m.EditorState.allowMultipleSelections.of(!0),o.highlightActiveLine(),u.defaultHighlightStyle.fallback,C.of([]),c.indentOnInput(),o.EditorView.domEventHandlers({blur(e,t){t.dispatch({selection:{anchor:0}})}}),o.keymap.of([{key:"Mod-d",run:n.selectNextOccurrence,preventDefault:!0},{key:"ArrowUp",run:e=>y("line",-1,e,g,w)},{key:"ArrowLeft",run:e=>y("char",-1,e,g,w)},{key:"ArrowDown",run:e=>y("line",1,e,g,w)},{key:"ArrowRight",run:e=>y("char",1,e,g,w)},{key:"Mod-z",run:()=>{var t;return(null===(t=e.undo)||void 0===t?void 0:t.call(e,g.state,g.dispatch))||!0},shift:()=>{var t;return(null===(t=e.redo)||void 0===t?void 0:t.call(e,g.state,g.dispatch))||!0}},{key:"Mod-y",run:()=>{var t;return(null===(t=e.redo)||void 0===t?void 0:t.call(e,g.state,g.dispatch))||!0}},{key:"Backspace",run:e=>x(g,e)},{key:"Mod-Backspace",run:e=>x(g,e)},{key:"Mod-a",run:()=>{const e=f.selectAll(g.state,g.dispatch);return g.focus(),e}},...i.defaultKeymap,...a.foldKeymap,...r.closeBracketsKeymap,...l.completionKeymap,...s.commentKeymap,i.indentWithTab]),...e.theme?e.theme:[]],doc:q.textContent}),S=new o.EditorView({state:L,dispatch:e=>{if(S.update([e]),!j){((e,t,r,o)=>{const n=v(t.textContent,e);if(n&&"function"==typeof r){const e=r()+1,t=o.state.tr.replaceWith(e+n.from,e+n.to,n.text?o.state.schema.text(n.text):null);o.dispatch(t)}})(e.state.toJSON().doc,q,w,g),k(S,g,w)}}});B.append(S.dom);const P=e.createSelect(e,B,q,g,w);return b(q.attrs.lang,S,e,C),{dom:B,selectNode(){S.focus()},stopEvent:()=>!0,setSelection:(e,t)=>{S.focus(),k(S,g,w),j=!0,"function"==typeof w&&w(),S.dispatch({selection:{anchor:e,head:t}}),j=!1},update:t=>{if(t.type.name!==q.type.name)return!1;t.attrs.lang!==q.attrs.lang&&b(t.attrs.lang,S,e,C);const r=q;q=t;const o=v(S.state.doc.toString(),q.textContent);return o&&(j=!0,S.dispatch({changes:{from:o.from,to:o.to,insert:o.text},selection:{anchor:o.from+o.text.length}}),j=!1),e.updateSelect(e,B,t,g,w,r),!0},ignoreMutation:()=>!0,destroy:()=>{P()}}};var B,C;exports.CodeBlockLanguages=void 0,(B=exports.CodeBlockLanguages||(exports.CodeBlockLanguages={})).javascript="javascript",B.html="html",B.css="css",B.sql="sql",B.python="python",B.rust="rust",B.xml="xml",B.json="json",B.markdown="markdown",B.java="java",B.cpp="cpp",B.lezer="lezer",B.php="php",B.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"}(C||(C={}));const L={createSelect:(e,t,r,o,n)=>{var a;if(!e.languageLoaders)return()=>{};const{languageLoaders:c}=e,l=document.createElement("select");l.className="codeblock-select";const i=document.createElement("option");return i.value="none",i.textContent=(null===(a=e.languageNameMap)||void 0===a?void 0:a.none)||"none",l.append(i),Object.keys(c).sort().forEach((t=>{var r;if(e.languageWhitelist&&!e.languageWhitelist.includes(t))return;const o=document.createElement("option");o.value=t,o.textContent=(null===(r=e.languageNameMap)||void 0===r?void 0:r[t])||t,l.append(o)})),l.value=r.attrs.lang||"none",t.prepend(l),l.onchange=e=>g(void 0,void 0,void 0,(function*(){if(!(e.target instanceof HTMLSelectElement))return;const t=e.target.value;"function"==typeof n&&o.dispatch(o.state.tr.setNodeMarkup(n(),void 0,Object.assign(Object.assign({},r.attrs),{lang:t})))})),()=>{}},updateSelect:(e,t,r,o,n,a)=>{if(a.attrs.lang!==r.attrs.lang){const e=t.querySelector(".codeblock-select");if(!(e instanceof HTMLSelectElement))return;e.value=r.attrs.lang||"none"}}},S={[exports.CodeBlockLanguages.cpp]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-cpp"))})).then((e=>e.cpp())),[exports.CodeBlockLanguages.css]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-css"))})).then((e=>e.css())),[exports.CodeBlockLanguages.html]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-html"))})).then((e=>e.html())),[exports.CodeBlockLanguages.php]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-php"))})).then((e=>e.php())),[exports.CodeBlockLanguages.sql]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-sql"))})).then((e=>e.sql())),[exports.CodeBlockLanguages.xml]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-xml"))})).then((e=>e.xml())),[exports.CodeBlockLanguages.javascript]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-javascript"))})).then((e=>e.javascript())),[exports.CodeBlockLanguages.java]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-java"))})).then((e=>e.java())),[exports.CodeBlockLanguages.json]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-json"))})).then((e=>e.json())),[exports.CodeBlockLanguages.lezer]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-lezer"))})).then((e=>e.lezer())),[exports.CodeBlockLanguages.markdown]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-markdown"))})).then((e=>e.markdown())),[exports.CodeBlockLanguages.python]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-python"))})).then((e=>e.python())),[exports.CodeBlockLanguages.rust]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-rust"))})).then((e=>e.rust())),[exports.CodeBlockLanguages.wast]:()=>Promise.resolve().then((function(){return h(require("@codemirror/lang-wast"))})).then((e=>e.wast()))};C.apl,C.asciiarmor,C.asn1,C.asterisk,C.brainfuck,C.clike,C.clojure,C.cmake,C.cobol,C.coffeescript,C.commonlisp,C.crystal,C.cypher,C.d,C.diff,C.dockerfile,C.dtd,C.dylan,C.ebnf,C.ecl,C.eiffel,C.elm,C.erlang,C.factor,C.fcl,C.forth,C.fortran,C.gas,C.gherkin,C.go,C.groovy,C.haskell,C.haxe,C.http,C.idl,C.jinja2,C.julia,C.livescript,C.lua,C.mathematica,C.mbox,C.mirc,C.mllike,C.modelica,C.mscgen,C.mumps,C.nginx,C.nsis,C.ntriples,C.octave,C.oz,C.pascal,C.perl,C.pig,C.powershell,C.properties,C.protobuf,C.puppet,C.q,C.r,C.rpm,C.ruby,C.sas,C.scheme,C.shell,C.smalltalk,C.solr,C.sparql,C.spreadsheet,C.stex,C.stylus,C.swift,C.tcl,C.textile,C.tiddlywiki,C.tiki,C.toml,C.troff,C.ttcn,C.turtle,C.vb,C.vbscript,C.velocity,C.verilog,C.vhdl,C.webidl,C.xquery,C.yacas,C.yaml,C.z80;const P=new e.PluginKey("codemirror-block"),M=t=>new e.Plugin({key:P,props:{nodeViews:{code_block:j(t)}}});exports.codeBlockArrowHandlers=q,exports.codeMirrorBlockKey=P,exports.codeMirrorBlockNodeView=j,exports.codeMirrorBlockPlugin=M,exports.default=M,exports.defaultSettings=L,exports.languageLoaders=S;
@@ -1,3 +1,4 @@
1
1
  import { LanguageLoaders } from "./types";
2
2
  declare const languageLoaders: LanguageLoaders;
3
+ export declare const legacyLanguageLoaders: LanguageLoaders;
3
4
  export default languageLoaders;
@@ -14,3 +14,95 @@ export declare enum CodeBlockLanguages {
14
14
  php = "php",
15
15
  wast = "wast"
16
16
  }
17
+ export declare enum LegacyLanguages {
18
+ apl = "apl",
19
+ asciiarmor = "asciiarmor",
20
+ asn1 = "asn1",
21
+ asterisk = "asterisk",
22
+ brainfuck = "brainfuck",
23
+ clike = "clike",
24
+ clojure = "clojure",
25
+ cmake = "cmake",
26
+ cobol = "cobol",
27
+ coffeescript = "coffeescript",
28
+ commonlisp = "commonlisp",
29
+ crystal = "crystal",
30
+ cypher = "cypher",
31
+ d = "d",
32
+ diff = "diff",
33
+ dockerfile = "dockerfile",
34
+ dtd = "dtd",
35
+ dylan = "dylan",
36
+ ebnf = "ebnf",
37
+ ecl = "ecl",
38
+ eiffel = "eiffel",
39
+ elm = "elm",
40
+ erlang = "erlang",
41
+ factor = "factor",
42
+ fcl = "fcl",
43
+ forth = "forth",
44
+ fortran = "fortran",
45
+ gas = "gas",
46
+ gherkin = "gherkin",
47
+ go = "go",
48
+ groovy = "groovy",
49
+ haskell = "haskell",
50
+ haxe = "haxe",
51
+ http = "http",
52
+ idl = "idl",
53
+ jinja2 = "jinja2",
54
+ julia = "julia",
55
+ livescript = "livescript",
56
+ lua = "lua",
57
+ mathematica = "mathematica",
58
+ mbox = "mbox",
59
+ mirc = "mirc",
60
+ mllike = "mllike",
61
+ modelica = "modelica",
62
+ mscgen = "mscgen",
63
+ mumps = "mumps",
64
+ nginx = "nginx",
65
+ nsis = "nsis",
66
+ ntriples = "ntriples",
67
+ octave = "octave",
68
+ oz = "oz",
69
+ pascal = "pascal",
70
+ perl = "perl",
71
+ pig = "pig",
72
+ powershell = "powershell",
73
+ properties = "properties",
74
+ protobuf = "protobuf",
75
+ puppet = "puppet",
76
+ q = "q",
77
+ r = "r",
78
+ rpm = "rpm",
79
+ ruby = "ruby",
80
+ sas = "sas",
81
+ scheme = "scheme",
82
+ shell = "shell",
83
+ smalltalk = "smalltalk",
84
+ solr = "solr",
85
+ sparql = "sparql",
86
+ spreadsheet = "spreadsheet",
87
+ stex = "stex",
88
+ stylus = "stylus",
89
+ swift = "swift",
90
+ tcl = "tcl",
91
+ textile = "textile",
92
+ tiddlywiki = "tiddlywiki",
93
+ tiki = "tiki",
94
+ toml = "toml",
95
+ troff = "troff",
96
+ ttcn = "ttcn",
97
+ turtle = "turtle",
98
+ vb = "vb",
99
+ vbscript = "vbscript",
100
+ velocity = "velocity",
101
+ verilog = "verilog",
102
+ vhdl = "vhdl",
103
+ webidl = "webidl",
104
+ xquery = "xquery",
105
+ yacas = "yacas",
106
+ yaml = "yaml",
107
+ z80 = "z80"
108
+ }
package/dist/types.d.ts CHANGED
@@ -3,6 +3,7 @@ import { Node } from "prosemirror-model";
3
3
  import { EditorView } from "prosemirror-view";
4
4
  import { LanguageSupport } from "@codemirror/language";
5
5
  export declare type LanguageLoaders = Record<string, () => Promise<LanguageSupport>>;
6
+ import { Extension } from "@codemirror/state";
6
7
  export declare type CodeBlockSettings = {
7
8
  createSelect: (settings: CodeBlockSettings, dom: HTMLElement, node: Node, view: EditorView, getPos: (() => number) | boolean) => () => void;
8
9
  updateSelect: (settings: CodeBlockSettings, dom: HTMLElement, node: Node, view: EditorView, getPos: (() => number) | boolean, oldNode: Node) => void;
@@ -11,4 +12,5 @@ export declare type CodeBlockSettings = {
11
12
  languageWhitelist?: string[];
12
13
  undo?: (state: EditorState, dispatch: (tr: Transaction) => void) => void;
13
14
  redo?: (state: EditorState, dispatch: (tr: Transaction) => void) => void;
15
+ theme?: Extension[];
14
16
  };
package/dist/utils.d.ts CHANGED
@@ -13,7 +13,7 @@ export declare const asProseMirrorSelection: (pmDoc: Node, cmView: EditorView, g
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
- export declare const backspaceHander: (pmView: PMEditorView, view: EditorView) => boolean;
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
19
  ArrowLeft: (state: EditorState, dispatch: ((tr: Transaction) => void) | undefined, view?: PMEditorView<any> | undefined) => boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prosemirror-codemirror-block",
3
- "version": "0.2.3",
3
+ "version": "0.2.7",
4
4
  "description": "ProseMirror CodeMirror code block plugin",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.es.js",
@@ -42,7 +42,6 @@
42
42
  "access": "public"
43
43
  },
44
44
  "dependencies": {
45
- "@codemirror/state": "^0.19.6",
46
45
  "@codemirror/autocomplete": "^0.19.12",
47
46
  "@codemirror/closebrackets": "^0.19.0",
48
47
  "@codemirror/commands": "^0.19.8",
@@ -50,24 +49,27 @@
50
49
  "@codemirror/fold": "^0.19.3",
51
50
  "@codemirror/gutter": "^0.19.9",
52
51
  "@codemirror/highlight": "^0.19.7",
53
- "@codemirror/language": "^0.19.7",
52
+ "@codemirror/lang-cpp": "^0.19.1",
54
53
  "@codemirror/lang-css": "^0.19.3",
55
54
  "@codemirror/lang-html": "^0.19.4",
55
+ "@codemirror/lang-java": "^0.19.1",
56
56
  "@codemirror/lang-javascript": "^0.19.7",
57
57
  "@codemirror/lang-json": "^0.19.1",
58
+ "@codemirror/lang-lezer": "^0.19.1",
58
59
  "@codemirror/lang-markdown": "^0.19.5",
60
+ "@codemirror/lang-php": "^0.19.1",
59
61
  "@codemirror/lang-python": "^0.19.4",
60
62
  "@codemirror/lang-rust": "^0.19.1",
61
63
  "@codemirror/lang-sql": "^0.19.4",
62
- "@codemirror/lang-xml": "^0.19.2",
63
- "@codemirror/lang-java": "^0.19.1",
64
- "@codemirror/lang-cpp": "^0.19.1",
65
- "@codemirror/lang-lezer": "^0.19.1",
66
- "@codemirror/lang-php": "^0.19.1",
67
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
68
  "@codemirror/matchbrackets": "^0.19.3",
69
69
  "@codemirror/rectangular-selection": "^0.19.1",
70
70
  "@codemirror/search": "^0.19.6",
71
+ "@codemirror/state": "^0.19.6",
72
+ "@codemirror/stream-parser": "^0.19.5",
71
73
  "@codemirror/view": "^0.19.40"
72
74
  },
73
75
  "peerDependencies": {