@aiquants/daily-report 0.42.0 → 0.43.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +146 -0
- package/README.md +184 -92
- package/dist/client.d.mts +15 -2
- package/dist/client.d.ts +15 -2
- package/dist/client.js +5 -5
- package/dist/client.mjs +5 -5
- package/dist/index.d.mts +3 -5
- package/dist/index.d.ts +3 -5
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/dist/server.d.mts +4 -5
- package/dist/server.d.ts +4 -5
- package/dist/server.js +10 -10
- package/dist/server.mjs +10 -10
- package/dist/{comment-adapter-BTXFkMSz.d.ts → source-types-Bu-_yfcY.d.ts} +4 -2
- package/dist/{comment-adapter-wejvIziS.d.mts → source-types-NkQm-gNO.d.mts} +4 -2
- package/dist/{sse-schema-CUiQKk8K.d.mts → sse-schema-Br0b278w.d.mts} +165 -10
- package/dist/{sse-schema-CUiQKk8K.d.ts → sse-schema-Br0b278w.d.ts} +165 -10
- package/package.json +5 -4
package/dist/client.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import ZR from"lucide-react/dist/esm/icons/paperclip.js";var GR="data-daily-report-row-surface",ct={[GR]:"",role:"gridcell"},zd="data-daily-report-active",an="data-daily-report-scrolling",zt=8,YR=4,$d=zt-YR;var jo="[--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]",yr=`${jo} h-[calc-size(auto,round(up,size,var(--aqdr-lattice-block)))]`,hr="p-[8px]",jd="pr-[8px]",Go="contain-size contain-layout contain-style",Gd="contain-strict",$t="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",jt="border-slate-500 placeholder:text-slate-500 dark:border-slate-500 dark:placeholder:text-slate-400",Yd="-mx-[4px] px-[4px] pb-[4px] scroll-p-[4px]",Ri="scrollbar-thin [scrollbar-gutter:stable]",bi=`-m-[4px] overflow-hidden p-[4px] ${Ri}`,qd="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white",Yo="rounded-[calc(var(--radius-2xl)+8px)]",qo="outline-none [:where([data-daily-report-keyboard-focus])_:where(:focus-visible)_&]:[&[data-daily-report-active]>:where([data-daily-report-row-surface])]:outline-2 [:where([data-daily-report-keyboard-focus])_:where(:focus-visible)_&]:[&[data-daily-report-active]>:where([data-daily-report-row-surface])]:outline-offset-4 [:where([data-daily-report-keyboard-focus])_:where(:focus-visible)_&]:[&[data-daily-report-active]>:where([data-daily-report-row-surface])]:outline-blue-600 dark:[:where([data-daily-report-keyboard-focus])_:where(:focus-visible)_&]:[&[data-daily-report-active]>:where([data-daily-report-row-surface])]:outline-blue-400 [&[aria-selected=true]>:where([data-daily-report-row-surface])]:ring-2 [&[aria-selected=true]>:where([data-daily-report-row-surface])]:ring-blue-500 [&[aria-selected=true]>:where([data-daily-report-row-surface])]:shadow-transparent forced-colors:[&[aria-selected=true]]:outline-2 forced-colors:[&[aria-selected=true]]:outline-solid forced-colors:[&[aria-selected=true]]:-outline-offset-8 forced-colors:[&[aria-selected=true]]:outline-[Highlight]",Xd="[: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",Nt="rounded-2xl border border-solid border-slate-200 bg-white p-[15px] shadow-sm dark:border-slate-700 dark:bg-slate-900/70",Xo=16,sn="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",Zd=12,Zo="rounded-xl bg-slate-50 p-3 text-slate-700 text-sm leading-6 dark:bg-slate-800/60 dark:text-slate-200";var Qd="min-h-24",Jd="flex h-6 items-center",Qo="[--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",We=`flex size-6 shrink-0 items-center justify-center rounded-full hover:bg-slate-200 dark:hover:bg-slate-700 ${ee}`,ec="-mx-1",tc="flex items-center gap-1",Ke="inline-flex h-6 items-center rounded-full px-3",rc="inline-flex h-6 items-center rounded-full border border-solid px-[11px]",nc="inline-flex h-6 shrink-0 items-center rounded px-2 font-semibold text-xs tracking-wide",fr="size-4",Pe={starOff:`${fr} text-slate-500 dark:text-slate-400 forced-colors:text-[CanvasText]`,starOn:`${fr} fill-yellow-400 text-yellow-700 dark:text-yellow-400 forced-colors:fill-[Highlight] forced-colors:text-[Highlight]`,read:`${fr} text-blue-600 dark:text-blue-400`,delete:`${fr} text-slate-500 hover:text-red-600 dark:text-slate-400 dark:hover:text-red-400`,deletePending:`${fr} text-red-600 dark:text-red-400`,edit:`${fr} text-slate-500 dark:text-slate-400`},oc="h-6 w-10 border-4 border-solid",ac="size-4 data-[state=checked]:translate-x-4",sc="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]",ic="bg-white dark:bg-slate-950 forced-colors:bg-[ButtonText]";var lc="rounded-xl bg-slate-100 p-1 dark:bg-slate-800",dc="rounded-xl border border-solid p-[3px]",cc="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",qR="supports-[margin-left:round(down,1px,1px)]:ml-[max(0px,round(down,calc((100%-72rem)/2),var(--aqdr-lattice-block)))]",XR="bg-slate-50 dark:bg-slate-950",ut="flex min-h-0 flex-1 flex-col",Jo=`${ut} ${XR}`,ea=`${ut} mx-auto w-full max-w-6xl ${jo} px-[var(--aqdr-lattice-block)] pt-[var(--aqdr-lattice-block)] ${qR}`,uc=`relative z-[1] flex shrink-0 flex-col ${yr}`,pc="flex grow flex-col justify-between",mc="grid min-w-0 grid-cols-[max-content_minmax(0,1fr)_max-content] grid-rows-[minmax(2rem,auto)_auto] items-end",fc="grid min-w-0 grid-cols-1 gap-2 sm:grid-cols-[minmax(0,2fr)_minmax(0,1fr)_minmax(0,3fr)]",yc="m-0 min-w-0 border-0 p-0",hc="mb-1 p-0 text-slate-700 text-xs leading-4 dark:text-slate-200",Rc="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]",$n="text-red-700 dark:text-red-400",bc="bg-white dark:bg-slate-900",ta=`min-h-0 flex-1 overflow-clip contain-size ${jo}`,ra="flex h-full flex-col contain-size contain-layout contain-style",Sc="relative inline-block whitespace-nowrap tabular-nums",na="invisible grid",Or="col-start-1 row-start-1",gc="absolute inset-0 contain-size contain-layout contain-style",oa="[&_.aqvs-no-items-text]:py-4 [&_.aqvs-no-items-text]:text-slate-500 dark:[&_.aqvs-no-items-text]:text-slate-400",Ec="border-slate-200/80 bg-slate-100/60 dark:border-slate-800 dark:bg-slate-900/60 dark:text-slate-200",Tc="ml-[8px]",Ac={list:"mr-[8px] [@media(max-width:639px)]:mr-[16px] @max-[460px]/views:mr-[16px]",tree:"mr-[8px]",detailList:"mr-[16px]"},Mr="font-semibold text-slate-500 text-xs uppercase tracking-wide dark:text-slate-400",Gt=`m-0 ${Mr}`,Yt="text-balance wrap-anywhere [word-break:auto-phrase]",Dc="[--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)]",aa=`${Dc} [&_.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]`,sa="[--aqvs-focus-ring-color:var(--color-blue-600)] dark:[--aqvs-focus-ring-color:var(--color-blue-400)]",wc=`${Dc} [scrollbar-color:var(--aqdr-scroll-bar-thumb)_var(--aqdr-scroll-bar-track)]`;import{jsx as xc,jsxs as JR}from"react/jsx-runtime";var QR=2,jn=({id:e,count:t,label:r})=>t<=0?null:JR("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:[xc(ZR,{className:fr,"aria-hidden":"true"}),t>=QR&&xc("span",{className:"font-semibold text-xs leading-4",children:t})]});import{useCallback as He,useEffect as vr,useLayoutEffect as yh,useMemo as md,useRef as tt,useState as Zs}from"react";var Pr=Object.freeze({text:"",runs:Object.freeze([])}),pt=e=>e.length===0?Pr:{text:e,runs:[{displayStart:0,displayEnd:e.length,sourceStart:0,sourceEnd:e.length}]},Ic=(e,t,r)=>t>=r?Pr:{text:e.slice(t,r),runs:[{displayStart:0,displayEnd:r-t,sourceStart:t,sourceEnd:r}]},Si=(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}))},gi=e=>e.displayEnd-e.displayStart===e.sourceEnd-e.sourceStart,Gn=(e,t,r)=>{if(t>=r)return Pr;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(gi(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(...Si(a-t,s-t,o.sourceStart,o.sourceEnd))}return{text:e.text.slice(t,r),runs:n}},ln=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?Pr:{text:t,runs:r}},Ei=e=>{let t=e.text.trimEnd().length,r=Math.min(t,e.text.length-e.text.trimStart().length);return Gn(e,r,t)},Rr=e=>typeof e=="string"?Ei(pt(e)):Pr,ia=(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 p=o.length-d;for(;s<e.runs.length&&e.runs[s].displayEnd<=d;)s+=1;for(let u=s;u<e.runs.length&&e.runs[u].displayStart<c;u++){let y=e.runs[u],m=Math.max(y.displayStart,d),f=Math.min(y.displayEnd,c);if(!(m>=f))if(gi(y)){let b=y.sourceStart+(m-y.displayStart);a.push({displayStart:m+p,displayEnd:f+p,sourceStart:b,sourceEnd:b+(f-m)})}else a.push(...Si(m+p,f+p,y.sourceStart,y.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?Pr:{text:o,runs:a}},eb=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},tb=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},vc=e=>{let t=e.normalize("NFC");if(t===e)return pt(e);let r=eb(e),n=r.map(s=>s.shown).join("")===t?r:tb(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(...Si(a,d,s,i)),a=d}return{text:t,runs:o}},Cc=(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(gi(a)){for(let d=s;d<o&&t[d*3]<a.sourceEnd;d++){let c=Math.max(t[d*3],a.sourceStart),p=Math.min(t[d*3+1],a.sourceEnd);n(a.displayStart+(c-a.sourceStart),a.displayStart+(p-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},_c=String.raw`<br\s*\/?\s*>`,Lc=String.raw`<\/p>`,Nc="<[^>]+>",rb=new RegExp(String.raw`(${_c}|${Lc}|\r?\n)|${Nc}`,"gi"),Oc=new RegExp(_c,"gi"),nb=new RegExp(Lc,"gi"),ob=new RegExp(Nc,"g"),Mc=(e,t)=>{if(!e)return[];let r=[],n=[],o=0,a=()=>{let s=ln(n);n=[];let i=Ei({text:s.text.replace(/ /g," "),runs:s.runs});i.text.length>0&&r.push(i)};for(let s of e.matchAll(rb))if(n.push(Ic(e,o,s.index)),o=s.index+s[0].length,s[1]!==void 0&&(a(),r.length===t))return r;return n.push(Ic(e,o,e.length)),a(),r},Pc=e=>ia(ia(ia(pt(e),Oc,`
|
|
2
|
-
`),
|
|
3
|
-
`),
|
|
4
|
-
`)):Pr;var ab=Object.freeze({text:"-",runs:Object.freeze([])}),ke=e=>{let t=Rr(e);return t.text===""?ab:t},br=e=>ke(e).text,Se=e=>{if(!e)return"-";if(typeof e!="string")return e instanceof Date?Se(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 SS,useCallback as gS,useContext as Ou,useEffect as _u,useRef as ES,useState as TS}from"react";import{z as oo}from"zod/v3";var sb=/^(\d{4})([-/])(\d{2})\2(\d{2})$/;var la=e=>e<10?`0${e}`:`${e}`,ib=e=>{if(Number.isNaN(e.getTime()))return null;let t=e.getFullYear(),r=la(e.getMonth()+1),n=la(e.getDate());return`${t}-${r}-${n}`},Fc=e=>{let t=sb.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}`},Yn=e=>Fc(e)===e,Hc=(e=new Date)=>{if(Number.isNaN(e.getTime()))throw new Error("[daily-report] resolveTodayBusinessDateKey needs a valid Date");return`${e.getFullYear()}-${la(e.getMonth()+1)}-${la(e.getDate())}`},kr=e=>e==null?null:e instanceof Date?ib(e):Fc(e);import{z as lb}from"zod/v3";var mt=e=>Number.isSafeInteger(e)&&e>0,we=lb.number().int().positive().max(Number.MAX_SAFE_INTEGER);import{z as ge}from"zod/v3";var da=/^(?:[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 Fr=Symbol("daily-report wire mismatch"),Ot=(e,t,r)=>(e.issues.push({...r,path:t===null?[...e.path]:[...e.path,t]}),Fr),Wc=e=>e===null?"null":Array.isArray(e)?"array":Number.isNaN(e)?"nan":typeof e,Hr=(e,t)=>({code:"invalid_type",expected:e,received:Wc(t)}),db=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),cb=e=>{let t=0;for(let r in e)t+=1;return t},Bc=(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},dn=e=>{let t=Object.keys(e),r=Object.values(e);return(n,o)=>{if(!db(n))return Ot(o,null,Hr("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 p=r[l](c,o,d);if(p===Fr){s=!0;continue}a===null&&p!==c&&(a=Bc(n,t,l)),a!==null&&(p!==void 0||d in n)&&(a[d]=p)}return s?Fr:a!==null?a:cb(n)===i?n:Bc(n,t,t.length)}},qn=e=>(t,r,n)=>{r.path.push(n);let o=e(t,r);return r.path.pop(),o},Xn=e=>(t,r,n)=>{if(!Array.isArray(t))return Ot(r,n,Hr("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===Fr?a=!0:l!==i&&(o===t&&(o=t.slice()),o[s]=l)}return r.path.pop(),a?Fr:o},ue=(e,t,r)=>e==null||typeof e=="string"?e:Ot(t,r,Hr("string",e)),Vc=(e,t,r)=>e===null||typeof e=="string"?e:Ot(t,r,Hr("string",e)),Uc=(e,t,r)=>typeof e=="string"?e:Ot(t,r,Hr("string",e)),ub=(e,t,r)=>e===null||typeof e=="number"&&!Number.isNaN(e)?e:Ot(t,r,Hr("number",e)),Zn=(e,t,r)=>typeof e=="boolean"?e:Ot(t,r,Hr("boolean",e)),Ti=(e,t,r)=>{if(typeof e=="number"&&mt(e))return e;for(let{message:n,path:o,...a}of we.safeParse(e).error.issues)Ot(t,r,a);return Fr},Kc={present:!0,absent:!0,unknown:!0},zc=Object.keys(Kc),pb=zc.map(e=>`'${e}'`).join(" | "),mb=(e,t,r)=>typeof e!="string"?Ot(t,r,{code:"invalid_type",expected:pb,received:Wc(e)}):Object.hasOwn(Kc,e)?e:Ot(t,r,{code:"invalid_enum_value",received:e,options:[...zc]}),$c=dn({name:ue,affiliation:ue}),jc=dn({name:ue,text:ue,color:ue}),Gc=dn({id:Ti,name:ue,color:ue}),Yc=dn({id:Ti,userId:ue,userName:ue,content:ue,createdAt:ue,isMine:Zn}),fb=dn({id:Uc,fileName:Uc,fileType:Vc,fileSize:ub,createdAt:Vc,state:mb,hasThumbnail:Zn}),yb=dn({reportHubId:Ti,date:ue,createdAt:ue,author:ue,userId:ue,sourceType:ue,employeeName:ue,updatedBy:ue,updatedAt:ue,category:ue,creationCategory:ue,visitTimeFrom:ue,visitTimeTo:ue,customerName:ue,interviewers:Xn(qn($c)),subject:ue,content:ue,externalComments:Xn(qn(jc)),isRead:Zn,isStarred:Zn,isDraft:Zn,labels:Xn(qn(Gc)),postedComments:Xn(qn(Yc)),attachments:Xn(qn(fb))}),Qn=(e,t)=>{let r={path:[],issues:[]},n=e(t,r);return n===Fr?{ok:!1,issues:r.issues}:{ok:!0,value:n}},qc=e=>Qn(yb,e),Xc=e=>Qn($c,e),Zc=e=>Qn(jc,e),Qc=e=>Qn(Gc,e),Jc=e=>Qn(Yc,e);var eu=["auth-required","forbidden","resync-required"],Ai=15e3,tu="lastEventId",hb=/^\d{1,15}-\d{1,15}$/,ca=e=>hb.test(e),Jn=e=>ge.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 ge.NEVER}),N_=Jn(Xc),O_=Jn(Zc),M_=Jn(Qc),Di=Jn(Jc),Mt=Jn(qc),Br=ge.string().regex(da),Rb=ge.object({type:ge.literal("connected")}),bb=ge.object({type:ge.literal("status-update"),reportHubId:we,statusType:ge.enum(["star","read"]),value:ge.boolean(),clientTempId:Br,recipientRawUserId:we.optional()}),wi=ge.string(),Sb=ge.object({type:ge.literal("comment-add"),reportHubId:we,comment:Di,clientTempId:Br,recipientRawUserId:we.optional(),sourceType:wi}),gb=ge.object({type:ge.literal("comment-delete"),reportHubId:we,commentId:we,clientTempId:Br,recipientRawUserId:we.optional(),sourceType:wi}),Eb=ge.object({type:ge.literal("report-create"),reportHubId:we,report:Mt,clientTempId:Br,recipientRawUserId:we.optional()}),Tb=ge.object({type:ge.literal("report-update"),reportHubId:we,report:Mt,clientTempId:Br,recipientRawUserId:we.optional()}),Ab=ge.object({type:ge.literal("report-publish"),reportHubId:we,report:Mt,clientTempId:Br,recipientRawUserId:we.optional()}),Db=ge.object({type:ge.literal("report-delete"),reportHubId:we,clientTempId:Br,sourceType:wi}),ru=ge.discriminatedUnion("type",[Rb,bb,Sb,gb,Eb,Tb,Ab,Db]);var ua="ids-columns",xi=e=>{if(typeof e!="object"||e===null)return"unknown";let{kind:t}=e;return t==="chunk"?"chunk":t==="error"?"error":"unknown"},wb=e=>typeof e=="number"&&mt(e),xb=e=>{if(typeof e!="object"||e===null)return!1;let{businessDate:t,reportHubId:r}=e;return(t===null||typeof t=="string")&&typeof r=="number"},Ib=4,vb=e=>{let t=Ib;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}}},Cb=/^[0-9a-f]{1,16}$/,_b=e=>mt(e.reportHubId)&&(e.businessDate===null||Yn(e.businessDate)),Lb=e=>typeof e=="string"&&Cb.test(e),Nb=Object.freeze({kind:"absent"}),Ob=Object.freeze({kind:"value",value:null}),Mb=e=>e===void 0?Nb:e===null?Ob:typeof e=="string"&&ca(e)?{kind:"value",value:e}:{kind:"malformed",received:e},nu=e=>{if(xi(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:p,streamAnchor:u}=e;if(typeof s!="boolean"||!(i===null||xb(i))||!(Array.isArray(t)&&Array.isArray(r)&&Array.isArray(n)&&Array.isArray(o)&&Array.isArray(a))||r.length!==n.length||a.length!==t.length)return null;for(let R of o)if(!(R===null||typeof R=="string"))return null;let y=vb(t.length),m=0,f=null,b=0;for(let R=0;R<r.length;R++){let E=r[R],h=n[R];if(!(E===null||typeof E=="string"&&Yn(E))||R>0&&E===r[R-1]||typeof h!="number"||!Number.isSafeInteger(h)||h<1)return null;let S=m+h;if(S>t.length)return null;for(;m<S;m++){let g=t[m],T=a[m];if(!(wb(g)&&y(g))||typeof T!="number"||!Number.isSafeInteger(T)||T<0||T>=o.length||m>0&&!Pb(f,b,E,g))return null;f=E,b=g}}return m!==t.length?null:{rows:e,isLast:s,resumeCursor:i!==null&&_b(i)?i:null,total:typeof l=="number"&&Number.isSafeInteger(l)&&l>=0?l:null,snapshot:Lb(d)?d:null,provisional:c===!0,restarted:p===!0,streamAnchor:Mb(u)}},ou=(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 p=a[s[i]];t(r[i],d,p===null?void 0:p)}}};var au=(e,t,r,n)=>e!==r?e===null?1:r===null||e>r?-1:1:n-t,Pb=(e,t,r,n)=>au(e,t,r,n)<0,su=(e,t)=>au(e.businessDate,e.reportHubId,t.businessDate,t.reportHubId);var Fe=Object.freeze({businessDate:"business-date",idsStream:ua,report:"report",search:"search",reports:"reports",searchMarks:"search-marks",searchFacets:"search-facets",action:"action"}),xe=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 iu=(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"]),lu=e=>`[DailyReport${e}]`,ft=(e,t,r)=>e===void 0?iu(t,lu(r)):iu(0,lu(r),e);var qt=Object.freeze({maxQueryLength:500,maxSets:16,maxWordsPerSet:16,maxWords:32,maxWordLength:100,maxDetailIds:100}),kb=2,eo=2,cn=Object.freeze({word:0,reading:1}),to=e=>e===cn.word||e===cn.reading;var Xt=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},Fb=2*(1+kb),Hb=e=>{if(!Array.isArray(e)||e.length===0||e.length>Fb)return null;let t=[],r=new Set;for(let n of e){if(!Xt(n))return null;let{text:o,tier:a}=n;if(typeof o!="string"||o.length===0||o.length>qt.maxWordLength||r.has(o)||!to(a)||(t.length===0?a!==cn.word:a<t[t.length-1].tier))return null;r.add(o),t.push({text:o,tier:a})}return t},Bb=(e,t)=>{if(!Array.isArray(e))return null;if(!t)return e.length===0?[]:null;if(e.length===0||e.length>qt.maxSets)return null;let r=[],n=0;for(let o of e){if(!Array.isArray(o)||o.length===0||o.length>qt.maxWordsPerSet||(n+=o.length,n>qt.maxWords))return null;let a=[];for(let s of o){let i=Hb(s);if(i===null)return null;a.push(i)}r.push(a)}return r},du=(e,t)=>{if(!Xt(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=Bb(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"||!Yn(d))||typeof c!="string"||c.length===0)return null;s.push({reportHubId:l,businessDate:d,sourceType:c})}return{items:s,words:a}};var pa=e=>e.issues.map(t=>`${t.path.length===0?"(root)":t.path.join(".")}: ${t.code}`).join("; ");var Vb=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,Le=(e,t,r)=>new RangeError(`[daily-report] ${e} must be ${t}; got ${Vb(r)}`),cu=(e,t)=>new TypeError(`[daily-report] ${e} must be ${t}`),ro=(e,t,r)=>Le(e,`one of ${r.map(n=>JSON.stringify(n)).join(", ")}`,t),Xe=(e,t,r,n)=>{if(typeof t=="number"&&Number.isSafeInteger(t)&&t>=r&&(n===void 0||t<=n))return t;throw Le(e,n===void 0?`an integer >= ${r}`:`an integer from ${r} to ${n}`,t)};var ma=({hasListener:e,batchSize:t,inFlightBound:r,send:n})=>{Xe("createIdBatchScheduler: batchSize",t,1),Xe("createIdBatchScheduler: inFlightBound",r,1);let o=new Set,a=new Map,s=!1,i=()=>{let c=[],p=[...o];for(let u=p.length-1;u>=0&&c.length<t;u--){let y=p[u];o.delete(y),e(y)&&c.push(y)}return c.reverse()},l=c=>{let p=new AbortController;a.set(p,c);let u=()=>{a.delete(p),d()},y=m=>{u(),p.signal.aborted&&m===p.signal.reason||globalThis.reportError(m)};n(c,p.signal).then(u,y)},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 p=[];o.delete(c)&&p.push(c);for(let[u,y]of a)u.signal.aborted||!y.includes(c)||y.some(e)||(u.abort(),p.push(...y));return p},dispose:()=>{let c=[...o];o.clear();for(let[p,u]of a)p.signal.aborted||(p.abort(),c.push(...u));return c}}};var Ub=/^[1-9][0-9]*$/,Wb=/^(?:0|[1-9][0-9]*)$/,uu=e=>{if(e===null||!Ub.test(e))return null;let t=Number(e);return mt(t)?t:null},un=e=>{if(e===null||!Wb.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null};var Kb=2**31-1,fa=(e,t)=>{let r=Xe("holdDelayMsOf: maxDelayMs",t,0,Kb),n=un(e.headers.get("Retry-After"));if(n===null)return null;let o=n*1e3;return o<=r?o:null};var pu={request:e=>requestAnimationFrame(e),cancel:e=>cancelAnimationFrame(e)},mu=({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 tS}from"@aiquants/virtualscroll";import{createContext as rS,useMemo as nS}from"react";import{useContext as zb}from"react";var wt=(e,t,r)=>{let n=zb(e);if(n===null)throw new Error(`[daily-report] ${t} must be used within a ${r}`);return n};import{resolveVirtualScrollLabels as $b,resolveVirtualScrollLocale as jb,VIRTUAL_SCROLL_LABEL_CATALOGS as fu,VIRTUAL_SCROLL_LABEL_KEYS as Ci}from"@aiquants/virtualscroll";var Ru=["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"],bu=["totalCount","debounce","streamProgressCount","streamProgressRatio","streamRetrying","reportLoadFailed","reportSummaryLoadFailed","interviewerWithAffiliation","operationFailed","noticeRepeated","rowState","listRowPosition","listRowPositionInUnknownTotal","searchHitCount","searchFailed","searchMatchedKeywords","searchMatchedKeywordsDescription","searchFieldMatched","searchFieldMatchedByReading","searchFiltersToggle","searchFiltersFailed"],Ii=[...Ci,...Ru,...bu];var yu=Object.freeze({en:"en-US",ja:"ja-JP"}),Gb=Object.freeze({en:new Intl.NumberFormat(yu.en),ja:new Intl.NumberFormat(yu.ja)}),pe=(e,t)=>Gb[e].format(t),Yb=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"}),qb=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"}),Xb=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"}),Zb=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"}),Qb=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"}),Jb=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"}),vi=Object.freeze({en:Object.freeze({id:"ID",businessDate:"Business date",author:"Author",visitTime:"Visit time",createdAt:"Created at",updatedAt:"Updated at",updatedBy:"Updated by",category:"Category",creationCategory:"Creation category",customer:"Customer",subject:"Subject",content:"Content",interviewers:"Attendees",comments:"Comments",attachments:"Attachments",attachmentMissing:"File is missing",attachmentDownload:"Download",attachmentThumbnailUnavailable:"Preview unavailable",tabArticle:"Overview",tabRelations:"Related",reportTabList:"Report sections",relationsEmpty:"No related view configured yet.",title:"Daily Reports",listKeyboardHelp:"Up and Down arrows: previous or next report. Home and End: first or last report. Page Up and Page Down: move by a page. Enter or Space: select. Tab: the report's controls. Escape: back to the report row. Control+Home and Control+End: move to the nearest control before or after the list, when there is one.",tabList:"\u{1F4C4} List",tabTree:"\u{1F333} Tree",tabDetailList:"\u{1F4CB} DetailList",viewTabList:"Views",treeComingSoon:"The tree view is coming soon",totalCountLoading:"Total: loading...",createReport:"New report",createReportTitle:"Create a daily report",devControls:"Development-only controls",devSseToggle:"Toggle SSE real-time sync",devReload:"Reload data",devClearCache:"Clear the cache and reload",autoRead:"Auto-read",autoReadTitle:"Mark reports as read automatically while viewing them",loadErrorBadge:"Error",loadError:"Failed to load the daily reports.",reload:"Reload",loadingIds:"Loading report IDs...",streamFailed:"Failed to load",streamRetry:"Retry",streamRevalidating:"Refreshing",selectPrompt:"Select a report from the list on the left.",loading:"Loading...",reportNotFound:"Report not found",contentEmpty:"No content has been entered.",contentEmptyPreview:"No content has been entered",confirmDelete:"Are you sure you want to delete this report?",starAdd:"Add star",starRemove:"Remove star",markRead:"Mark as read",markUnread:"Mark as unread",deleteReport:"Delete",edit:"Edit",resizeHandle:"Resize the border between the report list and the detail pane",close:"Close",formTitle:"Title",formTitlePlaceholder:"Enter the report title",formContent:"Content",formContentPlaceholder:"Enter the report content",formCancel:"Cancel",formSave:"Save",formPublish:"Publish",commentPlaceholder:"Add a comment...",commentSend:"Send",commentDelete:"Delete comment",commentDeleteConfirm:"Delete",unknownUser:"Unknown",sourceInternal:"Original",searchInputLabel:"Search reports",searchPlaceholder:"Search 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: ${pe("en",e)}`,debounce:e=>`Debounce: ${e} ms`,streamProgressCount:e=>`Loading ${pe("en",e)}`,streamProgressRatio:(e,t,r)=>`Loading ${pe("en",e)} / ${pe("en",t)} (${r}%)`,streamRetrying:e=>`Reconnecting... (${pe("en",e)} received)`,reportLoadFailed:e=>`Failed to load report ${pe("en",e)}.`,reportSummaryLoadFailed:e=>`Failed to load the summary of report ${pe("en",e)}.`,interviewerWithAffiliation:(e,t)=>`${e} (${t})`,operationFailed:e=>`Failed to ${qb[e]}. Please try again later.`,noticeRepeated:e=>`(${pe("en",e)} times)`,rowState:({isRead:e,isStarred:t})=>`${e?"Read":"Unread"}${t?", starred":""}`,listRowPosition:(e,t)=>`${pe("en",e)} of ${pe("en",t)}`,listRowPositionInUnknownTotal:e=>`Item ${pe("en",e)}`,searchHitCount:e=>`${pe("en",e)} ${e===1?"hit":"hits"}`,searchFailed:e=>Zb[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 (${pe("en",e)})`,searchFiltersFailed:e=>Jb[e]}),ja:Object.freeze({id:"ID",businessDate:"\u55B6\u696D\u65E5",author:"\u4F5C\u6210\u8005",visitTime:"\u8A2A\u554F\u6642\u9593",createdAt:"\u4F5C\u6210\u65E5\u6642",updatedAt:"\u66F4\u65B0\u65E5\u6642",updatedBy:"\u66F4\u65B0\u8005",category:"\u533A\u5206",creationCategory:"\u4F5C\u6210\u533A\u5206",customer:"\u9867\u5BA2",subject:"\u4EF6\u540D",content:"\u5185\u5BB9",interviewers:"\u9762\u8AC7\u8005",comments:"\u30B3\u30E1\u30F3\u30C8",attachments:"\u6DFB\u4ED8\u30D5\u30A1\u30A4\u30EB",attachmentMissing:"\u5B9F\u4F53\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093",attachmentDownload:"\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9",attachmentThumbnailUnavailable:"\u30D7\u30EC\u30D3\u30E5\u30FC\u3092\u8868\u793A\u3067\u304D\u307E\u305B\u3093",tabArticle:"\u6982\u8981",tabRelations:"\u95A2\u9023",reportTabList:"\u65E5\u5831\u306E\u8868\u793A\u306E\u5207\u308A\u66FF\u3048",relationsEmpty:"\u95A2\u9023\u30D3\u30E5\u30FC\u306F\u307E\u3060\u69CB\u6210\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002",title:"\u65E5\u5831",listKeyboardHelp:"\u2191\u2193 \u3067\u524D\u5F8C\u306E\u65E5\u5831\u3001Home / End \u3067\u5148\u982D\u30FB\u672B\u5C3E\u3001PageUp / PageDown \u3067\u30DA\u30FC\u30B8\u79FB\u52D5\u3001Enter \u307E\u305F\u306F Space \u3067\u9078\u629E\u3001Tab \u3067\u305D\u306E\u65E5\u5831\u306E\u64CD\u4F5C\u90E8\u54C1\u3078\u3001Escape \u3067\u65E5\u5831\u306E\u884C\u3078\u623B\u308A\u307E\u3059\u3002Ctrl+Home / Ctrl+End \u3067\u4E00\u89A7\u306E\u76F4\u524D\u30FB\u76F4\u5F8C\u306E\u64CD\u4F5C\u90E8\u54C1\u304C\u3042\u308C\u3070\u305D\u3053\u3078\u79FB\u308A\u307E\u3059\u3002",tabList:"\u{1F4C4} \u4E00\u89A7",tabTree:"\u{1F333} \u30C4\u30EA\u30FC",tabDetailList:"\u{1F4CB} \u8A73\u7D30\u4E00\u89A7",viewTabList:"\u8868\u793A\u306E\u5207\u308A\u66FF\u3048",treeComingSoon:"\u30C4\u30EA\u30FC\u306F\u73FE\u5728\u6E96\u5099\u4E2D\u3067\u3059",totalCountLoading:"\u7DCF\u4EF6\u6570: \u8AAD\u307F\u8FBC\u307F\u4E2D...",createReport:"\u65E5\u5831\u4F5C\u6210",createReportTitle:"\u65E5\u5831\u3092\u4F5C\u6210",devControls:"\u958B\u767A\u74B0\u5883\u9650\u5B9A\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB",devSseToggle:"SSE \u30EA\u30A2\u30EB\u30BF\u30A4\u30E0\u540C\u671F\u5207\u66FF",devReload:"\u30C7\u30FC\u30BF\u518D\u53D6\u5F97 (\u30EA\u30ED\u30FC\u30C9)",devClearCache:"\u30AD\u30E3\u30C3\u30B7\u30E5\u7834\u68C4 & \u518D\u53D6\u5F97",autoRead:"\u81EA\u52D5\u65E2\u8AAD",autoReadTitle:"\u65E5\u5831\u95B2\u89A7\u6642\u306E\u81EA\u52D5\u65E2\u8AAD\u51E6\u7406\u5207\u66FF",loadErrorBadge:"\u30A8\u30E9\u30FC",loadError:"\u65E5\u5831\u30C7\u30FC\u30BF\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002",reload:"\u518D\u8AAD\u307F\u8FBC\u307F",loadingIds:"\u65E5\u5831 ID \u3092\u8AAD\u307F\u8FBC\u307F\u4E2D\u3067\u3059...",streamFailed:"\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F",streamRetry:"\u518D\u8A66\u884C",streamRevalidating:"\u6700\u65B0\u5316\u4E2D",selectPrompt:"\u5DE6\u5074\u306E\u4E00\u89A7\u304B\u3089\u65E5\u5831\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002",loading:"\u8AAD\u307F\u8FBC\u307F\u4E2D...",reportNotFound:"\u65E5\u5831\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093",contentEmpty:"\u5185\u5BB9\u306F\u767B\u9332\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002",contentEmptyPreview:"\u5185\u5BB9\u306F\u767B\u9332\u3055\u308C\u3066\u3044\u307E\u305B\u3093",confirmDelete:"\u672C\u5F53\u306B\u524A\u9664\u3057\u307E\u3059\u304B\uFF1F",starAdd:"\u30B9\u30BF\u30FC\u3092\u4ED8\u3051\u308B",starRemove:"\u30B9\u30BF\u30FC\u3092\u5916\u3059",markRead:"\u65E2\u8AAD\u306B\u3059\u308B",markUnread:"\u672A\u8AAD\u306B\u3059\u308B",deleteReport:"\u524A\u9664\u3059\u308B",edit:"\u7DE8\u96C6",resizeHandle:"\u65E5\u5831\u4E00\u89A7\u3068\u8A73\u7D30\u30DA\u30A4\u30F3\u306E\u5883\u754C\u306E\u30B5\u30A4\u30BA\u5909\u66F4\u30CF\u30F3\u30C9\u30EB",close:"\u9589\u3058\u308B",formTitle:"\u30BF\u30A4\u30C8\u30EB",formTitlePlaceholder:"\u65E5\u5831\u306E\u30BF\u30A4\u30C8\u30EB\u3092\u5165\u529B",formContent:"\u5185\u5BB9",formContentPlaceholder:"\u65E5\u5831\u306E\u5185\u5BB9\u3092\u5165\u529B",formCancel:"\u30AD\u30E3\u30F3\u30BB\u30EB",formSave:"\u4FDD\u5B58",formPublish:"\u516C\u958B",commentPlaceholder:"\u30B3\u30E1\u30F3\u30C8\u3092\u8FFD\u52A0...",commentSend:"\u9001\u4FE1",commentDelete:"\u524A\u9664",commentDeleteConfirm:"\u524A\u9664\u3059\u308B",unknownUser:"\u4E0D\u660E\u306A\u30E6\u30FC\u30B6\u30FC",sourceInternal:"\u30AA\u30EA\u30B8\u30CA\u30EB",searchInputLabel:"\u65E5\u5831\u3092\u691C\u7D22",searchPlaceholder:"\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: ${pe("ja",e)} \u4EF6`,debounce:e=>`\u30C7\u30D0\u30A6\u30F3\u30B9: ${e} ms`,streamProgressCount:e=>`\u8AAD\u307F\u8FBC\u307F\u4E2D ${pe("ja",e)} \u4EF6`,streamProgressRatio:(e,t,r)=>`\u8AAD\u307F\u8FBC\u307F\u4E2D ${pe("ja",e)} / ${pe("ja",t)} (${r}%)`,streamRetrying:e=>`\u518D\u63A5\u7D9A\u4E2D... (${pe("ja",e)} \u4EF6\u53D7\u4FE1\u6E08)`,reportLoadFailed:e=>`\u65E5\u5831 ${pe("ja",e)} \u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002`,reportSummaryLoadFailed:e=>`\u65E5\u5831 ${pe("ja",e)} \u306E\u6982\u8981\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002`,interviewerWithAffiliation:(e,t)=>`${e} (${t})`,operationFailed:e=>`${Yb[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=>`(${pe("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 ${pe("ja",t)} \u4EF6\u4E2D ${pe("ja",e)} \u4EF6\u76EE`,listRowPositionInUnknownTotal:e=>`${pe("ja",e)} \u4EF6\u76EE`,searchHitCount:e=>`${pe("ja",e)} \u4EF6\u30D2\u30C3\u30C8`,searchFailed:e=>Xb[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 (${pe("ja",e)})`,searchFiltersFailed:e=>Qb[e]})}),Su=Object.freeze({en:Object.freeze({...fu.en,...vi.en}),ja:Object.freeze({...fu.ja,...vi.ja})}),eS=e=>{let t={},r=!1;for(let n of Ci){let o=Object.hasOwn(e,n)?e[n]:void 0;o!==void 0&&(t[n]=o,r=!0)}return r?t:void 0},hu=(e,t,r)=>{e[t]=r},_i=(e,t)=>{let r=jb(e);if(t===void 0)return Su[r];if(t===null||typeof t!="object")throw Le("labels","an object",t);let n=Object.getPrototypeOf(t);if(n!==Object.prototype&&n!==null)throw Le("labels","a plain object (prototype Object.prototype or null)",t);for(let s of Object.keys(t))if(!Ii.includes(s))throw ro("labels key",s,Ii);let a={...$b(r,eS(t)),...vi[r]};for(let s of Ru){let i=Object.hasOwn(t,s)?t[s]:void 0;if(i!==void 0){if(typeof i!="string"||i.trim()==="")throw Le(`labels.${s}`,"a non-blank string",i);hu(a,s,i)}}for(let s of bu){let i=Object.hasOwn(t,s)?t[s]:void 0;if(i!==void 0){if(typeof i!="function")throw Le(`labels.${s}`,"a function",i);hu(a,s,i)}}return Object.freeze(a)},gu=e=>{let t={};for(let r of Ci)t[r]=e[r];return Object.freeze(t)};import{jsx as Li,jsxs as fS}from"react/jsx-runtime";var oS=e=>({Internal:{label:e.sourceInternal,badgeClassName:"bg-emerald-100 text-emerald-800 dark:bg-emerald-900/30 dark:text-emerald-400"}}),aS=({title:e,annotation:t})=>fS("header",{className:"flex flex-wrap items-baseline justify-between gap-2 px-2 py-1",children:[Li("span",{className:"text-nowrap text-slate-700 text-sm dark:text-slate-200",children:e}),t?Li("span",{className:"text-slate-600 text-xs dark:text-slate-300",children:t}):null]}),no=Object.freeze({apiBasePath:"/daily_report/api",ssePath:"/sse/daily_report/updates",renderHeader:aS,showDevControls:!1,headingLevel:3}),Eu=["apiBasePath","ssePath","locale","labels","sourceTypeConfigs","renderHeader","showDevControls","headingLevel","onError","onSessionExpired","search"];var sS=e=>{for(let t of Object.keys(e))if(!Eu.includes(t))throw ro("config key",t,Eu)},Tu=[2,3,4,5],iS=e=>{if(e===void 0)return no.headingLevel;let t=Tu.find(r=>r===e);if(t===void 0)throw Le("config.headingLevel",`one of ${Tu.join(", ")} (the level of each report's heading)`,e);return t},Au=["debounceMs","renderFilterSelect"],lS=Object.freeze({min:300,max:5e3}),dS=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},cS=e=>{if(e===void 0)return null;if(typeof e!="function")throw Le("config.search.renderFilterSelect","a function (it renders the control of each filter cell)",e);return e},uS=e=>{if(e===void 0)return null;if(!dS(e))throw Le("config.search","a plain object ({} for Enter only, or { debounceMs })",e);for(let o of Object.keys(e))if(!Au.includes(o))throw ro("config.search key",o,Au);let t=e.debounceMs,{min:r,max:n}=lS;return{debounceMs:t===void 0?null:Xe("config.search.debounceMs",t,r,n),renderFilterSelect:cS(e.renderFilterSelect)}},pS=e=>{for(let[t,r]of Object.entries(e)){let n=r.name;if(n!==void 0&&(typeof n!="string"||n.trim()===""))throw Le(`config.sourceTypeConfigs.${t}.name`,"a non-blank string (the expansion of the badge label)",n)}return e},mS=e=>{sS(e);let t=e.onSessionExpired;if(t===void 0)throw cu("config.onSessionExpired","a function (the host decides the navigation on session expiry)");if(typeof t!="function")throw Le("config.onSessionExpired","a function (the host decides the navigation on session expiry)",t);let r=tS(e.locale),n=_i(r,e.labels),o=no;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?oS(n):pS(e.sourceTypeConfigs),renderHeader:e.renderHeader===void 0?o.renderHeader:e.renderHeader,showDevControls:e.showDevControls===void 0?o.showDevControls:e.showDevControls,headingLevel:iS(e.headingLevel),onError:e.onError,onSessionExpired:e.onSessionExpired,search:uS(e.search)}},Du=rS(null),Ni=({config:e,children:t})=>{let r=nS(()=>mS(e),[e]);return Li(Du.Provider,{value:r,children:t})},$=()=>wt(Du,"useDailyReportConfig","DailyReportConfigProvider"),Zt=(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},ya=(e,t)=>t?.allowComment!==void 0?t.allowComment:!e||e.toLowerCase()==="internal";import{tapScrollCircleSampleVisual as hS}from"@aiquants/virtualscroll";var yS=4;var pn=120,wu=1e3,Ra=.8,Oi={maxVelocity:18,deceleration:.0018,startVelocityThreshold:.03},ba=20,xu=6,Sa={reportHubId:-1,businessDate:null},ga=240,Ea=15,RS=8,Iu=460,vu=3,Cu=352,bS={enabled:!0,renderVisual:hS,maxSpeedCurve:{exponentialSteepness:3,exponentialScale:8},maxSpeedMultiplier:8,className:"[[data-daily-report-keyboard-focus]_&]:invisible"},Ta={width:RS,tapScrollCircleOptions:bS,enableArrowButtonTabStops:!1},Aa=["pen","touch"];var Mu=ft(void 0,1,"DetailLoader"),Lu=(e,t)=>{let r=globalThis[e];return typeof r=="number"&&!Number.isNaN(r)?r:t},Mi=null,wa=()=>(Mi===null&&(Mi={ttl:Lu("__DAILY_REPORT_CACHE_TTL__",3e5),reviveMs:Lu("__DAILY_REPORT_CACHE_REVIVE_MS__",6e4)}),Mi),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=kr(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()){Mu.warn(`Stale update skipped id=${e}`);return}this.set({...n.data,...t},Math.max(n.expiresAt,Date.now()+wa().reviveMs))}},delete(e,t){this.reports.delete(e);let r=kr(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+wa().ttl;for(let[s,i]of this.recentDeletes)n-i>1e4&&this.recentDeletes.delete(s);let a=e.map(s=>{if(this.isLocked(s.reportHubId))return s;let i=this.lastMutations.get(s.reportHubId);if(i&&r>0&&i>r)return this.reports.get(s.reportHubId)?.data??s;let l=this.reports.get(s.reportHubId)?.data,d=this.merge(s,l);return this.set(d,o,!1),d});return t&&this.lists.set(t,{data:a,expiresAt:o}),a}},Pu=(e,t,r=!0)=>Z.set(e,t,r),ot=(e,t)=>Z.getReport(e,t?.ignoreExpiry),yt=(e,t)=>Z.update(e,t),Ia=(e,t)=>Z.delete(e,t),so=()=>{Z.clear(),Da.clear(),LS()},xa=(e,t)=>{let r=Z.lastMutations.get(e);(r===void 0||r<t)&&Z.lastMutations.set(e,t)},Fi=e=>{xa(e,Date.now())},ku=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),xa(e,Date.now()),()=>{let n=Z.lockHolders.get(e);n===void 0||!n.delete(t)||(n.size===0&&Z.lockHolders.delete(e),xa(e,Date.now()))}},Fu=(e,t)=>{let r=performance.now()+t,n=Z.lockHolds.get(e);(n===void 0||n<r)&&Z.lockHolds.set(e,r),xa(e,Date.now()+t)},Hu=e=>Z.recentDeletes.set(e,Date.now()),Bu=(e,t)=>{let r=n=>{n===e&&t()};return Z.listeners.add(r),()=>{Z.listeners.delete(r)}},Sr=(e,t)=>{Z.prune(),Z.set(t,Date.now()+wa().ttl)},Vu=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()+wa().ttl)},AS=oo.object({report:Mt}),DS=oo.object({reports:oo.array(Mt)}),Uu=(e,t)=>new Error(`[daily-report] ${e} answered HTTP ${t}`),Hi=async(e,t,r)=>{if(!e.ok)throw Uu(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 (${pa(n.error)})`);return n.data},wS=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({[xe.reportHubId]:String(t)}),s=fetch(`${e}/${Fe.report}?${a}`,{cache:"no-cache"}).then(i=>Hi(i,AS,Fe.report)).then(({report:i})=>Z.cacheMany([i],null,o)[0]).finally(()=>Z.pendingReports.delete(t));return Z.pendingReports.set(t,s),s},Da=new Map,xS=1e4,IS=(e,t)=>{let r=Da.get(t),n=Date.now();if(r&&n-r.at<xS)return r.inFlight;let o=Bi(e,t,{forceRefresh:!0}),a={at:n,inFlight:o};return Da.set(t,a),o.finally(()=>{Da.get(t)===a&&(a.inFlight=null)}).catch(()=>{}),o},Bi=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({[xe.businessDate]:t}),i=fetch(`${e}/${Fe.businessDate}?${s}`,{cache:"no-cache"}).then(l=>Hi(l,DS,Fe.businessDate)).then(({reports:l})=>Z.cacheMany(l,t,a)).finally(()=>Z.pendingLists.delete(t));return Z.pendingLists.set(t,i),i},vS=oo.object({reports:oo.array(Mt)}),CS=5e3,Pi=new Map,_S=e=>{let t=new Map,r=new Map,n=new Map,o=new Set,a=(u,y)=>{let m=[];for(let f of u)r.get(f)===y&&(r.delete(f),m.push(f));return m},s=(u,y)=>{let m=t.get(u);if(m!==void 0){t.delete(u),o.delete(u);for(let f of m)y(f)}},i=(u,y)=>{let f=setTimeout(()=>{for(let b of u)n.delete(b),t.has(b)&&(o.add(b),c.enqueue(b))},y);for(let b of u)n.set(b,f)},l=(u,y,m)=>{let f=[];for(let b of u)y!==null&&t.has(b)&&!o.has(b)?f.push(b):s(b,R=>R.reject(m));y!==null&&f.length>0&&i(f,y)},d=async(u,y)=>{for(let b of u)r.set(b,y);let m=Date.now(),f=new URLSearchParams({[xe.reportIds]:u.join(",")});try{let b=await fetch(`${e}/${Fe.reports}?${f}`,{cache:"no-cache",signal:y});if(b.status===429){l(a(u,y),fa(b,CS),Uu(Fe.reports,b.status));return}let{reports:R}=await Hi(b,vS,Fe.reports);if(y.aborted)return;let E=new Map(Z.cacheMany(R,null,m).map(h=>[h.reportHubId,h]));for(let h of a(u,y))s(h,S=>S.resolve(E.get(h)??null))}catch(b){for(let R of a(u,y))s(R,E=>E.reject(b))}},c=ma({hasListener:u=>t.has(u),batchSize:qt.maxDetailIds,inFlightBound:eo,send:d}),p=mu({frames:pu,handOn:u=>{for(let y of u)c.enqueue(y)}});return{readers:t,pending:r,holds:n,retried:o,gate:p,scheduler:c}},LS=()=>{for(let{readers:e,pending:t,holds:r,retried:n,gate:o,scheduler:a}of Pi.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)}},NS=new DOMException("The detail reader left its batched read","AbortError"),OS=(e,t,r)=>new Promise((n,o)=>{let a=Pi.get(e);a===void 0&&(a=_S(e),Pi.set(e,a));let{readers:s,pending:i,holds:l,retried:d,gate:c,scheduler:p}=a,u={resolve:n,reject:o},y=s.get(t);y===void 0?s.set(t,new Set([u])):y.add(u),c.holds(t)||p.isWanted(t)||i.has(t)||l.has(t)||c.enter(t);let m=()=>{let f=s.get(t);if(!(f===void 0||!f.delete(u))&&(o(r.reason),!(f.size>0))){s.delete(t),d.delete(t),c.leave(t);for(let b of p.release(t))i.delete(b)}};r.addEventListener("abort",m,{once:!0})}),va=SS("date"),ki=(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)}},Nu=(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}=ki(e,kr(t));return{id:e,report:r,error:null,isLoading:r===null,isRefetching:!1}},mn=(e,t)=>r=>r.id!==e?r:Object.keys(t).some(o=>r[o]!==t[o])?{...r,...t}:r,Vr=(e,t)=>{let{apiBasePath:r}=$(),n=Ou(va),[o,a]=TS(()=>Nu(e,t)),s=ES(0),i=o;return o.id!==e&&(i=Nu(e,t),a(i)),_u(()=>{let l=kr(t),d=c=>{c===e&&a(mn(e,{report:ki(e,l).report}))};return Z.listeners.add(d),()=>{Z.listeners.delete(d)}},[e,t]),_u(()=>{let l=kr(t);s.current+=1;let d=s.current,c=null,p=()=>{c?.abort(NS),s.current+=1};if(e<=0)return p;let{report:u,isStale:y}=ki(e,l);if(u&&!y)return a(mn(e,{report:u,error:null,isLoading:!1,isRefetching:!1})),p;a(mn(e,{report:u,isLoading:!u,isRefetching:!0}));let m=async()=>{try{let b=null;if(n==="ids")c=new AbortController,b=await OS(r,e,c.signal);else if(l){let R=Z.getList(l)!==null;if(b=(await Bi(r,l)).find(h=>h.reportHubId===e)??null,!b&&R){let h=await IS(r,l);h&&(b=h.find(S=>S.reportHubId===e)??null)}}else b=await wS(r,e);s.current===d&&a(mn(e,{report:b,error:null}))}catch(b){s.current===d&&a(mn(e,{error:b instanceof Error?b:new Error("Load failed")}))}finally{s.current===d&&a(mn(e,{isLoading:!1,isRefetching:!1}))}};if(u===null)return m(),p;let f=setTimeout(m,pn);return()=>{clearTimeout(f),p()}},[e,t,r,n]),{report:i.report,error:i.error,isLoading:i.isLoading,isRefetching:i.isRefetching}},Vi=()=>{let{apiBasePath:e}=$(),t=Ou(va);return gS(r=>{if(t==="ids")return;let n=kr(r);n&&!Z.getList(n)&&Bi(e,n).catch(o=>Mu.warn("Prefetch error",n,o))},[e,t])};import{VIRTUAL_SCROLL_LABEL_KEYS as MS}from"@aiquants/virtualscroll";import{useRef as PS}from"react";var Ca=()=>{let{locale:e,labels:t}=$(),r=gu(t),n=PS(null),o=n.current;return o!==null&&MS.every(a=>o[a]===r[a])?{locale:e,labels:o}:(n.current=r,{locale:e,labels:r})};import{useState as kS}from"react";var Be=e=>{let[t]=kS(()=>({current:e()}));return t};import{useLayoutEffect as jS,useState as GS}from"react";import{flushSync as YS}from"react-dom";var zu=Object.freeze({visibilityProperty:!0}),Wu=new Set(["auto","scroll"]),Ku=new Set(["","true","plaintext-only"]),$u=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=Yu(n)?n.host:null}return!1},FS=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(zu))return!0;return!1},ju=e=>e.localName==="area"?FS(e):e.checkVisibility(zu),HS=e=>{let t=e.getAttribute("contenteditable");if(t===null||!Ku.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(Ku.has(o))return!1;if(o==="false")return!0}return!0},BS=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&&ju(n)&&(r=n)}return r===e},VS=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&&Wu.has(a.overflowX)||n&&Wu.has(a.overflowY)},US=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 HS(e)}},WS=/^[\t\n\f\r ]*[+-]?\d/,KS=e=>{let t=e.getAttribute("tabindex");return t!==null&&WS.test(t)?e.tabIndex:null},Gu=(e,t)=>{for(let r of Wi(e))if(t(r)||Gu(r,t))return!0;return!1},_a=(e,t)=>{let r=t.get(e);if(r!==void 0)return r;let n=zS(e,t);return t.set(e,n),n},zS=(e,t)=>{if(!lo(e))return"none";let r=KS(e),n=r===null&&US(e),o=r===null&&!n&&VS(e);return!(r!==null||n||o)||e.matches(":disabled")||$u(e)||!ju(e)?"none":r!==null?r>=0?"sequential":"programmatic":n?e.localName==="input"&&e.type==="radio"?BS(e)?"sequential":"programmatic":"sequential":Gu(e,a=>_a(a,t)==="sequential")?"none":"sequential"},Ui=(e,t)=>{for(let r of Wi(e))t(r),Ui(r,t)},Wi=e=>{if(he(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 io=(e,t)=>{let r=[],n=[],o=[],a=new Map;if(e===t)return Ui(e,l=>{_a(l,a)==="sequential"&&n.push(l)}),{before:r,within:n,after:o};let s=!1,i=(l,d)=>{for(let c of Wi(l)){let p=c===t;!p&&_a(c,a)==="sequential"&&(d?n.push(c):s?o.push(c):r.push(c)),i(c,d||p),p&&(s=!0)}};return i(e,!1),{before:r,within:n,after:o}},La=e=>{let t=[],r=new Map;return Ui(e,n=>{_a(n,r)==="sequential"&&t.push(n)}),t},he=e=>e!==null&&"nodeType"in e&&e.nodeType===e.ELEMENT_NODE,lo=e=>"focus"in e&&"blur"in e,$S=e=>e.nodeType===e.DOCUMENT_NODE,Yu=e=>e.nodeType===e.DOCUMENT_FRAGMENT_NODE&&"host"in e,Ve=e=>{let t=e.getRootNode();if(Yu(t)){let r=t.activeElement;return r===null?Ve(t.host):r}return $S(t)?t.activeElement:null},Ur=e=>{let t=Ve(e);return t===null||t===t.ownerDocument.body||$u(t)},Ne=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 Na=e=>{let[t,r]=GS(null);return jS(()=>{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?YS(()=>r(l)):r(l)},s=l=>{for(let d of l)a(d.borderBoxSize[0].blockSize)},i=new(Ne(n)).ResizeObserver(s);return i.observe(n,{box:"border-box"}),()=>i.disconnect()},[e]),t};var qu=255,Ki=[null],Xu=new Map,Oa=[void 0],Zu=new Map,kt=e=>{if(e===null)return 0;let t=Xu.get(e);if(t!==void 0)return t;let r=Ki.length;return Ki.push(e),Xu.set(e,r),r},Qt=e=>{let t=Ki[e];if(t===void 0)throw new Error(`[daily-report] No business date has the code ${e}`);return t},co=e=>{if(e===void 0)return 0;let t=Zu.get(e);if(t!==void 0)return t;let r=Oa.length;if(r>qu)throw new Error(`[daily-report] The rows hold more than ${qu} distinct source types; ${e} has no code`);return Oa.push(e),Zu.set(e,r),r},Wr=e=>{if(!(Number.isInteger(e)&&e>=0&&e<Oa.length))throw new Error(`[daily-report] No source type has the code ${e}`);return Oa[e]},Pt=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:Wr(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 Wr(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}`)}},Qu=e=>{if(e instanceof Pt)return e;throw new Error("[daily-report] A row batch the package did not build has no code columns")},ht=new Pt(0,new Float64Array(0),new Uint32Array(0),new Uint8Array(0)),qS=Float64Array.BYTES_PER_ELEMENT+Uint32Array.BYTES_PER_ELEMENT+Uint8Array.BYTES_PER_ELEMENT,fn=e=>{let t=new ArrayBuffer(e*qS),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)}},Jt=(e,t,r)=>{if(r===0)return ht;let n=t+r;return new Pt(r,e.ids.subarray(t,n),e.businessDateCodes.subarray(t,n),e.sourceTypeCodes.subarray(t,n))},XS=16,xt=class{constructor(t=XS){this.count=0;this.columns=null;this.initialCapacity=Xe("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,kt(t.businessDate),co(t.sourceType))}pushFrom(t,r){this.push(t.ids[r],t.businessDateCodes[r],t.sourceTypeCodes[r])}build(){let t=this.columns;return t===null?ht:Jt(t,0,this.count)}grow(){let t=this.columns,r=fn(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}},zi=e=>{let t=new xt(e.length);for(let r of e)t.pushItem(r);return t.build()};var It=10,uo=1<<It,hn=uo-1,ZS=uo,QS=ZS/2,yn=new Map,Gi=new Map,Yi=(e,t,r)=>e.businessDate===t&&e.sourceType===r,JS=(e,t,r)=>{let n=yn.get(e),o=n===void 0?Gi.get(e):n;return o!==void 0&&Yi(o,t,r)?o:void 0},Ma=(e,t,r)=>{let n=Qt(t),o=Wr(r),a=yn.get(e);if(a!==void 0&&Yi(a,n,o))return a;let s=a===void 0?Gi.get(e):void 0,i=s!==void 0&&Yi(s,n,o)?s:{reportHubId:e,businessDate:n,sourceType:o};return yn.set(e,i),yn.size>=QS&&(Gi=yn,yn=new Map),i},Ju=(e,t,r)=>{let n=Qt(t),o=Wr(r),a=JS(e,n,o);return a===void 0?{reportHubId:e,businessDate:n,sourceType:o}:a};var at=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 ep(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=Ju(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}}}}},Pa=new at([],0),ep=(e,t)=>{let r=e.chunks[t>>>It],n=t&hn;return Ma(r.ids[n],r.businessDateCodes[n],r.sourceTypeCodes[n])},Kr=(e,t)=>e.chunks[t>>>It].ids[t&hn],Rn=(e,t)=>e.chunks[t>>>It].businessDateCodes[t&hn],Xi=(e,t)=>e.chunks[t>>>It].sourceTypeCodes[t&hn],$i={businessDate:null,reportHubId:0},ji={businessDate:null,reportHubId:0},bn=(e,t,r,n)=>($i.reportHubId=e,$i.businessDate=Qt(t),ji.reportHubId=r,ji.businessDate=Qt(n),su($i,ji)),tp=e=>{if(e.length===0)return Pa;let t=[];return rp(t,e,e.length),new at(t,e.length)},rp=(e,t,r)=>{for(let n=0;n<r;n+=uo)e.push(Jt(t,n,Math.min(uo,r-n)))},zr={removals:[],replacements:[],additions:ht,insertions:[]},eg=e=>{let t=fn(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)),Jt(t,0,e.length)},tg=(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>>>It,d=n.get(l);d===void 0&&(d=eg(e.chunks[l]),n.set(l,d),r[l]=d);let c=o&hn;d.ids[c]=a,d.businessDateCodes[c]=s,d.sourceTypeCodes[c]=i}return new at(r,e.length)},Sn=(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,w)=>T-w),a=[...t.replacements].sort((T,w)=>T.index-w.index);if(o.length===0&&r.length===0)return tg(e,a);let s=e.length,i=s-o.length+r.length;if(i===0)return Pa;let d=Math.min(o.length===0?s:o[0],a.length===0?s:a[0].index,r.length===0?s:n[0])>>>It,c=e.chunks.slice(0,d),p=d<<It,u=i-p,y=u===0?ht:fn(u),m=0,f=()=>{if(m===u)throw new Error(`[daily-report] Edits of a list of ${s} rows write more than the ${i} rows they leave`);return u-m},b=(T,w,C)=>{f(),y.ids[m]=T,y.businessDateCodes[m]=w,y.sourceTypeCodes[m]=C,m+=1},R=(T,w)=>{for(let C=T;C<w;){let H=e.chunks[C>>>It],U=C&hn,B=Math.min(w-C,uo-U,f());y.ids.set(H.ids.subarray(U,U+B),m),y.businessDateCodes.set(H.businessDateCodes.subarray(U,U+B),m),y.sourceTypeCodes.set(H.sourceTypeCodes.subarray(U,U+B),m),m+=B,C+=B}},E=d<<It,h=0,S=0,g=0;for(;;){let T=Math.min(h<o.length?o[h]:s,S<a.length?a[S].index:s,g<r.length?n[g]:s);for(R(E,T),E=T;g<r.length&&n[g]===T;g++)b(r.ids[g],r.businessDateCodes[g],r.sourceTypeCodes[g]);if(T===s)break;if(h<o.length&&o[h]===T)h+=1,E=T+1;else if(S<a.length&&a[S].index===T){let w=a[S];b(w.id,w.businessDateCode,w.sourceTypeCode),S+=1,E=T+1}}return rp(c,y,m),new at(c,p+m)},po=(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<<It)+s}return-1},np=(e,t)=>{let r=po(e,t);return r===-1?void 0:ep(e,r)},qi=(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(Ju(s,e.businessDateCodes[a],e.sourceTypeCodes[a]))}return t.set(e,o),o},op=(e,t,r)=>{let n=[];if(!(e instanceof at)){for(let o of e)r(o.reportHubId)&&n.push(o);return n}for(let o of e.chunks){let a=qi(o,t,r);for(let s=0;s<a.length;s++)n.push(a[s])}return n},ap=(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=qi(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=qi(t.chunks[l],r,n);for(let c=0;c<d.length;c++)i.push(d[c])}return{before:s,after:i}};var sp=(e,t)=>Number.isInteger(t)&&t>=0&&t<e.length,me=(e,t)=>sp(e,t)?e.at(t):void 0,rg=(e,t)=>e instanceof at?sp(e,t)?Kr(e,t):void 0:me(e,t)?.reportHubId,ng=16,ip=(e,t)=>e!==null&&e.reportHubId===t?e.index:null,fe=(e,t,r)=>{let n=r===null?void 0:me(e,r);if(r!==null&&n!==void 0){if(n.reportHubId===t)return r;for(let o=1;o<=ng;o++){if(me(e,r+o)?.reportHubId===t)return r+o;if(me(e,r-o)?.reportHubId===t)return r-o}}return Rt(e,t)},Rt=(e,t)=>{if(e instanceof at)return po(e,t);let r=0;for(let n of e){if(n.reportHubId===t)return r;r+=1}return-1},Zi=e=>{let t=me(e,0);return t===void 0?null:t.reportHubId},lp=(e,t)=>{let r=[];for(let n of e){if(r.length>=t)break;r.push(n.reportHubId)}return r},Ft=(e,t)=>{let r=me(e,t);if(r===void 0)throw dp(e,t);return r},ka=(e,t)=>{let r=rg(e,t);if(r===void 0)throw dp(e,t);return r},dp=(e,t)=>new Error(`[daily-report] No report at index ${t} of a list of ${e.length}`);var Fa="data-daily-report-row",cp=`[${Fa}]`,up="data-daily-report-button",Ha="data-daily-report-row-focus",Ba={[Ha]:""},pp="data-daily-report-view",Va={[pp]:""},Qi="treegrid",og='button, a[href], input, textarea, select, label, [role="button"], [contenteditable]:not([contenteditable="false"])',ag=/^[1-9]\d*$/,mp=e=>{if(e===null||!ag.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null},fp=e=>e.querySelector(`[${pp}] [role="${Qi}"]`),yp=e=>e.querySelector(`[${Ha}]`),$r=(e,t)=>{if(t===null||!he(e))return null;let r=e.closest(cp);return r===null||r===t||!t.contains(r)?null:r},mo=e=>mp(e.getAttribute(Fa)),gr=e=>mp(e.getAttribute("aria-posinset")),hp=e=>{let t=e.closest(cp),r=t===null?null:gr(t);return r===null?null:r-1},Rp=(e,t)=>{if(e===null)return null;let r=mo(e);if(r===null)return null;let n=gr(e),o=fe(t,r,n===null?null:n-1);return o===-1?null:{reportHubId:r,index:o}},bp=(e,t)=>{if(!he(e))return!1;let r=e.closest(og);return r!==null&&r!==t&&t.contains(r)};import{createContext as Sp}from"react";var jr=Sp(0),Er=-1,gp=(e,t)=>t.phase==="complete"?e:t.totalCount===null?Er:Math.max(e,t.totalCount),Gr=Sp(-1);import{useVirtualScrollItem as Tp}from"@aiquants/virtualscroll";import{createContext as Ap,useCallback as Dp,useContext as Ji,useLayoutEffect as Ep,useReducer as sg}from"react";import{flushSync as ig}from"react-dom";var lg=()=>{},fo=Object.freeze({visible:0,reach:1,near:2,far:3}),dg=(e,t,r,n,o)=>{let a=e.handle.getZone();if(t&&a==="far")return null;let s=o(e.reportHubId);return s===null?[fo[a],Number.POSITIVE_INFINITY,0]:r===null?[fo[a],s,0]:[fo[a],Math.abs(s-r),Math.sign(s-r)===-n?1:0]},cg=(e,t)=>{for(let r=0;r<e.length;r++){let n=e[r]-t[r];if(n!==0)return n}return 0},wp=({gridId:e,isHolding:t,subscribeHold:r,holdKeys:n,activeIndex:o,indexOf:a})=>{let s=new Map,i=new Map,l=new Map,d=null,c=null,p=null,u="idle",y=0,m=null,f=1,b=0,R=!1,E=null,h=0,S=null,g=()=>{let D=t(),V=o(),F=null,z=null;for(let j of s.values()){let Q=dg(j,D,V,f,a);Q===null||z!==null&&cg(Q,z)>=0||(F=j,z=Q)}return F},T=D=>s.get(D.reportHubId)!==D?!1:(s.delete(D.reportHubId),D.unsubscribeZone(),!0),w=()=>{c===null||u!=="idle"||g()===null||(u="arming",c.port1.postMessage(null))},C=D=>{d!==null&&(u="framing",R=D,y=d.requestAnimationFrame(B))},H=()=>{let D=n();return D===null?0:D.count},U=D=>{let V=n();return V===null||V.nextAt===null||S===null?!1:V.count===h&&V.nextAt>D},B=D=>{if(y=0,!(d===null||c===null)){if(R&&E!==null&&D>E&&(S===null||D-E<S)&&(S=D-E),E=D,h=H(),t()&&(S===null||!U(D+S))){g()===null?u="idle":C(!0);return}c.port2.postMessage(null)}},A=()=>d===null||E===null||S===null?Number.POSITIVE_INFINITY:E+S*Math.max(1,Math.ceil((d.performance.now()-E)/S)),v=D=>{T(D),ig(D.apply)},I=()=>{u="running";let D=o();D!==null&&m!==null&&D!==m&&(f=D>m?1:-1),m=D;try{let V=t();if(V&&!U(A()))return;let F=g();if(F===null)return;v(F);let z=g();if(z===null||fo[z.handle.getZone()]>fo.reach||V&&(F.sizing!=="fixed"||z.sizing!=="fixed"))return;v(z)}finally{u="idle",g()!==null&&C(!0)}},L=()=>{u==="arming"&&C(!1)},M=()=>{S=null,w()},O=()=>{u==="framing"&&y===0&&I()};return{gridId:e,enqueue:D=>{let V=s.get(D.reportHubId);if(V!==void 0&&T(V),!t()&&D.handle.getZone()==="visible")return b+=1,D.apply(),lg;let F={...D,unsubscribeZone:D.handle.subscribeZone(()=>{let z=D.handle.getZone();if(z==="visible"){if(!T(F))return;b+=1,D.apply();return}z!=="far"&&s.get(D.reportHubId)===F&&w()})};return s.set(D.reportHubId,F),w(),()=>{T(F)}},settleRow:(D,V,F)=>{let z={handle:V,body:F};return i.set(D,z),F!==null&&l.set(F,D),V.setSkippable(F===null),()=>{i.get(D)===z&&i.delete(D),F!==null&&l.get(F)===D&&l.delete(F)}},measured:D=>{let V=l.get(D),F=V===void 0?void 0:i.get(V);F!==void 0&&F.body===D&&F.handle.setSkippable(!0)},invalidate:D=>{let V=i.get(D);V===void 0||V.body===null||(V.handle.setSkippable(!1),p!==null&&p(V.body))},attach:(D,V)=>{let F=new D.MessageChannel;F.port1.onmessage=O,F.port2.onmessage=L,d=D,c=F,p=V,u="idle";let z=r(M);return w(),()=>{z(),y!==0&&D.cancelAnimationFrame(y),y=0,F.port1.onmessage=null,F.port2.onmessage=null,F.port1.close(),F.port2.close(),d=null,c=null,p=null,u="idle",E=null,S=null}},syncReleaseCount:()=>b}},Ua=Ap(null),yo=Ap(null),el=e=>{let t=Ji(Ua);if(t===null)throw new Error(`[daily-report] ${e} is called outside a view's rows (no row pass)`);return t},xp=()=>el("useViewGridId").gridId,Wa=(e,t,r)=>{let n=el("useRowPass"),o=Tp(),[a,s]=sg(()=>({bodyReady:!0,rendered:t,fromUnit:!0}),t,l=>({bodyReady:o.getZone()==="visible",rendered:l,fromUnit:!1})),i=!(a.bodyReady&&Object.is(a.rendered,t));return Ep(()=>{if(i)return n.enqueue({reportHubId:e,handle:o,apply:s,sizing:r})},[n,e,o,i,a,r]),Ep(()=>{if(r==="fixed")return n.settleRow(e,o,null);a.fromUnit&&n.invalidate(e)},[n,e,o,r,a]),a},Ip=e=>{let t=el("useRowBodyDeclaration"),r=Tp();return Dp(o=>t.settleRow(e,r,o),[t,e,r])},vp=()=>{let e=Ji(Ua),t=Ji(yo);return Dp(()=>{e!==null&&t!==null&&e.invalidate(t)},[e,t])};import{clsx as ug}from"clsx";import{twMerge as pg}from"tailwind-merge";function x(...e){return pg(ug(e))}var Ie=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 Cp,useMemo as mg,useSyncExternalStore as fg}from"react";var _p="(prefers-reduced-motion: reduce)",Lp=e=>Ne(e).matchMedia(_p).matches?"instant":"smooth",yg=Object.freeze({...Oi,startVelocityThreshold:Number.POSITIVE_INFINITY}),gn=e=>e?yg:Oi,hg=()=>!1,Rg=()=>{},En=e=>{let t=mg(()=>e===null?null:Ne(e).matchMedia(_p),[e]),r=Cp(o=>t===null?Rg:(t.addEventListener("change",o),()=>t.removeEventListener("change",o)),[t]),n=Cp(()=>t===null?!1:t.matches,[t]);return fg(r,n,hg)};import{useSyncExternalStore as bg}from"react";import{jsx as tl}from"react/jsx-runtime";var Ka=()=>{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)})}},Np=16,Sg=x(rc,"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"),gg=(e,t)=>e==="vertical"?{top:0,left:-Np,transform:`translate(-100%, calc(${t}px - 50%))`}:{top:-Np,left:0,transform:`translate(calc(${t}px - 50%), -100%)`},za=({orientation:e,thumbCenter:t,isDragging:r,isTapScrollActive:n,store:o})=>{let{label:a,isWheelScrollActive:s}=bg(o.subscribe,o.getState,o.getState);return a.trim()&&(r||n||s)?tl("div",{className:"pointer-events-none absolute flex items-center",style:gg(e,t),children:tl("div",{className:Sg,children:tl("span",{className:"whitespace-nowrap font-semibold text-slate-800 dark:text-slate-100",children:a.trim()})})}):null};import{createContext as Eg,useContext as Tg,useLayoutEffect as Ag,useRef as Dg}from"react";var rl=Eg(null),$a=({items:e,scroller:t,readTopReportId:r})=>{let n=Tg(rl),o=n===null?null:n.request,a=Dg(o===null?0:o.seq);Ag(()=>{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:Rt(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 nh,useCallback as tn,useContext as Nw,useEffect as th,useLayoutEffect as rh,useMemo as Lo,useRef as Ys}from"react";var ja="legacy-",wg=e=>`${ja}${e}`,Op=(e,t,r,n)=>{if(typeof n!="string"||n.trim()==="")throw Le("mergeComments: unknownAuthorName","a non-blank string",n);let o=e.map((s,i)=>({id:wg(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]},Mp=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 xg=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}`}),Ig=e=>e.startsWith(ja)?un(e.slice(ja.length))!==null:uu(e)!==null,Tn=e=>{if(xg.includes(e))return!0;let t=e.split(":");switch(t[0]){case"interviewer":return t.length===3&&un(t[1])!==null&&(t[2]==="name"||t[2]==="affiliation");case"attachment":return t.length===2&&un(t[1])!==null;case"comment":return t.length===3&&Ig(t[1])&&(t[2]==="author"||t[2]==="content");default:return!1}},vg=16777619,Cg=2166136261,_g=(e,t,r,n)=>{let o=e;for(let a=r;a<n;a++)o^=t.charCodeAt(a),o=Math.imul(o,vg);return o>>>0},nl=e=>_g(Cg,e,0,e.length),Lg=String.fromCodePoint(3),Ng=String.fromCodePoint(2),Og=String.fromCodePoint(1),Pp=e=>nl(e.map(t=>t.map(r=>r.map(n=>`${n.tier}${n.text}`).join(Lg)).join(Ng)).join(Og));import{createContext as Zm,useCallback as Ym,useEffect as qm,useLayoutEffect as Xm,useMemo as Cl,useRef as Il,useState as Bt}from"react";import{z as Re}from"zod/v3";var kp=Object.freeze(["create","update","publish","delete","toggleStar","toggleRead","addComment","deleteComment","clearCache"]);var st=Object.freeze({intent:"intent",clientTempId:"clientTempId",businessDate:"businessDate",operationTimestamp:"operationTimestamp",reportHubId:"reportHubId",title:"title",content:"content",isStarred:"isStarred",isRead:"isRead",commentId:"commentId"}),Ga=e=>{let t=new FormData;if(t.append(st.intent,e.intent),e.intent==="clearCache"||(t.append(st.clientTempId,e.clientTempId),e.businessDate!==null&&t.append(st.businessDate,e.businessDate),e.operationTimestamp!==null&&t.append(st.operationTimestamp,String(e.operationTimestamp)),e.intent==="create"))return t;switch(t.append(st.reportHubId,String(e.reportHubId)),e.intent){case"update":return e.changes.title!==void 0&&t.append(st.title,e.changes.title),e.changes.content!==void 0&&t.append(st.content,e.changes.content),t;case"publish":case"delete":return t;case"toggleStar":return t.append(st.isStarred,String(e.value)),t;case"toggleRead":return t.append(st.isRead,String(e.value)),t;case"addComment":return t.append(st.content,e.content),t;case"deleteComment":return t.append(st.commentId,String(e.commentId)),t}},Mg=()=>{let e=we,t=Re.string().regex(da),r=Re.literal("OK"),n=Re.object({isStarred:Re.boolean(),isRead:Re.boolean()}),o=Re.number().int().nonnegative().nullable();return{create:Re.object({status:r,intent:Re.literal("create"),reportHubId:e,clientTempId:t,report:Mt}),update:Re.object({status:r,intent:Re.literal("update"),reportHubId:e,clientTempId:t}),publish:Re.object({status:r,intent:Re.literal("publish"),reportHubId:e,clientTempId:t,report:Mt.nullable()}),delete:Re.object({status:r,intent:Re.literal("delete"),reportHubId:e,clientTempId:t}),toggleStar:Re.object({status:r,intent:Re.literal("toggleStar"),reportHubId:e,clientTempId:t,updatedStatus:n,operationTimestamp:o}),toggleRead:Re.object({status:r,intent:Re.literal("toggleRead"),reportHubId:e,clientTempId:t,updatedStatus:n,operationTimestamp:o}),addComment:Re.object({status:r,intent:Re.literal("addComment"),reportHubId:e,clientTempId:t,newComment:Di}),deleteComment:Re.object({status:r,intent:Re.literal("deleteComment"),reportHubId:e,clientTempId:t,deletedCommentId:we}),clearCache:Re.object({status:r,intent:Re.literal("clearCache")})}},ol=null,Pg=()=>(ol===null&&(ol=Mg()),ol),Fp=(e,t)=>{let r=Pg()[e].safeParse(t);return r.success?{result:r.data}:{mismatch:pa(r.error)}};import{useState as Bg}from"react";var Ya=e=>{let t=e>>>0,r=(e-t)/4294967296|0;return Math.imul(t^Math.imul(r,1540483477),2654435761)>>>0},er=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=Ya(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=Ya(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=Ya(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=Ya(this.idAt(a))>>>n;for(;this.slots[s]!==-1;)s=s+1&r;this.slots[s]=a}}};var kg=e=>e.appended instanceof Pt&&e.replaced.previous instanceof Pt&&e.replaced.next instanceof Pt&&e.removed instanceof Pt,sl=e=>{if(kg(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`)},qa=1,Xa=2,Yr=3,Hp=16,Fg=8192,Hg=Float64Array.BYTES_PER_ELEMENT+2*Uint32Array.BYTES_PER_ELEMENT+3*Uint8Array.BYTES_PER_ELEMENT,al=e=>{let t=new ArrayBuffer(e*Hg),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)}},Bp=Object.freeze({previous:ht,next:ht}),il=()=>{let e=0,t=al(Hp),r=d=>t.ids[d],n=new er(r),o=()=>{let d=al(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 p=e;return e+=1,t.ids[p]=d,t.states[p]=c,n.set(d,p),p},s=(d,c,p)=>{let u=n.find(d);if(u===-1){let y=a(d,qa);t.lastDates[y]=c,t.lastSources[y]=p;return}if(t.states[u]!==Yr)throw new Error(`[daily-report] The ids stream list took report ${d}, which it already holds`);t.states[u]=Xa,t.lastDates[u]=c,t.lastSources[u]=p},i=(d,c,p,u,y)=>{let m=n.find(d);if(m===-1)m=a(d,Xa),t.firstDates[m]=c,t.firstSources[m]=p;else if(t.states[m]===Yr)throw new Error(`[daily-report] The ids stream list changed report ${d}, which it no longer holds`);t.lastDates[m]=u,t.lastSources[m]=y},l=(d,c,p)=>{let u=n.find(d);if(u===-1){let y=a(d,Yr);t.firstDates[y]=c,t.firstSources[y]=p;return}if(t.states[u]===qa){n.delete(d),t.states[u]=0;return}if(t.states[u]===Yr)throw new Error(`[daily-report] The ids stream list dropped report ${d}, which it no longer holds`);t.states[u]=Yr};return{add:s,change:i,remove:l,fold:d=>{let{removed:c,appended:p,replaced:u}=sl(d),{previous:y,next:m}=u;for(let f=0;f<c.length;f++)l(c.ids[f],c.businessDateCodes[f],c.sourceTypeCodes[f]);for(let f=0;f<m.length;f++)i(m.ids[f],y.businessDateCodes[f],y.sourceTypeCodes[f],m.businessDateCodes[f],m.sourceTypeCodes[f]);for(let f=0;f<p.length;f++)s(p.ids[f],p.businessDateCodes[f],p.sourceTypeCodes[f])},isEmpty:()=>n.size===0,build:(d,c)=>{let p=0,u=0,y=0;for(let S=0;S<e;S++){let g=t.states[S];g===qa?p+=1:g===Xa?u+=1:g===Yr&&(y+=1)}let m=p+2*u+y;if(m===0)return{base:d,revision:c,appended:ht,replaced:Bp,removed:ht};let f=fn(m),b=0,R=p,E=R+u,h=E+u;for(let S=0;S<e;S++){let g=t.states[S];g===qa?(f.ids[b]=t.ids[S],f.businessDateCodes[b]=t.lastDates[S],f.sourceTypeCodes[b]=t.lastSources[S],b+=1):g===Xa?(f.ids[R]=t.ids[S],f.businessDateCodes[R]=t.firstDates[S],f.sourceTypeCodes[R]=t.firstSources[S],R+=1,f.ids[E]=t.ids[S],f.businessDateCodes[E]=t.lastDates[S],f.sourceTypeCodes[E]=t.lastSources[S],E+=1):g===Yr&&(f.ids[h]=t.ids[S],f.businessDateCodes[h]=t.firstDates[S],f.sourceTypeCodes[h]=t.firstSources[S],h+=1)}return{base:d,revision:c,appended:Jt(f,0,p),replaced:u===0?Bp:{previous:Jt(f,p,u),next:Jt(f,p+u,u)},removed:Jt(f,p+2*u,y)}},reset:()=>{if(e=0,t.ids.length<=Fg){n.clear();return}t=al(Hp),n=new er(r)}}},Vp=(e,t,r)=>{let n=il();for(let o of e)n.fold(o);return n.build(t,r)},Up=(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 Vg={items:Pa,held:new Map,hidden:new Map,revision:null,settled:!1},ll=(e,t,r)=>{let n=0,o=e.length;for(;n<o;){let a=n+o>>1;bn(Kr(e,a),Rn(e,a),t,r)<0?n=a+1:o=a}return n<e.length&&Kr(e,n)===t?n:-1},Za=(e,t)=>ll(e,t.reportHubId,kt(t.businessDate)),dl=(e,t,r,n)=>{let o=n,a=e.length;for(;o<a;){let s=o+a>>1;bn(Kr(e,s),Rn(e,s),t,r)<=0?o=s+1:a=s}return o},Ug=(e,t)=>{if(t.length===0)return[];let r=e.length-1;if(e.length===0||bn(Kr(e,r),Rn(e,r),t.ids[0],t.businessDateCodes[0])<0)return new Array(t.length).fill(e.length);let n=[],o=0;for(let a=0;a<t.length;a++)o=dl(e,t.ids[a],t.businessDateCodes[a],o),n.push(o);return n},Wg=e=>{for(let t=1;t<e.length;t++)if(bn(e.ids[t-1],e.businessDateCodes[t-1],e.ids[t],e.businessDateCodes[t])>=0)return!1;return!0},Kp=e=>{if(Wg(e))return e;let t=Array.from({length:e.length},(n,o)=>o);t.sort((n,o)=>bn(e.ids[n],e.businessDateCodes[n],e.ids[o],e.businessDateCodes[o]));let r=new xt(e.length);for(let n of t)r.pushFrom(e,n);return r.build()},zp=(e,t,r,n)=>{let o=Qu(t.readRows()),a=new er(d=>o.ids[d]);for(let d=0;d<o.length;d++)a.set(o.ids[d],d);let s=new xt(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 p=d.ids[c];if(a.find(p)!==-1||n.has(p))continue;let u=e.held.get(p),y=u===void 0?Number.NEGATIVE_INFINITY:u.since;r&&p>0&&t.itemsRevision>y||(l.set(p,{item:u===void 0?Ma(p,d.businessDateCodes[c],d.sourceTypeCodes[c]):u.item,since:y}),s.pushFrom(d,c))}return{items:tp(Kp(s.build())),held:l,hidden:i,revision:t.itemsRevision,settled:r}},Kg=(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?[]:Up(t.itemsChanges,o);if(o===null||a===null)return zp(e,t,r,n);let s=e.items,i=[],l=[],d=a.length===0?null:a.length===1?sl(a[0]):Vp(a,o,t.itemsRevision),c=new xt(d===null?0:d.appended.length+d.replaced.next.length),p=null,u=()=>(p===null&&(p=new Map(e.held)),p),y=null,m=()=>(y===null&&(y=new Map(e.hidden)),y);if(d!==null){let{appended:E,replaced:h,removed:S}=d;for(let T=0;T<S.length;T++){let w=S.ids[T];if(e.hidden.has(w)&&m().delete(w),e.held.has(w))continue;let C=ll(s,w,S.businessDateCodes[T]);C!==-1&&(r||n.has(w)?i.push(C):u().set(w,{item:Ma(w,Rn(s,C),Xi(s,C)),since:Number.NEGATIVE_INFINITY}))}let g=(T,w,C)=>{let H=T.ids[w],U=T.businessDateCodes[w],B=T.sourceTypeCodes[w],A=e.held.get(H);A!==void 0&&u().delete(H);let v=A===void 0?C:kt(A.item.businessDate),I=v===-1?-1:ll(s,H,v);if(n.has(H)){I!==-1&&i.push(I),m().set(H,T.itemAt(w));return}if((y===null?e.hidden:y).has(H)&&m().delete(H),I!==-1&&Rn(s,I)===U){Xi(s,I)!==B&&l.push({index:I,id:H,businessDateCode:U,sourceTypeCode:B});return}I!==-1&&i.push(I),c.push(H,U,B)};for(let T=0;T<h.next.length;T++)g(h.next,T,h.previous.businessDateCodes[T]);for(let T=0;T<E.length;T++)g(E,T,-1)}let f=t.itemsRevision;if(r)for(let[E,h]of p===null?e.held:p){if(E<=0||f<=h.since)continue;let S=Za(s,h.item);S!==-1&&i.push(S),u().delete(E)}let b=Kp(c.build());return{items:Sn(s,{removals:i,replacements:l,additions:b,insertions:Ug(s,b)}),held:p===null?e.held:p,hidden:y===null?e.hidden:y,revision:f,settled:r}},Wp=new WeakMap,zg=(e,t,r,n)=>{let o=Wp.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=Kg(e,t,r,n);return Wp.set(e,{revision:t.itemsRevision,changes:t.itemsChanges,settled:r,tombstones:n,rows:a}),a},$p=(e,t,r)=>{let[n,o]=Bg(()=>zp(Vg,e,t,r));return(n.revision!==e.itemsRevision||n.settled!==t)&&o(a=>zg(a,e,t,r)),[n,o]},Qa=(e,t,r)=>{if(e.hidden.has(t.reportHubId))return cl(e,t.reportHubId);if(e.held.has(t.reportHubId)||Za(e.items,t)!==-1||po(e.items,t.reportHubId)!==-1)return e;let n=Sn(e.items,{...zr,additions:zi([t]),insertions:[dl(e.items,t.reportHubId,kt(t.businessDate),0)]}),o=new Map(e.held);return o.set(t.reportHubId,{item:t,since:r}),{...e,items:n,held:o}},cl=(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:Sn(e.items,{...zr,additions:zi([r]),insertions:[dl(e.items,r.reportHubId,kt(r.businessDate),0)]}),hidden:n}},qr=(e,t)=>{let r=e.held.get(t);if(r===void 0)return e;let n=Za(e.items,r.item),o=new Map(e.held);return o.delete(t),{...e,items:Sn(e.items,n===-1?zr:{...zr,removals:[n]}),held:o}},jp=(e,t)=>{let r=e.held.get(t.reportHubId),n=Za(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:Sn(e.items,n===-1?zr:{...zr,removals:[n]}),held:o}},Gp=e=>({...e,revision:null});import{startTransition as oE,useLayoutEffect as aE,useState as sE,useSyncExternalStore as So}from"react";var Yp=e=>{let t=new URLSearchParams;return e.cursor!==null&&(t.set(xe.cursorReportHubId,String(e.cursor.reportHubId)),e.cursor.businessDate!==null&&t.set(xe.cursorBusinessDate,e.cursor.businessDate)),e.snapshot!==null&&t.set(xe.cursorSnapshot,e.snapshot),e.forceRefresh&&t.set(xe.forceRefresh,"true"),t};var ho=1,$g=2,jg=1024,An=1024,Ja=class{constructor(){this.used=0;this.holes=0;this.ids=new Float64Array(An);this.dates=new Uint32Array(An);this.sources=new Uint8Array(An);this.flags=new Uint8Array(An);this.positions=new er(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:Wr(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]=ho,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>=jg&&this.holes>this.positions.size&&this.compact()}markSeen(t){let r=this.positions.find(t);r!==-1&&(this.flags[r]|=$g)}clearSeen(){for(let t=0;t<this.used;t++)this.flags[t]&=ho}unseenIds(){let t=[];for(let r=0;r<this.used;r++)this.flags[r]===ho&&t.push(this.ids[r]);return t}rows(){let t=new xt(this.positions.size);for(let r=0;r<this.used;r++)(this.flags[r]&ho)!==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]&ho)!==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(An,t*4)&&this.resize(Math.max(An,t*2))}};var qp=()=>{let e=new TextDecoder,t=[],r=0,n=o=>{if(t.length===0)return e.decode(o);let a=new Uint8Array(r+o.length),s=0;for(let i of t)a.set(i,s),s+=i.length;return a.set(o,s),t=[],r=0,e.decode(a)};return{push:o=>{let a=[],s=0;for(let i=o.indexOf(10);i!==-1;i=o.indexOf(10,s))a.push(n(o.subarray(s,i))),s=i+1;return s<o.length&&(t.push(o.slice(s)),r+=o.length-s),a},end:()=>t.length===0?[]:[n(new Uint8Array(0))]}};var Gg=e=>({debug:e,info:e,warn:e,error:e}),Yg=50,qg=32,Xp=0,Xg=()=>(Xp+=1,Xp),Zg=1e3,Qg=3e4,Jg=6,eE=3e4,Zp=Symbol("read-stall"),tE=Object.freeze({reading:()=>{},stalled:()=>!1,stop:()=>{}}),rE="/daily_report/api",nE=e=>typeof e=="object"&&e!==null&&e.name==="AbortError",es=class{constructor(t={}){this.rows=new Ja;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=il();this.apiBasePath=t.apiBasePath??rE,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=ft(t.warn===void 0?void 0:Gg(t.warn),1,"IdsStream").warn,this.readStallTimeoutMs=t.readStallTimeoutMs??eE,this.publishCoalesceMs=t.publishCoalesceMs??Yg,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,kt(t.businessDate),co(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 xt(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>=Jg){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(Zg*2**(this.consecutiveFailures-1),Qg))}}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===Zp)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=qp(),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 p=c.done?s.end():s.push(c.value),u=!1,y=!1;for(let m of p){if(m.trim()==="")continue;let f;try{f=JSON.parse(m)}catch{y=!0;break}let b=xi(f);if(b==="unknown"){this.warn("skipped line of unknown kind");continue}if(b==="error"){l=!0;continue}let R=nu(f);if(R===null){y=!0;break}u=this.absorbChunkLine(R)||u,R.total!==null&&R.total!==this.state.totalCount&&this.publish({totalCount:R.total}),R.resumeCursor!==null&&(this.lastCursor=R.resumeCursor),R.isLast&&(d=!0)}if(u&&(this.consecutiveFailures=0,this.schedulePublishItems()),y)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 nE(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(Zp),this.readStallTimeoutMs*3);t.then(a=>{this.clearTimeoutFn(o),r(a)},a=>{this.clearTimeoutFn(o),n(a)})})}watchReadSilence(t){if(this.readStallTimeoutMs<=0)return tE;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=kt(null),s,i=co(void 0),l=(d,c,p)=>{this.externalRemovalTombstones.has(d)||(c!==o&&(o=c,a=kt(c)),p!==s&&(s=p,i=co(p)),this.putItem(d,a,i)&&(n=!0),r||this.rows.markSeen(d))};return ou(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=Xg(),r=this.pendingItemsChange.build(this.state.itemsRevision,t);return this.pendingItemsChange.reset(),{loadedCount:this.rows.size,itemsRevision:t,itemsChanges:[...this.state.itemsChanges.slice(1-qg),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=Yp({cursor:this.lastCursor,snapshot:this.lastCursor===null?null:this.lastSnapshot,forceRefresh:t}).toString();return`${this.apiBasePath}/${ua}${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 iE=6e4,ae=null,Qp=!1,Ro=new Set,ts={loadedCount:0,itemsRevision:0,itemsChanges:[],totalCount:null,phase:"idle",isRevalidating:!1,hasCompletedOnce:!1,completedAt:null,error:null,streamAnchor:null},ul=()=>{for(let e of Ro)e()},pl=()=>{ae&&(ae.unsubscribe(),ae.client.dispose(),ae=null,ul())},bo=e=>{if(typeof window>"u")return;let t=e.apiBasePath??no.apiBasePath;if(ae&&(ae.userKey!==e.userKey||ae.apiBasePath!==t)&&(ae.userKey!==e.userKey&&so(),pl()),!ae){let r=new es({apiBasePath:t});ae={client:r,userKey:e.userKey,apiBasePath:t,unsubscribe:r.subscribe(ul)},lE(),r.start(),ul();return}ns(ae)},ns=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>iE&&e.client.refresh()},lE=()=>{if(Qp||typeof document>"u"||typeof window>"u")return;Qp=!0;let e=()=>{ae&&ns(ae)};document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&e()}),window.addEventListener("focus",e)},ml=e=>{if(!(typeof window>"u")){if(!ae){bo(e);return}if(ae.userKey!==e.userKey){so(),pl(),bo(e);return}ns(ae)}},fl=()=>{typeof window>"u"||!ae||ns(ae)},Dn=e=>{ae?.client.applyExternalUpsert(e)},wn=e=>{ae?.client.applyExternalRemoval(e)},em=e=>ae===null?!1:ae.client.has(e),tm=()=>ae===null?ht:ae.client.readRows(),yl=()=>ae===null?0:ae.client.getState().itemsRevision,os=()=>{ae?.client.retry()},as=()=>{ae?.client.resync()},go=(e={})=>{ae?.client.refresh(e)},rm=()=>ae?.userKey,Eo=e=>(Ro.add(e),()=>Ro.delete(e)),rs=()=>ae?.client.getState()??ts,dE=()=>ts,cE=()=>So(Eo,rs,dE),ss=(e,t)=>{let r=ts,n=e(ts);return()=>{let o=rs();if(o===r)return n;let a=e(o);return r=o,t(n,a)||(n=a),n}},nm=ss(({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),uE=nm(),xn=()=>So(Eo,nm,()=>uE),om=ss(({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),pE=om(),am=()=>So(Eo,om,()=>pE),sm=ss(({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),mE=sm(),im=()=>So(Eo,sm,()=>mE),lm=ss(({phase:e,totalCount:t})=>({phase:e,totalCount:t}),(e,t)=>e.phase===t.phase&&e.totalCount===t.totalCount),fE=lm(),dm=()=>So(Eo,lm,()=>fE),cm=e=>e.phase==="complete"&&!e.isRevalidating,Jp=e=>`${e.itemsRevision}:${cm(e)}`,um=()=>{let[,e]=sE(0),t=rs(),r=Jp(t);return aE(()=>{let n=r,o=()=>{let a=Jp(rs());a!==n&&(n=a,oE(()=>e(s=>s+1)))};return Ro.add(o),o(),()=>{Ro.delete(o)}},[]),{itemsRevision:t.itemsRevision,itemsChanges:t.itemsChanges,readRows:tm,settled:cm(t)}};import.meta.hot?.dispose(pl);var pm="Internal";var is=(e,t,r)=>{if(!Number.isFinite(e)||e<=0)throw Le("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 yE=3e4,mm=e=>{let t=is(yE,e,()=>{});return{add:r=>t.add(r,!0),has:r=>t.get(r)===!0}},In=(e,t)=>e.has(t)?e:new Set(e).add(t),fm=(e,t)=>{if(!e.has(t))return e;let r=new Set(e);return r.delete(t),r},ym=new Set,hm=()=>new Set,Rm=()=>new Map,bm=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()}}}},Sm=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 hl=0,Rl=e=>{let t=Xe("drawTemporaryId: nowMs",e,1);return hl=Math.min(-t,hl-1),hl};var tr=(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 bl=ft(void 0,1,"ActionProvider"),hE=1e3,Sl=class extends Error{constructor(t,r){super(`[daily-report] ${t} answered HTTP ${r}`),this.name="DailyReportActionHttpError",this.status=r}},IO=Object.freeze(["delete","deleteComment"]),RE=e=>e.intent==="create"?null:e.reportHubId,bE=(e,t)=>{let r=e;if(r.intent==="clearCache"||r.clientTempId!==t.clientTempId)return!1;let n=RE(t);return n===null||r.reportHubId===n},gm=e=>{let{apiBasePath:t,labels:r,user:n,items:o,isSessionStillOurs:a,ownEchoIds:s,ledgers:i,writeLedgers:l,pendingAddPromises:d,removedIds:c,searchRemovedIds:p,setRemovedVersion:u,setRows:y,drafts:m,invalidateSearch:f,announceDataChange:b,notifyError:R}=e,E=async(A,v,I={})=>{let{intent:L}=A,{onGone:M}=v,{lockedReportHubId:O}=I,D=O===void 0?null:ku(O);v.onOptimistic?.(),s.add(A.clientTempId);let V=()=>{if(!a())throw bl.warn(`[executeAction] ${L} resolved after a user switch; discarding continuation`),new Error(`Stale continuation for ${L}`)};try{let F=await fetch(`${t}/${Fe.action}`,{method:"POST",body:Ga(A),headers:{Accept:"application/json"}});if(F.status===404&&M!==void 0)return V(),M();if(!F.ok)throw new Sl(L,F.status);let z=Fp(L,await F.json());if("mismatch"in z)throw new Error(`[daily-report] ${L} answered a body that is not its result (${z.mismatch})`);let{result:j}=z;if(!bE(j,A))throw new Error(`[daily-report] ${L} answered another request`);return V(),v.onSuccess(j)}catch(F){throw bl.error(`${L} failed:`,F),a()&&(v.onFailure?.(),R({operation:L,message:r.operationFailed(L),cause:F})),F}finally{D?.()}},h=(A,v,I)=>({reportHubId:A,clientTempId:I,businessDate:typeof v=="string"?v:null,operationTimestamp:Date.now()});return{addComment:async(A,v,I)=>{let L=Rl(Date.now()),M=E({...h(A,I,String(L)),intent:"addComment",content:v},{onOptimistic:()=>{l(({pendingAddCommentIds:O})=>{let D=O.get(A);D===void 0?O.set(A,new Map([[L,v]])):D.set(L,v)})},onSuccess:({newComment:O})=>{let D=O.id;l(({resolvedIdMap:F,pendingAddCommentIds:z})=>{F.set(L,D),z.get(A)?.delete(L)}),f();let V=ot(A,{ignoreExpiry:!0});return V&&!V.postedComments.some(F=>F.id===D)&&yt(A,{postedComments:[...V.postedComments,{...O,isMine:!0,userName:tr(n,r.unknownUser)}]}),D},onFailure:()=>{l(({pendingAddCommentIds:O})=>O.get(A)?.delete(L))}}).finally(()=>d.current.delete(L));d.current.set(L,M),await M},deleteComment:async(A,v,I)=>{l(({pendingDeleteCommentIds:O})=>{let D=O.get(A);D===void 0?O.set(A,new Set([v])):D.add(v)});let L=v;if(v<0){let O=i.resolvedIdMap.current.get(v);if(O!==void 0)L=O;else{let D=d.current.get(v);if(!D)return;try{L=await D}catch{return}}}let M=()=>{let O=ot(A,{ignoreExpiry:!0});O&&(yt(A,{postedComments:O.postedComments.filter(D=>D.id!==L)}),Hu(L)),l(({pendingDeleteCommentIds:D})=>D.get(A)?.delete(v)),f()};await E({...h(A,I,crypto.randomUUID()),intent:"deleteComment",commentId:L},{onSuccess:M,onGone:M,onFailure:()=>{l(({pendingDeleteCommentIds:O})=>O.get(A)?.delete(v))}})},toggleStar:async(A,v,I)=>{await E({...h(A,I,crypto.randomUUID()),intent:"toggleStar",value:v},{onOptimistic:()=>{yt(A,{isStarred:v}),l(({pendingStarUpdates:L})=>L.set(A,v))},onSuccess:({updatedStatus:L})=>{ot(A,{ignoreExpiry:!0})&&(yt(A,{isStarred:L.isStarred}),b()),l(({pendingStarUpdates:M})=>M.delete(A))},onFailure:()=>{yt(A,{isStarred:!v}),l(({pendingStarUpdates:L})=>L.delete(A))}})},toggleRead:async(A,v,I)=>{await E({...h(A,I,crypto.randomUUID()),intent:"toggleRead",value:v},{onOptimistic:()=>{yt(A,{isRead:v}),l(({pendingReadUpdates:L})=>L.set(A,v))},onSuccess:({updatedStatus:L})=>{ot(A,{ignoreExpiry:!0})&&(yt(A,{isRead:L.isRead}),b()),l(({pendingReadUpdates:M})=>M.delete(A))},onFailure:()=>{yt(A,{isRead:!v}),l(({pendingReadUpdates:L})=>L.delete(A))}})},createReport:async A=>{let v=Rl(Date.now()),I=new Date().toISOString(),L={reportHubId:v,date:A,createdAt:I,author:tr(n,r.unknownUser),userId:n===void 0?null:n.id,sourceType:pm,employeeName:tr(n,r.unknownUser),updatedBy:tr(n,r.unknownUser),updatedAt:I,category:null,creationCategory:null,visitTimeFrom:null,visitTimeTo:null,customerName:null,interviewers:[],subject:"",content:"",externalComments:[],isRead:!0,isStarred:!1,isDraft:!0,labels:[],postedComments:[],attachments:[]};Pu(L,Date.now()+3e5,!1),y(M=>Qa(M,{reportHubId:v,businessDate:A},Number.NEGATIVE_INFINITY));try{let M=await E({intent:"create",clientTempId:String(v),businessDate:A,operationTimestamp:Date.now()},{onSuccess:V=>V.report}),O=M.reportHubId,D=yl();return Dn({reportHubId:O,businessDate:A}),Fu(O,hE),Sr(O,M),b(),f(),y(V=>Qa(qr(V,v),{reportHubId:O,businessDate:A},D)),O}catch(M){throw bl.error("[createReport] Failed",M),y(O=>qr(O,v)),M}},updateReport:async(A,v,I)=>{await E({...h(A,I,crypto.randomUUID()),intent:"update",changes:{title:v.title,content:v.content}},{onSuccess:()=>{ot(A,{ignoreExpiry:!0})&&(yt(A,{subject:v.title,content:v.content}),b()),f()}},{lockedReportHubId:A})},publishReport:async(A,v)=>{let I=ot(A,{ignoreExpiry:!0});await E({...h(A,v,crypto.randomUUID()),intent:"publish"},{onOptimistic:()=>{I&&(yt(A,{isDraft:!1}),b())},onSuccess:({report:L})=>{L!==null&&(Sr(A,L),b()),v!==void 0&&Dn({reportHubId:A,businessDate:v}),f()},onFailure:()=>{I&&(yt(A,{isDraft:I.isDraft}),b())}})},deleteReport:async(A,v)=>{let I=np(o,A);c.current=In(c.current,A),p.current.add(A),u(M=>M+1),wn(A),I!==void 0&&y(M=>jp(M,I));let L=()=>{Ia(A,v),m.discard(A),f()};try{await E({...h(A,v,crypto.randomUUID()),intent:"delete"},{onSuccess:L,onGone:L},{lockedReportHubId:A})}catch(M){if(!a())return;c.current=fm(c.current,A),p.current.delete(A),u(V=>V+1);let O=I===void 0?v:I.businessDate,D=yl();throw O!==void 0&&Dn({reportHubId:A,businessDate:O}),y(V=>{let F=cl(V,A);return I===void 0?F:Qa(F,I,D)}),M}}}};var Em=ft(void 0,1,"ActionProvider"),SE=3e4,Tm=e=>is(SE,e,(t,r)=>{r.unsubscribe(),Em.warn(`[SSE Queue] Expired: reportHubId=${t}, dropped=${r.messages.length} messages`)}),gE=(e,t)=>{t!==void 0&&Dn({reportHubId:e,businessDate:t})},Am=e=>{let{user:t,userId:r,labels:n,isSessionStillOurs:o,ownEchoIds:a,ledgers:s,writeLedgers:i,removedIds:l,searchRemovedIds:d,setRemovedVersion:c,setRows:p,drafts:u,invalidateSearch:y,announceDataChange:m,pendingSseQueue:f,replay:b}=e,R=(h,S)=>{let g=f.get(h);if(g!==void 0){g.messages.push(S);return}let T;T={messages:[S],unsubscribe:Bu(h,()=>{if(f.get(h)===T&&ot(h,{ignoreExpiry:!0})){f.remove(h),T.unsubscribe(),Em.info(`[SSE Queue] Replaying ${T.messages.length} messages for reportHubId=${h}`);for(let C of T.messages)b(C)}})},f.add(h,T)};return h=>{if(o()&&!a.has(h.clientTempId))switch(h.type!=="status-update"&&y(),h.type){case"comment-add":{let{comment:S,reportHubId:g}=h,T=ot(g,{ignoreExpiry:!0});if(T){if(T.postedComments.some(U=>U.id===S.id))return;let w=typeof r=="string"&&S.userId===r,C={...S,userName:S.userName||(w?tr(t,n.unknownUser):n.unknownUser),createdAt:S.createdAt||new Date().toISOString(),isMine:w},H={...T,postedComments:[...T.postedComments,C].sort((U,B)=>new Date(U.createdAt||0).getTime()-new Date(B.createdAt||0).getTime())};Sr(g,H),Fi(g),m()}else R(g,h);break}case"comment-delete":{let{commentId:S,reportHubId:g}=h,T=ot(g,{ignoreExpiry:!0});if(T){let w={...T,postedComments:T.postedComments.filter(C=>C.id!==S)};Sr(g,w),Fi(g),m()}else R(g,h);break}case"status-update":{let{statusType:S,value:g,reportHubId:T}=h,w=ot(T,{ignoreExpiry:!0});if(S==="star")if(s.pendingStarUpdates.current.get(T)===g&&i(({pendingStarUpdates:C})=>C.delete(T)),w){let C={...w,isStarred:g};Sr(T,C),m()}else R(T,h);else if(S==="read")if(s.pendingReadUpdates.current.get(T)===g&&i(({pendingReadUpdates:C})=>C.delete(T)),w){let C={...w,isRead:g};Sr(T,C),m()}else R(T,h);break}case"report-delete":{let{reportHubId:S}=h;l.current=In(l.current,S),d.current.add(S),c(T=>T+1),wn(S),p(T=>qr(T,S)),u.discard(S),f.remove(S)?.unsubscribe();let g=ot(S,{ignoreExpiry:!0});g?.date&&(Ia(S,g.date),m());break}case"report-create":case"report-update":case"report-publish":{let{report:S}=h;Vu(S),(h.type==="report-create"||h.type==="report-publish")&&gE(S.reportHubId,S.date),m();break}}}};import{memo as IE,useLayoutEffect as vE}from"react";import{systemSseRuntime as ls}from"@aiquants/sse";import{createBrowserEventSource as EE}from"@aiquants/sse/client";import{useReopeningEventSource as TE}from"@aiquants/sse/react";import{useEffect as gl,useRef as ds,useState as AE}from"react";var Xr=ft(void 0,1,"SseConnection"),DE=Object.freeze({kind:"resyncing"}),Dm={initialDelayMs:2e3,maxDelayMs:3e4,multiplier:2},wE=1,wm=Ai*3,xE=wm+Ai,El=({isSseEnabled:e,onMessage:t})=>{let{ssePath:r,onSessionExpired:n}=$(),{streamAnchor:o,phase:a,isRevalidating:s,error:i}=xn(),[l,d]=AE({generation:0,minAnchorRevision:1,anchored:!1}),c=l.generation>0&&!l.anchored,p=c&&a==="complete"&&!s?i:null,u=ds(0),y=ds(null),m=ds(n);m.current=n;let f=ds(0);f.current=o===null?0:o.revision,gl(()=>{l.anchored||o===null||o.revision<l.minAnchorRevision||(y.current=o.lastEventId,u.current=0,d({...l,anchored:!0}))},[l,o]),gl(()=>{if(!e||p===null)return;let{initialDelayMs:R,maxDelayMs:E,multiplier:h}=Dm,S=ls.random()*Math.min(E,R*h**u.current);Xr.warn(`SSE resync: the ids rescan gave up (${p.message}); rescanning in ${Math.round(S)} ms`);let g=ls.setTimer(()=>{u.current+=1,as()},S);return()=>ls.clearTimer(g)},[e,p]);let{status:b}=TE(e&&l.anchored?`${r}#${l.generation}`:null,{resolveUrl:({lastEventId:R})=>R===null?r:`${r}?${tu}=${encodeURIComponent(R)}`,initialLastEventId:y.current,withCredentials:!1,createEventSource:EE,runtime:ls,backoff:Dm,healthyOpenMs:xE,nativeRetryLimit:wE,giveUpAfterFailures:"never",terminalEvents:eu,heartbeat:{staleAfterMs:wm,onHeartbeat:null},events:{message:R=>{R.lastEventId!==""&&(ca(R.lastEventId)?y.current=R.lastEventId:Xr.warn("SSE event carried a malformed id; keeping the previous cursor:",R.lastEventId));try{let E=JSON.parse(R.data),h=ru.safeParse(E);if(!h.success){Xr.error("SSE Validation Error:",h.error.flatten(),"raw message:",E);return}if(h.data.type==="connected"){Xr.info("SSE Subscribe Ready");return}t(h.data)}catch(E){Xr.error("SSE Parse Error",E)}}}});return gl(()=>{if(b.kind==="faulted"){Xr.error("SSE connection faulted:",b.error);return}if(b.kind==="terminated")switch(b.terminalEvent){case"auth-required":m.current();return;case"forbidden":Xr.warn("SSE stopped: the viewer is not registered (forbidden)");return;case"resync-required":{let R=f.current+1;d(E=>({generation:E.generation+1,minAnchorRevision:R,anchored:!1})),as();return}}},[b]),e&&c?DE:b};var xm=Object.freeze({kind:"idle"}),Tl=IE(({isSseEnabled:e,onMessage:t,onStatus:r})=>{let n=El({isSseEnabled:e,onMessage:t});return vE(()=>{r(n)},[n,r]),null});Tl.displayName="DailyReportSseConnectionHost";import{createContext as CE,useCallback as _E,useSyncExternalStore as Im}from"react";var vm=()=>{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)}}},Al=CE(null),Tr=()=>wt(Al,"useDailyReportDraftStore","DailyReportActionProvider"),Cm=(e,t)=>_E(r=>e.subscribe(t,r),[e,t]),cs=e=>{let t=Tr(),r=()=>t.modeOf(e);return Im(Cm(t,e),r,r)},_m=e=>{let t=Tr(),r=()=>t.inputOf(e),n=Im(Cm(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 zE}from"@aiquants/swipe-overlay";import{createContext as $E,Fragment as jE,useCallback as fs,useId as wl,useLayoutEffect as $m,useMemo as GE,useRef as Qr,useState as Um}from"react";import{createPortal as Wm}from"react-dom";import{createContext as OE,useContext as ME}from"react";var LE=new Set(["Alt","AltGraph","CapsLock","Control","Fn","FnLock","Hyper","Meta","NumLock","ScrollLock","Shift","Super","Symbol","SymbolLock"]),us={capture:!0},ps=new WeakMap,NE=e=>{let t=o=>{LE.has(o.key)||(n.last="keyboard")},r=()=>{n.last="pointer"},n={observers:0,last:null,detach:()=>{e.removeEventListener("keydown",t,us),e.removeEventListener("pointerdown",r,us)}};return e.addEventListener("keydown",t,us),e.addEventListener("pointerdown",r,us),n},Lm=e=>{let t=ps.get(e),r=t===void 0?NE(e):t;t===void 0&&ps.set(e,r),r.observers+=1;let n=!1;return()=>{n||(n=!0,r.observers-=1,!(r.observers>0)&&(r.detach(),ps.delete(e)))}},To=e=>{let t=ps.get(e);return t===void 0?null:t.last};var PE=Object.freeze({visibilityProperty:!0,opacityProperty:!0}),kE=Object.freeze({visibilityProperty:!0}),Nm="data-daily-report-view-tabs",Om={[Nm]:""},Mm="data-daily-report-status-panel",Pm={[Mm]:""},FE=e=>{for(let t of e.getClientRects())if(t.width>0&&t.height>0)return!0;return!1},km=e=>e.isConnected&&lo(e)&&FE(e)&&e.checkVisibility(e.hasAttribute(Ha)?kE:PE),rr=e=>{for(let t of e)if(!(t===null||!km(t))&&(t.focus({preventScroll:!0}),Ve(t)===t))return t;return null},HE=e=>e.querySelector(`[${Nm}] [role="tab"][aria-selected="true"]`),Dl=OE(null),Fm=()=>{let e=ME(Dl);if(e===null)throw new Error("[daily-report] useFocusViewRow is called outside a view's rows");return e},BE=(e,t,r)=>{if(Ur(e))return!0;if(r==="handOver")return!1;let n=Ve(e);return n===null||!e.contains(n)?!1:r==="overlay"||n!==t},Hm=(e,t,r)=>{if(r!=="pointer"||t===null)return e;let n=yp(t);return n!==null&&km(n)?n:e},Bm=(e,t,r,n)=>BE(e,t,n)?rr([Hm(t,r,To(e.ownerDocument))]):null,VE=e=>{let t=e.getAttribute("aria-activedescendant");return t===null?null:e.ownerDocument.getElementById(t)},ms=e=>{let t=fp(e);return[t===null?null:Hm(t,VE(t),To(t.ownerDocument)),HE(e),e.querySelector(`[${Mm}]`)]};var Zr=e=>e.isComposing||e.keyCode===229,vn=e=>({key:e.key,keyCode:e.keyCode,altKey:e.altKey,ctrlKey:e.ctrlKey,metaKey:e.metaKey,shiftKey:e.shiftKey,defaultPrevented:e.defaultPrevented,isComposing:e.nativeEvent.isComposing,target:e.target});var UE={kind:"hold"},WE=new Set(["grid","listbox","menu","menubar","radiogroup","tablist","toolbar","tree","treegrid"]),KE=(e,t)=>{let r=e.getAttribute("role");return r!==null&&WE.has(r)&&e!==t&&e.contains(t)},nr=e=>e.key==="Escape"&&!e.defaultPrevented&&!Zr(e),Vm=(e,t)=>{if(e.key!=="Tab"||e.altKey||e.ctrlKey||e.metaKey||e.defaultPrevented||Zr(e))return null;let r=e.target;if(!(he(r)&&t.contains(r)))return null;let n=La(t);if(n.length===0)return UE;let{before:o,within:a,after:s}=io(t,r);return e.shiftKey?o.some(i=>!KE(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 Ht,jsxs as Gm}from"react/jsx-runtime";var YE=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",yr),qE="flex shrink-0 justify-center p-[8px]",XE=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",qd),ZE="data-daily-report-notice-alert",QE={[ZE]:""},jm=$E(null),ys=()=>wt(jm,"useDailyReportErrorSurface","DailyReportErrorProvider"),Km=Object.freeze([]),zm=({notice:e})=>Ht("div",{role:"alert",...QE,className:"sr-only",children:e===null?null:Ht("span",{children:e.info.message},e.occurrence)}),JE=({notice:e,closeLabel:t,repeatedLabel:r,onDismiss:n})=>{let o=Qr(null),a=Qr(null),s=Qr(null),i=zE(),l=wl(),d=wl(),c=wl(),p=e.repeat>1?`${d} ${c}`:d,u=fs(()=>{let f=o.current;if(f?.contains(f.ownerDocument.activeElement)){let[b,...R]=ms(f.ownerDocument);rr([a.current,b,f.closest("dialog"),...R])}n()},[n]),y=f=>{if(s.current!==null)return;let b=f.relatedTarget;a.current=he(b)&&!f.currentTarget.contains(b)?b:null,s.current=i({id:l,onEscape:R=>nr(R)?(u(),!0):!1})},m=f=>{he(f.relatedTarget)&&f.currentTarget.contains(f.relatedTarget)||(s.current?.(),s.current=null,a.current=null)};return $m(()=>()=>{s.current?.(),s.current=null},[]),Gm("div",{ref:o,role:"group","aria-labelledby":p,"data-testid":"daily-report-error-banner",className:YE,onFocus:y,onBlur:m,children:[Ht("span",{id:d,className:"min-w-0 font-medium",children:Ht(jE,{children:e.info.message},e.occurrence)}),e.repeat>1&&Ht("span",{id:c,className:"shrink-0 font-normal tabular-nums",children:r(e.repeat)}),Ht("button",{type:"button","aria-label":t,"aria-describedby":p,onClick:u,className:XE,children:"\u2715"})]})},xl=({children:e})=>{let{onError:t,labels:r}=$(),[n,o]=Um(null),[a,s]=Um(Km),i=Qr(Km),l=Qr(0),d=Qr(0),c=Qr(t);$m(()=>{c.current=t});let p=fs(E=>{let h=c.current;if(h){h(E);return}d.current+=1;let S=d.current,g=i.current,T=g.length===0?null:g[g.length-1].registration;o(w=>({info:E,occurrence:S,repeat:w!==null&&w.info.message===E.message?w.repeat+1:1,announcedIn:T}))},[]),u=fs(E=>{l.current+=1;let h={element:E,registration:l.current};return i.current=[...i.current,h],s(i.current),()=>{i.current=i.current.filter(S=>S!==h),s(i.current)}},[]),y=fs(()=>o(null),[]),m=GE(()=>({notifyError:p,registerNoticeHost:u}),[p,u]),f=a.at(-1),b=n===null?null:Ht(JE,{notice:n,closeLabel:r.close,repeatedLabel:r.noticeRepeated,onDismiss:y}),R=E=>n!==null&&n.announcedIn===E?n:null;return Gm(jm.Provider,{value:m,children:[e,Ht(zm,{notice:R(null)}),a.map(E=>Wm(Ht(zm,{notice:R(E.registration)}),E.element,String(E.registration))),b!==null&&f!==void 0&&Wm(b,f.element),b!==null&&f===void 0&&Ht("div",{"data-daily-report-notice-slot":"",className:qE,children:b})]})};import{jsx as vl,jsxs as tT}from"react/jsx-runtime";var hs=ft(void 0,1,"ActionProvider"),bs=globalThis.__DailyReportActionsContext??Zm(null);globalThis.__DailyReportActionsContext=bs;var Ss=globalThis.__DailyReportActionStateContext??Zm(null);globalThis.__DailyReportActionStateContext=Ss;var Rs="DailyReportActionProvider",ze=()=>wt(bs,"useDailyReportActions",Rs),gs=()=>wt(Ss,"useDailyReportActionState",Rs),eT=()=>{let e=wt(bs,"useDailyReportActionContext",Rs),t=wt(Ss,"useDailyReportActionContext",Rs);return Cl(()=>({...e,...t}),[e,t])},_l=({children:e,user:t,userId:r})=>{let{apiBasePath:n,labels:o}=$(),{notifyError:a}=ys(),[s,i]=Bt(0),[{ledgers:l,write:d}]=Bt(()=>bm(()=>i(Y=>Y+1))),[c,p]=Bt(0),[u,y]=Bt(0),[m]=Bt(vm),[f,b]=Bt(!1),[R,E]=Bt(xm),h=Il(!1),S=Be(Rm),g=Il(ym),T=Be(hm),[w]=Bt(()=>mm(()=>performance.now())),[C]=Bt(()=>Tm(()=>performance.now())),H=um(),[U,B]=$p(H,H.settled,g.current),A=U.items,v=`${c}:${U.settled?U.revision:"-"}`,I=()=>{p(Y=>Y+1)},L=()=>{i(Y=>Y+1)},M=Ym(Y=>T.current.has(Y),[T]),O=Ym(()=>rm()===(r??null),[r]),D=async()=>{hs.info("Refetching data without page reload..."),go(),L(),Z.listeners.forEach(Y=>{Y(-1)})},V=async()=>{hs.info("Clearing client & server/DB cache and refetching data without page reload..."),so(),g.current=new Set,T.current.clear(),y(Y=>Y+1),B(Gp);try{sessionStorage.clear()}catch{}try{let Y=await fetch(`${n}/${Fe.action}`,{method:"POST",body:Ga({intent:"clearCache"})});if(!Y.ok){let Ae=await Y.json().catch(()=>null);hs.warn("Failed to clear server-side cache:",Y.status,Ae)}}catch(Y){hs.warn("Failed to clear server-side cache:",Y)}O()&&(go({forceRefresh:!0}),L(),Z.listeners.forEach(Y=>{Y(-1)}))};Xm(()=>()=>{for(let Y of C.drain())Y.unsubscribe()},[C]);let F=()=>{r&&(h.current=!0,b(Y=>!Y))};qm(()=>{if(!r)return;let Y=setTimeout(()=>{h.current||b(!0)},wu);return()=>clearTimeout(Y)},[r]);let z=Y=>{O()&&(g.current=In(g.current,Y),T.current.add(Y),y(Ae=>Ae+1),wn(Y),B(Ae=>qr(Ae,Y)),m.discard(Y))};qm(()=>{if(!U.settled)return;let Y=new Set;for(let Ae of g.current)em(Ae)&&Y.add(Ae);Y.size!==g.current.size&&(g.current=Y)},[U.settled,U.revision]);let j={user:t,userId:r,labels:o,apiBasePath:n,items:A,isSessionStillOurs:O,ownEchoIds:w,ledgers:l,writeLedgers:d,pendingSseQueue:C,pendingAddPromises:S,removedIds:g,searchRemovedIds:T,setRemovedVersion:y,setRows:B,drafts:m,invalidateSearch:I,announceDataChange:L,replay:Y=>De.current.handleSseMessage(Y),notifyError:Y=>De.current.notifyError(Y)},Q=Am(j),Ce=gm(j),Ee={toggleSse:F,...Ce,removeStaleItem:z,refetchData:D,clearCacheAndRefetch:V,handleSseMessage:Q,notifyError:a},De=Il(Ee);Xm(()=>{De.current=Ee});let[Ge]=Bt(()=>Sm(De)),Je=Cl(()=>({...l,...Ge.functions,user:t}),[l,Ge,t]),nt=Cl(()=>({version:s,items:A,isSseEnabled:f,sseStatus:R,searchInvalidation:v,isReportRemoved:M,removedVersion:u}),[s,A,f,R,v,M,u]);return vl(Al.Provider,{value:m,children:vl(bs.Provider,{value:Je,children:tT(Ss.Provider,{value:nt,children:[vl(Tl,{isSseEnabled:f,onMessage:Ge.onSseMessage,onStatus:E}),e]})})})};var Qm=(e,t)=>e.split(t).length-1,Jm=(e,t,r)=>{let n=e("\uE000","\uE001");if(Qm(n,"\uE000")!==1||Qm(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,p)=>c.at-p.at);let i=[],l=0;for(let{at:c,part:p}of s)c>l&&i.push({kind:"text",text:n.slice(l,c)}),i.push(p),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 mT,useEffect as fT,useId as yT,useLayoutEffect as sf,useMemo as Ml}from"react";import{createContext as nf,createElement as sT,useCallback as rf,useContext as of,useDeferredValue as iT,useLayoutEffect as lT,useMemo as Ol,useSyncExternalStore as dT}from"react";var ef=Object.freeze({subject:"subject",content:"content",author:"author",employeeName:"author",updatedBy:"updatedBy",category:"category",creationCategory:"creationCategory",customerName:"customer",interviewer:"interviewers",attachment:"attachments",comment:"comments"}),rT=e=>Object.hasOwn(ef,e),nT=e=>{let t=e.indexOf(":"),r=t===-1?e:e.slice(0,t);if(!(Tn(e)&&rT(r)))throw new Error(`[daily-report] A search mark leaf carries an unknown field key: ${e}`);return ef[r]},oT=Object.freeze([]),Nl=(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,aT=(e,t)=>e.length===t.length&&e.every((r,n)=>r.heading===t[n].heading&&r.matchedBy===t[n].matchedBy),tf=()=>{let e=new Map,t=new Map,r=new Set,n=null,o=0,a=0,s=oT,i=!1,l=Object.freeze({entry:n,isCurrent:!0,count:o,fields:s}),d=!1,c=l,p=!1,u=h=>!h.isCurrent||h.entry!==n,y=()=>{let h=[];for(let[S,g]of t){let T=Ll(g);T!==null&&h.push(Object.freeze({heading:S,matchedBy:T}))}return Object.freeze(h)},m=()=>{if(!d)return l;d=!1;let h=a===0;if(i){i=!1;let S=y();aT(S,s)||(s=S)}return l.entry===n&&l.isCurrent===h&&l.count===o&&l.fields===s||(l=Object.freeze({entry:n,isCurrent:h,count:o,fields:s})),l},f=()=>{p=!1;let h=m();if(h!==c){c=h;for(let S of[...r])S()}},b=()=>{d=!0,!p&&(p=!0,queueMicrotask(f))},R=h=>{let S=t.get(h);if(S!==void 0)return S;let g={leaves:0,words:0,readings:0,dense:0};return t.set(h,g),g},E=(h,S)=>{o+=S*(h.words+h.readings),u(h)&&(a+=S);let g=R(h.heading),T=Ll(g);g.leaves+=S,g.words+=S*h.words,g.readings+=S*h.readings,h.dense&&(g.dense+=S),Ll(g)!==T&&(i=!0),g.leaves===0&&t.delete(h.heading)};return{register:(h,S)=>{let g={...S,heading:nT(S.fieldKey)},T=e.get(h);e.set(h,g),E(g,1),T!==void 0&&E(T,-1),b()},unregister:h=>{let S=e.get(h);S!==void 0&&(e.delete(h),E(S,-1),b())},settle:h=>{if(h!==n){n=h,a=0;for(let S of e.values())u(S)&&(a+=1);b()}},subscribe:h=>(r.add(h),()=>{r.delete(h)}),getSnapshot:m}};var bt=nf(null),af=nf(null),Ao=()=>{let e=of(af);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},cT=()=>{},uT=()=>cT,pT=(e,t)=>{let r=rf(i=>e===null?uT():e.subscribe(t,i),[e,t]),n=rf(()=>{let i=e===null?void 0:e.read(t);return i===void 0?null:i},[e,t]),o=dT(r,n,n),a=Ol(()=>e===null||o===null?null:{store:e,entry:o},[e,o]),s=iT(a,a===null?void 0:null);return s!==null&&s.store===e?s.entry:null},Cn=({reportHubId:e,children:t})=>{let r=of(bt),n=pT(r,e),o=Ol(()=>r===null?null:tf(),[r]),a=Ol(()=>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 lT(()=>{o!==null&&o.settle(n)},[o,n]),sT(af.Provider,{value:a},t)};import{jsx as df}from"react/jsx-runtime";var hT="data-daily-report-search-mark",RT=Object.freeze({[cn.word]:Object.freeze({attribute:"word",description:null}),[cn.reading]:Object.freeze({attribute:"reading",description:"searchReadingMarkDescription"})}),lf=e=>{if(!to(e))throw new Error(`[daily-report] A search mark carries an unknown tier: ${e}`);return RT[e]},bT=Object.freeze({words:0,readings:0}),ST=e=>{if(e===null)return bT;let t=0;for(let r=2;r<e.length;r+=3)lf(e[r]).attribute==="reading"&&(t+=1);return{words:e.length/3-t,readings:t}},gT=(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=lf(t[a+2]);s>o&&n.push(e.slice(o,s)),n.push(df("mark",{[hT]:l.attribute,"aria-description":l.description===null?void 0:r[l.description],className:Rc,children:e.slice(s,i)},`m${s}`)),o=i}return o<e.length&&n.push(e.slice(o)),n},ET=({fieldKey:e,raw:t,display:r})=>{let{entry:n,revalidate:o,tally:a}=Ao(),{labels:s}=$(),i=yT(),l=typeof t=="string"?t:"",d=Ml(()=>n===null||l.length===0?null:nl(l),[n,l]),c=n===null?void 0:n.fields[e],p=c!==void 0&&d!==null&&c.fingerprint===d?c:null,u=p!==null&&"ranges"in p?p.ranges:null,y=p!==null&&"dense"in p,m=Ml(()=>u===null?null:Cc(r,u),[u,r]),f=Ml(()=>ST(m),[m]),b=d!==null&&p===null,R=l.length===0;return fT(()=>{b&&d!==null&&o(e,d)},[b,o,e,d]),sf(()=>()=>a.unregister(i),[a,i]),sf(()=>{R||n===null?a.unregister(i):a.register(i,{entry:n,isCurrent:!b,fieldKey:e,words:f.words,readings:f.readings,dense:y})},[a,i,R,n,b,e,f,y]),m===null||m.length===0?r.text:gT(r.text,m,s)},se=({fieldKey:e,raw:t,display:r})=>mT(bt)===null?r.text:df(ET,{fieldKey:e,raw:t,display:r});import{jsx as AT}from"react/jsx-runtime";var TT={2:"h2",3:"h3",4:"h4",5:"h5",6:"h6"},Ar=Object.freeze({2:3,3:4,4:5,5:6}),it=({level:e,...t})=>{let r=TT[e];return AT(r,{...t})};import{memo as Gf,useId as EA,useMemo as TA,useRef as Yf}from"react";var cf=Object.freeze({tile:Object.freeze({maxWidth:480,maxHeight:320})});var kl="tile",wo=cf[kl],DT=2,Do=16,uf=5,pf=wo.maxWidth/DT,wT=uf*(pf+Do)-Do,mf=e=>{let t=Math.min(uf,1+Math.floor((e+Do)/(pf+Do)));return Math.floor((Math.min(e,wT)-(t-1)*Do)/t)},Pl=`round(nearest, 100cqi * ${wo.maxHeight} / ${wo.maxWidth}, 1px)`,ff=Object.freeze({aspectRatio:`${wo.maxWidth} / ${wo.maxHeight}`,height:Pl,contain:"strict"}),xT="--aqdr-lattice-block",yf=Object.freeze({marginBlockEnd:`calc(round(up, ${Pl}, var(${xT})) - ${Pl})`});var IT="download",vT="thumbnail",CT="1",_n=(e,t,r)=>{let n=`${e}/attachment/${encodeURIComponent(t)}`;switch(r.kind){case"inline":return n;case"download":return`${n}?${new URLSearchParams({[IT]:CT})}`;case"thumbnail":return`${n}?${new URLSearchParams({[vT]:r.variant})}`}};import{createContext as _T,useContext as LT}from"react";var Fl=_T(null),Ln=()=>LT(Fl)===!1?-1:void 0,hf=(e,t)=>{let{before:r,after:n}=io(e.ownerDocument,e);return(t==="before"?r.at(-1):n[0])??null},Rf=(e,t,r)=>{if(t===null)return!r&&La(e).length>0;if(!e.contains(t))return!1;let{before:n,within:o,after:a}=io(e,t);return r?n.length>0:o.length>0||a.length>0};import{createContext as FT,useContext as HT,useLayoutEffect as BT,useMemo as wf,useState as VT}from"react";import{flushSync as UT}from"react-dom";import{flushSync as NT}from"react-dom";var Hl=new WeakMap,bf=e=>e.observedTrackWidth!==null&&e.observedTrackWidth!==e.handedTrackWidth,Sf=e=>e.overflowWidth!==null&&e.overflowWidth!==e.handedOverflowWidth,OT=(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},gf=(e,t,r)=>{let n=OT(e,t);return n===null||n.handedTrackWidth===null||r<=n.handedTrackWidth?null:{track:n,trackWidth:n.handedTrackWidth}},MT=e=>{e.frame=null;let t=new Map;for(let r of e.observations.values())bf(r)&&t.set(r,r.observedTrackWidth);for(let[r,n]of e.fittedNames){if(!Sf(n))continue;let o=n.overflowWidth;n.handedOverflowWidth=o;let a=gf(e,r,o);a===null||t.has(a.track)||t.set(a.track,a.trackWidth)}t.size!==0&&NT(()=>{for(let[r,n]of t)r.handedTrackWidth=n,r.onTrackWidth(n)})},PT=(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(gf(e,r.target,n)!==null){a.overflowWidth=n;continue}a.overflowWidth=null,a.handedOverflowWidth=null}}e.frame!==null||!([...e.observations.values()].some(bf)||[...e.fittedNames.values()].some(Sf))||(e.frame=e.view.requestAnimationFrame(()=>MT(e)))},kT=e=>{let t=Hl.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=>PT(n,o)),observations:new Map,fittedNames:new Map,frame:null};return Hl.set(e,n),n},Ef=(e,t)=>{let r=kT(e.ownerDocument);if(r.observations.has(e)||r.fittedNames.has(e))throw new Error(t);return r},Tf=(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(),Hl.delete(e.view.document))},Af=(e,t,r)=>{let n=Ef(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),Tf(n,e))}},Df=e=>{let t=Ef(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),Tf(t,e))}};import{jsx as Vt,jsxs as Cf}from"react/jsx-runtime";var Ul="\u2026",WT=Ul.codePointAt(0),xf=Object.freeze({text:Ul,runs:Object.freeze([])}),Es="data-attachment-file-name",KT=Ie("block min-w-0"),zT="block w-fit whitespace-nowrap",$T=new Set([" ","\xA0","\u1361","\u{10100}","\u{10101}","\u{1039F}","\u{1091F}"," ",`
|
|
5
|
-
`,"\f","\r"]),jT=/^-?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?px$/,Wl=({fileName:e})=>Vt("span",{className:$t,children:e}),GT=/"([^"]*)"|'([^']*)'|([^\s,"'][^,"']*)/g,YT=/^U\+([\dA-F?]{1,6})(?:-([\dA-F]{1,6}))?$/i,Kl=FT(null),_f=e=>{let t=e.text.lastIndexOf(".");return t<=0||t===e.text.length-1?{stem:e,extension:pt("")}:{stem:Gn(e,0,t),extension:Gn(e,t,e.text.length)}},Bl=(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 Gn(e,0,o.slice(0,a).join("").length)},qT=(e,t,r)=>{if(r(e)<=t)return pt(e);let{stem:n,extension:o}=_f(vc(e)),a=t/2,s=r(o.text)<=a?o:ln([Bl(o,Ul,a,r),xf]);if(r(n.text+s.text)<=t)return ln([n,s]);let i=ln([xf,s]);return r(i.text)>t?Bl(i,"",t,r):ln([Bl(n,i.text,t,r),i])},If=new WeakMap,Lf=e=>{let t=If.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 If.set(e,n),n},Nf=(e,t,r)=>`${e}|${t}|${r}`,XT=(e,t,r,n)=>{let o=Nf(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+=$T.has(d)?r+n:r;return e.context.measureText(i).width+l};return e.measures.set(o,s),s},Of=e=>{let t=new Set;for(let r of e.matchAll(GT)){let n=r.slice(1).find(o=>o!==void 0);t.add(n.trim().replace(/\s+/g," ").toLowerCase())}return t},vf=e=>e==="normal"?0:jT.test(e)?Math.max(Number.parseFloat(e),0):null,ZT=e=>{let t=getComputedStyle(e),r=vf(t.letterSpacing),n=vf(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:Of(t.fontFamily),measure:XT(Lf(e.ownerDocument),o,r,n)}},QT=(e,t)=>e===t||e!==null&&t!==null&&e.width===t.width&&e.measure===t.measure,JT=e=>{let t=new Set([WT]);for(let r of e.querySelectorAll(`[${Es}]`)){let n=r.getAttribute(Es);for(let o of n+n.normalize("NFC"))t.add(o.codePointAt(0))}return t},eA=(e,t)=>{for(let r of e.split(",")){let n=YT.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},Vl=new WeakMap,Mf=e=>{let t=Vl.get(e);if(t!==void 0)return t;let r={document:e,registrations:new Set,stopWatchingFonts:null};return Vl.set(e,r),r},Pf=(e,t)=>{let r=ZT(e.container.querySelector(`[${Es}]`));if(r===null){e.fitted=null,e.applyFit(null);return}e.fitted={trackWidth:t,nameFont:r};let n=Mf(e.container.ownerDocument);n.stopWatchingFonts===null&&(n.stopWatchingFonts=rA(n)),e.applyFit({width:t,measure:r.measure})},tA=(e,t)=>{let r=t.map(o=>({families:Of(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=JT(o.container);s.some(l=>eA(l.unicodeRange,i))&&(Lf(e.document).measures.delete(Nf(a.nameFont.font,a.nameFont.letterSpacing,a.nameFont.wordSpacing)),n.push([o,a.trackWidth]))}n.length!==0&&UT(()=>{for(let[o,a]of n)Pf(o,a)})},rA=e=>{let t=e.document.fonts,r=n=>{tA(e,n.fontfaces)};return t.addEventListener("loadingdone",r),()=>{t.removeEventListener("loadingdone",r)}},nA=(e,t,r)=>{let n={container:e,applyFit:r,fitted:null},o=Af(e,t,s=>Pf(n,s)),a=Mf(e.ownerDocument);return a.registrations.add(n),()=>{o(),a.registrations.delete(n),!(a.registrations.size>0)&&(a.stopWatchingFonts?.(),Vl.delete(a.document))}},kf=(e,t)=>{let[r,n]=VT(null);return BT(()=>{let o=e.current;return nA(o,t,s=>{n(i=>QT(i,s)?i:s)})},[e,t]),r},Ff=({containerRef:e,children:t})=>{let r=kf(e,mf);return Vt(Kl,{value:r,children:t})},oA=e=>e,Hf=({containerRef:e,children:t})=>{let r=kf(e,oA);return Vt(Kl,{value:r,children:t})},xo=({fileName:e,attachmentIndex:t,className:r,testId:n})=>{let o=HT(Kl),a=wf(()=>o===null?null:qT(e,o.width,o.measure),[e,o]),{stem:s,extension:i}=wf(()=>_f(pt(e)),[e]),l=le.attachment(t);return Cf("span",{className:KT(r),title:e,"data-testid":n,[Es]:e,children:[a===null?Cf("span",{"aria-hidden":"true",className:"flex min-w-0",children:[Vt("span",{className:"truncate",children:Vt(se,{fieldKey:l,raw:e,display:s})}),i.text!==""&&Vt("span",{className:"max-w-1/2 shrink-0 truncate",children:Vt(se,{fieldKey:l,raw:e,display:i})})]}):Vt("span",{ref:Df,"aria-hidden":"true",className:zT,children:Vt(se,{fieldKey:l,raw:e,display:a})}),Vt(Wl,{fileName:e})]})};import dA from"lucide-react/dist/esm/icons/image-off.js";import{memo as cA,useCallback as jl,useEffect as uA,useLayoutEffect as pA,useRef as Gl,useState as mA}from"react";var Ts=Object.freeze({queueWaitMs:3e4,readMs:3e4,renderMs:1e4,transferMarginMs:5e3}),Bf=Ts.queueWaitMs+Ts.readMs+Ts.renderMs+Ts.transferMarginMs;var aA=Object.freeze({kind:"loaded"}),Vf=(e,t,r,n,o)=>{let{limiter:a,tuning:s}=n,i="watching",l=null,d=null,c=null,p=null,u=null,y=v=>(v!==null&&n.clearTimeout(v),null),m=()=>{p?.(),p=null},f=()=>{u?.(),u=null},b=v=>v===null||v.kind==="loaded"?0:v.kind==="failing"?v.failedAttempts:s.maxAttempts,R=v=>{i="cooling",c=n.setTimeout(H,v)},E=()=>{o.abortInFlight(),f();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(),R(s.retryDelayMs)},h=v=>{if(i==="loading"){if(d=y(d),!v){E();return}i="done",r.set(t,aA),f()}},S=()=>{d=null,h(!1)},g=()=>{i="loading",o.showActivity(!0),m(),d=n.setTimeout(S,s.loadTimeoutMs),o.grant()},T=()=>{l=null,i="queued",u=a.request(g)},w=()=>{l===null&&(l=n.setTimeout(T,s.settleMs))},C=v=>{if(o.showActivity(v),v){i==="watching"&&w();return}if(i==="queued"){f(),i="watching";return}l=y(l)},H=()=>{c=null,i="watching",o.showActivity(!1),p=n.observe(e,C)},U=()=>{let v=i==="loading";i="done",m(),l=y(l),d=y(d),c=y(c),o.showActivity(!1),v&&(o.abortInFlight(),u!==null&&o.reset()),f()},B=r.get(t);if(B?.kind==="loaded")return i=o.shows()?"done":"loading",o.grant(),{settle:h,dispose:U};if(B?.kind==="exhausted"){if(n.now()-B.failedAt<s.failureMemoryMs)return i="done",o.exhausted(),{settle:h,dispose:U};r.delete(t)}o.reset();let A=B?.kind==="failing"?B.retryAt-n.now():0;return A>0?R(A):H(),{settle:h,dispose:U}};var sA=e=>{Xe("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())}}}},Uf=sA(2);var iA=e=>{Xe("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)}}},zl=iA(1024);var $l=new WeakMap,lA=e=>{let t=$l.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 $l.set(e,a),a},Wf=(e,t)=>{let r=e.ownerDocument,n=lA(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(),$l.delete(r)))}};import{jsx as Io,jsxs as gA}from"react/jsx-runtime";var fA={idle:"pending",granted:"pending",loaded:"loaded",failed:"unavailable"},yA="data-thumbnail-active",hA="data-daily-report-attachment-preview",zf={[hA]:""},RA=Object.freeze({settleMs:250,loadTimeoutMs:Bf,retryDelayMs:5e3,maxAttempts:2,failureMemoryMs:6e4}),Kf=e=>{let t=zl.peek(e);return t?.kind==="loaded"?{url:e,status:"loaded"}:t?.kind==="exhausted"?{url:e,status:"failed"}:{url:e,status:"idle"}},bA=()=>({limiter:Uf,now:()=>performance.now(),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),observe:Wf,tuning:RA}),SA=(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(yA,o)}}),$f=cA(({thumbnailUrl:e,unavailableLabel:t})=>{let r=Gl(null),n=Gl(null),o=Gl(null),[a,s]=mA(()=>Kf(e));a.url!==e&&s(Kf(e)),pA(()=>{if(a.status==="failed")return;let c=n.current,p=a.status==="idle"?null:a.url;c.getAttribute("src")!==p&&(p===null?c.removeAttribute("src"):c.setAttribute("src",p))},[a]),uA(()=>{let c=r.current,p=Vf(c,e,zl,bA(),SA(e,c,s,n));return o.current=p,()=>{o.current=null,p.dispose()}},[e]);let i=jl(c=>{c!==null&&(n.current=c)},[]),l=jl(()=>{s(c=>c.status==="granted"?{url:c.url,status:"loaded"}:c),o.current?.settle(!0)},[]),d=jl(()=>{o.current?.settle(!1)},[]);return Io("span",{className:"block",children:Io("span",{ref:r,"aria-hidden":"true","data-testid":"daily-report-attachment-thumbnail-frame","data-thumbnail-state":fA[a.status],style:ff,className:"relative block w-full",children:Io("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"?gA("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 ${Yt}`,"data-testid":"daily-report-attachment-thumbnail-unavailable",children:[Io(dA,{"aria-hidden":"true",className:"size-5 shrink-0 text-slate-500 dark:text-slate-400"}),t]}):Io("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 Te,jsxs as Ut}from"react/jsx-runtime";var jf=1024,Yl=["B","KB","MB","GB"],qf="text-slate-500 text-sm line-through dark:text-slate-400",AA="relative truncate",DA=Ie(AA),wA=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",ee),xA=x("flex min-w-0 flex-col gap-2 rounded-lg",ee),IA=x("flex min-w-0 rounded-sm",ee),vA=x("m-0",Mr),CA=e=>{if(e===null||!Number.isFinite(e)||e<0)return null;let t=e,r=0;for(;t>=jf&&r<Yl.length-1;)t/=jf,r+=1;return r===0?`${t} ${Yl[r]}`:`${t.toFixed(1)} ${Yl[r]}`},_A=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}},Xf=({attachment:e,labels:t,className:r})=>Ut("span",{className:DA(r),children:[CA(e.fileSize)??"\u2014",e.state==="absent"&&` \xB7 ${t.attachmentMissing}`]}),ql=({href:e,children:t,...r})=>{let n=Ln();return Te("a",{href:e,...r,tabIndex:n,children:t})},Zf=({downloadUrl:e,label:t,fileName:r})=>Ut(ql,{href:e,className:wA,"data-testid":"daily-report-attachment-download",children:[t," ",Te(Wl,{fileName:r})]}),LA=Gf(({attachment:e,attachmentIndex:t,apiBasePath:r,labels:n})=>{let o=Te($f,{thumbnailUrl:_n(r,e.id,{kind:"thumbnail",variant:kl}),unavailableLabel:n.attachmentThumbnailUnavailable}),a=e.state==="absent";return Ut("li",{className:"@container flex min-w-0 flex-col gap-1","data-testid":"daily-report-attachment-item","data-attachment-state":e.state,children:[a?Ut("div",{className:"flex min-w-0 flex-col gap-2",children:[o,Te(xo,{fileName:e.fileName,attachmentIndex:t,className:qf,testId:"daily-report-attachment-name"})]}):Ut(ql,{href:_n(r,e.id,{kind:"inline"}),className:xA,"data-testid":"daily-report-attachment-link",...zf,children:[o,Te(xo,{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"})]}),Ut("div",{className:"flex h-4 min-w-0 items-center gap-2 text-slate-500 text-xs tabular-nums dark:text-slate-400",style:yf,children:[Te(Xf,{attachment:e,labels:n}),!a&&Te(Zf,{downloadUrl:_n(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})]})}),NA=Gf(({attachment:e,attachmentIndex:t,apiBasePath:r,labels:n})=>{let o=e.state==="absent",a=Yf(null);return Ut("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:[Te(Hf,{containerRef:a,children:Te("div",{ref:a,className:"flex min-w-0 flex-1","data-testid":"daily-report-attachment-name-track",children:Ut("div",{className:"flex min-w-0 flex-col",children:[o?Te(xo,{fileName:e.fileName,attachmentIndex:t,className:qf,testId:"daily-report-attachment-name"}):Te(ql,{href:_n(r,e.id,{kind:"inline"}),className:IA,"data-testid":"daily-report-attachment-link",children:Te(xo,{fileName:e.fileName,attachmentIndex:t,className:"text-blue-600 text-sm hover:underline dark:text-blue-400"})}),Te(Xf,{attachment:e,labels:n,className:"text-slate-500 text-xs tabular-nums dark:text-slate-400"})]})})}),!o&&Te(Zf,{downloadUrl:_n(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})}),OA=({entries:e,headingId:t,apiBasePath:r,labels:n})=>{let o=Yf(null);return Te(Ff,{containerRef:o,children:Te("div",{ref:o,className:"@container","data-testid":"daily-report-attachment-grid-container",children:Te("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})=>Te(LA,{attachment:a,attachmentIndex:s,apiBasePath:r,labels:n},a.id))})})})},As=({attachments:e})=>{let{apiBasePath:t,labels:r,headingLevel:n}=$(),o=EA(),{tiles:a,rows:s}=TA(()=>_A(e),[e]);return e.length===0?null:Ut("div",{className:"flex flex-col gap-2","data-testid":"daily-report-attachment-section",children:[Te(it,{level:Ar[n],id:o,className:vA,children:r.attachments}),Ut("div",{className:"flex flex-col gap-4",children:[a.length>0&&Te(OA,{entries:a,headingId:o,apiBasePath:t,labels:r}),s.length>0&&Te("ul",{"aria-labelledby":o,className:"flex flex-col gap-2","data-testid":"daily-report-attachment-rows",children:s.map(({attachment:i,index:l})=>Te(NA,{attachment:i,attachmentIndex:l,apiBasePath:t,labels:r},i.id))})]})]})};import{useOverlayEscapeStack as ZA}from"@aiquants/swipe-overlay";import{memo as oy,useCallback as Is,useEffect as ey,useId as ay,useLayoutEffect as QA,useRef as Jl,useState as JA}from"react";import{useCallback as Qf,useMemo as MA,useState as PA}from"react";var kA=()=>[],Xl=(e,t,r)=>{let{pendingAddCommentIds:n,pendingDeleteCommentIds:o,resolvedIdMap:a,addComment:s,deleteComment:i}=ze(),{version:l}=gs(),{labels:d}=$(),c=d.unknownUser,[p,u]=PA(null),y=Qf(R=>e&&i(e.reportHubId,R,e.date),[e,i]),m=Qf(R=>e&&t?s(e.reportHubId,R,e.date):Promise.resolve(),[e,t,s]),f=Be(kA);return{uiComments:MA(()=>{if(!e)return[];let R=Op(e.externalComments,e.postedComments,r,c),E=o.current.get(e.reportHubId);E?.size&&(R=R.filter(S=>!E.has(S.id)));let h=n.current.get(e.reportHubId);if(h?.size&&t){let S=new Set(R.map(C=>C.id)),g=tr(t,""),T=g==="",w=T?c:g;for(let[C,H]of h){if(E?.has(C)||S.has(C))continue;let U=a.current.get(C);U&&S.has(U)||R.some(B=>B.isMine&&B.content===H&&typeof B.id=="number"&&B.id>0)||R.push({id:C,authorName:w,content:H,createdAt:new Date().toISOString(),isMine:!0,isLegacy:!1,isAuthorUnknown:T})}}return JSON.stringify(R)===JSON.stringify(f.current)?f.current:(f.current=R,R)},[e,t,r,c,o,n,a,l]),handleAddComment:m,handleDeleteComment:y,pendingDeleteId:p,setPendingDeleteId:u,resolvedIdMap:a.current}};import{Fragment as FA,jsx as HA}from"react/jsx-runtime";var Ue=({render:e})=>{let t=Ln();return HA(FA,{children:e(t)})};import BA from"@heroicons/react/24/outline/TrashIcon.js";import{memo as VA,useId as UA,useMemo as Jf,useRef as WA,useState as KA}from"react";import{jsx as Wt,jsxs as Ds}from"react/jsx-runtime";var Zl="data-comment-id",ws="data-comment-delete-button",xs="data-comment-delete-slot",zA=x(We,ec),$A=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")),jA=(e,t,r)=>(e?4:0)+(t?2:0)+(r?1:0),GA=Ie("font-semibold text-xs"),YA="relative flex h-5 items-center",qA=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",ee),XA=(e,t,r)=>t===e||typeof e=="number"&&e<0&&r?.get(e)===t||typeof t=="number"&&t<0&&r?.get(t)===e,Ql=VA(({comment:e,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:s,onBeforeHide:i,resolvedIdMap:l})=>{let[d,c]=KA(!1),{labels:p}=$(),u=UA(),y=WA(null),m=XA(e.id,o,l),f=Jf(()=>ke(e.authorName),[e.authorName]),b=Jf(()=>pt(e.content),[e.content]),R=le.comment(e.id,"author"),E=le.comment(e.id,"content"),h=Tn(E),S=e.isMine&&!e.isLegacy,g=!!e.createdAt||S,T=()=>{let C=y.current;C!==null&&i(C),a(null),c(!0),typeof e.id=="number"&&n?.(e.id)},w=C=>{if(!m)return;let H=C.relatedTarget;he(H)&&C.currentTarget.contains(H)||a(null)};return Ds("li",{[Zl]:e.id,"data-deleted":d?"true":void 0,className:$A[jA(e.isMine,d,m)],children:[Ds("div",{className:"mb-1 flex items-center justify-between",children:[Wt("div",{className:GA(Mp(e.color)),children:h&&!e.isAuthorUnknown?Wt(se,{fieldKey:R,raw:e.authorName,display:f}):f.text}),g&&Ds("div",{className:"flex items-center gap-2",children:[e.createdAt&&Wt("div",{className:"text-slate-500 text-xs dark:text-slate-400",children:Se(e.createdAt)}),S&&Ds("div",{[xs]:e.id,className:YA,onBlur:w,children:[Wt(Ue,{render:C=>Wt("button",{ref:y,type:"button",tabIndex:C,className:zA,title:p.commentDelete,"aria-label":p.commentDelete,"aria-expanded":m,"aria-controls":m?u:void 0,[ws]:e.id,onClick:()=>s(e.id,m),children:Wt(BA,{"aria-hidden":"true",className:m?Pe.deletePending:Pe.delete})})}),m&&Wt(Ue,{render:C=>Wt("button",{id:u,type:"button",tabIndex:C,"data-delete-confirmation":!0,className:qA,onClick:T,children:p.commentDeleteConfirm})})]})]})]}),Wt("div",{className:"whitespace-pre-wrap text-slate-700 text-sm leading-6 dark:text-slate-200",children:h?Wt(se,{fieldKey:E,raw:e.content,display:b}):e.content})]})});Ql.displayName="DailyReportPostedComment";import{Fragment as uD,jsx as St,jsxs as ed}from"react/jsx-runtime";var eD="data-daily-report-comment-section",tD="data-daily-report-comment-heading",rD=x(Gt,ee),nD=Ie("flex flex-col gap-2"),sy=(e,t)=>e>0||t,oD=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",jt,ee),aD=x("h-9 rounded-lg bg-blue-600 px-4 font-medium text-sm text-white hover:bg-blue-700 disabled:opacity-50",ee),ty=e=>e.querySelector(`[${ws}][aria-expanded="true"]`),sD=(e,t,r)=>{let n=[...e.querySelectorAll(`[${ws}]`)].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(`[${Zl}]`)].filter(i=>!i.contains(t)&&i.closest("[data-deleted]")===null).length;return sy(s,r)?{kind:"heading"}:{kind:"report"}},iD=({comments:e,reportHubId:t,businessDate:r,onDeleteComment:n,pendingDeleteId:o,onPendingDeleteIdChange:a,resolvedIdMap:s,canComment:i,headingRef:l,onSectionRemoved:d})=>{let c=Jl(null),p=ZA(),u=ay(),y=o!==null,m=Is(()=>{let R=c.current,E=R===null?null:ty(R),h=E===null?null:E.closest(`[${xs}]`),S=R===null?null:Ve(R);a(null),E!==null&&h!==null&&S!==null&&h.contains(S)&&E.focus({preventScroll:!0})},[a]);ey(()=>{if(y)return p({id:u,onEscape:R=>nr(R)?(m(),!0):!1})},[y,p,u,m]),ey(()=>{let R=c.current;if(!y||R===null)return;let E=R.ownerDocument,h=S=>{let g=ty(R)?.closest(`[${xs}]`);g!=null&&he(S.target)&&g.contains(S.target)||a(null)};return E.addEventListener("pointerdown",h,!0),()=>E.removeEventListener("pointerdown",h,!0)},[y,a]);let f=Is((R,E)=>{E?m():a(R)},[m,a]),b=Is(R=>{let E=c.current;if(E===null)return;let h=sD(E,R,i);if(h.kind==="report"){d();return}let S=h.kind==="trash"?h.button:l.current;if(S===null)throw new Error("[daily-report] the comment section's heading is not attached");S.focus({preventScroll:!0})},[i,l,d]);return e.length===0?null:St("ul",{ref:c,className:"space-y-2",children:e.map(R=>St(Ql,{comment:R,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:f,onBeforeHide:b,resolvedIdMap:s},R.id))})},ry=({headingId:e,className:t,children:r,...n})=>{let{labels:o,headingLevel:a}=$(),s=Jl(null);return sy(n.comments.length,n.canComment)?ed("div",{[eD]:"",className:nD(t),children:[St(it,{ref:s,id:e,level:Ar[a],tabIndex:-1,[tD]:"",className:rD,children:o.comments}),St(iD,{...n,headingRef:s}),r]}):null},iy=oy(({report:e,canComment:t,onSectionRemoved:r,formPlacement:n,sectionClassName:o,comments:a,onAddComment:s,onDeleteComment:i,pendingDeleteId:l,onPendingDeleteIdChange:d,resolvedIdMap:c})=>{let p=ay(),u=t?St(cD,{onAddComment:s,pushedToEnd:n==="after-section",labelledBy:p}):null,y={headingId: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"?St(ry,{...y,children:u}):ed(uD,{children:[St(ry,{...y}),u]})});iy.displayName="ReportCommentsView";var vo=oy(({report:e,userId:t,canComment:r,onCommentAdded:n,onSectionRemoved:o,formPlacement:a,sectionClassName:s})=>{let{user:i}=ze(),{uiComments:l,handleAddComment:d,handleDeleteComment:c,pendingDeleteId:p,setPendingDeleteId:u,resolvedIdMap:y}=Xl(e,i,t),m=vp(),f=Jl(!1);QA(()=>{f.current&&m(),f.current=!0},[l,p,m]);let b=Is(async R=>{await d(R),n?.()},[d,n]);return St(iy,{report:e,canComment:r,onSectionRemoved:o,formPlacement:a,sectionClassName:s,comments:l,onAddComment:b,onDeleteComment:c,pendingDeleteId:p,onPendingDeleteIdChange:u,resolvedIdMap:y})});vo.displayName="ReportComments";var lD="flex gap-2",dD="mt-auto flex gap-2",ny="content",cD=({onAddComment:e,pushedToEnd:t,labelledBy:r})=>{let[n,o]=JA(!1),{labels:a}=$();return ed("form",{className:t?dD:lD,onSubmit:async i=>{i.preventDefault();let l=i.currentTarget,d=l.elements.namedItem(ny);if(!(d instanceof Ne(l).HTMLInputElement))return;let c=d.value.trim();if(c&&e){o(!0),l.reset();try{await e(c)}catch{d.value=c}finally{o(!1)}}},children:[St(Ue,{render:i=>St("input",{type:"text",name:ny,tabIndex:i,"aria-labelledby":r,placeholder:a.commentPlaceholder,className:oD,autoComplete:"off"})}),St(Ue,{render:i=>St("button",{type:"submit",tabIndex:i,className:aD,disabled:n,children:a.commentSend})})]})};import{useState as xD}from"react";import{Slot as pD}from"@radix-ui/react-slot";import{cva as mD}from"class-variance-authority";import*as dy from"react";import{jsx as hD}from"react/jsx-runtime";var fD=mD(`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"}}),ly=new Map,yD=(e,t,r)=>{let n=`${String(e)}|${String(t)}`,o=ly.get(n);if(o!==void 0)return o(r);let a=Ie(fD({variant:e,size:t}));return ly.set(n,a),a(r)},or=dy.forwardRef(({className:e,variant:t,size:r,asChild:n=!1,...o},a)=>hD(n?pD:"button",{className:yD(t,r,e),ref:a,...o}));or.displayName="Button";import{jsx as SD}from"react/jsx-runtime";var RD=`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 ${jt} ${ee}`,bD=Ie(RD);function cy({className:e,type:t,...r}){return SD("input",{type:t,"data-slot":"input",className:bD(e),...r})}import*as uy from"@radix-ui/react-label";import{jsx as TD}from"react/jsx-runtime";var gD="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",ED=Ie(gD);function Co({className:e,...t}){return TD(uy.Root,{"data-slot":"label",className:ED(e),...t})}import{jsx as wD}from"react/jsx-runtime";var AD=`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 ${jt} ${ee}`,DD=Ie(AD);function py({className:e,...t}){return wD("textarea",{"data-slot":"textarea",className:DD(e),...t})}import{jsx as gt,jsxs as vs}from"react/jsx-runtime";var Nn=e=>({title:e.subject??"",content:e.content??""}),ID=e=>{e.preventDefault()},Cs=({report:e,onCancel:t,onPublishSuccess:r,titleInputRef:n})=>{let{updateReport:o,publishReport:a}=ze(),{labels:s}=$(),i=Tr(),{title:l,content:d}=_m(e.reportHubId),[c,p]=xD(!1),u=async()=>{p(!0);try{await o(e.reportHubId,{title:l,content:d},e.date)}catch{}finally{p(!1)}},y=async()=>{p(!0);try{await o(e.reportHubId,{title:l,content:d},e.date),await a(e.reportHubId,e.date),r?.()}catch{}finally{p(!1)}},m=`report-title-${e.reportHubId}`,f=`report-content-${e.reportHubId}`;return vs("form",{className:"space-y-4 p-1",onSubmit:ID,children:[vs("div",{className:"space-y-2",children:[gt(Co,{htmlFor:m,children:s.formTitle}),gt(Ue,{render:b=>gt(cy,{ref:n,id:m,value:l,onChange:R=>i.setInput(e.reportHubId,{title:R.target.value}),placeholder:s.formTitlePlaceholder,disabled:c,tabIndex:b})})]}),vs("div",{className:"space-y-2",children:[gt(Co,{htmlFor:f,children:s.formContent}),gt(Ue,{render:b=>gt(py,{id:f,value:d,onChange:R=>i.setInput(e.reportHubId,{content:R.target.value}),placeholder:s.formContentPlaceholder,className:"min-h-50",disabled:c,tabIndex:b})})]}),vs("div",{className:"flex justify-end gap-2",children:[t&>(Ue,{render:b=>gt(or,{type:"button",variant:"outline",onClick:t,disabled:c,tabIndex:b,children:s.formCancel})}),gt(Ue,{render:b=>gt(or,{type:"button",variant:"secondary",onClick:u,disabled:c,tabIndex:b,children:s.formSave})}),gt(Ue,{render:b=>gt(or,{type:"button",onClick:y,disabled:c,tabIndex:b,children:s.formPublish})})]})]})};import{virtualScrollItemElementId as ow}from"@aiquants/virtualscroll";import{useContext as ks}from"react";import{virtualScrollItemElementId as Cy}from"@aiquants/virtualscroll";import{createContext as GD,useCallback as oe,useContext as YD,useLayoutEffect as xr,useMemo as _y,useRef as sr,useState as _o,useSyncExternalStore as Py}from"react";import{flushSync as id}from"react-dom";var vD=e=>{if(e.length<2)return null;let t=e.slice(1).map((s,i)=>s-e[i]);t.sort((s,i)=>s-i);let r=t.length>>1,n=t.length%2===1?t[r]:(t[r-1]+t[r])/2,o=Number.POSITIVE_INFINITY,a=Number.NEGATIVE_INFINITY;for(let s=0;s<e.length;s++){let i=e[s]+(e.length-s)*n;o=Math.min(o,i),a=Math.max(a,i)}return o-(a-o)},my=(e,t)=>e.id===t.id&&e.indexHint===t.indexHint,fy=e=>{let t=new Set,r=new Set,n=e,o=null,a=Object.freeze({selected:n,settled:n}),s=null,i=[],l=()=>{let h=o===null?n:o;if(!(my(a.selected,n)&&my(a.settled,h))){a=Object.freeze({selected:n,settled:h});for(let S of[...t])S()}},d=()=>a,c=h=>(t.add(h),()=>{t.delete(h)}),p=h=>{n=h,l()},u=h=>{let S=o!==null;if(o=h,l(),S!==(o!==null)){s=null,i=[];for(let g of[...r])g()}};return{getSnapshot:d,subscribe:c,select:p,hold:h=>u(h),release:()=>u(null),isHeld:()=>o!==null,subscribeHold:h=>(r.add(h),()=>{r.delete(h)}),noteHoldKey:h=>{if(!Number.isFinite(h))throw new Error(`[daily-report] a hold key's timeStamp must be a finite number, got ${h}`);o!==null&&((i.length===0||h>i[i.length-1])&&(i.push(h),i.length>8&&i.shift()),s={count:s===null?1:s.count+1,nextAt:vD(i)})},holdKeys:()=>s}};var ar=e=>({active:e,effect:"none"}),yy=(e,t)=>e!==null&&e.index>=t.visibleStartIndex&&e.index<=t.visibleEndIndex,td=(e,{items:t,selected:r,range:n})=>{if(n===null)return e===null?r:e;if(yy(e,n))return e;if(yy(r,n))return r;let o=me(t,n.visibleStartIndex);return o===void 0?null:{reportHubId:o.reportHubId,index:n.visibleStartIndex}},hy=(e,t)=>{if(e.length===0)return{active:null,effect:"handBack"};let r=Math.min(Math.max(t,0),e.length-1);return{active:{reportHubId:Ft(e,r).reportHubId,index:r},effect:"handBack"}},rd=(e,t)=>{switch(t.kind){case"key":return ar(t.target);case"activation":case"focusInControl":return ar(t.row);case"focusInComposite":return t.from==="inside"?ar(e):t.pressed!==null?ar(t.pressed):{active:td(e,t.shown),effect:"reveal"};case"focusLeft":return ar(td(e,t.shown));case"rangeChanged":return ar(t.focusWithin&&e!==null?e:td(e,t.shown));case"listChanged":{if(e===null)return ar(null);let r=fe(t.items,e.reportHubId,e.index);return r===-1?hy(t.items,e.index):ar(r===e.index?e:{reportHubId:e.reportHubId,index:r})}case"removed":return t.selection===null||t.selection.reportHubId!==t.reportHubId?ar(e):hy(t.items,t.selection.index)}};var _s=e=>e.matches(":focus-visible")&&To(e.ownerDocument)!=="pointer";var CD="data-daily-report-keyboard-focus",Dr={capture:!0},Ry=e=>{let t=Lm(e.ownerDocument),r=i=>{e.toggleAttribute(CD,he(i)&&_s(i))},n=i=>r(i.target),o=i=>{he(i.relatedTarget)&&e.contains(i.relatedTarget)||r(null)},a=()=>r(null);e.addEventListener("focusin",n,Dr),e.addEventListener("keydown",n,Dr),e.addEventListener("focusout",o,Dr),e.addEventListener("pointerdown",a,Dr);let s=Ve(e);return r(s!==null&&e.contains(s)?s:null),()=>{e.removeEventListener("focusin",n,Dr),e.removeEventListener("keydown",n,Dr),e.removeEventListener("focusout",o,Dr),e.removeEventListener("pointerdown",a,Dr),r(null),t()}};var _D='form, input, textarea, select, [contenteditable]:not([contenteditable="false"]), audio[controls], video[controls]',LD='select, input[type="search"], [contenteditable]:not([contenteditable="false"]), audio[controls], video[controls]',ND=["combobox","listbox","menu","menubar","radiogroup","slider","spinbutton","textbox","tree","grid","scrollbar","tablist","toolbar","treegrid","separator"],OD=ND.map(e=>`[role="${e}"]`).join(", "),MD='[aria-expanded="true"]',PD=new Map([["ArrowUp","previous"],["ArrowDown","next"],["Home","first"],["End","last"],["PageUp","pageBackward"],["PageDown","pageForward"]]),kD=new Set(["Enter"," "]),FD=new Map([["Home","exitBefore"],["End","exitAfter"]]),od=e=>{if(e.altKey||e.metaKey)return null;if(e.key==="Tab")return e.ctrlKey?null:"tab";if(e.shiftKey)return null;if(e.ctrlKey){let r=FD.get(e.key);return r===void 0?null:r}let t=PD.get(e.key);return t!==void 0?t:kD.has(e.key)?"activate":e.key==="Escape"?"returnToRow":null},nd=(e,t,r,n)=>{let o=e.closest(t);return o!==null&&o!==n&&o!==r&&r.contains(o)},by=(e,{container:t,composite:r})=>{let n=od(e);if(n===null||e.defaultPrevented||Zr(e)||t===null||r===null||!he(e.target)||!t.contains(e.target))return null;let o=e.target;if(o===r)return n==="returnToRow"?null:n;let a=$r(o,t);if(a===null)return null;if(n==="tab")return n;if(n==="activate"||nd(o,OD,t,r))return null;if(n==="returnToRow"){if(nd(o,LD,t,r))return null;let s=o.closest(MD);return s!==null&&a.contains(s)?null:n}return nd(o,_D,t,r)?null:n};var Ls={kind:"stay"},Os=e=>{if(e.kind==="measured")return e.heightOf;let{rowHeight:t}=e;return()=>t},Sy=e=>Math.floor(.875*e),wr=(e,t)=>({kind:"move",index:e,align:t}),Ns=(e,t,r,n)=>e>=0&&e+t<=r?"none":t>r?n>0?"top":"bottom":e<0?"top":"bottom",HD=({index:e,count:t,viewport:r,activeRowTop:n,heightOf:o})=>{let a=o(e),s=n+a,i={index:e+1,top:s};for(let l=e+1;l<t;l++){let d=o(l);if(a+=d,a>r)break;i={index:l,top:s},s+=d}return i},BD=({index:e,viewport:t,activeRowTop:r,heightOf:n})=>{let o=n(e),a=r,s={index:e-1,top:r-n(e-1)};for(let i=e-1;i>=0;i--){let l=n(i);if(a-=l,o+=l,o>t)break;s={index:i,top:a}}return s},VD=(e,t,r)=>{let{index:n,count:o,viewport:a,activeRowTop:s,heightOf:i}=t,l=s+i(n);switch(e){case"previous":{if(n===0)return Ls;if(r==="top")return wr(n-1,"top");let d=i(n-1);return wr(n-1,Ns(s-d,d,a,-1))}case"next":return n===o-1?Ls:r==="top"?wr(n+1,"top"):wr(n+1,Ns(l,i(n+1),a,1));case"first":return wr(0,"top");case"last":return wr(o-1,i(o-1)<=a?"bottom":"top");case"pageForward":{if(l>a)return{kind:"reveal",delta:Math.min(l-a,Sy(a))};if(n===o-1)return Ls;let d=HD(t);return wr(d.index,Ns(d.top,i(d.index),a,1))}case"pageBackward":{if(s<0)return{kind:"reveal",delta:-Math.min(-s,Sy(a))};if(n===0)return Ls;let d=BD(t);return wr(d.index,Ns(d.top,i(d.index),a,-1))}}},UD=({index:e,activeRowTop:t,heightOf:r},n)=>Ey(n,{index:e,offsetPx:-t},r),gy=(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,activeRowTop:o.activeRowTop-l.delta}):l.align==="none"?o={...o,index:l.index,activeRowTop:UD(o,l.index)}:(a={index:l.index,align:l.align},s=0,o={...o,index:l.index,activeRowTop:l.align==="top"?0:o.viewport-o.heightOf(l.index)})}return{index:o.index,alignment:a,scrollDelta:s}},ad=({index:e,viewport:t,activeRowTop:r,heightOf:n})=>{let o=r+n(e);return r>=0&&o<=t?"whole":r<t&&o>0?"partial":"hidden"},Ey=(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},Ms=(e,t,r,n)=>{let o=e.getViewportSize(),a=e.getScrollPosition();if(!(o>0&&a>=0))return null;let s=Os(n);if(n.kind==="uniform")return{index:t,count:r,viewport:o,activeRowTop:t*n.rowHeight-a,heightOf:s};let i=e.getScrollAnchor();return i===null?null:{index:t,count:r,viewport:o,activeRowTop:Ey(t,i,s),heightOf:s}},Ps=(e,t,r,n)=>{let o=Os(n),a=e.index,s=o(a)-e.offsetPx;for(;s<t&&a<r-1;)a+=1,s+=o(a);return a},Ty=(e,t)=>e.top<t.top?e.top-t.top:e.bottom>t.bottom?Math.min(e.bottom-t.bottom,e.top-t.top):0;var Ay=e=>{if(e!==void 0)for(let t of[...e])t()},Dy=({initialSelectedId:e})=>{let t=e,r=null,n=e,o=new Map,a=new Set,s=l=>(l===t?1:0)|(l===n?2:0),i=l=>{l!==null&&Ay(o.get(l))};return{getActiveId:()=>t,getActiveIndexHint:()=>r,getSelectedId:()=>n,setActive:(l,d)=>{if(r=l===null?null:d,l===t)return;let c=t;t=l,i(c),i(l),Ay(a)},settleSelection:l=>{if(l===n)return;let d=n;n=l,i(d),i(l)},rowStateOf:s,subscribe:(l,d)=>{let c=o.get(l);return c===void 0&&(c=new Set,o.set(l,c)),c.add(d),()=>{c.delete(d),c.size===0&&o.get(l)===c&&o.delete(l)}},subscribeActive:l=>(a.add(l),()=>{a.delete(l)})}};var Et={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}},sd=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!1}),WD=Object.freeze({apply:null,flush:!1,requestFrame:!0,ended:!1}),wy=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!0}),KD=new Map(Object.values(Et).map(e=>[e,Object.freeze({apply:e,flush:!1,requestFrame:!0,ended:!1})])),xy=e=>{let t=KD.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},zD=(e,t,r)=>e==="row"||e==="page"?t+r:r,Iy=e=>({state:{axis:e.axis,pending:0,fence:"immediate"},effects:xy(e)}),vy=(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",xy(r)):(e.pending=zD(e.axis,e.pending,r.amount),sd)}case"frame":{if(e.fence==="open")return sd;if(e.fence==="immediate")return e.fence="flush",WD;if(e.pending===0)return e.fence="open",sd;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?wy:{apply:{axis:e.axis,amount:e.pending},flush:!0,requestFrame:!1,ended:!0};case"cancel":return wy}};var ld=GD(null),qD=Object.freeze({kind:"frame"}),Ly={capture:!0},XD=()=>{},Ny=(e,t,r)=>{let n=e.ownerDocument,o=n.defaultView;if(o===null)return XD;let a=!0,s=()=>{a&&(a=!1,i.disconnect(),n.removeEventListener("focusin",s,Ly))},i=new o.MutationObserver(()=>{e.isConnected||(s(),r())});return i.observe(t,{childList:!0,subtree:!0}),n.addEventListener("focusin",s,Ly),s},ZD=Object.freeze({kind:"keyup"}),QD=Object.freeze({kind:"cancel"}),JD=Object.freeze({previous:Object.freeze({kind:"repeat",step:Et.previous}),next:Object.freeze({kind:"repeat",step:Et.next}),pageBackward:Object.freeze({kind:"repeat",step:Et.pageBackward}),pageForward:Object.freeze({kind:"repeat",step:Et.pageForward}),first:Object.freeze({kind:"repeat",step:Et.first}),last:Object.freeze({kind:"repeat",step:Et.last}),activate:Object.freeze({kind:"repeat",step:Et.activate})}),On={capture:!0},ew=e=>e in Et,tw=(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}},rw=(e,t)=>({top:e.top-t,bottom:e.bottom+t}),Oy=e=>{let t=mo(e),r=gr(e);return t===null||r===null?null:{reportHubId:t,index:r-1}},nw=e=>e==="first"||e==="last",My=(e,t)=>{let r=fe(e,t.reportHubId,t.index);return r===-1?null:{reportHubId:t.reportHubId,index:r}},ky=e=>{let t=YD(ld);if(t===null)throw new Error("[daily-report] useListRowState is called outside a view's rows (no row cursor)");let r=oe(a=>t.subscribe(e,a),[t,e]),n=oe(()=>t.rowStateOf(e),[t,e]),o=Py(r,n,n);return{active:(o&1)!==0,selected:(o&2)!==0}},Fy=(e,t)=>{let r=oe(()=>{let n=e.getActiveId();if(n===null)return null;let o=fe(t,n,e.getActiveIndexHint());return o===-1?null:o},[e,t]);return Py(e.subscribeActive,r,r)},Hy=({items:e,selectedId:t,onSelect:r,onActivate:n,containerRef:o,rootRef:a,gridId:s,handleRef:i,scroller:l,rowSizing:d,arrowAlign:c})=>{let[p]=_o(()=>Dy({initialSelectedId:t})),u=Be(()=>({items:e,onSelect:r,onActivate:n,rowSizing:d,arrowAlign:c})),y=sr(null),m=sr(!1),f=sr(null),b=sr(!1),R=sr(null),E=sr(()=>{}),[h,S]=_o(null),[g,T]=_o(0),w=sr(null),C=sr(e),[H]=_o(()=>fy({id:t,indexHint:null})),[U,B]=_o(0),A=_y(()=>({id:t,indexHint:t===null?null:ip(h,t)}),[t,h]),v=sr(A);xr(()=>{u.current={items:e,onSelect:r,onActivate:n,rowSizing:d,arrowAlign:c},v.current=A},[u,e,r,n,d,c,A]),xr(()=>{H.select(A)},[H,A,g]);let I=oe((_,P)=>{let W=R.current;if(W!==null&&W.items===_&&W.reportHubId===P)return W.index;let q=fe(_,P,W!==null&&W.reportHubId===P?W.index:null);return q!==-1&&(R.current={items:_,reportHubId:P,index:q}),q},[]),L=oe((_,P)=>{R.current={items:u.current.items,reportHubId:_,index:P},S(W=>W!==null&&W.reportHubId===_&&W.index===P?W:{reportHubId:_,index:P}),T(W=>W+1),H.select({id:_,indexHint:P})},[u,H]),M=oe(_=>{let P=p.getActiveId();if(P===null)return null;let W=fe(_,P,p.getActiveIndexHint());return W===-1?null:{reportHubId:P,index:W}},[p]),O=oe(()=>{let _=u.current.items,P=p.getSelectedId(),W=P===null?-1:I(_,P);return{items:_,selected:P===null||W===-1?null:{reportHubId:P,index:W},range:y.current}},[p,u,I]),D=oe(_=>{let P=b.current;b.current=!0;try{_()}finally{b.current=P}},[]),V=oe(_=>{p.setActive(_===null?null:_.reportHubId,_===null?null:_.index)},[p]),F=oe(_=>{let P=i.current;if(P===null)return null;let{items:W,rowSizing:q}=u.current;return Ms(P,_,W.length,q)},[i,u]),z=oe(_=>{let P=F(_);P===null||ad(P)==="whole"||P.activeRowTop<=0&&P.activeRowTop+P.heightOf(_)>=P.viewport||l.toIndex(_,{align:"nearest"})},[F,l]),j=oe((_,P)=>{let W=o.current;if(W===null)return;let q=u.current.items,k=null;if(_===null)k=M(q);else{let re=fe(q,_,p.getActiveId()===_?p.getActiveIndexHint():null);re!==-1&&(k={reportHubId:_,index:re},V(k))}k!==null&&z(k.index);let N=W.ownerDocument,K=N.getElementById(s);if(K===null)return;let J=k===null?null:N.getElementById(Cy(s,k.reportHubId));D(()=>Bm(W,K,J,P))},[o,u,p,s,M,V,z,D]),Q=oe(_=>{let P=rd(M(_.kind==="listChanged"?C.current:u.current.items),_);V(P.active),P.effect==="reveal"&&P.active!==null&&z(P.active.index);let W=o.current;P.effect==="handBack"&&m.current&&W!==null&&Ur(W)&&j(P.active===null?null:P.active.reportHubId,"removal")},[o,u,M,V,z,j]),Ce=oe(()=>{m.current&&(m.current=!1,f.current=null,Q({kind:"focusLeft",shown:O()}))},[Q,O]);xr(()=>{p.settleSelection(t)},[p,t,U]),xr(()=>{t!==null&&I(e,t)},[e,t,I]),xr(()=>{Q({kind:"listChanged",items:e}),C.current=e},[e,Q]),xr(()=>{let _=a.current;if(_!==null)return Ry(_)},[a]),xr(()=>{let _=o.current;if(_===null)return;let P=_.ownerDocument,W=k=>{let N=o.current,K=k.target;if(!(N!==null&&he(K)&&N.contains(K))){f.current=null,Ce();return}let re=k.pointerType==="touch"?null:$r(K,N);f.current=re===null?null:Oy(re)},q=()=>{f.current=null};return P.addEventListener("pointerdown",W,On),P.addEventListener("pointerup",q,On),P.addEventListener("pointercancel",q,On),()=>{P.removeEventListener("pointerdown",W,On),P.removeEventListener("pointerup",q,On),P.removeEventListener("pointercancel",q,On)}},[o,Ce]);let Ee=oe((_,P)=>{Q({kind:"activation",row:{reportHubId:_,index:P}}),L(_,P)},[Q,L]),De=oe(_=>{let P=rd(M(u.current.items),{kind:"removed",reportHubId:_,selection:R.current,items:u.current.items});if(P.effect!=="handBack")return;V(P.active);let W=P.active===null?null:P.active.reportHubId;E.current();let q=o.current,k=q===null?null:Ve(q);if(q!==null&&k!==null&&!Ur(q)&&!q.contains(k)){E.current=Ny(k,k.ownerDocument,()=>j(W,"removal"));return}j(W,"removal")},[o,u,M,V,j]),Ge=oe((_,P,W,q)=>{let{items:k,onSelect:N,rowSizing:K,arrowAlign:J}=u.current,re=i.current;if(N===null||re===null)return;let be=fe(k,W.reportHubId,W.index);if(be===-1)return;let qe=Ms(re,be,k.length,K);if(qe===null)return;let Me=gy(_,P,qe,J),mr=Ft(k,Me.index),zn=Me.index!==be,on=zn||q&&nw(_)&&v.current.id!==mr.reportHubId;id(()=>{zn&&Q({kind:"key",target:{reportHubId:mr.reportHubId,index:Me.index}}),on&&(p.settleSelection(mr.reportHubId),N(mr.reportHubId,Me.index)),Me.alignment!==null&&l.toIndex(Me.alignment.index,{align:Me.alignment.align}),Me.scrollDelta!==0&&l.by(Me.scrollDelta),on&&(L(mr.reportHubId,Me.index),B(jR=>jR+1))})},[p,u,i,l,L,Q]),Je=oe(_=>{let P=fe(u.current.items,_.reportHubId,_.index);P!==-1&&(Ee(_.reportHubId,P),u.current.onActivate(_.reportHubId,P))},[u,Ee]),nt=oe(_=>{let P=M(u.current.items);if(P===null)return;if(_.axis==="activate"){Je(P);return}let W=tw(_.axis,_.amount);Ge(W.command,W.count,P,!1)},[u,M,Je,Ge]),Y=oe(_=>{w.current=null,_.frame!==0&&_.view.cancelAnimationFrame(_.frame),H.release()},[H]),Ae=oe((_,P,W)=>{let{apply:q}=P;q!==null&&(P.flush?id(()=>nt(q)):nt(q)),w.current===_&&(P.ended?Y(_):P.requestFrame&&(_.frame=_.view.requestAnimationFrame(W)))},[nt,Y]),ie=oe((_,P,W)=>{Ae(_,vy(_.state,P),W)},[Ae]),ye=oe(()=>{let _=w.current;_!==null&&(_.frame=0,ie(_,qD,ye))},[ie]),_e=oe(()=>{let _=w.current;_!==null&&ie(_,ZD,ye)},[ie,ye]),Ye=oe(()=>{let _=w.current;_!==null&&ie(_,QD,ye)},[ie,ye]),cr=oe((_,P,W)=>{H.hold(v.current),H.noteHoldKey(W);let{state:q,effects:k}=Iy(Et[_]),N={state:q,view:P,frame:0};w.current=N,Ae(N,k,ye)},[H,Ae,ye]);xr(()=>()=>{E.current();let _=w.current;w.current=null,_!==null&&_.frame!==0&&_.view.cancelAnimationFrame(_.frame)},[]);let _t=oe((_,P,W)=>{let q=M(u.current.items),k=q===null?null:F(q.index);if(q===null||k===null||ad(k)!=="hidden")return;let N=P.ownerDocument.getElementById(Cy(s,q.reportHubId));N===null||!Rf(N,_===P?null:_,W)||id(()=>l.toIndex(q.index,{align:"nearest"}))},[u,s,l,M,F]),At=oe(_=>{let P=w.current,W=P!==null&&_.repeat?od(_):null;if(P!==null&&W!==null&&ew(W)&&Et[W].axis===P.state.axis){_.preventDefault(),H.noteHoldKey(_.timeStamp),ie(P,JD[W],ye);return}let{items:q,onSelect:k,rowSizing:N}=u.current,K=o.current,J=K===null?null:K.ownerDocument.getElementById(s),re=k===null?null:by(vn(_),{container:K,composite:J});if(_e(),re===null||K===null||J===null)return;switch(f.current=null,re){case"exitBefore":case"exitAfter":{let Me=hf(K,re==="exitBefore"?"before":"after");if(Me===null)return;_.preventDefault(),Me.focus();return}case"tab":he(_.target)&&_t(_.target,J,_.shiftKey);return;case"returnToRow":_.preventDefault(),D(()=>J.focus({preventScroll:!0}));return}let be=M(q);if(re==="activate"){if(_.preventDefault(),be===null)return;_.repeat?cr(re,Ne(K),_.timeStamp):Je(be);return}if(be===null)return;let qe=i.current;qe===null||Ms(qe,be.index,q.length,N)===null||(_.preventDefault(),_.repeat?cr(re,Ne(K),_.timeStamp):Ge(re,1,be,!0),_.target!==J&&D(()=>J.focus({preventScroll:!0})))},[u,o,s,i,H,ye,ie,_e,cr,M,_t,Je,Ge,D]),Lt=oe(()=>{_e()},[_e]),ur=oe(_=>{let P=o.current,W=_.target;if(P===null)return;m.current=!0;let q=P.ownerDocument.getElementById(s),k=f.current;if(f.current=null,W===q){let on=b.current||he(_.relatedTarget)&&P.contains(_.relatedTarget)?"inside":"outside";Q(on==="inside"?{kind:"focusInComposite",from:on}:{kind:"focusInComposite",from:on,pressed:k===null?null:My(u.current.items,k),shown:O()});return}let N=$r(W,P),K=N===null?null:Oy(N),J=K===null?null:My(u.current.items,K);if(N===null||J===null||!he(W))return;Q({kind:"focusInControl",row:J}),E.current(),E.current=Ny(W,N,()=>j(null,"removal"));let re=i.current;if(re===null||q===null||!_s(W))return;let be=q.getBoundingClientRect(),qe=N.getBoundingClientRect(),Me=qe.height<=be.height?qe:rw(W.getBoundingClientRect(),zt),mr=Ty(Me,be),zn=re.getViewportSize();mr===0||!(zn>0&&be.height>0)||l.by(mr*zn/be.height)},[o,s,u,i,l,Q,O,j]),pr=oe(_=>{let P=o.current,W=_.relatedTarget,q=he(W)?P?.contains(W)?"view":"outside":"nowhere";q!=="view"&&Ye(),q==="outside"&&Ce()},[o,Ye,Ce]),Dt=oe(_=>{y.current={visibleStartIndex:_.visibleStartIndex,visibleEndIndex:_.visibleEndIndex},Q({kind:"rangeChanged",focusWithin:m.current,shown:O()})},[Q,O]),Nr=_y(()=>({onKeyDown:At,onKeyUp:Lt,onPointerDownCapture:Ye,onWheelCapture:Ye,onTouchStartCapture:Ye,onFocus:ur,onBlur:pr}),[At,Lt,Ye,ur,pr]);return{cursor:p,containerProps:Nr,handleRangeChange:Dt,selection:A,selectionStore:H,resolveSelectedIndex:I,rememberSelection:L,activateRow:Ee,focusViewRow:j,focusAfterRemoval:De}};import{jsx as Fs}from"react/jsx-runtime";var ce=(e,t)=>`${e}-${t}`,Hs=e=>ow(xp(),e),aw="data-daily-report-row-shell",Bs=Fs("div",{...ct,[aw]:"",className:"h-full w-full"}),sw=(e,t,r)=>r===Er?e.listRowPositionInUnknownTotal(t+1):e.listRowPosition(t+1,r),Vs=({id:e,whileTotalUnknownOnly:t})=>{let{labels:r}=$(),n=ks(Gr),o=ks(jr);return t&&o!==Er?null:Fs("span",{id:e,hidden:!0,children:sw(r,n,o)})},Us=({reportHubId:e,rowId:t,name:r,className:n,style:o,onMouseDown:a,frameRef:s,children:i})=>{let{active:l,selected:d}=ky(e),c=ks(Gr),p=ks(jr),u=r.kind==="card",y=u?(p===Er?[...r.describedBy,ce(t,"position")]:r.describedBy).join(" "):void 0;return Fs(Fl.Provider,{value:l,children:Fs("div",{ref:s,role:"row",id:t,[Fa]:e,"aria-rowindex":c+1,"aria-posinset":c+1,"aria-setsize":p,"aria-level":1,"aria-selected":d,[zd]:l?"":void 0,"aria-labelledby":u?ce(t,"name"):void 0,"aria-describedby":y,"aria-label":u?void 0:r.label,"aria-busy":!u&&r.isBusy?!0:void 0,className:n,style:o,onMouseDown:a,children:i})})};import ww from"lucide-react/dist/esm/icons/check.js";import xw from"lucide-react/dist/esm/icons/pencil.js";import Iw from"lucide-react/dist/esm/icons/trash-2.js";import{useContext as Uy,useMemo as Wy,useSyncExternalStore as Ky}from"react";import{jsx as Jr,jsxs as Vy}from"react/jsx-runtime";var iw="inline-grid whitespace-nowrap text-xs leading-4 tabular-nums text-slate-600 dark:text-slate-300",By="[grid-area:1/1]",lw=e=>{let t=0;for(let r=e;r!==0;r&=r-1)t+=1;return t},dw=({isEditing:e,descriptionId:t})=>{let{entry:r,tally:n,indicator:o}=Ao(),{labels:a}=$(),s=Ky(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:lw(r.matchedSets),p=r!==null&&!e&&(c===null||c>=1)&&s.entry===r&&s.isCurrent&&s.fields.length===0,u=l&&c!==null?a.searchMatchedKeywordsDescription(c,i):null,y=Wy(()=>Nl(s.fields,a),[s.fields,a]),m=[u,y,p?a.searchMatchOutsideViewDescription:null].filter(f=>f!==null&&f.length>0);return Vy("span",{className:iw,"data-daily-report-search-indicator":!0,children:[Jr("span",{"aria-hidden":"true",className:`invisible ${By}`,"data-daily-report-search-indicator-placeholder":!0,children:d}),Vy("span",{className:By,children:[u!==null&&c!==null?Jr("span",{"aria-hidden":"true",title:u,"data-daily-report-search-matched-keywords":`${c}/${i}`,children:a.searchMatchedKeywords(c,i)}):null,u!==null&&p?" ":null,p?Jr("span",{"aria-hidden":"true",title:a.searchMatchOutsideViewDescription,"data-daily-report-search-outside-view":!0,children:a.searchMatchOutsideView}):null,Jr("span",{id:t===null?void 0:t,className:$t,"data-daily-report-search-indicator-description":!0,children:m.join(" ")})]})]})},Ws=({isEditing:e,descriptionId:t})=>Uy(bt)===null?null:Jr(dw,{isEditing:e,descriptionId:t}),cw=({id:e})=>{let{tally:t}=Ao(),{labels:r}=$(),n=Ky(t.subscribe,t.getSnapshot,t.getSnapshot),o=Wy(()=>Nl(n.fields,r),[n.fields,r]);return Jr("span",{id:e,hidden:!0,"data-daily-report-search-match-description":!0,children:o})},zy=({id:e})=>Uy(bt)===null?null:Jr(cw,{id:e});import{jsx as $y}from"react/jsx-runtime";var zs=24,jy=2,uw=20,Ks=5,pw=3,mw=()=>{let e=Math.cos(2*Math.PI/Ks)/Math.cos(Math.PI/Ks),t=Array.from({length:2*Ks},(u,y)=>{let m=-Math.PI/2+y*Math.PI/Ks,f=y%2===0?1:e;return{x:f*Math.cos(m),y:f*Math.sin(m)}}),r=t.map(u=>u.x),n=t.map(u=>u.y),[o,a,s,i]=[Math.min(...r),Math.max(...r),Math.min(...n),Math.max(...n)],l=(uw-jy)/(a-o),d=zs/2-l*(o+a)/2,c=zs/2-l*(s+i)/2,p=u=>String(Number(u.toFixed(pw)));return t.map(u=>`${p(d+l*u.x)},${p(c+l*u.y)}`).join(" ")},fw=mw(),Mn=({filled:e})=>$y("svg",{viewBox:`0 0 ${zs} ${zs}`,"aria-hidden":"true",fill:"none",stroke:"currentColor",strokeWidth:jy,strokeLinejoin:"round",className:e?Pe.starOn:Pe.starOff,children:$y("polygon",{points:fw})});import{Fragment as hw,jsx as $s,jsxs as Rw}from"react/jsx-runtime";var yw=Ie(nc),Pn=({config:e,id:t})=>$s("span",{id:t,className:yw(e.badgeClassName),children:e.name===void 0?e.label:Rw(hw,{children:[$s("span",{"aria-hidden":"true",children:$s("abbr",{title:e.name,children:e.label})}),$s("span",{className:$t,children:e.name})]})});import{jsx as Gy}from"react/jsx-runtime";var js=24,bw=6,kn=()=>Gy("svg",{viewBox:`0 0 ${js} ${js}`,"aria-hidden":"true",className:Pe.read,children:Gy("circle",{cx:js/2,cy:js/2,r:bw,fill:"currentColor"})});import{jsx as gw}from"react/jsx-runtime";var Sw=/^(\d{4}-\d{2}-\d{2})(?:T(\d{2}:\d{2}):\d{2})?$/,en=({text:e})=>{let t=Sw.exec(e);if(t===null)return e;let[,r,n]=t;return gw("time",{dateTime:e,children:n===void 0?r:`${r} ${n}`})};import{Fragment as Dw,jsx as Oe,jsxs as dd}from"react/jsx-runtime";var Ew=Ie("m-0"),et=({label:e,classNames:t,valueId:r,children:n})=>dd("div",{className:t.field,children:[Oe("dt",{className:t.label,children:e}),Oe("dd",{id:r,className:Ew(t.value),children:n})]}),Tw="mt-2 font-semibold text-slate-600 text-xs uppercase tracking-wide first:mt-0 dark:text-slate-400",Aw="m-0 mt-1 text-slate-700 text-sm dark:text-slate-200",Ir=({label:e,children:t})=>dd(Dw,{children:[Oe("dt",{className:Tw,children:e}),Oe("dd",{className:Aw,children:t})]}),Yy=({report:e,visitTimeDisplay:t,labels:r})=>{let n=Rr(e.category),o=Rr(e.creationCategory);return dd("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:[Oe(Ir,{label:r.author,children:Oe(se,{fieldKey:le.field("author"),raw:e.author,display:ke(e.author)})}),Oe(Ir,{label:r.createdAt,children:Oe(en,{text:Se(e.createdAt)})}),Oe(Ir,{label:r.updatedBy,children:Oe(se,{fieldKey:le.field("updatedBy"),raw:e.updatedBy,display:ke(e.updatedBy)})}),Oe(Ir,{label:r.updatedAt,children:Oe(en,{text:Se(e.updatedAt)})}),Oe(Ir,{label:r.businessDate,children:Oe(en,{text:Se(e.date)})}),t!==null&&Oe(Ir,{label:r.visitTime,children:t}),n.text.length>0&&Oe(Ir,{label:r.category,children:Oe(se,{fieldKey:le.field("category"),raw:e.category,display:n})}),o.text.length>0&&Oe(Ir,{label:r.creationCategory,children:Oe(se,{fieldKey:le.field("creationCategory"),raw:e.creationCategory,display:o})})]})};import{jsx as de,jsxs as Xy}from"react/jsx-runtime";var Gs={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:""},vw={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:""},qy={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:""},Zy=({report:e,isRead:t,isStarred:r,isMine:n,onToggleRead:o,onToggleStar:a,onEdit:s,editButtonRef:i,onDelete:l,sourceConfig:d,visitTimeDisplay:c,markerIds:p,labels:u})=>{let y=r?u.starRemove:u.starAdd,m=t?u.markUnread:u.markRead,f=Rr(e.category),b=Rr(e.creationCategory);return Xy("div",{className:"flex flex-wrap items-center gap-2 font-medium text-slate-600 text-xs dark:text-slate-300",children:[de(jn,{id:p.attachments,count:e.attachments.length,label:u.attachments}),d?de(Pn,{id:p.source,config:d}):null,de(Ue,{render:R=>de("button",{type:"button",onClick:a,tabIndex:R,className:We,title:y,"aria-label":y,"data-detail-star-button":e.reportHubId,children:de(Mn,{filled:r})})}),de(Ue,{render:R=>de("button",{type:"button",onClick:o,tabIndex:R,className:We,title:m,"aria-label":m,"data-detail-read-button":e.reportHubId,children:t?de(ww,{className:Pe.read}):de(kn,{})})}),s&&de(Ue,{render:R=>de("button",{ref:i,type:"button",onClick:s,tabIndex:R,"data-detail-edit-button":e.reportHubId,className:We,title:u.edit,"aria-label":u.edit,children:de(xw,{className:Pe.edit})})}),n&&de(Ue,{render:R=>de("button",{type:"button",onClick:l,tabIndex:R,"data-detail-delete-button":e.reportHubId,className:We,title:u.deleteReport,"aria-label":u.deleteReport,children:de(Iw,{className:Pe.delete})})}),Xy("dl",{className:"m-0 flex flex-wrap items-center gap-2",children:[de(et,{label:u.id,classNames:vw,children:e.reportHubId}),de(et,{label:u.businessDate,classNames:Gs,children:de(en,{text:Se(e.date)})}),de(et,{label:u.author,classNames:Gs,children:de(se,{fieldKey:le.field("employeeName"),raw:e.employeeName,display:ke(e.employeeName)})}),de(et,{label:u.visitTime,classNames:Gs,children:br(c)}),de(et,{label:u.updatedAt,classNames:Gs,children:de(en,{text:Se(e.updatedAt)})}),f.text.length>0&&de(et,{label:u.category,classNames:qy,children:de(se,{fieldKey:le.field("category"),raw:e.category,display:f})}),b.text.length>0&&de(et,{label:u.creationCategory,classNames:qy,children:de(se,{fieldKey:le.field("creationCategory"),raw:e.creationCategory,display:b})})]}),de(Ws,{isEditing:!1,descriptionId:p.searchMatch})]})};import{useLayoutEffect as Qy,useRef as Jy}from"react";import{jsx as Lw}from"react/jsx-runtime";var Cw=x(hr,Yo,qo,Go,"h-full"),_w=(e,t,r)=>{let n=t(e),o=e===null?null:r(e);return{body:e,declareBody:t,observeRowHeight:r,release:()=>{o!==null&&o(),n()}}},eh=({itemId:e,rowId:t,name:r,bodyReady:n,observeRowHeight:o,children:a})=>{let s=Jy(null),i=Ip(e),l=Jy(null);return Qy(()=>{let d=s.current,c=d===null||!n?null:d.firstElementChild,p=c instanceof HTMLElement?c:null,u=l.current;u!==null&&u.body===p&&u.declareBody===i&&u.observeRowHeight===o||(u!==null&&u.release(),l.current=_w(p,i,o))}),Qy(()=>()=>{l.current?.release(),l.current=null},[]),Lw(Us,{reportHubId:e,rowId:t,name:r,className:Cw,frameRef:s,children:n?a:Bs})};import{jsx as X,jsxs as je}from"react/jsx-runtime";var Ow=x("flex w-full flex-col gap-4",Nt,Qo,yr),Mw=x(Nt,yr),Pw=x("rounded-2xl",yr),kw=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",yr),$e="bg-slate-200 dark:bg-slate-700",Fw=x("whitespace-pre-wrap",Zo),Hw=x(Ke,"bg-slate-100 text-slate-600 text-xs dark:bg-slate-800 dark:text-slate-300"),Bw=({interviewer:e,index:t,template:r})=>{let n=Lo(()=>ke(e.name),[e.name]),o=X(se,{fieldKey:le.interviewer(t,"name"),raw:e.name,display:n},"name"),a=e.affiliation;if(!a?.trim())return o;let s=Jm(r,n.text,a);return s===null?r(n.text,a):s.map(i=>i.kind==="text"?i.text:i.kind==="name"?o:X(se,{fieldKey:le.interviewer(t,"affiliation"),raw:a,display:pt(a)},"affiliation"))},Vw=e=>({heading:ce(e,"name"),state:ce(e,"state"),attachments:ce(e,"attachments"),source:ce(e,"source"),searchMatch:ce(e,"match")}),Uw=je("div",{...ct,className:Mw,children:[je("div",{className:"mb-4 flex flex-wrap gap-2",children:[X("div",{className:x("h-6 w-20 rounded-full",$e)}),X("div",{className:x("h-6 w-24 rounded-full",$e)}),X("div",{className:x("h-6 w-24 rounded-full",$e)}),X("div",{className:x("h-6 w-28 rounded-full",$e)})]}),je("div",{className:"mb-4 grid gap-4 md:grid-cols-[minmax(0,1fr)_240px]",children:[je("div",{className:"space-y-4",children:[X("div",{className:x("h-5 w-40 rounded",$e)}),X("div",{className:x("h-5 w-56 rounded",$e)}),X("div",{className:x("h-24 rounded-xl",$e)})]}),je("div",{className:"rounded-xl bg-slate-100 p-3 dark:bg-slate-800/60",children:[X("div",{className:x("mb-2 h-4 w-24 rounded",$e)}),X("div",{className:x("mb-2 h-4 w-28 rounded",$e)}),X("div",{className:x("h-4 w-32 rounded",$e)})]})]}),je("div",{className:"space-y-4",children:[X("div",{className:x("h-4 w-24 rounded",$e)}),je("div",{className:"flex flex-wrap gap-2",children:[X("div",{className:x("h-6 w-16 rounded-full",$e)}),X("div",{className:x("h-6 w-16 rounded-full",$e)}),X("div",{className:x("h-6 w-16 rounded-full",$e)})]}),je("div",{className:"space-y-2",children:[X("div",{className:x("h-16 rounded-xl",$e)}),X("div",{className:x("h-16 rounded-xl",$e)})]})]})]}),Ww=()=>Uw,Kw=({item:e,observeRowHeight:t,onCommentAdded:r,userId:n})=>{let{report:o,error:a,isLoading:s,isRefetching:i}=Vr(e.reportHubId,e.businessDate),{bodyReady:l,rendered:d}=Wa(e.reportHubId,o,"measured"),c=Hs(e.reportHubId),p=Fm(),{removeStaleItem:u}=ze(),{sourceTypeConfigs:y}=$(),m=Tr(),f=cs(e.reportHubId),b=f==="editing"||f==="automatic",R=Ys(!1),E=Ys(!1),h=Ys(!1);th(()=>{if(i){h.current=!0;return}!(o||s||a)&&h.current&&e.reportHubId>0&&u(e.reportHubId)},[o,s,i,a,e.reportHubId,u]);let S=o?.isDraft===!0,g=n&&o?.userId===n,T=n&&d?.userId===n,w=Ys(o);rh(()=>{w.current=o});let C=tn(()=>{let F=w.current;F!==null&&(R.current=!0,m.open(e.reportHubId,Nn(F),!1))},[m,e.reportHubId]),H=tn(()=>{E.current=!0,m.dismiss(e.reportHubId)},[m,e.reportHubId]),U=tn(()=>{E.current=!0,m.discard(e.reportHubId)},[m,e.reportHubId]),B=tn(F=>{F===null||!R.current||(R.current=!1,F.focus())},[]),A=tn(F=>{F===null||!E.current||(E.current=!1,F.focus())},[]);rh(()=>{b||(E.current=!1)},[b]),th(()=>{o!==null&&(g&&S&&f==="display"?m.open(e.reportHubId,Nn(o),!0):!S&&f==="automatic"&&m.discard(e.reportHubId))},[o,g,S,f,m,e.reportHubId]);let v=tn(()=>p(e.reportHubId,"removal"),[p,e.reportHubId]),I=d!==null&&d.attachments.length>0,L=Nw(bt)!==null,M=d===null?void 0:Zt(d.sourceType,y),O=d===null&&(s||o!==null),D=Se(e.businessDate),V=l?!a&&d!==null&&!b?{kind:"card",describedBy:[ce(c,"state"),...I?[ce(c,"attachments")]:[],...M!==void 0?[ce(c,"source")]:[],...L?[ce(c,"match")]:[]]}:{kind:"label",label:D,isBusy:!a&&O}:{kind:"label",label:D,isBusy:!0};return X(eh,{itemId:e.reportHubId,rowId:c,name:V,bodyReady:l,observeRowHeight:t,children:a?X(zw,{itemId:e.reportHubId}):d?b?X("div",{...ct,className:Pw,children:X(Cs,{report:d,onCancel:H,onPublishSuccess:U,titleInputRef:B})}):X(ah,{item:e,report:d,sourceConfig:M,rowId:c,onCommentAdded:r,userId:n,onEdit:T?C:void 0,editButtonRef:A,onCommentSectionRemoved:v}):X(Ww,{})})},oh=nh(Kw),ah=nh(({item:e,report:t,sourceConfig:r,rowId:n,onCommentAdded:o,userId:a,onEdit:s,editButtonRef:i,onCommentSectionRemoved:l})=>{let{toggleStar:d,toggleRead:c,pendingStarUpdates:p,pendingReadUpdates:u,deleteReport:y}=ze(),{labels:m,headingLevel:f}=$(),b=Ar[f],R=ya(t.sourceType,r),E=Vw(n),h=tn(()=>o?.(e.reportHubId),[o,e.reportHubId]),S=p.current.get(t.reportHubId),g=S===void 0?t.isStarred:S,T=u.current.get(t.reportHubId),w=T===void 0?t.isRead:T,C=!!(a&&t.userId===a),H=async()=>{try{await c(t.reportHubId,!w,t.date)}catch{}},U=async()=>{try{await d(t.reportHubId,!g,t.date)}catch{}},B=async()=>{if(confirm(m.confirmDelete))try{await y(t.reportHubId,t.date)}catch{}},A=Lo(()=>kc(t.content??null),[t.content]),v=Lo(()=>ke(t.customerName),[t.customerName]),I=Lo(()=>ke(t.subject),[t.subject]),L=Lo(()=>{let M=t.visitTimeFrom?.trim(),O=t.visitTimeTo?.trim();return M&&O?`${M} - ${O}`:M||O||null},[t.visitTimeFrom,t.visitTimeTo]);return X("div",{...ct,"aria-labelledby":E.heading,onDoubleClick:s,className:Ow,children:je(Cn,{reportHubId:e.reportHubId,children:[X(it,{level:f,id:E.heading,tabIndex:-1,...Ba,className:$t,children:`${Se(t.date)} ${br(t.employeeName)} ${br(t.subject)}`}),X("span",{id:E.state,className:$t,children:m.rowState({isRead:w,isStarred:g})}),X(Vs,{id:ce(n,"position"),whileTotalUnknownOnly:!0}),X(Zy,{report:t,sourceConfig:r,isRead:w,isStarred:g,isMine:C,onToggleRead:H,onToggleStar:U,onEdit:s,editButtonRef:i,onDelete:B,visitTimeDisplay:L,markerIds:E,labels:m}),je("div",{className:"grid gap-4 md:grid-cols-[minmax(0,1fr)_240px]",children:[je("div",{className:"flex flex-col gap-4",children:[je("div",{className:"grid gap-4 sm:grid-cols-2",children:[je("div",{className:"flex flex-col gap-1",children:[X(it,{level:b,className:Gt,children:m.customer}),X("span",{className:"font-semibold text-base text-slate-900 dark:text-slate-100",children:X(se,{fieldKey:le.field("customerName"),raw:t.customerName,display:v})})]}),je("div",{className:"flex flex-col gap-1",children:[X(it,{level:b,className:Gt,children:m.subject}),X("span",{className:"text-slate-700 text-sm dark:text-slate-200",children:X(se,{fieldKey:le.field("subject"),raw:t.subject,display:I})})]})]}),A.text.length>0&&je("div",{className:"flex flex-col gap-2",children:[X(it,{level:b,className:Gt,children:m.content}),X("div",{className:Fw,children:X(se,{fieldKey:le.field("content"),raw:t.content,display:A})})]}),t.interviewers.length>0&&je("div",{className:"flex flex-col gap-2",children:[X(it,{level:b,className:Gt,children:m.interviewers}),X("ul",{className:"flex flex-wrap gap-2",children:t.interviewers.map((M,O)=>X("li",{className:Hw,children:X(Bw,{interviewer:M,index:O,template:m.interviewerWithAffiliation})},JSON.stringify([M.name,M.affiliation])))})]}),X(As,{attachments:t.attachments}),X(vo,{report:t,userId:a,canComment:R,onCommentAdded:h,onSectionRemoved:l,formPlacement:"after-section"})]}),X(Yy,{report:t,visitTimeDisplay:L,labels:m})]})]})})});ah.displayName="DailyReportResolvedItem";var zw=({itemId:e})=>{let{labels:t}=$();return X("div",{...ct,className:kw,children:X("p",{children:t.reportLoadFailed(e)})})};import{VirtualScroll as tx,virtualScrollItemElementId as rx}from"@aiquants/virtualscroll";import{useCallback as mh,useId as fh,useMemo as pd,useRef as nx,useState as ox}from"react";import{createContext as $w,useContext as jw,useLayoutEffect as Gw}from"react";var sh=()=>{let e=!1;return{request:()=>{e=!0},isPending:()=>e,take:()=>{let t=e;return e=!1,t}}},cd=$w(null),ih=(e,t)=>{let r=jw(cd);Gw(()=>{r===null||!r.isPending()||e.current===null||(r.take(),t(null,"handOver"))})};import{useCallback as lh,useLayoutEffect as dh,useMemo as ch,useRef as ud}from"react";var Yw=(e,t,r,n)=>{for(let o=r;o<=n;o++){let a=me(e,o);if(a===void 0||a.reportHubId!==me(t,o)?.reportHubId)return!0}return!1},qw=(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}},Xw=(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}},Zw=(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"?qw(e.index,a,n.rowHeight,r.length):Xw(e.index,a,Os(n),r.length);return{reportHubId:Ft(r,s).reportHubId,index:s,offsetPx:i,lastVisibleIndex:Ps({index:s,offsetPx:i},o,r.length,n),recordedAt:t}},Qw=(e,t,r)=>{for(let n=r.index+1;n<=r.lastVisibleIndex&&n<e.length;n++){let o=fe(t,Ft(e,n).reportHubId,n-1);if(o!==-1)return o}return-1},uh=({items:e,handleRef:t,rowSizing:r,isRevealPending:n})=>{let o=ud(null),a=ud(e),s=ud(r),i=lh(()=>{let c=t.current,p=c===null?-1:c.getScrollPosition(),u=c===null||!(p>0)?null:c.getScrollAnchor(),y=a.current,m=u===null?void 0:me(y,u.index),f=c===null?0:c.getViewportSize();o.current=u===null||m===void 0||!(f>0)?null:{reportHubId:m.reportHubId,index:u.index,offsetPx:u.offsetPx,lastVisibleIndex:Ps(u,f,y.length,s.current),recordedAt:p}},[t]),l=ch(()=>({toIndex:(c,p)=>{let u=t.current;u!==null&&(u.scrollToIndex(c,p),i())},by:c=>{let p=t.current;p!==null&&(p.scrollBy(c),i())},resizeRow:(c,p)=>{let u=t.current;u!==null&&(u.updateItemSize(c,p),i())}}),[t,i]);dh(()=>{let c=a.current;a.current=e;let p=o.current,u=t.current;if(c===e||p===null||u===null||n())return;let y=Zw(p,u.getScrollPosition(),c,s.current,u.getViewportSize());if(y===null){o.current=null;return}let m=fe(e,y.reportHubId,y.index),f=m===-1?Qw(c,e,y):m;if(f===-1){o.current=null;return}if(f===y.index&&!Yw(c,e,y.index,y.lastVisibleIndex)){o.current=y;return}u.scrollToIndex(f,{align:"top",offset:-y.offsetPx}),o.current={reportHubId:Ft(e,f).reportHubId,index:f,offsetPx:y.offsetPx,lastVisibleIndex:Ps({index:f,offsetPx:y.offsetPx},u.getViewportSize(),e.length,r),recordedAt:u.getScrollPosition()}},[e,t,r,n]),dh(()=>{s.current=r},[r]);let d=lh(c=>{if(c.cause!=="clamp"){i();return}let p=o.current;p!==null&&(o.current={...p,recordedAt:p.recordedAt+c.delta})},[i]);return ch(()=>({handleRangeChange:i,handleScrollAdjust:d,scroller:l}),[i,d,l])};import{useCallback as Jw}from"react";var ex=20,ph=({hostTestId:e,scrollContainerRef:t,handleRef:r,scroller:n,itemsRef:o})=>Jw(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=>Rt(o.current,l),getReportItem:l=>me(o.current,l),getReportIds:(l=ex)=>lp(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 No}from"react/jsx-runtime";var ax=Object.freeze({skipFar:!0}),qs=({containerRef:e,testId:t,itemsRef:r,rowSetSize:n,isViewRevealPending:o,onRangeChange:a,...s})=>{let i=nx(null),l=mh(B=>(i.current=B,()=>{i.current=null}),[]),{labels:d}=$(),c=fh(),{handleRangeChange:p,handleScrollAdjust:u,scroller:y}=uh({items:s.items,handleRef:i,rowSizing:s.rowSizing,isRevealPending:o}),{handleRangeChange:m,...f}=Hy({...s,containerRef:e,handleRef:i,scroller:y,gridId:c}),{cursor:b,selectionStore:R,focusViewRow:E}=f,[h]=ox(()=>wp({gridId:c,isHolding:()=>R.isHeld(),subscribeHold:B=>R.subscribeHold(B),holdKeys:()=>R.holdKeys(),activeIndex:()=>{let B=b.getActiveId(),A=B===null?-1:fe(r.current,B,b.getActiveIndexHint());return A===-1?null:A},indexOf:B=>{let A=e.current,v=A===null?null:A.ownerDocument.getElementById(rx(c,B)),I=v===null?null:gr(v),L=fe(r.current,B,I===null?null:I-1);return L===-1?null:L}})),S=ph({hostTestId:t,scrollContainerRef:e,handleRef:i,scroller:y,itemsRef:r});ih(e,E);let g=fh(),T=s.onSelect!==null,w=mh(B=>{m(B),p(),a(B)},[m,p,a]),C=pd(()=>({role:Qi,id:c,tabIndex:0,"aria-label":d.title,"aria-describedby":T?g:void 0,"aria-rowcount":n}),[c,d.title,T,g,n]),H=pd(()=>T?No("span",{id:g,className:"sr-only",children:d.listKeyboardHelp}):null,[T,g,d.listKeyboardHelp]),U=pd(()=>({cursor:b,rowPass:h,focusViewRow:E}),[b,h,E]);return{...f,handleRangeChange:w,handleScrollAdjust:u,attachVirtualScroll:l,handleRef:i,scroller:y,attachScrollContainer:S,contentProps:C,keyboardHelp:H,rowPass:h,rowScope:U}},Xs=({rowScope:e,items:t,...r})=>{let n=Fy(e.cursor,t);return No(ld.Provider,{value:e.cursor,children:No(Ua.Provider,{value:e.rowPass,children:No(Dl.Provider,{value:e.focusViewRow,children:No(tx,{...r,activeItemIndex:n,activeItemVisibleInset:$d,itemZones:ax})})})})};import{Fragment as px,jsx as Kt,jsxs as ux}from"react/jsx-runtime";var Rh={pointerDragInputs:Aa,wheelSpeedMultiplier:Ra,inertiaOptions:gn(!1),enableKeyboardNavigation:!1},sx={...Rh,inertiaOptions:gn(!0)},hh="daily-report-detail-list",ix=x("relative w-full",aa,oa,sa),lx=x(ut,"relative"),dx=300,fd=e=>{let t=tt(null),[r,n]=Zs(null),o=Na(t),a=En(r),s=He(i=>(t.current=i,n(i),()=>{t.current=null,n(null)}),[]);return Kt("div",{ref:s,className:ta,children:Kt("div",{className:ra,children:o===null?null:Kt(cx,{...e,viewportHeight:o,reducedMotion:a})})})},cx=({dailyReportItems:e,rowSetSize:t,userId:r,selectedItemId:n,onSelectItem:o,scrollRestoreRef:a,viewportHeight:s,reducedMotion:i})=>{let[{initialScrollAnchor:l,restored:d}]=Zs(()=>{let k=a?.current;if(!k||k.anchorReportHubId!==(n??null))return{initialScrollAnchor:void 0,restored:!1};if(!k.topItem)return{initialScrollAnchor:void 0,restored:!0};let N=Rt(e,k.topItem.reportHubId);return N!==-1?{initialScrollAnchor:{index:N,offsetPx:k.topItem.offsetPx},restored:!0}:{initialScrollAnchor:{index:k.topItem.index,offsetPx:0},restored:!0}}),c=tt(d),p=tt(n??null),u=Be(()=>a?.current.measuredHeights??new Map),y=tt(null),m=Ca(),f=Vi(),[b]=Zs(Ka),R=tt(null),E=tt(null),h=tt(e),S=tt(o);yh(()=>{h.current=e,S.current=o},[e,o]);let g=tt(null),[T,w]=Zs(0),C=tt(null),H=e.length,U=t===void 0?H:t,B=He(k=>{let N=me(e,k);return N===void 0?Sa:N},[e]),A=He(k=>{let N=u.current.get(B(k).reportHubId);return N===void 0?Cu:N},[u,B]),v=He(k=>ka(e,k),[e]),I=md(()=>({kind:"measured",heightOf:A}),[A]),L=He((k,N)=>{g.current={reportHubId:k,index:N},w(K=>K+1),S.current?.(k)},[]),M=He((k,N)=>{if(H===0)return;let K=Math.max(0,k),J=Math.min(H-1,N);if(K>J)return;let re=new Set;for(let be=K;be<=J;be++){let qe=B(be);if(qe.businessDate&&re.add(qe.businessDate),re.size>=xu)break}re.forEach(be=>{f(be)})},[B,H,f]),O=tt(null),D=He(()=>O.current,[]),V=He(k=>{if(H===0)return;let{renderingStartIndex:N,renderingEndIndex:K,visibleStartIndex:J}=k,re=B(J);re.reportHubId>0&&(O.current=re.reportHubId),re.businessDate&&b.setLabel(Se(re.businessDate)),M(N,K),M(K+1,K+ba),M(N-ba,N-1)},[B,H,M,b]),F=He(()=>C.current!==null,[]),{containerProps:z,handleRangeChange:j,handleScrollAdjust:Q,attachVirtualScroll:Ce,handleRef:Ee,scroller:De,attachScrollContainer:Ge,contentProps:Je,keyboardHelp:nt,resolveSelectedIndex:Y,activateRow:Ae,rowPass:ie,rowScope:ye}=qs({items:e,selectedId:n??null,onSelect:o===void 0?null:L,onActivate:L,containerRef:y,rootRef:y,testId:hh,itemsRef:h,rowSetSize:U,rowSizing:I,arrowAlign:"top",isViewRevealPending:F,onRangeChange:V});$a({items:e,scroller:De,readTopReportId:D});let _e=He((k,N)=>{if(Ee.current===null)return!1;let K=h.current,J=N!==null&&N.reportHubId===k?fe(K,k,N.index):Y(K,k);return J===-1?!1:(c.current&&(c.current=!1,k===p.current)||N!==null&&N.reportHubId===k&&N.index===J||De.toIndex(J,{align:"top"}),!0)},[Ee,Y,De]);vr(()=>{let k=g.current;g.current=null,C.current=null,n!=null&&(_e(n,k)||(C.current=n))},[n,_e]),vr(()=>{let k=C.current;k!==null&&_e(k,null)&&(C.current=null)},[e,_e]),vr(()=>{let k=a?.current;k&&(k.anchorReportHubId=n??null)},[n,a]),vr(()=>{g.current=null},[T]);let Ye=tt(null),cr=He(()=>{Ee.current&&(Ye.current=Ee.current);let k=a?.current,N=Ye.current;if(k&&N){let J=N.getScrollAnchor(),re=J===null?void 0:me(h.current,J.index);J&&re&&(k.topItem={reportHubId:re.reportHubId,index:J.index,offsetPx:J.offsetPx})}let K=y.current;K&&(K.toggleAttribute(an,!0),E.current&&clearTimeout(E.current),E.current=setTimeout(()=>{K.toggleAttribute(an,!1),E.current=null},150))},[Ee,a]),_t=He(k=>Kt(za,{...k,store:b}),[b]);vr(()=>{let k=y.current;if(!k)return;let N=()=>{b.setWheelScrollActive(!0),R.current&&clearTimeout(R.current),R.current=window.setTimeout(()=>{b.setWheelScrollActive(!1),R.current=null},ga)};return k.addEventListener("wheel",N,{passive:!0}),()=>{k.removeEventListener("wheel",N),R.current&&clearTimeout(R.current)}},[b]);let At=tt(null),Lt=He(k=>{for(let N of k){ie.measured(N.target);let K=N.target.parentElement,J=K===null?null:mo(K),re=K===null?null:gr(K),be=N.borderBoxSize[0];if(J===null||re===null||be===void 0)continue;let qe=be.blockSize+2*zt;if(u.current.get(J)===qe)continue;let Me=fe(h.current,J,re-1);Me!==-1&&(u.current.set(J,qe),De.resizeRow(Me,qe))}},[u,De,ie]),ur=He(k=>{At.current===null&&(At.current=new ResizeObserver(Lt));let N=At.current;return N.observe(k),()=>N.unobserve(k)},[Lt]),pr=He(k=>{At.current?.observe(k)},[]);vr(()=>()=>{At.current?.disconnect(),At.current=null},[]),yh(()=>{let k=y.current;if(k!==null)return ie.attach(Ne(k),pr)},[ie,pr]),vr(()=>{H!==0&&M(0,Math.min(H-1,ba))},[H,M]);let Dt=tt(null),Nr=He(k=>{let N=fe(h.current,k,null);N!==-1&&(Dt.current!==null&&clearTimeout(Dt.current),Dt.current=setTimeout(()=>{Dt.current=null;let K=fe(h.current,k,N);K!==-1&&De.toIndex(K,{align:"bottom"})},dx))},[De]);vr(()=>()=>{Dt.current!==null&&clearTimeout(Dt.current)},[]);let _=He(k=>{if(!S.current)return;let N=$r(k.target,y.current);if(N===null||bp(k.target,N))return;let K=Rp(N,h.current);K!==null&&(Ae(K.reportHubId,K.index),L(K.reportHubId,K.index))},[L,Ae]),P=He((k,N)=>Kt(Gr.Provider,{value:N,children:Kt(yo.Provider,{value:k.reportHubId,children:Kt(oh,{item:k,observeRowHeight:ur,onCommentAdded:Nr,userId:r})})},k.reportHubId),[ur,Nr,r]),W=md(()=>({...Ta,renderThumbOverlay:_t}),[_t]),q=md(()=>Kt(jr.Provider,{value:U,children:Kt(Xs,{ref:Ce,rowScope:ye,items:e,itemCount:H,getItem:B,getItemKey:v,getItemHeight:A,viewportSize:s,initialScrollAnchor:l,overscanCount:Ea,scrollBarOptions:W,behaviorOptions:i?sx:Rh,onRangeChange:j,onScrollAdjust:Q,onScroll:cr,testId:hh,className:ix,locale:m.locale,labels:m.labels,contentProps:Je,children:P})}),[Ce,ye,e,U,H,B,v,A,s,i,l,W,j,Q,cr,m.locale,m.labels,Je,P]);return Kt(px,{children:ux("div",{ref:Ge,className:lx,...Va,...z,onClick:_,children:[nt,q]})})};import gh from"lucide-react/dist/esm/icons/refresh-cw.js";import{createContext as hx,memo as Rx,useContext as bx,useLayoutEffect as Sx,useRef as gx}from"react";import{jsx as yd,jsxs as mx}from"react/jsx-runtime";var Qs=e=>10**String(e).length-1,Oo=({text:e,widestTexts:t,ref:r})=>mx("span",{ref:r,className:Sc,children:[yd("span",{"aria-hidden":"true",className:na,children:[...new Set(t)].map(n=>yd("span",{className:Or,children:n},n))}),yd("span",{className:gc,children:e})]});import{useLayoutEffect as fx,useState as bh}from"react";import{jsx as Sh,jsxs as yx}from"react/jsx-runtime";var hd=Object.freeze({status:"",alert:""}),Js=({announcement:e,testId:t})=>{let[r]=bh(e),[n,o]=bh(!1),a=n||e.status!==r.status||e.alert!==r.alert;fx(()=>{a&&!n&&o(!0)},[a,n]);let{status:s,alert:i}=a?e:hd;return yx("span",{"data-testid":t,className:"sr-only",children:[Sh("span",{role:"status",children:s}),Sh("span",{role:"alert",children:i})]})};import{Fragment as Ox,jsx as rt,jsxs as Tt}from"react/jsx-runtime";var bd=hx(!0),Ex="daily-report-ids-stream-status-announcer",Tx="inline-grid whitespace-nowrap text-start",Ah="col-start-1 row-start-1",Ax=`${na} ${Ah}`,Dx=`${Ah} flex justify-self-start rounded-full empty:not-focus:invisible ${ee}`,Dh=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"),Rd="size-2 rounded-full bg-blue-500 dark:bg-blue-400",wh=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"),xh=x(Ke,"gap-1 bg-rose-100 font-medium text-rose-800 text-xs dark:bg-rose-900/40 dark:text-rose-300"),Ih=x(Ke,"gap-1 bg-slate-100 font-medium text-slate-700 text-xs dark:bg-slate-800/40 dark:text-slate-300"),vh=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",ee),Eh="size-3",Th=`${Dh} ${Or}`,wx=`${wh} ${Or}`,xx=`${xh} ${Or}`,Ix=`${Ih} ${Or}`,Ch=(e,t)=>Qs(t===null?e:Math.max(e,t)),vx=(e,t,r)=>{let n=Ch(t,r);return r===null||r===0?{text:e.streamProgressCount(t),widestText:e.streamProgressCount(n)}:{text:e.streamProgressRatio(t,r,Math.min(100,Math.round(t/r*100))),widestText:e.streamProgressRatio(n,n,100)}},Cx=({labels:e,loadedCount:t,totalCount:r})=>{let{text:n,widestText:o}=vx(e,t,r);return Tt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"streaming",className:Dh,children:[rt("span",{"aria-hidden":"true",className:Rd}),rt(Oo,{text:n,widestTexts:[o]})]})},_x=(e,t,r)=>e.phase==="streaming"?rt(Cx,{labels:t,loadedCount:e.loadedCount,totalCount:e.totalCount}):e.phase==="retrying"?Tt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"retrying",className:wh,children:[rt(gh,{"aria-hidden":"true",className:"size-3 motion-safe:animate-spin"}),t.streamRetrying(e.loadedCount)]}):e.phase==="failed"?Tt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"failed",className:xh,children:[t.streamFailed,rt("button",{type:"button","data-testid":"daily-report-ids-stream-retry",onClick:r,className:vh,children:t.streamRetry})]}):e.isRevalidating?Tt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"revalidating",className:Ih,children:[rt(gh,{"aria-hidden":"true",className:"size-3 motion-safe:animate-spin"}),t.streamRevalidating]}):null,Lx=Rx(({labels:e,widest:t})=>Tt("span",{"aria-hidden":"true",className:Ax,children:[Tt("span",{className:Th,children:[rt("span",{className:Rd}),e.streamProgressCount(t)]}),Tt("span",{className:Th,children:[rt("span",{className:Rd}),e.streamProgressRatio(t,t,100)]}),Tt("span",{className:wx,children:[rt("span",{className:Eh}),e.streamRetrying(t)]}),Tt("span",{className:xx,children:[e.streamFailed,rt("span",{className:vh,children:e.streamRetry})]}),Tt("span",{className:Ix,children:[rt("span",{className:Eh}),e.streamRevalidating]})]})),Sd=(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:""}:hd,Nx=(e,t)=>Sd({phase:e.phase,hasItems:!0,retryingCount:e.phase==="retrying"?e.loadedCount:null},t),Mo=()=>{let e=am(),{labels:t}=$(),r=bx(bd),n=gx(null),a=_x(e,t,()=>{rr([n.current]),os()}),s=a===null;return Sx(()=>{let i=n.current;!s||i===null||!i.contains(Ve(i))||rr(ms(i.ownerDocument))},[s]),Tt(Ox,{children:[Tt("span",{className:Tx,children:[rt(Lx,{labels:t,widest:Ch(e.loadedCount,e.totalCount)}),rt("span",{ref:n,tabIndex:-1,"data-daily-report-stream-status":"",className:Dx,children:a})]}),r?rt(Js,{announcement:Nx(e,t),testId:Ex}):null]})};import{Panel as Zh,PanelGroup as tv,PanelResizeHandle as rv}from"@aiquants/resize-panels";import{useCallback as dt,useEffect as ai,useLayoutEffect as Uo,useMemo as _d,useRef as _r,useState as ii}from"react";import{useSyncExternalStore as Mx}from"react";var _h="(max-width: 639px)",Px=()=>{},kx=e=>{if(typeof window>"u"||typeof window.matchMedia!="function")return Px;let t=window.matchMedia(_h);return t.addEventListener("change",e),()=>t.removeEventListener("change",e)},Fx=()=>typeof window<"u"&&typeof window.matchMedia=="function"?window.matchMedia(_h).matches:!1,Hx=()=>!1,Lh=()=>Mx(kx,Fx,Hx);import{SwipeCloseGuardContext as cI,useOverlayEscapeStack as uI,useSwipeGuardState as pI,useSwipeToDismissOverlay as mI,useTapClick as fI,useTransitionDisplay as yI}from"@aiquants/swipe-overlay";import{useCallback as ri,useEffect as Bn,useId as xd,useLayoutEffect as Id,useRef as vt,useState as ni}from"react";import{useMemo as Bx}from"react";var Po=(e,t)=>{let{id:r,indexHint:n}=t;return Bx(()=>{if(r===null)return null;let o=fe(e,r,n);return o===-1?null:Ft(e,o)},[e,r,n])};import Vx from"lucide-react/dist/esm/icons/check.js";import Ux from"lucide-react/dist/esm/icons/pencil.js";import Wx from"lucide-react/dist/esm/icons/trash-2.js";import{memo as Kx,useCallback as rn,useDeferredValue as zx,useEffect as Td,useId as Mh,useLayoutEffect as Ad,useMemo as Vo,useRef as Bo,useState as Ph,useSyncExternalStore as $x}from"react";import*as ir from"@radix-ui/react-tabs";import*as lt from"react";import{jsx as Fn}from"react/jsx-runtime";var Nh=lt.createContext(null),Oh=e=>{let t=lt.useContext(Nh);if(t===null)throw new Error(`[daily-report] ${e} must be rendered inside Tabs`);return t},gd=(e,t)=>`${e}-trigger-${t}`,Ed=(e,t)=>`${e}-panel-${t}`,ko=lt.forwardRef(({value:e,children:t,...r},n)=>{let o=lt.useId(),a=lt.useMemo(()=>({baseId:o,value:e}),[o,e]);return Fn(ir.Root,{ref:n,value:e,...r,children:Fn(Nh,{value:a,children:t})})});ko.displayName=ir.Root.displayName;var Fo=lt.forwardRef(({className:e,...t},r)=>Fn(ir.List,{ref:r,className:x("inline-flex",e),...t}));Fo.displayName=ir.List.displayName;var Ho=lt.forwardRef(({className:e,value:t,...r},n)=>{let{baseId:o}=Oh("TabsTrigger");return Fn(ir.Trigger,{ref:n,value:t,...r,id:gd(o,t),"aria-controls":Ed(o,t),className:x(`${cc} ${ee}`,e)})});Ho.displayName=ir.Trigger.displayName;var Hn=lt.forwardRef(({className:e,value:t,tabStop:r,children:n,...o},a)=>{let{baseId:s,value:i}=Oh("TabsContent"),l=t===i,d="mt-2 data-[state=inactive]:hidden";return r?Fn("div",{ref:a,role:"tabpanel",id:Ed(s,t),"aria-labelledby":gd(s,t),"data-state":l?"active":"inactive",hidden:!l,tabIndex:0,...o,className:x(`${d} ${ee}`,e),children:l?n:null}):Fn("div",{ref:a,role:"tabpanel",id:Ed(s,t),"aria-labelledby":gd(s,t),"data-state":l?"active":"inactive",hidden:!l,...o,className:x(d,e),children:l?n:null})});Hn.displayName="TabsContent";import{jsx as G,jsxs as lr}from"react/jsx-runtime";var Bh=x(Mr,"w-24 shrink-0"),kh={field:"flex items-baseline",label:Bh,value:"flex-1"},jx={field:"flex min-w-0 flex-1 items-baseline",label:Bh,value:"wrap-break-word min-w-0 flex-1"},Gx={field:"flex flex-col gap-1",label:Mr,value:""},Yx={field:"flex min-w-0 items-center gap-1",label:x(Mr,"shrink-0 whitespace-nowrap"),value:""},qx="flex min-h-4 flex-wrap items-center gap-x-2 gap-y-1 text-slate-500 text-xs dark:text-slate-300",Fh=x("flex-1 touch-pan-y overflow-y-auto overflow-x-hidden pt-2 text-sm",Ri,Yd,Gd),Hh={desktop:x(Fh,wc),overlay:Fh},Xx=x("flex flex-col gap-1",bi),Zx=x(lc,"grid grid-cols-2 gap-1"),Qx=x("m-0 font-normal text-slate-900 text-sm dark:text-slate-100",ee),Dd=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)})}},Jx=(e,t,r,n,o,a)=>{let s=Bo(null),i=e?.reportHubId;Ad(()=>{s.current=null},[i]),Td(()=>{n||(s.current=null)},[n]);let l=rn(async(d,c)=>{c||(s.current=d.reportHubId);try{await a(d.reportHubId,!d.isRead,d.date)}catch{}},[a]);return Td(()=>{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 p=o.subscribe(c);return()=>{p(),d!==null&&clearTimeout(d)}},[e,t,r,l,o]),{handleToggleRead:l}},wd="article",eI=["article","relations"],tI=e=>{if(e==="article"||e==="relations")return e;throw new Error(`[daily-report] unknown side-pane tab: ${e}`)},rI=x("hidden h-full min-h-0 w-full min-w-0 flex-1 flex-col gap-4 sm:flex",Nt),nI=x("flex h-full flex-1 items-center justify-center text-center",sn),oI=9,aI=.875,sI=16,Vh=4*Math.ceil((2*zt+2*Xo+2*Zd+oI*aI*sI)/4),Uh=({dailyReportItems:e,selectionStore:t,autoMarkRead:r,userId:n,onReportDeleted:o})=>{let{labels:a}=$(),s=Mh(),i=Mh(),[l,d]=Ph(wd),{selected:c,settled:p}=$x(t.subscribe,t.getSnapshot,t.getSnapshot),u=Po(e,c),y=Po(e,zx(p)),m=u===null?null:u.reportHubId,b=(y===null?null:y.reportHubId)===m,[R]=Ph(()=>Dd(b));return Ad(()=>{R.set(b)},[R,b]),G("aside",{"data-testid":"daily-report-side-pane","data-report-id":u?.reportHubId,"data-displayed-report-id":y?.reportHubId,"aria-busy":b?void 0:!0,className:rI,children:y===null?G("div",{className:nI,children:G("p",{className:Yt,children:a.selectPrompt})}):G(ti,{item:y,placement:"desktop",headingId:s,authorId:i,activeTab:l,onActiveTabChange:d,autoMarkRead:r,isActive:!0,dwell:R,userId:n,onReportDeleted:o},y.reportHubId)})},ti=Kx(({item:e,placement:t,headingId:r,authorId:n,activeTab:o,onActiveTabChange:a,autoMarkRead:s,isActive:i,dwell:l,userId:d,onReportDeleted:c})=>{let{labels:p,sourceTypeConfigs:u,headingLevel:y}=$(),{report:m,error:f,isLoading:b}=Vr(e.reportHubId,e.businessDate),R=Tr(),E=cs(e.reportHubId),h=E==="editing"||E==="automatic",S=Bo(null),g=Bo(null),T=Bo(!1),w=Bo(!1),C=!!(d&&m?.userId===d),H=m?.isDraft===!0;Td(()=>{m!==null&&(C&&H&&E==="display"?R.open(e.reportHubId,Nn(m),!0):!H&&E==="automatic"&&R.discard(e.reportHubId))},[m,C,H,E,R,e.reportHubId]);let U=Vo(()=>m===null?void 0:()=>{T.current=!0,R.open(e.reportHubId,Nn(m),!1)},[R,e.reportHubId,m]),B=rn(()=>{w.current=!0,R.dismiss(e.reportHubId)},[R,e.reportHubId]),A=rn(()=>{w.current=!0,R.discard(e.reportHubId)},[R,e.reportHubId]),v=rn(z=>{z===null||!T.current||(T.current=!1,z.focus())},[]),I=rn(z=>{z===null||!w.current||(w.current=!1,z.focus())},[]),L=rn(()=>{g.current?.focus({preventScroll:!0})},[]);Ad(()=>{h||!w.current||(w.current=!1,g.current?.focus())},[h]);let M=rn(()=>{setTimeout(()=>{let z=S.current;z!==null&&z.scrollTo({top:z.scrollHeight,behavior:Lp(z)})},100)},[]),O=Se(e.businessDate),D=Vo(()=>m===null?null:ke(m.employeeName),[m]),V=b||!m,F=m===null?void 0:Zt(m.sourceType,u);return lr(Cn,{reportHubId:e.reportHubId,children:[lr("div",{className:Xx,children:[G("dl",{className:"m-0",children:G(et,{label:p.businessDate,classNames:Gx,children:G(it,{ref:g,level:y,id:r,tabIndex:-1,className:Qx,children:O})})}),lr("div",{className:qx,children:[G("dl",{className:"m-0 min-w-0",children:G(et,{label:p.author,classNames:Yx,valueId:n,children:V||D===null?G("div",{"data-skeleton":!0,className:"h-3 w-24 rounded bg-slate-200 motion-safe:animate-pulse dark:bg-slate-700"}):G(se,{fieldKey:le.field("employeeName"),raw:m?.employeeName,display:D})})}),F?G(Pn,{config:F}):null,m===null?null:G(Ws,{isEditing:h,descriptionId:null})]})]}),lr(ko,{value:o,onValueChange:z=>a(tI(z)),className:"flex min-h-0 flex-1 flex-col",children:[G("div",{className:bi,children:G(Fo,{"aria-label":p.reportTabList,className:Zx,children:eI.map(z=>G(Ho,{value:z,children:z==="article"?p.tabArticle:p.tabRelations},z))})}),G(Hn,{ref:S,value:"article",tabStop:!0,className:Hh[t],children:h?m?G(Cs,{report:m,onCancel:B,onPublishSuccess:A,titleInputRef:v}):G("p",{className:sn,children:p.loading}):G(dI,{report:m,sourceConfig:F,isLoading:b,error:f,item:e,autoMarkRead:s,isActive:i,dwell:l,onCommentAdded:M,userId:d,onEdit:C?U:void 0,editButtonRef:I,onReportDeleted:c,onCommentSectionRemoved:L})}),G(Hn,{value:"relations",tabStop:!0,className:Hh[t],children:G("p",{className:sn,children:p.relationsEmpty})})]})]})});ti.displayName="DailyReportSidePaneContent";var ei=({className:e="w-32"})=>G("div",{"data-skeleton":!0,className:`h-4 rounded bg-slate-200 motion-safe:animate-pulse dark:bg-slate-700 ${e}`}),iI=["w-full","w-11/12","w-4/5"],lI=x(Qd,Zo),dI=({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:p,onReportDeleted:u,onCommentSectionRemoved:y})=>{let{toggleStar:m,toggleRead:f,deleteReport:b}=ze(),{labels:R,headingLevel:E}=$(),h=Ar[E],{handleToggleRead:S}=Jx(e,r,a,s,i,f),g=e!==null&&ya(e.sourceType,t),T=Vo(()=>e?.content?Pc(e.content):null,[e]),w=Vo(()=>ke(e?.subject),[e]),C=Vo(()=>ke(e?.customerName),[e]),H=async v=>{try{await m(v.reportHubId,!v.isStarred,v.date)}catch{}},U=async v=>{if(confirm(R.confirmDelete)){try{await b(v.reportHubId,v.date)}catch{return}u(v.reportHubId)}};if(n)return G("p",{className:$n,children:R.reportLoadFailed(o.reportHubId)});let B=!e,A=!!(d&&e?.userId===d);return lr("div",{className:"flex flex-col gap-4 text-slate-700 dark:text-slate-200",onDoubleClick:c,children:[lr("div",{className:"flex items-start gap-2",children:[G("dl",{className:"m-0 flex min-w-0 flex-1",children:G(et,{label:R.subject,classNames:jx,children:B?G(ei,{className:"w-3/4"}):G("span",{className:"text-sm",children:G(se,{fieldKey:le.field("subject"),raw:e?.subject,display:w})})})}),!B&&e&&lr("div",{className:"flex h-5 shrink-0 items-center gap-2 pr-2",children:[G("button",{type:"button",onClick:()=>H(e),className:We,title:e.isStarred?R.starRemove:R.starAdd,"aria-label":e.isStarred?R.starRemove:R.starAdd,"data-detail-star-button":e.reportHubId,children:G(Mn,{filled:e.isStarred})}),G("button",{type:"button",onClick:()=>S(e,!1),className:We,title:e.isRead?R.markUnread:R.markRead,"aria-label":e.isRead?R.markUnread:R.markRead,"data-detail-read-button":e.reportHubId,children:e.isRead?G(Vx,{className:Pe.read}):G(kn,{})}),c&&G("button",{ref:p,type:"button",onClick:c,"data-detail-edit-button":e.reportHubId,className:We,title:R.edit,"aria-label":R.edit,children:G(Ux,{className:Pe.edit})}),A&&G("button",{type:"button",onClick:()=>U(e),"data-detail-delete-button":e.reportHubId,className:We,title:R.deleteReport,"aria-label":R.deleteReport,children:G(Wx,{className:Pe.delete})})]})]}),G("dl",{className:"m-0",children:G(et,{label:R.customer,classNames:kh,children:B?G(ei,{className:"w-1/2"}):G("span",{className:"text-sm",children:G(se,{fieldKey:le.field("customerName"),raw:e?.customerName,display:C})})})}),lr("div",{className:"flex flex-col gap-2",children:[G(it,{level:h,className:Gt,children:R.content}),G("div",{className:lI,children:B?iI.map(v=>G("div",{className:Jd,children:G(ei,{className:v})},v)):T!==null&&T.text.length>0?G("div",{className:"whitespace-pre-wrap",children:G(se,{fieldKey:le.field("content"),raw:e?.content,display:T})}):G("p",{className:"text-slate-500 dark:text-slate-400",children:R.contentEmpty})})]}),G("dl",{className:"m-0",children:G(et,{label:R.visitTime,classNames:kh,children:B?G(ei,{className:"w-1/3"}):lr("span",{className:"text-sm",children:[br(e?.visitTimeFrom)," ",e?.visitTimeFrom&&e?.visitTimeTo?"-":""," ",br(e?.visitTimeTo)]})})}),e&&G(As,{attachments:e.attachments}),e&&G(vo,{report:e,userId:d,canComment:g,onCommentAdded:l,onSectionRemoved:y,formPlacement:"in-section",sectionClassName:"border-slate-100 border-t border-solid pt-4 dark:border-slate-800"})]})};import{jsx as Cr,jsxs as Wh}from"react/jsx-runtime";var hI="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]",RI={right:"var(--aqdr-overlay-right, 0px)"},bI="absolute inset-0 touch-manipulation bg-slate-900/50 motion-safe:transition-opacity motion-safe:duration-200",SI=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",bc),gI=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",ee),EI="flex shrink-0 justify-center empty:hidden",TI=50,Kh=({isMobileLayout:e,selection:t,dailyReportItems:r,onSelectItem:n,rootRef:o})=>{let a=t.id,[s,i]=ni(!1),[l,d]=ni(!1),c=vt(null),p=vt(null),u=vt(null),y=vt(e),m=vt(!0),f=Po(r,t),b=ri(()=>{let S=o.current;if(S===null)return;let g=S.ownerDocument.body;u.current={body:g,overflow:g.style.overflow},g.style.overflow="hidden"},[o]),R=ri(()=>{let S=u.current;S!==null&&(S.body.style.overflow=S.overflow,u.current=null)},[]);Bn(()=>{if(m.current){m.current=!1,y.current=e;return}let S=!y.current;y.current=e,S&&e&&a!==null?i(!0):!e&&s&&(p.current=a,i(!1),R())},[e,a,s,R]);let E=e&&s&&f!==null;Bn(()=>{if(E)d(!0);else{let S=setTimeout(()=>d(!1),300);return()=>clearTimeout(S)}},[E]),Bn(()=>{if(e&&s&&a!==null&&!c.current){let S=`overlay-${Date.now()}`;window.history.pushState({...window.history.state,dailyReportOverlay:S},"",window.location.href),c.current=S}else!(e&&s)&&c.current&&(c.current=null);return e&&s?b():R(),R},[e,s,a,b,R]),Bn(()=>{let S=()=>{c.current&&(p.current=a,c.current=null,i(!1),n(null))};return window.addEventListener("popstate",S),()=>window.removeEventListener("popstate",S)},[a,n]);let h=ri(()=>{e&&(p.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:E,handleOverlayClose:h,lastClosedItemIdRef:p,selectedItem:f}},zh=({isOpen:e,selectedItem:t,onClose:r,autoMarkRead:n=!1,userId:o,onReportDeleted:a})=>{let{labels:s}=$(),{registerNoticeHost:i}=ys(),l=vt(null),d=vt(null),c=xd(),p=xd(),[u,y]=ni(wd),m=uI(),f=xd(),b=vt(!1),R=vt(e),E=vt(null),[h]=ni(()=>Dd(e)),{isBlocked:S,requestBlock:g,reset:T}=pI(),w=yI(e,t),{overlayRef:C,overlayStyle:H,attemptClose:U,isSwiping:B}=mI({isOpen:e,onClose:r,isCloseBlocked:ri(()=>S,[S]),skipWhenTextSelected:!0}),A=vt(U);Id(()=>{A.current=U,R.current=e,h.set(e)},[U,e,h]),Bn(()=>{if(e)return m({id:f,onEscape:O=>nr(O)&&A.current()})},[e,m,f]),Id(()=>{let O=l.current;if(O===null)return;if(e){if(b.current)return;O.showModal(),b.current=!0,O.ownerDocument.getElementById(c)?.focus();return}if(!b.current)return;b.current=!1;let D=Ve(O);D!==null&&O.contains(D)&&lo(D)&&D.blur(),O.close()},[e,c]),Id(()=>{let O=d.current;if(!(!e||O===null))return i(O)},[e,i]),Bn(()=>{e||T()},[e,T]);let v=fI(()=>U()),I=O=>{let D=vn(O);if(nr(D)){U()&&O.preventDefault();return}if(D.key==="Escape"){E.current=O.timeStamp;return}let V=Vm(D,O.currentTarget);V!==null&&(O.preventDefault(),V.kind==="wrap"&&V.element.focus())},L=O=>{O.preventDefault();let D=E.current;E.current=null,!(D!==null&&O.timeStamp-D<=TI)&&A.current()},M=O=>{let D=O.currentTarget;D.open||!R.current||(b.current=!1,!A.current()&&(D.showModal(),b.current=!0))};return w?Wh("dialog",{ref:l,"data-daily-report-mobile-overlay":"true","aria-labelledby":`${c} ${p}`,tabIndex:-1,className:x(hI,e&&!B?"pointer-events-auto":"pointer-events-none"),style:RI,inert:!e,onKeyDown:I,onCancel:L,onClose:M,children:[Cr("div",{"aria-hidden":"true","data-daily-report-overlay-backdrop":"",className:x(bI,e?"opacity-100":"opacity-0"),...v}),Cr("div",{ref:C,"data-daily-report-overlay-panel":"",className:x(SI,e?"pointer-events-auto":"pointer-events-none"),style:H,children:Wh("div",{className:"flex h-full w-full flex-col gap-4 p-4",children:[Cr(cI.Provider,{value:{isBlocked:S,requestBlock:g},children:Cr("div",{"data-testid":"daily-report-side-pane","data-report-id":w.reportHubId,"data-displayed-report-id":w.reportHubId,className:"flex min-h-0 flex-1 flex-col gap-4",children:Cr(ti,{item:w,placement:"overlay",headingId:c,authorId:p,activeTab:u,onActiveTabChange:y,autoMarkRead:n,isActive:e,dwell:h,userId:o,onReportDeleted:a},w.reportHubId)})}),Cr("div",{ref:d,"data-daily-report-notice-slot":"","data-overlay-interactive":"true",className:EI}),Cr("div",{className:"flex justify-start",children:Cr("button",{type:"button","data-overlay-interactive":"true",className:gI,onClick:()=>U(),children:s.close})})]})})]}):null};import kI from"lucide-react/dist/esm/icons/check.js";import{memo as Yh,useContext as qh,useEffect as FI,useMemo as vd,useRef as HI}from"react";import{createContext as AI,createElement as DI,useLayoutEffect as wI,useMemo as xI,useRef as II,useState as vI}from"react";var CI=6.75,_I=4,LI=1e-6,NI=e=>4*Math.ceil((2*zt+2*Xo+_I+CI*e-LI)/4),oi=AI(null),OI="data-daily-report-root-font-size-probe",MI={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},PI=e=>{let t=Ne(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])},$h=()=>{let e=II(null),[t,r]=vI(null);wI(()=>{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=NI(PI(o));l!==a&&(a=l,r(l))};s();let i=new ResizeObserver(s);return i.observe(o),()=>i.disconnect()},[]);let n=xI(()=>DI("div",{ref:e,"aria-hidden":!0,[OI]:"",style:MI}),[]);return{rowSlotHeight:t,remProbe:n}};import{jsx as te,jsxs as Un}from"react/jsx-runtime";var BI=x(hr,Yo,qo,Go),VI=x("relative flex h-full w-full select-none flex-wrap content-start items-center gap-2 overflow-hidden",Nt,Qo,Xd),UI="min-w-24",WI="basis-full space-y-2 text-slate-700 text-sm leading-5 dark:text-slate-200",KI={touchAction:"manipulation"},zI=x("flex grow basis-0 cursor-pointer items-center gap-2 text-left outline-none after:absolute after:inset-0 after:rounded-2xl",UI),$I=x("relative z-10",We),jI=x(Ke,"shrink-0 whitespace-nowrap bg-slate-100 font-medium text-slate-900 text-xs dark:bg-slate-800 dark:text-slate-100"),GI=x(Ke,"min-w-0 max-w-full bg-slate-100 font-semibold text-xs dark:bg-slate-800 dark:text-slate-200"),YI=x(tc,"ml-auto"),qI=x("flex h-full",Nt),XI="flex h-full w-full flex-col justify-between motion-safe:animate-pulse",Vn="h-4 rounded bg-slate-200 dark:bg-slate-700",ZI=te("div",{"data-skeleton":!0,...ct,className:qI,children:Un("div",{className:XI,children:[Un("div",{className:"flex flex-wrap items-center gap-2",children:[te("div",{className:x(Vn,"w-24")}),te("div",{className:x(Vn,"w-24")}),te("div",{className:x(Vn,"w-24")})]}),Un("div",{className:"space-y-2",children:[te("div",{className:x(Vn,"w-full")}),te("div",{className:x(Vn,"w-11/12")}),te("div",{className:x(Vn,"w-5/6")})]})]})}),QI=()=>ZI,JI=e=>{e.target===e.currentTarget&&e.preventDefault()},jh=({reportHubId:e,rowId:t,name:r,children:n})=>{let o=qh(oi);if(o===null)throw new Error("[daily-report] a List row frame is rendered outside the List view (no measured row slot)");let a=vd(()=>({height:o}),[o]);return te(Us,{reportHubId:e,rowId:t,name:r,className:BI,style:a,onMouseDown:JI,children:n})},ev=(e,t)=>[ce(e,"state"),...t.hasAttachments?[ce(e,"attachments")]:[],...t.hasSource?[ce(e,"source")]:[],ce(e,"preview"),...t.showsSearchMatch?[ce(e,"match")]:[]],Gh=({label:e,dataAttributes:t,onClick:r,children:n})=>{let o=Ln();return te("button",{type:"button",title:e,"aria-label":e,tabIndex:o,...t,onClick:r,className:$I,children:n})},Xh=Yh(({item:e,report:t,rowId:r,sourceConfig:n,describedBy:o,onSelect:a})=>{let{labels:s}=$(),{toggleStar:i,toggleRead:l}=ze(),d=ce(r,"name"),c=vd(()=>Mc(t.content??null,vu),[t.content]),p=vd(()=>ke(t.employeeName),[t.employeeName]),u=Se(e.businessDate),y=E=>{E.currentTarget.focus({preventScroll:!0});let h=hp(E.currentTarget);h!==null&&a(e.reportHubId,h)},m=async()=>{let E=!t.isStarred;try{await i(t.reportHubId,E,t.date)}catch{}},f=async()=>{let E=!t.isRead;try{await l(t.reportHubId,E,t.date)}catch{}},b=t.isStarred?s.starRemove:s.starAdd,R=t.isRead?s.markUnread:s.markRead;return te("div",{"data-daily-report-card":!0,...ct,"aria-labelledby":d,style:KI,className:VI,children:Un(Cn,{reportHubId:e.reportHubId,children:[te(Vs,{id:ce(r,"position"),whileTotalUnknownOnly:!1}),te("span",{id:ce(r,"state"),className:"sr-only",children:s.rowState({isRead:t.isRead,isStarred:t.isStarred})}),Un("button",{id:d,type:"button",tabIndex:-1,[up]:e.reportHubId,...Ba,"aria-describedby":o,onClick:y,className:zI,children:[te("span",{className:jI,children:u})," ",te("span",{className:GI,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:p})})})]}),Un("div",{className:YI,children:[te(jn,{id:ce(r,"attachments"),count:t.attachments.length,label:s.attachments}),n?te(Pn,{id:ce(r,"source"),config:n}):null,te(Gh,{label:b,dataAttributes:{"data-list-star-button":e.reportHubId},onClick:m,children:te(Mn,{filled:t.isStarred})}),te(Gh,{label:R,dataAttributes:{"data-list-read-button":e.reportHubId},onClick:f,children:t.isRead?te(kI,{className:Pe.read}):te(kn,{})})]}),te("div",{id:ce(r,"preview"),className:WI,children:c.length>0?c.map((E,h)=>te("p",{className:"wrap-break-word line-clamp-1",children:te(se,{fieldKey:le.field("content"),raw:t.content,display:E})},h)):te("p",{children:s.contentEmptyPreview})}),te(zy,{id:ce(r,"match")})]})})});Xh.displayName="ListReportCard";var Cd=Yh(({item:e,onSelect:t})=>{let{labels:r,sourceTypeConfigs:n}=$(),{removeStaleItem:o}=ze(),{report:a,error:s,isLoading:i,isRefetching:l}=Vr(e.reportHubId,e.businessDate),{bodyReady:d,rendered:c}=Wa(e.reportHubId,a,"fixed"),p=Hs(e.reportHubId),u=qh(bt)!==null,y=HI(!1);FI(()=>{if(l){y.current=!0;return}!(a||i||s)&&y.current&&e.reportHubId>0&&o(e.reportHubId)},[a,i,l,s,e.reportHubId,o]);let m=Se(e.businessDate),f=(E,h)=>te(jh,{reportHubId:e.reportHubId,rowId:p,name:{kind:"label",label:m,isBusy:h},children:E});if(!d)return f(Bs,!0);if(s)return f(te("div",{...ct,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:r.reportSummaryLoadFailed(e.reportHubId)})}),!1);if(c===null&&(i||a!==null))return f(te(QI,{}),!0);if(!c)return f(te("div",{...ct,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:r.reportNotFound})}),!1);let b=Zt(c.sourceType,n),R=ev(p,{hasAttachments:c.attachments.length>0,hasSource:b!==void 0,showsSearchMatch:u});return te(jh,{reportHubId:e.reportHubId,rowId:p,name:{kind:"card",describedBy:R},children:te(Xh,{item:e,report:c,rowId:p,sourceConfig:b,describedBy:[ce(p,"position"),...R].join(" "),onSelect:t})})});Cd.displayName="ListReportItem";import{Fragment as bv,jsx as Ze,jsxs as si}from"react/jsx-runtime";var Jh={pointerDragInputs:Aa,inertiaOptions:gn(!1),wheelSpeedMultiplier:Ra,enableKeyboardNavigation:!1,resetOnGetItemHeightChange:!0},nv={...Jh,inertiaOptions:gn(!0)},ov=Object.freeze({value:360,unit:"pixels"}),av=Object.freeze({value:160,unit:"pixels"}),sv=Object.freeze({value:Vh,unit:"pixels"}),iv=Object.freeze({value:520,unit:"pixels"}),lv=Object.freeze({visible:!0,thickness:6,length:32,barThickness:2,barLength:16}),dv=x("cursor-col-resize rounded hover:bg-slate-200/60 focus:ring-0 dark:hover:bg-slate-700/60",ee),cv=x("relative w-full",aa,oa,sa),uv=x(ut,"relative isolate overflow-hidden"),Qh="daily-report-list",pv=()=>!1,mv=()=>{throw new Error("[daily-report] a List activation arrived before the view committed")},fv=e=>{let[t,r]=ii(!1);return Uo(()=>{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<Iu)},a=new(Ne(n)).ResizeObserver(o);return a.observe(n),()=>a.disconnect()},[e]),t},Ld=e=>{let t=_r(null),[r,n]=ii(null),o=Na(t),a=fv(t),{rowSlotHeight:s,remProbe:i}=$h(),l=En(r),d=dt(c=>(t.current=c,n(c),()=>{t.current=null,n(null)}),[]);return si("div",{ref:d,className:ta,"data-testid":"daily-report-root",children:[i,o===null||s===null?null:Ze(yv,{...e,rootRef:t,viewportHeight:o,rowSlotHeight:s,isContainerNarrow:a,reducedMotion:l})]})},yv=({dailyReportItems:e,rowSetSize:t,autoMarkRead:r=!1,selectedReportHubId:n,onSelectItem:o,userId:a,scrollOffsetRef:s,rootRef:i,viewportHeight:l,rowSlotHeight:d,isContainerNarrow:c,reducedMotion:p})=>{let[u]=ii(()=>s?.current??0),y=_r(null),{labels:m}=$(),f=Ca(),[b]=ii(Ka),E=Lh()||c,h=_r(null),S=e.length,g=t===void 0?S:t,T=_r(null),w=dt(N=>o(N),[o]),C=dt(N=>{let K=me(e,N);return K===void 0?Sa:K},[e]),H=_r(null),U=dt(N=>{let K=C(N.visibleStartIndex);K.reportHubId>0&&(b.setLabel(Se(K.businessDate)),H.current=K.reportHubId)},[C,b]),B=dt(()=>H.current,[]),A=_d(()=>({kind:"uniform",rowHeight:d}),[d]),v=_r(e);Uo(()=>{v.current=e},[e]);let I=_r(mv),L=dt(N=>I.current(N),[]),{containerProps:M,handleRangeChange:O,handleScrollAdjust:D,attachVirtualScroll:V,handleRef:F,scroller:z,attachScrollContainer:j,contentProps:Q,keyboardHelp:Ce,selection:Ee,selectionStore:De,activateRow:Ge,focusViewRow:Je,focusAfterRemoval:nt,rowPass:Y,rowScope:Ae}=qs({items:e,selectedId:n,onSelect:w,onActivate:L,containerRef:y,rootRef:i,testId:Qh,itemsRef:v,rowSetSize:g,rowSizing:A,arrowAlign:"nearest",isViewRevealPending:pv,onRangeChange:U});$a({items:e,scroller:z,readTopReportId:B});let{isMobileDetailOpen:ie,setIsMobileDetailOpen:ye,isOverlayMounted:_e,shouldShowOverlay:Ye,handleOverlayClose:cr,lastClosedItemIdRef:_t,selectedItem:At}=Kh({isMobileLayout:E,selection:Ee,dailyReportItems:e,onSelectItem:o,rootRef:i});ai(()=>{let N=y.current,K=()=>{b.setWheelScrollActive(!0),h.current&&clearTimeout(h.current),h.current=window.setTimeout(()=>{b.setWheelScrollActive(!1),h.current=null},ga)};return N?.addEventListener("wheel",K,{passive:!0}),()=>{N?.removeEventListener("wheel",K),h.current&&clearTimeout(h.current)}},[b]),ai(()=>{!S&&n!==null&&o(null)},[S,n,o]),ai(()=>{if(ie||_t.current===null)return;let N=_t.current;_t.current=null,Je(N,"overlay")},[ie,_t,Je]),ai(()=>{let N=me(e,0);N!==void 0&&b.setLabel(Se(N.businessDate))},[e,b]);let Lt=dt(N=>{o(N),E&&ye(!0)},[E,o,ye]);Uo(()=>{I.current=Lt},[Lt]);let ur=dt((N,K)=>{N<=0||(Ge(N,K),Lt(N))},[Ge,Lt]),pr=dt(()=>d,[d]),Dt=_r(d);Uo(()=>{let N=Dt.current;Dt.current=d;let K=F.current;if(N===d||K===null)return;let J=K.getScrollPosition();J>0&&z.by(J*d/N-J)},[F,d,z]);let Nr=dt(N=>ka(e,N),[e]),_=dt((N,K)=>Ze(Gr.Provider,{value:K,children:Ze(yo.Provider,{value:N.reportHubId,children:Ze(Cd,{item:N,onSelect:ur})})},N.reportHubId),[ur]);Uo(()=>{let N=y.current;if(N!==null)return Y.attach(Ne(N),null)},[Y]);let P=dt(N=>{s&&(s.current=N);let K=y.current;K&&(K.toggleAttribute(an,!0),T.current&&clearTimeout(T.current),T.current=setTimeout(()=>{K.toggleAttribute(an,!1),T.current=null},150))},[s]),W=dt(N=>Ze(za,{...N,store:b}),[b]),q=_d(()=>si("div",{ref:j,className:uv,...Va,...M,children:[Ce,Ze(jr.Provider,{value:g,children:Ze(oi.Provider,{value:d,children:Ze(Xs,{ref:V,rowScope:Ae,items:e,itemCount:S,getItem:C,getItemKey:Nr,getItemHeight:pr,viewportSize:l,initialScrollOffset:u,overscanCount:Ea,scrollBarOptions:{...Ta,renderThumbOverlay:W},behaviorOptions:p?nv:Jh,onRangeChange:O,onScrollAdjust:D,onScroll:P,testId:Qh,className:cv,locale:f.locale,labels:f.labels,contentProps:Q,children:_})})})]}),[j,V,Ae,e,M,g,S,C,Nr,pr,l,d,p,u,W,O,D,P,Ce,Q,f.locale,f.labels,_]),k=_d(()=>si(tv,{direction:"horizontal",className:"min-h-0 flex-1","data-testid":"daily-report-panel-group",children:[Ze(Zh,{id:"daily-report-list-panel",defaultSize:ov,minSize:av,maxSize:iv,contentOverflow:"hidden",className:hv,children:q}),Ze(rv,{id:"daily-report-list-handle",thickness:10,indicator:lv,className:dv,"aria-label":m.resizeHandle}),Ze(Zh,{id:"daily-report-detail-panel",minSize:sv,contentOverflow:"hidden",className:Rv,children:Ze(Uh,{dailyReportItems:e,selectionStore:De,autoMarkRead:r,userId:a,onReportDeleted:nt})})]}),[q,m.resizeHandle,e,De,r,a,nt]);return si(bv,{children:[Ze("div",{className:ra,children:E?Ze("div",{className:ut,children:q}):k}),_e&&Ze(zh,{isOpen:Ye,selectedItem:At,onClose:cr,autoMarkRead:E&&r,userId:a,onReportDeleted:nt})]})},hv=x("flex min-h-0",jd),Rv=x("flex min-h-0 flex-1",hr);import{useCallback as JC,useEffect as KR,useLayoutEffect as e_,useRef as $R,useState as t_}from"react";import CC from"lucide-react/dist/esm/icons/plus.js";import _C from"lucide-react/dist/esm/icons/refresh-cw.js";import LC from"lucide-react/dist/esm/icons/rotate-cw.js";import{useEffect as Wd,useId as BR,useLayoutEffect as VR,useMemo as yi,useRef as Kn,useState as nn}from"react";import{useSearchParams as NC}from"react-router";import{useEffect as Sv,useRef as eR,useState as gv}from"react";var tR=(e,t,r=250)=>{let n=En(t),[o,a]=gv(e),s=eR(e),i=eR(!0);return Sv(()=>{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=Ne(t),c=0,p=null,u=y=>{p===null&&(p=y);let m=Math.min(1,Math.max(0,(y-p)/r)),f=1-(1-m)**3,b=Math.round(l+(e-l)*f);s.current=b,a(b),m<1&&(c=d.requestAnimationFrame(u))};return c=d.requestAnimationFrame(u),()=>d.cancelAnimationFrame(c)},[e,r,n,t]),n?e:o};import kv from"lucide-react/dist/esm/icons/loader-circle.js";import Fv from"lucide-react/dist/esm/icons/x.js";import{useEffect as dR,useId as Ko,useLayoutEffect as Hv,useRef as ci,useState as cR}from"react";var Wo=Object.freeze({maxValuesPerFacet:16,maxValueLength:200,maxTotalValueLength:300}),Md=["author","sourceType","customer"],Pd=Object.freeze({authors:Object.freeze([]),sourceTypes:Object.freeze([]),customers:Object.freeze([])}),Ev=/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,Tv=e=>{let t=e.trim();return t.length===0?null:t.replace(Ev,"\uFFFD")},rR=e=>{let t=Tv(e);return t===null?"filter-blank-value":t!==e?"filter-value-not-canonical":e.length>Wo.maxValueLength?"filter-value-too-long":null},Av=e=>{if(e.length>Wo.maxValuesPerFacet)return"filter-too-many-values";let t=new Set;for(let r of e){let n=rR(r);if(n!==null)return n;if(t.has(r))return"filter-duplicate-value";t.add(r)}return null},Dv=e=>{let t=0;for(let r of e.authors)t+=r.length;for(let r of e.customers)t+=r.length;return t},li=e=>{for(let t of[e.authors,e.sourceTypes,e.customers]){let r=Av(t);if(r!==null)return r}return Dv(e)>Wo.maxTotalValueLength?"filters-too-long":null},Nd=e=>[...new Set(e)].sort((t,r)=>t<r?-1:1),di=e=>({authors:Nd(e.authors),sourceTypes:Nd(e.sourceTypes),customers:Nd(e.customers)}),Lr=e=>e.trim().length===0,Wn=e=>e.authors.length===0&&e.sourceTypes.length===0&&e.customers.length===0,nR=(e,t)=>{let r=di(t);for(let n of r.authors)e.append(xe.searchAuthor,n);for(let n of r.sourceTypes)e.append(xe.searchSourceType,n);for(let n of r.customers)e.append(xe.searchCustomer,n)},Od=e=>{if(!Array.isArray(e))return null;let t=[],r=new Set;for(let n of e){if(typeof n!="string"||rR(n)!==null||r.has(n))return null;r.add(n),t.push(n)}return t},oR=e=>{if(!Xt(e))return null;let t=Od(e.sourceTypes),r=Od(e.authors),n=Od(e.customers);return t===null||r===null||n===null?null:{sourceTypes:t,authors:r,customers:n}};import{Component as wv,Suspense as xv,useMemo as aR,useState as Iv}from"react";import{jsx as dr,jsxs as lR}from"react/jsx-runtime";var sR="flex min-h-6 items-center text-slate-600 text-xs dark:text-slate-300",vv=x(hc,Yt),Cv=[{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"}],_v=(e,t)=>t==="author"?e.author:t==="sourceType"?e.searchFilterSourceType:e.customer,Lv=(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 Le(`config.search.renderFilterSelect (${e}) onChange values`,"distinct values of the options the control received",t);o.add(a)}return t},kd=class extends wv{constructor(){super(...arguments);this.state={failed:!1}}static getDerivedStateFromError(){return{failed:!0}}render(){return this.state.failed?dr("span",{className:sR,children:this.props.fallback}):this.props.children}},Nv=(e,t,r,n)=>{let o=aR(()=>new Set(t.map(s=>s.value)),[t]),a=JSON.stringify(n.filter(s=>!o.has(s)));return aR(()=>{let s=JSON.parse(a);return s.length===0?t:[...t,...s.map(i=>r(e,i))]},[e,t,r,a])};function Ov({renderFilterSelect:e,selectProps:t}){return e(t)}var Mv=(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 Pv({cell:e,labels:t,locale:r,renderFilterSelect:n,candidates:o,optionOf:a,selected:s,onSelect:i}){let l=Nv(e.facet,o,a,s),d=_v(t,e.facet);return lR("fieldset",{"data-testid":e.testId,className:yc,children:[dr("legend",{"data-testid":`${e.testId}-caption`,className:vv,children:d}),dr(kd,{fallback:t.searchFilterUnavailable,children:dr(xv,{fallback:dr("span",{className:sR,children:t.searchFiltersLoading}),children:dr(Ov,{renderFilterSelect:n,selectProps:{facet:e.facet,label:d,options:l,value:s,onChange:c=>i(e,Lv(e.facet,c,l)),locale:r}})})})]})}function iR({id:e,labelledBy:t,labels:r,locale:n,renderFilterSelect:o,facets:a,value:s,onChange:i,clearSignal:l}){let[d,c]=Iv(null),p=Mv(r,a,d!==null&&d.selection===s&&d.clearSignal===l),u=(m,f)=>{let b={...s,[m.key]:f};if(li(b)!==null){c({selection:s,clearSignal:l});return}c(null),i(b)},y=a.status==="ready"?a:null;return lR("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:[y===null?null:dr("div",{className:fc,children:Cv.map(m=>dr(Pv,{cell:m,labels:r,locale:n,renderFilterSelect:o,candidates:y.options[m.key],optionOf:y.optionOf,selected:s[m.key],onSelect:u},m.facet))}),dr("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",y===null?null:"mt-2 empty:mt-0",Yt),children:p})]})}import{Fragment as Qv,jsx as Qe,jsxs as zo}from"react/jsx-runtime";var Bv=x("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",jt,ee),uR="inline-grid h-6 place-content-center place-items-center rounded-full border border-solid px-[11px] font-semibold text-xs tabular-nums",Vv="col-start-1 row-start-1",Uv="invisible col-start-1 row-start-1 after:content-[attr(data-search-toggle-reserve)]",ui=Object.freeze({field:x(uR,"bg-white text-slate-800 dark:bg-slate-900 dark:text-slate-100",jt,ee),filled:x(uR,"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)}),Wv=Object.freeze({union:x("mr-2 min-w-14",ui.field),intersection:x("mr-2 min-w-14",ui.filled)}),pR=Object.freeze({closed:x("ml-2 min-w-26",ui.field),open:x("ml-2 min-w-26",ui.filled)}),Kv=Md.length*Wo.maxValuesPerFacet,zv="relative min-w-0",$v="pointer-events-none absolute inset-y-0 right-0 grid grid-cols-[repeat(2,--spacing(6))] place-items-center",jv=x("pointer-events-auto col-start-2 row-start-1",We),Gv="col-start-1 row-start-1 size-4 text-slate-500 motion-safe:animate-spin dark:text-slate-400",Yv="sr-only",qv=x("col-[2/-1] row-start-2 pt-1 pl-[8px] text-slate-600 text-xs leading-4 dark:text-slate-300",Yt),Xv=e=>e.authors.length+e.sourceTypes.length+e.customers.length,Zv=(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):"",mR=({label:e,reserved:t})=>zo(Qv,{children:[Qe("span",{className:Vv,children:e}),Qe("span",{"aria-hidden":"true","data-search-toggle-reserve":t,className:Uv})]});function fR({labels:e,debounceMs:t,search:r,shownCount:n,onCommit:o,onCombineChange:a,onRelease:s,clearSignal:i,filters:l}){let[d,c]=cR(""),[p,u]=cR(!1),y=d.length>0||r.committed!==null&&!Lr(r.committed.text),m=Ko(),f=Ko(),b=ci(null),R=ci(null),E=ci(!1),h=ci(i),S=Ko(),g=Ko(),T=Ko(),w=Be(()=>({search:r,onCommit:o,onRelease:s}));Hv(()=>{w.current={search:r,onCommit:o,onRelease:s}});let C=()=>{R.current!==null&&clearTimeout(R.current),R.current=null},H=(j,Q,Ce)=>{let Ee=w.current;Lr(j)?Wn(Ce)?Ee.search.committed!==null&&Ee.onRelease():Ee.onCommit("",Q,Ce):Ee.onCommit(j,Q,Ce)},U=j=>{C();let Q=w.current;H(j,Q.search.combine,Q.search.filters)},B=j=>{t===null||E.current||(C(),R.current=setTimeout(()=>U(j),t))},A=()=>{C(),c(""),Wn(r.filters)?s():(r.committed===null||!Lr(r.committed.text))&&o("",r.combine,r.filters),b.current?.focus()},v=j=>{c(j.target.value),B(j.target.value)},I=j=>{let Q=vn(j);if(j.key==="Enter"&&!Zr(Q)){j.preventDefault(),U(d);return}nr(Q)&&y&&(j.preventDefault(),A())},L=()=>{C();let j=r.combine==="union"?"intersection":"union";Lr(d)&&Wn(r.filters)?a(j):H(d,j,r.filters)},M=j=>{p||j.facets.load(),u(!p)},O=j=>{C(),H(d,r.combine,j)};dR(()=>{h.current!==i&&(h.current=i,R.current!==null&&clearTimeout(R.current),R.current=null,c(""))},[i]),dR(()=>()=>{R.current!==null&&clearTimeout(R.current)},[]);let D=r.combine==="intersection",V=Zv(e,r,n),F=r.status==="failed"?r.failure:null,z=l!==null&&p;return zo("search",{"data-testid":"daily-report-search",className:pc,children:[zo("div",{className:mc,children:[Qe("button",{type:"button","data-testid":"daily-report-search-combine","aria-describedby":S,title:D?e.searchCombineAndTitle:e.searchCombineOrTitle,onClick:L,className:Wv[r.combine],children:Qe(mR,{label:D?e.searchCombineAnd:e.searchCombineOr,reserved:D?e.searchCombineOr:e.searchCombineAnd})}),zo("div",{className:zv,children:[Qe("input",{ref:b,type:"text","data-testid":"daily-report-search-input","aria-label":e.searchInputLabel,"aria-describedby":F===null?g:`${T} ${g}`,"aria-invalid":F==="invalid"?!0:void 0,title:e.searchSyntaxHelp,placeholder:e.searchPlaceholder,value:d,onChange:v,onKeyDown:I,onCompositionStart:()=>{E.current=!0,C()},onCompositionEnd:j=>{E.current=!1,B(j.currentTarget.value)},className:Bv}),zo("div",{className:$v,children:[r.status==="searching"?Qe(kv,{"aria-hidden":"true","data-testid":"daily-report-search-spinner",className:Gv}):null,y?Qe("button",{type:"button","data-testid":"daily-report-search-clear","aria-label":e.searchClear,title:e.searchClear,onClick:A,className:jv,children:Qe(Fv,{"aria-hidden":"true",className:"size-4"})}):null]})]}),l===null?null:Qe("button",{type:"button",id:m,"data-testid":"daily-report-search-filters-toggle","aria-expanded":p,"aria-controls":z?f:void 0,onClick:()=>M(l),className:p?pR.open:pR.closed,children:Qe(mR,{label:e.searchFiltersToggle(Xv(r.filters)),reserved:e.searchFiltersToggle(Kv)})}),Qe("span",{id:S,hidden:!0,children:D?e.searchCombineAndTitle:e.searchCombineOrTitle}),Qe("span",{id:g,hidden:!0,children:e.searchSyntaxHelp}),Qe("span",{"data-testid":"daily-report-search-status","aria-live":"polite",className:Yv,children:V}),F===null?null:Qe("p",{id:T,"data-testid":"daily-report-search-failure",className:qv,children:e.searchFailed(F)})]}),z?Qe(iR,{id:f,labelledBy:m,labels:e,locale:l.locale,renderFilterSelect:l.renderFilterSelect,facets:l.facets.state,value:r.filters,onChange:O,clearSignal:i}):null]})}var pi=new WeakMap,hR=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}},mi=(e,t)=>e.businessDate===t.businessDate&&e.sourceType===t.sourceType,Jv=(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},eC=(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),!mi(i,s))return null;continue}if(!mi(s,yR(e,s.reportHubId))||r(s.reportHubId))return null;a-=1}for(let s of o.values()){if(!mi(s,yR(e,s.reportHubId))||r(s.reportHubId))return null;a+=1}return a},yR=(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},RR=(e,t,r,n)=>{if(e===null)return{items:t,hasAnswerOnlyItems:!1};let o=p=>e.ids.has(p),a=pi.get(e);if(a!==void 0&&a.isReportRemoved===r&&a.removedVersion===n){if(a.stream===t)return a.list;if(a.stream instanceof at&&t instanceof at){let p=eC(e,ap(a.stream,t,e.answeredByChunk,o),r,a.answerOnlyCount);if(p!==null){let u=a.list.hasAnswerOnlyItems===p>0?a.list:{items:a.list.items,hasAnswerOnlyItems:p>0};return pi.set(e,{...a,stream:t,list:u,answerOnlyCount:p}),u}}}let s=new Map;for(let p of op(t,e.answeredByChunk,o))s.set(p.reportHubId,p);let i=[],l=0;for(let p of e.items){let u=s.get(p.reportHubId);u!==void 0?i.push(mi(u,p)?p:u):r(p.reportHubId)||(i.push(p),l+=1)}let d=l>0;if(a!==void 0&&a.list.hasAnswerOnlyItems===d&&Jv(a.items,i))return pi.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 pi.set(e,{stream:t,isReportRemoved:r,removedVersion:n,items:i,list:c,answerOnlyCount:l}),c};var bR=(e,t,r)=>{let n=me(t,0);if(n===void 0)return null;let o=Rt(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=me(e,o+s);if(i!==void 0&&a.has(i.reportHubId))return i.reportHubId;let l=me(e,o-s);if(l!==void 0&&a.has(l.reportHubId))return l.reportHubId}}return n.reportHubId},Fd=(e,t,r,n)=>{if(r===null){let o=me(t,0);return n&&o!==void 0?o.reportHubId:null}return Rt(t,r)!==-1?r:bR(e,t,r)},SR=(e,t,r)=>e.selected===null?r!==null&&Rt(t,r)!==-1?r:null:Rt(t,e.selected)!==-1?e.selected:bR(e.items,t,e.selected);import{useEffect as ER,useLayoutEffect as iC,useMemo as TR,useRef as AR,useSyncExternalStore as lC}from"react";var tC=1e3,rC=5e3,nC={combine:"union",committed:null,filters:Pd,generation:0,status:"idle",failure:null,items:null,answered:null},oC=e=>e===400?"invalid":e===404?"unavailable":e===429?"busy":"failed",aC=(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))),Hd=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),sC=(e,t)=>{let r=di(e),n=di(t);return Hd(r.authors,n.authors)&&Hd(r.sourceTypes,n.sourceTypes)&&Hd(r.customers,n.customers)},gR=e=>{let t=nC,r=new Set,n=null,o=null,a=null,s=null,i=null,l=null,d=g=>{t=g;for(let T of r)T()},c=()=>{s!==null&&clearTimeout(s),i!==null&&clearTimeout(i),s=null,i=null},p=(g,T)=>{let w=t.answered;return w!==null&&w.query.text===g.text&&w.query.combine===g.combine&&aC(w.words,T)?w:{query:{text:g.text,combine:g.combine},words:T}},u=g=>{let T=new URLSearchParams({[xe.searchQuery]:g.text,[xe.searchCombine]:g.combine});return nR(T,g.filters),`${e.apiBasePath}/${Fe.search}?${T.toString()}`},y=(g,T,w,C)=>{if(!w){d({...t,status:"failed",failure:g});return}l!==C&&(l=C,i=setTimeout(()=>{i=null,f(T,!0)},rC))},m=async(g,T,w)=>{let C=new AbortController;n={controller:C};let H={Accept:"application/json"};w&&a!==null&&a.generation===T&&(H["If-None-Match"]=a.value);try{let U=await e.fetch(u(g),{headers:H,cache:"no-store",signal:C.signal});if(C.signal.aborted||T!==t.generation)return;if(U.status===304){t.status!=="done"&&d({...t,status:"done",failure:null});return}if(U.status===401||U.status===403){e.onSessionExpired(),y("failed",g,!1,T);return}if(!U.ok){y(oC(U.status),g,w,T);return}let B=du(await U.json(),!Lr(g.text));if(C.signal.aborted||T!==t.generation)return;if(B===null){y("failed",g,w,T);return}let A=U.headers.get("ETag");a=A===null?null:{generation:T,value:A},l=null,d({...t,status:"done",failure:null,items:B.items,answered:B.words.length===0?null:p(g,B.words)})}catch{if(C.signal.aborted||T!==t.generation)return;y("failed",g,w,T)}finally{if(n!==null&&n.controller===C&&(n=null),n===null&&o!==null){let U=o;o=null,f(U.query,U.background)}}},f=(g,T)=>{if(n!==null){o={query:g,background:(o===null||o.background)&&T};return}m(g,t.generation,T)};return{getSnapshot:()=>t,subscribe:g=>(r.add(g),()=>{r.delete(g)}),commit:(g,T,w)=>{if(Lr(g)&&Wn(w))throw new Error("[daily-report] search: a blank text can be committed only with a filter");let C=li(w);if(C!==null)throw new Error(`[daily-report] search: the filter selection cannot be sent (${C})`);c();let H=t.committed,U=H!==null&&H.text===g&&H.combine===T&&sC(H.filters,w),B={text:g,combine:T,filters:w};d({...t,combine:T,committed:B,filters:w,generation:U?t.generation:t.generation+1,status:"searching",failure:null}),f(B,!1)},setCombine:g=>{g!==t.combine&&d({...t,combine:g})},release:()=>{c(),n?.controller.abort(),n=null,o=null,t.committed!==null&&d({combine:t.combine,committed:null,filters:Pd,generation:t.generation+1,status:"idle",failure:null,items:null,answered:null})},invalidate:()=>{let g=t.committed;g!==null&&(s!==null&&clearTimeout(s),s=setTimeout(()=>{s=null,f(g,!0)},tC))},dispose:()=>{c(),n?.controller.abort(),n=null,o=null}}};var DR=({apiBasePath:e,invalidation:t,onSessionExpired:r})=>{let n=AR(r);iC(()=>{n.current=r});let o=TR(()=>gR({apiBasePath:e,onSessionExpired:()=>n.current(),fetch:(i,l)=>fetch(i,l)}),[e]);ER(()=>()=>o.dispose(),[o]);let a=AR(t);ER(()=>{a.current!==t&&(a.current=t,o.invalidate())},[t,o]);let s=lC(o.subscribe,o.getSnapshot,o.getSnapshot);return TR(()=>({...s,commit:o.commit,setCombine:o.setCombine,release:o.release}),[s,o])};import{useCallback as wR,useEffect as dC,useLayoutEffect as cC,useMemo as Bd,useRef as uC,useState as pC}from"react";var xR=Object.freeze({status:"idle"}),mC=Object.freeze({status:"loading"}),fC=Object.freeze({sourceTypes:[],authors:[],customers:[]}),yC=e=>e===404?"unavailable":e===429?"busy":"failed",Vd=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),hC=(e,t)=>Vd(e.sourceTypes,t.sourceTypes)&&Vd(e.authors,t.authors)&&Vd(e.customers,t.customers),RC=(e,t)=>"facets"in t?e.status!=="ready"||!hC(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},IR=(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})),bC=(e,t)=>e.map(r=>vR(r,t));function vR(e,t){let r=Zt(e,t);return{value:e,label:r===void 0?e:r.label}}var CR=({apiBasePath:e,locale:t,sourceTypeConfigs:r,onSessionExpired:n})=>{let[o,a]=pC({apiBasePath:e,load:xR}),s=o.apiBasePath===e?o.load:xR,i=uC(null),l=Be(()=>({apiBasePath:e,onSessionExpired:n}));cC(()=>{l.current={apiBasePath:e,onSessionExpired:n}}),dC(()=>()=>{i.current?.abort(),i.current=null},[e]);let d=wR(()=>{if(i.current!==null)return;let m=new AbortController;i.current=m;let f=l.current.apiBasePath;a(R=>R.apiBasePath===f&&R.load.status==="ready"?R:{apiBasePath:f,load:mC}),(async()=>{let R;try{let E=await fetch(`${f}/${Fe.searchFacets}`,{headers:{Accept:"application/json"},cache:"no-cache",signal:m.signal});if(m.signal.aborted)return;if(E.status===401||E.status===403)l.current.onSessionExpired(),R={failure:"failed"};else if(!E.ok)R={failure:yC(E.status)};else{let h=oR(await E.json());if(m.signal.aborted)return;R=h===null?{failure:"failed"}:{facets:h}}}catch{if(m.signal.aborted)return;R={failure:"failed"}}i.current=null,a(E=>({apiBasePath:f,load:RC(E.load,R)}))})()},[l]),c=s.status==="ready"?s.facets:fC,p=Bd(()=>{let m=new Intl.Collator(t);return{authors:IR(c.authors,m),sourceTypes:bC(c.sourceTypes,r),customers:IR(c.customers,m)}},[c,t,r]),u=wR((m,f)=>m==="sourceType"?vR(f,r):{value:f,label:f},[r]),y=Bd(()=>s.status==="ready"?{status:"ready",options:p,optionOf:u,reloadFailure:s.reloadFailure}:s,[s,p,u]);return Bd(()=>({state:y,load:d}),[y,d])};import{useEffect as MR,useLayoutEffect as wC,useMemo as xC,useRef as IC}from"react";var SC=4294967295,_R=e=>typeof e=="number"&&Number.isInteger(e)&&e>=0&&e<=SC,gC=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)||!to(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},EC=e=>{if(!(Xt(e)&&_R(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=gC(e.ranges);return t===null?null:{fingerprint:e.fingerprint,ranges:t}},TC=e=>{if(!Xt(e))return null;let t={};for(let[r,n]of Object.entries(e)){if(!Tn(r))return null;let o=EC(n);if(o===null)return null;t[r]=o}return t},LR=(e,t)=>{if(!(Xt(e)&&_R(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(!Xt(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})}if(a.length===0&&e.deferred.length>0)return null;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 NR=2*eo*qt.maxDetailIds,AC=240,DC=6e4,OR=({apiBasePath:e,fetch:t,answered:r,onSessionExpired:n})=>{let o=r.words.length,a=r.query.combine==="union"&&o>=2,s=Pp(r.words),i=new Map,l=new Map,d=0,c=new Map,p=new Set,u=0,y=0,m=null,f=new Set,b=!1,R=I=>{let L=i.get(I);if(L!==void 0)return L;let M={entry:void 0,appliedSequence:0,settledEpoch:null,retriedEpoch:null,revalidated:new Set};return i.set(I,M),l.has(I)||(d+=1),M},E=I=>{for(let L of I){let M=i.get(L);M!==void 0&&(M.settledEpoch=null)}},h=()=>{if(!(d<=NR))for(let I of[...i.keys()]){if(d<=NR)return;l.has(I)||(i.delete(I),c.delete(I),d-=1)}},S=I=>{let L=l.get(I);if(L!==void 0)for(let M of[...L])M()},g=I=>{let L=new URLSearchParams({[xe.searchQuery]:r.query.text,[xe.searchCombine]:r.query.combine,[xe.reportIds]:I.join(",")});return`${e}/${Fe.searchMarks}?${L.toString()}`},T=(I,L)=>{for(let M of I){let O=R(M.reportHubId);O.appliedSequence>L||(O.appliedSequence=L,O.entry=M,i.delete(M.reportHubId),i.set(M.reportHubId,O),S(M.reportHubId))}h()},w=(I,L)=>{let M=[];for(let V of I){let F=i.get(V);F!==void 0&&F.retriedEpoch!==u&&M.push({id:V,record:F})}if(M.length===0)return;let D=setTimeout(()=>{p.delete(D);for(let{id:V,record:F}of M){let z=c.get(V);z===void 0||z.timer!==D||(c.delete(V),l.has(V)?(F.retriedEpoch=u,v.enqueue(V)):F.settledEpoch=null)}},L);p.add(D);for(let{id:V,record:F}of M)c.set(V,{timer:D,record:F})},C=I=>{for(let L of I)l.has(L)?v.enqueue(L):E([L])},H=async(I,L)=>{y+=1;let M=y,O=u;for(let z of I)R(z).settledEpoch=u,c.delete(z);h();let D;try{D=await t(g(I),{headers:{Accept:"application/json"},cache:"no-store",signal:L})}catch{return}if(D.status===401||D.status===403){n();return}if(D.status===429){let z=fa(D,DC);z!==null&&O===u&&w(I,z);return}if(!D.ok)return;let V;try{V=await D.json()}catch{return}let F=LR(V,{requestedIds:I,setCount:o,expectsMatchedSets:a});L.aborted||F===null||F.wordsDigest!==s||(T(F.reports,M),O===u&&C(F.deferred))},U=()=>{b=!0,queueMicrotask(()=>{b=!1}),m=setTimeout(B,AC)},B=()=>{if(m=null,f.size!==0){for(let I of f)v.enqueue(I);f.clear(),U()}},A=I=>{if(m!==null&&!b){f.add(I);return}v.enqueue(I),m===null&&U()},v=ma({hasListener:I=>l.has(I),batchSize:qt.maxDetailIds,inFlightBound:eo,send:H});return{indicator:Object.freeze({setCount:o,showsMatchedSets:a}),subscribe:(I,L)=>{let M=l.get(I);M===void 0&&(M=new Set,l.set(I,M),i.has(I)&&(d-=1)),M.add(L);let O=i.get(I),D=O!==void 0&&O.settledEpoch===u;return M.size===1&&!D&&!v.isWanted(I)&&!f.has(I)&&A(I),()=>{let V=l.get(I);V===void 0||!V.delete(L)||V.size>0||(l.delete(I),i.has(I)&&(d+=1),f.delete(I),E(v.release(I)),h())}},read:I=>{let L=i.get(I);return L===void 0?void 0:L.entry},revalidate:(I,L,M)=>{let O=R(I),D=`${L}\0${M}`;O.revalidated.has(D)||(O.revalidated.add(D),f.delete(I),v.enqueue(I))},advanceEpoch:()=>{u+=1;for(let I of p)clearTimeout(I);p.clear(),c.clear(),f.clear();for(let I of l.keys())v.enqueue(I)},dispose:()=>{for(let L of p)clearTimeout(L);p.clear();let I=[...c.keys(),...f];c.clear(),f.clear(),m!==null&&clearTimeout(m),m=null,E([...v.dispose(),...I])}}};var PR=({apiBasePath:e,answered:t,shownRevision:r,onSessionExpired:n})=>{let o=IC(n);wC(()=>{o.current=n});let a=xC(()=>t===null?null:OR({apiBasePath:e,answered:t,onSessionExpired:()=>o.current(),fetch:(i,l)=>fetch(i,l)}),[e,t]);MR(()=>{if(a!==null)return()=>a.dispose()},[a]);let s=Be(()=>({store:a,shownRevision:r}));return MR(()=>{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 vC}from"react";var kR=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)})}},Ud=e=>vC(e.subscribe,e.get,e.get);import*as $o from"@radix-ui/react-switch";import*as HR from"react";import{jsx as FR}from"react/jsx-runtime";var fi=HR.forwardRef(({className:e,...t},r)=>FR($o.Root,{className:x(`peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-transparent disabled:cursor-not-allowed disabled:opacity-50 ${oc} ${sc} ${ee}`,e),...t,ref:r,children:FR($o.Thumb,{className:`pointer-events-none block rounded-full shadow-lg data-[state=unchecked]:translate-x-0 motion-safe:transition-[translate] ${ac} ${ic}`})}));fi.displayName=$o.Root.displayName;import{Fragment as QC,jsx as ne,jsxs as Ct}from"react/jsx-runtime";var OC="list",MC=e=>{if(e==="list"||e==="tree"||e==="detailList")return e;throw new Error(`[daily-report] unknown view tab: ${e}`)},PC=()=>({topItem:null,anchorReportHubId:null,measuredHeights:new Map}),kC=x(dc,Ec,"flex flex-wrap items-center gap-2"),FC=x("@container/views",ut),HC=x("mt-0",ut),BC=x("flex flex-1 items-center justify-center",sn),UR="relative h-4 w-4 p-0 after:absolute after:-inset-1",VC="flex items-center gap-2",UC=x(UR,"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"),WC=x(UR,"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"),WR=(e,t)=>{let r=Qs(t);return[e.totalCount(r),e.searchHitCount(r)]},KC=({count:e})=>{let{labels:t}=$(),[r,n]=nn(null),o=tR(e,r);return ne(Oo,{ref:n,text:t.totalCount(o),widestTexts:WR(t,Math.max(e,o))})},zC=({totalCount:e,hitCount:t})=>{let{labels:r}=$();return t!==null?ne(Oo,{text:r.searchHitCount(t),widestTexts:WR(r,e===Er?t:Math.max(e,t))}):e===Er?ne("span",{children:r.totalCountLoading}):ne(KC,{count:e})},$C=({checked:e,onCheckedChange:t})=>{let{labels:r}=$(),n=BR(),o=BR();return Ct("div",{className:"flex items-center gap-1 pl-1",children:[ne(fi,{id:n,checked:e,onCheckedChange:t,title:r.autoReadTitle,"aria-describedby":o}),ne(Co,{htmlFor:n,className:"cursor-pointer select-none text-slate-500 text-xs dark:text-slate-400",children:r.autoRead}),ne("span",{id:o,hidden:!0,children:r.autoReadTitle})]})},jC=({selectionStore:e,dailyReportItems:t,rowSetSize:r,autoMarkRead:n,userId:o,scrollOffsetRef:a})=>{let s=Ud(e);return ne(Ld,{dailyReportItems:t,rowSetSize:r,autoMarkRead:n,selectedReportHubId:s,onSelectItem:e.set,userId:o,scrollOffsetRef:a})},GC=({selectionStore:e,dailyReportItems:t,rowSetSize:r,userId:n,scrollRestoreRef:o})=>{let a=Ud(e);return ne(fd,{dailyReportItems:t,rowSetSize:r,userId:n,selectedItemId:a,onSelectItem:e.set,scrollRestoreRef:o})},YC=({tabItems:e,actions:t,searchRow:r})=>{let[n,o]=nn(OC),{labels:a}=$();return Ct(ko,{value:n,onValueChange:s=>o(MC(s)),className:FC,children:[Ct("div",{className:x(uc,Tc,Ac[n]),children:[Ct("div",{className:kC,children:[ne(Fo,{"aria-label":a.viewTabList,className:"flex flex-wrap gap-1",...Om,children:e.map(({value:s,label:i})=>ne(Ho,{value:s,children:i},s))}),t]}),r]}),e.map(({value:s,content:i})=>ne(Hn,{value:s,tabStop:!1,className:HC,children:i},s))]})},qC=Object.freeze({items:null,generation:0,revision:0,change:"none",scrollRequest:null,restoreOnRelease:!0}),XC=(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}},ZC=({answer:e,hasAnswerOnlyItems:t})=>{let{phase:r,isRevalidating:n}=xn(),o=r==="complete"&&!n,a=Kn(null);return Wd(()=>{!(o&&t)||a.current===e||(a.current=e,go())},[o,t,e]),null},Kd=({userId:e})=>{let[t,r]=nn(!1),{labels:n,renderHeader:o,showDevControls:a,apiBasePath:s,onSessionExpired:i,search:l,locale:d,sourceTypeConfigs:c}=$(),{toggleSse:p,createReport:u,refetchData:y,clearCacheAndRefetch:m}=ze(),{isSseEnabled:f,items:b,searchInvalidation:R,isReportRemoved:E,removedVersion:h}=gs(),[S]=NC(),g=DR({apiBasePath:s,invalidation:R,onSessionExpired:i}),T=CR({apiBasePath:s,locale:d,sourceTypeConfigs:c,onSessionExpired:i}),w=l===null||g.committed===null?null:g.items,[C,H]=nn(qC);C.items!==w&&H(XC(C,w,g.generation));let U=yi(()=>w===null?null:hR(w),[w]),B=yi(()=>RR(U,b,E,h),[U,b,E,h]),A=B.items,v=gp(b.length,dm()),I=w===null?v:A.length,[L,M]=nn(0),[O]=nn(()=>({preSearchTopReportId:null})),D=yi(()=>({request:C.scrollRequest,slot:O}),[C.scrollRequest,O]),V=PR({apiBasePath:s,answered:w===null?null:g.answered,shownRevision:C.revision,onSessionExpired:i}),F=Kn(0),z=Be(PC),[j]=nn(()=>kR(Zi(A))),Q=Kn(null),Ce=Kn(A),Ee=Kn(C.revision);VR(()=>{if(Ee.current===C.revision)return;Ee.current=C.revision;let ie=Ce.current,ye=j.get(),_e=ye;C.change==="enter"?(Q.current={selected:ye,items:ie},_e=Fd(ie,A,ye,!0)):C.change==="start"||C.change==="update"?_e=Fd(ie,A,ye,C.change==="start"):C.change==="restore"&&Q.current!==null&&(_e=SR(Q.current,A,ye)),(C.change==="restore"||C.change==="release")&&(Q.current=null),_e!==ye&&j.set(_e)},[C,A,j]),VR(()=>{Ce.current=A},[A]);let De=Kn(!1);Wd(()=>{let ie=Zi(A);!De.current&&ie!==null&&(De.current=!0,j.get()===null&&j.set(ie))},[A,j]);let Ge=async()=>{await y()},Je=async()=>{await m()},nt=async()=>{let ye=S.get("businessDate")||Hc();g.committed!==null&&(H(Ye=>({...Ye,restoreOnRelease:!1})),M(Ye=>Ye+1),g.release());let _e=await u(ye);j.set(_e)};Wd(()=>{localStorage.getItem("daily-report-auto-read")==="true"&&r(!0)},[]);let Y=ie=>{r(ie),localStorage.setItem("daily-report-auto-read",String(ie))},Ae=yi(()=>[{value:"list",label:n.tabList,content:ne(jC,{selectionStore:j,dailyReportItems:A,rowSetSize:I,autoMarkRead:t,userId:e,scrollOffsetRef:F})},{value:"tree",label:n.tabTree,content:ne("div",{className:BC,children:n.treeComingSoon})},{value:"detailList",label:n.tabDetailList,content:ne(GC,{selectionStore:j,dailyReportItems:A,rowSetSize:I,userId:e,scrollRestoreRef:z})}],[A,I,t,e,n,j,z]);return Ct(QC,{children:[o({title:n.title,annotation:Ct("div",{className:"flex flex-wrap items-center gap-2 leading-1",children:[ne(Mo,{}),ne(zC,{totalCount:v,hitCount:w===null?null:I}),ne("span",{children:n.debounce(pn)})]})}),ne("div",{className:Jo,children:Ct("div",{className:ea,children:[w!==null&&ne(ZC,{answer:w,hasAnswerOnlyItems:B.hasAnswerOnlyItems}),ne(va.Provider,{value:w===null?"date":"ids",children:ne(bt.Provider,{value:V,children:ne(rl.Provider,{value:D,children:ne(YC,{tabItems:Ae,searchRow:l===null?null:ne(fR,{labels:n,debounceMs:l.debounceMs,search:g,shownCount:w===null?null:I,onCommit:g.commit,onCombineChange:g.setCombine,onRelease:g.release,clearSignal:L,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(or,{size:"sm",onClick:nt,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:[ne(CC,{className:"h-3 w-3"}),ne("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:[ne("span",{className:"select-none font-bold font-mono text-amber-800 text-xs uppercase dark:text-amber-200",children:"dev"}),ne(fi,{"aria-label":n.devSseToggle,title:n.devSseToggle,checked:f,onCheckedChange:p}),Ct("div",{className:VC,"data-testid":"dev-icon-buttons",children:[ne(or,{variant:"ghost",size:"icon",onClick:Ge,className:UC,title:n.devReload,"data-testid":"dev-reload-btn",children:ne(LC,{className:"size-3"})}),ne(or,{variant:"ghost",size:"icon",onClick:Je,className:WC,title:n.devClearCache,"data-testid":"dev-clear-cache-btn",children:ne(_C,{className:"size-3"})})]})]}),ne($C,{checked:t,onCheckedChange:Y})]})})})})})]})})]})};import{Fragment as zR,jsx as ve,jsxs as hi}from"react/jsx-runtime";var r_=x(ut,hr),n_=x("flex min-h-0 flex-1 flex-col items-center justify-center gap-4 text-slate-500 dark:text-slate-300",Nt,ee),o_=x("font-bold",$n),a_=x("font-medium",$n),s_=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",ee),i_=({isFailed:e,handOver:t})=>{let{labels:r,renderHeader:n}=$(),o=$R(null),a=JC(i=>(o.current=i,t.take()&&Ur(i)&&rr([i]),()=>{o.current=null,i.contains(Ve(i))&&t.request()}),[t]),s=()=>{rr([o.current]),os()};return hi(zR,{children:[n({title:r.title,annotation:e?ve("span",{className:o_,children:r.loadErrorBadge}):hi("div",{className:"flex flex-wrap items-center gap-2 leading-none",children:[ve(Mo,{}),ve("span",{children:r.totalCountLoading}),ve("span",{children:r.debounce(pn)})]})}),ve("div",{className:Jo,children:ve("div",{className:ea,children:ve("div",{className:r_,children:ve("div",{ref:a,tabIndex:-1,...Pm,"data-testid":"daily-report-status-panel","data-phase":e?"failed":"loading",className:x(n_,e&&"border-red-200 dark:border-red-900"),children:e?hi(zR,{children:[ve("p",{className:a_,children:r.loadError}),ve("button",{type:"button","data-testid":"daily-report-load-error-retry",onClick:s,className:s_,children:r.reload})]}):ve("p",{children:r.loadingIds})})})})})]})},l_=()=>{let{labels:e}=$(),t=im();return ve(Js,{announcement:Sd(t,e),testId:"daily-report-stream-announcer"})},d_=({user:e,userId:t})=>{let{apiBasePath:r,onSessionExpired:n}=$(),o=xn(),[a]=t_(sh),s=$R(n);e_(()=>{s.current=n}),KR(()=>{bo({apiBasePath:r,userKey:t??null})},[r,t]),KR(()=>{o.phase==="auth-required"&&s.current()},[o.phase]);let i=o.hasItems||o.phase==="complete";return hi(xl,{children:[ve(l_,{}),ve(bd.Provider,{value:!1,children:ve(cd.Provider,{value:a,children:ve(_l,{user:e,userId:t,children:i?ve(Kd,{userId:t}):ve(i_,{isFailed:o.phase==="failed",handOver:a})},t??"anonymous")})})]})},c_=({config:e,...t})=>ve(Ni,{config:e,children:ve(d_,{...t})});var u_=new Set(kp.filter(e=>e!=="clearCache")),p_=({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 y=a.get(st.intent);if(typeof y=="string"&&u_.has(y))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},m_=e=>{let t=async r=>{fl();let n=await r.serverLoader(),o=n.userId;return ml({apiBasePath:e?.apiBasePath,userKey:typeof o=="string"?o:null}),n};return t.hydrate=!0,t};export{Su as DAILY_REPORT_LABEL_CATALOGS,Ii as DAILY_REPORT_LABEL_KEYS,jo as DAILY_REPORT_LATTICE_BLOCK_QUANTUM_CLASS_NAME,yS as DAILY_REPORT_LAYOUT_LATTICE_PX,Md as DAILY_REPORT_SEARCH_FILTER_FACETS,_l as DailyReportActionProvider,jn as DailyReportAttachmentIndicator,Ni as DailyReportConfigProvider,fd as DailyReportDetailList,xl as DailyReportErrorProvider,Mo as DailyReportIdsStreamStatus,Ld as DailyReportList,c_ as DailyReportPage,Kd as DailyReportResolvedContent,ml as bootstrapDailyReportIdsStreamSession,m_ as createDailyReportClientLoader,p_ as dailyReportShouldRevalidate,no as defaultDailyReportClientConfig,bo as ensureDailyReportIdsStreamSession,fl as primeDailyReportIdsStreamSession,tm as readDailyReportIdsStreamRows,_i as resolveDailyReportLabels,Zt as resolveSourceTypeConfig,as as resyncDailyReportIdsStream,eT as useDailyReportActionContext,Xl as useDailyReportComments,$ as useDailyReportConfig,Vr as useDailyReportDetail,cE as useDailyReportIdsStream,Vi as useDailyReportPrefetch,El as useDailyReportSseConnection};
|
|
1
|
+
import Mb from"lucide-react/dist/esm/icons/paperclip.js";var _b="data-daily-report-row-surface",Rt={[_b]:"",role:"gridcell"},lc="data-daily-report-active",rn="data-daily-report-scrolling",Gt=8,Lb=4,dc=Gt-Lb;var Yo="[--aqdr-lattice-block:4px] [@media(resolution:1.125dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:1.375dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:1.625dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:1.875dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:2.125dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:2.375dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:2.625dppx)]:[--aqdr-lattice-block:8px] [@media(resolution:2.875dppx)]:[--aqdr-lattice-block:8px]",fr=`${Yo} h-[calc-size(auto,round(up,size,var(--aqdr-lattice-block)))]`,yr="p-[8px]",cc="pr-[8px]",qo="contain-size contain-layout contain-style",uc="contain-strict",kt="pointer-events-none absolute size-px whitespace-nowrap opacity-0 select-none contain-layout",te="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-blue-600 dark:focus-visible:outline-blue-400",Yt="border-slate-500 placeholder:text-slate-500 dark:border-slate-500 dark:placeholder:text-slate-400",pc="-mx-[4px] px-[4px] pb-[4px] scroll-p-[4px]",Ai="scrollbar-thin [scrollbar-gutter:stable]",xi=`-m-[4px] overflow-hidden p-[4px] ${Ai}`,mc="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white",Xo="rounded-[calc(var(--radius-2xl)+8px)]",Zo="outline-none [:where([data-daily-report-keyboard-focus])_:where(:focus-visible)_&]:[&[data-daily-report-active]>:where([data-daily-report-row-surface])]:outline-2 [:where([data-daily-report-keyboard-focus])_:where(:focus-visible)_&]:[&[data-daily-report-active]>:where([data-daily-report-row-surface])]:outline-offset-4 [:where([data-daily-report-keyboard-focus])_:where(:focus-visible)_&]:[&[data-daily-report-active]>:where([data-daily-report-row-surface])]:outline-blue-600 dark:[:where([data-daily-report-keyboard-focus])_:where(:focus-visible)_&]:[&[data-daily-report-active]>:where([data-daily-report-row-surface])]:outline-blue-400 [&[aria-selected=true]>:where([data-daily-report-row-surface])]:ring-2 [&[aria-selected=true]>:where([data-daily-report-row-surface])]:ring-blue-500 [&[aria-selected=true]>:where([data-daily-report-row-surface])]:shadow-transparent forced-colors:[&[aria-selected=true]]:outline-2 forced-colors:[&[aria-selected=true]]:outline-solid forced-colors:[&[aria-selected=true]]:-outline-offset-8 forced-colors:[&[aria-selected=true]]:outline-[Highlight]",fc="[:where([data-daily-report-keyboard-focus])_&]:has-[>[data-daily-report-button]:focus-visible]:outline-2 [:where([data-daily-report-keyboard-focus])_&]:has-[>[data-daily-report-button]:focus-visible]:outline-offset-4 [:where([data-daily-report-keyboard-focus])_&]:has-[>[data-daily-report-button]:focus-visible]:outline-blue-600 dark:[:where([data-daily-report-keyboard-focus])_&]:has-[>[data-daily-report-button]:focus-visible]:outline-blue-400",Pt="rounded-2xl border border-solid border-slate-200 bg-white p-[15px] shadow-sm dark:border-slate-700 dark:bg-slate-900/70",Qo=16,nn="rounded-xl border border-dashed border-slate-300 bg-slate-50 p-[11px] text-slate-600 text-sm dark:border-slate-600 dark:bg-slate-900/40 dark:text-slate-300",yc=12,Jo="rounded-xl bg-slate-50 p-3 text-slate-700 text-sm leading-6 dark:bg-slate-800/60 dark:text-slate-200";var Rc="min-h-24",hc="flex h-6 items-center",ea="[--aqdr-hover-lift:2px] [@media(resolution:1.125dppx)]:[--aqdr-hover-lift:calc(2px/1.125)] [@media(resolution:1.25dppx)]:[--aqdr-hover-lift:calc(2px/1.25)] [@media(resolution:1.375dppx)]:[--aqdr-hover-lift:calc(2px/1.375)] [@media(resolution:1.625dppx)]:[--aqdr-hover-lift:calc(3px/1.625)] [@media(resolution:1.75dppx)]:[--aqdr-hover-lift:calc(3px/1.75)] [@media(resolution:1.875dppx)]:[--aqdr-hover-lift:calc(3px/1.875)] [@media(resolution:2.125dppx)]:[--aqdr-hover-lift:calc(4px/2.125)] [@media(resolution:2.25dppx)]:[--aqdr-hover-lift:calc(4px/2.25)] [@media(resolution:2.375dppx)]:[--aqdr-hover-lift:calc(4px/2.375)] [@media(resolution:2.625dppx)]:[--aqdr-hover-lift:calc(5px/2.625)] [@media(resolution:2.75dppx)]:[--aqdr-hover-lift:calc(5px/2.75)] [@media(resolution:2.875dppx)]:[--aqdr-hover-lift:calc(5px/2.875)] motion-safe:transition-[translate] motion-safe:duration-200 hover:border-blue-300 hover:shadow-lg motion-safe:hover:translate-y-[calc(-1*var(--aqdr-hover-lift))] [[data-daily-report-scrolling]_&]:transition-none [[data-daily-report-scrolling]_&]:hover:translate-none [[data-daily-report-scrolling]_&]:hover:shadow-sm",Ge=`flex size-6 shrink-0 items-center justify-center rounded-full hover:bg-slate-200 dark:hover:bg-slate-700 ${te}`,bc="-mx-1",Sc="flex items-center gap-1",Ye="inline-flex h-6 items-center rounded-full px-3",gc="inline-flex h-6 items-center rounded-full border border-solid px-[11px]",Ec="inline-flex h-6 shrink-0 items-center rounded px-2 font-semibold text-xs tracking-wide",mr="size-4",He={starOff:`${mr} text-slate-500 dark:text-slate-400 forced-colors:text-[CanvasText]`,starOn:`${mr} fill-yellow-400 text-yellow-700 dark:text-yellow-400 forced-colors:fill-[Highlight] forced-colors:text-[Highlight]`,read:`${mr} text-blue-600 dark:text-blue-400`,delete:`${mr} text-slate-500 hover:text-red-600 dark:text-slate-400 dark:hover:text-red-400`,deletePending:`${mr} text-red-600 dark:text-red-400`,edit:`${mr} text-slate-500 dark:text-slate-400`},Dc="h-6 w-10 border-4 border-solid",wc="size-4 data-[state=checked]:translate-x-4",Tc="data-[state=unchecked]:bg-slate-500 data-[state=checked]:bg-blue-600 dark:data-[state=unchecked]:bg-slate-400 dark:data-[state=checked]:bg-blue-400 forced-colors:border-[ButtonText] forced-colors:data-[state=checked]:bg-[Highlight]",Ac="bg-white dark:bg-slate-950 forced-colors:bg-[ButtonText]";var xc="rounded-xl bg-slate-100 p-1 dark:bg-slate-800",vc="rounded-xl border border-solid p-[3px]",Ic="relative inline-flex h-6 items-center justify-center whitespace-nowrap rounded-lg px-2 font-medium text-slate-600 text-xs dark:text-slate-300 data-[state=active]:bg-white data-[state=active]:text-slate-900 dark:data-[state=active]:bg-slate-950 dark:data-[state=active]:text-slate-100 after:pointer-events-none after:absolute after:right-[var(--radius-lg)] after:bottom-0 after:left-[var(--radius-lg)] after:h-[2px] after:rounded-full after:forced-color-adjust-none data-[state=active]:after:bg-blue-600 dark:data-[state=active]:after:bg-blue-400 forced-colors:data-[state=active]:after:bg-[Highlight] disabled:pointer-events-none disabled:opacity-50",Nb="supports-[margin-left:round(down,1px,1px)]:ml-[max(0px,round(down,calc((100%-72rem)/2),var(--aqdr-lattice-block)))]",Ob="bg-slate-50 dark:bg-slate-950",ht="flex min-h-0 flex-1 flex-col",ta=`${ht} ${Ob}`,ra=`${ht} mx-auto w-full max-w-6xl ${Yo} px-[var(--aqdr-lattice-block)] pt-[var(--aqdr-lattice-block)] ${Nb}`,Cc=`relative z-[1] flex shrink-0 flex-col ${fr}`,_c="flex grow flex-col justify-between",Lc="grid min-w-0 grid-cols-[max-content_minmax(0,1fr)_max-content] grid-rows-[minmax(2rem,auto)_auto] items-end",Nc="grid min-w-0 grid-cols-1 gap-2 sm:grid-cols-[minmax(0,2fr)_minmax(0,1fr)_minmax(0,3fr)]",Oc="m-0 min-w-0 border-0 p-0",Mc="mb-1 p-0 text-slate-700 text-xs leading-4 dark:text-slate-200",kc="m-0 border-0 p-0 [font:inherit] bg-yellow-200 text-slate-900 underline decoration-1 underline-offset-2 data-[daily-report-search-mark=reading]:decoration-dotted dark:bg-yellow-800 dark:text-yellow-50 forced-colors:forced-color-adjust-none forced-colors:bg-[Mark] forced-colors:text-[MarkText]",jn="text-red-700 dark:text-red-400",Pc="bg-white dark:bg-slate-900",na=`min-h-0 flex-1 overflow-clip contain-size ${Yo}`,oa="flex h-full flex-col contain-size contain-layout contain-style",Fc="relative inline-block whitespace-nowrap tabular-nums",aa="invisible grid",Lr="col-start-1 row-start-1",Hc="absolute inset-0 contain-size contain-layout contain-style",sa="[&_.aqvs-no-items-text]:py-4 [&_.aqvs-no-items-text]:text-slate-500 dark:[&_.aqvs-no-items-text]:text-slate-400",Bc="border-slate-200/80 bg-slate-100/60 dark:border-slate-800 dark:bg-slate-900/60 dark:text-slate-200",Vc="ml-[8px]",Uc={list:"mr-[8px] [@media(max-width:639px)]:mr-[16px] @max-[460px]/views:mr-[16px]",tree:"mr-[8px]",detailList:"mr-[16px]"},Nr="font-semibold text-slate-500 text-xs uppercase tracking-wide dark:text-slate-400",qt=`m-0 ${Nr}`,Xt="text-balance wrap-anywhere [word-break:auto-phrase]",Wc="[--aqdr-scroll-bar-thumb:var(--color-slate-500)] [--aqdr-scroll-bar-track:var(--color-slate-100)] dark:[--aqdr-scroll-bar-track:var(--color-slate-900)]",ia=`${Wc} [&_.aqvs-scrollbar]:bg-(--aqdr-scroll-bar-track) [&_.aqvs-scrollbar-track]:bg-(--aqdr-scroll-bar-track) [&_.aqvs-scrollbar-thumb]:bg-(--aqdr-scroll-bar-thumb) [&_.aqvs-scrollbar-thumb[data-thumb-state=hover]]:bg-slate-600 [&_.aqvs-scrollbar-thumb[data-thumb-state=dragging]]:bg-slate-700 [&_.aqvs-scrollbar-thumb[data-thumb-state=disabled]]:bg-(--aqdr-scroll-bar-thumb) [&_.aqvs-scrollbar-arrow-button]:bg-(--aqdr-scroll-bar-track) [&_.aqvs-scrollbar-arrow-button]:text-slate-600 [&_.aqvs-scrollbar-arrow-button:enabled:hover]:bg-slate-200 dark:[&_.aqvs-scrollbar-thumb[data-thumb-state=hover]]:bg-slate-400 dark:[&_.aqvs-scrollbar-thumb[data-thumb-state=dragging]]:bg-slate-300 dark:[&_.aqvs-scrollbar-arrow-button]:text-slate-400 dark:[&_.aqvs-scrollbar-arrow-button:enabled:hover]:bg-slate-800 forced-colors:[&_.aqvs-scrollbar-thumb]:bg-[CanvasText] forced-colors:[&_.aqvs-scrollbar-thumb[data-thumb-state=hover]]:bg-[Highlight] forced-colors:[&_.aqvs-scrollbar-thumb[data-thumb-state=dragging]]:bg-[Highlight] forced-colors:[&_.aqvs-scrollbar-thumb[data-thumb-state=disabled]]:bg-[GrayText] forced-colors:[&_.aqvs-scrollbar-track]:outline-1 forced-colors:[&_.aqvs-scrollbar-track]:outline-solid forced-colors:[&_.aqvs-scrollbar-track]:-outline-offset-1 forced-colors:[&_.aqvs-scrollbar-track]:outline-[CanvasText]`,la="[--aqvs-focus-ring-color:var(--color-blue-600)] dark:[--aqvs-focus-ring-color:var(--color-blue-400)]",Kc=`${Wc} [scrollbar-color:var(--aqdr-scroll-bar-thumb)_var(--aqdr-scroll-bar-track)]`;import{jsx as zc,jsxs as Pb}from"react/jsx-runtime";var kb=2,Gn=({id:e,count:t,label:r})=>t<=0?null:Pb("span",{id:e,className:"inline-flex h-6 shrink-0 items-center gap-1 text-slate-500 dark:text-slate-400",title:`${r}: ${t}`,role:"img","aria-label":`${r}: ${t}`,"data-testid":"daily-report-attachment-indicator","data-attachment-count":t,children:[zc(Mb,{className:mr,"aria-hidden":"true"}),t>=kb&&zc("span",{className:"font-semibold text-xs leading-4",children:t})]});import{useCallback as je,useEffect as Qr,useLayoutEffect as iv,useMemo as Nd,useRef as mt,useState as ko}from"react";var Or=Object.freeze({text:"",runs:Object.freeze([])}),bt=e=>e.length===0?Or:{text:e,runs:[{displayStart:0,displayEnd:e.length,sourceStart:0,sourceEnd:e.length}]},$c=(e,t,r)=>t>=r?Or:{text:e.slice(t,r),runs:[{displayStart:0,displayEnd:r-t,sourceStart:t,sourceEnd:r}]},vi=(e,t,r,n)=>{let o=t-e;return o!==n-r||o===1?[{displayStart:e,displayEnd:t,sourceStart:r,sourceEnd:n}]:Array.from({length:o},(a,s)=>({displayStart:e+s,displayEnd:e+s+1,sourceStart:r,sourceEnd:n}))},Ii=e=>e.displayEnd-e.displayStart===e.sourceEnd-e.sourceStart,Yn=(e,t,r)=>{if(t>=r)return Or;if(t===0&&r===e.text.length)return e;let n=[];for(let o of e.runs){let a=Math.max(o.displayStart,t),s=Math.min(o.displayEnd,r);if(!(a>=s))if(Ii(o)){let i=o.sourceStart+(a-o.displayStart);n.push({displayStart:a-t,displayEnd:s-t,sourceStart:i,sourceEnd:i+(s-a)})}else n.push(...vi(a-t,s-t,o.sourceStart,o.sourceEnd))}return{text:e.text.slice(t,r),runs:n}},on=e=>{if(e.length===1)return e[0];let t="",r=[];for(let n of e){let o=t.length;for(let a of n.runs)r.push({...a,displayStart:a.displayStart+o,displayEnd:a.displayEnd+o});t+=n.text}return t.length===0?Or:{text:t,runs:r}},Ci=e=>{let t=e.text.trimEnd().length,r=Math.min(t,e.text.length-e.text.trimStart().length);return Yn(e,r,t)},Rr=e=>typeof e=="string"?Ci(bt(e)):Or,da=(e,t,r)=>{if(r.includes("$"))throw new Error(`[daily-report] replaceDisplayText: the replacement must be literal text without "$"; got ${JSON.stringify(r)}`);let n=t.global?[...e.text.matchAll(t)]:[t.exec(e.text)].filter(d=>d!==null);if(n.length===0)return e;let o="",a=[],s=0,i=(d,c)=>{if(d>=c)return;let u=o.length-d;for(;s<e.runs.length&&e.runs[s].displayEnd<=d;)s+=1;for(let p=s;p<e.runs.length&&e.runs[p].displayStart<c;p++){let f=e.runs[p],m=Math.max(f.displayStart,d),y=Math.min(f.displayEnd,c);if(!(m>=y))if(Ii(f)){let g=f.sourceStart+(m-f.displayStart);a.push({displayStart:m+u,displayEnd:y+u,sourceStart:g,sourceEnd:g+(y-m)})}else a.push(...vi(m+u,y+u,f.sourceStart,f.sourceEnd))}o+=e.text.slice(d,c)},l=0;for(let d of n)i(l,d.index),o+=r,l=d.index+d[0].length;return i(l,e.text.length),o.length===0?Or:{text:o,runs:a}},Fb=e=>{let t=[],r=0,n="",o=0;for(let a of e){let s=o+a.length;if(o===r)n=a.normalize("NFC");else{let i=e.slice(r,s).normalize("NFC"),l=i.slice(n.length);i.startsWith(n)&&(l===a||l===a.normalize("NFC"))?(t.push({start:r,end:o,shown:n}),r=o,n=l):n=i}o=s}return t.push({start:r,end:o,shown:n}),t},Hb=e=>{let t=[],r=0;for(let a of e)t.push(r),r+=a.length;t.push(e.length);let n=[],o=0;for(;o<t.length-1;){let a=t[o],s=e.slice(a).normalize("NFC"),i=o+1;for(;i<t.length-1;){let d=e.slice(a,t[i]).normalize("NFC");if(s.startsWith(d)&&d+e.slice(t[i]).normalize("NFC")===s)break;i+=1}let l=t[i];n.push({start:a,end:l,shown:e.slice(a,l).normalize("NFC")}),o=i}return n},jc=e=>{let t=e.normalize("NFC");if(t===e)return bt(e);let r=Fb(e),n=r.map(s=>s.shown).join("")===t?r:Hb(e),o=[],a=0;for(let{start:s,end:i,shown:l}of n){let d=a+l.length;l===e.slice(s,i)?o.push({displayStart:a,displayEnd:d,sourceStart:s,sourceEnd:i}):o.push(...vi(a,d,s,i)),a=d}return{text:t,runs:o}},Gc=(e,t)=>{let r=[],n=(a,s,i)=>{let l=r.length-3;l>=0&&r[l+1]===a&&r[l+2]===i?r[l+1]=s:r.push(a,s,i)},o=t.length/3;for(let a of e.runs){let s=0,i=o;for(;s<i;){let d=s+i>>>1;t[d*3+1]<=a.sourceStart?s=d+1:i=d}if(Ii(a)){for(let d=s;d<o&&t[d*3]<a.sourceEnd;d++){let c=Math.max(t[d*3],a.sourceStart),u=Math.min(t[d*3+1],a.sourceEnd);n(a.displayStart+(c-a.sourceStart),a.displayStart+(u-a.sourceStart),t[d*3+2])}continue}let l=Number.POSITIVE_INFINITY;for(let d=s;d<o&&t[d*3]<a.sourceEnd;d++)l=Math.min(l,t[d*3+2]);l!==Number.POSITIVE_INFINITY&&n(a.displayStart,a.displayEnd,l)}return r},Yc=String.raw`<br\s*\/?\s*>`,qc=String.raw`<\/p>`,Xc="<[^>]+>",Bb=new RegExp(String.raw`(${Yc}|${qc}|\r?\n)|${Xc}`,"gi"),Zc=new RegExp(Yc,"gi"),Vb=new RegExp(qc,"gi"),Ub=new RegExp(Xc,"g"),Qc=(e,t)=>{if(!e)return[];let r=[],n=[],o=0,a=()=>{let s=on(n);n=[];let i=Ci({text:s.text.replace(/ /g," "),runs:s.runs});i.text.length>0&&r.push(i)};for(let s of e.matchAll(Bb))if(n.push($c(e,o,s.index)),o=s.index+s[0].length,s[1]!==void 0&&(a(),r.length===t))return r;return n.push($c(e,o,e.length)),a(),r},Jc=e=>da(da(da(bt(e),Zc,`
|
|
2
|
+
`),Vb,`
|
|
3
|
+
`),Ub,""),eu=e=>e?Ci(da(bt(e),Zc,`
|
|
4
|
+
`)):Or;var Wb=Object.freeze({text:"-",runs:Object.freeze([])}),Be=e=>{let t=Rr(e);return t.text===""?Wb:t},hr=e=>Be(e).text,Ae=e=>{if(!e)return"-";if(typeof e!="string")return e instanceof Date?Ae(e.toISOString()):String(e);let t=e.trim();if(t==="")return"-";let r=t.match(/^(\d{4})[-/](\d{2})[-/](\d{2})$/);if(r)return`${r[1]}-${r[2]}-${r[3]}`;let n=new Date(t);if(Number.isNaN(n.getTime()))return t;let o=n.getFullYear(),a=String(n.getMonth()+1).padStart(2,"0"),s=String(n.getDate()).padStart(2,"0");if(t.includes(":")||t.includes("T")){let l=String(n.getHours()).padStart(2,"0"),d=String(n.getMinutes()).padStart(2,"0"),c=String(n.getSeconds()).padStart(2,"0");return`${o}-${a}-${s}T${l}:${d}:${c}`}return`${o}-${a}-${s}`};import{createContext as ng,useCallback as og,useContext as op,useEffect as ag,useState as sg}from"react";import{z as lo}from"zod/v3";var Kb=/^(\d{4})([-/])(\d{2})\2(\d{2})$/;var ca=e=>e<10?`0${e}`:`${e}`,zb=e=>{if(Number.isNaN(e.getTime()))return null;let t=e.getFullYear(),r=ca(e.getMonth()+1),n=ca(e.getDate());return`${t}-${r}-${n}`},tu=e=>{let t=Kb.exec(e);if(t===null)return null;let[,r,,n,o]=t,a=Number(r),s=Number(n),i=Number(o);if(a<1)return null;let l=new Date(0);return l.setUTCFullYear(a,s-1,i),l.getUTCFullYear()!==a||l.getUTCMonth()!==s-1||l.getUTCDate()!==i?null:`${r}-${n}-${o}`},qn=e=>tu(e)===e,ru=(e=new Date)=>{if(Number.isNaN(e.getTime()))throw new Error("[daily-report] resolveTodayBusinessDateKey needs a valid Date");return`${e.getFullYear()}-${ca(e.getMonth()+1)}-${ca(e.getDate())}`},Xn=e=>e==null?null:e instanceof Date?zb(e):tu(e);import{z as $b}from"zod/v3";var St=e=>Number.isSafeInteger(e)&&e>0,at=$b.number().int().positive().max(Number.MAX_SAFE_INTEGER);import{z as de}from"zod/v3";var ua=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}|-[1-9][0-9]{0,15})$/;var Mr=Symbol("daily-report wire mismatch"),Ft=(e,t,r)=>(e.issues.push({...r,path:t===null?[...e.path]:[...e.path,t]}),Mr),su=e=>e===null?"null":Array.isArray(e)?"array":Number.isNaN(e)?"nan":typeof e,kr=(e,t)=>({code:"invalid_type",expected:e,received:su(t)}),jb=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),Gb=e=>{let t=0;for(let r in e)t+=1;return t},nu=(e,t,r)=>{let n={};for(let o=0;o<r;o+=1){let a=t[o];a in e&&(n[a]=e[a])}return n},an=e=>{let t=Object.keys(e),r=Object.values(e);return(n,o)=>{if(!jb(n))return Ft(o,null,kr("object",n));let a=null,s=!1,i=0;for(let l=0;l<t.length;l+=1){let d=t[l],c=n[d];c!==void 0&&(i+=1);let u=r[l](c,o,d);if(u===Mr){s=!0;continue}a===null&&u!==c&&(a=nu(n,t,l)),a!==null&&(u!==void 0||d in n)&&(a[d]=u)}return s?Mr:a!==null?a:Gb(n)===i?n:nu(n,t,t.length)}},Zn=e=>(t,r,n)=>{r.path.push(n);let o=e(t,r);return r.path.pop(),o},Qn=e=>(t,r,n)=>{if(!Array.isArray(t))return Ft(r,n,kr("array",t));r.path.push(n);let o=t,a=!1;for(let s=0;s<t.length;s+=1){let i=t[s],l=e(i,r,s);l===Mr?a=!0:l!==i&&(o===t&&(o=t.slice()),o[s]=l)}return r.path.pop(),a?Mr:o},Se=(e,t,r)=>e==null||typeof e=="string"?e:Ft(t,r,kr("string",e)),ou=(e,t,r)=>e===null||typeof e=="string"?e:Ft(t,r,kr("string",e)),au=(e,t,r)=>typeof e=="string"?e:Ft(t,r,kr("string",e)),Yb=(e,t,r)=>e===null||typeof e=="number"&&!Number.isNaN(e)?e:Ft(t,r,kr("number",e)),Jn=(e,t,r)=>typeof e=="boolean"?e:Ft(t,r,kr("boolean",e)),_i=(e,t,r)=>{if(typeof e=="number"&&St(e))return e;for(let{message:n,path:o,...a}of at.safeParse(e).error.issues)Ft(t,r,a);return Mr},iu={present:!0,absent:!0,unknown:!0},lu=Object.keys(iu),qb=lu.map(e=>`'${e}'`).join(" | "),Xb=(e,t,r)=>typeof e!="string"?Ft(t,r,{code:"invalid_type",expected:qb,received:su(e)}):Object.hasOwn(iu,e)?e:Ft(t,r,{code:"invalid_enum_value",received:e,options:[...lu]}),du=an({name:Se,affiliation:Se}),cu=an({name:Se,text:Se,color:Se}),uu=an({id:_i,name:Se,color:Se}),pu=an({id:_i,userId:Se,userName:Se,content:Se,createdAt:Se,isMine:Jn}),Zb=an({id:au,fileName:au,fileType:ou,fileSize:Yb,createdAt:ou,state:Xb,hasThumbnail:Jn}),Qb=an({reportHubId:_i,date:Se,createdAt:Se,author:Se,userId:Se,sourceType:Se,employeeName:Se,updatedBy:Se,updatedAt:Se,category:Se,creationCategory:Se,visitTimeFrom:Se,visitTimeTo:Se,customerName:Se,interviewers:Qn(Zn(du)),subject:Se,content:Se,externalComments:Qn(Zn(cu)),isRead:Jn,isStarred:Jn,isDraft:Jn,labels:Qn(Zn(uu)),postedComments:Qn(Zn(pu)),attachments:Qn(Zn(Zb))}),eo=(e,t)=>{let r={path:[],issues:[]},n=e(t,r);return n===Mr?{ok:!1,issues:r.issues}:{ok:!0,value:n}},mu=e=>eo(Qb,e),fu=e=>eo(du,e),yu=e=>eo(cu,e),Ru=e=>eo(uu,e),hu=e=>eo(pu,e);var bu=["auth-required","forbidden","resync-required"],Li=15e3,Su="lastEventId",Jb=/^\d{1,15}-\d{1,15}$/,pa=e=>Jb.test(e),to=e=>de.unknown().transform((t,r)=>{let n=e(t);if(n.ok)return n.value;for(let o of n.issues)r.addIssue({...o,fatal:!0});return de.NEVER}),ML=to(fu),kL=to(yu),PL=to(Ru),Ni=to(hu),br=to(mu),ro=de.string().regex(ua),gu=de.object({type:de.literal("connected")}),Eu=de.object({type:de.literal("status-update"),reportHubId:at,statusType:de.enum(["star","read"]),value:de.boolean(),clientTempId:ro}),Oi=de.string(),Du=de.object({type:de.literal("comment-add"),reportHubId:at,comment:Ni,clientTempId:ro,sourceType:Oi}),wu=de.object({type:de.literal("comment-delete"),reportHubId:at,commentId:at,clientTempId:ro,sourceType:Oi}),ma={recipientRawUserId:at.optional()},eS=Eu.extend(ma),tS=Du.extend(ma),rS=wu.extend(ma),sn={reportHubId:at,report:br,clientTempId:ro},Mi={...ma,actorRawUserId:at},ki={viewerIsActor:de.boolean()},nS=de.object({type:de.literal("report-create"),...sn,...ki}),oS=de.object({type:de.literal("report-update"),...sn,...ki}),aS=de.object({type:de.literal("report-publish"),...sn,...ki}),sS=de.object({type:de.literal("report-create"),...sn,...Mi}),iS=de.object({type:de.literal("report-update"),...sn,...Mi}),lS=de.object({type:de.literal("report-publish"),...sn,...Mi}),Tu=de.object({type:de.literal("report-delete"),reportHubId:at,clientTempId:ro,sourceType:Oi}),Au=de.discriminatedUnion("type",[gu,Eu,Du,wu,nS,oS,aS,Tu]),FL=de.discriminatedUnion("type",[gu,eS,tS,rS,sS,iS,lS,Tu]);var fa="ids-columns",Pi=e=>{if(typeof e!="object"||e===null)return"unknown";let{kind:t}=e;return t==="chunk"?"chunk":t==="error"?"error":"unknown"},dS=e=>typeof e=="number"&&St(e),cS=e=>{if(typeof e!="object"||e===null)return!1;let{businessDate:t,reportHubId:r}=e;return(t===null||typeof t=="string")&&typeof r=="number"},uS=4,pS=e=>{let t=uS;for(;2**t<e*2;)t+=1;let r=new Float64Array(2**t),n=r.length-1,o=32-t;return a=>{let s=Math.imul(a|0,2654435761)>>>o;for(;;){let i=r[s];if(i===0)return r[s]=a,!0;if(i===a)return!1;s=s+1&n}}},mS=/^[0-9a-f]{1,16}$/,fS=e=>St(e.reportHubId)&&(e.businessDate===null||qn(e.businessDate)),yS=e=>typeof e=="string"&&mS.test(e),RS=Object.freeze({kind:"absent"}),hS=Object.freeze({kind:"value",value:null}),bS=e=>e===void 0?RS:e===null?hS:typeof e=="string"&&pa(e)?{kind:"value",value:e}:{kind:"malformed",received:e},xu=e=>{if(Pi(e)!=="chunk")return null;let{ids:t,dates:r,counts:n,sourceTypes:o,sources:a,isLast:s,nextCursor:i,total:l,snapshot:d,provisional:c,restarted:u,streamAnchor:p}=e;if(typeof s!="boolean"||!(i===null||cS(i))||!(Array.isArray(t)&&Array.isArray(r)&&Array.isArray(n)&&Array.isArray(o)&&Array.isArray(a))||r.length!==n.length||a.length!==t.length)return null;for(let R of o)if(!(R===null||typeof R=="string"))return null;let f=pS(t.length),m=0,y=null,g=0;for(let R=0;R<r.length;R++){let D=r[R],b=n[R];if(!(D===null||typeof D=="string"&&qn(D))||R>0&&D===r[R-1]||typeof b!="number"||!Number.isSafeInteger(b)||b<1)return null;let h=m+b;if(h>t.length)return null;for(;m<h;m++){let S=t[m],w=a[m];if(!(dS(S)&&f(S))||typeof w!="number"||!Number.isSafeInteger(w)||w<0||w>=o.length||m>0&&!SS(y,g,D,S))return null;y=D,g=S}}return m!==t.length?null:{rows:e,isLast:s,resumeCursor:i!==null&&fS(i)?i:null,total:typeof l=="number"&&Number.isSafeInteger(l)&&l>=0?l:null,snapshot:yS(d)?d:null,provisional:c===!0,restarted:u===!0,streamAnchor:bS(p)}},vu=(e,t)=>{let{ids:r,dates:n,counts:o,sourceTypes:a,sources:s}=e,i=0;for(let l=0;l<n.length;l++){let d=n[l];for(let c=i+o[l];i<c;i++){let u=a[s[i]];t(r[i],d,u===null?void 0:u)}}};var Iu=(e,t,r,n)=>e!==r?e===null?1:r===null||e>r?-1:1:n-t,SS=(e,t,r,n)=>Iu(e,t,r,n)<0,Cu=(e,t)=>Iu(e.businessDate,e.reportHubId,t.businessDate,t.reportHubId);var Ve=Object.freeze({businessDate:"business-date",idsStream:fa,report:"report",search:"search",reports:"reports",searchMarks:"search-marks",searchFacets:"search-facets",action:"action"}),Le=Object.freeze({businessDate:"businessDate",reportHubId:"reportHubId",searchQuery:"q",searchCombine:"combine",searchAuthor:"author",searchSourceType:"sourceType",searchCustomer:"customer",reportIds:"ids",forceRefresh:"forceRefresh",cursorReportHubId:"cursor_report_hub_id",cursorBusinessDate:"cursor_business_date",cursorSnapshot:"cursor_snapshot"});var _u=(e,t,r=console)=>{let n=o=>typeof o=="string"?[`${t} ${o}`]:[t,o];return{debug:(o,...a)=>{e<=0&&r.debug(...n(o),...a)},info:(o,...a)=>{e<=1&&r.info(...n(o),...a)},warn:(o,...a)=>{e<=2&&r.warn(...n(o),...a)},error:(o,...a)=>{e<=3&&r.error(...n(o),...a)}}},$L=Object.freeze(["API","Action","Attachment","ExternalSource","Isolation","Reads","Refresh","Search","SSE","SseReader","Server","Service","Streams","Visibility","ActionProvider","DetailLoader","IdsStream","SseConnection"]),Lu=e=>`[DailyReport${e}]`,gt=(e,t,r)=>e===void 0?_u(t,Lu(r)):_u(0,Lu(r),e);var Zt=Object.freeze({maxQueryLength:500,maxSets:16,maxWordsPerSet:16,maxWords:32,maxWordLength:100,maxDetailIds:100}),gS=2,no=2,ln=Object.freeze({word:0,reading:1}),oo=e=>e===ln.word||e===ln.reading;var Qt=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},ES=2*(1+gS),DS=e=>{if(!Array.isArray(e)||e.length===0||e.length>ES)return null;let t=[],r=new Set;for(let n of e){if(!Qt(n))return null;let{text:o,tier:a}=n;if(typeof o!="string"||o.length===0||o.length>Zt.maxWordLength||r.has(o)||!oo(a)||(t.length===0?a!==ln.word:a<t[t.length-1].tier))return null;r.add(o),t.push({text:o,tier:a})}return t},wS=(e,t)=>{if(!Array.isArray(e))return null;if(!t)return e.length===0?[]:null;if(e.length===0||e.length>Zt.maxSets)return null;let r=[],n=0;for(let o of e){if(!Array.isArray(o)||o.length===0||o.length>Zt.maxWordsPerSet||(n+=o.length,n>Zt.maxWords))return null;let a=[];for(let s of o){let i=DS(s);if(i===null)return null;a.push(i)}r.push(a)}return r},Nu=(e,t)=>{if(!Qt(e))return null;let{ids:r,businessDates:n,sourceTypes:o}=e;if(!(Array.isArray(r)&&Array.isArray(n)&&Array.isArray(o))||n.length!==r.length||o.length!==r.length)return null;let a=wS(e.words,t);if(a===null)return null;let s=[];for(let i=0;i<r.length;i++){let l=r[i],d=n[i],c=o[i];if(typeof l!="number"||!St(l)||d!==null&&(typeof d!="string"||!qn(d))||typeof c!="string"||c.length===0)return null;s.push({reportHubId:l,businessDate:d,sourceType:c})}return{items:s,words:a}};var ya=e=>e.issues.map(t=>`${t.path.length===0?"(root)":t.path.join(".")}: ${t.code}`).join("; ");var TS=e=>typeof e=="string"?JSON.stringify(e):typeof e=="number"||typeof e=="boolean"||e===null||e===void 0?String(e):Array.isArray(e)?"array":typeof e,ke=(e,t,r)=>new RangeError(`[daily-report] ${e} must be ${t}; got ${TS(r)}`),Ou=(e,t)=>new TypeError(`[daily-report] ${e} must be ${t}`),ao=(e,t,r)=>ke(e,`one of ${r.map(n=>JSON.stringify(n)).join(", ")}`,t),tt=(e,t,r,n)=>{if(typeof t=="number"&&Number.isSafeInteger(t)&&t>=r&&(n===void 0||t<=n))return t;throw ke(e,n===void 0?`an integer >= ${r}`:`an integer from ${r} to ${n}`,t)};var Ra=({hasListener:e,batchSize:t,inFlightBound:r,send:n})=>{tt("createIdBatchScheduler: batchSize",t,1),tt("createIdBatchScheduler: inFlightBound",r,1);let o=new Set,a=new Map,s=!1,i=()=>{let c=[],u=[...o];for(let p=u.length-1;p>=0&&c.length<t;p--){let f=u[p];o.delete(f),e(f)&&c.push(f)}return c.reverse()},l=c=>{let u=new AbortController;a.set(u,c);let p=()=>{a.delete(u),d()},f=m=>{p(),u.signal.aborted&&m===u.signal.reason||globalThis.reportError(m)};n(c,u.signal).then(p,f)},d=()=>{for(s=!1;a.size<r;){let c=i();if(c.length===0)return;l(c)}};return{enqueue:c=>{o.delete(c),o.add(c),!s&&(s=!0,queueMicrotask(d))},isWanted:c=>o.has(c),release:c=>{let u=[];o.delete(c)&&u.push(c);for(let[p,f]of a)p.signal.aborted||!f.includes(c)||f.some(e)||(p.abort(),u.push(...f));return u},dispose:()=>{let c=[...o];o.clear();for(let[u,p]of a)u.signal.aborted||(u.abort(),c.push(...p));return c}}};var AS=/^[1-9][0-9]*$/,xS=/^(?:0|[1-9][0-9]*)$/,Mu=e=>{if(e===null||!AS.test(e))return null;let t=Number(e);return St(t)?t:null},dn=e=>{if(e===null||!xS.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null};var vS=2**31-1,ha=(e,t)=>{let r=tt("holdDelayMsOf: maxDelayMs",t,0,vS),n=dn(e.headers.get("Retry-After"));if(n===null)return null;let o=n*1e3;return o<=r?o:null};var ku={request:e=>requestAnimationFrame(e),cancel:e=>cancelAnimationFrame(e)},Pu=({frames:e,handOn:t})=>{let r=new Set,n=0,o=0,a=null,s=!1,i=()=>{a!==null||s||(s=!0,queueMicrotask(l))},l=()=>{s=!1,!(a!==null||r.size===0)&&(o=n,a=e.request(d))},d=()=>{if(a=null,n!==o){o=n,a=e.request(d);return}let c=[...r];r.clear(),t(c)};return{enter:c=>{r.add(c),n+=1,i()},leave:c=>{r.delete(c),n+=1,r.size===0&&a!==null&&(e.cancel(a),a=null)},holds:c=>r.has(c),dispose:()=>{a!==null&&e.cancel(a),a=null;let c=[...r];return r.clear(),c}}};import{resolveVirtualScrollLocale as BS}from"@aiquants/virtualscroll";import{createContext as VS,useMemo as US}from"react";import{useContext as IS}from"react";var Ct=(e,t,r)=>{let n=IS(e);if(n===null)throw new Error(`[daily-report] ${t} must be used within a ${r}`);return n};import{resolveVirtualScrollLabels as CS,resolveVirtualScrollLocale as _S,VIRTUAL_SCROLL_LABEL_CATALOGS as Fu,VIRTUAL_SCROLL_LABEL_KEYS as Bi}from"@aiquants/virtualscroll";var Vu=["id","businessDate","author","visitTime","createdAt","updatedAt","updatedBy","category","creationCategory","customer","subject","content","interviewers","comments","attachments","attachmentMissing","attachmentDownload","attachmentThumbnailUnavailable","tabArticle","tabRelations","reportTabList","relationsEmpty","title","listKeyboardHelp","tabList","tabTree","tabDetailList","viewTabList","treeComingSoon","totalCountLoading","createReport","createReportTitle","devControls","devSseToggle","devReload","devClearCache","autoRead","autoReadTitle","loadErrorBadge","loadError","reload","loadingIds","streamFailed","streamRetry","streamRevalidating","selectPrompt","loading","reportNotFound","contentEmpty","contentEmptyPreview","confirmDelete","starAdd","starRemove","markRead","markUnread","deleteReport","edit","resizeHandle","close","formTitle","formTitlePlaceholder","formContent","formContentPlaceholder","formCancel","formSave","formPublish","commentPlaceholder","commentSend","commentDelete","commentDeleteConfirm","unknownUser","sourceInternal","searchInputLabel","searchPlaceholder","searchCombineAnd","searchCombineOr","searchCombineAndTitle","searchCombineOrTitle","searchClear","searching","searchNoHits","searchSyntaxHelp","searchMatchOutsideView","searchMatchOutsideViewDescription","searchReadingMarkDescription","searchFilterSourceType","searchFiltersLoading","searchFiltersTooMany","searchFilterUnavailable"],Uu=["totalCount","debounce","streamProgressCount","streamProgressRatio","streamRetrying","reportLoadFailed","reportSummaryLoadFailed","interviewerWithAffiliation","operationFailed","noticeRepeated","rowState","rowEditingState","listRowPosition","listRowPositionInUnknownTotal","searchHitCount","searchFailed","searchMatchedKeywords","searchMatchedKeywordsDescription","searchFieldMatched","searchFieldMatchedByReading","searchFiltersToggle","searchFiltersFailed"],Fi=[...Bi,...Vu,...Uu];var Hu=Object.freeze({en:"en-US",ja:"ja-JP"}),LS=Object.freeze({en:new Intl.NumberFormat(Hu.en),ja:new Intl.NumberFormat(Hu.ja)}),ge=(e,t)=>LS[e].format(t),NS=Object.freeze({create:"\u65E5\u5831\u306E\u4F5C\u6210",update:"\u65E5\u5831\u306E\u4FDD\u5B58",publish:"\u65E5\u5831\u306E\u516C\u958B",delete:"\u65E5\u5831\u306E\u524A\u9664",addComment:"\u30B3\u30E1\u30F3\u30C8\u306E\u6295\u7A3F",deleteComment:"\u30B3\u30E1\u30F3\u30C8\u306E\u524A\u9664",toggleStar:"\u30B9\u30BF\u30FC\u306E\u66F4\u65B0",toggleRead:"\u65E2\u8AAD\u72B6\u614B\u306E\u66F4\u65B0"}),OS=Object.freeze({create:"create the report",update:"save the report",publish:"publish the report",delete:"delete the report",addComment:"post the comment",deleteComment:"delete the comment",toggleStar:"update the star",toggleRead:"update the read state"}),MS=Object.freeze({invalid:"\u691C\u7D22\u8A9E\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093",busy:"\u6DF7\u307F\u5408\u3063\u3066\u3044\u307E\u3059\u3002\u5C11\u3057\u5F85\u3063\u3066\u304B\u3089\u3082\u3046\u4E00\u5EA6\u691C\u7D22\u3057\u3066\u304F\u3060\u3055\u3044",unavailable:"\u691C\u7D22\u3092\u4F7F\u3048\u307E\u305B\u3093",failed:"\u691C\u7D22\u306B\u5931\u6557\u3057\u307E\u3057\u305F"}),kS=Object.freeze({invalid:"The search text is not valid",busy:"The server is busy. Please search again in a moment",unavailable:"Search is not available",failed:"The search failed"}),PS=Object.freeze({busy:"\u6DF7\u307F\u5408\u3063\u3066\u3044\u308B\u305F\u3081\u7D5E\u308A\u8FBC\u307F\u306E\u5019\u88DC\u3092\u8AAD\u307F\u8FBC\u3081\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u5C11\u3057\u5F85\u3063\u3066\u304B\u3089\u7D5E\u308A\u8FBC\u307F\u3092\u958B\u304D\u76F4\u3057\u3066\u304F\u3060\u3055\u3044",unavailable:"\u7D5E\u308A\u8FBC\u307F\u306E\u5019\u88DC\u3092\u4F7F\u3048\u307E\u305B\u3093",failed:"\u7D5E\u308A\u8FBC\u307F\u306E\u5019\u88DC\u3092\u8AAD\u307F\u8FBC\u3081\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u7D5E\u308A\u8FBC\u307F\u3092\u9589\u3058\u3066\u958B\u304D\u76F4\u3059\u3068\u8AAD\u307F\u76F4\u3057\u307E\u3059"}),FS=Object.freeze({busy:"The server is busy, so the filter options could not be loaded. Please reopen the filters in a moment",unavailable:"Filter options are not available",failed:"The filter options could not be loaded. Close and reopen the filters to load them again"}),Hi=Object.freeze({en:Object.freeze({id:"ID",businessDate:"Business date",author:"Author",visitTime:"Visit time",createdAt:"Created at",updatedAt:"Updated at",updatedBy:"Updated by",category:"Category",creationCategory:"Creation category",customer:"Customer",subject:"Subject",content:"Content",interviewers:"Attendees",comments:"Comments",attachments:"Attachments",attachmentMissing:"File is missing",attachmentDownload:"Download",attachmentThumbnailUnavailable:"Preview unavailable",tabArticle:"Overview",tabRelations:"Related",reportTabList:"Report sections",relationsEmpty:"No related view configured yet.",title:"Daily Reports",listKeyboardHelp:"Up and Down arrows: previous or next report. Home and End: first or last report. Page Up and Page Down: move by a page. Enter or Space: select. Tab: the report's controls. Escape: back to the report row. Control+Home and Control+End: move to the nearest control before or after the list, when there is one.",tabList:"\u{1F4C4} List",tabTree:"\u{1F333} Tree",tabDetailList:"\u{1F4CB} DetailList",viewTabList:"Views",treeComingSoon:"The tree view is coming soon",totalCountLoading:"Total: loading...",createReport:"New report",createReportTitle:"Create a daily report",devControls:"Development-only controls",devSseToggle:"Toggle SSE real-time sync",devReload:"Reload data",devClearCache:"Clear the cache and reload",autoRead:"Auto-read",autoReadTitle:"Mark reports as read automatically while viewing them",loadErrorBadge:"Error",loadError:"Failed to load the daily reports.",reload:"Reload",loadingIds:"Loading report IDs...",streamFailed:"Failed to load",streamRetry:"Retry",streamRevalidating:"Refreshing",selectPrompt:"Select a report from the list on the left.",loading:"Loading...",reportNotFound:"Report not found",contentEmpty:"No content has been entered.",contentEmptyPreview:"No content has been entered",confirmDelete:"Are you sure you want to delete this report?",starAdd:"Add star",starRemove:"Remove star",markRead:"Mark as read",markUnread:"Mark as unread",deleteReport:"Delete",edit:"Edit",resizeHandle:"Resize the border between the report list and the detail pane",close:"Close",formTitle:"Title",formTitlePlaceholder:"Enter the report title",formContent:"Content",formContentPlaceholder:"Enter the report content",formCancel:"Cancel",formSave:"Save",formPublish:"Publish",commentPlaceholder:"Add a comment...",commentSend:"Send",commentDelete:"Delete comment",commentDeleteConfirm:"Delete",unknownUser:"Unknown",sourceInternal:"Original",searchInputLabel:"Search reports",searchPlaceholder:"Search",searchCombineAnd:"AND",searchCombineOr:"OR",searchCombineAndTitle:"Show the reports that contain every keyword",searchCombineOrTitle:"Show the reports that contain any keyword",searchClear:"Clear the search",searching:"Searching...",searchNoHits:"No report matches",searchSyntaxHelp:"Separate keywords with spaces. Words in double quotes form one keyword that needs every word. A word in Latin letters also finds its kana reading (denpun finds \u3067\u3093\u3077\u3093); text found through a reading is underlined with dots. Enter searches, Esc clears.",searchMatchOutsideView:"Hidden match",searchMatchOutsideViewDescription:"Matched in fields this view does not show, such as labels or details",searchReadingMarkDescription:"Matched by its romaji reading",searchFilterSourceType:"Source",searchFiltersLoading:"Loading filters...",searchFiltersTooMany:"No more filter values can be selected",searchFilterUnavailable:"This filter cannot be shown",totalCount:e=>`Total: ${ge("en",e)}`,debounce:e=>`Debounce: ${e} ms`,streamProgressCount:e=>`Loading ${ge("en",e)}`,streamProgressRatio:(e,t,r)=>`Loading ${ge("en",e)} / ${ge("en",t)} (${r}%)`,streamRetrying:e=>`Reconnecting... (${ge("en",e)} received)`,reportLoadFailed:e=>`Failed to load report ${ge("en",e)}.`,reportSummaryLoadFailed:e=>`Failed to load the summary of report ${ge("en",e)}.`,interviewerWithAffiliation:(e,t)=>`${e} (${t})`,operationFailed:e=>`Failed to ${OS[e]}. Please try again later.`,noticeRepeated:e=>`(${ge("en",e)} times)`,rowState:({isRead:e,isStarred:t})=>`${e?"Read":"Unread"}${t?", starred":""}`,rowEditingState:({isDraft:e})=>e?"Editing draft":"Editing",listRowPosition:(e,t)=>`${ge("en",e)} of ${ge("en",t)}`,listRowPositionInUnknownTotal:e=>`Item ${ge("en",e)}`,searchHitCount:e=>`${ge("en",e)} ${e===1?"hit":"hits"}`,searchFailed:e=>kS[e],searchMatchedKeywords:(e,t)=>`Match ${e}/${t}`,searchMatchedKeywordsDescription:(e,t)=>`Matches ${e} of ${t} keywords`,searchFieldMatched:e=>`${e} matched`,searchFieldMatchedByReading:e=>`${e} matched by its romaji reading`,searchFiltersToggle:e=>e===0?"Filters":`Filters (${ge("en",e)})`,searchFiltersFailed:e=>FS[e]}),ja:Object.freeze({id:"ID",businessDate:"\u55B6\u696D\u65E5",author:"\u4F5C\u6210\u8005",visitTime:"\u8A2A\u554F\u6642\u9593",createdAt:"\u4F5C\u6210\u65E5\u6642",updatedAt:"\u66F4\u65B0\u65E5\u6642",updatedBy:"\u66F4\u65B0\u8005",category:"\u533A\u5206",creationCategory:"\u4F5C\u6210\u533A\u5206",customer:"\u9867\u5BA2",subject:"\u4EF6\u540D",content:"\u5185\u5BB9",interviewers:"\u9762\u8AC7\u8005",comments:"\u30B3\u30E1\u30F3\u30C8",attachments:"\u6DFB\u4ED8\u30D5\u30A1\u30A4\u30EB",attachmentMissing:"\u5B9F\u4F53\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093",attachmentDownload:"\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9",attachmentThumbnailUnavailable:"\u30D7\u30EC\u30D3\u30E5\u30FC\u3092\u8868\u793A\u3067\u304D\u307E\u305B\u3093",tabArticle:"\u6982\u8981",tabRelations:"\u95A2\u9023",reportTabList:"\u65E5\u5831\u306E\u8868\u793A\u306E\u5207\u308A\u66FF\u3048",relationsEmpty:"\u95A2\u9023\u30D3\u30E5\u30FC\u306F\u307E\u3060\u69CB\u6210\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002",title:"\u65E5\u5831",listKeyboardHelp:"\u2191\u2193 \u3067\u524D\u5F8C\u306E\u65E5\u5831\u3001Home / End \u3067\u5148\u982D\u30FB\u672B\u5C3E\u3001PageUp / PageDown \u3067\u30DA\u30FC\u30B8\u79FB\u52D5\u3001Enter \u307E\u305F\u306F Space \u3067\u9078\u629E\u3001Tab \u3067\u305D\u306E\u65E5\u5831\u306E\u64CD\u4F5C\u90E8\u54C1\u3078\u3001Escape \u3067\u65E5\u5831\u306E\u884C\u3078\u623B\u308A\u307E\u3059\u3002Ctrl+Home / Ctrl+End \u3067\u4E00\u89A7\u306E\u76F4\u524D\u30FB\u76F4\u5F8C\u306E\u64CD\u4F5C\u90E8\u54C1\u304C\u3042\u308C\u3070\u305D\u3053\u3078\u79FB\u308A\u307E\u3059\u3002",tabList:"\u{1F4C4} \u4E00\u89A7",tabTree:"\u{1F333} \u30C4\u30EA\u30FC",tabDetailList:"\u{1F4CB} \u8A73\u7D30\u4E00\u89A7",viewTabList:"\u8868\u793A\u306E\u5207\u308A\u66FF\u3048",treeComingSoon:"\u30C4\u30EA\u30FC\u306F\u73FE\u5728\u6E96\u5099\u4E2D\u3067\u3059",totalCountLoading:"\u7DCF\u4EF6\u6570: \u8AAD\u307F\u8FBC\u307F\u4E2D...",createReport:"\u65E5\u5831\u4F5C\u6210",createReportTitle:"\u65E5\u5831\u3092\u4F5C\u6210",devControls:"\u958B\u767A\u74B0\u5883\u9650\u5B9A\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB",devSseToggle:"SSE \u30EA\u30A2\u30EB\u30BF\u30A4\u30E0\u540C\u671F\u5207\u66FF",devReload:"\u30C7\u30FC\u30BF\u518D\u53D6\u5F97 (\u30EA\u30ED\u30FC\u30C9)",devClearCache:"\u30AD\u30E3\u30C3\u30B7\u30E5\u7834\u68C4 & \u518D\u53D6\u5F97",autoRead:"\u81EA\u52D5\u65E2\u8AAD",autoReadTitle:"\u65E5\u5831\u95B2\u89A7\u6642\u306E\u81EA\u52D5\u65E2\u8AAD\u51E6\u7406\u5207\u66FF",loadErrorBadge:"\u30A8\u30E9\u30FC",loadError:"\u65E5\u5831\u30C7\u30FC\u30BF\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002",reload:"\u518D\u8AAD\u307F\u8FBC\u307F",loadingIds:"\u65E5\u5831 ID \u3092\u8AAD\u307F\u8FBC\u307F\u4E2D\u3067\u3059...",streamFailed:"\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F",streamRetry:"\u518D\u8A66\u884C",streamRevalidating:"\u6700\u65B0\u5316\u4E2D",selectPrompt:"\u5DE6\u5074\u306E\u4E00\u89A7\u304B\u3089\u65E5\u5831\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002",loading:"\u8AAD\u307F\u8FBC\u307F\u4E2D...",reportNotFound:"\u65E5\u5831\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093",contentEmpty:"\u5185\u5BB9\u306F\u767B\u9332\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002",contentEmptyPreview:"\u5185\u5BB9\u306F\u767B\u9332\u3055\u308C\u3066\u3044\u307E\u305B\u3093",confirmDelete:"\u672C\u5F53\u306B\u524A\u9664\u3057\u307E\u3059\u304B\uFF1F",starAdd:"\u30B9\u30BF\u30FC\u3092\u4ED8\u3051\u308B",starRemove:"\u30B9\u30BF\u30FC\u3092\u5916\u3059",markRead:"\u65E2\u8AAD\u306B\u3059\u308B",markUnread:"\u672A\u8AAD\u306B\u3059\u308B",deleteReport:"\u524A\u9664\u3059\u308B",edit:"\u7DE8\u96C6",resizeHandle:"\u65E5\u5831\u4E00\u89A7\u3068\u8A73\u7D30\u30DA\u30A4\u30F3\u306E\u5883\u754C\u306E\u30B5\u30A4\u30BA\u5909\u66F4\u30CF\u30F3\u30C9\u30EB",close:"\u9589\u3058\u308B",formTitle:"\u30BF\u30A4\u30C8\u30EB",formTitlePlaceholder:"\u65E5\u5831\u306E\u30BF\u30A4\u30C8\u30EB\u3092\u5165\u529B",formContent:"\u5185\u5BB9",formContentPlaceholder:"\u65E5\u5831\u306E\u5185\u5BB9\u3092\u5165\u529B",formCancel:"\u30AD\u30E3\u30F3\u30BB\u30EB",formSave:"\u4FDD\u5B58",formPublish:"\u516C\u958B",commentPlaceholder:"\u30B3\u30E1\u30F3\u30C8\u3092\u8FFD\u52A0...",commentSend:"\u9001\u4FE1",commentDelete:"\u524A\u9664",commentDeleteConfirm:"\u524A\u9664\u3059\u308B",unknownUser:"\u4E0D\u660E\u306A\u30E6\u30FC\u30B6\u30FC",sourceInternal:"\u30AA\u30EA\u30B8\u30CA\u30EB",searchInputLabel:"\u65E5\u5831\u3092\u691C\u7D22",searchPlaceholder:"\u691C\u7D22",searchCombineAnd:"AND",searchCombineOr:"OR",searchCombineAndTitle:"\u3059\u3079\u3066\u306E\u30AD\u30FC\u30EF\u30FC\u30C9\u3092\u542B\u3080\u65E5\u5831\u3092\u51FA\u3059",searchCombineOrTitle:"\u3069\u308C\u304B\u306E\u30AD\u30FC\u30EF\u30FC\u30C9\u3092\u542B\u3080\u65E5\u5831\u3092\u51FA\u3059",searchClear:"\u691C\u7D22\u3092\u6D88\u3059",searching:"\u691C\u7D22\u4E2D...",searchNoHits:"\u5F53\u305F\u308B\u65E5\u5831\u306F\u3042\u308A\u307E\u305B\u3093",searchSyntaxHelp:"\u30AD\u30FC\u30EF\u30FC\u30C9\u306F\u7A7A\u767D\u3067\u533A\u5207\u308A\u307E\u3059\u3002\u4E8C\u91CD\u5F15\u7528\u7B26\u3067\u56F2\u3093\u3060\u8A9E\u306F\u3001\u3059\u3079\u3066\u306E\u8A9E\u3092\u542B\u3080 1 \u3064\u306E\u30AD\u30FC\u30EF\u30FC\u30C9\u306B\u306A\u308A\u307E\u3059\u3002\u82F1\u5B57\u306E\u8A9E\u306F\u30ED\u30FC\u30DE\u5B57\u306E\u8AAD\u307F\u3067\u3082\u4EEE\u540D\u3092\u63A2\u3057\u307E\u3059 (denpun \u2192 \u3067\u3093\u3077\u3093)\u3002\u8AAD\u307F\u3067\u5F53\u305F\u3063\u305F\u6240\u306F\u70B9\u7DDA\u306E\u4E0B\u7DDA\u3067\u793A\u3057\u307E\u3059\u3002Enter \u3067\u691C\u7D22\u3001Esc \u3067\u6D88\u53BB\u3057\u307E\u3059\u3002",searchMatchOutsideView:"\u8868\u793A\u5916\u3067\u4E00\u81F4",searchMatchOutsideViewDescription:"\u3053\u306E\u753B\u9762\u306B\u51FA\u3057\u3066\u3044\u306A\u3044\u9805\u76EE (\u30E9\u30D9\u30EB\u30FB\u660E\u7D30\u306A\u3069) \u3067\u4E00\u81F4\u3057\u307E\u3057\u305F",searchReadingMarkDescription:"\u30ED\u30FC\u30DE\u5B57\u306E\u8AAD\u307F\u3067\u4E00\u81F4",searchFilterSourceType:"\u30BD\u30FC\u30B9\u533A\u5206",searchFiltersLoading:"\u7D5E\u308A\u8FBC\u307F\u306E\u5019\u88DC\u3092\u8AAD\u307F\u8FBC\u307F\u4E2D...",searchFiltersTooMany:"\u3053\u308C\u4EE5\u4E0A\u306F\u7D5E\u308A\u8FBC\u307F\u306E\u5024\u3092\u9078\u3079\u307E\u305B\u3093",searchFilterUnavailable:"\u3053\u306E\u7D5E\u308A\u8FBC\u307F\u3092\u8868\u793A\u3067\u304D\u307E\u305B\u3093",totalCount:e=>`\u7DCF\u4EF6\u6570: ${ge("ja",e)} \u4EF6`,debounce:e=>`\u30C7\u30D0\u30A6\u30F3\u30B9: ${e} ms`,streamProgressCount:e=>`\u8AAD\u307F\u8FBC\u307F\u4E2D ${ge("ja",e)} \u4EF6`,streamProgressRatio:(e,t,r)=>`\u8AAD\u307F\u8FBC\u307F\u4E2D ${ge("ja",e)} / ${ge("ja",t)} (${r}%)`,streamRetrying:e=>`\u518D\u63A5\u7D9A\u4E2D... (${ge("ja",e)} \u4EF6\u53D7\u4FE1\u6E08)`,reportLoadFailed:e=>`\u65E5\u5831 ${ge("ja",e)} \u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002`,reportSummaryLoadFailed:e=>`\u65E5\u5831 ${ge("ja",e)} \u306E\u6982\u8981\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002`,interviewerWithAffiliation:(e,t)=>`${e} (${t})`,operationFailed:e=>`${NS[e]}\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002\u6642\u9593\u3092\u304A\u3044\u3066\u518D\u5EA6\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002`,noticeRepeated:e=>`(${ge("ja",e)} \u56DE\u76EE)`,rowState:({isRead:e,isStarred:t})=>`${e?"\u65E2\u8AAD":"\u672A\u8AAD"}${t?"\u3001\u30B9\u30BF\u30FC\u4ED8\u304D":""}`,rowEditingState:({isDraft:e})=>e?"\u4E0B\u66F8\u304D\u3092\u7DE8\u96C6\u4E2D":"\u7DE8\u96C6\u4E2D",listRowPosition:(e,t)=>`\u5168 ${ge("ja",t)} \u4EF6\u4E2D ${ge("ja",e)} \u4EF6\u76EE`,listRowPositionInUnknownTotal:e=>`${ge("ja",e)} \u4EF6\u76EE`,searchHitCount:e=>`${ge("ja",e)} \u4EF6\u30D2\u30C3\u30C8`,searchFailed:e=>MS[e],searchMatchedKeywords:(e,t)=>`\u4E00\u81F4 ${e}/${t}`,searchMatchedKeywordsDescription:(e,t)=>`\u30AD\u30FC\u30EF\u30FC\u30C9 ${t} \u500B\u306E\u3046\u3061 ${e} \u500B\u306B\u4E00\u81F4`,searchFieldMatched:e=>`${e}\u3067\u4E00\u81F4`,searchFieldMatchedByReading:e=>`${e}\u304C\u30ED\u30FC\u30DE\u5B57\u306E\u8AAD\u307F\u3067\u4E00\u81F4`,searchFiltersToggle:e=>e===0?"\u7D5E\u308A\u8FBC\u307F":`\u7D5E\u308A\u8FBC\u307F (${ge("ja",e)})`,searchFiltersFailed:e=>PS[e]})}),Wu=Object.freeze({en:Object.freeze({...Fu.en,...Hi.en}),ja:Object.freeze({...Fu.ja,...Hi.ja})}),HS=e=>{let t={},r=!1;for(let n of Bi){let o=Object.hasOwn(e,n)?e[n]:void 0;o!==void 0&&(t[n]=o,r=!0)}return r?t:void 0},Bu=(e,t,r)=>{e[t]=r},Vi=(e,t)=>{let r=_S(e);if(t===void 0)return Wu[r];if(t===null||typeof t!="object")throw ke("labels","an object",t);let n=Object.getPrototypeOf(t);if(n!==Object.prototype&&n!==null)throw ke("labels","a plain object (prototype Object.prototype or null)",t);for(let s of Object.keys(t))if(!Fi.includes(s))throw ao("labels key",s,Fi);let a={...CS(r,HS(t)),...Hi[r]};for(let s of Vu){let i=Object.hasOwn(t,s)?t[s]:void 0;if(i!==void 0){if(typeof i!="string"||i.trim()==="")throw ke(`labels.${s}`,"a non-blank string",i);Bu(a,s,i)}}for(let s of Uu){let i=Object.hasOwn(t,s)?t[s]:void 0;if(i!==void 0){if(typeof i!="function")throw ke(`labels.${s}`,"a function",i);Bu(a,s,i)}}return Object.freeze(a)},Ku=e=>{let t={};for(let r of Bi)t[r]=e[r];return Object.freeze(t)};import{jsx as Ui,jsxs as QS}from"react/jsx-runtime";var WS=e=>({Internal:{label:e.sourceInternal,badgeClassName:"bg-emerald-100 text-emerald-800 dark:bg-emerald-900/30 dark:text-emerald-400"}}),KS=({title:e,annotation:t})=>QS("header",{className:"flex flex-wrap items-baseline justify-between gap-2 px-2 py-1",children:[Ui("span",{className:"text-nowrap text-slate-700 text-sm dark:text-slate-200",children:e}),t?Ui("span",{className:"text-slate-600 text-xs dark:text-slate-300",children:t}):null]}),so=Object.freeze({apiBasePath:"/daily_report/api",ssePath:"/sse/daily_report/updates",renderHeader:KS,showDevControls:!1,headingLevel:3}),zu=["apiBasePath","ssePath","locale","labels","sourceTypeConfigs","renderHeader","showDevControls","headingLevel","onError","onSessionExpired","search"];var zS=e=>{for(let t of Object.keys(e))if(!zu.includes(t))throw ao("config key",t,zu)},$u=[2,3,4,5],$S=e=>{if(e===void 0)return so.headingLevel;let t=$u.find(r=>r===e);if(t===void 0)throw ke("config.headingLevel",`one of ${$u.join(", ")} (the level of each report's heading)`,e);return t},ju=["debounceMs","renderFilterSelect"],jS=Object.freeze({min:300,max:5e3}),GS=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},YS=e=>{if(e===void 0)return null;if(typeof e!="function")throw ke("config.search.renderFilterSelect","a function (it renders the control of each filter cell)",e);return e},qS=e=>{if(e===void 0)return null;if(!GS(e))throw ke("config.search","a plain object ({} for Enter only, or { debounceMs })",e);for(let o of Object.keys(e))if(!ju.includes(o))throw ao("config.search key",o,ju);let t=e.debounceMs,{min:r,max:n}=jS;return{debounceMs:t===void 0?null:tt("config.search.debounceMs",t,r,n),renderFilterSelect:YS(e.renderFilterSelect)}},XS=e=>{for(let[t,r]of Object.entries(e)){let n=r.name;if(n!==void 0&&(typeof n!="string"||n.trim()===""))throw ke(`config.sourceTypeConfigs.${t}.name`,"a non-blank string (the expansion of the badge label)",n)}return e},ZS=e=>{zS(e);let t=e.onSessionExpired;if(t===void 0)throw Ou("config.onSessionExpired","a function (the host decides the navigation on session expiry)");if(typeof t!="function")throw ke("config.onSessionExpired","a function (the host decides the navigation on session expiry)",t);let r=BS(e.locale),n=Vi(r,e.labels),o=so;return{apiBasePath:e.apiBasePath===void 0?o.apiBasePath:e.apiBasePath,ssePath:e.ssePath===void 0?o.ssePath:e.ssePath,locale:r,labels:n,sourceTypeConfigs:e.sourceTypeConfigs===void 0?WS(n):XS(e.sourceTypeConfigs),renderHeader:e.renderHeader===void 0?o.renderHeader:e.renderHeader,showDevControls:e.showDevControls===void 0?o.showDevControls:e.showDevControls,headingLevel:$S(e.headingLevel),onError:e.onError,onSessionExpired:e.onSessionExpired,search:qS(e.search)}},Gu=VS(null),Wi=({config:e,children:t})=>{let r=US(()=>ZS(e),[e]);return Ui(Gu.Provider,{value:r,children:t})},z=()=>Ct(Gu,"useDailyReportConfig","DailyReportConfigProvider"),Jt=(e,t)=>{if(!(e&&t))return;if(t[e])return t[e];let r=e.toLowerCase(),n=Object.keys(t).find(o=>o.toLowerCase()===r);return n?t[n]:void 0},ba=(e,t)=>t?.allowComment!==void 0?t.allowComment:!e||e.toLowerCase()==="internal";import{tapScrollCircleSampleVisual as eg}from"@aiquants/virtualscroll";var JS=4;var cn=120,Yu=1e3,ga=.8,Ki={maxVelocity:18,deceleration:.0018,startVelocityThreshold:.03},Ea=20,zi=24,un=8,io=zi+un,qu=6,Da={reportHubId:-1,businessDate:null},wa=240,Ta=15,tg=8,Xu=460,Zu=3,Qu=352,rg={enabled:!0,renderVisual:eg,maxSpeedCurve:{exponentialSteepness:3,exponentialScale:8},maxSpeedMultiplier:8,className:"[[data-daily-report-keyboard-focus]_&]:invisible"},Aa={width:tg,tapScrollCircleOptions:rg,enableArrowButtonTabStops:!1},xa=["pen","touch"];var Yi=gt(void 0,1,"DetailLoader"),Ju=(e,t)=>{let r=globalThis[e];return typeof r=="number"&&!Number.isNaN(r)?r:t},$i=null,Ca=()=>($i===null&&($i={ttl:Ju("__DAILY_REPORT_CACHE_TTL__",3e5),reviveMs:Ju("__DAILY_REPORT_CACHE_REVIVE_MS__",6e4)}),$i),ee={reports:new Map,lists:new Map,pendingLists:new Map,pendingReports:new Map,listeners:new Set,lockHolders:new Map,lockHolds:new Map,lastMutations:new Map,recentDeletes:new Map,lastPrune:0,prune(){let e=Date.now();if(e-this.lastPrune<6e4)return;this.lastPrune=e;let t=3600*1e3;for(let[r,n]of this.reports)e-n.expiresAt>t&&this.reports.delete(r);for(let[r,n]of this.lists)e-n.expiresAt>t&&this.lists.delete(r)},clear(){this.reports.clear(),this.lists.clear(),this.pendingLists.clear(),this.pendingReports.clear(),this.lockHolders.clear(),this.lockHolds.clear(),this.lastMutations.clear(),this.recentDeletes.clear(),this.listeners.forEach(e=>{e(-1)})},isLocked(e){if(this.lockHolders.has(e))return!0;let t=this.lockHolds.get(e);return t===void 0?!1:t>performance.now()?!0:(this.lockHolds.delete(e),!1)},isValid:e=>e>Date.now(),notify:e=>{ee.listeners.forEach(t=>{t(e)})},getReport(e,t=!1){let r=this.reports.get(e);return r&&(t||this.isValid(r.expiresAt))?r.data:null},getList(e,t=!1){let r=e&&this.lists.get(e);return r&&(t||this.isValid(r.expiresAt))?r.data:null},set(e,t,r=!0){if(this.reports.set(e.reportHubId,{data:e,expiresAt:t}),r){let n=Xn(e.date),o=n?this.lists.get(n):null;if(o&&n){let s=o.data.some(i=>i.reportHubId===e.reportHubId)?o.data.map(i=>i.reportHubId===e.reportHubId?e:i):[e,...o.data];this.lists.set(n,{...o,data:s})}}this.notify(e.reportHubId)},update(e,t,r=!0){let n=this.reports.get(e);if(n?.data){if(r&&t.updatedAt&&n.data.updatedAt&&new Date(t.updatedAt).getTime()<new Date(n.data.updatedAt).getTime()){Yi.warn(`Stale update skipped id=${e}`);return}this.set({...n.data,...t},Math.max(n.expiresAt,Date.now()+Ca().reviveMs))}},delete(e,t){this.reports.delete(e);let r=Xn(t),n=r&&this.lists.get(r);n&&r&&this.lists.set(r,{...n,data:n.data.filter(o=>o.reportHubId!==e)}),this.notify(e)},merge(e,t){let r=e;if(r.postedComments.some(n=>this.recentDeletes.has(n.id))&&(r={...r,postedComments:r.postedComments.filter(n=>!this.recentDeletes.has(n.id))}),t){let n=new Set(r.postedComments.map(a=>a.id)),o=t.postedComments.filter(a=>!n.has(a.id)&&a.isMine&&Date.now()-new Date(a.createdAt||0).getTime()<1e4);o.length>0&&(r={...r,postedComments:[...r.postedComments,...o].sort((a,s)=>new Date(a.createdAt||0).getTime()-new Date(s.createdAt||0).getTime())})}return r},cacheMany(e,t,r){this.prune();let n=Date.now(),o=n+Ca().ttl;for(let[s,i]of this.recentDeletes)n-i>1e4&&this.recentDeletes.delete(s);let a=e.map(s=>{if(this.isLocked(s.reportHubId))return s;let i=this.lastMutations.get(s.reportHubId);if(i&&r>0&&i>r)return this.reports.get(s.reportHubId)?.data??s;let l=this.reports.get(s.reportHubId)?.data,d=this.merge(s,l);return this.set(d,o,!1),d});return t&&this.lists.set(t,{data:a,expiresAt:o}),a}},ap=(e,t,r=!0)=>ee.set(e,t,r),dt=(e,t)=>ee.getReport(e,t?.ignoreExpiry),Et=(e,t)=>ee.update(e,t),Na=(e,t)=>ee.delete(e,t),uo=()=>{ee.clear(),va.clear(),Rg()},_a=(e,t)=>{let r=ee.lastMutations.get(e);(r===void 0||r<t)&&ee.lastMutations.set(e,t)},qi=e=>{_a(e,Date.now())},sp=e=>{let t=Symbol("mutation-lock"),r=ee.lockHolders.get(e);return r===void 0?ee.lockHolders.set(e,new Set([t])):r.add(t),_a(e,Date.now()),()=>{let n=ee.lockHolders.get(e);n===void 0||!n.delete(t)||(n.size===0&&ee.lockHolders.delete(e),_a(e,Date.now()))}},ip=(e,t)=>{let r=performance.now()+t,n=ee.lockHolds.get(e);(n===void 0||n<r)&&ee.lockHolds.set(e,r),_a(e,Date.now()+t)},lp=e=>ee.recentDeletes.set(e,Date.now()),dp=(e,t)=>{let r=n=>{n===e&&t()};return ee.listeners.add(r),()=>{ee.listeners.delete(r)}},er=(e,t)=>{ee.prune(),ee.set(t,Date.now()+Ca().ttl)},cp=e=>{ee.prune();let t=ee.getReport(e.reportHubId,!0),r=new Map;for(let o of t?.postedComments??[])r.set(o.id,o.isMine??!1);let n=(e.postedComments??[]).map(o=>({...o,isMine:r.get(o.id)??!1}));ee.set({...e,isRead:t?.isRead??!1,isStarred:t?.isStarred??!1,postedComments:n},Date.now()+Ca().ttl)},ig=lo.object({report:br}),lg=lo.object({reports:lo.array(br)}),La=class extends Error{constructor(t,r){super(`[daily-report] ${t} answered HTTP ${r}`),this.name="DailyReportReadHttpError",this.status=r}},up=(e,t)=>new La(e,t),ep=e=>e instanceof La&&(e.status===401||e.status===403),Xi=async(e,t,r)=>{if(!e.ok)throw up(r,e.status);let n=t.safeParse(await e.json());if(!n.success)throw new Error(`[daily-report] ${r} answered a body that does not match its schema (${ya(n.error)})`);return n.data},dg=async(e,t)=>{let r=ee.getReport(t);if(r)return r;let n=ee.pendingReports.get(t);if(n)return n;let o=Date.now(),a=new URLSearchParams({[Le.reportHubId]:String(t)}),s=fetch(`${e}/${Ve.report}?${a}`,{cache:"no-cache"}).then(i=>Xi(i,ig,Ve.report)).then(({report:i})=>ee.cacheMany([i],null,o)[0]).finally(()=>ee.pendingReports.delete(t));return ee.pendingReports.set(t,s),s},va=new Map,cg=1e4,ug=(e,t)=>{let r=va.get(t),n=Date.now();if(r&&n-r.at<cg)return r.inFlight;let o=Zi(e,t,{forceRefresh:!0}),a={at:n,inFlight:o};return va.set(t,a),o.finally(()=>{va.get(t)===a&&(a.inFlight=null)}).catch(()=>{}),o},Zi=async(e,t,r={})=>{let n=r.forceRefresh?null:ee.getList(t);if(n)return n;let o=ee.pendingLists.get(t);if(o)return o;let a=Date.now(),s=new URLSearchParams({[Le.businessDate]:t}),i=fetch(`${e}/${Ve.businessDate}?${s}`,{cache:"no-cache"}).then(l=>Xi(l,lg,Ve.businessDate)).then(({reports:l})=>ee.cacheMany(l,t,a)).finally(()=>ee.pendingLists.delete(t));return ee.pendingLists.set(t,i),i},pg=async(e,t,r)=>{let n=ee.getList(r)!==null,a=(await Zi(e,r)).find(i=>i.reportHubId===t);if(a!==void 0)return a;if(!n)return null;let s=await ug(e,r);return s===null?null:s.find(i=>i.reportHubId===t)??null},mg=lo.object({reports:lo.array(br)}),fg=5e3,Gi=new Map,yg=e=>{let t=new Map,r=new Map,n=new Map,o=new Set,a=(p,f)=>{let m=[];for(let y of p)r.get(y)===f&&(r.delete(y),m.push(y));return m},s=(p,f)=>{let m=t.get(p);if(m!==void 0){t.delete(p),o.delete(p);for(let y of m)f(y)}},i=(p,f)=>{let y=setTimeout(()=>{for(let g of p)n.delete(g),t.has(g)&&(o.add(g),c.enqueue(g))},f);for(let g of p)n.set(g,y)},l=(p,f,m)=>{let y=[];for(let g of p)f!==null&&t.has(g)&&!o.has(g)?y.push(g):s(g,R=>R.reject(m));f!==null&&y.length>0&&i(y,f)},d=async(p,f)=>{for(let g of p)r.set(g,f);let m=Date.now(),y=new URLSearchParams({[Le.reportIds]:p.join(",")});try{let g=await fetch(`${e}/${Ve.reports}?${y}`,{cache:"no-cache",signal:f});if(g.status===429){l(a(p,f),ha(g,fg),up(Ve.reports,g.status));return}let{reports:R}=await Xi(g,mg,Ve.reports);if(f.aborted)return;let D=new Map(ee.cacheMany(R,null,m).map(b=>[b.reportHubId,b]));for(let b of a(p,f))s(b,h=>h.resolve(D.get(b)??null))}catch(g){for(let R of a(p,f))s(R,D=>D.reject(g))}},c=Ra({hasListener:p=>t.has(p),batchSize:Zt.maxDetailIds,inFlightBound:no,send:d}),u=Pu({frames:ku,handOn:p=>{for(let f of p)c.enqueue(f)}});return{readers:t,pending:r,holds:n,retried:o,gate:u,scheduler:c}},Rg=()=>{for(let{readers:e,pending:t,holds:r,retried:n,gate:o,scheduler:a}of Gi.values()){o.dispose(),a.dispose(),t.clear();for(let s of r.values())clearTimeout(s);r.clear(),n.clear();for(let s of e.keys())a.enqueue(s)}},tp=new DOMException("The detail reader left its batched read","AbortError"),hg=(e,t,r)=>new Promise((n,o)=>{let a=Gi.get(e);a===void 0&&(a=yg(e),Gi.set(e,a));let{readers:s,pending:i,holds:l,retried:d,gate:c,scheduler:u}=a,p={resolve:n,reject:o},f=s.get(t);f===void 0?s.set(t,new Set([p])):f.add(p),c.holds(t)||u.isWanted(t)||i.has(t)||l.has(t)||c.enter(t);let m=()=>{let y=s.get(t);if(!(y===void 0||!y.delete(p))&&(o(r.reason),!(y.size>0))){s.delete(t),d.delete(t),c.leave(t);for(let g of u.release(t))i.delete(g)}};r.addEventListener("abort",m,{once:!0})}),pn=ng("date"),bg=Object.freeze({report:null,error:null,isLoading:!1,isRefetching:!1}),Sg=Object.freeze({report:null,error:new Error("Invalid ID"),isLoading:!1,isRefetching:!1}),gg=Object.freeze({report:null,error:null,isLoading:!0,isRefetching:!1}),rp=new WeakMap,Eg=e=>{let t=rp.get(e);if(t!==void 0)return t;let r=Object.freeze({report:e,error:null,isLoading:!1,isRefetching:!1});return rp.set(e,r),r},Ia=(e,t,r)=>{let n=e.reports.get(t);if(n!==void 0)return{report:n.data,isStale:!e.isValid(n.expiresAt)};if(r===null)return{report:null,isStale:!1};let o=e.lists.get(r),a=o?.data.find(s=>s.reportHubId===t);return o===void 0||a===void 0?{report:null,isStale:!1}:{report:a,isStale:!e.isValid(o.expiresAt)}},np=(e,t,r)=>{if(t<0)return bg;if(t===0)return Sg;let{report:n}=Ia(e,t,r);return n===null?gg:Eg(n)},Dg=(e,t)=>Object.keys(t).some(n=>e[n]!==t[n])?Object.freeze({...e,...t}):e,ji=()=>{},wg=({apiBasePath:e,detailSource:t,cache:r})=>{let n=new Map,o=(u,p)=>{let f=Dg(u.record,p);if(f!==u.record){u.record=f;for(let m of u.listeners)m()}},a=u=>{let p=n.get(u);if(p===void 0)return;let{report:f,isStale:m}=Ia(r,u,p.dateKey);o(p,f!==null&&!m&&p.record.isRefetching?{report:f,error:null,isLoading:!1,isRefetching:!1}:{report:f})},s=(u,p,f)=>{let{record:m}=p;if(m.report!==null&&m.error===null&&!ep(f)){Yi.warn(`Refetch failed, the shown report stays id=${u}`,f),o(p,{isLoading:!1,isRefetching:!1});return}o(p,{error:f,isLoading:!1,isRefetching:!1})},i=(u,p)=>{let{dateKey:f}=p,{report:m,isStale:y}=Ia(r,u,f);if(m!==null&&!y)return o(p,{report:m,error:null,isLoading:!1,isRefetching:!1}),ji;o(p,{isLoading:m===null,isRefetching:!0});let g=null,R=!1,D=async()=>{let h;try{t==="ids"?(g=new AbortController,h=await hg(e,u,g.signal)):f!==null?h=await pg(e,u,f):h=await dg(e,u)}catch(S){R||s(u,p,S instanceof Error?S:new Error("Load failed"));return}R||o(p,{report:h,error:null,isLoading:!1,isRefetching:!1})};if(m===null)return D(),()=>{R=!0,g?.abort(tp)};let b=setTimeout(D,cn);return()=>{R=!0,clearTimeout(b),g?.abort(tp)}},l=(u,p)=>{let{record:f}=p;return f.isRefetching?!1:f.error!==null?!ep(f.error):Ia(r,u,p.dateKey).isStale},d=(u,p)=>{let f=Xn(p),m={record:np(r,u,f),dateKey:f,listeners:new Set,stop:ji};return n.size===0&&r.listeners.add(a),n.set(u,m),m.stop=i(u,m),m},c=(u,p)=>{n.delete(u),n.size===0&&r.listeners.delete(a),p.stop()};return{read:u=>{let p=n.get(u);return p===void 0?np(r,u,null):p.record},subscribe:(u,p,f)=>{if(u<=0)return ji;let m=n.get(u),y=m===void 0?d(u,p):m;return!y.listeners.has(f)&&l(u,y)&&(y.stop(),y.stop=i(u,y)),y.listeners.add(f),()=>{!y.listeners.delete(f)||y.listeners.size>0||c(u,y)}}}},Tg={date:new Map,ids:new Map},Ag=(e,t)=>{let r=Tg[t],n=r.get(e);if(n!==void 0)return n;let o=wg({apiBasePath:e,detailSource:t,cache:ee});return r.set(e,o),o},Pr=()=>{let{apiBasePath:e}=z(),t=op(pn);return Ag(e,t)},Qi=(e,t)=>{let r=Pr(),[n,o]=sg(()=>({reportHubId:e,resource:r.read(e)})),a=n;return n.reportHubId!==e&&(a={reportHubId:e,resource:r.read(e)},o(a)),ag(()=>{let s=()=>{let l=r.read(e);o(d=>d.resource===l?d:{reportHubId:e,resource:l})},i=r.subscribe(e,t,s);return s(),i},[r,e,t]),a.resource},Ji=()=>{let{apiBasePath:e}=z(),t=op(pn);return og(r=>{if(t==="ids")return;let n=Xn(r);n&&!ee.getList(n)&&Zi(e,n).catch(o=>Yi.warn("Prefetch error",n,o))},[e,t])};import{VIRTUAL_SCROLL_LABEL_KEYS as xg}from"@aiquants/virtualscroll";import{useRef as vg}from"react";var Oa=()=>{let{locale:e,labels:t}=z(),r=Ku(t),n=vg(null),o=n.current;return o!==null&&xg.every(a=>o[a]===r[a])?{locale:e,labels:o}:(n.current=r,{locale:e,labels:r})};import{useState as Ig}from"react";var Ue=e=>{let[t]=Ig(()=>({current:e()}));return t};import{useLayoutEffect as Hg,useState as Bg}from"react";import{flushSync as Vg}from"react-dom";var fp=Object.freeze({visibilityProperty:!0}),pp=new Set(["auto","scroll"]),mp=new Set(["","true","plaintext-only"]),yp=e=>{for(let t=e;t!==null;){if(t.hasAttribute("inert"))return!0;let r=t.parentElement;if(r!==null){t=r;continue}let n=t.getRootNode();t=bp(n)?n.host:null}return!1},Cg=e=>{let t=e.closest("map")?.getAttribute("name");if(t==null||t==="")return!1;let r=e.getRootNode();for(let n of r.querySelectorAll("img[usemap]"))if(n.getAttribute("usemap")===`#${t}`&&n.checkVisibility(fp))return!0;return!1},Rp=e=>e.localName==="area"?Cg(e):e.checkVisibility(fp),_g=e=>{let t=e.getAttribute("contenteditable");if(t===null||!mp.has(t.toLowerCase()))return!1;for(let r=e.parentElement;r!==null;r=r.parentElement){let n=r.getAttribute("contenteditable");if(n===null)continue;let o=n.toLowerCase();if(mp.has(o))return!1;if(o==="false")return!0}return!0},Lg=e=>{if(e.checked||e.name==="")return!0;let t=e.getRootNode(),r=null;for(let n of t.querySelectorAll("input"))if(!(n.type!=="radio"||n.name!==e.name||n.form!==e.form)){if(n.checked)return!1;r===null&&!n.disabled&&Rp(n)&&(r=n)}return r===e},Ng=e=>{let t=e.ownerDocument;if(e===t.documentElement||e===t.body)return!1;let r=e.scrollWidth>e.clientWidth,n=e.scrollHeight>e.clientHeight;if(!(r||n))return!1;let o=t.defaultView;if(o===null)return!1;let a=o.getComputedStyle(e);return r&&pp.has(a.overflowX)||n&&pp.has(a.overflowY)},Og=e=>{switch(e.localName){case"a":case"area":return e.hasAttribute("href");case"button":case"select":case"textarea":case"iframe":case"embed":return!0;case"input":return e.type!=="hidden";case"summary":return e.parentElement?.localName==="details"&&e.parentElement.querySelector(":scope > summary")===e;case"audio":case"video":return e.hasAttribute("controls");case"object":{let t=e.contentWindow;return typeof t=="object"&&t!==null}default:return _g(e)}},Mg=/^[\t\n\f\r ]*[+-]?\d/,kg=e=>{let t=e.getAttribute("tabindex");return t!==null&&Mg.test(t)?e.tabIndex:null},hp=(e,t)=>{for(let r of tl(e))if(t(r)||hp(r,t))return!0;return!1},Ma=(e,t)=>{let r=t.get(e);if(r!==void 0)return r;let n=Pg(e,t);return t.set(e,n),n},Pg=(e,t)=>{if(!mo(e))return"none";let r=kg(e),n=r===null&&Og(e),o=r===null&&!n&&Ng(e);return!(r!==null||n||o)||e.matches(":disabled")||yp(e)||!Rp(e)?"none":r!==null?r>=0?"sequential":"programmatic":n?e.localName==="input"&&e.type==="radio"?Lg(e)?"sequential":"programmatic":"sequential":hp(e,a=>Ma(a,t)==="sequential")?"none":"sequential"},el=(e,t)=>{for(let r of tl(e))t(r),el(r,t)},tl=e=>{if(xe(e)){let t=e;if(t.shadowRoot!==null)return t.shadowRoot.children;if(t.localName==="slot"){let r=t.assignedElements();if(r.length>0)return r}}return e.children};var po=(e,t)=>{let r=[],n=[],o=[],a=new Map;if(e===t)return el(e,l=>{Ma(l,a)==="sequential"&&n.push(l)}),{before:r,within:n,after:o};let s=!1,i=(l,d)=>{for(let c of tl(l)){let u=c===t;!u&&Ma(c,a)==="sequential"&&(d?n.push(c):s?o.push(c):r.push(c)),i(c,d||u),u&&(s=!0)}};return i(e,!1),{before:r,within:n,after:o}},ka=e=>{let t=[],r=new Map;return el(e,n=>{Ma(n,r)==="sequential"&&t.push(n)}),t},xe=e=>e!==null&&"nodeType"in e&&e.nodeType===e.ELEMENT_NODE,mo=e=>"focus"in e&&"blur"in e,Fg=e=>e.nodeType===e.DOCUMENT_NODE,bp=e=>e.nodeType===e.DOCUMENT_FRAGMENT_NODE&&"host"in e,Ke=e=>{let t=e.getRootNode();if(bp(t)){let r=t.activeElement;return r===null?Ke(t.host):r}return Fg(t)?t.activeElement:null},Fr=e=>{let t=Ke(e);return t===null||t===t.ownerDocument.body||yp(t)},Pe=e=>{let t=e.ownerDocument.defaultView;if(t===null)throw new Error("[daily-report] the element belongs to a document without a window");return t};var Pa=e=>{let[t,r]=Bg(null);return Hg(()=>{let n=e.current;if(n===null)throw new Error("[daily-report] useViewBoxHeight needs viewRef attached to the view's root");let o=null,a=l=>{if(l===o)return;let d=o===null;o=l,d?Vg(()=>r(l)):r(l)},s=l=>{for(let d of l)a(d.borderBoxSize[0].blockSize)},i=new(Pe(n)).ResizeObserver(s);return i.observe(n,{box:"border-box"}),()=>i.disconnect()},[e]),t};var Sp=255,rl=[null],gp=new Map,Fa=[void 0],Ep=new Map,Bt=e=>{if(e===null)return 0;let t=gp.get(e);if(t!==void 0)return t;let r=rl.length;return rl.push(e),gp.set(e,r),r},tr=e=>{let t=rl[e];if(t===void 0)throw new Error(`[daily-report] No business date has the code ${e}`);return t},fo=e=>{if(e===void 0)return 0;let t=Ep.get(e);if(t!==void 0)return t;let r=Fa.length;if(r>Sp)throw new Error(`[daily-report] The rows hold more than ${Sp} distinct source types; ${e} has no code`);return Fa.push(e),Ep.set(e,r),r},Hr=e=>{if(!(Number.isInteger(e)&&e>=0&&e<Fa.length))throw new Error(`[daily-report] No source type has the code ${e}`);return Fa[e]},Ht=class{constructor(t,r,n,o){this.length=t,this.ids=r,this.businessDateCodes=n,this.sourceTypeCodes=o}idAt(t){return this.ids[this.rowIndexOf(t)]}itemAt(t){let r=this.rowIndexOf(t);return{reportHubId:this.ids[r],businessDate:tr(this.businessDateCodes[r]),sourceType:Hr(this.sourceTypeCodes[r])}}items(){let t=[];for(let r=0;r<this.length;r++)t.push(this.itemAt(r));return t}businessDateAt(t){return tr(this.businessDateCodes[this.rowIndexOf(t)])}sourceTypeAt(t){return Hr(this.sourceTypeCodes[this.rowIndexOf(t)])}rowIndexOf(t){if(Number.isInteger(t)&&t>=0&&t<this.length)return t;throw new Error(`[daily-report] A batch of ${this.length} rows has no row ${t}`)}},Dp=e=>{if(e instanceof Ht)return e;throw new Error("[daily-report] A row batch the package did not build has no code columns")},Dt=new Ht(0,new Float64Array(0),new Uint32Array(0),new Uint8Array(0)),Ug=Float64Array.BYTES_PER_ELEMENT+Uint32Array.BYTES_PER_ELEMENT+Uint8Array.BYTES_PER_ELEMENT,mn=e=>{let t=new ArrayBuffer(e*Ug),r=e*Float64Array.BYTES_PER_ELEMENT;return{ids:new Float64Array(t,0,e),businessDateCodes:new Uint32Array(t,r,e),sourceTypeCodes:new Uint8Array(t,r+e*Uint32Array.BYTES_PER_ELEMENT,e)}},rr=(e,t,r)=>{if(r===0)return Dt;let n=t+r;return new Ht(r,e.ids.subarray(t,n),e.businessDateCodes.subarray(t,n),e.sourceTypeCodes.subarray(t,n))},Wg=16,_t=class{constructor(t=Wg){this.count=0;this.columns=null;this.initialCapacity=tt("ReportRowBatchWriter: capacity",t,0)}push(t,r,n){let o=this.columns===null||this.count===this.columns.ids.length?this.grow():this.columns;o.ids[this.count]=t,o.businessDateCodes[this.count]=r,o.sourceTypeCodes[this.count]=n,this.count+=1}pushItem(t){this.push(t.reportHubId,Bt(t.businessDate),fo(t.sourceType))}pushFrom(t,r){this.push(t.ids[r],t.businessDateCodes[r],t.sourceTypeCodes[r])}build(){let t=this.columns;return t===null?Dt:rr(t,0,this.count)}grow(){let t=this.columns,r=mn(Math.max(this.count+1,t===null?this.initialCapacity:t.ids.length*2));return t!==null&&(r.ids.set(t.ids),r.businessDateCodes.set(t.businessDateCodes),r.sourceTypeCodes.set(t.sourceTypeCodes)),this.columns=r,r}},nl=e=>{let t=new _t(e.length);for(let r of e)t.pushItem(r);return t.build()};var Lt=10,yo=1<<Lt,yn=yo-1,Kg=yo,zg=Kg/2,fn=new Map,sl=new Map,il=(e,t,r)=>e.businessDate===t&&e.sourceType===r,$g=(e,t,r)=>{let n=fn.get(e),o=n===void 0?sl.get(e):n;return o!==void 0&&il(o,t,r)?o:void 0},Ha=(e,t,r)=>{let n=tr(t),o=Hr(r),a=fn.get(e);if(a!==void 0&&il(a,n,o))return a;let s=a===void 0?sl.get(e):void 0,i=s!==void 0&&il(s,n,o)?s:{reportHubId:e,businessDate:n,sourceType:o};return fn.set(e,i),fn.size>=zg&&(sl=fn,fn=new Map),i},wp=(e,t,r)=>{let n=tr(t),o=Hr(r),a=$g(e,n,o);return a===void 0?{reportHubId:e,businessDate:n,sourceType:o}:a};var ct=class{constructor(t,r){this.chunks=t,this.length=r}at(t){let r=Number.isNaN(t)?0:Math.trunc(t),n=r<0?r+this.length:r;if(!(n<0||n>=this.length))return Tp(this,n)}[Symbol.iterator](){let{chunks:t}=this,r=0,n=0;return{next:()=>{for(;r<t.length;){let o=t[r];if(n<o.length){let a=wp(o.ids[n],o.businessDateCodes[n],o.sourceTypeCodes[n]);return n+=1,{done:!1,value:a}}r+=1,n=0}return{done:!0,value:void 0}}}}},Ba=new ct([],0),Tp=(e,t)=>{let r=e.chunks[t>>>Lt],n=t&yn;return Ha(r.ids[n],r.businessDateCodes[n],r.sourceTypeCodes[n])},Br=(e,t)=>e.chunks[t>>>Lt].ids[t&yn],Rn=(e,t)=>e.chunks[t>>>Lt].businessDateCodes[t&yn],dl=(e,t)=>e.chunks[t>>>Lt].sourceTypeCodes[t&yn],ol={businessDate:null,reportHubId:0},al={businessDate:null,reportHubId:0},hn=(e,t,r,n)=>(ol.reportHubId=e,ol.businessDate=tr(t),al.reportHubId=r,al.businessDate=tr(n),Cu(ol,al)),Ap=e=>{if(e.length===0)return Ba;let t=[];return xp(t,e,e.length),new ct(t,e.length)},xp=(e,t,r)=>{for(let n=0;n<r;n+=yo)e.push(rr(t,n,Math.min(yo,r-n)))},Vr={removals:[],replacements:[],additions:Dt,insertions:[]},jg=e=>{let t=mn(e.length);return t.ids.set(e.ids.subarray(0,e.length)),t.businessDateCodes.set(e.businessDateCodes.subarray(0,e.length)),t.sourceTypeCodes.set(e.sourceTypeCodes.subarray(0,e.length)),rr(t,0,e.length)},Gg=(e,t)=>{let r=e.chunks.slice(),n=new Map;for(let{index:o,id:a,businessDateCode:s,sourceTypeCode:i}of t){let l=o>>>Lt,d=n.get(l);d===void 0&&(d=jg(e.chunks[l]),n.set(l,d),r[l]=d);let c=o&yn;d.ids[c]=a,d.businessDateCodes[c]=s,d.sourceTypeCodes[c]=i}return new ct(r,e.length)},bn=(e,t)=>{let{additions:r,insertions:n}=t;if(t.removals.length===0&&t.replacements.length===0&&r.length===0)return e;let o=[...t.removals].sort((w,x)=>w-x),a=[...t.replacements].sort((w,x)=>w.index-x.index);if(o.length===0&&r.length===0)return Gg(e,a);let s=e.length,i=s-o.length+r.length;if(i===0)return Ba;let d=Math.min(o.length===0?s:o[0],a.length===0?s:a[0].index,r.length===0?s:n[0])>>>Lt,c=e.chunks.slice(0,d),u=d<<Lt,p=i-u,f=p===0?Dt:mn(p),m=0,y=()=>{if(m===p)throw new Error(`[daily-report] Edits of a list of ${s} rows write more than the ${i} rows they leave`);return p-m},g=(w,x,E)=>{y(),f.ids[m]=w,f.businessDateCodes[m]=x,f.sourceTypeCodes[m]=E,m+=1},R=(w,x)=>{for(let E=w;E<x;){let L=e.chunks[E>>>Lt],N=E&yn,M=Math.min(x-E,yo-N,y());f.ids.set(L.ids.subarray(N,N+M),m),f.businessDateCodes.set(L.businessDateCodes.subarray(N,N+M),m),f.sourceTypeCodes.set(L.sourceTypeCodes.subarray(N,N+M),m),m+=M,E+=M}},D=d<<Lt,b=0,h=0,S=0;for(;;){let w=Math.min(b<o.length?o[b]:s,h<a.length?a[h].index:s,S<r.length?n[S]:s);for(R(D,w),D=w;S<r.length&&n[S]===w;S++)g(r.ids[S],r.businessDateCodes[S],r.sourceTypeCodes[S]);if(w===s)break;if(b<o.length&&o[b]===w)b+=1,D=w+1;else if(h<a.length&&a[h].index===w){let x=a[h];g(x.id,x.businessDateCode,x.sourceTypeCode),h+=1,D=w+1}}return xp(c,f,m),new ct(c,u+m)},Ro=(e,t)=>{let{chunks:r}=e;for(let n=0;n<r.length;n++){let{ids:o,length:a}=r[n];for(let s=0;s<a;s++)if(o[s]===t)return(n<<Lt)+s}return-1},vp=(e,t)=>{let r=Ro(e,t);return r===-1?void 0:Tp(e,r)},ll=(e,t,r)=>{let n=t.get(e);if(n!==void 0)return n;let o=[];for(let a=0;a<e.length;a++){let s=e.ids[a];r(s)&&o.push(wp(s,e.businessDateCodes[a],e.sourceTypeCodes[a]))}return t.set(e,o),o},Ip=(e,t,r)=>{let n=[];if(!(e instanceof ct)){for(let o of e)r(o.reportHubId)&&n.push(o);return n}for(let o of e.chunks){let a=ll(o,t,r);for(let s=0;s<a.length;s++)n.push(a[s])}return n},Cp=(e,t,r,n)=>{let o=Math.min(e.chunks.length,t.chunks.length),a=0;for(;a<o&&e.chunks[a]===t.chunks[a];)a+=1;let s=[];for(let l=a;l<e.chunks.length;l++){let d=ll(e.chunks[l],r,n);for(let c=0;c<d.length;c++)s.push(d[c])}let i=[];for(let l=a;l<t.chunks.length;l++){let d=ll(t.chunks[l],r,n);for(let c=0;c<d.length;c++)i.push(d[c])}return{before:s,after:i}};var _p=(e,t)=>Number.isInteger(t)&&t>=0&&t<e.length,Ee=(e,t)=>_p(e,t)?e.at(t):void 0,Yg=(e,t)=>e instanceof ct?_p(e,t)?Br(e,t):void 0:Ee(e,t)?.reportHubId,qg=16,Lp=(e,t)=>e!==null&&e.reportHubId===t?e.index:null,ve=(e,t,r)=>{let n=r===null?void 0:Ee(e,r);if(r!==null&&n!==void 0){if(n.reportHubId===t)return r;for(let o=1;o<=qg;o++){if(Ee(e,r+o)?.reportHubId===t)return r+o;if(Ee(e,r-o)?.reportHubId===t)return r-o}}return wt(e,t)},wt=(e,t)=>{if(e instanceof ct)return Ro(e,t);let r=0;for(let n of e){if(n.reportHubId===t)return r;r+=1}return-1},cl=e=>{let t=Ee(e,0);return t===void 0?null:t.reportHubId},Np=(e,t)=>{let r=[];for(let n of e){if(r.length>=t)break;r.push(n.reportHubId)}return r},Vt=(e,t)=>{let r=Ee(e,t);if(r===void 0)throw Op(e,t);return r},Va=(e,t)=>{let r=Yg(e,t);if(r===void 0)throw Op(e,t);return r},Op=(e,t)=>new Error(`[daily-report] No report at index ${t} of a list of ${e.length}`);var Ua="data-daily-report-row",Mp=`[${Ua}]`,kp="data-daily-report-button",Wa="data-daily-report-row-focus",Ka={[Wa]:""},Pp="data-daily-report-view",za={[Pp]:""},ul="treegrid",Xg='button, a[href], input, textarea, select, label, [role="button"], [contenteditable]:not([contenteditable="false"])',Zg=/^[1-9]\d*$/,Fp=e=>{if(e===null||!Zg.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null},Hp=e=>e.querySelector(`[${Pp}] [role="${ul}"]`),Bp=e=>e.querySelector(`[${Wa}]`),Ur=(e,t)=>{if(t===null||!xe(e))return null;let r=e.closest(Mp);return r===null||r===t||!t.contains(r)?null:r},ho=e=>Fp(e.getAttribute(Ua)),Sr=e=>Fp(e.getAttribute("aria-posinset")),Vp=e=>{let t=e.closest(Mp),r=t===null?null:Sr(t);return r===null?null:r-1},Up=(e,t)=>{if(e===null)return null;let r=ho(e);if(r===null)return null;let n=Sr(e),o=ve(t,r,n===null?null:n-1);return o===-1?null:{reportHubId:r,index:o}},Wp=(e,t)=>{if(!xe(e))return!1;let r=e.closest(Xg);return r!==null&&r!==t&&t.contains(r)};import{createContext as Kp}from"react";var Wr=Kp(0),gr=-1,zp=(e,t)=>t.phase==="complete"?e:t.totalCount===null?gr:Math.max(e,t.totalCount),Kr=Kp(-1);import{flushSync as $p}from"react-dom";var Qg=()=>({deferObservation:!1,settling:!1,queuedObservations:new Set,queuedMeasurements:new Set,frame:0}),jp=(e,t)=>{e.queuedObservations.add(t),e.settling&&e.queuedMeasurements.add(t)},Gp=e=>{let t=new Set,r=Qg(),n=null,o=()=>{let s=r.queuedMeasurements;for(;s.size>0;){let i=[...s].map(l=>[l,l.getBoundingClientRect().height]);s.clear(),$p(()=>e(i))}},a=()=>{o(),r.settling=!1};return{observe:s=>(t.add(s),n!==null&&(r.deferObservation?jp(r,s):n.observe(s)),()=>{t.delete(s),r.queuedObservations.delete(s),r.queuedMeasurements.delete(s),n!==null&&n.unobserve(s)}),remeasure:s=>{if(n!==null){if(!r.deferObservation){n.observe(s);return}n.unobserve(s),jp(r,s)}},attach:s=>{if(n!==null)throw new Error("[daily-report] the row-height delivery is connected to a view's window already; disconnect it before connecting it again");let i=()=>{r.frame=0,r.deferObservation=!1;for(let c of r.queuedObservations)d.observe(c);r.queuedObservations.clear()},l=c=>{r.deferObservation=!0,r.settling=!0,s.cancelAnimationFrame(r.frame),r.frame=s.requestAnimationFrame(i),$p(()=>e(c.map(u=>[u.target,u.borderBoxSize[0].blockSize]))),o(),queueMicrotask(a)},d=new s.ResizeObserver(l);for(let c of t)d.observe(c);return n=d,()=>{s.cancelAnimationFrame(r.frame),r.frame=0,r.deferObservation=!1,r.settling=!1,r.queuedObservations.clear(),r.queuedMeasurements.clear(),d.disconnect(),n=null}}}};import{useVirtualScrollItem as em}from"@aiquants/virtualscroll";import{createContext as tm,useCallback as yl,useContext as fl,useLayoutEffect as Yp,useReducer as Jg,useRef as qp}from"react";import{flushSync as Xp}from"react-dom";var eE=1/2,tE=32,rE=8,Zp=16,Qp=2,nE=1,rm=()=>{},pl=Object.freeze({visible:0,reach:1,near:2,far:3}),$a=Object.freeze({capture:!0,passive:!0}),ml=()=>({samples:[],next:0,p90:null}),Jp=()=>({body:ml(),box:ml(),marks:ml()}),oE=(e,t)=>{if(e.samples[e.next]=t,e.next=(e.next+1)%tE,e.samples.length<rE)return;let r=[...e.samples].sort((n,o)=>n-o);e.p90=r[Math.ceil(.9*r.length)-1]},aE=(e,t,r,n,o)=>{let a=e.handle.getZone(),s=o(e.reportHubId),i=s===null||r===null?0:Math.sign(s-r);return t&&a==="far"&&i!==n?null:s===null?[pl[a],Number.POSITIVE_INFINITY,0]:r===null?[pl[a],s,0]:[pl[a],Math.abs(s-r),i===-n?1:0]},sE=(e,t)=>{for(let r=0;r<e.length;r++)if(e[r]!==t[r])return e[r]<t[r]?-1:1;return 0},nm=({gridId:e,isHolding:t,subscribeHold:r,keySteps:n,activeIndex:o,indexOf:a})=>{let s=new Map,i=new Map,l=new Map,d=new Map,c={fixed:Jp(),measured:Jp()},u=null,p=null,f=null,m=1,y=0,g=0,R=0,D=0,b=!1,h=()=>{let E=t(),L=o(),N=null,M=null;for(let T of s.values()){let A=aE(T,E,L,m,a);A===null||M!==null&&sE(A,M)>=0||(N=T,M=A)}return N},S=E=>{s.get(E.reportHubId)===E&&(s.delete(E.reportHubId),E.unsubscribeZone())},w=()=>{u!==null&&u.wake()},x=()=>{b=!1;let E=[...i.values()];i.clear(),y+=E.length,Xp(()=>{for(let L of E)L.apply()})};return{gridId:e,enqueue:(E,L)=>{let N=s.get(E.reportHubId);if(N!==void 0&&S(N),i.delete(E.reportHubId),!t()&&E.handle.getZone()==="visible")return L==="commit"?(y+=1,E.apply(),rm):(i.set(E.reportHubId,E),b||(b=!0,queueMicrotask(x)),()=>{i.get(E.reportHubId)===E&&i.delete(E.reportHubId)});let M={...E,unsubscribeZone:E.handle.subscribeZone(()=>{let T=E.handle.getZone();if(T==="visible"){S(M),y+=1,E.apply();return}T!=="far"&&w()})};return s.set(E.reportHubId,M),w(),()=>{S(M)}},declareBody:(E,L,N)=>{let M={handle:L,body:N,fresh:N!==null};return l.set(E,M),N!==null&&d.set(N,E),L.setSkippable(N===null),()=>{l.get(E)===M&&l.delete(E),N!==null&&d.get(N)===E&&d.delete(N)}},measured:E=>{let L=d.get(E),N=L===void 0?void 0:l.get(L);N===void 0||N.body!==E||(N.fresh=!1,N.handle.setSkippable(!0))},invalidate:E=>{let L=l.get(E);if(!(L===void 0||L.body===null)){if(L.fresh){L.fresh=!1;return}L.handle.setSkippable(!1),p!==null&&p(L.body)}},attach:(E,L)=>{if(u!==null)throw new Error("[daily-report] the row pass is connected to a view's window already; disconnect it before connecting it again");let N=new E.MessageChannel,M="idle",T=0,A=null,I=[],_=0,k=[],O=0,F=0,$=0,j=0,W=0,V={start:0,inputEpoch:0,units:0,reservoir:null},le=()=>{M!=="idle"||h()===null||(M="arming",N.port1.postMessage(null))},Te=()=>{M="framing",T=E.requestAnimationFrame(se)},be=Q=>{let oe=c[Q.sizing][Q.change];S(Q),Xp(Q.apply),V.reservoir=V.units===0||V.reservoir===oe?oe:null,V.units+=1},De=(Q,oe)=>{let me=h();if(me===null)return;let Ie=c[me.sizing][me.change].p90,Qe=Q-Qp-oe;if(Ie===null?oe>Q/2:Ie>Qe&&oe>Qp){let _e=me.handle.getZone(),et=_e==="visible"||_e==="reach";if(!et||W<nE){R+=1,W=et?W+1:0;return}D+=1}if(W=0,be(me),Ie===null)return;let Je=eE*Q;if(Ie>Je){g+=1;return}let Mt=Ie;for(let _e=h();_e!==null&&u===q;_e=h()){let et=c[_e.sizing][_e.change].p90;if(et===null||Mt+et>Je||Mt+et>Qe)return;be(_e),Mt+=et}},se=Q=>{T=0;let oe=E.performance.now(),me=oe-Q;k[O]=me,O=(O+1)%Zp;let Ie=A===null;A!==null&&(I[_]=Q-A,_=(_+1)%Zp),A=Q;let Qe=o();Qe!==null&&f!==null&&Qe!==f&&(m=Qe>f?1:-1),f=Qe;let It=n.appliedEpoch(),Je=!Ie&&F===$&&It===j&&!n.pending();if($=F,j=It,V.start=oe,V.inputEpoch=F,V.units=0,V.reservoir=null,Je&&De(Math.min(...I),me-Math.min(...k)),u===q){if(N.port2.postMessage(null),h()===null){M="idle",A=null,W=0;return}T=E.requestAnimationFrame(se)}},Ze=()=>{j=n.appliedEpoch();let{units:Q,reservoir:oe}=V;V.units=0,!(Q===0||oe===null||V.inputEpoch!==F)&&oE(oe,(E.performance.now()-V.start)/Q)},We=()=>{F+=1},q={wake:le};N.port2.onmessage=Te,N.port1.onmessage=Ze,E.addEventListener("keydown",We,$a),E.addEventListener("keyup",We,$a),u=q,p=L;let he=r(le);return le(),()=>{he(),E.removeEventListener("keydown",We,$a),E.removeEventListener("keyup",We,$a),T!==0&&E.cancelAnimationFrame(T),N.port1.onmessage=null,N.port2.onmessage=null,N.port1.close(),N.port2.close(),u=null,p=null}},syncReleaseCount:()=>y,oversizeFrameCount:()=>g,lateFrameCount:()=>R,lateForcedFrameCount:()=>D}},ja=tm(null),bo=tm(null),Rl=e=>{let t=fl(ja);if(t===null)throw new Error(`[daily-report] ${e} is called outside a view's rows (no row pass)`);return t},om=()=>Rl("useViewGridId").gridId,Ga=(e,t,r)=>{let n=Rl("useRowPass"),o=em(),[a,s]=Jg(()=>({bodyReady:!0,rendered:t.read()}),t,c=>({bodyReady:o.getZone()==="visible",rendered:c.read()})),i=qp(a),l=qp(rm),d=yl(c=>{let u=i.current,p=t.read();if(u.bodyReady&&Object.is(u.rendered,p)){l.current();return}let f=u.bodyReady?t.changesBox(u.rendered,p)?"box":"marks":"body";l.current=n.enqueue({reportHubId:e,handle:o,apply:s,sizing:r,change:f},c)},[n,e,o,t,r]);return Yp(()=>{let c=t.subscribe(()=>d("notification"));return()=>{c(),l.current()}},[t,d]),Yp(()=>{let c=i.current;if(i.current=a,d("commit"),r==="fixed")return n.declareBody(e,o,null);c!==a&&t.changesBox(c.rendered,a.rendered)&&n.invalidate(e)},[n,e,o,t,r,a,d]),a},am=e=>{let t=Rl("useRowBodyDeclaration"),r=em();return yl(o=>t.declareBody(e,r,o),[t,e,r])},sm=()=>{let e=fl(ja),t=fl(bo);return yl(()=>{e!==null&&t!==null&&e.invalidate(t)},[e,t])};import{clsx as iE}from"clsx";import{twMerge as lE}from"tailwind-merge";function v(...e){return lE(iE(e))}var Ne=e=>{let t=new Map;return r=>{let n=r===void 0?"":r,o=t.get(n);if(o!==void 0)return o;let a=v(e,n);return t.set(n,a),a}};import{useCallback as im,useMemo as dE,useSyncExternalStore as cE}from"react";var lm="(prefers-reduced-motion: reduce)",dm=e=>Pe(e).matchMedia(lm).matches?"instant":"smooth",uE=Object.freeze({...Ki,startVelocityThreshold:Number.POSITIVE_INFINITY}),Sn=e=>e?uE:Ki,pE=()=>!1,mE=()=>{},gn=e=>{let t=dE(()=>e===null?null:Pe(e).matchMedia(lm),[e]),r=im(o=>t===null?mE:(t.addEventListener("change",o),()=>t.removeEventListener("change",o)),[t]),n=im(()=>t===null?!1:t.matches,[t]);return cE(r,n,pE)};import{useSyncExternalStore as fE}from"react";import{jsx as hl}from"react/jsx-runtime";var Ya=()=>{let e={label:"",isWheelScrollActive:!1},t=new Set,r=n=>{e=n;for(let o of[...t])o()};return{getState:()=>e,setLabel:n=>{n!==e.label&&r({...e,label:n})},setWheelScrollActive:n=>{n!==e.isWheelScrollActive&&r({...e,isWheelScrollActive:n})},subscribe:n=>(t.add(n),()=>{t.delete(n)})}},cm=16,yE=v(gc,"border-slate-200 bg-white text-slate-700 text-xs shadow-md shadow-slate-400/30 dark:border-slate-700 dark:bg-slate-900/90 dark:text-slate-100"),RE=(e,t)=>e==="vertical"?{top:0,left:-cm,transform:`translate(-100%, calc(${t}px - 50%))`}:{top:-cm,left:0,transform:`translate(calc(${t}px - 50%), -100%)`},qa=({orientation:e,thumbCenter:t,isDragging:r,isTapScrollActive:n,store:o})=>{let{label:a,isWheelScrollActive:s}=fE(o.subscribe,o.getState,o.getState);return a.trim()&&(r||n||s)?hl("div",{className:"pointer-events-none absolute flex items-center",style:RE(e,t),children:hl("div",{className:yE,children:hl("span",{className:"whitespace-nowrap font-semibold text-slate-800 dark:text-slate-100",children:a.trim()})})}):null};import{createContext as hE,useContext as bE,useLayoutEffect as SE,useRef as gE}from"react";var bl=hE(null),Xa=({items:e,scroller:t,readTopReportId:r})=>{let n=bE(bl),o=n===null?null:n.request,a=gE(o===null?0:o.seq);SE(()=>{if(!(n===null||o===null||o.seq===a.current)){if(a.current=o.seq,o.kind==="restore"){let s=n.slot.preSearchTopReportId;n.slot.preSearchTopReportId=null;let i=s===null?-1:wt(e,s);i!==-1&&t.toIndex(i,{align:"top"});return}o.kind==="enter"&&(n.slot.preSearchTopReportId=r()),e.length>0&&t.toIndex(0,{align:"top"})}},[n,o,e,t,r])};import{memo as Id,useCallback as Zr,useContext as Ix,useEffect as PR,useLayoutEffect as FR,useMemo as Fn,useRef as vd}from"react";var Za="legacy-",EE=e=>`${Za}${e}`,um=(e,t,r,n)=>{if(typeof n!="string"||n.trim()==="")throw ke("mergeComments: unknownAuthorName","a non-blank string",n);let o=e.map((s,i)=>({id:EE(i),authorName:s.name||n,content:s.text||"",isMine:!1,color:s.color||void 0,isLegacy:!0,isAuthorUnknown:!s.name})),a=t.map(s=>({id:s.id,authorName:s.userName||n,content:s.content??"",createdAt:s.createdAt??"",isMine:r?s.userId===r:s.isMine,isLegacy:!1,isAuthorUnknown:!s.userName}));return[...o,...a]},pm=e=>{if(!e)return"text-gray-700 dark:text-gray-300";let t=e.toLowerCase();return t.includes("red")||t.includes("\u8D64")?"text-red-600 dark:text-red-400":t.includes("green")||t.includes("\u7DD1")?"text-green-600 dark:text-green-400":t.includes("blue")||t.includes("\u9752")?"text-blue-600 dark:text-blue-400":t.includes("yellow")||t.includes("\u9EC4")?"text-yellow-600 dark:text-yellow-400":t.includes("orange")||t.includes("\u6A59")?"text-orange-500 dark:text-orange-400":"text-gray-700 dark:text-gray-300"};var DE=Object.freeze(["subject","content","author","employeeName","updatedBy","category","creationCategory","customerName"]),fe=Object.freeze({field:e=>e,interviewer:(e,t)=>`interviewer:${e}:${t}`,attachment:e=>`attachment:${e}`,comment:(e,t)=>`comment:${e}:${t}`}),wE=e=>e.startsWith(Za)?dn(e.slice(Za.length))!==null:Mu(e)!==null,En=e=>{if(DE.includes(e))return!0;let t=e.split(":");switch(t[0]){case"interviewer":return t.length===3&&dn(t[1])!==null&&(t[2]==="name"||t[2]==="affiliation");case"attachment":return t.length===2&&dn(t[1])!==null;case"comment":return t.length===3&&wE(t[1])&&(t[2]==="author"||t[2]==="content");default:return!1}},TE=16777619,AE=2166136261,xE=(e,t,r,n)=>{let o=e;for(let a=r;a<n;a++)o^=t.charCodeAt(a),o=Math.imul(o,TE);return o>>>0},Sl=e=>xE(AE,e,0,e.length),vE=String.fromCodePoint(3),IE=String.fromCodePoint(2),CE=String.fromCodePoint(1),mm=e=>Sl(e.map(t=>t.map(r=>r.map(n=>`${n.tier}${n.text}`).join(vE)).join(IE)).join(CE));import{createContext as _f,useCallback as vf,useEffect as If,useLayoutEffect as Cf,useMemo as $l,useRef as Kl,useState as Wt}from"react";import{z as we}from"zod/v3";var fm=Object.freeze(["create","update","publish","delete","toggleStar","toggleRead","addComment","deleteComment","clearCache"]);var ut=Object.freeze({intent:"intent",clientTempId:"clientTempId",businessDate:"businessDate",operationTimestamp:"operationTimestamp",reportHubId:"reportHubId",title:"title",content:"content",isStarred:"isStarred",isRead:"isRead",commentId:"commentId"}),Qa=e=>{let t=new FormData;if(t.append(ut.intent,e.intent),e.intent==="clearCache"||(t.append(ut.clientTempId,e.clientTempId),e.businessDate!==null&&t.append(ut.businessDate,e.businessDate),e.operationTimestamp!==null&&t.append(ut.operationTimestamp,String(e.operationTimestamp)),e.intent==="create"))return t;switch(t.append(ut.reportHubId,String(e.reportHubId)),e.intent){case"update":return e.changes.title!==void 0&&t.append(ut.title,e.changes.title),e.changes.content!==void 0&&t.append(ut.content,e.changes.content),t;case"publish":case"delete":return t;case"toggleStar":return t.append(ut.isStarred,String(e.value)),t;case"toggleRead":return t.append(ut.isRead,String(e.value)),t;case"addComment":return t.append(ut.content,e.content),t;case"deleteComment":return t.append(ut.commentId,String(e.commentId)),t}},_E=()=>{let e=at,t=we.string().regex(ua),r=we.literal("OK"),n=we.object({isStarred:we.boolean(),isRead:we.boolean()}),o=we.number().int().nonnegative().nullable();return{create:we.object({status:r,intent:we.literal("create"),reportHubId:e,clientTempId:t,report:br}),update:we.object({status:r,intent:we.literal("update"),reportHubId:e,clientTempId:t}),publish:we.object({status:r,intent:we.literal("publish"),reportHubId:e,clientTempId:t,report:br.nullable()}),delete:we.object({status:r,intent:we.literal("delete"),reportHubId:e,clientTempId:t}),toggleStar:we.object({status:r,intent:we.literal("toggleStar"),reportHubId:e,clientTempId:t,updatedStatus:n,operationTimestamp:o}),toggleRead:we.object({status:r,intent:we.literal("toggleRead"),reportHubId:e,clientTempId:t,updatedStatus:n,operationTimestamp:o}),addComment:we.object({status:r,intent:we.literal("addComment"),reportHubId:e,clientTempId:t,newComment:Ni}),deleteComment:we.object({status:r,intent:we.literal("deleteComment"),reportHubId:e,clientTempId:t,deletedCommentId:at}),clearCache:we.object({status:r,intent:we.literal("clearCache")})}},gl=null,LE=()=>(gl===null&&(gl=_E()),gl),ym=(e,t)=>{let r=LE()[e].safeParse(t);return r.success?{result:r.data}:{mismatch:ya(r.error)}};import{useState as kE}from"react";var Ja=e=>{let t=e>>>0,r=(e-t)/4294967296|0;return Math.imul(t^Math.imul(r,1540483477),2654435761)>>>0},nr=class{constructor(t){this.count=0;this.idAt=t,this.bits=4,this.slots=new Int32Array(16).fill(-1)}get size(){return this.count}get capacity(){return this.slots.length}find(t){let r=this.slotOf(t);return r===-1?-1:this.slots[r]}set(t,r){let n=this.slotOf(t);if(n!==-1){this.slots[n]=r;return}(this.count+1)*2>this.slots.length&&this.grow();let o=this.slots.length-1,a=Ja(t)>>>32-this.bits;for(;this.slots[a]!==-1;)a=a+1&o;this.slots[a]=r,this.count+=1}delete(t){let r=this.slotOf(t);if(r===-1)return!1;let n=this.slots.length-1,o=32-this.bits;this.slots[r]=-1,this.count-=1;for(let a=r+1&n;this.slots[a]!==-1;a=a+1&n){let s=Ja(this.idAt(this.slots[a]))>>>o;(a-s&n)>=(a-r&n)&&(this.slots[r]=this.slots[a],this.slots[a]=-1,r=a)}return!0}clear(){this.slots.fill(-1),this.count=0}slotOf(t){let r=this.slots.length-1;for(let n=Ja(t)>>>32-this.bits;this.slots[n]!==-1;n=n+1&r)if(this.idAt(this.slots[n])===t)return n;return-1}grow(){let t=this.slots;this.bits+=1,this.slots=new Int32Array(1<<this.bits).fill(-1);let r=this.slots.length-1,n=32-this.bits;for(let o=0;o<t.length;o++){let a=t[o];if(a===-1)continue;let s=Ja(this.idAt(a))>>>n;for(;this.slots[s]!==-1;)s=s+1&r;this.slots[s]=a}}};var NE=e=>e.appended instanceof Ht&&e.replaced.previous instanceof Ht&&e.replaced.next instanceof Ht&&e.removed instanceof Ht,Dl=e=>{if(NE(e))return e;throw new Error(`[daily-report] The ids stream change from revision ${e.base} to ${e.revision} holds a row batch the package did not build`)},es=1,ts=2,zr=3,Rm=16,OE=8192,ME=Float64Array.BYTES_PER_ELEMENT+2*Uint32Array.BYTES_PER_ELEMENT+3*Uint8Array.BYTES_PER_ELEMENT,El=e=>{let t=new ArrayBuffer(e*ME),r=e*Float64Array.BYTES_PER_ELEMENT,n=r+2*e*Uint32Array.BYTES_PER_ELEMENT;return{ids:new Float64Array(t,0,e),firstDates:new Uint32Array(t,r,e),lastDates:new Uint32Array(t,r+e*Uint32Array.BYTES_PER_ELEMENT,e),states:new Uint8Array(t,n,e),firstSources:new Uint8Array(t,n+e,e),lastSources:new Uint8Array(t,n+2*e,e)}},hm=Object.freeze({previous:Dt,next:Dt}),wl=()=>{let e=0,t=El(Rm),r=d=>t.ids[d],n=new nr(r),o=()=>{let d=El(t.ids.length*2);d.ids.set(t.ids),d.firstDates.set(t.firstDates),d.lastDates.set(t.lastDates),d.states.set(t.states),d.firstSources.set(t.firstSources),d.lastSources.set(t.lastSources),t=d},a=(d,c)=>{e===t.ids.length&&o();let u=e;return e+=1,t.ids[u]=d,t.states[u]=c,n.set(d,u),u},s=(d,c,u)=>{let p=n.find(d);if(p===-1){let f=a(d,es);t.lastDates[f]=c,t.lastSources[f]=u;return}if(t.states[p]!==zr)throw new Error(`[daily-report] The ids stream list took report ${d}, which it already holds`);t.states[p]=ts,t.lastDates[p]=c,t.lastSources[p]=u},i=(d,c,u,p,f)=>{let m=n.find(d);if(m===-1)m=a(d,ts),t.firstDates[m]=c,t.firstSources[m]=u;else if(t.states[m]===zr)throw new Error(`[daily-report] The ids stream list changed report ${d}, which it no longer holds`);t.lastDates[m]=p,t.lastSources[m]=f},l=(d,c,u)=>{let p=n.find(d);if(p===-1){let f=a(d,zr);t.firstDates[f]=c,t.firstSources[f]=u;return}if(t.states[p]===es){n.delete(d),t.states[p]=0;return}if(t.states[p]===zr)throw new Error(`[daily-report] The ids stream list dropped report ${d}, which it no longer holds`);t.states[p]=zr};return{add:s,change:i,remove:l,fold:d=>{let{removed:c,appended:u,replaced:p}=Dl(d),{previous:f,next:m}=p;for(let y=0;y<c.length;y++)l(c.ids[y],c.businessDateCodes[y],c.sourceTypeCodes[y]);for(let y=0;y<m.length;y++)i(m.ids[y],f.businessDateCodes[y],f.sourceTypeCodes[y],m.businessDateCodes[y],m.sourceTypeCodes[y]);for(let y=0;y<u.length;y++)s(u.ids[y],u.businessDateCodes[y],u.sourceTypeCodes[y])},isEmpty:()=>n.size===0,build:(d,c)=>{let u=0,p=0,f=0;for(let h=0;h<e;h++){let S=t.states[h];S===es?u+=1:S===ts?p+=1:S===zr&&(f+=1)}let m=u+2*p+f;if(m===0)return{base:d,revision:c,appended:Dt,replaced:hm,removed:Dt};let y=mn(m),g=0,R=u,D=R+p,b=D+p;for(let h=0;h<e;h++){let S=t.states[h];S===es?(y.ids[g]=t.ids[h],y.businessDateCodes[g]=t.lastDates[h],y.sourceTypeCodes[g]=t.lastSources[h],g+=1):S===ts?(y.ids[R]=t.ids[h],y.businessDateCodes[R]=t.firstDates[h],y.sourceTypeCodes[R]=t.firstSources[h],R+=1,y.ids[D]=t.ids[h],y.businessDateCodes[D]=t.lastDates[h],y.sourceTypeCodes[D]=t.lastSources[h],D+=1):S===zr&&(y.ids[b]=t.ids[h],y.businessDateCodes[b]=t.firstDates[h],y.sourceTypeCodes[b]=t.firstSources[h],b+=1)}return{base:d,revision:c,appended:rr(y,0,u),replaced:p===0?hm:{previous:rr(y,u,p),next:rr(y,u+p,p)},removed:rr(y,u+2*p,f)}},reset:()=>{if(e=0,t.ids.length<=OE){n.clear();return}t=El(Rm),n=new nr(r)}}},bm=(e,t,r)=>{let n=wl();for(let o of e)n.fold(o);return n.build(t,r)},Sm=(e,t)=>{let r=e.findIndex(n=>n.base===t);if(r===-1)return null;for(let n=r+1;n<e.length;n++)if(e[n].base!==e[n-1].revision)return null;return e.slice(r)};var PE={items:Ba,held:new Map,hidden:new Map,revision:null,settled:!1},Tl=(e,t,r)=>{let n=0,o=e.length;for(;n<o;){let a=n+o>>1;hn(Br(e,a),Rn(e,a),t,r)<0?n=a+1:o=a}return n<e.length&&Br(e,n)===t?n:-1},rs=(e,t)=>Tl(e,t.reportHubId,Bt(t.businessDate)),Al=(e,t,r,n)=>{let o=n,a=e.length;for(;o<a;){let s=o+a>>1;hn(Br(e,s),Rn(e,s),t,r)<=0?o=s+1:a=s}return o},FE=(e,t)=>{if(t.length===0)return[];let r=e.length-1;if(e.length===0||hn(Br(e,r),Rn(e,r),t.ids[0],t.businessDateCodes[0])<0)return new Array(t.length).fill(e.length);let n=[],o=0;for(let a=0;a<t.length;a++)o=Al(e,t.ids[a],t.businessDateCodes[a],o),n.push(o);return n},HE=e=>{for(let t=1;t<e.length;t++)if(hn(e.ids[t-1],e.businessDateCodes[t-1],e.ids[t],e.businessDateCodes[t])>=0)return!1;return!0},Em=e=>{if(HE(e))return e;let t=Array.from({length:e.length},(n,o)=>o);t.sort((n,o)=>hn(e.ids[n],e.businessDateCodes[n],e.ids[o],e.businessDateCodes[o]));let r=new _t(e.length);for(let n of t)r.pushFrom(e,n);return r.build()},Dm=(e,t,r,n)=>{let o=Dp(t.readRows()),a=new nr(d=>o.ids[d]);for(let d=0;d<o.length;d++)a.set(o.ids[d],d);let s=new _t(o.length+e.held.size),i=new Map;for(let d=0;d<o.length;d++){let c=o.ids[d];n.has(c)?i.set(c,o.itemAt(d)):s.pushFrom(o,d)}let l=new Map;for(let d of e.items.chunks)for(let c=0;c<d.length;c++){let u=d.ids[c];if(a.find(u)!==-1||n.has(u))continue;let p=e.held.get(u),f=p===void 0?Number.NEGATIVE_INFINITY:p.since;r&&u>0&&t.itemsRevision>f||(l.set(u,{item:p===void 0?Ha(u,d.businessDateCodes[c],d.sourceTypeCodes[c]):p.item,since:f}),s.pushFrom(d,c))}return{items:Ap(Em(s.build())),held:l,hidden:i,revision:t.itemsRevision,settled:r}},BE=(e,t,r,n)=>{let o=e.revision;if(o===t.itemsRevision&&e.settled===r)return e;let a=o===null?null:o===t.itemsRevision?[]:Sm(t.itemsChanges,o);if(o===null||a===null)return Dm(e,t,r,n);let s=e.items,i=[],l=[],d=a.length===0?null:a.length===1?Dl(a[0]):bm(a,o,t.itemsRevision),c=new _t(d===null?0:d.appended.length+d.replaced.next.length),u=null,p=()=>(u===null&&(u=new Map(e.held)),u),f=null,m=()=>(f===null&&(f=new Map(e.hidden)),f);if(d!==null){let{appended:D,replaced:b,removed:h}=d;for(let w=0;w<h.length;w++){let x=h.ids[w];if(e.hidden.has(x)&&m().delete(x),e.held.has(x))continue;let E=Tl(s,x,h.businessDateCodes[w]);E!==-1&&(r||n.has(x)?i.push(E):p().set(x,{item:Ha(x,Rn(s,E),dl(s,E)),since:Number.NEGATIVE_INFINITY}))}let S=(w,x,E)=>{let L=w.ids[x],N=w.businessDateCodes[x],M=w.sourceTypeCodes[x],T=e.held.get(L);T!==void 0&&p().delete(L);let A=T===void 0?E:Bt(T.item.businessDate),I=A===-1?-1:Tl(s,L,A);if(n.has(L)){I!==-1&&i.push(I),m().set(L,w.itemAt(x));return}if((f===null?e.hidden:f).has(L)&&m().delete(L),I!==-1&&Rn(s,I)===N){dl(s,I)!==M&&l.push({index:I,id:L,businessDateCode:N,sourceTypeCode:M});return}I!==-1&&i.push(I),c.push(L,N,M)};for(let w=0;w<b.next.length;w++)S(b.next,w,b.previous.businessDateCodes[w]);for(let w=0;w<D.length;w++)S(D,w,-1)}let y=t.itemsRevision;if(r)for(let[D,b]of u===null?e.held:u){if(D<=0||y<=b.since)continue;let h=rs(s,b.item);h!==-1&&i.push(h),p().delete(D)}let g=Em(c.build());return{items:bn(s,{removals:i,replacements:l,additions:g,insertions:FE(s,g)}),held:u===null?e.held:u,hidden:f===null?e.hidden:f,revision:y,settled:r}},gm=new WeakMap,VE=(e,t,r,n)=>{let o=gm.get(e);if(o!==void 0&&o.revision===t.itemsRevision&&o.changes===t.itemsChanges&&o.settled===r&&o.tombstones===n)return o.rows;let a=BE(e,t,r,n);return gm.set(e,{revision:t.itemsRevision,changes:t.itemsChanges,settled:r,tombstones:n,rows:a}),a},wm=(e,t,r)=>{let[n,o]=kE(()=>Dm(PE,e,t,r));return(n.revision!==e.itemsRevision||n.settled!==t)&&o(a=>VE(a,e,t,r)),[n,o]},ns=(e,t,r)=>{if(e.hidden.has(t.reportHubId))return xl(e,t.reportHubId);if(e.held.has(t.reportHubId)||rs(e.items,t)!==-1||Ro(e.items,t.reportHubId)!==-1)return e;let n=bn(e.items,{...Vr,additions:nl([t]),insertions:[Al(e.items,t.reportHubId,Bt(t.businessDate),0)]}),o=new Map(e.held);return o.set(t.reportHubId,{item:t,since:r}),{...e,items:n,held:o}},xl=(e,t)=>{let r=e.hidden.get(t);if(r===void 0)return e;let n=new Map(e.hidden);return n.delete(t),{...e,items:bn(e.items,{...Vr,additions:nl([r]),insertions:[Al(e.items,r.reportHubId,Bt(r.businessDate),0)]}),hidden:n}},$r=(e,t)=>{let r=e.held.get(t);if(r===void 0)return e;let n=rs(e.items,r.item),o=new Map(e.held);return o.delete(t),{...e,items:bn(e.items,n===-1?Vr:{...Vr,removals:[n]}),held:o}},Tm=(e,t)=>{let r=e.held.get(t.reportHubId),n=rs(e.items,r===void 0?t:r.item);if(r===void 0&&n===-1)return e;let o=new Map(e.held);return o.delete(t.reportHubId),{...e,items:bn(e.items,n===-1?Vr:{...Vr,removals:[n]}),held:o}},Am=e=>({...e,revision:null});import{startTransition as eD,useLayoutEffect as tD,useState as rD,useSyncExternalStore as Do}from"react";var xm=e=>{let t=new URLSearchParams;return e.cursor!==null&&(t.set(Le.cursorReportHubId,String(e.cursor.reportHubId)),e.cursor.businessDate!==null&&t.set(Le.cursorBusinessDate,e.cursor.businessDate)),e.snapshot!==null&&t.set(Le.cursorSnapshot,e.snapshot),e.forceRefresh&&t.set(Le.forceRefresh,"true"),t};var So=1,UE=2,WE=1024,Dn=1024,os=class{constructor(){this.used=0;this.holes=0;this.ids=new Float64Array(Dn);this.dates=new Uint32Array(Dn);this.sources=new Uint8Array(Dn);this.flags=new Uint8Array(Dn);this.positions=new nr(t=>this.ids[t])}get size(){return this.positions.size}find(t){return this.positions.find(t)}businessDateCodeAt(t){return this.dates[t]}sourceTypeCodeAt(t){return this.sources[t]}itemAt(t){return{reportHubId:this.ids[t],businessDate:tr(this.dates[t]),sourceType:Hr(this.sources[t])}}add(t,r,n){this.used===this.ids.length&&this.grow();let o=this.used;this.ids[o]=t,this.dates[o]=r,this.sources[o]=n,this.flags[o]=So,this.used+=1,this.positions.set(t,o)}replace(t,r,n){this.dates[t]=r,this.sources[t]=n}delete(t){this.positions.delete(this.ids[t]),this.flags[t]=0,this.holes+=1,this.holes>=WE&&this.holes>this.positions.size&&this.compact()}markSeen(t){let r=this.positions.find(t);r!==-1&&(this.flags[r]|=UE)}clearSeen(){for(let t=0;t<this.used;t++)this.flags[t]&=So}unseenIds(){let t=[];for(let r=0;r<this.used;r++)this.flags[r]===So&&t.push(this.ids[r]);return t}rows(){let t=new _t(this.positions.size);for(let r=0;r<this.used;r++)(this.flags[r]&So)!==0&&t.push(this.ids[r],this.dates[r],this.sources[r]);return t.build()}grow(){this.resize(this.ids.length*2)}resize(t){let r=new Float64Array(t);r.set(this.ids.subarray(0,this.used));let n=new Uint32Array(t);n.set(this.dates.subarray(0,this.used));let o=new Uint8Array(t);o.set(this.sources.subarray(0,this.used));let a=new Uint8Array(t);a.set(this.flags.subarray(0,this.used)),this.ids=r,this.dates=n,this.sources=o,this.flags=a}compact(){let t=0;for(let r=0;r<this.used;r++)(this.flags[r]&So)!==0&&(this.ids[t]=this.ids[r],this.dates[t]=this.dates[r],this.sources[t]=this.sources[r],this.flags[t]=this.flags[r],t+=1);this.flags.fill(0,t,this.used),this.used=t,this.holes=0,this.positions.clear();for(let r=0;r<t;r++)this.positions.set(this.ids[r],r);this.ids.length>Math.max(Dn,t*4)&&this.resize(Math.max(Dn,t*2))}};var vm=()=>{let e=new TextDecoder,t=[],r=0,n=o=>{if(t.length===0)return e.decode(o);let a=new Uint8Array(r+o.length),s=0;for(let i of t)a.set(i,s),s+=i.length;return a.set(o,s),t=[],r=0,e.decode(a)};return{push:o=>{let a=[],s=0;for(let i=o.indexOf(10);i!==-1;i=o.indexOf(10,s))a.push(n(o.subarray(s,i))),s=i+1;return s<o.length&&(t.push(o.slice(s)),r+=o.length-s),a},end:()=>t.length===0?[]:[n(new Uint8Array(0))]}};var KE=e=>({debug:e,info:e,warn:e,error:e}),zE=50,$E=32,Im=0,jE=()=>(Im+=1,Im),GE=1e3,YE=3e4,qE=6,XE=3e4,Cm=Symbol("read-stall"),ZE=Object.freeze({reading:()=>{},stalled:()=>!1,stop:()=>{}}),QE="/daily_report/api",JE=e=>typeof e=="object"&&e!==null&&e.name==="AbortError",as=class{constructor(t={}){this.rows=new os;this.listeners=new Set;this.state={loadedCount:0,itemsRevision:0,itemsChanges:[],totalCount:null,phase:"idle",isRevalidating:!1,hasCompletedOnce:!1,completedAt:null,error:null,streamAnchor:null};this.streamAnchorRevision=0;this.lastCursor=null;this.lastSnapshot=null;this.consecutiveFailures=0;this.started=!1;this.disposed=!1;this.loopGeneration=0;this.activeAbortController=null;this.externalRemovalTombstones=new Set;this.pendingForceRefresh=!1;this.wakeRetryWait=null;this.handleOnline=()=>this.wakeRetryWait?.();this.publishCoalesceTimer=null;this.lastItemsPublishAt=Number.NEGATIVE_INFINITY;this.pendingItemsChange=wl();this.apiBasePath=t.apiBasePath??QE,this.fetchFn=t.fetchFn??((r,n)=>fetch(r,n)),this.setTimeoutFn=t.setTimeoutFn??((r,n)=>setTimeout(r,n)),this.clearTimeoutFn=t.clearTimeoutFn??(r=>clearTimeout(r)),this.warn=gt(t.warn===void 0?void 0:KE(t.warn),1,"IdsStream").warn,this.readStallTimeoutMs=t.readStallTimeoutMs??XE,this.publishCoalesceMs=t.publishCoalesceMs??zE,this.now=t.now??(()=>performance.now()),typeof window<"u"&&window.addEventListener("online",this.handleOnline)}getState(){return this.state}subscribe(t){return this.listeners.add(t),()=>this.listeners.delete(t)}start(){this.started||this.disposed||(this.started=!0,this.runStreamLoop({revalidate:!1,forceRefresh:!1}))}retry(){this.disposed||this.state.phase!=="failed"||(this.consecutiveFailures=0,this.runStreamLoop({revalidate:this.state.hasCompletedOnce,forceRefresh:!1}))}refresh(t={}){if(!this.disposed){if(this.state.phase==="failed"){this.consecutiveFailures=0,this.runStreamLoop({revalidate:this.state.hasCompletedOnce,forceRefresh:t.forceRefresh??!1});return}if(this.state.phase==="complete"){if(this.state.isRevalidating){t.forceRefresh&&(this.pendingForceRefresh=!0);return}this.lastCursor=null,this.consecutiveFailures=0,this.runStreamLoop({revalidate:!0,forceRefresh:t.forceRefresh??!1})}}}resync(){if(!this.disposed){if(this.state.phase==="streaming"||this.state.phase==="retrying"){this.pendingForceRefresh=!0;return}this.refresh({forceRefresh:!0})}}applyExternalUpsert(t){if(this.disposed)return;this.externalRemovalTombstones.delete(t.reportHubId);let r=this.rows.find(t.reportHubId),n=r===-1?void 0:this.rows.itemAt(r),o=t.sourceType??n?.sourceType,a=this.putItem(t.reportHubId,Bt(t.businessDate),fo(o));this.rows.markSeen(t.reportHubId),a&&this.schedulePublishItems()}applyExternalRemoval(t){this.disposed||(this.externalRemovalTombstones.add(t),this.deleteItem(t)&&this.schedulePublishItems())}has(t){return this.rows.find(t)!==-1}readRows(){let t=this.rows.rows();if(this.pendingItemsChange.isEmpty())return t;let{appended:r,replaced:n,removed:o}=this.pendingItemsChange.build(this.state.itemsRevision,this.state.itemsRevision),a=new Set;for(let l=0;l<r.length;l++)a.add(r.ids[l]);let s=new Map;for(let l=0;l<n.previous.length;l++)s.set(n.previous.ids[l],l);let i=new _t(t.length+o.length);for(let l=0;l<t.length;l++){let d=t.ids[l];if(a.has(d))continue;let c=s.get(d);c===void 0?i.pushFrom(t,l):i.pushFrom(n.previous,c)}for(let l=0;l<o.length;l++)i.pushFrom(o,l);return i.build()}dispose(){this.disposed=!0,this.loopGeneration+=1,this.activeAbortController?.abort(),this.cancelScheduledPublishItems(),this.wakeRetryWait?.(),typeof window<"u"&&window.removeEventListener("online",this.handleOnline),this.listeners.clear()}async runStreamLoop(t){let r=++this.loopGeneration;for(this.activeAbortController?.abort(),this.wakeRetryWait?.(),this.lastCursor===null&&(this.rows.clearSeen(),this.externalRemovalTombstones.clear(),this.lastSnapshot=null),t.forceRefresh&&(this.pendingForceRefresh=!1),this.publish({phase:t.revalidate?this.state.phase:"streaming",isRevalidating:t.revalidate,error:null});!this.disposed&&r===this.loopGeneration;){let n=await this.streamOnce(t.forceRefresh);if(this.disposed||r!==this.loopGeneration)return;if(n.kind==="complete"){this.pruneUnseenItems(),this.consecutiveFailures=0,this.cancelScheduledPublishItems();let o=this.takePendingItems();this.publish({phase:"complete",isRevalidating:!1,hasCompletedOnce:!0,completedAt:Date.now(),error:null,...o}),this.pendingForceRefresh&&!this.disposed&&(this.pendingForceRefresh=!1,this.lastCursor=null,this.runStreamLoop({revalidate:!0,forceRefresh:!0}));return}if(n.kind==="aborted")return;if(n.kind==="auth-required"){this.publish({phase:"auth-required",isRevalidating:!1});return}if(this.consecutiveFailures+=1,this.consecutiveFailures>=qE){t.revalidate&&this.state.hasCompletedOnce?(this.warn("revalidation gave up:",n.error.message),this.pendingForceRefresh=!1,this.publish({isRevalidating:!1,error:n.error})):this.publish({phase:"failed",isRevalidating:!1,error:n.error});return}this.publish({phase:t.revalidate?this.state.phase:"retrying",error:n.error}),await this.waitBeforeRetry(Math.min(GE*2**(this.consecutiveFailures-1),YE))}}pruneUnseenItems(){let t=this.rows.unseenIds();this.rows.clearSeen();for(let r of t)this.deleteItem(r)}async streamOnce(t){let r=new AbortController;this.activeAbortController=r;try{let n=this.fetchFn(this.buildStreamUrl(t),{signal:r.signal,headers:{Accept:"application/x-ndjson"},cache:"no-store"}),o=this.readStallTimeoutMs<=0?await n:await this.awaitResponseHeaders(n);if(o===Cm)return r.abort(),{kind:"retryable",error:new Error("Stream stalled: no response headers within timeout")};if(o.status===401||o.status===403)return{kind:"auth-required"};if(!(o.ok&&o.body))return{kind:"retryable",error:new Error(`ids stream HTTP ${o.status}`)};let a=o.body.getReader(),s=vm(),i=this.watchReadSilence(a),l=!1,d=!1;try{for(;;){i.reading();let c=await a.read();if(i.stalled())return r.abort(),{kind:"retryable",error:new Error("Stream stalled: no data within timeout")};let u=c.done?s.end():s.push(c.value),p=!1,f=!1;for(let m of u){if(m.trim()==="")continue;let y;try{y=JSON.parse(m)}catch{f=!0;break}let g=Pi(y);if(g==="unknown"){this.warn("skipped line of unknown kind");continue}if(g==="error"){l=!0;continue}let R=xu(y);if(R===null){f=!0;break}p=this.absorbChunkLine(R)||p,R.total!==null&&R.total!==this.state.totalCount&&this.publish({totalCount:R.total}),R.resumeCursor!==null&&(this.lastCursor=R.resumeCursor),R.isLast&&(d=!0)}if(p&&(this.consecutiveFailures=0,this.schedulePublishItems()),f)return this.warn("rejected a malformed line"),r.abort(),{kind:"retryable",error:new Error("ids stream line rejected")};if(c.done)break}}finally{i.stop()}return l?{kind:"retryable",error:new Error("Stream interrupted by server error")}:d?{kind:"complete"}:{kind:"retryable",error:new Error("Stream ended before completion")}}catch(n){return JE(n)?{kind:"aborted"}:{kind:"retryable",error:n instanceof Error?n:new Error(String(n))}}}awaitResponseHeaders(t){return new Promise((r,n)=>{let o=this.setTimeoutFn(()=>r(Cm),this.readStallTimeoutMs*3);t.then(a=>{this.clearTimeoutFn(o),r(a)},a=>{this.clearTimeoutFn(o),n(a)})})}watchReadSilence(t){if(this.readStallTimeoutMs<=0)return ZE;let r=this.readStallTimeoutMs,n=this.now(),o=!1,a=!1,s=null,i=()=>{if(s=null,a)return;let l=this.now()-n;if(l<r){s=this.setTimeoutFn(i,r-l);return}o=!0,t.cancel().catch(()=>{})};return s=this.setTimeoutFn(i,r),{reading:()=>{n=this.now()},stalled:()=>o,stop:()=>{a=!0,s!==null&&this.clearTimeoutFn(s),s=null}}}absorbChunkLine(t){t.restarted&&(this.lastCursor=null,this.lastSnapshot=null,this.rows.clearSeen(),this.externalRemovalTombstones.clear()),t.snapshot!==null&&(this.lastSnapshot=t.snapshot),this.absorbStreamAnchor(t.streamAnchor);let{provisional:r}=t,n=!1,o=null,a=Bt(null),s,i=fo(void 0),l=(d,c,u)=>{this.externalRemovalTombstones.has(d)||(c!==o&&(o=c,a=Bt(c)),u!==s&&(s=u,i=fo(u)),this.putItem(d,a,i)&&(n=!0),r||this.rows.markSeen(d))};return vu(t.rows,l),n}putItem(t,r,n){let o=this.rows.find(t);if(o===-1)return this.rows.add(t,r,n),this.pendingItemsChange.add(t,r,n),!0;let a=this.rows.businessDateCodeAt(o),s=this.rows.sourceTypeCodeAt(o);return a===r&&s===n?!1:(this.rows.replace(o,r,n),this.pendingItemsChange.change(t,a,s,r,n),!0)}deleteItem(t){let r=this.rows.find(t);return r===-1?!1:(this.pendingItemsChange.remove(t,this.rows.businessDateCodeAt(r),this.rows.sourceTypeCodeAt(r)),this.rows.delete(r),!0)}absorbStreamAnchor(t){if(t.kind!=="absent"){if(t.kind==="malformed"){this.warn(`skipped a malformed streamAnchor: ${String(t.received)}`);return}this.streamAnchorRevision+=1,this.publish({streamAnchor:{lastEventId:t.value,revision:this.streamAnchorRevision}})}}takePendingItems(){if(this.pendingItemsChange.isEmpty())return{};this.lastItemsPublishAt=this.now();let t=jE(),r=this.pendingItemsChange.build(this.state.itemsRevision,t);return this.pendingItemsChange.reset(),{loadedCount:this.rows.size,itemsRevision:t,itemsChanges:[...this.state.itemsChanges.slice(1-$E),r]}}publishItems(){let t=this.takePendingItems();t.itemsRevision!==void 0&&this.publish(t)}schedulePublishItems(){if(this.publishCoalesceMs<=0){this.publishItems();return}let t=this.now()-this.lastItemsPublishAt;if(t>=this.publishCoalesceMs){this.publishItems();return}this.publishCoalesceTimer===null&&(this.publishCoalesceTimer=this.setTimeoutFn(()=>{this.publishCoalesceTimer=null,this.publishItems()},this.publishCoalesceMs-t))}cancelScheduledPublishItems(){this.publishCoalesceTimer!==null&&(this.clearTimeoutFn(this.publishCoalesceTimer),this.publishCoalesceTimer=null)}publish(t){this.state={...this.state,...t};for(let r of this.listeners)r()}buildStreamUrl(t){let r=xm({cursor:this.lastCursor,snapshot:this.lastCursor===null?null:this.lastSnapshot,forceRefresh:t}).toString();return`${this.apiBasePath}/${fa}${r?`?${r}`:""}`}waitBeforeRetry(t){return new Promise(r=>{let n=null,o=()=>{n!==null&&(this.clearTimeoutFn(n),n=null),this.wakeRetryWait===o&&(this.wakeRetryWait=null),r()};this.wakeRetryWait=o,n=this.setTimeoutFn(o,t)})}};var nD=6e4,ce=null,_m=!1,go=new Set,ss={loadedCount:0,itemsRevision:0,itemsChanges:[],totalCount:null,phase:"idle",isRevalidating:!1,hasCompletedOnce:!1,completedAt:null,error:null,streamAnchor:null},vl=()=>{for(let e of go)e()},Il=()=>{ce&&(ce.unsubscribe(),ce.client.dispose(),ce=null,vl())},Eo=e=>{if(typeof window>"u")return;let t=e.apiBasePath??so.apiBasePath;if(ce&&(ce.userKey!==e.userKey||ce.apiBasePath!==t)&&(ce.userKey!==e.userKey&&uo(),Il()),!ce){let r=new as({apiBasePath:t});ce={client:r,userKey:e.userKey,apiBasePath:t,unsubscribe:r.subscribe(vl)},oD(),r.start(),vl();return}ls(ce)},ls=e=>{let t=e.client.getState();if(t.phase==="failed"){e.client.retry();return}t.phase==="complete"&&!t.isRevalidating&&t.completedAt!==null&&Date.now()-t.completedAt>nD&&e.client.refresh()},oD=()=>{if(_m||typeof document>"u"||typeof window>"u")return;_m=!0;let e=()=>{ce&&ls(ce)};document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&e()}),window.addEventListener("focus",e)},Cl=e=>{if(!(typeof window>"u")){if(!ce){Eo(e);return}if(ce.userKey!==e.userKey){uo(),Il(),Eo(e);return}ls(ce)}},_l=()=>{typeof window>"u"||!ce||ls(ce)},wn=e=>{ce?.client.applyExternalUpsert(e)},Tn=e=>{ce?.client.applyExternalRemoval(e)},Nm=e=>ce===null?!1:ce.client.has(e),Om=()=>ce===null?Dt:ce.client.readRows(),Ll=()=>ce===null?0:ce.client.getState().itemsRevision,ds=()=>{ce?.client.retry()},cs=()=>{ce?.client.resync()},wo=(e={})=>{ce?.client.refresh(e)},Mm=()=>ce?.userKey,To=e=>(go.add(e),()=>go.delete(e)),is=()=>ce?.client.getState()??ss,aD=()=>ss,sD=()=>Do(To,is,aD),us=(e,t)=>{let r=ss,n=e(ss);return()=>{let o=is();if(o===r)return n;let a=e(o);return r=o,t(n,a)||(n=a),n}},km=us(({phase:e,isRevalidating:t,error:r,streamAnchor:n,loadedCount:o})=>({phase:e,isRevalidating:t,error:r,streamAnchor:n,hasItems:o>0}),(e,t)=>e.phase===t.phase&&e.isRevalidating===t.isRevalidating&&e.error===t.error&&e.streamAnchor===t.streamAnchor&&e.hasItems===t.hasItems),iD=km(),An=()=>Do(To,km,()=>iD),Pm=us(({phase:e,isRevalidating:t,loadedCount:r,totalCount:n})=>({phase:e,isRevalidating:t,loadedCount:r,totalCount:n}),(e,t)=>e.phase===t.phase&&e.isRevalidating===t.isRevalidating&&e.loadedCount===t.loadedCount&&e.totalCount===t.totalCount),lD=Pm(),Fm=()=>Do(To,Pm,()=>lD),Hm=us(({phase:e,loadedCount:t})=>({phase:e,hasItems:t>0,retryingCount:e==="retrying"?t:null}),(e,t)=>e.phase===t.phase&&e.hasItems===t.hasItems&&e.retryingCount===t.retryingCount),dD=Hm(),Bm=()=>Do(To,Hm,()=>dD),Vm=us(({phase:e,totalCount:t})=>({phase:e,totalCount:t}),(e,t)=>e.phase===t.phase&&e.totalCount===t.totalCount),cD=Vm(),Um=()=>Do(To,Vm,()=>cD),Wm=e=>e.phase==="complete"&&!e.isRevalidating,Lm=e=>`${e.itemsRevision}:${Wm(e)}`,Km=()=>{let[,e]=rD(0),t=is(),r=Lm(t);return tD(()=>{let n=r,o=()=>{let a=Lm(is());a!==n&&(n=a,eD(()=>e(s=>s+1)))};return go.add(o),o(),()=>{go.delete(o)}},[]),{itemsRevision:t.itemsRevision,itemsChanges:t.itemsChanges,readRows:Om,settled:Wm(t)}};import.meta.hot?.dispose(Il);var zm="Internal",uD=e=>e.trim().toLowerCase();var ps=(e,t,r)=>{if(!Number.isFinite(e)||e<=0)throw ke("createExpiringLedger: ttlMs","a finite number greater than 0 (the time to live in ms)",e);let n=new Map,o=()=>{let a=t();for(let[s,i]of n){if(i.deadline>a)return;n.delete(s),r(s,i.value)}};return{add:(a,s)=>{o(),n.delete(a),n.set(a,{value:s,deadline:t()+e})},get:a=>(o(),n.get(a)?.value),remove:a=>{o();let s=n.get(a);if(s!==void 0)return n.delete(a),s.value},drain:()=>{let a=[...n.values()].map(s=>s.value);return n.clear(),a},size:()=>n.size}};var pD=3e4,$m=e=>{let t=ps(pD,e,()=>{});return{add:r=>t.add(r,!0),has:r=>t.get(r)===!0}},xn=(e,t)=>e.has(t)?e:new Set(e).add(t),jm=(e,t)=>{if(!e.has(t))return e;let r=new Set(e);return r.delete(t),r},Gm=new Set,Ym=()=>new Set,qm=()=>new Map,Xm=e=>{let t={pendingAddCommentIds:new Map,pendingDeleteCommentIds:new Map,pendingStarUpdates:new Map,pendingReadUpdates:new Map,resolvedIdMap:new Map};return{ledgers:Object.freeze({pendingAddCommentIds:Object.freeze({current:t.pendingAddCommentIds}),pendingDeleteCommentIds:Object.freeze({current:t.pendingDeleteCommentIds}),pendingStarUpdates:Object.freeze({current:t.pendingStarUpdates}),pendingReadUpdates:Object.freeze({current:t.pendingReadUpdates}),resolvedIdMap:Object.freeze({current:t.resolvedIdMap})}),write:r=>{try{r(t)}finally{e()}}}},Zm=e=>({functions:{toggleSse:()=>e.current.toggleSse(),addComment:(t,r,n)=>e.current.addComment(t,r,n),deleteComment:(t,r,n)=>e.current.deleteComment(t,r,n),toggleStar:(t,r,n)=>e.current.toggleStar(t,r,n),toggleRead:(t,r,n)=>e.current.toggleRead(t,r,n),createReport:t=>e.current.createReport(t),updateReport:(t,r,n)=>e.current.updateReport(t,r,n),publishReport:(t,r)=>e.current.publishReport(t,r),deleteReport:(t,r)=>e.current.deleteReport(t,r),removeStaleItem:t=>e.current.removeStaleItem(t),refetchData:()=>e.current.refetchData(),clearCacheAndRefetch:()=>e.current.clearCacheAndRefetch()},onSseMessage:t=>e.current.handleSseMessage(t)});var Nl=0,Ol=e=>{let t=tt("drawTemporaryId: nowMs",e,1);return Nl=Math.min(-t,Nl-1),Nl};var or=(e,t)=>{if(!e)return t;if(e.displayName?.trim())return e.displayName;if(e.name){let n=[e.name.familyName,e.name.givenName].filter(o=>typeof o=="string"&&o!=="").join(" ");if(n.trim())return n.trim()}let r=e.emails?.[0]?.value;return r||t};var Ml=gt(void 0,1,"ActionProvider"),mD=1e3,kl=class extends Error{constructor(t,r){super(`[daily-report] ${t} answered HTTP ${r}`),this.name="DailyReportActionHttpError",this.status=r}},NM=Object.freeze(["delete","deleteComment"]),fD=e=>e.intent==="create"?null:e.reportHubId,yD=(e,t)=>{let r=e;if(r.intent==="clearCache"||r.clientTempId!==t.clientTempId)return!1;let n=fD(t);return n===null||r.reportHubId===n},Qm=e=>{let{apiBasePath:t,labels:r,user:n,items:o,isSessionStillOurs:a,ownEchoIds:s,ledgers:i,writeLedgers:l,pendingAddPromises:d,removedIds:c,searchRemovedIds:u,setRemovedVersion:p,setRows:f,drafts:m,invalidateSearch:y,announceDataChange:g,notifyError:R}=e,D=async(T,A,I={})=>{let{intent:_}=T,{onGone:k}=A,{lockedReportHubId:O}=I,F=O===void 0?null:sp(O);A.onOptimistic?.(),s.add(T.clientTempId);let $=()=>{if(!a())throw Ml.warn(`[executeAction] ${_} resolved after a user switch; discarding continuation`),new Error(`Stale continuation for ${_}`)};try{let j=await fetch(`${t}/${Ve.action}`,{method:"POST",body:Qa(T),headers:{Accept:"application/json"}});if(j.status===404&&k!==void 0)return $(),k();if(!j.ok)throw new kl(_,j.status);let W=ym(_,await j.json());if("mismatch"in W)throw new Error(`[daily-report] ${_} answered a body that is not its result (${W.mismatch})`);let{result:V}=W;if(!yD(V,T))throw new Error(`[daily-report] ${_} answered another request`);return $(),A.onSuccess(V)}catch(j){throw Ml.error(`${_} failed:`,j),a()&&(A.onFailure?.(),R({operation:_,message:r.operationFailed(_),cause:j})),j}finally{F?.()}},b=(T,A,I)=>({reportHubId:T,clientTempId:I,businessDate:typeof A=="string"?A:null,operationTimestamp:Date.now()});return{addComment:async(T,A,I)=>{let _=Ol(Date.now()),k=D({...b(T,I,String(_)),intent:"addComment",content:A},{onOptimistic:()=>{l(({pendingAddCommentIds:O})=>{let F=O.get(T);F===void 0?O.set(T,new Map([[_,A]])):F.set(_,A)})},onSuccess:({newComment:O})=>{let F=O.id;l(({resolvedIdMap:j,pendingAddCommentIds:W})=>{j.set(_,F),W.get(T)?.delete(_)}),y();let $=dt(T,{ignoreExpiry:!0});return $&&!$.postedComments.some(j=>j.id===F)&&Et(T,{postedComments:[...$.postedComments,{...O,isMine:!0,userName:or(n,r.unknownUser)}]}),F},onFailure:()=>{l(({pendingAddCommentIds:O})=>O.get(T)?.delete(_))}}).finally(()=>d.current.delete(_));d.current.set(_,k),await k},deleteComment:async(T,A,I)=>{l(({pendingDeleteCommentIds:O})=>{let F=O.get(T);F===void 0?O.set(T,new Set([A])):F.add(A)});let _=A;if(A<0){let O=i.resolvedIdMap.current.get(A);if(O!==void 0)_=O;else{let F=d.current.get(A);if(!F)return;try{_=await F}catch{return}}}let k=()=>{let O=dt(T,{ignoreExpiry:!0});O&&(Et(T,{postedComments:O.postedComments.filter(F=>F.id!==_)}),lp(_)),l(({pendingDeleteCommentIds:F})=>F.get(T)?.delete(A)),y()};await D({...b(T,I,crypto.randomUUID()),intent:"deleteComment",commentId:_},{onSuccess:k,onGone:k,onFailure:()=>{l(({pendingDeleteCommentIds:O})=>O.get(T)?.delete(A))}})},toggleStar:async(T,A,I)=>{await D({...b(T,I,crypto.randomUUID()),intent:"toggleStar",value:A},{onOptimistic:()=>{Et(T,{isStarred:A}),l(({pendingStarUpdates:_})=>_.set(T,A))},onSuccess:({updatedStatus:_})=>{dt(T,{ignoreExpiry:!0})&&(Et(T,{isStarred:_.isStarred}),g()),l(({pendingStarUpdates:k})=>k.delete(T))},onFailure:()=>{Et(T,{isStarred:!A}),l(({pendingStarUpdates:_})=>_.delete(T))}})},toggleRead:async(T,A,I)=>{await D({...b(T,I,crypto.randomUUID()),intent:"toggleRead",value:A},{onOptimistic:()=>{Et(T,{isRead:A}),l(({pendingReadUpdates:_})=>_.set(T,A))},onSuccess:({updatedStatus:_})=>{dt(T,{ignoreExpiry:!0})&&(Et(T,{isRead:_.isRead}),g()),l(({pendingReadUpdates:k})=>k.delete(T))},onFailure:()=>{Et(T,{isRead:!A}),l(({pendingReadUpdates:_})=>_.delete(T))}})},createReport:async T=>{let A=Ol(Date.now()),I=new Date().toISOString(),_={reportHubId:A,date:T,createdAt:I,author:or(n,r.unknownUser),userId:n===void 0?null:n.id,sourceType:zm,employeeName:or(n,r.unknownUser),updatedBy:or(n,r.unknownUser),updatedAt:I,category:null,creationCategory:null,visitTimeFrom:null,visitTimeTo:null,customerName:null,interviewers:[],subject:"",content:"",externalComments:[],isRead:!0,isStarred:!1,isDraft:!0,labels:[],postedComments:[],attachments:[]};ap(_,Date.now()+3e5,!1),f(k=>ns(k,{reportHubId:A,businessDate:T},Number.NEGATIVE_INFINITY));try{let k=await D({intent:"create",clientTempId:String(A),businessDate:T,operationTimestamp:Date.now()},{onSuccess:$=>$.report}),O=k.reportHubId,F=Ll();return wn({reportHubId:O,businessDate:T}),ip(O,mD),er(O,k),g(),y(),f($=>ns($r($,A),{reportHubId:O,businessDate:T},F)),O}catch(k){throw Ml.error("[createReport] Failed",k),f(O=>$r(O,A)),k}},updateReport:async(T,A,I)=>{await D({...b(T,I,crypto.randomUUID()),intent:"update",changes:{title:A.title,content:A.content}},{onSuccess:()=>{dt(T,{ignoreExpiry:!0})&&(Et(T,{subject:A.title,content:A.content}),g()),y()}},{lockedReportHubId:T})},publishReport:async(T,A)=>{let I=dt(T,{ignoreExpiry:!0});await D({...b(T,A,crypto.randomUUID()),intent:"publish"},{onOptimistic:()=>{I&&(Et(T,{isDraft:!1}),g())},onSuccess:({report:_})=>{_!==null&&(er(T,_),g()),A!==void 0&&wn({reportHubId:T,businessDate:A}),y()},onFailure:()=>{I&&(Et(T,{isDraft:I.isDraft}),g())}})},deleteReport:async(T,A)=>{let I=vp(o,T);c.current=xn(c.current,T),u.current.add(T),p(k=>k+1),Tn(T),I!==void 0&&f(k=>Tm(k,I));let _=()=>{Na(T,A),m.discard(T),y()};try{await D({...b(T,A,crypto.randomUUID()),intent:"delete"},{onSuccess:_,onGone:_},{lockedReportHubId:T})}catch(k){if(!a())return;c.current=jm(c.current,T),u.current.delete(T),p($=>$+1);let O=I===void 0?A:I.businessDate,F=Ll();throw O!==void 0&&wn({reportHubId:T,businessDate:O}),f($=>{let j=xl($,T);return I===void 0?j:ns(j,I,F)}),k}}}};var Jm=gt(void 0,1,"ActionProvider"),RD=3e4,ef=e=>ps(RD,e,(t,r)=>{r.unsubscribe(),Jm.warn(`[SSE Queue] Expired: reportHubId=${t}, dropped=${r.messages.length} messages`)}),hD=(e,t)=>{t!==void 0&&wn({reportHubId:e,businessDate:t})},tf=e=>{let{user:t,userId:r,labels:n,isSessionStillOurs:o,ownEchoIds:a,ledgers:s,writeLedgers:i,removedIds:l,searchRemovedIds:d,setRemovedVersion:c,setRows:u,drafts:p,invalidateSearch:f,announceDataChange:m,pendingSseQueue:y,replay:g}=e,R=(b,h)=>{let S=y.get(b);if(S!==void 0){S.messages.push(h);return}let w;w={messages:[h],unsubscribe:dp(b,()=>{if(y.get(b)===w&&dt(b,{ignoreExpiry:!0})){y.remove(b),w.unsubscribe(),Jm.info(`[SSE Queue] Replaying ${w.messages.length} messages for reportHubId=${b}`);for(let E of w.messages)g(E)}})},y.add(b,w)};return b=>{if(o()&&!a.has(b.clientTempId))switch(b.type!=="status-update"&&f(),b.type){case"comment-add":{let{comment:h,reportHubId:S}=b,w=dt(S,{ignoreExpiry:!0});if(w){if(w.postedComments.some(N=>N.id===h.id))return;let x=typeof r=="string"&&h.userId===r,E={...h,userName:h.userName||(x?or(t,n.unknownUser):n.unknownUser),createdAt:h.createdAt||new Date().toISOString(),isMine:x},L={...w,postedComments:[...w.postedComments,E].sort((N,M)=>new Date(N.createdAt||0).getTime()-new Date(M.createdAt||0).getTime())};er(S,L),qi(S),m()}else R(S,b);break}case"comment-delete":{let{commentId:h,reportHubId:S}=b,w=dt(S,{ignoreExpiry:!0});if(w){let x={...w,postedComments:w.postedComments.filter(E=>E.id!==h)};er(S,x),qi(S),m()}else R(S,b);break}case"status-update":{let{statusType:h,value:S,reportHubId:w}=b,x=dt(w,{ignoreExpiry:!0});if(h==="star")if(s.pendingStarUpdates.current.get(w)===S&&i(({pendingStarUpdates:E})=>E.delete(w)),x){let E={...x,isStarred:S};er(w,E),m()}else R(w,b);else if(h==="read")if(s.pendingReadUpdates.current.get(w)===S&&i(({pendingReadUpdates:E})=>E.delete(w)),x){let E={...x,isRead:S};er(w,E),m()}else R(w,b);break}case"report-delete":{let{reportHubId:h}=b;l.current=xn(l.current,h),d.current.add(h),c(w=>w+1),Tn(h),u(w=>$r(w,h)),p.discard(h),y.remove(h)?.unsubscribe();let S=dt(h,{ignoreExpiry:!0});S?.date&&(Na(h,S.date),m());break}case"report-create":case"report-update":case"report-publish":{let{report:h}=b;b.viewerIsActor?er(h.reportHubId,h):cp(h),(b.type==="report-create"||b.type==="report-publish")&&hD(h.reportHubId,h.date),m();break}}}};import{memo as TD,useLayoutEffect as AD}from"react";import{systemSseRuntime as ms}from"@aiquants/sse";import{createBrowserEventSource as bD}from"@aiquants/sse/client";import{useReopeningEventSource as SD}from"@aiquants/sse/react";import{useEffect as Pl,useRef as fs,useState as gD}from"react";var jr=gt(void 0,1,"SseConnection"),ED=Object.freeze({kind:"resyncing"}),rf={initialDelayMs:2e3,maxDelayMs:3e4,multiplier:2},DD=1,nf=Li*3,wD=nf+Li,Fl=({isSseEnabled:e,onMessage:t})=>{let{ssePath:r,onSessionExpired:n}=z(),{streamAnchor:o,phase:a,isRevalidating:s,error:i}=An(),[l,d]=gD({generation:0,minAnchorRevision:1,anchored:!1}),c=l.generation>0&&!l.anchored,u=c&&a==="complete"&&!s?i:null,p=fs(0),f=fs(null),m=fs(n);m.current=n;let y=fs(0);y.current=o===null?0:o.revision,Pl(()=>{l.anchored||o===null||o.revision<l.minAnchorRevision||(f.current=o.lastEventId,p.current=0,d({...l,anchored:!0}))},[l,o]),Pl(()=>{if(!e||u===null)return;let{initialDelayMs:R,maxDelayMs:D,multiplier:b}=rf,h=ms.random()*Math.min(D,R*b**p.current);jr.warn(`SSE resync: the ids rescan gave up (${u.message}); rescanning in ${Math.round(h)} ms`);let S=ms.setTimer(()=>{p.current+=1,cs()},h);return()=>ms.clearTimer(S)},[e,u]);let{status:g}=SD(e&&l.anchored?`${r}#${l.generation}`:null,{resolveUrl:({lastEventId:R})=>R===null?r:`${r}?${Su}=${encodeURIComponent(R)}`,initialLastEventId:f.current,withCredentials:!1,createEventSource:bD,runtime:ms,backoff:rf,healthyOpenMs:wD,nativeRetryLimit:DD,giveUpAfterFailures:"never",terminalEvents:bu,heartbeat:{staleAfterMs:nf,onHeartbeat:null},events:{message:R=>{R.lastEventId!==""&&(pa(R.lastEventId)?f.current=R.lastEventId:jr.warn("SSE event carried a malformed id; keeping the previous cursor:",R.lastEventId));try{let D=JSON.parse(R.data),b=Au.safeParse(D);if(!b.success){jr.error("SSE Validation Error:",b.error.flatten(),"raw message:",D);return}if(b.data.type==="connected"){jr.info("SSE Subscribe Ready");return}t(b.data)}catch(D){jr.error("SSE Parse Error",D)}}}});return Pl(()=>{if(g.kind==="faulted"){jr.error("SSE connection faulted:",g.error);return}if(g.kind==="terminated")switch(g.terminalEvent){case"auth-required":m.current();return;case"forbidden":jr.warn("SSE stopped: the viewer is not registered (forbidden)");return;case"resync-required":{let R=y.current+1;d(D=>({generation:D.generation+1,minAnchorRevision:R,anchored:!1})),cs();return}}},[g]),e&&c?ED:g};var of=Object.freeze({kind:"idle"}),Hl=TD(({isSseEnabled:e,onMessage:t,onStatus:r})=>{let n=Fl({isSseEnabled:e,onMessage:t});return AD(()=>{r(n)},[n,r]),null});Hl.displayName="DailyReportSseConnectionHost";import{createContext as xD,useCallback as vD,useSyncExternalStore as af}from"react";var sf=()=>{let e=new Map,t=new Map,r=(n,o)=>{o===null?e.delete(n):e.set(n,o);let a=t.get(n);if(a!==void 0)for(let s of[...a])s()};return{modeOf:n=>{let o=e.get(n);return o===void 0?"display":o.mode},inputOf:n=>{let o=e.get(n);return o===void 0||o.mode==="dismissed"?null:o.input},subscribe:(n,o)=>{let a=t.get(n),s=a===void 0?new Set:a;return a===void 0&&t.set(n,s),s.add(o),()=>{s.delete(o),s.size===0&&t.get(n)===s&&t.delete(n)}},open:(n,o,a)=>{let s=e.get(n);s!==void 0&&s.mode!=="dismissed"||r(n,{mode:a?"automatic":"editing",input:o})},setInput:(n,o)=>{let a=e.get(n);a===void 0||a.mode==="dismissed"||r(n,{mode:a.mode,input:{...a.input,...o}})},dismiss:n=>{e.get(n)?.mode!=="dismissed"&&r(n,{mode:"dismissed"})},discard:n=>{e.has(n)&&r(n,null)}}},Bl=xD(null),Er=()=>Ct(Bl,"useDailyReportDraftStore","DailyReportActionProvider"),lf=(e,t)=>vD(r=>e.subscribe(t,r),[e,t]),ys=e=>{let t=Er(),r=()=>t.modeOf(e);return af(lf(t,e),r,r)},df=e=>{let t=Er(),r=()=>t.inputOf(e),n=af(lf(t,e),r,r);if(n===null)throw new Error(`[daily-report] the edit form is rendered for report ${e}, whose editor is not open`);return n};import{useOverlayEscapeStack as UD}from"@aiquants/swipe-overlay";import{createContext as WD,Fragment as KD,useCallback as Ss,useId as Ul,useLayoutEffect as Tf,useMemo as zD,useRef as Yr,useState as gf}from"react";import{createPortal as Ef}from"react-dom";import{createContext as _D,useContext as LD}from"react";var ID=new Set(["Alt","AltGraph","CapsLock","Control","Fn","FnLock","Hyper","Meta","NumLock","ScrollLock","Shift","Super","Symbol","SymbolLock"]),Rs={capture:!0},hs=new WeakMap,CD=e=>{let t=o=>{ID.has(o.key)||(n.last="keyboard")},r=()=>{n.last="pointer"},n={observers:0,last:null,detach:()=>{e.removeEventListener("keydown",t,Rs),e.removeEventListener("pointerdown",r,Rs)}};return e.addEventListener("keydown",t,Rs),e.addEventListener("pointerdown",r,Rs),n},cf=e=>{let t=hs.get(e),r=t===void 0?CD(e):t;t===void 0&&hs.set(e,r),r.observers+=1;let n=!1;return()=>{n||(n=!0,r.observers-=1,!(r.observers>0)&&(r.detach(),hs.delete(e)))}},Ao=e=>{let t=hs.get(e);return t===void 0?null:t.last};var ND=Object.freeze({visibilityProperty:!0,opacityProperty:!0}),OD=Object.freeze({visibilityProperty:!0}),uf="data-daily-report-view-tabs",pf={[uf]:""},mf="data-daily-report-status-panel",ff={[mf]:""},MD=e=>{for(let t of e.getClientRects())if(t.width>0&&t.height>0)return!0;return!1},yf=e=>e.isConnected&&mo(e)&&MD(e)&&e.checkVisibility(e.hasAttribute(Wa)?OD:ND),ar=e=>{for(let t of e)if(!(t===null||!yf(t))&&(t.focus({preventScroll:!0}),Ke(t)===t))return t;return null},kD=e=>e.querySelector(`[${uf}] [role="tab"][aria-selected="true"]`),Vl=_D(null),Rf=()=>{let e=LD(Vl);if(e===null)throw new Error("[daily-report] useFocusViewRow is called outside a view's rows");return e},PD=(e,t,r)=>{if(Fr(e))return!0;if(r==="handOver")return!1;let n=Ke(e);return n===null||!e.contains(n)?!1:r==="overlay"||n!==t},hf=(e,t,r)=>{if(r!=="pointer"||t===null)return e;let n=Bp(t);return n!==null&&yf(n)?n:e},bf=(e,t,r,n)=>PD(e,t,n)?ar([hf(t,r,Ao(e.ownerDocument))]):null,FD=e=>{let t=e.getAttribute("aria-activedescendant");return t===null?null:e.ownerDocument.getElementById(t)},bs=e=>{let t=Hp(e);return[t===null?null:hf(t,FD(t),Ao(t.ownerDocument)),kD(e),e.querySelector(`[${mf}]`)]};var Gr=e=>e.isComposing||e.keyCode===229,vn=e=>({key:e.key,keyCode:e.keyCode,altKey:e.altKey,ctrlKey:e.ctrlKey,metaKey:e.metaKey,shiftKey:e.shiftKey,defaultPrevented:e.defaultPrevented,isComposing:e.nativeEvent.isComposing,target:e.target});var HD={kind:"hold"},BD=new Set(["grid","listbox","menu","menubar","radiogroup","tablist","toolbar","tree","treegrid"]),VD=(e,t)=>{let r=e.getAttribute("role");return r!==null&&BD.has(r)&&e!==t&&e.contains(t)},sr=e=>e.key==="Escape"&&!e.defaultPrevented&&!Gr(e),Sf=(e,t)=>{if(e.key!=="Tab"||e.altKey||e.ctrlKey||e.metaKey||e.defaultPrevented||Gr(e))return null;let r=e.target;if(!(xe(r)&&t.contains(r)))return null;let n=ka(t);if(n.length===0)return HD;let{before:o,within:a,after:s}=po(t,r);return e.shiftKey?o.some(i=>!VD(i,r))?null:{kind:"wrap",element:n[n.length-1]}:a.length>0||s.length>0?null:{kind:"wrap",element:n[0]}};import{jsx as Ut,jsxs as xf}from"react/jsx-runtime";var $D=v("motion-safe:fade-in motion-safe:slide-in-from-bottom-2 flex w-fit min-w-0 max-w-full items-center gap-2 rounded-lg border border-red-300 border-solid bg-red-600 px-[15px] py-[7px] text-sm text-white shadow-lg motion-safe:animate-in motion-safe:duration-200 dark:border-red-500/60 dark:bg-red-700",fr),jD="flex shrink-0 justify-center p-[8px]",GD=v("flex size-6 shrink-0 items-center justify-center rounded font-bold text-white/90 hover:bg-red-700 hover:text-white dark:hover:bg-red-800",mc),YD="data-daily-report-notice-alert",qD={[YD]:""},Af=WD(null),gs=()=>Ct(Af,"useDailyReportErrorSurface","DailyReportErrorProvider"),Df=Object.freeze([]),wf=({notice:e})=>Ut("div",{role:"alert",...qD,className:"sr-only",children:e===null?null:Ut("span",{children:e.info.message},e.occurrence)}),XD=({notice:e,closeLabel:t,repeatedLabel:r,onDismiss:n})=>{let o=Yr(null),a=Yr(null),s=Yr(null),i=UD(),l=Ul(),d=Ul(),c=Ul(),u=e.repeat>1?`${d} ${c}`:d,p=Ss(()=>{let y=o.current;if(y?.contains(y.ownerDocument.activeElement)){let[g,...R]=bs(y.ownerDocument);ar([a.current,g,y.closest("dialog"),...R])}n()},[n]),f=y=>{if(s.current!==null)return;let g=y.relatedTarget;a.current=xe(g)&&!y.currentTarget.contains(g)?g:null,s.current=i({id:l,onEscape:R=>sr(R)?(p(),!0):!1})},m=y=>{xe(y.relatedTarget)&&y.currentTarget.contains(y.relatedTarget)||(s.current?.(),s.current=null,a.current=null)};return Tf(()=>()=>{s.current?.(),s.current=null},[]),xf("div",{ref:o,role:"group","aria-labelledby":u,"data-testid":"daily-report-error-banner",className:$D,onFocus:f,onBlur:m,children:[Ut("span",{id:d,className:"min-w-0 font-medium",children:Ut(KD,{children:e.info.message},e.occurrence)}),e.repeat>1&&Ut("span",{id:c,className:"shrink-0 font-normal tabular-nums",children:r(e.repeat)}),Ut("button",{type:"button","aria-label":t,"aria-describedby":u,onClick:p,className:GD,children:"\u2715"})]})},Wl=({children:e})=>{let{onError:t,labels:r}=z(),[n,o]=gf(null),[a,s]=gf(Df),i=Yr(Df),l=Yr(0),d=Yr(0),c=Yr(t);Tf(()=>{c.current=t});let u=Ss(D=>{let b=c.current;if(b){b(D);return}d.current+=1;let h=d.current,S=i.current,w=S.length===0?null:S[S.length-1].registration;o(x=>({info:D,occurrence:h,repeat:x!==null&&x.info.message===D.message?x.repeat+1:1,announcedIn:w}))},[]),p=Ss(D=>{l.current+=1;let b={element:D,registration:l.current};return i.current=[...i.current,b],s(i.current),()=>{i.current=i.current.filter(h=>h!==b),s(i.current)}},[]),f=Ss(()=>o(null),[]),m=zD(()=>({notifyError:u,registerNoticeHost:p}),[u,p]),y=a.at(-1),g=n===null?null:Ut(XD,{notice:n,closeLabel:r.close,repeatedLabel:r.noticeRepeated,onDismiss:f}),R=D=>n!==null&&n.announcedIn===D?n:null;return xf(Af.Provider,{value:m,children:[e,Ut(wf,{notice:R(null)}),a.map(D=>Ef(Ut(wf,{notice:R(D.registration)}),D.element,String(D.registration))),g!==null&&y!==void 0&&Ef(g,y.element),g!==null&&y===void 0&&Ut("div",{"data-daily-report-notice-slot":"",className:jD,children:g})]})};import{jsx as zl,jsxs as QD}from"react/jsx-runtime";var Es=gt(void 0,1,"ActionProvider"),ws=globalThis.__DailyReportActionsContext??_f(null);globalThis.__DailyReportActionsContext=ws;var Ts=globalThis.__DailyReportActionStateContext??_f(null);globalThis.__DailyReportActionStateContext=Ts;var Ds="DailyReportActionProvider",qe=()=>Ct(ws,"useDailyReportActions",Ds),As=()=>Ct(Ts,"useDailyReportActionState",Ds),ZD=()=>{let e=Ct(ws,"useDailyReportActionContext",Ds),t=Ct(Ts,"useDailyReportActionContext",Ds);return $l(()=>({...e,...t}),[e,t])},jl=({children:e,user:t,userId:r})=>{let{apiBasePath:n,labels:o}=z(),{notifyError:a}=gs(),[s,i]=Wt(0),[{ledgers:l,write:d}]=Wt(()=>Xm(()=>i(q=>q+1))),[c,u]=Wt(0),[p,f]=Wt(0),[m]=Wt(sf),[y,g]=Wt(!1),[R,D]=Wt(of),b=Kl(!1),h=Ue(qm),S=Kl(Gm),w=Ue(Ym),[x]=Wt(()=>$m(()=>performance.now())),[E]=Wt(()=>ef(()=>performance.now())),L=Km(),[N,M]=wm(L,L.settled,S.current),T=N.items,A=`${c}:${N.settled?N.revision:"-"}`,I=()=>{u(q=>q+1)},_=()=>{i(q=>q+1)},k=vf(q=>w.current.has(q),[w]),O=vf(()=>Mm()===(r??null),[r]),F=async()=>{Es.info("Refetching data without page reload..."),wo(),_(),ee.listeners.forEach(q=>{q(-1)})},$=async()=>{Es.info("Clearing client & server/DB cache and refetching data without page reload..."),uo(),S.current=new Set,w.current.clear(),f(q=>q+1),M(Am);try{sessionStorage.clear()}catch{}try{let q=await fetch(`${n}/${Ve.action}`,{method:"POST",body:Qa({intent:"clearCache"})});if(!q.ok){let he=await q.json().catch(()=>null);Es.warn("Failed to clear server-side cache:",q.status,he)}}catch(q){Es.warn("Failed to clear server-side cache:",q)}O()&&(wo({forceRefresh:!0}),_(),ee.listeners.forEach(q=>{q(-1)}))};Cf(()=>()=>{for(let q of E.drain())q.unsubscribe()},[E]);let j=()=>{r&&(b.current=!0,g(q=>!q))};If(()=>{if(!r)return;let q=setTimeout(()=>{b.current||g(!0)},Yu);return()=>clearTimeout(q)},[r]);let W=q=>{O()&&(S.current=xn(S.current,q),w.current.add(q),f(he=>he+1),Tn(q),M(he=>$r(he,q)),m.discard(q))};If(()=>{if(!N.settled)return;let q=new Set;for(let he of S.current)Nm(he)&&q.add(he);q.size!==S.current.size&&(S.current=q)},[N.settled,N.revision]);let V={user:t,userId:r,labels:o,apiBasePath:n,items:T,isSessionStillOurs:O,ownEchoIds:x,ledgers:l,writeLedgers:d,pendingSseQueue:E,pendingAddPromises:h,removedIds:S,searchRemovedIds:w,setRemovedVersion:f,setRows:M,drafts:m,invalidateSearch:I,announceDataChange:_,replay:q=>De.current.handleSseMessage(q),notifyError:q=>De.current.notifyError(q)},le=tf(V),Te=Qm(V),be={toggleSse:j,...Te,removeStaleItem:W,refetchData:F,clearCacheAndRefetch:$,handleSseMessage:le,notifyError:a},De=Kl(be);Cf(()=>{De.current=be});let[se]=Wt(()=>Zm(De)),Ze=$l(()=>({...l,...se.functions,user:t}),[l,se,t]),We=$l(()=>({version:s,items:T,isSseEnabled:y,sseStatus:R,searchInvalidation:A,isReportRemoved:k,removedVersion:p}),[s,T,y,R,A,k,p]);return zl(Bl.Provider,{value:m,children:zl(ws.Provider,{value:Ze,children:QD(Ts.Provider,{value:We,children:[zl(Hl,{isSseEnabled:y,onMessage:se.onSseMessage,onStatus:D}),e]})})})};var Lf=(e,t)=>e.split(t).length-1,Nf=(e,t,r)=>{let n=e("\uE000","\uE001");if(Lf(n,"\uE000")!==1||Lf(n,"\uE001")!==1)return null;let o=n.indexOf("\uE000"),a=n.indexOf("\uE001"),s=[{at:o,part:{kind:"name"}},{at:a,part:{kind:"affiliation"}}];s.sort((c,u)=>c.at-u.at);let i=[],l=0;for(let{at:c,part:u}of s)c>l&&i.push({kind:"text",text:n.slice(l,c)}),i.push(u),l=c+1;return l<n.length&&i.push({kind:"text",text:n.slice(l)}),i.map(c=>c.kind==="text"?c.text:c.kind==="name"?t:r).join("")===e(t,r)?i:null};import{useContext as dw,useLayoutEffect as cw,useMemo as Xl}from"react";import{createContext as Ff,createElement as nw,useCallback as Pf,useContext as ql,useDeferredValue as ow,useLayoutEffect as aw,useMemo as Yl,useSyncExternalStore as sw}from"react";var Of=Object.freeze({subject:"subject",content:"content",author:"author",employeeName:"author",updatedBy:"updatedBy",category:"category",creationCategory:"creationCategory",customerName:"customer",interviewer:"interviewers",attachment:"attachments",comment:"comments"}),JD=e=>Object.hasOwn(Of,e),ew=e=>{let t=e.indexOf(":"),r=t===-1?e:e.slice(0,t);if(!(En(e)&&JD(r)))throw new Error(`[daily-report] A search mark leaf carries an unknown field key: ${e}`);return Of[r]},tw=Object.freeze([]),Mf=(e,t)=>e.map(({heading:r,matchedBy:n})=>n==="reading"?t.searchFieldMatchedByReading(t[r]):t.searchFieldMatched(t[r])).join(" "),Gl=e=>e.words>0||e.dense>0?"word":e.readings>0?"reading":null,rw=(e,t)=>e.length===t.length&&e.every((r,n)=>r.heading===t[n].heading&&r.matchedBy===t[n].matchedBy),kf=()=>{let e=new Map,t=new Map,r=new Set,n=null,o=0,a=0,s=tw,i=!1,l=Object.freeze({entry:n,isCurrent:!0,count:o,fields:s}),d=!1,c=l,u=!1,p=b=>!b.isCurrent||b.entry!==n,f=()=>{let b=[];for(let[h,S]of t){let w=Gl(S);w!==null&&b.push(Object.freeze({heading:h,matchedBy:w}))}return Object.freeze(b)},m=()=>{if(!d)return l;d=!1;for(let[h,S]of t)S.leaves===0&&t.delete(h);let b=a===0;if(i){i=!1;let h=f();rw(h,s)||(s=h)}return l.entry===n&&l.isCurrent===b&&l.count===o&&l.fields===s||(l=Object.freeze({entry:n,isCurrent:b,count:o,fields:s})),l},y=()=>{u=!1;let b=m();if(b!==c){c=b;for(let h of[...r])h()}},g=()=>{d=!0,!u&&(u=!0,queueMicrotask(y))},R=b=>{let h=t.get(b);if(h!==void 0)return h;let S={leaves:0,words:0,readings:0,dense:0};return t.set(b,S),S},D=(b,h)=>{o+=h*(b.words+b.readings),p(b)&&(a+=h);let S=R(b.heading),w=Gl(S);S.leaves+=h,S.words+=h*b.words,S.readings+=h*b.readings,b.dense&&(S.dense+=h),Gl(S)!==w&&(i=!0)};return{register:b=>{let h={...b,heading:ew(b.fieldKey)},S=Object.freeze({});return e.set(S,h),D(h,1),g(),S},unregister:b=>{let h=e.get(b);h!==void 0&&(e.delete(b),D(h,-1),g())},settle:b=>{if(b!==n){n=b,a=0;for(let h of e.values())p(h)&&(a+=1);g()}},subscribe:b=>(r.add(b),()=>{r.delete(b)}),getSnapshot:m}};var rt=Ff(null),Hf=Ff(null),xo=()=>{let e=ql(Hf);if(e===null)throw new Error("[daily-report] A search marks part is drawn outside a row's marks scope (DailyReportSearchMarksScope) while the screen holds a marks store");return e},iw=()=>{},lw=()=>iw,Bf=e=>{let t=ql(rt),r=Pf(i=>t===null?lw():t.subscribe(e,i),[t,e]),n=Pf(()=>{let i=t===null?void 0:t.read(e);return i===void 0?null:i},[t,e]),o=sw(r,n,n),a=Yl(()=>t===null||o===null?null:{store:t,entry:o},[t,o]),s=ow(a,a===null?void 0:null);return s!==null&&s.store===t?s.entry:null},In=({reportHubId:e,entry:t,children:r})=>{let n=ql(rt),o=Yl(()=>n===null?null:kf(),[n]),a=Yl(()=>n===null||o===null?null:{entry:t,revalidate:(s,i)=>n.revalidate(e,s,i),tally:o,indicator:n.indicator},[n,o,t,e]);return aw(()=>{o!==null&&o.settle(t)},[o,t]),nw(Hf.Provider,{value:a},r)};import{jsx as Uf}from"react/jsx-runtime";var uw="data-daily-report-search-mark",pw=Object.freeze({[ln.word]:Object.freeze({attribute:"word",description:null}),[ln.reading]:Object.freeze({attribute:"reading",description:"searchReadingMarkDescription"})}),Vf=e=>{if(!oo(e))throw new Error(`[daily-report] A search mark carries an unknown tier: ${e}`);return pw[e]},mw=Object.freeze({words:0,readings:0}),fw=e=>{if(e===null)return mw;let t=0;for(let r=2;r<e.length;r+=3)Vf(e[r]).attribute==="reading"&&(t+=1);return{words:e.length/3-t,readings:t}},yw=(e,t,r)=>{let n=[],o=0;for(let a=0;a<t.length;a+=3){let s=t[a],i=t[a+1],l=Vf(t[a+2]);s>o&&n.push(e.slice(o,s)),n.push(Uf("mark",{[uw]:l.attribute,"aria-description":l.description===null?void 0:r[l.description],className:kc,children:e.slice(s,i)},`m${s}`)),o=i}return o<e.length&&n.push(e.slice(o)),n},Rw=({fieldKey:e,raw:t,display:r})=>{let{entry:n,revalidate:o,tally:a}=xo(),{labels:s}=z(),i=typeof t=="string"?t:"",l=Xl(()=>n===null||i.length===0?null:Sl(i),[n,i]),d=n===null?void 0:n.fields[e],c=d!==void 0&&l!==null&&d.fingerprint===l?d:null,u=c!==null&&"ranges"in c?c.ranges:null,p=c!==null&&"dense"in c,f=c!==null,m=Xl(()=>u===null?null:Gc(r,u),[u,r]),y=Xl(()=>fw(m),[m]);return cw(()=>{if(l===null)return;f||o(e,l);let g=a.register({entry:n,isCurrent:f,fieldKey:e,words:y.words,readings:y.readings,dense:p});return()=>a.unregister(g)},[a,o,n,l,f,e,y,p]),m===null||m.length===0?r.text:yw(r.text,m,s)},pe=({fieldKey:e,raw:t,display:r})=>dw(rt)===null?r.text:Uf(Rw,{fieldKey:e,raw:t,display:r});import{jsx as bw}from"react/jsx-runtime";var hw={2:"h2",3:"h3",4:"h4",5:"h5",6:"h6"},Dr=Object.freeze({2:3,3:4,4:5,5:6}),pt=({level:e,...t})=>{let r=hw[e];return bw(r,{...t})};import{memo as Ay,useId as RT,useMemo as hT,useRef as xy}from"react";var Wf=Object.freeze({tile:Object.freeze({maxWidth:480,maxHeight:320})});var Ql="tile",Io=Wf[Ql],Sw=2,vo=16,Kf=5,zf=Io.maxWidth/Sw,gw=Kf*(zf+vo)-vo,$f=e=>{let t=Math.min(Kf,1+Math.floor((e+vo)/(zf+vo)));return Math.floor((Math.min(e,gw)-(t-1)*vo)/t)},Zl=`round(nearest, 100cqi * ${Io.maxHeight} / ${Io.maxWidth}, 1px)`,jf=Object.freeze({aspectRatio:`${Io.maxWidth} / ${Io.maxHeight}`,height:Zl,contain:"strict"}),Ew="--aqdr-lattice-block",Gf=Object.freeze({marginBlockEnd:`calc(round(up, ${Zl}, var(${Ew})) - ${Zl})`});var Dw="download",ww="thumbnail",Tw="1",Cn=(e,t,r)=>{let n=`${e}/attachment/${encodeURIComponent(t)}`;switch(r.kind){case"inline":return n;case"download":return`${n}?${new URLSearchParams({[Dw]:Tw})}`;case"thumbnail":return`${n}?${new URLSearchParams({[ww]:r.variant})}`}};import{createContext as Aw,useContext as xw}from"react";var Jl=Aw(null),_n=()=>xw(Jl)===!1?-1:void 0,Yf=(e,t)=>{let{before:r,after:n}=po(e.ownerDocument,e);return(t==="before"?r.at(-1):n[0])??null},qf=(e,t,r)=>{if(t===null)return!r&&ka(e).length>0;if(!e.contains(t))return!1;let{before:n,within:o,after:a}=po(e,t);return r?n.length>0:o.length>0||a.length>0};import{createContext as Nw,useContext as Ow,useLayoutEffect as Mw,useMemo as ny,useState as kw}from"react";import{flushSync as Pw}from"react-dom";import{flushSync as vw}from"react-dom";var ed=new WeakMap,Xf=e=>e.observedTrackWidth!==null&&e.observedTrackWidth!==e.handedTrackWidth,Zf=e=>e.overflowWidth!==null&&e.overflowWidth!==e.handedOverflowWidth,Iw=(e,t)=>{for(let r=t.parentElement;r!==null;r=r.parentElement){let n=e.observations.get(r);if(n!==void 0)return n}return null},Qf=(e,t,r)=>{let n=Iw(e,t);return n===null||n.handedTrackWidth===null||r<=n.handedTrackWidth?null:{track:n,trackWidth:n.handedTrackWidth}},Cw=e=>{e.frame=null;let t=new Map;for(let r of e.observations.values())Xf(r)&&t.set(r,r.observedTrackWidth);for(let[r,n]of e.fittedNames){if(!Zf(n))continue;let o=n.overflowWidth;n.handedOverflowWidth=o;let a=Qf(e,r,o);a===null||t.has(a.track)||t.set(a.track,a.trackWidth)}t.size!==0&&vw(()=>{for(let[r,n]of t)r.handedTrackWidth=n,r.onTrackWidth(n)})},_w=(e,t)=>{for(let r of t){let n=r.contentBoxSize[0].inlineSize;if(n===0)continue;let o=e.observations.get(r.target);if(o!==void 0){o.observedTrackWidth=o.trackWidthOf(n);continue}let a=e.fittedNames.get(r.target);if(a!==void 0){if(Qf(e,r.target,n)!==null){a.overflowWidth=n;continue}a.overflowWidth=null,a.handedOverflowWidth=null}}e.frame!==null||!([...e.observations.values()].some(Xf)||[...e.fittedNames.values()].some(Zf))||(e.frame=e.view.requestAnimationFrame(()=>Cw(e)))},Lw=e=>{let t=ed.get(e);if(t!==void 0)return t;let r=e.defaultView;if(r===null)throw new Error("[daily-report] An attachment name track must belong to a document with a window to be measured");let n={view:r,observer:new r.ResizeObserver(o=>_w(n,o)),observations:new Map,fittedNames:new Map,frame:null};return ed.set(e,n),n},Jf=(e,t)=>{let r=Lw(e.ownerDocument);if(r.observations.has(e)||r.fittedNames.has(e))throw new Error(t);return r},ey=(e,t)=>{e.observer.unobserve(t),!(e.observations.size>0||e.fittedNames.size>0)&&(e.frame!==null&&e.view.cancelAnimationFrame(e.frame),e.observer.disconnect(),ed.delete(e.view.document))},ty=(e,t,r)=>{let n=Jf(e,"[daily-report] An attachment name track is already observed"),o={trackWidthOf:t,onTrackWidth:r,observedTrackWidth:null,handedTrackWidth:null};return n.observations.set(e,o),n.observer.observe(e),()=>{n.observations.get(e)===o&&(n.observations.delete(e),ey(n,e))}},ry=e=>{let t=Jf(e,"[daily-report] A fitted attachment file name is already observed"),r={overflowWidth:null,handedOverflowWidth:null};return t.fittedNames.set(e,r),t.observer.observe(e),()=>{t.fittedNames.get(e)===r&&(t.fittedNames.delete(e),ey(t,e))}};import{jsx as Kt,jsxs as iy}from"react/jsx-runtime";var nd="\u2026",Fw=nd.codePointAt(0),oy=Object.freeze({text:nd,runs:Object.freeze([])}),xs="data-attachment-file-name",Hw=Ne("block min-w-0"),Bw="block w-fit whitespace-nowrap",Vw=new Set([" ","\xA0","\u1361","\u{10100}","\u{10101}","\u{1039F}","\u{1091F}"," ",`
|
|
5
|
+
`,"\f","\r"]),Uw=/^-?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?px$/,od=({fileName:e})=>Kt("span",{className:kt,children:e}),Ww=/"([^"]*)"|'([^']*)'|([^\s,"'][^,"']*)/g,Kw=/^U\+([\dA-F?]{1,6})(?:-([\dA-F]{1,6}))?$/i,ad=Nw(null),ly=e=>{let t=e.text.lastIndexOf(".");return t<=0||t===e.text.length-1?{stem:e,extension:bt("")}:{stem:Yn(e,0,t),extension:Yn(e,t,e.text.length)}},td=(e,t,r,n)=>{let o=Array.from(e.text),a=0,s=o.length-1;for(;a<s;){let i=Math.ceil((a+s)/2);n(o.slice(0,i).join("")+t)<=r?a=i:s=i-1}return Yn(e,0,o.slice(0,a).join("").length)},zw=(e,t,r)=>{if(r(e)<=t)return bt(e);let{stem:n,extension:o}=ly(jc(e)),a=t/2,s=r(o.text)<=a?o:on([td(o,nd,a,r),oy]);if(r(n.text+s.text)<=t)return on([n,s]);let i=on([oy,s]);return r(i.text)>t?td(i,"",t,r):on([td(n,i.text,t,r),i])},ay=new WeakMap,dy=e=>{let t=ay.get(e);if(t!==void 0)return t;let r=e.createElement("canvas").getContext("2d");if(r===null)throw new Error("[daily-report] Attachment file names are fitted with a canvas 2D context, which this document cannot create");let n={context:r,font:"",measures:new Map};return ay.set(e,n),n},cy=(e,t,r)=>`${e}|${t}|${r}`,$w=(e,t,r,n)=>{let o=cy(t,r,n),a=e.measures.get(o);if(a!==void 0)return a;let s=i=>{e.font!==t&&(e.context.font=t,e.font=t);let l=0;for(let d of i)l+=Vw.has(d)?r+n:r;return e.context.measureText(i).width+l};return e.measures.set(o,s),s},uy=e=>{let t=new Set;for(let r of e.matchAll(Ww)){let n=r.slice(1).find(o=>o!==void 0);t.add(n.trim().replace(/\s+/g," ").toLowerCase())}return t},sy=e=>e==="normal"?0:Uw.test(e)?Math.max(Number.parseFloat(e),0):null,jw=e=>{let t=getComputedStyle(e),r=sy(t.letterSpacing),n=sy(t.wordSpacing);if(r===null||n===null)return null;let o=`${t.fontStyle} ${t.fontWeight} ${t.fontSize} ${t.fontFamily}`;return{font:o,letterSpacing:r,wordSpacing:n,families:uy(t.fontFamily),measure:$w(dy(e.ownerDocument),o,r,n)}},Gw=(e,t)=>e===t||e!==null&&t!==null&&e.width===t.width&&e.measure===t.measure,Yw=e=>{let t=new Set([Fw]);for(let r of e.querySelectorAll(`[${xs}]`)){let n=r.getAttribute(xs);for(let o of n+n.normalize("NFC"))t.add(o.codePointAt(0))}return t},qw=(e,t)=>{for(let r of e.split(",")){let n=Kw.exec(r.trim());if(n===null)return!0;let[,o,a]=n,s=Number.parseInt(o.replaceAll("?","0"),16),i=a===void 0?Number.parseInt(o.replaceAll("?","F"),16):Number.parseInt(a,16);for(let l of t)if(l>=s&&l<=i)return!0}return!1},rd=new WeakMap,py=e=>{let t=rd.get(e);if(t!==void 0)return t;let r={document:e,registrations:new Set,stopWatchingFonts:null};return rd.set(e,r),r},my=(e,t)=>{let r=jw(e.container.querySelector(`[${xs}]`));if(r===null){e.fitted=null,e.applyFit(null);return}e.fitted={trackWidth:t,nameFont:r};let n=py(e.container.ownerDocument);n.stopWatchingFonts===null&&(n.stopWatchingFonts=Zw(n)),e.applyFit({width:t,measure:r.measure})},Xw=(e,t)=>{let r=t.map(o=>({families:uy(o.family),unicodeRange:o.unicodeRange})),n=[];for(let o of e.registrations){let{fitted:a}=o;if(a===null)continue;let s=r.filter(l=>Array.from(l.families).some(d=>a.nameFont.families.has(d)));if(s.length===0)continue;let i=Yw(o.container);s.some(l=>qw(l.unicodeRange,i))&&(dy(e.document).measures.delete(cy(a.nameFont.font,a.nameFont.letterSpacing,a.nameFont.wordSpacing)),n.push([o,a.trackWidth]))}n.length!==0&&Pw(()=>{for(let[o,a]of n)my(o,a)})},Zw=e=>{let t=e.document.fonts,r=n=>{Xw(e,n.fontfaces)};return t.addEventListener("loadingdone",r),()=>{t.removeEventListener("loadingdone",r)}},Qw=(e,t,r)=>{let n={container:e,applyFit:r,fitted:null},o=ty(e,t,s=>my(n,s)),a=py(e.ownerDocument);return a.registrations.add(n),()=>{o(),a.registrations.delete(n),!(a.registrations.size>0)&&(a.stopWatchingFonts?.(),rd.delete(a.document))}},fy=(e,t)=>{let[r,n]=kw(null);return Mw(()=>{let o=e.current;return Qw(o,t,s=>{n(i=>Gw(i,s)?i:s)})},[e,t]),r},yy=({containerRef:e,children:t})=>{let r=fy(e,$f);return Kt(ad,{value:r,children:t})},Jw=e=>e,Ry=({containerRef:e,children:t})=>{let r=fy(e,Jw);return Kt(ad,{value:r,children:t})},Co=({fileName:e,attachmentIndex:t,className:r,testId:n})=>{let o=Ow(ad),a=ny(()=>o===null?null:zw(e,o.width,o.measure),[e,o]),{stem:s,extension:i}=ny(()=>ly(bt(e)),[e]),l=fe.attachment(t);return iy("span",{className:Hw(r),title:e,"data-testid":n,[xs]:e,children:[a===null?iy("span",{"aria-hidden":"true",className:"flex min-w-0",children:[Kt("span",{className:"truncate",children:Kt(pe,{fieldKey:l,raw:e,display:s})}),i.text!==""&&Kt("span",{className:"max-w-1/2 shrink-0 truncate",children:Kt(pe,{fieldKey:l,raw:e,display:i})})]}):Kt("span",{ref:ry,"aria-hidden":"true",className:Bw,children:Kt(pe,{fieldKey:l,raw:e,display:a})}),Kt(od,{fileName:e})]})};import oT from"lucide-react/dist/esm/icons/image-off.js";import{memo as aT,useCallback as ld,useEffect as sT,useLayoutEffect as iT,useRef as dd,useState as lT}from"react";var vs=Object.freeze({queueWaitMs:3e4,readMs:3e4,renderMs:1e4,transferMarginMs:5e3}),hy=vs.queueWaitMs+vs.readMs+vs.renderMs+vs.transferMarginMs;var eT=Object.freeze({kind:"loaded"}),by=(e,t,r,n,o)=>{let{limiter:a,tuning:s}=n,i="watching",l=null,d=null,c=null,u=null,p=null,f=A=>(A!==null&&n.clearTimeout(A),null),m=()=>{u?.(),u=null},y=()=>{p?.(),p=null},g=A=>A===null||A.kind==="loaded"?0:A.kind==="failing"?A.failedAttempts:s.maxAttempts,R=A=>{i="cooling",c=n.setTimeout(L,A)},D=()=>{o.abortInFlight(),y();let A=g(r.get(t))+1;if(A>=s.maxAttempts){i="done",r.set(t,{kind:"exhausted",failedAt:n.now()}),o.exhausted();return}r.set(t,{kind:"failing",failedAttempts:A,retryAt:n.now()+s.retryDelayMs}),o.reset(),R(s.retryDelayMs)},b=A=>{if(i==="loading"){if(d=f(d),!A){D();return}i="done",r.set(t,eT),y()}},h=()=>{d=null,b(!1)},S=()=>{i="loading",o.showActivity(!0),m(),d=n.setTimeout(h,s.loadTimeoutMs),o.grant()},w=()=>{l=null,i="queued",p=a.request(S)},x=()=>{l===null&&(l=n.setTimeout(w,s.settleMs))},E=A=>{if(o.showActivity(A),A){i==="watching"&&x();return}if(i==="queued"){y(),i="watching";return}l=f(l)},L=()=>{c=null,i="watching",o.showActivity(!1),u=n.observe(e,E)},N=()=>{let A=i==="loading";i="done",m(),l=f(l),d=f(d),c=f(c),o.showActivity(!1),A&&(o.abortInFlight(),p!==null&&o.reset()),y()},M=r.get(t);if(M?.kind==="loaded")return i=o.shows()?"done":"loading",o.grant(),{settle:b,dispose:N};if(M?.kind==="exhausted"){if(n.now()-M.failedAt<s.failureMemoryMs)return i="done",o.exhausted(),{settle:b,dispose:N};r.delete(t)}o.reset();let T=M?.kind==="failing"?M.retryAt-n.now():0;return T>0?R(T):L(),{settle:b,dispose:N}};var tT=e=>{tt("createLoadSlotLimiter: limit",e,1);let t=0,r=new Set,n=()=>{for(let o of r){r.delete(o),o.onGranted();return}t-=1};return{request:o=>{let a={onGranted:o},s=!1;return t<e?(t+=1,o()):r.add(a),()=>{s||(s=!0,!r.delete(a)&&n())}}}},Sy=tT(2);var rT=e=>{tt("createThumbnailProgressStore: maxUrls",e,1);let t=new Map,r=(n,o)=>{t.delete(n),t.set(n,o)};return{peek:n=>t.get(n)??null,get:n=>{let o=t.get(n);return o===void 0?null:(r(n,o),o)},set:(n,o)=>{if(r(n,o),t.size<=e)return;let[a]=t.keys();t.delete(a)},delete:n=>{t.delete(n)}}},sd=rT(1024);var id=new WeakMap,nT=e=>{let t=id.get(e);if(t!==void 0)return t;let r=e.defaultView;if(r===null)throw new Error("[daily-report] A thumbnail frame must belong to a document with a window to be observed");let n=new WeakMap,a={observer:new r.IntersectionObserver(s=>{for(let i of s)n.get(i.target)?.onChange(i.isIntersecting)}),observations:n,observed:0};return id.set(e,a),a},gy=(e,t)=>{let r=e.ownerDocument,n=nT(r);if(n.observations.has(e))throw new Error("[daily-report] A thumbnail frame is already observed");let o={onChange:t};return n.observations.set(e,o),n.observed+=1,n.observer.observe(e),()=>{n.observations.get(e)===o&&(n.observations.delete(e),n.observer.unobserve(e),n.observed-=1,!(n.observed>0)&&(n.observer.disconnect(),id.delete(r)))}};import{jsx as _o,jsxs as yT}from"react/jsx-runtime";var dT={idle:"pending",granted:"pending",loaded:"loaded",failed:"unavailable"},cT="data-thumbnail-active",uT="data-daily-report-attachment-preview",Dy={[uT]:""},pT=Object.freeze({settleMs:250,loadTimeoutMs:hy,retryDelayMs:5e3,maxAttempts:2,failureMemoryMs:6e4}),Ey=e=>{let t=sd.peek(e);return t?.kind==="loaded"?{url:e,status:"loaded"}:t?.kind==="exhausted"?{url:e,status:"failed"}:{url:e,status:"idle"}},mT=()=>({limiter:Sy,now:()=>performance.now(),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),observe:gy,tuning:pT}),fT=(e,t,r,n)=>({grant:()=>r(o=>o.url!==e||o.status==="granted"||o.status==="loaded"?o:{url:e,status:"granted"}),reset:()=>r(o=>o.url!==e||o.status==="idle"?o:{url:e,status:"idle"}),exhausted:()=>r(o=>o.url!==e||o.status==="failed"?o:{url:e,status:"failed"}),abortInFlight:()=>{let o=n.current;o?.getAttribute("src")===e&&o.removeAttribute("src")},shows:()=>{let o=n.current;return o?.getAttribute("src")===e&&o.complete&&o.naturalWidth>0},showActivity:o=>{t.toggleAttribute(cT,o)}}),wy=aT(({thumbnailUrl:e,unavailableLabel:t})=>{let r=dd(null),n=dd(null),o=dd(null),[a,s]=lT(()=>Ey(e));a.url!==e&&s(Ey(e)),iT(()=>{if(a.status==="failed")return;let c=n.current,u=a.status==="idle"?null:a.url;c.getAttribute("src")!==u&&(u===null?c.removeAttribute("src"):c.setAttribute("src",u))},[a]),sT(()=>{let c=r.current,u=by(c,e,sd,mT(),fT(e,c,s,n));return o.current=u,()=>{o.current=null,u.dispose()}},[e]);let i=ld(c=>{c!==null&&(n.current=c)},[]),l=ld(()=>{s(c=>c.status==="granted"?{url:c.url,status:"loaded"}:c),o.current?.settle(!0)},[]),d=ld(()=>{o.current?.settle(!1)},[]);return _o("span",{className:"block",children:_o("span",{ref:r,"aria-hidden":"true","data-testid":"daily-report-attachment-thumbnail-frame","data-thumbnail-state":dT[a.status],style:jf,className:"relative block w-full",children:_o("span",{"data-testid":"daily-report-attachment-thumbnail-skin",className:"absolute inset-0 flex items-center justify-center overflow-hidden rounded-lg bg-slate-100 after:pointer-events-none after:absolute after:inset-0 after:rounded-[inherit] after:ring-1 after:ring-slate-900/10 after:ring-inset dark:bg-slate-800 dark:after:ring-white/10 [[data-daily-report-attachment-preview]:active_&]:after:ring-blue-500 dark:[[data-daily-report-attachment-preview]:active_&]:after:ring-blue-400 motion-safe:[[data-thumbnail-state=pending][data-thumbnail-active]_&]:animate-pulse [[data-thumbnail-state=pending]_&]:bg-slate-200 dark:[[data-thumbnail-state=pending]_&]:bg-slate-700 [@media(hover:hover)]:[[data-daily-report-attachment-preview]:hover:not(:active)_&]:after:ring-blue-300 dark:[@media(hover:hover)]:[[data-daily-report-attachment-preview]:hover:not(:active)_&]:after:ring-blue-400/60",children:a.status==="failed"?yT("span",{className:`flex size-full flex-col items-center justify-center gap-1 px-2 text-center text-slate-600 text-xs dark:text-slate-400 ${Xt}`,"data-testid":"daily-report-attachment-thumbnail-unavailable",children:[_o(oT,{"aria-hidden":"true",className:"size-5 shrink-0 text-slate-500 dark:text-slate-400"}),t]}):_o("img",{ref:i,alt:"",decoding:"async",fetchPriority:"low",draggable:!1,onLoad:l,onError:d,className:"max-h-full max-w-full opacity-0 motion-safe:transition-opacity motion-safe:duration-200 motion-safe:ease-out [[data-thumbnail-state=loaded]_&]:opacity-100","data-testid":"daily-report-attachment-thumbnail"})})})})});import{jsx as Ce,jsxs as zt}from"react/jsx-runtime";var Ty=1024,cd=["B","KB","MB","GB"],vy="text-slate-500 text-sm line-through dark:text-slate-400",bT="relative truncate",ST=Ne(bT),gT=v("relative ml-auto shrink-0 rounded-sm text-slate-500 text-xs underline decoration-slate-300 underline-offset-2 after:absolute after:-inset-x-2 after:-inset-y-1 hover:text-slate-700 hover:decoration-current dark:text-slate-400 dark:decoration-slate-600 dark:hover:text-slate-200",te),ET=v("flex min-w-0 flex-col gap-2 rounded-lg",te),DT=v("flex min-w-0 rounded-sm",te),wT=v("m-0",Nr),TT=e=>{if(e===null||!Number.isFinite(e)||e<0)return null;let t=e,r=0;for(;t>=Ty&&r<cd.length-1;)t/=Ty,r+=1;return r===0?`${t} ${cd[r]}`:`${t.toFixed(1)} ${cd[r]}`},AT=e=>{let t=[],r=[];for(let[n,o]of e.entries())o.hasThumbnail?t.push({attachment:o,index:n}):r.push({attachment:o,index:n});return{tiles:t,rows:r}},Iy=({attachment:e,labels:t,className:r})=>zt("span",{className:ST(r),children:[TT(e.fileSize)??"\u2014",e.state==="absent"&&` \xB7 ${t.attachmentMissing}`]}),ud=({href:e,children:t,...r})=>{let n=_n();return Ce("a",{href:e,...r,tabIndex:n,children:t})},Cy=({downloadUrl:e,label:t,fileName:r})=>zt(ud,{href:e,className:gT,"data-testid":"daily-report-attachment-download",children:[t," ",Ce(od,{fileName:r})]}),xT=Ay(({attachment:e,attachmentIndex:t,apiBasePath:r,labels:n})=>{let o=Ce(wy,{thumbnailUrl:Cn(r,e.id,{kind:"thumbnail",variant:Ql}),unavailableLabel:n.attachmentThumbnailUnavailable}),a=e.state==="absent";return zt("li",{className:"@container flex min-w-0 flex-col gap-1","data-testid":"daily-report-attachment-item","data-attachment-state":e.state,children:[a?zt("div",{className:"flex min-w-0 flex-col gap-2",children:[o,Ce(Co,{fileName:e.fileName,attachmentIndex:t,className:vy,testId:"daily-report-attachment-name"})]}):zt(ud,{href:Cn(r,e.id,{kind:"inline"}),className:ET,"data-testid":"daily-report-attachment-link",...Dy,children:[o,Ce(Co,{fileName:e.fileName,attachmentIndex:t,className:"text-blue-600 text-sm dark:text-blue-400 [@media(hover:hover)]:[[data-daily-report-attachment-preview]:hover_&]:underline"})]}),zt("div",{className:"flex h-4 min-w-0 items-center gap-2 text-slate-500 text-xs tabular-nums dark:text-slate-400",style:Gf,children:[Ce(Iy,{attachment:e,labels:n}),!a&&Ce(Cy,{downloadUrl:Cn(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})]})}),vT=Ay(({attachment:e,attachmentIndex:t,apiBasePath:r,labels:n})=>{let o=e.state==="absent",a=xy(null);return zt("li",{className:"flex items-center gap-2 rounded-lg bg-slate-50 p-2 dark:bg-slate-800/40","data-testid":"daily-report-attachment-item","data-attachment-state":e.state,children:[Ce(Ry,{containerRef:a,children:Ce("div",{ref:a,className:"flex min-w-0 flex-1","data-testid":"daily-report-attachment-name-track",children:zt("div",{className:"flex min-w-0 flex-col",children:[o?Ce(Co,{fileName:e.fileName,attachmentIndex:t,className:vy,testId:"daily-report-attachment-name"}):Ce(ud,{href:Cn(r,e.id,{kind:"inline"}),className:DT,"data-testid":"daily-report-attachment-link",children:Ce(Co,{fileName:e.fileName,attachmentIndex:t,className:"text-blue-600 text-sm hover:underline dark:text-blue-400"})}),Ce(Iy,{attachment:e,labels:n,className:"text-slate-500 text-xs tabular-nums dark:text-slate-400"})]})})}),!o&&Ce(Cy,{downloadUrl:Cn(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})}),IT=({entries:e,headingId:t,apiBasePath:r,labels:n})=>{let o=xy(null);return Ce(yy,{containerRef:o,children:Ce("div",{ref:o,className:"@container","data-testid":"daily-report-attachment-grid-container",children:Ce("ul",{"aria-labelledby":t,className:"grid @min-[1008px]:w-[calc(round(down,100%-64px,5px)+64px)] @min-[240px]:w-[calc(round(down,100%-16px,2px)+16px)] @min-[496px]:w-[calc(round(down,100%-32px,3px)+32px)] @min-[752px]:w-[calc(round(down,100%-48px,4px)+48px)] w-[round(down,100%,1px)] max-w-[1264px] @min-[1008px]:grid-cols-5 @min-[240px]:grid-cols-2 @min-[496px]:grid-cols-3 @min-[752px]:grid-cols-4 grid-cols-1 gap-[16px]","data-testid":"daily-report-attachment-grid",children:e.map(({attachment:a,index:s})=>Ce(xT,{attachment:a,attachmentIndex:s,apiBasePath:r,labels:n},a.id))})})})},Is=({attachments:e})=>{let{apiBasePath:t,labels:r,headingLevel:n}=z(),o=RT(),{tiles:a,rows:s}=hT(()=>AT(e),[e]);return e.length===0?null:zt("div",{className:"flex flex-col gap-2","data-testid":"daily-report-attachment-section",children:[Ce(pt,{level:Dr[n],id:o,className:wT,children:r.attachments}),zt("div",{className:"flex flex-col gap-4",children:[a.length>0&&Ce(IT,{entries:a,headingId:o,apiBasePath:t,labels:r}),s.length>0&&Ce("ul",{"aria-labelledby":o,className:"flex flex-col gap-2","data-testid":"daily-report-attachment-rows",children:s.map(({attachment:i,index:l})=>Ce(vT,{attachment:i,attachmentIndex:l,apiBasePath:t,labels:r},i.id))})]})]})};import{useOverlayEscapeStack as jT}from"@aiquants/swipe-overlay";import{memo as Py,useCallback as Ns,useEffect as Ny,useId as Fy,useLayoutEffect as GT,useRef as yd,useState as YT}from"react";import{useCallback as _y,useMemo as CT,useState as _T}from"react";var LT=()=>[],pd=(e,t,r)=>{let{pendingAddCommentIds:n,pendingDeleteCommentIds:o,resolvedIdMap:a,addComment:s,deleteComment:i}=qe(),{version:l}=As(),{labels:d}=z(),c=d.unknownUser,[u,p]=_T(null),f=_y(R=>e&&i(e.reportHubId,R,e.date),[e,i]),m=_y(R=>e&&t?s(e.reportHubId,R,e.date):Promise.resolve(),[e,t,s]),y=Ue(LT);return{uiComments:CT(()=>{if(!e)return[];let R=um(e.externalComments,e.postedComments,r,c),D=o.current.get(e.reportHubId);D?.size&&(R=R.filter(h=>!D.has(h.id)));let b=n.current.get(e.reportHubId);if(b?.size&&t){let h=new Set(R.map(E=>E.id)),S=or(t,""),w=S==="",x=w?c:S;for(let[E,L]of b){if(D?.has(E)||h.has(E))continue;let N=a.current.get(E);N&&h.has(N)||R.some(M=>M.isMine&&M.content===L&&typeof M.id=="number"&&M.id>0)||R.push({id:E,authorName:x,content:L,createdAt:new Date().toISOString(),isMine:!0,isLegacy:!1,isAuthorUnknown:w})}}return JSON.stringify(R)===JSON.stringify(y.current)?y.current:(y.current=R,R)},[e,t,r,c,o,n,a,l]),handleAddComment:m,handleDeleteComment:f,pendingDeleteId:u,setPendingDeleteId:p,resolvedIdMap:a.current}};import{Fragment as NT,jsx as OT}from"react/jsx-runtime";var ze=({render:e})=>{let t=_n();return OT(NT,{children:e(t)})};import MT from"@heroicons/react/24/outline/TrashIcon.js";import{memo as kT,useId as PT,useMemo as Ly,useRef as FT,useState as HT}from"react";import{jsx as $t,jsxs as Cs}from"react/jsx-runtime";var md="data-comment-id",_s="data-comment-delete-button",Ls="data-comment-delete-slot",BT=v(Ge,bc),VT=Array.from({length:8},(e,t)=>v("relative rounded-xl border border-slate-200 border-solid bg-white p-[11px] dark:border-slate-700 dark:bg-slate-900/70",(t&4)!==0&&"border-blue-200 bg-blue-50 dark:border-blue-800/70 dark:bg-blue-950/40",(t&2)!==0&&"hidden",(t&1)!==0?"z-50":"z-0 hover:z-10")),UT=(e,t,r)=>(e?4:0)+(t?2:0)+(r?1:0),WT=Ne("font-semibold text-xs"),KT="relative flex h-5 items-center",zT=v(Ye,"motion-safe:fade-in motion-safe:zoom-in-95 absolute top-full right-0 z-20 mt-1 whitespace-nowrap bg-red-600 font-bold text-white text-xs shadow-lg hover:bg-red-700 active:bg-red-800 motion-safe:animate-in motion-safe:duration-200",te),$T=(e,t,r)=>t===e||typeof e=="number"&&e<0&&r?.get(e)===t||typeof t=="number"&&t<0&&r?.get(t)===e,fd=kT(({comment:e,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:s,onBeforeHide:i,resolvedIdMap:l})=>{let[d,c]=HT(!1),{labels:u}=z(),p=PT(),f=FT(null),m=$T(e.id,o,l),y=Ly(()=>Be(e.authorName),[e.authorName]),g=Ly(()=>bt(e.content),[e.content]),R=fe.comment(e.id,"author"),D=fe.comment(e.id,"content"),b=En(D),h=e.isMine&&!e.isLegacy,S=!!e.createdAt||h,w=()=>{let E=f.current;E!==null&&i(E),a(null),c(!0),typeof e.id=="number"&&n?.(e.id)},x=E=>{if(!m)return;let L=E.relatedTarget;xe(L)&&E.currentTarget.contains(L)||a(null)};return Cs("li",{[md]:e.id,"data-deleted":d?"true":void 0,className:VT[UT(e.isMine,d,m)],children:[Cs("div",{className:"mb-1 flex items-center justify-between",children:[$t("div",{className:WT(pm(e.color)),children:b&&!e.isAuthorUnknown?$t(pe,{fieldKey:R,raw:e.authorName,display:y}):y.text}),S&&Cs("div",{className:"flex items-center gap-2",children:[e.createdAt&&$t("div",{className:"text-slate-500 text-xs dark:text-slate-400",children:Ae(e.createdAt)}),h&&Cs("div",{[Ls]:e.id,className:KT,onBlur:x,children:[$t(ze,{render:E=>$t("button",{ref:f,type:"button",tabIndex:E,className:BT,title:u.commentDelete,"aria-label":u.commentDelete,"aria-expanded":m,"aria-controls":m?p:void 0,[_s]:e.id,onClick:()=>s(e.id,m),children:$t(MT,{"aria-hidden":"true",className:m?He.deletePending:He.delete})})}),m&&$t(ze,{render:E=>$t("button",{id:p,type:"button",tabIndex:E,"data-delete-confirmation":!0,className:zT,onClick:w,children:u.commentDeleteConfirm})})]})]})]}),$t("div",{className:"whitespace-pre-wrap text-slate-700 text-sm leading-6 dark:text-slate-200",children:b?$t(pe,{fieldKey:D,raw:e.content,display:g}):e.content})]})});fd.displayName="DailyReportPostedComment";import{Fragment as sA,jsx as Tt,jsxs as Rd}from"react/jsx-runtime";var qT="data-daily-report-comment-section",XT="data-daily-report-comment-heading",ZT=v(qt,te),QT=Ne("flex flex-col gap-2"),Hy=(e,t)=>e>0||t,JT=v("h-9 min-w-0 flex-1 rounded-lg border border-solid bg-slate-50 px-[7px] text-sm focus:bg-white dark:bg-slate-800 dark:text-slate-200 dark:focus:bg-slate-900",Yt,te),eA=v("h-9 rounded-lg bg-blue-600 px-4 font-medium text-sm text-white hover:bg-blue-700 disabled:opacity-50",te),Oy=e=>e.querySelector(`[${_s}][aria-expanded="true"]`),tA=(e,t,r)=>{let n=[...e.querySelectorAll(`[${_s}]`)].filter(i=>i===t||i.closest("[data-deleted]")===null),o=n.indexOf(t),a=n.at(o+1);if(a!==void 0)return{kind:"trash",button:a};if(o>0)return{kind:"trash",button:n[o-1]};let s=[...e.querySelectorAll(`[${md}]`)].filter(i=>!i.contains(t)&&i.closest("[data-deleted]")===null).length;return Hy(s,r)?{kind:"heading"}:{kind:"report"}},rA=({comments:e,reportHubId:t,businessDate:r,onDeleteComment:n,pendingDeleteId:o,onPendingDeleteIdChange:a,resolvedIdMap:s,canComment:i,headingRef:l,onSectionRemoved:d})=>{let c=yd(null),u=jT(),p=Fy(),f=o!==null,m=Ns(()=>{let R=c.current,D=R===null?null:Oy(R),b=D===null?null:D.closest(`[${Ls}]`),h=R===null?null:Ke(R);a(null),D!==null&&b!==null&&h!==null&&b.contains(h)&&D.focus({preventScroll:!0})},[a]);Ny(()=>{if(f)return u({id:p,onEscape:R=>sr(R)?(m(),!0):!1})},[f,u,p,m]),Ny(()=>{let R=c.current;if(!f||R===null)return;let D=R.ownerDocument,b=h=>{let S=Oy(R)?.closest(`[${Ls}]`);S!=null&&xe(h.target)&&S.contains(h.target)||a(null)};return D.addEventListener("pointerdown",b,!0),()=>D.removeEventListener("pointerdown",b,!0)},[f,a]);let y=Ns((R,D)=>{D?m():a(R)},[m,a]),g=Ns(R=>{let D=c.current;if(D===null)return;let b=tA(D,R,i);if(b.kind==="report"){d();return}let h=b.kind==="trash"?b.button:l.current;if(h===null)throw new Error("[daily-report] the comment section's heading is not attached");h.focus({preventScroll:!0})},[i,l,d]);return e.length===0?null:Tt("ul",{ref:c,className:"space-y-2",children:e.map(R=>Tt(fd,{comment:R,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:y,onBeforeHide:g,resolvedIdMap:s},R.id))})},My=({headingId:e,className:t,children:r,...n})=>{let{labels:o,headingLevel:a}=z(),s=yd(null);return Hy(n.comments.length,n.canComment)?Rd("div",{[qT]:"",className:QT(t),children:[Tt(pt,{ref:s,id:e,level:Dr[a],tabIndex:-1,[XT]:"",className:ZT,children:o.comments}),Tt(rA,{...n,headingRef:s}),r]}):null},By=Py(({report:e,canComment:t,onSectionRemoved:r,formPlacement:n,sectionClassName:o,comments:a,onAddComment:s,onDeleteComment:i,pendingDeleteId:l,onPendingDeleteIdChange:d,resolvedIdMap:c})=>{let u=Fy(),p=t?Tt(aA,{onAddComment:s,pushedToEnd:n==="after-section",labelledBy:u}):null,f={headingId:u,comments:a,canComment:t,reportHubId:e.reportHubId,businessDate:e.date,onDeleteComment:i,pendingDeleteId:l,onPendingDeleteIdChange:d,resolvedIdMap:c,onSectionRemoved:r,className:o};return n==="in-section"?Tt(My,{...f,children:p}):Rd(sA,{children:[Tt(My,{...f}),p]})});By.displayName="ReportCommentsView";var Lo=Py(({report:e,userId:t,canComment:r,onCommentAdded:n,onSectionRemoved:o,formPlacement:a,sectionClassName:s})=>{let{user:i}=qe(),{uiComments:l,handleAddComment:d,handleDeleteComment:c,pendingDeleteId:u,setPendingDeleteId:p,resolvedIdMap:f}=pd(e,i,t),m=sm(),y=yd(!1);GT(()=>{y.current&&m(),y.current=!0},[l,u,m]);let g=Ns(async R=>{await d(R),n?.()},[d,n]);return Tt(By,{report:e,canComment:r,onSectionRemoved:o,formPlacement:a,sectionClassName:s,comments:l,onAddComment:g,onDeleteComment:c,pendingDeleteId:u,onPendingDeleteIdChange:p,resolvedIdMap:f})});Lo.displayName="ReportComments";var nA="flex gap-2",oA="mt-auto flex gap-2",ky="content",aA=({onAddComment:e,pushedToEnd:t,labelledBy:r})=>{let[n,o]=YT(!1),{labels:a}=z();return Rd("form",{className:t?oA:nA,onSubmit:async i=>{i.preventDefault();let l=i.currentTarget,d=l.elements.namedItem(ky);if(!(d instanceof Pe(l).HTMLInputElement))return;let c=d.value.trim();if(c&&e){o(!0),l.reset();try{await e(c)}catch{d.value=c}finally{o(!1)}}},children:[Tt(ze,{render:i=>Tt("input",{type:"text",name:ky,tabIndex:i,"aria-labelledby":r,placeholder:a.commentPlaceholder,className:JT,autoComplete:"off"})}),Tt(ze,{render:i=>Tt("button",{type:"submit",tabIndex:i,className:eA,disabled:n,children:a.commentSend})})]})};import{useState as EA}from"react";import{Slot as iA}from"@radix-ui/react-slot";import{cva as lA}from"class-variance-authority";import*as Uy from"react";import{jsx as uA}from"react/jsx-runtime";var dA=lA(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 ${te}`,{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-solid border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-2",lg:"h-11 rounded-md px-4",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),Vy=new Map,cA=(e,t,r)=>{let n=`${String(e)}|${String(t)}`,o=Vy.get(n);if(o!==void 0)return o(r);let a=Ne(dA({variant:e,size:t}));return Vy.set(n,a),a(r)},ir=Uy.forwardRef(({className:e,variant:t,size:r,asChild:n=!1,...o},a)=>uA(n?iA:"button",{className:cA(t,r,e),ref:a,...o}));ir.displayName="Button";import{jsx as fA}from"react/jsx-runtime";var pA=`flex h-9 w-full min-w-0 rounded-md border border-solid bg-white px-[7px] py-[3px] text-base text-slate-900 shadow-xs disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:bg-slate-900 dark:text-slate-100 ${Yt} ${te}`,mA=Ne(pA);function Wy({className:e,type:t,...r}){return fA("input",{type:t,"data-slot":"input",className:mA(e),...r})}import*as Ky from"@radix-ui/react-label";import{jsx as hA}from"react/jsx-runtime";var yA="flex select-none items-center gap-2 font-medium text-sm leading-none [:where(.group)[data-disabled=true]_&]:pointer-events-none [:where(.group)[data-disabled=true]_&]:opacity-50 [:where(.peer):disabled~&]:cursor-not-allowed [:where(.peer):disabled~&]:opacity-50",RA=Ne(yA);function No({className:e,...t}){return hA(Ky.Root,{"data-slot":"label",className:RA(e),...t})}import{jsx as gA}from"react/jsx-runtime";var bA=`flex min-h-15 w-full rounded-md border border-solid bg-white p-[7px] text-base text-slate-900 shadow-xs disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:bg-slate-900 dark:text-slate-100 ${Yt} ${te}`,SA=Ne(bA);function zy({className:e,...t}){return gA("textarea",{"data-slot":"textarea",className:SA(e),...t})}import{jsx as At,jsxs as Os}from"react/jsx-runtime";var Ln=e=>({title:e.subject??"",content:e.content??""}),DA=e=>{e.preventDefault()},Ms=({report:e,onCancel:t,onPublishSuccess:r,titleInputRef:n})=>{let{updateReport:o,publishReport:a}=qe(),{labels:s}=z(),i=Er(),{title:l,content:d}=df(e.reportHubId),[c,u]=EA(!1),p=async()=>{u(!0);try{await o(e.reportHubId,{title:l,content:d},e.date)}catch{}finally{u(!1)}},f=async()=>{u(!0);try{await o(e.reportHubId,{title:l,content:d},e.date),await a(e.reportHubId,e.date),r?.()}catch{}finally{u(!1)}},m=`report-title-${e.reportHubId}`,y=`report-content-${e.reportHubId}`;return Os("form",{className:"space-y-4 p-1",onSubmit:DA,children:[Os("div",{className:"space-y-2",children:[At(No,{htmlFor:m,children:s.formTitle}),At(ze,{render:g=>At(Wy,{ref:n,id:m,value:l,onChange:R=>i.setInput(e.reportHubId,{title:R.target.value}),placeholder:s.formTitlePlaceholder,disabled:c,tabIndex:g})})]}),Os("div",{className:"space-y-2",children:[At(No,{htmlFor:y,children:s.formContent}),At(ze,{render:g=>At(zy,{id:y,value:d,onChange:R=>i.setInput(e.reportHubId,{content:R.target.value}),placeholder:s.formContentPlaceholder,className:"min-h-50",disabled:c,tabIndex:g})})]}),Os("div",{className:"flex justify-end gap-2",children:[t&&At(ze,{render:g=>At(ir,{type:"button",variant:"outline",onClick:t,disabled:c,tabIndex:g,children:s.formCancel})}),At(ze,{render:g=>At(ir,{type:"button",variant:"secondary",onClick:p,disabled:c,tabIndex:g,children:s.formSave})}),At(ze,{render:g=>At(ir,{type:"button",onClick:f,disabled:c,tabIndex:g,children:s.formPublish})})]})]})};var wA=()=>{},ks=(e,t,r,n)=>{let o=null;return{read:()=>{let a=e.read(r),s=t===null?void 0:t.read(r),i=s===void 0?null:s;return(o===null||!Object.is(o.detail,a)||!Object.is(o.marks,i))&&(o=Object.freeze({detail:a,marks:i,marksStore:t})),o},subscribe:a=>{let s=e.subscribe(r,n,a),i=t===null?wA:t.subscribe(r,a);return()=>{s(),i()}},changesBox:(a,s)=>a.detail!==s.detail}};import{virtualScrollItemElementId as ex}from"@aiquants/virtualscroll";import{useContext as Ws}from"react";import{virtualScrollItemElementId as iR}from"@aiquants/virtualscroll";import{createContext as KA,useCallback as ue,useContext as zA,useLayoutEffect as Ar,useMemo as lR,useRef as xr,useState as Oo,useSyncExternalStore as mR}from"react";import{flushSync as wd}from"react-dom";var $y=(e,t)=>e.id===t.id&&e.indexHint===t.indexHint,jy=e=>{let t=new Set,r=new Set,n=e,o=null,a=Object.freeze({selected:n,settled:n}),s=0,i=!1,l=()=>{let h=o===null?n:o;if(!($y(a.selected,n)&&$y(a.settled,h))){a=Object.freeze({selected:n,settled:h});for(let S of[...t])S()}},d=()=>a,c=h=>(t.add(h),()=>{t.delete(h)}),u=h=>{n=h,l()},p=h=>{let S=o!==null;if(o=h,l(),S!==(o!==null))for(let w of[...r])w()},f=h=>p(h),m=()=>p(null),y=()=>o!==null,g=h=>(r.add(h),()=>{r.delete(h)}),R=()=>{s+=1},D=h=>{i=h},b=Object.freeze({appliedEpoch:()=>s,pending:()=>i});return{getSnapshot:d,subscribe:c,select:u,hold:f,release:m,isHeld:y,subscribeHold:g,noteKeyStepApplied:R,noteKeyStepsPending:D,keySteps:b}};var lr=e=>({active:e,effect:"none"}),Gy=(e,t)=>e!==null&&e.index>=t.visibleStartIndex&&e.index<=t.visibleEndIndex,hd=(e,{items:t,selected:r,range:n})=>{if(n===null)return e===null?r:e;if(Gy(e,n))return e;if(Gy(r,n))return r;let o=Ee(t,n.visibleStartIndex);return o===void 0?null:{reportHubId:o.reportHubId,index:n.visibleStartIndex}},Yy=(e,t)=>{if(e.length===0)return{active:null,effect:"handBack"};let r=Math.min(Math.max(t,0),e.length-1);return{active:{reportHubId:Vt(e,r).reportHubId,index:r},effect:"handBack"}},bd=(e,t)=>{switch(t.kind){case"key":return lr(t.target);case"activation":case"focusInControl":return lr(t.row);case"focusInComposite":return t.from==="inside"?lr(e):t.pressed!==null?lr(t.pressed):{active:hd(e,t.shown),effect:"reveal"};case"focusLeft":return lr(hd(e,t.shown));case"rangeChanged":return lr(t.focusWithin&&e!==null?e:hd(e,t.shown));case"listChanged":{if(e===null)return lr(null);let r=ve(t.items,e.reportHubId,e.index);return r===-1?Yy(t.items,e.index):lr(r===e.index?e:{reportHubId:e.reportHubId,index:r})}case"removed":return t.selection===null||t.selection.reportHubId!==t.reportHubId?lr(e):Yy(t.items,t.selection.index)}};var Ps=e=>e.matches(":focus-visible")&&Ao(e.ownerDocument)!=="pointer";var TA="data-daily-report-keyboard-focus",wr={capture:!0},qy=e=>{let t=cf(e.ownerDocument),r=i=>{e.toggleAttribute(TA,xe(i)&&Ps(i))},n=i=>r(i.target),o=i=>{xe(i.relatedTarget)&&e.contains(i.relatedTarget)||r(null)},a=()=>r(null);e.addEventListener("focusin",n,wr),e.addEventListener("keydown",n,wr),e.addEventListener("focusout",o,wr),e.addEventListener("pointerdown",a,wr);let s=Ke(e);return r(s!==null&&e.contains(s)?s:null),()=>{e.removeEventListener("focusin",n,wr),e.removeEventListener("keydown",n,wr),e.removeEventListener("focusout",o,wr),e.removeEventListener("pointerdown",a,wr),r(null),t()}};var AA='form, input, textarea, select, [contenteditable]:not([contenteditable="false"]), audio[controls], video[controls]',xA='select, input[type="search"], [contenteditable]:not([contenteditable="false"]), audio[controls], video[controls]',vA=["combobox","listbox","menu","menubar","radiogroup","slider","spinbutton","textbox","tree","grid","scrollbar","tablist","toolbar","treegrid","separator"],IA=vA.map(e=>`[role="${e}"]`).join(", "),CA='[aria-expanded="true"]',_A=new Map([["ArrowUp","previous"],["ArrowDown","next"],["Home","first"],["End","last"],["PageUp","pageBackward"],["PageDown","pageForward"]]),LA=new Set(["Enter"," "]),NA=new Map([["Home","exitBefore"],["End","exitAfter"]]),gd=e=>{if(e.altKey||e.metaKey)return null;if(e.key==="Tab")return e.ctrlKey?null:"tab";if(e.shiftKey)return null;if(e.ctrlKey){let r=NA.get(e.key);return r===void 0?null:r}let t=_A.get(e.key);return t!==void 0?t:LA.has(e.key)?"activate":e.key==="Escape"?"returnToRow":null},Sd=(e,t,r,n)=>{let o=e.closest(t);return o!==null&&o!==n&&o!==r&&r.contains(o)},OA=(e,t,r,n)=>{let o=Ur(t,r);if(o===null)return null;if(e==="tab")return e;if(e==="activate"||Sd(t,IA,r,n))return null;if(e==="returnToRow"){if(Sd(t,xA,r,n))return null;let a=t.closest(CA);return a!==null&&o.contains(a)?null:e}return Sd(t,AA,r,n)?null:e},Xy=(e,{container:t,composite:r})=>{let n=gd(e);if(n===null||e.defaultPrevented||Gr(e)||t===null||r===null||!xe(e.target)||!t.contains(e.target))return null;let o=e.target,a=o===r?n==="returnToRow"?null:n:OA(n,o,t,r);return a===null?null:{kind:a,target:o}};var Fs={kind:"stay"},Bs=e=>{if(e.kind==="measured")return e.heightOf;let{rowHeight:t}=e;return()=>t},Zy=e=>Math.floor(.875*e),Tr=(e,t)=>({kind:"move",index:e,align:t}),Hs=(e,t,r,n)=>e>=0&&e+t<=r?"none":t>r?n>0?"top":"bottom":e<0?"top":"bottom",MA=({index:e,count:t,viewport:r,activeRowTop:n,heightOf:o})=>{let a=o(e),s=n+a,i={index:e+1,top:s};for(let l=e+1;l<t;l++){let d=o(l);if(a+=d,a>r)break;i={index:l,top:s},s+=d}return i},kA=({index:e,viewport:t,activeRowTop:r,heightOf:n})=>{let o=n(e),a=r,s={index:e-1,top:r-n(e-1)};for(let i=e-1;i>=0;i--){let l=n(i);if(a-=l,o+=l,o>t)break;s={index:i,top:a}}return s},PA=(e,t,r)=>{let{index:n,count:o,viewport:a,activeRowTop:s,heightOf:i}=t,l=s+i(n);switch(e){case"previous":{if(n===0)return Fs;if(r==="top")return Tr(n-1,"top");let d=i(n-1);return Tr(n-1,Hs(s-d,d,a,-1))}case"next":return n===o-1?Fs:r==="top"?Tr(n+1,"top"):Tr(n+1,Hs(l,i(n+1),a,1));case"first":return Tr(0,"top");case"last":return Tr(o-1,i(o-1)<=a?"bottom":"top");case"pageForward":{if(l>a)return{kind:"reveal",delta:Math.min(l-a,Zy(a))};if(n===o-1)return Fs;let d=MA(t);return Tr(d.index,Hs(d.top,i(d.index),a,1))}case"pageBackward":{if(s<0)return{kind:"reveal",delta:-Math.min(-s,Zy(a))};if(n===0)return Fs;let d=kA(t);return Tr(d.index,Hs(d.top,i(d.index),a,-1))}}},FA=({index:e,activeRowTop:t,heightOf:r},n)=>Jy(n,{index:e,offsetPx:-t},r),Qy=(e,t,r,n)=>{let o=r,a=null,s=0;for(let i=0;i<t;i++){let l=PA(e,o,n);if(l.kind==="stay")break;l.kind==="reveal"?(s+=l.delta,o={...o,activeRowTop:o.activeRowTop-l.delta}):l.align==="none"?o={...o,index:l.index,activeRowTop:FA(o,l.index)}:(a={index:l.index,align:l.align},s=0,o={...o,index:l.index,activeRowTop:l.align==="top"?0:o.viewport-o.heightOf(l.index)})}return{index:o.index,alignment:a,scrollDelta:s}},Ed=({index:e,viewport:t,activeRowTop:r,heightOf:n})=>{let o=r+n(e);return r>=0&&o<=t?"whole":r<t&&o>0?"partial":"hidden"},Jy=(e,t,r)=>{let n=-t.offsetPx;for(let o=t.index;o<e;o++)n+=r(o);for(let o=e;o<t.index;o++)n-=r(o);return n},Vs=(e,t,r,n)=>{let o=e.getViewportSize(),a=e.getScrollPosition();if(!(o>0&&a>=0))return null;let s=Bs(n);if(n.kind==="uniform")return{index:t,count:r,viewport:o,activeRowTop:t*n.rowHeight-a,heightOf:s};let i=e.getScrollAnchor();return i===null?null:{index:t,count:r,viewport:o,activeRowTop:Jy(t,i,s),heightOf:s}},Us=(e,t,r,n)=>{let o=Bs(n),a=e.index,s=o(a)-e.offsetPx;for(;s<t&&a<r-1;)a+=1,s+=o(a);return a},eR=(e,t)=>e.top<t.top?e.top-t.top:e.bottom>t.bottom?Math.min(e.bottom-t.bottom,e.top-t.top):0;var tR=e=>{if(e!==void 0)for(let t of[...e])t()},rR=({initialSelectedId:e})=>{let t=e,r=null,n=e,o=new Map,a=new Set,s=l=>(l===t?1:0)|(l===n?2:0),i=l=>{l!==null&&tR(o.get(l))};return{getActiveId:()=>t,getActiveIndexHint:()=>r,getSelectedId:()=>n,setActive:(l,d)=>{if(r=l===null?null:d,l===t)return;let c=t;t=l,i(c),i(l),tR(a)},settleSelection:l=>{if(l===n)return;let d=n;n=l,i(d),i(l)},rowStateOf:s,subscribe:(l,d)=>{let c=o.get(l);return c===void 0&&(c=new Set,o.set(l,c)),c.add(d),()=>{c.delete(d),c.size===0&&o.get(l)===c&&o.delete(l)}},subscribeActive:l=>(a.add(l),()=>{a.delete(l)})}};var xt={previous:{axis:"row",amount:-1},next:{axis:"row",amount:1},pageBackward:{axis:"page",amount:-1},pageForward:{axis:"page",amount:1},first:{axis:"first",amount:1},last:{axis:"last",amount:1},activate:{axis:"activate",amount:1}},Dd=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!1}),HA=Object.freeze({apply:null,flush:!1,requestFrame:!0,ended:!1}),nR=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!0}),BA=new Map(Object.values(xt).map(e=>[e,Object.freeze({apply:e,flush:!1,requestFrame:!0,ended:!1})])),oR=e=>{let t=BA.get(e);if(t===void 0)throw new Error(`[daily-report] a repeat step must be one of REPEAT_STEPS; got the ${e.axis} axis with ${e.amount}`);return t},VA=(e,t,r)=>e==="row"||e==="page"?t+r:r,aR=e=>({state:{axis:e.axis,pending:0,fence:"immediate"},effects:oR(e)}),sR=(e,t)=>{switch(t.kind){case"repeat":{let{step:r}=t;if(e.axis!==r.axis)throw new Error(`[daily-report] a ${r.axis} repeat cannot continue a ${e.axis} stream`);return e.fence==="open"?(e.fence="immediate",oR(r)):(e.pending=VA(e.axis,e.pending,r.amount),Dd)}case"frame":{if(e.fence==="open")return Dd;if(e.fence==="immediate")return e.fence="flush",HA;if(e.pending===0)return e.fence="open",Dd;let r=e.pending;return e.pending=0,{apply:{axis:e.axis,amount:r},flush:!0,requestFrame:!0,ended:!1}}case"keyup":return e.pending===0?nR:{apply:{axis:e.axis,amount:e.pending},flush:!0,requestFrame:!1,ended:!0};case"cancel":return nR}};var Td=KA(null),$A=Object.freeze({kind:"frame"}),dR={capture:!0},jA=()=>{},cR=(e,t,r)=>{let n=e.ownerDocument,o=n.defaultView;if(o===null)return jA;let a=!0,s=()=>{a&&(a=!1,i.disconnect(),n.removeEventListener("focusin",s,dR))},i=new o.MutationObserver(()=>{e.isConnected||(s(),r())});return i.observe(t,{childList:!0,subtree:!0}),n.addEventListener("focusin",s,dR),s},GA=Object.freeze({kind:"keyup"}),YA=Object.freeze({kind:"cancel"}),qA=Object.freeze({previous:Object.freeze({kind:"repeat",step:xt.previous}),next:Object.freeze({kind:"repeat",step:xt.next}),pageBackward:Object.freeze({kind:"repeat",step:xt.pageBackward}),pageForward:Object.freeze({kind:"repeat",step:xt.pageForward}),first:Object.freeze({kind:"repeat",step:xt.first}),last:Object.freeze({kind:"repeat",step:xt.last}),activate:Object.freeze({kind:"repeat",step:xt.activate})}),Nn={capture:!0},XA=e=>e in xt,ZA=(e,t)=>{if(e==="first"||e==="last")return{command:e,count:1};let r=Math.abs(t);return e==="row"?{command:t>0?"next":"previous",count:r}:{command:t>0?"pageForward":"pageBackward",count:r}},QA=(e,t)=>({top:e.top-t,bottom:e.bottom+t}),uR=e=>{let t=ho(e),r=Sr(e);return t===null||r===null?null:{reportHubId:t,index:r-1}},JA=e=>e==="first"||e==="last",pR=(e,t)=>{let r=ve(e,t.reportHubId,t.index);return r===-1?null:{reportHubId:t.reportHubId,index:r}},fR=e=>{let t=zA(Td);if(t===null)throw new Error("[daily-report] useListRowState is called outside a view's rows (no row cursor)");let r=ue(a=>t.subscribe(e,a),[t,e]),n=ue(()=>t.rowStateOf(e),[t,e]),o=mR(r,n,n);return{active:(o&1)!==0,selected:(o&2)!==0}},yR=(e,t)=>{let r=ue(()=>{let n=e.getActiveId();if(n===null)return null;let o=ve(t,n,e.getActiveIndexHint());return o===-1?null:o},[e,t]);return mR(e.subscribeActive,r,r)},RR=({items:e,selectedId:t,onSelect:r,onActivate:n,containerRef:o,rootRef:a,gridId:s,handleRef:i,scroller:l,rowSizing:d,arrowAlign:c})=>{let[u]=Oo(()=>rR({initialSelectedId:t})),p=Ue(()=>({items:e,onSelect:r,onActivate:n,rowSizing:d,arrowAlign:c})),f=xr(null),m=xr(!1),y=xr(null),g=xr(!1),R=xr(null),D=xr(()=>{}),[b,h]=Oo(null),[S,w]=Oo(0),x=xr(null),E=Ue(()=>{if(t===null)return null;let C=ve(e,t,null);return C===-1?null:{reportHubId:t,index:C}}),[L]=Oo(()=>jy({id:t,indexHint:null})),[N,M]=Oo(0),T=lR(()=>({id:t,indexHint:t===null?null:Lp(b,t)}),[t,b]),A=xr(T);Ar(()=>{p.current={items:e,onSelect:r,onActivate:n,rowSizing:d,arrowAlign:c},A.current=T},[p,e,r,n,d,c,T]),Ar(()=>{L.select(T)},[L,T,S]);let I=ue((C,P)=>{let U=R.current;if(U!==null&&U.items===C&&U.reportHubId===P)return U.index;let G=ve(C,P,U!==null&&U.reportHubId===P?U.index:null);return G!==-1&&(R.current={items:C,reportHubId:P,index:G}),G},[]),_=ue((C,P)=>{R.current={items:p.current.items,reportHubId:C,index:P},h(U=>U!==null&&U.reportHubId===C&&U.index===P?U:{reportHubId:C,index:P}),w(U=>U+1),L.select({id:C,indexHint:P})},[p,L]),k=ue(()=>{let C=p.current.items,P=u.getSelectedId(),U=P===null?-1:I(C,P);return{items:C,selected:P===null||U===-1?null:{reportHubId:P,index:U},range:f.current}},[u,p,I]),O=ue(C=>{let P=g.current;g.current=!0;try{C()}finally{g.current=P}},[]),F=ue(C=>{E.current=C,u.setActive(C===null?null:C.reportHubId,C===null?null:C.index)},[E,u]),$=ue(C=>{let P=i.current;if(P===null)return null;let{items:U,rowSizing:G}=p.current;return Vs(P,C,U.length,G)},[i,p]),j=ue(C=>{let P=$(C);P===null||Ed(P)==="whole"||P.activeRowTop<=0&&P.activeRowTop+P.heightOf(C)>=P.viewport||l.toIndex(C,{align:"nearest"})},[$,l]),W=ue((C,P)=>{let U=o.current;if(U===null)return;let G=p.current.items,re=E.current,ie=null;if(C===null)ie=re;else{let Y=ve(G,C,re!==null&&re.reportHubId===C?re.index:null);Y!==-1&&(ie={reportHubId:C,index:Y},F(ie))}ie!==null&&j(ie.index);let H=U.ownerDocument,K=H.getElementById(s);if(K===null)return;let B=ie===null?null:H.getElementById(iR(s,ie.reportHubId));O(()=>bf(U,K,B,P))},[o,p,E,s,F,j,O]),V=ue(C=>{let P=bd(E.current,C);F(P.active),P.effect==="reveal"&&P.active!==null&&j(P.active.index);let U=o.current;P.effect==="handBack"&&m.current&&U!==null&&Fr(U)&&W(P.active===null?null:P.active.reportHubId,"removal")},[o,E,F,j,W]),le=ue(()=>{m.current&&(m.current=!1,y.current=null,V({kind:"focusLeft",shown:k()}))},[V,k]);Ar(()=>{u.settleSelection(t)},[u,t,N]),Ar(()=>{t!==null&&I(e,t)},[e,t,I]),Ar(()=>{V({kind:"listChanged",items:e})},[e,V]),Ar(()=>{let C=a.current;if(C!==null)return qy(C)},[a]),Ar(()=>{let C=o.current;if(C===null)return;let P=C.ownerDocument,U=re=>{let ie=o.current,H=re.target;if(!(ie!==null&&xe(H)&&ie.contains(H))){y.current=null,le();return}let B=re.pointerType==="touch"?null:Ur(H,ie);y.current=B===null?null:uR(B)},G=()=>{y.current=null};return P.addEventListener("pointerdown",U,Nn),P.addEventListener("pointerup",G,Nn),P.addEventListener("pointercancel",G,Nn),()=>{P.removeEventListener("pointerdown",U,Nn),P.removeEventListener("pointerup",G,Nn),P.removeEventListener("pointercancel",G,Nn)}},[o,le]);let Te=ue((C,P)=>{V({kind:"activation",row:{reportHubId:C,index:P}}),_(C,P)},[V,_]),be=ue(C=>{let P=bd(E.current,{kind:"removed",reportHubId:C,selection:R.current,items:p.current.items});if(P.effect!=="handBack")return;F(P.active);let U=P.active===null?null:P.active.reportHubId;D.current();let G=o.current,re=G===null?null:Ke(G);if(G!==null&&re!==null&&!Fr(G)&&!G.contains(re)){D.current=cR(re,re.ownerDocument,()=>W(U,"removal"));return}W(U,"removal")},[o,p,E,F,W]),De=ue((C,P,U,G)=>{let{items:re,onSelect:ie,rowSizing:H,arrowAlign:K}=p.current,B=i.current;if(ie===null||B===null)return;let Y=Vs(B,U.index,re.length,H);if(Y===null)return;let J=Qy(C,P,Y,K),Me=Vt(re,J.index),yt=J.index!==U.index,pr=yt||G&&JA(C)&&A.current.id!==Me.reportHubId;wd(()=>{yt&&V({kind:"key",target:{reportHubId:Me.reportHubId,index:J.index}}),pr&&(u.settleSelection(Me.reportHubId),ie(Me.reportHubId,J.index)),J.alignment!==null&&l.toIndex(J.alignment.index,{align:J.alignment.align}),J.scrollDelta!==0&&l.by(J.scrollDelta),pr&&(_(Me.reportHubId,J.index),M($n=>$n+1))})},[u,p,i,l,_,V]),se=ue(C=>{Te(C.reportHubId,C.index),p.current.onActivate(C.reportHubId,C.index)},[p,Te]),Ze=ue(C=>{let P=E.current;if(P===null)return;if(C.axis==="activate"){se(P);return}let U=ZA(C.axis,C.amount);De(U.command,U.count,P,!1)},[E,se,De]),We=ue(C=>{x.current=null,C.frame!==0&&C.view.cancelAnimationFrame(C.frame),L.release()},[L]),q=ue((C,P,U)=>{let{apply:G}=P;G!==null&&(P.flush?wd(()=>Ze(G)):Ze(G)),x.current===C&&(P.ended?We(C):P.requestFrame&&(C.frame=C.view.requestAnimationFrame(U)))},[Ze,We]),he=ue((C,P,U)=>{let G=sR(C.state,P);L.noteKeyStepsPending(!G.ended&&C.state.pending!==0),P.kind==="frame"&&G.apply!==null&&L.noteKeyStepApplied(),q(C,G,U)},[L,q]),Q=ue(()=>{let C=x.current;C!==null&&(C.frame=0,he(C,$A,Q))},[he]),oe=ue(()=>{let C=x.current;C!==null&&he(C,GA,Q)},[he,Q]),me=ue(()=>{let C=x.current;C!==null&&he(C,YA,Q)},[he,Q]),Ie=ue((C,P)=>{L.hold(A.current);let{state:U,effects:G}=aR(xt[C]),re={state:U,view:P,frame:0};x.current=re,q(re,G,Q)},[L,q,Q]);Ar(()=>()=>{D.current();let C=x.current;x.current=null,C!==null&&C.frame!==0&&C.view.cancelAnimationFrame(C.frame)},[]);let Qe=ue((C,P,U)=>{let G=E.current,re=G===null?null:$(G.index);if(G===null||re===null||Ed(re)!=="hidden")return;let ie=P.ownerDocument.getElementById(iR(s,G.reportHubId));ie===null||!qf(ie,C===P?null:C,U)||wd(()=>l.toIndex(G.index,{align:"nearest"}))},[E,s,l,$]),It=ue(C=>{let P=x.current,U=P!==null&&C.repeat?gd(C):null;if(P!==null&&U!==null&&XA(U)&&xt[U].axis===P.state.axis){C.preventDefault(),he(P,qA[U],Q);return}let G=o.current,re=G===null?null:G.ownerDocument.getElementById(s),ie=p.current.onSelect===null?null:Xy(vn(C),{container:G,composite:re});if(oe(),ie===null||G===null||re===null)return;y.current=null;let{kind:H}=ie;switch(H){case"exitBefore":case"exitAfter":{let Me=Yf(G,H==="exitBefore"?"before":"after");if(Me===null)return;C.preventDefault(),Me.focus();return}case"tab":Qe(ie.target,re,C.shiftKey);return;case"returnToRow":C.preventDefault(),O(()=>re.focus({preventScroll:!0}));return}let K=E.current;if(H==="activate"){if(C.preventDefault(),K===null)return;C.repeat?Ie(H,Pe(G)):se(K);return}if(K===null)return;let{items:B,rowSizing:Y}=p.current,J=i.current;J===null||Vs(J,K.index,B.length,Y)===null||(C.preventDefault(),C.repeat?Ie(H,Pe(G)):De(H,1,K,!0),ie.target!==re&&O(()=>re.focus({preventScroll:!0})))},[p,o,s,i,E,Q,he,oe,Ie,Qe,se,De,O]),Je=ue(()=>{oe()},[oe]),Mt=ue(C=>{let P=o.current,U=C.target;if(P===null)return;m.current=!0;let G=P.ownerDocument.getElementById(s),re=y.current;if(y.current=null,U===G){let $n=g.current||xe(C.relatedTarget)&&P.contains(C.relatedTarget)?"inside":"outside";V($n==="inside"?{kind:"focusInComposite",from:$n}:{kind:"focusInComposite",from:$n,pressed:re===null?null:pR(p.current.items,re),shown:k()});return}let ie=Ur(U,P),H=ie===null?null:uR(ie),K=H===null?null:pR(p.current.items,H);if(ie===null||K===null||!xe(U))return;V({kind:"focusInControl",row:K}),D.current(),D.current=cR(U,ie,()=>W(null,"removal"));let B=i.current;if(B===null||G===null||!Ps(U))return;let Y=G.getBoundingClientRect(),J=ie.getBoundingClientRect(),Me=J.height<=Y.height?J:QA(U.getBoundingClientRect(),Gt),yt=eR(Me,Y),pr=B.getViewportSize();yt===0||!(pr>0&&Y.height>0)||l.by(yt*pr/Y.height)},[o,s,p,i,l,V,k,W]),_e=ue(C=>{let P=o.current,U=C.relatedTarget,G=xe(U)?P?.contains(U)?"view":"outside":"nowhere";G!=="view"&&me(),G==="outside"&&le()},[o,me,le]),et=ue(C=>{f.current={visibleStartIndex:C.visibleStartIndex,visibleEndIndex:C.visibleEndIndex},V({kind:"rangeChanged",focusWithin:m.current,shown:k()})},[V,k]),tn=lR(()=>({onKeyDown:It,onKeyUp:Je,onPointerDownCapture:me,onWheelCapture:me,onTouchStartCapture:me,onFocus:Mt,onBlur:_e}),[It,Je,me,Mt,_e]);return{cursor:u,containerProps:tn,handleRangeChange:et,selection:T,selectionStore:L,resolveSelectedIndex:I,rememberSelection:_,activateRow:Te,focusViewRow:W,focusAfterRemoval:be}};import{jsx as Ks}from"react/jsx-runtime";var ye=(e,t)=>`${e}-${t}`,zs=e=>ex(om(),e),On=Object.freeze([]),tx="data-daily-report-row-shell",$s=Ks("div",{...Rt,[tx]:"",className:"h-full w-full"}),rx=(e,t,r)=>r===gr?e.listRowPositionInUnknownTotal(t+1):e.listRowPosition(t+1,r),js=({id:e,whileTotalUnknownOnly:t})=>{let{labels:r}=z(),n=Ws(Kr),o=Ws(Wr);return t&&o!==gr?null:Ks("span",{id:e,hidden:!0,children:rx(r,n,o)})},Gs=({reportHubId:e,rowId:t,name:r,className:n,style:o,onMouseDown:a,frameRef:s,children:i})=>{let{active:l,selected:d}=fR(e),c=Ws(Kr),u=Ws(Wr),p=r.kind==="card",f=p&&u===gr?[...r.describedBy,ye(t,"position")]:r.describedBy,m=f.length===0?void 0:f.join(" ");return Ks(Jl.Provider,{value:l,children:Ks("div",{ref:s,role:"row",id:t,[Ua]:e,"aria-rowindex":c+1,"aria-posinset":c+1,"aria-setsize":u,"aria-level":1,"aria-selected":d,[lc]:l?"":void 0,"aria-labelledby":p?ye(t,"name"):void 0,"aria-describedby":m,"aria-label":p?void 0:r.label,"aria-busy":!p&&r.isBusy?!0:void 0,className:n,style:o,onMouseDown:a,children:i})})};import Ex from"lucide-react/dist/esm/icons/check.js";import Dx from"lucide-react/dist/esm/icons/pencil.js";import wx from"lucide-react/dist/esm/icons/trash-2.js";import{useContext as SR,useMemo as gR,useSyncExternalStore as ER}from"react";import{jsx as qr,jsxs as bR}from"react/jsx-runtime";var nx="inline-grid whitespace-nowrap text-xs leading-4 tabular-nums text-slate-600 dark:text-slate-300",hR="[grid-area:1/1]",ox=e=>{let t=0;for(let r=e;r!==0;r&=r-1)t+=1;return t},Ad=e=>e===null||e.matchedSets===null?null:ox(e.matchedSets),DR=(e,t,r)=>{let n=Ad(e);return t.showsMatchedSets&&n!==null?r.searchMatchedKeywordsDescription(n,t.setCount):null},wR=(e,t,r)=>{let n=Ad(e);return e!==null&&!r&&(n===null||n>=1)&&t.entry===e&&t.isCurrent&&t.fields.length===0},TR=({entry:e,drawn:t,indicator:r,isEditing:n,labels:o})=>{let a=DR(e,r,o),s=Mf(t.fields,o);return[...a===null?[]:[a],...s.length>0?[s]:[],...wR(e,t,n)?[o.searchMatchOutsideViewDescription]:[]]},ax=({isEditing:e,descriptionId:t})=>{let{entry:r,tally:n,indicator:o}=xo(),{labels:a}=z(),s=ER(n.subscribe,n.getSnapshot,n.getSnapshot),{setCount:i,showsMatchedSets:l}=o,d=l?`${a.searchMatchedKeywords(i,i)} ${a.searchMatchOutsideView}`:a.searchMatchOutsideView,c=Ad(r),u=wR(r,s,e),p=DR(r,o,a),f=gR(()=>TR({entry:r,drawn:s,indicator:o,isEditing:e,labels:a}),[r,s,o,e,a]);return bR("span",{className:nx,"data-daily-report-search-indicator":!0,children:[qr("span",{"aria-hidden":"true",className:`invisible ${hR}`,"data-daily-report-search-indicator-placeholder":!0,children:d}),bR("span",{className:hR,children:[p!==null&&c!==null?qr("span",{"aria-hidden":"true",title:p,"data-daily-report-search-matched-keywords":`${c}/${i}`,children:a.searchMatchedKeywords(c,i)}):null,p!==null&&u?" ":null,u?qr("span",{"aria-hidden":"true",title:a.searchMatchOutsideViewDescription,"data-daily-report-search-outside-view":!0,children:a.searchMatchOutsideView}):null,qr("span",{id:t===null?void 0:t,className:kt,"data-daily-report-search-indicator-description":!0,children:f.join(" ")})]})]})},Ys=({isEditing:e,descriptionId:t})=>SR(rt)===null?null:qr(ax,{isEditing:e,descriptionId:t}),sx=({id:e})=>{let{entry:t,tally:r,indicator:n}=xo(),{labels:o}=z(),a=ER(r.subscribe,r.getSnapshot,r.getSnapshot),s=gR(()=>TR({entry:t,drawn:a,indicator:n,isEditing:!1,labels:o}),[t,a,n,o]);return qr("span",{id:e,hidden:!0,"data-daily-report-search-match-description":!0,children:s.join(" ")})},AR=({id:e})=>SR(rt)===null?null:qr(sx,{id:e});import{jsx as xR}from"react/jsx-runtime";var Xs=24,vR=2,ix=20,qs=5,lx=3,dx=()=>{let e=Math.cos(2*Math.PI/qs)/Math.cos(Math.PI/qs),t=Array.from({length:2*qs},(p,f)=>{let m=-Math.PI/2+f*Math.PI/qs,y=f%2===0?1:e;return{x:y*Math.cos(m),y:y*Math.sin(m)}}),r=t.map(p=>p.x),n=t.map(p=>p.y),[o,a,s,i]=[Math.min(...r),Math.max(...r),Math.min(...n),Math.max(...n)],l=(ix-vR)/(a-o),d=Xs/2-l*(o+a)/2,c=Xs/2-l*(s+i)/2,u=p=>String(Number(p.toFixed(lx)));return t.map(p=>`${u(d+l*p.x)},${u(c+l*p.y)}`).join(" ")},cx=dx(),Mn=({filled:e})=>xR("svg",{viewBox:`0 0 ${Xs} ${Xs}`,"aria-hidden":"true",fill:"none",stroke:"currentColor",strokeWidth:vR,strokeLinejoin:"round",className:e?He.starOn:He.starOff,children:xR("polygon",{points:cx})});import{Fragment as px,jsx as Zs,jsxs as mx}from"react/jsx-runtime";var ux=Ne(Ec),kn=({config:e,id:t})=>Zs("span",{id:t,className:ux(e.badgeClassName),children:e.name===void 0?e.label:mx(px,{children:[Zs("span",{"aria-hidden":"true",children:Zs("abbr",{title:e.name,children:e.label})}),Zs("span",{className:kt,children:e.name})]})});import{jsx as IR}from"react/jsx-runtime";var Qs=24,fx=6,Pn=()=>IR("svg",{viewBox:`0 0 ${Qs} ${Qs}`,"aria-hidden":"true",className:He.read,children:IR("circle",{cx:Qs/2,cy:Qs/2,r:fx,fill:"currentColor"})});import{jsx as Rx}from"react/jsx-runtime";var yx=/^(\d{4}-\d{2}-\d{2})(?:T(\d{2}:\d{2}):\d{2})?$/,Xr=({text:e})=>{let t=yx.exec(e);if(t===null)return e;let[,r,n]=t;return Rx("time",{dateTime:e,children:n===void 0?r:`${r} ${n}`})};import{Fragment as gx,jsx as Fe,jsxs as xd}from"react/jsx-runtime";var hx=Ne("m-0"),st=({label:e,classNames:t,valueId:r,children:n})=>xd("div",{className:t.field,children:[Fe("dt",{className:t.label,children:e}),Fe("dd",{id:r,className:hx(t.value),children:n})]}),bx="mt-2 font-semibold text-slate-600 text-xs uppercase tracking-wide first:mt-0 dark:text-slate-400",Sx="m-0 mt-1 text-slate-700 text-sm dark:text-slate-200",vr=({label:e,children:t})=>xd(gx,{children:[Fe("dt",{className:bx,children:e}),Fe("dd",{className:Sx,children:t})]}),CR=({report:e,visitTimeDisplay:t,labels:r})=>{let n=Rr(e.category),o=Rr(e.creationCategory);return xd("dl",{className:"m-0 flex flex-col rounded-xl bg-slate-100 p-3 text-slate-600 text-xs dark:bg-slate-800/60 dark:text-slate-300",children:[Fe(vr,{label:r.author,children:Fe(pe,{fieldKey:fe.field("author"),raw:e.author,display:Be(e.author)})}),Fe(vr,{label:r.createdAt,children:Fe(Xr,{text:Ae(e.createdAt)})}),Fe(vr,{label:r.updatedBy,children:Fe(pe,{fieldKey:fe.field("updatedBy"),raw:e.updatedBy,display:Be(e.updatedBy)})}),Fe(vr,{label:r.updatedAt,children:Fe(Xr,{text:Ae(e.updatedAt)})}),Fe(vr,{label:r.businessDate,children:Fe(Xr,{text:Ae(e.date)})}),t!==null&&Fe(vr,{label:r.visitTime,children:t}),n.text.length>0&&Fe(vr,{label:r.category,children:Fe(pe,{fieldKey:fe.field("category"),raw:e.category,display:n})}),o.text.length>0&&Fe(vr,{label:r.creationCategory,children:Fe(pe,{fieldKey:fe.field("creationCategory"),raw:e.creationCategory,display:o})})]})};import{jsx as Re,jsxs as LR}from"react/jsx-runtime";var Js={field:v(Ye,"gap-1 whitespace-nowrap bg-slate-100 text-slate-800 dark:bg-slate-800 dark:text-slate-100"),label:"text-slate-600 text-xs uppercase tracking-wide dark:text-slate-400",value:""},Tx={field:v(Ye,"gap-1 whitespace-nowrap bg-blue-50 font-semibold text-blue-800 text-xs dark:bg-blue-500/15 dark:text-blue-200"),label:"text-blue-700 text-xs uppercase tracking-wide dark:text-blue-300",value:""},_R={field:v(Ye,"gap-1 whitespace-nowrap bg-amber-100 text-amber-900 dark:bg-amber-500/15 dark:text-amber-200"),label:"text-amber-800 text-xs uppercase tracking-wide dark:text-amber-300",value:""},NR=({report:e,isRead:t,isStarred:r,isMine:n,onToggleRead:o,onToggleStar:a,onEdit:s,editButtonRef:i,onDelete:l,sourceConfig:d,visitTimeDisplay:c,markerIds:u,labels:p})=>{let f=r?p.starRemove:p.starAdd,m=t?p.markUnread:p.markRead,y=Rr(e.category),g=Rr(e.creationCategory);return LR("div",{className:"flex flex-wrap items-center gap-2 font-medium text-slate-600 text-xs dark:text-slate-300",children:[Re(Gn,{id:u.attachments,count:e.attachments.length,label:p.attachments}),d?Re(kn,{id:u.source,config:d}):null,Re(ze,{render:R=>Re("button",{type:"button",onClick:a,tabIndex:R,className:Ge,title:f,"aria-label":f,"data-detail-star-button":e.reportHubId,children:Re(Mn,{filled:r})})}),Re(ze,{render:R=>Re("button",{type:"button",onClick:o,tabIndex:R,className:Ge,title:m,"aria-label":m,"data-detail-read-button":e.reportHubId,children:t?Re(Ex,{className:He.read}):Re(Pn,{})})}),s&&Re(ze,{render:R=>Re("button",{ref:i,type:"button",onClick:s,tabIndex:R,"data-detail-edit-button":e.reportHubId,className:Ge,title:p.edit,"aria-label":p.edit,children:Re(Dx,{className:He.edit})})}),n&&Re(ze,{render:R=>Re("button",{type:"button",onClick:l,tabIndex:R,"data-detail-delete-button":e.reportHubId,className:Ge,title:p.deleteReport,"aria-label":p.deleteReport,children:Re(wx,{className:He.delete})})}),LR("dl",{className:"m-0 flex flex-wrap items-center gap-2",children:[Re(st,{label:p.id,classNames:Tx,children:e.reportHubId}),Re(st,{label:p.businessDate,classNames:Js,children:Re(Xr,{text:Ae(e.date)})}),Re(st,{label:p.author,classNames:Js,children:Re(pe,{fieldKey:fe.field("employeeName"),raw:e.employeeName,display:Be(e.employeeName)})}),Re(st,{label:p.visitTime,classNames:Js,children:hr(c)}),Re(st,{label:p.updatedAt,classNames:Js,children:Re(Xr,{text:Ae(e.updatedAt)})}),y.text.length>0&&Re(st,{label:p.category,classNames:_R,children:Re(pe,{fieldKey:fe.field("category"),raw:e.category,display:y})}),g.text.length>0&&Re(st,{label:p.creationCategory,classNames:_R,children:Re(pe,{fieldKey:fe.field("creationCategory"),raw:e.creationCategory,display:g})})]}),Re(Ys,{isEditing:!1,descriptionId:u.searchMatch})]})};import{useLayoutEffect as OR,useRef as MR}from"react";import{jsx as vx}from"react/jsx-runtime";var Ax=v(yr,Xo,Zo,qo,"h-full"),xx=(e,t,r)=>{let n=t(e),o=e===null?null:r(e);return{body:e,declareBody:t,observeRowHeight:r,release:()=>{o!==null&&o(),n()}}},kR=({itemId:e,rowId:t,name:r,bodyReady:n,observeRowHeight:o,children:a})=>{let s=MR(null),i=am(e),l=MR(null);return OR(()=>{let d=s.current,c=d===null||!n?null:d.firstElementChild,u=c instanceof HTMLElement?c:null,p=l.current;p!==null&&p.body===u&&p.declareBody===i&&p.observeRowHeight===o||(p!==null&&p.release(),l.current=xx(u,i,o))}),OR(()=>()=>{l.current?.release(),l.current=null},[]),vx(Gs,{reportHubId:e,rowId:t,name:r,className:Ax,frameRef:s,children:n?a:$s})};import{jsx as Z,jsxs as $e}from"react/jsx-runtime";var Cx=v("flex w-full flex-col gap-4",Pt,ea,fr),_x=v(Pt,fr),Lx=v("rounded-2xl",fr),Nx=v("rounded-2xl border border-red-200 border-solid bg-red-50 p-[15px] text-red-700 text-sm dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-300",fr),Xe="bg-slate-200 dark:bg-slate-700",Ox=v("whitespace-pre-wrap",Jo),Mx=v(Ye,"bg-slate-100 text-slate-600 text-xs dark:bg-slate-800 dark:text-slate-300"),kx=({interviewer:e,index:t,template:r})=>{let n=Fn(()=>Be(e.name),[e.name]),o=Z(pe,{fieldKey:fe.interviewer(t,"name"),raw:e.name,display:n},"name"),a=e.affiliation;if(!a?.trim())return o;let s=Nf(r,n.text,a);return s===null?r(n.text,a):s.map(i=>i.kind==="text"?i.text:i.kind==="name"?o:Z(pe,{fieldKey:fe.interviewer(t,"affiliation"),raw:a,display:bt(a)},"affiliation"))},Px=e=>({heading:ye(e,"name"),state:ye(e,"state"),attachments:ye(e,"attachments"),source:ye(e,"source"),searchMatch:ye(e,"match")}),Fx=$e("div",{...Rt,className:_x,children:[$e("div",{className:"mb-4 flex flex-wrap gap-2",children:[Z("div",{className:v("h-6 w-20 rounded-full",Xe)}),Z("div",{className:v("h-6 w-24 rounded-full",Xe)}),Z("div",{className:v("h-6 w-24 rounded-full",Xe)}),Z("div",{className:v("h-6 w-28 rounded-full",Xe)})]}),$e("div",{className:"mb-4 grid gap-4 md:grid-cols-[minmax(0,1fr)_240px]",children:[$e("div",{className:"space-y-4",children:[Z("div",{className:v("h-5 w-40 rounded",Xe)}),Z("div",{className:v("h-5 w-56 rounded",Xe)}),Z("div",{className:v("h-24 rounded-xl",Xe)})]}),$e("div",{className:"rounded-xl bg-slate-100 p-3 dark:bg-slate-800/60",children:[Z("div",{className:v("mb-2 h-4 w-24 rounded",Xe)}),Z("div",{className:v("mb-2 h-4 w-28 rounded",Xe)}),Z("div",{className:v("h-4 w-32 rounded",Xe)})]})]}),$e("div",{className:"space-y-4",children:[Z("div",{className:v("h-4 w-24 rounded",Xe)}),$e("div",{className:"flex flex-wrap gap-2",children:[Z("div",{className:v("h-6 w-16 rounded-full",Xe)}),Z("div",{className:v("h-6 w-16 rounded-full",Xe)}),Z("div",{className:v("h-6 w-16 rounded-full",Xe)})]}),$e("div",{className:"space-y-2",children:[Z("div",{className:v("h-16 rounded-xl",Xe)}),Z("div",{className:v("h-16 rounded-xl",Xe)})]})]})]}),Hx=()=>Fx,Bx=({item:e,observeRowHeight:t,onCommentAdded:r,userId:n})=>{let o=Pr(),a=Ix(rt),s=Fn(()=>ks(o,a,e.reportHubId,e.businessDate),[o,a,e.reportHubId,e.businessDate]),{bodyReady:i,rendered:l}=Ga(e.reportHubId,s,"measured"),{report:d,error:c}=l.detail,u=l.marksStore===a?l.marks:null,{report:p,error:f,isLoading:m,isRefetching:y}=s.read().detail,g=zs(e.reportHubId),R=Rf(),{removeStaleItem:D}=qe(),{sourceTypeConfigs:b}=z(),h=Er(),S=ys(e.reportHubId),w=S==="editing"||S==="automatic",x=vd(!1),E=vd(!1),L=p===null&&f===null&&!m&&!y;PR(()=>{L&&e.reportHubId>0&&D(e.reportHubId)},[L,e.reportHubId,D]);let N=p?.isDraft===!0,M=n&&p?.userId===n,T=n&&d?.userId===n,A=vd(s);FR(()=>{A.current=s},[s]);let I=Zr(()=>{let se=A.current.read().detail.report;se!==null&&(x.current=!0,h.open(e.reportHubId,Ln(se),!1))},[h,e.reportHubId]),_=Zr(()=>{E.current=!0,h.dismiss(e.reportHubId)},[h,e.reportHubId]),k=Zr(()=>{E.current=!0,h.discard(e.reportHubId)},[h,e.reportHubId]),O=Zr(se=>{se===null||!x.current||(x.current=!1,se.focus())},[]),F=Zr(se=>{se===null||!E.current||(E.current=!1,se.focus())},[]);FR(()=>{w||(E.current=!1)},[w]),PR(()=>{p!==null&&(M&&N&&S==="display"?h.open(e.reportHubId,Ln(p),!0):!N&&S==="automatic"&&h.discard(e.reportHubId))},[p,M,N,S,h,e.reportHubId]);let $=Zr(()=>R(e.reportHubId,"removal"),[R,e.reportHubId]),j=d!==null&&d.attachments.length>0,W=a!==null,V=d===null?void 0:Jt(d.sourceType,b),le=d===null&&(m||p!==null||f!==null),Te=Ae(e.businessDate),be=ye(g,"state"),De=i?c===null&&d!==null&&!w?{kind:"card",describedBy:[be,...j?[ye(g,"attachments")]:[],...V!==void 0?[ye(g,"source")]:[],...W?[ye(g,"match")]:[]]}:{kind:"label",label:Te,isBusy:c===null&&le,describedBy:c!==null||d!==null?[be]:On}:{kind:"label",label:Te,isBusy:!0,describedBy:On};return Z(kR,{itemId:e.reportHubId,rowId:g,name:De,bodyReady:i,observeRowHeight:t,children:c!==null?Z(Vx,{itemId:e.reportHubId,stateId:be}):d?w?Z(VR,{report:d,stateId:be,onCancel:_,onPublishSuccess:k,titleInputRef:O}):Z(In,{reportHubId:e.reportHubId,entry:u,children:Z(BR,{item:e,report:d,sourceConfig:V,rowId:g,onCommentAdded:r,userId:n,onEdit:T?I:void 0,editButtonRef:F,onCommentSectionRemoved:$})}):Z(Hx,{})})},HR=Id(Bx),BR=Id(({item:e,report:t,sourceConfig:r,rowId:n,onCommentAdded:o,userId:a,onEdit:s,editButtonRef:i,onCommentSectionRemoved:l})=>{let{toggleStar:d,toggleRead:c,pendingStarUpdates:u,pendingReadUpdates:p,deleteReport:f}=qe(),{labels:m,headingLevel:y}=z(),g=Dr[y],R=ba(t.sourceType,r),D=Px(n),b=Zr(()=>o?.(e.reportHubId),[o,e.reportHubId]),h=u.current.get(t.reportHubId),S=h===void 0?t.isStarred:h,w=p.current.get(t.reportHubId),x=w===void 0?t.isRead:w,E=!!(a&&t.userId===a),L=async()=>{try{await c(t.reportHubId,!x,t.date)}catch{}},N=async()=>{try{await d(t.reportHubId,!S,t.date)}catch{}},M=async()=>{if(confirm(m.confirmDelete))try{await f(t.reportHubId,t.date)}catch{}},T=Fn(()=>eu(t.content??null),[t.content]),A=Fn(()=>Be(t.customerName),[t.customerName]),I=Fn(()=>Be(t.subject),[t.subject]),_=Fn(()=>{let k=t.visitTimeFrom?.trim(),O=t.visitTimeTo?.trim();return k&&O?`${k} - ${O}`:k||O||null},[t.visitTimeFrom,t.visitTimeTo]);return $e("div",{...Rt,"aria-labelledby":D.heading,onDoubleClick:s,className:Cx,children:[Z(pt,{level:y,id:D.heading,tabIndex:-1,...Ka,className:kt,children:`${Ae(t.date)} ${hr(t.employeeName)} ${hr(t.subject)}`}),Z("span",{id:D.state,className:kt,children:m.rowState({isRead:x,isStarred:S})}),Z(js,{id:ye(n,"position"),whileTotalUnknownOnly:!0}),Z(NR,{report:t,sourceConfig:r,isRead:x,isStarred:S,isMine:E,onToggleRead:L,onToggleStar:N,onEdit:s,editButtonRef:i,onDelete:M,visitTimeDisplay:_,markerIds:D,labels:m}),$e("div",{className:"grid gap-4 md:grid-cols-[minmax(0,1fr)_240px]",children:[$e("div",{className:"flex flex-col gap-4",children:[$e("div",{className:"grid gap-4 sm:grid-cols-2",children:[$e("div",{className:"flex flex-col gap-1",children:[Z(pt,{level:g,className:qt,children:m.customer}),Z("span",{className:"font-semibold text-base text-slate-900 dark:text-slate-100",children:Z(pe,{fieldKey:fe.field("customerName"),raw:t.customerName,display:A})})]}),$e("div",{className:"flex flex-col gap-1",children:[Z(pt,{level:g,className:qt,children:m.subject}),Z("span",{className:"text-slate-700 text-sm dark:text-slate-200",children:Z(pe,{fieldKey:fe.field("subject"),raw:t.subject,display:I})})]})]}),T.text.length>0&&$e("div",{className:"flex flex-col gap-2",children:[Z(pt,{level:g,className:qt,children:m.content}),Z("div",{className:Ox,children:Z(pe,{fieldKey:fe.field("content"),raw:t.content,display:T})})]}),t.interviewers.length>0&&$e("div",{className:"flex flex-col gap-2",children:[Z(pt,{level:g,className:qt,children:m.interviewers}),Z("ul",{className:"flex flex-wrap gap-2",children:t.interviewers.map((k,O)=>Z("li",{className:Mx,children:Z(kx,{interviewer:k,index:O,template:m.interviewerWithAffiliation})},JSON.stringify([k.name,k.affiliation])))})]}),Z(Is,{attachments:t.attachments}),Z(Lo,{report:t,userId:a,canComment:R,onCommentAdded:b,onSectionRemoved:l,formPlacement:"after-section"})]}),Z(CR,{report:t,visitTimeDisplay:_,labels:m})]})]})});BR.displayName="DailyReportResolvedItem";var VR=Id(({report:e,stateId:t,onCancel:r,onPublishSuccess:n,titleInputRef:o})=>{let{labels:a}=z();return $e("div",{...Rt,className:Lx,children:[Z("span",{id:t,className:kt,children:a.rowEditingState({isDraft:e.isDraft})}),Z(Ms,{report:e,onCancel:r,onPublishSuccess:n,titleInputRef:o})]})});VR.displayName="DailyReportEditingBody";var Vx=({itemId:e,stateId:t})=>{let{labels:r}=z();return Z("div",{...Rt,className:Nx,children:Z("p",{id:t,children:r.reportLoadFailed(e)})})};import{VirtualScroll as Zx,virtualScrollItemElementId as Qx}from"@aiquants/virtualscroll";import{useCallback as YR,useId as qR,useMemo as Ld,useRef as Jx,useState as ev}from"react";import{createContext as Ux,useContext as Wx,useLayoutEffect as Kx}from"react";var UR=()=>{let e=!1;return{request:()=>{e=!0},isPending:()=>e,take:()=>{let t=e;return e=!1,t}}},Cd=Ux(null),WR=(e,t)=>{let r=Wx(Cd);Kx(()=>{r===null||!r.isPending()||e.current===null||(r.take(),t(null,"handOver"))})};import{useCallback as KR,useLayoutEffect as zR,useMemo as $R,useRef as _d}from"react";var zx=(e,t,r,n)=>{for(let o=r;o<=n;o++){let a=Ee(e,o);if(a===void 0||a.reportHubId!==Ee(t,o)?.reportHubId)return!0}return!1},$x=(e,t,r,n)=>{let o=e*r+t,a=Math.min(Math.max(Math.floor(o/r),0),n-1);return{index:a,offsetPx:o-a*r}},jx=(e,t,r,n)=>{let o=e,a=t;for(;a<0&&o>0;)o-=1,a+=r(o);for(;o<n-1&&a>=r(o);)a-=r(o),o+=1;return{index:o,offsetPx:a}},Gx=(e,t,r,n,o)=>{if(t===e.recordedAt)return e;if(!(t>0))return null;let a=e.offsetPx+(t-e.recordedAt),{index:s,offsetPx:i}=n.kind==="uniform"?$x(e.index,a,n.rowHeight,r.length):jx(e.index,a,Bs(n),r.length);return{reportHubId:Vt(r,s).reportHubId,index:s,offsetPx:i,lastVisibleIndex:Us({index:s,offsetPx:i},o,r.length,n),recordedAt:t}},Yx=(e,t,r)=>{for(let n=r.index+1;n<=r.lastVisibleIndex&&n<e.length;n++){let o=ve(t,Vt(e,n).reportHubId,n-1);if(o!==-1)return o}return-1},jR=({items:e,handleRef:t,rowSizing:r,isRevealPending:n})=>{let o=_d(null),a=_d(e),s=_d(r),i=KR(()=>{let c=t.current,u=c===null?-1:c.getScrollPosition(),p=c===null||!(u>0)?null:c.getScrollAnchor(),f=a.current,m=p===null?void 0:Ee(f,p.index),y=c===null?0:c.getViewportSize();o.current=p===null||m===void 0||!(y>0)?null:{reportHubId:m.reportHubId,index:p.index,offsetPx:p.offsetPx,lastVisibleIndex:Us(p,y,f.length,s.current),recordedAt:u}},[t]),l=$R(()=>({toIndex:(c,u)=>{let p=t.current;p!==null&&(p.scrollToIndex(c,u),i())},by:c=>{let u=t.current;u!==null&&(u.scrollBy(c),i())},resizeRow:(c,u)=>{let p=t.current;p!==null&&(p.updateItemSize(c,u),i())}}),[t,i]);zR(()=>{let c=a.current;a.current=e;let u=o.current,p=t.current;if(c===e||u===null||p===null||n())return;let f=Gx(u,p.getScrollPosition(),c,s.current,p.getViewportSize());if(f===null){o.current=null;return}let m=ve(e,f.reportHubId,f.index),y=m===-1?Yx(c,e,f):m;if(y===-1){o.current=null;return}if(y===f.index&&!zx(c,e,f.index,f.lastVisibleIndex)){o.current=f;return}p.scrollToIndex(y,{align:"top",offset:-f.offsetPx}),o.current={reportHubId:Vt(e,y).reportHubId,index:y,offsetPx:f.offsetPx,lastVisibleIndex:Us({index:y,offsetPx:f.offsetPx},p.getViewportSize(),e.length,r),recordedAt:p.getScrollPosition()}},[e,t,r,n]),zR(()=>{s.current=r},[r]);let d=KR(c=>{if(c.cause!=="clamp"){i();return}let u=o.current;u!==null&&(o.current={...u,recordedAt:u.recordedAt+c.delta})},[i]);return $R(()=>({handleRangeChange:i,handleScrollAdjust:d,scroller:l}),[i,d,l])};import{useCallback as qx}from"react";var Xx=20,GR=({hostTestId:e,scrollContainerRef:t,handleRef:r,scroller:n,itemsRef:o,rowPass:a})=>qx(s=>{t.current=s;let i=s.querySelector(`[data-testid="${e}"]`);return i!==null&&Object.defineProperty(i,"__virtualScroll",{configurable:!0,get:()=>{let l=r.current;if(l!==null)return{getViewportSize:()=>l.getViewportSize(),getScrollPosition:()=>l.getScrollPosition(),getScrollAnchor:()=>l.getScrollAnchor(),getRange:()=>l.getRange(),getFenwickSize:()=>l.getFenwickSize(),findReportIndex:d=>wt(o.current,d),getReportItem:d=>Ee(o.current,d),getReportIds:(d=Xx)=>Np(o.current,d),revealIndex:(d,c)=>n.toIndex(d,c),rowPass:{counters:()=>({syncReleases:a.syncReleaseCount(),oversizeFrames:a.oversizeFrameCount(),lateFrames:a.lateFrameCount(),lateForcedFrames:a.lateForcedFrameCount()})}}}}),()=>{i!==null&&delete i.__virtualScroll,t.current=null}},[e,t,r,n,o,a]);import{jsx as Mo}from"react/jsx-runtime";var tv=Object.freeze({skipFar:!0}),ei=({containerRef:e,testId:t,itemsRef:r,rowSetSize:n,isViewRevealPending:o,onRangeChange:a,...s})=>{let i=Jx(null),l=YR(M=>(i.current=M,()=>{i.current=null}),[]),{labels:d}=z(),c=qR(),{handleRangeChange:u,handleScrollAdjust:p,scroller:f}=jR({items:s.items,handleRef:i,rowSizing:s.rowSizing,isRevealPending:o}),{handleRangeChange:m,...y}=RR({...s,containerRef:e,handleRef:i,scroller:f,gridId:c}),{cursor:g,selectionStore:R,focusViewRow:D}=y,[b]=ev(()=>nm({gridId:c,isHolding:()=>R.isHeld(),subscribeHold:M=>R.subscribeHold(M),keySteps:R.keySteps,activeIndex:()=>{let M=g.getActiveId(),T=M===null?-1:ve(r.current,M,g.getActiveIndexHint());return T===-1?null:T},indexOf:M=>{let T=e.current,A=T===null?null:T.ownerDocument.getElementById(Qx(c,M)),I=A===null?null:Sr(A),_=ve(r.current,M,I===null?null:I-1);return _===-1?null:_}})),h=GR({hostTestId:t,scrollContainerRef:e,handleRef:i,scroller:f,itemsRef:r,rowPass:b});WR(e,D);let S=qR(),w=s.onSelect!==null,x=YR(M=>{m(M),u(),a(M)},[m,u,a]),E=Ld(()=>({role:ul,id:c,tabIndex:0,"aria-label":d.title,"aria-describedby":w?S:void 0,"aria-rowcount":n}),[c,d.title,w,S,n]),L=Ld(()=>w?Mo("span",{id:S,className:"sr-only",children:d.listKeyboardHelp}):null,[w,S,d.listKeyboardHelp]),N=Ld(()=>({cursor:g,rowPass:b,focusViewRow:D}),[g,b,D]);return{...y,handleRangeChange:x,handleScrollAdjust:p,attachVirtualScroll:l,handleRef:i,scroller:f,attachScrollContainer:h,contentProps:E,keyboardHelp:L,rowPass:b,rowScope:N}},ti=({rowScope:e,items:t,...r})=>{let n=yR(e.cursor,t);return Mo(Td.Provider,{value:e.cursor,children:Mo(ja.Provider,{value:e.rowPass,children:Mo(Vl.Provider,{value:e.focusViewRow,children:Mo(Zx,{...r,activeItemIndex:n,activeItemVisibleInset:dc,itemZones:tv})})})})};import{useCallback as rv,useContext as XR,useEffect as ZR,useMemo as nv,useState as ov}from"react";var QR=e=>{let t=e;for(;t<zi;)t+=un;return t>=io+un&&(t-=un*Math.floor((t-io)/un)),t},av=(e,t,r)=>e===null||t<e.start||r>e.end?{start:t-io,end:r+io}:{start:t-QR(t-e.start),end:r+QR(e.end-r)},ri=e=>{for(let t of e.values())t();e.clear()},JR=(e,t)=>{for(let[r,n]of e)t.has(r)||(n(),e.delete(r))},sv=()=>{let e=null,t=new Map,r=new Map,n=null,o=null,a=()=>{},s=()=>{ri(t),ri(r),e=null,o=null};return{releaseAll:s,evaluate:(i,l)=>{if(i!==null&&(n=i),n===null)return;if(l.detailSource!=="ids"){s();return}o!==null&&o.detailStore!==l.detailStore&&(ri(t),e=null),o!==null&&o.marksStore!==l.marksStore&&ri(r),e=av(e,n.renderingStartIndex,n.renderingEndIndex);let d=Math.max(0,e.start),c=Math.min(l.itemCount-1,e.end);if(o!==null&&o.detailStore===l.detailStore&&o.marksStore===l.marksStore&&o.from===d&&o.to===c&&o.getItem===l.getItem)return;o={detailStore:l.detailStore,marksStore:l.marksStore,getItem:l.getItem,from:d,to:c};let u=new Map;for(let m=d;m<=c;m++){let y=l.getItem(m);y.reportHubId>0&&u.set(y.reportHubId,y.businessDate)}let{detailStore:p,marksStore:f}=l;for(let[m,y]of u)t.has(m)||t.set(m,p.subscribe(m,y,a)),f!==null&&!r.has(m)&&r.set(m,f.subscribe(m,a));JR(t,u),JR(r,u)}}},ni=({itemCount:e,getItem:t})=>{let r=XR(pn),n=Pr(),o=XR(rt),[a]=ov(sv),s=nv(()=>({detailSource:r,detailStore:n,marksStore:o,itemCount:e,getItem:t}),[r,n,o,e,t]),i=rv(l=>a.evaluate(l,s),[a,s]);return ZR(()=>{a.evaluate(null,s)},[a,s]),ZR(()=>()=>a.releaseAll(),[a]),i};import{Fragment as fv,jsx as jt,jsxs as mv}from"react/jsx-runtime";var th={pointerDragInputs:xa,wheelSpeedMultiplier:ga,inertiaOptions:Sn(!1),enableKeyboardNavigation:!1},lv={...th,inertiaOptions:Sn(!0)},eh="daily-report-detail-list",dv=v("relative w-full",ia,sa,la),cv=v(ht,"relative"),uv=300,Od=e=>{let t=mt(null),[r,n]=ko(null),o=Pa(t),a=gn(r),s=je(i=>(t.current=i,n(i),()=>{t.current=null,n(null)}),[]);return jt("div",{ref:s,className:na,children:jt("div",{className:oa,children:o===null?null:jt(pv,{...e,viewportHeight:o,reducedMotion:a})})})},pv=({dailyReportItems:e,rowSetSize:t,userId:r,selectedItemId:n,onSelectItem:o,scrollRestoreRef:a,viewportHeight:s,reducedMotion:i})=>{let[{initialScrollAnchor:l,restored:d}]=ko(()=>{let H=a?.current;if(!H||H.anchorReportHubId!==(n??null))return{initialScrollAnchor:void 0,restored:!1};if(!H.topItem)return{initialScrollAnchor:void 0,restored:!0};let K=wt(e,H.topItem.reportHubId);return K!==-1?{initialScrollAnchor:{index:K,offsetPx:H.topItem.offsetPx},restored:!0}:{initialScrollAnchor:{index:H.topItem.index,offsetPx:0},restored:!0}}),c=mt(d),u=mt(n??null),p=Ue(()=>a?.current.measuredHeights??new Map),f=mt(null),m=Oa(),y=Ji(),[g]=ko(Ya),R=mt(null),D=mt(null),b=mt(e),h=mt(o);iv(()=>{b.current=e,h.current=o},[e,o]);let S=mt(null),[w,x]=ko(0),E=mt(null),L=e.length,N=t===void 0?L:t,M=je(H=>{let K=Ee(e,H);return K===void 0?Da:K},[e]),T=je(H=>{let K=p.current.get(M(H).reportHubId);return K===void 0?Qu:K},[p,M]),A=je(H=>Va(e,H),[e]),I=Nd(()=>({kind:"measured",heightOf:T}),[T]),_=je((H,K)=>{S.current={reportHubId:H,index:K},x(B=>B+1),h.current?.(H)},[]),k=je((H,K)=>{if(L===0)return;let B=Math.max(0,H),Y=Math.min(L-1,K);if(B>Y)return;let J=new Set;for(let Me=B;Me<=Y;Me++){let yt=M(Me);if(yt.businessDate&&J.add(yt.businessDate),J.size>=qu)break}J.forEach(Me=>{y(Me)})},[M,L,y]),O=mt(null),F=je(()=>O.current,[]),$=ni({itemCount:L,getItem:M}),j=je(H=>{if(L===0)return;let{renderingStartIndex:K,renderingEndIndex:B,visibleStartIndex:Y}=H,J=M(Y);J.reportHubId>0&&(O.current=J.reportHubId),J.businessDate&&g.setLabel(Ae(J.businessDate)),k(K,B),k(B+1,B+Ea),k(K-Ea,K-1),$(H)},[M,L,k,g,$]),W=je(()=>E.current!==null,[]),{containerProps:V,handleRangeChange:le,handleScrollAdjust:Te,attachVirtualScroll:be,handleRef:De,scroller:se,attachScrollContainer:Ze,contentProps:We,keyboardHelp:q,resolveSelectedIndex:he,activateRow:Q,rowPass:oe,rowScope:me}=ei({items:e,selectedId:n??null,onSelect:o===void 0?null:_,onActivate:_,containerRef:f,rootRef:f,testId:eh,itemsRef:b,rowSetSize:N,rowSizing:I,arrowAlign:"top",isViewRevealPending:W,onRangeChange:j});Xa({items:e,scroller:se,readTopReportId:F});let Ie=je((H,K)=>{if(De.current===null)return!1;let B=b.current,Y=K!==null&&K.reportHubId===H?ve(B,H,K.index):he(B,H);return Y===-1?!1:(c.current&&(c.current=!1,H===u.current)||K!==null&&K.reportHubId===H&&K.index===Y||se.toIndex(Y,{align:"top"}),!0)},[De,he,se]);Qr(()=>{let H=S.current;S.current=null,E.current=null,n!=null&&(Ie(n,H)||(E.current=n))},[n,Ie]),Qr(()=>{let H=E.current;H!==null&&Ie(H,null)&&(E.current=null)},[e,Ie]),Qr(()=>{let H=a?.current;H&&(H.anchorReportHubId=n??null)},[n,a]),Qr(()=>{S.current=null},[w]);let Qe=mt(null),It=je(()=>{De.current&&(Qe.current=De.current);let H=a?.current,K=Qe.current;if(H&&K){let Y=K.getScrollAnchor(),J=Y===null?void 0:Ee(b.current,Y.index);Y&&J&&(H.topItem={reportHubId:J.reportHubId,index:Y.index,offsetPx:Y.offsetPx})}let B=f.current;B&&(B.toggleAttribute(rn,!0),D.current&&clearTimeout(D.current),D.current=setTimeout(()=>{B.toggleAttribute(rn,!1),D.current=null},150))},[De,a]),Je=je(H=>jt(qa,{...H,store:g}),[g]);Qr(()=>{let H=f.current;if(!H)return;let K=()=>{g.setWheelScrollActive(!0),R.current&&clearTimeout(R.current),R.current=window.setTimeout(()=>{g.setWheelScrollActive(!1),R.current=null},wa)};return H.addEventListener("wheel",K,{passive:!0}),()=>{H.removeEventListener("wheel",K),R.current&&clearTimeout(R.current)}},[g]);let Mt=je(H=>{for(let[K,B]of H){oe.measured(K);let Y=K.parentElement,J=Y===null?null:ho(Y),Me=Y===null?null:Sr(Y);if(J===null||Me===null)continue;let yt=B+2*Gt;if(p.current.get(J)===yt)continue;let pr=ve(b.current,J,Me-1);pr!==-1&&(p.current.set(J,yt),se.resizeRow(pr,yt))}},[p,se,oe]),[_e]=ko(()=>Gp(Mt)),et=_e.observe,tn=je(H=>{let K=Pe(H),B=Ze(H),Y=_e.attach(K),J=oe.attach(K,_e.remeasure);return()=>{J(),Y(),B()}},[Ze,oe,_e]);Qr(()=>{L!==0&&k(0,Math.min(L-1,Ea))},[L,k]);let C=mt(null),P=je(H=>{let K=ve(b.current,H,null);K!==-1&&(C.current!==null&&clearTimeout(C.current),C.current=setTimeout(()=>{C.current=null;let B=ve(b.current,H,K);B!==-1&&se.toIndex(B,{align:"bottom"})},uv))},[se]);Qr(()=>()=>{C.current!==null&&clearTimeout(C.current)},[]);let U=je(H=>{if(!h.current)return;let K=Ur(H.target,f.current);if(K===null||Wp(H.target,K))return;let B=Up(K,b.current);B!==null&&(Q(B.reportHubId,B.index),_(B.reportHubId,B.index))},[_,Q]),G=je((H,K)=>jt(Kr.Provider,{value:K,children:jt(bo.Provider,{value:H.reportHubId,children:jt(HR,{item:H,observeRowHeight:et,onCommentAdded:P,userId:r})})},H.reportHubId),[et,P,r]),re=Nd(()=>({...Aa,renderThumbOverlay:Je}),[Je]),ie=Nd(()=>jt(Wr.Provider,{value:N,children:jt(ti,{ref:be,rowScope:me,items:e,itemCount:L,getItem:M,getItemKey:A,getItemHeight:T,viewportSize:s,initialScrollAnchor:l,overscanCount:Ta,scrollBarOptions:re,behaviorOptions:i?lv:th,onRangeChange:le,onScrollAdjust:Te,onScroll:It,testId:eh,className:dv,locale:m.locale,labels:m.labels,contentProps:We,children:G})}),[be,me,e,N,L,M,A,T,s,i,l,re,le,Te,It,m.locale,m.labels,We,G]);return jt(fv,{children:mv("div",{ref:tn,className:cv,...za,...V,onClick:U,children:[q,ie]})})};import oh from"lucide-react/dist/esm/icons/refresh-cw.js";import{createContext as bv,memo as Sv,useContext as gv,useLayoutEffect as Ev,useRef as Dv}from"react";import{jsx as Md,jsxs as yv}from"react/jsx-runtime";var oi=e=>10**String(e).length-1,Po=({text:e,widestTexts:t,ref:r})=>yv("span",{ref:r,className:Fc,children:[Md("span",{"aria-hidden":"true",className:aa,children:[...new Set(t)].map(n=>Md("span",{className:Lr,children:n},n))}),Md("span",{className:Hc,children:e})]});import{useLayoutEffect as Rv,useState as rh}from"react";import{jsx as nh,jsxs as hv}from"react/jsx-runtime";var kd=Object.freeze({status:"",alert:""}),ai=({announcement:e,testId:t})=>{let[r]=rh(e),[n,o]=rh(!1),a=n||e.status!==r.status||e.alert!==r.alert;Rv(()=>{a&&!n&&o(!0)},[a,n]);let{status:s,alert:i}=a?e:kd;return hv("span",{"data-testid":t,className:"sr-only",children:[nh("span",{role:"status",children:s}),nh("span",{role:"alert",children:i})]})};import{Fragment as kv,jsx as it,jsxs as vt}from"react/jsx-runtime";var Fd=bv(!0),wv="daily-report-ids-stream-status-announcer",Tv="inline-grid whitespace-nowrap text-start",ih="col-start-1 row-start-1",Av=`${aa} ${ih}`,xv=`${ih} flex justify-self-start rounded-full empty:not-focus:invisible ${te}`,lh=v(Ye,"gap-1 bg-blue-100 font-medium text-blue-800 text-xs tabular-nums dark:bg-blue-900/40 dark:text-blue-300"),Pd="size-2 rounded-full bg-blue-500 dark:bg-blue-400",dh=v(Ye,"gap-1 bg-amber-100 font-medium text-amber-800 text-xs tabular-nums dark:bg-amber-900/40 dark:text-amber-300"),ch=v(Ye,"gap-1 bg-rose-100 font-medium text-rose-800 text-xs dark:bg-rose-900/40 dark:text-rose-300"),uh=v(Ye,"gap-1 bg-slate-100 font-medium text-slate-700 text-xs dark:bg-slate-800/40 dark:text-slate-300"),ph=v("inline-flex h-5 items-center rounded-full bg-rose-200 px-2 font-semibold text-rose-900 hover:bg-rose-300 dark:bg-rose-800 dark:text-rose-100 dark:hover:bg-rose-700",te),ah="size-3",sh=`${lh} ${Lr}`,vv=`${dh} ${Lr}`,Iv=`${ch} ${Lr}`,Cv=`${uh} ${Lr}`,mh=(e,t)=>oi(t===null?e:Math.max(e,t)),_v=(e,t,r)=>{let n=mh(t,r);return r===null||r===0?{text:e.streamProgressCount(t),widestText:e.streamProgressCount(n)}:{text:e.streamProgressRatio(t,r,Math.min(100,Math.round(t/r*100))),widestText:e.streamProgressRatio(n,n,100)}},Lv=({labels:e,loadedCount:t,totalCount:r})=>{let{text:n,widestText:o}=_v(e,t,r);return vt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"streaming",className:lh,children:[it("span",{"aria-hidden":"true",className:Pd}),it(Po,{text:n,widestTexts:[o]})]})},Nv=(e,t,r)=>e.phase==="streaming"?it(Lv,{labels:t,loadedCount:e.loadedCount,totalCount:e.totalCount}):e.phase==="retrying"?vt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"retrying",className:dh,children:[it(oh,{"aria-hidden":"true",className:"size-3 motion-safe:animate-spin"}),t.streamRetrying(e.loadedCount)]}):e.phase==="failed"?vt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"failed",className:ch,children:[t.streamFailed,it("button",{type:"button","data-testid":"daily-report-ids-stream-retry",onClick:r,className:ph,children:t.streamRetry})]}):e.isRevalidating?vt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"revalidating",className:uh,children:[it(oh,{"aria-hidden":"true",className:"size-3 motion-safe:animate-spin"}),t.streamRevalidating]}):null,Ov=Sv(({labels:e,widest:t})=>vt("span",{"aria-hidden":"true",className:Av,children:[vt("span",{className:sh,children:[it("span",{className:Pd}),e.streamProgressCount(t)]}),vt("span",{className:sh,children:[it("span",{className:Pd}),e.streamProgressRatio(t,t,100)]}),vt("span",{className:vv,children:[it("span",{className:ah}),e.streamRetrying(t)]}),vt("span",{className:Iv,children:[e.streamFailed,it("span",{className:ph,children:e.streamRetry})]}),vt("span",{className:Cv,children:[it("span",{className:ah}),e.streamRevalidating]})]})),Hd=(e,t)=>e.retryingCount!==null?{status:t.streamRetrying(e.retryingCount),alert:""}:e.phase==="failed"?{status:"",alert:e.hasItems?t.streamFailed:t.loadError}:!e.hasItems&&(e.phase==="idle"||e.phase==="streaming")?{status:t.loadingIds,alert:""}:kd,Mv=(e,t)=>Hd({phase:e.phase,hasItems:!0,retryingCount:e.phase==="retrying"?e.loadedCount:null},t),Fo=()=>{let e=Fm(),{labels:t}=z(),r=gv(Fd),n=Dv(null),a=Nv(e,t,()=>{ar([n.current]),ds()}),s=a===null;return Ev(()=>{let i=n.current;!s||i===null||!i.contains(Ke(i))||ar(bs(i.ownerDocument))},[s]),vt(kv,{children:[vt("span",{className:Tv,children:[it(Ov,{labels:t,widest:mh(e.loadedCount,e.totalCount)}),it("span",{ref:n,tabIndex:-1,"data-daily-report-stream-status":"",className:xv,children:a})]}),r?it(ai,{announcement:Mv(e,t),testId:wv}):null]})};import{Panel as kh,PanelGroup as nC,PanelResizeHandle as oC}from"@aiquants/resize-panels";import{useCallback as lt,useEffect as pi,useLayoutEffect as mi,useMemo as Yd,useRef as Cr,useState as yi}from"react";import{useSyncExternalStore as Pv}from"react";var fh="(max-width: 639px)",Fv=()=>{},Hv=e=>{if(typeof window>"u"||typeof window.matchMedia!="function")return Fv;let t=window.matchMedia(fh);return t.addEventListener("change",e),()=>t.removeEventListener("change",e)},Bv=()=>typeof window<"u"&&typeof window.matchMedia=="function"?window.matchMedia(fh).matches:!1,Vv=()=>!1,yh=()=>Pv(Hv,Bv,Vv);import{SwipeCloseGuardContext as mI,useOverlayEscapeStack as fI,useSwipeGuardState as yI,useSwipeToDismissOverlay as RI,useTapClick as hI,useTransitionDisplay as bI}from"@aiquants/swipe-overlay";import{useCallback as li,useEffect as Vn,useId as $d,useLayoutEffect as jd,useRef as Nt,useState as di}from"react";import{useMemo as Uv}from"react";var Ho=(e,t)=>{let{id:r,indexHint:n}=t;return Uv(()=>{if(r===null)return null;let o=ve(e,r,n);return o===-1?null:Vt(e,o)},[e,r,n])};import Wv from"lucide-react/dist/esm/icons/check.js";import Kv from"lucide-react/dist/esm/icons/pencil.js";import zv from"lucide-react/dist/esm/icons/trash-2.js";import{memo as $v,useCallback as Jr,useDeferredValue as jv,useEffect as Ud,useId as bh,useLayoutEffect as Wd,useMemo as Ko,useRef as Wo,useState as Sh,useSyncExternalStore as Gv}from"react";import*as dr from"@radix-ui/react-tabs";import*as ft from"react";import{jsx as Hn}from"react/jsx-runtime";var Rh=ft.createContext(null),hh=e=>{let t=ft.useContext(Rh);if(t===null)throw new Error(`[daily-report] ${e} must be rendered inside Tabs`);return t},Bd=(e,t)=>`${e}-trigger-${t}`,Vd=(e,t)=>`${e}-panel-${t}`,Bo=ft.forwardRef(({value:e,children:t,...r},n)=>{let o=ft.useId(),a=ft.useMemo(()=>({baseId:o,value:e}),[o,e]);return Hn(dr.Root,{ref:n,value:e,...r,children:Hn(Rh,{value:a,children:t})})});Bo.displayName=dr.Root.displayName;var Vo=ft.forwardRef(({className:e,...t},r)=>Hn(dr.List,{ref:r,className:v("inline-flex",e),...t}));Vo.displayName=dr.List.displayName;var Uo=ft.forwardRef(({className:e,value:t,...r},n)=>{let{baseId:o}=hh("TabsTrigger");return Hn(dr.Trigger,{ref:n,value:t,...r,id:Bd(o,t),"aria-controls":Vd(o,t),className:v(`${Ic} ${te}`,e)})});Uo.displayName=dr.Trigger.displayName;var Bn=ft.forwardRef(({className:e,value:t,tabStop:r,children:n,...o},a)=>{let{baseId:s,value:i}=hh("TabsContent"),l=t===i,d="mt-2 data-[state=inactive]:hidden";return r?Hn("div",{ref:a,role:"tabpanel",id:Vd(s,t),"aria-labelledby":Bd(s,t),"data-state":l?"active":"inactive",hidden:!l,tabIndex:0,...o,className:v(`${d} ${te}`,e),children:l?n:null}):Hn("div",{ref:a,role:"tabpanel",id:Vd(s,t),"aria-labelledby":Bd(s,t),"data-state":l?"active":"inactive",hidden:!l,...o,className:v(d,e),children:l?n:null})});Bn.displayName="TabsContent";import{jsx as X,jsxs as cr}from"react/jsx-runtime";var wh=v(Nr,"w-24 shrink-0"),gh={field:"flex items-baseline",label:wh,value:"flex-1"},Yv={field:"flex min-w-0 flex-1 items-baseline",label:wh,value:"wrap-break-word min-w-0 flex-1"},qv={field:"flex flex-col gap-1",label:Nr,value:""},Xv={field:"flex min-w-0 items-center gap-1",label:v(Nr,"shrink-0 whitespace-nowrap"),value:""},Zv="flex min-h-4 flex-wrap items-center gap-x-2 gap-y-1 text-slate-500 text-xs dark:text-slate-300",Eh=v("flex-1 touch-pan-y overflow-y-auto overflow-x-hidden pt-2 text-sm",Ai,pc,uc),Dh={desktop:v(Eh,Kc),overlay:Eh},Qv=v("flex flex-col gap-1",xi),Jv=v(xc,"grid grid-cols-2 gap-1"),eI=v("m-0 font-normal text-slate-900 text-sm dark:text-slate-100",te),Kd=e=>{let t=e,r=new Set;return{isDwelling:()=>t,set:n=>{if(n!==t){t=n;for(let o of[...r])o()}},subscribe:n=>(r.add(n),()=>{r.delete(n)})}},tI=(e,t,r,n,o,a)=>{let s=Wo(null),i=e?.reportHubId;Wd(()=>{s.current=null},[i]),Ud(()=>{n||(s.current=null)},[n]);let l=Jr(async(d,c)=>{c||(s.current=d.reportHubId);try{await a(d.reportHubId,!d.isRead,d.date)}catch{}},[a]);return Ud(()=>{if(!(r&&e&&!e.isRead&&!t)||s.current===e.reportHubId)return;let d=null,c=()=>{d!==null&&clearTimeout(d),d=o.isDwelling()?setTimeout(()=>l(e,!0),500):null};c();let u=o.subscribe(c);return()=>{u(),d!==null&&clearTimeout(d)}},[e,t,r,l,o]),{handleToggleRead:l}},zd="article",rI=["article","relations"],nI=e=>{if(e==="article"||e==="relations")return e;throw new Error(`[daily-report] unknown side-pane tab: ${e}`)},oI=v("hidden h-full min-h-0 w-full min-w-0 flex-1 flex-col gap-4 sm:flex",Pt),aI=v("flex h-full flex-1 items-center justify-center text-center",nn),sI=9,iI=.875,lI=16,Th=4*Math.ceil((2*Gt+2*Qo+2*yc+sI*iI*lI)/4),Ah=({dailyReportItems:e,selectionStore:t,autoMarkRead:r,userId:n,onReportDeleted:o})=>{let{labels:a}=z(),s=bh(),i=bh(),[l,d]=Sh(zd),{selected:c,settled:u}=Gv(t.subscribe,t.getSnapshot,t.getSnapshot),p=Ho(e,c),f=Ho(e,jv(u)),m=p===null?null:p.reportHubId,g=(f===null?null:f.reportHubId)===m,[R]=Sh(()=>Kd(g));return Wd(()=>{R.set(g)},[R,g]),X("aside",{"data-testid":"daily-report-side-pane","data-report-id":p?.reportHubId,"data-displayed-report-id":f?.reportHubId,"aria-busy":g?void 0:!0,className:oI,children:f===null?X("div",{className:aI,children:X("p",{className:Xt,children:a.selectPrompt})}):X(ii,{item:f,placement:"desktop",headingId:s,authorId:i,activeTab:l,onActiveTabChange:d,autoMarkRead:r,isActive:!0,dwell:R,userId:n,onReportDeleted:o},f.reportHubId)})},dI=({reportHubId:e,children:t})=>{let r=Bf(e);return X(In,{reportHubId:e,entry:r,children:t})},ii=$v(({item:e,placement:t,headingId:r,authorId:n,activeTab:o,onActiveTabChange:a,autoMarkRead:s,isActive:i,dwell:l,userId:d,onReportDeleted:c})=>{let{labels:u,sourceTypeConfigs:p,headingLevel:f}=z(),{report:m,error:y,isLoading:g}=Qi(e.reportHubId,e.businessDate),R=Er(),D=ys(e.reportHubId),b=D==="editing"||D==="automatic",h=Wo(null),S=Wo(null),w=Wo(!1),x=Wo(!1),E=!!(d&&m?.userId===d),L=m?.isDraft===!0;Ud(()=>{m!==null&&(E&&L&&D==="display"?R.open(e.reportHubId,Ln(m),!0):!L&&D==="automatic"&&R.discard(e.reportHubId))},[m,E,L,D,R,e.reportHubId]);let N=Ko(()=>m===null?void 0:()=>{w.current=!0,R.open(e.reportHubId,Ln(m),!1)},[R,e.reportHubId,m]),M=Jr(()=>{x.current=!0,R.dismiss(e.reportHubId)},[R,e.reportHubId]),T=Jr(()=>{x.current=!0,R.discard(e.reportHubId)},[R,e.reportHubId]),A=Jr(W=>{W===null||!w.current||(w.current=!1,W.focus())},[]),I=Jr(W=>{W===null||!x.current||(x.current=!1,W.focus())},[]),_=Jr(()=>{S.current?.focus({preventScroll:!0})},[]);Wd(()=>{b||!x.current||(x.current=!1,S.current?.focus())},[b]);let k=Jr(()=>{setTimeout(()=>{let W=h.current;W!==null&&W.scrollTo({top:W.scrollHeight,behavior:dm(W)})},100)},[]),O=Ae(e.businessDate),F=Ko(()=>m===null?null:Be(m.employeeName),[m]),$=g||!m,j=m===null?void 0:Jt(m.sourceType,p);return cr(dI,{reportHubId:e.reportHubId,children:[cr("div",{className:Qv,children:[X("dl",{className:"m-0",children:X(st,{label:u.businessDate,classNames:qv,children:X(pt,{ref:S,level:f,id:r,tabIndex:-1,className:eI,children:O})})}),cr("div",{className:Zv,children:[X("dl",{className:"m-0 min-w-0",children:X(st,{label:u.author,classNames:Xv,valueId:n,children:$||F===null?X("div",{"data-skeleton":!0,className:"h-3 w-24 rounded bg-slate-200 motion-safe:animate-pulse dark:bg-slate-700"}):X(pe,{fieldKey:fe.field("employeeName"),raw:m?.employeeName,display:F})})}),j?X(kn,{config:j}):null,m===null?null:X(Ys,{isEditing:b,descriptionId:null})]})]}),cr(Bo,{value:o,onValueChange:W=>a(nI(W)),className:"flex min-h-0 flex-1 flex-col",children:[X("div",{className:xi,children:X(Vo,{"aria-label":u.reportTabList,className:Jv,children:rI.map(W=>X(Uo,{value:W,children:W==="article"?u.tabArticle:u.tabRelations},W))})}),X(Bn,{ref:h,value:"article",tabStop:!0,className:Dh[t],children:b?m?X(Ms,{report:m,onCancel:M,onPublishSuccess:T,titleInputRef:A}):X("p",{className:nn,children:u.loading}):X(pI,{report:m,sourceConfig:j,isLoading:g,error:y,item:e,autoMarkRead:s,isActive:i,dwell:l,onCommentAdded:k,userId:d,onEdit:E?N:void 0,editButtonRef:I,onReportDeleted:c,onCommentSectionRemoved:_})}),X(Bn,{value:"relations",tabStop:!0,className:Dh[t],children:X("p",{className:nn,children:u.relationsEmpty})})]})]})});ii.displayName="DailyReportSidePaneContent";var si=({className:e="w-32"})=>X("div",{"data-skeleton":!0,className:`h-4 rounded bg-slate-200 motion-safe:animate-pulse dark:bg-slate-700 ${e}`}),cI=["w-full","w-11/12","w-4/5"],uI=v(Rc,Jo),pI=({report:e,sourceConfig:t,isLoading:r,error:n,item:o,autoMarkRead:a=!1,isActive:s=!0,dwell:i,onCommentAdded:l,userId:d,onEdit:c,editButtonRef:u,onReportDeleted:p,onCommentSectionRemoved:f})=>{let{toggleStar:m,toggleRead:y,deleteReport:g}=qe(),{labels:R,headingLevel:D}=z(),b=Dr[D],{handleToggleRead:h}=tI(e,r,a,s,i,y),S=e!==null&&ba(e.sourceType,t),w=Ko(()=>e?.content?Jc(e.content):null,[e]),x=Ko(()=>Be(e?.subject),[e]),E=Ko(()=>Be(e?.customerName),[e]),L=async A=>{try{await m(A.reportHubId,!A.isStarred,A.date)}catch{}},N=async A=>{if(confirm(R.confirmDelete)){try{await g(A.reportHubId,A.date)}catch{return}p(A.reportHubId)}};if(n)return X("p",{className:jn,children:R.reportLoadFailed(o.reportHubId)});let M=!e,T=!!(d&&e?.userId===d);return cr("div",{className:"flex flex-col gap-4 text-slate-700 dark:text-slate-200",onDoubleClick:c,children:[cr("div",{className:"flex items-start gap-2",children:[X("dl",{className:"m-0 flex min-w-0 flex-1",children:X(st,{label:R.subject,classNames:Yv,children:M?X(si,{className:"w-3/4"}):X("span",{className:"text-sm",children:X(pe,{fieldKey:fe.field("subject"),raw:e?.subject,display:x})})})}),!M&&e&&cr("div",{className:"flex h-5 shrink-0 items-center gap-2 pr-2",children:[X("button",{type:"button",onClick:()=>L(e),className:Ge,title:e.isStarred?R.starRemove:R.starAdd,"aria-label":e.isStarred?R.starRemove:R.starAdd,"data-detail-star-button":e.reportHubId,children:X(Mn,{filled:e.isStarred})}),X("button",{type:"button",onClick:()=>h(e,!1),className:Ge,title:e.isRead?R.markUnread:R.markRead,"aria-label":e.isRead?R.markUnread:R.markRead,"data-detail-read-button":e.reportHubId,children:e.isRead?X(Wv,{className:He.read}):X(Pn,{})}),c&&X("button",{ref:u,type:"button",onClick:c,"data-detail-edit-button":e.reportHubId,className:Ge,title:R.edit,"aria-label":R.edit,children:X(Kv,{className:He.edit})}),T&&X("button",{type:"button",onClick:()=>N(e),"data-detail-delete-button":e.reportHubId,className:Ge,title:R.deleteReport,"aria-label":R.deleteReport,children:X(zv,{className:He.delete})})]})]}),X("dl",{className:"m-0",children:X(st,{label:R.customer,classNames:gh,children:M?X(si,{className:"w-1/2"}):X("span",{className:"text-sm",children:X(pe,{fieldKey:fe.field("customerName"),raw:e?.customerName,display:E})})})}),cr("div",{className:"flex flex-col gap-2",children:[X(pt,{level:b,className:qt,children:R.content}),X("div",{className:uI,children:M?cI.map(A=>X("div",{className:hc,children:X(si,{className:A})},A)):w!==null&&w.text.length>0?X("div",{className:"whitespace-pre-wrap",children:X(pe,{fieldKey:fe.field("content"),raw:e?.content,display:w})}):X("p",{className:"text-slate-500 dark:text-slate-400",children:R.contentEmpty})})]}),X("dl",{className:"m-0",children:X(st,{label:R.visitTime,classNames:gh,children:M?X(si,{className:"w-1/3"}):cr("span",{className:"text-sm",children:[hr(e?.visitTimeFrom)," ",e?.visitTimeFrom&&e?.visitTimeTo?"-":""," ",hr(e?.visitTimeTo)]})})}),e&&X(Is,{attachments:e.attachments}),e&&X(Lo,{report:e,userId:d,canComment:S,onCommentAdded:l,onSectionRemoved:f,formPlacement:"in-section",sectionClassName:"border-slate-100 border-t border-solid pt-4 dark:border-slate-800"})]})};import{jsx as Ir,jsxs as xh}from"react/jsx-runtime";var SI="fixed inset-y-0 left-0 m-0 flex h-auto max-h-none w-auto max-w-none touch-manipulation overflow-hidden border-0 bg-transparent p-0 text-inherit outline-none backdrop:bg-transparent motion-safe:transition-[right] motion-safe:duration-500 motion-safe:ease-[ease]",gI={right:"var(--aqdr-overlay-right, 0px)"},EI="absolute inset-0 touch-manipulation bg-slate-900/50 motion-safe:transition-opacity motion-safe:duration-200",DI=v("relative ml-auto flex h-full w-full max-w-full touch-none shadow-xl motion-safe:transition-[transform] motion-safe:duration-200 motion-safe:ease-out",Pc),wI=v("inline-flex h-9 touch-manipulation items-center rounded-full border border-slate-300 border-solid px-[15px] font-medium text-slate-600 text-sm shadow-sm hover:bg-slate-100 dark:border-slate-600 dark:text-slate-200 dark:hover:bg-slate-800",te),TI="flex shrink-0 justify-center empty:hidden",AI=50,vh=({isMobileLayout:e,selection:t,dailyReportItems:r,onSelectItem:n,rootRef:o})=>{let a=t.id,[s,i]=di(!1),[l,d]=di(!1),c=Nt(null),u=Nt(null),p=Nt(null),f=Nt(e),m=Nt(!0),y=Ho(r,t),g=li(()=>{let h=o.current;if(h===null)return;let S=h.ownerDocument.body;p.current={body:S,overflow:S.style.overflow},S.style.overflow="hidden"},[o]),R=li(()=>{let h=p.current;h!==null&&(h.body.style.overflow=h.overflow,p.current=null)},[]);Vn(()=>{if(m.current){m.current=!1,f.current=e;return}let h=!f.current;f.current=e,h&&e&&a!==null?i(!0):!e&&s&&(u.current=a,i(!1),R())},[e,a,s,R]);let D=e&&s&&y!==null;Vn(()=>{if(D)d(!0);else{let h=setTimeout(()=>d(!1),300);return()=>clearTimeout(h)}},[D]),Vn(()=>{if(e&&s&&a!==null&&!c.current){let h=`overlay-${Date.now()}`;window.history.pushState({...window.history.state,dailyReportOverlay:h},"",window.location.href),c.current=h}else!(e&&s)&&c.current&&(c.current=null);return e&&s?g():R(),R},[e,s,a,g,R]),Vn(()=>{let h=()=>{c.current&&(u.current=a,c.current=null,i(!1),n(null))};return window.addEventListener("popstate",h),()=>window.removeEventListener("popstate",h)},[a,n]);let b=li(()=>{e&&(u.current=a,i(!1),n(null),c.current&&(c.current=null,window.history.back()))},[e,a,n]);return{isMobileDetailOpen:s,setIsMobileDetailOpen:i,isOverlayMounted:l,shouldShowOverlay:D,handleOverlayClose:b,lastClosedItemIdRef:u,selectedItem:y}},Ih=({isOpen:e,selectedItem:t,onClose:r,autoMarkRead:n=!1,userId:o,onReportDeleted:a})=>{let{labels:s}=z(),{registerNoticeHost:i}=gs(),l=Nt(null),d=Nt(null),c=$d(),u=$d(),[p,f]=di(zd),m=fI(),y=$d(),g=Nt(!1),R=Nt(e),D=Nt(null),[b]=di(()=>Kd(e)),{isBlocked:h,requestBlock:S,reset:w}=yI(),x=bI(e,t),{overlayRef:E,overlayStyle:L,attemptClose:N,isSwiping:M}=RI({isOpen:e,onClose:r,isCloseBlocked:li(()=>h,[h]),skipWhenTextSelected:!0}),T=Nt(N);jd(()=>{T.current=N,R.current=e,b.set(e)},[N,e,b]),Vn(()=>{if(e)return m({id:y,onEscape:O=>sr(O)&&T.current()})},[e,m,y]),jd(()=>{let O=l.current;if(O===null)return;if(e){if(g.current)return;O.showModal(),g.current=!0,O.ownerDocument.getElementById(c)?.focus();return}if(!g.current)return;g.current=!1;let F=Ke(O);F!==null&&O.contains(F)&&mo(F)&&F.blur(),O.close()},[e,c]),jd(()=>{let O=d.current;if(!(!e||O===null))return i(O)},[e,i]),Vn(()=>{e||w()},[e,w]);let A=hI(()=>N()),I=O=>{let F=vn(O);if(sr(F)){N()&&O.preventDefault();return}if(F.key==="Escape"){D.current=O.timeStamp;return}let $=Sf(F,O.currentTarget);$!==null&&(O.preventDefault(),$.kind==="wrap"&&$.element.focus())},_=O=>{O.preventDefault();let F=D.current;D.current=null,!(F!==null&&O.timeStamp-F<=AI)&&T.current()},k=O=>{let F=O.currentTarget;F.open||!R.current||(g.current=!1,!T.current()&&(F.showModal(),g.current=!0))};return x?xh("dialog",{ref:l,"data-daily-report-mobile-overlay":"true","aria-labelledby":`${c} ${u}`,tabIndex:-1,className:v(SI,e&&!M?"pointer-events-auto":"pointer-events-none"),style:gI,inert:!e,onKeyDown:I,onCancel:_,onClose:k,children:[Ir("div",{"aria-hidden":"true","data-daily-report-overlay-backdrop":"",className:v(EI,e?"opacity-100":"opacity-0"),...A}),Ir("div",{ref:E,"data-daily-report-overlay-panel":"",className:v(DI,e?"pointer-events-auto":"pointer-events-none"),style:L,children:xh("div",{className:"flex h-full w-full flex-col gap-4 p-4",children:[Ir(mI.Provider,{value:{isBlocked:h,requestBlock:S},children:Ir("div",{"data-testid":"daily-report-side-pane","data-report-id":x.reportHubId,"data-displayed-report-id":x.reportHubId,className:"flex min-h-0 flex-1 flex-col gap-4",children:Ir(ii,{item:x,placement:"overlay",headingId:c,authorId:u,activeTab:p,onActiveTabChange:f,autoMarkRead:n,isActive:e,dwell:b,userId:o,onReportDeleted:a},x.reportHubId)})}),Ir("div",{ref:d,"data-daily-report-notice-slot":"","data-overlay-interactive":"true",className:TI}),Ir("div",{className:"flex justify-start",children:Ir("button",{type:"button","data-overlay-interactive":"true",className:wI,onClick:()=>N(),children:s.close})})]})})]}):null};import BI from"lucide-react/dist/esm/icons/check.js";import{memo as Nh,useContext as Oh,useEffect as VI,useMemo as ui}from"react";import{createContext as xI,createElement as vI,useLayoutEffect as II,useMemo as CI,useRef as _I,useState as LI}from"react";var NI=6.75,OI=4,MI=1e-6,kI=e=>4*Math.ceil((2*Gt+2*Qo+OI+NI*e-MI)/4),ci=xI(null),PI="data-daily-report-root-font-size-probe",FI={position:"fixed",insetBlockStart:0,insetInlineStart:0,visibility:"hidden",pointerEvents:"none",overflow:"hidden",writingMode:"horizontal-tb",boxSizing:"content-box",padding:0,border:0,margin:0,blockSize:"1rem",inlineSize:0},HI=e=>{let t=Pe(e).getComputedStyle(e.ownerDocument.documentElement).fontSize,r=/^(\d+(?:\.\d+)?)px$/.exec(t);if(r===null||!(Number(r[1])>0))throw new Error(`[daily-report] the root element has no computed font size in px; got ${JSON.stringify(t)}`);return Number(r[1])},Ch=()=>{let e=_I(null),[t,r]=LI(null);II(()=>{let o=e.current;if(o===null)throw new Error("[daily-report] useListRowSlotHeight needs the List to render remProbe");let a=null,s=()=>{let l=kI(HI(o));l!==a&&(a=l,r(l))};s();let i=new ResizeObserver(s);return i.observe(o),()=>i.disconnect()},[]);let n=CI(()=>vI("div",{ref:e,"aria-hidden":!0,[PI]:"",style:FI}),[]);return{rowSlotHeight:t,remProbe:n}};import{jsx as ne,jsxs as Wn}from"react/jsx-runtime";var UI=v(yr,Xo,Zo,qo),WI=v("relative flex h-full w-full select-none flex-wrap content-start items-center gap-2 overflow-hidden",Pt,ea,fc),KI="min-w-24",zI="basis-full space-y-2 text-slate-700 text-sm leading-5 dark:text-slate-200",$I={touchAction:"manipulation"},jI=v("flex grow basis-0 cursor-pointer items-center gap-2 text-left outline-none after:absolute after:inset-0 after:rounded-2xl",KI),GI=v("relative z-10",Ge),YI=v(Ye,"shrink-0 whitespace-nowrap bg-slate-100 font-medium text-slate-900 text-xs dark:bg-slate-800 dark:text-slate-100"),qI=v(Ye,"min-w-0 max-w-full bg-slate-100 font-semibold text-xs dark:bg-slate-800 dark:text-slate-200"),XI=v(Sc,"ml-auto"),ZI=v("flex h-full",Pt),QI="flex h-full w-full flex-col justify-between motion-safe:animate-pulse",Un="h-4 rounded bg-slate-200 dark:bg-slate-700",JI=ne("div",{"data-skeleton":!0,...Rt,className:ZI,children:Wn("div",{className:QI,children:[Wn("div",{className:"flex flex-wrap items-center gap-2",children:[ne("div",{className:v(Un,"w-24")}),ne("div",{className:v(Un,"w-24")}),ne("div",{className:v(Un,"w-24")})]}),Wn("div",{className:"space-y-2",children:[ne("div",{className:v(Un,"w-full")}),ne("div",{className:v(Un,"w-11/12")}),ne("div",{className:v(Un,"w-5/6")})]})]})}),eC=()=>JI,tC=e=>{e.target===e.currentTarget&&e.preventDefault()},_h=({reportHubId:e,rowId:t,name:r,children:n})=>{let o=Oh(ci);if(o===null)throw new Error("[daily-report] a List row frame is rendered outside the List view (no measured row slot)");let a=ui(()=>({height:o}),[o]);return ne(Gs,{reportHubId:e,rowId:t,name:r,className:UI,style:a,onMouseDown:tC,children:n})},rC=(e,t)=>[ye(e,"state"),...t.hasAttachments?[ye(e,"attachments")]:[],...t.hasSource?[ye(e,"source")]:[],ye(e,"preview"),...t.showsSearchMatch?[ye(e,"match")]:[]],Lh=({label:e,dataAttributes:t,onClick:r,children:n})=>{let o=_n();return ne("button",{type:"button",title:e,"aria-label":e,tabIndex:o,...t,onClick:r,className:GI,children:n})},Mh=Nh(({item:e,report:t,rowId:r,sourceConfig:n,describedBy:o,onSelect:a})=>{let{labels:s}=z(),{toggleStar:i,toggleRead:l}=qe(),d=ye(r,"name"),c=ui(()=>Qc(t.content??null,Zu),[t.content]),u=ui(()=>Be(t.employeeName),[t.employeeName]),p=Ae(e.businessDate),f=D=>{D.currentTarget.focus({preventScroll:!0});let b=Vp(D.currentTarget);b!==null&&a(e.reportHubId,b)},m=async()=>{let D=!t.isStarred;try{await i(t.reportHubId,D,t.date)}catch{}},y=async()=>{let D=!t.isRead;try{await l(t.reportHubId,D,t.date)}catch{}},g=t.isStarred?s.starRemove:s.starAdd,R=t.isRead?s.markUnread:s.markRead;return Wn("div",{"data-daily-report-card":!0,...Rt,"aria-labelledby":d,style:$I,className:WI,children:[ne(js,{id:ye(r,"position"),whileTotalUnknownOnly:!1}),ne("span",{id:ye(r,"state"),className:"sr-only",children:s.rowState({isRead:t.isRead,isStarred:t.isStarred})}),Wn("button",{id:d,type:"button",tabIndex:-1,[kp]:e.reportHubId,...Ka,"aria-describedby":o,onClick:f,className:jI,children:[ne("span",{className:YI,children:p})," ",ne("span",{className:qI,children:ne("span",{className:"truncate font-medium text-slate-900 dark:text-slate-100",children:ne(pe,{fieldKey:fe.field("employeeName"),raw:t.employeeName,display:u})})})]}),Wn("div",{className:XI,children:[ne(Gn,{id:ye(r,"attachments"),count:t.attachments.length,label:s.attachments}),n?ne(kn,{id:ye(r,"source"),config:n}):null,ne(Lh,{label:g,dataAttributes:{"data-list-star-button":e.reportHubId},onClick:m,children:ne(Mn,{filled:t.isStarred})}),ne(Lh,{label:R,dataAttributes:{"data-list-read-button":e.reportHubId},onClick:y,children:t.isRead?ne(BI,{className:He.read}):ne(Pn,{})})]}),ne("div",{id:ye(r,"preview"),className:zI,children:c.length>0?c.map((D,b)=>ne("p",{className:"wrap-break-word line-clamp-1",children:ne(pe,{fieldKey:fe.field("content"),raw:t.content,display:D})},b)):ne("p",{children:s.contentEmptyPreview})}),ne(AR,{id:ye(r,"match")})]})});Mh.displayName="ListReportCard";var Gd=Nh(({item:e,onSelect:t})=>{let{labels:r,sourceTypeConfigs:n}=z(),{removeStaleItem:o}=qe(),a=Pr(),s=Oh(rt),i=ui(()=>ks(a,s,e.reportHubId,e.businessDate),[a,s,e.reportHubId,e.businessDate]),{bodyReady:l,rendered:d}=Ga(e.reportHubId,i,"fixed"),{report:c,error:u}=d.detail,p=d.marksStore===s?d.marks:null,{report:f,error:m,isLoading:y,isRefetching:g}=i.read().detail,R=zs(e.reportHubId),D=s!==null,b=f===null&&m===null&&!y&&!g;VI(()=>{b&&e.reportHubId>0&&o(e.reportHubId)},[b,e.reportHubId,o]);let h=Ae(e.businessDate),S=ye(R,"state"),w=(L,N,M)=>ne(_h,{reportHubId:e.reportHubId,rowId:R,name:{kind:"label",label:h,isBusy:N,describedBy:M},children:L});if(!l)return w($s,!0,On);if(u!==null)return w(ne("div",{...Rt,className:"flex h-full items-center justify-center rounded-2xl border border-red-200 border-solid bg-red-50 p-[15px] text-red-700 text-sm dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-300",children:ne("p",{id:S,children:r.reportSummaryLoadFailed(e.reportHubId)})}),!1,[S]);if(c===null&&(y||f!==null||m!==null))return w(ne(eC,{}),!0,On);if(!c)return w(ne("div",{...Rt,className:"flex h-full items-center justify-center rounded-2xl border border-slate-200 border-solid bg-slate-50 p-[15px] text-slate-500 text-sm dark:border-slate-700 dark:bg-slate-900/40 dark:text-slate-400",children:ne("p",{id:S,children:r.reportNotFound})}),!1,[S]);let x=Jt(c.sourceType,n),E=rC(R,{hasAttachments:c.attachments.length>0,hasSource:x!==void 0,showsSearchMatch:D});return ne(_h,{reportHubId:e.reportHubId,rowId:R,name:{kind:"card",describedBy:E},children:ne(In,{reportHubId:e.reportHubId,entry:p,children:ne(Mh,{item:e,report:c,rowId:R,sourceConfig:x,describedBy:[ye(R,"position"),...E].join(" "),onSelect:t})})})});Gd.displayName="ListReportItem";import{Fragment as gC,jsx as nt,jsxs as fi}from"react/jsx-runtime";var Fh={pointerDragInputs:xa,inertiaOptions:Sn(!1),wheelSpeedMultiplier:ga,enableKeyboardNavigation:!1,resetOnGetItemHeightChange:!0},aC={...Fh,inertiaOptions:Sn(!0)},sC=Object.freeze({value:360,unit:"pixels"}),iC=Object.freeze({value:160,unit:"pixels"}),lC=Object.freeze({value:Th,unit:"pixels"}),dC=Object.freeze({value:520,unit:"pixels"}),cC=Object.freeze({visible:!0,thickness:6,length:32,barThickness:2,barLength:16}),uC=v("cursor-col-resize rounded hover:bg-slate-200/60 focus:ring-0 dark:hover:bg-slate-700/60",te),pC=v("relative w-full",ia,sa,la),mC=v(ht,"relative isolate overflow-hidden"),Ph="daily-report-list",fC=()=>!1,yC=()=>{throw new Error("[daily-report] a List activation arrived before the view committed")},RC=e=>{let[t,r]=yi(!1);return mi(()=>{let n=e.current;if(n===null)throw new Error("[daily-report] the List root is not attached");let o=s=>{for(let i of s)r(i.contentRect.width>0&&i.contentRect.width<Xu)},a=new(Pe(n)).ResizeObserver(o);return a.observe(n),()=>a.disconnect()},[e]),t},qd=e=>{let t=Cr(null),[r,n]=yi(null),o=Pa(t),a=RC(t),{rowSlotHeight:s,remProbe:i}=Ch(),l=gn(r),d=lt(c=>(t.current=c,n(c),()=>{t.current=null,n(null)}),[]);return fi("div",{ref:d,className:na,"data-testid":"daily-report-root",children:[i,o===null||s===null?null:nt(hC,{...e,rootRef:t,viewportHeight:o,rowSlotHeight:s,isContainerNarrow:a,reducedMotion:l})]})},hC=({dailyReportItems:e,rowSetSize:t,autoMarkRead:r=!1,selectedReportHubId:n,onSelectItem:o,userId:a,scrollOffsetRef:s,rootRef:i,viewportHeight:l,rowSlotHeight:d,isContainerNarrow:c,reducedMotion:u})=>{let[p]=yi(()=>s?.current??0),f=Cr(null),{labels:m}=z(),y=Oa(),[g]=yi(Ya),D=yh()||c,b=Cr(null),h=e.length,S=t===void 0?h:t,w=Cr(null),x=lt(B=>o(B),[o]),E=lt(B=>{let Y=Ee(e,B);return Y===void 0?Da:Y},[e]),L=Cr(null),N=ni({itemCount:h,getItem:E}),M=lt(B=>{let Y=E(B.visibleStartIndex);Y.reportHubId>0&&(g.setLabel(Ae(Y.businessDate)),L.current=Y.reportHubId),N(B)},[E,g,N]),T=lt(()=>L.current,[]),A=Yd(()=>({kind:"uniform",rowHeight:d}),[d]),I=Cr(e);mi(()=>{I.current=e},[e]);let _=Cr(yC),k=lt(B=>_.current(B),[]),{containerProps:O,handleRangeChange:F,handleScrollAdjust:$,attachVirtualScroll:j,handleRef:W,scroller:V,attachScrollContainer:le,contentProps:Te,keyboardHelp:be,selection:De,selectionStore:se,activateRow:Ze,focusViewRow:We,focusAfterRemoval:q,rowPass:he,rowScope:Q}=ei({items:e,selectedId:n,onSelect:x,onActivate:k,containerRef:f,rootRef:i,testId:Ph,itemsRef:I,rowSetSize:S,rowSizing:A,arrowAlign:"nearest",isViewRevealPending:fC,onRangeChange:M});Xa({items:e,scroller:V,readTopReportId:T});let{isMobileDetailOpen:oe,setIsMobileDetailOpen:me,isOverlayMounted:Ie,shouldShowOverlay:Qe,handleOverlayClose:It,lastClosedItemIdRef:Je,selectedItem:Mt}=vh({isMobileLayout:D,selection:De,dailyReportItems:e,onSelectItem:o,rootRef:i});pi(()=>{let B=f.current,Y=()=>{g.setWheelScrollActive(!0),b.current&&clearTimeout(b.current),b.current=window.setTimeout(()=>{g.setWheelScrollActive(!1),b.current=null},wa)};return B?.addEventListener("wheel",Y,{passive:!0}),()=>{B?.removeEventListener("wheel",Y),b.current&&clearTimeout(b.current)}},[g]),pi(()=>{!h&&n!==null&&o(null)},[h,n,o]),pi(()=>{if(oe||Je.current===null)return;let B=Je.current;Je.current=null,We(B,"overlay")},[oe,Je,We]),pi(()=>{let B=Ee(e,0);B!==void 0&&g.setLabel(Ae(B.businessDate))},[e,g]);let _e=lt(B=>{o(B),D&&me(!0)},[D,o,me]);mi(()=>{_.current=_e},[_e]);let et=lt((B,Y)=>{B<=0||(Ze(B,Y),_e(B))},[Ze,_e]),tn=lt(()=>d,[d]),C=Cr(d);mi(()=>{let B=C.current;C.current=d;let Y=W.current;if(B===d||Y===null)return;let J=Y.getScrollPosition();J>0&&V.by(J*d/B-J)},[W,d,V]);let P=lt(B=>Va(e,B),[e]),U=lt((B,Y)=>nt(Kr.Provider,{value:Y,children:nt(bo.Provider,{value:B.reportHubId,children:nt(Gd,{item:B,onSelect:et})})},B.reportHubId),[et]),G=lt(B=>{let Y=le(B),J=he.attach(Pe(B),null);return()=>{J(),Y()}},[le,he]),re=lt(B=>{s&&(s.current=B);let Y=f.current;Y&&(Y.toggleAttribute(rn,!0),w.current&&clearTimeout(w.current),w.current=setTimeout(()=>{Y.toggleAttribute(rn,!1),w.current=null},150))},[s]),ie=lt(B=>nt(qa,{...B,store:g}),[g]),H=Yd(()=>fi("div",{ref:G,className:mC,...za,...O,children:[be,nt(Wr.Provider,{value:S,children:nt(ci.Provider,{value:d,children:nt(ti,{ref:j,rowScope:Q,items:e,itemCount:h,getItem:E,getItemKey:P,getItemHeight:tn,viewportSize:l,initialScrollOffset:p,overscanCount:Ta,scrollBarOptions:{...Aa,renderThumbOverlay:ie},behaviorOptions:u?aC:Fh,onRangeChange:F,onScrollAdjust:$,onScroll:re,testId:Ph,className:pC,locale:y.locale,labels:y.labels,contentProps:Te,children:U})})})]}),[G,j,Q,e,O,S,h,E,P,tn,l,d,u,p,ie,F,$,re,be,Te,y.locale,y.labels,U]),K=Yd(()=>fi(nC,{direction:"horizontal",className:"min-h-0 flex-1","data-testid":"daily-report-panel-group",children:[nt(kh,{id:"daily-report-list-panel",defaultSize:sC,minSize:iC,maxSize:dC,contentOverflow:"hidden",className:bC,children:H}),nt(oC,{id:"daily-report-list-handle",thickness:10,indicator:cC,className:uC,"aria-label":m.resizeHandle}),nt(kh,{id:"daily-report-detail-panel",minSize:lC,contentOverflow:"hidden",className:SC,children:nt(Ah,{dailyReportItems:e,selectionStore:se,autoMarkRead:r,userId:a,onReportDeleted:q})})]}),[H,m.resizeHandle,e,se,r,a,q]);return fi(gC,{children:[nt("div",{className:oa,children:D?nt("div",{className:ht,children:H}):K}),Ie&&nt(Ih,{isOpen:Qe,selectedItem:Mt,onClose:It,autoMarkRead:D&&r,userId:a,onReportDeleted:q})]})},bC=v("flex min-h-0",cc),SC=v("flex min-h-0 flex-1",yr);import{useCallback as tL,useEffect as vb,useLayoutEffect as rL,useRef as Cb,useState as nL}from"react";import L_ from"lucide-react/dist/esm/icons/plus.js";import N_ from"lucide-react/dist/esm/icons/refresh-cw.js";import O_ from"lucide-react/dist/esm/icons/rotate-cw.js";import{useEffect as sc,useId as wb,useLayoutEffect as Tb,useMemo as wi,useRef as zn,useState as en}from"react";import{useSearchParams as M_}from"react-router";import{useEffect as EC,useRef as Hh,useState as DC}from"react";var Bh=(e,t,r=250)=>{let n=gn(t),[o,a]=DC(e),s=Hh(e),i=Hh(!0);return EC(()=>{if(i.current){i.current=!1,s.current=e,a(e);return}let l=s.current;if(l===e)return;if(n||t===null){s.current=e,a(e);return}let d=Pe(t),c=0,u=null,p=f=>{u===null&&(u=f);let m=Math.min(1,Math.max(0,(f-u)/r)),y=1-(1-m)**3,g=Math.round(l+(e-l)*y);s.current=g,a(g),m<1&&(c=d.requestAnimationFrame(p))};return c=d.requestAnimationFrame(p),()=>d.cancelAnimationFrame(c)},[e,r,n,t]),n?e:o};import HC from"lucide-react/dist/esm/icons/loader-circle.js";import BC from"lucide-react/dist/esm/icons/x.js";import{useEffect as Gh,useId as $o,useLayoutEffect as VC,useRef as bi,useState as Yh}from"react";var zo=Object.freeze({maxValuesPerFacet:16,maxValueLength:200,maxTotalValueLength:300}),Qd=["author","sourceType","customer"],Jd=Object.freeze({authors:Object.freeze([]),sourceTypes:Object.freeze([]),customers:Object.freeze([])}),wC=/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,TC=e=>{let t=e.trim();return t.length===0?null:t.replace(wC,"\uFFFD")},Vh=e=>{let t=TC(e);return t===null?"filter-blank-value":t!==e?"filter-value-not-canonical":e.length>zo.maxValueLength?"filter-value-too-long":null},AC=e=>{if(e.length>zo.maxValuesPerFacet)return"filter-too-many-values";let t=new Set;for(let r of e){let n=Vh(r);if(n!==null)return n;if(t.has(r))return"filter-duplicate-value";t.add(r)}return null},xC=e=>{let t=0;for(let r of e.authors)t+=r.length;for(let r of e.customers)t+=r.length;return t},Ri=e=>{for(let t of[e.authors,e.sourceTypes,e.customers]){let r=AC(t);if(r!==null)return r}return xC(e)>zo.maxTotalValueLength?"filters-too-long":null},Xd=e=>[...new Set(e)].sort((t,r)=>t<r?-1:1),hi=e=>({authors:Xd(e.authors),sourceTypes:Xd(e.sourceTypes),customers:Xd(e.customers)}),_r=e=>e.trim().length===0,Kn=e=>e.authors.length===0&&e.sourceTypes.length===0&&e.customers.length===0,Uh=(e,t)=>{let r=hi(t);for(let n of r.authors)e.append(Le.searchAuthor,n);for(let n of r.sourceTypes)e.append(Le.searchSourceType,n);for(let n of r.customers)e.append(Le.searchCustomer,n)},Zd=e=>{if(!Array.isArray(e))return null;let t=[],r=new Set;for(let n of e){if(typeof n!="string"||Vh(n)!==null||r.has(n))return null;r.add(n),t.push(n)}return t},Wh=e=>{if(!Qt(e))return null;let t=Zd(e.sourceTypes),r=Zd(e.authors),n=Zd(e.customers);return t===null||r===null||n===null?null:{sourceTypes:t,authors:r,customers:n}};import{Component as vC,Suspense as IC,useMemo as Kh,useState as CC}from"react";import{jsx as ur,jsxs as jh}from"react/jsx-runtime";var zh="flex min-h-6 items-center text-slate-600 text-xs dark:text-slate-300",_C=v(Mc,Xt),LC=[{facet:"author",testId:"daily-report-search-filter-author",key:"authors"},{facet:"sourceType",testId:"daily-report-search-filter-source-type",key:"sourceTypes"},{facet:"customer",testId:"daily-report-search-filter-customer",key:"customers"}],NC=(e,t)=>t==="author"?e.author:t==="sourceType"?e.searchFilterSourceType:e.customer,OC=(e,t,r)=>{let n=new Set(r.map(a=>a.value)),o=new Set;for(let a of t){if(!n.has(a)||o.has(a))throw ke(`config.search.renderFilterSelect (${e}) onChange values`,"distinct values of the options the control received",t);o.add(a)}return t},ec=class extends vC{constructor(){super(...arguments);this.state={failed:!1}}static getDerivedStateFromError(){return{failed:!0}}render(){return this.state.failed?ur("span",{className:zh,children:this.props.fallback}):this.props.children}},MC=(e,t,r,n)=>{let o=Kh(()=>new Set(t.map(s=>s.value)),[t]),a=JSON.stringify(n.filter(s=>!o.has(s)));return Kh(()=>{let s=JSON.parse(a);return s.length===0?t:[...t,...s.map(i=>r(e,i))]},[e,t,r,a])};function kC({renderFilterSelect:e,selectProps:t}){return e(t)}var PC=(e,t,r)=>t.status==="idle"||t.status==="loading"?e.searchFiltersLoading:t.status==="failed"?e.searchFiltersFailed(t.failure):r?e.searchFiltersTooMany:t.reloadFailure===null?"":e.searchFiltersFailed(t.reloadFailure);function FC({cell:e,labels:t,locale:r,renderFilterSelect:n,candidates:o,optionOf:a,selected:s,onSelect:i}){let l=MC(e.facet,o,a,s),d=NC(t,e.facet);return jh("fieldset",{"data-testid":e.testId,className:Oc,children:[ur("legend",{"data-testid":`${e.testId}-caption`,className:_C,children:d}),ur(ec,{fallback:t.searchFilterUnavailable,children:ur(IC,{fallback:ur("span",{className:zh,children:t.searchFiltersLoading}),children:ur(kC,{renderFilterSelect:n,selectProps:{facet:e.facet,label:d,options:l,value:s,onChange:c=>i(e,OC(e.facet,c,l)),locale:r}})})})]})}function $h({id:e,labelledBy:t,labels:r,locale:n,renderFilterSelect:o,facets:a,value:s,onChange:i,clearSignal:l}){let[d,c]=CC(null),u=PC(r,a,d!==null&&d.selection===s&&d.clearSignal===l),p=(m,y)=>{let g={...s,[m.key]:y};if(Ri(g)!==null){c({selection:s,clearSignal:l});return}c(null),i(g)},f=a.status==="ready"?a:null;return jh("fieldset",{id:e,"aria-labelledby":t,"data-testid":"daily-report-search-filters",className:"m-0 min-w-0 border-0 px-0 pt-2 pb-0",children:[f===null?null:ur("div",{className:Nc,children:LC.map(m=>ur(FC,{cell:m,labels:r,locale:n,renderFilterSelect:o,candidates:f.options[m.key],optionOf:f.optionOf,selected:s[m.key],onSelect:p},m.facet))}),ur("span",{"data-testid":"daily-report-search-filters-status","aria-live":"polite",className:v("flex min-h-6 items-center text-slate-600 text-xs leading-4 empty:min-h-0 dark:text-slate-300",f===null?null:"mt-2 empty:mt-0",Xt),children:u})]})}import{Fragment as e_,jsx as ot,jsxs as jo}from"react/jsx-runtime";var UC=v("h-6 w-full min-w-0 rounded-md border border-solid bg-white pr-[47px] pl-[7px] text-slate-900 text-sm dark:bg-slate-900 dark:text-slate-100",Yt,te),qh="inline-grid h-6 place-content-center place-items-center rounded-full border border-solid px-[11px] font-semibold text-xs tabular-nums",WC="col-start-1 row-start-1",KC="invisible col-start-1 row-start-1 after:content-[attr(data-search-toggle-reserve)]",Si=Object.freeze({field:v(qh,"bg-white text-slate-800 dark:bg-slate-900 dark:text-slate-100",Yt,te),filled:v(qh,"border-blue-700 bg-blue-700 text-white dark:border-blue-600 dark:bg-blue-600 dark:text-white forced-colors:border-[Highlight] forced-colors:bg-[Highlight] forced-colors:text-[HighlightText]",te)}),zC=Object.freeze({union:v("mr-2 min-w-14",Si.field),intersection:v("mr-2 min-w-14",Si.filled)}),Xh=Object.freeze({closed:v("ml-2 min-w-26",Si.field),open:v("ml-2 min-w-26",Si.filled)}),$C=Qd.length*zo.maxValuesPerFacet,jC="relative min-w-0",GC="pointer-events-none absolute inset-y-0 right-0 grid grid-cols-[repeat(2,--spacing(6))] place-items-center",YC=v("pointer-events-auto col-start-2 row-start-1",Ge),qC="col-start-1 row-start-1 size-4 text-slate-500 motion-safe:animate-spin dark:text-slate-400",XC="sr-only",ZC=v("col-[2/-1] row-start-2 pt-1 pl-[8px] text-slate-600 text-xs leading-4 dark:text-slate-300",Xt),QC=e=>e.authors.length+e.sourceTypes.length+e.customers.length,JC=(e,t,r)=>t.status==="searching"?e.searching:t.status==="failed"&&t.failure!==null?e.searchFailed(t.failure):t.status==="done"&&r!==null?r===0?e.searchNoHits:e.searchHitCount(r):"",Zh=({label:e,reserved:t})=>jo(e_,{children:[ot("span",{className:WC,children:e}),ot("span",{"aria-hidden":"true","data-search-toggle-reserve":t,className:KC})]});function Qh({labels:e,debounceMs:t,search:r,shownCount:n,onCommit:o,onCombineChange:a,onRelease:s,clearSignal:i,filters:l}){let[d,c]=Yh(""),[u,p]=Yh(!1),f=d.length>0||r.committed!==null&&!_r(r.committed.text),m=$o(),y=$o(),g=bi(null),R=bi(null),D=bi(!1),b=bi(i),h=$o(),S=$o(),w=$o(),x=Ue(()=>({search:r,onCommit:o,onRelease:s}));VC(()=>{x.current={search:r,onCommit:o,onRelease:s}});let E=()=>{R.current!==null&&clearTimeout(R.current),R.current=null},L=(V,le,Te)=>{let be=x.current;_r(V)?Kn(Te)?be.search.committed!==null&&be.onRelease():be.onCommit("",le,Te):be.onCommit(V,le,Te)},N=V=>{E();let le=x.current;L(V,le.search.combine,le.search.filters)},M=V=>{t===null||D.current||(E(),R.current=setTimeout(()=>N(V),t))},T=()=>{E(),c(""),Kn(r.filters)?s():(r.committed===null||!_r(r.committed.text))&&o("",r.combine,r.filters),g.current?.focus()},A=V=>{c(V.target.value),M(V.target.value)},I=V=>{let le=vn(V);if(V.key==="Enter"&&!Gr(le)){V.preventDefault(),N(d);return}sr(le)&&f&&(V.preventDefault(),T())},_=()=>{E();let V=r.combine==="union"?"intersection":"union";_r(d)&&Kn(r.filters)?a(V):L(d,V,r.filters)},k=V=>{u||V.facets.load(),p(!u)},O=V=>{E(),L(d,r.combine,V)};Gh(()=>{b.current!==i&&(b.current=i,R.current!==null&&clearTimeout(R.current),R.current=null,c(""))},[i]),Gh(()=>()=>{R.current!==null&&clearTimeout(R.current)},[]);let F=r.combine==="intersection",$=JC(e,r,n),j=r.status==="failed"?r.failure:null,W=l!==null&&u;return jo("search",{"data-testid":"daily-report-search",className:_c,children:[jo("div",{className:Lc,children:[ot("button",{type:"button","data-testid":"daily-report-search-combine","aria-describedby":h,title:F?e.searchCombineAndTitle:e.searchCombineOrTitle,onClick:_,className:zC[r.combine],children:ot(Zh,{label:F?e.searchCombineAnd:e.searchCombineOr,reserved:F?e.searchCombineOr:e.searchCombineAnd})}),jo("div",{className:jC,children:[ot("input",{ref:g,type:"text","data-testid":"daily-report-search-input","aria-label":e.searchInputLabel,"aria-describedby":j===null?S:`${w} ${S}`,"aria-invalid":j==="invalid"?!0:void 0,title:e.searchSyntaxHelp,placeholder:e.searchPlaceholder,value:d,onChange:A,onKeyDown:I,onCompositionStart:()=>{D.current=!0,E()},onCompositionEnd:V=>{D.current=!1,M(V.currentTarget.value)},className:UC}),jo("div",{className:GC,children:[r.status==="searching"?ot(HC,{"aria-hidden":"true","data-testid":"daily-report-search-spinner",className:qC}):null,f?ot("button",{type:"button","data-testid":"daily-report-search-clear","aria-label":e.searchClear,title:e.searchClear,onClick:T,className:YC,children:ot(BC,{"aria-hidden":"true",className:"size-4"})}):null]})]}),l===null?null:ot("button",{type:"button",id:m,"data-testid":"daily-report-search-filters-toggle","aria-expanded":u,"aria-controls":W?y:void 0,onClick:()=>k(l),className:u?Xh.open:Xh.closed,children:ot(Zh,{label:e.searchFiltersToggle(QC(r.filters)),reserved:e.searchFiltersToggle($C)})}),ot("span",{id:h,hidden:!0,children:F?e.searchCombineAndTitle:e.searchCombineOrTitle}),ot("span",{id:S,hidden:!0,children:e.searchSyntaxHelp}),ot("span",{"data-testid":"daily-report-search-status","aria-live":"polite",className:XC,children:$}),j===null?null:ot("p",{id:w,"data-testid":"daily-report-search-failure",className:ZC,children:e.searchFailed(j)})]}),W?ot($h,{id:y,labelledBy:m,labels:e,locale:l.locale,renderFilterSelect:l.renderFilterSelect,facets:l.facets.state,value:r.filters,onChange:O,clearSignal:i}):null]})}var gi=new WeakMap,eb=e=>{let t=new Set,r=new Map;for(let n of e)t.add(n.reportHubId),r.set(n.reportHubId,n);return{items:e,ids:t,byId:r,answeredByChunk:new WeakMap}},Ei=(e,t)=>e.businessDate===t.businessDate&&e.sourceType===t.sourceType,t_=(e,t)=>{if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0},r_=(e,t,r,n)=>{let o=new Map;for(let s of t.before)o.set(s.reportHubId,s);let a=n;for(let s of t.after){let i=o.get(s.reportHubId);if(i!==void 0){if(o.delete(s.reportHubId),!Ei(i,s))return null;continue}if(!Ei(s,Jh(e,s.reportHubId))||r(s.reportHubId))return null;a-=1}for(let s of o.values()){if(!Ei(s,Jh(e,s.reportHubId))||r(s.reportHubId))return null;a+=1}return a},Jh=(e,t)=>{let r=e.byId.get(t);if(r===void 0)throw new Error(`[daily-report] The shown answer does not hold report ${t}`);return r},tb=(e,t,r,n)=>{if(e===null)return{items:t,hasAnswerOnlyItems:!1};let o=u=>e.ids.has(u),a=gi.get(e);if(a!==void 0&&a.isReportRemoved===r&&a.removedVersion===n){if(a.stream===t)return a.list;if(a.stream instanceof ct&&t instanceof ct){let u=r_(e,Cp(a.stream,t,e.answeredByChunk,o),r,a.answerOnlyCount);if(u!==null){let p=a.list.hasAnswerOnlyItems===u>0?a.list:{items:a.list.items,hasAnswerOnlyItems:u>0};return gi.set(e,{...a,stream:t,list:p,answerOnlyCount:u}),p}}}let s=new Map;for(let u of Ip(t,e.answeredByChunk,o))s.set(u.reportHubId,u);let i=[],l=0;for(let u of e.items){let p=s.get(u.reportHubId);p!==void 0?i.push(Ei(p,u)?u:p):r(u.reportHubId)||(i.push(u),l+=1)}let d=l>0;if(a!==void 0&&a.list.hasAnswerOnlyItems===d&&t_(a.items,i))return gi.set(e,{stream:t,isReportRemoved:r,removedVersion:n,items:a.items,list:a.list,answerOnlyCount:l}),a.list;let c={items:i,hasAnswerOnlyItems:d};return gi.set(e,{stream:t,isReportRemoved:r,removedVersion:n,items:i,list:c,answerOnlyCount:l}),c};var rb=(e,t,r)=>{let n=Ee(t,0);if(n===void 0)return null;let o=wt(e,r);if(o!==-1){let a=new Set;for(let s of t)a.add(s.reportHubId);for(let s=1;o+s<e.length||o-s>=0;s++){let i=Ee(e,o+s);if(i!==void 0&&a.has(i.reportHubId))return i.reportHubId;let l=Ee(e,o-s);if(l!==void 0&&a.has(l.reportHubId))return l.reportHubId}}return n.reportHubId},tc=(e,t,r,n)=>{if(r===null){let o=Ee(t,0);return n&&o!==void 0?o.reportHubId:null}return wt(t,r)!==-1?r:rb(e,t,r)},nb=(e,t,r)=>e.selected===null?r!==null&&wt(t,r)!==-1?r:null:wt(t,e.selected)!==-1?e.selected:rb(e.items,t,e.selected);import{useEffect as ab,useLayoutEffect as d_,useMemo as sb,useRef as ib,useSyncExternalStore as c_}from"react";var n_=1e3,o_=5e3,a_={combine:"union",committed:null,filters:Jd,generation:0,status:"idle",failure:null,items:null,answered:null},s_=e=>e===400?"invalid":e===404?"unavailable":e===429?"busy":"failed",i_=(e,t)=>e.length===t.length&&e.every((r,n)=>r.length===t[n].length&&r.every((o,a)=>o.length===t[n][a].length&&o.every((s,i)=>s.text===t[n][a][i].text&&s.tier===t[n][a][i].tier))),rc=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),l_=(e,t)=>{let r=hi(e),n=hi(t);return rc(r.authors,n.authors)&&rc(r.sourceTypes,n.sourceTypes)&&rc(r.customers,n.customers)},ob=e=>{let t=a_,r=new Set,n=null,o=null,a=null,s=null,i=null,l=null,d=S=>{t=S;for(let w of r)w()},c=()=>{s!==null&&clearTimeout(s),i!==null&&clearTimeout(i),s=null,i=null},u=(S,w)=>{let x=t.answered;return x!==null&&x.query.text===S.text&&x.query.combine===S.combine&&i_(x.words,w)?x:{query:{text:S.text,combine:S.combine},words:w}},p=S=>{let w=new URLSearchParams({[Le.searchQuery]:S.text,[Le.searchCombine]:S.combine});return Uh(w,S.filters),`${e.apiBasePath}/${Ve.search}?${w.toString()}`},f=(S,w,x,E)=>{if(!x){d({...t,status:"failed",failure:S});return}l!==E&&(l=E,i=setTimeout(()=>{i=null,y(w,!0)},o_))},m=async(S,w,x)=>{let E=new AbortController;n={controller:E};let L={Accept:"application/json"};x&&a!==null&&a.generation===w&&(L["If-None-Match"]=a.value);try{let N=await e.fetch(p(S),{headers:L,cache:"no-store",signal:E.signal});if(E.signal.aborted||w!==t.generation)return;if(N.status===304){t.status!=="done"&&d({...t,status:"done",failure:null});return}if(N.status===401||N.status===403){e.onSessionExpired(),f("failed",S,!1,w);return}if(!N.ok){f(s_(N.status),S,x,w);return}let M=Nu(await N.json(),!_r(S.text));if(E.signal.aborted||w!==t.generation)return;if(M===null){f("failed",S,x,w);return}let T=N.headers.get("ETag");a=T===null?null:{generation:w,value:T},l=null,d({...t,status:"done",failure:null,items:M.items,answered:M.words.length===0?null:u(S,M.words)})}catch{if(E.signal.aborted||w!==t.generation)return;f("failed",S,x,w)}finally{if(n!==null&&n.controller===E&&(n=null),n===null&&o!==null){let N=o;o=null,y(N.query,N.background)}}},y=(S,w)=>{if(n!==null){o={query:S,background:(o===null||o.background)&&w};return}m(S,t.generation,w)};return{getSnapshot:()=>t,subscribe:S=>(r.add(S),()=>{r.delete(S)}),commit:(S,w,x)=>{if(_r(S)&&Kn(x))throw new Error("[daily-report] search: a blank text can be committed only with a filter");let E=Ri(x);if(E!==null)throw new Error(`[daily-report] search: the filter selection cannot be sent (${E})`);c();let L=t.committed,N=L!==null&&L.text===S&&L.combine===w&&l_(L.filters,x),M={text:S,combine:w,filters:x};d({...t,combine:w,committed:M,filters:x,generation:N?t.generation:t.generation+1,status:"searching",failure:null}),y(M,!1)},setCombine:S=>{S!==t.combine&&d({...t,combine:S})},release:()=>{c(),n?.controller.abort(),n=null,o=null,t.committed!==null&&d({combine:t.combine,committed:null,filters:Jd,generation:t.generation+1,status:"idle",failure:null,items:null,answered:null})},invalidate:()=>{let S=t.committed;S!==null&&(s!==null&&clearTimeout(s),s=setTimeout(()=>{s=null,y(S,!0)},n_))},dispose:()=>{c(),n?.controller.abort(),n=null,o=null}}};var lb=({apiBasePath:e,invalidation:t,onSessionExpired:r})=>{let n=ib(r);d_(()=>{n.current=r});let o=sb(()=>ob({apiBasePath:e,onSessionExpired:()=>n.current(),fetch:(i,l)=>fetch(i,l)}),[e]);ab(()=>()=>o.dispose(),[o]);let a=ib(t);ab(()=>{a.current!==t&&(a.current=t,o.invalidate())},[t,o]);let s=c_(o.subscribe,o.getSnapshot,o.getSnapshot);return sb(()=>({...s,commit:o.commit,setCombine:o.setCombine,release:o.release}),[s,o])};import{useCallback as db,useEffect as u_,useLayoutEffect as p_,useMemo as nc,useRef as m_,useState as f_}from"react";var cb=Object.freeze({status:"idle"}),y_=Object.freeze({status:"loading"}),R_=Object.freeze({sourceTypes:[],authors:[],customers:[]}),h_=e=>e===404?"unavailable":e===429?"busy":"failed",oc=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),b_=(e,t)=>oc(e.sourceTypes,t.sourceTypes)&&oc(e.authors,t.authors)&&oc(e.customers,t.customers),S_=(e,t)=>"facets"in t?e.status!=="ready"||!b_(e.facets,t.facets)?{status:"ready",facets:t.facets,reloadFailure:null}:e.reloadFailure===null?e:{status:"ready",facets:e.facets,reloadFailure:null}:e.status==="ready"?{status:"ready",facets:e.facets,reloadFailure:t.failure}:{status:"failed",failure:t.failure},ub=(e,t)=>[...e].sort((r,n)=>{let o=t.compare(r,n);return o!==0?o:r<n?-1:1}).map(r=>({value:r,label:r})),g_=(e,t)=>e.map(r=>pb(r,t));function pb(e,t){let r=Jt(e,t);return{value:e,label:r===void 0?e:r.label}}var mb=({apiBasePath:e,locale:t,sourceTypeConfigs:r,onSessionExpired:n})=>{let[o,a]=f_({apiBasePath:e,load:cb}),s=o.apiBasePath===e?o.load:cb,i=m_(null),l=Ue(()=>({apiBasePath:e,onSessionExpired:n}));p_(()=>{l.current={apiBasePath:e,onSessionExpired:n}}),u_(()=>()=>{i.current?.abort(),i.current=null},[e]);let d=db(()=>{if(i.current!==null)return;let m=new AbortController;i.current=m;let y=l.current.apiBasePath;a(R=>R.apiBasePath===y&&R.load.status==="ready"?R:{apiBasePath:y,load:y_}),(async()=>{let R;try{let D=await fetch(`${y}/${Ve.searchFacets}`,{headers:{Accept:"application/json"},cache:"no-cache",signal:m.signal});if(m.signal.aborted)return;if(D.status===401||D.status===403)l.current.onSessionExpired(),R={failure:"failed"};else if(!D.ok)R={failure:h_(D.status)};else{let b=Wh(await D.json());if(m.signal.aborted)return;R=b===null?{failure:"failed"}:{facets:b}}}catch{if(m.signal.aborted)return;R={failure:"failed"}}i.current=null,a(D=>({apiBasePath:y,load:S_(D.load,R)}))})()},[l]),c=s.status==="ready"?s.facets:R_,u=nc(()=>{let m=new Intl.Collator(t);return{authors:ub(c.authors,m),sourceTypes:g_(c.sourceTypes,r),customers:ub(c.customers,m)}},[c,t,r]),p=db((m,y)=>m==="sourceType"?pb(y,r):{value:y,label:y},[r]),f=nc(()=>s.status==="ready"?{status:"ready",options:u,optionOf:p,reloadFailure:s.reloadFailure}:s,[s,u,p]);return nc(()=>({state:f,load:d}),[f,d])};import{useEffect as bb,useLayoutEffect as v_,useMemo as I_,useRef as C_}from"react";var E_=4294967295,fb=e=>typeof e=="number"&&Number.isInteger(e)&&e>=0&&e<=E_,D_=e=>{if(!Array.isArray(e)||e.length%3!==0)return null;let t=[];for(let r=0;r<e.length;r+=3){let n=e[r],o=e[r+1],a=e[r+2];if(!(typeof n=="number"&&Number.isSafeInteger(n)&&n>=0&&typeof o=="number"&&Number.isSafeInteger(o)&&n<o)||!oo(a))return null;if(r>0){let s=t[r-2];if(s>n||s===n&&t[r-1]===a)return null}t.push(n,o,a)}return t},w_=e=>{if(!(Qt(e)&&fb(e.fingerprint)))return null;if(Object.hasOwn(e,"dense"))return e.dense===!0&&!Object.hasOwn(e,"ranges")?{fingerprint:e.fingerprint,dense:!0}:null;let t=D_(e.ranges);return t===null?null:{fingerprint:e.fingerprint,ranges:t}},T_=e=>{if(!Qt(e))return null;let t={};for(let[r,n]of Object.entries(e)){if(!En(r))return null;let o=w_(n);if(o===null)return null;t[r]=o}return t},yb=(e,t)=>{if(!(Qt(e)&&fb(e.wordsDigest)&&Array.isArray(e.reports)&&Array.isArray(e.deferred)))return null;let r=new Set(t.requestedIds),n=new Set,o=2**t.setCount-1,a=[];for(let i of e.reports){if(!Qt(i))return null;let{reportHubId:l,matchedSets:d}=i;if(!(typeof l=="number"&&St(l)&&r.has(l))||n.has(l)||(n.add(l),t.expectsMatchedSets?!(typeof d=="number"&&Number.isInteger(d)&&d>=0&&d<=o):d!==null))return null;let c=T_(i.fields);if(c===null)return null;a.push({reportHubId:l,matchedSets:d,fields:c})}if(a.length===0&&e.deferred.length>0)return null;let s=[];for(let i of e.deferred){if(!(typeof i=="number"&&St(i)&&r.has(i))||n.has(i))return null;n.add(i),s.push(i)}return{wordsDigest:e.wordsDigest,reports:a,deferred:s}};var Rb=2*no*Zt.maxDetailIds,A_=240,x_=6e4,hb=({apiBasePath:e,fetch:t,answered:r,onSessionExpired:n})=>{let o=r.words.length,a=r.query.combine==="union"&&o>=2,s=mm(r.words),i=new Map,l=new Map,d=0,c=new Map,u=new Set,p=0,f=0,m=null,y=new Set,g=!1,R=I=>{let _=i.get(I);if(_!==void 0)return _;let k={entry:void 0,appliedSequence:0,settledEpoch:null,retriedEpoch:null,revalidated:new Set};return i.set(I,k),l.has(I)||(d+=1),k},D=I=>{for(let _ of I){let k=i.get(_);k!==void 0&&(k.settledEpoch=null)}},b=()=>{if(!(d<=Rb))for(let I of[...i.keys()]){if(d<=Rb)return;l.has(I)||(i.delete(I),c.delete(I),d-=1)}},h=I=>{let _=l.get(I);if(_!==void 0)for(let k of[..._])k()},S=I=>{let _=new URLSearchParams({[Le.searchQuery]:r.query.text,[Le.searchCombine]:r.query.combine,[Le.reportIds]:I.join(",")});return`${e}/${Ve.searchMarks}?${_.toString()}`},w=(I,_)=>{for(let k of I){let O=R(k.reportHubId);O.appliedSequence>_||(O.appliedSequence=_,O.entry=k,i.delete(k.reportHubId),i.set(k.reportHubId,O),h(k.reportHubId))}b()},x=(I,_)=>{let k=[];for(let $ of I){let j=i.get($);j!==void 0&&j.retriedEpoch!==p&&k.push({id:$,record:j})}if(k.length===0)return;let F=setTimeout(()=>{u.delete(F);for(let{id:$,record:j}of k){let W=c.get($);W===void 0||W.timer!==F||(c.delete($),l.has($)?(j.retriedEpoch=p,A.enqueue($)):j.settledEpoch=null)}},_);u.add(F);for(let{id:$,record:j}of k)c.set($,{timer:F,record:j})},E=I=>{for(let _ of I)l.has(_)?A.enqueue(_):D([_])},L=async(I,_)=>{f+=1;let k=f,O=p;for(let W of I)R(W).settledEpoch=p,c.delete(W);b();let F;try{F=await t(S(I),{headers:{Accept:"application/json"},cache:"no-store",signal:_})}catch{return}if(F.status===401||F.status===403){n();return}if(F.status===429){let W=ha(F,x_);W!==null&&O===p&&x(I,W);return}if(!F.ok)return;let $;try{$=await F.json()}catch{return}let j=yb($,{requestedIds:I,setCount:o,expectsMatchedSets:a});_.aborted||j===null||j.wordsDigest!==s||(w(j.reports,k),O===p&&E(j.deferred))},N=()=>{g=!0,queueMicrotask(()=>{g=!1}),m=setTimeout(M,A_)},M=()=>{if(m=null,y.size!==0){for(let I of y)A.enqueue(I);y.clear(),N()}},T=I=>{if(m!==null&&!g){y.add(I);return}A.enqueue(I),m===null&&N()},A=Ra({hasListener:I=>l.has(I),batchSize:Zt.maxDetailIds,inFlightBound:no,send:L});return{indicator:Object.freeze({setCount:o,showsMatchedSets:a}),subscribe:(I,_)=>{let k=l.get(I);k===void 0&&(k=new Set,l.set(I,k),i.has(I)&&(d-=1)),k.add(_);let O=i.get(I),F=O!==void 0&&O.settledEpoch===p;return k.size===1&&!F&&!A.isWanted(I)&&!y.has(I)&&T(I),()=>{let $=l.get(I);$===void 0||!$.delete(_)||$.size>0||(l.delete(I),i.has(I)&&(d+=1),y.delete(I),D(A.release(I)),b())}},read:I=>{let _=i.get(I);return _===void 0?void 0:_.entry},revalidate:(I,_,k)=>{let O=R(I),F=`${_}\0${k}`;O.revalidated.has(F)||(O.revalidated.add(F),y.delete(I),A.enqueue(I))},advanceEpoch:()=>{p+=1;for(let I of u)clearTimeout(I);u.clear(),c.clear(),y.clear();for(let I of l.keys())A.enqueue(I)},dispose:()=>{for(let _ of u)clearTimeout(_);u.clear();let I=[...c.keys(),...y];c.clear(),y.clear(),m!==null&&clearTimeout(m),m=null,D([...A.dispose(),...I])}}};var Sb=({apiBasePath:e,answered:t,shownRevision:r,onSessionExpired:n})=>{let o=C_(n);v_(()=>{o.current=n});let a=I_(()=>t===null?null:hb({apiBasePath:e,answered:t,onSessionExpired:()=>o.current(),fetch:(i,l)=>fetch(i,l)}),[e,t]);bb(()=>{if(a!==null)return()=>a.dispose()},[a]);let s=Ue(()=>({store:a,shownRevision:r}));return bb(()=>{let i=s.current;s.current={store:a,shownRevision:r},a!==null&&i.store===a&&i.shownRevision!==r&&a.advanceEpoch()},[s,a,r]),a};import{useSyncExternalStore as __}from"react";var gb=e=>{let t=e,r=new Set;return{get:()=>t,set:n=>{if(n!==t){t=n;for(let o of[...r])o()}},subscribe:n=>(r.add(n),()=>{r.delete(n)})}},ac=e=>__(e.subscribe,e.get,e.get);import*as Go from"@radix-ui/react-switch";import*as Db from"react";import{jsx as Eb}from"react/jsx-runtime";var Di=Db.forwardRef(({className:e,...t},r)=>Eb(Go.Root,{className:v(`peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-transparent disabled:cursor-not-allowed disabled:opacity-50 ${Dc} ${Tc} ${te}`,e),...t,ref:r,children:Eb(Go.Thumb,{className:`pointer-events-none block rounded-full shadow-lg data-[state=unchecked]:translate-x-0 motion-safe:transition-[translate] ${wc} ${Ac}`})}));Di.displayName=Go.Root.displayName;import{Fragment as eL,jsx as ae,jsxs as Ot}from"react/jsx-runtime";var k_="list",P_=e=>{if(e==="list"||e==="tree"||e==="detailList")return e;throw new Error(`[daily-report] unknown view tab: ${e}`)},F_=()=>({topItem:null,anchorReportHubId:null,measuredHeights:new Map}),H_=v(vc,Bc,"flex flex-wrap items-center gap-2"),B_=v("@container/views",ht),V_=v("mt-0",ht),U_=v("flex flex-1 items-center justify-center",nn),Ab="relative h-4 w-4 p-0 after:absolute after:-inset-1",W_="flex items-center gap-2",K_=v(Ab,"text-slate-600 hover:bg-amber-200/60 hover:text-slate-900 dark:text-slate-300 dark:hover:bg-amber-800/60 dark:hover:text-slate-100"),z_=v(Ab,"text-amber-800 hover:bg-amber-200/60 hover:text-amber-950 dark:text-amber-300 dark:hover:bg-amber-800/60 dark:hover:text-amber-100"),xb=(e,t)=>{let r=oi(t);return[e.totalCount(r),e.searchHitCount(r)]},$_=({count:e})=>{let{labels:t}=z(),[r,n]=en(null),o=Bh(e,r);return ae(Po,{ref:n,text:t.totalCount(o),widestTexts:xb(t,Math.max(e,o))})},j_=({totalCount:e,hitCount:t})=>{let{labels:r}=z();return t!==null?ae(Po,{text:r.searchHitCount(t),widestTexts:xb(r,e===gr?t:Math.max(e,t))}):e===gr?ae("span",{children:r.totalCountLoading}):ae($_,{count:e})},G_=({checked:e,onCheckedChange:t})=>{let{labels:r}=z(),n=wb(),o=wb();return Ot("div",{className:"flex items-center gap-1 pl-1",children:[ae(Di,{id:n,checked:e,onCheckedChange:t,title:r.autoReadTitle,"aria-describedby":o}),ae(No,{htmlFor:n,className:"cursor-pointer select-none text-slate-500 text-xs dark:text-slate-400",children:r.autoRead}),ae("span",{id:o,hidden:!0,children:r.autoReadTitle})]})},Y_=({selectionStore:e,dailyReportItems:t,rowSetSize:r,autoMarkRead:n,userId:o,scrollOffsetRef:a})=>{let s=ac(e);return ae(qd,{dailyReportItems:t,rowSetSize:r,autoMarkRead:n,selectedReportHubId:s,onSelectItem:e.set,userId:o,scrollOffsetRef:a})},q_=({selectionStore:e,dailyReportItems:t,rowSetSize:r,userId:n,scrollRestoreRef:o})=>{let a=ac(e);return ae(Od,{dailyReportItems:t,rowSetSize:r,userId:n,selectedItemId:a,onSelectItem:e.set,scrollRestoreRef:o})},X_=({tabItems:e,actions:t,searchRow:r})=>{let[n,o]=en(k_),{labels:a}=z();return Ot(Bo,{value:n,onValueChange:s=>o(P_(s)),className:B_,children:[Ot("div",{className:v(Cc,Vc,Uc[n]),children:[Ot("div",{className:H_,children:[ae(Vo,{"aria-label":a.viewTabList,className:"flex flex-wrap gap-1",...pf,children:e.map(({value:s,label:i})=>ae(Uo,{value:s,children:i},s))}),t]}),r]}),e.map(({value:s,content:i})=>ae(Bn,{value:s,tabStop:!1,className:V_,children:i},s))]})},Z_=Object.freeze({items:null,generation:0,revision:0,change:"none",scrollRequest:null,restoreOnRelease:!0}),Q_=(e,t,r)=>{let n="update";t===null?n=e.restoreOnRelease?"restore":"release":e.items===null?n="enter":e.generation!==r&&(n="start");let o=n==="enter"||n==="start"||n==="restore"?n:null,a=o===null?e.scrollRequest:{seq:e.scrollRequest===null?1:e.scrollRequest.seq+1,kind:o};return{items:t,generation:r,revision:e.revision+1,change:n,scrollRequest:a,restoreOnRelease:t===null||n==="enter"?!0:e.restoreOnRelease}},J_=({answer:e,hasAnswerOnlyItems:t})=>{let{phase:r,isRevalidating:n}=An(),o=r==="complete"&&!n,a=zn(null);return sc(()=>{!(o&&t)||a.current===e||(a.current=e,wo())},[o,t,e]),null},ic=({userId:e})=>{let[t,r]=en(!1),{labels:n,renderHeader:o,showDevControls:a,apiBasePath:s,onSessionExpired:i,search:l,locale:d,sourceTypeConfigs:c}=z(),{toggleSse:u,createReport:p,refetchData:f,clearCacheAndRefetch:m}=qe(),{isSseEnabled:y,items:g,searchInvalidation:R,isReportRemoved:D,removedVersion:b}=As(),[h]=M_(),S=lb({apiBasePath:s,invalidation:R,onSessionExpired:i}),w=mb({apiBasePath:s,locale:d,sourceTypeConfigs:c,onSessionExpired:i}),x=l===null||S.committed===null?null:S.items,[E,L]=en(Z_);E.items!==x&&L(Q_(E,x,S.generation));let N=wi(()=>x===null?null:eb(x),[x]),M=wi(()=>tb(N,g,D,b),[N,g,D,b]),T=M.items,A=zp(g.length,Um()),I=x===null?A:T.length,[_,k]=en(0),[O]=en(()=>({preSearchTopReportId:null})),F=wi(()=>({request:E.scrollRequest,slot:O}),[E.scrollRequest,O]),$=Sb({apiBasePath:s,answered:x===null?null:S.answered,shownRevision:E.revision,onSessionExpired:i}),j=zn(0),W=Ue(F_),[V]=en(()=>gb(cl(T))),le=zn(null),Te=zn(T),be=zn(E.revision);Tb(()=>{if(be.current===E.revision)return;be.current=E.revision;let Q=Te.current,oe=V.get(),me=oe;E.change==="enter"?(le.current={selected:oe,items:Q},me=tc(Q,T,oe,!0)):E.change==="start"||E.change==="update"?me=tc(Q,T,oe,E.change==="start"):E.change==="restore"&&le.current!==null&&(me=nb(le.current,T,oe)),(E.change==="restore"||E.change==="release")&&(le.current=null),me!==oe&&V.set(me)},[E,T,V]),Tb(()=>{Te.current=T},[T]);let De=zn(!1);sc(()=>{let Q=cl(T);!De.current&&Q!==null&&(De.current=!0,V.get()===null&&V.set(Q))},[T,V]);let se=async()=>{await f()},Ze=async()=>{await m()},We=async()=>{let oe=h.get("businessDate")||ru();S.committed!==null&&(L(Ie=>({...Ie,restoreOnRelease:!1})),k(Ie=>Ie+1),S.release());let me=await p(oe);V.set(me)};sc(()=>{localStorage.getItem("daily-report-auto-read")==="true"&&r(!0)},[]);let q=Q=>{r(Q),localStorage.setItem("daily-report-auto-read",String(Q))},he=wi(()=>[{value:"list",label:n.tabList,content:ae(Y_,{selectionStore:V,dailyReportItems:T,rowSetSize:I,autoMarkRead:t,userId:e,scrollOffsetRef:j})},{value:"tree",label:n.tabTree,content:ae("div",{className:U_,children:n.treeComingSoon})},{value:"detailList",label:n.tabDetailList,content:ae(q_,{selectionStore:V,dailyReportItems:T,rowSetSize:I,userId:e,scrollRestoreRef:W})}],[T,I,t,e,n,V,W]);return Ot(eL,{children:[o({title:n.title,annotation:Ot("div",{className:"flex flex-wrap items-center gap-2 leading-1",children:[ae(Fo,{}),ae(j_,{totalCount:A,hitCount:x===null?null:I}),ae("span",{children:n.debounce(cn)})]})}),ae("div",{className:ta,children:Ot("div",{className:ra,children:[x!==null&&ae(J_,{answer:x,hasAnswerOnlyItems:M.hasAnswerOnlyItems}),ae(pn.Provider,{value:x===null?"date":"ids",children:ae(rt.Provider,{value:$,children:ae(bl.Provider,{value:F,children:ae(X_,{tabItems:he,searchRow:l===null?null:ae(Qh,{labels:n,debounceMs:l.debounceMs,search:S,shownCount:x===null?null:I,onCommit:S.commit,onCombineChange:S.setCombine,onRelease:S.release,clearSignal:_,filters:l.renderFilterSelect===null?null:{renderFilterSelect:l.renderFilterSelect,locale:d,facets:w}}),actions:Ot("div",{className:"ml-auto flex flex-wrap items-center gap-2 px-1",children:[Ot(ir,{size:"sm",onClick:We,className:"flex h-6 items-center gap-1 rounded-lg bg-amber-700 px-2 font-medium text-white text-xs shadow-xs hover:bg-amber-800 dark:bg-amber-700 dark:hover:bg-amber-800",title:n.createReportTitle,children:[ae(L_,{className:"h-3 w-3"}),ae("span",{children:n.createReport})]}),a&&Ot("div",{className:"hidden h-6 items-center gap-1 rounded-lg border border-amber-300/70 border-solid bg-amber-50/60 px-[3px] text-slate-600 sm:flex dark:border-amber-700/50 dark:bg-amber-950/40 dark:text-slate-300",title:n.devControls,"data-testid":"dev-controls-toolbox",children:[ae("span",{className:"select-none font-bold font-mono text-amber-800 text-xs uppercase dark:text-amber-200",children:"dev"}),ae(Di,{"aria-label":n.devSseToggle,title:n.devSseToggle,checked:y,onCheckedChange:u}),Ot("div",{className:W_,"data-testid":"dev-icon-buttons",children:[ae(ir,{variant:"ghost",size:"icon",onClick:se,className:K_,title:n.devReload,"data-testid":"dev-reload-btn",children:ae(O_,{className:"size-3"})}),ae(ir,{variant:"ghost",size:"icon",onClick:Ze,className:z_,title:n.devClearCache,"data-testid":"dev-clear-cache-btn",children:ae(N_,{className:"size-3"})})]})]}),ae(G_,{checked:t,onCheckedChange:q})]})})})})})]})})]})};import{Fragment as Ib,jsx as Oe,jsxs as Ti}from"react/jsx-runtime";var oL=v(ht,yr),aL=v("flex min-h-0 flex-1 flex-col items-center justify-center gap-4 text-slate-500 dark:text-slate-300",Pt,te),sL=v("font-bold",jn),iL=v("font-medium",jn),lL=v("rounded bg-slate-100 px-4 py-2 text-slate-700 text-sm hover:bg-slate-200 dark:bg-slate-800 dark:text-slate-300 dark:hover:bg-slate-700",te),dL=({isFailed:e,handOver:t})=>{let{labels:r,renderHeader:n}=z(),o=Cb(null),a=tL(i=>(o.current=i,t.take()&&Fr(i)&&ar([i]),()=>{o.current=null,i.contains(Ke(i))&&t.request()}),[t]),s=()=>{ar([o.current]),ds()};return Ti(Ib,{children:[n({title:r.title,annotation:e?Oe("span",{className:sL,children:r.loadErrorBadge}):Ti("div",{className:"flex flex-wrap items-center gap-2 leading-none",children:[Oe(Fo,{}),Oe("span",{children:r.totalCountLoading}),Oe("span",{children:r.debounce(cn)})]})}),Oe("div",{className:ta,children:Oe("div",{className:ra,children:Oe("div",{className:oL,children:Oe("div",{ref:a,tabIndex:-1,...ff,"data-testid":"daily-report-status-panel","data-phase":e?"failed":"loading",className:v(aL,e&&"border-red-200 dark:border-red-900"),children:e?Ti(Ib,{children:[Oe("p",{className:iL,children:r.loadError}),Oe("button",{type:"button","data-testid":"daily-report-load-error-retry",onClick:s,className:lL,children:r.reload})]}):Oe("p",{children:r.loadingIds})})})})})]})},cL=()=>{let{labels:e}=z(),t=Bm();return Oe(ai,{announcement:Hd(t,e),testId:"daily-report-stream-announcer"})},uL=({user:e,userId:t})=>{let{apiBasePath:r,onSessionExpired:n}=z(),o=An(),[a]=nL(UR),s=Cb(n);rL(()=>{s.current=n}),vb(()=>{Eo({apiBasePath:r,userKey:t??null})},[r,t]),vb(()=>{o.phase==="auth-required"&&s.current()},[o.phase]);let i=o.hasItems||o.phase==="complete";return Ti(Wl,{children:[Oe(cL,{}),Oe(Fd.Provider,{value:!1,children:Oe(Cd.Provider,{value:a,children:Oe(jl,{user:e,userId:t,children:i?Oe(ic,{userId:t}):Oe(dL,{isFailed:o.phase==="failed",handOver:a})},t??"anonymous")})})]})},pL=({config:e,...t})=>Oe(Wi,{config:e,children:Oe(uL,{...t})});var mL=new Set(fm.filter(e=>e!=="clearCache")),fL=({actionResult:e,actionStatus:t,currentUrl:r,defaultShouldRevalidate:n,formAction:o,formData:a,formEncType:s,formMethod:i,json:l,nextUrl:d,text:c})=>{if(!n)return!1;if(!(r.pathname===d.pathname&&r.search===d.search&&r.hash===d.hash))return n;if(a){let f=a.get(ut.intent);if(typeof f=="string"&&mL.has(f))return!1}return e!==void 0||t!==void 0||o!==void 0||a!==void 0||s!==void 0||i!==void 0||l!==void 0||c!==void 0?n:!1},yL=e=>{let t=async r=>{_l();let n=await r.serverLoader(),o=n.userId;return Cl({apiBasePath:e?.apiBasePath,userKey:typeof o=="string"?o:null}),n};return t.hydrate=!0,t};export{Wu as DAILY_REPORT_LABEL_CATALOGS,Fi as DAILY_REPORT_LABEL_KEYS,Yo as DAILY_REPORT_LATTICE_BLOCK_QUANTUM_CLASS_NAME,JS as DAILY_REPORT_LAYOUT_LATTICE_PX,Qd as DAILY_REPORT_SEARCH_FILTER_FACETS,jl as DailyReportActionProvider,Gn as DailyReportAttachmentIndicator,Wi as DailyReportConfigProvider,Od as DailyReportDetailList,Wl as DailyReportErrorProvider,Fo as DailyReportIdsStreamStatus,qd as DailyReportList,pL as DailyReportPage,ic as DailyReportResolvedContent,Cl as bootstrapDailyReportIdsStreamSession,yL as createDailyReportClientLoader,fL as dailyReportShouldRevalidate,so as defaultDailyReportClientConfig,Eo as ensureDailyReportIdsStreamSession,uD as foldDailyReportSourceTypeToken,_l as primeDailyReportIdsStreamSession,Om as readDailyReportIdsStreamRows,Vi as resolveDailyReportLabels,Jt as resolveSourceTypeConfig,cs as resyncDailyReportIdsStream,ZD as useDailyReportActionContext,pd as useDailyReportComments,z as useDailyReportConfig,Qi as useDailyReportDetail,sD as useDailyReportIdsStream,Ji as useDailyReportPrefetch,Fl as useDailyReportSseConnection};
|