@aiquants/daily-report 0.40.0 → 0.41.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,7 @@
1
- import Fy from"lucide-react/dist/esm/icons/paperclip.js";var My="data-daily-report-row-surface",Qe={[My]:""},Kr="data-daily-report-scrolling",rr=8;var Io="[--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]",nr=`${Io} h-[calc-size(auto,round(up,size,var(--aqdr-lattice-block)))]`,or="p-[8px]",Xl="pr-[8px]",vo="contain-size contain-layout contain-style",Ql="contain-strict",kt="pointer-events-none absolute size-px whitespace-nowrap opacity-0 select-none contain-layout",ne="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-blue-600 dark:focus-visible:outline-blue-400",Pt="border-slate-500 placeholder:text-slate-500 dark:border-slate-500 dark:placeholder:text-slate-400",Zl="-mx-[4px] px-[4px] pb-[4px] scroll-p-[4px]",Ls="scrollbar-thin [scrollbar-gutter:stable]",Ns=`-m-[4px] overflow-hidden p-[4px] ${Ls}`,Jl="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white",_o="rounded-[calc(var(--radius-2xl)+8px)]",wo="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",xt="rounded-2xl border border-solid border-slate-200 bg-white p-[15px] shadow-sm dark:border-slate-700 dark:bg-slate-900/70",Lo=16,$r="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,No="rounded-xl bg-slate-50 p-3 text-slate-700 text-sm leading-6 dark:bg-slate-800/60 dark:text-slate-200";var rd="min-h-24",nd="flex h-6 items-center",Oo="[--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",He=`flex size-6 shrink-0 items-center justify-center rounded-full hover:bg-slate-200 dark:hover:bg-slate-700 ${ne}`,od="-mx-1",ad="flex items-center gap-1",Ke="inline-flex h-6 items-center rounded-full px-3",sd="inline-flex h-6 items-center rounded-full border border-solid px-[11px]",id="inline-flex h-6 shrink-0 items-center rounded px-2 font-semibold text-xs tracking-wide",tr="size-4",Oe={starOff:`${tr} text-slate-500 dark:text-slate-400 forced-colors:text-[CanvasText]`,starOn:`${tr} fill-yellow-400 text-yellow-700 dark:text-yellow-400 forced-colors:fill-[Highlight] forced-colors:text-[Highlight]`,read:`${tr} text-blue-600 dark:text-blue-400`,delete:`${tr} text-slate-500 hover:text-red-600 dark:text-slate-400 dark:hover:text-red-400`,deletePending:`${tr} text-red-600 dark:text-red-400`,edit:`${tr} text-slate-500 dark:text-slate-400`},ld="h-6 w-10 border-4 border-solid",dd="size-4 data-[state=checked]:translate-x-4",cd="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]",ud="bg-white dark:bg-slate-950 forced-colors:bg-[ButtonText]";var pd="rounded-xl bg-slate-100 p-1 dark:bg-slate-800",md="rounded-xl border border-solid p-[3px]",fd="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",ky="supports-[margin-left:round(down,1px,1px)]:ml-[max(0px,round(down,calc((100%-72rem)/2),var(--aqdr-lattice-block)))]",Py="bg-slate-50 dark:bg-slate-950",rt="flex min-h-0 flex-1 flex-col",Mo=`${rt} ${Py}`,ko=`${rt} mx-auto w-full max-w-6xl ${Io} px-[var(--aqdr-lattice-block)] pt-[var(--aqdr-lattice-block)] ${ky}`,yd=`relative z-[1] flex shrink-0 flex-col ${nr}`,hd="flex grow flex-col justify-between",bd="flex min-h-8 min-w-0 items-end",Rd="grid min-w-0 grid-cols-1 gap-2 sm:grid-cols-[minmax(0,2fr)_minmax(0,1fr)_minmax(0,3fr)]",Sd="m-0 min-w-0 border-0 p-0",gd="mb-1 p-0 text-slate-700 text-xs leading-4 dark:text-slate-200",Ed="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]",wn="text-red-700 dark:text-red-400",Dd="bg-white dark:bg-slate-900",Po=`min-h-0 flex-1 overflow-clip contain-size ${Io}`,Fo="flex h-full flex-col contain-size contain-layout contain-style",Td="relative inline-block whitespace-nowrap tabular-nums",xd="invisible",Ad="absolute inset-0 contain-size contain-layout contain-style",Ho="[&_.aqvs-no-items-text]:py-4 [&_.aqvs-no-items-text]:text-slate-500 dark:[&_.aqvs-no-items-text]:text-slate-400",Cd="border-slate-200/80 bg-slate-100/60 dark:border-slate-800 dark:bg-slate-900/60 dark:text-slate-200",Id="ml-[8px]",vd={list:"mr-[8px] [@media(max-width:639px)]:mr-[16px] @max-[460px]/views:mr-[16px]",tree:"mr-[8px]",detailList:"mr-[16px]"},gr="font-semibold text-slate-500 text-xs uppercase tracking-wide dark:text-slate-400",Ft=`m-0 ${gr}`,Ht="text-balance wrap-anywhere [word-break:auto-phrase]",Bo="[&_.aqvs-scrollbar]:bg-slate-100 [&_.aqvs-scrollbar-track]:bg-slate-100 [&_.aqvs-scrollbar-thumb]:bg-slate-500 [&_.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-slate-500 [&_.aqvs-scrollbar-arrow-button]:bg-slate-100 [&_.aqvs-scrollbar-arrow-button]:text-slate-600 [&_.aqvs-scrollbar-arrow-button:enabled:hover]:bg-slate-200 dark:[&_.aqvs-scrollbar]:bg-slate-900 dark:[&_.aqvs-scrollbar-track]:bg-slate-900 dark:[&_.aqvs-scrollbar-thumb]:bg-slate-500 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-thumb[data-thumb-state=disabled]]:bg-slate-500 dark:[&_.aqvs-scrollbar-arrow-button]:bg-slate-900 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]";import{jsx as _d,jsxs as By}from"react/jsx-runtime";var Hy=2,Ln=({id:e,count:t,label:r})=>t<=0?null:By("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:[_d(Fy,{className:tr,"aria-hidden":"true"}),t>=Hy&&_d("span",{className:"font-semibold text-xs leading-4",children:t})]});import{VirtualScroll as ET}from"@aiquants/virtualscroll";import{useCallback as Fe,useEffect as br,useLayoutEffect as DT,useMemo as gl,useRef as ze,useState as fs}from"react";var Er=Object.freeze({text:"",runs:Object.freeze([])}),nt=e=>e.length===0?Er:{text:e,runs:[{displayStart:0,displayEnd:e.length,sourceStart:0,sourceEnd:e.length}]},wd=(e,t,r)=>t>=r?Er:{text:e.slice(t,r),runs:[{displayStart:0,displayEnd:r-t,sourceStart:t,sourceEnd:r}]},Os=(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}))},Ms=e=>e.displayEnd-e.displayStart===e.sourceEnd-e.sourceStart,Nn=(e,t,r)=>{if(t>=r)return Er;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(Ms(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(...Os(a-t,s-t,o.sourceStart,o.sourceEnd))}return{text:e.text.slice(t,r),runs:n}},zr=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?Er:{text:t,runs:r}},ks=e=>{let t=e.text.trimEnd().length,r=Math.min(t,e.text.length-e.text.trimStart().length);return Nn(e,r,t)},ar=e=>typeof e=="string"?ks(nt(e)):Er,Uo=(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],y=Math.max(f.displayStart,d),h=Math.min(f.displayEnd,c);if(!(y>=h))if(Ms(f)){let b=f.sourceStart+(y-f.displayStart);a.push({displayStart:y+u,displayEnd:h+u,sourceStart:b,sourceEnd:b+(h-y)})}else a.push(...Os(y+u,h+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?Er:{text:o,runs:a}},Uy=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},Vy=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},Ld=e=>{let t=e.normalize("NFC");if(t===e)return nt(e);let r=Uy(e),n=r.map(s=>s.shown).join("")===t?r:Vy(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(...Os(a,d,s,i)),a=d}return{text:t,runs:o}},Nd=(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(Ms(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},Od=String.raw`<br\s*\/?\s*>`,Md=String.raw`<\/p>`,kd="<[^>]+>",Wy=new RegExp(String.raw`(${Od}|${Md}|\r?\n)|${kd}`,"gi"),Pd=new RegExp(Od,"gi"),Ky=new RegExp(Md,"gi"),$y=new RegExp(kd,"g"),Fd=(e,t)=>{if(!e)return[];let r=[],n=[],o=0,a=()=>{let s=zr(n);n=[];let i=ks({text:s.text.replace(/ /g," "),runs:s.runs});i.text.length>0&&r.push(i)};for(let s of e.matchAll(Wy))if(n.push(wd(e,o,s.index)),o=s.index+s[0].length,s[1]!==void 0&&(a(),r.length===t))return r;return n.push(wd(e,o,e.length)),a(),r},Hd=e=>Uo(Uo(Uo(nt(e),Pd,`
2
- `),Ky,`
3
- `),$y,""),Bd=e=>e?ks(Uo(nt(e),Pd,`
4
- `)):Er;var zy=Object.freeze({text:"-",runs:Object.freeze([])}),Me=e=>{let t=ar(e);return t.text===""?zy:t},sr=e=>Me(e).text,be=e=>{if(!e)return"-";if(typeof e!="string")return e instanceof Date?be(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 qh,useCallback as Xh,useContext as bc,useEffect as yc,useRef as Qh,useState as Zh}from"react";import{z as Fn}from"zod";var jy=/^(\d{4})([-/])(\d{2})\2(\d{2})$/;var Vo=e=>e<10?`0${e}`:`${e}`,Yy=e=>{if(Number.isNaN(e.getTime()))return null;let t=e.getFullYear(),r=Vo(e.getMonth()+1),n=Vo(e.getDate());return`${t}-${r}-${n}`},Ud=e=>{let t=jy.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}`},jr=e=>Ud(e)===e,Ps=(e=new Date)=>Number.isNaN(e.getTime())?Ps(new Date):`${e.getFullYear()}-${Vo(e.getMonth()+1)}-${Vo(e.getDate())}`,Dr=e=>e==null?null:e instanceof Date?Yy(e):Ud(e);import{z as Gy}from"zod";var mt=e=>Number.isSafeInteger(e)&&e>0,De=Gy.number().int().positive().max(Number.MAX_SAFE_INTEGER);var Wo="ids-columns",Fs=e=>{if(typeof e!="object"||e===null)return"unknown";let{kind:t}=e;return t==="chunk"?"chunk":t==="error"?"error":"unknown"},qy=e=>typeof e=="number"&&mt(e),Xy=e=>{if(typeof e!="object"||e===null)return!1;let{businessDate:t,reportHubId:r}=e;return(t===null||typeof t=="string")&&typeof r=="number"},Qy=4,Zy=e=>{let t=Qy;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}}},Vd=e=>{if(Fs(e)!=="chunk")return!1;let{ids:t,dates:r,counts:n,sourceTypes:o,sources:a,isLast:s,nextCursor:i}=e;if(typeof s!="boolean"||!(i===null||Xy(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!1;for(let p of o)if(!(p===null||typeof p=="string"))return!1;let l=Zy(t.length),d=0,c=null,u=0;for(let p=0;p<r.length;p++){let f=r[p],y=n[p];if(!(f===null||typeof f=="string"&&jr(f))||p>0&&f===r[p-1]||typeof y!="number"||!Number.isSafeInteger(y)||y<1)return!1;let h=d+y;if(h>t.length)return!1;for(;d<h;d++){let b=t[d],m=a[d];if(!(qy(b)&&l(b))||typeof m!="number"||!Number.isSafeInteger(m)||m<0||m>=o.length||d>0&&!Jy(c,u,f,b))return!1;c=f,u=b}}return d===t.length},Wd=(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 Kd=(e,t,r,n)=>e!==r?e===null?1:r===null||e>r?-1:1:n-t,Jy=(e,t,r,n)=>Kd(e,t,r,n)<0,$d=(e,t)=>Kd(e.businessDate,e.reportHubId,t.businessDate,t.reportHubId);var ke=Object.freeze({businessDate:"business-date",idsStream:Wo,report:"report",search:"search",reports:"reports",searchMarks:"search-marks",searchFacets:"search-facets",action:"action"}),Ce=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 zd=(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)}}},_I=Object.freeze(["API","Action","Attachment","ExternalSource","Isolation","Reads","Refresh","Search","SSE","SseReader","Server","Service","Streams","Visibility","ActionProvider","DetailLoader","IdsStream","SseConnection"]),jd=e=>`[DailyReport${e}]`,ir=(e,t,r)=>e===void 0?zd(t,jd(r)):zd(0,jd(r),e);var Bt=Object.freeze({maxQueryLength:500,maxSets:16,maxWordsPerSet:16,maxWords:32,maxWordLength:100,maxDetailIds:100}),eh=2,On=2,Yr=Object.freeze({word:0,reading:1}),Mn=e=>e===Yr.word||e===Yr.reading;var Ut=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},th=2*(1+eh),rh=e=>{if(!Array.isArray(e)||e.length===0||e.length>th)return null;let t=[],r=new Set;for(let n of e){if(!Ut(n))return null;let{text:o,tier:a}=n;if(typeof o!="string"||o.length===0||o.length>Bt.maxWordLength||r.has(o)||!Mn(a)||(t.length===0?a!==Yr.word:a<t[t.length-1].tier))return null;r.add(o),t.push({text:o,tier:a})}return t},nh=(e,t)=>{if(!Array.isArray(e))return null;if(!t)return e.length===0?[]:null;if(e.length===0||e.length>Bt.maxSets)return null;let r=[],n=0;for(let o of e){if(!Array.isArray(o)||o.length===0||o.length>Bt.maxWordsPerSet||(n+=o.length,n>Bt.maxWords))return null;let a=[];for(let s of o){let i=rh(s);if(i===null)return null;a.push(i)}r.push(a)}return r},Yd=(e,t)=>{if(!Ut(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=nh(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"||!mt(l)||d!==null&&(typeof d!="string"||!jr(d))||typeof c!="string"||c.length===0)return null;s.push({reportHubId:l,businessDate:d,sourceType:c})}return{items:s,words:a}};import{z as U}from"zod";var Ko=/^(?:[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 Gd=["auth-required","forbidden","resync-required"],Hs=15e3,qd="lastEventId",oh=/^\d{1,15}-\d{1,15}$/,$o=e=>oh.test(e),ah=U.object({name:U.string().nullish(),affiliation:U.string().nullish()}),sh=U.object({name:U.string().nullish(),text:U.string().nullish(),color:U.string().nullish()}),ih=U.object({id:De,name:U.string().nullish(),color:U.string().nullish()}),zo=U.object({id:De,userId:U.string().nullish(),userName:U.string().nullish(),content:U.string().nullish(),createdAt:U.string().nullish(),isMine:U.boolean()}),lh=U.object({id:U.string(),fileName:U.string(),fileType:U.string().nullable(),fileSize:U.number().nullable(),createdAt:U.string().nullable(),state:U.enum(["present","absent","unknown"]),hasThumbnail:U.boolean().default(!1)}),At=U.object({reportHubId:De,date:U.string().nullish(),createdAt:U.string().nullish(),author:U.string().nullish(),userId:U.string().nullish(),sourceType:U.string().nullish(),employeeName:U.string().nullish(),updatedBy:U.string().nullish(),updatedAt:U.string().nullish(),category:U.string().nullish(),creationCategory:U.string().nullish(),visitTimeFrom:U.string().nullish(),visitTimeTo:U.string().nullish(),customerName:U.string().nullish(),interviewers:U.array(ah),subject:U.string().nullish(),content:U.string().nullish(),externalComments:U.array(sh),isRead:U.boolean(),isStarred:U.boolean(),isDraft:U.boolean(),labels:U.array(ih),postedComments:U.array(zo),attachments:U.array(lh).default([])}),Tr=U.string().regex(Ko),dh=U.object({type:U.literal("connected")}),ch=U.object({type:U.literal("status-update"),reportHubId:De,statusType:U.enum(["star","read"]),value:U.boolean(),clientTempId:Tr,recipientRawUserId:De.optional()}),Bs=U.string().optional(),uh=U.object({type:U.literal("comment-add"),reportHubId:De,comment:zo,clientTempId:Tr,recipientRawUserId:De.optional(),sourceType:Bs}),ph=U.object({type:U.literal("comment-delete"),reportHubId:De,commentId:De,clientTempId:Tr,recipientRawUserId:De.optional(),sourceType:Bs}),mh=U.object({type:U.literal("report-create"),reportHubId:De,report:At,clientTempId:Tr,recipientRawUserId:De.optional()}),fh=U.object({type:U.literal("report-update"),reportHubId:De,report:At,clientTempId:Tr,recipientRawUserId:De.optional()}),yh=U.object({type:U.literal("report-publish"),reportHubId:De,report:At,clientTempId:Tr,recipientRawUserId:De.optional()}),hh=U.object({type:U.literal("report-delete"),reportHubId:De,clientTempId:Tr,sourceType:Bs}),Xd=U.discriminatedUnion("type",[dh,ch,uh,ph,mh,fh,yh,hh]);var jo=e=>e.issues.map(t=>`${t.path.length===0?"(root)":t.path.join(".")}: ${t.code}`).join("; ");import{resolveVirtualScrollLocale as _h}from"@aiquants/virtualscroll";import{createContext as wh,useMemo as Lh}from"react";var bh=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 ${bh(r)}`),Qd=(e,t)=>new TypeError(`[daily-report] ${e} must be ${t}`),kn=(e,t,r)=>we(e,`one of ${r.map(n=>JSON.stringify(n)).join(", ")}`,t),ft=(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)};import{useContext as Rh}from"react";var yt=(e,t,r)=>{let n=Rh(e);if(n===null)throw new Error(`[daily-report] ${t} must be used within a ${r}`);return n};import{resolveVirtualScrollLabels as Sh,resolveVirtualScrollLocale as gh,VIRTUAL_SCROLL_LABEL_CATALOGS as Zd,VIRTUAL_SCROLL_LABEL_KEYS as Ws}from"@aiquants/virtualscroll";var tc=["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"],rc=["totalCount","debounce","streamProgressCount","streamProgressRatio","streamRetrying","reportLoadFailed","reportSummaryLoadFailed","interviewerWithAffiliation","operationFailed","noticeRepeated","rowState","listRowPosition","listRowPositionInUnknownTotal","searchHitCount","searchFailed","searchMatchedKeywords","searchMatchedKeywordsDescription","searchFieldMatched","searchFieldMatchedByReading","searchFiltersToggle","searchFiltersFailed"],Us=[...Ws,...tc,...rc];var Jd=Object.freeze({en:"en-US",ja:"ja-JP"}),Eh=Object.freeze({en:new Intl.NumberFormat(Jd.en),ja:new Intl.NumberFormat(Jd.ja)}),fe=(e,t)=>Eh[e].format(t),Dh=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"}),Th=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"}),xh=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"}),Ah=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"}),Ch=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"}),Ih=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"}),Vs=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: ${fe("en",e)}`,debounce:e=>`Debounce: ${e} ms`,streamProgressCount:e=>`Loading ${fe("en",e)}`,streamProgressRatio:(e,t,r)=>`Loading ${fe("en",e)} / ${fe("en",t)} (${r}%)`,streamRetrying:e=>`Reconnecting... (${fe("en",e)} received)`,reportLoadFailed:e=>`Failed to load report ${fe("en",e)}.`,reportSummaryLoadFailed:e=>`Failed to load the summary of report ${fe("en",e)}.`,interviewerWithAffiliation:(e,t)=>`${e} (${t})`,operationFailed:e=>`Failed to ${Th[e]}. Please try again later.`,noticeRepeated:e=>`(${fe("en",e)} times)`,rowState:({isRead:e,isStarred:t})=>`${e?"Read":"Unread"}${t?", starred":""}`,listRowPosition:(e,t)=>`${fe("en",e)} of ${fe("en",t)}`,listRowPositionInUnknownTotal:e=>`Item ${fe("en",e)}`,searchHitCount:e=>`${fe("en",e)} ${e===1?"hit":"hits"}`,searchFailed:e=>Ah[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 (${fe("en",e)})`,searchFiltersFailed:e=>Ih[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: ${fe("ja",e)} \u4EF6`,debounce:e=>`\u30C7\u30D0\u30A6\u30F3\u30B9: ${e} ms`,streamProgressCount:e=>`\u8AAD\u307F\u8FBC\u307F\u4E2D ${fe("ja",e)} \u4EF6`,streamProgressRatio:(e,t,r)=>`\u8AAD\u307F\u8FBC\u307F\u4E2D ${fe("ja",e)} / ${fe("ja",t)} (${r}%)`,streamRetrying:e=>`\u518D\u63A5\u7D9A\u4E2D... (${fe("ja",e)} \u4EF6\u53D7\u4FE1\u6E08)`,reportLoadFailed:e=>`\u65E5\u5831 ${fe("ja",e)} \u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002`,reportSummaryLoadFailed:e=>`\u65E5\u5831 ${fe("ja",e)} \u306E\u6982\u8981\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002`,interviewerWithAffiliation:(e,t)=>`${e} (${t})`,operationFailed:e=>`${Dh[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=>`(${fe("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 ${fe("ja",t)} \u4EF6\u4E2D ${fe("ja",e)} \u4EF6\u76EE`,listRowPositionInUnknownTotal:e=>`${fe("ja",e)} \u4EF6\u76EE`,searchHitCount:e=>`${fe("ja",e)} \u4EF6\u30D2\u30C3\u30C8`,searchFailed:e=>xh[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 (${fe("ja",e)})`,searchFiltersFailed:e=>Ch[e]})}),nc=Object.freeze({en:Object.freeze({...Zd.en,...Vs.en}),ja:Object.freeze({...Zd.ja,...Vs.ja})}),vh=e=>{let t={},r=!1;for(let n of Ws){let o=Object.hasOwn(e,n)?e[n]:void 0;o!==void 0&&(t[n]=o,r=!0)}return r?t:void 0},ec=(e,t,r)=>{e[t]=r},Ks=(e,t)=>{let r=gh(e);if(t===void 0)return nc[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(!Us.includes(s))throw kn("labels key",s,Us);let a={...Sh(r,vh(t)),...Vs[r]};for(let s of tc){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);ec(a,s,i)}}for(let s of rc){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);ec(a,s,i)}}return Object.freeze(a)},oc=e=>{let t={};for(let r of Ws)t[r]=e[r];return Object.freeze(t)};import{jsx as $s,jsxs as Wh}from"react/jsx-runtime";var Nh=e=>({Internal:{label:e.sourceInternal,badgeClassName:"bg-emerald-100 text-emerald-800 dark:bg-emerald-900/30 dark:text-emerald-400"}}),Oh=({title:e,annotation:t})=>Wh("header",{className:"flex flex-wrap items-baseline justify-between gap-2 px-2 py-1",children:[$s("span",{className:"text-nowrap text-slate-700 text-sm dark:text-slate-200",children:e}),t?$s("span",{className:"text-slate-600 text-xs dark:text-slate-300",children:t}):null]}),Pn=Object.freeze({apiBasePath:"/daily_report/api",ssePath:"/sse/daily_report/updates",renderHeader:Oh,showDevControls:!1,headingLevel:3}),ac=["apiBasePath","ssePath","locale","labels","sourceTypeConfigs","renderHeader","showDevControls","headingLevel","onError","onSessionExpired","search"];var Mh=e=>{for(let t of Object.keys(e))if(!ac.includes(t))throw kn("config key",t,ac)},sc=[2,3,4,5],kh=e=>{if(e===void 0)return Pn.headingLevel;let t=sc.find(r=>r===e);if(t===void 0)throw we("config.headingLevel",`one of ${sc.join(", ")} (the level of each report's heading)`,e);return t},ic=["debounceMs","renderFilterSelect"],Ph=Object.freeze({min:300,max:5e3}),Fh=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},Hh=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},Bh=e=>{if(e===void 0)return null;if(!Fh(e))throw we("config.search","a plain object ({} for Enter only, or { debounceMs })",e);for(let o of Object.keys(e))if(!ic.includes(o))throw kn("config.search key",o,ic);let t=e.debounceMs,{min:r,max:n}=Ph;return{debounceMs:t===void 0?null:ft("config.search.debounceMs",t,r,n),renderFilterSelect:Hh(e.renderFilterSelect)}},Uh=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},Vh=e=>{Mh(e);let t=e.onSessionExpired;if(t===void 0)throw Qd("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=_h(e.locale),n=Ks(r,e.labels),o=Pn;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?Nh(n):Uh(e.sourceTypeConfigs),renderHeader:e.renderHeader===void 0?o.renderHeader:e.renderHeader,showDevControls:e.showDevControls===void 0?o.showDevControls:e.showDevControls,headingLevel:kh(e.headingLevel),onError:e.onError,onSessionExpired:e.onSessionExpired,search:Bh(e.search)}},lc=wh(null),zs=({config:e,children:t})=>{let r=Lh(()=>Vh(e),[e]);return $s(lc.Provider,{value:r,children:t})},q=()=>yt(lc,"useDailyReportConfig","DailyReportConfigProvider"),Vt=(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},Yo=(e,t)=>t?.allowComment!==void 0?t.allowComment:!e||e.toLowerCase()==="internal";var Go=({hasListener:e,batchSize:t,inFlightBound:r,send:n})=>{ft("createIdBatchScheduler: batchSize",t,1),ft("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=y=>{p(),u.signal.aborted&&y===u.signal.reason||globalThis.reportError(y)};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}}};import{tapScrollCircleSampleVisual as $h}from"@aiquants/virtualscroll";var Kh=4;var Gr=120,dc=1e3,Xo=.8,js={maxVelocity:18,deceleration:.0018,startVelocityThreshold:.03},Qo=20,cc=6,Zo={reportHubId:-1,businessDate:null},Jo=240,ea=15,zh=8,uc=460,pc=3,mc=352,jh={enabled:!0,renderVisual:$h,maxSpeedCurve:{exponentialSteepness:3,exponentialScale:8},maxSpeedMultiplier:8,className:"[[data-daily-report-keyboard-focus]_&]:invisible"},ta={width:zh,tapScrollCircleOptions:jh,enableArrowButtonTabStops:!1},ra=["pen","touch"];var Yh=/^[1-9][0-9]*$/,Gh=/^(?:0|[1-9][0-9]*)$/,fc=e=>{if(e===null||!Yh.test(e))return null;let t=Number(e);return mt(t)?t:null},qr=e=>{if(e===null||!Gh.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null};var na=e=>{let t=qr(e.headers.get("Retry-After"));return t===null?null:t*1e3};var Rc=ir(void 0,1,"DetailLoader"),Sc=(e,t)=>{if(typeof window>"u")return t;let r=window[e];return typeof r=="number"&&!Number.isNaN(r)?r:t},Xs=Sc("__DAILY_REPORT_CACHE_TTL__",3e5),Jh=Sc("__DAILY_REPORT_CACHE_REVIVE_MS__",6e4),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=Dr(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()){Rc.warn(`Stale update skipped id=${e}`);return}this.set({...n.data,...t},Math.max(n.expiresAt,Date.now()+Jh))}},delete(e,t){this.reports.delete(e);let r=Dr(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+Xs;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}},gc=(e,t,r=!0)=>ee.set(e,t,r),ot=(e,t)=>ee.getReport(e,t?.ignoreExpiry),at=(e,t)=>ee.update(e,t),Qs=(e,t)=>ee.delete(e,t),Hn=()=>{ee.clear(),oa.clear(),lb()},aa=(e,t)=>{let r=ee.lastMutations.get(e);(r===void 0||r<t)&&ee.lastMutations.set(e,t)},Zs=e=>{aa(e,Date.now())},Ec=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),aa(e,Date.now()),()=>{let n=ee.lockHolders.get(e);n===void 0||!n.delete(t)||(n.size===0&&ee.lockHolders.delete(e),aa(e,Date.now()))}},Dc=(e,t)=>{let r=performance.now()+t,n=ee.lockHolds.get(e);(n===void 0||n<r)&&ee.lockHolds.set(e,r),aa(e,Date.now()+t)},Tc=e=>ee.recentDeletes.set(e,Date.now()),xc=(e,t)=>{let r=n=>{n===e&&t()};return ee.listeners.add(r),()=>{ee.listeners.delete(r)}},xr=(e,t)=>{ee.prune(),ee.set(t,Date.now()+Xs)},Ac=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()+Xs)},eb=Fn.object({report:At}),tb=Fn.object({reports:Fn.array(At)}),Cc=(e,t)=>new Error(`[daily-report] ${e} answered HTTP ${t}`),Js=async(e,t,r)=>{if(!e.ok)throw Cc(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 (${jo(n.error)})`);return n.data},rb=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({[Ce.reportHubId]:String(t)}),s=fetch(`${e}/${ke.report}?${a}`,{cache:"no-cache"}).then(i=>Js(i,eb,ke.report)).then(({report:i})=>ee.cacheMany([i],null,o)[0]).finally(()=>ee.pendingReports.delete(t));return ee.pendingReports.set(t,s),s},oa=new Map,nb=1e4,ob=(e,t)=>{let r=oa.get(t),n=Date.now();if(r&&n-r.at<nb)return r.inFlight;let o=ei(e,t,{forceRefresh:!0}),a={at:n,inFlight:o};return oa.set(t,a),o.finally(()=>{oa.get(t)===a&&(a.inFlight=null)}).catch(()=>{}),o},ei=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({[Ce.businessDate]:t}),i=fetch(`${e}/${ke.businessDate}?${s}`,{cache:"no-cache"}).then(l=>Js(l,tb,ke.businessDate)).then(({reports:l})=>ee.cacheMany(l,t,a)).finally(()=>ee.pendingLists.delete(t));return ee.pendingLists.set(t,i),i},ab=Fn.object({reports:Fn.array(At)}),sb=5e3,Ys=new Map,ib=e=>{let t=new Map,r=new Map,n=new Map,o=new Set,a=(u,p)=>{let f=[];for(let y of u)r.get(y)===p&&(r.delete(y),f.push(y));return f},s=(u,p)=>{let f=t.get(u);if(f!==void 0){t.delete(u),o.delete(u);for(let y of f)p(y)}},i=(u,p)=>{let y=setTimeout(()=>{for(let h of u)n.delete(h),t.has(h)&&(o.add(h),c.enqueue(h))},p);for(let h of u)n.set(h,y)},l=(u,p,f)=>{let y=[];for(let h of u)p!==null&&p<=sb&&t.has(h)&&!o.has(h)?y.push(h):s(h,b=>b.reject(f));p!==null&&y.length>0&&i(y,p)},d=async(u,p)=>{for(let h of u)r.set(h,p);let f=Date.now(),y=new URLSearchParams({[Ce.reportIds]:u.join(",")});try{let h=await fetch(`${e}/${ke.reports}?${y}`,{cache:"no-cache",signal:p});if(h.status===429){l(a(u,p),na(h),Cc(ke.reports,h.status));return}let{reports:b}=await Js(h,ab,ke.reports);if(p.aborted)return;let m=new Map(ee.cacheMany(b,null,f).map(g=>[g.reportHubId,g]));for(let g of a(u,p))s(g,R=>R.resolve(m.get(g)??null))}catch(h){for(let b of a(u,p))s(b,m=>m.reject(h))}},c=Go({hasListener:u=>t.has(u),batchSize:Bt.maxDetailIds,inFlightBound:On,send:d});return{readers:t,pending:r,holds:n,retried:o,scheduler:c}},lb=()=>{for(let{readers:e,pending:t,holds:r,retried:n,scheduler:o}of Ys.values()){o.dispose(),t.clear();for(let a of r.values())clearTimeout(a);r.clear(),n.clear();for(let a of e.keys())o.enqueue(a)}},db=(e,t,r)=>new Promise((n,o)=>{let a=Ys.get(e);a===void 0&&(a=ib(e),Ys.set(e,a));let{readers:s,pending:i,holds:l,retried:d,scheduler:c}=a,u={resolve:n,reject:o},p=s.get(t);p===void 0?s.set(t,new Set([u])):p.add(u),c.isWanted(t)||i.has(t)||l.has(t)||c.enqueue(t);let f=()=>{let y=s.get(t);if(!(y===void 0||!y.delete(u))&&(o(r.reason),!(y.size>0))){s.delete(t),d.delete(t);for(let h of c.release(t))i.delete(h)}};r.addEventListener("abort",f,{once:!0})}),sa=qh("date"),Gs=(e,t)=>{let r=ee.reports.get(e);if(r!==void 0)return{report:r.data,isStale:!ee.isValid(r.expiresAt)};if(t===null)return{report:null,isStale:!1};let n=ee.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:!ee.isValid(n.expiresAt)}},hc=(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}=Gs(e,Dr(t));return{id:e,report:r,error:null,isLoading:r===null,isRefetching:!1}},Xr=(e,t)=>r=>r.id!==e?r:Object.keys(t).some(o=>r[o]!==t[o])?{...r,...t}:r,Ar=(e,t)=>{let{apiBasePath:r}=q(),n=bc(sa),[o,a]=Zh(()=>hc(e,t)),s=Qh(0),i=o;return o.id!==e&&(i=hc(e,t),a(i)),yc(()=>{let l=Dr(t),d=c=>{c===e&&a(Xr(e,{report:Gs(e,l).report}))};return ee.listeners.add(d),()=>{ee.listeners.delete(d)}},[e,t]),yc(()=>{let l=Dr(t);s.current+=1;let d=s.current,c=new AbortController,u=()=>{c.abort(),s.current+=1};if(e<=0)return u;let{report:p,isStale:f}=Gs(e,l);if(p&&!f)return a(Xr(e,{report:p,error:null,isLoading:!1,isRefetching:!1})),u;a(Xr(e,{report:p,isLoading:!p,isRefetching:!0}));let y=async()=>{try{let b=null;if(n==="ids")b=await db(r,e,c.signal);else if(l){let m=ee.getList(l)!==null;if(b=(await ei(r,l)).find(R=>R.reportHubId===e)??null,!b&&m){let R=await ob(r,l);R&&(b=R.find(E=>E.reportHubId===e)??null)}}else b=await rb(r,e);s.current===d&&a(Xr(e,{report:b,error:null}))}catch(b){s.current===d&&a(Xr(e,{error:b instanceof Error?b:new Error("Load failed")}))}finally{s.current===d&&a(Xr(e,{isLoading:!1,isRefetching:!1}))}};if(p===null)return y(),u;let h=setTimeout(y,Gr);return()=>{clearTimeout(h),u()}},[e,t,r,n]),{report:i.report,error:i.error,isLoading:i.isLoading,isRefetching:i.isRefetching}},ti=()=>{let{apiBasePath:e}=q(),t=bc(sa);return Xh(r=>{if(t==="ids")return;let n=Dr(r);n&&!ee.getList(n)&&ei(e,n).catch(o=>Rc.warn("Prefetch error",n,o))},[e,t])};import{VIRTUAL_SCROLL_LABEL_KEYS as cb}from"@aiquants/virtualscroll";import{useRef as ub}from"react";var ia=()=>{let{locale:e,labels:t}=q(),r=oc(t),n=ub(null),o=n.current;return o!==null&&cb.every(a=>o[a]===r[a])?{locale:e,labels:o}:(n.current=r,{locale:e,labels:r})};import{useLayoutEffect as Eb,useState as Db}from"react";import{flushSync as Tb}from"react-dom";var _c=Object.freeze({visibilityProperty:!0}),Ic=new Set(["auto","scroll"]),vc=new Set(["","true","plaintext-only"]),wc=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=Mc(n)?n.host:null}return!1},pb=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(_c))return!0;return!1},Lc=e=>e.localName==="area"?pb(e):e.checkVisibility(_c),mb=e=>{let t=e.getAttribute("contenteditable");if(t===null||!vc.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(vc.has(o))return!1;if(o==="false")return!0}return!0},fb=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&&Lc(n)&&(r=n)}return r===e},yb=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&&Ic.has(a.overflowX)||n&&Ic.has(a.overflowY)},hb=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 mb(e)}},bb=/^[\t\n\f\r ]*[+-]?\d/,Rb=e=>{let t=e.getAttribute("tabindex");return t!==null&&bb.test(t)?e.tabIndex:null},Nc=(e,t)=>{for(let r of ni(e))if(t(r)||Nc(r,t))return!0;return!1},la=(e,t)=>{let r=t.get(e);if(r!==void 0)return r;let n=Sb(e,t);return t.set(e,n),n},Sb=(e,t)=>{if(!Bn(e))return"none";let r=Rb(e),n=r===null&&hb(e),o=r===null&&!n&&yb(e);return!(r!==null||n||o)||e.matches(":disabled")||wc(e)||!Lc(e)?"none":r!==null?r>=0?"sequential":"programmatic":n?e.localName==="input"&&e.type==="radio"?fb(e)?"sequential":"programmatic":"sequential":Nc(e,a=>la(a,t)==="sequential")?"none":"sequential"},ri=(e,t)=>{for(let r of ni(e))t(r),ri(r,t)},ni=e=>{if(Re(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 ri(e,l=>{la(l,a)==="sequential"&&n.push(l)}),{before:r,within:n,after:o};let s=!1,i=(l,d)=>{for(let c of ni(l)){let u=c===t;!u&&la(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}},Oc=e=>{let t=[],r=new Map;return ri(e,n=>{la(n,r)==="sequential"&&t.push(n)}),t},Re=e=>e!==null&&"nodeType"in e&&e.nodeType===e.ELEMENT_NODE,Bn=e=>"focus"in e&&"blur"in e,gb=e=>e.nodeType===e.DOCUMENT_NODE,Mc=e=>e.nodeType===e.DOCUMENT_FRAGMENT_NODE&&"host"in e,Ie=e=>{let t=e.getRootNode();if(Mc(t)){let r=t.activeElement;return r===null?Ie(t.host):r}return gb(t)?t.activeElement:null},Wt=e=>{let t=Ie(e);return t===null||t===t.ownerDocument.body||wc(t)},$e=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 ca=e=>{let[t,r]=Db(null);return Eb(()=>{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?Tb(()=>r(l)):r(l)},s=l=>{for(let d of l)a(d.borderBoxSize[0].blockSize)},i=new($e(n)).ResizeObserver(s);return i.observe(n,{box:"border-box"}),()=>i.disconnect()},[e]),t};var oi=[null],kc=new Map,ua=[void 0],Pc=new Map,Ct=e=>{if(e===null)return 0;let t=kc.get(e);if(t!==void 0)return t;let r=oi.length;if(r>65535)throw new Error(`[daily-report] The rows hold more than 65535 distinct business dates; ${e} has no code`);return oi.push(e),kc.set(e,r),r},lr=e=>{let t=oi[e];if(t===void 0)throw new Error(`[daily-report] No business date has the code ${e}`);return t},Vn=e=>{if(e===void 0)return 0;let t=Pc.get(e);if(t!==void 0)return t;let r=ua.length;if(r>255)throw new Error(`[daily-report] The rows hold more than 255 distinct source types; ${e} has no code`);return ua.push(e),Pc.set(e,r),r},Qr=e=>{if(!(Number.isInteger(e)&&e>=0&&e<ua.length))throw new Error(`[daily-report] No source type has the code ${e}`);return ua[e]},Un=class{constructor(t,r,n,o){this.length=t,this.ids=r,this.businessDateCodes=n,this.sourceTypeCodes=o}itemAt(t){return{reportHubId:this.ids[t],businessDate:lr(this.businessDateCodes[t]),sourceType:Qr(this.sourceTypeCodes[t])}}items(){let t=[];for(let r=0;r<this.length;r++)t.push(this.itemAt(r));return t}},st=new Un(0,new Float64Array(0),new Uint16Array(0),new Uint8Array(0)),xb=Float64Array.BYTES_PER_ELEMENT+Uint16Array.BYTES_PER_ELEMENT+Uint8Array.BYTES_PER_ELEMENT,Zr=e=>{let t=new ArrayBuffer(e*xb),r=e*Float64Array.BYTES_PER_ELEMENT;return{ids:new Float64Array(t,0,e),businessDateCodes:new Uint16Array(t,r,e),sourceTypeCodes:new Uint8Array(t,r+e*Uint16Array.BYTES_PER_ELEMENT,e)}},dr=(e,t,r)=>{if(r===0)return st;let n=t+r;return new Un(r,e.ids.subarray(t,n),e.businessDateCodes.subarray(t,n),e.sourceTypeCodes.subarray(t,n))},Ab=16,ht=class{constructor(t=Ab){this.count=0;this.columns=null;this.initialCapacity=t}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,Ct(t.businessDate),Vn(t.sourceType))}pushFrom(t,r){this.push(t.ids[r],t.businessDateCodes[r],t.sourceTypeCodes[r])}build(){let t=this.columns;return t===null?st:new Un(this.count,t.ids,t.businessDateCodes,t.sourceTypeCodes)}grow(){let t=this.columns,r=Zr(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 ht(Math.max(1,e.length));for(let r of e)t.pushItem(r);return t.build()};var bt=10,Wn=1<<bt,en=Wn-1,Cb=Wn,Jr=new Map,Fc=(e,t,r)=>{let n=Jr.get(e);return n!==void 0&&n.businessDate===t&&n.sourceType===r?n:void 0},pa=(e,t,r)=>{let n=lr(t),o=Qr(r),a=Fc(e,n,o);Jr.delete(e);let s=a===void 0?{reportHubId:e,businessDate:n,sourceType:o}:a;if(Jr.set(e,s),Jr.size>Cb)for(let i of Jr.keys()){Jr.delete(i);break}return s},Hc=(e,t,r)=>{let n=lr(t),o=Qr(r),a=Fc(e,n,o);return a===void 0?{reportHubId:e,businessDate:n,sourceType:o}:a};var Kt=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 Bc(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=Hc(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}}}}},ma=new Kt([],0),Bc=(e,t)=>{let r=e.chunks[t>>>bt],n=t&en;return pa(r.ids[n],r.businessDateCodes[n],r.sourceTypeCodes[n])},Kn=(e,t)=>e.chunks[t>>>bt].ids[t&en],tn=(e,t)=>e.chunks[t>>>bt].businessDateCodes[t&en],li=(e,t)=>e.chunks[t>>>bt].sourceTypeCodes[t&en],si={businessDate:null,reportHubId:0},ii={businessDate:null,reportHubId:0},rn=(e,t,r,n)=>(si.reportHubId=e,si.businessDate=lr(t),ii.reportHubId=r,ii.businessDate=lr(n),$d(si,ii)),Uc=e=>{if(e.length===0)return ma;let t=[];return Vc(t,e,e.length),new Kt(t,e.length)},Vc=(e,t,r)=>{for(let n=0;n<r;n+=Wn)e.push(dr(t,n,Math.min(Wn,r-n)))},Cr={removals:[],replacements:[],additions:st,insertions:[]},Ib=e=>{let t=Zr(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)),dr(t,0,e.length)},vb=(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>>>bt,d=n.get(l);d===void 0&&(d=Ib(e.chunks[l]),n.set(l,d),r[l]=d);let c=o&en;d.ids[c]=a,d.businessDateCodes[c]=s,d.sourceTypeCodes[c]=i}return new Kt(r,e.length)},nn=(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,_)=>T-_),a=[...t.replacements].sort((T,_)=>T.index-_.index);if(o.length===0&&r.length===0)return vb(e,a);let s=e.length,i=s-o.length+r.length;if(i===0)return ma;let d=Math.min(o.length===0?s:o[0],a.length===0?s:a[0].index,r.length===0?s:n[0])>>>bt,c=e.chunks.slice(0,d),u=d<<bt,p=i-u,f=p===0?st:Zr(p),y=0,h=()=>{if(y===p)throw new Error(`[daily-report] Edits of a list of ${s} rows write more than the ${i} rows they leave`);return p-y},b=(T,_,I)=>{h(),f.ids[y]=T,f.businessDateCodes[y]=_,f.sourceTypeCodes[y]=I,y+=1},m=(T,_)=>{for(let I=T;I<_;){let O=e.chunks[I>>>bt],M=I&en,F=Math.min(_-I,Wn-M,h());f.ids.set(O.ids.subarray(M,M+F),y),f.businessDateCodes.set(O.businessDateCodes.subarray(M,M+F),y),f.sourceTypeCodes.set(O.sourceTypeCodes.subarray(M,M+F),y),y+=F,I+=F}},g=d<<bt,R=0,E=0,D=0;for(;;){let T=Math.min(R<o.length?o[R]:s,E<a.length?a[E].index:s,D<r.length?n[D]:s);for(m(g,T),g=T;D<r.length&&n[D]===T;D++)b(r.ids[D],r.businessDateCodes[D],r.sourceTypeCodes[D]);if(T===s)break;if(R<o.length&&o[R]===T)R+=1,g=T+1;else if(E<a.length&&a[E].index===T){let _=a[E];b(_.id,_.businessDateCode,_.sourceTypeCode),E+=1,g=T+1}}return Vc(c,f,y),new Kt(c,u+y)},$n=(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<<bt)+s}return-1},Wc=(e,t)=>{let r=$n(e,t);return r===-1?void 0:Bc(e,r)},Kc=(e,t,r)=>{let n=[];if(!(e instanceof Kt)){for(let o of e)r(o)&&n.push(o);return n}for(let o of e.chunks){let a=t.get(o);if(a===void 0){let s=[];for(let i=0;i<o.length;i++){let l=Hc(o.ids[i],o.businessDateCodes[i],o.sourceTypeCodes[i]);r(l)&&s.push(l)}a=s,t.set(o,a)}for(let s=0;s<a.length;s++)n.push(a[s])}return n};var ye=(e,t)=>Number.isInteger(t)&&t>=0&&t<e.length?e.at(t):void 0,_b=16,$c=(e,t)=>e!==null&&e.reportHubId===t?e.index:null,Te=(e,t,r)=>{let n=r===null?void 0:ye(e,r);if(r!==null&&n!==void 0){if(n.reportHubId===t)return r;for(let o=1;o<=_b;o++){if(ye(e,r+o)?.reportHubId===t)return r+o;if(ye(e,r-o)?.reportHubId===t)return r-o}}return it(e,t)},it=(e,t)=>{if(e instanceof Kt)return $n(e,t);let r=0;for(let n of e){if(n.reportHubId===t)return r;r+=1}return-1},di=e=>{let t=ye(e,0);return t===void 0?null:t.reportHubId},zc=(e,t)=>{let r=[];for(let n of e){if(r.length>=t)break;r.push(n.reportHubId)}return r},It=(e,t)=>{let r=ye(e,t);if(r===void 0)throw new Error(`[daily-report] No report at index ${t} of a list of ${e.length}`);return r};var ya="data-daily-report-row",fa=`[role="listitem"][${ya}]`,wb='button, a[href], input, textarea, select, label, [role="button"], [contenteditable]:not([contenteditable="false"])',Lb=/^[1-9]\d*$/,jc=e=>{if(e===null||!Lb.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null},Nb=`${fa}[tabindex="0"], ${fa} [tabindex="0"]`,ha=e=>e.querySelector(Nb),cr=(e,t)=>{if(t===null||!Re(e))return null;let r=e.closest(fa);return r===null||r===t||!t.contains(r)?null:r},Ir=e=>jc(e.getAttribute(ya)),on=e=>jc(e.getAttribute("aria-posinset")),Yc=e=>{let t=e.closest(fa),r=t===null?null:on(t);return r===null?null:r-1},zn=(e,t)=>{if(e===null)return null;let r=Ir(e);if(r===null)return null;let n=on(e),o=Te(t,r,n===null?null:n-1);return o===-1?null:{reportHubId:r,index:o}},Gc=(e,t)=>{if(!Re(e))return!1;let r=e.closest(wb);return r!==null&&r!==t&&t.contains(r)};import{createContext as qc}from"react";var $t=qc(0),jn=-1,Xc=(e,t)=>t.phase==="complete"?e:t.totalCount===null?jn:Math.max(e,t.totalCount),zt=qc(-1);import{clsx as Ob}from"clsx";import{twMerge as Mb}from"tailwind-merge";function x(...e){return Mb(Ob(e))}var ve=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=x(e,n);return t.set(n,a),a}};import{useCallback as Qc,useMemo as kb,useSyncExternalStore as Pb}from"react";var Zc="(prefers-reduced-motion: reduce)",Jc=e=>$e(e).matchMedia(Zc).matches?"instant":"smooth",Fb=Object.freeze({...js,startVelocityThreshold:Number.POSITIVE_INFINITY}),an=e=>e?Fb:js,Hb=()=>!1,Bb=()=>{},sn=e=>{let t=kb(()=>e===null?null:$e(e).matchMedia(Zc),[e]),r=Qc(o=>t===null?Bb:(t.addEventListener("change",o),()=>t.removeEventListener("change",o)),[t]),n=Qc(()=>t===null?!1:t.matches,[t]);return Pb(r,n,Hb)};import{useSyncExternalStore as Ub}from"react";import{jsx as ci}from"react/jsx-runtime";var ba=()=>{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)})}},eu=16,Vb=x(sd,"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"),Wb=(e,t)=>e==="vertical"?{top:0,left:-eu,transform:`translate(-100%, calc(${t}px - 50%))`}:{top:-eu,left:0,transform:`translate(calc(${t}px - 50%), -100%)`},Ra=({orientation:e,thumbCenter:t,isDragging:r,isTapScrollActive:n,store:o})=>{let{label:a,isWheelScrollActive:s}=Ub(o.subscribe,o.getState,o.getState);return a.trim()&&(r||n||s)?ci("div",{className:"pointer-events-none absolute flex items-center",style:Wb(e,t),children:ci("div",{className:Vb,children:ci("span",{className:"whitespace-nowrap font-semibold text-slate-800 dark:text-slate-100",children:a.trim()})})}):null};import{createContext as Kb,useContext as $b,useLayoutEffect as zb,useRef as jb}from"react";var ui=Kb(null),Sa=({items:e,scroller:t,readTopReportId:r})=>{let n=$b(ui),o=n===null?null:n.request,a=jb(o===null?0:o.seq);zb(()=>{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:it(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 Jm,useCallback as En,useContext as GD,useEffect as Zm,useId as qD,useLayoutEffect as XD,useMemo as Pr,useRef as bl}from"react";var ga="legacy-",Yb=e=>`${ga}${e}`,tu=(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:Yb(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]},ru=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 Gb=Object.freeze(["subject","content","author","employeeName","updatedBy","category","creationCategory","customerName"]),le=Object.freeze({field:e=>e,interviewer:(e,t)=>`interviewer:${e}:${t}`,attachment:e=>`attachment:${e}`,comment:(e,t)=>`comment:${e}:${t}`}),qb=e=>e.startsWith(ga)?qr(e.slice(ga.length))!==null:fc(e)!==null,ln=e=>{if(Gb.includes(e))return!0;let t=e.split(":");switch(t[0]){case"interviewer":return t.length===3&&qr(t[1])!==null&&(t[2]==="name"||t[2]==="affiliation");case"attachment":return t.length===2&&qr(t[1])!==null;case"comment":return t.length===3&&qb(t[1])&&(t[2]==="author"||t[2]==="content");default:return!1}},Xb=16777619,Qb=2166136261,Zb=(e,t,r,n)=>{let o=e;for(let a=r;a<n;a++)o^=t.charCodeAt(a),o=Math.imul(o,Xb);return o>>>0},pi=e=>Zb(Qb,e,0,e.length),Jb=String.fromCodePoint(3),eR=String.fromCodePoint(2),tR=String.fromCodePoint(1),nu=e=>pi(e.map(t=>t.map(r=>r.map(n=>`${n.tier}${n.text}`).join(Jb)).join(eR)).join(tR));import{createContext as Ju,memo as lS,useCallback as Mi,useEffect as Zu,useLayoutEffect as Fi,useMemo as Hi,useRef as ro,useState as wt}from"react";import{z as he}from"zod";var ou=Object.freeze(["create","update","publish","delete","toggleStar","toggleRead","addComment","deleteComment","clearCache"]);var Ze=Object.freeze({intent:"intent",clientTempId:"clientTempId",businessDate:"businessDate",operationTimestamp:"operationTimestamp",reportHubId:"reportHubId",title:"title",content:"content",isStarred:"isStarred",isRead:"isRead",commentId:"commentId"}),fi=e=>{let t=new FormData;if(t.append(Ze.intent,e.intent),e.intent==="clearCache"||(t.append(Ze.clientTempId,e.clientTempId),e.businessDate!==null&&t.append(Ze.businessDate,e.businessDate),e.operationTimestamp!==null&&t.append(Ze.operationTimestamp,String(e.operationTimestamp)),e.intent==="create"))return t;switch(t.append(Ze.reportHubId,String(e.reportHubId)),e.intent){case"update":return e.changes.title!==void 0&&t.append(Ze.title,e.changes.title),e.changes.content!==void 0&&t.append(Ze.content,e.changes.content),t;case"publish":case"delete":return t;case"toggleStar":return t.append(Ze.isStarred,String(e.value)),t;case"toggleRead":return t.append(Ze.isRead,String(e.value)),t;case"addComment":return t.append(Ze.content,e.content),t;case"deleteComment":return t.append(Ze.commentId,String(e.commentId)),t}},rR=()=>{let e=De,t=he.string().regex(Ko),r=he.literal("OK"),n=he.object({isStarred:he.boolean(),isRead:he.boolean()}),o=he.number().int().nonnegative().nullable();return{create:he.object({status:r,intent:he.literal("create"),reportHubId:e,clientTempId:t,report:At}),update:he.object({status:r,intent:he.literal("update"),reportHubId:e,clientTempId:t}),publish:he.object({status:r,intent:he.literal("publish"),reportHubId:e,clientTempId:t,report:At.nullable()}),delete:he.object({status:r,intent:he.literal("delete"),reportHubId:e,clientTempId:t}),toggleStar:he.object({status:r,intent:he.literal("toggleStar"),reportHubId:e,clientTempId:t,updatedStatus:n,operationTimestamp:o}),toggleRead:he.object({status:r,intent:he.literal("toggleRead"),reportHubId:e,clientTempId:t,updatedStatus:n,operationTimestamp:o}),addComment:he.object({status:r,intent:he.literal("addComment"),reportHubId:e,clientTempId:t,newComment:zo}),deleteComment:he.object({status:r,intent:he.literal("deleteComment"),reportHubId:e,clientTempId:t,deletedCommentId:De}),clearCache:he.object({status:r,intent:he.literal("clearCache")})}},mi=null,nR=()=>(mi===null&&(mi=rR()),mi),au=(e,t)=>{let r=nR()[e].safeParse(t);return r.success?{result:r.data}:{mismatch:jo(r.error)}};import{systemSseRuntime as Na}from"@aiquants/sse";import{createBrowserEventSource as NR}from"@aiquants/sse/client";import{useReopeningEventSource as OR}from"@aiquants/sse/react";import{useEffect as Di,useRef as Oa,useState as MR}from"react";import{startTransition as gR,useLayoutEffect as ER,useState as DR,useSyncExternalStore as Qn}from"react";var oR=/^[0-9a-f]{1,16}$/,su=e=>mt(e.reportHubId)&&(e.businessDate===null||jr(e.businessDate)),iu=e=>typeof e=="string"&&oR.test(e),lu=e=>{let t=new URLSearchParams;return e.cursor!==null&&(t.set(Ce.cursorReportHubId,String(e.cursor.reportHubId)),e.cursor.businessDate!==null&&t.set(Ce.cursorBusinessDate,e.cursor.businessDate)),e.snapshot!==null&&t.set(Ce.cursorSnapshot,e.snapshot),e.forceRefresh&&t.set(Ce.forceRefresh,"true"),t};var Ea=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=Ea(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=Ea(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=Ea(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=Ea(this.idAt(a))>>>n;for(;this.slots[s]!==-1;)s=s+1&r;this.slots[s]=a}}};var Da=1,Ta=2,vr=3,du=16,aR=8192,sR=Float64Array.BYTES_PER_ELEMENT+2*Uint16Array.BYTES_PER_ELEMENT+3*Uint8Array.BYTES_PER_ELEMENT,yi=e=>{let t=new ArrayBuffer(e*sR),r=e*Float64Array.BYTES_PER_ELEMENT,n=r+2*e*Uint16Array.BYTES_PER_ELEMENT;return{ids:new Float64Array(t,0,e),firstDates:new Uint16Array(t,r,e),lastDates:new Uint16Array(t,r+e*Uint16Array.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)}},cu=Object.freeze({previous:st,next:st}),hi=()=>{let e=0,t=yi(du),r=d=>t.ids[d],n=new jt(r),o=()=>{let d=yi(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,Da);t.lastDates[f]=c,t.lastSources[f]=u;return}if(t.states[p]!==vr)throw new Error(`[daily-report] The ids stream list took report ${d}, which it already holds`);t.states[p]=Ta,t.lastDates[p]=c,t.lastSources[p]=u},i=(d,c,u,p,f)=>{let y=n.find(d);if(y===-1)y=a(d,Ta),t.firstDates[y]=c,t.firstSources[y]=u;else if(t.states[y]===vr)throw new Error(`[daily-report] The ids stream list changed report ${d}, which it no longer holds`);t.lastDates[y]=p,t.lastSources[y]=f},l=(d,c,u)=>{let p=n.find(d);if(p===-1){let f=a(d,vr);t.firstDates[f]=c,t.firstSources[f]=u;return}if(t.states[p]===Da){n.delete(d),t.states[p]=0;return}if(t.states[p]===vr)throw new Error(`[daily-report] The ids stream list dropped report ${d}, which it no longer holds`);t.states[p]=vr};return{add:s,change:i,remove:l,fold:d=>{let{removed:c,appended:u}=d,{previous:p,next:f}=d.replaced;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],p.businessDateCodes[y],p.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,f=0;for(let E=0;E<e;E++){let D=t.states[E];D===Da?u+=1:D===Ta?p+=1:D===vr&&(f+=1)}let y=u+2*p+f;if(y===0)return{base:d,revision:c,appended:st,replaced:cu,removed:st};let h=Zr(y),b=0,m=u,g=m+p,R=g+p;for(let E=0;E<e;E++){let D=t.states[E];D===Da?(h.ids[b]=t.ids[E],h.businessDateCodes[b]=t.lastDates[E],h.sourceTypeCodes[b]=t.lastSources[E],b+=1):D===Ta?(h.ids[m]=t.ids[E],h.businessDateCodes[m]=t.firstDates[E],h.sourceTypeCodes[m]=t.firstSources[E],m+=1,h.ids[g]=t.ids[E],h.businessDateCodes[g]=t.lastDates[E],h.sourceTypeCodes[g]=t.lastSources[E],g+=1):D===vr&&(h.ids[R]=t.ids[E],h.businessDateCodes[R]=t.firstDates[E],h.sourceTypeCodes[R]=t.firstSources[E],R+=1)}return{base:d,revision:c,appended:dr(h,0,u),replaced:p===0?cu:{previous:dr(h,u,p),next:dr(h,u+p,p)},removed:dr(h,u+2*p,f)}},reset:()=>{if(e=0,t.ids.length<=aR){n.clear();return}t=yi(du),n=new jt(r)}}},uu=(e,t,r)=>{let n=hi();for(let o of e)n.fold(o);return n.build(t,r)},pu=(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 mu=()=>{let e=new TextDecoder,t=[],r=n=>{let o=[],a=0;for(let s=n.indexOf(`
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
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 Yn=1,iR=2,lR=1024,dn=1024,xa=class{constructor(){this.used=0;this.holes=0;this.ids=new Float64Array(dn);this.dates=new Uint16Array(dn);this.sources=new Uint8Array(dn);this.flags=new Uint8Array(dn);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:lr(this.dates[t]),sourceType:Qr(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]=Yn,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>=lR&&this.holes>this.positions.size&&this.compact()}markSeen(t){let r=this.positions.find(t);r!==-1&&(this.flags[r]|=iR)}clearSeen(){for(let t=0;t<this.used;t++)this.flags[t]&=Yn}unseenIds(){let t=[];for(let r=0;r<this.used;r++)this.flags[r]===Yn&&t.push(this.ids[r]);return t}rows(){let t=new ht(Math.max(1,this.positions.size));for(let r=0;r<this.used;r++)(this.flags[r]&Yn)!==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 Uint16Array(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]&Yn)!==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 dR=e=>({debug:e,info:e,warn:e,error:e}),cR=50,uR=32,fu=0,pR=()=>(fu+=1,fu),mR=1e3,fR=3e4,yR=6,hR=3e4,yu=Symbol("read-stall"),bR=Object.freeze({reading:()=>{},stalled:()=>!1,stop:()=>{}}),RR="/daily_report/api",SR=e=>typeof e=="object"&&e!==null&&e.name==="AbortError",Gn=class{constructor(t={}){this.rows=new xa;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??RR,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=ir(t.warn===void 0?void 0:dR(t.warn),1,"IdsStream").warn,this.readStallTimeoutMs=t.readStallTimeoutMs??hR,this.publishCoalesceMs=t.publishCoalesceMs??cR,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,Ct(t.businessDate),Vn(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 ht(Math.max(1,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()}readItems(){return this.readRows().items()}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>=yR){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(mR*2**(this.consecutiveFailures-1),fR))}}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===yu)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=mu(),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 y of u){if(y.trim()==="")continue;let h;try{h=JSON.parse(y)}catch{f=!0;break}let b=Fs(h);if(b==="unknown"){this.warn("skipped line of unknown kind");continue}if(b==="error"){l=!0;continue}if(!Vd(h)){f=!0;break}let m=h;p=this.absorbChunkLine(m)||p,m.total!==void 0&&Number.isSafeInteger(m.total)&&m.total>=0&&m.total!==this.state.totalCount&&this.publish({totalCount:m.total}),m.nextCursor!==null&&su(m.nextCursor)&&(this.lastCursor=m.nextCursor),m.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 SR(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(yu),this.readStallTimeoutMs*3);t.then(a=>{this.clearTimeoutFn(o),r(a)},a=>{this.clearTimeoutFn(o),n(a)})})}watchReadSilence(t){if(this.readStallTimeoutMs<=0)return bR;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===!0&&(this.lastCursor=null,this.lastSnapshot=null,this.rows.clearSeen(),this.externalRemovalTombstones.clear()),iu(t.snapshot)&&(this.lastSnapshot=t.snapshot),t.streamAnchor!==void 0&&this.absorbStreamAnchor(t.streamAnchor);let r=t.provisional===!0,n=!1,o=null,a=Ct(null),s,i=Vn(void 0);return Wd(t,(d,c,u)=>{this.externalRemovalTombstones.has(d)||(c!==o&&(o=c,a=Ct(c)),u!==s&&(s=u,i=Vn(u)),this.putItem(d,a,i)&&(n=!0),r||this.rows.markSeen(d))}),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!==null&&!(typeof t=="string"&&$o(t))){this.warn(`skipped a malformed streamAnchor: ${String(t)}`);return}this.streamAnchorRevision+=1,this.publish({streamAnchor:{lastEventId:t,revision:this.streamAnchorRevision}})}takePendingItems(){if(this.pendingItemsChange.isEmpty())return{};this.lastItemsPublishAt=this.now();let t=pR(),r=this.pendingItemsChange.build(this.state.itemsRevision,t);return this.pendingItemsChange.reset(),{loadedCount:this.rows.size,itemsRevision:t,itemsChanges:[...this.state.itemsChanges.slice(1-uR),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=lu({cursor:this.lastCursor,snapshot:this.lastCursor===null?null:this.lastSnapshot,forceRefresh:t}).toString();return`${this.apiBasePath}/${Wo}${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 TR=6e4,ae=null,hu=!1,qn=new Set,Aa={loadedCount:0,itemsRevision:0,itemsChanges:[],totalCount:null,phase:"idle",isRevalidating:!1,hasCompletedOnce:!1,completedAt:null,error:null,streamAnchor:null},bi=()=>{for(let e of qn)e()},Ri=()=>{ae&&(ae.unsubscribe(),ae.client.dispose(),ae=null,bi())},Xn=e=>{if(typeof window>"u")return;let t=e.apiBasePath??Pn.apiBasePath;if(ae&&(ae.userKey!==e.userKey||ae.apiBasePath!==t)&&(ae.userKey!==e.userKey&&Hn(),Ri()),!ae){let r=new Gn({apiBasePath:t});ae={client:r,userKey:e.userKey,apiBasePath:t,unsubscribe:r.subscribe(bi)},xR(),r.start(),bi();return}Ia(ae)},Ia=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>TR&&e.client.refresh()},xR=()=>{if(hu||typeof document>"u"||typeof window>"u")return;hu=!0;let e=()=>{ae&&Ia(ae)};document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&e()}),window.addEventListener("focus",e)},Si=e=>{if(!(typeof window>"u")){if(!ae){Xn(e);return}if(ae.userKey!==e.userKey){Hn(),Ri(),Xn(e);return}Ia(ae)}},gi=()=>{typeof window>"u"||!ae||Ia(ae)},Zn=e=>{ae?.client.applyExternalUpsert(e)},va=e=>{ae?.client.applyExternalRemoval(e)},Ru=e=>ae===null?!1:ae.client.has(e),AR=()=>ae===null?st:ae.client.readRows(),Ei=()=>ae===null?0:ae.client.getState().itemsRevision,_a=()=>{ae?.client.retry()},wa=()=>{ae?.client.resync()},Jn=(e={})=>{ae?.client.refresh(e)},Su=()=>ae?.userKey,eo=e=>(qn.add(e),()=>qn.delete(e)),Ca=()=>ae?.client.getState()??Aa,CR=()=>Aa,IR=()=>Qn(eo,Ca,CR),La=(e,t)=>{let r=Aa,n=e(Aa);return()=>{let o=Ca();if(o===r)return n;let a=e(o);return r=o,t(n,a)||(n=a),n}},gu=La(({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),vR=gu(),cn=()=>Qn(eo,gu,()=>vR),Eu=La(({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),_R=Eu(),Du=()=>Qn(eo,Eu,()=>_R),Tu=La(({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),wR=Tu(),xu=()=>Qn(eo,Tu,()=>wR),Au=La(({phase:e,totalCount:t})=>({phase:e,totalCount:t}),(e,t)=>e.phase===t.phase&&e.totalCount===t.totalCount),LR=Au(),Cu=()=>Qn(eo,Au,()=>LR),Iu=e=>e.phase==="complete"&&!e.isRevalidating,bu=e=>`${e.itemsRevision}:${Iu(e)}`,vu=()=>{let[,e]=DR(0),t=Ca(),r=bu(t);return ER(()=>{let n=r,o=()=>{let a=bu(Ca());a!==n&&(n=a,gR(()=>e(s=>s+1)))};return qn.add(o),o(),()=>{qn.delete(o)}},[]),{itemsRevision:t.itemsRevision,itemsChanges:t.itemsChanges,readRows:AR,settled:Iu(t)}};import.meta.hot?.dispose(Ri);var _r=ir(void 0,1,"SseConnection"),kR=Object.freeze({kind:"resyncing"}),_u={initialDelayMs:2e3,maxDelayMs:3e4,multiplier:2},PR=1,wu=Hs*3,FR=wu+Hs,Ti=({isSseEnabled:e,onMessage:t})=>{let{ssePath:r,onSessionExpired:n}=q(),{streamAnchor:o,phase:a,isRevalidating:s,error:i}=cn(),[l,d]=MR({generation:0,minAnchorRevision:1,anchored:!1}),c=l.generation>0&&!l.anchored,u=c&&a==="complete"&&!s?i:null,p=Oa(0),f=Oa(null),y=Oa(n);y.current=n;let h=Oa(0);h.current=o===null?0:o.revision,Di(()=>{l.anchored||o===null||o.revision<l.minAnchorRevision||(f.current=o.lastEventId,p.current=0,d({...l,anchored:!0}))},[l,o]),Di(()=>{if(!e||u===null)return;let{initialDelayMs:m,maxDelayMs:g,multiplier:R}=_u,E=Na.random()*Math.min(g,m*R**p.current);_r.warn(`SSE resync: the ids rescan gave up (${u.message}); rescanning in ${Math.round(E)} ms`);let D=Na.setTimer(()=>{p.current+=1,wa()},E);return()=>Na.clearTimer(D)},[e,u]);let{status:b}=OR(e&&l.anchored?`${r}#${l.generation}`:null,{resolveUrl:({lastEventId:m})=>m===null?r:`${r}?${qd}=${encodeURIComponent(m)}`,initialLastEventId:f.current,withCredentials:!1,createEventSource:NR,runtime:Na,backoff:_u,healthyOpenMs:FR,nativeRetryLimit:PR,giveUpAfterFailures:"never",terminalEvents:Gd,heartbeat:{staleAfterMs:wu,onHeartbeat:null},events:{message:m=>{m.lastEventId!==""&&($o(m.lastEventId)?f.current=m.lastEventId:_r.warn("SSE event carried a malformed id; keeping the previous cursor:",m.lastEventId));try{let g=JSON.parse(m.data),R=Xd.safeParse(g);if(!R.success){_r.error("SSE Validation Error:",R.error.flatten(),"raw message:",g);return}if(R.data.type==="connected"){_r.info("SSE Subscribe Ready");return}t(R.data)}catch(g){_r.error("SSE Parse Error",g)}}}});return Di(()=>{if(b.kind==="faulted"){_r.error("SSE connection faulted:",b.error);return}if(b.kind==="terminated")switch(b.terminalEvent){case"auth-required":y.current();return;case"forbidden":_r.warn("SSE stopped: the viewer is not registered (forbidden)");return;case"resync-required":{let m=h.current+1;d(g=>({generation:g.generation+1,minAnchorRevision:m,anchored:!1})),wa();return}}},[b]),e&&c?kR:b};import{createContext as HR,useCallback as BR,useSyncExternalStore as Lu}from"react";var Nu=()=>{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)}}},xi=HR(null),ur=()=>yt(xi,"useDailyReportDraftStore","DailyReportActionProvider"),Ou=(e,t)=>BR(r=>e.subscribe(t,r),[e,t]),Ma=e=>{let t=ur(),r=()=>t.modeOf(e);return Lu(Ou(t,e),r,r)},Mu=e=>{let t=ur(),r=()=>t.inputOf(e),n=Lu(Ou(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 jR}from"@aiquants/swipe-overlay";import{createContext as YR,Fragment as GR,useCallback as Pa,useId as Ci,useLayoutEffect as Ku,useMemo as qR,useRef as Lr,useState as Uu}from"react";import{createPortal as Vu}from"react-dom";var UR=Object.freeze({visibilityProperty:!0,opacityProperty:!0}),ku="data-daily-report-view-tabs",Pu={[ku]:""},Fu="data-daily-report-status-panel",Hu={[Fu]:""},VR=e=>{for(let t of e.getClientRects())if(t.width>0&&t.height>0)return!0;return!1},WR=e=>e.isConnected&&Bn(e)&&VR(e)&&e.checkVisibility(UR),vt=e=>{for(let t of e)if(!(t===null||!WR(t))&&(t.focus({preventScroll:!0}),Ie(t)===t))return t;return null},Ai=e=>e.querySelector(`[${ku}] [role="tab"][aria-selected="true"]`),ka=e=>[ha(e),Ai(e),e.querySelector(`[${Fu}]`)];var wr=e=>e.isComposing||e.keyCode===229,un=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 KR={kind:"hold"},$R=new Set(["grid","listbox","menu","menubar","radiogroup","tablist","toolbar","tree","treegrid"]),zR=(e,t)=>{let r=e.getAttribute("role");return r!==null&&$R.has(r)&&e!==t&&e.contains(t)},Yt=e=>e.key==="Escape"&&!e.defaultPrevented&&!wr(e),Bu=(e,t)=>{if(e.key!=="Tab"||e.altKey||e.ctrlKey||e.metaKey||e.defaultPrevented||wr(e))return null;let r=e.target;if(!(Re(r)&&t.contains(r)))return null;let n=Oc(t);if(n.length===0)return KR;let{before:o,within:a,after:s}=da(t,r);return e.shiftKey?o.some(i=>!zR(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 _t,jsxs as zu}from"react/jsx-runtime";var XR=x("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",nr),QR="flex shrink-0 justify-center p-[8px]",ZR=x("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",Jl),JR="data-daily-report-notice-alert",eS={[JR]:""},$u=YR(null),Fa=()=>yt($u,"useDailyReportErrorSurface","DailyReportErrorProvider"),Wu=({notice:e})=>_t("div",{role:"alert",...eS,className:"sr-only",children:e===null?null:_t("span",{children:e.info.message},e.occurrence)}),tS=({notice:e,closeLabel:t,repeatedLabel:r,onDismiss:n})=>{let o=Lr(null),a=Lr(null),s=Lr(null),i=jR(),l=Ci(),d=Ci(),c=Ci(),u=e.repeat>1?`${d} ${c}`:d,p=Pa(()=>{let h=o.current;if(h?.contains(h.ownerDocument.activeElement)){let[b,...m]=ka(h.ownerDocument);vt([a.current,b,h.closest("dialog"),...m])}n()},[n]),f=h=>{if(s.current!==null)return;let b=h.relatedTarget;a.current=Re(b)&&!h.currentTarget.contains(b)?b:null,s.current=i({id:l,onEscape:m=>Yt(m)?(p(),!0):!1})},y=h=>{Re(h.relatedTarget)&&h.currentTarget.contains(h.relatedTarget)||(s.current?.(),s.current=null,a.current=null)};return Ku(()=>()=>{s.current?.(),s.current=null},[]),zu("div",{ref:o,role:"group","aria-labelledby":u,"data-testid":"daily-report-error-banner",className:XR,onFocus:f,onBlur:y,children:[_t("span",{id:d,className:"min-w-0 font-medium",children:_t(GR,{children:e.info.message},e.occurrence)}),e.repeat>1&&_t("span",{id:c,className:"shrink-0 font-normal tabular-nums",children:r(e.repeat)}),_t("button",{type:"button","aria-label":t,"aria-describedby":u,onClick:p,className:ZR,children:"\u2715"})]})},Ii=({children:e})=>{let{onError:t,labels:r}=q(),[n,o]=Uu(null),[a,s]=Uu([]),i=Lr([]),l=Lr(0),d=Lr(0),c=Lr(t);Ku(()=>{c.current=t});let u=Pa(g=>{let R=c.current;if(R){R(g);return}d.current+=1;let E=d.current,D=i.current,T=D.length===0?null:D[D.length-1].registration;o(_=>({info:g,occurrence:E,repeat:_!==null&&_.info.message===g.message?_.repeat+1:1,announcedIn:T}))},[]),p=Pa(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(E=>E!==R),s(i.current)}},[]),f=Pa(()=>o(null),[]),y=qR(()=>({notifyError:u,registerNoticeHost:p}),[u,p]),h=a.at(-1),b=n===null?null:_t(tS,{notice:n,closeLabel:r.close,repeatedLabel:r.noticeRepeated,onDismiss:f}),m=g=>n!==null&&n.announcedIn===g?n:null;return zu($u.Provider,{value:y,children:[e,_t(Wu,{notice:m(null)}),a.map(g=>Vu(_t(Wu,{notice:m(g.registration)}),g.element,String(g.registration))),b!==null&&h!==void 0&&Vu(b,h.element),b!==null&&h===void 0&&_t("div",{"data-daily-report-notice-slot":"",className:QR,children:b})]})};import{useState as rS}from"react";var nS={items:ma,held:new Map,hidden:new Map,revision:null,settled:!1},vi=(e,t,r)=>{let n=0,o=e.length;for(;n<o;){let a=n+o>>1;rn(Kn(e,a),tn(e,a),t,r)<0?n=a+1:o=a}return n<e.length&&Kn(e,n)===t?n:-1},Ha=(e,t)=>vi(e,t.reportHubId,Ct(t.businessDate)),_i=(e,t,r,n)=>{let o=n,a=e.length;for(;o<a;){let s=o+a>>1;rn(Kn(e,s),tn(e,s),t,r)<=0?o=s+1:a=s}return o},oS=(e,t)=>{if(t.length===0)return[];let r=e.length-1;if(e.length===0||rn(Kn(e,r),tn(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=_i(e,t.ids[a],t.businessDateCodes[a],o),n.push(o);return n},aS=e=>{for(let t=1;t<e.length;t++)if(rn(e.ids[t-1],e.businessDateCodes[t-1],e.ids[t],e.businessDateCodes[t])>=0)return!1;return!0},Yu=e=>{if(aS(e))return e;let t=Array.from({length:e.length},(n,o)=>o);t.sort((n,o)=>rn(e.ids[n],e.businessDateCodes[n],e.ids[o],e.businessDateCodes[o]));let r=new ht(Math.max(1,e.length));for(let n of t)r.pushFrom(e,n);return r.build()},Gu=(e,t,r,n)=>{let o=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 ht(Math.max(1,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?pa(u,d.businessDateCodes[c],d.sourceTypeCodes[c]):p.item,since:f}),s.pushFrom(d,c))}return{items:Uc(Yu(s.build())),held:l,hidden:i,revision:t.itemsRevision,settled:r}},sS=(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?[]:pu(t.itemsChanges,o);if(o===null||a===null)return Gu(e,t,r,n);let s=e.items,i=[],l=[],d=a.length===0?null:a.length===1?a[0]:uu(a,o,t.itemsRevision),c=new ht(d===null?1:Math.max(1,d.appended.length+d.replaced.next.length)),u=null,p=()=>(u===null&&(u=new Map(e.held)),u),f=null,y=()=>(f===null&&(f=new Map(e.hidden)),f);if(d!==null){let{appended:g,replaced:R,removed:E}=d;for(let T=0;T<E.length;T++){let _=E.ids[T];if(e.hidden.has(_)&&y().delete(_),e.held.has(_))continue;let I=vi(s,_,E.businessDateCodes[T]);I!==-1&&(r||n.has(_)?i.push(I):p().set(_,{item:pa(_,tn(s,I),li(s,I)),since:Number.NEGATIVE_INFINITY}))}let D=(T,_,I)=>{let O=T.ids[_],M=T.businessDateCodes[_],F=T.sourceTypeCodes[_],Y=e.held.get(O);Y!==void 0&&p().delete(O);let V=Y===void 0?I:Ct(Y.item.businessDate),w=V===-1?-1:vi(s,O,V);if(n.has(O)){w!==-1&&i.push(w),y().set(O,T.itemAt(_));return}if((f===null?e.hidden:f).has(O)&&y().delete(O),w!==-1&&tn(s,w)===M){li(s,w)!==F&&l.push({index:w,id:O,businessDateCode:M,sourceTypeCode:F});return}w!==-1&&i.push(w),c.push(O,M,F)};for(let T=0;T<R.next.length;T++)D(R.next,T,R.previous.businessDateCodes[T]);for(let T=0;T<g.length;T++)D(g,T,-1)}let h=t.itemsRevision;if(r)for(let[g,R]of u===null?e.held:u){if(g<=0||h<=R.since)continue;let E=Ha(s,R.item);E!==-1&&i.push(E),p().delete(g)}let b=Yu(c.build());return{items:nn(s,{removals:i,replacements:l,additions:b,insertions:oS(s,b)}),held:u===null?e.held:u,hidden:f===null?e.hidden:f,revision:h,settled:r}},ju=new WeakMap,iS=(e,t,r,n)=>{let o=ju.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=sS(e,t,r,n);return ju.set(e,{revision:t.itemsRevision,changes:t.itemsChanges,settled:r,tombstones:n,rows:a}),a},qu=(e,t,r)=>{let[n,o]=rS(()=>Gu(nS,e,t,r));return(n.revision!==e.itemsRevision||n.settled!==t)&&o(a=>iS(a,e,t,r)),[n,o]},Ba=(e,t,r)=>{if(e.hidden.has(t.reportHubId))return wi(e,t.reportHubId);if(e.held.has(t.reportHubId)||Ha(e.items,t)!==-1||$n(e.items,t.reportHubId)!==-1)return e;let n=nn(e.items,{...Cr,additions:ai([t]),insertions:[_i(e.items,t.reportHubId,Ct(t.businessDate),0)]}),o=new Map(e.held);return o.set(t.reportHubId,{item:t,since:r}),{...e,items:n,held:o}},wi=(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:nn(e.items,{...Cr,additions:ai([r]),insertions:[_i(e.items,r.reportHubId,Ct(r.businessDate),0)]}),hidden:n}},to=(e,t)=>{let r=e.held.get(t);if(r===void 0)return e;let n=Ha(e.items,r.item),o=new Map(e.held);return o.delete(t),{...e,items:nn(e.items,n===-1?Cr:{...Cr,removals:[n]}),held:o}},Xu=(e,t)=>{let r=e.held.get(t.reportHubId),n=Ha(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:nn(e.items,n===-1?Cr:{...Cr,removals:[n]}),held:o}},Qu=e=>({...e,revision:null});var Li=(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 Ni=0,Oi=e=>{let t=ft("drawTemporaryId: nowMs",e,1);return Ni=Math.min(-t,Ni-1),Ni};import{jsx as Pi,jsxs as ES}from"react/jsx-runtime";var Gt=ir(void 0,1,"ActionProvider"),dS=3e4,cS=3e4,uS=1e3,Bi=class extends Error{constructor(t,r){super(`[daily-report] ${t} answered HTTP ${r}`),this.name="DailyReportActionHttpError",this.status=r}},pS=e=>{let t=Li(dS,e,()=>{});return{add:r=>t.add(r,!0),has:r=>t.get(r)===!0}},mS=e=>Li(cS,e,(t,r)=>{r.unsubscribe(),Gt.warn(`[SSE Queue] Expired: reportHubId=${t}, dropped=${r.messages.length} messages`)}),$w=Object.freeze(["delete","deleteComment"]),fS=e=>e.intent==="create"?null:e.reportHubId,yS=(e,t)=>{let r=e;if(r.intent==="clearCache"||r.clientTempId!==t.clientTempId)return!1;let n=fS(t);return n===null||r.reportHubId===n},Va=globalThis.__DailyReportActionsContext??Ju(null);globalThis.__DailyReportActionsContext=Va;var Wa=globalThis.__DailyReportActionStateContext??Ju(null);globalThis.__DailyReportActionStateContext=Wa;var Ua="DailyReportActionProvider",Be=()=>yt(Va,"useDailyReportActions",Ua),Ka=()=>yt(Wa,"useDailyReportActionState",Ua),hS=()=>{let e=yt(Va,"useDailyReportActionContext",Ua),t=yt(Wa,"useDailyReportActionContext",Ua);return Hi(()=>({...e,...t}),[e,t])},Nr=(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},ki=(e,t)=>e.has(t)?e:new Set(e).add(t),bS=(e,t)=>{if(!e.has(t))return e;let r=new Set(e);return r.delete(t),r},RS=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()}}}},SS=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)}),gS=Object.freeze({kind:"idle"}),ep=lS(({isSseEnabled:e,onMessage:t,onStatus:r})=>{let n=Ti({isSseEnabled:e,onMessage:t});return Fi(()=>{r(n)},[n,r]),null});ep.displayName="DailyReportSseConnectionHost";var Ui=({children:e,user:t,userId:r})=>{let{apiBasePath:n,labels:o}=q(),{notifyError:a}=Fa(),[s,i]=wt(0),[{ledgers:l,write:d}]=wt(()=>RS(()=>i(S=>S+1))),[c,u]=wt(0),[p,f]=wt(0),[y]=wt(Nu),[h,b]=wt(!1),[m,g]=wt(gS),R=ro(!1),E=ro(new Map),D=ro(new Set),T=ro(new Set),[_]=wt(()=>pS(()=>performance.now())),[I]=wt(()=>mS(()=>performance.now())),O=vu(),[M,F]=qu(O,O.settled,D.current),Y=M.items,V=`${c}:${M.settled?M.revision:"-"}`,w=()=>{u(S=>S+1)},P=()=>{i(S=>S+1)},j=Mi(S=>T.current.has(S),[]),B=Mi(()=>Su()===(r??null),[r]),Z=async()=>{Gt.info("Refetching data without page reload..."),Jn(),P(),ee.listeners.forEach(S=>{S(-1)})},$=async()=>{Gt.info("Clearing client & server/DB cache and refetching data without page reload..."),Hn(),D.current=new Set,T.current.clear(),f(S=>S+1),F(Qu);try{sessionStorage.clear()}catch{}try{let S=await fetch(`${n}/${ke.action}`,{method:"POST",body:fi({intent:"clearCache"})});if(!S.ok){let C=await S.json().catch(()=>null);Gt.warn("Failed to clear server-side cache:",S.status,C)}}catch(S){Gt.warn("Failed to clear server-side cache:",S)}B()&&(Jn({forceRefresh:!0}),P(),ee.listeners.forEach(S=>{S(-1)}))},G=(S,C)=>{let K=I.get(S);if(K!==void 0){K.messages.push(C);return}let N;N={messages:[C],unsubscribe:xc(S,()=>{if(I.get(S)===N&&ot(S,{ignoreExpiry:!0})){I.remove(S),N.unsubscribe(),Gt.info(`[SSE Queue] Replaying ${N.messages.length} messages for reportHubId=${S}`);for(let L of N.messages)tt.current.handleSseMessage(L)}})},I.add(S,N)};Fi(()=>()=>{for(let S of I.drain())S.unsubscribe()},[I]);let ue=Mi((S,C)=>{C!==void 0&&Zn({reportHubId:S,businessDate:C})},[]),pe=()=>{r&&(R.current=!0,b(S=>!S))};Zu(()=>{if(!r)return;let S=setTimeout(()=>{R.current||b(!0)},dc);return()=>clearTimeout(S)},[r]);let We=S=>{B()&&(D.current=ki(D.current,S),T.current.add(S),f(C=>C+1),va(S),F(C=>to(C,S)),y.discard(S))};Zu(()=>{if(!M.settled)return;let S=new Set;for(let C of D.current)Ru(C)&&S.add(C);S.size!==D.current.size&&(D.current=S)},[M.settled,M.revision]);let je=S=>{if(B()&&!_.has(S.clientTempId))switch(S.type!=="status-update"&&w(),S.type){case"comment-add":{let{comment:C,reportHubId:K}=S,N=ot(K,{ignoreExpiry:!0});if(N){if(N.postedComments.some(k=>k.id===C.id))return;let X=typeof r=="string"&&C.userId===r,L={...C,userName:C.userName||(X?Nr(t,o.unknownUser):o.unknownUser),createdAt:C.createdAt||new Date().toISOString(),isMine:X},A={...N,postedComments:[...N.postedComments,L].sort((k,W)=>new Date(k.createdAt||0).getTime()-new Date(W.createdAt||0).getTime())};xr(K,A),Zs(K),P()}else G(K,S);break}case"comment-delete":{let{commentId:C,reportHubId:K}=S,N=ot(K,{ignoreExpiry:!0});if(N){let X={...N,postedComments:N.postedComments.filter(L=>L.id!==C)};xr(K,X),Zs(K),P()}else G(K,S);break}case"status-update":{let{statusType:C,value:K,reportHubId:N}=S,X=ot(N,{ignoreExpiry:!0});if(C==="star")if(l.pendingStarUpdates.current.get(N)===K&&d(({pendingStarUpdates:L})=>L.delete(N)),X){let L={...X,isStarred:K};xr(N,L),P()}else G(N,S);else if(C==="read")if(l.pendingReadUpdates.current.get(N)===K&&d(({pendingReadUpdates:L})=>L.delete(N)),X){let L={...X,isRead:K};xr(N,L),P()}else G(N,S);break}case"report-delete":{let{reportHubId:C}=S;D.current=ki(D.current,C),T.current.add(C),f(N=>N+1),va(C),F(N=>to(N,C)),y.discard(C),I.remove(C)?.unsubscribe();let K=ot(C,{ignoreExpiry:!0});K?.date&&(Qs(C,K.date),P());break}case"report-create":case"report-update":case"report-publish":{let{report:C}=S;Ac(C),(S.type==="report-create"||S.type==="report-publish")&&ue(C.reportHubId,C.date),P();break}}},me=async(S,C,K={})=>{let{intent:N}=S,{onGone:X}=C,{lockedReportHubId:L}=K,A=L===void 0?null:Ec(L);C.onOptimistic?.(),_.add(S.clientTempId);let k=()=>{if(!B())throw Gt.warn(`[executeAction] ${N} resolved after a user switch; discarding continuation`),new Error(`Stale continuation for ${N}`)};try{let W=await fetch(`${n}/${ke.action}`,{method:"POST",body:fi(S),headers:{Accept:"application/json"}});if(W.status===404&&X!==void 0)return k(),X();if(!W.ok)throw new Bi(N,W.status);let re=au(N,await W.json());if("mismatch"in re)throw new Error(`[daily-report] ${N} answered a body that is not its result (${re.mismatch})`);let{result:Ee}=re;if(!yS(Ee,S))throw new Error(`[daily-report] ${N} answered another request`);return k(),C.onSuccess(Ee)}catch(W){throw Gt.error(`${N} failed:`,W),B()&&(C.onFailure?.(),tt.current.notifyError({operation:N,message:o.operationFailed(N),cause:W})),W}finally{A?.()}},ie=(S,C,K)=>({reportHubId:S,clientTempId:K,businessDate:typeof C=="string"?C:null,operationTimestamp:Date.now()}),Xe={toggleSse:pe,addComment:async(S,C,K)=>{let N=Oi(Date.now()),X=me({...ie(S,K,String(N)),intent:"addComment",content:C},{onOptimistic:()=>{d(({pendingAddCommentIds:L})=>{let A=L.get(S);A===void 0?L.set(S,new Map([[N,C]])):A.set(N,C)})},onSuccess:({newComment:L})=>{let A=L.id;d(({resolvedIdMap:W,pendingAddCommentIds:re})=>{W.set(N,A),re.get(S)?.delete(N)}),w();let k=ot(S,{ignoreExpiry:!0});return k&&!k.postedComments.some(W=>W.id===A)&&at(S,{postedComments:[...k.postedComments,{...L,isMine:!0,userName:Nr(t,o.unknownUser)}]}),A},onFailure:()=>{d(({pendingAddCommentIds:L})=>L.get(S)?.delete(N))}}).finally(()=>E.current.delete(N));E.current.set(N,X),await X},deleteComment:async(S,C,K)=>{d(({pendingDeleteCommentIds:L})=>{let A=L.get(S);A===void 0?L.set(S,new Set([C])):A.add(C)});let N=C;if(C<0){let L=l.resolvedIdMap.current.get(C);if(L!==void 0)N=L;else{let A=E.current.get(C);if(!A)return;try{N=await A}catch{return}}}let X=()=>{let L=ot(S,{ignoreExpiry:!0});L&&(at(S,{postedComments:L.postedComments.filter(A=>A.id!==N)}),Tc(N)),d(({pendingDeleteCommentIds:A})=>A.get(S)?.delete(C)),w()};await me({...ie(S,K,crypto.randomUUID()),intent:"deleteComment",commentId:N},{onSuccess:X,onGone:X,onFailure:()=>{d(({pendingDeleteCommentIds:L})=>L.get(S)?.delete(C))}})},toggleStar:async(S,C,K)=>{await me({...ie(S,K,crypto.randomUUID()),intent:"toggleStar",value:C},{onOptimistic:()=>{at(S,{isStarred:C}),d(({pendingStarUpdates:N})=>N.set(S,C))},onSuccess:({updatedStatus:N})=>{ot(S,{ignoreExpiry:!0})&&(at(S,{isStarred:N.isStarred}),P()),d(({pendingStarUpdates:X})=>X.delete(S))},onFailure:()=>{at(S,{isStarred:!C}),d(({pendingStarUpdates:N})=>N.delete(S))}})},toggleRead:async(S,C,K)=>{await me({...ie(S,K,crypto.randomUUID()),intent:"toggleRead",value:C},{onOptimistic:()=>{at(S,{isRead:C}),d(({pendingReadUpdates:N})=>N.set(S,C))},onSuccess:({updatedStatus:N})=>{ot(S,{ignoreExpiry:!0})&&(at(S,{isRead:N.isRead}),P()),d(({pendingReadUpdates:X})=>X.delete(S))},onFailure:()=>{at(S,{isRead:!C}),d(({pendingReadUpdates:N})=>N.delete(S))}})},createReport:async S=>{let C=Oi(Date.now()),K=new Date().toISOString(),N={reportHubId:C,date:S,createdAt:K,author:Nr(t,o.unknownUser),userId:t===void 0?null:t.id,sourceType:"Internal",employeeName:Nr(t,o.unknownUser),updatedBy:Nr(t,o.unknownUser),updatedAt:K,category:null,creationCategory:null,visitTimeFrom:null,visitTimeTo:null,customerName:null,interviewers:[],subject:"",content:"",externalComments:[],isRead:!0,isStarred:!1,isDraft:!0,labels:[],postedComments:[],attachments:[]};gc(N,Date.now()+3e5,!1),F(X=>Ba(X,{reportHubId:C,businessDate:S},Number.NEGATIVE_INFINITY));try{let X=await me({intent:"create",clientTempId:String(C),businessDate:S,operationTimestamp:Date.now()},{onSuccess:k=>k.report}),L=X.reportHubId,A=Ei();return Zn({reportHubId:L,businessDate:S}),Dc(L,uS),xr(L,X),P(),w(),F(k=>Ba(to(k,C),{reportHubId:L,businessDate:S},A)),L}catch(X){throw Gt.error("[createReport] Failed",X),F(L=>to(L,C)),X}},updateReport:async(S,C,K)=>{await me({...ie(S,K,crypto.randomUUID()),intent:"update",changes:{title:C.title,content:C.content}},{onSuccess:()=>{ot(S,{ignoreExpiry:!0})&&(at(S,{subject:C.title,content:C.content}),P()),w()}},{lockedReportHubId:S})},publishReport:async(S,C)=>{let K=ot(S,{ignoreExpiry:!0});await me({...ie(S,C,crypto.randomUUID()),intent:"publish"},{onOptimistic:()=>{K&&(at(S,{isDraft:!1}),P())},onSuccess:({report:N})=>{N!==null&&(xr(S,N),P()),C!==void 0&&Zn({reportHubId:S,businessDate:C}),w()},onFailure:()=>{K&&(at(S,{isDraft:K.isDraft}),P())}})},deleteReport:async(S,C)=>{let K=Wc(Y,S);D.current=ki(D.current,S),T.current.add(S),f(X=>X+1),va(S),K!==void 0&&F(X=>Xu(X,K));let N=()=>{Qs(S,C),y.discard(S),w()};try{await me({...ie(S,C,crypto.randomUUID()),intent:"delete"},{onSuccess:N,onGone:N},{lockedReportHubId:S})}catch(X){if(!B())return;D.current=bS(D.current,S),T.current.delete(S),f(k=>k+1);let L=K===void 0?C:K.businessDate,A=Ei();throw L!==void 0&&Zn({reportHubId:S,businessDate:L}),F(k=>{let W=wi(k,S);return K===void 0?W:Ba(W,K,A)}),X}},removeStaleItem:We,refetchData:Z,clearCacheAndRefetch:$,handleSseMessage:je,notifyError:a},tt=ro(Xe);Fi(()=>{tt.current=Xe});let[v]=wt(()=>SS(tt)),H=Hi(()=>({...l,...v.functions,user:t}),[l,v,t]),z=Hi(()=>({version:s,items:Y,isSseEnabled:h,sseStatus:m,searchInvalidation:V,isReportRemoved:j,removedVersion:p}),[s,Y,h,m,V,j,p]);return Pi(xi.Provider,{value:y,children:Pi(Va.Provider,{value:H,children:ES(Wa.Provider,{value:z,children:[Pi(ep,{isSseEnabled:h,onMessage:v.onSseMessage,onStatus:g}),e]})})})};var tp=(e,t)=>e.split(t).length-1,rp=(e,t,r)=>{let n=e("\uE000","\uE001");if(tp(n,"\uE000")!==1||tp(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 OS,useEffect as MS,useId as kS,useLayoutEffect as dp,useMemo as $i}from"react";import{createContext as sp,createElement as CS,useCallback as ap,useContext as ip,useDeferredValue as IS,useLayoutEffect as vS,useMemo as Ki,useSyncExternalStore as _S}from"react";var np=Object.freeze({subject:"subject",content:"content",author:"author",employeeName:"author",updatedBy:"updatedBy",category:"category",creationCategory:"creationCategory",customerName:"customer",interviewer:"interviewers",attachment:"attachments",comment:"comments"}),DS=e=>Object.hasOwn(np,e),TS=e=>{let t=e.indexOf(":"),r=t===-1?e:e.slice(0,t);if(!(ln(e)&&DS(r)))throw new Error(`[daily-report] A search mark leaf carries an unknown field key: ${e}`);return np[r]},xS=Object.freeze([]),Wi=(e,t)=>e.map(({heading:r,matchedBy:n})=>n==="reading"?t.searchFieldMatchedByReading(t[r]):t.searchFieldMatched(t[r])).join(" "),Vi=e=>e.words>0||e.dense>0?"word":e.readings>0?"reading":null,AS=(e,t)=>e.length===t.length&&e.every((r,n)=>r.heading===t[n].heading&&r.matchedBy===t[n].matchedBy),op=()=>{let e=new Map,t=new Map,r=new Set,n=null,o=0,a=0,s=xS,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,f=()=>{let R=[];for(let[E,D]of t){let T=Vi(D);T!==null&&R.push(Object.freeze({heading:E,matchedBy:T}))}return Object.freeze(R)},y=()=>{if(!d)return l;d=!1;let R=a===0;if(i){i=!1;let E=f();AS(E,s)||(s=E)}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},h=()=>{u=!1;let R=y();if(R!==c){c=R;for(let E of[...r])E()}},b=()=>{d=!0,!u&&(u=!0,queueMicrotask(h))},m=R=>{let E=t.get(R);if(E!==void 0)return E;let D={leaves:0,words:0,readings:0,dense:0};return t.set(R,D),D},g=(R,E)=>{o+=E*(R.words+R.readings),p(R)&&(a+=E);let D=m(R.heading),T=Vi(D);D.leaves+=E,D.words+=E*R.words,D.readings+=E*R.readings,R.dense&&(D.dense+=E),Vi(D)!==T&&(i=!0),D.leaves===0&&t.delete(R.heading)};return{register:(R,E)=>{let D={...E,heading:TS(E.fieldKey)},T=e.get(R);e.set(R,D),g(D,1),T!==void 0&&g(T,-1),b()},unregister:R=>{let E=e.get(R);E!==void 0&&(e.delete(R),g(E,-1),b())},settle:R=>{if(R!==n){n=R,a=0;for(let E of e.values())p(E)&&(a+=1);b()}},subscribe:R=>(r.add(R),()=>{r.delete(R)}),getSnapshot:y}};var lt=sp(null),lp=sp(null),no=()=>{let e=ip(lp);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},wS=()=>{},LS=()=>wS,NS=(e,t)=>{let r=ap(i=>e===null?LS():e.subscribe(t,i),[e,t]),n=ap(()=>{let i=e===null?void 0:e.read(t);return i===void 0?null:i},[e,t]),o=_S(r,n,n),a=Ki(()=>e===null||o===null?null:{store:e,entry:o},[e,o]),s=IS(a,a===null?void 0:null);return s!==null&&s.store===e?s.entry:null},pn=({reportHubId:e,children:t})=>{let r=ip(lt),n=NS(r,e),o=Ki(()=>r===null?null:op(),[r]),a=Ki(()=>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 vS(()=>{o!==null&&o.settle(n)},[o,n]),CS(lp.Provider,{value:a},t)};import{jsx as up}from"react/jsx-runtime";var PS="data-daily-report-search-mark",FS=Object.freeze({[Yr.word]:Object.freeze({attribute:"word",description:null}),[Yr.reading]:Object.freeze({attribute:"reading",description:"searchReadingMarkDescription"})}),cp=e=>{if(!Mn(e))throw new Error(`[daily-report] A search mark carries an unknown tier: ${e}`);return FS[e]},HS=Object.freeze({words:0,readings:0}),BS=e=>{if(e===null)return HS;let t=0;for(let r=2;r<e.length;r+=3)cp(e[r]).attribute==="reading"&&(t+=1);return{words:e.length/3-t,readings:t}},US=(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=cp(t[a+2]);s>o&&n.push(e.slice(o,s)),n.push(up("mark",{[PS]:l.attribute,"aria-description":l.description===null?void 0:r[l.description],className:Ed,children:e.slice(s,i)},`m${s}`)),o=i}return o<e.length&&n.push(e.slice(o)),n},VS=({fieldKey:e,raw:t,display:r})=>{let{entry:n,revalidate:o,tally:a}=no(),{labels:s}=q(),i=kS(),l=typeof t=="string"?t:"",d=$i(()=>n===null||l.length===0?null:pi(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,f=u!==null&&"dense"in u,y=$i(()=>p===null?null:Nd(r,p),[p,r]),h=$i(()=>BS(y),[y]),b=d!==null&&u===null,m=l.length===0;return MS(()=>{b&&d!==null&&o(e,d)},[b,o,e,d]),dp(()=>()=>a.unregister(i),[a,i]),dp(()=>{m||n===null?a.unregister(i):a.register(i,{entry:n,isCurrent:!b,fieldKey:e,words:h.words,readings:h.readings,dense:f})},[a,i,m,n,b,e,h,f]),y===null||y.length===0?r.text:US(r.text,y,s)},se=({fieldKey:e,raw:t,display:r})=>OS(lt)===null?r.text:up(VS,{fieldKey:e,raw:t,display:r});import{jsx as KS}from"react/jsx-runtime";var WS={2:"h2",3:"h3",4:"h4",5:"h5",6:"h6"},pr=Object.freeze({2:3,3:4,4:5,5:6}),Je=({level:e,...t})=>{let r=WS[e];return KS(r,{...t})};import{memo as Kp,useId as Ug,useMemo as Vg,useRef as $p}from"react";var pp=Object.freeze({tile:Object.freeze({maxWidth:480,maxHeight:320})});var ji="tile",ao=pp[ji],$S=2,oo=16,mp=5,fp=ao.maxWidth/$S,zS=mp*(fp+oo)-oo,yp=e=>{let t=Math.min(mp,1+Math.floor((e+oo)/(fp+oo)));return Math.floor((Math.min(e,zS)-(t-1)*oo)/t)},zi=`round(nearest, 100cqi * ${ao.maxHeight} / ${ao.maxWidth}, 1px)`,hp=Object.freeze({aspectRatio:`${ao.maxWidth} / ${ao.maxHeight}`,height:zi,contain:"strict"}),jS="--aqdr-lattice-block",bp=Object.freeze({marginBlockEnd:`calc(round(up, ${zi}, var(${jS})) - ${zi})`});var YS="download",GS="thumbnail",qS="1",mn=(e,t,r)=>{let n=`${e}/attachment/${encodeURIComponent(t)}`;switch(r.kind){case"inline":return n;case"download":return`${n}?${new URLSearchParams({[YS]:qS})}`;case"thumbnail":return`${n}?${new URLSearchParams({[GS]:r.variant})}`}};import{createContext as XS,useContext as QS}from"react";var so=XS(null),fn=()=>QS(so)===!1?-1:void 0,Rp=(e,t)=>{let{before:r,after:n}=da(e.ownerDocument,e);return(t==="before"?r.at(-1):n[0])??null};import{createContext as rg,useContext as ng,useLayoutEffect as og,useMemo as Ep,useState as ag}from"react";import{flushSync as sg}from"react-dom";import{flushSync as ZS}from"react-dom";var Yi=new WeakMap,Sp=e=>e.observedTrackWidth!==null&&e.observedTrackWidth!==e.handedTrackWidth,JS=e=>{e.frame=null;let t=[...e.observations.values()].filter(Sp);t.length!==0&&ZS(()=>{for(let r of t){let n=r.observedTrackWidth;r.handedTrackWidth=n,r.onTrackWidth(n)}})},eg=(e,t)=>{for(let r of t){let n=e.observations.get(r.target);if(n===void 0)continue;let o=r.contentBoxSize[0].inlineSize;o!==0&&(n.observedTrackWidth=n.trackWidthOf(o))}e.frame!==null||![...e.observations.values()].some(Sp)||(e.frame=e.view.requestAnimationFrame(()=>JS(e)))},tg=e=>{let t=Yi.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=>eg(n,o)),observations:new Map,frame:null};return Yi.set(e,n),n},gp=(e,t,r)=>{let n=e.ownerDocument,o=tg(n);if(o.observations.has(e))throw new Error("[daily-report] An attachment name track is already observed");let a={trackWidthOf:t,onTrackWidth:r,observedTrackWidth:null,handedTrackWidth:null};return o.observations.set(e,a),o.observer.observe(e),()=>{o.observations.get(e)===a&&(o.observations.delete(e),o.observer.unobserve(e),!(o.observations.size>0)&&(o.frame!==null&&o.view.cancelAnimationFrame(o.frame),o.observer.disconnect(),Yi.delete(n)))}};import{jsx as Lt,jsxs as Ap}from"react/jsx-runtime";var Xi="\u2026",ig=Xi.codePointAt(0),Dp=Object.freeze({text:Xi,runs:Object.freeze([])}),$a="data-attachment-file-name",lg=ve("block min-w-0"),dg="block whitespace-nowrap",cg=new Set([" ","\xA0","\u1361","\u{10100}","\u{10101}","\u{1039F}","\u{1091F}"," ",`
7
- `,"\f","\r"]),ug=/^-?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?px$/,Qi=({fileName:e})=>Lt("span",{className:kt,children:e}),pg=/"([^"]*)"|'([^']*)'|([^\s,"'][^,"']*)/g,mg=/^U\+([\dA-F?]{1,6})(?:-([\dA-F]{1,6}))?$/i,Zi=rg(null),Cp=e=>{let t=e.text.lastIndexOf(".");return t<=0||t===e.text.length-1?{stem:e,extension:nt("")}:{stem:Nn(e,0,t),extension:Nn(e,t,e.text.length)}},Gi=(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 Nn(e,0,o.slice(0,a).join("").length)},fg=(e,t,r)=>{if(r(e)<=t)return nt(e);let{stem:n,extension:o}=Cp(Ld(e)),a=t/2,s=r(o.text)<=a?o:zr([Gi(o,Xi,a,r),Dp]);if(r(n.text+s.text)<=t)return zr([n,s]);let i=zr([Dp,s]);return r(i.text)>t?Gi(i,"",t,r):zr([Gi(n,i.text,t,r),i])},Tp=new WeakMap,Ip=e=>{let t=Tp.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 Tp.set(e,n),n},vp=(e,t,r)=>`${e}|${t}|${r}`,yg=(e,t,r,n)=>{let o=vp(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+=cg.has(d)?r+n:r;return e.context.measureText(i).width+l};return e.measures.set(o,s),s},_p=e=>{let t=new Set;for(let r of e.matchAll(pg)){let n=r.slice(1).find(o=>o!==void 0);t.add(n.trim().replace(/\s+/g," ").toLowerCase())}return t},xp=e=>e==="normal"?0:ug.test(e)?Math.max(Number.parseFloat(e),0):null,hg=e=>{let t=getComputedStyle(e),r=xp(t.letterSpacing),n=xp(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:_p(t.fontFamily),measure:yg(Ip(e.ownerDocument),o,r,n)}},bg=(e,t)=>e===t||e!==null&&t!==null&&e.width===t.width&&e.measure===t.measure,Rg=e=>{let t=new Set([ig]);for(let r of e.querySelectorAll(`[${$a}]`)){let n=r.getAttribute($a);for(let o of n+n.normalize("NFC"))t.add(o.codePointAt(0))}return t},Sg=(e,t)=>{for(let r of e.split(",")){let n=mg.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},qi=new WeakMap,wp=e=>{let t=qi.get(e);if(t!==void 0)return t;let r={document:e,registrations:new Set,stopWatchingFonts:null};return qi.set(e,r),r},Lp=(e,t)=>{let r=hg(e.container.querySelector(`[${$a}]`));if(r===null){e.fitted=null,e.applyFit(null);return}e.fitted={trackWidth:t,nameFont:r};let n=wp(e.container.ownerDocument);n.stopWatchingFonts===null&&(n.stopWatchingFonts=Eg(n)),e.applyFit({width:t,measure:r.measure})},gg=(e,t)=>{let r=t.map(o=>({families:_p(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=Rg(o.container);s.some(l=>Sg(l.unicodeRange,i))&&(Ip(e.document).measures.delete(vp(a.nameFont.font,a.nameFont.letterSpacing,a.nameFont.wordSpacing)),n.push([o,a.trackWidth]))}n.length!==0&&sg(()=>{for(let[o,a]of n)Lp(o,a)})},Eg=e=>{let t=e.document.fonts,r=n=>{gg(e,n.fontfaces)};return t.addEventListener("loadingdone",r),()=>{t.removeEventListener("loadingdone",r)}},Dg=(e,t,r)=>{let n={container:e,applyFit:r,fitted:null},o=gp(e,t,s=>Lp(n,s)),a=wp(e.ownerDocument);return a.registrations.add(n),()=>{o(),a.registrations.delete(n),!(a.registrations.size>0)&&(a.stopWatchingFonts?.(),qi.delete(a.document))}},Np=(e,t)=>{let[r,n]=ag(null);return og(()=>{let o=e.current;return Dg(o,t,s=>{n(i=>bg(i,s)?i:s)})},[e,t]),r},Op=({containerRef:e,children:t})=>{let r=Np(e,yp);return Lt(Zi,{value:r,children:t})},Tg=e=>e,Mp=({containerRef:e,children:t})=>{let r=Np(e,Tg);return Lt(Zi,{value:r,children:t})},io=({fileName:e,attachmentIndex:t,className:r,testId:n})=>{let o=ng(Zi),a=Ep(()=>o===null?null:fg(e,o.width,o.measure),[e,o]),{stem:s,extension:i}=Ep(()=>Cp(nt(e)),[e]),l=le.attachment(t);return Ap("span",{className:lg(r),title:e,"data-testid":n,[$a]:e,children:[a===null?Ap("span",{"aria-hidden":"true",className:"flex min-w-0",children:[Lt("span",{className:"truncate",children:Lt(se,{fieldKey:l,raw:e,display:s})}),i.text!==""&&Lt("span",{className:"max-w-1/2 shrink-0 truncate",children:Lt(se,{fieldKey:l,raw:e,display:i})})]}):Lt("span",{"aria-hidden":"true",className:dg,children:Lt(se,{fieldKey:l,raw:e,display:a})}),Lt(Qi,{fileName:e})]})};import vg from"lucide-react/dist/esm/icons/image-off.js";import{memo as _g,useCallback as tl,useEffect as wg,useLayoutEffect as Lg,useRef as rl,useState as Ng}from"react";var za=Object.freeze({queueWaitMs:3e4,readMs:3e4,renderMs:1e4,transferMarginMs:5e3}),kp=za.queueWaitMs+za.readMs+za.renderMs+za.transferMarginMs;var xg=Object.freeze({kind:"loaded"}),Pp=(e,t,r,n,o)=>{let{limiter:a,tuning:s}=n,i="watching",l=null,d=null,c=null,u=null,p=null,f=V=>(V!==null&&n.clearTimeout(V),null),y=()=>{u?.(),u=null},h=()=>{p?.(),p=null},b=V=>V===null||V.kind==="loaded"?0:V.kind==="failing"?V.failedAttempts:s.maxAttempts,m=V=>{i="cooling",c=n.setTimeout(O,V)},g=()=>{o.abortInFlight(),h();let V=b(r.get(t))+1;if(V>=s.maxAttempts){i="done",r.set(t,{kind:"exhausted",failedAt:n.now()}),o.exhausted();return}r.set(t,{kind:"failing",failedAttempts:V,retryAt:n.now()+s.retryDelayMs}),o.reset(),m(s.retryDelayMs)},R=V=>{if(i==="loading"){if(d=f(d),!V){g();return}i="done",r.set(t,xg),h()}},E=()=>{d=null,R(!1)},D=()=>{i="loading",o.showActivity(!0),y(),d=n.setTimeout(E,s.loadTimeoutMs),o.grant()},T=()=>{l=null,i="queued",p=a.request(D)},_=()=>{l===null&&(l=n.setTimeout(T,s.settleMs))},I=V=>{if(o.showActivity(V),V){i==="watching"&&_();return}if(i==="queued"){h(),i="watching";return}l=f(l)},O=()=>{c=null,i="watching",o.showActivity(!1),u=n.observe(e,I)},M=()=>{let V=i==="loading";i="done",y(),l=f(l),d=f(d),c=f(c),o.showActivity(!1),V&&(o.abortInFlight(),p!==null&&o.reset()),h()},F=r.get(t);if(F?.kind==="loaded")return i=o.shows()?"done":"loading",o.grant(),{settle:R,dispose:M};if(F?.kind==="exhausted"){if(n.now()-F.failedAt<s.failureMemoryMs)return i="done",o.exhausted(),{settle:R,dispose:M};r.delete(t)}o.reset();let Y=F?.kind==="failing"?F.retryAt-n.now():0;return Y>0?m(Y):O(),{settle:R,dispose:M}};var Ag=e=>{ft("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())}}}},Fp=Ag(2);var Cg=e=>{ft("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)}}},Ji=Cg(1024);var el=new WeakMap,Ig=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},Hp=(e,t)=>{let r=e.ownerDocument,n=Ig(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 lo,jsxs as Bg}from"react/jsx-runtime";var Og={idle:"pending",granted:"pending",loaded:"loaded",failed:"unavailable"},Mg="data-thumbnail-active",kg="data-daily-report-attachment-preview",Up={[kg]:""},Pg=Object.freeze({settleMs:250,loadTimeoutMs:kp,retryDelayMs:5e3,maxAttempts:2,failureMemoryMs:6e4}),Bp=e=>{let t=Ji.peek(e);return t?.kind==="loaded"?{url:e,status:"loaded"}:t?.kind==="exhausted"?{url:e,status:"failed"}:{url:e,status:"idle"}},Fg=()=>({limiter:Fp,now:()=>performance.now(),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),observe:Hp,tuning:Pg}),Hg=(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(Mg,o)}}),Vp=_g(({thumbnailUrl:e,unavailableLabel:t})=>{let r=rl(null),n=rl(null),o=rl(null),[a,s]=Ng(()=>Bp(e));a.url!==e&&s(Bp(e)),Lg(()=>{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]),wg(()=>{let c=r.current,u=Pp(c,e,Ji,Fg(),Hg(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 lo("span",{className:"block",children:lo("span",{ref:r,"aria-hidden":"true","data-testid":"daily-report-attachment-thumbnail-frame","data-thumbnail-state":Og[a.status],style:hp,className:"relative block w-full",children:lo("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"?Bg("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 ${Ht}`,"data-testid":"daily-report-attachment-thumbnail-unavailable",children:[lo(vg,{"aria-hidden":"true",className:"size-5 shrink-0 text-slate-500 dark:text-slate-400"}),t]}):lo("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 Nt}from"react/jsx-runtime";var Wp=1024,nl=["B","KB","MB","GB"],zp="text-slate-500 text-sm line-through dark:text-slate-400",Wg="relative truncate",Kg=ve(Wg),$g=x("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",ne),zg=x("flex min-w-0 flex-col gap-2 rounded-lg",ne),jg=x("flex min-w-0 rounded-sm",ne),Yg=x("m-0",gr),Gg=e=>{if(e===null||!Number.isFinite(e)||e<0)return null;let t=e,r=0;for(;t>=Wp&&r<nl.length-1;)t/=Wp,r+=1;return r===0?`${t} ${nl[r]}`:`${t.toFixed(1)} ${nl[r]}`},qg=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}},jp=({attachment:e,labels:t,className:r})=>Nt("span",{className:Kg(r),children:[Gg(e.fileSize)??"\u2014",e.state==="absent"&&` \xB7 ${t.attachmentMissing}`]}),ol=({href:e,children:t,...r})=>{let n=fn();return Se("a",{href:e,...r,tabIndex:n,children:t})},Yp=({downloadUrl:e,label:t,fileName:r})=>Nt(ol,{href:e,className:$g,"data-testid":"daily-report-attachment-download",children:[t," ",Se(Qi,{fileName:r})]}),Xg=Kp(({attachment:e,attachmentIndex:t,apiBasePath:r,labels:n})=>{let o=Se(Vp,{thumbnailUrl:mn(r,e.id,{kind:"thumbnail",variant:ji}),unavailableLabel:n.attachmentThumbnailUnavailable}),a=e.state==="absent";return Nt("li",{className:"@container flex min-w-0 flex-col gap-1","data-testid":"daily-report-attachment-item","data-attachment-state":e.state,children:[a?Nt("div",{className:"flex min-w-0 flex-col gap-2",children:[o,Se(io,{fileName:e.fileName,attachmentIndex:t,className:zp,testId:"daily-report-attachment-name"})]}):Nt(ol,{href:mn(r,e.id,{kind:"inline"}),className:zg,"data-testid":"daily-report-attachment-link",...Up,children:[o,Se(io,{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"})]}),Nt("div",{className:"flex h-4 min-w-0 items-center gap-2 text-slate-500 text-xs tabular-nums dark:text-slate-400",style:bp,children:[Se(jp,{attachment:e,labels:n}),!a&&Se(Yp,{downloadUrl:mn(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})]})}),Qg=Kp(({attachment:e,attachmentIndex:t,apiBasePath:r,labels:n})=>{let o=e.state==="absent",a=$p(null);return Nt("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(Mp,{containerRef:a,children:Se("div",{ref:a,className:"flex min-w-0 flex-1","data-testid":"daily-report-attachment-name-track",children:Nt("div",{className:"flex min-w-0 flex-col",children:[o?Se(io,{fileName:e.fileName,attachmentIndex:t,className:zp,testId:"daily-report-attachment-name"}):Se(ol,{href:mn(r,e.id,{kind:"inline"}),className:jg,"data-testid":"daily-report-attachment-link",children:Se(io,{fileName:e.fileName,attachmentIndex:t,className:"text-blue-600 text-sm hover:underline dark:text-blue-400"})}),Se(jp,{attachment:e,labels:n,className:"text-slate-500 text-xs tabular-nums dark:text-slate-400"})]})})}),!o&&Se(Yp,{downloadUrl:mn(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})}),Zg=({entries:e,headingId:t,apiBasePath:r,labels:n})=>{let o=$p(null);return Se(Op,{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(Xg,{attachment:a,attachmentIndex:s,apiBasePath:r,labels:n},a.id))})})})},ja=({attachments:e})=>{let{apiBasePath:t,labels:r,headingLevel:n}=q(),o=Ug(),{tiles:a,rows:s}=Vg(()=>qg(e),[e]);return e.length===0?null:Nt("div",{className:"flex flex-col gap-2","data-testid":"daily-report-attachment-section",children:[Se(Je,{level:pr[n],id:o,className:Yg,children:r.attachments}),Nt("div",{className:"flex flex-col gap-4",children:[a.length>0&&Se(Zg,{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(Qg,{attachment:i,attachmentIndex:l,apiBasePath:t,labels:r},i.id))})]})]})};import{useOverlayEscapeStack as hE}from"@aiquants/swipe-overlay";import{memo as em,useCallback as Xa,useEffect as Xp,useId as bE,useRef as tm,useState as RE}from"react";import{useCallback as Gp,useMemo as Jg,useRef as eE,useState as tE}from"react";var al=(e,t,r)=>{let{pendingAddCommentIds:n,pendingDeleteCommentIds:o,resolvedIdMap:a,addComment:s,deleteComment:i}=Be(),{version:l}=Ka(),{labels:d}=q(),c=d.unknownUser,[u,p]=tE(null),f=Gp(m=>e&&i(e.reportHubId,m,e.date),[e,i]),y=Gp(m=>e&&t?s(e.reportHubId,m,e.date):Promise.resolve(),[e,t,s]),h=eE([]);return{uiComments:Jg(()=>{if(!e)return[];let m=tu(e.externalComments,e.postedComments,r,c),g=o.current.get(e.reportHubId);g?.size&&(m=m.filter(E=>!g.has(E.id)));let R=n.current.get(e.reportHubId);if(R?.size&&t){let E=new Set(m.map(I=>I.id)),D=Nr(t,""),T=D==="",_=T?c:D;for(let[I,O]of R){if(g?.has(I)||E.has(I))continue;let M=a.current.get(I);M&&E.has(M)||m.some(F=>F.isMine&&F.content===O&&typeof F.id=="number"&&F.id>0)||m.push({id:I,authorName:_,content:O,createdAt:new Date().toISOString(),isMine:!0,isLegacy:!1,isAuthorUnknown:T})}}return JSON.stringify(m)===JSON.stringify(h.current)?h.current:(h.current=m,m)},[e,t,r,c,o,n,a,l]),handleAddComment:y,handleDeleteComment:f,pendingDeleteId:u,setPendingDeleteId:p,resolvedIdMap:a.current}};import{Fragment as rE,jsx as nE}from"react/jsx-runtime";var Pe=({render:e})=>{let t=fn();return nE(rE,{children:e(t)})};import oE from"@heroicons/react/24/outline/TrashIcon.js";import{memo as aE,useId as sE,useMemo as qp,useRef as iE,useState as lE}from"react";import{jsx as Ot,jsxs as Ya}from"react/jsx-runtime";var sl="data-comment-id",Ga="data-comment-delete-button",qa="data-comment-delete-slot",dE=x(He,od),cE=Array.from({length:8},(e,t)=>x("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")),uE=(e,t,r)=>(e?4:0)+(t?2:0)+(r?1:0),pE=ve("font-semibold text-xs"),mE="relative flex h-5 items-center",fE=x(Ke,"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",ne),yE=(e,t,r)=>t===e||typeof e=="number"&&e<0&&r?.get(e)===t||typeof t=="number"&&t<0&&r?.get(t)===e,il=aE(({comment:e,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:s,onBeforeHide:i,resolvedIdMap:l})=>{let[d,c]=lE(!1),{labels:u}=q(),p=sE(),f=iE(null),y=yE(e.id,o,l),h=qp(()=>Me(e.authorName),[e.authorName]),b=qp(()=>nt(e.content),[e.content]),m=le.comment(e.id,"author"),g=le.comment(e.id,"content"),R=ln(g),E=e.isMine&&!e.isLegacy,D=!!e.createdAt||E,T=()=>{let I=f.current;I!==null&&i(I),a(null),c(!0),typeof e.id=="number"&&n?.(e.id)},_=I=>{if(!y)return;let O=I.relatedTarget;Re(O)&&I.currentTarget.contains(O)||a(null)};return Ya("li",{[sl]:e.id,"data-deleted":d?"true":void 0,className:cE[uE(e.isMine,d,y)],children:[Ya("div",{className:"mb-1 flex items-center justify-between",children:[Ot("div",{className:pE(ru(e.color)),children:R&&!e.isAuthorUnknown?Ot(se,{fieldKey:m,raw:e.authorName,display:h}):h.text}),D&&Ya("div",{className:"flex items-center gap-2",children:[e.createdAt&&Ot("div",{className:"text-slate-500 text-xs dark:text-slate-400",children:be(e.createdAt)}),E&&Ya("div",{[qa]:e.id,className:mE,onBlur:_,children:[Ot(Pe,{render:I=>Ot("button",{ref:f,type:"button",tabIndex:I,className:dE,title:u.commentDelete,"aria-label":u.commentDelete,"aria-expanded":y,"aria-controls":y?p:void 0,[Ga]:e.id,onClick:()=>s(e.id,y),children:Ot(oE,{"aria-hidden":"true",className:y?Oe.deletePending:Oe.delete})})}),y&&Ot(Pe,{render:I=>Ot("button",{id:p,type:"button",tabIndex:I,"data-delete-confirmation":!0,className:fE,onClick:T,children:u.commentDeleteConfirm})})]})]})]}),Ot("div",{className:"whitespace-pre-wrap text-slate-700 text-sm leading-6 dark:text-slate-200",children:R?Ot(se,{fieldKey:g,raw:e.content,display:b}):e.content})]})});il.displayName="DailyReportPostedComment";import{Fragment as wE,jsx as dt,jsxs as ll}from"react/jsx-runtime";var SE="data-daily-report-comment-section",gE="data-daily-report-comment-heading",EE=x(Ft,ne),DE=ve("flex flex-col gap-2"),rm=(e,t)=>e>0||t,TE=x("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",Pt,ne),xE=x("h-9 rounded-lg bg-blue-600 px-4 font-medium text-sm text-white hover:bg-blue-700 disabled:opacity-50",ne),Qp=e=>e.querySelector(`[${Ga}][aria-expanded="true"]`),AE=(e,t,r)=>{let n=[...e.querySelectorAll(`[${Ga}]`)].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(`[${sl}]`)].filter(i=>!i.contains(t)&&i.closest("[data-deleted]")===null).length;return rm(s,r)?{kind:"heading"}:{kind:"report"}},CE=({comments:e,reportHubId:t,businessDate:r,onDeleteComment:n,pendingDeleteId:o,onPendingDeleteIdChange:a,resolvedIdMap:s,canComment:i,headingRef:l,onSectionRemoved:d})=>{let c=tm(null),u=hE(),p=bE(),f=o!==null,y=Xa(()=>{let m=c.current,g=m===null?null:Qp(m),R=g===null?null:g.closest(`[${qa}]`),E=m===null?null:Ie(m);a(null),g!==null&&R!==null&&E!==null&&R.contains(E)&&g.focus({preventScroll:!0})},[a]);Xp(()=>{if(f)return u({id:p,onEscape:m=>Yt(m)?(y(),!0):!1})},[f,u,p,y]),Xp(()=>{let m=c.current;if(!f||m===null)return;let g=m.ownerDocument,R=E=>{let D=Qp(m)?.closest(`[${qa}]`);D!=null&&Re(E.target)&&D.contains(E.target)||a(null)};return g.addEventListener("pointerdown",R,!0),()=>g.removeEventListener("pointerdown",R,!0)},[f,a]);let h=Xa((m,g)=>{g?y():a(m)},[y,a]),b=Xa(m=>{let g=c.current;if(g===null)return;let R=AE(g,m,i);if(R.kind==="report"){d();return}let E=R.kind==="trash"?R.button:l.current;if(E===null)throw new Error("[daily-report] the comment section's heading is not attached");E.focus({preventScroll:!0})},[i,l,d]);return e.length===0?null:dt("ul",{ref:c,className:"space-y-2",children:e.map(m=>dt(il,{comment:m,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:h,onBeforeHide:b,resolvedIdMap:s},m.id))})},Zp=({className:e,children:t,...r})=>{let{labels:n,headingLevel:o}=q(),a=tm(null);return rm(r.comments.length,r.canComment)?ll("div",{[SE]:"",className:DE(e),children:[dt(Je,{ref:a,level:pr[o],tabIndex:-1,[gE]:"",className:EE,children:n.comments}),dt(CE,{...r,headingRef:a}),t]}):null},nm=em(({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?dt(_E,{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"?dt(Zp,{...p,children:u}):ll(wE,{children:[dt(Zp,{...p}),u]})});nm.displayName="ReportCommentsView";var co=em(({report:e,userId:t,canComment:r,onCommentAdded:n,onSectionRemoved:o,formPlacement:a,sectionClassName:s})=>{let{user:i}=Be(),{uiComments:l,handleAddComment:d,handleDeleteComment:c,pendingDeleteId:u,setPendingDeleteId:p,resolvedIdMap:f}=al(e,i,t),y=Xa(async h=>{await d(h),n?.()},[d,n]);return dt(nm,{report:e,canComment:r,onSectionRemoved:o,formPlacement:a,sectionClassName:s,comments:l,onAddComment:y,onDeleteComment:c,pendingDeleteId:u,onPendingDeleteIdChange:p,resolvedIdMap:f})});co.displayName="ReportComments";var IE="flex gap-2",vE="mt-auto flex gap-2",Jp="content",_E=({onAddComment:e,pushedToEnd:t})=>{let[r,n]=RE(!1),{labels:o}=q();return ll("form",{className:t?vE:IE,onSubmit:async s=>{s.preventDefault();let i=s.currentTarget,l=i.elements.namedItem(Jp);if(!(l instanceof $e(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:[dt(Pe,{render:s=>dt("input",{type:"text",name:Jp,tabIndex:s,placeholder:o.commentPlaceholder,className:TE,autoComplete:"off"})}),dt(Pe,{render:s=>dt("button",{type:"submit",tabIndex:s,className:xE,disabled:r,children:o.commentSend})})]})};import{useState as zE}from"react";import{Slot as LE}from"@radix-ui/react-slot";import{cva as NE}from"class-variance-authority";import*as am from"react";import{jsx as kE}from"react/jsx-runtime";var OE=NE(`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 ${ne}`,{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"}}),om=new Map,ME=(e,t,r)=>{let n=`${String(e)}|${String(t)}`,o=om.get(n);if(o!==void 0)return o(r);let a=ve(OE({variant:e,size:t}));return om.set(n,a),a(r)},qt=am.forwardRef(({className:e,variant:t,size:r,asChild:n=!1,...o},a)=>kE(n?LE:"button",{className:ME(t,r,e),ref:a,...o}));qt.displayName="Button";import{jsx as HE}from"react/jsx-runtime";var PE=`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 ${Pt} ${ne}`,FE=ve(PE);function sm({className:e,type:t,...r}){return HE("input",{type:t,"data-slot":"input",className:FE(e),...r})}import*as im from"@radix-ui/react-label";import{jsx as VE}from"react/jsx-runtime";var BE="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",UE=ve(BE);function uo({className:e,...t}){return VE(im.Root,{"data-slot":"label",className:UE(e),...t})}import{jsx as $E}from"react/jsx-runtime";var WE=`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 ${Pt} ${ne}`,KE=ve(WE);function lm({className:e,...t}){return $E("textarea",{"data-slot":"textarea",className:KE(e),...t})}import{jsx as ct,jsxs as Qa}from"react/jsx-runtime";var yn=e=>({title:e.subject??"",content:e.content??""}),jE=e=>{e.preventDefault()},Za=({report:e,onCancel:t,onPublishSuccess:r,titleInputRef:n})=>{let{updateReport:o,publishReport:a}=Be(),{labels:s}=q(),i=ur(),{title:l,content:d}=Mu(e.reportHubId),[c,u]=zE(!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)}},y=`report-title-${e.reportHubId}`,h=`report-content-${e.reportHubId}`;return Qa("form",{className:"space-y-4 p-1",onSubmit:jE,children:[Qa("div",{className:"space-y-2",children:[ct(uo,{htmlFor:y,children:s.formTitle}),ct(Pe,{render:b=>ct(sm,{ref:n,id:y,value:l,onChange:m=>i.setInput(e.reportHubId,{title:m.target.value}),placeholder:s.formTitlePlaceholder,disabled:c,tabIndex:b})})]}),Qa("div",{className:"space-y-2",children:[ct(uo,{htmlFor:h,children:s.formContent}),ct(Pe,{render:b=>ct(lm,{id:h,value:d,onChange:m=>i.setInput(e.reportHubId,{content:m.target.value}),placeholder:s.formContentPlaceholder,className:"min-h-50",disabled:c,tabIndex:b})})]}),Qa("div",{className:"flex justify-end gap-2",children:[t&&ct(Pe,{render:b=>ct(qt,{type:"button",variant:"outline",onClick:t,disabled:c,tabIndex:b,children:s.formCancel})}),ct(Pe,{render:b=>ct(qt,{type:"button",variant:"secondary",onClick:p,disabled:c,tabIndex:b,children:s.formSave})}),ct(Pe,{render:b=>ct(qt,{type:"button",onClick:f,disabled:c,tabIndex:b,children:s.formPublish})})]})]})};import uD from"lucide-react/dist/esm/icons/check.js";import pD from"lucide-react/dist/esm/icons/pencil.js";import mD from"lucide-react/dist/esm/icons/trash-2.js";import{useContext as um,useMemo as pm,useSyncExternalStore as mm}from"react";import{jsx as Or,jsxs as cm}from"react/jsx-runtime";var YE="inline-grid whitespace-nowrap text-xs leading-4 tabular-nums text-slate-600 dark:text-slate-300",dm="[grid-area:1/1]",GE=e=>{let t=0;for(let r=e;r!==0;r&=r-1)t+=1;return t},qE=({isEditing:e,descriptionId:t})=>{let{entry:r,tally:n,indicator:o}=no(),{labels:a}=q(),s=mm(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:GE(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,f=pm(()=>Wi(s.fields,a),[s.fields,a]),y=[p,f,u?a.searchMatchOutsideViewDescription:null].filter(h=>h!==null&&h.length>0);return cm("span",{className:YE,"data-daily-report-search-indicator":!0,children:[Or("span",{"aria-hidden":"true",className:`invisible ${dm}`,"data-daily-report-search-indicator-placeholder":!0,children:d}),cm("span",{className:dm,children:[p!==null&&c!==null?Or("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?Or("span",{"aria-hidden":"true",title:a.searchMatchOutsideViewDescription,"data-daily-report-search-outside-view":!0,children:a.searchMatchOutsideView}):null,Or("span",{id:t===null?void 0:t,className:kt,"data-daily-report-search-indicator-description":!0,children:y.join(" ")})]})]})},Ja=({isEditing:e,descriptionId:t})=>um(lt)===null?null:Or(qE,{isEditing:e,descriptionId:t}),XE=({id:e})=>{let{tally:t}=no(),{labels:r}=q(),n=mm(t.subscribe,t.getSnapshot,t.getSnapshot),o=pm(()=>Wi(n.fields,r),[n.fields,r]);return Or("span",{id:e,hidden:!0,"data-daily-report-search-match-description":!0,children:o})},fm=({id:e})=>um(lt)===null?null:Or(XE,{id:e});import{jsx as ym}from"react/jsx-runtime";var ts=24,hm=2,QE=20,es=5,ZE=3,JE=()=>{let e=Math.cos(2*Math.PI/es)/Math.cos(Math.PI/es),t=Array.from({length:2*es},(p,f)=>{let y=-Math.PI/2+f*Math.PI/es,h=f%2===0?1:e;return{x:h*Math.cos(y),y:h*Math.sin(y)}}),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=(QE-hm)/(a-o),d=ts/2-l*(o+a)/2,c=ts/2-l*(s+i)/2,u=p=>String(Number(p.toFixed(ZE)));return t.map(p=>`${u(d+l*p.x)},${u(c+l*p.y)}`).join(" ")},eD=JE(),hn=({filled:e})=>ym("svg",{viewBox:`0 0 ${ts} ${ts}`,"aria-hidden":"true",fill:"none",stroke:"currentColor",strokeWidth:hm,strokeLinejoin:"round",className:e?Oe.starOn:Oe.starOff,children:ym("polygon",{points:eD})});import{Fragment as rD,jsx as rs,jsxs as nD}from"react/jsx-runtime";var tD=ve(id),bn=({config:e,id:t})=>rs("span",{id:t,className:tD(e.badgeClassName),children:e.name===void 0?e.label:nD(rD,{children:[rs("span",{"aria-hidden":"true",children:rs("abbr",{title:e.name,children:e.label})}),rs("span",{className:kt,children:e.name})]})});import{jsx as bm}from"react/jsx-runtime";var ns=24,oD=6,Rn=()=>bm("svg",{viewBox:`0 0 ${ns} ${ns}`,"aria-hidden":"true",className:Oe.read,children:bm("circle",{cx:ns/2,cy:ns/2,r:oD,fill:"currentColor"})});import{jsx as sD}from"react/jsx-runtime";var aD=/^(\d{4}-\d{2}-\d{2})(?:T(\d{2}:\d{2}):\d{2})?$/,Mr=({text:e})=>{let t=aD.exec(e);if(t===null)return e;let[,r,n]=t;return sD("time",{dateTime:e,children:n===void 0?r:`${r} ${n}`})};import{Fragment as cD,jsx as Le,jsxs as dl}from"react/jsx-runtime";var iD=ve("m-0"),Ye=({label:e,classNames:t,valueId:r,children:n})=>dl("div",{className:t.field,children:[Le("dt",{className:t.label,children:e}),Le("dd",{id:r,className:iD(t.value),children:n})]}),lD="mt-2 font-semibold text-slate-600 text-xs uppercase tracking-wide first:mt-0 dark:text-slate-400",dD="m-0 mt-1 text-slate-700 text-sm dark:text-slate-200",mr=({label:e,children:t})=>dl(cD,{children:[Le("dt",{className:lD,children:e}),Le("dd",{className:dD,children:t})]}),Rm=({report:e,visitTimeDisplay:t,labels:r})=>{let n=ar(e.category),o=ar(e.creationCategory);return dl("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:[Le(mr,{label:r.author,children:Le(se,{fieldKey:le.field("author"),raw:e.author,display:Me(e.author)})}),Le(mr,{label:r.createdAt,children:Le(Mr,{text:be(e.createdAt)})}),Le(mr,{label:r.updatedBy,children:Le(se,{fieldKey:le.field("updatedBy"),raw:e.updatedBy,display:Me(e.updatedBy)})}),Le(mr,{label:r.updatedAt,children:Le(Mr,{text:be(e.updatedAt)})}),Le(mr,{label:r.businessDate,children:Le(Mr,{text:be(e.date)})}),t!==null&&Le(mr,{label:r.visitTime,children:t}),n.text.length>0&&Le(mr,{label:r.category,children:Le(se,{fieldKey:le.field("category"),raw:e.category,display:n})}),o.text.length>0&&Le(mr,{label:r.creationCategory,children:Le(se,{fieldKey:le.field("creationCategory"),raw:e.creationCategory,display:o})})]})};import{jsx as de,jsxs as gm}from"react/jsx-runtime";var os={field:x(Ke,"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:""},fD={field:x(Ke,"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:""},Sm={field:x(Ke,"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:""},Em=({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,y=t?p.markUnread:p.markRead,h=ar(e.category),b=ar(e.creationCategory);return gm("div",{className:"flex flex-wrap items-center gap-2 font-medium text-slate-600 text-xs dark:text-slate-300",children:[de(Ln,{id:u.attachments,count:e.attachments.length,label:p.attachments}),d?de(bn,{id:u.source,config:d}):null,de(Pe,{render:m=>de("button",{type:"button",onClick:a,tabIndex:m,className:He,title:f,"aria-label":f,"data-detail-star-button":e.reportHubId,children:de(hn,{filled:r})})}),de(Pe,{render:m=>de("button",{type:"button",onClick:o,tabIndex:m,className:He,title:y,"aria-label":y,"data-detail-read-button":e.reportHubId,children:t?de(uD,{className:Oe.read}):de(Rn,{})})}),s&&de(Pe,{render:m=>de("button",{ref:i,type:"button",onClick:s,tabIndex:m,"data-detail-edit-button":e.reportHubId,className:He,title:p.edit,"aria-label":p.edit,children:de(pD,{className:Oe.edit})})}),n&&de(Pe,{render:m=>de("button",{type:"button",onClick:l,tabIndex:m,"data-detail-delete-button":e.reportHubId,className:He,title:p.deleteReport,"aria-label":p.deleteReport,children:de(mD,{className:Oe.delete})})}),gm("dl",{className:"m-0 flex flex-wrap items-center gap-2",children:[de(Ye,{label:p.id,classNames:fD,children:e.reportHubId}),de(Ye,{label:p.businessDate,classNames:os,children:de(Mr,{text:be(e.date)})}),de(Ye,{label:p.author,classNames:os,children:de(se,{fieldKey:le.field("employeeName"),raw:e.employeeName,display:Me(e.employeeName)})}),de(Ye,{label:p.visitTime,classNames:os,children:sr(c)}),de(Ye,{label:p.updatedAt,classNames:os,children:de(Mr,{text:be(e.updatedAt)})}),h.text.length>0&&de(Ye,{label:p.category,classNames:Sm,children:de(se,{fieldKey:le.field("category"),raw:e.category,display:h})}),b.text.length>0&&de(Ye,{label:p.creationCategory,classNames:Sm,children:de(se,{fieldKey:le.field("creationCategory"),raw:e.creationCategory,display:b})})]}),de(Ja,{isEditing:!1,descriptionId:u.searchMatch})]})};import{useCallback as zD,useContext as qm,useLayoutEffect as yl,useRef as Xm}from"react";import{startTransition as kD,useCallback as ce,useLayoutEffect as hr,useMemo as jm,useRef as kr,useState as gn,useSyncExternalStore as PD}from"react";import{flushSync as Ym}from"react-dom";import{useState as yD}from"react";var as=e=>{let[t]=yD(()=>({current:e()}));return t};var Sn=e=>({owner:e,focusIndex:null}),cl=Object.freeze({owner:null,focusIndex:null}),Dm=(e,t)=>{if(e.length===0)return cl;let r=Math.min(Math.max(t,0),e.length-1);return{owner:{reportHubId:It(e,r).reportHubId,index:r},focusIndex:r}},Tm=(e,t)=>{switch(t.kind){case"focusIn":return Sn(t.row);case"focusOut":return t.to==="outside"?cl:Sn(e);case"pointerPress":return t.at==="outside"?cl:Sn(e);case"listChanged":{if(e===null)return Sn(e);let r=Te(t.items,e.reportHubId,e.index);return r===-1?Dm(t.items,e.index):Sn(r===e.index?e:{reportHubId:e.reportHubId,index:r})}case"removed":return t.selection===null||t.selection.reportHubId!==t.reportHubId?Sn(e):Dm(t.items,t.selection.index)}};var hD=new Set(["Alt","AltGraph","CapsLock","Control","Fn","FnLock","Hyper","Meta","NumLock","ScrollLock","Shift","Super","Symbol","SymbolLock"]),ss={capture:!0},is=new WeakMap,bD=e=>{let t=o=>{hD.has(o.key)||(n.last="keyboard")},r=()=>{n.last="pointer"},n={observers:0,last:null,detach:()=>{e.removeEventListener("keydown",t,ss),e.removeEventListener("pointerdown",r,ss)}};return e.addEventListener("keydown",t,ss),e.addEventListener("pointerdown",r,ss),n},xm=e=>{let t=is.get(e),r=t===void 0?bD(e):t;t===void 0&&is.set(e,r),r.observers+=1;let n=!1;return()=>{n||(n=!0,r.observers-=1,!(r.observers>0)&&(r.detach(),is.delete(e)))}},Am=e=>{let t=is.get(e);return t===void 0?null:t.last};var ls=e=>e.matches(":focus-visible")&&Am(e.ownerDocument)!=="pointer";var RD="data-daily-report-keyboard-focus",fr={capture:!0},Cm=e=>{let t=xm(e.ownerDocument),r=i=>{e.toggleAttribute(RD,Re(i)&&ls(i))},n=i=>r(i.target),o=i=>{Re(i.relatedTarget)&&e.contains(i.relatedTarget)||r(null)},a=()=>r(null);e.addEventListener("focusin",n,fr),e.addEventListener("keydown",n,fr),e.addEventListener("focusout",o,fr),e.addEventListener("pointerdown",a,fr);let s=Ie(e);return r(s!==null&&e.contains(s)?s:null),()=>{e.removeEventListener("focusin",n,fr),e.removeEventListener("keydown",n,fr),e.removeEventListener("focusout",o,fr),e.removeEventListener("pointerdown",a,fr),r(null),t()}};var SD='form, input, textarea, select, [contenteditable]:not([contenteditable="false"]), audio[controls], video[controls]',gD=["combobox","listbox","menu","menubar","radiogroup","slider","spinbutton","textbox","tree","grid","scrollbar","tablist","toolbar","treegrid","separator"],ED=gD.map(e=>`[role="${e}"]`).join(", "),DD=new Map([["ArrowUp","previous"],["ArrowDown","next"],["Home","first"],["End","last"],["PageUp","pageBackward"],["PageDown","pageForward"]]),TD=new Set(["Enter"," "]),xD=new Map([["Home","exitBefore"],["End","exitAfter"]]),ul=(e,t)=>{if(e.altKey||e.metaKey||e.shiftKey)return null;if(e.ctrlKey)return xD.get(e.key)??null;let r=DD.get(e.key);return r!==void 0?r:TD.has(e.key)&&t.rowActivation?"activate":null},Im=(e,t,r)=>{let n=e.closest(t);return n!==null&&n!==r&&r.contains(n)},vm=(e,t,r)=>{let n=ul(e,r);if(n===null||e.defaultPrevented||wr(e)||t===null||!Re(e.target)||!t.contains(e.target))return null;let o=cr(e.target,t);return o===null?null:n==="activate"?e.target===o?"activate":null:Im(e.target,SD,t)||Im(e.target,ED,t)?null:n};var AD=.875,ds={kind:"stay"},cs=e=>{if(e.kind==="measured")return e.heightOf;let{rowHeight:t}=e;return()=>t},_m=e=>Math.floor(AD*e),yr=(e,t)=>({kind:"move",index:e,align:t}),po=(e,t,r,n)=>e>=0&&e+t<=r?"none":t>r?n>0?"top":"bottom":e<0?"top":"bottom",CD=({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},ID=({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},vD=(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 ds;if(r==="top")return yr(n-1,"top");let d=i(n-1);return yr(n-1,po(s-d,d,a,-1))}case"next":return n===o-1?ds:r==="top"?yr(n+1,"top"):yr(n+1,po(l,i(n+1),a,1));case"first":return yr(0,"top");case"last":return yr(o-1,i(o-1)<=a?"bottom":"top");case"pageForward":{if(l>a)return{kind:"reveal",delta:Math.min(l-a,_m(a))};if(n===o-1)return ds;let d=CD(t);return yr(d.index,po(d.top,i(d.index),a,1))}case"pageBackward":{if(s<0)return{kind:"reveal",delta:-Math.min(-s,_m(a))};if(n===0)return ds;let d=ID(t);return yr(d.index,po(d.top,i(d.index),a,-1))}}},_D=({index:e,focusedRowTop:t,heightOf:r},n)=>Mm(n,{index:e,offsetPx:-t},r),Nm=(e,t,r,n)=>{let o=r,a=null,s=0;for(let i=0;i<t;i++){let l=vD(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:_D(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}},Om=({index:e,viewport:t,focusedRowTop:r,heightOf:n})=>po(r,n(e),t,1),Mm=(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},mo=(e,t,r,n)=>{let o=e.getViewportSize(),a=e.getScrollPosition();if(!(o>0&&a>=0))return null;let s=cs(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:Mm(t,i,s),heightOf:s}},wm=1,km=(e,t,r)=>{let n=e.getViewportSize(),o=e.getScrollAnchor();if(!(n>0)||o===null||t===0)return null;let a=fo(o,n,t,r);return{start:Math.max(0,o.index-wm),end:Math.min(t-1,a+wm)}},fo=(e,t,r,n)=>{let o=cs(n),a=e.index,s=o(a)-e.offsetPx;for(;s<t&&a<r-1;)a+=1,s+=o(a);return a},Pm=(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,Lm=(e,t,r)=>e!==null&&e.index!==-1&&(e.reportHubId===r||e.index>=t.visibleStartIndex&&e.index<=t.visibleEndIndex),Fm=(e,t,r,n,o)=>{if(n===null)return t!==null?t.reportHubId:r===null?null:r.reportHubId;if(Lm(t,n,o))return t.reportHubId;if(Lm(r,n,o))return r.reportHubId;let a=ye(e,n.visibleStartIndex);return a===void 0?null:a.reportHubId};var ml=1,yo=2,pl=({selectedId:e,tabStopId:t,arrivingId:r},n)=>(n===e||n===r?ml:0)|(n===t||n===r?yo:0),wD=e=>{if(Wt(e))return!0;let t=Ie(e);return t!==null&&e.contains(t)},LD=(e,t)=>{let r=e.closest(`[${ya}]`);return r!==null&&r!==e&&Ir(r)===t&&Ie(e)===r},Hm={capture:!0},Bm=({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=>pl(r,m),p=m=>{let g=l.get(m);if(g===void 0)return;let R=(u(m)&yo)!==0?"0":"-1";g.getAttribute("tabindex")!==R&&g.setAttribute("tabindex",R)},f=()=>{if(n===null)return;let m=n;n=null,p(m)},y=(m,g)=>{f();let R={...r};m(r);let E=r,D=new Set([R.selectedId,R.tabStopId,R.arrivingId,E.selectedId,E.tabStopId,E.arrivingId]);for(let T of D){if(T===null)continue;let _=pl(R,T),I=pl(E,T);if(_===I)continue;((_^I)&yo)!==0&&(T===g?n=T:p(T));let O=i.get(T);if(O!==void 0)for(let M of[...O])M()}},h=m=>{let g=m.ownerDocument,R=n!==null&&!Wt(m);R?g.addEventListener("focusout",f,Hm):f(),a=!0;try{m.focus({preventScroll:!0})}finally{a=!1,R&&g.removeEventListener("focusout",f,Hm),f()}},b=m=>{let g=e();g!==null&&(o=null,wD(g)&&h(m))};return{getSelectedId:()=>r.selectedId,getTabStopId:()=>r.tabStopId,rowStateOf:u,setTabStopId:m=>{y(g=>{g.tabStopId=m},null)},settleSelection:(m,g)=>{y(R=>{R.selectedId=m,R.tabStopId=g,R.arrivingId=null},null)},arrive:m=>{y(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){b(g);return}s===null||s.reportHubId!==m||(Wt(g)||LD(g,m))&&h(g)},unregisterFocusTarget:(m,g)=>{l.get(m)===g&&l.delete(m)},requestFocus:m=>{o=m;let g=l.get(m);g!==void 0&&b(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||!Wt(g)||h(g)},holdBodiesOutside:m=>{d=m},isBodyHeldAt:m=>d!==null&&(m<d.start||m>d.end),registerHeldBody:(m,g,R)=>{let E={indexHint:g,release:R};return c.set(m,E),()=>{c.get(m)===E&&c.delete(m)}},releaseHeldBodiesWithin:(m,g)=>{if(m!==null)for(let[R,{indexHint:E,release:D}]of[...c]){let T=g(R,E);T>=m.start&&T<=m.end&&D()}}}};var Um=(e,t)=>e.id===t.id&&e.indexHint===t.indexHint,Vm=e=>{let t=new Set,r=e,n=null,o=Object.freeze({selected:r,settled:r}),a=()=>{let u=n===null?r:n;if(!(Um(o.selected,r)&&Um(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 Rt={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}},fl=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!1}),ND=Object.freeze({apply:null,flush:!1,requestFrame:!0,ended:!1}),Wm=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!0}),OD=new Map(Object.values(Rt).map(e=>[e,Object.freeze({apply:e,flush:!1,requestFrame:!0,ended:!1})])),Km=e=>{let t=OD.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},MD=(e,t,r)=>e==="row"||e==="page"?t+r:r,$m=e=>({state:{axis:e.axis,pending:0,fence:"immediate"},effects:Km(e)}),zm=(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",Km(r)):(e.pending=MD(e.axis,e.pending,r.amount),fl)}case"frame":{if(e.fence==="open")return fl;if(e.fence==="immediate")return e.fence="flush",ND;if(e.pending===0)return e.fence="open",fl;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?Wm:{apply:{axis:e.axis,amount:e.pending},flush:!0,requestFrame:!1,ended:!0};case"cancel":return Wm}};var FD=Object.freeze({kind:"frame"}),HD=Object.freeze({kind:"keyup"}),BD=Object.freeze({kind:"cancel"}),UD=Object.freeze({previous:Object.freeze({kind:"repeat",step:Rt.previous}),next:Object.freeze({kind:"repeat",step:Rt.next}),pageBackward:Object.freeze({kind:"repeat",step:Rt.pageBackward}),pageForward:Object.freeze({kind:"repeat",step:Rt.pageForward}),first:Object.freeze({kind:"repeat",step:Rt.first}),last:Object.freeze({kind:"repeat",step:Rt.last}),activate:Object.freeze({kind:"repeat",step:Rt.activate})}),VD=(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}},WD=(e,t)=>({top:e.top-t,bottom:e.bottom+t}),KD=e=>{let t=Ir(e),r=on(e);return t===null||r===null?null:{reportHubId:t,index:r-1}},us=(e,t)=>{let r=ce(a=>e.subscribe(t,a),[e,t]),n=ce(()=>e.rowStateOf(t),[e,t]),o=PD(r,n,n);return{isCurrent:(o&ml)!==0,isTabStop:(o&yo)!==0}},ps=(e,t,r)=>{let[n,o]=gn(()=>!e.isBodyHeldAt(r));return hr(()=>{if(n)return;let a=()=>o(!0),s=e.registerHeldBody(t,r,a);return kD(a),s},[e,t,r,n]),n},$D=e=>e==="first"||e==="last",Gm=({items:e,selectedId:t,onSelect:r,containerRef:n,rootRef:o,handleRef:a,scroller:s,rowSizing:i,arrowAlign:l,rowActivation:d})=>{let[c]=gn(()=>Bm({getContainer:()=>n.current,initialSelectedId:t})),u=as(()=>({items:e,onSelect:r,rowSizing:i,arrowAlign:l,rowActivation:d})),p=kr(null),f=kr(null),[y,h]=gn(null),[b,m]=gn(0),g=kr(null),R=kr(null),[E]=gn(()=>Vm({id:t,indexHint:null})),D=kr(!1),T=kr(null),[_,I]=gn(0),O=jm(()=>({id:t,indexHint:t===null?null:$c(y,t)}),[t,y]),M=kr(O);hr(()=>{u.current={items:e,onSelect:r,rowSizing:i,arrowAlign:l,rowActivation:d},M.current=O},[u,e,r,i,l,d,O]),hr(()=>{E.select(O)},[E,O,b]);let F=ce((v,H)=>{let z=f.current;if(z!==null&&z.items===v&&z.reportHubId===H)return z.index;let S=Te(v,H,z!==null&&z.reportHubId===H?z.index:null);return S!==-1&&(f.current={items:v,reportHubId:H,index:S}),S},[]),Y=ce((v,H)=>{f.current={items:u.current.items,reportHubId:v,index:H},h(z=>z!==null&&z.reportHubId===v&&z.index===H?z:{reportHubId:v,index:H}),m(z=>z+1),E.select({id:v,indexHint:H})},[u,E]),V=ce(v=>{let H=c.getFocusOwner();if(H===null)return null;let z=Te(v,H.reportHubId,H.index);return z===-1?null:{reportHubId:H.reportHubId,index:z}},[c]),w=ce(v=>{let H=u.current.items,z=v===null?null:{reportHubId:v,index:F(H,v)};return Fm(H,V(H),z,p.current,T.current)},[u,F,V]),P=ce(()=>{c.setTabStopId(w(c.getSelectedId()))},[c,w]),j=ce(v=>{let H=c.getFocusOwner();H===v||H!==null&&v!==null&&H.reportHubId===v.reportHubId&&H.index===v.index||(c.setFocusOwner(v),D.current||P())},[c,P]),B=ce(v=>{let H=Tm(c.getFocusOwner(),v);j(H.owner),H.focusIndex!==null&&(g.current=H.focusIndex,c.requestFocus(H.owner.reportHubId))},[c,j]);hr(()=>{c.settleSelection(t,w(t))},[c,t,e,_,w]),hr(()=>{let v=o.current;if(v!==null)return Cm(v)},[o]),hr(()=>{let v=n.current;if(v===null)return;let H=v.ownerDocument,z=S=>{let C=n.current,K=S.target;B({kind:"pointerPress",at:C!==null&&Re(K)&&C.contains(K)?"inside":"outside"})};return H.addEventListener("pointerdown",z,{capture:!0}),()=>H.removeEventListener("pointerdown",z,{capture:!0})},[n,B]),hr(()=>{let v=c.pendingFocusId();v!==null&&Te(e,v,g.current)===-1&&c.cancelFocusRequest(),B({kind:"listChanged",items:e})},[c,e,B]);let Z=ce(v=>{B({kind:"removed",reportHubId:v,selection:f.current,items:u.current.items})},[u,B]),$=ce((v,H,z,S)=>{let{items:C,onSelect:K,rowSizing:N,arrowAlign:X}=u.current,L=a.current;if(K===null||L===null)return null;let A=Te(C,z.reportHubId,z.index);if(A===-1)return null;let k=mo(L,A,C.length,N);if(k===null)return null;let W=Nm(v,H,k,X),re=It(C,W.index),Ee=W.index!==A,pt=Ee||S&&$D(v)&&M.current.id!==re.reportHubId;if(Ee){c.arrive(re.reportHubId),T.current=re.reportHubId,g.current=W.index,D.current=!0;try{c.requestFocus(re.reportHubId)}finally{D.current=!1}}try{Ym(()=>{pt&&(c.pendingFocusId()===null&&c.settleSelection(re.reportHubId,re.reportHubId),K(re.reportHubId,W.index)),W.alignment!==null&&s.toIndex(W.alignment.index,{align:W.alignment.align}),W.scrollDelta!==0&&s.by(W.scrollDelta),pt&&(Y(re.reportHubId,W.index),I(Wr=>Wr+1));let Mt=km(L,C.length,N);c.holdBodiesOutside(Mt),c.releaseHeldBodiesWithin(Mt,(Wr,Oy)=>Te(C,Wr,Oy))})}finally{c.holdBodiesOutside(null)}return Ee?{reportHubId:re.reportHubId,index:W.index}:{reportHubId:z.reportHubId,index:A}},[c,u,a,s,Y]),G=ce(v=>{let{items:H,onSelect:z}=u.current;if(z===null)return;let S=Te(H,v.reportHubId,v.index);S!==-1&&(z(v.reportHubId,S),Y(v.reportHubId,S))},[u,Y]),ue=ce(v=>{let H=n.current,z=H===null?null:Ie(H),S=H!==null&&z!==null&&H.contains(z)?zn(cr(z,H),u.current.items):null;return S===null?v.origin:S},[u,n]),pe=ce((v,H)=>{let z=ue(v);if(H.axis==="activate"){G(z);return}let S=VD(H.axis,H.amount),C=$(S.command,S.count,z,!1);C!==null&&(v.origin=C)},[ue,G,$]),We=ce(v=>{R.current=null,v.frame!==0&&v.view.cancelAnimationFrame(v.frame),E.release()},[E]),je=ce((v,H,z)=>{let{apply:S}=H;S!==null&&(H.flush?Ym(()=>pe(v,S)):pe(v,S)),R.current===v&&(H.ended?We(v):H.requestFrame&&(v.frame=v.view.requestAnimationFrame(z)))},[pe,We]),me=ce((v,H,z)=>{je(v,zm(v.state,H),z)},[je]),ie=ce(()=>{let v=R.current;v!==null&&(v.frame=0,me(v,FD,ie))},[me]),Ne=ce(()=>{let v=R.current;v!==null&&me(v,HD,ie)},[me,ie]),qe=ce(()=>{let v=R.current;v!==null&&me(v,BD,ie)},[me,ie]),ut=ce((v,H,z)=>{E.hold(M.current);let{state:S,effects:C}=$m(Rt[v]),K={state:S,origin:H,view:z,frame:0};R.current=K,je(K,C,ie)},[E,je,ie]);hr(()=>()=>{let v=R.current;R.current=null,v!==null&&v.frame!==0&&v.view.cancelAnimationFrame(v.frame)},[]);let Dt=ce(v=>{let H=R.current,z=H!==null&&v.repeat?ul(v,u.current):null;if(H!==null&&z!==null&&z!=="exitBefore"&&z!=="exitAfter"&&Rt[z].axis===H.state.axis){v.preventDefault(),me(H,UD[z],ie);return}let{items:S,onSelect:C,rowSizing:K,rowActivation:N}=u.current,X=n.current,L=C===null?null:vm(un(v),X,{rowActivation:N});if(c.cancelFocusRequest(),Ne(),L===null||X===null)return;if(L==="exitBefore"||L==="exitAfter"){let W=Rp(X,L==="exitBefore"?"before":"after");if(W===null)return;v.preventDefault(),W.focus();return}let A=Ie(X),k=zn(cr(A!==null&&X.contains(A)?A:v.target,X),S);if(k!==null){if(L!=="activate"){let W=a.current;if(W===null||mo(W,k.index,S.length,K)===null)return}if(v.preventDefault(),v.repeat){ut(L,k,$e(X));return}L==="activate"?G(k):$(L,1,k,!0)}},[c,u,n,a,ie,me,Ne,ut,G,$]),Tt=ce(()=>{Ne()},[Ne]),Ae=ce(v=>{let H=n.current,z=v.target,S=cr(z,H);if(B({kind:"focusIn",row:S===null?null:KD(S)}),c.isMovingFocus())return;let C=a.current;if(H===null||C===null||!Re(z)||!ls(z))return;let K=S===null?null:S.closest('[role="list"]');if(S===null||K===null)return;let N=K.getBoundingClientRect(),X=S.getBoundingClientRect(),L=X.height<=N.height?X:WD(z.getBoundingClientRect(),rr),A=Pm(L,N),k=C.getViewportSize();A===0||!(k>0&&N.height>0)||s.by(A*k/N.height)},[c,n,a,s,B]),_e=ce(v=>{let H=n.current,z=v.relatedTarget,S=Re(z)?H?.contains(z)?"view":"outside":"nowhere";S!=="view"&&qe(),B({kind:"focusOut",to:S})},[n,qe,B]),ge=ce(()=>{c.cancelFocusRequest(),qe()},[c,qe]),Xe=ce(v=>{p.current={visibleStartIndex:v.visibleStartIndex,visibleEndIndex:v.visibleEndIndex},T.current=null,P()},[P]),tt=jm(()=>({onKeyDown:Dt,onKeyUp:Tt,onPointerDownCapture:ge,onWheelCapture:ge,onTouchStartCapture:ge,onFocus:Ae,onBlur:_e}),[Dt,Tt,ge,Ae,_e]);return{cursor:c,containerProps:tt,handleRangeChange:Xe,selection:O,selectionStore:E,resolveSelectedIndex:F,rememberSelection:Y,focusAfterRemoval:Z}};import{jsx as hl}from"react/jsx-runtime";var jD=x(or,_o,wo,vo,"h-full"),YD="h-full w-full",Qm=({itemId:e,name:t,isBusy:r,bodyKind:n,observeRowHeight:o,cursor:a,children:s})=>{let{isCurrent:i,isTabStop:l}=us(a,e),d=qm(zt),c=qm($t),u=ps(a,e,d),p=Xm(null),f=Xm(null),y=zD(h=>(p.current=h,a.registerFocusTarget(e,h),()=>{p.current=null,a.unregisterFocusTarget(e,h)}),[a,e]);return yl(()=>{let h=p.current,b=h===null||!u?null:h.firstElementChild,m=b instanceof HTMLElement?b:null,g=f.current;g!==null&&g.body===m||(g!==null&&g.stop(),f.current=m===null?null:{body:m,stop:o(m)})}),yl(()=>()=>{f.current?.stop(),f.current=null},[]),yl(()=>{a.restoreFocus(e)},[a,e,n]),hl(so.Provider,{value:l,children:hl("div",{ref:y,className:jD,"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:hl("div",{...Qe,className:YD})})})};import{jsx as J,jsxs as Ve}from"react/jsx-runtime";var QD=x("flex w-full flex-col gap-4",xt,Oo,nr),ZD=x(xt,nr),JD=x("rounded-2xl",nr),eT=x("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",nr),Ue="bg-slate-200 dark:bg-slate-700",tT=x("whitespace-pre-wrap",No),rT=x(Ke,"bg-slate-100 text-slate-600 text-xs dark:bg-slate-800 dark:text-slate-300"),nT=({interviewer:e,index:t,template:r})=>{let n=Pr(()=>Me(e.name),[e.name]),o=J(se,{fieldKey:le.interviewer(t,"name"),raw:e.name,display:n},"name"),a=e.affiliation;if(!a?.trim())return o;let s=rp(r,n.text,a);return s===null?r(n.text,a):s.map(i=>i.kind==="text"?i.text:i.kind==="name"?o:J(se,{fieldKey:le.interviewer(t,"affiliation"),raw:a,display:nt(a)},"affiliation"))},oT=Ve("div",{...Qe,className:ZD,children:[Ve("div",{className:"mb-4 flex flex-wrap gap-2",children:[J("div",{className:x("h-6 w-20 rounded-full",Ue)}),J("div",{className:x("h-6 w-24 rounded-full",Ue)}),J("div",{className:x("h-6 w-24 rounded-full",Ue)}),J("div",{className:x("h-6 w-28 rounded-full",Ue)})]}),Ve("div",{className:"mb-4 grid gap-4 md:grid-cols-[minmax(0,1fr)_240px]",children:[Ve("div",{className:"space-y-4",children:[J("div",{className:x("h-5 w-40 rounded",Ue)}),J("div",{className:x("h-5 w-56 rounded",Ue)}),J("div",{className:x("h-24 rounded-xl",Ue)})]}),Ve("div",{className:"rounded-xl bg-slate-100 p-3 dark:bg-slate-800/60",children:[J("div",{className:x("mb-2 h-4 w-24 rounded",Ue)}),J("div",{className:x("mb-2 h-4 w-28 rounded",Ue)}),J("div",{className:x("h-4 w-32 rounded",Ue)})]})]}),Ve("div",{className:"space-y-4",children:[J("div",{className:x("h-4 w-24 rounded",Ue)}),Ve("div",{className:"flex flex-wrap gap-2",children:[J("div",{className:x("h-6 w-16 rounded-full",Ue)}),J("div",{className:x("h-6 w-16 rounded-full",Ue)}),J("div",{className:x("h-6 w-16 rounded-full",Ue)})]}),Ve("div",{className:"space-y-2",children:[J("div",{className:x("h-16 rounded-xl",Ue)}),J("div",{className:x("h-16 rounded-xl",Ue)})]})]})]}),aT=()=>oT,sT=({item:e,observeRowHeight:t,onCommentAdded:r,userId:n,cursor:o})=>{let{report:a,error:s,isLoading:i,isRefetching:l}=Ar(e.reportHubId,e.businessDate),{removeStaleItem:d}=Be(),{sourceTypeConfigs:c}=q(),u=ur(),p=Ma(e.reportHubId),f=p==="editing"||p==="automatic",y=bl(!1),h=bl(!1),b=bl(!1);Zm(()=>{if(l){b.current=!0;return}!(a||i||s)&&b.current&&e.reportHubId>0&&d(e.reportHubId)},[a,i,l,s,e.reportHubId,d]);let m=a?.isDraft===!0,g=n&&a?.userId===n,R=Pr(()=>a===null?void 0:()=>{y.current=!0,u.open(e.reportHubId,yn(a),!1)},[u,e.reportHubId,a]),E=En(()=>{h.current=!0,u.dismiss(e.reportHubId)},[u,e.reportHubId]),D=En(()=>{h.current=!0,u.discard(e.reportHubId)},[u,e.reportHubId]),T=En(Z=>{Z===null||!y.current||(y.current=!1,Z.focus())},[]),_=En(Z=>{Z===null||!h.current||(h.current=!1,Z.focus())},[]);XD(()=>{f||(h.current=!1)},[f]),Zm(()=>{a!==null&&(g&&m&&p==="display"?u.open(e.reportHubId,yn(a),!0):!m&&p==="automatic"&&u.discard(e.reportHubId))},[a,g,m,p,u,e.reportHubId]);let I=En(()=>o.requestFocus(e.reportHubId),[o,e.reportHubId]),O=qD(),M=Pr(()=>({heading:`${O}-heading`,state:`${O}-state`,attachments:`${O}-attachments`,source:`${O}-source`,searchMatch:`${O}-search-match`}),[O]),F=a!==null&&a.attachments.length>0,Y=GD(lt)!==null,V=a===null?void 0:Vt(a.sourceType,c),w=[M.state,...F?[M.attachments]:[],...V!==void 0?[M.source]:[],...Y?[M.searchMatch]:[]].join(" "),P=!s&&a!==null&&!f?{kind:"card",ids:M,describedBy:w}:{kind:"label",label:be(e.businessDate)},j=!s&&a===null&&i,B=s?"error":a===null?i?"loading":"missing":f?"editing":"resolved";return J(Qm,{itemId:e.reportHubId,name:P,isBusy:j,bodyKind:B,observeRowHeight:t,cursor:o,children:s?J(iT,{itemId:e.reportHubId}):a?f?J("div",{...Qe,className:JD,children:J(Za,{report:a,onCancel:E,onPublishSuccess:D,titleInputRef:T})}):J(tf,{item:e,report:a,sourceConfig:V,textIds:M,onCommentAdded:r,userId:n,onEdit:g?R:void 0,editButtonRef:_,onCommentSectionRemoved:I}):J(aT,{})})},ef=Jm(sT),tf=Jm(({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:f}=Be(),{labels:y,headingLevel:h}=q(),b=pr[h],m=Yo(t.sourceType,r),g=En(()=>o?.(e.reportHubId),[o,e.reportHubId]),R=u.current.get(t.reportHubId),E=R===void 0?t.isStarred:R,D=p.current.get(t.reportHubId),T=D===void 0?t.isRead:D,_=!!(a&&t.userId===a),I=async()=>{try{await c(t.reportHubId,!T,t.date)}catch{}},O=async()=>{try{await d(t.reportHubId,!E,t.date)}catch{}},M=async()=>{if(confirm(y.confirmDelete))try{await f(t.reportHubId,t.date)}catch{}},F=Pr(()=>Bd(t.content??null),[t.content]),Y=Pr(()=>Me(t.customerName),[t.customerName]),V=Pr(()=>Me(t.subject),[t.subject]),w=Pr(()=>{let P=t.visitTimeFrom?.trim(),j=t.visitTimeTo?.trim();return P&&j?`${P} - ${j}`:P||j||null},[t.visitTimeFrom,t.visitTimeTo]);return J("div",{...Qe,onDoubleClick:s,className:QD,children:Ve(pn,{reportHubId:e.reportHubId,children:[J(Je,{level:h,id:n.heading,className:kt,children:`${be(t.date)} ${sr(t.employeeName)} ${sr(t.subject)}`}),J("span",{id:n.state,className:kt,children:y.rowState({isRead:T,isStarred:E})}),J(Em,{report:t,sourceConfig:r,isRead:T,isStarred:E,isMine:_,onToggleRead:I,onToggleStar:O,onEdit:s,editButtonRef:i,onDelete:M,visitTimeDisplay:w,markerIds:n,labels:y}),Ve("div",{className:"grid gap-4 md:grid-cols-[minmax(0,1fr)_240px]",children:[Ve("div",{className:"flex flex-col gap-4",children:[Ve("div",{className:"grid gap-4 sm:grid-cols-2",children:[Ve("div",{className:"flex flex-col gap-1",children:[J(Je,{level:b,className:Ft,children:y.customer}),J("span",{className:"font-semibold text-base text-slate-900 dark:text-slate-100",children:J(se,{fieldKey:le.field("customerName"),raw:t.customerName,display:Y})})]}),Ve("div",{className:"flex flex-col gap-1",children:[J(Je,{level:b,className:Ft,children:y.subject}),J("span",{className:"text-slate-700 text-sm dark:text-slate-200",children:J(se,{fieldKey:le.field("subject"),raw:t.subject,display:V})})]})]}),F.text.length>0&&Ve("div",{className:"flex flex-col gap-2",children:[J(Je,{level:b,className:Ft,children:y.content}),J("div",{className:tT,children:J(se,{fieldKey:le.field("content"),raw:t.content,display:F})})]}),t.interviewers.length>0&&Ve("div",{className:"flex flex-col gap-2",children:[J(Je,{level:b,className:Ft,children:y.interviewers}),J("ul",{className:"flex flex-wrap gap-2",children:t.interviewers.map((P,j)=>J("li",{className:rT,children:J(nT,{interviewer:P,index:j,template:y.interviewerWithAffiliation})},JSON.stringify([P.name,P.affiliation])))})]}),J(ja,{attachments:t.attachments}),J(co,{report:t,userId:a,canComment:m,onCommentAdded:g,onSectionRemoved:l,formPlacement:"after-section"})]}),J(Rm,{report:t,visitTimeDisplay:w,labels:y})]})]})})});tf.displayName="DailyReportResolvedItem";var iT=({itemId:e})=>{let{labels:t}=q();return J("div",{...Qe,className:eT,children:J("p",{children:t.reportLoadFailed(e)})})};import{useCallback as cf,useId as RT,useMemo as uf,useRef as ST}from"react";import{createContext as lT,useContext as dT,useLayoutEffect as cT}from"react";var rf=()=>{let e=!1;return{request:()=>{e=!0},isPending:()=>e,take:()=>{let t=e;return e=!1,t}}},Rl=lT(null),nf=(e,t)=>{let r=dT(Rl);cT(()=>{let n=e.current;if(r===null||!r.isPending()||n===null)return;let o=ha(n);o===null&&!t||(r.take(),Wt(n)&&vt([o===null?Ai(n.ownerDocument):o]))})};import{useCallback as of,useLayoutEffect as af,useMemo as sf,useRef as Sl}from"react";var uT=(e,t,r,n)=>{for(let o=r;o<=n;o++){let a=ye(e,o);if(a===void 0||a.reportHubId!==ye(t,o)?.reportHubId)return!0}return!1},pT=(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}},mT=(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}},fT=(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"?pT(e.index,a,n.rowHeight,r.length):mT(e.index,a,cs(n),r.length);return{reportHubId:It(r,s).reportHubId,index:s,offsetPx:i,lastVisibleIndex:fo({index:s,offsetPx:i},o,r.length,n),recordedAt:t}},yT=(e,t,r)=>{for(let n=r.index+1;n<=r.lastVisibleIndex&&n<e.length;n++){let o=Te(t,It(e,n).reportHubId,n-1);if(o!==-1)return o}return-1},lf=({items:e,handleRef:t,rowSizing:r,isRevealPending:n})=>{let o=Sl(null),a=Sl(e),s=Sl(r),i=of(()=>{let c=t.current,u=c===null?-1:c.getScrollPosition(),p=c===null||!(u>0)?null:c.getScrollAnchor(),f=a.current,y=p===null?void 0:ye(f,p.index),h=c===null?0:c.getViewportSize();o.current=p===null||y===void 0||!(h>0)?null:{reportHubId:y.reportHubId,index:p.index,offsetPx:p.offsetPx,lastVisibleIndex:fo(p,h,f.length,s.current),recordedAt:u}},[t]),l=sf(()=>({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]);af(()=>{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=fT(u,p.getScrollPosition(),c,s.current,p.getViewportSize());if(f===null){o.current=null;return}let y=Te(e,f.reportHubId,f.index),h=y===-1?yT(c,e,f):y;if(h===-1){o.current=null;return}if(h===f.index&&!uT(c,e,f.index,f.lastVisibleIndex)){o.current=f;return}p.scrollToIndex(h,{align:"top",offset:-f.offsetPx}),o.current={reportHubId:It(e,h).reportHubId,index:h,offsetPx:f.offsetPx,lastVisibleIndex:fo({index:h,offsetPx:f.offsetPx},p.getViewportSize(),e.length,r),recordedAt:p.getScrollPosition()}},[e,t,r,n]),af(()=>{s.current=r},[r]);let d=of(c=>{if(c.cause!=="clamp"){i();return}let u=o.current;u!==null&&(o.current={...u,recordedAt:u.recordedAt+c.delta})},[i]);return sf(()=>({handleRangeChange:i,handleScrollAdjust:d,scroller:l}),[i,d,l])};import{useCallback as hT}from"react";var bT=20,df=({hostTestId:e,scrollContainerRef:t,handleRef:r,scroller:n,itemsRef:o})=>hT(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=>it(o.current,l),getReportItem:l=>ye(o.current,l),getReportIds:(l=bT)=>zc(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 gT}from"react/jsx-runtime";var ms=({containerRef:e,testId:t,itemsRef:r,isViewRevealPending:n,onRangeChange:o,...a})=>{let s=ST(null),i=cf(E=>(s.current=E,()=>{s.current=null}),[]),{handleRangeChange:l,handleScrollAdjust:d,scroller:c}=lf({items:a.items,handleRef:s,rowSizing:a.rowSizing,isRevealPending:n}),{handleRangeChange:u,...p}=Gm({...a,containerRef:e,handleRef:s,scroller:c}),f=df({hostTestId:t,scrollContainerRef:e,handleRef:s,scroller:c,itemsRef:r});nf(e,a.items.length===0);let{labels:y}=q(),h=RT(),b=a.onSelect!==null,m=cf(E=>{u(E),l(),o(E)},[u,l,o]),g=uf(()=>({role:"list","aria-label":y.title,"aria-describedby":b?h:void 0}),[y.title,b,h]),R=uf(()=>b?gT("span",{id:h,className:"sr-only",children:y.listKeyboardHelp}):null,[b,h,y.listKeyboardHelp]);return{...p,handleRangeChange:m,handleScrollAdjust:d,attachVirtualScroll:i,handleRef:s,scroller:c,attachScrollContainer:f,contentProps:g,keyboardHelp:R}};import{Fragment as _T,jsx as Xt,jsxs as vT}from"react/jsx-runtime";var mf={pointerDragInputs:ra,wheelSpeedMultiplier:Xo,inertiaOptions:an(!1),enableKeyboardNavigation:!1},TT={...mf,inertiaOptions:an(!0)},pf="daily-report-detail-list",xT=x("relative w-full",Bo,Ho),AT=x(rt,"relative"),CT=300,El=e=>{let t=ze(null),[r,n]=fs(null),o=ca(t),a=sn(r),s=Fe(i=>(t.current=i,n(i),()=>{t.current=null,n(null)}),[]);return Xt("div",{ref:s,className:Po,children:Xt("div",{className:Fo,children:o===null?null:Xt(IT,{...e,viewportHeight:o,reducedMotion:a})})})},IT=({dailyReportItems:e,rowSetSize:t,userId:r,selectedItemId:n,onSelectItem:o,scrollRestoreRef:a,viewportHeight:s,reducedMotion:i})=>{let[{initialScrollAnchor:l,restored:d}]=fs(()=>{let A=a?.current;if(!A||A.anchorReportHubId!==(n??null))return{initialScrollAnchor:void 0,restored:!1};if(!A.topItem)return{initialScrollAnchor:void 0,restored:!0};let k=it(e,A.topItem.reportHubId);return k!==-1?{initialScrollAnchor:{index:k,offsetPx:A.topItem.offsetPx},restored:!0}:{initialScrollAnchor:{index:A.topItem.index,offsetPx:0},restored:!0}}),c=ze(d),u=ze(n??null),p=ze(a?.current.measuredHeights??new Map),f=ze(null),y=ia(),h=ti(),[b]=fs(ba),m=ze(null),g=ze(null),R=ze(e),E=ze(o);DT(()=>{R.current=e,E.current=o},[e,o]);let D=ze(null),[T,_]=fs(0),I=ze(null),O=e.length,M=t===void 0?O:t,F=Fe(A=>{let k=ye(e,A);return k===void 0?Zo:k},[e]),Y=Fe(A=>{let k=p.current.get(F(A).reportHubId);return k===void 0?mc:k},[F]),V=Fe(A=>F(A).reportHubId,[F]),w=gl(()=>({kind:"measured",heightOf:Y}),[Y]),P=Fe((A,k)=>{D.current={reportHubId:A,index:k},_(W=>W+1),E.current?.(A)},[]),j=Fe((A,k)=>{if(O===0)return;let W=Math.max(0,A),re=Math.min(O-1,k);if(W>re)return;let Ee=new Set;for(let pt=W;pt<=re;pt++){let Mt=F(pt);if(Mt.businessDate&&Ee.add(Mt.businessDate),Ee.size>=cc)break}Ee.forEach(pt=>{h(pt)})},[F,O,h]),B=ze(null),Z=Fe(()=>B.current,[]),$=Fe(A=>{if(O===0)return;let{renderingStartIndex:k,renderingEndIndex:W,visibleStartIndex:re}=A,Ee=F(re);Ee.reportHubId>0&&(B.current=Ee.reportHubId),Ee.businessDate&&b.setLabel(be(Ee.businessDate)),j(k,W),j(W+1,W+Qo),j(k-Qo,k-1)},[F,O,j,b]),G=Fe(()=>I.current!==null,[]),{cursor:ue,containerProps:pe,handleRangeChange:We,handleScrollAdjust:je,attachVirtualScroll:me,handleRef:ie,scroller:Ne,attachScrollContainer:qe,contentProps:ut,keyboardHelp:Dt,resolveSelectedIndex:Tt,rememberSelection:Ae}=ms({items:e,selectedId:n??null,onSelect:o===void 0?null:P,containerRef:f,rootRef:f,testId:pf,itemsRef:R,rowSizing:w,arrowAlign:"top",rowActivation:!0,isViewRevealPending:G,onRangeChange:$});Sa({items:e,scroller:Ne,readTopReportId:Z});let _e=Fe((A,k)=>{if(ie.current===null)return!1;let W=R.current,re=k!==null&&k.reportHubId===A?Te(W,A,k.index):Tt(W,A);return re===-1?!1:(c.current&&(c.current=!1,A===u.current)||k!==null&&k.reportHubId===A&&k.index===re||Ne.toIndex(re,{align:"top"}),!0)},[ie,Tt,Ne]);br(()=>{let A=D.current;D.current=null,I.current=null,n!=null&&(_e(n,A)||(I.current=n))},[n,_e]),br(()=>{let A=I.current;A!==null&&_e(A,null)&&(I.current=null)},[e,_e]),br(()=>{let A=a?.current;A&&(A.anchorReportHubId=n??null)},[n,a]),br(()=>{D.current=null},[T]);let ge=ze(null),Xe=Fe(()=>{ie.current&&(ge.current=ie.current);let A=a?.current,k=ge.current;if(A&&k){let re=k.getScrollAnchor(),Ee=re===null?void 0:ye(R.current,re.index);re&&Ee&&(A.topItem={reportHubId:Ee.reportHubId,index:re.index,offsetPx:re.offsetPx})}let W=f.current;W&&(W.toggleAttribute(Kr,!0),g.current&&clearTimeout(g.current),g.current=setTimeout(()=>{W.toggleAttribute(Kr,!1),g.current=null},150))},[ie,a]),tt=Fe(A=>Xt(Ra,{...A,store:b}),[b]);br(()=>{let A=f.current;if(!A)return;let k=()=>{b.setWheelScrollActive(!0),m.current&&clearTimeout(m.current),m.current=window.setTimeout(()=>{b.setWheelScrollActive(!1),m.current=null},Jo)};return A.addEventListener("wheel",k,{passive:!0}),()=>{A.removeEventListener("wheel",k),m.current&&clearTimeout(m.current)}},[b]);let v=ze(null),H=Fe(A=>{for(let k of A){let W=k.target.parentElement,re=W===null?null:Ir(W),Ee=W===null?null:on(W),pt=k.borderBoxSize[0];if(re===null||Ee===null||pt===void 0)continue;let Mt=pt.blockSize+2*rr;if(p.current.get(re)===Mt)continue;let Wr=Te(R.current,re,Ee-1);Wr!==-1&&(p.current.set(re,Mt),Ne.resizeRow(Wr,Mt))}},[Ne]),z=Fe(A=>{v.current===null&&(v.current=new ResizeObserver(H));let k=v.current;return k.observe(A),()=>k.unobserve(A)},[H]);br(()=>()=>{v.current?.disconnect(),v.current=null},[]),br(()=>{O!==0&&j(0,Math.min(O-1,Qo))},[O,j]);let S=ze(null),C=Fe(A=>{let k=Te(R.current,A,null);k!==-1&&(S.current!==null&&clearTimeout(S.current),S.current=setTimeout(()=>{S.current=null;let W=Te(R.current,A,k);W!==-1&&Ne.toIndex(W,{align:"bottom"})},CT))},[Ne]);br(()=>()=>{S.current!==null&&clearTimeout(S.current)},[]);let K=Fe(A=>{if(!E.current)return;let k=cr(A.target,f.current);if(k===null||Gc(A.target,k))return;let W=zn(k,R.current);W!==null&&(Ae(W.reportHubId,W.index),P(W.reportHubId,W.index))},[P,Ae]),N=Fe((A,k)=>Xt(zt.Provider,{value:k,children:Xt(ef,{item:A,observeRowHeight:z,onCommentAdded:C,userId:r,cursor:ue})},A.reportHubId),[z,C,r,ue]),X=gl(()=>({...ta,renderThumbOverlay:tt}),[tt]),L=gl(()=>Xt($t.Provider,{value:M,children:Xt(ET,{ref:me,itemCount:O,getItem:F,getItemKey:V,getItemHeight:Y,viewportSize:s,initialScrollAnchor:l,overscanCount:ea,scrollBarOptions:X,behaviorOptions:i?TT:mf,onRangeChange:We,onScrollAdjust:je,onScroll:Xe,testId:pf,className:xT,locale:y.locale,labels:y.labels,contentProps:ut,children:N})}),[me,M,O,F,V,Y,s,i,l,X,We,je,Xe,y.locale,y.labels,ut,N]);return Xt(_T,{children:vT("div",{ref:qe,className:AT,...pe,onClick:K,children:[Dt,L]})})};import yf from"lucide-react/dist/esm/icons/refresh-cw.js";import{createContext as LT,useContext as NT,useLayoutEffect as OT,useRef as MT}from"react";import{jsx as ff,jsxs as wT}from"react/jsx-runtime";var ho=e=>10**String(e).length-1,ys=({text:e,widestText:t,ref:r})=>wT("span",{ref:r,className:Td,children:[ff("span",{"aria-hidden":"true",className:xd,children:t}),ff("span",{className:Ad,children:e})]});import{jsx as Fr,jsxs as hs}from"react/jsx-runtime";var Dl=LT(!0),kT=`inline-flex rounded-full empty:not-focus:hidden ${ne}`,PT=x(Ke,"gap-1 bg-blue-100 font-medium text-blue-800 text-xs tabular-nums dark:bg-blue-900/40 dark:text-blue-300"),FT=x(Ke,"gap-1 bg-amber-100 font-medium text-amber-800 text-xs tabular-nums dark:bg-amber-900/40 dark:text-amber-300"),HT=x(Ke,"gap-1 bg-rose-100 font-medium text-rose-800 text-xs dark:bg-rose-900/40 dark:text-rose-300"),BT=x("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",ne),UT=(e,t,r)=>{if(r===null||r===0)return{text:e.streamProgressCount(t),widestText:e.streamProgressCount(ho(t))};let n=ho(Math.max(t,r));return{text:e.streamProgressRatio(t,r,Math.min(100,Math.round(t/r*100))),widestText:e.streamProgressRatio(n,n,100)}},VT=({labels:e,loadedCount:t,totalCount:r})=>{let{text:n,widestText:o}=UT(e,t,r);return hs("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"streaming",className:PT,children:[Fr("span",{"aria-hidden":"true",className:"size-2 rounded-full bg-blue-500 dark:bg-blue-400"}),Fr(ys,{text:n,widestText:o})]})},WT=(e,t,r,n)=>e.phase==="streaming"?Fr(VT,{labels:t,loadedCount:e.loadedCount,totalCount:e.totalCount}):e.phase==="retrying"?hs("span",{role:r?"status":void 0,"data-testid":"daily-report-ids-stream-status","data-phase":"retrying",className:FT,children:[Fr(yf,{"aria-hidden":"true",className:"size-3 motion-safe:animate-spin"}),t.streamRetrying(e.loadedCount)]}):e.phase==="failed"?hs("span",{role:r?"status":void 0,"data-testid":"daily-report-ids-stream-status","data-phase":"failed",className:HT,children:[t.streamFailed,Fr("button",{type:"button","data-testid":"daily-report-ids-stream-retry",onClick:n,className:BT,children:t.streamRetry})]}):e.isRevalidating?hs("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:[Fr(yf,{"aria-hidden":"true",className:"size-3 motion-safe:animate-spin"}),t.streamRevalidating]}):null,bo=()=>{let e=Du(),{labels:t}=q(),r=NT(Dl),n=MT(null),a=WT(e,t,r,()=>{vt([n.current]),_a()}),s=a===null;return OT(()=>{let i=n.current;!s||i===null||!i.contains(Ie(i))||vt(ka(i.ownerDocument))},[s]),Fr("span",{ref:n,tabIndex:-1,"data-daily-report-stream-status":"",className:kT,children:a})};import{Panel as Ff,PanelGroup as fA,PanelResizeHandle as yA}from"@aiquants/resize-panels";import{VirtualScroll as hA}from"@aiquants/virtualscroll";import{useCallback as gt,useEffect as Ds,useLayoutEffect as Ml,useMemo as Ol,useRef as Ur,useState as xs}from"react";import{useSyncExternalStore as KT}from"react";var hf="(max-width: 639px)",$T=()=>{},zT=e=>{if(typeof window>"u"||typeof window.matchMedia!="function")return $T;let t=window.matchMedia(hf);return t.addEventListener("change",e),()=>t.removeEventListener("change",e)},jT=()=>typeof window<"u"&&typeof window.matchMedia=="function"?window.matchMedia(hf).matches:!1,YT=()=>!1,bf=()=>KT(zT,jT,YT);import{SwipeCloseGuardContext as Sx,useOverlayEscapeStack as gx,useSwipeGuardState as Ex,useSwipeToDismissOverlay as Dx,useTapClick as Tx,useTransitionDisplay as xx}from"@aiquants/swipe-overlay";import{useCallback as Ss,useEffect as xn,useId as _l,useLayoutEffect as wl,useRef as St,useState as gs}from"react";import{useMemo as GT}from"react";var Ro=(e,t)=>{let{id:r,indexHint:n}=t;return GT(()=>{if(r===null)return null;let o=Te(e,r,n);return o===-1?null:It(e,o)},[e,r,n])};import qT from"lucide-react/dist/esm/icons/check.js";import XT from"lucide-react/dist/esm/icons/pencil.js";import QT from"lucide-react/dist/esm/icons/trash-2.js";import{memo as ZT,useCallback as Hr,useDeferredValue as JT,useEffect as Al,useId as gf,useLayoutEffect as Cl,useMemo as To,useRef as Do,useState as Ef,useSyncExternalStore as ex}from"react";import*as Qt from"@radix-ui/react-tabs";import*as et from"react";import{jsx as Dn}from"react/jsx-runtime";var Rf=et.createContext(null),Sf=e=>{let t=et.useContext(Rf);if(t===null)throw new Error(`[daily-report] ${e} must be rendered inside Tabs`);return t},Tl=(e,t)=>`${e}-trigger-${t}`,xl=(e,t)=>`${e}-panel-${t}`,So=et.forwardRef(({value:e,children:t,...r},n)=>{let o=et.useId(),a=et.useMemo(()=>({baseId:o,value:e}),[o,e]);return Dn(Qt.Root,{ref:n,value:e,...r,children:Dn(Rf,{value:a,children:t})})});So.displayName=Qt.Root.displayName;var go=et.forwardRef(({className:e,...t},r)=>Dn(Qt.List,{ref:r,className:x("inline-flex",e),...t}));go.displayName=Qt.List.displayName;var Eo=et.forwardRef(({className:e,value:t,...r},n)=>{let{baseId:o}=Sf("TabsTrigger");return Dn(Qt.Trigger,{ref:n,value:t,...r,id:Tl(o,t),"aria-controls":xl(o,t),className:x(`${fd} ${ne}`,e)})});Eo.displayName=Qt.Trigger.displayName;var Tn=et.forwardRef(({className:e,value:t,tabStop:r,children:n,...o},a)=>{let{baseId:s,value:i}=Sf("TabsContent"),l=t===i,d="mt-2 data-[state=inactive]:hidden";return r?Dn("div",{ref:a,role:"tabpanel",id:xl(s,t),"aria-labelledby":Tl(s,t),"data-state":l?"active":"inactive",hidden:!l,tabIndex:0,...o,className:x(`${d} ${ne}`,e),children:l?n:null}):Dn("div",{ref:a,role:"tabpanel",id:xl(s,t),"aria-labelledby":Tl(s,t),"data-state":l?"active":"inactive",hidden:!l,...o,className:x(d,e),children:l?n:null})});Tn.displayName="TabsContent";import{jsx as Q,jsxs as Zt}from"react/jsx-runtime";var xf=x(gr,"w-24 shrink-0"),Df={field:"flex items-baseline",label:xf,value:"flex-1"},tx={field:"flex min-w-0 flex-1 items-baseline",label:xf,value:"wrap-break-word min-w-0 flex-1"},rx={field:"flex flex-col gap-1",label:gr,value:""},nx={field:"flex min-w-0 items-center gap-1",label:x(gr,"shrink-0 whitespace-nowrap"),value:""},ox="flex min-h-4 flex-wrap items-center gap-x-2 gap-y-1 text-slate-500 text-xs dark:text-slate-300",Tf=x("flex-1 touch-pan-y overflow-y-auto overflow-x-hidden pt-2 text-sm",Ls,Zl,Ql),ax=x("flex flex-col gap-1",Ns),sx=x(pd,"grid grid-cols-2 gap-1"),ix=x("m-0 font-normal text-slate-900 text-sm dark:text-slate-100",ne),Il=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)})}},lx=(e,t,r,n,o,a)=>{let s=Do(null),i=e?.reportHubId;Cl(()=>{s.current=null},[i]),Al(()=>{n||(s.current=null)},[n]);let l=Hr(async(d,c)=>{c||(s.current=d.reportHubId);try{await a(d.reportHubId,!d.isRead,d.date)}catch{}},[a]);return Al(()=>{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}},vl="article",dx=["article","relations"],cx=e=>{if(e==="article"||e==="relations")return e;throw new Error(`[daily-report] unknown side-pane tab: ${e}`)},ux=x("hidden h-full min-h-0 w-full min-w-0 flex-1 flex-col gap-4 sm:flex",xt),px=x("flex h-full flex-1 items-center justify-center text-center",$r),mx=9,fx=.875,yx=16,Af=4*Math.ceil((2*rr+2*Lo+2*td+mx*fx*yx)/4),Cf=({dailyReportItems:e,selectionStore:t,autoMarkRead:r,userId:n,onReportDeleted:o})=>{let{labels:a}=q(),s=gf(),i=gf(),[l,d]=Ef(vl),{selected:c,settled:u}=ex(t.subscribe,t.getSnapshot,t.getSnapshot),p=Ro(e,c),f=Ro(e,JT(u)),y=p===null?null:p.reportHubId,b=(f===null?null:f.reportHubId)===y,[m]=Ef(()=>Il(b));return Cl(()=>{m.set(b)},[m,b]),Q("aside",{"data-testid":"daily-report-side-pane","data-report-id":p?.reportHubId,"data-displayed-report-id":f?.reportHubId,"aria-busy":b?void 0:!0,className:ux,children:f===null?Q("div",{className:px,children:Q("p",{className:Ht,children:a.selectPrompt})}):Q(Rs,{item:f,headingId:s,authorId:i,activeTab:l,onActiveTabChange:d,autoMarkRead:r,isActive:!0,dwell:m,userId:n,onReportDeleted:o},f.reportHubId)})},Rs=ZT(({item:e,headingId:t,authorId:r,activeTab:n,onActiveTabChange:o,autoMarkRead:a,isActive:s,dwell:i,userId:l,onReportDeleted:d})=>{let{labels:c,sourceTypeConfigs:u,headingLevel:p}=q(),{report:f,error:y,isLoading:h}=Ar(e.reportHubId,e.businessDate),b=ur(),m=Ma(e.reportHubId),g=m==="editing"||m==="automatic",R=Do(null),E=Do(null),D=Do(!1),T=Do(!1),_=!!(l&&f?.userId===l),I=f?.isDraft===!0;Al(()=>{f!==null&&(_&&I&&m==="display"?b.open(e.reportHubId,yn(f),!0):!I&&m==="automatic"&&b.discard(e.reportHubId))},[f,_,I,m,b,e.reportHubId]);let O=To(()=>f===null?void 0:()=>{D.current=!0,b.open(e.reportHubId,yn(f),!1)},[b,e.reportHubId,f]),M=Hr(()=>{T.current=!0,b.dismiss(e.reportHubId)},[b,e.reportHubId]),F=Hr(()=>{T.current=!0,b.discard(e.reportHubId)},[b,e.reportHubId]),Y=Hr(G=>{G===null||!D.current||(D.current=!1,G.focus())},[]),V=Hr(G=>{G===null||!T.current||(T.current=!1,G.focus())},[]),w=Hr(()=>{E.current?.focus({preventScroll:!0})},[]);Cl(()=>{g||!T.current||(T.current=!1,E.current?.focus())},[g]);let P=Hr(()=>{setTimeout(()=>{let G=R.current;G!==null&&G.scrollTo({top:G.scrollHeight,behavior:Jc(G)})},100)},[]),j=be(e.businessDate),B=To(()=>f===null?null:Me(f.employeeName),[f]),Z=h||!f,$=f===null?void 0:Vt(f.sourceType,u);return Zt(pn,{reportHubId:e.reportHubId,children:[Zt("div",{className:ax,children:[Q("dl",{className:"m-0",children:Q(Ye,{label:c.businessDate,classNames:rx,children:Q(Je,{ref:E,level:p,id:t,tabIndex:-1,className:ix,children:j})})}),Zt("div",{className:ox,children:[Q("dl",{className:"m-0 min-w-0",children:Q(Ye,{label:c.author,classNames:nx,valueId:r,children:Z||B===null?Q("div",{"data-skeleton":!0,className:"h-3 w-24 rounded bg-slate-200 motion-safe:animate-pulse dark:bg-slate-700"}):Q(se,{fieldKey:le.field("employeeName"),raw:f?.employeeName,display:B})})}),$?Q(bn,{config:$}):null,f===null?null:Q(Ja,{isEditing:g,descriptionId:null})]})]}),Zt(So,{value:n,onValueChange:G=>o(cx(G)),className:"flex min-h-0 flex-1 flex-col",children:[Q("div",{className:Ns,children:Q(go,{"aria-label":c.reportTabList,className:sx,children:dx.map(G=>Q(Eo,{value:G,children:G==="article"?c.tabArticle:c.tabRelations},G))})}),Q(Tn,{ref:R,value:"article",tabStop:!0,className:Tf,children:g?f?Q(Za,{report:f,onCancel:M,onPublishSuccess:F,titleInputRef:Y}):Q("p",{className:$r,children:c.loading}):Q(Rx,{report:f,sourceConfig:$,isLoading:h,error:y,item:e,autoMarkRead:a,isActive:s,dwell:i,onCommentAdded:P,userId:l,onEdit:_?O:void 0,editButtonRef:V,onReportDeleted:d,onCommentSectionRemoved:w})}),Q(Tn,{value:"relations",tabStop:!0,className:Tf,children:Q("p",{className:$r,children:c.relationsEmpty})})]})]})});Rs.displayName="DailyReportSidePaneContent";var bs=({className:e="w-32"})=>Q("div",{"data-skeleton":!0,className:`h-4 rounded bg-slate-200 motion-safe:animate-pulse dark:bg-slate-700 ${e}`}),hx=["w-full","w-11/12","w-4/5"],bx=x(rd,No),Rx=({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:y,toggleRead:h,deleteReport:b}=Be(),{labels:m,headingLevel:g}=q(),R=pr[g],{handleToggleRead:E}=lx(e,r,a,s,i,h),D=e!==null&&Yo(e.sourceType,t),T=To(()=>e?.content?Hd(e.content):null,[e]),_=To(()=>Me(e?.subject),[e]),I=To(()=>Me(e?.customerName),[e]),O=async V=>{try{await y(V.reportHubId,!V.isStarred,V.date)}catch{}},M=async V=>{if(confirm(m.confirmDelete)){try{await b(V.reportHubId,V.date)}catch{return}p(V.reportHubId)}};if(n)return Q("p",{className:wn,children:m.reportLoadFailed(o.reportHubId)});let F=!e,Y=!!(d&&e?.userId===d);return Zt("div",{className:"flex flex-col gap-4 text-slate-700 dark:text-slate-200",onDoubleClick:c,children:[Zt("div",{className:"flex items-start gap-2",children:[Q("dl",{className:"m-0 flex min-w-0 flex-1",children:Q(Ye,{label:m.subject,classNames:tx,children:F?Q(bs,{className:"w-3/4"}):Q("span",{className:"text-sm",children:Q(se,{fieldKey:le.field("subject"),raw:e?.subject,display:_})})})}),!F&&e&&Zt("div",{className:"flex h-5 shrink-0 items-center gap-2 pr-2",children:[Q("button",{type:"button",onClick:()=>O(e),className:He,title:e.isStarred?m.starRemove:m.starAdd,"aria-label":e.isStarred?m.starRemove:m.starAdd,"data-detail-star-button":e.reportHubId,children:Q(hn,{filled:e.isStarred})}),Q("button",{type:"button",onClick:()=>E(e,!1),className:He,title:e.isRead?m.markUnread:m.markRead,"aria-label":e.isRead?m.markUnread:m.markRead,"data-detail-read-button":e.reportHubId,children:e.isRead?Q(qT,{className:Oe.read}):Q(Rn,{})}),c&&Q("button",{ref:u,type:"button",onClick:c,"data-detail-edit-button":e.reportHubId,className:He,title:m.edit,"aria-label":m.edit,children:Q(XT,{className:Oe.edit})}),Y&&Q("button",{type:"button",onClick:()=>M(e),"data-detail-delete-button":e.reportHubId,className:He,title:m.deleteReport,"aria-label":m.deleteReport,children:Q(QT,{className:Oe.delete})})]})]}),Q("dl",{className:"m-0",children:Q(Ye,{label:m.customer,classNames:Df,children:F?Q(bs,{className:"w-1/2"}):Q("span",{className:"text-sm",children:Q(se,{fieldKey:le.field("customerName"),raw:e?.customerName,display:I})})})}),Zt("div",{className:"flex flex-col gap-2",children:[Q(Je,{level:R,className:Ft,children:m.content}),Q("div",{className:bx,children:F?hx.map(V=>Q("div",{className:nd,children:Q(bs,{className:V})},V)):T!==null&&T.text.length>0?Q("div",{className:"whitespace-pre-wrap",children:Q(se,{fieldKey:le.field("content"),raw:e?.content,display:T})}):Q("p",{className:"text-slate-500 dark:text-slate-400",children:m.contentEmpty})})]}),Q("dl",{className:"m-0",children:Q(Ye,{label:m.visitTime,classNames:Df,children:F?Q(bs,{className:"w-1/3"}):Zt("span",{className:"text-sm",children:[sr(e?.visitTimeFrom)," ",e?.visitTimeFrom&&e?.visitTimeTo?"-":""," ",sr(e?.visitTimeTo)]})})}),e&&Q(ja,{attachments:e.attachments}),e&&Q(co,{report:e,userId:d,canComment:D,onCommentAdded:l,onSectionRemoved:f,formPlacement:"in-section",sectionClassName:"border-slate-100 border-t border-solid pt-4 dark:border-slate-800"})]})};import{jsx as Rr,jsxs as If}from"react/jsx-runtime";var Ax="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]",Cx={right:"var(--aqdr-overlay-right, 0px)"},Ix="absolute inset-0 touch-manipulation bg-slate-900/50 motion-safe:transition-opacity motion-safe:duration-200",vx=x("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",Dd),_x=x("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",ne),wx="flex shrink-0 justify-center empty:hidden",Lx=50,vf=({isMobileLayout:e,selection:t,dailyReportItems:r,onSelectItem:n,rootRef:o})=>{let a=t.id,[s,i]=gs(!1),[l,d]=gs(!1),c=St(null),u=St(null),p=St(null),f=St(e),y=St(!0),h=Ro(r,t),b=Ss(()=>{let E=o.current;if(E===null)return;let D=E.ownerDocument.body;p.current={body:D,overflow:D.style.overflow},D.style.overflow="hidden"},[o]),m=Ss(()=>{let E=p.current;E!==null&&(E.body.style.overflow=E.overflow,p.current=null)},[]);xn(()=>{if(y.current){y.current=!1,f.current=e;return}let E=!f.current;f.current=e,E&&e&&a!==null?i(!0):!e&&s&&(u.current=a,i(!1),m())},[e,a,s,m]);let g=e&&s&&h!==null;xn(()=>{if(g)d(!0);else{let E=setTimeout(()=>d(!1),300);return()=>clearTimeout(E)}},[g]),xn(()=>{if(e&&s&&a!==null&&!c.current){let E=`overlay-${Date.now()}`;window.history.pushState({...window.history.state,dailyReportOverlay:E},"",window.location.href),c.current=E}else!(e&&s)&&c.current&&(c.current=null);return e&&s?b():m(),m},[e,s,a,b,m]),xn(()=>{let E=()=>{c.current&&(u.current=a,c.current=null,i(!1),n(null))};return window.addEventListener("popstate",E),()=>window.removeEventListener("popstate",E)},[a,n]);let R=Ss(()=>{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:h}},_f=({isOpen:e,selectedItem:t,onClose:r,autoMarkRead:n=!1,userId:o,onReportDeleted:a})=>{let{labels:s}=q(),{registerNoticeHost:i}=Fa(),l=St(null),d=St(null),c=_l(),u=_l(),[p,f]=gs(vl),y=gx(),h=_l(),b=St(!1),m=St(e),g=St(null),[R]=gs(()=>Il(e)),{isBlocked:E,requestBlock:D,reset:T}=Ex(),_=xx(e,t),{overlayRef:I,overlayStyle:O,attemptClose:M,isSwiping:F}=Dx({isOpen:e,onClose:r,isCloseBlocked:Ss(()=>E,[E]),skipWhenTextSelected:!0}),Y=St(M);wl(()=>{Y.current=M,m.current=e,R.set(e)},[M,e,R]),xn(()=>{if(e)return y({id:h,onEscape:B=>Yt(B)&&Y.current()})},[e,y,h]),wl(()=>{let B=l.current;if(B===null)return;if(e){if(b.current)return;B.showModal(),b.current=!0,B.ownerDocument.getElementById(c)?.focus();return}if(!b.current)return;b.current=!1;let Z=Ie(B);Z!==null&&B.contains(Z)&&Bn(Z)&&Z.blur(),B.close()},[e,c]),wl(()=>{let B=d.current;if(!(!e||B===null))return i(B)},[e,i]),xn(()=>{e||T()},[e,T]);let V=Tx(()=>M()),w=B=>{let Z=un(B);if(Yt(Z)){M()&&B.preventDefault();return}if(Z.key==="Escape"){g.current=B.timeStamp;return}let $=Bu(Z,B.currentTarget);$!==null&&(B.preventDefault(),$.kind==="wrap"&&$.element.focus())},P=B=>{B.preventDefault();let Z=g.current;g.current=null,!(Z!==null&&B.timeStamp-Z<=Lx)&&Y.current()},j=B=>{let Z=B.currentTarget;Z.open||!m.current||(b.current=!1,!Y.current()&&(Z.showModal(),b.current=!0))};return _?If("dialog",{ref:l,"data-daily-report-mobile-overlay":"true","aria-labelledby":`${c} ${u}`,tabIndex:-1,className:x(Ax,e&&!F?"pointer-events-auto":"pointer-events-none"),style:Cx,inert:!e,onKeyDown:w,onCancel:P,onClose:j,children:[Rr("div",{"aria-hidden":"true","data-daily-report-overlay-backdrop":"",className:x(Ix,e?"opacity-100":"opacity-0"),...V}),Rr("div",{ref:I,"data-daily-report-overlay-panel":"",className:x(vx,e?"pointer-events-auto":"pointer-events-none"),style:O,children:If("div",{className:"flex h-full w-full flex-col gap-4 p-4",children:[Rr(Sx.Provider,{value:{isBlocked:E,requestBlock:D},children:Rr("div",{"data-testid":"daily-report-side-pane","data-report-id":_.reportHubId,"data-displayed-report-id":_.reportHubId,className:"flex min-h-0 flex-1 flex-col gap-4",children:Rr(Rs,{item:_,headingId:c,authorId:u,activeTab:p,onActiveTabChange:f,autoMarkRead:n,isActive:e,dwell:R,userId:o,onReportDeleted:a},_.reportHubId)})}),Rr("div",{ref:d,"data-daily-report-notice-slot":"","data-overlay-interactive":"true",className:wx}),Rr("div",{className:"flex justify-start",children:Rr("button",{type:"button","data-overlay-interactive":"true",className:_x,onClick:()=>M(),children:s.close})})]})})]}):null};import zx from"lucide-react/dist/esm/icons/check.js";import{createContext as jx,memo as Mf,useCallback as Yx,useContext as Br,useEffect as Gx,useId as An,useMemo as Ll,useRef as qx}from"react";import{createContext as Nx,createElement as Ox,useLayoutEffect as Mx,useMemo as kx,useRef as Px,useState as Fx}from"react";var Hx=6.75,Bx=4,Ux=1e-6,Vx=e=>4*Math.ceil((2*rr+2*Lo+Bx+Hx*e-Ux)/4),Es=Nx(null),Wx="data-daily-report-root-font-size-probe",Kx={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},$x=e=>{let t=$e(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])},wf=()=>{let e=Px(null),[t,r]=Fx(null);Mx(()=>{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=Vx($x(o));l!==a&&(a=l,r(l))};s();let i=new ResizeObserver(s);return i.observe(o),()=>i.disconnect()},[]);let n=kx(()=>Ox("div",{ref:e,"aria-hidden":!0,[Wx]:"",style:Kx}),[]);return{rowSlotHeight:t,remProbe:n}};import{jsx as te,jsxs as In}from"react/jsx-runtime";var Xx=x(or,_o,wo,vo),Qx=x("relative flex h-full w-full select-none flex-wrap content-start items-center gap-2 overflow-hidden",xt,Oo,ed),Zx="min-w-24",Jx="basis-full space-y-2 text-slate-700 text-sm leading-5 dark:text-slate-200",eA={touchAction:"manipulation"},tA=x("flex grow basis-0 cursor-pointer items-center gap-2 text-left outline-none after:absolute after:inset-0 after:rounded-2xl",Zx),rA=x("relative z-10",He),nA=x(Ke,"shrink-0 whitespace-nowrap bg-slate-100 font-medium text-slate-900 text-xs dark:bg-slate-800 dark:text-slate-100"),oA=x(Ke,"min-w-0 max-w-full bg-slate-100 font-semibold text-xs dark:bg-slate-800 dark:text-slate-200"),aA=x(ad,"ml-auto"),sA=x("flex h-full",xt),iA="flex h-full w-full flex-col justify-between motion-safe:animate-pulse",Cn="h-4 rounded bg-slate-200 dark:bg-slate-700",lA=te("div",{"data-skeleton":!0,...Qe,className:sA,children:In("div",{className:iA,children:[In("div",{className:"flex flex-wrap items-center gap-2",children:[te("div",{className:x(Cn,"w-24")}),te("div",{className:x(Cn,"w-24")}),te("div",{className:x(Cn,"w-24")})]}),In("div",{className:"space-y-2",children:[te("div",{className:x(Cn,"w-full")}),te("div",{className:x(Cn,"w-11/12")}),te("div",{className:x(Cn,"w-5/6")})]})]})}),dA=()=>lA,cA=e=>{e.target===e.currentTarget&&e.preventDefault()},uA="h-full w-full",kf=jx(!1),Lf=({reportHubId:e,cursor:t,cardless:r,children:n})=>{let o=Br(zt),a=Br($t),s=Br(Es);if(s===null)throw new Error("[daily-report] a List row frame is rendered outside the List view (no measured row slot)");let i=Ll(()=>({height:s}),[s]),{isCurrent:l,isTabStop:d}=us(t,e),c=ps(t,e,o);return te(so.Provider,{value:d,children:te(kf.Provider,{value:l,children:te("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:Xx,style:i,onMouseDown:cA,children:c?n:te("div",{...Qe,className:uA})})})})},pA=({id:e})=>{let{labels:t}=q(),r=Br(zt),n=Br($t);return te("span",{id:e,hidden:!0,children:n===jn?t.listRowPositionInUnknownTotal(r+1):t.listRowPosition(r+1,n)})},mA=({reportHubId:e,focusTargetRef:t,describedBy:r,onClick:n,children:o})=>{let a=Br(kf);return te("button",{ref:t,type:"button","data-daily-report-button":e,"aria-current":a?"true":void 0,"aria-describedby":r,onClick:n,className:tA,children:o})},Nf=({label:e,dataAttributes:t,onClick:r,children:n})=>{let o=fn();return te("button",{type:"button",title:e,"aria-label":e,tabIndex:o,...t,onClick:r,className:rA,children:n})},Pf=Mf(({item:e,report:t,onSelect:r,focusTargetRef:n})=>{let{labels:o,sourceTypeConfigs:a}=q(),{toggleStar:s,toggleRead:i}=Be(),l=An(),d=An(),c=An(),u=An(),p=An(),f=An(),y=Br(lt)!==null,h=Ll(()=>Fd(t.content??null,pc),[t.content]),b=Ll(()=>Me(t.employeeName),[t.employeeName]),m=be(e.businessDate),g=O=>{O.currentTarget.focus({preventScroll:!0});let M=Yc(O.currentTarget);M!==null&&r(e.reportHubId,M)},R=async()=>{let O=!t.isStarred;try{await s(t.reportHubId,O,t.date)}catch{}},E=async()=>{let O=!t.isRead;try{await i(t.reportHubId,O,t.date)}catch{}},D=t.isStarred?o.starRemove:o.starAdd,T=t.isRead?o.markUnread:o.markRead,_=Vt(t.sourceType,a),I=[l,c,...t.attachments.length>0?[u]:[],..._===void 0?[]:[p],d,...y?[f]:[]].join(" ");return te("div",{"data-daily-report-card":!0,...Qe,style:eA,className:Qx,children:In(pn,{reportHubId:e.reportHubId,children:[te(pA,{id:l}),te("span",{id:c,className:"sr-only",children:o.rowState({isRead:t.isRead,isStarred:t.isStarred})}),In(mA,{reportHubId:e.reportHubId,focusTargetRef:n,describedBy:I,onClick:g,children:[te("span",{className:nA,children:m})," ",te("span",{className:oA,children:te("span",{className:"truncate font-medium text-slate-900 dark:text-slate-100",children:te(se,{fieldKey:le.field("employeeName"),raw:t.employeeName,display:b})})})]}),In("div",{className:aA,children:[te(Ln,{id:u,count:t.attachments.length,label:o.attachments}),_?te(bn,{id:p,config:_}):null,te(Nf,{label:D,dataAttributes:{"data-list-star-button":e.reportHubId},onClick:R,children:te(hn,{filled:t.isStarred})}),te(Nf,{label:T,dataAttributes:{"data-list-read-button":e.reportHubId},onClick:E,children:t.isRead?te(zx,{className:Oe.read}):te(Rn,{})})]}),te("div",{id:d,className:Jx,children:h.length>0?h.map((O,M)=>te("p",{className:"wrap-break-word line-clamp-1",children:te(se,{fieldKey:le.field("content"),raw:t.content,display:O})},M)):te("p",{children:o.contentEmptyPreview})}),te(fm,{id:f})]})})});Pf.displayName="ListReportCard";var Of=(e,t)=>Yx(r=>(e.registerFocusTarget(t,r),()=>e.unregisterFocusTarget(t,r)),[e,t]),Nl=Mf(({item:e,onSelect:t,cursor:r})=>{let{labels:n}=q(),{removeStaleItem:o}=Be(),{report:a,error:s,isLoading:i,isRefetching:l}=Ar(e.reportHubId,e.businessDate),d=qx(!1);Gx(()=>{if(l){d.current=!0;return}!(a||i||s)&&d.current&&e.reportHubId>0&&o(e.reportHubId)},[a,i,l,s,e.reportHubId,o]);let c=Of(r,e.reportHubId),u=Of(r,e.reportHubId),p=(f,y)=>te(Lf,{reportHubId:e.reportHubId,cursor:r,cardless:{label:be(e.businessDate),isBusy:y,focusTargetRef:c},children:f});return s?p(te("div",{...Qe,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:te("p",{children:n.reportSummaryLoadFailed(e.reportHubId)})}),!1):i?p(te(dA,{}),!0):a?te(Lf,{reportHubId:e.reportHubId,cursor:r,cardless:null,children:te(Pf,{item:e,report:a,onSelect:t,focusTargetRef:u})}):p(te("div",{...Qe,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:te("p",{children:n.reportNotFound})}),!1)});Nl.displayName="ListReportItem";import{Fragment as LA,jsx as Ge,jsxs as Ts}from"react/jsx-runtime";var Bf={pointerDragInputs:ra,inertiaOptions:an(!1),wheelSpeedMultiplier:Xo,enableKeyboardNavigation:!1,resetOnGetItemHeightChange:!0},bA={...Bf,inertiaOptions:an(!0)},RA=Object.freeze({value:360,unit:"pixels"}),SA=Object.freeze({value:160,unit:"pixels"}),gA=Object.freeze({value:Af,unit:"pixels"}),EA=Object.freeze({value:520,unit:"pixels"}),DA=Object.freeze({visible:!0,thickness:6,length:32,barThickness:2,barLength:16}),TA=x("cursor-col-resize rounded hover:bg-slate-200/60 focus:ring-0 dark:hover:bg-slate-700/60",ne),xA=x("relative w-full",Bo,Ho),AA=x(rt,"relative isolate overflow-hidden"),Hf="daily-report-list",CA=()=>!1,IA=e=>{let[t,r]=xs(!1);return Ml(()=>{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<uc)},a=new($e(n)).ResizeObserver(o);return a.observe(n),()=>a.disconnect()},[e]),t},kl=e=>{let t=Ur(null),[r,n]=xs(null),o=ca(t),a=IA(t),{rowSlotHeight:s,remProbe:i}=wf(),l=sn(r),d=gt(c=>(t.current=c,n(c),()=>{t.current=null,n(null)}),[]);return Ts("div",{ref:d,className:Po,"data-testid":"daily-report-root",children:[i,o===null||s===null?null:Ge(vA,{...e,rootRef:t,viewportHeight:o,rowSlotHeight:s,isContainerNarrow:a,reducedMotion:l})]})},vA=({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]=xs(()=>s?.current??0),f=Ur(null),{labels:y}=q(),h=ia(),[b]=xs(ba),g=bf()||c,R=Ur(null),E=e.length,D=t===void 0?E:t,T=Ur(null),_=gt(L=>o(L),[o]),I=gt(L=>{let A=ye(e,L);return A===void 0?Zo:A},[e]),O=Ur(null),M=gt(L=>{let A=I(L.visibleStartIndex);A.reportHubId>0&&(b.setLabel(be(A.businessDate)),O.current=A.reportHubId)},[I,b]),F=gt(()=>O.current,[]),Y=Ol(()=>({kind:"uniform",rowHeight:d}),[d]),V=Ur(e);Ml(()=>{V.current=e},[e]);let{cursor:w,containerProps:P,handleRangeChange:j,handleScrollAdjust:B,attachVirtualScroll:Z,handleRef:$,scroller:G,attachScrollContainer:ue,contentProps:pe,keyboardHelp:We,selection:je,selectionStore:me,resolveSelectedIndex:ie,rememberSelection:Ne,focusAfterRemoval:qe}=ms({items:e,selectedId:n,onSelect:_,containerRef:f,rootRef:i,testId:Hf,itemsRef:V,rowSizing:Y,arrowAlign:"nearest",rowActivation:!1,isViewRevealPending:CA,onRangeChange:M});Sa({items:e,scroller:G,readTopReportId:F});let{isMobileDetailOpen:ut,setIsMobileDetailOpen:Dt,isOverlayMounted:Tt,shouldShowOverlay:Ae,handleOverlayClose:_e,lastClosedItemIdRef:ge,selectedItem:Xe}=vf({isMobileLayout:g,selection:je,dailyReportItems:e,onSelectItem:o,rootRef:i});Ds(()=>{let L=f.current,A=()=>{b.setWheelScrollActive(!0),R.current&&clearTimeout(R.current),R.current=window.setTimeout(()=>{b.setWheelScrollActive(!1),R.current=null},Jo)};return L?.addEventListener("wheel",A,{passive:!0}),()=>{L?.removeEventListener("wheel",A),R.current&&clearTimeout(R.current)}},[b]),Ds(()=>{!E&&n!==null&&o(null)},[E,n,o]),Ds(()=>{if(ut||ge.current===null)return;let L=ge.current;ge.current=null;let A=ie(e,L);if(A===-1)return;let k=$.current;if(k!==null){let W=mo(k,A,e.length,Y),re=W===null?"none":Om(W);re!=="none"&&G.toIndex(A,{align:re})}w.requestFocus(L)},[ut,e,ge,w,ie,$,Y,G]),Ds(()=>{let L=ye(e,0);L!==void 0&&b.setLabel(be(L.businessDate))},[e,b]);let tt=gt((L,A)=>{L<=0||(Ne(L,A),o(L),g&&Dt(!0))},[g,o,Dt,Ne]),v=gt(()=>d,[d]),H=Ur(d);Ml(()=>{let L=H.current;H.current=d;let A=$.current;if(L===d||A===null)return;let k=A.getScrollPosition();k>0&&G.by(k*d/L-k)},[$,d,G]);let z=gt(L=>I(L).reportHubId,[I]),S=gt((L,A)=>Ge(zt.Provider,{value:A,children:Ge(Nl,{item:L,onSelect:tt,cursor:w})},L.reportHubId),[tt,w]),C=gt(L=>{s&&(s.current=L);let A=f.current;A&&(A.toggleAttribute(Kr,!0),T.current&&clearTimeout(T.current),T.current=setTimeout(()=>{A.toggleAttribute(Kr,!1),T.current=null},150))},[s]),K=gt(L=>Ge(Ra,{...L,store:b}),[b]),N=Ol(()=>Ts("div",{ref:ue,className:AA,...P,children:[We,Ge($t.Provider,{value:D,children:Ge(Es.Provider,{value:d,children:Ge(hA,{ref:Z,itemCount:E,getItem:I,getItemKey:z,getItemHeight:v,viewportSize:l,initialScrollOffset:p,overscanCount:ea,scrollBarOptions:{...ta,renderThumbOverlay:K},behaviorOptions:u?bA:Bf,onRangeChange:j,onScrollAdjust:B,onScroll:C,testId:Hf,className:xA,locale:h.locale,labels:h.labels,contentProps:pe,children:S})})})]}),[ue,Z,P,D,E,I,z,v,l,d,u,p,K,j,B,C,We,pe,h.locale,h.labels,S]),X=Ol(()=>Ts(fA,{direction:"horizontal",className:"min-h-0 flex-1","data-testid":"daily-report-panel-group",children:[Ge(Ff,{id:"daily-report-list-panel",defaultSize:RA,minSize:SA,maxSize:EA,contentOverflow:"hidden",className:_A,children:N}),Ge(yA,{id:"daily-report-list-handle",thickness:10,indicator:DA,className:TA,"aria-label":y.resizeHandle}),Ge(Ff,{id:"daily-report-detail-panel",minSize:gA,contentOverflow:"hidden",className:wA,children:Ge(Cf,{dailyReportItems:e,selectionStore:me,autoMarkRead:r,userId:a,onReportDeleted:qe})})]}),[N,y.resizeHandle,e,me,r,a,qe]);return Ts(LA,{children:[Ge("div",{className:Fo,children:g?Ge("div",{className:rt,children:N}):X}),Tt&&Ge(_f,{isOpen:Ae,selectedItem:Xe,onClose:_e,autoMarkRead:g&&r,userId:a,onReportDeleted:qe})]})},_A=x("flex min-h-0",Xl),wA=x("flex min-h-0 flex-1",or);import{useCallback as ZC,useEffect as _y,useLayoutEffect as Ly,useRef as Ny,useState as ql}from"react";import vC from"lucide-react/dist/esm/icons/plus.js";import _C from"lucide-react/dist/esm/icons/refresh-cw.js";import wC from"lucide-react/dist/esm/icons/rotate-cw.js";import{useEffect as Yl,useId as Cy,useLayoutEffect as Iy,useMemo as ws,useRef as _n,useState as Vr}from"react";import{useSearchParams as LC}from"react-router";import{useEffect as NA,useRef as Uf,useState as OA}from"react";var Vf=(e,t,r=250)=>{let n=sn(t),[o,a]=OA(e),s=Uf(e),i=Uf(!0);return NA(()=>{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=$e(t),c=0,u=null,p=f=>{u===null&&(u=f);let y=Math.min(1,Math.max(0,(f-u)/r)),h=1-(1-y)**3,b=Math.round(l+(e-l)*h);s.current=b,a(b),y<1&&(c=d.requestAnimationFrame(p))};return c=d.requestAnimationFrame(p),()=>d.cancelAnimationFrame(c)},[e,r,n,t]),n?e:o};import qA from"lucide-react/dist/esm/icons/x.js";import{useEffect as qf,useId as Is,useLayoutEffect as XA,useRef as xo,useState as Xf}from"react";var Hl=Object.freeze({maxValuesPerFacet:16,maxValueLength:200,maxTotalValueLength:300}),MA=["author","sourceType","customer"],Bl=Object.freeze({authors:Object.freeze([]),sourceTypes:Object.freeze([]),customers:Object.freeze([])}),kA=/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,PA=e=>{let t=e.trim();return t.length===0?null:t.replace(kA,"\uFFFD")},Wf=e=>{let t=PA(e);return t===null?"filter-blank-value":t!==e?"filter-value-not-canonical":e.length>Hl.maxValueLength?"filter-value-too-long":null},FA=e=>{if(e.length>Hl.maxValuesPerFacet)return"filter-too-many-values";let t=new Set;for(let r of e){let n=Wf(r);if(n!==null)return n;if(t.has(r))return"filter-duplicate-value";t.add(r)}return null},HA=e=>{let t=0;for(let r of e.authors)t+=r.length;for(let r of e.customers)t+=r.length;return t},As=e=>{for(let t of[e.authors,e.sourceTypes,e.customers]){let r=FA(t);if(r!==null)return r}return HA(e)>Hl.maxTotalValueLength?"filters-too-long":null},Pl=e=>[...new Set(e)].sort((t,r)=>t<r?-1:1),Cs=e=>({authors:Pl(e.authors),sourceTypes:Pl(e.sourceTypes),customers:Pl(e.customers)}),Sr=e=>e.trim().length===0,vn=e=>e.authors.length===0&&e.sourceTypes.length===0&&e.customers.length===0,Kf=(e,t)=>{let r=Cs(t);for(let n of r.authors)e.append(Ce.searchAuthor,n);for(let n of r.sourceTypes)e.append(Ce.searchSourceType,n);for(let n of r.customers)e.append(Ce.searchCustomer,n)},Fl=e=>{if(!Array.isArray(e))return null;let t=[],r=new Set;for(let n of e){if(typeof n!="string"||Wf(n)!==null||r.has(n))return null;r.add(n),t.push(n)}return t},$f=e=>{if(!Ut(e))return null;let t=Fl(e.sourceTypes),r=Fl(e.authors),n=Fl(e.customers);return t===null||r===null||n===null?null:{sourceTypes:t,authors:r,customers:n}};import{Component as BA,Suspense as UA,useMemo as zf,useState as VA}from"react";import{jsx as Jt,jsxs as Gf}from"react/jsx-runtime";var jf="flex min-h-6 items-center text-slate-600 text-xs dark:text-slate-300",WA=[{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"}],KA=(e,t)=>t==="author"?e.author:t==="sourceType"?e.searchFilterSourceType:e.customer,$A=(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},Ul=class extends BA{constructor(){super(...arguments);this.state={failed:!1}}static getDerivedStateFromError(){return{failed:!0}}render(){return this.state.failed?Jt("span",{className:jf,children:this.props.fallback}):this.props.children}},zA=(e,t,r,n)=>{let o=zf(()=>new Set(t.map(s=>s.value)),[t]),a=JSON.stringify(n.filter(s=>!o.has(s)));return zf(()=>{let s=JSON.parse(a);return s.length===0?t:[...t,...s.map(i=>r(e,i))]},[e,t,r,a])};function jA({renderFilterSelect:e,selectProps:t}){return e(t)}var YA=(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 GA({cell:e,labels:t,locale:r,renderFilterSelect:n,candidates:o,optionOf:a,selected:s,onSelect:i}){let l=zA(e.facet,o,a,s),d=KA(t,e.facet);return Gf("fieldset",{"data-testid":e.testId,className:Sd,children:[Jt("legend",{"data-testid":`${e.testId}-caption`,className:x(gd,Ht),children:d}),Jt(Ul,{fallback:t.searchFilterUnavailable,children:Jt(UA,{fallback:Jt("span",{className:jf,children:t.searchFiltersLoading}),children:Jt(jA,{renderFilterSelect:n,selectProps:{facet:e.facet,label:d,options:l,value:s,onChange:c=>i(e,$A(e.facet,c,l)),locale:r}})})})]})}function Yf({id:e,labelledBy:t,labels:r,locale:n,renderFilterSelect:o,facets:a,value:s,onChange:i,clearSignal:l}){let[d,c]=VA(null),u=YA(r,a,d!==null&&d.selection===s&&d.clearSignal===l),p=(y,h)=>{let b={...s,[y.key]:h};if(As(b)!==null){c({selection:s,clearSignal:l});return}c(null),i(b)},f=a.status==="ready"?a:null;return Gf("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:Jt("div",{className:Rd,children:WA.map(y=>Jt(GA,{cell:y,labels:r,locale:n,renderFilterSelect:o,candidates:f.options[y.key],optionOf:f.optionOf,selected:s[y.key],onSelect:p},y.facet))}),Jt("span",{"data-testid":"daily-report-search-filters-status","aria-live":"polite",className:x("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",Ht),children:u})]})}import{jsx as er,jsxs as Vl}from"react/jsx-runtime";var QA=x("h-6 w-full min-w-0 rounded-md border border-solid bg-white pr-[24px] pl-[7px] text-slate-900 text-sm dark:bg-slate-900 dark:text-slate-100",Pt,ne),Qf="inline-flex h-6 shrink-0 items-center rounded-full border border-solid px-[11px] font-semibold text-xs",vs=Object.freeze({field:x(Qf,"bg-white text-slate-800 dark:bg-slate-900 dark:text-slate-100",Pt,ne),filled:x(Qf,"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]",ne)}),ZA=Object.freeze({union:x("mr-2",vs.field),intersection:x("mr-2",vs.filled)}),Zf=Object.freeze({closed:x("ml-2",vs.field),open:x("ml-2",vs.filled)}),JA=e=>e.authors.length+e.sourceTypes.length+e.customers.length,eC=(e,t)=>t.status==="searching"?e.searching:t.status==="failed"&&t.failure!==null?e.searchFailed(t.failure):t.status==="done"&&t.items!==null?t.items.length===0?e.searchNoHits:e.searchHitCount(t.items.length):"";function Jf({labels:e,debounceMs:t,search:r,onCommit:n,onCombineChange:o,onRelease:a,clearSignal:s,filters:i}){let[l,d]=Xf(""),[c,u]=Xf(!1),p=l.length>0||r.committed!==null&&!Sr(r.committed.text),f=Is(),y=Is(),h=xo(null),b=xo(null),m=xo(!1),g=xo(s),R=Is(),E=Is(),D=xo({search:r,onCommit:n,onRelease:a});XA(()=>{D.current={search:r,onCommit:n,onRelease:a}});let T=()=>{b.current!==null&&clearTimeout(b.current),b.current=null},_=($,G,ue)=>{let pe=D.current;Sr($)?vn(ue)?pe.search.committed!==null&&pe.onRelease():pe.onCommit("",G,ue):pe.onCommit($,G,ue)},I=$=>{T();let G=D.current;_($,G.search.combine,G.search.filters)},O=$=>{t===null||m.current||(T(),b.current=setTimeout(()=>I($),t))},M=()=>{T(),d(""),vn(r.filters)?a():(r.committed===null||!Sr(r.committed.text))&&n("",r.combine,r.filters),h.current?.focus()},F=$=>{d($.target.value),O($.target.value)},Y=$=>{let G=un($);if($.key==="Enter"&&!wr(G)){$.preventDefault(),I(l);return}Yt(G)&&p&&($.preventDefault(),M())},V=()=>{T();let $=r.combine==="union"?"intersection":"union";Sr(l)&&vn(r.filters)?o($):_(l,$,r.filters)},w=$=>{c||$.facets.load(),u(!c)},P=$=>{T(),_(l,r.combine,$)};qf(()=>{g.current!==s&&(g.current=s,b.current!==null&&clearTimeout(b.current),b.current=null,d(""))},[s]),qf(()=>()=>{b.current!==null&&clearTimeout(b.current)},[]);let j=r.combine==="intersection",B=eC(e,r),Z=i!==null&&c;return Vl("search",{"data-testid":"daily-report-search",className:hd,children:[Vl("div",{className:bd,children:[er("button",{type:"button","data-testid":"daily-report-search-combine","aria-describedby":R,title:j?e.searchCombineAndTitle:e.searchCombineOrTitle,onClick:V,className:ZA[r.combine],children:j?e.searchCombineAnd:e.searchCombineOr}),Vl("div",{className:"relative min-w-0 flex-1",children:[er("input",{ref:h,type:"text","data-testid":"daily-report-search-input","aria-label":e.searchInputLabel,"aria-describedby":E,title:e.searchSyntaxHelp,placeholder:e.searchPlaceholder,value:l,onChange:F,onKeyDown:Y,onCompositionStart:()=>{m.current=!0,T()},onCompositionEnd:$=>{m.current=!1,O($.currentTarget.value)},className:QA}),p?er("button",{type:"button","data-testid":"daily-report-search-clear","aria-label":e.searchClear,title:e.searchClear,onClick:M,className:x("absolute top-0 right-0",He),children:er(qA,{"aria-hidden":"true",className:"size-4"})}):null]}),i===null?null:er("button",{type:"button",id:f,"data-testid":"daily-report-search-filters-toggle","aria-expanded":c,"aria-controls":Z?y:void 0,onClick:()=>w(i),className:c?Zf.open:Zf.closed,children:e.searchFiltersToggle(JA(r.filters))}),er("span",{id:R,hidden:!0,children:j?e.searchCombineAndTitle:e.searchCombineOrTitle}),er("span",{id:E,hidden:!0,children:e.searchSyntaxHelp}),er("span",{"data-testid":"daily-report-search-status","aria-live":"polite",className:x("ml-2 flex min-h-6 max-w-1/2 items-center self-end text-slate-600 text-xs leading-4 empty:ml-0 dark:text-slate-300",Ht),children:B})]}),Z?er(Yf,{id:y,labelledBy:f,labels:e,locale:i.locale,renderFilterSelect:i.renderFilterSelect,facets:i.facets.state,value:r.filters,onChange:P,clearSignal:s}):null]})}var ey=new WeakMap,ty=e=>{let t=new Set;for(let r of e)t.add(r.reportHubId);return{items:e,ids:t,answeredByChunk:new WeakMap}},tC=(e,t)=>e.businessDate===t.businessDate&&e.sourceType===t.sourceType,rC=(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},ry=(e,t,r)=>{if(e===null)return{items:t,hasAnswerOnlyItems:!1};let n=new Map;for(let l of Kc(t,e.answeredByChunk,d=>e.ids.has(d.reportHubId)))n.set(l.reportHubId,l);let o=[],a=!1;for(let l of e.items){let d=n.get(l.reportHubId);d!==void 0?o.push(tC(d,l)?l:d):r(l.reportHubId)||(o.push(l),a=!0)}let s=ey.get(e);if(s!==void 0&&s.list.hasAnswerOnlyItems===a&&rC(s.items,o))return s.list;let i={items:o,hasAnswerOnlyItems:a};return ey.set(e,{items:o,list:i}),i};var ny=(e,t,r)=>{let n=ye(t,0);if(n===void 0)return null;let o=it(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=ye(e,o+s);if(i!==void 0&&a.has(i.reportHubId))return i.reportHubId;let l=ye(e,o-s);if(l!==void 0&&a.has(l.reportHubId))return l.reportHubId}}return n.reportHubId},Wl=(e,t,r,n)=>{if(r===null){let o=ye(t,0);return n&&o!==void 0?o.reportHubId:null}return it(t,r)!==-1?r:ny(e,t,r)},oy=(e,t,r)=>e.selected===null?r!==null&&it(t,r)!==-1?r:null:it(t,e.selected)!==-1?e.selected:ny(e.items,t,e.selected);import{useEffect as sy,useLayoutEffect as dC,useMemo as iy,useRef as ly,useSyncExternalStore as cC}from"react";var nC=1e3,oC=5e3,aC={combine:"union",committed:null,filters:Bl,generation:0,status:"idle",failure:null,items:null,answered:null},sC=e=>e===400?"invalid":e===404?"unavailable":e===429?"busy":"failed",iC=(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))),Kl=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),lC=(e,t)=>{let r=Cs(e),n=Cs(t);return Kl(r.authors,n.authors)&&Kl(r.sourceTypes,n.sourceTypes)&&Kl(r.customers,n.customers)},ay=e=>{let t=aC,r=new Set,n=null,o=null,a=null,s=null,i=null,l=null,d=D=>{t=D;for(let T of r)T()},c=()=>{s!==null&&clearTimeout(s),i!==null&&clearTimeout(i),s=null,i=null},u=(D,T)=>{let _=t.answered;return _!==null&&_.query.text===D.text&&_.query.combine===D.combine&&iC(_.words,T)?_:{query:{text:D.text,combine:D.combine},words:T}},p=D=>{let T=new URLSearchParams({[Ce.searchQuery]:D.text,[Ce.searchCombine]:D.combine});return Kf(T,D.filters),`${e.apiBasePath}/${ke.search}?${T.toString()}`},f=(D,T,_,I)=>{if(!_){d({...t,status:"failed",failure:D});return}l!==I&&(l=I,i=setTimeout(()=>{i=null,h(T,!0)},oC))},y=async(D,T,_)=>{let I=new AbortController;n={controller:I};let O={Accept:"application/json"};_&&a!==null&&a.generation===T&&(O["If-None-Match"]=a.value);try{let M=await e.fetch(p(D),{headers:O,cache:"no-store",signal:I.signal});if(I.signal.aborted||T!==t.generation)return;if(M.status===304){t.status!=="done"&&d({...t,status:"done",failure:null});return}if(M.status===401||M.status===403){e.onSessionExpired(),f("failed",D,!1,T);return}if(!M.ok){f(sC(M.status),D,_,T);return}let F=Yd(await M.json(),!Sr(D.text));if(I.signal.aborted||T!==t.generation)return;if(F===null){f("failed",D,_,T);return}let Y=M.headers.get("ETag");a=Y===null?null:{generation:T,value:Y},l=null,d({...t,status:"done",failure:null,items:F.items,answered:F.words.length===0?null:u(D,F.words)})}catch{if(I.signal.aborted||T!==t.generation)return;f("failed",D,_,T)}finally{if(n!==null&&n.controller===I&&(n=null),n===null&&o!==null){let M=o;o=null,h(M.query,M.background)}}},h=(D,T)=>{if(n!==null){o={query:D,background:(o===null||o.background)&&T};return}y(D,t.generation,T)};return{getSnapshot:()=>t,subscribe:D=>(r.add(D),()=>{r.delete(D)}),commit:(D,T,_)=>{if(Sr(D)&&vn(_))throw new Error("[daily-report] search: a blank text can be committed only with a filter");let I=As(_);if(I!==null)throw new Error(`[daily-report] search: the filter selection cannot be sent (${I})`);c();let O=t.committed,M=O!==null&&O.text===D&&O.combine===T&&lC(O.filters,_),F={text:D,combine:T,filters:_};d({...t,combine:T,committed:F,filters:_,generation:M?t.generation:t.generation+1,status:"searching",failure:null}),h(F,!1)},setCombine:D=>{D!==t.combine&&d({...t,combine:D})},release:()=>{c(),n?.controller.abort(),n=null,o=null,t.committed!==null&&d({combine:t.combine,committed:null,filters:Bl,generation:t.generation+1,status:"idle",failure:null,items:null,answered:null})},invalidate:()=>{let D=t.committed;D!==null&&(s!==null&&clearTimeout(s),s=setTimeout(()=>{s=null,h(D,!0)},nC))},dispose:()=>{c(),n?.controller.abort(),n=null,o=null}}};var dy=({apiBasePath:e,invalidation:t,onSessionExpired:r})=>{let n=ly(r);dC(()=>{n.current=r});let o=iy(()=>ay({apiBasePath:e,onSessionExpired:()=>n.current(),fetch:(i,l)=>fetch(i,l)}),[e]);sy(()=>()=>o.dispose(),[o]);let a=ly(t);sy(()=>{a.current!==t&&(a.current=t,o.invalidate())},[t,o]);let s=cC(o.subscribe,o.getSnapshot,o.getSnapshot);return iy(()=>({...s,commit:o.commit,setCombine:o.setCombine,release:o.release}),[s,o])};import{useCallback as cy,useEffect as uC,useLayoutEffect as pC,useMemo as $l,useRef as uy,useState as mC}from"react";var py=Object.freeze({status:"idle"}),fC=Object.freeze({status:"loading"}),yC=Object.freeze({sourceTypes:[],authors:[],customers:[]}),hC=e=>e===404?"unavailable":e===429?"busy":"failed",zl=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),bC=(e,t)=>zl(e.sourceTypes,t.sourceTypes)&&zl(e.authors,t.authors)&&zl(e.customers,t.customers),RC=(e,t)=>"facets"in t?e.status!=="ready"||!bC(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},my=(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})),SC=(e,t)=>e.map(r=>fy(r,t));function fy(e,t){let r=Vt(e,t);return{value:e,label:r===void 0?e:r.label}}var yy=({apiBasePath:e,locale:t,sourceTypeConfigs:r,onSessionExpired:n})=>{let[o,a]=mC({apiBasePath:e,load:py}),s=o.apiBasePath===e?o.load:py,i=uy(null),l=uy({apiBasePath:e,onSessionExpired:n});pC(()=>{l.current={apiBasePath:e,onSessionExpired:n}}),uC(()=>()=>{i.current?.abort(),i.current=null},[e]);let d=cy(()=>{if(i.current!==null)return;let y=new AbortController;i.current=y;let h=l.current.apiBasePath;a(m=>m.apiBasePath===h&&m.load.status==="ready"?m:{apiBasePath:h,load:fC}),(async()=>{let m;try{let g=await fetch(`${h}/${ke.searchFacets}`,{headers:{Accept:"application/json"},cache:"no-cache",signal:y.signal});if(y.signal.aborted)return;if(g.status===401||g.status===403)l.current.onSessionExpired(),m={failure:"failed"};else if(!g.ok)m={failure:hC(g.status)};else{let R=$f(await g.json());if(y.signal.aborted)return;m=R===null?{failure:"failed"}:{facets:R}}}catch{if(y.signal.aborted)return;m={failure:"failed"}}i.current=null,a(g=>({apiBasePath:h,load:RC(g.load,m)}))})()},[]),c=s.status==="ready"?s.facets:yC,u=$l(()=>{let y=new Intl.Collator(t);return{authors:my(c.authors,y),sourceTypes:SC(c.sourceTypes,r),customers:my(c.customers,y)}},[c,t,r]),p=cy((y,h)=>y==="sourceType"?fy(h,r):{value:h,label:h},[r]),f=$l(()=>s.status==="ready"?{status:"ready",options:u,optionOf:p,reloadFailure:s.reloadFailure}:s,[s,u,p]);return $l(()=>({state:f,load:d}),[f,d])};import{useEffect as gy,useLayoutEffect as AC,useMemo as CC,useRef as Ey}from"react";var gC=4294967295,hy=e=>typeof e=="number"&&Number.isInteger(e)&&e>=0&&e<=gC,EC=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)||!Mn(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},DC=e=>{if(!(Ut(e)&&hy(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=EC(e.ranges);return t===null?null:{fingerprint:e.fingerprint,ranges:t}},TC=e=>{if(!Ut(e))return null;let t={};for(let[r,n]of Object.entries(e)){if(!ln(r))return null;let o=DC(n);if(o===null)return null;t[r]=o}return t},by=(e,t)=>{if(!(Ut(e)&&hy(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(!Ut(i))return null;let{reportHubId:l,matchedSets:d}=i;if(!(typeof l=="number"&&mt(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=TC(i.fields);if(c===null)return null;a.push({reportHubId:l,matchedSets:d,fields:c})}let s=[];for(let i of e.deferred){if(!(typeof i=="number"&&mt(i)&&r.has(i))||n.has(i))return null;n.add(i),s.push(i)}return{wordsDigest:e.wordsDigest,reports:a,deferred:s}};var Ry=2*On*Bt.maxDetailIds,xC=240,Sy=({apiBasePath:e,fetch:t,answered:r,onSessionExpired:n})=>{let o=r.words.length,a=r.query.combine==="union"&&o>=2,s=nu(r.words),i=new Map,l=new Map,d=0,c=new Map,u=new Set,p=0,f=0,y=null,h=new Set,b=!1,m=w=>{let P=i.get(w);if(P!==void 0)return P;let j={entry:void 0,appliedSequence:0,settledEpoch:null,retriedEpoch:null,revalidated:new Set};return i.set(w,j),l.has(w)||(d+=1),j},g=w=>{for(let P of w){let j=i.get(P);j!==void 0&&(j.settledEpoch=null)}},R=()=>{if(!(d<=Ry))for(let w of[...i.keys()]){if(d<=Ry)return;l.has(w)||(i.delete(w),c.delete(w),d-=1)}},E=w=>{let P=l.get(w);if(P!==void 0)for(let j of[...P])j()},D=w=>{let P=new URLSearchParams({[Ce.searchQuery]:r.query.text,[Ce.searchCombine]:r.query.combine,[Ce.reportIds]:w.join(",")});return`${e}/${ke.searchMarks}?${P.toString()}`},T=(w,P)=>{for(let j of w){let B=m(j.reportHubId);B.appliedSequence>P||(B.appliedSequence=P,B.entry=j,i.delete(j.reportHubId),i.set(j.reportHubId,B),E(j.reportHubId))}R()},_=(w,P)=>{let j=[];for(let $ of w){let G=i.get($);G!==void 0&&G.retriedEpoch!==p&&j.push({id:$,record:G})}if(j.length===0)return;let Z=setTimeout(()=>{u.delete(Z);for(let{id:$,record:G}of j){let ue=c.get($);ue===void 0||ue.timer!==Z||(c.delete($),l.has($)?(G.retriedEpoch=p,V.enqueue($)):G.settledEpoch=null)}},P);u.add(Z);for(let{id:$,record:G}of j)c.set($,{timer:Z,record:G})},I=w=>{for(let P of w)l.has(P)?V.enqueue(P):g([P])},O=async(w,P)=>{f+=1;let j=f,B=p;for(let ue of w)m(ue).settledEpoch=p,c.delete(ue);R();let Z;try{Z=await t(D(w),{headers:{Accept:"application/json"},cache:"no-store",signal:P})}catch{return}if(Z.status===401||Z.status===403){n();return}if(Z.status===429){let ue=na(Z);ue!==null&&B===p&&_(w,ue);return}if(!Z.ok)return;let $;try{$=await Z.json()}catch{return}let G=by($,{requestedIds:w,setCount:o,expectsMatchedSets:a});P.aborted||G===null||G.wordsDigest!==s||(T(G.reports,j),B===p&&G.reports.length>0&&I(G.deferred))},M=()=>{b=!0,queueMicrotask(()=>{b=!1}),y=setTimeout(F,xC)},F=()=>{if(y=null,h.size!==0){for(let w of h)V.enqueue(w);h.clear(),M()}},Y=w=>{if(y!==null&&!b){h.add(w);return}V.enqueue(w),y===null&&M()},V=Go({hasListener:w=>l.has(w),batchSize:Bt.maxDetailIds,inFlightBound:On,send:O});return{indicator:Object.freeze({setCount:o,showsMatchedSets:a}),subscribe:(w,P)=>{let j=l.get(w);j===void 0&&(j=new Set,l.set(w,j),i.has(w)&&(d-=1)),j.add(P);let B=i.get(w),Z=B!==void 0&&B.settledEpoch===p;return j.size===1&&!Z&&!V.isWanted(w)&&!h.has(w)&&Y(w),()=>{let $=l.get(w);$===void 0||!$.delete(P)||$.size>0||(l.delete(w),i.has(w)&&(d+=1),h.delete(w),g(V.release(w)),R())}},read:w=>{let P=i.get(w);return P===void 0?void 0:P.entry},revalidate:(w,P,j)=>{let B=m(w),Z=`${P}\0${j}`;B.revalidated.has(Z)||(B.revalidated.add(Z),h.delete(w),V.enqueue(w))},advanceEpoch:()=>{p+=1;for(let w of u)clearTimeout(w);u.clear(),c.clear(),h.clear();for(let w of l.keys())V.enqueue(w)},dispose:()=>{for(let P of u)clearTimeout(P);u.clear();let w=[...c.keys(),...h];c.clear(),h.clear(),y!==null&&clearTimeout(y),y=null,g([...V.dispose(),...w])}}};var Dy=({apiBasePath:e,answered:t,shownRevision:r,onSessionExpired:n})=>{let o=Ey(n);AC(()=>{o.current=n});let a=CC(()=>t===null?null:Sy({apiBasePath:e,answered:t,onSessionExpired:()=>o.current(),fetch:(i,l)=>fetch(i,l)}),[e,t]);gy(()=>{if(a!==null)return()=>a.dispose()},[a]);let s=Ey({store:a,shownRevision:r});return gy(()=>{let i=s.current;s.current={store:a,shownRevision:r},a!==null&&i.store===a&&i.shownRevision!==r&&a.advanceEpoch()},[a,r]),a};import*as Ao from"@radix-ui/react-switch";import*as xy from"react";import{jsx as Ty}from"react/jsx-runtime";var _s=xy.forwardRef(({className:e,...t},r)=>Ty(Ao.Root,{className:x(`peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-transparent disabled:cursor-not-allowed disabled:opacity-50 ${ld} ${cd} ${ne}`,e),...t,ref:r,children:Ty(Ao.Thumb,{className:`pointer-events-none block rounded-full shadow-lg data-[state=unchecked]:translate-x-0 motion-safe:transition-[translate] ${dd} ${ud}`})}));_s.displayName=Ao.Root.displayName;import{useSyncExternalStore as IC}from"react";var Ay=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)})}},jl=e=>IC(e.subscribe,e.get,e.get);import{Fragment as QC,jsx as oe,jsxs as Et}from"react/jsx-runtime";var NC="list",OC=e=>{if(e==="list"||e==="tree"||e==="detailList")return e;throw new Error(`[daily-report] unknown view tab: ${e}`)},MC=()=>({topItem:null,anchorReportHubId:null,measuredHeights:new Map}),kC=x(md,Cd,"flex flex-wrap items-center gap-2"),PC=x("@container/views",rt),FC=x("mt-0",rt),HC=x("flex flex-1 items-center justify-center",$r),vy="relative h-4 w-4 p-0 after:absolute after:-inset-1",BC="flex items-center gap-2",UC=x(vy,"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"),VC=x(vy,"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"),WC=({count:e})=>{let{labels:t}=q(),[r,n]=Vr(null),o=Vf(e,r);return oe(ys,{ref:n,text:t.totalCount(o),widestText:t.totalCount(ho(Math.max(e,o)))})},KC=({setSize:e,isSearchAnswer:t})=>{let{labels:r}=q();return t?oe("span",{children:r.searchHitCount(e)}):e===jn?oe("span",{children:r.totalCountLoading}):oe(WC,{count:e})},$C=({checked:e,onCheckedChange:t})=>{let{labels:r}=q(),n=Cy(),o=Cy();return Et("div",{className:"flex items-center gap-1 pl-1",children:[oe(_s,{id:n,checked:e,onCheckedChange:t,title:r.autoReadTitle,"aria-describedby":o}),oe(uo,{htmlFor:n,className:"cursor-pointer select-none text-slate-500 text-xs dark:text-slate-400",children:r.autoRead}),oe("span",{id:o,hidden:!0,children:r.autoReadTitle})]})},zC=({selectionStore:e,dailyReportItems:t,rowSetSize:r,autoMarkRead:n,userId:o,scrollOffsetRef:a})=>{let s=jl(e);return oe(kl,{dailyReportItems:t,rowSetSize:r,autoMarkRead:n,selectedReportHubId:s,onSelectItem:e.set,userId:o,scrollOffsetRef:a})},jC=({selectionStore:e,dailyReportItems:t,rowSetSize:r,userId:n,scrollRestoreRef:o})=>{let a=jl(e);return oe(El,{dailyReportItems:t,rowSetSize:r,userId:n,selectedItemId:a,onSelectItem:e.set,scrollRestoreRef:o})},YC=({tabItems:e,actions:t,searchRow:r})=>{let[n,o]=Vr(NC),{labels:a}=q();return Et(So,{value:n,onValueChange:s=>o(OC(s)),className:PC,children:[Et("div",{className:x(yd,Id,vd[n]),children:[Et("div",{className:kC,children:[oe(go,{"aria-label":a.viewTabList,className:"flex flex-wrap gap-1",...Pu,children:e.map(({value:s,label:i})=>oe(Eo,{value:s,children:i},s))}),t]}),r]}),e.map(({value:s,content:i})=>oe(Tn,{value:s,tabStop:!1,className:FC,children:i},s))]})},GC=Object.freeze({items:null,generation:0,revision:0,change:"none",scrollRequest:null,restoreOnRelease:!0}),qC=(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}},XC=({answer:e,hasAnswerOnlyItems:t})=>{let{phase:r,isRevalidating:n}=cn(),o=r==="complete"&&!n,a=_n(null);return Yl(()=>{!(o&&t)||a.current===e||(a.current=e,Jn())},[o,t,e]),null},Gl=({userId:e})=>{let[t,r]=Vr(!1),{labels:n,renderHeader:o,showDevControls:a,apiBasePath:s,onSessionExpired:i,search:l,locale:d,sourceTypeConfigs:c}=q(),{toggleSse:u,createReport:p,refetchData:f,clearCacheAndRefetch:y}=Be(),{isSseEnabled:h,items:b,searchInvalidation:m,isReportRemoved:g,removedVersion:R}=Ka(),[E]=LC(),D=dy({apiBasePath:s,invalidation:m,onSessionExpired:i}),T=yy({apiBasePath:s,locale:d,sourceTypeConfigs:c,onSessionExpired:i}),_=l===null||D.committed===null?null:D.items,[I,O]=Vr(GC);I.items!==_&&O(qC(I,_,D.generation));let M=ws(()=>_===null?null:ty(_),[_]),F=ws(()=>ry(M,b,g),[M,b,g,R]),Y=F.items,V=Xc(b.length,Cu()),w=_===null?V:Y.length,[P,j]=Vr(0),[B]=Vr(()=>({preSearchTopReportId:null})),Z=ws(()=>({request:I.scrollRequest,slot:B}),[I.scrollRequest,B]),$=Dy({apiBasePath:s,answered:_===null?null:D.answered,shownRevision:I.revision,onSessionExpired:i}),G=_n(0),ue=as(MC),[pe]=Vr(()=>Ay(di(Y))),We=_n(null),je=_n(Y),me=_n(I.revision);Iy(()=>{if(me.current===I.revision)return;me.current=I.revision;let Ae=je.current,_e=pe.get(),ge=_e;I.change==="enter"?(We.current={selected:_e,items:Ae},ge=Wl(Ae,Y,_e,!0)):I.change==="start"||I.change==="update"?ge=Wl(Ae,Y,_e,I.change==="start"):I.change==="restore"&&We.current!==null&&(ge=oy(We.current,Y,_e)),(I.change==="restore"||I.change==="release")&&(We.current=null),ge!==_e&&pe.set(ge)},[I,Y,pe]),Iy(()=>{je.current=Y},[Y]);let ie=_n(!1);Yl(()=>{let Ae=di(Y);!ie.current&&Ae!==null&&(ie.current=!0,pe.get()===null&&pe.set(Ae))},[Y,pe]);let Ne=async()=>{await f()},qe=async()=>{await y()},ut=async()=>{let _e=E.get("businessDate")||Ps();D.committed!==null&&(O(Xe=>({...Xe,restoreOnRelease:!1})),j(Xe=>Xe+1),D.release());let ge=await p(_e);pe.set(ge)};Yl(()=>{localStorage.getItem("daily-report-auto-read")==="true"&&r(!0)},[]);let Dt=Ae=>{r(Ae),localStorage.setItem("daily-report-auto-read",String(Ae))},Tt=ws(()=>[{value:"list",label:n.tabList,content:oe(zC,{selectionStore:pe,dailyReportItems:Y,rowSetSize:w,autoMarkRead:t,userId:e,scrollOffsetRef:G})},{value:"tree",label:n.tabTree,content:oe("div",{className:HC,children:n.treeComingSoon})},{value:"detailList",label:n.tabDetailList,content:oe(jC,{selectionStore:pe,dailyReportItems:Y,rowSetSize:w,userId:e,scrollRestoreRef:ue})}],[Y,w,t,e,n,pe,ue]);return Et(QC,{children:[o({title:n.title,annotation:Et("div",{className:"flex flex-wrap items-center gap-2 leading-1",children:[oe(bo,{}),oe(KC,{setSize:w,isSearchAnswer:_!==null}),oe("span",{children:n.debounce(Gr)})]})}),oe("div",{className:Mo,children:Et("div",{className:ko,children:[_!==null&&oe(XC,{answer:_,hasAnswerOnlyItems:F.hasAnswerOnlyItems}),oe(sa.Provider,{value:_===null?"date":"ids",children:oe(lt.Provider,{value:$,children:oe(ui.Provider,{value:Z,children:oe(YC,{tabItems:Tt,searchRow:l===null?null:oe(Jf,{labels:n,debounceMs:l.debounceMs,search:D,onCommit:D.commit,onCombineChange:D.setCombine,onRelease:D.release,clearSignal:P,filters:l.renderFilterSelect===null?null:{renderFilterSelect:l.renderFilterSelect,locale:d,facets:T}}),actions:Et("div",{className:"ml-auto flex flex-wrap items-center gap-2 px-1",children:[Et(qt,{size:"sm",onClick:ut,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:[oe(vC,{className:"h-3 w-3"}),oe("span",{children:n.createReport})]}),a&&Et("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:[oe("span",{className:"select-none font-bold font-mono text-amber-800 text-xs uppercase dark:text-amber-200",children:"dev"}),oe(_s,{"aria-label":n.devSseToggle,title:n.devSseToggle,checked:h,onCheckedChange:u}),Et("div",{className:BC,"data-testid":"dev-icon-buttons",children:[oe(qt,{variant:"ghost",size:"icon",onClick:Ne,className:UC,title:n.devReload,"data-testid":"dev-reload-btn",children:oe(wC,{className:"size-3"})}),oe(qt,{variant:"ghost",size:"icon",onClick:qe,className:VC,title:n.devClearCache,"data-testid":"dev-clear-cache-btn",children:oe(_C,{className:"size-3"})})]})]}),oe($C,{checked:t,onCheckedChange:Dt})]})})})})})]})})]})};import{Fragment as wy,jsx as xe,jsxs as Co}from"react/jsx-runtime";var JC=x(rt,or),eI=x("flex min-h-0 flex-1 flex-col items-center justify-center gap-4 text-slate-500 dark:text-slate-300",xt,ne),tI=x("font-bold",wn),rI=x("font-medium",wn),nI=x("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",ne),oI=({isFailed:e,handOver:t})=>{let{labels:r,renderHeader:n}=q(),o=Ny(null),a=ZC(i=>(o.current=i,t.take()&&Wt(i)&&vt([i]),()=>{o.current=null,i.contains(Ie(i))&&t.request()}),[t]),s=()=>{vt([o.current]),_a()};return Co(wy,{children:[n({title:r.title,annotation:e?xe("span",{className:tI,children:r.loadErrorBadge}):Co("div",{className:"flex flex-wrap items-center gap-2 leading-none",children:[xe(bo,{}),xe("span",{children:r.totalCountLoading}),xe("span",{children:r.debounce(Gr)})]})}),xe("div",{className:Mo,children:xe("div",{className:ko,children:xe("div",{className:JC,children:xe("div",{ref:a,tabIndex:-1,...Hu,"data-testid":"daily-report-status-panel","data-phase":e?"failed":"loading",className:x(eI,e&&"border-red-200 dark:border-red-900"),children:e?Co(wy,{children:[xe("p",{className:rI,children:r.loadError}),xe("button",{type:"button","data-testid":"daily-report-load-error-retry",onClick:s,className:nI,children:r.reload})]}):xe("p",{children:r.loadingIds})})})})})]})},aI=(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:""}:{status:"",alert:""},sI=Object.freeze({status:"",alert:""}),iI=()=>{let{labels:e}=q(),t=aI(xu(),e),[r]=ql(t),[n,o]=ql(!1),a=n||t.status!==r.status||t.alert!==r.alert;Ly(()=>{a&&!n&&o(!0)},[a,n]);let{status:s,alert:i}=a?t:sI;return Co("div",{"data-testid":"daily-report-stream-announcer",className:"sr-only",children:[xe("p",{role:"status",children:s}),xe("p",{role:"alert",children:i})]})},lI=({user:e,userId:t})=>{let{apiBasePath:r,onSessionExpired:n}=q(),o=cn(),[a]=ql(rf),s=Ny(n);Ly(()=>{s.current=n}),_y(()=>{Xn({apiBasePath:r,userKey:t??null})},[r,t]),_y(()=>{o.phase==="auth-required"&&s.current()},[o.phase]);let i=o.hasItems||o.phase==="complete";return Co(Ii,{children:[xe(iI,{}),xe(Dl.Provider,{value:!1,children:xe(Rl.Provider,{value:a,children:xe(Ui,{user:e,userId:t,children:i?xe(Gl,{userId:t}):xe(oI,{isFailed:o.phase==="failed",handOver:a})},t??"anonymous")})})]})},dI=({config:e,...t})=>xe(zs,{config:e,children:xe(lI,{...t})});var cI=new Set(ou.filter(e=>e!=="clearCache")),uI=({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(Ze.intent);if(typeof f=="string"&&cI.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},pI=e=>{let t=async r=>{gi();let n=await r.serverLoader(),o=n.userId;return Si({apiBasePath:e?.apiBasePath,userKey:typeof o=="string"?o:null}),n};return t.hydrate=!0,t};export{nc as DAILY_REPORT_LABEL_CATALOGS,Us as DAILY_REPORT_LABEL_KEYS,Io as DAILY_REPORT_LATTICE_BLOCK_QUANTUM_CLASS_NAME,Kh as DAILY_REPORT_LAYOUT_LATTICE_PX,MA as DAILY_REPORT_SEARCH_FILTER_FACETS,Ui as DailyReportActionProvider,Ln as DailyReportAttachmentIndicator,zs as DailyReportConfigProvider,El as DailyReportDetailList,Ii as DailyReportErrorProvider,Gn as DailyReportIdsStreamClient,bo as DailyReportIdsStreamStatus,kl as DailyReportList,dI as DailyReportPage,Gl as DailyReportResolvedContent,Si as bootstrapDailyReportIdsStreamSession,pI as createDailyReportClientLoader,uI as dailyReportShouldRevalidate,Pn as defaultDailyReportClientConfig,Xn as ensureDailyReportIdsStreamSession,gi as primeDailyReportIdsStreamSession,Ks as resolveDailyReportLabels,Vt as resolveSourceTypeConfig,wa as resyncDailyReportIdsStream,hS as useDailyReportActionContext,al as useDailyReportComments,q as useDailyReportConfig,Ar as useDailyReportDetail,IR as useDailyReportIdsStream,ti as useDailyReportPrefetch,Ti as useDailyReportSseConnection};
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};