1import{E as H}from"./fingerprint-Ca3QzMET.js";function R(t,n){const e=t.text;if(!e)return null;const s=r=>{const i=n[r];if(i===void 0)return null;if(i.startsWith(e,t.start))return{...t,block:r,start:t.start,end:t.start+e.length};const a=i.indexOf(e);return a<0?null:{...t,block:r,start:a,end:a+e.length}},o=s(t.block);if(o)return o;for(let r=1;r<n.length;r++){const i=s(t.block-r);if(i)return i;const a=s(t.block+r);if(a)return a}return null}function rt(t,n){const e=[],s=[];for(const o of t){const r=R(o,n);r?e.push(r):s.push(o)}return{placed:e,orphaned:s}}const I=48;function st(t,n){const e=Math.max(0,Math.min(t.length,n)),s=t.slice(Math.max(0,e-I),e);if(s.trim().length>=3)return{phrase:s,before:!1};const o=t.slice(e,e+I);return o.trim().length>=3?{phrase:o,before:!0}:null}function it(t,n){return Math.max(0,Math.min(n,t.before?t.start:t.end))}function at(t,n,e=[]){if(t<=0||!n.length&&!e.length)return[{from:0,to:t,marks:[]}];const s=new Set([0,t]);for(const i of n)i.start>0&&i.start<t&&s.add(i.start),i.end>0&&i.end<t&&s.add(i.end);for(const i of e)i>0&&i<t&&s.add(i);const o=[...s].sort((i,a)=>i-a),r=[];for(let i=0;i<o.length-1;i++){const a=o[i],c=o[i+1];c<=a||r.push({from:a,to:c,marks:n.filter(f=>f.start<=a&&f.end>=c)})}return r}const h=75,$=.01,F=25;function d(t){const n=t.trim();return n?n.split(/\s+/u).length:0}function D(t){return typeof t.annotationId=="string"&&t.annotationId.trim()!==""}function S(t){return!t||!Number.isFinite(t)||t<=0?0:Math.floor(t*$)}function C(t,n){const e=S(n),s=[];let o=0;for(const r of t){if(s.length>=F)break;if(!D(r))continue;const i=d(r.text);i===0||i>h||o+i>e||(s.push(r),o+=i)}return s}const v=12,k=/[.!?â¦]+["'ââ)\]]*(?=\s|$)/gu;function O(t,n){k.lastIndex=n;const e=k.exec(t);return e?e.index+e[0].length:t.length}function W(t,n=0){let e=Math.max(0,Math.min(t.length,n));for(;e<t.length&&/\s/u.test(t[e]);)e++;if(e>=t.length)return null;const s=O(t,e);let o=s;for(d(t.slice(e,s))<v&&s<t.length&&(o=O(t,s),d(t.slice(e,o))>h&&(o=s));o>e&&/\s/u.test(t[o-1]);)o--;const r=d(t.slice(e,o));return r===0||r>h?null:{start:e,end:o}}function L(t){var n;return(n=t.anchor)!=null&&n.text?{id:t.id,kind:"highlight",color:"",block:t.anchor.block,start:t.anchor.start,text:t.anchor.text,createdAt:t.createdAt??""}:null}function T(t,n){var s,o;const e=[];for(const r of t){if(!((s=r.note)!=null&&s.trim()))continue;const i=n(r.page)??null,a=L(r),c=a&&i?R(a,[...i]):null;if((r.kind??"highlight")==="text"){if(!c||!i)continue;const u=W(i[c.block],c.start);if(!u)continue;e.push({annotationId:r.id,page:r.page,block:c.block,...u,text:i[c.block].slice(u.start,u.end),implied:!0});continue}const f=(((o=r.anchor)==null?void 0:o.text)||r.text||"").trim();f&&e.push({annotationId:r.id,page:r.page,text:f,implied:!1,...c?{block:c.block,start:c.start,end:c.end}:r.anchor?{block:r.anchor.block,start:r.anchor.start}:{}})}return e.sort((r,i)=>r.page-i.page||(r.block??0)-(i.block??0)||(r.start??0)-(i.start??0))}function B(t,n,e){return C(T(t,n),e)}function b(t){const{_iw:n,...e}=t;return e}function P(t){return t.kind==="reference"?b(t.citation):{id:t.id,type:"document",title:t.title}}function _(t){const n=t.kind==="reference"?t.citation:void 0;return{...{...typeof(n==null?void 0:n.DOI)=="string"&&n.DOI.trim()?{doi:n.DOI.trim()}:{},...typeof(n==null?void 0:n.ISBN)=="string"&&n.ISBN.trim()?{isbn:n.ISBN.trim()}:{}},...t.identifiers??{}}}function U(t){return`inkwave-master:${t.id}@${t.contentHash}`}function X(t){var o;const{item:n}=t,e=new Set(t.annotations.map(r=>r.id)),s=(t.excerpts??[]).filter(r=>typeof r.annotationId=="string"&&e.has(r.annotationId)).map(r=>({...r}));return{masterId:n.id,citation:P(n),identifiers:_(n),...t.edition?{edition:t.edition}:{},contentHash:n.contentHash,pageTextFingerprints:[...n.pageTextFingerprints??[]],...t.workWordCount!==void 0?{workWordCount:t.workWordCount}:{},skeleton:(t.skeleton??[]).map(r=>({...r,pages:[r.pages[0],r.pages[1]]})),annotations:t.annotations.map(r=>({...r,target:{...r.target}})),excerpts:s,...(o=t.gists)!=null&&o.length?{gists:t.gists.map(r=>({...r}))}:{},privatePointer:U(n)}}const E=64,m=8;function g(t,n){if(t)return n==="prefix"?t.slice(-E):t.slice(0,E)}function w(t){const n=t.exact.trim().split(/\s+/u),e=g(t.prefix,"prefix"),s=g(t.suffix,"suffix"),o=Math.max(1,Math.min(m,Math.floor(n.length/3)));return{start:{exact:n.slice(0,o).join(" "),...e?{prefix:e}:{}},end:{exact:n.slice(-o).join(" "),...s?{suffix:s}:{}}}}function G(t,n,e){const{textQuote:s,textQuoteRange:o,...r}=t,i={...r};
1if(s){const a=d(s.exact),c=g(s.prefix,"prefix"),f=g(s.suffix,"suffix"),u=e.has(s.exact.trim());a<=h&&(u||a<=n.left)?(u||(n.left-=a),i.textQuote={exact:s.exact,...c?{prefix:c}:{},...f?{suffix:f}:{}}):i.textQuoteRange=w(s)}else o&&(i.textQuoteRange={start:{exact:o.start.exact.trim().split(/\s+/u).slice(0,m).join(" ")},end:{exact:o.end.exact.trim().split(/\s+/u).slice(-m).join(" ")}});return i}function j(t){const{privatePointer:n,...e}=t,s=new Set(t.annotations.map(f=>f.id)),o=t.excerpts.filter(f=>typeof f.annotationId=="string"&&s.has(f.annotationId)),r=C(o,t.workWordCount),i=r.reduce((f,u)=>f+d(u.text),0),a={left:Math.max(0,S(t.workWordCount)-i)},c=new Set(r.map(f=>f.text.trim()));return{...e,citation:b(t.citation),annotations:t.annotations.map(f=>({...f,target:G(f.target,a,c)})),excerpts:r}}const z=.8;function N(t){return t.trim().toLowerCase().replace(/^(https?:\/\/(dx\.)?doi\.org\/|doi:\s*)/u,"")}function x(t){const n=t.toUpperCase().replace(/[^0-9X]/gu,"");if(n.length!==10)return n;const e=`978${n.slice(0,9)}`,s=[...e].reduce((o,r,i)=>o+Number(r)*(i%2?3:1),0);return`${e}${(10-s%10)%10}`}function Q(t,n){return t.doi&&n.doi&&N(t.doi)===N(n.doi)||t.isbn&&n.isbn&&x(t.isbn)!==""&&x(t.isbn)===x(n.isbn)?!0:t.platformId&&n.platformId&&t.platformId===n.platformId?!t.platform||!n.platform||t.platform===n.platform:!1}function K(t,n){const e=t.filter(o=>o&&o!==H);if(!e.length||!(n!=null&&n.length))return 0;const s=new Set(n);return e.filter(o=>s.has(o)).length/e.length}function ct(t,n){const e=n.filter(o=>Q(t.identifiers??{},_(o)));if(t.contentHash){const o=e.find(r=>r.contentHash===t.contentHash)??n.find(r=>r.contentHash===t.contentHash);if(o)return{item:o,match:"exact"}}let s=null;for(const o of[...e,...n.filter(r=>!e.includes(r))]){const r=K(t.pageTextFingerprints,o.pageTextFingerprints);r>=z&&(!s||r>s.overlap)&&(s={item:o,overlap:r})}return s?{item:s.item,match:"fingerprint"}:e.length?{item:e[0],match:"approximate"}:null}function p(t){return t==null?void 0:t._iw}function ft(t){const n=p(t);return!!(n!=null&&n.pdfName)||!!(n!=null&&n.reading)||!!(n!=null&&n.sidecar)}function q(t){const n=t.toLowerCase(),e=/^(.+?)\.(?:ezproxy|proxy|idm\.oclc|libproxy|eres)\b/u.exec(n);return(e&&e[1].includes("-")?e[1].replace(/-/gu,"."):n).replace(/^www\./u,"")}const Y=/^(utm_|fbclid$|gclid$|mc_|ref$|source$)/u;function J(t){if(!t)return null;let n;try{n=new URL(t)}catch{return null}if(!/^https?:$/u.test(n.protocol))return null;for(const s of[...n.searchParams.keys()])Y.test(s)&&n.searchParams.delete(s);const e=n.pathname.replace(/\/+$/u,"");return!e&&!n.search?null:{platform:q(n.hostname),platformId:`${e}${n.search}`}}function V(t){var e;const n=p(t);return(n==null?void 0:n.sourceUrl)??((e=n==null?void 0:n.reading)==null?void 0:e.sourceUrl)??(typeof t.URL=="string"?t.URL:void 0)}function Z(t){const n=typeof t.DOI=="string"&&t.DOI.trim()?t.DOI.trim():void 0,e=typeof t.ISBN=="string"&&t.ISBN.trim()?t.ISBN.trim():void 0,s=J(V(t));return{...n?{doi:n}:{},...e?{isbn:e}:{},...s??{}}}function tt(t,n){var i,a,c;const e=p(t),s=e==null?void 0:e.sourceIndex,o=e==null?void 0:e.sidecar,r=(e==null?void 0:e.addedAt)??((i=e==null?void 0:e.reading)==null?void 0:i.updatedAt)??"";return{id:n??((a=e==null?void 0:e.reading)==null?void 0:a.documentId)??t.id,kind:"reference",title:String(t.title??t.id),mime:e!=null&&e.pdfName||((c=e==null?void 0:e.reading)==null?void 0:c.kind)==="pdf"?"application/pdf":"text/plain",byteLength:0,contentHash:(s==null?void 0:s.contentHash)??(o==null?void 0:o.contentHash)??"",provider:{provider:"other"},createdAt:r,updatedAt:r,...(e==null?void 0:e.licence)!==void 0?{licence:e.licence}:{},...(e==null?void 0:e.licenceBasis)!==void 0?{licenceBasis:e.licenceBasis}:{},identifiers:{...(o==null?void 0:o.identifiers)??{},...Z(t)},pageTextFingerprints:[...(s==null?void 0:s.pageTextFingerprints)??(o==null?void 0:o.pageTextFingerprints)??[]],citation:t}}function y(t){var e;const n=(e=p(t))==null?void 0:e.highlights;return Array.isArray(n)?n:[]}function nt(t){var e,s;const n=(((e=t.anchor)==null?void 0:e.text)||t.text||"").trim();return{id:t.id,...(s=t.note)!=null&&s.trim()?{body:t.note}:{},target:{page:t.page,...n?{textQuote:{exact:n}}:{}},render:{kind:t.kind??"highlight",color:t.color,...t.size!==void 0?{size:t.size}:{},rects:t.rects.map(o=>({x:o.x,y:o.y,w:o.w,h:o.h})),...t.anchor?{block:t.anchor.block,start:t.anchor.start}:{}},createdAt:t.createdAt}}function ut(t){return[...new Set(y(t).filter(n=>{var e;return n.kind==="text"&&((e=n.note)==null?void 0:e.trim())}).map(n=>n.page))].sort((n,e)=>n-e)}function et(t){var o,r,i,a;const n=(o=t.author)==null?void 0:o[0],e=(n==null?void 0:n.family)||(n==null?void 0:n.literal)||String(t.title??t.id),s=(a=(i=(r=t.issued)==null?void 0:r["date-parts"])==null?void 0:i[0])==null?void 0:a[0];return s?`${e} ${s}`:e}function lt(t,n={}){const e=p(t),s=e==null?void 0:e.sourceIndex,o=e==null?void 0:e.sidecar,r=tt(t),i=(s==null?void 0:s.wordCount)??(o==null?void 0:o.workWordCount),a=n.leaveOutNotes?[]:y(t),c=new Set(a.map(l=>l.id)),f=n.leaveOutNotes?[]:[...a.map(nt),...((o==null?void 0:o.annotations)??[]).filter(l=>!c.has(l.id))],u=typeof(e==null?void 0:e.pageOffset)=="number"?e.pageOffset:0,A=et(t),M=n.leaveOutNotes?[]:[...B(a,n.blocksOf??(()=>null),i).map(l=>({annotationId:l.annotationId,page:l.page,text:l.text,citation:`${A}, p. ${l.page+u}`})),...((o==null?void 0:o.excerpts)??[]).filter(l=>!c.has(l.annotationId))];return j(X({item:r,annotations:f,excerpts:M,skeleton:(s==null?void 0:s.skeleton)??(o==null?void 0:o.skeleton)??[],...i!==void 0?{workWordCount:i}:{},...o!=null&&o.edition?{edition:o.edition}:{}}))}export{z as F,st as a,tt as b,lt as c,ct as d,d as e,K as f,it as g,ft as i,rt as l,at as m,ut as n,B as p};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.