@aiquants/daily-report 0.41.0 → 0.43.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/client.mjs CHANGED
@@ -1,7 +1,5 @@
1
- import Xh from"lucide-react/dist/esm/icons/paperclip.js";var Gh="data-daily-report-row-surface",rt={[Gh]:""},Qr="data-daily-report-scrolling",lr=8;var Vo="[--aqdr-lattice-block:4px] [@media(resolution:1.125dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:1.375dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:1.625dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:1.875dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:2.125dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:2.375dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:2.625dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:2.875dppx)]:[--aqdr-lattice-block:8px]",dr=`${Vo} h-[calc-size(auto,round(up,size,var(--aqdr-lattice-block)))]`,cr="p-[8px]",Rd="pr-[8px]",Wo="contain-size contain-layout contain-style",bd="contain-strict",Vt="pointer-events-none absolute size-px whitespace-nowrap opacity-0 select-none contain-layout",ee="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-blue-600 dark:focus-visible:outline-blue-400",Wt="border-slate-500 placeholder:text-slate-500 dark:border-slate-500 dark:placeholder:text-slate-400",Sd="-mx-[4px] px-[4px] pb-[4px] scroll-p-[4px]",Qs="scrollbar-thin [scrollbar-gutter:stable]",Zs=`-m-[4px] overflow-hidden p-[4px] ${Qs}`,gd="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white",Ko="rounded-[calc(var(--radius-2xl)+8px)]",zo="outline-none [:where([data-daily-report-keyboard-focus])_&]:[&:focus-visible>:where([data-daily-report-row-surface])]:outline-2 [:where([data-daily-report-keyboard-focus])_&]:[&:focus-visible>:where([data-daily-report-row-surface])]:outline-offset-4 [:where([data-daily-report-keyboard-focus])_&]:[&:focus-visible>:where([data-daily-report-row-surface])]:outline-blue-600 dark:[:where([data-daily-report-keyboard-focus])_&]:[&:focus-visible>:where([data-daily-report-row-surface])]:outline-blue-400 [&[aria-current=true]>:where([data-daily-report-row-surface])]:ring-2 [&[aria-current=true]>:where([data-daily-report-row-surface])]:ring-blue-500 [&[aria-current=true]>:where([data-daily-report-row-surface])]:shadow-transparent forced-colors:[&[aria-current=true]]:outline-2 forced-colors:[&[aria-current=true]]:outline-solid forced-colors:[&[aria-current=true]]:-outline-offset-8 forced-colors:[&[aria-current=true]]:outline-[Highlight] forced-colors:has-[>[data-daily-report-card]>[aria-current=true]]:outline-2 forced-colors:has-[>[data-daily-report-card]>[aria-current=true]]:outline-solid forced-colors:has-[>[data-daily-report-card]>[aria-current=true]]:-outline-offset-8 forced-colors:has-[>[data-daily-report-card]>[aria-current=true]]:outline-[Highlight]",Ed="[:where([data-daily-report-keyboard-focus])_&]:has-[>[data-daily-report-button]:focus-visible]:outline-2 [:where([data-daily-report-keyboard-focus])_&]:has-[>[data-daily-report-button]:focus-visible]:outline-offset-4 [:where([data-daily-report-keyboard-focus])_&]:has-[>[data-daily-report-button]:focus-visible]:outline-blue-600 dark:[:where([data-daily-report-keyboard-focus])_&]:has-[>[data-daily-report-button]:focus-visible]:outline-blue-400 has-[>[aria-current=true]]:ring-2 has-[>[aria-current=true]]:ring-blue-500 has-[>[aria-current=true]]:shadow-transparent",vt="rounded-2xl border border-solid border-slate-200 bg-white p-[15px] shadow-sm dark:border-slate-700 dark:bg-slate-900/70",$o=16,Zr="rounded-xl border border-dashed border-slate-300 bg-slate-50 p-[11px] text-slate-600 text-sm dark:border-slate-600 dark:bg-slate-900/40 dark:text-slate-300",Td=12,jo="rounded-xl bg-slate-50 p-3 text-slate-700 text-sm leading-6 dark:bg-slate-800/60 dark:text-slate-200";var Dd="min-h-24",Ad="flex h-6 items-center",Go="[--aqdr-hover-lift:2px] [@media(resolution:1.125dppx)]:[--aqdr-hover-lift:calc(2px/1.125)] [@media(resolution:1.25dppx)]:[--aqdr-hover-lift:calc(2px/1.25)] [@media(resolution:1.375dppx)]:[--aqdr-hover-lift:calc(2px/1.375)] [@media(resolution:1.625dppx)]:[--aqdr-hover-lift:calc(3px/1.625)] [@media(resolution:1.75dppx)]:[--aqdr-hover-lift:calc(3px/1.75)] [@media(resolution:1.875dppx)]:[--aqdr-hover-lift:calc(3px/1.875)] [@media(resolution:2.125dppx)]:[--aqdr-hover-lift:calc(4px/2.125)] [@media(resolution:2.25dppx)]:[--aqdr-hover-lift:calc(4px/2.25)] [@media(resolution:2.375dppx)]:[--aqdr-hover-lift:calc(4px/2.375)] [@media(resolution:2.625dppx)]:[--aqdr-hover-lift:calc(5px/2.625)] [@media(resolution:2.75dppx)]:[--aqdr-hover-lift:calc(5px/2.75)] [@media(resolution:2.875dppx)]:[--aqdr-hover-lift:calc(5px/2.875)] motion-safe:transition-[translate] motion-safe:duration-200 hover:border-blue-300 hover:shadow-lg motion-safe:hover:translate-y-[calc(-1*var(--aqdr-hover-lift))] [[data-daily-report-scrolling]_&]:transition-none [[data-daily-report-scrolling]_&]:hover:translate-none [[data-daily-report-scrolling]_&]:hover:shadow-sm",ze=`flex size-6 shrink-0 items-center justify-center rounded-full hover:bg-slate-200 dark:hover:bg-slate-700 ${ee}`,xd="-mx-1",Cd="flex items-center gap-1",Ye="inline-flex h-6 items-center rounded-full px-3",Id="inline-flex h-6 items-center rounded-full border border-solid px-[11px]",vd="inline-flex h-6 shrink-0 items-center rounded px-2 font-semibold text-xs tracking-wide",ir="size-4",Pe={starOff:`${ir} text-slate-500 dark:text-slate-400 forced-colors:text-[CanvasText]`,starOn:`${ir} fill-yellow-400 text-yellow-700 dark:text-yellow-400 forced-colors:fill-[Highlight] forced-colors:text-[Highlight]`,read:`${ir} text-blue-600 dark:text-blue-400`,delete:`${ir} text-slate-500 hover:text-red-600 dark:text-slate-400 dark:hover:text-red-400`,deletePending:`${ir} text-red-600 dark:text-red-400`,edit:`${ir} text-slate-500 dark:text-slate-400`},wd="h-6 w-10 border-4 border-solid",_d="size-4 data-[state=checked]:translate-x-4",Ld="data-[state=unchecked]:bg-slate-500 data-[state=checked]:bg-blue-600 dark:data-[state=unchecked]:bg-slate-400 dark:data-[state=checked]:bg-blue-400 forced-colors:border-[ButtonText] forced-colors:data-[state=checked]:bg-[Highlight]",Nd="bg-white dark:bg-slate-950 forced-colors:bg-[ButtonText]";var Od="rounded-xl bg-slate-100 p-1 dark:bg-slate-800",Md="rounded-xl border border-solid p-[3px]",kd="relative inline-flex h-6 items-center justify-center whitespace-nowrap rounded-lg px-2 font-medium text-slate-600 text-xs dark:text-slate-300 data-[state=active]:bg-white data-[state=active]:text-slate-900 dark:data-[state=active]:bg-slate-950 dark:data-[state=active]:text-slate-100 after:pointer-events-none after:absolute after:right-[var(--radius-lg)] after:bottom-0 after:left-[var(--radius-lg)] after:h-[2px] after:rounded-full after:forced-color-adjust-none data-[state=active]:after:bg-blue-600 dark:data-[state=active]:after:bg-blue-400 forced-colors:data-[state=active]:after:bg-[Highlight] disabled:pointer-events-none disabled:opacity-50",Yh="supports-[margin-left:round(down,1px,1px)]:ml-[max(0px,round(down,calc((100%-72rem)/2),var(--aqdr-lattice-block)))]",qh="bg-slate-50 dark:bg-slate-950",dt="flex min-h-0 flex-1 flex-col",Yo=`${dt} ${qh}`,qo=`${dt} mx-auto w-full max-w-6xl ${Vo} px-[var(--aqdr-lattice-block)] pt-[var(--aqdr-lattice-block)] ${Yh}`,Pd=`relative z-[1] flex shrink-0 flex-col ${dr}`,Fd="flex grow flex-col justify-between",Hd="grid min-w-0 grid-cols-[max-content_minmax(0,1fr)_max-content] grid-rows-[minmax(2rem,auto)_auto] items-end",Bd="grid min-w-0 grid-cols-1 gap-2 sm:grid-cols-[minmax(0,2fr)_minmax(0,1fr)_minmax(0,3fr)]",Ud="m-0 min-w-0 border-0 p-0",Vd="mb-1 p-0 text-slate-700 text-xs leading-4 dark:text-slate-200",Wd="m-0 border-0 p-0 [font:inherit] bg-yellow-200 text-slate-900 underline decoration-1 underline-offset-2 data-[daily-report-search-mark=reading]:decoration-dotted dark:bg-yellow-800 dark:text-yellow-50 forced-colors:forced-color-adjust-none forced-colors:bg-[Mark] forced-colors:text-[MarkText]",Vn="text-red-700 dark:text-red-400",Kd="bg-white dark:bg-slate-900",Xo=`min-h-0 flex-1 overflow-clip contain-size ${Vo}`,Qo="flex h-full flex-col contain-size contain-layout contain-style",zd="relative inline-block whitespace-nowrap tabular-nums",$d="invisible grid",jd="col-start-1 row-start-1",Gd="absolute inset-0 contain-size contain-layout contain-style",Zo="[&_.aqvs-no-items-text]:py-4 [&_.aqvs-no-items-text]:text-slate-500 dark:[&_.aqvs-no-items-text]:text-slate-400",Yd="border-slate-200/80 bg-slate-100/60 dark:border-slate-800 dark:bg-slate-900/60 dark:text-slate-200",qd="ml-[8px]",Xd={list:"mr-[8px] [@media(max-width:639px)]:mr-[16px] @max-[460px]/views:mr-[16px]",tree:"mr-[8px]",detailList:"mr-[16px]"},Cr="font-semibold text-slate-500 text-xs uppercase tracking-wide dark:text-slate-400",Kt=`m-0 ${Cr}`,zt="text-balance wrap-anywhere [word-break:auto-phrase]",Qd="[--aqdr-scroll-bar-thumb:var(--color-slate-500)] [--aqdr-scroll-bar-track:var(--color-slate-100)] dark:[--aqdr-scroll-bar-track:var(--color-slate-900)]",Jo=`${Qd} [&_.aqvs-scrollbar]:bg-(--aqdr-scroll-bar-track) [&_.aqvs-scrollbar-track]:bg-(--aqdr-scroll-bar-track) [&_.aqvs-scrollbar-thumb]:bg-(--aqdr-scroll-bar-thumb) [&_.aqvs-scrollbar-thumb[data-thumb-state=hover]]:bg-slate-600 [&_.aqvs-scrollbar-thumb[data-thumb-state=dragging]]:bg-slate-700 [&_.aqvs-scrollbar-thumb[data-thumb-state=disabled]]:bg-(--aqdr-scroll-bar-thumb) [&_.aqvs-scrollbar-arrow-button]:bg-(--aqdr-scroll-bar-track) [&_.aqvs-scrollbar-arrow-button]:text-slate-600 [&_.aqvs-scrollbar-arrow-button:enabled:hover]:bg-slate-200 dark:[&_.aqvs-scrollbar-thumb[data-thumb-state=hover]]:bg-slate-400 dark:[&_.aqvs-scrollbar-thumb[data-thumb-state=dragging]]:bg-slate-300 dark:[&_.aqvs-scrollbar-arrow-button]:text-slate-400 dark:[&_.aqvs-scrollbar-arrow-button:enabled:hover]:bg-slate-800 forced-colors:[&_.aqvs-scrollbar-thumb]:bg-[CanvasText] forced-colors:[&_.aqvs-scrollbar-thumb[data-thumb-state=hover]]:bg-[Highlight] forced-colors:[&_.aqvs-scrollbar-thumb[data-thumb-state=dragging]]:bg-[Highlight] forced-colors:[&_.aqvs-scrollbar-thumb[data-thumb-state=disabled]]:bg-[GrayText] forced-colors:[&_.aqvs-scrollbar-track]:outline-1 forced-colors:[&_.aqvs-scrollbar-track]:outline-solid forced-colors:[&_.aqvs-scrollbar-track]:-outline-offset-1 forced-colors:[&_.aqvs-scrollbar-track]:outline-[CanvasText]`,Zd=`${Qd} [scrollbar-color:var(--aqdr-scroll-bar-thumb)_var(--aqdr-scroll-bar-track)]`;import{jsx as Jd,jsxs as Zh}from"react/jsx-runtime";var Qh=2,Wn=({id:e,count:t,label:r})=>t<=0?null:Zh("span",{id:e,className:"inline-flex h-6 shrink-0 items-center gap-1 text-slate-500 dark:text-slate-400",title:`${r}: ${t}`,role:"img","aria-label":`${r}: ${t}`,"data-testid":"daily-report-attachment-indicator","data-attachment-count":t,children:[Jd(Xh,{className:ir,"aria-hidden":"true"}),t>=Qh&&Jd("span",{className:"font-semibold text-xs leading-4",children:t})]});import{VirtualScroll as zA}from"@aiquants/virtualscroll";import{useCallback as We,useEffect as Er,useLayoutEffect as $A,useMemo as Ul,useRef as et,useState as Ns}from"react";var Ir=Object.freeze({text:"",runs:Object.freeze([])}),ct=e=>e.length===0?Ir:{text:e,runs:[{displayStart:0,displayEnd:e.length,sourceStart:0,sourceEnd:e.length}]},ec=(e,t,r)=>t>=r?Ir:{text:e.slice(t,r),runs:[{displayStart:0,displayEnd:r-t,sourceStart:t,sourceEnd:r}]},Js=(e,t,r,n)=>{let o=t-e;return o!==n-r||o===1?[{displayStart:e,displayEnd:t,sourceStart:r,sourceEnd:n}]:Array.from({length:o},(a,s)=>({displayStart:e+s,displayEnd:e+s+1,sourceStart:r,sourceEnd:n}))},ei=e=>e.displayEnd-e.displayStart===e.sourceEnd-e.sourceStart,Kn=(e,t,r)=>{if(t>=r)return Ir;if(t===0&&r===e.text.length)return e;let n=[];for(let o of e.runs){let a=Math.max(o.displayStart,t),s=Math.min(o.displayEnd,r);if(!(a>=s))if(ei(o)){let i=o.sourceStart+(a-o.displayStart);n.push({displayStart:a-t,displayEnd:s-t,sourceStart:i,sourceEnd:i+(s-a)})}else n.push(...Js(a-t,s-t,o.sourceStart,o.sourceEnd))}return{text:e.text.slice(t,r),runs:n}},Jr=e=>{if(e.length===1)return e[0];let t="",r=[];for(let n of e){let o=t.length;for(let a of n.runs)r.push({...a,displayStart:a.displayStart+o,displayEnd:a.displayEnd+o});t+=n.text}return t.length===0?Ir:{text:t,runs:r}},ti=e=>{let t=e.text.trimEnd().length,r=Math.min(t,e.text.length-e.text.trimStart().length);return Kn(e,r,t)},ur=e=>typeof e=="string"?ti(ct(e)):Ir,ea=(e,t,r)=>{if(r.includes("$"))throw new Error(`[daily-report] replaceDisplayText: the replacement must be literal text without "$"; got ${JSON.stringify(r)}`);let n=t.global?[...e.text.matchAll(t)]:[t.exec(e.text)].filter(d=>d!==null);if(n.length===0)return e;let o="",a=[],s=0,i=(d,c)=>{if(d>=c)return;let u=o.length-d;for(;s<e.runs.length&&e.runs[s].displayEnd<=d;)s+=1;for(let p=s;p<e.runs.length&&e.runs[p].displayStart<c;p++){let h=e.runs[p],f=Math.max(h.displayStart,d),y=Math.min(h.displayEnd,c);if(!(f>=y))if(ei(h)){let S=h.sourceStart+(f-h.displayStart);a.push({displayStart:f+u,displayEnd:y+u,sourceStart:S,sourceEnd:S+(y-f)})}else a.push(...Js(f+u,y+u,h.sourceStart,h.sourceEnd))}o+=e.text.slice(d,c)},l=0;for(let d of n)i(l,d.index),o+=r,l=d.index+d[0].length;return i(l,e.text.length),o.length===0?Ir:{text:o,runs:a}},Jh=e=>{let t=[],r=0,n="",o=0;for(let a of e){let s=o+a.length;if(o===r)n=a.normalize("NFC");else{let i=e.slice(r,s).normalize("NFC"),l=i.slice(n.length);i.startsWith(n)&&(l===a||l===a.normalize("NFC"))?(t.push({start:r,end:o,shown:n}),r=o,n=l):n=i}o=s}return t.push({start:r,end:o,shown:n}),t},eR=e=>{let t=[],r=0;for(let a of e)t.push(r),r+=a.length;t.push(e.length);let n=[],o=0;for(;o<t.length-1;){let a=t[o],s=e.slice(a).normalize("NFC"),i=o+1;for(;i<t.length-1;){let d=e.slice(a,t[i]).normalize("NFC");if(s.startsWith(d)&&d+e.slice(t[i]).normalize("NFC")===s)break;i+=1}let l=t[i];n.push({start:a,end:l,shown:e.slice(a,l).normalize("NFC")}),o=i}return n},tc=e=>{let t=e.normalize("NFC");if(t===e)return ct(e);let r=Jh(e),n=r.map(s=>s.shown).join("")===t?r:eR(e),o=[],a=0;for(let{start:s,end:i,shown:l}of n){let d=a+l.length;l===e.slice(s,i)?o.push({displayStart:a,displayEnd:d,sourceStart:s,sourceEnd:i}):o.push(...Js(a,d,s,i)),a=d}return{text:t,runs:o}},rc=(e,t)=>{let r=[],n=(a,s,i)=>{let l=r.length-3;l>=0&&r[l+1]===a&&r[l+2]===i?r[l+1]=s:r.push(a,s,i)},o=t.length/3;for(let a of e.runs){let s=0,i=o;for(;s<i;){let d=s+i>>>1;t[d*3+1]<=a.sourceStart?s=d+1:i=d}if(ei(a)){for(let d=s;d<o&&t[d*3]<a.sourceEnd;d++){let c=Math.max(t[d*3],a.sourceStart),u=Math.min(t[d*3+1],a.sourceEnd);n(a.displayStart+(c-a.sourceStart),a.displayStart+(u-a.sourceStart),t[d*3+2])}continue}let l=Number.POSITIVE_INFINITY;for(let d=s;d<o&&t[d*3]<a.sourceEnd;d++)l=Math.min(l,t[d*3+2]);l!==Number.POSITIVE_INFINITY&&n(a.displayStart,a.displayEnd,l)}return r},nc=String.raw`<br\s*\/?\s*>`,oc=String.raw`<\/p>`,ac="<[^>]+>",tR=new RegExp(String.raw`(${nc}|${oc}|\r?\n)|${ac}`,"gi"),sc=new RegExp(nc,"gi"),rR=new RegExp(oc,"gi"),nR=new RegExp(ac,"g"),ic=(e,t)=>{if(!e)return[];let r=[],n=[],o=0,a=()=>{let s=Jr(n);n=[];let i=ti({text:s.text.replace(/ /g," "),runs:s.runs});i.text.length>0&&r.push(i)};for(let s of e.matchAll(tR))if(n.push(ec(e,o,s.index)),o=s.index+s[0].length,s[1]!==void 0&&(a(),r.length===t))return r;return n.push(ec(e,o,e.length)),a(),r},lc=e=>ea(ea(ea(ct(e),sc,`
2
- `),rR,`
3
- `),nR,""),dc=e=>e?ti(ea(ct(e),sc,`
4
- `)):Ir;var oR=Object.freeze({text:"-",runs:Object.freeze([])}),Fe=e=>{let t=ur(e);return t.text===""?oR:t},pr=e=>Fe(e).text,he=e=>{if(!e)return"-";if(typeof e!="string")return e instanceof Date?he(e.toISOString()):String(e);let t=e.trim();if(t==="")return"-";let r=t.match(/^(\d{4})[-/](\d{2})[-/](\d{2})$/);if(r)return`${r[1]}-${r[2]}-${r[3]}`;let n=new Date(t);if(Number.isNaN(n.getTime()))return t;let o=n.getFullYear(),a=String(n.getMonth()+1).padStart(2,"0"),s=String(n.getDate()).padStart(2,"0");if(t.includes(":")||t.includes("T")){let l=String(n.getHours()).padStart(2,"0"),d=String(n.getMinutes()).padStart(2,"0"),c=String(n.getSeconds()).padStart(2,"0");return`${o}-${a}-${s}T${l}:${d}:${c}`}return`${o}-${a}-${s}`};import{createContext as bb,useCallback as Sb,useContext as au,useEffect as nu,useRef as gb,useState as Eb}from"react";import{z as eo}from"zod/v3";var aR=/^(\d{4})([-/])(\d{2})\2(\d{2})$/;var ta=e=>e<10?`0${e}`:`${e}`,sR=e=>{if(Number.isNaN(e.getTime()))return null;let t=e.getFullYear(),r=ta(e.getMonth()+1),n=ta(e.getDate());return`${t}-${r}-${n}`},cc=e=>{let t=aR.exec(e);if(t===null)return null;let[,r,,n,o]=t,a=Number(r),s=Number(n),i=Number(o);if(a<1)return null;let l=new Date(0);return l.setUTCFullYear(a,s-1,i),l.getUTCFullYear()!==a||l.getUTCMonth()!==s-1||l.getUTCDate()!==i?null:`${r}-${n}-${o}`},zn=e=>cc(e)===e,uc=(e=new Date)=>{if(Number.isNaN(e.getTime()))throw new Error("[daily-report] resolveTodayBusinessDateKey needs a valid Date");return`${e.getFullYear()}-${ta(e.getMonth()+1)}-${ta(e.getDate())}`},vr=e=>e==null?null:e instanceof Date?sR(e):cc(e);import{z as iR}from"zod/v3";var ut=e=>Number.isSafeInteger(e)&&e>0,De=iR.number().int().positive().max(Number.MAX_SAFE_INTEGER);import{z as Re}from"zod/v3";var ra=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|-[1-9][0-9]{0,15})$/;var wr=Symbol("daily-report wire mismatch"),wt=(e,t,r)=>(e.issues.push({...r,path:t===null?[...e.path]:[...e.path,t]}),wr),yc=e=>e===null?"null":Array.isArray(e)?"array":Number.isNaN(e)?"nan":typeof e,_r=(e,t)=>({code:"invalid_type",expected:e,received:yc(t)}),lR=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),dR=e=>{let t=0;for(let r in e)t+=1;return t},pc=(e,t,r)=>{let n={};for(let o=0;o<r;o+=1){let a=t[o];a in e&&(n[a]=e[a])}return n},en=e=>{let t=Object.keys(e),r=Object.values(e);return(n,o)=>{if(!lR(n))return wt(o,null,_r("object",n));let a=null,s=!1,i=0;for(let l=0;l<t.length;l+=1){let d=t[l],c=n[d];c!==void 0&&(i+=1);let u=r[l](c,o,d);if(u===wr){s=!0;continue}a===null&&u!==c&&(a=pc(n,t,l)),a!==null&&(u!==void 0||d in n)&&(a[d]=u)}return s?wr:a!==null?a:dR(n)===i?n:pc(n,t,t.length)}},$n=e=>(t,r,n)=>{r.path.push(n);let o=e(t,r);return r.path.pop(),o},jn=e=>(t,r,n)=>{if(!Array.isArray(t))return wt(r,n,_r("array",t));r.path.push(n);let o=t,a=!1;for(let s=0;s<t.length;s+=1){let i=t[s],l=e(i,r,s);l===wr?a=!0:l!==i&&(o===t&&(o=t.slice()),o[s]=l)}return r.path.pop(),a?wr:o},de=(e,t,r)=>e==null||typeof e=="string"?e:wt(t,r,_r("string",e)),mc=(e,t,r)=>e===null||typeof e=="string"?e:wt(t,r,_r("string",e)),fc=(e,t,r)=>typeof e=="string"?e:wt(t,r,_r("string",e)),cR=(e,t,r)=>e===null||typeof e=="number"&&!Number.isNaN(e)?e:wt(t,r,_r("number",e)),Gn=(e,t,r)=>typeof e=="boolean"?e:wt(t,r,_r("boolean",e)),ri=(e,t,r)=>{if(typeof e=="number"&&ut(e))return e;for(let{message:n,path:o,...a}of De.safeParse(e).error.issues)wt(t,r,a);return wr},hc={present:!0,absent:!0,unknown:!0},Rc=Object.keys(hc),uR=Rc.map(e=>`'${e}'`).join(" | "),pR=(e,t,r)=>typeof e!="string"?wt(t,r,{code:"invalid_type",expected:uR,received:yc(e)}):Object.hasOwn(hc,e)?e:wt(t,r,{code:"invalid_enum_value",received:e,options:[...Rc]}),bc=en({name:de,affiliation:de}),Sc=en({name:de,text:de,color:de}),gc=en({id:ri,name:de,color:de}),Ec=en({id:ri,userId:de,userName:de,content:de,createdAt:de,isMine:Gn}),mR=en({id:fc,fileName:fc,fileType:mc,fileSize:cR,createdAt:mc,state:pR,hasThumbnail:Gn}),fR=en({reportHubId:ri,date:de,createdAt:de,author:de,userId:de,sourceType:de,employeeName:de,updatedBy:de,updatedAt:de,category:de,creationCategory:de,visitTimeFrom:de,visitTimeTo:de,customerName:de,interviewers:jn($n(bc)),subject:de,content:de,externalComments:jn($n(Sc)),isRead:Gn,isStarred:Gn,isDraft:Gn,labels:jn($n(gc)),postedComments:jn($n(Ec)),attachments:jn($n(mR))}),Yn=(e,t)=>{let r={path:[],issues:[]},n=e(t,r);return n===wr?{ok:!1,issues:r.issues}:{ok:!0,value:n}},Tc=e=>Yn(fR,e),Dc=e=>Yn(bc,e),Ac=e=>Yn(Sc,e),xc=e=>Yn(gc,e),Cc=e=>Yn(Ec,e);var Ic=["auth-required","forbidden","resync-required"],ni=15e3,vc="lastEventId",yR=/^\d{1,15}-\d{1,15}$/,na=e=>yR.test(e),qn=e=>Re.unknown().transform((t,r)=>{let n=e(t);if(n.ok)return n.value;for(let o of n.issues)r.addIssue({...o,fatal:!0});return Re.NEVER}),gw=qn(Dc),Ew=qn(Ac),Tw=qn(xc),oi=qn(Cc),_t=qn(Tc),Lr=Re.string().regex(ra),hR=Re.object({type:Re.literal("connected")}),RR=Re.object({type:Re.literal("status-update"),reportHubId:De,statusType:Re.enum(["star","read"]),value:Re.boolean(),clientTempId:Lr,recipientRawUserId:De.optional()}),ai=Re.string(),bR=Re.object({type:Re.literal("comment-add"),reportHubId:De,comment:oi,clientTempId:Lr,recipientRawUserId:De.optional(),sourceType:ai}),SR=Re.object({type:Re.literal("comment-delete"),reportHubId:De,commentId:De,clientTempId:Lr,recipientRawUserId:De.optional(),sourceType:ai}),gR=Re.object({type:Re.literal("report-create"),reportHubId:De,report:_t,clientTempId:Lr,recipientRawUserId:De.optional()}),ER=Re.object({type:Re.literal("report-update"),reportHubId:De,report:_t,clientTempId:Lr,recipientRawUserId:De.optional()}),TR=Re.object({type:Re.literal("report-publish"),reportHubId:De,report:_t,clientTempId:Lr,recipientRawUserId:De.optional()}),DR=Re.object({type:Re.literal("report-delete"),reportHubId:De,clientTempId:Lr,sourceType:ai}),wc=Re.discriminatedUnion("type",[hR,RR,bR,SR,gR,ER,TR,DR]);var oa="ids-columns",si=e=>{if(typeof e!="object"||e===null)return"unknown";let{kind:t}=e;return t==="chunk"?"chunk":t==="error"?"error":"unknown"},AR=e=>typeof e=="number"&&ut(e),xR=e=>{if(typeof e!="object"||e===null)return!1;let{businessDate:t,reportHubId:r}=e;return(t===null||typeof t=="string")&&typeof r=="number"},CR=4,IR=e=>{let t=CR;for(;2**t<e*2;)t+=1;let r=new Float64Array(2**t),n=r.length-1,o=32-t;return a=>{let s=Math.imul(a|0,2654435761)>>>o;for(;;){let i=r[s];if(i===0)return r[s]=a,!0;if(i===a)return!1;s=s+1&n}}},vR=/^[0-9a-f]{1,16}$/,wR=e=>ut(e.reportHubId)&&(e.businessDate===null||zn(e.businessDate)),_R=e=>typeof e=="string"&&vR.test(e),LR=Object.freeze({kind:"absent"}),NR=Object.freeze({kind:"value",value:null}),OR=e=>e===void 0?LR:e===null?NR:typeof e=="string"&&na(e)?{kind:"value",value:e}:{kind:"malformed",received:e},_c=e=>{if(si(e)!=="chunk")return null;let{ids:t,dates:r,counts:n,sourceTypes:o,sources:a,isLast:s,nextCursor:i,total:l,snapshot:d,provisional:c,restarted:u,streamAnchor:p}=e;if(typeof s!="boolean"||!(i===null||xR(i))||!(Array.isArray(t)&&Array.isArray(r)&&Array.isArray(n)&&Array.isArray(o)&&Array.isArray(a))||r.length!==n.length||a.length!==t.length)return null;for(let m of o)if(!(m===null||typeof m=="string"))return null;let h=IR(t.length),f=0,y=null,S=0;for(let m=0;m<r.length;m++){let g=r[m],R=n[m];if(!(g===null||typeof g=="string"&&zn(g))||m>0&&g===r[m-1]||typeof R!="number"||!Number.isSafeInteger(R)||R<1)return null;let b=f+R;if(b>t.length)return null;for(;f<b;f++){let E=t[f],T=a[f];if(!(AR(E)&&h(E))||typeof T!="number"||!Number.isSafeInteger(T)||T<0||T>=o.length||f>0&&!MR(y,S,g,E))return null;y=g,S=E}}return f!==t.length?null:{rows:e,isLast:s,resumeCursor:i!==null&&wR(i)?i:null,total:typeof l=="number"&&Number.isSafeInteger(l)&&l>=0?l:null,snapshot:_R(d)?d:null,provisional:c===!0,restarted:u===!0,streamAnchor:OR(p)}},Lc=(e,t)=>{let{ids:r,dates:n,counts:o,sourceTypes:a,sources:s}=e,i=0;for(let l=0;l<n.length;l++){let d=n[l];for(let c=i+o[l];i<c;i++){let u=a[s[i]];t(r[i],d,u===null?void 0:u)}}};var Nc=(e,t,r,n)=>e!==r?e===null?1:r===null||e>r?-1:1:n-t,MR=(e,t,r,n)=>Nc(e,t,r,n)<0,Oc=(e,t)=>Nc(e.businessDate,e.reportHubId,t.businessDate,t.reportHubId);var He=Object.freeze({businessDate:"business-date",idsStream:oa,report:"report",search:"search",reports:"reports",searchMarks:"search-marks",searchFacets:"search-facets",action:"action"}),Ae=Object.freeze({businessDate:"businessDate",reportHubId:"reportHubId",searchQuery:"q",searchCombine:"combine",searchAuthor:"author",searchSourceType:"sourceType",searchCustomer:"customer",reportIds:"ids",forceRefresh:"forceRefresh",cursorReportHubId:"cursor_report_hub_id",cursorBusinessDate:"cursor_business_date",cursorSnapshot:"cursor_snapshot"});var Mc=(e,t,r=console)=>{let n=o=>typeof o=="string"?[`${t} ${o}`]:[t,o];return{debug:(o,...a)=>{e<=0&&r.debug(...n(o),...a)},info:(o,...a)=>{e<=1&&r.info(...n(o),...a)},warn:(o,...a)=>{e<=2&&r.warn(...n(o),...a)},error:(o,...a)=>{e<=3&&r.error(...n(o),...a)}}},_w=Object.freeze(["API","Action","Attachment","ExternalSource","Isolation","Reads","Refresh","Search","SSE","SseReader","Server","Service","Streams","Visibility","ActionProvider","DetailLoader","IdsStream","SseConnection"]),kc=e=>`[DailyReport${e}]`,pt=(e,t,r)=>e===void 0?Mc(t,kc(r)):Mc(0,kc(r),e);var $t=Object.freeze({maxQueryLength:500,maxSets:16,maxWordsPerSet:16,maxWords:32,maxWordLength:100,maxDetailIds:100}),kR=2,Xn=2,tn=Object.freeze({word:0,reading:1}),Qn=e=>e===tn.word||e===tn.reading;var jt=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},PR=2*(1+kR),FR=e=>{if(!Array.isArray(e)||e.length===0||e.length>PR)return null;let t=[],r=new Set;for(let n of e){if(!jt(n))return null;let{text:o,tier:a}=n;if(typeof o!="string"||o.length===0||o.length>$t.maxWordLength||r.has(o)||!Qn(a)||(t.length===0?a!==tn.word:a<t[t.length-1].tier))return null;r.add(o),t.push({text:o,tier:a})}return t},HR=(e,t)=>{if(!Array.isArray(e))return null;if(!t)return e.length===0?[]:null;if(e.length===0||e.length>$t.maxSets)return null;let r=[],n=0;for(let o of e){if(!Array.isArray(o)||o.length===0||o.length>$t.maxWordsPerSet||(n+=o.length,n>$t.maxWords))return null;let a=[];for(let s of o){let i=FR(s);if(i===null)return null;a.push(i)}r.push(a)}return r},Pc=(e,t)=>{if(!jt(e))return null;let{ids:r,businessDates:n,sourceTypes:o}=e;if(!(Array.isArray(r)&&Array.isArray(n)&&Array.isArray(o))||n.length!==r.length||o.length!==r.length)return null;let a=HR(e.words,t);if(a===null)return null;let s=[];for(let i=0;i<r.length;i++){let l=r[i],d=n[i],c=o[i];if(typeof l!="number"||!ut(l)||d!==null&&(typeof d!="string"||!zn(d))||typeof c!="string"||c.length===0)return null;s.push({reportHubId:l,businessDate:d,sourceType:c})}return{items:s,words:a}};var aa=e=>e.issues.map(t=>`${t.path.length===0?"(root)":t.path.join(".")}: ${t.code}`).join("; ");var BR=e=>typeof e=="string"?JSON.stringify(e):typeof e=="number"||typeof e=="boolean"||e===null||e===void 0?String(e):Array.isArray(e)?"array":typeof e,we=(e,t,r)=>new RangeError(`[daily-report] ${e} must be ${t}; got ${BR(r)}`),Fc=(e,t)=>new TypeError(`[daily-report] ${e} must be ${t}`),Zn=(e,t,r)=>we(e,`one of ${r.map(n=>JSON.stringify(n)).join(", ")}`,t),qe=(e,t,r,n)=>{if(typeof t=="number"&&Number.isSafeInteger(t)&&t>=r&&(n===void 0||t<=n))return t;throw we(e,n===void 0?`an integer >= ${r}`:`an integer from ${r} to ${n}`,t)};var sa=({hasListener:e,batchSize:t,inFlightBound:r,send:n})=>{qe("createIdBatchScheduler: batchSize",t,1),qe("createIdBatchScheduler: inFlightBound",r,1);let o=new Set,a=new Map,s=!1,i=()=>{let c=[],u=[...o];for(let p=u.length-1;p>=0&&c.length<t;p--){let h=u[p];o.delete(h),e(h)&&c.push(h)}return c.reverse()},l=c=>{let u=new AbortController;a.set(u,c);let p=()=>{a.delete(u),d()},h=f=>{p(),u.signal.aborted&&f===u.signal.reason||globalThis.reportError(f)};n(c,u.signal).then(p,h)},d=()=>{for(s=!1;a.size<r;){let c=i();if(c.length===0)return;l(c)}};return{enqueue:c=>{o.delete(c),o.add(c),!s&&(s=!0,queueMicrotask(d))},isWanted:c=>o.has(c),release:c=>{let u=[];o.delete(c)&&u.push(c);for(let[p,h]of a)p.signal.aborted||!h.includes(c)||h.some(e)||(p.abort(),u.push(...h));return u},dispose:()=>{let c=[...o];o.clear();for(let[u,p]of a)u.signal.aborted||(u.abort(),c.push(...p));return c}}};var UR=/^[1-9][0-9]*$/,VR=/^(?:0|[1-9][0-9]*)$/,Hc=e=>{if(e===null||!UR.test(e))return null;let t=Number(e);return ut(t)?t:null},rn=e=>{if(e===null||!VR.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null};var WR=2**31-1,ia=(e,t)=>{let r=qe("holdDelayMsOf: maxDelayMs",t,0,WR),n=rn(e.headers.get("Retry-After"));if(n===null)return null;let o=n*1e3;return o<=r?o:null};var Bc={request:e=>requestAnimationFrame(e),cancel:e=>cancelAnimationFrame(e)},Uc=({frames:e,handOn:t})=>{let r=new Set,n=0,o=0,a=null,s=!1,i=()=>{a!==null||s||(s=!0,queueMicrotask(l))},l=()=>{s=!1,!(a!==null||r.size===0)&&(o=n,a=e.request(d))},d=()=>{if(a=null,n!==o){o=n,a=e.request(d);return}let c=[...r];r.clear(),t(c)};return{enter:c=>{r.add(c),n+=1,i()},leave:c=>{r.delete(c),n+=1,r.size===0&&a!==null&&(e.cancel(a),a=null)},holds:c=>r.has(c),dispose:()=>{a!==null&&e.cancel(a),a=null;let c=[...r];return r.clear(),c}}};import{resolveVirtualScrollLocale as eb}from"@aiquants/virtualscroll";import{createContext as tb,useMemo as rb}from"react";import{useContext as KR}from"react";var gt=(e,t,r)=>{let n=KR(e);if(n===null)throw new Error(`[daily-report] ${t} must be used within a ${r}`);return n};import{resolveVirtualScrollLabels as zR,resolveVirtualScrollLocale as $R,VIRTUAL_SCROLL_LABEL_CATALOGS as Vc,VIRTUAL_SCROLL_LABEL_KEYS as di}from"@aiquants/virtualscroll";var zc=["id","businessDate","author","visitTime","createdAt","updatedAt","updatedBy","category","creationCategory","customer","subject","content","interviewers","comments","attachments","attachmentMissing","attachmentDownload","attachmentThumbnailUnavailable","tabArticle","tabRelations","reportTabList","relationsEmpty","title","listKeyboardHelp","tabList","tabTree","tabDetailList","viewTabList","treeComingSoon","totalCountLoading","createReport","createReportTitle","devControls","devSseToggle","devReload","devClearCache","autoRead","autoReadTitle","loadErrorBadge","loadError","reload","loadingIds","streamFailed","streamRetry","streamRevalidating","selectPrompt","loading","reportNotFound","contentEmpty","contentEmptyPreview","confirmDelete","starAdd","starRemove","markRead","markUnread","deleteReport","edit","resizeHandle","close","formTitle","formTitlePlaceholder","formContent","formContentPlaceholder","formCancel","formSave","formPublish","commentPlaceholder","commentSend","commentDelete","commentDeleteConfirm","unknownUser","sourceInternal","searchInputLabel","searchPlaceholder","searchCombineAnd","searchCombineOr","searchCombineAndTitle","searchCombineOrTitle","searchClear","searching","searchNoHits","searchSyntaxHelp","searchMatchOutsideView","searchMatchOutsideViewDescription","searchReadingMarkDescription","searchFilterSourceType","searchFiltersLoading","searchFiltersTooMany","searchFilterUnavailable"],$c=["totalCount","debounce","streamProgressCount","streamProgressRatio","streamRetrying","reportLoadFailed","reportSummaryLoadFailed","interviewerWithAffiliation","operationFailed","noticeRepeated","rowState","listRowPosition","listRowPositionInUnknownTotal","searchHitCount","searchFailed","searchMatchedKeywords","searchMatchedKeywordsDescription","searchFieldMatched","searchFieldMatchedByReading","searchFiltersToggle","searchFiltersFailed"],ii=[...di,...zc,...$c];var Wc=Object.freeze({en:"en-US",ja:"ja-JP"}),jR=Object.freeze({en:new Intl.NumberFormat(Wc.en),ja:new Intl.NumberFormat(Wc.ja)}),ce=(e,t)=>jR[e].format(t),GR=Object.freeze({create:"\u65E5\u5831\u306E\u4F5C\u6210",update:"\u65E5\u5831\u306E\u4FDD\u5B58",publish:"\u65E5\u5831\u306E\u516C\u958B",delete:"\u65E5\u5831\u306E\u524A\u9664",addComment:"\u30B3\u30E1\u30F3\u30C8\u306E\u6295\u7A3F",deleteComment:"\u30B3\u30E1\u30F3\u30C8\u306E\u524A\u9664",toggleStar:"\u30B9\u30BF\u30FC\u306E\u66F4\u65B0",toggleRead:"\u65E2\u8AAD\u72B6\u614B\u306E\u66F4\u65B0"}),YR=Object.freeze({create:"create the report",update:"save the report",publish:"publish the report",delete:"delete the report",addComment:"post the comment",deleteComment:"delete the comment",toggleStar:"update the star",toggleRead:"update the read state"}),qR=Object.freeze({invalid:"\u691C\u7D22\u8A9E\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093",busy:"\u6DF7\u307F\u5408\u3063\u3066\u3044\u307E\u3059\u3002\u5C11\u3057\u5F85\u3063\u3066\u304B\u3089\u3082\u3046\u4E00\u5EA6\u691C\u7D22\u3057\u3066\u304F\u3060\u3055\u3044",unavailable:"\u691C\u7D22\u3092\u4F7F\u3048\u307E\u305B\u3093",failed:"\u691C\u7D22\u306B\u5931\u6557\u3057\u307E\u3057\u305F"}),XR=Object.freeze({invalid:"The search text is not valid",busy:"The server is busy. Please search again in a moment",unavailable:"Search is not available",failed:"The search failed"}),QR=Object.freeze({busy:"\u6DF7\u307F\u5408\u3063\u3066\u3044\u308B\u305F\u3081\u7D5E\u308A\u8FBC\u307F\u306E\u5019\u88DC\u3092\u8AAD\u307F\u8FBC\u3081\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u5C11\u3057\u5F85\u3063\u3066\u304B\u3089\u7D5E\u308A\u8FBC\u307F\u3092\u958B\u304D\u76F4\u3057\u3066\u304F\u3060\u3055\u3044",unavailable:"\u7D5E\u308A\u8FBC\u307F\u306E\u5019\u88DC\u3092\u4F7F\u3048\u307E\u305B\u3093",failed:"\u7D5E\u308A\u8FBC\u307F\u306E\u5019\u88DC\u3092\u8AAD\u307F\u8FBC\u3081\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u7D5E\u308A\u8FBC\u307F\u3092\u9589\u3058\u3066\u958B\u304D\u76F4\u3059\u3068\u8AAD\u307F\u76F4\u3057\u307E\u3059"}),ZR=Object.freeze({busy:"The server is busy, so the filter options could not be loaded. Please reopen the filters in a moment",unavailable:"Filter options are not available",failed:"The filter options could not be loaded. Close and reopen the filters to load them again"}),li=Object.freeze({en:Object.freeze({id:"ID",businessDate:"Business date",author:"Author",visitTime:"Visit time",createdAt:"Created at",updatedAt:"Updated at",updatedBy:"Updated by",category:"Category",creationCategory:"Creation category",customer:"Customer",subject:"Subject",content:"Content",interviewers:"Attendees",comments:"Comments",attachments:"Attachments",attachmentMissing:"File is missing",attachmentDownload:"Download",attachmentThumbnailUnavailable:"Preview unavailable",tabArticle:"Overview",tabRelations:"Related",reportTabList:"Report sections",relationsEmpty:"No related view configured yet.",title:"Daily Reports",listKeyboardHelp:"Up and Down arrows: previous or next report. Home and End: first or last report. Page Up and Page Down: move by a page. Enter or Space on a report row: make it current. Control+Home and Control+End: move to the nearest control before or after the list, when there is one.",tabList:"\u{1F4C4} List",tabTree:"\u{1F333} Tree",tabDetailList:"\u{1F4CB} DetailList",viewTabList:"Views",treeComingSoon:"The tree view is coming soon",totalCountLoading:"Total: loading...",createReport:"New report",createReportTitle:"Create a daily report",devControls:"Development-only controls",devSseToggle:"Toggle SSE real-time sync",devReload:"Reload data",devClearCache:"Clear the cache and reload",autoRead:"Auto-read",autoReadTitle:"Mark reports as read automatically while viewing them",loadErrorBadge:"Error",loadError:"Failed to load the daily reports.",reload:"Reload",loadingIds:"Loading report IDs...",streamFailed:"Failed to load",streamRetry:"Retry",streamRevalidating:"Refreshing",selectPrompt:"Select a report from the list on the left.",loading:"Loading...",reportNotFound:"Report not found",contentEmpty:"No content has been entered.",contentEmptyPreview:"No content has been entered",confirmDelete:"Are you sure you want to delete this report?",starAdd:"Add star",starRemove:"Remove star",markRead:"Mark as read",markUnread:"Mark as unread",deleteReport:"Delete",edit:"Edit",resizeHandle:"Resize the border between the report list and the detail pane",close:"Close",formTitle:"Title",formTitlePlaceholder:"Enter the report title",formContent:"Content",formContentPlaceholder:"Enter the report content",formCancel:"Cancel",formSave:"Save",formPublish:"Publish",commentPlaceholder:"Add a comment...",commentSend:"Send",commentDelete:"Delete comment",commentDeleteConfirm:"Delete",unknownUser:"Unknown",sourceInternal:"Original",searchInputLabel:"Search reports",searchPlaceholder:"Search reports",searchCombineAnd:"AND",searchCombineOr:"OR",searchCombineAndTitle:"Show the reports that contain every keyword",searchCombineOrTitle:"Show the reports that contain any keyword",searchClear:"Clear the search",searching:"Searching...",searchNoHits:"No report matches",searchSyntaxHelp:"Separate keywords with spaces. Words in double quotes form one keyword that needs every word. A word in Latin letters also finds its kana reading (denpun finds \u3067\u3093\u3077\u3093); text found through a reading is underlined with dots. Enter searches, Esc clears.",searchMatchOutsideView:"Hidden match",searchMatchOutsideViewDescription:"Matched in fields this view does not show, such as labels or details",searchReadingMarkDescription:"Matched by its romaji reading",searchFilterSourceType:"Source",searchFiltersLoading:"Loading filters...",searchFiltersTooMany:"No more filter values can be selected",searchFilterUnavailable:"This filter cannot be shown",totalCount:e=>`Total: ${ce("en",e)}`,debounce:e=>`Debounce: ${e} ms`,streamProgressCount:e=>`Loading ${ce("en",e)}`,streamProgressRatio:(e,t,r)=>`Loading ${ce("en",e)} / ${ce("en",t)} (${r}%)`,streamRetrying:e=>`Reconnecting... (${ce("en",e)} received)`,reportLoadFailed:e=>`Failed to load report ${ce("en",e)}.`,reportSummaryLoadFailed:e=>`Failed to load the summary of report ${ce("en",e)}.`,interviewerWithAffiliation:(e,t)=>`${e} (${t})`,operationFailed:e=>`Failed to ${YR[e]}. Please try again later.`,noticeRepeated:e=>`(${ce("en",e)} times)`,rowState:({isRead:e,isStarred:t})=>`${e?"Read":"Unread"}${t?", starred":""}`,listRowPosition:(e,t)=>`${ce("en",e)} of ${ce("en",t)}`,listRowPositionInUnknownTotal:e=>`Item ${ce("en",e)}`,searchHitCount:e=>`${ce("en",e)} ${e===1?"hit":"hits"}`,searchFailed:e=>XR[e],searchMatchedKeywords:(e,t)=>`Match ${e}/${t}`,searchMatchedKeywordsDescription:(e,t)=>`Matches ${e} of ${t} keywords`,searchFieldMatched:e=>`${e} matched`,searchFieldMatchedByReading:e=>`${e} matched by its romaji reading`,searchFiltersToggle:e=>e===0?"Filters":`Filters (${ce("en",e)})`,searchFiltersFailed:e=>ZR[e]}),ja:Object.freeze({id:"ID",businessDate:"\u55B6\u696D\u65E5",author:"\u4F5C\u6210\u8005",visitTime:"\u8A2A\u554F\u6642\u9593",createdAt:"\u4F5C\u6210\u65E5\u6642",updatedAt:"\u66F4\u65B0\u65E5\u6642",updatedBy:"\u66F4\u65B0\u8005",category:"\u533A\u5206",creationCategory:"\u4F5C\u6210\u533A\u5206",customer:"\u9867\u5BA2",subject:"\u4EF6\u540D",content:"\u5185\u5BB9",interviewers:"\u9762\u8AC7\u8005",comments:"\u30B3\u30E1\u30F3\u30C8",attachments:"\u6DFB\u4ED8\u30D5\u30A1\u30A4\u30EB",attachmentMissing:"\u5B9F\u4F53\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093",attachmentDownload:"\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9",attachmentThumbnailUnavailable:"\u30D7\u30EC\u30D3\u30E5\u30FC\u3092\u8868\u793A\u3067\u304D\u307E\u305B\u3093",tabArticle:"\u6982\u8981",tabRelations:"\u95A2\u9023",reportTabList:"\u65E5\u5831\u306E\u8868\u793A\u306E\u5207\u308A\u66FF\u3048",relationsEmpty:"\u95A2\u9023\u30D3\u30E5\u30FC\u306F\u307E\u3060\u69CB\u6210\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002",title:"\u65E5\u5831",listKeyboardHelp:"\u2191\u2193 \u3067\u524D\u5F8C\u306E\u65E5\u5831\u3001Home / End \u3067\u5148\u982D\u30FB\u672B\u5C3E\u3001PageUp / PageDown \u3067\u30DA\u30FC\u30B8\u79FB\u52D5\u3001\u65E5\u5831\u306E\u884C\u3067 Enter \u307E\u305F\u306F Space \u3092\u62BC\u3059\u3068\u9078\u629E\u3001Ctrl+Home / Ctrl+End \u3067\u4E00\u89A7\u306E\u76F4\u524D\u30FB\u76F4\u5F8C\u306E\u64CD\u4F5C\u90E8\u54C1\u304C\u3042\u308C\u3070\u305D\u3053\u3078\u79FB\u308A\u307E\u3059\u3002",tabList:"\u{1F4C4} \u4E00\u89A7",tabTree:"\u{1F333} \u30C4\u30EA\u30FC",tabDetailList:"\u{1F4CB} \u8A73\u7D30\u4E00\u89A7",viewTabList:"\u8868\u793A\u306E\u5207\u308A\u66FF\u3048",treeComingSoon:"\u30C4\u30EA\u30FC\u306F\u73FE\u5728\u6E96\u5099\u4E2D\u3067\u3059",totalCountLoading:"\u7DCF\u4EF6\u6570: \u8AAD\u307F\u8FBC\u307F\u4E2D...",createReport:"\u65E5\u5831\u4F5C\u6210",createReportTitle:"\u65E5\u5831\u3092\u4F5C\u6210",devControls:"\u958B\u767A\u74B0\u5883\u9650\u5B9A\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB",devSseToggle:"SSE \u30EA\u30A2\u30EB\u30BF\u30A4\u30E0\u540C\u671F\u5207\u66FF",devReload:"\u30C7\u30FC\u30BF\u518D\u53D6\u5F97 (\u30EA\u30ED\u30FC\u30C9)",devClearCache:"\u30AD\u30E3\u30C3\u30B7\u30E5\u7834\u68C4 & \u518D\u53D6\u5F97",autoRead:"\u81EA\u52D5\u65E2\u8AAD",autoReadTitle:"\u65E5\u5831\u95B2\u89A7\u6642\u306E\u81EA\u52D5\u65E2\u8AAD\u51E6\u7406\u5207\u66FF",loadErrorBadge:"\u30A8\u30E9\u30FC",loadError:"\u65E5\u5831\u30C7\u30FC\u30BF\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002",reload:"\u518D\u8AAD\u307F\u8FBC\u307F",loadingIds:"\u65E5\u5831 ID \u3092\u8AAD\u307F\u8FBC\u307F\u4E2D\u3067\u3059...",streamFailed:"\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F",streamRetry:"\u518D\u8A66\u884C",streamRevalidating:"\u6700\u65B0\u5316\u4E2D",selectPrompt:"\u5DE6\u5074\u306E\u4E00\u89A7\u304B\u3089\u65E5\u5831\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002",loading:"\u8AAD\u307F\u8FBC\u307F\u4E2D...",reportNotFound:"\u65E5\u5831\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093",contentEmpty:"\u5185\u5BB9\u306F\u767B\u9332\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002",contentEmptyPreview:"\u5185\u5BB9\u306F\u767B\u9332\u3055\u308C\u3066\u3044\u307E\u305B\u3093",confirmDelete:"\u672C\u5F53\u306B\u524A\u9664\u3057\u307E\u3059\u304B\uFF1F",starAdd:"\u30B9\u30BF\u30FC\u3092\u4ED8\u3051\u308B",starRemove:"\u30B9\u30BF\u30FC\u3092\u5916\u3059",markRead:"\u65E2\u8AAD\u306B\u3059\u308B",markUnread:"\u672A\u8AAD\u306B\u3059\u308B",deleteReport:"\u524A\u9664\u3059\u308B",edit:"\u7DE8\u96C6",resizeHandle:"\u65E5\u5831\u4E00\u89A7\u3068\u8A73\u7D30\u30DA\u30A4\u30F3\u306E\u5883\u754C\u306E\u30B5\u30A4\u30BA\u5909\u66F4\u30CF\u30F3\u30C9\u30EB",close:"\u9589\u3058\u308B",formTitle:"\u30BF\u30A4\u30C8\u30EB",formTitlePlaceholder:"\u65E5\u5831\u306E\u30BF\u30A4\u30C8\u30EB\u3092\u5165\u529B",formContent:"\u5185\u5BB9",formContentPlaceholder:"\u65E5\u5831\u306E\u5185\u5BB9\u3092\u5165\u529B",formCancel:"\u30AD\u30E3\u30F3\u30BB\u30EB",formSave:"\u4FDD\u5B58",formPublish:"\u516C\u958B",commentPlaceholder:"\u30B3\u30E1\u30F3\u30C8\u3092\u8FFD\u52A0...",commentSend:"\u9001\u4FE1",commentDelete:"\u524A\u9664",commentDeleteConfirm:"\u524A\u9664\u3059\u308B",unknownUser:"\u4E0D\u660E\u306A\u30E6\u30FC\u30B6\u30FC",sourceInternal:"\u30AA\u30EA\u30B8\u30CA\u30EB",searchInputLabel:"\u65E5\u5831\u3092\u691C\u7D22",searchPlaceholder:"\u65E5\u5831\u3092\u691C\u7D22",searchCombineAnd:"AND",searchCombineOr:"OR",searchCombineAndTitle:"\u3059\u3079\u3066\u306E\u30AD\u30FC\u30EF\u30FC\u30C9\u3092\u542B\u3080\u65E5\u5831\u3092\u51FA\u3059",searchCombineOrTitle:"\u3069\u308C\u304B\u306E\u30AD\u30FC\u30EF\u30FC\u30C9\u3092\u542B\u3080\u65E5\u5831\u3092\u51FA\u3059",searchClear:"\u691C\u7D22\u3092\u6D88\u3059",searching:"\u691C\u7D22\u4E2D...",searchNoHits:"\u5F53\u305F\u308B\u65E5\u5831\u306F\u3042\u308A\u307E\u305B\u3093",searchSyntaxHelp:"\u30AD\u30FC\u30EF\u30FC\u30C9\u306F\u7A7A\u767D\u3067\u533A\u5207\u308A\u307E\u3059\u3002\u4E8C\u91CD\u5F15\u7528\u7B26\u3067\u56F2\u3093\u3060\u8A9E\u306F\u3001\u3059\u3079\u3066\u306E\u8A9E\u3092\u542B\u3080 1 \u3064\u306E\u30AD\u30FC\u30EF\u30FC\u30C9\u306B\u306A\u308A\u307E\u3059\u3002\u82F1\u5B57\u306E\u8A9E\u306F\u30ED\u30FC\u30DE\u5B57\u306E\u8AAD\u307F\u3067\u3082\u4EEE\u540D\u3092\u63A2\u3057\u307E\u3059 (denpun \u2192 \u3067\u3093\u3077\u3093)\u3002\u8AAD\u307F\u3067\u5F53\u305F\u3063\u305F\u6240\u306F\u70B9\u7DDA\u306E\u4E0B\u7DDA\u3067\u793A\u3057\u307E\u3059\u3002Enter \u3067\u691C\u7D22\u3001Esc \u3067\u6D88\u53BB\u3057\u307E\u3059\u3002",searchMatchOutsideView:"\u8868\u793A\u5916\u3067\u4E00\u81F4",searchMatchOutsideViewDescription:"\u3053\u306E\u753B\u9762\u306B\u51FA\u3057\u3066\u3044\u306A\u3044\u9805\u76EE (\u30E9\u30D9\u30EB\u30FB\u660E\u7D30\u306A\u3069) \u3067\u4E00\u81F4\u3057\u307E\u3057\u305F",searchReadingMarkDescription:"\u30ED\u30FC\u30DE\u5B57\u306E\u8AAD\u307F\u3067\u4E00\u81F4",searchFilterSourceType:"\u30BD\u30FC\u30B9\u533A\u5206",searchFiltersLoading:"\u7D5E\u308A\u8FBC\u307F\u306E\u5019\u88DC\u3092\u8AAD\u307F\u8FBC\u307F\u4E2D...",searchFiltersTooMany:"\u3053\u308C\u4EE5\u4E0A\u306F\u7D5E\u308A\u8FBC\u307F\u306E\u5024\u3092\u9078\u3079\u307E\u305B\u3093",searchFilterUnavailable:"\u3053\u306E\u7D5E\u308A\u8FBC\u307F\u3092\u8868\u793A\u3067\u304D\u307E\u305B\u3093",totalCount:e=>`\u7DCF\u4EF6\u6570: ${ce("ja",e)} \u4EF6`,debounce:e=>`\u30C7\u30D0\u30A6\u30F3\u30B9: ${e} ms`,streamProgressCount:e=>`\u8AAD\u307F\u8FBC\u307F\u4E2D ${ce("ja",e)} \u4EF6`,streamProgressRatio:(e,t,r)=>`\u8AAD\u307F\u8FBC\u307F\u4E2D ${ce("ja",e)} / ${ce("ja",t)} (${r}%)`,streamRetrying:e=>`\u518D\u63A5\u7D9A\u4E2D... (${ce("ja",e)} \u4EF6\u53D7\u4FE1\u6E08)`,reportLoadFailed:e=>`\u65E5\u5831 ${ce("ja",e)} \u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002`,reportSummaryLoadFailed:e=>`\u65E5\u5831 ${ce("ja",e)} \u306E\u6982\u8981\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002`,interviewerWithAffiliation:(e,t)=>`${e} (${t})`,operationFailed:e=>`${GR[e]}\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002\u6642\u9593\u3092\u304A\u3044\u3066\u518D\u5EA6\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002`,noticeRepeated:e=>`(${ce("ja",e)} \u56DE\u76EE)`,rowState:({isRead:e,isStarred:t})=>`${e?"\u65E2\u8AAD":"\u672A\u8AAD"}${t?"\u3001\u30B9\u30BF\u30FC\u4ED8\u304D":""}`,listRowPosition:(e,t)=>`\u5168 ${ce("ja",t)} \u4EF6\u4E2D ${ce("ja",e)} \u4EF6\u76EE`,listRowPositionInUnknownTotal:e=>`${ce("ja",e)} \u4EF6\u76EE`,searchHitCount:e=>`${ce("ja",e)} \u4EF6\u30D2\u30C3\u30C8`,searchFailed:e=>qR[e],searchMatchedKeywords:(e,t)=>`\u4E00\u81F4 ${e}/${t}`,searchMatchedKeywordsDescription:(e,t)=>`\u30AD\u30FC\u30EF\u30FC\u30C9 ${t} \u500B\u306E\u3046\u3061 ${e} \u500B\u306B\u4E00\u81F4`,searchFieldMatched:e=>`${e}\u3067\u4E00\u81F4`,searchFieldMatchedByReading:e=>`${e}\u304C\u30ED\u30FC\u30DE\u5B57\u306E\u8AAD\u307F\u3067\u4E00\u81F4`,searchFiltersToggle:e=>e===0?"\u7D5E\u308A\u8FBC\u307F":`\u7D5E\u308A\u8FBC\u307F (${ce("ja",e)})`,searchFiltersFailed:e=>QR[e]})}),jc=Object.freeze({en:Object.freeze({...Vc.en,...li.en}),ja:Object.freeze({...Vc.ja,...li.ja})}),JR=e=>{let t={},r=!1;for(let n of di){let o=Object.hasOwn(e,n)?e[n]:void 0;o!==void 0&&(t[n]=o,r=!0)}return r?t:void 0},Kc=(e,t,r)=>{e[t]=r},ci=(e,t)=>{let r=$R(e);if(t===void 0)return jc[r];if(t===null||typeof t!="object")throw we("labels","an object",t);let n=Object.getPrototypeOf(t);if(n!==Object.prototype&&n!==null)throw we("labels","a plain object (prototype Object.prototype or null)",t);for(let s of Object.keys(t))if(!ii.includes(s))throw Zn("labels key",s,ii);let a={...zR(r,JR(t)),...li[r]};for(let s of zc){let i=Object.hasOwn(t,s)?t[s]:void 0;if(i!==void 0){if(typeof i!="string"||i.trim()==="")throw we(`labels.${s}`,"a non-blank string",i);Kc(a,s,i)}}for(let s of $c){let i=Object.hasOwn(t,s)?t[s]:void 0;if(i!==void 0){if(typeof i!="function")throw we(`labels.${s}`,"a function",i);Kc(a,s,i)}}return Object.freeze(a)},Gc=e=>{let t={};for(let r of di)t[r]=e[r];return Object.freeze(t)};import{jsx as ui,jsxs as mb}from"react/jsx-runtime";var nb=e=>({Internal:{label:e.sourceInternal,badgeClassName:"bg-emerald-100 text-emerald-800 dark:bg-emerald-900/30 dark:text-emerald-400"}}),ob=({title:e,annotation:t})=>mb("header",{className:"flex flex-wrap items-baseline justify-between gap-2 px-2 py-1",children:[ui("span",{className:"text-nowrap text-slate-700 text-sm dark:text-slate-200",children:e}),t?ui("span",{className:"text-slate-600 text-xs dark:text-slate-300",children:t}):null]}),Jn=Object.freeze({apiBasePath:"/daily_report/api",ssePath:"/sse/daily_report/updates",renderHeader:ob,showDevControls:!1,headingLevel:3}),Yc=["apiBasePath","ssePath","locale","labels","sourceTypeConfigs","renderHeader","showDevControls","headingLevel","onError","onSessionExpired","search"];var ab=e=>{for(let t of Object.keys(e))if(!Yc.includes(t))throw Zn("config key",t,Yc)},qc=[2,3,4,5],sb=e=>{if(e===void 0)return Jn.headingLevel;let t=qc.find(r=>r===e);if(t===void 0)throw we("config.headingLevel",`one of ${qc.join(", ")} (the level of each report's heading)`,e);return t},Xc=["debounceMs","renderFilterSelect"],ib=Object.freeze({min:300,max:5e3}),lb=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},db=e=>{if(e===void 0)return null;if(typeof e!="function")throw we("config.search.renderFilterSelect","a function (it renders the control of each filter cell)",e);return e},cb=e=>{if(e===void 0)return null;if(!lb(e))throw we("config.search","a plain object ({} for Enter only, or { debounceMs })",e);for(let o of Object.keys(e))if(!Xc.includes(o))throw Zn("config.search key",o,Xc);let t=e.debounceMs,{min:r,max:n}=ib;return{debounceMs:t===void 0?null:qe("config.search.debounceMs",t,r,n),renderFilterSelect:db(e.renderFilterSelect)}},ub=e=>{for(let[t,r]of Object.entries(e)){let n=r.name;if(n!==void 0&&(typeof n!="string"||n.trim()===""))throw we(`config.sourceTypeConfigs.${t}.name`,"a non-blank string (the expansion of the badge label)",n)}return e},pb=e=>{ab(e);let t=e.onSessionExpired;if(t===void 0)throw Fc("config.onSessionExpired","a function (the host decides the navigation on session expiry)");if(typeof t!="function")throw we("config.onSessionExpired","a function (the host decides the navigation on session expiry)",t);let r=eb(e.locale),n=ci(r,e.labels),o=Jn;return{apiBasePath:e.apiBasePath===void 0?o.apiBasePath:e.apiBasePath,ssePath:e.ssePath===void 0?o.ssePath:e.ssePath,locale:r,labels:n,sourceTypeConfigs:e.sourceTypeConfigs===void 0?nb(n):ub(e.sourceTypeConfigs),renderHeader:e.renderHeader===void 0?o.renderHeader:e.renderHeader,showDevControls:e.showDevControls===void 0?o.showDevControls:e.showDevControls,headingLevel:sb(e.headingLevel),onError:e.onError,onSessionExpired:e.onSessionExpired,search:cb(e.search)}},Qc=tb(null),pi=({config:e,children:t})=>{let r=rb(()=>pb(e),[e]);return ui(Qc.Provider,{value:r,children:t})},K=()=>gt(Qc,"useDailyReportConfig","DailyReportConfigProvider"),Gt=(e,t)=>{if(!(e&&t))return;if(t[e])return t[e];let r=e.toLowerCase(),n=Object.keys(t).find(o=>o.toLowerCase()===r);return n?t[n]:void 0},la=(e,t)=>t?.allowComment!==void 0?t.allowComment:!e||e.toLowerCase()==="internal";import{tapScrollCircleSampleVisual as yb}from"@aiquants/virtualscroll";var fb=4;var nn=120,Zc=1e3,ca=.8,mi={maxVelocity:18,deceleration:.0018,startVelocityThreshold:.03},ua=20,Jc=6,pa={reportHubId:-1,businessDate:null},ma=240,fa=15,hb=8,eu=460,tu=3,ru=352,Rb={enabled:!0,renderVisual:yb,maxSpeedCurve:{exponentialSteepness:3,exponentialScale:8},maxSpeedMultiplier:8,className:"[[data-daily-report-keyboard-focus]_&]:invisible"},ya={width:hb,tapScrollCircleOptions:Rb,enableArrowButtonTabStops:!1},ha=["pen","touch"];var su=pt(void 0,1,"DetailLoader"),iu=(e,t)=>{if(typeof window>"u")return t;let r=window[e];return typeof r=="number"&&!Number.isNaN(r)?r:t},hi=iu("__DAILY_REPORT_CACHE_TTL__",3e5),Tb=iu("__DAILY_REPORT_CACHE_REVIVE_MS__",6e4),Z={reports:new Map,lists:new Map,pendingLists:new Map,pendingReports:new Map,listeners:new Set,lockHolders:new Map,lockHolds:new Map,lastMutations:new Map,recentDeletes:new Map,lastPrune:0,prune(){let e=Date.now();if(e-this.lastPrune<6e4)return;this.lastPrune=e;let t=3600*1e3;for(let[r,n]of this.reports)e-n.expiresAt>t&&this.reports.delete(r);for(let[r,n]of this.lists)e-n.expiresAt>t&&this.lists.delete(r)},clear(){this.reports.clear(),this.lists.clear(),this.pendingLists.clear(),this.pendingReports.clear(),this.lockHolders.clear(),this.lockHolds.clear(),this.lastMutations.clear(),this.recentDeletes.clear(),this.listeners.forEach(e=>{e(-1)})},isLocked(e){if(this.lockHolders.has(e))return!0;let t=this.lockHolds.get(e);return t===void 0?!1:t>performance.now()?!0:(this.lockHolds.delete(e),!1)},isValid:e=>e>Date.now(),notify:e=>{Z.listeners.forEach(t=>{t(e)})},getReport(e,t=!1){let r=this.reports.get(e);return r&&(t||this.isValid(r.expiresAt))?r.data:null},getList(e,t=!1){let r=e&&this.lists.get(e);return r&&(t||this.isValid(r.expiresAt))?r.data:null},set(e,t,r=!0){if(this.reports.set(e.reportHubId,{data:e,expiresAt:t}),r){let n=vr(e.date),o=n?this.lists.get(n):null;if(o&&n){let s=o.data.some(i=>i.reportHubId===e.reportHubId)?o.data.map(i=>i.reportHubId===e.reportHubId?e:i):[e,...o.data];this.lists.set(n,{...o,data:s})}}this.notify(e.reportHubId)},update(e,t,r=!0){let n=this.reports.get(e);if(n?.data){if(r&&t.updatedAt&&n.data.updatedAt&&new Date(t.updatedAt).getTime()<new Date(n.data.updatedAt).getTime()){su.warn(`Stale update skipped id=${e}`);return}this.set({...n.data,...t},Math.max(n.expiresAt,Date.now()+Tb))}},delete(e,t){this.reports.delete(e);let r=vr(t),n=r&&this.lists.get(r);n&&r&&this.lists.set(r,{...n,data:n.data.filter(o=>o.reportHubId!==e)}),this.notify(e)},merge(e,t){let r=e;if(r.postedComments.some(n=>this.recentDeletes.has(n.id))&&(r={...r,postedComments:r.postedComments.filter(n=>!this.recentDeletes.has(n.id))}),t){let n=new Set(r.postedComments.map(a=>a.id)),o=t.postedComments.filter(a=>!n.has(a.id)&&a.isMine&&Date.now()-new Date(a.createdAt||0).getTime()<1e4);o.length>0&&(r={...r,postedComments:[...r.postedComments,...o].sort((a,s)=>new Date(a.createdAt||0).getTime()-new Date(s.createdAt||0).getTime())})}return r},cacheMany(e,t,r){this.prune();let n=Date.now(),o=n+hi;for(let[s,i]of this.recentDeletes)n-i>1e4&&this.recentDeletes.delete(s);let a=e.map(s=>{if(this.isLocked(s.reportHubId))return s;let i=this.lastMutations.get(s.reportHubId);if(i&&r>0&&i>r)return this.reports.get(s.reportHubId)?.data??s;let l=this.reports.get(s.reportHubId)?.data,d=this.merge(s,l);return this.set(d,o,!1),d});return t&&this.lists.set(t,{data:a,expiresAt:o}),a}},lu=(e,t,r=!0)=>Z.set(e,t,r),nt=(e,t)=>Z.getReport(e,t?.ignoreExpiry),mt=(e,t)=>Z.update(e,t),Sa=(e,t)=>Z.delete(e,t),ro=()=>{Z.clear(),Ra.clear(),Lb()},ba=(e,t)=>{let r=Z.lastMutations.get(e);(r===void 0||r<t)&&Z.lastMutations.set(e,t)},Ri=e=>{ba(e,Date.now())},du=e=>{let t=Symbol("mutation-lock"),r=Z.lockHolders.get(e);return r===void 0?Z.lockHolders.set(e,new Set([t])):r.add(t),ba(e,Date.now()),()=>{let n=Z.lockHolders.get(e);n===void 0||!n.delete(t)||(n.size===0&&Z.lockHolders.delete(e),ba(e,Date.now()))}},cu=(e,t)=>{let r=performance.now()+t,n=Z.lockHolds.get(e);(n===void 0||n<r)&&Z.lockHolds.set(e,r),ba(e,Date.now()+t)},uu=e=>Z.recentDeletes.set(e,Date.now()),pu=(e,t)=>{let r=n=>{n===e&&t()};return Z.listeners.add(r),()=>{Z.listeners.delete(r)}},mr=(e,t)=>{Z.prune(),Z.set(t,Date.now()+hi)},mu=e=>{Z.prune();let t=Z.getReport(e.reportHubId,!0),r=new Map;for(let o of t?.postedComments??[])r.set(o.id,o.isMine??!1);let n=(e.postedComments??[]).map(o=>({...o,isMine:r.get(o.id)??!1}));Z.set({...e,isRead:t?.isRead??!1,isStarred:t?.isStarred??!1,postedComments:n},Date.now()+hi)},Db=eo.object({report:_t}),Ab=eo.object({reports:eo.array(_t)}),fu=(e,t)=>new Error(`[daily-report] ${e} answered HTTP ${t}`),bi=async(e,t,r)=>{if(!e.ok)throw fu(r,e.status);let n=t.safeParse(await e.json());if(!n.success)throw new Error(`[daily-report] ${r} answered a body that does not match its schema (${aa(n.error)})`);return n.data},xb=async(e,t)=>{let r=Z.getReport(t);if(r)return r;let n=Z.pendingReports.get(t);if(n)return n;let o=Date.now(),a=new URLSearchParams({[Ae.reportHubId]:String(t)}),s=fetch(`${e}/${He.report}?${a}`,{cache:"no-cache"}).then(i=>bi(i,Db,He.report)).then(({report:i})=>Z.cacheMany([i],null,o)[0]).finally(()=>Z.pendingReports.delete(t));return Z.pendingReports.set(t,s),s},Ra=new Map,Cb=1e4,Ib=(e,t)=>{let r=Ra.get(t),n=Date.now();if(r&&n-r.at<Cb)return r.inFlight;let o=Si(e,t,{forceRefresh:!0}),a={at:n,inFlight:o};return Ra.set(t,a),o.finally(()=>{Ra.get(t)===a&&(a.inFlight=null)}).catch(()=>{}),o},Si=async(e,t,r={})=>{let n=r.forceRefresh?null:Z.getList(t);if(n)return n;let o=Z.pendingLists.get(t);if(o)return o;let a=Date.now(),s=new URLSearchParams({[Ae.businessDate]:t}),i=fetch(`${e}/${He.businessDate}?${s}`,{cache:"no-cache"}).then(l=>bi(l,Ab,He.businessDate)).then(({reports:l})=>Z.cacheMany(l,t,a)).finally(()=>Z.pendingLists.delete(t));return Z.pendingLists.set(t,i),i},vb=eo.object({reports:eo.array(_t)}),wb=5e3,fi=new Map,_b=e=>{let t=new Map,r=new Map,n=new Map,o=new Set,a=(p,h)=>{let f=[];for(let y of p)r.get(y)===h&&(r.delete(y),f.push(y));return f},s=(p,h)=>{let f=t.get(p);if(f!==void 0){t.delete(p),o.delete(p);for(let y of f)h(y)}},i=(p,h)=>{let y=setTimeout(()=>{for(let S of p)n.delete(S),t.has(S)&&(o.add(S),c.enqueue(S))},h);for(let S of p)n.set(S,y)},l=(p,h,f)=>{let y=[];for(let S of p)h!==null&&t.has(S)&&!o.has(S)?y.push(S):s(S,m=>m.reject(f));h!==null&&y.length>0&&i(y,h)},d=async(p,h)=>{for(let S of p)r.set(S,h);let f=Date.now(),y=new URLSearchParams({[Ae.reportIds]:p.join(",")});try{let S=await fetch(`${e}/${He.reports}?${y}`,{cache:"no-cache",signal:h});if(S.status===429){l(a(p,h),ia(S,wb),fu(He.reports,S.status));return}let{reports:m}=await bi(S,vb,He.reports);if(h.aborted)return;let g=new Map(Z.cacheMany(m,null,f).map(R=>[R.reportHubId,R]));for(let R of a(p,h))s(R,b=>b.resolve(g.get(R)??null))}catch(S){for(let m of a(p,h))s(m,g=>g.reject(S))}},c=sa({hasListener:p=>t.has(p),batchSize:$t.maxDetailIds,inFlightBound:Xn,send:d}),u=Uc({frames:Bc,handOn:p=>{for(let h of p)c.enqueue(h)}});return{readers:t,pending:r,holds:n,retried:o,gate:u,scheduler:c}},Lb=()=>{for(let{readers:e,pending:t,holds:r,retried:n,gate:o,scheduler:a}of fi.values()){o.dispose(),a.dispose(),t.clear();for(let s of r.values())clearTimeout(s);r.clear(),n.clear();for(let s of e.keys())a.enqueue(s)}},Nb=new DOMException("The detail reader left its batched read","AbortError"),Ob=(e,t,r)=>new Promise((n,o)=>{let a=fi.get(e);a===void 0&&(a=_b(e),fi.set(e,a));let{readers:s,pending:i,holds:l,retried:d,gate:c,scheduler:u}=a,p={resolve:n,reject:o},h=s.get(t);h===void 0?s.set(t,new Set([p])):h.add(p),c.holds(t)||u.isWanted(t)||i.has(t)||l.has(t)||c.enter(t);let f=()=>{let y=s.get(t);if(!(y===void 0||!y.delete(p))&&(o(r.reason),!(y.size>0))){s.delete(t),d.delete(t),c.leave(t);for(let S of u.release(t))i.delete(S)}};r.addEventListener("abort",f,{once:!0})}),ga=bb("date"),yi=(e,t)=>{let r=Z.reports.get(e);if(r!==void 0)return{report:r.data,isStale:!Z.isValid(r.expiresAt)};if(t===null)return{report:null,isStale:!1};let n=Z.lists.get(t),o=n?.data.find(a=>a.reportHubId===e);return n===void 0||o===void 0?{report:null,isStale:!1}:{report:o,isStale:!Z.isValid(n.expiresAt)}},ou=(e,t)=>{if(e<=0)return{id:e,report:null,error:e===0?new Error("Invalid ID"):null,isLoading:!1,isRefetching:!1};let{report:r}=yi(e,vr(t));return{id:e,report:r,error:null,isLoading:r===null,isRefetching:!1}},on=(e,t)=>r=>r.id!==e?r:Object.keys(t).some(o=>r[o]!==t[o])?{...r,...t}:r,Nr=(e,t)=>{let{apiBasePath:r}=K(),n=au(ga),[o,a]=Eb(()=>ou(e,t)),s=gb(0),i=o;return o.id!==e&&(i=ou(e,t),a(i)),nu(()=>{let l=vr(t),d=c=>{c===e&&a(on(e,{report:yi(e,l).report}))};return Z.listeners.add(d),()=>{Z.listeners.delete(d)}},[e,t]),nu(()=>{let l=vr(t);s.current+=1;let d=s.current,c=null,u=()=>{c?.abort(Nb),s.current+=1};if(e<=0)return u;let{report:p,isStale:h}=yi(e,l);if(p&&!h)return a(on(e,{report:p,error:null,isLoading:!1,isRefetching:!1})),u;a(on(e,{report:p,isLoading:!p,isRefetching:!0}));let f=async()=>{try{let S=null;if(n==="ids")c=new AbortController,S=await Ob(r,e,c.signal);else if(l){let m=Z.getList(l)!==null;if(S=(await Si(r,l)).find(R=>R.reportHubId===e)??null,!S&&m){let R=await Ib(r,l);R&&(S=R.find(b=>b.reportHubId===e)??null)}}else S=await xb(r,e);s.current===d&&a(on(e,{report:S,error:null}))}catch(S){s.current===d&&a(on(e,{error:S instanceof Error?S:new Error("Load failed")}))}finally{s.current===d&&a(on(e,{isLoading:!1,isRefetching:!1}))}};if(p===null)return f(),u;let y=setTimeout(f,nn);return()=>{clearTimeout(y),u()}},[e,t,r,n]),{report:i.report,error:i.error,isLoading:i.isLoading,isRefetching:i.isRefetching}},gi=()=>{let{apiBasePath:e}=K(),t=au(ga);return Sb(r=>{if(t==="ids")return;let n=vr(r);n&&!Z.getList(n)&&Si(e,n).catch(o=>su.warn("Prefetch error",n,o))},[e,t])};import{VIRTUAL_SCROLL_LABEL_KEYS as Mb}from"@aiquants/virtualscroll";import{useRef as kb}from"react";var Ea=()=>{let{locale:e,labels:t}=K(),r=Gc(t),n=kb(null),o=n.current;return o!==null&&Mb.every(a=>o[a]===r[a])?{locale:e,labels:o}:(n.current=r,{locale:e,labels:r})};import{useState as Pb}from"react";var Ue=e=>{let[t]=Pb(()=>({current:e()}));return t};import{useLayoutEffect as jb,useState as Gb}from"react";import{flushSync as Yb}from"react-dom";var Ru=Object.freeze({visibilityProperty:!0}),yu=new Set(["auto","scroll"]),hu=new Set(["","true","plaintext-only"]),bu=e=>{for(let t=e;t!==null;){if(t.hasAttribute("inert"))return!0;let r=t.parentElement;if(r!==null){t=r;continue}let n=t.getRootNode();t=Tu(n)?n.host:null}return!1},Fb=e=>{let t=e.closest("map")?.getAttribute("name");if(t==null||t==="")return!1;let r=e.getRootNode();for(let n of r.querySelectorAll("img[usemap]"))if(n.getAttribute("usemap")===`#${t}`&&n.checkVisibility(Ru))return!0;return!1},Su=e=>e.localName==="area"?Fb(e):e.checkVisibility(Ru),Hb=e=>{let t=e.getAttribute("contenteditable");if(t===null||!hu.has(t.toLowerCase()))return!1;for(let r=e.parentElement;r!==null;r=r.parentElement){let n=r.getAttribute("contenteditable");if(n===null)continue;let o=n.toLowerCase();if(hu.has(o))return!1;if(o==="false")return!0}return!0},Bb=e=>{if(e.checked||e.name==="")return!0;let t=e.getRootNode(),r=null;for(let n of t.querySelectorAll("input"))if(!(n.type!=="radio"||n.name!==e.name||n.form!==e.form)){if(n.checked)return!1;r===null&&!n.disabled&&Su(n)&&(r=n)}return r===e},Ub=e=>{let t=e.ownerDocument;if(e===t.documentElement||e===t.body)return!1;let r=e.scrollWidth>e.clientWidth,n=e.scrollHeight>e.clientHeight;if(!(r||n))return!1;let o=t.defaultView;if(o===null)return!1;let a=o.getComputedStyle(e);return r&&yu.has(a.overflowX)||n&&yu.has(a.overflowY)},Vb=e=>{switch(e.localName){case"a":case"area":return e.hasAttribute("href");case"button":case"select":case"textarea":case"iframe":case"embed":return!0;case"input":return e.type!=="hidden";case"summary":return e.parentElement?.localName==="details"&&e.parentElement.querySelector(":scope > summary")===e;case"audio":case"video":return e.hasAttribute("controls");case"object":{let t=e.contentWindow;return typeof t=="object"&&t!==null}default:return Hb(e)}},Wb=/^[\t\n\f\r ]*[+-]?\d/,Kb=e=>{let t=e.getAttribute("tabindex");return t!==null&&Wb.test(t)?e.tabIndex:null},gu=(e,t)=>{for(let r of Ti(e))if(t(r)||gu(r,t))return!0;return!1},Ta=(e,t)=>{let r=t.get(e);if(r!==void 0)return r;let n=zb(e,t);return t.set(e,n),n},zb=(e,t)=>{if(!no(e))return"none";let r=Kb(e),n=r===null&&Vb(e),o=r===null&&!n&&Ub(e);return!(r!==null||n||o)||e.matches(":disabled")||bu(e)||!Su(e)?"none":r!==null?r>=0?"sequential":"programmatic":n?e.localName==="input"&&e.type==="radio"?Bb(e)?"sequential":"programmatic":"sequential":gu(e,a=>Ta(a,t)==="sequential")?"none":"sequential"},Ei=(e,t)=>{for(let r of Ti(e))t(r),Ei(r,t)},Ti=e=>{if(be(e)){let t=e;if(t.shadowRoot!==null)return t.shadowRoot.children;if(t.localName==="slot"){let r=t.assignedElements();if(r.length>0)return r}}return e.children};var Da=(e,t)=>{let r=[],n=[],o=[],a=new Map;if(e===t)return Ei(e,l=>{Ta(l,a)==="sequential"&&n.push(l)}),{before:r,within:n,after:o};let s=!1,i=(l,d)=>{for(let c of Ti(l)){let u=c===t;!u&&Ta(c,a)==="sequential"&&(d?n.push(c):s?o.push(c):r.push(c)),i(c,d||u),u&&(s=!0)}};return i(e,!1),{before:r,within:n,after:o}},Eu=e=>{let t=[],r=new Map;return Ei(e,n=>{Ta(n,r)==="sequential"&&t.push(n)}),t},be=e=>e!==null&&"nodeType"in e&&e.nodeType===e.ELEMENT_NODE,no=e=>"focus"in e&&"blur"in e,$b=e=>e.nodeType===e.DOCUMENT_NODE,Tu=e=>e.nodeType===e.DOCUMENT_FRAGMENT_NODE&&"host"in e,xe=e=>{let t=e.getRootNode();if(Tu(t)){let r=t.activeElement;return r===null?xe(t.host):r}return $b(t)?t.activeElement:null},Yt=e=>{let t=xe(e);return t===null||t===t.ownerDocument.body||bu(t)},Xe=e=>{let t=e.ownerDocument.defaultView;if(t===null)throw new Error("[daily-report] the element belongs to a document without a window");return t};var Aa=e=>{let[t,r]=Gb(null);return jb(()=>{let n=e.current;if(n===null)throw new Error("[daily-report] useViewBoxHeight needs viewRef attached to the view's root");let o=null,a=l=>{if(l===o)return;let d=o===null;o=l,d?Yb(()=>r(l)):r(l)},s=l=>{for(let d of l)a(d.borderBoxSize[0].blockSize)},i=new(Xe(n)).ResizeObserver(s);return i.observe(n,{box:"border-box"}),()=>i.disconnect()},[e]),t};var Du=255,Di=[null],Au=new Map,xa=[void 0],xu=new Map,Nt=e=>{if(e===null)return 0;let t=Au.get(e);if(t!==void 0)return t;let r=Di.length;return Di.push(e),Au.set(e,r),r},qt=e=>{let t=Di[e];if(t===void 0)throw new Error(`[daily-report] No business date has the code ${e}`);return t},oo=e=>{if(e===void 0)return 0;let t=xu.get(e);if(t!==void 0)return t;let r=xa.length;if(r>Du)throw new Error(`[daily-report] The rows hold more than ${Du} distinct source types; ${e} has no code`);return xa.push(e),xu.set(e,r),r},Or=e=>{if(!(Number.isInteger(e)&&e>=0&&e<xa.length))throw new Error(`[daily-report] No source type has the code ${e}`);return xa[e]},Lt=class{constructor(t,r,n,o){this.length=t,this.ids=r,this.businessDateCodes=n,this.sourceTypeCodes=o}idAt(t){return this.ids[this.rowIndexOf(t)]}itemAt(t){let r=this.rowIndexOf(t);return{reportHubId:this.ids[r],businessDate:qt(this.businessDateCodes[r]),sourceType:Or(this.sourceTypeCodes[r])}}items(){let t=[];for(let r=0;r<this.length;r++)t.push(this.itemAt(r));return t}businessDateAt(t){return qt(this.businessDateCodes[this.rowIndexOf(t)])}sourceTypeAt(t){return Or(this.sourceTypeCodes[this.rowIndexOf(t)])}rowIndexOf(t){if(Number.isInteger(t)&&t>=0&&t<this.length)return t;throw new Error(`[daily-report] A batch of ${this.length} rows has no row ${t}`)}},Cu=e=>{if(e instanceof Lt)return e;throw new Error("[daily-report] A row batch the package did not build has no code columns")},ft=new Lt(0,new Float64Array(0),new Uint32Array(0),new Uint8Array(0)),qb=Float64Array.BYTES_PER_ELEMENT+Uint32Array.BYTES_PER_ELEMENT+Uint8Array.BYTES_PER_ELEMENT,an=e=>{let t=new ArrayBuffer(e*qb),r=e*Float64Array.BYTES_PER_ELEMENT;return{ids:new Float64Array(t,0,e),businessDateCodes:new Uint32Array(t,r,e),sourceTypeCodes:new Uint8Array(t,r+e*Uint32Array.BYTES_PER_ELEMENT,e)}},Xt=(e,t,r)=>{if(r===0)return ft;let n=t+r;return new Lt(r,e.ids.subarray(t,n),e.businessDateCodes.subarray(t,n),e.sourceTypeCodes.subarray(t,n))},Xb=16,Et=class{constructor(t=Xb){this.count=0;this.columns=null;this.initialCapacity=qe("ReportRowBatchWriter: capacity",t,0)}push(t,r,n){let o=this.columns===null||this.count===this.columns.ids.length?this.grow():this.columns;o.ids[this.count]=t,o.businessDateCodes[this.count]=r,o.sourceTypeCodes[this.count]=n,this.count+=1}pushItem(t){this.push(t.reportHubId,Nt(t.businessDate),oo(t.sourceType))}pushFrom(t,r){this.push(t.ids[r],t.businessDateCodes[r],t.sourceTypeCodes[r])}build(){let t=this.columns;return t===null?ft:Xt(t,0,this.count)}grow(){let t=this.columns,r=an(Math.max(this.count+1,t===null?this.initialCapacity:t.ids.length*2));return t!==null&&(r.ids.set(t.ids),r.businessDateCodes.set(t.businessDateCodes),r.sourceTypeCodes.set(t.sourceTypeCodes)),this.columns=r,r}},Ai=e=>{let t=new Et(e.length);for(let r of e)t.pushItem(r);return t.build()};var Tt=10,ao=1<<Tt,ln=ao-1,Qb=ao,Zb=Qb/2,sn=new Map,Ii=new Map,vi=(e,t,r)=>e.businessDate===t&&e.sourceType===r,Jb=(e,t,r)=>{let n=sn.get(e),o=n===void 0?Ii.get(e):n;return o!==void 0&&vi(o,t,r)?o:void 0},Ca=(e,t,r)=>{let n=qt(t),o=Or(r),a=sn.get(e);if(a!==void 0&&vi(a,n,o))return a;let s=a===void 0?Ii.get(e):void 0,i=s!==void 0&&vi(s,n,o)?s:{reportHubId:e,businessDate:n,sourceType:o};return sn.set(e,i),sn.size>=Zb&&(Ii=sn,sn=new Map),i},Iu=(e,t,r)=>{let n=qt(t),o=Or(r),a=Jb(e,n,o);return a===void 0?{reportHubId:e,businessDate:n,sourceType:o}:a};var ot=class{constructor(t,r){this.chunks=t,this.length=r}at(t){let r=Number.isNaN(t)?0:Math.trunc(t),n=r<0?r+this.length:r;if(!(n<0||n>=this.length))return vu(this,n)}[Symbol.iterator](){let{chunks:t}=this,r=0,n=0;return{next:()=>{for(;r<t.length;){let o=t[r];if(n<o.length){let a=Iu(o.ids[n],o.businessDateCodes[n],o.sourceTypeCodes[n]);return n+=1,{done:!1,value:a}}r+=1,n=0}return{done:!0,value:void 0}}}}},Ia=new ot([],0),vu=(e,t)=>{let r=e.chunks[t>>>Tt],n=t&ln;return Ca(r.ids[n],r.businessDateCodes[n],r.sourceTypeCodes[n])},Mr=(e,t)=>e.chunks[t>>>Tt].ids[t&ln],dn=(e,t)=>e.chunks[t>>>Tt].businessDateCodes[t&ln],_i=(e,t)=>e.chunks[t>>>Tt].sourceTypeCodes[t&ln],xi={businessDate:null,reportHubId:0},Ci={businessDate:null,reportHubId:0},cn=(e,t,r,n)=>(xi.reportHubId=e,xi.businessDate=qt(t),Ci.reportHubId=r,Ci.businessDate=qt(n),Oc(xi,Ci)),wu=e=>{if(e.length===0)return Ia;let t=[];return _u(t,e,e.length),new ot(t,e.length)},_u=(e,t,r)=>{for(let n=0;n<r;n+=ao)e.push(Xt(t,n,Math.min(ao,r-n)))},kr={removals:[],replacements:[],additions:ft,insertions:[]},eS=e=>{let t=an(e.length);return t.ids.set(e.ids.subarray(0,e.length)),t.businessDateCodes.set(e.businessDateCodes.subarray(0,e.length)),t.sourceTypeCodes.set(e.sourceTypeCodes.subarray(0,e.length)),Xt(t,0,e.length)},tS=(e,t)=>{let r=e.chunks.slice(),n=new Map;for(let{index:o,id:a,businessDateCode:s,sourceTypeCode:i}of t){let l=o>>>Tt,d=n.get(l);d===void 0&&(d=eS(e.chunks[l]),n.set(l,d),r[l]=d);let c=o&ln;d.ids[c]=a,d.businessDateCodes[c]=s,d.sourceTypeCodes[c]=i}return new ot(r,e.length)},un=(e,t)=>{let{additions:r,insertions:n}=t;if(t.removals.length===0&&t.replacements.length===0&&r.length===0)return e;let o=[...t.removals].sort((T,v)=>T-v),a=[...t.replacements].sort((T,v)=>T.index-v.index);if(o.length===0&&r.length===0)return tS(e,a);let s=e.length,i=s-o.length+r.length;if(i===0)return Ia;let d=Math.min(o.length===0?s:o[0],a.length===0?s:a[0].index,r.length===0?s:n[0])>>>Tt,c=e.chunks.slice(0,d),u=d<<Tt,p=i-u,h=p===0?ft:an(p),f=0,y=()=>{if(f===p)throw new Error(`[daily-report] Edits of a list of ${s} rows write more than the ${i} rows they leave`);return p-f},S=(T,v,I)=>{y(),h.ids[f]=T,h.businessDateCodes[f]=v,h.sourceTypeCodes[f]=I,f+=1},m=(T,v)=>{for(let I=T;I<v;){let O=e.chunks[I>>>Tt],k=I&ln,F=Math.min(v-I,ao-k,y());h.ids.set(O.ids.subarray(k,k+F),f),h.businessDateCodes.set(O.businessDateCodes.subarray(k,k+F),f),h.sourceTypeCodes.set(O.sourceTypeCodes.subarray(k,k+F),f),f+=F,I+=F}},g=d<<Tt,R=0,b=0,E=0;for(;;){let T=Math.min(R<o.length?o[R]:s,b<a.length?a[b].index:s,E<r.length?n[E]:s);for(m(g,T),g=T;E<r.length&&n[E]===T;E++)S(r.ids[E],r.businessDateCodes[E],r.sourceTypeCodes[E]);if(T===s)break;if(R<o.length&&o[R]===T)R+=1,g=T+1;else if(b<a.length&&a[b].index===T){let v=a[b];S(v.id,v.businessDateCode,v.sourceTypeCode),b+=1,g=T+1}}return _u(c,h,f),new ot(c,u+f)},so=(e,t)=>{let{chunks:r}=e;for(let n=0;n<r.length;n++){let{ids:o,length:a}=r[n];for(let s=0;s<a;s++)if(o[s]===t)return(n<<Tt)+s}return-1},Lu=(e,t)=>{let r=so(e,t);return r===-1?void 0:vu(e,r)},wi=(e,t,r)=>{let n=t.get(e);if(n!==void 0)return n;let o=[];for(let a=0;a<e.length;a++){let s=e.ids[a];r(s)&&o.push(Iu(s,e.businessDateCodes[a],e.sourceTypeCodes[a]))}return t.set(e,o),o},Nu=(e,t,r)=>{let n=[];if(!(e instanceof ot)){for(let o of e)r(o.reportHubId)&&n.push(o);return n}for(let o of e.chunks){let a=wi(o,t,r);for(let s=0;s<a.length;s++)n.push(a[s])}return n},Ou=(e,t,r,n)=>{let o=Math.min(e.chunks.length,t.chunks.length),a=0;for(;a<o&&e.chunks[a]===t.chunks[a];)a+=1;let s=[];for(let l=a;l<e.chunks.length;l++){let d=wi(e.chunks[l],r,n);for(let c=0;c<d.length;c++)s.push(d[c])}let i=[];for(let l=a;l<t.chunks.length;l++){let d=wi(t.chunks[l],r,n);for(let c=0;c<d.length;c++)i.push(d[c])}return{before:s,after:i}};var Mu=(e,t)=>Number.isInteger(t)&&t>=0&&t<e.length,pe=(e,t)=>Mu(e,t)?e.at(t):void 0,rS=(e,t)=>e instanceof ot?Mu(e,t)?Mr(e,t):void 0:pe(e,t)?.reportHubId,nS=16,ku=(e,t)=>e!==null&&e.reportHubId===t?e.index:null,Ee=(e,t,r)=>{let n=r===null?void 0:pe(e,r);if(r!==null&&n!==void 0){if(n.reportHubId===t)return r;for(let o=1;o<=nS;o++){if(pe(e,r+o)?.reportHubId===t)return r+o;if(pe(e,r-o)?.reportHubId===t)return r-o}}return yt(e,t)},yt=(e,t)=>{if(e instanceof ot)return so(e,t);let r=0;for(let n of e){if(n.reportHubId===t)return r;r+=1}return-1},Li=e=>{let t=pe(e,0);return t===void 0?null:t.reportHubId},Pu=(e,t)=>{let r=[];for(let n of e){if(r.length>=t)break;r.push(n.reportHubId)}return r},Ot=(e,t)=>{let r=pe(e,t);if(r===void 0)throw Fu(e,t);return r},va=(e,t)=>{let r=rS(e,t);if(r===void 0)throw Fu(e,t);return r},Fu=(e,t)=>new Error(`[daily-report] No report at index ${t} of a list of ${e.length}`);var _a="data-daily-report-row",wa=`[role="listitem"][${_a}]`,oS='button, a[href], input, textarea, select, label, [role="button"], [contenteditable]:not([contenteditable="false"])',aS=/^[1-9]\d*$/,Hu=e=>{if(e===null||!aS.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null},sS=`${wa}[tabindex="0"], ${wa} [tabindex="0"]`,La=e=>e.querySelector(sS),fr=(e,t)=>{if(t===null||!be(e))return null;let r=e.closest(wa);return r===null||r===t||!t.contains(r)?null:r},Pr=e=>Hu(e.getAttribute(_a)),pn=e=>Hu(e.getAttribute("aria-posinset")),Bu=e=>{let t=e.closest(wa),r=t===null?null:pn(t);return r===null?null:r-1},io=(e,t)=>{if(e===null)return null;let r=Pr(e);if(r===null)return null;let n=pn(e),o=Ee(t,r,n===null?null:n-1);return o===-1?null:{reportHubId:r,index:o}},Uu=(e,t)=>{if(!be(e))return!1;let r=e.closest(oS);return r!==null&&r!==t&&t.contains(r)};import{createContext as Vu}from"react";var Qt=Vu(0),mn=-1,Wu=(e,t)=>t.phase==="complete"?e:t.totalCount===null?mn:Math.max(e,t.totalCount),Zt=Vu(-1);import{clsx as iS}from"clsx";import{twMerge as lS}from"tailwind-merge";function A(...e){return lS(iS(e))}var Ce=e=>{let t=new Map;return r=>{let n=r===void 0?"":r,o=t.get(n);if(o!==void 0)return o;let a=A(e,n);return t.set(n,a),a}};import{useCallback as Ku,useMemo as dS,useSyncExternalStore as cS}from"react";var zu="(prefers-reduced-motion: reduce)",$u=e=>Xe(e).matchMedia(zu).matches?"instant":"smooth",uS=Object.freeze({...mi,startVelocityThreshold:Number.POSITIVE_INFINITY}),fn=e=>e?uS:mi,pS=()=>!1,mS=()=>{},yn=e=>{let t=dS(()=>e===null?null:Xe(e).matchMedia(zu),[e]),r=Ku(o=>t===null?mS:(t.addEventListener("change",o),()=>t.removeEventListener("change",o)),[t]),n=Ku(()=>t===null?!1:t.matches,[t]);return cS(r,n,pS)};import{useSyncExternalStore as fS}from"react";import{jsx as Ni}from"react/jsx-runtime";var Na=()=>{let e={label:"",isWheelScrollActive:!1},t=new Set,r=n=>{e=n;for(let o of[...t])o()};return{getState:()=>e,setLabel:n=>{n!==e.label&&r({...e,label:n})},setWheelScrollActive:n=>{n!==e.isWheelScrollActive&&r({...e,isWheelScrollActive:n})},subscribe:n=>(t.add(n),()=>{t.delete(n)})}},ju=16,yS=A(Id,"border-slate-200 bg-white text-slate-700 text-xs shadow-md shadow-slate-400/30 dark:border-slate-700 dark:bg-slate-900/90 dark:text-slate-100"),hS=(e,t)=>e==="vertical"?{top:0,left:-ju,transform:`translate(-100%, calc(${t}px - 50%))`}:{top:-ju,left:0,transform:`translate(calc(${t}px - 50%), -100%)`},Oa=({orientation:e,thumbCenter:t,isDragging:r,isTapScrollActive:n,store:o})=>{let{label:a,isWheelScrollActive:s}=fS(o.subscribe,o.getState,o.getState);return a.trim()&&(r||n||s)?Ni("div",{className:"pointer-events-none absolute flex items-center",style:hS(e,t),children:Ni("div",{className:yS,children:Ni("span",{className:"whitespace-nowrap font-semibold text-slate-800 dark:text-slate-100",children:a.trim()})})}):null};import{createContext as RS,useContext as bS,useLayoutEffect as SS,useRef as gS}from"react";var Oi=RS(null),Ma=({items:e,scroller:t,readTopReportId:r})=>{let n=bS(Oi),o=n===null?null:n.request,a=gS(o===null?0:o.seq);SS(()=>{if(!(n===null||o===null||o.seq===a.current)){if(a.current=o.seq,o.kind==="restore"){let s=n.slot.preSearchTopReportId;n.slot.preSearchTopReportId=null;let i=s===null?-1:yt(e,s);i!==-1&&t.toIndex(i,{align:"top"});return}o.kind==="enter"&&(n.slot.preSearchTopReportId=r()),e.length>0&&t.toIndex(0,{align:"top"})}},[n,o,e,t,r])};import{memo as py,useCallback as $r,useContext as RA,useDeferredValue as bA,useEffect as cy,useId as SA,useLayoutEffect as uy,useMemo as Nn,useRef as _s}from"react";var ka="legacy-",ES=e=>`${ka}${e}`,Gu=(e,t,r,n)=>{if(typeof n!="string"||n.trim()==="")throw we("mergeComments: unknownAuthorName","a non-blank string",n);let o=e.map((s,i)=>({id:ES(i),authorName:s.name||n,content:s.text||"",isMine:!1,color:s.color||void 0,isLegacy:!0,isAuthorUnknown:!s.name})),a=t.map(s=>({id:s.id,authorName:s.userName||n,content:s.content??"",createdAt:s.createdAt??"",isMine:r?s.userId===r:s.isMine,isLegacy:!1,isAuthorUnknown:!s.userName}));return[...o,...a]},Yu=e=>{if(!e)return"text-gray-700 dark:text-gray-300";let t=e.toLowerCase();return t.includes("red")||t.includes("\u8D64")?"text-red-600 dark:text-red-400":t.includes("green")||t.includes("\u7DD1")?"text-green-600 dark:text-green-400":t.includes("blue")||t.includes("\u9752")?"text-blue-600 dark:text-blue-400":t.includes("yellow")||t.includes("\u9EC4")?"text-yellow-600 dark:text-yellow-400":t.includes("orange")||t.includes("\u6A59")?"text-orange-500 dark:text-orange-400":"text-gray-700 dark:text-gray-300"};var TS=Object.freeze(["subject","content","author","employeeName","updatedBy","category","creationCategory","customerName"]),ae=Object.freeze({field:e=>e,interviewer:(e,t)=>`interviewer:${e}:${t}`,attachment:e=>`attachment:${e}`,comment:(e,t)=>`comment:${e}:${t}`}),DS=e=>e.startsWith(ka)?rn(e.slice(ka.length))!==null:Hc(e)!==null,hn=e=>{if(TS.includes(e))return!0;let t=e.split(":");switch(t[0]){case"interviewer":return t.length===3&&rn(t[1])!==null&&(t[2]==="name"||t[2]==="affiliation");case"attachment":return t.length===2&&rn(t[1])!==null;case"comment":return t.length===3&&DS(t[1])&&(t[2]==="author"||t[2]==="content");default:return!1}},AS=16777619,xS=2166136261,CS=(e,t,r,n)=>{let o=e;for(let a=r;a<n;a++)o^=t.charCodeAt(a),o=Math.imul(o,AS);return o>>>0},Mi=e=>CS(xS,e,0,e.length),IS=String.fromCodePoint(3),vS=String.fromCodePoint(2),wS=String.fromCodePoint(1),qu=e=>Mi(e.map(t=>t.map(r=>r.map(n=>`${n.tier}${n.text}`).join(IS)).join(vS)).join(wS));import{createContext as sm,useCallback as nm,useEffect as om,useLayoutEffect as am,useMemo as sl,useRef as ol,useState as Pt}from"react";import{z as ye}from"zod/v3";var Xu=Object.freeze(["create","update","publish","delete","toggleStar","toggleRead","addComment","deleteComment","clearCache"]);var at=Object.freeze({intent:"intent",clientTempId:"clientTempId",businessDate:"businessDate",operationTimestamp:"operationTimestamp",reportHubId:"reportHubId",title:"title",content:"content",isStarred:"isStarred",isRead:"isRead",commentId:"commentId"}),Pa=e=>{let t=new FormData;if(t.append(at.intent,e.intent),e.intent==="clearCache"||(t.append(at.clientTempId,e.clientTempId),e.businessDate!==null&&t.append(at.businessDate,e.businessDate),e.operationTimestamp!==null&&t.append(at.operationTimestamp,String(e.operationTimestamp)),e.intent==="create"))return t;switch(t.append(at.reportHubId,String(e.reportHubId)),e.intent){case"update":return e.changes.title!==void 0&&t.append(at.title,e.changes.title),e.changes.content!==void 0&&t.append(at.content,e.changes.content),t;case"publish":case"delete":return t;case"toggleStar":return t.append(at.isStarred,String(e.value)),t;case"toggleRead":return t.append(at.isRead,String(e.value)),t;case"addComment":return t.append(at.content,e.content),t;case"deleteComment":return t.append(at.commentId,String(e.commentId)),t}},_S=()=>{let e=De,t=ye.string().regex(ra),r=ye.literal("OK"),n=ye.object({isStarred:ye.boolean(),isRead:ye.boolean()}),o=ye.number().int().nonnegative().nullable();return{create:ye.object({status:r,intent:ye.literal("create"),reportHubId:e,clientTempId:t,report:_t}),update:ye.object({status:r,intent:ye.literal("update"),reportHubId:e,clientTempId:t}),publish:ye.object({status:r,intent:ye.literal("publish"),reportHubId:e,clientTempId:t,report:_t.nullable()}),delete:ye.object({status:r,intent:ye.literal("delete"),reportHubId:e,clientTempId:t}),toggleStar:ye.object({status:r,intent:ye.literal("toggleStar"),reportHubId:e,clientTempId:t,updatedStatus:n,operationTimestamp:o}),toggleRead:ye.object({status:r,intent:ye.literal("toggleRead"),reportHubId:e,clientTempId:t,updatedStatus:n,operationTimestamp:o}),addComment:ye.object({status:r,intent:ye.literal("addComment"),reportHubId:e,clientTempId:t,newComment:oi}),deleteComment:ye.object({status:r,intent:ye.literal("deleteComment"),reportHubId:e,clientTempId:t,deletedCommentId:De}),clearCache:ye.object({status:r,intent:ye.literal("clearCache")})}},ki=null,LS=()=>(ki===null&&(ki=_S()),ki),Qu=(e,t)=>{let r=LS()[e].safeParse(t);return r.success?{result:r.data}:{mismatch:aa(r.error)}};import{useState as kS}from"react";var Fa=e=>{let t=e>>>0,r=(e-t)/4294967296|0;return Math.imul(t^Math.imul(r,1540483477),2654435761)>>>0},Jt=class{constructor(t){this.count=0;this.idAt=t,this.bits=4,this.slots=new Int32Array(16).fill(-1)}get size(){return this.count}get capacity(){return this.slots.length}find(t){let r=this.slotOf(t);return r===-1?-1:this.slots[r]}set(t,r){let n=this.slotOf(t);if(n!==-1){this.slots[n]=r;return}(this.count+1)*2>this.slots.length&&this.grow();let o=this.slots.length-1,a=Fa(t)>>>32-this.bits;for(;this.slots[a]!==-1;)a=a+1&o;this.slots[a]=r,this.count+=1}delete(t){let r=this.slotOf(t);if(r===-1)return!1;let n=this.slots.length-1,o=32-this.bits;this.slots[r]=-1,this.count-=1;for(let a=r+1&n;this.slots[a]!==-1;a=a+1&n){let s=Fa(this.idAt(this.slots[a]))>>>o;(a-s&n)>=(a-r&n)&&(this.slots[r]=this.slots[a],this.slots[a]=-1,r=a)}return!0}clear(){this.slots.fill(-1),this.count=0}slotOf(t){let r=this.slots.length-1;for(let n=Fa(t)>>>32-this.bits;this.slots[n]!==-1;n=n+1&r)if(this.idAt(this.slots[n])===t)return n;return-1}grow(){let t=this.slots;this.bits+=1,this.slots=new Int32Array(1<<this.bits).fill(-1);let r=this.slots.length-1,n=32-this.bits;for(let o=0;o<t.length;o++){let a=t[o];if(a===-1)continue;let s=Fa(this.idAt(a))>>>n;for(;this.slots[s]!==-1;)s=s+1&r;this.slots[s]=a}}};var NS=e=>e.appended instanceof Lt&&e.replaced.previous instanceof Lt&&e.replaced.next instanceof Lt&&e.removed instanceof Lt,Fi=e=>{if(NS(e))return e;throw new Error(`[daily-report] The ids stream change from revision ${e.base} to ${e.revision} holds a row batch the package did not build`)},Ha=1,Ba=2,Fr=3,Zu=16,OS=8192,MS=Float64Array.BYTES_PER_ELEMENT+2*Uint32Array.BYTES_PER_ELEMENT+3*Uint8Array.BYTES_PER_ELEMENT,Pi=e=>{let t=new ArrayBuffer(e*MS),r=e*Float64Array.BYTES_PER_ELEMENT,n=r+2*e*Uint32Array.BYTES_PER_ELEMENT;return{ids:new Float64Array(t,0,e),firstDates:new Uint32Array(t,r,e),lastDates:new Uint32Array(t,r+e*Uint32Array.BYTES_PER_ELEMENT,e),states:new Uint8Array(t,n,e),firstSources:new Uint8Array(t,n+e,e),lastSources:new Uint8Array(t,n+2*e,e)}},Ju=Object.freeze({previous:ft,next:ft}),Hi=()=>{let e=0,t=Pi(Zu),r=d=>t.ids[d],n=new Jt(r),o=()=>{let d=Pi(t.ids.length*2);d.ids.set(t.ids),d.firstDates.set(t.firstDates),d.lastDates.set(t.lastDates),d.states.set(t.states),d.firstSources.set(t.firstSources),d.lastSources.set(t.lastSources),t=d},a=(d,c)=>{e===t.ids.length&&o();let u=e;return e+=1,t.ids[u]=d,t.states[u]=c,n.set(d,u),u},s=(d,c,u)=>{let p=n.find(d);if(p===-1){let h=a(d,Ha);t.lastDates[h]=c,t.lastSources[h]=u;return}if(t.states[p]!==Fr)throw new Error(`[daily-report] The ids stream list took report ${d}, which it already holds`);t.states[p]=Ba,t.lastDates[p]=c,t.lastSources[p]=u},i=(d,c,u,p,h)=>{let f=n.find(d);if(f===-1)f=a(d,Ba),t.firstDates[f]=c,t.firstSources[f]=u;else if(t.states[f]===Fr)throw new Error(`[daily-report] The ids stream list changed report ${d}, which it no longer holds`);t.lastDates[f]=p,t.lastSources[f]=h},l=(d,c,u)=>{let p=n.find(d);if(p===-1){let h=a(d,Fr);t.firstDates[h]=c,t.firstSources[h]=u;return}if(t.states[p]===Ha){n.delete(d),t.states[p]=0;return}if(t.states[p]===Fr)throw new Error(`[daily-report] The ids stream list dropped report ${d}, which it no longer holds`);t.states[p]=Fr};return{add:s,change:i,remove:l,fold:d=>{let{removed:c,appended:u,replaced:p}=Fi(d),{previous:h,next:f}=p;for(let y=0;y<c.length;y++)l(c.ids[y],c.businessDateCodes[y],c.sourceTypeCodes[y]);for(let y=0;y<f.length;y++)i(f.ids[y],h.businessDateCodes[y],h.sourceTypeCodes[y],f.businessDateCodes[y],f.sourceTypeCodes[y]);for(let y=0;y<u.length;y++)s(u.ids[y],u.businessDateCodes[y],u.sourceTypeCodes[y])},isEmpty:()=>n.size===0,build:(d,c)=>{let u=0,p=0,h=0;for(let b=0;b<e;b++){let E=t.states[b];E===Ha?u+=1:E===Ba?p+=1:E===Fr&&(h+=1)}let f=u+2*p+h;if(f===0)return{base:d,revision:c,appended:ft,replaced:Ju,removed:ft};let y=an(f),S=0,m=u,g=m+p,R=g+p;for(let b=0;b<e;b++){let E=t.states[b];E===Ha?(y.ids[S]=t.ids[b],y.businessDateCodes[S]=t.lastDates[b],y.sourceTypeCodes[S]=t.lastSources[b],S+=1):E===Ba?(y.ids[m]=t.ids[b],y.businessDateCodes[m]=t.firstDates[b],y.sourceTypeCodes[m]=t.firstSources[b],m+=1,y.ids[g]=t.ids[b],y.businessDateCodes[g]=t.lastDates[b],y.sourceTypeCodes[g]=t.lastSources[b],g+=1):E===Fr&&(y.ids[R]=t.ids[b],y.businessDateCodes[R]=t.firstDates[b],y.sourceTypeCodes[R]=t.firstSources[b],R+=1)}return{base:d,revision:c,appended:Xt(y,0,u),replaced:p===0?Ju:{previous:Xt(y,u,p),next:Xt(y,u+p,p)},removed:Xt(y,u+2*p,h)}},reset:()=>{if(e=0,t.ids.length<=OS){n.clear();return}t=Pi(Zu),n=new Jt(r)}}},ep=(e,t,r)=>{let n=Hi();for(let o of e)n.fold(o);return n.build(t,r)},tp=(e,t)=>{let r=e.findIndex(n=>n.base===t);if(r===-1)return null;for(let n=r+1;n<e.length;n++)if(e[n].base!==e[n-1].revision)return null;return e.slice(r)};var PS={items:Ia,held:new Map,hidden:new Map,revision:null,settled:!1},Bi=(e,t,r)=>{let n=0,o=e.length;for(;n<o;){let a=n+o>>1;cn(Mr(e,a),dn(e,a),t,r)<0?n=a+1:o=a}return n<e.length&&Mr(e,n)===t?n:-1},Ua=(e,t)=>Bi(e,t.reportHubId,Nt(t.businessDate)),Ui=(e,t,r,n)=>{let o=n,a=e.length;for(;o<a;){let s=o+a>>1;cn(Mr(e,s),dn(e,s),t,r)<=0?o=s+1:a=s}return o},FS=(e,t)=>{if(t.length===0)return[];let r=e.length-1;if(e.length===0||cn(Mr(e,r),dn(e,r),t.ids[0],t.businessDateCodes[0])<0)return new Array(t.length).fill(e.length);let n=[],o=0;for(let a=0;a<t.length;a++)o=Ui(e,t.ids[a],t.businessDateCodes[a],o),n.push(o);return n},HS=e=>{for(let t=1;t<e.length;t++)if(cn(e.ids[t-1],e.businessDateCodes[t-1],e.ids[t],e.businessDateCodes[t])>=0)return!1;return!0},np=e=>{if(HS(e))return e;let t=Array.from({length:e.length},(n,o)=>o);t.sort((n,o)=>cn(e.ids[n],e.businessDateCodes[n],e.ids[o],e.businessDateCodes[o]));let r=new Et(e.length);for(let n of t)r.pushFrom(e,n);return r.build()},op=(e,t,r,n)=>{let o=Cu(t.readRows()),a=new Jt(d=>o.ids[d]);for(let d=0;d<o.length;d++)a.set(o.ids[d],d);let s=new Et(o.length+e.held.size),i=new Map;for(let d=0;d<o.length;d++){let c=o.ids[d];n.has(c)?i.set(c,o.itemAt(d)):s.pushFrom(o,d)}let l=new Map;for(let d of e.items.chunks)for(let c=0;c<d.length;c++){let u=d.ids[c];if(a.find(u)!==-1||n.has(u))continue;let p=e.held.get(u),h=p===void 0?Number.NEGATIVE_INFINITY:p.since;r&&u>0&&t.itemsRevision>h||(l.set(u,{item:p===void 0?Ca(u,d.businessDateCodes[c],d.sourceTypeCodes[c]):p.item,since:h}),s.pushFrom(d,c))}return{items:wu(np(s.build())),held:l,hidden:i,revision:t.itemsRevision,settled:r}},BS=(e,t,r,n)=>{let o=e.revision;if(o===t.itemsRevision&&e.settled===r)return e;let a=o===null?null:o===t.itemsRevision?[]:tp(t.itemsChanges,o);if(o===null||a===null)return op(e,t,r,n);let s=e.items,i=[],l=[],d=a.length===0?null:a.length===1?Fi(a[0]):ep(a,o,t.itemsRevision),c=new Et(d===null?0:d.appended.length+d.replaced.next.length),u=null,p=()=>(u===null&&(u=new Map(e.held)),u),h=null,f=()=>(h===null&&(h=new Map(e.hidden)),h);if(d!==null){let{appended:g,replaced:R,removed:b}=d;for(let T=0;T<b.length;T++){let v=b.ids[T];if(e.hidden.has(v)&&f().delete(v),e.held.has(v))continue;let I=Bi(s,v,b.businessDateCodes[T]);I!==-1&&(r||n.has(v)?i.push(I):p().set(v,{item:Ca(v,dn(s,I),_i(s,I)),since:Number.NEGATIVE_INFINITY}))}let E=(T,v,I)=>{let O=T.ids[v],k=T.businessDateCodes[v],F=T.sourceTypeCodes[v],D=e.held.get(O);D!==void 0&&p().delete(O);let C=D===void 0?I:Nt(D.item.businessDate),x=C===-1?-1:Bi(s,O,C);if(n.has(O)){x!==-1&&i.push(x),f().set(O,T.itemAt(v));return}if((h===null?e.hidden:h).has(O)&&f().delete(O),x!==-1&&dn(s,x)===k){_i(s,x)!==F&&l.push({index:x,id:O,businessDateCode:k,sourceTypeCode:F});return}x!==-1&&i.push(x),c.push(O,k,F)};for(let T=0;T<R.next.length;T++)E(R.next,T,R.previous.businessDateCodes[T]);for(let T=0;T<g.length;T++)E(g,T,-1)}let y=t.itemsRevision;if(r)for(let[g,R]of u===null?e.held:u){if(g<=0||y<=R.since)continue;let b=Ua(s,R.item);b!==-1&&i.push(b),p().delete(g)}let S=np(c.build());return{items:un(s,{removals:i,replacements:l,additions:S,insertions:FS(s,S)}),held:u===null?e.held:u,hidden:h===null?e.hidden:h,revision:y,settled:r}},rp=new WeakMap,US=(e,t,r,n)=>{let o=rp.get(e);if(o!==void 0&&o.revision===t.itemsRevision&&o.changes===t.itemsChanges&&o.settled===r&&o.tombstones===n)return o.rows;let a=BS(e,t,r,n);return rp.set(e,{revision:t.itemsRevision,changes:t.itemsChanges,settled:r,tombstones:n,rows:a}),a},ap=(e,t,r)=>{let[n,o]=kS(()=>op(PS,e,t,r));return(n.revision!==e.itemsRevision||n.settled!==t)&&o(a=>US(a,e,t,r)),[n,o]},Va=(e,t,r)=>{if(e.hidden.has(t.reportHubId))return Vi(e,t.reportHubId);if(e.held.has(t.reportHubId)||Ua(e.items,t)!==-1||so(e.items,t.reportHubId)!==-1)return e;let n=un(e.items,{...kr,additions:Ai([t]),insertions:[Ui(e.items,t.reportHubId,Nt(t.businessDate),0)]}),o=new Map(e.held);return o.set(t.reportHubId,{item:t,since:r}),{...e,items:n,held:o}},Vi=(e,t)=>{let r=e.hidden.get(t);if(r===void 0)return e;let n=new Map(e.hidden);return n.delete(t),{...e,items:un(e.items,{...kr,additions:Ai([r]),insertions:[Ui(e.items,r.reportHubId,Nt(r.businessDate),0)]}),hidden:n}},Hr=(e,t)=>{let r=e.held.get(t);if(r===void 0)return e;let n=Ua(e.items,r.item),o=new Map(e.held);return o.delete(t),{...e,items:un(e.items,n===-1?kr:{...kr,removals:[n]}),held:o}},sp=(e,t)=>{let r=e.held.get(t.reportHubId),n=Ua(e.items,r===void 0?t:r.item);if(r===void 0&&n===-1)return e;let o=new Map(e.held);return o.delete(t.reportHubId),{...e,items:un(e.items,n===-1?kr:{...kr,removals:[n]}),held:o}},ip=e=>({...e,revision:null});import{startTransition as eg,useLayoutEffect as tg,useState as rg,useSyncExternalStore as po}from"react";var lp=e=>{let t=new URLSearchParams;return e.cursor!==null&&(t.set(Ae.cursorReportHubId,String(e.cursor.reportHubId)),e.cursor.businessDate!==null&&t.set(Ae.cursorBusinessDate,e.cursor.businessDate)),e.snapshot!==null&&t.set(Ae.cursorSnapshot,e.snapshot),e.forceRefresh&&t.set(Ae.forceRefresh,"true"),t};var lo=1,VS=2,WS=1024,Rn=1024,Wa=class{constructor(){this.used=0;this.holes=0;this.ids=new Float64Array(Rn);this.dates=new Uint32Array(Rn);this.sources=new Uint8Array(Rn);this.flags=new Uint8Array(Rn);this.positions=new Jt(t=>this.ids[t])}get size(){return this.positions.size}find(t){return this.positions.find(t)}businessDateCodeAt(t){return this.dates[t]}sourceTypeCodeAt(t){return this.sources[t]}itemAt(t){return{reportHubId:this.ids[t],businessDate:qt(this.dates[t]),sourceType:Or(this.sources[t])}}add(t,r,n){this.used===this.ids.length&&this.grow();let o=this.used;this.ids[o]=t,this.dates[o]=r,this.sources[o]=n,this.flags[o]=lo,this.used+=1,this.positions.set(t,o)}replace(t,r,n){this.dates[t]=r,this.sources[t]=n}delete(t){this.positions.delete(this.ids[t]),this.flags[t]=0,this.holes+=1,this.holes>=WS&&this.holes>this.positions.size&&this.compact()}markSeen(t){let r=this.positions.find(t);r!==-1&&(this.flags[r]|=VS)}clearSeen(){for(let t=0;t<this.used;t++)this.flags[t]&=lo}unseenIds(){let t=[];for(let r=0;r<this.used;r++)this.flags[r]===lo&&t.push(this.ids[r]);return t}rows(){let t=new Et(this.positions.size);for(let r=0;r<this.used;r++)(this.flags[r]&lo)!==0&&t.push(this.ids[r],this.dates[r],this.sources[r]);return t.build()}grow(){this.resize(this.ids.length*2)}resize(t){let r=new Float64Array(t);r.set(this.ids.subarray(0,this.used));let n=new Uint32Array(t);n.set(this.dates.subarray(0,this.used));let o=new Uint8Array(t);o.set(this.sources.subarray(0,this.used));let a=new Uint8Array(t);a.set(this.flags.subarray(0,this.used)),this.ids=r,this.dates=n,this.sources=o,this.flags=a}compact(){let t=0;for(let r=0;r<this.used;r++)(this.flags[r]&lo)!==0&&(this.ids[t]=this.ids[r],this.dates[t]=this.dates[r],this.sources[t]=this.sources[r],this.flags[t]=this.flags[r],t+=1);this.flags.fill(0,t,this.used),this.used=t,this.holes=0,this.positions.clear();for(let r=0;r<t;r++)this.positions.set(this.ids[r],r);this.ids.length>Math.max(Rn,t*4)&&this.resize(Math.max(Rn,t*2))}};var dp=()=>{let e=new TextDecoder,t=[],r=n=>{let o=[],a=0;for(let s=n.indexOf(`
5
- `);s!==-1;s=n.indexOf(`
6
- `,a)){let i=n.slice(a,s);o.push(t.length===0?i:[...t,i].join("")),t=[],a=s+1}return a<n.length&&t.push(n.slice(a)),o};return{push:n=>r(e.decode(n,{stream:!0})),end:()=>{let n=r(e.decode()),o=t.join("");return t=[],o===""?n:[...n,o]}}};var KS=e=>({debug:e,info:e,warn:e,error:e}),zS=50,$S=32,cp=0,jS=()=>(cp+=1,cp),GS=1e3,YS=3e4,qS=6,XS=3e4,up=Symbol("read-stall"),QS=Object.freeze({reading:()=>{},stalled:()=>!1,stop:()=>{}}),ZS="/daily_report/api",JS=e=>typeof e=="object"&&e!==null&&e.name==="AbortError",Ka=class{constructor(t={}){this.rows=new Wa;this.listeners=new Set;this.state={loadedCount:0,itemsRevision:0,itemsChanges:[],totalCount:null,phase:"idle",isRevalidating:!1,hasCompletedOnce:!1,completedAt:null,error:null,streamAnchor:null};this.streamAnchorRevision=0;this.lastCursor=null;this.lastSnapshot=null;this.consecutiveFailures=0;this.started=!1;this.disposed=!1;this.loopGeneration=0;this.activeAbortController=null;this.externalRemovalTombstones=new Set;this.pendingForceRefresh=!1;this.wakeRetryWait=null;this.handleOnline=()=>this.wakeRetryWait?.();this.publishCoalesceTimer=null;this.lastItemsPublishAt=Number.NEGATIVE_INFINITY;this.pendingItemsChange=Hi();this.apiBasePath=t.apiBasePath??ZS,this.fetchFn=t.fetchFn??((r,n)=>fetch(r,n)),this.setTimeoutFn=t.setTimeoutFn??((r,n)=>setTimeout(r,n)),this.clearTimeoutFn=t.clearTimeoutFn??(r=>clearTimeout(r)),this.warn=pt(t.warn===void 0?void 0:KS(t.warn),1,"IdsStream").warn,this.readStallTimeoutMs=t.readStallTimeoutMs??XS,this.publishCoalesceMs=t.publishCoalesceMs??zS,this.now=t.now??(()=>performance.now()),typeof window<"u"&&window.addEventListener("online",this.handleOnline)}getState(){return this.state}subscribe(t){return this.listeners.add(t),()=>this.listeners.delete(t)}start(){this.started||this.disposed||(this.started=!0,this.runStreamLoop({revalidate:!1,forceRefresh:!1}))}retry(){this.disposed||this.state.phase!=="failed"||(this.consecutiveFailures=0,this.runStreamLoop({revalidate:this.state.hasCompletedOnce,forceRefresh:!1}))}refresh(t={}){if(!this.disposed){if(this.state.phase==="failed"){this.consecutiveFailures=0,this.runStreamLoop({revalidate:this.state.hasCompletedOnce,forceRefresh:t.forceRefresh??!1});return}if(this.state.phase==="complete"){if(this.state.isRevalidating){t.forceRefresh&&(this.pendingForceRefresh=!0);return}this.lastCursor=null,this.consecutiveFailures=0,this.runStreamLoop({revalidate:!0,forceRefresh:t.forceRefresh??!1})}}}resync(){if(!this.disposed){if(this.state.phase==="streaming"||this.state.phase==="retrying"){this.pendingForceRefresh=!0;return}this.refresh({forceRefresh:!0})}}applyExternalUpsert(t){if(this.disposed)return;this.externalRemovalTombstones.delete(t.reportHubId);let r=this.rows.find(t.reportHubId),n=r===-1?void 0:this.rows.itemAt(r),o=t.sourceType??n?.sourceType,a=this.putItem(t.reportHubId,Nt(t.businessDate),oo(o));this.rows.markSeen(t.reportHubId),a&&this.schedulePublishItems()}applyExternalRemoval(t){this.disposed||(this.externalRemovalTombstones.add(t),this.deleteItem(t)&&this.schedulePublishItems())}has(t){return this.rows.find(t)!==-1}readRows(){let t=this.rows.rows();if(this.pendingItemsChange.isEmpty())return t;let{appended:r,replaced:n,removed:o}=this.pendingItemsChange.build(this.state.itemsRevision,this.state.itemsRevision),a=new Set;for(let l=0;l<r.length;l++)a.add(r.ids[l]);let s=new Map;for(let l=0;l<n.previous.length;l++)s.set(n.previous.ids[l],l);let i=new Et(t.length+o.length);for(let l=0;l<t.length;l++){let d=t.ids[l];if(a.has(d))continue;let c=s.get(d);c===void 0?i.pushFrom(t,l):i.pushFrom(n.previous,c)}for(let l=0;l<o.length;l++)i.pushFrom(o,l);return i.build()}dispose(){this.disposed=!0,this.loopGeneration+=1,this.activeAbortController?.abort(),this.cancelScheduledPublishItems(),this.wakeRetryWait?.(),typeof window<"u"&&window.removeEventListener("online",this.handleOnline),this.listeners.clear()}async runStreamLoop(t){let r=++this.loopGeneration;for(this.activeAbortController?.abort(),this.wakeRetryWait?.(),this.lastCursor===null&&(this.rows.clearSeen(),this.externalRemovalTombstones.clear(),this.lastSnapshot=null),t.forceRefresh&&(this.pendingForceRefresh=!1),this.publish({phase:t.revalidate?this.state.phase:"streaming",isRevalidating:t.revalidate,error:null});!this.disposed&&r===this.loopGeneration;){let n=await this.streamOnce(t.forceRefresh);if(this.disposed||r!==this.loopGeneration)return;if(n.kind==="complete"){this.pruneUnseenItems(),this.consecutiveFailures=0,this.cancelScheduledPublishItems();let o=this.takePendingItems();this.publish({phase:"complete",isRevalidating:!1,hasCompletedOnce:!0,completedAt:Date.now(),error:null,...o}),this.pendingForceRefresh&&!this.disposed&&(this.pendingForceRefresh=!1,this.lastCursor=null,this.runStreamLoop({revalidate:!0,forceRefresh:!0}));return}if(n.kind==="aborted")return;if(n.kind==="auth-required"){this.publish({phase:"auth-required",isRevalidating:!1});return}if(this.consecutiveFailures+=1,this.consecutiveFailures>=qS){t.revalidate&&this.state.hasCompletedOnce?(this.warn("revalidation gave up:",n.error.message),this.pendingForceRefresh=!1,this.publish({isRevalidating:!1,error:n.error})):this.publish({phase:"failed",isRevalidating:!1,error:n.error});return}this.publish({phase:t.revalidate?this.state.phase:"retrying",error:n.error}),await this.waitBeforeRetry(Math.min(GS*2**(this.consecutiveFailures-1),YS))}}pruneUnseenItems(){let t=this.rows.unseenIds();this.rows.clearSeen();for(let r of t)this.deleteItem(r)}async streamOnce(t){let r=new AbortController;this.activeAbortController=r;try{let n=this.fetchFn(this.buildStreamUrl(t),{signal:r.signal,headers:{Accept:"application/x-ndjson"},cache:"no-store"}),o=this.readStallTimeoutMs<=0?await n:await this.awaitResponseHeaders(n);if(o===up)return r.abort(),{kind:"retryable",error:new Error("Stream stalled: no response headers within timeout")};if(o.status===401||o.status===403)return{kind:"auth-required"};if(!(o.ok&&o.body))return{kind:"retryable",error:new Error(`ids stream HTTP ${o.status}`)};let a=o.body.getReader(),s=dp(),i=this.watchReadSilence(a),l=!1,d=!1;try{for(;;){i.reading();let c=await a.read();if(i.stalled())return r.abort(),{kind:"retryable",error:new Error("Stream stalled: no data within timeout")};let u=c.done?s.end():s.push(c.value),p=!1,h=!1;for(let f of u){if(f.trim()==="")continue;let y;try{y=JSON.parse(f)}catch{h=!0;break}let S=si(y);if(S==="unknown"){this.warn("skipped line of unknown kind");continue}if(S==="error"){l=!0;continue}let m=_c(y);if(m===null){h=!0;break}p=this.absorbChunkLine(m)||p,m.total!==null&&m.total!==this.state.totalCount&&this.publish({totalCount:m.total}),m.resumeCursor!==null&&(this.lastCursor=m.resumeCursor),m.isLast&&(d=!0)}if(p&&(this.consecutiveFailures=0,this.schedulePublishItems()),h)return this.warn("rejected a malformed line"),r.abort(),{kind:"retryable",error:new Error("ids stream line rejected")};if(c.done)break}}finally{i.stop()}return l?{kind:"retryable",error:new Error("Stream interrupted by server error")}:d?{kind:"complete"}:{kind:"retryable",error:new Error("Stream ended before completion")}}catch(n){return JS(n)?{kind:"aborted"}:{kind:"retryable",error:n instanceof Error?n:new Error(String(n))}}}awaitResponseHeaders(t){return new Promise((r,n)=>{let o=this.setTimeoutFn(()=>r(up),this.readStallTimeoutMs*3);t.then(a=>{this.clearTimeoutFn(o),r(a)},a=>{this.clearTimeoutFn(o),n(a)})})}watchReadSilence(t){if(this.readStallTimeoutMs<=0)return QS;let r=this.readStallTimeoutMs,n=this.now(),o=!1,a=!1,s=null,i=()=>{if(s=null,a)return;let l=this.now()-n;if(l<r){s=this.setTimeoutFn(i,r-l);return}o=!0,t.cancel().catch(()=>{})};return s=this.setTimeoutFn(i,r),{reading:()=>{n=this.now()},stalled:()=>o,stop:()=>{a=!0,s!==null&&this.clearTimeoutFn(s),s=null}}}absorbChunkLine(t){t.restarted&&(this.lastCursor=null,this.lastSnapshot=null,this.rows.clearSeen(),this.externalRemovalTombstones.clear()),t.snapshot!==null&&(this.lastSnapshot=t.snapshot),this.absorbStreamAnchor(t.streamAnchor);let{provisional:r}=t,n=!1,o=null,a=Nt(null),s,i=oo(void 0),l=(d,c,u)=>{this.externalRemovalTombstones.has(d)||(c!==o&&(o=c,a=Nt(c)),u!==s&&(s=u,i=oo(u)),this.putItem(d,a,i)&&(n=!0),r||this.rows.markSeen(d))};return Lc(t.rows,l),n}putItem(t,r,n){let o=this.rows.find(t);if(o===-1)return this.rows.add(t,r,n),this.pendingItemsChange.add(t,r,n),!0;let a=this.rows.businessDateCodeAt(o),s=this.rows.sourceTypeCodeAt(o);return a===r&&s===n?!1:(this.rows.replace(o,r,n),this.pendingItemsChange.change(t,a,s,r,n),!0)}deleteItem(t){let r=this.rows.find(t);return r===-1?!1:(this.pendingItemsChange.remove(t,this.rows.businessDateCodeAt(r),this.rows.sourceTypeCodeAt(r)),this.rows.delete(r),!0)}absorbStreamAnchor(t){if(t.kind!=="absent"){if(t.kind==="malformed"){this.warn(`skipped a malformed streamAnchor: ${String(t.received)}`);return}this.streamAnchorRevision+=1,this.publish({streamAnchor:{lastEventId:t.value,revision:this.streamAnchorRevision}})}}takePendingItems(){if(this.pendingItemsChange.isEmpty())return{};this.lastItemsPublishAt=this.now();let t=jS(),r=this.pendingItemsChange.build(this.state.itemsRevision,t);return this.pendingItemsChange.reset(),{loadedCount:this.rows.size,itemsRevision:t,itemsChanges:[...this.state.itemsChanges.slice(1-$S),r]}}publishItems(){let t=this.takePendingItems();t.itemsRevision!==void 0&&this.publish(t)}schedulePublishItems(){if(this.publishCoalesceMs<=0){this.publishItems();return}let t=this.now()-this.lastItemsPublishAt;if(t>=this.publishCoalesceMs){this.publishItems();return}this.publishCoalesceTimer===null&&(this.publishCoalesceTimer=this.setTimeoutFn(()=>{this.publishCoalesceTimer=null,this.publishItems()},this.publishCoalesceMs-t))}cancelScheduledPublishItems(){this.publishCoalesceTimer!==null&&(this.clearTimeoutFn(this.publishCoalesceTimer),this.publishCoalesceTimer=null)}publish(t){this.state={...this.state,...t};for(let r of this.listeners)r()}buildStreamUrl(t){let r=lp({cursor:this.lastCursor,snapshot:this.lastCursor===null?null:this.lastSnapshot,forceRefresh:t}).toString();return`${this.apiBasePath}/${oa}${r?`?${r}`:""}`}waitBeforeRetry(t){return new Promise(r=>{let n=null,o=()=>{n!==null&&(this.clearTimeoutFn(n),n=null),this.wakeRetryWait===o&&(this.wakeRetryWait=null),r()};this.wakeRetryWait=o,n=this.setTimeoutFn(o,t)})}};var ng=6e4,ne=null,pp=!1,co=new Set,za={loadedCount:0,itemsRevision:0,itemsChanges:[],totalCount:null,phase:"idle",isRevalidating:!1,hasCompletedOnce:!1,completedAt:null,error:null,streamAnchor:null},Wi=()=>{for(let e of co)e()},Ki=()=>{ne&&(ne.unsubscribe(),ne.client.dispose(),ne=null,Wi())},uo=e=>{if(typeof window>"u")return;let t=e.apiBasePath??Jn.apiBasePath;if(ne&&(ne.userKey!==e.userKey||ne.apiBasePath!==t)&&(ne.userKey!==e.userKey&&ro(),Ki()),!ne){let r=new Ka({apiBasePath:t});ne={client:r,userKey:e.userKey,apiBasePath:t,unsubscribe:r.subscribe(Wi)},og(),r.start(),Wi();return}ja(ne)},ja=e=>{let t=e.client.getState();if(t.phase==="failed"){e.client.retry();return}t.phase==="complete"&&!t.isRevalidating&&t.completedAt!==null&&Date.now()-t.completedAt>ng&&e.client.refresh()},og=()=>{if(pp||typeof document>"u"||typeof window>"u")return;pp=!0;let e=()=>{ne&&ja(ne)};document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&e()}),window.addEventListener("focus",e)},zi=e=>{if(!(typeof window>"u")){if(!ne){uo(e);return}if(ne.userKey!==e.userKey){ro(),Ki(),uo(e);return}ja(ne)}},$i=()=>{typeof window>"u"||!ne||ja(ne)},bn=e=>{ne?.client.applyExternalUpsert(e)},Sn=e=>{ne?.client.applyExternalRemoval(e)},fp=e=>ne===null?!1:ne.client.has(e),yp=()=>ne===null?ft:ne.client.readRows(),ji=()=>ne===null?0:ne.client.getState().itemsRevision,Ga=()=>{ne?.client.retry()},Ya=()=>{ne?.client.resync()},mo=(e={})=>{ne?.client.refresh(e)},hp=()=>ne?.userKey,fo=e=>(co.add(e),()=>co.delete(e)),$a=()=>ne?.client.getState()??za,ag=()=>za,sg=()=>po(fo,$a,ag),qa=(e,t)=>{let r=za,n=e(za);return()=>{let o=$a();if(o===r)return n;let a=e(o);return r=o,t(n,a)||(n=a),n}},Rp=qa(({phase:e,isRevalidating:t,error:r,streamAnchor:n,loadedCount:o})=>({phase:e,isRevalidating:t,error:r,streamAnchor:n,hasItems:o>0}),(e,t)=>e.phase===t.phase&&e.isRevalidating===t.isRevalidating&&e.error===t.error&&e.streamAnchor===t.streamAnchor&&e.hasItems===t.hasItems),ig=Rp(),gn=()=>po(fo,Rp,()=>ig),bp=qa(({phase:e,isRevalidating:t,loadedCount:r,totalCount:n})=>({phase:e,isRevalidating:t,loadedCount:r,totalCount:n}),(e,t)=>e.phase===t.phase&&e.isRevalidating===t.isRevalidating&&e.loadedCount===t.loadedCount&&e.totalCount===t.totalCount),lg=bp(),Sp=()=>po(fo,bp,()=>lg),gp=qa(({phase:e,loadedCount:t})=>({phase:e,hasItems:t>0,retryingCount:e==="retrying"?t:null}),(e,t)=>e.phase===t.phase&&e.hasItems===t.hasItems&&e.retryingCount===t.retryingCount),dg=gp(),Ep=()=>po(fo,gp,()=>dg),Tp=qa(({phase:e,totalCount:t})=>({phase:e,totalCount:t}),(e,t)=>e.phase===t.phase&&e.totalCount===t.totalCount),cg=Tp(),Dp=()=>po(fo,Tp,()=>cg),Ap=e=>e.phase==="complete"&&!e.isRevalidating,mp=e=>`${e.itemsRevision}:${Ap(e)}`,xp=()=>{let[,e]=rg(0),t=$a(),r=mp(t);return tg(()=>{let n=r,o=()=>{let a=mp($a());a!==n&&(n=a,eg(()=>e(s=>s+1)))};return co.add(o),o(),()=>{co.delete(o)}},[]),{itemsRevision:t.itemsRevision,itemsChanges:t.itemsChanges,readRows:yp,settled:Ap(t)}};import.meta.hot?.dispose(Ki);var Cp="Internal";var Xa=(e,t,r)=>{if(!Number.isFinite(e)||e<=0)throw we("createExpiringLedger: ttlMs","a finite number greater than 0 (the time to live in ms)",e);let n=new Map,o=()=>{let a=t();for(let[s,i]of n){if(i.deadline>a)return;n.delete(s),r(s,i.value)}};return{add:(a,s)=>{o(),n.delete(a),n.set(a,{value:s,deadline:t()+e})},get:a=>(o(),n.get(a)?.value),remove:a=>{o();let s=n.get(a);if(s!==void 0)return n.delete(a),s.value},drain:()=>{let a=[...n.values()].map(s=>s.value);return n.clear(),a},size:()=>n.size}};var ug=3e4,Ip=e=>{let t=Xa(ug,e,()=>{});return{add:r=>t.add(r,!0),has:r=>t.get(r)===!0}},En=(e,t)=>e.has(t)?e:new Set(e).add(t),vp=(e,t)=>{if(!e.has(t))return e;let r=new Set(e);return r.delete(t),r},wp=new Set,_p=()=>new Set,Lp=()=>new Map,Np=e=>{let t={pendingAddCommentIds:new Map,pendingDeleteCommentIds:new Map,pendingStarUpdates:new Map,pendingReadUpdates:new Map,resolvedIdMap:new Map};return{ledgers:Object.freeze({pendingAddCommentIds:Object.freeze({current:t.pendingAddCommentIds}),pendingDeleteCommentIds:Object.freeze({current:t.pendingDeleteCommentIds}),pendingStarUpdates:Object.freeze({current:t.pendingStarUpdates}),pendingReadUpdates:Object.freeze({current:t.pendingReadUpdates}),resolvedIdMap:Object.freeze({current:t.resolvedIdMap})}),write:r=>{try{r(t)}finally{e()}}}},Op=e=>({functions:{toggleSse:()=>e.current.toggleSse(),addComment:(t,r,n)=>e.current.addComment(t,r,n),deleteComment:(t,r,n)=>e.current.deleteComment(t,r,n),toggleStar:(t,r,n)=>e.current.toggleStar(t,r,n),toggleRead:(t,r,n)=>e.current.toggleRead(t,r,n),createReport:t=>e.current.createReport(t),updateReport:(t,r,n)=>e.current.updateReport(t,r,n),publishReport:(t,r)=>e.current.publishReport(t,r),deleteReport:(t,r)=>e.current.deleteReport(t,r),removeStaleItem:t=>e.current.removeStaleItem(t),refetchData:()=>e.current.refetchData(),clearCacheAndRefetch:()=>e.current.clearCacheAndRefetch()},onSseMessage:t=>e.current.handleSseMessage(t)});var Gi=0,Yi=e=>{let t=qe("drawTemporaryId: nowMs",e,1);return Gi=Math.min(-t,Gi-1),Gi};var er=(e,t)=>{if(!e)return t;if(e.displayName?.trim())return e.displayName;if(e.name){let n=[e.name.familyName,e.name.givenName].filter(o=>typeof o=="string"&&o!=="").join(" ");if(n.trim())return n.trim()}let r=e.emails?.[0]?.value;return r||t};var qi=pt(void 0,1,"ActionProvider"),pg=1e3,Xi=class extends Error{constructor(t,r){super(`[daily-report] ${t} answered HTTP ${r}`),this.name="DailyReportActionHttpError",this.status=r}},uN=Object.freeze(["delete","deleteComment"]),mg=e=>e.intent==="create"?null:e.reportHubId,fg=(e,t)=>{let r=e;if(r.intent==="clearCache"||r.clientTempId!==t.clientTempId)return!1;let n=mg(t);return n===null||r.reportHubId===n},Mp=e=>{let{apiBasePath:t,labels:r,user:n,items:o,isSessionStillOurs:a,ownEchoIds:s,ledgers:i,writeLedgers:l,pendingAddPromises:d,removedIds:c,searchRemovedIds:u,setRemovedVersion:p,setRows:h,drafts:f,invalidateSearch:y,announceDataChange:S,notifyError:m}=e,g=async(D,C,x={})=>{let{intent:w}=D,{onGone:M}=C,{lockedReportHubId:L}=x,P=L===void 0?null:du(L);C.onOptimistic?.(),s.add(D.clientTempId);let V=()=>{if(!a())throw qi.warn(`[executeAction] ${w} resolved after a user switch; discarding continuation`),new Error(`Stale continuation for ${w}`)};try{let z=await fetch(`${t}/${He.action}`,{method:"POST",body:Pa(D),headers:{Accept:"application/json"}});if(z.status===404&&M!==void 0)return V(),M();if(!z.ok)throw new Xi(w,z.status);let j=Qu(w,await z.json());if("mismatch"in j)throw new Error(`[daily-report] ${w} answered a body that is not its result (${j.mismatch})`);let{result:W}=j;if(!fg(W,D))throw new Error(`[daily-report] ${w} answered another request`);return V(),C.onSuccess(W)}catch(z){throw qi.error(`${w} failed:`,z),a()&&(C.onFailure?.(),m({operation:w,message:r.operationFailed(w),cause:z})),z}finally{P?.()}},R=(D,C,x)=>({reportHubId:D,clientTempId:x,businessDate:typeof C=="string"?C:null,operationTimestamp:Date.now()});return{addComment:async(D,C,x)=>{let w=Yi(Date.now()),M=g({...R(D,x,String(w)),intent:"addComment",content:C},{onOptimistic:()=>{l(({pendingAddCommentIds:L})=>{let P=L.get(D);P===void 0?L.set(D,new Map([[w,C]])):P.set(w,C)})},onSuccess:({newComment:L})=>{let P=L.id;l(({resolvedIdMap:z,pendingAddCommentIds:j})=>{z.set(w,P),j.get(D)?.delete(w)}),y();let V=nt(D,{ignoreExpiry:!0});return V&&!V.postedComments.some(z=>z.id===P)&&mt(D,{postedComments:[...V.postedComments,{...L,isMine:!0,userName:er(n,r.unknownUser)}]}),P},onFailure:()=>{l(({pendingAddCommentIds:L})=>L.get(D)?.delete(w))}}).finally(()=>d.current.delete(w));d.current.set(w,M),await M},deleteComment:async(D,C,x)=>{l(({pendingDeleteCommentIds:L})=>{let P=L.get(D);P===void 0?L.set(D,new Set([C])):P.add(C)});let w=C;if(C<0){let L=i.resolvedIdMap.current.get(C);if(L!==void 0)w=L;else{let P=d.current.get(C);if(!P)return;try{w=await P}catch{return}}}let M=()=>{let L=nt(D,{ignoreExpiry:!0});L&&(mt(D,{postedComments:L.postedComments.filter(P=>P.id!==w)}),uu(w)),l(({pendingDeleteCommentIds:P})=>P.get(D)?.delete(C)),y()};await g({...R(D,x,crypto.randomUUID()),intent:"deleteComment",commentId:w},{onSuccess:M,onGone:M,onFailure:()=>{l(({pendingDeleteCommentIds:L})=>L.get(D)?.delete(C))}})},toggleStar:async(D,C,x)=>{await g({...R(D,x,crypto.randomUUID()),intent:"toggleStar",value:C},{onOptimistic:()=>{mt(D,{isStarred:C}),l(({pendingStarUpdates:w})=>w.set(D,C))},onSuccess:({updatedStatus:w})=>{nt(D,{ignoreExpiry:!0})&&(mt(D,{isStarred:w.isStarred}),S()),l(({pendingStarUpdates:M})=>M.delete(D))},onFailure:()=>{mt(D,{isStarred:!C}),l(({pendingStarUpdates:w})=>w.delete(D))}})},toggleRead:async(D,C,x)=>{await g({...R(D,x,crypto.randomUUID()),intent:"toggleRead",value:C},{onOptimistic:()=>{mt(D,{isRead:C}),l(({pendingReadUpdates:w})=>w.set(D,C))},onSuccess:({updatedStatus:w})=>{nt(D,{ignoreExpiry:!0})&&(mt(D,{isRead:w.isRead}),S()),l(({pendingReadUpdates:M})=>M.delete(D))},onFailure:()=>{mt(D,{isRead:!C}),l(({pendingReadUpdates:w})=>w.delete(D))}})},createReport:async D=>{let C=Yi(Date.now()),x=new Date().toISOString(),w={reportHubId:C,date:D,createdAt:x,author:er(n,r.unknownUser),userId:n===void 0?null:n.id,sourceType:Cp,employeeName:er(n,r.unknownUser),updatedBy:er(n,r.unknownUser),updatedAt:x,category:null,creationCategory:null,visitTimeFrom:null,visitTimeTo:null,customerName:null,interviewers:[],subject:"",content:"",externalComments:[],isRead:!0,isStarred:!1,isDraft:!0,labels:[],postedComments:[],attachments:[]};lu(w,Date.now()+3e5,!1),h(M=>Va(M,{reportHubId:C,businessDate:D},Number.NEGATIVE_INFINITY));try{let M=await g({intent:"create",clientTempId:String(C),businessDate:D,operationTimestamp:Date.now()},{onSuccess:V=>V.report}),L=M.reportHubId,P=ji();return bn({reportHubId:L,businessDate:D}),cu(L,pg),mr(L,M),S(),y(),h(V=>Va(Hr(V,C),{reportHubId:L,businessDate:D},P)),L}catch(M){throw qi.error("[createReport] Failed",M),h(L=>Hr(L,C)),M}},updateReport:async(D,C,x)=>{await g({...R(D,x,crypto.randomUUID()),intent:"update",changes:{title:C.title,content:C.content}},{onSuccess:()=>{nt(D,{ignoreExpiry:!0})&&(mt(D,{subject:C.title,content:C.content}),S()),y()}},{lockedReportHubId:D})},publishReport:async(D,C)=>{let x=nt(D,{ignoreExpiry:!0});await g({...R(D,C,crypto.randomUUID()),intent:"publish"},{onOptimistic:()=>{x&&(mt(D,{isDraft:!1}),S())},onSuccess:({report:w})=>{w!==null&&(mr(D,w),S()),C!==void 0&&bn({reportHubId:D,businessDate:C}),y()},onFailure:()=>{x&&(mt(D,{isDraft:x.isDraft}),S())}})},deleteReport:async(D,C)=>{let x=Lu(o,D);c.current=En(c.current,D),u.current.add(D),p(M=>M+1),Sn(D),x!==void 0&&h(M=>sp(M,x));let w=()=>{Sa(D,C),f.discard(D),y()};try{await g({...R(D,C,crypto.randomUUID()),intent:"delete"},{onSuccess:w,onGone:w},{lockedReportHubId:D})}catch(M){if(!a())return;c.current=vp(c.current,D),u.current.delete(D),p(V=>V+1);let L=x===void 0?C:x.businessDate,P=ji();throw L!==void 0&&bn({reportHubId:D,businessDate:L}),h(V=>{let z=Vi(V,D);return x===void 0?z:Va(z,x,P)}),M}}}};var kp=pt(void 0,1,"ActionProvider"),yg=3e4,Pp=e=>Xa(yg,e,(t,r)=>{r.unsubscribe(),kp.warn(`[SSE Queue] Expired: reportHubId=${t}, dropped=${r.messages.length} messages`)}),hg=(e,t)=>{t!==void 0&&bn({reportHubId:e,businessDate:t})},Fp=e=>{let{user:t,userId:r,labels:n,isSessionStillOurs:o,ownEchoIds:a,ledgers:s,writeLedgers:i,removedIds:l,searchRemovedIds:d,setRemovedVersion:c,setRows:u,drafts:p,invalidateSearch:h,announceDataChange:f,pendingSseQueue:y,replay:S}=e,m=(R,b)=>{let E=y.get(R);if(E!==void 0){E.messages.push(b);return}let T;T={messages:[b],unsubscribe:pu(R,()=>{if(y.get(R)===T&&nt(R,{ignoreExpiry:!0})){y.remove(R),T.unsubscribe(),kp.info(`[SSE Queue] Replaying ${T.messages.length} messages for reportHubId=${R}`);for(let I of T.messages)S(I)}})},y.add(R,T)};return R=>{if(o()&&!a.has(R.clientTempId))switch(R.type!=="status-update"&&h(),R.type){case"comment-add":{let{comment:b,reportHubId:E}=R,T=nt(E,{ignoreExpiry:!0});if(T){if(T.postedComments.some(k=>k.id===b.id))return;let v=typeof r=="string"&&b.userId===r,I={...b,userName:b.userName||(v?er(t,n.unknownUser):n.unknownUser),createdAt:b.createdAt||new Date().toISOString(),isMine:v},O={...T,postedComments:[...T.postedComments,I].sort((k,F)=>new Date(k.createdAt||0).getTime()-new Date(F.createdAt||0).getTime())};mr(E,O),Ri(E),f()}else m(E,R);break}case"comment-delete":{let{commentId:b,reportHubId:E}=R,T=nt(E,{ignoreExpiry:!0});if(T){let v={...T,postedComments:T.postedComments.filter(I=>I.id!==b)};mr(E,v),Ri(E),f()}else m(E,R);break}case"status-update":{let{statusType:b,value:E,reportHubId:T}=R,v=nt(T,{ignoreExpiry:!0});if(b==="star")if(s.pendingStarUpdates.current.get(T)===E&&i(({pendingStarUpdates:I})=>I.delete(T)),v){let I={...v,isStarred:E};mr(T,I),f()}else m(T,R);else if(b==="read")if(s.pendingReadUpdates.current.get(T)===E&&i(({pendingReadUpdates:I})=>I.delete(T)),v){let I={...v,isRead:E};mr(T,I),f()}else m(T,R);break}case"report-delete":{let{reportHubId:b}=R;l.current=En(l.current,b),d.current.add(b),c(T=>T+1),Sn(b),u(T=>Hr(T,b)),p.discard(b),y.remove(b)?.unsubscribe();let E=nt(b,{ignoreExpiry:!0});E?.date&&(Sa(b,E.date),f());break}case"report-create":case"report-update":case"report-publish":{let{report:b}=R;mu(b),(R.type==="report-create"||R.type==="report-publish")&&hg(b.reportHubId,b.date),f();break}}}};import{memo as Dg,useLayoutEffect as Ag}from"react";import{systemSseRuntime as Qa}from"@aiquants/sse";import{createBrowserEventSource as Rg}from"@aiquants/sse/client";import{useReopeningEventSource as bg}from"@aiquants/sse/react";import{useEffect as Qi,useRef as Za,useState as Sg}from"react";var Br=pt(void 0,1,"SseConnection"),gg=Object.freeze({kind:"resyncing"}),Hp={initialDelayMs:2e3,maxDelayMs:3e4,multiplier:2},Eg=1,Bp=ni*3,Tg=Bp+ni,Zi=({isSseEnabled:e,onMessage:t})=>{let{ssePath:r,onSessionExpired:n}=K(),{streamAnchor:o,phase:a,isRevalidating:s,error:i}=gn(),[l,d]=Sg({generation:0,minAnchorRevision:1,anchored:!1}),c=l.generation>0&&!l.anchored,u=c&&a==="complete"&&!s?i:null,p=Za(0),h=Za(null),f=Za(n);f.current=n;let y=Za(0);y.current=o===null?0:o.revision,Qi(()=>{l.anchored||o===null||o.revision<l.minAnchorRevision||(h.current=o.lastEventId,p.current=0,d({...l,anchored:!0}))},[l,o]),Qi(()=>{if(!e||u===null)return;let{initialDelayMs:m,maxDelayMs:g,multiplier:R}=Hp,b=Qa.random()*Math.min(g,m*R**p.current);Br.warn(`SSE resync: the ids rescan gave up (${u.message}); rescanning in ${Math.round(b)} ms`);let E=Qa.setTimer(()=>{p.current+=1,Ya()},b);return()=>Qa.clearTimer(E)},[e,u]);let{status:S}=bg(e&&l.anchored?`${r}#${l.generation}`:null,{resolveUrl:({lastEventId:m})=>m===null?r:`${r}?${vc}=${encodeURIComponent(m)}`,initialLastEventId:h.current,withCredentials:!1,createEventSource:Rg,runtime:Qa,backoff:Hp,healthyOpenMs:Tg,nativeRetryLimit:Eg,giveUpAfterFailures:"never",terminalEvents:Ic,heartbeat:{staleAfterMs:Bp,onHeartbeat:null},events:{message:m=>{m.lastEventId!==""&&(na(m.lastEventId)?h.current=m.lastEventId:Br.warn("SSE event carried a malformed id; keeping the previous cursor:",m.lastEventId));try{let g=JSON.parse(m.data),R=wc.safeParse(g);if(!R.success){Br.error("SSE Validation Error:",R.error.flatten(),"raw message:",g);return}if(R.data.type==="connected"){Br.info("SSE Subscribe Ready");return}t(R.data)}catch(g){Br.error("SSE Parse Error",g)}}}});return Qi(()=>{if(S.kind==="faulted"){Br.error("SSE connection faulted:",S.error);return}if(S.kind==="terminated")switch(S.terminalEvent){case"auth-required":f.current();return;case"forbidden":Br.warn("SSE stopped: the viewer is not registered (forbidden)");return;case"resync-required":{let m=y.current+1;d(g=>({generation:g.generation+1,minAnchorRevision:m,anchored:!1})),Ya();return}}},[S]),e&&c?gg:S};var Up=Object.freeze({kind:"idle"}),Ji=Dg(({isSseEnabled:e,onMessage:t,onStatus:r})=>{let n=Zi({isSseEnabled:e,onMessage:t});return Ag(()=>{r(n)},[n,r]),null});Ji.displayName="DailyReportSseConnectionHost";import{createContext as xg,useCallback as Cg,useSyncExternalStore as Vp}from"react";var Wp=()=>{let e=new Map,t=new Map,r=(n,o)=>{o===null?e.delete(n):e.set(n,o);let a=t.get(n);if(a!==void 0)for(let s of[...a])s()};return{modeOf:n=>{let o=e.get(n);return o===void 0?"display":o.mode},inputOf:n=>{let o=e.get(n);return o===void 0||o.mode==="dismissed"?null:o.input},subscribe:(n,o)=>{let a=t.get(n),s=a===void 0?new Set:a;return a===void 0&&t.set(n,s),s.add(o),()=>{s.delete(o),s.size===0&&t.get(n)===s&&t.delete(n)}},open:(n,o,a)=>{let s=e.get(n);s!==void 0&&s.mode!=="dismissed"||r(n,{mode:a?"automatic":"editing",input:o})},setInput:(n,o)=>{let a=e.get(n);a===void 0||a.mode==="dismissed"||r(n,{mode:a.mode,input:{...a.input,...o}})},dismiss:n=>{e.get(n)?.mode!=="dismissed"&&r(n,{mode:"dismissed"})},discard:n=>{e.has(n)&&r(n,null)}}},el=xg(null),yr=()=>gt(el,"useDailyReportDraftStore","DailyReportActionProvider"),Kp=(e,t)=>Cg(r=>e.subscribe(t,r),[e,t]),Ja=e=>{let t=yr(),r=()=>t.modeOf(e);return Vp(Kp(t,e),r,r)},zp=e=>{let t=yr(),r=()=>t.inputOf(e),n=Vp(Kp(t,e),r,r);if(n===null)throw new Error(`[daily-report] the edit form is rendered for report ${e}, whose editor is not open`);return n};import{useOverlayEscapeStack as Og}from"@aiquants/swipe-overlay";import{createContext as Mg,Fragment as kg,useCallback as ts,useId as rl,useLayoutEffect as em,useMemo as Pg,useRef as Vr,useState as Xp}from"react";import{createPortal as Qp}from"react-dom";var Ig=Object.freeze({visibilityProperty:!0,opacityProperty:!0}),$p="data-daily-report-view-tabs",jp={[$p]:""},Gp="data-daily-report-status-panel",Yp={[Gp]:""},vg=e=>{for(let t of e.getClientRects())if(t.width>0&&t.height>0)return!0;return!1},wg=e=>e.isConnected&&no(e)&&vg(e)&&e.checkVisibility(Ig),Mt=e=>{for(let t of e)if(!(t===null||!wg(t))&&(t.focus({preventScroll:!0}),xe(t)===t))return t;return null},tl=e=>e.querySelector(`[${$p}] [role="tab"][aria-selected="true"]`),es=e=>[La(e),tl(e),e.querySelector(`[${Gp}]`)];var Ur=e=>e.isComposing||e.keyCode===229,Tn=e=>({key:e.key,keyCode:e.keyCode,altKey:e.altKey,ctrlKey:e.ctrlKey,metaKey:e.metaKey,shiftKey:e.shiftKey,defaultPrevented:e.defaultPrevented,isComposing:e.nativeEvent.isComposing,target:e.target});var _g={kind:"hold"},Lg=new Set(["grid","listbox","menu","menubar","radiogroup","tablist","toolbar","tree","treegrid"]),Ng=(e,t)=>{let r=e.getAttribute("role");return r!==null&&Lg.has(r)&&e!==t&&e.contains(t)},tr=e=>e.key==="Escape"&&!e.defaultPrevented&&!Ur(e),qp=(e,t)=>{if(e.key!=="Tab"||e.altKey||e.ctrlKey||e.metaKey||e.defaultPrevented||Ur(e))return null;let r=e.target;if(!(be(r)&&t.contains(r)))return null;let n=Eu(t);if(n.length===0)return _g;let{before:o,within:a,after:s}=Da(t,r);return e.shiftKey?o.some(i=>!Ng(i,r))?null:{kind:"wrap",element:n[n.length-1]}:a.length>0||s.length>0?null:{kind:"wrap",element:n[0]}};import{jsx as kt,jsxs as rm}from"react/jsx-runtime";var Fg=A("motion-safe:fade-in motion-safe:slide-in-from-bottom-2 flex w-fit min-w-0 max-w-full items-center gap-2 rounded-lg border border-red-300 border-solid bg-red-600 px-[15px] py-[7px] text-sm text-white shadow-lg motion-safe:animate-in motion-safe:duration-200 dark:border-red-500/60 dark:bg-red-700",dr),Hg="flex shrink-0 justify-center p-[8px]",Bg=A("flex size-6 shrink-0 items-center justify-center rounded font-bold text-white/90 hover:bg-red-700 hover:text-white dark:hover:bg-red-800",gd),Ug="data-daily-report-notice-alert",Vg={[Ug]:""},tm=Mg(null),rs=()=>gt(tm,"useDailyReportErrorSurface","DailyReportErrorProvider"),Zp=Object.freeze([]),Jp=({notice:e})=>kt("div",{role:"alert",...Vg,className:"sr-only",children:e===null?null:kt("span",{children:e.info.message},e.occurrence)}),Wg=({notice:e,closeLabel:t,repeatedLabel:r,onDismiss:n})=>{let o=Vr(null),a=Vr(null),s=Vr(null),i=Og(),l=rl(),d=rl(),c=rl(),u=e.repeat>1?`${d} ${c}`:d,p=ts(()=>{let y=o.current;if(y?.contains(y.ownerDocument.activeElement)){let[S,...m]=es(y.ownerDocument);Mt([a.current,S,y.closest("dialog"),...m])}n()},[n]),h=y=>{if(s.current!==null)return;let S=y.relatedTarget;a.current=be(S)&&!y.currentTarget.contains(S)?S:null,s.current=i({id:l,onEscape:m=>tr(m)?(p(),!0):!1})},f=y=>{be(y.relatedTarget)&&y.currentTarget.contains(y.relatedTarget)||(s.current?.(),s.current=null,a.current=null)};return em(()=>()=>{s.current?.(),s.current=null},[]),rm("div",{ref:o,role:"group","aria-labelledby":u,"data-testid":"daily-report-error-banner",className:Fg,onFocus:h,onBlur:f,children:[kt("span",{id:d,className:"min-w-0 font-medium",children:kt(kg,{children:e.info.message},e.occurrence)}),e.repeat>1&&kt("span",{id:c,className:"shrink-0 font-normal tabular-nums",children:r(e.repeat)}),kt("button",{type:"button","aria-label":t,"aria-describedby":u,onClick:p,className:Bg,children:"\u2715"})]})},nl=({children:e})=>{let{onError:t,labels:r}=K(),[n,o]=Xp(null),[a,s]=Xp(Zp),i=Vr(Zp),l=Vr(0),d=Vr(0),c=Vr(t);em(()=>{c.current=t});let u=ts(g=>{let R=c.current;if(R){R(g);return}d.current+=1;let b=d.current,E=i.current,T=E.length===0?null:E[E.length-1].registration;o(v=>({info:g,occurrence:b,repeat:v!==null&&v.info.message===g.message?v.repeat+1:1,announcedIn:T}))},[]),p=ts(g=>{l.current+=1;let R={element:g,registration:l.current};return i.current=[...i.current,R],s(i.current),()=>{i.current=i.current.filter(b=>b!==R),s(i.current)}},[]),h=ts(()=>o(null),[]),f=Pg(()=>({notifyError:u,registerNoticeHost:p}),[u,p]),y=a.at(-1),S=n===null?null:kt(Wg,{notice:n,closeLabel:r.close,repeatedLabel:r.noticeRepeated,onDismiss:h}),m=g=>n!==null&&n.announcedIn===g?n:null;return rm(tm.Provider,{value:f,children:[e,kt(Jp,{notice:m(null)}),a.map(g=>Qp(kt(Jp,{notice:m(g.registration)}),g.element,String(g.registration))),S!==null&&y!==void 0&&Qp(S,y.element),S!==null&&y===void 0&&kt("div",{"data-daily-report-notice-slot":"",className:Hg,children:S})]})};import{jsx as al,jsxs as zg}from"react/jsx-runtime";var ns=pt(void 0,1,"ActionProvider"),as=globalThis.__DailyReportActionsContext??sm(null);globalThis.__DailyReportActionsContext=as;var ss=globalThis.__DailyReportActionStateContext??sm(null);globalThis.__DailyReportActionStateContext=ss;var os="DailyReportActionProvider",$e=()=>gt(as,"useDailyReportActions",os),is=()=>gt(ss,"useDailyReportActionState",os),Kg=()=>{let e=gt(as,"useDailyReportActionContext",os),t=gt(ss,"useDailyReportActionContext",os);return sl(()=>({...e,...t}),[e,t])},il=({children:e,user:t,userId:r})=>{let{apiBasePath:n,labels:o}=K(),{notifyError:a}=rs(),[s,i]=Pt(0),[{ledgers:l,write:d}]=Pt(()=>Np(()=>i(Y=>Y+1))),[c,u]=Pt(0),[p,h]=Pt(0),[f]=Pt(Wp),[y,S]=Pt(!1),[m,g]=Pt(Up),R=ol(!1),b=Ue(Lp),E=ol(wp),T=Ue(_p),[v]=Pt(()=>Ip(()=>performance.now())),[I]=Pt(()=>Pp(()=>performance.now())),O=xp(),[k,F]=ap(O,O.settled,E.current),D=k.items,C=`${c}:${k.settled?k.revision:"-"}`,x=()=>{u(Y=>Y+1)},w=()=>{i(Y=>Y+1)},M=nm(Y=>T.current.has(Y),[T]),L=nm(()=>hp()===(r??null),[r]),P=async()=>{ns.info("Refetching data without page reload..."),mo(),w(),Z.listeners.forEach(Y=>{Y(-1)})},V=async()=>{ns.info("Clearing client & server/DB cache and refetching data without page reload..."),ro(),E.current=new Set,T.current.clear(),h(Y=>Y+1),F(ip);try{sessionStorage.clear()}catch{}try{let Y=await fetch(`${n}/${He.action}`,{method:"POST",body:Pa({intent:"clearCache"})});if(!Y.ok){let Ne=await Y.json().catch(()=>null);ns.warn("Failed to clear server-side cache:",Y.status,Ne)}}catch(Y){ns.warn("Failed to clear server-side cache:",Y)}L()&&(mo({forceRefresh:!0}),w(),Z.listeners.forEach(Y=>{Y(-1)}))};am(()=>()=>{for(let Y of I.drain())Y.unsubscribe()},[I]);let z=()=>{r&&(R.current=!0,S(Y=>!Y))};om(()=>{if(!r)return;let Y=setTimeout(()=>{R.current||S(!0)},Zc);return()=>clearTimeout(Y)},[r]);let j=Y=>{L()&&(E.current=En(E.current,Y),T.current.add(Y),h(Ne=>Ne+1),Sn(Y),F(Ne=>Hr(Ne,Y)),f.discard(Y))};om(()=>{if(!k.settled)return;let Y=new Set;for(let Ne of E.current)fp(Ne)&&Y.add(Ne);Y.size!==E.current.size&&(E.current=Y)},[k.settled,k.revision]);let W={user:t,userId:r,labels:o,apiBasePath:n,items:D,isSessionStillOurs:L,ownEchoIds:v,ledgers:l,writeLedgers:d,pendingSseQueue:I,pendingAddPromises:b,removedIds:E,searchRemovedIds:T,setRemovedVersion:h,setRows:F,drafts:f,invalidateSearch:x,announceDataChange:w,replay:Y=>le.current.handleSseMessage(Y),notifyError:Y=>le.current.notifyError(Y)},me=Fp(W),Le=Mp(W),ue={toggleSse:z,...Le,removeStaleItem:j,refetchData:P,clearCacheAndRefetch:V,handleSseMessage:me,notifyError:a},le=ol(ue);am(()=>{le.current=ue});let[ge]=Pt(()=>Op(le)),Ze=sl(()=>({...l,...ge.functions,user:t}),[l,ge,t]),lt=sl(()=>({version:s,items:D,isSseEnabled:y,sseStatus:m,searchInvalidation:C,isReportRemoved:M,removedVersion:p}),[s,D,y,m,C,M,p]);return al(el.Provider,{value:f,children:al(as.Provider,{value:Ze,children:zg(ss.Provider,{value:lt,children:[al(Ji,{isSseEnabled:y,onMessage:ge.onSseMessage,onStatus:g}),e]})})})};var im=(e,t)=>e.split(t).length-1,lm=(e,t,r)=>{let n=e("\uE000","\uE001");if(im(n,"\uE000")!==1||im(n,"\uE001")!==1)return null;let o=n.indexOf("\uE000"),a=n.indexOf("\uE001"),s=[{at:o,part:{kind:"name"}},{at:a,part:{kind:"affiliation"}}];s.sort((c,u)=>c.at-u.at);let i=[],l=0;for(let{at:c,part:u}of s)c>l&&i.push({kind:"text",text:n.slice(l,c)}),i.push(u),l=c+1;return l<n.length&&i.push({kind:"text",text:n.slice(l)}),i.map(c=>c.kind==="text"?c.text:c.kind==="name"?t:r).join("")===e(t,r)?i:null};import{useContext as rE,useEffect as nE,useId as oE,useLayoutEffect as ym,useMemo as ul}from"react";import{createContext as pm,createElement as qg,useCallback as um,useContext as mm,useDeferredValue as Xg,useLayoutEffect as Qg,useMemo as cl,useSyncExternalStore as Zg}from"react";var dm=Object.freeze({subject:"subject",content:"content",author:"author",employeeName:"author",updatedBy:"updatedBy",category:"category",creationCategory:"creationCategory",customerName:"customer",interviewer:"interviewers",attachment:"attachments",comment:"comments"}),$g=e=>Object.hasOwn(dm,e),jg=e=>{let t=e.indexOf(":"),r=t===-1?e:e.slice(0,t);if(!(hn(e)&&$g(r)))throw new Error(`[daily-report] A search mark leaf carries an unknown field key: ${e}`);return dm[r]},Gg=Object.freeze([]),dl=(e,t)=>e.map(({heading:r,matchedBy:n})=>n==="reading"?t.searchFieldMatchedByReading(t[r]):t.searchFieldMatched(t[r])).join(" "),ll=e=>e.words>0||e.dense>0?"word":e.readings>0?"reading":null,Yg=(e,t)=>e.length===t.length&&e.every((r,n)=>r.heading===t[n].heading&&r.matchedBy===t[n].matchedBy),cm=()=>{let e=new Map,t=new Map,r=new Set,n=null,o=0,a=0,s=Gg,i=!1,l=Object.freeze({entry:n,isCurrent:!0,count:o,fields:s}),d=!1,c=l,u=!1,p=R=>!R.isCurrent||R.entry!==n,h=()=>{let R=[];for(let[b,E]of t){let T=ll(E);T!==null&&R.push(Object.freeze({heading:b,matchedBy:T}))}return Object.freeze(R)},f=()=>{if(!d)return l;d=!1;let R=a===0;if(i){i=!1;let b=h();Yg(b,s)||(s=b)}return l.entry===n&&l.isCurrent===R&&l.count===o&&l.fields===s||(l=Object.freeze({entry:n,isCurrent:R,count:o,fields:s})),l},y=()=>{u=!1;let R=f();if(R!==c){c=R;for(let b of[...r])b()}},S=()=>{d=!0,!u&&(u=!0,queueMicrotask(y))},m=R=>{let b=t.get(R);if(b!==void 0)return b;let E={leaves:0,words:0,readings:0,dense:0};return t.set(R,E),E},g=(R,b)=>{o+=b*(R.words+R.readings),p(R)&&(a+=b);let E=m(R.heading),T=ll(E);E.leaves+=b,E.words+=b*R.words,E.readings+=b*R.readings,R.dense&&(E.dense+=b),ll(E)!==T&&(i=!0),E.leaves===0&&t.delete(R.heading)};return{register:(R,b)=>{let E={...b,heading:jg(b.fieldKey)},T=e.get(R);e.set(R,E),g(E,1),T!==void 0&&g(T,-1),S()},unregister:R=>{let b=e.get(R);b!==void 0&&(e.delete(R),g(b,-1),S())},settle:R=>{if(R!==n){n=R,a=0;for(let b of e.values())p(b)&&(a+=1);S()}},subscribe:R=>(r.add(R),()=>{r.delete(R)}),getSnapshot:f}};var ht=pm(null),fm=pm(null),yo=()=>{let e=mm(fm);if(e===null)throw new Error("[daily-report] A search marks part is drawn outside a row's marks scope (DailyReportSearchMarksScope) while the screen holds a marks store");return e},Jg=()=>{},eE=()=>Jg,tE=(e,t)=>{let r=um(i=>e===null?eE():e.subscribe(t,i),[e,t]),n=um(()=>{let i=e===null?void 0:e.read(t);return i===void 0?null:i},[e,t]),o=Zg(r,n,n),a=cl(()=>e===null||o===null?null:{store:e,entry:o},[e,o]),s=Xg(a,a===null?void 0:null);return s!==null&&s.store===e?s.entry:null},Dn=({reportHubId:e,children:t})=>{let r=mm(ht),n=tE(r,e),o=cl(()=>r===null?null:cm(),[r]),a=cl(()=>r===null||o===null?null:{entry:n,revalidate:(s,i)=>r.revalidate(e,s,i),tally:o,indicator:r.indicator},[r,o,n,e]);return Qg(()=>{o!==null&&o.settle(n)},[o,n]),qg(fm.Provider,{value:a},t)};import{jsx as Rm}from"react/jsx-runtime";var aE="data-daily-report-search-mark",sE=Object.freeze({[tn.word]:Object.freeze({attribute:"word",description:null}),[tn.reading]:Object.freeze({attribute:"reading",description:"searchReadingMarkDescription"})}),hm=e=>{if(!Qn(e))throw new Error(`[daily-report] A search mark carries an unknown tier: ${e}`);return sE[e]},iE=Object.freeze({words:0,readings:0}),lE=e=>{if(e===null)return iE;let t=0;for(let r=2;r<e.length;r+=3)hm(e[r]).attribute==="reading"&&(t+=1);return{words:e.length/3-t,readings:t}},dE=(e,t,r)=>{let n=[],o=0;for(let a=0;a<t.length;a+=3){let s=t[a],i=t[a+1],l=hm(t[a+2]);s>o&&n.push(e.slice(o,s)),n.push(Rm("mark",{[aE]:l.attribute,"aria-description":l.description===null?void 0:r[l.description],className:Wd,children:e.slice(s,i)},`m${s}`)),o=i}return o<e.length&&n.push(e.slice(o)),n},cE=({fieldKey:e,raw:t,display:r})=>{let{entry:n,revalidate:o,tally:a}=yo(),{labels:s}=K(),i=oE(),l=typeof t=="string"?t:"",d=ul(()=>n===null||l.length===0?null:Mi(l),[n,l]),c=n===null?void 0:n.fields[e],u=c!==void 0&&d!==null&&c.fingerprint===d?c:null,p=u!==null&&"ranges"in u?u.ranges:null,h=u!==null&&"dense"in u,f=ul(()=>p===null?null:rc(r,p),[p,r]),y=ul(()=>lE(f),[f]),S=d!==null&&u===null,m=l.length===0;return nE(()=>{S&&d!==null&&o(e,d)},[S,o,e,d]),ym(()=>()=>a.unregister(i),[a,i]),ym(()=>{m||n===null?a.unregister(i):a.register(i,{entry:n,isCurrent:!S,fieldKey:e,words:y.words,readings:y.readings,dense:h})},[a,i,m,n,S,e,y,h]),f===null||f.length===0?r.text:dE(r.text,f,s)},oe=({fieldKey:e,raw:t,display:r})=>rE(ht)===null?r.text:Rm(cE,{fieldKey:e,raw:t,display:r});import{jsx as pE}from"react/jsx-runtime";var uE={2:"h2",3:"h3",4:"h4",5:"h5",6:"h6"},hr=Object.freeze({2:3,3:4,4:5,5:6}),st=({level:e,...t})=>{let r=uE[e];return pE(r,{...t})};import{memo as ef,useId as cT,useMemo as uT,useRef as tf}from"react";var bm=Object.freeze({tile:Object.freeze({maxWidth:480,maxHeight:320})});var ml="tile",Ro=bm[ml],mE=2,ho=16,Sm=5,gm=Ro.maxWidth/mE,fE=Sm*(gm+ho)-ho,Em=e=>{let t=Math.min(Sm,1+Math.floor((e+ho)/(gm+ho)));return Math.floor((Math.min(e,fE)-(t-1)*ho)/t)},pl=`round(nearest, 100cqi * ${Ro.maxHeight} / ${Ro.maxWidth}, 1px)`,Tm=Object.freeze({aspectRatio:`${Ro.maxWidth} / ${Ro.maxHeight}`,height:pl,contain:"strict"}),yE="--aqdr-lattice-block",Dm=Object.freeze({marginBlockEnd:`calc(round(up, ${pl}, var(${yE})) - ${pl})`});var hE="download",RE="thumbnail",bE="1",An=(e,t,r)=>{let n=`${e}/attachment/${encodeURIComponent(t)}`;switch(r.kind){case"inline":return n;case"download":return`${n}?${new URLSearchParams({[hE]:bE})}`;case"thumbnail":return`${n}?${new URLSearchParams({[RE]:r.variant})}`}};import{createContext as SE,useContext as gE}from"react";var bo=SE(null),xn=()=>gE(bo)===!1?-1:void 0,Am=(e,t)=>{let{before:r,after:n}=Da(e.ownerDocument,e);return(t==="before"?r.at(-1):n[0])??null};import{createContext as CE,useContext as IE,useLayoutEffect as vE,useMemo as Nm,useState as wE}from"react";import{flushSync as _E}from"react-dom";import{flushSync as EE}from"react-dom";var fl=new WeakMap,xm=e=>e.observedTrackWidth!==null&&e.observedTrackWidth!==e.handedTrackWidth,Cm=e=>e.overflowWidth!==null&&e.overflowWidth!==e.handedOverflowWidth,TE=(e,t)=>{for(let r=t.parentElement;r!==null;r=r.parentElement){let n=e.observations.get(r);if(n!==void 0)return n}return null},Im=(e,t,r)=>{let n=TE(e,t);return n===null||n.handedTrackWidth===null||r<=n.handedTrackWidth?null:{track:n,trackWidth:n.handedTrackWidth}},DE=e=>{e.frame=null;let t=new Map;for(let r of e.observations.values())xm(r)&&t.set(r,r.observedTrackWidth);for(let[r,n]of e.fittedNames){if(!Cm(n))continue;let o=n.overflowWidth;n.handedOverflowWidth=o;let a=Im(e,r,o);a===null||t.has(a.track)||t.set(a.track,a.trackWidth)}t.size!==0&&EE(()=>{for(let[r,n]of t)r.handedTrackWidth=n,r.onTrackWidth(n)})},AE=(e,t)=>{for(let r of t){let n=r.contentBoxSize[0].inlineSize;if(n===0)continue;let o=e.observations.get(r.target);if(o!==void 0){o.observedTrackWidth=o.trackWidthOf(n);continue}let a=e.fittedNames.get(r.target);if(a!==void 0){if(Im(e,r.target,n)!==null){a.overflowWidth=n;continue}a.overflowWidth=null,a.handedOverflowWidth=null}}e.frame!==null||!([...e.observations.values()].some(xm)||[...e.fittedNames.values()].some(Cm))||(e.frame=e.view.requestAnimationFrame(()=>DE(e)))},xE=e=>{let t=fl.get(e);if(t!==void 0)return t;let r=e.defaultView;if(r===null)throw new Error("[daily-report] An attachment name track must belong to a document with a window to be measured");let n={view:r,observer:new r.ResizeObserver(o=>AE(n,o)),observations:new Map,fittedNames:new Map,frame:null};return fl.set(e,n),n},vm=(e,t)=>{let r=xE(e.ownerDocument);if(r.observations.has(e)||r.fittedNames.has(e))throw new Error(t);return r},wm=(e,t)=>{e.observer.unobserve(t),!(e.observations.size>0||e.fittedNames.size>0)&&(e.frame!==null&&e.view.cancelAnimationFrame(e.frame),e.observer.disconnect(),fl.delete(e.view.document))},_m=(e,t,r)=>{let n=vm(e,"[daily-report] An attachment name track is already observed"),o={trackWidthOf:t,onTrackWidth:r,observedTrackWidth:null,handedTrackWidth:null};return n.observations.set(e,o),n.observer.observe(e),()=>{n.observations.get(e)===o&&(n.observations.delete(e),wm(n,e))}},Lm=e=>{let t=vm(e,"[daily-report] A fitted attachment file name is already observed"),r={overflowWidth:null,handedOverflowWidth:null};return t.fittedNames.set(e,r),t.observer.observe(e),()=>{t.fittedNames.get(e)===r&&(t.fittedNames.delete(e),wm(t,e))}};import{jsx as Ft,jsxs as Pm}from"react/jsx-runtime";var Rl="\u2026",LE=Rl.codePointAt(0),Om=Object.freeze({text:Rl,runs:Object.freeze([])}),ls="data-attachment-file-name",NE=Ce("block min-w-0"),OE="block w-fit whitespace-nowrap",ME=new Set([" ","\xA0","\u1361","\u{10100}","\u{10101}","\u{1039F}","\u{1091F}"," ",`
7
- `,"\f","\r"]),kE=/^-?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?px$/,bl=({fileName:e})=>Ft("span",{className:Vt,children:e}),PE=/"([^"]*)"|'([^']*)'|([^\s,"'][^,"']*)/g,FE=/^U\+([\dA-F?]{1,6})(?:-([\dA-F]{1,6}))?$/i,Sl=CE(null),Fm=e=>{let t=e.text.lastIndexOf(".");return t<=0||t===e.text.length-1?{stem:e,extension:ct("")}:{stem:Kn(e,0,t),extension:Kn(e,t,e.text.length)}},yl=(e,t,r,n)=>{let o=Array.from(e.text),a=0,s=o.length-1;for(;a<s;){let i=Math.ceil((a+s)/2);n(o.slice(0,i).join("")+t)<=r?a=i:s=i-1}return Kn(e,0,o.slice(0,a).join("").length)},HE=(e,t,r)=>{if(r(e)<=t)return ct(e);let{stem:n,extension:o}=Fm(tc(e)),a=t/2,s=r(o.text)<=a?o:Jr([yl(o,Rl,a,r),Om]);if(r(n.text+s.text)<=t)return Jr([n,s]);let i=Jr([Om,s]);return r(i.text)>t?yl(i,"",t,r):Jr([yl(n,i.text,t,r),i])},Mm=new WeakMap,Hm=e=>{let t=Mm.get(e);if(t!==void 0)return t;let r=e.createElement("canvas").getContext("2d");if(r===null)throw new Error("[daily-report] Attachment file names are fitted with a canvas 2D context, which this document cannot create");let n={context:r,font:"",measures:new Map};return Mm.set(e,n),n},Bm=(e,t,r)=>`${e}|${t}|${r}`,BE=(e,t,r,n)=>{let o=Bm(t,r,n),a=e.measures.get(o);if(a!==void 0)return a;let s=i=>{e.font!==t&&(e.context.font=t,e.font=t);let l=0;for(let d of i)l+=ME.has(d)?r+n:r;return e.context.measureText(i).width+l};return e.measures.set(o,s),s},Um=e=>{let t=new Set;for(let r of e.matchAll(PE)){let n=r.slice(1).find(o=>o!==void 0);t.add(n.trim().replace(/\s+/g," ").toLowerCase())}return t},km=e=>e==="normal"?0:kE.test(e)?Math.max(Number.parseFloat(e),0):null,UE=e=>{let t=getComputedStyle(e),r=km(t.letterSpacing),n=km(t.wordSpacing);if(r===null||n===null)return null;let o=`${t.fontStyle} ${t.fontWeight} ${t.fontSize} ${t.fontFamily}`;return{font:o,letterSpacing:r,wordSpacing:n,families:Um(t.fontFamily),measure:BE(Hm(e.ownerDocument),o,r,n)}},VE=(e,t)=>e===t||e!==null&&t!==null&&e.width===t.width&&e.measure===t.measure,WE=e=>{let t=new Set([LE]);for(let r of e.querySelectorAll(`[${ls}]`)){let n=r.getAttribute(ls);for(let o of n+n.normalize("NFC"))t.add(o.codePointAt(0))}return t},KE=(e,t)=>{for(let r of e.split(",")){let n=FE.exec(r.trim());if(n===null)return!0;let[,o,a]=n,s=Number.parseInt(o.replaceAll("?","0"),16),i=a===void 0?Number.parseInt(o.replaceAll("?","F"),16):Number.parseInt(a,16);for(let l of t)if(l>=s&&l<=i)return!0}return!1},hl=new WeakMap,Vm=e=>{let t=hl.get(e);if(t!==void 0)return t;let r={document:e,registrations:new Set,stopWatchingFonts:null};return hl.set(e,r),r},Wm=(e,t)=>{let r=UE(e.container.querySelector(`[${ls}]`));if(r===null){e.fitted=null,e.applyFit(null);return}e.fitted={trackWidth:t,nameFont:r};let n=Vm(e.container.ownerDocument);n.stopWatchingFonts===null&&(n.stopWatchingFonts=$E(n)),e.applyFit({width:t,measure:r.measure})},zE=(e,t)=>{let r=t.map(o=>({families:Um(o.family),unicodeRange:o.unicodeRange})),n=[];for(let o of e.registrations){let{fitted:a}=o;if(a===null)continue;let s=r.filter(l=>Array.from(l.families).some(d=>a.nameFont.families.has(d)));if(s.length===0)continue;let i=WE(o.container);s.some(l=>KE(l.unicodeRange,i))&&(Hm(e.document).measures.delete(Bm(a.nameFont.font,a.nameFont.letterSpacing,a.nameFont.wordSpacing)),n.push([o,a.trackWidth]))}n.length!==0&&_E(()=>{for(let[o,a]of n)Wm(o,a)})},$E=e=>{let t=e.document.fonts,r=n=>{zE(e,n.fontfaces)};return t.addEventListener("loadingdone",r),()=>{t.removeEventListener("loadingdone",r)}},jE=(e,t,r)=>{let n={container:e,applyFit:r,fitted:null},o=_m(e,t,s=>Wm(n,s)),a=Vm(e.ownerDocument);return a.registrations.add(n),()=>{o(),a.registrations.delete(n),!(a.registrations.size>0)&&(a.stopWatchingFonts?.(),hl.delete(a.document))}},Km=(e,t)=>{let[r,n]=wE(null);return vE(()=>{let o=e.current;return jE(o,t,s=>{n(i=>VE(i,s)?i:s)})},[e,t]),r},zm=({containerRef:e,children:t})=>{let r=Km(e,Em);return Ft(Sl,{value:r,children:t})},GE=e=>e,$m=({containerRef:e,children:t})=>{let r=Km(e,GE);return Ft(Sl,{value:r,children:t})},So=({fileName:e,attachmentIndex:t,className:r,testId:n})=>{let o=IE(Sl),a=Nm(()=>o===null?null:HE(e,o.width,o.measure),[e,o]),{stem:s,extension:i}=Nm(()=>Fm(ct(e)),[e]),l=ae.attachment(t);return Pm("span",{className:NE(r),title:e,"data-testid":n,[ls]:e,children:[a===null?Pm("span",{"aria-hidden":"true",className:"flex min-w-0",children:[Ft("span",{className:"truncate",children:Ft(oe,{fieldKey:l,raw:e,display:s})}),i.text!==""&&Ft("span",{className:"max-w-1/2 shrink-0 truncate",children:Ft(oe,{fieldKey:l,raw:e,display:i})})]}):Ft("span",{ref:Lm,"aria-hidden":"true",className:OE,children:Ft(oe,{fieldKey:l,raw:e,display:a})}),Ft(bl,{fileName:e})]})};import ZE from"lucide-react/dist/esm/icons/image-off.js";import{memo as JE,useCallback as Tl,useEffect as eT,useLayoutEffect as tT,useRef as Dl,useState as rT}from"react";var ds=Object.freeze({queueWaitMs:3e4,readMs:3e4,renderMs:1e4,transferMarginMs:5e3}),jm=ds.queueWaitMs+ds.readMs+ds.renderMs+ds.transferMarginMs;var YE=Object.freeze({kind:"loaded"}),Gm=(e,t,r,n,o)=>{let{limiter:a,tuning:s}=n,i="watching",l=null,d=null,c=null,u=null,p=null,h=C=>(C!==null&&n.clearTimeout(C),null),f=()=>{u?.(),u=null},y=()=>{p?.(),p=null},S=C=>C===null||C.kind==="loaded"?0:C.kind==="failing"?C.failedAttempts:s.maxAttempts,m=C=>{i="cooling",c=n.setTimeout(O,C)},g=()=>{o.abortInFlight(),y();let C=S(r.get(t))+1;if(C>=s.maxAttempts){i="done",r.set(t,{kind:"exhausted",failedAt:n.now()}),o.exhausted();return}r.set(t,{kind:"failing",failedAttempts:C,retryAt:n.now()+s.retryDelayMs}),o.reset(),m(s.retryDelayMs)},R=C=>{if(i==="loading"){if(d=h(d),!C){g();return}i="done",r.set(t,YE),y()}},b=()=>{d=null,R(!1)},E=()=>{i="loading",o.showActivity(!0),f(),d=n.setTimeout(b,s.loadTimeoutMs),o.grant()},T=()=>{l=null,i="queued",p=a.request(E)},v=()=>{l===null&&(l=n.setTimeout(T,s.settleMs))},I=C=>{if(o.showActivity(C),C){i==="watching"&&v();return}if(i==="queued"){y(),i="watching";return}l=h(l)},O=()=>{c=null,i="watching",o.showActivity(!1),u=n.observe(e,I)},k=()=>{let C=i==="loading";i="done",f(),l=h(l),d=h(d),c=h(c),o.showActivity(!1),C&&(o.abortInFlight(),p!==null&&o.reset()),y()},F=r.get(t);if(F?.kind==="loaded")return i=o.shows()?"done":"loading",o.grant(),{settle:R,dispose:k};if(F?.kind==="exhausted"){if(n.now()-F.failedAt<s.failureMemoryMs)return i="done",o.exhausted(),{settle:R,dispose:k};r.delete(t)}o.reset();let D=F?.kind==="failing"?F.retryAt-n.now():0;return D>0?m(D):O(),{settle:R,dispose:k}};var qE=e=>{qe("createLoadSlotLimiter: limit",e,1);let t=0,r=new Set,n=()=>{for(let o of r){r.delete(o),o.onGranted();return}t-=1};return{request:o=>{let a={onGranted:o},s=!1;return t<e?(t+=1,o()):r.add(a),()=>{s||(s=!0,!r.delete(a)&&n())}}}},Ym=qE(2);var XE=e=>{qe("createThumbnailProgressStore: maxUrls",e,1);let t=new Map,r=(n,o)=>{t.delete(n),t.set(n,o)};return{peek:n=>t.get(n)??null,get:n=>{let o=t.get(n);return o===void 0?null:(r(n,o),o)},set:(n,o)=>{if(r(n,o),t.size<=e)return;let[a]=t.keys();t.delete(a)},delete:n=>{t.delete(n)}}},gl=XE(1024);var El=new WeakMap,QE=e=>{let t=El.get(e);if(t!==void 0)return t;let r=e.defaultView;if(r===null)throw new Error("[daily-report] A thumbnail frame must belong to a document with a window to be observed");let n=new WeakMap,a={observer:new r.IntersectionObserver(s=>{for(let i of s)n.get(i.target)?.onChange(i.isIntersecting)}),observations:n,observed:0};return El.set(e,a),a},qm=(e,t)=>{let r=e.ownerDocument,n=QE(r);if(n.observations.has(e))throw new Error("[daily-report] A thumbnail frame is already observed");let o={onChange:t};return n.observations.set(e,o),n.observed+=1,n.observer.observe(e),()=>{n.observations.get(e)===o&&(n.observations.delete(e),n.observer.unobserve(e),n.observed-=1,!(n.observed>0)&&(n.observer.disconnect(),El.delete(r)))}};import{jsx as go,jsxs as dT}from"react/jsx-runtime";var nT={idle:"pending",granted:"pending",loaded:"loaded",failed:"unavailable"},oT="data-thumbnail-active",aT="data-daily-report-attachment-preview",Qm={[aT]:""},sT=Object.freeze({settleMs:250,loadTimeoutMs:jm,retryDelayMs:5e3,maxAttempts:2,failureMemoryMs:6e4}),Xm=e=>{let t=gl.peek(e);return t?.kind==="loaded"?{url:e,status:"loaded"}:t?.kind==="exhausted"?{url:e,status:"failed"}:{url:e,status:"idle"}},iT=()=>({limiter:Ym,now:()=>performance.now(),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),observe:qm,tuning:sT}),lT=(e,t,r,n)=>({grant:()=>r(o=>o.url!==e||o.status==="granted"||o.status==="loaded"?o:{url:e,status:"granted"}),reset:()=>r(o=>o.url!==e||o.status==="idle"?o:{url:e,status:"idle"}),exhausted:()=>r(o=>o.url!==e||o.status==="failed"?o:{url:e,status:"failed"}),abortInFlight:()=>{let o=n.current;o?.getAttribute("src")===e&&o.removeAttribute("src")},shows:()=>{let o=n.current;return o?.getAttribute("src")===e&&o.complete&&o.naturalWidth>0},showActivity:o=>{t.toggleAttribute(oT,o)}}),Zm=JE(({thumbnailUrl:e,unavailableLabel:t})=>{let r=Dl(null),n=Dl(null),o=Dl(null),[a,s]=rT(()=>Xm(e));a.url!==e&&s(Xm(e)),tT(()=>{if(a.status==="failed")return;let c=n.current,u=a.status==="idle"?null:a.url;c.getAttribute("src")!==u&&(u===null?c.removeAttribute("src"):c.setAttribute("src",u))},[a]),eT(()=>{let c=r.current,u=Gm(c,e,gl,iT(),lT(e,c,s,n));return o.current=u,()=>{o.current=null,u.dispose()}},[e]);let i=Tl(c=>{c!==null&&(n.current=c)},[]),l=Tl(()=>{s(c=>c.status==="granted"?{url:c.url,status:"loaded"}:c),o.current?.settle(!0)},[]),d=Tl(()=>{o.current?.settle(!1)},[]);return go("span",{className:"block",children:go("span",{ref:r,"aria-hidden":"true","data-testid":"daily-report-attachment-thumbnail-frame","data-thumbnail-state":nT[a.status],style:Tm,className:"relative block w-full",children:go("span",{"data-testid":"daily-report-attachment-thumbnail-skin",className:"absolute inset-0 flex items-center justify-center overflow-hidden rounded-lg bg-slate-100 after:pointer-events-none after:absolute after:inset-0 after:rounded-[inherit] after:ring-1 after:ring-slate-900/10 after:ring-inset dark:bg-slate-800 dark:after:ring-white/10 [[data-daily-report-attachment-preview]:active_&]:after:ring-blue-500 dark:[[data-daily-report-attachment-preview]:active_&]:after:ring-blue-400 motion-safe:[[data-thumbnail-state=pending][data-thumbnail-active]_&]:animate-pulse [[data-thumbnail-state=pending]_&]:bg-slate-200 dark:[[data-thumbnail-state=pending]_&]:bg-slate-700 [@media(hover:hover)]:[[data-daily-report-attachment-preview]:hover:not(:active)_&]:after:ring-blue-300 dark:[@media(hover:hover)]:[[data-daily-report-attachment-preview]:hover:not(:active)_&]:after:ring-blue-400/60",children:a.status==="failed"?dT("span",{className:`flex size-full flex-col items-center justify-center gap-1 px-2 text-center text-slate-600 text-xs dark:text-slate-400 ${zt}`,"data-testid":"daily-report-attachment-thumbnail-unavailable",children:[go(ZE,{"aria-hidden":"true",className:"size-5 shrink-0 text-slate-500 dark:text-slate-400"}),t]}):go("img",{ref:i,alt:"",decoding:"async",fetchPriority:"low",draggable:!1,onLoad:l,onError:d,className:"max-h-full max-w-full opacity-0 motion-safe:transition-opacity motion-safe:duration-200 motion-safe:ease-out [[data-thumbnail-state=loaded]_&]:opacity-100","data-testid":"daily-report-attachment-thumbnail"})})})})});import{jsx as Se,jsxs as Ht}from"react/jsx-runtime";var Jm=1024,Al=["B","KB","MB","GB"],rf="text-slate-500 text-sm line-through dark:text-slate-400",pT="relative truncate",mT=Ce(pT),fT=A("relative ml-auto shrink-0 rounded-sm text-slate-500 text-xs underline decoration-slate-300 underline-offset-2 after:absolute after:-inset-x-2 after:-inset-y-1 hover:text-slate-700 hover:decoration-current dark:text-slate-400 dark:decoration-slate-600 dark:hover:text-slate-200",ee),yT=A("flex min-w-0 flex-col gap-2 rounded-lg",ee),hT=A("flex min-w-0 rounded-sm",ee),RT=A("m-0",Cr),bT=e=>{if(e===null||!Number.isFinite(e)||e<0)return null;let t=e,r=0;for(;t>=Jm&&r<Al.length-1;)t/=Jm,r+=1;return r===0?`${t} ${Al[r]}`:`${t.toFixed(1)} ${Al[r]}`},ST=e=>{let t=[],r=[];for(let[n,o]of e.entries())o.hasThumbnail?t.push({attachment:o,index:n}):r.push({attachment:o,index:n});return{tiles:t,rows:r}},nf=({attachment:e,labels:t,className:r})=>Ht("span",{className:mT(r),children:[bT(e.fileSize)??"\u2014",e.state==="absent"&&` \xB7 ${t.attachmentMissing}`]}),xl=({href:e,children:t,...r})=>{let n=xn();return Se("a",{href:e,...r,tabIndex:n,children:t})},of=({downloadUrl:e,label:t,fileName:r})=>Ht(xl,{href:e,className:fT,"data-testid":"daily-report-attachment-download",children:[t," ",Se(bl,{fileName:r})]}),gT=ef(({attachment:e,attachmentIndex:t,apiBasePath:r,labels:n})=>{let o=Se(Zm,{thumbnailUrl:An(r,e.id,{kind:"thumbnail",variant:ml}),unavailableLabel:n.attachmentThumbnailUnavailable}),a=e.state==="absent";return Ht("li",{className:"@container flex min-w-0 flex-col gap-1","data-testid":"daily-report-attachment-item","data-attachment-state":e.state,children:[a?Ht("div",{className:"flex min-w-0 flex-col gap-2",children:[o,Se(So,{fileName:e.fileName,attachmentIndex:t,className:rf,testId:"daily-report-attachment-name"})]}):Ht(xl,{href:An(r,e.id,{kind:"inline"}),className:yT,"data-testid":"daily-report-attachment-link",...Qm,children:[o,Se(So,{fileName:e.fileName,attachmentIndex:t,className:"text-blue-600 text-sm dark:text-blue-400 [@media(hover:hover)]:[[data-daily-report-attachment-preview]:hover_&]:underline"})]}),Ht("div",{className:"flex h-4 min-w-0 items-center gap-2 text-slate-500 text-xs tabular-nums dark:text-slate-400",style:Dm,children:[Se(nf,{attachment:e,labels:n}),!a&&Se(of,{downloadUrl:An(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})]})}),ET=ef(({attachment:e,attachmentIndex:t,apiBasePath:r,labels:n})=>{let o=e.state==="absent",a=tf(null);return Ht("li",{className:"flex items-center gap-2 rounded-lg bg-slate-50 p-2 dark:bg-slate-800/40","data-testid":"daily-report-attachment-item","data-attachment-state":e.state,children:[Se($m,{containerRef:a,children:Se("div",{ref:a,className:"flex min-w-0 flex-1","data-testid":"daily-report-attachment-name-track",children:Ht("div",{className:"flex min-w-0 flex-col",children:[o?Se(So,{fileName:e.fileName,attachmentIndex:t,className:rf,testId:"daily-report-attachment-name"}):Se(xl,{href:An(r,e.id,{kind:"inline"}),className:hT,"data-testid":"daily-report-attachment-link",children:Se(So,{fileName:e.fileName,attachmentIndex:t,className:"text-blue-600 text-sm hover:underline dark:text-blue-400"})}),Se(nf,{attachment:e,labels:n,className:"text-slate-500 text-xs tabular-nums dark:text-slate-400"})]})})}),!o&&Se(of,{downloadUrl:An(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})}),TT=({entries:e,headingId:t,apiBasePath:r,labels:n})=>{let o=tf(null);return Se(zm,{containerRef:o,children:Se("div",{ref:o,className:"@container","data-testid":"daily-report-attachment-grid-container",children:Se("ul",{"aria-labelledby":t,className:"grid @min-[1008px]:w-[calc(round(down,100%-64px,5px)+64px)] @min-[240px]:w-[calc(round(down,100%-16px,2px)+16px)] @min-[496px]:w-[calc(round(down,100%-32px,3px)+32px)] @min-[752px]:w-[calc(round(down,100%-48px,4px)+48px)] w-[round(down,100%,1px)] max-w-[1264px] @min-[1008px]:grid-cols-5 @min-[240px]:grid-cols-2 @min-[496px]:grid-cols-3 @min-[752px]:grid-cols-4 grid-cols-1 gap-[16px]","data-testid":"daily-report-attachment-grid",children:e.map(({attachment:a,index:s})=>Se(gT,{attachment:a,attachmentIndex:s,apiBasePath:r,labels:n},a.id))})})})},cs=({attachments:e})=>{let{apiBasePath:t,labels:r,headingLevel:n}=K(),o=cT(),{tiles:a,rows:s}=uT(()=>ST(e),[e]);return e.length===0?null:Ht("div",{className:"flex flex-col gap-2","data-testid":"daily-report-attachment-section",children:[Se(st,{level:hr[n],id:o,className:RT,children:r.attachments}),Ht("div",{className:"flex flex-col gap-4",children:[a.length>0&&Se(TT,{entries:a,headingId:o,apiBasePath:t,labels:r}),s.length>0&&Se("ul",{"aria-labelledby":o,className:"flex flex-col gap-2","data-testid":"daily-report-attachment-rows",children:s.map(({attachment:i,index:l})=>Se(ET,{attachment:i,attachmentIndex:l,apiBasePath:t,labels:r},i.id))})]})]})};import{useOverlayEscapeStack as UT}from"@aiquants/swipe-overlay";import{memo as pf,useCallback as fs,useEffect as lf,useId as VT,useRef as mf,useState as WT}from"react";import{useCallback as af,useMemo as DT,useState as AT}from"react";var xT=()=>[],Cl=(e,t,r)=>{let{pendingAddCommentIds:n,pendingDeleteCommentIds:o,resolvedIdMap:a,addComment:s,deleteComment:i}=$e(),{version:l}=is(),{labels:d}=K(),c=d.unknownUser,[u,p]=AT(null),h=af(m=>e&&i(e.reportHubId,m,e.date),[e,i]),f=af(m=>e&&t?s(e.reportHubId,m,e.date):Promise.resolve(),[e,t,s]),y=Ue(xT);return{uiComments:DT(()=>{if(!e)return[];let m=Gu(e.externalComments,e.postedComments,r,c),g=o.current.get(e.reportHubId);g?.size&&(m=m.filter(b=>!g.has(b.id)));let R=n.current.get(e.reportHubId);if(R?.size&&t){let b=new Set(m.map(I=>I.id)),E=er(t,""),T=E==="",v=T?c:E;for(let[I,O]of R){if(g?.has(I)||b.has(I))continue;let k=a.current.get(I);k&&b.has(k)||m.some(F=>F.isMine&&F.content===O&&typeof F.id=="number"&&F.id>0)||m.push({id:I,authorName:v,content:O,createdAt:new Date().toISOString(),isMine:!0,isLegacy:!1,isAuthorUnknown:T})}}return JSON.stringify(m)===JSON.stringify(y.current)?y.current:(y.current=m,m)},[e,t,r,c,o,n,a,l]),handleAddComment:f,handleDeleteComment:h,pendingDeleteId:u,setPendingDeleteId:p,resolvedIdMap:a.current}};import{Fragment as CT,jsx as IT}from"react/jsx-runtime";var Ve=({render:e})=>{let t=xn();return IT(CT,{children:e(t)})};import vT from"@heroicons/react/24/outline/TrashIcon.js";import{memo as wT,useId as _T,useMemo as sf,useRef as LT,useState as NT}from"react";import{jsx as Bt,jsxs as us}from"react/jsx-runtime";var Il="data-comment-id",ps="data-comment-delete-button",ms="data-comment-delete-slot",OT=A(ze,xd),MT=Array.from({length:8},(e,t)=>A("relative rounded-xl border border-slate-200 border-solid bg-white p-[11px] dark:border-slate-700 dark:bg-slate-900/70",(t&4)!==0&&"border-blue-200 bg-blue-50 dark:border-blue-800/70 dark:bg-blue-950/40",(t&2)!==0&&"hidden",(t&1)!==0?"z-50":"z-0 hover:z-10")),kT=(e,t,r)=>(e?4:0)+(t?2:0)+(r?1:0),PT=Ce("font-semibold text-xs"),FT="relative flex h-5 items-center",HT=A(Ye,"motion-safe:fade-in motion-safe:zoom-in-95 absolute top-full right-0 z-20 mt-1 whitespace-nowrap bg-red-600 font-bold text-white text-xs shadow-lg hover:bg-red-700 active:bg-red-800 motion-safe:animate-in motion-safe:duration-200",ee),BT=(e,t,r)=>t===e||typeof e=="number"&&e<0&&r?.get(e)===t||typeof t=="number"&&t<0&&r?.get(t)===e,vl=wT(({comment:e,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:s,onBeforeHide:i,resolvedIdMap:l})=>{let[d,c]=NT(!1),{labels:u}=K(),p=_T(),h=LT(null),f=BT(e.id,o,l),y=sf(()=>Fe(e.authorName),[e.authorName]),S=sf(()=>ct(e.content),[e.content]),m=ae.comment(e.id,"author"),g=ae.comment(e.id,"content"),R=hn(g),b=e.isMine&&!e.isLegacy,E=!!e.createdAt||b,T=()=>{let I=h.current;I!==null&&i(I),a(null),c(!0),typeof e.id=="number"&&n?.(e.id)},v=I=>{if(!f)return;let O=I.relatedTarget;be(O)&&I.currentTarget.contains(O)||a(null)};return us("li",{[Il]:e.id,"data-deleted":d?"true":void 0,className:MT[kT(e.isMine,d,f)],children:[us("div",{className:"mb-1 flex items-center justify-between",children:[Bt("div",{className:PT(Yu(e.color)),children:R&&!e.isAuthorUnknown?Bt(oe,{fieldKey:m,raw:e.authorName,display:y}):y.text}),E&&us("div",{className:"flex items-center gap-2",children:[e.createdAt&&Bt("div",{className:"text-slate-500 text-xs dark:text-slate-400",children:he(e.createdAt)}),b&&us("div",{[ms]:e.id,className:FT,onBlur:v,children:[Bt(Ve,{render:I=>Bt("button",{ref:h,type:"button",tabIndex:I,className:OT,title:u.commentDelete,"aria-label":u.commentDelete,"aria-expanded":f,"aria-controls":f?p:void 0,[ps]:e.id,onClick:()=>s(e.id,f),children:Bt(vT,{"aria-hidden":"true",className:f?Pe.deletePending:Pe.delete})})}),f&&Bt(Ve,{render:I=>Bt("button",{id:p,type:"button",tabIndex:I,"data-delete-confirmation":!0,className:HT,onClick:T,children:u.commentDeleteConfirm})})]})]})]}),Bt("div",{className:"whitespace-pre-wrap text-slate-700 text-sm leading-6 dark:text-slate-200",children:R?Bt(oe,{fieldKey:g,raw:e.content,display:S}):e.content})]})});vl.displayName="DailyReportPostedComment";import{Fragment as eD,jsx as Rt,jsxs as wl}from"react/jsx-runtime";var KT="data-daily-report-comment-section",zT="data-daily-report-comment-heading",$T=A(Kt,ee),jT=Ce("flex flex-col gap-2"),ff=(e,t)=>e>0||t,GT=A("h-9 min-w-0 flex-1 rounded-lg border border-solid bg-slate-50 px-[7px] text-sm focus:bg-white dark:bg-slate-800 dark:text-slate-200 dark:focus:bg-slate-900",Wt,ee),YT=A("h-9 rounded-lg bg-blue-600 px-4 font-medium text-sm text-white hover:bg-blue-700 disabled:opacity-50",ee),df=e=>e.querySelector(`[${ps}][aria-expanded="true"]`),qT=(e,t,r)=>{let n=[...e.querySelectorAll(`[${ps}]`)].filter(i=>i===t||i.closest("[data-deleted]")===null),o=n.indexOf(t),a=n.at(o+1);if(a!==void 0)return{kind:"trash",button:a};if(o>0)return{kind:"trash",button:n[o-1]};let s=[...e.querySelectorAll(`[${Il}]`)].filter(i=>!i.contains(t)&&i.closest("[data-deleted]")===null).length;return ff(s,r)?{kind:"heading"}:{kind:"report"}},XT=({comments:e,reportHubId:t,businessDate:r,onDeleteComment:n,pendingDeleteId:o,onPendingDeleteIdChange:a,resolvedIdMap:s,canComment:i,headingRef:l,onSectionRemoved:d})=>{let c=mf(null),u=UT(),p=VT(),h=o!==null,f=fs(()=>{let m=c.current,g=m===null?null:df(m),R=g===null?null:g.closest(`[${ms}]`),b=m===null?null:xe(m);a(null),g!==null&&R!==null&&b!==null&&R.contains(b)&&g.focus({preventScroll:!0})},[a]);lf(()=>{if(h)return u({id:p,onEscape:m=>tr(m)?(f(),!0):!1})},[h,u,p,f]),lf(()=>{let m=c.current;if(!h||m===null)return;let g=m.ownerDocument,R=b=>{let E=df(m)?.closest(`[${ms}]`);E!=null&&be(b.target)&&E.contains(b.target)||a(null)};return g.addEventListener("pointerdown",R,!0),()=>g.removeEventListener("pointerdown",R,!0)},[h,a]);let y=fs((m,g)=>{g?f():a(m)},[f,a]),S=fs(m=>{let g=c.current;if(g===null)return;let R=qT(g,m,i);if(R.kind==="report"){d();return}let b=R.kind==="trash"?R.button:l.current;if(b===null)throw new Error("[daily-report] the comment section's heading is not attached");b.focus({preventScroll:!0})},[i,l,d]);return e.length===0?null:Rt("ul",{ref:c,className:"space-y-2",children:e.map(m=>Rt(vl,{comment:m,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:y,onBeforeHide:S,resolvedIdMap:s},m.id))})},cf=({className:e,children:t,...r})=>{let{labels:n,headingLevel:o}=K(),a=mf(null);return ff(r.comments.length,r.canComment)?wl("div",{[KT]:"",className:jT(e),children:[Rt(st,{ref:a,level:hr[o],tabIndex:-1,[zT]:"",className:$T,children:n.comments}),Rt(XT,{...r,headingRef:a}),t]}):null},yf=pf(({report:e,canComment:t,onSectionRemoved:r,formPlacement:n,sectionClassName:o,comments:a,onAddComment:s,onDeleteComment:i,pendingDeleteId:l,onPendingDeleteIdChange:d,resolvedIdMap:c})=>{let u=t?Rt(JT,{onAddComment:s,pushedToEnd:n==="after-section"}):null,p={comments:a,canComment:t,reportHubId:e.reportHubId,businessDate:e.date,onDeleteComment:i,pendingDeleteId:l,onPendingDeleteIdChange:d,resolvedIdMap:c,onSectionRemoved:r,className:o};return n==="in-section"?Rt(cf,{...p,children:u}):wl(eD,{children:[Rt(cf,{...p}),u]})});yf.displayName="ReportCommentsView";var Eo=pf(({report:e,userId:t,canComment:r,onCommentAdded:n,onSectionRemoved:o,formPlacement:a,sectionClassName:s})=>{let{user:i}=$e(),{uiComments:l,handleAddComment:d,handleDeleteComment:c,pendingDeleteId:u,setPendingDeleteId:p,resolvedIdMap:h}=Cl(e,i,t),f=fs(async y=>{await d(y),n?.()},[d,n]);return Rt(yf,{report:e,canComment:r,onSectionRemoved:o,formPlacement:a,sectionClassName:s,comments:l,onAddComment:f,onDeleteComment:c,pendingDeleteId:u,onPendingDeleteIdChange:p,resolvedIdMap:h})});Eo.displayName="ReportComments";var QT="flex gap-2",ZT="mt-auto flex gap-2",uf="content",JT=({onAddComment:e,pushedToEnd:t})=>{let[r,n]=WT(!1),{labels:o}=K();return wl("form",{className:t?ZT:QT,onSubmit:async s=>{s.preventDefault();let i=s.currentTarget,l=i.elements.namedItem(uf);if(!(l instanceof Xe(i).HTMLInputElement))return;let d=l.value.trim();if(d&&e){n(!0),i.reset();try{await e(d)}catch{l.value=d}finally{n(!1)}}},children:[Rt(Ve,{render:s=>Rt("input",{type:"text",name:uf,tabIndex:s,placeholder:o.commentPlaceholder,className:GT,autoComplete:"off"})}),Rt(Ve,{render:s=>Rt("button",{type:"submit",tabIndex:s,className:YT,disabled:r,children:o.commentSend})})]})};import{useState as yD}from"react";import{Slot as tD}from"@radix-ui/react-slot";import{cva as rD}from"class-variance-authority";import*as Rf from"react";import{jsx as aD}from"react/jsx-runtime";var nD=rD(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 ${ee}`,{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-solid border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-2",lg:"h-11 rounded-md px-4",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),hf=new Map,oD=(e,t,r)=>{let n=`${String(e)}|${String(t)}`,o=hf.get(n);if(o!==void 0)return o(r);let a=Ce(nD({variant:e,size:t}));return hf.set(n,a),a(r)},rr=Rf.forwardRef(({className:e,variant:t,size:r,asChild:n=!1,...o},a)=>aD(n?tD:"button",{className:oD(t,r,e),ref:a,...o}));rr.displayName="Button";import{jsx as lD}from"react/jsx-runtime";var sD=`flex h-9 w-full min-w-0 rounded-md border border-solid bg-white px-[7px] py-[3px] text-base text-slate-900 shadow-xs disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:bg-slate-900 dark:text-slate-100 ${Wt} ${ee}`,iD=Ce(sD);function bf({className:e,type:t,...r}){return lD("input",{type:t,"data-slot":"input",className:iD(e),...r})}import*as Sf from"@radix-ui/react-label";import{jsx as uD}from"react/jsx-runtime";var dD="flex select-none items-center gap-2 font-medium text-sm leading-none [:where(.group)[data-disabled=true]_&]:pointer-events-none [:where(.group)[data-disabled=true]_&]:opacity-50 [:where(.peer):disabled~&]:cursor-not-allowed [:where(.peer):disabled~&]:opacity-50",cD=Ce(dD);function To({className:e,...t}){return uD(Sf.Root,{"data-slot":"label",className:cD(e),...t})}import{jsx as fD}from"react/jsx-runtime";var pD=`flex min-h-15 w-full rounded-md border border-solid bg-white p-[7px] text-base text-slate-900 shadow-xs disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:bg-slate-900 dark:text-slate-100 ${Wt} ${ee}`,mD=Ce(pD);function gf({className:e,...t}){return fD("textarea",{"data-slot":"textarea",className:mD(e),...t})}import{jsx as bt,jsxs as ys}from"react/jsx-runtime";var Cn=e=>({title:e.subject??"",content:e.content??""}),hD=e=>{e.preventDefault()},hs=({report:e,onCancel:t,onPublishSuccess:r,titleInputRef:n})=>{let{updateReport:o,publishReport:a}=$e(),{labels:s}=K(),i=yr(),{title:l,content:d}=zp(e.reportHubId),[c,u]=yD(!1),p=async()=>{u(!0);try{await o(e.reportHubId,{title:l,content:d},e.date)}catch{}finally{u(!1)}},h=async()=>{u(!0);try{await o(e.reportHubId,{title:l,content:d},e.date),await a(e.reportHubId,e.date),r?.()}catch{}finally{u(!1)}},f=`report-title-${e.reportHubId}`,y=`report-content-${e.reportHubId}`;return ys("form",{className:"space-y-4 p-1",onSubmit:hD,children:[ys("div",{className:"space-y-2",children:[bt(To,{htmlFor:f,children:s.formTitle}),bt(Ve,{render:S=>bt(bf,{ref:n,id:f,value:l,onChange:m=>i.setInput(e.reportHubId,{title:m.target.value}),placeholder:s.formTitlePlaceholder,disabled:c,tabIndex:S})})]}),ys("div",{className:"space-y-2",children:[bt(To,{htmlFor:y,children:s.formContent}),bt(Ve,{render:S=>bt(gf,{id:y,value:d,onChange:m=>i.setInput(e.reportHubId,{content:m.target.value}),placeholder:s.formContentPlaceholder,className:"min-h-50",disabled:c,tabIndex:S})})]}),ys("div",{className:"flex justify-end gap-2",children:[t&&bt(Ve,{render:S=>bt(rr,{type:"button",variant:"outline",onClick:t,disabled:c,tabIndex:S,children:s.formCancel})}),bt(Ve,{render:S=>bt(rr,{type:"button",variant:"secondary",onClick:p,disabled:c,tabIndex:S,children:s.formSave})}),bt(Ve,{render:S=>bt(rr,{type:"button",onClick:h,disabled:c,tabIndex:S,children:s.formPublish})})]})]})};import kD from"lucide-react/dist/esm/icons/check.js";import PD from"lucide-react/dist/esm/icons/pencil.js";import FD from"lucide-react/dist/esm/icons/trash-2.js";import{useContext as Df,useMemo as Af,useSyncExternalStore as xf}from"react";import{jsx as Wr,jsxs as Tf}from"react/jsx-runtime";var RD="inline-grid whitespace-nowrap text-xs leading-4 tabular-nums text-slate-600 dark:text-slate-300",Ef="[grid-area:1/1]",bD=e=>{let t=0;for(let r=e;r!==0;r&=r-1)t+=1;return t},SD=({isEditing:e,descriptionId:t})=>{let{entry:r,tally:n,indicator:o}=yo(),{labels:a}=K(),s=xf(n.subscribe,n.getSnapshot,n.getSnapshot),{setCount:i,showsMatchedSets:l}=o,d=l?`${a.searchMatchedKeywords(i,i)} ${a.searchMatchOutsideView}`:a.searchMatchOutsideView,c=r===null||r.matchedSets===null?null:bD(r.matchedSets),u=r!==null&&!e&&(c===null||c>=1)&&s.entry===r&&s.isCurrent&&s.fields.length===0,p=l&&c!==null?a.searchMatchedKeywordsDescription(c,i):null,h=Af(()=>dl(s.fields,a),[s.fields,a]),f=[p,h,u?a.searchMatchOutsideViewDescription:null].filter(y=>y!==null&&y.length>0);return Tf("span",{className:RD,"data-daily-report-search-indicator":!0,children:[Wr("span",{"aria-hidden":"true",className:`invisible ${Ef}`,"data-daily-report-search-indicator-placeholder":!0,children:d}),Tf("span",{className:Ef,children:[p!==null&&c!==null?Wr("span",{"aria-hidden":"true",title:p,"data-daily-report-search-matched-keywords":`${c}/${i}`,children:a.searchMatchedKeywords(c,i)}):null,p!==null&&u?" ":null,u?Wr("span",{"aria-hidden":"true",title:a.searchMatchOutsideViewDescription,"data-daily-report-search-outside-view":!0,children:a.searchMatchOutsideView}):null,Wr("span",{id:t===null?void 0:t,className:Vt,"data-daily-report-search-indicator-description":!0,children:f.join(" ")})]})]})},Rs=({isEditing:e,descriptionId:t})=>Df(ht)===null?null:Wr(SD,{isEditing:e,descriptionId:t}),gD=({id:e})=>{let{tally:t}=yo(),{labels:r}=K(),n=xf(t.subscribe,t.getSnapshot,t.getSnapshot),o=Af(()=>dl(n.fields,r),[n.fields,r]);return Wr("span",{id:e,hidden:!0,"data-daily-report-search-match-description":!0,children:o})},Cf=({id:e})=>Df(ht)===null?null:Wr(gD,{id:e});import{jsx as If}from"react/jsx-runtime";var Ss=24,vf=2,ED=20,bs=5,TD=3,DD=()=>{let e=Math.cos(2*Math.PI/bs)/Math.cos(Math.PI/bs),t=Array.from({length:2*bs},(p,h)=>{let f=-Math.PI/2+h*Math.PI/bs,y=h%2===0?1:e;return{x:y*Math.cos(f),y:y*Math.sin(f)}}),r=t.map(p=>p.x),n=t.map(p=>p.y),[o,a,s,i]=[Math.min(...r),Math.max(...r),Math.min(...n),Math.max(...n)],l=(ED-vf)/(a-o),d=Ss/2-l*(o+a)/2,c=Ss/2-l*(s+i)/2,u=p=>String(Number(p.toFixed(TD)));return t.map(p=>`${u(d+l*p.x)},${u(c+l*p.y)}`).join(" ")},AD=DD(),In=({filled:e})=>If("svg",{viewBox:`0 0 ${Ss} ${Ss}`,"aria-hidden":"true",fill:"none",stroke:"currentColor",strokeWidth:vf,strokeLinejoin:"round",className:e?Pe.starOn:Pe.starOff,children:If("polygon",{points:AD})});import{Fragment as CD,jsx as gs,jsxs as ID}from"react/jsx-runtime";var xD=Ce(vd),vn=({config:e,id:t})=>gs("span",{id:t,className:xD(e.badgeClassName),children:e.name===void 0?e.label:ID(CD,{children:[gs("span",{"aria-hidden":"true",children:gs("abbr",{title:e.name,children:e.label})}),gs("span",{className:Vt,children:e.name})]})});import{jsx as wf}from"react/jsx-runtime";var Es=24,vD=6,wn=()=>wf("svg",{viewBox:`0 0 ${Es} ${Es}`,"aria-hidden":"true",className:Pe.read,children:wf("circle",{cx:Es/2,cy:Es/2,r:vD,fill:"currentColor"})});import{jsx as _D}from"react/jsx-runtime";var wD=/^(\d{4}-\d{2}-\d{2})(?:T(\d{2}:\d{2}):\d{2})?$/,Kr=({text:e})=>{let t=wD.exec(e);if(t===null)return e;let[,r,n]=t;return _D("time",{dateTime:e,children:n===void 0?r:`${r} ${n}`})};import{Fragment as MD,jsx as _e,jsxs as _l}from"react/jsx-runtime";var LD=Ce("m-0"),Je=({label:e,classNames:t,valueId:r,children:n})=>_l("div",{className:t.field,children:[_e("dt",{className:t.label,children:e}),_e("dd",{id:r,className:LD(t.value),children:n})]}),ND="mt-2 font-semibold text-slate-600 text-xs uppercase tracking-wide first:mt-0 dark:text-slate-400",OD="m-0 mt-1 text-slate-700 text-sm dark:text-slate-200",Rr=({label:e,children:t})=>_l(MD,{children:[_e("dt",{className:ND,children:e}),_e("dd",{className:OD,children:t})]}),_f=({report:e,visitTimeDisplay:t,labels:r})=>{let n=ur(e.category),o=ur(e.creationCategory);return _l("dl",{className:"m-0 flex flex-col rounded-xl bg-slate-100 p-3 text-slate-600 text-xs dark:bg-slate-800/60 dark:text-slate-300",children:[_e(Rr,{label:r.author,children:_e(oe,{fieldKey:ae.field("author"),raw:e.author,display:Fe(e.author)})}),_e(Rr,{label:r.createdAt,children:_e(Kr,{text:he(e.createdAt)})}),_e(Rr,{label:r.updatedBy,children:_e(oe,{fieldKey:ae.field("updatedBy"),raw:e.updatedBy,display:Fe(e.updatedBy)})}),_e(Rr,{label:r.updatedAt,children:_e(Kr,{text:he(e.updatedAt)})}),_e(Rr,{label:r.businessDate,children:_e(Kr,{text:he(e.date)})}),t!==null&&_e(Rr,{label:r.visitTime,children:t}),n.text.length>0&&_e(Rr,{label:r.category,children:_e(oe,{fieldKey:ae.field("category"),raw:e.category,display:n})}),o.text.length>0&&_e(Rr,{label:r.creationCategory,children:_e(oe,{fieldKey:ae.field("creationCategory"),raw:e.creationCategory,display:o})})]})};import{jsx as se,jsxs as Nf}from"react/jsx-runtime";var Ts={field:A(Ye,"gap-1 whitespace-nowrap bg-slate-100 text-slate-800 dark:bg-slate-800 dark:text-slate-100"),label:"text-slate-600 text-xs uppercase tracking-wide dark:text-slate-400",value:""},HD={field:A(Ye,"gap-1 whitespace-nowrap bg-blue-50 font-semibold text-blue-800 text-xs dark:bg-blue-500/15 dark:text-blue-200"),label:"text-blue-700 text-xs uppercase tracking-wide dark:text-blue-300",value:""},Lf={field:A(Ye,"gap-1 whitespace-nowrap bg-amber-100 text-amber-900 dark:bg-amber-500/15 dark:text-amber-200"),label:"text-amber-800 text-xs uppercase tracking-wide dark:text-amber-300",value:""},Of=({report:e,isRead:t,isStarred:r,isMine:n,onToggleRead:o,onToggleStar:a,onEdit:s,editButtonRef:i,onDelete:l,sourceConfig:d,visitTimeDisplay:c,markerIds:u,labels:p})=>{let h=r?p.starRemove:p.starAdd,f=t?p.markUnread:p.markRead,y=ur(e.category),S=ur(e.creationCategory);return Nf("div",{className:"flex flex-wrap items-center gap-2 font-medium text-slate-600 text-xs dark:text-slate-300",children:[se(Wn,{id:u.attachments,count:e.attachments.length,label:p.attachments}),d?se(vn,{id:u.source,config:d}):null,se(Ve,{render:m=>se("button",{type:"button",onClick:a,tabIndex:m,className:ze,title:h,"aria-label":h,"data-detail-star-button":e.reportHubId,children:se(In,{filled:r})})}),se(Ve,{render:m=>se("button",{type:"button",onClick:o,tabIndex:m,className:ze,title:f,"aria-label":f,"data-detail-read-button":e.reportHubId,children:t?se(kD,{className:Pe.read}):se(wn,{})})}),s&&se(Ve,{render:m=>se("button",{ref:i,type:"button",onClick:s,tabIndex:m,"data-detail-edit-button":e.reportHubId,className:ze,title:p.edit,"aria-label":p.edit,children:se(PD,{className:Pe.edit})})}),n&&se(Ve,{render:m=>se("button",{type:"button",onClick:l,tabIndex:m,"data-detail-delete-button":e.reportHubId,className:ze,title:p.deleteReport,"aria-label":p.deleteReport,children:se(FD,{className:Pe.delete})})}),Nf("dl",{className:"m-0 flex flex-wrap items-center gap-2",children:[se(Je,{label:p.id,classNames:HD,children:e.reportHubId}),se(Je,{label:p.businessDate,classNames:Ts,children:se(Kr,{text:he(e.date)})}),se(Je,{label:p.author,classNames:Ts,children:se(oe,{fieldKey:ae.field("employeeName"),raw:e.employeeName,display:Fe(e.employeeName)})}),se(Je,{label:p.visitTime,classNames:Ts,children:pr(c)}),se(Je,{label:p.updatedAt,classNames:Ts,children:se(Kr,{text:he(e.updatedAt)})}),y.text.length>0&&se(Je,{label:p.category,classNames:Lf,children:se(oe,{fieldKey:ae.field("category"),raw:e.category,display:y})}),S.text.length>0&&se(Je,{label:p.creationCategory,classNames:Lf,children:se(oe,{fieldKey:ae.field("creationCategory"),raw:e.creationCategory,display:S})})]}),se(Rs,{isEditing:!1,descriptionId:u.searchMatch})]})};import{useCallback as fA,useContext as iy,useLayoutEffect as Pl,useRef as ly}from"react";import{startTransition as oA,useCallback as ie,useLayoutEffect as gr,useMemo as oy,useRef as zr,useState as Ln,useSyncExternalStore as aA}from"react";import{flushSync as ay}from"react-dom";var Mf=(e,t)=>e.id===t.id&&e.indexHint===t.indexHint,kf=e=>{let t=new Set,r=e,n=null,o=Object.freeze({selected:r,settled:r}),a=()=>{let u=n===null?r:n;if(!(Mf(o.selected,r)&&Mf(o.settled,u))){o=Object.freeze({selected:r,settled:u});for(let p of[...t])p()}};return{getSnapshot:()=>o,subscribe:u=>(t.add(u),()=>{t.delete(u)}),select:u=>{r=u,a()},hold:u=>{n=u,a()},release:()=>{n=null,a()}}};var _n=e=>({owner:e,focusIndex:null}),Ll=Object.freeze({owner:null,focusIndex:null}),Pf=(e,t)=>{if(e.length===0)return Ll;let r=Math.min(Math.max(t,0),e.length-1);return{owner:{reportHubId:Ot(e,r).reportHubId,index:r},focusIndex:r}},Ff=(e,t)=>{switch(t.kind){case"focusIn":return _n(t.row);case"focusOut":return t.to==="outside"?Ll:_n(e);case"pointerPress":return t.at==="outside"?Ll:_n(e);case"listChanged":{if(e===null)return _n(e);let r=Ee(t.items,e.reportHubId,e.index);return r===-1?Pf(t.items,e.index):_n(r===e.index?e:{reportHubId:e.reportHubId,index:r})}case"removed":return t.selection===null||t.selection.reportHubId!==t.reportHubId?_n(e):Pf(t.items,t.selection.index)}};var BD=new Set(["Alt","AltGraph","CapsLock","Control","Fn","FnLock","Hyper","Meta","NumLock","ScrollLock","Shift","Super","Symbol","SymbolLock"]),Ds={capture:!0},As=new WeakMap,UD=e=>{let t=o=>{BD.has(o.key)||(n.last="keyboard")},r=()=>{n.last="pointer"},n={observers:0,last:null,detach:()=>{e.removeEventListener("keydown",t,Ds),e.removeEventListener("pointerdown",r,Ds)}};return e.addEventListener("keydown",t,Ds),e.addEventListener("pointerdown",r,Ds),n},Hf=e=>{let t=As.get(e),r=t===void 0?UD(e):t;t===void 0&&As.set(e,r),r.observers+=1;let n=!1;return()=>{n||(n=!0,r.observers-=1,!(r.observers>0)&&(r.detach(),As.delete(e)))}},Bf=e=>{let t=As.get(e);return t===void 0?null:t.last};var xs=e=>e.matches(":focus-visible")&&Bf(e.ownerDocument)!=="pointer";var VD="data-daily-report-keyboard-focus",br={capture:!0},Uf=e=>{let t=Hf(e.ownerDocument),r=i=>{e.toggleAttribute(VD,be(i)&&xs(i))},n=i=>r(i.target),o=i=>{be(i.relatedTarget)&&e.contains(i.relatedTarget)||r(null)},a=()=>r(null);e.addEventListener("focusin",n,br),e.addEventListener("keydown",n,br),e.addEventListener("focusout",o,br),e.addEventListener("pointerdown",a,br);let s=xe(e);return r(s!==null&&e.contains(s)?s:null),()=>{e.removeEventListener("focusin",n,br),e.removeEventListener("keydown",n,br),e.removeEventListener("focusout",o,br),e.removeEventListener("pointerdown",a,br),r(null),t()}};var WD='form, input, textarea, select, [contenteditable]:not([contenteditable="false"]), audio[controls], video[controls]',KD=["combobox","listbox","menu","menubar","radiogroup","slider","spinbutton","textbox","tree","grid","scrollbar","tablist","toolbar","treegrid","separator"],zD=KD.map(e=>`[role="${e}"]`).join(", "),$D=new Map([["ArrowUp","previous"],["ArrowDown","next"],["Home","first"],["End","last"],["PageUp","pageBackward"],["PageDown","pageForward"]]),jD=new Set(["Enter"," "]),GD=new Map([["Home","exitBefore"],["End","exitAfter"]]),Nl=(e,t)=>{if(e.altKey||e.metaKey||e.shiftKey)return null;if(e.ctrlKey)return GD.get(e.key)??null;let r=$D.get(e.key);return r!==void 0?r:jD.has(e.key)&&t.rowActivation?"activate":null},Vf=(e,t,r)=>{let n=e.closest(t);return n!==null&&n!==r&&r.contains(n)},Wf=(e,t,r)=>{let n=Nl(e,r);if(n===null||e.defaultPrevented||Ur(e)||t===null||!be(e.target)||!t.contains(e.target))return null;let o=fr(e.target,t);return o===null?null:n==="activate"?e.target===o?"activate":null:Vf(e.target,WD,t)||Vf(e.target,zD,t)?null:n};var YD=.875,Cs={kind:"stay"},Is=e=>{if(e.kind==="measured")return e.heightOf;let{rowHeight:t}=e;return()=>t},Kf=e=>Math.floor(YD*e),Sr=(e,t)=>({kind:"move",index:e,align:t}),Do=(e,t,r,n)=>e>=0&&e+t<=r?"none":t>r?n>0?"top":"bottom":e<0?"top":"bottom",qD=({index:e,count:t,viewport:r,focusedRowTop:n,heightOf:o})=>{let a=o(e),s=n+a,i={index:e+1,top:s};for(let l=e+1;l<t;l++){let d=o(l);if(a+=d,a>r)break;i={index:l,top:s},s+=d}return i},XD=({index:e,viewport:t,focusedRowTop:r,heightOf:n})=>{let o=n(e),a=r,s={index:e-1,top:r-n(e-1)};for(let i=e-1;i>=0;i--){let l=n(i);if(a-=l,o+=l,o>t)break;s={index:i,top:a}}return s},QD=(e,t,r)=>{let{index:n,count:o,viewport:a,focusedRowTop:s,heightOf:i}=t,l=s+i(n);switch(e){case"previous":{if(n===0)return Cs;if(r==="top")return Sr(n-1,"top");let d=i(n-1);return Sr(n-1,Do(s-d,d,a,-1))}case"next":return n===o-1?Cs:r==="top"?Sr(n+1,"top"):Sr(n+1,Do(l,i(n+1),a,1));case"first":return Sr(0,"top");case"last":return Sr(o-1,i(o-1)<=a?"bottom":"top");case"pageForward":{if(l>a)return{kind:"reveal",delta:Math.min(l-a,Kf(a))};if(n===o-1)return Cs;let d=qD(t);return Sr(d.index,Do(d.top,i(d.index),a,1))}case"pageBackward":{if(s<0)return{kind:"reveal",delta:-Math.min(-s,Kf(a))};if(n===0)return Cs;let d=XD(t);return Sr(d.index,Do(d.top,i(d.index),a,-1))}}},ZD=({index:e,focusedRowTop:t,heightOf:r},n)=>Yf(n,{index:e,offsetPx:-t},r),jf=(e,t,r,n)=>{let o=r,a=null,s=0;for(let i=0;i<t;i++){let l=QD(e,o,n);if(l.kind==="stay")break;l.kind==="reveal"?(s+=l.delta,o={...o,focusedRowTop:o.focusedRowTop-l.delta}):l.align==="none"?o={...o,index:l.index,focusedRowTop:ZD(o,l.index)}:(a={index:l.index,align:l.align},s=0,o={...o,index:l.index,focusedRowTop:l.align==="top"?0:o.viewport-o.heightOf(l.index)})}return{index:o.index,alignment:a,scrollDelta:s}},Gf=({index:e,viewport:t,focusedRowTop:r,heightOf:n})=>Do(r,n(e),t,1),Yf=(e,t,r)=>{let n=-t.offsetPx;for(let o=t.index;o<e;o++)n+=r(o);for(let o=e;o<t.index;o++)n-=r(o);return n},Ao=(e,t,r,n)=>{let o=e.getViewportSize(),a=e.getScrollPosition();if(!(o>0&&a>=0))return null;let s=Is(n);if(n.kind==="uniform")return{index:t,count:r,viewport:o,focusedRowTop:t*n.rowHeight-a,heightOf:s};let i=e.getScrollAnchor();return i===null?null:{index:t,count:r,viewport:o,focusedRowTop:Yf(t,i,s),heightOf:s}},zf=1,qf=(e,t,r)=>{let n=e.getViewportSize(),o=e.getScrollAnchor();if(!(n>0)||o===null||t===0)return null;let a=xo(o,n,t,r);return{start:Math.max(0,o.index-zf),end:Math.min(t-1,a+zf)}},xo=(e,t,r,n)=>{let o=Is(n),a=e.index,s=o(a)-e.offsetPx;for(;s<t&&a<r-1;)a+=1,s+=o(a);return a},Xf=(e,t)=>e.top<t.top?e.top-t.top:e.bottom>t.bottom?Math.min(e.bottom-t.bottom,e.top-t.top):0,$f=(e,t,r)=>e!==null&&e.index!==-1&&(e.reportHubId===r||e.index>=t.visibleStartIndex&&e.index<=t.visibleEndIndex),Qf=(e,t,r,n,o)=>{if(n===null)return t!==null?t.reportHubId:r===null?null:r.reportHubId;if($f(t,n,o))return t.reportHubId;if($f(r,n,o))return r.reportHubId;let a=pe(e,n.visibleStartIndex);return a===void 0?null:a.reportHubId};var Ml=1,Co=2,Ol=({selectedId:e,tabStopId:t,arrivingId:r},n)=>(n===e||n===r?Ml:0)|(n===t||n===r?Co:0),JD=e=>{if(Yt(e))return!0;let t=xe(e);return t!==null&&e.contains(t)},eA=(e,t)=>{let r=e.closest(`[${_a}]`);return r!==null&&r!==e&&Pr(r)===t&&xe(e)===r},Zf={capture:!0},Jf=({getContainer:e,initialSelectedId:t})=>{let r={selectedId:t,tabStopId:t,arrivingId:null},n=null,o=null,a=!1,s=null,i=new Map,l=new Map,d=null,c=new Map,u=m=>Ol(r,m),p=m=>{let g=l.get(m);if(g===void 0)return;let R=(u(m)&Co)!==0?"0":"-1";g.getAttribute("tabindex")!==R&&g.setAttribute("tabindex",R)},h=()=>{if(n===null)return;let m=n;n=null,p(m)},f=(m,g)=>{h();let R={...r};m(r);let b=r,E=new Set([R.selectedId,R.tabStopId,R.arrivingId,b.selectedId,b.tabStopId,b.arrivingId]);for(let T of E){if(T===null)continue;let v=Ol(R,T),I=Ol(b,T);if(v===I)continue;((v^I)&Co)!==0&&(T===g?n=T:p(T));let O=i.get(T);if(O!==void 0)for(let k of[...O])k()}},y=m=>{let g=m.ownerDocument,R=n!==null&&!Yt(m);R?g.addEventListener("focusout",h,Zf):h(),a=!0;try{m.focus({preventScroll:!0})}finally{a=!1,R&&g.removeEventListener("focusout",h,Zf),h()}},S=m=>{let g=e();g!==null&&(o=null,JD(g)&&y(m))};return{getSelectedId:()=>r.selectedId,getTabStopId:()=>r.tabStopId,rowStateOf:u,setTabStopId:m=>{f(g=>{g.tabStopId=m},null)},settleSelection:(m,g)=>{f(R=>{R.selectedId=m,R.tabStopId=g,R.arrivingId=null},null)},arrive:m=>{f(g=>{g.arrivingId=m},m)},subscribe:(m,g)=>{let R=i.get(m)??new Set;return R.add(g),i.set(m,R),()=>{R.delete(g),R.size===0&&i.get(m)===R&&i.delete(m)}},registerFocusTarget:(m,g)=>{if(l.set(m,g),p(m),o===m){S(g);return}s===null||s.reportHubId!==m||(Yt(g)||eA(g,m))&&y(g)},unregisterFocusTarget:(m,g)=>{l.get(m)===g&&l.delete(m)},requestFocus:m=>{o=m;let g=l.get(m);g!==void 0&&S(g)},cancelFocusRequest:()=>{o=null},pendingFocusId:()=>o,isMovingFocus:()=>a,getFocusOwner:()=>s,setFocusOwner:m=>{s=m},restoreFocus:m=>{if(s===null||s.reportHubId!==m)return;let g=l.get(m);g===void 0||!Yt(g)||y(g)},holdBodiesOutside:m=>{d=m},isBodyHeldAt:m=>d!==null&&(m<d.start||m>d.end),registerHeldBody:(m,g,R)=>{let b={indexHint:g,release:R};return c.set(m,b),()=>{c.get(m)===b&&c.delete(m)}},releaseHeldBodiesWithin:(m,g)=>{if(m!==null)for(let[R,{indexHint:b,release:E}]of[...c]){let T=g(R,b);T>=m.start&&T<=m.end&&E()}}}};var Dt={previous:{axis:"row",amount:-1},next:{axis:"row",amount:1},pageBackward:{axis:"page",amount:-1},pageForward:{axis:"page",amount:1},first:{axis:"first",amount:1},last:{axis:"last",amount:1},activate:{axis:"activate",amount:1}},kl=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!1}),tA=Object.freeze({apply:null,flush:!1,requestFrame:!0,ended:!1}),ey=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!0}),rA=new Map(Object.values(Dt).map(e=>[e,Object.freeze({apply:e,flush:!1,requestFrame:!0,ended:!1})])),ty=e=>{let t=rA.get(e);if(t===void 0)throw new Error(`[daily-report] a repeat step must be one of REPEAT_STEPS; got the ${e.axis} axis with ${e.amount}`);return t},nA=(e,t,r)=>e==="row"||e==="page"?t+r:r,ry=e=>({state:{axis:e.axis,pending:0,fence:"immediate"},effects:ty(e)}),ny=(e,t)=>{switch(t.kind){case"repeat":{let{step:r}=t;if(e.axis!==r.axis)throw new Error(`[daily-report] a ${r.axis} repeat cannot continue a ${e.axis} stream`);return e.fence==="open"?(e.fence="immediate",ty(r)):(e.pending=nA(e.axis,e.pending,r.amount),kl)}case"frame":{if(e.fence==="open")return kl;if(e.fence==="immediate")return e.fence="flush",tA;if(e.pending===0)return e.fence="open",kl;let r=e.pending;return e.pending=0,{apply:{axis:e.axis,amount:r},flush:!0,requestFrame:!0,ended:!1}}case"keyup":return e.pending===0?ey:{apply:{axis:e.axis,amount:e.pending},flush:!0,requestFrame:!1,ended:!0};case"cancel":return ey}};var sA=Object.freeze({kind:"frame"}),iA=Object.freeze({kind:"keyup"}),lA=Object.freeze({kind:"cancel"}),dA=Object.freeze({previous:Object.freeze({kind:"repeat",step:Dt.previous}),next:Object.freeze({kind:"repeat",step:Dt.next}),pageBackward:Object.freeze({kind:"repeat",step:Dt.pageBackward}),pageForward:Object.freeze({kind:"repeat",step:Dt.pageForward}),first:Object.freeze({kind:"repeat",step:Dt.first}),last:Object.freeze({kind:"repeat",step:Dt.last}),activate:Object.freeze({kind:"repeat",step:Dt.activate})}),cA=(e,t)=>{if(e==="first"||e==="last")return{command:e,count:1};let r=Math.abs(t);return e==="row"?{command:t>0?"next":"previous",count:r}:{command:t>0?"pageForward":"pageBackward",count:r}},uA=(e,t)=>({top:e.top-t,bottom:e.bottom+t}),pA=e=>{let t=Pr(e),r=pn(e);return t===null||r===null?null:{reportHubId:t,index:r-1}},vs=(e,t)=>{let r=ie(a=>e.subscribe(t,a),[e,t]),n=ie(()=>e.rowStateOf(t),[e,t]),o=aA(r,n,n);return{isCurrent:(o&Ml)!==0,isTabStop:(o&Co)!==0}},ws=(e,t,r)=>{let[n,o]=Ln(()=>!e.isBodyHeldAt(r));return gr(()=>{if(n)return;let a=()=>o(!0),s=e.registerHeldBody(t,r,a);return oA(a),s},[e,t,r,n]),n},mA=e=>e==="first"||e==="last",sy=({items:e,selectedId:t,onSelect:r,containerRef:n,rootRef:o,handleRef:a,scroller:s,rowSizing:i,arrowAlign:l,rowActivation:d})=>{let[c]=Ln(()=>Jf({getContainer:()=>n.current,initialSelectedId:t})),u=Ue(()=>({items:e,onSelect:r,rowSizing:i,arrowAlign:l,rowActivation:d})),p=zr(null),h=zr(null),[f,y]=Ln(null),[S,m]=Ln(0),g=zr(null),R=zr(null),[b]=Ln(()=>kf({id:t,indexHint:null})),E=zr(!1),T=zr(null),[v,I]=Ln(0),O=oy(()=>({id:t,indexHint:t===null?null:ku(f,t)}),[t,f]),k=zr(O);gr(()=>{u.current={items:e,onSelect:r,rowSizing:i,arrowAlign:l,rowActivation:d},k.current=O},[u,e,r,i,l,d,O]),gr(()=>{b.select(O)},[b,O,S]);let F=ie((_,H)=>{let U=h.current;if(U!==null&&U.items===_&&U.reportHubId===H)return U.index;let X=Ee(_,H,U!==null&&U.reportHubId===H?U.index:null);return X!==-1&&(h.current={items:_,reportHubId:H,index:X}),X},[]),D=ie((_,H)=>{h.current={items:u.current.items,reportHubId:_,index:H},y(U=>U!==null&&U.reportHubId===_&&U.index===H?U:{reportHubId:_,index:H}),m(U=>U+1),b.select({id:_,indexHint:H})},[u,b]),C=ie(_=>{let H=c.getFocusOwner();if(H===null)return null;let U=Ee(_,H.reportHubId,H.index);return U===-1?null:{reportHubId:H.reportHubId,index:U}},[c]),x=ie(_=>{let H=u.current.items,U=_===null?null:{reportHubId:_,index:F(H,_)};return Qf(H,C(H),U,p.current,T.current)},[u,F,C]),w=ie(()=>{c.setTabStopId(x(c.getSelectedId()))},[c,x]),M=ie(_=>{let H=c.getFocusOwner();H===_||H!==null&&_!==null&&H.reportHubId===_.reportHubId&&H.index===_.index||(c.setFocusOwner(_),E.current||w())},[c,w]),L=ie(_=>{let H=Ff(c.getFocusOwner(),_);M(H.owner),H.focusIndex!==null&&(g.current=H.focusIndex,c.requestFocus(H.owner.reportHubId))},[c,M]);gr(()=>{c.settleSelection(t,x(t))},[c,t,e,v,x]),gr(()=>{let _=o.current;if(_!==null)return Uf(_)},[o]),gr(()=>{let _=n.current;if(_===null)return;let H=_.ownerDocument,U=X=>{let fe=n.current,Me=X.target;L({kind:"pointerPress",at:fe!==null&&be(Me)&&fe.contains(Me)?"inside":"outside"})};return H.addEventListener("pointerdown",U,{capture:!0}),()=>H.removeEventListener("pointerdown",U,{capture:!0})},[n,L]),gr(()=>{let _=c.pendingFocusId();_!==null&&Ee(e,_,g.current)===-1&&c.cancelFocusRequest(),L({kind:"listChanged",items:e})},[c,e,L]);let P=ie(_=>{L({kind:"removed",reportHubId:_,selection:h.current,items:u.current.items})},[u,L]),V=ie((_,H,U,X)=>{let{items:fe,onSelect:Me,rowSizing:Ke,arrowAlign:Be}=u.current,q=a.current;if(Me===null||q===null)return null;let N=Ee(fe,U.reportHubId,U.index);if(N===-1)return null;let B=Ao(q,N,fe.length,Ke);if(B===null)return null;let G=jf(_,H,B,Be),re=Ot(fe,G.index),ke=G.index!==N,St=ke||X&&mA(_)&&k.current.id!==re.reportHubId;if(ke){c.arrive(re.reportHubId),T.current=re.reportHubId,g.current=G.index,E.current=!0;try{c.requestFocus(re.reportHubId)}finally{E.current=!1}}try{ay(()=>{St&&(c.pendingFocusId()===null&&c.settleSelection(re.reportHubId,re.reportHubId),Me(re.reportHubId,G.index)),G.alignment!==null&&s.toIndex(G.alignment.index,{align:G.alignment.align}),G.scrollDelta!==0&&s.by(G.scrollDelta),St&&(D(re.reportHubId,G.index),I(Xr=>Xr+1));let Ut=qf(q,fe.length,Ke);c.holdBodiesOutside(Ut),c.releaseHeldBodiesWithin(Ut,(Xr,jh)=>Ee(fe,Xr,jh))})}finally{c.holdBodiesOutside(null)}return ke?{reportHubId:re.reportHubId,index:G.index}:{reportHubId:U.reportHubId,index:N}},[c,u,a,s,D]),z=ie(_=>{let{items:H,onSelect:U}=u.current;if(U===null)return;let X=Ee(H,_.reportHubId,_.index);X!==-1&&(U(_.reportHubId,X),D(_.reportHubId,X))},[u,D]),j=ie(_=>{let H=n.current,U=H===null?null:xe(H),X=H!==null&&U!==null&&H.contains(U)?io(fr(U,H),u.current.items):null;return X===null?_.origin:X},[u,n]),W=ie((_,H)=>{let U=j(_);if(H.axis==="activate"){z(U);return}let X=cA(H.axis,H.amount),fe=V(X.command,X.count,U,!1);fe!==null&&(_.origin=fe)},[j,z,V]),me=ie(_=>{R.current=null,_.frame!==0&&_.view.cancelAnimationFrame(_.frame),b.release()},[b]),Le=ie((_,H,U)=>{let{apply:X}=H;X!==null&&(H.flush?ay(()=>W(_,X)):W(_,X)),R.current===_&&(H.ended?me(_):H.requestFrame&&(_.frame=_.view.requestAnimationFrame(U)))},[W,me]),ue=ie((_,H,U)=>{Le(_,ny(_.state,H),U)},[Le]),le=ie(()=>{let _=R.current;_!==null&&(_.frame=0,ue(_,sA,le))},[ue]),ge=ie(()=>{let _=R.current;_!==null&&ue(_,iA,le)},[ue,le]),Ze=ie(()=>{let _=R.current;_!==null&&ue(_,lA,le)},[ue,le]),lt=ie((_,H,U)=>{b.hold(k.current);let{state:X,effects:fe}=ry(Dt[_]),Me={state:X,origin:H,view:U,frame:0};R.current=Me,Le(Me,fe,le)},[b,Le,le]);gr(()=>()=>{let _=R.current;R.current=null,_!==null&&_.frame!==0&&_.view.cancelAnimationFrame(_.frame)},[]);let Y=ie(_=>{let H=R.current,U=H!==null&&_.repeat?Nl(_,u.current):null;if(H!==null&&U!==null&&U!=="exitBefore"&&U!=="exitAfter"&&Dt[U].axis===H.state.axis){_.preventDefault(),ue(H,dA[U],le);return}let{items:X,onSelect:fe,rowSizing:Me,rowActivation:Ke}=u.current,Be=n.current,q=fe===null?null:Wf(Tn(_),Be,{rowActivation:Ke});if(c.cancelFocusRequest(),ge(),q===null||Be===null)return;if(q==="exitBefore"||q==="exitAfter"){let G=Am(Be,q==="exitBefore"?"before":"after");if(G===null)return;_.preventDefault(),G.focus();return}let N=xe(Be),B=io(fr(N!==null&&Be.contains(N)?N:_.target,Be),X);if(B!==null){if(q!=="activate"){let G=a.current;if(G===null||Ao(G,B.index,X.length,Me)===null)return}if(_.preventDefault(),_.repeat){lt(q,B,Xe(Be));return}q==="activate"?z(B):V(q,1,B,!0)}},[c,u,n,a,le,ue,ge,lt,z,V]),Ne=ie(()=>{ge()},[ge]),ve=ie(_=>{let H=n.current,U=_.target,X=fr(U,H);if(L({kind:"focusIn",row:X===null?null:pA(X)}),c.isMovingFocus())return;let fe=a.current;if(H===null||fe===null||!be(U)||!xs(U))return;let Me=X===null?null:X.closest('[role="list"]');if(X===null||Me===null)return;let Ke=Me.getBoundingClientRect(),Be=X.getBoundingClientRect(),q=Be.height<=Ke.height?Be:uA(U.getBoundingClientRect(),lr),N=Xf(q,Ke),B=fe.getViewportSize();N===0||!(B>0&&Ke.height>0)||s.by(N*B/Ke.height)},[c,n,a,s,L]),Oe=ie(_=>{let H=n.current,U=_.relatedTarget,X=be(U)?H?.contains(U)?"view":"outside":"nowhere";X!=="view"&&Ze(),L({kind:"focusOut",to:X})},[n,Ze,L]),Te=ie(()=>{c.cancelFocusRequest(),Ze()},[c,Ze]),It=ie(_=>{p.current={visibleStartIndex:_.visibleStartIndex,visibleEndIndex:_.visibleEndIndex},T.current=null,w()},[w]),xr=oy(()=>({onKeyDown:Y,onKeyUp:Ne,onPointerDownCapture:Te,onWheelCapture:Te,onTouchStartCapture:Te,onFocus:ve,onBlur:Oe}),[Y,Ne,Te,ve,Oe]);return{cursor:c,containerProps:xr,handleRangeChange:It,selection:O,selectionStore:b,resolveSelectedIndex:F,rememberSelection:D,focusAfterRemoval:P}};import{jsx as Fl}from"react/jsx-runtime";var yA=A(cr,Ko,zo,Wo,"h-full"),hA="h-full w-full",dy=({itemId:e,name:t,isBusy:r,bodyKind:n,observeRowHeight:o,cursor:a,children:s})=>{let{isCurrent:i,isTabStop:l}=vs(a,e),d=iy(Zt),c=iy(Qt),u=ws(a,e,d),p=ly(null),h=ly(null),f=fA(y=>(p.current=y,a.registerFocusTarget(e,y),()=>{p.current=null,a.unregisterFocusTarget(e,y)}),[a,e]);return Pl(()=>{let y=p.current,S=y===null||!u?null:y.firstElementChild,m=S instanceof HTMLElement?S:null,g=h.current;g!==null&&g.body===m||(g!==null&&g.stop(),h.current=m===null?null:{body:m,stop:o(m)})}),Pl(()=>()=>{h.current?.stop(),h.current=null},[]),Pl(()=>{a.restoreFocus(e)},[a,e,n]),Fl(bo.Provider,{value:l,children:Fl("div",{ref:f,className:yA,"data-daily-report-row":e,"data-daily-report-button":e,role:"listitem","aria-posinset":d+1,"aria-setsize":c,"aria-labelledby":u&&t.kind==="card"?t.ids.heading:void 0,"aria-describedby":u&&t.kind==="card"?t.describedBy:void 0,"aria-label":t.kind==="label"?t.label:void 0,"aria-busy":r||!u?!0:void 0,"aria-current":i?"true":void 0,children:u?s:Fl("div",{...rt,className:hA})})})};import{jsx as Q,jsxs as Ge}from"react/jsx-runtime";var gA=A("flex w-full flex-col gap-4",vt,Go,dr),EA=A(vt,dr),TA=A("rounded-2xl",dr),DA=A("rounded-2xl border border-red-200 border-solid bg-red-50 p-[15px] text-red-700 text-sm dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-300",dr),je="bg-slate-200 dark:bg-slate-700",AA=A("whitespace-pre-wrap",jo),xA=A(Ye,"bg-slate-100 text-slate-600 text-xs dark:bg-slate-800 dark:text-slate-300"),CA=({interviewer:e,index:t,template:r})=>{let n=Nn(()=>Fe(e.name),[e.name]),o=Q(oe,{fieldKey:ae.interviewer(t,"name"),raw:e.name,display:n},"name"),a=e.affiliation;if(!a?.trim())return o;let s=lm(r,n.text,a);return s===null?r(n.text,a):s.map(i=>i.kind==="text"?i.text:i.kind==="name"?o:Q(oe,{fieldKey:ae.interviewer(t,"affiliation"),raw:a,display:ct(a)},"affiliation"))},IA=Ge("div",{...rt,className:EA,children:[Ge("div",{className:"mb-4 flex flex-wrap gap-2",children:[Q("div",{className:A("h-6 w-20 rounded-full",je)}),Q("div",{className:A("h-6 w-24 rounded-full",je)}),Q("div",{className:A("h-6 w-24 rounded-full",je)}),Q("div",{className:A("h-6 w-28 rounded-full",je)})]}),Ge("div",{className:"mb-4 grid gap-4 md:grid-cols-[minmax(0,1fr)_240px]",children:[Ge("div",{className:"space-y-4",children:[Q("div",{className:A("h-5 w-40 rounded",je)}),Q("div",{className:A("h-5 w-56 rounded",je)}),Q("div",{className:A("h-24 rounded-xl",je)})]}),Ge("div",{className:"rounded-xl bg-slate-100 p-3 dark:bg-slate-800/60",children:[Q("div",{className:A("mb-2 h-4 w-24 rounded",je)}),Q("div",{className:A("mb-2 h-4 w-28 rounded",je)}),Q("div",{className:A("h-4 w-32 rounded",je)})]})]}),Ge("div",{className:"space-y-4",children:[Q("div",{className:A("h-4 w-24 rounded",je)}),Ge("div",{className:"flex flex-wrap gap-2",children:[Q("div",{className:A("h-6 w-16 rounded-full",je)}),Q("div",{className:A("h-6 w-16 rounded-full",je)}),Q("div",{className:A("h-6 w-16 rounded-full",je)})]}),Ge("div",{className:"space-y-2",children:[Q("div",{className:A("h-16 rounded-xl",je)}),Q("div",{className:A("h-16 rounded-xl",je)})]})]})]}),vA=()=>IA,wA=({item:e,observeRowHeight:t,onCommentAdded:r,userId:n,cursor:o})=>{let{report:a,error:s,isLoading:i,isRefetching:l}=Nr(e.reportHubId,e.businessDate),d=bA(a),{removeStaleItem:c}=$e(),{sourceTypeConfigs:u}=K(),p=yr(),h=Ja(e.reportHubId),f=h==="editing"||h==="automatic",y=_s(!1),S=_s(!1),m=_s(!1);cy(()=>{if(l){m.current=!0;return}!(a||i||s)&&m.current&&e.reportHubId>0&&c(e.reportHubId)},[a,i,l,s,e.reportHubId,c]);let g=a?.isDraft===!0,R=n&&a?.userId===n,b=n&&d?.userId===n,E=_s(a);uy(()=>{E.current=a});let T=$r(()=>{let W=E.current;W!==null&&(y.current=!0,p.open(e.reportHubId,Cn(W),!1))},[p,e.reportHubId]),v=$r(()=>{S.current=!0,p.dismiss(e.reportHubId)},[p,e.reportHubId]),I=$r(()=>{S.current=!0,p.discard(e.reportHubId)},[p,e.reportHubId]),O=$r(W=>{W===null||!y.current||(y.current=!1,W.focus())},[]),k=$r(W=>{W===null||!S.current||(S.current=!1,W.focus())},[]);uy(()=>{f||(S.current=!1)},[f]),cy(()=>{a!==null&&(R&&g&&h==="display"?p.open(e.reportHubId,Cn(a),!0):!g&&h==="automatic"&&p.discard(e.reportHubId))},[a,R,g,h,p,e.reportHubId]);let F=$r(()=>o.requestFocus(e.reportHubId),[o,e.reportHubId]),D=SA(),C=Nn(()=>({heading:`${D}-heading`,state:`${D}-state`,attachments:`${D}-attachments`,source:`${D}-source`,searchMatch:`${D}-search-match`}),[D]),x=d!==null&&d.attachments.length>0,w=RA(ht)!==null,M=d===null?void 0:Gt(d.sourceType,u),L=[C.state,...x?[C.attachments]:[],...M!==void 0?[C.source]:[],...w?[C.searchMatch]:[]].join(" "),P=!s&&d!==null&&!f?{kind:"card",ids:C,describedBy:L}:{kind:"label",label:he(e.businessDate)},V=d===null&&(i||a!==null),z=!s&&V,j=s?"error":d===null?V?"loading":"missing":f?"editing":"resolved";return Q(dy,{itemId:e.reportHubId,name:P,isBusy:z,bodyKind:j,observeRowHeight:t,cursor:o,children:s?Q(_A,{itemId:e.reportHubId}):d?f?Q("div",{...rt,className:TA,children:Q(hs,{report:d,onCancel:v,onPublishSuccess:I,titleInputRef:O})}):Q(fy,{item:e,report:d,sourceConfig:M,textIds:C,onCommentAdded:r,userId:n,onEdit:b?T:void 0,editButtonRef:k,onCommentSectionRemoved:F}):Q(vA,{})})},my=py(wA),fy=py(({item:e,report:t,sourceConfig:r,textIds:n,onCommentAdded:o,userId:a,onEdit:s,editButtonRef:i,onCommentSectionRemoved:l})=>{let{toggleStar:d,toggleRead:c,pendingStarUpdates:u,pendingReadUpdates:p,deleteReport:h}=$e(),{labels:f,headingLevel:y}=K(),S=hr[y],m=la(t.sourceType,r),g=$r(()=>o?.(e.reportHubId),[o,e.reportHubId]),R=u.current.get(t.reportHubId),b=R===void 0?t.isStarred:R,E=p.current.get(t.reportHubId),T=E===void 0?t.isRead:E,v=!!(a&&t.userId===a),I=async()=>{try{await c(t.reportHubId,!T,t.date)}catch{}},O=async()=>{try{await d(t.reportHubId,!b,t.date)}catch{}},k=async()=>{if(confirm(f.confirmDelete))try{await h(t.reportHubId,t.date)}catch{}},F=Nn(()=>dc(t.content??null),[t.content]),D=Nn(()=>Fe(t.customerName),[t.customerName]),C=Nn(()=>Fe(t.subject),[t.subject]),x=Nn(()=>{let w=t.visitTimeFrom?.trim(),M=t.visitTimeTo?.trim();return w&&M?`${w} - ${M}`:w||M||null},[t.visitTimeFrom,t.visitTimeTo]);return Q("div",{...rt,onDoubleClick:s,className:gA,children:Ge(Dn,{reportHubId:e.reportHubId,children:[Q(st,{level:y,id:n.heading,className:Vt,children:`${he(t.date)} ${pr(t.employeeName)} ${pr(t.subject)}`}),Q("span",{id:n.state,className:Vt,children:f.rowState({isRead:T,isStarred:b})}),Q(Of,{report:t,sourceConfig:r,isRead:T,isStarred:b,isMine:v,onToggleRead:I,onToggleStar:O,onEdit:s,editButtonRef:i,onDelete:k,visitTimeDisplay:x,markerIds:n,labels:f}),Ge("div",{className:"grid gap-4 md:grid-cols-[minmax(0,1fr)_240px]",children:[Ge("div",{className:"flex flex-col gap-4",children:[Ge("div",{className:"grid gap-4 sm:grid-cols-2",children:[Ge("div",{className:"flex flex-col gap-1",children:[Q(st,{level:S,className:Kt,children:f.customer}),Q("span",{className:"font-semibold text-base text-slate-900 dark:text-slate-100",children:Q(oe,{fieldKey:ae.field("customerName"),raw:t.customerName,display:D})})]}),Ge("div",{className:"flex flex-col gap-1",children:[Q(st,{level:S,className:Kt,children:f.subject}),Q("span",{className:"text-slate-700 text-sm dark:text-slate-200",children:Q(oe,{fieldKey:ae.field("subject"),raw:t.subject,display:C})})]})]}),F.text.length>0&&Ge("div",{className:"flex flex-col gap-2",children:[Q(st,{level:S,className:Kt,children:f.content}),Q("div",{className:AA,children:Q(oe,{fieldKey:ae.field("content"),raw:t.content,display:F})})]}),t.interviewers.length>0&&Ge("div",{className:"flex flex-col gap-2",children:[Q(st,{level:S,className:Kt,children:f.interviewers}),Q("ul",{className:"flex flex-wrap gap-2",children:t.interviewers.map((w,M)=>Q("li",{className:xA,children:Q(CA,{interviewer:w,index:M,template:f.interviewerWithAffiliation})},JSON.stringify([w.name,w.affiliation])))})]}),Q(cs,{attachments:t.attachments}),Q(Eo,{report:t,userId:a,canComment:m,onCommentAdded:g,onSectionRemoved:l,formPlacement:"after-section"})]}),Q(_f,{report:t,visitTimeDisplay:x,labels:f})]})]})})});fy.displayName="DailyReportResolvedItem";var _A=({itemId:e})=>{let{labels:t}=K();return Q("div",{...rt,className:DA,children:Q("p",{children:t.reportLoadFailed(e)})})};import{useCallback as Ty,useId as VA,useMemo as Dy,useRef as WA}from"react";import{createContext as LA,useContext as NA,useLayoutEffect as OA}from"react";var yy=()=>{let e=!1;return{request:()=>{e=!0},isPending:()=>e,take:()=>{let t=e;return e=!1,t}}},Hl=LA(null),hy=(e,t)=>{let r=NA(Hl);OA(()=>{let n=e.current;if(r===null||!r.isPending()||n===null)return;let o=La(n);o===null&&!t||(r.take(),Yt(n)&&Mt([o===null?tl(n.ownerDocument):o]))})};import{useCallback as Ry,useLayoutEffect as by,useMemo as Sy,useRef as Bl}from"react";var MA=(e,t,r,n)=>{for(let o=r;o<=n;o++){let a=pe(e,o);if(a===void 0||a.reportHubId!==pe(t,o)?.reportHubId)return!0}return!1},kA=(e,t,r,n)=>{let o=e*r+t,a=Math.min(Math.max(Math.floor(o/r),0),n-1);return{index:a,offsetPx:o-a*r}},PA=(e,t,r,n)=>{let o=e,a=t;for(;a<0&&o>0;)o-=1,a+=r(o);for(;o<n-1&&a>=r(o);)a-=r(o),o+=1;return{index:o,offsetPx:a}},FA=(e,t,r,n,o)=>{if(t===e.recordedAt)return e;if(!(t>0))return null;let a=e.offsetPx+(t-e.recordedAt),{index:s,offsetPx:i}=n.kind==="uniform"?kA(e.index,a,n.rowHeight,r.length):PA(e.index,a,Is(n),r.length);return{reportHubId:Ot(r,s).reportHubId,index:s,offsetPx:i,lastVisibleIndex:xo({index:s,offsetPx:i},o,r.length,n),recordedAt:t}},HA=(e,t,r)=>{for(let n=r.index+1;n<=r.lastVisibleIndex&&n<e.length;n++){let o=Ee(t,Ot(e,n).reportHubId,n-1);if(o!==-1)return o}return-1},gy=({items:e,handleRef:t,rowSizing:r,isRevealPending:n})=>{let o=Bl(null),a=Bl(e),s=Bl(r),i=Ry(()=>{let c=t.current,u=c===null?-1:c.getScrollPosition(),p=c===null||!(u>0)?null:c.getScrollAnchor(),h=a.current,f=p===null?void 0:pe(h,p.index),y=c===null?0:c.getViewportSize();o.current=p===null||f===void 0||!(y>0)?null:{reportHubId:f.reportHubId,index:p.index,offsetPx:p.offsetPx,lastVisibleIndex:xo(p,y,h.length,s.current),recordedAt:u}},[t]),l=Sy(()=>({toIndex:(c,u)=>{let p=t.current;p!==null&&(p.scrollToIndex(c,u),i())},by:c=>{let u=t.current;u!==null&&(u.scrollBy(c),i())},resizeRow:(c,u)=>{let p=t.current;p!==null&&(p.updateItemSize(c,u),i())}}),[t,i]);by(()=>{let c=a.current;a.current=e;let u=o.current,p=t.current;if(c===e||u===null||p===null||n())return;let h=FA(u,p.getScrollPosition(),c,s.current,p.getViewportSize());if(h===null){o.current=null;return}let f=Ee(e,h.reportHubId,h.index),y=f===-1?HA(c,e,h):f;if(y===-1){o.current=null;return}if(y===h.index&&!MA(c,e,h.index,h.lastVisibleIndex)){o.current=h;return}p.scrollToIndex(y,{align:"top",offset:-h.offsetPx}),o.current={reportHubId:Ot(e,y).reportHubId,index:y,offsetPx:h.offsetPx,lastVisibleIndex:xo({index:y,offsetPx:h.offsetPx},p.getViewportSize(),e.length,r),recordedAt:p.getScrollPosition()}},[e,t,r,n]),by(()=>{s.current=r},[r]);let d=Ry(c=>{if(c.cause!=="clamp"){i();return}let u=o.current;u!==null&&(o.current={...u,recordedAt:u.recordedAt+c.delta})},[i]);return Sy(()=>({handleRangeChange:i,handleScrollAdjust:d,scroller:l}),[i,d,l])};import{useCallback as BA}from"react";var UA=20,Ey=({hostTestId:e,scrollContainerRef:t,handleRef:r,scroller:n,itemsRef:o})=>BA(a=>{t.current=a;let s=a.querySelector(`[data-testid="${e}"]`);return s!==null&&Object.defineProperty(s,"__virtualScroll",{configurable:!0,get:()=>{let i=r.current;if(i!==null)return{getViewportSize:()=>i.getViewportSize(),getScrollPosition:()=>i.getScrollPosition(),getScrollAnchor:()=>i.getScrollAnchor(),getRange:()=>i.getRange(),getFenwickSize:()=>i.getFenwickSize(),findReportIndex:l=>yt(o.current,l),getReportItem:l=>pe(o.current,l),getReportIds:(l=UA)=>Pu(o.current,l),revealIndex:(l,d)=>n.toIndex(l,d)}}}),()=>{s!==null&&delete s.__virtualScroll,t.current=null}},[e,t,r,n,o]);import{jsx as KA}from"react/jsx-runtime";var Ls=({containerRef:e,testId:t,itemsRef:r,isViewRevealPending:n,onRangeChange:o,...a})=>{let s=WA(null),i=Ty(b=>(s.current=b,()=>{s.current=null}),[]),{handleRangeChange:l,handleScrollAdjust:d,scroller:c}=gy({items:a.items,handleRef:s,rowSizing:a.rowSizing,isRevealPending:n}),{handleRangeChange:u,...p}=sy({...a,containerRef:e,handleRef:s,scroller:c}),h=Ey({hostTestId:t,scrollContainerRef:e,handleRef:s,scroller:c,itemsRef:r});hy(e,a.items.length===0);let{labels:f}=K(),y=VA(),S=a.onSelect!==null,m=Ty(b=>{u(b),l(),o(b)},[u,l,o]),g=Dy(()=>({role:"list","aria-label":f.title,"aria-describedby":S?y:void 0}),[f.title,S,y]),R=Dy(()=>S?KA("span",{id:y,className:"sr-only",children:f.listKeyboardHelp}):null,[S,y,f.listKeyboardHelp]);return{...p,handleRangeChange:m,handleScrollAdjust:d,attachVirtualScroll:i,handleRef:s,scroller:c,attachScrollContainer:h,contentProps:g,keyboardHelp:R}};import{Fragment as ZA,jsx as nr,jsxs as QA}from"react/jsx-runtime";var xy={pointerDragInputs:ha,wheelSpeedMultiplier:ca,inertiaOptions:fn(!1),enableKeyboardNavigation:!1},jA={...xy,inertiaOptions:fn(!0)},Ay="daily-report-detail-list",GA=A("relative w-full",Jo,Zo),YA=A(dt,"relative"),qA=300,Vl=e=>{let t=et(null),[r,n]=Ns(null),o=Aa(t),a=yn(r),s=We(i=>(t.current=i,n(i),()=>{t.current=null,n(null)}),[]);return nr("div",{ref:s,className:Xo,children:nr("div",{className:Qo,children:o===null?null:nr(XA,{...e,viewportHeight:o,reducedMotion:a})})})},XA=({dailyReportItems:e,rowSetSize:t,userId:r,selectedItemId:n,onSelectItem:o,scrollRestoreRef:a,viewportHeight:s,reducedMotion:i})=>{let[{initialScrollAnchor:l,restored:d}]=Ns(()=>{let N=a?.current;if(!N||N.anchorReportHubId!==(n??null))return{initialScrollAnchor:void 0,restored:!1};if(!N.topItem)return{initialScrollAnchor:void 0,restored:!0};let B=yt(e,N.topItem.reportHubId);return B!==-1?{initialScrollAnchor:{index:B,offsetPx:N.topItem.offsetPx},restored:!0}:{initialScrollAnchor:{index:N.topItem.index,offsetPx:0},restored:!0}}),c=et(d),u=et(n??null),p=Ue(()=>a?.current.measuredHeights??new Map),h=et(null),f=Ea(),y=gi(),[S]=Ns(Na),m=et(null),g=et(null),R=et(e),b=et(o);$A(()=>{R.current=e,b.current=o},[e,o]);let E=et(null),[T,v]=Ns(0),I=et(null),O=e.length,k=t===void 0?O:t,F=We(N=>{let B=pe(e,N);return B===void 0?pa:B},[e]),D=We(N=>{let B=p.current.get(F(N).reportHubId);return B===void 0?ru:B},[p,F]),C=We(N=>va(e,N),[e]),x=Ul(()=>({kind:"measured",heightOf:D}),[D]),w=We((N,B)=>{E.current={reportHubId:N,index:B},v(G=>G+1),b.current?.(N)},[]),M=We((N,B)=>{if(O===0)return;let G=Math.max(0,N),re=Math.min(O-1,B);if(G>re)return;let ke=new Set;for(let St=G;St<=re;St++){let Ut=F(St);if(Ut.businessDate&&ke.add(Ut.businessDate),ke.size>=Jc)break}ke.forEach(St=>{y(St)})},[F,O,y]),L=et(null),P=We(()=>L.current,[]),V=We(N=>{if(O===0)return;let{renderingStartIndex:B,renderingEndIndex:G,visibleStartIndex:re}=N,ke=F(re);ke.reportHubId>0&&(L.current=ke.reportHubId),ke.businessDate&&S.setLabel(he(ke.businessDate)),M(B,G),M(G+1,G+ua),M(B-ua,B-1)},[F,O,M,S]),z=We(()=>I.current!==null,[]),{cursor:j,containerProps:W,handleRangeChange:me,handleScrollAdjust:Le,attachVirtualScroll:ue,handleRef:le,scroller:ge,attachScrollContainer:Ze,contentProps:lt,keyboardHelp:Y,resolveSelectedIndex:Ne,rememberSelection:ve}=Ls({items:e,selectedId:n??null,onSelect:o===void 0?null:w,containerRef:h,rootRef:h,testId:Ay,itemsRef:R,rowSizing:x,arrowAlign:"top",rowActivation:!0,isViewRevealPending:z,onRangeChange:V});Ma({items:e,scroller:ge,readTopReportId:P});let Oe=We((N,B)=>{if(le.current===null)return!1;let G=R.current,re=B!==null&&B.reportHubId===N?Ee(G,N,B.index):Ne(G,N);return re===-1?!1:(c.current&&(c.current=!1,N===u.current)||B!==null&&B.reportHubId===N&&B.index===re||ge.toIndex(re,{align:"top"}),!0)},[le,Ne,ge]);Er(()=>{let N=E.current;E.current=null,I.current=null,n!=null&&(Oe(n,N)||(I.current=n))},[n,Oe]),Er(()=>{let N=I.current;N!==null&&Oe(N,null)&&(I.current=null)},[e,Oe]),Er(()=>{let N=a?.current;N&&(N.anchorReportHubId=n??null)},[n,a]),Er(()=>{E.current=null},[T]);let Te=et(null),It=We(()=>{le.current&&(Te.current=le.current);let N=a?.current,B=Te.current;if(N&&B){let re=B.getScrollAnchor(),ke=re===null?void 0:pe(R.current,re.index);re&&ke&&(N.topItem={reportHubId:ke.reportHubId,index:re.index,offsetPx:re.offsetPx})}let G=h.current;G&&(G.toggleAttribute(Qr,!0),g.current&&clearTimeout(g.current),g.current=setTimeout(()=>{G.toggleAttribute(Qr,!1),g.current=null},150))},[le,a]),xr=We(N=>nr(Oa,{...N,store:S}),[S]);Er(()=>{let N=h.current;if(!N)return;let B=()=>{S.setWheelScrollActive(!0),m.current&&clearTimeout(m.current),m.current=window.setTimeout(()=>{S.setWheelScrollActive(!1),m.current=null},ma)};return N.addEventListener("wheel",B,{passive:!0}),()=>{N.removeEventListener("wheel",B),m.current&&clearTimeout(m.current)}},[S]);let _=et(null),H=We(N=>{for(let B of N){let G=B.target.parentElement,re=G===null?null:Pr(G),ke=G===null?null:pn(G),St=B.borderBoxSize[0];if(re===null||ke===null||St===void 0)continue;let Ut=St.blockSize+2*lr;if(p.current.get(re)===Ut)continue;let Xr=Ee(R.current,re,ke-1);Xr!==-1&&(p.current.set(re,Ut),ge.resizeRow(Xr,Ut))}},[p,ge]),U=We(N=>{_.current===null&&(_.current=new ResizeObserver(H));let B=_.current;return B.observe(N),()=>B.unobserve(N)},[H]);Er(()=>()=>{_.current?.disconnect(),_.current=null},[]),Er(()=>{O!==0&&M(0,Math.min(O-1,ua))},[O,M]);let X=et(null),fe=We(N=>{let B=Ee(R.current,N,null);B!==-1&&(X.current!==null&&clearTimeout(X.current),X.current=setTimeout(()=>{X.current=null;let G=Ee(R.current,N,B);G!==-1&&ge.toIndex(G,{align:"bottom"})},qA))},[ge]);Er(()=>()=>{X.current!==null&&clearTimeout(X.current)},[]);let Me=We(N=>{if(!b.current)return;let B=fr(N.target,h.current);if(B===null||Uu(N.target,B))return;let G=io(B,R.current);G!==null&&(ve(G.reportHubId,G.index),w(G.reportHubId,G.index))},[w,ve]),Ke=We((N,B)=>nr(Zt.Provider,{value:B,children:nr(my,{item:N,observeRowHeight:U,onCommentAdded:fe,userId:r,cursor:j})},N.reportHubId),[U,fe,r,j]),Be=Ul(()=>({...ya,renderThumbOverlay:xr}),[xr]),q=Ul(()=>nr(Qt.Provider,{value:k,children:nr(zA,{ref:ue,itemCount:O,getItem:F,getItemKey:C,getItemHeight:D,viewportSize:s,initialScrollAnchor:l,overscanCount:fa,scrollBarOptions:Be,behaviorOptions:i?jA:xy,onRangeChange:me,onScrollAdjust:Le,onScroll:It,testId:Ay,className:GA,locale:f.locale,labels:f.labels,contentProps:lt,children:Ke})}),[ue,k,O,F,C,D,s,i,l,Be,me,Le,It,f.locale,f.labels,lt,Ke]);return nr(ZA,{children:QA("div",{ref:Ze,className:YA,...W,onClick:Me,children:[Y,q]})})};import vy from"lucide-react/dist/esm/icons/refresh-cw.js";import{createContext as rx,useContext as nx,useLayoutEffect as ox,useRef as ax}from"react";import{jsx as Wl,jsxs as JA}from"react/jsx-runtime";var Io=e=>10**String(e).length-1,vo=({text:e,widestTexts:t,ref:r})=>JA("span",{ref:r,className:zd,children:[Wl("span",{"aria-hidden":"true",className:$d,children:[...new Set(t)].map(n=>Wl("span",{className:jd,children:n},n))}),Wl("span",{className:Gd,children:e})]});import{useLayoutEffect as ex,useState as Cy}from"react";import{jsx as Iy,jsxs as tx}from"react/jsx-runtime";var Kl=Object.freeze({status:"",alert:""}),Os=({announcement:e,testId:t})=>{let[r]=Cy(e),[n,o]=Cy(!1),a=n||e.status!==r.status||e.alert!==r.alert;ex(()=>{a&&!n&&o(!0)},[a,n]);let{status:s,alert:i}=a?e:Kl;return tx("span",{"data-testid":t,className:"sr-only",children:[Iy("span",{role:"status",children:s}),Iy("span",{role:"alert",children:i})]})};import{Fragment as hx,jsx as Tr,jsxs as wo}from"react/jsx-runtime";var zl=rx(!0),sx="daily-report-ids-stream-status-announcer",ix=`inline-flex rounded-full empty:not-focus:hidden ${ee}`,lx=A(Ye,"gap-1 bg-blue-100 font-medium text-blue-800 text-xs tabular-nums dark:bg-blue-900/40 dark:text-blue-300"),dx=A(Ye,"gap-1 bg-amber-100 font-medium text-amber-800 text-xs tabular-nums dark:bg-amber-900/40 dark:text-amber-300"),cx=A(Ye,"gap-1 bg-rose-100 font-medium text-rose-800 text-xs dark:bg-rose-900/40 dark:text-rose-300"),ux=A("inline-flex h-5 items-center rounded-full bg-rose-200 px-2 font-semibold text-rose-900 hover:bg-rose-300 dark:bg-rose-800 dark:text-rose-100 dark:hover:bg-rose-700",ee),px=(e,t,r)=>{if(r===null||r===0)return{text:e.streamProgressCount(t),widestText:e.streamProgressCount(Io(t))};let n=Io(Math.max(t,r));return{text:e.streamProgressRatio(t,r,Math.min(100,Math.round(t/r*100))),widestText:e.streamProgressRatio(n,n,100)}},mx=({labels:e,loadedCount:t,totalCount:r})=>{let{text:n,widestText:o}=px(e,t,r);return wo("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"streaming",className:lx,children:[Tr("span",{"aria-hidden":"true",className:"size-2 rounded-full bg-blue-500 dark:bg-blue-400"}),Tr(vo,{text:n,widestTexts:[o]})]})},fx=(e,t,r)=>e.phase==="streaming"?Tr(mx,{labels:t,loadedCount:e.loadedCount,totalCount:e.totalCount}):e.phase==="retrying"?wo("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"retrying",className:dx,children:[Tr(vy,{"aria-hidden":"true",className:"size-3 motion-safe:animate-spin"}),t.streamRetrying(e.loadedCount)]}):e.phase==="failed"?wo("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"failed",className:cx,children:[t.streamFailed,Tr("button",{type:"button","data-testid":"daily-report-ids-stream-retry",onClick:r,className:ux,children:t.streamRetry})]}):e.isRevalidating?wo("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"revalidating",className:"inline-flex items-center gap-1 text-slate-500 text-xs dark:text-slate-400",children:[Tr(vy,{"aria-hidden":"true",className:"size-3 motion-safe:animate-spin"}),t.streamRevalidating]}):null,$l=(e,t)=>e.retryingCount!==null?{status:t.streamRetrying(e.retryingCount),alert:""}:e.phase==="failed"?{status:"",alert:e.hasItems?t.streamFailed:t.loadError}:!e.hasItems&&(e.phase==="idle"||e.phase==="streaming")?{status:t.loadingIds,alert:""}:Kl,yx=(e,t)=>$l({phase:e.phase,hasItems:!0,retryingCount:e.phase==="retrying"?e.loadedCount:null},t),_o=()=>{let e=Sp(),{labels:t}=K(),r=nx(zl),n=ax(null),a=fx(e,t,()=>{Mt([n.current]),Ga()}),s=a===null;return ox(()=>{let i=n.current;!s||i===null||!i.contains(xe(i))||Mt(es(i.ownerDocument))},[s]),wo(hx,{children:[Tr("span",{ref:n,tabIndex:-1,"data-daily-report-stream-status":"",className:ix,children:a}),r?Tr(Os,{announcement:yx(e,t),testId:sx}):null]})};import{Panel as Qy,PanelGroup as KC,PanelResizeHandle as zC}from"@aiquants/resize-panels";import{VirtualScroll as $C}from"@aiquants/virtualscroll";import{useCallback as xt,useEffect as Bs,useLayoutEffect as nd,useMemo as rd,useRef as Yr,useState as Vs}from"react";import{useSyncExternalStore as Rx}from"react";var wy="(max-width: 639px)",bx=()=>{},Sx=e=>{if(typeof window>"u"||typeof window.matchMedia!="function")return bx;let t=window.matchMedia(wy);return t.addEventListener("change",e),()=>t.removeEventListener("change",e)},gx=()=>typeof window<"u"&&typeof window.matchMedia=="function"?window.matchMedia(wy).matches:!1,Ex=()=>!1,_y=()=>Rx(Sx,gx,Ex);import{SwipeCloseGuardContext as Gx,useOverlayEscapeStack as Yx,useSwipeGuardState as qx,useSwipeToDismissOverlay as Xx,useTapClick as Qx,useTransitionDisplay as Zx}from"@aiquants/swipe-overlay";import{useCallback as Ps,useEffect as kn,useId as Zl,useLayoutEffect as Jl,useRef as At,useState as Fs}from"react";import{useMemo as Tx}from"react";var Lo=(e,t)=>{let{id:r,indexHint:n}=t;return Tx(()=>{if(r===null)return null;let o=Ee(e,r,n);return o===-1?null:Ot(e,o)},[e,r,n])};import Dx from"lucide-react/dist/esm/icons/check.js";import Ax from"lucide-react/dist/esm/icons/pencil.js";import xx from"lucide-react/dist/esm/icons/trash-2.js";import{memo as Cx,useCallback as jr,useDeferredValue as Ix,useEffect as Yl,useId as Oy,useLayoutEffect as ql,useMemo as Po,useRef as ko,useState as My,useSyncExternalStore as vx}from"react";import*as or from"@radix-ui/react-tabs";import*as it from"react";import{jsx as On}from"react/jsx-runtime";var Ly=it.createContext(null),Ny=e=>{let t=it.useContext(Ly);if(t===null)throw new Error(`[daily-report] ${e} must be rendered inside Tabs`);return t},jl=(e,t)=>`${e}-trigger-${t}`,Gl=(e,t)=>`${e}-panel-${t}`,No=it.forwardRef(({value:e,children:t,...r},n)=>{let o=it.useId(),a=it.useMemo(()=>({baseId:o,value:e}),[o,e]);return On(or.Root,{ref:n,value:e,...r,children:On(Ly,{value:a,children:t})})});No.displayName=or.Root.displayName;var Oo=it.forwardRef(({className:e,...t},r)=>On(or.List,{ref:r,className:A("inline-flex",e),...t}));Oo.displayName=or.List.displayName;var Mo=it.forwardRef(({className:e,value:t,...r},n)=>{let{baseId:o}=Ny("TabsTrigger");return On(or.Trigger,{ref:n,value:t,...r,id:jl(o,t),"aria-controls":Gl(o,t),className:A(`${kd} ${ee}`,e)})});Mo.displayName=or.Trigger.displayName;var Mn=it.forwardRef(({className:e,value:t,tabStop:r,children:n,...o},a)=>{let{baseId:s,value:i}=Ny("TabsContent"),l=t===i,d="mt-2 data-[state=inactive]:hidden";return r?On("div",{ref:a,role:"tabpanel",id:Gl(s,t),"aria-labelledby":jl(s,t),"data-state":l?"active":"inactive",hidden:!l,tabIndex:0,...o,className:A(`${d} ${ee}`,e),children:l?n:null}):On("div",{ref:a,role:"tabpanel",id:Gl(s,t),"aria-labelledby":jl(s,t),"data-state":l?"active":"inactive",hidden:!l,...o,className:A(d,e),children:l?n:null})});Mn.displayName="TabsContent";import{jsx as $,jsxs as ar}from"react/jsx-runtime";var Hy=A(Cr,"w-24 shrink-0"),ky={field:"flex items-baseline",label:Hy,value:"flex-1"},wx={field:"flex min-w-0 flex-1 items-baseline",label:Hy,value:"wrap-break-word min-w-0 flex-1"},_x={field:"flex flex-col gap-1",label:Cr,value:""},Lx={field:"flex min-w-0 items-center gap-1",label:A(Cr,"shrink-0 whitespace-nowrap"),value:""},Nx="flex min-h-4 flex-wrap items-center gap-x-2 gap-y-1 text-slate-500 text-xs dark:text-slate-300",Py=A("flex-1 touch-pan-y overflow-y-auto overflow-x-hidden pt-2 text-sm",Qs,Sd,bd),Fy={desktop:A(Py,Zd),overlay:Py},Ox=A("flex flex-col gap-1",Zs),Mx=A(Od,"grid grid-cols-2 gap-1"),kx=A("m-0 font-normal text-slate-900 text-sm dark:text-slate-100",ee),Xl=e=>{let t=e,r=new Set;return{isDwelling:()=>t,set:n=>{if(n!==t){t=n;for(let o of[...r])o()}},subscribe:n=>(r.add(n),()=>{r.delete(n)})}},Px=(e,t,r,n,o,a)=>{let s=ko(null),i=e?.reportHubId;ql(()=>{s.current=null},[i]),Yl(()=>{n||(s.current=null)},[n]);let l=jr(async(d,c)=>{c||(s.current=d.reportHubId);try{await a(d.reportHubId,!d.isRead,d.date)}catch{}},[a]);return Yl(()=>{if(!(r&&e&&!e.isRead&&!t)||s.current===e.reportHubId)return;let d=null,c=()=>{d!==null&&clearTimeout(d),d=o.isDwelling()?setTimeout(()=>l(e,!0),500):null};c();let u=o.subscribe(c);return()=>{u(),d!==null&&clearTimeout(d)}},[e,t,r,l,o]),{handleToggleRead:l}},Ql="article",Fx=["article","relations"],Hx=e=>{if(e==="article"||e==="relations")return e;throw new Error(`[daily-report] unknown side-pane tab: ${e}`)},Bx=A("hidden h-full min-h-0 w-full min-w-0 flex-1 flex-col gap-4 sm:flex",vt),Ux=A("flex h-full flex-1 items-center justify-center text-center",Zr),Vx=9,Wx=.875,Kx=16,By=4*Math.ceil((2*lr+2*$o+2*Td+Vx*Wx*Kx)/4),Uy=({dailyReportItems:e,selectionStore:t,autoMarkRead:r,userId:n,onReportDeleted:o})=>{let{labels:a}=K(),s=Oy(),i=Oy(),[l,d]=My(Ql),{selected:c,settled:u}=vx(t.subscribe,t.getSnapshot,t.getSnapshot),p=Lo(e,c),h=Lo(e,Ix(u)),f=p===null?null:p.reportHubId,S=(h===null?null:h.reportHubId)===f,[m]=My(()=>Xl(S));return ql(()=>{m.set(S)},[m,S]),$("aside",{"data-testid":"daily-report-side-pane","data-report-id":p?.reportHubId,"data-displayed-report-id":h?.reportHubId,"aria-busy":S?void 0:!0,className:Bx,children:h===null?$("div",{className:Ux,children:$("p",{className:zt,children:a.selectPrompt})}):$(ks,{item:h,placement:"desktop",headingId:s,authorId:i,activeTab:l,onActiveTabChange:d,autoMarkRead:r,isActive:!0,dwell:m,userId:n,onReportDeleted:o},h.reportHubId)})},ks=Cx(({item:e,placement:t,headingId:r,authorId:n,activeTab:o,onActiveTabChange:a,autoMarkRead:s,isActive:i,dwell:l,userId:d,onReportDeleted:c})=>{let{labels:u,sourceTypeConfigs:p,headingLevel:h}=K(),{report:f,error:y,isLoading:S}=Nr(e.reportHubId,e.businessDate),m=yr(),g=Ja(e.reportHubId),R=g==="editing"||g==="automatic",b=ko(null),E=ko(null),T=ko(!1),v=ko(!1),I=!!(d&&f?.userId===d),O=f?.isDraft===!0;Yl(()=>{f!==null&&(I&&O&&g==="display"?m.open(e.reportHubId,Cn(f),!0):!O&&g==="automatic"&&m.discard(e.reportHubId))},[f,I,O,g,m,e.reportHubId]);let k=Po(()=>f===null?void 0:()=>{T.current=!0,m.open(e.reportHubId,Cn(f),!1)},[m,e.reportHubId,f]),F=jr(()=>{v.current=!0,m.dismiss(e.reportHubId)},[m,e.reportHubId]),D=jr(()=>{v.current=!0,m.discard(e.reportHubId)},[m,e.reportHubId]),C=jr(j=>{j===null||!T.current||(T.current=!1,j.focus())},[]),x=jr(j=>{j===null||!v.current||(v.current=!1,j.focus())},[]),w=jr(()=>{E.current?.focus({preventScroll:!0})},[]);ql(()=>{R||!v.current||(v.current=!1,E.current?.focus())},[R]);let M=jr(()=>{setTimeout(()=>{let j=b.current;j!==null&&j.scrollTo({top:j.scrollHeight,behavior:$u(j)})},100)},[]),L=he(e.businessDate),P=Po(()=>f===null?null:Fe(f.employeeName),[f]),V=S||!f,z=f===null?void 0:Gt(f.sourceType,p);return ar(Dn,{reportHubId:e.reportHubId,children:[ar("div",{className:Ox,children:[$("dl",{className:"m-0",children:$(Je,{label:u.businessDate,classNames:_x,children:$(st,{ref:E,level:h,id:r,tabIndex:-1,className:kx,children:L})})}),ar("div",{className:Nx,children:[$("dl",{className:"m-0 min-w-0",children:$(Je,{label:u.author,classNames:Lx,valueId:n,children:V||P===null?$("div",{"data-skeleton":!0,className:"h-3 w-24 rounded bg-slate-200 motion-safe:animate-pulse dark:bg-slate-700"}):$(oe,{fieldKey:ae.field("employeeName"),raw:f?.employeeName,display:P})})}),z?$(vn,{config:z}):null,f===null?null:$(Rs,{isEditing:R,descriptionId:null})]})]}),ar(No,{value:o,onValueChange:j=>a(Hx(j)),className:"flex min-h-0 flex-1 flex-col",children:[$("div",{className:Zs,children:$(Oo,{"aria-label":u.reportTabList,className:Mx,children:Fx.map(j=>$(Mo,{value:j,children:j==="article"?u.tabArticle:u.tabRelations},j))})}),$(Mn,{ref:b,value:"article",tabStop:!0,className:Fy[t],children:R?f?$(hs,{report:f,onCancel:F,onPublishSuccess:D,titleInputRef:C}):$("p",{className:Zr,children:u.loading}):$(jx,{report:f,sourceConfig:z,isLoading:S,error:y,item:e,autoMarkRead:s,isActive:i,dwell:l,onCommentAdded:M,userId:d,onEdit:I?k:void 0,editButtonRef:x,onReportDeleted:c,onCommentSectionRemoved:w})}),$(Mn,{value:"relations",tabStop:!0,className:Fy[t],children:$("p",{className:Zr,children:u.relationsEmpty})})]})]})});ks.displayName="DailyReportSidePaneContent";var Ms=({className:e="w-32"})=>$("div",{"data-skeleton":!0,className:`h-4 rounded bg-slate-200 motion-safe:animate-pulse dark:bg-slate-700 ${e}`}),zx=["w-full","w-11/12","w-4/5"],$x=A(Dd,jo),jx=({report:e,sourceConfig:t,isLoading:r,error:n,item:o,autoMarkRead:a=!1,isActive:s=!0,dwell:i,onCommentAdded:l,userId:d,onEdit:c,editButtonRef:u,onReportDeleted:p,onCommentSectionRemoved:h})=>{let{toggleStar:f,toggleRead:y,deleteReport:S}=$e(),{labels:m,headingLevel:g}=K(),R=hr[g],{handleToggleRead:b}=Px(e,r,a,s,i,y),E=e!==null&&la(e.sourceType,t),T=Po(()=>e?.content?lc(e.content):null,[e]),v=Po(()=>Fe(e?.subject),[e]),I=Po(()=>Fe(e?.customerName),[e]),O=async C=>{try{await f(C.reportHubId,!C.isStarred,C.date)}catch{}},k=async C=>{if(confirm(m.confirmDelete)){try{await S(C.reportHubId,C.date)}catch{return}p(C.reportHubId)}};if(n)return $("p",{className:Vn,children:m.reportLoadFailed(o.reportHubId)});let F=!e,D=!!(d&&e?.userId===d);return ar("div",{className:"flex flex-col gap-4 text-slate-700 dark:text-slate-200",onDoubleClick:c,children:[ar("div",{className:"flex items-start gap-2",children:[$("dl",{className:"m-0 flex min-w-0 flex-1",children:$(Je,{label:m.subject,classNames:wx,children:F?$(Ms,{className:"w-3/4"}):$("span",{className:"text-sm",children:$(oe,{fieldKey:ae.field("subject"),raw:e?.subject,display:v})})})}),!F&&e&&ar("div",{className:"flex h-5 shrink-0 items-center gap-2 pr-2",children:[$("button",{type:"button",onClick:()=>O(e),className:ze,title:e.isStarred?m.starRemove:m.starAdd,"aria-label":e.isStarred?m.starRemove:m.starAdd,"data-detail-star-button":e.reportHubId,children:$(In,{filled:e.isStarred})}),$("button",{type:"button",onClick:()=>b(e,!1),className:ze,title:e.isRead?m.markUnread:m.markRead,"aria-label":e.isRead?m.markUnread:m.markRead,"data-detail-read-button":e.reportHubId,children:e.isRead?$(Dx,{className:Pe.read}):$(wn,{})}),c&&$("button",{ref:u,type:"button",onClick:c,"data-detail-edit-button":e.reportHubId,className:ze,title:m.edit,"aria-label":m.edit,children:$(Ax,{className:Pe.edit})}),D&&$("button",{type:"button",onClick:()=>k(e),"data-detail-delete-button":e.reportHubId,className:ze,title:m.deleteReport,"aria-label":m.deleteReport,children:$(xx,{className:Pe.delete})})]})]}),$("dl",{className:"m-0",children:$(Je,{label:m.customer,classNames:ky,children:F?$(Ms,{className:"w-1/2"}):$("span",{className:"text-sm",children:$(oe,{fieldKey:ae.field("customerName"),raw:e?.customerName,display:I})})})}),ar("div",{className:"flex flex-col gap-2",children:[$(st,{level:R,className:Kt,children:m.content}),$("div",{className:$x,children:F?zx.map(C=>$("div",{className:Ad,children:$(Ms,{className:C})},C)):T!==null&&T.text.length>0?$("div",{className:"whitespace-pre-wrap",children:$(oe,{fieldKey:ae.field("content"),raw:e?.content,display:T})}):$("p",{className:"text-slate-500 dark:text-slate-400",children:m.contentEmpty})})]}),$("dl",{className:"m-0",children:$(Je,{label:m.visitTime,classNames:ky,children:F?$(Ms,{className:"w-1/3"}):ar("span",{className:"text-sm",children:[pr(e?.visitTimeFrom)," ",e?.visitTimeFrom&&e?.visitTimeTo?"-":""," ",pr(e?.visitTimeTo)]})})}),e&&$(cs,{attachments:e.attachments}),e&&$(Eo,{report:e,userId:d,canComment:E,onCommentAdded:l,onSectionRemoved:h,formPlacement:"in-section",sectionClassName:"border-slate-100 border-t border-solid pt-4 dark:border-slate-800"})]})};import{jsx as Dr,jsxs as Vy}from"react/jsx-runtime";var Jx="fixed inset-y-0 left-0 m-0 flex h-auto max-h-none w-auto max-w-none touch-manipulation overflow-hidden border-0 bg-transparent p-0 text-inherit outline-none backdrop:bg-transparent motion-safe:transition-[right] motion-safe:duration-500 motion-safe:ease-[ease]",eC={right:"var(--aqdr-overlay-right, 0px)"},tC="absolute inset-0 touch-manipulation bg-slate-900/50 motion-safe:transition-opacity motion-safe:duration-200",rC=A("relative ml-auto flex h-full w-full max-w-full touch-none shadow-xl motion-safe:transition-[transform] motion-safe:duration-200 motion-safe:ease-out",Kd),nC=A("inline-flex h-9 touch-manipulation items-center rounded-full border border-slate-300 border-solid px-[15px] font-medium text-slate-600 text-sm shadow-sm hover:bg-slate-100 dark:border-slate-600 dark:text-slate-200 dark:hover:bg-slate-800",ee),oC="flex shrink-0 justify-center empty:hidden",aC=50,Wy=({isMobileLayout:e,selection:t,dailyReportItems:r,onSelectItem:n,rootRef:o})=>{let a=t.id,[s,i]=Fs(!1),[l,d]=Fs(!1),c=At(null),u=At(null),p=At(null),h=At(e),f=At(!0),y=Lo(r,t),S=Ps(()=>{let b=o.current;if(b===null)return;let E=b.ownerDocument.body;p.current={body:E,overflow:E.style.overflow},E.style.overflow="hidden"},[o]),m=Ps(()=>{let b=p.current;b!==null&&(b.body.style.overflow=b.overflow,p.current=null)},[]);kn(()=>{if(f.current){f.current=!1,h.current=e;return}let b=!h.current;h.current=e,b&&e&&a!==null?i(!0):!e&&s&&(u.current=a,i(!1),m())},[e,a,s,m]);let g=e&&s&&y!==null;kn(()=>{if(g)d(!0);else{let b=setTimeout(()=>d(!1),300);return()=>clearTimeout(b)}},[g]),kn(()=>{if(e&&s&&a!==null&&!c.current){let b=`overlay-${Date.now()}`;window.history.pushState({...window.history.state,dailyReportOverlay:b},"",window.location.href),c.current=b}else!(e&&s)&&c.current&&(c.current=null);return e&&s?S():m(),m},[e,s,a,S,m]),kn(()=>{let b=()=>{c.current&&(u.current=a,c.current=null,i(!1),n(null))};return window.addEventListener("popstate",b),()=>window.removeEventListener("popstate",b)},[a,n]);let R=Ps(()=>{e&&(u.current=a,i(!1),n(null),c.current&&(c.current=null,window.history.back()))},[e,a,n]);return{isMobileDetailOpen:s,setIsMobileDetailOpen:i,isOverlayMounted:l,shouldShowOverlay:g,handleOverlayClose:R,lastClosedItemIdRef:u,selectedItem:y}},Ky=({isOpen:e,selectedItem:t,onClose:r,autoMarkRead:n=!1,userId:o,onReportDeleted:a})=>{let{labels:s}=K(),{registerNoticeHost:i}=rs(),l=At(null),d=At(null),c=Zl(),u=Zl(),[p,h]=Fs(Ql),f=Yx(),y=Zl(),S=At(!1),m=At(e),g=At(null),[R]=Fs(()=>Xl(e)),{isBlocked:b,requestBlock:E,reset:T}=qx(),v=Zx(e,t),{overlayRef:I,overlayStyle:O,attemptClose:k,isSwiping:F}=Xx({isOpen:e,onClose:r,isCloseBlocked:Ps(()=>b,[b]),skipWhenTextSelected:!0}),D=At(k);Jl(()=>{D.current=k,m.current=e,R.set(e)},[k,e,R]),kn(()=>{if(e)return f({id:y,onEscape:L=>tr(L)&&D.current()})},[e,f,y]),Jl(()=>{let L=l.current;if(L===null)return;if(e){if(S.current)return;L.showModal(),S.current=!0,L.ownerDocument.getElementById(c)?.focus();return}if(!S.current)return;S.current=!1;let P=xe(L);P!==null&&L.contains(P)&&no(P)&&P.blur(),L.close()},[e,c]),Jl(()=>{let L=d.current;if(!(!e||L===null))return i(L)},[e,i]),kn(()=>{e||T()},[e,T]);let C=Qx(()=>k()),x=L=>{let P=Tn(L);if(tr(P)){k()&&L.preventDefault();return}if(P.key==="Escape"){g.current=L.timeStamp;return}let V=qp(P,L.currentTarget);V!==null&&(L.preventDefault(),V.kind==="wrap"&&V.element.focus())},w=L=>{L.preventDefault();let P=g.current;g.current=null,!(P!==null&&L.timeStamp-P<=aC)&&D.current()},M=L=>{let P=L.currentTarget;P.open||!m.current||(S.current=!1,!D.current()&&(P.showModal(),S.current=!0))};return v?Vy("dialog",{ref:l,"data-daily-report-mobile-overlay":"true","aria-labelledby":`${c} ${u}`,tabIndex:-1,className:A(Jx,e&&!F?"pointer-events-auto":"pointer-events-none"),style:eC,inert:!e,onKeyDown:x,onCancel:w,onClose:M,children:[Dr("div",{"aria-hidden":"true","data-daily-report-overlay-backdrop":"",className:A(tC,e?"opacity-100":"opacity-0"),...C}),Dr("div",{ref:I,"data-daily-report-overlay-panel":"",className:A(rC,e?"pointer-events-auto":"pointer-events-none"),style:O,children:Vy("div",{className:"flex h-full w-full flex-col gap-4 p-4",children:[Dr(Gx.Provider,{value:{isBlocked:b,requestBlock:E},children:Dr("div",{"data-testid":"daily-report-side-pane","data-report-id":v.reportHubId,"data-displayed-report-id":v.reportHubId,className:"flex min-h-0 flex-1 flex-col gap-4",children:Dr(ks,{item:v,placement:"overlay",headingId:c,authorId:u,activeTab:p,onActiveTabChange:h,autoMarkRead:n,isActive:e,dwell:R,userId:o,onReportDeleted:a},v.reportHubId)})}),Dr("div",{ref:d,"data-daily-report-notice-slot":"","data-overlay-interactive":"true",className:oC}),Dr("div",{className:"flex justify-start",children:Dr("button",{type:"button","data-overlay-interactive":"true",className:nC,onClick:()=>k(),children:s.close})})]})})]}):null};import SC from"lucide-react/dist/esm/icons/check.js";import{createContext as gC,memo as Yy,useCallback as EC,useContext as Gr,useDeferredValue as TC,useEffect as DC,useId as Pn,useMemo as ed,useRef as AC}from"react";import{createContext as sC,createElement as iC,useLayoutEffect as lC,useMemo as dC,useRef as cC,useState as uC}from"react";var pC=6.75,mC=4,fC=1e-6,yC=e=>4*Math.ceil((2*lr+2*$o+mC+pC*e-fC)/4),Hs=sC(null),hC="data-daily-report-root-font-size-probe",RC={position:"fixed",insetBlockStart:0,insetInlineStart:0,visibility:"hidden",pointerEvents:"none",overflow:"hidden",writingMode:"horizontal-tb",boxSizing:"content-box",padding:0,border:0,margin:0,blockSize:"1rem",inlineSize:0},bC=e=>{let t=Xe(e).getComputedStyle(e.ownerDocument.documentElement).fontSize,r=/^(\d+(?:\.\d+)?)px$/.exec(t);if(r===null||!(Number(r[1])>0))throw new Error(`[daily-report] the root element has no computed font size in px; got ${JSON.stringify(t)}`);return Number(r[1])},zy=()=>{let e=cC(null),[t,r]=uC(null);lC(()=>{let o=e.current;if(o===null)throw new Error("[daily-report] useListRowSlotHeight needs the List to render remProbe");let a=null,s=()=>{let l=yC(bC(o));l!==a&&(a=l,r(l))};s();let i=new ResizeObserver(s);return i.observe(o),()=>i.disconnect()},[]);let n=dC(()=>iC("div",{ref:e,"aria-hidden":!0,[hC]:"",style:RC}),[]);return{rowSlotHeight:t,remProbe:n}};import{jsx as J,jsxs as Hn}from"react/jsx-runtime";var xC=A(cr,Ko,zo,Wo),CC=A("relative flex h-full w-full select-none flex-wrap content-start items-center gap-2 overflow-hidden",vt,Go,Ed),IC="min-w-24",vC="basis-full space-y-2 text-slate-700 text-sm leading-5 dark:text-slate-200",wC={touchAction:"manipulation"},_C=A("flex grow basis-0 cursor-pointer items-center gap-2 text-left outline-none after:absolute after:inset-0 after:rounded-2xl",IC),LC=A("relative z-10",ze),NC=A(Ye,"shrink-0 whitespace-nowrap bg-slate-100 font-medium text-slate-900 text-xs dark:bg-slate-800 dark:text-slate-100"),OC=A(Ye,"min-w-0 max-w-full bg-slate-100 font-semibold text-xs dark:bg-slate-800 dark:text-slate-200"),MC=A(Cd,"ml-auto"),kC=A("flex h-full",vt),PC="flex h-full w-full flex-col justify-between motion-safe:animate-pulse",Fn="h-4 rounded bg-slate-200 dark:bg-slate-700",FC=J("div",{"data-skeleton":!0,...rt,className:kC,children:Hn("div",{className:PC,children:[Hn("div",{className:"flex flex-wrap items-center gap-2",children:[J("div",{className:A(Fn,"w-24")}),J("div",{className:A(Fn,"w-24")}),J("div",{className:A(Fn,"w-24")})]}),Hn("div",{className:"space-y-2",children:[J("div",{className:A(Fn,"w-full")}),J("div",{className:A(Fn,"w-11/12")}),J("div",{className:A(Fn,"w-5/6")})]})]})}),HC=()=>FC,BC=e=>{e.target===e.currentTarget&&e.preventDefault()},UC="h-full w-full",qy=gC(!1),$y=({reportHubId:e,cursor:t,cardless:r,children:n})=>{let o=Gr(Zt),a=Gr(Qt),s=Gr(Hs);if(s===null)throw new Error("[daily-report] a List row frame is rendered outside the List view (no measured row slot)");let i=ed(()=>({height:s}),[s]),{isCurrent:l,isTabStop:d}=vs(t,e),c=ws(t,e,o);return J(bo.Provider,{value:d,children:J(qy.Provider,{value:l,children:J("div",{ref:r?.focusTargetRef,role:"listitem","data-daily-report-row":e,"aria-posinset":o+1,"aria-setsize":a,"aria-label":r?.label,"aria-busy":r?.isBusy||!c?!0:void 0,"aria-current":r!==null&&l?"true":void 0,tabIndex:r===null?-1:void 0,className:xC,style:i,onMouseDown:BC,children:c?n:J("div",{...rt,className:UC})})})})},VC=({id:e})=>{let{labels:t}=K(),r=Gr(Zt),n=Gr(Qt);return J("span",{id:e,hidden:!0,children:n===mn?t.listRowPositionInUnknownTotal(r+1):t.listRowPosition(r+1,n)})},WC=({reportHubId:e,focusTargetRef:t,describedBy:r,onClick:n,children:o})=>{let a=Gr(qy);return J("button",{ref:t,type:"button","data-daily-report-button":e,"aria-current":a?"true":void 0,"aria-describedby":r,onClick:n,className:_C,children:o})},jy=({label:e,dataAttributes:t,onClick:r,children:n})=>{let o=xn();return J("button",{type:"button",title:e,"aria-label":e,tabIndex:o,...t,onClick:r,className:LC,children:n})},Xy=Yy(({item:e,report:t,onSelect:r,focusTargetRef:n})=>{let{labels:o,sourceTypeConfigs:a}=K(),{toggleStar:s,toggleRead:i}=$e(),l=Pn(),d=Pn(),c=Pn(),u=Pn(),p=Pn(),h=Pn(),f=Gr(ht)!==null,y=ed(()=>ic(t.content??null,tu),[t.content]),S=ed(()=>Fe(t.employeeName),[t.employeeName]),m=he(e.businessDate),g=O=>{O.currentTarget.focus({preventScroll:!0});let k=Bu(O.currentTarget);k!==null&&r(e.reportHubId,k)},R=async()=>{let O=!t.isStarred;try{await s(t.reportHubId,O,t.date)}catch{}},b=async()=>{let O=!t.isRead;try{await i(t.reportHubId,O,t.date)}catch{}},E=t.isStarred?o.starRemove:o.starAdd,T=t.isRead?o.markUnread:o.markRead,v=Gt(t.sourceType,a),I=[l,c,...t.attachments.length>0?[u]:[],...v===void 0?[]:[p],d,...f?[h]:[]].join(" ");return J("div",{"data-daily-report-card":!0,...rt,style:wC,className:CC,children:Hn(Dn,{reportHubId:e.reportHubId,children:[J(VC,{id:l}),J("span",{id:c,className:"sr-only",children:o.rowState({isRead:t.isRead,isStarred:t.isStarred})}),Hn(WC,{reportHubId:e.reportHubId,focusTargetRef:n,describedBy:I,onClick:g,children:[J("span",{className:NC,children:m})," ",J("span",{className:OC,children:J("span",{className:"truncate font-medium text-slate-900 dark:text-slate-100",children:J(oe,{fieldKey:ae.field("employeeName"),raw:t.employeeName,display:S})})})]}),Hn("div",{className:MC,children:[J(Wn,{id:u,count:t.attachments.length,label:o.attachments}),v?J(vn,{id:p,config:v}):null,J(jy,{label:E,dataAttributes:{"data-list-star-button":e.reportHubId},onClick:R,children:J(In,{filled:t.isStarred})}),J(jy,{label:T,dataAttributes:{"data-list-read-button":e.reportHubId},onClick:b,children:t.isRead?J(SC,{className:Pe.read}):J(wn,{})})]}),J("div",{id:d,className:vC,children:y.length>0?y.map((O,k)=>J("p",{className:"wrap-break-word line-clamp-1",children:J(oe,{fieldKey:ae.field("content"),raw:t.content,display:O})},k)):J("p",{children:o.contentEmptyPreview})}),J(Cf,{id:h})]})})});Xy.displayName="ListReportCard";var Gy=(e,t)=>EC(r=>(e.registerFocusTarget(t,r),()=>e.unregisterFocusTarget(t,r)),[e,t]),td=Yy(({item:e,onSelect:t,cursor:r})=>{let{labels:n}=K(),{removeStaleItem:o}=$e(),{report:a,error:s,isLoading:i,isRefetching:l}=Nr(e.reportHubId,e.businessDate),d=TC(a),c=AC(!1);DC(()=>{if(l){c.current=!0;return}!(a||i||s)&&c.current&&e.reportHubId>0&&o(e.reportHubId)},[a,i,l,s,e.reportHubId,o]);let u=Gy(r,e.reportHubId),p=Gy(r,e.reportHubId),h=(f,y)=>J($y,{reportHubId:e.reportHubId,cursor:r,cardless:{label:he(e.businessDate),isBusy:y,focusTargetRef:u},children:f});return s?h(J("div",{...rt,className:"flex h-full items-center justify-center rounded-2xl border border-red-200 border-solid bg-red-50 p-[15px] text-red-700 text-sm dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-300",children:J("p",{children:n.reportSummaryLoadFailed(e.reportHubId)})}),!1):d===null&&(i||a!==null)?h(J(HC,{}),!0):d?J($y,{reportHubId:e.reportHubId,cursor:r,cardless:null,children:J(Xy,{item:e,report:d,onSelect:t,focusTargetRef:p})}):h(J("div",{...rt,className:"flex h-full items-center justify-center rounded-2xl border border-slate-200 border-solid bg-slate-50 p-[15px] text-slate-500 text-sm dark:border-slate-700 dark:bg-slate-900/40 dark:text-slate-400",children:J("p",{children:n.reportNotFound})}),!1)});td.displayName="ListReportItem";import{Fragment as sI,jsx as tt,jsxs as Us}from"react/jsx-runtime";var Jy={pointerDragInputs:ha,inertiaOptions:fn(!1),wheelSpeedMultiplier:ca,enableKeyboardNavigation:!1,resetOnGetItemHeightChange:!0},jC={...Jy,inertiaOptions:fn(!0)},GC=Object.freeze({value:360,unit:"pixels"}),YC=Object.freeze({value:160,unit:"pixels"}),qC=Object.freeze({value:By,unit:"pixels"}),XC=Object.freeze({value:520,unit:"pixels"}),QC=Object.freeze({visible:!0,thickness:6,length:32,barThickness:2,barLength:16}),ZC=A("cursor-col-resize rounded hover:bg-slate-200/60 focus:ring-0 dark:hover:bg-slate-700/60",ee),JC=A("relative w-full",Jo,Zo),eI=A(dt,"relative isolate overflow-hidden"),Zy="daily-report-list",tI=()=>!1,rI=e=>{let[t,r]=Vs(!1);return nd(()=>{let n=e.current;if(n===null)throw new Error("[daily-report] the List root is not attached");let o=s=>{for(let i of s)r(i.contentRect.width>0&&i.contentRect.width<eu)},a=new(Xe(n)).ResizeObserver(o);return a.observe(n),()=>a.disconnect()},[e]),t},od=e=>{let t=Yr(null),[r,n]=Vs(null),o=Aa(t),a=rI(t),{rowSlotHeight:s,remProbe:i}=zy(),l=yn(r),d=xt(c=>(t.current=c,n(c),()=>{t.current=null,n(null)}),[]);return Us("div",{ref:d,className:Xo,"data-testid":"daily-report-root",children:[i,o===null||s===null?null:tt(nI,{...e,rootRef:t,viewportHeight:o,rowSlotHeight:s,isContainerNarrow:a,reducedMotion:l})]})},nI=({dailyReportItems:e,rowSetSize:t,autoMarkRead:r=!1,selectedReportHubId:n,onSelectItem:o,userId:a,scrollOffsetRef:s,rootRef:i,viewportHeight:l,rowSlotHeight:d,isContainerNarrow:c,reducedMotion:u})=>{let[p]=Vs(()=>s?.current??0),h=Yr(null),{labels:f}=K(),y=Ea(),[S]=Vs(Na),g=_y()||c,R=Yr(null),b=e.length,E=t===void 0?b:t,T=Yr(null),v=xt(q=>o(q),[o]),I=xt(q=>{let N=pe(e,q);return N===void 0?pa:N},[e]),O=Yr(null),k=xt(q=>{let N=I(q.visibleStartIndex);N.reportHubId>0&&(S.setLabel(he(N.businessDate)),O.current=N.reportHubId)},[I,S]),F=xt(()=>O.current,[]),D=rd(()=>({kind:"uniform",rowHeight:d}),[d]),C=Yr(e);nd(()=>{C.current=e},[e]);let{cursor:x,containerProps:w,handleRangeChange:M,handleScrollAdjust:L,attachVirtualScroll:P,handleRef:V,scroller:z,attachScrollContainer:j,contentProps:W,keyboardHelp:me,selection:Le,selectionStore:ue,resolveSelectedIndex:le,rememberSelection:ge,focusAfterRemoval:Ze}=Ls({items:e,selectedId:n,onSelect:v,containerRef:h,rootRef:i,testId:Zy,itemsRef:C,rowSizing:D,arrowAlign:"nearest",rowActivation:!1,isViewRevealPending:tI,onRangeChange:k});Ma({items:e,scroller:z,readTopReportId:F});let{isMobileDetailOpen:lt,setIsMobileDetailOpen:Y,isOverlayMounted:Ne,shouldShowOverlay:ve,handleOverlayClose:Oe,lastClosedItemIdRef:Te,selectedItem:It}=Wy({isMobileLayout:g,selection:Le,dailyReportItems:e,onSelectItem:o,rootRef:i});Bs(()=>{let q=h.current,N=()=>{S.setWheelScrollActive(!0),R.current&&clearTimeout(R.current),R.current=window.setTimeout(()=>{S.setWheelScrollActive(!1),R.current=null},ma)};return q?.addEventListener("wheel",N,{passive:!0}),()=>{q?.removeEventListener("wheel",N),R.current&&clearTimeout(R.current)}},[S]),Bs(()=>{!b&&n!==null&&o(null)},[b,n,o]),Bs(()=>{if(lt||Te.current===null)return;let q=Te.current;Te.current=null;let N=le(e,q);if(N===-1)return;let B=V.current;if(B!==null){let G=Ao(B,N,e.length,D),re=G===null?"none":Gf(G);re!=="none"&&z.toIndex(N,{align:re})}x.requestFocus(q)},[lt,e,Te,x,le,V,D,z]),Bs(()=>{let q=pe(e,0);q!==void 0&&S.setLabel(he(q.businessDate))},[e,S]);let xr=xt((q,N)=>{q<=0||(ge(q,N),o(q),g&&Y(!0))},[g,o,Y,ge]),_=xt(()=>d,[d]),H=Yr(d);nd(()=>{let q=H.current;H.current=d;let N=V.current;if(q===d||N===null)return;let B=N.getScrollPosition();B>0&&z.by(B*d/q-B)},[V,d,z]);let U=xt(q=>va(e,q),[e]),X=xt((q,N)=>tt(Zt.Provider,{value:N,children:tt(td,{item:q,onSelect:xr,cursor:x})},q.reportHubId),[xr,x]),fe=xt(q=>{s&&(s.current=q);let N=h.current;N&&(N.toggleAttribute(Qr,!0),T.current&&clearTimeout(T.current),T.current=setTimeout(()=>{N.toggleAttribute(Qr,!1),T.current=null},150))},[s]),Me=xt(q=>tt(Oa,{...q,store:S}),[S]),Ke=rd(()=>Us("div",{ref:j,className:eI,...w,children:[me,tt(Qt.Provider,{value:E,children:tt(Hs.Provider,{value:d,children:tt($C,{ref:P,itemCount:b,getItem:I,getItemKey:U,getItemHeight:_,viewportSize:l,initialScrollOffset:p,overscanCount:fa,scrollBarOptions:{...ya,renderThumbOverlay:Me},behaviorOptions:u?jC:Jy,onRangeChange:M,onScrollAdjust:L,onScroll:fe,testId:Zy,className:JC,locale:y.locale,labels:y.labels,contentProps:W,children:X})})})]}),[j,P,w,E,b,I,U,_,l,d,u,p,Me,M,L,fe,me,W,y.locale,y.labels,X]),Be=rd(()=>Us(KC,{direction:"horizontal",className:"min-h-0 flex-1","data-testid":"daily-report-panel-group",children:[tt(Qy,{id:"daily-report-list-panel",defaultSize:GC,minSize:YC,maxSize:XC,contentOverflow:"hidden",className:oI,children:Ke}),tt(zC,{id:"daily-report-list-handle",thickness:10,indicator:QC,className:ZC,"aria-label":f.resizeHandle}),tt(Qy,{id:"daily-report-detail-panel",minSize:qC,contentOverflow:"hidden",className:aI,children:tt(Uy,{dailyReportItems:e,selectionStore:ue,autoMarkRead:r,userId:a,onReportDeleted:Ze})})]}),[Ke,f.resizeHandle,e,ue,r,a,Ze]);return Us(sI,{children:[tt("div",{className:Qo,children:g?tt("div",{className:dt,children:Ke}):Be}),Ne&&tt(Ky,{isOpen:ve,selectedItem:It,onClose:Oe,autoMarkRead:g&&r,userId:a,onReportDeleted:Ze})]})},oI=A("flex min-h-0",Rd),aI=A("flex min-h-0 flex-1",cr);import{useCallback as Vv,useEffect as Kh,useLayoutEffect as Wv,useRef as $h,useState as Kv}from"react";import Rv from"lucide-react/dist/esm/icons/plus.js";import bv from"lucide-react/dist/esm/icons/refresh-cw.js";import Sv from"lucide-react/dist/esm/icons/rotate-cw.js";import{useEffect as yd,useId as Bh,useLayoutEffect as Uh,useMemo as qs,useRef as Un,useState as qr}from"react";import{useSearchParams as gv}from"react-router";import{useEffect as iI,useRef as eh,useState as lI}from"react";var th=(e,t,r=250)=>{let n=yn(t),[o,a]=lI(e),s=eh(e),i=eh(!0);return iI(()=>{if(i.current){i.current=!1,s.current=e,a(e);return}let l=s.current;if(l===e)return;if(n||t===null){s.current=e,a(e);return}let d=Xe(t),c=0,u=null,p=h=>{u===null&&(u=h);let f=Math.min(1,Math.max(0,(h-u)/r)),y=1-(1-f)**3,S=Math.round(l+(e-l)*y);s.current=S,a(S),f<1&&(c=d.requestAnimationFrame(p))};return c=d.requestAnimationFrame(p),()=>d.cancelAnimationFrame(c)},[e,r,n,t]),n?e:o};import AI from"lucide-react/dist/esm/icons/loader-circle.js";import xI from"lucide-react/dist/esm/icons/x.js";import{useEffect as dh,useId as Ho,useLayoutEffect as CI,useRef as zs,useState as ch}from"react";var Fo=Object.freeze({maxValuesPerFacet:16,maxValueLength:200,maxTotalValueLength:300}),id=["author","sourceType","customer"],ld=Object.freeze({authors:Object.freeze([]),sourceTypes:Object.freeze([]),customers:Object.freeze([])}),dI=/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,cI=e=>{let t=e.trim();return t.length===0?null:t.replace(dI,"\uFFFD")},rh=e=>{let t=cI(e);return t===null?"filter-blank-value":t!==e?"filter-value-not-canonical":e.length>Fo.maxValueLength?"filter-value-too-long":null},uI=e=>{if(e.length>Fo.maxValuesPerFacet)return"filter-too-many-values";let t=new Set;for(let r of e){let n=rh(r);if(n!==null)return n;if(t.has(r))return"filter-duplicate-value";t.add(r)}return null},pI=e=>{let t=0;for(let r of e.authors)t+=r.length;for(let r of e.customers)t+=r.length;return t},Ws=e=>{for(let t of[e.authors,e.sourceTypes,e.customers]){let r=uI(t);if(r!==null)return r}return pI(e)>Fo.maxTotalValueLength?"filters-too-long":null},ad=e=>[...new Set(e)].sort((t,r)=>t<r?-1:1),Ks=e=>({authors:ad(e.authors),sourceTypes:ad(e.sourceTypes),customers:ad(e.customers)}),Ar=e=>e.trim().length===0,Bn=e=>e.authors.length===0&&e.sourceTypes.length===0&&e.customers.length===0,nh=(e,t)=>{let r=Ks(t);for(let n of r.authors)e.append(Ae.searchAuthor,n);for(let n of r.sourceTypes)e.append(Ae.searchSourceType,n);for(let n of r.customers)e.append(Ae.searchCustomer,n)},sd=e=>{if(!Array.isArray(e))return null;let t=[],r=new Set;for(let n of e){if(typeof n!="string"||rh(n)!==null||r.has(n))return null;r.add(n),t.push(n)}return t},oh=e=>{if(!jt(e))return null;let t=sd(e.sourceTypes),r=sd(e.authors),n=sd(e.customers);return t===null||r===null||n===null?null:{sourceTypes:t,authors:r,customers:n}};import{Component as mI,Suspense as fI,useMemo as ah,useState as yI}from"react";import{jsx as sr,jsxs as lh}from"react/jsx-runtime";var sh="flex min-h-6 items-center text-slate-600 text-xs dark:text-slate-300",hI=A(Vd,zt),RI=[{facet:"author",testId:"daily-report-search-filter-author",key:"authors"},{facet:"sourceType",testId:"daily-report-search-filter-source-type",key:"sourceTypes"},{facet:"customer",testId:"daily-report-search-filter-customer",key:"customers"}],bI=(e,t)=>t==="author"?e.author:t==="sourceType"?e.searchFilterSourceType:e.customer,SI=(e,t,r)=>{let n=new Set(r.map(a=>a.value)),o=new Set;for(let a of t){if(!n.has(a)||o.has(a))throw we(`config.search.renderFilterSelect (${e}) onChange values`,"distinct values of the options the control received",t);o.add(a)}return t},dd=class extends mI{constructor(){super(...arguments);this.state={failed:!1}}static getDerivedStateFromError(){return{failed:!0}}render(){return this.state.failed?sr("span",{className:sh,children:this.props.fallback}):this.props.children}},gI=(e,t,r,n)=>{let o=ah(()=>new Set(t.map(s=>s.value)),[t]),a=JSON.stringify(n.filter(s=>!o.has(s)));return ah(()=>{let s=JSON.parse(a);return s.length===0?t:[...t,...s.map(i=>r(e,i))]},[e,t,r,a])};function EI({renderFilterSelect:e,selectProps:t}){return e(t)}var TI=(e,t,r)=>t.status==="idle"||t.status==="loading"?e.searchFiltersLoading:t.status==="failed"?e.searchFiltersFailed(t.failure):r?e.searchFiltersTooMany:t.reloadFailure===null?"":e.searchFiltersFailed(t.reloadFailure);function DI({cell:e,labels:t,locale:r,renderFilterSelect:n,candidates:o,optionOf:a,selected:s,onSelect:i}){let l=gI(e.facet,o,a,s),d=bI(t,e.facet);return lh("fieldset",{"data-testid":e.testId,className:Ud,children:[sr("legend",{"data-testid":`${e.testId}-caption`,className:hI,children:d}),sr(dd,{fallback:t.searchFilterUnavailable,children:sr(fI,{fallback:sr("span",{className:sh,children:t.searchFiltersLoading}),children:sr(EI,{renderFilterSelect:n,selectProps:{facet:e.facet,label:d,options:l,value:s,onChange:c=>i(e,SI(e.facet,c,l)),locale:r}})})})]})}function ih({id:e,labelledBy:t,labels:r,locale:n,renderFilterSelect:o,facets:a,value:s,onChange:i,clearSignal:l}){let[d,c]=yI(null),u=TI(r,a,d!==null&&d.selection===s&&d.clearSignal===l),p=(f,y)=>{let S={...s,[f.key]:y};if(Ws(S)!==null){c({selection:s,clearSignal:l});return}c(null),i(S)},h=a.status==="ready"?a:null;return lh("fieldset",{id:e,"aria-labelledby":t,"data-testid":"daily-report-search-filters",className:"m-0 min-w-0 border-0 px-0 pt-2 pb-0",children:[h===null?null:sr("div",{className:Bd,children:RI.map(f=>sr(DI,{cell:f,labels:r,locale:n,renderFilterSelect:o,candidates:h.options[f.key],optionOf:h.optionOf,selected:s[f.key],onSelect:p},f.facet))}),sr("span",{"data-testid":"daily-report-search-filters-status","aria-live":"polite",className:A("flex min-h-6 items-center text-slate-600 text-xs leading-4 empty:min-h-0 dark:text-slate-300",h===null?null:"mt-2 empty:mt-0",zt),children:u})]})}import{Fragment as UI,jsx as Qe,jsxs as Bo}from"react/jsx-runtime";var II=A("h-6 w-full min-w-0 rounded-md border border-solid bg-white pr-[47px] pl-[7px] text-slate-900 text-sm dark:bg-slate-900 dark:text-slate-100",Wt,ee),uh="inline-grid h-6 place-content-center place-items-center rounded-full border border-solid px-[11px] font-semibold text-xs tabular-nums",vI="col-start-1 row-start-1",wI="invisible col-start-1 row-start-1 after:content-[attr(data-search-toggle-reserve)]",$s=Object.freeze({field:A(uh,"bg-white text-slate-800 dark:bg-slate-900 dark:text-slate-100",Wt,ee),filled:A(uh,"border-blue-700 bg-blue-700 text-white dark:border-blue-600 dark:bg-blue-600 dark:text-white forced-colors:border-[Highlight] forced-colors:bg-[Highlight] forced-colors:text-[HighlightText]",ee)}),_I=Object.freeze({union:A("mr-2 min-w-14",$s.field),intersection:A("mr-2 min-w-14",$s.filled)}),ph=Object.freeze({closed:A("ml-2 min-w-26",$s.field),open:A("ml-2 min-w-26",$s.filled)}),LI=id.length*Fo.maxValuesPerFacet,NI="relative min-w-0",OI="pointer-events-none absolute inset-y-0 right-0 grid grid-cols-[repeat(2,--spacing(6))] place-items-center",MI=A("pointer-events-auto col-start-2 row-start-1",ze),kI="col-start-1 row-start-1 size-4 text-slate-500 motion-safe:animate-spin dark:text-slate-400",PI="sr-only",FI=A("col-[2/-1] row-start-2 pt-1 pl-[8px] text-slate-600 text-xs leading-4 dark:text-slate-300",zt),HI=e=>e.authors.length+e.sourceTypes.length+e.customers.length,BI=(e,t,r)=>t.status==="searching"?e.searching:t.status==="failed"&&t.failure!==null?e.searchFailed(t.failure):t.status==="done"&&r!==null?r===0?e.searchNoHits:e.searchHitCount(r):"",mh=({label:e,reserved:t})=>Bo(UI,{children:[Qe("span",{className:vI,children:e}),Qe("span",{"aria-hidden":"true","data-search-toggle-reserve":t,className:wI})]});function fh({labels:e,debounceMs:t,search:r,shownCount:n,onCommit:o,onCombineChange:a,onRelease:s,clearSignal:i,filters:l}){let[d,c]=ch(""),[u,p]=ch(!1),h=d.length>0||r.committed!==null&&!Ar(r.committed.text),f=Ho(),y=Ho(),S=zs(null),m=zs(null),g=zs(!1),R=zs(i),b=Ho(),E=Ho(),T=Ho(),v=Ue(()=>({search:r,onCommit:o,onRelease:s}));CI(()=>{v.current={search:r,onCommit:o,onRelease:s}});let I=()=>{m.current!==null&&clearTimeout(m.current),m.current=null},O=(W,me,Le)=>{let ue=v.current;Ar(W)?Bn(Le)?ue.search.committed!==null&&ue.onRelease():ue.onCommit("",me,Le):ue.onCommit(W,me,Le)},k=W=>{I();let me=v.current;O(W,me.search.combine,me.search.filters)},F=W=>{t===null||g.current||(I(),m.current=setTimeout(()=>k(W),t))},D=()=>{I(),c(""),Bn(r.filters)?s():(r.committed===null||!Ar(r.committed.text))&&o("",r.combine,r.filters),S.current?.focus()},C=W=>{c(W.target.value),F(W.target.value)},x=W=>{let me=Tn(W);if(W.key==="Enter"&&!Ur(me)){W.preventDefault(),k(d);return}tr(me)&&h&&(W.preventDefault(),D())},w=()=>{I();let W=r.combine==="union"?"intersection":"union";Ar(d)&&Bn(r.filters)?a(W):O(d,W,r.filters)},M=W=>{u||W.facets.load(),p(!u)},L=W=>{I(),O(d,r.combine,W)};dh(()=>{R.current!==i&&(R.current=i,m.current!==null&&clearTimeout(m.current),m.current=null,c(""))},[i]),dh(()=>()=>{m.current!==null&&clearTimeout(m.current)},[]);let P=r.combine==="intersection",V=BI(e,r,n),z=r.status==="failed"?r.failure:null,j=l!==null&&u;return Bo("search",{"data-testid":"daily-report-search",className:Fd,children:[Bo("div",{className:Hd,children:[Qe("button",{type:"button","data-testid":"daily-report-search-combine","aria-describedby":b,title:P?e.searchCombineAndTitle:e.searchCombineOrTitle,onClick:w,className:_I[r.combine],children:Qe(mh,{label:P?e.searchCombineAnd:e.searchCombineOr,reserved:P?e.searchCombineOr:e.searchCombineAnd})}),Bo("div",{className:NI,children:[Qe("input",{ref:S,type:"text","data-testid":"daily-report-search-input","aria-label":e.searchInputLabel,"aria-describedby":z===null?E:`${T} ${E}`,"aria-invalid":z==="invalid"?!0:void 0,title:e.searchSyntaxHelp,placeholder:e.searchPlaceholder,value:d,onChange:C,onKeyDown:x,onCompositionStart:()=>{g.current=!0,I()},onCompositionEnd:W=>{g.current=!1,F(W.currentTarget.value)},className:II}),Bo("div",{className:OI,children:[r.status==="searching"?Qe(AI,{"aria-hidden":"true","data-testid":"daily-report-search-spinner",className:kI}):null,h?Qe("button",{type:"button","data-testid":"daily-report-search-clear","aria-label":e.searchClear,title:e.searchClear,onClick:D,className:MI,children:Qe(xI,{"aria-hidden":"true",className:"size-4"})}):null]})]}),l===null?null:Qe("button",{type:"button",id:f,"data-testid":"daily-report-search-filters-toggle","aria-expanded":u,"aria-controls":j?y:void 0,onClick:()=>M(l),className:u?ph.open:ph.closed,children:Qe(mh,{label:e.searchFiltersToggle(HI(r.filters)),reserved:e.searchFiltersToggle(LI)})}),Qe("span",{id:b,hidden:!0,children:P?e.searchCombineAndTitle:e.searchCombineOrTitle}),Qe("span",{id:E,hidden:!0,children:e.searchSyntaxHelp}),Qe("span",{"data-testid":"daily-report-search-status","aria-live":"polite",className:PI,children:V}),z===null?null:Qe("p",{id:T,"data-testid":"daily-report-search-failure",className:FI,children:e.searchFailed(z)})]}),j?Qe(ih,{id:y,labelledBy:f,labels:e,locale:l.locale,renderFilterSelect:l.renderFilterSelect,facets:l.facets.state,value:r.filters,onChange:L,clearSignal:i}):null]})}var js=new WeakMap,hh=e=>{let t=new Set,r=new Map;for(let n of e)t.add(n.reportHubId),r.set(n.reportHubId,n);return{items:e,ids:t,byId:r,answeredByChunk:new WeakMap}},Gs=(e,t)=>e.businessDate===t.businessDate&&e.sourceType===t.sourceType,VI=(e,t)=>{if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0},WI=(e,t,r,n)=>{let o=new Map;for(let s of t.before)o.set(s.reportHubId,s);let a=n;for(let s of t.after){let i=o.get(s.reportHubId);if(i!==void 0){if(o.delete(s.reportHubId),!Gs(i,s))return null;continue}if(!Gs(s,yh(e,s.reportHubId))||r(s.reportHubId))return null;a-=1}for(let s of o.values()){if(!Gs(s,yh(e,s.reportHubId))||r(s.reportHubId))return null;a+=1}return a},yh=(e,t)=>{let r=e.byId.get(t);if(r===void 0)throw new Error(`[daily-report] The shown answer does not hold report ${t}`);return r},Rh=(e,t,r,n)=>{if(e===null)return{items:t,hasAnswerOnlyItems:!1};let o=u=>e.ids.has(u),a=js.get(e);if(a!==void 0&&a.isReportRemoved===r&&a.removedVersion===n){if(a.stream===t)return a.list;if(a.stream instanceof ot&&t instanceof ot){let u=WI(e,Ou(a.stream,t,e.answeredByChunk,o),r,a.answerOnlyCount);if(u!==null){let p=a.list.hasAnswerOnlyItems===u>0?a.list:{items:a.list.items,hasAnswerOnlyItems:u>0};return js.set(e,{...a,stream:t,list:p,answerOnlyCount:u}),p}}}let s=new Map;for(let u of Nu(t,e.answeredByChunk,o))s.set(u.reportHubId,u);let i=[],l=0;for(let u of e.items){let p=s.get(u.reportHubId);p!==void 0?i.push(Gs(p,u)?u:p):r(u.reportHubId)||(i.push(u),l+=1)}let d=l>0;if(a!==void 0&&a.list.hasAnswerOnlyItems===d&&VI(a.items,i))return js.set(e,{stream:t,isReportRemoved:r,removedVersion:n,items:a.items,list:a.list,answerOnlyCount:l}),a.list;let c={items:i,hasAnswerOnlyItems:d};return js.set(e,{stream:t,isReportRemoved:r,removedVersion:n,items:i,list:c,answerOnlyCount:l}),c};var bh=(e,t,r)=>{let n=pe(t,0);if(n===void 0)return null;let o=yt(e,r);if(o!==-1){let a=new Set;for(let s of t)a.add(s.reportHubId);for(let s=1;o+s<e.length||o-s>=0;s++){let i=pe(e,o+s);if(i!==void 0&&a.has(i.reportHubId))return i.reportHubId;let l=pe(e,o-s);if(l!==void 0&&a.has(l.reportHubId))return l.reportHubId}}return n.reportHubId},cd=(e,t,r,n)=>{if(r===null){let o=pe(t,0);return n&&o!==void 0?o.reportHubId:null}return yt(t,r)!==-1?r:bh(e,t,r)},Sh=(e,t,r)=>e.selected===null?r!==null&&yt(t,r)!==-1?r:null:yt(t,e.selected)!==-1?e.selected:bh(e.items,t,e.selected);import{useEffect as Eh,useLayoutEffect as qI,useMemo as Th,useRef as Dh,useSyncExternalStore as XI}from"react";var KI=1e3,zI=5e3,$I={combine:"union",committed:null,filters:ld,generation:0,status:"idle",failure:null,items:null,answered:null},jI=e=>e===400?"invalid":e===404?"unavailable":e===429?"busy":"failed",GI=(e,t)=>e.length===t.length&&e.every((r,n)=>r.length===t[n].length&&r.every((o,a)=>o.length===t[n][a].length&&o.every((s,i)=>s.text===t[n][a][i].text&&s.tier===t[n][a][i].tier))),ud=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),YI=(e,t)=>{let r=Ks(e),n=Ks(t);return ud(r.authors,n.authors)&&ud(r.sourceTypes,n.sourceTypes)&&ud(r.customers,n.customers)},gh=e=>{let t=$I,r=new Set,n=null,o=null,a=null,s=null,i=null,l=null,d=E=>{t=E;for(let T of r)T()},c=()=>{s!==null&&clearTimeout(s),i!==null&&clearTimeout(i),s=null,i=null},u=(E,T)=>{let v=t.answered;return v!==null&&v.query.text===E.text&&v.query.combine===E.combine&&GI(v.words,T)?v:{query:{text:E.text,combine:E.combine},words:T}},p=E=>{let T=new URLSearchParams({[Ae.searchQuery]:E.text,[Ae.searchCombine]:E.combine});return nh(T,E.filters),`${e.apiBasePath}/${He.search}?${T.toString()}`},h=(E,T,v,I)=>{if(!v){d({...t,status:"failed",failure:E});return}l!==I&&(l=I,i=setTimeout(()=>{i=null,y(T,!0)},zI))},f=async(E,T,v)=>{let I=new AbortController;n={controller:I};let O={Accept:"application/json"};v&&a!==null&&a.generation===T&&(O["If-None-Match"]=a.value);try{let k=await e.fetch(p(E),{headers:O,cache:"no-store",signal:I.signal});if(I.signal.aborted||T!==t.generation)return;if(k.status===304){t.status!=="done"&&d({...t,status:"done",failure:null});return}if(k.status===401||k.status===403){e.onSessionExpired(),h("failed",E,!1,T);return}if(!k.ok){h(jI(k.status),E,v,T);return}let F=Pc(await k.json(),!Ar(E.text));if(I.signal.aborted||T!==t.generation)return;if(F===null){h("failed",E,v,T);return}let D=k.headers.get("ETag");a=D===null?null:{generation:T,value:D},l=null,d({...t,status:"done",failure:null,items:F.items,answered:F.words.length===0?null:u(E,F.words)})}catch{if(I.signal.aborted||T!==t.generation)return;h("failed",E,v,T)}finally{if(n!==null&&n.controller===I&&(n=null),n===null&&o!==null){let k=o;o=null,y(k.query,k.background)}}},y=(E,T)=>{if(n!==null){o={query:E,background:(o===null||o.background)&&T};return}f(E,t.generation,T)};return{getSnapshot:()=>t,subscribe:E=>(r.add(E),()=>{r.delete(E)}),commit:(E,T,v)=>{if(Ar(E)&&Bn(v))throw new Error("[daily-report] search: a blank text can be committed only with a filter");let I=Ws(v);if(I!==null)throw new Error(`[daily-report] search: the filter selection cannot be sent (${I})`);c();let O=t.committed,k=O!==null&&O.text===E&&O.combine===T&&YI(O.filters,v),F={text:E,combine:T,filters:v};d({...t,combine:T,committed:F,filters:v,generation:k?t.generation:t.generation+1,status:"searching",failure:null}),y(F,!1)},setCombine:E=>{E!==t.combine&&d({...t,combine:E})},release:()=>{c(),n?.controller.abort(),n=null,o=null,t.committed!==null&&d({combine:t.combine,committed:null,filters:ld,generation:t.generation+1,status:"idle",failure:null,items:null,answered:null})},invalidate:()=>{let E=t.committed;E!==null&&(s!==null&&clearTimeout(s),s=setTimeout(()=>{s=null,y(E,!0)},KI))},dispose:()=>{c(),n?.controller.abort(),n=null,o=null}}};var Ah=({apiBasePath:e,invalidation:t,onSessionExpired:r})=>{let n=Dh(r);qI(()=>{n.current=r});let o=Th(()=>gh({apiBasePath:e,onSessionExpired:()=>n.current(),fetch:(i,l)=>fetch(i,l)}),[e]);Eh(()=>()=>o.dispose(),[o]);let a=Dh(t);Eh(()=>{a.current!==t&&(a.current=t,o.invalidate())},[t,o]);let s=XI(o.subscribe,o.getSnapshot,o.getSnapshot);return Th(()=>({...s,commit:o.commit,setCombine:o.setCombine,release:o.release}),[s,o])};import{useCallback as xh,useEffect as QI,useLayoutEffect as ZI,useMemo as pd,useRef as JI,useState as ev}from"react";var Ch=Object.freeze({status:"idle"}),tv=Object.freeze({status:"loading"}),rv=Object.freeze({sourceTypes:[],authors:[],customers:[]}),nv=e=>e===404?"unavailable":e===429?"busy":"failed",md=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),ov=(e,t)=>md(e.sourceTypes,t.sourceTypes)&&md(e.authors,t.authors)&&md(e.customers,t.customers),av=(e,t)=>"facets"in t?e.status!=="ready"||!ov(e.facets,t.facets)?{status:"ready",facets:t.facets,reloadFailure:null}:e.reloadFailure===null?e:{status:"ready",facets:e.facets,reloadFailure:null}:e.status==="ready"?{status:"ready",facets:e.facets,reloadFailure:t.failure}:{status:"failed",failure:t.failure},Ih=(e,t)=>[...e].sort((r,n)=>{let o=t.compare(r,n);return o!==0?o:r<n?-1:1}).map(r=>({value:r,label:r})),sv=(e,t)=>e.map(r=>vh(r,t));function vh(e,t){let r=Gt(e,t);return{value:e,label:r===void 0?e:r.label}}var wh=({apiBasePath:e,locale:t,sourceTypeConfigs:r,onSessionExpired:n})=>{let[o,a]=ev({apiBasePath:e,load:Ch}),s=o.apiBasePath===e?o.load:Ch,i=JI(null),l=Ue(()=>({apiBasePath:e,onSessionExpired:n}));ZI(()=>{l.current={apiBasePath:e,onSessionExpired:n}}),QI(()=>()=>{i.current?.abort(),i.current=null},[e]);let d=xh(()=>{if(i.current!==null)return;let f=new AbortController;i.current=f;let y=l.current.apiBasePath;a(m=>m.apiBasePath===y&&m.load.status==="ready"?m:{apiBasePath:y,load:tv}),(async()=>{let m;try{let g=await fetch(`${y}/${He.searchFacets}`,{headers:{Accept:"application/json"},cache:"no-cache",signal:f.signal});if(f.signal.aborted)return;if(g.status===401||g.status===403)l.current.onSessionExpired(),m={failure:"failed"};else if(!g.ok)m={failure:nv(g.status)};else{let R=oh(await g.json());if(f.signal.aborted)return;m=R===null?{failure:"failed"}:{facets:R}}}catch{if(f.signal.aborted)return;m={failure:"failed"}}i.current=null,a(g=>({apiBasePath:y,load:av(g.load,m)}))})()},[l]),c=s.status==="ready"?s.facets:rv,u=pd(()=>{let f=new Intl.Collator(t);return{authors:Ih(c.authors,f),sourceTypes:sv(c.sourceTypes,r),customers:Ih(c.customers,f)}},[c,t,r]),p=xh((f,y)=>f==="sourceType"?vh(y,r):{value:y,label:y},[r]),h=pd(()=>s.status==="ready"?{status:"ready",options:u,optionOf:p,reloadFailure:s.reloadFailure}:s,[s,u,p]);return pd(()=>({state:h,load:d}),[h,d])};import{useEffect as Mh,useLayoutEffect as mv,useMemo as fv,useRef as yv}from"react";var iv=4294967295,_h=e=>typeof e=="number"&&Number.isInteger(e)&&e>=0&&e<=iv,lv=e=>{if(!Array.isArray(e)||e.length%3!==0)return null;let t=[];for(let r=0;r<e.length;r+=3){let n=e[r],o=e[r+1],a=e[r+2];if(!(typeof n=="number"&&Number.isSafeInteger(n)&&n>=0&&typeof o=="number"&&Number.isSafeInteger(o)&&n<o)||!Qn(a))return null;if(r>0){let s=t[r-2];if(s>n||s===n&&t[r-1]===a)return null}t.push(n,o,a)}return t},dv=e=>{if(!(jt(e)&&_h(e.fingerprint)))return null;if(Object.hasOwn(e,"dense"))return e.dense===!0&&!Object.hasOwn(e,"ranges")?{fingerprint:e.fingerprint,dense:!0}:null;let t=lv(e.ranges);return t===null?null:{fingerprint:e.fingerprint,ranges:t}},cv=e=>{if(!jt(e))return null;let t={};for(let[r,n]of Object.entries(e)){if(!hn(r))return null;let o=dv(n);if(o===null)return null;t[r]=o}return t},Lh=(e,t)=>{if(!(jt(e)&&_h(e.wordsDigest)&&Array.isArray(e.reports)&&Array.isArray(e.deferred)))return null;let r=new Set(t.requestedIds),n=new Set,o=2**t.setCount-1,a=[];for(let i of e.reports){if(!jt(i))return null;let{reportHubId:l,matchedSets:d}=i;if(!(typeof l=="number"&&ut(l)&&r.has(l))||n.has(l)||(n.add(l),t.expectsMatchedSets?!(typeof d=="number"&&Number.isInteger(d)&&d>=0&&d<=o):d!==null))return null;let c=cv(i.fields);if(c===null)return null;a.push({reportHubId:l,matchedSets:d,fields:c})}if(a.length===0&&e.deferred.length>0)return null;let s=[];for(let i of e.deferred){if(!(typeof i=="number"&&ut(i)&&r.has(i))||n.has(i))return null;n.add(i),s.push(i)}return{wordsDigest:e.wordsDigest,reports:a,deferred:s}};var Nh=2*Xn*$t.maxDetailIds,uv=240,pv=6e4,Oh=({apiBasePath:e,fetch:t,answered:r,onSessionExpired:n})=>{let o=r.words.length,a=r.query.combine==="union"&&o>=2,s=qu(r.words),i=new Map,l=new Map,d=0,c=new Map,u=new Set,p=0,h=0,f=null,y=new Set,S=!1,m=x=>{let w=i.get(x);if(w!==void 0)return w;let M={entry:void 0,appliedSequence:0,settledEpoch:null,retriedEpoch:null,revalidated:new Set};return i.set(x,M),l.has(x)||(d+=1),M},g=x=>{for(let w of x){let M=i.get(w);M!==void 0&&(M.settledEpoch=null)}},R=()=>{if(!(d<=Nh))for(let x of[...i.keys()]){if(d<=Nh)return;l.has(x)||(i.delete(x),c.delete(x),d-=1)}},b=x=>{let w=l.get(x);if(w!==void 0)for(let M of[...w])M()},E=x=>{let w=new URLSearchParams({[Ae.searchQuery]:r.query.text,[Ae.searchCombine]:r.query.combine,[Ae.reportIds]:x.join(",")});return`${e}/${He.searchMarks}?${w.toString()}`},T=(x,w)=>{for(let M of x){let L=m(M.reportHubId);L.appliedSequence>w||(L.appliedSequence=w,L.entry=M,i.delete(M.reportHubId),i.set(M.reportHubId,L),b(M.reportHubId))}R()},v=(x,w)=>{let M=[];for(let V of x){let z=i.get(V);z!==void 0&&z.retriedEpoch!==p&&M.push({id:V,record:z})}if(M.length===0)return;let P=setTimeout(()=>{u.delete(P);for(let{id:V,record:z}of M){let j=c.get(V);j===void 0||j.timer!==P||(c.delete(V),l.has(V)?(z.retriedEpoch=p,C.enqueue(V)):z.settledEpoch=null)}},w);u.add(P);for(let{id:V,record:z}of M)c.set(V,{timer:P,record:z})},I=x=>{for(let w of x)l.has(w)?C.enqueue(w):g([w])},O=async(x,w)=>{h+=1;let M=h,L=p;for(let j of x)m(j).settledEpoch=p,c.delete(j);R();let P;try{P=await t(E(x),{headers:{Accept:"application/json"},cache:"no-store",signal:w})}catch{return}if(P.status===401||P.status===403){n();return}if(P.status===429){let j=ia(P,pv);j!==null&&L===p&&v(x,j);return}if(!P.ok)return;let V;try{V=await P.json()}catch{return}let z=Lh(V,{requestedIds:x,setCount:o,expectsMatchedSets:a});w.aborted||z===null||z.wordsDigest!==s||(T(z.reports,M),L===p&&I(z.deferred))},k=()=>{S=!0,queueMicrotask(()=>{S=!1}),f=setTimeout(F,uv)},F=()=>{if(f=null,y.size!==0){for(let x of y)C.enqueue(x);y.clear(),k()}},D=x=>{if(f!==null&&!S){y.add(x);return}C.enqueue(x),f===null&&k()},C=sa({hasListener:x=>l.has(x),batchSize:$t.maxDetailIds,inFlightBound:Xn,send:O});return{indicator:Object.freeze({setCount:o,showsMatchedSets:a}),subscribe:(x,w)=>{let M=l.get(x);M===void 0&&(M=new Set,l.set(x,M),i.has(x)&&(d-=1)),M.add(w);let L=i.get(x),P=L!==void 0&&L.settledEpoch===p;return M.size===1&&!P&&!C.isWanted(x)&&!y.has(x)&&D(x),()=>{let V=l.get(x);V===void 0||!V.delete(w)||V.size>0||(l.delete(x),i.has(x)&&(d+=1),y.delete(x),g(C.release(x)),R())}},read:x=>{let w=i.get(x);return w===void 0?void 0:w.entry},revalidate:(x,w,M)=>{let L=m(x),P=`${w}\0${M}`;L.revalidated.has(P)||(L.revalidated.add(P),y.delete(x),C.enqueue(x))},advanceEpoch:()=>{p+=1;for(let x of u)clearTimeout(x);u.clear(),c.clear(),y.clear();for(let x of l.keys())C.enqueue(x)},dispose:()=>{for(let w of u)clearTimeout(w);u.clear();let x=[...c.keys(),...y];c.clear(),y.clear(),f!==null&&clearTimeout(f),f=null,g([...C.dispose(),...x])}}};var kh=({apiBasePath:e,answered:t,shownRevision:r,onSessionExpired:n})=>{let o=yv(n);mv(()=>{o.current=n});let a=fv(()=>t===null?null:Oh({apiBasePath:e,answered:t,onSessionExpired:()=>o.current(),fetch:(i,l)=>fetch(i,l)}),[e,t]);Mh(()=>{if(a!==null)return()=>a.dispose()},[a]);let s=Ue(()=>({store:a,shownRevision:r}));return Mh(()=>{let i=s.current;s.current={store:a,shownRevision:r},a!==null&&i.store===a&&i.shownRevision!==r&&a.advanceEpoch()},[s,a,r]),a};import{useSyncExternalStore as hv}from"react";var Ph=e=>{let t=e,r=new Set;return{get:()=>t,set:n=>{if(n!==t){t=n;for(let o of[...r])o()}},subscribe:n=>(r.add(n),()=>{r.delete(n)})}},fd=e=>hv(e.subscribe,e.get,e.get);import*as Uo from"@radix-ui/react-switch";import*as Hh from"react";import{jsx as Fh}from"react/jsx-runtime";var Ys=Hh.forwardRef(({className:e,...t},r)=>Fh(Uo.Root,{className:A(`peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-transparent disabled:cursor-not-allowed disabled:opacity-50 ${wd} ${Ld} ${ee}`,e),...t,ref:r,children:Fh(Uo.Thumb,{className:`pointer-events-none block rounded-full shadow-lg data-[state=unchecked]:translate-x-0 motion-safe:transition-[translate] ${_d} ${Nd}`})}));Ys.displayName=Uo.Root.displayName;import{Fragment as Uv,jsx as te,jsxs as Ct}from"react/jsx-runtime";var Ev="list",Tv=e=>{if(e==="list"||e==="tree"||e==="detailList")return e;throw new Error(`[daily-report] unknown view tab: ${e}`)},Dv=()=>({topItem:null,anchorReportHubId:null,measuredHeights:new Map}),Av=A(Md,Yd,"flex flex-wrap items-center gap-2"),xv=A("@container/views",dt),Cv=A("mt-0",dt),Iv=A("flex flex-1 items-center justify-center",Zr),Vh="relative h-4 w-4 p-0 after:absolute after:-inset-1",vv="flex items-center gap-2",wv=A(Vh,"text-slate-600 hover:bg-amber-200/60 hover:text-slate-900 dark:text-slate-300 dark:hover:bg-amber-800/60 dark:hover:text-slate-100"),_v=A(Vh,"text-amber-800 hover:bg-amber-200/60 hover:text-amber-950 dark:text-amber-300 dark:hover:bg-amber-800/60 dark:hover:text-amber-100"),Wh=(e,t)=>{let r=Io(t);return[e.totalCount(r),e.searchHitCount(r)]},Lv=({count:e})=>{let{labels:t}=K(),[r,n]=qr(null),o=th(e,r);return te(vo,{ref:n,text:t.totalCount(o),widestTexts:Wh(t,Math.max(e,o))})},Nv=({totalCount:e,hitCount:t})=>{let{labels:r}=K();return t!==null?te(vo,{text:r.searchHitCount(t),widestTexts:Wh(r,e===mn?t:Math.max(e,t))}):e===mn?te("span",{children:r.totalCountLoading}):te(Lv,{count:e})},Ov=({checked:e,onCheckedChange:t})=>{let{labels:r}=K(),n=Bh(),o=Bh();return Ct("div",{className:"flex items-center gap-1 pl-1",children:[te(Ys,{id:n,checked:e,onCheckedChange:t,title:r.autoReadTitle,"aria-describedby":o}),te(To,{htmlFor:n,className:"cursor-pointer select-none text-slate-500 text-xs dark:text-slate-400",children:r.autoRead}),te("span",{id:o,hidden:!0,children:r.autoReadTitle})]})},Mv=({selectionStore:e,dailyReportItems:t,rowSetSize:r,autoMarkRead:n,userId:o,scrollOffsetRef:a})=>{let s=fd(e);return te(od,{dailyReportItems:t,rowSetSize:r,autoMarkRead:n,selectedReportHubId:s,onSelectItem:e.set,userId:o,scrollOffsetRef:a})},kv=({selectionStore:e,dailyReportItems:t,rowSetSize:r,userId:n,scrollRestoreRef:o})=>{let a=fd(e);return te(Vl,{dailyReportItems:t,rowSetSize:r,userId:n,selectedItemId:a,onSelectItem:e.set,scrollRestoreRef:o})},Pv=({tabItems:e,actions:t,searchRow:r})=>{let[n,o]=qr(Ev),{labels:a}=K();return Ct(No,{value:n,onValueChange:s=>o(Tv(s)),className:xv,children:[Ct("div",{className:A(Pd,qd,Xd[n]),children:[Ct("div",{className:Av,children:[te(Oo,{"aria-label":a.viewTabList,className:"flex flex-wrap gap-1",...jp,children:e.map(({value:s,label:i})=>te(Mo,{value:s,children:i},s))}),t]}),r]}),e.map(({value:s,content:i})=>te(Mn,{value:s,tabStop:!1,className:Cv,children:i},s))]})},Fv=Object.freeze({items:null,generation:0,revision:0,change:"none",scrollRequest:null,restoreOnRelease:!0}),Hv=(e,t,r)=>{let n="update";t===null?n=e.restoreOnRelease?"restore":"release":e.items===null?n="enter":e.generation!==r&&(n="start");let o=n==="enter"||n==="start"||n==="restore"?n:null,a=o===null?e.scrollRequest:{seq:e.scrollRequest===null?1:e.scrollRequest.seq+1,kind:o};return{items:t,generation:r,revision:e.revision+1,change:n,scrollRequest:a,restoreOnRelease:t===null||n==="enter"?!0:e.restoreOnRelease}},Bv=({answer:e,hasAnswerOnlyItems:t})=>{let{phase:r,isRevalidating:n}=gn(),o=r==="complete"&&!n,a=Un(null);return yd(()=>{!(o&&t)||a.current===e||(a.current=e,mo())},[o,t,e]),null},hd=({userId:e})=>{let[t,r]=qr(!1),{labels:n,renderHeader:o,showDevControls:a,apiBasePath:s,onSessionExpired:i,search:l,locale:d,sourceTypeConfigs:c}=K(),{toggleSse:u,createReport:p,refetchData:h,clearCacheAndRefetch:f}=$e(),{isSseEnabled:y,items:S,searchInvalidation:m,isReportRemoved:g,removedVersion:R}=is(),[b]=gv(),E=Ah({apiBasePath:s,invalidation:m,onSessionExpired:i}),T=wh({apiBasePath:s,locale:d,sourceTypeConfigs:c,onSessionExpired:i}),v=l===null||E.committed===null?null:E.items,[I,O]=qr(Fv);I.items!==v&&O(Hv(I,v,E.generation));let k=qs(()=>v===null?null:hh(v),[v]),F=qs(()=>Rh(k,S,g,R),[k,S,g,R]),D=F.items,C=Wu(S.length,Dp()),x=v===null?C:D.length,[w,M]=qr(0),[L]=qr(()=>({preSearchTopReportId:null})),P=qs(()=>({request:I.scrollRequest,slot:L}),[I.scrollRequest,L]),V=kh({apiBasePath:s,answered:v===null?null:E.answered,shownRevision:I.revision,onSessionExpired:i}),z=Un(0),j=Ue(Dv),[W]=qr(()=>Ph(Li(D))),me=Un(null),Le=Un(D),ue=Un(I.revision);Uh(()=>{if(ue.current===I.revision)return;ue.current=I.revision;let ve=Le.current,Oe=W.get(),Te=Oe;I.change==="enter"?(me.current={selected:Oe,items:ve},Te=cd(ve,D,Oe,!0)):I.change==="start"||I.change==="update"?Te=cd(ve,D,Oe,I.change==="start"):I.change==="restore"&&me.current!==null&&(Te=Sh(me.current,D,Oe)),(I.change==="restore"||I.change==="release")&&(me.current=null),Te!==Oe&&W.set(Te)},[I,D,W]),Uh(()=>{Le.current=D},[D]);let le=Un(!1);yd(()=>{let ve=Li(D);!le.current&&ve!==null&&(le.current=!0,W.get()===null&&W.set(ve))},[D,W]);let ge=async()=>{await h()},Ze=async()=>{await f()},lt=async()=>{let Oe=b.get("businessDate")||uc();E.committed!==null&&(O(It=>({...It,restoreOnRelease:!1})),M(It=>It+1),E.release());let Te=await p(Oe);W.set(Te)};yd(()=>{localStorage.getItem("daily-report-auto-read")==="true"&&r(!0)},[]);let Y=ve=>{r(ve),localStorage.setItem("daily-report-auto-read",String(ve))},Ne=qs(()=>[{value:"list",label:n.tabList,content:te(Mv,{selectionStore:W,dailyReportItems:D,rowSetSize:x,autoMarkRead:t,userId:e,scrollOffsetRef:z})},{value:"tree",label:n.tabTree,content:te("div",{className:Iv,children:n.treeComingSoon})},{value:"detailList",label:n.tabDetailList,content:te(kv,{selectionStore:W,dailyReportItems:D,rowSetSize:x,userId:e,scrollRestoreRef:j})}],[D,x,t,e,n,W,j]);return Ct(Uv,{children:[o({title:n.title,annotation:Ct("div",{className:"flex flex-wrap items-center gap-2 leading-1",children:[te(_o,{}),te(Nv,{totalCount:C,hitCount:v===null?null:x}),te("span",{children:n.debounce(nn)})]})}),te("div",{className:Yo,children:Ct("div",{className:qo,children:[v!==null&&te(Bv,{answer:v,hasAnswerOnlyItems:F.hasAnswerOnlyItems}),te(ga.Provider,{value:v===null?"date":"ids",children:te(ht.Provider,{value:V,children:te(Oi.Provider,{value:P,children:te(Pv,{tabItems:Ne,searchRow:l===null?null:te(fh,{labels:n,debounceMs:l.debounceMs,search:E,shownCount:v===null?null:x,onCommit:E.commit,onCombineChange:E.setCombine,onRelease:E.release,clearSignal:w,filters:l.renderFilterSelect===null?null:{renderFilterSelect:l.renderFilterSelect,locale:d,facets:T}}),actions:Ct("div",{className:"ml-auto flex flex-wrap items-center gap-2 px-1",children:[Ct(rr,{size:"sm",onClick:lt,className:"flex h-6 items-center gap-1 rounded-lg bg-amber-700 px-2 font-medium text-white text-xs shadow-xs hover:bg-amber-800 dark:bg-amber-700 dark:hover:bg-amber-800",title:n.createReportTitle,children:[te(Rv,{className:"h-3 w-3"}),te("span",{children:n.createReport})]}),a&&Ct("div",{className:"hidden h-6 items-center gap-1 rounded-lg border border-amber-300/70 border-solid bg-amber-50/60 px-[3px] text-slate-600 sm:flex dark:border-amber-700/50 dark:bg-amber-950/40 dark:text-slate-300",title:n.devControls,"data-testid":"dev-controls-toolbox",children:[te("span",{className:"select-none font-bold font-mono text-amber-800 text-xs uppercase dark:text-amber-200",children:"dev"}),te(Ys,{"aria-label":n.devSseToggle,title:n.devSseToggle,checked:y,onCheckedChange:u}),Ct("div",{className:vv,"data-testid":"dev-icon-buttons",children:[te(rr,{variant:"ghost",size:"icon",onClick:ge,className:wv,title:n.devReload,"data-testid":"dev-reload-btn",children:te(Sv,{className:"size-3"})}),te(rr,{variant:"ghost",size:"icon",onClick:Ze,className:_v,title:n.devClearCache,"data-testid":"dev-clear-cache-btn",children:te(bv,{className:"size-3"})})]})]}),te(Ov,{checked:t,onCheckedChange:Y})]})})})})})]})})]})};import{Fragment as zh,jsx as Ie,jsxs as Xs}from"react/jsx-runtime";var zv=A(dt,cr),$v=A("flex min-h-0 flex-1 flex-col items-center justify-center gap-4 text-slate-500 dark:text-slate-300",vt,ee),jv=A("font-bold",Vn),Gv=A("font-medium",Vn),Yv=A("rounded bg-slate-100 px-4 py-2 text-slate-700 text-sm hover:bg-slate-200 dark:bg-slate-800 dark:text-slate-300 dark:hover:bg-slate-700",ee),qv=({isFailed:e,handOver:t})=>{let{labels:r,renderHeader:n}=K(),o=$h(null),a=Vv(i=>(o.current=i,t.take()&&Yt(i)&&Mt([i]),()=>{o.current=null,i.contains(xe(i))&&t.request()}),[t]),s=()=>{Mt([o.current]),Ga()};return Xs(zh,{children:[n({title:r.title,annotation:e?Ie("span",{className:jv,children:r.loadErrorBadge}):Xs("div",{className:"flex flex-wrap items-center gap-2 leading-none",children:[Ie(_o,{}),Ie("span",{children:r.totalCountLoading}),Ie("span",{children:r.debounce(nn)})]})}),Ie("div",{className:Yo,children:Ie("div",{className:qo,children:Ie("div",{className:zv,children:Ie("div",{ref:a,tabIndex:-1,...Yp,"data-testid":"daily-report-status-panel","data-phase":e?"failed":"loading",className:A($v,e&&"border-red-200 dark:border-red-900"),children:e?Xs(zh,{children:[Ie("p",{className:Gv,children:r.loadError}),Ie("button",{type:"button","data-testid":"daily-report-load-error-retry",onClick:s,className:Yv,children:r.reload})]}):Ie("p",{children:r.loadingIds})})})})})]})},Xv=()=>{let{labels:e}=K(),t=Ep();return Ie(Os,{announcement:$l(t,e),testId:"daily-report-stream-announcer"})},Qv=({user:e,userId:t})=>{let{apiBasePath:r,onSessionExpired:n}=K(),o=gn(),[a]=Kv(yy),s=$h(n);Wv(()=>{s.current=n}),Kh(()=>{uo({apiBasePath:r,userKey:t??null})},[r,t]),Kh(()=>{o.phase==="auth-required"&&s.current()},[o.phase]);let i=o.hasItems||o.phase==="complete";return Xs(nl,{children:[Ie(Xv,{}),Ie(zl.Provider,{value:!1,children:Ie(Hl.Provider,{value:a,children:Ie(il,{user:e,userId:t,children:i?Ie(hd,{userId:t}):Ie(qv,{isFailed:o.phase==="failed",handOver:a})},t??"anonymous")})})]})},Zv=({config:e,...t})=>Ie(pi,{config:e,children:Ie(Qv,{...t})});var Jv=new Set(Xu.filter(e=>e!=="clearCache")),ew=({actionResult:e,actionStatus:t,currentUrl:r,defaultShouldRevalidate:n,formAction:o,formData:a,formEncType:s,formMethod:i,json:l,nextUrl:d,text:c})=>{if(!n)return!1;if(!(r.pathname===d.pathname&&r.search===d.search&&r.hash===d.hash))return n;if(a){let h=a.get(at.intent);if(typeof h=="string"&&Jv.has(h))return!1}return e!==void 0||t!==void 0||o!==void 0||a!==void 0||s!==void 0||i!==void 0||l!==void 0||c!==void 0?n:!1},tw=e=>{let t=async r=>{$i();let n=await r.serverLoader(),o=n.userId;return zi({apiBasePath:e?.apiBasePath,userKey:typeof o=="string"?o:null}),n};return t.hydrate=!0,t};export{jc as DAILY_REPORT_LABEL_CATALOGS,ii as DAILY_REPORT_LABEL_KEYS,Vo as DAILY_REPORT_LATTICE_BLOCK_QUANTUM_CLASS_NAME,fb as DAILY_REPORT_LAYOUT_LATTICE_PX,id as DAILY_REPORT_SEARCH_FILTER_FACETS,il as DailyReportActionProvider,Wn as DailyReportAttachmentIndicator,pi as DailyReportConfigProvider,Vl as DailyReportDetailList,nl as DailyReportErrorProvider,_o as DailyReportIdsStreamStatus,od as DailyReportList,Zv as DailyReportPage,hd as DailyReportResolvedContent,zi as bootstrapDailyReportIdsStreamSession,tw as createDailyReportClientLoader,ew as dailyReportShouldRevalidate,Jn as defaultDailyReportClientConfig,uo as ensureDailyReportIdsStreamSession,$i as primeDailyReportIdsStreamSession,yp as readDailyReportIdsStreamRows,ci as resolveDailyReportLabels,Gt as resolveSourceTypeConfig,Ya as resyncDailyReportIdsStream,Kg as useDailyReportActionContext,Cl as useDailyReportComments,K as useDailyReportConfig,Nr as useDailyReportDetail,sg as useDailyReportIdsStream,gi as useDailyReportPrefetch,Zi as useDailyReportSseConnection};
1
+ import Mb from"lucide-react/dist/esm/icons/paperclip.js";var _b="data-daily-report-row-surface",Rt={[_b]:"",role:"gridcell"},lc="data-daily-report-active",rn="data-daily-report-scrolling",Gt=8,Lb=4,dc=Gt-Lb;var Yo="[--aqdr-lattice-block:4px] [@media(resolution:1.125dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:1.375dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:1.625dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:1.875dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:2.125dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:2.375dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:2.625dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:2.875dppx)]:[--aqdr-lattice-block:8px]",fr=`${Yo} h-[calc-size(auto,round(up,size,var(--aqdr-lattice-block)))]`,yr="p-[8px]",cc="pr-[8px]",qo="contain-size contain-layout contain-style",uc="contain-strict",kt="pointer-events-none absolute size-px whitespace-nowrap opacity-0 select-none contain-layout",te="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-blue-600 dark:focus-visible:outline-blue-400",Yt="border-slate-500 placeholder:text-slate-500 dark:border-slate-500 dark:placeholder:text-slate-400",pc="-mx-[4px] px-[4px] pb-[4px] scroll-p-[4px]",Ai="scrollbar-thin [scrollbar-gutter:stable]",xi=`-m-[4px] overflow-hidden p-[4px] ${Ai}`,mc="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white",Xo="rounded-[calc(var(--radius-2xl)+8px)]",Zo="outline-none [:where([data-daily-report-keyboard-focus])_:where(:focus-visible)_&]:[&[data-daily-report-active]>:where([data-daily-report-row-surface])]:outline-2 [:where([data-daily-report-keyboard-focus])_:where(:focus-visible)_&]:[&[data-daily-report-active]>:where([data-daily-report-row-surface])]:outline-offset-4 [:where([data-daily-report-keyboard-focus])_:where(:focus-visible)_&]:[&[data-daily-report-active]>:where([data-daily-report-row-surface])]:outline-blue-600 dark:[:where([data-daily-report-keyboard-focus])_:where(:focus-visible)_&]:[&[data-daily-report-active]>:where([data-daily-report-row-surface])]:outline-blue-400 [&[aria-selected=true]>:where([data-daily-report-row-surface])]:ring-2 [&[aria-selected=true]>:where([data-daily-report-row-surface])]:ring-blue-500 [&[aria-selected=true]>:where([data-daily-report-row-surface])]:shadow-transparent forced-colors:[&[aria-selected=true]]:outline-2 forced-colors:[&[aria-selected=true]]:outline-solid forced-colors:[&[aria-selected=true]]:-outline-offset-8 forced-colors:[&[aria-selected=true]]:outline-[Highlight]",fc="[:where([data-daily-report-keyboard-focus])_&]:has-[>[data-daily-report-button]:focus-visible]:outline-2 [:where([data-daily-report-keyboard-focus])_&]:has-[>[data-daily-report-button]:focus-visible]:outline-offset-4 [:where([data-daily-report-keyboard-focus])_&]:has-[>[data-daily-report-button]:focus-visible]:outline-blue-600 dark:[:where([data-daily-report-keyboard-focus])_&]:has-[>[data-daily-report-button]:focus-visible]:outline-blue-400",Pt="rounded-2xl border border-solid border-slate-200 bg-white p-[15px] shadow-sm dark:border-slate-700 dark:bg-slate-900/70",Qo=16,nn="rounded-xl border border-dashed border-slate-300 bg-slate-50 p-[11px] text-slate-600 text-sm dark:border-slate-600 dark:bg-slate-900/40 dark:text-slate-300",yc=12,Jo="rounded-xl bg-slate-50 p-3 text-slate-700 text-sm leading-6 dark:bg-slate-800/60 dark:text-slate-200";var Rc="min-h-24",hc="flex h-6 items-center",ea="[--aqdr-hover-lift:2px] [@media(resolution:1.125dppx)]:[--aqdr-hover-lift:calc(2px/1.125)] [@media(resolution:1.25dppx)]:[--aqdr-hover-lift:calc(2px/1.25)] [@media(resolution:1.375dppx)]:[--aqdr-hover-lift:calc(2px/1.375)] [@media(resolution:1.625dppx)]:[--aqdr-hover-lift:calc(3px/1.625)] [@media(resolution:1.75dppx)]:[--aqdr-hover-lift:calc(3px/1.75)] [@media(resolution:1.875dppx)]:[--aqdr-hover-lift:calc(3px/1.875)] [@media(resolution:2.125dppx)]:[--aqdr-hover-lift:calc(4px/2.125)] [@media(resolution:2.25dppx)]:[--aqdr-hover-lift:calc(4px/2.25)] [@media(resolution:2.375dppx)]:[--aqdr-hover-lift:calc(4px/2.375)] [@media(resolution:2.625dppx)]:[--aqdr-hover-lift:calc(5px/2.625)] [@media(resolution:2.75dppx)]:[--aqdr-hover-lift:calc(5px/2.75)] [@media(resolution:2.875dppx)]:[--aqdr-hover-lift:calc(5px/2.875)] motion-safe:transition-[translate] motion-safe:duration-200 hover:border-blue-300 hover:shadow-lg motion-safe:hover:translate-y-[calc(-1*var(--aqdr-hover-lift))] [[data-daily-report-scrolling]_&]:transition-none [[data-daily-report-scrolling]_&]:hover:translate-none [[data-daily-report-scrolling]_&]:hover:shadow-sm",Ge=`flex size-6 shrink-0 items-center justify-center rounded-full hover:bg-slate-200 dark:hover:bg-slate-700 ${te}`,bc="-mx-1",Sc="flex items-center gap-1",Ye="inline-flex h-6 items-center rounded-full px-3",gc="inline-flex h-6 items-center rounded-full border border-solid px-[11px]",Ec="inline-flex h-6 shrink-0 items-center rounded px-2 font-semibold text-xs tracking-wide",mr="size-4",He={starOff:`${mr} text-slate-500 dark:text-slate-400 forced-colors:text-[CanvasText]`,starOn:`${mr} fill-yellow-400 text-yellow-700 dark:text-yellow-400 forced-colors:fill-[Highlight] forced-colors:text-[Highlight]`,read:`${mr} text-blue-600 dark:text-blue-400`,delete:`${mr} text-slate-500 hover:text-red-600 dark:text-slate-400 dark:hover:text-red-400`,deletePending:`${mr} text-red-600 dark:text-red-400`,edit:`${mr} text-slate-500 dark:text-slate-400`},Dc="h-6 w-10 border-4 border-solid",wc="size-4 data-[state=checked]:translate-x-4",Tc="data-[state=unchecked]:bg-slate-500 data-[state=checked]:bg-blue-600 dark:data-[state=unchecked]:bg-slate-400 dark:data-[state=checked]:bg-blue-400 forced-colors:border-[ButtonText] forced-colors:data-[state=checked]:bg-[Highlight]",Ac="bg-white dark:bg-slate-950 forced-colors:bg-[ButtonText]";var xc="rounded-xl bg-slate-100 p-1 dark:bg-slate-800",vc="rounded-xl border border-solid p-[3px]",Ic="relative inline-flex h-6 items-center justify-center whitespace-nowrap rounded-lg px-2 font-medium text-slate-600 text-xs dark:text-slate-300 data-[state=active]:bg-white data-[state=active]:text-slate-900 dark:data-[state=active]:bg-slate-950 dark:data-[state=active]:text-slate-100 after:pointer-events-none after:absolute after:right-[var(--radius-lg)] after:bottom-0 after:left-[var(--radius-lg)] after:h-[2px] after:rounded-full after:forced-color-adjust-none data-[state=active]:after:bg-blue-600 dark:data-[state=active]:after:bg-blue-400 forced-colors:data-[state=active]:after:bg-[Highlight] disabled:pointer-events-none disabled:opacity-50",Nb="supports-[margin-left:round(down,1px,1px)]:ml-[max(0px,round(down,calc((100%-72rem)/2),var(--aqdr-lattice-block)))]",Ob="bg-slate-50 dark:bg-slate-950",ht="flex min-h-0 flex-1 flex-col",ta=`${ht} ${Ob}`,ra=`${ht} mx-auto w-full max-w-6xl ${Yo} px-[var(--aqdr-lattice-block)] pt-[var(--aqdr-lattice-block)] ${Nb}`,Cc=`relative z-[1] flex shrink-0 flex-col ${fr}`,_c="flex grow flex-col justify-between",Lc="grid min-w-0 grid-cols-[max-content_minmax(0,1fr)_max-content] grid-rows-[minmax(2rem,auto)_auto] items-end",Nc="grid min-w-0 grid-cols-1 gap-2 sm:grid-cols-[minmax(0,2fr)_minmax(0,1fr)_minmax(0,3fr)]",Oc="m-0 min-w-0 border-0 p-0",Mc="mb-1 p-0 text-slate-700 text-xs leading-4 dark:text-slate-200",kc="m-0 border-0 p-0 [font:inherit] bg-yellow-200 text-slate-900 underline decoration-1 underline-offset-2 data-[daily-report-search-mark=reading]:decoration-dotted dark:bg-yellow-800 dark:text-yellow-50 forced-colors:forced-color-adjust-none forced-colors:bg-[Mark] forced-colors:text-[MarkText]",jn="text-red-700 dark:text-red-400",Pc="bg-white dark:bg-slate-900",na=`min-h-0 flex-1 overflow-clip contain-size ${Yo}`,oa="flex h-full flex-col contain-size contain-layout contain-style",Fc="relative inline-block whitespace-nowrap tabular-nums",aa="invisible grid",Lr="col-start-1 row-start-1",Hc="absolute inset-0 contain-size contain-layout contain-style",sa="[&_.aqvs-no-items-text]:py-4 [&_.aqvs-no-items-text]:text-slate-500 dark:[&_.aqvs-no-items-text]:text-slate-400",Bc="border-slate-200/80 bg-slate-100/60 dark:border-slate-800 dark:bg-slate-900/60 dark:text-slate-200",Vc="ml-[8px]",Uc={list:"mr-[8px] [@media(max-width:639px)]:mr-[16px] @max-[460px]/views:mr-[16px]",tree:"mr-[8px]",detailList:"mr-[16px]"},Nr="font-semibold text-slate-500 text-xs uppercase tracking-wide dark:text-slate-400",qt=`m-0 ${Nr}`,Xt="text-balance wrap-anywhere [word-break:auto-phrase]",Wc="[--aqdr-scroll-bar-thumb:var(--color-slate-500)] [--aqdr-scroll-bar-track:var(--color-slate-100)] dark:[--aqdr-scroll-bar-track:var(--color-slate-900)]",ia=`${Wc} [&_.aqvs-scrollbar]:bg-(--aqdr-scroll-bar-track) [&_.aqvs-scrollbar-track]:bg-(--aqdr-scroll-bar-track) [&_.aqvs-scrollbar-thumb]:bg-(--aqdr-scroll-bar-thumb) [&_.aqvs-scrollbar-thumb[data-thumb-state=hover]]:bg-slate-600 [&_.aqvs-scrollbar-thumb[data-thumb-state=dragging]]:bg-slate-700 [&_.aqvs-scrollbar-thumb[data-thumb-state=disabled]]:bg-(--aqdr-scroll-bar-thumb) [&_.aqvs-scrollbar-arrow-button]:bg-(--aqdr-scroll-bar-track) [&_.aqvs-scrollbar-arrow-button]:text-slate-600 [&_.aqvs-scrollbar-arrow-button:enabled:hover]:bg-slate-200 dark:[&_.aqvs-scrollbar-thumb[data-thumb-state=hover]]:bg-slate-400 dark:[&_.aqvs-scrollbar-thumb[data-thumb-state=dragging]]:bg-slate-300 dark:[&_.aqvs-scrollbar-arrow-button]:text-slate-400 dark:[&_.aqvs-scrollbar-arrow-button:enabled:hover]:bg-slate-800 forced-colors:[&_.aqvs-scrollbar-thumb]:bg-[CanvasText] forced-colors:[&_.aqvs-scrollbar-thumb[data-thumb-state=hover]]:bg-[Highlight] forced-colors:[&_.aqvs-scrollbar-thumb[data-thumb-state=dragging]]:bg-[Highlight] forced-colors:[&_.aqvs-scrollbar-thumb[data-thumb-state=disabled]]:bg-[GrayText] forced-colors:[&_.aqvs-scrollbar-track]:outline-1 forced-colors:[&_.aqvs-scrollbar-track]:outline-solid forced-colors:[&_.aqvs-scrollbar-track]:-outline-offset-1 forced-colors:[&_.aqvs-scrollbar-track]:outline-[CanvasText]`,la="[--aqvs-focus-ring-color:var(--color-blue-600)] dark:[--aqvs-focus-ring-color:var(--color-blue-400)]",Kc=`${Wc} [scrollbar-color:var(--aqdr-scroll-bar-thumb)_var(--aqdr-scroll-bar-track)]`;import{jsx as zc,jsxs as Pb}from"react/jsx-runtime";var kb=2,Gn=({id:e,count:t,label:r})=>t<=0?null:Pb("span",{id:e,className:"inline-flex h-6 shrink-0 items-center gap-1 text-slate-500 dark:text-slate-400",title:`${r}: ${t}`,role:"img","aria-label":`${r}: ${t}`,"data-testid":"daily-report-attachment-indicator","data-attachment-count":t,children:[zc(Mb,{className:mr,"aria-hidden":"true"}),t>=kb&&zc("span",{className:"font-semibold text-xs leading-4",children:t})]});import{useCallback as je,useEffect as Qr,useLayoutEffect as iv,useMemo as Nd,useRef as mt,useState as ko}from"react";var Or=Object.freeze({text:"",runs:Object.freeze([])}),bt=e=>e.length===0?Or:{text:e,runs:[{displayStart:0,displayEnd:e.length,sourceStart:0,sourceEnd:e.length}]},$c=(e,t,r)=>t>=r?Or:{text:e.slice(t,r),runs:[{displayStart:0,displayEnd:r-t,sourceStart:t,sourceEnd:r}]},vi=(e,t,r,n)=>{let o=t-e;return o!==n-r||o===1?[{displayStart:e,displayEnd:t,sourceStart:r,sourceEnd:n}]:Array.from({length:o},(a,s)=>({displayStart:e+s,displayEnd:e+s+1,sourceStart:r,sourceEnd:n}))},Ii=e=>e.displayEnd-e.displayStart===e.sourceEnd-e.sourceStart,Yn=(e,t,r)=>{if(t>=r)return Or;if(t===0&&r===e.text.length)return e;let n=[];for(let o of e.runs){let a=Math.max(o.displayStart,t),s=Math.min(o.displayEnd,r);if(!(a>=s))if(Ii(o)){let i=o.sourceStart+(a-o.displayStart);n.push({displayStart:a-t,displayEnd:s-t,sourceStart:i,sourceEnd:i+(s-a)})}else n.push(...vi(a-t,s-t,o.sourceStart,o.sourceEnd))}return{text:e.text.slice(t,r),runs:n}},on=e=>{if(e.length===1)return e[0];let t="",r=[];for(let n of e){let o=t.length;for(let a of n.runs)r.push({...a,displayStart:a.displayStart+o,displayEnd:a.displayEnd+o});t+=n.text}return t.length===0?Or:{text:t,runs:r}},Ci=e=>{let t=e.text.trimEnd().length,r=Math.min(t,e.text.length-e.text.trimStart().length);return Yn(e,r,t)},Rr=e=>typeof e=="string"?Ci(bt(e)):Or,da=(e,t,r)=>{if(r.includes("$"))throw new Error(`[daily-report] replaceDisplayText: the replacement must be literal text without "$"; got ${JSON.stringify(r)}`);let n=t.global?[...e.text.matchAll(t)]:[t.exec(e.text)].filter(d=>d!==null);if(n.length===0)return e;let o="",a=[],s=0,i=(d,c)=>{if(d>=c)return;let u=o.length-d;for(;s<e.runs.length&&e.runs[s].displayEnd<=d;)s+=1;for(let p=s;p<e.runs.length&&e.runs[p].displayStart<c;p++){let f=e.runs[p],m=Math.max(f.displayStart,d),y=Math.min(f.displayEnd,c);if(!(m>=y))if(Ii(f)){let g=f.sourceStart+(m-f.displayStart);a.push({displayStart:m+u,displayEnd:y+u,sourceStart:g,sourceEnd:g+(y-m)})}else a.push(...vi(m+u,y+u,f.sourceStart,f.sourceEnd))}o+=e.text.slice(d,c)},l=0;for(let d of n)i(l,d.index),o+=r,l=d.index+d[0].length;return i(l,e.text.length),o.length===0?Or:{text:o,runs:a}},Fb=e=>{let t=[],r=0,n="",o=0;for(let a of e){let s=o+a.length;if(o===r)n=a.normalize("NFC");else{let i=e.slice(r,s).normalize("NFC"),l=i.slice(n.length);i.startsWith(n)&&(l===a||l===a.normalize("NFC"))?(t.push({start:r,end:o,shown:n}),r=o,n=l):n=i}o=s}return t.push({start:r,end:o,shown:n}),t},Hb=e=>{let t=[],r=0;for(let a of e)t.push(r),r+=a.length;t.push(e.length);let n=[],o=0;for(;o<t.length-1;){let a=t[o],s=e.slice(a).normalize("NFC"),i=o+1;for(;i<t.length-1;){let d=e.slice(a,t[i]).normalize("NFC");if(s.startsWith(d)&&d+e.slice(t[i]).normalize("NFC")===s)break;i+=1}let l=t[i];n.push({start:a,end:l,shown:e.slice(a,l).normalize("NFC")}),o=i}return n},jc=e=>{let t=e.normalize("NFC");if(t===e)return bt(e);let r=Fb(e),n=r.map(s=>s.shown).join("")===t?r:Hb(e),o=[],a=0;for(let{start:s,end:i,shown:l}of n){let d=a+l.length;l===e.slice(s,i)?o.push({displayStart:a,displayEnd:d,sourceStart:s,sourceEnd:i}):o.push(...vi(a,d,s,i)),a=d}return{text:t,runs:o}},Gc=(e,t)=>{let r=[],n=(a,s,i)=>{let l=r.length-3;l>=0&&r[l+1]===a&&r[l+2]===i?r[l+1]=s:r.push(a,s,i)},o=t.length/3;for(let a of e.runs){let s=0,i=o;for(;s<i;){let d=s+i>>>1;t[d*3+1]<=a.sourceStart?s=d+1:i=d}if(Ii(a)){for(let d=s;d<o&&t[d*3]<a.sourceEnd;d++){let c=Math.max(t[d*3],a.sourceStart),u=Math.min(t[d*3+1],a.sourceEnd);n(a.displayStart+(c-a.sourceStart),a.displayStart+(u-a.sourceStart),t[d*3+2])}continue}let l=Number.POSITIVE_INFINITY;for(let d=s;d<o&&t[d*3]<a.sourceEnd;d++)l=Math.min(l,t[d*3+2]);l!==Number.POSITIVE_INFINITY&&n(a.displayStart,a.displayEnd,l)}return r},Yc=String.raw`<br\s*\/?\s*>`,qc=String.raw`<\/p>`,Xc="<[^>]+>",Bb=new RegExp(String.raw`(${Yc}|${qc}|\r?\n)|${Xc}`,"gi"),Zc=new RegExp(Yc,"gi"),Vb=new RegExp(qc,"gi"),Ub=new RegExp(Xc,"g"),Qc=(e,t)=>{if(!e)return[];let r=[],n=[],o=0,a=()=>{let s=on(n);n=[];let i=Ci({text:s.text.replace(/ /g," "),runs:s.runs});i.text.length>0&&r.push(i)};for(let s of e.matchAll(Bb))if(n.push($c(e,o,s.index)),o=s.index+s[0].length,s[1]!==void 0&&(a(),r.length===t))return r;return n.push($c(e,o,e.length)),a(),r},Jc=e=>da(da(da(bt(e),Zc,`
2
+ `),Vb,`
3
+ `),Ub,""),eu=e=>e?Ci(da(bt(e),Zc,`
4
+ `)):Or;var Wb=Object.freeze({text:"-",runs:Object.freeze([])}),Be=e=>{let t=Rr(e);return t.text===""?Wb:t},hr=e=>Be(e).text,Ae=e=>{if(!e)return"-";if(typeof e!="string")return e instanceof Date?Ae(e.toISOString()):String(e);let t=e.trim();if(t==="")return"-";let r=t.match(/^(\d{4})[-/](\d{2})[-/](\d{2})$/);if(r)return`${r[1]}-${r[2]}-${r[3]}`;let n=new Date(t);if(Number.isNaN(n.getTime()))return t;let o=n.getFullYear(),a=String(n.getMonth()+1).padStart(2,"0"),s=String(n.getDate()).padStart(2,"0");if(t.includes(":")||t.includes("T")){let l=String(n.getHours()).padStart(2,"0"),d=String(n.getMinutes()).padStart(2,"0"),c=String(n.getSeconds()).padStart(2,"0");return`${o}-${a}-${s}T${l}:${d}:${c}`}return`${o}-${a}-${s}`};import{createContext as ng,useCallback as og,useContext as op,useEffect as ag,useState as sg}from"react";import{z as lo}from"zod/v3";var Kb=/^(\d{4})([-/])(\d{2})\2(\d{2})$/;var ca=e=>e<10?`0${e}`:`${e}`,zb=e=>{if(Number.isNaN(e.getTime()))return null;let t=e.getFullYear(),r=ca(e.getMonth()+1),n=ca(e.getDate());return`${t}-${r}-${n}`},tu=e=>{let t=Kb.exec(e);if(t===null)return null;let[,r,,n,o]=t,a=Number(r),s=Number(n),i=Number(o);if(a<1)return null;let l=new Date(0);return l.setUTCFullYear(a,s-1,i),l.getUTCFullYear()!==a||l.getUTCMonth()!==s-1||l.getUTCDate()!==i?null:`${r}-${n}-${o}`},qn=e=>tu(e)===e,ru=(e=new Date)=>{if(Number.isNaN(e.getTime()))throw new Error("[daily-report] resolveTodayBusinessDateKey needs a valid Date");return`${e.getFullYear()}-${ca(e.getMonth()+1)}-${ca(e.getDate())}`},Xn=e=>e==null?null:e instanceof Date?zb(e):tu(e);import{z as $b}from"zod/v3";var St=e=>Number.isSafeInteger(e)&&e>0,at=$b.number().int().positive().max(Number.MAX_SAFE_INTEGER);import{z as de}from"zod/v3";var ua=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|-[1-9][0-9]{0,15})$/;var Mr=Symbol("daily-report wire mismatch"),Ft=(e,t,r)=>(e.issues.push({...r,path:t===null?[...e.path]:[...e.path,t]}),Mr),su=e=>e===null?"null":Array.isArray(e)?"array":Number.isNaN(e)?"nan":typeof e,kr=(e,t)=>({code:"invalid_type",expected:e,received:su(t)}),jb=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),Gb=e=>{let t=0;for(let r in e)t+=1;return t},nu=(e,t,r)=>{let n={};for(let o=0;o<r;o+=1){let a=t[o];a in e&&(n[a]=e[a])}return n},an=e=>{let t=Object.keys(e),r=Object.values(e);return(n,o)=>{if(!jb(n))return Ft(o,null,kr("object",n));let a=null,s=!1,i=0;for(let l=0;l<t.length;l+=1){let d=t[l],c=n[d];c!==void 0&&(i+=1);let u=r[l](c,o,d);if(u===Mr){s=!0;continue}a===null&&u!==c&&(a=nu(n,t,l)),a!==null&&(u!==void 0||d in n)&&(a[d]=u)}return s?Mr:a!==null?a:Gb(n)===i?n:nu(n,t,t.length)}},Zn=e=>(t,r,n)=>{r.path.push(n);let o=e(t,r);return r.path.pop(),o},Qn=e=>(t,r,n)=>{if(!Array.isArray(t))return Ft(r,n,kr("array",t));r.path.push(n);let o=t,a=!1;for(let s=0;s<t.length;s+=1){let i=t[s],l=e(i,r,s);l===Mr?a=!0:l!==i&&(o===t&&(o=t.slice()),o[s]=l)}return r.path.pop(),a?Mr:o},Se=(e,t,r)=>e==null||typeof e=="string"?e:Ft(t,r,kr("string",e)),ou=(e,t,r)=>e===null||typeof e=="string"?e:Ft(t,r,kr("string",e)),au=(e,t,r)=>typeof e=="string"?e:Ft(t,r,kr("string",e)),Yb=(e,t,r)=>e===null||typeof e=="number"&&!Number.isNaN(e)?e:Ft(t,r,kr("number",e)),Jn=(e,t,r)=>typeof e=="boolean"?e:Ft(t,r,kr("boolean",e)),_i=(e,t,r)=>{if(typeof e=="number"&&St(e))return e;for(let{message:n,path:o,...a}of at.safeParse(e).error.issues)Ft(t,r,a);return Mr},iu={present:!0,absent:!0,unknown:!0},lu=Object.keys(iu),qb=lu.map(e=>`'${e}'`).join(" | "),Xb=(e,t,r)=>typeof e!="string"?Ft(t,r,{code:"invalid_type",expected:qb,received:su(e)}):Object.hasOwn(iu,e)?e:Ft(t,r,{code:"invalid_enum_value",received:e,options:[...lu]}),du=an({name:Se,affiliation:Se}),cu=an({name:Se,text:Se,color:Se}),uu=an({id:_i,name:Se,color:Se}),pu=an({id:_i,userId:Se,userName:Se,content:Se,createdAt:Se,isMine:Jn}),Zb=an({id:au,fileName:au,fileType:ou,fileSize:Yb,createdAt:ou,state:Xb,hasThumbnail:Jn}),Qb=an({reportHubId:_i,date:Se,createdAt:Se,author:Se,userId:Se,sourceType:Se,employeeName:Se,updatedBy:Se,updatedAt:Se,category:Se,creationCategory:Se,visitTimeFrom:Se,visitTimeTo:Se,customerName:Se,interviewers:Qn(Zn(du)),subject:Se,content:Se,externalComments:Qn(Zn(cu)),isRead:Jn,isStarred:Jn,isDraft:Jn,labels:Qn(Zn(uu)),postedComments:Qn(Zn(pu)),attachments:Qn(Zn(Zb))}),eo=(e,t)=>{let r={path:[],issues:[]},n=e(t,r);return n===Mr?{ok:!1,issues:r.issues}:{ok:!0,value:n}},mu=e=>eo(Qb,e),fu=e=>eo(du,e),yu=e=>eo(cu,e),Ru=e=>eo(uu,e),hu=e=>eo(pu,e);var bu=["auth-required","forbidden","resync-required"],Li=15e3,Su="lastEventId",Jb=/^\d{1,15}-\d{1,15}$/,pa=e=>Jb.test(e),to=e=>de.unknown().transform((t,r)=>{let n=e(t);if(n.ok)return n.value;for(let o of n.issues)r.addIssue({...o,fatal:!0});return de.NEVER}),ML=to(fu),kL=to(yu),PL=to(Ru),Ni=to(hu),br=to(mu),ro=de.string().regex(ua),gu=de.object({type:de.literal("connected")}),Eu=de.object({type:de.literal("status-update"),reportHubId:at,statusType:de.enum(["star","read"]),value:de.boolean(),clientTempId:ro}),Oi=de.string(),Du=de.object({type:de.literal("comment-add"),reportHubId:at,comment:Ni,clientTempId:ro,sourceType:Oi}),wu=de.object({type:de.literal("comment-delete"),reportHubId:at,commentId:at,clientTempId:ro,sourceType:Oi}),ma={recipientRawUserId:at.optional()},eS=Eu.extend(ma),tS=Du.extend(ma),rS=wu.extend(ma),sn={reportHubId:at,report:br,clientTempId:ro},Mi={...ma,actorRawUserId:at},ki={viewerIsActor:de.boolean()},nS=de.object({type:de.literal("report-create"),...sn,...ki}),oS=de.object({type:de.literal("report-update"),...sn,...ki}),aS=de.object({type:de.literal("report-publish"),...sn,...ki}),sS=de.object({type:de.literal("report-create"),...sn,...Mi}),iS=de.object({type:de.literal("report-update"),...sn,...Mi}),lS=de.object({type:de.literal("report-publish"),...sn,...Mi}),Tu=de.object({type:de.literal("report-delete"),reportHubId:at,clientTempId:ro,sourceType:Oi}),Au=de.discriminatedUnion("type",[gu,Eu,Du,wu,nS,oS,aS,Tu]),FL=de.discriminatedUnion("type",[gu,eS,tS,rS,sS,iS,lS,Tu]);var fa="ids-columns",Pi=e=>{if(typeof e!="object"||e===null)return"unknown";let{kind:t}=e;return t==="chunk"?"chunk":t==="error"?"error":"unknown"},dS=e=>typeof e=="number"&&St(e),cS=e=>{if(typeof e!="object"||e===null)return!1;let{businessDate:t,reportHubId:r}=e;return(t===null||typeof t=="string")&&typeof r=="number"},uS=4,pS=e=>{let t=uS;for(;2**t<e*2;)t+=1;let r=new Float64Array(2**t),n=r.length-1,o=32-t;return a=>{let s=Math.imul(a|0,2654435761)>>>o;for(;;){let i=r[s];if(i===0)return r[s]=a,!0;if(i===a)return!1;s=s+1&n}}},mS=/^[0-9a-f]{1,16}$/,fS=e=>St(e.reportHubId)&&(e.businessDate===null||qn(e.businessDate)),yS=e=>typeof e=="string"&&mS.test(e),RS=Object.freeze({kind:"absent"}),hS=Object.freeze({kind:"value",value:null}),bS=e=>e===void 0?RS:e===null?hS:typeof e=="string"&&pa(e)?{kind:"value",value:e}:{kind:"malformed",received:e},xu=e=>{if(Pi(e)!=="chunk")return null;let{ids:t,dates:r,counts:n,sourceTypes:o,sources:a,isLast:s,nextCursor:i,total:l,snapshot:d,provisional:c,restarted:u,streamAnchor:p}=e;if(typeof s!="boolean"||!(i===null||cS(i))||!(Array.isArray(t)&&Array.isArray(r)&&Array.isArray(n)&&Array.isArray(o)&&Array.isArray(a))||r.length!==n.length||a.length!==t.length)return null;for(let R of o)if(!(R===null||typeof R=="string"))return null;let f=pS(t.length),m=0,y=null,g=0;for(let R=0;R<r.length;R++){let D=r[R],b=n[R];if(!(D===null||typeof D=="string"&&qn(D))||R>0&&D===r[R-1]||typeof b!="number"||!Number.isSafeInteger(b)||b<1)return null;let h=m+b;if(h>t.length)return null;for(;m<h;m++){let S=t[m],w=a[m];if(!(dS(S)&&f(S))||typeof w!="number"||!Number.isSafeInteger(w)||w<0||w>=o.length||m>0&&!SS(y,g,D,S))return null;y=D,g=S}}return m!==t.length?null:{rows:e,isLast:s,resumeCursor:i!==null&&fS(i)?i:null,total:typeof l=="number"&&Number.isSafeInteger(l)&&l>=0?l:null,snapshot:yS(d)?d:null,provisional:c===!0,restarted:u===!0,streamAnchor:bS(p)}},vu=(e,t)=>{let{ids:r,dates:n,counts:o,sourceTypes:a,sources:s}=e,i=0;for(let l=0;l<n.length;l++){let d=n[l];for(let c=i+o[l];i<c;i++){let u=a[s[i]];t(r[i],d,u===null?void 0:u)}}};var Iu=(e,t,r,n)=>e!==r?e===null?1:r===null||e>r?-1:1:n-t,SS=(e,t,r,n)=>Iu(e,t,r,n)<0,Cu=(e,t)=>Iu(e.businessDate,e.reportHubId,t.businessDate,t.reportHubId);var Ve=Object.freeze({businessDate:"business-date",idsStream:fa,report:"report",search:"search",reports:"reports",searchMarks:"search-marks",searchFacets:"search-facets",action:"action"}),Le=Object.freeze({businessDate:"businessDate",reportHubId:"reportHubId",searchQuery:"q",searchCombine:"combine",searchAuthor:"author",searchSourceType:"sourceType",searchCustomer:"customer",reportIds:"ids",forceRefresh:"forceRefresh",cursorReportHubId:"cursor_report_hub_id",cursorBusinessDate:"cursor_business_date",cursorSnapshot:"cursor_snapshot"});var _u=(e,t,r=console)=>{let n=o=>typeof o=="string"?[`${t} ${o}`]:[t,o];return{debug:(o,...a)=>{e<=0&&r.debug(...n(o),...a)},info:(o,...a)=>{e<=1&&r.info(...n(o),...a)},warn:(o,...a)=>{e<=2&&r.warn(...n(o),...a)},error:(o,...a)=>{e<=3&&r.error(...n(o),...a)}}},$L=Object.freeze(["API","Action","Attachment","ExternalSource","Isolation","Reads","Refresh","Search","SSE","SseReader","Server","Service","Streams","Visibility","ActionProvider","DetailLoader","IdsStream","SseConnection"]),Lu=e=>`[DailyReport${e}]`,gt=(e,t,r)=>e===void 0?_u(t,Lu(r)):_u(0,Lu(r),e);var Zt=Object.freeze({maxQueryLength:500,maxSets:16,maxWordsPerSet:16,maxWords:32,maxWordLength:100,maxDetailIds:100}),gS=2,no=2,ln=Object.freeze({word:0,reading:1}),oo=e=>e===ln.word||e===ln.reading;var Qt=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},ES=2*(1+gS),DS=e=>{if(!Array.isArray(e)||e.length===0||e.length>ES)return null;let t=[],r=new Set;for(let n of e){if(!Qt(n))return null;let{text:o,tier:a}=n;if(typeof o!="string"||o.length===0||o.length>Zt.maxWordLength||r.has(o)||!oo(a)||(t.length===0?a!==ln.word:a<t[t.length-1].tier))return null;r.add(o),t.push({text:o,tier:a})}return t},wS=(e,t)=>{if(!Array.isArray(e))return null;if(!t)return e.length===0?[]:null;if(e.length===0||e.length>Zt.maxSets)return null;let r=[],n=0;for(let o of e){if(!Array.isArray(o)||o.length===0||o.length>Zt.maxWordsPerSet||(n+=o.length,n>Zt.maxWords))return null;let a=[];for(let s of o){let i=DS(s);if(i===null)return null;a.push(i)}r.push(a)}return r},Nu=(e,t)=>{if(!Qt(e))return null;let{ids:r,businessDates:n,sourceTypes:o}=e;if(!(Array.isArray(r)&&Array.isArray(n)&&Array.isArray(o))||n.length!==r.length||o.length!==r.length)return null;let a=wS(e.words,t);if(a===null)return null;let s=[];for(let i=0;i<r.length;i++){let l=r[i],d=n[i],c=o[i];if(typeof l!="number"||!St(l)||d!==null&&(typeof d!="string"||!qn(d))||typeof c!="string"||c.length===0)return null;s.push({reportHubId:l,businessDate:d,sourceType:c})}return{items:s,words:a}};var ya=e=>e.issues.map(t=>`${t.path.length===0?"(root)":t.path.join(".")}: ${t.code}`).join("; ");var TS=e=>typeof e=="string"?JSON.stringify(e):typeof e=="number"||typeof e=="boolean"||e===null||e===void 0?String(e):Array.isArray(e)?"array":typeof e,ke=(e,t,r)=>new RangeError(`[daily-report] ${e} must be ${t}; got ${TS(r)}`),Ou=(e,t)=>new TypeError(`[daily-report] ${e} must be ${t}`),ao=(e,t,r)=>ke(e,`one of ${r.map(n=>JSON.stringify(n)).join(", ")}`,t),tt=(e,t,r,n)=>{if(typeof t=="number"&&Number.isSafeInteger(t)&&t>=r&&(n===void 0||t<=n))return t;throw ke(e,n===void 0?`an integer >= ${r}`:`an integer from ${r} to ${n}`,t)};var Ra=({hasListener:e,batchSize:t,inFlightBound:r,send:n})=>{tt("createIdBatchScheduler: batchSize",t,1),tt("createIdBatchScheduler: inFlightBound",r,1);let o=new Set,a=new Map,s=!1,i=()=>{let c=[],u=[...o];for(let p=u.length-1;p>=0&&c.length<t;p--){let f=u[p];o.delete(f),e(f)&&c.push(f)}return c.reverse()},l=c=>{let u=new AbortController;a.set(u,c);let p=()=>{a.delete(u),d()},f=m=>{p(),u.signal.aborted&&m===u.signal.reason||globalThis.reportError(m)};n(c,u.signal).then(p,f)},d=()=>{for(s=!1;a.size<r;){let c=i();if(c.length===0)return;l(c)}};return{enqueue:c=>{o.delete(c),o.add(c),!s&&(s=!0,queueMicrotask(d))},isWanted:c=>o.has(c),release:c=>{let u=[];o.delete(c)&&u.push(c);for(let[p,f]of a)p.signal.aborted||!f.includes(c)||f.some(e)||(p.abort(),u.push(...f));return u},dispose:()=>{let c=[...o];o.clear();for(let[u,p]of a)u.signal.aborted||(u.abort(),c.push(...p));return c}}};var AS=/^[1-9][0-9]*$/,xS=/^(?:0|[1-9][0-9]*)$/,Mu=e=>{if(e===null||!AS.test(e))return null;let t=Number(e);return St(t)?t:null},dn=e=>{if(e===null||!xS.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null};var vS=2**31-1,ha=(e,t)=>{let r=tt("holdDelayMsOf: maxDelayMs",t,0,vS),n=dn(e.headers.get("Retry-After"));if(n===null)return null;let o=n*1e3;return o<=r?o:null};var ku={request:e=>requestAnimationFrame(e),cancel:e=>cancelAnimationFrame(e)},Pu=({frames:e,handOn:t})=>{let r=new Set,n=0,o=0,a=null,s=!1,i=()=>{a!==null||s||(s=!0,queueMicrotask(l))},l=()=>{s=!1,!(a!==null||r.size===0)&&(o=n,a=e.request(d))},d=()=>{if(a=null,n!==o){o=n,a=e.request(d);return}let c=[...r];r.clear(),t(c)};return{enter:c=>{r.add(c),n+=1,i()},leave:c=>{r.delete(c),n+=1,r.size===0&&a!==null&&(e.cancel(a),a=null)},holds:c=>r.has(c),dispose:()=>{a!==null&&e.cancel(a),a=null;let c=[...r];return r.clear(),c}}};import{resolveVirtualScrollLocale as BS}from"@aiquants/virtualscroll";import{createContext as VS,useMemo as US}from"react";import{useContext as IS}from"react";var Ct=(e,t,r)=>{let n=IS(e);if(n===null)throw new Error(`[daily-report] ${t} must be used within a ${r}`);return n};import{resolveVirtualScrollLabels as CS,resolveVirtualScrollLocale as _S,VIRTUAL_SCROLL_LABEL_CATALOGS as Fu,VIRTUAL_SCROLL_LABEL_KEYS as Bi}from"@aiquants/virtualscroll";var Vu=["id","businessDate","author","visitTime","createdAt","updatedAt","updatedBy","category","creationCategory","customer","subject","content","interviewers","comments","attachments","attachmentMissing","attachmentDownload","attachmentThumbnailUnavailable","tabArticle","tabRelations","reportTabList","relationsEmpty","title","listKeyboardHelp","tabList","tabTree","tabDetailList","viewTabList","treeComingSoon","totalCountLoading","createReport","createReportTitle","devControls","devSseToggle","devReload","devClearCache","autoRead","autoReadTitle","loadErrorBadge","loadError","reload","loadingIds","streamFailed","streamRetry","streamRevalidating","selectPrompt","loading","reportNotFound","contentEmpty","contentEmptyPreview","confirmDelete","starAdd","starRemove","markRead","markUnread","deleteReport","edit","resizeHandle","close","formTitle","formTitlePlaceholder","formContent","formContentPlaceholder","formCancel","formSave","formPublish","commentPlaceholder","commentSend","commentDelete","commentDeleteConfirm","unknownUser","sourceInternal","searchInputLabel","searchPlaceholder","searchCombineAnd","searchCombineOr","searchCombineAndTitle","searchCombineOrTitle","searchClear","searching","searchNoHits","searchSyntaxHelp","searchMatchOutsideView","searchMatchOutsideViewDescription","searchReadingMarkDescription","searchFilterSourceType","searchFiltersLoading","searchFiltersTooMany","searchFilterUnavailable"],Uu=["totalCount","debounce","streamProgressCount","streamProgressRatio","streamRetrying","reportLoadFailed","reportSummaryLoadFailed","interviewerWithAffiliation","operationFailed","noticeRepeated","rowState","rowEditingState","listRowPosition","listRowPositionInUnknownTotal","searchHitCount","searchFailed","searchMatchedKeywords","searchMatchedKeywordsDescription","searchFieldMatched","searchFieldMatchedByReading","searchFiltersToggle","searchFiltersFailed"],Fi=[...Bi,...Vu,...Uu];var Hu=Object.freeze({en:"en-US",ja:"ja-JP"}),LS=Object.freeze({en:new Intl.NumberFormat(Hu.en),ja:new Intl.NumberFormat(Hu.ja)}),ge=(e,t)=>LS[e].format(t),NS=Object.freeze({create:"\u65E5\u5831\u306E\u4F5C\u6210",update:"\u65E5\u5831\u306E\u4FDD\u5B58",publish:"\u65E5\u5831\u306E\u516C\u958B",delete:"\u65E5\u5831\u306E\u524A\u9664",addComment:"\u30B3\u30E1\u30F3\u30C8\u306E\u6295\u7A3F",deleteComment:"\u30B3\u30E1\u30F3\u30C8\u306E\u524A\u9664",toggleStar:"\u30B9\u30BF\u30FC\u306E\u66F4\u65B0",toggleRead:"\u65E2\u8AAD\u72B6\u614B\u306E\u66F4\u65B0"}),OS=Object.freeze({create:"create the report",update:"save the report",publish:"publish the report",delete:"delete the report",addComment:"post the comment",deleteComment:"delete the comment",toggleStar:"update the star",toggleRead:"update the read state"}),MS=Object.freeze({invalid:"\u691C\u7D22\u8A9E\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093",busy:"\u6DF7\u307F\u5408\u3063\u3066\u3044\u307E\u3059\u3002\u5C11\u3057\u5F85\u3063\u3066\u304B\u3089\u3082\u3046\u4E00\u5EA6\u691C\u7D22\u3057\u3066\u304F\u3060\u3055\u3044",unavailable:"\u691C\u7D22\u3092\u4F7F\u3048\u307E\u305B\u3093",failed:"\u691C\u7D22\u306B\u5931\u6557\u3057\u307E\u3057\u305F"}),kS=Object.freeze({invalid:"The search text is not valid",busy:"The server is busy. Please search again in a moment",unavailable:"Search is not available",failed:"The search failed"}),PS=Object.freeze({busy:"\u6DF7\u307F\u5408\u3063\u3066\u3044\u308B\u305F\u3081\u7D5E\u308A\u8FBC\u307F\u306E\u5019\u88DC\u3092\u8AAD\u307F\u8FBC\u3081\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u5C11\u3057\u5F85\u3063\u3066\u304B\u3089\u7D5E\u308A\u8FBC\u307F\u3092\u958B\u304D\u76F4\u3057\u3066\u304F\u3060\u3055\u3044",unavailable:"\u7D5E\u308A\u8FBC\u307F\u306E\u5019\u88DC\u3092\u4F7F\u3048\u307E\u305B\u3093",failed:"\u7D5E\u308A\u8FBC\u307F\u306E\u5019\u88DC\u3092\u8AAD\u307F\u8FBC\u3081\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u7D5E\u308A\u8FBC\u307F\u3092\u9589\u3058\u3066\u958B\u304D\u76F4\u3059\u3068\u8AAD\u307F\u76F4\u3057\u307E\u3059"}),FS=Object.freeze({busy:"The server is busy, so the filter options could not be loaded. Please reopen the filters in a moment",unavailable:"Filter options are not available",failed:"The filter options could not be loaded. Close and reopen the filters to load them again"}),Hi=Object.freeze({en:Object.freeze({id:"ID",businessDate:"Business date",author:"Author",visitTime:"Visit time",createdAt:"Created at",updatedAt:"Updated at",updatedBy:"Updated by",category:"Category",creationCategory:"Creation category",customer:"Customer",subject:"Subject",content:"Content",interviewers:"Attendees",comments:"Comments",attachments:"Attachments",attachmentMissing:"File is missing",attachmentDownload:"Download",attachmentThumbnailUnavailable:"Preview unavailable",tabArticle:"Overview",tabRelations:"Related",reportTabList:"Report sections",relationsEmpty:"No related view configured yet.",title:"Daily Reports",listKeyboardHelp:"Up and Down arrows: previous or next report. Home and End: first or last report. Page Up and Page Down: move by a page. Enter or Space: select. Tab: the report's controls. Escape: back to the report row. Control+Home and Control+End: move to the nearest control before or after the list, when there is one.",tabList:"\u{1F4C4} List",tabTree:"\u{1F333} Tree",tabDetailList:"\u{1F4CB} DetailList",viewTabList:"Views",treeComingSoon:"The tree view is coming soon",totalCountLoading:"Total: loading...",createReport:"New report",createReportTitle:"Create a daily report",devControls:"Development-only controls",devSseToggle:"Toggle SSE real-time sync",devReload:"Reload data",devClearCache:"Clear the cache and reload",autoRead:"Auto-read",autoReadTitle:"Mark reports as read automatically while viewing them",loadErrorBadge:"Error",loadError:"Failed to load the daily reports.",reload:"Reload",loadingIds:"Loading report IDs...",streamFailed:"Failed to load",streamRetry:"Retry",streamRevalidating:"Refreshing",selectPrompt:"Select a report from the list on the left.",loading:"Loading...",reportNotFound:"Report not found",contentEmpty:"No content has been entered.",contentEmptyPreview:"No content has been entered",confirmDelete:"Are you sure you want to delete this report?",starAdd:"Add star",starRemove:"Remove star",markRead:"Mark as read",markUnread:"Mark as unread",deleteReport:"Delete",edit:"Edit",resizeHandle:"Resize the border between the report list and the detail pane",close:"Close",formTitle:"Title",formTitlePlaceholder:"Enter the report title",formContent:"Content",formContentPlaceholder:"Enter the report content",formCancel:"Cancel",formSave:"Save",formPublish:"Publish",commentPlaceholder:"Add a comment...",commentSend:"Send",commentDelete:"Delete comment",commentDeleteConfirm:"Delete",unknownUser:"Unknown",sourceInternal:"Original",searchInputLabel:"Search reports",searchPlaceholder:"Search",searchCombineAnd:"AND",searchCombineOr:"OR",searchCombineAndTitle:"Show the reports that contain every keyword",searchCombineOrTitle:"Show the reports that contain any keyword",searchClear:"Clear the search",searching:"Searching...",searchNoHits:"No report matches",searchSyntaxHelp:"Separate keywords with spaces. Words in double quotes form one keyword that needs every word. A word in Latin letters also finds its kana reading (denpun finds \u3067\u3093\u3077\u3093); text found through a reading is underlined with dots. Enter searches, Esc clears.",searchMatchOutsideView:"Hidden match",searchMatchOutsideViewDescription:"Matched in fields this view does not show, such as labels or details",searchReadingMarkDescription:"Matched by its romaji reading",searchFilterSourceType:"Source",searchFiltersLoading:"Loading filters...",searchFiltersTooMany:"No more filter values can be selected",searchFilterUnavailable:"This filter cannot be shown",totalCount:e=>`Total: ${ge("en",e)}`,debounce:e=>`Debounce: ${e} ms`,streamProgressCount:e=>`Loading ${ge("en",e)}`,streamProgressRatio:(e,t,r)=>`Loading ${ge("en",e)} / ${ge("en",t)} (${r}%)`,streamRetrying:e=>`Reconnecting... (${ge("en",e)} received)`,reportLoadFailed:e=>`Failed to load report ${ge("en",e)}.`,reportSummaryLoadFailed:e=>`Failed to load the summary of report ${ge("en",e)}.`,interviewerWithAffiliation:(e,t)=>`${e} (${t})`,operationFailed:e=>`Failed to ${OS[e]}. Please try again later.`,noticeRepeated:e=>`(${ge("en",e)} times)`,rowState:({isRead:e,isStarred:t})=>`${e?"Read":"Unread"}${t?", starred":""}`,rowEditingState:({isDraft:e})=>e?"Editing draft":"Editing",listRowPosition:(e,t)=>`${ge("en",e)} of ${ge("en",t)}`,listRowPositionInUnknownTotal:e=>`Item ${ge("en",e)}`,searchHitCount:e=>`${ge("en",e)} ${e===1?"hit":"hits"}`,searchFailed:e=>kS[e],searchMatchedKeywords:(e,t)=>`Match ${e}/${t}`,searchMatchedKeywordsDescription:(e,t)=>`Matches ${e} of ${t} keywords`,searchFieldMatched:e=>`${e} matched`,searchFieldMatchedByReading:e=>`${e} matched by its romaji reading`,searchFiltersToggle:e=>e===0?"Filters":`Filters (${ge("en",e)})`,searchFiltersFailed:e=>FS[e]}),ja:Object.freeze({id:"ID",businessDate:"\u55B6\u696D\u65E5",author:"\u4F5C\u6210\u8005",visitTime:"\u8A2A\u554F\u6642\u9593",createdAt:"\u4F5C\u6210\u65E5\u6642",updatedAt:"\u66F4\u65B0\u65E5\u6642",updatedBy:"\u66F4\u65B0\u8005",category:"\u533A\u5206",creationCategory:"\u4F5C\u6210\u533A\u5206",customer:"\u9867\u5BA2",subject:"\u4EF6\u540D",content:"\u5185\u5BB9",interviewers:"\u9762\u8AC7\u8005",comments:"\u30B3\u30E1\u30F3\u30C8",attachments:"\u6DFB\u4ED8\u30D5\u30A1\u30A4\u30EB",attachmentMissing:"\u5B9F\u4F53\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093",attachmentDownload:"\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9",attachmentThumbnailUnavailable:"\u30D7\u30EC\u30D3\u30E5\u30FC\u3092\u8868\u793A\u3067\u304D\u307E\u305B\u3093",tabArticle:"\u6982\u8981",tabRelations:"\u95A2\u9023",reportTabList:"\u65E5\u5831\u306E\u8868\u793A\u306E\u5207\u308A\u66FF\u3048",relationsEmpty:"\u95A2\u9023\u30D3\u30E5\u30FC\u306F\u307E\u3060\u69CB\u6210\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002",title:"\u65E5\u5831",listKeyboardHelp:"\u2191\u2193 \u3067\u524D\u5F8C\u306E\u65E5\u5831\u3001Home / End \u3067\u5148\u982D\u30FB\u672B\u5C3E\u3001PageUp / PageDown \u3067\u30DA\u30FC\u30B8\u79FB\u52D5\u3001Enter \u307E\u305F\u306F Space \u3067\u9078\u629E\u3001Tab \u3067\u305D\u306E\u65E5\u5831\u306E\u64CD\u4F5C\u90E8\u54C1\u3078\u3001Escape \u3067\u65E5\u5831\u306E\u884C\u3078\u623B\u308A\u307E\u3059\u3002Ctrl+Home / Ctrl+End \u3067\u4E00\u89A7\u306E\u76F4\u524D\u30FB\u76F4\u5F8C\u306E\u64CD\u4F5C\u90E8\u54C1\u304C\u3042\u308C\u3070\u305D\u3053\u3078\u79FB\u308A\u307E\u3059\u3002",tabList:"\u{1F4C4} \u4E00\u89A7",tabTree:"\u{1F333} \u30C4\u30EA\u30FC",tabDetailList:"\u{1F4CB} \u8A73\u7D30\u4E00\u89A7",viewTabList:"\u8868\u793A\u306E\u5207\u308A\u66FF\u3048",treeComingSoon:"\u30C4\u30EA\u30FC\u306F\u73FE\u5728\u6E96\u5099\u4E2D\u3067\u3059",totalCountLoading:"\u7DCF\u4EF6\u6570: \u8AAD\u307F\u8FBC\u307F\u4E2D...",createReport:"\u65E5\u5831\u4F5C\u6210",createReportTitle:"\u65E5\u5831\u3092\u4F5C\u6210",devControls:"\u958B\u767A\u74B0\u5883\u9650\u5B9A\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB",devSseToggle:"SSE \u30EA\u30A2\u30EB\u30BF\u30A4\u30E0\u540C\u671F\u5207\u66FF",devReload:"\u30C7\u30FC\u30BF\u518D\u53D6\u5F97 (\u30EA\u30ED\u30FC\u30C9)",devClearCache:"\u30AD\u30E3\u30C3\u30B7\u30E5\u7834\u68C4 & \u518D\u53D6\u5F97",autoRead:"\u81EA\u52D5\u65E2\u8AAD",autoReadTitle:"\u65E5\u5831\u95B2\u89A7\u6642\u306E\u81EA\u52D5\u65E2\u8AAD\u51E6\u7406\u5207\u66FF",loadErrorBadge:"\u30A8\u30E9\u30FC",loadError:"\u65E5\u5831\u30C7\u30FC\u30BF\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002",reload:"\u518D\u8AAD\u307F\u8FBC\u307F",loadingIds:"\u65E5\u5831 ID \u3092\u8AAD\u307F\u8FBC\u307F\u4E2D\u3067\u3059...",streamFailed:"\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F",streamRetry:"\u518D\u8A66\u884C",streamRevalidating:"\u6700\u65B0\u5316\u4E2D",selectPrompt:"\u5DE6\u5074\u306E\u4E00\u89A7\u304B\u3089\u65E5\u5831\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002",loading:"\u8AAD\u307F\u8FBC\u307F\u4E2D...",reportNotFound:"\u65E5\u5831\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093",contentEmpty:"\u5185\u5BB9\u306F\u767B\u9332\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002",contentEmptyPreview:"\u5185\u5BB9\u306F\u767B\u9332\u3055\u308C\u3066\u3044\u307E\u305B\u3093",confirmDelete:"\u672C\u5F53\u306B\u524A\u9664\u3057\u307E\u3059\u304B\uFF1F",starAdd:"\u30B9\u30BF\u30FC\u3092\u4ED8\u3051\u308B",starRemove:"\u30B9\u30BF\u30FC\u3092\u5916\u3059",markRead:"\u65E2\u8AAD\u306B\u3059\u308B",markUnread:"\u672A\u8AAD\u306B\u3059\u308B",deleteReport:"\u524A\u9664\u3059\u308B",edit:"\u7DE8\u96C6",resizeHandle:"\u65E5\u5831\u4E00\u89A7\u3068\u8A73\u7D30\u30DA\u30A4\u30F3\u306E\u5883\u754C\u306E\u30B5\u30A4\u30BA\u5909\u66F4\u30CF\u30F3\u30C9\u30EB",close:"\u9589\u3058\u308B",formTitle:"\u30BF\u30A4\u30C8\u30EB",formTitlePlaceholder:"\u65E5\u5831\u306E\u30BF\u30A4\u30C8\u30EB\u3092\u5165\u529B",formContent:"\u5185\u5BB9",formContentPlaceholder:"\u65E5\u5831\u306E\u5185\u5BB9\u3092\u5165\u529B",formCancel:"\u30AD\u30E3\u30F3\u30BB\u30EB",formSave:"\u4FDD\u5B58",formPublish:"\u516C\u958B",commentPlaceholder:"\u30B3\u30E1\u30F3\u30C8\u3092\u8FFD\u52A0...",commentSend:"\u9001\u4FE1",commentDelete:"\u524A\u9664",commentDeleteConfirm:"\u524A\u9664\u3059\u308B",unknownUser:"\u4E0D\u660E\u306A\u30E6\u30FC\u30B6\u30FC",sourceInternal:"\u30AA\u30EA\u30B8\u30CA\u30EB",searchInputLabel:"\u65E5\u5831\u3092\u691C\u7D22",searchPlaceholder:"\u691C\u7D22",searchCombineAnd:"AND",searchCombineOr:"OR",searchCombineAndTitle:"\u3059\u3079\u3066\u306E\u30AD\u30FC\u30EF\u30FC\u30C9\u3092\u542B\u3080\u65E5\u5831\u3092\u51FA\u3059",searchCombineOrTitle:"\u3069\u308C\u304B\u306E\u30AD\u30FC\u30EF\u30FC\u30C9\u3092\u542B\u3080\u65E5\u5831\u3092\u51FA\u3059",searchClear:"\u691C\u7D22\u3092\u6D88\u3059",searching:"\u691C\u7D22\u4E2D...",searchNoHits:"\u5F53\u305F\u308B\u65E5\u5831\u306F\u3042\u308A\u307E\u305B\u3093",searchSyntaxHelp:"\u30AD\u30FC\u30EF\u30FC\u30C9\u306F\u7A7A\u767D\u3067\u533A\u5207\u308A\u307E\u3059\u3002\u4E8C\u91CD\u5F15\u7528\u7B26\u3067\u56F2\u3093\u3060\u8A9E\u306F\u3001\u3059\u3079\u3066\u306E\u8A9E\u3092\u542B\u3080 1 \u3064\u306E\u30AD\u30FC\u30EF\u30FC\u30C9\u306B\u306A\u308A\u307E\u3059\u3002\u82F1\u5B57\u306E\u8A9E\u306F\u30ED\u30FC\u30DE\u5B57\u306E\u8AAD\u307F\u3067\u3082\u4EEE\u540D\u3092\u63A2\u3057\u307E\u3059 (denpun \u2192 \u3067\u3093\u3077\u3093)\u3002\u8AAD\u307F\u3067\u5F53\u305F\u3063\u305F\u6240\u306F\u70B9\u7DDA\u306E\u4E0B\u7DDA\u3067\u793A\u3057\u307E\u3059\u3002Enter \u3067\u691C\u7D22\u3001Esc \u3067\u6D88\u53BB\u3057\u307E\u3059\u3002",searchMatchOutsideView:"\u8868\u793A\u5916\u3067\u4E00\u81F4",searchMatchOutsideViewDescription:"\u3053\u306E\u753B\u9762\u306B\u51FA\u3057\u3066\u3044\u306A\u3044\u9805\u76EE (\u30E9\u30D9\u30EB\u30FB\u660E\u7D30\u306A\u3069) \u3067\u4E00\u81F4\u3057\u307E\u3057\u305F",searchReadingMarkDescription:"\u30ED\u30FC\u30DE\u5B57\u306E\u8AAD\u307F\u3067\u4E00\u81F4",searchFilterSourceType:"\u30BD\u30FC\u30B9\u533A\u5206",searchFiltersLoading:"\u7D5E\u308A\u8FBC\u307F\u306E\u5019\u88DC\u3092\u8AAD\u307F\u8FBC\u307F\u4E2D...",searchFiltersTooMany:"\u3053\u308C\u4EE5\u4E0A\u306F\u7D5E\u308A\u8FBC\u307F\u306E\u5024\u3092\u9078\u3079\u307E\u305B\u3093",searchFilterUnavailable:"\u3053\u306E\u7D5E\u308A\u8FBC\u307F\u3092\u8868\u793A\u3067\u304D\u307E\u305B\u3093",totalCount:e=>`\u7DCF\u4EF6\u6570: ${ge("ja",e)} \u4EF6`,debounce:e=>`\u30C7\u30D0\u30A6\u30F3\u30B9: ${e} ms`,streamProgressCount:e=>`\u8AAD\u307F\u8FBC\u307F\u4E2D ${ge("ja",e)} \u4EF6`,streamProgressRatio:(e,t,r)=>`\u8AAD\u307F\u8FBC\u307F\u4E2D ${ge("ja",e)} / ${ge("ja",t)} (${r}%)`,streamRetrying:e=>`\u518D\u63A5\u7D9A\u4E2D... (${ge("ja",e)} \u4EF6\u53D7\u4FE1\u6E08)`,reportLoadFailed:e=>`\u65E5\u5831 ${ge("ja",e)} \u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002`,reportSummaryLoadFailed:e=>`\u65E5\u5831 ${ge("ja",e)} \u306E\u6982\u8981\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002`,interviewerWithAffiliation:(e,t)=>`${e} (${t})`,operationFailed:e=>`${NS[e]}\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002\u6642\u9593\u3092\u304A\u3044\u3066\u518D\u5EA6\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002`,noticeRepeated:e=>`(${ge("ja",e)} \u56DE\u76EE)`,rowState:({isRead:e,isStarred:t})=>`${e?"\u65E2\u8AAD":"\u672A\u8AAD"}${t?"\u3001\u30B9\u30BF\u30FC\u4ED8\u304D":""}`,rowEditingState:({isDraft:e})=>e?"\u4E0B\u66F8\u304D\u3092\u7DE8\u96C6\u4E2D":"\u7DE8\u96C6\u4E2D",listRowPosition:(e,t)=>`\u5168 ${ge("ja",t)} \u4EF6\u4E2D ${ge("ja",e)} \u4EF6\u76EE`,listRowPositionInUnknownTotal:e=>`${ge("ja",e)} \u4EF6\u76EE`,searchHitCount:e=>`${ge("ja",e)} \u4EF6\u30D2\u30C3\u30C8`,searchFailed:e=>MS[e],searchMatchedKeywords:(e,t)=>`\u4E00\u81F4 ${e}/${t}`,searchMatchedKeywordsDescription:(e,t)=>`\u30AD\u30FC\u30EF\u30FC\u30C9 ${t} \u500B\u306E\u3046\u3061 ${e} \u500B\u306B\u4E00\u81F4`,searchFieldMatched:e=>`${e}\u3067\u4E00\u81F4`,searchFieldMatchedByReading:e=>`${e}\u304C\u30ED\u30FC\u30DE\u5B57\u306E\u8AAD\u307F\u3067\u4E00\u81F4`,searchFiltersToggle:e=>e===0?"\u7D5E\u308A\u8FBC\u307F":`\u7D5E\u308A\u8FBC\u307F (${ge("ja",e)})`,searchFiltersFailed:e=>PS[e]})}),Wu=Object.freeze({en:Object.freeze({...Fu.en,...Hi.en}),ja:Object.freeze({...Fu.ja,...Hi.ja})}),HS=e=>{let t={},r=!1;for(let n of Bi){let o=Object.hasOwn(e,n)?e[n]:void 0;o!==void 0&&(t[n]=o,r=!0)}return r?t:void 0},Bu=(e,t,r)=>{e[t]=r},Vi=(e,t)=>{let r=_S(e);if(t===void 0)return Wu[r];if(t===null||typeof t!="object")throw ke("labels","an object",t);let n=Object.getPrototypeOf(t);if(n!==Object.prototype&&n!==null)throw ke("labels","a plain object (prototype Object.prototype or null)",t);for(let s of Object.keys(t))if(!Fi.includes(s))throw ao("labels key",s,Fi);let a={...CS(r,HS(t)),...Hi[r]};for(let s of Vu){let i=Object.hasOwn(t,s)?t[s]:void 0;if(i!==void 0){if(typeof i!="string"||i.trim()==="")throw ke(`labels.${s}`,"a non-blank string",i);Bu(a,s,i)}}for(let s of Uu){let i=Object.hasOwn(t,s)?t[s]:void 0;if(i!==void 0){if(typeof i!="function")throw ke(`labels.${s}`,"a function",i);Bu(a,s,i)}}return Object.freeze(a)},Ku=e=>{let t={};for(let r of Bi)t[r]=e[r];return Object.freeze(t)};import{jsx as Ui,jsxs as QS}from"react/jsx-runtime";var WS=e=>({Internal:{label:e.sourceInternal,badgeClassName:"bg-emerald-100 text-emerald-800 dark:bg-emerald-900/30 dark:text-emerald-400"}}),KS=({title:e,annotation:t})=>QS("header",{className:"flex flex-wrap items-baseline justify-between gap-2 px-2 py-1",children:[Ui("span",{className:"text-nowrap text-slate-700 text-sm dark:text-slate-200",children:e}),t?Ui("span",{className:"text-slate-600 text-xs dark:text-slate-300",children:t}):null]}),so=Object.freeze({apiBasePath:"/daily_report/api",ssePath:"/sse/daily_report/updates",renderHeader:KS,showDevControls:!1,headingLevel:3}),zu=["apiBasePath","ssePath","locale","labels","sourceTypeConfigs","renderHeader","showDevControls","headingLevel","onError","onSessionExpired","search"];var zS=e=>{for(let t of Object.keys(e))if(!zu.includes(t))throw ao("config key",t,zu)},$u=[2,3,4,5],$S=e=>{if(e===void 0)return so.headingLevel;let t=$u.find(r=>r===e);if(t===void 0)throw ke("config.headingLevel",`one of ${$u.join(", ")} (the level of each report's heading)`,e);return t},ju=["debounceMs","renderFilterSelect"],jS=Object.freeze({min:300,max:5e3}),GS=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},YS=e=>{if(e===void 0)return null;if(typeof e!="function")throw ke("config.search.renderFilterSelect","a function (it renders the control of each filter cell)",e);return e},qS=e=>{if(e===void 0)return null;if(!GS(e))throw ke("config.search","a plain object ({} for Enter only, or { debounceMs })",e);for(let o of Object.keys(e))if(!ju.includes(o))throw ao("config.search key",o,ju);let t=e.debounceMs,{min:r,max:n}=jS;return{debounceMs:t===void 0?null:tt("config.search.debounceMs",t,r,n),renderFilterSelect:YS(e.renderFilterSelect)}},XS=e=>{for(let[t,r]of Object.entries(e)){let n=r.name;if(n!==void 0&&(typeof n!="string"||n.trim()===""))throw ke(`config.sourceTypeConfigs.${t}.name`,"a non-blank string (the expansion of the badge label)",n)}return e},ZS=e=>{zS(e);let t=e.onSessionExpired;if(t===void 0)throw Ou("config.onSessionExpired","a function (the host decides the navigation on session expiry)");if(typeof t!="function")throw ke("config.onSessionExpired","a function (the host decides the navigation on session expiry)",t);let r=BS(e.locale),n=Vi(r,e.labels),o=so;return{apiBasePath:e.apiBasePath===void 0?o.apiBasePath:e.apiBasePath,ssePath:e.ssePath===void 0?o.ssePath:e.ssePath,locale:r,labels:n,sourceTypeConfigs:e.sourceTypeConfigs===void 0?WS(n):XS(e.sourceTypeConfigs),renderHeader:e.renderHeader===void 0?o.renderHeader:e.renderHeader,showDevControls:e.showDevControls===void 0?o.showDevControls:e.showDevControls,headingLevel:$S(e.headingLevel),onError:e.onError,onSessionExpired:e.onSessionExpired,search:qS(e.search)}},Gu=VS(null),Wi=({config:e,children:t})=>{let r=US(()=>ZS(e),[e]);return Ui(Gu.Provider,{value:r,children:t})},z=()=>Ct(Gu,"useDailyReportConfig","DailyReportConfigProvider"),Jt=(e,t)=>{if(!(e&&t))return;if(t[e])return t[e];let r=e.toLowerCase(),n=Object.keys(t).find(o=>o.toLowerCase()===r);return n?t[n]:void 0},ba=(e,t)=>t?.allowComment!==void 0?t.allowComment:!e||e.toLowerCase()==="internal";import{tapScrollCircleSampleVisual as eg}from"@aiquants/virtualscroll";var JS=4;var cn=120,Yu=1e3,ga=.8,Ki={maxVelocity:18,deceleration:.0018,startVelocityThreshold:.03},Ea=20,zi=24,un=8,io=zi+un,qu=6,Da={reportHubId:-1,businessDate:null},wa=240,Ta=15,tg=8,Xu=460,Zu=3,Qu=352,rg={enabled:!0,renderVisual:eg,maxSpeedCurve:{exponentialSteepness:3,exponentialScale:8},maxSpeedMultiplier:8,className:"[[data-daily-report-keyboard-focus]_&]:invisible"},Aa={width:tg,tapScrollCircleOptions:rg,enableArrowButtonTabStops:!1},xa=["pen","touch"];var Yi=gt(void 0,1,"DetailLoader"),Ju=(e,t)=>{let r=globalThis[e];return typeof r=="number"&&!Number.isNaN(r)?r:t},$i=null,Ca=()=>($i===null&&($i={ttl:Ju("__DAILY_REPORT_CACHE_TTL__",3e5),reviveMs:Ju("__DAILY_REPORT_CACHE_REVIVE_MS__",6e4)}),$i),ee={reports:new Map,lists:new Map,pendingLists:new Map,pendingReports:new Map,listeners:new Set,lockHolders:new Map,lockHolds:new Map,lastMutations:new Map,recentDeletes:new Map,lastPrune:0,prune(){let e=Date.now();if(e-this.lastPrune<6e4)return;this.lastPrune=e;let t=3600*1e3;for(let[r,n]of this.reports)e-n.expiresAt>t&&this.reports.delete(r);for(let[r,n]of this.lists)e-n.expiresAt>t&&this.lists.delete(r)},clear(){this.reports.clear(),this.lists.clear(),this.pendingLists.clear(),this.pendingReports.clear(),this.lockHolders.clear(),this.lockHolds.clear(),this.lastMutations.clear(),this.recentDeletes.clear(),this.listeners.forEach(e=>{e(-1)})},isLocked(e){if(this.lockHolders.has(e))return!0;let t=this.lockHolds.get(e);return t===void 0?!1:t>performance.now()?!0:(this.lockHolds.delete(e),!1)},isValid:e=>e>Date.now(),notify:e=>{ee.listeners.forEach(t=>{t(e)})},getReport(e,t=!1){let r=this.reports.get(e);return r&&(t||this.isValid(r.expiresAt))?r.data:null},getList(e,t=!1){let r=e&&this.lists.get(e);return r&&(t||this.isValid(r.expiresAt))?r.data:null},set(e,t,r=!0){if(this.reports.set(e.reportHubId,{data:e,expiresAt:t}),r){let n=Xn(e.date),o=n?this.lists.get(n):null;if(o&&n){let s=o.data.some(i=>i.reportHubId===e.reportHubId)?o.data.map(i=>i.reportHubId===e.reportHubId?e:i):[e,...o.data];this.lists.set(n,{...o,data:s})}}this.notify(e.reportHubId)},update(e,t,r=!0){let n=this.reports.get(e);if(n?.data){if(r&&t.updatedAt&&n.data.updatedAt&&new Date(t.updatedAt).getTime()<new Date(n.data.updatedAt).getTime()){Yi.warn(`Stale update skipped id=${e}`);return}this.set({...n.data,...t},Math.max(n.expiresAt,Date.now()+Ca().reviveMs))}},delete(e,t){this.reports.delete(e);let r=Xn(t),n=r&&this.lists.get(r);n&&r&&this.lists.set(r,{...n,data:n.data.filter(o=>o.reportHubId!==e)}),this.notify(e)},merge(e,t){let r=e;if(r.postedComments.some(n=>this.recentDeletes.has(n.id))&&(r={...r,postedComments:r.postedComments.filter(n=>!this.recentDeletes.has(n.id))}),t){let n=new Set(r.postedComments.map(a=>a.id)),o=t.postedComments.filter(a=>!n.has(a.id)&&a.isMine&&Date.now()-new Date(a.createdAt||0).getTime()<1e4);o.length>0&&(r={...r,postedComments:[...r.postedComments,...o].sort((a,s)=>new Date(a.createdAt||0).getTime()-new Date(s.createdAt||0).getTime())})}return r},cacheMany(e,t,r){this.prune();let n=Date.now(),o=n+Ca().ttl;for(let[s,i]of this.recentDeletes)n-i>1e4&&this.recentDeletes.delete(s);let a=e.map(s=>{if(this.isLocked(s.reportHubId))return s;let i=this.lastMutations.get(s.reportHubId);if(i&&r>0&&i>r)return this.reports.get(s.reportHubId)?.data??s;let l=this.reports.get(s.reportHubId)?.data,d=this.merge(s,l);return this.set(d,o,!1),d});return t&&this.lists.set(t,{data:a,expiresAt:o}),a}},ap=(e,t,r=!0)=>ee.set(e,t,r),dt=(e,t)=>ee.getReport(e,t?.ignoreExpiry),Et=(e,t)=>ee.update(e,t),Na=(e,t)=>ee.delete(e,t),uo=()=>{ee.clear(),va.clear(),Rg()},_a=(e,t)=>{let r=ee.lastMutations.get(e);(r===void 0||r<t)&&ee.lastMutations.set(e,t)},qi=e=>{_a(e,Date.now())},sp=e=>{let t=Symbol("mutation-lock"),r=ee.lockHolders.get(e);return r===void 0?ee.lockHolders.set(e,new Set([t])):r.add(t),_a(e,Date.now()),()=>{let n=ee.lockHolders.get(e);n===void 0||!n.delete(t)||(n.size===0&&ee.lockHolders.delete(e),_a(e,Date.now()))}},ip=(e,t)=>{let r=performance.now()+t,n=ee.lockHolds.get(e);(n===void 0||n<r)&&ee.lockHolds.set(e,r),_a(e,Date.now()+t)},lp=e=>ee.recentDeletes.set(e,Date.now()),dp=(e,t)=>{let r=n=>{n===e&&t()};return ee.listeners.add(r),()=>{ee.listeners.delete(r)}},er=(e,t)=>{ee.prune(),ee.set(t,Date.now()+Ca().ttl)},cp=e=>{ee.prune();let t=ee.getReport(e.reportHubId,!0),r=new Map;for(let o of t?.postedComments??[])r.set(o.id,o.isMine??!1);let n=(e.postedComments??[]).map(o=>({...o,isMine:r.get(o.id)??!1}));ee.set({...e,isRead:t?.isRead??!1,isStarred:t?.isStarred??!1,postedComments:n},Date.now()+Ca().ttl)},ig=lo.object({report:br}),lg=lo.object({reports:lo.array(br)}),La=class extends Error{constructor(t,r){super(`[daily-report] ${t} answered HTTP ${r}`),this.name="DailyReportReadHttpError",this.status=r}},up=(e,t)=>new La(e,t),ep=e=>e instanceof La&&(e.status===401||e.status===403),Xi=async(e,t,r)=>{if(!e.ok)throw up(r,e.status);let n=t.safeParse(await e.json());if(!n.success)throw new Error(`[daily-report] ${r} answered a body that does not match its schema (${ya(n.error)})`);return n.data},dg=async(e,t)=>{let r=ee.getReport(t);if(r)return r;let n=ee.pendingReports.get(t);if(n)return n;let o=Date.now(),a=new URLSearchParams({[Le.reportHubId]:String(t)}),s=fetch(`${e}/${Ve.report}?${a}`,{cache:"no-cache"}).then(i=>Xi(i,ig,Ve.report)).then(({report:i})=>ee.cacheMany([i],null,o)[0]).finally(()=>ee.pendingReports.delete(t));return ee.pendingReports.set(t,s),s},va=new Map,cg=1e4,ug=(e,t)=>{let r=va.get(t),n=Date.now();if(r&&n-r.at<cg)return r.inFlight;let o=Zi(e,t,{forceRefresh:!0}),a={at:n,inFlight:o};return va.set(t,a),o.finally(()=>{va.get(t)===a&&(a.inFlight=null)}).catch(()=>{}),o},Zi=async(e,t,r={})=>{let n=r.forceRefresh?null:ee.getList(t);if(n)return n;let o=ee.pendingLists.get(t);if(o)return o;let a=Date.now(),s=new URLSearchParams({[Le.businessDate]:t}),i=fetch(`${e}/${Ve.businessDate}?${s}`,{cache:"no-cache"}).then(l=>Xi(l,lg,Ve.businessDate)).then(({reports:l})=>ee.cacheMany(l,t,a)).finally(()=>ee.pendingLists.delete(t));return ee.pendingLists.set(t,i),i},pg=async(e,t,r)=>{let n=ee.getList(r)!==null,a=(await Zi(e,r)).find(i=>i.reportHubId===t);if(a!==void 0)return a;if(!n)return null;let s=await ug(e,r);return s===null?null:s.find(i=>i.reportHubId===t)??null},mg=lo.object({reports:lo.array(br)}),fg=5e3,Gi=new Map,yg=e=>{let t=new Map,r=new Map,n=new Map,o=new Set,a=(p,f)=>{let m=[];for(let y of p)r.get(y)===f&&(r.delete(y),m.push(y));return m},s=(p,f)=>{let m=t.get(p);if(m!==void 0){t.delete(p),o.delete(p);for(let y of m)f(y)}},i=(p,f)=>{let y=setTimeout(()=>{for(let g of p)n.delete(g),t.has(g)&&(o.add(g),c.enqueue(g))},f);for(let g of p)n.set(g,y)},l=(p,f,m)=>{let y=[];for(let g of p)f!==null&&t.has(g)&&!o.has(g)?y.push(g):s(g,R=>R.reject(m));f!==null&&y.length>0&&i(y,f)},d=async(p,f)=>{for(let g of p)r.set(g,f);let m=Date.now(),y=new URLSearchParams({[Le.reportIds]:p.join(",")});try{let g=await fetch(`${e}/${Ve.reports}?${y}`,{cache:"no-cache",signal:f});if(g.status===429){l(a(p,f),ha(g,fg),up(Ve.reports,g.status));return}let{reports:R}=await Xi(g,mg,Ve.reports);if(f.aborted)return;let D=new Map(ee.cacheMany(R,null,m).map(b=>[b.reportHubId,b]));for(let b of a(p,f))s(b,h=>h.resolve(D.get(b)??null))}catch(g){for(let R of a(p,f))s(R,D=>D.reject(g))}},c=Ra({hasListener:p=>t.has(p),batchSize:Zt.maxDetailIds,inFlightBound:no,send:d}),u=Pu({frames:ku,handOn:p=>{for(let f of p)c.enqueue(f)}});return{readers:t,pending:r,holds:n,retried:o,gate:u,scheduler:c}},Rg=()=>{for(let{readers:e,pending:t,holds:r,retried:n,gate:o,scheduler:a}of Gi.values()){o.dispose(),a.dispose(),t.clear();for(let s of r.values())clearTimeout(s);r.clear(),n.clear();for(let s of e.keys())a.enqueue(s)}},tp=new DOMException("The detail reader left its batched read","AbortError"),hg=(e,t,r)=>new Promise((n,o)=>{let a=Gi.get(e);a===void 0&&(a=yg(e),Gi.set(e,a));let{readers:s,pending:i,holds:l,retried:d,gate:c,scheduler:u}=a,p={resolve:n,reject:o},f=s.get(t);f===void 0?s.set(t,new Set([p])):f.add(p),c.holds(t)||u.isWanted(t)||i.has(t)||l.has(t)||c.enter(t);let m=()=>{let y=s.get(t);if(!(y===void 0||!y.delete(p))&&(o(r.reason),!(y.size>0))){s.delete(t),d.delete(t),c.leave(t);for(let g of u.release(t))i.delete(g)}};r.addEventListener("abort",m,{once:!0})}),pn=ng("date"),bg=Object.freeze({report:null,error:null,isLoading:!1,isRefetching:!1}),Sg=Object.freeze({report:null,error:new Error("Invalid ID"),isLoading:!1,isRefetching:!1}),gg=Object.freeze({report:null,error:null,isLoading:!0,isRefetching:!1}),rp=new WeakMap,Eg=e=>{let t=rp.get(e);if(t!==void 0)return t;let r=Object.freeze({report:e,error:null,isLoading:!1,isRefetching:!1});return rp.set(e,r),r},Ia=(e,t,r)=>{let n=e.reports.get(t);if(n!==void 0)return{report:n.data,isStale:!e.isValid(n.expiresAt)};if(r===null)return{report:null,isStale:!1};let o=e.lists.get(r),a=o?.data.find(s=>s.reportHubId===t);return o===void 0||a===void 0?{report:null,isStale:!1}:{report:a,isStale:!e.isValid(o.expiresAt)}},np=(e,t,r)=>{if(t<0)return bg;if(t===0)return Sg;let{report:n}=Ia(e,t,r);return n===null?gg:Eg(n)},Dg=(e,t)=>Object.keys(t).some(n=>e[n]!==t[n])?Object.freeze({...e,...t}):e,ji=()=>{},wg=({apiBasePath:e,detailSource:t,cache:r})=>{let n=new Map,o=(u,p)=>{let f=Dg(u.record,p);if(f!==u.record){u.record=f;for(let m of u.listeners)m()}},a=u=>{let p=n.get(u);if(p===void 0)return;let{report:f,isStale:m}=Ia(r,u,p.dateKey);o(p,f!==null&&!m&&p.record.isRefetching?{report:f,error:null,isLoading:!1,isRefetching:!1}:{report:f})},s=(u,p,f)=>{let{record:m}=p;if(m.report!==null&&m.error===null&&!ep(f)){Yi.warn(`Refetch failed, the shown report stays id=${u}`,f),o(p,{isLoading:!1,isRefetching:!1});return}o(p,{error:f,isLoading:!1,isRefetching:!1})},i=(u,p)=>{let{dateKey:f}=p,{report:m,isStale:y}=Ia(r,u,f);if(m!==null&&!y)return o(p,{report:m,error:null,isLoading:!1,isRefetching:!1}),ji;o(p,{isLoading:m===null,isRefetching:!0});let g=null,R=!1,D=async()=>{let h;try{t==="ids"?(g=new AbortController,h=await hg(e,u,g.signal)):f!==null?h=await pg(e,u,f):h=await dg(e,u)}catch(S){R||s(u,p,S instanceof Error?S:new Error("Load failed"));return}R||o(p,{report:h,error:null,isLoading:!1,isRefetching:!1})};if(m===null)return D(),()=>{R=!0,g?.abort(tp)};let b=setTimeout(D,cn);return()=>{R=!0,clearTimeout(b),g?.abort(tp)}},l=(u,p)=>{let{record:f}=p;return f.isRefetching?!1:f.error!==null?!ep(f.error):Ia(r,u,p.dateKey).isStale},d=(u,p)=>{let f=Xn(p),m={record:np(r,u,f),dateKey:f,listeners:new Set,stop:ji};return n.size===0&&r.listeners.add(a),n.set(u,m),m.stop=i(u,m),m},c=(u,p)=>{n.delete(u),n.size===0&&r.listeners.delete(a),p.stop()};return{read:u=>{let p=n.get(u);return p===void 0?np(r,u,null):p.record},subscribe:(u,p,f)=>{if(u<=0)return ji;let m=n.get(u),y=m===void 0?d(u,p):m;return!y.listeners.has(f)&&l(u,y)&&(y.stop(),y.stop=i(u,y)),y.listeners.add(f),()=>{!y.listeners.delete(f)||y.listeners.size>0||c(u,y)}}}},Tg={date:new Map,ids:new Map},Ag=(e,t)=>{let r=Tg[t],n=r.get(e);if(n!==void 0)return n;let o=wg({apiBasePath:e,detailSource:t,cache:ee});return r.set(e,o),o},Pr=()=>{let{apiBasePath:e}=z(),t=op(pn);return Ag(e,t)},Qi=(e,t)=>{let r=Pr(),[n,o]=sg(()=>({reportHubId:e,resource:r.read(e)})),a=n;return n.reportHubId!==e&&(a={reportHubId:e,resource:r.read(e)},o(a)),ag(()=>{let s=()=>{let l=r.read(e);o(d=>d.resource===l?d:{reportHubId:e,resource:l})},i=r.subscribe(e,t,s);return s(),i},[r,e,t]),a.resource},Ji=()=>{let{apiBasePath:e}=z(),t=op(pn);return og(r=>{if(t==="ids")return;let n=Xn(r);n&&!ee.getList(n)&&Zi(e,n).catch(o=>Yi.warn("Prefetch error",n,o))},[e,t])};import{VIRTUAL_SCROLL_LABEL_KEYS as xg}from"@aiquants/virtualscroll";import{useRef as vg}from"react";var Oa=()=>{let{locale:e,labels:t}=z(),r=Ku(t),n=vg(null),o=n.current;return o!==null&&xg.every(a=>o[a]===r[a])?{locale:e,labels:o}:(n.current=r,{locale:e,labels:r})};import{useState as Ig}from"react";var Ue=e=>{let[t]=Ig(()=>({current:e()}));return t};import{useLayoutEffect as Hg,useState as Bg}from"react";import{flushSync as Vg}from"react-dom";var fp=Object.freeze({visibilityProperty:!0}),pp=new Set(["auto","scroll"]),mp=new Set(["","true","plaintext-only"]),yp=e=>{for(let t=e;t!==null;){if(t.hasAttribute("inert"))return!0;let r=t.parentElement;if(r!==null){t=r;continue}let n=t.getRootNode();t=bp(n)?n.host:null}return!1},Cg=e=>{let t=e.closest("map")?.getAttribute("name");if(t==null||t==="")return!1;let r=e.getRootNode();for(let n of r.querySelectorAll("img[usemap]"))if(n.getAttribute("usemap")===`#${t}`&&n.checkVisibility(fp))return!0;return!1},Rp=e=>e.localName==="area"?Cg(e):e.checkVisibility(fp),_g=e=>{let t=e.getAttribute("contenteditable");if(t===null||!mp.has(t.toLowerCase()))return!1;for(let r=e.parentElement;r!==null;r=r.parentElement){let n=r.getAttribute("contenteditable");if(n===null)continue;let o=n.toLowerCase();if(mp.has(o))return!1;if(o==="false")return!0}return!0},Lg=e=>{if(e.checked||e.name==="")return!0;let t=e.getRootNode(),r=null;for(let n of t.querySelectorAll("input"))if(!(n.type!=="radio"||n.name!==e.name||n.form!==e.form)){if(n.checked)return!1;r===null&&!n.disabled&&Rp(n)&&(r=n)}return r===e},Ng=e=>{let t=e.ownerDocument;if(e===t.documentElement||e===t.body)return!1;let r=e.scrollWidth>e.clientWidth,n=e.scrollHeight>e.clientHeight;if(!(r||n))return!1;let o=t.defaultView;if(o===null)return!1;let a=o.getComputedStyle(e);return r&&pp.has(a.overflowX)||n&&pp.has(a.overflowY)},Og=e=>{switch(e.localName){case"a":case"area":return e.hasAttribute("href");case"button":case"select":case"textarea":case"iframe":case"embed":return!0;case"input":return e.type!=="hidden";case"summary":return e.parentElement?.localName==="details"&&e.parentElement.querySelector(":scope > summary")===e;case"audio":case"video":return e.hasAttribute("controls");case"object":{let t=e.contentWindow;return typeof t=="object"&&t!==null}default:return _g(e)}},Mg=/^[\t\n\f\r ]*[+-]?\d/,kg=e=>{let t=e.getAttribute("tabindex");return t!==null&&Mg.test(t)?e.tabIndex:null},hp=(e,t)=>{for(let r of tl(e))if(t(r)||hp(r,t))return!0;return!1},Ma=(e,t)=>{let r=t.get(e);if(r!==void 0)return r;let n=Pg(e,t);return t.set(e,n),n},Pg=(e,t)=>{if(!mo(e))return"none";let r=kg(e),n=r===null&&Og(e),o=r===null&&!n&&Ng(e);return!(r!==null||n||o)||e.matches(":disabled")||yp(e)||!Rp(e)?"none":r!==null?r>=0?"sequential":"programmatic":n?e.localName==="input"&&e.type==="radio"?Lg(e)?"sequential":"programmatic":"sequential":hp(e,a=>Ma(a,t)==="sequential")?"none":"sequential"},el=(e,t)=>{for(let r of tl(e))t(r),el(r,t)},tl=e=>{if(xe(e)){let t=e;if(t.shadowRoot!==null)return t.shadowRoot.children;if(t.localName==="slot"){let r=t.assignedElements();if(r.length>0)return r}}return e.children};var po=(e,t)=>{let r=[],n=[],o=[],a=new Map;if(e===t)return el(e,l=>{Ma(l,a)==="sequential"&&n.push(l)}),{before:r,within:n,after:o};let s=!1,i=(l,d)=>{for(let c of tl(l)){let u=c===t;!u&&Ma(c,a)==="sequential"&&(d?n.push(c):s?o.push(c):r.push(c)),i(c,d||u),u&&(s=!0)}};return i(e,!1),{before:r,within:n,after:o}},ka=e=>{let t=[],r=new Map;return el(e,n=>{Ma(n,r)==="sequential"&&t.push(n)}),t},xe=e=>e!==null&&"nodeType"in e&&e.nodeType===e.ELEMENT_NODE,mo=e=>"focus"in e&&"blur"in e,Fg=e=>e.nodeType===e.DOCUMENT_NODE,bp=e=>e.nodeType===e.DOCUMENT_FRAGMENT_NODE&&"host"in e,Ke=e=>{let t=e.getRootNode();if(bp(t)){let r=t.activeElement;return r===null?Ke(t.host):r}return Fg(t)?t.activeElement:null},Fr=e=>{let t=Ke(e);return t===null||t===t.ownerDocument.body||yp(t)},Pe=e=>{let t=e.ownerDocument.defaultView;if(t===null)throw new Error("[daily-report] the element belongs to a document without a window");return t};var Pa=e=>{let[t,r]=Bg(null);return Hg(()=>{let n=e.current;if(n===null)throw new Error("[daily-report] useViewBoxHeight needs viewRef attached to the view's root");let o=null,a=l=>{if(l===o)return;let d=o===null;o=l,d?Vg(()=>r(l)):r(l)},s=l=>{for(let d of l)a(d.borderBoxSize[0].blockSize)},i=new(Pe(n)).ResizeObserver(s);return i.observe(n,{box:"border-box"}),()=>i.disconnect()},[e]),t};var Sp=255,rl=[null],gp=new Map,Fa=[void 0],Ep=new Map,Bt=e=>{if(e===null)return 0;let t=gp.get(e);if(t!==void 0)return t;let r=rl.length;return rl.push(e),gp.set(e,r),r},tr=e=>{let t=rl[e];if(t===void 0)throw new Error(`[daily-report] No business date has the code ${e}`);return t},fo=e=>{if(e===void 0)return 0;let t=Ep.get(e);if(t!==void 0)return t;let r=Fa.length;if(r>Sp)throw new Error(`[daily-report] The rows hold more than ${Sp} distinct source types; ${e} has no code`);return Fa.push(e),Ep.set(e,r),r},Hr=e=>{if(!(Number.isInteger(e)&&e>=0&&e<Fa.length))throw new Error(`[daily-report] No source type has the code ${e}`);return Fa[e]},Ht=class{constructor(t,r,n,o){this.length=t,this.ids=r,this.businessDateCodes=n,this.sourceTypeCodes=o}idAt(t){return this.ids[this.rowIndexOf(t)]}itemAt(t){let r=this.rowIndexOf(t);return{reportHubId:this.ids[r],businessDate:tr(this.businessDateCodes[r]),sourceType:Hr(this.sourceTypeCodes[r])}}items(){let t=[];for(let r=0;r<this.length;r++)t.push(this.itemAt(r));return t}businessDateAt(t){return tr(this.businessDateCodes[this.rowIndexOf(t)])}sourceTypeAt(t){return Hr(this.sourceTypeCodes[this.rowIndexOf(t)])}rowIndexOf(t){if(Number.isInteger(t)&&t>=0&&t<this.length)return t;throw new Error(`[daily-report] A batch of ${this.length} rows has no row ${t}`)}},Dp=e=>{if(e instanceof Ht)return e;throw new Error("[daily-report] A row batch the package did not build has no code columns")},Dt=new Ht(0,new Float64Array(0),new Uint32Array(0),new Uint8Array(0)),Ug=Float64Array.BYTES_PER_ELEMENT+Uint32Array.BYTES_PER_ELEMENT+Uint8Array.BYTES_PER_ELEMENT,mn=e=>{let t=new ArrayBuffer(e*Ug),r=e*Float64Array.BYTES_PER_ELEMENT;return{ids:new Float64Array(t,0,e),businessDateCodes:new Uint32Array(t,r,e),sourceTypeCodes:new Uint8Array(t,r+e*Uint32Array.BYTES_PER_ELEMENT,e)}},rr=(e,t,r)=>{if(r===0)return Dt;let n=t+r;return new Ht(r,e.ids.subarray(t,n),e.businessDateCodes.subarray(t,n),e.sourceTypeCodes.subarray(t,n))},Wg=16,_t=class{constructor(t=Wg){this.count=0;this.columns=null;this.initialCapacity=tt("ReportRowBatchWriter: capacity",t,0)}push(t,r,n){let o=this.columns===null||this.count===this.columns.ids.length?this.grow():this.columns;o.ids[this.count]=t,o.businessDateCodes[this.count]=r,o.sourceTypeCodes[this.count]=n,this.count+=1}pushItem(t){this.push(t.reportHubId,Bt(t.businessDate),fo(t.sourceType))}pushFrom(t,r){this.push(t.ids[r],t.businessDateCodes[r],t.sourceTypeCodes[r])}build(){let t=this.columns;return t===null?Dt:rr(t,0,this.count)}grow(){let t=this.columns,r=mn(Math.max(this.count+1,t===null?this.initialCapacity:t.ids.length*2));return t!==null&&(r.ids.set(t.ids),r.businessDateCodes.set(t.businessDateCodes),r.sourceTypeCodes.set(t.sourceTypeCodes)),this.columns=r,r}},nl=e=>{let t=new _t(e.length);for(let r of e)t.pushItem(r);return t.build()};var Lt=10,yo=1<<Lt,yn=yo-1,Kg=yo,zg=Kg/2,fn=new Map,sl=new Map,il=(e,t,r)=>e.businessDate===t&&e.sourceType===r,$g=(e,t,r)=>{let n=fn.get(e),o=n===void 0?sl.get(e):n;return o!==void 0&&il(o,t,r)?o:void 0},Ha=(e,t,r)=>{let n=tr(t),o=Hr(r),a=fn.get(e);if(a!==void 0&&il(a,n,o))return a;let s=a===void 0?sl.get(e):void 0,i=s!==void 0&&il(s,n,o)?s:{reportHubId:e,businessDate:n,sourceType:o};return fn.set(e,i),fn.size>=zg&&(sl=fn,fn=new Map),i},wp=(e,t,r)=>{let n=tr(t),o=Hr(r),a=$g(e,n,o);return a===void 0?{reportHubId:e,businessDate:n,sourceType:o}:a};var ct=class{constructor(t,r){this.chunks=t,this.length=r}at(t){let r=Number.isNaN(t)?0:Math.trunc(t),n=r<0?r+this.length:r;if(!(n<0||n>=this.length))return Tp(this,n)}[Symbol.iterator](){let{chunks:t}=this,r=0,n=0;return{next:()=>{for(;r<t.length;){let o=t[r];if(n<o.length){let a=wp(o.ids[n],o.businessDateCodes[n],o.sourceTypeCodes[n]);return n+=1,{done:!1,value:a}}r+=1,n=0}return{done:!0,value:void 0}}}}},Ba=new ct([],0),Tp=(e,t)=>{let r=e.chunks[t>>>Lt],n=t&yn;return Ha(r.ids[n],r.businessDateCodes[n],r.sourceTypeCodes[n])},Br=(e,t)=>e.chunks[t>>>Lt].ids[t&yn],Rn=(e,t)=>e.chunks[t>>>Lt].businessDateCodes[t&yn],dl=(e,t)=>e.chunks[t>>>Lt].sourceTypeCodes[t&yn],ol={businessDate:null,reportHubId:0},al={businessDate:null,reportHubId:0},hn=(e,t,r,n)=>(ol.reportHubId=e,ol.businessDate=tr(t),al.reportHubId=r,al.businessDate=tr(n),Cu(ol,al)),Ap=e=>{if(e.length===0)return Ba;let t=[];return xp(t,e,e.length),new ct(t,e.length)},xp=(e,t,r)=>{for(let n=0;n<r;n+=yo)e.push(rr(t,n,Math.min(yo,r-n)))},Vr={removals:[],replacements:[],additions:Dt,insertions:[]},jg=e=>{let t=mn(e.length);return t.ids.set(e.ids.subarray(0,e.length)),t.businessDateCodes.set(e.businessDateCodes.subarray(0,e.length)),t.sourceTypeCodes.set(e.sourceTypeCodes.subarray(0,e.length)),rr(t,0,e.length)},Gg=(e,t)=>{let r=e.chunks.slice(),n=new Map;for(let{index:o,id:a,businessDateCode:s,sourceTypeCode:i}of t){let l=o>>>Lt,d=n.get(l);d===void 0&&(d=jg(e.chunks[l]),n.set(l,d),r[l]=d);let c=o&yn;d.ids[c]=a,d.businessDateCodes[c]=s,d.sourceTypeCodes[c]=i}return new ct(r,e.length)},bn=(e,t)=>{let{additions:r,insertions:n}=t;if(t.removals.length===0&&t.replacements.length===0&&r.length===0)return e;let o=[...t.removals].sort((w,x)=>w-x),a=[...t.replacements].sort((w,x)=>w.index-x.index);if(o.length===0&&r.length===0)return Gg(e,a);let s=e.length,i=s-o.length+r.length;if(i===0)return Ba;let d=Math.min(o.length===0?s:o[0],a.length===0?s:a[0].index,r.length===0?s:n[0])>>>Lt,c=e.chunks.slice(0,d),u=d<<Lt,p=i-u,f=p===0?Dt:mn(p),m=0,y=()=>{if(m===p)throw new Error(`[daily-report] Edits of a list of ${s} rows write more than the ${i} rows they leave`);return p-m},g=(w,x,E)=>{y(),f.ids[m]=w,f.businessDateCodes[m]=x,f.sourceTypeCodes[m]=E,m+=1},R=(w,x)=>{for(let E=w;E<x;){let L=e.chunks[E>>>Lt],N=E&yn,M=Math.min(x-E,yo-N,y());f.ids.set(L.ids.subarray(N,N+M),m),f.businessDateCodes.set(L.businessDateCodes.subarray(N,N+M),m),f.sourceTypeCodes.set(L.sourceTypeCodes.subarray(N,N+M),m),m+=M,E+=M}},D=d<<Lt,b=0,h=0,S=0;for(;;){let w=Math.min(b<o.length?o[b]:s,h<a.length?a[h].index:s,S<r.length?n[S]:s);for(R(D,w),D=w;S<r.length&&n[S]===w;S++)g(r.ids[S],r.businessDateCodes[S],r.sourceTypeCodes[S]);if(w===s)break;if(b<o.length&&o[b]===w)b+=1,D=w+1;else if(h<a.length&&a[h].index===w){let x=a[h];g(x.id,x.businessDateCode,x.sourceTypeCode),h+=1,D=w+1}}return xp(c,f,m),new ct(c,u+m)},Ro=(e,t)=>{let{chunks:r}=e;for(let n=0;n<r.length;n++){let{ids:o,length:a}=r[n];for(let s=0;s<a;s++)if(o[s]===t)return(n<<Lt)+s}return-1},vp=(e,t)=>{let r=Ro(e,t);return r===-1?void 0:Tp(e,r)},ll=(e,t,r)=>{let n=t.get(e);if(n!==void 0)return n;let o=[];for(let a=0;a<e.length;a++){let s=e.ids[a];r(s)&&o.push(wp(s,e.businessDateCodes[a],e.sourceTypeCodes[a]))}return t.set(e,o),o},Ip=(e,t,r)=>{let n=[];if(!(e instanceof ct)){for(let o of e)r(o.reportHubId)&&n.push(o);return n}for(let o of e.chunks){let a=ll(o,t,r);for(let s=0;s<a.length;s++)n.push(a[s])}return n},Cp=(e,t,r,n)=>{let o=Math.min(e.chunks.length,t.chunks.length),a=0;for(;a<o&&e.chunks[a]===t.chunks[a];)a+=1;let s=[];for(let l=a;l<e.chunks.length;l++){let d=ll(e.chunks[l],r,n);for(let c=0;c<d.length;c++)s.push(d[c])}let i=[];for(let l=a;l<t.chunks.length;l++){let d=ll(t.chunks[l],r,n);for(let c=0;c<d.length;c++)i.push(d[c])}return{before:s,after:i}};var _p=(e,t)=>Number.isInteger(t)&&t>=0&&t<e.length,Ee=(e,t)=>_p(e,t)?e.at(t):void 0,Yg=(e,t)=>e instanceof ct?_p(e,t)?Br(e,t):void 0:Ee(e,t)?.reportHubId,qg=16,Lp=(e,t)=>e!==null&&e.reportHubId===t?e.index:null,ve=(e,t,r)=>{let n=r===null?void 0:Ee(e,r);if(r!==null&&n!==void 0){if(n.reportHubId===t)return r;for(let o=1;o<=qg;o++){if(Ee(e,r+o)?.reportHubId===t)return r+o;if(Ee(e,r-o)?.reportHubId===t)return r-o}}return wt(e,t)},wt=(e,t)=>{if(e instanceof ct)return Ro(e,t);let r=0;for(let n of e){if(n.reportHubId===t)return r;r+=1}return-1},cl=e=>{let t=Ee(e,0);return t===void 0?null:t.reportHubId},Np=(e,t)=>{let r=[];for(let n of e){if(r.length>=t)break;r.push(n.reportHubId)}return r},Vt=(e,t)=>{let r=Ee(e,t);if(r===void 0)throw Op(e,t);return r},Va=(e,t)=>{let r=Yg(e,t);if(r===void 0)throw Op(e,t);return r},Op=(e,t)=>new Error(`[daily-report] No report at index ${t} of a list of ${e.length}`);var Ua="data-daily-report-row",Mp=`[${Ua}]`,kp="data-daily-report-button",Wa="data-daily-report-row-focus",Ka={[Wa]:""},Pp="data-daily-report-view",za={[Pp]:""},ul="treegrid",Xg='button, a[href], input, textarea, select, label, [role="button"], [contenteditable]:not([contenteditable="false"])',Zg=/^[1-9]\d*$/,Fp=e=>{if(e===null||!Zg.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null},Hp=e=>e.querySelector(`[${Pp}] [role="${ul}"]`),Bp=e=>e.querySelector(`[${Wa}]`),Ur=(e,t)=>{if(t===null||!xe(e))return null;let r=e.closest(Mp);return r===null||r===t||!t.contains(r)?null:r},ho=e=>Fp(e.getAttribute(Ua)),Sr=e=>Fp(e.getAttribute("aria-posinset")),Vp=e=>{let t=e.closest(Mp),r=t===null?null:Sr(t);return r===null?null:r-1},Up=(e,t)=>{if(e===null)return null;let r=ho(e);if(r===null)return null;let n=Sr(e),o=ve(t,r,n===null?null:n-1);return o===-1?null:{reportHubId:r,index:o}},Wp=(e,t)=>{if(!xe(e))return!1;let r=e.closest(Xg);return r!==null&&r!==t&&t.contains(r)};import{createContext as Kp}from"react";var Wr=Kp(0),gr=-1,zp=(e,t)=>t.phase==="complete"?e:t.totalCount===null?gr:Math.max(e,t.totalCount),Kr=Kp(-1);import{flushSync as $p}from"react-dom";var Qg=()=>({deferObservation:!1,settling:!1,queuedObservations:new Set,queuedMeasurements:new Set,frame:0}),jp=(e,t)=>{e.queuedObservations.add(t),e.settling&&e.queuedMeasurements.add(t)},Gp=e=>{let t=new Set,r=Qg(),n=null,o=()=>{let s=r.queuedMeasurements;for(;s.size>0;){let i=[...s].map(l=>[l,l.getBoundingClientRect().height]);s.clear(),$p(()=>e(i))}},a=()=>{o(),r.settling=!1};return{observe:s=>(t.add(s),n!==null&&(r.deferObservation?jp(r,s):n.observe(s)),()=>{t.delete(s),r.queuedObservations.delete(s),r.queuedMeasurements.delete(s),n!==null&&n.unobserve(s)}),remeasure:s=>{if(n!==null){if(!r.deferObservation){n.observe(s);return}n.unobserve(s),jp(r,s)}},attach:s=>{if(n!==null)throw new Error("[daily-report] the row-height delivery is connected to a view's window already; disconnect it before connecting it again");let i=()=>{r.frame=0,r.deferObservation=!1;for(let c of r.queuedObservations)d.observe(c);r.queuedObservations.clear()},l=c=>{r.deferObservation=!0,r.settling=!0,s.cancelAnimationFrame(r.frame),r.frame=s.requestAnimationFrame(i),$p(()=>e(c.map(u=>[u.target,u.borderBoxSize[0].blockSize]))),o(),queueMicrotask(a)},d=new s.ResizeObserver(l);for(let c of t)d.observe(c);return n=d,()=>{s.cancelAnimationFrame(r.frame),r.frame=0,r.deferObservation=!1,r.settling=!1,r.queuedObservations.clear(),r.queuedMeasurements.clear(),d.disconnect(),n=null}}}};import{useVirtualScrollItem as em}from"@aiquants/virtualscroll";import{createContext as tm,useCallback as yl,useContext as fl,useLayoutEffect as Yp,useReducer as Jg,useRef as qp}from"react";import{flushSync as Xp}from"react-dom";var eE=1/2,tE=32,rE=8,Zp=16,Qp=2,nE=1,rm=()=>{},pl=Object.freeze({visible:0,reach:1,near:2,far:3}),$a=Object.freeze({capture:!0,passive:!0}),ml=()=>({samples:[],next:0,p90:null}),Jp=()=>({body:ml(),box:ml(),marks:ml()}),oE=(e,t)=>{if(e.samples[e.next]=t,e.next=(e.next+1)%tE,e.samples.length<rE)return;let r=[...e.samples].sort((n,o)=>n-o);e.p90=r[Math.ceil(.9*r.length)-1]},aE=(e,t,r,n,o)=>{let a=e.handle.getZone(),s=o(e.reportHubId),i=s===null||r===null?0:Math.sign(s-r);return t&&a==="far"&&i!==n?null:s===null?[pl[a],Number.POSITIVE_INFINITY,0]:r===null?[pl[a],s,0]:[pl[a],Math.abs(s-r),i===-n?1:0]},sE=(e,t)=>{for(let r=0;r<e.length;r++)if(e[r]!==t[r])return e[r]<t[r]?-1:1;return 0},nm=({gridId:e,isHolding:t,subscribeHold:r,keySteps:n,activeIndex:o,indexOf:a})=>{let s=new Map,i=new Map,l=new Map,d=new Map,c={fixed:Jp(),measured:Jp()},u=null,p=null,f=null,m=1,y=0,g=0,R=0,D=0,b=!1,h=()=>{let E=t(),L=o(),N=null,M=null;for(let T of s.values()){let A=aE(T,E,L,m,a);A===null||M!==null&&sE(A,M)>=0||(N=T,M=A)}return N},S=E=>{s.get(E.reportHubId)===E&&(s.delete(E.reportHubId),E.unsubscribeZone())},w=()=>{u!==null&&u.wake()},x=()=>{b=!1;let E=[...i.values()];i.clear(),y+=E.length,Xp(()=>{for(let L of E)L.apply()})};return{gridId:e,enqueue:(E,L)=>{let N=s.get(E.reportHubId);if(N!==void 0&&S(N),i.delete(E.reportHubId),!t()&&E.handle.getZone()==="visible")return L==="commit"?(y+=1,E.apply(),rm):(i.set(E.reportHubId,E),b||(b=!0,queueMicrotask(x)),()=>{i.get(E.reportHubId)===E&&i.delete(E.reportHubId)});let M={...E,unsubscribeZone:E.handle.subscribeZone(()=>{let T=E.handle.getZone();if(T==="visible"){S(M),y+=1,E.apply();return}T!=="far"&&w()})};return s.set(E.reportHubId,M),w(),()=>{S(M)}},declareBody:(E,L,N)=>{let M={handle:L,body:N,fresh:N!==null};return l.set(E,M),N!==null&&d.set(N,E),L.setSkippable(N===null),()=>{l.get(E)===M&&l.delete(E),N!==null&&d.get(N)===E&&d.delete(N)}},measured:E=>{let L=d.get(E),N=L===void 0?void 0:l.get(L);N===void 0||N.body!==E||(N.fresh=!1,N.handle.setSkippable(!0))},invalidate:E=>{let L=l.get(E);if(!(L===void 0||L.body===null)){if(L.fresh){L.fresh=!1;return}L.handle.setSkippable(!1),p!==null&&p(L.body)}},attach:(E,L)=>{if(u!==null)throw new Error("[daily-report] the row pass is connected to a view's window already; disconnect it before connecting it again");let N=new E.MessageChannel,M="idle",T=0,A=null,I=[],_=0,k=[],O=0,F=0,$=0,j=0,W=0,V={start:0,inputEpoch:0,units:0,reservoir:null},le=()=>{M!=="idle"||h()===null||(M="arming",N.port1.postMessage(null))},Te=()=>{M="framing",T=E.requestAnimationFrame(se)},be=Q=>{let oe=c[Q.sizing][Q.change];S(Q),Xp(Q.apply),V.reservoir=V.units===0||V.reservoir===oe?oe:null,V.units+=1},De=(Q,oe)=>{let me=h();if(me===null)return;let Ie=c[me.sizing][me.change].p90,Qe=Q-Qp-oe;if(Ie===null?oe>Q/2:Ie>Qe&&oe>Qp){let _e=me.handle.getZone(),et=_e==="visible"||_e==="reach";if(!et||W<nE){R+=1,W=et?W+1:0;return}D+=1}if(W=0,be(me),Ie===null)return;let Je=eE*Q;if(Ie>Je){g+=1;return}let Mt=Ie;for(let _e=h();_e!==null&&u===q;_e=h()){let et=c[_e.sizing][_e.change].p90;if(et===null||Mt+et>Je||Mt+et>Qe)return;be(_e),Mt+=et}},se=Q=>{T=0;let oe=E.performance.now(),me=oe-Q;k[O]=me,O=(O+1)%Zp;let Ie=A===null;A!==null&&(I[_]=Q-A,_=(_+1)%Zp),A=Q;let Qe=o();Qe!==null&&f!==null&&Qe!==f&&(m=Qe>f?1:-1),f=Qe;let It=n.appliedEpoch(),Je=!Ie&&F===$&&It===j&&!n.pending();if($=F,j=It,V.start=oe,V.inputEpoch=F,V.units=0,V.reservoir=null,Je&&De(Math.min(...I),me-Math.min(...k)),u===q){if(N.port2.postMessage(null),h()===null){M="idle",A=null,W=0;return}T=E.requestAnimationFrame(se)}},Ze=()=>{j=n.appliedEpoch();let{units:Q,reservoir:oe}=V;V.units=0,!(Q===0||oe===null||V.inputEpoch!==F)&&oE(oe,(E.performance.now()-V.start)/Q)},We=()=>{F+=1},q={wake:le};N.port2.onmessage=Te,N.port1.onmessage=Ze,E.addEventListener("keydown",We,$a),E.addEventListener("keyup",We,$a),u=q,p=L;let he=r(le);return le(),()=>{he(),E.removeEventListener("keydown",We,$a),E.removeEventListener("keyup",We,$a),T!==0&&E.cancelAnimationFrame(T),N.port1.onmessage=null,N.port2.onmessage=null,N.port1.close(),N.port2.close(),u=null,p=null}},syncReleaseCount:()=>y,oversizeFrameCount:()=>g,lateFrameCount:()=>R,lateForcedFrameCount:()=>D}},ja=tm(null),bo=tm(null),Rl=e=>{let t=fl(ja);if(t===null)throw new Error(`[daily-report] ${e} is called outside a view's rows (no row pass)`);return t},om=()=>Rl("useViewGridId").gridId,Ga=(e,t,r)=>{let n=Rl("useRowPass"),o=em(),[a,s]=Jg(()=>({bodyReady:!0,rendered:t.read()}),t,c=>({bodyReady:o.getZone()==="visible",rendered:c.read()})),i=qp(a),l=qp(rm),d=yl(c=>{let u=i.current,p=t.read();if(u.bodyReady&&Object.is(u.rendered,p)){l.current();return}let f=u.bodyReady?t.changesBox(u.rendered,p)?"box":"marks":"body";l.current=n.enqueue({reportHubId:e,handle:o,apply:s,sizing:r,change:f},c)},[n,e,o,t,r]);return Yp(()=>{let c=t.subscribe(()=>d("notification"));return()=>{c(),l.current()}},[t,d]),Yp(()=>{let c=i.current;if(i.current=a,d("commit"),r==="fixed")return n.declareBody(e,o,null);c!==a&&t.changesBox(c.rendered,a.rendered)&&n.invalidate(e)},[n,e,o,t,r,a,d]),a},am=e=>{let t=Rl("useRowBodyDeclaration"),r=em();return yl(o=>t.declareBody(e,r,o),[t,e,r])},sm=()=>{let e=fl(ja),t=fl(bo);return yl(()=>{e!==null&&t!==null&&e.invalidate(t)},[e,t])};import{clsx as iE}from"clsx";import{twMerge as lE}from"tailwind-merge";function v(...e){return lE(iE(e))}var Ne=e=>{let t=new Map;return r=>{let n=r===void 0?"":r,o=t.get(n);if(o!==void 0)return o;let a=v(e,n);return t.set(n,a),a}};import{useCallback as im,useMemo as dE,useSyncExternalStore as cE}from"react";var lm="(prefers-reduced-motion: reduce)",dm=e=>Pe(e).matchMedia(lm).matches?"instant":"smooth",uE=Object.freeze({...Ki,startVelocityThreshold:Number.POSITIVE_INFINITY}),Sn=e=>e?uE:Ki,pE=()=>!1,mE=()=>{},gn=e=>{let t=dE(()=>e===null?null:Pe(e).matchMedia(lm),[e]),r=im(o=>t===null?mE:(t.addEventListener("change",o),()=>t.removeEventListener("change",o)),[t]),n=im(()=>t===null?!1:t.matches,[t]);return cE(r,n,pE)};import{useSyncExternalStore as fE}from"react";import{jsx as hl}from"react/jsx-runtime";var Ya=()=>{let e={label:"",isWheelScrollActive:!1},t=new Set,r=n=>{e=n;for(let o of[...t])o()};return{getState:()=>e,setLabel:n=>{n!==e.label&&r({...e,label:n})},setWheelScrollActive:n=>{n!==e.isWheelScrollActive&&r({...e,isWheelScrollActive:n})},subscribe:n=>(t.add(n),()=>{t.delete(n)})}},cm=16,yE=v(gc,"border-slate-200 bg-white text-slate-700 text-xs shadow-md shadow-slate-400/30 dark:border-slate-700 dark:bg-slate-900/90 dark:text-slate-100"),RE=(e,t)=>e==="vertical"?{top:0,left:-cm,transform:`translate(-100%, calc(${t}px - 50%))`}:{top:-cm,left:0,transform:`translate(calc(${t}px - 50%), -100%)`},qa=({orientation:e,thumbCenter:t,isDragging:r,isTapScrollActive:n,store:o})=>{let{label:a,isWheelScrollActive:s}=fE(o.subscribe,o.getState,o.getState);return a.trim()&&(r||n||s)?hl("div",{className:"pointer-events-none absolute flex items-center",style:RE(e,t),children:hl("div",{className:yE,children:hl("span",{className:"whitespace-nowrap font-semibold text-slate-800 dark:text-slate-100",children:a.trim()})})}):null};import{createContext as hE,useContext as bE,useLayoutEffect as SE,useRef as gE}from"react";var bl=hE(null),Xa=({items:e,scroller:t,readTopReportId:r})=>{let n=bE(bl),o=n===null?null:n.request,a=gE(o===null?0:o.seq);SE(()=>{if(!(n===null||o===null||o.seq===a.current)){if(a.current=o.seq,o.kind==="restore"){let s=n.slot.preSearchTopReportId;n.slot.preSearchTopReportId=null;let i=s===null?-1:wt(e,s);i!==-1&&t.toIndex(i,{align:"top"});return}o.kind==="enter"&&(n.slot.preSearchTopReportId=r()),e.length>0&&t.toIndex(0,{align:"top"})}},[n,o,e,t,r])};import{memo as Id,useCallback as Zr,useContext as Ix,useEffect as PR,useLayoutEffect as FR,useMemo as Fn,useRef as vd}from"react";var Za="legacy-",EE=e=>`${Za}${e}`,um=(e,t,r,n)=>{if(typeof n!="string"||n.trim()==="")throw ke("mergeComments: unknownAuthorName","a non-blank string",n);let o=e.map((s,i)=>({id:EE(i),authorName:s.name||n,content:s.text||"",isMine:!1,color:s.color||void 0,isLegacy:!0,isAuthorUnknown:!s.name})),a=t.map(s=>({id:s.id,authorName:s.userName||n,content:s.content??"",createdAt:s.createdAt??"",isMine:r?s.userId===r:s.isMine,isLegacy:!1,isAuthorUnknown:!s.userName}));return[...o,...a]},pm=e=>{if(!e)return"text-gray-700 dark:text-gray-300";let t=e.toLowerCase();return t.includes("red")||t.includes("\u8D64")?"text-red-600 dark:text-red-400":t.includes("green")||t.includes("\u7DD1")?"text-green-600 dark:text-green-400":t.includes("blue")||t.includes("\u9752")?"text-blue-600 dark:text-blue-400":t.includes("yellow")||t.includes("\u9EC4")?"text-yellow-600 dark:text-yellow-400":t.includes("orange")||t.includes("\u6A59")?"text-orange-500 dark:text-orange-400":"text-gray-700 dark:text-gray-300"};var DE=Object.freeze(["subject","content","author","employeeName","updatedBy","category","creationCategory","customerName"]),fe=Object.freeze({field:e=>e,interviewer:(e,t)=>`interviewer:${e}:${t}`,attachment:e=>`attachment:${e}`,comment:(e,t)=>`comment:${e}:${t}`}),wE=e=>e.startsWith(Za)?dn(e.slice(Za.length))!==null:Mu(e)!==null,En=e=>{if(DE.includes(e))return!0;let t=e.split(":");switch(t[0]){case"interviewer":return t.length===3&&dn(t[1])!==null&&(t[2]==="name"||t[2]==="affiliation");case"attachment":return t.length===2&&dn(t[1])!==null;case"comment":return t.length===3&&wE(t[1])&&(t[2]==="author"||t[2]==="content");default:return!1}},TE=16777619,AE=2166136261,xE=(e,t,r,n)=>{let o=e;for(let a=r;a<n;a++)o^=t.charCodeAt(a),o=Math.imul(o,TE);return o>>>0},Sl=e=>xE(AE,e,0,e.length),vE=String.fromCodePoint(3),IE=String.fromCodePoint(2),CE=String.fromCodePoint(1),mm=e=>Sl(e.map(t=>t.map(r=>r.map(n=>`${n.tier}${n.text}`).join(vE)).join(IE)).join(CE));import{createContext as _f,useCallback as vf,useEffect as If,useLayoutEffect as Cf,useMemo as $l,useRef as Kl,useState as Wt}from"react";import{z as we}from"zod/v3";var fm=Object.freeze(["create","update","publish","delete","toggleStar","toggleRead","addComment","deleteComment","clearCache"]);var ut=Object.freeze({intent:"intent",clientTempId:"clientTempId",businessDate:"businessDate",operationTimestamp:"operationTimestamp",reportHubId:"reportHubId",title:"title",content:"content",isStarred:"isStarred",isRead:"isRead",commentId:"commentId"}),Qa=e=>{let t=new FormData;if(t.append(ut.intent,e.intent),e.intent==="clearCache"||(t.append(ut.clientTempId,e.clientTempId),e.businessDate!==null&&t.append(ut.businessDate,e.businessDate),e.operationTimestamp!==null&&t.append(ut.operationTimestamp,String(e.operationTimestamp)),e.intent==="create"))return t;switch(t.append(ut.reportHubId,String(e.reportHubId)),e.intent){case"update":return e.changes.title!==void 0&&t.append(ut.title,e.changes.title),e.changes.content!==void 0&&t.append(ut.content,e.changes.content),t;case"publish":case"delete":return t;case"toggleStar":return t.append(ut.isStarred,String(e.value)),t;case"toggleRead":return t.append(ut.isRead,String(e.value)),t;case"addComment":return t.append(ut.content,e.content),t;case"deleteComment":return t.append(ut.commentId,String(e.commentId)),t}},_E=()=>{let e=at,t=we.string().regex(ua),r=we.literal("OK"),n=we.object({isStarred:we.boolean(),isRead:we.boolean()}),o=we.number().int().nonnegative().nullable();return{create:we.object({status:r,intent:we.literal("create"),reportHubId:e,clientTempId:t,report:br}),update:we.object({status:r,intent:we.literal("update"),reportHubId:e,clientTempId:t}),publish:we.object({status:r,intent:we.literal("publish"),reportHubId:e,clientTempId:t,report:br.nullable()}),delete:we.object({status:r,intent:we.literal("delete"),reportHubId:e,clientTempId:t}),toggleStar:we.object({status:r,intent:we.literal("toggleStar"),reportHubId:e,clientTempId:t,updatedStatus:n,operationTimestamp:o}),toggleRead:we.object({status:r,intent:we.literal("toggleRead"),reportHubId:e,clientTempId:t,updatedStatus:n,operationTimestamp:o}),addComment:we.object({status:r,intent:we.literal("addComment"),reportHubId:e,clientTempId:t,newComment:Ni}),deleteComment:we.object({status:r,intent:we.literal("deleteComment"),reportHubId:e,clientTempId:t,deletedCommentId:at}),clearCache:we.object({status:r,intent:we.literal("clearCache")})}},gl=null,LE=()=>(gl===null&&(gl=_E()),gl),ym=(e,t)=>{let r=LE()[e].safeParse(t);return r.success?{result:r.data}:{mismatch:ya(r.error)}};import{useState as kE}from"react";var Ja=e=>{let t=e>>>0,r=(e-t)/4294967296|0;return Math.imul(t^Math.imul(r,1540483477),2654435761)>>>0},nr=class{constructor(t){this.count=0;this.idAt=t,this.bits=4,this.slots=new Int32Array(16).fill(-1)}get size(){return this.count}get capacity(){return this.slots.length}find(t){let r=this.slotOf(t);return r===-1?-1:this.slots[r]}set(t,r){let n=this.slotOf(t);if(n!==-1){this.slots[n]=r;return}(this.count+1)*2>this.slots.length&&this.grow();let o=this.slots.length-1,a=Ja(t)>>>32-this.bits;for(;this.slots[a]!==-1;)a=a+1&o;this.slots[a]=r,this.count+=1}delete(t){let r=this.slotOf(t);if(r===-1)return!1;let n=this.slots.length-1,o=32-this.bits;this.slots[r]=-1,this.count-=1;for(let a=r+1&n;this.slots[a]!==-1;a=a+1&n){let s=Ja(this.idAt(this.slots[a]))>>>o;(a-s&n)>=(a-r&n)&&(this.slots[r]=this.slots[a],this.slots[a]=-1,r=a)}return!0}clear(){this.slots.fill(-1),this.count=0}slotOf(t){let r=this.slots.length-1;for(let n=Ja(t)>>>32-this.bits;this.slots[n]!==-1;n=n+1&r)if(this.idAt(this.slots[n])===t)return n;return-1}grow(){let t=this.slots;this.bits+=1,this.slots=new Int32Array(1<<this.bits).fill(-1);let r=this.slots.length-1,n=32-this.bits;for(let o=0;o<t.length;o++){let a=t[o];if(a===-1)continue;let s=Ja(this.idAt(a))>>>n;for(;this.slots[s]!==-1;)s=s+1&r;this.slots[s]=a}}};var NE=e=>e.appended instanceof Ht&&e.replaced.previous instanceof Ht&&e.replaced.next instanceof Ht&&e.removed instanceof Ht,Dl=e=>{if(NE(e))return e;throw new Error(`[daily-report] The ids stream change from revision ${e.base} to ${e.revision} holds a row batch the package did not build`)},es=1,ts=2,zr=3,Rm=16,OE=8192,ME=Float64Array.BYTES_PER_ELEMENT+2*Uint32Array.BYTES_PER_ELEMENT+3*Uint8Array.BYTES_PER_ELEMENT,El=e=>{let t=new ArrayBuffer(e*ME),r=e*Float64Array.BYTES_PER_ELEMENT,n=r+2*e*Uint32Array.BYTES_PER_ELEMENT;return{ids:new Float64Array(t,0,e),firstDates:new Uint32Array(t,r,e),lastDates:new Uint32Array(t,r+e*Uint32Array.BYTES_PER_ELEMENT,e),states:new Uint8Array(t,n,e),firstSources:new Uint8Array(t,n+e,e),lastSources:new Uint8Array(t,n+2*e,e)}},hm=Object.freeze({previous:Dt,next:Dt}),wl=()=>{let e=0,t=El(Rm),r=d=>t.ids[d],n=new nr(r),o=()=>{let d=El(t.ids.length*2);d.ids.set(t.ids),d.firstDates.set(t.firstDates),d.lastDates.set(t.lastDates),d.states.set(t.states),d.firstSources.set(t.firstSources),d.lastSources.set(t.lastSources),t=d},a=(d,c)=>{e===t.ids.length&&o();let u=e;return e+=1,t.ids[u]=d,t.states[u]=c,n.set(d,u),u},s=(d,c,u)=>{let p=n.find(d);if(p===-1){let f=a(d,es);t.lastDates[f]=c,t.lastSources[f]=u;return}if(t.states[p]!==zr)throw new Error(`[daily-report] The ids stream list took report ${d}, which it already holds`);t.states[p]=ts,t.lastDates[p]=c,t.lastSources[p]=u},i=(d,c,u,p,f)=>{let m=n.find(d);if(m===-1)m=a(d,ts),t.firstDates[m]=c,t.firstSources[m]=u;else if(t.states[m]===zr)throw new Error(`[daily-report] The ids stream list changed report ${d}, which it no longer holds`);t.lastDates[m]=p,t.lastSources[m]=f},l=(d,c,u)=>{let p=n.find(d);if(p===-1){let f=a(d,zr);t.firstDates[f]=c,t.firstSources[f]=u;return}if(t.states[p]===es){n.delete(d),t.states[p]=0;return}if(t.states[p]===zr)throw new Error(`[daily-report] The ids stream list dropped report ${d}, which it no longer holds`);t.states[p]=zr};return{add:s,change:i,remove:l,fold:d=>{let{removed:c,appended:u,replaced:p}=Dl(d),{previous:f,next:m}=p;for(let y=0;y<c.length;y++)l(c.ids[y],c.businessDateCodes[y],c.sourceTypeCodes[y]);for(let y=0;y<m.length;y++)i(m.ids[y],f.businessDateCodes[y],f.sourceTypeCodes[y],m.businessDateCodes[y],m.sourceTypeCodes[y]);for(let y=0;y<u.length;y++)s(u.ids[y],u.businessDateCodes[y],u.sourceTypeCodes[y])},isEmpty:()=>n.size===0,build:(d,c)=>{let u=0,p=0,f=0;for(let h=0;h<e;h++){let S=t.states[h];S===es?u+=1:S===ts?p+=1:S===zr&&(f+=1)}let m=u+2*p+f;if(m===0)return{base:d,revision:c,appended:Dt,replaced:hm,removed:Dt};let y=mn(m),g=0,R=u,D=R+p,b=D+p;for(let h=0;h<e;h++){let S=t.states[h];S===es?(y.ids[g]=t.ids[h],y.businessDateCodes[g]=t.lastDates[h],y.sourceTypeCodes[g]=t.lastSources[h],g+=1):S===ts?(y.ids[R]=t.ids[h],y.businessDateCodes[R]=t.firstDates[h],y.sourceTypeCodes[R]=t.firstSources[h],R+=1,y.ids[D]=t.ids[h],y.businessDateCodes[D]=t.lastDates[h],y.sourceTypeCodes[D]=t.lastSources[h],D+=1):S===zr&&(y.ids[b]=t.ids[h],y.businessDateCodes[b]=t.firstDates[h],y.sourceTypeCodes[b]=t.firstSources[h],b+=1)}return{base:d,revision:c,appended:rr(y,0,u),replaced:p===0?hm:{previous:rr(y,u,p),next:rr(y,u+p,p)},removed:rr(y,u+2*p,f)}},reset:()=>{if(e=0,t.ids.length<=OE){n.clear();return}t=El(Rm),n=new nr(r)}}},bm=(e,t,r)=>{let n=wl();for(let o of e)n.fold(o);return n.build(t,r)},Sm=(e,t)=>{let r=e.findIndex(n=>n.base===t);if(r===-1)return null;for(let n=r+1;n<e.length;n++)if(e[n].base!==e[n-1].revision)return null;return e.slice(r)};var PE={items:Ba,held:new Map,hidden:new Map,revision:null,settled:!1},Tl=(e,t,r)=>{let n=0,o=e.length;for(;n<o;){let a=n+o>>1;hn(Br(e,a),Rn(e,a),t,r)<0?n=a+1:o=a}return n<e.length&&Br(e,n)===t?n:-1},rs=(e,t)=>Tl(e,t.reportHubId,Bt(t.businessDate)),Al=(e,t,r,n)=>{let o=n,a=e.length;for(;o<a;){let s=o+a>>1;hn(Br(e,s),Rn(e,s),t,r)<=0?o=s+1:a=s}return o},FE=(e,t)=>{if(t.length===0)return[];let r=e.length-1;if(e.length===0||hn(Br(e,r),Rn(e,r),t.ids[0],t.businessDateCodes[0])<0)return new Array(t.length).fill(e.length);let n=[],o=0;for(let a=0;a<t.length;a++)o=Al(e,t.ids[a],t.businessDateCodes[a],o),n.push(o);return n},HE=e=>{for(let t=1;t<e.length;t++)if(hn(e.ids[t-1],e.businessDateCodes[t-1],e.ids[t],e.businessDateCodes[t])>=0)return!1;return!0},Em=e=>{if(HE(e))return e;let t=Array.from({length:e.length},(n,o)=>o);t.sort((n,o)=>hn(e.ids[n],e.businessDateCodes[n],e.ids[o],e.businessDateCodes[o]));let r=new _t(e.length);for(let n of t)r.pushFrom(e,n);return r.build()},Dm=(e,t,r,n)=>{let o=Dp(t.readRows()),a=new nr(d=>o.ids[d]);for(let d=0;d<o.length;d++)a.set(o.ids[d],d);let s=new _t(o.length+e.held.size),i=new Map;for(let d=0;d<o.length;d++){let c=o.ids[d];n.has(c)?i.set(c,o.itemAt(d)):s.pushFrom(o,d)}let l=new Map;for(let d of e.items.chunks)for(let c=0;c<d.length;c++){let u=d.ids[c];if(a.find(u)!==-1||n.has(u))continue;let p=e.held.get(u),f=p===void 0?Number.NEGATIVE_INFINITY:p.since;r&&u>0&&t.itemsRevision>f||(l.set(u,{item:p===void 0?Ha(u,d.businessDateCodes[c],d.sourceTypeCodes[c]):p.item,since:f}),s.pushFrom(d,c))}return{items:Ap(Em(s.build())),held:l,hidden:i,revision:t.itemsRevision,settled:r}},BE=(e,t,r,n)=>{let o=e.revision;if(o===t.itemsRevision&&e.settled===r)return e;let a=o===null?null:o===t.itemsRevision?[]:Sm(t.itemsChanges,o);if(o===null||a===null)return Dm(e,t,r,n);let s=e.items,i=[],l=[],d=a.length===0?null:a.length===1?Dl(a[0]):bm(a,o,t.itemsRevision),c=new _t(d===null?0:d.appended.length+d.replaced.next.length),u=null,p=()=>(u===null&&(u=new Map(e.held)),u),f=null,m=()=>(f===null&&(f=new Map(e.hidden)),f);if(d!==null){let{appended:D,replaced:b,removed:h}=d;for(let w=0;w<h.length;w++){let x=h.ids[w];if(e.hidden.has(x)&&m().delete(x),e.held.has(x))continue;let E=Tl(s,x,h.businessDateCodes[w]);E!==-1&&(r||n.has(x)?i.push(E):p().set(x,{item:Ha(x,Rn(s,E),dl(s,E)),since:Number.NEGATIVE_INFINITY}))}let S=(w,x,E)=>{let L=w.ids[x],N=w.businessDateCodes[x],M=w.sourceTypeCodes[x],T=e.held.get(L);T!==void 0&&p().delete(L);let A=T===void 0?E:Bt(T.item.businessDate),I=A===-1?-1:Tl(s,L,A);if(n.has(L)){I!==-1&&i.push(I),m().set(L,w.itemAt(x));return}if((f===null?e.hidden:f).has(L)&&m().delete(L),I!==-1&&Rn(s,I)===N){dl(s,I)!==M&&l.push({index:I,id:L,businessDateCode:N,sourceTypeCode:M});return}I!==-1&&i.push(I),c.push(L,N,M)};for(let w=0;w<b.next.length;w++)S(b.next,w,b.previous.businessDateCodes[w]);for(let w=0;w<D.length;w++)S(D,w,-1)}let y=t.itemsRevision;if(r)for(let[D,b]of u===null?e.held:u){if(D<=0||y<=b.since)continue;let h=rs(s,b.item);h!==-1&&i.push(h),p().delete(D)}let g=Em(c.build());return{items:bn(s,{removals:i,replacements:l,additions:g,insertions:FE(s,g)}),held:u===null?e.held:u,hidden:f===null?e.hidden:f,revision:y,settled:r}},gm=new WeakMap,VE=(e,t,r,n)=>{let o=gm.get(e);if(o!==void 0&&o.revision===t.itemsRevision&&o.changes===t.itemsChanges&&o.settled===r&&o.tombstones===n)return o.rows;let a=BE(e,t,r,n);return gm.set(e,{revision:t.itemsRevision,changes:t.itemsChanges,settled:r,tombstones:n,rows:a}),a},wm=(e,t,r)=>{let[n,o]=kE(()=>Dm(PE,e,t,r));return(n.revision!==e.itemsRevision||n.settled!==t)&&o(a=>VE(a,e,t,r)),[n,o]},ns=(e,t,r)=>{if(e.hidden.has(t.reportHubId))return xl(e,t.reportHubId);if(e.held.has(t.reportHubId)||rs(e.items,t)!==-1||Ro(e.items,t.reportHubId)!==-1)return e;let n=bn(e.items,{...Vr,additions:nl([t]),insertions:[Al(e.items,t.reportHubId,Bt(t.businessDate),0)]}),o=new Map(e.held);return o.set(t.reportHubId,{item:t,since:r}),{...e,items:n,held:o}},xl=(e,t)=>{let r=e.hidden.get(t);if(r===void 0)return e;let n=new Map(e.hidden);return n.delete(t),{...e,items:bn(e.items,{...Vr,additions:nl([r]),insertions:[Al(e.items,r.reportHubId,Bt(r.businessDate),0)]}),hidden:n}},$r=(e,t)=>{let r=e.held.get(t);if(r===void 0)return e;let n=rs(e.items,r.item),o=new Map(e.held);return o.delete(t),{...e,items:bn(e.items,n===-1?Vr:{...Vr,removals:[n]}),held:o}},Tm=(e,t)=>{let r=e.held.get(t.reportHubId),n=rs(e.items,r===void 0?t:r.item);if(r===void 0&&n===-1)return e;let o=new Map(e.held);return o.delete(t.reportHubId),{...e,items:bn(e.items,n===-1?Vr:{...Vr,removals:[n]}),held:o}},Am=e=>({...e,revision:null});import{startTransition as eD,useLayoutEffect as tD,useState as rD,useSyncExternalStore as Do}from"react";var xm=e=>{let t=new URLSearchParams;return e.cursor!==null&&(t.set(Le.cursorReportHubId,String(e.cursor.reportHubId)),e.cursor.businessDate!==null&&t.set(Le.cursorBusinessDate,e.cursor.businessDate)),e.snapshot!==null&&t.set(Le.cursorSnapshot,e.snapshot),e.forceRefresh&&t.set(Le.forceRefresh,"true"),t};var So=1,UE=2,WE=1024,Dn=1024,os=class{constructor(){this.used=0;this.holes=0;this.ids=new Float64Array(Dn);this.dates=new Uint32Array(Dn);this.sources=new Uint8Array(Dn);this.flags=new Uint8Array(Dn);this.positions=new nr(t=>this.ids[t])}get size(){return this.positions.size}find(t){return this.positions.find(t)}businessDateCodeAt(t){return this.dates[t]}sourceTypeCodeAt(t){return this.sources[t]}itemAt(t){return{reportHubId:this.ids[t],businessDate:tr(this.dates[t]),sourceType:Hr(this.sources[t])}}add(t,r,n){this.used===this.ids.length&&this.grow();let o=this.used;this.ids[o]=t,this.dates[o]=r,this.sources[o]=n,this.flags[o]=So,this.used+=1,this.positions.set(t,o)}replace(t,r,n){this.dates[t]=r,this.sources[t]=n}delete(t){this.positions.delete(this.ids[t]),this.flags[t]=0,this.holes+=1,this.holes>=WE&&this.holes>this.positions.size&&this.compact()}markSeen(t){let r=this.positions.find(t);r!==-1&&(this.flags[r]|=UE)}clearSeen(){for(let t=0;t<this.used;t++)this.flags[t]&=So}unseenIds(){let t=[];for(let r=0;r<this.used;r++)this.flags[r]===So&&t.push(this.ids[r]);return t}rows(){let t=new _t(this.positions.size);for(let r=0;r<this.used;r++)(this.flags[r]&So)!==0&&t.push(this.ids[r],this.dates[r],this.sources[r]);return t.build()}grow(){this.resize(this.ids.length*2)}resize(t){let r=new Float64Array(t);r.set(this.ids.subarray(0,this.used));let n=new Uint32Array(t);n.set(this.dates.subarray(0,this.used));let o=new Uint8Array(t);o.set(this.sources.subarray(0,this.used));let a=new Uint8Array(t);a.set(this.flags.subarray(0,this.used)),this.ids=r,this.dates=n,this.sources=o,this.flags=a}compact(){let t=0;for(let r=0;r<this.used;r++)(this.flags[r]&So)!==0&&(this.ids[t]=this.ids[r],this.dates[t]=this.dates[r],this.sources[t]=this.sources[r],this.flags[t]=this.flags[r],t+=1);this.flags.fill(0,t,this.used),this.used=t,this.holes=0,this.positions.clear();for(let r=0;r<t;r++)this.positions.set(this.ids[r],r);this.ids.length>Math.max(Dn,t*4)&&this.resize(Math.max(Dn,t*2))}};var vm=()=>{let e=new TextDecoder,t=[],r=0,n=o=>{if(t.length===0)return e.decode(o);let a=new Uint8Array(r+o.length),s=0;for(let i of t)a.set(i,s),s+=i.length;return a.set(o,s),t=[],r=0,e.decode(a)};return{push:o=>{let a=[],s=0;for(let i=o.indexOf(10);i!==-1;i=o.indexOf(10,s))a.push(n(o.subarray(s,i))),s=i+1;return s<o.length&&(t.push(o.slice(s)),r+=o.length-s),a},end:()=>t.length===0?[]:[n(new Uint8Array(0))]}};var KE=e=>({debug:e,info:e,warn:e,error:e}),zE=50,$E=32,Im=0,jE=()=>(Im+=1,Im),GE=1e3,YE=3e4,qE=6,XE=3e4,Cm=Symbol("read-stall"),ZE=Object.freeze({reading:()=>{},stalled:()=>!1,stop:()=>{}}),QE="/daily_report/api",JE=e=>typeof e=="object"&&e!==null&&e.name==="AbortError",as=class{constructor(t={}){this.rows=new os;this.listeners=new Set;this.state={loadedCount:0,itemsRevision:0,itemsChanges:[],totalCount:null,phase:"idle",isRevalidating:!1,hasCompletedOnce:!1,completedAt:null,error:null,streamAnchor:null};this.streamAnchorRevision=0;this.lastCursor=null;this.lastSnapshot=null;this.consecutiveFailures=0;this.started=!1;this.disposed=!1;this.loopGeneration=0;this.activeAbortController=null;this.externalRemovalTombstones=new Set;this.pendingForceRefresh=!1;this.wakeRetryWait=null;this.handleOnline=()=>this.wakeRetryWait?.();this.publishCoalesceTimer=null;this.lastItemsPublishAt=Number.NEGATIVE_INFINITY;this.pendingItemsChange=wl();this.apiBasePath=t.apiBasePath??QE,this.fetchFn=t.fetchFn??((r,n)=>fetch(r,n)),this.setTimeoutFn=t.setTimeoutFn??((r,n)=>setTimeout(r,n)),this.clearTimeoutFn=t.clearTimeoutFn??(r=>clearTimeout(r)),this.warn=gt(t.warn===void 0?void 0:KE(t.warn),1,"IdsStream").warn,this.readStallTimeoutMs=t.readStallTimeoutMs??XE,this.publishCoalesceMs=t.publishCoalesceMs??zE,this.now=t.now??(()=>performance.now()),typeof window<"u"&&window.addEventListener("online",this.handleOnline)}getState(){return this.state}subscribe(t){return this.listeners.add(t),()=>this.listeners.delete(t)}start(){this.started||this.disposed||(this.started=!0,this.runStreamLoop({revalidate:!1,forceRefresh:!1}))}retry(){this.disposed||this.state.phase!=="failed"||(this.consecutiveFailures=0,this.runStreamLoop({revalidate:this.state.hasCompletedOnce,forceRefresh:!1}))}refresh(t={}){if(!this.disposed){if(this.state.phase==="failed"){this.consecutiveFailures=0,this.runStreamLoop({revalidate:this.state.hasCompletedOnce,forceRefresh:t.forceRefresh??!1});return}if(this.state.phase==="complete"){if(this.state.isRevalidating){t.forceRefresh&&(this.pendingForceRefresh=!0);return}this.lastCursor=null,this.consecutiveFailures=0,this.runStreamLoop({revalidate:!0,forceRefresh:t.forceRefresh??!1})}}}resync(){if(!this.disposed){if(this.state.phase==="streaming"||this.state.phase==="retrying"){this.pendingForceRefresh=!0;return}this.refresh({forceRefresh:!0})}}applyExternalUpsert(t){if(this.disposed)return;this.externalRemovalTombstones.delete(t.reportHubId);let r=this.rows.find(t.reportHubId),n=r===-1?void 0:this.rows.itemAt(r),o=t.sourceType??n?.sourceType,a=this.putItem(t.reportHubId,Bt(t.businessDate),fo(o));this.rows.markSeen(t.reportHubId),a&&this.schedulePublishItems()}applyExternalRemoval(t){this.disposed||(this.externalRemovalTombstones.add(t),this.deleteItem(t)&&this.schedulePublishItems())}has(t){return this.rows.find(t)!==-1}readRows(){let t=this.rows.rows();if(this.pendingItemsChange.isEmpty())return t;let{appended:r,replaced:n,removed:o}=this.pendingItemsChange.build(this.state.itemsRevision,this.state.itemsRevision),a=new Set;for(let l=0;l<r.length;l++)a.add(r.ids[l]);let s=new Map;for(let l=0;l<n.previous.length;l++)s.set(n.previous.ids[l],l);let i=new _t(t.length+o.length);for(let l=0;l<t.length;l++){let d=t.ids[l];if(a.has(d))continue;let c=s.get(d);c===void 0?i.pushFrom(t,l):i.pushFrom(n.previous,c)}for(let l=0;l<o.length;l++)i.pushFrom(o,l);return i.build()}dispose(){this.disposed=!0,this.loopGeneration+=1,this.activeAbortController?.abort(),this.cancelScheduledPublishItems(),this.wakeRetryWait?.(),typeof window<"u"&&window.removeEventListener("online",this.handleOnline),this.listeners.clear()}async runStreamLoop(t){let r=++this.loopGeneration;for(this.activeAbortController?.abort(),this.wakeRetryWait?.(),this.lastCursor===null&&(this.rows.clearSeen(),this.externalRemovalTombstones.clear(),this.lastSnapshot=null),t.forceRefresh&&(this.pendingForceRefresh=!1),this.publish({phase:t.revalidate?this.state.phase:"streaming",isRevalidating:t.revalidate,error:null});!this.disposed&&r===this.loopGeneration;){let n=await this.streamOnce(t.forceRefresh);if(this.disposed||r!==this.loopGeneration)return;if(n.kind==="complete"){this.pruneUnseenItems(),this.consecutiveFailures=0,this.cancelScheduledPublishItems();let o=this.takePendingItems();this.publish({phase:"complete",isRevalidating:!1,hasCompletedOnce:!0,completedAt:Date.now(),error:null,...o}),this.pendingForceRefresh&&!this.disposed&&(this.pendingForceRefresh=!1,this.lastCursor=null,this.runStreamLoop({revalidate:!0,forceRefresh:!0}));return}if(n.kind==="aborted")return;if(n.kind==="auth-required"){this.publish({phase:"auth-required",isRevalidating:!1});return}if(this.consecutiveFailures+=1,this.consecutiveFailures>=qE){t.revalidate&&this.state.hasCompletedOnce?(this.warn("revalidation gave up:",n.error.message),this.pendingForceRefresh=!1,this.publish({isRevalidating:!1,error:n.error})):this.publish({phase:"failed",isRevalidating:!1,error:n.error});return}this.publish({phase:t.revalidate?this.state.phase:"retrying",error:n.error}),await this.waitBeforeRetry(Math.min(GE*2**(this.consecutiveFailures-1),YE))}}pruneUnseenItems(){let t=this.rows.unseenIds();this.rows.clearSeen();for(let r of t)this.deleteItem(r)}async streamOnce(t){let r=new AbortController;this.activeAbortController=r;try{let n=this.fetchFn(this.buildStreamUrl(t),{signal:r.signal,headers:{Accept:"application/x-ndjson"},cache:"no-store"}),o=this.readStallTimeoutMs<=0?await n:await this.awaitResponseHeaders(n);if(o===Cm)return r.abort(),{kind:"retryable",error:new Error("Stream stalled: no response headers within timeout")};if(o.status===401||o.status===403)return{kind:"auth-required"};if(!(o.ok&&o.body))return{kind:"retryable",error:new Error(`ids stream HTTP ${o.status}`)};let a=o.body.getReader(),s=vm(),i=this.watchReadSilence(a),l=!1,d=!1;try{for(;;){i.reading();let c=await a.read();if(i.stalled())return r.abort(),{kind:"retryable",error:new Error("Stream stalled: no data within timeout")};let u=c.done?s.end():s.push(c.value),p=!1,f=!1;for(let m of u){if(m.trim()==="")continue;let y;try{y=JSON.parse(m)}catch{f=!0;break}let g=Pi(y);if(g==="unknown"){this.warn("skipped line of unknown kind");continue}if(g==="error"){l=!0;continue}let R=xu(y);if(R===null){f=!0;break}p=this.absorbChunkLine(R)||p,R.total!==null&&R.total!==this.state.totalCount&&this.publish({totalCount:R.total}),R.resumeCursor!==null&&(this.lastCursor=R.resumeCursor),R.isLast&&(d=!0)}if(p&&(this.consecutiveFailures=0,this.schedulePublishItems()),f)return this.warn("rejected a malformed line"),r.abort(),{kind:"retryable",error:new Error("ids stream line rejected")};if(c.done)break}}finally{i.stop()}return l?{kind:"retryable",error:new Error("Stream interrupted by server error")}:d?{kind:"complete"}:{kind:"retryable",error:new Error("Stream ended before completion")}}catch(n){return JE(n)?{kind:"aborted"}:{kind:"retryable",error:n instanceof Error?n:new Error(String(n))}}}awaitResponseHeaders(t){return new Promise((r,n)=>{let o=this.setTimeoutFn(()=>r(Cm),this.readStallTimeoutMs*3);t.then(a=>{this.clearTimeoutFn(o),r(a)},a=>{this.clearTimeoutFn(o),n(a)})})}watchReadSilence(t){if(this.readStallTimeoutMs<=0)return ZE;let r=this.readStallTimeoutMs,n=this.now(),o=!1,a=!1,s=null,i=()=>{if(s=null,a)return;let l=this.now()-n;if(l<r){s=this.setTimeoutFn(i,r-l);return}o=!0,t.cancel().catch(()=>{})};return s=this.setTimeoutFn(i,r),{reading:()=>{n=this.now()},stalled:()=>o,stop:()=>{a=!0,s!==null&&this.clearTimeoutFn(s),s=null}}}absorbChunkLine(t){t.restarted&&(this.lastCursor=null,this.lastSnapshot=null,this.rows.clearSeen(),this.externalRemovalTombstones.clear()),t.snapshot!==null&&(this.lastSnapshot=t.snapshot),this.absorbStreamAnchor(t.streamAnchor);let{provisional:r}=t,n=!1,o=null,a=Bt(null),s,i=fo(void 0),l=(d,c,u)=>{this.externalRemovalTombstones.has(d)||(c!==o&&(o=c,a=Bt(c)),u!==s&&(s=u,i=fo(u)),this.putItem(d,a,i)&&(n=!0),r||this.rows.markSeen(d))};return vu(t.rows,l),n}putItem(t,r,n){let o=this.rows.find(t);if(o===-1)return this.rows.add(t,r,n),this.pendingItemsChange.add(t,r,n),!0;let a=this.rows.businessDateCodeAt(o),s=this.rows.sourceTypeCodeAt(o);return a===r&&s===n?!1:(this.rows.replace(o,r,n),this.pendingItemsChange.change(t,a,s,r,n),!0)}deleteItem(t){let r=this.rows.find(t);return r===-1?!1:(this.pendingItemsChange.remove(t,this.rows.businessDateCodeAt(r),this.rows.sourceTypeCodeAt(r)),this.rows.delete(r),!0)}absorbStreamAnchor(t){if(t.kind!=="absent"){if(t.kind==="malformed"){this.warn(`skipped a malformed streamAnchor: ${String(t.received)}`);return}this.streamAnchorRevision+=1,this.publish({streamAnchor:{lastEventId:t.value,revision:this.streamAnchorRevision}})}}takePendingItems(){if(this.pendingItemsChange.isEmpty())return{};this.lastItemsPublishAt=this.now();let t=jE(),r=this.pendingItemsChange.build(this.state.itemsRevision,t);return this.pendingItemsChange.reset(),{loadedCount:this.rows.size,itemsRevision:t,itemsChanges:[...this.state.itemsChanges.slice(1-$E),r]}}publishItems(){let t=this.takePendingItems();t.itemsRevision!==void 0&&this.publish(t)}schedulePublishItems(){if(this.publishCoalesceMs<=0){this.publishItems();return}let t=this.now()-this.lastItemsPublishAt;if(t>=this.publishCoalesceMs){this.publishItems();return}this.publishCoalesceTimer===null&&(this.publishCoalesceTimer=this.setTimeoutFn(()=>{this.publishCoalesceTimer=null,this.publishItems()},this.publishCoalesceMs-t))}cancelScheduledPublishItems(){this.publishCoalesceTimer!==null&&(this.clearTimeoutFn(this.publishCoalesceTimer),this.publishCoalesceTimer=null)}publish(t){this.state={...this.state,...t};for(let r of this.listeners)r()}buildStreamUrl(t){let r=xm({cursor:this.lastCursor,snapshot:this.lastCursor===null?null:this.lastSnapshot,forceRefresh:t}).toString();return`${this.apiBasePath}/${fa}${r?`?${r}`:""}`}waitBeforeRetry(t){return new Promise(r=>{let n=null,o=()=>{n!==null&&(this.clearTimeoutFn(n),n=null),this.wakeRetryWait===o&&(this.wakeRetryWait=null),r()};this.wakeRetryWait=o,n=this.setTimeoutFn(o,t)})}};var nD=6e4,ce=null,_m=!1,go=new Set,ss={loadedCount:0,itemsRevision:0,itemsChanges:[],totalCount:null,phase:"idle",isRevalidating:!1,hasCompletedOnce:!1,completedAt:null,error:null,streamAnchor:null},vl=()=>{for(let e of go)e()},Il=()=>{ce&&(ce.unsubscribe(),ce.client.dispose(),ce=null,vl())},Eo=e=>{if(typeof window>"u")return;let t=e.apiBasePath??so.apiBasePath;if(ce&&(ce.userKey!==e.userKey||ce.apiBasePath!==t)&&(ce.userKey!==e.userKey&&uo(),Il()),!ce){let r=new as({apiBasePath:t});ce={client:r,userKey:e.userKey,apiBasePath:t,unsubscribe:r.subscribe(vl)},oD(),r.start(),vl();return}ls(ce)},ls=e=>{let t=e.client.getState();if(t.phase==="failed"){e.client.retry();return}t.phase==="complete"&&!t.isRevalidating&&t.completedAt!==null&&Date.now()-t.completedAt>nD&&e.client.refresh()},oD=()=>{if(_m||typeof document>"u"||typeof window>"u")return;_m=!0;let e=()=>{ce&&ls(ce)};document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&e()}),window.addEventListener("focus",e)},Cl=e=>{if(!(typeof window>"u")){if(!ce){Eo(e);return}if(ce.userKey!==e.userKey){uo(),Il(),Eo(e);return}ls(ce)}},_l=()=>{typeof window>"u"||!ce||ls(ce)},wn=e=>{ce?.client.applyExternalUpsert(e)},Tn=e=>{ce?.client.applyExternalRemoval(e)},Nm=e=>ce===null?!1:ce.client.has(e),Om=()=>ce===null?Dt:ce.client.readRows(),Ll=()=>ce===null?0:ce.client.getState().itemsRevision,ds=()=>{ce?.client.retry()},cs=()=>{ce?.client.resync()},wo=(e={})=>{ce?.client.refresh(e)},Mm=()=>ce?.userKey,To=e=>(go.add(e),()=>go.delete(e)),is=()=>ce?.client.getState()??ss,aD=()=>ss,sD=()=>Do(To,is,aD),us=(e,t)=>{let r=ss,n=e(ss);return()=>{let o=is();if(o===r)return n;let a=e(o);return r=o,t(n,a)||(n=a),n}},km=us(({phase:e,isRevalidating:t,error:r,streamAnchor:n,loadedCount:o})=>({phase:e,isRevalidating:t,error:r,streamAnchor:n,hasItems:o>0}),(e,t)=>e.phase===t.phase&&e.isRevalidating===t.isRevalidating&&e.error===t.error&&e.streamAnchor===t.streamAnchor&&e.hasItems===t.hasItems),iD=km(),An=()=>Do(To,km,()=>iD),Pm=us(({phase:e,isRevalidating:t,loadedCount:r,totalCount:n})=>({phase:e,isRevalidating:t,loadedCount:r,totalCount:n}),(e,t)=>e.phase===t.phase&&e.isRevalidating===t.isRevalidating&&e.loadedCount===t.loadedCount&&e.totalCount===t.totalCount),lD=Pm(),Fm=()=>Do(To,Pm,()=>lD),Hm=us(({phase:e,loadedCount:t})=>({phase:e,hasItems:t>0,retryingCount:e==="retrying"?t:null}),(e,t)=>e.phase===t.phase&&e.hasItems===t.hasItems&&e.retryingCount===t.retryingCount),dD=Hm(),Bm=()=>Do(To,Hm,()=>dD),Vm=us(({phase:e,totalCount:t})=>({phase:e,totalCount:t}),(e,t)=>e.phase===t.phase&&e.totalCount===t.totalCount),cD=Vm(),Um=()=>Do(To,Vm,()=>cD),Wm=e=>e.phase==="complete"&&!e.isRevalidating,Lm=e=>`${e.itemsRevision}:${Wm(e)}`,Km=()=>{let[,e]=rD(0),t=is(),r=Lm(t);return tD(()=>{let n=r,o=()=>{let a=Lm(is());a!==n&&(n=a,eD(()=>e(s=>s+1)))};return go.add(o),o(),()=>{go.delete(o)}},[]),{itemsRevision:t.itemsRevision,itemsChanges:t.itemsChanges,readRows:Om,settled:Wm(t)}};import.meta.hot?.dispose(Il);var zm="Internal",uD=e=>e.trim().toLowerCase();var ps=(e,t,r)=>{if(!Number.isFinite(e)||e<=0)throw ke("createExpiringLedger: ttlMs","a finite number greater than 0 (the time to live in ms)",e);let n=new Map,o=()=>{let a=t();for(let[s,i]of n){if(i.deadline>a)return;n.delete(s),r(s,i.value)}};return{add:(a,s)=>{o(),n.delete(a),n.set(a,{value:s,deadline:t()+e})},get:a=>(o(),n.get(a)?.value),remove:a=>{o();let s=n.get(a);if(s!==void 0)return n.delete(a),s.value},drain:()=>{let a=[...n.values()].map(s=>s.value);return n.clear(),a},size:()=>n.size}};var pD=3e4,$m=e=>{let t=ps(pD,e,()=>{});return{add:r=>t.add(r,!0),has:r=>t.get(r)===!0}},xn=(e,t)=>e.has(t)?e:new Set(e).add(t),jm=(e,t)=>{if(!e.has(t))return e;let r=new Set(e);return r.delete(t),r},Gm=new Set,Ym=()=>new Set,qm=()=>new Map,Xm=e=>{let t={pendingAddCommentIds:new Map,pendingDeleteCommentIds:new Map,pendingStarUpdates:new Map,pendingReadUpdates:new Map,resolvedIdMap:new Map};return{ledgers:Object.freeze({pendingAddCommentIds:Object.freeze({current:t.pendingAddCommentIds}),pendingDeleteCommentIds:Object.freeze({current:t.pendingDeleteCommentIds}),pendingStarUpdates:Object.freeze({current:t.pendingStarUpdates}),pendingReadUpdates:Object.freeze({current:t.pendingReadUpdates}),resolvedIdMap:Object.freeze({current:t.resolvedIdMap})}),write:r=>{try{r(t)}finally{e()}}}},Zm=e=>({functions:{toggleSse:()=>e.current.toggleSse(),addComment:(t,r,n)=>e.current.addComment(t,r,n),deleteComment:(t,r,n)=>e.current.deleteComment(t,r,n),toggleStar:(t,r,n)=>e.current.toggleStar(t,r,n),toggleRead:(t,r,n)=>e.current.toggleRead(t,r,n),createReport:t=>e.current.createReport(t),updateReport:(t,r,n)=>e.current.updateReport(t,r,n),publishReport:(t,r)=>e.current.publishReport(t,r),deleteReport:(t,r)=>e.current.deleteReport(t,r),removeStaleItem:t=>e.current.removeStaleItem(t),refetchData:()=>e.current.refetchData(),clearCacheAndRefetch:()=>e.current.clearCacheAndRefetch()},onSseMessage:t=>e.current.handleSseMessage(t)});var Nl=0,Ol=e=>{let t=tt("drawTemporaryId: nowMs",e,1);return Nl=Math.min(-t,Nl-1),Nl};var or=(e,t)=>{if(!e)return t;if(e.displayName?.trim())return e.displayName;if(e.name){let n=[e.name.familyName,e.name.givenName].filter(o=>typeof o=="string"&&o!=="").join(" ");if(n.trim())return n.trim()}let r=e.emails?.[0]?.value;return r||t};var Ml=gt(void 0,1,"ActionProvider"),mD=1e3,kl=class extends Error{constructor(t,r){super(`[daily-report] ${t} answered HTTP ${r}`),this.name="DailyReportActionHttpError",this.status=r}},NM=Object.freeze(["delete","deleteComment"]),fD=e=>e.intent==="create"?null:e.reportHubId,yD=(e,t)=>{let r=e;if(r.intent==="clearCache"||r.clientTempId!==t.clientTempId)return!1;let n=fD(t);return n===null||r.reportHubId===n},Qm=e=>{let{apiBasePath:t,labels:r,user:n,items:o,isSessionStillOurs:a,ownEchoIds:s,ledgers:i,writeLedgers:l,pendingAddPromises:d,removedIds:c,searchRemovedIds:u,setRemovedVersion:p,setRows:f,drafts:m,invalidateSearch:y,announceDataChange:g,notifyError:R}=e,D=async(T,A,I={})=>{let{intent:_}=T,{onGone:k}=A,{lockedReportHubId:O}=I,F=O===void 0?null:sp(O);A.onOptimistic?.(),s.add(T.clientTempId);let $=()=>{if(!a())throw Ml.warn(`[executeAction] ${_} resolved after a user switch; discarding continuation`),new Error(`Stale continuation for ${_}`)};try{let j=await fetch(`${t}/${Ve.action}`,{method:"POST",body:Qa(T),headers:{Accept:"application/json"}});if(j.status===404&&k!==void 0)return $(),k();if(!j.ok)throw new kl(_,j.status);let W=ym(_,await j.json());if("mismatch"in W)throw new Error(`[daily-report] ${_} answered a body that is not its result (${W.mismatch})`);let{result:V}=W;if(!yD(V,T))throw new Error(`[daily-report] ${_} answered another request`);return $(),A.onSuccess(V)}catch(j){throw Ml.error(`${_} failed:`,j),a()&&(A.onFailure?.(),R({operation:_,message:r.operationFailed(_),cause:j})),j}finally{F?.()}},b=(T,A,I)=>({reportHubId:T,clientTempId:I,businessDate:typeof A=="string"?A:null,operationTimestamp:Date.now()});return{addComment:async(T,A,I)=>{let _=Ol(Date.now()),k=D({...b(T,I,String(_)),intent:"addComment",content:A},{onOptimistic:()=>{l(({pendingAddCommentIds:O})=>{let F=O.get(T);F===void 0?O.set(T,new Map([[_,A]])):F.set(_,A)})},onSuccess:({newComment:O})=>{let F=O.id;l(({resolvedIdMap:j,pendingAddCommentIds:W})=>{j.set(_,F),W.get(T)?.delete(_)}),y();let $=dt(T,{ignoreExpiry:!0});return $&&!$.postedComments.some(j=>j.id===F)&&Et(T,{postedComments:[...$.postedComments,{...O,isMine:!0,userName:or(n,r.unknownUser)}]}),F},onFailure:()=>{l(({pendingAddCommentIds:O})=>O.get(T)?.delete(_))}}).finally(()=>d.current.delete(_));d.current.set(_,k),await k},deleteComment:async(T,A,I)=>{l(({pendingDeleteCommentIds:O})=>{let F=O.get(T);F===void 0?O.set(T,new Set([A])):F.add(A)});let _=A;if(A<0){let O=i.resolvedIdMap.current.get(A);if(O!==void 0)_=O;else{let F=d.current.get(A);if(!F)return;try{_=await F}catch{return}}}let k=()=>{let O=dt(T,{ignoreExpiry:!0});O&&(Et(T,{postedComments:O.postedComments.filter(F=>F.id!==_)}),lp(_)),l(({pendingDeleteCommentIds:F})=>F.get(T)?.delete(A)),y()};await D({...b(T,I,crypto.randomUUID()),intent:"deleteComment",commentId:_},{onSuccess:k,onGone:k,onFailure:()=>{l(({pendingDeleteCommentIds:O})=>O.get(T)?.delete(A))}})},toggleStar:async(T,A,I)=>{await D({...b(T,I,crypto.randomUUID()),intent:"toggleStar",value:A},{onOptimistic:()=>{Et(T,{isStarred:A}),l(({pendingStarUpdates:_})=>_.set(T,A))},onSuccess:({updatedStatus:_})=>{dt(T,{ignoreExpiry:!0})&&(Et(T,{isStarred:_.isStarred}),g()),l(({pendingStarUpdates:k})=>k.delete(T))},onFailure:()=>{Et(T,{isStarred:!A}),l(({pendingStarUpdates:_})=>_.delete(T))}})},toggleRead:async(T,A,I)=>{await D({...b(T,I,crypto.randomUUID()),intent:"toggleRead",value:A},{onOptimistic:()=>{Et(T,{isRead:A}),l(({pendingReadUpdates:_})=>_.set(T,A))},onSuccess:({updatedStatus:_})=>{dt(T,{ignoreExpiry:!0})&&(Et(T,{isRead:_.isRead}),g()),l(({pendingReadUpdates:k})=>k.delete(T))},onFailure:()=>{Et(T,{isRead:!A}),l(({pendingReadUpdates:_})=>_.delete(T))}})},createReport:async T=>{let A=Ol(Date.now()),I=new Date().toISOString(),_={reportHubId:A,date:T,createdAt:I,author:or(n,r.unknownUser),userId:n===void 0?null:n.id,sourceType:zm,employeeName:or(n,r.unknownUser),updatedBy:or(n,r.unknownUser),updatedAt:I,category:null,creationCategory:null,visitTimeFrom:null,visitTimeTo:null,customerName:null,interviewers:[],subject:"",content:"",externalComments:[],isRead:!0,isStarred:!1,isDraft:!0,labels:[],postedComments:[],attachments:[]};ap(_,Date.now()+3e5,!1),f(k=>ns(k,{reportHubId:A,businessDate:T},Number.NEGATIVE_INFINITY));try{let k=await D({intent:"create",clientTempId:String(A),businessDate:T,operationTimestamp:Date.now()},{onSuccess:$=>$.report}),O=k.reportHubId,F=Ll();return wn({reportHubId:O,businessDate:T}),ip(O,mD),er(O,k),g(),y(),f($=>ns($r($,A),{reportHubId:O,businessDate:T},F)),O}catch(k){throw Ml.error("[createReport] Failed",k),f(O=>$r(O,A)),k}},updateReport:async(T,A,I)=>{await D({...b(T,I,crypto.randomUUID()),intent:"update",changes:{title:A.title,content:A.content}},{onSuccess:()=>{dt(T,{ignoreExpiry:!0})&&(Et(T,{subject:A.title,content:A.content}),g()),y()}},{lockedReportHubId:T})},publishReport:async(T,A)=>{let I=dt(T,{ignoreExpiry:!0});await D({...b(T,A,crypto.randomUUID()),intent:"publish"},{onOptimistic:()=>{I&&(Et(T,{isDraft:!1}),g())},onSuccess:({report:_})=>{_!==null&&(er(T,_),g()),A!==void 0&&wn({reportHubId:T,businessDate:A}),y()},onFailure:()=>{I&&(Et(T,{isDraft:I.isDraft}),g())}})},deleteReport:async(T,A)=>{let I=vp(o,T);c.current=xn(c.current,T),u.current.add(T),p(k=>k+1),Tn(T),I!==void 0&&f(k=>Tm(k,I));let _=()=>{Na(T,A),m.discard(T),y()};try{await D({...b(T,A,crypto.randomUUID()),intent:"delete"},{onSuccess:_,onGone:_},{lockedReportHubId:T})}catch(k){if(!a())return;c.current=jm(c.current,T),u.current.delete(T),p($=>$+1);let O=I===void 0?A:I.businessDate,F=Ll();throw O!==void 0&&wn({reportHubId:T,businessDate:O}),f($=>{let j=xl($,T);return I===void 0?j:ns(j,I,F)}),k}}}};var Jm=gt(void 0,1,"ActionProvider"),RD=3e4,ef=e=>ps(RD,e,(t,r)=>{r.unsubscribe(),Jm.warn(`[SSE Queue] Expired: reportHubId=${t}, dropped=${r.messages.length} messages`)}),hD=(e,t)=>{t!==void 0&&wn({reportHubId:e,businessDate:t})},tf=e=>{let{user:t,userId:r,labels:n,isSessionStillOurs:o,ownEchoIds:a,ledgers:s,writeLedgers:i,removedIds:l,searchRemovedIds:d,setRemovedVersion:c,setRows:u,drafts:p,invalidateSearch:f,announceDataChange:m,pendingSseQueue:y,replay:g}=e,R=(b,h)=>{let S=y.get(b);if(S!==void 0){S.messages.push(h);return}let w;w={messages:[h],unsubscribe:dp(b,()=>{if(y.get(b)===w&&dt(b,{ignoreExpiry:!0})){y.remove(b),w.unsubscribe(),Jm.info(`[SSE Queue] Replaying ${w.messages.length} messages for reportHubId=${b}`);for(let E of w.messages)g(E)}})},y.add(b,w)};return b=>{if(o()&&!a.has(b.clientTempId))switch(b.type!=="status-update"&&f(),b.type){case"comment-add":{let{comment:h,reportHubId:S}=b,w=dt(S,{ignoreExpiry:!0});if(w){if(w.postedComments.some(N=>N.id===h.id))return;let x=typeof r=="string"&&h.userId===r,E={...h,userName:h.userName||(x?or(t,n.unknownUser):n.unknownUser),createdAt:h.createdAt||new Date().toISOString(),isMine:x},L={...w,postedComments:[...w.postedComments,E].sort((N,M)=>new Date(N.createdAt||0).getTime()-new Date(M.createdAt||0).getTime())};er(S,L),qi(S),m()}else R(S,b);break}case"comment-delete":{let{commentId:h,reportHubId:S}=b,w=dt(S,{ignoreExpiry:!0});if(w){let x={...w,postedComments:w.postedComments.filter(E=>E.id!==h)};er(S,x),qi(S),m()}else R(S,b);break}case"status-update":{let{statusType:h,value:S,reportHubId:w}=b,x=dt(w,{ignoreExpiry:!0});if(h==="star")if(s.pendingStarUpdates.current.get(w)===S&&i(({pendingStarUpdates:E})=>E.delete(w)),x){let E={...x,isStarred:S};er(w,E),m()}else R(w,b);else if(h==="read")if(s.pendingReadUpdates.current.get(w)===S&&i(({pendingReadUpdates:E})=>E.delete(w)),x){let E={...x,isRead:S};er(w,E),m()}else R(w,b);break}case"report-delete":{let{reportHubId:h}=b;l.current=xn(l.current,h),d.current.add(h),c(w=>w+1),Tn(h),u(w=>$r(w,h)),p.discard(h),y.remove(h)?.unsubscribe();let S=dt(h,{ignoreExpiry:!0});S?.date&&(Na(h,S.date),m());break}case"report-create":case"report-update":case"report-publish":{let{report:h}=b;b.viewerIsActor?er(h.reportHubId,h):cp(h),(b.type==="report-create"||b.type==="report-publish")&&hD(h.reportHubId,h.date),m();break}}}};import{memo as TD,useLayoutEffect as AD}from"react";import{systemSseRuntime as ms}from"@aiquants/sse";import{createBrowserEventSource as bD}from"@aiquants/sse/client";import{useReopeningEventSource as SD}from"@aiquants/sse/react";import{useEffect as Pl,useRef as fs,useState as gD}from"react";var jr=gt(void 0,1,"SseConnection"),ED=Object.freeze({kind:"resyncing"}),rf={initialDelayMs:2e3,maxDelayMs:3e4,multiplier:2},DD=1,nf=Li*3,wD=nf+Li,Fl=({isSseEnabled:e,onMessage:t})=>{let{ssePath:r,onSessionExpired:n}=z(),{streamAnchor:o,phase:a,isRevalidating:s,error:i}=An(),[l,d]=gD({generation:0,minAnchorRevision:1,anchored:!1}),c=l.generation>0&&!l.anchored,u=c&&a==="complete"&&!s?i:null,p=fs(0),f=fs(null),m=fs(n);m.current=n;let y=fs(0);y.current=o===null?0:o.revision,Pl(()=>{l.anchored||o===null||o.revision<l.minAnchorRevision||(f.current=o.lastEventId,p.current=0,d({...l,anchored:!0}))},[l,o]),Pl(()=>{if(!e||u===null)return;let{initialDelayMs:R,maxDelayMs:D,multiplier:b}=rf,h=ms.random()*Math.min(D,R*b**p.current);jr.warn(`SSE resync: the ids rescan gave up (${u.message}); rescanning in ${Math.round(h)} ms`);let S=ms.setTimer(()=>{p.current+=1,cs()},h);return()=>ms.clearTimer(S)},[e,u]);let{status:g}=SD(e&&l.anchored?`${r}#${l.generation}`:null,{resolveUrl:({lastEventId:R})=>R===null?r:`${r}?${Su}=${encodeURIComponent(R)}`,initialLastEventId:f.current,withCredentials:!1,createEventSource:bD,runtime:ms,backoff:rf,healthyOpenMs:wD,nativeRetryLimit:DD,giveUpAfterFailures:"never",terminalEvents:bu,heartbeat:{staleAfterMs:nf,onHeartbeat:null},events:{message:R=>{R.lastEventId!==""&&(pa(R.lastEventId)?f.current=R.lastEventId:jr.warn("SSE event carried a malformed id; keeping the previous cursor:",R.lastEventId));try{let D=JSON.parse(R.data),b=Au.safeParse(D);if(!b.success){jr.error("SSE Validation Error:",b.error.flatten(),"raw message:",D);return}if(b.data.type==="connected"){jr.info("SSE Subscribe Ready");return}t(b.data)}catch(D){jr.error("SSE Parse Error",D)}}}});return Pl(()=>{if(g.kind==="faulted"){jr.error("SSE connection faulted:",g.error);return}if(g.kind==="terminated")switch(g.terminalEvent){case"auth-required":m.current();return;case"forbidden":jr.warn("SSE stopped: the viewer is not registered (forbidden)");return;case"resync-required":{let R=y.current+1;d(D=>({generation:D.generation+1,minAnchorRevision:R,anchored:!1})),cs();return}}},[g]),e&&c?ED:g};var of=Object.freeze({kind:"idle"}),Hl=TD(({isSseEnabled:e,onMessage:t,onStatus:r})=>{let n=Fl({isSseEnabled:e,onMessage:t});return AD(()=>{r(n)},[n,r]),null});Hl.displayName="DailyReportSseConnectionHost";import{createContext as xD,useCallback as vD,useSyncExternalStore as af}from"react";var sf=()=>{let e=new Map,t=new Map,r=(n,o)=>{o===null?e.delete(n):e.set(n,o);let a=t.get(n);if(a!==void 0)for(let s of[...a])s()};return{modeOf:n=>{let o=e.get(n);return o===void 0?"display":o.mode},inputOf:n=>{let o=e.get(n);return o===void 0||o.mode==="dismissed"?null:o.input},subscribe:(n,o)=>{let a=t.get(n),s=a===void 0?new Set:a;return a===void 0&&t.set(n,s),s.add(o),()=>{s.delete(o),s.size===0&&t.get(n)===s&&t.delete(n)}},open:(n,o,a)=>{let s=e.get(n);s!==void 0&&s.mode!=="dismissed"||r(n,{mode:a?"automatic":"editing",input:o})},setInput:(n,o)=>{let a=e.get(n);a===void 0||a.mode==="dismissed"||r(n,{mode:a.mode,input:{...a.input,...o}})},dismiss:n=>{e.get(n)?.mode!=="dismissed"&&r(n,{mode:"dismissed"})},discard:n=>{e.has(n)&&r(n,null)}}},Bl=xD(null),Er=()=>Ct(Bl,"useDailyReportDraftStore","DailyReportActionProvider"),lf=(e,t)=>vD(r=>e.subscribe(t,r),[e,t]),ys=e=>{let t=Er(),r=()=>t.modeOf(e);return af(lf(t,e),r,r)},df=e=>{let t=Er(),r=()=>t.inputOf(e),n=af(lf(t,e),r,r);if(n===null)throw new Error(`[daily-report] the edit form is rendered for report ${e}, whose editor is not open`);return n};import{useOverlayEscapeStack as UD}from"@aiquants/swipe-overlay";import{createContext as WD,Fragment as KD,useCallback as Ss,useId as Ul,useLayoutEffect as Tf,useMemo as zD,useRef as Yr,useState as gf}from"react";import{createPortal as Ef}from"react-dom";import{createContext as _D,useContext as LD}from"react";var ID=new Set(["Alt","AltGraph","CapsLock","Control","Fn","FnLock","Hyper","Meta","NumLock","ScrollLock","Shift","Super","Symbol","SymbolLock"]),Rs={capture:!0},hs=new WeakMap,CD=e=>{let t=o=>{ID.has(o.key)||(n.last="keyboard")},r=()=>{n.last="pointer"},n={observers:0,last:null,detach:()=>{e.removeEventListener("keydown",t,Rs),e.removeEventListener("pointerdown",r,Rs)}};return e.addEventListener("keydown",t,Rs),e.addEventListener("pointerdown",r,Rs),n},cf=e=>{let t=hs.get(e),r=t===void 0?CD(e):t;t===void 0&&hs.set(e,r),r.observers+=1;let n=!1;return()=>{n||(n=!0,r.observers-=1,!(r.observers>0)&&(r.detach(),hs.delete(e)))}},Ao=e=>{let t=hs.get(e);return t===void 0?null:t.last};var ND=Object.freeze({visibilityProperty:!0,opacityProperty:!0}),OD=Object.freeze({visibilityProperty:!0}),uf="data-daily-report-view-tabs",pf={[uf]:""},mf="data-daily-report-status-panel",ff={[mf]:""},MD=e=>{for(let t of e.getClientRects())if(t.width>0&&t.height>0)return!0;return!1},yf=e=>e.isConnected&&mo(e)&&MD(e)&&e.checkVisibility(e.hasAttribute(Wa)?OD:ND),ar=e=>{for(let t of e)if(!(t===null||!yf(t))&&(t.focus({preventScroll:!0}),Ke(t)===t))return t;return null},kD=e=>e.querySelector(`[${uf}] [role="tab"][aria-selected="true"]`),Vl=_D(null),Rf=()=>{let e=LD(Vl);if(e===null)throw new Error("[daily-report] useFocusViewRow is called outside a view's rows");return e},PD=(e,t,r)=>{if(Fr(e))return!0;if(r==="handOver")return!1;let n=Ke(e);return n===null||!e.contains(n)?!1:r==="overlay"||n!==t},hf=(e,t,r)=>{if(r!=="pointer"||t===null)return e;let n=Bp(t);return n!==null&&yf(n)?n:e},bf=(e,t,r,n)=>PD(e,t,n)?ar([hf(t,r,Ao(e.ownerDocument))]):null,FD=e=>{let t=e.getAttribute("aria-activedescendant");return t===null?null:e.ownerDocument.getElementById(t)},bs=e=>{let t=Hp(e);return[t===null?null:hf(t,FD(t),Ao(t.ownerDocument)),kD(e),e.querySelector(`[${mf}]`)]};var Gr=e=>e.isComposing||e.keyCode===229,vn=e=>({key:e.key,keyCode:e.keyCode,altKey:e.altKey,ctrlKey:e.ctrlKey,metaKey:e.metaKey,shiftKey:e.shiftKey,defaultPrevented:e.defaultPrevented,isComposing:e.nativeEvent.isComposing,target:e.target});var HD={kind:"hold"},BD=new Set(["grid","listbox","menu","menubar","radiogroup","tablist","toolbar","tree","treegrid"]),VD=(e,t)=>{let r=e.getAttribute("role");return r!==null&&BD.has(r)&&e!==t&&e.contains(t)},sr=e=>e.key==="Escape"&&!e.defaultPrevented&&!Gr(e),Sf=(e,t)=>{if(e.key!=="Tab"||e.altKey||e.ctrlKey||e.metaKey||e.defaultPrevented||Gr(e))return null;let r=e.target;if(!(xe(r)&&t.contains(r)))return null;let n=ka(t);if(n.length===0)return HD;let{before:o,within:a,after:s}=po(t,r);return e.shiftKey?o.some(i=>!VD(i,r))?null:{kind:"wrap",element:n[n.length-1]}:a.length>0||s.length>0?null:{kind:"wrap",element:n[0]}};import{jsx as Ut,jsxs as xf}from"react/jsx-runtime";var $D=v("motion-safe:fade-in motion-safe:slide-in-from-bottom-2 flex w-fit min-w-0 max-w-full items-center gap-2 rounded-lg border border-red-300 border-solid bg-red-600 px-[15px] py-[7px] text-sm text-white shadow-lg motion-safe:animate-in motion-safe:duration-200 dark:border-red-500/60 dark:bg-red-700",fr),jD="flex shrink-0 justify-center p-[8px]",GD=v("flex size-6 shrink-0 items-center justify-center rounded font-bold text-white/90 hover:bg-red-700 hover:text-white dark:hover:bg-red-800",mc),YD="data-daily-report-notice-alert",qD={[YD]:""},Af=WD(null),gs=()=>Ct(Af,"useDailyReportErrorSurface","DailyReportErrorProvider"),Df=Object.freeze([]),wf=({notice:e})=>Ut("div",{role:"alert",...qD,className:"sr-only",children:e===null?null:Ut("span",{children:e.info.message},e.occurrence)}),XD=({notice:e,closeLabel:t,repeatedLabel:r,onDismiss:n})=>{let o=Yr(null),a=Yr(null),s=Yr(null),i=UD(),l=Ul(),d=Ul(),c=Ul(),u=e.repeat>1?`${d} ${c}`:d,p=Ss(()=>{let y=o.current;if(y?.contains(y.ownerDocument.activeElement)){let[g,...R]=bs(y.ownerDocument);ar([a.current,g,y.closest("dialog"),...R])}n()},[n]),f=y=>{if(s.current!==null)return;let g=y.relatedTarget;a.current=xe(g)&&!y.currentTarget.contains(g)?g:null,s.current=i({id:l,onEscape:R=>sr(R)?(p(),!0):!1})},m=y=>{xe(y.relatedTarget)&&y.currentTarget.contains(y.relatedTarget)||(s.current?.(),s.current=null,a.current=null)};return Tf(()=>()=>{s.current?.(),s.current=null},[]),xf("div",{ref:o,role:"group","aria-labelledby":u,"data-testid":"daily-report-error-banner",className:$D,onFocus:f,onBlur:m,children:[Ut("span",{id:d,className:"min-w-0 font-medium",children:Ut(KD,{children:e.info.message},e.occurrence)}),e.repeat>1&&Ut("span",{id:c,className:"shrink-0 font-normal tabular-nums",children:r(e.repeat)}),Ut("button",{type:"button","aria-label":t,"aria-describedby":u,onClick:p,className:GD,children:"\u2715"})]})},Wl=({children:e})=>{let{onError:t,labels:r}=z(),[n,o]=gf(null),[a,s]=gf(Df),i=Yr(Df),l=Yr(0),d=Yr(0),c=Yr(t);Tf(()=>{c.current=t});let u=Ss(D=>{let b=c.current;if(b){b(D);return}d.current+=1;let h=d.current,S=i.current,w=S.length===0?null:S[S.length-1].registration;o(x=>({info:D,occurrence:h,repeat:x!==null&&x.info.message===D.message?x.repeat+1:1,announcedIn:w}))},[]),p=Ss(D=>{l.current+=1;let b={element:D,registration:l.current};return i.current=[...i.current,b],s(i.current),()=>{i.current=i.current.filter(h=>h!==b),s(i.current)}},[]),f=Ss(()=>o(null),[]),m=zD(()=>({notifyError:u,registerNoticeHost:p}),[u,p]),y=a.at(-1),g=n===null?null:Ut(XD,{notice:n,closeLabel:r.close,repeatedLabel:r.noticeRepeated,onDismiss:f}),R=D=>n!==null&&n.announcedIn===D?n:null;return xf(Af.Provider,{value:m,children:[e,Ut(wf,{notice:R(null)}),a.map(D=>Ef(Ut(wf,{notice:R(D.registration)}),D.element,String(D.registration))),g!==null&&y!==void 0&&Ef(g,y.element),g!==null&&y===void 0&&Ut("div",{"data-daily-report-notice-slot":"",className:jD,children:g})]})};import{jsx as zl,jsxs as QD}from"react/jsx-runtime";var Es=gt(void 0,1,"ActionProvider"),ws=globalThis.__DailyReportActionsContext??_f(null);globalThis.__DailyReportActionsContext=ws;var Ts=globalThis.__DailyReportActionStateContext??_f(null);globalThis.__DailyReportActionStateContext=Ts;var Ds="DailyReportActionProvider",qe=()=>Ct(ws,"useDailyReportActions",Ds),As=()=>Ct(Ts,"useDailyReportActionState",Ds),ZD=()=>{let e=Ct(ws,"useDailyReportActionContext",Ds),t=Ct(Ts,"useDailyReportActionContext",Ds);return $l(()=>({...e,...t}),[e,t])},jl=({children:e,user:t,userId:r})=>{let{apiBasePath:n,labels:o}=z(),{notifyError:a}=gs(),[s,i]=Wt(0),[{ledgers:l,write:d}]=Wt(()=>Xm(()=>i(q=>q+1))),[c,u]=Wt(0),[p,f]=Wt(0),[m]=Wt(sf),[y,g]=Wt(!1),[R,D]=Wt(of),b=Kl(!1),h=Ue(qm),S=Kl(Gm),w=Ue(Ym),[x]=Wt(()=>$m(()=>performance.now())),[E]=Wt(()=>ef(()=>performance.now())),L=Km(),[N,M]=wm(L,L.settled,S.current),T=N.items,A=`${c}:${N.settled?N.revision:"-"}`,I=()=>{u(q=>q+1)},_=()=>{i(q=>q+1)},k=vf(q=>w.current.has(q),[w]),O=vf(()=>Mm()===(r??null),[r]),F=async()=>{Es.info("Refetching data without page reload..."),wo(),_(),ee.listeners.forEach(q=>{q(-1)})},$=async()=>{Es.info("Clearing client & server/DB cache and refetching data without page reload..."),uo(),S.current=new Set,w.current.clear(),f(q=>q+1),M(Am);try{sessionStorage.clear()}catch{}try{let q=await fetch(`${n}/${Ve.action}`,{method:"POST",body:Qa({intent:"clearCache"})});if(!q.ok){let he=await q.json().catch(()=>null);Es.warn("Failed to clear server-side cache:",q.status,he)}}catch(q){Es.warn("Failed to clear server-side cache:",q)}O()&&(wo({forceRefresh:!0}),_(),ee.listeners.forEach(q=>{q(-1)}))};Cf(()=>()=>{for(let q of E.drain())q.unsubscribe()},[E]);let j=()=>{r&&(b.current=!0,g(q=>!q))};If(()=>{if(!r)return;let q=setTimeout(()=>{b.current||g(!0)},Yu);return()=>clearTimeout(q)},[r]);let W=q=>{O()&&(S.current=xn(S.current,q),w.current.add(q),f(he=>he+1),Tn(q),M(he=>$r(he,q)),m.discard(q))};If(()=>{if(!N.settled)return;let q=new Set;for(let he of S.current)Nm(he)&&q.add(he);q.size!==S.current.size&&(S.current=q)},[N.settled,N.revision]);let V={user:t,userId:r,labels:o,apiBasePath:n,items:T,isSessionStillOurs:O,ownEchoIds:x,ledgers:l,writeLedgers:d,pendingSseQueue:E,pendingAddPromises:h,removedIds:S,searchRemovedIds:w,setRemovedVersion:f,setRows:M,drafts:m,invalidateSearch:I,announceDataChange:_,replay:q=>De.current.handleSseMessage(q),notifyError:q=>De.current.notifyError(q)},le=tf(V),Te=Qm(V),be={toggleSse:j,...Te,removeStaleItem:W,refetchData:F,clearCacheAndRefetch:$,handleSseMessage:le,notifyError:a},De=Kl(be);Cf(()=>{De.current=be});let[se]=Wt(()=>Zm(De)),Ze=$l(()=>({...l,...se.functions,user:t}),[l,se,t]),We=$l(()=>({version:s,items:T,isSseEnabled:y,sseStatus:R,searchInvalidation:A,isReportRemoved:k,removedVersion:p}),[s,T,y,R,A,k,p]);return zl(Bl.Provider,{value:m,children:zl(ws.Provider,{value:Ze,children:QD(Ts.Provider,{value:We,children:[zl(Hl,{isSseEnabled:y,onMessage:se.onSseMessage,onStatus:D}),e]})})})};var Lf=(e,t)=>e.split(t).length-1,Nf=(e,t,r)=>{let n=e("\uE000","\uE001");if(Lf(n,"\uE000")!==1||Lf(n,"\uE001")!==1)return null;let o=n.indexOf("\uE000"),a=n.indexOf("\uE001"),s=[{at:o,part:{kind:"name"}},{at:a,part:{kind:"affiliation"}}];s.sort((c,u)=>c.at-u.at);let i=[],l=0;for(let{at:c,part:u}of s)c>l&&i.push({kind:"text",text:n.slice(l,c)}),i.push(u),l=c+1;return l<n.length&&i.push({kind:"text",text:n.slice(l)}),i.map(c=>c.kind==="text"?c.text:c.kind==="name"?t:r).join("")===e(t,r)?i:null};import{useContext as dw,useLayoutEffect as cw,useMemo as Xl}from"react";import{createContext as Ff,createElement as nw,useCallback as Pf,useContext as ql,useDeferredValue as ow,useLayoutEffect as aw,useMemo as Yl,useSyncExternalStore as sw}from"react";var Of=Object.freeze({subject:"subject",content:"content",author:"author",employeeName:"author",updatedBy:"updatedBy",category:"category",creationCategory:"creationCategory",customerName:"customer",interviewer:"interviewers",attachment:"attachments",comment:"comments"}),JD=e=>Object.hasOwn(Of,e),ew=e=>{let t=e.indexOf(":"),r=t===-1?e:e.slice(0,t);if(!(En(e)&&JD(r)))throw new Error(`[daily-report] A search mark leaf carries an unknown field key: ${e}`);return Of[r]},tw=Object.freeze([]),Mf=(e,t)=>e.map(({heading:r,matchedBy:n})=>n==="reading"?t.searchFieldMatchedByReading(t[r]):t.searchFieldMatched(t[r])).join(" "),Gl=e=>e.words>0||e.dense>0?"word":e.readings>0?"reading":null,rw=(e,t)=>e.length===t.length&&e.every((r,n)=>r.heading===t[n].heading&&r.matchedBy===t[n].matchedBy),kf=()=>{let e=new Map,t=new Map,r=new Set,n=null,o=0,a=0,s=tw,i=!1,l=Object.freeze({entry:n,isCurrent:!0,count:o,fields:s}),d=!1,c=l,u=!1,p=b=>!b.isCurrent||b.entry!==n,f=()=>{let b=[];for(let[h,S]of t){let w=Gl(S);w!==null&&b.push(Object.freeze({heading:h,matchedBy:w}))}return Object.freeze(b)},m=()=>{if(!d)return l;d=!1;for(let[h,S]of t)S.leaves===0&&t.delete(h);let b=a===0;if(i){i=!1;let h=f();rw(h,s)||(s=h)}return l.entry===n&&l.isCurrent===b&&l.count===o&&l.fields===s||(l=Object.freeze({entry:n,isCurrent:b,count:o,fields:s})),l},y=()=>{u=!1;let b=m();if(b!==c){c=b;for(let h of[...r])h()}},g=()=>{d=!0,!u&&(u=!0,queueMicrotask(y))},R=b=>{let h=t.get(b);if(h!==void 0)return h;let S={leaves:0,words:0,readings:0,dense:0};return t.set(b,S),S},D=(b,h)=>{o+=h*(b.words+b.readings),p(b)&&(a+=h);let S=R(b.heading),w=Gl(S);S.leaves+=h,S.words+=h*b.words,S.readings+=h*b.readings,b.dense&&(S.dense+=h),Gl(S)!==w&&(i=!0)};return{register:b=>{let h={...b,heading:ew(b.fieldKey)},S=Object.freeze({});return e.set(S,h),D(h,1),g(),S},unregister:b=>{let h=e.get(b);h!==void 0&&(e.delete(b),D(h,-1),g())},settle:b=>{if(b!==n){n=b,a=0;for(let h of e.values())p(h)&&(a+=1);g()}},subscribe:b=>(r.add(b),()=>{r.delete(b)}),getSnapshot:m}};var rt=Ff(null),Hf=Ff(null),xo=()=>{let e=ql(Hf);if(e===null)throw new Error("[daily-report] A search marks part is drawn outside a row's marks scope (DailyReportSearchMarksScope) while the screen holds a marks store");return e},iw=()=>{},lw=()=>iw,Bf=e=>{let t=ql(rt),r=Pf(i=>t===null?lw():t.subscribe(e,i),[t,e]),n=Pf(()=>{let i=t===null?void 0:t.read(e);return i===void 0?null:i},[t,e]),o=sw(r,n,n),a=Yl(()=>t===null||o===null?null:{store:t,entry:o},[t,o]),s=ow(a,a===null?void 0:null);return s!==null&&s.store===t?s.entry:null},In=({reportHubId:e,entry:t,children:r})=>{let n=ql(rt),o=Yl(()=>n===null?null:kf(),[n]),a=Yl(()=>n===null||o===null?null:{entry:t,revalidate:(s,i)=>n.revalidate(e,s,i),tally:o,indicator:n.indicator},[n,o,t,e]);return aw(()=>{o!==null&&o.settle(t)},[o,t]),nw(Hf.Provider,{value:a},r)};import{jsx as Uf}from"react/jsx-runtime";var uw="data-daily-report-search-mark",pw=Object.freeze({[ln.word]:Object.freeze({attribute:"word",description:null}),[ln.reading]:Object.freeze({attribute:"reading",description:"searchReadingMarkDescription"})}),Vf=e=>{if(!oo(e))throw new Error(`[daily-report] A search mark carries an unknown tier: ${e}`);return pw[e]},mw=Object.freeze({words:0,readings:0}),fw=e=>{if(e===null)return mw;let t=0;for(let r=2;r<e.length;r+=3)Vf(e[r]).attribute==="reading"&&(t+=1);return{words:e.length/3-t,readings:t}},yw=(e,t,r)=>{let n=[],o=0;for(let a=0;a<t.length;a+=3){let s=t[a],i=t[a+1],l=Vf(t[a+2]);s>o&&n.push(e.slice(o,s)),n.push(Uf("mark",{[uw]:l.attribute,"aria-description":l.description===null?void 0:r[l.description],className:kc,children:e.slice(s,i)},`m${s}`)),o=i}return o<e.length&&n.push(e.slice(o)),n},Rw=({fieldKey:e,raw:t,display:r})=>{let{entry:n,revalidate:o,tally:a}=xo(),{labels:s}=z(),i=typeof t=="string"?t:"",l=Xl(()=>n===null||i.length===0?null:Sl(i),[n,i]),d=n===null?void 0:n.fields[e],c=d!==void 0&&l!==null&&d.fingerprint===l?d:null,u=c!==null&&"ranges"in c?c.ranges:null,p=c!==null&&"dense"in c,f=c!==null,m=Xl(()=>u===null?null:Gc(r,u),[u,r]),y=Xl(()=>fw(m),[m]);return cw(()=>{if(l===null)return;f||o(e,l);let g=a.register({entry:n,isCurrent:f,fieldKey:e,words:y.words,readings:y.readings,dense:p});return()=>a.unregister(g)},[a,o,n,l,f,e,y,p]),m===null||m.length===0?r.text:yw(r.text,m,s)},pe=({fieldKey:e,raw:t,display:r})=>dw(rt)===null?r.text:Uf(Rw,{fieldKey:e,raw:t,display:r});import{jsx as bw}from"react/jsx-runtime";var hw={2:"h2",3:"h3",4:"h4",5:"h5",6:"h6"},Dr=Object.freeze({2:3,3:4,4:5,5:6}),pt=({level:e,...t})=>{let r=hw[e];return bw(r,{...t})};import{memo as Ay,useId as RT,useMemo as hT,useRef as xy}from"react";var Wf=Object.freeze({tile:Object.freeze({maxWidth:480,maxHeight:320})});var Ql="tile",Io=Wf[Ql],Sw=2,vo=16,Kf=5,zf=Io.maxWidth/Sw,gw=Kf*(zf+vo)-vo,$f=e=>{let t=Math.min(Kf,1+Math.floor((e+vo)/(zf+vo)));return Math.floor((Math.min(e,gw)-(t-1)*vo)/t)},Zl=`round(nearest, 100cqi * ${Io.maxHeight} / ${Io.maxWidth}, 1px)`,jf=Object.freeze({aspectRatio:`${Io.maxWidth} / ${Io.maxHeight}`,height:Zl,contain:"strict"}),Ew="--aqdr-lattice-block",Gf=Object.freeze({marginBlockEnd:`calc(round(up, ${Zl}, var(${Ew})) - ${Zl})`});var Dw="download",ww="thumbnail",Tw="1",Cn=(e,t,r)=>{let n=`${e}/attachment/${encodeURIComponent(t)}`;switch(r.kind){case"inline":return n;case"download":return`${n}?${new URLSearchParams({[Dw]:Tw})}`;case"thumbnail":return`${n}?${new URLSearchParams({[ww]:r.variant})}`}};import{createContext as Aw,useContext as xw}from"react";var Jl=Aw(null),_n=()=>xw(Jl)===!1?-1:void 0,Yf=(e,t)=>{let{before:r,after:n}=po(e.ownerDocument,e);return(t==="before"?r.at(-1):n[0])??null},qf=(e,t,r)=>{if(t===null)return!r&&ka(e).length>0;if(!e.contains(t))return!1;let{before:n,within:o,after:a}=po(e,t);return r?n.length>0:o.length>0||a.length>0};import{createContext as Nw,useContext as Ow,useLayoutEffect as Mw,useMemo as ny,useState as kw}from"react";import{flushSync as Pw}from"react-dom";import{flushSync as vw}from"react-dom";var ed=new WeakMap,Xf=e=>e.observedTrackWidth!==null&&e.observedTrackWidth!==e.handedTrackWidth,Zf=e=>e.overflowWidth!==null&&e.overflowWidth!==e.handedOverflowWidth,Iw=(e,t)=>{for(let r=t.parentElement;r!==null;r=r.parentElement){let n=e.observations.get(r);if(n!==void 0)return n}return null},Qf=(e,t,r)=>{let n=Iw(e,t);return n===null||n.handedTrackWidth===null||r<=n.handedTrackWidth?null:{track:n,trackWidth:n.handedTrackWidth}},Cw=e=>{e.frame=null;let t=new Map;for(let r of e.observations.values())Xf(r)&&t.set(r,r.observedTrackWidth);for(let[r,n]of e.fittedNames){if(!Zf(n))continue;let o=n.overflowWidth;n.handedOverflowWidth=o;let a=Qf(e,r,o);a===null||t.has(a.track)||t.set(a.track,a.trackWidth)}t.size!==0&&vw(()=>{for(let[r,n]of t)r.handedTrackWidth=n,r.onTrackWidth(n)})},_w=(e,t)=>{for(let r of t){let n=r.contentBoxSize[0].inlineSize;if(n===0)continue;let o=e.observations.get(r.target);if(o!==void 0){o.observedTrackWidth=o.trackWidthOf(n);continue}let a=e.fittedNames.get(r.target);if(a!==void 0){if(Qf(e,r.target,n)!==null){a.overflowWidth=n;continue}a.overflowWidth=null,a.handedOverflowWidth=null}}e.frame!==null||!([...e.observations.values()].some(Xf)||[...e.fittedNames.values()].some(Zf))||(e.frame=e.view.requestAnimationFrame(()=>Cw(e)))},Lw=e=>{let t=ed.get(e);if(t!==void 0)return t;let r=e.defaultView;if(r===null)throw new Error("[daily-report] An attachment name track must belong to a document with a window to be measured");let n={view:r,observer:new r.ResizeObserver(o=>_w(n,o)),observations:new Map,fittedNames:new Map,frame:null};return ed.set(e,n),n},Jf=(e,t)=>{let r=Lw(e.ownerDocument);if(r.observations.has(e)||r.fittedNames.has(e))throw new Error(t);return r},ey=(e,t)=>{e.observer.unobserve(t),!(e.observations.size>0||e.fittedNames.size>0)&&(e.frame!==null&&e.view.cancelAnimationFrame(e.frame),e.observer.disconnect(),ed.delete(e.view.document))},ty=(e,t,r)=>{let n=Jf(e,"[daily-report] An attachment name track is already observed"),o={trackWidthOf:t,onTrackWidth:r,observedTrackWidth:null,handedTrackWidth:null};return n.observations.set(e,o),n.observer.observe(e),()=>{n.observations.get(e)===o&&(n.observations.delete(e),ey(n,e))}},ry=e=>{let t=Jf(e,"[daily-report] A fitted attachment file name is already observed"),r={overflowWidth:null,handedOverflowWidth:null};return t.fittedNames.set(e,r),t.observer.observe(e),()=>{t.fittedNames.get(e)===r&&(t.fittedNames.delete(e),ey(t,e))}};import{jsx as Kt,jsxs as iy}from"react/jsx-runtime";var nd="\u2026",Fw=nd.codePointAt(0),oy=Object.freeze({text:nd,runs:Object.freeze([])}),xs="data-attachment-file-name",Hw=Ne("block min-w-0"),Bw="block w-fit whitespace-nowrap",Vw=new Set([" ","\xA0","\u1361","\u{10100}","\u{10101}","\u{1039F}","\u{1091F}"," ",`
5
+ `,"\f","\r"]),Uw=/^-?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?px$/,od=({fileName:e})=>Kt("span",{className:kt,children:e}),Ww=/"([^"]*)"|'([^']*)'|([^\s,"'][^,"']*)/g,Kw=/^U\+([\dA-F?]{1,6})(?:-([\dA-F]{1,6}))?$/i,ad=Nw(null),ly=e=>{let t=e.text.lastIndexOf(".");return t<=0||t===e.text.length-1?{stem:e,extension:bt("")}:{stem:Yn(e,0,t),extension:Yn(e,t,e.text.length)}},td=(e,t,r,n)=>{let o=Array.from(e.text),a=0,s=o.length-1;for(;a<s;){let i=Math.ceil((a+s)/2);n(o.slice(0,i).join("")+t)<=r?a=i:s=i-1}return Yn(e,0,o.slice(0,a).join("").length)},zw=(e,t,r)=>{if(r(e)<=t)return bt(e);let{stem:n,extension:o}=ly(jc(e)),a=t/2,s=r(o.text)<=a?o:on([td(o,nd,a,r),oy]);if(r(n.text+s.text)<=t)return on([n,s]);let i=on([oy,s]);return r(i.text)>t?td(i,"",t,r):on([td(n,i.text,t,r),i])},ay=new WeakMap,dy=e=>{let t=ay.get(e);if(t!==void 0)return t;let r=e.createElement("canvas").getContext("2d");if(r===null)throw new Error("[daily-report] Attachment file names are fitted with a canvas 2D context, which this document cannot create");let n={context:r,font:"",measures:new Map};return ay.set(e,n),n},cy=(e,t,r)=>`${e}|${t}|${r}`,$w=(e,t,r,n)=>{let o=cy(t,r,n),a=e.measures.get(o);if(a!==void 0)return a;let s=i=>{e.font!==t&&(e.context.font=t,e.font=t);let l=0;for(let d of i)l+=Vw.has(d)?r+n:r;return e.context.measureText(i).width+l};return e.measures.set(o,s),s},uy=e=>{let t=new Set;for(let r of e.matchAll(Ww)){let n=r.slice(1).find(o=>o!==void 0);t.add(n.trim().replace(/\s+/g," ").toLowerCase())}return t},sy=e=>e==="normal"?0:Uw.test(e)?Math.max(Number.parseFloat(e),0):null,jw=e=>{let t=getComputedStyle(e),r=sy(t.letterSpacing),n=sy(t.wordSpacing);if(r===null||n===null)return null;let o=`${t.fontStyle} ${t.fontWeight} ${t.fontSize} ${t.fontFamily}`;return{font:o,letterSpacing:r,wordSpacing:n,families:uy(t.fontFamily),measure:$w(dy(e.ownerDocument),o,r,n)}},Gw=(e,t)=>e===t||e!==null&&t!==null&&e.width===t.width&&e.measure===t.measure,Yw=e=>{let t=new Set([Fw]);for(let r of e.querySelectorAll(`[${xs}]`)){let n=r.getAttribute(xs);for(let o of n+n.normalize("NFC"))t.add(o.codePointAt(0))}return t},qw=(e,t)=>{for(let r of e.split(",")){let n=Kw.exec(r.trim());if(n===null)return!0;let[,o,a]=n,s=Number.parseInt(o.replaceAll("?","0"),16),i=a===void 0?Number.parseInt(o.replaceAll("?","F"),16):Number.parseInt(a,16);for(let l of t)if(l>=s&&l<=i)return!0}return!1},rd=new WeakMap,py=e=>{let t=rd.get(e);if(t!==void 0)return t;let r={document:e,registrations:new Set,stopWatchingFonts:null};return rd.set(e,r),r},my=(e,t)=>{let r=jw(e.container.querySelector(`[${xs}]`));if(r===null){e.fitted=null,e.applyFit(null);return}e.fitted={trackWidth:t,nameFont:r};let n=py(e.container.ownerDocument);n.stopWatchingFonts===null&&(n.stopWatchingFonts=Zw(n)),e.applyFit({width:t,measure:r.measure})},Xw=(e,t)=>{let r=t.map(o=>({families:uy(o.family),unicodeRange:o.unicodeRange})),n=[];for(let o of e.registrations){let{fitted:a}=o;if(a===null)continue;let s=r.filter(l=>Array.from(l.families).some(d=>a.nameFont.families.has(d)));if(s.length===0)continue;let i=Yw(o.container);s.some(l=>qw(l.unicodeRange,i))&&(dy(e.document).measures.delete(cy(a.nameFont.font,a.nameFont.letterSpacing,a.nameFont.wordSpacing)),n.push([o,a.trackWidth]))}n.length!==0&&Pw(()=>{for(let[o,a]of n)my(o,a)})},Zw=e=>{let t=e.document.fonts,r=n=>{Xw(e,n.fontfaces)};return t.addEventListener("loadingdone",r),()=>{t.removeEventListener("loadingdone",r)}},Qw=(e,t,r)=>{let n={container:e,applyFit:r,fitted:null},o=ty(e,t,s=>my(n,s)),a=py(e.ownerDocument);return a.registrations.add(n),()=>{o(),a.registrations.delete(n),!(a.registrations.size>0)&&(a.stopWatchingFonts?.(),rd.delete(a.document))}},fy=(e,t)=>{let[r,n]=kw(null);return Mw(()=>{let o=e.current;return Qw(o,t,s=>{n(i=>Gw(i,s)?i:s)})},[e,t]),r},yy=({containerRef:e,children:t})=>{let r=fy(e,$f);return Kt(ad,{value:r,children:t})},Jw=e=>e,Ry=({containerRef:e,children:t})=>{let r=fy(e,Jw);return Kt(ad,{value:r,children:t})},Co=({fileName:e,attachmentIndex:t,className:r,testId:n})=>{let o=Ow(ad),a=ny(()=>o===null?null:zw(e,o.width,o.measure),[e,o]),{stem:s,extension:i}=ny(()=>ly(bt(e)),[e]),l=fe.attachment(t);return iy("span",{className:Hw(r),title:e,"data-testid":n,[xs]:e,children:[a===null?iy("span",{"aria-hidden":"true",className:"flex min-w-0",children:[Kt("span",{className:"truncate",children:Kt(pe,{fieldKey:l,raw:e,display:s})}),i.text!==""&&Kt("span",{className:"max-w-1/2 shrink-0 truncate",children:Kt(pe,{fieldKey:l,raw:e,display:i})})]}):Kt("span",{ref:ry,"aria-hidden":"true",className:Bw,children:Kt(pe,{fieldKey:l,raw:e,display:a})}),Kt(od,{fileName:e})]})};import oT from"lucide-react/dist/esm/icons/image-off.js";import{memo as aT,useCallback as ld,useEffect as sT,useLayoutEffect as iT,useRef as dd,useState as lT}from"react";var vs=Object.freeze({queueWaitMs:3e4,readMs:3e4,renderMs:1e4,transferMarginMs:5e3}),hy=vs.queueWaitMs+vs.readMs+vs.renderMs+vs.transferMarginMs;var eT=Object.freeze({kind:"loaded"}),by=(e,t,r,n,o)=>{let{limiter:a,tuning:s}=n,i="watching",l=null,d=null,c=null,u=null,p=null,f=A=>(A!==null&&n.clearTimeout(A),null),m=()=>{u?.(),u=null},y=()=>{p?.(),p=null},g=A=>A===null||A.kind==="loaded"?0:A.kind==="failing"?A.failedAttempts:s.maxAttempts,R=A=>{i="cooling",c=n.setTimeout(L,A)},D=()=>{o.abortInFlight(),y();let A=g(r.get(t))+1;if(A>=s.maxAttempts){i="done",r.set(t,{kind:"exhausted",failedAt:n.now()}),o.exhausted();return}r.set(t,{kind:"failing",failedAttempts:A,retryAt:n.now()+s.retryDelayMs}),o.reset(),R(s.retryDelayMs)},b=A=>{if(i==="loading"){if(d=f(d),!A){D();return}i="done",r.set(t,eT),y()}},h=()=>{d=null,b(!1)},S=()=>{i="loading",o.showActivity(!0),m(),d=n.setTimeout(h,s.loadTimeoutMs),o.grant()},w=()=>{l=null,i="queued",p=a.request(S)},x=()=>{l===null&&(l=n.setTimeout(w,s.settleMs))},E=A=>{if(o.showActivity(A),A){i==="watching"&&x();return}if(i==="queued"){y(),i="watching";return}l=f(l)},L=()=>{c=null,i="watching",o.showActivity(!1),u=n.observe(e,E)},N=()=>{let A=i==="loading";i="done",m(),l=f(l),d=f(d),c=f(c),o.showActivity(!1),A&&(o.abortInFlight(),p!==null&&o.reset()),y()},M=r.get(t);if(M?.kind==="loaded")return i=o.shows()?"done":"loading",o.grant(),{settle:b,dispose:N};if(M?.kind==="exhausted"){if(n.now()-M.failedAt<s.failureMemoryMs)return i="done",o.exhausted(),{settle:b,dispose:N};r.delete(t)}o.reset();let T=M?.kind==="failing"?M.retryAt-n.now():0;return T>0?R(T):L(),{settle:b,dispose:N}};var tT=e=>{tt("createLoadSlotLimiter: limit",e,1);let t=0,r=new Set,n=()=>{for(let o of r){r.delete(o),o.onGranted();return}t-=1};return{request:o=>{let a={onGranted:o},s=!1;return t<e?(t+=1,o()):r.add(a),()=>{s||(s=!0,!r.delete(a)&&n())}}}},Sy=tT(2);var rT=e=>{tt("createThumbnailProgressStore: maxUrls",e,1);let t=new Map,r=(n,o)=>{t.delete(n),t.set(n,o)};return{peek:n=>t.get(n)??null,get:n=>{let o=t.get(n);return o===void 0?null:(r(n,o),o)},set:(n,o)=>{if(r(n,o),t.size<=e)return;let[a]=t.keys();t.delete(a)},delete:n=>{t.delete(n)}}},sd=rT(1024);var id=new WeakMap,nT=e=>{let t=id.get(e);if(t!==void 0)return t;let r=e.defaultView;if(r===null)throw new Error("[daily-report] A thumbnail frame must belong to a document with a window to be observed");let n=new WeakMap,a={observer:new r.IntersectionObserver(s=>{for(let i of s)n.get(i.target)?.onChange(i.isIntersecting)}),observations:n,observed:0};return id.set(e,a),a},gy=(e,t)=>{let r=e.ownerDocument,n=nT(r);if(n.observations.has(e))throw new Error("[daily-report] A thumbnail frame is already observed");let o={onChange:t};return n.observations.set(e,o),n.observed+=1,n.observer.observe(e),()=>{n.observations.get(e)===o&&(n.observations.delete(e),n.observer.unobserve(e),n.observed-=1,!(n.observed>0)&&(n.observer.disconnect(),id.delete(r)))}};import{jsx as _o,jsxs as yT}from"react/jsx-runtime";var dT={idle:"pending",granted:"pending",loaded:"loaded",failed:"unavailable"},cT="data-thumbnail-active",uT="data-daily-report-attachment-preview",Dy={[uT]:""},pT=Object.freeze({settleMs:250,loadTimeoutMs:hy,retryDelayMs:5e3,maxAttempts:2,failureMemoryMs:6e4}),Ey=e=>{let t=sd.peek(e);return t?.kind==="loaded"?{url:e,status:"loaded"}:t?.kind==="exhausted"?{url:e,status:"failed"}:{url:e,status:"idle"}},mT=()=>({limiter:Sy,now:()=>performance.now(),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),observe:gy,tuning:pT}),fT=(e,t,r,n)=>({grant:()=>r(o=>o.url!==e||o.status==="granted"||o.status==="loaded"?o:{url:e,status:"granted"}),reset:()=>r(o=>o.url!==e||o.status==="idle"?o:{url:e,status:"idle"}),exhausted:()=>r(o=>o.url!==e||o.status==="failed"?o:{url:e,status:"failed"}),abortInFlight:()=>{let o=n.current;o?.getAttribute("src")===e&&o.removeAttribute("src")},shows:()=>{let o=n.current;return o?.getAttribute("src")===e&&o.complete&&o.naturalWidth>0},showActivity:o=>{t.toggleAttribute(cT,o)}}),wy=aT(({thumbnailUrl:e,unavailableLabel:t})=>{let r=dd(null),n=dd(null),o=dd(null),[a,s]=lT(()=>Ey(e));a.url!==e&&s(Ey(e)),iT(()=>{if(a.status==="failed")return;let c=n.current,u=a.status==="idle"?null:a.url;c.getAttribute("src")!==u&&(u===null?c.removeAttribute("src"):c.setAttribute("src",u))},[a]),sT(()=>{let c=r.current,u=by(c,e,sd,mT(),fT(e,c,s,n));return o.current=u,()=>{o.current=null,u.dispose()}},[e]);let i=ld(c=>{c!==null&&(n.current=c)},[]),l=ld(()=>{s(c=>c.status==="granted"?{url:c.url,status:"loaded"}:c),o.current?.settle(!0)},[]),d=ld(()=>{o.current?.settle(!1)},[]);return _o("span",{className:"block",children:_o("span",{ref:r,"aria-hidden":"true","data-testid":"daily-report-attachment-thumbnail-frame","data-thumbnail-state":dT[a.status],style:jf,className:"relative block w-full",children:_o("span",{"data-testid":"daily-report-attachment-thumbnail-skin",className:"absolute inset-0 flex items-center justify-center overflow-hidden rounded-lg bg-slate-100 after:pointer-events-none after:absolute after:inset-0 after:rounded-[inherit] after:ring-1 after:ring-slate-900/10 after:ring-inset dark:bg-slate-800 dark:after:ring-white/10 [[data-daily-report-attachment-preview]:active_&]:after:ring-blue-500 dark:[[data-daily-report-attachment-preview]:active_&]:after:ring-blue-400 motion-safe:[[data-thumbnail-state=pending][data-thumbnail-active]_&]:animate-pulse [[data-thumbnail-state=pending]_&]:bg-slate-200 dark:[[data-thumbnail-state=pending]_&]:bg-slate-700 [@media(hover:hover)]:[[data-daily-report-attachment-preview]:hover:not(:active)_&]:after:ring-blue-300 dark:[@media(hover:hover)]:[[data-daily-report-attachment-preview]:hover:not(:active)_&]:after:ring-blue-400/60",children:a.status==="failed"?yT("span",{className:`flex size-full flex-col items-center justify-center gap-1 px-2 text-center text-slate-600 text-xs dark:text-slate-400 ${Xt}`,"data-testid":"daily-report-attachment-thumbnail-unavailable",children:[_o(oT,{"aria-hidden":"true",className:"size-5 shrink-0 text-slate-500 dark:text-slate-400"}),t]}):_o("img",{ref:i,alt:"",decoding:"async",fetchPriority:"low",draggable:!1,onLoad:l,onError:d,className:"max-h-full max-w-full opacity-0 motion-safe:transition-opacity motion-safe:duration-200 motion-safe:ease-out [[data-thumbnail-state=loaded]_&]:opacity-100","data-testid":"daily-report-attachment-thumbnail"})})})})});import{jsx as Ce,jsxs as zt}from"react/jsx-runtime";var Ty=1024,cd=["B","KB","MB","GB"],vy="text-slate-500 text-sm line-through dark:text-slate-400",bT="relative truncate",ST=Ne(bT),gT=v("relative ml-auto shrink-0 rounded-sm text-slate-500 text-xs underline decoration-slate-300 underline-offset-2 after:absolute after:-inset-x-2 after:-inset-y-1 hover:text-slate-700 hover:decoration-current dark:text-slate-400 dark:decoration-slate-600 dark:hover:text-slate-200",te),ET=v("flex min-w-0 flex-col gap-2 rounded-lg",te),DT=v("flex min-w-0 rounded-sm",te),wT=v("m-0",Nr),TT=e=>{if(e===null||!Number.isFinite(e)||e<0)return null;let t=e,r=0;for(;t>=Ty&&r<cd.length-1;)t/=Ty,r+=1;return r===0?`${t} ${cd[r]}`:`${t.toFixed(1)} ${cd[r]}`},AT=e=>{let t=[],r=[];for(let[n,o]of e.entries())o.hasThumbnail?t.push({attachment:o,index:n}):r.push({attachment:o,index:n});return{tiles:t,rows:r}},Iy=({attachment:e,labels:t,className:r})=>zt("span",{className:ST(r),children:[TT(e.fileSize)??"\u2014",e.state==="absent"&&` \xB7 ${t.attachmentMissing}`]}),ud=({href:e,children:t,...r})=>{let n=_n();return Ce("a",{href:e,...r,tabIndex:n,children:t})},Cy=({downloadUrl:e,label:t,fileName:r})=>zt(ud,{href:e,className:gT,"data-testid":"daily-report-attachment-download",children:[t," ",Ce(od,{fileName:r})]}),xT=Ay(({attachment:e,attachmentIndex:t,apiBasePath:r,labels:n})=>{let o=Ce(wy,{thumbnailUrl:Cn(r,e.id,{kind:"thumbnail",variant:Ql}),unavailableLabel:n.attachmentThumbnailUnavailable}),a=e.state==="absent";return zt("li",{className:"@container flex min-w-0 flex-col gap-1","data-testid":"daily-report-attachment-item","data-attachment-state":e.state,children:[a?zt("div",{className:"flex min-w-0 flex-col gap-2",children:[o,Ce(Co,{fileName:e.fileName,attachmentIndex:t,className:vy,testId:"daily-report-attachment-name"})]}):zt(ud,{href:Cn(r,e.id,{kind:"inline"}),className:ET,"data-testid":"daily-report-attachment-link",...Dy,children:[o,Ce(Co,{fileName:e.fileName,attachmentIndex:t,className:"text-blue-600 text-sm dark:text-blue-400 [@media(hover:hover)]:[[data-daily-report-attachment-preview]:hover_&]:underline"})]}),zt("div",{className:"flex h-4 min-w-0 items-center gap-2 text-slate-500 text-xs tabular-nums dark:text-slate-400",style:Gf,children:[Ce(Iy,{attachment:e,labels:n}),!a&&Ce(Cy,{downloadUrl:Cn(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})]})}),vT=Ay(({attachment:e,attachmentIndex:t,apiBasePath:r,labels:n})=>{let o=e.state==="absent",a=xy(null);return zt("li",{className:"flex items-center gap-2 rounded-lg bg-slate-50 p-2 dark:bg-slate-800/40","data-testid":"daily-report-attachment-item","data-attachment-state":e.state,children:[Ce(Ry,{containerRef:a,children:Ce("div",{ref:a,className:"flex min-w-0 flex-1","data-testid":"daily-report-attachment-name-track",children:zt("div",{className:"flex min-w-0 flex-col",children:[o?Ce(Co,{fileName:e.fileName,attachmentIndex:t,className:vy,testId:"daily-report-attachment-name"}):Ce(ud,{href:Cn(r,e.id,{kind:"inline"}),className:DT,"data-testid":"daily-report-attachment-link",children:Ce(Co,{fileName:e.fileName,attachmentIndex:t,className:"text-blue-600 text-sm hover:underline dark:text-blue-400"})}),Ce(Iy,{attachment:e,labels:n,className:"text-slate-500 text-xs tabular-nums dark:text-slate-400"})]})})}),!o&&Ce(Cy,{downloadUrl:Cn(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})}),IT=({entries:e,headingId:t,apiBasePath:r,labels:n})=>{let o=xy(null);return Ce(yy,{containerRef:o,children:Ce("div",{ref:o,className:"@container","data-testid":"daily-report-attachment-grid-container",children:Ce("ul",{"aria-labelledby":t,className:"grid @min-[1008px]:w-[calc(round(down,100%-64px,5px)+64px)] @min-[240px]:w-[calc(round(down,100%-16px,2px)+16px)] @min-[496px]:w-[calc(round(down,100%-32px,3px)+32px)] @min-[752px]:w-[calc(round(down,100%-48px,4px)+48px)] w-[round(down,100%,1px)] max-w-[1264px] @min-[1008px]:grid-cols-5 @min-[240px]:grid-cols-2 @min-[496px]:grid-cols-3 @min-[752px]:grid-cols-4 grid-cols-1 gap-[16px]","data-testid":"daily-report-attachment-grid",children:e.map(({attachment:a,index:s})=>Ce(xT,{attachment:a,attachmentIndex:s,apiBasePath:r,labels:n},a.id))})})})},Is=({attachments:e})=>{let{apiBasePath:t,labels:r,headingLevel:n}=z(),o=RT(),{tiles:a,rows:s}=hT(()=>AT(e),[e]);return e.length===0?null:zt("div",{className:"flex flex-col gap-2","data-testid":"daily-report-attachment-section",children:[Ce(pt,{level:Dr[n],id:o,className:wT,children:r.attachments}),zt("div",{className:"flex flex-col gap-4",children:[a.length>0&&Ce(IT,{entries:a,headingId:o,apiBasePath:t,labels:r}),s.length>0&&Ce("ul",{"aria-labelledby":o,className:"flex flex-col gap-2","data-testid":"daily-report-attachment-rows",children:s.map(({attachment:i,index:l})=>Ce(vT,{attachment:i,attachmentIndex:l,apiBasePath:t,labels:r},i.id))})]})]})};import{useOverlayEscapeStack as jT}from"@aiquants/swipe-overlay";import{memo as Py,useCallback as Ns,useEffect as Ny,useId as Fy,useLayoutEffect as GT,useRef as yd,useState as YT}from"react";import{useCallback as _y,useMemo as CT,useState as _T}from"react";var LT=()=>[],pd=(e,t,r)=>{let{pendingAddCommentIds:n,pendingDeleteCommentIds:o,resolvedIdMap:a,addComment:s,deleteComment:i}=qe(),{version:l}=As(),{labels:d}=z(),c=d.unknownUser,[u,p]=_T(null),f=_y(R=>e&&i(e.reportHubId,R,e.date),[e,i]),m=_y(R=>e&&t?s(e.reportHubId,R,e.date):Promise.resolve(),[e,t,s]),y=Ue(LT);return{uiComments:CT(()=>{if(!e)return[];let R=um(e.externalComments,e.postedComments,r,c),D=o.current.get(e.reportHubId);D?.size&&(R=R.filter(h=>!D.has(h.id)));let b=n.current.get(e.reportHubId);if(b?.size&&t){let h=new Set(R.map(E=>E.id)),S=or(t,""),w=S==="",x=w?c:S;for(let[E,L]of b){if(D?.has(E)||h.has(E))continue;let N=a.current.get(E);N&&h.has(N)||R.some(M=>M.isMine&&M.content===L&&typeof M.id=="number"&&M.id>0)||R.push({id:E,authorName:x,content:L,createdAt:new Date().toISOString(),isMine:!0,isLegacy:!1,isAuthorUnknown:w})}}return JSON.stringify(R)===JSON.stringify(y.current)?y.current:(y.current=R,R)},[e,t,r,c,o,n,a,l]),handleAddComment:m,handleDeleteComment:f,pendingDeleteId:u,setPendingDeleteId:p,resolvedIdMap:a.current}};import{Fragment as NT,jsx as OT}from"react/jsx-runtime";var ze=({render:e})=>{let t=_n();return OT(NT,{children:e(t)})};import MT from"@heroicons/react/24/outline/TrashIcon.js";import{memo as kT,useId as PT,useMemo as Ly,useRef as FT,useState as HT}from"react";import{jsx as $t,jsxs as Cs}from"react/jsx-runtime";var md="data-comment-id",_s="data-comment-delete-button",Ls="data-comment-delete-slot",BT=v(Ge,bc),VT=Array.from({length:8},(e,t)=>v("relative rounded-xl border border-slate-200 border-solid bg-white p-[11px] dark:border-slate-700 dark:bg-slate-900/70",(t&4)!==0&&"border-blue-200 bg-blue-50 dark:border-blue-800/70 dark:bg-blue-950/40",(t&2)!==0&&"hidden",(t&1)!==0?"z-50":"z-0 hover:z-10")),UT=(e,t,r)=>(e?4:0)+(t?2:0)+(r?1:0),WT=Ne("font-semibold text-xs"),KT="relative flex h-5 items-center",zT=v(Ye,"motion-safe:fade-in motion-safe:zoom-in-95 absolute top-full right-0 z-20 mt-1 whitespace-nowrap bg-red-600 font-bold text-white text-xs shadow-lg hover:bg-red-700 active:bg-red-800 motion-safe:animate-in motion-safe:duration-200",te),$T=(e,t,r)=>t===e||typeof e=="number"&&e<0&&r?.get(e)===t||typeof t=="number"&&t<0&&r?.get(t)===e,fd=kT(({comment:e,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:s,onBeforeHide:i,resolvedIdMap:l})=>{let[d,c]=HT(!1),{labels:u}=z(),p=PT(),f=FT(null),m=$T(e.id,o,l),y=Ly(()=>Be(e.authorName),[e.authorName]),g=Ly(()=>bt(e.content),[e.content]),R=fe.comment(e.id,"author"),D=fe.comment(e.id,"content"),b=En(D),h=e.isMine&&!e.isLegacy,S=!!e.createdAt||h,w=()=>{let E=f.current;E!==null&&i(E),a(null),c(!0),typeof e.id=="number"&&n?.(e.id)},x=E=>{if(!m)return;let L=E.relatedTarget;xe(L)&&E.currentTarget.contains(L)||a(null)};return Cs("li",{[md]:e.id,"data-deleted":d?"true":void 0,className:VT[UT(e.isMine,d,m)],children:[Cs("div",{className:"mb-1 flex items-center justify-between",children:[$t("div",{className:WT(pm(e.color)),children:b&&!e.isAuthorUnknown?$t(pe,{fieldKey:R,raw:e.authorName,display:y}):y.text}),S&&Cs("div",{className:"flex items-center gap-2",children:[e.createdAt&&$t("div",{className:"text-slate-500 text-xs dark:text-slate-400",children:Ae(e.createdAt)}),h&&Cs("div",{[Ls]:e.id,className:KT,onBlur:x,children:[$t(ze,{render:E=>$t("button",{ref:f,type:"button",tabIndex:E,className:BT,title:u.commentDelete,"aria-label":u.commentDelete,"aria-expanded":m,"aria-controls":m?p:void 0,[_s]:e.id,onClick:()=>s(e.id,m),children:$t(MT,{"aria-hidden":"true",className:m?He.deletePending:He.delete})})}),m&&$t(ze,{render:E=>$t("button",{id:p,type:"button",tabIndex:E,"data-delete-confirmation":!0,className:zT,onClick:w,children:u.commentDeleteConfirm})})]})]})]}),$t("div",{className:"whitespace-pre-wrap text-slate-700 text-sm leading-6 dark:text-slate-200",children:b?$t(pe,{fieldKey:D,raw:e.content,display:g}):e.content})]})});fd.displayName="DailyReportPostedComment";import{Fragment as sA,jsx as Tt,jsxs as Rd}from"react/jsx-runtime";var qT="data-daily-report-comment-section",XT="data-daily-report-comment-heading",ZT=v(qt,te),QT=Ne("flex flex-col gap-2"),Hy=(e,t)=>e>0||t,JT=v("h-9 min-w-0 flex-1 rounded-lg border border-solid bg-slate-50 px-[7px] text-sm focus:bg-white dark:bg-slate-800 dark:text-slate-200 dark:focus:bg-slate-900",Yt,te),eA=v("h-9 rounded-lg bg-blue-600 px-4 font-medium text-sm text-white hover:bg-blue-700 disabled:opacity-50",te),Oy=e=>e.querySelector(`[${_s}][aria-expanded="true"]`),tA=(e,t,r)=>{let n=[...e.querySelectorAll(`[${_s}]`)].filter(i=>i===t||i.closest("[data-deleted]")===null),o=n.indexOf(t),a=n.at(o+1);if(a!==void 0)return{kind:"trash",button:a};if(o>0)return{kind:"trash",button:n[o-1]};let s=[...e.querySelectorAll(`[${md}]`)].filter(i=>!i.contains(t)&&i.closest("[data-deleted]")===null).length;return Hy(s,r)?{kind:"heading"}:{kind:"report"}},rA=({comments:e,reportHubId:t,businessDate:r,onDeleteComment:n,pendingDeleteId:o,onPendingDeleteIdChange:a,resolvedIdMap:s,canComment:i,headingRef:l,onSectionRemoved:d})=>{let c=yd(null),u=jT(),p=Fy(),f=o!==null,m=Ns(()=>{let R=c.current,D=R===null?null:Oy(R),b=D===null?null:D.closest(`[${Ls}]`),h=R===null?null:Ke(R);a(null),D!==null&&b!==null&&h!==null&&b.contains(h)&&D.focus({preventScroll:!0})},[a]);Ny(()=>{if(f)return u({id:p,onEscape:R=>sr(R)?(m(),!0):!1})},[f,u,p,m]),Ny(()=>{let R=c.current;if(!f||R===null)return;let D=R.ownerDocument,b=h=>{let S=Oy(R)?.closest(`[${Ls}]`);S!=null&&xe(h.target)&&S.contains(h.target)||a(null)};return D.addEventListener("pointerdown",b,!0),()=>D.removeEventListener("pointerdown",b,!0)},[f,a]);let y=Ns((R,D)=>{D?m():a(R)},[m,a]),g=Ns(R=>{let D=c.current;if(D===null)return;let b=tA(D,R,i);if(b.kind==="report"){d();return}let h=b.kind==="trash"?b.button:l.current;if(h===null)throw new Error("[daily-report] the comment section's heading is not attached");h.focus({preventScroll:!0})},[i,l,d]);return e.length===0?null:Tt("ul",{ref:c,className:"space-y-2",children:e.map(R=>Tt(fd,{comment:R,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:y,onBeforeHide:g,resolvedIdMap:s},R.id))})},My=({headingId:e,className:t,children:r,...n})=>{let{labels:o,headingLevel:a}=z(),s=yd(null);return Hy(n.comments.length,n.canComment)?Rd("div",{[qT]:"",className:QT(t),children:[Tt(pt,{ref:s,id:e,level:Dr[a],tabIndex:-1,[XT]:"",className:ZT,children:o.comments}),Tt(rA,{...n,headingRef:s}),r]}):null},By=Py(({report:e,canComment:t,onSectionRemoved:r,formPlacement:n,sectionClassName:o,comments:a,onAddComment:s,onDeleteComment:i,pendingDeleteId:l,onPendingDeleteIdChange:d,resolvedIdMap:c})=>{let u=Fy(),p=t?Tt(aA,{onAddComment:s,pushedToEnd:n==="after-section",labelledBy:u}):null,f={headingId:u,comments:a,canComment:t,reportHubId:e.reportHubId,businessDate:e.date,onDeleteComment:i,pendingDeleteId:l,onPendingDeleteIdChange:d,resolvedIdMap:c,onSectionRemoved:r,className:o};return n==="in-section"?Tt(My,{...f,children:p}):Rd(sA,{children:[Tt(My,{...f}),p]})});By.displayName="ReportCommentsView";var Lo=Py(({report:e,userId:t,canComment:r,onCommentAdded:n,onSectionRemoved:o,formPlacement:a,sectionClassName:s})=>{let{user:i}=qe(),{uiComments:l,handleAddComment:d,handleDeleteComment:c,pendingDeleteId:u,setPendingDeleteId:p,resolvedIdMap:f}=pd(e,i,t),m=sm(),y=yd(!1);GT(()=>{y.current&&m(),y.current=!0},[l,u,m]);let g=Ns(async R=>{await d(R),n?.()},[d,n]);return Tt(By,{report:e,canComment:r,onSectionRemoved:o,formPlacement:a,sectionClassName:s,comments:l,onAddComment:g,onDeleteComment:c,pendingDeleteId:u,onPendingDeleteIdChange:p,resolvedIdMap:f})});Lo.displayName="ReportComments";var nA="flex gap-2",oA="mt-auto flex gap-2",ky="content",aA=({onAddComment:e,pushedToEnd:t,labelledBy:r})=>{let[n,o]=YT(!1),{labels:a}=z();return Rd("form",{className:t?oA:nA,onSubmit:async i=>{i.preventDefault();let l=i.currentTarget,d=l.elements.namedItem(ky);if(!(d instanceof Pe(l).HTMLInputElement))return;let c=d.value.trim();if(c&&e){o(!0),l.reset();try{await e(c)}catch{d.value=c}finally{o(!1)}}},children:[Tt(ze,{render:i=>Tt("input",{type:"text",name:ky,tabIndex:i,"aria-labelledby":r,placeholder:a.commentPlaceholder,className:JT,autoComplete:"off"})}),Tt(ze,{render:i=>Tt("button",{type:"submit",tabIndex:i,className:eA,disabled:n,children:a.commentSend})})]})};import{useState as EA}from"react";import{Slot as iA}from"@radix-ui/react-slot";import{cva as lA}from"class-variance-authority";import*as Uy from"react";import{jsx as uA}from"react/jsx-runtime";var dA=lA(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 ${te}`,{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-solid border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-2",lg:"h-11 rounded-md px-4",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),Vy=new Map,cA=(e,t,r)=>{let n=`${String(e)}|${String(t)}`,o=Vy.get(n);if(o!==void 0)return o(r);let a=Ne(dA({variant:e,size:t}));return Vy.set(n,a),a(r)},ir=Uy.forwardRef(({className:e,variant:t,size:r,asChild:n=!1,...o},a)=>uA(n?iA:"button",{className:cA(t,r,e),ref:a,...o}));ir.displayName="Button";import{jsx as fA}from"react/jsx-runtime";var pA=`flex h-9 w-full min-w-0 rounded-md border border-solid bg-white px-[7px] py-[3px] text-base text-slate-900 shadow-xs disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:bg-slate-900 dark:text-slate-100 ${Yt} ${te}`,mA=Ne(pA);function Wy({className:e,type:t,...r}){return fA("input",{type:t,"data-slot":"input",className:mA(e),...r})}import*as Ky from"@radix-ui/react-label";import{jsx as hA}from"react/jsx-runtime";var yA="flex select-none items-center gap-2 font-medium text-sm leading-none [:where(.group)[data-disabled=true]_&]:pointer-events-none [:where(.group)[data-disabled=true]_&]:opacity-50 [:where(.peer):disabled~&]:cursor-not-allowed [:where(.peer):disabled~&]:opacity-50",RA=Ne(yA);function No({className:e,...t}){return hA(Ky.Root,{"data-slot":"label",className:RA(e),...t})}import{jsx as gA}from"react/jsx-runtime";var bA=`flex min-h-15 w-full rounded-md border border-solid bg-white p-[7px] text-base text-slate-900 shadow-xs disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:bg-slate-900 dark:text-slate-100 ${Yt} ${te}`,SA=Ne(bA);function zy({className:e,...t}){return gA("textarea",{"data-slot":"textarea",className:SA(e),...t})}import{jsx as At,jsxs as Os}from"react/jsx-runtime";var Ln=e=>({title:e.subject??"",content:e.content??""}),DA=e=>{e.preventDefault()},Ms=({report:e,onCancel:t,onPublishSuccess:r,titleInputRef:n})=>{let{updateReport:o,publishReport:a}=qe(),{labels:s}=z(),i=Er(),{title:l,content:d}=df(e.reportHubId),[c,u]=EA(!1),p=async()=>{u(!0);try{await o(e.reportHubId,{title:l,content:d},e.date)}catch{}finally{u(!1)}},f=async()=>{u(!0);try{await o(e.reportHubId,{title:l,content:d},e.date),await a(e.reportHubId,e.date),r?.()}catch{}finally{u(!1)}},m=`report-title-${e.reportHubId}`,y=`report-content-${e.reportHubId}`;return Os("form",{className:"space-y-4 p-1",onSubmit:DA,children:[Os("div",{className:"space-y-2",children:[At(No,{htmlFor:m,children:s.formTitle}),At(ze,{render:g=>At(Wy,{ref:n,id:m,value:l,onChange:R=>i.setInput(e.reportHubId,{title:R.target.value}),placeholder:s.formTitlePlaceholder,disabled:c,tabIndex:g})})]}),Os("div",{className:"space-y-2",children:[At(No,{htmlFor:y,children:s.formContent}),At(ze,{render:g=>At(zy,{id:y,value:d,onChange:R=>i.setInput(e.reportHubId,{content:R.target.value}),placeholder:s.formContentPlaceholder,className:"min-h-50",disabled:c,tabIndex:g})})]}),Os("div",{className:"flex justify-end gap-2",children:[t&&At(ze,{render:g=>At(ir,{type:"button",variant:"outline",onClick:t,disabled:c,tabIndex:g,children:s.formCancel})}),At(ze,{render:g=>At(ir,{type:"button",variant:"secondary",onClick:p,disabled:c,tabIndex:g,children:s.formSave})}),At(ze,{render:g=>At(ir,{type:"button",onClick:f,disabled:c,tabIndex:g,children:s.formPublish})})]})]})};var wA=()=>{},ks=(e,t,r,n)=>{let o=null;return{read:()=>{let a=e.read(r),s=t===null?void 0:t.read(r),i=s===void 0?null:s;return(o===null||!Object.is(o.detail,a)||!Object.is(o.marks,i))&&(o=Object.freeze({detail:a,marks:i,marksStore:t})),o},subscribe:a=>{let s=e.subscribe(r,n,a),i=t===null?wA:t.subscribe(r,a);return()=>{s(),i()}},changesBox:(a,s)=>a.detail!==s.detail}};import{virtualScrollItemElementId as ex}from"@aiquants/virtualscroll";import{useContext as Ws}from"react";import{virtualScrollItemElementId as iR}from"@aiquants/virtualscroll";import{createContext as KA,useCallback as ue,useContext as zA,useLayoutEffect as Ar,useMemo as lR,useRef as xr,useState as Oo,useSyncExternalStore as mR}from"react";import{flushSync as wd}from"react-dom";var $y=(e,t)=>e.id===t.id&&e.indexHint===t.indexHint,jy=e=>{let t=new Set,r=new Set,n=e,o=null,a=Object.freeze({selected:n,settled:n}),s=0,i=!1,l=()=>{let h=o===null?n:o;if(!($y(a.selected,n)&&$y(a.settled,h))){a=Object.freeze({selected:n,settled:h});for(let S of[...t])S()}},d=()=>a,c=h=>(t.add(h),()=>{t.delete(h)}),u=h=>{n=h,l()},p=h=>{let S=o!==null;if(o=h,l(),S!==(o!==null))for(let w of[...r])w()},f=h=>p(h),m=()=>p(null),y=()=>o!==null,g=h=>(r.add(h),()=>{r.delete(h)}),R=()=>{s+=1},D=h=>{i=h},b=Object.freeze({appliedEpoch:()=>s,pending:()=>i});return{getSnapshot:d,subscribe:c,select:u,hold:f,release:m,isHeld:y,subscribeHold:g,noteKeyStepApplied:R,noteKeyStepsPending:D,keySteps:b}};var lr=e=>({active:e,effect:"none"}),Gy=(e,t)=>e!==null&&e.index>=t.visibleStartIndex&&e.index<=t.visibleEndIndex,hd=(e,{items:t,selected:r,range:n})=>{if(n===null)return e===null?r:e;if(Gy(e,n))return e;if(Gy(r,n))return r;let o=Ee(t,n.visibleStartIndex);return o===void 0?null:{reportHubId:o.reportHubId,index:n.visibleStartIndex}},Yy=(e,t)=>{if(e.length===0)return{active:null,effect:"handBack"};let r=Math.min(Math.max(t,0),e.length-1);return{active:{reportHubId:Vt(e,r).reportHubId,index:r},effect:"handBack"}},bd=(e,t)=>{switch(t.kind){case"key":return lr(t.target);case"activation":case"focusInControl":return lr(t.row);case"focusInComposite":return t.from==="inside"?lr(e):t.pressed!==null?lr(t.pressed):{active:hd(e,t.shown),effect:"reveal"};case"focusLeft":return lr(hd(e,t.shown));case"rangeChanged":return lr(t.focusWithin&&e!==null?e:hd(e,t.shown));case"listChanged":{if(e===null)return lr(null);let r=ve(t.items,e.reportHubId,e.index);return r===-1?Yy(t.items,e.index):lr(r===e.index?e:{reportHubId:e.reportHubId,index:r})}case"removed":return t.selection===null||t.selection.reportHubId!==t.reportHubId?lr(e):Yy(t.items,t.selection.index)}};var Ps=e=>e.matches(":focus-visible")&&Ao(e.ownerDocument)!=="pointer";var TA="data-daily-report-keyboard-focus",wr={capture:!0},qy=e=>{let t=cf(e.ownerDocument),r=i=>{e.toggleAttribute(TA,xe(i)&&Ps(i))},n=i=>r(i.target),o=i=>{xe(i.relatedTarget)&&e.contains(i.relatedTarget)||r(null)},a=()=>r(null);e.addEventListener("focusin",n,wr),e.addEventListener("keydown",n,wr),e.addEventListener("focusout",o,wr),e.addEventListener("pointerdown",a,wr);let s=Ke(e);return r(s!==null&&e.contains(s)?s:null),()=>{e.removeEventListener("focusin",n,wr),e.removeEventListener("keydown",n,wr),e.removeEventListener("focusout",o,wr),e.removeEventListener("pointerdown",a,wr),r(null),t()}};var AA='form, input, textarea, select, [contenteditable]:not([contenteditable="false"]), audio[controls], video[controls]',xA='select, input[type="search"], [contenteditable]:not([contenteditable="false"]), audio[controls], video[controls]',vA=["combobox","listbox","menu","menubar","radiogroup","slider","spinbutton","textbox","tree","grid","scrollbar","tablist","toolbar","treegrid","separator"],IA=vA.map(e=>`[role="${e}"]`).join(", "),CA='[aria-expanded="true"]',_A=new Map([["ArrowUp","previous"],["ArrowDown","next"],["Home","first"],["End","last"],["PageUp","pageBackward"],["PageDown","pageForward"]]),LA=new Set(["Enter"," "]),NA=new Map([["Home","exitBefore"],["End","exitAfter"]]),gd=e=>{if(e.altKey||e.metaKey)return null;if(e.key==="Tab")return e.ctrlKey?null:"tab";if(e.shiftKey)return null;if(e.ctrlKey){let r=NA.get(e.key);return r===void 0?null:r}let t=_A.get(e.key);return t!==void 0?t:LA.has(e.key)?"activate":e.key==="Escape"?"returnToRow":null},Sd=(e,t,r,n)=>{let o=e.closest(t);return o!==null&&o!==n&&o!==r&&r.contains(o)},OA=(e,t,r,n)=>{let o=Ur(t,r);if(o===null)return null;if(e==="tab")return e;if(e==="activate"||Sd(t,IA,r,n))return null;if(e==="returnToRow"){if(Sd(t,xA,r,n))return null;let a=t.closest(CA);return a!==null&&o.contains(a)?null:e}return Sd(t,AA,r,n)?null:e},Xy=(e,{container:t,composite:r})=>{let n=gd(e);if(n===null||e.defaultPrevented||Gr(e)||t===null||r===null||!xe(e.target)||!t.contains(e.target))return null;let o=e.target,a=o===r?n==="returnToRow"?null:n:OA(n,o,t,r);return a===null?null:{kind:a,target:o}};var Fs={kind:"stay"},Bs=e=>{if(e.kind==="measured")return e.heightOf;let{rowHeight:t}=e;return()=>t},Zy=e=>Math.floor(.875*e),Tr=(e,t)=>({kind:"move",index:e,align:t}),Hs=(e,t,r,n)=>e>=0&&e+t<=r?"none":t>r?n>0?"top":"bottom":e<0?"top":"bottom",MA=({index:e,count:t,viewport:r,activeRowTop:n,heightOf:o})=>{let a=o(e),s=n+a,i={index:e+1,top:s};for(let l=e+1;l<t;l++){let d=o(l);if(a+=d,a>r)break;i={index:l,top:s},s+=d}return i},kA=({index:e,viewport:t,activeRowTop:r,heightOf:n})=>{let o=n(e),a=r,s={index:e-1,top:r-n(e-1)};for(let i=e-1;i>=0;i--){let l=n(i);if(a-=l,o+=l,o>t)break;s={index:i,top:a}}return s},PA=(e,t,r)=>{let{index:n,count:o,viewport:a,activeRowTop:s,heightOf:i}=t,l=s+i(n);switch(e){case"previous":{if(n===0)return Fs;if(r==="top")return Tr(n-1,"top");let d=i(n-1);return Tr(n-1,Hs(s-d,d,a,-1))}case"next":return n===o-1?Fs:r==="top"?Tr(n+1,"top"):Tr(n+1,Hs(l,i(n+1),a,1));case"first":return Tr(0,"top");case"last":return Tr(o-1,i(o-1)<=a?"bottom":"top");case"pageForward":{if(l>a)return{kind:"reveal",delta:Math.min(l-a,Zy(a))};if(n===o-1)return Fs;let d=MA(t);return Tr(d.index,Hs(d.top,i(d.index),a,1))}case"pageBackward":{if(s<0)return{kind:"reveal",delta:-Math.min(-s,Zy(a))};if(n===0)return Fs;let d=kA(t);return Tr(d.index,Hs(d.top,i(d.index),a,-1))}}},FA=({index:e,activeRowTop:t,heightOf:r},n)=>Jy(n,{index:e,offsetPx:-t},r),Qy=(e,t,r,n)=>{let o=r,a=null,s=0;for(let i=0;i<t;i++){let l=PA(e,o,n);if(l.kind==="stay")break;l.kind==="reveal"?(s+=l.delta,o={...o,activeRowTop:o.activeRowTop-l.delta}):l.align==="none"?o={...o,index:l.index,activeRowTop:FA(o,l.index)}:(a={index:l.index,align:l.align},s=0,o={...o,index:l.index,activeRowTop:l.align==="top"?0:o.viewport-o.heightOf(l.index)})}return{index:o.index,alignment:a,scrollDelta:s}},Ed=({index:e,viewport:t,activeRowTop:r,heightOf:n})=>{let o=r+n(e);return r>=0&&o<=t?"whole":r<t&&o>0?"partial":"hidden"},Jy=(e,t,r)=>{let n=-t.offsetPx;for(let o=t.index;o<e;o++)n+=r(o);for(let o=e;o<t.index;o++)n-=r(o);return n},Vs=(e,t,r,n)=>{let o=e.getViewportSize(),a=e.getScrollPosition();if(!(o>0&&a>=0))return null;let s=Bs(n);if(n.kind==="uniform")return{index:t,count:r,viewport:o,activeRowTop:t*n.rowHeight-a,heightOf:s};let i=e.getScrollAnchor();return i===null?null:{index:t,count:r,viewport:o,activeRowTop:Jy(t,i,s),heightOf:s}},Us=(e,t,r,n)=>{let o=Bs(n),a=e.index,s=o(a)-e.offsetPx;for(;s<t&&a<r-1;)a+=1,s+=o(a);return a},eR=(e,t)=>e.top<t.top?e.top-t.top:e.bottom>t.bottom?Math.min(e.bottom-t.bottom,e.top-t.top):0;var tR=e=>{if(e!==void 0)for(let t of[...e])t()},rR=({initialSelectedId:e})=>{let t=e,r=null,n=e,o=new Map,a=new Set,s=l=>(l===t?1:0)|(l===n?2:0),i=l=>{l!==null&&tR(o.get(l))};return{getActiveId:()=>t,getActiveIndexHint:()=>r,getSelectedId:()=>n,setActive:(l,d)=>{if(r=l===null?null:d,l===t)return;let c=t;t=l,i(c),i(l),tR(a)},settleSelection:l=>{if(l===n)return;let d=n;n=l,i(d),i(l)},rowStateOf:s,subscribe:(l,d)=>{let c=o.get(l);return c===void 0&&(c=new Set,o.set(l,c)),c.add(d),()=>{c.delete(d),c.size===0&&o.get(l)===c&&o.delete(l)}},subscribeActive:l=>(a.add(l),()=>{a.delete(l)})}};var xt={previous:{axis:"row",amount:-1},next:{axis:"row",amount:1},pageBackward:{axis:"page",amount:-1},pageForward:{axis:"page",amount:1},first:{axis:"first",amount:1},last:{axis:"last",amount:1},activate:{axis:"activate",amount:1}},Dd=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!1}),HA=Object.freeze({apply:null,flush:!1,requestFrame:!0,ended:!1}),nR=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!0}),BA=new Map(Object.values(xt).map(e=>[e,Object.freeze({apply:e,flush:!1,requestFrame:!0,ended:!1})])),oR=e=>{let t=BA.get(e);if(t===void 0)throw new Error(`[daily-report] a repeat step must be one of REPEAT_STEPS; got the ${e.axis} axis with ${e.amount}`);return t},VA=(e,t,r)=>e==="row"||e==="page"?t+r:r,aR=e=>({state:{axis:e.axis,pending:0,fence:"immediate"},effects:oR(e)}),sR=(e,t)=>{switch(t.kind){case"repeat":{let{step:r}=t;if(e.axis!==r.axis)throw new Error(`[daily-report] a ${r.axis} repeat cannot continue a ${e.axis} stream`);return e.fence==="open"?(e.fence="immediate",oR(r)):(e.pending=VA(e.axis,e.pending,r.amount),Dd)}case"frame":{if(e.fence==="open")return Dd;if(e.fence==="immediate")return e.fence="flush",HA;if(e.pending===0)return e.fence="open",Dd;let r=e.pending;return e.pending=0,{apply:{axis:e.axis,amount:r},flush:!0,requestFrame:!0,ended:!1}}case"keyup":return e.pending===0?nR:{apply:{axis:e.axis,amount:e.pending},flush:!0,requestFrame:!1,ended:!0};case"cancel":return nR}};var Td=KA(null),$A=Object.freeze({kind:"frame"}),dR={capture:!0},jA=()=>{},cR=(e,t,r)=>{let n=e.ownerDocument,o=n.defaultView;if(o===null)return jA;let a=!0,s=()=>{a&&(a=!1,i.disconnect(),n.removeEventListener("focusin",s,dR))},i=new o.MutationObserver(()=>{e.isConnected||(s(),r())});return i.observe(t,{childList:!0,subtree:!0}),n.addEventListener("focusin",s,dR),s},GA=Object.freeze({kind:"keyup"}),YA=Object.freeze({kind:"cancel"}),qA=Object.freeze({previous:Object.freeze({kind:"repeat",step:xt.previous}),next:Object.freeze({kind:"repeat",step:xt.next}),pageBackward:Object.freeze({kind:"repeat",step:xt.pageBackward}),pageForward:Object.freeze({kind:"repeat",step:xt.pageForward}),first:Object.freeze({kind:"repeat",step:xt.first}),last:Object.freeze({kind:"repeat",step:xt.last}),activate:Object.freeze({kind:"repeat",step:xt.activate})}),Nn={capture:!0},XA=e=>e in xt,ZA=(e,t)=>{if(e==="first"||e==="last")return{command:e,count:1};let r=Math.abs(t);return e==="row"?{command:t>0?"next":"previous",count:r}:{command:t>0?"pageForward":"pageBackward",count:r}},QA=(e,t)=>({top:e.top-t,bottom:e.bottom+t}),uR=e=>{let t=ho(e),r=Sr(e);return t===null||r===null?null:{reportHubId:t,index:r-1}},JA=e=>e==="first"||e==="last",pR=(e,t)=>{let r=ve(e,t.reportHubId,t.index);return r===-1?null:{reportHubId:t.reportHubId,index:r}},fR=e=>{let t=zA(Td);if(t===null)throw new Error("[daily-report] useListRowState is called outside a view's rows (no row cursor)");let r=ue(a=>t.subscribe(e,a),[t,e]),n=ue(()=>t.rowStateOf(e),[t,e]),o=mR(r,n,n);return{active:(o&1)!==0,selected:(o&2)!==0}},yR=(e,t)=>{let r=ue(()=>{let n=e.getActiveId();if(n===null)return null;let o=ve(t,n,e.getActiveIndexHint());return o===-1?null:o},[e,t]);return mR(e.subscribeActive,r,r)},RR=({items:e,selectedId:t,onSelect:r,onActivate:n,containerRef:o,rootRef:a,gridId:s,handleRef:i,scroller:l,rowSizing:d,arrowAlign:c})=>{let[u]=Oo(()=>rR({initialSelectedId:t})),p=Ue(()=>({items:e,onSelect:r,onActivate:n,rowSizing:d,arrowAlign:c})),f=xr(null),m=xr(!1),y=xr(null),g=xr(!1),R=xr(null),D=xr(()=>{}),[b,h]=Oo(null),[S,w]=Oo(0),x=xr(null),E=Ue(()=>{if(t===null)return null;let C=ve(e,t,null);return C===-1?null:{reportHubId:t,index:C}}),[L]=Oo(()=>jy({id:t,indexHint:null})),[N,M]=Oo(0),T=lR(()=>({id:t,indexHint:t===null?null:Lp(b,t)}),[t,b]),A=xr(T);Ar(()=>{p.current={items:e,onSelect:r,onActivate:n,rowSizing:d,arrowAlign:c},A.current=T},[p,e,r,n,d,c,T]),Ar(()=>{L.select(T)},[L,T,S]);let I=ue((C,P)=>{let U=R.current;if(U!==null&&U.items===C&&U.reportHubId===P)return U.index;let G=ve(C,P,U!==null&&U.reportHubId===P?U.index:null);return G!==-1&&(R.current={items:C,reportHubId:P,index:G}),G},[]),_=ue((C,P)=>{R.current={items:p.current.items,reportHubId:C,index:P},h(U=>U!==null&&U.reportHubId===C&&U.index===P?U:{reportHubId:C,index:P}),w(U=>U+1),L.select({id:C,indexHint:P})},[p,L]),k=ue(()=>{let C=p.current.items,P=u.getSelectedId(),U=P===null?-1:I(C,P);return{items:C,selected:P===null||U===-1?null:{reportHubId:P,index:U},range:f.current}},[u,p,I]),O=ue(C=>{let P=g.current;g.current=!0;try{C()}finally{g.current=P}},[]),F=ue(C=>{E.current=C,u.setActive(C===null?null:C.reportHubId,C===null?null:C.index)},[E,u]),$=ue(C=>{let P=i.current;if(P===null)return null;let{items:U,rowSizing:G}=p.current;return Vs(P,C,U.length,G)},[i,p]),j=ue(C=>{let P=$(C);P===null||Ed(P)==="whole"||P.activeRowTop<=0&&P.activeRowTop+P.heightOf(C)>=P.viewport||l.toIndex(C,{align:"nearest"})},[$,l]),W=ue((C,P)=>{let U=o.current;if(U===null)return;let G=p.current.items,re=E.current,ie=null;if(C===null)ie=re;else{let Y=ve(G,C,re!==null&&re.reportHubId===C?re.index:null);Y!==-1&&(ie={reportHubId:C,index:Y},F(ie))}ie!==null&&j(ie.index);let H=U.ownerDocument,K=H.getElementById(s);if(K===null)return;let B=ie===null?null:H.getElementById(iR(s,ie.reportHubId));O(()=>bf(U,K,B,P))},[o,p,E,s,F,j,O]),V=ue(C=>{let P=bd(E.current,C);F(P.active),P.effect==="reveal"&&P.active!==null&&j(P.active.index);let U=o.current;P.effect==="handBack"&&m.current&&U!==null&&Fr(U)&&W(P.active===null?null:P.active.reportHubId,"removal")},[o,E,F,j,W]),le=ue(()=>{m.current&&(m.current=!1,y.current=null,V({kind:"focusLeft",shown:k()}))},[V,k]);Ar(()=>{u.settleSelection(t)},[u,t,N]),Ar(()=>{t!==null&&I(e,t)},[e,t,I]),Ar(()=>{V({kind:"listChanged",items:e})},[e,V]),Ar(()=>{let C=a.current;if(C!==null)return qy(C)},[a]),Ar(()=>{let C=o.current;if(C===null)return;let P=C.ownerDocument,U=re=>{let ie=o.current,H=re.target;if(!(ie!==null&&xe(H)&&ie.contains(H))){y.current=null,le();return}let B=re.pointerType==="touch"?null:Ur(H,ie);y.current=B===null?null:uR(B)},G=()=>{y.current=null};return P.addEventListener("pointerdown",U,Nn),P.addEventListener("pointerup",G,Nn),P.addEventListener("pointercancel",G,Nn),()=>{P.removeEventListener("pointerdown",U,Nn),P.removeEventListener("pointerup",G,Nn),P.removeEventListener("pointercancel",G,Nn)}},[o,le]);let Te=ue((C,P)=>{V({kind:"activation",row:{reportHubId:C,index:P}}),_(C,P)},[V,_]),be=ue(C=>{let P=bd(E.current,{kind:"removed",reportHubId:C,selection:R.current,items:p.current.items});if(P.effect!=="handBack")return;F(P.active);let U=P.active===null?null:P.active.reportHubId;D.current();let G=o.current,re=G===null?null:Ke(G);if(G!==null&&re!==null&&!Fr(G)&&!G.contains(re)){D.current=cR(re,re.ownerDocument,()=>W(U,"removal"));return}W(U,"removal")},[o,p,E,F,W]),De=ue((C,P,U,G)=>{let{items:re,onSelect:ie,rowSizing:H,arrowAlign:K}=p.current,B=i.current;if(ie===null||B===null)return;let Y=Vs(B,U.index,re.length,H);if(Y===null)return;let J=Qy(C,P,Y,K),Me=Vt(re,J.index),yt=J.index!==U.index,pr=yt||G&&JA(C)&&A.current.id!==Me.reportHubId;wd(()=>{yt&&V({kind:"key",target:{reportHubId:Me.reportHubId,index:J.index}}),pr&&(u.settleSelection(Me.reportHubId),ie(Me.reportHubId,J.index)),J.alignment!==null&&l.toIndex(J.alignment.index,{align:J.alignment.align}),J.scrollDelta!==0&&l.by(J.scrollDelta),pr&&(_(Me.reportHubId,J.index),M($n=>$n+1))})},[u,p,i,l,_,V]),se=ue(C=>{Te(C.reportHubId,C.index),p.current.onActivate(C.reportHubId,C.index)},[p,Te]),Ze=ue(C=>{let P=E.current;if(P===null)return;if(C.axis==="activate"){se(P);return}let U=ZA(C.axis,C.amount);De(U.command,U.count,P,!1)},[E,se,De]),We=ue(C=>{x.current=null,C.frame!==0&&C.view.cancelAnimationFrame(C.frame),L.release()},[L]),q=ue((C,P,U)=>{let{apply:G}=P;G!==null&&(P.flush?wd(()=>Ze(G)):Ze(G)),x.current===C&&(P.ended?We(C):P.requestFrame&&(C.frame=C.view.requestAnimationFrame(U)))},[Ze,We]),he=ue((C,P,U)=>{let G=sR(C.state,P);L.noteKeyStepsPending(!G.ended&&C.state.pending!==0),P.kind==="frame"&&G.apply!==null&&L.noteKeyStepApplied(),q(C,G,U)},[L,q]),Q=ue(()=>{let C=x.current;C!==null&&(C.frame=0,he(C,$A,Q))},[he]),oe=ue(()=>{let C=x.current;C!==null&&he(C,GA,Q)},[he,Q]),me=ue(()=>{let C=x.current;C!==null&&he(C,YA,Q)},[he,Q]),Ie=ue((C,P)=>{L.hold(A.current);let{state:U,effects:G}=aR(xt[C]),re={state:U,view:P,frame:0};x.current=re,q(re,G,Q)},[L,q,Q]);Ar(()=>()=>{D.current();let C=x.current;x.current=null,C!==null&&C.frame!==0&&C.view.cancelAnimationFrame(C.frame)},[]);let Qe=ue((C,P,U)=>{let G=E.current,re=G===null?null:$(G.index);if(G===null||re===null||Ed(re)!=="hidden")return;let ie=P.ownerDocument.getElementById(iR(s,G.reportHubId));ie===null||!qf(ie,C===P?null:C,U)||wd(()=>l.toIndex(G.index,{align:"nearest"}))},[E,s,l,$]),It=ue(C=>{let P=x.current,U=P!==null&&C.repeat?gd(C):null;if(P!==null&&U!==null&&XA(U)&&xt[U].axis===P.state.axis){C.preventDefault(),he(P,qA[U],Q);return}let G=o.current,re=G===null?null:G.ownerDocument.getElementById(s),ie=p.current.onSelect===null?null:Xy(vn(C),{container:G,composite:re});if(oe(),ie===null||G===null||re===null)return;y.current=null;let{kind:H}=ie;switch(H){case"exitBefore":case"exitAfter":{let Me=Yf(G,H==="exitBefore"?"before":"after");if(Me===null)return;C.preventDefault(),Me.focus();return}case"tab":Qe(ie.target,re,C.shiftKey);return;case"returnToRow":C.preventDefault(),O(()=>re.focus({preventScroll:!0}));return}let K=E.current;if(H==="activate"){if(C.preventDefault(),K===null)return;C.repeat?Ie(H,Pe(G)):se(K);return}if(K===null)return;let{items:B,rowSizing:Y}=p.current,J=i.current;J===null||Vs(J,K.index,B.length,Y)===null||(C.preventDefault(),C.repeat?Ie(H,Pe(G)):De(H,1,K,!0),ie.target!==re&&O(()=>re.focus({preventScroll:!0})))},[p,o,s,i,E,Q,he,oe,Ie,Qe,se,De,O]),Je=ue(()=>{oe()},[oe]),Mt=ue(C=>{let P=o.current,U=C.target;if(P===null)return;m.current=!0;let G=P.ownerDocument.getElementById(s),re=y.current;if(y.current=null,U===G){let $n=g.current||xe(C.relatedTarget)&&P.contains(C.relatedTarget)?"inside":"outside";V($n==="inside"?{kind:"focusInComposite",from:$n}:{kind:"focusInComposite",from:$n,pressed:re===null?null:pR(p.current.items,re),shown:k()});return}let ie=Ur(U,P),H=ie===null?null:uR(ie),K=H===null?null:pR(p.current.items,H);if(ie===null||K===null||!xe(U))return;V({kind:"focusInControl",row:K}),D.current(),D.current=cR(U,ie,()=>W(null,"removal"));let B=i.current;if(B===null||G===null||!Ps(U))return;let Y=G.getBoundingClientRect(),J=ie.getBoundingClientRect(),Me=J.height<=Y.height?J:QA(U.getBoundingClientRect(),Gt),yt=eR(Me,Y),pr=B.getViewportSize();yt===0||!(pr>0&&Y.height>0)||l.by(yt*pr/Y.height)},[o,s,p,i,l,V,k,W]),_e=ue(C=>{let P=o.current,U=C.relatedTarget,G=xe(U)?P?.contains(U)?"view":"outside":"nowhere";G!=="view"&&me(),G==="outside"&&le()},[o,me,le]),et=ue(C=>{f.current={visibleStartIndex:C.visibleStartIndex,visibleEndIndex:C.visibleEndIndex},V({kind:"rangeChanged",focusWithin:m.current,shown:k()})},[V,k]),tn=lR(()=>({onKeyDown:It,onKeyUp:Je,onPointerDownCapture:me,onWheelCapture:me,onTouchStartCapture:me,onFocus:Mt,onBlur:_e}),[It,Je,me,Mt,_e]);return{cursor:u,containerProps:tn,handleRangeChange:et,selection:T,selectionStore:L,resolveSelectedIndex:I,rememberSelection:_,activateRow:Te,focusViewRow:W,focusAfterRemoval:be}};import{jsx as Ks}from"react/jsx-runtime";var ye=(e,t)=>`${e}-${t}`,zs=e=>ex(om(),e),On=Object.freeze([]),tx="data-daily-report-row-shell",$s=Ks("div",{...Rt,[tx]:"",className:"h-full w-full"}),rx=(e,t,r)=>r===gr?e.listRowPositionInUnknownTotal(t+1):e.listRowPosition(t+1,r),js=({id:e,whileTotalUnknownOnly:t})=>{let{labels:r}=z(),n=Ws(Kr),o=Ws(Wr);return t&&o!==gr?null:Ks("span",{id:e,hidden:!0,children:rx(r,n,o)})},Gs=({reportHubId:e,rowId:t,name:r,className:n,style:o,onMouseDown:a,frameRef:s,children:i})=>{let{active:l,selected:d}=fR(e),c=Ws(Kr),u=Ws(Wr),p=r.kind==="card",f=p&&u===gr?[...r.describedBy,ye(t,"position")]:r.describedBy,m=f.length===0?void 0:f.join(" ");return Ks(Jl.Provider,{value:l,children:Ks("div",{ref:s,role:"row",id:t,[Ua]:e,"aria-rowindex":c+1,"aria-posinset":c+1,"aria-setsize":u,"aria-level":1,"aria-selected":d,[lc]:l?"":void 0,"aria-labelledby":p?ye(t,"name"):void 0,"aria-describedby":m,"aria-label":p?void 0:r.label,"aria-busy":!p&&r.isBusy?!0:void 0,className:n,style:o,onMouseDown:a,children:i})})};import Ex from"lucide-react/dist/esm/icons/check.js";import Dx from"lucide-react/dist/esm/icons/pencil.js";import wx from"lucide-react/dist/esm/icons/trash-2.js";import{useContext as SR,useMemo as gR,useSyncExternalStore as ER}from"react";import{jsx as qr,jsxs as bR}from"react/jsx-runtime";var nx="inline-grid whitespace-nowrap text-xs leading-4 tabular-nums text-slate-600 dark:text-slate-300",hR="[grid-area:1/1]",ox=e=>{let t=0;for(let r=e;r!==0;r&=r-1)t+=1;return t},Ad=e=>e===null||e.matchedSets===null?null:ox(e.matchedSets),DR=(e,t,r)=>{let n=Ad(e);return t.showsMatchedSets&&n!==null?r.searchMatchedKeywordsDescription(n,t.setCount):null},wR=(e,t,r)=>{let n=Ad(e);return e!==null&&!r&&(n===null||n>=1)&&t.entry===e&&t.isCurrent&&t.fields.length===0},TR=({entry:e,drawn:t,indicator:r,isEditing:n,labels:o})=>{let a=DR(e,r,o),s=Mf(t.fields,o);return[...a===null?[]:[a],...s.length>0?[s]:[],...wR(e,t,n)?[o.searchMatchOutsideViewDescription]:[]]},ax=({isEditing:e,descriptionId:t})=>{let{entry:r,tally:n,indicator:o}=xo(),{labels:a}=z(),s=ER(n.subscribe,n.getSnapshot,n.getSnapshot),{setCount:i,showsMatchedSets:l}=o,d=l?`${a.searchMatchedKeywords(i,i)} ${a.searchMatchOutsideView}`:a.searchMatchOutsideView,c=Ad(r),u=wR(r,s,e),p=DR(r,o,a),f=gR(()=>TR({entry:r,drawn:s,indicator:o,isEditing:e,labels:a}),[r,s,o,e,a]);return bR("span",{className:nx,"data-daily-report-search-indicator":!0,children:[qr("span",{"aria-hidden":"true",className:`invisible ${hR}`,"data-daily-report-search-indicator-placeholder":!0,children:d}),bR("span",{className:hR,children:[p!==null&&c!==null?qr("span",{"aria-hidden":"true",title:p,"data-daily-report-search-matched-keywords":`${c}/${i}`,children:a.searchMatchedKeywords(c,i)}):null,p!==null&&u?" ":null,u?qr("span",{"aria-hidden":"true",title:a.searchMatchOutsideViewDescription,"data-daily-report-search-outside-view":!0,children:a.searchMatchOutsideView}):null,qr("span",{id:t===null?void 0:t,className:kt,"data-daily-report-search-indicator-description":!0,children:f.join(" ")})]})]})},Ys=({isEditing:e,descriptionId:t})=>SR(rt)===null?null:qr(ax,{isEditing:e,descriptionId:t}),sx=({id:e})=>{let{entry:t,tally:r,indicator:n}=xo(),{labels:o}=z(),a=ER(r.subscribe,r.getSnapshot,r.getSnapshot),s=gR(()=>TR({entry:t,drawn:a,indicator:n,isEditing:!1,labels:o}),[t,a,n,o]);return qr("span",{id:e,hidden:!0,"data-daily-report-search-match-description":!0,children:s.join(" ")})},AR=({id:e})=>SR(rt)===null?null:qr(sx,{id:e});import{jsx as xR}from"react/jsx-runtime";var Xs=24,vR=2,ix=20,qs=5,lx=3,dx=()=>{let e=Math.cos(2*Math.PI/qs)/Math.cos(Math.PI/qs),t=Array.from({length:2*qs},(p,f)=>{let m=-Math.PI/2+f*Math.PI/qs,y=f%2===0?1:e;return{x:y*Math.cos(m),y:y*Math.sin(m)}}),r=t.map(p=>p.x),n=t.map(p=>p.y),[o,a,s,i]=[Math.min(...r),Math.max(...r),Math.min(...n),Math.max(...n)],l=(ix-vR)/(a-o),d=Xs/2-l*(o+a)/2,c=Xs/2-l*(s+i)/2,u=p=>String(Number(p.toFixed(lx)));return t.map(p=>`${u(d+l*p.x)},${u(c+l*p.y)}`).join(" ")},cx=dx(),Mn=({filled:e})=>xR("svg",{viewBox:`0 0 ${Xs} ${Xs}`,"aria-hidden":"true",fill:"none",stroke:"currentColor",strokeWidth:vR,strokeLinejoin:"round",className:e?He.starOn:He.starOff,children:xR("polygon",{points:cx})});import{Fragment as px,jsx as Zs,jsxs as mx}from"react/jsx-runtime";var ux=Ne(Ec),kn=({config:e,id:t})=>Zs("span",{id:t,className:ux(e.badgeClassName),children:e.name===void 0?e.label:mx(px,{children:[Zs("span",{"aria-hidden":"true",children:Zs("abbr",{title:e.name,children:e.label})}),Zs("span",{className:kt,children:e.name})]})});import{jsx as IR}from"react/jsx-runtime";var Qs=24,fx=6,Pn=()=>IR("svg",{viewBox:`0 0 ${Qs} ${Qs}`,"aria-hidden":"true",className:He.read,children:IR("circle",{cx:Qs/2,cy:Qs/2,r:fx,fill:"currentColor"})});import{jsx as Rx}from"react/jsx-runtime";var yx=/^(\d{4}-\d{2}-\d{2})(?:T(\d{2}:\d{2}):\d{2})?$/,Xr=({text:e})=>{let t=yx.exec(e);if(t===null)return e;let[,r,n]=t;return Rx("time",{dateTime:e,children:n===void 0?r:`${r} ${n}`})};import{Fragment as gx,jsx as Fe,jsxs as xd}from"react/jsx-runtime";var hx=Ne("m-0"),st=({label:e,classNames:t,valueId:r,children:n})=>xd("div",{className:t.field,children:[Fe("dt",{className:t.label,children:e}),Fe("dd",{id:r,className:hx(t.value),children:n})]}),bx="mt-2 font-semibold text-slate-600 text-xs uppercase tracking-wide first:mt-0 dark:text-slate-400",Sx="m-0 mt-1 text-slate-700 text-sm dark:text-slate-200",vr=({label:e,children:t})=>xd(gx,{children:[Fe("dt",{className:bx,children:e}),Fe("dd",{className:Sx,children:t})]}),CR=({report:e,visitTimeDisplay:t,labels:r})=>{let n=Rr(e.category),o=Rr(e.creationCategory);return xd("dl",{className:"m-0 flex flex-col rounded-xl bg-slate-100 p-3 text-slate-600 text-xs dark:bg-slate-800/60 dark:text-slate-300",children:[Fe(vr,{label:r.author,children:Fe(pe,{fieldKey:fe.field("author"),raw:e.author,display:Be(e.author)})}),Fe(vr,{label:r.createdAt,children:Fe(Xr,{text:Ae(e.createdAt)})}),Fe(vr,{label:r.updatedBy,children:Fe(pe,{fieldKey:fe.field("updatedBy"),raw:e.updatedBy,display:Be(e.updatedBy)})}),Fe(vr,{label:r.updatedAt,children:Fe(Xr,{text:Ae(e.updatedAt)})}),Fe(vr,{label:r.businessDate,children:Fe(Xr,{text:Ae(e.date)})}),t!==null&&Fe(vr,{label:r.visitTime,children:t}),n.text.length>0&&Fe(vr,{label:r.category,children:Fe(pe,{fieldKey:fe.field("category"),raw:e.category,display:n})}),o.text.length>0&&Fe(vr,{label:r.creationCategory,children:Fe(pe,{fieldKey:fe.field("creationCategory"),raw:e.creationCategory,display:o})})]})};import{jsx as Re,jsxs as LR}from"react/jsx-runtime";var Js={field:v(Ye,"gap-1 whitespace-nowrap bg-slate-100 text-slate-800 dark:bg-slate-800 dark:text-slate-100"),label:"text-slate-600 text-xs uppercase tracking-wide dark:text-slate-400",value:""},Tx={field:v(Ye,"gap-1 whitespace-nowrap bg-blue-50 font-semibold text-blue-800 text-xs dark:bg-blue-500/15 dark:text-blue-200"),label:"text-blue-700 text-xs uppercase tracking-wide dark:text-blue-300",value:""},_R={field:v(Ye,"gap-1 whitespace-nowrap bg-amber-100 text-amber-900 dark:bg-amber-500/15 dark:text-amber-200"),label:"text-amber-800 text-xs uppercase tracking-wide dark:text-amber-300",value:""},NR=({report:e,isRead:t,isStarred:r,isMine:n,onToggleRead:o,onToggleStar:a,onEdit:s,editButtonRef:i,onDelete:l,sourceConfig:d,visitTimeDisplay:c,markerIds:u,labels:p})=>{let f=r?p.starRemove:p.starAdd,m=t?p.markUnread:p.markRead,y=Rr(e.category),g=Rr(e.creationCategory);return LR("div",{className:"flex flex-wrap items-center gap-2 font-medium text-slate-600 text-xs dark:text-slate-300",children:[Re(Gn,{id:u.attachments,count:e.attachments.length,label:p.attachments}),d?Re(kn,{id:u.source,config:d}):null,Re(ze,{render:R=>Re("button",{type:"button",onClick:a,tabIndex:R,className:Ge,title:f,"aria-label":f,"data-detail-star-button":e.reportHubId,children:Re(Mn,{filled:r})})}),Re(ze,{render:R=>Re("button",{type:"button",onClick:o,tabIndex:R,className:Ge,title:m,"aria-label":m,"data-detail-read-button":e.reportHubId,children:t?Re(Ex,{className:He.read}):Re(Pn,{})})}),s&&Re(ze,{render:R=>Re("button",{ref:i,type:"button",onClick:s,tabIndex:R,"data-detail-edit-button":e.reportHubId,className:Ge,title:p.edit,"aria-label":p.edit,children:Re(Dx,{className:He.edit})})}),n&&Re(ze,{render:R=>Re("button",{type:"button",onClick:l,tabIndex:R,"data-detail-delete-button":e.reportHubId,className:Ge,title:p.deleteReport,"aria-label":p.deleteReport,children:Re(wx,{className:He.delete})})}),LR("dl",{className:"m-0 flex flex-wrap items-center gap-2",children:[Re(st,{label:p.id,classNames:Tx,children:e.reportHubId}),Re(st,{label:p.businessDate,classNames:Js,children:Re(Xr,{text:Ae(e.date)})}),Re(st,{label:p.author,classNames:Js,children:Re(pe,{fieldKey:fe.field("employeeName"),raw:e.employeeName,display:Be(e.employeeName)})}),Re(st,{label:p.visitTime,classNames:Js,children:hr(c)}),Re(st,{label:p.updatedAt,classNames:Js,children:Re(Xr,{text:Ae(e.updatedAt)})}),y.text.length>0&&Re(st,{label:p.category,classNames:_R,children:Re(pe,{fieldKey:fe.field("category"),raw:e.category,display:y})}),g.text.length>0&&Re(st,{label:p.creationCategory,classNames:_R,children:Re(pe,{fieldKey:fe.field("creationCategory"),raw:e.creationCategory,display:g})})]}),Re(Ys,{isEditing:!1,descriptionId:u.searchMatch})]})};import{useLayoutEffect as OR,useRef as MR}from"react";import{jsx as vx}from"react/jsx-runtime";var Ax=v(yr,Xo,Zo,qo,"h-full"),xx=(e,t,r)=>{let n=t(e),o=e===null?null:r(e);return{body:e,declareBody:t,observeRowHeight:r,release:()=>{o!==null&&o(),n()}}},kR=({itemId:e,rowId:t,name:r,bodyReady:n,observeRowHeight:o,children:a})=>{let s=MR(null),i=am(e),l=MR(null);return OR(()=>{let d=s.current,c=d===null||!n?null:d.firstElementChild,u=c instanceof HTMLElement?c:null,p=l.current;p!==null&&p.body===u&&p.declareBody===i&&p.observeRowHeight===o||(p!==null&&p.release(),l.current=xx(u,i,o))}),OR(()=>()=>{l.current?.release(),l.current=null},[]),vx(Gs,{reportHubId:e,rowId:t,name:r,className:Ax,frameRef:s,children:n?a:$s})};import{jsx as Z,jsxs as $e}from"react/jsx-runtime";var Cx=v("flex w-full flex-col gap-4",Pt,ea,fr),_x=v(Pt,fr),Lx=v("rounded-2xl",fr),Nx=v("rounded-2xl border border-red-200 border-solid bg-red-50 p-[15px] text-red-700 text-sm dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-300",fr),Xe="bg-slate-200 dark:bg-slate-700",Ox=v("whitespace-pre-wrap",Jo),Mx=v(Ye,"bg-slate-100 text-slate-600 text-xs dark:bg-slate-800 dark:text-slate-300"),kx=({interviewer:e,index:t,template:r})=>{let n=Fn(()=>Be(e.name),[e.name]),o=Z(pe,{fieldKey:fe.interviewer(t,"name"),raw:e.name,display:n},"name"),a=e.affiliation;if(!a?.trim())return o;let s=Nf(r,n.text,a);return s===null?r(n.text,a):s.map(i=>i.kind==="text"?i.text:i.kind==="name"?o:Z(pe,{fieldKey:fe.interviewer(t,"affiliation"),raw:a,display:bt(a)},"affiliation"))},Px=e=>({heading:ye(e,"name"),state:ye(e,"state"),attachments:ye(e,"attachments"),source:ye(e,"source"),searchMatch:ye(e,"match")}),Fx=$e("div",{...Rt,className:_x,children:[$e("div",{className:"mb-4 flex flex-wrap gap-2",children:[Z("div",{className:v("h-6 w-20 rounded-full",Xe)}),Z("div",{className:v("h-6 w-24 rounded-full",Xe)}),Z("div",{className:v("h-6 w-24 rounded-full",Xe)}),Z("div",{className:v("h-6 w-28 rounded-full",Xe)})]}),$e("div",{className:"mb-4 grid gap-4 md:grid-cols-[minmax(0,1fr)_240px]",children:[$e("div",{className:"space-y-4",children:[Z("div",{className:v("h-5 w-40 rounded",Xe)}),Z("div",{className:v("h-5 w-56 rounded",Xe)}),Z("div",{className:v("h-24 rounded-xl",Xe)})]}),$e("div",{className:"rounded-xl bg-slate-100 p-3 dark:bg-slate-800/60",children:[Z("div",{className:v("mb-2 h-4 w-24 rounded",Xe)}),Z("div",{className:v("mb-2 h-4 w-28 rounded",Xe)}),Z("div",{className:v("h-4 w-32 rounded",Xe)})]})]}),$e("div",{className:"space-y-4",children:[Z("div",{className:v("h-4 w-24 rounded",Xe)}),$e("div",{className:"flex flex-wrap gap-2",children:[Z("div",{className:v("h-6 w-16 rounded-full",Xe)}),Z("div",{className:v("h-6 w-16 rounded-full",Xe)}),Z("div",{className:v("h-6 w-16 rounded-full",Xe)})]}),$e("div",{className:"space-y-2",children:[Z("div",{className:v("h-16 rounded-xl",Xe)}),Z("div",{className:v("h-16 rounded-xl",Xe)})]})]})]}),Hx=()=>Fx,Bx=({item:e,observeRowHeight:t,onCommentAdded:r,userId:n})=>{let o=Pr(),a=Ix(rt),s=Fn(()=>ks(o,a,e.reportHubId,e.businessDate),[o,a,e.reportHubId,e.businessDate]),{bodyReady:i,rendered:l}=Ga(e.reportHubId,s,"measured"),{report:d,error:c}=l.detail,u=l.marksStore===a?l.marks:null,{report:p,error:f,isLoading:m,isRefetching:y}=s.read().detail,g=zs(e.reportHubId),R=Rf(),{removeStaleItem:D}=qe(),{sourceTypeConfigs:b}=z(),h=Er(),S=ys(e.reportHubId),w=S==="editing"||S==="automatic",x=vd(!1),E=vd(!1),L=p===null&&f===null&&!m&&!y;PR(()=>{L&&e.reportHubId>0&&D(e.reportHubId)},[L,e.reportHubId,D]);let N=p?.isDraft===!0,M=n&&p?.userId===n,T=n&&d?.userId===n,A=vd(s);FR(()=>{A.current=s},[s]);let I=Zr(()=>{let se=A.current.read().detail.report;se!==null&&(x.current=!0,h.open(e.reportHubId,Ln(se),!1))},[h,e.reportHubId]),_=Zr(()=>{E.current=!0,h.dismiss(e.reportHubId)},[h,e.reportHubId]),k=Zr(()=>{E.current=!0,h.discard(e.reportHubId)},[h,e.reportHubId]),O=Zr(se=>{se===null||!x.current||(x.current=!1,se.focus())},[]),F=Zr(se=>{se===null||!E.current||(E.current=!1,se.focus())},[]);FR(()=>{w||(E.current=!1)},[w]),PR(()=>{p!==null&&(M&&N&&S==="display"?h.open(e.reportHubId,Ln(p),!0):!N&&S==="automatic"&&h.discard(e.reportHubId))},[p,M,N,S,h,e.reportHubId]);let $=Zr(()=>R(e.reportHubId,"removal"),[R,e.reportHubId]),j=d!==null&&d.attachments.length>0,W=a!==null,V=d===null?void 0:Jt(d.sourceType,b),le=d===null&&(m||p!==null||f!==null),Te=Ae(e.businessDate),be=ye(g,"state"),De=i?c===null&&d!==null&&!w?{kind:"card",describedBy:[be,...j?[ye(g,"attachments")]:[],...V!==void 0?[ye(g,"source")]:[],...W?[ye(g,"match")]:[]]}:{kind:"label",label:Te,isBusy:c===null&&le,describedBy:c!==null||d!==null?[be]:On}:{kind:"label",label:Te,isBusy:!0,describedBy:On};return Z(kR,{itemId:e.reportHubId,rowId:g,name:De,bodyReady:i,observeRowHeight:t,children:c!==null?Z(Vx,{itemId:e.reportHubId,stateId:be}):d?w?Z(VR,{report:d,stateId:be,onCancel:_,onPublishSuccess:k,titleInputRef:O}):Z(In,{reportHubId:e.reportHubId,entry:u,children:Z(BR,{item:e,report:d,sourceConfig:V,rowId:g,onCommentAdded:r,userId:n,onEdit:T?I:void 0,editButtonRef:F,onCommentSectionRemoved:$})}):Z(Hx,{})})},HR=Id(Bx),BR=Id(({item:e,report:t,sourceConfig:r,rowId:n,onCommentAdded:o,userId:a,onEdit:s,editButtonRef:i,onCommentSectionRemoved:l})=>{let{toggleStar:d,toggleRead:c,pendingStarUpdates:u,pendingReadUpdates:p,deleteReport:f}=qe(),{labels:m,headingLevel:y}=z(),g=Dr[y],R=ba(t.sourceType,r),D=Px(n),b=Zr(()=>o?.(e.reportHubId),[o,e.reportHubId]),h=u.current.get(t.reportHubId),S=h===void 0?t.isStarred:h,w=p.current.get(t.reportHubId),x=w===void 0?t.isRead:w,E=!!(a&&t.userId===a),L=async()=>{try{await c(t.reportHubId,!x,t.date)}catch{}},N=async()=>{try{await d(t.reportHubId,!S,t.date)}catch{}},M=async()=>{if(confirm(m.confirmDelete))try{await f(t.reportHubId,t.date)}catch{}},T=Fn(()=>eu(t.content??null),[t.content]),A=Fn(()=>Be(t.customerName),[t.customerName]),I=Fn(()=>Be(t.subject),[t.subject]),_=Fn(()=>{let k=t.visitTimeFrom?.trim(),O=t.visitTimeTo?.trim();return k&&O?`${k} - ${O}`:k||O||null},[t.visitTimeFrom,t.visitTimeTo]);return $e("div",{...Rt,"aria-labelledby":D.heading,onDoubleClick:s,className:Cx,children:[Z(pt,{level:y,id:D.heading,tabIndex:-1,...Ka,className:kt,children:`${Ae(t.date)} ${hr(t.employeeName)} ${hr(t.subject)}`}),Z("span",{id:D.state,className:kt,children:m.rowState({isRead:x,isStarred:S})}),Z(js,{id:ye(n,"position"),whileTotalUnknownOnly:!0}),Z(NR,{report:t,sourceConfig:r,isRead:x,isStarred:S,isMine:E,onToggleRead:L,onToggleStar:N,onEdit:s,editButtonRef:i,onDelete:M,visitTimeDisplay:_,markerIds:D,labels:m}),$e("div",{className:"grid gap-4 md:grid-cols-[minmax(0,1fr)_240px]",children:[$e("div",{className:"flex flex-col gap-4",children:[$e("div",{className:"grid gap-4 sm:grid-cols-2",children:[$e("div",{className:"flex flex-col gap-1",children:[Z(pt,{level:g,className:qt,children:m.customer}),Z("span",{className:"font-semibold text-base text-slate-900 dark:text-slate-100",children:Z(pe,{fieldKey:fe.field("customerName"),raw:t.customerName,display:A})})]}),$e("div",{className:"flex flex-col gap-1",children:[Z(pt,{level:g,className:qt,children:m.subject}),Z("span",{className:"text-slate-700 text-sm dark:text-slate-200",children:Z(pe,{fieldKey:fe.field("subject"),raw:t.subject,display:I})})]})]}),T.text.length>0&&$e("div",{className:"flex flex-col gap-2",children:[Z(pt,{level:g,className:qt,children:m.content}),Z("div",{className:Ox,children:Z(pe,{fieldKey:fe.field("content"),raw:t.content,display:T})})]}),t.interviewers.length>0&&$e("div",{className:"flex flex-col gap-2",children:[Z(pt,{level:g,className:qt,children:m.interviewers}),Z("ul",{className:"flex flex-wrap gap-2",children:t.interviewers.map((k,O)=>Z("li",{className:Mx,children:Z(kx,{interviewer:k,index:O,template:m.interviewerWithAffiliation})},JSON.stringify([k.name,k.affiliation])))})]}),Z(Is,{attachments:t.attachments}),Z(Lo,{report:t,userId:a,canComment:R,onCommentAdded:b,onSectionRemoved:l,formPlacement:"after-section"})]}),Z(CR,{report:t,visitTimeDisplay:_,labels:m})]})]})});BR.displayName="DailyReportResolvedItem";var VR=Id(({report:e,stateId:t,onCancel:r,onPublishSuccess:n,titleInputRef:o})=>{let{labels:a}=z();return $e("div",{...Rt,className:Lx,children:[Z("span",{id:t,className:kt,children:a.rowEditingState({isDraft:e.isDraft})}),Z(Ms,{report:e,onCancel:r,onPublishSuccess:n,titleInputRef:o})]})});VR.displayName="DailyReportEditingBody";var Vx=({itemId:e,stateId:t})=>{let{labels:r}=z();return Z("div",{...Rt,className:Nx,children:Z("p",{id:t,children:r.reportLoadFailed(e)})})};import{VirtualScroll as Zx,virtualScrollItemElementId as Qx}from"@aiquants/virtualscroll";import{useCallback as YR,useId as qR,useMemo as Ld,useRef as Jx,useState as ev}from"react";import{createContext as Ux,useContext as Wx,useLayoutEffect as Kx}from"react";var UR=()=>{let e=!1;return{request:()=>{e=!0},isPending:()=>e,take:()=>{let t=e;return e=!1,t}}},Cd=Ux(null),WR=(e,t)=>{let r=Wx(Cd);Kx(()=>{r===null||!r.isPending()||e.current===null||(r.take(),t(null,"handOver"))})};import{useCallback as KR,useLayoutEffect as zR,useMemo as $R,useRef as _d}from"react";var zx=(e,t,r,n)=>{for(let o=r;o<=n;o++){let a=Ee(e,o);if(a===void 0||a.reportHubId!==Ee(t,o)?.reportHubId)return!0}return!1},$x=(e,t,r,n)=>{let o=e*r+t,a=Math.min(Math.max(Math.floor(o/r),0),n-1);return{index:a,offsetPx:o-a*r}},jx=(e,t,r,n)=>{let o=e,a=t;for(;a<0&&o>0;)o-=1,a+=r(o);for(;o<n-1&&a>=r(o);)a-=r(o),o+=1;return{index:o,offsetPx:a}},Gx=(e,t,r,n,o)=>{if(t===e.recordedAt)return e;if(!(t>0))return null;let a=e.offsetPx+(t-e.recordedAt),{index:s,offsetPx:i}=n.kind==="uniform"?$x(e.index,a,n.rowHeight,r.length):jx(e.index,a,Bs(n),r.length);return{reportHubId:Vt(r,s).reportHubId,index:s,offsetPx:i,lastVisibleIndex:Us({index:s,offsetPx:i},o,r.length,n),recordedAt:t}},Yx=(e,t,r)=>{for(let n=r.index+1;n<=r.lastVisibleIndex&&n<e.length;n++){let o=ve(t,Vt(e,n).reportHubId,n-1);if(o!==-1)return o}return-1},jR=({items:e,handleRef:t,rowSizing:r,isRevealPending:n})=>{let o=_d(null),a=_d(e),s=_d(r),i=KR(()=>{let c=t.current,u=c===null?-1:c.getScrollPosition(),p=c===null||!(u>0)?null:c.getScrollAnchor(),f=a.current,m=p===null?void 0:Ee(f,p.index),y=c===null?0:c.getViewportSize();o.current=p===null||m===void 0||!(y>0)?null:{reportHubId:m.reportHubId,index:p.index,offsetPx:p.offsetPx,lastVisibleIndex:Us(p,y,f.length,s.current),recordedAt:u}},[t]),l=$R(()=>({toIndex:(c,u)=>{let p=t.current;p!==null&&(p.scrollToIndex(c,u),i())},by:c=>{let u=t.current;u!==null&&(u.scrollBy(c),i())},resizeRow:(c,u)=>{let p=t.current;p!==null&&(p.updateItemSize(c,u),i())}}),[t,i]);zR(()=>{let c=a.current;a.current=e;let u=o.current,p=t.current;if(c===e||u===null||p===null||n())return;let f=Gx(u,p.getScrollPosition(),c,s.current,p.getViewportSize());if(f===null){o.current=null;return}let m=ve(e,f.reportHubId,f.index),y=m===-1?Yx(c,e,f):m;if(y===-1){o.current=null;return}if(y===f.index&&!zx(c,e,f.index,f.lastVisibleIndex)){o.current=f;return}p.scrollToIndex(y,{align:"top",offset:-f.offsetPx}),o.current={reportHubId:Vt(e,y).reportHubId,index:y,offsetPx:f.offsetPx,lastVisibleIndex:Us({index:y,offsetPx:f.offsetPx},p.getViewportSize(),e.length,r),recordedAt:p.getScrollPosition()}},[e,t,r,n]),zR(()=>{s.current=r},[r]);let d=KR(c=>{if(c.cause!=="clamp"){i();return}let u=o.current;u!==null&&(o.current={...u,recordedAt:u.recordedAt+c.delta})},[i]);return $R(()=>({handleRangeChange:i,handleScrollAdjust:d,scroller:l}),[i,d,l])};import{useCallback as qx}from"react";var Xx=20,GR=({hostTestId:e,scrollContainerRef:t,handleRef:r,scroller:n,itemsRef:o,rowPass:a})=>qx(s=>{t.current=s;let i=s.querySelector(`[data-testid="${e}"]`);return i!==null&&Object.defineProperty(i,"__virtualScroll",{configurable:!0,get:()=>{let l=r.current;if(l!==null)return{getViewportSize:()=>l.getViewportSize(),getScrollPosition:()=>l.getScrollPosition(),getScrollAnchor:()=>l.getScrollAnchor(),getRange:()=>l.getRange(),getFenwickSize:()=>l.getFenwickSize(),findReportIndex:d=>wt(o.current,d),getReportItem:d=>Ee(o.current,d),getReportIds:(d=Xx)=>Np(o.current,d),revealIndex:(d,c)=>n.toIndex(d,c),rowPass:{counters:()=>({syncReleases:a.syncReleaseCount(),oversizeFrames:a.oversizeFrameCount(),lateFrames:a.lateFrameCount(),lateForcedFrames:a.lateForcedFrameCount()})}}}}),()=>{i!==null&&delete i.__virtualScroll,t.current=null}},[e,t,r,n,o,a]);import{jsx as Mo}from"react/jsx-runtime";var tv=Object.freeze({skipFar:!0}),ei=({containerRef:e,testId:t,itemsRef:r,rowSetSize:n,isViewRevealPending:o,onRangeChange:a,...s})=>{let i=Jx(null),l=YR(M=>(i.current=M,()=>{i.current=null}),[]),{labels:d}=z(),c=qR(),{handleRangeChange:u,handleScrollAdjust:p,scroller:f}=jR({items:s.items,handleRef:i,rowSizing:s.rowSizing,isRevealPending:o}),{handleRangeChange:m,...y}=RR({...s,containerRef:e,handleRef:i,scroller:f,gridId:c}),{cursor:g,selectionStore:R,focusViewRow:D}=y,[b]=ev(()=>nm({gridId:c,isHolding:()=>R.isHeld(),subscribeHold:M=>R.subscribeHold(M),keySteps:R.keySteps,activeIndex:()=>{let M=g.getActiveId(),T=M===null?-1:ve(r.current,M,g.getActiveIndexHint());return T===-1?null:T},indexOf:M=>{let T=e.current,A=T===null?null:T.ownerDocument.getElementById(Qx(c,M)),I=A===null?null:Sr(A),_=ve(r.current,M,I===null?null:I-1);return _===-1?null:_}})),h=GR({hostTestId:t,scrollContainerRef:e,handleRef:i,scroller:f,itemsRef:r,rowPass:b});WR(e,D);let S=qR(),w=s.onSelect!==null,x=YR(M=>{m(M),u(),a(M)},[m,u,a]),E=Ld(()=>({role:ul,id:c,tabIndex:0,"aria-label":d.title,"aria-describedby":w?S:void 0,"aria-rowcount":n}),[c,d.title,w,S,n]),L=Ld(()=>w?Mo("span",{id:S,className:"sr-only",children:d.listKeyboardHelp}):null,[w,S,d.listKeyboardHelp]),N=Ld(()=>({cursor:g,rowPass:b,focusViewRow:D}),[g,b,D]);return{...y,handleRangeChange:x,handleScrollAdjust:p,attachVirtualScroll:l,handleRef:i,scroller:f,attachScrollContainer:h,contentProps:E,keyboardHelp:L,rowPass:b,rowScope:N}},ti=({rowScope:e,items:t,...r})=>{let n=yR(e.cursor,t);return Mo(Td.Provider,{value:e.cursor,children:Mo(ja.Provider,{value:e.rowPass,children:Mo(Vl.Provider,{value:e.focusViewRow,children:Mo(Zx,{...r,activeItemIndex:n,activeItemVisibleInset:dc,itemZones:tv})})})})};import{useCallback as rv,useContext as XR,useEffect as ZR,useMemo as nv,useState as ov}from"react";var QR=e=>{let t=e;for(;t<zi;)t+=un;return t>=io+un&&(t-=un*Math.floor((t-io)/un)),t},av=(e,t,r)=>e===null||t<e.start||r>e.end?{start:t-io,end:r+io}:{start:t-QR(t-e.start),end:r+QR(e.end-r)},ri=e=>{for(let t of e.values())t();e.clear()},JR=(e,t)=>{for(let[r,n]of e)t.has(r)||(n(),e.delete(r))},sv=()=>{let e=null,t=new Map,r=new Map,n=null,o=null,a=()=>{},s=()=>{ri(t),ri(r),e=null,o=null};return{releaseAll:s,evaluate:(i,l)=>{if(i!==null&&(n=i),n===null)return;if(l.detailSource!=="ids"){s();return}o!==null&&o.detailStore!==l.detailStore&&(ri(t),e=null),o!==null&&o.marksStore!==l.marksStore&&ri(r),e=av(e,n.renderingStartIndex,n.renderingEndIndex);let d=Math.max(0,e.start),c=Math.min(l.itemCount-1,e.end);if(o!==null&&o.detailStore===l.detailStore&&o.marksStore===l.marksStore&&o.from===d&&o.to===c&&o.getItem===l.getItem)return;o={detailStore:l.detailStore,marksStore:l.marksStore,getItem:l.getItem,from:d,to:c};let u=new Map;for(let m=d;m<=c;m++){let y=l.getItem(m);y.reportHubId>0&&u.set(y.reportHubId,y.businessDate)}let{detailStore:p,marksStore:f}=l;for(let[m,y]of u)t.has(m)||t.set(m,p.subscribe(m,y,a)),f!==null&&!r.has(m)&&r.set(m,f.subscribe(m,a));JR(t,u),JR(r,u)}}},ni=({itemCount:e,getItem:t})=>{let r=XR(pn),n=Pr(),o=XR(rt),[a]=ov(sv),s=nv(()=>({detailSource:r,detailStore:n,marksStore:o,itemCount:e,getItem:t}),[r,n,o,e,t]),i=rv(l=>a.evaluate(l,s),[a,s]);return ZR(()=>{a.evaluate(null,s)},[a,s]),ZR(()=>()=>a.releaseAll(),[a]),i};import{Fragment as fv,jsx as jt,jsxs as mv}from"react/jsx-runtime";var th={pointerDragInputs:xa,wheelSpeedMultiplier:ga,inertiaOptions:Sn(!1),enableKeyboardNavigation:!1},lv={...th,inertiaOptions:Sn(!0)},eh="daily-report-detail-list",dv=v("relative w-full",ia,sa,la),cv=v(ht,"relative"),uv=300,Od=e=>{let t=mt(null),[r,n]=ko(null),o=Pa(t),a=gn(r),s=je(i=>(t.current=i,n(i),()=>{t.current=null,n(null)}),[]);return jt("div",{ref:s,className:na,children:jt("div",{className:oa,children:o===null?null:jt(pv,{...e,viewportHeight:o,reducedMotion:a})})})},pv=({dailyReportItems:e,rowSetSize:t,userId:r,selectedItemId:n,onSelectItem:o,scrollRestoreRef:a,viewportHeight:s,reducedMotion:i})=>{let[{initialScrollAnchor:l,restored:d}]=ko(()=>{let H=a?.current;if(!H||H.anchorReportHubId!==(n??null))return{initialScrollAnchor:void 0,restored:!1};if(!H.topItem)return{initialScrollAnchor:void 0,restored:!0};let K=wt(e,H.topItem.reportHubId);return K!==-1?{initialScrollAnchor:{index:K,offsetPx:H.topItem.offsetPx},restored:!0}:{initialScrollAnchor:{index:H.topItem.index,offsetPx:0},restored:!0}}),c=mt(d),u=mt(n??null),p=Ue(()=>a?.current.measuredHeights??new Map),f=mt(null),m=Oa(),y=Ji(),[g]=ko(Ya),R=mt(null),D=mt(null),b=mt(e),h=mt(o);iv(()=>{b.current=e,h.current=o},[e,o]);let S=mt(null),[w,x]=ko(0),E=mt(null),L=e.length,N=t===void 0?L:t,M=je(H=>{let K=Ee(e,H);return K===void 0?Da:K},[e]),T=je(H=>{let K=p.current.get(M(H).reportHubId);return K===void 0?Qu:K},[p,M]),A=je(H=>Va(e,H),[e]),I=Nd(()=>({kind:"measured",heightOf:T}),[T]),_=je((H,K)=>{S.current={reportHubId:H,index:K},x(B=>B+1),h.current?.(H)},[]),k=je((H,K)=>{if(L===0)return;let B=Math.max(0,H),Y=Math.min(L-1,K);if(B>Y)return;let J=new Set;for(let Me=B;Me<=Y;Me++){let yt=M(Me);if(yt.businessDate&&J.add(yt.businessDate),J.size>=qu)break}J.forEach(Me=>{y(Me)})},[M,L,y]),O=mt(null),F=je(()=>O.current,[]),$=ni({itemCount:L,getItem:M}),j=je(H=>{if(L===0)return;let{renderingStartIndex:K,renderingEndIndex:B,visibleStartIndex:Y}=H,J=M(Y);J.reportHubId>0&&(O.current=J.reportHubId),J.businessDate&&g.setLabel(Ae(J.businessDate)),k(K,B),k(B+1,B+Ea),k(K-Ea,K-1),$(H)},[M,L,k,g,$]),W=je(()=>E.current!==null,[]),{containerProps:V,handleRangeChange:le,handleScrollAdjust:Te,attachVirtualScroll:be,handleRef:De,scroller:se,attachScrollContainer:Ze,contentProps:We,keyboardHelp:q,resolveSelectedIndex:he,activateRow:Q,rowPass:oe,rowScope:me}=ei({items:e,selectedId:n??null,onSelect:o===void 0?null:_,onActivate:_,containerRef:f,rootRef:f,testId:eh,itemsRef:b,rowSetSize:N,rowSizing:I,arrowAlign:"top",isViewRevealPending:W,onRangeChange:j});Xa({items:e,scroller:se,readTopReportId:F});let Ie=je((H,K)=>{if(De.current===null)return!1;let B=b.current,Y=K!==null&&K.reportHubId===H?ve(B,H,K.index):he(B,H);return Y===-1?!1:(c.current&&(c.current=!1,H===u.current)||K!==null&&K.reportHubId===H&&K.index===Y||se.toIndex(Y,{align:"top"}),!0)},[De,he,se]);Qr(()=>{let H=S.current;S.current=null,E.current=null,n!=null&&(Ie(n,H)||(E.current=n))},[n,Ie]),Qr(()=>{let H=E.current;H!==null&&Ie(H,null)&&(E.current=null)},[e,Ie]),Qr(()=>{let H=a?.current;H&&(H.anchorReportHubId=n??null)},[n,a]),Qr(()=>{S.current=null},[w]);let Qe=mt(null),It=je(()=>{De.current&&(Qe.current=De.current);let H=a?.current,K=Qe.current;if(H&&K){let Y=K.getScrollAnchor(),J=Y===null?void 0:Ee(b.current,Y.index);Y&&J&&(H.topItem={reportHubId:J.reportHubId,index:Y.index,offsetPx:Y.offsetPx})}let B=f.current;B&&(B.toggleAttribute(rn,!0),D.current&&clearTimeout(D.current),D.current=setTimeout(()=>{B.toggleAttribute(rn,!1),D.current=null},150))},[De,a]),Je=je(H=>jt(qa,{...H,store:g}),[g]);Qr(()=>{let H=f.current;if(!H)return;let K=()=>{g.setWheelScrollActive(!0),R.current&&clearTimeout(R.current),R.current=window.setTimeout(()=>{g.setWheelScrollActive(!1),R.current=null},wa)};return H.addEventListener("wheel",K,{passive:!0}),()=>{H.removeEventListener("wheel",K),R.current&&clearTimeout(R.current)}},[g]);let Mt=je(H=>{for(let[K,B]of H){oe.measured(K);let Y=K.parentElement,J=Y===null?null:ho(Y),Me=Y===null?null:Sr(Y);if(J===null||Me===null)continue;let yt=B+2*Gt;if(p.current.get(J)===yt)continue;let pr=ve(b.current,J,Me-1);pr!==-1&&(p.current.set(J,yt),se.resizeRow(pr,yt))}},[p,se,oe]),[_e]=ko(()=>Gp(Mt)),et=_e.observe,tn=je(H=>{let K=Pe(H),B=Ze(H),Y=_e.attach(K),J=oe.attach(K,_e.remeasure);return()=>{J(),Y(),B()}},[Ze,oe,_e]);Qr(()=>{L!==0&&k(0,Math.min(L-1,Ea))},[L,k]);let C=mt(null),P=je(H=>{let K=ve(b.current,H,null);K!==-1&&(C.current!==null&&clearTimeout(C.current),C.current=setTimeout(()=>{C.current=null;let B=ve(b.current,H,K);B!==-1&&se.toIndex(B,{align:"bottom"})},uv))},[se]);Qr(()=>()=>{C.current!==null&&clearTimeout(C.current)},[]);let U=je(H=>{if(!h.current)return;let K=Ur(H.target,f.current);if(K===null||Wp(H.target,K))return;let B=Up(K,b.current);B!==null&&(Q(B.reportHubId,B.index),_(B.reportHubId,B.index))},[_,Q]),G=je((H,K)=>jt(Kr.Provider,{value:K,children:jt(bo.Provider,{value:H.reportHubId,children:jt(HR,{item:H,observeRowHeight:et,onCommentAdded:P,userId:r})})},H.reportHubId),[et,P,r]),re=Nd(()=>({...Aa,renderThumbOverlay:Je}),[Je]),ie=Nd(()=>jt(Wr.Provider,{value:N,children:jt(ti,{ref:be,rowScope:me,items:e,itemCount:L,getItem:M,getItemKey:A,getItemHeight:T,viewportSize:s,initialScrollAnchor:l,overscanCount:Ta,scrollBarOptions:re,behaviorOptions:i?lv:th,onRangeChange:le,onScrollAdjust:Te,onScroll:It,testId:eh,className:dv,locale:m.locale,labels:m.labels,contentProps:We,children:G})}),[be,me,e,N,L,M,A,T,s,i,l,re,le,Te,It,m.locale,m.labels,We,G]);return jt(fv,{children:mv("div",{ref:tn,className:cv,...za,...V,onClick:U,children:[q,ie]})})};import oh from"lucide-react/dist/esm/icons/refresh-cw.js";import{createContext as bv,memo as Sv,useContext as gv,useLayoutEffect as Ev,useRef as Dv}from"react";import{jsx as Md,jsxs as yv}from"react/jsx-runtime";var oi=e=>10**String(e).length-1,Po=({text:e,widestTexts:t,ref:r})=>yv("span",{ref:r,className:Fc,children:[Md("span",{"aria-hidden":"true",className:aa,children:[...new Set(t)].map(n=>Md("span",{className:Lr,children:n},n))}),Md("span",{className:Hc,children:e})]});import{useLayoutEffect as Rv,useState as rh}from"react";import{jsx as nh,jsxs as hv}from"react/jsx-runtime";var kd=Object.freeze({status:"",alert:""}),ai=({announcement:e,testId:t})=>{let[r]=rh(e),[n,o]=rh(!1),a=n||e.status!==r.status||e.alert!==r.alert;Rv(()=>{a&&!n&&o(!0)},[a,n]);let{status:s,alert:i}=a?e:kd;return hv("span",{"data-testid":t,className:"sr-only",children:[nh("span",{role:"status",children:s}),nh("span",{role:"alert",children:i})]})};import{Fragment as kv,jsx as it,jsxs as vt}from"react/jsx-runtime";var Fd=bv(!0),wv="daily-report-ids-stream-status-announcer",Tv="inline-grid whitespace-nowrap text-start",ih="col-start-1 row-start-1",Av=`${aa} ${ih}`,xv=`${ih} flex justify-self-start rounded-full empty:not-focus:invisible ${te}`,lh=v(Ye,"gap-1 bg-blue-100 font-medium text-blue-800 text-xs tabular-nums dark:bg-blue-900/40 dark:text-blue-300"),Pd="size-2 rounded-full bg-blue-500 dark:bg-blue-400",dh=v(Ye,"gap-1 bg-amber-100 font-medium text-amber-800 text-xs tabular-nums dark:bg-amber-900/40 dark:text-amber-300"),ch=v(Ye,"gap-1 bg-rose-100 font-medium text-rose-800 text-xs dark:bg-rose-900/40 dark:text-rose-300"),uh=v(Ye,"gap-1 bg-slate-100 font-medium text-slate-700 text-xs dark:bg-slate-800/40 dark:text-slate-300"),ph=v("inline-flex h-5 items-center rounded-full bg-rose-200 px-2 font-semibold text-rose-900 hover:bg-rose-300 dark:bg-rose-800 dark:text-rose-100 dark:hover:bg-rose-700",te),ah="size-3",sh=`${lh} ${Lr}`,vv=`${dh} ${Lr}`,Iv=`${ch} ${Lr}`,Cv=`${uh} ${Lr}`,mh=(e,t)=>oi(t===null?e:Math.max(e,t)),_v=(e,t,r)=>{let n=mh(t,r);return r===null||r===0?{text:e.streamProgressCount(t),widestText:e.streamProgressCount(n)}:{text:e.streamProgressRatio(t,r,Math.min(100,Math.round(t/r*100))),widestText:e.streamProgressRatio(n,n,100)}},Lv=({labels:e,loadedCount:t,totalCount:r})=>{let{text:n,widestText:o}=_v(e,t,r);return vt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"streaming",className:lh,children:[it("span",{"aria-hidden":"true",className:Pd}),it(Po,{text:n,widestTexts:[o]})]})},Nv=(e,t,r)=>e.phase==="streaming"?it(Lv,{labels:t,loadedCount:e.loadedCount,totalCount:e.totalCount}):e.phase==="retrying"?vt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"retrying",className:dh,children:[it(oh,{"aria-hidden":"true",className:"size-3 motion-safe:animate-spin"}),t.streamRetrying(e.loadedCount)]}):e.phase==="failed"?vt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"failed",className:ch,children:[t.streamFailed,it("button",{type:"button","data-testid":"daily-report-ids-stream-retry",onClick:r,className:ph,children:t.streamRetry})]}):e.isRevalidating?vt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"revalidating",className:uh,children:[it(oh,{"aria-hidden":"true",className:"size-3 motion-safe:animate-spin"}),t.streamRevalidating]}):null,Ov=Sv(({labels:e,widest:t})=>vt("span",{"aria-hidden":"true",className:Av,children:[vt("span",{className:sh,children:[it("span",{className:Pd}),e.streamProgressCount(t)]}),vt("span",{className:sh,children:[it("span",{className:Pd}),e.streamProgressRatio(t,t,100)]}),vt("span",{className:vv,children:[it("span",{className:ah}),e.streamRetrying(t)]}),vt("span",{className:Iv,children:[e.streamFailed,it("span",{className:ph,children:e.streamRetry})]}),vt("span",{className:Cv,children:[it("span",{className:ah}),e.streamRevalidating]})]})),Hd=(e,t)=>e.retryingCount!==null?{status:t.streamRetrying(e.retryingCount),alert:""}:e.phase==="failed"?{status:"",alert:e.hasItems?t.streamFailed:t.loadError}:!e.hasItems&&(e.phase==="idle"||e.phase==="streaming")?{status:t.loadingIds,alert:""}:kd,Mv=(e,t)=>Hd({phase:e.phase,hasItems:!0,retryingCount:e.phase==="retrying"?e.loadedCount:null},t),Fo=()=>{let e=Fm(),{labels:t}=z(),r=gv(Fd),n=Dv(null),a=Nv(e,t,()=>{ar([n.current]),ds()}),s=a===null;return Ev(()=>{let i=n.current;!s||i===null||!i.contains(Ke(i))||ar(bs(i.ownerDocument))},[s]),vt(kv,{children:[vt("span",{className:Tv,children:[it(Ov,{labels:t,widest:mh(e.loadedCount,e.totalCount)}),it("span",{ref:n,tabIndex:-1,"data-daily-report-stream-status":"",className:xv,children:a})]}),r?it(ai,{announcement:Mv(e,t),testId:wv}):null]})};import{Panel as kh,PanelGroup as nC,PanelResizeHandle as oC}from"@aiquants/resize-panels";import{useCallback as lt,useEffect as pi,useLayoutEffect as mi,useMemo as Yd,useRef as Cr,useState as yi}from"react";import{useSyncExternalStore as Pv}from"react";var fh="(max-width: 639px)",Fv=()=>{},Hv=e=>{if(typeof window>"u"||typeof window.matchMedia!="function")return Fv;let t=window.matchMedia(fh);return t.addEventListener("change",e),()=>t.removeEventListener("change",e)},Bv=()=>typeof window<"u"&&typeof window.matchMedia=="function"?window.matchMedia(fh).matches:!1,Vv=()=>!1,yh=()=>Pv(Hv,Bv,Vv);import{SwipeCloseGuardContext as mI,useOverlayEscapeStack as fI,useSwipeGuardState as yI,useSwipeToDismissOverlay as RI,useTapClick as hI,useTransitionDisplay as bI}from"@aiquants/swipe-overlay";import{useCallback as li,useEffect as Vn,useId as $d,useLayoutEffect as jd,useRef as Nt,useState as di}from"react";import{useMemo as Uv}from"react";var Ho=(e,t)=>{let{id:r,indexHint:n}=t;return Uv(()=>{if(r===null)return null;let o=ve(e,r,n);return o===-1?null:Vt(e,o)},[e,r,n])};import Wv from"lucide-react/dist/esm/icons/check.js";import Kv from"lucide-react/dist/esm/icons/pencil.js";import zv from"lucide-react/dist/esm/icons/trash-2.js";import{memo as $v,useCallback as Jr,useDeferredValue as jv,useEffect as Ud,useId as bh,useLayoutEffect as Wd,useMemo as Ko,useRef as Wo,useState as Sh,useSyncExternalStore as Gv}from"react";import*as dr from"@radix-ui/react-tabs";import*as ft from"react";import{jsx as Hn}from"react/jsx-runtime";var Rh=ft.createContext(null),hh=e=>{let t=ft.useContext(Rh);if(t===null)throw new Error(`[daily-report] ${e} must be rendered inside Tabs`);return t},Bd=(e,t)=>`${e}-trigger-${t}`,Vd=(e,t)=>`${e}-panel-${t}`,Bo=ft.forwardRef(({value:e,children:t,...r},n)=>{let o=ft.useId(),a=ft.useMemo(()=>({baseId:o,value:e}),[o,e]);return Hn(dr.Root,{ref:n,value:e,...r,children:Hn(Rh,{value:a,children:t})})});Bo.displayName=dr.Root.displayName;var Vo=ft.forwardRef(({className:e,...t},r)=>Hn(dr.List,{ref:r,className:v("inline-flex",e),...t}));Vo.displayName=dr.List.displayName;var Uo=ft.forwardRef(({className:e,value:t,...r},n)=>{let{baseId:o}=hh("TabsTrigger");return Hn(dr.Trigger,{ref:n,value:t,...r,id:Bd(o,t),"aria-controls":Vd(o,t),className:v(`${Ic} ${te}`,e)})});Uo.displayName=dr.Trigger.displayName;var Bn=ft.forwardRef(({className:e,value:t,tabStop:r,children:n,...o},a)=>{let{baseId:s,value:i}=hh("TabsContent"),l=t===i,d="mt-2 data-[state=inactive]:hidden";return r?Hn("div",{ref:a,role:"tabpanel",id:Vd(s,t),"aria-labelledby":Bd(s,t),"data-state":l?"active":"inactive",hidden:!l,tabIndex:0,...o,className:v(`${d} ${te}`,e),children:l?n:null}):Hn("div",{ref:a,role:"tabpanel",id:Vd(s,t),"aria-labelledby":Bd(s,t),"data-state":l?"active":"inactive",hidden:!l,...o,className:v(d,e),children:l?n:null})});Bn.displayName="TabsContent";import{jsx as X,jsxs as cr}from"react/jsx-runtime";var wh=v(Nr,"w-24 shrink-0"),gh={field:"flex items-baseline",label:wh,value:"flex-1"},Yv={field:"flex min-w-0 flex-1 items-baseline",label:wh,value:"wrap-break-word min-w-0 flex-1"},qv={field:"flex flex-col gap-1",label:Nr,value:""},Xv={field:"flex min-w-0 items-center gap-1",label:v(Nr,"shrink-0 whitespace-nowrap"),value:""},Zv="flex min-h-4 flex-wrap items-center gap-x-2 gap-y-1 text-slate-500 text-xs dark:text-slate-300",Eh=v("flex-1 touch-pan-y overflow-y-auto overflow-x-hidden pt-2 text-sm",Ai,pc,uc),Dh={desktop:v(Eh,Kc),overlay:Eh},Qv=v("flex flex-col gap-1",xi),Jv=v(xc,"grid grid-cols-2 gap-1"),eI=v("m-0 font-normal text-slate-900 text-sm dark:text-slate-100",te),Kd=e=>{let t=e,r=new Set;return{isDwelling:()=>t,set:n=>{if(n!==t){t=n;for(let o of[...r])o()}},subscribe:n=>(r.add(n),()=>{r.delete(n)})}},tI=(e,t,r,n,o,a)=>{let s=Wo(null),i=e?.reportHubId;Wd(()=>{s.current=null},[i]),Ud(()=>{n||(s.current=null)},[n]);let l=Jr(async(d,c)=>{c||(s.current=d.reportHubId);try{await a(d.reportHubId,!d.isRead,d.date)}catch{}},[a]);return Ud(()=>{if(!(r&&e&&!e.isRead&&!t)||s.current===e.reportHubId)return;let d=null,c=()=>{d!==null&&clearTimeout(d),d=o.isDwelling()?setTimeout(()=>l(e,!0),500):null};c();let u=o.subscribe(c);return()=>{u(),d!==null&&clearTimeout(d)}},[e,t,r,l,o]),{handleToggleRead:l}},zd="article",rI=["article","relations"],nI=e=>{if(e==="article"||e==="relations")return e;throw new Error(`[daily-report] unknown side-pane tab: ${e}`)},oI=v("hidden h-full min-h-0 w-full min-w-0 flex-1 flex-col gap-4 sm:flex",Pt),aI=v("flex h-full flex-1 items-center justify-center text-center",nn),sI=9,iI=.875,lI=16,Th=4*Math.ceil((2*Gt+2*Qo+2*yc+sI*iI*lI)/4),Ah=({dailyReportItems:e,selectionStore:t,autoMarkRead:r,userId:n,onReportDeleted:o})=>{let{labels:a}=z(),s=bh(),i=bh(),[l,d]=Sh(zd),{selected:c,settled:u}=Gv(t.subscribe,t.getSnapshot,t.getSnapshot),p=Ho(e,c),f=Ho(e,jv(u)),m=p===null?null:p.reportHubId,g=(f===null?null:f.reportHubId)===m,[R]=Sh(()=>Kd(g));return Wd(()=>{R.set(g)},[R,g]),X("aside",{"data-testid":"daily-report-side-pane","data-report-id":p?.reportHubId,"data-displayed-report-id":f?.reportHubId,"aria-busy":g?void 0:!0,className:oI,children:f===null?X("div",{className:aI,children:X("p",{className:Xt,children:a.selectPrompt})}):X(ii,{item:f,placement:"desktop",headingId:s,authorId:i,activeTab:l,onActiveTabChange:d,autoMarkRead:r,isActive:!0,dwell:R,userId:n,onReportDeleted:o},f.reportHubId)})},dI=({reportHubId:e,children:t})=>{let r=Bf(e);return X(In,{reportHubId:e,entry:r,children:t})},ii=$v(({item:e,placement:t,headingId:r,authorId:n,activeTab:o,onActiveTabChange:a,autoMarkRead:s,isActive:i,dwell:l,userId:d,onReportDeleted:c})=>{let{labels:u,sourceTypeConfigs:p,headingLevel:f}=z(),{report:m,error:y,isLoading:g}=Qi(e.reportHubId,e.businessDate),R=Er(),D=ys(e.reportHubId),b=D==="editing"||D==="automatic",h=Wo(null),S=Wo(null),w=Wo(!1),x=Wo(!1),E=!!(d&&m?.userId===d),L=m?.isDraft===!0;Ud(()=>{m!==null&&(E&&L&&D==="display"?R.open(e.reportHubId,Ln(m),!0):!L&&D==="automatic"&&R.discard(e.reportHubId))},[m,E,L,D,R,e.reportHubId]);let N=Ko(()=>m===null?void 0:()=>{w.current=!0,R.open(e.reportHubId,Ln(m),!1)},[R,e.reportHubId,m]),M=Jr(()=>{x.current=!0,R.dismiss(e.reportHubId)},[R,e.reportHubId]),T=Jr(()=>{x.current=!0,R.discard(e.reportHubId)},[R,e.reportHubId]),A=Jr(W=>{W===null||!w.current||(w.current=!1,W.focus())},[]),I=Jr(W=>{W===null||!x.current||(x.current=!1,W.focus())},[]),_=Jr(()=>{S.current?.focus({preventScroll:!0})},[]);Wd(()=>{b||!x.current||(x.current=!1,S.current?.focus())},[b]);let k=Jr(()=>{setTimeout(()=>{let W=h.current;W!==null&&W.scrollTo({top:W.scrollHeight,behavior:dm(W)})},100)},[]),O=Ae(e.businessDate),F=Ko(()=>m===null?null:Be(m.employeeName),[m]),$=g||!m,j=m===null?void 0:Jt(m.sourceType,p);return cr(dI,{reportHubId:e.reportHubId,children:[cr("div",{className:Qv,children:[X("dl",{className:"m-0",children:X(st,{label:u.businessDate,classNames:qv,children:X(pt,{ref:S,level:f,id:r,tabIndex:-1,className:eI,children:O})})}),cr("div",{className:Zv,children:[X("dl",{className:"m-0 min-w-0",children:X(st,{label:u.author,classNames:Xv,valueId:n,children:$||F===null?X("div",{"data-skeleton":!0,className:"h-3 w-24 rounded bg-slate-200 motion-safe:animate-pulse dark:bg-slate-700"}):X(pe,{fieldKey:fe.field("employeeName"),raw:m?.employeeName,display:F})})}),j?X(kn,{config:j}):null,m===null?null:X(Ys,{isEditing:b,descriptionId:null})]})]}),cr(Bo,{value:o,onValueChange:W=>a(nI(W)),className:"flex min-h-0 flex-1 flex-col",children:[X("div",{className:xi,children:X(Vo,{"aria-label":u.reportTabList,className:Jv,children:rI.map(W=>X(Uo,{value:W,children:W==="article"?u.tabArticle:u.tabRelations},W))})}),X(Bn,{ref:h,value:"article",tabStop:!0,className:Dh[t],children:b?m?X(Ms,{report:m,onCancel:M,onPublishSuccess:T,titleInputRef:A}):X("p",{className:nn,children:u.loading}):X(pI,{report:m,sourceConfig:j,isLoading:g,error:y,item:e,autoMarkRead:s,isActive:i,dwell:l,onCommentAdded:k,userId:d,onEdit:E?N:void 0,editButtonRef:I,onReportDeleted:c,onCommentSectionRemoved:_})}),X(Bn,{value:"relations",tabStop:!0,className:Dh[t],children:X("p",{className:nn,children:u.relationsEmpty})})]})]})});ii.displayName="DailyReportSidePaneContent";var si=({className:e="w-32"})=>X("div",{"data-skeleton":!0,className:`h-4 rounded bg-slate-200 motion-safe:animate-pulse dark:bg-slate-700 ${e}`}),cI=["w-full","w-11/12","w-4/5"],uI=v(Rc,Jo),pI=({report:e,sourceConfig:t,isLoading:r,error:n,item:o,autoMarkRead:a=!1,isActive:s=!0,dwell:i,onCommentAdded:l,userId:d,onEdit:c,editButtonRef:u,onReportDeleted:p,onCommentSectionRemoved:f})=>{let{toggleStar:m,toggleRead:y,deleteReport:g}=qe(),{labels:R,headingLevel:D}=z(),b=Dr[D],{handleToggleRead:h}=tI(e,r,a,s,i,y),S=e!==null&&ba(e.sourceType,t),w=Ko(()=>e?.content?Jc(e.content):null,[e]),x=Ko(()=>Be(e?.subject),[e]),E=Ko(()=>Be(e?.customerName),[e]),L=async A=>{try{await m(A.reportHubId,!A.isStarred,A.date)}catch{}},N=async A=>{if(confirm(R.confirmDelete)){try{await g(A.reportHubId,A.date)}catch{return}p(A.reportHubId)}};if(n)return X("p",{className:jn,children:R.reportLoadFailed(o.reportHubId)});let M=!e,T=!!(d&&e?.userId===d);return cr("div",{className:"flex flex-col gap-4 text-slate-700 dark:text-slate-200",onDoubleClick:c,children:[cr("div",{className:"flex items-start gap-2",children:[X("dl",{className:"m-0 flex min-w-0 flex-1",children:X(st,{label:R.subject,classNames:Yv,children:M?X(si,{className:"w-3/4"}):X("span",{className:"text-sm",children:X(pe,{fieldKey:fe.field("subject"),raw:e?.subject,display:x})})})}),!M&&e&&cr("div",{className:"flex h-5 shrink-0 items-center gap-2 pr-2",children:[X("button",{type:"button",onClick:()=>L(e),className:Ge,title:e.isStarred?R.starRemove:R.starAdd,"aria-label":e.isStarred?R.starRemove:R.starAdd,"data-detail-star-button":e.reportHubId,children:X(Mn,{filled:e.isStarred})}),X("button",{type:"button",onClick:()=>h(e,!1),className:Ge,title:e.isRead?R.markUnread:R.markRead,"aria-label":e.isRead?R.markUnread:R.markRead,"data-detail-read-button":e.reportHubId,children:e.isRead?X(Wv,{className:He.read}):X(Pn,{})}),c&&X("button",{ref:u,type:"button",onClick:c,"data-detail-edit-button":e.reportHubId,className:Ge,title:R.edit,"aria-label":R.edit,children:X(Kv,{className:He.edit})}),T&&X("button",{type:"button",onClick:()=>N(e),"data-detail-delete-button":e.reportHubId,className:Ge,title:R.deleteReport,"aria-label":R.deleteReport,children:X(zv,{className:He.delete})})]})]}),X("dl",{className:"m-0",children:X(st,{label:R.customer,classNames:gh,children:M?X(si,{className:"w-1/2"}):X("span",{className:"text-sm",children:X(pe,{fieldKey:fe.field("customerName"),raw:e?.customerName,display:E})})})}),cr("div",{className:"flex flex-col gap-2",children:[X(pt,{level:b,className:qt,children:R.content}),X("div",{className:uI,children:M?cI.map(A=>X("div",{className:hc,children:X(si,{className:A})},A)):w!==null&&w.text.length>0?X("div",{className:"whitespace-pre-wrap",children:X(pe,{fieldKey:fe.field("content"),raw:e?.content,display:w})}):X("p",{className:"text-slate-500 dark:text-slate-400",children:R.contentEmpty})})]}),X("dl",{className:"m-0",children:X(st,{label:R.visitTime,classNames:gh,children:M?X(si,{className:"w-1/3"}):cr("span",{className:"text-sm",children:[hr(e?.visitTimeFrom)," ",e?.visitTimeFrom&&e?.visitTimeTo?"-":""," ",hr(e?.visitTimeTo)]})})}),e&&X(Is,{attachments:e.attachments}),e&&X(Lo,{report:e,userId:d,canComment:S,onCommentAdded:l,onSectionRemoved:f,formPlacement:"in-section",sectionClassName:"border-slate-100 border-t border-solid pt-4 dark:border-slate-800"})]})};import{jsx as Ir,jsxs as xh}from"react/jsx-runtime";var SI="fixed inset-y-0 left-0 m-0 flex h-auto max-h-none w-auto max-w-none touch-manipulation overflow-hidden border-0 bg-transparent p-0 text-inherit outline-none backdrop:bg-transparent motion-safe:transition-[right] motion-safe:duration-500 motion-safe:ease-[ease]",gI={right:"var(--aqdr-overlay-right, 0px)"},EI="absolute inset-0 touch-manipulation bg-slate-900/50 motion-safe:transition-opacity motion-safe:duration-200",DI=v("relative ml-auto flex h-full w-full max-w-full touch-none shadow-xl motion-safe:transition-[transform] motion-safe:duration-200 motion-safe:ease-out",Pc),wI=v("inline-flex h-9 touch-manipulation items-center rounded-full border border-slate-300 border-solid px-[15px] font-medium text-slate-600 text-sm shadow-sm hover:bg-slate-100 dark:border-slate-600 dark:text-slate-200 dark:hover:bg-slate-800",te),TI="flex shrink-0 justify-center empty:hidden",AI=50,vh=({isMobileLayout:e,selection:t,dailyReportItems:r,onSelectItem:n,rootRef:o})=>{let a=t.id,[s,i]=di(!1),[l,d]=di(!1),c=Nt(null),u=Nt(null),p=Nt(null),f=Nt(e),m=Nt(!0),y=Ho(r,t),g=li(()=>{let h=o.current;if(h===null)return;let S=h.ownerDocument.body;p.current={body:S,overflow:S.style.overflow},S.style.overflow="hidden"},[o]),R=li(()=>{let h=p.current;h!==null&&(h.body.style.overflow=h.overflow,p.current=null)},[]);Vn(()=>{if(m.current){m.current=!1,f.current=e;return}let h=!f.current;f.current=e,h&&e&&a!==null?i(!0):!e&&s&&(u.current=a,i(!1),R())},[e,a,s,R]);let D=e&&s&&y!==null;Vn(()=>{if(D)d(!0);else{let h=setTimeout(()=>d(!1),300);return()=>clearTimeout(h)}},[D]),Vn(()=>{if(e&&s&&a!==null&&!c.current){let h=`overlay-${Date.now()}`;window.history.pushState({...window.history.state,dailyReportOverlay:h},"",window.location.href),c.current=h}else!(e&&s)&&c.current&&(c.current=null);return e&&s?g():R(),R},[e,s,a,g,R]),Vn(()=>{let h=()=>{c.current&&(u.current=a,c.current=null,i(!1),n(null))};return window.addEventListener("popstate",h),()=>window.removeEventListener("popstate",h)},[a,n]);let b=li(()=>{e&&(u.current=a,i(!1),n(null),c.current&&(c.current=null,window.history.back()))},[e,a,n]);return{isMobileDetailOpen:s,setIsMobileDetailOpen:i,isOverlayMounted:l,shouldShowOverlay:D,handleOverlayClose:b,lastClosedItemIdRef:u,selectedItem:y}},Ih=({isOpen:e,selectedItem:t,onClose:r,autoMarkRead:n=!1,userId:o,onReportDeleted:a})=>{let{labels:s}=z(),{registerNoticeHost:i}=gs(),l=Nt(null),d=Nt(null),c=$d(),u=$d(),[p,f]=di(zd),m=fI(),y=$d(),g=Nt(!1),R=Nt(e),D=Nt(null),[b]=di(()=>Kd(e)),{isBlocked:h,requestBlock:S,reset:w}=yI(),x=bI(e,t),{overlayRef:E,overlayStyle:L,attemptClose:N,isSwiping:M}=RI({isOpen:e,onClose:r,isCloseBlocked:li(()=>h,[h]),skipWhenTextSelected:!0}),T=Nt(N);jd(()=>{T.current=N,R.current=e,b.set(e)},[N,e,b]),Vn(()=>{if(e)return m({id:y,onEscape:O=>sr(O)&&T.current()})},[e,m,y]),jd(()=>{let O=l.current;if(O===null)return;if(e){if(g.current)return;O.showModal(),g.current=!0,O.ownerDocument.getElementById(c)?.focus();return}if(!g.current)return;g.current=!1;let F=Ke(O);F!==null&&O.contains(F)&&mo(F)&&F.blur(),O.close()},[e,c]),jd(()=>{let O=d.current;if(!(!e||O===null))return i(O)},[e,i]),Vn(()=>{e||w()},[e,w]);let A=hI(()=>N()),I=O=>{let F=vn(O);if(sr(F)){N()&&O.preventDefault();return}if(F.key==="Escape"){D.current=O.timeStamp;return}let $=Sf(F,O.currentTarget);$!==null&&(O.preventDefault(),$.kind==="wrap"&&$.element.focus())},_=O=>{O.preventDefault();let F=D.current;D.current=null,!(F!==null&&O.timeStamp-F<=AI)&&T.current()},k=O=>{let F=O.currentTarget;F.open||!R.current||(g.current=!1,!T.current()&&(F.showModal(),g.current=!0))};return x?xh("dialog",{ref:l,"data-daily-report-mobile-overlay":"true","aria-labelledby":`${c} ${u}`,tabIndex:-1,className:v(SI,e&&!M?"pointer-events-auto":"pointer-events-none"),style:gI,inert:!e,onKeyDown:I,onCancel:_,onClose:k,children:[Ir("div",{"aria-hidden":"true","data-daily-report-overlay-backdrop":"",className:v(EI,e?"opacity-100":"opacity-0"),...A}),Ir("div",{ref:E,"data-daily-report-overlay-panel":"",className:v(DI,e?"pointer-events-auto":"pointer-events-none"),style:L,children:xh("div",{className:"flex h-full w-full flex-col gap-4 p-4",children:[Ir(mI.Provider,{value:{isBlocked:h,requestBlock:S},children:Ir("div",{"data-testid":"daily-report-side-pane","data-report-id":x.reportHubId,"data-displayed-report-id":x.reportHubId,className:"flex min-h-0 flex-1 flex-col gap-4",children:Ir(ii,{item:x,placement:"overlay",headingId:c,authorId:u,activeTab:p,onActiveTabChange:f,autoMarkRead:n,isActive:e,dwell:b,userId:o,onReportDeleted:a},x.reportHubId)})}),Ir("div",{ref:d,"data-daily-report-notice-slot":"","data-overlay-interactive":"true",className:TI}),Ir("div",{className:"flex justify-start",children:Ir("button",{type:"button","data-overlay-interactive":"true",className:wI,onClick:()=>N(),children:s.close})})]})})]}):null};import BI from"lucide-react/dist/esm/icons/check.js";import{memo as Nh,useContext as Oh,useEffect as VI,useMemo as ui}from"react";import{createContext as xI,createElement as vI,useLayoutEffect as II,useMemo as CI,useRef as _I,useState as LI}from"react";var NI=6.75,OI=4,MI=1e-6,kI=e=>4*Math.ceil((2*Gt+2*Qo+OI+NI*e-MI)/4),ci=xI(null),PI="data-daily-report-root-font-size-probe",FI={position:"fixed",insetBlockStart:0,insetInlineStart:0,visibility:"hidden",pointerEvents:"none",overflow:"hidden",writingMode:"horizontal-tb",boxSizing:"content-box",padding:0,border:0,margin:0,blockSize:"1rem",inlineSize:0},HI=e=>{let t=Pe(e).getComputedStyle(e.ownerDocument.documentElement).fontSize,r=/^(\d+(?:\.\d+)?)px$/.exec(t);if(r===null||!(Number(r[1])>0))throw new Error(`[daily-report] the root element has no computed font size in px; got ${JSON.stringify(t)}`);return Number(r[1])},Ch=()=>{let e=_I(null),[t,r]=LI(null);II(()=>{let o=e.current;if(o===null)throw new Error("[daily-report] useListRowSlotHeight needs the List to render remProbe");let a=null,s=()=>{let l=kI(HI(o));l!==a&&(a=l,r(l))};s();let i=new ResizeObserver(s);return i.observe(o),()=>i.disconnect()},[]);let n=CI(()=>vI("div",{ref:e,"aria-hidden":!0,[PI]:"",style:FI}),[]);return{rowSlotHeight:t,remProbe:n}};import{jsx as ne,jsxs as Wn}from"react/jsx-runtime";var UI=v(yr,Xo,Zo,qo),WI=v("relative flex h-full w-full select-none flex-wrap content-start items-center gap-2 overflow-hidden",Pt,ea,fc),KI="min-w-24",zI="basis-full space-y-2 text-slate-700 text-sm leading-5 dark:text-slate-200",$I={touchAction:"manipulation"},jI=v("flex grow basis-0 cursor-pointer items-center gap-2 text-left outline-none after:absolute after:inset-0 after:rounded-2xl",KI),GI=v("relative z-10",Ge),YI=v(Ye,"shrink-0 whitespace-nowrap bg-slate-100 font-medium text-slate-900 text-xs dark:bg-slate-800 dark:text-slate-100"),qI=v(Ye,"min-w-0 max-w-full bg-slate-100 font-semibold text-xs dark:bg-slate-800 dark:text-slate-200"),XI=v(Sc,"ml-auto"),ZI=v("flex h-full",Pt),QI="flex h-full w-full flex-col justify-between motion-safe:animate-pulse",Un="h-4 rounded bg-slate-200 dark:bg-slate-700",JI=ne("div",{"data-skeleton":!0,...Rt,className:ZI,children:Wn("div",{className:QI,children:[Wn("div",{className:"flex flex-wrap items-center gap-2",children:[ne("div",{className:v(Un,"w-24")}),ne("div",{className:v(Un,"w-24")}),ne("div",{className:v(Un,"w-24")})]}),Wn("div",{className:"space-y-2",children:[ne("div",{className:v(Un,"w-full")}),ne("div",{className:v(Un,"w-11/12")}),ne("div",{className:v(Un,"w-5/6")})]})]})}),eC=()=>JI,tC=e=>{e.target===e.currentTarget&&e.preventDefault()},_h=({reportHubId:e,rowId:t,name:r,children:n})=>{let o=Oh(ci);if(o===null)throw new Error("[daily-report] a List row frame is rendered outside the List view (no measured row slot)");let a=ui(()=>({height:o}),[o]);return ne(Gs,{reportHubId:e,rowId:t,name:r,className:UI,style:a,onMouseDown:tC,children:n})},rC=(e,t)=>[ye(e,"state"),...t.hasAttachments?[ye(e,"attachments")]:[],...t.hasSource?[ye(e,"source")]:[],ye(e,"preview"),...t.showsSearchMatch?[ye(e,"match")]:[]],Lh=({label:e,dataAttributes:t,onClick:r,children:n})=>{let o=_n();return ne("button",{type:"button",title:e,"aria-label":e,tabIndex:o,...t,onClick:r,className:GI,children:n})},Mh=Nh(({item:e,report:t,rowId:r,sourceConfig:n,describedBy:o,onSelect:a})=>{let{labels:s}=z(),{toggleStar:i,toggleRead:l}=qe(),d=ye(r,"name"),c=ui(()=>Qc(t.content??null,Zu),[t.content]),u=ui(()=>Be(t.employeeName),[t.employeeName]),p=Ae(e.businessDate),f=D=>{D.currentTarget.focus({preventScroll:!0});let b=Vp(D.currentTarget);b!==null&&a(e.reportHubId,b)},m=async()=>{let D=!t.isStarred;try{await i(t.reportHubId,D,t.date)}catch{}},y=async()=>{let D=!t.isRead;try{await l(t.reportHubId,D,t.date)}catch{}},g=t.isStarred?s.starRemove:s.starAdd,R=t.isRead?s.markUnread:s.markRead;return Wn("div",{"data-daily-report-card":!0,...Rt,"aria-labelledby":d,style:$I,className:WI,children:[ne(js,{id:ye(r,"position"),whileTotalUnknownOnly:!1}),ne("span",{id:ye(r,"state"),className:"sr-only",children:s.rowState({isRead:t.isRead,isStarred:t.isStarred})}),Wn("button",{id:d,type:"button",tabIndex:-1,[kp]:e.reportHubId,...Ka,"aria-describedby":o,onClick:f,className:jI,children:[ne("span",{className:YI,children:p})," ",ne("span",{className:qI,children:ne("span",{className:"truncate font-medium text-slate-900 dark:text-slate-100",children:ne(pe,{fieldKey:fe.field("employeeName"),raw:t.employeeName,display:u})})})]}),Wn("div",{className:XI,children:[ne(Gn,{id:ye(r,"attachments"),count:t.attachments.length,label:s.attachments}),n?ne(kn,{id:ye(r,"source"),config:n}):null,ne(Lh,{label:g,dataAttributes:{"data-list-star-button":e.reportHubId},onClick:m,children:ne(Mn,{filled:t.isStarred})}),ne(Lh,{label:R,dataAttributes:{"data-list-read-button":e.reportHubId},onClick:y,children:t.isRead?ne(BI,{className:He.read}):ne(Pn,{})})]}),ne("div",{id:ye(r,"preview"),className:zI,children:c.length>0?c.map((D,b)=>ne("p",{className:"wrap-break-word line-clamp-1",children:ne(pe,{fieldKey:fe.field("content"),raw:t.content,display:D})},b)):ne("p",{children:s.contentEmptyPreview})}),ne(AR,{id:ye(r,"match")})]})});Mh.displayName="ListReportCard";var Gd=Nh(({item:e,onSelect:t})=>{let{labels:r,sourceTypeConfigs:n}=z(),{removeStaleItem:o}=qe(),a=Pr(),s=Oh(rt),i=ui(()=>ks(a,s,e.reportHubId,e.businessDate),[a,s,e.reportHubId,e.businessDate]),{bodyReady:l,rendered:d}=Ga(e.reportHubId,i,"fixed"),{report:c,error:u}=d.detail,p=d.marksStore===s?d.marks:null,{report:f,error:m,isLoading:y,isRefetching:g}=i.read().detail,R=zs(e.reportHubId),D=s!==null,b=f===null&&m===null&&!y&&!g;VI(()=>{b&&e.reportHubId>0&&o(e.reportHubId)},[b,e.reportHubId,o]);let h=Ae(e.businessDate),S=ye(R,"state"),w=(L,N,M)=>ne(_h,{reportHubId:e.reportHubId,rowId:R,name:{kind:"label",label:h,isBusy:N,describedBy:M},children:L});if(!l)return w($s,!0,On);if(u!==null)return w(ne("div",{...Rt,className:"flex h-full items-center justify-center rounded-2xl border border-red-200 border-solid bg-red-50 p-[15px] text-red-700 text-sm dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-300",children:ne("p",{id:S,children:r.reportSummaryLoadFailed(e.reportHubId)})}),!1,[S]);if(c===null&&(y||f!==null||m!==null))return w(ne(eC,{}),!0,On);if(!c)return w(ne("div",{...Rt,className:"flex h-full items-center justify-center rounded-2xl border border-slate-200 border-solid bg-slate-50 p-[15px] text-slate-500 text-sm dark:border-slate-700 dark:bg-slate-900/40 dark:text-slate-400",children:ne("p",{id:S,children:r.reportNotFound})}),!1,[S]);let x=Jt(c.sourceType,n),E=rC(R,{hasAttachments:c.attachments.length>0,hasSource:x!==void 0,showsSearchMatch:D});return ne(_h,{reportHubId:e.reportHubId,rowId:R,name:{kind:"card",describedBy:E},children:ne(In,{reportHubId:e.reportHubId,entry:p,children:ne(Mh,{item:e,report:c,rowId:R,sourceConfig:x,describedBy:[ye(R,"position"),...E].join(" "),onSelect:t})})})});Gd.displayName="ListReportItem";import{Fragment as gC,jsx as nt,jsxs as fi}from"react/jsx-runtime";var Fh={pointerDragInputs:xa,inertiaOptions:Sn(!1),wheelSpeedMultiplier:ga,enableKeyboardNavigation:!1,resetOnGetItemHeightChange:!0},aC={...Fh,inertiaOptions:Sn(!0)},sC=Object.freeze({value:360,unit:"pixels"}),iC=Object.freeze({value:160,unit:"pixels"}),lC=Object.freeze({value:Th,unit:"pixels"}),dC=Object.freeze({value:520,unit:"pixels"}),cC=Object.freeze({visible:!0,thickness:6,length:32,barThickness:2,barLength:16}),uC=v("cursor-col-resize rounded hover:bg-slate-200/60 focus:ring-0 dark:hover:bg-slate-700/60",te),pC=v("relative w-full",ia,sa,la),mC=v(ht,"relative isolate overflow-hidden"),Ph="daily-report-list",fC=()=>!1,yC=()=>{throw new Error("[daily-report] a List activation arrived before the view committed")},RC=e=>{let[t,r]=yi(!1);return mi(()=>{let n=e.current;if(n===null)throw new Error("[daily-report] the List root is not attached");let o=s=>{for(let i of s)r(i.contentRect.width>0&&i.contentRect.width<Xu)},a=new(Pe(n)).ResizeObserver(o);return a.observe(n),()=>a.disconnect()},[e]),t},qd=e=>{let t=Cr(null),[r,n]=yi(null),o=Pa(t),a=RC(t),{rowSlotHeight:s,remProbe:i}=Ch(),l=gn(r),d=lt(c=>(t.current=c,n(c),()=>{t.current=null,n(null)}),[]);return fi("div",{ref:d,className:na,"data-testid":"daily-report-root",children:[i,o===null||s===null?null:nt(hC,{...e,rootRef:t,viewportHeight:o,rowSlotHeight:s,isContainerNarrow:a,reducedMotion:l})]})},hC=({dailyReportItems:e,rowSetSize:t,autoMarkRead:r=!1,selectedReportHubId:n,onSelectItem:o,userId:a,scrollOffsetRef:s,rootRef:i,viewportHeight:l,rowSlotHeight:d,isContainerNarrow:c,reducedMotion:u})=>{let[p]=yi(()=>s?.current??0),f=Cr(null),{labels:m}=z(),y=Oa(),[g]=yi(Ya),D=yh()||c,b=Cr(null),h=e.length,S=t===void 0?h:t,w=Cr(null),x=lt(B=>o(B),[o]),E=lt(B=>{let Y=Ee(e,B);return Y===void 0?Da:Y},[e]),L=Cr(null),N=ni({itemCount:h,getItem:E}),M=lt(B=>{let Y=E(B.visibleStartIndex);Y.reportHubId>0&&(g.setLabel(Ae(Y.businessDate)),L.current=Y.reportHubId),N(B)},[E,g,N]),T=lt(()=>L.current,[]),A=Yd(()=>({kind:"uniform",rowHeight:d}),[d]),I=Cr(e);mi(()=>{I.current=e},[e]);let _=Cr(yC),k=lt(B=>_.current(B),[]),{containerProps:O,handleRangeChange:F,handleScrollAdjust:$,attachVirtualScroll:j,handleRef:W,scroller:V,attachScrollContainer:le,contentProps:Te,keyboardHelp:be,selection:De,selectionStore:se,activateRow:Ze,focusViewRow:We,focusAfterRemoval:q,rowPass:he,rowScope:Q}=ei({items:e,selectedId:n,onSelect:x,onActivate:k,containerRef:f,rootRef:i,testId:Ph,itemsRef:I,rowSetSize:S,rowSizing:A,arrowAlign:"nearest",isViewRevealPending:fC,onRangeChange:M});Xa({items:e,scroller:V,readTopReportId:T});let{isMobileDetailOpen:oe,setIsMobileDetailOpen:me,isOverlayMounted:Ie,shouldShowOverlay:Qe,handleOverlayClose:It,lastClosedItemIdRef:Je,selectedItem:Mt}=vh({isMobileLayout:D,selection:De,dailyReportItems:e,onSelectItem:o,rootRef:i});pi(()=>{let B=f.current,Y=()=>{g.setWheelScrollActive(!0),b.current&&clearTimeout(b.current),b.current=window.setTimeout(()=>{g.setWheelScrollActive(!1),b.current=null},wa)};return B?.addEventListener("wheel",Y,{passive:!0}),()=>{B?.removeEventListener("wheel",Y),b.current&&clearTimeout(b.current)}},[g]),pi(()=>{!h&&n!==null&&o(null)},[h,n,o]),pi(()=>{if(oe||Je.current===null)return;let B=Je.current;Je.current=null,We(B,"overlay")},[oe,Je,We]),pi(()=>{let B=Ee(e,0);B!==void 0&&g.setLabel(Ae(B.businessDate))},[e,g]);let _e=lt(B=>{o(B),D&&me(!0)},[D,o,me]);mi(()=>{_.current=_e},[_e]);let et=lt((B,Y)=>{B<=0||(Ze(B,Y),_e(B))},[Ze,_e]),tn=lt(()=>d,[d]),C=Cr(d);mi(()=>{let B=C.current;C.current=d;let Y=W.current;if(B===d||Y===null)return;let J=Y.getScrollPosition();J>0&&V.by(J*d/B-J)},[W,d,V]);let P=lt(B=>Va(e,B),[e]),U=lt((B,Y)=>nt(Kr.Provider,{value:Y,children:nt(bo.Provider,{value:B.reportHubId,children:nt(Gd,{item:B,onSelect:et})})},B.reportHubId),[et]),G=lt(B=>{let Y=le(B),J=he.attach(Pe(B),null);return()=>{J(),Y()}},[le,he]),re=lt(B=>{s&&(s.current=B);let Y=f.current;Y&&(Y.toggleAttribute(rn,!0),w.current&&clearTimeout(w.current),w.current=setTimeout(()=>{Y.toggleAttribute(rn,!1),w.current=null},150))},[s]),ie=lt(B=>nt(qa,{...B,store:g}),[g]),H=Yd(()=>fi("div",{ref:G,className:mC,...za,...O,children:[be,nt(Wr.Provider,{value:S,children:nt(ci.Provider,{value:d,children:nt(ti,{ref:j,rowScope:Q,items:e,itemCount:h,getItem:E,getItemKey:P,getItemHeight:tn,viewportSize:l,initialScrollOffset:p,overscanCount:Ta,scrollBarOptions:{...Aa,renderThumbOverlay:ie},behaviorOptions:u?aC:Fh,onRangeChange:F,onScrollAdjust:$,onScroll:re,testId:Ph,className:pC,locale:y.locale,labels:y.labels,contentProps:Te,children:U})})})]}),[G,j,Q,e,O,S,h,E,P,tn,l,d,u,p,ie,F,$,re,be,Te,y.locale,y.labels,U]),K=Yd(()=>fi(nC,{direction:"horizontal",className:"min-h-0 flex-1","data-testid":"daily-report-panel-group",children:[nt(kh,{id:"daily-report-list-panel",defaultSize:sC,minSize:iC,maxSize:dC,contentOverflow:"hidden",className:bC,children:H}),nt(oC,{id:"daily-report-list-handle",thickness:10,indicator:cC,className:uC,"aria-label":m.resizeHandle}),nt(kh,{id:"daily-report-detail-panel",minSize:lC,contentOverflow:"hidden",className:SC,children:nt(Ah,{dailyReportItems:e,selectionStore:se,autoMarkRead:r,userId:a,onReportDeleted:q})})]}),[H,m.resizeHandle,e,se,r,a,q]);return fi(gC,{children:[nt("div",{className:oa,children:D?nt("div",{className:ht,children:H}):K}),Ie&&nt(Ih,{isOpen:Qe,selectedItem:Mt,onClose:It,autoMarkRead:D&&r,userId:a,onReportDeleted:q})]})},bC=v("flex min-h-0",cc),SC=v("flex min-h-0 flex-1",yr);import{useCallback as tL,useEffect as vb,useLayoutEffect as rL,useRef as Cb,useState as nL}from"react";import L_ from"lucide-react/dist/esm/icons/plus.js";import N_ from"lucide-react/dist/esm/icons/refresh-cw.js";import O_ from"lucide-react/dist/esm/icons/rotate-cw.js";import{useEffect as sc,useId as wb,useLayoutEffect as Tb,useMemo as wi,useRef as zn,useState as en}from"react";import{useSearchParams as M_}from"react-router";import{useEffect as EC,useRef as Hh,useState as DC}from"react";var Bh=(e,t,r=250)=>{let n=gn(t),[o,a]=DC(e),s=Hh(e),i=Hh(!0);return EC(()=>{if(i.current){i.current=!1,s.current=e,a(e);return}let l=s.current;if(l===e)return;if(n||t===null){s.current=e,a(e);return}let d=Pe(t),c=0,u=null,p=f=>{u===null&&(u=f);let m=Math.min(1,Math.max(0,(f-u)/r)),y=1-(1-m)**3,g=Math.round(l+(e-l)*y);s.current=g,a(g),m<1&&(c=d.requestAnimationFrame(p))};return c=d.requestAnimationFrame(p),()=>d.cancelAnimationFrame(c)},[e,r,n,t]),n?e:o};import HC from"lucide-react/dist/esm/icons/loader-circle.js";import BC from"lucide-react/dist/esm/icons/x.js";import{useEffect as Gh,useId as $o,useLayoutEffect as VC,useRef as bi,useState as Yh}from"react";var zo=Object.freeze({maxValuesPerFacet:16,maxValueLength:200,maxTotalValueLength:300}),Qd=["author","sourceType","customer"],Jd=Object.freeze({authors:Object.freeze([]),sourceTypes:Object.freeze([]),customers:Object.freeze([])}),wC=/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,TC=e=>{let t=e.trim();return t.length===0?null:t.replace(wC,"\uFFFD")},Vh=e=>{let t=TC(e);return t===null?"filter-blank-value":t!==e?"filter-value-not-canonical":e.length>zo.maxValueLength?"filter-value-too-long":null},AC=e=>{if(e.length>zo.maxValuesPerFacet)return"filter-too-many-values";let t=new Set;for(let r of e){let n=Vh(r);if(n!==null)return n;if(t.has(r))return"filter-duplicate-value";t.add(r)}return null},xC=e=>{let t=0;for(let r of e.authors)t+=r.length;for(let r of e.customers)t+=r.length;return t},Ri=e=>{for(let t of[e.authors,e.sourceTypes,e.customers]){let r=AC(t);if(r!==null)return r}return xC(e)>zo.maxTotalValueLength?"filters-too-long":null},Xd=e=>[...new Set(e)].sort((t,r)=>t<r?-1:1),hi=e=>({authors:Xd(e.authors),sourceTypes:Xd(e.sourceTypes),customers:Xd(e.customers)}),_r=e=>e.trim().length===0,Kn=e=>e.authors.length===0&&e.sourceTypes.length===0&&e.customers.length===0,Uh=(e,t)=>{let r=hi(t);for(let n of r.authors)e.append(Le.searchAuthor,n);for(let n of r.sourceTypes)e.append(Le.searchSourceType,n);for(let n of r.customers)e.append(Le.searchCustomer,n)},Zd=e=>{if(!Array.isArray(e))return null;let t=[],r=new Set;for(let n of e){if(typeof n!="string"||Vh(n)!==null||r.has(n))return null;r.add(n),t.push(n)}return t},Wh=e=>{if(!Qt(e))return null;let t=Zd(e.sourceTypes),r=Zd(e.authors),n=Zd(e.customers);return t===null||r===null||n===null?null:{sourceTypes:t,authors:r,customers:n}};import{Component as vC,Suspense as IC,useMemo as Kh,useState as CC}from"react";import{jsx as ur,jsxs as jh}from"react/jsx-runtime";var zh="flex min-h-6 items-center text-slate-600 text-xs dark:text-slate-300",_C=v(Mc,Xt),LC=[{facet:"author",testId:"daily-report-search-filter-author",key:"authors"},{facet:"sourceType",testId:"daily-report-search-filter-source-type",key:"sourceTypes"},{facet:"customer",testId:"daily-report-search-filter-customer",key:"customers"}],NC=(e,t)=>t==="author"?e.author:t==="sourceType"?e.searchFilterSourceType:e.customer,OC=(e,t,r)=>{let n=new Set(r.map(a=>a.value)),o=new Set;for(let a of t){if(!n.has(a)||o.has(a))throw ke(`config.search.renderFilterSelect (${e}) onChange values`,"distinct values of the options the control received",t);o.add(a)}return t},ec=class extends vC{constructor(){super(...arguments);this.state={failed:!1}}static getDerivedStateFromError(){return{failed:!0}}render(){return this.state.failed?ur("span",{className:zh,children:this.props.fallback}):this.props.children}},MC=(e,t,r,n)=>{let o=Kh(()=>new Set(t.map(s=>s.value)),[t]),a=JSON.stringify(n.filter(s=>!o.has(s)));return Kh(()=>{let s=JSON.parse(a);return s.length===0?t:[...t,...s.map(i=>r(e,i))]},[e,t,r,a])};function kC({renderFilterSelect:e,selectProps:t}){return e(t)}var PC=(e,t,r)=>t.status==="idle"||t.status==="loading"?e.searchFiltersLoading:t.status==="failed"?e.searchFiltersFailed(t.failure):r?e.searchFiltersTooMany:t.reloadFailure===null?"":e.searchFiltersFailed(t.reloadFailure);function FC({cell:e,labels:t,locale:r,renderFilterSelect:n,candidates:o,optionOf:a,selected:s,onSelect:i}){let l=MC(e.facet,o,a,s),d=NC(t,e.facet);return jh("fieldset",{"data-testid":e.testId,className:Oc,children:[ur("legend",{"data-testid":`${e.testId}-caption`,className:_C,children:d}),ur(ec,{fallback:t.searchFilterUnavailable,children:ur(IC,{fallback:ur("span",{className:zh,children:t.searchFiltersLoading}),children:ur(kC,{renderFilterSelect:n,selectProps:{facet:e.facet,label:d,options:l,value:s,onChange:c=>i(e,OC(e.facet,c,l)),locale:r}})})})]})}function $h({id:e,labelledBy:t,labels:r,locale:n,renderFilterSelect:o,facets:a,value:s,onChange:i,clearSignal:l}){let[d,c]=CC(null),u=PC(r,a,d!==null&&d.selection===s&&d.clearSignal===l),p=(m,y)=>{let g={...s,[m.key]:y};if(Ri(g)!==null){c({selection:s,clearSignal:l});return}c(null),i(g)},f=a.status==="ready"?a:null;return jh("fieldset",{id:e,"aria-labelledby":t,"data-testid":"daily-report-search-filters",className:"m-0 min-w-0 border-0 px-0 pt-2 pb-0",children:[f===null?null:ur("div",{className:Nc,children:LC.map(m=>ur(FC,{cell:m,labels:r,locale:n,renderFilterSelect:o,candidates:f.options[m.key],optionOf:f.optionOf,selected:s[m.key],onSelect:p},m.facet))}),ur("span",{"data-testid":"daily-report-search-filters-status","aria-live":"polite",className:v("flex min-h-6 items-center text-slate-600 text-xs leading-4 empty:min-h-0 dark:text-slate-300",f===null?null:"mt-2 empty:mt-0",Xt),children:u})]})}import{Fragment as e_,jsx as ot,jsxs as jo}from"react/jsx-runtime";var UC=v("h-6 w-full min-w-0 rounded-md border border-solid bg-white pr-[47px] pl-[7px] text-slate-900 text-sm dark:bg-slate-900 dark:text-slate-100",Yt,te),qh="inline-grid h-6 place-content-center place-items-center rounded-full border border-solid px-[11px] font-semibold text-xs tabular-nums",WC="col-start-1 row-start-1",KC="invisible col-start-1 row-start-1 after:content-[attr(data-search-toggle-reserve)]",Si=Object.freeze({field:v(qh,"bg-white text-slate-800 dark:bg-slate-900 dark:text-slate-100",Yt,te),filled:v(qh,"border-blue-700 bg-blue-700 text-white dark:border-blue-600 dark:bg-blue-600 dark:text-white forced-colors:border-[Highlight] forced-colors:bg-[Highlight] forced-colors:text-[HighlightText]",te)}),zC=Object.freeze({union:v("mr-2 min-w-14",Si.field),intersection:v("mr-2 min-w-14",Si.filled)}),Xh=Object.freeze({closed:v("ml-2 min-w-26",Si.field),open:v("ml-2 min-w-26",Si.filled)}),$C=Qd.length*zo.maxValuesPerFacet,jC="relative min-w-0",GC="pointer-events-none absolute inset-y-0 right-0 grid grid-cols-[repeat(2,--spacing(6))] place-items-center",YC=v("pointer-events-auto col-start-2 row-start-1",Ge),qC="col-start-1 row-start-1 size-4 text-slate-500 motion-safe:animate-spin dark:text-slate-400",XC="sr-only",ZC=v("col-[2/-1] row-start-2 pt-1 pl-[8px] text-slate-600 text-xs leading-4 dark:text-slate-300",Xt),QC=e=>e.authors.length+e.sourceTypes.length+e.customers.length,JC=(e,t,r)=>t.status==="searching"?e.searching:t.status==="failed"&&t.failure!==null?e.searchFailed(t.failure):t.status==="done"&&r!==null?r===0?e.searchNoHits:e.searchHitCount(r):"",Zh=({label:e,reserved:t})=>jo(e_,{children:[ot("span",{className:WC,children:e}),ot("span",{"aria-hidden":"true","data-search-toggle-reserve":t,className:KC})]});function Qh({labels:e,debounceMs:t,search:r,shownCount:n,onCommit:o,onCombineChange:a,onRelease:s,clearSignal:i,filters:l}){let[d,c]=Yh(""),[u,p]=Yh(!1),f=d.length>0||r.committed!==null&&!_r(r.committed.text),m=$o(),y=$o(),g=bi(null),R=bi(null),D=bi(!1),b=bi(i),h=$o(),S=$o(),w=$o(),x=Ue(()=>({search:r,onCommit:o,onRelease:s}));VC(()=>{x.current={search:r,onCommit:o,onRelease:s}});let E=()=>{R.current!==null&&clearTimeout(R.current),R.current=null},L=(V,le,Te)=>{let be=x.current;_r(V)?Kn(Te)?be.search.committed!==null&&be.onRelease():be.onCommit("",le,Te):be.onCommit(V,le,Te)},N=V=>{E();let le=x.current;L(V,le.search.combine,le.search.filters)},M=V=>{t===null||D.current||(E(),R.current=setTimeout(()=>N(V),t))},T=()=>{E(),c(""),Kn(r.filters)?s():(r.committed===null||!_r(r.committed.text))&&o("",r.combine,r.filters),g.current?.focus()},A=V=>{c(V.target.value),M(V.target.value)},I=V=>{let le=vn(V);if(V.key==="Enter"&&!Gr(le)){V.preventDefault(),N(d);return}sr(le)&&f&&(V.preventDefault(),T())},_=()=>{E();let V=r.combine==="union"?"intersection":"union";_r(d)&&Kn(r.filters)?a(V):L(d,V,r.filters)},k=V=>{u||V.facets.load(),p(!u)},O=V=>{E(),L(d,r.combine,V)};Gh(()=>{b.current!==i&&(b.current=i,R.current!==null&&clearTimeout(R.current),R.current=null,c(""))},[i]),Gh(()=>()=>{R.current!==null&&clearTimeout(R.current)},[]);let F=r.combine==="intersection",$=JC(e,r,n),j=r.status==="failed"?r.failure:null,W=l!==null&&u;return jo("search",{"data-testid":"daily-report-search",className:_c,children:[jo("div",{className:Lc,children:[ot("button",{type:"button","data-testid":"daily-report-search-combine","aria-describedby":h,title:F?e.searchCombineAndTitle:e.searchCombineOrTitle,onClick:_,className:zC[r.combine],children:ot(Zh,{label:F?e.searchCombineAnd:e.searchCombineOr,reserved:F?e.searchCombineOr:e.searchCombineAnd})}),jo("div",{className:jC,children:[ot("input",{ref:g,type:"text","data-testid":"daily-report-search-input","aria-label":e.searchInputLabel,"aria-describedby":j===null?S:`${w} ${S}`,"aria-invalid":j==="invalid"?!0:void 0,title:e.searchSyntaxHelp,placeholder:e.searchPlaceholder,value:d,onChange:A,onKeyDown:I,onCompositionStart:()=>{D.current=!0,E()},onCompositionEnd:V=>{D.current=!1,M(V.currentTarget.value)},className:UC}),jo("div",{className:GC,children:[r.status==="searching"?ot(HC,{"aria-hidden":"true","data-testid":"daily-report-search-spinner",className:qC}):null,f?ot("button",{type:"button","data-testid":"daily-report-search-clear","aria-label":e.searchClear,title:e.searchClear,onClick:T,className:YC,children:ot(BC,{"aria-hidden":"true",className:"size-4"})}):null]})]}),l===null?null:ot("button",{type:"button",id:m,"data-testid":"daily-report-search-filters-toggle","aria-expanded":u,"aria-controls":W?y:void 0,onClick:()=>k(l),className:u?Xh.open:Xh.closed,children:ot(Zh,{label:e.searchFiltersToggle(QC(r.filters)),reserved:e.searchFiltersToggle($C)})}),ot("span",{id:h,hidden:!0,children:F?e.searchCombineAndTitle:e.searchCombineOrTitle}),ot("span",{id:S,hidden:!0,children:e.searchSyntaxHelp}),ot("span",{"data-testid":"daily-report-search-status","aria-live":"polite",className:XC,children:$}),j===null?null:ot("p",{id:w,"data-testid":"daily-report-search-failure",className:ZC,children:e.searchFailed(j)})]}),W?ot($h,{id:y,labelledBy:m,labels:e,locale:l.locale,renderFilterSelect:l.renderFilterSelect,facets:l.facets.state,value:r.filters,onChange:O,clearSignal:i}):null]})}var gi=new WeakMap,eb=e=>{let t=new Set,r=new Map;for(let n of e)t.add(n.reportHubId),r.set(n.reportHubId,n);return{items:e,ids:t,byId:r,answeredByChunk:new WeakMap}},Ei=(e,t)=>e.businessDate===t.businessDate&&e.sourceType===t.sourceType,t_=(e,t)=>{if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0},r_=(e,t,r,n)=>{let o=new Map;for(let s of t.before)o.set(s.reportHubId,s);let a=n;for(let s of t.after){let i=o.get(s.reportHubId);if(i!==void 0){if(o.delete(s.reportHubId),!Ei(i,s))return null;continue}if(!Ei(s,Jh(e,s.reportHubId))||r(s.reportHubId))return null;a-=1}for(let s of o.values()){if(!Ei(s,Jh(e,s.reportHubId))||r(s.reportHubId))return null;a+=1}return a},Jh=(e,t)=>{let r=e.byId.get(t);if(r===void 0)throw new Error(`[daily-report] The shown answer does not hold report ${t}`);return r},tb=(e,t,r,n)=>{if(e===null)return{items:t,hasAnswerOnlyItems:!1};let o=u=>e.ids.has(u),a=gi.get(e);if(a!==void 0&&a.isReportRemoved===r&&a.removedVersion===n){if(a.stream===t)return a.list;if(a.stream instanceof ct&&t instanceof ct){let u=r_(e,Cp(a.stream,t,e.answeredByChunk,o),r,a.answerOnlyCount);if(u!==null){let p=a.list.hasAnswerOnlyItems===u>0?a.list:{items:a.list.items,hasAnswerOnlyItems:u>0};return gi.set(e,{...a,stream:t,list:p,answerOnlyCount:u}),p}}}let s=new Map;for(let u of Ip(t,e.answeredByChunk,o))s.set(u.reportHubId,u);let i=[],l=0;for(let u of e.items){let p=s.get(u.reportHubId);p!==void 0?i.push(Ei(p,u)?u:p):r(u.reportHubId)||(i.push(u),l+=1)}let d=l>0;if(a!==void 0&&a.list.hasAnswerOnlyItems===d&&t_(a.items,i))return gi.set(e,{stream:t,isReportRemoved:r,removedVersion:n,items:a.items,list:a.list,answerOnlyCount:l}),a.list;let c={items:i,hasAnswerOnlyItems:d};return gi.set(e,{stream:t,isReportRemoved:r,removedVersion:n,items:i,list:c,answerOnlyCount:l}),c};var rb=(e,t,r)=>{let n=Ee(t,0);if(n===void 0)return null;let o=wt(e,r);if(o!==-1){let a=new Set;for(let s of t)a.add(s.reportHubId);for(let s=1;o+s<e.length||o-s>=0;s++){let i=Ee(e,o+s);if(i!==void 0&&a.has(i.reportHubId))return i.reportHubId;let l=Ee(e,o-s);if(l!==void 0&&a.has(l.reportHubId))return l.reportHubId}}return n.reportHubId},tc=(e,t,r,n)=>{if(r===null){let o=Ee(t,0);return n&&o!==void 0?o.reportHubId:null}return wt(t,r)!==-1?r:rb(e,t,r)},nb=(e,t,r)=>e.selected===null?r!==null&&wt(t,r)!==-1?r:null:wt(t,e.selected)!==-1?e.selected:rb(e.items,t,e.selected);import{useEffect as ab,useLayoutEffect as d_,useMemo as sb,useRef as ib,useSyncExternalStore as c_}from"react";var n_=1e3,o_=5e3,a_={combine:"union",committed:null,filters:Jd,generation:0,status:"idle",failure:null,items:null,answered:null},s_=e=>e===400?"invalid":e===404?"unavailable":e===429?"busy":"failed",i_=(e,t)=>e.length===t.length&&e.every((r,n)=>r.length===t[n].length&&r.every((o,a)=>o.length===t[n][a].length&&o.every((s,i)=>s.text===t[n][a][i].text&&s.tier===t[n][a][i].tier))),rc=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),l_=(e,t)=>{let r=hi(e),n=hi(t);return rc(r.authors,n.authors)&&rc(r.sourceTypes,n.sourceTypes)&&rc(r.customers,n.customers)},ob=e=>{let t=a_,r=new Set,n=null,o=null,a=null,s=null,i=null,l=null,d=S=>{t=S;for(let w of r)w()},c=()=>{s!==null&&clearTimeout(s),i!==null&&clearTimeout(i),s=null,i=null},u=(S,w)=>{let x=t.answered;return x!==null&&x.query.text===S.text&&x.query.combine===S.combine&&i_(x.words,w)?x:{query:{text:S.text,combine:S.combine},words:w}},p=S=>{let w=new URLSearchParams({[Le.searchQuery]:S.text,[Le.searchCombine]:S.combine});return Uh(w,S.filters),`${e.apiBasePath}/${Ve.search}?${w.toString()}`},f=(S,w,x,E)=>{if(!x){d({...t,status:"failed",failure:S});return}l!==E&&(l=E,i=setTimeout(()=>{i=null,y(w,!0)},o_))},m=async(S,w,x)=>{let E=new AbortController;n={controller:E};let L={Accept:"application/json"};x&&a!==null&&a.generation===w&&(L["If-None-Match"]=a.value);try{let N=await e.fetch(p(S),{headers:L,cache:"no-store",signal:E.signal});if(E.signal.aborted||w!==t.generation)return;if(N.status===304){t.status!=="done"&&d({...t,status:"done",failure:null});return}if(N.status===401||N.status===403){e.onSessionExpired(),f("failed",S,!1,w);return}if(!N.ok){f(s_(N.status),S,x,w);return}let M=Nu(await N.json(),!_r(S.text));if(E.signal.aborted||w!==t.generation)return;if(M===null){f("failed",S,x,w);return}let T=N.headers.get("ETag");a=T===null?null:{generation:w,value:T},l=null,d({...t,status:"done",failure:null,items:M.items,answered:M.words.length===0?null:u(S,M.words)})}catch{if(E.signal.aborted||w!==t.generation)return;f("failed",S,x,w)}finally{if(n!==null&&n.controller===E&&(n=null),n===null&&o!==null){let N=o;o=null,y(N.query,N.background)}}},y=(S,w)=>{if(n!==null){o={query:S,background:(o===null||o.background)&&w};return}m(S,t.generation,w)};return{getSnapshot:()=>t,subscribe:S=>(r.add(S),()=>{r.delete(S)}),commit:(S,w,x)=>{if(_r(S)&&Kn(x))throw new Error("[daily-report] search: a blank text can be committed only with a filter");let E=Ri(x);if(E!==null)throw new Error(`[daily-report] search: the filter selection cannot be sent (${E})`);c();let L=t.committed,N=L!==null&&L.text===S&&L.combine===w&&l_(L.filters,x),M={text:S,combine:w,filters:x};d({...t,combine:w,committed:M,filters:x,generation:N?t.generation:t.generation+1,status:"searching",failure:null}),y(M,!1)},setCombine:S=>{S!==t.combine&&d({...t,combine:S})},release:()=>{c(),n?.controller.abort(),n=null,o=null,t.committed!==null&&d({combine:t.combine,committed:null,filters:Jd,generation:t.generation+1,status:"idle",failure:null,items:null,answered:null})},invalidate:()=>{let S=t.committed;S!==null&&(s!==null&&clearTimeout(s),s=setTimeout(()=>{s=null,y(S,!0)},n_))},dispose:()=>{c(),n?.controller.abort(),n=null,o=null}}};var lb=({apiBasePath:e,invalidation:t,onSessionExpired:r})=>{let n=ib(r);d_(()=>{n.current=r});let o=sb(()=>ob({apiBasePath:e,onSessionExpired:()=>n.current(),fetch:(i,l)=>fetch(i,l)}),[e]);ab(()=>()=>o.dispose(),[o]);let a=ib(t);ab(()=>{a.current!==t&&(a.current=t,o.invalidate())},[t,o]);let s=c_(o.subscribe,o.getSnapshot,o.getSnapshot);return sb(()=>({...s,commit:o.commit,setCombine:o.setCombine,release:o.release}),[s,o])};import{useCallback as db,useEffect as u_,useLayoutEffect as p_,useMemo as nc,useRef as m_,useState as f_}from"react";var cb=Object.freeze({status:"idle"}),y_=Object.freeze({status:"loading"}),R_=Object.freeze({sourceTypes:[],authors:[],customers:[]}),h_=e=>e===404?"unavailable":e===429?"busy":"failed",oc=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),b_=(e,t)=>oc(e.sourceTypes,t.sourceTypes)&&oc(e.authors,t.authors)&&oc(e.customers,t.customers),S_=(e,t)=>"facets"in t?e.status!=="ready"||!b_(e.facets,t.facets)?{status:"ready",facets:t.facets,reloadFailure:null}:e.reloadFailure===null?e:{status:"ready",facets:e.facets,reloadFailure:null}:e.status==="ready"?{status:"ready",facets:e.facets,reloadFailure:t.failure}:{status:"failed",failure:t.failure},ub=(e,t)=>[...e].sort((r,n)=>{let o=t.compare(r,n);return o!==0?o:r<n?-1:1}).map(r=>({value:r,label:r})),g_=(e,t)=>e.map(r=>pb(r,t));function pb(e,t){let r=Jt(e,t);return{value:e,label:r===void 0?e:r.label}}var mb=({apiBasePath:e,locale:t,sourceTypeConfigs:r,onSessionExpired:n})=>{let[o,a]=f_({apiBasePath:e,load:cb}),s=o.apiBasePath===e?o.load:cb,i=m_(null),l=Ue(()=>({apiBasePath:e,onSessionExpired:n}));p_(()=>{l.current={apiBasePath:e,onSessionExpired:n}}),u_(()=>()=>{i.current?.abort(),i.current=null},[e]);let d=db(()=>{if(i.current!==null)return;let m=new AbortController;i.current=m;let y=l.current.apiBasePath;a(R=>R.apiBasePath===y&&R.load.status==="ready"?R:{apiBasePath:y,load:y_}),(async()=>{let R;try{let D=await fetch(`${y}/${Ve.searchFacets}`,{headers:{Accept:"application/json"},cache:"no-cache",signal:m.signal});if(m.signal.aborted)return;if(D.status===401||D.status===403)l.current.onSessionExpired(),R={failure:"failed"};else if(!D.ok)R={failure:h_(D.status)};else{let b=Wh(await D.json());if(m.signal.aborted)return;R=b===null?{failure:"failed"}:{facets:b}}}catch{if(m.signal.aborted)return;R={failure:"failed"}}i.current=null,a(D=>({apiBasePath:y,load:S_(D.load,R)}))})()},[l]),c=s.status==="ready"?s.facets:R_,u=nc(()=>{let m=new Intl.Collator(t);return{authors:ub(c.authors,m),sourceTypes:g_(c.sourceTypes,r),customers:ub(c.customers,m)}},[c,t,r]),p=db((m,y)=>m==="sourceType"?pb(y,r):{value:y,label:y},[r]),f=nc(()=>s.status==="ready"?{status:"ready",options:u,optionOf:p,reloadFailure:s.reloadFailure}:s,[s,u,p]);return nc(()=>({state:f,load:d}),[f,d])};import{useEffect as bb,useLayoutEffect as v_,useMemo as I_,useRef as C_}from"react";var E_=4294967295,fb=e=>typeof e=="number"&&Number.isInteger(e)&&e>=0&&e<=E_,D_=e=>{if(!Array.isArray(e)||e.length%3!==0)return null;let t=[];for(let r=0;r<e.length;r+=3){let n=e[r],o=e[r+1],a=e[r+2];if(!(typeof n=="number"&&Number.isSafeInteger(n)&&n>=0&&typeof o=="number"&&Number.isSafeInteger(o)&&n<o)||!oo(a))return null;if(r>0){let s=t[r-2];if(s>n||s===n&&t[r-1]===a)return null}t.push(n,o,a)}return t},w_=e=>{if(!(Qt(e)&&fb(e.fingerprint)))return null;if(Object.hasOwn(e,"dense"))return e.dense===!0&&!Object.hasOwn(e,"ranges")?{fingerprint:e.fingerprint,dense:!0}:null;let t=D_(e.ranges);return t===null?null:{fingerprint:e.fingerprint,ranges:t}},T_=e=>{if(!Qt(e))return null;let t={};for(let[r,n]of Object.entries(e)){if(!En(r))return null;let o=w_(n);if(o===null)return null;t[r]=o}return t},yb=(e,t)=>{if(!(Qt(e)&&fb(e.wordsDigest)&&Array.isArray(e.reports)&&Array.isArray(e.deferred)))return null;let r=new Set(t.requestedIds),n=new Set,o=2**t.setCount-1,a=[];for(let i of e.reports){if(!Qt(i))return null;let{reportHubId:l,matchedSets:d}=i;if(!(typeof l=="number"&&St(l)&&r.has(l))||n.has(l)||(n.add(l),t.expectsMatchedSets?!(typeof d=="number"&&Number.isInteger(d)&&d>=0&&d<=o):d!==null))return null;let c=T_(i.fields);if(c===null)return null;a.push({reportHubId:l,matchedSets:d,fields:c})}if(a.length===0&&e.deferred.length>0)return null;let s=[];for(let i of e.deferred){if(!(typeof i=="number"&&St(i)&&r.has(i))||n.has(i))return null;n.add(i),s.push(i)}return{wordsDigest:e.wordsDigest,reports:a,deferred:s}};var Rb=2*no*Zt.maxDetailIds,A_=240,x_=6e4,hb=({apiBasePath:e,fetch:t,answered:r,onSessionExpired:n})=>{let o=r.words.length,a=r.query.combine==="union"&&o>=2,s=mm(r.words),i=new Map,l=new Map,d=0,c=new Map,u=new Set,p=0,f=0,m=null,y=new Set,g=!1,R=I=>{let _=i.get(I);if(_!==void 0)return _;let k={entry:void 0,appliedSequence:0,settledEpoch:null,retriedEpoch:null,revalidated:new Set};return i.set(I,k),l.has(I)||(d+=1),k},D=I=>{for(let _ of I){let k=i.get(_);k!==void 0&&(k.settledEpoch=null)}},b=()=>{if(!(d<=Rb))for(let I of[...i.keys()]){if(d<=Rb)return;l.has(I)||(i.delete(I),c.delete(I),d-=1)}},h=I=>{let _=l.get(I);if(_!==void 0)for(let k of[..._])k()},S=I=>{let _=new URLSearchParams({[Le.searchQuery]:r.query.text,[Le.searchCombine]:r.query.combine,[Le.reportIds]:I.join(",")});return`${e}/${Ve.searchMarks}?${_.toString()}`},w=(I,_)=>{for(let k of I){let O=R(k.reportHubId);O.appliedSequence>_||(O.appliedSequence=_,O.entry=k,i.delete(k.reportHubId),i.set(k.reportHubId,O),h(k.reportHubId))}b()},x=(I,_)=>{let k=[];for(let $ of I){let j=i.get($);j!==void 0&&j.retriedEpoch!==p&&k.push({id:$,record:j})}if(k.length===0)return;let F=setTimeout(()=>{u.delete(F);for(let{id:$,record:j}of k){let W=c.get($);W===void 0||W.timer!==F||(c.delete($),l.has($)?(j.retriedEpoch=p,A.enqueue($)):j.settledEpoch=null)}},_);u.add(F);for(let{id:$,record:j}of k)c.set($,{timer:F,record:j})},E=I=>{for(let _ of I)l.has(_)?A.enqueue(_):D([_])},L=async(I,_)=>{f+=1;let k=f,O=p;for(let W of I)R(W).settledEpoch=p,c.delete(W);b();let F;try{F=await t(S(I),{headers:{Accept:"application/json"},cache:"no-store",signal:_})}catch{return}if(F.status===401||F.status===403){n();return}if(F.status===429){let W=ha(F,x_);W!==null&&O===p&&x(I,W);return}if(!F.ok)return;let $;try{$=await F.json()}catch{return}let j=yb($,{requestedIds:I,setCount:o,expectsMatchedSets:a});_.aborted||j===null||j.wordsDigest!==s||(w(j.reports,k),O===p&&E(j.deferred))},N=()=>{g=!0,queueMicrotask(()=>{g=!1}),m=setTimeout(M,A_)},M=()=>{if(m=null,y.size!==0){for(let I of y)A.enqueue(I);y.clear(),N()}},T=I=>{if(m!==null&&!g){y.add(I);return}A.enqueue(I),m===null&&N()},A=Ra({hasListener:I=>l.has(I),batchSize:Zt.maxDetailIds,inFlightBound:no,send:L});return{indicator:Object.freeze({setCount:o,showsMatchedSets:a}),subscribe:(I,_)=>{let k=l.get(I);k===void 0&&(k=new Set,l.set(I,k),i.has(I)&&(d-=1)),k.add(_);let O=i.get(I),F=O!==void 0&&O.settledEpoch===p;return k.size===1&&!F&&!A.isWanted(I)&&!y.has(I)&&T(I),()=>{let $=l.get(I);$===void 0||!$.delete(_)||$.size>0||(l.delete(I),i.has(I)&&(d+=1),y.delete(I),D(A.release(I)),b())}},read:I=>{let _=i.get(I);return _===void 0?void 0:_.entry},revalidate:(I,_,k)=>{let O=R(I),F=`${_}\0${k}`;O.revalidated.has(F)||(O.revalidated.add(F),y.delete(I),A.enqueue(I))},advanceEpoch:()=>{p+=1;for(let I of u)clearTimeout(I);u.clear(),c.clear(),y.clear();for(let I of l.keys())A.enqueue(I)},dispose:()=>{for(let _ of u)clearTimeout(_);u.clear();let I=[...c.keys(),...y];c.clear(),y.clear(),m!==null&&clearTimeout(m),m=null,D([...A.dispose(),...I])}}};var Sb=({apiBasePath:e,answered:t,shownRevision:r,onSessionExpired:n})=>{let o=C_(n);v_(()=>{o.current=n});let a=I_(()=>t===null?null:hb({apiBasePath:e,answered:t,onSessionExpired:()=>o.current(),fetch:(i,l)=>fetch(i,l)}),[e,t]);bb(()=>{if(a!==null)return()=>a.dispose()},[a]);let s=Ue(()=>({store:a,shownRevision:r}));return bb(()=>{let i=s.current;s.current={store:a,shownRevision:r},a!==null&&i.store===a&&i.shownRevision!==r&&a.advanceEpoch()},[s,a,r]),a};import{useSyncExternalStore as __}from"react";var gb=e=>{let t=e,r=new Set;return{get:()=>t,set:n=>{if(n!==t){t=n;for(let o of[...r])o()}},subscribe:n=>(r.add(n),()=>{r.delete(n)})}},ac=e=>__(e.subscribe,e.get,e.get);import*as Go from"@radix-ui/react-switch";import*as Db from"react";import{jsx as Eb}from"react/jsx-runtime";var Di=Db.forwardRef(({className:e,...t},r)=>Eb(Go.Root,{className:v(`peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-transparent disabled:cursor-not-allowed disabled:opacity-50 ${Dc} ${Tc} ${te}`,e),...t,ref:r,children:Eb(Go.Thumb,{className:`pointer-events-none block rounded-full shadow-lg data-[state=unchecked]:translate-x-0 motion-safe:transition-[translate] ${wc} ${Ac}`})}));Di.displayName=Go.Root.displayName;import{Fragment as eL,jsx as ae,jsxs as Ot}from"react/jsx-runtime";var k_="list",P_=e=>{if(e==="list"||e==="tree"||e==="detailList")return e;throw new Error(`[daily-report] unknown view tab: ${e}`)},F_=()=>({topItem:null,anchorReportHubId:null,measuredHeights:new Map}),H_=v(vc,Bc,"flex flex-wrap items-center gap-2"),B_=v("@container/views",ht),V_=v("mt-0",ht),U_=v("flex flex-1 items-center justify-center",nn),Ab="relative h-4 w-4 p-0 after:absolute after:-inset-1",W_="flex items-center gap-2",K_=v(Ab,"text-slate-600 hover:bg-amber-200/60 hover:text-slate-900 dark:text-slate-300 dark:hover:bg-amber-800/60 dark:hover:text-slate-100"),z_=v(Ab,"text-amber-800 hover:bg-amber-200/60 hover:text-amber-950 dark:text-amber-300 dark:hover:bg-amber-800/60 dark:hover:text-amber-100"),xb=(e,t)=>{let r=oi(t);return[e.totalCount(r),e.searchHitCount(r)]},$_=({count:e})=>{let{labels:t}=z(),[r,n]=en(null),o=Bh(e,r);return ae(Po,{ref:n,text:t.totalCount(o),widestTexts:xb(t,Math.max(e,o))})},j_=({totalCount:e,hitCount:t})=>{let{labels:r}=z();return t!==null?ae(Po,{text:r.searchHitCount(t),widestTexts:xb(r,e===gr?t:Math.max(e,t))}):e===gr?ae("span",{children:r.totalCountLoading}):ae($_,{count:e})},G_=({checked:e,onCheckedChange:t})=>{let{labels:r}=z(),n=wb(),o=wb();return Ot("div",{className:"flex items-center gap-1 pl-1",children:[ae(Di,{id:n,checked:e,onCheckedChange:t,title:r.autoReadTitle,"aria-describedby":o}),ae(No,{htmlFor:n,className:"cursor-pointer select-none text-slate-500 text-xs dark:text-slate-400",children:r.autoRead}),ae("span",{id:o,hidden:!0,children:r.autoReadTitle})]})},Y_=({selectionStore:e,dailyReportItems:t,rowSetSize:r,autoMarkRead:n,userId:o,scrollOffsetRef:a})=>{let s=ac(e);return ae(qd,{dailyReportItems:t,rowSetSize:r,autoMarkRead:n,selectedReportHubId:s,onSelectItem:e.set,userId:o,scrollOffsetRef:a})},q_=({selectionStore:e,dailyReportItems:t,rowSetSize:r,userId:n,scrollRestoreRef:o})=>{let a=ac(e);return ae(Od,{dailyReportItems:t,rowSetSize:r,userId:n,selectedItemId:a,onSelectItem:e.set,scrollRestoreRef:o})},X_=({tabItems:e,actions:t,searchRow:r})=>{let[n,o]=en(k_),{labels:a}=z();return Ot(Bo,{value:n,onValueChange:s=>o(P_(s)),className:B_,children:[Ot("div",{className:v(Cc,Vc,Uc[n]),children:[Ot("div",{className:H_,children:[ae(Vo,{"aria-label":a.viewTabList,className:"flex flex-wrap gap-1",...pf,children:e.map(({value:s,label:i})=>ae(Uo,{value:s,children:i},s))}),t]}),r]}),e.map(({value:s,content:i})=>ae(Bn,{value:s,tabStop:!1,className:V_,children:i},s))]})},Z_=Object.freeze({items:null,generation:0,revision:0,change:"none",scrollRequest:null,restoreOnRelease:!0}),Q_=(e,t,r)=>{let n="update";t===null?n=e.restoreOnRelease?"restore":"release":e.items===null?n="enter":e.generation!==r&&(n="start");let o=n==="enter"||n==="start"||n==="restore"?n:null,a=o===null?e.scrollRequest:{seq:e.scrollRequest===null?1:e.scrollRequest.seq+1,kind:o};return{items:t,generation:r,revision:e.revision+1,change:n,scrollRequest:a,restoreOnRelease:t===null||n==="enter"?!0:e.restoreOnRelease}},J_=({answer:e,hasAnswerOnlyItems:t})=>{let{phase:r,isRevalidating:n}=An(),o=r==="complete"&&!n,a=zn(null);return sc(()=>{!(o&&t)||a.current===e||(a.current=e,wo())},[o,t,e]),null},ic=({userId:e})=>{let[t,r]=en(!1),{labels:n,renderHeader:o,showDevControls:a,apiBasePath:s,onSessionExpired:i,search:l,locale:d,sourceTypeConfigs:c}=z(),{toggleSse:u,createReport:p,refetchData:f,clearCacheAndRefetch:m}=qe(),{isSseEnabled:y,items:g,searchInvalidation:R,isReportRemoved:D,removedVersion:b}=As(),[h]=M_(),S=lb({apiBasePath:s,invalidation:R,onSessionExpired:i}),w=mb({apiBasePath:s,locale:d,sourceTypeConfigs:c,onSessionExpired:i}),x=l===null||S.committed===null?null:S.items,[E,L]=en(Z_);E.items!==x&&L(Q_(E,x,S.generation));let N=wi(()=>x===null?null:eb(x),[x]),M=wi(()=>tb(N,g,D,b),[N,g,D,b]),T=M.items,A=zp(g.length,Um()),I=x===null?A:T.length,[_,k]=en(0),[O]=en(()=>({preSearchTopReportId:null})),F=wi(()=>({request:E.scrollRequest,slot:O}),[E.scrollRequest,O]),$=Sb({apiBasePath:s,answered:x===null?null:S.answered,shownRevision:E.revision,onSessionExpired:i}),j=zn(0),W=Ue(F_),[V]=en(()=>gb(cl(T))),le=zn(null),Te=zn(T),be=zn(E.revision);Tb(()=>{if(be.current===E.revision)return;be.current=E.revision;let Q=Te.current,oe=V.get(),me=oe;E.change==="enter"?(le.current={selected:oe,items:Q},me=tc(Q,T,oe,!0)):E.change==="start"||E.change==="update"?me=tc(Q,T,oe,E.change==="start"):E.change==="restore"&&le.current!==null&&(me=nb(le.current,T,oe)),(E.change==="restore"||E.change==="release")&&(le.current=null),me!==oe&&V.set(me)},[E,T,V]),Tb(()=>{Te.current=T},[T]);let De=zn(!1);sc(()=>{let Q=cl(T);!De.current&&Q!==null&&(De.current=!0,V.get()===null&&V.set(Q))},[T,V]);let se=async()=>{await f()},Ze=async()=>{await m()},We=async()=>{let oe=h.get("businessDate")||ru();S.committed!==null&&(L(Ie=>({...Ie,restoreOnRelease:!1})),k(Ie=>Ie+1),S.release());let me=await p(oe);V.set(me)};sc(()=>{localStorage.getItem("daily-report-auto-read")==="true"&&r(!0)},[]);let q=Q=>{r(Q),localStorage.setItem("daily-report-auto-read",String(Q))},he=wi(()=>[{value:"list",label:n.tabList,content:ae(Y_,{selectionStore:V,dailyReportItems:T,rowSetSize:I,autoMarkRead:t,userId:e,scrollOffsetRef:j})},{value:"tree",label:n.tabTree,content:ae("div",{className:U_,children:n.treeComingSoon})},{value:"detailList",label:n.tabDetailList,content:ae(q_,{selectionStore:V,dailyReportItems:T,rowSetSize:I,userId:e,scrollRestoreRef:W})}],[T,I,t,e,n,V,W]);return Ot(eL,{children:[o({title:n.title,annotation:Ot("div",{className:"flex flex-wrap items-center gap-2 leading-1",children:[ae(Fo,{}),ae(j_,{totalCount:A,hitCount:x===null?null:I}),ae("span",{children:n.debounce(cn)})]})}),ae("div",{className:ta,children:Ot("div",{className:ra,children:[x!==null&&ae(J_,{answer:x,hasAnswerOnlyItems:M.hasAnswerOnlyItems}),ae(pn.Provider,{value:x===null?"date":"ids",children:ae(rt.Provider,{value:$,children:ae(bl.Provider,{value:F,children:ae(X_,{tabItems:he,searchRow:l===null?null:ae(Qh,{labels:n,debounceMs:l.debounceMs,search:S,shownCount:x===null?null:I,onCommit:S.commit,onCombineChange:S.setCombine,onRelease:S.release,clearSignal:_,filters:l.renderFilterSelect===null?null:{renderFilterSelect:l.renderFilterSelect,locale:d,facets:w}}),actions:Ot("div",{className:"ml-auto flex flex-wrap items-center gap-2 px-1",children:[Ot(ir,{size:"sm",onClick:We,className:"flex h-6 items-center gap-1 rounded-lg bg-amber-700 px-2 font-medium text-white text-xs shadow-xs hover:bg-amber-800 dark:bg-amber-700 dark:hover:bg-amber-800",title:n.createReportTitle,children:[ae(L_,{className:"h-3 w-3"}),ae("span",{children:n.createReport})]}),a&&Ot("div",{className:"hidden h-6 items-center gap-1 rounded-lg border border-amber-300/70 border-solid bg-amber-50/60 px-[3px] text-slate-600 sm:flex dark:border-amber-700/50 dark:bg-amber-950/40 dark:text-slate-300",title:n.devControls,"data-testid":"dev-controls-toolbox",children:[ae("span",{className:"select-none font-bold font-mono text-amber-800 text-xs uppercase dark:text-amber-200",children:"dev"}),ae(Di,{"aria-label":n.devSseToggle,title:n.devSseToggle,checked:y,onCheckedChange:u}),Ot("div",{className:W_,"data-testid":"dev-icon-buttons",children:[ae(ir,{variant:"ghost",size:"icon",onClick:se,className:K_,title:n.devReload,"data-testid":"dev-reload-btn",children:ae(O_,{className:"size-3"})}),ae(ir,{variant:"ghost",size:"icon",onClick:Ze,className:z_,title:n.devClearCache,"data-testid":"dev-clear-cache-btn",children:ae(N_,{className:"size-3"})})]})]}),ae(G_,{checked:t,onCheckedChange:q})]})})})})})]})})]})};import{Fragment as Ib,jsx as Oe,jsxs as Ti}from"react/jsx-runtime";var oL=v(ht,yr),aL=v("flex min-h-0 flex-1 flex-col items-center justify-center gap-4 text-slate-500 dark:text-slate-300",Pt,te),sL=v("font-bold",jn),iL=v("font-medium",jn),lL=v("rounded bg-slate-100 px-4 py-2 text-slate-700 text-sm hover:bg-slate-200 dark:bg-slate-800 dark:text-slate-300 dark:hover:bg-slate-700",te),dL=({isFailed:e,handOver:t})=>{let{labels:r,renderHeader:n}=z(),o=Cb(null),a=tL(i=>(o.current=i,t.take()&&Fr(i)&&ar([i]),()=>{o.current=null,i.contains(Ke(i))&&t.request()}),[t]),s=()=>{ar([o.current]),ds()};return Ti(Ib,{children:[n({title:r.title,annotation:e?Oe("span",{className:sL,children:r.loadErrorBadge}):Ti("div",{className:"flex flex-wrap items-center gap-2 leading-none",children:[Oe(Fo,{}),Oe("span",{children:r.totalCountLoading}),Oe("span",{children:r.debounce(cn)})]})}),Oe("div",{className:ta,children:Oe("div",{className:ra,children:Oe("div",{className:oL,children:Oe("div",{ref:a,tabIndex:-1,...ff,"data-testid":"daily-report-status-panel","data-phase":e?"failed":"loading",className:v(aL,e&&"border-red-200 dark:border-red-900"),children:e?Ti(Ib,{children:[Oe("p",{className:iL,children:r.loadError}),Oe("button",{type:"button","data-testid":"daily-report-load-error-retry",onClick:s,className:lL,children:r.reload})]}):Oe("p",{children:r.loadingIds})})})})})]})},cL=()=>{let{labels:e}=z(),t=Bm();return Oe(ai,{announcement:Hd(t,e),testId:"daily-report-stream-announcer"})},uL=({user:e,userId:t})=>{let{apiBasePath:r,onSessionExpired:n}=z(),o=An(),[a]=nL(UR),s=Cb(n);rL(()=>{s.current=n}),vb(()=>{Eo({apiBasePath:r,userKey:t??null})},[r,t]),vb(()=>{o.phase==="auth-required"&&s.current()},[o.phase]);let i=o.hasItems||o.phase==="complete";return Ti(Wl,{children:[Oe(cL,{}),Oe(Fd.Provider,{value:!1,children:Oe(Cd.Provider,{value:a,children:Oe(jl,{user:e,userId:t,children:i?Oe(ic,{userId:t}):Oe(dL,{isFailed:o.phase==="failed",handOver:a})},t??"anonymous")})})]})},pL=({config:e,...t})=>Oe(Wi,{config:e,children:Oe(uL,{...t})});var mL=new Set(fm.filter(e=>e!=="clearCache")),fL=({actionResult:e,actionStatus:t,currentUrl:r,defaultShouldRevalidate:n,formAction:o,formData:a,formEncType:s,formMethod:i,json:l,nextUrl:d,text:c})=>{if(!n)return!1;if(!(r.pathname===d.pathname&&r.search===d.search&&r.hash===d.hash))return n;if(a){let f=a.get(ut.intent);if(typeof f=="string"&&mL.has(f))return!1}return e!==void 0||t!==void 0||o!==void 0||a!==void 0||s!==void 0||i!==void 0||l!==void 0||c!==void 0?n:!1},yL=e=>{let t=async r=>{_l();let n=await r.serverLoader(),o=n.userId;return Cl({apiBasePath:e?.apiBasePath,userKey:typeof o=="string"?o:null}),n};return t.hydrate=!0,t};export{Wu as DAILY_REPORT_LABEL_CATALOGS,Fi as DAILY_REPORT_LABEL_KEYS,Yo as DAILY_REPORT_LATTICE_BLOCK_QUANTUM_CLASS_NAME,JS as DAILY_REPORT_LAYOUT_LATTICE_PX,Qd as DAILY_REPORT_SEARCH_FILTER_FACETS,jl as DailyReportActionProvider,Gn as DailyReportAttachmentIndicator,Wi as DailyReportConfigProvider,Od as DailyReportDetailList,Wl as DailyReportErrorProvider,Fo as DailyReportIdsStreamStatus,qd as DailyReportList,pL as DailyReportPage,ic as DailyReportResolvedContent,Cl as bootstrapDailyReportIdsStreamSession,yL as createDailyReportClientLoader,fL as dailyReportShouldRevalidate,so as defaultDailyReportClientConfig,Eo as ensureDailyReportIdsStreamSession,uD as foldDailyReportSourceTypeToken,_l as primeDailyReportIdsStreamSession,Om as readDailyReportIdsStreamRows,Vi as resolveDailyReportLabels,Jt as resolveSourceTypeConfig,cs as resyncDailyReportIdsStream,ZD as useDailyReportActionContext,pd as useDailyReportComments,z as useDailyReportConfig,Qi as useDailyReportDetail,sD as useDailyReportIdsStream,Ji as useDailyReportPrefetch,Fl as useDailyReportSseConnection};