pillardash-ui-react 0.1.138 → 0.1.142

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.
Files changed (91) hide show
  1. package/dist/cjs/components/Cards/Card.js +1 -1
  2. package/dist/cjs/components/Cards/Card.js.map +1 -1
  3. package/dist/cjs/components/Form/TextEditor/ImagePopover.js +2 -0
  4. package/dist/cjs/components/Form/TextEditor/ImagePopover.js.map +1 -0
  5. package/dist/cjs/components/Form/TextEditor/LinkPopover.js +2 -0
  6. package/dist/cjs/components/Form/TextEditor/LinkPopover.js.map +1 -0
  7. package/dist/cjs/components/Form/TextEditor/TextEditor.js +1 -1
  8. package/dist/cjs/components/Form/TextEditor/TextEditor.js.map +1 -1
  9. package/dist/cjs/components/Form/TextEditor/ToolbarGroups.js +2 -0
  10. package/dist/cjs/components/Form/TextEditor/ToolbarGroups.js.map +1 -0
  11. package/dist/cjs/components/Form/TextEditor/extensions.js +2 -0
  12. package/dist/cjs/components/Form/TextEditor/extensions.js.map +1 -0
  13. package/dist/cjs/components/Form/TextEditor/toolbar.js +2 -0
  14. package/dist/cjs/components/Form/TextEditor/toolbar.js.map +1 -0
  15. package/dist/cjs/node_modules/@tiptap/core/dist/index.js +1 -1
  16. package/dist/cjs/node_modules/@tiptap/core/dist/index.js.map +1 -1
  17. package/dist/cjs/node_modules/@tiptap/extension-list/dist/index.js +1 -1
  18. package/dist/cjs/node_modules/@tiptap/extension-list/dist/index.js.map +1 -1
  19. package/dist/cjs/node_modules/@tiptap/extension-table/dist/index.js +2 -0
  20. package/dist/cjs/node_modules/@tiptap/extension-table/dist/index.js.map +1 -0
  21. package/dist/cjs/node_modules/@tiptap/extension-table-cell/dist/index.js +2 -0
  22. package/dist/cjs/node_modules/@tiptap/extension-table-cell/dist/index.js.map +1 -0
  23. package/dist/cjs/node_modules/@tiptap/extension-table-header/dist/index.js +2 -0
  24. package/dist/cjs/node_modules/@tiptap/extension-table-header/dist/index.js.map +1 -0
  25. package/dist/cjs/node_modules/@tiptap/extension-table-row/dist/index.js +2 -0
  26. package/dist/cjs/node_modules/@tiptap/extension-table-row/dist/index.js.map +1 -0
  27. package/dist/cjs/node_modules/@tiptap/extension-task-item/dist/index.js +2 -0
  28. package/dist/cjs/node_modules/@tiptap/extension-task-item/dist/index.js.map +1 -0
  29. package/dist/cjs/node_modules/@tiptap/extension-task-list/dist/index.js +2 -0
  30. package/dist/cjs/node_modules/@tiptap/extension-task-list/dist/index.js.map +1 -0
  31. package/dist/cjs/node_modules/@tiptap/extension-text-align/dist/index.js +2 -0
  32. package/dist/cjs/node_modules/@tiptap/extension-text-align/dist/index.js.map +1 -0
  33. package/dist/cjs/node_modules/prosemirror-keymap/dist/index.js +2 -0
  34. package/dist/cjs/node_modules/prosemirror-keymap/dist/index.js.map +1 -0
  35. package/dist/cjs/node_modules/prosemirror-model/dist/index.js +1 -1
  36. package/dist/cjs/node_modules/prosemirror-model/dist/index.js.map +1 -1
  37. package/dist/cjs/node_modules/prosemirror-tables/dist/index.js +2 -0
  38. package/dist/cjs/node_modules/prosemirror-tables/dist/index.js.map +1 -0
  39. package/dist/cjs/node_modules/prosemirror-transform/dist/index.js +1 -1
  40. package/dist/cjs/node_modules/prosemirror-transform/dist/index.js.map +1 -1
  41. package/dist/cjs/node_modules/prosemirror-view/dist/index.js +2 -0
  42. package/dist/cjs/node_modules/prosemirror-view/dist/index.js.map +1 -0
  43. package/dist/cjs/node_modules/w3c-keyname/index.js +2 -0
  44. package/dist/cjs/node_modules/w3c-keyname/index.js.map +1 -0
  45. package/dist/esm/components/Cards/Card.mjs +1 -1
  46. package/dist/esm/components/Cards/Card.mjs.map +1 -1
  47. package/dist/esm/components/Form/TextEditor/ImagePopover.mjs +2 -0
  48. package/dist/esm/components/Form/TextEditor/ImagePopover.mjs.map +1 -0
  49. package/dist/esm/components/Form/TextEditor/LinkPopover.mjs +2 -0
  50. package/dist/esm/components/Form/TextEditor/LinkPopover.mjs.map +1 -0
  51. package/dist/esm/components/Form/TextEditor/TextEditor.mjs +1 -1
  52. package/dist/esm/components/Form/TextEditor/TextEditor.mjs.map +1 -1
  53. package/dist/esm/components/Form/TextEditor/ToolbarGroups.mjs +2 -0
  54. package/dist/esm/components/Form/TextEditor/ToolbarGroups.mjs.map +1 -0
  55. package/dist/esm/components/Form/TextEditor/extensions.mjs +2 -0
  56. package/dist/esm/components/Form/TextEditor/extensions.mjs.map +1 -0
  57. package/dist/esm/components/Form/TextEditor/toolbar.mjs +2 -0
  58. package/dist/esm/components/Form/TextEditor/toolbar.mjs.map +1 -0
  59. package/dist/esm/node_modules/@tiptap/core/dist/index.mjs +1 -1
  60. package/dist/esm/node_modules/@tiptap/core/dist/index.mjs.map +1 -1
  61. package/dist/esm/node_modules/@tiptap/extension-list/dist/index.mjs +1 -1
  62. package/dist/esm/node_modules/@tiptap/extension-list/dist/index.mjs.map +1 -1
  63. package/dist/esm/node_modules/@tiptap/extension-table/dist/index.mjs +2 -0
  64. package/dist/esm/node_modules/@tiptap/extension-table/dist/index.mjs.map +1 -0
  65. package/dist/esm/node_modules/@tiptap/extension-table-cell/dist/index.mjs +2 -0
  66. package/dist/esm/node_modules/@tiptap/extension-table-cell/dist/index.mjs.map +1 -0
  67. package/dist/esm/node_modules/@tiptap/extension-table-header/dist/index.mjs +2 -0
  68. package/dist/esm/node_modules/@tiptap/extension-table-header/dist/index.mjs.map +1 -0
  69. package/dist/esm/node_modules/@tiptap/extension-table-row/dist/index.mjs +2 -0
  70. package/dist/esm/node_modules/@tiptap/extension-table-row/dist/index.mjs.map +1 -0
  71. package/dist/esm/node_modules/@tiptap/extension-task-item/dist/index.mjs +2 -0
  72. package/dist/esm/node_modules/@tiptap/extension-task-item/dist/index.mjs.map +1 -0
  73. package/dist/esm/node_modules/@tiptap/extension-task-list/dist/index.mjs +2 -0
  74. package/dist/esm/node_modules/@tiptap/extension-task-list/dist/index.mjs.map +1 -0
  75. package/dist/esm/node_modules/@tiptap/extension-text-align/dist/index.mjs +2 -0
  76. package/dist/esm/node_modules/@tiptap/extension-text-align/dist/index.mjs.map +1 -0
  77. package/dist/esm/node_modules/prosemirror-keymap/dist/index.mjs +2 -0
  78. package/dist/esm/node_modules/prosemirror-keymap/dist/index.mjs.map +1 -0
  79. package/dist/esm/node_modules/prosemirror-model/dist/index.mjs +1 -1
  80. package/dist/esm/node_modules/prosemirror-model/dist/index.mjs.map +1 -1
  81. package/dist/esm/node_modules/prosemirror-tables/dist/index.mjs +2 -0
  82. package/dist/esm/node_modules/prosemirror-tables/dist/index.mjs.map +1 -0
  83. package/dist/esm/node_modules/prosemirror-transform/dist/index.mjs +1 -1
  84. package/dist/esm/node_modules/prosemirror-transform/dist/index.mjs.map +1 -1
  85. package/dist/esm/node_modules/prosemirror-view/dist/index.mjs +2 -0
  86. package/dist/esm/node_modules/prosemirror-view/dist/index.mjs.map +1 -0
  87. package/dist/esm/node_modules/w3c-keyname/index.mjs +2 -0
  88. package/dist/esm/node_modules/w3c-keyname/index.mjs.map +1 -0
  89. package/dist/index.d.ts +24 -0
  90. package/dist/styles.css +1 -1
  91. package/package.json +9 -1
@@ -1,2 +1,2 @@
1
- "use strict";var t=require("../../core/dist/index.js"),e=Object.defineProperty,s="textStyle",i=/^\s*([-+*])\s$/,r=t.Node.create({name:"bulletList",addOptions:()=>({itemTypeName:"listItem",HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}),group:"block list",content(){return`${this.options.itemTypeName}+`},parseHTML:()=>[{tag:"ul"}],renderHTML({HTMLAttributes:e}){return["ul",t.mergeAttributes(this.options.HTMLAttributes,e),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(s)).run():t.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-8":()=>this.editor.commands.toggleBulletList()}},addInputRules(){let e=t.wrappingInputRule({find:i,type:this.type});return(this.options.keepMarks||this.options.keepAttributes)&&(e=t.wrappingInputRule({find:i,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:()=>this.editor.getAttributes(s),editor:this.editor})),[e]}}),o=t.Node.create({name:"listItem",addOptions:()=>({HTMLAttributes:{},bulletListTypeName:"bulletList",orderedListTypeName:"orderedList"}),content:"paragraph block*",defining:!0,parseHTML:()=>[{tag:"li"}],renderHTML({HTMLAttributes:e}){return["li",t.mergeAttributes(this.options.HTMLAttributes,e),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)}}}),n={};((t,s)=>{for(var i in s)e(t,i,{get:s[i],enumerable:!0})})(n,{findListItemPos:()=>a,getNextListDepth:()=>d,handleBackspace:()=>h,handleDelete:()=>k,hasListBefore:()=>p,hasListItemAfter:()=>b,hasListItemBefore:()=>u,listItemHasSubList:()=>c,nextListIsDeeper:()=>l,nextListIsHigher:()=>m});var a=(e,s)=>{const{$from:i}=s.selection,r=t.getNodeType(e,s.schema);let o=null,n=i.depth,a=i.pos,d=null;for(;n>0&&null===d;)o=i.node(n),o.type===r?d=n:(n-=1,a-=1);return null===d?null:{$pos:s.doc.resolve(a),depth:d}},d=(e,s)=>{const i=a(e,s);if(!i)return!1;const[,r]=t.getNodeAtPosition(s,e,i.$pos.pos+4);return r},p=(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))},u=(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},c=(e,s,i)=>{if(!i)return!1;const r=t.getNodeType(e,s.schema);let o=!1;return i.descendants((t=>{t.type===r&&(o=!0)})),o},h=(e,s,i)=>{if(e.commands.undoInputRule())return!0;if(e.state.selection.from!==e.state.selection.to)return!1;if(!t.isNodeActive(e.state,s)&&p(e.state,s,i)){const{$anchor:t}=e.state.selection,i=e.state.doc.resolve(t.before()-1),r=[];i.node().descendants(((t,e)=>{t.type.name===s&&r.push({node:t,pos:e})}));const o=r.at(-1);if(!o)return!1;const n=e.state.doc.resolve(i.start()+o.pos+1);return e.chain().cut({from:t.start()-1,to:t.end()+1},n.end()).joinForward().run()}if(!t.isNodeActive(e.state,s))return!1;if(!t.isAtStartOfNode(e.state))return!1;const r=a(s,e.state);if(!r)return!1;const o=e.state.doc.resolve(r.$pos.pos-2).node(r.depth),n=c(s,e.state,o);return u(s,e.state)&&!n?e.commands.joinItemBackward():e.chain().liftListItem(s).run()},l=(t,e)=>{const s=d(t,e),i=a(t,e);return!(!i||!s)&&s>i.depth},m=(t,e)=>{const s=d(t,e),i=a(t,e);return!(!i||!s)&&s<i.depth},k=(e,s)=>{if(!t.isNodeActive(e.state,s))return!1;if(!t.isAtEndOfNode(e.state,s))return!1;const{selection:i}=e.state,{$from:r,$to:o}=i;return!(!i.empty&&r.sameParent(o))&&(l(s,e.state)?e.chain().focus(e.state.selection.from+4).lift(s).joinBackward().run():m(s,e.state)?e.chain().joinForward().joinBackward().run():e.commands.joinItemForward())},b=(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},L=t.Extension.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]&&k(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]&&k(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]&&h(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]&&h(t,s,i)&&(e=!0)})),e}}}}),g="textStyle",f=/^(\d+)\.\s$/,y=t.Node.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:e}){const{start:s,...i}=e;return 1===s?["ol",t.mergeAttributes(this.options.HTMLAttributes,i),0]:["ol",t.mergeAttributes(this.options.HTMLAttributes,e),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(g)).run():t.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-7":()=>this.editor.commands.toggleOrderedList()}},addInputRules(){let e=t.wrappingInputRule({find:f,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)&&(e=t.wrappingInputRule({find:f,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:t=>({start:+t[1],...this.editor.getAttributes(g)}),joinPredicate:(t,e)=>e.childCount+e.attrs.start===+t[1],editor:this.editor})),[e]}}),T=/^\s*(\[([( |x])?\])\s$/,A=t.Node.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:e,HTMLAttributes:s}){return["li",t.mergeAttributes(this.options.HTMLAttributes,s,{"data-type":this.name}),["label",["input",{type:"checkbox",checked:e.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[t.wrappingInputRule({find:T,type:this.type,getAttributes:t=>({checked:"x"===t[t.length-1]})})]}}),M=t.Node.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:e}){return["ul",t.mergeAttributes(this.options.HTMLAttributes,e,{"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()}}});t.Extension.create({name:"listKit",addExtensions(){const t=[];return!1!==this.options.bulletList&&t.push(r.configure(this.options.bulletList)),!1!==this.options.listItem&&t.push(o.configure(this.options.listItem)),!1!==this.options.listKeymap&&t.push(L.configure(this.options.listKeymap)),!1!==this.options.orderedList&&t.push(y.configure(this.options.orderedList)),!1!==this.options.taskItem&&t.push(A.configure(this.options.taskItem)),!1!==this.options.taskList&&t.push(M.configure(this.options.taskList)),t}}),exports.BulletList=r,exports.ListItem=o,exports.ListKeymap=L,exports.OrderedList=y,exports.TaskItem=A,exports.TaskList=M,exports.bulletListInputRegex=i,exports.inputRegex=T,exports.listHelpers=n,exports.orderedListInputRegex=f;
1
+ "use strict";var t=require("../../core/dist/index.js"),e=Object.defineProperty,s="textStyle",n=/^\s*([-+*])\s$/,r=t.Node.create({name:"bulletList",addOptions:()=>({itemTypeName:"listItem",HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}),group:"block list",content(){return`${this.options.itemTypeName}+`},parseHTML:()=>[{tag:"ul"}],renderHTML({HTMLAttributes:e}){return["ul",t.mergeAttributes(this.options.HTMLAttributes,e),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(s)).run():t.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-8":()=>this.editor.commands.toggleBulletList()}},addInputRules(){let e=t.wrappingInputRule({find:n,type:this.type});return(this.options.keepMarks||this.options.keepAttributes)&&(e=t.wrappingInputRule({find:n,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:()=>this.editor.getAttributes(s),editor:this.editor})),[e]}}),i=t.Node.create({name:"listItem",addOptions:()=>({HTMLAttributes:{},bulletListTypeName:"bulletList",orderedListTypeName:"orderedList"}),content:"paragraph block*",defining:!0,parseHTML:()=>[{tag:"li"}],renderHTML({HTMLAttributes:e}){return["li",t.mergeAttributes(this.options.HTMLAttributes,e),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:(e,s,n)=>t.renderNestedMarkdownContent(e,s,(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"- "}),n),addKeyboardShortcuts(){return{Enter:()=>this.editor.commands.splitListItem(this.name),Tab:()=>this.editor.commands.sinkListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)}}}),o={};((t,s)=>{for(var n in s)e(t,n,{get:s[n],enumerable:!0})})(o,{findListItemPos:()=>a,getNextListDepth:()=>d,handleBackspace:()=>l,handleDelete:()=>k,hasListBefore:()=>p,hasListItemAfter:()=>b,hasListItemBefore:()=>c,listItemHasSubList:()=>u,nextListIsDeeper:()=>h,nextListIsHigher:()=>m});var a=(e,s)=>{const{$from:n}=s.selection,r=t.getNodeType(e,s.schema);let i=null,o=n.depth,a=n.pos,d=null;for(;o>0&&null===d;)i=n.node(o),i.type===r?d=o:(o-=1,a-=1);return null===d?null:{$pos:s.doc.resolve(a),depth:d}},d=(e,s)=>{const n=a(e,s);if(!n)return!1;const[,r]=t.getNodeAtPosition(s,e,n.$pos.pos+4);return r},p=(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))},c=(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},u=(e,s,n)=>{if(!n)return!1;const r=t.getNodeType(e,s.schema);let i=!1;return n.descendants((t=>{t.type===r&&(i=!0)})),i},l=(e,s,n)=>{if(e.commands.undoInputRule())return!0;if(e.state.selection.from!==e.state.selection.to)return!1;if(!t.isNodeActive(e.state,s)&&p(e.state,s,n)){const{$anchor:t}=e.state.selection,n=e.state.doc.resolve(t.before()-1),r=[];n.node().descendants(((t,e)=>{t.type.name===s&&r.push({node:t,pos:e})}));const i=r.at(-1);if(!i)return!1;const o=e.state.doc.resolve(n.start()+i.pos+1);return e.chain().cut({from:t.start()-1,to:t.end()+1},o.end()).joinForward().run()}if(!t.isNodeActive(e.state,s))return!1;if(!t.isAtStartOfNode(e.state))return!1;const r=a(s,e.state);if(!r)return!1;const i=e.state.doc.resolve(r.$pos.pos-2).node(r.depth),o=u(s,e.state,i);return c(s,e.state)&&!o?e.commands.joinItemBackward():e.chain().liftListItem(s).run()},h=(t,e)=>{const s=d(t,e),n=a(t,e);return!(!n||!s)&&s>n.depth},m=(t,e)=>{const s=d(t,e),n=a(t,e);return!(!n||!s)&&s<n.depth},k=(e,s)=>{if(!t.isNodeActive(e.state,s))return!1;if(!t.isAtEndOfNode(e.state,s))return!1;const{selection:n}=e.state,{$from:r,$to:i}=n;return!(!n.empty&&r.sameParent(i))&&(h(s,e.state)?e.chain().focus(e.state.selection.from+4).lift(s).joinBackward().run():m(s,e.state)?e.chain().joinForward().joinBackward().run():e.commands.joinItemForward())},b=(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},L=t.Extension.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]&&k(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]&&k(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]&&l(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]&&l(t,s,n)&&(e=!0)})),e}}}}),f=/^(\s*)(\d+)\.\s+(.*)$/,g=/^\s/;function y(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(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}=y(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 u=r+1;const l=[];for(;u<t.length&&t[u].indent>e;)l.push(t[u]),u+=1;if(l.length>0){const t=Math.min(...l.map((t=>t.indent))),e=T(l,t,s);p.push({type:"list",ordered:!0,start:l[0].number,items:e,raw:l.map((t=>t.raw)).join("\n")})}n.push({type:"list_item",raw:i.raw,tokens:p}),r=u}else r+=1}return n}var A="textStyle",M=/^(\d+)\.\s$/,v=t.Node.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:e}){const{start:s,...n}=e;return 1===s?["ol",t.mergeAttributes(this.options.HTMLAttributes,n),0]:["ol",t.mergeAttributes(this.options.HTMLAttributes,e),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(f);if(!i)break;const[,o,a,d]=i,p=o.length,c=[d];let u=s+1;const l=[r];let h=!1;for(;u<t.length;){const e=t[u];if(e.match(f))break;if(""===e.trim())l.push(e),c.push(""),h=!0,u+=1;else if(e.match(g))l.push(e),c.push(e.slice(p+2)),u+=1;else{if(h)break;l.push(e),c.push(e),u+=1}}e.push({indent:p,number:parseInt(a,10),content:c.join("\n").trim(),contentLines:c,raw:l.join("\n")}),n=u,s=u}return[e,n]}(r);if(0===i.length)return;const a=T(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(A)).run():t.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-7":()=>this.editor.commands.toggleOrderedList()}},addInputRules(){let e=t.wrappingInputRule({find:M,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)&&(e=t.wrappingInputRule({find:M,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:t=>({start:+t[1],...this.editor.getAttributes(A)}),joinPredicate:(t,e)=>e.childCount+e.attrs.start===+t[1],editor:this.editor})),[e]}}),w=/^\s*(\[([( |x])?\])\s$/,I=t.Node.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:e,HTMLAttributes:s}){return["li",t.mergeAttributes(this.options.HTMLAttributes,s,{"data-type":this.name}),["label",["input",{type:"checkbox",checked:e.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:(e,s)=>{var n;const r=`- [${(null==(n=e.attrs)?void 0:n.checked)?"x":" "}] `;return t.renderNestedMarkdownContent(e,s,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:e,HTMLAttributes:s,getPos:n,editor:r})=>{const i=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(e),o.contentEditable="false",d.type="checkbox",d.addEventListener("mousedown",(t=>t.preventDefault())),d.addEventListener("change",(t=>{if(!r.isEditable&&!this.options.onReadOnlyChecked)return void(d.checked=!d.checked);const{checked:s}=t.target;r.isEditable&&"function"==typeof n&&r.chain().focus(void 0,{scrollIntoView:!1}).command((({tr:t})=>{const e=n();if("number"!=typeof e)return!1;const r=t.doc.nodeAt(e);return t.setNodeMarkup(e,void 0,{...null==r?void 0:r.attrs,checked:s}),!0})).run(),!r.isEditable&&this.options.onReadOnlyChecked&&(this.options.onReadOnlyChecked(e,s)||(d.checked=!d.checked))})),Object.entries(this.options.HTMLAttributes).forEach((([t,e])=>{i.setAttribute(t,e)})),i.dataset.checked=e.attrs.checked,d.checked=e.attrs.checked,o.append(d,a),i.append(o,p),Object.entries(s).forEach((([t,e])=>{i.setAttribute(t,e)}));let u=new Set(Object.keys(s));return{dom:i,contentDOM:p,update:e=>{if(e.type!==this.type)return!1;i.dataset.checked=e.attrs.checked,d.checked=e.attrs.checked,c(e);const s=r.extensionManager.attributes,n=t.getRenderedAttributes(e,s),o=new Set(Object.keys(n)),a=this.options.HTMLAttributes;return u.forEach((t=>{o.has(t)||(t in a?i.setAttribute(t,a[t]):i.removeAttribute(t))})),Object.entries(n).forEach((([t,e])=>{null==e?t in a?i.setAttribute(t,a[t]):i.removeAttribute(t):i.setAttribute(t,e)})),u=o,!0}}}},addInputRules(){return[t.wrappingInputRule({find:w,type:this.type,getAttributes:t=>({checked:"x"===t[t.length-1]})})]}}),N=t.Node.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:e}){return["ul",t.mergeAttributes(this.options.HTMLAttributes,e,{"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(e,s,n){const r=e=>{const s=t.parseIndentedBlocks(e,{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:n.inlineTokens(t.mainContent),nestedTokens:e}),customNestedParser:r},n);return s?[{type:"taskList",raw:s.raw,items:s.items}]:n.blockTokens(e)},i=t.parseIndentedBlocks(e,{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:n.inlineTokens(t.mainContent),nestedTokens:e}),customNestedParser:r},n);if(i)return{type:"taskList",raw:i.raw,items:i.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()}}});t.Extension.create({name:"listKit",addExtensions(){const t=[];return!1!==this.options.bulletList&&t.push(r.configure(this.options.bulletList)),!1!==this.options.listItem&&t.push(i.configure(this.options.listItem)),!1!==this.options.listKeymap&&t.push(L.configure(this.options.listKeymap)),!1!==this.options.orderedList&&t.push(v.configure(this.options.orderedList)),!1!==this.options.taskItem&&t.push(I.configure(this.options.taskItem)),!1!==this.options.taskList&&t.push(N.configure(this.options.taskList)),t}}),exports.BulletList=r,exports.ListItem=i,exports.ListKeymap=L,exports.OrderedList=v,exports.TaskItem=I,exports.TaskList=N,exports.bulletListInputRegex=n,exports.inputRegex=w,exports.listHelpers=o,exports.orderedListInputRegex=M;
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","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":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.js","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","prefix","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
+ "use strict";var e=require("../../core/dist/index.js"),t=require("../../../prosemirror-state/dist/index.js"),l=require("../../../prosemirror-tables/dist/index.js");function o(e){return"left"===e||"right"===e||"center"===e?e:null}function n(){return{default:null,parseHTML:e=>function(e){const t=(e.style.textAlign||"").trim().toLowerCase(),l=(e.getAttribute("align")||"").trim().toLowerCase();return o(t||l)}(e),renderHTML:e=>e.align?{style:`text-align: ${e.align}`}:{}}}var r=e.Node.create({name:"tableCell",addOptions:()=>({HTMLAttributes:{}}),content:"block+",addAttributes:()=>({colspan:{default:1},rowspan:{default:1},colwidth:{default:null,parseHTML:e=>{var t,l;const o=e.getAttribute("colwidth"),n=o?o.split(",").map((e=>parseInt(e,10))):null;if(!n){const o=null==(t=e.closest("table"))?void 0:t.querySelectorAll("colgroup > col"),n=Array.from((null==(l=e.parentElement)?void 0:l.children)||[]).indexOf(e);if(n&&n>-1&&o&&o[n]){const e=o[n].getAttribute("width");return e?[parseInt(e,10)]:null}}return n}},align:n()}),tableRole:"cell",isolating:!0,parseHTML:()=>[{tag:"td"}],renderHTML({HTMLAttributes:t}){return["td",e.mergeAttributes(this.options.HTMLAttributes,t),0]}}),a=e.Node.create({name:"tableHeader",addOptions:()=>({HTMLAttributes:{}}),content:"block+",addAttributes:()=>({colspan:{default:1},rowspan:{default:1},colwidth:{default:null,parseHTML:e=>{const t=e.getAttribute("colwidth");return t?t.split(",").map((e=>parseInt(e,10))):null}},align:n()}),tableRole:"header_cell",isolating:!0,parseHTML:()=>[{tag:"th"}],renderHTML({HTMLAttributes:t}){return["th",e.mergeAttributes(this.options.HTMLAttributes,t),0]}}),s=e.Node.create({name:"tableRow",addOptions:()=>({HTMLAttributes:{}}),content:"(tableCell | tableHeader)*",tableRole:"row",parseHTML:()=>[{tag:"tr"}],renderHTML({HTMLAttributes:t}){return["tr",e.mergeAttributes(this.options.HTMLAttributes,t),0]}});function i(e,t){return t?["width",`${Math.max(t,e)}px`]:["min-width",`${e}px`]}function d(e,t,l,o,n,r){var a;let s=0,d=!0,c=t.firstChild;const h=e.firstChild;if(null!==h)for(let e=0,l=0;e<h.childCount;e+=1){const{colspan:a,colwidth:p}=h.child(e).attrs;for(let e=0;e<a;e+=1,l+=1){const a=n===l?r:p&&p[e],h=a?`${a}px`:"";if(s+=a||o,a||(d=!1),c){if(c.style.width!==h){const[e,t]=i(o,a);c.style.setProperty(e,t)}c=c.nextSibling}else{const e=document.createElement("col"),[l,n]=i(o,a);e.style.setProperty(l,n),t.appendChild(e)}}}for(;c;){const e=c.nextSibling;null==(a=c.parentNode)||a.removeChild(c),c=e}const p=e.attrs.style&&"string"==typeof e.attrs.style&&/\bwidth\s*:/i.test(e.attrs.style);d&&!p?(l.style.width=`${s}px`,l.style.minWidth=""):(l.style.width="",l.style.minWidth=`${s}px`)}var c=class{constructor(e,t){this.node=e,this.cellMinWidth=t,this.dom=document.createElement("div"),this.dom.className="tableWrapper",this.table=this.dom.appendChild(document.createElement("table")),e.attrs.style&&(this.table.style.cssText=e.attrs.style),this.colgroup=this.table.appendChild(document.createElement("colgroup")),d(e,this.colgroup,this.table,t),this.contentDOM=this.table.appendChild(document.createElement("tbody"))}update(e){return e.type===this.node.type&&(this.node=e,d(e,this.colgroup,this.table,this.cellMinWidth),!0)}ignoreMutation(e){const t=e.target,l=this.dom.contains(t),o=this.contentDOM.contains(t);return!(!l||o||"attributes"!==e.type&&"childList"!==e.type&&"characterData"!==e.type)}};function h(e,t,l,o){let n=0,r=!0;const a=[],s=e.firstChild;if(!s)return{};for(let e=0,d=0;e<s.childCount;e+=1){const{colspan:c,colwidth:h}=s.child(e).attrs;for(let e=0;e<c;e+=1,d+=1){const s=l===d?o:h&&h[e];n+=s||t,s||(r=!1);const[c,p]=i(t,s);a.push(["col",{style:`${c}: ${p}`}])}}const d=r?`${n}px`:"",c=r?"":`${n}px`;return{colgroup:["colgroup",{},...a],tableWidth:d,tableMinWidth:c}}function p(e,t){return e.createAndFill()}function u(e,t,l,o,n){const r=function(e){if(e.cached.tableNodeTypes)return e.cached.tableNodeTypes;const t={};return Object.keys(e.nodes).forEach((l=>{const o=e.nodes[l];o.spec.tableRole&&(t[o.spec.tableRole]=o)})),e.cached.tableNodeTypes=t,t}(e),a=[],s=[];for(let e=0;e<l;e+=1){const e=p(r.cell);if(e&&s.push(e),o){const e=p(r.header_cell);e&&a.push(e)}}const i=[];for(let e=0;e<t;e+=1)i.push(r.row.createChecked(null,o&&0===e?a:s));return r.table.createChecked(null,i)}var b=({editor:t})=>{const{selection:o}=t.state;if(!(o instanceof l.CellSelection))return!1;let n=0;const r=e.findParentNodeClosestToPos(o.ranges[0].$from,(e=>"table"===e.type.name));null==r||r.node.descendants((e=>{if("table"===e.type.name)return!1;["tableCell","tableHeader"].includes(e.type.name)&&(n+=1)}));return n===o.ranges.length&&(t.commands.deleteTable(),!0)};function g(e,t,l={}){var n;const r=null!=(n=l.cellLineSeparator)?n:"";if(!e||!e.content||0===e.content.length)return"";const a=[];e.content.forEach((e=>{const l=[];e.content&&e.content.forEach((e=>{let n="";if(e.content&&Array.isArray(e.content)&&e.content.length>1){n=e.content.map((e=>t.renderChildren(e))).join(r)}else n=e.content?t.renderChildren(e.content):"";const a=(n||"").replace(/\s+/g," ").trim();const s="tableHeader"===e.type,i=o(null==(d=e.attrs)?void 0:d.align);var d;l.push({text:a,isHeader:s,align:i})})),a.push(l)}));const s=a.reduce(((e,t)=>Math.max(e,t.length)),0);if(0===s)return"";const i=new Array(s).fill(0);a.forEach((e=>{var t;for(let l=0;l<s;l+=1){const o=((null==(t=e[l])?void 0:t.text)||"").length;o>i[l]&&(i[l]=o),i[l]<3&&(i[l]=3)}}));const d=(e,t)=>e+" ".repeat(Math.max(0,t-e.length)),c=a[0],h=c.some((e=>e.isHeader)),p=new Array(s).fill(null);a.forEach((e=>{var t;for(let l=0;l<s;l+=1)!p[l]&&(null==(t=e[l])?void 0:t.align)&&(p[l]=e[l].align)}));let u="\n";const b=new Array(s).fill(0).map(((e,t)=>h&&c[t]&&c[t].text||""));u+=`| ${b.map(((e,t)=>d(e,i[t]))).join(" | ")} |\n`,u+=`| ${i.map(((e,t)=>{const l=Math.max(3,e),o=p[t];return"left"===o?`:${"-".repeat(l)}`:"right"===o?`${"-".repeat(l)}:`:"center"===o?`:${"-".repeat(l)}:`:"-".repeat(l)})).join(" | ")} |\n`;return(h?a.slice(1):a).forEach((e=>{u+=`| ${new Array(s).fill(0).map(((t,l)=>d(e[l]&&e[l].text||"",i[l]))).join(" | ")} |\n`})),u}var f=g,m=e.Node.create({name:"table",addOptions:()=>({HTMLAttributes:{},resizable:!1,renderWrapper:!1,handleWidth:5,cellMinWidth:25,View:c,lastColumnResizable:!0,allowTableNodeSelection:!1}),content:"tableRow+",tableRole:"table",isolating:!0,group:"block",parseHTML:()=>[{tag:"table"}],renderHTML({node:t,HTMLAttributes:l}){const{colgroup:o,tableWidth:n,tableMinWidth:r}=h(t,this.options.cellMinWidth),a=l.style;const s=["table",e.mergeAttributes(this.options.HTMLAttributes,l,{style:a||(n?`width: ${n}`:`min-width: ${r}`)}),o,["tbody",0]];return this.options.renderWrapper?["div",{class:"tableWrapper"},s]:s},parseMarkdown:(e,t)=>{const l=[],n=Array.isArray(e.align)?e.align:[];if(e.header){const r=[];e.header.forEach(((e,l)=>{var a;const s=o(null!=(a=n[l])?a:e.align),i=s?{align:s}:{};r.push(t.createNode("tableHeader",i,[{type:"paragraph",content:t.parseInline(e.tokens)}]))})),l.push(t.createNode("tableRow",{},r))}return e.rows&&e.rows.forEach((e=>{const r=[];e.forEach(((e,l)=>{var a;const s=o(null!=(a=n[l])?a:e.align),i=s?{align:s}:{};r.push(t.createNode("tableCell",i,[{type:"paragraph",content:t.parseInline(e.tokens)}]))})),l.push(t.createNode("tableRow",{},r))})),t.createNode("table",void 0,l)},renderMarkdown:(e,t)=>f(e,t),addCommands:()=>({insertTable:({rows:e=3,cols:l=3,withHeaderRow:o=!0}={})=>({tr:n,dispatch:r,editor:a})=>{const s=u(a.schema,e,l,o);if(r){const e=n.selection.from+1;n.replaceSelectionWith(s).scrollIntoView().setSelection(t.TextSelection.near(n.doc.resolve(e)))}return!0},addColumnBefore:()=>({state:e,dispatch:t})=>l.addColumnBefore(e,t),addColumnAfter:()=>({state:e,dispatch:t})=>l.addColumnAfter(e,t),deleteColumn:()=>({state:e,dispatch:t})=>l.deleteColumn(e,t),addRowBefore:()=>({state:e,dispatch:t})=>l.addRowBefore(e,t),addRowAfter:()=>({state:e,dispatch:t})=>l.addRowAfter(e,t),deleteRow:()=>({state:e,dispatch:t})=>l.deleteRow(e,t),deleteTable:()=>({state:e,dispatch:t})=>l.deleteTable(e,t),mergeCells:()=>({state:e,dispatch:t})=>l.mergeCells(e,t),splitCell:()=>({state:e,dispatch:t})=>l.splitCell(e,t),toggleHeaderColumn:()=>({state:e,dispatch:t})=>l.toggleHeader("column")(e,t),toggleHeaderRow:()=>({state:e,dispatch:t})=>l.toggleHeader("row")(e,t),toggleHeaderCell:()=>({state:e,dispatch:t})=>l.toggleHeaderCell(e,t),mergeOrSplit:()=>({state:e,dispatch:t})=>!!l.mergeCells(e,t)||l.splitCell(e,t),setCellAttribute:(e,t)=>({state:o,dispatch:n})=>l.setCellAttr(e,t)(o,n),goToNextCell:()=>({state:e,dispatch:t})=>l.goToNextCell(1)(e,t),goToPreviousCell:()=>({state:e,dispatch:t})=>l.goToNextCell(-1)(e,t),fixTables:()=>({state:e,dispatch:t})=>(t&&l.fixTables(e),!0),setCellSelection:e=>({tr:t,dispatch:o})=>{if(o){const o=l.CellSelection.create(t.doc,e.anchorCell,e.headCell);t.setSelection(o)}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:b,"Mod-Backspace":b,Delete:b,"Mod-Delete":b}},addProseMirrorPlugins(){return[...this.options.resizable&&this.editor.isEditable?[l.columnResizing({handleWidth:this.options.handleWidth,cellMinWidth:this.options.cellMinWidth,defaultCellMinWidth:this.options.cellMinWidth,View:this.options.View,lastColumnResizable:this.options.lastColumnResizable})]:[],l.tableEditing({allowTableNodeSelection:this.options.allowTableNodeSelection})]},extendNodeSchema(t){const l={name:t.name,options:t.options,storage:t.storage};return{tableRole:e.callOrReturn(e.getExtensionField(t,"tableRole",l))}}});e.Extension.create({name:"tableKit",addExtensions(){const e=[];return!1!==this.options.table&&e.push(m.configure(this.options.table)),!1!==this.options.tableCell&&e.push(r.configure(this.options.tableCell)),!1!==this.options.tableHeader&&e.push(a.configure(this.options.tableHeader)),!1!==this.options.tableRow&&e.push(s.configure(this.options.tableRow)),e}}),exports.DEFAULT_CELL_LINE_SEPARATOR="",exports.Table=m,exports.TableCell=r,exports.TableHeader=a,exports.TableRow=s,exports.TableView=c,exports.createColGroup=h,exports.createTable=u,exports.renderTableToMarkdown=g,exports.updateColumns=d;
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","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","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,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../extension-table/dist/index.js"),l=e.TableCell;exports.TableCell=e.TableCell,exports.default=l;
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","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":"yHAGIA,EAAgBC,EAAAA","x_google_ignoreList":[0]}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../extension-table/dist/index.js"),r=e.TableHeader;exports.TableHeader=e.TableHeader,exports.default=r;
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","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":"yHAGIA,EAAgBC,EAAAA","x_google_ignoreList":[0]}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../extension-table/dist/index.js"),t=e.TableRow;exports.TableRow=e.TableRow,exports.default=t;
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","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":"yHAGIA,EAAgBC,EAAAA","x_google_ignoreList":[0]}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../extension-list/dist/index.js"),t=e.TaskItem;exports.TaskItem=e.TaskItem,exports.default=t;
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","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":"wHAGIA,EAAgBC,EAAAA","x_google_ignoreList":[0]}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../extension-list/dist/index.js"),s=e.TaskList;exports.TaskList=e.TaskList,exports.default=s;
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","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":"wHAGIA,EAAgBC,EAAAA","x_google_ignoreList":[0]}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("../../core/dist/index.js").Extension.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")}}}),e=t;exports.TextAlign=t,exports.default=e;
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","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":"wEAEIA,sCAAYC,UAAUC,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
+ "use strict";var t=require("../../w3c-keyname/index.js");const e="undefined"!=typeof navigator&&/Mac|iP(hone|[oa]d)/.test(navigator.platform),i="undefined"!=typeof navigator&&/Win/.test(navigator.platform);function r(t){let i,r,n,a,l=t.split(/-(?!$)/),f=l[l.length-1];"Space"==f&&(f=" ");for(let t=0;t<l.length-1;t++){let f=l[t];if(/^(cmd|meta|m)$/i.test(f))a=!0;else if(/^a(lt)?$/i.test(f))i=!0;else if(/^(c|ctrl|control)$/i.test(f))r=!0;else if(/^s(hift)?$/i.test(f))n=!0;else{if(!/^mod$/i.test(f))throw new Error("Unrecognized modifier name: "+f);e?a=!0:r=!0}}return i&&(f="Alt-"+f),r&&(f="Ctrl-"+f),a&&(f="Meta-"+f),n&&(f="Shift-"+f),f}function n(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}exports.keydownHandler=function(e){let a=function(t){let e=Object.create(null);for(let i in t)e[r(i)]=t[i];return e}(e);return function(e,r){let l,f=t.keyName(r),o=a[n(f,r)];if(o&&o(e.state,e.dispatch,e))return!0;if(1==f.length&&" "!=f){if(r.shiftKey){let t=a[n(f,r,!1)];if(t&&t(e.state,e.dispatch,e))return!0}if((r.altKey||r.metaKey||r.ctrlKey)&&!(i&&r.ctrlKey&&r.altKey)&&(l=t.base[r.keyCode])&&l!=f){let t=a[n(l,r)];if(t&&t(e.state,e.dispatch,e))return!0}}return!1}};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","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","bindings","map","copy","Object","create","prop","normalize","view","baseName","keyName","direct","state","dispatch","noShift","base","keyCode","fromCode"],"mappings":"yDAGA,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,wBAwCA,SAAwBkB,GACpB,IAAIC,EAzDR,SAAmBA,GACf,IAAIC,EAAOC,OAAOC,OAAO,MACzB,IAAK,IAAIC,KAAQJ,EACbC,EAAKrB,EAAiBwB,IAASJ,EAAII,GACvC,OAAOH,CACX,CAoDcI,CAAUN,GACpB,OAAO,SAAUO,EAAMZ,GACnB,IAA2Ba,EAAvB1B,EAAO2B,EAAAA,QAAQd,GAAkBe,EAAST,EAAIP,EAAUZ,EAAMa,IAClE,GAAIe,GAAUA,EAAOH,EAAKI,MAAOJ,EAAKK,SAAUL,GAC5C,OAAO,EAEX,GAAmB,GAAfzB,EAAKQ,QAAuB,KAARR,EAAa,CACjC,GAAIa,EAAMI,SAAU,CAGhB,IAAIc,EAAUZ,EAAIP,EAAUZ,EAAMa,GAAO,IACzC,GAAIkB,GAAWA,EAAQN,EAAKI,MAAOJ,EAAKK,SAAUL,GAC9C,OAAO,CACf,CACA,IAAKZ,EAAMC,QAAUD,EAAMG,SAAWH,EAAME,YAEtCjB,GAAWe,EAAME,SAAWF,EAAMC,UACnCY,EAAWM,EAAAA,KAAKnB,EAAMoB,WAAaP,GAAY1B,EAAM,CAKtD,IAAIkC,EAAWf,EAAIP,EAAUc,EAAUb,IACvC,GAAIqB,GAAYA,EAAST,EAAKI,MAAOJ,EAAKK,SAAUL,GAChD,OAAO,CACf,CACJ,CACA,OAAO,CACX,CACJ","x_google_ignoreList":[0]}