@e-llm-studio/citation 0.0.253 → 0.0.254

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 (47) hide show
  1. package/dist/cjs/features/ChatDrawer/ChatDrawer.js +1 -1
  2. package/dist/cjs/features/ChatDrawer/ChatDrawer.js.map +1 -1
  3. package/dist/cjs/features/IngestionStatus/IngestionStatusComponent.js +1 -1
  4. package/dist/cjs/features/IngestionStatus/IngestionStatusComponent.js.map +1 -1
  5. package/dist/cjs/features/IngestionStatus/useIngestionStatus.js +1 -1
  6. package/dist/cjs/features/IngestionStatus/useIngestionStatus.js.map +1 -1
  7. package/dist/cjs/features/PdfViewer/PdfViewer.js +1 -1
  8. package/dist/cjs/features/PdfViewer/PdfViewer.js.map +1 -1
  9. package/dist/cjs/features/PdfViewer/usePdfHighlight.js +1 -1
  10. package/dist/cjs/features/PdfViewer/usePdfHighlight.js.map +1 -1
  11. package/dist/cjs/features/SegmentReviewComponents/CognitiveIntegrity.js +1 -1
  12. package/dist/cjs/features/SegmentReviewComponents/CognitiveIntegrity.js.map +1 -1
  13. package/dist/cjs/features/SegmentReviewComponents/SaveAsLearningCard.js +1 -1
  14. package/dist/cjs/features/SegmentReviewComponents/SaveAsLearningCard.js.map +1 -1
  15. package/dist/cjs/features/SegmentReviewComponents/SegmentReviewPdfWrapper.js +1 -1
  16. package/dist/cjs/features/SegmentReviewComponents/SegmentReviewPdfWrapper.js.map +1 -1
  17. package/dist/features/ChatDrawer/ChatDrawer.js +1 -1
  18. package/dist/features/ChatDrawer/ChatDrawer.js.map +1 -1
  19. package/dist/features/IngestionStatus/IngestionStatusComponent.js +1 -1
  20. package/dist/features/IngestionStatus/IngestionStatusComponent.js.map +1 -1
  21. package/dist/features/IngestionStatus/useIngestionStatus.js +1 -1
  22. package/dist/features/IngestionStatus/useIngestionStatus.js.map +1 -1
  23. package/dist/features/PdfViewer/PdfViewer.js +1 -1
  24. package/dist/features/PdfViewer/PdfViewer.js.map +1 -1
  25. package/dist/features/PdfViewer/usePdfHighlight.js +1 -1
  26. package/dist/features/PdfViewer/usePdfHighlight.js.map +1 -1
  27. package/dist/features/SegmentReviewComponents/CognitiveIntegrity.js +1 -1
  28. package/dist/features/SegmentReviewComponents/CognitiveIntegrity.js.map +1 -1
  29. package/dist/features/SegmentReviewComponents/SaveAsLearningCard.js +1 -1
  30. package/dist/features/SegmentReviewComponents/SaveAsLearningCard.js.map +1 -1
  31. package/dist/features/SegmentReviewComponents/SegmentReviewPdfWrapper.js +1 -1
  32. package/dist/features/SegmentReviewComponents/SegmentReviewPdfWrapper.js.map +1 -1
  33. package/dist/types/features/ChatDrawer/ChatDrawer.d.ts.map +1 -1
  34. package/dist/types/features/IngestionStatus/IngestionStatusComponent.d.ts +1 -0
  35. package/dist/types/features/IngestionStatus/IngestionStatusComponent.d.ts.map +1 -1
  36. package/dist/types/features/IngestionStatus/useIngestionStatus.d.ts +1 -1
  37. package/dist/types/features/IngestionStatus/useIngestionStatus.d.ts.map +1 -1
  38. package/dist/types/features/PdfViewer/PdfViewer.d.ts.map +1 -1
  39. package/dist/types/features/PdfViewer/usePdfHighlight.d.ts +1 -0
  40. package/dist/types/features/PdfViewer/usePdfHighlight.d.ts.map +1 -1
  41. package/dist/types/features/SegmentReviewComponents/CognitiveIntegrity.d.ts +6 -1
  42. package/dist/types/features/SegmentReviewComponents/CognitiveIntegrity.d.ts.map +1 -1
  43. package/dist/types/features/SegmentReviewComponents/SaveAsLearningCard.d.ts +2 -1
  44. package/dist/types/features/SegmentReviewComponents/SaveAsLearningCard.d.ts.map +1 -1
  45. package/dist/types/features/SegmentReviewComponents/SegmentReviewPdfWrapper.d.ts +8 -1
  46. package/dist/types/features/SegmentReviewComponents/SegmentReviewPdfWrapper.d.ts.map +1 -1
  47. package/package.json +1 -1
@@ -1,2 +1,2 @@
1
- import{jsxs as e,jsx as t}from"react/jsx-runtime";import{useMemo as n,useState as r,useEffect as i,useRef as a,useCallback as o}from"react";import{SpecialZoomLevel as s}from"@react-pdf-viewer/core";import l from"../PdfViewer/PdfViewer.js";import d,{BoundaryReviewActionEnum as g,isBoundaryReviewAction as c}from"./BoundaryCard.js";import p from"./CardWrapper.js";import u from"./CognitiveIntegrity.js";import m from"./LabelCheck.js";import h,{PageCheckActionEnum as f}from"./PageCheck.js";import v from"./PageTypeChoiceCheck.js";import{extractSegmentReviewData as w,getSegmentReviewKey as b}from"./reviewStepAdapters.js";import{CircleCheck as y,Check as _,GitMerge as x}from"lucide-react";import{Typography as S,Tooltip as C,Stack as E,Portal as k,Box as P}from"@mui/material";import I from"./ReviewedCard.js";import R from"./ReviewedBoundaryActions.js";import N from"./RevertCard.js";import M from"./SaveAsLearningCard.js";import A from"./RevertSuccessCard.js";import{getPendingMergeImpactedSegmentKeys as F,hasPolledStructuralAction as T,getOptimisticMergeImpactedSegmentKeys as B,shouldHideStructuralBoundaryReview as L,getResolvedScore as W,getConfidenceColors as z,getBoundaryReviewActionBadgeLabel as $,getTitleReviewActionBadgeLabel as j,isReviewStepResolutionCurrent as q,isReviewStepResolved as G,formatScore as O}from"./helper.js";import D from"./ChartBreakoutCircle.js";import V from"./ApprovalDescriptionBanner.js";import{getReviewScoreBand as H}from"./reviewScore.js";const U=260;var X=(e=>(e.ActualSize="ActualSize",e.PageFit="PageFit",e.PageWidth="PageWidth",e))(X||{});const Y={ActualSize:s.ActualSize,PageFit:s.PageFit,PageWidth:s.PageWidth},J=e=>({reviewId:e.id,segment:e.segment,pageNumber:e.pageNumber});function Z({pdfUrl:X,pdfName:Z,segments:K,totalPages:Q,styles:ee,pdfViewerProps:te,specialZoomLevel:ne,showBadges:re=!0,sortByConfidence:ie="low",filterByConfidence:ae="all",showBadgeNavigation:oe=!0,autoSelectReviewOnPageChange:se=!1,autoAdvanceAfterConfirm:le=!0,autoAdvanceScoreBand:de,badgePreloadPages:ge=8,badgeOffsetTop:ce=20,badgeOffsetRight:pe=68,badgeOffsetLeft:ue=0,initialReviewId:me,manualPrompt:he,heightBuffer:fe,onBoundaryAction:ve,onLabelAction:we,onPageAction:be,onPageTypeRevert:ye,onRevert:_e,onActiveReviewChange:xe,onCurrentPageChange:Se,onActionError:Ce,disableAllActions:Ee=!1,disablePdfAnnotations:ke=!1,disablePdfTextLayer:Pe=!0,disableTitleCheckUntilBoundaryCheckCompleted:Ie=!1,onAdjustManually:Re,onCognitiveClick:Ne,className:Me,style:Ae,viewerStyle:Fe,railStyle:Te,redirectionData:Be,onBadgeSelected:Le,onSaveAsLearning:We,closePopups:ze=!1,onPdfLoadError:$e}){console.log("LOG: TOTAL PAGE IN PARENT",Q);const{boundaryReviews:je,labelReviews:qe,pageReviews:Ge}=n(()=>w(K),[K]),[Oe,De]=r(()=>new Map),[Ve,He]=r(()=>new Set),Ue=n(()=>{const e=new Map;let t=1;return K.forEach((n,r)=>{const i=b(n,r);e.has(i)||(e.set(i,t),t+=1)}),e},[K]),Xe=n(()=>new Set(qe.map(e=>b(e.segment))),[qe]),Ye=n(()=>F(K),[K]);i(()=>{De(e=>{let t=!1;const n=new Map(e);return e.forEach((e,r)=>{const i=K.find(e=>b(e)===r);i&&!T(i,e)||(n.delete(r),t=!0)}),t?n:e})},[K]),i(()=>{He(e=>{let t=!1;const n=new Set(e);return e.forEach(e=>{Oe.has(e)||(n.delete(e),t=!0)}),t?n:e})},[Oe]);const Je=n(()=>B(K,Oe,Ve),[Ve,Oe,K]),Ze=a(null),Ke=n(()=>[...je.filter(e=>!Ye.has(b(e.segment))&&!Je.has(b(e.segment))&&!L(e.review_step,e.segment,Xe.has(b(e.segment)),Oe.get(b(e.segment)))).map(e=>({...e,kind:"boundary",pageNumber:e.metadata.focus_page??e.segment.start_page})),...qe.filter(e=>!Ye.has(b(e.segment))&&!Je.has(b(e.segment))).map(e=>({...e,kind:"label",pageNumber:e.segment.start_page})),...Ge.filter(e=>!Ye.has(b(e.segment))&&!Je.has(b(e.segment))).map(e=>({...e,kind:"page",pageNumber:e.metadata.page_num??e.segment.start_page}))].sort((e,t)=>{const n=Ue.get(b(e.segment))??Number.MAX_SAFE_INTEGER,r=Ue.get(b(t.segment))??Number.MAX_SAFE_INTEGER;return e.pageNumber-t.pageNumber||n-r||e.reviewStepIndex-t.reviewStepIndex||e.id.localeCompare(t.id)}),[je,qe,Ge,Je,Oe,Ye,Ue,Xe]),Qe=n(()=>K.map(e=>({...e,title:e.label?.trim()||e.title,page_count:e.page_count??e.end_page-e.start_page+1})),[K]),[et,tt]=r(1),[nt,rt]=r(me??null),[it,at]=r(me??null),[ot,st]=r(!1),[lt,dt]=r(null),[gt,ct]=r(null),[pt,ut]=r(()=>new Set),[mt,ht]=r(null),[ft,vt]=r(null),[wt,bt]=r(null),[yt,_t]=r(!1),xt=a(0),St=a(null),Ct=a(null),Et=a(new Map),kt=a(null),Pt=a(null),It=a(null),[Rt,Nt]=r(U),Mt=ee?.aside?.width??"40%",At=`min(${"number"==typeof Mt?`${Mt}px`:Mt}, 260px, 100%)`,Ft=o(()=>{St.current=null,st(!1),rt(null),dt(null),vt(null),bt(null),_t(!1),xe?.(null,null)},[xe]);i(()=>{ze&&Ft()},[Ft,ze]),i(()=>{ut(e=>{if(0===e.size)return e;const t=new Set(e);let n=!1;return Ke.forEach(e=>{null!=e.review_step.review?.action&&t.has(e.id)&&(t.delete(e.id),n=!0)}),n?t:e})},[Ke]),i(()=>{const e=Ze.current;if(!e||!re)return;const t=()=>{const t=e.getBoundingClientRect().width;t>0&&Nt(t)};t();const n="undefined"==typeof ResizeObserver?null:new ResizeObserver(t);return n?.observe(e),()=>n?.disconnect()},[re]);const Tt=n(()=>{const e=new Set;return Ke.forEach(t=>{null!=t.review_step.review?.action&&e.add(t.id)}),e},[Ke]),Bt=n(()=>Ke.find(e=>e.id===nt)??null,[nt,Ke]),Lt=n(()=>!(!Ie||"label"!==Bt?.kind)&&je.some(e=>{if(b(e.segment)!==b(Bt.segment)||Tt.has(e.id))return!1;const t=W(e.review_step.score,e.review_step.confidence);return null==t||t<85}),[Bt,je,Ie,Tt]),Wt=null==Bt?-1:K.findIndex(e=>b(e)===b(Bt.segment)),zt=Wt>0?K[Wt-1]:void 0,$t=Wt>=0?K[Wt+1]:void 0,jt=zt?.label?.trim()||zt?.title,qt=$t?.label?.trim()||$t?.title,Gt=z(Bt?.review_step.score,Bt?.review_step.confidence,Bt?.segment.confidence?.awaiting_llm),Ot=Bt?.review_step.reasons?.length?Bt.review_step.reasons:Bt?.segment.confidence?.reasons??[],Dt=Boolean(Ot.some(e=>e.text.trim()&&["evidence","gap"].includes(e.type.trim().toLowerCase()))||Bt?.review_step.reason?.trim()||Bt?.review_step.gap?.trim()),Vt=null==Bt?null:"boundary"===Bt.kind?$(Bt.review_step,Bt.segment,Oe.get(Bt.segment.stable_key??"")):j(Bt.review_step,Bt.segment,Oe.get(Bt.segment.stable_key??"")),Ht="label"===Bt?.kind?[Vt,Bt.review_step.human_action_enum,Bt.review_step.review?.action,Bt.review_step.human_resolution?.action]:[],Ut="label"===Bt?.kind&&Ht.some(e=>{const t=e?.trim().toUpperCase()??"";return t.includes("MERGE")||t.includes("SPLIT")}),Xt=null!=Bt&&Ke.some(e=>"boundary"===e.kind&&b(e.segment)===b(Bt.segment)),Yt=Ut&&!Xt,Jt=("boundary"===Bt?.kind||Yt)&&null!=Bt?(()=>{if("boundary"===Bt.kind)return Bt;const e=je.find(e=>b(e.segment)===b(Bt.segment));return e?{...e,kind:"boundary",pageNumber:e.metadata.focus_page??e.segment.start_page}:{...Bt,kind:"boundary",pageNumber:Bt.segment.review_action?.focus_page??Bt.segment.start_page,metadata:{focus_page:Bt.segment.review_action?.focus_page??null,boundary_margin:Bt.segment.boundary_margin??null,user_actions:[]}}})():void 0,Zt=null==Bt?"":Bt.segment.label?.trim()||Bt.segment.title,Kt=Bt?.review_step.revert,Qt=Bt?.segment.revert,en=e=>e?.trim().toLowerCase(),tn=null==Bt?void 0:[...Bt.segment.review_steps??[]].reverse().find(e=>{const t=e.type?.trim().toLowerCase();return("page_boundary"===t||"page boundary review"===t)&&"boundary"===en(e.revert?.type)})?.revert,nn=Kt??Bt?.segment.revert??tn,rn=nn?.decision.trim().toUpperCase();Vt??(rn?.includes("SPLIT")||rn?.includes("MERGE"));const[an,on]=r(()=>new Set),sn="label"===Bt?.kind&&"SET_RANGE"===tn?.decision?.trim().toUpperCase()&&tn.current_segment_ids.length!==tn.previous_state.length,ln="Merged"===Vt||"Split"===Vt||sn,dn=null==Bt?void 0:ln?"boundary"===en(tn?.type)?tn:"boundary"===en(Qt?.type)?Qt:"boundary"===en(Kt?.type)?Kt:void 0:"label"===Bt.kind?"label"===en(Kt?.type)?Kt:void 0:"boundary"===Bt.kind?"boundary"===en(Kt?.type)?Kt:"boundary"===en(tn?.type)?tn:"boundary"===en(Qt?.type)?Qt:void 0:void 0,gn=ln&&dn?.operation_id?K.flatMap(e=>e.review_steps??[]).find(e=>{const t=e.type?.trim().toLowerCase();if(!("page_boundary"===t||"page boundary review"===t))return!1;return(e.human_resolution?.operation_id??e.revert?.operation_id??e.operation_id)===dn.operation_id&&Boolean(e.human_resolution?.change_summary?.trim())}):void 0,cn=dn?.summary?.trim()||null,pn=ln?gn?.human_resolution?.change_summary?.trim()||dn?.summary?.trim()||"":Bt?.review_step?.human_resolution?.change_summary?.trim()||Bt?.review_step?.summary?.trim()||"",un="page"===Bt?.kind?{currentSegment:{title:Zt,startPage:Bt.segment.start_page,endPage:Bt.segment.end_page},previousSegments:[]}:Bt&&dn?{currentSegment:{title:Zt,startPage:Bt.segment.start_page,endPage:Bt.segment.end_page},previousSegments:(dn.previous_state??[]).flatMap(e=>{const t=null===e.label?"Untitled document":e.label?.trim();return t?[{title:t,startPage:e.start_page,endPage:e.end_page}]:[]})}:null,mn="page"===Bt?.kind?Bt.metadata.type_choices?.map(e=>e.classification_id)??(Bt.metadata.classification_id?[Bt.metadata.classification_id]:[]):[],hn="page"===Bt?.kind?Boolean(ye&&mn.length>0):Boolean(dn?.operation_id&&dn?.type&&!1!==dn?.revertable),fn=Boolean(un&&hn),vn=o((e,t)=>{xt.current+=1,St.current={requestId:xt.current,pageNumber:e,reviewId:t},ct({pageNumber:e,requestId:xt.current})},[]),wn=o(e=>{!0!==e.segment.confidence?.awaiting_llm&&(Le?.({reviewId:e.id,segment_id:e.segment.segment_id??null,reviewStepIndex:e.reviewStepIndex,kind:e.kind,pageNumber:e.pageNumber,metadata:e.metadata}),vt(null),bt(null),rt(e.id),at(e.id),st(!1),dt(null),vn(e.pageNumber,e.id),xe?.(e.id,e.segment))},[xe,Le,vn]);i(()=>{if(!wt)return;const e=requestAnimationFrame(()=>_t(!0)),t=window.setTimeout(()=>{_t(!1)},3500),n=window.setTimeout(()=>{bt(null)},4e3);return()=>{cancelAnimationFrame(e),window.clearTimeout(t),window.clearTimeout(n)}},[wt]),i(()=>{if(!Be)return;if("pageGroup"===Be.type){const e=Be.pages??[],t=Be.pageIndex??0,n=e[t];if(null==n)return;return bn(),vt({pages:e,index:t,label:Be.groupLabel??""}),xt.current+=1,void ct({pageNumber:n,requestId:xt.current})}if(vt(null),Be.reviewId){const e=Ke.find(e=>e.id===Be.reviewId&&(!Be.type||e.kind===Be.type));if(e)return void wn(e)}if(Be.classificationId){const e=Ke.find(e=>"page"===e.kind&&(e.metadata.classification_id===Be.classificationId||e.metadata.type_choices?.some(e=>e.classification_id===Be.classificationId))&&(!Be.segmentId||e.segment.segment_id===Be.segmentId)&&(!Be.type||e.kind===Be.type));if(e)return void wn(e)}if(!Be.pageNumber||!Be.type)return;const e=Number(Be.pageNumber);if(!Number.isInteger(e)||e<1)return;const t=Be.pageType?.trim().toLowerCase(),n=Ke.find(n=>{const r="page"===n.kind?n.pageNumber:n.segment.start_page,i="page"!==n.kind||!t||n.metadata.page_type===t||n.metadata.type_choices?.some(e=>e.page_type===t);return(!Be.segmentId||n.segment.segment_id===Be.segmentId)&&r===e&&n.kind===Be.type&&i});n?wn(n):"page"===Be.type&&(bn(),xt.current+=1,ct({pageNumber:e,requestId:xt.current}))},[Be,wn,Ke]);const bn=o(()=>{St.current=null,st(!1),rt(null),dt(null),xe?.(null,null)},[xe]),yn=o(e=>{_t(!1),bt(null);const t=Ke.find(t=>!Tt.has(t.id)&&"boundary"===t.kind&&t.segment.start_page===e.startPage&&t.segment.end_page===e.endPage)??Ke.find(t=>!Tt.has(t.id)&&t.segment.start_page<=e.startPage&&t.segment.end_page>=e.startPage);t?wn(t):(bn(),xt.current+=1,ct({pageNumber:e.startPage,requestId:xt.current}))},[bn,Tt,Ke,wn]),_n=o((e,t)=>{const n=H(e.review_step.score),r=null==de||n===de,i=pt.has(e.id)&&q(e.review_step,e.segment);return e.id!==t&&r&&!0!==e.segment.confidence?.awaiting_llm&&!G(e.review_step,e.segment)&&!i},[de,pt]),xn=o(e=>{if(!le)return void bn();const t=Ke.findIndex(t=>t.id===e),n=Ke.find((n,r)=>r>t&&_n(n,e))??Ke.find(t=>_n(t,e));n?requestAnimationFrame(()=>wn(n)):bn()},[le,bn,_n,Ke,wn]),Sn=o(async(e,t)=>{if(Ee||!be||0===t.length)return;const n=e.metadata.type_choices??[];if(2!==n.length)return;const r=new Set(t),i=J(e),a=[...n].sort((e,t)=>{const n=r.has(e.page_type);return n===r.has(t.page_type)?0:n?-1:1});ht(e.id);try{for(const t of a){const n=r.has(t.page_type)?f.YES:f.NO;await be(n,{action:n,pageType:t.page_type,metadata:{user_actions:[f.YES,f.NO],page_num:e.metadata.page_num,page_type:t.page_type,classification_id:t.classification_id}},i)}ut(t=>{const n=new Set(t);return n.add(e.id),n}),xn(e.id)}catch(e){Ce?.(e,i)}finally{ht(null)}},[Ee,Ce,be,xn]),Cn=o(async(e,t,n)=>{if(Ee)return;if("boundary"===e.kind&&!ve)return;if("label"===e.kind&&!we)return;if("page"===e.kind&&!be)return;const r=J(e),i=t,a=n,o=i===g.SET_RANGE?(()=>{const t=a.startPage,n=a.endPage;if(null==t||null==n)return null;const r=t<e.segment.start_page||n>e.segment.end_page,i=t>e.segment.start_page||n<e.segment.end_page;return r&&!i?t<e.segment.start_page?g.MERGE_PREV:g.MERGE_NEXT:i?g.SPLIT_HERE:null})():i,s="boundary"===e.kind&&null!=ve&&le&&(o===g.SPLIT_HERE||o===g.MERGE_NEXT||o===g.MERGE_PREV||o===g.MERGE_PREVIOUS),l=s?K.findIndex(t=>b(t)===b(e.segment)):-1;s&&l>=0&&o&&(Ct.current={action:o,originalSegmentIndex:l,segmentSignature:JSON.stringify(K.map((e,t)=>({key:b(e,t),startPage:e.start_page,endPage:e.end_page,version:e.version??null}))),ready:!1}),ht(e.id);try{"boundary"===e.kind?await(ve?.(t,n,r)):"label"===e.kind?await(we?.(t,n,r)):"page"===e.kind&&await(be?.(t,n,r)),ut(t=>{const n=new Set(t);return n.add(e.id),n});const a="boundary"===e.kind&&(o===g.MERGE_NEXT||o===g.MERGE_PREV||o===g.MERGE_PREVIOUS);if(("boundary"===e.kind&&o===g.SPLIT_HERE||a)&&o){const t=b(e.segment);He(e=>{const n=new Set(e);return i===g.SET_RANGE?n.add(t):n.delete(t),n}),De(e=>{const n=new Map(e);return n.set(t,o),n})}if(Ct.current){if(Ct.current.ready=!0,a){const t=Ke.find(t=>"label"===t.kind&&b(t.segment)===b(e.segment));t&&requestAnimationFrame(()=>wn(t))}}else xn(e.id)}catch(e){s&&(Ct.current=null),Ce?.(e,r)}finally{ht(null)}},[le,Ee,Ce,ve,we,be,ye,Ke,K,wn,xn]);i(()=>{const e=Ct.current;if(!e?.ready)return;if(JSON.stringify(K.map((e,t)=>({key:b(e,t),startPage:e.start_page,endPage:e.end_page,version:e.version??null})))===e.segmentSignature)return;const t=e.action===g.SPLIT_HERE?e.originalSegmentIndex+1:e.action===g.MERGE_PREV||e.action===g.MERGE_PREVIOUS?Math.max(0,e.originalSegmentIndex-1):e.originalSegmentIndex,n=new Map(K.map((e,t)=>[b(e,t),t])),r=Ke.find(e=>{const r=n.get(b(e.segment));return null!=r&&r>=t&&_n(e)});if(!r)return Ct.current=null,void bn();requestAnimationFrame(()=>{Ct.current=null,wn(r)})},[bn,_n,Ke,K,wn]),i(()=>{Ct.current||nt&&!Ke.some(e=>e.id===nt)&&bn()},[nt,bn,Ke]),i(()=>{if(!se)return;if(Ct.current)return;const e=Ke.find(e=>e.pageNumber===et);e&&e.id!==nt&&wn(e)},[nt,se,et,wn,Ke]),i(()=>{Ct.current||nt&&!Ke.some(e=>e.id===nt&&!0!==e.segment.confidence?.awaiting_llm)&&bn()},[nt,bn,Ke]);const En=n(()=>{const e=Ke.filter(e=>!0!==e.segment.confidence?.awaiting_llm);if("all"===ae)return e;const t=["low","medium","high"].filter(e=>e!==ie),n=[ie,...t],r=new Map(n.map((e,t)=>[e,t]));return e.map((e,t)=>({item:e,index:t})).sort((e,t)=>{const i=e.item.review_step.confidence?.trim().toLowerCase(),a=t.item.review_step.confidence?.trim().toLowerCase();return(null==i?n.length:r.get(i)??n.length)-(null==a?n.length:r.get(a)??n.length)||e.index-t.index}).map(({item:e})=>e)},[ae,ie,Ke]),kn=En.findIndex(e=>e.id===it),[Pn,In]=r(null),[Rn,Nn]=r(null),Mn=a(!1),An=o(e=>{const t=En[e];t&&wn(t)},[En,wn]);o(e=>{if(!ft||e<0||e>=ft.pages.length)return;const t=ft.pages[e];null!=t&&(bn(),vt(t=>null==t?t:{...t,index:e}),xt.current+=1,ct({pageNumber:t,requestId:xt.current}))},[ft,bn]),i(()=>{it&&!En.some(e=>e.id===it)&&at(null)},[En,it]),i(()=>{Mn.current=!1,Nn(null),In(kn>=0?String(kn+1):null)},[kn,En.length]),i(()=>{if(!Mn.current||null==Pn)return;const e=window.setTimeout(()=>{const e=Number(Pn.trim()),t=e-1;Number.isInteger(e)&&t>=0&&t<En.length&&(Mn.current=!1,An(t))},300);return()=>window.clearTimeout(e)},[An,Pn,En.length]);const Fn=n(()=>{const e=new Map;Ke.forEach(t=>{const n=e.get(b(t.segment))??[];n.push(t),e.set(b(t.segment),n)});const t=new Map;return e.forEach((e,n)=>{const r=Ue.get(n)??1;e.sort((e,t)=>e.reviewStepIndex-t.reviewStepIndex).forEach((e,n)=>{t.set(e.id,`${r}${(e=>{let t=e+1,n="";for(;t>0;)t-=1,n=String.fromCharCode(65+t%26)+n,t=Math.floor(t/26);return n})(n)}`)})}),t},[Ke,Ue]),Tn=n(()=>{const e=new Map;Ke.forEach(t=>{const n=e.get(t.pageNumber)??[];n.push(t),e.set(t.pageNumber,n)});const t=new Map;return e.forEach(e=>{e.forEach((e,n)=>t.set(e.id,n))}),t},[Ke]),Bn=o(e=>({startPage:Math.max(0,e.startPage-ge),endPage:Math.min(e.numPages-1,e.endPage+ge)}),[ge]),Ln=o(()=>{const e=Pt.current,t=It.current;if(!e||!t)return;const n=e.getBoundingClientRect(),r=t.querySelector(".rpv-core__inner-pages"),i=r?.getBoundingClientRect()??t.getBoundingClientRect();Ke.forEach(e=>{const r=Et.current.get(e.id);if(!r)return;const a=t.querySelector(`[data-testid="core__page-layer-${e.pageNumber-1}"]`);if(!a)return void(r.style.visibility="hidden");const o=a.getBoundingClientRect(),s=Tn.get(e.id)??0,l=o.top+ce+40*s,d=l+(r.offsetHeight||32),g=l>=i.top&&d<=i.bottom;r.style.top=l-n.top+"px",r.style.visibility=g?"visible":"hidden"});const a=kt.current;if(a){const e=ft?.pages[ft.index],r=null==e?null:t.querySelector(`[data-testid="core__page-layer-${e-1}"]`);if(ft&&r){const e=r.getBoundingClientRect().top+ce,t=e+(a.offsetHeight||25),o=e>=i.top&&t<=i.bottom;a.style.top=e-n.top+"px",a.style.visibility=o?"visible":"hidden"}else a.style.visibility="hidden"}if(nt&&null==St.current){const e=Et.current.get(nt);e&&"hidden"!==e.style.visibility&&dt(t=>t===e?t:e)}},[ft,nt,ce,Tn,Ke]),Wn=o(e=>{const t=St.current;t&&t.requestId===e.requestId&&t.pageNumber===e.pageNumber&&(St.current=null,Ln(),requestAnimationFrame(()=>{if(null!=St.current)return;const e=Et.current.get(t.reviewId);e&&"hidden"!==e.style.visibility&&dt(e)}))},[Ln]);return i(()=>{const e=It.current;if(!e||!re)return;let t=null;const n=()=>{null==t&&(t=requestAnimationFrame(()=>{t=null,Ln()}))};e.addEventListener("scroll",n,!0),window.addEventListener("resize",n);const r=new MutationObserver(n);r.observe(e,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]});const i="undefined"==typeof ResizeObserver?null:new ResizeObserver(n);return i?.observe(e),n(),()=>{null!=t&&cancelAnimationFrame(t),e.removeEventListener("scroll",n,!0),window.removeEventListener("resize",n),r.disconnect(),i?.disconnect()}},[re,Ln]),e("div",{ref:Pt,className:Me,style:{...Ae,display:"block",position:"relative",width:"100%",height:"100%",minWidth:0,overflowX:"auto",overflowY:"hidden"},children:[e("div",{className:"segment-review-wrapper__container",style:{display:"flex",alignItems:"stretch",gap:0,width:"100%",minWidth:700,height:"100%"},children:[t("div",{ref:It,style:{...Fe,flex:"1 1 auto",width:re?"auto":"100%",minWidth:0,height:"100%",boxSizing:"border-box"},children:t(l,{highlightText:[],highlightPages:{},highlightCordinatePages:[],useCoordinates:!1,showRotateButton:!0,...te,onError:$e,defaultScale:void 0===ne?te?.defaultScale??s.PageFit:Y[ne],disablePdfAnnotations:ke,disablePdfTextLayer:Pe,pdfUrl:X,pdfName:Z,segments:Qe,navigationRequest:gt,onNavigationSettled:Wn,setRenderRange:Bn,onCurrentPageChange:e=>{tt(e),null==St.current&&Bt&&Bt.pageNumber!==e&&bn(),Se?.(e)}})}),re&&e("aside",{"aria-label":"Page review badges",ref:Ze,style:{...Te,position:"relative",width:At,maxWidth:U,flex:`0 1 ${At}`,minHeight:0,overflow:"hidden",boxSizing:"border-box"},children:[ft&&t("span",{ref:kt,style:{position:"absolute",top:0,left:10,visibility:"hidden",zIndex:2,display:"inline-flex",alignItems:"center",justifyContent:"center",gap:4,minHeight:25,padding:"2px 8px",border:"1px solid #E2E8F0",borderRadius:16,backgroundColor:"#F8FAFC",boxSizing:"border-box",boxShadow:"0 1px 2px rgba(16, 24, 40, 0.08)",font:"inherit"},children:e(S,{fontFamily:"Inter",sx:{fontSize:11,fontWeight:500,color:"#475569",whiteSpace:"nowrap"},children:[ft.label||"Pages"," Pg: ",ft.index+1]})}),oe&&En.length>0&&!ft&&e("nav",{"aria-label":"Review badge navigation",style:{position:"absolute",top:8,right:pe||"auto",left:ue||"auto",zIndex:2,display:"flex",alignItems:"center",gap:7,width:128,minHeight:40,padding:"4px 6px",border:"1px solid #CBD5E1",borderRadius:6,backgroundColor:"#FFFFFF",boxSizing:"border-box",boxShadow:"0 1px 2px rgba(16, 24, 40, 0.06)",font:"inherit"},children:[t(C,{title:"out-of-range"===Rn?"Please enter valid number present in the range":"Please enter valid numbers",open:null!=Rn,placement:"top",arrow:!0,children:t("input",{type:"text",inputMode:"numeric",pattern:"[0-9]*",value:Pn??"-",min:0,max:En.length,"aria-label":"Review badge number","aria-invalid":null!=Rn,onFocus:()=>{null==Pn&&In("")},onBlur:()=>{Nn(null);const e=Number(Pn);(null==Pn||""===Pn||!Number.isInteger(e)||e<1||e>En.length)&&(Mn.current=!1,In(kn>=0?String(kn+1):null))},onChange:e=>{const t=e.target.value;if(!/^\d*$/.test(t))return void Nn("invalid-number");const n=Number(t),r=""!==t&&(n<1||n>En.length);Nn(r?"out-of-range":null),Mn.current=!0,In(t)},style:{width:30,height:28,padding:0,border:"1px solid "+(Rn?"#DC2626":"#A5B4FC"),borderRadius:3,color:"#4F46E5",backgroundColor:"#FFFFFF",textAlign:"center",font:"inherit",fontSize:15,outline:"none"}})}),e("span",{"aria-label":`${En.length} reviews`,style:{flex:1,color:"#4F46E5",fontSize:14,whiteSpace:"nowrap",textAlign:"center"},children:["of ",En.length]}),["previous","next"].map(e=>{const n="previous"===e,r=kn+(n?-1:1),i=r<0||r>=En.length;return t("button",{type:"button","aria-label":(n?"Previous":"Next")+" review badge",disabled:i,onClick:()=>An(r),style:{display:"grid",placeItems:"center",width:17,height:28,padding:0,border:0,background:"transparent",color:i?"#C7D2FE":"#4F46E5",cursor:i?"default":"pointer"},children:t("svg",{width:"12",height:"8",viewBox:"0 0 12 8",fill:"none",children:t("path",{d:n?"M1 7L6 2L11 7":"M1 1L6 6L11 1",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round"})})},e)})]}),!ft&&Ke.map(n=>{const r=nt===n.id,i=Fn.get(n.id)??"1A",a=n.review_step.score,o=n.review_step.confidence,s=O(a,o),l="boundary"===n.kind?$(n.review_step,n.segment,Oe.get(b(n.segment))):"label"===n.kind?j(n.review_step,n.segment,Oe.get(b(n.segment))):null,d=l??("N/A"===s?s:`${s}%`),g=!0===n.segment.confidence?.awaiting_llm,c=z(a,o,g),p=Tt.has(n.id);return t(C,{title:g?"data is being processed":"",arrow:!0,children:t("span",{ref:e=>{e?Et.current.set(n.id,e):Et.current.delete(n.id)},style:{position:"absolute",top:0,left:10,visibility:"hidden",display:"inline-flex",cursor:g?"not-allowed":"pointer"},children:t("button",{disabled:g,type:"button","aria-pressed":r,"aria-label":g?`${n.review_step.type} · Page ${n.pageNumber} · Data is being processed`:`${n.review_step.type} · Page ${n.pageNumber}`,onClick:()=>wn(n),style:{cursor:"inherit",display:"flex",alignItems:"center",justifyContent:"space-around",gap:4,width:l?p&&!g?115:90:p&&!g?105:80,minHeight:25,padding:"2px 5px",border:`1px solid ${p&&!g?"#E2E8F0":c.border}`,borderRadius:16,backgroundColor:p&&!g?"#F8FAFC":c.background,color:p&&!g?"#475569":c.text,font:"inherit",alignContent:"center",boxShadow:"0 1px 2px rgba(16, 24, 40, 0.08)"},children:e(S,p&&!g?{fontFamily:"Inter",sx:{display:"flex",gap:1,alignItems:"center",flexDirection:"row"},children:[t("span",{style:{fontSize:11,fontWeight:500},children:i}),e("span",{style:{display:"flex",alignItems:"center"},children:[t("svg",{width:"2",height:"14",viewBox:"0 0 1 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:t("path",{d:"M0.399902 0V14",stroke:"#CBD5E1",strokeWidth:"0.8"})}),t("span",{style:{fontSize:11,fontWeight:500,marginLeft:"7px",display:"flex",alignItems:"center"},children:d})]}),e("span",{style:{fontSize:11,fontWeight:500,display:"flex",alignItems:"center"},children:[t("svg",{width:"2",height:"14",viewBox:"0 0 1 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:t("path",{d:"M0.399902 0V14",stroke:"#CBD5E1",strokeWidth:"0.8"})}),t("span",{style:{display:"flex",marginLeft:"7px",alignItems:"center"},children:t(y,{height:14,width:14,strokeWidth:2,color:"#16A34A"})})]})]}:{fontFamily:"Inter",sx:{display:"flex",gap:1,alignItems:"center",flexDirection:"row"},children:[t("span",{style:{fontSize:11,fontWeight:500},children:i}),e("span",{style:{display:"flex",alignItems:"center"},children:[t("svg",{width:"2",height:"14",viewBox:"0 0 1 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:t("path",{d:"M0.399902 0V14",stroke:c.divider,strokeWidth:"0.8"})}),t("span",{style:{fontSize:11,fontWeight:500,marginLeft:"7px",display:"flex",alignItems:"center"},children:d})]})]})})})},n.id)})]})]}),Bt&&lt&&e(p,{anchorElement:lt,placement:"bottom-start",offset:{top:8},width:Math.min(Rt,U),maxWidth:U,heightBuffer:fe??25,children:[ot&&t(u,{width:"100%",maxWidth:"100%",score:Bt.review_step.score,reasons:Ot,reason:Bt.review_step.reason,gap:Bt.review_step.gap,onBack:()=>st(!1),onClose:bn}),t("div",{style:{display:ot?"none":"block"},children:Tt.has(Bt.id)?t(I,{width:"100%",maxWidth:"100%",headerName:"page"===Bt.kind?"Page format approved":"Split"===Vt?"Split approved":"Merged"===Vt?"Merge approved":"User approved",headerIcon:"page"===Bt.kind?t(_,{size:18,strokeWidth:2}):"Merged"===Vt?t(x,{size:18,strokeWidth:2}):"Split"===Vt?t(D,{width:18,height:18}):t(y,{size:18,strokeWidth:2}),title:Zt,pageNo:`Page ${Bt.segment.start_page}-${Bt.segment.end_page}`,summary:fn&&un?e(E,{spacing:.75,children:[pn&&t(V,{icon:t(y,{size:14,strokeWidth:2}),description:pn}),We&&t(M,{disabled:Ee,onSave:async()=>{const e=await We({operationId:dn?.operation_id??null},J(Bt));return e&&e.success&&bn(),e},onSaveComplete:()=>{on(e=>{const t=new Set(e);return t.add(Bt.id),t}),bn()},onSaveError:e=>{Ce?.(e,J(Bt))}}),t(N,{icon:t(y,{size:14,strokeWidth:2}),title:Zt,pageRange:`Page ${Bt.segment.start_page}-${Bt.segment.end_page}`,description:pn??null,revertData:un,confirmDisabled:"page"===Bt.kind?!hn:null==_e||!hn,showDocumentHeader:!1,onRevert:async()=>{if("page"===Bt.kind){if(!ye||0===mn.length){const e=new Error("SegmentReviewPdfWrapper requires onPageTypeRevert and at least one classification id to revert a page-type decision.");throw Ce?.(e,J(Bt)),e}let e;for(const t of mn)e=await ye({classification_id:t,human_verdict:"No"},J(Bt));return e}if(!_e)throw new Error("SegmentReviewPdfWrapper requires onRevert to handle a revert confirmation.");if(!dn)throw new Error("There is no valid revert operation for this review.");const e=ln?"boundary":"label"===Bt.kind?"label":"boundary"===Bt.kind?"boundary":null,t=en(dn.type);if(e&&t!==e)throw new Error(`Cannot use ${t??"unknown"} revert metadata for this review. Expected ${e}.`);return _e(dn,J(Bt))},onRevertError:e=>{Ce?.(e,J(Bt))},onRevertComplete:e=>{ut(()=>new Set),"page"!==Bt.kind&&(He(()=>new Set),De(()=>new Map));const t=un.previousSegments[0]??un.currentSegment,n=lt?.getBoundingClientRect(),r=It.current?.getBoundingClientRect(),i=Math.min(U,Math.max(220,Rt)),a=n?.left??(r?.right??window.innerWidth-i-8)+8,o=Math.max(8,Math.min(a,window.innerWidth-i-8)),s=null==n?.bottom?Math.max(8,r?.top??8):n.bottom+8;ut(()=>new Set),"page"!==Bt.kind&&(Ct.current=null),_t(!1),bt({title:"Split"===Vt?"Split reverted":"Merged"===Vt?"Merge reverted":"Approval reverted",description:e?.message?.trim()||null,segment:t,position:{top:s,left:o,width:i}}),bn()}})]}):void 0,additionalActions:Jt?t(R,{metadata:Jt.metadata,reviewAction:Bt.segment.review_action??void 0,startPage:Bt.segment.start_page,endPage:Bt.segment.end_page,title:Zt,previousSegmentTitle:jt,nextSegmentTitle:qt,disabled:Ee||!ve||mt===Bt.id,onConfirm:(e,t)=>{Cn(Jt,e,t)}}):void 0,cognitiveScore:Bt.review_step.score,styles:{root:{borderColor:"#16A34A"},header:{"& > .MuiSvgIcon-root, & .MuiTypography-root":{color:"#16A34A"}}},onCognitiveClick:Dt?()=>{st(!0),Ne?.(J(Bt))}:void 0,onClose:bn}):"boundary"===Bt.kind?t(d,{width:"100%",maxWidth:"100%",totalPages:Q,title:Bt.segment.label||Bt.segment.title,pageNo:`Page ${Bt.pageNumber}`,content:Bt.review_step.question??null,revertSummary:cn,cognitiveScore:Bt.review_step.score,metadata:Bt.metadata,reviewAction:Bt.segment.review_action??void 0,previousSegmentTitle:jt,nextSegmentTitle:qt,manualPrompt:he??"Set a custom boundary",defaultStartPage:Bt.segment.start_page,defaultEndPage:Bt.segment.end_page,styles:{root:{borderColor:Gt.cardBorder},header:{"& > .MuiSvgIcon-root, & .MuiTypography-root":{color:Gt.text}}},confirmDisabled:Ee||!ve||mt===Bt.id,onConfirm:(e,t,n)=>{n&&c(t.id)&&Cn(Bt,t.id,n)},onAdjustManually:()=>Re?.(J(Bt)),onCognitiveClick:Dt?()=>{st(!0),Ne?.(J(Bt))}:void 0,onClose:bn},Bt.id):"label"===Bt.kind?t(m,{width:"100%",maxWidth:"100%",title:Bt.metadata.current_label||Bt.segment.label||Bt.segment.title,pageNo:`Pages ${Bt.segment.start_page}-${Bt.segment.end_page}`,content:Bt.review_step.question??null,revertSummary:cn,cognitiveScore:Bt.review_step.score,metadata:Bt.metadata,styles:{root:{borderColor:Gt.cardBorder},header:{"& > .MuiSvgIcon-root, & .MuiTypography-root":{color:Gt.text}}},confirmDisabled:Ee||!we||mt===Bt.id,confirmationBlocked:Lt,confirmationWarning:Lt?"Please confirm the boundary before confirming the title.":void 0,onActionConfirm:(e,t)=>{Cn(Bt,e,t)},onAdjustManually:()=>Re?.(J(Bt)),onCognitiveClick:Dt?()=>{st(!0),Ne?.(J(Bt))}:void 0,onClose:bn},Bt.id):2===Bt.metadata.type_choices?.length?t(v,{width:"100%",maxWidth:"100%",title:Bt.segment.label||Bt.segment.title,pageNo:`Page ${Bt.pageNumber}`,content:Bt.review_step.reason,choices:Bt.metadata.type_choices,cognitiveScore:Bt.review_step.score,styles:{root:{borderColor:Gt.cardBorder},header:{"& > .MuiSvgIcon-root, & .MuiTypography-root":{color:Gt.text}}},confirmDisabled:Ee||!be||mt===Bt.id,onConfirm:e=>{Sn(Bt,e)},onCognitiveClick:Dt?()=>{st(!0),Ne?.(J(Bt))}:void 0,onClose:bn},Bt.id):t(h,{width:"100%",maxWidth:"100%",title:Bt.segment.label||Bt.segment.title,pageNo:`Page ${Bt.pageNumber}`,content:Bt.review_step.reason,cognitiveScore:Bt.review_step.score,pageType:Bt.metadata.page_type,metadata:Bt.metadata,styles:{root:{borderColor:Gt.cardBorder},header:{"& > .MuiSvgIcon-root, & .MuiTypography-root":{color:Gt.text}}},confirmDisabled:Ee||!be||mt===Bt.id,onActionConfirm:(e,t)=>{Cn(Bt,e,t)},onCognitiveClick:Dt?()=>{st(!0),Ne?.(J(Bt))}:void 0,onClose:bn},Bt.id)})]}),wt&&t(k,{children:t(P,{"aria-live":"polite",sx:{position:"fixed",top:wt.position.top,left:wt.position.left,zIndex:1600,width:wt.position.width,maxWidth:"calc(100vw - 16px)",opacity:yt?1:0,transform:yt?"translateY(0)":"translateY(-6px)",transition:"opacity 500ms ease, transform 500ms ease",filter:"drop-shadow(0 12px 24px rgba(15, 23, 42, 0.18))",pointerEvents:yt?"auto":"none"},children:t(A,{title:wt.title,description:wt.description,onReview:()=>yn(wt.segment)})})})]})}export{X as SegmentPdfSpecialZoomLevel,Z as default};
1
+ import{jsxs as e,jsx as t}from"react/jsx-runtime";import{useMemo as n,useState as i,useEffect as r,useRef as a,useCallback as o}from"react";import{SpecialZoomLevel as s}from"@react-pdf-viewer/core";import l from"../PdfViewer/PdfViewer.js";import d,{BoundaryReviewActionEnum as g,isBoundaryReviewAction as c}from"./BoundaryCard.js";import p from"./CardWrapper.js";import u from"./CognitiveIntegrity.js";import m from"./LabelCheck.js";import h,{PageCheckActionEnum as f}from"./PageCheck.js";import v from"./PageTypeChoiceCheck.js";import{extractSegmentReviewData as w,getSegmentReviewKey as b}from"./reviewStepAdapters.js";import{CircleCheck as y,Check as _,GitMerge as x}from"lucide-react";import{Typography as S,Tooltip as C,Stack as E,Portal as k,Box as P}from"@mui/material";import I from"./ReviewedCard.js";import R from"./ReviewedBoundaryActions.js";import N from"./RevertCard.js";import M from"./SaveAsLearningCard.js";import A from"./RevertSuccessCard.js";import{getPendingMergeImpactedSegmentKeys as F,hasPolledStructuralAction as T,getOptimisticMergeImpactedSegmentKeys as B,shouldHideStructuralBoundaryReview as L,getResolvedScore as W,getConfidenceColors as z,getBoundaryReviewActionBadgeLabel as $,getTitleReviewActionBadgeLabel as j,isReviewStepResolutionCurrent as q,isReviewStepResolved as G,formatScore as O}from"./helper.js";import D from"./ChartBreakoutCircle.js";import V from"./ApprovalDescriptionBanner.js";import{getReviewScoreBand as H}from"./reviewScore.js";const U=260;var X=(e=>(e.ActualSize="ActualSize",e.PageFit="PageFit",e.PageWidth="PageWidth",e))(X||{});const Y={ActualSize:s.ActualSize,PageFit:s.PageFit,PageWidth:s.PageWidth},J=e=>({reviewId:e.id,segment:e.segment,pageNumber:e.pageNumber});function Z({pdfUrl:X,pdfName:Z,segments:K,totalPages:Q,styles:ee,pdfViewerProps:te,specialZoomLevel:ne,showBadges:ie=!0,sortByConfidence:re="low",filterByConfidence:ae="all",showBadgeNavigation:oe=!0,autoSelectReviewOnPageChange:se=!1,autoAdvanceAfterConfirm:le=!0,autoAdvanceScoreBand:de,badgePreloadPages:ge=8,badgeOffsetTop:ce=20,badgeOffsetRight:pe=68,badgeOffsetLeft:ue=0,initialReviewId:me,manualPrompt:he,heightBuffer:fe,onBoundaryAction:ve,onLabelAction:we,onPageAction:be,onPageTypeRevert:ye,onRevert:_e,onActiveReviewChange:xe,onCurrentPageChange:Se,onActionError:Ce,disableAllActions:Ee=!1,disablePdfAnnotations:ke=!1,disablePdfTextLayer:Pe=!0,disableTitleCheckUntilBoundaryCheckCompleted:Ie=!1,onAdjustManually:Re,onCognitiveClick:Ne,renderCognitiveReason:Me,className:Ae,style:Fe,viewerStyle:Te,railStyle:Be,redirectionData:Le,onBadgeSelected:We,onSaveAsLearning:ze,savedLearningReviewIds:$e=[],closePopups:je=!1,onPdfLoadError:qe}){console.log("LOG: TOTAL PAGE IN PARENT",Q);const{boundaryReviews:Ge,labelReviews:Oe,pageReviews:De}=n(()=>w(K),[K]),[Ve,He]=i(()=>new Map),[Ue,Xe]=i(()=>new Set),Ye=n(()=>{const e=new Map;let t=1;return K.forEach((n,i)=>{const r=b(n,i);e.has(r)||(e.set(r,t),t+=1)}),e},[K]),Je=n(()=>new Set(Oe.map(e=>b(e.segment))),[Oe]),Ze=n(()=>F(K),[K]);r(()=>{He(e=>{let t=!1;const n=new Map(e);return e.forEach((e,i)=>{const r=K.find(e=>b(e)===i);r&&!T(r,e)||(n.delete(i),t=!0)}),t?n:e})},[K]),r(()=>{Xe(e=>{let t=!1;const n=new Set(e);return e.forEach(e=>{Ve.has(e)||(n.delete(e),t=!0)}),t?n:e})},[Ve]);const Ke=n(()=>B(K,Ve,Ue),[Ue,Ve,K]),Qe=a(null),et=n(()=>[...Ge.filter(e=>!Ze.has(b(e.segment))&&!Ke.has(b(e.segment))&&!L(e.review_step,e.segment,Je.has(b(e.segment)),Ve.get(b(e.segment)))).map(e=>({...e,kind:"boundary",pageNumber:e.metadata.focus_page??e.segment.start_page})),...Oe.filter(e=>!Ze.has(b(e.segment))&&!Ke.has(b(e.segment))).map(e=>({...e,kind:"label",pageNumber:e.segment.start_page})),...De.filter(e=>!Ze.has(b(e.segment))&&!Ke.has(b(e.segment))).map(e=>({...e,kind:"page",pageNumber:e.metadata.page_num??e.segment.start_page}))].sort((e,t)=>{const n=Ye.get(b(e.segment))??Number.MAX_SAFE_INTEGER,i=Ye.get(b(t.segment))??Number.MAX_SAFE_INTEGER;return e.pageNumber-t.pageNumber||n-i||e.reviewStepIndex-t.reviewStepIndex||e.id.localeCompare(t.id)}),[Ge,Oe,De,Ke,Ve,Ze,Ye,Je]),tt=n(()=>K.map(e=>({...e,title:e.label?.trim()||e.title,page_count:e.page_count??e.end_page-e.start_page+1})),[K]),[nt,it]=i(1),[rt,at]=i(me??null),[ot,st]=i(me??null),[lt,dt]=i(!1),[gt,ct]=i(null),[pt,ut]=i(null),[mt,ht]=i(()=>new Set),[ft,vt]=i(null),[wt,bt]=i(null),[yt,_t]=i(null),[xt,St]=i(!1),Ct=a(0),Et=a(null),kt=a(null),Pt=a(new Map),It=a(null),Rt=a(null),Nt=a(null),[Mt,At]=i(U),Ft=ee?.aside?.width??"40%",Tt=`min(${"number"==typeof Ft?`${Ft}px`:Ft}, 260px, 100%)`,Bt=o(()=>{Et.current=null,dt(!1),at(null),ct(null),bt(null),_t(null),St(!1),xe?.(null,null)},[xe]);r(()=>{je&&Bt()},[Bt,je]),r(()=>{ht(e=>{if(0===e.size)return e;const t=new Set(e);let n=!1;return et.forEach(e=>{null!=e.review_step.review?.action&&t.has(e.id)&&(t.delete(e.id),n=!0)}),n?t:e})},[et]),r(()=>{const e=Qe.current;if(!e||!ie)return;const t=()=>{const t=e.getBoundingClientRect().width;t>0&&At(t)};t();const n="undefined"==typeof ResizeObserver?null:new ResizeObserver(t);return n?.observe(e),()=>n?.disconnect()},[ie]);const Lt=n(()=>{const e=new Set;return et.forEach(t=>{null!=t.review_step.review?.action&&e.add(t.id)}),e},[et]),Wt=n(()=>et.find(e=>e.id===rt)??null,[rt,et]),zt=n(()=>!(!Ie||"label"!==Wt?.kind)&&Ge.some(e=>{if(b(e.segment)!==b(Wt.segment)||Lt.has(e.id))return!1;const t=W(e.review_step.score,e.review_step.confidence);return null==t||t<85}),[Wt,Ge,Ie,Lt]),$t=null==Wt?-1:K.findIndex(e=>b(e)===b(Wt.segment)),jt=$t>0?K[$t-1]:void 0,qt=$t>=0?K[$t+1]:void 0,Gt=jt?.label?.trim()||jt?.title,Ot=qt?.label?.trim()||qt?.title,Dt=z(Wt?.review_step.score,Wt?.review_step.confidence,Wt?.segment.confidence?.awaiting_llm),Vt=Wt?.review_step.reasons?.length?Wt.review_step.reasons:Wt?.segment.confidence?.reasons??[],Ht=Boolean(Vt.some(e=>e.text.trim()&&["evidence","gap"].includes(e.type.trim().toLowerCase()))||Wt?.review_step.reason?.trim()||Wt?.review_step.gap?.trim()),Ut=null==Wt?null:"boundary"===Wt.kind?$(Wt.review_step,Wt.segment,Ve.get(Wt.segment.stable_key??"")):j(Wt.review_step,Wt.segment,Ve.get(Wt.segment.stable_key??"")),Xt="label"===Wt?.kind?[Ut,Wt.review_step.human_action_enum,Wt.review_step.review?.action,Wt.review_step.human_resolution?.action]:[],Yt="label"===Wt?.kind&&Xt.some(e=>{const t=e?.trim().toUpperCase()??"";return t.includes("MERGE")||t.includes("SPLIT")}),Jt=null!=Wt&&et.some(e=>"boundary"===e.kind&&b(e.segment)===b(Wt.segment)),Zt=Yt&&!Jt,Kt=("boundary"===Wt?.kind||Zt)&&null!=Wt?(()=>{if("boundary"===Wt.kind)return Wt;const e=Ge.find(e=>b(e.segment)===b(Wt.segment));return e?{...e,kind:"boundary",pageNumber:e.metadata.focus_page??e.segment.start_page}:{...Wt,kind:"boundary",pageNumber:Wt.segment.review_action?.focus_page??Wt.segment.start_page,metadata:{focus_page:Wt.segment.review_action?.focus_page??null,boundary_margin:Wt.segment.boundary_margin??null,user_actions:[]}}})():void 0,Qt=null==Wt?"":Wt.segment.label?.trim()||Wt.segment.title,en=Wt?.review_step.revert,tn=Wt?.segment.revert,nn=e=>e?.trim().toLowerCase(),rn=null==Wt?void 0:[...Wt.segment.review_steps??[]].reverse().find(e=>{const t=e.type?.trim().toLowerCase();return("page_boundary"===t||"page boundary review"===t)&&"boundary"===nn(e.revert?.type)})?.revert,an=en??Wt?.segment.revert??rn,on=an?.decision.trim().toUpperCase();Ut??(on?.includes("SPLIT")||on?.includes("MERGE"));const sn=n(()=>new Set($e),[$e]),ln="label"===Wt?.kind&&"SET_RANGE"===rn?.decision?.trim().toUpperCase()&&rn.current_segment_ids.length!==rn.previous_state.length,dn="Merged"===Ut||"Split"===Ut||ln,gn=null==Wt?void 0:dn?"boundary"===nn(rn?.type)?rn:"boundary"===nn(tn?.type)?tn:"boundary"===nn(en?.type)?en:void 0:"label"===Wt.kind?"label"===nn(en?.type)?en:void 0:"boundary"===Wt.kind?"boundary"===nn(en?.type)?en:"boundary"===nn(rn?.type)?rn:"boundary"===nn(tn?.type)?tn:void 0:void 0,cn=dn&&gn?.operation_id?K.flatMap(e=>e.review_steps??[]).find(e=>{const t=e.type?.trim().toLowerCase();if(!("page_boundary"===t||"page boundary review"===t))return!1;return(e.human_resolution?.operation_id??e.revert?.operation_id??e.operation_id)===gn.operation_id&&Boolean(e.human_resolution?.change_summary?.trim())}):void 0,pn=gn?.summary?.trim()||null,un=dn?cn?.human_resolution?.change_summary?.trim()||gn?.summary?.trim()||"":Wt?.review_step?.human_resolution?.change_summary?.trim()||Wt?.review_step?.summary?.trim()||"",mn="page"===Wt?.kind?{currentSegment:{title:Qt,startPage:Wt.segment.start_page,endPage:Wt.segment.end_page},previousSegments:[]}:Wt&&gn?{currentSegment:{title:Qt,startPage:Wt.segment.start_page,endPage:Wt.segment.end_page},previousSegments:(gn.previous_state??[]).flatMap(e=>{const t=null===e.label?"Untitled document":e.label?.trim();return t?[{title:t,startPage:e.start_page,endPage:e.end_page}]:[]})}:null,hn="page"===Wt?.kind?Wt.metadata.type_choices?.map(e=>e.classification_id)??(Wt.metadata.classification_id?[Wt.metadata.classification_id]:[]):[],fn="page"===Wt?.kind?Boolean(ye&&hn.length>0):Boolean(gn?.operation_id&&gn?.type&&!1!==gn?.revertable),vn=Boolean(mn&&fn),wn=o((e,t)=>{Ct.current+=1,Et.current={requestId:Ct.current,pageNumber:e,reviewId:t},ut({pageNumber:e,requestId:Ct.current})},[]),bn=o(e=>{!0!==e.segment.confidence?.awaiting_llm&&(We?.({reviewId:e.id,segment_id:e.segment.segment_id??null,reviewStepIndex:e.reviewStepIndex,kind:e.kind,pageNumber:e.pageNumber,metadata:e.metadata}),bt(null),_t(null),at(e.id),st(e.id),dt(!1),ct(null),wn(e.pageNumber,e.id),xe?.(e.id,e.segment))},[xe,We,wn]);r(()=>{if(!yt)return;const e=requestAnimationFrame(()=>St(!0)),t=window.setTimeout(()=>{St(!1)},3500),n=window.setTimeout(()=>{_t(null)},4e3);return()=>{cancelAnimationFrame(e),window.clearTimeout(t),window.clearTimeout(n)}},[yt]),r(()=>{if(!Le)return;if("pageGroup"===Le.type){const e=Le.pages??[],t=Le.pageIndex??0,n=e[t];if(null==n)return;return yn(),bt({pages:e,index:t,label:Le.groupLabel??""}),Ct.current+=1,void ut({pageNumber:n,requestId:Ct.current})}if(bt(null),Le.reviewId){const e=et.find(e=>e.id===Le.reviewId&&(!Le.type||e.kind===Le.type));if(e)return void bn(e)}if(Le.classificationId){const e=et.find(e=>"page"===e.kind&&(e.metadata.classification_id===Le.classificationId||e.metadata.type_choices?.some(e=>e.classification_id===Le.classificationId))&&(!Le.segmentId||e.segment.segment_id===Le.segmentId)&&(!Le.type||e.kind===Le.type));if(e)return void bn(e)}if(!Le.pageNumber||!Le.type)return;const e=Number(Le.pageNumber);if(!Number.isInteger(e)||e<1)return;const t=Le.pageType?.trim().toLowerCase(),n=et.find(n=>{const i="page"===n.kind?n.pageNumber:n.segment.start_page,r="page"!==n.kind||!t||n.metadata.page_type===t||n.metadata.type_choices?.some(e=>e.page_type===t);return(!Le.segmentId||n.segment.segment_id===Le.segmentId)&&i===e&&n.kind===Le.type&&r});n?bn(n):"page"===Le.type&&(yn(),Ct.current+=1,ut({pageNumber:e,requestId:Ct.current}))},[Le,bn,et]);const yn=o(()=>{Et.current=null,dt(!1),at(null),ct(null),xe?.(null,null)},[xe]),_n=o(e=>{St(!1),_t(null);const t=et.find(t=>!Lt.has(t.id)&&"boundary"===t.kind&&t.segment.start_page===e.startPage&&t.segment.end_page===e.endPage)??et.find(t=>!Lt.has(t.id)&&t.segment.start_page<=e.startPage&&t.segment.end_page>=e.startPage);t?bn(t):(yn(),Ct.current+=1,ut({pageNumber:e.startPage,requestId:Ct.current}))},[yn,Lt,et,bn]),xn=o((e,t)=>{const n=H(e.review_step.score),i=null==de||n===de,r=mt.has(e.id)&&q(e.review_step,e.segment);return e.id!==t&&i&&!0!==e.segment.confidence?.awaiting_llm&&!G(e.review_step,e.segment)&&!r},[de,mt]),Sn=o(e=>{if(!le)return void yn();const t=et.findIndex(t=>t.id===e),n=et.find((n,i)=>i>t&&xn(n,e))??et.find(t=>xn(t,e));n?requestAnimationFrame(()=>bn(n)):yn()},[le,yn,xn,et,bn]),Cn=o(async(e,t)=>{if(Ee||!be||0===t.length)return;const n=e.metadata.type_choices??[];if(2!==n.length)return;const i=new Set(t),r=J(e),a=[...n].sort((e,t)=>{const n=i.has(e.page_type);return n===i.has(t.page_type)?0:n?-1:1});vt(e.id);try{for(const t of a){const n=i.has(t.page_type)?f.YES:f.NO;await be(n,{action:n,pageType:t.page_type,metadata:{user_actions:[f.YES,f.NO],page_num:e.metadata.page_num,page_type:t.page_type,classification_id:t.classification_id}},r)}ht(t=>{const n=new Set(t);return n.add(e.id),n}),Sn(e.id)}catch(e){Ce?.(e,r)}finally{vt(null)}},[Ee,Ce,be,Sn]),En=o(async(e,t,n)=>{if(Ee)return;if("boundary"===e.kind&&!ve)return;if("label"===e.kind&&!we)return;if("page"===e.kind&&!be)return;const i=J(e),r=t,a=n,o=r===g.SET_RANGE?(()=>{const t=a.startPage,n=a.endPage;if(null==t||null==n)return null;const i=t<e.segment.start_page||n>e.segment.end_page,r=t>e.segment.start_page||n<e.segment.end_page;return i&&!r?t<e.segment.start_page?g.MERGE_PREV:g.MERGE_NEXT:r?g.SPLIT_HERE:null})():r,s="boundary"===e.kind&&null!=ve&&le&&(o===g.SPLIT_HERE||o===g.MERGE_NEXT||o===g.MERGE_PREV||o===g.MERGE_PREVIOUS),l=s?K.findIndex(t=>b(t)===b(e.segment)):-1;s&&l>=0&&o&&(kt.current={action:o,originalSegmentIndex:l,segmentSignature:JSON.stringify(K.map((e,t)=>({key:b(e,t),startPage:e.start_page,endPage:e.end_page,version:e.version??null}))),ready:!1}),vt(e.id);try{"boundary"===e.kind?await(ve?.(t,n,i)):"label"===e.kind?await(we?.(t,n,i)):"page"===e.kind&&await(be?.(t,n,i)),ht(t=>{const n=new Set(t);return n.add(e.id),n});const a="boundary"===e.kind&&(o===g.MERGE_NEXT||o===g.MERGE_PREV||o===g.MERGE_PREVIOUS);if(("boundary"===e.kind&&o===g.SPLIT_HERE||a)&&o){const t=b(e.segment);Xe(e=>{const n=new Set(e);return r===g.SET_RANGE?n.add(t):n.delete(t),n}),He(e=>{const n=new Map(e);return n.set(t,o),n})}if(kt.current){if(kt.current.ready=!0,a){const t=et.find(t=>"label"===t.kind&&b(t.segment)===b(e.segment));t&&requestAnimationFrame(()=>bn(t))}}else Sn(e.id)}catch(e){s&&(kt.current=null),Ce?.(e,i)}finally{vt(null)}},[le,Ee,Ce,ve,we,be,ye,et,K,bn,Sn]);r(()=>{const e=kt.current;if(!e?.ready)return;if(JSON.stringify(K.map((e,t)=>({key:b(e,t),startPage:e.start_page,endPage:e.end_page,version:e.version??null})))===e.segmentSignature)return;const t=e.action===g.SPLIT_HERE?e.originalSegmentIndex+1:e.action===g.MERGE_PREV||e.action===g.MERGE_PREVIOUS?Math.max(0,e.originalSegmentIndex-1):e.originalSegmentIndex,n=new Map(K.map((e,t)=>[b(e,t),t])),i=et.find(e=>{const i=n.get(b(e.segment));return null!=i&&i>=t&&xn(e)});if(!i)return kt.current=null,void yn();requestAnimationFrame(()=>{kt.current=null,bn(i)})},[yn,xn,et,K,bn]),r(()=>{kt.current||rt&&!et.some(e=>e.id===rt)&&yn()},[rt,yn,et]),r(()=>{if(!se)return;if(kt.current)return;const e=et.find(e=>e.pageNumber===nt);e&&e.id!==rt&&bn(e)},[rt,se,nt,bn,et]),r(()=>{kt.current||rt&&!et.some(e=>e.id===rt&&!0!==e.segment.confidence?.awaiting_llm)&&yn()},[rt,yn,et]);const kn=n(()=>{const e=et.filter(e=>!0!==e.segment.confidence?.awaiting_llm);if("all"===ae)return e;const t=["low","medium","high"].filter(e=>e!==re),n=[re,...t],i=new Map(n.map((e,t)=>[e,t]));return e.map((e,t)=>({item:e,index:t})).sort((e,t)=>{const r=e.item.review_step.confidence?.trim().toLowerCase(),a=t.item.review_step.confidence?.trim().toLowerCase();return(null==r?n.length:i.get(r)??n.length)-(null==a?n.length:i.get(a)??n.length)||e.index-t.index}).map(({item:e})=>e)},[ae,re,et]),Pn=kn.findIndex(e=>e.id===ot),[In,Rn]=i(null),[Nn,Mn]=i(null),An=a(!1),Fn=o(e=>{const t=kn[e];t&&bn(t)},[kn,bn]);o(e=>{if(!wt||e<0||e>=wt.pages.length)return;const t=wt.pages[e];null!=t&&(yn(),bt(t=>null==t?t:{...t,index:e}),Ct.current+=1,ut({pageNumber:t,requestId:Ct.current}))},[wt,yn]),r(()=>{ot&&!kn.some(e=>e.id===ot)&&st(null)},[kn,ot]),r(()=>{An.current=!1,Mn(null),Rn(Pn>=0?String(Pn+1):null)},[Pn,kn.length]),r(()=>{if(!An.current||null==In)return;const e=window.setTimeout(()=>{const e=Number(In.trim()),t=e-1;Number.isInteger(e)&&t>=0&&t<kn.length&&(An.current=!1,Fn(t))},300);return()=>window.clearTimeout(e)},[Fn,In,kn.length]);const Tn=n(()=>{const e=new Map;et.forEach(t=>{const n=e.get(b(t.segment))??[];n.push(t),e.set(b(t.segment),n)});const t=new Map;return e.forEach((e,n)=>{const i=Ye.get(n)??1;e.sort((e,t)=>e.reviewStepIndex-t.reviewStepIndex).forEach((e,n)=>{t.set(e.id,`${i}${(e=>{let t=e+1,n="";for(;t>0;)t-=1,n=String.fromCharCode(65+t%26)+n,t=Math.floor(t/26);return n})(n)}`)})}),t},[et,Ye]),Bn=n(()=>{const e=new Map;et.forEach(t=>{const n=e.get(t.pageNumber)??[];n.push(t),e.set(t.pageNumber,n)});const t=new Map;return e.forEach(e=>{e.forEach((e,n)=>t.set(e.id,n))}),t},[et]),Ln=o(e=>({startPage:Math.max(0,e.startPage-ge),endPage:Math.min(e.numPages-1,e.endPage+ge)}),[ge]),Wn=o(()=>{const e=Rt.current,t=Nt.current;if(!e||!t)return;const n=e.getBoundingClientRect(),i=t.querySelector(".rpv-core__inner-pages"),r=i?.getBoundingClientRect()??t.getBoundingClientRect();et.forEach(e=>{const i=Pt.current.get(e.id);if(!i)return;const a=t.querySelector(`[data-testid="core__page-layer-${e.pageNumber-1}"]`);if(!a)return void(i.style.visibility="hidden");const o=a.getBoundingClientRect(),s=Bn.get(e.id)??0,l=o.top+ce+40*s,d=l+(i.offsetHeight||32),g=l>=r.top&&d<=r.bottom;i.style.top=l-n.top+"px",i.style.visibility=g?"visible":"hidden"});const a=It.current;if(a){const e=wt?.pages[wt.index],i=null==e?null:t.querySelector(`[data-testid="core__page-layer-${e-1}"]`);if(wt&&i){const e=i.getBoundingClientRect().top+ce,t=e+(a.offsetHeight||25),o=e>=r.top&&t<=r.bottom;a.style.top=e-n.top+"px",a.style.visibility=o?"visible":"hidden"}else a.style.visibility="hidden"}if(rt&&null==Et.current){const e=Pt.current.get(rt);e&&"hidden"!==e.style.visibility&&ct(t=>t===e?t:e)}},[wt,rt,ce,Bn,et]),zn=o(e=>{const t=Et.current;t&&t.requestId===e.requestId&&t.pageNumber===e.pageNumber&&(Et.current=null,Wn(),requestAnimationFrame(()=>{if(null!=Et.current)return;const e=Pt.current.get(t.reviewId);e&&"hidden"!==e.style.visibility&&ct(e)}))},[Wn]);return r(()=>{const e=Nt.current;if(!e||!ie)return;let t=null;const n=()=>{null==t&&(t=requestAnimationFrame(()=>{t=null,Wn()}))};e.addEventListener("scroll",n,!0),window.addEventListener("resize",n);const i=new MutationObserver(n);i.observe(e,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["style"]});const r="undefined"==typeof ResizeObserver?null:new ResizeObserver(n);return r?.observe(e),n(),()=>{null!=t&&cancelAnimationFrame(t),e.removeEventListener("scroll",n,!0),window.removeEventListener("resize",n),i.disconnect(),r?.disconnect()}},[ie,Wn]),e("div",{ref:Rt,className:Ae,style:{...Fe,display:"block",position:"relative",width:"100%",height:"100%",minWidth:0,overflowX:"auto",overflowY:"hidden"},children:[e("div",{className:"segment-review-wrapper__container",style:{display:"flex",alignItems:"stretch",gap:0,width:"100%",minWidth:700,height:"100%"},children:[t("div",{ref:Nt,style:{...Te,flex:"1 1 auto",width:ie?"auto":"100%",minWidth:0,height:"100%",boxSizing:"border-box"},children:t(l,{highlightText:[],highlightPages:{},highlightCordinatePages:[],useCoordinates:!1,showRotateButton:!0,...te,onError:qe,defaultScale:void 0===ne?te?.defaultScale??s.PageFit:Y[ne],disablePdfAnnotations:ke,disablePdfTextLayer:Pe,pdfUrl:X,pdfName:Z,segments:tt,navigationRequest:pt,onNavigationSettled:zn,setRenderRange:Ln,onCurrentPageChange:e=>{it(e),null==Et.current&&Wt&&Wt.pageNumber!==e&&yn(),Se?.(e)}})}),ie&&e("aside",{"aria-label":"Page review badges",ref:Qe,style:{...Be,position:"relative",width:Tt,maxWidth:U,flex:`0 1 ${Tt}`,minHeight:0,overflow:"hidden",boxSizing:"border-box"},children:[wt&&t("span",{ref:It,style:{position:"absolute",top:0,left:10,visibility:"hidden",zIndex:2,display:"inline-flex",alignItems:"center",justifyContent:"center",gap:4,minHeight:25,padding:"2px 8px",border:"1px solid #E2E8F0",borderRadius:16,backgroundColor:"#F8FAFC",boxSizing:"border-box",boxShadow:"0 1px 2px rgba(16, 24, 40, 0.08)",font:"inherit"},children:e(S,{fontFamily:"Inter",sx:{fontSize:11,fontWeight:500,color:"#475569",whiteSpace:"nowrap"},children:[wt.label||"Pages"," Pg: ",wt.index+1]})}),oe&&kn.length>0&&!wt&&e("nav",{"aria-label":"Review badge navigation",style:{position:"absolute",top:8,right:pe||"auto",left:ue||"auto",zIndex:2,display:"flex",alignItems:"center",gap:7,width:128,minHeight:40,padding:"4px 6px",border:"1px solid #CBD5E1",borderRadius:6,backgroundColor:"#FFFFFF",boxSizing:"border-box",boxShadow:"0 1px 2px rgba(16, 24, 40, 0.06)",font:"inherit"},children:[t(C,{title:"out-of-range"===Nn?"Please enter valid number present in the range":"Please enter valid numbers",open:null!=Nn,placement:"top",arrow:!0,children:t("input",{type:"text",inputMode:"numeric",pattern:"[0-9]*",value:In??"-",min:0,max:kn.length,"aria-label":"Review badge number","aria-invalid":null!=Nn,onFocus:()=>{null==In&&Rn("")},onBlur:()=>{Mn(null);const e=Number(In);(null==In||""===In||!Number.isInteger(e)||e<1||e>kn.length)&&(An.current=!1,Rn(Pn>=0?String(Pn+1):null))},onChange:e=>{const t=e.target.value;if(!/^\d*$/.test(t))return void Mn("invalid-number");const n=Number(t),i=""!==t&&(n<1||n>kn.length);Mn(i?"out-of-range":null),An.current=!0,Rn(t)},style:{width:30,height:28,padding:0,border:"1px solid "+(Nn?"#DC2626":"#A5B4FC"),borderRadius:3,color:"#4F46E5",backgroundColor:"#FFFFFF",textAlign:"center",font:"inherit",fontSize:15,outline:"none"}})}),e("span",{"aria-label":`${kn.length} reviews`,style:{flex:1,color:"#4F46E5",fontSize:14,whiteSpace:"nowrap",textAlign:"center"},children:["of ",kn.length]}),["previous","next"].map(e=>{const n="previous"===e,i=Pn+(n?-1:1),r=i<0||i>=kn.length;return t("button",{type:"button","aria-label":(n?"Previous":"Next")+" review badge",disabled:r,onClick:()=>Fn(i),style:{display:"grid",placeItems:"center",width:17,height:28,padding:0,border:0,background:"transparent",color:r?"#C7D2FE":"#4F46E5",cursor:r?"default":"pointer"},children:t("svg",{width:"12",height:"8",viewBox:"0 0 12 8",fill:"none",children:t("path",{d:n?"M1 7L6 2L11 7":"M1 1L6 6L11 1",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round"})})},e)})]}),!wt&&et.map(n=>{const i=rt===n.id,r=Tn.get(n.id)??"1A",a=n.review_step.score,o=n.review_step.confidence,s=O(a,o),l="boundary"===n.kind?$(n.review_step,n.segment,Ve.get(b(n.segment))):"label"===n.kind?j(n.review_step,n.segment,Ve.get(b(n.segment))):null,d=l??("N/A"===s?s:`${s}%`),g=!0===n.segment.confidence?.awaiting_llm,c=z(a,o,g),p=Lt.has(n.id);return t(C,{title:g?"data is being processed":"",arrow:!0,children:t("span",{ref:e=>{e?Pt.current.set(n.id,e):Pt.current.delete(n.id)},style:{position:"absolute",top:0,left:10,visibility:"hidden",display:"inline-flex",cursor:g?"not-allowed":"pointer"},children:t("button",{disabled:g,type:"button","aria-pressed":i,"aria-label":g?`${n.review_step.type} · Page ${n.pageNumber} · Data is being processed`:`${n.review_step.type} · Page ${n.pageNumber}`,onClick:()=>bn(n),style:{cursor:"inherit",display:"flex",alignItems:"center",justifyContent:"space-around",gap:4,width:l?p&&!g?115:90:p&&!g?105:80,minHeight:25,padding:"2px 5px",border:`1px solid ${p&&!g?"#E2E8F0":c.border}`,borderRadius:16,backgroundColor:p&&!g?"#F8FAFC":c.background,color:p&&!g?"#475569":c.text,font:"inherit",alignContent:"center",boxShadow:"0 1px 2px rgba(16, 24, 40, 0.08)"},children:e(S,p&&!g?{fontFamily:"Inter",sx:{display:"flex",gap:1,alignItems:"center",flexDirection:"row"},children:[t("span",{style:{fontSize:11,fontWeight:500},children:r}),e("span",{style:{display:"flex",alignItems:"center"},children:[t("svg",{width:"2",height:"14",viewBox:"0 0 1 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:t("path",{d:"M0.399902 0V14",stroke:"#CBD5E1",strokeWidth:"0.8"})}),t("span",{style:{fontSize:11,fontWeight:500,marginLeft:"7px",display:"flex",alignItems:"center"},children:d})]}),e("span",{style:{fontSize:11,fontWeight:500,display:"flex",alignItems:"center"},children:[t("svg",{width:"2",height:"14",viewBox:"0 0 1 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:t("path",{d:"M0.399902 0V14",stroke:"#CBD5E1",strokeWidth:"0.8"})}),t("span",{style:{display:"flex",marginLeft:"7px",alignItems:"center"},children:t(y,{height:14,width:14,strokeWidth:2,color:"#16A34A"})})]})]}:{fontFamily:"Inter",sx:{display:"flex",gap:1,alignItems:"center",flexDirection:"row"},children:[t("span",{style:{fontSize:11,fontWeight:500},children:r}),e("span",{style:{display:"flex",alignItems:"center"},children:[t("svg",{width:"2",height:"14",viewBox:"0 0 1 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:t("path",{d:"M0.399902 0V14",stroke:c.divider,strokeWidth:"0.8"})}),t("span",{style:{fontSize:11,fontWeight:500,marginLeft:"7px",display:"flex",alignItems:"center"},children:d})]})]})})})},n.id)})]})]}),Wt&&gt&&e(p,{anchorElement:gt,placement:"bottom-start",offset:{top:8},width:Math.min(Mt,U),maxWidth:U,heightBuffer:fe??25,children:[lt&&t(u,{width:"100%",maxWidth:"100%",score:Wt.review_step.score,reasons:Vt,reason:Wt.review_step.reason,gap:Wt.review_step.gap,renderReason:Me,onBack:()=>dt(!1),onClose:yn}),t("div",{style:{display:lt?"none":"block"},children:Lt.has(Wt.id)?t(I,{width:"100%",maxWidth:"100%",headerName:"page"===Wt.kind?"Page format approved":"Split"===Ut?"Split approved":"Merged"===Ut?"Merge approved":"User approved",headerIcon:"page"===Wt.kind?t(_,{size:18,strokeWidth:2}):"Merged"===Ut?t(x,{size:18,strokeWidth:2}):"Split"===Ut?t(D,{width:18,height:18}):t(y,{size:18,strokeWidth:2}),title:Qt,pageNo:`Page ${Wt.segment.start_page}-${Wt.segment.end_page}`,summary:vn&&mn?e(E,{spacing:.75,children:[un&&t(V,{icon:t(y,{size:14,strokeWidth:2}),description:un}),ze&&t(M,{isSaved:!!Wt&&sn.has(Wt.id),disabled:Ee,onSave:async()=>{const e=await ze({operationId:gn?.operation_id??null},J(Wt));return e&&e.success&&yn(),e},onSaveComplete:()=>{yn()},onSaveError:e=>{Ce?.(e,J(Wt))}}),t(N,{icon:t(y,{size:14,strokeWidth:2}),title:Qt,pageRange:`Page ${Wt.segment.start_page}-${Wt.segment.end_page}`,description:un??null,revertData:mn,confirmDisabled:"page"===Wt.kind?!fn:null==_e||!fn,showDocumentHeader:!1,onRevert:async()=>{if("page"===Wt.kind){if(!ye||0===hn.length){const e=new Error("SegmentReviewPdfWrapper requires onPageTypeRevert and at least one classification id to revert a page-type decision.");throw Ce?.(e,J(Wt)),e}let e;for(const t of hn)e=await ye({classification_id:t,human_verdict:"No"},J(Wt));return e}if(!_e)throw new Error("SegmentReviewPdfWrapper requires onRevert to handle a revert confirmation.");if(!gn)throw new Error("There is no valid revert operation for this review.");const e=dn?"boundary":"label"===Wt.kind?"label":"boundary"===Wt.kind?"boundary":null,t=nn(gn.type);if(e&&t!==e)throw new Error(`Cannot use ${t??"unknown"} revert metadata for this review. Expected ${e}.`);return _e(gn,J(Wt))},onRevertError:e=>{Ce?.(e,J(Wt))},onRevertComplete:e=>{ht(()=>new Set),"page"!==Wt.kind&&(Xe(()=>new Set),He(()=>new Map));const t=mn.previousSegments[0]??mn.currentSegment,n=gt?.getBoundingClientRect(),i=Nt.current?.getBoundingClientRect(),r=Math.min(U,Math.max(220,Mt)),a=n?.left??(i?.right??window.innerWidth-r-8)+8,o=Math.max(8,Math.min(a,window.innerWidth-r-8)),s=null==n?.bottom?Math.max(8,i?.top??8):n.bottom+8;ht(()=>new Set),"page"!==Wt.kind&&(kt.current=null),St(!1),_t({title:"Split"===Ut?"Split reverted":"Merged"===Ut?"Merge reverted":"Approval reverted",description:e?.message?.trim()||null,segment:t,position:{top:s,left:o,width:r}}),yn()}})]}):void 0,additionalActions:Kt?t(R,{metadata:Kt.metadata,reviewAction:Wt.segment.review_action??void 0,startPage:Wt.segment.start_page,endPage:Wt.segment.end_page,title:Qt,previousSegmentTitle:Gt,nextSegmentTitle:Ot,disabled:Ee||!ve||ft===Wt.id,onConfirm:(e,t)=>{En(Kt,e,t)}}):void 0,cognitiveScore:Wt.review_step.score,styles:{root:{borderColor:"#16A34A"},header:{"& > .MuiSvgIcon-root, & .MuiTypography-root":{color:"#16A34A"}}},onCognitiveClick:Ht?()=>{dt(!0),Ne?.(J(Wt))}:void 0,onClose:yn}):"boundary"===Wt.kind?t(d,{width:"100%",maxWidth:"100%",totalPages:Q,title:Wt.segment.label||Wt.segment.title,pageNo:`Page ${Wt.pageNumber}`,content:Wt.review_step.question??null,revertSummary:pn,cognitiveScore:Wt.review_step.score,metadata:Wt.metadata,reviewAction:Wt.segment.review_action??void 0,previousSegmentTitle:Gt,nextSegmentTitle:Ot,manualPrompt:he??"Set a custom boundary",defaultStartPage:Wt.segment.start_page,defaultEndPage:Wt.segment.end_page,styles:{root:{borderColor:Dt.cardBorder},header:{"& > .MuiSvgIcon-root, & .MuiTypography-root":{color:Dt.text}}},confirmDisabled:Ee||!ve||ft===Wt.id,onConfirm:(e,t,n)=>{n&&c(t.id)&&En(Wt,t.id,n)},onAdjustManually:()=>Re?.(J(Wt)),onCognitiveClick:Ht?()=>{dt(!0),Ne?.(J(Wt))}:void 0,onClose:yn},Wt.id):"label"===Wt.kind?t(m,{width:"100%",maxWidth:"100%",title:Wt.metadata.current_label||Wt.segment.label||Wt.segment.title,pageNo:`Pages ${Wt.segment.start_page}-${Wt.segment.end_page}`,content:Wt.review_step.question??null,revertSummary:pn,cognitiveScore:Wt.review_step.score,metadata:Wt.metadata,styles:{root:{borderColor:Dt.cardBorder},header:{"& > .MuiSvgIcon-root, & .MuiTypography-root":{color:Dt.text}}},confirmDisabled:Ee||!we||ft===Wt.id,confirmationBlocked:zt,confirmationWarning:zt?"Please confirm the boundary before confirming the title.":void 0,onActionConfirm:(e,t)=>{En(Wt,e,t)},onAdjustManually:()=>Re?.(J(Wt)),onCognitiveClick:Ht?()=>{dt(!0),Ne?.(J(Wt))}:void 0,onClose:yn},Wt.id):2===Wt.metadata.type_choices?.length?t(v,{width:"100%",maxWidth:"100%",title:Wt.segment.label||Wt.segment.title,pageNo:`Page ${Wt.pageNumber}`,content:Wt.review_step.reason,choices:Wt.metadata.type_choices,cognitiveScore:Wt.review_step.score,styles:{root:{borderColor:Dt.cardBorder},header:{"& > .MuiSvgIcon-root, & .MuiTypography-root":{color:Dt.text}}},confirmDisabled:Ee||!be||ft===Wt.id,onConfirm:e=>{Cn(Wt,e)},onCognitiveClick:Ht?()=>{dt(!0),Ne?.(J(Wt))}:void 0,onClose:yn},Wt.id):t(h,{width:"100%",maxWidth:"100%",title:Wt.segment.label||Wt.segment.title,pageNo:`Page ${Wt.pageNumber}`,content:Wt.review_step.reason,cognitiveScore:Wt.review_step.score,pageType:Wt.metadata.page_type,metadata:Wt.metadata,styles:{root:{borderColor:Dt.cardBorder},header:{"& > .MuiSvgIcon-root, & .MuiTypography-root":{color:Dt.text}}},confirmDisabled:Ee||!be||ft===Wt.id,onActionConfirm:(e,t)=>{En(Wt,e,t)},onCognitiveClick:Ht?()=>{dt(!0),Ne?.(J(Wt))}:void 0,onClose:yn},Wt.id)})]}),yt&&t(k,{children:t(P,{"aria-live":"polite",sx:{position:"fixed",top:yt.position.top,left:yt.position.left,zIndex:1600,width:yt.position.width,maxWidth:"calc(100vw - 16px)",opacity:xt?1:0,transform:xt?"translateY(0)":"translateY(-6px)",transition:"opacity 500ms ease, transform 500ms ease",filter:"drop-shadow(0 12px 24px rgba(15, 23, 42, 0.18))",pointerEvents:xt?"auto":"none"},children:t(A,{title:yt.title,description:yt.description,onReview:()=>_n(yt.segment)})})})]})}export{X as SegmentPdfSpecialZoomLevel,Z as default};
2
2
  //# sourceMappingURL=SegmentReviewPdfWrapper.js.map