import {b as b$1,c}from'../chunk-HPJBZL37.mjs';import {a}from'../chunk-HJE46MS3.mjs';import'../chunk-QYUPLKLP.mjs';function I(o,t,r){if(!Number.isInteger(t)||!Number.isInteger(r)||t<0||r<t)return null;let n=o.content.size;return t>n?null:{from:t,to:Math.min(r,n)}}function b(o,t){if(!o)return null;let r=o.state.schema.marks.comment;if(!r)return null;let n=1/0,e=-1/0;return o.state.doc.descendants((i,c)=>{if(i.isInline)for(let a of i.marks)a.type===r&&a.attrs.commentId===t&&(n=Math.min(n,c),e=Math.max(e,c+i.nodeSize));}),e<0?null:{from:n,to:e}}function T(o,t){if(!o)return null;let{entries:r}=a(o.state),n=r.find(e=>e.revisionId===t||e.insertionRevisionId===t||e.coalescedRevisionIds?.includes(t));return n?{from:n.from,to:n.to}:null}function S(o,t,r){if(!o||!t)return [];let n=r?.caseSensitive??false,e=r?.limit??20,i=n?t:t.toLowerCase(),c=[];return o.state.doc.descendants(a=>{if(c.length>=e)return  false;if(!a.isTextblock)return  true;let f=a.attrs?.paraId;if(!f)return  false;let s=b$1(a),u=n?s:s.toLowerCase(),l=u.indexOf(i);if(l===-1||u.indexOf(i,l+1)!==-1)return  false;let p=40;return c.push({paraId:f,match:s.slice(l,l+t.length),before:s.slice(Math.max(0,l-p),l),after:s.slice(l+t.length,l+t.length+p)}),false}),c}function y(o){if(!o)return null;let{selection:t,doc:r}=o.state,n=t.$from,e=n.depth;for(;e>0&&!n.node(e).isTextblock;)e--;let i=e>0?n.node(e):null;if(!i)return null;let c$1=i.attrs?.paraId??null,a=n.start(e),f=a+i.content.size,s=c(r,a,t.from),u=c(r,t.from,t.to),l=c(r,t.to,f);return {paraId:c$1,selectedText:u,paragraphText:s+u+l,before:s,after:l}}function P(o,t,r){if(!t||!o)return null;let n=t.pages[r-1];if(!n)return null;let e=new Set,i=[];for(let a of n.fragments){if(a.kind!=="paragraph")continue;let f=a.pmStart;if(f==null)continue;let s=o.state.doc.nodeAt(f);if(!s||!s.isTextblock)continue;let u=s.attrs?.paraId;!u||e.has(u)||(e.add(u),i.push({paraId:u,text:b$1(s),styleId:s.attrs?.styleId??void 0}));}let c=i.map(a=>`[${a.paraId}] ${a.text}`).join(`
`);return {pageNumber:r,text:c,paragraphs:i}}export{I as clampRangeToDoc,T as findChangeRange,b as findCommentRange,S as findInDocument,P as getPageContent,y as getSelectionInfo};