@aquera/nile-elements 1.9.8 → 1.9.9
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 +3 -0
- package/dist/{index-249de90a.esm.js → index-289706c7.esm.js} +1 -1
- package/dist/{index-df196058.cjs.js → index-d7e6f1c6.cjs.js} +2 -2
- package/dist/index-d7e6f1c6.cjs.js.map +1 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.js +1577 -1275
- package/dist/katex-44476ab4.esm.js +1 -0
- package/dist/katex-f4186f87.cjs.js +2 -0
- package/dist/katex-f4186f87.cjs.js.map +1 -0
- package/dist/nile-color-picker/index.cjs.js +1 -1
- package/dist/nile-color-picker/index.esm.js +1 -1
- package/dist/nile-color-picker/nile-color-picker.cjs.js +1 -1
- package/dist/nile-color-picker/nile-color-picker.cjs.js.map +1 -1
- package/dist/nile-color-picker/nile-color-picker.esm.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/commands.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/commands.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/engine/commands.esm.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/create-state.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/create-state.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/engine/create-state.esm.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/index.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/index.esm.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/inputrules.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/keymap.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/keymap.esm.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/plugins/code-highlight.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/plugins/code-highlight.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/engine/plugins/code-highlight.esm.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/plugins/embed-view.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/plugins/embed-view.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/engine/plugins/embed-view.esm.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/plugins/embeds.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/plugins/embeds.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/engine/plugins/embeds.esm.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/plugins/math-view.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/plugins/math-view.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/engine/plugins/math-view.esm.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/plugins/style-block-view.cjs.js +2 -0
- package/dist/nile-wysiwyg-editor/engine/plugins/style-block-view.cjs.js.map +1 -0
- package/dist/nile-wysiwyg-editor/engine/plugins/style-block-view.esm.js +1 -0
- package/dist/nile-wysiwyg-editor/engine/plugins/tables.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/plugins/tables.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/engine/plugins/tables.esm.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/sanitize.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/sanitize.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/engine/sanitize.esm.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/schema.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/schema.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/engine/schema.esm.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/selection-state.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/engine/selection-state.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/engine/selection-state.esm.js +1 -1
- package/dist/nile-wysiwyg-editor/index.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/index.esm.js +1 -1
- package/dist/nile-wysiwyg-editor/math/katex-renderer.cjs.js +2 -0
- package/dist/nile-wysiwyg-editor/math/katex-renderer.cjs.js.map +1 -0
- package/dist/nile-wysiwyg-editor/math/katex-renderer.esm.js +1 -0
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-editor.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-editor.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-editor.css.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-editor.css.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-editor.css.esm.js +22 -3
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-editor.esm.js +7 -6
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-toolbar/index.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-toolbar/index.esm.js +1 -1
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar-item.cjs.js +2 -0
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar-item.cjs.js.map +1 -0
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar-item.esm.js +1 -0
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar.css.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar.css.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar.css.esm.js +33 -54
- package/dist/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar.esm.js +83 -95
- package/dist/nile-wysiwyg-editor/types.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/types.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/types.esm.js +1 -1
- package/dist/nile-wysiwyg-editor/ui/bubble-item.cjs.js +2 -0
- package/dist/nile-wysiwyg-editor/ui/bubble-item.cjs.js.map +1 -0
- package/dist/nile-wysiwyg-editor/ui/bubble-item.esm.js +1 -0
- package/dist/nile-wysiwyg-editor/ui/bubble-menu.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/ui/bubble-menu.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/ui/bubble-menu.esm.js +23 -15
- package/dist/nile-wysiwyg-editor/ui/code-block-menu.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/ui/code-block-menu.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/ui/code-block-menu.esm.js +3 -3
- package/dist/nile-wysiwyg-editor/ui/embed-panel.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/ui/embed-panel.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/ui/embed-panel.esm.js +2 -2
- package/dist/nile-wysiwyg-editor/ui/math-panel.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/ui/math-panel.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/ui/math-panel.esm.js +0 -3
- package/dist/nile-wysiwyg-editor/ui/preview.cjs.js +2 -0
- package/dist/nile-wysiwyg-editor/ui/preview.cjs.js.map +1 -0
- package/dist/nile-wysiwyg-editor/ui/preview.esm.js +8 -0
- package/dist/nile-wysiwyg-editor/ui/source-view.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/ui/source-view.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/ui/source-view.esm.js +225 -24
- package/dist/nile-wysiwyg-editor/ui/suggest-list.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/ui/suggest-list.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/ui/suggest-list.esm.js +9 -9
- package/dist/nile-wysiwyg-editor/ui/table-grid-picker.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/ui/table-grid-picker.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/ui/table-grid-picker.esm.js +115 -13
- package/dist/nile-wysiwyg-editor/ui/table-menu.cjs.js +1 -1
- package/dist/nile-wysiwyg-editor/ui/table-menu.cjs.js.map +1 -1
- package/dist/nile-wysiwyg-editor/ui/table-menu.esm.js +13 -12
- package/dist/src/index.d.ts +5 -0
- package/dist/src/index.js +3 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/nile-color-picker/nile-color-picker.d.ts +1 -0
- package/dist/src/nile-color-picker/nile-color-picker.js +1 -0
- package/dist/src/nile-color-picker/nile-color-picker.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/engine/index.d.ts +1 -0
- package/dist/src/nile-wysiwyg-editor/engine/index.js +1 -0
- package/dist/src/nile-wysiwyg-editor/engine/index.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/engine/plugins/embed-view.js +3 -0
- package/dist/src/nile-wysiwyg-editor/engine/plugins/embed-view.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/engine/plugins/embeds.d.ts +19 -4
- package/dist/src/nile-wysiwyg-editor/engine/plugins/embeds.js +23 -18
- package/dist/src/nile-wysiwyg-editor/engine/plugins/embeds.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/engine/plugins/math-view.d.ts +8 -3
- package/dist/src/nile-wysiwyg-editor/engine/plugins/math-view.js +41 -4
- package/dist/src/nile-wysiwyg-editor/engine/plugins/math-view.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/engine/plugins/style-block-view.d.ts +17 -0
- package/dist/src/nile-wysiwyg-editor/engine/plugins/style-block-view.js +174 -0
- package/dist/src/nile-wysiwyg-editor/engine/plugins/style-block-view.js.map +1 -0
- package/dist/src/nile-wysiwyg-editor/engine/plugins/tables.js +33 -2
- package/dist/src/nile-wysiwyg-editor/engine/plugins/tables.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/engine/pm.test.js +49 -8
- package/dist/src/nile-wysiwyg-editor/engine/pm.test.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/engine/sanitize.d.ts +12 -0
- package/dist/src/nile-wysiwyg-editor/engine/sanitize.js +76 -8
- package/dist/src/nile-wysiwyg-editor/engine/sanitize.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/engine/schema.d.ts +2 -0
- package/dist/src/nile-wysiwyg-editor/engine/schema.js +154 -2
- package/dist/src/nile-wysiwyg-editor/engine/schema.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/index.d.ts +5 -0
- package/dist/src/nile-wysiwyg-editor/index.js +3 -0
- package/dist/src/nile-wysiwyg-editor/index.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/math/katex-renderer.d.ts +38 -0
- package/dist/src/nile-wysiwyg-editor/math/katex-renderer.js +40 -0
- package/dist/src/nile-wysiwyg-editor/math/katex-renderer.js.map +1 -0
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor.css.js +22 -3
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor.css.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor.d.ts +36 -0
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor.js +125 -8
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor.test.js +5 -2
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor.test.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-toolbar/index.d.ts +2 -0
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-toolbar/index.js +1 -0
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-toolbar/index.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar-item.d.ts +55 -0
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar-item.js +79 -0
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar-item.js.map +1 -0
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar.css.js +33 -54
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar.css.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar.d.ts +50 -2
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar.js +158 -102
- package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/types.d.ts +4 -2
- package/dist/src/nile-wysiwyg-editor/types.js +2 -2
- package/dist/src/nile-wysiwyg-editor/types.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/ui/bubble-item.d.ts +48 -0
- package/dist/src/nile-wysiwyg-editor/ui/bubble-item.js +69 -0
- package/dist/src/nile-wysiwyg-editor/ui/bubble-item.js.map +1 -0
- package/dist/src/nile-wysiwyg-editor/ui/bubble-menu.d.ts +17 -2
- package/dist/src/nile-wysiwyg-editor/ui/bubble-menu.js +128 -35
- package/dist/src/nile-wysiwyg-editor/ui/bubble-menu.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/ui/embed-panel.d.ts +2 -1
- package/dist/src/nile-wysiwyg-editor/ui/embed-panel.js +4 -3
- package/dist/src/nile-wysiwyg-editor/ui/embed-panel.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/ui/math-panel.js +0 -3
- package/dist/src/nile-wysiwyg-editor/ui/math-panel.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/ui/preview.d.ts +20 -0
- package/dist/src/nile-wysiwyg-editor/ui/preview.js +44 -0
- package/dist/src/nile-wysiwyg-editor/ui/preview.js.map +1 -0
- package/dist/src/nile-wysiwyg-editor/ui/source-view.d.ts +35 -3
- package/dist/src/nile-wysiwyg-editor/ui/source-view.js +337 -24
- package/dist/src/nile-wysiwyg-editor/ui/source-view.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/ui/suggest-list.d.ts +1 -0
- package/dist/src/nile-wysiwyg-editor/ui/suggest-list.js +9 -0
- package/dist/src/nile-wysiwyg-editor/ui/suggest-list.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/ui/table-grid-picker.d.ts +13 -2
- package/dist/src/nile-wysiwyg-editor/ui/table-grid-picker.js +166 -10
- package/dist/src/nile-wysiwyg-editor/ui/table-grid-picker.js.map +1 -1
- package/dist/src/nile-wysiwyg-editor/ui/table-menu.d.ts +1 -0
- package/dist/src/nile-wysiwyg-editor/ui/table-menu.js +10 -8
- package/dist/src/nile-wysiwyg-editor/ui/table-menu.js.map +1 -1
- package/dist/src/version.js +1 -1
- package/dist/src/version.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/xml-25c4108a.esm.js +1 -0
- package/dist/xml-90fd974e.cjs.js +2 -0
- package/dist/xml-90fd974e.cjs.js.map +1 -0
- package/package.json +2 -1
- package/rollup.config.js +1 -0
- package/src/index.ts +8 -0
- package/src/nile-color-picker/nile-color-picker.ts +1 -0
- package/src/nile-wysiwyg-editor/engine/index.ts +1 -0
- package/src/nile-wysiwyg-editor/engine/plugins/embed-view.ts +3 -0
- package/src/nile-wysiwyg-editor/engine/plugins/embeds.ts +26 -20
- package/src/nile-wysiwyg-editor/engine/plugins/math-view.ts +45 -4
- package/src/nile-wysiwyg-editor/engine/plugins/style-block-view.ts +178 -0
- package/src/nile-wysiwyg-editor/engine/plugins/tables.ts +34 -2
- package/src/nile-wysiwyg-editor/engine/pm.test.ts +58 -8
- package/src/nile-wysiwyg-editor/engine/sanitize.ts +71 -8
- package/src/nile-wysiwyg-editor/engine/schema.ts +158 -7
- package/src/nile-wysiwyg-editor/index.ts +5 -0
- package/src/nile-wysiwyg-editor/math/katex-renderer.ts +59 -0
- package/src/nile-wysiwyg-editor/math/katex.d.ts +17 -0
- package/src/nile-wysiwyg-editor/nile-wysiwyg-editor.css.ts +22 -3
- package/src/nile-wysiwyg-editor/nile-wysiwyg-editor.test.ts +5 -2
- package/src/nile-wysiwyg-editor/nile-wysiwyg-editor.ts +142 -7
- package/src/nile-wysiwyg-editor/nile-wysiwyg-toolbar/index.ts +2 -0
- package/src/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar-item.ts +68 -0
- package/src/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar.css.ts +33 -54
- package/src/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar.ts +202 -108
- package/src/nile-wysiwyg-editor/types.ts +6 -4
- package/src/nile-wysiwyg-editor/ui/bubble-item.ts +60 -0
- package/src/nile-wysiwyg-editor/ui/bubble-menu.ts +147 -40
- package/src/nile-wysiwyg-editor/ui/embed-panel.ts +4 -3
- package/src/nile-wysiwyg-editor/ui/math-panel.ts +0 -3
- package/src/nile-wysiwyg-editor/ui/preview.ts +42 -0
- package/src/nile-wysiwyg-editor/ui/source-view.ts +339 -31
- package/src/nile-wysiwyg-editor/ui/suggest-list.ts +10 -0
- package/src/nile-wysiwyg-editor/ui/table-grid-picker.ts +160 -10
- package/src/nile-wysiwyg-editor/ui/table-menu.ts +10 -8
- package/vscode-html-custom-data.json +75 -6
- package/dist/index-df196058.cjs.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{l as t,f as e,k as n,S as r,A as i,T as u,i as s,c as o,r as l,d as f,F as c,R as a,g as h,P as d,b as m,n as p}from"../../index-6f3fa4ab.esm.js";import{l as g,a as w,w as v,M as $,b}from"./schema.esm.js";import{d as M,e as y,s as k,m as C,f as x,g as B,h as j,i as A,j as L,l as H}from"../../index-249de90a.esm.js";import"../../index-353172ed.esm.js";import"../../index-920675c4.esm.js";const S=(t,e)=>!t.selection.empty&&(e&&e(t.tr.deleteSelection().scrollIntoView()),!0);function T(t,e,n=!1){for(let r=t;r;r="start"==e?r.firstChild:r.lastChild){if(r.isTextblock)return!0;if(n&&1!=r.childCount)return!1}return!1}function E(t){if(!t.parent.type.spec.isolating)for(let e=t.depth-1;e>=0;e--){if(t.index(e)>0)return t.doc.resolve(t.before(e+1));if(t.node(e).type.spec.isolating)break}return null}function F(t){if(!t.parent.type.spec.isolating)for(let e=t.depth-1;e>=0;e--){let n=t.node(e);if(t.index(e)+1<n.childCount)return t.doc.resolve(t.after(e+1));if(n.type.spec.isolating)break}return null}const I=(e,n)=>{let{$from:r,$to:i}=e.selection,u=r.blockRange(i),s=u&&t(u);return null!=s&&(n&&n(e.tr.lift(u,s).scrollIntoView()),!0)};function R(t){for(let e=0;e<t.edgeCount;e++){let{type:n}=t.edge(e);if(n.isTextblock&&!n.hasRequiredAttrs())return n}return null}const _=(t,e)=>{let{$head:n,$anchor:i}=t.selection;if(!n.parent.type.spec.code||!n.sameParent(i))return!1;let u=n.node(-1),s=n.indexAfter(-1),o=R(u.contentMatchAt(s));if(!o||!u.canReplaceWith(s,s,o))return!1;if(e){let i=n.after(),u=t.tr.replaceWith(i,i,o.createAndFill());u.setSelection(r.near(u.doc.resolve(i),1)),e(u.scrollIntoView())}return!0};const D=(t,e)=>{let{$from:n,$to:r}=t.selection;if(t.selection instanceof o&&t.selection.node.isBlock)return!(!n.parentOffset||!s(t.doc,n.pos)||(e&&e(t.tr.split(n.pos).scrollIntoView()),0));if(!n.depth)return!1;let l,f,c=[],a=!1,h=!1;for(let t=n.depth;;t--){if(n.node(t).isBlock){a=n.end(t)==n.pos+(n.depth-t),h=n.start(t)==n.pos-(n.depth-t),f=R(n.node(t-1).contentMatchAt(n.indexAfter(t-1)));let e=O&&O(r.parent,a,n);c.unshift(e||(a&&f?{type:f}:null)),l=t;break}if(1==t)return!1;c.unshift(null)}let d=t.tr;(t.selection instanceof u||t.selection instanceof i)&&d.deleteSelection();let m=d.mapping.map(n.pos),p=s(d.doc,m,c.length,c);if(p||(c[0]=f?{type:f}:null,p=s(d.doc,m,c.length,c)),!p)return!1;if(d.split(m,c.length,c),!a&&h&&n.node(l).type!=f){let t=d.mapping.map(n.before(l)),e=d.doc.resolve(t);f&&n.node(l-1).canReplaceWith(e.index(),e.index()+1,f)&&d.setNodeMarkup(d.mapping.map(n.before(l)),f)}return e&&e(d.scrollIntoView()),!0};var O;function z(e,n,i,u){let s,o,l=n.nodeBefore,d=n.nodeAfter,m=l.type.spec.isolating||d.type.spec.isolating;if(!m&&function(t,e,n){let r=e.nodeBefore,i=e.nodeAfter,u=e.index();return!(!(r&&i&&r.type.compatibleContent(i.type))||(!r.content.size&&e.parent.canReplace(u-1,u)?(n&&n(t.tr.delete(e.pos-r.nodeSize,e.pos).scrollIntoView()),0):!e.parent.canReplace(u,u+1)||!i.isTextblock&&!h(t.doc,e.pos)||(n&&n(t.tr.join(e.pos).scrollIntoView()),0)))}(e,n,i))return!0;let p=!m&&n.parent.canReplace(n.index(),n.index()+1);if(p&&(s=(o=l.contentMatchAt(l.childCount)).findWrapping(d.type))&&o.matchType(s[0]||d.type).validEnd){if(i){let t=n.pos+d.nodeSize,r=c.empty;for(let t=s.length-1;t>=0;t--)r=c.from(s[t].create(null,r));r=c.from(l.copy(r));let u=e.tr.step(new a(n.pos-1,t,n.pos,t,new f(r,1,0),s.length,!0)),o=u.doc.resolve(t+2*s.length);o.nodeAfter&&o.nodeAfter.type==l.type&&h(u.doc,o.pos)&&u.join(o.pos),i(u.scrollIntoView())}return!0}let g=d.type.spec.isolating||u>0&&m?null:r.findFrom(n,1),w=g&&g.$from.blockRange(g.$to),v=w&&t(w);if(null!=v&&v>=n.depth)return i&&i(e.tr.lift(w,v).scrollIntoView()),!0;if(p&&T(d,"start",!0)&&T(l,"end")){let t=l,r=[];for(;r.push(t),!t.isTextblock;)t=t.lastChild;let u=d,s=1;for(;!u.isTextblock;u=u.firstChild)s++;if(t.canReplace(t.childCount,t.childCount,u.content)){if(i){let t=c.empty;for(let e=r.length-1;e>=0;e--)t=c.from(r[e].copy(t));i(e.tr.step(new a(n.pos-r.length,n.pos+d.nodeSize,n.pos+s,n.pos+d.nodeSize-s,new f(t,r.length,0),0,!0)).scrollIntoView())}return!0}}return!1}function P(t){return function(e,n){let r=e.selection,i=t<0?r.$from:r.$to,s=i.depth;for(;i.node(s).isInline;){if(!s)return!1;s--}return!!i.node(s).isTextblock&&(n&&n(e.tr.setSelection(u.create(e.doc,t<0?i.start(s):i.end(s)))),!0)}}const q=P(-1),G=P(1);function U(t,e=null){return function(n,r){let i=!1;for(let r=0;r<n.selection.ranges.length&&!i;r++){let{$from:{pos:u},$to:{pos:s}}=n.selection.ranges[r];n.doc.nodesBetween(u,s,((r,u)=>{if(i)return!1;if(r.isTextblock&&!r.hasMarkup(t,e))if(r.type==t)i=!0;else{let e=n.doc.resolve(u),r=e.index();i=e.parent.canReplaceWith(r,r+1,t)}}))}if(!i)return!1;if(r){let i=n.tr;for(let r=0;r<n.selection.ranges.length;r++){let{$from:{pos:u},$to:{pos:s}}=n.selection.ranges[r];i.setBlockType(u,s,t,e)}r(i.scrollIntoView())}return!0}}function W(t,e=null,r){let i=!1!==(r&&r.removeWhenPresent),u=!1!==(r&&r.enterInlineAtoms),s=!(r&&r.includeWhitespace);return function(r,o){let{empty:l,$cursor:f,ranges:c}=r.selection;if(l&&!f||!function(t,e,n,r){for(let i=0;i<e.length;i++){let{$from:u,$to:s}=e[i],o=0==u.depth&&t.inlineContent&&t.type.allowsMarkType(n);if(t.nodesBetween(u.pos,s.pos,((t,e)=>{if(o||!r&&t.isAtom&&t.isInline&&e>=u.pos&&e+t.nodeSize<=s.pos)return!1;o=t.inlineContent&&t.type.allowsMarkType(n)})),o)return!0}return!1}(r.doc,c,t,u))return!1;if(o)if(f)t.isInSet(r.storedMarks||f.marks())?o(r.tr.removeStoredMark(t)):o(r.tr.addStoredMark(t.create(e)));else{let l,f=r.tr;u||(c=function(t){let e=[];for(let r=0;r<t.length;r++){let{$from:i,$to:u}=t[r];i.doc.nodesBetween(i.pos,u.pos,((t,r)=>{if(t.isAtom&&t.content.size&&t.isInline&&r>=i.pos&&r+t.nodeSize<=u.pos)return r+1>i.pos&&e.push(new n(i,i.doc.resolve(r+1))),i=i.doc.resolve(r+1+t.content.size),!1})),i.pos<u.pos&&e.push(new n(i,u))}return e}(c)),l=i?!c.some((e=>r.doc.rangeHasMark(e.$from.pos,e.$to.pos,t))):!c.every((e=>{let n=!1;return f.doc.nodesBetween(e.$from.pos,e.$to.pos,((r,i,u)=>{if(n)return!1;n=!t.isInSet(r.marks)&&!!u&&u.type.allowsMarkType(t)&&!(r.isText&&/^\s*$/.test(r.textBetween(Math.max(0,e.$from.pos-i),Math.min(r.nodeSize,e.$to.pos-i))))})),!n}));for(let n=0;n<c.length;n++){let{$from:r,$to:i}=c[n];if(l){let n=r.pos,u=i.pos,o=r.nodeAfter,l=i.nodeBefore,c=s&&o&&o.isText?/^\s*/.exec(o.text)[0].length:0,a=s&&l&&l.isText?/\s*$/.exec(l.text)[0].length:0;n+c<u&&(n+=c,u-=a),f.addMark(n,u,t.create(e))}else f.removeMark(r.pos,i.pos,t)}o(f.scrollIntoView())}return!0}}function J(...t){return function(e,n,r){for(let i=0;i<t.length;i++)if(t[i](e,n,r))return!0;return!1}}let K=J(S,((e,n,i)=>{let u=function(t,e){let{$cursor:n}=t.selection;return!n||(e?!e.endOfTextblock("backward",t):n.parentOffset>0)?null:n}(e,i);if(!u)return!1;let s=E(u);if(!s){let r=u.blockRange(),i=r&&t(r);return null!=i&&(n&&n(e.tr.lift(r,i).scrollIntoView()),!0)}let c=s.nodeBefore;if(z(e,s,n,-1))return!0;if(0==u.parent.content.size&&(T(c,"end")||o.isSelectable(c)))for(let t=u.depth;;t--){let i=l(e.doc,u.before(t),u.after(t),f.empty);if(i&&i.slice.size<i.to-i.from){if(n){let t=e.tr.step(i);t.setSelection(T(c,"end")?r.findFrom(t.doc.resolve(t.mapping.map(s.pos,-1)),-1):o.create(t.doc,s.pos-c.nodeSize)),n(t.scrollIntoView())}return!0}if(1==t||u.node(t-1).childCount>1)break}return!(!c.isAtom||s.depth!=u.depth-1)&&(n&&n(e.tr.delete(s.pos-c.nodeSize,s.pos).scrollIntoView()),!0)}),((t,e,n)=>{let{$head:r,empty:i}=t.selection,u=r;if(!i)return!1;if(r.parent.isTextblock){if(n?!n.endOfTextblock("backward",t):r.parentOffset>0)return!1;u=E(r)}let s=u&&u.nodeBefore;return!(!s||!o.isSelectable(s))&&(e&&e(t.tr.setSelection(o.create(t.doc,u.pos-s.nodeSize)).scrollIntoView()),!0)})),N=J(S,((t,e,n)=>{let i=function(t,e){let{$cursor:n}=t.selection;return!n||(e?!e.endOfTextblock("forward",t):n.parentOffset<n.parent.content.size)?null:n}(t,n);if(!i)return!1;let u=F(i);if(!u)return!1;let s=u.nodeAfter;if(z(t,u,e,1))return!0;if(0==i.parent.content.size&&(T(s,"start")||o.isSelectable(s))){let n=l(t.doc,i.before(),i.after(),f.empty);if(n&&n.slice.size<n.to-n.from){if(e){let i=t.tr.step(n);i.setSelection(T(s,"start")?r.findFrom(i.doc.resolve(i.mapping.map(u.pos)),1):o.create(i.doc,i.mapping.map(u.pos))),e(i.scrollIntoView())}return!0}}return!(!s.isAtom||u.depth!=i.depth-1)&&(e&&e(t.tr.delete(u.pos,u.pos+s.nodeSize).scrollIntoView()),!0)}),((t,e,n)=>{let{$head:r,empty:i}=t.selection,u=r;if(!i)return!1;if(r.parent.isTextblock){if(n?!n.endOfTextblock("forward",t):r.parentOffset<r.parent.content.size)return!1;u=F(r)}let s=u&&u.nodeAfter;return!(!s||!o.isSelectable(s))&&(e&&e(t.tr.setSelection(o.create(t.doc,u.pos)).scrollIntoView()),!0)}));const Q={Enter:J(((t,e)=>{let{$head:n,$anchor:r}=t.selection;return!(!n.parent.type.spec.code||!n.sameParent(r))&&(e&&e(t.tr.insertText("\n").scrollIntoView()),!0)}),((t,e)=>{let n=t.selection,{$from:r,$to:s}=n;if(n instanceof i||r.parent.inlineContent||s.parent.inlineContent)return!1;let o=R(s.parent.contentMatchAt(s.indexAfter()));if(!o||!o.isTextblock)return!1;if(e){let n=(!r.parentOffset&&s.index()<s.parent.childCount?r:s).pos,i=t.tr.insert(n,o.createAndFill());i.setSelection(u.create(i.doc,n+1)),e(i.scrollIntoView())}return!0}),((e,n)=>{let{$cursor:r}=e.selection;if(!r||r.parent.content.size)return!1;if(r.depth>1&&r.after()!=r.end(-1)){let t=r.before();if(s(e.doc,t))return n&&n(e.tr.split(t).scrollIntoView()),!0}let i=r.blockRange(),u=i&&t(i);return null!=u&&(n&&n(e.tr.lift(i,u).scrollIntoView()),!0)}),D),"Mod-Enter":_,Backspace:K,"Mod-Backspace":K,"Shift-Backspace":K,Delete:N,"Mod-Delete":N,"Mod-a":(t,e)=>(e&&e(t.tr.setSelection(new i(t.doc))),!0)},V={"Ctrl-h":Q.Backspace,"Alt-Backspace":Q["Mod-Backspace"],"Ctrl-d":Q.Delete,"Ctrl-Alt-Backspace":Q["Mod-Delete"],"Alt-Delete":Q["Mod-Delete"],"Alt-d":Q["Mod-Delete"],"Ctrl-a":q,"Ctrl-e":G};for(let t in Q)V[t]=Q[t];const X=("undefined"!=typeof navigator?/Mac|iP(hone|[oa]d)/.test(navigator.platform):!("undefined"==typeof os||!os.platform)&&"darwin"==os.platform())?V:Q;var Y=200,Z=function(){};Z.prototype.append=function(t){return t.length?(t=Z.from(t),!this.length&&t||t.length<Y&&this.leafAppend(t)||this.length<Y&&t.leafPrepend(this)||this.appendInner(t)):this},Z.prototype.prepend=function(t){return t.length?Z.from(t).append(this):this},Z.prototype.appendInner=function(t){return new et(this,t)},Z.prototype.slice=function(t,e){return void 0===t&&(t=0),void 0===e&&(e=this.length),t>=e?Z.empty:this.sliceInner(Math.max(0,t),Math.min(this.length,e))},Z.prototype.get=function(t){if(!(t<0||t>=this.length))return this.getInner(t)},Z.prototype.forEach=function(t,e,n){void 0===e&&(e=0),void 0===n&&(n=this.length),e<=n?this.forEachInner(t,e,n,0):this.forEachInvertedInner(t,e,n,0)},Z.prototype.map=function(t,e,n){void 0===e&&(e=0),void 0===n&&(n=this.length);var r=[];return this.forEach((function(e,n){return r.push(t(e,n))}),e,n),r},Z.from=function(t){return t instanceof Z?t:t&&t.length?new tt(t):Z.empty};var tt=function(t){function e(e){t.call(this),this.values=e}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var n={length:{configurable:!0},depth:{configurable:!0}};return e.prototype.flatten=function(){return this.values},e.prototype.sliceInner=function(t,n){return 0==t&&n==this.length?this:new e(this.values.slice(t,n))},e.prototype.getInner=function(t){return this.values[t]},e.prototype.forEachInner=function(t,e,n,r){for(var i=e;i<n;i++)if(!1===t(this.values[i],r+i))return!1},e.prototype.forEachInvertedInner=function(t,e,n,r){for(var i=e-1;i>=n;i--)if(!1===t(this.values[i],r+i))return!1},e.prototype.leafAppend=function(t){if(this.length+t.length<=Y)return new e(this.values.concat(t.flatten()))},e.prototype.leafPrepend=function(t){if(this.length+t.length<=Y)return new e(t.flatten().concat(this.values))},n.length.get=function(){return this.values.length},n.depth.get=function(){return 0},Object.defineProperties(e.prototype,n),e}(Z);Z.empty=new tt([]);var et=function(t){function e(e,n){t.call(this),this.left=e,this.right=n,this.length=e.length+n.length,this.depth=Math.max(e.depth,n.depth)+1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.flatten=function(){return this.left.flatten().concat(this.right.flatten())},e.prototype.getInner=function(t){return t<this.left.length?this.left.get(t):this.right.get(t-this.left.length)},e.prototype.forEachInner=function(t,e,n,r){var i=this.left.length;return!(e<i&&!1===this.left.forEachInner(t,e,Math.min(n,i),r))&&(!(n>i&&!1===this.right.forEachInner(t,Math.max(e-i,0),Math.min(this.length,n)-i,r+i))&&void 0)},e.prototype.forEachInvertedInner=function(t,e,n,r){var i=this.left.length;return!(e>i&&!1===this.right.forEachInvertedInner(t,e-i,Math.max(n,i)-i,r+i))&&(!(n<i&&!1===this.left.forEachInvertedInner(t,Math.min(e,i),n,r))&&void 0)},e.prototype.sliceInner=function(t,e){if(0==t&&e==this.length)return this;var n=this.left.length;return e<=n?this.left.slice(t,e):t>=n?this.right.slice(t-n,e-n):this.left.slice(t,n).append(this.right.slice(0,e-n))},e.prototype.leafAppend=function(t){var n=this.right.leafAppend(t);if(n)return new e(this.left,n)},e.prototype.leafPrepend=function(t){var n=this.left.leafPrepend(t);if(n)return new e(n,this.right)},e.prototype.appendInner=function(t){return this.left.depth>=Math.max(this.right.depth,t.depth)+1?new e(this.left,new e(this.right,t)):new e(this,t)},e}(Z);class nt{constructor(t,e){this.items=t,this.eventCount=e}popEvent(t,e){if(0==this.eventCount)return null;let n,r,i=this.items.length;for(;;i--){if(this.items.get(i-1).selection){--i;break}}e&&(n=this.remapping(i,this.items.length),r=n.maps.length);let u,s,o=t.tr,l=[],f=[];return this.items.forEach(((t,e)=>{if(!t.step)return n||(n=this.remapping(i,e+1),r=n.maps.length),r--,void f.push(t);if(n){f.push(new rt(t.map));let e,i=t.step.map(n.slice(r));i&&o.maybeStep(i).doc&&(e=o.mapping.maps[o.mapping.maps.length-1],l.push(new rt(e,void 0,void 0,l.length+f.length))),r--,e&&n.appendMap(e,r)}else o.maybeStep(t.step);return t.selection?(u=n?t.selection.map(n.slice(r)):t.selection,s=new nt(this.items.slice(0,i).append(f.reverse().concat(l)),this.eventCount-1),!1):void 0}),this.items.length,0),{remaining:s,transform:o,selection:u}}addTransform(t,e,n,r){let i=[],u=this.eventCount,s=this.items,o=!r&&s.length?s.get(s.length-1):null;for(let n=0;n<t.steps.length;n++){let l,f=t.steps[n].invert(t.docs[n]),c=new rt(t.mapping.maps[n],f,e);(l=o&&o.merge(c))&&(c=l,n?i.pop():s=s.slice(0,s.length-1)),i.push(c),e&&(u++,e=void 0),r||(o=c)}let l=u-n.depth;return l>ut&&(s=function(t,e){let n;return t.forEach(((t,r)=>{if(t.selection&&0==e--)return n=r,!1})),t.slice(n)}(s,l),u-=l),new nt(s.append(i),u)}remapping(t,e){let n=new p;return this.items.forEach(((e,r)=>{let i=null!=e.mirrorOffset&&r-e.mirrorOffset>=t?n.maps.length-e.mirrorOffset:void 0;n.appendMap(e.map,i)}),t,e),n}addMaps(t){return 0==this.eventCount?this:new nt(this.items.append(t.map((t=>new rt(t)))),this.eventCount)}rebased(t,e){if(!this.eventCount)return this;let n=[],r=Math.max(0,this.items.length-e),i=t.mapping,u=t.steps.length,s=this.eventCount;this.items.forEach((t=>{t.selection&&s--}),r);let o=e;this.items.forEach((e=>{let r=i.getMirror(--o);if(null==r)return;u=Math.min(u,r);let l=i.maps[r];if(e.step){let u=t.steps[r].invert(t.docs[r]),f=e.selection&&e.selection.map(i.slice(o+1,r));f&&s++,n.push(new rt(l,u,f))}else n.push(new rt(l))}),r);let l=[];for(let t=e;t<u;t++)l.push(new rt(i.maps[t]));let f=this.items.slice(0,r).append(l).append(n),c=new nt(f,s);return c.emptyItemCount()>500&&(c=c.compress(this.items.length-n.length)),c}emptyItemCount(){let t=0;return this.items.forEach((e=>{e.step||t++})),t}compress(t=this.items.length){let e=this.remapping(0,t),n=e.maps.length,r=[],i=0;return this.items.forEach(((u,s)=>{if(s>=t)r.push(u),u.selection&&i++;else if(u.step){let t=u.step.map(e.slice(n)),s=t&&t.getMap();if(n--,s&&e.appendMap(s,n),t){let o=u.selection&&u.selection.map(e.slice(n));o&&i++;let l,f=new rt(s.invert(),t,o),c=r.length-1;(l=r.length&&r[c].merge(f))?r[c]=l:r.push(f)}}else u.map&&n--}),this.items.length,0),new nt(Z.from(r.reverse()),i)}}nt.empty=new nt(Z.empty,0);class rt{constructor(t,e,n,r){this.map=t,this.step=e,this.selection=n,this.mirrorOffset=r}merge(t){if(this.step&&t.step&&!t.selection){let e=t.step.merge(this.step);if(e)return new rt(e.getMap().invert(),e,this.selection)}}}class it{constructor(t,e,n,r,i){this.done=t,this.undone=e,this.prevRanges=n,this.prevTime=r,this.prevComposition=i}}const ut=20;function st(t){let e=[];for(let n=t.length-1;n>=0&&0==e.length;n--)t[n].forEach(((t,n,r,i)=>e.push(r,i)));return e}function ot(t,e){if(!t)return null;let n=[];for(let r=0;r<t.length;r+=2){let i=e.map(t[r],1),u=e.map(t[r+1],-1);i<=u&&n.push(i,u)}return n}let lt=!1,ft=null;function ct(t){let e=t.plugins;if(ft!=e){lt=!1,ft=e;for(let t=0;t<e.length;t++)if(e[t].spec.historyPreserveItems){lt=!0;break}}return lt}const at=new d("history"),ht=new d("closeHistory");function dt(t={}){return t={depth:t.depth||100,newGroupDelay:t.newGroupDelay||500},new m({key:at,state:{init:()=>new it(nt.empty,nt.empty,null,0,-1),apply:(e,n,r)=>function(t,e,n,r){let i,u=n.getMeta(at);if(u)return u.historyState;n.getMeta(ht)&&(t=new it(t.done,t.undone,null,0,-1));let s=n.getMeta("appendedTransaction");if(0==n.steps.length)return t;if(s&&s.getMeta(at))return s.getMeta(at).redo?new it(t.done.addTransform(n,void 0,r,ct(e)),t.undone,st(n.mapping.maps),t.prevTime,t.prevComposition):new it(t.done,t.undone.addTransform(n,void 0,r,ct(e)),null,t.prevTime,t.prevComposition);if(!1===n.getMeta("addToHistory")||s&&!1===s.getMeta("addToHistory"))return(i=n.getMeta("rebased"))?new it(t.done.rebased(n,i),t.undone.rebased(n,i),ot(t.prevRanges,n.mapping),t.prevTime,t.prevComposition):new it(t.done.addMaps(n.mapping.maps),t.undone.addMaps(n.mapping.maps),ot(t.prevRanges,n.mapping),t.prevTime,t.prevComposition);{let i=n.getMeta("composition"),u=0==t.prevTime||!s&&t.prevComposition!=i&&(t.prevTime<(n.time||0)-r.newGroupDelay||!function(t,e){if(!e)return!1;if(!t.docChanged)return!0;let n=!1;return t.mapping.maps[0].forEach(((t,r)=>{for(let i=0;i<e.length;i+=2)t<=e[i+1]&&r>=e[i]&&(n=!0)})),n}(n,t.prevRanges)),o=s?ot(t.prevRanges,n.mapping):st(n.mapping.maps);return new it(t.done.addTransform(n,u?e.selection.getBookmark():void 0,r,ct(e)),nt.empty,o,n.time,null==i?t.prevComposition:i)}}(n,r,e,t)},config:t,props:{handleDOMEvents:{beforeinput(t,e){let n=e.inputType,r="historyUndo"==n?pt:"historyRedo"==n?gt:null;return!(!r||!t.editable)&&(e.preventDefault(),r(t.state,t.dispatch))}}}})}function mt(t,e){return(n,r)=>{let i=at.getState(n);if(!i||0==(t?i.undone:i.done).eventCount)return!1;if(r){let u=function(t,e,n){let r=ct(e),i=at.get(e).spec.config,u=(n?t.undone:t.done).popEvent(e,r);if(!u)return null;let s=u.selection.resolve(u.transform.doc),o=(n?t.done:t.undone).addTransform(u.transform,e.selection.getBookmark(),i,r),l=new it(n?o:u.remaining,n?u.remaining:o,null,0,-1);return u.transform.setSelection(s).setMeta(at,{redo:n,historyState:l})}(i,n,t);u&&r(e?u.scrollIntoView():u)}return!0}}const pt=mt(!1,!0),gt=mt(!0,!0);function wt(t,e){const{parent:n,parentOffset:r}=t,i=n.childAfter(r);if(!i.node||!e.isInSet(i.node.marks))return null;let u=i.index,s=t.start()+i.offset;for(;u>0&&e.isInSet(n.child(u-1).marks);)u-=1,s-=n.child(u).nodeSize;let o=i.index+1,l=s+i.node.nodeSize;for(;o<n.childCount&&e.isInSet(n.child(o).marks);)l+=n.child(o).nodeSize,o+=1;return{from:s,to:l}}function vt(t,e){return(n,r)=>{const{empty:i,ranges:s,$from:o}=n.selection;if(i&&!(n.selection instanceof u&&n.selection.$cursor))return!1;if(!i&&!n.selection.content().content.firstChild)return!1;if(r){const u=n.tr;if(i)u.removeStoredMark(t),e&&u.addStoredMark(t.create(e));else{for(const n of s)u.removeMark(n.$from.pos,n.$to.pos,t),e&&u.addMark(n.$from.pos,n.$to.pos,t.create(e));u.scrollIntoView()}r(u)}return!0}}function $t(t){const{$from:e}=t.selection,{bullet_list:n,ordered_list:r,task_list:i}=t.schema.nodes;for(let t=e.depth;t>0;t-=1){const u=e.node(t);if(u.type===n||u.type===r||u.type===i)return{node:u,pos:e.before(t),depth:t}}return null}function bt(t){const{schema:e}=t;return t===e.nodes.task_list?e.nodes.task_item:e.nodes.list_item}function Mt(t,e){return(n,r,i)=>{const s=$t(n);if(s){if(s.node.type===t)return g(bt(s.node.type))(n,r,i);if(r){const i=bt(s.node.type),o=[];s.node.forEach((t=>{o.push(t.type===i&&i!==e?e.create(null,t.content,t.marks):t)}));const l=t.create(s.node.attrs,o),f=n.tr,{from:c,to:a}=n.selection;f.replaceWith(s.pos,s.pos+s.node.nodeSize,l),f.setSelection(u.create(f.doc,c,a)),r(f)}return!0}return v(t)(n,r,i)}}function yt(t){return(n,r,i)=>function(t,e){const{$from:n}=t.selection;for(let t=n.depth;t>0;t-=1)if(n.node(t).type===e)return!0;return!1}(n,t)?I(n,r):function(t,n=null){return function(r,i){let{$from:u,$to:s}=r.selection,o=u.blockRange(s),l=o&&e(o,t,n);return!!l&&(i&&i(r.tr.wrap(o,l).scrollIntoView()),!0)}}(t)(n,r,i)}function kt(t){return(e,n)=>{const{from:r,to:i}=e.selection,u=[];if(e.doc.nodesBetween(r,i,((e,n)=>{if(e.isTextblock&&e.type.spec.attrs&&"indent"in e.type.spec.attrs){const r=e.attrs.indent??0,i=Math.max(0,Math.min(b,r+t));i!==r&&u.push({pos:n,node:e,next:i})}return!0})),0===u.length)return!1;if(n){const t=e.tr;for(const{pos:e,node:n,next:r}of u)t.setNodeMarkup(e,void 0,{...n.attrs,indent:r});n(t)}return!0}}function Ct(t){const{image:e,figure:n}=t.schema.nodes,r=t.selection;if(r instanceof o){if(r.node.type===e)return{node:r.node,pos:r.from,isFigure:!1};if(r.node.type===n)return{node:r.node,pos:r.from,isFigure:!0}}const{$from:i}=r;for(let t=i.depth;t>0;t-=1)if(i.node(t).type===n)return{node:i.node(t),pos:i.before(t),isFigure:!0};return null}function xt(t){const e=t.selection;return e instanceof o&&e.node.type===t.schema.nodes.embed?{node:e.node,pos:e.from}:null}function Bt(t,e,n={}){const{schema:r}=t,{nodes:i,marks:s}=r;switch(e){case"bold":return W(s.bold);case"italic":return W(s.italic);case"underline":return W(s.underline);case"strike":return W(s.strike);case"subscript":return W(s.subscript);case"superscript":return W(s.superscript);case"code":return W(s.code);case"paragraph":return U(i.paragraph);case"heading":return U(i.heading,{level:n.level??1});case"blockquote":return yt(i.blockquote);case"align":return p=n.align??null,(t,e)=>{const{from:n,to:r}=t.selection,i=[];if(t.doc.nodesBetween(n,r,((t,e)=>(t.isTextblock&&t.type.spec.attrs&&"align"in t.type.spec.attrs&&i.push({pos:e,node:t}),!0))),0===i.length)return!1;if(e){const n=t.tr;for(const{pos:t,node:e}of i)n.setNodeMarkup(t,void 0,{...e.attrs,align:p});e(n)}return!0};case"lineHeight":return m=n.lineHeight??null,(t,e)=>{const{from:n,to:r}=t.selection,i=[];if(t.doc.nodesBetween(n,r,((t,e)=>(t.isTextblock&&t.type.spec.attrs&&"lineHeight"in t.type.spec.attrs&&i.push({pos:e,node:t}),!0))),0===i.length)return!1;if(e){const n=t.tr;for(const{pos:t,node:e}of i)n.setNodeMarkup(t,void 0,{...e.attrs,lineHeight:m});e(n)}return!0};case"bulletList":return Mt(i.bullet_list,i.list_item);case"orderedList":return Mt(i.ordered_list,i.list_item);case"taskList":return Mt(i.task_list,i.task_item);case"indent":return J(w(i.task_item),w(i.list_item),kt(1));case"outdent":return J(g(i.task_item),g(i.list_item),kt(-1),I);case"setListStyle":return d=n.style??null,(t,e)=>{const n=$t(t);if(!n)return!1;let r=n;const{$from:i}=t.selection,u=t.schema.nodes.ordered_list;for(let t=1;t<=i.depth;t+=1){const e=i.node(t);if(e.type===u&&(d===$||e.attrs.style===$)){r={node:e,pos:i.before(t),depth:t};break}}return e&&e(t.tr.setNodeMarkup(r.pos,void 0,{...r.node.attrs,style:d})),!0};case"setListStart":return h=n.start??1,(t,e)=>{const n=$t(t);return!(!n||n.node.type!==t.schema.nodes.ordered_list||(e&&e(t.tr.setNodeMarkup(n.pos,void 0,{...n.node.attrs,order:Math.max(1,Math.round(h))})),0))};case"toggleImageCaption":return function(t){return(e,n)=>{const r=Ct(e);if(!r)return!1;if(n){const i=e.tr;if(r.isFigure){const{src:e,alt:n,title:u,width:s}=r.node.attrs,l=t.nodes.image.create({src:e,alt:n,title:u,width:s});i.replaceWith(r.pos,r.pos+r.node.nodeSize,t.nodes.paragraph.create(null,l)),i.setSelection(o.create(i.doc,r.pos+1))}else{const{src:n,alt:s,title:o,width:l}=r.node.attrs,f=s?t.text(s):null,c=t.nodes.figure.create({src:n,alt:s,title:o,width:l,align:null},f),a=e.doc.resolve(r.pos),h=a.parent,d=1===h.childCount&&"paragraph"===h.type.name,m=d?a.before():r.pos,p=d?a.after():r.pos+r.node.nodeSize;i.replaceWith(m,p,c),i.setSelection(u.create(i.doc,m+1+c.content.size))}n(i.scrollIntoView())}return!0}}(r);case"setImageAlign":return function(t,e){return(n,r)=>{const i=Ct(n);if(!i)return!1;const u="left"===e||"center"===e||"right"===e?e:null;if(r){const e=n.tr;if(i.isFigure)e.setNodeMarkup(i.pos,void 0,{...i.node.attrs,align:u}),n.selection instanceof o&&e.setSelection(o.create(e.doc,i.pos));else{const{src:r,alt:s,title:l,width:f}=i.node.attrs,c=t.nodes.figure.create({src:r,alt:s,title:l,width:f,align:u}),a=n.doc.resolve(i.pos),h=a.parent,d=1===h.childCount&&"paragraph"===h.type.name,m=d?a.before():i.pos,p=d?a.after():i.pos+i.node.nodeSize;e.replaceWith(m,p,c),e.setSelection(o.create(e.doc,m))}r(e.scrollIntoView())}return!0}}(r,n.align??null);case"setImageWidth":return a=n.width??null,(t,e)=>{const n=Ct(t);if(!n)return!1;if(e){const r=t.tr.setNodeMarkup(n.pos,void 0,{...n.node.attrs,width:a&&a>0?Math.round(a):null});t.selection instanceof o&&r.setSelection(o.create(r.doc,n.pos)),e(r)}return!0};case"deleteImage":return(t,e)=>{const n=Ct(t);return!!n&&(e&&e(t.tr.delete(n.pos,n.pos+n.node.nodeSize).scrollIntoView()),!0)};case"setEmbedAlign":return function(t){return(e,n)=>{const r=xt(e);if(!r)return!1;const i="left"===t||"center"===t||"right"===t?t:null;if(n){const t=e.tr.setNodeMarkup(r.pos,void 0,{...r.node.attrs,align:i});t.setSelection(o.create(t.doc,r.pos)),n(t.scrollIntoView())}return!0}}(n.align??null);case"deleteEmbed":return(t,e)=>{const n=xt(t);return!!n&&(e&&e(t.tr.delete(n.pos,n.pos+n.node.nodeSize).scrollIntoView()),!0)};case"link":return function(t,e){return(n,r)=>{if(!e.href)return!1;const{empty:i,$from:u,from:s,to:o}=n.selection;let l={from:s,to:o};if(i){const e=wt(u,t);if(!e)return!1;l=e}if(r){const i=n.tr;i.removeMark(l.from,l.to,t),i.addMark(l.from,l.to,t.create({href:e.href,title:e.title??null,target:e.target??null})),r(i.scrollIntoView())}return!0}}(s.link,n);case"unlink":return c=s.link,(t,e)=>{const{empty:n,$from:r,from:i,to:u}=t.selection;let s={from:i,to:u};if(n){const t=wt(r,c);if(!t)return!1;s=t}else if(!t.doc.rangeHasMark(i,u,c))return!1;return e&&e(t.tr.removeMark(s.from,s.to,c)),!0};case"insertBookmark":return function(t,e){return(n,r)=>{const i=e.id?.trim();if(!i)return!1;if(r){const e=t.nodes.bookmark.create({id:i});r(n.tr.replaceSelectionWith(e,!1).scrollIntoView())}return!0}}(r,n);case"textColor":return vt(s.text_color,n.color?{color:n.color}:null);case"bgColor":return vt(s.bg_color,n.color?{color:n.color}:null);case"fontFamily":return vt(s.font_family,n.family?{family:n.family}:null);case"fontSize":return vt(s.font_size,n.size?{size:n.size}:null);case"horizontalRule":return f=i.horizontal_rule,(t,e)=>(e&&e(t.tr.replaceSelectionWith(f.create()).scrollIntoView()),!0);case"clearFormatting":return(t,e)=>{const{from:n,to:r,empty:i}=t.selection;if(e){const u=t.tr;i||u.removeMark(n,r,null),u.setStoredMarks([]),t.doc.nodesBetween(n,r,((t,e)=>(t.isTextblock&&t.type.spec.attrs&&"align"in t.type.spec.attrs&&(t.attrs.align||t.attrs.lineHeight)&&u.setNodeMarkup(e,void 0,{...t.attrs,align:null,lineHeight:null}),!0))),e(u)}return!0};case"undo":return pt;case"redo":return gt;case"codeBlock":return function(t,e){return(n,r,i)=>{const{$from:u}=n.selection;return u.parent.type===t.nodes.code_block?U(t.nodes.paragraph)(n,r,i):U(t.nodes.code_block,{language:e})(n,r,i)}}(r,n.language??null);case"setCodeBlockLanguage":return function(t,e){return(n,r)=>{const{$from:i}=n.selection;for(let u=i.depth;u>0;u-=1)if(i.node(u).type===t.nodes.code_block)return r&&r(n.tr.setNodeMarkup(i.before(u),void 0,{language:e})),!0;return!1}}(r,n.language??null);case"insertEmbed":return function(t,e){return(n,r)=>{if(!e.src)return!1;const i=t.nodes.embed.create({src:e.src,provider:e.provider??null,title:e.title??null});return r&&r(n.tr.replaceSelectionWith(i).scrollIntoView()),!0}}(r,n);case"insertImage":return function(t,e){return(n,r)=>{if(!e.src)return!1;const i=e.src,u=e.alt??null,s=e.title??null,o=null!=e.caption?String(e.caption).trim():"",l=o?t.nodes.figure.create({src:i,alt:u,title:s,width:null,align:null},t.text(o)):t.nodes.image.create({src:i,alt:u,title:s});return r&&r(n.tr.replaceSelectionWith(l).scrollIntoView()),!0}}(r,n);case"updateImage":return function(t,e){return(n,r)=>{const i=Ct(n);if(!i||!e.src)return!1;const u=e.src,s=e.alt??null,l=e.title??null,f=null!=e.caption?String(e.caption).trim():"",c=i.node.attrs.width??null,a=i.isFigure?i.node.attrs.align??null:null;if(r){const e=n.tr;if(f){const r=t.nodes.figure.create({src:u,alt:s,title:l,width:c,align:a},t.text(f));if(i.isFigure)e.replaceWith(i.pos,i.pos+i.node.nodeSize,r),e.setSelection(o.create(e.doc,i.pos));else{const t=n.doc.resolve(i.pos),u=t.parent,s=1===u.childCount&&"paragraph"===u.type.name,l=s?t.before():i.pos,f=s?t.after():i.pos+i.node.nodeSize;e.replaceWith(l,f,r),e.setSelection(o.create(e.doc,l))}}else if(i.isFigure){const n=t.nodes.image.create({src:u,alt:s,title:l,width:c});e.replaceWith(i.pos,i.pos+i.node.nodeSize,t.nodes.paragraph.create(null,n)),e.setSelection(o.create(e.doc,i.pos+1))}else e.setNodeMarkup(i.pos,void 0,{src:u,alt:s,title:l,width:c}),n.selection instanceof o&&e.setSelection(o.create(e.doc,i.pos));r(e.scrollIntoView())}return!0}}(r,n);case"insertTable":return function(t,e){const n=Math.max(1,e.rows??3),r=Math.max(1,e.cols??3),i=e.withHeaderRow??!0;return(e,u)=>{const{table:s,table_row:o,table_cell:l,table_header:f}=t.nodes,c=[];for(let t=0;t<n;t+=1){const e=0===t&&i?f:l,n=[];for(let t=0;t<r;t+=1)n.push(e.createAndFill());c.push(o.create(null,n))}return u&&u(e.tr.replaceSelectionWith(s.create(null,c)).scrollIntoView()),!0}}(r,n);case"addRowBefore":return H;case"addRowAfter":return L;case"addColumnBefore":return A;case"addColumnAfter":return j;case"deleteRow":return B;case"deleteColumn":return x;case"mergeCells":return C;case"splitCell":return k;case"toggleHeaderRow":return y;case"toggleLayoutTable":return(t,e)=>{const{$from:n}=t.selection;for(let r=n.depth;r>0;r-=1){const i=n.node(r);if(i.type===t.schema.nodes.table)return e&&e(t.tr.setNodeMarkup(n.before(r),void 0,{...i.attrs,layout:!i.attrs.layout})),!0}return!1};case"deleteTable":return M;case"changeCase":return l=n.textCase??"upper",(t,e)=>{const{from:n,to:r,empty:i}=t.selection;if(i)return!1;const u=[];if(t.doc.nodesBetween(n,r,((t,e)=>{if(!t.isText||!t.text)return;const i=Math.max(n,e),s=Math.min(r,e+t.nodeSize);if(i>=s)return;const o=t.text.slice(i-e,s-e),f=function(t,e){switch(e){case"upper":return t.toUpperCase();case"lower":return t.toLowerCase();case"title":return t.toLowerCase().replace(/(^|\s)(\p{L})/gu,((t,e,n)=>e+n.toUpperCase()));case"sentence":return t.toLowerCase().replace(/(^|[.!?]\s+)(\p{L})/gu,((t,e,n)=>e+n.toUpperCase()))}}(o,l);f!==o&&u.push({from:i,to:s,text:f,marks:t.marks})})),0===u.length)return!1;if(e){const n=t.tr;for(const e of u.reverse())n.replaceWith(e.from,e.to,t.schema.text(e.text,e.marks));e(n.scrollIntoView())}return!0};case"insertMergeField":return function(t,e){return(n,r)=>{const i=t.nodes.merge_field;if(!i||!e.id)return!1;if(r){const t=i.create({id:e.id,label:e.label??null});r(n.tr.replaceSelectionWith(t).scrollIntoView())}return!0}}(r,n);case"insertMath":return function(t,e){return(n,r)=>{const i=t.nodes.math,u=(e.latex??"").trim();if(!i||!u)return!1;if(r){const t=i.create({latex:u,display:e.mathDisplay??"inline"});r(n.tr.replaceSelectionWith(t).scrollIntoView())}return!0}}(r,n);default:return null}var l,f,c,a,h,d,m,p}export{xt as a,Bt as b,J as c,X as d,_ as e,wt as g,dt as h,gt as r,Ct as s,pt as u};
|
|
1
|
+
import{l as t,f as e,k as n,S as r,A as i,T as u,i as s,c as o,r as l,d as f,F as c,R as a,g as h,P as d,b as m,n as p}from"../../index-6f3fa4ab.esm.js";import{l as g,a as w,w as v,M as $,b}from"./schema.esm.js";import{d as M,e as y,s as k,m as C,f as j,g as x,h as B,i as A,j as L,l as H}from"../../index-289706c7.esm.js";import"./plugins/embeds.esm.js";import"../../index-353172ed.esm.js";import"../../index-920675c4.esm.js";const S=(t,e)=>!t.selection.empty&&(e&&e(t.tr.deleteSelection().scrollIntoView()),!0);function T(t,e,n=!1){for(let r=t;r;r="start"==e?r.firstChild:r.lastChild){if(r.isTextblock)return!0;if(n&&1!=r.childCount)return!1}return!1}function E(t){if(!t.parent.type.spec.isolating)for(let e=t.depth-1;e>=0;e--){if(t.index(e)>0)return t.doc.resolve(t.before(e+1));if(t.node(e).type.spec.isolating)break}return null}function F(t){if(!t.parent.type.spec.isolating)for(let e=t.depth-1;e>=0;e--){let n=t.node(e);if(t.index(e)+1<n.childCount)return t.doc.resolve(t.after(e+1));if(n.type.spec.isolating)break}return null}const I=(e,n)=>{let{$from:r,$to:i}=e.selection,u=r.blockRange(i),s=u&&t(u);return null!=s&&(n&&n(e.tr.lift(u,s).scrollIntoView()),!0)};function R(t){for(let e=0;e<t.edgeCount;e++){let{type:n}=t.edge(e);if(n.isTextblock&&!n.hasRequiredAttrs())return n}return null}const _=(t,e)=>{let{$head:n,$anchor:i}=t.selection;if(!n.parent.type.spec.code||!n.sameParent(i))return!1;let u=n.node(-1),s=n.indexAfter(-1),o=R(u.contentMatchAt(s));if(!o||!u.canReplaceWith(s,s,o))return!1;if(e){let i=n.after(),u=t.tr.replaceWith(i,i,o.createAndFill());u.setSelection(r.near(u.doc.resolve(i),1)),e(u.scrollIntoView())}return!0};const D=(t,e)=>{let{$from:n,$to:r}=t.selection;if(t.selection instanceof o&&t.selection.node.isBlock)return!(!n.parentOffset||!s(t.doc,n.pos)||(e&&e(t.tr.split(n.pos).scrollIntoView()),0));if(!n.depth)return!1;let l,f,c=[],a=!1,h=!1;for(let t=n.depth;;t--){if(n.node(t).isBlock){a=n.end(t)==n.pos+(n.depth-t),h=n.start(t)==n.pos-(n.depth-t),f=R(n.node(t-1).contentMatchAt(n.indexAfter(t-1)));let e=O&&O(r.parent,a,n);c.unshift(e||(a&&f?{type:f}:null)),l=t;break}if(1==t)return!1;c.unshift(null)}let d=t.tr;(t.selection instanceof u||t.selection instanceof i)&&d.deleteSelection();let m=d.mapping.map(n.pos),p=s(d.doc,m,c.length,c);if(p||(c[0]=f?{type:f}:null,p=s(d.doc,m,c.length,c)),!p)return!1;if(d.split(m,c.length,c),!a&&h&&n.node(l).type!=f){let t=d.mapping.map(n.before(l)),e=d.doc.resolve(t);f&&n.node(l-1).canReplaceWith(e.index(),e.index()+1,f)&&d.setNodeMarkup(d.mapping.map(n.before(l)),f)}return e&&e(d.scrollIntoView()),!0};var O;function z(e,n,i,u){let s,o,l=n.nodeBefore,d=n.nodeAfter,m=l.type.spec.isolating||d.type.spec.isolating;if(!m&&function(t,e,n){let r=e.nodeBefore,i=e.nodeAfter,u=e.index();return!(!(r&&i&&r.type.compatibleContent(i.type))||(!r.content.size&&e.parent.canReplace(u-1,u)?(n&&n(t.tr.delete(e.pos-r.nodeSize,e.pos).scrollIntoView()),0):!e.parent.canReplace(u,u+1)||!i.isTextblock&&!h(t.doc,e.pos)||(n&&n(t.tr.join(e.pos).scrollIntoView()),0)))}(e,n,i))return!0;let p=!m&&n.parent.canReplace(n.index(),n.index()+1);if(p&&(s=(o=l.contentMatchAt(l.childCount)).findWrapping(d.type))&&o.matchType(s[0]||d.type).validEnd){if(i){let t=n.pos+d.nodeSize,r=c.empty;for(let t=s.length-1;t>=0;t--)r=c.from(s[t].create(null,r));r=c.from(l.copy(r));let u=e.tr.step(new a(n.pos-1,t,n.pos,t,new f(r,1,0),s.length,!0)),o=u.doc.resolve(t+2*s.length);o.nodeAfter&&o.nodeAfter.type==l.type&&h(u.doc,o.pos)&&u.join(o.pos),i(u.scrollIntoView())}return!0}let g=d.type.spec.isolating||u>0&&m?null:r.findFrom(n,1),w=g&&g.$from.blockRange(g.$to),v=w&&t(w);if(null!=v&&v>=n.depth)return i&&i(e.tr.lift(w,v).scrollIntoView()),!0;if(p&&T(d,"start",!0)&&T(l,"end")){let t=l,r=[];for(;r.push(t),!t.isTextblock;)t=t.lastChild;let u=d,s=1;for(;!u.isTextblock;u=u.firstChild)s++;if(t.canReplace(t.childCount,t.childCount,u.content)){if(i){let t=c.empty;for(let e=r.length-1;e>=0;e--)t=c.from(r[e].copy(t));i(e.tr.step(new a(n.pos-r.length,n.pos+d.nodeSize,n.pos+s,n.pos+d.nodeSize-s,new f(t,r.length,0),0,!0)).scrollIntoView())}return!0}}return!1}function P(t){return function(e,n){let r=e.selection,i=t<0?r.$from:r.$to,s=i.depth;for(;i.node(s).isInline;){if(!s)return!1;s--}return!!i.node(s).isTextblock&&(n&&n(e.tr.setSelection(u.create(e.doc,t<0?i.start(s):i.end(s)))),!0)}}const q=P(-1),G=P(1);function U(t,e=null){return function(n,r){let i=!1;for(let r=0;r<n.selection.ranges.length&&!i;r++){let{$from:{pos:u},$to:{pos:s}}=n.selection.ranges[r];n.doc.nodesBetween(u,s,((r,u)=>{if(i)return!1;if(r.isTextblock&&!r.hasMarkup(t,e))if(r.type==t)i=!0;else{let e=n.doc.resolve(u),r=e.index();i=e.parent.canReplaceWith(r,r+1,t)}}))}if(!i)return!1;if(r){let i=n.tr;for(let r=0;r<n.selection.ranges.length;r++){let{$from:{pos:u},$to:{pos:s}}=n.selection.ranges[r];i.setBlockType(u,s,t,e)}r(i.scrollIntoView())}return!0}}function W(t,e=null,r){let i=!1!==(r&&r.removeWhenPresent),u=!1!==(r&&r.enterInlineAtoms),s=!(r&&r.includeWhitespace);return function(r,o){let{empty:l,$cursor:f,ranges:c}=r.selection;if(l&&!f||!function(t,e,n,r){for(let i=0;i<e.length;i++){let{$from:u,$to:s}=e[i],o=0==u.depth&&t.inlineContent&&t.type.allowsMarkType(n);if(t.nodesBetween(u.pos,s.pos,((t,e)=>{if(o||!r&&t.isAtom&&t.isInline&&e>=u.pos&&e+t.nodeSize<=s.pos)return!1;o=t.inlineContent&&t.type.allowsMarkType(n)})),o)return!0}return!1}(r.doc,c,t,u))return!1;if(o)if(f)t.isInSet(r.storedMarks||f.marks())?o(r.tr.removeStoredMark(t)):o(r.tr.addStoredMark(t.create(e)));else{let l,f=r.tr;u||(c=function(t){let e=[];for(let r=0;r<t.length;r++){let{$from:i,$to:u}=t[r];i.doc.nodesBetween(i.pos,u.pos,((t,r)=>{if(t.isAtom&&t.content.size&&t.isInline&&r>=i.pos&&r+t.nodeSize<=u.pos)return r+1>i.pos&&e.push(new n(i,i.doc.resolve(r+1))),i=i.doc.resolve(r+1+t.content.size),!1})),i.pos<u.pos&&e.push(new n(i,u))}return e}(c)),l=i?!c.some((e=>r.doc.rangeHasMark(e.$from.pos,e.$to.pos,t))):!c.every((e=>{let n=!1;return f.doc.nodesBetween(e.$from.pos,e.$to.pos,((r,i,u)=>{if(n)return!1;n=!t.isInSet(r.marks)&&!!u&&u.type.allowsMarkType(t)&&!(r.isText&&/^\s*$/.test(r.textBetween(Math.max(0,e.$from.pos-i),Math.min(r.nodeSize,e.$to.pos-i))))})),!n}));for(let n=0;n<c.length;n++){let{$from:r,$to:i}=c[n];if(l){let n=r.pos,u=i.pos,o=r.nodeAfter,l=i.nodeBefore,c=s&&o&&o.isText?/^\s*/.exec(o.text)[0].length:0,a=s&&l&&l.isText?/\s*$/.exec(l.text)[0].length:0;n+c<u&&(n+=c,u-=a),f.addMark(n,u,t.create(e))}else f.removeMark(r.pos,i.pos,t)}o(f.scrollIntoView())}return!0}}function J(...t){return function(e,n,r){for(let i=0;i<t.length;i++)if(t[i](e,n,r))return!0;return!1}}let K=J(S,((e,n,i)=>{let u=function(t,e){let{$cursor:n}=t.selection;return!n||(e?!e.endOfTextblock("backward",t):n.parentOffset>0)?null:n}(e,i);if(!u)return!1;let s=E(u);if(!s){let r=u.blockRange(),i=r&&t(r);return null!=i&&(n&&n(e.tr.lift(r,i).scrollIntoView()),!0)}let c=s.nodeBefore;if(z(e,s,n,-1))return!0;if(0==u.parent.content.size&&(T(c,"end")||o.isSelectable(c)))for(let t=u.depth;;t--){let i=l(e.doc,u.before(t),u.after(t),f.empty);if(i&&i.slice.size<i.to-i.from){if(n){let t=e.tr.step(i);t.setSelection(T(c,"end")?r.findFrom(t.doc.resolve(t.mapping.map(s.pos,-1)),-1):o.create(t.doc,s.pos-c.nodeSize)),n(t.scrollIntoView())}return!0}if(1==t||u.node(t-1).childCount>1)break}return!(!c.isAtom||s.depth!=u.depth-1)&&(n&&n(e.tr.delete(s.pos-c.nodeSize,s.pos).scrollIntoView()),!0)}),((t,e,n)=>{let{$head:r,empty:i}=t.selection,u=r;if(!i)return!1;if(r.parent.isTextblock){if(n?!n.endOfTextblock("backward",t):r.parentOffset>0)return!1;u=E(r)}let s=u&&u.nodeBefore;return!(!s||!o.isSelectable(s))&&(e&&e(t.tr.setSelection(o.create(t.doc,u.pos-s.nodeSize)).scrollIntoView()),!0)})),N=J(S,((t,e,n)=>{let i=function(t,e){let{$cursor:n}=t.selection;return!n||(e?!e.endOfTextblock("forward",t):n.parentOffset<n.parent.content.size)?null:n}(t,n);if(!i)return!1;let u=F(i);if(!u)return!1;let s=u.nodeAfter;if(z(t,u,e,1))return!0;if(0==i.parent.content.size&&(T(s,"start")||o.isSelectable(s))){let n=l(t.doc,i.before(),i.after(),f.empty);if(n&&n.slice.size<n.to-n.from){if(e){let i=t.tr.step(n);i.setSelection(T(s,"start")?r.findFrom(i.doc.resolve(i.mapping.map(u.pos)),1):o.create(i.doc,i.mapping.map(u.pos))),e(i.scrollIntoView())}return!0}}return!(!s.isAtom||u.depth!=i.depth-1)&&(e&&e(t.tr.delete(u.pos,u.pos+s.nodeSize).scrollIntoView()),!0)}),((t,e,n)=>{let{$head:r,empty:i}=t.selection,u=r;if(!i)return!1;if(r.parent.isTextblock){if(n?!n.endOfTextblock("forward",t):r.parentOffset<r.parent.content.size)return!1;u=F(r)}let s=u&&u.nodeAfter;return!(!s||!o.isSelectable(s))&&(e&&e(t.tr.setSelection(o.create(t.doc,u.pos)).scrollIntoView()),!0)}));const Q={Enter:J(((t,e)=>{let{$head:n,$anchor:r}=t.selection;return!(!n.parent.type.spec.code||!n.sameParent(r))&&(e&&e(t.tr.insertText("\n").scrollIntoView()),!0)}),((t,e)=>{let n=t.selection,{$from:r,$to:s}=n;if(n instanceof i||r.parent.inlineContent||s.parent.inlineContent)return!1;let o=R(s.parent.contentMatchAt(s.indexAfter()));if(!o||!o.isTextblock)return!1;if(e){let n=(!r.parentOffset&&s.index()<s.parent.childCount?r:s).pos,i=t.tr.insert(n,o.createAndFill());i.setSelection(u.create(i.doc,n+1)),e(i.scrollIntoView())}return!0}),((e,n)=>{let{$cursor:r}=e.selection;if(!r||r.parent.content.size)return!1;if(r.depth>1&&r.after()!=r.end(-1)){let t=r.before();if(s(e.doc,t))return n&&n(e.tr.split(t).scrollIntoView()),!0}let i=r.blockRange(),u=i&&t(i);return null!=u&&(n&&n(e.tr.lift(i,u).scrollIntoView()),!0)}),D),"Mod-Enter":_,Backspace:K,"Mod-Backspace":K,"Shift-Backspace":K,Delete:N,"Mod-Delete":N,"Mod-a":(t,e)=>(e&&e(t.tr.setSelection(new i(t.doc))),!0)},V={"Ctrl-h":Q.Backspace,"Alt-Backspace":Q["Mod-Backspace"],"Ctrl-d":Q.Delete,"Ctrl-Alt-Backspace":Q["Mod-Delete"],"Alt-Delete":Q["Mod-Delete"],"Alt-d":Q["Mod-Delete"],"Ctrl-a":q,"Ctrl-e":G};for(let t in Q)V[t]=Q[t];const X=("undefined"!=typeof navigator?/Mac|iP(hone|[oa]d)/.test(navigator.platform):!("undefined"==typeof os||!os.platform)&&"darwin"==os.platform())?V:Q;var Y=200,Z=function(){};Z.prototype.append=function(t){return t.length?(t=Z.from(t),!this.length&&t||t.length<Y&&this.leafAppend(t)||this.length<Y&&t.leafPrepend(this)||this.appendInner(t)):this},Z.prototype.prepend=function(t){return t.length?Z.from(t).append(this):this},Z.prototype.appendInner=function(t){return new et(this,t)},Z.prototype.slice=function(t,e){return void 0===t&&(t=0),void 0===e&&(e=this.length),t>=e?Z.empty:this.sliceInner(Math.max(0,t),Math.min(this.length,e))},Z.prototype.get=function(t){if(!(t<0||t>=this.length))return this.getInner(t)},Z.prototype.forEach=function(t,e,n){void 0===e&&(e=0),void 0===n&&(n=this.length),e<=n?this.forEachInner(t,e,n,0):this.forEachInvertedInner(t,e,n,0)},Z.prototype.map=function(t,e,n){void 0===e&&(e=0),void 0===n&&(n=this.length);var r=[];return this.forEach((function(e,n){return r.push(t(e,n))}),e,n),r},Z.from=function(t){return t instanceof Z?t:t&&t.length?new tt(t):Z.empty};var tt=function(t){function e(e){t.call(this),this.values=e}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var n={length:{configurable:!0},depth:{configurable:!0}};return e.prototype.flatten=function(){return this.values},e.prototype.sliceInner=function(t,n){return 0==t&&n==this.length?this:new e(this.values.slice(t,n))},e.prototype.getInner=function(t){return this.values[t]},e.prototype.forEachInner=function(t,e,n,r){for(var i=e;i<n;i++)if(!1===t(this.values[i],r+i))return!1},e.prototype.forEachInvertedInner=function(t,e,n,r){for(var i=e-1;i>=n;i--)if(!1===t(this.values[i],r+i))return!1},e.prototype.leafAppend=function(t){if(this.length+t.length<=Y)return new e(this.values.concat(t.flatten()))},e.prototype.leafPrepend=function(t){if(this.length+t.length<=Y)return new e(t.flatten().concat(this.values))},n.length.get=function(){return this.values.length},n.depth.get=function(){return 0},Object.defineProperties(e.prototype,n),e}(Z);Z.empty=new tt([]);var et=function(t){function e(e,n){t.call(this),this.left=e,this.right=n,this.length=e.length+n.length,this.depth=Math.max(e.depth,n.depth)+1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.flatten=function(){return this.left.flatten().concat(this.right.flatten())},e.prototype.getInner=function(t){return t<this.left.length?this.left.get(t):this.right.get(t-this.left.length)},e.prototype.forEachInner=function(t,e,n,r){var i=this.left.length;return!(e<i&&!1===this.left.forEachInner(t,e,Math.min(n,i),r))&&(!(n>i&&!1===this.right.forEachInner(t,Math.max(e-i,0),Math.min(this.length,n)-i,r+i))&&void 0)},e.prototype.forEachInvertedInner=function(t,e,n,r){var i=this.left.length;return!(e>i&&!1===this.right.forEachInvertedInner(t,e-i,Math.max(n,i)-i,r+i))&&(!(n<i&&!1===this.left.forEachInvertedInner(t,Math.min(e,i),n,r))&&void 0)},e.prototype.sliceInner=function(t,e){if(0==t&&e==this.length)return this;var n=this.left.length;return e<=n?this.left.slice(t,e):t>=n?this.right.slice(t-n,e-n):this.left.slice(t,n).append(this.right.slice(0,e-n))},e.prototype.leafAppend=function(t){var n=this.right.leafAppend(t);if(n)return new e(this.left,n)},e.prototype.leafPrepend=function(t){var n=this.left.leafPrepend(t);if(n)return new e(n,this.right)},e.prototype.appendInner=function(t){return this.left.depth>=Math.max(this.right.depth,t.depth)+1?new e(this.left,new e(this.right,t)):new e(this,t)},e}(Z);class nt{constructor(t,e){this.items=t,this.eventCount=e}popEvent(t,e){if(0==this.eventCount)return null;let n,r,i=this.items.length;for(;;i--){if(this.items.get(i-1).selection){--i;break}}e&&(n=this.remapping(i,this.items.length),r=n.maps.length);let u,s,o=t.tr,l=[],f=[];return this.items.forEach(((t,e)=>{if(!t.step)return n||(n=this.remapping(i,e+1),r=n.maps.length),r--,void f.push(t);if(n){f.push(new rt(t.map));let e,i=t.step.map(n.slice(r));i&&o.maybeStep(i).doc&&(e=o.mapping.maps[o.mapping.maps.length-1],l.push(new rt(e,void 0,void 0,l.length+f.length))),r--,e&&n.appendMap(e,r)}else o.maybeStep(t.step);return t.selection?(u=n?t.selection.map(n.slice(r)):t.selection,s=new nt(this.items.slice(0,i).append(f.reverse().concat(l)),this.eventCount-1),!1):void 0}),this.items.length,0),{remaining:s,transform:o,selection:u}}addTransform(t,e,n,r){let i=[],u=this.eventCount,s=this.items,o=!r&&s.length?s.get(s.length-1):null;for(let n=0;n<t.steps.length;n++){let l,f=t.steps[n].invert(t.docs[n]),c=new rt(t.mapping.maps[n],f,e);(l=o&&o.merge(c))&&(c=l,n?i.pop():s=s.slice(0,s.length-1)),i.push(c),e&&(u++,e=void 0),r||(o=c)}let l=u-n.depth;return l>ut&&(s=function(t,e){let n;return t.forEach(((t,r)=>{if(t.selection&&0==e--)return n=r,!1})),t.slice(n)}(s,l),u-=l),new nt(s.append(i),u)}remapping(t,e){let n=new p;return this.items.forEach(((e,r)=>{let i=null!=e.mirrorOffset&&r-e.mirrorOffset>=t?n.maps.length-e.mirrorOffset:void 0;n.appendMap(e.map,i)}),t,e),n}addMaps(t){return 0==this.eventCount?this:new nt(this.items.append(t.map((t=>new rt(t)))),this.eventCount)}rebased(t,e){if(!this.eventCount)return this;let n=[],r=Math.max(0,this.items.length-e),i=t.mapping,u=t.steps.length,s=this.eventCount;this.items.forEach((t=>{t.selection&&s--}),r);let o=e;this.items.forEach((e=>{let r=i.getMirror(--o);if(null==r)return;u=Math.min(u,r);let l=i.maps[r];if(e.step){let u=t.steps[r].invert(t.docs[r]),f=e.selection&&e.selection.map(i.slice(o+1,r));f&&s++,n.push(new rt(l,u,f))}else n.push(new rt(l))}),r);let l=[];for(let t=e;t<u;t++)l.push(new rt(i.maps[t]));let f=this.items.slice(0,r).append(l).append(n),c=new nt(f,s);return c.emptyItemCount()>500&&(c=c.compress(this.items.length-n.length)),c}emptyItemCount(){let t=0;return this.items.forEach((e=>{e.step||t++})),t}compress(t=this.items.length){let e=this.remapping(0,t),n=e.maps.length,r=[],i=0;return this.items.forEach(((u,s)=>{if(s>=t)r.push(u),u.selection&&i++;else if(u.step){let t=u.step.map(e.slice(n)),s=t&&t.getMap();if(n--,s&&e.appendMap(s,n),t){let o=u.selection&&u.selection.map(e.slice(n));o&&i++;let l,f=new rt(s.invert(),t,o),c=r.length-1;(l=r.length&&r[c].merge(f))?r[c]=l:r.push(f)}}else u.map&&n--}),this.items.length,0),new nt(Z.from(r.reverse()),i)}}nt.empty=new nt(Z.empty,0);class rt{constructor(t,e,n,r){this.map=t,this.step=e,this.selection=n,this.mirrorOffset=r}merge(t){if(this.step&&t.step&&!t.selection){let e=t.step.merge(this.step);if(e)return new rt(e.getMap().invert(),e,this.selection)}}}class it{constructor(t,e,n,r,i){this.done=t,this.undone=e,this.prevRanges=n,this.prevTime=r,this.prevComposition=i}}const ut=20;function st(t){let e=[];for(let n=t.length-1;n>=0&&0==e.length;n--)t[n].forEach(((t,n,r,i)=>e.push(r,i)));return e}function ot(t,e){if(!t)return null;let n=[];for(let r=0;r<t.length;r+=2){let i=e.map(t[r],1),u=e.map(t[r+1],-1);i<=u&&n.push(i,u)}return n}let lt=!1,ft=null;function ct(t){let e=t.plugins;if(ft!=e){lt=!1,ft=e;for(let t=0;t<e.length;t++)if(e[t].spec.historyPreserveItems){lt=!0;break}}return lt}const at=new d("history"),ht=new d("closeHistory");function dt(t={}){return t={depth:t.depth||100,newGroupDelay:t.newGroupDelay||500},new m({key:at,state:{init:()=>new it(nt.empty,nt.empty,null,0,-1),apply:(e,n,r)=>function(t,e,n,r){let i,u=n.getMeta(at);if(u)return u.historyState;n.getMeta(ht)&&(t=new it(t.done,t.undone,null,0,-1));let s=n.getMeta("appendedTransaction");if(0==n.steps.length)return t;if(s&&s.getMeta(at))return s.getMeta(at).redo?new it(t.done.addTransform(n,void 0,r,ct(e)),t.undone,st(n.mapping.maps),t.prevTime,t.prevComposition):new it(t.done,t.undone.addTransform(n,void 0,r,ct(e)),null,t.prevTime,t.prevComposition);if(!1===n.getMeta("addToHistory")||s&&!1===s.getMeta("addToHistory"))return(i=n.getMeta("rebased"))?new it(t.done.rebased(n,i),t.undone.rebased(n,i),ot(t.prevRanges,n.mapping),t.prevTime,t.prevComposition):new it(t.done.addMaps(n.mapping.maps),t.undone.addMaps(n.mapping.maps),ot(t.prevRanges,n.mapping),t.prevTime,t.prevComposition);{let i=n.getMeta("composition"),u=0==t.prevTime||!s&&t.prevComposition!=i&&(t.prevTime<(n.time||0)-r.newGroupDelay||!function(t,e){if(!e)return!1;if(!t.docChanged)return!0;let n=!1;return t.mapping.maps[0].forEach(((t,r)=>{for(let i=0;i<e.length;i+=2)t<=e[i+1]&&r>=e[i]&&(n=!0)})),n}(n,t.prevRanges)),o=s?ot(t.prevRanges,n.mapping):st(n.mapping.maps);return new it(t.done.addTransform(n,u?e.selection.getBookmark():void 0,r,ct(e)),nt.empty,o,n.time,null==i?t.prevComposition:i)}}(n,r,e,t)},config:t,props:{handleDOMEvents:{beforeinput(t,e){let n=e.inputType,r="historyUndo"==n?pt:"historyRedo"==n?gt:null;return!(!r||!t.editable)&&(e.preventDefault(),r(t.state,t.dispatch))}}}})}function mt(t,e){return(n,r)=>{let i=at.getState(n);if(!i||0==(t?i.undone:i.done).eventCount)return!1;if(r){let u=function(t,e,n){let r=ct(e),i=at.get(e).spec.config,u=(n?t.undone:t.done).popEvent(e,r);if(!u)return null;let s=u.selection.resolve(u.transform.doc),o=(n?t.done:t.undone).addTransform(u.transform,e.selection.getBookmark(),i,r),l=new it(n?o:u.remaining,n?u.remaining:o,null,0,-1);return u.transform.setSelection(s).setMeta(at,{redo:n,historyState:l})}(i,n,t);u&&r(e?u.scrollIntoView():u)}return!0}}const pt=mt(!1,!0),gt=mt(!0,!0);function wt(t,e){const{parent:n,parentOffset:r}=t,i=n.childAfter(r);if(!i.node||!e.isInSet(i.node.marks))return null;let u=i.index,s=t.start()+i.offset;for(;u>0&&e.isInSet(n.child(u-1).marks);)u-=1,s-=n.child(u).nodeSize;let o=i.index+1,l=s+i.node.nodeSize;for(;o<n.childCount&&e.isInSet(n.child(o).marks);)l+=n.child(o).nodeSize,o+=1;return{from:s,to:l}}function vt(t,e){return(n,r)=>{const{empty:i,ranges:s,$from:o}=n.selection;if(i&&!(n.selection instanceof u&&n.selection.$cursor))return!1;if(!i&&!n.selection.content().content.firstChild)return!1;if(r){const u=n.tr;if(i)u.removeStoredMark(t),e&&u.addStoredMark(t.create(e));else{for(const n of s)u.removeMark(n.$from.pos,n.$to.pos,t),e&&u.addMark(n.$from.pos,n.$to.pos,t.create(e));u.scrollIntoView()}r(u)}return!0}}function $t(t){const{$from:e}=t.selection,{bullet_list:n,ordered_list:r,task_list:i}=t.schema.nodes;for(let t=e.depth;t>0;t-=1){const u=e.node(t);if(u.type===n||u.type===r||u.type===i)return{node:u,pos:e.before(t),depth:t}}return null}function bt(t){const{schema:e}=t;return t===e.nodes.task_list?e.nodes.task_item:e.nodes.list_item}function Mt(t,e){return(n,r,i)=>{const s=$t(n);if(s){if(s.node.type===t)return g(bt(s.node.type))(n,r,i);if(r){const i=bt(s.node.type),o=[];s.node.forEach((t=>{o.push(t.type===i&&i!==e?e.create(null,t.content,t.marks):t)}));const l=t.create(s.node.attrs,o),f=n.tr,{from:c,to:a}=n.selection;f.replaceWith(s.pos,s.pos+s.node.nodeSize,l),f.setSelection(u.create(f.doc,c,a)),r(f)}return!0}return v(t)(n,r,i)}}function yt(t){return(n,r,i)=>function(t,e){const{$from:n}=t.selection;for(let t=n.depth;t>0;t-=1)if(n.node(t).type===e)return!0;return!1}(n,t)?I(n,r):function(t,n=null){return function(r,i){let{$from:u,$to:s}=r.selection,o=u.blockRange(s),l=o&&e(o,t,n);return!!l&&(i&&i(r.tr.wrap(o,l).scrollIntoView()),!0)}}(t)(n,r,i)}function kt(t){return(e,n)=>{const{from:r,to:i}=e.selection,u=[];if(e.doc.nodesBetween(r,i,((e,n)=>{if(e.isTextblock&&e.type.spec.attrs&&"indent"in e.type.spec.attrs){const r=e.attrs.indent??0,i=Math.max(0,Math.min(b,r+t));i!==r&&u.push({pos:n,node:e,next:i})}return!0})),0===u.length)return!1;if(n){const t=e.tr;for(const{pos:e,node:n,next:r}of u)t.setNodeMarkup(e,void 0,{...n.attrs,indent:r});n(t)}return!0}}function Ct(t){const{image:e,figure:n}=t.schema.nodes,r=t.selection;if(r instanceof o){if(r.node.type===e)return{node:r.node,pos:r.from,isFigure:!1};if(r.node.type===n)return{node:r.node,pos:r.from,isFigure:!0}}const{$from:i}=r;for(let t=i.depth;t>0;t-=1)if(i.node(t).type===n)return{node:i.node(t),pos:i.before(t),isFigure:!0};return null}function jt(t){const e=t.selection;return e instanceof o&&e.node.type===t.schema.nodes.embed?{node:e.node,pos:e.from}:null}function xt(t,e,n={}){const{schema:r}=t,{nodes:i,marks:s}=r;switch(e){case"bold":return W(s.bold);case"italic":return W(s.italic);case"underline":return W(s.underline);case"strike":return W(s.strike);case"subscript":return W(s.subscript);case"superscript":return W(s.superscript);case"code":return W(s.code);case"paragraph":return U(i.paragraph);case"heading":return U(i.heading,{level:n.level??1});case"blockquote":return yt(i.blockquote);case"align":return p=n.align??null,(t,e)=>{const{from:n,to:r}=t.selection,i=[];if(t.doc.nodesBetween(n,r,((t,e)=>(t.isTextblock&&t.type.spec.attrs&&"align"in t.type.spec.attrs&&i.push({pos:e,node:t}),!0))),0===i.length)return!1;if(e){const n=t.tr;for(const{pos:t,node:e}of i)n.setNodeMarkup(t,void 0,{...e.attrs,align:p});e(n)}return!0};case"lineHeight":return m=n.lineHeight??null,(t,e)=>{const{from:n,to:r}=t.selection,i=[];if(t.doc.nodesBetween(n,r,((t,e)=>(t.isTextblock&&t.type.spec.attrs&&"lineHeight"in t.type.spec.attrs&&i.push({pos:e,node:t}),!0))),0===i.length)return!1;if(e){const n=t.tr;for(const{pos:t,node:e}of i)n.setNodeMarkup(t,void 0,{...e.attrs,lineHeight:m});e(n)}return!0};case"bulletList":return Mt(i.bullet_list,i.list_item);case"orderedList":return Mt(i.ordered_list,i.list_item);case"taskList":return Mt(i.task_list,i.task_item);case"indent":return J(w(i.task_item),w(i.list_item),kt(1));case"outdent":return J(g(i.task_item),g(i.list_item),kt(-1),I);case"setListStyle":return d=n.style??null,(t,e)=>{const n=$t(t);if(!n)return!1;let r=n;const{$from:i}=t.selection,u=t.schema.nodes.ordered_list;for(let t=1;t<=i.depth;t+=1){const e=i.node(t);if(e.type===u&&(d===$||e.attrs.style===$)){r={node:e,pos:i.before(t),depth:t};break}}return e&&e(t.tr.setNodeMarkup(r.pos,void 0,{...r.node.attrs,style:d})),!0};case"setListStart":return h=n.start??1,(t,e)=>{const n=$t(t);return!(!n||n.node.type!==t.schema.nodes.ordered_list||(e&&e(t.tr.setNodeMarkup(n.pos,void 0,{...n.node.attrs,order:Math.max(1,Math.round(h))})),0))};case"toggleImageCaption":return function(t){return(e,n)=>{const r=Ct(e);if(!r)return!1;if(n){const i=e.tr;if(r.isFigure){const{src:e,alt:n,title:u,width:s}=r.node.attrs,l=t.nodes.image.create({src:e,alt:n,title:u,width:s});i.replaceWith(r.pos,r.pos+r.node.nodeSize,t.nodes.paragraph.create(null,l)),i.setSelection(o.create(i.doc,r.pos+1))}else{const{src:n,alt:s,title:o,width:l}=r.node.attrs,f=s?t.text(s):null,c=t.nodes.figure.create({src:n,alt:s,title:o,width:l,align:null},f),a=e.doc.resolve(r.pos),h=a.parent,d=1===h.childCount&&"paragraph"===h.type.name,m=d?a.before():r.pos,p=d?a.after():r.pos+r.node.nodeSize;i.replaceWith(m,p,c),i.setSelection(u.create(i.doc,m+1+c.content.size))}n(i.scrollIntoView())}return!0}}(r);case"setImageAlign":return function(t,e){return(n,r)=>{const i=Ct(n);if(!i)return!1;const u="left"===e||"center"===e||"right"===e?e:null;if(r){const e=n.tr;if(i.isFigure)e.setNodeMarkup(i.pos,void 0,{...i.node.attrs,align:u}),n.selection instanceof o&&e.setSelection(o.create(e.doc,i.pos));else{const{src:r,alt:s,title:l,width:f}=i.node.attrs,c=t.nodes.figure.create({src:r,alt:s,title:l,width:f,align:u}),a=n.doc.resolve(i.pos),h=a.parent,d=1===h.childCount&&"paragraph"===h.type.name,m=d?a.before():i.pos,p=d?a.after():i.pos+i.node.nodeSize;e.replaceWith(m,p,c),e.setSelection(o.create(e.doc,m))}r(e.scrollIntoView())}return!0}}(r,n.align??null);case"setImageWidth":return a=n.width??null,(t,e)=>{const n=Ct(t);if(!n)return!1;if(e){const r=t.tr.setNodeMarkup(n.pos,void 0,{...n.node.attrs,width:a&&a>0?Math.round(a):null});t.selection instanceof o&&r.setSelection(o.create(r.doc,n.pos)),e(r)}return!0};case"deleteImage":return(t,e)=>{const n=Ct(t);return!!n&&(e&&e(t.tr.delete(n.pos,n.pos+n.node.nodeSize).scrollIntoView()),!0)};case"setEmbedAlign":return function(t){return(e,n)=>{const r=jt(e);if(!r)return!1;const i="left"===t||"center"===t||"right"===t?t:null;if(n){const t=e.tr.setNodeMarkup(r.pos,void 0,{...r.node.attrs,align:i});t.setSelection(o.create(t.doc,r.pos)),n(t.scrollIntoView())}return!0}}(n.align??null);case"deleteEmbed":return(t,e)=>{const n=jt(t);return!!n&&(e&&e(t.tr.delete(n.pos,n.pos+n.node.nodeSize).scrollIntoView()),!0)};case"link":return function(t,e){return(n,r)=>{if(!e.href)return!1;const{empty:i,$from:u,from:s,to:o}=n.selection;let l={from:s,to:o};if(i){const e=wt(u,t);if(!e)return!1;l=e}if(r){const i=n.tr;i.removeMark(l.from,l.to,t),i.addMark(l.from,l.to,t.create({href:e.href,title:e.title??null,target:e.target??null})),r(i.scrollIntoView())}return!0}}(s.link,n);case"unlink":return c=s.link,(t,e)=>{const{empty:n,$from:r,from:i,to:u}=t.selection;let s={from:i,to:u};if(n){const t=wt(r,c);if(!t)return!1;s=t}else if(!t.doc.rangeHasMark(i,u,c))return!1;return e&&e(t.tr.removeMark(s.from,s.to,c)),!0};case"insertBookmark":return function(t,e){return(n,r)=>{const i=e.id?.trim();if(!i)return!1;if(r){const e=t.nodes.bookmark.create({id:i});r(n.tr.replaceSelectionWith(e,!1).scrollIntoView())}return!0}}(r,n);case"textColor":return vt(s.text_color,n.color?{color:n.color}:null);case"bgColor":return vt(s.bg_color,n.color?{color:n.color}:null);case"fontFamily":return vt(s.font_family,n.family?{family:n.family}:null);case"fontSize":return vt(s.font_size,n.size?{size:n.size}:null);case"horizontalRule":return f=i.horizontal_rule,(t,e)=>(e&&e(t.tr.replaceSelectionWith(f.create()).scrollIntoView()),!0);case"clearFormatting":return(t,e)=>{const{from:n,to:r,empty:i}=t.selection;if(e){const u=t.tr;i||u.removeMark(n,r,null),u.setStoredMarks([]),t.doc.nodesBetween(n,r,((t,e)=>(t.isTextblock&&t.type.spec.attrs&&"align"in t.type.spec.attrs&&(t.attrs.align||t.attrs.lineHeight)&&u.setNodeMarkup(e,void 0,{...t.attrs,align:null,lineHeight:null}),!0))),e(u)}return!0};case"undo":return pt;case"redo":return gt;case"codeBlock":return function(t,e){return(n,r,i)=>{const{$from:u}=n.selection;return u.parent.type===t.nodes.code_block?U(t.nodes.paragraph)(n,r,i):U(t.nodes.code_block,{language:e})(n,r,i)}}(r,n.language??null);case"setCodeBlockLanguage":return function(t,e){return(n,r)=>{const{$from:i}=n.selection;for(let u=i.depth;u>0;u-=1)if(i.node(u).type===t.nodes.code_block)return r&&r(n.tr.setNodeMarkup(i.before(u),void 0,{language:e})),!0;return!1}}(r,n.language??null);case"insertEmbed":return function(t,e){return(n,r)=>{if(!e.src)return!1;const i=t.nodes.embed.create({src:e.src,provider:e.provider??null,title:e.title??null});return r&&r(n.tr.replaceSelectionWith(i).scrollIntoView()),!0}}(r,n);case"insertImage":return function(t,e){return(n,r)=>{if(!e.src)return!1;const i=e.src,u=e.alt??null,s=e.title??null,o=null!=e.caption?String(e.caption).trim():"",l=o?t.nodes.figure.create({src:i,alt:u,title:s,width:null,align:null},t.text(o)):t.nodes.image.create({src:i,alt:u,title:s});return r&&r(n.tr.replaceSelectionWith(l).scrollIntoView()),!0}}(r,n);case"updateImage":return function(t,e){return(n,r)=>{const i=Ct(n);if(!i||!e.src)return!1;const u=e.src,s=e.alt??null,l=e.title??null,f=null!=e.caption?String(e.caption).trim():"",c=i.node.attrs.width??null,a=i.isFigure?i.node.attrs.align??null:null;if(r){const e=n.tr;if(f){const r=t.nodes.figure.create({src:u,alt:s,title:l,width:c,align:a},t.text(f));if(i.isFigure)e.replaceWith(i.pos,i.pos+i.node.nodeSize,r),e.setSelection(o.create(e.doc,i.pos));else{const t=n.doc.resolve(i.pos),u=t.parent,s=1===u.childCount&&"paragraph"===u.type.name,l=s?t.before():i.pos,f=s?t.after():i.pos+i.node.nodeSize;e.replaceWith(l,f,r),e.setSelection(o.create(e.doc,l))}}else if(i.isFigure){const n=t.nodes.image.create({src:u,alt:s,title:l,width:c});e.replaceWith(i.pos,i.pos+i.node.nodeSize,t.nodes.paragraph.create(null,n)),e.setSelection(o.create(e.doc,i.pos+1))}else e.setNodeMarkup(i.pos,void 0,{src:u,alt:s,title:l,width:c}),n.selection instanceof o&&e.setSelection(o.create(e.doc,i.pos));r(e.scrollIntoView())}return!0}}(r,n);case"insertTable":return function(t,e){const n=Math.max(1,e.rows??3),r=Math.max(1,e.cols??3),i=e.withHeaderRow??!0;return(e,u)=>{const{table:s,table_row:o,table_cell:l,table_header:f}=t.nodes,c=[];for(let t=0;t<n;t+=1){const e=0===t&&i?f:l,n=[];for(let t=0;t<r;t+=1)n.push(e.createAndFill());c.push(o.create(null,n))}return u&&u(e.tr.replaceSelectionWith(s.create(null,c)).scrollIntoView()),!0}}(r,n);case"addRowBefore":return H;case"addRowAfter":return L;case"addColumnBefore":return A;case"addColumnAfter":return B;case"deleteRow":return x;case"deleteColumn":return j;case"mergeCells":return C;case"splitCell":return k;case"toggleHeaderRow":return y;case"toggleLayoutTable":return(t,e)=>{const{$from:n}=t.selection;for(let r=n.depth;r>0;r-=1){const i=n.node(r);if(i.type===t.schema.nodes.table)return e&&e(t.tr.setNodeMarkup(n.before(r),void 0,{...i.attrs,layout:!i.attrs.layout})),!0}return!1};case"deleteTable":return M;case"changeCase":return l=n.textCase??"upper",(t,e)=>{const{from:n,to:r,empty:i}=t.selection;if(i)return!1;const u=[];if(t.doc.nodesBetween(n,r,((t,e)=>{if(!t.isText||!t.text)return;const i=Math.max(n,e),s=Math.min(r,e+t.nodeSize);if(i>=s)return;const o=t.text.slice(i-e,s-e),f=function(t,e){switch(e){case"upper":return t.toUpperCase();case"lower":return t.toLowerCase();case"title":return t.toLowerCase().replace(/(^|\s)(\p{L})/gu,((t,e,n)=>e+n.toUpperCase()));case"sentence":return t.toLowerCase().replace(/(^|[.!?]\s+)(\p{L})/gu,((t,e,n)=>e+n.toUpperCase()))}}(o,l);f!==o&&u.push({from:i,to:s,text:f,marks:t.marks})})),0===u.length)return!1;if(e){const n=t.tr;for(const e of u.reverse())n.replaceWith(e.from,e.to,t.schema.text(e.text,e.marks));e(n.scrollIntoView())}return!0};case"insertMergeField":return function(t,e){return(n,r)=>{const i=t.nodes.merge_field;if(!i||!e.id)return!1;if(r){const t=i.create({id:e.id,label:e.label??null});r(n.tr.replaceSelectionWith(t).scrollIntoView())}return!0}}(r,n);case"insertMath":return function(t,e){return(n,r)=>{const i=t.nodes.math,u=(e.latex??"").trim();if(!i||!u)return!1;if(r){const t=i.create({latex:u,display:e.mathDisplay??"inline"});r(n.tr.replaceSelectionWith(t).scrollIntoView())}return!0}}(r,n);default:return null}var l,f,c,a,h,d,m,p}export{jt as a,xt as b,J as c,X as d,_ as e,wt as g,dt as h,gt as r,Ct as s,pt as u};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
System.register(["../../index-89c520e9.cjs.js","./commands.cjs.js","../../index-df196058.cjs.js","../../index-cc1385e0.cjs.js","./keymap.cjs.js","./inputrules.cjs.js","./plugins/placeholder.cjs.js","./plugins/link.cjs.js","./plugins/single-line.cjs.js","./plugins/tables.cjs.js","./plugins/image.cjs.js","./plugins/suggestions.cjs.js","./plugins/find-replace.cjs.js","./plugins/max-length.cjs.js","./plugins/code-highlight.cjs.js","./plugins/embeds.cjs.js","./plugins/paste.cjs.js","./plugins/format-painter.cjs.js","./schema.cjs.js","../../index-178e1e57.cjs.js","../../index-f956f56d.cjs.js","./markdown-parse.cjs.js","./serializer.cjs.js","./sanitize.cjs.js"],function(_export,_context){"use strict";var t,e,r,s,i,n,o,l,u,a,h,f,c,p,m,g,d,j,w,v,b,x,k,S,y,O,T,z,C,F,L,D,N,R,B;function _toConsumableArray(r){return _arrayWithoutHoles(r)||_iterableToArray(r)||_unsupportedIterableToArray(r)||_nonIterableSpread();}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0;}}function _iterableToArray(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r);}function _arrayWithoutHoles(r){if(Array.isArray(r))return _arrayLikeToArray(r);}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable;})),t.push.apply(t,o);}return t;}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){_defineProperty(e,r,t[r]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));});}return e;}function _defineProperty(e,r,t){return(r=_toPropertyKey(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e;}function _callSuper(t,o,e){return o=_getPrototypeOf(o),_possibleConstructorReturn(t,_isNativeReflectConstruct()?Reflect.construct(o,e||[],_getPrototypeOf(t).constructor):o.apply(t,e));}function _possibleConstructorReturn(t,e){if(e&&("object"==_typeof(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(t);}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e;}function _isNativeReflectConstruct(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));}catch(t){}return(_isNativeReflectConstruct=function _isNativeReflectConstruct(){return!!t;})();}function _getPrototypeOf(t){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t);},_getPrototypeOf(t);}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&_setPrototypeOf(t,e);}function _setPrototypeOf(t,e){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t;},_setPrototypeOf(t,e);}function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}function _classCallCheck(a,n){if(!(a instanceof n))throw new TypeError("Cannot call a class as a function");}function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,_toPropertyKey(o.key),o);}}function _createClass(e,r,t){return r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==_typeof(i)?i:i+"";}function _toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return("string"===r?String:Number)(t);}function A(t){return t.isAtom||t.spec.isolating||t.spec.createGapCursor;}function E(t,e){var r="vert"==t?e>0?"down":"up":e>0?"right":"left";return function(t,i,n){var o=t.selection,l=e>0?o.$to:o.$from,u=o.empty;if(o instanceof s){if(!n.endOfTextblock(r)||0==l.depth)return!1;u=!1,l=t.doc.resolve(e>0?l.after():l.before());}var a=F.findGapCursorFrom(l,e,u);return!!a&&(i&&i(t.tr.setSelection(new F(a))),!0);};}function M(t,e,r){if(!t||!t.editable)return!1;var s=t.state.doc.resolve(e);if(!F.valid(s))return!1;var n=t.posAtCoords({left:r.clientX,top:r.clientY});return!(n&&n.inside>-1&&i.isSelectable(t.state.doc.nodeAt(n.inside)))&&(t.dispatch(t.state.tr.setSelection(new F(s))),!0);}function P(t,e){if("insertCompositionText"!=e.inputType||!(t.state.selection instanceof F))return!1;var r=t.state.selection.$from,i=r.parent.contentMatchAt(r.index()).findWrapping(t.state.schema.nodes.text);if(!i)return!1;var l=n.empty;for(var _t6=i.length-1;_t6>=0;_t6--)l=n.from(i[_t6].createAndFill(null,l));var u=t.state.tr.replace(r.pos,r.pos,new o(l,0,0));return u.setSelection(s.near(u.doc.resolve(r.pos+1))),t.dispatch(u),!1;}function J(t){if(!(t.selection instanceof F))return null;var e=document.createElement("div");return e.className="ProseMirror-gapcursor",f.create(t.doc,[c.widget(t.selection.head,e,{key:"gapcursor"})]);}function G(){var _e$schema,_e$getPlaceholder;var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var r=(_e$schema=e.schema)!==null&&_e$schema!==void 0?_e$schema:z,s=[];return e.mentions&&s.push(b(N,e.mentions)),e.slashCommands&&s.push(b(R,_objectSpread(_objectSpread({},e.slashCommands),{},{getTriggers:function getTriggers(){return["/"];},startOfLine:!0}))),e.emoji&&s.push(b(B,_objectSpread(_objectSpread({},e.emoji),{},{getTriggers:function getTriggers(){return[":"];},minQueryLength:2}))),s.push.apply(s,[m(r,{textTransform:e.textTransform})].concat(_toConsumableArray(p(r,{onLinkShortcut:e.onLinkShortcut,onFindShortcut:e.onFindShortcut,onShortcutHelp:e.onShortcutHelp})),[a(),function(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};return new t({view:function view(t){return new C(t,e);}});}(),new t({props:{decorations:J,createSelectionBetween:function createSelectionBetween(t,e,r){return e.pos==r.pos&&F.valid(r)?new F(r):null;},handleClick:M,handleKeyDown:D,handleDOMEvents:{beforeinput:P}}}),g((_e$getPlaceholder=e.getPlaceholder)!==null&&_e$getPlaceholder!==void 0?_e$getPlaceholder:function(){return"";}),d({onOpenLink:e.onOpenLink})],_toConsumableArray(w()),[v({onImageFiles:e.onImageFiles}),x(),S(),y(),T(),O(r,{getForcePlainText:e.getForcePlainText,getMarkdownPaste:e.getMarkdownPaste,getSanitize:e.getSanitize})])),e.getMaxLength&&s.push(k(e.getMaxLength)),e.singleLine&&s.push(j()),e.plugins&&s.push.apply(s,_toConsumableArray(e.plugins)),u.create({schema:r,doc:e.doc,plugins:s});}_export("c",G);return{setters:[function(_index00aCjsJs){t=_index00aCjsJs.b;e=_index00aCjsJs.e;r=_index00aCjsJs.S;s=_index00aCjsJs.T;i=_index00aCjsJs.c;n=_index00aCjsJs.F;o=_index00aCjsJs.d;l=_index00aCjsJs.P;u=_index00aCjsJs.E;},function(_commandsCjsJs){a=_commandsCjsJs.h;},function(_index001CjsJs){h=_index001CjsJs.b;},function(_index009CjsJs){f=_index009CjsJs.D;c=_index009CjsJs.a;},function(_keymapCjsJs){p=_keymapCjsJs.b;},function(_inputrulesCjsJs){m=_inputrulesCjsJs.b;},function(_pluginsPlaceholderCjsJs){g=_pluginsPlaceholderCjsJs.p;},function(_pluginsLinkCjsJs){d=_pluginsLinkCjsJs.l;},function(_pluginsSingleLineCjsJs){j=_pluginsSingleLineCjsJs.s;},function(_pluginsTablesCjsJs){w=_pluginsTablesCjsJs.t;},function(_pluginsImageCjsJs){v=_pluginsImageCjsJs.i;},function(_pluginsSuggestionsCjsJs){b=_pluginsSuggestionsCjsJs.s;},function(_pluginsFindReplaceCjsJs){x=_pluginsFindReplaceCjsJs.f;},function(_pluginsMaxLengthCjsJs){k=_pluginsMaxLengthCjsJs.m;},function(_pluginsCodeHighlightCjsJs){S=_pluginsCodeHighlightCjsJs.c;},function(_pluginsEmbedsCjsJs){y=_pluginsEmbedsCjsJs.e;},function(_pluginsPasteCjsJs){O=_pluginsPasteCjsJs.a;},function(_pluginsFormatPainterCjsJs){T=_pluginsFormatPainterCjsJs.f;},function(_schemaCjsJs){z=_schemaCjsJs.d;},function(_index007CjsJs){},function(_index00bCjsJs){},function(_markdownParseCjsJs){},function(_serializerCjsJs){},function(_sanitizeCjsJs){}],execute:function execute(){C=/*#__PURE__*/function(){function C(t,e){var _this=this;_classCallCheck(this,C);var r;this.editorView=t,this.cursorPos=null,this.element=null,this.timeout=-1,this.lastDragEvent=null,this.width=null!==(r=e.width)&&void 0!==r?r:1,this.color=!1===e.color?void 0:e.color||"black",this["class"]=e["class"],this.handlers=["dragover","dragend","drop","dragleave"].map(function(e){var r=function r(t){_this[e](t);};return t.dom.addEventListener(e,r),{name:e,handler:r};});}return _createClass(C,[{key:"destroy",value:function destroy(){var _this2=this;this.handlers.forEach(function(_ref){var t=_ref.name,e=_ref.handler;return _this2.editorView.dom.removeEventListener(t,e);});}},{key:"update",value:function update(t,e){if(null!=this.cursorPos&&e.doc!=t.state.doc)if(this.lastDragEvent){var _t=this.computeTarget(this.lastDragEvent);_t==this.cursorPos?this.updateOverlay():this.setCursor(_t);}else this.updateOverlay();}},{key:"setCursor",value:function setCursor(t){t!=this.cursorPos&&(this.cursorPos=t,null==t?(this.element.parentNode.removeChild(this.element),this.element=null):this.updateOverlay());}},{key:"updateOverlay",value:function updateOverlay(){var t,e=this.editorView.state.doc.resolve(this.cursorPos),r=!e.parent.inlineContent,s=this.editorView.dom,i=s.getBoundingClientRect(),n=i.width/s.offsetWidth,o=i.height/s.offsetHeight;if(r){var _r=e.nodeBefore,_s=e.nodeAfter;if(_r||_s){var _e=this.editorView.nodeDOM(this.cursorPos-(_r?_r.nodeSize:0));if(_e){var _i=_e.getBoundingClientRect(),_n=_r?_i.bottom:_i.top;_r&&_s&&(_n=(_n+this.editorView.nodeDOM(this.cursorPos).getBoundingClientRect().top)/2);var _l=this.width/2*o;t={left:_i.left,right:_i.right,top:_n-_l,bottom:_n+_l};}}}if(!t){var _e2=this.editorView.coordsAtPos(this.cursorPos),_r2=this.width/2*n;t={left:_e2.left-_r2,right:_e2.left+_r2,top:_e2.top,bottom:_e2.bottom};}var l,u,a=this.editorView.dom.offsetParent;if(this.element||(this.element=a.appendChild(document.createElement("div")),this["class"]&&(this.element.className=this["class"]),this.element.style.cssText="position: absolute; z-index: 50; pointer-events: none;",this.color&&(this.element.style.backgroundColor=this.color)),this.element.classList.toggle("prosemirror-dropcursor-block",r),this.element.classList.toggle("prosemirror-dropcursor-inline",!r),!a||a==document.body&&"static"==getComputedStyle(a).position)l=-pageXOffset,u=-pageYOffset;else{var _t2=a.getBoundingClientRect(),_e3=_t2.width/a.offsetWidth,_r3=_t2.height/a.offsetHeight;l=_t2.left-a.scrollLeft*_e3,u=_t2.top-a.scrollTop*_r3;}this.element.style.left=(t.left-l)/n+"px",this.element.style.top=(t.top-u)/o+"px",this.element.style.width=(t.right-t.left)/n+"px",this.element.style.height=(t.bottom-t.top)/o+"px";}},{key:"scheduleRemoval",value:function scheduleRemoval(t){var _this3=this;clearTimeout(this.timeout),this.timeout=setTimeout(function(){return _this3.setCursor(null);},t);}},{key:"computeTarget",value:function computeTarget(t){var r=this.editorView.posAtCoords({left:t.clientX,top:t.clientY}),s=r&&r.inside>=0&&this.editorView.state.doc.nodeAt(r.inside),i=s&&s.type.spec.disableDropCursor,n="function"==typeof i?i(this.editorView,r,t):i;if(!r||n)return null;var o=r.pos;if(this.editorView.dragging&&this.editorView.dragging.slice){var _t3=e(this.editorView.state.doc,o,this.editorView.dragging.slice);null!=_t3&&(o=_t3);}return o;}},{key:"dragover",value:function dragover(t){if(!this.editorView.editable)return;this.lastDragEvent=t;var e=this.computeTarget(t);null!=e&&(this.setCursor(e),this.scheduleRemoval(5e3));}},{key:"dragend",value:function dragend(){this.scheduleRemoval(20);}},{key:"drop",value:function drop(){this.scheduleRemoval(20);}},{key:"dragleave",value:function dragleave(t){this.editorView.dom.contains(t.relatedTarget)||this.setCursor(null);}}]);}();F=/*#__PURE__*/function(_r4){function F(t){_classCallCheck(this,F);return _callSuper(this,F,[t,t]);}_inherits(F,_r4);return _createClass(F,[{key:"map",value:function map(t,e){var s=t.resolve(e.map(this.head));return F.valid(s)?new F(s):r.near(s);}},{key:"content",value:function content(){return o.empty;}},{key:"eq",value:function eq(t){return t instanceof F&&t.head==this.head;}},{key:"toJSON",value:function toJSON(){return{type:"gapcursor",pos:this.head};}},{key:"getBookmark",value:function getBookmark(){return new L(this.anchor);}}],[{key:"fromJSON",value:function fromJSON(t,e){if("number"!=typeof e.pos)throw new RangeError("Invalid input for GapCursor.fromJSON");return new F(t.resolve(e.pos));}},{key:"valid",value:function valid(t){var e=t.parent;if(e.inlineContent||!function(t){for(var _e4=t.depth;_e4>=0;_e4--){var _r5=t.index(_e4),_s2=t.node(_e4);if(0!=_r5)for(var _t4=_s2.child(_r5-1);;_t4=_t4.lastChild){if(0==_t4.childCount&&!_t4.inlineContent||A(_t4.type))return!0;if(_t4.inlineContent)return!1;}else if(_s2.type.spec.isolating)return!0;}return!0;}(t)||!function(t){for(var _e5=t.depth;_e5>=0;_e5--){var _r6=t.indexAfter(_e5),_s3=t.node(_e5);if(_r6!=_s3.childCount)for(var _t5=_s3.child(_r6);;_t5=_t5.firstChild){if(0==_t5.childCount&&!_t5.inlineContent||A(_t5.type))return!0;if(_t5.inlineContent)return!1;}else if(_s3.type.spec.isolating)return!0;}return!0;}(t))return!1;var r=e.type.spec.allowGapCursor;if(null!=r)return r;var s=e.contentMatchAt(t.index()).defaultType;return s&&s.isTextblock;}},{key:"findGapCursorFrom",value:function findGapCursorFrom(t,e){var r=arguments.length>2&&arguments[2]!==undefined?arguments[2]:!1;t:for(;;){if(!r&&F.valid(t))return t;var _s4=t.pos,_n2=null;for(var _r7=t.depth;;_r7--){var _i2=t.node(_r7);if(e>0?t.indexAfter(_r7)<_i2.childCount:t.index(_r7)>0){_n2=_i2.child(e>0?t.indexAfter(_r7):t.index(_r7)-1);break;}if(0==_r7)return null;_s4+=e;var _o=t.doc.resolve(_s4);if(F.valid(_o))return _o;}for(;;){var _o2=e>0?_n2.firstChild:_n2.lastChild;if(!_o2){if(_n2.isAtom&&!_n2.isText&&!i.isSelectable(_n2)){t=t.doc.resolve(_s4+_n2.nodeSize*e),r=!1;continue t;}break;}_n2=_o2,_s4+=e;var _l2=t.doc.resolve(_s4);if(F.valid(_l2))return _l2;}return null;}}}]);}(r);F.prototype.visible=!1,F.findFrom=F.findGapCursorFrom,r.jsonID("gapcursor",F);L=/*#__PURE__*/function(){function L(t){_classCallCheck(this,L);this.pos=t;}return _createClass(L,[{key:"map",value:function map(t){return new L(t.map(this.pos));}},{key:"resolve",value:function resolve(t){var e=t.resolve(this.pos);return F.valid(e)?new F(e):r.near(e);}}]);}();D=h({ArrowLeft:E("horiz",-1),ArrowRight:E("horiz",1),ArrowUp:E("vert",-1),ArrowDown:E("vert",1)});N=new l("nileMentionSuggest"),R=new l("nileSlashSuggest"),B=new l("nileEmojiSuggest");}};});
|
|
1
|
+
System.register(["../../index-89c520e9.cjs.js","./commands.cjs.js","../../index-d7e6f1c6.cjs.js","../../index-cc1385e0.cjs.js","./keymap.cjs.js","./inputrules.cjs.js","./plugins/placeholder.cjs.js","./plugins/link.cjs.js","./plugins/single-line.cjs.js","./plugins/tables.cjs.js","./plugins/image.cjs.js","./plugins/suggestions.cjs.js","./plugins/find-replace.cjs.js","./plugins/max-length.cjs.js","./plugins/code-highlight.cjs.js","./plugins/embeds.cjs.js","./plugins/paste.cjs.js","./plugins/format-painter.cjs.js","./schema.cjs.js","../../index-178e1e57.cjs.js","../../index-f956f56d.cjs.js","./markdown-parse.cjs.js","./serializer.cjs.js","./sanitize.cjs.js","../../xml-90fd974e.cjs.js"],function(_export,_context){"use strict";var t,e,s,r,i,n,o,l,u,a,h,f,c,p,m,g,d,j,w,v,x,b,k,S,y,O,T,z,C,F,L,D,N,R,B;function _toConsumableArray(r){return _arrayWithoutHoles(r)||_iterableToArray(r)||_unsupportedIterableToArray(r)||_nonIterableSpread();}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0;}}function _iterableToArray(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r);}function _arrayWithoutHoles(r){if(Array.isArray(r))return _arrayLikeToArray(r);}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n;}function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable;})),t.push.apply(t,o);}return t;}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){_defineProperty(e,r,t[r]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r));});}return e;}function _defineProperty(e,r,t){return(r=_toPropertyKey(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e;}function _callSuper(t,o,e){return o=_getPrototypeOf(o),_possibleConstructorReturn(t,_isNativeReflectConstruct()?Reflect.construct(o,e||[],_getPrototypeOf(t).constructor):o.apply(t,e));}function _possibleConstructorReturn(t,e){if(e&&("object"==_typeof(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(t);}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e;}function _isNativeReflectConstruct(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));}catch(t){}return(_isNativeReflectConstruct=function _isNativeReflectConstruct(){return!!t;})();}function _getPrototypeOf(t){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t);},_getPrototypeOf(t);}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&_setPrototypeOf(t,e);}function _setPrototypeOf(t,e){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t;},_setPrototypeOf(t,e);}function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}function _classCallCheck(a,n){if(!(a instanceof n))throw new TypeError("Cannot call a class as a function");}function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,_toPropertyKey(o.key),o);}}function _createClass(e,r,t){return r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e;}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==_typeof(i)?i:i+"";}function _toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return("string"===r?String:Number)(t);}function A(t){return t.isAtom||t.spec.isolating||t.spec.createGapCursor;}function E(t,e){var s="vert"==t?e>0?"down":"up":e>0?"right":"left";return function(t,i,n){var o=t.selection,l=e>0?o.$to:o.$from,u=o.empty;if(o instanceof r){if(!n.endOfTextblock(s)||0==l.depth)return!1;u=!1,l=t.doc.resolve(e>0?l.after():l.before());}var a=F.findGapCursorFrom(l,e,u);return!!a&&(i&&i(t.tr.setSelection(new F(a))),!0);};}function M(t,e,s){if(!t||!t.editable)return!1;var r=t.state.doc.resolve(e);if(!F.valid(r))return!1;var n=t.posAtCoords({left:s.clientX,top:s.clientY});return!(n&&n.inside>-1&&i.isSelectable(t.state.doc.nodeAt(n.inside)))&&(t.dispatch(t.state.tr.setSelection(new F(r))),!0);}function P(t,e){if("insertCompositionText"!=e.inputType||!(t.state.selection instanceof F))return!1;var s=t.state.selection.$from,i=s.parent.contentMatchAt(s.index()).findWrapping(t.state.schema.nodes.text);if(!i)return!1;var l=n.empty;for(var _t6=i.length-1;_t6>=0;_t6--)l=n.from(i[_t6].createAndFill(null,l));var u=t.state.tr.replace(s.pos,s.pos,new o(l,0,0));return u.setSelection(r.near(u.doc.resolve(s.pos+1))),t.dispatch(u),!1;}function J(t){if(!(t.selection instanceof F))return null;var e=document.createElement("div");return e.className="ProseMirror-gapcursor",f.create(t.doc,[c.widget(t.selection.head,e,{key:"gapcursor"})]);}function G(){var _e$schema,_e$getPlaceholder;var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var s=(_e$schema=e.schema)!==null&&_e$schema!==void 0?_e$schema:z,r=[];return e.mentions&&r.push(x(N,e.mentions)),e.slashCommands&&r.push(x(R,_objectSpread(_objectSpread({},e.slashCommands),{},{getTriggers:function getTriggers(){return["/"];},startOfLine:!0}))),e.emoji&&r.push(x(B,_objectSpread(_objectSpread({},e.emoji),{},{getTriggers:function getTriggers(){return[":"];},minQueryLength:2}))),r.push.apply(r,[m(s,{textTransform:e.textTransform})].concat(_toConsumableArray(p(s,{onLinkShortcut:e.onLinkShortcut,onFindShortcut:e.onFindShortcut,onShortcutHelp:e.onShortcutHelp})),[a(),function(){var e=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};return new t({view:function view(t){return new C(t,e);}});}(),new t({props:{decorations:J,createSelectionBetween:function createSelectionBetween(t,e,s){return e.pos==s.pos&&F.valid(s)?new F(s):null;},handleClick:M,handleKeyDown:D,handleDOMEvents:{beforeinput:P}}}),g((_e$getPlaceholder=e.getPlaceholder)!==null&&_e$getPlaceholder!==void 0?_e$getPlaceholder:function(){return"";}),d({onOpenLink:e.onOpenLink})],_toConsumableArray(w()),[v({onImageFiles:e.onImageFiles}),b(),S(),y(),T(),O(s,{getForcePlainText:e.getForcePlainText,getMarkdownPaste:e.getMarkdownPaste,getSanitize:e.getSanitize})])),e.getMaxLength&&r.push(k(e.getMaxLength)),e.singleLine&&r.push(j()),e.plugins&&r.push.apply(r,_toConsumableArray(e.plugins)),u.create({schema:s,doc:e.doc,plugins:r});}_export("c",G);return{setters:[function(_index00aCjsJs){t=_index00aCjsJs.b;e=_index00aCjsJs.e;s=_index00aCjsJs.S;r=_index00aCjsJs.T;i=_index00aCjsJs.c;n=_index00aCjsJs.F;o=_index00aCjsJs.d;l=_index00aCjsJs.P;u=_index00aCjsJs.E;},function(_commandsCjsJs){a=_commandsCjsJs.h;},function(_index001CjsJs){h=_index001CjsJs.b;},function(_index009CjsJs){f=_index009CjsJs.D;c=_index009CjsJs.a;},function(_keymapCjsJs){p=_keymapCjsJs.b;},function(_inputrulesCjsJs){m=_inputrulesCjsJs.b;},function(_pluginsPlaceholderCjsJs){g=_pluginsPlaceholderCjsJs.p;},function(_pluginsLinkCjsJs){d=_pluginsLinkCjsJs.l;},function(_pluginsSingleLineCjsJs){j=_pluginsSingleLineCjsJs.s;},function(_pluginsTablesCjsJs){w=_pluginsTablesCjsJs.t;},function(_pluginsImageCjsJs){v=_pluginsImageCjsJs.i;},function(_pluginsSuggestionsCjsJs){x=_pluginsSuggestionsCjsJs.s;},function(_pluginsFindReplaceCjsJs){b=_pluginsFindReplaceCjsJs.f;},function(_pluginsMaxLengthCjsJs){k=_pluginsMaxLengthCjsJs.m;},function(_pluginsCodeHighlightCjsJs){S=_pluginsCodeHighlightCjsJs.c;},function(_pluginsEmbedsCjsJs){y=_pluginsEmbedsCjsJs.e;},function(_pluginsPasteCjsJs){O=_pluginsPasteCjsJs.a;},function(_pluginsFormatPainterCjsJs){T=_pluginsFormatPainterCjsJs.f;},function(_schemaCjsJs){z=_schemaCjsJs.d;},function(_index007CjsJs){},function(_index00cCjsJs){},function(_markdownParseCjsJs){},function(_serializerCjsJs){},function(_sanitizeCjsJs){},function(_xml00bCjsJs){}],execute:function execute(){C=/*#__PURE__*/function(){function C(t,e){var _this=this;_classCallCheck(this,C);var s;this.editorView=t,this.cursorPos=null,this.element=null,this.timeout=-1,this.lastDragEvent=null,this.width=null!==(s=e.width)&&void 0!==s?s:1,this.color=!1===e.color?void 0:e.color||"black",this["class"]=e["class"],this.handlers=["dragover","dragend","drop","dragleave"].map(function(e){var s=function s(t){_this[e](t);};return t.dom.addEventListener(e,s),{name:e,handler:s};});}return _createClass(C,[{key:"destroy",value:function destroy(){var _this2=this;this.handlers.forEach(function(_ref){var t=_ref.name,e=_ref.handler;return _this2.editorView.dom.removeEventListener(t,e);});}},{key:"update",value:function update(t,e){if(null!=this.cursorPos&&e.doc!=t.state.doc)if(this.lastDragEvent){var _t=this.computeTarget(this.lastDragEvent);_t==this.cursorPos?this.updateOverlay():this.setCursor(_t);}else this.updateOverlay();}},{key:"setCursor",value:function setCursor(t){t!=this.cursorPos&&(this.cursorPos=t,null==t?(this.element.parentNode.removeChild(this.element),this.element=null):this.updateOverlay());}},{key:"updateOverlay",value:function updateOverlay(){var t,e=this.editorView.state.doc.resolve(this.cursorPos),s=!e.parent.inlineContent,r=this.editorView.dom,i=r.getBoundingClientRect(),n=i.width/r.offsetWidth,o=i.height/r.offsetHeight;if(s){var _s=e.nodeBefore,_r=e.nodeAfter;if(_s||_r){var _e=this.editorView.nodeDOM(this.cursorPos-(_s?_s.nodeSize:0));if(_e){var _i=_e.getBoundingClientRect(),_n=_s?_i.bottom:_i.top;_s&&_r&&(_n=(_n+this.editorView.nodeDOM(this.cursorPos).getBoundingClientRect().top)/2);var _l=this.width/2*o;t={left:_i.left,right:_i.right,top:_n-_l,bottom:_n+_l};}}}if(!t){var _e2=this.editorView.coordsAtPos(this.cursorPos),_s2=this.width/2*n;t={left:_e2.left-_s2,right:_e2.left+_s2,top:_e2.top,bottom:_e2.bottom};}var l,u,a=this.editorView.dom.offsetParent;if(this.element||(this.element=a.appendChild(document.createElement("div")),this["class"]&&(this.element.className=this["class"]),this.element.style.cssText="position: absolute; z-index: 50; pointer-events: none;",this.color&&(this.element.style.backgroundColor=this.color)),this.element.classList.toggle("prosemirror-dropcursor-block",s),this.element.classList.toggle("prosemirror-dropcursor-inline",!s),!a||a==document.body&&"static"==getComputedStyle(a).position)l=-pageXOffset,u=-pageYOffset;else{var _t2=a.getBoundingClientRect(),_e3=_t2.width/a.offsetWidth,_s3=_t2.height/a.offsetHeight;l=_t2.left-a.scrollLeft*_e3,u=_t2.top-a.scrollTop*_s3;}this.element.style.left=(t.left-l)/n+"px",this.element.style.top=(t.top-u)/o+"px",this.element.style.width=(t.right-t.left)/n+"px",this.element.style.height=(t.bottom-t.top)/o+"px";}},{key:"scheduleRemoval",value:function scheduleRemoval(t){var _this3=this;clearTimeout(this.timeout),this.timeout=setTimeout(function(){return _this3.setCursor(null);},t);}},{key:"computeTarget",value:function computeTarget(t){var s=this.editorView.posAtCoords({left:t.clientX,top:t.clientY}),r=s&&s.inside>=0&&this.editorView.state.doc.nodeAt(s.inside),i=r&&r.type.spec.disableDropCursor,n="function"==typeof i?i(this.editorView,s,t):i;if(!s||n)return null;var o=s.pos;if(this.editorView.dragging&&this.editorView.dragging.slice){var _t3=e(this.editorView.state.doc,o,this.editorView.dragging.slice);null!=_t3&&(o=_t3);}return o;}},{key:"dragover",value:function dragover(t){if(!this.editorView.editable)return;this.lastDragEvent=t;var e=this.computeTarget(t);null!=e&&(this.setCursor(e),this.scheduleRemoval(5e3));}},{key:"dragend",value:function dragend(){this.scheduleRemoval(20);}},{key:"drop",value:function drop(){this.scheduleRemoval(20);}},{key:"dragleave",value:function dragleave(t){this.editorView.dom.contains(t.relatedTarget)||this.setCursor(null);}}]);}();F=/*#__PURE__*/function(_s4){function F(t){_classCallCheck(this,F);return _callSuper(this,F,[t,t]);}_inherits(F,_s4);return _createClass(F,[{key:"map",value:function map(t,e){var r=t.resolve(e.map(this.head));return F.valid(r)?new F(r):s.near(r);}},{key:"content",value:function content(){return o.empty;}},{key:"eq",value:function eq(t){return t instanceof F&&t.head==this.head;}},{key:"toJSON",value:function toJSON(){return{type:"gapcursor",pos:this.head};}},{key:"getBookmark",value:function getBookmark(){return new L(this.anchor);}}],[{key:"fromJSON",value:function fromJSON(t,e){if("number"!=typeof e.pos)throw new RangeError("Invalid input for GapCursor.fromJSON");return new F(t.resolve(e.pos));}},{key:"valid",value:function valid(t){var e=t.parent;if(e.inlineContent||!function(t){for(var _e4=t.depth;_e4>=0;_e4--){var _s5=t.index(_e4),_r2=t.node(_e4);if(0!=_s5)for(var _t4=_r2.child(_s5-1);;_t4=_t4.lastChild){if(0==_t4.childCount&&!_t4.inlineContent||A(_t4.type))return!0;if(_t4.inlineContent)return!1;}else if(_r2.type.spec.isolating)return!0;}return!0;}(t)||!function(t){for(var _e5=t.depth;_e5>=0;_e5--){var _s6=t.indexAfter(_e5),_r3=t.node(_e5);if(_s6!=_r3.childCount)for(var _t5=_r3.child(_s6);;_t5=_t5.firstChild){if(0==_t5.childCount&&!_t5.inlineContent||A(_t5.type))return!0;if(_t5.inlineContent)return!1;}else if(_r3.type.spec.isolating)return!0;}return!0;}(t))return!1;var s=e.type.spec.allowGapCursor;if(null!=s)return s;var r=e.contentMatchAt(t.index()).defaultType;return r&&r.isTextblock;}},{key:"findGapCursorFrom",value:function findGapCursorFrom(t,e){var s=arguments.length>2&&arguments[2]!==undefined?arguments[2]:!1;t:for(;;){if(!s&&F.valid(t))return t;var _r4=t.pos,_n2=null;for(var _s7=t.depth;;_s7--){var _i2=t.node(_s7);if(e>0?t.indexAfter(_s7)<_i2.childCount:t.index(_s7)>0){_n2=_i2.child(e>0?t.indexAfter(_s7):t.index(_s7)-1);break;}if(0==_s7)return null;_r4+=e;var _o=t.doc.resolve(_r4);if(F.valid(_o))return _o;}for(;;){var _o2=e>0?_n2.firstChild:_n2.lastChild;if(!_o2){if(_n2.isAtom&&!_n2.isText&&!i.isSelectable(_n2)){t=t.doc.resolve(_r4+_n2.nodeSize*e),s=!1;continue t;}break;}_n2=_o2,_r4+=e;var _l2=t.doc.resolve(_r4);if(F.valid(_l2))return _l2;}return null;}}}]);}(s);F.prototype.visible=!1,F.findFrom=F.findGapCursorFrom,s.jsonID("gapcursor",F);L=/*#__PURE__*/function(){function L(t){_classCallCheck(this,L);this.pos=t;}return _createClass(L,[{key:"map",value:function map(t){return new L(t.map(this.pos));}},{key:"resolve",value:function resolve(t){var e=t.resolve(this.pos);return F.valid(e)?new F(e):s.near(e);}}]);}();D=h({ArrowLeft:E("horiz",-1),ArrowRight:E("horiz",1),ArrowUp:E("vert",-1),ArrowDown:E("vert",1)});N=new l("nileMentionSuggest"),R=new l("nileSlashSuggest"),B=new l("nileEmojiSuggest");}};});
|
|
2
2
|
//# sourceMappingURL=create-state.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-state.cjs.js","sources":["../../../../../node_modules/prosemirror-gapcursor/dist/index.js","../../../../src/nile-wysiwyg-editor/engine/create-state.ts","../../../../../node_modules/prosemirror-dropcursor/dist/index.js"],"sourcesContent":["import { keydownHandler } from 'prosemirror-keymap';\nimport { Selection, NodeSelection, TextSelection, Plugin } from 'prosemirror-state';\nimport { Slice, Fragment } from 'prosemirror-model';\nimport { DecorationSet, Decoration } from 'prosemirror-view';\n\n/**\nGap cursor selections are represented using this class. Its\n`$anchor` and `$head` properties both point at the cursor position.\n*/\nclass GapCursor extends Selection {\n /**\n Create a gap cursor.\n */\n constructor($pos) {\n super($pos, $pos);\n }\n map(doc, mapping) {\n let $pos = doc.resolve(mapping.map(this.head));\n return GapCursor.valid($pos) ? new GapCursor($pos) : Selection.near($pos);\n }\n content() { return Slice.empty; }\n eq(other) {\n return other instanceof GapCursor && other.head == this.head;\n }\n toJSON() {\n return { type: \"gapcursor\", pos: this.head };\n }\n /**\n @internal\n */\n static fromJSON(doc, json) {\n if (typeof json.pos != \"number\")\n throw new RangeError(\"Invalid input for GapCursor.fromJSON\");\n return new GapCursor(doc.resolve(json.pos));\n }\n /**\n @internal\n */\n getBookmark() { return new GapBookmark(this.anchor); }\n /**\n @internal\n */\n static valid($pos) {\n let parent = $pos.parent;\n if (parent.inlineContent || !closedBefore($pos) || !closedAfter($pos))\n return false;\n let override = parent.type.spec.allowGapCursor;\n if (override != null)\n return override;\n let deflt = parent.contentMatchAt($pos.index()).defaultType;\n return deflt && deflt.isTextblock;\n }\n /**\n @internal\n */\n static findGapCursorFrom($pos, dir, mustMove = false) {\n search: for (;;) {\n if (!mustMove && GapCursor.valid($pos))\n return $pos;\n let pos = $pos.pos, next = null;\n // Scan up from this position\n for (let d = $pos.depth;; d--) {\n let parent = $pos.node(d);\n if (dir > 0 ? $pos.indexAfter(d) < parent.childCount : $pos.index(d) > 0) {\n next = parent.child(dir > 0 ? $pos.indexAfter(d) : $pos.index(d) - 1);\n break;\n }\n else if (d == 0) {\n return null;\n }\n pos += dir;\n let $cur = $pos.doc.resolve(pos);\n if (GapCursor.valid($cur))\n return $cur;\n }\n // And then down into the next node\n for (;;) {\n let inside = dir > 0 ? next.firstChild : next.lastChild;\n if (!inside) {\n if (next.isAtom && !next.isText && !NodeSelection.isSelectable(next)) {\n $pos = $pos.doc.resolve(pos + next.nodeSize * dir);\n mustMove = false;\n continue search;\n }\n break;\n }\n next = inside;\n pos += dir;\n let $cur = $pos.doc.resolve(pos);\n if (GapCursor.valid($cur))\n return $cur;\n }\n return null;\n }\n }\n}\nGapCursor.prototype.visible = false;\nGapCursor.findFrom = GapCursor.findGapCursorFrom;\nSelection.jsonID(\"gapcursor\", GapCursor);\nclass GapBookmark {\n constructor(pos) {\n this.pos = pos;\n }\n map(mapping) {\n return new GapBookmark(mapping.map(this.pos));\n }\n resolve(doc) {\n let $pos = doc.resolve(this.pos);\n return GapCursor.valid($pos) ? new GapCursor($pos) : Selection.near($pos);\n }\n}\nfunction needsGap(type) {\n return type.isAtom || type.spec.isolating || type.spec.createGapCursor;\n}\nfunction closedBefore($pos) {\n for (let d = $pos.depth; d >= 0; d--) {\n let index = $pos.index(d), parent = $pos.node(d);\n // At the start of this parent, look at next one\n if (index == 0) {\n if (parent.type.spec.isolating)\n return true;\n continue;\n }\n // See if the node before (or its first ancestor) is closed\n for (let before = parent.child(index - 1);; before = before.lastChild) {\n if ((before.childCount == 0 && !before.inlineContent) || needsGap(before.type))\n return true;\n if (before.inlineContent)\n return false;\n }\n }\n // Hit start of document\n return true;\n}\nfunction closedAfter($pos) {\n for (let d = $pos.depth; d >= 0; d--) {\n let index = $pos.indexAfter(d), parent = $pos.node(d);\n if (index == parent.childCount) {\n if (parent.type.spec.isolating)\n return true;\n continue;\n }\n for (let after = parent.child(index);; after = after.firstChild) {\n if ((after.childCount == 0 && !after.inlineContent) || needsGap(after.type))\n return true;\n if (after.inlineContent)\n return false;\n }\n }\n return true;\n}\n\n/**\nCreate a gap cursor plugin. When enabled, this will capture clicks\nnear and arrow-key-motion past places that don't have a normally\nselectable position nearby, and create a gap cursor selection for\nthem. The cursor is drawn as an element with class\n`ProseMirror-gapcursor`. You can either include\n`style/gapcursor.css` from the package's directory or add your own\nstyles to make it visible.\n*/\nfunction gapCursor() {\n return new Plugin({\n props: {\n decorations: drawGapCursor,\n createSelectionBetween(_view, $anchor, $head) {\n return $anchor.pos == $head.pos && GapCursor.valid($head) ? new GapCursor($head) : null;\n },\n handleClick,\n handleKeyDown,\n handleDOMEvents: { beforeinput: beforeinput }\n }\n });\n}\nconst handleKeyDown = keydownHandler({\n \"ArrowLeft\": arrow(\"horiz\", -1),\n \"ArrowRight\": arrow(\"horiz\", 1),\n \"ArrowUp\": arrow(\"vert\", -1),\n \"ArrowDown\": arrow(\"vert\", 1)\n});\nfunction arrow(axis, dir) {\n const dirStr = axis == \"vert\" ? (dir > 0 ? \"down\" : \"up\") : (dir > 0 ? \"right\" : \"left\");\n return function (state, dispatch, view) {\n let sel = state.selection;\n let $start = dir > 0 ? sel.$to : sel.$from, mustMove = sel.empty;\n if (sel instanceof TextSelection) {\n if (!view.endOfTextblock(dirStr) || $start.depth == 0)\n return false;\n mustMove = false;\n $start = state.doc.resolve(dir > 0 ? $start.after() : $start.before());\n }\n let $found = GapCursor.findGapCursorFrom($start, dir, mustMove);\n if (!$found)\n return false;\n if (dispatch)\n dispatch(state.tr.setSelection(new GapCursor($found)));\n return true;\n };\n}\nfunction handleClick(view, pos, event) {\n if (!view || !view.editable)\n return false;\n let $pos = view.state.doc.resolve(pos);\n if (!GapCursor.valid($pos))\n return false;\n let clickPos = view.posAtCoords({ left: event.clientX, top: event.clientY });\n if (clickPos && clickPos.inside > -1 && NodeSelection.isSelectable(view.state.doc.nodeAt(clickPos.inside)))\n return false;\n view.dispatch(view.state.tr.setSelection(new GapCursor($pos)));\n return true;\n}\n// This is a hack that, when a composition starts while a gap cursor\n// is active, quickly creates an inline context for the composition to\n// happen in, to avoid it being aborted by the DOM selection being\n// moved into a valid position.\nfunction beforeinput(view, event) {\n if (event.inputType != \"insertCompositionText\" || !(view.state.selection instanceof GapCursor))\n return false;\n let { $from } = view.state.selection;\n let insert = $from.parent.contentMatchAt($from.index()).findWrapping(view.state.schema.nodes.text);\n if (!insert)\n return false;\n let frag = Fragment.empty;\n for (let i = insert.length - 1; i >= 0; i--)\n frag = Fragment.from(insert[i].createAndFill(null, frag));\n let tr = view.state.tr.replace($from.pos, $from.pos, new Slice(frag, 0, 0));\n tr.setSelection(TextSelection.near(tr.doc.resolve($from.pos + 1)));\n view.dispatch(tr);\n return false;\n}\nfunction drawGapCursor(state) {\n if (!(state.selection instanceof GapCursor))\n return null;\n let node = document.createElement(\"div\");\n node.className = \"ProseMirror-gapcursor\";\n return DecorationSet.create(state.doc, [Decoration.widget(state.selection.head, node, { key: \"gapcursor\" })]);\n}\n\nexport { GapCursor, gapCursor };\n","import { EditorState, Plugin, PluginKey } from 'prosemirror-state';\nimport { Node as PMNode, Schema } from 'prosemirror-model';\nimport { history } from 'prosemirror-history';\nimport { dropCursor } from 'prosemirror-dropcursor';\nimport { gapCursor } from 'prosemirror-gapcursor';\nimport { buildKeymapPlugins, KeymapOptions } from './keymap';\nimport { buildInputRules } from './inputrules';\nimport { placeholderPlugin } from './plugins/placeholder';\nimport { linkPlugin, LinkPluginOptions } from './plugins/link';\nimport { singleLinePlugin } from './plugins/single-line';\nimport { tablePlugins } from './plugins/tables';\nimport { imagePlugin, ImagePluginOptions } from './plugins/image';\nimport { suggestionPlugin, SuggestionOptions } from './plugins/suggestions';\nimport { findReplacePlugin } from './plugins/find-replace';\nimport { maxLengthPlugin } from './plugins/max-length';\nimport { codeHighlightPlugin } from './plugins/code-highlight';\nimport { embedPastePlugin } from './plugins/embeds';\nimport { pastePlugin } from './plugins/paste';\nimport { formatPainterPlugin } from './plugins/format-painter';\nimport { defaultSchema } from './schema';\n\nexport const mentionSuggestKey = new PluginKey('nileMentionSuggest');\nexport const slashSuggestKey = new PluginKey('nileSlashSuggest');\nexport const emojiSuggestKey = new PluginKey('nileEmojiSuggest');\n\nexport interface CreateStateOptions\n extends KeymapOptions,\n LinkPluginOptions,\n ImagePluginOptions {\n schema?: Schema;\n doc?: PMNode;\n /** Read live so the placeholder updates without rebuilding state. */\n getPlaceholder?: () => string;\n singleLine?: boolean;\n /** Mention suggestions (omit onChange to disable the plugin). */\n mentions?: Omit<SuggestionOptions, 'startOfLine'>;\n /** Slash-command suggestions, anchored to the start of a block. */\n slashCommands?: Omit<SuggestionOptions, 'startOfLine' | 'getTriggers'>;\n /** \":\" emoji suggestions (activates after two query characters). */\n emoji?: Omit<SuggestionOptions, 'startOfLine' | 'getTriggers' | 'minQueryLength'>;\n /** Character limit, read live. Return 0/undefined for unlimited. */\n getMaxLength?: () => number;\n /** Read live: when true, all pastes drop formatting. */\n getForcePlainText?: () => boolean;\n /** Read live: when false, plain-text pastes are never parsed as Markdown. */\n getMarkdownPaste?: () => boolean;\n /** Read live: whether pasted/parsed HTML is sanitized. Defaults to on. */\n getSanitize?: () => boolean;\n /** Typography autocorrect (smart quotes, dashes, (c)…). Defaults to on. */\n textTransform?: boolean;\n /** Extra plugins appended after the built-in set (later phases, tests). */\n plugins?: Plugin[];\n}\n\nexport function createEditorState(options: CreateStateOptions = {}): EditorState {\n const schema = options.schema ?? defaultSchema;\n const plugins: Plugin[] = [];\n\n // Suggestion plugins must come BEFORE the keymaps: handleKeyDown props run\n // in plugin order, and the popup needs first claim on Enter/Tab/arrows\n // while a mention or slash query is active.\n if (options.mentions) {\n plugins.push(suggestionPlugin(mentionSuggestKey, options.mentions));\n }\n if (options.slashCommands) {\n plugins.push(\n suggestionPlugin(slashSuggestKey, {\n ...options.slashCommands,\n getTriggers: () => ['/'],\n startOfLine: true,\n })\n );\n }\n if (options.emoji) {\n plugins.push(\n suggestionPlugin(emojiSuggestKey, {\n ...options.emoji,\n getTriggers: () => [':'],\n minQueryLength: 2,\n })\n );\n }\n\n plugins.push(\n buildInputRules(schema, { textTransform: options.textTransform }),\n ...buildKeymapPlugins(schema, {\n onLinkShortcut: options.onLinkShortcut,\n onFindShortcut: options.onFindShortcut,\n onShortcutHelp: options.onShortcutHelp,\n }),\n history(),\n dropCursor(),\n gapCursor(),\n placeholderPlugin(options.getPlaceholder ?? (() => '')),\n linkPlugin({ onOpenLink: options.onOpenLink }),\n ...tablePlugins(),\n imagePlugin({ onImageFiles: options.onImageFiles }),\n findReplacePlugin(),\n codeHighlightPlugin(),\n embedPastePlugin(),\n formatPainterPlugin(),\n pastePlugin(schema, {\n getForcePlainText: options.getForcePlainText,\n getMarkdownPaste: options.getMarkdownPaste,\n getSanitize: options.getSanitize,\n })\n );\n if (options.getMaxLength) plugins.push(maxLengthPlugin(options.getMaxLength));\n if (options.singleLine) plugins.push(singleLinePlugin());\n if (options.plugins) plugins.push(...options.plugins);\n\n return EditorState.create({\n schema,\n doc: options.doc,\n plugins,\n });\n}\n","import { Plugin } from 'prosemirror-state';\nimport { dropPoint } from 'prosemirror-transform';\n\n/**\nCreate a plugin that, when added to a ProseMirror instance,\ncauses a decoration to show up at the drop position when something\nis dragged over the editor.\n\nNodes may add a `disableDropCursor` property to their spec to\ncontrol the showing of a drop cursor inside them. This may be a\nboolean or a function, which will be called with a view and a\nposition, and should return a boolean.\n*/\nfunction dropCursor(options = {}) {\n return new Plugin({\n view(editorView) { return new DropCursorView(editorView, options); }\n });\n}\nclass DropCursorView {\n constructor(editorView, options) {\n var _a;\n this.editorView = editorView;\n this.cursorPos = null;\n this.element = null;\n this.timeout = -1;\n this.lastDragEvent = null;\n this.width = (_a = options.width) !== null && _a !== void 0 ? _a : 1;\n this.color = options.color === false ? undefined : (options.color || \"black\");\n this.class = options.class;\n this.handlers = [\"dragover\", \"dragend\", \"drop\", \"dragleave\"].map(name => {\n let handler = (e) => { this[name](e); };\n editorView.dom.addEventListener(name, handler);\n return { name, handler };\n });\n }\n destroy() {\n this.handlers.forEach(({ name, handler }) => this.editorView.dom.removeEventListener(name, handler));\n }\n update(editorView, prevState) {\n if (this.cursorPos != null && prevState.doc != editorView.state.doc) {\n // if we currently have an on-going drag event\n // we need to update the cursor position again and update the overlay\n if (this.lastDragEvent) {\n let target = this.computeTarget(this.lastDragEvent);\n if (target == this.cursorPos)\n this.updateOverlay();\n else\n this.setCursor(target);\n }\n else {\n this.updateOverlay();\n }\n }\n }\n setCursor(pos) {\n if (pos == this.cursorPos)\n return;\n this.cursorPos = pos;\n if (pos == null) {\n this.element.parentNode.removeChild(this.element);\n this.element = null;\n }\n else {\n this.updateOverlay();\n }\n }\n updateOverlay() {\n let $pos = this.editorView.state.doc.resolve(this.cursorPos);\n let isBlock = !$pos.parent.inlineContent, rect;\n let editorDOM = this.editorView.dom, editorRect = editorDOM.getBoundingClientRect();\n let scaleX = editorRect.width / editorDOM.offsetWidth, scaleY = editorRect.height / editorDOM.offsetHeight;\n if (isBlock) {\n let before = $pos.nodeBefore, after = $pos.nodeAfter;\n if (before || after) {\n let node = this.editorView.nodeDOM(this.cursorPos - (before ? before.nodeSize : 0));\n if (node) {\n let nodeRect = node.getBoundingClientRect();\n let top = before ? nodeRect.bottom : nodeRect.top;\n if (before && after)\n top = (top + this.editorView.nodeDOM(this.cursorPos).getBoundingClientRect().top) / 2;\n let halfWidth = (this.width / 2) * scaleY;\n rect = { left: nodeRect.left, right: nodeRect.right, top: top - halfWidth, bottom: top + halfWidth };\n }\n }\n }\n if (!rect) {\n let coords = this.editorView.coordsAtPos(this.cursorPos);\n let halfWidth = (this.width / 2) * scaleX;\n rect = { left: coords.left - halfWidth, right: coords.left + halfWidth, top: coords.top, bottom: coords.bottom };\n }\n let parent = this.editorView.dom.offsetParent;\n if (!this.element) {\n this.element = parent.appendChild(document.createElement(\"div\"));\n if (this.class)\n this.element.className = this.class;\n this.element.style.cssText = \"position: absolute; z-index: 50; pointer-events: none;\";\n if (this.color) {\n this.element.style.backgroundColor = this.color;\n }\n }\n this.element.classList.toggle(\"prosemirror-dropcursor-block\", isBlock);\n this.element.classList.toggle(\"prosemirror-dropcursor-inline\", !isBlock);\n let parentLeft, parentTop;\n if (!parent || parent == document.body && getComputedStyle(parent).position == \"static\") {\n parentLeft = -pageXOffset;\n parentTop = -pageYOffset;\n }\n else {\n let rect = parent.getBoundingClientRect();\n let parentScaleX = rect.width / parent.offsetWidth, parentScaleY = rect.height / parent.offsetHeight;\n parentLeft = rect.left - parent.scrollLeft * parentScaleX;\n parentTop = rect.top - parent.scrollTop * parentScaleY;\n }\n this.element.style.left = (rect.left - parentLeft) / scaleX + \"px\";\n this.element.style.top = (rect.top - parentTop) / scaleY + \"px\";\n this.element.style.width = (rect.right - rect.left) / scaleX + \"px\";\n this.element.style.height = (rect.bottom - rect.top) / scaleY + \"px\";\n }\n scheduleRemoval(timeout) {\n clearTimeout(this.timeout);\n this.timeout = setTimeout(() => this.setCursor(null), timeout);\n }\n computeTarget(event) {\n let pos = this.editorView.posAtCoords({ left: event.clientX, top: event.clientY });\n let node = pos && pos.inside >= 0 && this.editorView.state.doc.nodeAt(pos.inside);\n let disableDropCursor = node && node.type.spec.disableDropCursor;\n let disabled = typeof disableDropCursor == \"function\"\n ? disableDropCursor(this.editorView, pos, event)\n : disableDropCursor;\n if (!pos || disabled)\n return null;\n let target = pos.pos;\n if (this.editorView.dragging && this.editorView.dragging.slice) {\n let point = dropPoint(this.editorView.state.doc, target, this.editorView.dragging.slice);\n if (point != null)\n target = point;\n }\n return target;\n }\n dragover(event) {\n if (!this.editorView.editable)\n return;\n this.lastDragEvent = event;\n let target = this.computeTarget(event);\n if (target != null) {\n this.setCursor(target);\n this.scheduleRemoval(5000);\n }\n }\n dragend() {\n this.scheduleRemoval(20);\n }\n drop() {\n this.scheduleRemoval(20);\n }\n dragleave(event) {\n if (!this.editorView.dom.contains(event.relatedTarget))\n this.setCursor(null);\n }\n}\n\nexport { dropCursor };\n"],"names":["needsGap","type","isAtom","spec","isolating","createGapCursor","arrow","axis","dir","dirStr","state","dispatch","view","sel","selection","$start","$to","$from","mustMove","empty","TextSelection","endOfTextblock","depth","doc","resolve","after","before","$found","GapCursor","findGapCursorFrom","tr","setSelection","handleClick","pos","event","editable","$pos","valid","clickPos","posAtCoords","left","clientX","top","clientY","inside","NodeSelection","isSelectable","nodeAt","beforeinput","inputType","insert","parent","contentMatchAt","index","findWrapping","schema","nodes","text","frag","Fragment","i","length","from","createAndFill","replace","Slice","near","drawGapCursor","node","document","createElement","className","DecorationSet","create","Decoration","widget","head","key","createEditorState","options","defaultSchema","plugins","mentions","push","suggestionPlugin","mentionSuggestKey","slashCommands","slashSuggestKey","getTriggers","startOfLine","emoji","emojiSuggestKey","minQueryLength","buildInputRules","textTransform","buildKeymapPlugins","onLinkShortcut","onFindShortcut","onShortcutHelp","history","Plugin","editorView","DropCursorView","dropCursor","props","decorations","createSelectionBetween","_view","$anchor","$head","handleKeyDown","handleDOMEvents","placeholderPlugin","getPlaceholder","linkPlugin","onOpenLink","tablePlugins","imagePlugin","onImageFiles","findReplacePlugin","codeHighlightPlugin","embedPastePlugin","formatPainterPlugin","pastePlugin","getForcePlainText","getMarkdownPaste","getSanitize","getMaxLength","maxLengthPlugin","singleLine","singleLinePlugin","EditorState","C","_this","_classCallCheck","_a","this","cursorPos","element","timeout","lastDragEvent","width","color","undefined","class","handlers","map","name","handler","e","dom","addEventListener","_createClass","value","destroy","forEach","_ref","removeEventListener","update","prevState","target","computeTarget","updateOverlay","setCursor","parentNode","removeChild","rect","isBlock","inlineContent","editorDOM","editorRect","getBoundingClientRect","scaleX","offsetWidth","scaleY","height","offsetHeight","nodeBefore","nodeAfter","nodeDOM","nodeSize","nodeRect","bottom","halfWidth","right","coords","coordsAtPos","parentLeft","parentTop","offsetParent","appendChild","style","cssText","backgroundColor","classList","toggle","body","getComputedStyle","position","pageXOffset","pageYOffset","parentScaleX","parentScaleY","scrollLeft","scrollTop","scheduleRemoval","clearTimeout","setTimeout","disableDropCursor","disabled","dragging","slice","point","dropPoint","dragover","dragend","drop","dragleave","contains","relatedTarget","F","super","_inherits","_r4","mapping","Selection","content","eq","other","toJSON","getBookmark","GapBookmark","anchor","fromJSON","json","RangeError","d","child","lastChild","childCount","closedBefore","indexAfter","firstChild","closedAfter","override","allowGapCursor","deflt","defaultType","isTextblock","search","next","$cur","isText","prototype","visible","findFrom","jsonID","L","keydownHandler","ArrowLeft","ArrowRight","ArrowUp","ArrowDown","PluginKey"],"mappings":"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","x_google_ignoreList":[0,2]}
|
|
1
|
+
{"version":3,"file":"create-state.cjs.js","sources":["../../../../../node_modules/prosemirror-gapcursor/dist/index.js","../../../../src/nile-wysiwyg-editor/engine/create-state.ts","../../../../../node_modules/prosemirror-dropcursor/dist/index.js"],"sourcesContent":["import { keydownHandler } from 'prosemirror-keymap';\nimport { Selection, NodeSelection, TextSelection, Plugin } from 'prosemirror-state';\nimport { Slice, Fragment } from 'prosemirror-model';\nimport { DecorationSet, Decoration } from 'prosemirror-view';\n\n/**\nGap cursor selections are represented using this class. Its\n`$anchor` and `$head` properties both point at the cursor position.\n*/\nclass GapCursor extends Selection {\n /**\n Create a gap cursor.\n */\n constructor($pos) {\n super($pos, $pos);\n }\n map(doc, mapping) {\n let $pos = doc.resolve(mapping.map(this.head));\n return GapCursor.valid($pos) ? new GapCursor($pos) : Selection.near($pos);\n }\n content() { return Slice.empty; }\n eq(other) {\n return other instanceof GapCursor && other.head == this.head;\n }\n toJSON() {\n return { type: \"gapcursor\", pos: this.head };\n }\n /**\n @internal\n */\n static fromJSON(doc, json) {\n if (typeof json.pos != \"number\")\n throw new RangeError(\"Invalid input for GapCursor.fromJSON\");\n return new GapCursor(doc.resolve(json.pos));\n }\n /**\n @internal\n */\n getBookmark() { return new GapBookmark(this.anchor); }\n /**\n @internal\n */\n static valid($pos) {\n let parent = $pos.parent;\n if (parent.inlineContent || !closedBefore($pos) || !closedAfter($pos))\n return false;\n let override = parent.type.spec.allowGapCursor;\n if (override != null)\n return override;\n let deflt = parent.contentMatchAt($pos.index()).defaultType;\n return deflt && deflt.isTextblock;\n }\n /**\n @internal\n */\n static findGapCursorFrom($pos, dir, mustMove = false) {\n search: for (;;) {\n if (!mustMove && GapCursor.valid($pos))\n return $pos;\n let pos = $pos.pos, next = null;\n // Scan up from this position\n for (let d = $pos.depth;; d--) {\n let parent = $pos.node(d);\n if (dir > 0 ? $pos.indexAfter(d) < parent.childCount : $pos.index(d) > 0) {\n next = parent.child(dir > 0 ? $pos.indexAfter(d) : $pos.index(d) - 1);\n break;\n }\n else if (d == 0) {\n return null;\n }\n pos += dir;\n let $cur = $pos.doc.resolve(pos);\n if (GapCursor.valid($cur))\n return $cur;\n }\n // And then down into the next node\n for (;;) {\n let inside = dir > 0 ? next.firstChild : next.lastChild;\n if (!inside) {\n if (next.isAtom && !next.isText && !NodeSelection.isSelectable(next)) {\n $pos = $pos.doc.resolve(pos + next.nodeSize * dir);\n mustMove = false;\n continue search;\n }\n break;\n }\n next = inside;\n pos += dir;\n let $cur = $pos.doc.resolve(pos);\n if (GapCursor.valid($cur))\n return $cur;\n }\n return null;\n }\n }\n}\nGapCursor.prototype.visible = false;\nGapCursor.findFrom = GapCursor.findGapCursorFrom;\nSelection.jsonID(\"gapcursor\", GapCursor);\nclass GapBookmark {\n constructor(pos) {\n this.pos = pos;\n }\n map(mapping) {\n return new GapBookmark(mapping.map(this.pos));\n }\n resolve(doc) {\n let $pos = doc.resolve(this.pos);\n return GapCursor.valid($pos) ? new GapCursor($pos) : Selection.near($pos);\n }\n}\nfunction needsGap(type) {\n return type.isAtom || type.spec.isolating || type.spec.createGapCursor;\n}\nfunction closedBefore($pos) {\n for (let d = $pos.depth; d >= 0; d--) {\n let index = $pos.index(d), parent = $pos.node(d);\n // At the start of this parent, look at next one\n if (index == 0) {\n if (parent.type.spec.isolating)\n return true;\n continue;\n }\n // See if the node before (or its first ancestor) is closed\n for (let before = parent.child(index - 1);; before = before.lastChild) {\n if ((before.childCount == 0 && !before.inlineContent) || needsGap(before.type))\n return true;\n if (before.inlineContent)\n return false;\n }\n }\n // Hit start of document\n return true;\n}\nfunction closedAfter($pos) {\n for (let d = $pos.depth; d >= 0; d--) {\n let index = $pos.indexAfter(d), parent = $pos.node(d);\n if (index == parent.childCount) {\n if (parent.type.spec.isolating)\n return true;\n continue;\n }\n for (let after = parent.child(index);; after = after.firstChild) {\n if ((after.childCount == 0 && !after.inlineContent) || needsGap(after.type))\n return true;\n if (after.inlineContent)\n return false;\n }\n }\n return true;\n}\n\n/**\nCreate a gap cursor plugin. When enabled, this will capture clicks\nnear and arrow-key-motion past places that don't have a normally\nselectable position nearby, and create a gap cursor selection for\nthem. The cursor is drawn as an element with class\n`ProseMirror-gapcursor`. You can either include\n`style/gapcursor.css` from the package's directory or add your own\nstyles to make it visible.\n*/\nfunction gapCursor() {\n return new Plugin({\n props: {\n decorations: drawGapCursor,\n createSelectionBetween(_view, $anchor, $head) {\n return $anchor.pos == $head.pos && GapCursor.valid($head) ? new GapCursor($head) : null;\n },\n handleClick,\n handleKeyDown,\n handleDOMEvents: { beforeinput: beforeinput }\n }\n });\n}\nconst handleKeyDown = keydownHandler({\n \"ArrowLeft\": arrow(\"horiz\", -1),\n \"ArrowRight\": arrow(\"horiz\", 1),\n \"ArrowUp\": arrow(\"vert\", -1),\n \"ArrowDown\": arrow(\"vert\", 1)\n});\nfunction arrow(axis, dir) {\n const dirStr = axis == \"vert\" ? (dir > 0 ? \"down\" : \"up\") : (dir > 0 ? \"right\" : \"left\");\n return function (state, dispatch, view) {\n let sel = state.selection;\n let $start = dir > 0 ? sel.$to : sel.$from, mustMove = sel.empty;\n if (sel instanceof TextSelection) {\n if (!view.endOfTextblock(dirStr) || $start.depth == 0)\n return false;\n mustMove = false;\n $start = state.doc.resolve(dir > 0 ? $start.after() : $start.before());\n }\n let $found = GapCursor.findGapCursorFrom($start, dir, mustMove);\n if (!$found)\n return false;\n if (dispatch)\n dispatch(state.tr.setSelection(new GapCursor($found)));\n return true;\n };\n}\nfunction handleClick(view, pos, event) {\n if (!view || !view.editable)\n return false;\n let $pos = view.state.doc.resolve(pos);\n if (!GapCursor.valid($pos))\n return false;\n let clickPos = view.posAtCoords({ left: event.clientX, top: event.clientY });\n if (clickPos && clickPos.inside > -1 && NodeSelection.isSelectable(view.state.doc.nodeAt(clickPos.inside)))\n return false;\n view.dispatch(view.state.tr.setSelection(new GapCursor($pos)));\n return true;\n}\n// This is a hack that, when a composition starts while a gap cursor\n// is active, quickly creates an inline context for the composition to\n// happen in, to avoid it being aborted by the DOM selection being\n// moved into a valid position.\nfunction beforeinput(view, event) {\n if (event.inputType != \"insertCompositionText\" || !(view.state.selection instanceof GapCursor))\n return false;\n let { $from } = view.state.selection;\n let insert = $from.parent.contentMatchAt($from.index()).findWrapping(view.state.schema.nodes.text);\n if (!insert)\n return false;\n let frag = Fragment.empty;\n for (let i = insert.length - 1; i >= 0; i--)\n frag = Fragment.from(insert[i].createAndFill(null, frag));\n let tr = view.state.tr.replace($from.pos, $from.pos, new Slice(frag, 0, 0));\n tr.setSelection(TextSelection.near(tr.doc.resolve($from.pos + 1)));\n view.dispatch(tr);\n return false;\n}\nfunction drawGapCursor(state) {\n if (!(state.selection instanceof GapCursor))\n return null;\n let node = document.createElement(\"div\");\n node.className = \"ProseMirror-gapcursor\";\n return DecorationSet.create(state.doc, [Decoration.widget(state.selection.head, node, { key: \"gapcursor\" })]);\n}\n\nexport { GapCursor, gapCursor };\n","import { EditorState, Plugin, PluginKey } from 'prosemirror-state';\nimport { Node as PMNode, Schema } from 'prosemirror-model';\nimport { history } from 'prosemirror-history';\nimport { dropCursor } from 'prosemirror-dropcursor';\nimport { gapCursor } from 'prosemirror-gapcursor';\nimport { buildKeymapPlugins, KeymapOptions } from './keymap';\nimport { buildInputRules } from './inputrules';\nimport { placeholderPlugin } from './plugins/placeholder';\nimport { linkPlugin, LinkPluginOptions } from './plugins/link';\nimport { singleLinePlugin } from './plugins/single-line';\nimport { tablePlugins } from './plugins/tables';\nimport { imagePlugin, ImagePluginOptions } from './plugins/image';\nimport { suggestionPlugin, SuggestionOptions } from './plugins/suggestions';\nimport { findReplacePlugin } from './plugins/find-replace';\nimport { maxLengthPlugin } from './plugins/max-length';\nimport { codeHighlightPlugin } from './plugins/code-highlight';\nimport { embedPastePlugin } from './plugins/embeds';\nimport { pastePlugin } from './plugins/paste';\nimport { formatPainterPlugin } from './plugins/format-painter';\nimport { defaultSchema } from './schema';\n\nexport const mentionSuggestKey = new PluginKey('nileMentionSuggest');\nexport const slashSuggestKey = new PluginKey('nileSlashSuggest');\nexport const emojiSuggestKey = new PluginKey('nileEmojiSuggest');\n\nexport interface CreateStateOptions\n extends KeymapOptions,\n LinkPluginOptions,\n ImagePluginOptions {\n schema?: Schema;\n doc?: PMNode;\n /** Read live so the placeholder updates without rebuilding state. */\n getPlaceholder?: () => string;\n singleLine?: boolean;\n /** Mention suggestions (omit onChange to disable the plugin). */\n mentions?: Omit<SuggestionOptions, 'startOfLine'>;\n /** Slash-command suggestions, anchored to the start of a block. */\n slashCommands?: Omit<SuggestionOptions, 'startOfLine' | 'getTriggers'>;\n /** \":\" emoji suggestions (activates after two query characters). */\n emoji?: Omit<SuggestionOptions, 'startOfLine' | 'getTriggers' | 'minQueryLength'>;\n /** Character limit, read live. Return 0/undefined for unlimited. */\n getMaxLength?: () => number;\n /** Read live: when true, all pastes drop formatting. */\n getForcePlainText?: () => boolean;\n /** Read live: when false, plain-text pastes are never parsed as Markdown. */\n getMarkdownPaste?: () => boolean;\n /** Read live: whether pasted/parsed HTML is sanitized. Defaults to on. */\n getSanitize?: () => boolean;\n /** Typography autocorrect (smart quotes, dashes, (c)…). Defaults to on. */\n textTransform?: boolean;\n /** Extra plugins appended after the built-in set (later phases, tests). */\n plugins?: Plugin[];\n}\n\nexport function createEditorState(options: CreateStateOptions = {}): EditorState {\n const schema = options.schema ?? defaultSchema;\n const plugins: Plugin[] = [];\n\n // Suggestion plugins must come BEFORE the keymaps: handleKeyDown props run\n // in plugin order, and the popup needs first claim on Enter/Tab/arrows\n // while a mention or slash query is active.\n if (options.mentions) {\n plugins.push(suggestionPlugin(mentionSuggestKey, options.mentions));\n }\n if (options.slashCommands) {\n plugins.push(\n suggestionPlugin(slashSuggestKey, {\n ...options.slashCommands,\n getTriggers: () => ['/'],\n startOfLine: true,\n })\n );\n }\n if (options.emoji) {\n plugins.push(\n suggestionPlugin(emojiSuggestKey, {\n ...options.emoji,\n getTriggers: () => [':'],\n minQueryLength: 2,\n })\n );\n }\n\n plugins.push(\n buildInputRules(schema, { textTransform: options.textTransform }),\n ...buildKeymapPlugins(schema, {\n onLinkShortcut: options.onLinkShortcut,\n onFindShortcut: options.onFindShortcut,\n onShortcutHelp: options.onShortcutHelp,\n }),\n history(),\n dropCursor(),\n gapCursor(),\n placeholderPlugin(options.getPlaceholder ?? (() => '')),\n linkPlugin({ onOpenLink: options.onOpenLink }),\n ...tablePlugins(),\n imagePlugin({ onImageFiles: options.onImageFiles }),\n findReplacePlugin(),\n codeHighlightPlugin(),\n embedPastePlugin(),\n formatPainterPlugin(),\n pastePlugin(schema, {\n getForcePlainText: options.getForcePlainText,\n getMarkdownPaste: options.getMarkdownPaste,\n getSanitize: options.getSanitize,\n })\n );\n if (options.getMaxLength) plugins.push(maxLengthPlugin(options.getMaxLength));\n if (options.singleLine) plugins.push(singleLinePlugin());\n if (options.plugins) plugins.push(...options.plugins);\n\n return EditorState.create({\n schema,\n doc: options.doc,\n plugins,\n });\n}\n","import { Plugin } from 'prosemirror-state';\nimport { dropPoint } from 'prosemirror-transform';\n\n/**\nCreate a plugin that, when added to a ProseMirror instance,\ncauses a decoration to show up at the drop position when something\nis dragged over the editor.\n\nNodes may add a `disableDropCursor` property to their spec to\ncontrol the showing of a drop cursor inside them. This may be a\nboolean or a function, which will be called with a view and a\nposition, and should return a boolean.\n*/\nfunction dropCursor(options = {}) {\n return new Plugin({\n view(editorView) { return new DropCursorView(editorView, options); }\n });\n}\nclass DropCursorView {\n constructor(editorView, options) {\n var _a;\n this.editorView = editorView;\n this.cursorPos = null;\n this.element = null;\n this.timeout = -1;\n this.lastDragEvent = null;\n this.width = (_a = options.width) !== null && _a !== void 0 ? _a : 1;\n this.color = options.color === false ? undefined : (options.color || \"black\");\n this.class = options.class;\n this.handlers = [\"dragover\", \"dragend\", \"drop\", \"dragleave\"].map(name => {\n let handler = (e) => { this[name](e); };\n editorView.dom.addEventListener(name, handler);\n return { name, handler };\n });\n }\n destroy() {\n this.handlers.forEach(({ name, handler }) => this.editorView.dom.removeEventListener(name, handler));\n }\n update(editorView, prevState) {\n if (this.cursorPos != null && prevState.doc != editorView.state.doc) {\n // if we currently have an on-going drag event\n // we need to update the cursor position again and update the overlay\n if (this.lastDragEvent) {\n let target = this.computeTarget(this.lastDragEvent);\n if (target == this.cursorPos)\n this.updateOverlay();\n else\n this.setCursor(target);\n }\n else {\n this.updateOverlay();\n }\n }\n }\n setCursor(pos) {\n if (pos == this.cursorPos)\n return;\n this.cursorPos = pos;\n if (pos == null) {\n this.element.parentNode.removeChild(this.element);\n this.element = null;\n }\n else {\n this.updateOverlay();\n }\n }\n updateOverlay() {\n let $pos = this.editorView.state.doc.resolve(this.cursorPos);\n let isBlock = !$pos.parent.inlineContent, rect;\n let editorDOM = this.editorView.dom, editorRect = editorDOM.getBoundingClientRect();\n let scaleX = editorRect.width / editorDOM.offsetWidth, scaleY = editorRect.height / editorDOM.offsetHeight;\n if (isBlock) {\n let before = $pos.nodeBefore, after = $pos.nodeAfter;\n if (before || after) {\n let node = this.editorView.nodeDOM(this.cursorPos - (before ? before.nodeSize : 0));\n if (node) {\n let nodeRect = node.getBoundingClientRect();\n let top = before ? nodeRect.bottom : nodeRect.top;\n if (before && after)\n top = (top + this.editorView.nodeDOM(this.cursorPos).getBoundingClientRect().top) / 2;\n let halfWidth = (this.width / 2) * scaleY;\n rect = { left: nodeRect.left, right: nodeRect.right, top: top - halfWidth, bottom: top + halfWidth };\n }\n }\n }\n if (!rect) {\n let coords = this.editorView.coordsAtPos(this.cursorPos);\n let halfWidth = (this.width / 2) * scaleX;\n rect = { left: coords.left - halfWidth, right: coords.left + halfWidth, top: coords.top, bottom: coords.bottom };\n }\n let parent = this.editorView.dom.offsetParent;\n if (!this.element) {\n this.element = parent.appendChild(document.createElement(\"div\"));\n if (this.class)\n this.element.className = this.class;\n this.element.style.cssText = \"position: absolute; z-index: 50; pointer-events: none;\";\n if (this.color) {\n this.element.style.backgroundColor = this.color;\n }\n }\n this.element.classList.toggle(\"prosemirror-dropcursor-block\", isBlock);\n this.element.classList.toggle(\"prosemirror-dropcursor-inline\", !isBlock);\n let parentLeft, parentTop;\n if (!parent || parent == document.body && getComputedStyle(parent).position == \"static\") {\n parentLeft = -pageXOffset;\n parentTop = -pageYOffset;\n }\n else {\n let rect = parent.getBoundingClientRect();\n let parentScaleX = rect.width / parent.offsetWidth, parentScaleY = rect.height / parent.offsetHeight;\n parentLeft = rect.left - parent.scrollLeft * parentScaleX;\n parentTop = rect.top - parent.scrollTop * parentScaleY;\n }\n this.element.style.left = (rect.left - parentLeft) / scaleX + \"px\";\n this.element.style.top = (rect.top - parentTop) / scaleY + \"px\";\n this.element.style.width = (rect.right - rect.left) / scaleX + \"px\";\n this.element.style.height = (rect.bottom - rect.top) / scaleY + \"px\";\n }\n scheduleRemoval(timeout) {\n clearTimeout(this.timeout);\n this.timeout = setTimeout(() => this.setCursor(null), timeout);\n }\n computeTarget(event) {\n let pos = this.editorView.posAtCoords({ left: event.clientX, top: event.clientY });\n let node = pos && pos.inside >= 0 && this.editorView.state.doc.nodeAt(pos.inside);\n let disableDropCursor = node && node.type.spec.disableDropCursor;\n let disabled = typeof disableDropCursor == \"function\"\n ? disableDropCursor(this.editorView, pos, event)\n : disableDropCursor;\n if (!pos || disabled)\n return null;\n let target = pos.pos;\n if (this.editorView.dragging && this.editorView.dragging.slice) {\n let point = dropPoint(this.editorView.state.doc, target, this.editorView.dragging.slice);\n if (point != null)\n target = point;\n }\n return target;\n }\n dragover(event) {\n if (!this.editorView.editable)\n return;\n this.lastDragEvent = event;\n let target = this.computeTarget(event);\n if (target != null) {\n this.setCursor(target);\n this.scheduleRemoval(5000);\n }\n }\n dragend() {\n this.scheduleRemoval(20);\n }\n drop() {\n this.scheduleRemoval(20);\n }\n dragleave(event) {\n if (!this.editorView.dom.contains(event.relatedTarget))\n this.setCursor(null);\n }\n}\n\nexport { dropCursor };\n"],"names":["needsGap","type","isAtom","spec","isolating","createGapCursor","arrow","axis","dir","dirStr","state","dispatch","view","sel","selection","$start","$to","$from","mustMove","empty","TextSelection","endOfTextblock","depth","doc","resolve","after","before","$found","GapCursor","findGapCursorFrom","tr","setSelection","handleClick","pos","event","editable","$pos","valid","clickPos","posAtCoords","left","clientX","top","clientY","inside","NodeSelection","isSelectable","nodeAt","beforeinput","inputType","insert","parent","contentMatchAt","index","findWrapping","schema","nodes","text","frag","Fragment","i","length","from","createAndFill","replace","Slice","near","drawGapCursor","node","document","createElement","className","DecorationSet","create","Decoration","widget","head","key","createEditorState","options","defaultSchema","plugins","mentions","push","suggestionPlugin","mentionSuggestKey","slashCommands","slashSuggestKey","getTriggers","startOfLine","emoji","emojiSuggestKey","minQueryLength","buildInputRules","textTransform","buildKeymapPlugins","onLinkShortcut","onFindShortcut","onShortcutHelp","history","Plugin","editorView","DropCursorView","dropCursor","props","decorations","createSelectionBetween","_view","$anchor","$head","handleKeyDown","handleDOMEvents","placeholderPlugin","getPlaceholder","linkPlugin","onOpenLink","tablePlugins","imagePlugin","onImageFiles","findReplacePlugin","codeHighlightPlugin","embedPastePlugin","formatPainterPlugin","pastePlugin","getForcePlainText","getMarkdownPaste","getSanitize","getMaxLength","maxLengthPlugin","singleLine","singleLinePlugin","EditorState","C","_a","this","cursorPos","element","timeout","lastDragEvent","width","color","undefined","handlers","map","name","handler","e","dom","addEventListener","s","_createClass","value","destroy","forEach","_ref","removeEventListener","update","prevState","target","computeTarget","updateOverlay","setCursor","parentNode","removeChild","rect","isBlock","inlineContent","editorDOM","editorRect","getBoundingClientRect","scaleX","offsetWidth","scaleY","height","offsetHeight","nodeBefore","nodeAfter","nodeDOM","nodeSize","nodeRect","bottom","halfWidth","right","coords","coordsAtPos","parentLeft","parentTop","offsetParent","appendChild","class","style","cssText","backgroundColor","classList","toggle","body","getComputedStyle","position","pageXOffset","pageYOffset","parentScaleX","parentScaleY","scrollLeft","scrollTop","scheduleRemoval","clearTimeout","setTimeout","disableDropCursor","disabled","dragging","slice","point","dropPoint","dragover","dragend","drop","dragleave","contains","relatedTarget","Selection","F","_inherits","_s4","mapping","content","eq","other","toJSON","getBookmark","GapBookmark","anchor","fromJSON","json","RangeError","d","child","lastChild","childCount","closedBefore","indexAfter","firstChild","closedAfter","override","allowGapCursor","deflt","defaultType","isTextblock","search","next","$cur","isText","prototype","visible","findFrom","jsonID","L","keydownHandler","ArrowLeft","ArrowRight","ArrowUp","ArrowDown","PluginKey"],"mappings":"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","x_google_ignoreList":[0,2]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as t,e,S as
|
|
1
|
+
import{b as t,e,S as s,T as r,c as i,F as n,d as o,P as l,E as u}from"../../index-6f3fa4ab.esm.js";import{h as a}from"./commands.esm.js";import{b as m}from"../../index-289706c7.esm.js";import{D as h,a as f}from"../../index-353172ed.esm.js";import{b as p}from"./keymap.esm.js";import{b as c}from"./inputrules.esm.js";import{p as g}from"./plugins/placeholder.esm.js";import{l as d}from"./plugins/link.esm.js";import{s as w}from"./plugins/single-line.esm.js";import{t as j}from"./plugins/tables.esm.js";import{i as v}from"./plugins/image.esm.js";import{s as x}from"./plugins/suggestions.esm.js";import{f as b}from"./plugins/find-replace.esm.js";import{m as k}from"./plugins/max-length.esm.js";import{c as S}from"./plugins/code-highlight.esm.js";import{e as y}from"./plugins/embeds.esm.js";import{a as O}from"./plugins/paste.esm.js";import{f as T}from"./plugins/format-painter.esm.js";import{d as z}from"./schema.esm.js";import"../../index-920675c4.esm.js";import"../../index-1faa963c.esm.js";import"./markdown-parse.esm.js";import"./serializer.esm.js";import"./sanitize.esm.js";import"../../xml-25c4108a.esm.js";class C{constructor(t,e){var s;this.editorView=t,this.cursorPos=null,this.element=null,this.timeout=-1,this.lastDragEvent=null,this.width=null!==(s=e.width)&&void 0!==s?s:1,this.color=!1===e.color?void 0:e.color||"black",this.class=e.class,this.handlers=["dragover","dragend","drop","dragleave"].map((e=>{let s=t=>{this[e](t)};return t.dom.addEventListener(e,s),{name:e,handler:s}}))}destroy(){this.handlers.forEach((({name:t,handler:e})=>this.editorView.dom.removeEventListener(t,e)))}update(t,e){if(null!=this.cursorPos&&e.doc!=t.state.doc)if(this.lastDragEvent){let t=this.computeTarget(this.lastDragEvent);t==this.cursorPos?this.updateOverlay():this.setCursor(t)}else this.updateOverlay()}setCursor(t){t!=this.cursorPos&&(this.cursorPos=t,null==t?(this.element.parentNode.removeChild(this.element),this.element=null):this.updateOverlay())}updateOverlay(){let t,e=this.editorView.state.doc.resolve(this.cursorPos),s=!e.parent.inlineContent,r=this.editorView.dom,i=r.getBoundingClientRect(),n=i.width/r.offsetWidth,o=i.height/r.offsetHeight;if(s){let s=e.nodeBefore,r=e.nodeAfter;if(s||r){let e=this.editorView.nodeDOM(this.cursorPos-(s?s.nodeSize:0));if(e){let i=e.getBoundingClientRect(),n=s?i.bottom:i.top;s&&r&&(n=(n+this.editorView.nodeDOM(this.cursorPos).getBoundingClientRect().top)/2);let l=this.width/2*o;t={left:i.left,right:i.right,top:n-l,bottom:n+l}}}}if(!t){let e=this.editorView.coordsAtPos(this.cursorPos),s=this.width/2*n;t={left:e.left-s,right:e.left+s,top:e.top,bottom:e.bottom}}let l,u,a=this.editorView.dom.offsetParent;if(this.element||(this.element=a.appendChild(document.createElement("div")),this.class&&(this.element.className=this.class),this.element.style.cssText="position: absolute; z-index: 50; pointer-events: none;",this.color&&(this.element.style.backgroundColor=this.color)),this.element.classList.toggle("prosemirror-dropcursor-block",s),this.element.classList.toggle("prosemirror-dropcursor-inline",!s),!a||a==document.body&&"static"==getComputedStyle(a).position)l=-pageXOffset,u=-pageYOffset;else{let t=a.getBoundingClientRect(),e=t.width/a.offsetWidth,s=t.height/a.offsetHeight;l=t.left-a.scrollLeft*e,u=t.top-a.scrollTop*s}this.element.style.left=(t.left-l)/n+"px",this.element.style.top=(t.top-u)/o+"px",this.element.style.width=(t.right-t.left)/n+"px",this.element.style.height=(t.bottom-t.top)/o+"px"}scheduleRemoval(t){clearTimeout(this.timeout),this.timeout=setTimeout((()=>this.setCursor(null)),t)}computeTarget(t){let s=this.editorView.posAtCoords({left:t.clientX,top:t.clientY}),r=s&&s.inside>=0&&this.editorView.state.doc.nodeAt(s.inside),i=r&&r.type.spec.disableDropCursor,n="function"==typeof i?i(this.editorView,s,t):i;if(!s||n)return null;let o=s.pos;if(this.editorView.dragging&&this.editorView.dragging.slice){let t=e(this.editorView.state.doc,o,this.editorView.dragging.slice);null!=t&&(o=t)}return o}dragover(t){if(!this.editorView.editable)return;this.lastDragEvent=t;let e=this.computeTarget(t);null!=e&&(this.setCursor(e),this.scheduleRemoval(5e3))}dragend(){this.scheduleRemoval(20)}drop(){this.scheduleRemoval(20)}dragleave(t){this.editorView.dom.contains(t.relatedTarget)||this.setCursor(null)}}class F extends s{constructor(t){super(t,t)}map(t,e){let r=t.resolve(e.map(this.head));return F.valid(r)?new F(r):s.near(r)}content(){return o.empty}eq(t){return t instanceof F&&t.head==this.head}toJSON(){return{type:"gapcursor",pos:this.head}}static fromJSON(t,e){if("number"!=typeof e.pos)throw new RangeError("Invalid input for GapCursor.fromJSON");return new F(t.resolve(e.pos))}getBookmark(){return new L(this.anchor)}static valid(t){let e=t.parent;if(e.inlineContent||!function(t){for(let e=t.depth;e>=0;e--){let s=t.index(e),r=t.node(e);if(0!=s)for(let t=r.child(s-1);;t=t.lastChild){if(0==t.childCount&&!t.inlineContent||A(t.type))return!0;if(t.inlineContent)return!1}else if(r.type.spec.isolating)return!0}return!0}(t)||!function(t){for(let e=t.depth;e>=0;e--){let s=t.indexAfter(e),r=t.node(e);if(s!=r.childCount)for(let t=r.child(s);;t=t.firstChild){if(0==t.childCount&&!t.inlineContent||A(t.type))return!0;if(t.inlineContent)return!1}else if(r.type.spec.isolating)return!0}return!0}(t))return!1;let s=e.type.spec.allowGapCursor;if(null!=s)return s;let r=e.contentMatchAt(t.index()).defaultType;return r&&r.isTextblock}static findGapCursorFrom(t,e,s=!1){t:for(;;){if(!s&&F.valid(t))return t;let r=t.pos,n=null;for(let s=t.depth;;s--){let i=t.node(s);if(e>0?t.indexAfter(s)<i.childCount:t.index(s)>0){n=i.child(e>0?t.indexAfter(s):t.index(s)-1);break}if(0==s)return null;r+=e;let o=t.doc.resolve(r);if(F.valid(o))return o}for(;;){let o=e>0?n.firstChild:n.lastChild;if(!o){if(n.isAtom&&!n.isText&&!i.isSelectable(n)){t=t.doc.resolve(r+n.nodeSize*e),s=!1;continue t}break}n=o,r+=e;let l=t.doc.resolve(r);if(F.valid(l))return l}return null}}}F.prototype.visible=!1,F.findFrom=F.findGapCursorFrom,s.jsonID("gapcursor",F);class L{constructor(t){this.pos=t}map(t){return new L(t.map(this.pos))}resolve(t){let e=t.resolve(this.pos);return F.valid(e)?new F(e):s.near(e)}}function A(t){return t.isAtom||t.spec.isolating||t.spec.createGapCursor}const D=m({ArrowLeft:E("horiz",-1),ArrowRight:E("horiz",1),ArrowUp:E("vert",-1),ArrowDown:E("vert",1)});function E(t,e){const s="vert"==t?e>0?"down":"up":e>0?"right":"left";return function(t,i,n){let o=t.selection,l=e>0?o.$to:o.$from,u=o.empty;if(o instanceof r){if(!n.endOfTextblock(s)||0==l.depth)return!1;u=!1,l=t.doc.resolve(e>0?l.after():l.before())}let a=F.findGapCursorFrom(l,e,u);return!!a&&(i&&i(t.tr.setSelection(new F(a))),!0)}}function M(t,e,s){if(!t||!t.editable)return!1;let r=t.state.doc.resolve(e);if(!F.valid(r))return!1;let n=t.posAtCoords({left:s.clientX,top:s.clientY});return!(n&&n.inside>-1&&i.isSelectable(t.state.doc.nodeAt(n.inside)))&&(t.dispatch(t.state.tr.setSelection(new F(r))),!0)}function P(t,e){if("insertCompositionText"!=e.inputType||!(t.state.selection instanceof F))return!1;let{$from:s}=t.state.selection,i=s.parent.contentMatchAt(s.index()).findWrapping(t.state.schema.nodes.text);if(!i)return!1;let l=n.empty;for(let t=i.length-1;t>=0;t--)l=n.from(i[t].createAndFill(null,l));let u=t.state.tr.replace(s.pos,s.pos,new o(l,0,0));return u.setSelection(r.near(u.doc.resolve(s.pos+1))),t.dispatch(u),!1}function J(t){if(!(t.selection instanceof F))return null;let e=document.createElement("div");return e.className="ProseMirror-gapcursor",h.create(t.doc,[f.widget(t.selection.head,e,{key:"gapcursor"})])}const N=new l("nileMentionSuggest"),R=new l("nileSlashSuggest"),B=new l("nileEmojiSuggest");function G(e={}){const s=e.schema??z,r=[];return e.mentions&&r.push(x(N,e.mentions)),e.slashCommands&&r.push(x(R,{...e.slashCommands,getTriggers:()=>["/"],startOfLine:!0})),e.emoji&&r.push(x(B,{...e.emoji,getTriggers:()=>[":"],minQueryLength:2})),r.push(c(s,{textTransform:e.textTransform}),...p(s,{onLinkShortcut:e.onLinkShortcut,onFindShortcut:e.onFindShortcut,onShortcutHelp:e.onShortcutHelp}),a(),function(e={}){return new t({view:t=>new C(t,e)})}(),new t({props:{decorations:J,createSelectionBetween:(t,e,s)=>e.pos==s.pos&&F.valid(s)?new F(s):null,handleClick:M,handleKeyDown:D,handleDOMEvents:{beforeinput:P}}}),g(e.getPlaceholder??(()=>"")),d({onOpenLink:e.onOpenLink}),...j(),v({onImageFiles:e.onImageFiles}),b(),S(),y(),T(),O(s,{getForcePlainText:e.getForcePlainText,getMarkdownPaste:e.getMarkdownPaste,getSanitize:e.getSanitize})),e.getMaxLength&&r.push(k(e.getMaxLength)),e.singleLine&&r.push(w()),e.plugins&&r.push(...e.plugins),u.create({schema:s,doc:e.doc,plugins:r})}export{G as c};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
System.register(["./schema.cjs.js","./sanitize.cjs.js","./serializer.cjs.js","./commands.cjs.js","./markdown.cjs.js","./markdown-parse.cjs.js","./office-paste.cjs.js","./export.cjs.js","./plugins/image-view.cjs.js","./plugins/embed-view.cjs.js","./plugins/math-view.cjs.js","./selection-state.cjs.js","./create-state.cjs.js","./plugins/max-length.cjs.js","./plugins/task-list.cjs.js","./plugins/code-highlight.cjs.js","./plugins/embeds.cjs.js","./plugins/find-replace.cjs.js","./plugins/placeholder.cjs.js","./plugins/format-painter.cjs.js","./plugins/link.cjs.js","./plugins/single-line.cjs.js","./plugins/tables.cjs.js","./plugins/image.cjs.js","./plugins/paste.cjs.js","../../index-89c520e9.cjs.js","../../index-
|
|
1
|
+
System.register(["./schema.cjs.js","./sanitize.cjs.js","./serializer.cjs.js","./commands.cjs.js","./markdown.cjs.js","./markdown-parse.cjs.js","./office-paste.cjs.js","./export.cjs.js","./plugins/image-view.cjs.js","./plugins/embed-view.cjs.js","./plugins/style-block-view.cjs.js","./plugins/math-view.cjs.js","./selection-state.cjs.js","./create-state.cjs.js","./plugins/max-length.cjs.js","./plugins/task-list.cjs.js","./plugins/code-highlight.cjs.js","./plugins/embeds.cjs.js","./plugins/find-replace.cjs.js","./plugins/placeholder.cjs.js","./plugins/format-painter.cjs.js","./plugins/link.cjs.js","./plugins/single-line.cjs.js","./plugins/tables.cjs.js","./plugins/image.cjs.js","./plugins/paste.cjs.js","../../index-89c520e9.cjs.js","../../index-d7e6f1c6.cjs.js","../../index-cc1385e0.cjs.js","../../index-178e1e57.cjs.js","./keymap.cjs.js","../../index-f956f56d.cjs.js","./inputrules.cjs.js","./plugins/suggestions.cjs.js","../../xml-90fd974e.cjs.js"],function(_export,_context){"use strict";return{setters:[function(_schemaCjsJs){},function(_sanitizeCjsJs){},function(_serializerCjsJs){},function(_commandsCjsJs){},function(_markdownCjsJs){},function(_markdownParseCjsJs){},function(_officePasteCjsJs){},function(_exportCjsJs){},function(_pluginsImageViewCjsJs){},function(_pluginsEmbedViewCjsJs){},function(_pluginsStyleBlockViewCjsJs){},function(_pluginsMathViewCjsJs){},function(_selectionStateCjsJs){},function(_createStateCjsJs){},function(_pluginsMaxLengthCjsJs){},function(_pluginsTaskListCjsJs){},function(_pluginsCodeHighlightCjsJs){},function(_pluginsEmbedsCjsJs){},function(_pluginsFindReplaceCjsJs){},function(_pluginsPlaceholderCjsJs){},function(_pluginsFormatPainterCjsJs){},function(_pluginsLinkCjsJs){},function(_pluginsSingleLineCjsJs){},function(_pluginsTablesCjsJs){},function(_pluginsImageCjsJs){},function(_pluginsPasteCjsJs){},function(_index00aCjsJs){},function(_index001CjsJs){},function(_index009CjsJs){},function(_index007CjsJs){},function(_keymapCjsJs){},function(_index00cCjsJs){},function(_inputrulesCjsJs){},function(_pluginsSuggestionsCjsJs){},function(_xml00bCjsJs){}],execute:function execute(){}};});
|
|
2
2
|
//# sourceMappingURL=index.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./schema.esm.js";import"./sanitize.esm.js";import"./serializer.esm.js";import"./commands.esm.js";import"./markdown.esm.js";import"./markdown-parse.esm.js";import"./office-paste.esm.js";import"./export.esm.js";import"./plugins/image-view.esm.js";import"./plugins/embed-view.esm.js";import"./plugins/math-view.esm.js";import"./selection-state.esm.js";import"./create-state.esm.js";import"./plugins/max-length.esm.js";import"./plugins/task-list.esm.js";import"./plugins/code-highlight.esm.js";import"./plugins/embeds.esm.js";import"./plugins/find-replace.esm.js";import"./plugins/placeholder.esm.js";import"./plugins/format-painter.esm.js";import"./plugins/link.esm.js";import"./plugins/single-line.esm.js";import"./plugins/tables.esm.js";import"./plugins/image.esm.js";import"./plugins/paste.esm.js";import"../../index-6f3fa4ab.esm.js";import"../../index-
|
|
1
|
+
import"./schema.esm.js";import"./sanitize.esm.js";import"./serializer.esm.js";import"./commands.esm.js";import"./markdown.esm.js";import"./markdown-parse.esm.js";import"./office-paste.esm.js";import"./export.esm.js";import"./plugins/image-view.esm.js";import"./plugins/embed-view.esm.js";import"./plugins/style-block-view.esm.js";import"./plugins/math-view.esm.js";import"./selection-state.esm.js";import"./create-state.esm.js";import"./plugins/max-length.esm.js";import"./plugins/task-list.esm.js";import"./plugins/code-highlight.esm.js";import"./plugins/embeds.esm.js";import"./plugins/find-replace.esm.js";import"./plugins/placeholder.esm.js";import"./plugins/format-painter.esm.js";import"./plugins/link.esm.js";import"./plugins/single-line.esm.js";import"./plugins/tables.esm.js";import"./plugins/image.esm.js";import"./plugins/paste.esm.js";import"../../index-6f3fa4ab.esm.js";import"../../index-289706c7.esm.js";import"../../index-353172ed.esm.js";import"../../index-920675c4.esm.js";import"./keymap.esm.js";import"../../index-1faa963c.esm.js";import"./inputrules.esm.js";import"./plugins/suggestions.esm.js";import"../../xml-25c4108a.esm.js";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
System.register(["../../index-f956f56d.cjs.js","../../index-89c520e9.cjs.js"],function(_export,_context){"use strict";var s,n,t,r;function $(s){return s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function e(s,n){return new r(s,function(s,t,r,$){if(function(s){var n=s.selection.$from;if(n.parent.type.spec.code)return!0;var t=s.schema.marks.code;return!(!t||!t.isInSet(s.storedMarks||n.marks()));}(s))return null;var e=n,o=r;if(t.length>1&&void 0!==t[1]){var _s=t[0].lastIndexOf(t[1]);e+=t[0].slice(_s+t[1].length),o+=_s;var _n=o-$;_n>0&&(e=t[0].slice(_s-_n,_s)+e,o=$);}return s.tr.insertText(e,o,$);});}function o(s,n){var t=$(s),e=$(s[0]),o=new RegExp("(?:^|\\s)".concat(t,"([^").concat(e,"\\s](?:[^").concat(e,"]*[^").concat(e,"\\s])?)").concat(t,"$"));return new r(o,function(t,r,$,e){var o=r[1],u=$+r[0].indexOf(s),i=t.tr;return i["delete"](u,e),i.insertText(o,u),i.addMark(u,u+o.length,n.create()),i.removeStoredMark(n),i;});}function u(s){var n=s.marks.link;return new r(/(?:^|\s)((?:https?:\/\/|www\.)[^\s]*[^\s.,:;!?'")\]}])\s$/i,function(t,r,$,e){var o=r[1],u=$+r[0].indexOf(o),i=u+o.length;if(t.doc.rangeHasMark(u,i,n))return null;if(t.doc.rangeHasMark(u,i,s.marks.code))return null;var c=/^www\./i.test(o)?"https://".concat(o):o,f=t.tr;return f.addMark(u,i,n.create({href:c})),f.removeStoredMark(n),f.insertText(" ",e),f;});}function i(r){var $=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var i=!1===$.textTransform?[]:[e(/\(c\)$/i,"©"),e(/\(r\)$/i,"®"),e(/\(tm\)$/i,"™"),e(/(?:^|\s)(1\/2)\s$/,"½"),e(/(?:^|\s)(1\/4)\s$/,"¼"),e(/(?:^|\s)(3\/4)\s$/,"¾"),e(/\s(---)\s$/,"—"),e(/\s(--)\s$/,"–"),e(/\.\.\.$/,"…"),e(/(?:^|[\s{[(<'"‘“])(")$/,"“"),e(/"$/,"”"),e(/(?:^|[\s{[(<'"‘“])(')$/,"‘"),e(/'$/,"’")];return s({rules:[].concat(i,[n(new RegExp("^(#{1,6})\\s$"),r.nodes.heading,function(s){return{level:s[1].length};}),t(/^\s*>\s$/,r.nodes.blockquote),t(/^\s*([-*])\s$/,r.nodes.bullet_list),t(/^(\d+)\.\s$/,r.nodes.ordered_list,function(s){return{order:+s[1]};},function(s,n){return n.childCount+n.attrs.order===+s[1];}),n(/^```$/,r.nodes.code_block),t(/^\s*\[[ ]?\]\s$/,r.nodes.task_list),o("**",r.marks.bold),o("*",r.marks.italic),o("~~",r.marks.strike),o("~",r.marks.subscript),o("^",r.marks.superscript),o("`",r.marks.code),u(r)])});}_export("b",i);return{setters:[function(
|
|
1
|
+
System.register(["../../index-f956f56d.cjs.js","../../index-89c520e9.cjs.js"],function(_export,_context){"use strict";var s,n,t,r;function $(s){return s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");}function e(s,n){return new r(s,function(s,t,r,$){if(function(s){var n=s.selection.$from;if(n.parent.type.spec.code)return!0;var t=s.schema.marks.code;return!(!t||!t.isInSet(s.storedMarks||n.marks()));}(s))return null;var e=n,o=r;if(t.length>1&&void 0!==t[1]){var _s=t[0].lastIndexOf(t[1]);e+=t[0].slice(_s+t[1].length),o+=_s;var _n=o-$;_n>0&&(e=t[0].slice(_s-_n,_s)+e,o=$);}return s.tr.insertText(e,o,$);});}function o(s,n){var t=$(s),e=$(s[0]),o=new RegExp("(?:^|\\s)".concat(t,"([^").concat(e,"\\s](?:[^").concat(e,"]*[^").concat(e,"\\s])?)").concat(t,"$"));return new r(o,function(t,r,$,e){var o=r[1],u=$+r[0].indexOf(s),i=t.tr;return i["delete"](u,e),i.insertText(o,u),i.addMark(u,u+o.length,n.create()),i.removeStoredMark(n),i;});}function u(s){var n=s.marks.link;return new r(/(?:^|\s)((?:https?:\/\/|www\.)[^\s]*[^\s.,:;!?'")\]}])\s$/i,function(t,r,$,e){var o=r[1],u=$+r[0].indexOf(o),i=u+o.length;if(t.doc.rangeHasMark(u,i,n))return null;if(t.doc.rangeHasMark(u,i,s.marks.code))return null;var c=/^www\./i.test(o)?"https://".concat(o):o,f=t.tr;return f.addMark(u,i,n.create({href:c})),f.removeStoredMark(n),f.insertText(" ",e),f;});}function i(r){var $=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var i=!1===$.textTransform?[]:[e(/\(c\)$/i,"©"),e(/\(r\)$/i,"®"),e(/\(tm\)$/i,"™"),e(/(?:^|\s)(1\/2)\s$/,"½"),e(/(?:^|\s)(1\/4)\s$/,"¼"),e(/(?:^|\s)(3\/4)\s$/,"¾"),e(/\s(---)\s$/,"—"),e(/\s(--)\s$/,"–"),e(/\.\.\.$/,"…"),e(/(?:^|[\s{[(<'"‘“])(")$/,"“"),e(/"$/,"”"),e(/(?:^|[\s{[(<'"‘“])(')$/,"‘"),e(/'$/,"’")];return s({rules:[].concat(i,[n(new RegExp("^(#{1,6})\\s$"),r.nodes.heading,function(s){return{level:s[1].length};}),t(/^\s*>\s$/,r.nodes.blockquote),t(/^\s*([-*])\s$/,r.nodes.bullet_list),t(/^(\d+)\.\s$/,r.nodes.ordered_list,function(s){return{order:+s[1]};},function(s,n){return n.childCount+n.attrs.order===+s[1];}),n(/^```$/,r.nodes.code_block),t(/^\s*\[[ ]?\]\s$/,r.nodes.task_list),o("**",r.marks.bold),o("*",r.marks.italic),o("~~",r.marks.strike),o("~",r.marks.subscript),o("^",r.marks.superscript),o("`",r.marks.code),u(r)])});}_export("b",i);return{setters:[function(_index00cCjsJs){s=_index00cCjsJs.i;n=_index00cCjsJs.t;t=_index00cCjsJs.w;r=_index00cCjsJs.I;},function(_index00aCjsJs){}],execute:function execute(){}};});
|
|
2
2
|
//# sourceMappingURL=inputrules.cjs.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
System.register(["../../index-
|
|
1
|
+
System.register(["../../index-d7e6f1c6.cjs.js","./commands.cjs.js","../../index-f956f56d.cjs.js","./schema.cjs.js","./plugins/paste.cjs.js","../../index-89c520e9.cjs.js","../../index-cc1385e0.cjs.js","../../index-178e1e57.cjs.js","./plugins/embeds.cjs.js","./markdown-parse.cjs.js","./serializer.cjs.js","./sanitize.cjs.js"],function(_export,_context){"use strict";var s,i,t,o,r,e,a,n,c,p,j,d,m;function f(f){var l=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var u={};u["Mod-z"]=o,u["Shift-Mod-z"]=r,m||(u["Mod-y"]=r),u.Backspace=n,u["Mod-b"]=function(s,t,o){return i(s,"bold")(s,t,o);},u["Mod-i"]=function(s,t,o){return i(s,"italic")(s,t,o);},u["Mod-u"]=function(s,t,o){return i(s,"underline")(s,t,o);},u["Shift-Mod-x"]=function(s,t,o){return i(s,"strike")(s,t,o);},u["Mod-,"]=function(s,t,o){return i(s,"subscript")(s,t,o);},u["Mod-."]=function(s,t,o){return i(s,"superscript")(s,t,o);},u["Shift-Mod-v"]=function(s,i,t){var _navigator$clipboard;return!(!t||"undefined"==typeof navigator||!((_navigator$clipboard=navigator.clipboard)!==null&&_navigator$clipboard!==void 0&&_navigator$clipboard.readText))&&(navigator.clipboard.readText().then(function(s){if(!s||!t)return;var i=d(t.state.schema,s);t.dispatch(t.state.tr.replaceSelection(i).scrollIntoView());})["catch"](function(){}),!0);},u["Shift-Ctrl-0"]=function(s,t,o){return i(s,"paragraph")(s,t,o);};var _loop=function _loop(_s){u["Shift-Ctrl-".concat(_s)]=function(t,o,r){return i(t,"heading",{level:_s})(t,o,r);};};for(var _s=1;_s<=6;_s+=1){_loop(_s);}u["Shift-Mod-7"]=function(s,t,o){return i(s,"orderedList")(s,t,o);},u["Shift-Mod-8"]=function(s,t,o){return i(s,"bulletList")(s,t,o);},u["Shift-Mod-9"]=function(s,t,o){return i(s,"blockquote")(s,t,o);},u["Mod-Alt-c"]=function(s,t,o){return i(s,"codeBlock")(s,t,o);},u["Mod-]"]=function(s,t,o){return i(s,"indent")(s,t,o);},u["Mod-["]=function(s,t,o){return i(s,"outdent")(s,t,o);},u.Enter=t(c(f.nodes.task_item,{checked:!1}),c(f.nodes.list_item)),u.Tab=t(p(f.nodes.task_item),p(f.nodes.list_item)),u["Shift-Tab"]=t(j(f.nodes.task_item),j(f.nodes.list_item));var g=t(e,function(s,i){return i&&i(s.tr.replaceSelectionWith(f.nodes.hard_break.create()).scrollIntoView()),!0;});if(u["Shift-Enter"]=g,u["Mod-Enter"]=g,l.onLinkShortcut){var _s2=l.onLinkShortcut;u["Mod-k"]=function(){return _s2(),!0;};}if(l.onFindShortcut){var _s3=l.onFindShortcut;u["Mod-f"]=function(){return _s3(),!0;};}if(l.onShortcutHelp){var _s4=l.onShortcutHelp;u["Mod-/"]=function(){return _s4(),!0;};}return[s(u),s(a)];}_export("b",f);return{setters:[function(_index001CjsJs){s=_index001CjsJs.k;},function(_commandsCjsJs){i=_commandsCjsJs.b;t=_commandsCjsJs.c;o=_commandsCjsJs.u;r=_commandsCjsJs.r;e=_commandsCjsJs.e;a=_commandsCjsJs.d;},function(_index00cCjsJs){n=_index00cCjsJs.u;},function(_schemaCjsJs){c=_schemaCjsJs.s;p=_schemaCjsJs.a;j=_schemaCjsJs.l;},function(_pluginsPasteCjsJs){d=_pluginsPasteCjsJs.p;},function(_index00aCjsJs){},function(_index009CjsJs){},function(_index007CjsJs){},function(_pluginsEmbedsCjsJs){},function(_markdownParseCjsJs){},function(_serializerCjsJs){},function(_sanitizeCjsJs){}],execute:function execute(){m="undefined"!=typeof navigator&&/Mac|iP(hone|[oa]d)/.test(navigator.platform);}};});
|
|
2
2
|
//# sourceMappingURL=keymap.cjs.js.map
|