pillardash-ui-react 0.1.138 → 0.1.140
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/Form/TextEditor/ImagePopover.js +2 -0
- package/dist/cjs/components/Form/TextEditor/ImagePopover.js.map +1 -0
- package/dist/cjs/components/Form/TextEditor/LinkPopover.js +2 -0
- package/dist/cjs/components/Form/TextEditor/LinkPopover.js.map +1 -0
- package/dist/cjs/components/Form/TextEditor/TextEditor.js +1 -1
- package/dist/cjs/components/Form/TextEditor/TextEditor.js.map +1 -1
- package/dist/cjs/components/Form/TextEditor/ToolbarGroups.js +2 -0
- package/dist/cjs/components/Form/TextEditor/ToolbarGroups.js.map +1 -0
- package/dist/cjs/components/Form/TextEditor/extensions.js +2 -0
- package/dist/cjs/components/Form/TextEditor/extensions.js.map +1 -0
- package/dist/cjs/components/Form/TextEditor/toolbar.js +2 -0
- package/dist/cjs/components/Form/TextEditor/toolbar.js.map +1 -0
- package/dist/cjs/node_modules/@tiptap/core/dist/index.js +1 -1
- package/dist/cjs/node_modules/@tiptap/core/dist/index.js.map +1 -1
- package/dist/cjs/node_modules/@tiptap/extension-list/dist/index.js +1 -1
- package/dist/cjs/node_modules/@tiptap/extension-list/dist/index.js.map +1 -1
- package/dist/cjs/node_modules/@tiptap/extension-table/dist/index.js +2 -0
- package/dist/cjs/node_modules/@tiptap/extension-table/dist/index.js.map +1 -0
- package/dist/cjs/node_modules/@tiptap/extension-table-cell/dist/index.js +2 -0
- package/dist/cjs/node_modules/@tiptap/extension-table-cell/dist/index.js.map +1 -0
- package/dist/cjs/node_modules/@tiptap/extension-table-header/dist/index.js +2 -0
- package/dist/cjs/node_modules/@tiptap/extension-table-header/dist/index.js.map +1 -0
- package/dist/cjs/node_modules/@tiptap/extension-table-row/dist/index.js +2 -0
- package/dist/cjs/node_modules/@tiptap/extension-table-row/dist/index.js.map +1 -0
- package/dist/cjs/node_modules/@tiptap/extension-task-item/dist/index.js +2 -0
- package/dist/cjs/node_modules/@tiptap/extension-task-item/dist/index.js.map +1 -0
- package/dist/cjs/node_modules/@tiptap/extension-task-list/dist/index.js +2 -0
- package/dist/cjs/node_modules/@tiptap/extension-task-list/dist/index.js.map +1 -0
- package/dist/cjs/node_modules/@tiptap/extension-text-align/dist/index.js +2 -0
- package/dist/cjs/node_modules/@tiptap/extension-text-align/dist/index.js.map +1 -0
- package/dist/cjs/node_modules/prosemirror-keymap/dist/index.js +2 -0
- package/dist/cjs/node_modules/prosemirror-keymap/dist/index.js.map +1 -0
- package/dist/cjs/node_modules/prosemirror-model/dist/index.js +1 -1
- package/dist/cjs/node_modules/prosemirror-model/dist/index.js.map +1 -1
- package/dist/cjs/node_modules/prosemirror-tables/dist/index.js +2 -0
- package/dist/cjs/node_modules/prosemirror-tables/dist/index.js.map +1 -0
- package/dist/cjs/node_modules/prosemirror-transform/dist/index.js +1 -1
- package/dist/cjs/node_modules/prosemirror-transform/dist/index.js.map +1 -1
- package/dist/cjs/node_modules/prosemirror-view/dist/index.js +2 -0
- package/dist/cjs/node_modules/prosemirror-view/dist/index.js.map +1 -0
- package/dist/cjs/node_modules/w3c-keyname/index.js +2 -0
- package/dist/cjs/node_modules/w3c-keyname/index.js.map +1 -0
- package/dist/esm/components/Form/TextEditor/ImagePopover.mjs +2 -0
- package/dist/esm/components/Form/TextEditor/ImagePopover.mjs.map +1 -0
- package/dist/esm/components/Form/TextEditor/LinkPopover.mjs +2 -0
- package/dist/esm/components/Form/TextEditor/LinkPopover.mjs.map +1 -0
- package/dist/esm/components/Form/TextEditor/TextEditor.mjs +1 -1
- package/dist/esm/components/Form/TextEditor/TextEditor.mjs.map +1 -1
- package/dist/esm/components/Form/TextEditor/ToolbarGroups.mjs +2 -0
- package/dist/esm/components/Form/TextEditor/ToolbarGroups.mjs.map +1 -0
- package/dist/esm/components/Form/TextEditor/extensions.mjs +2 -0
- package/dist/esm/components/Form/TextEditor/extensions.mjs.map +1 -0
- package/dist/esm/components/Form/TextEditor/toolbar.mjs +2 -0
- package/dist/esm/components/Form/TextEditor/toolbar.mjs.map +1 -0
- package/dist/esm/node_modules/@tiptap/core/dist/index.mjs +1 -1
- package/dist/esm/node_modules/@tiptap/core/dist/index.mjs.map +1 -1
- package/dist/esm/node_modules/@tiptap/extension-list/dist/index.mjs +1 -1
- package/dist/esm/node_modules/@tiptap/extension-list/dist/index.mjs.map +1 -1
- package/dist/esm/node_modules/@tiptap/extension-table/dist/index.mjs +2 -0
- package/dist/esm/node_modules/@tiptap/extension-table/dist/index.mjs.map +1 -0
- package/dist/esm/node_modules/@tiptap/extension-table-cell/dist/index.mjs +2 -0
- package/dist/esm/node_modules/@tiptap/extension-table-cell/dist/index.mjs.map +1 -0
- package/dist/esm/node_modules/@tiptap/extension-table-header/dist/index.mjs +2 -0
- package/dist/esm/node_modules/@tiptap/extension-table-header/dist/index.mjs.map +1 -0
- package/dist/esm/node_modules/@tiptap/extension-table-row/dist/index.mjs +2 -0
- package/dist/esm/node_modules/@tiptap/extension-table-row/dist/index.mjs.map +1 -0
- package/dist/esm/node_modules/@tiptap/extension-task-item/dist/index.mjs +2 -0
- package/dist/esm/node_modules/@tiptap/extension-task-item/dist/index.mjs.map +1 -0
- package/dist/esm/node_modules/@tiptap/extension-task-list/dist/index.mjs +2 -0
- package/dist/esm/node_modules/@tiptap/extension-task-list/dist/index.mjs.map +1 -0
- package/dist/esm/node_modules/@tiptap/extension-text-align/dist/index.mjs +2 -0
- package/dist/esm/node_modules/@tiptap/extension-text-align/dist/index.mjs.map +1 -0
- package/dist/esm/node_modules/prosemirror-keymap/dist/index.mjs +2 -0
- package/dist/esm/node_modules/prosemirror-keymap/dist/index.mjs.map +1 -0
- package/dist/esm/node_modules/prosemirror-model/dist/index.mjs +1 -1
- package/dist/esm/node_modules/prosemirror-model/dist/index.mjs.map +1 -1
- package/dist/esm/node_modules/prosemirror-tables/dist/index.mjs +2 -0
- package/dist/esm/node_modules/prosemirror-tables/dist/index.mjs.map +1 -0
- package/dist/esm/node_modules/prosemirror-transform/dist/index.mjs +1 -1
- package/dist/esm/node_modules/prosemirror-transform/dist/index.mjs.map +1 -1
- package/dist/esm/node_modules/prosemirror-view/dist/index.mjs +2 -0
- package/dist/esm/node_modules/prosemirror-view/dist/index.mjs.map +1 -0
- package/dist/esm/node_modules/w3c-keyname/index.mjs +2 -0
- package/dist/esm/node_modules/w3c-keyname/index.mjs.map +1 -0
- package/dist/index.d.ts +24 -0
- package/dist/styles.css +1 -1
- package/package.json +9 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Node as t,wrappingInputRule as e,mergeAttributes as s,Extension as i,isNodeActive as r,isAtStartOfNode as o,isAtEndOfNode as n,getNodeType as a,getNodeAtPosition as d}from"../../core/dist/index.mjs";var p=Object.defineProperty,c="textStyle",u=/^\s*([-+*])\s$/,h=t.create({name:"bulletList",addOptions:()=>({itemTypeName:"listItem",HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}),group:"block list",content(){return`${this.options.itemTypeName}+`},parseHTML:()=>[{tag:"ul"}],renderHTML({HTMLAttributes:t}){return["ul",s(this.options.HTMLAttributes,t),0]},addCommands(){return{toggleBulletList:()=>({commands:t,chain:e})=>this.options.keepAttributes?e().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes("listItem",this.editor.getAttributes(c)).run():t.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-8":()=>this.editor.commands.toggleBulletList()}},addInputRules(){let t=e({find:u,type:this.type});return(this.options.keepMarks||this.options.keepAttributes)&&(t=e({find:u,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:()=>this.editor.getAttributes(c),editor:this.editor})),[t]}}),m=t.create({name:"listItem",addOptions:()=>({HTMLAttributes:{},bulletListTypeName:"bulletList",orderedListTypeName:"orderedList"}),content:"paragraph block*",defining:!0,parseHTML:()=>[{tag:"li"}],renderHTML({HTMLAttributes:t}){return["li",s(this.options.HTMLAttributes,t),0]},addKeyboardShortcuts(){return{Enter:()=>this.editor.commands.splitListItem(this.name),Tab:()=>this.editor.commands.sinkListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)}}}),l={};((t,e)=>{for(var s in e)p(t,s,{get:e[s],enumerable:!0})})(l,{findListItemPos:()=>k,getNextListDepth:()=>b,handleBackspace:()=>g,handleDelete:()=>A,hasListBefore:()=>L,hasListItemAfter:()=>H,hasListItemBefore:()=>f,listItemHasSubList:()=>y,nextListIsDeeper:()=>T,nextListIsHigher:()=>M});var k=(t,e)=>{const{$from:s}=e.selection,i=a(t,e.schema);let r=null,o=s.depth,n=s.pos,d=null;for(;o>0&&null===d;)r=s.node(o),r.type===i?d=o:(o-=1,n-=1);return null===d?null:{$pos:e.doc.resolve(n),depth:d}},b=(t,e)=>{const s=k(t,e);if(!s)return!1;const[,i]=d(e,t,s.$pos.pos+4);return i},L=(t,e,s)=>{const{$anchor:i}=t.selection,r=Math.max(0,i.pos-2),o=t.doc.resolve(r).node();return!(!o||!s.includes(o.type.name))},f=(t,e)=>{var s;const{$anchor:i}=e.selection,r=e.doc.resolve(i.pos-2);return 0!==r.index()&&(null==(s=r.nodeBefore)?void 0:s.type.name)===t},y=(t,e,s)=>{if(!s)return!1;const i=a(t,e.schema);let r=!1;return s.descendants((t=>{t.type===i&&(r=!0)})),r},g=(t,e,s)=>{if(t.commands.undoInputRule())return!0;if(t.state.selection.from!==t.state.selection.to)return!1;if(!r(t.state,e)&&L(t.state,e,s)){const{$anchor:s}=t.state.selection,i=t.state.doc.resolve(s.before()-1),r=[];i.node().descendants(((t,s)=>{t.type.name===e&&r.push({node:t,pos:s})}));const o=r.at(-1);if(!o)return!1;const n=t.state.doc.resolve(i.start()+o.pos+1);return t.chain().cut({from:s.start()-1,to:s.end()+1},n.end()).joinForward().run()}if(!r(t.state,e))return!1;if(!o(t.state))return!1;const i=k(e,t.state);if(!i)return!1;const n=t.state.doc.resolve(i.$pos.pos-2).node(i.depth),a=y(e,t.state,n);return f(e,t.state)&&!a?t.commands.joinItemBackward():t.chain().liftListItem(e).run()},T=(t,e)=>{const s=b(t,e),i=k(t,e);return!(!i||!s)&&s>i.depth},M=(t,e)=>{const s=b(t,e),i=k(t,e);return!(!i||!s)&&s<i.depth},A=(t,e)=>{if(!r(t.state,e))return!1;if(!n(t.state,e))return!1;const{selection:s}=t.state,{$from:i,$to:o}=s;return!(!s.empty&&i.sameParent(o))&&(T(e,t.state)?t.chain().focus(t.state.selection.from+4).lift(e).joinBackward().run():M(e,t.state)?t.chain().joinForward().joinBackward().run():t.commands.joinItemForward())},H=(t,e)=>{var s;const{$anchor:i}=e.selection,r=e.doc.resolve(i.pos-i.parentOffset-2);return r.index()!==r.parent.childCount-1&&(null==(s=r.nodeAfter)?void 0:s.type.name)===t},I=i.create({name:"listKeymap",addOptions:()=>({listTypes:[{itemName:"listItem",wrapperNames:["bulletList","orderedList"]},{itemName:"taskItem",wrapperNames:["taskList"]}]}),addKeyboardShortcuts(){return{Delete:({editor:t})=>{let e=!1;return this.options.listTypes.forEach((({itemName:s})=>{void 0!==t.state.schema.nodes[s]&&A(t,s)&&(e=!0)})),e},"Mod-Delete":({editor:t})=>{let e=!1;return this.options.listTypes.forEach((({itemName:s})=>{void 0!==t.state.schema.nodes[s]&&A(t,s)&&(e=!0)})),e},Backspace:({editor:t})=>{let e=!1;return this.options.listTypes.forEach((({itemName:s,wrapperNames:i})=>{void 0!==t.state.schema.nodes[s]&&g(t,s,i)&&(e=!0)})),e},"Mod-Backspace":({editor:t})=>{let e=!1;return this.options.listTypes.forEach((({itemName:s,wrapperNames:i})=>{void 0!==t.state.schema.nodes[s]&&g(t,s,i)&&(e=!0)})),e}}}}),v="textStyle",N=/^(\d+)\.\s$/,E=t.create({name:"orderedList",addOptions:()=>({itemTypeName:"listItem",HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}),group:"block list",content(){return`${this.options.itemTypeName}+`},addAttributes:()=>({start:{default:1,parseHTML:t=>t.hasAttribute("start")?parseInt(t.getAttribute("start")||"",10):1},type:{default:null,parseHTML:t=>t.getAttribute("type")}}),parseHTML:()=>[{tag:"ol"}],renderHTML({HTMLAttributes:t}){const{start:e,...i}=t;return 1===e?["ol",s(this.options.HTMLAttributes,i),0]:["ol",s(this.options.HTMLAttributes,t),0]},addCommands(){return{toggleOrderedList:()=>({commands:t,chain:e})=>this.options.keepAttributes?e().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes("listItem",this.editor.getAttributes(v)).run():t.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-7":()=>this.editor.commands.toggleOrderedList()}},addInputRules(){let t=e({find:N,type:this.type,getAttributes:t=>({start:+t[1]}),joinPredicate:(t,e)=>e.childCount+e.attrs.start===+t[1]});return(this.options.keepMarks||this.options.keepAttributes)&&(t=e({find:N,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:t=>({start:+t[1],...this.editor.getAttributes(v)}),joinPredicate:(t,e)=>e.childCount+e.attrs.start===+t[1],editor:this.editor})),[t]}}),$=/^\s*(\[([( |x])?\])\s$/,x=t.create({name:"taskItem",addOptions:()=>({nested:!1,HTMLAttributes:{},taskListTypeName:"taskList",a11y:void 0}),content(){return this.options.nested?"paragraph block*":"paragraph+"},defining:!0,addAttributes:()=>({checked:{default:!1,keepOnSplit:!1,parseHTML:t=>{const e=t.getAttribute("data-checked");return""===e||"true"===e},renderHTML:t=>({"data-checked":t.checked})}}),parseHTML(){return[{tag:`li[data-type="${this.name}"]`,priority:51}]},renderHTML({node:t,HTMLAttributes:e}){return["li",s(this.options.HTMLAttributes,e,{"data-type":this.name}),["label",["input",{type:"checkbox",checked:t.attrs.checked?"checked":null}],["span"]],["div",0]]},addKeyboardShortcuts(){const t={Enter:()=>this.editor.commands.splitListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)};return this.options.nested?{...t,Tab:()=>this.editor.commands.sinkListItem(this.name)}:t},addNodeView(){return({node:t,HTMLAttributes:e,getPos:s,editor:i})=>{const r=document.createElement("li"),o=document.createElement("label"),n=document.createElement("span"),a=document.createElement("input"),d=document.createElement("div"),p=()=>{var e,s;a.ariaLabel=(null==(s=null==(e=this.options.a11y)?void 0:e.checkboxLabel)?void 0:s.call(e,t,a.checked))||`Task item checkbox for ${t.textContent||"empty task item"}`};return p(),o.contentEditable="false",a.type="checkbox",a.addEventListener("mousedown",(t=>t.preventDefault())),a.addEventListener("change",(e=>{if(!i.isEditable&&!this.options.onReadOnlyChecked)return void(a.checked=!a.checked);const{checked:r}=e.target;i.isEditable&&"function"==typeof s&&i.chain().focus(void 0,{scrollIntoView:!1}).command((({tr:t})=>{const e=s();if("number"!=typeof e)return!1;const i=t.doc.nodeAt(e);return t.setNodeMarkup(e,void 0,{...null==i?void 0:i.attrs,checked:r}),!0})).run(),!i.isEditable&&this.options.onReadOnlyChecked&&(this.options.onReadOnlyChecked(t,r)||(a.checked=!a.checked))})),Object.entries(this.options.HTMLAttributes).forEach((([t,e])=>{r.setAttribute(t,e)})),r.dataset.checked=t.attrs.checked,a.checked=t.attrs.checked,o.append(a,n),r.append(o,d),Object.entries(e).forEach((([t,e])=>{r.setAttribute(t,e)})),{dom:r,contentDOM:d,update:t=>t.type===this.type&&(r.dataset.checked=t.attrs.checked,a.checked=t.attrs.checked,p(),!0)}}},addInputRules(){return[e({find:$,type:this.type,getAttributes:t=>({checked:"x"===t[t.length-1]})})]}}),O=t.create({name:"taskList",addOptions:()=>({itemTypeName:"taskItem",HTMLAttributes:{}}),group:"block list",content(){return`${this.options.itemTypeName}+`},parseHTML(){return[{tag:`ul[data-type="${this.name}"]`,priority:51}]},renderHTML({HTMLAttributes:t}){return["ul",s(this.options.HTMLAttributes,t,{"data-type":this.name}),0]},addCommands(){return{toggleTaskList:()=>({commands:t})=>t.toggleList(this.name,this.options.itemTypeName)}},addKeyboardShortcuts(){return{"Mod-Shift-9":()=>this.editor.commands.toggleTaskList()}}});i.create({name:"listKit",addExtensions(){const t=[];return!1!==this.options.bulletList&&t.push(h.configure(this.options.bulletList)),!1!==this.options.listItem&&t.push(m.configure(this.options.listItem)),!1!==this.options.listKeymap&&t.push(I.configure(this.options.listKeymap)),!1!==this.options.orderedList&&t.push(E.configure(this.options.orderedList)),!1!==this.options.taskItem&&t.push(x.configure(this.options.taskItem)),!1!==this.options.taskList&&t.push(O.configure(this.options.taskList)),t}});export{h as BulletList,m as ListItem,I as ListKeymap,E as OrderedList,x as TaskItem,O as TaskList,u as bulletListInputRegex,$ as inputRegex,l as listHelpers,N as orderedListInputRegex};
|
|
1
|
+
import{Node as t,wrappingInputRule as e,mergeAttributes as s,renderNestedMarkdownContent as n,Extension as r,getRenderedAttributes as i,parseIndentedBlocks as o,isNodeActive as a,isAtStartOfNode as d,isAtEndOfNode as p,getNodeType as c,getNodeAtPosition as l}from"../../core/dist/index.mjs";var u=Object.defineProperty,h="textStyle",m=/^\s*([-+*])\s$/,k=t.create({name:"bulletList",addOptions:()=>({itemTypeName:"listItem",HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}),group:"block list",content(){return`${this.options.itemTypeName}+`},parseHTML:()=>[{tag:"ul"}],renderHTML({HTMLAttributes:t}){return["ul",s(this.options.HTMLAttributes,t),0]},markdownTokenName:"list",parseMarkdown:(t,e)=>"list"!==t.type||t.ordered?[]:{type:"bulletList",content:t.items?e.parseChildren(t.items):[]},renderMarkdown:(t,e)=>t.content?e.renderChildren(t.content,"\n"):"",markdownOptions:{indentsContent:!0},addCommands(){return{toggleBulletList:()=>({commands:t,chain:e})=>this.options.keepAttributes?e().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes("listItem",this.editor.getAttributes(h)).run():t.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-8":()=>this.editor.commands.toggleBulletList()}},addInputRules(){let t=e({find:m,type:this.type});return(this.options.keepMarks||this.options.keepAttributes)&&(t=e({find:m,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:()=>this.editor.getAttributes(h),editor:this.editor})),[t]}}),b=t.create({name:"listItem",addOptions:()=>({HTMLAttributes:{},bulletListTypeName:"bulletList",orderedListTypeName:"orderedList"}),content:"paragraph block*",defining:!0,parseHTML:()=>[{tag:"li"}],renderHTML({HTMLAttributes:t}){return["li",s(this.options.HTMLAttributes,t),0]},markdownTokenName:"list_item",parseMarkdown:(t,e)=>{var s;if("list_item"!==t.type)return[];const n=null!=(s=e.parseBlockChildren)?s:e.parseChildren;let r=[];if(t.tokens&&t.tokens.length>0){if(t.tokens.some((t=>"paragraph"===t.type)))r=n(t.tokens);else{const s=t.tokens[0];if(s&&"text"===s.type&&s.tokens&&s.tokens.length>0){if(r=[{type:"paragraph",content:e.parseInline(s.tokens)}],t.tokens.length>1){const e=n(t.tokens.slice(1));r.push(...e)}}else r=n(t.tokens)}}return 0===r.length&&(r=[{type:"paragraph",content:[]}]),{type:"listItem",content:r}},renderMarkdown:(t,e,s)=>n(t,e,(t=>{var e,s;if("bulletList"===t.parentType)return"- ";if("orderedList"===t.parentType){return`${((null==(s=null==(e=t.meta)?void 0:e.parentAttrs)?void 0:s.start)||1)+t.index}. `}return"- "}),s),addKeyboardShortcuts(){return{Enter:()=>this.editor.commands.splitListItem(this.name),Tab:()=>this.editor.commands.sinkListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)}}}),f={};((t,e)=>{for(var s in e)u(t,s,{get:e[s],enumerable:!0})})(f,{findListItemPos:()=>L,getNextListDepth:()=>y,handleBackspace:()=>v,handleDelete:()=>I,hasListBefore:()=>g,hasListItemAfter:()=>N,hasListItemBefore:()=>T,listItemHasSubList:()=>M,nextListIsDeeper:()=>A,nextListIsHigher:()=>w});var L=(t,e)=>{const{$from:s}=e.selection,n=c(t,e.schema);let r=null,i=s.depth,o=s.pos,a=null;for(;i>0&&null===a;)r=s.node(i),r.type===n?a=i:(i-=1,o-=1);return null===a?null:{$pos:e.doc.resolve(o),depth:a}},y=(t,e)=>{const s=L(t,e);if(!s)return!1;const[,n]=l(e,t,s.$pos.pos+4);return n},g=(t,e,s)=>{const{$anchor:n}=t.selection,r=Math.max(0,n.pos-2),i=t.doc.resolve(r).node();return!(!i||!s.includes(i.type.name))},T=(t,e)=>{var s;const{$anchor:n}=e.selection,r=e.doc.resolve(n.pos-2);return 0!==r.index()&&(null==(s=r.nodeBefore)?void 0:s.type.name)===t},M=(t,e,s)=>{if(!s)return!1;const n=c(t,e.schema);let r=!1;return s.descendants((t=>{t.type===n&&(r=!0)})),r},v=(t,e,s)=>{if(t.commands.undoInputRule())return!0;if(t.state.selection.from!==t.state.selection.to)return!1;if(!a(t.state,e)&&g(t.state,e,s)){const{$anchor:s}=t.state.selection,n=t.state.doc.resolve(s.before()-1),r=[];n.node().descendants(((t,s)=>{t.type.name===e&&r.push({node:t,pos:s})}));const i=r.at(-1);if(!i)return!1;const o=t.state.doc.resolve(n.start()+i.pos+1);return t.chain().cut({from:s.start()-1,to:s.end()+1},o.end()).joinForward().run()}if(!a(t.state,e))return!1;if(!d(t.state))return!1;const n=L(e,t.state);if(!n)return!1;const r=t.state.doc.resolve(n.$pos.pos-2).node(n.depth),i=M(e,t.state,r);return T(e,t.state)&&!i?t.commands.joinItemBackward():t.chain().liftListItem(e).run()},A=(t,e)=>{const s=y(t,e),n=L(t,e);return!(!n||!s)&&s>n.depth},w=(t,e)=>{const s=y(t,e),n=L(t,e);return!(!n||!s)&&s<n.depth},I=(t,e)=>{if(!a(t.state,e))return!1;if(!p(t.state,e))return!1;const{selection:s}=t.state,{$from:n,$to:r}=s;return!(!s.empty&&n.sameParent(r))&&(A(e,t.state)?t.chain().focus(t.state.selection.from+4).lift(e).joinBackward().run():w(e,t.state)?t.chain().joinForward().joinBackward().run():t.commands.joinItemForward())},N=(t,e)=>{var s;const{$anchor:n}=e.selection,r=e.doc.resolve(n.pos-n.parentOffset-2);return r.index()!==r.parent.childCount-1&&(null==(s=r.nodeAfter)?void 0:s.type.name)===t},x=r.create({name:"listKeymap",addOptions:()=>({listTypes:[{itemName:"listItem",wrapperNames:["bulletList","orderedList"]},{itemName:"taskItem",wrapperNames:["taskList"]}]}),addKeyboardShortcuts(){return{Delete:({editor:t})=>{let e=!1;return this.options.listTypes.forEach((({itemName:s})=>{void 0!==t.state.schema.nodes[s]&&I(t,s)&&(e=!0)})),e},"Mod-Delete":({editor:t})=>{let e=!1;return this.options.listTypes.forEach((({itemName:s})=>{void 0!==t.state.schema.nodes[s]&&I(t,s)&&(e=!0)})),e},Backspace:({editor:t})=>{let e=!1;return this.options.listTypes.forEach((({itemName:s,wrapperNames:n})=>{void 0!==t.state.schema.nodes[s]&&v(t,s,n)&&(e=!0)})),e},"Mod-Backspace":({editor:t})=>{let e=!1;return this.options.listTypes.forEach((({itemName:s,wrapperNames:n})=>{void 0!==t.state.schema.nodes[s]&&v(t,s,n)&&(e=!0)})),e}}}}),C=/^(\s*)(\d+)\.\s+(.*)$/,H=/^\s/;function E(t){const e=[],s=[];let n=!1;return t.forEach((t=>{if(!n)return""===t.trim()||e.length>0&&function(t){const e=t.trimStart();return/^[-+*]\s+/.test(e)||/^\d+\.\s+/.test(e)||/^>\s?/.test(e)||/^```/.test(e)||/^~~~/.test(e)}(t)?(n=!0,void s.push(t)):void e.push(t);s.push(t)})),{paragraphLines:e,blockLines:s}}function $(t,e,s){const n=[];let r=0;for(;r<t.length;){const i=t[r];if(i.indent===e){const{paragraphLines:o,blockLines:a}=E(i.contentLines),d=o.join("\n").trim(),p=[];d&&p.push({type:"paragraph",raw:d,tokens:s.inlineTokens(d)});const c=a.join("\n").trim();if(c){const t=s.blockTokens(c);p.push(...t)}let l=r+1;const u=[];for(;l<t.length&&t[l].indent>e;)u.push(t[l]),l+=1;if(u.length>0){const t=Math.min(...u.map((t=>t.indent))),e=$(u,t,s);p.push({type:"list",ordered:!0,start:u[0].number,items:e,raw:u.map((t=>t.raw)).join("\n")})}n.push({type:"list_item",raw:i.raw,tokens:p}),r=l}else r+=1}return n}var O="textStyle",j=/^(\d+)\.\s$/,S=t.create({name:"orderedList",addOptions:()=>({itemTypeName:"listItem",HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}),group:"block list",content(){return`${this.options.itemTypeName}+`},addAttributes:()=>({start:{default:1,parseHTML:t=>t.hasAttribute("start")?parseInt(t.getAttribute("start")||"",10):1},type:{default:null,parseHTML:t=>t.getAttribute("type")}}),parseHTML:()=>[{tag:"ol"}],renderHTML({HTMLAttributes:t}){const{start:e,...n}=t;return 1===e?["ol",s(this.options.HTMLAttributes,n),0]:["ol",s(this.options.HTMLAttributes,t),0]},markdownTokenName:"list",parseMarkdown:(t,e)=>{if("list"!==t.type||!t.ordered)return[];const s=t.start||1,n=t.items?function(t,e){return t.map((t=>{if("list_item"!==t.type)return e.parseChildren([t])[0];const s=[];return t.tokens&&t.tokens.length>0&&t.tokens.forEach((t=>{if("paragraph"===t.type||"list"===t.type||"blockquote"===t.type||"code"===t.type)s.push(...e.parseChildren([t]));else if("text"===t.type&&t.tokens){const n=e.parseChildren([t]);s.push({type:"paragraph",content:n})}else{const n=e.parseChildren([t]);n.length>0&&s.push(...n)}})),{type:"listItem",content:s}}))}(t.items,e):[];return 1!==s?{type:"orderedList",attrs:{start:s},content:n}:{type:"orderedList",content:n}},renderMarkdown:(t,e)=>t.content?e.renderChildren(t.content,"\n"):"",markdownTokenizer:{name:"orderedList",level:"block",start:t=>{const e=t.match(/^(\s*)(\d+)\.\s+/),s=null==e?void 0:e.index;return void 0!==s?s:-1},tokenize:(t,e,s)=>{var n;const r=t.split("\n"),[i,o]=function(t){const e=[];let s=0,n=0;for(;s<t.length;){const r=t[s],i=r.match(C);if(!i)break;const[,o,a,d]=i,p=o.length,c=[d];let l=s+1;const u=[r];let h=!1;for(;l<t.length;){const e=t[l];if(e.match(C))break;if(""===e.trim())u.push(e),c.push(""),h=!0,l+=1;else if(e.match(H))u.push(e),c.push(e.slice(p+2)),l+=1;else{if(h)break;u.push(e),c.push(e),l+=1}}e.push({indent:p,number:parseInt(a,10),content:c.join("\n").trim(),contentLines:c,raw:u.join("\n")}),n=l,s=l}return[e,n]}(r);if(0===i.length)return;const a=$(i,0,s);if(0===a.length)return;return{type:"list",ordered:!0,start:(null==(n=i[0])?void 0:n.number)||1,items:a,raw:r.slice(0,o).join("\n")}}},markdownOptions:{indentsContent:!0},addCommands(){return{toggleOrderedList:()=>({commands:t,chain:e})=>this.options.keepAttributes?e().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes("listItem",this.editor.getAttributes(O)).run():t.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-7":()=>this.editor.commands.toggleOrderedList()}},addInputRules(){let t=e({find:j,type:this.type,getAttributes:t=>({start:+t[1]}),joinPredicate:(t,e)=>e.childCount+e.attrs.start===+t[1]});return(this.options.keepMarks||this.options.keepAttributes)&&(t=e({find:j,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:t=>({start:+t[1],...this.editor.getAttributes(O)}),joinPredicate:(t,e)=>e.childCount+e.attrs.start===+t[1],editor:this.editor})),[t]}}),B=/^\s*(\[([( |x])?\])\s$/,K=t.create({name:"taskItem",addOptions:()=>({nested:!1,HTMLAttributes:{},taskListTypeName:"taskList",a11y:void 0}),content(){return this.options.nested?"paragraph block*":"paragraph+"},defining:!0,addAttributes:()=>({checked:{default:!1,keepOnSplit:!1,parseHTML:t=>{const e=t.getAttribute("data-checked");return""===e||"true"===e},renderHTML:t=>({"data-checked":t.checked})}}),parseHTML(){return[{tag:`li[data-type="${this.name}"]`,priority:51}]},renderHTML({node:t,HTMLAttributes:e}){return["li",s(this.options.HTMLAttributes,e,{"data-type":this.name}),["label",["input",{type:"checkbox",checked:t.attrs.checked?"checked":null}],["span"]],["div",0]]},parseMarkdown:(t,e)=>{const s=[];if(t.tokens&&t.tokens.length>0?s.push(e.createNode("paragraph",{},e.parseInline(t.tokens))):t.text?s.push(e.createNode("paragraph",{},[e.createNode("text",{text:t.text})])):s.push(e.createNode("paragraph",{},[])),t.nestedTokens&&t.nestedTokens.length>0){const n=e.parseChildren(t.nestedTokens);s.push(...n)}return e.createNode("taskItem",{checked:t.checked||!1},s)},renderMarkdown:(t,e)=>{var s;const r=(null==(s=t.attrs)?void 0:s.checked)?"x":" ";return n(t,e,`- [${r}] `)},addKeyboardShortcuts(){const t={Enter:()=>this.editor.commands.splitListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)};return this.options.nested?{...t,Tab:()=>this.editor.commands.sinkListItem(this.name)}:t},addNodeView(){return({node:t,HTMLAttributes:e,getPos:s,editor:n})=>{const r=document.createElement("li"),o=document.createElement("label"),a=document.createElement("span"),d=document.createElement("input"),p=document.createElement("div"),c=t=>{var e,s;d.ariaLabel=(null==(s=null==(e=this.options.a11y)?void 0:e.checkboxLabel)?void 0:s.call(e,t,d.checked))||`Task item checkbox for ${t.textContent||"empty task item"}`};c(t),o.contentEditable="false",d.type="checkbox",d.addEventListener("mousedown",(t=>t.preventDefault())),d.addEventListener("change",(e=>{if(!n.isEditable&&!this.options.onReadOnlyChecked)return void(d.checked=!d.checked);const{checked:r}=e.target;n.isEditable&&"function"==typeof s&&n.chain().focus(void 0,{scrollIntoView:!1}).command((({tr:t})=>{const e=s();if("number"!=typeof e)return!1;const n=t.doc.nodeAt(e);return t.setNodeMarkup(e,void 0,{...null==n?void 0:n.attrs,checked:r}),!0})).run(),!n.isEditable&&this.options.onReadOnlyChecked&&(this.options.onReadOnlyChecked(t,r)||(d.checked=!d.checked))})),Object.entries(this.options.HTMLAttributes).forEach((([t,e])=>{r.setAttribute(t,e)})),r.dataset.checked=t.attrs.checked,d.checked=t.attrs.checked,o.append(d,a),r.append(o,p),Object.entries(e).forEach((([t,e])=>{r.setAttribute(t,e)}));let l=new Set(Object.keys(e));return{dom:r,contentDOM:p,update:t=>{if(t.type!==this.type)return!1;r.dataset.checked=t.attrs.checked,d.checked=t.attrs.checked,c(t);const e=n.extensionManager.attributes,s=i(t,e),o=new Set(Object.keys(s)),a=this.options.HTMLAttributes;return l.forEach((t=>{o.has(t)||(t in a?r.setAttribute(t,a[t]):r.removeAttribute(t))})),Object.entries(s).forEach((([t,e])=>{null==e?t in a?r.setAttribute(t,a[t]):r.removeAttribute(t):r.setAttribute(t,e)})),l=o,!0}}}},addInputRules(){return[e({find:B,type:this.type,getAttributes:t=>({checked:"x"===t[t.length-1]})})]}}),P=t.create({name:"taskList",addOptions:()=>({itemTypeName:"taskItem",HTMLAttributes:{}}),group:"block list",content(){return`${this.options.itemTypeName}+`},parseHTML(){return[{tag:`ul[data-type="${this.name}"]`,priority:51}]},renderHTML({HTMLAttributes:t}){return["ul",s(this.options.HTMLAttributes,t,{"data-type":this.name}),0]},parseMarkdown:(t,e)=>e.createNode("taskList",{},e.parseChildren(t.items||[])),renderMarkdown:(t,e)=>t.content?e.renderChildren(t.content,"\n"):"",markdownTokenizer:{name:"taskList",level:"block",start(t){var e;const s=null==(e=t.match(/^\s*[-+*]\s+\[([ xX])\]\s+/))?void 0:e.index;return void 0!==s?s:-1},tokenize(t,e,s){const n=t=>{const e=o(t,{itemPattern:/^(\s*)([-+*])\s+\[([ xX])\]\s+(.*)$/,extractItemData:t=>({indentLevel:t[1].length,mainContent:t[4],checked:"x"===t[3].toLowerCase()}),createToken:(t,e)=>({type:"taskItem",raw:"",mainContent:t.mainContent,indentLevel:t.indentLevel,checked:t.checked,text:t.mainContent,tokens:s.inlineTokens(t.mainContent),nestedTokens:e}),customNestedParser:n},s);return e?[{type:"taskList",raw:e.raw,items:e.items}]:s.blockTokens(t)},r=o(t,{itemPattern:/^(\s*)([-+*])\s+\[([ xX])\]\s+(.*)$/,extractItemData:t=>({indentLevel:t[1].length,mainContent:t[4],checked:"x"===t[3].toLowerCase()}),createToken:(t,e)=>({type:"taskItem",raw:"",mainContent:t.mainContent,indentLevel:t.indentLevel,checked:t.checked,text:t.mainContent,tokens:s.inlineTokens(t.mainContent),nestedTokens:e}),customNestedParser:n},s);if(r)return{type:"taskList",raw:r.raw,items:r.items}}},markdownOptions:{indentsContent:!0},addCommands(){return{toggleTaskList:()=>({commands:t})=>t.toggleList(this.name,this.options.itemTypeName)}},addKeyboardShortcuts(){return{"Mod-Shift-9":()=>this.editor.commands.toggleTaskList()}}});r.create({name:"listKit",addExtensions(){const t=[];return!1!==this.options.bulletList&&t.push(k.configure(this.options.bulletList)),!1!==this.options.listItem&&t.push(b.configure(this.options.listItem)),!1!==this.options.listKeymap&&t.push(x.configure(this.options.listKeymap)),!1!==this.options.orderedList&&t.push(S.configure(this.options.orderedList)),!1!==this.options.taskItem&&t.push(K.configure(this.options.taskItem)),!1!==this.options.taskList&&t.push(P.configure(this.options.taskList)),t}});export{k as BulletList,b as ListItem,x as ListKeymap,S as OrderedList,K as TaskItem,P as TaskList,m as bulletListInputRegex,B as inputRegex,f as listHelpers,j as orderedListInputRegex};
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../../node_modules/@tiptap/extension-list/dist/index.js"],"sourcesContent":["var __defProp = Object.defineProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\n\n// src/bullet-list/bullet-list.ts\nimport { mergeAttributes, Node, wrappingInputRule } from \"@tiptap/core\";\nvar ListItemName = \"listItem\";\nvar TextStyleName = \"textStyle\";\nvar bulletListInputRegex = /^\\s*([-+*])\\s$/;\nvar BulletList = Node.create({\n name: \"bulletList\",\n addOptions() {\n return {\n itemTypeName: \"listItem\",\n HTMLAttributes: {},\n keepMarks: false,\n keepAttributes: false\n };\n },\n group: \"block list\",\n content() {\n return `${this.options.itemTypeName}+`;\n },\n parseHTML() {\n return [{ tag: \"ul\" }];\n },\n renderHTML({ HTMLAttributes }) {\n return [\"ul\", mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];\n },\n addCommands() {\n return {\n toggleBulletList: () => ({ commands, chain }) => {\n if (this.options.keepAttributes) {\n return chain().toggleList(this.name, this.options.itemTypeName, this.options.keepMarks).updateAttributes(ListItemName, this.editor.getAttributes(TextStyleName)).run();\n }\n return commands.toggleList(this.name, this.options.itemTypeName, this.options.keepMarks);\n }\n };\n },\n addKeyboardShortcuts() {\n return {\n \"Mod-Shift-8\": () => this.editor.commands.toggleBulletList()\n };\n },\n addInputRules() {\n let inputRule = wrappingInputRule({\n find: bulletListInputRegex,\n type: this.type\n });\n if (this.options.keepMarks || this.options.keepAttributes) {\n inputRule = wrappingInputRule({\n find: bulletListInputRegex,\n type: this.type,\n keepMarks: this.options.keepMarks,\n keepAttributes: this.options.keepAttributes,\n getAttributes: () => {\n return this.editor.getAttributes(TextStyleName);\n },\n editor: this.editor\n });\n }\n return [inputRule];\n }\n});\n\n// src/item/list-item.ts\nimport { mergeAttributes as mergeAttributes2, Node as Node2 } from \"@tiptap/core\";\nvar ListItem = Node2.create({\n name: \"listItem\",\n addOptions() {\n return {\n HTMLAttributes: {},\n bulletListTypeName: \"bulletList\",\n orderedListTypeName: \"orderedList\"\n };\n },\n content: \"paragraph block*\",\n defining: true,\n parseHTML() {\n return [\n {\n tag: \"li\"\n }\n ];\n },\n renderHTML({ HTMLAttributes }) {\n return [\"li\", mergeAttributes2(this.options.HTMLAttributes, HTMLAttributes), 0];\n },\n addKeyboardShortcuts() {\n return {\n Enter: () => this.editor.commands.splitListItem(this.name),\n Tab: () => this.editor.commands.sinkListItem(this.name),\n \"Shift-Tab\": () => this.editor.commands.liftListItem(this.name)\n };\n }\n});\n\n// src/keymap/list-keymap.ts\nimport { Extension } from \"@tiptap/core\";\n\n// src/keymap/listHelpers/index.ts\nvar listHelpers_exports = {};\n__export(listHelpers_exports, {\n findListItemPos: () => findListItemPos,\n getNextListDepth: () => getNextListDepth,\n handleBackspace: () => handleBackspace,\n handleDelete: () => handleDelete,\n hasListBefore: () => hasListBefore,\n hasListItemAfter: () => hasListItemAfter,\n hasListItemBefore: () => hasListItemBefore,\n listItemHasSubList: () => listItemHasSubList,\n nextListIsDeeper: () => nextListIsDeeper,\n nextListIsHigher: () => nextListIsHigher\n});\n\n// src/keymap/listHelpers/findListItemPos.ts\nimport { getNodeType } from \"@tiptap/core\";\nvar findListItemPos = (typeOrName, state) => {\n const { $from } = state.selection;\n const nodeType = getNodeType(typeOrName, state.schema);\n let currentNode = null;\n let currentDepth = $from.depth;\n let currentPos = $from.pos;\n let targetDepth = null;\n while (currentDepth > 0 && targetDepth === null) {\n currentNode = $from.node(currentDepth);\n if (currentNode.type === nodeType) {\n targetDepth = currentDepth;\n } else {\n currentDepth -= 1;\n currentPos -= 1;\n }\n }\n if (targetDepth === null) {\n return null;\n }\n return { $pos: state.doc.resolve(currentPos), depth: targetDepth };\n};\n\n// src/keymap/listHelpers/getNextListDepth.ts\nimport { getNodeAtPosition } from \"@tiptap/core\";\nvar getNextListDepth = (typeOrName, state) => {\n const listItemPos = findListItemPos(typeOrName, state);\n if (!listItemPos) {\n return false;\n }\n const [, depth] = getNodeAtPosition(state, typeOrName, listItemPos.$pos.pos + 4);\n return depth;\n};\n\n// src/keymap/listHelpers/handleBackspace.ts\nimport { isAtStartOfNode, isNodeActive } from \"@tiptap/core\";\n\n// src/keymap/listHelpers/hasListBefore.ts\nvar hasListBefore = (editorState, name, parentListTypes) => {\n const { $anchor } = editorState.selection;\n const previousNodePos = Math.max(0, $anchor.pos - 2);\n const previousNode = editorState.doc.resolve(previousNodePos).node();\n if (!previousNode || !parentListTypes.includes(previousNode.type.name)) {\n return false;\n }\n return true;\n};\n\n// src/keymap/listHelpers/hasListItemBefore.ts\nvar hasListItemBefore = (typeOrName, state) => {\n var _a;\n const { $anchor } = state.selection;\n const $targetPos = state.doc.resolve($anchor.pos - 2);\n if ($targetPos.index() === 0) {\n return false;\n }\n if (((_a = $targetPos.nodeBefore) == null ? void 0 : _a.type.name) !== typeOrName) {\n return false;\n }\n return true;\n};\n\n// src/keymap/listHelpers/listItemHasSubList.ts\nimport { getNodeType as getNodeType2 } from \"@tiptap/core\";\nvar listItemHasSubList = (typeOrName, state, node) => {\n if (!node) {\n return false;\n }\n const nodeType = getNodeType2(typeOrName, state.schema);\n let hasSubList = false;\n node.descendants((child) => {\n if (child.type === nodeType) {\n hasSubList = true;\n }\n });\n return hasSubList;\n};\n\n// src/keymap/listHelpers/handleBackspace.ts\nvar handleBackspace = (editor, name, parentListTypes) => {\n if (editor.commands.undoInputRule()) {\n return true;\n }\n if (editor.state.selection.from !== editor.state.selection.to) {\n return false;\n }\n if (!isNodeActive(editor.state, name) && hasListBefore(editor.state, name, parentListTypes)) {\n const { $anchor } = editor.state.selection;\n const $listPos = editor.state.doc.resolve($anchor.before() - 1);\n const listDescendants = [];\n $listPos.node().descendants((node, pos) => {\n if (node.type.name === name) {\n listDescendants.push({ node, pos });\n }\n });\n const lastItem = listDescendants.at(-1);\n if (!lastItem) {\n return false;\n }\n const $lastItemPos = editor.state.doc.resolve($listPos.start() + lastItem.pos + 1);\n return editor.chain().cut({ from: $anchor.start() - 1, to: $anchor.end() + 1 }, $lastItemPos.end()).joinForward().run();\n }\n if (!isNodeActive(editor.state, name)) {\n return false;\n }\n if (!isAtStartOfNode(editor.state)) {\n return false;\n }\n const listItemPos = findListItemPos(name, editor.state);\n if (!listItemPos) {\n return false;\n }\n const $prev = editor.state.doc.resolve(listItemPos.$pos.pos - 2);\n const prevNode = $prev.node(listItemPos.depth);\n const previousListItemHasSubList = listItemHasSubList(name, editor.state, prevNode);\n if (hasListItemBefore(name, editor.state) && !previousListItemHasSubList) {\n return editor.commands.joinItemBackward();\n }\n return editor.chain().liftListItem(name).run();\n};\n\n// src/keymap/listHelpers/handleDelete.ts\nimport { isAtEndOfNode, isNodeActive as isNodeActive2 } from \"@tiptap/core\";\n\n// src/keymap/listHelpers/nextListIsDeeper.ts\nvar nextListIsDeeper = (typeOrName, state) => {\n const listDepth = getNextListDepth(typeOrName, state);\n const listItemPos = findListItemPos(typeOrName, state);\n if (!listItemPos || !listDepth) {\n return false;\n }\n if (listDepth > listItemPos.depth) {\n return true;\n }\n return false;\n};\n\n// src/keymap/listHelpers/nextListIsHigher.ts\nvar nextListIsHigher = (typeOrName, state) => {\n const listDepth = getNextListDepth(typeOrName, state);\n const listItemPos = findListItemPos(typeOrName, state);\n if (!listItemPos || !listDepth) {\n return false;\n }\n if (listDepth < listItemPos.depth) {\n return true;\n }\n return false;\n};\n\n// src/keymap/listHelpers/handleDelete.ts\nvar handleDelete = (editor, name) => {\n if (!isNodeActive2(editor.state, name)) {\n return false;\n }\n if (!isAtEndOfNode(editor.state, name)) {\n return false;\n }\n const { selection } = editor.state;\n const { $from, $to } = selection;\n if (!selection.empty && $from.sameParent($to)) {\n return false;\n }\n if (nextListIsDeeper(name, editor.state)) {\n return editor.chain().focus(editor.state.selection.from + 4).lift(name).joinBackward().run();\n }\n if (nextListIsHigher(name, editor.state)) {\n return editor.chain().joinForward().joinBackward().run();\n }\n return editor.commands.joinItemForward();\n};\n\n// src/keymap/listHelpers/hasListItemAfter.ts\nvar hasListItemAfter = (typeOrName, state) => {\n var _a;\n const { $anchor } = state.selection;\n const $targetPos = state.doc.resolve($anchor.pos - $anchor.parentOffset - 2);\n if ($targetPos.index() === $targetPos.parent.childCount - 1) {\n return false;\n }\n if (((_a = $targetPos.nodeAfter) == null ? void 0 : _a.type.name) !== typeOrName) {\n return false;\n }\n return true;\n};\n\n// src/keymap/list-keymap.ts\nvar ListKeymap = Extension.create({\n name: \"listKeymap\",\n addOptions() {\n return {\n listTypes: [\n {\n itemName: \"listItem\",\n wrapperNames: [\"bulletList\", \"orderedList\"]\n },\n {\n itemName: \"taskItem\",\n wrapperNames: [\"taskList\"]\n }\n ]\n };\n },\n addKeyboardShortcuts() {\n return {\n Delete: ({ editor }) => {\n let handled = false;\n this.options.listTypes.forEach(({ itemName }) => {\n if (editor.state.schema.nodes[itemName] === void 0) {\n return;\n }\n if (handleDelete(editor, itemName)) {\n handled = true;\n }\n });\n return handled;\n },\n \"Mod-Delete\": ({ editor }) => {\n let handled = false;\n this.options.listTypes.forEach(({ itemName }) => {\n if (editor.state.schema.nodes[itemName] === void 0) {\n return;\n }\n if (handleDelete(editor, itemName)) {\n handled = true;\n }\n });\n return handled;\n },\n Backspace: ({ editor }) => {\n let handled = false;\n this.options.listTypes.forEach(({ itemName, wrapperNames }) => {\n if (editor.state.schema.nodes[itemName] === void 0) {\n return;\n }\n if (handleBackspace(editor, itemName, wrapperNames)) {\n handled = true;\n }\n });\n return handled;\n },\n \"Mod-Backspace\": ({ editor }) => {\n let handled = false;\n this.options.listTypes.forEach(({ itemName, wrapperNames }) => {\n if (editor.state.schema.nodes[itemName] === void 0) {\n return;\n }\n if (handleBackspace(editor, itemName, wrapperNames)) {\n handled = true;\n }\n });\n return handled;\n }\n };\n }\n});\n\n// src/kit/index.ts\nimport { Extension as Extension2 } from \"@tiptap/core\";\n\n// src/ordered-list/ordered-list.ts\nimport { mergeAttributes as mergeAttributes3, Node as Node3, wrappingInputRule as wrappingInputRule2 } from \"@tiptap/core\";\nvar ListItemName2 = \"listItem\";\nvar TextStyleName2 = \"textStyle\";\nvar orderedListInputRegex = /^(\\d+)\\.\\s$/;\nvar OrderedList = Node3.create({\n name: \"orderedList\",\n addOptions() {\n return {\n itemTypeName: \"listItem\",\n HTMLAttributes: {},\n keepMarks: false,\n keepAttributes: false\n };\n },\n group: \"block list\",\n content() {\n return `${this.options.itemTypeName}+`;\n },\n addAttributes() {\n return {\n start: {\n default: 1,\n parseHTML: (element) => {\n return element.hasAttribute(\"start\") ? parseInt(element.getAttribute(\"start\") || \"\", 10) : 1;\n }\n },\n type: {\n default: null,\n parseHTML: (element) => element.getAttribute(\"type\")\n }\n };\n },\n parseHTML() {\n return [\n {\n tag: \"ol\"\n }\n ];\n },\n renderHTML({ HTMLAttributes }) {\n const { start, ...attributesWithoutStart } = HTMLAttributes;\n return start === 1 ? [\"ol\", mergeAttributes3(this.options.HTMLAttributes, attributesWithoutStart), 0] : [\"ol\", mergeAttributes3(this.options.HTMLAttributes, HTMLAttributes), 0];\n },\n addCommands() {\n return {\n toggleOrderedList: () => ({ commands, chain }) => {\n if (this.options.keepAttributes) {\n return chain().toggleList(this.name, this.options.itemTypeName, this.options.keepMarks).updateAttributes(ListItemName2, this.editor.getAttributes(TextStyleName2)).run();\n }\n return commands.toggleList(this.name, this.options.itemTypeName, this.options.keepMarks);\n }\n };\n },\n addKeyboardShortcuts() {\n return {\n \"Mod-Shift-7\": () => this.editor.commands.toggleOrderedList()\n };\n },\n addInputRules() {\n let inputRule = wrappingInputRule2({\n find: orderedListInputRegex,\n type: this.type,\n getAttributes: (match) => ({ start: +match[1] }),\n joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1]\n });\n if (this.options.keepMarks || this.options.keepAttributes) {\n inputRule = wrappingInputRule2({\n find: orderedListInputRegex,\n type: this.type,\n keepMarks: this.options.keepMarks,\n keepAttributes: this.options.keepAttributes,\n getAttributes: (match) => ({ start: +match[1], ...this.editor.getAttributes(TextStyleName2) }),\n joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1],\n editor: this.editor\n });\n }\n return [inputRule];\n }\n});\n\n// src/task-item/task-item.ts\nimport { mergeAttributes as mergeAttributes4, Node as Node4, wrappingInputRule as wrappingInputRule3 } from \"@tiptap/core\";\nvar inputRegex = /^\\s*(\\[([( |x])?\\])\\s$/;\nvar TaskItem = Node4.create({\n name: \"taskItem\",\n addOptions() {\n return {\n nested: false,\n HTMLAttributes: {},\n taskListTypeName: \"taskList\",\n a11y: void 0\n };\n },\n content() {\n return this.options.nested ? \"paragraph block*\" : \"paragraph+\";\n },\n defining: true,\n addAttributes() {\n return {\n checked: {\n default: false,\n keepOnSplit: false,\n parseHTML: (element) => {\n const dataChecked = element.getAttribute(\"data-checked\");\n return dataChecked === \"\" || dataChecked === \"true\";\n },\n renderHTML: (attributes) => ({\n \"data-checked\": attributes.checked\n })\n }\n };\n },\n parseHTML() {\n return [\n {\n tag: `li[data-type=\"${this.name}\"]`,\n priority: 51\n }\n ];\n },\n renderHTML({ node, HTMLAttributes }) {\n return [\n \"li\",\n mergeAttributes4(this.options.HTMLAttributes, HTMLAttributes, {\n \"data-type\": this.name\n }),\n [\n \"label\",\n [\n \"input\",\n {\n type: \"checkbox\",\n checked: node.attrs.checked ? \"checked\" : null\n }\n ],\n [\"span\"]\n ],\n [\"div\", 0]\n ];\n },\n addKeyboardShortcuts() {\n const shortcuts = {\n Enter: () => this.editor.commands.splitListItem(this.name),\n \"Shift-Tab\": () => this.editor.commands.liftListItem(this.name)\n };\n if (!this.options.nested) {\n return shortcuts;\n }\n return {\n ...shortcuts,\n Tab: () => this.editor.commands.sinkListItem(this.name)\n };\n },\n addNodeView() {\n return ({ node, HTMLAttributes, getPos, editor }) => {\n const listItem = document.createElement(\"li\");\n const checkboxWrapper = document.createElement(\"label\");\n const checkboxStyler = document.createElement(\"span\");\n const checkbox = document.createElement(\"input\");\n const content = document.createElement(\"div\");\n const updateA11Y = () => {\n var _a, _b;\n checkbox.ariaLabel = ((_b = (_a = this.options.a11y) == null ? void 0 : _a.checkboxLabel) == null ? void 0 : _b.call(_a, node, checkbox.checked)) || `Task item checkbox for ${node.textContent || \"empty task item\"}`;\n };\n updateA11Y();\n checkboxWrapper.contentEditable = \"false\";\n checkbox.type = \"checkbox\";\n checkbox.addEventListener(\"mousedown\", (event) => event.preventDefault());\n checkbox.addEventListener(\"change\", (event) => {\n if (!editor.isEditable && !this.options.onReadOnlyChecked) {\n checkbox.checked = !checkbox.checked;\n return;\n }\n const { checked } = event.target;\n if (editor.isEditable && typeof getPos === \"function\") {\n editor.chain().focus(void 0, { scrollIntoView: false }).command(({ tr }) => {\n const position = getPos();\n if (typeof position !== \"number\") {\n return false;\n }\n const currentNode = tr.doc.nodeAt(position);\n tr.setNodeMarkup(position, void 0, {\n ...currentNode == null ? void 0 : currentNode.attrs,\n checked\n });\n return true;\n }).run();\n }\n if (!editor.isEditable && this.options.onReadOnlyChecked) {\n if (!this.options.onReadOnlyChecked(node, checked)) {\n checkbox.checked = !checkbox.checked;\n }\n }\n });\n Object.entries(this.options.HTMLAttributes).forEach(([key, value]) => {\n listItem.setAttribute(key, value);\n });\n listItem.dataset.checked = node.attrs.checked;\n checkbox.checked = node.attrs.checked;\n checkboxWrapper.append(checkbox, checkboxStyler);\n listItem.append(checkboxWrapper, content);\n Object.entries(HTMLAttributes).forEach(([key, value]) => {\n listItem.setAttribute(key, value);\n });\n return {\n dom: listItem,\n contentDOM: content,\n update: (updatedNode) => {\n if (updatedNode.type !== this.type) {\n return false;\n }\n listItem.dataset.checked = updatedNode.attrs.checked;\n checkbox.checked = updatedNode.attrs.checked;\n updateA11Y();\n return true;\n }\n };\n };\n },\n addInputRules() {\n return [\n wrappingInputRule3({\n find: inputRegex,\n type: this.type,\n getAttributes: (match) => ({\n checked: match[match.length - 1] === \"x\"\n })\n })\n ];\n }\n});\n\n// src/task-list/task-list.ts\nimport { mergeAttributes as mergeAttributes5, Node as Node5 } from \"@tiptap/core\";\nvar TaskList = Node5.create({\n name: \"taskList\",\n addOptions() {\n return {\n itemTypeName: \"taskItem\",\n HTMLAttributes: {}\n };\n },\n group: \"block list\",\n content() {\n return `${this.options.itemTypeName}+`;\n },\n parseHTML() {\n return [\n {\n tag: `ul[data-type=\"${this.name}\"]`,\n priority: 51\n }\n ];\n },\n renderHTML({ HTMLAttributes }) {\n return [\"ul\", mergeAttributes5(this.options.HTMLAttributes, HTMLAttributes, { \"data-type\": this.name }), 0];\n },\n addCommands() {\n return {\n toggleTaskList: () => ({ commands }) => {\n return commands.toggleList(this.name, this.options.itemTypeName);\n }\n };\n },\n addKeyboardShortcuts() {\n return {\n \"Mod-Shift-9\": () => this.editor.commands.toggleTaskList()\n };\n }\n});\n\n// src/kit/index.ts\nvar ListKit = Extension2.create({\n name: \"listKit\",\n addExtensions() {\n const extensions = [];\n if (this.options.bulletList !== false) {\n extensions.push(BulletList.configure(this.options.bulletList));\n }\n if (this.options.listItem !== false) {\n extensions.push(ListItem.configure(this.options.listItem));\n }\n if (this.options.listKeymap !== false) {\n extensions.push(ListKeymap.configure(this.options.listKeymap));\n }\n if (this.options.orderedList !== false) {\n extensions.push(OrderedList.configure(this.options.orderedList));\n }\n if (this.options.taskItem !== false) {\n extensions.push(TaskItem.configure(this.options.taskItem));\n }\n if (this.options.taskList !== false) {\n extensions.push(TaskList.configure(this.options.taskList));\n }\n return extensions;\n }\n});\nexport {\n BulletList,\n ListItem,\n ListKeymap,\n ListKit,\n OrderedList,\n TaskItem,\n TaskList,\n bulletListInputRegex,\n inputRegex,\n listHelpers_exports as listHelpers,\n orderedListInputRegex\n};\n//# sourceMappingURL=index.js.map"],"names":["__defProp","Object","defineProperty","TextStyleName","bulletListInputRegex","BulletList","Node","create","name","addOptions","itemTypeName","HTMLAttributes","keepMarks","keepAttributes","group","content","this","options","parseHTML","tag","renderHTML","mergeAttributes","addCommands","toggleBulletList","commands","chain","toggleList","updateAttributes","editor","getAttributes","run","addKeyboardShortcuts","addInputRules","inputRule","wrappingInputRule","find","type","ListItem","Node2","bulletListTypeName","orderedListTypeName","defining","mergeAttributes2","Enter","splitListItem","Tab","sinkListItem","liftListItem","listHelpers_exports","target","all","get","enumerable","__export","findListItemPos","getNextListDepth","handleBackspace","handleDelete","hasListBefore","hasListItemAfter","hasListItemBefore","listItemHasSubList","nextListIsDeeper","nextListIsHigher","typeOrName","state","$from","selection","nodeType","getNodeType","schema","currentNode","currentDepth","depth","currentPos","pos","targetDepth","node","$pos","doc","resolve","listItemPos","getNodeAtPosition","editorState","parentListTypes","$anchor","previousNodePos","Math","max","previousNode","includes","_a","$targetPos","index","nodeBefore","getNodeType2","hasSubList","descendants","child","undoInputRule","from","to","isNodeActive","$listPos","before","listDescendants","push","lastItem","at","$lastItemPos","start","cut","end","joinForward","isAtStartOfNode","prevNode","previousListItemHasSubList","joinItemBackward","listDepth","isNodeActive2","isAtEndOfNode","$to","empty","sameParent","focus","lift","joinBackward","joinItemForward","parentOffset","parent","childCount","nodeAfter","ListKeymap","Extension","listTypes","itemName","wrapperNames","Delete","handled","forEach","nodes","Backspace","TextStyleName2","orderedListInputRegex","OrderedList","Node3","addAttributes","default","element","hasAttribute","parseInt","getAttribute","attributesWithoutStart","mergeAttributes3","toggleOrderedList","wrappingInputRule2","match","joinPredicate","attrs","inputRegex","TaskItem","Node4","nested","taskListTypeName","a11y","checked","keepOnSplit","dataChecked","attributes","priority","mergeAttributes4","shortcuts","addNodeView","getPos","listItem","document","createElement","checkboxWrapper","checkboxStyler","checkbox","updateA11Y","_b","ariaLabel","checkboxLabel","call","textContent","contentEditable","addEventListener","event","preventDefault","isEditable","onReadOnlyChecked","scrollIntoView","command","tr","position","nodeAt","setNodeMarkup","entries","key","value","setAttribute","dataset","append","dom","contentDOM","update","updatedNode","wrappingInputRule3","length","TaskList","Node5","mergeAttributes5","toggleTaskList","Extension2","addExtensions","extensions","bulletList","configure","listKeymap","orderedList","taskItem","taskList"],"mappings":"8MAAA,IAAIA,EAAYC,OAAOC,eASnBC,EAAgB,YAChBC,EAAuB,iBACvBC,EAAaC,EAAKC,OAAO,CAC3BC,KAAM,aACNC,WAAU,KACD,CACLC,aAAc,WACdC,eAAgB,CAAA,EAChBC,WAAW,EACXC,gBAAgB,IAGpBC,MAAO,aACP,OAAAC,GACE,MAAO,GAAGC,KAAKC,QAAQP,eACzB,EACAQ,UAAS,IACA,CAAC,CAAEC,IAAK,OAEjB,UAAAC,EAAWT,eAAEA,IACX,MAAO,CAAC,KAAMU,EAAgBL,KAAKC,QAAQN,eAAgBA,GAAiB,EAC9E,EACA,WAAAW,GACE,MAAO,CACLC,iBAAkB,IAAM,EAAGC,WAAUC,WAC/BT,KAAKC,QAAQJ,eACRY,IAAQC,WAAWV,KAAKR,KAAMQ,KAAKC,QAAQP,aAAcM,KAAKC,QAAQL,WAAWe,iBA3B/E,WA2B8GX,KAAKY,OAAOC,cAAc1B,IAAgB2B,MAE5JN,EAASE,WAAWV,KAAKR,KAAMQ,KAAKC,QAAQP,aAAcM,KAAKC,QAAQL,WAGpF,EACA,oBAAAmB,GACE,MAAO,CACL,cAAe,IAAMf,KAAKY,OAAOJ,SAASD,mBAE9C,EACA,aAAAS,GACE,IAAIC,EAAYC,EAAkB,CAChCC,KAAM/B,EACNgC,KAAMpB,KAAKoB,OAcb,OAZIpB,KAAKC,QAAQL,WAAaI,KAAKC,QAAQJ,kBACzCoB,EAAYC,EAAkB,CAC5BC,KAAM/B,EACNgC,KAAMpB,KAAKoB,KACXxB,UAAWI,KAAKC,QAAQL,UACxBC,eAAgBG,KAAKC,QAAQJ,eAC7BgB,cAAe,IACNb,KAAKY,OAAOC,cAAc1B,GAEnCyB,OAAQZ,KAAKY,UAGV,CAACK,EACV,IAKEI,EAAWC,EAAM/B,OAAO,CAC1BC,KAAM,WACNC,WAAU,KACD,CACLE,eAAgB,CAAA,EAChB4B,mBAAoB,aACpBC,oBAAqB,gBAGzBzB,QAAS,mBACT0B,UAAU,EACVvB,UAAS,IACA,CACL,CACEC,IAAK,OAIX,UAAAC,EAAWT,eAAEA,IACX,MAAO,CAAC,KAAM+B,EAAiB1B,KAAKC,QAAQN,eAAgBA,GAAiB,EAC/E,EACA,oBAAAoB,GACE,MAAO,CACLY,MAAO,IAAM3B,KAAKY,OAAOJ,SAASoB,cAAc5B,KAAKR,MACrDqC,IAAK,IAAM7B,KAAKY,OAAOJ,SAASsB,aAAa9B,KAAKR,MAClD,YAAa,IAAMQ,KAAKY,OAAOJ,SAASuB,aAAa/B,KAAKR,MAE9D,IAOEwC,EAAsB,CAAA,EAtGX,EAACC,EAAQC,KACtB,IAAK,IAAI1C,KAAQ0C,EACflD,EAAUiD,EAAQzC,EAAM,CAAE2C,IAAKD,EAAI1C,GAAO4C,YAAY,KAqG1DC,CAASL,EAAqB,CAC5BM,gBAAiB,IAAMA,EACvBC,iBAAkB,IAAMA,EACxBC,gBAAiB,IAAMA,EACvBC,aAAc,IAAMA,EACpBC,cAAe,IAAMA,EACrBC,iBAAkB,IAAMA,EACxBC,kBAAmB,IAAMA,EACzBC,mBAAoB,IAAMA,EAC1BC,iBAAkB,IAAMA,EACxBC,iBAAkB,IAAMA,IAK1B,IAAIT,EAAkB,CAACU,EAAYC,KACjC,MAAMC,MAAEA,GAAUD,EAAME,UAClBC,EAAWC,EAAYL,EAAYC,EAAMK,QAC/C,IAAIC,EAAc,KACdC,EAAeN,EAAMO,MACrBC,EAAaR,EAAMS,IACnBC,EAAc,KAClB,KAAOJ,EAAe,GAAqB,OAAhBI,GACzBL,EAAcL,EAAMW,KAAKL,GACrBD,EAAYnC,OAASgC,EACvBQ,EAAcJ,GAEdA,GAAgB,EAChBE,GAAc,GAGlB,OAAoB,OAAhBE,EACK,KAEF,CAAEE,KAAMb,EAAMc,IAAIC,QAAQN,GAAaD,MAAOG,IAKnDrB,EAAmB,CAACS,EAAYC,KAClC,MAAMgB,EAAc3B,EAAgBU,EAAYC,GAChD,IAAKgB,EACH,OAAO,EAET,MAAM,CAAGR,GAASS,EAAkBjB,EAAOD,EAAYiB,EAAYH,KAAKH,IAAM,GAC9E,OAAOF,GAOLf,EAAgB,CAACyB,EAAa3E,EAAM4E,KACtC,MAAMC,QAAEA,GAAYF,EAAYhB,UAC1BmB,EAAkBC,KAAKC,IAAI,EAAGH,EAAQV,IAAM,GAC5Cc,EAAeN,EAAYJ,IAAIC,QAAQM,GAAiBT,OAC9D,SAAKY,IAAiBL,EAAgBM,SAASD,EAAarD,KAAK5B,QAO/DoD,EAAoB,CAACI,EAAYC,KACnC,IAAI0B,EACJ,MAAMN,QAAEA,GAAYpB,EAAME,UACpByB,EAAa3B,EAAMc,IAAIC,QAAQK,EAAQV,IAAM,GACnD,OAA2B,IAAvBiB,EAAWC,UAGsB,OAA/BF,EAAKC,EAAWE,iBAAsB,EAASH,EAAGvD,KAAK5B,QAAUwD,GAQrEH,EAAqB,CAACG,EAAYC,EAAOY,KAC3C,IAAKA,EACH,OAAO,EAET,MAAMT,EAAW2B,EAAa/B,EAAYC,EAAMK,QAChD,IAAI0B,GAAa,EAMjB,OALAnB,EAAKoB,aAAaC,IACZA,EAAM9D,OAASgC,IACjB4B,GAAa,MAGVA,GAILxC,EAAkB,CAAC5B,EAAQpB,EAAM4E,KACnC,GAAIxD,EAAOJ,SAAS2E,gBAClB,OAAO,EAET,GAAIvE,EAAOqC,MAAME,UAAUiC,OAASxE,EAAOqC,MAAME,UAAUkC,GACzD,OAAO,EAET,IAAKC,EAAa1E,EAAOqC,MAAOzD,IAASkD,EAAc9B,EAAOqC,MAAOzD,EAAM4E,GAAkB,CAC3F,MAAMC,QAAEA,GAAYzD,EAAOqC,MAAME,UAC3BoC,EAAW3E,EAAOqC,MAAMc,IAAIC,QAAQK,EAAQmB,SAAW,GACvDC,EAAkB,GACxBF,EAAS1B,OAAOoB,aAAY,CAACpB,EAAMF,KAC7BE,EAAKzC,KAAK5B,OAASA,GACrBiG,EAAgBC,KAAK,CAAE7B,OAAMF,WAGjC,MAAMgC,EAAWF,EAAgBG,OACjC,IAAKD,EACH,OAAO,EAET,MAAME,EAAejF,EAAOqC,MAAMc,IAAIC,QAAQuB,EAASO,QAAUH,EAAShC,IAAM,GAChF,OAAO/C,EAAOH,QAAQsF,IAAI,CAAEX,KAAMf,EAAQyB,QAAU,EAAGT,GAAIhB,EAAQ2B,MAAQ,GAAKH,EAAaG,OAAOC,cAAcnF,KACpH,CACA,IAAKwE,EAAa1E,EAAOqC,MAAOzD,GAC9B,OAAO,EAET,IAAK0G,EAAgBtF,EAAOqC,OAC1B,OAAO,EAET,MAAMgB,EAAc3B,EAAgB9C,EAAMoB,EAAOqC,OACjD,IAAKgB,EACH,OAAO,EAET,MACMkC,EADQvF,EAAOqC,MAAMc,IAAIC,QAAQC,EAAYH,KAAKH,IAAM,GACvCE,KAAKI,EAAYR,OAClC2C,EAA6BvD,EAAmBrD,EAAMoB,EAAOqC,MAAOkD,GAC1E,OAAIvD,EAAkBpD,EAAMoB,EAAOqC,SAAWmD,EACrCxF,EAAOJ,SAAS6F,mBAElBzF,EAAOH,QAAQsB,aAAavC,GAAMsB,OAOvCgC,EAAmB,CAACE,EAAYC,KAClC,MAAMqD,EAAY/D,EAAiBS,EAAYC,GACzCgB,EAAc3B,EAAgBU,EAAYC,GAChD,SAAKgB,IAAgBqC,IAGjBA,EAAYrC,EAAYR,OAO1BV,EAAmB,CAACC,EAAYC,KAClC,MAAMqD,EAAY/D,EAAiBS,EAAYC,GACzCgB,EAAc3B,EAAgBU,EAAYC,GAChD,SAAKgB,IAAgBqC,IAGjBA,EAAYrC,EAAYR,OAO1BhB,EAAe,CAAC7B,EAAQpB,KAC1B,IAAK+G,EAAc3F,EAAOqC,MAAOzD,GAC/B,OAAO,EAET,IAAKgH,EAAc5F,EAAOqC,MAAOzD,GAC/B,OAAO,EAET,MAAM2D,UAAEA,GAAcvC,EAAOqC,OACvBC,MAAEA,EAAKuD,IAAEA,GAAQtD,EACvB,SAAKA,EAAUuD,OAASxD,EAAMyD,WAAWF,MAGrC3D,EAAiBtD,EAAMoB,EAAOqC,OACzBrC,EAAOH,QAAQmG,MAAMhG,EAAOqC,MAAME,UAAUiC,KAAO,GAAGyB,KAAKrH,GAAMsH,eAAehG,MAErFiC,EAAiBvD,EAAMoB,EAAOqC,OACzBrC,EAAOH,QAAQwF,cAAca,eAAehG,MAE9CF,EAAOJ,SAASuG,oBAIrBpE,EAAmB,CAACK,EAAYC,KAClC,IAAI0B,EACJ,MAAMN,QAAEA,GAAYpB,EAAME,UACpByB,EAAa3B,EAAMc,IAAIC,QAAQK,EAAQV,IAAMU,EAAQ2C,aAAe,GAC1E,OAAIpC,EAAWC,UAAYD,EAAWqC,OAAOC,WAAa,IAGtB,OAA9BvC,EAAKC,EAAWuC,gBAAqB,EAASxC,EAAGvD,KAAK5B,QAAUwD,GAOpEoE,EAAaC,EAAU9H,OAAO,CAChCC,KAAM,aACNC,WAAU,KACD,CACL6H,UAAW,CACT,CACEC,SAAU,WACVC,aAAc,CAAC,aAAc,gBAE/B,CACED,SAAU,WACVC,aAAc,CAAC,gBAKvB,oBAAAzG,GACE,MAAO,CACL0G,OAAQ,EAAG7G,aACT,IAAI8G,GAAU,EASd,OARA1H,KAAKC,QAAQqH,UAAUK,SAAQ,EAAGJ,oBACY,IAAxC3G,EAAOqC,MAAMK,OAAOsE,MAAML,IAG1B9E,EAAa7B,EAAQ2G,KACvBG,GAAU,MAGPA,GAET,aAAc,EAAG9G,aACf,IAAI8G,GAAU,EASd,OARA1H,KAAKC,QAAQqH,UAAUK,SAAQ,EAAGJ,oBACY,IAAxC3G,EAAOqC,MAAMK,OAAOsE,MAAML,IAG1B9E,EAAa7B,EAAQ2G,KACvBG,GAAU,MAGPA,GAETG,UAAW,EAAGjH,aACZ,IAAI8G,GAAU,EASd,OARA1H,KAAKC,QAAQqH,UAAUK,SAAQ,EAAGJ,WAAUC,wBACE,IAAxC5G,EAAOqC,MAAMK,OAAOsE,MAAML,IAG1B/E,EAAgB5B,EAAQ2G,EAAUC,KACpCE,GAAU,MAGPA,GAET,gBAAiB,EAAG9G,aAClB,IAAI8G,GAAU,EASd,OARA1H,KAAKC,QAAQqH,UAAUK,SAAQ,EAAGJ,WAAUC,wBACE,IAAxC5G,EAAOqC,MAAMK,OAAOsE,MAAML,IAG1B/E,EAAgB5B,EAAQ2G,EAAUC,KACpCE,GAAU,MAGPA,GAGb,IASEI,EAAiB,YACjBC,EAAwB,cACxBC,EAAcC,EAAM1I,OAAO,CAC7BC,KAAM,cACNC,WAAU,KACD,CACLC,aAAc,WACdC,eAAgB,CAAA,EAChBC,WAAW,EACXC,gBAAgB,IAGpBC,MAAO,aACP,OAAAC,GACE,MAAO,GAAGC,KAAKC,QAAQP,eACzB,EACAwI,cAAa,KACJ,CACLpC,MAAO,CACLqC,QAAS,EACTjI,UAAYkI,GACHA,EAAQC,aAAa,SAAWC,SAASF,EAAQG,aAAa,UAAY,GAAI,IAAM,GAG/FnH,KAAM,CACJ+G,QAAS,KACTjI,UAAYkI,GAAYA,EAAQG,aAAa,WAInDrI,UAAS,IACA,CACL,CACEC,IAAK,OAIX,UAAAC,EAAWT,eAAEA,IACX,MAAMmG,MAAEA,KAAU0C,GAA2B7I,EAC7C,OAAiB,IAAVmG,EAAc,CAAC,KAAM2C,EAAiBzI,KAAKC,QAAQN,eAAgB6I,GAAyB,GAAK,CAAC,KAAMC,EAAiBzI,KAAKC,QAAQN,eAAgBA,GAAiB,EAChL,EACA,WAAAW,GACE,MAAO,CACLoI,kBAAmB,IAAM,EAAGlI,WAAUC,WAChCT,KAAKC,QAAQJ,eACRY,IAAQC,WAAWV,KAAKR,KAAMQ,KAAKC,QAAQP,aAAcM,KAAKC,QAAQL,WAAWe,iBA9C9E,WA8C8GX,KAAKY,OAAOC,cAAciH,IAAiBhH,MAE9JN,EAASE,WAAWV,KAAKR,KAAMQ,KAAKC,QAAQP,aAAcM,KAAKC,QAAQL,WAGpF,EACA,oBAAAmB,GACE,MAAO,CACL,cAAe,IAAMf,KAAKY,OAAOJ,SAASkI,oBAE9C,EACA,aAAA1H,GACE,IAAIC,EAAY0H,EAAmB,CACjCxH,KAAM4G,EACN3G,KAAMpB,KAAKoB,KACXP,cAAgB+H,KAAa9C,OAAQ8C,EAAM,KAC3CC,cAAe,CAACD,EAAO/E,IAASA,EAAKqD,WAAarD,EAAKiF,MAAMhD,SAAW8C,EAAM,KAahF,OAXI5I,KAAKC,QAAQL,WAAaI,KAAKC,QAAQJ,kBACzCoB,EAAY0H,EAAmB,CAC7BxH,KAAM4G,EACN3G,KAAMpB,KAAKoB,KACXxB,UAAWI,KAAKC,QAAQL,UACxBC,eAAgBG,KAAKC,QAAQJ,eAC7BgB,cAAgB+H,IAAK,CAAQ9C,OAAQ8C,EAAM,MAAO5I,KAAKY,OAAOC,cAAciH,KAC5Ee,cAAe,CAACD,EAAO/E,IAASA,EAAKqD,WAAarD,EAAKiF,MAAMhD,SAAW8C,EAAM,GAC9EhI,OAAQZ,KAAKY,UAGV,CAACK,EACV,IAKE8H,EAAa,yBACbC,EAAWC,EAAM1J,OAAO,CAC1BC,KAAM,WACNC,WAAU,KACD,CACLyJ,QAAQ,EACRvJ,eAAgB,CAAA,EAChBwJ,iBAAkB,WAClBC,UAAM,IAGV,OAAArJ,GACE,OAAOC,KAAKC,QAAQiJ,OAAS,mBAAqB,YACpD,EACAzH,UAAU,EACVyG,cAAa,KACJ,CACLmB,QAAS,CACPlB,SAAS,EACTmB,aAAa,EACbpJ,UAAYkI,IACV,MAAMmB,EAAcnB,EAAQG,aAAa,gBACzC,MAAuB,KAAhBgB,GAAsC,SAAhBA,GAE/BnJ,WAAaoJ,IAAU,CACrB,eAAgBA,EAAWH,aAKnC,SAAAnJ,GACE,MAAO,CACL,CACEC,IAAK,iBAAiBH,KAAKR,SAC3BiK,SAAU,IAGhB,EACA,UAAArJ,EAAWyD,KAAEA,EAAIlE,eAAEA,IACjB,MAAO,CACL,KACA+J,EAAiB1J,KAAKC,QAAQN,eAAgBA,EAAgB,CAC5D,YAAaK,KAAKR,OAEpB,CACE,QACA,CACE,QACA,CACE4B,KAAM,WACNiI,QAASxF,EAAKiF,MAAMO,QAAU,UAAY,OAG9C,CAAC,SAEH,CAAC,MAAO,GAEZ,EACA,oBAAAtI,GACE,MAAM4I,EAAY,CAChBhI,MAAO,IAAM3B,KAAKY,OAAOJ,SAASoB,cAAc5B,KAAKR,MACrD,YAAa,IAAMQ,KAAKY,OAAOJ,SAASuB,aAAa/B,KAAKR,OAE5D,OAAKQ,KAAKC,QAAQiJ,OAGX,IACFS,EACH9H,IAAK,IAAM7B,KAAKY,OAAOJ,SAASsB,aAAa9B,KAAKR,OAJ3CmK,CAMX,EACA,WAAAC,GACE,MAAO,EAAG/F,OAAMlE,iBAAgBkK,SAAQjJ,aACtC,MAAMkJ,EAAWC,SAASC,cAAc,MAClCC,EAAkBF,SAASC,cAAc,SACzCE,EAAiBH,SAASC,cAAc,QACxCG,EAAWJ,SAASC,cAAc,SAClCjK,EAAUgK,SAASC,cAAc,OACjCI,EAAa,KACjB,IAAIzF,EAAI0F,EACRF,EAASG,WAAoF,OAAtED,EAAiC,OAA3B1F,EAAK3E,KAAKC,QAAQmJ,WAAgB,EAASzE,EAAG4F,oBAAyB,EAASF,EAAGG,KAAK7F,EAAId,EAAMsG,EAASd,WAAa,0BAA0BxF,EAAK4G,aAAe,qBA0CrM,OAxCAL,IACAH,EAAgBS,gBAAkB,QAClCP,EAAS/I,KAAO,WAChB+I,EAASQ,iBAAiB,aAAcC,GAAUA,EAAMC,mBACxDV,EAASQ,iBAAiB,UAAWC,IACnC,IAAKhK,EAAOkK,aAAe9K,KAAKC,QAAQ8K,kBAEtC,YADAZ,EAASd,SAAWc,EAASd,SAG/B,MAAMA,QAAEA,GAAYuB,EAAM3I,OACtBrB,EAAOkK,YAAgC,mBAAXjB,GAC9BjJ,EAAOH,QAAQmG,WAAM,EAAQ,CAAEoE,gBAAgB,IAASC,SAAQ,EAAGC,SACjE,MAAMC,EAAWtB,IACjB,GAAwB,iBAAbsB,EACT,OAAO,EAET,MAAM5H,EAAc2H,EAAGnH,IAAIqH,OAAOD,GAKlC,OAJAD,EAAGG,cAAcF,OAAU,EAAQ,IACf,MAAf5H,OAAsB,EAASA,EAAYuF,MAC9CO,aAEK,KACNvI,OAEAF,EAAOkK,YAAc9K,KAAKC,QAAQ8K,oBAChC/K,KAAKC,QAAQ8K,kBAAkBlH,EAAMwF,KACxCc,EAASd,SAAWc,EAASd,aAInCpK,OAAOqM,QAAQtL,KAAKC,QAAQN,gBAAgBgI,SAAQ,EAAE4D,EAAKC,MACzD1B,EAAS2B,aAAaF,EAAKC,MAE7B1B,EAAS4B,QAAQrC,QAAUxF,EAAKiF,MAAMO,QACtCc,EAASd,QAAUxF,EAAKiF,MAAMO,QAC9BY,EAAgB0B,OAAOxB,EAAUD,GACjCJ,EAAS6B,OAAO1B,EAAiBlK,GACjCd,OAAOqM,QAAQ3L,GAAgBgI,SAAQ,EAAE4D,EAAKC,MAC5C1B,EAAS2B,aAAaF,EAAKC,MAEtB,CACLI,IAAK9B,EACL+B,WAAY9L,EACZ+L,OAASC,GACHA,EAAY3K,OAASpB,KAAKoB,OAG9B0I,EAAS4B,QAAQrC,QAAU0C,EAAYjD,MAAMO,QAC7Cc,EAASd,QAAU0C,EAAYjD,MAAMO,QACrCe,KACO,IAIf,EACA,aAAApJ,GACE,MAAO,CACLgL,EAAmB,CACjB7K,KAAM4H,EACN3H,KAAMpB,KAAKoB,KACXP,cAAgB+H,IAAK,CACnBS,QAAqC,MAA5BT,EAAMA,EAAMqD,OAAS,OAItC,IAKEC,EAAWC,EAAM5M,OAAO,CAC1BC,KAAM,WACNC,WAAU,KACD,CACLC,aAAc,WACdC,eAAgB,CAAA,IAGpBG,MAAO,aACP,OAAAC,GACE,MAAO,GAAGC,KAAKC,QAAQP,eACzB,EACA,SAAAQ,GACE,MAAO,CACL,CACEC,IAAK,iBAAiBH,KAAKR,SAC3BiK,SAAU,IAGhB,EACA,UAAArJ,EAAWT,eAAEA,IACX,MAAO,CAAC,KAAMyM,EAAiBpM,KAAKC,QAAQN,eAAgBA,EAAgB,CAAE,YAAaK,KAAKR,OAAS,EAC3G,EACA,WAAAc,GACE,MAAO,CACL+L,eAAgB,IAAM,EAAG7L,cAChBA,EAASE,WAAWV,KAAKR,KAAMQ,KAAKC,QAAQP,cAGzD,EACA,oBAAAqB,GACE,MAAO,CACL,cAAe,IAAMf,KAAKY,OAAOJ,SAAS6L,iBAE9C,IAIYC,EAAW/M,OAAO,CAC9BC,KAAM,UACN,aAAA+M,GACE,MAAMC,EAAa,GAmBnB,OAlBgC,IAA5BxM,KAAKC,QAAQwM,YACfD,EAAW9G,KAAKrG,EAAWqN,UAAU1M,KAAKC,QAAQwM,cAEtB,IAA1BzM,KAAKC,QAAQ6J,UACf0C,EAAW9G,KAAKrE,EAASqL,UAAU1M,KAAKC,QAAQ6J,YAElB,IAA5B9J,KAAKC,QAAQ0M,YACfH,EAAW9G,KAAK0B,EAAWsF,UAAU1M,KAAKC,QAAQ0M,cAEnB,IAA7B3M,KAAKC,QAAQ2M,aACfJ,EAAW9G,KAAKsC,EAAY0E,UAAU1M,KAAKC,QAAQ2M,eAEvB,IAA1B5M,KAAKC,QAAQ4M,UACfL,EAAW9G,KAAKsD,EAAS0D,UAAU1M,KAAKC,QAAQ4M,YAEpB,IAA1B7M,KAAKC,QAAQ6M,UACfN,EAAW9G,KAAKwG,EAASQ,UAAU1M,KAAKC,QAAQ6M,WAE3CN,CACT","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../../node_modules/@tiptap/extension-list/dist/index.js"],"sourcesContent":["var __defProp = Object.defineProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\n\n// src/bullet-list/bullet-list.ts\nimport { mergeAttributes, Node, wrappingInputRule } from \"@tiptap/core\";\nvar ListItemName = \"listItem\";\nvar TextStyleName = \"textStyle\";\nvar bulletListInputRegex = /^\\s*([-+*])\\s$/;\nvar BulletList = Node.create({\n name: \"bulletList\",\n addOptions() {\n return {\n itemTypeName: \"listItem\",\n HTMLAttributes: {},\n keepMarks: false,\n keepAttributes: false\n };\n },\n group: \"block list\",\n content() {\n return `${this.options.itemTypeName}+`;\n },\n parseHTML() {\n return [{ tag: \"ul\" }];\n },\n renderHTML({ HTMLAttributes }) {\n return [\"ul\", mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];\n },\n markdownTokenName: \"list\",\n parseMarkdown: (token, helpers) => {\n if (token.type !== \"list\" || token.ordered) {\n return [];\n }\n return {\n type: \"bulletList\",\n content: token.items ? helpers.parseChildren(token.items) : []\n };\n },\n renderMarkdown: (node, h) => {\n if (!node.content) {\n return \"\";\n }\n return h.renderChildren(node.content, \"\\n\");\n },\n markdownOptions: {\n indentsContent: true\n },\n addCommands() {\n return {\n toggleBulletList: () => ({ commands, chain }) => {\n if (this.options.keepAttributes) {\n return chain().toggleList(this.name, this.options.itemTypeName, this.options.keepMarks).updateAttributes(ListItemName, this.editor.getAttributes(TextStyleName)).run();\n }\n return commands.toggleList(this.name, this.options.itemTypeName, this.options.keepMarks);\n }\n };\n },\n addKeyboardShortcuts() {\n return {\n \"Mod-Shift-8\": () => this.editor.commands.toggleBulletList()\n };\n },\n addInputRules() {\n let inputRule = wrappingInputRule({\n find: bulletListInputRegex,\n type: this.type\n });\n if (this.options.keepMarks || this.options.keepAttributes) {\n inputRule = wrappingInputRule({\n find: bulletListInputRegex,\n type: this.type,\n keepMarks: this.options.keepMarks,\n keepAttributes: this.options.keepAttributes,\n getAttributes: () => {\n return this.editor.getAttributes(TextStyleName);\n },\n editor: this.editor\n });\n }\n return [inputRule];\n }\n});\n\n// src/item/list-item.ts\nimport { mergeAttributes as mergeAttributes2, Node as Node2, renderNestedMarkdownContent } from \"@tiptap/core\";\nvar ListItem = Node2.create({\n name: \"listItem\",\n addOptions() {\n return {\n HTMLAttributes: {},\n bulletListTypeName: \"bulletList\",\n orderedListTypeName: \"orderedList\"\n };\n },\n content: \"paragraph block*\",\n defining: true,\n parseHTML() {\n return [\n {\n tag: \"li\"\n }\n ];\n },\n renderHTML({ HTMLAttributes }) {\n return [\"li\", mergeAttributes2(this.options.HTMLAttributes, HTMLAttributes), 0];\n },\n markdownTokenName: \"list_item\",\n parseMarkdown: (token, helpers) => {\n var _a;\n if (token.type !== \"list_item\") {\n return [];\n }\n const parseBlockChildren = (_a = helpers.parseBlockChildren) != null ? _a : helpers.parseChildren;\n let content = [];\n if (token.tokens && token.tokens.length > 0) {\n const hasParagraphTokens = token.tokens.some((t) => t.type === \"paragraph\");\n if (hasParagraphTokens) {\n content = parseBlockChildren(token.tokens);\n } else {\n const firstToken = token.tokens[0];\n if (firstToken && firstToken.type === \"text\" && firstToken.tokens && firstToken.tokens.length > 0) {\n const inlineContent = helpers.parseInline(firstToken.tokens);\n content = [\n {\n type: \"paragraph\",\n content: inlineContent\n }\n ];\n if (token.tokens.length > 1) {\n const remainingTokens = token.tokens.slice(1);\n const additionalContent = parseBlockChildren(remainingTokens);\n content.push(...additionalContent);\n }\n } else {\n content = parseBlockChildren(token.tokens);\n }\n }\n }\n if (content.length === 0) {\n content = [\n {\n type: \"paragraph\",\n content: []\n }\n ];\n }\n return {\n type: \"listItem\",\n content\n };\n },\n renderMarkdown: (node, h, ctx) => {\n return renderNestedMarkdownContent(\n node,\n h,\n (context) => {\n var _a, _b;\n if (context.parentType === \"bulletList\") {\n return \"- \";\n }\n if (context.parentType === \"orderedList\") {\n const start = ((_b = (_a = context.meta) == null ? void 0 : _a.parentAttrs) == null ? void 0 : _b.start) || 1;\n return `${start + context.index}. `;\n }\n return \"- \";\n },\n ctx\n );\n },\n addKeyboardShortcuts() {\n return {\n Enter: () => this.editor.commands.splitListItem(this.name),\n Tab: () => this.editor.commands.sinkListItem(this.name),\n \"Shift-Tab\": () => this.editor.commands.liftListItem(this.name)\n };\n }\n});\n\n// src/keymap/list-keymap.ts\nimport { Extension } from \"@tiptap/core\";\n\n// src/keymap/listHelpers/index.ts\nvar listHelpers_exports = {};\n__export(listHelpers_exports, {\n findListItemPos: () => findListItemPos,\n getNextListDepth: () => getNextListDepth,\n handleBackspace: () => handleBackspace,\n handleDelete: () => handleDelete,\n hasListBefore: () => hasListBefore,\n hasListItemAfter: () => hasListItemAfter,\n hasListItemBefore: () => hasListItemBefore,\n listItemHasSubList: () => listItemHasSubList,\n nextListIsDeeper: () => nextListIsDeeper,\n nextListIsHigher: () => nextListIsHigher\n});\n\n// src/keymap/listHelpers/findListItemPos.ts\nimport { getNodeType } from \"@tiptap/core\";\nvar findListItemPos = (typeOrName, state) => {\n const { $from } = state.selection;\n const nodeType = getNodeType(typeOrName, state.schema);\n let currentNode = null;\n let currentDepth = $from.depth;\n let currentPos = $from.pos;\n let targetDepth = null;\n while (currentDepth > 0 && targetDepth === null) {\n currentNode = $from.node(currentDepth);\n if (currentNode.type === nodeType) {\n targetDepth = currentDepth;\n } else {\n currentDepth -= 1;\n currentPos -= 1;\n }\n }\n if (targetDepth === null) {\n return null;\n }\n return { $pos: state.doc.resolve(currentPos), depth: targetDepth };\n};\n\n// src/keymap/listHelpers/getNextListDepth.ts\nimport { getNodeAtPosition } from \"@tiptap/core\";\nvar getNextListDepth = (typeOrName, state) => {\n const listItemPos = findListItemPos(typeOrName, state);\n if (!listItemPos) {\n return false;\n }\n const [, depth] = getNodeAtPosition(state, typeOrName, listItemPos.$pos.pos + 4);\n return depth;\n};\n\n// src/keymap/listHelpers/handleBackspace.ts\nimport { isAtStartOfNode, isNodeActive } from \"@tiptap/core\";\n\n// src/keymap/listHelpers/hasListBefore.ts\nvar hasListBefore = (editorState, name, parentListTypes) => {\n const { $anchor } = editorState.selection;\n const previousNodePos = Math.max(0, $anchor.pos - 2);\n const previousNode = editorState.doc.resolve(previousNodePos).node();\n if (!previousNode || !parentListTypes.includes(previousNode.type.name)) {\n return false;\n }\n return true;\n};\n\n// src/keymap/listHelpers/hasListItemBefore.ts\nvar hasListItemBefore = (typeOrName, state) => {\n var _a;\n const { $anchor } = state.selection;\n const $targetPos = state.doc.resolve($anchor.pos - 2);\n if ($targetPos.index() === 0) {\n return false;\n }\n if (((_a = $targetPos.nodeBefore) == null ? void 0 : _a.type.name) !== typeOrName) {\n return false;\n }\n return true;\n};\n\n// src/keymap/listHelpers/listItemHasSubList.ts\nimport { getNodeType as getNodeType2 } from \"@tiptap/core\";\nvar listItemHasSubList = (typeOrName, state, node) => {\n if (!node) {\n return false;\n }\n const nodeType = getNodeType2(typeOrName, state.schema);\n let hasSubList = false;\n node.descendants((child) => {\n if (child.type === nodeType) {\n hasSubList = true;\n }\n });\n return hasSubList;\n};\n\n// src/keymap/listHelpers/handleBackspace.ts\nvar handleBackspace = (editor, name, parentListTypes) => {\n if (editor.commands.undoInputRule()) {\n return true;\n }\n if (editor.state.selection.from !== editor.state.selection.to) {\n return false;\n }\n if (!isNodeActive(editor.state, name) && hasListBefore(editor.state, name, parentListTypes)) {\n const { $anchor } = editor.state.selection;\n const $listPos = editor.state.doc.resolve($anchor.before() - 1);\n const listDescendants = [];\n $listPos.node().descendants((node, pos) => {\n if (node.type.name === name) {\n listDescendants.push({ node, pos });\n }\n });\n const lastItem = listDescendants.at(-1);\n if (!lastItem) {\n return false;\n }\n const $lastItemPos = editor.state.doc.resolve($listPos.start() + lastItem.pos + 1);\n return editor.chain().cut({ from: $anchor.start() - 1, to: $anchor.end() + 1 }, $lastItemPos.end()).joinForward().run();\n }\n if (!isNodeActive(editor.state, name)) {\n return false;\n }\n if (!isAtStartOfNode(editor.state)) {\n return false;\n }\n const listItemPos = findListItemPos(name, editor.state);\n if (!listItemPos) {\n return false;\n }\n const $prev = editor.state.doc.resolve(listItemPos.$pos.pos - 2);\n const prevNode = $prev.node(listItemPos.depth);\n const previousListItemHasSubList = listItemHasSubList(name, editor.state, prevNode);\n if (hasListItemBefore(name, editor.state) && !previousListItemHasSubList) {\n return editor.commands.joinItemBackward();\n }\n return editor.chain().liftListItem(name).run();\n};\n\n// src/keymap/listHelpers/handleDelete.ts\nimport { isAtEndOfNode, isNodeActive as isNodeActive2 } from \"@tiptap/core\";\n\n// src/keymap/listHelpers/nextListIsDeeper.ts\nvar nextListIsDeeper = (typeOrName, state) => {\n const listDepth = getNextListDepth(typeOrName, state);\n const listItemPos = findListItemPos(typeOrName, state);\n if (!listItemPos || !listDepth) {\n return false;\n }\n if (listDepth > listItemPos.depth) {\n return true;\n }\n return false;\n};\n\n// src/keymap/listHelpers/nextListIsHigher.ts\nvar nextListIsHigher = (typeOrName, state) => {\n const listDepth = getNextListDepth(typeOrName, state);\n const listItemPos = findListItemPos(typeOrName, state);\n if (!listItemPos || !listDepth) {\n return false;\n }\n if (listDepth < listItemPos.depth) {\n return true;\n }\n return false;\n};\n\n// src/keymap/listHelpers/handleDelete.ts\nvar handleDelete = (editor, name) => {\n if (!isNodeActive2(editor.state, name)) {\n return false;\n }\n if (!isAtEndOfNode(editor.state, name)) {\n return false;\n }\n const { selection } = editor.state;\n const { $from, $to } = selection;\n if (!selection.empty && $from.sameParent($to)) {\n return false;\n }\n if (nextListIsDeeper(name, editor.state)) {\n return editor.chain().focus(editor.state.selection.from + 4).lift(name).joinBackward().run();\n }\n if (nextListIsHigher(name, editor.state)) {\n return editor.chain().joinForward().joinBackward().run();\n }\n return editor.commands.joinItemForward();\n};\n\n// src/keymap/listHelpers/hasListItemAfter.ts\nvar hasListItemAfter = (typeOrName, state) => {\n var _a;\n const { $anchor } = state.selection;\n const $targetPos = state.doc.resolve($anchor.pos - $anchor.parentOffset - 2);\n if ($targetPos.index() === $targetPos.parent.childCount - 1) {\n return false;\n }\n if (((_a = $targetPos.nodeAfter) == null ? void 0 : _a.type.name) !== typeOrName) {\n return false;\n }\n return true;\n};\n\n// src/keymap/list-keymap.ts\nvar ListKeymap = Extension.create({\n name: \"listKeymap\",\n addOptions() {\n return {\n listTypes: [\n {\n itemName: \"listItem\",\n wrapperNames: [\"bulletList\", \"orderedList\"]\n },\n {\n itemName: \"taskItem\",\n wrapperNames: [\"taskList\"]\n }\n ]\n };\n },\n addKeyboardShortcuts() {\n return {\n Delete: ({ editor }) => {\n let handled = false;\n this.options.listTypes.forEach(({ itemName }) => {\n if (editor.state.schema.nodes[itemName] === void 0) {\n return;\n }\n if (handleDelete(editor, itemName)) {\n handled = true;\n }\n });\n return handled;\n },\n \"Mod-Delete\": ({ editor }) => {\n let handled = false;\n this.options.listTypes.forEach(({ itemName }) => {\n if (editor.state.schema.nodes[itemName] === void 0) {\n return;\n }\n if (handleDelete(editor, itemName)) {\n handled = true;\n }\n });\n return handled;\n },\n Backspace: ({ editor }) => {\n let handled = false;\n this.options.listTypes.forEach(({ itemName, wrapperNames }) => {\n if (editor.state.schema.nodes[itemName] === void 0) {\n return;\n }\n if (handleBackspace(editor, itemName, wrapperNames)) {\n handled = true;\n }\n });\n return handled;\n },\n \"Mod-Backspace\": ({ editor }) => {\n let handled = false;\n this.options.listTypes.forEach(({ itemName, wrapperNames }) => {\n if (editor.state.schema.nodes[itemName] === void 0) {\n return;\n }\n if (handleBackspace(editor, itemName, wrapperNames)) {\n handled = true;\n }\n });\n return handled;\n }\n };\n }\n});\n\n// src/kit/index.ts\nimport { Extension as Extension2 } from \"@tiptap/core\";\n\n// src/ordered-list/ordered-list.ts\nimport { mergeAttributes as mergeAttributes3, Node as Node3, wrappingInputRule as wrappingInputRule2 } from \"@tiptap/core\";\n\n// src/ordered-list/utils.ts\nvar ORDERED_LIST_ITEM_REGEX = /^(\\s*)(\\d+)\\.\\s+(.*)$/;\nvar INDENTED_LINE_REGEX = /^\\s/;\nfunction isBlockContentLine(line) {\n const trimmedLine = line.trimStart();\n return /^[-+*]\\s+/.test(trimmedLine) || /^\\d+\\.\\s+/.test(trimmedLine) || /^>\\s?/.test(trimmedLine) || /^```/.test(trimmedLine) || /^~~~/.test(trimmedLine);\n}\nfunction splitItemContent(contentLines) {\n const paragraphLines = [];\n const blockLines = [];\n let reachedBlockBoundary = false;\n contentLines.forEach((line) => {\n if (reachedBlockBoundary) {\n blockLines.push(line);\n return;\n }\n if (line.trim() === \"\") {\n reachedBlockBoundary = true;\n blockLines.push(line);\n return;\n }\n if (paragraphLines.length > 0 && isBlockContentLine(line)) {\n reachedBlockBoundary = true;\n blockLines.push(line);\n return;\n }\n paragraphLines.push(line);\n });\n return {\n paragraphLines,\n blockLines\n };\n}\nfunction collectOrderedListItems(lines) {\n const listItems = [];\n let currentLineIndex = 0;\n let consumed = 0;\n while (currentLineIndex < lines.length) {\n const line = lines[currentLineIndex];\n const match = line.match(ORDERED_LIST_ITEM_REGEX);\n if (!match) {\n break;\n }\n const [, indent, number, content] = match;\n const indentLevel = indent.length;\n const itemContentLines = [content];\n let nextLineIndex = currentLineIndex + 1;\n const itemLines = [line];\n let sawBlankLine = false;\n while (nextLineIndex < lines.length) {\n const nextLine = lines[nextLineIndex];\n const nextMatch = nextLine.match(ORDERED_LIST_ITEM_REGEX);\n if (nextMatch) {\n break;\n }\n if (nextLine.trim() === \"\") {\n itemLines.push(nextLine);\n itemContentLines.push(\"\");\n sawBlankLine = true;\n nextLineIndex += 1;\n } else if (nextLine.match(INDENTED_LINE_REGEX)) {\n itemLines.push(nextLine);\n itemContentLines.push(nextLine.slice(indentLevel + 2));\n nextLineIndex += 1;\n } else {\n if (sawBlankLine) {\n break;\n }\n itemLines.push(nextLine);\n itemContentLines.push(nextLine);\n nextLineIndex += 1;\n }\n }\n listItems.push({\n indent: indentLevel,\n number: parseInt(number, 10),\n content: itemContentLines.join(\"\\n\").trim(),\n contentLines: itemContentLines,\n raw: itemLines.join(\"\\n\")\n });\n consumed = nextLineIndex;\n currentLineIndex = nextLineIndex;\n }\n return [listItems, consumed];\n}\nfunction buildNestedStructure(items, baseIndent, lexer) {\n const result = [];\n let currentIndex = 0;\n while (currentIndex < items.length) {\n const item = items[currentIndex];\n if (item.indent === baseIndent) {\n const { paragraphLines, blockLines } = splitItemContent(item.contentLines);\n const mainText = paragraphLines.join(\"\\n\").trim();\n const tokens = [];\n if (mainText) {\n tokens.push({\n type: \"paragraph\",\n raw: mainText,\n tokens: lexer.inlineTokens(mainText)\n });\n }\n const additionalContent = blockLines.join(\"\\n\").trim();\n if (additionalContent) {\n const blockTokens = lexer.blockTokens(additionalContent);\n tokens.push(...blockTokens);\n }\n let lookAheadIndex = currentIndex + 1;\n const nestedItems = [];\n while (lookAheadIndex < items.length && items[lookAheadIndex].indent > baseIndent) {\n nestedItems.push(items[lookAheadIndex]);\n lookAheadIndex += 1;\n }\n if (nestedItems.length > 0) {\n const nextIndent = Math.min(...nestedItems.map((nestedItem) => nestedItem.indent));\n const nestedListItems = buildNestedStructure(nestedItems, nextIndent, lexer);\n tokens.push({\n type: \"list\",\n ordered: true,\n start: nestedItems[0].number,\n items: nestedListItems,\n raw: nestedItems.map((nestedItem) => nestedItem.raw).join(\"\\n\")\n });\n }\n result.push({\n type: \"list_item\",\n raw: item.raw,\n tokens\n });\n currentIndex = lookAheadIndex;\n } else {\n currentIndex += 1;\n }\n }\n return result;\n}\nfunction parseListItems(items, helpers) {\n return items.map((item) => {\n if (item.type !== \"list_item\") {\n return helpers.parseChildren([item])[0];\n }\n const content = [];\n if (item.tokens && item.tokens.length > 0) {\n item.tokens.forEach((itemToken) => {\n if (itemToken.type === \"paragraph\" || itemToken.type === \"list\" || itemToken.type === \"blockquote\" || itemToken.type === \"code\") {\n content.push(...helpers.parseChildren([itemToken]));\n } else if (itemToken.type === \"text\" && itemToken.tokens) {\n const inlineContent = helpers.parseChildren([itemToken]);\n content.push({\n type: \"paragraph\",\n content: inlineContent\n });\n } else {\n const parsed = helpers.parseChildren([itemToken]);\n if (parsed.length > 0) {\n content.push(...parsed);\n }\n }\n });\n }\n return {\n type: \"listItem\",\n content\n };\n });\n}\n\n// src/ordered-list/ordered-list.ts\nvar ListItemName2 = \"listItem\";\nvar TextStyleName2 = \"textStyle\";\nvar orderedListInputRegex = /^(\\d+)\\.\\s$/;\nvar OrderedList = Node3.create({\n name: \"orderedList\",\n addOptions() {\n return {\n itemTypeName: \"listItem\",\n HTMLAttributes: {},\n keepMarks: false,\n keepAttributes: false\n };\n },\n group: \"block list\",\n content() {\n return `${this.options.itemTypeName}+`;\n },\n addAttributes() {\n return {\n start: {\n default: 1,\n parseHTML: (element) => {\n return element.hasAttribute(\"start\") ? parseInt(element.getAttribute(\"start\") || \"\", 10) : 1;\n }\n },\n type: {\n default: null,\n parseHTML: (element) => element.getAttribute(\"type\")\n }\n };\n },\n parseHTML() {\n return [\n {\n tag: \"ol\"\n }\n ];\n },\n renderHTML({ HTMLAttributes }) {\n const { start, ...attributesWithoutStart } = HTMLAttributes;\n return start === 1 ? [\"ol\", mergeAttributes3(this.options.HTMLAttributes, attributesWithoutStart), 0] : [\"ol\", mergeAttributes3(this.options.HTMLAttributes, HTMLAttributes), 0];\n },\n markdownTokenName: \"list\",\n parseMarkdown: (token, helpers) => {\n if (token.type !== \"list\" || !token.ordered) {\n return [];\n }\n const startValue = token.start || 1;\n const content = token.items ? parseListItems(token.items, helpers) : [];\n if (startValue !== 1) {\n return {\n type: \"orderedList\",\n attrs: { start: startValue },\n content\n };\n }\n return {\n type: \"orderedList\",\n content\n };\n },\n renderMarkdown: (node, h) => {\n if (!node.content) {\n return \"\";\n }\n return h.renderChildren(node.content, \"\\n\");\n },\n markdownTokenizer: {\n name: \"orderedList\",\n level: \"block\",\n start: (src) => {\n const match = src.match(/^(\\s*)(\\d+)\\.\\s+/);\n const index = match == null ? void 0 : match.index;\n return index !== void 0 ? index : -1;\n },\n tokenize: (src, _tokens, lexer) => {\n var _a;\n const lines = src.split(\"\\n\");\n const [listItems, consumed] = collectOrderedListItems(lines);\n if (listItems.length === 0) {\n return void 0;\n }\n const items = buildNestedStructure(listItems, 0, lexer);\n if (items.length === 0) {\n return void 0;\n }\n const startValue = ((_a = listItems[0]) == null ? void 0 : _a.number) || 1;\n return {\n type: \"list\",\n ordered: true,\n start: startValue,\n items,\n raw: lines.slice(0, consumed).join(\"\\n\")\n };\n }\n },\n markdownOptions: {\n indentsContent: true\n },\n addCommands() {\n return {\n toggleOrderedList: () => ({ commands, chain }) => {\n if (this.options.keepAttributes) {\n return chain().toggleList(this.name, this.options.itemTypeName, this.options.keepMarks).updateAttributes(ListItemName2, this.editor.getAttributes(TextStyleName2)).run();\n }\n return commands.toggleList(this.name, this.options.itemTypeName, this.options.keepMarks);\n }\n };\n },\n addKeyboardShortcuts() {\n return {\n \"Mod-Shift-7\": () => this.editor.commands.toggleOrderedList()\n };\n },\n addInputRules() {\n let inputRule = wrappingInputRule2({\n find: orderedListInputRegex,\n type: this.type,\n getAttributes: (match) => ({ start: +match[1] }),\n joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1]\n });\n if (this.options.keepMarks || this.options.keepAttributes) {\n inputRule = wrappingInputRule2({\n find: orderedListInputRegex,\n type: this.type,\n keepMarks: this.options.keepMarks,\n keepAttributes: this.options.keepAttributes,\n getAttributes: (match) => ({ start: +match[1], ...this.editor.getAttributes(TextStyleName2) }),\n joinPredicate: (match, node) => node.childCount + node.attrs.start === +match[1],\n editor: this.editor\n });\n }\n return [inputRule];\n }\n});\n\n// src/task-item/task-item.ts\nimport {\n getRenderedAttributes,\n mergeAttributes as mergeAttributes4,\n Node as Node4,\n renderNestedMarkdownContent as renderNestedMarkdownContent2,\n wrappingInputRule as wrappingInputRule3\n} from \"@tiptap/core\";\nvar inputRegex = /^\\s*(\\[([( |x])?\\])\\s$/;\nvar TaskItem = Node4.create({\n name: \"taskItem\",\n addOptions() {\n return {\n nested: false,\n HTMLAttributes: {},\n taskListTypeName: \"taskList\",\n a11y: void 0\n };\n },\n content() {\n return this.options.nested ? \"paragraph block*\" : \"paragraph+\";\n },\n defining: true,\n addAttributes() {\n return {\n checked: {\n default: false,\n keepOnSplit: false,\n parseHTML: (element) => {\n const dataChecked = element.getAttribute(\"data-checked\");\n return dataChecked === \"\" || dataChecked === \"true\";\n },\n renderHTML: (attributes) => ({\n \"data-checked\": attributes.checked\n })\n }\n };\n },\n parseHTML() {\n return [\n {\n tag: `li[data-type=\"${this.name}\"]`,\n priority: 51\n }\n ];\n },\n renderHTML({ node, HTMLAttributes }) {\n return [\n \"li\",\n mergeAttributes4(this.options.HTMLAttributes, HTMLAttributes, {\n \"data-type\": this.name\n }),\n [\n \"label\",\n [\n \"input\",\n {\n type: \"checkbox\",\n checked: node.attrs.checked ? \"checked\" : null\n }\n ],\n [\"span\"]\n ],\n [\"div\", 0]\n ];\n },\n parseMarkdown: (token, h) => {\n const content = [];\n if (token.tokens && token.tokens.length > 0) {\n content.push(h.createNode(\"paragraph\", {}, h.parseInline(token.tokens)));\n } else if (token.text) {\n content.push(h.createNode(\"paragraph\", {}, [h.createNode(\"text\", { text: token.text })]));\n } else {\n content.push(h.createNode(\"paragraph\", {}, []));\n }\n if (token.nestedTokens && token.nestedTokens.length > 0) {\n const nestedContent = h.parseChildren(token.nestedTokens);\n content.push(...nestedContent);\n }\n return h.createNode(\"taskItem\", { checked: token.checked || false }, content);\n },\n renderMarkdown: (node, h) => {\n var _a;\n const checkedChar = ((_a = node.attrs) == null ? void 0 : _a.checked) ? \"x\" : \" \";\n const prefix = `- [${checkedChar}] `;\n return renderNestedMarkdownContent2(node, h, prefix);\n },\n addKeyboardShortcuts() {\n const shortcuts = {\n Enter: () => this.editor.commands.splitListItem(this.name),\n \"Shift-Tab\": () => this.editor.commands.liftListItem(this.name)\n };\n if (!this.options.nested) {\n return shortcuts;\n }\n return {\n ...shortcuts,\n Tab: () => this.editor.commands.sinkListItem(this.name)\n };\n },\n addNodeView() {\n return ({ node, HTMLAttributes, getPos, editor }) => {\n const listItem = document.createElement(\"li\");\n const checkboxWrapper = document.createElement(\"label\");\n const checkboxStyler = document.createElement(\"span\");\n const checkbox = document.createElement(\"input\");\n const content = document.createElement(\"div\");\n const updateA11Y = (currentNode) => {\n var _a, _b;\n checkbox.ariaLabel = ((_b = (_a = this.options.a11y) == null ? void 0 : _a.checkboxLabel) == null ? void 0 : _b.call(_a, currentNode, checkbox.checked)) || `Task item checkbox for ${currentNode.textContent || \"empty task item\"}`;\n };\n updateA11Y(node);\n checkboxWrapper.contentEditable = \"false\";\n checkbox.type = \"checkbox\";\n checkbox.addEventListener(\"mousedown\", (event) => event.preventDefault());\n checkbox.addEventListener(\"change\", (event) => {\n if (!editor.isEditable && !this.options.onReadOnlyChecked) {\n checkbox.checked = !checkbox.checked;\n return;\n }\n const { checked } = event.target;\n if (editor.isEditable && typeof getPos === \"function\") {\n editor.chain().focus(void 0, { scrollIntoView: false }).command(({ tr }) => {\n const position = getPos();\n if (typeof position !== \"number\") {\n return false;\n }\n const currentNode = tr.doc.nodeAt(position);\n tr.setNodeMarkup(position, void 0, {\n ...currentNode == null ? void 0 : currentNode.attrs,\n checked\n });\n return true;\n }).run();\n }\n if (!editor.isEditable && this.options.onReadOnlyChecked) {\n if (!this.options.onReadOnlyChecked(node, checked)) {\n checkbox.checked = !checkbox.checked;\n }\n }\n });\n Object.entries(this.options.HTMLAttributes).forEach(([key, value]) => {\n listItem.setAttribute(key, value);\n });\n listItem.dataset.checked = node.attrs.checked;\n checkbox.checked = node.attrs.checked;\n checkboxWrapper.append(checkbox, checkboxStyler);\n listItem.append(checkboxWrapper, content);\n Object.entries(HTMLAttributes).forEach(([key, value]) => {\n listItem.setAttribute(key, value);\n });\n let prevRenderedAttributeKeys = new Set(Object.keys(HTMLAttributes));\n return {\n dom: listItem,\n contentDOM: content,\n update: (updatedNode) => {\n if (updatedNode.type !== this.type) {\n return false;\n }\n listItem.dataset.checked = updatedNode.attrs.checked;\n checkbox.checked = updatedNode.attrs.checked;\n updateA11Y(updatedNode);\n const extensionAttributes = editor.extensionManager.attributes;\n const newHTMLAttributes = getRenderedAttributes(updatedNode, extensionAttributes);\n const newKeys = new Set(Object.keys(newHTMLAttributes));\n const staticAttrs = this.options.HTMLAttributes;\n prevRenderedAttributeKeys.forEach((key) => {\n if (!newKeys.has(key)) {\n if (key in staticAttrs) {\n listItem.setAttribute(key, staticAttrs[key]);\n } else {\n listItem.removeAttribute(key);\n }\n }\n });\n Object.entries(newHTMLAttributes).forEach(([key, value]) => {\n if (value === null || value === void 0) {\n if (key in staticAttrs) {\n listItem.setAttribute(key, staticAttrs[key]);\n } else {\n listItem.removeAttribute(key);\n }\n } else {\n listItem.setAttribute(key, value);\n }\n });\n prevRenderedAttributeKeys = newKeys;\n return true;\n }\n };\n };\n },\n addInputRules() {\n return [\n wrappingInputRule3({\n find: inputRegex,\n type: this.type,\n getAttributes: (match) => ({\n checked: match[match.length - 1] === \"x\"\n })\n })\n ];\n }\n});\n\n// src/task-list/task-list.ts\nimport { mergeAttributes as mergeAttributes5, Node as Node5, parseIndentedBlocks } from \"@tiptap/core\";\nvar TaskList = Node5.create({\n name: \"taskList\",\n addOptions() {\n return {\n itemTypeName: \"taskItem\",\n HTMLAttributes: {}\n };\n },\n group: \"block list\",\n content() {\n return `${this.options.itemTypeName}+`;\n },\n parseHTML() {\n return [\n {\n tag: `ul[data-type=\"${this.name}\"]`,\n priority: 51\n }\n ];\n },\n renderHTML({ HTMLAttributes }) {\n return [\"ul\", mergeAttributes5(this.options.HTMLAttributes, HTMLAttributes, { \"data-type\": this.name }), 0];\n },\n parseMarkdown: (token, h) => {\n return h.createNode(\"taskList\", {}, h.parseChildren(token.items || []));\n },\n renderMarkdown: (node, h) => {\n if (!node.content) {\n return \"\";\n }\n return h.renderChildren(node.content, \"\\n\");\n },\n markdownTokenizer: {\n name: \"taskList\",\n level: \"block\",\n start(src) {\n var _a;\n const index = (_a = src.match(/^\\s*[-+*]\\s+\\[([ xX])\\]\\s+/)) == null ? void 0 : _a.index;\n return index !== void 0 ? index : -1;\n },\n tokenize(src, tokens, lexer) {\n const parseTaskListContent = (content) => {\n const nestedResult = parseIndentedBlocks(\n content,\n {\n itemPattern: /^(\\s*)([-+*])\\s+\\[([ xX])\\]\\s+(.*)$/,\n extractItemData: (match) => ({\n indentLevel: match[1].length,\n mainContent: match[4],\n checked: match[3].toLowerCase() === \"x\"\n }),\n createToken: (data, nestedTokens) => ({\n type: \"taskItem\",\n raw: \"\",\n mainContent: data.mainContent,\n indentLevel: data.indentLevel,\n checked: data.checked,\n text: data.mainContent,\n tokens: lexer.inlineTokens(data.mainContent),\n nestedTokens\n }),\n // Allow recursive nesting\n customNestedParser: parseTaskListContent\n },\n lexer\n );\n if (nestedResult) {\n return [\n {\n type: \"taskList\",\n raw: nestedResult.raw,\n items: nestedResult.items\n }\n ];\n }\n return lexer.blockTokens(content);\n };\n const result = parseIndentedBlocks(\n src,\n {\n itemPattern: /^(\\s*)([-+*])\\s+\\[([ xX])\\]\\s+(.*)$/,\n extractItemData: (match) => ({\n indentLevel: match[1].length,\n mainContent: match[4],\n checked: match[3].toLowerCase() === \"x\"\n }),\n createToken: (data, nestedTokens) => ({\n type: \"taskItem\",\n raw: \"\",\n mainContent: data.mainContent,\n indentLevel: data.indentLevel,\n checked: data.checked,\n text: data.mainContent,\n tokens: lexer.inlineTokens(data.mainContent),\n nestedTokens\n }),\n // Use the recursive parser for nested content\n customNestedParser: parseTaskListContent\n },\n lexer\n );\n if (!result) {\n return void 0;\n }\n return {\n type: \"taskList\",\n raw: result.raw,\n items: result.items\n };\n }\n },\n markdownOptions: {\n indentsContent: true\n },\n addCommands() {\n return {\n toggleTaskList: () => ({ commands }) => {\n return commands.toggleList(this.name, this.options.itemTypeName);\n }\n };\n },\n addKeyboardShortcuts() {\n return {\n \"Mod-Shift-9\": () => this.editor.commands.toggleTaskList()\n };\n }\n});\n\n// src/kit/index.ts\nvar ListKit = Extension2.create({\n name: \"listKit\",\n addExtensions() {\n const extensions = [];\n if (this.options.bulletList !== false) {\n extensions.push(BulletList.configure(this.options.bulletList));\n }\n if (this.options.listItem !== false) {\n extensions.push(ListItem.configure(this.options.listItem));\n }\n if (this.options.listKeymap !== false) {\n extensions.push(ListKeymap.configure(this.options.listKeymap));\n }\n if (this.options.orderedList !== false) {\n extensions.push(OrderedList.configure(this.options.orderedList));\n }\n if (this.options.taskItem !== false) {\n extensions.push(TaskItem.configure(this.options.taskItem));\n }\n if (this.options.taskList !== false) {\n extensions.push(TaskList.configure(this.options.taskList));\n }\n return extensions;\n }\n});\nexport {\n BulletList,\n ListItem,\n ListKeymap,\n ListKit,\n OrderedList,\n TaskItem,\n TaskList,\n bulletListInputRegex,\n inputRegex,\n listHelpers_exports as listHelpers,\n orderedListInputRegex\n};\n//# sourceMappingURL=index.js.map"],"names":["__defProp","Object","defineProperty","TextStyleName","bulletListInputRegex","BulletList","Node","create","name","addOptions","itemTypeName","HTMLAttributes","keepMarks","keepAttributes","group","content","this","options","parseHTML","tag","renderHTML","mergeAttributes","markdownTokenName","parseMarkdown","token","helpers","type","ordered","items","parseChildren","renderMarkdown","node","h","renderChildren","markdownOptions","indentsContent","addCommands","toggleBulletList","commands","chain","toggleList","updateAttributes","editor","getAttributes","run","addKeyboardShortcuts","addInputRules","inputRule","wrappingInputRule","find","ListItem","Node2","bulletListTypeName","orderedListTypeName","defining","mergeAttributes2","_a","parseBlockChildren","tokens","length","some","t","firstToken","parseInline","additionalContent","slice","push","ctx","renderNestedMarkdownContent","context","_b","parentType","meta","parentAttrs","start","index","Enter","splitListItem","Tab","sinkListItem","liftListItem","listHelpers_exports","target","all","get","enumerable","__export","findListItemPos","getNextListDepth","handleBackspace","handleDelete","hasListBefore","hasListItemAfter","hasListItemBefore","listItemHasSubList","nextListIsDeeper","nextListIsHigher","typeOrName","state","$from","selection","nodeType","getNodeType","schema","currentNode","currentDepth","depth","currentPos","pos","targetDepth","$pos","doc","resolve","listItemPos","getNodeAtPosition","editorState","parentListTypes","$anchor","previousNodePos","Math","max","previousNode","includes","$targetPos","nodeBefore","getNodeType2","hasSubList","descendants","child","undoInputRule","from","to","isNodeActive","$listPos","before","listDescendants","lastItem","at","$lastItemPos","cut","end","joinForward","isAtStartOfNode","prevNode","previousListItemHasSubList","joinItemBackward","listDepth","isNodeActive2","isAtEndOfNode","$to","empty","sameParent","focus","lift","joinBackward","joinItemForward","parentOffset","parent","childCount","nodeAfter","ListKeymap","Extension","listTypes","itemName","wrapperNames","Delete","handled","forEach","nodes","Backspace","ORDERED_LIST_ITEM_REGEX","INDENTED_LINE_REGEX","splitItemContent","contentLines","paragraphLines","blockLines","reachedBlockBoundary","line","trim","trimmedLine","trimStart","test","isBlockContentLine","buildNestedStructure","baseIndent","lexer","result","currentIndex","item","indent","mainText","join","raw","inlineTokens","blockTokens","lookAheadIndex","nestedItems","nextIndent","min","map","nestedItem","nestedListItems","number","TextStyleName2","orderedListInputRegex","OrderedList","Node3","addAttributes","default","element","hasAttribute","parseInt","getAttribute","attributesWithoutStart","mergeAttributes3","startValue","itemToken","inlineContent","parsed","parseListItems","attrs","markdownTokenizer","level","src","match","tokenize","_tokens","lines","split","listItems","consumed","currentLineIndex","indentLevel","itemContentLines","nextLineIndex","itemLines","sawBlankLine","nextLine","collectOrderedListItems","toggleOrderedList","wrappingInputRule2","joinPredicate","inputRegex","TaskItem","Node4","nested","taskListTypeName","a11y","checked","keepOnSplit","dataChecked","attributes","priority","mergeAttributes4","createNode","text","nestedTokens","nestedContent","checkedChar","renderNestedMarkdownContent2","shortcuts","addNodeView","getPos","listItem","document","createElement","checkboxWrapper","checkboxStyler","checkbox","updateA11Y","ariaLabel","checkboxLabel","call","textContent","contentEditable","addEventListener","event","preventDefault","isEditable","onReadOnlyChecked","scrollIntoView","command","tr","position","nodeAt","setNodeMarkup","entries","key","value","setAttribute","dataset","append","prevRenderedAttributeKeys","Set","keys","dom","contentDOM","update","updatedNode","extensionAttributes","extensionManager","newHTMLAttributes","getRenderedAttributes","newKeys","staticAttrs","has","removeAttribute","wrappingInputRule3","TaskList","Node5","mergeAttributes5","parseTaskListContent","nestedResult","parseIndentedBlocks","itemPattern","extractItemData","mainContent","toLowerCase","createToken","data","customNestedParser","toggleTaskList","Extension2","addExtensions","extensions","bulletList","configure","listKeymap","orderedList","taskItem","taskList"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{Node as t,mergeAttributes as e,callOrReturn as n,getExtensionField as l,Extension as o,findParentNodeClosestToPos as a}from"../../core/dist/index.mjs";import{TextSelection as r}from"../../../prosemirror-state/dist/index.mjs";import{columnResizing as s,tableEditing as i,CellSelection as c,fixTables as d,goToNextCell as h,setCellAttr as p,mergeCells as u,splitCell as b,toggleHeaderCell as f,toggleHeader as m,deleteTable as g,deleteRow as w,addRowAfter as y,addRowBefore as M,deleteColumn as C,addColumnAfter as T,addColumnBefore as H}from"../../../prosemirror-tables/dist/index.mjs";function A(t){return"left"===t||"right"===t||"center"===t?t:null}function x(){return{default:null,parseHTML:t=>function(t){const e=(t.style.textAlign||"").trim().toLowerCase(),n=(t.getAttribute("align")||"").trim().toLowerCase();return A(e||n)}(t),renderHTML:t=>t.align?{style:`text-align: ${t.align}`}:{}}}var L=t.create({name:"tableCell",addOptions:()=>({HTMLAttributes:{}}),content:"block+",addAttributes:()=>({colspan:{default:1},rowspan:{default:1},colwidth:{default:null,parseHTML:t=>{var e,n;const l=t.getAttribute("colwidth"),o=l?l.split(",").map((t=>parseInt(t,10))):null;if(!o){const l=null==(e=t.closest("table"))?void 0:e.querySelectorAll("colgroup > col"),o=Array.from((null==(n=t.parentElement)?void 0:n.children)||[]).indexOf(t);if(o&&o>-1&&l&&l[o]){const t=l[o].getAttribute("width");return t?[parseInt(t,10)]:null}}return o}},align:x()}),tableRole:"cell",isolating:!0,parseHTML:()=>[{tag:"td"}],renderHTML({HTMLAttributes:t}){return["td",e(this.options.HTMLAttributes,t),0]}}),v=t.create({name:"tableHeader",addOptions:()=>({HTMLAttributes:{}}),content:"block+",addAttributes:()=>({colspan:{default:1},rowspan:{default:1},colwidth:{default:null,parseHTML:t=>{const e=t.getAttribute("colwidth");return e?e.split(",").map((t=>parseInt(t,10))):null}},align:x()}),tableRole:"header_cell",isolating:!0,parseHTML:()=>[{tag:"th"}],renderHTML({HTMLAttributes:t}){return["th",e(this.options.HTMLAttributes,t),0]}}),R=t.create({name:"tableRow",addOptions:()=>({HTMLAttributes:{}}),content:"(tableCell | tableHeader)*",tableRole:"row",parseHTML:()=>[{tag:"tr"}],renderHTML({HTMLAttributes:t}){return["tr",e(this.options.HTMLAttributes,t),0]}});function W(t,e){return e?["width",`${Math.max(e,t)}px`]:["min-width",`${t}px`]}function $(t,e,n,l,o,a){var r;let s=0,i=!0,c=e.firstChild;const d=t.firstChild;if(null!==d)for(let t=0,n=0;t<d.childCount;t+=1){const{colspan:r,colwidth:h}=d.child(t).attrs;for(let t=0;t<r;t+=1,n+=1){const r=o===n?a:h&&h[t],d=r?`${r}px`:"";if(s+=r||l,r||(i=!1),c){if(c.style.width!==d){const[t,e]=W(l,r);c.style.setProperty(t,e)}c=c.nextSibling}else{const t=document.createElement("col"),[n,o]=W(l,r);t.style.setProperty(n,o),e.appendChild(t)}}}for(;c;){const t=c.nextSibling;null==(r=c.parentNode)||r.removeChild(c),c=t}const h=t.attrs.style&&"string"==typeof t.attrs.style&&/\bwidth\s*:/i.test(t.attrs.style);i&&!h?(n.style.width=`${s}px`,n.style.minWidth=""):(n.style.width="",n.style.minWidth=`${s}px`)}var N=class{constructor(t,e){this.node=t,this.cellMinWidth=e,this.dom=document.createElement("div"),this.dom.className="tableWrapper",this.table=this.dom.appendChild(document.createElement("table")),t.attrs.style&&(this.table.style.cssText=t.attrs.style),this.colgroup=this.table.appendChild(document.createElement("colgroup")),$(t,this.colgroup,this.table,e),this.contentDOM=this.table.appendChild(document.createElement("tbody"))}update(t){return t.type===this.node.type&&(this.node=t,$(t,this.colgroup,this.table,this.cellMinWidth),!0)}ignoreMutation(t){const e=t.target,n=this.dom.contains(e),l=this.contentDOM.contains(e);return!(!n||l||"attributes"!==t.type&&"childList"!==t.type&&"characterData"!==t.type)}};function E(t,e,n,l){let o=0,a=!0;const r=[],s=t.firstChild;if(!s)return{};for(let t=0,i=0;t<s.childCount;t+=1){const{colspan:c,colwidth:d}=s.child(t).attrs;for(let t=0;t<c;t+=1,i+=1){const s=n===i?l:d&&d[t];o+=s||e,s||(a=!1);const[c,h]=W(e,s);r.push(["col",{style:`${c}: ${h}`}])}}const i=a?`${o}px`:"",c=a?"":`${o}px`;return{colgroup:["colgroup",{},...r],tableWidth:i,tableMinWidth:c}}function S(t,e){return t.createAndFill()}function k(t,e,n,l,o){const a=function(t){if(t.cached.tableNodeTypes)return t.cached.tableNodeTypes;const e={};return Object.keys(t.nodes).forEach((n=>{const l=t.nodes[n];l.spec.tableRole&&(e[l.spec.tableRole]=l)})),t.cached.tableNodeTypes=e,e}(t),r=[],s=[];for(let t=0;t<n;t+=1){const t=S(a.cell);if(t&&s.push(t),l){const t=S(a.header_cell);t&&r.push(t)}}const i=[];for(let t=0;t<e;t+=1)i.push(a.row.createChecked(null,l&&0===t?r:s));return a.table.createChecked(null,i)}var O=({editor:t})=>{const{selection:e}=t.state;if(!(e instanceof c))return!1;let n=0;const l=a(e.ranges[0].$from,(t=>"table"===t.type.name));null==l||l.node.descendants((t=>{if("table"===t.type.name)return!1;["tableCell","tableHeader"].includes(t.type.name)&&(n+=1)}));return n===e.ranges.length&&(t.commands.deleteTable(),!0)},j="";function I(t,e,n={}){var l;const o=null!=(l=n.cellLineSeparator)?l:"";if(!t||!t.content||0===t.content.length)return"";const a=[];t.content.forEach((t=>{const n=[];t.content&&t.content.forEach((t=>{let l="";if(t.content&&Array.isArray(t.content)&&t.content.length>1){l=t.content.map((t=>e.renderChildren(t))).join(o)}else l=t.content?e.renderChildren(t.content):"";const a=(l||"").replace(/\s+/g," ").trim();const r="tableHeader"===t.type,s=A(null==(i=t.attrs)?void 0:i.align);var i;n.push({text:a,isHeader:r,align:s})})),a.push(n)}));const r=a.reduce(((t,e)=>Math.max(t,e.length)),0);if(0===r)return"";const s=new Array(r).fill(0);a.forEach((t=>{var e;for(let n=0;n<r;n+=1){const l=((null==(e=t[n])?void 0:e.text)||"").length;l>s[n]&&(s[n]=l),s[n]<3&&(s[n]=3)}}));const i=(t,e)=>t+" ".repeat(Math.max(0,e-t.length)),c=a[0],d=c.some((t=>t.isHeader)),h=new Array(r).fill(null);a.forEach((t=>{var e;for(let n=0;n<r;n+=1)!h[n]&&(null==(e=t[n])?void 0:e.align)&&(h[n]=t[n].align)}));let p="\n";const u=new Array(r).fill(0).map(((t,e)=>d&&c[e]&&c[e].text||""));p+=`| ${u.map(((t,e)=>i(t,s[e]))).join(" | ")} |\n`,p+=`| ${s.map(((t,e)=>{const n=Math.max(3,t),l=h[e];return"left"===l?`:${"-".repeat(n)}`:"right"===l?`${"-".repeat(n)}:`:"center"===l?`:${"-".repeat(n)}:`:"-".repeat(n)})).join(" | ")} |\n`;return(d?a.slice(1):a).forEach((t=>{p+=`| ${new Array(r).fill(0).map(((e,n)=>i(t[n]&&t[n].text||"",s[n]))).join(" | ")} |\n`})),p}var P=I,z=t.create({name:"table",addOptions:()=>({HTMLAttributes:{},resizable:!1,renderWrapper:!1,handleWidth:5,cellMinWidth:25,View:N,lastColumnResizable:!0,allowTableNodeSelection:!1}),content:"tableRow+",tableRole:"table",isolating:!0,group:"block",parseHTML:()=>[{tag:"table"}],renderHTML({node:t,HTMLAttributes:n}){const{colgroup:l,tableWidth:o,tableMinWidth:a}=E(t,this.options.cellMinWidth),r=n.style;const s=["table",e(this.options.HTMLAttributes,n,{style:r||(o?`width: ${o}`:`min-width: ${a}`)}),l,["tbody",0]];return this.options.renderWrapper?["div",{class:"tableWrapper"},s]:s},parseMarkdown:(t,e)=>{const n=[],l=Array.isArray(t.align)?t.align:[];if(t.header){const o=[];t.header.forEach(((t,n)=>{var a;const r=A(null!=(a=l[n])?a:t.align),s=r?{align:r}:{};o.push(e.createNode("tableHeader",s,[{type:"paragraph",content:e.parseInline(t.tokens)}]))})),n.push(e.createNode("tableRow",{},o))}return t.rows&&t.rows.forEach((t=>{const o=[];t.forEach(((t,n)=>{var a;const r=A(null!=(a=l[n])?a:t.align),s=r?{align:r}:{};o.push(e.createNode("tableCell",s,[{type:"paragraph",content:e.parseInline(t.tokens)}]))})),n.push(e.createNode("tableRow",{},o))})),e.createNode("table",void 0,n)},renderMarkdown:(t,e)=>P(t,e),addCommands:()=>({insertTable:({rows:t=3,cols:e=3,withHeaderRow:n=!0}={})=>({tr:l,dispatch:o,editor:a})=>{const s=k(a.schema,t,e,n);if(o){const t=l.selection.from+1;l.replaceSelectionWith(s).scrollIntoView().setSelection(r.near(l.doc.resolve(t)))}return!0},addColumnBefore:()=>({state:t,dispatch:e})=>H(t,e),addColumnAfter:()=>({state:t,dispatch:e})=>T(t,e),deleteColumn:()=>({state:t,dispatch:e})=>C(t,e),addRowBefore:()=>({state:t,dispatch:e})=>M(t,e),addRowAfter:()=>({state:t,dispatch:e})=>y(t,e),deleteRow:()=>({state:t,dispatch:e})=>w(t,e),deleteTable:()=>({state:t,dispatch:e})=>g(t,e),mergeCells:()=>({state:t,dispatch:e})=>u(t,e),splitCell:()=>({state:t,dispatch:e})=>b(t,e),toggleHeaderColumn:()=>({state:t,dispatch:e})=>m("column")(t,e),toggleHeaderRow:()=>({state:t,dispatch:e})=>m("row")(t,e),toggleHeaderCell:()=>({state:t,dispatch:e})=>f(t,e),mergeOrSplit:()=>({state:t,dispatch:e})=>!!u(t,e)||b(t,e),setCellAttribute:(t,e)=>({state:n,dispatch:l})=>p(t,e)(n,l),goToNextCell:()=>({state:t,dispatch:e})=>h(1)(t,e),goToPreviousCell:()=>({state:t,dispatch:e})=>h(-1)(t,e),fixTables:()=>({state:t,dispatch:e})=>(e&&d(t),!0),setCellSelection:t=>({tr:e,dispatch:n})=>{if(n){const n=c.create(e.doc,t.anchorCell,t.headCell);e.setSelection(n)}return!0}}),addKeyboardShortcuts(){return{Tab:()=>!!this.editor.commands.goToNextCell()||!!this.editor.can().addRowAfter()&&this.editor.chain().addRowAfter().goToNextCell().run(),"Shift-Tab":()=>this.editor.commands.goToPreviousCell(),Backspace:O,"Mod-Backspace":O,Delete:O,"Mod-Delete":O}},addProseMirrorPlugins(){return[...this.options.resizable&&this.editor.isEditable?[s({handleWidth:this.options.handleWidth,cellMinWidth:this.options.cellMinWidth,defaultCellMinWidth:this.options.cellMinWidth,View:this.options.View,lastColumnResizable:this.options.lastColumnResizable})]:[],i({allowTableNodeSelection:this.options.allowTableNodeSelection})]},extendNodeSchema(t){const e={name:t.name,options:t.options,storage:t.storage};return{tableRole:n(l(t,"tableRole",e))}}});o.create({name:"tableKit",addExtensions(){const t=[];return!1!==this.options.table&&t.push(z.configure(this.options.table)),!1!==this.options.tableCell&&t.push(L.configure(this.options.tableCell)),!1!==this.options.tableHeader&&t.push(v.configure(this.options.tableHeader)),!1!==this.options.tableRow&&t.push(R.configure(this.options.tableRow)),t}});export{j as DEFAULT_CELL_LINE_SEPARATOR,z as Table,L as TableCell,v as TableHeader,R as TableRow,N as TableView,E as createColGroup,k as createTable,I as renderTableToMarkdown,$ as updateColumns};
|
|
2
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../../node_modules/@tiptap/extension-table/dist/index.js"],"sourcesContent":["// src/cell/table-cell.ts\nimport { mergeAttributes, Node } from \"@tiptap/core\";\n\n// src/utilities/parseAlign.ts\nfunction normalizeTableCellAlign(value) {\n if (value === \"left\" /* Left */ || value === \"right\" /* Right */ || value === \"center\" /* Center */) {\n return value;\n }\n return null;\n}\nfunction parseAlign(element) {\n const styleAlign = (element.style.textAlign || \"\").trim().toLowerCase();\n const attrAlign = (element.getAttribute(\"align\") || \"\").trim().toLowerCase();\n const align = styleAlign || attrAlign;\n return normalizeTableCellAlign(align);\n}\nfunction normalizeTableCellAlignFromAttributes(attributes) {\n return normalizeTableCellAlign(attributes == null ? void 0 : attributes.align);\n}\nfunction createAlignAttribute() {\n return {\n default: null,\n parseHTML: (element) => parseAlign(element),\n renderHTML: (attributes) => {\n if (!attributes.align) {\n return {};\n }\n return {\n style: `text-align: ${attributes.align}`\n };\n }\n };\n}\n\n// src/cell/table-cell.ts\nvar TableCell = Node.create({\n name: \"tableCell\",\n addOptions() {\n return {\n HTMLAttributes: {}\n };\n },\n content: \"block+\",\n addAttributes() {\n return {\n colspan: {\n default: 1\n },\n rowspan: {\n default: 1\n },\n colwidth: {\n default: null,\n parseHTML: (element) => {\n var _a, _b;\n const colwidth = element.getAttribute(\"colwidth\");\n const value = colwidth ? colwidth.split(\",\").map((width) => parseInt(width, 10)) : null;\n if (!value) {\n const cols = (_a = element.closest(\"table\")) == null ? void 0 : _a.querySelectorAll(\"colgroup > col\");\n const cellIndex = Array.from(((_b = element.parentElement) == null ? void 0 : _b.children) || []).indexOf(element);\n if (cellIndex && cellIndex > -1 && cols && cols[cellIndex]) {\n const colWidth = cols[cellIndex].getAttribute(\"width\");\n return colWidth ? [parseInt(colWidth, 10)] : null;\n }\n }\n return value;\n }\n },\n align: createAlignAttribute()\n };\n },\n tableRole: \"cell\",\n isolating: true,\n parseHTML() {\n return [{ tag: \"td\" }];\n },\n renderHTML({ HTMLAttributes }) {\n return [\"td\", mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];\n }\n});\n\n// src/header/table-header.ts\nimport { mergeAttributes as mergeAttributes2, Node as Node2 } from \"@tiptap/core\";\nvar TableHeader = Node2.create({\n name: \"tableHeader\",\n addOptions() {\n return {\n HTMLAttributes: {}\n };\n },\n content: \"block+\",\n addAttributes() {\n return {\n colspan: {\n default: 1\n },\n rowspan: {\n default: 1\n },\n colwidth: {\n default: null,\n parseHTML: (element) => {\n const colwidth = element.getAttribute(\"colwidth\");\n const value = colwidth ? colwidth.split(\",\").map((width) => parseInt(width, 10)) : null;\n return value;\n }\n },\n align: createAlignAttribute()\n };\n },\n tableRole: \"header_cell\",\n isolating: true,\n parseHTML() {\n return [{ tag: \"th\" }];\n },\n renderHTML({ HTMLAttributes }) {\n return [\"th\", mergeAttributes2(this.options.HTMLAttributes, HTMLAttributes), 0];\n }\n});\n\n// src/kit/index.ts\nimport { Extension } from \"@tiptap/core\";\n\n// src/row/table-row.ts\nimport { mergeAttributes as mergeAttributes3, Node as Node3 } from \"@tiptap/core\";\nvar TableRow = Node3.create({\n name: \"tableRow\",\n addOptions() {\n return {\n HTMLAttributes: {}\n };\n },\n content: \"(tableCell | tableHeader)*\",\n tableRole: \"row\",\n parseHTML() {\n return [{ tag: \"tr\" }];\n },\n renderHTML({ HTMLAttributes }) {\n return [\"tr\", mergeAttributes3(this.options.HTMLAttributes, HTMLAttributes), 0];\n }\n});\n\n// src/table/table.ts\nimport {\n callOrReturn,\n getExtensionField,\n mergeAttributes as mergeAttributes4,\n Node as Node4\n} from \"@tiptap/core\";\nimport { TextSelection } from \"@tiptap/pm/state\";\nimport {\n addColumnAfter,\n addColumnBefore,\n addRowAfter,\n addRowBefore,\n CellSelection as CellSelection2,\n columnResizing,\n deleteColumn,\n deleteRow,\n deleteTable,\n fixTables,\n goToNextCell,\n mergeCells,\n setCellAttr,\n splitCell,\n tableEditing,\n toggleHeader,\n toggleHeaderCell\n} from \"@tiptap/pm/tables\";\n\n// src/table/utilities/colStyle.ts\nfunction getColStyleDeclaration(minWidth, width) {\n if (width) {\n return [\"width\", `${Math.max(width, minWidth)}px`];\n }\n return [\"min-width\", `${minWidth}px`];\n}\n\n// src/table/TableView.ts\nfunction updateColumns(node, colgroup, table, cellMinWidth, overrideCol, overrideValue) {\n var _a;\n let totalWidth = 0;\n let fixedWidth = true;\n let nextDOM = colgroup.firstChild;\n const row = node.firstChild;\n if (row !== null) {\n for (let i = 0, col = 0; i < row.childCount; i += 1) {\n const { colspan, colwidth } = row.child(i).attrs;\n for (let j = 0; j < colspan; j += 1, col += 1) {\n const hasWidth = overrideCol === col ? overrideValue : colwidth && colwidth[j];\n const cssWidth = hasWidth ? `${hasWidth}px` : \"\";\n totalWidth += hasWidth || cellMinWidth;\n if (!hasWidth) {\n fixedWidth = false;\n }\n if (!nextDOM) {\n const colElement = document.createElement(\"col\");\n const [propertyKey, propertyValue] = getColStyleDeclaration(cellMinWidth, hasWidth);\n colElement.style.setProperty(propertyKey, propertyValue);\n colgroup.appendChild(colElement);\n } else {\n if (nextDOM.style.width !== cssWidth) {\n const [propertyKey, propertyValue] = getColStyleDeclaration(cellMinWidth, hasWidth);\n nextDOM.style.setProperty(propertyKey, propertyValue);\n }\n nextDOM = nextDOM.nextSibling;\n }\n }\n }\n }\n while (nextDOM) {\n const after = nextDOM.nextSibling;\n (_a = nextDOM.parentNode) == null ? void 0 : _a.removeChild(nextDOM);\n nextDOM = after;\n }\n const hasUserWidth = node.attrs.style && typeof node.attrs.style === \"string\" && /\\bwidth\\s*:/i.test(node.attrs.style);\n if (fixedWidth && !hasUserWidth) {\n table.style.width = `${totalWidth}px`;\n table.style.minWidth = \"\";\n } else {\n table.style.width = \"\";\n table.style.minWidth = `${totalWidth}px`;\n }\n}\nvar TableView = class {\n constructor(node, cellMinWidth) {\n this.node = node;\n this.cellMinWidth = cellMinWidth;\n this.dom = document.createElement(\"div\");\n this.dom.className = \"tableWrapper\";\n this.table = this.dom.appendChild(document.createElement(\"table\"));\n if (node.attrs.style) {\n this.table.style.cssText = node.attrs.style;\n }\n this.colgroup = this.table.appendChild(document.createElement(\"colgroup\"));\n updateColumns(node, this.colgroup, this.table, cellMinWidth);\n this.contentDOM = this.table.appendChild(document.createElement(\"tbody\"));\n }\n update(node) {\n if (node.type !== this.node.type) {\n return false;\n }\n this.node = node;\n updateColumns(node, this.colgroup, this.table, this.cellMinWidth);\n return true;\n }\n ignoreMutation(mutation) {\n const target = mutation.target;\n const isInsideWrapper = this.dom.contains(target);\n const isInsideContent = this.contentDOM.contains(target);\n if (isInsideWrapper && !isInsideContent) {\n if (mutation.type === \"attributes\" || mutation.type === \"childList\" || mutation.type === \"characterData\") {\n return true;\n }\n }\n return false;\n }\n};\n\n// src/table/utilities/createColGroup.ts\nfunction createColGroup(node, cellMinWidth, overrideCol, overrideValue) {\n let totalWidth = 0;\n let fixedWidth = true;\n const cols = [];\n const row = node.firstChild;\n if (!row) {\n return {};\n }\n for (let i = 0, col = 0; i < row.childCount; i += 1) {\n const { colspan, colwidth } = row.child(i).attrs;\n for (let j = 0; j < colspan; j += 1, col += 1) {\n const hasWidth = overrideCol === col ? overrideValue : colwidth && colwidth[j];\n totalWidth += hasWidth || cellMinWidth;\n if (!hasWidth) {\n fixedWidth = false;\n }\n const [property, value] = getColStyleDeclaration(cellMinWidth, hasWidth);\n cols.push([\"col\", { style: `${property}: ${value}` }]);\n }\n }\n const tableWidth = fixedWidth ? `${totalWidth}px` : \"\";\n const tableMinWidth = fixedWidth ? \"\" : `${totalWidth}px`;\n const colgroup = [\"colgroup\", {}, ...cols];\n return { colgroup, tableWidth, tableMinWidth };\n}\n\n// src/table/utilities/createCell.ts\nfunction createCell(cellType, cellContent) {\n if (cellContent) {\n return cellType.createChecked(null, cellContent);\n }\n return cellType.createAndFill();\n}\n\n// src/table/utilities/getTableNodeTypes.ts\nfunction getTableNodeTypes(schema) {\n if (schema.cached.tableNodeTypes) {\n return schema.cached.tableNodeTypes;\n }\n const roles = {};\n Object.keys(schema.nodes).forEach((type) => {\n const nodeType = schema.nodes[type];\n if (nodeType.spec.tableRole) {\n roles[nodeType.spec.tableRole] = nodeType;\n }\n });\n schema.cached.tableNodeTypes = roles;\n return roles;\n}\n\n// src/table/utilities/createTable.ts\nfunction createTable(schema, rowsCount, colsCount, withHeaderRow, cellContent) {\n const types = getTableNodeTypes(schema);\n const headerCells = [];\n const cells = [];\n for (let index = 0; index < colsCount; index += 1) {\n const cell = createCell(types.cell, cellContent);\n if (cell) {\n cells.push(cell);\n }\n if (withHeaderRow) {\n const headerCell = createCell(types.header_cell, cellContent);\n if (headerCell) {\n headerCells.push(headerCell);\n }\n }\n }\n const rows = [];\n for (let index = 0; index < rowsCount; index += 1) {\n rows.push(types.row.createChecked(null, withHeaderRow && index === 0 ? headerCells : cells));\n }\n return types.table.createChecked(null, rows);\n}\n\n// src/table/utilities/deleteTableWhenAllCellsSelected.ts\nimport { findParentNodeClosestToPos } from \"@tiptap/core\";\n\n// src/table/utilities/isCellSelection.ts\nimport { CellSelection } from \"@tiptap/pm/tables\";\nfunction isCellSelection(value) {\n return value instanceof CellSelection;\n}\n\n// src/table/utilities/deleteTableWhenAllCellsSelected.ts\nvar deleteTableWhenAllCellsSelected = ({ editor }) => {\n const { selection } = editor.state;\n if (!isCellSelection(selection)) {\n return false;\n }\n let cellCount = 0;\n const table = findParentNodeClosestToPos(selection.ranges[0].$from, (node) => {\n return node.type.name === \"table\";\n });\n table == null ? void 0 : table.node.descendants((node) => {\n if (node.type.name === \"table\") {\n return false;\n }\n if ([\"tableCell\", \"tableHeader\"].includes(node.type.name)) {\n cellCount += 1;\n }\n });\n const allCellsSelected = cellCount === selection.ranges.length;\n if (!allCellsSelected) {\n return false;\n }\n editor.commands.deleteTable();\n return true;\n};\n\n// src/table/utilities/markdown.ts\nvar DEFAULT_CELL_LINE_SEPARATOR = \"\u001f\";\nfunction collapseWhitespace(s) {\n return (s || \"\").replace(/\\s+/g, \" \").trim();\n}\nfunction renderTableToMarkdown(node, h, options = {}) {\n var _a;\n const cellSep = (_a = options.cellLineSeparator) != null ? _a : DEFAULT_CELL_LINE_SEPARATOR;\n if (!node || !node.content || node.content.length === 0) {\n return \"\";\n }\n const rows = [];\n node.content.forEach((rowNode) => {\n const cells = [];\n if (rowNode.content) {\n rowNode.content.forEach((cellNode) => {\n let raw = \"\";\n if (cellNode.content && Array.isArray(cellNode.content) && cellNode.content.length > 1) {\n const parts = cellNode.content.map((child) => h.renderChildren(child));\n raw = parts.join(cellSep);\n } else {\n raw = cellNode.content ? h.renderChildren(cellNode.content) : \"\";\n }\n const text = collapseWhitespace(raw);\n const isHeader = cellNode.type === \"tableHeader\";\n const align = normalizeTableCellAlignFromAttributes(cellNode.attrs);\n cells.push({ text, isHeader, align });\n });\n }\n rows.push(cells);\n });\n const columnCount = rows.reduce((max, r) => Math.max(max, r.length), 0);\n if (columnCount === 0) {\n return \"\";\n }\n const colWidths = new Array(columnCount).fill(0);\n rows.forEach((r) => {\n var _a2;\n for (let i = 0; i < columnCount; i += 1) {\n const cell = ((_a2 = r[i]) == null ? void 0 : _a2.text) || \"\";\n const len = cell.length;\n if (len > colWidths[i]) {\n colWidths[i] = len;\n }\n if (colWidths[i] < 3) {\n colWidths[i] = 3;\n }\n }\n });\n const pad = (s, width) => s + \" \".repeat(Math.max(0, width - s.length));\n const headerRow = rows[0];\n const hasHeader = headerRow.some((c) => c.isHeader);\n const colAlignments = new Array(columnCount).fill(null);\n rows.forEach((r) => {\n var _a2;\n for (let i = 0; i < columnCount; i += 1) {\n if (!colAlignments[i] && ((_a2 = r[i]) == null ? void 0 : _a2.align)) {\n colAlignments[i] = r[i].align;\n }\n }\n });\n let out = \"\\n\";\n const headerTexts = new Array(columnCount).fill(0).map((_, i) => hasHeader ? headerRow[i] && headerRow[i].text || \"\" : \"\");\n out += `| ${headerTexts.map((t, i) => pad(t, colWidths[i])).join(\" | \")} |\n`;\n out += `| ${colWidths.map((w, index) => {\n const dashCount = Math.max(3, w);\n const alignment = colAlignments[index];\n if (alignment === \"left\" /* Left */) {\n return `:${\"-\".repeat(dashCount)}`;\n }\n if (alignment === \"right\" /* Right */) {\n return `${\"-\".repeat(dashCount)}:`;\n }\n if (alignment === \"center\" /* Center */) {\n return `:${\"-\".repeat(dashCount)}:`;\n }\n return \"-\".repeat(dashCount);\n }).join(\" | \")} |\n`;\n const body = hasHeader ? rows.slice(1) : rows;\n body.forEach((r) => {\n out += `| ${new Array(columnCount).fill(0).map((_, i) => pad(r[i] && r[i].text || \"\", colWidths[i])).join(\" | \")} |\n`;\n });\n return out;\n}\nvar markdown_default = renderTableToMarkdown;\n\n// src/table/table.ts\nvar Table = Node4.create({\n name: \"table\",\n // @ts-ignore\n addOptions() {\n return {\n HTMLAttributes: {},\n resizable: false,\n renderWrapper: false,\n handleWidth: 5,\n cellMinWidth: 25,\n // TODO: fix\n View: TableView,\n lastColumnResizable: true,\n allowTableNodeSelection: false\n };\n },\n content: \"tableRow+\",\n tableRole: \"table\",\n isolating: true,\n group: \"block\",\n parseHTML() {\n return [{ tag: \"table\" }];\n },\n renderHTML({ node, HTMLAttributes }) {\n const { colgroup, tableWidth, tableMinWidth } = createColGroup(node, this.options.cellMinWidth);\n const userStyles = HTMLAttributes.style;\n function getTableStyle() {\n if (userStyles) {\n return userStyles;\n }\n return tableWidth ? `width: ${tableWidth}` : `min-width: ${tableMinWidth}`;\n }\n const table = [\n \"table\",\n mergeAttributes4(this.options.HTMLAttributes, HTMLAttributes, {\n style: getTableStyle()\n }),\n colgroup,\n [\"tbody\", 0]\n ];\n return this.options.renderWrapper ? [\"div\", { class: \"tableWrapper\" }, table] : table;\n },\n parseMarkdown: (token, h) => {\n const rows = [];\n const alignments = Array.isArray(token.align) ? token.align : [];\n if (token.header) {\n const headerCells = [];\n token.header.forEach((cell, index) => {\n var _a;\n const align = normalizeTableCellAlign((_a = alignments[index]) != null ? _a : cell.align);\n const attrs = align ? { align } : {};\n headerCells.push(\n h.createNode(\"tableHeader\", attrs, [{ type: \"paragraph\", content: h.parseInline(cell.tokens) }])\n );\n });\n rows.push(h.createNode(\"tableRow\", {}, headerCells));\n }\n if (token.rows) {\n token.rows.forEach((row) => {\n const bodyCells = [];\n row.forEach((cell, index) => {\n var _a;\n const align = normalizeTableCellAlign((_a = alignments[index]) != null ? _a : cell.align);\n const attrs = align ? { align } : {};\n bodyCells.push(h.createNode(\"tableCell\", attrs, [{ type: \"paragraph\", content: h.parseInline(cell.tokens) }]));\n });\n rows.push(h.createNode(\"tableRow\", {}, bodyCells));\n });\n }\n return h.createNode(\"table\", void 0, rows);\n },\n renderMarkdown: (node, h) => {\n return markdown_default(node, h);\n },\n addCommands() {\n return {\n insertTable: ({ rows = 3, cols = 3, withHeaderRow = true } = {}) => ({ tr, dispatch, editor }) => {\n const node = createTable(editor.schema, rows, cols, withHeaderRow);\n if (dispatch) {\n const offset = tr.selection.from + 1;\n tr.replaceSelectionWith(node).scrollIntoView().setSelection(TextSelection.near(tr.doc.resolve(offset)));\n }\n return true;\n },\n addColumnBefore: () => ({ state, dispatch }) => {\n return addColumnBefore(state, dispatch);\n },\n addColumnAfter: () => ({ state, dispatch }) => {\n return addColumnAfter(state, dispatch);\n },\n deleteColumn: () => ({ state, dispatch }) => {\n return deleteColumn(state, dispatch);\n },\n addRowBefore: () => ({ state, dispatch }) => {\n return addRowBefore(state, dispatch);\n },\n addRowAfter: () => ({ state, dispatch }) => {\n return addRowAfter(state, dispatch);\n },\n deleteRow: () => ({ state, dispatch }) => {\n return deleteRow(state, dispatch);\n },\n deleteTable: () => ({ state, dispatch }) => {\n return deleteTable(state, dispatch);\n },\n mergeCells: () => ({ state, dispatch }) => {\n return mergeCells(state, dispatch);\n },\n splitCell: () => ({ state, dispatch }) => {\n return splitCell(state, dispatch);\n },\n toggleHeaderColumn: () => ({ state, dispatch }) => {\n return toggleHeader(\"column\")(state, dispatch);\n },\n toggleHeaderRow: () => ({ state, dispatch }) => {\n return toggleHeader(\"row\")(state, dispatch);\n },\n toggleHeaderCell: () => ({ state, dispatch }) => {\n return toggleHeaderCell(state, dispatch);\n },\n mergeOrSplit: () => ({ state, dispatch }) => {\n if (mergeCells(state, dispatch)) {\n return true;\n }\n return splitCell(state, dispatch);\n },\n setCellAttribute: (name, value) => ({ state, dispatch }) => {\n return setCellAttr(name, value)(state, dispatch);\n },\n goToNextCell: () => ({ state, dispatch }) => {\n return goToNextCell(1)(state, dispatch);\n },\n goToPreviousCell: () => ({ state, dispatch }) => {\n return goToNextCell(-1)(state, dispatch);\n },\n fixTables: () => ({ state, dispatch }) => {\n if (dispatch) {\n fixTables(state);\n }\n return true;\n },\n setCellSelection: (position) => ({ tr, dispatch }) => {\n if (dispatch) {\n const selection = CellSelection2.create(tr.doc, position.anchorCell, position.headCell);\n tr.setSelection(selection);\n }\n return true;\n }\n };\n },\n addKeyboardShortcuts() {\n return {\n Tab: () => {\n if (this.editor.commands.goToNextCell()) {\n return true;\n }\n if (!this.editor.can().addRowAfter()) {\n return false;\n }\n return this.editor.chain().addRowAfter().goToNextCell().run();\n },\n \"Shift-Tab\": () => this.editor.commands.goToPreviousCell(),\n Backspace: deleteTableWhenAllCellsSelected,\n \"Mod-Backspace\": deleteTableWhenAllCellsSelected,\n Delete: deleteTableWhenAllCellsSelected,\n \"Mod-Delete\": deleteTableWhenAllCellsSelected\n };\n },\n addProseMirrorPlugins() {\n const isResizable = this.options.resizable && this.editor.isEditable;\n return [\n ...isResizable ? [\n columnResizing({\n handleWidth: this.options.handleWidth,\n cellMinWidth: this.options.cellMinWidth,\n defaultCellMinWidth: this.options.cellMinWidth,\n View: this.options.View,\n lastColumnResizable: this.options.lastColumnResizable\n })\n ] : [],\n tableEditing({\n allowTableNodeSelection: this.options.allowTableNodeSelection\n })\n ];\n },\n extendNodeSchema(extension) {\n const context = {\n name: extension.name,\n options: extension.options,\n storage: extension.storage\n };\n return {\n tableRole: callOrReturn(getExtensionField(extension, \"tableRole\", context))\n };\n }\n});\n\n// src/kit/index.ts\nvar TableKit = Extension.create({\n name: \"tableKit\",\n addExtensions() {\n const extensions = [];\n if (this.options.table !== false) {\n extensions.push(Table.configure(this.options.table));\n }\n if (this.options.tableCell !== false) {\n extensions.push(TableCell.configure(this.options.tableCell));\n }\n if (this.options.tableHeader !== false) {\n extensions.push(TableHeader.configure(this.options.tableHeader));\n }\n if (this.options.tableRow !== false) {\n extensions.push(TableRow.configure(this.options.tableRow));\n }\n return extensions;\n }\n});\nexport {\n DEFAULT_CELL_LINE_SEPARATOR,\n Table,\n TableCell,\n TableHeader,\n TableKit,\n TableRow,\n TableView,\n createColGroup,\n createTable,\n renderTableToMarkdown,\n updateColumns\n};\n//# sourceMappingURL=index.js.map"],"names":["normalizeTableCellAlign","value","createAlignAttribute","default","parseHTML","element","styleAlign","style","textAlign","trim","toLowerCase","attrAlign","getAttribute","parseAlign","renderHTML","attributes","align","TableCell","Node","create","name","addOptions","HTMLAttributes","content","addAttributes","colspan","rowspan","colwidth","_a","_b","split","map","width","parseInt","cols","closest","querySelectorAll","cellIndex","Array","from","parentElement","children","indexOf","colWidth","tableRole","isolating","tag","mergeAttributes","this","options","TableHeader","Node2","mergeAttributes2","TableRow","Node3","mergeAttributes3","getColStyleDeclaration","minWidth","Math","max","updateColumns","node","colgroup","table","cellMinWidth","overrideCol","overrideValue","totalWidth","fixedWidth","nextDOM","firstChild","row","i","col","childCount","child","attrs","j","hasWidth","cssWidth","propertyKey","propertyValue","setProperty","nextSibling","colElement","document","createElement","appendChild","after","parentNode","removeChild","hasUserWidth","test","TableView","constructor","dom","className","cssText","contentDOM","update","type","ignoreMutation","mutation","target","isInsideWrapper","contains","isInsideContent","createColGroup","property","push","tableWidth","tableMinWidth","createCell","cellType","cellContent","createAndFill","createTable","schema","rowsCount","colsCount","withHeaderRow","types","cached","tableNodeTypes","roles","Object","keys","nodes","forEach","nodeType","spec","getTableNodeTypes","headerCells","cells","index","cell","headerCell","header_cell","rows","createChecked","deleteTableWhenAllCellsSelected","editor","selection","state","CellSelection","cellCount","findParentNodeClosestToPos","ranges","$from","descendants","includes","length","commands","deleteTable","DEFAULT_CELL_LINE_SEPARATOR","renderTableToMarkdown","h","cellSep","cellLineSeparator","rowNode","cellNode","raw","isArray","renderChildren","join","text","replace","isHeader","columnCount","reduce","r","colWidths","fill","_a2","len","pad","s","repeat","headerRow","hasHeader","some","c","colAlignments","out","headerTexts","_","t","w","dashCount","alignment","slice","markdown_default","Table","Node4","resizable","renderWrapper","handleWidth","View","lastColumnResizable","allowTableNodeSelection","group","userStyles","mergeAttributes4","class","parseMarkdown","token","alignments","header","createNode","parseInline","tokens","bodyCells","renderMarkdown","addCommands","insertTable","tr","dispatch","offset","replaceSelectionWith","scrollIntoView","setSelection","TextSelection","near","doc","resolve","addColumnBefore","addColumnAfter","deleteColumn","addRowBefore","addRowAfter","deleteRow","mergeCells","splitCell","toggleHeaderColumn","toggleHeader","toggleHeaderRow","toggleHeaderCell","mergeOrSplit","setCellAttribute","setCellAttr","goToNextCell","goToPreviousCell","fixTables","setCellSelection","position","CellSelection2","anchorCell","headCell","addKeyboardShortcuts","Tab","can","chain","run","Backspace","Delete","addProseMirrorPlugins","isEditable","columnResizing","defaultCellMinWidth","tableEditing","extendNodeSchema","extension","context","storage","callOrReturn","getExtensionField","Extension","addExtensions","extensions","configure","tableCell","tableHeader","tableRow"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../../node_modules/@tiptap/extension-table-cell/dist/index.js"],"sourcesContent":["// src/index.ts\nimport { TableCell } from \"@tiptap/extension-table\";\nimport { TableCell as TableCell2 } from \"@tiptap/extension-table\";\nvar index_default = TableCell;\nexport {\n TableCell2 as TableCell,\n index_default as default\n};\n//# sourceMappingURL=index.js.map"],"names":["index_default","TableCell"],"mappings":"iEAGG,IAACA,EAAgBC","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../../node_modules/@tiptap/extension-table-header/dist/index.js"],"sourcesContent":["// src/index.ts\nimport { TableHeader } from \"@tiptap/extension-table\";\nimport { TableHeader as TableHeader2 } from \"@tiptap/extension-table\";\nvar index_default = TableHeader;\nexport {\n TableHeader2 as TableHeader,\n index_default as default\n};\n//# sourceMappingURL=index.js.map"],"names":["index_default","TableHeader"],"mappings":"mEAGG,IAACA,EAAgBC","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../../node_modules/@tiptap/extension-table-row/dist/index.js"],"sourcesContent":["// src/index.ts\nimport { TableRow } from \"@tiptap/extension-table\";\nimport { TableRow as TableRow2 } from \"@tiptap/extension-table\";\nvar index_default = TableRow;\nexport {\n TableRow2 as TableRow,\n index_default as default\n};\n//# sourceMappingURL=index.js.map"],"names":["index_default","TableRow"],"mappings":"gEAGG,IAACA,EAAgBC","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../../node_modules/@tiptap/extension-task-item/dist/index.js"],"sourcesContent":["// src/index.ts\nimport { TaskItem } from \"@tiptap/extension-list\";\nimport { TaskItem as TaskItem2 } from \"@tiptap/extension-list\";\nvar index_default = TaskItem;\nexport {\n TaskItem2 as TaskItem,\n index_default as default\n};\n//# sourceMappingURL=index.js.map"],"names":["index_default","TaskItem"],"mappings":"+DAGG,IAACA,EAAgBC","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../../node_modules/@tiptap/extension-task-list/dist/index.js"],"sourcesContent":["// src/index.ts\nimport { TaskList } from \"@tiptap/extension-list\";\nimport { TaskList as TaskList2 } from \"@tiptap/extension-list\";\nvar index_default = TaskList;\nexport {\n TaskList2 as TaskList,\n index_default as default\n};\n//# sourceMappingURL=index.js.map"],"names":["index_default","TaskList"],"mappings":"+DAGG,IAACA,EAAgBC","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{Extension as t}from"../../core/dist/index.mjs";var e=t.create({name:"textAlign",addOptions:()=>({types:[],alignments:["left","center","right","justify"],defaultAlignment:null}),addGlobalAttributes(){return[{types:this.options.types,attributes:{textAlign:{default:this.options.defaultAlignment,parseHTML:t=>{const e=t.style.textAlign;return this.options.alignments.includes(e)?e:this.options.defaultAlignment},renderHTML:t=>t.textAlign?{style:`text-align: ${t.textAlign}`}:{}}}}]},addCommands(){return{setTextAlign:t=>({commands:e})=>!!this.options.alignments.includes(t)&&this.options.types.map((i=>e.updateAttributes(i,{textAlign:t}))).some((t=>t)),unsetTextAlign:()=>({commands:t})=>this.options.types.map((e=>t.resetAttributes(e,"textAlign"))).some((t=>t)),toggleTextAlign:t=>({editor:e,commands:i})=>!!this.options.alignments.includes(t)&&(e.isActive({textAlign:t})?i.unsetTextAlign():i.setTextAlign(t))}},addKeyboardShortcuts(){return{"Mod-Shift-l":()=>this.editor.commands.setTextAlign("left"),"Mod-Shift-e":()=>this.editor.commands.setTextAlign("center"),"Mod-Shift-r":()=>this.editor.commands.setTextAlign("right"),"Mod-Shift-j":()=>this.editor.commands.setTextAlign("justify")}}}),i=e;export{e as TextAlign,i as default};
|
|
2
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../../node_modules/@tiptap/extension-text-align/dist/index.js"],"sourcesContent":["// src/text-align.ts\nimport { Extension } from \"@tiptap/core\";\nvar TextAlign = Extension.create({\n name: \"textAlign\",\n addOptions() {\n return {\n types: [],\n alignments: [\"left\", \"center\", \"right\", \"justify\"],\n defaultAlignment: null\n };\n },\n addGlobalAttributes() {\n return [\n {\n types: this.options.types,\n attributes: {\n textAlign: {\n default: this.options.defaultAlignment,\n parseHTML: (element) => {\n const alignment = element.style.textAlign;\n return this.options.alignments.includes(alignment) ? alignment : this.options.defaultAlignment;\n },\n renderHTML: (attributes) => {\n if (!attributes.textAlign) {\n return {};\n }\n return { style: `text-align: ${attributes.textAlign}` };\n }\n }\n }\n }\n ];\n },\n addCommands() {\n return {\n setTextAlign: (alignment) => ({ commands }) => {\n if (!this.options.alignments.includes(alignment)) {\n return false;\n }\n return this.options.types.map((type) => commands.updateAttributes(type, { textAlign: alignment })).some((response) => response);\n },\n unsetTextAlign: () => ({ commands }) => {\n return this.options.types.map((type) => commands.resetAttributes(type, \"textAlign\")).some((response) => response);\n },\n toggleTextAlign: (alignment) => ({ editor, commands }) => {\n if (!this.options.alignments.includes(alignment)) {\n return false;\n }\n if (editor.isActive({ textAlign: alignment })) {\n return commands.unsetTextAlign();\n }\n return commands.setTextAlign(alignment);\n }\n };\n },\n addKeyboardShortcuts() {\n return {\n \"Mod-Shift-l\": () => this.editor.commands.setTextAlign(\"left\"),\n \"Mod-Shift-e\": () => this.editor.commands.setTextAlign(\"center\"),\n \"Mod-Shift-r\": () => this.editor.commands.setTextAlign(\"right\"),\n \"Mod-Shift-j\": () => this.editor.commands.setTextAlign(\"justify\")\n };\n }\n});\n\n// src/index.ts\nvar index_default = TextAlign;\nexport {\n TextAlign,\n index_default as default\n};\n//# sourceMappingURL=index.js.map"],"names":["TextAlign","Extension","create","name","addOptions","types","alignments","defaultAlignment","addGlobalAttributes","this","options","attributes","textAlign","default","parseHTML","element","alignment","style","includes","renderHTML","addCommands","setTextAlign","commands","map","type","updateAttributes","some","response","unsetTextAlign","resetAttributes","toggleTextAlign","editor","isActive","addKeyboardShortcuts","index_default"],"mappings":"sDAEG,IAACA,EAAYC,EAAUC,OAAO,CAC/BC,KAAM,YACNC,WAAU,KACD,CACLC,MAAO,GACPC,WAAY,CAAC,OAAQ,SAAU,QAAS,WACxCC,iBAAkB,OAGtB,mBAAAC,GACE,MAAO,CACL,CACEH,MAAOI,KAAKC,QAAQL,MACpBM,WAAY,CACVC,UAAW,CACTC,QAASJ,KAAKC,QAAQH,iBACtBO,UAAYC,IACV,MAAMC,EAAYD,EAAQE,MAAML,UAChC,OAAOH,KAAKC,QAAQJ,WAAWY,SAASF,GAAaA,EAAYP,KAAKC,QAAQH,kBAEhFY,WAAaR,GACNA,EAAWC,UAGT,CAAEK,MAAO,eAAeN,EAAWC,aAFjC,CAAA,KAQrB,EACA,WAAAQ,GACE,MAAO,CACLC,aAAeL,GAAc,EAAGM,gBACzBb,KAAKC,QAAQJ,WAAWY,SAASF,IAG/BP,KAAKC,QAAQL,MAAMkB,KAAKC,GAASF,EAASG,iBAAiBD,EAAM,CAAEZ,UAAWI,MAAcU,MAAMC,GAAaA,IAExHC,eAAgB,IAAM,EAAGN,cAChBb,KAAKC,QAAQL,MAAMkB,KAAKC,GAASF,EAASO,gBAAgBL,EAAM,eAAcE,MAAMC,GAAaA,IAE1GG,gBAAkBd,GAAc,EAAGe,SAAQT,gBACpCb,KAAKC,QAAQJ,WAAWY,SAASF,KAGlCe,EAAOC,SAAS,CAAEpB,UAAWI,IACxBM,EAASM,iBAEXN,EAASD,aAAaL,IAGnC,EACA,oBAAAiB,GACE,MAAO,CACL,cAAe,IAAMxB,KAAKsB,OAAOT,SAASD,aAAa,QACvD,cAAe,IAAMZ,KAAKsB,OAAOT,SAASD,aAAa,UACvD,cAAe,IAAMZ,KAAKsB,OAAOT,SAASD,aAAa,SACvD,cAAe,IAAMZ,KAAKsB,OAAOT,SAASD,aAAa,WAE3D,IAIEa,EAAgBlC","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{keyName as t,base as e}from"../../w3c-keyname/index.mjs";const i="undefined"!=typeof navigator&&/Mac|iP(hone|[oa]d)/.test(navigator.platform),n="undefined"!=typeof navigator&&/Win/.test(navigator.platform);function r(t){let e,n,r,l,a=t.split(/-(?!$)/),f=a[a.length-1];"Space"==f&&(f=" ");for(let t=0;t<a.length-1;t++){let f=a[t];if(/^(cmd|meta|m)$/i.test(f))l=!0;else if(/^a(lt)?$/i.test(f))e=!0;else if(/^(c|ctrl|control)$/i.test(f))n=!0;else if(/^s(hift)?$/i.test(f))r=!0;else{if(!/^mod$/i.test(f))throw new Error("Unrecognized modifier name: "+f);i?l=!0:n=!0}}return e&&(f="Alt-"+f),n&&(f="Ctrl-"+f),l&&(f="Meta-"+f),r&&(f="Shift-"+f),f}function l(t,e,i=!0){return e.altKey&&(t="Alt-"+t),e.ctrlKey&&(t="Ctrl-"+t),e.metaKey&&(t="Meta-"+t),i&&e.shiftKey&&(t="Shift-"+t),t}function a(i){let a=function(t){let e=Object.create(null);for(let i in t)e[r(i)]=t[i];return e}(i);return function(i,r){let f,o=t(r),s=a[l(o,r)];if(s&&s(i.state,i.dispatch,i))return!0;if(1==o.length&&" "!=o){if(r.shiftKey){let t=a[l(o,r,!1)];if(t&&t(i.state,i.dispatch,i))return!0}if((r.altKey||r.metaKey||r.ctrlKey)&&!(n&&r.ctrlKey&&r.altKey)&&(f=e[r.keyCode])&&f!=o){let t=a[l(f,r)];if(t&&t(i.state,i.dispatch,i))return!0}}return!1}}export{a as keydownHandler};
|
|
2
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../node_modules/prosemirror-keymap/dist/index.js"],"sourcesContent":["import { keyName, base } from 'w3c-keyname';\nimport { Plugin } from 'prosemirror-state';\n\nconst mac = typeof navigator != \"undefined\" && /Mac|iP(hone|[oa]d)/.test(navigator.platform);\nconst windows = typeof navigator != \"undefined\" && /Win/.test(navigator.platform);\nfunction normalizeKeyName(name) {\n let parts = name.split(/-(?!$)/), result = parts[parts.length - 1];\n if (result == \"Space\")\n result = \" \";\n let alt, ctrl, shift, meta;\n for (let i = 0; i < parts.length - 1; i++) {\n let mod = parts[i];\n if (/^(cmd|meta|m)$/i.test(mod))\n meta = true;\n else if (/^a(lt)?$/i.test(mod))\n alt = true;\n else if (/^(c|ctrl|control)$/i.test(mod))\n ctrl = true;\n else if (/^s(hift)?$/i.test(mod))\n shift = true;\n else if (/^mod$/i.test(mod)) {\n if (mac)\n meta = true;\n else\n ctrl = true;\n }\n else\n throw new Error(\"Unrecognized modifier name: \" + mod);\n }\n if (alt)\n result = \"Alt-\" + result;\n if (ctrl)\n result = \"Ctrl-\" + result;\n if (meta)\n result = \"Meta-\" + result;\n if (shift)\n result = \"Shift-\" + result;\n return result;\n}\nfunction normalize(map) {\n let copy = Object.create(null);\n for (let prop in map)\n copy[normalizeKeyName(prop)] = map[prop];\n return copy;\n}\nfunction modifiers(name, event, shift = true) {\n if (event.altKey)\n name = \"Alt-\" + name;\n if (event.ctrlKey)\n name = \"Ctrl-\" + name;\n if (event.metaKey)\n name = \"Meta-\" + name;\n if (shift && event.shiftKey)\n name = \"Shift-\" + name;\n return name;\n}\n/**\nCreate a keymap plugin for the given set of bindings.\n\nBindings should map key names to [command](https://prosemirror.net/docs/ref/#commands)-style\nfunctions, which will be called with `(EditorState, dispatch,\nEditorView)` arguments, and should return true when they've handled\nthe key. Note that the view argument isn't part of the command\nprotocol, but can be used as an escape hatch if a binding needs to\ndirectly interact with the UI.\n\nKey names may be strings like `\"Shift-Ctrl-Enter\"`—a key\nidentifier prefixed with zero or more modifiers. Key identifiers\nare based on the strings that can appear in\n[`KeyEvent.key`](https:developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key).\nUse lowercase letters to refer to letter keys (or uppercase letters\nif you want shift to be held). You may use `\"Space\"` as an alias\nfor the `\" \"` name.\n\nModifiers can be given in any order. `Shift-` (or `s-`), `Alt-` (or\n`a-`), `Ctrl-` (or `c-` or `Control-`) and `Cmd-` (or `m-` or\n`Meta-`) are recognized. For characters that are created by holding\nshift, the `Shift-` prefix is implied, and should not be added\nexplicitly.\n\nYou can use `Mod-` as a shorthand for `Cmd-` on Mac and `Ctrl-` on\nother platforms.\n\nYou can add multiple keymap plugins to an editor. The order in\nwhich they appear determines their precedence (the ones early in\nthe array get to dispatch first).\n*/\nfunction keymap(bindings) {\n return new Plugin({ props: { handleKeyDown: keydownHandler(bindings) } });\n}\n/**\nGiven a set of bindings (using the same format as\n[`keymap`](https://prosemirror.net/docs/ref/#keymap.keymap)), return a [keydown\nhandler](https://prosemirror.net/docs/ref/#view.EditorProps.handleKeyDown) that handles them.\n*/\nfunction keydownHandler(bindings) {\n let map = normalize(bindings);\n return function (view, event) {\n let name = keyName(event), baseName, direct = map[modifiers(name, event)];\n if (direct && direct(view.state, view.dispatch, view))\n return true;\n // A character key\n if (name.length == 1 && name != \" \") {\n if (event.shiftKey) {\n // In case the name was already modified by shift, try looking\n // it up without its shift modifier\n let noShift = map[modifiers(name, event, false)];\n if (noShift && noShift(view.state, view.dispatch, view))\n return true;\n }\n if ((event.altKey || event.metaKey || event.ctrlKey) &&\n // Ctrl-Alt may be used for AltGr on Windows\n !(windows && event.ctrlKey && event.altKey) &&\n (baseName = base[event.keyCode]) && baseName != name) {\n // Try falling back to the keyCode when there's a modifier\n // active or the character produced isn't ASCII, and our table\n // produces a different name from the the keyCode. See #668,\n // #1060, #1529.\n let fromCode = map[modifiers(baseName, event)];\n if (fromCode && fromCode(view.state, view.dispatch, view))\n return true;\n }\n }\n return false;\n };\n}\n\nexport { keydownHandler, keymap };\n"],"names":["mac","navigator","test","platform","windows","normalizeKeyName","name","alt","ctrl","shift","meta","parts","split","result","length","i","mod","Error","modifiers","event","altKey","ctrlKey","metaKey","shiftKey","keydownHandler","bindings","map","copy","Object","create","prop","normalize","view","baseName","keyName","direct","state","dispatch","noShift","base","keyCode","fromCode"],"mappings":"gEAGA,MAAMA,EAA0B,oBAAbC,WAA4B,qBAAqBC,KAAKD,UAAUE,UAC7EC,EAA8B,oBAAbH,WAA4B,MAAMC,KAAKD,UAAUE,UACxE,SAASE,EAAiBC,GACtB,IAGIC,EAAKC,EAAMC,EAAOC,EAHlBC,EAAQL,EAAKM,MAAM,UAAWC,EAASF,EAAMA,EAAMG,OAAS,GAClD,SAAVD,IACAA,EAAS,KAEb,IAAK,IAAIE,EAAI,EAAGA,EAAIJ,EAAMG,OAAS,EAAGC,IAAK,CACvC,IAAIC,EAAML,EAAMI,GAChB,GAAI,kBAAkBb,KAAKc,GACvBN,GAAO,OACN,GAAI,YAAYR,KAAKc,GACtBT,GAAM,OACL,GAAI,sBAAsBL,KAAKc,GAChCR,GAAO,OACN,GAAI,cAAcN,KAAKc,GACxBP,GAAQ,MACP,KAAI,SAASP,KAAKc,GAOnB,MAAM,IAAIC,MAAM,+BAAiCD,GAN7ChB,EACAU,GAAO,EAEPF,GAAO,CAG0C,CAC7D,CASA,OARID,IACAM,EAAS,OAASA,GAClBL,IACAK,EAAS,QAAUA,GACnBH,IACAG,EAAS,QAAUA,GACnBJ,IACAI,EAAS,SAAWA,GACjBA,CACX,CAOA,SAASK,EAAUZ,EAAMa,EAAOV,GAAQ,GASpC,OARIU,EAAMC,SACNd,EAAO,OAASA,GAChBa,EAAME,UACNf,EAAO,QAAUA,GACjBa,EAAMG,UACNhB,EAAO,QAAUA,GACjBG,GAASU,EAAMI,WACfjB,EAAO,SAAWA,GACfA,CACX,CAwCA,SAASkB,EAAeC,GACpB,IAAIC,EAzDR,SAAmBA,GACf,IAAIC,EAAOC,OAAOC,OAAO,MACzB,IAAK,IAAIC,KAAQJ,EACbC,EAAKtB,EAAiByB,IAASJ,EAAII,GACvC,OAAOH,CACX,CAoDcI,CAAUN,GACpB,OAAO,SAAUO,EAAMb,GACnB,IAA2Bc,EAAvB3B,EAAO4B,EAAQf,GAAkBgB,EAAST,EAAIR,EAAUZ,EAAMa,IAClE,GAAIgB,GAAUA,EAAOH,EAAKI,MAAOJ,EAAKK,SAAUL,GAC5C,OAAO,EAEX,GAAmB,GAAf1B,EAAKQ,QAAuB,KAARR,EAAa,CACjC,GAAIa,EAAMI,SAAU,CAGhB,IAAIe,EAAUZ,EAAIR,EAAUZ,EAAMa,GAAO,IACzC,GAAImB,GAAWA,EAAQN,EAAKI,MAAOJ,EAAKK,SAAUL,GAC9C,OAAO,CACf,CACA,IAAKb,EAAMC,QAAUD,EAAMG,SAAWH,EAAME,YAEtCjB,GAAWe,EAAME,SAAWF,EAAMC,UACnCa,EAAWM,EAAKpB,EAAMqB,WAAaP,GAAY3B,EAAM,CAKtD,IAAImC,EAAWf,EAAIR,EAAUe,EAAUd,IACvC,GAAIsB,GAAYA,EAAST,EAAKI,MAAOJ,EAAKK,SAAUL,GAChD,OAAO,CACf,CACJ,CACA,OAAO,CACX,CACJ","x_google_ignoreList":[0]}
|