@aiquants/daily-report 0.46.1 → 0.47.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 +43 -0
- package/README.md +51 -16
- package/dist/client.d.mts +13 -9
- package/dist/client.d.ts +13 -9
- package/dist/client.js +5 -5
- package/dist/client.mjs +5 -5
- package/dist/index.d.mts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/dist/{instrumentation-CobsTeyw.d.mts → instrumentation-Bks6vyM7.d.mts} +1 -1
- package/dist/{instrumentation-Dz7Uh7dT.d.ts → instrumentation-CCr0sezP.d.ts} +1 -1
- package/dist/{search-marks-wire-BiImBos8.d.mts → search-marks-wire-CvOvhO30.d.mts} +1 -1
- package/dist/{search-marks-wire-C_vjmxwf.d.ts → search-marks-wire-v7GTHpp7.d.ts} +1 -1
- package/dist/server.d.mts +27 -6
- package/dist/server.d.ts +27 -6
- package/dist/server.js +11 -11
- package/dist/server.mjs +11 -11
- package/dist/{source-types-Cg7T2dm6.d.ts → source-types-C1LvfRRJ.d.ts} +20 -2
- package/dist/{source-types-Hy_znWJl.d.mts → source-types-a15dGIN1.d.mts} +20 -2
- package/dist/{sse-schema-BmhpWHVK.d.ts → sse-schema-BLe0x7BD.d.ts} +48 -34
- package/dist/{sse-schema-CM_YM7xU.d.mts → sse-schema-Bk_iO1vF.d.mts} +48 -34
- package/dist/styles/daily-report.standalone.css +1 -1
- package/dist/testing.d.mts +3 -3
- package/dist/testing.d.ts +3 -3
- package/dist/{types-BP1kIGMo.d.mts → types-CcUNWIyC.d.mts} +2 -0
- package/dist/{types-BP1kIGMo.d.ts → types-CcUNWIyC.d.ts} +2 -0
- package/package.json +2 -2
package/dist/client.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import kS from"lucide-react/dist/esm/icons/paperclip.js";var NS="data-daily-report-row-surface",_t={[NS]:"",role:"gridcell"},Yc="data-daily-report-active",Mr="data-daily-report-scrolling",ur=8,OS=4,qc=ur-OS;var Sa="[--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]",Pr=`${Sa} h-[calc-size(auto,round(up,size,var(--aqdr-lattice-block)))]`,kr="p-[8px]",Xc="pr-[8px]",ga="contain-size contain-layout contain-style",Qc="contain-strict",Zt="pointer-events-none absolute size-px whitespace-nowrap opacity-0 select-none contain-layout",le="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-blue-600 dark:focus-visible:outline-blue-400";var rl="[--aqdr-text-quiet:oklch(44%_0.046_257.417)] dark:[--aqdr-text-quiet:oklch(77%_0.040_256.788)]",de=`${rl} text-(--aqdr-text-quiet)`,pr=`border-slate-500 dark:border-slate-500 ${rl} placeholder:text-(--aqdr-text-quiet)`,Zc="-mx-[4px] px-[4px] pb-[4px] scroll-p-[4px]",nl="scrollbar-thin [scrollbar-gutter:stable]",ol=`-m-[4px] overflow-hidden p-[4px] ${nl}`,Jc="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white",Ea="rounded-[calc(var(--radius-2xl)+8px)]",Da="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]",eu="[: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",Lt="rounded-2xl border border-solid border-slate-200 bg-white p-[15px] shadow-sm dark:border-slate-700 dark:bg-slate-900/70",wa=16,An=`rounded-xl border border-dashed border-slate-300 bg-slate-50 p-[11px] ${de} text-sm dark:border-slate-600 dark:bg-slate-900/40`,tu=12,Ta="rounded-xl bg-slate-50 p-3 text-slate-700 text-sm leading-6 dark:bg-slate-800/60 dark:text-slate-200";var ru="min-h-24",nu="flex h-6 items-center",Aa="[--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",st=`flex size-6 shrink-0 items-center justify-center rounded-full hover:bg-slate-200 dark:hover:bg-slate-700 ${le}`,ou="-mx-1",au="flex items-center gap-1",it="inline-flex h-6 items-center rounded-full px-3",su="inline-flex h-6 items-center rounded-full border border-solid px-[11px]",iu="inline-flex h-6 shrink-0 items-center rounded px-2 font-semibold text-xs tracking-wide",Or="size-4",qe={starOff:`${Or} text-slate-500 dark:text-slate-400 forced-colors:text-[CanvasText]`,starOn:`${Or} fill-yellow-400 text-yellow-700 dark:text-yellow-400 forced-colors:fill-[Highlight] forced-colors:text-[Highlight]`,read:`${Or} text-blue-600 dark:text-blue-400 forced-colors:text-[CanvasText]`,delete:`${Or} text-slate-500 hover:text-red-600 dark:text-slate-400 dark:hover:text-red-400 forced-colors:text-[CanvasText]`,deletePending:`${Or} text-red-600 dark:text-red-400 forced-colors:text-[CanvasText]`,edit:`${Or} text-slate-500 dark:text-slate-400 forced-colors:text-[CanvasText]`},lu="h-6 w-10 border-4 border-solid",du="size-4 data-[state=checked]:translate-x-4",cu="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]",uu="bg-white dark:bg-slate-950 forced-colors:bg-[ButtonText]";var pu="rounded-xl bg-slate-100 p-1 dark:bg-slate-800",mu="rounded-xl border border-solid p-[3px]",fu=`relative inline-flex h-6 items-center justify-center whitespace-nowrap rounded-lg px-2 font-medium ${de} text-xs 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`,MS="supports-[margin-left:round(down,1px,1px)]:ml-[max(0px,round(down,calc((100%-72rem)/2),var(--aqdr-lattice-block)))]",PS="bg-slate-50 dark:bg-slate-950",Nt="flex min-h-0 flex-1 flex-col",va=`${Nt} ${PS}`,xa=`${Nt} mx-auto w-full max-w-6xl ${Sa} px-[var(--aqdr-lattice-block)] pt-[var(--aqdr-lattice-block)] ${MS}`,yu=`relative z-[1] flex shrink-0 flex-col ${Pr}`,Ru="flex grow flex-col justify-between",hu="grid min-w-0 grid-cols-[max-content_minmax(0,1fr)_max-content] grid-rows-[minmax(2rem,auto)_auto] items-end",bu="grid min-w-0 grid-cols-1 gap-2 sm:grid-cols-[minmax(0,2fr)_minmax(0,1fr)_minmax(0,3fr)]",Su="m-0 min-w-0 border-0 p-0",gu="mb-1 p-0 text-slate-700 text-xs leading-4 dark:text-slate-200",Eu="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-900 dark:text-yellow-50 forced-colors:forced-color-adjust-none forced-colors:bg-[Mark] forced-colors:text-[MarkText]",ho="text-red-800 dark:text-red-300",Du="bg-white dark:bg-slate-900",Ca=`min-h-0 flex-1 overflow-clip contain-size ${Sa}`,Ia="flex h-full flex-col contain-size contain-layout contain-style",wu="relative inline-block whitespace-nowrap tabular-nums",_a="invisible grid",Qr="col-start-1 row-start-1",Tu="absolute inset-0 contain-size contain-layout contain-style",La=`[&_.aqvs-no-items-text]:py-4 ${rl} [&_.aqvs-no-items-text]:text-(--aqdr-text-quiet)`,Au="border-slate-200/80 bg-slate-100/60 dark:border-slate-800 dark:bg-slate-900/60 dark:text-slate-200",vu="ml-[8px]",xu={list:"mr-[8px] [@media(max-width:639px)]:mr-[16px] @max-[460px]/views:mr-[16px]",tree:"mr-[8px]",detailList:"mr-[16px]"},Zr=`font-semibold ${de} text-xs uppercase tracking-wide`,mr=`m-0 ${Zr}`,fr="text-balance wrap-anywhere [word-break:auto-phrase]",Cu="[--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)]",Na=`${Cu} [&_.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]`,Oa="[--aqvs-focus-ring-color:var(--color-blue-600)] dark:[--aqvs-focus-ring-color:var(--color-blue-400)]",Iu=`${Cu} [scrollbar-color:var(--aqdr-scroll-bar-thumb)_var(--aqdr-scroll-bar-track)]`;import{jsx as _u,jsxs as BS}from"react/jsx-runtime";var FS=2,HS=`inline-flex h-6 shrink-0 items-center gap-1 ${de}`,al=(e,t)=>`${e}: ${t}`,sl=e=>e>=FS?String(e):null,bo=({id:e,count:t,label:r})=>{if(t<=0)return null;let n=al(r,t),o=sl(t);return BS("span",{id:e,className:HS,title:n,role:"img","aria-label":n,"data-testid":"daily-report-attachment-indicator","data-attachment-count":t,children:[_u(kS,{className:Or,"aria-hidden":"true"}),o!==null&&_u("span",{className:"font-semibold text-xs leading-4",children:o})]})};import{useCallback as Ye,useEffect as gn,useLayoutEffect as Qh,useMemo as bc,useRef as bt,useState as En}from"react";var Jr=Object.freeze({text:"",runs:Object.freeze([])}),Ot=e=>e.length===0?Jr:{text:e,runs:[{displayStart:0,displayEnd:e.length,sourceStart:0,sourceEnd:e.length}]},Lu=(e,t,r)=>t>=r?Jr:{text:e.slice(t,r),runs:[{displayStart:0,displayEnd:r-t,sourceStart:t,sourceEnd:r}]},il=(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}))},ll=e=>e.displayEnd-e.displayStart===e.sourceEnd-e.sourceStart,So=(e,t,r)=>{if(t>=r)return Jr;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(ll(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(...il(a-t,s-t,o.sourceStart,o.sourceEnd))}return{text:e.text.slice(t,r),runs:n}},vn=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?Jr:{text:t,runs:r}},dl=e=>{let t=e.text.trimEnd().length,r=Math.min(t,e.text.length-e.text.trimStart().length);return So(e,r,t)},Fr=e=>typeof e=="string"?dl(Ot(e)):Jr,Ma=(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 m=s;m<e.runs.length&&e.runs[m].displayStart<c;m++){let p=e.runs[m],f=Math.max(p.displayStart,d),y=Math.min(p.displayEnd,c);if(!(f>=y))if(ll(p)){let g=p.sourceStart+(f-p.displayStart);a.push({displayStart:f+u,displayEnd:y+u,sourceStart:g,sourceEnd:g+(y-f)})}else a.push(...il(f+u,y+u,p.sourceStart,p.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?Jr:{text:o,runs:a}},US=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},VS=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},Nu=e=>{let t=e.normalize("NFC");if(t===e)return Ot(e);let r=US(e),n=r.map(s=>s.shown).join("")===t?r:VS(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(...il(a,d,s,i)),a=d}return{text:t,runs:o}},Ou=(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(ll(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},Mu=String.raw`<br\s*\/?\s*>`,Pu=String.raw`<\/p>`,ku="<[^>]+>",WS=new RegExp(String.raw`(${Mu}|${Pu}|\r?\n)|${ku}`,"gi"),Fu=new RegExp(Mu,"gi"),zS=new RegExp(Pu,"gi"),KS=new RegExp(ku,"g"),Hu=(e,t)=>{if(!e)return[];let r=[],n=[],o=0,a=()=>{let s=vn(n);n=[];let i=dl({text:s.text.replace(/ /g," "),runs:s.runs});i.text.length>0&&r.push(i)};for(let s of e.matchAll(WS))if(n.push(Lu(e,o,s.index)),o=s.index+s[0].length,s[1]!==void 0&&(a(),r.length===t))return r;return n.push(Lu(e,o,e.length)),a(),r},Bu=e=>Ma(Ma(Ma(Ot(e),Fu,`
|
|
2
|
-
`),
|
|
3
|
-
`),
|
|
4
|
-
`)):Jr;var $S=Object.freeze({text:"-",runs:Object.freeze([])}),Ke=e=>{let t=Fr(e);return t.text===""?$S:t},Hr=e=>Ke(e).text,Le=e=>{if(!e)return"-";if(typeof e!="string")return e instanceof Date?Le(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 lE,useCallback as dE,useContext as jp,useEffect as cE,useState as uE}from"react";import{z as xl}from"zod/v3";var jS=/^(\d{4})([-/])(\d{2})\2(\d{2})$/;var Pa=e=>e<10?`0${e}`:`${e}`,GS=e=>{if(Number.isNaN(e.getTime()))return null;let t=e.getFullYear(),r=Pa(e.getMonth()+1),n=Pa(e.getDate());return`${t}-${r}-${n}`},Vu=e=>{let t=jS.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}`},go=e=>Vu(e)===e,Wu=(e=new Date)=>{if(Number.isNaN(e.getTime()))throw new Error("[daily-report] resolveTodayBusinessDateKey needs a valid Date");return`${e.getFullYear()}-${Pa(e.getMonth()+1)}-${Pa(e.getDate())}`},Eo=e=>e==null?null:e instanceof Date?GS(e):Vu(e);import{z as YS}from"zod/v3";var Mt=e=>Number.isSafeInteger(e)&&e>0,Xe=YS.number().int().positive().max(Number.MAX_SAFE_INTEGER);import{z as be}from"zod/v3";var ka=/^(?:[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 en=Symbol("daily-report wire mismatch"),Jt=(e,t,r)=>(e.issues.push({...r,path:t===null?[...e.path]:[...e.path,t]}),en),ju=e=>e===null?"null":Array.isArray(e)?"array":Number.isNaN(e)?"nan":typeof e,tn=(e,t)=>({code:"invalid_type",expected:e,received:ju(t)}),qS=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),XS=e=>{let t=0;for(let r in e)t+=1;return t},zu=(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},xn=e=>{let t=Object.keys(e),r=Object.values(e);return(n,o)=>{if(!qS(n))return Jt(o,null,tn("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===en){s=!0;continue}a===null&&u!==c&&(a=zu(n,t,l)),a!==null&&(u!==void 0||d in n)&&(a[d]=u)}return s?en:a!==null?a:XS(n)===i?n:zu(n,t,t.length)}},Do=e=>(t,r,n)=>{r.path.push(n);let o=e(t,r);return r.path.pop(),o},wo=e=>(t,r,n)=>{if(!Array.isArray(t))return Jt(r,n,tn("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===en?a=!0:l!==i&&(o===t&&(o=t.slice()),o[s]=l)}return r.path.pop(),a?en:o},xe=(e,t,r)=>e==null||typeof e=="string"?e:Jt(t,r,tn("string",e)),Ku=(e,t,r)=>e===null||typeof e=="string"?e:Jt(t,r,tn("string",e)),$u=(e,t,r)=>typeof e=="string"?e:Jt(t,r,tn("string",e)),QS=(e,t,r)=>e===null||typeof e=="number"&&!Number.isNaN(e)?e:Jt(t,r,tn("number",e)),To=(e,t,r)=>typeof e=="boolean"?e:Jt(t,r,tn("boolean",e)),cl=(e,t,r)=>{if(typeof e=="number"&&Mt(e))return e;for(let{message:n,path:o,...a}of Xe.safeParse(e).error.issues)Jt(t,r,a);return en},Gu={present:!0,absent:!0,unknown:!0},Yu=Object.keys(Gu),ZS=Yu.map(e=>`'${e}'`).join(" | "),JS=(e,t,r)=>typeof e!="string"?Jt(t,r,{code:"invalid_type",expected:ZS,received:ju(e)}):Object.hasOwn(Gu,e)?e:Jt(t,r,{code:"invalid_enum_value",received:e,options:[...Yu]}),qu=xn({name:xe,affiliation:xe}),Xu=xn({name:xe,text:xe,color:xe}),Qu=xn({id:cl,name:xe,color:xe}),Zu=xn({id:cl,userId:xe,userName:xe,content:xe,createdAt:xe,isMine:To}),eg=xn({id:$u,fileName:$u,fileType:Ku,fileSize:QS,createdAt:Ku,state:JS,hasThumbnail:To}),tg=xn({reportHubId:cl,date:xe,createdAt:xe,author:xe,userId:xe,sourceType:xe,employeeName:xe,updatedBy:xe,updatedAt:xe,category:xe,creationCategory:xe,visitTimeFrom:xe,visitTimeTo:xe,customerName:xe,interviewers:wo(Do(qu)),subject:xe,content:xe,externalComments:wo(Do(Xu)),isRead:To,isStarred:To,isDraft:To,labels:wo(Do(Qu)),postedComments:wo(Do(Zu)),attachments:wo(Do(eg))}),Ao=(e,t)=>{let r={path:[],issues:[]},n=e(t,r);return n===en?{ok:!1,issues:r.issues}:{ok:!0,value:n}},Ju=e=>Ao(tg,e),ep=e=>Ao(qu,e),tp=e=>Ao(Xu,e),rp=e=>Ao(Qu,e),np=e=>Ao(Zu,e);var op=["auth-required","forbidden","resync-required"],ul=15e3,ap="lastEventId",rg=/^\d{1,15}-\d{1,15}$/,Fa=e=>rg.test(e);var vo=e=>be.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 be.NEVER}),uO=vo(ep),pO=vo(tp),mO=vo(rp),pl=vo(np),yr=vo(Ju),xo=be.string().regex(ka),sp=be.object({type:be.literal("connected")}),ip=be.object({type:be.literal("status-update"),reportHubId:Xe,statusType:be.enum(["star","read"]),value:be.boolean(),clientTempId:xo}),ml=be.string(),lp=be.object({type:be.literal("comment-add"),reportHubId:Xe,comment:pl,clientTempId:xo,sourceType:ml}),dp=be.object({type:be.literal("comment-delete"),reportHubId:Xe,commentId:Xe,clientTempId:xo,sourceType:ml}),Ha={recipientRawUserId:Xe.optional()},ng=ip.extend(Ha),og=lp.extend(Ha),ag=dp.extend(Ha),Cn={reportHubId:Xe,report:yr,clientTempId:xo},fl={...Ha,actorRawUserId:Xe},yl={viewerIsActor:be.boolean()},sg=be.object({type:be.literal("report-create"),...Cn,...yl}),ig=be.object({type:be.literal("report-update"),...Cn,...yl}),lg=be.object({type:be.literal("report-publish"),...Cn,...yl}),dg=be.object({type:be.literal("report-create"),...Cn,...fl}),cg=be.object({type:be.literal("report-update"),...Cn,...fl}),ug=be.object({type:be.literal("report-publish"),...Cn,...fl}),cp=be.object({type:be.literal("report-delete"),reportHubId:Xe,clientTempId:xo,sourceType:ml}),up=be.discriminatedUnion("type",[sp,ip,lp,dp,sg,ig,lg,cp]),fO=be.discriminatedUnion("type",[sp,ng,og,ag,dg,cg,ug,cp]);var Ba="ids-columns",Rl=e=>{if(typeof e!="object"||e===null)return"unknown";let{kind:t}=e;return t==="chunk"?"chunk":t==="error"?"error":"unknown"},pg=e=>typeof e=="number"&&Mt(e),mg=e=>{if(typeof e!="object"||e===null)return!1;let{businessDate:t,reportHubId:r}=e;return(t===null||typeof t=="string")&&typeof r=="number"},fg=4,yg=e=>{let t=fg;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}}},Rg=/^[0-9a-f]{1,16}$/,hg=e=>Mt(e.reportHubId)&&(e.businessDate===null||go(e.businessDate)),bg=e=>typeof e=="string"&&Rg.test(e),Sg=Object.freeze({kind:"absent"}),gg=Object.freeze({kind:"value",value:null}),Eg=e=>e===void 0?Sg:e===null?gg:typeof e=="string"&&Fa(e)?{kind:"value",value:e}:{kind:"malformed",received:e},pp=e=>{if(Rl(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:m}=e;if(typeof s!="boolean"||!(i===null||mg(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 p=yg(t.length),f=0,y=null,g=0;for(let R=0;R<r.length;R++){let E=r[R],S=n[R];if(!(E===null||typeof E=="string"&&go(E))||R>0&&E===r[R-1]||typeof S!="number"||!Number.isSafeInteger(S)||S<1)return null;let h=f+S;if(h>t.length)return null;for(;f<h;f++){let b=t[f],D=a[f];if(!(pg(b)&&p(b))||typeof D!="number"||!Number.isSafeInteger(D)||D<0||D>=o.length||f>0&&!Dg(y,g,E,b))return null;y=E,g=b}}return f!==t.length?null:{rows:e,isLast:s,resumeCursor:i!==null&&hg(i)?i:null,total:typeof l=="number"&&Number.isSafeInteger(l)&&l>=0?l:null,snapshot:bg(d)?d:null,provisional:c===!0,restarted:u===!0,streamAnchor:Eg(m)}},mp=(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 fp=(e,t,r,n)=>e!==r?e===null?1:r===null||e>r?-1:1:n-t,Dg=(e,t,r,n)=>fp(e,t,r,n)<0,yp=(e,t)=>fp(e.businessDate,e.reportHubId,t.businessDate,t.reportHubId);var $e=Object.freeze({businessDate:"business-date",idsStream:Ba,report:"report",search:"search",reports:"reports",searchMarks:"search-marks",searchFacets:"search-facets",action:"action"}),Ue=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 Rp=(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)}}},DO=Object.freeze(["API","Action","Attachment","ExternalSource","Isolation","Reads","Refresh","Search","SSE","SseReader","Server","Service","Streams","Visibility","ActionProvider","DetailLoader","IdsStream","SseConnection"]),hp=e=>`[DailyReport${e}]`,Pt=(e,t,r)=>e===void 0?Rp(t,hp(r)):Rp(0,hp(r),e);import{z as kt}from"zod/v3";var wg=kt.discriminatedUnion("outcome",[kt.object({reportHubId:Xe,outcome:kt.literal("ok"),report:yr}).strict(),kt.object({reportHubId:Xe,outcome:kt.literal("not_found")}).strict(),kt.object({reportHubId:Xe,outcome:kt.literal("failed")}).strict()]),bp=e=>kt.object({outcomes:kt.array(wg)}).strict().superRefine(({outcomes:t},r)=>{t.length!==e.length&&r.addIssue({code:kt.ZodIssueCode.custom,path:["outcomes"],message:"must hold one outcome per requested id"}),t.forEach((n,o)=>{n.reportHubId!==e[o]&&r.addIssue({code:kt.ZodIssueCode.custom,path:["outcomes",o,"reportHubId"],message:"must be the requested id at this position"}),n.outcome==="ok"&&n.report.reportHubId!==n.reportHubId&&r.addIssue({code:kt.ZodIssueCode.custom,path:["outcomes",o,"report","reportHubId"],message:"must be the outcome's id"})})});var Rr=Object.freeze({maxQueryLength:500,maxSets:16,maxWordsPerSet:16,maxWords:32,maxWordLength:100,maxDetailIds:100}),Tg=2,Co=2,In=Object.freeze({word:0,reading:1}),Io=e=>e===In.word||e===In.reading;var hr=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},Ag=2*(1+Tg),vg=e=>{if(!Array.isArray(e)||e.length===0||e.length>Ag)return null;let t=[],r=new Set;for(let n of e){if(!hr(n))return null;let{text:o,tier:a}=n;if(typeof o!="string"||o.length===0||o.length>Rr.maxWordLength||r.has(o)||!Io(a)||(t.length===0?a!==In.word:a<t[t.length-1].tier))return null;r.add(o),t.push({text:o,tier:a})}return t},xg=(e,t)=>{if(!Array.isArray(e))return null;if(!t)return e.length===0?[]:null;if(e.length===0||e.length>Rr.maxSets)return null;let r=[],n=0;for(let o of e){if(!Array.isArray(o)||o.length===0||o.length>Rr.maxWordsPerSet||(n+=o.length,n>Rr.maxWords))return null;let a=[];for(let s of o){let i=vg(s);if(i===null)return null;a.push(i)}r.push(a)}return r},Sp=(e,t)=>{if(!hr(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=xg(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"||!go(d))||typeof c!="string"||c.length===0)return null;s.push({reportHubId:l,businessDate:d,sourceType:c})}return{items:s,words:a}};var Ua=e=>e.issues.map(t=>`${t.path.length===0?"(root)":t.path.join(".")}: ${t.code}`).join("; ");var Cg=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,Me=(e,t,r)=>new RangeError(`[daily-report] ${e} must be ${t}; got ${Cg(r)}`),gp=(e,t)=>new TypeError(`[daily-report] ${e} must be ${t}`),_o=(e,t,r)=>Me(e,`one of ${r.map(n=>JSON.stringify(n)).join(", ")}`,t),ut=(e,t,r,n)=>{if(typeof t=="number"&&Number.isSafeInteger(t)&&t>=r&&(n===void 0||t<=n))return t;throw Me(e,n===void 0?`an integer >= ${r}`:`an integer from ${r} to ${n}`,t)};var Va=({hasListener:e,batchSize:t,inFlightBound:r,send:n})=>{ut("createIdBatchScheduler: batchSize",t,1),ut("createIdBatchScheduler: inFlightBound",r,1);let o=new Set,a=new Map,s=!1,i=()=>{let c=[],u=[...o];for(let m=u.length-1;m>=0&&c.length<t;m--){let p=u[m];o.delete(p),e(p)&&c.push(p)}return c.reverse()},l=c=>{let u=new AbortController;a.set(u,c);let m=()=>{a.delete(u),d()},p=f=>{m(),u.signal.aborted&&f===u.signal.reason||globalThis.reportError(f)};n(c,u.signal).then(m,p)},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[m,p]of a)m.signal.aborted||!p.includes(c)||p.some(e)||(m.abort(),u.push(...p));return u},dispose:()=>{let c=[...o];o.clear();for(let[u,m]of a)u.signal.aborted||(u.abort(),c.push(...m));return c}}};var Ig=/^[1-9][0-9]*$/,_g=/^(?:0|[1-9][0-9]*)$/,Ep=e=>{if(e===null||!Ig.test(e))return null;let t=Number(e);return Mt(t)?t:null},_n=e=>{if(e===null||!_g.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null};var Lg=2**31-1,Wa=(e,t)=>{let r=ut("holdDelayMsOf: maxDelayMs",t,0,Lg),n=_n(e.headers.get("Retry-After"));if(n===null)return null;let o=n*1e3;return o<=r?o:null};var Dp={request:e=>requestAnimationFrame(e),cancel:e=>cancelAnimationFrame(e)},wp=({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 zg}from"@aiquants/virtualscroll";import{createContext as Kg,useMemo as $g}from"react";import{useContext as Ng}from"react";var jt=(e,t,r)=>{let n=Ng(e);if(n===null)throw new Error(`[daily-report] ${t} must be used within a ${r}`);return n};import{resolveVirtualScrollLabels as Og,resolveVirtualScrollLocale as Mg,VIRTUAL_SCROLL_LABEL_CATALOGS as Tp,VIRTUAL_SCROLL_LABEL_KEYS as Sl}from"@aiquants/virtualscroll";var xp=["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"],Cp=["totalCount","debounce","streamProgressCount","streamProgressRatio","streamRetrying","reportLoadFailed","reportSummaryLoadFailed","interviewerWithAffiliation","operationFailed","noticeRepeated","rowState","rowEditingState","listRowPosition","listRowPositionInUnknownTotal","searchHitCount","searchFailed","searchMatchedKeywords","searchMatchedKeywordsDescription","searchFieldMatched","searchFieldMatchedByReading","searchFiltersToggle","searchFiltersFailed"],hl=[...Sl,...xp,...Cp];var Ap=Object.freeze({en:"en-US",ja:"ja-JP"}),Pg=Object.freeze({en:new Intl.NumberFormat(Ap.en),ja:new Intl.NumberFormat(Ap.ja)}),Ce=(e,t)=>Pg[e].format(t),kg=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"}),Fg=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"}),Hg=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"}),Bg=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"}),Ug=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"}),Vg=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"}),bl=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: ${Ce("en",e)}`,debounce:e=>`Debounce: ${e} ms`,streamProgressCount:e=>`Loading ${Ce("en",e)}`,streamProgressRatio:(e,t,r)=>`Loading ${Ce("en",e)} / ${Ce("en",t)} (${r}%)`,streamRetrying:e=>`Reconnecting... (${Ce("en",e)} received)`,reportLoadFailed:e=>`Failed to load report ${Ce("en",e)}.`,reportSummaryLoadFailed:e=>`Failed to load the summary of report ${Ce("en",e)}.`,interviewerWithAffiliation:(e,t)=>`${e} (${t})`,operationFailed:e=>`Failed to ${Fg[e]}. Please try again later.`,noticeRepeated:e=>`(${Ce("en",e)} times)`,rowState:({isRead:e,isStarred:t})=>`${e?"Read":"Unread"}${t?", starred":""}`,rowEditingState:({isDraft:e})=>e?"Editing draft":"Editing",listRowPosition:(e,t)=>`${Ce("en",e)} of ${Ce("en",t)}`,listRowPositionInUnknownTotal:e=>`Item ${Ce("en",e)}`,searchHitCount:e=>`${Ce("en",e)} ${e===1?"hit":"hits"}`,searchFailed:e=>Bg[e],searchMatchedKeywords:(e,t)=>`Match ${e}/${t}`,searchMatchedKeywordsDescription:(e,t)=>`Matches ${e} of ${t} keywords`,searchFieldMatched:e=>`${e} matched`,searchFieldMatchedByReading:e=>`${e} matched by its romaji reading`,searchFiltersToggle:e=>e===0?"Filters":`Filters (${Ce("en",e)})`,searchFiltersFailed:e=>Vg[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: ${Ce("ja",e)} \u4EF6`,debounce:e=>`\u30C7\u30D0\u30A6\u30F3\u30B9: ${e} ms`,streamProgressCount:e=>`\u8AAD\u307F\u8FBC\u307F\u4E2D ${Ce("ja",e)} \u4EF6`,streamProgressRatio:(e,t,r)=>`\u8AAD\u307F\u8FBC\u307F\u4E2D ${Ce("ja",e)} / ${Ce("ja",t)} (${r}%)`,streamRetrying:e=>`\u518D\u63A5\u7D9A\u4E2D... (${Ce("ja",e)} \u4EF6\u53D7\u4FE1\u6E08)`,reportLoadFailed:e=>`\u65E5\u5831 ${Ce("ja",e)} \u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002`,reportSummaryLoadFailed:e=>`\u65E5\u5831 ${Ce("ja",e)} \u306E\u6982\u8981\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002`,interviewerWithAffiliation:(e,t)=>`${e} (${t})`,operationFailed:e=>`${kg[e]}\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002\u6642\u9593\u3092\u304A\u3044\u3066\u518D\u5EA6\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002`,noticeRepeated:e=>`(${Ce("ja",e)} \u56DE\u76EE)`,rowState:({isRead:e,isStarred:t})=>`${e?"\u65E2\u8AAD":"\u672A\u8AAD"}${t?"\u3001\u30B9\u30BF\u30FC\u4ED8\u304D":""}`,rowEditingState:({isDraft:e})=>e?"\u4E0B\u66F8\u304D\u3092\u7DE8\u96C6\u4E2D":"\u7DE8\u96C6\u4E2D",listRowPosition:(e,t)=>`\u5168 ${Ce("ja",t)} \u4EF6\u4E2D ${Ce("ja",e)} \u4EF6\u76EE`,listRowPositionInUnknownTotal:e=>`${Ce("ja",e)} \u4EF6\u76EE`,searchHitCount:e=>`${Ce("ja",e)} \u4EF6\u30D2\u30C3\u30C8`,searchFailed:e=>Hg[e],searchMatchedKeywords:(e,t)=>`\u4E00\u81F4 ${e}/${t}`,searchMatchedKeywordsDescription:(e,t)=>`\u30AD\u30FC\u30EF\u30FC\u30C9 ${t} \u500B\u306E\u3046\u3061 ${e} \u500B\u306B\u4E00\u81F4`,searchFieldMatched:e=>`${e}\u3067\u4E00\u81F4`,searchFieldMatchedByReading:e=>`${e}\u304C\u30ED\u30FC\u30DE\u5B57\u306E\u8AAD\u307F\u3067\u4E00\u81F4`,searchFiltersToggle:e=>e===0?"\u7D5E\u308A\u8FBC\u307F":`\u7D5E\u308A\u8FBC\u307F (${Ce("ja",e)})`,searchFiltersFailed:e=>Ug[e]})}),Ip=Object.freeze({en:Object.freeze({...Tp.en,...bl.en}),ja:Object.freeze({...Tp.ja,...bl.ja})}),Wg=e=>{let t={},r=!1;for(let n of Sl){let o=Object.hasOwn(e,n)?e[n]:void 0;o!==void 0&&(t[n]=o,r=!0)}return r?t:void 0},vp=(e,t,r)=>{e[t]=r},gl=(e,t)=>{let r=Mg(e);if(t===void 0)return Ip[r];if(t===null||typeof t!="object")throw Me("labels","an object",t);let n=Object.getPrototypeOf(t);if(n!==Object.prototype&&n!==null)throw Me("labels","a plain object (prototype Object.prototype or null)",t);for(let s of Object.keys(t))if(!hl.includes(s))throw _o("labels key",s,hl);let a={...Og(r,Wg(t)),...bl[r]};for(let s of xp){let i=Object.hasOwn(t,s)?t[s]:void 0;if(i!==void 0){if(typeof i!="string"||i.trim()==="")throw Me(`labels.${s}`,"a non-blank string",i);vp(a,s,i)}}for(let s of Cp){let i=Object.hasOwn(t,s)?t[s]:void 0;if(i!==void 0){if(typeof i!="function")throw Me(`labels.${s}`,"a function",i);vp(a,s,i)}}return Object.freeze(a)},_p=e=>{let t={};for(let r of Sl)t[r]=e[r];return Object.freeze(t)};import{jsx as El,jsxs as nE}from"react/jsx-runtime";var jg=e=>({Internal:{label:e.sourceInternal,badgeClassName:"bg-emerald-100 text-emerald-900 dark:bg-emerald-900/30 dark:text-emerald-400"}}),Gg=`${de} text-xs`,Yg=({title:e,annotation:t})=>nE("header",{className:"flex flex-wrap items-baseline justify-between gap-2 px-2 py-1",children:[El("span",{className:"text-nowrap text-slate-700 text-sm dark:text-slate-200",children:e}),t?El("span",{className:Gg,children:t}):null]}),Lo=Object.freeze({apiBasePath:"/daily_report/api",ssePath:"/sse/daily_report/updates",renderHeader:Yg,showDevControls:!1,headingLevel:3}),Lp=["apiBasePath","ssePath","locale","labels","sourceTypeConfigs","renderHeader","showDevControls","headingLevel","onError","onSessionExpired","search"];var qg=e=>{for(let t of Object.keys(e))if(!Lp.includes(t))throw _o("config key",t,Lp)},Np=[2,3,4,5],Xg=e=>{if(e===void 0)return Lo.headingLevel;let t=Np.find(r=>r===e);if(t===void 0)throw Me("config.headingLevel",`one of ${Np.join(", ")} (the level of each report's heading)`,e);return t},Op=["debounceMs","renderFilterSelect"],Qg=Object.freeze({min:300,max:5e3}),Zg=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},Jg=e=>{if(e===void 0)return null;if(typeof e!="function")throw Me("config.search.renderFilterSelect","a function (it renders the control of each filter cell)",e);return e},eE=e=>{if(e===void 0)return null;if(!Zg(e))throw Me("config.search","a plain object ({} for Enter only, or { debounceMs })",e);for(let o of Object.keys(e))if(!Op.includes(o))throw _o("config.search key",o,Op);let t=e.debounceMs,{min:r,max:n}=Qg;return{debounceMs:t===void 0?null:ut("config.search.debounceMs",t,r,n),renderFilterSelect:Jg(e.renderFilterSelect)}},tE=e=>{for(let[t,r]of Object.entries(e)){let n=r.name;if(n!==void 0&&(typeof n!="string"||n.trim()===""))throw Me(`config.sourceTypeConfigs.${t}.name`,"a non-blank string (the expansion of the badge label)",n)}return e},rE=e=>{qg(e);let t=e.onSessionExpired;if(t===void 0)throw gp("config.onSessionExpired","a function (the host decides the navigation on session expiry)");if(typeof t!="function")throw Me("config.onSessionExpired","a function (the host decides the navigation on session expiry)",t);let r=zg(e.locale),n=gl(r,e.labels),o=Lo;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?jg(n):tE(e.sourceTypeConfigs),renderHeader:e.renderHeader===void 0?o.renderHeader:e.renderHeader,showDevControls:e.showDevControls===void 0?o.showDevControls:e.showDevControls,headingLevel:Xg(e.headingLevel),onError:e.onError,onSessionExpired:e.onSessionExpired,search:eE(e.search)}},Mp=Kg(null),Dl=({config:e,children:t})=>{let r=$g(()=>rE(e),[e]);return El(Mp.Provider,{value:r,children:t})},Y=()=>jt(Mp,"useDailyReportConfig","DailyReportConfigProvider"),br=(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},za=(e,t)=>t?.allowComment!==void 0?t.allowComment:!e||e.toLowerCase()==="internal";import{tapScrollCircleSampleVisual as aE}from"@aiquants/virtualscroll";var oE=4;var Ln=120,Pp=1e3,Ka=.8,wl={maxVelocity:18,deceleration:.0018,startVelocityThreshold:.03},$a=20,Tl=24,Nn=8,Oo=Tl+Nn,kp=6,ja={reportHubId:-1,businessDate:null},Ga=240,Ya=15,sE=8,Fp=460,Hp=3,Bp=440,Up=8,iE={enabled:!0,renderVisual:aE,maxSpeedCurve:{exponentialSteepness:3,exponentialScale:8},maxSpeedMultiplier:8,className:"[[data-daily-report-keyboard-focus]_&]:invisible"},qa={width:sE,tapScrollCircleOptions:iE,enableArrowButtonTabStops:!1},Xa=["pen","touch"];var Il=Pt(void 0,1,"DetailLoader"),Vp=(e,t)=>{let r=globalThis[e];return typeof r=="number"&&!Number.isNaN(r)?r:t},Al=null,Ja=()=>(Al===null&&(Al={ttl:Vp("__DAILY_REPORT_CACHE_TTL__",3e5),reviveMs:Vp("__DAILY_REPORT_CACHE_REVIVE_MS__",6e4)}),Al),se={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=>{se.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=Eo(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()){Il.warn(`Stale update skipped id=${e}`);return}this.set({...n.data,...t},Math.max(n.expiresAt,Date.now()+Ja().reviveMs))}},delete(e,t){this.reports.delete(e);let r=Eo(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+Ja().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}},Gp=(e,t,r=!0)=>se.set(e,t,r),Et=(e,t)=>se.getReport(e,t?.ignoreExpiry),Ft=(e,t)=>se.update(e,t),rs=(e,t)=>se.delete(e,t),Po=()=>{se.clear(),Qa.clear(),EE()},es=(e,t)=>{let r=se.lastMutations.get(e);(r===void 0||r<t)&&se.lastMutations.set(e,t)},_l=e=>{es(e,Date.now())},Yp=e=>{let t=Symbol("mutation-lock"),r=se.lockHolders.get(e);return r===void 0?se.lockHolders.set(e,new Set([t])):r.add(t),es(e,Date.now()),()=>{let n=se.lockHolders.get(e);n===void 0||!n.delete(t)||(n.size===0&&se.lockHolders.delete(e),es(e,Date.now()))}},qp=(e,t)=>{let r=performance.now()+t,n=se.lockHolds.get(e);(n===void 0||n<r)&&se.lockHolds.set(e,r),es(e,Date.now()+t)},Xp=e=>se.recentDeletes.set(e,Date.now()),Qp=(e,t)=>{let r=n=>{n===e&&t()};return se.listeners.add(r),()=>{se.listeners.delete(r)}},Sr=(e,t)=>{se.prune(),se.set(t,Date.now()+Ja().ttl)},Zp=e=>{se.prune();let t=se.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}));se.set({...e,isRead:t?.isRead??!1,isStarred:t?.isStarred??!1,postedComments:n},Date.now()+Ja().ttl)},pE=xl.object({report:yr}),mE=xl.object({reports:xl.array(yr)}),ts=class extends Error{constructor(t,r){super(`[daily-report] ${t} answered HTTP ${r}`),this.name="DailyReportReadHttpError",this.status=r}},Jp=(e,t)=>new ts(e,t),Wp=e=>e instanceof ts&&(e.status===401||e.status===403),fE=e=>new Error(`[daily-report] ${$e.reports} answered the outcome failed for report ${e}`),Ll=async(e,t,r)=>{if(!e.ok)throw Jp(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 (${Ua(n.error)})`);return n.data},yE=async(e,t)=>{let r=se.getReport(t);if(r)return r;let n=se.pendingReports.get(t);if(n)return n;let o=Date.now(),a=new URLSearchParams({[Ue.reportHubId]:String(t)}),s=fetch(`${e}/${$e.report}?${a}`,{cache:"no-cache"}).then(i=>Ll(i,pE,$e.report)).then(({report:i})=>se.cacheMany([i],null,o)[0]).finally(()=>se.pendingReports.delete(t));return se.pendingReports.set(t,s),s},Qa=new Map,RE=1e4,hE=(e,t)=>{let r=Qa.get(t),n=Date.now();if(r&&n-r.at<RE)return r.inFlight;let o=Nl(e,t,{forceRefresh:!0}),a={at:n,inFlight:o};return Qa.set(t,a),o.finally(()=>{Qa.get(t)===a&&(a.inFlight=null)}).catch(()=>{}),o},Nl=async(e,t,r={})=>{let n=r.forceRefresh?null:se.getList(t);if(n)return n;let o=se.pendingLists.get(t);if(o)return o;let a=Date.now(),s=new URLSearchParams({[Ue.businessDate]:t}),i=fetch(`${e}/${$e.businessDate}?${s}`,{cache:"no-cache"}).then(l=>Ll(l,mE,$e.businessDate)).then(({reports:l})=>se.cacheMany(l,t,a)).finally(()=>se.pendingLists.delete(t));return se.pendingLists.set(t,i),i},bE=async(e,t,r)=>{let n=se.getList(r)!==null,a=(await Nl(e,r)).find(i=>i.reportHubId===t);if(a!==void 0)return a;if(!n)return null;let s=await hE(e,r);return s===null?null:s.find(i=>i.reportHubId===t)??null},SE=5e3,Cl=new Map,gE=e=>{let t=new Map,r=new Map,n=new Map,o=new Set,a=(p,f)=>{let y=[];for(let g of p)r.get(g)===f&&(r.delete(g),y.push(g));return y},s=(p,f)=>{let y=t.get(p);if(y!==void 0){t.delete(p),o.delete(p);for(let g of y)f(g)}},i=(p,f)=>{let g=setTimeout(()=>{for(let R of p)n.delete(R),t.has(R)&&(o.add(R),u.enqueue(R))},f);for(let R of p)n.set(R,g)},l=(p,f,y)=>{let g=[];for(let R of p)f!==null&&t.has(R)&&!o.has(R)?g.push(R):s(R,E=>E.reject(y));f!==null&&g.length>0&&i(g,f)},d=(p,f)=>{let y=[];for(let E of p)E.outcome==="ok"&&y.push(E.report);let g=se.cacheMany(y,null,f),R=0;for(let{reportHubId:E,outcome:S}of p){if(r.delete(E),S==="failed"){let b=fE(E);s(E,D=>D.reject(b));continue}let h=S==="ok"?g[R++]:null;s(E,b=>b.resolve(h))}},c=async(p,f)=>{for(let R of p)r.set(R,f);let y=Date.now(),g=new URLSearchParams({[Ue.reportIds]:p.join(",")});try{let R=await fetch(`${e}/${$e.reports}?${g}`,{cache:"no-cache",signal:f});if(R.status===429){l(a(p,f),Wa(R,SE),Jp($e.reports,R.status));return}let{outcomes:E}=await Ll(R,bp(p),$e.reports);if(f.aborted)return;d(E,y)}catch(R){for(let E of a(p,f))s(E,S=>S.reject(R))}},u=Va({hasListener:p=>t.has(p),batchSize:Rr.maxDetailIds,inFlightBound:Co,send:c}),m=wp({frames:Dp,handOn:p=>{for(let f of p)u.enqueue(f)}});return{readers:t,pending:r,holds:n,retried:o,gate:m,scheduler:u}},EE=()=>{for(let{readers:e,pending:t,holds:r,retried:n,gate:o,scheduler:a}of Cl.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)}},zp=new DOMException("The detail reader left its batched read","AbortError"),DE=(e,t,r)=>new Promise((n,o)=>{let a=Cl.get(e);a===void 0&&(a=gE(e),Cl.set(e,a));let{readers:s,pending:i,holds:l,retried:d,gate:c,scheduler:u}=a,m={resolve:n,reject:o},p=s.get(t);p===void 0?s.set(t,new Set([m])):p.add(m),c.holds(t)||u.isWanted(t)||i.has(t)||l.has(t)||c.enter(t);let f=()=>{let y=s.get(t);if(!(y===void 0||!y.delete(m))&&(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",f,{once:!0})}),On=lE("date"),wE=Object.freeze({report:null,error:null,isLoading:!1,isRefetching:!1}),TE=Object.freeze({report:null,error:new Error("Invalid ID"),isLoading:!1,isRefetching:!1}),AE=Object.freeze({report:null,error:null,isLoading:!0,isRefetching:!1}),Kp=new WeakMap,vE=e=>{let t=Kp.get(e);if(t!==void 0)return t;let r=Object.freeze({report:e,error:null,isLoading:!1,isRefetching:!1});return Kp.set(e,r),r},Za=(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)}},$p=(e,t,r)=>{if(t<0)return wE;if(t===0)return TE;let{report:n}=Za(e,t,r);return n===null?AE:vE(n)},xE=(e,t)=>Object.keys(t).some(n=>e[n]!==t[n])?Object.freeze({...e,...t}):e,vl=()=>{},CE=({apiBasePath:e,detailSource:t,cache:r})=>{let n=new Map,o=(u,m)=>{let p=xE(u.record,m);if(p!==u.record){u.record=p;for(let f of u.listeners)f()}},a=u=>{let m=n.get(u);if(m===void 0)return;let{report:p,isStale:f}=Za(r,u,m.dateKey);o(m,p!==null&&!f&&m.record.isRefetching?{report:p,error:null,isLoading:!1,isRefetching:!1}:{report:p})},s=(u,m,p)=>{let{record:f}=m;if(f.report!==null&&f.error===null&&!Wp(p)){Il.warn(`Refetch failed, the shown report stays id=${u}`,p),o(m,{isLoading:!1,isRefetching:!1});return}o(m,{error:p,isLoading:!1,isRefetching:!1})},i=(u,m)=>{let{dateKey:p}=m,{report:f,isStale:y}=Za(r,u,p);if(f!==null&&!y)return o(m,{report:f,error:null,isLoading:!1,isRefetching:!1}),vl;o(m,{isLoading:f===null,isRefetching:!0});let g=null,R=!1,E=async()=>{let h;try{t==="ids"?(g=new AbortController,h=await DE(e,u,g.signal)):p!==null?h=await bE(e,u,p):h=await yE(e,u)}catch(b){R||s(u,m,b instanceof Error?b:new Error("Load failed"));return}R||o(m,{report:h,error:null,isLoading:!1,isRefetching:!1})};if(f===null)return E(),()=>{R=!0,g?.abort(zp)};let S=setTimeout(E,Ln);return()=>{R=!0,clearTimeout(S),g?.abort(zp)}},l=(u,m)=>{let{record:p}=m;return p.isRefetching?!1:p.error!==null?!Wp(p.error):Za(r,u,m.dateKey).isStale},d=(u,m)=>{let p=Eo(m),f={record:$p(r,u,p),dateKey:p,listeners:new Set,stop:vl};return n.size===0&&r.listeners.add(a),n.set(u,f),f.stop=i(u,f),f},c=(u,m)=>{n.delete(u),n.size===0&&r.listeners.delete(a),m.stop()};return{read:u=>{let m=n.get(u);return m===void 0?$p(r,u,null):m.record},subscribe:(u,m,p)=>{if(u<=0)return vl;let f=n.get(u),y=f===void 0?d(u,m):f;return!y.listeners.has(p)&&l(u,y)&&(y.stop(),y.stop=i(u,y)),y.listeners.add(p),()=>{!y.listeners.delete(p)||y.listeners.size>0||c(u,y)}}}},IE={date:new Map,ids:new Map},_E=(e,t)=>{let r=IE[t],n=r.get(e);if(n!==void 0)return n;let o=CE({apiBasePath:e,detailSource:t,cache:se});return r.set(e,o),o},rn=()=>{let{apiBasePath:e}=Y(),t=jp(On);return _E(e,t)},Ol=(e,t)=>{let r=rn(),[n,o]=uE(()=>({reportHubId:e,resource:r.read(e)})),a=n;return n.reportHubId!==e&&(a={reportHubId:e,resource:r.read(e)},o(a)),cE(()=>{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},Ml=()=>{let{apiBasePath:e}=Y(),t=jp(On);return dE(r=>{if(t==="ids")return;let n=Eo(r);n&&!se.getList(n)&&Nl(e,n).catch(o=>Il.warn("Prefetch error",n,o))},[e,t])};import{VIRTUAL_SCROLL_LABEL_KEYS as LE}from"@aiquants/virtualscroll";import{useRef as NE}from"react";var ns=()=>{let{locale:e,labels:t}=Y(),r=_p(t),n=NE(null),o=n.current;return o!==null&&LE.every(a=>o[a]===r[a])?{locale:e,labels:o}:(n.current=r,{locale:e,labels:r})};import{useState as OE}from"react";var Qe=e=>{let[t]=OE(()=>({current:e()}));return t};import{useLayoutEffect as zE,useState as KE}from"react";import{flushSync as $E}from"react-dom";var rm=Object.freeze({visibilityProperty:!0}),em=new Set(["auto","scroll"]),tm=new Set(["","true","plaintext-only"]),nm=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=sm(n)?n.host:null}return!1},ME=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(rm))return!0;return!1},om=e=>e.localName==="area"?ME(e):e.checkVisibility(rm),PE=e=>{let t=e.getAttribute("contenteditable");if(t===null||!tm.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(tm.has(o))return!1;if(o==="false")return!0}return!0},kE=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&&om(n)&&(r=n)}return r===e},FE=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&&em.has(a.overflowX)||n&&em.has(a.overflowY)},HE=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 PE(e)}},BE=/^[\t\n\f\r ]*[+-]?\d/,UE=e=>{let t=e.getAttribute("tabindex");return t!==null&&BE.test(t)?e.tabIndex:null},am=(e,t)=>{for(let r of kl(e))if(t(r)||am(r,t))return!0;return!1},os=(e,t)=>{let r=t.get(e);if(r!==void 0)return r;let n=VE(e,t);return t.set(e,n),n},VE=(e,t)=>{if(!Fo(e))return"none";let r=UE(e),n=r===null&&HE(e),o=r===null&&!n&&FE(e);return!(r!==null||n||o)||e.matches(":disabled")||nm(e)||!om(e)?"none":r!==null?r>=0?"sequential":"programmatic":n?e.localName==="input"&&e.type==="radio"?kE(e)?"sequential":"programmatic":"sequential":am(e,a=>os(a,t)==="sequential")?"none":"sequential"},Pl=(e,t)=>{for(let r of kl(e))t(r),Pl(r,t)},kl=e=>{if(Pe(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 ko=(e,t)=>{let r=[],n=[],o=[],a=new Map;if(e===t)return Pl(e,l=>{os(l,a)==="sequential"&&n.push(l)}),{before:r,within:n,after:o};let s=!1,i=(l,d)=>{for(let c of kl(l)){let u=c===t;!u&&os(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}},as=e=>{let t=[],r=new Map;return Pl(e,n=>{os(n,r)==="sequential"&&t.push(n)}),t},Pe=e=>e!==null&&"nodeType"in e&&e.nodeType===e.ELEMENT_NODE,Fo=e=>"focus"in e&&"blur"in e,WE=e=>e.nodeType===e.DOCUMENT_NODE,sm=e=>e.nodeType===e.DOCUMENT_FRAGMENT_NODE&&"host"in e,et=e=>{let t=e.getRootNode();if(sm(t)){let r=t.activeElement;return r===null?et(t.host):r}return WE(t)?t.activeElement:null},nn=e=>{let t=et(e);return t===null||t===t.ownerDocument.body||nm(t)},je=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 ss=e=>{let[t,r]=KE(null);return zE(()=>{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?$E(()=>r(l)):r(l)},s=l=>{for(let d of l)a(d.borderBoxSize[0].blockSize)},i=new(je(n)).ResizeObserver(s);return i.observe(n,{box:"border-box"}),()=>i.disconnect()},[e]),t};var im=255,Fl=[null],lm=new Map,is=[void 0],dm=new Map,tr=e=>{if(e===null)return 0;let t=lm.get(e);if(t!==void 0)return t;let r=Fl.length;return Fl.push(e),lm.set(e,r),r},gr=e=>{let t=Fl[e];if(t===void 0)throw new Error(`[daily-report] No business date has the code ${e}`);return t},Ho=e=>{if(e===void 0)return 0;let t=dm.get(e);if(t!==void 0)return t;let r=is.length;if(r>im)throw new Error(`[daily-report] The rows hold more than ${im} distinct source types; ${e} has no code`);return is.push(e),dm.set(e,r),r},on=e=>{if(!(Number.isInteger(e)&&e>=0&&e<is.length))throw new Error(`[daily-report] No source type has the code ${e}`);return is[e]},er=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:gr(this.businessDateCodes[r]),sourceType:on(this.sourceTypeCodes[r])}}items(){let t=[];for(let r=0;r<this.length;r++)t.push(this.itemAt(r));return t}businessDateAt(t){return gr(this.businessDateCodes[this.rowIndexOf(t)])}sourceTypeAt(t){return on(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}`)}},cm=e=>{if(e instanceof er)return e;throw new Error("[daily-report] A row batch the package did not build has no code columns")},Ht=new er(0,new Float64Array(0),new Uint32Array(0),new Uint8Array(0)),jE=Float64Array.BYTES_PER_ELEMENT+Uint32Array.BYTES_PER_ELEMENT+Uint8Array.BYTES_PER_ELEMENT,Mn=e=>{let t=new ArrayBuffer(e*jE),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)}},Er=(e,t,r)=>{if(r===0)return Ht;let n=t+r;return new er(r,e.ids.subarray(t,n),e.businessDateCodes.subarray(t,n),e.sourceTypeCodes.subarray(t,n))},GE=16,Gt=class{constructor(t=GE){this.count=0;this.columns=null;this.initialCapacity=ut("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,tr(t.businessDate),Ho(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:Er(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}},Hl=e=>{let t=new Gt(e.length);for(let r of e)t.pushItem(r);return t.build()};var Yt=10,Bo=1<<Yt,kn=Bo-1,YE=Bo,qE=YE/2,Pn=new Map,Vl=new Map,Wl=(e,t,r)=>e.businessDate===t&&e.sourceType===r,XE=(e,t,r)=>{let n=Pn.get(e),o=n===void 0?Vl.get(e):n;return o!==void 0&&Wl(o,t,r)?o:void 0},ls=(e,t,r)=>{let n=gr(t),o=on(r),a=Pn.get(e);if(a!==void 0&&Wl(a,n,o))return a;let s=a===void 0?Vl.get(e):void 0,i=s!==void 0&&Wl(s,n,o)?s:{reportHubId:e,businessDate:n,sourceType:o};return Pn.set(e,i),Pn.size>=qE&&(Vl=Pn,Pn=new Map),i},um=(e,t,r)=>{let n=gr(t),o=on(r),a=XE(e,n,o);return a===void 0?{reportHubId:e,businessDate:n,sourceType:o}:a};var Dt=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 pm(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=um(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}}}}},ds=new Dt([],0),pm=(e,t)=>{let r=e.chunks[t>>>Yt],n=t&kn;return ls(r.ids[n],r.businessDateCodes[n],r.sourceTypeCodes[n])},an=(e,t)=>e.chunks[t>>>Yt].ids[t&kn],Fn=(e,t)=>e.chunks[t>>>Yt].businessDateCodes[t&kn],Kl=(e,t)=>e.chunks[t>>>Yt].sourceTypeCodes[t&kn],Bl={businessDate:null,reportHubId:0},Ul={businessDate:null,reportHubId:0},Hn=(e,t,r,n)=>(Bl.reportHubId=e,Bl.businessDate=gr(t),Ul.reportHubId=r,Ul.businessDate=gr(n),yp(Bl,Ul)),mm=e=>{if(e.length===0)return ds;let t=[];return fm(t,e,e.length),new Dt(t,e.length)},fm=(e,t,r)=>{for(let n=0;n<r;n+=Bo)e.push(Er(t,n,Math.min(Bo,r-n)))},sn={removals:[],replacements:[],additions:Ht,insertions:[]},QE=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)),Er(t,0,e.length)},ZE=(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>>>Yt,d=n.get(l);d===void 0&&(d=QE(e.chunks[l]),n.set(l,d),r[l]=d);let c=o&kn;d.ids[c]=a,d.businessDateCodes[c]=s,d.sourceTypeCodes[c]=i}return new Dt(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((D,_)=>D-_),a=[...t.replacements].sort((D,_)=>D.index-_.index);if(o.length===0&&r.length===0)return ZE(e,a);let s=e.length,i=s-o.length+r.length;if(i===0)return ds;let d=Math.min(o.length===0?s:o[0],a.length===0?s:a[0].index,r.length===0?s:n[0])>>>Yt,c=e.chunks.slice(0,d),u=d<<Yt,m=i-u,p=m===0?Ht:Mn(m),f=0,y=()=>{if(f===m)throw new Error(`[daily-report] Edits of a list of ${s} rows write more than the ${i} rows they leave`);return m-f},g=(D,_,T)=>{y(),p.ids[f]=D,p.businessDateCodes[f]=_,p.sourceTypeCodes[f]=T,f+=1},R=(D,_)=>{for(let T=D;T<_;){let P=e.chunks[T>>>Yt],M=T&kn,H=Math.min(_-T,Bo-M,y());p.ids.set(P.ids.subarray(M,M+H),f),p.businessDateCodes.set(P.businessDateCodes.subarray(M,M+H),f),p.sourceTypeCodes.set(P.sourceTypeCodes.subarray(M,M+H),f),f+=H,T+=H}},E=d<<Yt,S=0,h=0,b=0;for(;;){let D=Math.min(S<o.length?o[S]:s,h<a.length?a[h].index:s,b<r.length?n[b]:s);for(R(E,D),E=D;b<r.length&&n[b]===D;b++)g(r.ids[b],r.businessDateCodes[b],r.sourceTypeCodes[b]);if(D===s)break;if(S<o.length&&o[S]===D)S+=1,E=D+1;else if(h<a.length&&a[h].index===D){let _=a[h];g(_.id,_.businessDateCode,_.sourceTypeCode),h+=1,E=D+1}}return fm(c,p,f),new Dt(c,u+f)},Uo=(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<<Yt)+s}return-1},ym=(e,t)=>{let r=Uo(e,t);return r===-1?void 0:pm(e,r)},zl=(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(um(s,e.businessDateCodes[a],e.sourceTypeCodes[a]))}return t.set(e,o),o},Rm=(e,t,r)=>{let n=[];if(!(e instanceof Dt)){for(let o of e)r(o.reportHubId)&&n.push(o);return n}for(let o of e.chunks){let a=zl(o,t,r);for(let s=0;s<a.length;s++)n.push(a[s])}return n},hm=(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=zl(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=zl(t.chunks[l],r,n);for(let c=0;c<d.length;c++)i.push(d[c])}return{before:s,after:i}};var bm=(e,t)=>Number.isInteger(t)&&t>=0&&t<e.length,ke=(e,t)=>bm(e,t)?e.at(t):void 0,JE=(e,t)=>e instanceof Dt?bm(e,t)?an(e,t):void 0:ke(e,t)?.reportHubId,eD=16,Sm=(e,t)=>e!==null&&e.reportHubId===t?e.index:null,Fe=(e,t,r)=>{let n=r===null?void 0:ke(e,r);if(r!==null&&n!==void 0){if(n.reportHubId===t)return r;for(let o=1;o<=eD;o++){if(ke(e,r+o)?.reportHubId===t)return r+o;if(ke(e,r-o)?.reportHubId===t)return r-o}}return rr(e,t)},rr=(e,t)=>{if(e instanceof Dt)return Uo(e,t);let r=0;for(let n of e){if(n.reportHubId===t)return r;r+=1}return-1},$l=e=>{let t=ke(e,0);return t===void 0?null:t.reportHubId};var nr=(e,t)=>{let r=ke(e,t);if(r===void 0)throw gm(e,t);return r},cs=(e,t)=>{let r=JE(e,t);if(r===void 0)throw gm(e,t);return r},gm=(e,t)=>new Error(`[daily-report] No report at index ${t} of a list of ${e.length}`);var us="data-daily-report-row",Em=`[${us}]`,Dm="data-daily-report-button",ps="data-daily-report-row-focus",ms={[ps]:""},wm="data-daily-report-view",fs={[wm]:""},jl="treegrid",tD='button, a[href], input, textarea, select, label, [role="button"], [contenteditable]:not([contenteditable="false"])',rD=/^[1-9]\d*$/,Tm=e=>{if(e===null||!rD.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null},Am=e=>e.querySelector(`[${wm}] [role="${jl}"]`),vm=e=>e.querySelector(`[${ps}]`),ln=(e,t)=>{if(t===null||!Pe(e))return null;let r=e.closest(Em);return r===null||r===t||!t.contains(r)?null:r},Vo=e=>Tm(e.getAttribute(us)),Br=e=>Tm(e.getAttribute("aria-posinset")),xm=e=>{let t=e.closest(Em),r=t===null?null:Br(t);return r===null?null:r-1},Cm=(e,t)=>{if(e===null)return null;let r=Vo(e);if(r===null)return null;let n=Br(e),o=Fe(t,r,n===null?null:n-1);return o===-1?null:{reportHubId:r,index:o}},Im=(e,t)=>{if(!Pe(e))return!1;let r=e.closest(tD);return r!==null&&r!==t&&t.contains(r)};import{createContext as _m}from"react";var dn=_m(0),Ur=-1,Lm=(e,t)=>t.phase==="complete"?e:t.totalCount===null?Ur:Math.max(e,t.totalCount),cn=_m(-1);import{flushSync as nD}from"react-dom";var oD=()=>({deferring:!1,measuring:!1,queuedObservations:new Set,queuedMeasurements:new Set,frame:0}),Nm=(e,t)=>{e.queuedObservations.add(t),e.measuring&&e.queuedMeasurements.add(t)},Om=e=>{let t=new Set,r=oD(),n=[],o=null,a=()=>{try{nD(()=>e(n))}finally{n.length=0}},s=()=>{let l=r.queuedMeasurements;for(;l.size>0;){for(let d of l)n.push([d,d.getBoundingClientRect().height]);l.clear(),a()}},i=()=>{s(),r.measuring=!1};return{observe:l=>(t.add(l),o!==null&&(r.deferring?Nm(r,l):o.observe(l)),()=>{t.delete(l),r.queuedObservations.delete(l),r.queuedMeasurements.delete(l),o!==null&&o.unobserve(l)}),remeasure:l=>{if(o!==null){if(!r.deferring){o.observe(l);return}o.unobserve(l),Nm(r,l)}},attach:l=>{if(o!==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 d=()=>{r.frame=0,r.deferring=!1;for(let m of r.queuedObservations)u.observe(m);r.queuedObservations.clear()},c=m=>{r.deferring=!0,r.measuring=!0,l.cancelAnimationFrame(r.frame),r.frame=l.requestAnimationFrame(d);for(let p of m)n.push([p.target,p.borderBoxSize[0].blockSize]);a(),s(),queueMicrotask(i)},u=new l.ResizeObserver(c);for(let m of t)u.observe(m);return o=u,()=>{l.cancelAnimationFrame(r.frame),r.frame=0,r.deferring=!1,r.measuring=!1,r.queuedObservations.clear(),r.queuedMeasurements.clear(),u.disconnect(),o=null}}}};var ys=(e,t)=>{if(!(Number.isFinite(t)&&t>0))throw Me(e,"a finite number > 0",t)},Mm=({seedPx:e,quantumPx:t})=>{ys("createRowHeightEstimate: quantumPx",t),ys("createRowHeightEstimate: seedPx",e);let r=l=>Math.ceil(l/t)*t;if(r(e)!==e)throw Me("createRowHeightEstimate: seedPx",`a multiple of the quantum ${t}`,e);let n=[],o=new Map,a=0,s=l=>{let d=0,c=n.length;for(;d<c;){let u=d+c>>>1;n[u].heightPx<l?d=u+1:c=u}return d},i=l=>{let d=0,c=n[0].count;for(;c<=l;)d+=1,c+=n[d].count;return n[d].heightPx};return{record:(l,d)=>{if(ys("RowHeightEstimate.record: nextPx",d),l!==null){ys("RowHeightEstimate.record: previousPx",l);let u=o.get(l);if(u===void 0)throw Me("RowHeightEstimate.record: previousPx","a recorded height",l);u.count-=1,u.count===0&&(o.delete(l),n.splice(s(l),1)),a-=1}let c=o.get(d);if(c===void 0){let u={heightPx:d,count:1};o.set(d,u),n.splice(s(d),0,u)}else c.count+=1;a+=1},estimate:()=>{if(a===0)return e;let l=i(a>>>1),d=a%2===1?l:(i((a>>>1)-1)+l)/2;return r(d)}}};import{useVirtualScrollItem as zm}from"@aiquants/virtualscroll";import{createContext as Km,useCallback as Jl,useContext as Xl,useLayoutEffect as Gl,useReducer as aD,useRef as Pm}from"react";import{flushSync as km}from"react-dom";var sD=1/2,iD=32,lD=8,Un=16,dD=5,cD=3,uD=1.5,Ql=2,Fm=1e3/60,pD=1,mD=1,Zl=()=>{},Vn=Object.freeze({visible:0,reach:1,near:2,far:3}),Rs=Object.freeze({capture:!0,passive:!0}),Yl=Object.freeze({type:"sync-release"}),Hm=Object.freeze({type:"deferred-visible"}),fD=Object.freeze({type:"oversize-frame"}),$m=(e,t)=>({sorted:new Float64Array(e),arrivals:new Float64Array(e),known:t,count:0,next:0,p50:null,p90:null}),Bm=()=>({frameTime:0,onTime:0,start:0,inputEpoch:0,interval:0,units:0,reservoir:null,busy:null,rows:[]}),ql=(e,t)=>({kind:Object.freeze({sizing:e,change:t}),...$m(iD,lD)}),Um=e=>({body:ql(e,"body"),box:ql(e,"box"),marks:ql(e,"marks")}),Vm=(e,t)=>{let{sorted:r,arrivals:n}=e,o=r.length;if(e.count===o){for(let s=r.indexOf(n[e.next]);s<o-1;s++)r[s]=r[s+1];e.count-=1}n[e.next]=t,e.next=(e.next+1)%o;let a=e.count;for(;a>0&&r[a-1]>t;a--)r[a]=r[a-1];r[a]=t,e.count+=1,!(e.count<e.known)&&(e.p50=r[Math.ceil(.5*e.count)-1],e.p90=r[Math.ceil(.9*e.count)-1])},yD=e=>{e.count=0,e.next=0,e.p50=null,e.p90=null},Wm=(e,t)=>{let r=e[0];for(let n=1;n<t;n++)e[n]<r&&(r=e[n]);return r},RD=(e,t)=>e.zone!==t.zone?e.zone<t.zone:e.second!==t.second?e.second<t.second:e.third<t.third,hD=(e,t)=>{t.zone=e.zone,t.second=e.second,t.third=e.third,t.paneReach=e.paneReach},Wo=e=>(e<Fm-pD?Fm:e)-Ql,bD=e=>(Math.round(Wo(e)/e)-1+uD)*e,jm=({gridId:e,isHolding:t,subscribeHold:r,keySteps:n,activeIndex:o,indexOf:a,pane:s,observe:i})=>{let l=new Map,d=new Map,c=new Map,u=new Map,m=new Map,p={fixed:Um("fixed"),measured:Um("measured")},f=Object.values(p).flatMap(L=>Object.values(L)),y=null,g=null,R=0,E=null,S=1,h=null,b=null,D=null,_=!1,T=1,P=!1,M={zone:0,second:0,third:0,paneReach:!1},H={zone:0,second:0,third:0,paneReach:!1},A=L=>{i!==void 0&&i(L)},C=L=>{if(h===null)return!1;let U=Wo(h),{p50:K}=p[L.sizing][L.change];return K!==null&&K>U||L.sizing==="measured"&&b!==null&&b>U&&t()},v=()=>{if(h===null)return!1;let L=Wo(h);if(b!==null&&b>L)return!0;for(let{p50:U}of f)if(U!==null&&U>L)return!0;return!1},w=()=>{let L=o();return L!==null&&E!==null&&L!==E&&(S=L>E?1:-1),E=L,L},O=(L,U,K)=>C(L)||U==="far"&&K!==S,B=(L,U,K,re,he)=>{M.zone=L.deferredVisible?Vn.visible:Vn[U],M.second=K===null?Number.POSITIVE_INFINITY:re===null?K:Math.abs(K-re),M.third=he===-S?1:0,M.paneReach=!1},V=(L,U,K,re,he)=>{let F=re.visibleStartIndex,ee=re.visibleEndIndex,te=K===null?0:K>ee?1:K<F?-1:0,Ee=K===null?Number.POSITIVE_INFINITY:te===1?K-ee:te===-1?F-K:0,we=he&&te===T&&Ee<=ee-F+1;M.zone=L.deferredVisible||U==="visible"?Vn.visible:U==="reach"||we?Vn.reach:Vn.near,M.second=K===null||te===-T?1:0,M.third=Ee,M.paneReach=we},X=()=>{let L=t(),U=w(),K=!L&&D!==null&&(U===null||U<D.renderingStartIndex||U>D.renderingEndIndex)?D:null,re=K!==null&&_,he=null;for(let F of l.values()){let ee=F.handle.getZone(),te=a(F.reportHubId),Ee=te===null||U===null?0:Math.sign(te-U);L&&O(F,ee,Ee)||re&&C(F)||(K===null?B(F,ee,te,U,Ee):V(F,ee,te,K,re),!(he!==null&&!RD(M,H))&&(he=F,hD(M,H)))}return he},G=()=>{if(!t())return l.size>0;let L=w();for(let U of l.values()){let K=a(U.reportHubId);if(!O(U,U.handle.getZone(),K===null||L===null?0:Math.sign(K-L)))return!0}return!1},Q=()=>t()&&R>0&&!v()?!0:G(),q=L=>{l.get(L.reportHubId)===L&&(l.delete(L.reportHubId),L.unsubscribeZone())},fe=()=>{y!==null&&y.wake()},De=()=>{P=!1;let L=d;d=c,c=L;for(let U=L.size;U>0;U--)A(Yl);try{km(()=>{for(let U of L.values())U.apply()})}finally{L.clear()}};return{gridId:e,enqueue:(L,U)=>{let K=l.get(L.reportHubId);K!==void 0&&q(K),d.delete(L.reportHubId);let re=t(),he=L.handle.getZone()==="visible";if(!re&&he)return U==="commit"?(A(Yl),L.apply(),Zl):(d.set(L.reportHubId,L),P||(P=!0,queueMicrotask(De)),()=>{d.get(L.reportHubId)===L&&d.delete(L.reportHubId)});let F=re&&he&&C(L),ee={...L,deferredVisible:F,unsubscribeZone:L.handle.subscribeZone(()=>{let te=L.handle.getZone();if(te==="visible"){if(t()&&C(L)){if(ee.deferredVisible)return;ee.deferredVisible=!0,A(Hm);return}q(ee),A(Yl),L.apply();return}te!=="far"&&fe()})};return l.set(L.reportHubId,ee),F&&A(Hm),fe(),()=>{q(ee)}},declareRow:L=>{if(L==="fixed")return Zl;R+=1,R===1&&fe();let U=!0;return()=>{U&&(U=!1,R-=1)}},declareBody:(L,U,K)=>{let re={handle:U,body:K,fresh:K!==null};return u.set(L,re),K!==null&&m.set(K,L),U.setSkippable(K===null),()=>{u.get(L)===re&&u.delete(L),K!==null&&m.get(K)===L&&m.delete(K)}},measured:L=>{let U=m.get(L),K=U===void 0?void 0:u.get(U);K===void 0||K.body!==L||(K.fresh=!1,K.handle.setSkippable(!0))},invalidate:L=>{let U=u.get(L);if(!(U===void 0||U.body===null)){if(U.fresh){U.fresh=!1;return}U.handle.setSkippable(!1),g!==null&&g(U.body)}},attach:(L,U)=>{if(y!==null)throw new Error("[daily-report] the row pass is connected to a view's window already; disconnect it before connecting it again");let K=new L.MessageChannel,re="idle",he=0,F=null,ee=null,te=[Bm()],Ee=0,we=0,ie=te[0],vt=new Float64Array(Un),Ze=0,xt=0,nt=new Float64Array(Un),ct=0,ot=0,Rt=0,zt=0,Kt=0,gt=0,x=$m(dD,cD),N=0,W=n.appliedEpoch(),j=null;h=null,b=null;let oe=()=>{re!=="idle"||!Q()||(re="arming",K.port1.postMessage(null))},ue=()=>{re==="arming"&&(re="framing",he=L.requestAnimationFrame(ye))},$=pe=>{let Oe=p[pe.sizing][pe.change];q(pe),km(pe.apply),ie.reservoir=ie.units===0||ie.reservoir===Oe?Oe:null,ie.units+=1,i!==void 0&&ie.rows.push(pe.reportHubId)},ne=(pe,Oe)=>{ie.interval=pe;let He=X();if(He===null){gt=0;return}let{zone:at,paneReach:Ct}=H,Je=p[He.sizing][He.change].p90,Lr=pe-Ql-Oe;if(Je===null?Oe>pe/2:Je>Lr&&Oe>Ql){let Nr=at<=Vn.reach;if(!Ct&&(!Nr||gt<mD)){i!==void 0&&i({type:"late-frame",frameTime:ie.frameTime}),gt=Nr?gt+1:0;return}i!==void 0&&i({type:"late-forced-frame",frameTime:ie.frameTime})}if(gt=0,$(He),Je===null)return;let cr=sD*pe;if(Je>cr){A(fD);return}let Qt=Je;for(let Nr=X();Nr!==null&&y===Tn;Nr=X()){let ba=p[Nr.sizing][Nr.change].p90;if(ba===null||Qt+ba>cr||Qt+ba>Lr)return;$(Nr),Qt+=ba}},_e=()=>{let pe=s();D=pe===null?null:pe.range,_=!1,pe!==null&&ee!==null&&pe.position!==ee&&(_=!0,T=pe.position>ee?1:-1),ee=pe===null?null:pe.position},k=(pe,Oe,He)=>{let at=Ee;if(at-we===te.length){let Ct=Array.from({length:2*te.length},Bm);for(let Je=we;Je<at;Je++)Ct[Je%Ct.length]=te[Je%te.length];te=Ct}return Ee=at+1,ie=te[at%te.length],ie.frameTime=pe,ie.onTime=Oe,ie.start=He,ie.inputEpoch=Rt,ie.units=0,ie.reservoir=null,ie.busy=null,ie.rows.length=0,at},z=(pe,Oe)=>{Vm(x,pe),N+=1,b=x.p50,i!==void 0&&i({type:"key-frame",frameTime:Oe,busy:pe,stepP50:b,samples:N,interval:h,limit:h===null?null:Wo(h)})},ae=(pe,Oe,He)=>{let at=He!==W;W=He,t()&&at&&pe.units===0&&h!==null&&Oe>=bD(h)&&z(Oe,pe.frameTime)},ye=pe=>{he=0;let Oe=L.performance.now(),He=Oe-pe;nt[ot]=He,ot=(ot+1)%Un,ct=Math.min(ct+1,Un);let at=pe+Wm(nt,ct),Ct=n.appliedEpoch(),Je=null;if(F!==null){let cr=pe-F.frameTime,{busy:Qt}=F;Qt!==null&&Qt<=cr/2&&(vt[xt]=cr,xt=(xt+1)%Un,Ze=Math.min(Ze+1,Un),h=Wm(vt,Ze)),Je=h,Qt===null&&ae(F,Oe-F.onTime,Ct)}_e(),w();let Lr=Rt!==zt||Ct!==Kt||n.pending();zt=Rt,Kt=Ct;let It=k(pe,at,Oe);if(F=ie,Je!==null&&!Lr&&ne(Je,Oe-at),y===Tn){if(K.port2.postMessage(It),!Q()){re="idle",F=null,ee=null,gt=0,j=It;return}he=L.requestAnimationFrame(ye)}},ve=pe=>{let Oe=pe.data,He=te[Oe%te.length];we=Oe+1;let at=n.appliedEpoch();Kt=at;let Ct=L.performance.now(),Je=Oe!==Ee-1;if(!Je){let Qt=Ct-He.onTime;He.busy=Qt,t()&&Oe!==j&&at!==W&&He.units===0&&z(Qt,He.frameTime),W=at}let{units:Lr,reservoir:It}=He;if(Lr===0)return;let cr=null;!Je&&It!==null&&He.inputEpoch===Rt&&(cr=(Ct-He.start)/Lr,Vm(It,cr)),i!==void 0&&i({type:"unit-frame",frameTime:He.frameTime,units:Lr,kind:It===null?null:It.kind,cost:cr,p50:It===null?null:It.p50,p90:It===null?null:It.p90,budget:Wo(He.interval),rows:He.rows.splice(0)})},ze=()=>re==="framing"||R===0||v()?!1:(re="framing",he=L.requestAnimationFrame(ye),!0),$t=()=>{if(t()){E=o(),yD(x),N=0,b=null;let pe=ze();i!==void 0&&i({type:"hold-start",interval:h,listening:pe});return}i!==void 0&&i({type:"hold-end",interval:h,stepP50:b,samples:N}),oe()},_r=()=>{Rt+=1},Tn={wake:oe};K.port2.onmessage=ue,K.port1.onmessage=ve,L.addEventListener("keydown",_r,Rs),L.addEventListener("keyup",_r,Rs),y=Tn,g=U;let LS=r($t);return oe(),()=>{LS(),L.removeEventListener("keydown",_r,Rs),L.removeEventListener("keyup",_r,Rs),he!==0&&L.cancelAnimationFrame(he),K.port1.onmessage=null,K.port2.onmessage=null,K.port1.close(),K.port2.close(),y=null,g=null,h=null,b=null}}}},hs=Km(null),zo=Km(null),ed=e=>{let t=Xl(hs);if(t===null)throw new Error(`[daily-report] ${e} is called outside a view's rows (no row pass)`);return t},Gm=()=>ed("useViewGridId").gridId,bs=(e,t,r)=>{let n=ed("useRowPass"),o=zm(),[a,s]=aD(()=>({bodyReady:!0,rendered:t.read()}),t,c=>({bodyReady:o.getZone()==="visible",rendered:c.read()})),i=Pm(a),l=Pm(Zl),d=Jl(c=>{let u=i.current,m=t.read();if(u.bodyReady&&Object.is(u.rendered,m)){l.current();return}let p=u.bodyReady?t.changesBox(u.rendered,m)?"box":"marks":"body";l.current=n.enqueue({reportHubId:e,handle:o,apply:s,sizing:r,change:p},c)},[n,e,o,t,r]);return Gl(()=>n.declareRow(r),[n,r]),Gl(()=>{let c=t.subscribe(()=>d("notification"));return()=>{c(),l.current()}},[t,d]),Gl(()=>{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},Ym=e=>{let t=ed("useRowBodyDeclaration"),r=zm();return Jl(o=>t.declareBody(e,r,o),[t,e,r])},qm=()=>{let e=Xl(hs),t=Xl(zo);return Jl(()=>{e!==null&&t!==null&&e.invalidate(t)},[e,t])};import{clsx as SD}from"clsx";import{twMerge as gD}from"tailwind-merge";function I(...e){return gD(SD(e))}var Ve=e=>{let t=new Map;return r=>{let n=r===void 0?"":r,o=t.get(n);if(o!==void 0)return o;let a=I(e,n);return t.set(n,a),a}};import{useCallback as Xm,useMemo as ED,useSyncExternalStore as DD}from"react";var Qm="(prefers-reduced-motion: reduce)",Zm=e=>je(e).matchMedia(Qm).matches?"instant":"smooth",wD=Object.freeze({...wl,startVelocityThreshold:Number.POSITIVE_INFINITY}),Wn=e=>e?wD:wl,TD=()=>!1,AD=()=>{},zn=e=>{let t=ED(()=>e===null?null:je(e).matchMedia(Qm),[e]),r=Xm(o=>t===null?AD:(t.addEventListener("change",o),()=>t.removeEventListener("change",o)),[t]),n=Xm(()=>t===null?!1:t.matches,[t]);return DD(r,n,TD)};import{useSyncExternalStore as vD}from"react";import{jsx as td}from"react/jsx-runtime";var Ss=()=>{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)})}},Jm=16,xD=I(su,"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"),CD=(e,t)=>e==="vertical"?{top:0,left:-Jm,transform:`translate(-100%, calc(${t}px - 50%))`}:{top:-Jm,left:0,transform:`translate(calc(${t}px - 50%), -100%)`},gs=({orientation:e,thumbCenter:t,isDragging:r,isTapScrollActive:n,store:o})=>{let{label:a,isWheelScrollActive:s}=vD(o.subscribe,o.getState,o.getState);return a.trim()&&(r||n||s)?td("div",{className:"pointer-events-none absolute flex items-center",style:CD(e,t),children:td("div",{className:xD,children:td("span",{className:"whitespace-nowrap font-semibold text-slate-800 dark:text-slate-100",children:a.trim()})})}):null};import{createContext as ID,useContext as _D,useLayoutEffect as LD,useRef as ND}from"react";var rd=ID(null),Es=({items:e,scroller:t,readTopReportId:r})=>{let n=_D(rd),o=n===null?null:n.request,a=ND(o===null?0:o.seq);LD(()=>{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:rr(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 mc,useCallback as Sn,useContext as Yx,useEffect as Nh,useLayoutEffect as Oh,useMemo as lo,useRef as pc}from"react";var Ds="Internal",OD=e=>e.trim().toLowerCase();var MD=e=>e===Ds,un=(e,t)=>e!=null&&typeof t=="string"&&t!==""&&e.userId===t&&MD(e.sourceType);var ws="legacy-",PD=e=>`${ws}${e}`,ef=(e,t,r,n)=>{if(typeof n!="string"||n.trim()==="")throw Me("mergeComments: unknownAuthorName","a non-blank string",n);let o=e.map((s,i)=>({id:PD(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]},tf=e=>{if(!e)return"text-gray-700 dark:text-gray-300";let t=e.toLowerCase();return t.includes("red")||t.includes("\u8D64")?"text-red-800 dark:text-red-300":t.includes("green")||t.includes("\u7DD1")?"text-green-900 dark:text-green-400":t.includes("blue")||t.includes("\u9752")?"text-blue-800 dark:text-blue-300":t.includes("yellow")||t.includes("\u9EC4")?"text-yellow-900 dark:text-yellow-400":t.includes("orange")||t.includes("\u6A59")?"text-orange-900 dark:text-orange-400":"text-gray-700 dark:text-gray-300"};var kD=Object.freeze(["subject","content","author","employeeName","updatedBy","category","creationCategory","customerName"]),Te=Object.freeze({field:e=>e,interviewer:(e,t)=>`interviewer:${e}:${t}`,attachment:e=>`attachment:${e}`,comment:(e,t)=>`comment:${e}:${t}`}),FD=e=>e.startsWith(ws)?_n(e.slice(ws.length))!==null:Ep(e)!==null,Kn=e=>{if(kD.includes(e))return!0;let t=e.split(":");switch(t[0]){case"interviewer":return t.length===3&&_n(t[1])!==null&&(t[2]==="name"||t[2]==="affiliation");case"attachment":return t.length===2&&_n(t[1])!==null;case"comment":return t.length===3&&FD(t[1])&&(t[2]==="author"||t[2]==="content");default:return!1}},HD=16777619,BD=2166136261,UD=(e,t,r,n)=>{let o=e;for(let a=r;a<n;a++)o^=t.charCodeAt(a),o=Math.imul(o,HD);return o>>>0},nd=e=>UD(BD,e,0,e.length),VD=String.fromCodePoint(3),WD=String.fromCodePoint(2),zD=String.fromCodePoint(1),rf=e=>nd(e.map(t=>t.map(r=>r.map(n=>`${n.tier}${n.text}`).join(VD)).join(WD)).join(zD));import{createContext as hy,useCallback as fy,useEffect as yy,useLayoutEffect as Ry,useMemo as Id,useRef as xd,useState as ar}from"react";import{z as Ne}from"zod/v3";var nf=Object.freeze(["create","update","publish","delete","toggleStar","toggleRead","addComment","deleteComment","clearCache"]);var wt=Object.freeze({intent:"intent",clientTempId:"clientTempId",businessDate:"businessDate",operationTimestamp:"operationTimestamp",reportHubId:"reportHubId",title:"title",content:"content",isStarred:"isStarred",isRead:"isRead",commentId:"commentId"}),Ts=e=>{let t=new FormData;if(t.append(wt.intent,e.intent),e.intent==="clearCache"||(t.append(wt.clientTempId,e.clientTempId),e.businessDate!==null&&t.append(wt.businessDate,e.businessDate),e.operationTimestamp!==null&&t.append(wt.operationTimestamp,String(e.operationTimestamp)),e.intent==="create"))return t;switch(t.append(wt.reportHubId,String(e.reportHubId)),e.intent){case"update":return e.changes.title!==void 0&&t.append(wt.title,e.changes.title),e.changes.content!==void 0&&t.append(wt.content,e.changes.content),t;case"publish":case"delete":return t;case"toggleStar":return t.append(wt.isStarred,String(e.value)),t;case"toggleRead":return t.append(wt.isRead,String(e.value)),t;case"addComment":return t.append(wt.content,e.content),t;case"deleteComment":return t.append(wt.commentId,String(e.commentId)),t}},KD=()=>{let e=Xe,t=Ne.string().regex(ka),r=Ne.literal("OK"),n=Ne.object({isStarred:Ne.boolean(),isRead:Ne.boolean()}),o=Ne.number().int().nonnegative().nullable();return{create:Ne.object({status:r,intent:Ne.literal("create"),reportHubId:e,clientTempId:t,report:yr}),update:Ne.object({status:r,intent:Ne.literal("update"),reportHubId:e,clientTempId:t}),publish:Ne.object({status:r,intent:Ne.literal("publish"),reportHubId:e,clientTempId:t,report:yr.nullable()}),delete:Ne.object({status:r,intent:Ne.literal("delete"),reportHubId:e,clientTempId:t}),toggleStar:Ne.object({status:r,intent:Ne.literal("toggleStar"),reportHubId:e,clientTempId:t,updatedStatus:n,operationTimestamp:o}),toggleRead:Ne.object({status:r,intent:Ne.literal("toggleRead"),reportHubId:e,clientTempId:t,updatedStatus:n,operationTimestamp:o}),addComment:Ne.object({status:r,intent:Ne.literal("addComment"),reportHubId:e,clientTempId:t,newComment:pl}),deleteComment:Ne.object({status:r,intent:Ne.literal("deleteComment"),reportHubId:e,clientTempId:t,deletedCommentId:Xe}),clearCache:Ne.object({status:r,intent:Ne.literal("clearCache")})}},od=null,$D=()=>(od===null&&(od=KD()),od),of=(e,t)=>{let r=$D()[e].safeParse(t);return r.success?{result:r.data}:{mismatch:Ua(r.error)}};import{useState as qD}from"react";var As=e=>{let t=e>>>0,r=(e-t)/4294967296|0;return Math.imul(t^Math.imul(r,1540483477),2654435761)>>>0},Dr=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=As(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=As(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=As(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=As(this.idAt(a))>>>n;for(;this.slots[s]!==-1;)s=s+1&r;this.slots[s]=a}}};var jD=e=>e.appended instanceof er&&e.replaced.previous instanceof er&&e.replaced.next instanceof er&&e.removed instanceof er,sd=e=>{if(jD(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`)},vs=1,xs=2,pn=3,af=16,GD=8192,YD=Float64Array.BYTES_PER_ELEMENT+2*Uint32Array.BYTES_PER_ELEMENT+3*Uint8Array.BYTES_PER_ELEMENT,ad=e=>{let t=new ArrayBuffer(e*YD),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)}},sf=Object.freeze({previous:Ht,next:Ht}),id=()=>{let e=0,t=ad(af),r=d=>t.ids[d],n=new Dr(r),o=()=>{let d=ad(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 m=n.find(d);if(m===-1){let p=a(d,vs);t.lastDates[p]=c,t.lastSources[p]=u;return}if(t.states[m]!==pn)throw new Error(`[daily-report] The ids stream list took report ${d}, which it already holds`);t.states[m]=xs,t.lastDates[m]=c,t.lastSources[m]=u},i=(d,c,u,m,p)=>{let f=n.find(d);if(f===-1)f=a(d,xs),t.firstDates[f]=c,t.firstSources[f]=u;else if(t.states[f]===pn)throw new Error(`[daily-report] The ids stream list changed report ${d}, which it no longer holds`);t.lastDates[f]=m,t.lastSources[f]=p},l=(d,c,u)=>{let m=n.find(d);if(m===-1){let p=a(d,pn);t.firstDates[p]=c,t.firstSources[p]=u;return}if(t.states[m]===vs){n.delete(d),t.states[m]=0;return}if(t.states[m]===pn)throw new Error(`[daily-report] The ids stream list dropped report ${d}, which it no longer holds`);t.states[m]=pn};return{add:s,change:i,remove:l,fold:d=>{let{removed:c,appended:u,replaced:m}=sd(d),{previous:p,next:f}=m;for(let y=0;y<c.length;y++)l(c.ids[y],c.businessDateCodes[y],c.sourceTypeCodes[y]);for(let y=0;y<f.length;y++)i(f.ids[y],p.businessDateCodes[y],p.sourceTypeCodes[y],f.businessDateCodes[y],f.sourceTypeCodes[y]);for(let y=0;y<u.length;y++)s(u.ids[y],u.businessDateCodes[y],u.sourceTypeCodes[y])},isEmpty:()=>n.size===0,build:(d,c)=>{let u=0,m=0,p=0;for(let h=0;h<e;h++){let b=t.states[h];b===vs?u+=1:b===xs?m+=1:b===pn&&(p+=1)}let f=u+2*m+p;if(f===0)return{base:d,revision:c,appended:Ht,replaced:sf,removed:Ht};let y=Mn(f),g=0,R=u,E=R+m,S=E+m;for(let h=0;h<e;h++){let b=t.states[h];b===vs?(y.ids[g]=t.ids[h],y.businessDateCodes[g]=t.lastDates[h],y.sourceTypeCodes[g]=t.lastSources[h],g+=1):b===xs?(y.ids[R]=t.ids[h],y.businessDateCodes[R]=t.firstDates[h],y.sourceTypeCodes[R]=t.firstSources[h],R+=1,y.ids[E]=t.ids[h],y.businessDateCodes[E]=t.lastDates[h],y.sourceTypeCodes[E]=t.lastSources[h],E+=1):b===pn&&(y.ids[S]=t.ids[h],y.businessDateCodes[S]=t.firstDates[h],y.sourceTypeCodes[S]=t.firstSources[h],S+=1)}return{base:d,revision:c,appended:Er(y,0,u),replaced:m===0?sf:{previous:Er(y,u,m),next:Er(y,u+m,m)},removed:Er(y,u+2*m,p)}},reset:()=>{if(e=0,t.ids.length<=GD){n.clear();return}t=ad(af),n=new Dr(r)}}},lf=(e,t,r)=>{let n=id();for(let o of e)n.fold(o);return n.build(t,r)},df=(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 XD={items:ds,held:new Map,hidden:new Map,revision:null,settled:!1},ld=(e,t,r)=>{let n=0,o=e.length;for(;n<o;){let a=n+o>>1;Hn(an(e,a),Fn(e,a),t,r)<0?n=a+1:o=a}return n<e.length&&an(e,n)===t?n:-1},Cs=(e,t)=>ld(e,t.reportHubId,tr(t.businessDate)),dd=(e,t,r,n)=>{let o=n,a=e.length;for(;o<a;){let s=o+a>>1;Hn(an(e,s),Fn(e,s),t,r)<=0?o=s+1:a=s}return o},QD=(e,t)=>{if(t.length===0)return[];let r=e.length-1;if(e.length===0||Hn(an(e,r),Fn(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=dd(e,t.ids[a],t.businessDateCodes[a],o),n.push(o);return n},ZD=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},uf=e=>{if(ZD(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 Gt(e.length);for(let n of t)r.pushFrom(e,n);return r.build()},pf=(e,t,r,n)=>{let o=cm(t.readRows()),a=new Dr(d=>o.ids[d]);for(let d=0;d<o.length;d++)a.set(o.ids[d],d);let s=new Gt(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 m=e.held.get(u),p=m===void 0?Number.NEGATIVE_INFINITY:m.since;r&&u>0&&t.itemsRevision>p||(l.set(u,{item:m===void 0?ls(u,d.businessDateCodes[c],d.sourceTypeCodes[c]):m.item,since:p}),s.pushFrom(d,c))}return{items:mm(uf(s.build())),held:l,hidden:i,revision:t.itemsRevision,settled:r}},JD=(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?[]:df(t.itemsChanges,o);if(o===null||a===null)return pf(e,t,r,n);let s=e.items,i=[],l=[],d=a.length===0?null:a.length===1?sd(a[0]):lf(a,o,t.itemsRevision),c=new Gt(d===null?0:d.appended.length+d.replaced.next.length),u=null,m=()=>(u===null&&(u=new Map(e.held)),u),p=null,f=()=>(p===null&&(p=new Map(e.hidden)),p);if(d!==null){let{appended:E,replaced:S,removed:h}=d;for(let D=0;D<h.length;D++){let _=h.ids[D];if(e.hidden.has(_)&&f().delete(_),e.held.has(_))continue;let T=ld(s,_,h.businessDateCodes[D]);T!==-1&&(r||n.has(_)?i.push(T):m().set(_,{item:ls(_,Fn(s,T),Kl(s,T)),since:Number.NEGATIVE_INFINITY}))}let b=(D,_,T)=>{let P=D.ids[_],M=D.businessDateCodes[_],H=D.sourceTypeCodes[_],A=e.held.get(P);A!==void 0&&m().delete(P);let C=A===void 0?T:tr(A.item.businessDate),v=C===-1?-1:ld(s,P,C);if(n.has(P)){v!==-1&&i.push(v),f().set(P,D.itemAt(_));return}if((p===null?e.hidden:p).has(P)&&f().delete(P),v!==-1&&Fn(s,v)===M){Kl(s,v)!==H&&l.push({index:v,id:P,businessDateCode:M,sourceTypeCode:H});return}v!==-1&&i.push(v),c.push(P,M,H)};for(let D=0;D<S.next.length;D++)b(S.next,D,S.previous.businessDateCodes[D]);for(let D=0;D<E.length;D++)b(E,D,-1)}let y=t.itemsRevision;if(r)for(let[E,S]of u===null?e.held:u){if(E<=0||y<=S.since)continue;let h=Cs(s,S.item);h!==-1&&i.push(h),m().delete(E)}let g=uf(c.build());return{items:Bn(s,{removals:i,replacements:l,additions:g,insertions:QD(s,g)}),held:u===null?e.held:u,hidden:p===null?e.hidden:p,revision:y,settled:r}},cf=new WeakMap,ew=(e,t,r,n)=>{let o=cf.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=JD(e,t,r,n);return cf.set(e,{revision:t.itemsRevision,changes:t.itemsChanges,settled:r,tombstones:n,rows:a}),a},mf=(e,t,r)=>{let[n,o]=qD(()=>pf(XD,e,t,r));return(n.revision!==e.itemsRevision||n.settled!==t)&&o(a=>ew(a,e,t,r)),[n,o]},Is=(e,t,r)=>{if(e.hidden.has(t.reportHubId))return cd(e,t.reportHubId);if(e.held.has(t.reportHubId)||Cs(e.items,t)!==-1||Uo(e.items,t.reportHubId)!==-1)return e;let n=Bn(e.items,{...sn,additions:Hl([t]),insertions:[dd(e.items,t.reportHubId,tr(t.businessDate),0)]}),o=new Map(e.held);return o.set(t.reportHubId,{item:t,since:r}),{...e,items:n,held:o}},cd=(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,{...sn,additions:Hl([r]),insertions:[dd(e.items,r.reportHubId,tr(r.businessDate),0)]}),hidden:n}},mn=(e,t)=>{let r=e.held.get(t);if(r===void 0)return e;let n=Cs(e.items,r.item),o=new Map(e.held);return o.delete(t),{...e,items:Bn(e.items,n===-1?sn:{...sn,removals:[n]}),held:o}},ff=(e,t)=>{let r=e.held.get(t.reportHubId),n=Cs(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?sn:{...sn,removals:[n]}),held:o}},yf=e=>({...e,revision:null});import{startTransition as fw,useLayoutEffect as yw,useState as Rw,useSyncExternalStore as Go}from"react";var Rf=e=>{let t=new URLSearchParams;return e.cursor!==null&&(t.set(Ue.cursorReportHubId,String(e.cursor.reportHubId)),e.cursor.businessDate!==null&&t.set(Ue.cursorBusinessDate,e.cursor.businessDate)),e.snapshot!==null&&t.set(Ue.cursorSnapshot,e.snapshot),e.forceRefresh&&t.set(Ue.forceRefresh,"true"),t};var Ko=1,tw=2,rw=1024,$n=1024,_s=class{constructor(){this.used=0;this.holes=0;this.ids=new Float64Array($n);this.dates=new Uint32Array($n);this.sources=new Uint8Array($n);this.flags=new Uint8Array($n);this.positions=new Dr(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:gr(this.dates[t]),sourceType:on(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]=Ko,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>=rw&&this.holes>this.positions.size&&this.compact()}markSeen(t){let r=this.positions.find(t);r!==-1&&(this.flags[r]|=tw)}clearSeen(){for(let t=0;t<this.used;t++)this.flags[t]&=Ko}unseenIds(){let t=[];for(let r=0;r<this.used;r++)this.flags[r]===Ko&&t.push(this.ids[r]);return t}rows(){let t=new Gt(this.positions.size);for(let r=0;r<this.used;r++)(this.flags[r]&Ko)!==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]&Ko)!==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($n,t*4)&&this.resize(Math.max($n,t*2))}};var hf=()=>{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 nw=e=>({debug:e,info:e,warn:e,error:e}),ow=50,aw=32,bf=0,sw=()=>(bf+=1,bf),iw=1e3,lw=3e4,dw=6,cw=3e4,Sf=Symbol("read-stall"),uw=Object.freeze({reading:()=>{},stalled:()=>!1,stop:()=>{}}),pw="/daily_report/api",mw=e=>typeof e=="object"&&e!==null&&e.name==="AbortError",Ls=class{constructor(t={}){this.rows=new _s;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=id();this.apiBasePath=t.apiBasePath??pw,this.fetchFn=t.fetchFn??((r,n)=>fetch(r,n)),this.setTimeoutFn=t.setTimeoutFn??((r,n)=>setTimeout(r,n)),this.clearTimeoutFn=t.clearTimeoutFn??(r=>clearTimeout(r)),this.warn=Pt(t.warn===void 0?void 0:nw(t.warn),1,"IdsStream").warn,this.readStallTimeoutMs=t.readStallTimeoutMs??cw,this.publishCoalesceMs=t.publishCoalesceMs??ow,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,tr(t.businessDate),Ho(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 Gt(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>=dw){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(iw*2**(this.consecutiveFailures-1),lw))}}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===Sf)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=hf(),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),m=!1,p=!1;for(let f of u){if(f.trim()==="")continue;let y;try{y=JSON.parse(f)}catch{p=!0;break}let g=Rl(y);if(g==="unknown"){this.warn("skipped line of unknown kind");continue}if(g==="error"){l=!0;continue}let R=pp(y);if(R===null){p=!0;break}m=this.absorbChunkLine(R)||m,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(m&&(this.consecutiveFailures=0,this.schedulePublishItems()),p)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 mw(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(Sf),this.readStallTimeoutMs*3);t.then(a=>{this.clearTimeoutFn(o),r(a)},a=>{this.clearTimeoutFn(o),n(a)})})}watchReadSilence(t){if(this.readStallTimeoutMs<=0)return uw;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=tr(null),s,i=Ho(void 0),l=(d,c,u)=>{this.externalRemovalTombstones.has(d)||(c!==o&&(o=c,a=tr(c)),u!==s&&(s=u,i=Ho(u)),this.putItem(d,a,i)&&(n=!0),r||this.rows.markSeen(d))};return mp(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=sw(),r=this.pendingItemsChange.build(this.state.itemsRevision,t);return this.pendingItemsChange.reset(),{loadedCount:this.rows.size,itemsRevision:t,itemsChanges:[...this.state.itemsChanges.slice(1-aw),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=Rf({cursor:this.lastCursor,snapshot:this.lastCursor===null?null:this.lastSnapshot,forceRefresh:t}).toString();return`${this.apiBasePath}/${Ba}${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 hw=6e4,Se=null,gf=!1,$o=new Set,Ns={loadedCount:0,itemsRevision:0,itemsChanges:[],totalCount:null,phase:"idle",isRevalidating:!1,hasCompletedOnce:!1,completedAt:null,error:null,streamAnchor:null},ud=()=>{for(let e of $o)e()},pd=()=>{Se&&(Se.unsubscribe(),Se.client.dispose(),Se=null,ud())},jo=e=>{if(typeof window>"u")return;let t=e.apiBasePath??Lo.apiBasePath;if(Se&&(Se.userKey!==e.userKey||Se.apiBasePath!==t)&&(Se.userKey!==e.userKey&&Po(),pd()),!Se){let r=new Ls({apiBasePath:t});Se={client:r,userKey:e.userKey,apiBasePath:t,unsubscribe:r.subscribe(ud)},bw(),r.start(),ud();return}Ms(Se)},Ms=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>hw&&e.client.refresh()},bw=()=>{if(gf||typeof document>"u"||typeof window>"u")return;gf=!0;let e=()=>{Se&&Ms(Se)};document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&e()}),window.addEventListener("focus",e)},md=e=>{if(!(typeof window>"u")){if(!Se){jo(e);return}if(Se.userKey!==e.userKey){Po(),pd(),jo(e);return}Ms(Se)}},fd=()=>{typeof window>"u"||!Se||Ms(Se)},jn=e=>{Se?.client.applyExternalUpsert(e)},Gn=e=>{Se?.client.applyExternalRemoval(e)},Df=e=>Se===null?!1:Se.client.has(e),wf=()=>Se===null?Ht:Se.client.readRows(),yd=()=>Se===null?0:Se.client.getState().itemsRevision,Ps=()=>{Se?.client.retry()},ks=()=>{Se?.client.resync()},Yo=(e={})=>{Se?.client.refresh(e)},Tf=()=>Se?.userKey,qo=e=>($o.add(e),()=>$o.delete(e)),Os=()=>Se?.client.getState()??Ns,Sw=()=>Ns,gw=()=>Go(qo,Os,Sw),Fs=(e,t)=>{let r=Ns,n=e(Ns);return()=>{let o=Os();if(o===r)return n;let a=e(o);return r=o,t(n,a)||(n=a),n}},Af=Fs(({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),Ew=Af(),Yn=()=>Go(qo,Af,()=>Ew),vf=Fs(({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),Dw=vf(),xf=()=>Go(qo,vf,()=>Dw),Cf=Fs(({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),ww=Cf(),If=()=>Go(qo,Cf,()=>ww),_f=Fs(({phase:e,totalCount:t})=>({phase:e,totalCount:t}),(e,t)=>e.phase===t.phase&&e.totalCount===t.totalCount),Tw=_f(),Lf=()=>Go(qo,_f,()=>Tw),Nf=e=>e.phase==="complete"&&!e.isRevalidating,Ef=e=>`${e.itemsRevision}:${Nf(e)}`,Of=()=>{let[,e]=Rw(0),t=Os(),r=Ef(t);return yw(()=>{let n=r,o=()=>{let a=Ef(Os());a!==n&&(n=a,fw(()=>e(s=>s+1)))};return $o.add(o),o(),()=>{$o.delete(o)}},[]),{itemsRevision:t.itemsRevision,itemsChanges:t.itemsChanges,readRows:wf,settled:Nf(t)}};import.meta.hot?.dispose(pd);var Hs=(e,t,r)=>{if(!Number.isFinite(e)||e<=0)throw Me("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 Aw=3e4,Mf=e=>{let t=Hs(Aw,e,()=>{});return{add:r=>t.add(r,!0),has:r=>t.get(r)===!0}},qn=(e,t)=>e.has(t)?e:new Set(e).add(t),Pf=(e,t)=>{if(!e.has(t))return e;let r=new Set(e);return r.delete(t),r},kf=new Set,Ff=()=>new Set,Hf=()=>new Map,Bf=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()}}}},Uf=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 Rd=0,hd=e=>{let t=ut("drawTemporaryId: nowMs",e,1);return Rd=Math.min(-t,Rd-1),Rd};var wr=(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 bd=Pt(void 0,1,"ActionProvider"),vw=1e3,Sd=class extends Error{constructor(t,r){super(`[daily-report] ${t} answered HTTP ${r}`),this.name="DailyReportActionHttpError",this.status=r}},SP=Object.freeze(["delete","deleteComment"]),xw=e=>e.intent==="create"?null:e.reportHubId,Cw=(e,t)=>{let r=e;if(r.intent==="clearCache"||r.clientTempId!==t.clientTempId)return!1;let n=xw(t);return n===null||r.reportHubId===n},Vf=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:m,setRows:p,drafts:f,invalidateSearch:y,announceDataChange:g,notifyError:R}=e,E=async(A,C,v={})=>{let{intent:w}=A,{onGone:O}=C,{lockedReportHubId:B}=v,V=B===void 0?null:Yp(B);C.onOptimistic?.(),s.add(A.clientTempId);let X=()=>{if(!a())throw bd.warn(`[executeAction] ${w} resolved after a user switch; discarding continuation`),new Error(`Stale continuation for ${w}`)};try{let G=await fetch(`${t}/${$e.action}`,{method:"POST",body:Ts(A),headers:{Accept:"application/json"}});if(G.status===404&&O!==void 0)return X(),O();if(!G.ok)throw new Sd(w,G.status);let Q=of(w,await G.json());if("mismatch"in Q)throw new Error(`[daily-report] ${w} answered a body that is not its result (${Q.mismatch})`);let{result:q}=Q;if(!Cw(q,A))throw new Error(`[daily-report] ${w} answered another request`);return X(),C.onSuccess(q)}catch(G){throw bd.error(`${w} failed:`,G),a()&&(C.onFailure?.(),R({operation:w,message:r.operationFailed(w),cause:G})),G}finally{V?.()}},S=(A,C,v)=>({reportHubId:A,clientTempId:v,businessDate:typeof C=="string"?C:null,operationTimestamp:Date.now()});return{addComment:async(A,C,v)=>{let w=hd(Date.now()),O=E({...S(A,v,String(w)),intent:"addComment",content:C},{onOptimistic:()=>{l(({pendingAddCommentIds:B})=>{let V=B.get(A);V===void 0?B.set(A,new Map([[w,C]])):V.set(w,C)})},onSuccess:({newComment:B})=>{let V=B.id;l(({resolvedIdMap:G,pendingAddCommentIds:Q})=>{G.set(w,V),Q.get(A)?.delete(w)}),y();let X=Et(A,{ignoreExpiry:!0});return X&&!X.postedComments.some(G=>G.id===V)&&Ft(A,{postedComments:[...X.postedComments,{...B,isMine:!0,userName:wr(n,r.unknownUser)}]}),V},onFailure:()=>{l(({pendingAddCommentIds:B})=>B.get(A)?.delete(w))}}).finally(()=>d.current.delete(w));d.current.set(w,O),await O},deleteComment:async(A,C,v)=>{l(({pendingDeleteCommentIds:B})=>{let V=B.get(A);V===void 0?B.set(A,new Set([C])):V.add(C)});let w=C;if(C<0){let B=i.resolvedIdMap.current.get(C);if(B!==void 0)w=B;else{let V=d.current.get(C);if(!V)return;try{w=await V}catch{return}}}let O=()=>{let B=Et(A,{ignoreExpiry:!0});B&&(Ft(A,{postedComments:B.postedComments.filter(V=>V.id!==w)}),Xp(w)),l(({pendingDeleteCommentIds:V})=>V.get(A)?.delete(C)),y()};await E({...S(A,v,crypto.randomUUID()),intent:"deleteComment",commentId:w},{onSuccess:O,onGone:O,onFailure:()=>{l(({pendingDeleteCommentIds:B})=>B.get(A)?.delete(C))}})},toggleStar:async(A,C,v)=>{await E({...S(A,v,crypto.randomUUID()),intent:"toggleStar",value:C},{onOptimistic:()=>{Ft(A,{isStarred:C}),l(({pendingStarUpdates:w})=>w.set(A,C))},onSuccess:({updatedStatus:w})=>{Et(A,{ignoreExpiry:!0})&&(Ft(A,{isStarred:w.isStarred}),g()),l(({pendingStarUpdates:O})=>O.delete(A))},onFailure:()=>{Ft(A,{isStarred:!C}),l(({pendingStarUpdates:w})=>w.delete(A))}})},toggleRead:async(A,C,v)=>{await E({...S(A,v,crypto.randomUUID()),intent:"toggleRead",value:C},{onOptimistic:()=>{Ft(A,{isRead:C}),l(({pendingReadUpdates:w})=>w.set(A,C))},onSuccess:({updatedStatus:w})=>{Et(A,{ignoreExpiry:!0})&&(Ft(A,{isRead:w.isRead}),g()),l(({pendingReadUpdates:O})=>O.delete(A))},onFailure:()=>{Ft(A,{isRead:!C}),l(({pendingReadUpdates:w})=>w.delete(A))}})},createReport:async A=>{let C=hd(Date.now()),v=new Date().toISOString(),w={reportHubId:C,date:A,createdAt:v,author:wr(n,r.unknownUser),userId:n===void 0?null:n.id,sourceType:Ds,employeeName:wr(n,r.unknownUser),updatedBy:wr(n,r.unknownUser),updatedAt:v,category:null,creationCategory:null,visitTimeFrom:null,visitTimeTo:null,customerName:null,interviewers:[],subject:"",content:"",externalComments:[],isRead:!0,isStarred:!1,isDraft:!0,labels:[],postedComments:[],attachments:[]};Gp(w,Date.now()+3e5,!1),p(O=>Is(O,{reportHubId:C,businessDate:A},Number.NEGATIVE_INFINITY));try{let O=await E({intent:"create",clientTempId:String(C),businessDate:A,operationTimestamp:Date.now()},{onSuccess:X=>X.report}),B=O.reportHubId,V=yd();return jn({reportHubId:B,businessDate:A}),qp(B,vw),Sr(B,O),g(),y(),p(X=>Is(mn(X,C),{reportHubId:B,businessDate:A},V)),B}catch(O){throw bd.error("[createReport] Failed",O),p(B=>mn(B,C)),O}},updateReport:async(A,C,v)=>{await E({...S(A,v,crypto.randomUUID()),intent:"update",changes:{title:C.title,content:C.content}},{onSuccess:()=>{Et(A,{ignoreExpiry:!0})&&(Ft(A,{subject:C.title,content:C.content}),g()),y()}},{lockedReportHubId:A})},publishReport:async(A,C)=>{let v=Et(A,{ignoreExpiry:!0});await E({...S(A,C,crypto.randomUUID()),intent:"publish"},{onOptimistic:()=>{v&&(Ft(A,{isDraft:!1}),g())},onSuccess:({report:w})=>{w!==null&&(Sr(A,w),g()),C!==void 0&&jn({reportHubId:A,businessDate:C}),y()},onFailure:()=>{v&&(Ft(A,{isDraft:v.isDraft}),g())}})},deleteReport:async(A,C)=>{let v=ym(o,A);c.current=qn(c.current,A),u.current.add(A),m(O=>O+1),Gn(A),v!==void 0&&p(O=>ff(O,v));let w=()=>{rs(A,C),f.discard(A),y()};try{await E({...S(A,C,crypto.randomUUID()),intent:"delete"},{onSuccess:w,onGone:w},{lockedReportHubId:A})}catch(O){if(!a())return;c.current=Pf(c.current,A),u.current.delete(A),m(X=>X+1);let B=v===void 0?C:v.businessDate,V=yd();throw B!==void 0&&jn({reportHubId:A,businessDate:B}),p(X=>{let G=cd(X,A);return v===void 0?G:Is(G,v,V)}),O}}}};var Wf=Pt(void 0,1,"ActionProvider"),Iw=3e4,zf=e=>Hs(Iw,e,(t,r)=>{r.unsubscribe(),Wf.warn(`[SSE Queue] Expired: reportHubId=${t}, dropped=${r.messages.length} messages`)}),_w=(e,t)=>{t!==void 0&&jn({reportHubId:e,businessDate:t})},Kf=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:m,invalidateSearch:p,announceDataChange:f,pendingSseQueue:y,replay:g}=e,R=(S,h)=>{let b=y.get(S);if(b!==void 0){b.messages.push(h);return}let D;D={messages:[h],unsubscribe:Qp(S,()=>{if(y.get(S)===D&&Et(S,{ignoreExpiry:!0})){y.remove(S),D.unsubscribe(),Wf.info(`[SSE Queue] Replaying ${D.messages.length} messages for reportHubId=${S}`);for(let T of D.messages)g(T)}})},y.add(S,D)};return S=>{if(o()&&!a.has(S.clientTempId))switch(S.type!=="status-update"&&p(),S.type){case"comment-add":{let{comment:h,reportHubId:b}=S,D=Et(b,{ignoreExpiry:!0});if(D){if(D.postedComments.some(M=>M.id===h.id))return;let _=typeof r=="string"&&h.userId===r,T={...h,userName:h.userName||(_?wr(t,n.unknownUser):n.unknownUser),createdAt:h.createdAt||new Date().toISOString(),isMine:_},P={...D,postedComments:[...D.postedComments,T].sort((M,H)=>new Date(M.createdAt||0).getTime()-new Date(H.createdAt||0).getTime())};Sr(b,P),_l(b),f()}else R(b,S);break}case"comment-delete":{let{commentId:h,reportHubId:b}=S,D=Et(b,{ignoreExpiry:!0});if(D){let _={...D,postedComments:D.postedComments.filter(T=>T.id!==h)};Sr(b,_),_l(b),f()}else R(b,S);break}case"status-update":{let{statusType:h,value:b,reportHubId:D}=S,_=Et(D,{ignoreExpiry:!0});if(h==="star")if(s.pendingStarUpdates.current.get(D)===b&&i(({pendingStarUpdates:T})=>T.delete(D)),_){let T={..._,isStarred:b};Sr(D,T),f()}else R(D,S);else if(h==="read")if(s.pendingReadUpdates.current.get(D)===b&&i(({pendingReadUpdates:T})=>T.delete(D)),_){let T={..._,isRead:b};Sr(D,T),f()}else R(D,S);break}case"report-delete":{let{reportHubId:h}=S;l.current=qn(l.current,h),d.current.add(h),c(D=>D+1),Gn(h),u(D=>mn(D,h)),m.discard(h),y.remove(h)?.unsubscribe();let b=Et(h,{ignoreExpiry:!0});b?.date&&(rs(h,b.date),f());break}case"report-create":case"report-update":case"report-publish":{let{report:h}=S;S.viewerIsActor?Sr(h.reportHubId,h):Zp(h),(S.type==="report-create"||S.type==="report-publish")&&_w(h.reportHubId,h.date),f();break}}}};import{memo as Fw,useLayoutEffect as Hw}from"react";import{systemSseRuntime as Bs}from"@aiquants/sse";import{createBrowserEventSource as Lw}from"@aiquants/sse/client";import{useReopeningEventSource as Nw}from"@aiquants/sse/react";import{useEffect as gd,useRef as Us,useState as Ow}from"react";var fn=Pt(void 0,1,"SseConnection"),Mw=Object.freeze({kind:"resyncing"}),$f={initialDelayMs:2e3,maxDelayMs:3e4,multiplier:2},Pw=1,jf=ul*3,kw=jf+ul,Ed=({isSseEnabled:e,onMessage:t})=>{let{ssePath:r,onSessionExpired:n}=Y(),{streamAnchor:o,phase:a,isRevalidating:s,error:i}=Yn(),[l,d]=Ow({generation:0,minAnchorRevision:1,anchored:!1}),c=l.generation>0&&!l.anchored,u=c&&a==="complete"&&!s?i:null,m=Us(0),p=Us(null),f=Us(n);f.current=n;let y=Us(0);y.current=o===null?0:o.revision,gd(()=>{l.anchored||o===null||o.revision<l.minAnchorRevision||(p.current=o.lastEventId,m.current=0,d({...l,anchored:!0}))},[l,o]),gd(()=>{if(!e||u===null)return;let{initialDelayMs:R,maxDelayMs:E,multiplier:S}=$f,h=Bs.random()*Math.min(E,R*S**m.current);fn.warn(`SSE resync: the ids rescan gave up (${u.message}); rescanning in ${Math.round(h)} ms`);let b=Bs.setTimer(()=>{m.current+=1,ks()},h);return()=>Bs.clearTimer(b)},[e,u]);let{status:g}=Nw(e&&l.anchored?`${r}#${l.generation}`:null,{resolveUrl:({lastEventId:R})=>R===null?r:`${r}?${ap}=${encodeURIComponent(R)}`,initialLastEventId:p.current,withCredentials:!1,createEventSource:Lw,runtime:Bs,backoff:$f,healthyOpenMs:kw,nativeRetryLimit:Pw,giveUpAfterFailures:"never",terminalEvents:op,heartbeat:{staleAfterMs:jf,onHeartbeat:null},events:{message:R=>{R.lastEventId!==""&&(Fa(R.lastEventId)?p.current=R.lastEventId:fn.warn("SSE event carried a malformed id; keeping the previous cursor:",R.lastEventId));try{let E=JSON.parse(R.data),S=up.safeParse(E);if(!S.success){fn.error("SSE Validation Error:",S.error.flatten(),"raw message:",E);return}if(S.data.type==="connected"){fn.info("SSE Subscribe Ready");return}t(S.data)}catch(E){fn.error("SSE Parse Error",E)}}}});return gd(()=>{if(g.kind==="faulted"){fn.error("SSE connection faulted:",g.error);return}if(g.kind==="terminated")switch(g.terminalEvent){case"auth-required":f.current();return;case"forbidden":fn.warn("SSE stopped: the viewer is not registered (forbidden)");return;case"resync-required":{let R=y.current+1;d(E=>({generation:E.generation+1,minAnchorRevision:R,anchored:!1})),ks();return}}},[g]),e&&c?Mw:g};var Gf=Object.freeze({kind:"idle"}),Dd=Fw(({isSseEnabled:e,onMessage:t,onStatus:r})=>{let n=Ed({isSseEnabled:e,onMessage:t});return Hw(()=>{r(n)},[n,r]),null});Dd.displayName="DailyReportSseConnectionHost";import{createContext as Bw,useCallback as Uw,useSyncExternalStore as Yf}from"react";var qf=()=>{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)}}},wd=Bw(null),Vr=()=>jt(wd,"useDailyReportDraftStore","DailyReportActionProvider"),Xf=(e,t)=>Uw(r=>e.subscribe(t,r),[e,t]),Vs=e=>{let t=Vr(),r=()=>t.modeOf(e);return Yf(Xf(t,e),r,r)},Qf=e=>{let t=Vr(),r=()=>t.inputOf(e),n=Yf(Xf(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 Qw}from"@aiquants/swipe-overlay";import{createContext as Zw,Fragment as Jw,useCallback as $s,useId as Ad,useLayoutEffect as uy,useMemo as eT,useRef as yn,useState as iy}from"react";import{createPortal as ly}from"react-dom";import{createContext as zw,useContext as Kw}from"react";var Vw=new Set(["Alt","AltGraph","CapsLock","Control","Fn","FnLock","Hyper","Meta","NumLock","ScrollLock","Shift","Super","Symbol","SymbolLock"]),Ws={capture:!0},zs=new WeakMap,Ww=e=>{let t=o=>{Vw.has(o.key)||(n.last="keyboard")},r=()=>{n.last="pointer"},n={observers:0,last:null,detach:()=>{e.removeEventListener("keydown",t,Ws),e.removeEventListener("pointerdown",r,Ws)}};return e.addEventListener("keydown",t,Ws),e.addEventListener("pointerdown",r,Ws),n},Zf=e=>{let t=zs.get(e),r=t===void 0?Ww(e):t;t===void 0&&zs.set(e,r),r.observers+=1;let n=!1;return()=>{n||(n=!0,r.observers-=1,!(r.observers>0)&&(r.detach(),zs.delete(e)))}},Xo=e=>{let t=zs.get(e);return t===void 0?null:t.last};var $w=Object.freeze({visibilityProperty:!0,opacityProperty:!0}),jw=Object.freeze({visibilityProperty:!0}),Jf="data-daily-report-view-tabs",ey={[Jf]:""},ty="data-daily-report-status-panel",ry={[ty]:""},Gw=e=>{for(let t of e.getClientRects())if(t.width>0&&t.height>0)return!0;return!1},ny=e=>e.isConnected&&Fo(e)&&Gw(e)&&e.checkVisibility(e.hasAttribute(ps)?jw:$w),Tr=e=>{for(let t of e)if(!(t===null||!ny(t))&&(t.focus({preventScroll:!0}),et(t)===t))return t;return null},Yw=e=>e.querySelector(`[${Jf}] [role="tab"][aria-selected="true"]`),Td=zw(null),oy=()=>{let e=Kw(Td);if(e===null)throw new Error("[daily-report] useFocusViewRow is called outside a view's rows");return e},qw=(e,t,r)=>{if(nn(e))return!0;if(r==="handOver")return!1;let n=et(e);return n===null||!e.contains(n)?!1:r==="overlay"||n!==t},ay=(e,t,r)=>{if(r!=="pointer"||t===null)return e;let n=vm(t);return n!==null&&ny(n)?n:e},sy=(e,t,r,n)=>qw(e,t,n)?Tr([ay(t,r,Xo(e.ownerDocument))]):null,Xw=e=>{let t=e.getAttribute("aria-activedescendant");return t===null?null:e.ownerDocument.getElementById(t)},Ks=e=>{let t=Am(e);return[t===null?null:ay(t,Xw(t),Xo(t.ownerDocument)),Yw(e),e.querySelector(`[${ty}]`)]};import{jsx as or,jsxs as my}from"react/jsx-runtime";var tT=I("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-800 px-[15px] py-[7px] text-sm text-white shadow-lg motion-safe:animate-in motion-safe:duration-200 dark:border-red-500/60",Pr),rT="flex shrink-0 justify-center p-[8px]",nT=I("flex size-6 shrink-0 items-center justify-center rounded font-bold text-white hover:bg-red-900",Jc),oT="data-daily-report-notice-alert",aT={[oT]:""},py=Zw(null),js=()=>jt(py,"useDailyReportErrorSurface","DailyReportErrorProvider"),dy=Object.freeze([]),cy=({notice:e})=>or("div",{role:"alert",...aT,className:"sr-only",children:e===null?null:or("span",{children:e.info.message},e.occurrence)}),sT=({notice:e,closeLabel:t,repeatedLabel:r,onDismiss:n})=>{let o=yn(null),a=yn(null),s=yn(null),i=Qw(),l=Ad(),d=Ad(),c=Ad(),u=e.repeat>1?`${d} ${c}`:d,m=$s(()=>{let y=o.current;if(y?.contains(y.ownerDocument.activeElement)){let[g,...R]=Ks(y.ownerDocument);Tr([a.current,g,y.closest("dialog"),...R])}n()},[n]),p=y=>{if(s.current!==null)return;let g=y.relatedTarget;a.current=Pe(g)&&!y.currentTarget.contains(g)?g:null,s.current=i({id:l,onEscape:()=>(m(),!0)})},f=y=>{Pe(y.relatedTarget)&&y.currentTarget.contains(y.relatedTarget)||(s.current?.(),s.current=null,a.current=null)};return uy(()=>()=>{s.current?.(),s.current=null},[]),my("div",{ref:o,role:"group","aria-labelledby":u,"data-testid":"daily-report-error-banner",className:tT,onFocus:p,onBlur:f,children:[or("span",{id:d,className:"min-w-0 font-medium",children:or(Jw,{children:e.info.message},e.occurrence)}),e.repeat>1&&or("span",{id:c,className:"shrink-0 font-normal tabular-nums",children:r(e.repeat)}),or("button",{type:"button","aria-label":t,"aria-describedby":u,onClick:m,className:nT,children:"\u2715"})]})},vd=({children:e})=>{let{onError:t,labels:r}=Y(),[n,o]=iy(null),[a,s]=iy(dy),i=yn(dy),l=yn(0),d=yn(0),c=yn(t);uy(()=>{c.current=t});let u=$s(E=>{let S=c.current;if(S){S(E);return}d.current+=1;let h=d.current,b=i.current,D=b.length===0?null:b[b.length-1].registration;o(_=>({info:E,occurrence:h,repeat:_!==null&&_.info.message===E.message?_.repeat+1:1,announcedIn:D}))},[]),m=$s(E=>{l.current+=1;let S={element:E,registration:l.current};return i.current=[...i.current,S],s(i.current),()=>{i.current=i.current.filter(h=>h!==S),s(i.current)}},[]),p=$s(()=>o(null),[]),f=eT(()=>({notifyError:u,registerNoticeHost:m}),[u,m]),y=a.at(-1),g=n===null?null:or(sT,{notice:n,closeLabel:r.close,repeatedLabel:r.noticeRepeated,onDismiss:p}),R=E=>n!==null&&n.announcedIn===E?n:null;return my(py.Provider,{value:f,children:[e,or(cy,{notice:R(null)}),a.map(E=>ly(or(cy,{notice:R(E.registration)}),E.element,String(E.registration))),g!==null&&y!==void 0&&ly(g,y.element),g!==null&&y===void 0&&or("div",{"data-daily-report-notice-slot":"",className:rT,children:g})]})};import{jsx as Cd,jsxs as lT}from"react/jsx-runtime";var Gs=Pt(void 0,1,"ActionProvider"),qs=globalThis.__DailyReportActionsContext??hy(null);globalThis.__DailyReportActionsContext=qs;var Xs=globalThis.__DailyReportActionStateContext??hy(null);globalThis.__DailyReportActionStateContext=Xs;var Ys="DailyReportActionProvider",lt=()=>jt(qs,"useDailyReportActions",Ys),Qs=()=>jt(Xs,"useDailyReportActionState",Ys),iT=()=>{let e=jt(qs,"useDailyReportActionContext",Ys),t=jt(Xs,"useDailyReportActionContext",Ys);return Id(()=>({...e,...t}),[e,t])},_d=({children:e,user:t,userId:r})=>{let{apiBasePath:n,labels:o}=Y(),{notifyError:a}=js(),[s,i]=ar(0),[{ledgers:l,write:d}]=ar(()=>Bf(()=>i(F=>F+1))),[c,u]=ar(0),[m,p]=ar(0),[f]=ar(qf),[y,g]=ar(!1),[R,E]=ar(Gf),S=xd(!1),h=Qe(Hf),b=xd(kf),D=Qe(Ff),[_]=ar(()=>Mf(()=>performance.now())),[T]=ar(()=>zf(()=>performance.now())),P=Of(),[M,H]=mf(P,P.settled,b.current),A=M.items,C=`${c}:${M.settled?M.revision:"-"}`,v=()=>{u(F=>F+1)},w=()=>{i(F=>F+1)},O=fy(F=>D.current.has(F),[D]),B=fy(()=>Tf()===(r??null),[r]),V=async()=>{Gs.info("Refetching data without page reload..."),Yo(),w(),se.listeners.forEach(F=>{F(-1)})},X=async()=>{Gs.info("Clearing client & server/DB cache and refetching data without page reload..."),Po(),b.current=new Set,D.current.clear(),p(F=>F+1),H(yf);try{sessionStorage.clear()}catch{}try{let F=await fetch(`${n}/${$e.action}`,{method:"POST",body:Ts({intent:"clearCache"})});if(!F.ok){let ee=await F.json().catch(()=>null);Gs.warn("Failed to clear server-side cache:",F.status,ee)}}catch(F){Gs.warn("Failed to clear server-side cache:",F)}B()&&(Yo({forceRefresh:!0}),w(),se.listeners.forEach(F=>{F(-1)}))};Ry(()=>()=>{for(let F of T.drain())F.unsubscribe()},[T]);let G=()=>{r&&(S.current=!0,g(F=>!F))};yy(()=>{if(!r)return;let F=setTimeout(()=>{S.current||g(!0)},Pp);return()=>clearTimeout(F)},[r]);let Q=F=>{B()&&(b.current=qn(b.current,F),D.current.add(F),p(ee=>ee+1),Gn(F),H(ee=>mn(ee,F)),f.discard(F))};yy(()=>{if(!M.settled)return;let F=new Set;for(let ee of b.current)Df(ee)&&F.add(ee);F.size!==b.current.size&&(b.current=F)},[M.settled,M.revision]);let q={user:t,userId:r,labels:o,apiBasePath:n,items:A,isSessionStillOurs:B,ownEchoIds:_,ledgers:l,writeLedgers:d,pendingSseQueue:T,pendingAddPromises:h,removedIds:b,searchRemovedIds:D,setRemovedVersion:p,setRows:H,drafts:f,invalidateSearch:v,announceDataChange:w,replay:F=>U.current.handleSseMessage(F),notifyError:F=>U.current.notifyError(F)},fe=Kf(q),De=Vf(q),L={toggleSse:G,...De,removeStaleItem:Q,refetchData:V,clearCacheAndRefetch:X,handleSseMessage:fe,notifyError:a},U=xd(L);Ry(()=>{U.current=L});let[K]=ar(()=>Uf(U)),re=Id(()=>({...l,...K.functions,user:t}),[l,K,t]),he=Id(()=>({version:s,items:A,isSseEnabled:y,sseStatus:R,searchInvalidation:C,isReportRemoved:O,removedVersion:m}),[s,A,y,R,C,O,m]);return Cd(wd.Provider,{value:f,children:Cd(qs.Provider,{value:re,children:lT(Xs.Provider,{value:he,children:[Cd(Dd,{isSseEnabled:y,onMessage:K.onSseMessage,onStatus:E}),e]})})})};var by=(e,t)=>e.split(t).length-1,Sy=(e,t,r)=>{let n=e("\uE000","\uE001");if(by(n,"\uE000")!==1||by(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 ST,useLayoutEffect as gT,useMemo as Md}from"react";import{createContext as Ty,createElement as mT,useCallback as wy,useContext as Od,useDeferredValue as fT,useLayoutEffect as yT,useMemo as Nd,useSyncExternalStore as RT}from"react";var gy=Object.freeze({subject:"subject",content:"content",author:"author",employeeName:"author",updatedBy:"updatedBy",category:"category",creationCategory:"creationCategory",customerName:"customer",interviewer:"interviewers",attachment:"attachments",comment:"comments"}),dT=e=>Object.hasOwn(gy,e),cT=e=>{let t=e.indexOf(":"),r=t===-1?e:e.slice(0,t);if(!(Kn(e)&&dT(r)))throw new Error(`[daily-report] A search mark leaf carries an unknown field key: ${e}`);return gy[r]},uT=Object.freeze([]),Ey=(e,t)=>e.map(({heading:r,matchedBy:n})=>n==="reading"?t.searchFieldMatchedByReading(t[r]):t.searchFieldMatched(t[r])).join(" "),Ld=e=>e.words>0||e.dense>0?"word":e.readings>0?"reading":null,pT=(e,t)=>e.length===t.length&&e.every((r,n)=>r.heading===t[n].heading&&r.matchedBy===t[n].matchedBy),Dy=()=>{let e=new Map,t=new Map,r=new Set,n=null,o=0,a=0,s=uT,i=!1,l=Object.freeze({entry:n,isCurrent:!0,count:o,fields:s}),d=!1,c=l,u=!1,m=S=>!S.isCurrent||S.entry!==n,p=()=>{let S=[];for(let[h,b]of t){let D=Ld(b);D!==null&&S.push(Object.freeze({heading:h,matchedBy:D}))}return Object.freeze(S)},f=()=>{if(!d)return l;d=!1;for(let[h,b]of t)b.leaves===0&&t.delete(h);let S=a===0;if(i){i=!1;let h=p();pT(h,s)||(s=h)}return l.entry===n&&l.isCurrent===S&&l.count===o&&l.fields===s||(l=Object.freeze({entry:n,isCurrent:S,count:o,fields:s})),l},y=()=>{u=!1;let S=f();if(S!==c){c=S;for(let h of[...r])h()}},g=()=>{d=!0,!u&&(u=!0,queueMicrotask(y))},R=S=>{let h=t.get(S);if(h!==void 0)return h;let b={leaves:0,words:0,readings:0,dense:0};return t.set(S,b),b},E=(S,h)=>{o+=h*(S.words+S.readings),m(S)&&(a+=h);let b=R(S.heading),D=Ld(b);b.leaves+=h,b.words+=h*S.words,b.readings+=h*S.readings,S.dense&&(b.dense+=h),Ld(b)!==D&&(i=!0)};return{register:S=>{let h={...S,heading:cT(S.fieldKey)},b=Object.freeze({});return e.set(b,h),E(h,1),g(),b},unregister:S=>{let h=e.get(S);h!==void 0&&(e.delete(S),E(h,-1),g())},settle:S=>{if(S!==n){n=S,a=0;for(let h of e.values())m(h)&&(a+=1);g()}},subscribe:S=>(r.add(S),()=>{r.delete(S)}),getSnapshot:f}};var pt=Ty(null),Ay=Ty(null),Qo=()=>{let e=Od(Ay);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},hT=()=>{},bT=()=>hT,vy=e=>{let t=Od(pt),r=wy(i=>t===null?bT():t.subscribe(e,i),[t,e]),n=wy(()=>{let i=t===null?void 0:t.read(e);return i===void 0?null:i},[t,e]),o=RT(r,n,n),a=Nd(()=>t===null||o===null?null:{store:t,entry:o},[t,o]),s=fT(a,a===null?void 0:null);return s!==null&&s.store===t?s.entry:null},Xn=({reportHubId:e,entry:t,children:r})=>{let n=Od(pt),o=Nd(()=>n===null?null:Dy(),[n]),a=Nd(()=>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 yT(()=>{o!==null&&o.settle(t)},[o,t]),mT(Ay.Provider,{value:a},r)};import{jsx as Cy}from"react/jsx-runtime";var ET="data-daily-report-search-mark",DT=Object.freeze({[In.word]:Object.freeze({attribute:"word",description:null}),[In.reading]:Object.freeze({attribute:"reading",description:"searchReadingMarkDescription"})}),xy=e=>{if(!Io(e))throw new Error(`[daily-report] A search mark carries an unknown tier: ${e}`);return DT[e]},wT=Object.freeze({words:0,readings:0}),TT=e=>{if(e===null)return wT;let t=0;for(let r=2;r<e.length;r+=3)xy(e[r]).attribute==="reading"&&(t+=1);return{words:e.length/3-t,readings:t}},AT=(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=xy(t[a+2]);s>o&&n.push(e.slice(o,s)),n.push(Cy("mark",{[ET]:l.attribute,"aria-description":l.description===null?void 0:r[l.description],className:Eu,children:e.slice(s,i)},`m${s}`)),o=i}return o<e.length&&n.push(e.slice(o)),n},vT=({fieldKey:e,raw:t,display:r})=>{let{entry:n,revalidate:o,tally:a}=Qo(),{labels:s}=Y(),i=typeof t=="string"?t:"",l=Md(()=>n===null||i.length===0?null:nd(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,m=c!==null&&"dense"in c,p=c!==null,f=Md(()=>u===null?null:Ou(r,u),[u,r]),y=Md(()=>TT(f),[f]);return gT(()=>{if(l===null)return;p||o(e,l);let g=a.register({entry:n,isCurrent:p,fieldKey:e,words:y.words,readings:y.readings,dense:m});return()=>a.unregister(g)},[a,o,n,l,p,e,y,m]),f===null||f.length===0?r.text:AT(r.text,f,s)},ge=({fieldKey:e,raw:t,display:r})=>ST(pt)===null?r.text:Cy(vT,{fieldKey:e,raw:t,display:r});import{jsx as CT}from"react/jsx-runtime";var xT={2:"h2",3:"h3",4:"h4",5:"h5",6:"h6"},Wr=Object.freeze({2:3,3:4,4:5,5:6}),Tt=({level:e,...t})=>{let r=xT[e];return CT(r,{...t})};import{memo as hR,useId as CA,useMemo as IA,useRef as bR}from"react";var Iy=Object.freeze({tile:Object.freeze({maxWidth:480,maxHeight:320})});var kd="tile",Jo=Iy[kd],IT=2,Zo=16,_y=5,Ly=Jo.maxWidth/IT,_T=_y*(Ly+Zo)-Zo,Ny=e=>{let t=Math.min(_y,1+Math.floor((e+Zo)/(Ly+Zo)));return Math.floor((Math.min(e,_T)-(t-1)*Zo)/t)},Pd=`round(nearest, 100cqi * ${Jo.maxHeight} / ${Jo.maxWidth}, 1px)`,Oy=Object.freeze({aspectRatio:`${Jo.maxWidth} / ${Jo.maxHeight}`,height:Pd,contain:"strict"}),LT="--aqdr-lattice-block",My=Object.freeze({marginBlockEnd:`calc(round(up, ${Pd}, var(${LT})) - ${Pd})`});var NT="download",OT="thumbnail",MT="1",Qn=(e,t,r)=>{let n=`${e}/attachment/${encodeURIComponent(t)}`;switch(r.kind){case"inline":return n;case"download":return`${n}?${new URLSearchParams({[NT]:MT})}`;case"thumbnail":return`${n}?${new URLSearchParams({[OT]:r.variant})}`}};import{createContext as ky,useCallback as PT,useContext as Fy,useMemo as kT,useState as FT}from"react";var Fd=ky(null),Hd=ky(null),Py=(e,t)=>{if(t){e.hasAttribute("tabindex")&&e.removeAttribute("tabindex");return}e.getAttribute("tabindex")!=="-1"&&e.setAttribute("tabindex","-1")},Hy=e=>{let t=new Map,r=null,n=!1,o=(d,c)=>{let u=d===null?void 0:t.get(d);if(u!==void 0)for(let m of u)Py(m,c)},a=()=>{let d=e.getActiveId();o(r,!1),o(d,!0),r=d},s=d=>e.getActiveId()===d,i=(d,c)=>{n||(n=!0,r=e.getActiveId(),e.subscribeActive(a));let u=t.get(d);u===void 0&&(u=new Set,t.set(d,u));let m=u;return m.add(c),Py(c,d===r),()=>{m.delete(c),m.size===0&&t.delete(d)}};return{isActive:s,attach:i,scopeOf:d=>({isActive:()=>s(d),attach:c=>i(d,c)})}},By=e=>{let t=Fy(Fd);if(t===null)throw new Error("[daily-report] useRowControlScope is called outside a view's rows (no control registry)");return kT(()=>t.scopeOf(e),[t,e])},HT=(e,t)=>{if(typeof e!="function")return e.current=t,()=>{e.current=null};let r=e(t);return typeof r=="function"?r:()=>{e(null)}},Zn=e=>{let t=Fy(Hd),[r]=FT(()=>t===null||t.isActive()?void 0:-1),n=PT(o=>{let a=e===void 0?null:HT(e,o),s=t===null?null:t.attach(o);return()=>{s!==null&&s(),a!==null&&a()}},[t,e]);return{tabIndex:r,ref:n}},Uy=(e,t)=>{let{before:r,after:n}=ko(e.ownerDocument,e);return(t==="before"?r.at(-1):n[0])??null},Vy=(e,t,r)=>{if(t===null)return!r&&as(e).length>0;if(!e.contains(t))return!1;let{before:n,within:o,after:a}=ko(e,t);return r?n.length>0:o.length>0||a.length>0};import{createContext as KT,useContext as $T,useLayoutEffect as jT,useMemo as qy,useState as GT}from"react";import{flushSync as YT}from"react-dom";import{flushSync as BT}from"react-dom";var Bd=new WeakMap,Wy=e=>e.observedTrackWidth!==null&&e.observedTrackWidth!==e.handedTrackWidth,zy=e=>e.overflowWidth!==null&&e.overflowWidth!==e.handedOverflowWidth,UT=(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},Ky=(e,t,r)=>{let n=UT(e,t);return n===null||n.handedTrackWidth===null||r<=n.handedTrackWidth?null:{track:n,trackWidth:n.handedTrackWidth}},VT=e=>{e.frame=null;let t=new Map;for(let r of e.observations.values())Wy(r)&&t.set(r,r.observedTrackWidth);for(let[r,n]of e.fittedNames){if(!zy(n))continue;let o=n.overflowWidth;n.handedOverflowWidth=o;let a=Ky(e,r,o);a===null||t.has(a.track)||t.set(a.track,a.trackWidth)}t.size!==0&&BT(()=>{for(let[r,n]of t)r.handedTrackWidth=n,r.onTrackWidth(n)})},WT=(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(Ky(e,r.target,n)!==null){a.overflowWidth=n;continue}a.overflowWidth=null,a.handedOverflowWidth=null}}e.frame!==null||!([...e.observations.values()].some(Wy)||[...e.fittedNames.values()].some(zy))||(e.frame=e.view.requestAnimationFrame(()=>VT(e)))},zT=e=>{let t=Bd.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=>WT(n,o)),observations:new Map,fittedNames:new Map,frame:null};return Bd.set(e,n),n},$y=(e,t)=>{let r=zT(e.ownerDocument);if(r.observations.has(e)||r.fittedNames.has(e))throw new Error(t);return r},jy=(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(),Bd.delete(e.view.document))},Gy=(e,t,r)=>{let n=$y(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),jy(n,e))}},Yy=e=>{let t=$y(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),jy(t,e))}};import{jsx as sr,jsxs as Jy}from"react/jsx-runtime";var Wd="\u2026",qT=Wd.codePointAt(0),Xy=Object.freeze({text:Wd,runs:Object.freeze([])}),Zs="data-attachment-file-name",XT=Ve("block min-w-0"),QT="block w-fit whitespace-nowrap",ZT=new Set([" ","\xA0","\u1361","\u{10100}","\u{10101}","\u{1039F}","\u{1091F}"," ",`
|
|
5
|
-
`,"\f","\r"]),JT=/^-?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?px$/,zd=({fileName:e})=>sr("span",{className:Zt,children:e}),eA=/"([^"]*)"|'([^']*)'|([^\s,"'][^,"']*)/g,tA=/^U\+([\dA-F?]{1,6})(?:-([\dA-F]{1,6}))?$/i,Kd=KT(null),eR=e=>{let t=e.text.lastIndexOf(".");return t<=0||t===e.text.length-1?{stem:e,extension:Ot("")}:{stem:So(e,0,t),extension:So(e,t,e.text.length)}},Ud=(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 So(e,0,o.slice(0,a).join("").length)},rA=(e,t,r)=>{if(r(e)<=t)return Ot(e);let{stem:n,extension:o}=eR(Nu(e)),a=t/2,s=r(o.text)<=a?o:vn([Ud(o,Wd,a,r),Xy]);if(r(n.text+s.text)<=t)return vn([n,s]);let i=vn([Xy,s]);return r(i.text)>t?Ud(i,"",t,r):vn([Ud(n,i.text,t,r),i])},Qy=new WeakMap,tR=e=>{let t=Qy.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 Qy.set(e,n),n},rR=(e,t,r)=>`${e}|${t}|${r}`,nA=(e,t,r,n)=>{let o=rR(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+=ZT.has(d)?r+n:r;return e.context.measureText(i).width+l};return e.measures.set(o,s),s},nR=e=>{let t=new Set;for(let r of e.matchAll(eA)){let n=r.slice(1).find(o=>o!==void 0);t.add(n.trim().replace(/\s+/g," ").toLowerCase())}return t},Zy=e=>e==="normal"?0:JT.test(e)?Math.max(Number.parseFloat(e),0):null,oA=e=>{let t=getComputedStyle(e),r=Zy(t.letterSpacing),n=Zy(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:nR(t.fontFamily),measure:nA(tR(e.ownerDocument),o,r,n)}},aA=(e,t)=>e===t||e!==null&&t!==null&&e.width===t.width&&e.measure===t.measure,sA=e=>{let t=new Set([qT]);for(let r of e.querySelectorAll(`[${Zs}]`)){let n=r.getAttribute(Zs);for(let o of n+n.normalize("NFC"))t.add(o.codePointAt(0))}return t},iA=(e,t)=>{for(let r of e.split(",")){let n=tA.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},Vd=new WeakMap,oR=e=>{let t=Vd.get(e);if(t!==void 0)return t;let r={document:e,registrations:new Set,stopWatchingFonts:null};return Vd.set(e,r),r},aR=(e,t)=>{let r=oA(e.container.querySelector(`[${Zs}]`));if(r===null){e.fitted=null,e.applyFit(null);return}e.fitted={trackWidth:t,nameFont:r};let n=oR(e.container.ownerDocument);n.stopWatchingFonts===null&&(n.stopWatchingFonts=dA(n)),e.applyFit({width:t,measure:r.measure})},lA=(e,t)=>{let r=t.map(o=>({families:nR(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=sA(o.container);s.some(l=>iA(l.unicodeRange,i))&&(tR(e.document).measures.delete(rR(a.nameFont.font,a.nameFont.letterSpacing,a.nameFont.wordSpacing)),n.push([o,a.trackWidth]))}n.length!==0&&YT(()=>{for(let[o,a]of n)aR(o,a)})},dA=e=>{let t=e.document.fonts,r=n=>{lA(e,n.fontfaces)};return t.addEventListener("loadingdone",r),()=>{t.removeEventListener("loadingdone",r)}},cA=(e,t,r)=>{let n={container:e,applyFit:r,fitted:null},o=Gy(e,t,s=>aR(n,s)),a=oR(e.ownerDocument);return a.registrations.add(n),()=>{o(),a.registrations.delete(n),!(a.registrations.size>0)&&(a.stopWatchingFonts?.(),Vd.delete(a.document))}},sR=(e,t)=>{let[r,n]=GT(null);return jT(()=>{let o=e.current;return cA(o,t,s=>{n(i=>aA(i,s)?i:s)})},[e,t]),r},iR=({containerRef:e,children:t})=>{let r=sR(e,Ny);return sr(Kd,{value:r,children:t})},uA=e=>e,lR=({containerRef:e,children:t})=>{let r=sR(e,uA);return sr(Kd,{value:r,children:t})},ea=({fileName:e,attachmentIndex:t,className:r,testId:n})=>{let o=$T(Kd),a=qy(()=>o===null?null:rA(e,o.width,o.measure),[e,o]),{stem:s,extension:i}=qy(()=>eR(Ot(e)),[e]),l=Te.attachment(t);return Jy("span",{className:XT(r),title:e,"data-testid":n,[Zs]:e,children:[a===null?Jy("span",{"aria-hidden":"true",className:"flex min-w-0",children:[sr("span",{className:"truncate",children:sr(ge,{fieldKey:l,raw:e,display:s})}),i.text!==""&&sr("span",{className:"max-w-1/2 shrink-0 truncate",children:sr(ge,{fieldKey:l,raw:e,display:i})})]}):sr("span",{ref:Yy,"aria-hidden":"true",className:QT,children:sr(ge,{fieldKey:l,raw:e,display:a})}),sr(zd,{fileName:e})]})};import RA from"lucide-react/dist/esm/icons/image-off.js";import{memo as hA,useCallback as Gd,useEffect as bA,useLayoutEffect as SA,useRef as Yd,useState as gA}from"react";var Js=Object.freeze({queueWaitMs:3e4,readMs:3e4,renderMs:1e4,transferMarginMs:5e3}),dR=Js.queueWaitMs+Js.readMs+Js.renderMs+Js.transferMarginMs;var pA=Object.freeze({kind:"loaded"}),cR=(e,t,r,n,o)=>{let{limiter:a,tuning:s}=n,i="watching",l=null,d=null,c=null,u=null,m=null,p=C=>(C!==null&&n.clearTimeout(C),null),f=()=>{u?.(),u=null},y=()=>{m?.(),m=null},g=C=>C===null||C.kind==="loaded"?0:C.kind==="failing"?C.failedAttempts:s.maxAttempts,R=C=>{i="cooling",c=n.setTimeout(P,C)},E=()=>{o.abortInFlight(),y();let C=g(r.get(t))+1;if(C>=s.maxAttempts){i="done",r.set(t,{kind:"exhausted",failedAt:n.now()}),o.exhausted();return}r.set(t,{kind:"failing",failedAttempts:C,retryAt:n.now()+s.retryDelayMs}),o.reset(),R(s.retryDelayMs)},S=C=>{if(i==="loading"){if(d=p(d),!C){E();return}i="done",r.set(t,pA),y()}},h=()=>{d=null,S(!1)},b=()=>{i="loading",o.showActivity(!0),f(),d=n.setTimeout(h,s.loadTimeoutMs),o.grant()},D=()=>{l=null,i="queued",m=a.request(b)},_=()=>{l===null&&(l=n.setTimeout(D,s.settleMs))},T=C=>{if(o.showActivity(C),C){i==="watching"&&_();return}if(i==="queued"){y(),i="watching";return}l=p(l)},P=()=>{c=null,i="watching",o.showActivity(!1),u=n.observe(e,T)},M=()=>{let C=i==="loading";i="done",f(),l=p(l),d=p(d),c=p(c),o.showActivity(!1),C&&(o.abortInFlight(),m!==null&&o.reset()),y()},H=r.get(t);if(H?.kind==="loaded")return i=o.shows()?"done":"loading",o.grant(),{settle:S,dispose:M};if(H?.kind==="exhausted"){if(n.now()-H.failedAt<s.failureMemoryMs)return i="done",o.exhausted(),{settle:S,dispose:M};r.delete(t)}o.reset();let A=H?.kind==="failing"?H.retryAt-n.now():0;return A>0?R(A):P(),{settle:S,dispose:M}};var mA=e=>{ut("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())}}}},uR=mA(2);var fA=e=>{ut("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)}}},$d=fA(1024);var jd=new WeakMap,yA=e=>{let t=jd.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 jd.set(e,a),a},pR=(e,t)=>{let r=e.ownerDocument,n=yA(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(),jd.delete(r)))}};import{jsx as ta,jsxs as xA}from"react/jsx-runtime";var EA={idle:"pending",granted:"pending",loaded:"loaded",failed:"unavailable"},DA="data-thumbnail-active",wA="data-daily-report-attachment-preview",fR={[wA]:""},TA=Object.freeze({settleMs:250,loadTimeoutMs:dR,retryDelayMs:5e3,maxAttempts:2,failureMemoryMs:6e4}),mR=e=>{let t=$d.peek(e);return t?.kind==="loaded"?{url:e,status:"loaded"}:t?.kind==="exhausted"?{url:e,status:"failed"}:{url:e,status:"idle"}},AA=()=>({limiter:uR,now:()=>performance.now(),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),observe:pR,tuning:TA}),vA=(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(DA,o)}}),yR=hA(({thumbnailUrl:e,unavailableLabel:t})=>{let r=Yd(null),n=Yd(null),o=Yd(null),[a,s]=gA(()=>mR(e));a.url!==e&&s(mR(e)),SA(()=>{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]),bA(()=>{let c=r.current,u=cR(c,e,$d,AA(),vA(e,c,s,n));return o.current=u,()=>{o.current=null,u.dispose()}},[e]);let i=Gd(c=>{c!==null&&(n.current=c)},[]),l=Gd(()=>{s(c=>c.status==="granted"?{url:c.url,status:"loaded"}:c),o.current?.settle(!0)},[]),d=Gd(()=>{o.current?.settle(!1)},[]);return ta("span",{className:"block",children:ta("span",{ref:r,"aria-hidden":"true","data-testid":"daily-report-attachment-thumbnail-frame","data-thumbnail-state":EA[a.status],style:Oy,className:"relative block w-full",children:ta("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"?xA("span",{className:`flex size-full flex-col items-center justify-center gap-1 px-2 text-center ${de} text-xs ${fr}`,"data-testid":"daily-report-attachment-thumbnail-unavailable",children:[ta(RA,{"aria-hidden":"true",className:"size-5 shrink-0 text-slate-500 dark:text-slate-400"}),t]}):ta("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 Be,jsxs as ir}from"react/jsx-runtime";var RR=1024,qd=["B","KB","MB","GB"],SR=`${de} text-sm line-through`,_A="relative truncate",LA=Ve(_A),NA=I("relative ml-auto shrink-0 rounded-sm 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:decoration-slate-600 dark:hover:text-slate-200",de,le),OA="text-blue-800 text-sm dark:text-blue-300 [@media(hover:hover)]:[[data-daily-report-attachment-preview]:hover_&]:underline",MA="text-blue-800 text-sm hover:underline dark:text-blue-300",PA=`flex h-4 min-w-0 items-center gap-2 ${de} text-xs tabular-nums`,kA=`${de} text-xs tabular-nums`,FA=I("flex min-w-0 flex-col gap-2 rounded-lg",le),HA=I("flex min-w-0 rounded-sm",le),BA=I("m-0",Zr),UA=e=>{if(e===null||!Number.isFinite(e)||e<0)return null;let t=e,r=0;for(;t>=RR&&r<qd.length-1;)t/=RR,r+=1;return r===0?`${t} ${qd[r]}`:`${t.toFixed(1)} ${qd[r]}`},VA=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}},gR=({attachment:e,labels:t,className:r})=>ir("span",{className:LA(r),children:[UA(e.fileSize)??"\u2014",e.state==="absent"&&` \xB7 ${t.attachmentMissing}`]}),Xd=({href:e,children:t,...r})=>{let n=Zn();return Be("a",{href:e,...r,...n,children:t})},ER=({downloadUrl:e,label:t,fileName:r})=>ir(Xd,{href:e,className:NA,"data-testid":"daily-report-attachment-download",children:[t," ",Be(zd,{fileName:r})]}),WA=hR(({attachment:e,attachmentIndex:t,apiBasePath:r,labels:n})=>{let o=Be(yR,{thumbnailUrl:Qn(r,e.id,{kind:"thumbnail",variant:kd}),unavailableLabel:n.attachmentThumbnailUnavailable}),a=e.state==="absent";return ir("li",{className:"@container flex min-w-0 flex-col gap-1","data-testid":"daily-report-attachment-item","data-attachment-state":e.state,children:[a?ir("div",{className:"flex min-w-0 flex-col gap-2",children:[o,Be(ea,{fileName:e.fileName,attachmentIndex:t,className:SR,testId:"daily-report-attachment-name"})]}):ir(Xd,{href:Qn(r,e.id,{kind:"inline"}),className:FA,"data-testid":"daily-report-attachment-link",...fR,children:[o,Be(ea,{fileName:e.fileName,attachmentIndex:t,className:OA})]}),ir("div",{className:PA,style:My,children:[Be(gR,{attachment:e,labels:n}),!a&&Be(ER,{downloadUrl:Qn(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})]})}),zA=hR(({attachment:e,attachmentIndex:t,apiBasePath:r,labels:n})=>{let o=e.state==="absent",a=bR(null);return ir("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:[Be(lR,{containerRef:a,children:Be("div",{ref:a,className:"flex min-w-0 flex-1","data-testid":"daily-report-attachment-name-track",children:ir("div",{className:"flex min-w-0 flex-col",children:[o?Be(ea,{fileName:e.fileName,attachmentIndex:t,className:SR,testId:"daily-report-attachment-name"}):Be(Xd,{href:Qn(r,e.id,{kind:"inline"}),className:HA,"data-testid":"daily-report-attachment-link",children:Be(ea,{fileName:e.fileName,attachmentIndex:t,className:MA})}),Be(gR,{attachment:e,labels:n,className:kA})]})})}),!o&&Be(ER,{downloadUrl:Qn(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})}),KA=({entries:e,headingId:t,apiBasePath:r,labels:n})=>{let o=bR(null);return Be(iR,{containerRef:o,children:Be("div",{ref:o,className:"@container","data-testid":"daily-report-attachment-grid-container",children:Be("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})=>Be(WA,{attachment:a,attachmentIndex:s,apiBasePath:r,labels:n},a.id))})})})},ei=({attachments:e})=>{let{apiBasePath:t,labels:r,headingLevel:n}=Y(),o=CA(),{tiles:a,rows:s}=IA(()=>VA(e),[e]);return e.length===0?null:ir("div",{className:"flex flex-col gap-2","data-testid":"daily-report-attachment-section",children:[Be(Tt,{level:Wr[n],id:o,className:BA,children:r.attachments}),ir("div",{className:"flex flex-col gap-4",children:[a.length>0&&Be(KA,{entries:a,headingId:o,apiBasePath:t,labels:r}),s.length>0&&Be("ul",{"aria-labelledby":o,className:"flex flex-col gap-2","data-testid":"daily-report-attachment-rows",children:s.map(({attachment:i,index:l})=>Be(zA,{attachment:i,attachmentIndex:l,apiBasePath:t,labels:r},i.id))})]})]})};import{useOverlayEscapeStack as dv}from"@aiquants/swipe-overlay";import{memo as CR,useCallback as oi,useEffect as TR,useId as IR,useLayoutEffect as cv,useRef as ec,useState as uv}from"react";import{useCallback as DR,useMemo as $A,useState as jA}from"react";var GA=()=>[],Qd=(e,t,r)=>{let{pendingAddCommentIds:n,pendingDeleteCommentIds:o,resolvedIdMap:a,addComment:s,deleteComment:i}=lt(),{version:l}=Qs(),{labels:d}=Y(),c=d.unknownUser,[u,m]=jA(null),p=DR(R=>e&&i(e.reportHubId,R,e.date),[e,i]),f=DR(R=>e&&t?s(e.reportHubId,R,e.date):Promise.resolve(),[e,t,s]),y=Qe(GA);return{uiComments:$A(()=>{if(!e)return[];let R=ef(e.externalComments,e.postedComments,r,c),E=o.current.get(e.reportHubId);E?.size&&(R=R.filter(h=>!E.has(h.id)));let S=n.current.get(e.reportHubId);if(S?.size&&t){let h=new Set(R.map(T=>T.id)),b=wr(t,""),D=b==="",_=D?c:b;for(let[T,P]of S){if(E?.has(T)||h.has(T))continue;let M=a.current.get(T);M&&h.has(M)||R.some(H=>H.isMine&&H.content===P&&typeof H.id=="number"&&H.id>0)||R.push({id:T,authorName:_,content:P,createdAt:new Date().toISOString(),isMine:!0,isLegacy:!1,isAuthorUnknown:D})}}return JSON.stringify(R)===JSON.stringify(y.current)?y.current:(y.current=R,R)},[e,t,r,c,o,n,a,l]),handleAddComment:f,handleDeleteComment:p,pendingDeleteId:u,setPendingDeleteId:m,resolvedIdMap:a.current}};import{Fragment as YA,jsx as qA}from"react/jsx-runtime";var tt=({render:e,elementRef:t})=>{let r=Zn(t);return qA(YA,{children:e(r)})};import XA from"@heroicons/react/24/outline/TrashIcon.js";import{memo as QA,useId as ZA,useMemo as wR,useRef as JA,useState as ev}from"react";import{jsx as lr,jsxs as ti}from"react/jsx-runtime";var Zd="data-comment-id",ri="data-comment-delete-button",ni="data-comment-delete-slot",tv=I(st,ou),rv=Array.from({length:8},(e,t)=>I("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")),nv=(e,t,r)=>(e?4:0)+(t?2:0)+(r?1:0),ov=Ve("font-semibold text-xs"),av=`${de} text-xs`,sv="relative flex h-5 items-center",iv=I(it,"motion-safe:fade-in motion-safe:zoom-in-95 absolute top-full right-0 z-20 mt-1 whitespace-nowrap bg-red-800 font-bold text-white text-xs shadow-lg hover:bg-red-900 active:bg-red-950 motion-safe:animate-in motion-safe:duration-200",le),lv=(e,t,r)=>t===e||typeof e=="number"&&e<0&&r?.get(e)===t||typeof t=="number"&&t<0&&r?.get(t)===e,Jd=QA(({comment:e,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:s,onBeforeHide:i,resolvedIdMap:l})=>{let[d,c]=ev(!1),{labels:u}=Y(),m=ZA(),p=JA(null),f=lv(e.id,o,l),y=wR(()=>Ke(e.authorName),[e.authorName]),g=wR(()=>Ot(e.content),[e.content]),R=Te.comment(e.id,"author"),E=Te.comment(e.id,"content"),S=Kn(E),h=e.isMine&&!e.isLegacy,b=!!e.createdAt||h,D=()=>{let T=p.current;T!==null&&i(T),a(null),c(!0),typeof e.id=="number"&&n?.(e.id)},_=T=>{if(!f)return;let P=T.relatedTarget;Pe(P)&&T.currentTarget.contains(P)||a(null)};return ti("li",{[Zd]:e.id,"data-deleted":d?"true":void 0,className:rv[nv(e.isMine,d,f)],children:[ti("div",{className:"mb-1 flex items-center justify-between",children:[lr("div",{className:ov(tf(e.color)),children:S&&!e.isAuthorUnknown?lr(ge,{fieldKey:R,raw:e.authorName,display:y}):y.text}),b&&ti("div",{className:"flex items-center gap-2",children:[e.createdAt&&lr("div",{className:av,children:Le(e.createdAt)}),h&&ti("div",{[ni]:e.id,className:sv,onBlur:_,children:[lr(tt,{elementRef:p,render:T=>lr("button",{type:"button",...T,className:tv,title:u.commentDelete,"aria-label":u.commentDelete,"aria-expanded":f,"aria-controls":f?m:void 0,[ri]:e.id,onClick:()=>s(e.id,f),children:lr(XA,{"aria-hidden":"true",className:f?qe.deletePending:qe.delete})})}),f&&lr(tt,{render:T=>lr("button",{id:m,type:"button",...T,"data-delete-confirmation":!0,className:iv,onClick:D,children:u.commentDeleteConfirm})})]})]})]}),lr("div",{className:"whitespace-pre-wrap text-slate-700 text-sm leading-6 dark:text-slate-200",children:S?lr(ge,{fieldKey:E,raw:e.content,display:g}):e.content})]})});Jd.displayName="DailyReportPostedComment";import{Fragment as wv,jsx as Bt,jsxs as tc}from"react/jsx-runtime";var pv="data-daily-report-comment-section",mv="data-daily-report-comment-heading",fv=I(mr,le),yv=Ve("flex flex-col gap-2"),_R=(e,t)=>e>0||t,Rv=I("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",pr,le),hv=I("h-9 rounded-lg bg-blue-800 px-4 font-medium text-sm text-white hover:bg-blue-900 disabled:opacity-50",le),AR=e=>e.querySelector(`[${ri}][aria-expanded="true"]`),bv=(e,t,r)=>{let n=[...e.querySelectorAll(`[${ri}]`)].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(`[${Zd}]`)].filter(i=>!i.contains(t)&&i.closest("[data-deleted]")===null).length;return _R(s,r)?{kind:"heading"}:{kind:"report"}},Sv=({comments:e,reportHubId:t,businessDate:r,onDeleteComment:n,pendingDeleteId:o,onPendingDeleteIdChange:a,resolvedIdMap:s,canComment:i,headingRef:l,onSectionRemoved:d})=>{let c=ec(null),u=dv(),m=IR(),p=o!==null,f=oi(()=>{let R=c.current,E=R===null?null:AR(R),S=E===null?null:E.closest(`[${ni}]`),h=R===null?null:et(R);a(null),E!==null&&S!==null&&h!==null&&S.contains(h)&&E.focus({preventScroll:!0})},[a]);TR(()=>{if(p)return u({id:m,onEscape:()=>(f(),!0)})},[p,u,m,f]),TR(()=>{let R=c.current;if(!p||R===null)return;let E=R.ownerDocument,S=h=>{let b=AR(R)?.closest(`[${ni}]`);b!=null&&Pe(h.target)&&b.contains(h.target)||a(null)};return E.addEventListener("pointerdown",S,!0),()=>E.removeEventListener("pointerdown",S,!0)},[p,a]);let y=oi((R,E)=>{E?f():a(R)},[f,a]),g=oi(R=>{let E=c.current;if(E===null)return;let S=bv(E,R,i);if(S.kind==="report"){d();return}let h=S.kind==="trash"?S.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:Bt("ul",{ref:c,className:"space-y-2",children:e.map(R=>Bt(Jd,{comment:R,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:y,onBeforeHide:g,resolvedIdMap:s},R.id))})},vR=({headingId:e,className:t,children:r,...n})=>{let{labels:o,headingLevel:a}=Y(),s=ec(null);return _R(n.comments.length,n.canComment)?tc("div",{[pv]:"",className:yv(t),children:[Bt(Tt,{ref:s,id:e,level:Wr[a],tabIndex:-1,[mv]:"",className:fv,children:o.comments}),Bt(Sv,{...n,headingRef:s}),r]}):null},LR=CR(({report:e,canComment:t,onSectionRemoved:r,formPlacement:n,sectionClassName:o,comments:a,onAddComment:s,onDeleteComment:i,pendingDeleteId:l,onPendingDeleteIdChange:d,resolvedIdMap:c})=>{let u=IR(),m=t?Bt(Dv,{onAddComment:s,pushedToEnd:n==="after-section",labelledBy:u}):null,p={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"?Bt(vR,{...p,children:m}):tc(wv,{children:[Bt(vR,{...p}),m]})});LR.displayName="ReportCommentsView";var ra=CR(({report:e,userId:t,canComment:r,onCommentAdded:n,onSectionRemoved:o,formPlacement:a,sectionClassName:s})=>{let{user:i}=lt(),{uiComments:l,handleAddComment:d,handleDeleteComment:c,pendingDeleteId:u,setPendingDeleteId:m,resolvedIdMap:p}=Qd(e,i,t),f=qm(),y=ec(!1);cv(()=>{y.current&&f(),y.current=!0},[l,u,f]);let g=oi(async R=>{await d(R),n?.()},[d,n]);return Bt(LR,{report:e,canComment:r,onSectionRemoved:o,formPlacement:a,sectionClassName:s,comments:l,onAddComment:g,onDeleteComment:c,pendingDeleteId:u,onPendingDeleteIdChange:m,resolvedIdMap:p})});ra.displayName="ReportComments";var gv="flex gap-2",Ev="mt-auto flex gap-2",xR="content",Dv=({onAddComment:e,pushedToEnd:t,labelledBy:r})=>{let[n,o]=uv(!1),{labels:a}=Y();return tc("form",{className:t?Ev:gv,onSubmit:async i=>{i.preventDefault();let l=i.currentTarget,d=l.elements.namedItem(xR);if(!(d instanceof je(l).HTMLInputElement))return;let c=d.value.trim();if(c&&e){o(!0);try{await e(c),l.reset()}catch{}finally{o(!1)}}},children:[Bt(tt,{render:i=>Bt("input",{type:"text",name:xR,...i,"aria-labelledby":r,placeholder:a.commentPlaceholder,className:Rv,autoComplete:"off",readOnly:n})}),Bt(tt,{render:i=>Bt("button",{type:"submit",...i,className:hv,disabled:n,children:a.commentSend})})]})};import{useState as Hv}from"react";import{Slot as Tv}from"@radix-ui/react-slot";import{cva as Av}from"class-variance-authority";import*as OR from"react";import{jsx as Cv}from"react/jsx-runtime";var vv=Av(`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 ${le}`,{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"}}),NR=new Map,xv=(e,t,r)=>{let n=`${String(e)}|${String(t)}`,o=NR.get(n);if(o!==void 0)return o(r);let a=Ve(vv({variant:e,size:t}));return NR.set(n,a),a(r)},Ar=OR.forwardRef(({className:e,variant:t,size:r,asChild:n=!1,...o},a)=>Cv(n?Tv:"button",{className:xv(t,r,e),ref:a,...o}));Ar.displayName="Button";import{jsx as Lv}from"react/jsx-runtime";var Iv=`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 ${pr} ${le}`,_v=Ve(Iv);function MR({className:e,type:t,...r}){return Lv("input",{type:t,"data-slot":"input",className:_v(e),...r})}import*as PR from"@radix-ui/react-label";import{jsx as Mv}from"react/jsx-runtime";var Nv="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",Ov=Ve(Nv);function na({className:e,...t}){return Mv(PR.Root,{"data-slot":"label",className:Ov(e),...t})}import{jsx as Fv}from"react/jsx-runtime";var Pv=`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 ${pr} ${le}`,kv=Ve(Pv);function kR({className:e,...t}){return Fv("textarea",{"data-slot":"textarea",className:kv(e),...t})}import{jsx as Ut,jsxs as ai}from"react/jsx-runtime";var Jn=e=>({title:e.subject??"",content:e.content??""}),Bv=e=>{e.preventDefault()},si=({report:e,onCancel:t,onPublishSuccess:r,titleInputRef:n})=>{let{updateReport:o,publishReport:a}=lt(),{labels:s}=Y(),i=Vr(),{title:l,content:d}=Qf(e.reportHubId),[c,u]=Hv(!1),m=async()=>{u(!0);try{await o(e.reportHubId,{title:l,content:d},e.date)}catch{}finally{u(!1)}},p=async()=>{u(!0);try{await o(e.reportHubId,{title:l,content:d},e.date),await a(e.reportHubId,e.date),r?.()}catch{}finally{u(!1)}},f=`report-title-${e.reportHubId}`,y=`report-content-${e.reportHubId}`;return ai("form",{className:"space-y-4 p-1",onSubmit:Bv,children:[ai("div",{className:"space-y-2",children:[Ut(na,{htmlFor:f,children:s.formTitle}),Ut(tt,{elementRef:n,render:g=>Ut(MR,{id:f,value:l,onChange:R=>i.setInput(e.reportHubId,{title:R.target.value}),placeholder:s.formTitlePlaceholder,disabled:c,...g})})]}),ai("div",{className:"space-y-2",children:[Ut(na,{htmlFor:y,children:s.formContent}),Ut(tt,{render:g=>Ut(kR,{id:y,value:d,onChange:R=>i.setInput(e.reportHubId,{content:R.target.value}),placeholder:s.formContentPlaceholder,className:"min-h-50",disabled:c,...g})})]}),ai("div",{className:"flex justify-end gap-2",children:[t&&Ut(tt,{render:g=>Ut(Ar,{type:"button",variant:"outline",onClick:t,disabled:c,...g,children:s.formCancel})}),Ut(tt,{render:g=>Ut(Ar,{type:"button",variant:"secondary",onClick:m,disabled:c,...g,children:s.formSave})}),Ut(tt,{render:g=>Ut(Ar,{type:"button",onClick:p,disabled:c,...g,children:s.formPublish})})]})]})};import{useContext as BR,useMemo as UR,useSyncExternalStore as VR}from"react";import{jsx as Rn,jsxs as HR}from"react/jsx-runtime";var Uv=`inline-grid whitespace-nowrap text-xs leading-4 tabular-nums ${de}`,FR="[grid-area:1/1]",Vv=e=>{let t=0;for(let r=e;r!==0;r&=r-1)t+=1;return t},rc=e=>e===null||e.matchedSets===null?null:Vv(e.matchedSets),ii=(e,t,r)=>{let n=rc(e);return t.showsMatchedSets&&n!==null?r.searchMatchedKeywordsDescription(n,t.setCount):null},WR=(e,t,r)=>{let n=rc(e);return e!==null&&!r&&(n===null||n>=1)&&t.entry===e&&t.isCurrent&&t.fields.length===0},zR=({entry:e,drawn:t,indicator:r,isEditing:n,labels:o})=>{let a=ii(e,r,o),s=Ey(t.fields,o);return[...a===null?[]:[a],...s.length>0?[s]:[],...WR(e,t,n)?[o.searchMatchOutsideViewDescription]:[]]},Wv=({isEditing:e,descriptionId:t})=>{let{entry:r,tally:n,indicator:o}=Qo(),{labels:a}=Y(),s=VR(n.subscribe,n.getSnapshot,n.getSnapshot),{setCount:i,showsMatchedSets:l}=o,d=l?`${a.searchMatchedKeywords(i,i)} ${a.searchMatchOutsideView}`:a.searchMatchOutsideView,c=rc(r),u=WR(r,s,e),m=ii(r,o,a),p=UR(()=>zR({entry:r,drawn:s,indicator:o,isEditing:e,labels:a}),[r,s,o,e,a]);return HR("span",{className:Uv,"data-daily-report-search-indicator":!0,children:[Rn("span",{"aria-hidden":"true",className:`invisible ${FR}`,"data-daily-report-search-indicator-placeholder":!0,children:d}),HR("span",{className:FR,children:[m!==null&&c!==null?Rn("span",{"aria-hidden":"true",title:m,"data-daily-report-search-matched-keywords":`${c}/${i}`,children:a.searchMatchedKeywords(c,i)}):null,m!==null&&u?" ":null,u?Rn("span",{"aria-hidden":"true",title:a.searchMatchOutsideViewDescription,"data-daily-report-search-outside-view":!0,children:a.searchMatchOutsideView}):null,Rn("span",{id:t===null?void 0:t,className:Zt,"data-daily-report-search-indicator-description":!0,children:p.join(" ")})]})]})},li=({isEditing:e,descriptionId:t})=>BR(pt)===null?null:Rn(Wv,{isEditing:e,descriptionId:t}),zv=({id:e})=>{let{entry:t,tally:r,indicator:n}=Qo(),{labels:o}=Y(),a=VR(r.subscribe,r.getSnapshot,r.getSnapshot),s=UR(()=>zR({entry:t,drawn:a,indicator:n,isEditing:!1,labels:o}),[t,a,n,o]);return Rn("span",{id:e,hidden:!0,"data-daily-report-search-match-description":!0,children:s.join(" ")})},KR=({id:e})=>BR(pt)===null?null:Rn(zv,{id:e});import{virtualScrollItemElementId as gx}from"@aiquants/virtualscroll";import{useContext as Ri}from"react";import{virtualScrollItemElementId as ch}from"@aiquants/virtualscroll";import{createContext as dx,useCallback as Re,useContext as cx,useLayoutEffect as $r,useMemo as uh,useRef as jr,useState as to,useSyncExternalStore as Rh}from"react";import{flushSync as yi}from"react-dom";var $R=(e,t)=>e.id===t.id&&e.indexHint===t.indexHint,jR=Object.freeze([]),GR=(e,t)=>e.includes(t)?e:Object.freeze([...e,t]),YR=(e,t)=>Object.freeze(e.filter(r=>r!==t)),qR=e=>{let t=jR,r=jR,n=e,o=null,a=Object.freeze({selected:n,settled:n}),s=0,i=!1,l=()=>{let h=o===null?n:o;if(!($R(a.selected,n)&&$R(a.settled,h))){a=Object.freeze({selected:n,settled:h});for(let b of t)b()}},d=()=>a,c=h=>(t=GR(t,h),()=>{t=YR(t,h)}),u=h=>{n=h,l()},m=h=>{let b=o!==null;if(o=h,l(),b!==(o!==null))for(let D of r)D()},p=h=>m(h),f=()=>m(null),y=()=>o!==null,g=h=>(r=GR(r,h),()=>{r=YR(r,h)}),R=()=>{s+=1},E=h=>{i=h},S=Object.freeze({appliedEpoch:()=>s,pending:()=>i});return{getSnapshot:d,subscribe:c,select:u,hold:p,release:f,isHeld:y,subscribeHold:g,noteKeyStepApplied:R,noteKeyStepsPending:E,keySteps:S}};var vr=e=>({active:e,effect:"none"}),XR=(e,t)=>e!==null&&e.index>=t.visibleStartIndex&&e.index<=t.visibleEndIndex,nc=(e,{items:t,selected:r,range:n})=>{if(n===null)return e===null?r:e;if(XR(e,n))return e;if(XR(r,n))return r;let o=ke(t,n.visibleStartIndex);return o===void 0?null:{reportHubId:o.reportHubId,index:n.visibleStartIndex}},QR=(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:nr(e,r).reportHubId,index:r},effect:"handBack"}},oc=(e,t)=>{switch(t.kind){case"key":return vr(t.target);case"activation":case"focusInControl":return vr(t.row);case"focusInComposite":return t.from==="inside"?vr(e):t.pressed!==null?vr(t.pressed):{active:nc(e,t.shown),effect:"reveal"};case"focusLeft":return vr(nc(e,t.shown));case"rangeChanged":return vr(t.focusWithin&&e!==null?e:nc(e,t.shown));case"listChanged":{if(e===null)return vr(null);let r=Fe(t.items,e.reportHubId,e.index);return r===-1?QR(t.items,e.index):vr(r===e.index?e:{reportHubId:e.reportHubId,index:r})}case"removed":return t.selection===null||t.selection.reportHubId!==t.reportHubId?vr(e):QR(t.items,t.selection.index)}};var hn=e=>e.isComposing||e.keyCode===229,eo=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 di=e=>e.matches(":focus-visible")&&Xo(e.ownerDocument)!=="pointer";var Kv="data-daily-report-keyboard-focus",zr={capture:!0},ZR=e=>{let t=Zf(e.ownerDocument),r=i=>{e.toggleAttribute(Kv,Pe(i)&&di(i))},n=i=>r(i.target),o=i=>{Pe(i.relatedTarget)&&e.contains(i.relatedTarget)||r(null)},a=()=>r(null);e.addEventListener("focusin",n,zr),e.addEventListener("keydown",n,zr),e.addEventListener("focusout",o,zr),e.addEventListener("pointerdown",a,zr);let s=et(e);return r(s!==null&&e.contains(s)?s:null),()=>{e.removeEventListener("focusin",n,zr),e.removeEventListener("keydown",n,zr),e.removeEventListener("focusout",o,zr),e.removeEventListener("pointerdown",a,zr),r(null),t()}};var $v='form, input, textarea, select, [contenteditable]:not([contenteditable="false"]), audio[controls], video[controls]',jv='select, input[type="search"], [contenteditable]:not([contenteditable="false"]), audio[controls], video[controls]',Gv=["combobox","listbox","menu","menubar","radiogroup","slider","spinbutton","textbox","tree","grid","scrollbar","tablist","toolbar","treegrid","separator"],Yv=Gv.map(e=>`[role="${e}"]`).join(", "),qv='[aria-expanded="true"]',Xv=new Map([["ArrowUp","previous"],["ArrowDown","next"],["Home","first"],["End","last"],["PageUp","pageBackward"],["PageDown","pageForward"]]),Qv=new Set(["Enter"," "]),Zv=new Map([["Home","exitBefore"],["End","exitAfter"]]),sc=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=Zv.get(e.key);return r===void 0?null:r}let t=Xv.get(e.key);return t!==void 0?t:Qv.has(e.key)?"activate":e.key==="Escape"?"returnToRow":null},ac=(e,t,r,n)=>{let o=e.closest(t);return o!==null&&o!==n&&o!==r&&r.contains(o)},Jv=(e,t,r,n)=>{let o=ln(t,r);if(o===null)return null;if(e==="tab")return e;if(e==="activate"||ac(t,Yv,r,n))return null;if(e==="returnToRow"){if(ac(t,jv,r,n))return null;let a=t.closest(qv);return a!==null&&o.contains(a)?null:e}return ac(t,$v,r,n)?null:e},JR=(e,{container:t,composite:r})=>{let n=sc(e);if(n===null||e.defaultPrevented||hn(e)||t===null||r===null||!Pe(e.target)||!t.contains(e.target))return null;let o=e.target,a=o===r?n==="returnToRow"?null:n:Jv(n,o,t,r);return a===null?null:{kind:a,target:o}};var ci={kind:"stay"},pi=e=>{if(e.kind==="measured")return e.heightOf;let{rowHeight:t}=e;return()=>t},eh=e=>Math.floor(.875*e),Kr=(e,t)=>({kind:"move",index:e,align:t}),ui=(e,t,r,n)=>e>=0&&e+t<=r?"none":t>r?n>0?"top":"bottom":e<0?"top":"bottom",ex=({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},tx=({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},rx=(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 ci;if(r==="top")return Kr(n-1,"top");let d=i(n-1);return Kr(n-1,ui(s-d,d,a,-1))}case"next":return n===o-1?ci:r==="top"?Kr(n+1,"top"):Kr(n+1,ui(l,i(n+1),a,1));case"first":return Kr(0,"top");case"last":return Kr(o-1,i(o-1)<=a?"bottom":"top");case"pageForward":{if(l>a)return{kind:"reveal",delta:Math.min(l-a,eh(a))};if(n===o-1)return ci;let d=ex(t);return Kr(d.index,ui(d.top,i(d.index),a,1))}case"pageBackward":{if(s<0)return{kind:"reveal",delta:-Math.min(-s,eh(a))};if(n===0)return ci;let d=tx(t);return Kr(d.index,ui(d.top,i(d.index),a,-1))}}},nx=({index:e,activeRowTop:t,heightOf:r},n)=>rh(n,{index:e,offsetPx:-t},r),th=(e,t,r,n)=>{let o=r,a=null,s=0;for(let i=0;i<t;i++){let l=rx(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:nx(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}},ic=({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"},rh=(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},mi=(e,t,r,n)=>{let o=e.getViewportSize(),a=e.getScrollPosition();if(!(o>0&&a>=0))return null;let s=pi(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:rh(t,i,s),heightOf:s}},fi=(e,t,r,n)=>{let o=pi(n),a=e.index,s=o(a)-e.offsetPx;for(;s<t&&a<r-1;)a+=1,s+=o(a);return a},nh=(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 oh=e=>{if(e!==void 0)for(let t of[...e])t()},ah=({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&&oh(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),oh(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 Vt={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}},lc=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!1}),ox=Object.freeze({apply:null,flush:!1,requestFrame:!0,ended:!1}),sh=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!0}),ax=new Map(Object.values(Vt).map(e=>[e,Object.freeze({apply:e,flush:!1,requestFrame:!0,ended:!1})])),ih=e=>{let t=ax.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},sx=(e,t,r)=>e==="row"||e==="page"?t+r:r,lh=e=>({state:{axis:e.axis,pending:0,fence:"immediate"},effects:ih(e)}),dh=(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",ih(r)):(e.pending=sx(e.axis,e.pending,r.amount),lc)}case"frame":{if(e.fence==="open")return lc;if(e.fence==="immediate")return e.fence="flush",ox;if(e.pending===0)return e.fence="open",lc;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?sh:{apply:{axis:e.axis,amount:e.pending},flush:!0,requestFrame:!1,ended:!0};case"cancel":return sh}};var dc=dx(null),ux=Object.freeze({kind:"frame"}),ph={capture:!0},px=()=>{},mh=(e,t,r)=>{let n=e.ownerDocument,o=n.defaultView;if(o===null)return px;let a=!0,s=()=>{a&&(a=!1,i.disconnect(),n.removeEventListener("focusin",s,ph))},i=new o.MutationObserver(()=>{e.isConnected||(s(),r())});return i.observe(t,{childList:!0,subtree:!0}),n.addEventListener("focusin",s,ph),s},mx=Object.freeze({kind:"keyup"}),fx=Object.freeze({kind:"cancel"}),yx=Object.freeze({previous:Object.freeze({kind:"repeat",step:Vt.previous}),next:Object.freeze({kind:"repeat",step:Vt.next}),pageBackward:Object.freeze({kind:"repeat",step:Vt.pageBackward}),pageForward:Object.freeze({kind:"repeat",step:Vt.pageForward}),first:Object.freeze({kind:"repeat",step:Vt.first}),last:Object.freeze({kind:"repeat",step:Vt.last}),activate:Object.freeze({kind:"repeat",step:Vt.activate})}),ro={capture:!0},Rx=e=>e in Vt,hx=(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}},bx=(e,t)=>({top:e.top-t,bottom:e.bottom+t}),fh=e=>{let t=Vo(e),r=Br(e);return t===null||r===null?null:{reportHubId:t,index:r-1}},Sx=e=>e==="first"||e==="last",yh=(e,t)=>{let r=Fe(e,t.reportHubId,t.index);return r===-1?null:{reportHubId:t.reportHubId,index:r}},hh=e=>{let t=cx(dc);if(t===null)throw new Error("[daily-report] useListRowState is called outside a view's rows (no row cursor)");let r=Re(a=>t.subscribe(e,a),[t,e]),n=Re(()=>t.rowStateOf(e),[t,e]),o=Rh(r,n,n);return{active:(o&1)!==0,selected:(o&2)!==0}},bh=(e,t)=>{let r=Re(()=>{let n=e.getActiveId();if(n===null)return null;let o=Fe(t,n,e.getActiveIndexHint());return o===-1?null:o},[e,t]);return Rh(e.subscribeActive,r,r)},Sh=({items:e,selectedId:t,onSelect:r,onActivate:n,containerRef:o,rootRef:a,gridId:s,handleRef:i,scroller:l,rowSizing:d,arrowAlign:c})=>{let[u]=to(()=>ah({initialSelectedId:t})),[m]=to(()=>Hy(u)),p=Qe(()=>({items:e,onSelect:r,onActivate:n,rowSizing:d,arrowAlign:c})),f=jr(null),y=jr(!1),g=jr(null),R=jr(!1),E=jr(null),S=jr(()=>{}),[h,b]=to(null),[D,_]=to(0),T=jr(null),P=Qe(()=>{if(t===null)return null;let x=Fe(e,t,null);return x===-1?null:{reportHubId:t,index:x}}),[M]=to(()=>qR({id:t,indexHint:null})),[H,A]=to(0),C=uh(()=>({id:t,indexHint:t===null?null:Sm(h,t)}),[t,h]),v=jr(C);$r(()=>{p.current={items:e,onSelect:r,onActivate:n,rowSizing:d,arrowAlign:c},v.current=C},[p,e,r,n,d,c,C]),$r(()=>{C.indexHint===null&&C.id===M.getSnapshot().selected.id||M.select(C)},[M,C,D]);let w=Re((x,N)=>{let W=E.current;if(W!==null&&W.items===x&&W.reportHubId===N)return W.index;let j=Fe(x,N,W!==null&&W.reportHubId===N?W.index:null);return j!==-1&&(E.current={items:x,reportHubId:N,index:j}),j},[]),O=Re((x,N)=>{E.current={items:p.current.items,reportHubId:x,index:N},b(W=>W!==null&&W.reportHubId===x&&W.index===N?W:{reportHubId:x,index:N}),_(W=>W+1),M.select({id:x,indexHint:N})},[p,M]),B=Re((x,N)=>{E.current={items:p.current.items,reportHubId:N.reportHubId,index:N.index},M.select({id:N.reportHubId,indexHint:N.index}),x.selection=N},[p,M]),V=Re(x=>{yi(()=>{x.select(x.reportHubId,x.index,"settled"),O(x.reportHubId,x.index),A(N=>N+1)})},[O]),X=Re(()=>{let x=p.current.items,N=u.getSelectedId(),W=N===null?-1:w(x,N);return{items:x,selected:N===null||W===-1?null:{reportHubId:N,index:W},range:f.current}},[u,p,w]),G=Re(x=>{let N=R.current;R.current=!0;try{x()}finally{R.current=N}},[]),Q=Re(x=>{P.current=x,u.setActive(x===null?null:x.reportHubId,x===null?null:x.index)},[P,u]),q=Re(x=>{let N=i.current;if(N===null)return null;let{items:W,rowSizing:j}=p.current;return mi(N,x,W.length,j)},[i,p]),fe=Re(x=>{let N=q(x);N===null||ic(N)==="whole"||N.activeRowTop<=0&&N.activeRowTop+N.heightOf(x)>=N.viewport||l.toIndex(x,{align:"nearest"})},[q,l]),De=Re((x,N)=>{let W=o.current;if(W===null)return;let j=p.current.items,oe=P.current,ue=null;if(x===null)ue=oe;else{let k=Fe(j,x,oe!==null&&oe.reportHubId===x?oe.index:null);k!==-1&&(ue={reportHubId:x,index:k},Q(ue))}ue!==null&&fe(ue.index);let $=W.ownerDocument,ne=$.getElementById(s);if(ne===null)return;let _e=ue===null?null:$.getElementById(ch(s,ue.reportHubId));G(()=>sy(W,ne,_e,N))},[o,p,P,s,Q,fe,G]),L=Re(x=>{let N=oc(P.current,x);Q(N.active),N.effect==="reveal"&&N.active!==null&&fe(N.active.index);let W=o.current;N.effect==="handBack"&&y.current&&W!==null&&nn(W)&&De(N.active===null?null:N.active.reportHubId,"removal")},[o,P,Q,fe,De]),U=Re(()=>{y.current&&(y.current=!1,g.current=null,L({kind:"focusLeft",shown:X()}))},[L,X]);$r(()=>{u.settleSelection(t)},[u,t,H]),$r(()=>{t!==null&&w(e,t)},[e,t,w]),$r(()=>{L({kind:"listChanged",items:e})},[e,L]),$r(()=>{let x=a.current;if(x!==null)return ZR(x)},[a]),$r(()=>{let x=o.current;if(x===null)return;let N=x.ownerDocument,W=oe=>{let ue=o.current,$=oe.target;if(!(ue!==null&&Pe($)&&ue.contains($))){g.current=null,U();return}let _e=oe.pointerType==="touch"?null:ln($,ue);g.current=_e===null?null:fh(_e)},j=()=>{g.current=null};return N.addEventListener("pointerdown",W,ro),N.addEventListener("pointerup",j,ro),N.addEventListener("pointercancel",j,ro),()=>{N.removeEventListener("pointerdown",W,ro),N.removeEventListener("pointerup",j,ro),N.removeEventListener("pointercancel",j,ro)}},[o,U]);let K=Re((x,N)=>{L({kind:"activation",row:{reportHubId:x,index:N}}),O(x,N)},[L,O]),re=Re(x=>{let N=oc(P.current,{kind:"removed",reportHubId:x,selection:E.current,items:p.current.items});if(N.effect!=="handBack")return;Q(N.active);let W=N.active===null?null:N.active.reportHubId;S.current();let j=o.current,oe=j===null?null:et(j);if(j!==null&&oe!==null&&!nn(j)&&!j.contains(oe)){S.current=mh(oe,oe.ownerDocument,()=>De(W,"removal"));return}De(W,"removal")},[o,p,P,Q,De]),he=Re((x,N,W,j)=>{let{items:oe,onSelect:ue,rowSizing:$,arrowAlign:ne}=p.current,_e=i.current;if(ue===null||_e===null)return;let k=mi(_e,W.index,oe.length,$);if(k===null)return;let z=th(x,N,k,ne),ae=nr(oe,z.index),ye=z.index!==W.index,ve=ye||j&&Sx(x)&&v.current.id!==ae.reportHubId,ze=T.current;yi(()=>{ye&&L({kind:"key",target:{reportHubId:ae.reportHubId,index:z.index}}),ve&&(u.settleSelection(ae.reportHubId),ze!==null&&B(ze,{reportHubId:ae.reportHubId,index:z.index,select:ue}),ue(ae.reportHubId,z.index,ze===null?"settled":"held")),z.alignment!==null&&l.toIndex(z.alignment.index,{align:z.alignment.align}),z.scrollDelta!==0&&l.by(z.scrollDelta),ve&&ze===null&&(O(ae.reportHubId,z.index),A($t=>$t+1))})},[u,p,i,l,O,B,L]),F=Re(x=>{K(x.reportHubId,x.index),p.current.onActivate(x.reportHubId,x.index)},[p,K]),ee=Re(x=>{let N=P.current;if(N===null)return;if(x.axis==="activate"){F(N);return}let W=hx(x.axis,x.amount);he(W.command,W.count,N,!1)},[P,F,he]),te=Re(x=>{T.current=null,x.frame!==0&&x.view.cancelAnimationFrame(x.frame);let N=x.selection;N!==null&&u.getSelectedId()===N.reportHubId&&V(N),M.release()},[u,M,V]),Ee=Re((x,N,W)=>{let{apply:j}=N;j!==null&&(N.flush?yi(()=>ee(j)):ee(j)),T.current===x&&(N.ended?te(x):N.requestFrame&&(x.frame=x.view.requestAnimationFrame(W)))},[ee,te]),we=Re((x,N,W)=>{let j=dh(x.state,N);M.noteKeyStepsPending(!j.ended&&x.state.pending!==0),N.kind==="frame"&&j.apply!==null&&M.noteKeyStepApplied(),Ee(x,j,W)},[M,Ee]),ie=Re(()=>{let x=T.current;x!==null&&(x.frame=0,we(x,ux,ie))},[we]),vt=Re(()=>{let x=T.current;x!==null&&we(x,mx,ie)},[we,ie]),Ze=Re(()=>{let x=T.current;x!==null&&we(x,fx,ie)},[we,ie]),xt=Re((x,N)=>{M.hold(v.current);let{state:W,effects:j}=lh(Vt[x]),oe={state:W,view:N,frame:0,selection:null};T.current=oe,Ee(oe,j,ie)},[M,Ee,ie]);$r(()=>()=>{S.current();let x=T.current;if(T.current=null,x===null)return;x.frame!==0&&x.view.cancelAnimationFrame(x.frame);let N=x.selection;N!==null&&u.getSelectedId()===N.reportHubId&&N.select(N.reportHubId,N.index,"settled")},[u]);let nt=Re((x,N,W)=>{let j=P.current,oe=j===null?null:q(j.index);if(j===null||oe===null||ic(oe)!=="hidden")return;let ue=N.ownerDocument.getElementById(ch(s,j.reportHubId));ue===null||!Vy(ue,x===N?null:x,W)||yi(()=>l.toIndex(j.index,{align:"nearest"}))},[P,s,l,q]),ct=Re(x=>{let N=T.current,W=N!==null&&x.repeat?sc(x):null;if(N!==null&&W!==null&&Rx(W)&&Vt[W].axis===N.state.axis){x.preventDefault(),we(N,yx[W],ie);return}let j=o.current,oe=j===null?null:j.ownerDocument.getElementById(s),ue=p.current.onSelect===null?null:JR(eo(x),{container:j,composite:oe});if(vt(),ue===null||j===null||oe===null)return;g.current=null;let{kind:$}=ue;switch($){case"exitBefore":case"exitAfter":{let ae=Uy(j,$==="exitBefore"?"before":"after");if(ae===null)return;x.preventDefault(),ae.focus();return}case"tab":nt(ue.target,oe,x.shiftKey);return;case"returnToRow":x.preventDefault(),G(()=>oe.focus({preventScroll:!0}));return}let ne=P.current;if($==="activate"){if(x.preventDefault(),ne===null)return;x.repeat?xt($,je(j)):F(ne);return}if(ne===null)return;let{items:_e,rowSizing:k}=p.current,z=i.current;z===null||mi(z,ne.index,_e.length,k)===null||(x.preventDefault(),x.repeat?xt($,je(j)):he($,1,ne,!0),ue.target!==oe&&G(()=>oe.focus({preventScroll:!0})))},[p,o,s,i,P,ie,we,vt,xt,nt,F,he,G]),ot=Re(()=>{vt()},[vt]),Rt=Re(x=>{let N=o.current,W=x.target;if(N===null)return;y.current=!0;let j=N.ownerDocument.getElementById(s),oe=g.current;if(g.current=null,W===j){let ze=R.current||Pe(x.relatedTarget)&&N.contains(x.relatedTarget)?"inside":"outside";L(ze==="inside"?{kind:"focusInComposite",from:ze}:{kind:"focusInComposite",from:ze,pressed:oe===null?null:yh(p.current.items,oe),shown:X()});return}let ue=ln(W,N),$=ue===null?null:fh(ue),ne=$===null?null:yh(p.current.items,$);if(ue===null||ne===null||!Pe(W))return;L({kind:"focusInControl",row:ne}),S.current(),S.current=mh(W,ue,()=>De(null,"removal"));let _e=i.current;if(_e===null||j===null||!di(W))return;let k=j.getBoundingClientRect(),z=ue.getBoundingClientRect(),ae=z.height<=k.height?z:bx(W.getBoundingClientRect(),ur),ye=nh(ae,k),ve=_e.getViewportSize();ye===0||!(ve>0&&k.height>0)||l.by(ye*ve/k.height)},[o,s,p,i,l,L,X,De]),zt=Re(x=>{let N=o.current,W=x.relatedTarget,j=Pe(W)?N?.contains(W)?"view":"outside":"nowhere";j!=="view"&&Ze(),j==="outside"&&U()},[o,Ze,U]),Kt=Re(x=>{f.current={visibleStartIndex:x.visibleStartIndex,visibleEndIndex:x.visibleEndIndex},L({kind:"rangeChanged",focusWithin:y.current,shown:X()})},[L,X]),gt=uh(()=>({onKeyDown:ct,onKeyUp:ot,onPointerDownCapture:Ze,onWheelCapture:Ze,onTouchStartCapture:Ze,onFocus:Rt,onBlur:zt}),[ct,ot,Ze,Rt,zt]);return{cursor:u,controls:m,containerProps:gt,handleRangeChange:Kt,selection:C,selectionStore:M,resolveSelectedIndex:w,rememberSelection:O,activateRow:K,focusViewRow:De,focusAfterRemoval:re}};import{jsx as hi}from"react/jsx-runtime";var Ie=(e,t)=>`${e}-${t}`,bi=e=>gx(Gm(),e),no=Object.freeze([]),Ex="data-daily-report-row-shell",cc=Object.freeze({..._t,[Ex]:"",className:`h-full w-full ${Lt}`}),Si=hi("div",{...cc}),Dx=(e,t,r)=>r===Ur?e.listRowPositionInUnknownTotal(t+1):e.listRowPosition(t+1,r),oo=({id:e,whileTotalUnknownOnly:t})=>{let{labels:r}=Y(),n=Ri(cn),o=Ri(dn);return t&&o!==Ur?null:hi("span",{id:e,hidden:!0,children:Dx(r,n,o)})},gi=({reportHubId:e,rowId:t,name:r,className:n,style:o,onMouseDown:a,frameRef:s,children:i})=>{let{active:l,selected:d}=hh(e),c=By(e),u=Ri(cn),m=Ri(dn),p=r.kind==="parts",f=p&&m===Ur?[...r.describedBy,Ie(t,"position")]:r.describedBy,y=f.length===0?void 0:f.join(" ");return hi(Hd.Provider,{value:c,children:hi("div",{ref:s,role:"row",id:t,[us]:e,"aria-rowindex":u+1,"aria-posinset":u+1,"aria-setsize":m,"aria-level":1,"aria-selected":d,[Yc]:l?"":void 0,"aria-labelledby":p?Ie(t,"name"):void 0,"aria-describedby":y,"aria-label":p?void 0:r.label,"aria-busy":!p&&r.isBusy?!0:void 0,className:n,style:o,onMouseDown:a,children:i})})};import{Fragment as Tx,jsx as Ei,jsxs as Ax}from"react/jsx-runtime";var wx=Ve(iu),gh=e=>e.name===void 0||e.name===e.label?null:e.name,Eh=e=>{let t=gh(e);return t===null?e.label:t},ao=({config:e,id:t})=>{let r=gh(e);return Ei("span",{id:t,className:wx(e.badgeClassName),children:r===null?e.label:Ax(Tx,{children:[Ei("span",{"aria-hidden":"true",children:Ei("abbr",{title:r,children:e.label})}),Ei("span",{className:Zt,children:r})]})})};import{jsx as Di,jsxs as vx}from"react/jsx-runtime";var wi=({state:e,attachmentCount:t,sourceConfig:r,preview:n,marks:o,marksStore:a,labels:s})=>{let i=[{part:"state",text:e,imageName:null}];return t>0&&i.push({part:"attachments",text:()=>sl(t),imageName:()=>al(s.attachments,t)}),r!==void 0&&i.push({part:"source",text:()=>Eh(r),imageName:null}),n!==null&&i.push({part:"preview",text:n,imageName:null}),a!==null&&i.push({part:"match",text:()=>ii(o,a.indicator,s),imageName:null}),i},oa=(e,t)=>t.map(({part:r})=>Ie(e,r)),Ti=({rowId:e,name:t,description:r})=>{let n=Ie(e,"name");return vx("div",{...cc,"aria-labelledby":t===null?void 0:n,children:[t===null?null:Di("span",{id:n,hidden:!0,children:t}),r.map(({part:o,text:a,imageName:s})=>s===null?Di("span",{id:Ie(e,o),hidden:!0,children:a()},o):Di("span",{id:Ie(e,o),hidden:!0,role:"img","aria-label":s(),children:a()},o)),t===null?null:Di(oo,{id:Ie(e,"position"),whileTotalUnknownOnly:!0})]})};var xx=()=>{},Ai=(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?xx:t.subscribe(r,a);return()=>{s(),i()}},changesBox:(a,s)=>a.detail!==s.detail}};import Ux from"lucide-react/dist/esm/icons/check.js";import Vx from"lucide-react/dist/esm/icons/pencil.js";import Wx from"lucide-react/dist/esm/icons/trash-2.js";import{jsx as Dh}from"react/jsx-runtime";var xi=24,wh=2,Cx=20,vi=5,Ix=3,_x=()=>{let e=Math.cos(2*Math.PI/vi)/Math.cos(Math.PI/vi),t=Array.from({length:2*vi},(m,p)=>{let f=-Math.PI/2+p*Math.PI/vi,y=p%2===0?1:e;return{x:y*Math.cos(f),y:y*Math.sin(f)}}),r=t.map(m=>m.x),n=t.map(m=>m.y),[o,a,s,i]=[Math.min(...r),Math.max(...r),Math.min(...n),Math.max(...n)],l=(Cx-wh)/(a-o),d=xi/2-l*(o+a)/2,c=xi/2-l*(s+i)/2,u=m=>String(Number(m.toFixed(Ix)));return t.map(m=>`${u(d+l*m.x)},${u(c+l*m.y)}`).join(" ")},Lx=_x(),so=({filled:e})=>Dh("svg",{viewBox:`0 0 ${xi} ${xi}`,"aria-hidden":"true",fill:"none",stroke:"currentColor",strokeWidth:wh,strokeLinejoin:"round",className:e?qe.starOn:qe.starOff,children:Dh("polygon",{points:Lx})});import{jsx as Th}from"react/jsx-runtime";var Ci=24,Nx=6,io=()=>Th("svg",{viewBox:`0 0 ${Ci} ${Ci}`,"aria-hidden":"true",className:qe.read,children:Th("circle",{cx:Ci/2,cy:Ci/2,r:Nx,fill:"currentColor"})});import{jsx as Mx}from"react/jsx-runtime";var Ox=/^(\d{4}-\d{2}-\d{2})(?:T(\d{2}:\d{2}):\d{2})?$/,bn=({text:e})=>{let t=Ox.exec(e);if(t===null)return e;let[,r,n]=t;return Mx("time",{dateTime:e,children:n===void 0?r:`${r} ${n}`})};import{Fragment as Bx,jsx as Ge,jsxs as uc}from"react/jsx-runtime";var Px=Ve("m-0"),ht=({label:e,classNames:t,valueId:r,children:n})=>uc("div",{className:t.field,children:[Ge("dt",{className:t.label,children:e}),Ge("dd",{id:r,className:Px(t.value),children:n})]}),kx=`mt-2 font-semibold ${de} text-xs uppercase tracking-wide first:mt-0`,Fx=`m-0 flex flex-col rounded-xl bg-slate-100 p-3 ${de} text-xs dark:bg-slate-800/60`,Hx="m-0 mt-1 text-slate-700 text-sm dark:text-slate-200",Gr=({label:e,children:t})=>uc(Bx,{children:[Ge("dt",{className:kx,children:e}),Ge("dd",{className:Hx,children:t})]}),Ah=({report:e,visitTimeDisplay:t,labels:r})=>{let n=Fr(e.category),o=Fr(e.creationCategory);return uc("dl",{className:Fx,children:[Ge(Gr,{label:r.author,children:Ge(ge,{fieldKey:Te.field("author"),raw:e.author,display:Ke(e.author)})}),Ge(Gr,{label:r.createdAt,children:Ge(bn,{text:Le(e.createdAt)})}),Ge(Gr,{label:r.updatedBy,children:Ge(ge,{fieldKey:Te.field("updatedBy"),raw:e.updatedBy,display:Ke(e.updatedBy)})}),Ge(Gr,{label:r.updatedAt,children:Ge(bn,{text:Le(e.updatedAt)})}),Ge(Gr,{label:r.businessDate,children:Ge(bn,{text:Le(e.date)})}),t!==null&&Ge(Gr,{label:r.visitTime,children:t}),n.text.length>0&&Ge(Gr,{label:r.category,children:Ge(ge,{fieldKey:Te.field("category"),raw:e.category,display:n})}),o.text.length>0&&Ge(Gr,{label:r.creationCategory,children:Ge(ge,{fieldKey:Te.field("creationCategory"),raw:e.creationCategory,display:o})})]})};import{jsx as Ae,jsxs as xh}from"react/jsx-runtime";var Ii={field:I(it,"gap-1 whitespace-nowrap bg-slate-100 text-slate-800 dark:bg-slate-800 dark:text-slate-100"),label:`${de} text-xs uppercase tracking-wide`,value:""},zx={field:I(it,"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-800 text-xs uppercase tracking-wide dark:text-blue-300",value:""},vh={field:I(it,"gap-1 whitespace-nowrap bg-amber-100 text-amber-900 dark:bg-amber-500/15 dark:text-amber-200"),label:"text-amber-900 text-xs uppercase tracking-wide dark:text-amber-300",value:""},Kx=`flex flex-wrap items-center gap-2 font-medium ${de} text-xs`,Ch=({report:e,isRead:t,isStarred:r,onToggleRead:n,onToggleStar:o,onEdit:a,editButtonRef:s,onDelete:i,sourceConfig:l,visitTimeDisplay:d,markerIds:c,labels:u})=>{let m=r?u.starRemove:u.starAdd,p=t?u.markUnread:u.markRead,f=Fr(e.category),y=Fr(e.creationCategory);return xh("div",{className:Kx,children:[Ae(bo,{id:c.attachments,count:e.attachments.length,label:u.attachments}),l?Ae(ao,{id:c.source,config:l}):null,Ae(tt,{render:g=>Ae("button",{type:"button",onClick:o,...g,className:st,title:m,"aria-label":m,"data-detail-star-button":e.reportHubId,children:Ae(so,{filled:r})})}),Ae(tt,{render:g=>Ae("button",{type:"button",onClick:n,...g,className:st,title:p,"aria-label":p,"data-detail-read-button":e.reportHubId,children:t?Ae(Ux,{className:qe.read}):Ae(io,{})})}),a&&Ae(tt,{elementRef:s,render:g=>Ae("button",{type:"button",onClick:a,...g,"data-detail-edit-button":e.reportHubId,className:st,title:u.edit,"aria-label":u.edit,children:Ae(Vx,{className:qe.edit})})}),i&&Ae(tt,{render:g=>Ae("button",{type:"button",onClick:i,...g,"data-detail-delete-button":e.reportHubId,className:st,title:u.deleteReport,"aria-label":u.deleteReport,children:Ae(Wx,{className:qe.delete})})}),xh("dl",{className:"m-0 flex flex-wrap items-center gap-2",children:[Ae(ht,{label:u.id,classNames:zx,children:e.reportHubId}),Ae(ht,{label:u.businessDate,classNames:Ii,children:Ae(bn,{text:Le(e.date)})}),Ae(ht,{label:u.author,classNames:Ii,children:Ae(ge,{fieldKey:Te.field("employeeName"),raw:e.employeeName,display:Ke(e.employeeName)})}),Ae(ht,{label:u.visitTime,classNames:Ii,children:Hr(d)}),Ae(ht,{label:u.updatedAt,classNames:Ii,children:Ae(bn,{text:Le(e.updatedAt)})}),f.text.length>0&&Ae(ht,{label:u.category,classNames:vh,children:Ae(ge,{fieldKey:Te.field("category"),raw:e.category,display:f})}),y.text.length>0&&Ae(ht,{label:u.creationCategory,classNames:vh,children:Ae(ge,{fieldKey:Te.field("creationCategory"),raw:e.creationCategory,display:y})})]}),Ae(li,{isEditing:!1,descriptionId:c.searchMatch})]})};import{useLayoutEffect as Ih,useRef as _h}from"react";import{jsx as Gx}from"react/jsx-runtime";var $x=I(kr,Ea,Da,ga,"h-full"),jx=(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()}}},Lh=({itemId:e,rowId:t,name:r,bodyReady:n,observeRowHeight:o,children:a})=>{let s=_h(null),i=Ym(e),l=_h(null);return Ih(()=>{let d=s.current,c=d===null||!n?null:d.firstElementChild,u=c instanceof HTMLElement?c:null,m=l.current;m!==null&&m.body===u&&m.declareBody===i&&m.observeRowHeight===o||(m!==null&&m.release(),l.current=jx(u,i,o))}),Ih(()=>()=>{l.current?.release(),l.current=null},[]),Gx(gi,{reportHubId:e,rowId:t,name:r,className:$x,frameRef:s,children:a})};import{jsx as J,jsxs as rt}from"react/jsx-runtime";var qx=I("flex w-full flex-col gap-4",Lt,Aa,Pr),Xx=I(Lt,Pr),Qx=I("rounded-2xl",Pr),Zx=I("rounded-2xl border border-red-200 border-solid bg-red-50 p-[15px] text-red-800 text-sm dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-300",Pr),dt="bg-slate-200 dark:bg-slate-700",Jx=I("whitespace-pre-wrap",Ta),eC=I(it,"bg-slate-100 text-xs dark:bg-slate-800",de),tC=({interviewer:e,index:t,template:r})=>{let n=lo(()=>Ke(e.name),[e.name]),o=J(ge,{fieldKey:Te.interviewer(t,"name"),raw:e.name,display:n},"name"),a=e.affiliation;if(!a?.trim())return o;let s=Sy(r,n.text,a);return s===null?r(n.text,a):s.map(i=>i.kind==="text"?i.text:i.kind==="name"?o:J(ge,{fieldKey:Te.interviewer(t,"affiliation"),raw:a,display:Ot(a)},"affiliation"))},rC=e=>({heading:Ie(e,"name"),state:Ie(e,"state"),attachments:Ie(e,"attachments"),source:Ie(e,"source"),searchMatch:Ie(e,"match")}),Mh=e=>`${Le(e.date)} ${Hr(e.employeeName)} ${Hr(e.subject)}`,Ph=(e,t,r)=>{let n=t.get(e.reportHubId),o=r.get(e.reportHubId);return{isRead:n===void 0?e.isRead:n,isStarred:o===void 0?e.isStarred:o}},nC=({report:e,isEditing:t,sourceConfig:r,ledgers:n,marks:o,marksStore:a,labels:s})=>t?[{part:"state",text:()=>s.rowEditingState({isDraft:e.isDraft}),imageName:null}]:wi({state:()=>s.rowState(Ph(e,n.pendingReadUpdates.current,n.pendingStarUpdates.current)),attachmentCount:e.attachments.length,sourceConfig:r,preview:null,marks:o,marksStore:a,labels:s}),oC=rt("div",{..._t,className:Xx,children:[rt("div",{className:"mb-4 flex flex-wrap gap-2",children:[J("div",{className:I("h-6 w-20 rounded-full",dt)}),J("div",{className:I("h-6 w-24 rounded-full",dt)}),J("div",{className:I("h-6 w-24 rounded-full",dt)}),J("div",{className:I("h-6 w-28 rounded-full",dt)})]}),rt("div",{className:"mb-4 grid gap-4 md:grid-cols-[minmax(0,1fr)_240px]",children:[rt("div",{className:"space-y-4",children:[J("div",{className:I("h-5 w-40 rounded",dt)}),J("div",{className:I("h-5 w-56 rounded",dt)}),J("div",{className:I("h-24 rounded-xl",dt)})]}),rt("div",{className:"rounded-xl bg-slate-100 p-3 dark:bg-slate-800/60",children:[J("div",{className:I("mb-2 h-4 w-24 rounded",dt)}),J("div",{className:I("mb-2 h-4 w-28 rounded",dt)}),J("div",{className:I("h-4 w-32 rounded",dt)})]})]}),rt("div",{className:"space-y-4",children:[J("div",{className:I("h-4 w-24 rounded",dt)}),rt("div",{className:"flex flex-wrap gap-2",children:[J("div",{className:I("h-6 w-16 rounded-full",dt)}),J("div",{className:I("h-6 w-16 rounded-full",dt)}),J("div",{className:I("h-6 w-16 rounded-full",dt)})]}),rt("div",{className:"space-y-2",children:[J("div",{className:I("h-16 rounded-xl",dt)}),J("div",{className:I("h-16 rounded-xl",dt)})]})]})]}),aC=()=>oC,sC=({item:e,observeRowHeight:t,onCommentAdded:r,userId:n})=>{let o=rn(),a=Yx(pt),s=lo(()=>Ai(o,a,e.reportHubId,e.businessDate),[o,a,e.reportHubId,e.businessDate]),{bodyReady:i,rendered:l}=bs(e.reportHubId,s,"measured"),{report:d,error:c}=l.detail,u=l.marksStore===a?l.marks:null,{report:m,error:p,isLoading:f,isRefetching:y}=s.read().detail,g=bi(e.reportHubId),R=oy(),E=lt(),{removeStaleItem:S}=E,{labels:h,sourceTypeConfigs:b}=Y(),D=Vr(),_=Vs(e.reportHubId),T=_==="editing"||_==="automatic",P=pc(!1),M=pc(!1),H=m===null&&p===null&&!f&&!y;Nh(()=>{H&&e.reportHubId>0&&S(e.reportHubId)},[H,e.reportHubId,S]);let A=m?.isDraft===!0,C=un(m,n),v=un(d,n),w=pc(s);Oh(()=>{w.current=s},[s]);let O=Sn(()=>{let re=w.current.read().detail.report;re!==null&&(P.current=!0,D.open(e.reportHubId,Jn(re),!1))},[D,e.reportHubId]),B=Sn(()=>{M.current=!0,D.dismiss(e.reportHubId)},[D,e.reportHubId]),V=Sn(()=>{M.current=!0,D.discard(e.reportHubId)},[D,e.reportHubId]),X=Sn(re=>{re===null||!P.current||(P.current=!1,re.focus())},[]),G=Sn(re=>{re===null||!M.current||(M.current=!1,re.focus())},[]);Oh(()=>{T||(M.current=!1)},[T]),Nh(()=>{m!==null&&(C&&A&&_==="display"?D.open(e.reportHubId,Jn(m),!0):!A&&_==="automatic"&&D.discard(e.reportHubId))},[m,C,A,_,D,e.reportHubId]);let Q=Sn(()=>R(e.reportHubId,"removal"),[R,e.reportHubId]),q=d===null?void 0:br(d.sourceType,b),fe=d===null&&(f||m!==null||p!==null),De=Le(e.businessDate),L=Ie(g,"state"),U=c===null&&d!==null?{report:d,description:nC({report:d,isEditing:T,sourceConfig:q,ledgers:E,marks:u,marksStore:a,labels:h})}:null,K=U!==null?T?{kind:"label",label:De,isBusy:!1,describedBy:oa(g,U.description)}:{kind:"parts",describedBy:oa(g,U.description)}:i?{kind:"label",label:De,isBusy:c===null&&fe,describedBy:c===null?no:[L]}:{kind:"label",label:De,isBusy:!0,describedBy:no};return J(Lh,{itemId:e.reportHubId,rowId:g,name:K,bodyReady:i,observeRowHeight:t,children:i?c!==null?J(iC,{itemId:e.reportHubId,stateId:L}):d?T?J(Hh,{report:d,stateId:L,onCancel:B,onPublishSuccess:V,titleInputRef:X}):J(Xn,{reportHubId:e.reportHubId,entry:u,children:J(Fh,{item:e,report:d,sourceConfig:q,rowId:g,onCommentAdded:r,userId:n,onEdit:v?O:void 0,editButtonRef:G,onCommentSectionRemoved:Q})}):J(aC,{}):U===null?Si:J(Ti,{rowId:g,name:T?null:Mh(U.report),description:U.description})})},kh=mc(sC),Fh=mc(({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:m,deleteReport:p}=lt(),{labels:f,headingLevel:y}=Y(),g=Wr[y],R=za(t.sourceType,r),E=rC(n),S=Sn(()=>o?.(e.reportHubId),[o,e.reportHubId]),{isRead:h,isStarred:b}=Ph(t,m.current,u.current),D=un(t,a),_=async()=>{try{await c(t.reportHubId,!h,t.date)}catch{}},T=async()=>{try{await d(t.reportHubId,!b,t.date)}catch{}},P=async()=>{if(confirm(f.confirmDelete))try{await p(t.reportHubId,t.date)}catch{}},M=lo(()=>Uu(t.content??null),[t.content]),H=lo(()=>Ke(t.customerName),[t.customerName]),A=lo(()=>Ke(t.subject),[t.subject]),C=lo(()=>{let v=t.visitTimeFrom?.trim(),w=t.visitTimeTo?.trim();return v&&w?`${v} - ${w}`:v||w||null},[t.visitTimeFrom,t.visitTimeTo]);return rt("div",{..._t,"aria-labelledby":E.heading,onDoubleClick:s,className:qx,children:[J(Tt,{level:y,id:E.heading,tabIndex:-1,...ms,className:Zt,children:Mh(t)}),J("span",{id:E.state,className:Zt,children:f.rowState({isRead:h,isStarred:b})}),J(oo,{id:Ie(n,"position"),whileTotalUnknownOnly:!0}),J(Ch,{report:t,sourceConfig:r,isRead:h,isStarred:b,onToggleRead:_,onToggleStar:T,onEdit:s,editButtonRef:i,onDelete:D?P:void 0,visitTimeDisplay:C,markerIds:E,labels:f}),rt("div",{className:"grid gap-4 md:grid-cols-[minmax(0,1fr)_240px]",children:[rt("div",{className:"flex flex-col gap-4",children:[rt("div",{className:"grid gap-4 sm:grid-cols-2",children:[rt("div",{className:"flex flex-col gap-1",children:[J(Tt,{level:g,className:mr,children:f.customer}),J("span",{className:"font-semibold text-base text-slate-900 dark:text-slate-100",children:J(ge,{fieldKey:Te.field("customerName"),raw:t.customerName,display:H})})]}),rt("div",{className:"flex flex-col gap-1",children:[J(Tt,{level:g,className:mr,children:f.subject}),J("span",{className:"text-slate-700 text-sm dark:text-slate-200",children:J(ge,{fieldKey:Te.field("subject"),raw:t.subject,display:A})})]})]}),M.text.length>0&&rt("div",{className:"flex flex-col gap-2",children:[J(Tt,{level:g,className:mr,children:f.content}),J("div",{className:Jx,children:J(ge,{fieldKey:Te.field("content"),raw:t.content,display:M})})]}),t.interviewers.length>0&&rt("div",{className:"flex flex-col gap-2",children:[J(Tt,{level:g,className:mr,children:f.interviewers}),J("ul",{className:"flex flex-wrap gap-2",children:t.interviewers.map((v,w)=>J("li",{className:eC,children:J(tC,{interviewer:v,index:w,template:f.interviewerWithAffiliation})},JSON.stringify([v.name,v.affiliation])))})]}),J(ei,{attachments:t.attachments}),J(ra,{report:t,userId:a,canComment:R,onCommentAdded:S,onSectionRemoved:l,formPlacement:"after-section"})]}),J(Ah,{report:t,visitTimeDisplay:C,labels:f})]})]})});Fh.displayName="DailyReportResolvedItem";var Hh=mc(({report:e,stateId:t,onCancel:r,onPublishSuccess:n,titleInputRef:o})=>{let{labels:a}=Y();return rt("div",{..._t,className:Qx,children:[J("span",{id:t,className:Zt,children:a.rowEditingState({isDraft:e.isDraft})}),J(si,{report:e,onCancel:r,onPublishSuccess:n,titleInputRef:o})]})});Hh.displayName="DailyReportEditingBody";var iC=({itemId:e,stateId:t})=>{let{labels:r}=Y();return J("div",{..._t,className:Zx,children:J("p",{id:t,children:r.reportLoadFailed(e)})})};import{VirtualScroll as hC,virtualScrollItemElementId as bC}from"@aiquants/virtualscroll";import{useCallback as _i,useContext as SC,useId as $h,useMemo as hc,useRef as gC,useState as jh}from"react";import{createContext as lC}from"react";var fc=lC(null);import{createContext as dC,useContext as cC,useLayoutEffect as uC}from"react";var Bh=()=>{let e=!1;return{request:()=>{e=!0},isPending:()=>e,take:()=>{let t=e;return e=!1,t}}},yc=dC(null),Uh=(e,t)=>{let r=cC(yc);uC(()=>{r===null||!r.isPending()||e.current===null||(r.take(),t(null,"handOver"))})};import{useCallback as Vh,useLayoutEffect as Wh,useMemo as zh,useRef as Rc}from"react";var pC=(e,t,r,n)=>{for(let o=r;o<=n;o++){let a=ke(e,o);if(a===void 0||a.reportHubId!==ke(t,o)?.reportHubId)return!0}return!1},mC=(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}},fC=(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}},yC=(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"?mC(e.index,a,n.rowHeight,r.length):fC(e.index,a,pi(n),r.length);return{reportHubId:nr(r,s).reportHubId,index:s,offsetPx:i,lastVisibleIndex:fi({index:s,offsetPx:i},o,r.length,n),recordedAt:t}},RC=(e,t,r)=>{for(let n=r.index+1;n<=r.lastVisibleIndex&&n<e.length;n++){let o=Fe(t,nr(e,n).reportHubId,n-1);if(o!==-1)return o}return-1},Kh=({items:e,handleRef:t,rowSizing:r,isRevealPending:n})=>{let o=Rc(null),a=Rc(e),s=Rc(r),i=Vh(()=>{let c=t.current,u=c===null?-1:c.getScrollPosition(),m=c===null||!(u>0)?null:c.getScrollAnchor(),p=a.current,f=m===null?void 0:ke(p,m.index),y=c===null?0:c.getViewportSize();o.current=m===null||f===void 0||!(y>0)?null:{reportHubId:f.reportHubId,index:m.index,offsetPx:m.offsetPx,lastVisibleIndex:fi(m,y,p.length,s.current),recordedAt:u}},[t]),l=zh(()=>({toIndex:(c,u)=>{let m=t.current;m!==null&&(m.scrollToIndex(c,u),i())},by:c=>{let u=t.current;u!==null&&(u.scrollBy(c),i())},resizeRow:(c,u)=>{let m=t.current;m!==null&&(m.updateItemSize(c,u),i())},reestimate:c=>{let u=t.current;u!==null&&(u.setItemHeightEstimate(c),i())}}),[t,i]);Wh(()=>{let c=a.current;a.current=e;let u=o.current,m=t.current;if(c===e||u===null||m===null||n())return;let p=yC(u,m.getScrollPosition(),c,s.current,m.getViewportSize());if(p===null){o.current=null;return}let f=Fe(e,p.reportHubId,p.index),y=f===-1?RC(c,e,p):f;if(y===-1){o.current=null;return}if(y===p.index&&!pC(c,e,p.index,p.lastVisibleIndex)){o.current=p;return}m.scrollToIndex(y,{align:"top",offset:-p.offsetPx}),o.current={reportHubId:nr(e,y).reportHubId,index:y,offsetPx:p.offsetPx,lastVisibleIndex:fi({index:y,offsetPx:p.offsetPx},m.getViewportSize(),e.length,r),recordedAt:m.getScrollPosition()}},[e,t,r,n]),Wh(()=>{s.current=r},[r]);let d=Vh(c=>{if(c.cause!=="clamp"){i();return}let u=o.current;u!==null&&(o.current={...u,recordedAt:u.recordedAt+c.delta})},[i]);return zh(()=>({handleRangeChange:i,handleScrollAdjust:d,scroller:l}),[i,d,l])};import{jsx as co}from"react/jsx-runtime";var EC=Object.freeze({skipFar:!0}),DC=(e,t)=>{let r=null,n=new Map;return a=>{let s=e.current;s!==r&&(r=s,n.clear());let i=n.get(a);if(i!==void 0)return i;let l=Fe(s,a,t(a)),d=l===-1?null:l;return n.set(a,d),d}},Li=({containerRef:e,testId:t,itemsRef:r,rowSetSize:n,isViewRevealPending:o,onRangeChange:a,...s})=>{let i=gC(null),l=_i(w=>(i.current=w,()=>{i.current=null}),[]),{labels:d}=Y(),c=$h(),{handleRangeChange:u,handleScrollAdjust:m,scroller:p}=Kh({items:s.items,handleRef:i,rowSizing:s.rowSizing,isRevealPending:o}),{handleRangeChange:f,...y}=Sh({...s,containerRef:e,handleRef:i,scroller:p,gridId:c}),{cursor:g,controls:R,selectionStore:E,focusViewRow:S}=y,h=SC(fc),[b]=jh(()=>h===null?null:h.instrumentView({hostTestId:t,readHandle:()=>i.current,readItems:()=>r.current,reveal:p.toIndex})),[D]=jh(()=>jm({gridId:c,isHolding:()=>E.isHeld(),subscribeHold:w=>E.subscribeHold(w),keySteps:E.keySteps,activeIndex:()=>{let w=g.getActiveId(),O=w===null?-1:Fe(r.current,w,g.getActiveIndexHint());return O===-1?null:O},indexOf:DC(r,w=>{let O=e.current,B=O===null?null:O.ownerDocument.getElementById(bC(c,w)),V=B===null?null:Br(B);return V===null?null:V-1}),pane:()=>{let w=i.current,O=w===null?-1:w.getScrollPosition();return w===null||O===-1?null:{range:w.getRange(),position:O}},observe:b===null?void 0:b.observeRowPass})),_=_i(w=>{m(w),!(b===null||w.cause!=="re-estimate")&&b.observeReEstimate(E.isHeld()||e.current?.hasAttribute(Mr)===!0)},[m,b,E,e]),T=_i(w=>{e.current=w;let O=b===null?null:b.attach(w);return()=>{O!==null&&O(),e.current=null}},[e,b]);Uh(e,S);let P=$h(),M=s.onSelect!==null,H=_i(w=>{f(w),u(),a(w)},[f,u,a]),A=hc(()=>({role:jl,id:c,tabIndex:0,"aria-label":d.title,"aria-describedby":M?P:void 0,"aria-rowcount":n}),[c,d.title,M,P,n]),C=hc(()=>M?co("span",{id:P,className:"sr-only",children:d.listKeyboardHelp}):null,[M,P,d.listKeyboardHelp]),v=hc(()=>({cursor:g,controls:R,rowPass:D,focusViewRow:S}),[g,R,D,S]);return{...y,handleRangeChange:H,handleScrollAdjust:_,attachVirtualScroll:l,handleRef:i,scroller:p,attachScrollContainer:T,contentProps:A,keyboardHelp:C,rowPass:D,rowScope:v}},Ni=({rowScope:e,items:t,...r})=>{let n=bh(e.cursor,t);return co(dc.Provider,{value:e.cursor,children:co(Fd.Provider,{value:e.controls,children:co(hs.Provider,{value:e.rowPass,children:co(Td.Provider,{value:e.focusViewRow,children:co(hC,{...r,activeItemIndex:n,activeItemVisibleInset:qc,itemZones:EC})})})})})};import{useCallback as wC,useContext as Gh,useEffect as Yh,useMemo as TC,useState as AC}from"react";var qh=e=>{let t=e;for(;t<Tl;)t+=Nn;return t>=Oo+Nn&&(t-=Nn*Math.floor((t-Oo)/Nn)),t},vC=(e,t,r)=>e===null||t<e.start||r>e.end?{start:t-Oo,end:r+Oo}:{start:t-qh(t-e.start),end:r+qh(e.end-r)},Oi=e=>{for(let t of e.values())t();e.clear()},Xh=(e,t)=>{for(let[r,n]of e)t.has(r)||(n(),e.delete(r))},xC=()=>{let e=null,t=new Map,r=new Map,n=null,o=null,a=()=>{},s=()=>{Oi(t),Oi(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&&(Oi(t),e=null),o!==null&&o.marksStore!==l.marksStore&&Oi(r),e=vC(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 f=d;f<=c;f++){let y=l.getItem(f);y.reportHubId>0&&u.set(y.reportHubId,y.businessDate)}let{detailStore:m,marksStore:p}=l;for(let[f,y]of u)t.has(f)||t.set(f,m.subscribe(f,y,a)),p!==null&&!r.has(f)&&r.set(f,p.subscribe(f,a));Xh(t,u),Xh(r,u)}}},Mi=({itemCount:e,getItem:t})=>{let r=Gh(On),n=rn(),o=Gh(pt),[a]=AC(xC),s=TC(()=>({detailSource:r,detailStore:n,marksStore:o,itemCount:e,getItem:t}),[r,n,o,e,t]),i=wC(l=>a.evaluate(l,s),[a,s]);return Yh(()=>{a.evaluate(null,s)},[a,s]),Yh(()=>()=>a.releaseAll(),[a]),i};import{Fragment as PC,jsx as dr,jsxs as MC}from"react/jsx-runtime";var Jh={pointerDragInputs:Xa,wheelSpeedMultiplier:Ka,inertiaOptions:Wn(!1),enableKeyboardNavigation:!1},CC={...Jh,inertiaOptions:Wn(!0)},Zh="daily-report-detail-list",IC=I("relative w-full",Na,La,Oa),_C=I(Nt,"relative"),LC=300,NC=e=>{let t=Mm({seedPx:Bp,quantumPx:Up});for(let r of e.values())t.record(null,r);return t},Sc=e=>{let t=bt(null),[r,n]=En(null),o=ss(t),a=zn(r),s=Ye(i=>(t.current=i,n(i),()=>{t.current=null,n(null)}),[]);return dr("div",{ref:s,className:Ca,children:dr("div",{className:Ia,children:o===null?null:dr(OC,{...e,viewportHeight:o,reducedMotion:a})})})},OC=({dailyReportItems:e,rowSetSize:t,userId:r,selectedItemId:n,onSelectItem:o,scrollRestoreRef:a,viewportHeight:s,reducedMotion:i})=>{let[{initialScrollAnchor:l,restored:d}]=En(()=>{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 z=rr(e,k.topItem.reportHubId);return z!==-1?{initialScrollAnchor:{index:z,offsetPx:k.topItem.offsetPx},restored:!0}:{initialScrollAnchor:{index:k.topItem.index,offsetPx:0},restored:!0}}),c=bt(d),u=bt(n??null),m=Qe(()=>a?.current.measuredHeights??new Map),[p]=En(()=>NC(m.current)),[f]=En(()=>p.estimate()),y=bt(f),g=bt(null),R=ns(),E=Ml(),[S]=En(Ss),h=bt(null),b=bt(null),D=bt(e),_=bt(o);Qh(()=>{D.current=e,_.current=o},[e,o]);let T=bt(null),[P,M]=En(0),H=bt(null),A=e.length,C=t===void 0?A:t,v=Ye(k=>{let z=ke(e,k);return z===void 0?ja:z},[e]),w=Ye(k=>{let z=m.current.get(v(k).reportHubId);return z===void 0?y.current:z},[m,v]),O=Ye(k=>cs(e,k),[e]),B=bc(()=>({kind:"measured",heightOf:w}),[w]),V=Ye((k,z,ae)=>{if(T.current={reportHubId:k,index:z},ae==="held"){_.current?.(k,"held");return}M(ye=>ye+1),_.current?.(k,"settled")},[]),X=Ye((k,z)=>V(k,z,"settled"),[V]),G=Ye((k,z)=>{if(A===0)return;let ae=Math.max(0,k),ye=Math.min(A-1,z);if(ae>ye)return;let ve=new Set;for(let ze=ae;ze<=ye;ze++){let $t=v(ze);if($t.businessDate&&ve.add($t.businessDate),ve.size>=kp)break}ve.forEach(ze=>{E(ze)})},[v,A,E]),Q=bt(null),q=Ye(()=>Q.current,[]),fe=Mi({itemCount:A,getItem:v}),De=Ye(k=>{if(A===0)return;let{renderingStartIndex:z,renderingEndIndex:ae,visibleStartIndex:ye}=k,ve=v(ye);ve.reportHubId>0&&(Q.current=ve.reportHubId),ve.businessDate&&S.setLabel(Le(ve.businessDate)),G(z,ae),G(ae+1,ae+$a),G(z-$a,z-1),fe(k)},[v,A,G,S,fe]),L=Ye(()=>H.current!==null,[]),{containerProps:U,handleRangeChange:K,handleScrollAdjust:re,attachVirtualScroll:he,handleRef:F,scroller:ee,attachScrollContainer:te,contentProps:Ee,keyboardHelp:we,resolveSelectedIndex:ie,activateRow:vt,rowPass:Ze,rowScope:xt,selectionStore:nt}=Li({items:e,selectedId:n??null,onSelect:o===void 0?null:V,onActivate:X,containerRef:g,rootRef:g,testId:Zh,itemsRef:D,rowSetSize:C,rowSizing:B,arrowAlign:"top",isViewRevealPending:L,onRangeChange:De});Es({items:e,scroller:ee,readTopReportId:q});let ct=Ye(()=>{let k=p.estimate();k===y.current||nt.isHeld()||b.current!==null||(y.current=k,ee.reestimate(k))},[p,nt,ee]);Qh(()=>nt.subscribeHold(()=>{nt.isHeld()||ct()}),[nt,ct]);let ot=Ye((k,z)=>{if(F.current===null)return!1;let ae=D.current,ye=z!==null&&z.reportHubId===k?Fe(ae,k,z.index):ie(ae,k);return ye===-1?!1:(c.current&&(c.current=!1,k===u.current)||z!==null&&z.reportHubId===k&&z.index===ye||ee.toIndex(ye,{align:"top"}),!0)},[F,ie,ee]);gn(()=>{let k=T.current;T.current=null,H.current=null,n!=null&&(ot(n,k)||(H.current=n))},[n,ot]),gn(()=>{let k=H.current;k!==null&&ot(k,null)&&(H.current=null)},[e,ot]),gn(()=>{let k=a?.current;k&&(k.anchorReportHubId=n??null)},[n,a]),gn(()=>{T.current=null},[P]);let Rt=bt(null),zt=Ye(()=>{F.current&&(Rt.current=F.current);let k=a?.current,z=Rt.current;if(k&&z){let ye=z.getScrollAnchor(),ve=ye===null?void 0:ke(D.current,ye.index);ye&&ve&&(k.topItem={reportHubId:ve.reportHubId,index:ye.index,offsetPx:ye.offsetPx})}let ae=g.current;ae&&(ae.toggleAttribute(Mr,!0),b.current&&clearTimeout(b.current),b.current=setTimeout(()=>{ae.toggleAttribute(Mr,!1),b.current=null,ct()},150))},[F,a,ct]),Kt=Ye(k=>dr(gs,{...k,store:S}),[S]);gn(()=>{let k=g.current;if(!k)return;let z=()=>{S.setWheelScrollActive(!0),h.current&&clearTimeout(h.current),h.current=window.setTimeout(()=>{S.setWheelScrollActive(!1),h.current=null},Ga)};return k.addEventListener("wheel",z,{passive:!0}),()=>{k.removeEventListener("wheel",z),h.current&&clearTimeout(h.current)}},[S]);let gt=Ye(k=>{for(let[z,ae]of k){Ze.measured(z);let ye=z.parentElement,ve=ye===null?null:Vo(ye),ze=ye===null?null:Br(ye);if(ve===null||ze===null)continue;let $t=ae+2*ur,_r=m.current.get(ve);if(_r===$t)continue;let Tn=Fe(D.current,ve,ze-1);Tn!==-1&&(m.current.set(ve,$t),p.record(_r===void 0?null:_r,$t),ee.resizeRow(Tn,$t))}ct()},[m,ee,Ze,p,ct]),[x]=En(()=>Om(gt)),N=x.observe,W=Ye(k=>{let z=je(k),ae=te(k),ye=x.attach(z),ve=Ze.attach(z,x.remeasure);return()=>{ve(),ye(),ae()}},[te,Ze,x]);gn(()=>{A!==0&&G(0,Math.min(A-1,$a))},[A,G]);let j=bt(null),oe=Ye(k=>{let z=Fe(D.current,k,null);z!==-1&&(j.current!==null&&clearTimeout(j.current),j.current=setTimeout(()=>{j.current=null;let ae=Fe(D.current,k,z);ae!==-1&&ee.toIndex(ae,{align:"bottom"})},LC))},[ee]);gn(()=>()=>{j.current!==null&&clearTimeout(j.current)},[]);let ue=Ye(k=>{if(!_.current)return;let z=ln(k.target,g.current);if(z===null||Im(k.target,z))return;let ae=Cm(z,D.current);ae!==null&&(vt(ae.reportHubId,ae.index),V(ae.reportHubId,ae.index,"settled"))},[V,vt]),$=Ye((k,z)=>dr(cn.Provider,{value:z,children:dr(zo.Provider,{value:k.reportHubId,children:dr(kh,{item:k,observeRowHeight:N,onCommentAdded:oe,userId:r})})},k.reportHubId),[N,oe,r]),ne=bc(()=>({...qa,renderThumbOverlay:Kt}),[Kt]),_e=bc(()=>dr(dn.Provider,{value:C,children:dr(Ni,{ref:he,rowScope:xt,items:e,itemCount:A,getItem:v,getItemKey:O,getItemHeight:w,estimatedItemHeight:f,viewportSize:s,initialScrollAnchor:l,overscanCount:Ya,scrollBarOptions:ne,behaviorOptions:i?CC:Jh,onRangeChange:K,onScrollAdjust:re,onScroll:zt,testId:Zh,className:IC,locale:R.locale,labels:R.labels,contentProps:Ee,children:$})}),[he,xt,e,C,A,v,O,w,f,s,i,l,ne,K,re,zt,R.locale,R.labels,Ee,$]);return dr(PC,{children:MC("div",{ref:W,className:_C,...fs,...U,onClick:ue,children:[we,_e]})})};import rb from"lucide-react/dist/esm/icons/refresh-cw.js";import{createContext as BC,memo as UC,useContext as VC,useLayoutEffect as WC,useRef as zC}from"react";import{jsx as gc,jsxs as kC}from"react/jsx-runtime";var Pi=e=>10**String(e).length-1,aa=({text:e,widestTexts:t,ref:r})=>kC("span",{ref:r,className:wu,children:[gc("span",{"aria-hidden":"true",className:_a,children:[...new Set(t)].map(n=>gc("span",{className:Qr,children:n},n))}),gc("span",{className:Tu,children:e})]});import{useLayoutEffect as FC,useState as eb}from"react";import{jsx as tb,jsxs as HC}from"react/jsx-runtime";var Ec=Object.freeze({status:"",alert:""}),ki=({announcement:e,testId:t})=>{let[r]=eb(e),[n,o]=eb(!1),a=n||e.status!==r.status||e.alert!==r.alert;FC(()=>{a&&!n&&o(!0)},[a,n]);let{status:s,alert:i}=a?e:Ec;return HC("span",{"data-testid":t,className:"sr-only",children:[tb("span",{role:"status",children:s}),tb("span",{role:"alert",children:i})]})};import{Fragment as rI,jsx as St,jsxs as Wt}from"react/jsx-runtime";var wc=BC(!0),KC="daily-report-ids-stream-status-announcer",$C="inline-grid whitespace-nowrap text-start",ab="col-start-1 row-start-1",jC=`${_a} ${ab}`,GC=`${ab} flex justify-self-start rounded-full empty:not-focus:invisible ${le}`,sb=I(it,"gap-1 bg-blue-100 font-medium text-blue-800 text-xs tabular-nums dark:bg-blue-900/40 dark:text-blue-300"),Dc="size-2 rounded-full bg-blue-500 dark:bg-blue-400",ib=I(it,"gap-1 bg-amber-100 font-medium text-amber-900 text-xs tabular-nums dark:bg-amber-900/40 dark:text-amber-300"),lb=I(it,"gap-1 bg-rose-100 font-medium text-rose-900 text-xs dark:bg-rose-900/40 dark:text-rose-300"),db=I(it,"gap-1 bg-slate-100 font-medium text-slate-700 text-xs dark:bg-slate-800/40 dark:text-slate-300"),cb=I("inline-flex h-5 items-center rounded-full bg-rose-100 px-2 font-semibold text-rose-900 hover:bg-rose-200 hover:text-rose-950 dark:bg-rose-900 dark:text-rose-50 dark:hover:bg-rose-800 dark:hover:text-rose-50",le),nb="size-3",ob=`${sb} ${Qr}`,YC=`${ib} ${Qr}`,qC=`${lb} ${Qr}`,XC=`${db} ${Qr}`,ub=(e,t)=>Pi(t===null?e:Math.max(e,t)),QC=(e,t,r)=>{let n=ub(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)}},ZC=({labels:e,loadedCount:t,totalCount:r})=>{let{text:n,widestText:o}=QC(e,t,r);return Wt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"streaming",className:sb,children:[St("span",{"aria-hidden":"true",className:Dc}),St(aa,{text:n,widestTexts:[o]})]})},JC=(e,t,r)=>e.phase==="streaming"?St(ZC,{labels:t,loadedCount:e.loadedCount,totalCount:e.totalCount}):e.phase==="retrying"?Wt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"retrying",className:ib,children:[St(rb,{"aria-hidden":"true",className:"size-3 motion-safe:animate-spin"}),t.streamRetrying(e.loadedCount)]}):e.phase==="failed"?Wt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"failed",className:lb,children:[t.streamFailed,St("button",{type:"button","data-testid":"daily-report-ids-stream-retry",onClick:r,className:cb,children:t.streamRetry})]}):e.isRevalidating?Wt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"revalidating",className:db,children:[St(rb,{"aria-hidden":"true",className:"size-3 motion-safe:animate-spin"}),t.streamRevalidating]}):null,eI=UC(({labels:e,widest:t})=>Wt("span",{"aria-hidden":"true",className:jC,children:[Wt("span",{className:ob,children:[St("span",{className:Dc}),e.streamProgressCount(t)]}),Wt("span",{className:ob,children:[St("span",{className:Dc}),e.streamProgressRatio(t,t,100)]}),Wt("span",{className:YC,children:[St("span",{className:nb}),e.streamRetrying(t)]}),Wt("span",{className:qC,children:[e.streamFailed,St("span",{className:cb,children:e.streamRetry})]}),Wt("span",{className:XC,children:[St("span",{className:nb}),e.streamRevalidating]})]})),Tc=(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:""}:Ec,tI=(e,t)=>Tc({phase:e.phase,hasItems:!0,retryingCount:e.phase==="retrying"?e.loadedCount:null},t),sa=()=>{let e=xf(),{labels:t}=Y(),r=VC(wc),n=zC(null),a=JC(e,t,()=>{Tr([n.current]),Ps()}),s=a===null;return WC(()=>{let i=n.current;!s||i===null||!i.contains(et(i))||Tr(Ks(i.ownerDocument))},[s]),Wt(rI,{children:[Wt("span",{className:$C,children:[St(eI,{labels:t,widest:ub(e.loadedCount,e.totalCount)}),St("span",{ref:n,tabIndex:-1,"data-daily-report-stream-status":"",className:GC,children:a})]}),r?St(ki,{announcement:tI(e,t),testId:KC}):null]})};import{Panel as kb,PanelGroup as I_,PanelResizeHandle as __}from"@aiquants/resize-panels";import{useCallback as mt,useEffect as zi,useLayoutEffect as Ki,useMemo as Mc,useRef as qr,useState as ji}from"react";import{useSyncExternalStore as nI}from"react";var pb="(max-width: 639px)",oI=()=>{},aI=e=>{if(typeof window>"u"||typeof window.matchMedia!="function")return oI;let t=window.matchMedia(pb);return t.addEventListener("change",e),()=>t.removeEventListener("change",e)},sI=()=>typeof window<"u"&&typeof window.matchMedia=="function"?window.matchMedia(pb).matches:!1,iI=()=>!1,mb=()=>nI(aI,sI,iI);import{SwipeCloseGuardContext as FI,useSwipeGuardState as HI,useSwipeToDismissOverlay as BI,useTapClick as UI,useTransitionDisplay as VI}from"@aiquants/swipe-overlay";import{useCallback as Bi,useEffect as ma,useId as vb,useLayoutEffect as Lc,useRef as qt,useState as Ui}from"react";var lI={kind:"hold"},dI=new Set(["grid","listbox","menu","menubar","radiogroup","tablist","toolbar","tree","treegrid"]),cI=(e,t)=>{let r=e.getAttribute("role");return r!==null&&dI.has(r)&&e!==t&&e.contains(t)},fb=e=>e.key==="Escape"&&!e.defaultPrevented&&!hn(e),yb=(e,t)=>{if(e.key!=="Tab"||e.altKey||e.ctrlKey||e.metaKey||e.defaultPrevented||hn(e))return null;let r=e.target;if(!(Pe(r)&&t.contains(r)))return null;let n=as(t);if(n.length===0)return lI;let{before:o,within:a,after:s}=ko(t,r);return e.shiftKey?o.some(i=>!cI(i,r))?null:{kind:"wrap",element:n[n.length-1]}:a.length>0||s.length>0?null:{kind:"wrap",element:n[0]}};import{useMemo as uI}from"react";var ia=(e,t)=>{let{id:r,indexHint:n}=t;return uI(()=>{if(r===null)return null;let o=Fe(e,r,n);return o===-1?null:nr(e,o)},[e,r,n])};import pI from"lucide-react/dist/esm/icons/check.js";import mI from"lucide-react/dist/esm/icons/pencil.js";import fI from"lucide-react/dist/esm/icons/trash-2.js";import{memo as yI,useCallback as Dn,useDeferredValue as RI,useEffect as xc,useId as bb,useLayoutEffect as Cc,useMemo as pa,useRef as ua,useState as Sb,useSyncExternalStore as hI}from"react";import*as xr from"@radix-ui/react-tabs";import*as At from"react";import{jsx as uo}from"react/jsx-runtime";var Rb=At.createContext(null),hb=e=>{let t=At.useContext(Rb);if(t===null)throw new Error(`[daily-report] ${e} must be rendered inside Tabs`);return t},Ac=(e,t)=>`${e}-trigger-${t}`,vc=(e,t)=>`${e}-panel-${t}`,la=At.forwardRef(({value:e,children:t,...r},n)=>{let o=At.useId(),a=At.useMemo(()=>({baseId:o,value:e}),[o,e]);return uo(xr.Root,{ref:n,value:e,...r,children:uo(Rb,{value:a,children:t})})});la.displayName=xr.Root.displayName;var da=At.forwardRef(({className:e,...t},r)=>uo(xr.List,{ref:r,className:I("inline-flex",e),...t}));da.displayName=xr.List.displayName;var ca=At.forwardRef(({className:e,value:t,...r},n)=>{let{baseId:o}=hb("TabsTrigger");return uo(xr.Trigger,{ref:n,value:t,...r,id:Ac(o,t),"aria-controls":vc(o,t),className:I(`${fu} ${le}`,e)})});ca.displayName=xr.Trigger.displayName;var po=At.forwardRef(({className:e,value:t,tabStop:r,children:n,...o},a)=>{let{baseId:s,value:i}=hb("TabsContent"),l=t===i,d="mt-2 data-[state=inactive]:hidden";return r?uo("div",{ref:a,role:"tabpanel",id:vc(s,t),"aria-labelledby":Ac(s,t),"data-state":l?"active":"inactive",hidden:!l,tabIndex:0,...o,className:I(`${d} ${le}`,e),children:l?n:null}):uo("div",{ref:a,role:"tabpanel",id:vc(s,t),"aria-labelledby":Ac(s,t),"data-state":l?"active":"inactive",hidden:!l,...o,className:I(d,e),children:l?n:null})});po.displayName="TabsContent";import{jsx as Z,jsxs as Cr}from"react/jsx-runtime";var wb=I(Zr,"w-24 shrink-0"),gb={field:"flex items-baseline",label:wb,value:"flex-1"},bI={field:"flex min-w-0 flex-1 items-baseline",label:wb,value:"wrap-break-word min-w-0 flex-1"},SI={field:"flex flex-col gap-1",label:Zr,value:""},gI={field:"flex min-w-0 items-center gap-1",label:I(Zr,"shrink-0 whitespace-nowrap"),value:""},EI=`flex min-h-4 flex-wrap items-center gap-x-2 gap-y-1 ${de} text-xs`,Eb=I("flex-1 touch-pan-y overflow-y-auto overflow-x-hidden pt-2 text-sm",nl,Zc,Qc),Db={desktop:I(Eb,Iu),overlay:Eb},DI=I("flex flex-col gap-1",ol),wI=I(pu,"grid grid-cols-2 gap-1"),TI=I("m-0 font-normal text-slate-900 text-sm dark:text-slate-100",le),Ic=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)})}},AI=(e,t,r,n,o,a)=>{let s=ua(null),i=e?.reportHubId;Cc(()=>{s.current=null},[i]),xc(()=>{n||(s.current=null)},[n]);let l=Dn(async(d,c)=>{c||(s.current=d.reportHubId);try{await a(d.reportHubId,!d.isRead,d.date)}catch{}},[a]);return xc(()=>{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}},_c="article",vI=["article","relations"],xI=e=>{if(e==="article"||e==="relations")return e;throw new Error(`[daily-report] unknown side-pane tab: ${e}`)},CI=I("hidden h-full min-h-0 w-full min-w-0 flex-1 flex-col gap-4 sm:flex",Lt),II=I("flex h-full flex-1 items-center justify-center text-center",An),_I=9,LI=.875,NI=16,Tb=4*Math.ceil((2*ur+2*wa+2*tu+_I*LI*NI)/4),Ab=({dailyReportItems:e,selectionStore:t,autoMarkRead:r,userId:n,onReportDeleted:o})=>{let{labels:a}=Y(),s=bb(),i=bb(),[l,d]=Sb(_c),{selected:c,settled:u}=hI(t.subscribe,t.getSnapshot,t.getSnapshot),m=ia(e,c),p=ia(e,RI(u)),f=m===null?null:m.reportHubId,g=(p===null?null:p.reportHubId)===f,[R]=Sb(()=>Ic(g));return Cc(()=>{R.set(g)},[R,g]),Z("aside",{"data-testid":"daily-report-side-pane","data-report-id":m?.reportHubId,"data-displayed-report-id":p?.reportHubId,"aria-busy":g?void 0:!0,className:CI,children:p===null?Z("div",{className:II,children:Z("p",{className:fr,children:a.selectPrompt})}):Z(Hi,{item:p,placement:"desktop",headingId:s,authorId:i,activeTab:l,onActiveTabChange:d,autoMarkRead:r,isActive:!0,dwell:R,userId:n,onReportDeleted:o},p.reportHubId)})},OI=({reportHubId:e,children:t})=>{let r=vy(e);return Z(Xn,{reportHubId:e,entry:r,children:t})},Hi=yI(({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:m,headingLevel:p}=Y(),{report:f,error:y,isLoading:g}=Ol(e.reportHubId,e.businessDate),R=Vr(),E=Vs(e.reportHubId),S=E==="editing"||E==="automatic",h=ua(null),b=ua(null),D=ua(!1),_=ua(!1),T=un(f,d),P=f?.isDraft===!0;xc(()=>{f!==null&&(T&&P&&E==="display"?R.open(e.reportHubId,Jn(f),!0):!P&&E==="automatic"&&R.discard(e.reportHubId))},[f,T,P,E,R,e.reportHubId]);let M=pa(()=>f===null?void 0:()=>{D.current=!0,R.open(e.reportHubId,Jn(f),!1)},[R,e.reportHubId,f]),H=Dn(()=>{_.current=!0,R.dismiss(e.reportHubId)},[R,e.reportHubId]),A=Dn(()=>{_.current=!0,R.discard(e.reportHubId)},[R,e.reportHubId]),C=Dn(Q=>{Q===null||!D.current||(D.current=!1,Q.focus())},[]),v=Dn(Q=>{Q===null||!_.current||(_.current=!1,Q.focus())},[]),w=Dn(()=>{b.current?.focus({preventScroll:!0})},[]);Cc(()=>{S||!_.current||(_.current=!1,b.current?.focus())},[S]);let O=Dn(()=>{setTimeout(()=>{let Q=h.current;Q!==null&&Q.scrollTo({top:Q.scrollHeight,behavior:Zm(Q)})},100)},[]),B=Le(e.businessDate),V=pa(()=>f===null?null:Ke(f.employeeName),[f]),X=g||!f,G=f===null?void 0:br(f.sourceType,m);return Cr(OI,{reportHubId:e.reportHubId,children:[Cr("div",{className:DI,children:[Z("dl",{className:"m-0",children:Z(ht,{label:u.businessDate,classNames:SI,children:Z(Tt,{ref:b,level:p,id:r,tabIndex:-1,className:TI,children:B})})}),Cr("div",{className:EI,children:[Z("dl",{className:"m-0 min-w-0",children:Z(ht,{label:u.author,classNames:gI,valueId:n,children:X||V===null?Z("div",{"data-skeleton":!0,className:"h-3 w-24 rounded bg-slate-200 motion-safe:animate-pulse dark:bg-slate-700"}):Z(ge,{fieldKey:Te.field("employeeName"),raw:f?.employeeName,display:V})})}),G?Z(ao,{config:G}):null,f===null?null:Z(li,{isEditing:S,descriptionId:null})]})]}),Cr(la,{value:o,onValueChange:Q=>a(xI(Q)),className:"flex min-h-0 flex-1 flex-col",children:[Z("div",{className:ol,children:Z(da,{"aria-label":u.reportTabList,className:wI,children:vI.map(Q=>Z(ca,{value:Q,children:Q==="article"?u.tabArticle:u.tabRelations},Q))})}),Z(po,{ref:h,value:"article",tabStop:!0,className:Db[t],children:S?f?Z(si,{report:f,onCancel:H,onPublishSuccess:A,titleInputRef:C}):Z("p",{className:An,children:u.loading}):Z(kI,{report:f,sourceConfig:G,isLoading:g,error:y,item:e,autoMarkRead:s,isActive:i,dwell:l,onCommentAdded:O,userId:d,onEdit:T?M:void 0,editButtonRef:v,onReportDeleted:c,onCommentSectionRemoved:w})}),Z(po,{value:"relations",tabStop:!0,className:Db[t],children:Z("p",{className:An,children:u.relationsEmpty})})]})]})});Hi.displayName="DailyReportSidePaneContent";var Fi=({className:e="w-32"})=>Z("div",{"data-skeleton":!0,className:`h-4 rounded bg-slate-200 motion-safe:animate-pulse dark:bg-slate-700 ${e}`}),MI=["w-full","w-11/12","w-4/5"],PI=I(ru,Ta),kI=({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:m,onCommentSectionRemoved:p})=>{let{toggleStar:f,toggleRead:y,deleteReport:g}=lt(),{labels:R,headingLevel:E}=Y(),S=Wr[E],{handleToggleRead:h}=AI(e,r,a,s,i,y),b=e!==null&&za(e.sourceType,t),D=pa(()=>e?.content?Bu(e.content):null,[e]),_=pa(()=>Ke(e?.subject),[e]),T=pa(()=>Ke(e?.customerName),[e]),P=async C=>{try{await f(C.reportHubId,!C.isStarred,C.date)}catch{}},M=async C=>{if(confirm(R.confirmDelete)){try{await g(C.reportHubId,C.date)}catch{return}m(C.reportHubId)}};if(n)return Z("p",{className:ho,children:R.reportLoadFailed(o.reportHubId)});let H=!e,A=un(e,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:[Z("dl",{className:"m-0 flex min-w-0 flex-1",children:Z(ht,{label:R.subject,classNames:bI,children:H?Z(Fi,{className:"w-3/4"}):Z("span",{className:"text-sm",children:Z(ge,{fieldKey:Te.field("subject"),raw:e?.subject,display:_})})})}),!H&&e&&Cr("div",{className:"flex h-5 shrink-0 items-center gap-2 pr-2",children:[Z("button",{type:"button",onClick:()=>P(e),className:st,title:e.isStarred?R.starRemove:R.starAdd,"aria-label":e.isStarred?R.starRemove:R.starAdd,"data-detail-star-button":e.reportHubId,children:Z(so,{filled:e.isStarred})}),Z("button",{type:"button",onClick:()=>h(e,!1),className:st,title:e.isRead?R.markUnread:R.markRead,"aria-label":e.isRead?R.markUnread:R.markRead,"data-detail-read-button":e.reportHubId,children:e.isRead?Z(pI,{className:qe.read}):Z(io,{})}),c&&Z("button",{ref:u,type:"button",onClick:c,"data-detail-edit-button":e.reportHubId,className:st,title:R.edit,"aria-label":R.edit,children:Z(mI,{className:qe.edit})}),A&&Z("button",{type:"button",onClick:()=>M(e),"data-detail-delete-button":e.reportHubId,className:st,title:R.deleteReport,"aria-label":R.deleteReport,children:Z(fI,{className:qe.delete})})]})]}),Z("dl",{className:"m-0",children:Z(ht,{label:R.customer,classNames:gb,children:H?Z(Fi,{className:"w-1/2"}):Z("span",{className:"text-sm",children:Z(ge,{fieldKey:Te.field("customerName"),raw:e?.customerName,display:T})})})}),Cr("div",{className:"flex flex-col gap-2",children:[Z(Tt,{level:S,className:mr,children:R.content}),Z("div",{className:PI,children:H?MI.map(C=>Z("div",{className:nu,children:Z(Fi,{className:C})},C)):D!==null&&D.text.length>0?Z("div",{className:"whitespace-pre-wrap",children:Z(ge,{fieldKey:Te.field("content"),raw:e?.content,display:D})}):Z("p",{className:de,children:R.contentEmpty})})]}),Z("dl",{className:"m-0",children:Z(ht,{label:R.visitTime,classNames:gb,children:H?Z(Fi,{className:"w-1/3"}):Cr("span",{className:"text-sm",children:[Hr(e?.visitTimeFrom)," ",e?.visitTimeFrom&&e?.visitTimeTo?"-":""," ",Hr(e?.visitTimeTo)]})})}),e&&Z(ei,{attachments:e.attachments}),e&&Z(ra,{report:e,userId:d,canComment:b,onCommentAdded:l,onSectionRemoved:p,formPlacement:"in-section",sectionClassName:"border-slate-100 border-t border-solid pt-4 dark:border-slate-800"})]})};import{jsx as Yr,jsxs as xb}from"react/jsx-runtime";var WI="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]",zI={right:"var(--aqdr-overlay-right, 0px)"},KI="absolute inset-0 touch-manipulation bg-slate-900/50 motion-safe:transition-opacity motion-safe:duration-200",$I=I("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",Du),jI=I("inline-flex h-9 touch-manipulation items-center rounded-full border border-slate-300 border-solid px-[15px] font-medium text-slate-700 text-sm shadow-sm hover:bg-slate-100 dark:border-slate-600 dark:text-slate-200 dark:hover:bg-slate-800",le),GI="flex shrink-0 justify-center empty:hidden",YI=50,Cb=({isMobileLayout:e,selection:t,dailyReportItems:r,onSelectItem:n,rootRef:o})=>{let a=t.id,[s,i]=Ui(!1),[l,d]=Ui(!1),c=qt(null),u=qt(null),m=qt(null),p=qt(e),f=qt(!0),y=ia(r,t),g=Bi(()=>{let h=o.current;if(h===null)return;let b=h.ownerDocument.body;m.current={body:b,overflow:b.style.overflow},b.style.overflow="hidden"},[o]),R=Bi(()=>{let h=m.current;h!==null&&(h.body.style.overflow=h.overflow,m.current=null)},[]);ma(()=>{if(f.current){f.current=!1,p.current=e;return}let h=!p.current;p.current=e,h&&e&&a!==null?i(!0):!e&&s&&(u.current=a,i(!1),R())},[e,a,s,R]);let E=e&&s&&y!==null;ma(()=>{if(E)d(!0);else{let h=setTimeout(()=>d(!1),300);return()=>clearTimeout(h)}},[E]),ma(()=>{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]),ma(()=>{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 S=Bi(()=>{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:E,handleOverlayClose:S,lastClosedItemIdRef:u,selectedItem:y}},Ib=({isOpen:e,selectedItem:t,onClose:r,autoMarkRead:n=!1,userId:o,onReportDeleted:a})=>{let{labels:s}=Y(),{registerNoticeHost:i}=js(),l=qt(null),d=qt(null),c=vb(),u=vb(),[m,p]=Ui(_c),f=qt(!1),y=qt(e),g=qt(null),[R]=Ui(()=>Ic(e)),{isBlocked:E,requestBlock:S,reset:h}=HI(),b=VI(e,t),{overlayRef:D,overlayStyle:_,attemptClose:T,isSwiping:P}=BI({isOpen:e,onClose:r,isCloseBlocked:Bi(()=>E,[E]),skipWhenTextSelected:!0}),M=qt(T);Lc(()=>{M.current=T,y.current=e,R.set(e)},[T,e,R]),Lc(()=>{let w=l.current;if(w===null)return;if(e){if(f.current)return;w.showModal(),f.current=!0,w.ownerDocument.getElementById(c)?.focus();return}if(!f.current)return;f.current=!1;let O=et(w);O!==null&&w.contains(O)&&Fo(O)&&O.blur(),w.close()},[e,c]),Lc(()=>{let w=d.current;if(!(!e||w===null))return i(w)},[e,i]),ma(()=>{e||h()},[e,h]);let H=UI(()=>T()),A=w=>{let O=eo(w);if(O.key==="Escape"){g.current=w.timeStamp;return}let B=yb(O,w.currentTarget);B!==null&&(w.preventDefault(),B.kind==="wrap"&&B.element.focus())},C=w=>{w.preventDefault();let O=g.current;g.current=null,!(O!==null&&w.timeStamp-O<=YI)&&M.current()},v=w=>{let O=w.currentTarget;O.open||!y.current||(f.current=!1,!M.current()&&(O.showModal(),f.current=!0))};return b?xb("dialog",{ref:l,"data-daily-report-mobile-overlay":"true","aria-labelledby":`${c} ${u}`,tabIndex:-1,className:I(WI,e&&!P?"pointer-events-auto":"pointer-events-none"),style:zI,inert:!e,onKeyDown:A,onCancel:C,onClose:v,children:[Yr("div",{"aria-hidden":"true","data-daily-report-overlay-backdrop":"",className:I(KI,e?"opacity-100":"opacity-0"),...H}),Yr("div",{ref:D,"data-daily-report-overlay-panel":"",className:I($I,e?"pointer-events-auto":"pointer-events-none"),style:_,children:xb("div",{className:"flex h-full w-full flex-col gap-4 p-4",children:[Yr(FI.Provider,{value:{isBlocked:E,requestBlock:S},children:Yr("div",{"data-testid":"daily-report-side-pane","data-report-id":b.reportHubId,"data-displayed-report-id":b.reportHubId,className:"flex min-h-0 flex-1 flex-col gap-4",children:Yr(Hi,{item:b,placement:"overlay",headingId:c,authorId:u,activeTab:m,onActiveTabChange:p,autoMarkRead:n,isActive:e,dwell:R,userId:o,onReportDeleted:a},b.reportHubId)})}),Yr("div",{ref:d,"data-daily-report-notice-slot":"","data-overlay-interactive":"true",className:GI}),Yr("div",{className:"flex justify-start",children:Yr("button",{type:"button","data-overlay-interactive":"true",className:jI,onClick:()=>T(),children:s.close})})]})})]}):null};import l_ from"lucide-react/dist/esm/icons/check.js";import{memo as Nb,useContext as Ob,useEffect as d_,useMemo as Wi}from"react";import{createContext as qI,createElement as XI,useLayoutEffect as QI,useMemo as ZI,useRef as JI,useState as e_}from"react";var t_=6.75,r_=4,n_=1e-6,o_=e=>4*Math.ceil((2*ur+2*wa+r_+t_*e-n_)/4),Vi=qI(null),a_="data-daily-report-root-font-size-probe",s_={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},i_=e=>{let t=je(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])},_b=()=>{let e=JI(null),[t,r]=e_(null);QI(()=>{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=o_(i_(o));l!==a&&(a=l,r(l))};s();let i=new ResizeObserver(s);return i.observe(o),()=>i.disconnect()},[]);let n=ZI(()=>XI("div",{ref:e,"aria-hidden":!0,[a_]:"",style:s_}),[]);return{rowSlotHeight:t,remProbe:n}};import{jsx as ce,jsxs as fo}from"react/jsx-runtime";var c_=I(kr,Ea,Da,ga),u_=I("relative flex h-full w-full select-none flex-wrap content-start items-center gap-2 overflow-hidden",Lt,Aa,eu),p_="min-w-24",m_="basis-full space-y-2 text-slate-700 text-sm leading-5 dark:text-slate-200",f_={touchAction:"manipulation"},y_=I("flex grow basis-0 cursor-pointer items-center gap-2 text-left outline-none after:absolute after:inset-0 after:rounded-2xl",p_),R_=I("relative z-10",st),h_=I(it,"shrink-0 whitespace-nowrap bg-slate-100 font-medium text-slate-900 text-xs dark:bg-slate-800 dark:text-slate-100"),b_=I(it,"min-w-0 max-w-full bg-slate-100 font-semibold text-xs dark:bg-slate-800 dark:text-slate-200"),S_=I(au,"ml-auto"),g_=I("flex h-full",Lt),E_="flex h-full w-full flex-col justify-between motion-safe:animate-pulse",mo="h-4 rounded bg-slate-200 dark:bg-slate-700",D_=ce("div",{"data-skeleton":!0,..._t,className:g_,children:fo("div",{className:E_,children:[fo("div",{className:"flex flex-wrap items-center gap-2",children:[ce("div",{className:I(mo,"w-24")}),ce("div",{className:I(mo,"w-24")}),ce("div",{className:I(mo,"w-24")})]}),fo("div",{className:"space-y-2",children:[ce("div",{className:I(mo,"w-full")}),ce("div",{className:I(mo,"w-11/12")}),ce("div",{className:I(mo,"w-5/6")})]})]})}),w_=()=>D_,T_="flex h-full items-center justify-center rounded-2xl border border-red-200 border-solid bg-red-50 p-[15px] text-red-800 text-sm dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-300",A_=`flex h-full items-center justify-center rounded-2xl border border-slate-200 border-solid bg-slate-50 p-[15px] ${de} text-sm dark:border-slate-700 dark:bg-slate-900/40`,v_=e=>{e.target===e.currentTarget&&e.preventDefault()},Nc=({reportHubId:e,rowId:t,name:r,children:n})=>{let o=Ob(Vi);if(o===null)throw new Error("[daily-report] a List row frame is rendered outside the List view (no measured row slot)");let a=Wi(()=>({height:o}),[o]);return ce(gi,{reportHubId:e,rowId:t,name:r,className:c_,style:a,onMouseDown:v_,children:n})},Mb=e=>Hu(e??null,Hp),x_=({report:e,sourceConfig:t,marks:r,marksStore:n,labels:o})=>wi({state:()=>o.rowState({isRead:e.isRead,isStarred:e.isStarred}),attachmentCount:e.attachments.length,sourceConfig:t,preview:()=>{let a=Mb(e.content);return a.length>0?a.map(s=>s.text).join(" "):o.contentEmptyPreview},marks:r,marksStore:n,labels:o}),C_=(e,t)=>`${Le(e.businessDate)} ${Ke(t.employeeName).text}`,Lb=({label:e,dataAttributes:t,onClick:r,children:n})=>{let o=Zn();return ce("button",{type:"button",title:e,"aria-label":e,...o,...t,onClick:r,className:R_,children:n})},Pb=Nb(({item:e,report:t,rowId:r,sourceConfig:n,describedBy:o,onSelect:a})=>{let{labels:s}=Y(),{toggleStar:i,toggleRead:l}=lt(),d=Ie(r,"name"),c=Wi(()=>Mb(t.content),[t.content]),u=Wi(()=>Ke(t.employeeName),[t.employeeName]),m=Le(e.businessDate),p=E=>{E.currentTarget.focus({preventScroll:!0});let S=xm(E.currentTarget);S!==null&&a(e.reportHubId,S)},f=async()=>{let E=!t.isStarred;try{await i(t.reportHubId,E,t.date)}catch{}},y=async()=>{let E=!t.isRead;try{await l(t.reportHubId,E,t.date)}catch{}},g=t.isStarred?s.starRemove:s.starAdd,R=t.isRead?s.markUnread:s.markRead;return fo("div",{"data-daily-report-card":!0,..._t,"aria-labelledby":d,style:f_,className:u_,children:[ce(oo,{id:Ie(r,"position"),whileTotalUnknownOnly:!1}),ce("span",{id:Ie(r,"state"),className:"sr-only",children:s.rowState({isRead:t.isRead,isStarred:t.isStarred})}),fo("button",{id:d,type:"button",tabIndex:-1,[Dm]:e.reportHubId,...ms,"aria-describedby":o,onClick:p,className:y_,children:[ce("span",{className:h_,children:m})," ",ce("span",{className:b_,children:ce("span",{className:"truncate font-medium text-slate-900 dark:text-slate-100",children:ce(ge,{fieldKey:Te.field("employeeName"),raw:t.employeeName,display:u})})})]}),fo("div",{className:S_,children:[ce(bo,{id:Ie(r,"attachments"),count:t.attachments.length,label:s.attachments}),n?ce(ao,{id:Ie(r,"source"),config:n}):null,ce(Lb,{label:g,dataAttributes:{"data-list-star-button":e.reportHubId},onClick:f,children:ce(so,{filled:t.isStarred})}),ce(Lb,{label:R,dataAttributes:{"data-list-read-button":e.reportHubId},onClick:y,children:t.isRead?ce(l_,{className:qe.read}):ce(io,{})})]}),ce("div",{id:Ie(r,"preview"),className:m_,children:c.length>0?c.map((E,S)=>ce("p",{className:"wrap-break-word line-clamp-1",children:ce(ge,{fieldKey:Te.field("content"),raw:t.content,display:E})},S)):ce("p",{children:s.contentEmptyPreview})}),ce(KR,{id:Ie(r,"match")})]})});Pb.displayName="ListReportCard";var Oc=Nb(({item:e,onSelect:t})=>{let{labels:r,sourceTypeConfigs:n}=Y(),{removeStaleItem:o}=lt(),a=rn(),s=Ob(pt),i=Wi(()=>Ai(a,s,e.reportHubId,e.businessDate),[a,s,e.reportHubId,e.businessDate]),{bodyReady:l,rendered:d}=bs(e.reportHubId,i,"fixed"),{report:c,error:u}=d.detail,m=d.marksStore===s?d.marks:null,{report:p,error:f,isLoading:y,isRefetching:g}=i.read().detail,R=bi(e.reportHubId),E=p===null&&f===null&&!y&&!g;d_(()=>{E&&e.reportHubId>0&&o(e.reportHubId)},[E,e.reportHubId,o]);let S=Le(e.businessDate),h=Ie(R,"state"),b=(P,M,H)=>ce(Nc,{reportHubId:e.reportHubId,rowId:R,name:{kind:"label",label:S,isBusy:M,describedBy:H},children:P});if(!l&&(u!==null||c===null))return b(Si,!0,no);if(u!==null)return b(ce("div",{..._t,className:T_,children:ce("p",{id:h,children:r.reportSummaryLoadFailed(e.reportHubId)})}),!1,[h]);if(c===null&&(y||p!==null||f!==null))return b(ce(w_,{}),!0,no);if(!c)return b(ce("div",{..._t,className:A_,children:ce("p",{id:h,children:r.reportNotFound})}),!1,[h]);let D=br(c.sourceType,n),_=x_({report:c,sourceConfig:D,marks:m,marksStore:s,labels:r}),T=oa(R,_);return l?ce(Nc,{reportHubId:e.reportHubId,rowId:R,name:{kind:"parts",describedBy:T},children:ce(Xn,{reportHubId:e.reportHubId,entry:m,children:ce(Pb,{item:e,report:c,rowId:R,sourceConfig:D,describedBy:[Ie(R,"position"),...T].join(" "),onSelect:t})})}):ce(Nc,{reportHubId:e.reportHubId,rowId:R,name:{kind:"parts",describedBy:T},children:ce(Ti,{rowId:R,name:C_(e,c),description:_})})});Oc.displayName="ListReportItem";import{Fragment as j_,jsx as ft,jsxs as $i}from"react/jsx-runtime";var Hb={pointerDragInputs:Xa,inertiaOptions:Wn(!1),wheelSpeedMultiplier:Ka,enableKeyboardNavigation:!1,resetOnGetItemHeightChange:!0},L_={...Hb,inertiaOptions:Wn(!0)},N_=Object.freeze({value:360,unit:"pixels"}),O_=Object.freeze({value:160,unit:"pixels"}),M_=Object.freeze({value:Tb,unit:"pixels"}),P_=Object.freeze({value:520,unit:"pixels"}),k_=Object.freeze({visible:!0,thickness:6,length:32,barThickness:2,barLength:16}),F_=I("cursor-col-resize rounded hover:bg-slate-200/60 focus:ring-0 dark:hover:bg-slate-700/60",le),H_=I("relative w-full",Na,La,Oa),B_=I(Nt,"relative isolate overflow-hidden"),Fb="daily-report-list",U_=()=>!1,V_=()=>{throw new Error("[daily-report] a List activation arrived before the view committed")},W_=e=>{let[t,r]=ji(!1);return Ki(()=>{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<Fp)},a=new(je(n)).ResizeObserver(o);return a.observe(n),()=>a.disconnect()},[e]),t},Pc=e=>{let t=qr(null),[r,n]=ji(null),o=ss(t),a=W_(t),{rowSlotHeight:s,remProbe:i}=_b(),l=zn(r),d=mt(c=>(t.current=c,n(c),()=>{t.current=null,n(null)}),[]);return $i("div",{ref:d,className:Ca,"data-testid":"daily-report-root",children:[i,o===null||s===null?null:ft(z_,{...e,rootRef:t,viewportHeight:o,rowSlotHeight:s,isContainerNarrow:a,reducedMotion:l})]})},z_=({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[m]=ji(()=>s?.current??0),p=qr(null),{labels:f}=Y(),y=ns(),[g]=ji(Ss),E=mb()||c,S=qr(null),h=e.length,b=t===void 0?h:t,D=qr(null),_=mt(($,ne,_e)=>o($,_e),[o]),T=mt($=>o($,"settled"),[o]),P=mt($=>{let ne=ke(e,$);return ne===void 0?ja:ne},[e]),M=qr(null),H=Mi({itemCount:h,getItem:P}),A=mt($=>{let ne=P($.visibleStartIndex);ne.reportHubId>0&&(g.setLabel(Le(ne.businessDate)),M.current=ne.reportHubId),H($)},[P,g,H]),C=mt(()=>M.current,[]),v=Mc(()=>({kind:"uniform",rowHeight:d}),[d]),w=qr(e);Ki(()=>{w.current=e},[e]);let O=qr(V_),B=mt($=>O.current($),[]),{containerProps:V,handleRangeChange:X,handleScrollAdjust:G,attachVirtualScroll:Q,handleRef:q,scroller:fe,attachScrollContainer:De,contentProps:L,keyboardHelp:U,selection:K,selectionStore:re,activateRow:he,focusViewRow:F,focusAfterRemoval:ee,rowPass:te,rowScope:Ee}=Li({items:e,selectedId:n,onSelect:_,onActivate:B,containerRef:p,rootRef:i,testId:Fb,itemsRef:w,rowSetSize:b,rowSizing:v,arrowAlign:"nearest",isViewRevealPending:U_,onRangeChange:A});Es({items:e,scroller:fe,readTopReportId:C});let{isMobileDetailOpen:we,setIsMobileDetailOpen:ie,isOverlayMounted:vt,shouldShowOverlay:Ze,handleOverlayClose:xt,lastClosedItemIdRef:nt,selectedItem:ct}=Cb({isMobileLayout:E,selection:K,dailyReportItems:e,onSelectItem:T,rootRef:i});zi(()=>{let $=p.current,ne=()=>{g.setWheelScrollActive(!0),S.current&&clearTimeout(S.current),S.current=window.setTimeout(()=>{g.setWheelScrollActive(!1),S.current=null},Ga)};return $?.addEventListener("wheel",ne,{passive:!0}),()=>{$?.removeEventListener("wheel",ne),S.current&&clearTimeout(S.current)}},[g]),zi(()=>{!h&&n!==null&&T(null)},[h,n,T]),zi(()=>{if(we||nt.current===null)return;let $=nt.current;nt.current=null,F($,"overlay")},[we,nt,F]),zi(()=>{let $=ke(e,0);$!==void 0&&g.setLabel(Le($.businessDate))},[e,g]);let ot=mt($=>{T($),E&&ie(!0)},[E,T,ie]);Ki(()=>{O.current=ot},[ot]);let Rt=mt(($,ne)=>{$<=0||(he($,ne),ot($))},[he,ot]),zt=mt(()=>d,[d]),Kt=qr(d);Ki(()=>{let $=Kt.current;Kt.current=d;let ne=q.current;if($===d||ne===null)return;let _e=ne.getScrollPosition();_e>0&&fe.by(_e*d/$-_e)},[q,d,fe]);let gt=mt($=>cs(e,$),[e]),x=mt(($,ne)=>ft(cn.Provider,{value:ne,children:ft(zo.Provider,{value:$.reportHubId,children:ft(Oc,{item:$,onSelect:Rt})})},$.reportHubId),[Rt]),N=mt($=>{let ne=De($),_e=te.attach(je($),null);return()=>{_e(),ne()}},[De,te]),W=mt($=>{s&&(s.current=$);let ne=p.current;ne&&(ne.toggleAttribute(Mr,!0),D.current&&clearTimeout(D.current),D.current=setTimeout(()=>{ne.toggleAttribute(Mr,!1),D.current=null},150))},[s]),j=mt($=>ft(gs,{...$,store:g}),[g]),oe=Mc(()=>$i("div",{ref:N,className:B_,...fs,...V,children:[U,ft(dn.Provider,{value:b,children:ft(Vi.Provider,{value:d,children:ft(Ni,{ref:Q,rowScope:Ee,items:e,itemCount:h,getItem:P,getItemKey:gt,getItemHeight:zt,viewportSize:l,initialScrollOffset:m,overscanCount:Ya,scrollBarOptions:{...qa,renderThumbOverlay:j},behaviorOptions:u?L_:Hb,onRangeChange:X,onScrollAdjust:G,onScroll:W,testId:Fb,className:H_,locale:y.locale,labels:y.labels,contentProps:L,children:x})})})]}),[N,Q,Ee,e,V,b,h,P,gt,zt,l,d,u,m,j,X,G,W,U,L,y.locale,y.labels,x]),ue=Mc(()=>$i(I_,{direction:"horizontal",className:"min-h-0 flex-1","data-testid":"daily-report-panel-group",children:[ft(kb,{id:"daily-report-list-panel",defaultSize:N_,minSize:O_,maxSize:P_,contentOverflow:"hidden",className:K_,children:oe}),ft(__,{id:"daily-report-list-handle",thickness:10,indicator:k_,className:F_,"aria-label":f.resizeHandle}),ft(kb,{id:"daily-report-detail-panel",minSize:M_,contentOverflow:"hidden",className:$_,children:ft(Ab,{dailyReportItems:e,selectionStore:re,autoMarkRead:r,userId:a,onReportDeleted:ee})})]}),[oe,f.resizeHandle,e,re,r,a,ee]);return $i(j_,{children:[ft("div",{className:Ia,children:E?ft("div",{className:Nt,children:oe}):ue}),vt&&ft(Ib,{isOpen:Ze,selectedItem:ct,onClose:xt,autoMarkRead:E&&r,userId:a,onReportDeleted:ee})]})},K_=I("flex min-h-0",Xc),$_=I("flex min-h-0 flex-1",kr);import{useCallback as LN,useEffect as CS,useLayoutEffect as NN,useRef as _S,useState as ON}from"react";import nN from"lucide-react/dist/esm/icons/plus.js";import oN from"lucide-react/dist/esm/icons/refresh-cw.js";import aN from"lucide-react/dist/esm/icons/rotate-cw.js";import{useEffect as jc,useId as TS,useLayoutEffect as AS,useMemo as el,useRef as Ro,useState as wn}from"react";import{useSearchParams as sN}from"react-router";import{useEffect as G_,useRef as Bb,useState as Y_}from"react";var Ub=(e,t,r=250)=>{let n=zn(t),[o,a]=Y_(e),s=Bb(e),i=Bb(!0);return G_(()=>{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=je(t),c=0,u=null,m=p=>{u===null&&(u=p);let f=Math.min(1,Math.max(0,(p-u)/r)),y=1-(1-f)**3,g=Math.round(l+(e-l)*y);s.current=g,a(g),f<1&&(c=d.requestAnimationFrame(m))};return c=d.requestAnimationFrame(m),()=>d.cancelAnimationFrame(c)},[e,r,n,t]),n?e:o};import cL from"lucide-react/dist/esm/icons/loader-circle.js";import uL from"lucide-react/dist/esm/icons/x.js";import{useEffect as Yb,useId as ya,useLayoutEffect as pL,useRef as qi,useState as qb}from"react";var fa=Object.freeze({maxValuesPerFacet:16,maxValueLength:200,maxTotalValueLength:300}),Hc=["author","sourceType","customer"],Bc=Object.freeze({authors:Object.freeze([]),sourceTypes:Object.freeze([]),customers:Object.freeze([])}),q_=/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,X_=e=>{let t=e.trim();return t.length===0?null:t.replace(q_,"\uFFFD")},Vb=e=>{let t=X_(e);return t===null?"filter-blank-value":t!==e?"filter-value-not-canonical":e.length>fa.maxValueLength?"filter-value-too-long":null},Q_=e=>{if(e.length>fa.maxValuesPerFacet)return"filter-too-many-values";let t=new Set;for(let r of e){let n=Vb(r);if(n!==null)return n;if(t.has(r))return"filter-duplicate-value";t.add(r)}return null},Z_=e=>{let t=0;for(let r of e.authors)t+=r.length;for(let r of e.customers)t+=r.length;return t},Gi=e=>{for(let t of[e.authors,e.sourceTypes,e.customers]){let r=Q_(t);if(r!==null)return r}return Z_(e)>fa.maxTotalValueLength?"filters-too-long":null},kc=e=>[...new Set(e)].sort((t,r)=>t<r?-1:1),Yi=e=>({authors:kc(e.authors),sourceTypes:kc(e.sourceTypes),customers:kc(e.customers)}),Xr=e=>e.trim().length===0,yo=e=>e.authors.length===0&&e.sourceTypes.length===0&&e.customers.length===0,Wb=(e,t)=>{let r=Yi(t);for(let n of r.authors)e.append(Ue.searchAuthor,n);for(let n of r.sourceTypes)e.append(Ue.searchSourceType,n);for(let n of r.customers)e.append(Ue.searchCustomer,n)},Fc=e=>{if(!Array.isArray(e))return null;let t=[],r=new Set;for(let n of e){if(typeof n!="string"||Vb(n)!==null||r.has(n))return null;r.add(n),t.push(n)}return t},zb=e=>{if(!hr(e))return null;let t=Fc(e.sourceTypes),r=Fc(e.authors),n=Fc(e.customers);return t===null||r===null||n===null?null:{sourceTypes:t,authors:r,customers:n}};import{Component as J_,Suspense as eL,useMemo as Kb,useState as tL}from"react";import{jsx as Ir,jsxs as Gb}from"react/jsx-runtime";var $b="flex min-h-6 items-center text-slate-600 text-xs dark:text-slate-300",rL=I(gu,fr),nL=[{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"}],oL=(e,t)=>t==="author"?e.author:t==="sourceType"?e.searchFilterSourceType:e.customer,aL=(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 Me(`config.search.renderFilterSelect (${e}) onChange values`,"distinct values of the options the control received",t);o.add(a)}return t},Uc=class extends J_{constructor(){super(...arguments);this.state={failed:!1}}static getDerivedStateFromError(){return{failed:!0}}render(){return this.state.failed?Ir("span",{className:$b,children:this.props.fallback}):this.props.children}},sL=(e,t,r,n)=>{let o=Kb(()=>new Set(t.map(s=>s.value)),[t]),a=JSON.stringify(n.filter(s=>!o.has(s)));return Kb(()=>{let s=JSON.parse(a);return s.length===0?t:[...t,...s.map(i=>r(e,i))]},[e,t,r,a])};function iL({renderFilterSelect:e,selectProps:t}){return e(t)}var lL=(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 dL({cell:e,labels:t,locale:r,renderFilterSelect:n,candidates:o,optionOf:a,selected:s,onSelect:i}){let l=sL(e.facet,o,a,s),d=oL(t,e.facet);return Gb("fieldset",{"data-testid":e.testId,className:Su,children:[Ir("legend",{"data-testid":`${e.testId}-caption`,className:rL,children:d}),Ir(Uc,{fallback:t.searchFilterUnavailable,children:Ir(eL,{fallback:Ir("span",{className:$b,children:t.searchFiltersLoading}),children:Ir(iL,{renderFilterSelect:n,selectProps:{facet:e.facet,label:d,options:l,value:s,onChange:c=>i(e,aL(e.facet,c,l)),locale:r}})})})]})}function jb({id:e,labelledBy:t,labels:r,locale:n,renderFilterSelect:o,facets:a,value:s,onChange:i,clearSignal:l}){let[d,c]=tL(null),u=lL(r,a,d!==null&&d.selection===s&&d.clearSignal===l),m=(f,y)=>{let g={...s,[f.key]:y};if(Gi(g)!==null){c({selection:s,clearSignal:l});return}c(null),i(g)},p=a.status==="ready"?a:null;return Gb("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:[p===null?null:Ir("div",{className:bu,children:nL.map(f=>Ir(dL,{cell:f,labels:r,locale:n,renderFilterSelect:o,candidates:p.options[f.key],optionOf:p.optionOf,selected:s[f.key],onSelect:m},f.facet))}),Ir("span",{"data-testid":"daily-report-search-filters-status","aria-live":"polite",className:I("flex min-h-6 items-center text-slate-600 text-xs leading-4 empty:min-h-0 dark:text-slate-300",p===null?null:"mt-2 empty:mt-0",fr),children:u})]})}import{Fragment as vL,jsx as yt,jsxs as Ra}from"react/jsx-runtime";var mL=I("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",pr,le),Xb="inline-grid h-6 place-content-center place-items-center rounded-full border border-solid px-[11px] font-semibold text-xs tabular-nums",fL="col-start-1 row-start-1",yL="invisible col-start-1 row-start-1 after:content-[attr(data-search-toggle-reserve)]",Xi=Object.freeze({field:I(Xb,"bg-white text-slate-800 dark:bg-slate-900 dark:text-slate-100",pr,le),filled:I(Xb,"border-blue-800 bg-blue-800 text-white dark:border-blue-300 dark:bg-blue-300 dark:text-slate-950 forced-colors:border-[Highlight] forced-colors:bg-[Highlight] forced-colors:text-[HighlightText]",le)}),RL=Object.freeze({union:I("mr-2 min-w-14",Xi.field),intersection:I("mr-2 min-w-14",Xi.filled)}),Qb=Object.freeze({closed:I("ml-2 min-w-26",Xi.field),open:I("ml-2 min-w-26",Xi.filled)}),hL=Hc.length*fa.maxValuesPerFacet,bL="relative min-w-0",SL="pointer-events-none absolute inset-y-0 right-0 grid grid-cols-[repeat(2,--spacing(6))] place-items-center",gL=I("pointer-events-auto col-start-2 row-start-1",st),EL="col-start-1 row-start-1 size-4 text-slate-500 motion-safe:animate-spin dark:text-slate-400",DL="sr-only",wL=I("col-[2/-1] row-start-2 pt-1 pl-[8px] text-xs leading-4",de,fr),TL=e=>e.authors.length+e.sourceTypes.length+e.customers.length,AL=(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):"",Zb=({label:e,reserved:t})=>Ra(vL,{children:[yt("span",{className:fL,children:e}),yt("span",{"aria-hidden":"true","data-search-toggle-reserve":t,className:yL})]});function Jb({labels:e,debounceMs:t,search:r,shownCount:n,onCommit:o,onCombineChange:a,onRelease:s,clearSignal:i,filters:l}){let[d,c]=qb(""),[u,m]=qb(!1),p=d.length>0||r.committed!==null&&!Xr(r.committed.text),f=ya(),y=ya(),g=qi(null),R=qi(null),E=qi(!1),S=qi(i),h=ya(),b=ya(),D=ya(),_=Qe(()=>({search:r,onCommit:o,onRelease:s}));pL(()=>{_.current={search:r,onCommit:o,onRelease:s}});let T=()=>{R.current!==null&&clearTimeout(R.current),R.current=null},P=(q,fe,De)=>{let L=_.current;Xr(q)?yo(De)?L.search.committed!==null&&L.onRelease():L.onCommit("",fe,De):L.onCommit(q,fe,De)},M=q=>{T();let fe=_.current;P(q,fe.search.combine,fe.search.filters)},H=q=>{t===null||E.current||(T(),R.current=setTimeout(()=>M(q),t))},A=()=>{T(),c(""),yo(r.filters)?s():(r.committed===null||!Xr(r.committed.text))&&o("",r.combine,r.filters),g.current?.focus()},C=q=>{c(q.target.value),H(q.target.value)},v=q=>{let fe=eo(q);if(q.key==="Enter"&&!hn(fe)){q.preventDefault(),M(d);return}fb(fe)&&p&&(q.preventDefault(),A())},w=()=>{T();let q=r.combine==="union"?"intersection":"union";Xr(d)&&yo(r.filters)?a(q):P(d,q,r.filters)},O=q=>{u||q.facets.load(),m(!u)},B=q=>{T(),P(d,r.combine,q)};Yb(()=>{S.current!==i&&(S.current=i,R.current!==null&&clearTimeout(R.current),R.current=null,c(""))},[i]),Yb(()=>()=>{R.current!==null&&clearTimeout(R.current)},[]);let V=r.combine==="intersection",X=AL(e,r,n),G=r.status==="failed"?r.failure:null,Q=l!==null&&u;return Ra("search",{"data-testid":"daily-report-search",className:Ru,children:[Ra("div",{className:hu,children:[yt("button",{type:"button","data-testid":"daily-report-search-combine","aria-describedby":h,title:V?e.searchCombineAndTitle:e.searchCombineOrTitle,onClick:w,className:RL[r.combine],children:yt(Zb,{label:V?e.searchCombineAnd:e.searchCombineOr,reserved:V?e.searchCombineOr:e.searchCombineAnd})}),Ra("div",{className:bL,children:[yt("input",{ref:g,type:"text","data-testid":"daily-report-search-input","aria-label":e.searchInputLabel,"aria-describedby":G===null?b:`${D} ${b}`,"aria-invalid":G==="invalid"?!0:void 0,title:e.searchSyntaxHelp,placeholder:e.searchPlaceholder,value:d,onChange:C,onKeyDown:v,onCompositionStart:()=>{E.current=!0,T()},onCompositionEnd:q=>{E.current=!1,H(q.currentTarget.value)},className:mL}),Ra("div",{className:SL,children:[r.status==="searching"?yt(cL,{"aria-hidden":"true","data-testid":"daily-report-search-spinner",className:EL}):null,p?yt("button",{type:"button","data-testid":"daily-report-search-clear","aria-label":e.searchClear,title:e.searchClear,onClick:A,className:gL,children:yt(uL,{"aria-hidden":"true",className:"size-4"})}):null]})]}),l===null?null:yt("button",{type:"button",id:f,"data-testid":"daily-report-search-filters-toggle","aria-expanded":u,"aria-controls":Q?y:void 0,onClick:()=>O(l),className:u?Qb.open:Qb.closed,children:yt(Zb,{label:e.searchFiltersToggle(TL(r.filters)),reserved:e.searchFiltersToggle(hL)})}),yt("span",{id:h,hidden:!0,children:V?e.searchCombineAndTitle:e.searchCombineOrTitle}),yt("span",{id:b,hidden:!0,children:e.searchSyntaxHelp}),yt("span",{"data-testid":"daily-report-search-status","aria-live":"polite",className:DL,children:X}),G===null?null:yt("p",{id:D,"data-testid":"daily-report-search-failure",className:wL,children:e.searchFailed(G)})]}),Q?yt(jb,{id:y,labelledBy:f,labels:e,locale:l.locale,renderFilterSelect:l.renderFilterSelect,facets:l.facets.state,value:r.filters,onChange:B,clearSignal:i}):null]})}var Qi=new WeakMap,tS=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}},Zi=(e,t)=>e.businessDate===t.businessDate&&e.sourceType===t.sourceType,xL=(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},CL=(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),!Zi(i,s))return null;continue}if(!Zi(s,eS(e,s.reportHubId))||r(s.reportHubId))return null;a-=1}for(let s of o.values()){if(!Zi(s,eS(e,s.reportHubId))||r(s.reportHubId))return null;a+=1}return a},eS=(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},rS=(e,t,r,n)=>{if(e===null)return{items:t,hasAnswerOnlyItems:!1};let o=u=>e.ids.has(u),a=Qi.get(e);if(a!==void 0&&a.isReportRemoved===r&&a.removedVersion===n){if(a.stream===t)return a.list;if(a.stream instanceof Dt&&t instanceof Dt){let u=CL(e,hm(a.stream,t,e.answeredByChunk,o),r,a.answerOnlyCount);if(u!==null){let m=a.list.hasAnswerOnlyItems===u>0?a.list:{items:a.list.items,hasAnswerOnlyItems:u>0};return Qi.set(e,{...a,stream:t,list:m,answerOnlyCount:u}),m}}}let s=new Map;for(let u of Rm(t,e.answeredByChunk,o))s.set(u.reportHubId,u);let i=[],l=0;for(let u of e.items){let m=s.get(u.reportHubId);m!==void 0?i.push(Zi(m,u)?u:m):r(u.reportHubId)||(i.push(u),l+=1)}let d=l>0;if(a!==void 0&&a.list.hasAnswerOnlyItems===d&&xL(a.items,i))return Qi.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 Qi.set(e,{stream:t,isReportRemoved:r,removedVersion:n,items:i,list:c,answerOnlyCount:l}),c};var nS=(e,t,r)=>{let n=ke(t,0);if(n===void 0)return null;let o=rr(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=ke(e,o+s);if(i!==void 0&&a.has(i.reportHubId))return i.reportHubId;let l=ke(e,o-s);if(l!==void 0&&a.has(l.reportHubId))return l.reportHubId}}return n.reportHubId},Vc=(e,t,r,n)=>{if(r===null){let o=ke(t,0);return n&&o!==void 0?o.reportHubId:null}return rr(t,r)!==-1?r:nS(e,t,r)},oS=(e,t,r)=>e.selected===null?r!==null&&rr(t,r)!==-1?r:null:rr(t,e.selected)!==-1?e.selected:nS(e.items,t,e.selected);import{useEffect as sS,useLayoutEffect as PL,useMemo as iS,useRef as lS,useSyncExternalStore as kL}from"react";var IL=1e3,_L=5e3,LL={combine:"union",committed:null,filters:Bc,generation:0,status:"idle",failure:null,items:null,answered:null},NL=e=>e===400?"invalid":e===404?"unavailable":e===429?"busy":"failed",OL=(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))),Wc=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),ML=(e,t)=>{let r=Yi(e),n=Yi(t);return Wc(r.authors,n.authors)&&Wc(r.sourceTypes,n.sourceTypes)&&Wc(r.customers,n.customers)},aS=e=>{let t=LL,r=new Set,n=null,o=null,a=null,s=null,i=null,l=null,d=b=>{t=b;for(let D of r)D()},c=()=>{s!==null&&clearTimeout(s),i!==null&&clearTimeout(i),s=null,i=null},u=(b,D)=>{let _=t.answered;return _!==null&&_.query.text===b.text&&_.query.combine===b.combine&&OL(_.words,D)?_:{query:{text:b.text,combine:b.combine},words:D}},m=b=>{let D=new URLSearchParams({[Ue.searchQuery]:b.text,[Ue.searchCombine]:b.combine});return Wb(D,b.filters),`${e.apiBasePath}/${$e.search}?${D.toString()}`},p=(b,D,_,T)=>{if(!_){d({...t,status:"failed",failure:b});return}l!==T&&(l=T,i=setTimeout(()=>{i=null,y(D,!0)},_L))},f=async(b,D,_)=>{let T=new AbortController;n={controller:T};let P={Accept:"application/json"};_&&a!==null&&a.generation===D&&(P["If-None-Match"]=a.value);try{let M=await e.fetch(m(b),{headers:P,cache:"no-store",signal:T.signal});if(T.signal.aborted||D!==t.generation)return;if(M.status===304){t.status!=="done"&&d({...t,status:"done",failure:null});return}if(M.status===401||M.status===403){e.onSessionExpired(),p("failed",b,!1,D);return}if(!M.ok){p(NL(M.status),b,_,D);return}let H=Sp(await M.json(),!Xr(b.text));if(T.signal.aborted||D!==t.generation)return;if(H===null){p("failed",b,_,D);return}let A=M.headers.get("ETag");a=A===null?null:{generation:D,value:A},l=null,d({...t,status:"done",failure:null,items:H.items,answered:H.words.length===0?null:u(b,H.words)})}catch{if(T.signal.aborted||D!==t.generation)return;p("failed",b,_,D)}finally{if(n!==null&&n.controller===T&&(n=null),n===null&&o!==null){let M=o;o=null,y(M.query,M.background)}}},y=(b,D)=>{if(n!==null){o={query:b,background:(o===null||o.background)&&D};return}f(b,t.generation,D)};return{getSnapshot:()=>t,subscribe:b=>(r.add(b),()=>{r.delete(b)}),commit:(b,D,_)=>{if(Xr(b)&&yo(_))throw new Error("[daily-report] search: a blank text can be committed only with a filter");let T=Gi(_);if(T!==null)throw new Error(`[daily-report] search: the filter selection cannot be sent (${T})`);c();let P=t.committed,M=P!==null&&P.text===b&&P.combine===D&&ML(P.filters,_),H={text:b,combine:D,filters:_};d({...t,combine:D,committed:H,filters:_,generation:M?t.generation:t.generation+1,status:"searching",failure:null}),y(H,!1)},setCombine:b=>{b!==t.combine&&d({...t,combine:b})},release:()=>{c(),n?.controller.abort(),n=null,o=null,t.committed!==null&&d({combine:t.combine,committed:null,filters:Bc,generation:t.generation+1,status:"idle",failure:null,items:null,answered:null})},invalidate:()=>{let b=t.committed;b!==null&&(s!==null&&clearTimeout(s),s=setTimeout(()=>{s=null,y(b,!0)},IL))},dispose:()=>{c(),n?.controller.abort(),n=null,o=null}}};var dS=({apiBasePath:e,invalidation:t,onSessionExpired:r})=>{let n=lS(r);PL(()=>{n.current=r});let o=iS(()=>aS({apiBasePath:e,onSessionExpired:()=>n.current(),fetch:(i,l)=>fetch(i,l)}),[e]);sS(()=>()=>o.dispose(),[o]);let a=lS(t);sS(()=>{a.current!==t&&(a.current=t,o.invalidate())},[t,o]);let s=kL(o.subscribe,o.getSnapshot,o.getSnapshot);return iS(()=>({...s,commit:o.commit,setCombine:o.setCombine,release:o.release}),[s,o])};import{useCallback as cS,useEffect as FL,useLayoutEffect as HL,useMemo as zc,useRef as BL,useState as UL}from"react";var uS=Object.freeze({status:"idle"}),VL=Object.freeze({status:"loading"}),WL=Object.freeze({sourceTypes:[],authors:[],customers:[]}),zL=e=>e===404?"unavailable":e===429?"busy":"failed",Kc=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),KL=(e,t)=>Kc(e.sourceTypes,t.sourceTypes)&&Kc(e.authors,t.authors)&&Kc(e.customers,t.customers),$L=(e,t)=>"facets"in t?e.status!=="ready"||!KL(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},pS=(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})),jL=(e,t)=>e.map(r=>mS(r,t));function mS(e,t){let r=br(e,t);return{value:e,label:r===void 0?e:r.label}}var fS=({apiBasePath:e,locale:t,sourceTypeConfigs:r,onSessionExpired:n})=>{let[o,a]=UL({apiBasePath:e,load:uS}),s=o.apiBasePath===e?o.load:uS,i=BL(null),l=Qe(()=>({apiBasePath:e,onSessionExpired:n}));HL(()=>{l.current={apiBasePath:e,onSessionExpired:n}}),FL(()=>()=>{i.current?.abort(),i.current=null},[e]);let d=cS(()=>{if(i.current!==null)return;let f=new AbortController;i.current=f;let y=l.current.apiBasePath;a(R=>R.apiBasePath===y&&R.load.status==="ready"?R:{apiBasePath:y,load:VL}),(async()=>{let R;try{let E=await fetch(`${y}/${$e.searchFacets}`,{headers:{Accept:"application/json"},cache:"no-cache",signal:f.signal});if(f.signal.aborted)return;if(E.status===401||E.status===403)l.current.onSessionExpired(),R={failure:"failed"};else if(!E.ok)R={failure:zL(E.status)};else{let S=zb(await E.json());if(f.signal.aborted)return;R=S===null?{failure:"failed"}:{facets:S}}}catch{if(f.signal.aborted)return;R={failure:"failed"}}i.current=null,a(E=>({apiBasePath:y,load:$L(E.load,R)}))})()},[l]),c=s.status==="ready"?s.facets:WL,u=zc(()=>{let f=new Intl.Collator(t);return{authors:pS(c.authors,f),sourceTypes:jL(c.sourceTypes,r),customers:pS(c.customers,f)}},[c,t,r]),m=cS((f,y)=>f==="sourceType"?mS(y,r):{value:y,label:y},[r]),p=zc(()=>s.status==="ready"?{status:"ready",options:u,optionOf:m,reloadFailure:s.reloadFailure}:s,[s,u,m]);return zc(()=>({state:p,load:d}),[p,d])};import{useEffect as SS,useLayoutEffect as JL,useMemo as eN,useRef as tN}from"react";var GL=4294967295,yS=e=>typeof e=="number"&&Number.isInteger(e)&&e>=0&&e<=GL,YL=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)||!Io(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},qL=e=>{if(!(hr(e)&&yS(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=YL(e.ranges);return t===null?null:{fingerprint:e.fingerprint,ranges:t}},XL=e=>{if(!hr(e))return null;let t={};for(let[r,n]of Object.entries(e)){if(!Kn(r))return null;let o=qL(n);if(o===null)return null;t[r]=o}return t},RS=(e,t)=>{if(!(hr(e)&&yS(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(!hr(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=XL(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 hS=2*Co*Rr.maxDetailIds,QL=240,ZL=6e4,bS=({apiBasePath:e,fetch:t,answered:r,onSessionExpired:n})=>{let o=r.words.length,a=r.query.combine==="union"&&o>=2,s=rf(r.words),i=new Map,l=new Map,d=0,c=new Map,u=new Set,m=0,p=0,f=null,y=new Set,g=!1,R=v=>{let w=i.get(v);if(w!==void 0)return w;let O={entry:void 0,appliedSequence:0,settledEpoch:null,retriedEpoch:null,revalidated:new Set};return i.set(v,O),l.has(v)||(d+=1),O},E=v=>{for(let w of v){let O=i.get(w);O!==void 0&&(O.settledEpoch=null)}},S=()=>{if(!(d<=hS))for(let v of[...i.keys()]){if(d<=hS)return;l.has(v)||(i.delete(v),c.delete(v),d-=1)}},h=v=>{let w=l.get(v);if(w!==void 0)for(let O of[...w])O()},b=v=>{let w=new URLSearchParams({[Ue.searchQuery]:r.query.text,[Ue.searchCombine]:r.query.combine,[Ue.reportIds]:v.join(",")});return`${e}/${$e.searchMarks}?${w.toString()}`},D=(v,w)=>{for(let O of v){let B=R(O.reportHubId);B.appliedSequence>w||(B.appliedSequence=w,B.entry=O,i.delete(O.reportHubId),i.set(O.reportHubId,B),h(O.reportHubId))}S()},_=(v,w)=>{let O=[];for(let X of v){let G=i.get(X);G!==void 0&&G.retriedEpoch!==m&&O.push({id:X,record:G})}if(O.length===0)return;let V=setTimeout(()=>{u.delete(V);for(let{id:X,record:G}of O){let Q=c.get(X);Q===void 0||Q.timer!==V||(c.delete(X),l.has(X)?(G.retriedEpoch=m,C.enqueue(X)):G.settledEpoch=null)}},w);u.add(V);for(let{id:X,record:G}of O)c.set(X,{timer:V,record:G})},T=v=>{for(let w of v)l.has(w)?C.enqueue(w):E([w])},P=async(v,w)=>{p+=1;let O=p,B=m;for(let Q of v)R(Q).settledEpoch=m,c.delete(Q);S();let V;try{V=await t(b(v),{headers:{Accept:"application/json"},cache:"no-store",signal:w})}catch{return}if(V.status===401||V.status===403){n();return}if(V.status===429){let Q=Wa(V,ZL);Q!==null&&B===m&&_(v,Q);return}if(!V.ok)return;let X;try{X=await V.json()}catch{return}let G=RS(X,{requestedIds:v,setCount:o,expectsMatchedSets:a});w.aborted||G===null||G.wordsDigest!==s||(D(G.reports,O),B===m&&T(G.deferred))},M=()=>{g=!0,queueMicrotask(()=>{g=!1}),f=setTimeout(H,QL)},H=()=>{if(f=null,y.size!==0){for(let v of y)C.enqueue(v);y.clear(),M()}},A=v=>{if(f!==null&&!g){y.add(v);return}C.enqueue(v),f===null&&M()},C=Va({hasListener:v=>l.has(v),batchSize:Rr.maxDetailIds,inFlightBound:Co,send:P});return{indicator:Object.freeze({setCount:o,showsMatchedSets:a}),subscribe:(v,w)=>{let O=l.get(v);O===void 0&&(O=new Set,l.set(v,O),i.has(v)&&(d-=1)),O.add(w);let B=i.get(v),V=B!==void 0&&B.settledEpoch===m;return O.size===1&&!V&&!C.isWanted(v)&&!y.has(v)&&A(v),()=>{let X=l.get(v);X===void 0||!X.delete(w)||X.size>0||(l.delete(v),i.has(v)&&(d+=1),y.delete(v),E(C.release(v)),S())}},read:v=>{let w=i.get(v);return w===void 0?void 0:w.entry},revalidate:(v,w,O)=>{let B=R(v),V=`${w}\0${O}`;B.revalidated.has(V)||(B.revalidated.add(V),y.delete(v),C.enqueue(v))},advanceEpoch:()=>{m+=1;for(let v of u)clearTimeout(v);u.clear(),c.clear(),y.clear();for(let v of l.keys())C.enqueue(v)},dispose:()=>{for(let w of u)clearTimeout(w);u.clear();let v=[...c.keys(),...y];c.clear(),y.clear(),f!==null&&clearTimeout(f),f=null,E([...C.dispose(),...v])}}};var gS=({apiBasePath:e,answered:t,shownRevision:r,onSessionExpired:n})=>{let o=tN(n);JL(()=>{o.current=n});let a=eN(()=>t===null?null:bS({apiBasePath:e,answered:t,onSessionExpired:()=>o.current(),fetch:(i,l)=>fetch(i,l)}),[e,t]);SS(()=>{if(a!==null)return()=>a.dispose()},[a]);let s=Qe(()=>({store:a,shownRevision:r}));return SS(()=>{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 rN}from"react";var ES=e=>{let t=e,r=e,n=new Set;return{get:()=>t,getSettled:()=>r,set:(o,a)=>{if(t=o,!(a==="held"||o===r)){r=o;for(let s of[...n])s()}},subscribe:o=>(n.add(o),()=>{n.delete(o)})}},$c=e=>rN(e.subscribe,e.getSettled,e.getSettled);import*as ha from"@radix-ui/react-switch";import*as wS from"react";import{jsx as DS}from"react/jsx-runtime";var Ji=wS.forwardRef(({className:e,...t},r)=>DS(ha.Root,{className:I(`peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-transparent disabled:cursor-not-allowed disabled:opacity-50 ${lu} ${cu} ${le}`,e),...t,ref:r,children:DS(ha.Thumb,{className:`pointer-events-none block rounded-full shadow-lg data-[state=unchecked]:translate-x-0 motion-safe:transition-[translate] ${du} ${uu}`})}));Ji.displayName=ha.Root.displayName;import{Fragment as _N,jsx as me,jsxs as Xt}from"react/jsx-runtime";var iN="list",lN=e=>{if(e==="list"||e==="tree"||e==="detailList")return e;throw new Error(`[daily-report] unknown view tab: ${e}`)},dN=()=>({topItem:null,anchorReportHubId:null,measuredHeights:new Map}),cN=I(mu,Au,"flex flex-wrap items-center gap-2"),uN=I("@container/views",Nt),pN=I("mt-0",Nt),mN=I("flex flex-1 items-center justify-center",An),vS="relative h-4 w-4 p-0 after:absolute after:-inset-1",fN="flex items-center gap-2",yN=I(vS,"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"),RN=I(vS,"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"),hN=`cursor-pointer select-none ${de} text-xs`,bN=`hidden h-6 items-center gap-1 rounded-lg border border-amber-300/70 border-solid bg-amber-50/60 px-[3px] ${de} sm:flex dark:border-amber-700/50 dark:bg-amber-950/40`,SN="select-none font-bold font-mono text-amber-900 text-xs uppercase dark:text-amber-200",gN="flex h-6 items-center gap-1 rounded-lg bg-amber-800 px-2 font-medium text-white text-xs shadow-xs hover:bg-amber-900 dark:bg-amber-800 dark:hover:bg-amber-900",xS=(e,t)=>{let r=Pi(t);return[e.totalCount(r),e.searchHitCount(r)]},EN=({count:e})=>{let{labels:t}=Y(),[r,n]=wn(null),o=Ub(e,r);return me(aa,{ref:n,text:t.totalCount(o),widestTexts:xS(t,Math.max(e,o))})},DN=({totalCount:e,hitCount:t})=>{let{labels:r}=Y();return t!==null?me(aa,{text:r.searchHitCount(t),widestTexts:xS(r,e===Ur?t:Math.max(e,t))}):e===Ur?me("span",{children:r.totalCountLoading}):me(EN,{count:e})},wN=({checked:e,onCheckedChange:t})=>{let{labels:r}=Y(),n=TS(),o=TS();return Xt("div",{className:"flex items-center gap-1 pl-1",children:[me(Ji,{id:n,checked:e,onCheckedChange:t,title:r.autoReadTitle,"aria-describedby":o}),me(na,{htmlFor:n,className:hN,children:r.autoRead}),me("span",{id:o,hidden:!0,children:r.autoReadTitle})]})},TN=({selectionStore:e,dailyReportItems:t,rowSetSize:r,autoMarkRead:n,userId:o,scrollOffsetRef:a})=>{let s=$c(e);return me(Pc,{dailyReportItems:t,rowSetSize:r,autoMarkRead:n,selectedReportHubId:s,onSelectItem:e.set,userId:o,scrollOffsetRef:a})},AN=({selectionStore:e,dailyReportItems:t,rowSetSize:r,userId:n,scrollRestoreRef:o})=>{let a=$c(e);return me(Sc,{dailyReportItems:t,rowSetSize:r,userId:n,selectedItemId:a,onSelectItem:e.set,scrollRestoreRef:o})},vN=({tabItems:e,actions:t,searchRow:r})=>{let[n,o]=wn(iN),{labels:a}=Y();return Xt(la,{value:n,onValueChange:s=>o(lN(s)),className:uN,children:[Xt("div",{className:I(yu,vu,xu[n]),children:[Xt("div",{className:cN,children:[me(da,{"aria-label":a.viewTabList,className:"flex flex-wrap gap-1",...ey,children:e.map(({value:s,label:i})=>me(ca,{value:s,children:i},s))}),t]}),r]}),e.map(({value:s,content:i})=>me(po,{value:s,tabStop:!1,className:pN,children:i},s))]})},xN=Object.freeze({items:null,generation:0,revision:0,change:"none",scrollRequest:null,restoreOnRelease:!0}),CN=(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}},IN=({answer:e,hasAnswerOnlyItems:t})=>{let{phase:r,isRevalidating:n}=Yn(),o=r==="complete"&&!n,a=Ro(null);return jc(()=>{!(o&&t)||a.current===e||(a.current=e,Yo())},[o,t,e]),null},Gc=({userId:e})=>{let[t,r]=wn(!1),{labels:n,renderHeader:o,showDevControls:a,apiBasePath:s,onSessionExpired:i,search:l,locale:d,sourceTypeConfigs:c}=Y(),{toggleSse:u,createReport:m,refetchData:p,clearCacheAndRefetch:f}=lt(),{isSseEnabled:y,items:g,searchInvalidation:R,isReportRemoved:E,removedVersion:S}=Qs(),[h]=sN(),b=dS({apiBasePath:s,invalidation:R,onSessionExpired:i}),D=fS({apiBasePath:s,locale:d,sourceTypeConfigs:c,onSessionExpired:i}),_=l===null||b.committed===null?null:b.items,[T,P]=wn(xN);T.items!==_&&P(CN(T,_,b.generation));let M=el(()=>_===null?null:tS(_),[_]),H=el(()=>rS(M,g,E,S),[M,g,E,S]),A=H.items,C=Lm(g.length,Lf()),v=_===null?C:A.length,[w,O]=wn(0),[B]=wn(()=>({preSearchTopReportId:null})),V=el(()=>({request:T.scrollRequest,slot:B}),[T.scrollRequest,B]),X=gS({apiBasePath:s,answered:_===null?null:b.answered,shownRevision:T.revision,onSessionExpired:i}),G=Ro(0),Q=Qe(dN),[q]=wn(()=>ES($l(A))),fe=Ro(null),De=Ro(A),L=Ro(T.revision);AS(()=>{if(L.current===T.revision)return;L.current=T.revision;let te=De.current,Ee=q.get(),we=Ee;T.change==="enter"?(fe.current={selected:Ee,items:te},we=Vc(te,A,Ee,!0)):T.change==="start"||T.change==="update"?we=Vc(te,A,Ee,T.change==="start"):T.change==="restore"&&fe.current!==null&&(we=oS(fe.current,A,Ee)),(T.change==="restore"||T.change==="release")&&(fe.current=null),we!==Ee&&q.set(we,"settled")},[T,A,q]),AS(()=>{De.current=A},[A]);let U=Ro(!1);jc(()=>{let te=$l(A);!U.current&&te!==null&&(U.current=!0,q.get()===null&&q.set(te,"settled"))},[A,q]);let K=async()=>{await p()},re=async()=>{await f()},he=async()=>{let Ee=h.get("businessDate")||Wu();b.committed!==null&&(P(ie=>({...ie,restoreOnRelease:!1})),O(ie=>ie+1),b.release());let we=await m(Ee);q.set(we,"settled")};jc(()=>{localStorage.getItem("daily-report-auto-read")==="true"&&r(!0)},[]);let F=te=>{r(te),localStorage.setItem("daily-report-auto-read",String(te))},ee=el(()=>[{value:"list",label:n.tabList,content:me(TN,{selectionStore:q,dailyReportItems:A,rowSetSize:v,autoMarkRead:t,userId:e,scrollOffsetRef:G})},{value:"tree",label:n.tabTree,content:me("div",{className:mN,children:n.treeComingSoon})},{value:"detailList",label:n.tabDetailList,content:me(AN,{selectionStore:q,dailyReportItems:A,rowSetSize:v,userId:e,scrollRestoreRef:Q})}],[A,v,t,e,n,q,Q]);return Xt(_N,{children:[o({title:n.title,annotation:Xt("div",{className:"flex flex-wrap items-center gap-2 leading-1",children:[me(sa,{}),me(DN,{totalCount:C,hitCount:_===null?null:v}),me("span",{children:n.debounce(Ln)})]})}),me("div",{className:va,children:Xt("div",{className:xa,children:[_!==null&&me(IN,{answer:_,hasAnswerOnlyItems:H.hasAnswerOnlyItems}),me(On.Provider,{value:_===null?"date":"ids",children:me(pt.Provider,{value:X,children:me(rd.Provider,{value:V,children:me(vN,{tabItems:ee,searchRow:l===null?null:me(Jb,{labels:n,debounceMs:l.debounceMs,search:b,shownCount:_===null?null:v,onCommit:b.commit,onCombineChange:b.setCombine,onRelease:b.release,clearSignal:w,filters:l.renderFilterSelect===null?null:{renderFilterSelect:l.renderFilterSelect,locale:d,facets:D}}),actions:Xt("div",{className:"ml-auto flex flex-wrap items-center gap-2 px-1",children:[Xt(Ar,{size:"sm",onClick:he,className:gN,title:n.createReportTitle,children:[me(nN,{className:"h-3 w-3"}),me("span",{children:n.createReport})]}),a&&Xt("div",{className:bN,title:n.devControls,"data-testid":"dev-controls-toolbox",children:[me("span",{className:SN,children:"dev"}),me(Ji,{"aria-label":n.devSseToggle,title:n.devSseToggle,checked:y,onCheckedChange:u}),Xt("div",{className:fN,"data-testid":"dev-icon-buttons",children:[me(Ar,{variant:"ghost",size:"icon",onClick:K,className:yN,title:n.devReload,"data-testid":"dev-reload-btn",children:me(aN,{className:"size-3"})}),me(Ar,{variant:"ghost",size:"icon",onClick:re,className:RN,title:n.devClearCache,"data-testid":"dev-clear-cache-btn",children:me(oN,{className:"size-3"})})]})]}),me(wN,{checked:t,onCheckedChange:F})]})})})})})]})})]})};import{Fragment as IS,jsx as We,jsxs as tl}from"react/jsx-runtime";var MN=I(Nt,kr),PN=I("flex min-h-0 flex-1 flex-col items-center justify-center gap-4",de,Lt,le),kN=I("font-bold",ho),FN=I("font-medium",ho),HN=I("rounded bg-slate-100 px-4 py-2 text-slate-700 text-sm hover:bg-slate-200 dark:bg-slate-800 dark:text-slate-200 dark:hover:bg-slate-700",le),BN=({isFailed:e,handOver:t})=>{let{labels:r,renderHeader:n}=Y(),o=_S(null),a=LN(i=>(o.current=i,t.take()&&nn(i)&&Tr([i]),()=>{o.current=null,i.contains(et(i))&&t.request()}),[t]),s=()=>{Tr([o.current]),Ps()};return tl(IS,{children:[n({title:r.title,annotation:e?We("span",{className:kN,children:r.loadErrorBadge}):tl("div",{className:"flex flex-wrap items-center gap-2 leading-none",children:[We(sa,{}),We("span",{children:r.totalCountLoading}),We("span",{children:r.debounce(Ln)})]})}),We("div",{className:va,children:We("div",{className:xa,children:We("div",{className:MN,children:We("div",{ref:a,tabIndex:-1,...ry,"data-testid":"daily-report-status-panel","data-phase":e?"failed":"loading",className:I(PN,e&&"border-red-200 dark:border-red-900"),children:e?tl(IS,{children:[We("p",{className:FN,children:r.loadError}),We("button",{type:"button","data-testid":"daily-report-load-error-retry",onClick:s,className:HN,children:r.reload})]}):We("p",{children:r.loadingIds})})})})})]})},UN=()=>{let{labels:e}=Y(),t=If();return We(ki,{announcement:Tc(t,e),testId:"daily-report-stream-announcer"})},VN=({user:e,userId:t})=>{let{apiBasePath:r,onSessionExpired:n}=Y(),o=Yn(),[a]=ON(Bh),s=_S(n);NN(()=>{s.current=n}),CS(()=>{jo({apiBasePath:r,userKey:t??null})},[r,t]),CS(()=>{o.phase==="auth-required"&&s.current()},[o.phase]);let i=o.hasItems||o.phase==="complete";return tl(vd,{children:[We(UN,{}),We(wc.Provider,{value:!1,children:We(yc.Provider,{value:a,children:We(_d,{user:e,userId:t,children:i?We(Gc,{userId:t}):We(BN,{isFailed:o.phase==="failed",handOver:a})},t??"anonymous")})})]})},WN=({config:e,...t})=>We(Dl,{config:e,children:We(VN,{...t})});import{createShouldRevalidate as zN}from"@aiquants/route-revalidation";var KN=nf.filter(e=>e!=="clearCache"),$N=zN({skipIntents:{field:wt.intent,values:KN},hashChange:"default",unchangedUrl:"skip"}),jN=e=>{let t=async r=>{fd();let n=await r.serverLoader(),o=n.userId;return md({apiBasePath:e?.apiBasePath,userKey:typeof o=="string"?o:null}),n};return t.hydrate=!0,t};export{Ip as DAILY_REPORT_LABEL_CATALOGS,hl as DAILY_REPORT_LABEL_KEYS,Sa as DAILY_REPORT_LATTICE_BLOCK_QUANTUM_CLASS_NAME,oE as DAILY_REPORT_LAYOUT_LATTICE_PX,Hc as DAILY_REPORT_SEARCH_FILTER_FACETS,_d as DailyReportActionProvider,bo as DailyReportAttachmentIndicator,Dl as DailyReportConfigProvider,Sc as DailyReportDetailList,vd as DailyReportErrorProvider,sa as DailyReportIdsStreamStatus,fc as DailyReportInstrumentationContext,Pc as DailyReportList,WN as DailyReportPage,Gc as DailyReportResolvedContent,md as bootstrapDailyReportIdsStreamSession,jN as createDailyReportClientLoader,$N as dailyReportShouldRevalidate,Lo as defaultDailyReportClientConfig,jo as ensureDailyReportIdsStreamSession,OD as foldDailyReportSourceTypeToken,fd as primeDailyReportIdsStreamSession,wf as readDailyReportIdsStreamRows,gl as resolveDailyReportLabels,br as resolveSourceTypeConfig,ks as resyncDailyReportIdsStream,iT as useDailyReportActionContext,Qd as useDailyReportComments,Y as useDailyReportConfig,Ol as useDailyReportDetail,gw as useDailyReportIdsStream,Ml as useDailyReportPrefetch,Ed as useDailyReportSseConnection};
|
|
1
|
+
import YS from"lucide-react/dist/esm/icons/paperclip.js";var KS="data-daily-report-row-surface",_t={[KS]:"",role:"gridcell"},eu="data-daily-report-active",Pr="data-daily-report-scrolling",ur=8,$S=4,tu=ur-$S;var wa="[--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]",kr=`${wa} h-[calc-size(auto,round(up,size,var(--aqdr-lattice-block)))]`,Fr="p-[8px]",ru="pr-[8px]",Aa="contain-size contain-layout contain-style",nu="contain-strict",Jt="pointer-events-none absolute size-px whitespace-nowrap opacity-0 select-none contain-layout",le="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-blue-600 dark:focus-visible:outline-blue-400";var ll="[--aqdr-text-quiet:oklch(44%_0.046_257.417)] dark:[--aqdr-text-quiet:oklch(77%_0.040_256.788)]",de=`${ll} text-(--aqdr-text-quiet)`,pr=`border-slate-500 dark:border-slate-500 ${ll} placeholder:text-(--aqdr-text-quiet)`,ou="-mx-[4px] px-[4px] pb-[4px] scroll-p-[4px]",dl="scrollbar-thin [scrollbar-gutter:stable]",cl=`-m-[4px] overflow-hidden p-[4px] ${dl}`,au="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white",xa="rounded-[calc(var(--radius-2xl)+8px)]",va="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]",su="[: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",Lt="rounded-2xl border border-solid border-slate-200 bg-white p-[15px] shadow-sm dark:border-slate-700 dark:bg-slate-900/70",Ca=16,vn=`rounded-xl border border-dashed border-slate-300 bg-slate-50 p-[11px] ${de} text-sm dark:border-slate-600 dark:bg-slate-900/40`,iu=12,Ia="rounded-xl bg-slate-50 p-3 text-slate-700 text-sm leading-6 dark:bg-slate-800/60 dark:text-slate-200";var lu="min-h-24",du="flex h-6 items-center",_a="[--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",it=`flex size-6 shrink-0 items-center justify-center rounded-full hover:bg-slate-200 dark:hover:bg-slate-700 ${le}`,cu="-mx-1",uu="flex items-center gap-1",Je="inline-flex h-6 items-center rounded-full px-3",pu="inline-flex h-6 items-center rounded-full border border-solid px-[11px]",mu=`${Je} shrink-0 whitespace-nowrap bg-blue-50 font-semibold text-blue-800 text-xs dark:bg-blue-500/15 dark:text-blue-200 forced-colors:border forced-colors:border-solid forced-colors:border-[CanvasText] forced-colors:text-[CanvasText]`,fu="inline-flex h-6 shrink-0 items-center rounded px-2 font-semibold text-xs tracking-wide",Mr="size-4",et={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 forced-colors:text-[CanvasText]`,delete:`${Mr} text-slate-500 hover:text-red-600 dark:text-slate-400 dark:hover:text-red-400 forced-colors:text-[CanvasText]`,deletePending:`${Mr} text-red-600 dark:text-red-400 forced-colors:text-[CanvasText]`,edit:`${Mr} text-slate-500 dark:text-slate-400 forced-colors:text-[CanvasText]`},yu="h-6 w-10 border-4 border-solid",Ru="size-4 data-[state=checked]:translate-x-4",hu="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]",bu="bg-white dark:bg-slate-950 forced-colors:bg-[ButtonText]";var Su="rounded-xl bg-slate-100 p-1 dark:bg-slate-800",gu="rounded-xl border border-solid p-[3px]",Eu=`relative inline-flex h-6 items-center justify-center whitespace-nowrap rounded-lg px-2 font-medium ${de} text-xs 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`,jS="supports-[margin-left:round(down,1px,1px)]:ml-[max(0px,round(down,calc((100%-72rem)/2),var(--aqdr-lattice-block)))]",GS="bg-slate-50 dark:bg-slate-950",Nt="flex min-h-0 flex-1 flex-col",La=`${Nt} ${GS}`,Na=`${Nt} mx-auto w-full max-w-6xl ${wa} px-[var(--aqdr-lattice-block)] pt-[var(--aqdr-lattice-block)] ${jS}`,Du=`relative z-[1] flex shrink-0 flex-col ${kr}`,Tu="flex grow flex-col justify-between",wu="grid min-w-0 grid-cols-[max-content_minmax(0,1fr)_max-content] grid-rows-[minmax(2rem,auto)_auto] items-end",Au="grid min-w-0 grid-cols-1 gap-2 sm:grid-cols-[minmax(0,2fr)_minmax(0,1fr)_minmax(0,3fr)]",xu="m-0 min-w-0 border-0 p-0",vu="mb-1 p-0 text-slate-700 text-xs leading-4 dark:text-slate-200",Cu="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-900 dark:text-yellow-50 forced-colors:forced-color-adjust-none forced-colors:bg-[Mark] forced-colors:text-[MarkText]",Eo="text-red-800 dark:text-red-300",Iu="bg-white dark:bg-slate-900",Oa=`min-h-0 flex-1 overflow-clip contain-size ${wa}`,Ma="flex h-full flex-col contain-size contain-layout contain-style",_u="relative inline-block whitespace-nowrap tabular-nums",Pa="invisible grid",Jr="col-start-1 row-start-1",Lu="absolute inset-0 contain-size contain-layout contain-style",ka=`[&_.aqvs-no-items-text]:py-4 ${ll} [&_.aqvs-no-items-text]:text-(--aqdr-text-quiet)`,Nu="border-slate-200/80 bg-slate-100/60 dark:border-slate-800 dark:bg-slate-900/60 dark:text-slate-200",Ou="ml-[8px]",Mu={list:"mr-[8px] [@media(max-width:639px)]:mr-[16px] @max-[460px]/views:mr-[16px]",tree:"mr-[8px]",detailList:"mr-[16px]"},en=`font-semibold ${de} text-xs uppercase tracking-wide`,mr=`m-0 ${en}`,fr="text-balance wrap-anywhere [word-break:auto-phrase]",Pu="[--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)]",Fa=`${Pu} [&_.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]`,Ha="[--aqvs-focus-ring-color:var(--color-blue-600)] dark:[--aqvs-focus-ring-color:var(--color-blue-400)]",ku=`${Pu} [scrollbar-color:var(--aqdr-scroll-bar-thumb)_var(--aqdr-scroll-bar-track)]`;import{jsx as Fu,jsxs as QS}from"react/jsx-runtime";var qS=2,XS=`inline-flex h-6 shrink-0 items-center gap-1 ${de}`,ul=(e,t)=>`${e}: ${t}`,pl=e=>e>=qS?String(e):null,Do=({id:e,count:t,label:r})=>{if(t<=0)return null;let n=ul(r,t),o=pl(t);return QS("span",{id:e,className:XS,title:n,role:"img","aria-label":n,"data-testid":"daily-report-attachment-indicator","data-attachment-count":t,children:[Fu(YS,{className:Mr,"aria-hidden":"true"}),o!==null&&Fu("span",{className:"font-semibold text-xs leading-4",children:o})]})};import{useCallback as Ye,useEffect as Dn,useLayoutEffect as db,useMemo as wc,useRef as gt,useState as Tn}from"react";var tn=Object.freeze({text:"",runs:Object.freeze([])}),Ot=e=>e.length===0?tn:{text:e,runs:[{displayStart:0,displayEnd:e.length,sourceStart:0,sourceEnd:e.length}]},Hu=(e,t,r)=>t>=r?tn:{text:e.slice(t,r),runs:[{displayStart:0,displayEnd:r-t,sourceStart:t,sourceEnd:r}]},ml=(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}))},fl=e=>e.displayEnd-e.displayStart===e.sourceEnd-e.sourceStart,To=(e,t,r)=>{if(t>=r)return tn;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(fl(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(...ml(a-t,s-t,o.sourceStart,o.sourceEnd))}return{text:e.text.slice(t,r),runs:n}},Cn=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?tn:{text:t,runs:r}},yl=e=>{let t=e.text.trimEnd().length,r=Math.min(t,e.text.length-e.text.trimStart().length);return To(e,r,t)},Hr=e=>typeof e=="string"?yl(Ot(e)):tn,Ba=(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 m=s;m<e.runs.length&&e.runs[m].displayStart<c;m++){let p=e.runs[m],f=Math.max(p.displayStart,d),y=Math.min(p.displayEnd,c);if(!(f>=y))if(fl(p)){let S=p.sourceStart+(f-p.displayStart);a.push({displayStart:f+u,displayEnd:y+u,sourceStart:S,sourceEnd:S+(y-f)})}else a.push(...ml(f+u,y+u,p.sourceStart,p.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?tn:{text:o,runs:a}},ZS=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},JS=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},Bu=e=>{let t=e.normalize("NFC");if(t===e)return Ot(e);let r=ZS(e),n=r.map(s=>s.shown).join("")===t?r:JS(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(...ml(a,d,s,i)),a=d}return{text:t,runs:o}},Uu=(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(fl(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},Vu=String.raw`<br\s*\/?\s*>`,Wu=String.raw`<\/p>`,zu="<[^>]+>",eg=new RegExp(String.raw`(${Vu}|${Wu}|\r?\n)|${zu}`,"gi"),Ku=new RegExp(Vu,"gi"),tg=new RegExp(Wu,"gi"),rg=new RegExp(zu,"g"),$u=(e,t)=>{if(!e)return[];let r=[],n=[],o=0,a=()=>{let s=Cn(n);n=[];let i=yl({text:s.text.replace(/ /g," "),runs:s.runs});i.text.length>0&&r.push(i)};for(let s of e.matchAll(eg))if(n.push(Hu(e,o,s.index)),o=s.index+s[0].length,s[1]!==void 0&&(a(),r.length===t))return r;return n.push(Hu(e,o,e.length)),a(),r},ju=e=>Ba(Ba(Ba(Ot(e),Ku,`
|
|
2
|
+
`),tg,`
|
|
3
|
+
`),rg,""),Gu=e=>e?yl(Ba(Ot(e),Ku,`
|
|
4
|
+
`)):tn;var ng=Object.freeze({text:"-",runs:Object.freeze([])}),Ke=e=>{let t=Hr(e);return t.text===""?ng:t},Br=e=>Ke(e).text,Ne=e=>{if(!e)return"-";if(typeof e!="string")return e instanceof Date?Ne(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 TE,useCallback as wE,useContext as rm,useEffect as AE,useState as xE}from"react";import{z as Ol}from"zod/v3";var og=/^(\d{4})([-/])(\d{2})\2(\d{2})$/;var Ua=e=>e<10?`0${e}`:`${e}`,ag=e=>{if(Number.isNaN(e.getTime()))return null;let t=e.getFullYear(),r=Ua(e.getMonth()+1),n=Ua(e.getDate());return`${t}-${r}-${n}`},Yu=e=>{let t=og.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}`},wo=e=>Yu(e)===e,qu=(e=new Date)=>{if(Number.isNaN(e.getTime()))throw new Error("[daily-report] resolveTodayBusinessDateKey needs a valid Date");return`${e.getFullYear()}-${Ua(e.getMonth()+1)}-${Ua(e.getDate())}`},Ao=e=>e==null?null:e instanceof Date?ag(e):Yu(e);import{z as sg}from"zod/v3";var Mt=e=>Number.isSafeInteger(e)&&e>0,qe=sg.number().int().positive().max(Number.MAX_SAFE_INTEGER);import{z as be}from"zod/v3";var Va=/^(?:[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 xo=/^[0-9a-f]{64}$/u,Xu=e=>e.isRead?{isRead:!0,readContentDigest:e.contentDigest}:{isRead:!1,readContentDigest:null},In=(e,t)=>e==="read"?{isRead:!1}:{isRead:!0,contentDigest:t},Qu=e=>typeof e=="string"&&xo.test(e),yr=(e,t)=>e.isRead?e.readContentDigest===null||e.readContentDigest===e.contentDigest||typeof t=="string"&&t!==""&&e.userId===t?"read":"updatedSinceRead":"unread";var rn=Symbol("daily-report wire mismatch"),Pt=(e,t,r)=>(e.issues.push({...r,path:t===null?[...e.path]:[...e.path,t]}),rn),tp=e=>e===null?"null":Array.isArray(e)?"array":Number.isNaN(e)?"nan":typeof e,Ur=(e,t)=>({code:"invalid_type",expected:e,received:tp(t)}),ig=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),lg=e=>{let t=0;for(let r in e)t+=1;return t},Zu=(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},_n=e=>{let t=Object.keys(e),r=Object.values(e);return(n,o)=>{if(!ig(n))return Pt(o,null,Ur("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===rn){s=!0;continue}a===null&&u!==c&&(a=Zu(n,t,l)),a!==null&&(u!==void 0||d in n)&&(a[d]=u)}return s?rn:a!==null?a:lg(n)===i?n:Zu(n,t,t.length)}},vo=e=>(t,r,n)=>{r.path.push(n);let o=e(t,r);return r.path.pop(),o},Co=e=>(t,r,n)=>{if(!Array.isArray(t))return Pt(r,n,Ur("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===rn?a=!0:l!==i&&(o===t&&(o=t.slice()),o[s]=l)}return r.path.pop(),a?rn:o},ve=(e,t,r)=>e==null||typeof e=="string"?e:Pt(t,r,Ur("string",e)),Ju=(e,t,r)=>e===null||typeof e=="string"?e:Pt(t,r,Ur("string",e)),ep=(e,t,r)=>typeof e=="string"?e:Pt(t,r,Ur("string",e)),dg=(e,t,r)=>e===null||typeof e=="number"&&!Number.isNaN(e)?e:Pt(t,r,Ur("number",e)),Io=(e,t,r)=>typeof e=="boolean"?e:Pt(t,r,Ur("boolean",e)),rp=(e,t,r)=>typeof e!="string"?Pt(t,r,Ur("string",e)):Qu(e)?e:Pt(t,r,{code:"invalid_string",validation:"regex",message:"a content digest is 64 lowercase hex digits"}),cg=(e,t,r)=>e===null?null:rp(e,t,r),Rl=(e,t,r)=>{if(typeof e=="number"&&Mt(e))return e;for(let{message:n,path:o,...a}of qe.safeParse(e).error.issues)Pt(t,r,a);return rn},np={present:!0,absent:!0,unknown:!0},op=Object.keys(np),ug=op.map(e=>`'${e}'`).join(" | "),pg=(e,t,r)=>typeof e!="string"?Pt(t,r,{code:"invalid_type",expected:ug,received:tp(e)}):Object.hasOwn(np,e)?e:Pt(t,r,{code:"invalid_enum_value",received:e,options:[...op]}),ap=_n({name:ve,affiliation:ve}),sp=_n({name:ve,text:ve,color:ve}),ip=_n({id:Rl,name:ve,color:ve}),lp=_n({id:Rl,userId:ve,userName:ve,content:ve,createdAt:ve,isMine:Io}),mg=_n({id:ep,fileName:ep,fileType:Ju,fileSize:dg,createdAt:Ju,state:pg,hasThumbnail:Io}),fg=_n({reportHubId:Rl,date:ve,createdAt:ve,author:ve,userId:ve,sourceType:ve,employeeName:ve,updatedBy:ve,updatedAt:ve,category:ve,creationCategory:ve,visitTimeFrom:ve,visitTimeTo:ve,customerName:ve,interviewers:Co(vo(ap)),subject:ve,content:ve,externalComments:Co(vo(sp)),isRead:Io,isStarred:Io,contentDigest:rp,readContentDigest:cg,isDraft:Io,labels:Co(vo(ip)),postedComments:Co(vo(lp)),attachments:Co(vo(mg))}),_o=(e,t)=>{let r={path:[],issues:[]},n=e(t,r);return n===rn?{ok:!1,issues:r.issues}:{ok:!0,value:n}},dp=e=>_o(fg,e),cp=e=>_o(ap,e),up=e=>_o(sp,e),pp=e=>_o(ip,e),mp=e=>_o(lp,e);var fp=["auth-required","forbidden","resync-required"],hl=15e3,yp="lastEventId",yg=/^\d{1,15}-\d{1,15}$/,Wa=e=>yg.test(e);var Lo=e=>be.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 be.NEVER}),_O=Lo(cp),LO=Lo(up),NO=Lo(pp),bl=Lo(mp),Rr=Lo(dp),No=be.string().regex(Va),Rp=be.object({type:be.literal("connected")}),hp=be.object({type:be.literal("status-update"),reportHubId:qe,statusType:be.enum(["star","read"]),value:be.boolean(),readContentDigest:be.string().regex(xo).nullable(),clientTempId:No}),Sl=be.string(),bp=be.object({type:be.literal("comment-add"),reportHubId:qe,comment:bl,clientTempId:No,sourceType:Sl}),Sp=be.object({type:be.literal("comment-delete"),reportHubId:qe,commentId:qe,clientTempId:No,sourceType:Sl}),za={recipientRawUserId:qe.optional()},Rg=hp.extend(za),hg=bp.extend(za),bg=Sp.extend(za),Ln={reportHubId:qe,report:Rr,clientTempId:No},gl={...za,actorRawUserId:qe},El={viewerIsActor:be.boolean()},Sg=be.object({type:be.literal("report-create"),...Ln,...El}),gg=be.object({type:be.literal("report-update"),...Ln,...El}),Eg=be.object({type:be.literal("report-publish"),...Ln,...El}),Dg=be.object({type:be.literal("report-create"),...Ln,...gl}),Tg=be.object({type:be.literal("report-update"),...Ln,...gl}),wg=be.object({type:be.literal("report-publish"),...Ln,...gl}),gp=be.object({type:be.literal("report-delete"),reportHubId:qe,clientTempId:No,sourceType:Sl}),Ep=be.discriminatedUnion("type",[Rp,hp,bp,Sp,Sg,gg,Eg,gp]),OO=be.discriminatedUnion("type",[Rp,Rg,hg,bg,Dg,Tg,wg,gp]);var Ka="ids-columns",Dl=e=>{if(typeof e!="object"||e===null)return"unknown";let{kind:t}=e;return t==="chunk"?"chunk":t==="error"?"error":"unknown"},Ag=e=>typeof e=="number"&&Mt(e),xg=e=>{if(typeof e!="object"||e===null)return!1;let{businessDate:t,reportHubId:r}=e;return(t===null||typeof t=="string")&&typeof r=="number"},vg=4,Cg=e=>{let t=vg;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}}},Ig=/^[0-9a-f]{1,16}$/,_g=e=>Mt(e.reportHubId)&&(e.businessDate===null||wo(e.businessDate)),Lg=e=>typeof e=="string"&&Ig.test(e),Ng=Object.freeze({kind:"absent"}),Og=Object.freeze({kind:"value",value:null}),Mg=e=>e===void 0?Ng:e===null?Og:typeof e=="string"&&Wa(e)?{kind:"value",value:e}:{kind:"malformed",received:e},Dp=e=>{if(Dl(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:m}=e;if(typeof s!="boolean"||!(i===null||xg(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 h of o)if(!(h===null||typeof h=="string"))return null;let p=Cg(t.length),f=0,y=null,S=0;for(let h=0;h<r.length;h++){let D=r[h],g=n[h];if(!(D===null||typeof D=="string"&&wo(D))||h>0&&D===r[h-1]||typeof g!="number"||!Number.isSafeInteger(g)||g<1)return null;let R=f+g;if(R>t.length)return null;for(;f<R;f++){let b=t[f],E=a[f];if(!(Ag(b)&&p(b))||typeof E!="number"||!Number.isSafeInteger(E)||E<0||E>=o.length||f>0&&!Pg(y,S,D,b))return null;y=D,S=b}}return f!==t.length?null:{rows:e,isLast:s,resumeCursor:i!==null&&_g(i)?i:null,total:typeof l=="number"&&Number.isSafeInteger(l)&&l>=0?l:null,snapshot:Lg(d)?d:null,provisional:c===!0,restarted:u===!0,streamAnchor:Mg(m)}},Tp=(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 wp=(e,t,r,n)=>e!==r?e===null?1:r===null||e>r?-1:1:n-t,Pg=(e,t,r,n)=>wp(e,t,r,n)<0,Ap=(e,t)=>wp(e.businessDate,e.reportHubId,t.businessDate,t.reportHubId);var $e=Object.freeze({businessDate:"business-date",idsStream:Ka,report:"report",search:"search",reports:"reports",searchMarks:"search-marks",searchFacets:"search-facets",action:"action"}),Ue=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 xp=(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)}}},VO=Object.freeze(["API","Action","Attachment","ExternalSource","Isolation","Reads","Refresh","Search","SSE","SseReader","Server","Service","Streams","Visibility","ActionProvider","DetailLoader","IdsStream","SseConnection"]),vp=e=>`[DailyReport${e}]`,kt=(e,t,r)=>e===void 0?xp(t,vp(r)):xp(0,vp(r),e);import{z as Ft}from"zod/v3";var kg=Ft.discriminatedUnion("outcome",[Ft.object({reportHubId:qe,outcome:Ft.literal("ok"),report:Rr}).strict(),Ft.object({reportHubId:qe,outcome:Ft.literal("not_found")}).strict(),Ft.object({reportHubId:qe,outcome:Ft.literal("failed")}).strict()]),Cp=e=>Ft.object({outcomes:Ft.array(kg)}).strict().superRefine(({outcomes:t},r)=>{t.length!==e.length&&r.addIssue({code:Ft.ZodIssueCode.custom,path:["outcomes"],message:"must hold one outcome per requested id"}),t.forEach((n,o)=>{n.reportHubId!==e[o]&&r.addIssue({code:Ft.ZodIssueCode.custom,path:["outcomes",o,"reportHubId"],message:"must be the requested id at this position"}),n.outcome==="ok"&&n.report.reportHubId!==n.reportHubId&&r.addIssue({code:Ft.ZodIssueCode.custom,path:["outcomes",o,"report","reportHubId"],message:"must be the outcome's id"})})});var hr=Object.freeze({maxQueryLength:500,maxSets:16,maxWordsPerSet:16,maxWords:32,maxWordLength:100,maxDetailIds:100}),Fg=2,Oo=2,Nn=Object.freeze({word:0,reading:1}),Mo=e=>e===Nn.word||e===Nn.reading;var br=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},Hg=2*(1+Fg),Bg=e=>{if(!Array.isArray(e)||e.length===0||e.length>Hg)return null;let t=[],r=new Set;for(let n of e){if(!br(n))return null;let{text:o,tier:a}=n;if(typeof o!="string"||o.length===0||o.length>hr.maxWordLength||r.has(o)||!Mo(a)||(t.length===0?a!==Nn.word:a<t[t.length-1].tier))return null;r.add(o),t.push({text:o,tier:a})}return t},Ug=(e,t)=>{if(!Array.isArray(e))return null;if(!t)return e.length===0?[]:null;if(e.length===0||e.length>hr.maxSets)return null;let r=[],n=0;for(let o of e){if(!Array.isArray(o)||o.length===0||o.length>hr.maxWordsPerSet||(n+=o.length,n>hr.maxWords))return null;let a=[];for(let s of o){let i=Bg(s);if(i===null)return null;a.push(i)}r.push(a)}return r},Ip=(e,t)=>{if(!br(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=Ug(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"||!wo(d))||typeof c!="string"||c.length===0)return null;s.push({reportHubId:l,businessDate:d,sourceType:c})}return{items:s,words:a}};var $a=e=>e.issues.map(t=>`${t.path.length===0?"(root)":t.path.join(".")}: ${t.code}`).join("; ");var Vg=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,Me=(e,t,r)=>new RangeError(`[daily-report] ${e} must be ${t}; got ${Vg(r)}`),_p=(e,t)=>new TypeError(`[daily-report] ${e} must be ${t}`),Po=(e,t,r)=>Me(e,`one of ${r.map(n=>JSON.stringify(n)).join(", ")}`,t),ut=(e,t,r,n)=>{if(typeof t=="number"&&Number.isSafeInteger(t)&&t>=r&&(n===void 0||t<=n))return t;throw Me(e,n===void 0?`an integer >= ${r}`:`an integer from ${r} to ${n}`,t)};var ja=({hasListener:e,batchSize:t,inFlightBound:r,send:n})=>{ut("createIdBatchScheduler: batchSize",t,1),ut("createIdBatchScheduler: inFlightBound",r,1);let o=new Set,a=new Map,s=!1,i=()=>{let c=[],u=[...o];for(let m=u.length-1;m>=0&&c.length<t;m--){let p=u[m];o.delete(p),e(p)&&c.push(p)}return c.reverse()},l=c=>{let u=new AbortController;a.set(u,c);let m=()=>{a.delete(u),d()},p=f=>{m(),u.signal.aborted&&f===u.signal.reason||globalThis.reportError(f)};n(c,u.signal).then(m,p)},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[m,p]of a)m.signal.aborted||!p.includes(c)||p.some(e)||(m.abort(),u.push(...p));return u},dispose:()=>{let c=[...o];o.clear();for(let[u,m]of a)u.signal.aborted||(u.abort(),c.push(...m));return c}}};var Wg=/^[1-9][0-9]*$/,zg=/^(?:0|[1-9][0-9]*)$/,Lp=e=>{if(e===null||!Wg.test(e))return null;let t=Number(e);return Mt(t)?t:null},On=e=>{if(e===null||!zg.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null};var Kg=2**31-1,Ga=(e,t)=>{let r=ut("holdDelayMsOf: maxDelayMs",t,0,Kg),n=On(e.headers.get("Retry-After"));if(n===null)return null;let o=n*1e3;return o<=r?o:null};var Np={request:e=>requestAnimationFrame(e),cancel:e=>cancelAnimationFrame(e)},Op=({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 oE}from"@aiquants/virtualscroll";import{createContext as aE,useMemo as sE}from"react";import{useContext as $g}from"react";var Gt=(e,t,r)=>{let n=$g(e);if(n===null)throw new Error(`[daily-report] ${t} must be used within a ${r}`);return n};import{resolveVirtualScrollLabels as jg,resolveVirtualScrollLocale as Gg,VIRTUAL_SCROLL_LABEL_CATALOGS as Mp,VIRTUAL_SCROLL_LABEL_KEYS as Al}from"@aiquants/virtualscroll";var Fp=["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","markUpdateRead","updatedSinceRead","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"],Hp=["totalCount","debounce","streamProgressCount","streamProgressRatio","streamRetrying","reportLoadFailed","reportSummaryLoadFailed","interviewerWithAffiliation","operationFailed","noticeRepeated","rowState","rowEditingState","listRowPosition","listRowPositionInUnknownTotal","searchHitCount","searchFailed","searchMatchedKeywords","searchMatchedKeywordsDescription","searchFieldMatched","searchFieldMatchedByReading","searchFiltersToggle","searchFiltersFailed"],Tl=[...Al,...Fp,...Hp];var Pp=Object.freeze({en:"en-US",ja:"ja-JP"}),Yg=Object.freeze({en:new Intl.NumberFormat(Pp.en),ja:new Intl.NumberFormat(Pp.ja)}),Ce=(e,t)=>Yg[e].format(t),qg=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"}),Xg=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"}),Qg=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"}),Zg=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"}),Jg=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"}),eE=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"}),tE={unread:"Unread",read:"Read",updatedSinceRead:"Read, updated since"},rE={unread:"\u672A\u8AAD",read:"\u65E2\u8AAD",updatedSinceRead:"\u65E2\u8AAD\u5F8C\u306B\u66F4\u65B0\u3042\u308A"},wl=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",markUpdateRead:"Mark the update as read",updatedSinceRead:"Updated",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: ${Ce("en",e)}`,debounce:e=>`Debounce: ${e} ms`,streamProgressCount:e=>`Loading ${Ce("en",e)}`,streamProgressRatio:(e,t,r)=>`Loading ${Ce("en",e)} / ${Ce("en",t)} (${r}%)`,streamRetrying:e=>`Reconnecting... (${Ce("en",e)} received)`,reportLoadFailed:e=>`Failed to load report ${Ce("en",e)}.`,reportSummaryLoadFailed:e=>`Failed to load the summary of report ${Ce("en",e)}.`,interviewerWithAffiliation:(e,t)=>`${e} (${t})`,operationFailed:e=>`Failed to ${Xg[e]}. Please try again later.`,noticeRepeated:e=>`(${Ce("en",e)} times)`,rowState:({readState:e,isStarred:t})=>`${tE[e]}${t?", starred":""}`,rowEditingState:({isDraft:e})=>e?"Editing draft":"Editing",listRowPosition:(e,t)=>`${Ce("en",e)} of ${Ce("en",t)}`,listRowPositionInUnknownTotal:e=>`Item ${Ce("en",e)}`,searchHitCount:e=>`${Ce("en",e)} ${e===1?"hit":"hits"}`,searchFailed:e=>Zg[e],searchMatchedKeywords:(e,t)=>`Match ${e}/${t}`,searchMatchedKeywordsDescription:(e,t)=>`Matches ${e} of ${t} keywords`,searchFieldMatched:e=>`${e} matched`,searchFieldMatchedByReading:e=>`${e} matched by its romaji reading`,searchFiltersToggle:e=>e===0?"Filters":`Filters (${Ce("en",e)})`,searchFiltersFailed:e=>eE[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",markUpdateRead:"\u66F4\u65B0\u3092\u65E2\u8AAD\u306B\u3059\u308B",updatedSinceRead:"\u66F4\u65B0\u3042\u308A",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: ${Ce("ja",e)} \u4EF6`,debounce:e=>`\u30C7\u30D0\u30A6\u30F3\u30B9: ${e} ms`,streamProgressCount:e=>`\u8AAD\u307F\u8FBC\u307F\u4E2D ${Ce("ja",e)} \u4EF6`,streamProgressRatio:(e,t,r)=>`\u8AAD\u307F\u8FBC\u307F\u4E2D ${Ce("ja",e)} / ${Ce("ja",t)} (${r}%)`,streamRetrying:e=>`\u518D\u63A5\u7D9A\u4E2D... (${Ce("ja",e)} \u4EF6\u53D7\u4FE1\u6E08)`,reportLoadFailed:e=>`\u65E5\u5831 ${Ce("ja",e)} \u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002`,reportSummaryLoadFailed:e=>`\u65E5\u5831 ${Ce("ja",e)} \u306E\u6982\u8981\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002`,interviewerWithAffiliation:(e,t)=>`${e} (${t})`,operationFailed:e=>`${qg[e]}\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002\u6642\u9593\u3092\u304A\u3044\u3066\u518D\u5EA6\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002`,noticeRepeated:e=>`(${Ce("ja",e)} \u56DE\u76EE)`,rowState:({readState:e,isStarred:t})=>`${rE[e]}${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 ${Ce("ja",t)} \u4EF6\u4E2D ${Ce("ja",e)} \u4EF6\u76EE`,listRowPositionInUnknownTotal:e=>`${Ce("ja",e)} \u4EF6\u76EE`,searchHitCount:e=>`${Ce("ja",e)} \u4EF6\u30D2\u30C3\u30C8`,searchFailed:e=>Qg[e],searchMatchedKeywords:(e,t)=>`\u4E00\u81F4 ${e}/${t}`,searchMatchedKeywordsDescription:(e,t)=>`\u30AD\u30FC\u30EF\u30FC\u30C9 ${t} \u500B\u306E\u3046\u3061 ${e} \u500B\u306B\u4E00\u81F4`,searchFieldMatched:e=>`${e}\u3067\u4E00\u81F4`,searchFieldMatchedByReading:e=>`${e}\u304C\u30ED\u30FC\u30DE\u5B57\u306E\u8AAD\u307F\u3067\u4E00\u81F4`,searchFiltersToggle:e=>e===0?"\u7D5E\u308A\u8FBC\u307F":`\u7D5E\u308A\u8FBC\u307F (${Ce("ja",e)})`,searchFiltersFailed:e=>Jg[e]})}),Bp=Object.freeze({en:Object.freeze({...Mp.en,...wl.en}),ja:Object.freeze({...Mp.ja,...wl.ja})}),nE=e=>{let t={},r=!1;for(let n of Al){let o=Object.hasOwn(e,n)?e[n]:void 0;o!==void 0&&(t[n]=o,r=!0)}return r?t:void 0},kp=(e,t,r)=>{e[t]=r},xl=(e,t)=>{let r=Gg(e);if(t===void 0)return Bp[r];if(t===null||typeof t!="object")throw Me("labels","an object",t);let n=Object.getPrototypeOf(t);if(n!==Object.prototype&&n!==null)throw Me("labels","a plain object (prototype Object.prototype or null)",t);for(let s of Object.keys(t))if(!Tl.includes(s))throw Po("labels key",s,Tl);let a={...jg(r,nE(t)),...wl[r]};for(let s of Fp){let i=Object.hasOwn(t,s)?t[s]:void 0;if(i!==void 0){if(typeof i!="string"||i.trim()==="")throw Me(`labels.${s}`,"a non-blank string",i);kp(a,s,i)}}for(let s of Hp){let i=Object.hasOwn(t,s)?t[s]:void 0;if(i!==void 0){if(typeof i!="function")throw Me(`labels.${s}`,"a function",i);kp(a,s,i)}}return Object.freeze(a)},Up=e=>{let t={};for(let r of Al)t[r]=e[r];return Object.freeze(t)};import{jsx as vl,jsxs as bE}from"react/jsx-runtime";var iE=e=>({Internal:{label:e.sourceInternal,badgeClassName:"bg-emerald-100 text-emerald-900 dark:bg-emerald-900/30 dark:text-emerald-400"}}),lE=`${de} text-xs`,dE=({title:e,annotation:t})=>bE("header",{className:"flex flex-wrap items-baseline justify-between gap-2 px-2 py-1",children:[vl("span",{className:"text-nowrap text-slate-700 text-sm dark:text-slate-200",children:e}),t?vl("span",{className:lE,children:t}):null]}),ko=Object.freeze({apiBasePath:"/daily_report/api",ssePath:"/sse/daily_report/updates",renderHeader:dE,showDevControls:!1,headingLevel:3}),Vp=["apiBasePath","ssePath","locale","labels","sourceTypeConfigs","renderHeader","showDevControls","headingLevel","onError","onSessionExpired","search"];var cE=e=>{for(let t of Object.keys(e))if(!Vp.includes(t))throw Po("config key",t,Vp)},Wp=[2,3,4,5],uE=e=>{if(e===void 0)return ko.headingLevel;let t=Wp.find(r=>r===e);if(t===void 0)throw Me("config.headingLevel",`one of ${Wp.join(", ")} (the level of each report's heading)`,e);return t},zp=["debounceMs","renderFilterSelect"],pE=Object.freeze({min:300,max:5e3}),mE=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},fE=e=>{if(e===void 0)return null;if(typeof e!="function")throw Me("config.search.renderFilterSelect","a function (it renders the control of each filter cell)",e);return e},yE=e=>{if(e===void 0)return null;if(!mE(e))throw Me("config.search","a plain object ({} for Enter only, or { debounceMs })",e);for(let o of Object.keys(e))if(!zp.includes(o))throw Po("config.search key",o,zp);let t=e.debounceMs,{min:r,max:n}=pE;return{debounceMs:t===void 0?null:ut("config.search.debounceMs",t,r,n),renderFilterSelect:fE(e.renderFilterSelect)}},RE=e=>{for(let[t,r]of Object.entries(e)){let n=r.name;if(n!==void 0&&(typeof n!="string"||n.trim()===""))throw Me(`config.sourceTypeConfigs.${t}.name`,"a non-blank string (the expansion of the badge label)",n)}return e},hE=e=>{cE(e);let t=e.onSessionExpired;if(t===void 0)throw _p("config.onSessionExpired","a function (the host decides the navigation on session expiry)");if(typeof t!="function")throw Me("config.onSessionExpired","a function (the host decides the navigation on session expiry)",t);let r=oE(e.locale),n=xl(r,e.labels),o=ko;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?iE(n):RE(e.sourceTypeConfigs),renderHeader:e.renderHeader===void 0?o.renderHeader:e.renderHeader,showDevControls:e.showDevControls===void 0?o.showDevControls:e.showDevControls,headingLevel:uE(e.headingLevel),onError:e.onError,onSessionExpired:e.onSessionExpired,search:yE(e.search)}},Kp=aE(null),Cl=({config:e,children:t})=>{let r=sE(()=>hE(e),[e]);return vl(Kp.Provider,{value:r,children:t})},q=()=>Gt(Kp,"useDailyReportConfig","DailyReportConfigProvider"),Sr=(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 gE}from"@aiquants/virtualscroll";var SE=4;var Mn=120,$p=1e3,qa=.8,Il={maxVelocity:18,deceleration:.0018,startVelocityThreshold:.03},Xa=20,_l=24,Pn=8,Ho=_l+Pn,jp=6,Qa={reportHubId:-1,businessDate:null},Za=240,Ja=15,EE=8,Gp=460,Yp=3,qp=440,Xp=8,DE={enabled:!0,renderVisual:gE,maxSpeedCurve:{exponentialSteepness:3,exponentialScale:8},maxSpeedMultiplier:8,className:"[[data-daily-report-keyboard-focus]_&]:invisible"},es={width:EE,tapScrollCircleOptions:DE,enableArrowButtonTabStops:!1},ts=["pen","touch"];var Pl=kt(void 0,1,"DetailLoader"),Qp=(e,t)=>{let r=globalThis[e];return typeof r=="number"&&!Number.isNaN(r)?r:t},Ll=null,os=()=>(Ll===null&&(Ll={ttl:Qp("__DAILY_REPORT_CACHE_TTL__",3e5),reviveMs:Qp("__DAILY_REPORT_CACHE_REVIVE_MS__",6e4)}),Ll),se={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=>{se.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=Ao(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()){Pl.warn(`Stale update skipped id=${e}`);return}this.set({...n.data,...t},Math.max(n.expiresAt,Date.now()+os().reviveMs))}},delete(e,t){this.reports.delete(e);let r=Ao(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+os().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}},nm=(e,t,r=!0)=>se.set(e,t,r),ht=(e,t)=>se.getReport(e,t?.ignoreExpiry),Ht=(e,t)=>se.update(e,t),is=(e,t)=>se.delete(e,t),Uo=()=>{se.clear(),rs.clear(),kE()},as=(e,t)=>{let r=se.lastMutations.get(e);(r===void 0||r<t)&&se.lastMutations.set(e,t)},kl=e=>{as(e,Date.now())},om=e=>{let t=Symbol("mutation-lock"),r=se.lockHolders.get(e);return r===void 0?se.lockHolders.set(e,new Set([t])):r.add(t),as(e,Date.now()),()=>{let n=se.lockHolders.get(e);n===void 0||!n.delete(t)||(n.size===0&&se.lockHolders.delete(e),as(e,Date.now()))}},am=(e,t)=>{let r=performance.now()+t,n=se.lockHolds.get(e);(n===void 0||n<r)&&se.lockHolds.set(e,r),as(e,Date.now()+t)},sm=e=>se.recentDeletes.set(e,Date.now()),im=(e,t)=>{let r=n=>{n===e&&t()};return se.listeners.add(r),()=>{se.listeners.delete(r)}},gr=(e,t)=>{se.prune(),se.set(t,Date.now()+os().ttl)},lm=e=>{se.prune();let t=se.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}));se.set({...e,isRead:t?.isRead??!1,isStarred:t?.isStarred??!1,readContentDigest:t?.readContentDigest??null,postedComments:n},Date.now()+os().ttl)},vE=Ol.object({report:Rr}),CE=Ol.object({reports:Ol.array(Rr)}),ss=class extends Error{constructor(t,r){super(`[daily-report] ${t} answered HTTP ${r}`),this.name="DailyReportReadHttpError",this.status=r}},dm=(e,t)=>new ss(e,t),Zp=e=>e instanceof ss&&(e.status===401||e.status===403),IE=e=>new Error(`[daily-report] ${$e.reports} answered the outcome failed for report ${e}`),Fl=async(e,t,r)=>{if(!e.ok)throw dm(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 (${$a(n.error)})`);return n.data},_E=async(e,t)=>{let r=se.getReport(t);if(r)return r;let n=se.pendingReports.get(t);if(n)return n;let o=Date.now(),a=new URLSearchParams({[Ue.reportHubId]:String(t)}),s=fetch(`${e}/${$e.report}?${a}`,{cache:"no-cache"}).then(i=>Fl(i,vE,$e.report)).then(({report:i})=>se.cacheMany([i],null,o)[0]).finally(()=>se.pendingReports.delete(t));return se.pendingReports.set(t,s),s},rs=new Map,LE=1e4,NE=(e,t)=>{let r=rs.get(t),n=Date.now();if(r&&n-r.at<LE)return r.inFlight;let o=Hl(e,t,{forceRefresh:!0}),a={at:n,inFlight:o};return rs.set(t,a),o.finally(()=>{rs.get(t)===a&&(a.inFlight=null)}).catch(()=>{}),o},Hl=async(e,t,r={})=>{let n=r.forceRefresh?null:se.getList(t);if(n)return n;let o=se.pendingLists.get(t);if(o)return o;let a=Date.now(),s=new URLSearchParams({[Ue.businessDate]:t}),i=fetch(`${e}/${$e.businessDate}?${s}`,{cache:"no-cache"}).then(l=>Fl(l,CE,$e.businessDate)).then(({reports:l})=>se.cacheMany(l,t,a)).finally(()=>se.pendingLists.delete(t));return se.pendingLists.set(t,i),i},OE=async(e,t,r)=>{let n=se.getList(r)!==null,a=(await Hl(e,r)).find(i=>i.reportHubId===t);if(a!==void 0)return a;if(!n)return null;let s=await NE(e,r);return s===null?null:s.find(i=>i.reportHubId===t)??null},ME=5e3,Ml=new Map,PE=e=>{let t=new Map,r=new Map,n=new Map,o=new Set,a=(p,f)=>{let y=[];for(let S of p)r.get(S)===f&&(r.delete(S),y.push(S));return y},s=(p,f)=>{let y=t.get(p);if(y!==void 0){t.delete(p),o.delete(p);for(let S of y)f(S)}},i=(p,f)=>{let S=setTimeout(()=>{for(let h of p)n.delete(h),t.has(h)&&(o.add(h),u.enqueue(h))},f);for(let h of p)n.set(h,S)},l=(p,f,y)=>{let S=[];for(let h of p)f!==null&&t.has(h)&&!o.has(h)?S.push(h):s(h,D=>D.reject(y));f!==null&&S.length>0&&i(S,f)},d=(p,f)=>{let y=[];for(let D of p)D.outcome==="ok"&&y.push(D.report);let S=se.cacheMany(y,null,f),h=0;for(let{reportHubId:D,outcome:g}of p){if(r.delete(D),g==="failed"){let b=IE(D);s(D,E=>E.reject(b));continue}let R=g==="ok"?S[h++]:null;s(D,b=>b.resolve(R))}},c=async(p,f)=>{for(let h of p)r.set(h,f);let y=Date.now(),S=new URLSearchParams({[Ue.reportIds]:p.join(",")});try{let h=await fetch(`${e}/${$e.reports}?${S}`,{cache:"no-cache",signal:f});if(h.status===429){l(a(p,f),Ga(h,ME),dm($e.reports,h.status));return}let{outcomes:D}=await Fl(h,Cp(p),$e.reports);if(f.aborted)return;d(D,y)}catch(h){for(let D of a(p,f))s(D,g=>g.reject(h))}},u=ja({hasListener:p=>t.has(p),batchSize:hr.maxDetailIds,inFlightBound:Oo,send:c}),m=Op({frames:Np,handOn:p=>{for(let f of p)u.enqueue(f)}});return{readers:t,pending:r,holds:n,retried:o,gate:m,scheduler:u}},kE=()=>{for(let{readers:e,pending:t,holds:r,retried:n,gate:o,scheduler:a}of Ml.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)}},Jp=new DOMException("The detail reader left its batched read","AbortError"),FE=(e,t,r)=>new Promise((n,o)=>{let a=Ml.get(e);a===void 0&&(a=PE(e),Ml.set(e,a));let{readers:s,pending:i,holds:l,retried:d,gate:c,scheduler:u}=a,m={resolve:n,reject:o},p=s.get(t);p===void 0?s.set(t,new Set([m])):p.add(m),c.holds(t)||u.isWanted(t)||i.has(t)||l.has(t)||c.enter(t);let f=()=>{let y=s.get(t);if(!(y===void 0||!y.delete(m))&&(o(r.reason),!(y.size>0))){s.delete(t),d.delete(t),c.leave(t);for(let S of u.release(t))i.delete(S)}};r.addEventListener("abort",f,{once:!0})}),kn=TE("date"),HE=Object.freeze({report:null,error:null,isLoading:!1,isRefetching:!1}),BE=Object.freeze({report:null,error:new Error("Invalid ID"),isLoading:!1,isRefetching:!1}),UE=Object.freeze({report:null,error:null,isLoading:!0,isRefetching:!1}),em=new WeakMap,VE=e=>{let t=em.get(e);if(t!==void 0)return t;let r=Object.freeze({report:e,error:null,isLoading:!1,isRefetching:!1});return em.set(e,r),r},ns=(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)}},tm=(e,t,r)=>{if(t<0)return HE;if(t===0)return BE;let{report:n}=ns(e,t,r);return n===null?UE:VE(n)},WE=(e,t)=>Object.keys(t).some(n=>e[n]!==t[n])?Object.freeze({...e,...t}):e,Nl=()=>{},zE=({apiBasePath:e,detailSource:t,cache:r})=>{let n=new Map,o=(u,m)=>{let p=WE(u.record,m);if(p!==u.record){u.record=p;for(let f of u.listeners)f()}},a=u=>{let m=n.get(u);if(m===void 0)return;let{report:p,isStale:f}=ns(r,u,m.dateKey);o(m,p!==null&&!f&&m.record.isRefetching?{report:p,error:null,isLoading:!1,isRefetching:!1}:{report:p})},s=(u,m,p)=>{let{record:f}=m;if(f.report!==null&&f.error===null&&!Zp(p)){Pl.warn(`Refetch failed, the shown report stays id=${u}`,p),o(m,{isLoading:!1,isRefetching:!1});return}o(m,{error:p,isLoading:!1,isRefetching:!1})},i=(u,m)=>{let{dateKey:p}=m,{report:f,isStale:y}=ns(r,u,p);if(f!==null&&!y)return o(m,{report:f,error:null,isLoading:!1,isRefetching:!1}),Nl;o(m,{isLoading:f===null,isRefetching:!0});let S=null,h=!1,D=async()=>{let R;try{t==="ids"?(S=new AbortController,R=await FE(e,u,S.signal)):p!==null?R=await OE(e,u,p):R=await _E(e,u)}catch(b){h||s(u,m,b instanceof Error?b:new Error("Load failed"));return}h||o(m,{report:R,error:null,isLoading:!1,isRefetching:!1})};if(f===null)return D(),()=>{h=!0,S?.abort(Jp)};let g=setTimeout(D,Mn);return()=>{h=!0,clearTimeout(g),S?.abort(Jp)}},l=(u,m)=>{let{record:p}=m;return p.isRefetching?!1:p.error!==null?!Zp(p.error):ns(r,u,m.dateKey).isStale},d=(u,m)=>{let p=Ao(m),f={record:tm(r,u,p),dateKey:p,listeners:new Set,stop:Nl};return n.size===0&&r.listeners.add(a),n.set(u,f),f.stop=i(u,f),f},c=(u,m)=>{n.delete(u),n.size===0&&r.listeners.delete(a),m.stop()};return{read:u=>{let m=n.get(u);return m===void 0?tm(r,u,null):m.record},subscribe:(u,m,p)=>{if(u<=0)return Nl;let f=n.get(u),y=f===void 0?d(u,m):f;return!y.listeners.has(p)&&l(u,y)&&(y.stop(),y.stop=i(u,y)),y.listeners.add(p),()=>{!y.listeners.delete(p)||y.listeners.size>0||c(u,y)}}}},KE={date:new Map,ids:new Map},$E=(e,t)=>{let r=KE[t],n=r.get(e);if(n!==void 0)return n;let o=zE({apiBasePath:e,detailSource:t,cache:se});return r.set(e,o),o},nn=()=>{let{apiBasePath:e}=q(),t=rm(kn);return $E(e,t)},Bl=(e,t)=>{let r=nn(),[n,o]=xE(()=>({reportHubId:e,resource:r.read(e)})),a=n;return n.reportHubId!==e&&(a={reportHubId:e,resource:r.read(e)},o(a)),AE(()=>{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},Ul=()=>{let{apiBasePath:e}=q(),t=rm(kn);return wE(r=>{if(t==="ids")return;let n=Ao(r);n&&!se.getList(n)&&Hl(e,n).catch(o=>Pl.warn("Prefetch error",n,o))},[e,t])};import{VIRTUAL_SCROLL_LABEL_KEYS as jE}from"@aiquants/virtualscroll";import{useRef as GE}from"react";var ls=()=>{let{locale:e,labels:t}=q(),r=Up(t),n=GE(null),o=n.current;return o!==null&&jE.every(a=>o[a]===r[a])?{locale:e,labels:o}:(n.current=r,{locale:e,labels:r})};import{useState as YE}from"react";var Xe=e=>{let[t]=YE(()=>({current:e()}));return t};import{useLayoutEffect as oD,useState as aD}from"react";import{flushSync as sD}from"react-dom";var pm=Object.freeze({visibilityProperty:!0}),cm=new Set(["auto","scroll"]),um=new Set(["","true","plaintext-only"]),mm=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=Rm(n)?n.host:null}return!1},qE=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(pm))return!0;return!1},fm=e=>e.localName==="area"?qE(e):e.checkVisibility(pm),XE=e=>{let t=e.getAttribute("contenteditable");if(t===null||!um.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(um.has(o))return!1;if(o==="false")return!0}return!0},QE=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&&fm(n)&&(r=n)}return r===e},ZE=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&&cm.has(a.overflowX)||n&&cm.has(a.overflowY)},JE=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 XE(e)}},eD=/^[\t\n\f\r ]*[+-]?\d/,tD=e=>{let t=e.getAttribute("tabindex");return t!==null&&eD.test(t)?e.tabIndex:null},ym=(e,t)=>{for(let r of Wl(e))if(t(r)||ym(r,t))return!0;return!1},ds=(e,t)=>{let r=t.get(e);if(r!==void 0)return r;let n=rD(e,t);return t.set(e,n),n},rD=(e,t)=>{if(!Wo(e))return"none";let r=tD(e),n=r===null&&JE(e),o=r===null&&!n&&ZE(e);return!(r!==null||n||o)||e.matches(":disabled")||mm(e)||!fm(e)?"none":r!==null?r>=0?"sequential":"programmatic":n?e.localName==="input"&&e.type==="radio"?QE(e)?"sequential":"programmatic":"sequential":ym(e,a=>ds(a,t)==="sequential")?"none":"sequential"},Vl=(e,t)=>{for(let r of Wl(e))t(r),Vl(r,t)},Wl=e=>{if(Pe(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 Vo=(e,t)=>{let r=[],n=[],o=[],a=new Map;if(e===t)return Vl(e,l=>{ds(l,a)==="sequential"&&n.push(l)}),{before:r,within:n,after:o};let s=!1,i=(l,d)=>{for(let c of Wl(l)){let u=c===t;!u&&ds(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}},cs=e=>{let t=[],r=new Map;return Vl(e,n=>{ds(n,r)==="sequential"&&t.push(n)}),t},Pe=e=>e!==null&&"nodeType"in e&&e.nodeType===e.ELEMENT_NODE,Wo=e=>"focus"in e&&"blur"in e,nD=e=>e.nodeType===e.DOCUMENT_NODE,Rm=e=>e.nodeType===e.DOCUMENT_FRAGMENT_NODE&&"host"in e,tt=e=>{let t=e.getRootNode();if(Rm(t)){let r=t.activeElement;return r===null?tt(t.host):r}return nD(t)?t.activeElement:null},on=e=>{let t=tt(e);return t===null||t===t.ownerDocument.body||mm(t)},je=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 us=e=>{let[t,r]=aD(null);return oD(()=>{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?sD(()=>r(l)):r(l)},s=l=>{for(let d of l)a(d.borderBoxSize[0].blockSize)},i=new(je(n)).ResizeObserver(s);return i.observe(n,{box:"border-box"}),()=>i.disconnect()},[e]),t};var hm=255,zl=[null],bm=new Map,ps=[void 0],Sm=new Map,tr=e=>{if(e===null)return 0;let t=bm.get(e);if(t!==void 0)return t;let r=zl.length;return zl.push(e),bm.set(e,r),r},Er=e=>{let t=zl[e];if(t===void 0)throw new Error(`[daily-report] No business date has the code ${e}`);return t},zo=e=>{if(e===void 0)return 0;let t=Sm.get(e);if(t!==void 0)return t;let r=ps.length;if(r>hm)throw new Error(`[daily-report] The rows hold more than ${hm} distinct source types; ${e} has no code`);return ps.push(e),Sm.set(e,r),r},an=e=>{if(!(Number.isInteger(e)&&e>=0&&e<ps.length))throw new Error(`[daily-report] No source type has the code ${e}`);return ps[e]},er=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:Er(this.businessDateCodes[r]),sourceType:an(this.sourceTypeCodes[r])}}items(){let t=[];for(let r=0;r<this.length;r++)t.push(this.itemAt(r));return t}businessDateAt(t){return Er(this.businessDateCodes[this.rowIndexOf(t)])}sourceTypeAt(t){return an(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}`)}},gm=e=>{if(e instanceof er)return e;throw new Error("[daily-report] A row batch the package did not build has no code columns")},Bt=new er(0,new Float64Array(0),new Uint32Array(0),new Uint8Array(0)),iD=Float64Array.BYTES_PER_ELEMENT+Uint32Array.BYTES_PER_ELEMENT+Uint8Array.BYTES_PER_ELEMENT,Fn=e=>{let t=new ArrayBuffer(e*iD),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)}},Dr=(e,t,r)=>{if(r===0)return Bt;let n=t+r;return new er(r,e.ids.subarray(t,n),e.businessDateCodes.subarray(t,n),e.sourceTypeCodes.subarray(t,n))},lD=16,Yt=class{constructor(t=lD){this.count=0;this.columns=null;this.initialCapacity=ut("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,tr(t.businessDate),zo(t.sourceType))}pushFrom(t,r){this.push(t.ids[r],t.businessDateCodes[r],t.sourceTypeCodes[r])}build(){let t=this.columns;return t===null?Bt:Dr(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}},Kl=e=>{let t=new Yt(e.length);for(let r of e)t.pushItem(r);return t.build()};var qt=10,Ko=1<<qt,Bn=Ko-1,dD=Ko,cD=dD/2,Hn=new Map,Gl=new Map,Yl=(e,t,r)=>e.businessDate===t&&e.sourceType===r,uD=(e,t,r)=>{let n=Hn.get(e),o=n===void 0?Gl.get(e):n;return o!==void 0&&Yl(o,t,r)?o:void 0},ms=(e,t,r)=>{let n=Er(t),o=an(r),a=Hn.get(e);if(a!==void 0&&Yl(a,n,o))return a;let s=a===void 0?Gl.get(e):void 0,i=s!==void 0&&Yl(s,n,o)?s:{reportHubId:e,businessDate:n,sourceType:o};return Hn.set(e,i),Hn.size>=cD&&(Gl=Hn,Hn=new Map),i},Em=(e,t,r)=>{let n=Er(t),o=an(r),a=uD(e,n,o);return a===void 0?{reportHubId:e,businessDate:n,sourceType:o}:a};var Tt=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 Dm(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=Em(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}}}}},fs=new Tt([],0),Dm=(e,t)=>{let r=e.chunks[t>>>qt],n=t&Bn;return ms(r.ids[n],r.businessDateCodes[n],r.sourceTypeCodes[n])},sn=(e,t)=>e.chunks[t>>>qt].ids[t&Bn],Un=(e,t)=>e.chunks[t>>>qt].businessDateCodes[t&Bn],Xl=(e,t)=>e.chunks[t>>>qt].sourceTypeCodes[t&Bn],$l={businessDate:null,reportHubId:0},jl={businessDate:null,reportHubId:0},Vn=(e,t,r,n)=>($l.reportHubId=e,$l.businessDate=Er(t),jl.reportHubId=r,jl.businessDate=Er(n),Ap($l,jl)),Tm=e=>{if(e.length===0)return fs;let t=[];return wm(t,e,e.length),new Tt(t,e.length)},wm=(e,t,r)=>{for(let n=0;n<r;n+=Ko)e.push(Dr(t,n,Math.min(Ko,r-n)))},ln={removals:[],replacements:[],additions:Bt,insertions:[]},pD=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)),Dr(t,0,e.length)},mD=(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>>>qt,d=n.get(l);d===void 0&&(d=pD(e.chunks[l]),n.set(l,d),r[l]=d);let c=o&Bn;d.ids[c]=a,d.businessDateCodes[c]=s,d.sourceTypeCodes[c]=i}return new Tt(r,e.length)},Wn=(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((E,I)=>E-I),a=[...t.replacements].sort((E,I)=>E.index-I.index);if(o.length===0&&r.length===0)return mD(e,a);let s=e.length,i=s-o.length+r.length;if(i===0)return fs;let d=Math.min(o.length===0?s:o[0],a.length===0?s:a[0].index,r.length===0?s:n[0])>>>qt,c=e.chunks.slice(0,d),u=d<<qt,m=i-u,p=m===0?Bt:Fn(m),f=0,y=()=>{if(f===m)throw new Error(`[daily-report] Edits of a list of ${s} rows write more than the ${i} rows they leave`);return m-f},S=(E,I,x)=>{y(),p.ids[f]=E,p.businessDateCodes[f]=I,p.sourceTypeCodes[f]=x,f+=1},h=(E,I)=>{for(let x=E;x<I;){let P=e.chunks[x>>>qt],O=x&Bn,B=Math.min(I-x,Ko-O,y());p.ids.set(P.ids.subarray(O,O+B),f),p.businessDateCodes.set(P.businessDateCodes.subarray(O,O+B),f),p.sourceTypeCodes.set(P.sourceTypeCodes.subarray(O,O+B),f),f+=B,x+=B}},D=d<<qt,g=0,R=0,b=0;for(;;){let E=Math.min(g<o.length?o[g]:s,R<a.length?a[R].index:s,b<r.length?n[b]:s);for(h(D,E),D=E;b<r.length&&n[b]===E;b++)S(r.ids[b],r.businessDateCodes[b],r.sourceTypeCodes[b]);if(E===s)break;if(g<o.length&&o[g]===E)g+=1,D=E+1;else if(R<a.length&&a[R].index===E){let I=a[R];S(I.id,I.businessDateCode,I.sourceTypeCode),R+=1,D=E+1}}return wm(c,p,f),new Tt(c,u+f)},$o=(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<<qt)+s}return-1},Am=(e,t)=>{let r=$o(e,t);return r===-1?void 0:Dm(e,r)},ql=(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(Em(s,e.businessDateCodes[a],e.sourceTypeCodes[a]))}return t.set(e,o),o},xm=(e,t,r)=>{let n=[];if(!(e instanceof Tt)){for(let o of e)r(o.reportHubId)&&n.push(o);return n}for(let o of e.chunks){let a=ql(o,t,r);for(let s=0;s<a.length;s++)n.push(a[s])}return n},vm=(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=ql(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=ql(t.chunks[l],r,n);for(let c=0;c<d.length;c++)i.push(d[c])}return{before:s,after:i}};var Cm=(e,t)=>Number.isInteger(t)&&t>=0&&t<e.length,ke=(e,t)=>Cm(e,t)?e.at(t):void 0,fD=(e,t)=>e instanceof Tt?Cm(e,t)?sn(e,t):void 0:ke(e,t)?.reportHubId,yD=16,Im=(e,t)=>e!==null&&e.reportHubId===t?e.index:null,Fe=(e,t,r)=>{let n=r===null?void 0:ke(e,r);if(r!==null&&n!==void 0){if(n.reportHubId===t)return r;for(let o=1;o<=yD;o++){if(ke(e,r+o)?.reportHubId===t)return r+o;if(ke(e,r-o)?.reportHubId===t)return r-o}}return rr(e,t)},rr=(e,t)=>{if(e instanceof Tt)return $o(e,t);let r=0;for(let n of e){if(n.reportHubId===t)return r;r+=1}return-1},Ql=e=>{let t=ke(e,0);return t===void 0?null:t.reportHubId};var nr=(e,t)=>{let r=ke(e,t);if(r===void 0)throw _m(e,t);return r},ys=(e,t)=>{let r=fD(e,t);if(r===void 0)throw _m(e,t);return r},_m=(e,t)=>new Error(`[daily-report] No report at index ${t} of a list of ${e.length}`);var Rs="data-daily-report-row",Lm=`[${Rs}]`,Nm="data-daily-report-button",hs="data-daily-report-row-focus",bs={[hs]:""},Om="data-daily-report-view",Ss={[Om]:""},Zl="treegrid",RD='button, a[href], input, textarea, select, label, [role="button"], [contenteditable]:not([contenteditable="false"])',hD=/^[1-9]\d*$/,Mm=e=>{if(e===null||!hD.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null},Pm=e=>e.querySelector(`[${Om}] [role="${Zl}"]`),km=e=>e.querySelector(`[${hs}]`),dn=(e,t)=>{if(t===null||!Pe(e))return null;let r=e.closest(Lm);return r===null||r===t||!t.contains(r)?null:r},jo=e=>Mm(e.getAttribute(Rs)),Vr=e=>Mm(e.getAttribute("aria-posinset")),Fm=e=>{let t=e.closest(Lm),r=t===null?null:Vr(t);return r===null?null:r-1},Hm=(e,t)=>{if(e===null)return null;let r=jo(e);if(r===null)return null;let n=Vr(e),o=Fe(t,r,n===null?null:n-1);return o===-1?null:{reportHubId:r,index:o}},Bm=(e,t)=>{if(!Pe(e))return!1;let r=e.closest(RD);return r!==null&&r!==t&&t.contains(r)};import{createContext as Um}from"react";var cn=Um(0),Wr=-1,Vm=(e,t)=>t.phase==="complete"?e:t.totalCount===null?Wr:Math.max(e,t.totalCount),un=Um(-1);import{flushSync as bD}from"react-dom";var SD=()=>({deferring:!1,measuring:!1,queuedObservations:new Set,queuedMeasurements:new Set,frame:0}),Wm=(e,t)=>{e.queuedObservations.add(t),e.measuring&&e.queuedMeasurements.add(t)},zm=e=>{let t=new Set,r=SD(),n=[],o=null,a=()=>{try{bD(()=>e(n))}finally{n.length=0}},s=()=>{let l=r.queuedMeasurements;for(;l.size>0;){for(let d of l)n.push([d,d.getBoundingClientRect().height]);l.clear(),a()}},i=()=>{s(),r.measuring=!1};return{observe:l=>(t.add(l),o!==null&&(r.deferring?Wm(r,l):o.observe(l)),()=>{t.delete(l),r.queuedObservations.delete(l),r.queuedMeasurements.delete(l),o!==null&&o.unobserve(l)}),remeasure:l=>{if(o!==null){if(!r.deferring){o.observe(l);return}o.unobserve(l),Wm(r,l)}},attach:l=>{if(o!==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 d=()=>{r.frame=0,r.deferring=!1;for(let m of r.queuedObservations)u.observe(m);r.queuedObservations.clear()},c=m=>{r.deferring=!0,r.measuring=!0,l.cancelAnimationFrame(r.frame),r.frame=l.requestAnimationFrame(d);for(let p of m)n.push([p.target,p.borderBoxSize[0].blockSize]);a(),s(),queueMicrotask(i)},u=new l.ResizeObserver(c);for(let m of t)u.observe(m);return o=u,()=>{l.cancelAnimationFrame(r.frame),r.frame=0,r.deferring=!1,r.measuring=!1,r.queuedObservations.clear(),r.queuedMeasurements.clear(),u.disconnect(),o=null}}}};var gs=(e,t)=>{if(!(Number.isFinite(t)&&t>0))throw Me(e,"a finite number > 0",t)},Km=({seedPx:e,quantumPx:t})=>{gs("createRowHeightEstimate: quantumPx",t),gs("createRowHeightEstimate: seedPx",e);let r=l=>Math.ceil(l/t)*t;if(r(e)!==e)throw Me("createRowHeightEstimate: seedPx",`a multiple of the quantum ${t}`,e);let n=[],o=new Map,a=0,s=l=>{let d=0,c=n.length;for(;d<c;){let u=d+c>>>1;n[u].heightPx<l?d=u+1:c=u}return d},i=l=>{let d=0,c=n[0].count;for(;c<=l;)d+=1,c+=n[d].count;return n[d].heightPx};return{record:(l,d)=>{if(gs("RowHeightEstimate.record: nextPx",d),l!==null){gs("RowHeightEstimate.record: previousPx",l);let u=o.get(l);if(u===void 0)throw Me("RowHeightEstimate.record: previousPx","a recorded height",l);u.count-=1,u.count===0&&(o.delete(l),n.splice(s(l),1)),a-=1}let c=o.get(d);if(c===void 0){let u={heightPx:d,count:1};o.set(d,u),n.splice(s(d),0,u)}else c.count+=1;a+=1},estimate:()=>{if(a===0)return e;let l=i(a>>>1),d=a%2===1?l:(i((a>>>1)-1)+l)/2;return r(d)}}};import{useVirtualScrollItem as Jm}from"@aiquants/virtualscroll";import{createContext as ef,useCallback as ad,useContext as rd,useLayoutEffect as Jl,useReducer as gD,useRef as $m}from"react";import{flushSync as jm}from"react-dom";var ED=1/2,DD=32,TD=8,zn=16,wD=5,AD=3,xD=1.5,nd=2,Gm=1e3/60,vD=1,CD=1,od=()=>{},Kn=Object.freeze({visible:0,reach:1,near:2,far:3}),Es=Object.freeze({capture:!0,passive:!0}),ed=Object.freeze({type:"sync-release"}),Ym=Object.freeze({type:"deferred-visible"}),ID=Object.freeze({type:"oversize-frame"}),tf=(e,t)=>({sorted:new Float64Array(e),arrivals:new Float64Array(e),known:t,count:0,next:0,p50:null,p90:null}),qm=()=>({frameTime:0,onTime:0,start:0,inputEpoch:0,interval:0,units:0,reservoir:null,busy:null,rows:[]}),td=(e,t)=>({kind:Object.freeze({sizing:e,change:t}),...tf(DD,TD)}),Xm=e=>({body:td(e,"body"),box:td(e,"box"),marks:td(e,"marks")}),Qm=(e,t)=>{let{sorted:r,arrivals:n}=e,o=r.length;if(e.count===o){for(let s=r.indexOf(n[e.next]);s<o-1;s++)r[s]=r[s+1];e.count-=1}n[e.next]=t,e.next=(e.next+1)%o;let a=e.count;for(;a>0&&r[a-1]>t;a--)r[a]=r[a-1];r[a]=t,e.count+=1,!(e.count<e.known)&&(e.p50=r[Math.ceil(.5*e.count)-1],e.p90=r[Math.ceil(.9*e.count)-1])},_D=e=>{e.count=0,e.next=0,e.p50=null,e.p90=null},Zm=(e,t)=>{let r=e[0];for(let n=1;n<t;n++)e[n]<r&&(r=e[n]);return r},LD=(e,t)=>e.zone!==t.zone?e.zone<t.zone:e.second!==t.second?e.second<t.second:e.third<t.third,ND=(e,t)=>{t.zone=e.zone,t.second=e.second,t.third=e.third,t.paneReach=e.paneReach},Go=e=>(e<Gm-vD?Gm:e)-nd,OD=e=>(Math.round(Go(e)/e)-1+xD)*e,rf=({gridId:e,isHolding:t,subscribeHold:r,keySteps:n,activeIndex:o,indexOf:a,pane:s,observe:i})=>{let l=new Map,d=new Map,c=new Map,u=new Map,m=new Map,p={fixed:Xm("fixed"),measured:Xm("measured")},f=Object.values(p).flatMap(N=>Object.values(N)),y=null,S=null,h=0,D=null,g=1,R=null,b=null,E=null,I=!1,x=1,P=!1,O={zone:0,second:0,third:0,paneReach:!1},B={zone:0,second:0,third:0,paneReach:!1},w=N=>{i!==void 0&&i(N)},_=N=>{if(R===null)return!1;let V=Go(R),{p50:K}=p[N.sizing][N.change];return K!==null&&K>V||N.sizing==="measured"&&b!==null&&b>V&&t()},A=()=>{if(R===null)return!1;let N=Go(R);if(b!==null&&b>N)return!0;for(let{p50:V}of f)if(V!==null&&V>N)return!0;return!1},T=()=>{let N=o();return N!==null&&D!==null&&N!==D&&(g=N>D?1:-1),D=N,N},L=(N,V,K)=>_(N)||V==="far"&&K!==g,F=(N,V,K,re,he)=>{O.zone=N.deferredVisible?Kn.visible:Kn[V],O.second=K===null?Number.POSITIVE_INFINITY:re===null?K:Math.abs(K-re),O.third=he===-g?1:0,O.paneReach=!1},U=(N,V,K,re,he)=>{let H=re.visibleStartIndex,ee=re.visibleEndIndex,te=K===null?0:K>ee?1:K<H?-1:0,Ee=K===null?Number.POSITIVE_INFINITY:te===1?K-ee:te===-1?H-K:0,Te=he&&te===x&&Ee<=ee-H+1;O.zone=N.deferredVisible||V==="visible"?Kn.visible:V==="reach"||Te?Kn.reach:Kn.near,O.second=K===null||te===-x?1:0,O.third=Ee,O.paneReach=Te},j=()=>{let N=t(),V=T(),K=!N&&E!==null&&(V===null||V<E.renderingStartIndex||V>E.renderingEndIndex)?E:null,re=K!==null&&I,he=null;for(let H of l.values()){let ee=H.handle.getZone(),te=a(H.reportHubId),Ee=te===null||V===null?0:Math.sign(te-V);N&&L(H,ee,Ee)||re&&_(H)||(K===null?F(H,ee,te,V,Ee):U(H,ee,te,K,re),!(he!==null&&!LD(O,B))&&(he=H,ND(O,B)))}return he},G=()=>{if(!t())return l.size>0;let N=T();for(let V of l.values()){let K=a(V.reportHubId);if(!L(V,V.handle.getZone(),K===null||N===null?0:Math.sign(K-N)))return!0}return!1},Q=()=>t()&&h>0&&!A()?!0:G(),X=N=>{l.get(N.reportHubId)===N&&(l.delete(N.reportHubId),N.unsubscribeZone())},fe=()=>{y!==null&&y.wake()},De=()=>{P=!1;let N=d;d=c,c=N;for(let V=N.size;V>0;V--)w(ed);try{jm(()=>{for(let V of N.values())V.apply()})}finally{N.clear()}};return{gridId:e,enqueue:(N,V)=>{let K=l.get(N.reportHubId);K!==void 0&&X(K),d.delete(N.reportHubId);let re=t(),he=N.handle.getZone()==="visible";if(!re&&he)return V==="commit"?(w(ed),N.apply(),od):(d.set(N.reportHubId,N),P||(P=!0,queueMicrotask(De)),()=>{d.get(N.reportHubId)===N&&d.delete(N.reportHubId)});let H=re&&he&&_(N),ee={...N,deferredVisible:H,unsubscribeZone:N.handle.subscribeZone(()=>{let te=N.handle.getZone();if(te==="visible"){if(t()&&_(N)){if(ee.deferredVisible)return;ee.deferredVisible=!0,w(Ym);return}X(ee),w(ed),N.apply();return}te!=="far"&&fe()})};return l.set(N.reportHubId,ee),H&&w(Ym),fe(),()=>{X(ee)}},declareRow:N=>{if(N==="fixed")return od;h+=1,h===1&&fe();let V=!0;return()=>{V&&(V=!1,h-=1)}},declareBody:(N,V,K)=>{let re={handle:V,body:K,fresh:K!==null};return u.set(N,re),K!==null&&m.set(K,N),V.setSkippable(K===null),()=>{u.get(N)===re&&u.delete(N),K!==null&&m.get(K)===N&&m.delete(K)}},measured:N=>{let V=m.get(N),K=V===void 0?void 0:u.get(V);K===void 0||K.body!==N||(K.fresh=!1,K.handle.setSkippable(!0))},invalidate:N=>{let V=u.get(N);if(!(V===void 0||V.body===null)){if(V.fresh){V.fresh=!1;return}V.handle.setSkippable(!1),S!==null&&S(V.body)}},attach:(N,V)=>{if(y!==null)throw new Error("[daily-report] the row pass is connected to a view's window already; disconnect it before connecting it again");let K=new N.MessageChannel,re="idle",he=0,H=null,ee=null,te=[qm()],Ee=0,Te=0,ie=te[0],xt=new Float64Array(zn),Qe=0,vt=0,ot=new Float64Array(zn),ct=0,at=0,Rt=0,Kt=0,$t=0,Dt=0,v=tf(wD,AD),M=0,W=n.appliedEpoch(),Y=null;R=null,b=null;let oe=()=>{re!=="idle"||!Q()||(re="arming",K.port1.postMessage(null))},ue=()=>{re==="arming"&&(re="framing",he=N.requestAnimationFrame(ye))},$=pe=>{let Oe=p[pe.sizing][pe.change];X(pe),jm(pe.apply),ie.reservoir=ie.units===0||ie.reservoir===Oe?Oe:null,ie.units+=1,i!==void 0&&ie.rows.push(pe.reportHubId)},ne=(pe,Oe)=>{ie.interval=pe;let He=j();if(He===null){Dt=0;return}let{zone:st,paneReach:Ct}=B,Ze=p[He.sizing][He.change].p90,Nr=pe-nd-Oe;if(Ze===null?Oe>pe/2:Ze>Nr&&Oe>nd){let Or=st<=Kn.reach;if(!Ct&&(!Or||Dt<CD)){i!==void 0&&i({type:"late-frame",frameTime:ie.frameTime}),Dt=Or?Dt+1:0;return}i!==void 0&&i({type:"late-forced-frame",frameTime:ie.frameTime})}if(Dt=0,$(He),Ze===null)return;let cr=ED*pe;if(Ze>cr){w(ID);return}let Zt=Ze;for(let Or=j();Or!==null&&y===xn;Or=j()){let Ta=p[Or.sizing][Or.change].p90;if(Ta===null||Zt+Ta>cr||Zt+Ta>Nr)return;$(Or),Zt+=Ta}},Le=()=>{let pe=s();E=pe===null?null:pe.range,I=!1,pe!==null&&ee!==null&&pe.position!==ee&&(I=!0,x=pe.position>ee?1:-1),ee=pe===null?null:pe.position},k=(pe,Oe,He)=>{let st=Ee;if(st-Te===te.length){let Ct=Array.from({length:2*te.length},qm);for(let Ze=Te;Ze<st;Ze++)Ct[Ze%Ct.length]=te[Ze%te.length];te=Ct}return Ee=st+1,ie=te[st%te.length],ie.frameTime=pe,ie.onTime=Oe,ie.start=He,ie.inputEpoch=Rt,ie.units=0,ie.reservoir=null,ie.busy=null,ie.rows.length=0,st},z=(pe,Oe)=>{Qm(v,pe),M+=1,b=v.p50,i!==void 0&&i({type:"key-frame",frameTime:Oe,busy:pe,stepP50:b,samples:M,interval:R,limit:R===null?null:Go(R)})},ae=(pe,Oe,He)=>{let st=He!==W;W=He,t()&&st&&pe.units===0&&R!==null&&Oe>=OD(R)&&z(Oe,pe.frameTime)},ye=pe=>{he=0;let Oe=N.performance.now(),He=Oe-pe;ot[at]=He,at=(at+1)%zn,ct=Math.min(ct+1,zn);let st=pe+Zm(ot,ct),Ct=n.appliedEpoch(),Ze=null;if(H!==null){let cr=pe-H.frameTime,{busy:Zt}=H;Zt!==null&&Zt<=cr/2&&(xt[vt]=cr,vt=(vt+1)%zn,Qe=Math.min(Qe+1,zn),R=Zm(xt,Qe)),Ze=R,Zt===null&&ae(H,Oe-H.onTime,Ct)}Le(),T();let Nr=Rt!==Kt||Ct!==$t||n.pending();Kt=Rt,$t=Ct;let It=k(pe,st,Oe);if(H=ie,Ze!==null&&!Nr&&ne(Ze,Oe-st),y===xn){if(K.port2.postMessage(It),!Q()){re="idle",H=null,ee=null,Dt=0,Y=It;return}he=N.requestAnimationFrame(ye)}},xe=pe=>{let Oe=pe.data,He=te[Oe%te.length];Te=Oe+1;let st=n.appliedEpoch();$t=st;let Ct=N.performance.now(),Ze=Oe!==Ee-1;if(!Ze){let Zt=Ct-He.onTime;He.busy=Zt,t()&&Oe!==Y&&st!==W&&He.units===0&&z(Zt,He.frameTime),W=st}let{units:Nr,reservoir:It}=He;if(Nr===0)return;let cr=null;!Ze&&It!==null&&He.inputEpoch===Rt&&(cr=(Ct-He.start)/Nr,Qm(It,cr)),i!==void 0&&i({type:"unit-frame",frameTime:He.frameTime,units:Nr,kind:It===null?null:It.kind,cost:cr,p50:It===null?null:It.p50,p90:It===null?null:It.p90,budget:Go(He.interval),rows:He.rows.splice(0)})},ze=()=>re==="framing"||h===0||A()?!1:(re="framing",he=N.requestAnimationFrame(ye),!0),jt=()=>{if(t()){D=o(),_D(v),M=0,b=null;let pe=ze();i!==void 0&&i({type:"hold-start",interval:R,listening:pe});return}i!==void 0&&i({type:"hold-end",interval:R,stepP50:b,samples:M}),oe()},Lr=()=>{Rt+=1},xn={wake:oe};K.port2.onmessage=ue,K.port1.onmessage=xe,N.addEventListener("keydown",Lr,Es),N.addEventListener("keyup",Lr,Es),y=xn,S=V;let zS=r(jt);return oe(),()=>{zS(),N.removeEventListener("keydown",Lr,Es),N.removeEventListener("keyup",Lr,Es),he!==0&&N.cancelAnimationFrame(he),K.port1.onmessage=null,K.port2.onmessage=null,K.port1.close(),K.port2.close(),y=null,S=null,R=null,b=null}}}},Ds=ef(null),Yo=ef(null),sd=e=>{let t=rd(Ds);if(t===null)throw new Error(`[daily-report] ${e} is called outside a view's rows (no row pass)`);return t},nf=()=>sd("useViewGridId").gridId,Ts=(e,t,r)=>{let n=sd("useRowPass"),o=Jm(),[a,s]=gD(()=>({bodyReady:!0,rendered:t.read()}),t,c=>({bodyReady:o.getZone()==="visible",rendered:c.read()})),i=$m(a),l=$m(od),d=ad(c=>{let u=i.current,m=t.read();if(u.bodyReady&&Object.is(u.rendered,m)){l.current();return}let p=u.bodyReady?t.changesBox(u.rendered,m)?"box":"marks":"body";l.current=n.enqueue({reportHubId:e,handle:o,apply:s,sizing:r,change:p},c)},[n,e,o,t,r]);return Jl(()=>n.declareRow(r),[n,r]),Jl(()=>{let c=t.subscribe(()=>d("notification"));return()=>{c(),l.current()}},[t,d]),Jl(()=>{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},of=e=>{let t=sd("useRowBodyDeclaration"),r=Jm();return ad(o=>t.declareBody(e,r,o),[t,e,r])},af=()=>{let e=rd(Ds),t=rd(Yo);return ad(()=>{e!==null&&t!==null&&e.invalidate(t)},[e,t])};import{clsx as MD}from"clsx";import{twMerge as PD}from"tailwind-merge";function C(...e){return PD(MD(e))}var Ve=e=>{let t=new Map;return r=>{let n=r===void 0?"":r,o=t.get(n);if(o!==void 0)return o;let a=C(e,n);return t.set(n,a),a}};import{useCallback as sf,useMemo as kD,useSyncExternalStore as FD}from"react";var lf="(prefers-reduced-motion: reduce)",df=e=>je(e).matchMedia(lf).matches?"instant":"smooth",HD=Object.freeze({...Il,startVelocityThreshold:Number.POSITIVE_INFINITY}),$n=e=>e?HD:Il,BD=()=>!1,UD=()=>{},jn=e=>{let t=kD(()=>e===null?null:je(e).matchMedia(lf),[e]),r=sf(o=>t===null?UD:(t.addEventListener("change",o),()=>t.removeEventListener("change",o)),[t]),n=sf(()=>t===null?!1:t.matches,[t]);return FD(r,n,BD)};import{useSyncExternalStore as VD}from"react";import{jsx as id}from"react/jsx-runtime";var ws=()=>{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)})}},cf=16,WD=C(pu,"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"),zD=(e,t)=>e==="vertical"?{top:0,left:-cf,transform:`translate(-100%, calc(${t}px - 50%))`}:{top:-cf,left:0,transform:`translate(calc(${t}px - 50%), -100%)`},As=({orientation:e,thumbCenter:t,isDragging:r,isTapScrollActive:n,store:o})=>{let{label:a,isWheelScrollActive:s}=VD(o.subscribe,o.getState,o.getState);return a.trim()&&(r||n||s)?id("div",{className:"pointer-events-none absolute flex items-center",style:zD(e,t),children:id("div",{className:WD,children:id("span",{className:"whitespace-nowrap font-semibold text-slate-800 dark:text-slate-100",children:a.trim()})})}):null};import{createContext as KD,useContext as $D,useLayoutEffect as jD,useRef as GD}from"react";var ld=KD(null),xs=({items:e,scroller:t,readTopReportId:r})=>{let n=$D(ld),o=n===null?null:n.request,a=GD(o===null?0:o.seq);jD(()=>{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:rr(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 Sc,useCallback as En,useContext as pC,useEffect as zh,useLayoutEffect as Kh,useMemo as mo,useRef as bc}from"react";var vs="Internal",YD=e=>e.trim().toLowerCase();var qD=e=>e===vs,pn=(e,t)=>e!=null&&typeof t=="string"&&t!==""&&e.userId===t&&qD(e.sourceType);var Cs="legacy-",XD=e=>`${Cs}${e}`,uf=(e,t,r,n)=>{if(typeof n!="string"||n.trim()==="")throw Me("mergeComments: unknownAuthorName","a non-blank string",n);let o=e.map((s,i)=>({id:XD(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]},pf=e=>{if(!e)return"text-gray-700 dark:text-gray-300";let t=e.toLowerCase();return t.includes("red")||t.includes("\u8D64")?"text-red-800 dark:text-red-300":t.includes("green")||t.includes("\u7DD1")?"text-green-900 dark:text-green-400":t.includes("blue")||t.includes("\u9752")?"text-blue-800 dark:text-blue-300":t.includes("yellow")||t.includes("\u9EC4")?"text-yellow-900 dark:text-yellow-400":t.includes("orange")||t.includes("\u6A59")?"text-orange-900 dark:text-orange-400":"text-gray-700 dark:text-gray-300"};var QD=Object.freeze(["subject","content","author","employeeName","updatedBy","category","creationCategory","customerName"]),we=Object.freeze({field:e=>e,interviewer:(e,t)=>`interviewer:${e}:${t}`,attachment:e=>`attachment:${e}`,comment:(e,t)=>`comment:${e}:${t}`}),ZD=e=>e.startsWith(Cs)?On(e.slice(Cs.length))!==null:Lp(e)!==null,Gn=e=>{if(QD.includes(e))return!0;let t=e.split(":");switch(t[0]){case"interviewer":return t.length===3&&On(t[1])!==null&&(t[2]==="name"||t[2]==="affiliation");case"attachment":return t.length===2&&On(t[1])!==null;case"comment":return t.length===3&&ZD(t[1])&&(t[2]==="author"||t[2]==="content");default:return!1}},JD=16777619,eT=2166136261,tT=(e,t,r,n)=>{let o=e;for(let a=r;a<n;a++)o^=t.charCodeAt(a),o=Math.imul(o,JD);return o>>>0},dd=e=>tT(eT,e,0,e.length),rT=String.fromCodePoint(3),nT=String.fromCodePoint(2),oT=String.fromCodePoint(1),mf=e=>dd(e.map(t=>t.map(r=>r.map(n=>`${n.tier}${n.text}`).join(rT)).join(nT)).join(oT));import{createContext as vy,useCallback as wy,useEffect as Ay,useLayoutEffect as xy,useMemo as Pd,useRef as Od,useState as ar}from"react";import{z as _e}from"zod/v3";var ff=Object.freeze(["create","update","publish","delete","toggleStar","toggleRead","addComment","deleteComment","clearCache"]);var bt=Object.freeze({intent:"intent",clientTempId:"clientTempId",businessDate:"businessDate",operationTimestamp:"operationTimestamp",reportHubId:"reportHubId",title:"title",content:"content",isStarred:"isStarred",isRead:"isRead",contentDigest:"contentDigest",commentId:"commentId"}),Is=e=>{let t=new FormData;if(t.append(bt.intent,e.intent),e.intent==="clearCache"||(t.append(bt.clientTempId,e.clientTempId),e.businessDate!==null&&t.append(bt.businessDate,e.businessDate),e.operationTimestamp!==null&&t.append(bt.operationTimestamp,String(e.operationTimestamp)),e.intent==="create"))return t;switch(t.append(bt.reportHubId,String(e.reportHubId)),e.intent){case"update":return e.changes.title!==void 0&&t.append(bt.title,e.changes.title),e.changes.content!==void 0&&t.append(bt.content,e.changes.content),t;case"publish":case"delete":return t;case"toggleStar":return t.append(bt.isStarred,String(e.value)),t;case"toggleRead":return t.append(bt.isRead,String(e.value)),e.value&&t.append(bt.contentDigest,e.contentDigest),t;case"addComment":return t.append(bt.content,e.content),t;case"deleteComment":return t.append(bt.commentId,String(e.commentId)),t}},aT=()=>{let e=qe,t=_e.string().regex(Va),r=_e.literal("OK"),n=_e.object({isStarred:_e.boolean(),isRead:_e.boolean(),readContentDigest:_e.string().regex(xo).nullable()}),o=_e.number().int().nonnegative().nullable();return{create:_e.object({status:r,intent:_e.literal("create"),reportHubId:e,clientTempId:t,report:Rr}),update:_e.object({status:r,intent:_e.literal("update"),reportHubId:e,clientTempId:t}),publish:_e.object({status:r,intent:_e.literal("publish"),reportHubId:e,clientTempId:t,report:Rr.nullable()}),delete:_e.object({status:r,intent:_e.literal("delete"),reportHubId:e,clientTempId:t}),toggleStar:_e.object({status:r,intent:_e.literal("toggleStar"),reportHubId:e,clientTempId:t,updatedStatus:n,operationTimestamp:o}),toggleRead:_e.object({status:r,intent:_e.literal("toggleRead"),reportHubId:e,clientTempId:t,updatedStatus:n,operationTimestamp:o}),addComment:_e.object({status:r,intent:_e.literal("addComment"),reportHubId:e,clientTempId:t,newComment:bl}),deleteComment:_e.object({status:r,intent:_e.literal("deleteComment"),reportHubId:e,clientTempId:t,deletedCommentId:qe}),clearCache:_e.object({status:r,intent:_e.literal("clearCache")})}},cd=null,sT=()=>(cd===null&&(cd=aT()),cd),yf=(e,t)=>{let r=sT()[e].safeParse(t);return r.success?{result:r.data}:{mismatch:$a(r.error)}};import{useState as cT}from"react";var _s=e=>{let t=e>>>0,r=(e-t)/4294967296|0;return Math.imul(t^Math.imul(r,1540483477),2654435761)>>>0},Tr=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=_s(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=_s(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=_s(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=_s(this.idAt(a))>>>n;for(;this.slots[s]!==-1;)s=s+1&r;this.slots[s]=a}}};var iT=e=>e.appended instanceof er&&e.replaced.previous instanceof er&&e.replaced.next instanceof er&&e.removed instanceof er,pd=e=>{if(iT(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`)},Ls=1,Ns=2,mn=3,Rf=16,lT=8192,dT=Float64Array.BYTES_PER_ELEMENT+2*Uint32Array.BYTES_PER_ELEMENT+3*Uint8Array.BYTES_PER_ELEMENT,ud=e=>{let t=new ArrayBuffer(e*dT),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)}},hf=Object.freeze({previous:Bt,next:Bt}),md=()=>{let e=0,t=ud(Rf),r=d=>t.ids[d],n=new Tr(r),o=()=>{let d=ud(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 m=n.find(d);if(m===-1){let p=a(d,Ls);t.lastDates[p]=c,t.lastSources[p]=u;return}if(t.states[m]!==mn)throw new Error(`[daily-report] The ids stream list took report ${d}, which it already holds`);t.states[m]=Ns,t.lastDates[m]=c,t.lastSources[m]=u},i=(d,c,u,m,p)=>{let f=n.find(d);if(f===-1)f=a(d,Ns),t.firstDates[f]=c,t.firstSources[f]=u;else if(t.states[f]===mn)throw new Error(`[daily-report] The ids stream list changed report ${d}, which it no longer holds`);t.lastDates[f]=m,t.lastSources[f]=p},l=(d,c,u)=>{let m=n.find(d);if(m===-1){let p=a(d,mn);t.firstDates[p]=c,t.firstSources[p]=u;return}if(t.states[m]===Ls){n.delete(d),t.states[m]=0;return}if(t.states[m]===mn)throw new Error(`[daily-report] The ids stream list dropped report ${d}, which it no longer holds`);t.states[m]=mn};return{add:s,change:i,remove:l,fold:d=>{let{removed:c,appended:u,replaced:m}=pd(d),{previous:p,next:f}=m;for(let y=0;y<c.length;y++)l(c.ids[y],c.businessDateCodes[y],c.sourceTypeCodes[y]);for(let y=0;y<f.length;y++)i(f.ids[y],p.businessDateCodes[y],p.sourceTypeCodes[y],f.businessDateCodes[y],f.sourceTypeCodes[y]);for(let y=0;y<u.length;y++)s(u.ids[y],u.businessDateCodes[y],u.sourceTypeCodes[y])},isEmpty:()=>n.size===0,build:(d,c)=>{let u=0,m=0,p=0;for(let R=0;R<e;R++){let b=t.states[R];b===Ls?u+=1:b===Ns?m+=1:b===mn&&(p+=1)}let f=u+2*m+p;if(f===0)return{base:d,revision:c,appended:Bt,replaced:hf,removed:Bt};let y=Fn(f),S=0,h=u,D=h+m,g=D+m;for(let R=0;R<e;R++){let b=t.states[R];b===Ls?(y.ids[S]=t.ids[R],y.businessDateCodes[S]=t.lastDates[R],y.sourceTypeCodes[S]=t.lastSources[R],S+=1):b===Ns?(y.ids[h]=t.ids[R],y.businessDateCodes[h]=t.firstDates[R],y.sourceTypeCodes[h]=t.firstSources[R],h+=1,y.ids[D]=t.ids[R],y.businessDateCodes[D]=t.lastDates[R],y.sourceTypeCodes[D]=t.lastSources[R],D+=1):b===mn&&(y.ids[g]=t.ids[R],y.businessDateCodes[g]=t.firstDates[R],y.sourceTypeCodes[g]=t.firstSources[R],g+=1)}return{base:d,revision:c,appended:Dr(y,0,u),replaced:m===0?hf:{previous:Dr(y,u,m),next:Dr(y,u+m,m)},removed:Dr(y,u+2*m,p)}},reset:()=>{if(e=0,t.ids.length<=lT){n.clear();return}t=ud(Rf),n=new Tr(r)}}},bf=(e,t,r)=>{let n=md();for(let o of e)n.fold(o);return n.build(t,r)},Sf=(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 uT={items:fs,held:new Map,hidden:new Map,revision:null,settled:!1},fd=(e,t,r)=>{let n=0,o=e.length;for(;n<o;){let a=n+o>>1;Vn(sn(e,a),Un(e,a),t,r)<0?n=a+1:o=a}return n<e.length&&sn(e,n)===t?n:-1},Os=(e,t)=>fd(e,t.reportHubId,tr(t.businessDate)),yd=(e,t,r,n)=>{let o=n,a=e.length;for(;o<a;){let s=o+a>>1;Vn(sn(e,s),Un(e,s),t,r)<=0?o=s+1:a=s}return o},pT=(e,t)=>{if(t.length===0)return[];let r=e.length-1;if(e.length===0||Vn(sn(e,r),Un(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=yd(e,t.ids[a],t.businessDateCodes[a],o),n.push(o);return n},mT=e=>{for(let t=1;t<e.length;t++)if(Vn(e.ids[t-1],e.businessDateCodes[t-1],e.ids[t],e.businessDateCodes[t])>=0)return!1;return!0},Ef=e=>{if(mT(e))return e;let t=Array.from({length:e.length},(n,o)=>o);t.sort((n,o)=>Vn(e.ids[n],e.businessDateCodes[n],e.ids[o],e.businessDateCodes[o]));let r=new Yt(e.length);for(let n of t)r.pushFrom(e,n);return r.build()},Df=(e,t,r,n)=>{let o=gm(t.readRows()),a=new Tr(d=>o.ids[d]);for(let d=0;d<o.length;d++)a.set(o.ids[d],d);let s=new Yt(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 m=e.held.get(u),p=m===void 0?Number.NEGATIVE_INFINITY:m.since;r&&u>0&&t.itemsRevision>p||(l.set(u,{item:m===void 0?ms(u,d.businessDateCodes[c],d.sourceTypeCodes[c]):m.item,since:p}),s.pushFrom(d,c))}return{items:Tm(Ef(s.build())),held:l,hidden:i,revision:t.itemsRevision,settled:r}},fT=(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?[]:Sf(t.itemsChanges,o);if(o===null||a===null)return Df(e,t,r,n);let s=e.items,i=[],l=[],d=a.length===0?null:a.length===1?pd(a[0]):bf(a,o,t.itemsRevision),c=new Yt(d===null?0:d.appended.length+d.replaced.next.length),u=null,m=()=>(u===null&&(u=new Map(e.held)),u),p=null,f=()=>(p===null&&(p=new Map(e.hidden)),p);if(d!==null){let{appended:D,replaced:g,removed:R}=d;for(let E=0;E<R.length;E++){let I=R.ids[E];if(e.hidden.has(I)&&f().delete(I),e.held.has(I))continue;let x=fd(s,I,R.businessDateCodes[E]);x!==-1&&(r||n.has(I)?i.push(x):m().set(I,{item:ms(I,Un(s,x),Xl(s,x)),since:Number.NEGATIVE_INFINITY}))}let b=(E,I,x)=>{let P=E.ids[I],O=E.businessDateCodes[I],B=E.sourceTypeCodes[I],w=e.held.get(P);w!==void 0&&m().delete(P);let _=w===void 0?x:tr(w.item.businessDate),A=_===-1?-1:fd(s,P,_);if(n.has(P)){A!==-1&&i.push(A),f().set(P,E.itemAt(I));return}if((p===null?e.hidden:p).has(P)&&f().delete(P),A!==-1&&Un(s,A)===O){Xl(s,A)!==B&&l.push({index:A,id:P,businessDateCode:O,sourceTypeCode:B});return}A!==-1&&i.push(A),c.push(P,O,B)};for(let E=0;E<g.next.length;E++)b(g.next,E,g.previous.businessDateCodes[E]);for(let E=0;E<D.length;E++)b(D,E,-1)}let y=t.itemsRevision;if(r)for(let[D,g]of u===null?e.held:u){if(D<=0||y<=g.since)continue;let R=Os(s,g.item);R!==-1&&i.push(R),m().delete(D)}let S=Ef(c.build());return{items:Wn(s,{removals:i,replacements:l,additions:S,insertions:pT(s,S)}),held:u===null?e.held:u,hidden:p===null?e.hidden:p,revision:y,settled:r}},gf=new WeakMap,yT=(e,t,r,n)=>{let o=gf.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=fT(e,t,r,n);return gf.set(e,{revision:t.itemsRevision,changes:t.itemsChanges,settled:r,tombstones:n,rows:a}),a},Tf=(e,t,r)=>{let[n,o]=cT(()=>Df(uT,e,t,r));return(n.revision!==e.itemsRevision||n.settled!==t)&&o(a=>yT(a,e,t,r)),[n,o]},Ms=(e,t,r)=>{if(e.hidden.has(t.reportHubId))return Rd(e,t.reportHubId);if(e.held.has(t.reportHubId)||Os(e.items,t)!==-1||$o(e.items,t.reportHubId)!==-1)return e;let n=Wn(e.items,{...ln,additions:Kl([t]),insertions:[yd(e.items,t.reportHubId,tr(t.businessDate),0)]}),o=new Map(e.held);return o.set(t.reportHubId,{item:t,since:r}),{...e,items:n,held:o}},Rd=(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:Wn(e.items,{...ln,additions:Kl([r]),insertions:[yd(e.items,r.reportHubId,tr(r.businessDate),0)]}),hidden:n}},fn=(e,t)=>{let r=e.held.get(t);if(r===void 0)return e;let n=Os(e.items,r.item),o=new Map(e.held);return o.delete(t),{...e,items:Wn(e.items,n===-1?ln:{...ln,removals:[n]}),held:o}},wf=(e,t)=>{let r=e.held.get(t.reportHubId),n=Os(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:Wn(e.items,n===-1?ln:{...ln,removals:[n]}),held:o}},Af=e=>({...e,revision:null});import{startTransition as IT,useLayoutEffect as _T,useState as LT,useSyncExternalStore as Zo}from"react";var xf=e=>{let t=new URLSearchParams;return e.cursor!==null&&(t.set(Ue.cursorReportHubId,String(e.cursor.reportHubId)),e.cursor.businessDate!==null&&t.set(Ue.cursorBusinessDate,e.cursor.businessDate)),e.snapshot!==null&&t.set(Ue.cursorSnapshot,e.snapshot),e.forceRefresh&&t.set(Ue.forceRefresh,"true"),t};var qo=1,RT=2,hT=1024,Yn=1024,Ps=class{constructor(){this.used=0;this.holes=0;this.ids=new Float64Array(Yn);this.dates=new Uint32Array(Yn);this.sources=new Uint8Array(Yn);this.flags=new Uint8Array(Yn);this.positions=new Tr(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:Er(this.dates[t]),sourceType:an(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]=qo,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>=hT&&this.holes>this.positions.size&&this.compact()}markSeen(t){let r=this.positions.find(t);r!==-1&&(this.flags[r]|=RT)}clearSeen(){for(let t=0;t<this.used;t++)this.flags[t]&=qo}unseenIds(){let t=[];for(let r=0;r<this.used;r++)this.flags[r]===qo&&t.push(this.ids[r]);return t}rows(){let t=new Yt(this.positions.size);for(let r=0;r<this.used;r++)(this.flags[r]&qo)!==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]&qo)!==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(Yn,t*4)&&this.resize(Math.max(Yn,t*2))}};var vf=()=>{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 bT=e=>({debug:e,info:e,warn:e,error:e}),ST=50,gT=32,Cf=0,ET=()=>(Cf+=1,Cf),DT=1e3,TT=3e4,wT=6,AT=3e4,If=Symbol("read-stall"),xT=Object.freeze({reading:()=>{},stalled:()=>!1,stop:()=>{}}),vT="/daily_report/api",CT=e=>typeof e=="object"&&e!==null&&e.name==="AbortError",ks=class{constructor(t={}){this.rows=new Ps;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=md();this.apiBasePath=t.apiBasePath??vT,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=kt(t.warn===void 0?void 0:bT(t.warn),1,"IdsStream").warn,this.readStallTimeoutMs=t.readStallTimeoutMs??AT,this.publishCoalesceMs=t.publishCoalesceMs??ST,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,tr(t.businessDate),zo(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 Yt(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>=wT){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(DT*2**(this.consecutiveFailures-1),TT))}}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===If)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=vf(),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),m=!1,p=!1;for(let f of u){if(f.trim()==="")continue;let y;try{y=JSON.parse(f)}catch{p=!0;break}let S=Dl(y);if(S==="unknown"){this.warn("skipped line of unknown kind");continue}if(S==="error"){l=!0;continue}let h=Dp(y);if(h===null){p=!0;break}m=this.absorbChunkLine(h)||m,h.total!==null&&h.total!==this.state.totalCount&&this.publish({totalCount:h.total}),h.resumeCursor!==null&&(this.lastCursor=h.resumeCursor),h.isLast&&(d=!0)}if(m&&(this.consecutiveFailures=0,this.schedulePublishItems()),p)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 CT(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(If),this.readStallTimeoutMs*3);t.then(a=>{this.clearTimeoutFn(o),r(a)},a=>{this.clearTimeoutFn(o),n(a)})})}watchReadSilence(t){if(this.readStallTimeoutMs<=0)return xT;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=tr(null),s,i=zo(void 0),l=(d,c,u)=>{this.externalRemovalTombstones.has(d)||(c!==o&&(o=c,a=tr(c)),u!==s&&(s=u,i=zo(u)),this.putItem(d,a,i)&&(n=!0),r||this.rows.markSeen(d))};return Tp(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=ET(),r=this.pendingItemsChange.build(this.state.itemsRevision,t);return this.pendingItemsChange.reset(),{loadedCount:this.rows.size,itemsRevision:t,itemsChanges:[...this.state.itemsChanges.slice(1-gT),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=xf({cursor:this.lastCursor,snapshot:this.lastCursor===null?null:this.lastSnapshot,forceRefresh:t}).toString();return`${this.apiBasePath}/${Ka}${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 NT=6e4,Se=null,_f=!1,Xo=new Set,Fs={loadedCount:0,itemsRevision:0,itemsChanges:[],totalCount:null,phase:"idle",isRevalidating:!1,hasCompletedOnce:!1,completedAt:null,error:null,streamAnchor:null},hd=()=>{for(let e of Xo)e()},bd=()=>{Se&&(Se.unsubscribe(),Se.client.dispose(),Se=null,hd())},Qo=e=>{if(typeof window>"u")return;let t=e.apiBasePath??ko.apiBasePath;if(Se&&(Se.userKey!==e.userKey||Se.apiBasePath!==t)&&(Se.userKey!==e.userKey&&Uo(),bd()),!Se){let r=new ks({apiBasePath:t});Se={client:r,userKey:e.userKey,apiBasePath:t,unsubscribe:r.subscribe(hd)},OT(),r.start(),hd();return}Bs(Se)},Bs=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>NT&&e.client.refresh()},OT=()=>{if(_f||typeof document>"u"||typeof window>"u")return;_f=!0;let e=()=>{Se&&Bs(Se)};document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&e()}),window.addEventListener("focus",e)},Sd=e=>{if(!(typeof window>"u")){if(!Se){Qo(e);return}if(Se.userKey!==e.userKey){Uo(),bd(),Qo(e);return}Bs(Se)}},gd=()=>{typeof window>"u"||!Se||Bs(Se)},qn=e=>{Se?.client.applyExternalUpsert(e)},Xn=e=>{Se?.client.applyExternalRemoval(e)},Nf=e=>Se===null?!1:Se.client.has(e),Of=()=>Se===null?Bt:Se.client.readRows(),Ed=()=>Se===null?0:Se.client.getState().itemsRevision,Us=()=>{Se?.client.retry()},Vs=()=>{Se?.client.resync()},Jo=(e={})=>{Se?.client.refresh(e)},Mf=()=>Se?.userKey,ea=e=>(Xo.add(e),()=>Xo.delete(e)),Hs=()=>Se?.client.getState()??Fs,MT=()=>Fs,PT=()=>Zo(ea,Hs,MT),Ws=(e,t)=>{let r=Fs,n=e(Fs);return()=>{let o=Hs();if(o===r)return n;let a=e(o);return r=o,t(n,a)||(n=a),n}},Pf=Ws(({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),kT=Pf(),Qn=()=>Zo(ea,Pf,()=>kT),kf=Ws(({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),FT=kf(),Ff=()=>Zo(ea,kf,()=>FT),Hf=Ws(({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),HT=Hf(),Bf=()=>Zo(ea,Hf,()=>HT),Uf=Ws(({phase:e,totalCount:t})=>({phase:e,totalCount:t}),(e,t)=>e.phase===t.phase&&e.totalCount===t.totalCount),BT=Uf(),Vf=()=>Zo(ea,Uf,()=>BT),Wf=e=>e.phase==="complete"&&!e.isRevalidating,Lf=e=>`${e.itemsRevision}:${Wf(e)}`,zf=()=>{let[,e]=LT(0),t=Hs(),r=Lf(t);return _T(()=>{let n=r,o=()=>{let a=Lf(Hs());a!==n&&(n=a,IT(()=>e(s=>s+1)))};return Xo.add(o),o(),()=>{Xo.delete(o)}},[]),{itemsRevision:t.itemsRevision,itemsChanges:t.itemsChanges,readRows:Of,settled:Wf(t)}};import.meta.hot?.dispose(bd);var zs=(e,t,r)=>{if(!Number.isFinite(e)||e<=0)throw Me("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 UT=3e4,Kf=e=>{let t=zs(UT,e,()=>{});return{add:r=>t.add(r,!0),has:r=>t.get(r)===!0}},Zn=(e,t)=>e.has(t)?e:new Set(e).add(t),$f=(e,t)=>{if(!e.has(t))return e;let r=new Set(e);return r.delete(t),r},jf=new Set,Gf=()=>new Set,Yf=()=>new Map,qf=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()}}}},Xf=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 Dd=0,Td=e=>{let t=ut("drawTemporaryId: nowMs",e,1);return Dd=Math.min(-t,Dd-1),Dd};var wr=(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 wd=kt(void 0,1,"ActionProvider"),VT=1e3,Ad=class extends Error{constructor(t,r){super(`[daily-report] ${t} answered HTTP ${r}`),this.name="DailyReportActionHttpError",this.status=r}},UP=Object.freeze(["delete","deleteComment"]),WT=e=>e.intent==="create"?null:e.reportHubId,zT=(e,t)=>{let r=e;if(r.intent==="clearCache"||r.clientTempId!==t.clientTempId)return!1;let n=WT(t);return n===null||r.reportHubId===n},KT="0".repeat(64),Qf=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:m,setRows:p,drafts:f,invalidateSearch:y,announceDataChange:S,notifyError:h}=e,D=async(w,_,A={})=>{let{intent:T}=w,{onGone:L}=_,{lockedReportHubId:F}=A,U=F===void 0?null:om(F);_.onOptimistic?.(),s.add(w.clientTempId);let j=()=>{if(!a())throw wd.warn(`[executeAction] ${T} resolved after a user switch; discarding continuation`),new Error(`Stale continuation for ${T}`)};try{let G=await fetch(`${t}/${$e.action}`,{method:"POST",body:Is(w),headers:{Accept:"application/json"}});if(G.status===404&&L!==void 0)return j(),L();if(!G.ok)throw new Ad(T,G.status);let Q=yf(T,await G.json());if("mismatch"in Q)throw new Error(`[daily-report] ${T} answered a body that is not its result (${Q.mismatch})`);let{result:X}=Q;if(!zT(X,w))throw new Error(`[daily-report] ${T} answered another request`);return j(),_.onSuccess(X)}catch(G){throw wd.error(`${T} failed:`,G),a()&&(_.onFailure?.(),h({operation:T,message:r.operationFailed(T),cause:G})),G}finally{U?.()}},g=(w,_,A)=>({reportHubId:w,clientTempId:A,businessDate:typeof _=="string"?_:null,operationTimestamp:Date.now()});return{addComment:async(w,_,A)=>{let T=Td(Date.now()),L=D({...g(w,A,String(T)),intent:"addComment",content:_},{onOptimistic:()=>{l(({pendingAddCommentIds:F})=>{let U=F.get(w);U===void 0?F.set(w,new Map([[T,_]])):U.set(T,_)})},onSuccess:({newComment:F})=>{let U=F.id;l(({resolvedIdMap:G,pendingAddCommentIds:Q})=>{G.set(T,U),Q.get(w)?.delete(T)}),y();let j=ht(w,{ignoreExpiry:!0});return j&&!j.postedComments.some(G=>G.id===U)&&Ht(w,{postedComments:[...j.postedComments,{...F,isMine:!0,userName:wr(n,r.unknownUser)}]}),U},onFailure:()=>{l(({pendingAddCommentIds:F})=>F.get(w)?.delete(T))}}).finally(()=>d.current.delete(T));d.current.set(T,L),await L},deleteComment:async(w,_,A)=>{l(({pendingDeleteCommentIds:F})=>{let U=F.get(w);U===void 0?F.set(w,new Set([_])):U.add(_)});let T=_;if(_<0){let F=i.resolvedIdMap.current.get(_);if(F!==void 0)T=F;else{let U=d.current.get(_);if(!U)return;try{T=await U}catch{return}}}let L=()=>{let F=ht(w,{ignoreExpiry:!0});F&&(Ht(w,{postedComments:F.postedComments.filter(U=>U.id!==T)}),sm(T)),l(({pendingDeleteCommentIds:U})=>U.get(w)?.delete(_)),y()};await D({...g(w,A,crypto.randomUUID()),intent:"deleteComment",commentId:T},{onSuccess:L,onGone:L,onFailure:()=>{l(({pendingDeleteCommentIds:F})=>F.get(w)?.delete(_))}})},toggleStar:async(w,_,A)=>{await D({...g(w,A,crypto.randomUUID()),intent:"toggleStar",value:_},{onOptimistic:()=>{Ht(w,{isStarred:_}),l(({pendingStarUpdates:T})=>T.set(w,_))},onSuccess:({updatedStatus:T})=>{ht(w,{ignoreExpiry:!0})&&(Ht(w,{isStarred:T.isStarred}),S()),l(({pendingStarUpdates:L})=>L.delete(w))},onFailure:()=>{Ht(w,{isStarred:!_}),l(({pendingStarUpdates:T})=>T.delete(w))}})},toggleRead:async(w,_,A)=>{let T=Xu(_),L=ht(w,{ignoreExpiry:!0}),F=L?{isRead:L.isRead,readContentDigest:L.readContentDigest}:null,U=g(w,A,crypto.randomUUID());await D(_.isRead?{...U,intent:"toggleRead",value:!0,contentDigest:_.contentDigest}:{...U,intent:"toggleRead",value:!1},{onOptimistic:()=>{Ht(w,T),l(({pendingReadUpdates:j})=>j.set(w,T))},onSuccess:({updatedStatus:j})=>{ht(w,{ignoreExpiry:!0})&&(Ht(w,{isRead:j.isRead,readContentDigest:j.readContentDigest}),S()),l(({pendingReadUpdates:G})=>G.delete(w))},onFailure:()=>{F!==null&&Ht(w,F),l(({pendingReadUpdates:j})=>j.delete(w))}})},createReport:async w=>{let _=Td(Date.now()),A=new Date().toISOString(),T={reportHubId:_,date:w,createdAt:A,author:wr(n,r.unknownUser),userId:n===void 0?null:n.id,sourceType:vs,employeeName:wr(n,r.unknownUser),updatedBy:wr(n,r.unknownUser),updatedAt:A,category:null,creationCategory:null,visitTimeFrom:null,visitTimeTo:null,customerName:null,interviewers:[],subject:"",content:"",externalComments:[],isRead:!0,isStarred:!1,contentDigest:KT,readContentDigest:null,isDraft:!0,labels:[],postedComments:[],attachments:[]};nm(T,Date.now()+3e5,!1),p(L=>Ms(L,{reportHubId:_,businessDate:w},Number.NEGATIVE_INFINITY));try{let L=await D({intent:"create",clientTempId:String(_),businessDate:w,operationTimestamp:Date.now()},{onSuccess:j=>j.report}),F=L.reportHubId,U=Ed();return qn({reportHubId:F,businessDate:w}),am(F,VT),gr(F,L),S(),y(),p(j=>Ms(fn(j,_),{reportHubId:F,businessDate:w},U)),F}catch(L){throw wd.error("[createReport] Failed",L),p(F=>fn(F,_)),L}},updateReport:async(w,_,A)=>{await D({...g(w,A,crypto.randomUUID()),intent:"update",changes:{title:_.title,content:_.content}},{onSuccess:()=>{ht(w,{ignoreExpiry:!0})&&(Ht(w,{subject:_.title,content:_.content}),S()),y()}},{lockedReportHubId:w})},publishReport:async(w,_)=>{let A=ht(w,{ignoreExpiry:!0});await D({...g(w,_,crypto.randomUUID()),intent:"publish"},{onOptimistic:()=>{A&&(Ht(w,{isDraft:!1}),S())},onSuccess:({report:T})=>{T!==null&&(gr(w,T),S()),_!==void 0&&qn({reportHubId:w,businessDate:_}),y()},onFailure:()=>{A&&(Ht(w,{isDraft:A.isDraft}),S())}})},deleteReport:async(w,_)=>{let A=Am(o,w);c.current=Zn(c.current,w),u.current.add(w),m(L=>L+1),Xn(w),A!==void 0&&p(L=>wf(L,A));let T=()=>{is(w,_),f.discard(w),y()};try{await D({...g(w,_,crypto.randomUUID()),intent:"delete"},{onSuccess:T,onGone:T},{lockedReportHubId:w})}catch(L){if(!a())return;c.current=$f(c.current,w),u.current.delete(w),m(j=>j+1);let F=A===void 0?_:A.businessDate,U=Ed();throw F!==void 0&&qn({reportHubId:w,businessDate:F}),p(j=>{let G=Rd(j,w);return A===void 0?G:Ms(G,A,U)}),L}}}};var Zf=kt(void 0,1,"ActionProvider"),$T=3e4,Jf=e=>zs($T,e,(t,r)=>{r.unsubscribe(),Zf.warn(`[SSE Queue] Expired: reportHubId=${t}, dropped=${r.messages.length} messages`)}),jT=(e,t)=>{t!==void 0&&qn({reportHubId:e,businessDate:t})},ey=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:m,invalidateSearch:p,announceDataChange:f,pendingSseQueue:y,replay:S}=e,h=(g,R)=>{let b=y.get(g);if(b!==void 0){b.messages.push(R);return}let E;E={messages:[R],unsubscribe:im(g,()=>{if(y.get(g)===E&&ht(g,{ignoreExpiry:!0})){y.remove(g),E.unsubscribe(),Zf.info(`[SSE Queue] Replaying ${E.messages.length} messages for reportHubId=${g}`);for(let x of E.messages)S(x)}})},y.add(g,E)};return g=>{if(o()&&!a.has(g.clientTempId))switch(g.type!=="status-update"&&p(),g.type){case"comment-add":{let{comment:R,reportHubId:b}=g,E=ht(b,{ignoreExpiry:!0});if(E){if(E.postedComments.some(O=>O.id===R.id))return;let I=typeof r=="string"&&R.userId===r,x={...R,userName:R.userName||(I?wr(t,n.unknownUser):n.unknownUser),createdAt:R.createdAt||new Date().toISOString(),isMine:I},P={...E,postedComments:[...E.postedComments,x].sort((O,B)=>new Date(O.createdAt||0).getTime()-new Date(B.createdAt||0).getTime())};gr(b,P),kl(b),f()}else h(b,g);break}case"comment-delete":{let{commentId:R,reportHubId:b}=g,E=ht(b,{ignoreExpiry:!0});if(E){let I={...E,postedComments:E.postedComments.filter(x=>x.id!==R)};gr(b,I),kl(b),f()}else h(b,g);break}case"status-update":{let{statusType:R,value:b,reportHubId:E,readContentDigest:I}=g,x=ht(E,{ignoreExpiry:!0});if(R==="star")if(s.pendingStarUpdates.current.get(E)===b&&i(({pendingStarUpdates:P})=>P.delete(E)),x){let P={...x,isStarred:b,readContentDigest:I};gr(E,P),f()}else h(E,g);else if(R==="read"){let P=s.pendingReadUpdates.current.get(E);if(P!==void 0&&P.isRead===b&&P.readContentDigest===I&&i(({pendingReadUpdates:O})=>O.delete(E)),x){let O={...x,isRead:b,readContentDigest:I};gr(E,O),f()}else h(E,g)}break}case"report-delete":{let{reportHubId:R}=g;l.current=Zn(l.current,R),d.current.add(R),c(E=>E+1),Xn(R),u(E=>fn(E,R)),m.discard(R),y.remove(R)?.unsubscribe();let b=ht(R,{ignoreExpiry:!0});b?.date&&(is(R,b.date),f());break}case"report-create":case"report-update":case"report-publish":{let{report:R}=g;g.viewerIsActor?gr(R.reportHubId,R):lm(R),(g.type==="report-create"||g.type==="report-publish")&&jT(R.reportHubId,R.date),f();break}}}};import{memo as JT,useLayoutEffect as ew}from"react";import{systemSseRuntime as Ks}from"@aiquants/sse";import{createBrowserEventSource as GT}from"@aiquants/sse/client";import{useReopeningEventSource as YT}from"@aiquants/sse/react";import{useEffect as xd,useRef as $s,useState as qT}from"react";var yn=kt(void 0,1,"SseConnection"),XT=Object.freeze({kind:"resyncing"}),ty={initialDelayMs:2e3,maxDelayMs:3e4,multiplier:2},QT=1,ry=hl*3,ZT=ry+hl,vd=({isSseEnabled:e,onMessage:t})=>{let{ssePath:r,onSessionExpired:n}=q(),{streamAnchor:o,phase:a,isRevalidating:s,error:i}=Qn(),[l,d]=qT({generation:0,minAnchorRevision:1,anchored:!1}),c=l.generation>0&&!l.anchored,u=c&&a==="complete"&&!s?i:null,m=$s(0),p=$s(null),f=$s(n);f.current=n;let y=$s(0);y.current=o===null?0:o.revision,xd(()=>{l.anchored||o===null||o.revision<l.minAnchorRevision||(p.current=o.lastEventId,m.current=0,d({...l,anchored:!0}))},[l,o]),xd(()=>{if(!e||u===null)return;let{initialDelayMs:h,maxDelayMs:D,multiplier:g}=ty,R=Ks.random()*Math.min(D,h*g**m.current);yn.warn(`SSE resync: the ids rescan gave up (${u.message}); rescanning in ${Math.round(R)} ms`);let b=Ks.setTimer(()=>{m.current+=1,Vs()},R);return()=>Ks.clearTimer(b)},[e,u]);let{status:S}=YT(e&&l.anchored?`${r}#${l.generation}`:null,{resolveUrl:({lastEventId:h})=>h===null?r:`${r}?${yp}=${encodeURIComponent(h)}`,initialLastEventId:p.current,withCredentials:!1,createEventSource:GT,runtime:Ks,backoff:ty,healthyOpenMs:ZT,nativeRetryLimit:QT,giveUpAfterFailures:"never",terminalEvents:fp,heartbeat:{staleAfterMs:ry,onHeartbeat:null},events:{message:h=>{h.lastEventId!==""&&(Wa(h.lastEventId)?p.current=h.lastEventId:yn.warn("SSE event carried a malformed id; keeping the previous cursor:",h.lastEventId));try{let D=JSON.parse(h.data),g=Ep.safeParse(D);if(!g.success){yn.error("SSE Validation Error:",g.error.flatten(),"raw message:",D);return}if(g.data.type==="connected"){yn.info("SSE Subscribe Ready");return}t(g.data)}catch(D){yn.error("SSE Parse Error",D)}}}});return xd(()=>{if(S.kind==="faulted"){yn.error("SSE connection faulted:",S.error);return}if(S.kind==="terminated")switch(S.terminalEvent){case"auth-required":f.current();return;case"forbidden":yn.warn("SSE stopped: the viewer is not registered (forbidden)");return;case"resync-required":{let h=y.current+1;d(D=>({generation:D.generation+1,minAnchorRevision:h,anchored:!1})),Vs();return}}},[S]),e&&c?XT:S};var ny=Object.freeze({kind:"idle"}),Cd=JT(({isSseEnabled:e,onMessage:t,onStatus:r})=>{let n=vd({isSseEnabled:e,onMessage:t});return ew(()=>{r(n)},[n,r]),null});Cd.displayName="DailyReportSseConnectionHost";import{createContext as tw,useCallback as rw,useSyncExternalStore as oy}from"react";var ay=()=>{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)}}},Id=tw(null),zr=()=>Gt(Id,"useDailyReportDraftStore","DailyReportActionProvider"),sy=(e,t)=>rw(r=>e.subscribe(t,r),[e,t]),js=e=>{let t=zr(),r=()=>t.modeOf(e);return oy(sy(t,e),r,r)},iy=e=>{let t=zr(),r=()=>t.inputOf(e),n=oy(sy(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 mw}from"@aiquants/swipe-overlay";import{createContext as fw,Fragment as yw,useCallback as Xs,useId as Ld,useLayoutEffect as Ey,useMemo as Rw,useRef as Rn,useState as hy}from"react";import{createPortal as by}from"react-dom";import{createContext as aw,useContext as sw}from"react";var nw=new Set(["Alt","AltGraph","CapsLock","Control","Fn","FnLock","Hyper","Meta","NumLock","ScrollLock","Shift","Super","Symbol","SymbolLock"]),Gs={capture:!0},Ys=new WeakMap,ow=e=>{let t=o=>{nw.has(o.key)||(n.last="keyboard")},r=()=>{n.last="pointer"},n={observers:0,last:null,detach:()=>{e.removeEventListener("keydown",t,Gs),e.removeEventListener("pointerdown",r,Gs)}};return e.addEventListener("keydown",t,Gs),e.addEventListener("pointerdown",r,Gs),n},ly=e=>{let t=Ys.get(e),r=t===void 0?ow(e):t;t===void 0&&Ys.set(e,r),r.observers+=1;let n=!1;return()=>{n||(n=!0,r.observers-=1,!(r.observers>0)&&(r.detach(),Ys.delete(e)))}},ta=e=>{let t=Ys.get(e);return t===void 0?null:t.last};var iw=Object.freeze({visibilityProperty:!0,opacityProperty:!0}),lw=Object.freeze({visibilityProperty:!0}),dy="data-daily-report-view-tabs",cy={[dy]:""},uy="data-daily-report-status-panel",py={[uy]:""},dw=e=>{for(let t of e.getClientRects())if(t.width>0&&t.height>0)return!0;return!1},my=e=>e.isConnected&&Wo(e)&&dw(e)&&e.checkVisibility(e.hasAttribute(hs)?lw:iw),Ar=e=>{for(let t of e)if(!(t===null||!my(t))&&(t.focus({preventScroll:!0}),tt(t)===t))return t;return null},cw=e=>e.querySelector(`[${dy}] [role="tab"][aria-selected="true"]`),_d=aw(null),fy=()=>{let e=sw(_d);if(e===null)throw new Error("[daily-report] useFocusViewRow is called outside a view's rows");return e},uw=(e,t,r)=>{if(on(e))return!0;if(r==="handOver")return!1;let n=tt(e);return n===null||!e.contains(n)?!1:r==="overlay"||n!==t},yy=(e,t,r)=>{if(r!=="pointer"||t===null)return e;let n=km(t);return n!==null&&my(n)?n:e},Ry=(e,t,r,n)=>uw(e,t,n)?Ar([yy(t,r,ta(e.ownerDocument))]):null,pw=e=>{let t=e.getAttribute("aria-activedescendant");return t===null?null:e.ownerDocument.getElementById(t)},qs=e=>{let t=Pm(e);return[t===null?null:yy(t,pw(t),ta(t.ownerDocument)),cw(e),e.querySelector(`[${uy}]`)]};import{jsx as or,jsxs as Ty}from"react/jsx-runtime";var hw=C("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-800 px-[15px] py-[7px] text-sm text-white shadow-lg motion-safe:animate-in motion-safe:duration-200 dark:border-red-500/60",kr),bw="flex shrink-0 justify-center p-[8px]",Sw=C("flex size-6 shrink-0 items-center justify-center rounded font-bold text-white hover:bg-red-900",au),gw="data-daily-report-notice-alert",Ew={[gw]:""},Dy=fw(null),Qs=()=>Gt(Dy,"useDailyReportErrorSurface","DailyReportErrorProvider"),Sy=Object.freeze([]),gy=({notice:e})=>or("div",{role:"alert",...Ew,className:"sr-only",children:e===null?null:or("span",{children:e.info.message},e.occurrence)}),Dw=({notice:e,closeLabel:t,repeatedLabel:r,onDismiss:n})=>{let o=Rn(null),a=Rn(null),s=Rn(null),i=mw(),l=Ld(),d=Ld(),c=Ld(),u=e.repeat>1?`${d} ${c}`:d,m=Xs(()=>{let y=o.current;if(y?.contains(y.ownerDocument.activeElement)){let[S,...h]=qs(y.ownerDocument);Ar([a.current,S,y.closest("dialog"),...h])}n()},[n]),p=y=>{if(s.current!==null)return;let S=y.relatedTarget;a.current=Pe(S)&&!y.currentTarget.contains(S)?S:null,s.current=i({id:l,onEscape:()=>(m(),!0)})},f=y=>{Pe(y.relatedTarget)&&y.currentTarget.contains(y.relatedTarget)||(s.current?.(),s.current=null,a.current=null)};return Ey(()=>()=>{s.current?.(),s.current=null},[]),Ty("div",{ref:o,role:"group","aria-labelledby":u,"data-testid":"daily-report-error-banner",className:hw,onFocus:p,onBlur:f,children:[or("span",{id:d,className:"min-w-0 font-medium",children:or(yw,{children:e.info.message},e.occurrence)}),e.repeat>1&&or("span",{id:c,className:"shrink-0 font-normal tabular-nums",children:r(e.repeat)}),or("button",{type:"button","aria-label":t,"aria-describedby":u,onClick:m,className:Sw,children:"\u2715"})]})},Nd=({children:e})=>{let{onError:t,labels:r}=q(),[n,o]=hy(null),[a,s]=hy(Sy),i=Rn(Sy),l=Rn(0),d=Rn(0),c=Rn(t);Ey(()=>{c.current=t});let u=Xs(D=>{let g=c.current;if(g){g(D);return}d.current+=1;let R=d.current,b=i.current,E=b.length===0?null:b[b.length-1].registration;o(I=>({info:D,occurrence:R,repeat:I!==null&&I.info.message===D.message?I.repeat+1:1,announcedIn:E}))},[]),m=Xs(D=>{l.current+=1;let g={element:D,registration:l.current};return i.current=[...i.current,g],s(i.current),()=>{i.current=i.current.filter(R=>R!==g),s(i.current)}},[]),p=Xs(()=>o(null),[]),f=Rw(()=>({notifyError:u,registerNoticeHost:m}),[u,m]),y=a.at(-1),S=n===null?null:or(Dw,{notice:n,closeLabel:r.close,repeatedLabel:r.noticeRepeated,onDismiss:p}),h=D=>n!==null&&n.announcedIn===D?n:null;return Ty(Dy.Provider,{value:f,children:[e,or(gy,{notice:h(null)}),a.map(D=>by(or(gy,{notice:h(D.registration)}),D.element,String(D.registration))),S!==null&&y!==void 0&&by(S,y.element),S!==null&&y===void 0&&or("div",{"data-daily-report-notice-slot":"",className:bw,children:S})]})};import{jsx as Md,jsxs as ww}from"react/jsx-runtime";var Zs=kt(void 0,1,"ActionProvider"),ei=globalThis.__DailyReportActionsContext??vy(null);globalThis.__DailyReportActionsContext=ei;var ti=globalThis.__DailyReportActionStateContext??vy(null);globalThis.__DailyReportActionStateContext=ti;var Js="DailyReportActionProvider",lt=()=>Gt(ei,"useDailyReportActions",Js),ri=()=>Gt(ti,"useDailyReportActionState",Js),Tw=()=>{let e=Gt(ei,"useDailyReportActionContext",Js),t=Gt(ti,"useDailyReportActionContext",Js);return Pd(()=>({...e,...t}),[e,t])},kd=({children:e,user:t,userId:r})=>{let{apiBasePath:n,labels:o}=q(),{notifyError:a}=Qs(),[s,i]=ar(0),[{ledgers:l,write:d}]=ar(()=>qf(()=>i(H=>H+1))),[c,u]=ar(0),[m,p]=ar(0),[f]=ar(ay),[y,S]=ar(!1),[h,D]=ar(ny),g=Od(!1),R=Xe(Yf),b=Od(jf),E=Xe(Gf),[I]=ar(()=>Kf(()=>performance.now())),[x]=ar(()=>Jf(()=>performance.now())),P=zf(),[O,B]=Tf(P,P.settled,b.current),w=O.items,_=`${c}:${O.settled?O.revision:"-"}`,A=()=>{u(H=>H+1)},T=()=>{i(H=>H+1)},L=wy(H=>E.current.has(H),[E]),F=wy(()=>Mf()===(r??null),[r]),U=async()=>{Zs.info("Refetching data without page reload..."),Jo(),T(),se.listeners.forEach(H=>{H(-1)})},j=async()=>{Zs.info("Clearing client & server/DB cache and refetching data without page reload..."),Uo(),b.current=new Set,E.current.clear(),p(H=>H+1),B(Af);try{sessionStorage.clear()}catch{}try{let H=await fetch(`${n}/${$e.action}`,{method:"POST",body:Is({intent:"clearCache"})});if(!H.ok){let ee=await H.json().catch(()=>null);Zs.warn("Failed to clear server-side cache:",H.status,ee)}}catch(H){Zs.warn("Failed to clear server-side cache:",H)}F()&&(Jo({forceRefresh:!0}),T(),se.listeners.forEach(H=>{H(-1)}))};xy(()=>()=>{for(let H of x.drain())H.unsubscribe()},[x]);let G=()=>{r&&(g.current=!0,S(H=>!H))};Ay(()=>{if(!r)return;let H=setTimeout(()=>{g.current||S(!0)},$p);return()=>clearTimeout(H)},[r]);let Q=H=>{F()&&(b.current=Zn(b.current,H),E.current.add(H),p(ee=>ee+1),Xn(H),B(ee=>fn(ee,H)),f.discard(H))};Ay(()=>{if(!O.settled)return;let H=new Set;for(let ee of b.current)Nf(ee)&&H.add(ee);H.size!==b.current.size&&(b.current=H)},[O.settled,O.revision]);let X={user:t,userId:r,labels:o,apiBasePath:n,items:w,isSessionStillOurs:F,ownEchoIds:I,ledgers:l,writeLedgers:d,pendingSseQueue:x,pendingAddPromises:R,removedIds:b,searchRemovedIds:E,setRemovedVersion:p,setRows:B,drafts:f,invalidateSearch:A,announceDataChange:T,replay:H=>V.current.handleSseMessage(H),notifyError:H=>V.current.notifyError(H)},fe=ey(X),De=Qf(X),N={toggleSse:G,...De,removeStaleItem:Q,refetchData:U,clearCacheAndRefetch:j,handleSseMessage:fe,notifyError:a},V=Od(N);xy(()=>{V.current=N});let[K]=ar(()=>Xf(V)),re=Pd(()=>({...l,...K.functions,user:t}),[l,K,t]),he=Pd(()=>({version:s,items:w,isSseEnabled:y,sseStatus:h,searchInvalidation:_,isReportRemoved:L,removedVersion:m}),[s,w,y,h,_,L,m]);return Md(Id.Provider,{value:f,children:Md(ei.Provider,{value:re,children:ww(ti.Provider,{value:he,children:[Md(Cd,{isSseEnabled:y,onMessage:K.onSseMessage,onStatus:D}),e]})})})};var Cy=(e,t)=>e.split(t).length-1,Iy=(e,t,r)=>{let n=e("\uE000","\uE001");if(Cy(n,"\uE000")!==1||Cy(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 Pw,useLayoutEffect as kw,useMemo as Ud}from"react";import{createContext as My,createElement as Iw,useCallback as Oy,useContext as Bd,useDeferredValue as _w,useLayoutEffect as Lw,useMemo as Hd,useSyncExternalStore as Nw}from"react";var _y=Object.freeze({subject:"subject",content:"content",author:"author",employeeName:"author",updatedBy:"updatedBy",category:"category",creationCategory:"creationCategory",customerName:"customer",interviewer:"interviewers",attachment:"attachments",comment:"comments"}),Aw=e=>Object.hasOwn(_y,e),xw=e=>{let t=e.indexOf(":"),r=t===-1?e:e.slice(0,t);if(!(Gn(e)&&Aw(r)))throw new Error(`[daily-report] A search mark leaf carries an unknown field key: ${e}`);return _y[r]},vw=Object.freeze([]),Ly=(e,t)=>e.map(({heading:r,matchedBy:n})=>n==="reading"?t.searchFieldMatchedByReading(t[r]):t.searchFieldMatched(t[r])).join(" "),Fd=e=>e.words>0||e.dense>0?"word":e.readings>0?"reading":null,Cw=(e,t)=>e.length===t.length&&e.every((r,n)=>r.heading===t[n].heading&&r.matchedBy===t[n].matchedBy),Ny=()=>{let e=new Map,t=new Map,r=new Set,n=null,o=0,a=0,s=vw,i=!1,l=Object.freeze({entry:n,isCurrent:!0,count:o,fields:s}),d=!1,c=l,u=!1,m=g=>!g.isCurrent||g.entry!==n,p=()=>{let g=[];for(let[R,b]of t){let E=Fd(b);E!==null&&g.push(Object.freeze({heading:R,matchedBy:E}))}return Object.freeze(g)},f=()=>{if(!d)return l;d=!1;for(let[R,b]of t)b.leaves===0&&t.delete(R);let g=a===0;if(i){i=!1;let R=p();Cw(R,s)||(s=R)}return l.entry===n&&l.isCurrent===g&&l.count===o&&l.fields===s||(l=Object.freeze({entry:n,isCurrent:g,count:o,fields:s})),l},y=()=>{u=!1;let g=f();if(g!==c){c=g;for(let R of[...r])R()}},S=()=>{d=!0,!u&&(u=!0,queueMicrotask(y))},h=g=>{let R=t.get(g);if(R!==void 0)return R;let b={leaves:0,words:0,readings:0,dense:0};return t.set(g,b),b},D=(g,R)=>{o+=R*(g.words+g.readings),m(g)&&(a+=R);let b=h(g.heading),E=Fd(b);b.leaves+=R,b.words+=R*g.words,b.readings+=R*g.readings,g.dense&&(b.dense+=R),Fd(b)!==E&&(i=!0)};return{register:g=>{let R={...g,heading:xw(g.fieldKey)},b=Object.freeze({});return e.set(b,R),D(R,1),S(),b},unregister:g=>{let R=e.get(g);R!==void 0&&(e.delete(g),D(R,-1),S())},settle:g=>{if(g!==n){n=g,a=0;for(let R of e.values())m(R)&&(a+=1);S()}},subscribe:g=>(r.add(g),()=>{r.delete(g)}),getSnapshot:f}};var pt=My(null),Py=My(null),ra=()=>{let e=Bd(Py);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},Ow=()=>{},Mw=()=>Ow,ky=e=>{let t=Bd(pt),r=Oy(i=>t===null?Mw():t.subscribe(e,i),[t,e]),n=Oy(()=>{let i=t===null?void 0:t.read(e);return i===void 0?null:i},[t,e]),o=Nw(r,n,n),a=Hd(()=>t===null||o===null?null:{store:t,entry:o},[t,o]),s=_w(a,a===null?void 0:null);return s!==null&&s.store===t?s.entry:null},Jn=({reportHubId:e,entry:t,children:r})=>{let n=Bd(pt),o=Hd(()=>n===null?null:Ny(),[n]),a=Hd(()=>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 Lw(()=>{o!==null&&o.settle(t)},[o,t]),Iw(Py.Provider,{value:a},r)};import{jsx as Hy}from"react/jsx-runtime";var Fw="data-daily-report-search-mark",Hw=Object.freeze({[Nn.word]:Object.freeze({attribute:"word",description:null}),[Nn.reading]:Object.freeze({attribute:"reading",description:"searchReadingMarkDescription"})}),Fy=e=>{if(!Mo(e))throw new Error(`[daily-report] A search mark carries an unknown tier: ${e}`);return Hw[e]},Bw=Object.freeze({words:0,readings:0}),Uw=e=>{if(e===null)return Bw;let t=0;for(let r=2;r<e.length;r+=3)Fy(e[r]).attribute==="reading"&&(t+=1);return{words:e.length/3-t,readings:t}},Vw=(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=Fy(t[a+2]);s>o&&n.push(e.slice(o,s)),n.push(Hy("mark",{[Fw]:l.attribute,"aria-description":l.description===null?void 0:r[l.description],className:Cu,children:e.slice(s,i)},`m${s}`)),o=i}return o<e.length&&n.push(e.slice(o)),n},Ww=({fieldKey:e,raw:t,display:r})=>{let{entry:n,revalidate:o,tally:a}=ra(),{labels:s}=q(),i=typeof t=="string"?t:"",l=Ud(()=>n===null||i.length===0?null:dd(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,m=c!==null&&"dense"in c,p=c!==null,f=Ud(()=>u===null?null:Uu(r,u),[u,r]),y=Ud(()=>Uw(f),[f]);return kw(()=>{if(l===null)return;p||o(e,l);let S=a.register({entry:n,isCurrent:p,fieldKey:e,words:y.words,readings:y.readings,dense:m});return()=>a.unregister(S)},[a,o,n,l,p,e,y,m]),f===null||f.length===0?r.text:Vw(r.text,f,s)},ge=({fieldKey:e,raw:t,display:r})=>Pw(pt)===null?r.text:Hy(Ww,{fieldKey:e,raw:t,display:r});import{jsx as Kw}from"react/jsx-runtime";var zw={2:"h2",3:"h3",4:"h4",5:"h5",6:"h6"},Kr=Object.freeze({2:3,3:4,4:5,5:6}),wt=({level:e,...t})=>{let r=zw[e];return Kw(r,{...t})};import{memo as vR,useId as KA,useMemo as $A,useRef as CR}from"react";var By=Object.freeze({tile:Object.freeze({maxWidth:480,maxHeight:320})});var Wd="tile",oa=By[Wd],$w=2,na=16,Uy=5,Vy=oa.maxWidth/$w,jw=Uy*(Vy+na)-na,Wy=e=>{let t=Math.min(Uy,1+Math.floor((e+na)/(Vy+na)));return Math.floor((Math.min(e,jw)-(t-1)*na)/t)},Vd=`round(nearest, 100cqi * ${oa.maxHeight} / ${oa.maxWidth}, 1px)`,zy=Object.freeze({aspectRatio:`${oa.maxWidth} / ${oa.maxHeight}`,height:Vd,contain:"strict"}),Gw="--aqdr-lattice-block",Ky=Object.freeze({marginBlockEnd:`calc(round(up, ${Vd}, var(${Gw})) - ${Vd})`});var Yw="download",qw="thumbnail",Xw="1",eo=(e,t,r)=>{let n=`${e}/attachment/${encodeURIComponent(t)}`;switch(r.kind){case"inline":return n;case"download":return`${n}?${new URLSearchParams({[Yw]:Xw})}`;case"thumbnail":return`${n}?${new URLSearchParams({[qw]:r.variant})}`}};import{createContext as jy,useCallback as Qw,useContext as Gy,useMemo as Zw,useState as Jw}from"react";var zd=jy(null),Kd=jy(null),$y=(e,t)=>{if(t){e.hasAttribute("tabindex")&&e.removeAttribute("tabindex");return}e.getAttribute("tabindex")!=="-1"&&e.setAttribute("tabindex","-1")},Yy=e=>{let t=new Map,r=null,n=!1,o=(d,c)=>{let u=d===null?void 0:t.get(d);if(u!==void 0)for(let m of u)$y(m,c)},a=()=>{let d=e.getActiveId();o(r,!1),o(d,!0),r=d},s=d=>e.getActiveId()===d,i=(d,c)=>{n||(n=!0,r=e.getActiveId(),e.subscribeActive(a));let u=t.get(d);u===void 0&&(u=new Set,t.set(d,u));let m=u;return m.add(c),$y(c,d===r),()=>{m.delete(c),m.size===0&&t.delete(d)}};return{isActive:s,attach:i,scopeOf:d=>({isActive:()=>s(d),attach:c=>i(d,c)})}},qy=e=>{let t=Gy(zd);if(t===null)throw new Error("[daily-report] useRowControlScope is called outside a view's rows (no control registry)");return Zw(()=>t.scopeOf(e),[t,e])},eA=(e,t)=>{if(typeof e!="function")return e.current=t,()=>{e.current=null};let r=e(t);return typeof r=="function"?r:()=>{e(null)}},to=e=>{let t=Gy(Kd),[r]=Jw(()=>t===null||t.isActive()?void 0:-1),n=Qw(o=>{let a=e===void 0?null:eA(e,o),s=t===null?null:t.attach(o);return()=>{s!==null&&s(),a!==null&&a()}},[t,e]);return{tabIndex:r,ref:n}},Xy=(e,t)=>{let{before:r,after:n}=Vo(e.ownerDocument,e);return(t==="before"?r.at(-1):n[0])??null},Qy=(e,t,r)=>{if(t===null)return!r&&cs(e).length>0;if(!e.contains(t))return!1;let{before:n,within:o,after:a}=Vo(e,t);return r?n.length>0:o.length>0||a.length>0};import{createContext as sA,useContext as iA,useLayoutEffect as lA,useMemo as aR,useState as dA}from"react";import{flushSync as cA}from"react-dom";import{flushSync as tA}from"react-dom";var $d=new WeakMap,Zy=e=>e.observedTrackWidth!==null&&e.observedTrackWidth!==e.handedTrackWidth,Jy=e=>e.overflowWidth!==null&&e.overflowWidth!==e.handedOverflowWidth,rA=(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},eR=(e,t,r)=>{let n=rA(e,t);return n===null||n.handedTrackWidth===null||r<=n.handedTrackWidth?null:{track:n,trackWidth:n.handedTrackWidth}},nA=e=>{e.frame=null;let t=new Map;for(let r of e.observations.values())Zy(r)&&t.set(r,r.observedTrackWidth);for(let[r,n]of e.fittedNames){if(!Jy(n))continue;let o=n.overflowWidth;n.handedOverflowWidth=o;let a=eR(e,r,o);a===null||t.has(a.track)||t.set(a.track,a.trackWidth)}t.size!==0&&tA(()=>{for(let[r,n]of t)r.handedTrackWidth=n,r.onTrackWidth(n)})},oA=(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(eR(e,r.target,n)!==null){a.overflowWidth=n;continue}a.overflowWidth=null,a.handedOverflowWidth=null}}e.frame!==null||!([...e.observations.values()].some(Zy)||[...e.fittedNames.values()].some(Jy))||(e.frame=e.view.requestAnimationFrame(()=>nA(e)))},aA=e=>{let t=$d.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=>oA(n,o)),observations:new Map,fittedNames:new Map,frame:null};return $d.set(e,n),n},tR=(e,t)=>{let r=aA(e.ownerDocument);if(r.observations.has(e)||r.fittedNames.has(e))throw new Error(t);return r},rR=(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(),$d.delete(e.view.document))},nR=(e,t,r)=>{let n=tR(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),rR(n,e))}},oR=e=>{let t=tR(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),rR(t,e))}};import{jsx as sr,jsxs as dR}from"react/jsx-runtime";var Yd="\u2026",uA=Yd.codePointAt(0),sR=Object.freeze({text:Yd,runs:Object.freeze([])}),ni="data-attachment-file-name",pA=Ve("block min-w-0"),mA="block w-fit whitespace-nowrap",fA=new Set([" ","\xA0","\u1361","\u{10100}","\u{10101}","\u{1039F}","\u{1091F}"," ",`
|
|
5
|
+
`,"\f","\r"]),yA=/^-?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?px$/,qd=({fileName:e})=>sr("span",{className:Jt,children:e}),RA=/"([^"]*)"|'([^']*)'|([^\s,"'][^,"']*)/g,hA=/^U\+([\dA-F?]{1,6})(?:-([\dA-F]{1,6}))?$/i,Xd=sA(null),cR=e=>{let t=e.text.lastIndexOf(".");return t<=0||t===e.text.length-1?{stem:e,extension:Ot("")}:{stem:To(e,0,t),extension:To(e,t,e.text.length)}},jd=(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 To(e,0,o.slice(0,a).join("").length)},bA=(e,t,r)=>{if(r(e)<=t)return Ot(e);let{stem:n,extension:o}=cR(Bu(e)),a=t/2,s=r(o.text)<=a?o:Cn([jd(o,Yd,a,r),sR]);if(r(n.text+s.text)<=t)return Cn([n,s]);let i=Cn([sR,s]);return r(i.text)>t?jd(i,"",t,r):Cn([jd(n,i.text,t,r),i])},iR=new WeakMap,uR=e=>{let t=iR.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 iR.set(e,n),n},pR=(e,t,r)=>`${e}|${t}|${r}`,SA=(e,t,r,n)=>{let o=pR(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+=fA.has(d)?r+n:r;return e.context.measureText(i).width+l};return e.measures.set(o,s),s},mR=e=>{let t=new Set;for(let r of e.matchAll(RA)){let n=r.slice(1).find(o=>o!==void 0);t.add(n.trim().replace(/\s+/g," ").toLowerCase())}return t},lR=e=>e==="normal"?0:yA.test(e)?Math.max(Number.parseFloat(e),0):null,gA=e=>{let t=getComputedStyle(e),r=lR(t.letterSpacing),n=lR(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:mR(t.fontFamily),measure:SA(uR(e.ownerDocument),o,r,n)}},EA=(e,t)=>e===t||e!==null&&t!==null&&e.width===t.width&&e.measure===t.measure,DA=e=>{let t=new Set([uA]);for(let r of e.querySelectorAll(`[${ni}]`)){let n=r.getAttribute(ni);for(let o of n+n.normalize("NFC"))t.add(o.codePointAt(0))}return t},TA=(e,t)=>{for(let r of e.split(",")){let n=hA.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},Gd=new WeakMap,fR=e=>{let t=Gd.get(e);if(t!==void 0)return t;let r={document:e,registrations:new Set,stopWatchingFonts:null};return Gd.set(e,r),r},yR=(e,t)=>{let r=gA(e.container.querySelector(`[${ni}]`));if(r===null){e.fitted=null,e.applyFit(null);return}e.fitted={trackWidth:t,nameFont:r};let n=fR(e.container.ownerDocument);n.stopWatchingFonts===null&&(n.stopWatchingFonts=AA(n)),e.applyFit({width:t,measure:r.measure})},wA=(e,t)=>{let r=t.map(o=>({families:mR(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=DA(o.container);s.some(l=>TA(l.unicodeRange,i))&&(uR(e.document).measures.delete(pR(a.nameFont.font,a.nameFont.letterSpacing,a.nameFont.wordSpacing)),n.push([o,a.trackWidth]))}n.length!==0&&cA(()=>{for(let[o,a]of n)yR(o,a)})},AA=e=>{let t=e.document.fonts,r=n=>{wA(e,n.fontfaces)};return t.addEventListener("loadingdone",r),()=>{t.removeEventListener("loadingdone",r)}},xA=(e,t,r)=>{let n={container:e,applyFit:r,fitted:null},o=nR(e,t,s=>yR(n,s)),a=fR(e.ownerDocument);return a.registrations.add(n),()=>{o(),a.registrations.delete(n),!(a.registrations.size>0)&&(a.stopWatchingFonts?.(),Gd.delete(a.document))}},RR=(e,t)=>{let[r,n]=dA(null);return lA(()=>{let o=e.current;return xA(o,t,s=>{n(i=>EA(i,s)?i:s)})},[e,t]),r},hR=({containerRef:e,children:t})=>{let r=RR(e,Wy);return sr(Xd,{value:r,children:t})},vA=e=>e,bR=({containerRef:e,children:t})=>{let r=RR(e,vA);return sr(Xd,{value:r,children:t})},aa=({fileName:e,attachmentIndex:t,className:r,testId:n})=>{let o=iA(Xd),a=aR(()=>o===null?null:bA(e,o.width,o.measure),[e,o]),{stem:s,extension:i}=aR(()=>cR(Ot(e)),[e]),l=we.attachment(t);return dR("span",{className:pA(r),title:e,"data-testid":n,[ni]:e,children:[a===null?dR("span",{"aria-hidden":"true",className:"flex min-w-0",children:[sr("span",{className:"truncate",children:sr(ge,{fieldKey:l,raw:e,display:s})}),i.text!==""&&sr("span",{className:"max-w-1/2 shrink-0 truncate",children:sr(ge,{fieldKey:l,raw:e,display:i})})]}):sr("span",{ref:oR,"aria-hidden":"true",className:mA,children:sr(ge,{fieldKey:l,raw:e,display:a})}),sr(qd,{fileName:e})]})};import NA from"lucide-react/dist/esm/icons/image-off.js";import{memo as OA,useCallback as Jd,useEffect as MA,useLayoutEffect as PA,useRef as ec,useState as kA}from"react";var oi=Object.freeze({queueWaitMs:3e4,readMs:3e4,renderMs:1e4,transferMarginMs:5e3}),SR=oi.queueWaitMs+oi.readMs+oi.renderMs+oi.transferMarginMs;var CA=Object.freeze({kind:"loaded"}),gR=(e,t,r,n,o)=>{let{limiter:a,tuning:s}=n,i="watching",l=null,d=null,c=null,u=null,m=null,p=_=>(_!==null&&n.clearTimeout(_),null),f=()=>{u?.(),u=null},y=()=>{m?.(),m=null},S=_=>_===null||_.kind==="loaded"?0:_.kind==="failing"?_.failedAttempts:s.maxAttempts,h=_=>{i="cooling",c=n.setTimeout(P,_)},D=()=>{o.abortInFlight(),y();let _=S(r.get(t))+1;if(_>=s.maxAttempts){i="done",r.set(t,{kind:"exhausted",failedAt:n.now()}),o.exhausted();return}r.set(t,{kind:"failing",failedAttempts:_,retryAt:n.now()+s.retryDelayMs}),o.reset(),h(s.retryDelayMs)},g=_=>{if(i==="loading"){if(d=p(d),!_){D();return}i="done",r.set(t,CA),y()}},R=()=>{d=null,g(!1)},b=()=>{i="loading",o.showActivity(!0),f(),d=n.setTimeout(R,s.loadTimeoutMs),o.grant()},E=()=>{l=null,i="queued",m=a.request(b)},I=()=>{l===null&&(l=n.setTimeout(E,s.settleMs))},x=_=>{if(o.showActivity(_),_){i==="watching"&&I();return}if(i==="queued"){y(),i="watching";return}l=p(l)},P=()=>{c=null,i="watching",o.showActivity(!1),u=n.observe(e,x)},O=()=>{let _=i==="loading";i="done",f(),l=p(l),d=p(d),c=p(c),o.showActivity(!1),_&&(o.abortInFlight(),m!==null&&o.reset()),y()},B=r.get(t);if(B?.kind==="loaded")return i=o.shows()?"done":"loading",o.grant(),{settle:g,dispose:O};if(B?.kind==="exhausted"){if(n.now()-B.failedAt<s.failureMemoryMs)return i="done",o.exhausted(),{settle:g,dispose:O};r.delete(t)}o.reset();let w=B?.kind==="failing"?B.retryAt-n.now():0;return w>0?h(w):P(),{settle:g,dispose:O}};var IA=e=>{ut("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())}}}},ER=IA(2);var _A=e=>{ut("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)}}},Qd=_A(1024);var Zd=new WeakMap,LA=e=>{let t=Zd.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 Zd.set(e,a),a},DR=(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(),Zd.delete(r)))}};import{jsx as sa,jsxs as zA}from"react/jsx-runtime";var FA={idle:"pending",granted:"pending",loaded:"loaded",failed:"unavailable"},HA="data-thumbnail-active",BA="data-daily-report-attachment-preview",wR={[BA]:""},UA=Object.freeze({settleMs:250,loadTimeoutMs:SR,retryDelayMs:5e3,maxAttempts:2,failureMemoryMs:6e4}),TR=e=>{let t=Qd.peek(e);return t?.kind==="loaded"?{url:e,status:"loaded"}:t?.kind==="exhausted"?{url:e,status:"failed"}:{url:e,status:"idle"}},VA=()=>({limiter:ER,now:()=>performance.now(),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),observe:DR,tuning:UA}),WA=(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(HA,o)}}),AR=OA(({thumbnailUrl:e,unavailableLabel:t})=>{let r=ec(null),n=ec(null),o=ec(null),[a,s]=kA(()=>TR(e));a.url!==e&&s(TR(e)),PA(()=>{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]),MA(()=>{let c=r.current,u=gR(c,e,Qd,VA(),WA(e,c,s,n));return o.current=u,()=>{o.current=null,u.dispose()}},[e]);let i=Jd(c=>{c!==null&&(n.current=c)},[]),l=Jd(()=>{s(c=>c.status==="granted"?{url:c.url,status:"loaded"}:c),o.current?.settle(!0)},[]),d=Jd(()=>{o.current?.settle(!1)},[]);return sa("span",{className:"block",children:sa("span",{ref:r,"aria-hidden":"true","data-testid":"daily-report-attachment-thumbnail-frame","data-thumbnail-state":FA[a.status],style:zy,className:"relative block w-full",children:sa("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"?zA("span",{className:`flex size-full flex-col items-center justify-center gap-1 px-2 text-center ${de} text-xs ${fr}`,"data-testid":"daily-report-attachment-thumbnail-unavailable",children:[sa(NA,{"aria-hidden":"true",className:"size-5 shrink-0 text-slate-500 dark:text-slate-400"}),t]}):sa("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 Be,jsxs as ir}from"react/jsx-runtime";var xR=1024,tc=["B","KB","MB","GB"],IR=`${de} text-sm line-through`,jA="relative truncate",GA=Ve(jA),YA=C("relative ml-auto shrink-0 rounded-sm 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:decoration-slate-600 dark:hover:text-slate-200",de,le),qA="text-blue-800 text-sm dark:text-blue-300 [@media(hover:hover)]:[[data-daily-report-attachment-preview]:hover_&]:underline",XA="text-blue-800 text-sm hover:underline dark:text-blue-300",QA=`flex h-4 min-w-0 items-center gap-2 ${de} text-xs tabular-nums`,ZA=`${de} text-xs tabular-nums`,JA=C("flex min-w-0 flex-col gap-2 rounded-lg",le),ex=C("flex min-w-0 rounded-sm",le),tx=C("m-0",en),rx=e=>{if(e===null||!Number.isFinite(e)||e<0)return null;let t=e,r=0;for(;t>=xR&&r<tc.length-1;)t/=xR,r+=1;return r===0?`${t} ${tc[r]}`:`${t.toFixed(1)} ${tc[r]}`},nx=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}},_R=({attachment:e,labels:t,className:r})=>ir("span",{className:GA(r),children:[rx(e.fileSize)??"\u2014",e.state==="absent"&&` \xB7 ${t.attachmentMissing}`]}),rc=({href:e,children:t,...r})=>{let n=to();return Be("a",{href:e,...r,...n,children:t})},LR=({downloadUrl:e,label:t,fileName:r})=>ir(rc,{href:e,className:YA,"data-testid":"daily-report-attachment-download",children:[t," ",Be(qd,{fileName:r})]}),ox=vR(({attachment:e,attachmentIndex:t,apiBasePath:r,labels:n})=>{let o=Be(AR,{thumbnailUrl:eo(r,e.id,{kind:"thumbnail",variant:Wd}),unavailableLabel:n.attachmentThumbnailUnavailable}),a=e.state==="absent";return ir("li",{className:"@container flex min-w-0 flex-col gap-1","data-testid":"daily-report-attachment-item","data-attachment-state":e.state,children:[a?ir("div",{className:"flex min-w-0 flex-col gap-2",children:[o,Be(aa,{fileName:e.fileName,attachmentIndex:t,className:IR,testId:"daily-report-attachment-name"})]}):ir(rc,{href:eo(r,e.id,{kind:"inline"}),className:JA,"data-testid":"daily-report-attachment-link",...wR,children:[o,Be(aa,{fileName:e.fileName,attachmentIndex:t,className:qA})]}),ir("div",{className:QA,style:Ky,children:[Be(_R,{attachment:e,labels:n}),!a&&Be(LR,{downloadUrl:eo(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})]})}),ax=vR(({attachment:e,attachmentIndex:t,apiBasePath:r,labels:n})=>{let o=e.state==="absent",a=CR(null);return ir("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:[Be(bR,{containerRef:a,children:Be("div",{ref:a,className:"flex min-w-0 flex-1","data-testid":"daily-report-attachment-name-track",children:ir("div",{className:"flex min-w-0 flex-col",children:[o?Be(aa,{fileName:e.fileName,attachmentIndex:t,className:IR,testId:"daily-report-attachment-name"}):Be(rc,{href:eo(r,e.id,{kind:"inline"}),className:ex,"data-testid":"daily-report-attachment-link",children:Be(aa,{fileName:e.fileName,attachmentIndex:t,className:XA})}),Be(_R,{attachment:e,labels:n,className:ZA})]})})}),!o&&Be(LR,{downloadUrl:eo(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})}),sx=({entries:e,headingId:t,apiBasePath:r,labels:n})=>{let o=CR(null);return Be(hR,{containerRef:o,children:Be("div",{ref:o,className:"@container","data-testid":"daily-report-attachment-grid-container",children:Be("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})=>Be(ox,{attachment:a,attachmentIndex:s,apiBasePath:r,labels:n},a.id))})})})},ai=({attachments:e})=>{let{apiBasePath:t,labels:r,headingLevel:n}=q(),o=KA(),{tiles:a,rows:s}=$A(()=>nx(e),[e]);return e.length===0?null:ir("div",{className:"flex flex-col gap-2","data-testid":"daily-report-attachment-section",children:[Be(wt,{level:Kr[n],id:o,className:tx,children:r.attachments}),ir("div",{className:"flex flex-col gap-4",children:[a.length>0&&Be(sx,{entries:a,headingId:o,apiBasePath:t,labels:r}),s.length>0&&Be("ul",{"aria-labelledby":o,className:"flex flex-col gap-2","data-testid":"daily-report-attachment-rows",children:s.map(({attachment:i,index:l})=>Be(ax,{attachment:i,attachmentIndex:l,apiBasePath:t,labels:r},i.id))})]})]})};import{useOverlayEscapeStack as Ax}from"@aiquants/swipe-overlay";import{memo as HR,useCallback as di,useEffect as MR,useId as BR,useLayoutEffect as xx,useRef as sc,useState as vx}from"react";import{useCallback as NR,useMemo as ix,useState as lx}from"react";var dx=()=>[],nc=(e,t,r)=>{let{pendingAddCommentIds:n,pendingDeleteCommentIds:o,resolvedIdMap:a,addComment:s,deleteComment:i}=lt(),{version:l}=ri(),{labels:d}=q(),c=d.unknownUser,[u,m]=lx(null),p=NR(h=>e&&i(e.reportHubId,h,e.date),[e,i]),f=NR(h=>e&&t?s(e.reportHubId,h,e.date):Promise.resolve(),[e,t,s]),y=Xe(dx);return{uiComments:ix(()=>{if(!e)return[];let h=uf(e.externalComments,e.postedComments,r,c),D=o.current.get(e.reportHubId);D?.size&&(h=h.filter(R=>!D.has(R.id)));let g=n.current.get(e.reportHubId);if(g?.size&&t){let R=new Set(h.map(x=>x.id)),b=wr(t,""),E=b==="",I=E?c:b;for(let[x,P]of g){if(D?.has(x)||R.has(x))continue;let O=a.current.get(x);O&&R.has(O)||h.some(B=>B.isMine&&B.content===P&&typeof B.id=="number"&&B.id>0)||h.push({id:x,authorName:I,content:P,createdAt:new Date().toISOString(),isMine:!0,isLegacy:!1,isAuthorUnknown:E})}}return JSON.stringify(h)===JSON.stringify(y.current)?y.current:(y.current=h,h)},[e,t,r,c,o,n,a,l]),handleAddComment:f,handleDeleteComment:p,pendingDeleteId:u,setPendingDeleteId:m,resolvedIdMap:a.current}};import{Fragment as cx,jsx as ux}from"react/jsx-runtime";var rt=({render:e,elementRef:t})=>{let r=to(t);return ux(cx,{children:e(r)})};import px from"@heroicons/react/24/outline/TrashIcon.js";import{memo as mx,useId as fx,useMemo as OR,useRef as yx,useState as Rx}from"react";import{jsx as lr,jsxs as si}from"react/jsx-runtime";var oc="data-comment-id",ii="data-comment-delete-button",li="data-comment-delete-slot",hx=C(it,cu),bx=Array.from({length:8},(e,t)=>C("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")),Sx=(e,t,r)=>(e?4:0)+(t?2:0)+(r?1:0),gx=Ve("font-semibold text-xs"),Ex=`${de} text-xs`,Dx="relative flex h-5 items-center",Tx=C(Je,"motion-safe:fade-in motion-safe:zoom-in-95 absolute top-full right-0 z-20 mt-1 whitespace-nowrap bg-red-800 font-bold text-white text-xs shadow-lg hover:bg-red-900 active:bg-red-950 motion-safe:animate-in motion-safe:duration-200",le),wx=(e,t,r)=>t===e||typeof e=="number"&&e<0&&r?.get(e)===t||typeof t=="number"&&t<0&&r?.get(t)===e,ac=mx(({comment:e,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:s,onBeforeHide:i,resolvedIdMap:l})=>{let[d,c]=Rx(!1),{labels:u}=q(),m=fx(),p=yx(null),f=wx(e.id,o,l),y=OR(()=>Ke(e.authorName),[e.authorName]),S=OR(()=>Ot(e.content),[e.content]),h=we.comment(e.id,"author"),D=we.comment(e.id,"content"),g=Gn(D),R=e.isMine&&!e.isLegacy,b=!!e.createdAt||R,E=()=>{let x=p.current;x!==null&&i(x),a(null),c(!0),typeof e.id=="number"&&n?.(e.id)},I=x=>{if(!f)return;let P=x.relatedTarget;Pe(P)&&x.currentTarget.contains(P)||a(null)};return si("li",{[oc]:e.id,"data-deleted":d?"true":void 0,className:bx[Sx(e.isMine,d,f)],children:[si("div",{className:"mb-1 flex items-center justify-between",children:[lr("div",{className:gx(pf(e.color)),children:g&&!e.isAuthorUnknown?lr(ge,{fieldKey:h,raw:e.authorName,display:y}):y.text}),b&&si("div",{className:"flex items-center gap-2",children:[e.createdAt&&lr("div",{className:Ex,children:Ne(e.createdAt)}),R&&si("div",{[li]:e.id,className:Dx,onBlur:I,children:[lr(rt,{elementRef:p,render:x=>lr("button",{type:"button",...x,className:hx,title:u.commentDelete,"aria-label":u.commentDelete,"aria-expanded":f,"aria-controls":f?m:void 0,[ii]:e.id,onClick:()=>s(e.id,f),children:lr(px,{"aria-hidden":"true",className:f?et.deletePending:et.delete})})}),f&&lr(rt,{render:x=>lr("button",{id:m,type:"button",...x,"data-delete-confirmation":!0,className:Tx,onClick:E,children:u.commentDeleteConfirm})})]})]})]}),lr("div",{className:"whitespace-pre-wrap text-slate-700 text-sm leading-6 dark:text-slate-200",children:g?lr(ge,{fieldKey:D,raw:e.content,display:S}):e.content})]})});ac.displayName="DailyReportPostedComment";import{Fragment as Bx,jsx as Ut,jsxs as ic}from"react/jsx-runtime";var Cx="data-daily-report-comment-section",Ix="data-daily-report-comment-heading",_x=C(mr,le),Lx=Ve("flex flex-col gap-2"),UR=(e,t)=>e>0||t,Nx=C("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",pr,le),Ox=C("h-9 rounded-lg bg-blue-800 px-4 font-medium text-sm text-white hover:bg-blue-900 disabled:opacity-50",le),PR=e=>e.querySelector(`[${ii}][aria-expanded="true"]`),Mx=(e,t,r)=>{let n=[...e.querySelectorAll(`[${ii}]`)].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(`[${oc}]`)].filter(i=>!i.contains(t)&&i.closest("[data-deleted]")===null).length;return UR(s,r)?{kind:"heading"}:{kind:"report"}},Px=({comments:e,reportHubId:t,businessDate:r,onDeleteComment:n,pendingDeleteId:o,onPendingDeleteIdChange:a,resolvedIdMap:s,canComment:i,headingRef:l,onSectionRemoved:d})=>{let c=sc(null),u=Ax(),m=BR(),p=o!==null,f=di(()=>{let h=c.current,D=h===null?null:PR(h),g=D===null?null:D.closest(`[${li}]`),R=h===null?null:tt(h);a(null),D!==null&&g!==null&&R!==null&&g.contains(R)&&D.focus({preventScroll:!0})},[a]);MR(()=>{if(p)return u({id:m,onEscape:()=>(f(),!0)})},[p,u,m,f]),MR(()=>{let h=c.current;if(!p||h===null)return;let D=h.ownerDocument,g=R=>{let b=PR(h)?.closest(`[${li}]`);b!=null&&Pe(R.target)&&b.contains(R.target)||a(null)};return D.addEventListener("pointerdown",g,!0),()=>D.removeEventListener("pointerdown",g,!0)},[p,a]);let y=di((h,D)=>{D?f():a(h)},[f,a]),S=di(h=>{let D=c.current;if(D===null)return;let g=Mx(D,h,i);if(g.kind==="report"){d();return}let R=g.kind==="trash"?g.button:l.current;if(R===null)throw new Error("[daily-report] the comment section's heading is not attached");R.focus({preventScroll:!0})},[i,l,d]);return e.length===0?null:Ut("ul",{ref:c,className:"space-y-2",children:e.map(h=>Ut(ac,{comment:h,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:y,onBeforeHide:S,resolvedIdMap:s},h.id))})},kR=({headingId:e,className:t,children:r,...n})=>{let{labels:o,headingLevel:a}=q(),s=sc(null);return UR(n.comments.length,n.canComment)?ic("div",{[Cx]:"",className:Lx(t),children:[Ut(wt,{ref:s,id:e,level:Kr[a],tabIndex:-1,[Ix]:"",className:_x,children:o.comments}),Ut(Px,{...n,headingRef:s}),r]}):null},VR=HR(({report:e,canComment:t,onSectionRemoved:r,formPlacement:n,sectionClassName:o,comments:a,onAddComment:s,onDeleteComment:i,pendingDeleteId:l,onPendingDeleteIdChange:d,resolvedIdMap:c})=>{let u=BR(),m=t?Ut(Hx,{onAddComment:s,pushedToEnd:n==="after-section",labelledBy:u}):null,p={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"?Ut(kR,{...p,children:m}):ic(Bx,{children:[Ut(kR,{...p}),m]})});VR.displayName="ReportCommentsView";var ia=HR(({report:e,userId:t,canComment:r,onCommentAdded:n,onSectionRemoved:o,formPlacement:a,sectionClassName:s})=>{let{user:i}=lt(),{uiComments:l,handleAddComment:d,handleDeleteComment:c,pendingDeleteId:u,setPendingDeleteId:m,resolvedIdMap:p}=nc(e,i,t),f=af(),y=sc(!1);xx(()=>{y.current&&f(),y.current=!0},[l,u,f]);let S=di(async h=>{await d(h),n?.()},[d,n]);return Ut(VR,{report:e,canComment:r,onSectionRemoved:o,formPlacement:a,sectionClassName:s,comments:l,onAddComment:S,onDeleteComment:c,pendingDeleteId:u,onPendingDeleteIdChange:m,resolvedIdMap:p})});ia.displayName="ReportComments";var kx="flex gap-2",Fx="mt-auto flex gap-2",FR="content",Hx=({onAddComment:e,pushedToEnd:t,labelledBy:r})=>{let[n,o]=vx(!1),{labels:a}=q();return ic("form",{className:t?Fx:kx,onSubmit:async i=>{i.preventDefault();let l=i.currentTarget,d=l.elements.namedItem(FR);if(!(d instanceof je(l).HTMLInputElement))return;let c=d.value.trim();if(c&&e){o(!0);try{await e(c),l.reset()}catch{}finally{o(!1)}}},children:[Ut(rt,{render:i=>Ut("input",{type:"text",name:FR,...i,"aria-labelledby":r,placeholder:a.commentPlaceholder,className:Nx,autoComplete:"off",readOnly:n})}),Ut(rt,{render:i=>Ut("button",{type:"submit",...i,className:Ox,disabled:n,children:a.commentSend})})]})};import{useState as ev}from"react";import{Slot as Ux}from"@radix-ui/react-slot";import{cva as Vx}from"class-variance-authority";import*as zR from"react";import{jsx as Kx}from"react/jsx-runtime";var Wx=Vx(`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 ${le}`,{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"}}),WR=new Map,zx=(e,t,r)=>{let n=`${String(e)}|${String(t)}`,o=WR.get(n);if(o!==void 0)return o(r);let a=Ve(Wx({variant:e,size:t}));return WR.set(n,a),a(r)},xr=zR.forwardRef(({className:e,variant:t,size:r,asChild:n=!1,...o},a)=>Kx(n?Ux:"button",{className:zx(t,r,e),ref:a,...o}));xr.displayName="Button";import{jsx as Gx}from"react/jsx-runtime";var $x=`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 ${pr} ${le}`,jx=Ve($x);function KR({className:e,type:t,...r}){return Gx("input",{type:t,"data-slot":"input",className:jx(e),...r})}import*as $R from"@radix-ui/react-label";import{jsx as Xx}from"react/jsx-runtime";var Yx="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",qx=Ve(Yx);function la({className:e,...t}){return Xx($R.Root,{"data-slot":"label",className:qx(e),...t})}import{jsx as Jx}from"react/jsx-runtime";var Qx=`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 ${pr} ${le}`,Zx=Ve(Qx);function jR({className:e,...t}){return Jx("textarea",{"data-slot":"textarea",className:Zx(e),...t})}import{jsx as Vt,jsxs as ci}from"react/jsx-runtime";var ro=e=>({title:e.subject??"",content:e.content??""}),tv=e=>{e.preventDefault()},ui=({report:e,onCancel:t,onPublishSuccess:r,titleInputRef:n})=>{let{updateReport:o,publishReport:a}=lt(),{labels:s}=q(),i=zr(),{title:l,content:d}=iy(e.reportHubId),[c,u]=ev(!1),m=async()=>{u(!0);try{await o(e.reportHubId,{title:l,content:d},e.date)}catch{}finally{u(!1)}},p=async()=>{u(!0);try{await o(e.reportHubId,{title:l,content:d},e.date),await a(e.reportHubId,e.date),r?.()}catch{}finally{u(!1)}},f=`report-title-${e.reportHubId}`,y=`report-content-${e.reportHubId}`;return ci("form",{className:"space-y-4 p-1",onSubmit:tv,children:[ci("div",{className:"space-y-2",children:[Vt(la,{htmlFor:f,children:s.formTitle}),Vt(rt,{elementRef:n,render:S=>Vt(KR,{id:f,value:l,onChange:h=>i.setInput(e.reportHubId,{title:h.target.value}),placeholder:s.formTitlePlaceholder,disabled:c,...S})})]}),ci("div",{className:"space-y-2",children:[Vt(la,{htmlFor:y,children:s.formContent}),Vt(rt,{render:S=>Vt(jR,{id:y,value:d,onChange:h=>i.setInput(e.reportHubId,{content:h.target.value}),placeholder:s.formContentPlaceholder,className:"min-h-50",disabled:c,...S})})]}),ci("div",{className:"flex justify-end gap-2",children:[t&&Vt(rt,{render:S=>Vt(xr,{type:"button",variant:"outline",onClick:t,disabled:c,...S,children:s.formCancel})}),Vt(rt,{render:S=>Vt(xr,{type:"button",variant:"secondary",onClick:m,disabled:c,...S,children:s.formSave})}),Vt(rt,{render:S=>Vt(xr,{type:"button",onClick:p,disabled:c,...S,children:s.formPublish})})]})]})};import{useContext as qR,useMemo as XR,useSyncExternalStore as QR}from"react";import{jsx as hn,jsxs as YR}from"react/jsx-runtime";var rv=`inline-grid whitespace-nowrap text-xs leading-4 tabular-nums ${de}`,GR="[grid-area:1/1]",nv=e=>{let t=0;for(let r=e;r!==0;r&=r-1)t+=1;return t},lc=e=>e===null||e.matchedSets===null?null:nv(e.matchedSets),pi=(e,t,r)=>{let n=lc(e);return t.showsMatchedSets&&n!==null?r.searchMatchedKeywordsDescription(n,t.setCount):null},ZR=(e,t,r)=>{let n=lc(e);return e!==null&&!r&&(n===null||n>=1)&&t.entry===e&&t.isCurrent&&t.fields.length===0},JR=({entry:e,drawn:t,indicator:r,isEditing:n,labels:o})=>{let a=pi(e,r,o),s=Ly(t.fields,o);return[...a===null?[]:[a],...s.length>0?[s]:[],...ZR(e,t,n)?[o.searchMatchOutsideViewDescription]:[]]},ov=({isEditing:e,descriptionId:t})=>{let{entry:r,tally:n,indicator:o}=ra(),{labels:a}=q(),s=QR(n.subscribe,n.getSnapshot,n.getSnapshot),{setCount:i,showsMatchedSets:l}=o,d=l?`${a.searchMatchedKeywords(i,i)} ${a.searchMatchOutsideView}`:a.searchMatchOutsideView,c=lc(r),u=ZR(r,s,e),m=pi(r,o,a),p=XR(()=>JR({entry:r,drawn:s,indicator:o,isEditing:e,labels:a}),[r,s,o,e,a]);return YR("span",{className:rv,"data-daily-report-search-indicator":!0,children:[hn("span",{"aria-hidden":"true",className:`invisible ${GR}`,"data-daily-report-search-indicator-placeholder":!0,children:d}),YR("span",{className:GR,children:[m!==null&&c!==null?hn("span",{"aria-hidden":"true",title:m,"data-daily-report-search-matched-keywords":`${c}/${i}`,children:a.searchMatchedKeywords(c,i)}):null,m!==null&&u?" ":null,u?hn("span",{"aria-hidden":"true",title:a.searchMatchOutsideViewDescription,"data-daily-report-search-outside-view":!0,children:a.searchMatchOutsideView}):null,hn("span",{id:t===null?void 0:t,className:Jt,"data-daily-report-search-indicator-description":!0,children:p.join(" ")})]})]})},mi=({isEditing:e,descriptionId:t})=>qR(pt)===null?null:hn(ov,{isEditing:e,descriptionId:t}),av=({id:e})=>{let{entry:t,tally:r,indicator:n}=ra(),{labels:o}=q(),a=QR(r.subscribe,r.getSnapshot,r.getSnapshot),s=XR(()=>JR({entry:t,drawn:a,indicator:n,isEditing:!1,labels:o}),[t,a,n,o]);return hn("span",{id:e,hidden:!0,"data-daily-report-search-match-description":!0,children:s.join(" ")})},eh=({id:e})=>qR(pt)===null?null:hn(av,{id:e});import{virtualScrollItemElementId as kv}from"@aiquants/virtualscroll";import{useContext as Ei}from"react";import{virtualScrollItemElementId as gh}from"@aiquants/virtualscroll";import{createContext as Av,useCallback as Re,useContext as xv,useLayoutEffect as Gr,useMemo as Eh,useRef as Yr,useState as oo,useSyncExternalStore as xh}from"react";import{flushSync as gi}from"react-dom";var th=(e,t)=>e.id===t.id&&e.indexHint===t.indexHint,rh=Object.freeze([]),nh=(e,t)=>e.includes(t)?e:Object.freeze([...e,t]),oh=(e,t)=>Object.freeze(e.filter(r=>r!==t)),ah=e=>{let t=rh,r=rh,n=e,o=null,a=Object.freeze({selected:n,settled:n}),s=0,i=!1,l=()=>{let R=o===null?n:o;if(!(th(a.selected,n)&&th(a.settled,R))){a=Object.freeze({selected:n,settled:R});for(let b of t)b()}},d=()=>a,c=R=>(t=nh(t,R),()=>{t=oh(t,R)}),u=R=>{n=R,l()},m=R=>{let b=o!==null;if(o=R,l(),b!==(o!==null))for(let E of r)E()},p=R=>m(R),f=()=>m(null),y=()=>o!==null,S=R=>(r=nh(r,R),()=>{r=oh(r,R)}),h=()=>{s+=1},D=R=>{i=R},g=Object.freeze({appliedEpoch:()=>s,pending:()=>i});return{getSnapshot:d,subscribe:c,select:u,hold:p,release:f,isHeld:y,subscribeHold:S,noteKeyStepApplied:h,noteKeyStepsPending:D,keySteps:g}};var vr=e=>({active:e,effect:"none"}),sh=(e,t)=>e!==null&&e.index>=t.visibleStartIndex&&e.index<=t.visibleEndIndex,dc=(e,{items:t,selected:r,range:n})=>{if(n===null)return e===null?r:e;if(sh(e,n))return e;if(sh(r,n))return r;let o=ke(t,n.visibleStartIndex);return o===void 0?null:{reportHubId:o.reportHubId,index:n.visibleStartIndex}},ih=(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:nr(e,r).reportHubId,index:r},effect:"handBack"}},cc=(e,t)=>{switch(t.kind){case"key":return vr(t.target);case"activation":case"focusInControl":return vr(t.row);case"focusInComposite":return t.from==="inside"?vr(e):t.pressed!==null?vr(t.pressed):{active:dc(e,t.shown),effect:"reveal"};case"focusLeft":return vr(dc(e,t.shown));case"rangeChanged":return vr(t.focusWithin&&e!==null?e:dc(e,t.shown));case"listChanged":{if(e===null)return vr(null);let r=Fe(t.items,e.reportHubId,e.index);return r===-1?ih(t.items,e.index):vr(r===e.index?e:{reportHubId:e.reportHubId,index:r})}case"removed":return t.selection===null||t.selection.reportHubId!==t.reportHubId?vr(e):ih(t.items,t.selection.index)}};var bn=e=>e.isComposing||e.keyCode===229,no=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 fi=e=>e.matches(":focus-visible")&&ta(e.ownerDocument)!=="pointer";var sv="data-daily-report-keyboard-focus",$r={capture:!0},lh=e=>{let t=ly(e.ownerDocument),r=i=>{e.toggleAttribute(sv,Pe(i)&&fi(i))},n=i=>r(i.target),o=i=>{Pe(i.relatedTarget)&&e.contains(i.relatedTarget)||r(null)},a=()=>r(null);e.addEventListener("focusin",n,$r),e.addEventListener("keydown",n,$r),e.addEventListener("focusout",o,$r),e.addEventListener("pointerdown",a,$r);let s=tt(e);return r(s!==null&&e.contains(s)?s:null),()=>{e.removeEventListener("focusin",n,$r),e.removeEventListener("keydown",n,$r),e.removeEventListener("focusout",o,$r),e.removeEventListener("pointerdown",a,$r),r(null),t()}};var iv='form, input, textarea, select, [contenteditable]:not([contenteditable="false"]), audio[controls], video[controls]',lv='select, input[type="search"], [contenteditable]:not([contenteditable="false"]), audio[controls], video[controls]',dv=["combobox","listbox","menu","menubar","radiogroup","slider","spinbutton","textbox","tree","grid","scrollbar","tablist","toolbar","treegrid","separator"],cv=dv.map(e=>`[role="${e}"]`).join(", "),uv='[aria-expanded="true"]',pv=new Map([["ArrowUp","previous"],["ArrowDown","next"],["Home","first"],["End","last"],["PageUp","pageBackward"],["PageDown","pageForward"]]),mv=new Set(["Enter"," "]),fv=new Map([["Home","exitBefore"],["End","exitAfter"]]),pc=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=fv.get(e.key);return r===void 0?null:r}let t=pv.get(e.key);return t!==void 0?t:mv.has(e.key)?"activate":e.key==="Escape"?"returnToRow":null},uc=(e,t,r,n)=>{let o=e.closest(t);return o!==null&&o!==n&&o!==r&&r.contains(o)},yv=(e,t,r,n)=>{let o=dn(t,r);if(o===null)return null;if(e==="tab")return e;if(e==="activate"||uc(t,cv,r,n))return null;if(e==="returnToRow"){if(uc(t,lv,r,n))return null;let a=t.closest(uv);return a!==null&&o.contains(a)?null:e}return uc(t,iv,r,n)?null:e},dh=(e,{container:t,composite:r})=>{let n=pc(e);if(n===null||e.defaultPrevented||bn(e)||t===null||r===null||!Pe(e.target)||!t.contains(e.target))return null;let o=e.target,a=o===r?n==="returnToRow"?null:n:yv(n,o,t,r);return a===null?null:{kind:a,target:o}};var yi={kind:"stay"},hi=e=>{if(e.kind==="measured")return e.heightOf;let{rowHeight:t}=e;return()=>t},ch=e=>Math.floor(.875*e),jr=(e,t)=>({kind:"move",index:e,align:t}),Ri=(e,t,r,n)=>e>=0&&e+t<=r?"none":t>r?n>0?"top":"bottom":e<0?"top":"bottom",Rv=({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},hv=({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},bv=(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 yi;if(r==="top")return jr(n-1,"top");let d=i(n-1);return jr(n-1,Ri(s-d,d,a,-1))}case"next":return n===o-1?yi:r==="top"?jr(n+1,"top"):jr(n+1,Ri(l,i(n+1),a,1));case"first":return jr(0,"top");case"last":return jr(o-1,i(o-1)<=a?"bottom":"top");case"pageForward":{if(l>a)return{kind:"reveal",delta:Math.min(l-a,ch(a))};if(n===o-1)return yi;let d=Rv(t);return jr(d.index,Ri(d.top,i(d.index),a,1))}case"pageBackward":{if(s<0)return{kind:"reveal",delta:-Math.min(-s,ch(a))};if(n===0)return yi;let d=hv(t);return jr(d.index,Ri(d.top,i(d.index),a,-1))}}},Sv=({index:e,activeRowTop:t,heightOf:r},n)=>ph(n,{index:e,offsetPx:-t},r),uh=(e,t,r,n)=>{let o=r,a=null,s=0;for(let i=0;i<t;i++){let l=bv(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:Sv(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}},mc=({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"},ph=(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},bi=(e,t,r,n)=>{let o=e.getViewportSize(),a=e.getScrollPosition();if(!(o>0&&a>=0))return null;let s=hi(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:ph(t,i,s),heightOf:s}},Si=(e,t,r,n)=>{let o=hi(n),a=e.index,s=o(a)-e.offsetPx;for(;s<t&&a<r-1;)a+=1,s+=o(a);return a},mh=(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 fh=e=>{if(e!==void 0)for(let t of[...e])t()},yh=({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&&fh(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),fh(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 Wt={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}},fc=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!1}),gv=Object.freeze({apply:null,flush:!1,requestFrame:!0,ended:!1}),Rh=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!0}),Ev=new Map(Object.values(Wt).map(e=>[e,Object.freeze({apply:e,flush:!1,requestFrame:!0,ended:!1})])),hh=e=>{let t=Ev.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},Dv=(e,t,r)=>e==="row"||e==="page"?t+r:r,bh=e=>({state:{axis:e.axis,pending:0,fence:"immediate"},effects:hh(e)}),Sh=(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",hh(r)):(e.pending=Dv(e.axis,e.pending,r.amount),fc)}case"frame":{if(e.fence==="open")return fc;if(e.fence==="immediate")return e.fence="flush",gv;if(e.pending===0)return e.fence="open",fc;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?Rh:{apply:{axis:e.axis,amount:e.pending},flush:!0,requestFrame:!1,ended:!0};case"cancel":return Rh}};var yc=Av(null),vv=Object.freeze({kind:"frame"}),Dh={capture:!0},Cv=()=>{},Th=(e,t,r)=>{let n=e.ownerDocument,o=n.defaultView;if(o===null)return Cv;let a=!0,s=()=>{a&&(a=!1,i.disconnect(),n.removeEventListener("focusin",s,Dh))},i=new o.MutationObserver(()=>{e.isConnected||(s(),r())});return i.observe(t,{childList:!0,subtree:!0}),n.addEventListener("focusin",s,Dh),s},Iv=Object.freeze({kind:"keyup"}),_v=Object.freeze({kind:"cancel"}),Lv=Object.freeze({previous:Object.freeze({kind:"repeat",step:Wt.previous}),next:Object.freeze({kind:"repeat",step:Wt.next}),pageBackward:Object.freeze({kind:"repeat",step:Wt.pageBackward}),pageForward:Object.freeze({kind:"repeat",step:Wt.pageForward}),first:Object.freeze({kind:"repeat",step:Wt.first}),last:Object.freeze({kind:"repeat",step:Wt.last}),activate:Object.freeze({kind:"repeat",step:Wt.activate})}),ao={capture:!0},Nv=e=>e in Wt,Ov=(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}},Mv=(e,t)=>({top:e.top-t,bottom:e.bottom+t}),wh=e=>{let t=jo(e),r=Vr(e);return t===null||r===null?null:{reportHubId:t,index:r-1}},Pv=e=>e==="first"||e==="last",Ah=(e,t)=>{let r=Fe(e,t.reportHubId,t.index);return r===-1?null:{reportHubId:t.reportHubId,index:r}},vh=e=>{let t=xv(yc);if(t===null)throw new Error("[daily-report] useListRowState is called outside a view's rows (no row cursor)");let r=Re(a=>t.subscribe(e,a),[t,e]),n=Re(()=>t.rowStateOf(e),[t,e]),o=xh(r,n,n);return{active:(o&1)!==0,selected:(o&2)!==0}},Ch=(e,t)=>{let r=Re(()=>{let n=e.getActiveId();if(n===null)return null;let o=Fe(t,n,e.getActiveIndexHint());return o===-1?null:o},[e,t]);return xh(e.subscribeActive,r,r)},Ih=({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(()=>yh({initialSelectedId:t})),[m]=oo(()=>Yy(u)),p=Xe(()=>({items:e,onSelect:r,onActivate:n,rowSizing:d,arrowAlign:c})),f=Yr(null),y=Yr(!1),S=Yr(null),h=Yr(!1),D=Yr(null),g=Yr(()=>{}),[R,b]=oo(null),[E,I]=oo(0),x=Yr(null),P=Xe(()=>{if(t===null)return null;let v=Fe(e,t,null);return v===-1?null:{reportHubId:t,index:v}}),[O]=oo(()=>ah({id:t,indexHint:null})),[B,w]=oo(0),_=Eh(()=>({id:t,indexHint:t===null?null:Im(R,t)}),[t,R]),A=Yr(_);Gr(()=>{p.current={items:e,onSelect:r,onActivate:n,rowSizing:d,arrowAlign:c},A.current=_},[p,e,r,n,d,c,_]),Gr(()=>{_.indexHint===null&&_.id===O.getSnapshot().selected.id||O.select(_)},[O,_,E]);let T=Re((v,M)=>{let W=D.current;if(W!==null&&W.items===v&&W.reportHubId===M)return W.index;let Y=Fe(v,M,W!==null&&W.reportHubId===M?W.index:null);return Y!==-1&&(D.current={items:v,reportHubId:M,index:Y}),Y},[]),L=Re((v,M)=>{D.current={items:p.current.items,reportHubId:v,index:M},b(W=>W!==null&&W.reportHubId===v&&W.index===M?W:{reportHubId:v,index:M}),I(W=>W+1),O.select({id:v,indexHint:M})},[p,O]),F=Re((v,M)=>{D.current={items:p.current.items,reportHubId:M.reportHubId,index:M.index},O.select({id:M.reportHubId,indexHint:M.index}),v.selection=M},[p,O]),U=Re(v=>{gi(()=>{v.select(v.reportHubId,v.index,"settled"),L(v.reportHubId,v.index),w(M=>M+1)})},[L]),j=Re(()=>{let v=p.current.items,M=u.getSelectedId(),W=M===null?-1:T(v,M);return{items:v,selected:M===null||W===-1?null:{reportHubId:M,index:W},range:f.current}},[u,p,T]),G=Re(v=>{let M=h.current;h.current=!0;try{v()}finally{h.current=M}},[]),Q=Re(v=>{P.current=v,u.setActive(v===null?null:v.reportHubId,v===null?null:v.index)},[P,u]),X=Re(v=>{let M=i.current;if(M===null)return null;let{items:W,rowSizing:Y}=p.current;return bi(M,v,W.length,Y)},[i,p]),fe=Re(v=>{let M=X(v);M===null||mc(M)==="whole"||M.activeRowTop<=0&&M.activeRowTop+M.heightOf(v)>=M.viewport||l.toIndex(v,{align:"nearest"})},[X,l]),De=Re((v,M)=>{let W=o.current;if(W===null)return;let Y=p.current.items,oe=P.current,ue=null;if(v===null)ue=oe;else{let k=Fe(Y,v,oe!==null&&oe.reportHubId===v?oe.index:null);k!==-1&&(ue={reportHubId:v,index:k},Q(ue))}ue!==null&&fe(ue.index);let $=W.ownerDocument,ne=$.getElementById(s);if(ne===null)return;let Le=ue===null?null:$.getElementById(gh(s,ue.reportHubId));G(()=>Ry(W,ne,Le,M))},[o,p,P,s,Q,fe,G]),N=Re(v=>{let M=cc(P.current,v);Q(M.active),M.effect==="reveal"&&M.active!==null&&fe(M.active.index);let W=o.current;M.effect==="handBack"&&y.current&&W!==null&&on(W)&&De(M.active===null?null:M.active.reportHubId,"removal")},[o,P,Q,fe,De]),V=Re(()=>{y.current&&(y.current=!1,S.current=null,N({kind:"focusLeft",shown:j()}))},[N,j]);Gr(()=>{u.settleSelection(t)},[u,t,B]),Gr(()=>{t!==null&&T(e,t)},[e,t,T]),Gr(()=>{N({kind:"listChanged",items:e})},[e,N]),Gr(()=>{let v=a.current;if(v!==null)return lh(v)},[a]),Gr(()=>{let v=o.current;if(v===null)return;let M=v.ownerDocument,W=oe=>{let ue=o.current,$=oe.target;if(!(ue!==null&&Pe($)&&ue.contains($))){S.current=null,V();return}let Le=oe.pointerType==="touch"?null:dn($,ue);S.current=Le===null?null:wh(Le)},Y=()=>{S.current=null};return M.addEventListener("pointerdown",W,ao),M.addEventListener("pointerup",Y,ao),M.addEventListener("pointercancel",Y,ao),()=>{M.removeEventListener("pointerdown",W,ao),M.removeEventListener("pointerup",Y,ao),M.removeEventListener("pointercancel",Y,ao)}},[o,V]);let K=Re((v,M)=>{N({kind:"activation",row:{reportHubId:v,index:M}}),L(v,M)},[N,L]),re=Re(v=>{let M=cc(P.current,{kind:"removed",reportHubId:v,selection:D.current,items:p.current.items});if(M.effect!=="handBack")return;Q(M.active);let W=M.active===null?null:M.active.reportHubId;g.current();let Y=o.current,oe=Y===null?null:tt(Y);if(Y!==null&&oe!==null&&!on(Y)&&!Y.contains(oe)){g.current=Th(oe,oe.ownerDocument,()=>De(W,"removal"));return}De(W,"removal")},[o,p,P,Q,De]),he=Re((v,M,W,Y)=>{let{items:oe,onSelect:ue,rowSizing:$,arrowAlign:ne}=p.current,Le=i.current;if(ue===null||Le===null)return;let k=bi(Le,W.index,oe.length,$);if(k===null)return;let z=uh(v,M,k,ne),ae=nr(oe,z.index),ye=z.index!==W.index,xe=ye||Y&&Pv(v)&&A.current.id!==ae.reportHubId,ze=x.current;gi(()=>{ye&&N({kind:"key",target:{reportHubId:ae.reportHubId,index:z.index}}),xe&&(u.settleSelection(ae.reportHubId),ze!==null&&F(ze,{reportHubId:ae.reportHubId,index:z.index,select:ue}),ue(ae.reportHubId,z.index,ze===null?"settled":"held")),z.alignment!==null&&l.toIndex(z.alignment.index,{align:z.alignment.align}),z.scrollDelta!==0&&l.by(z.scrollDelta),xe&&ze===null&&(L(ae.reportHubId,z.index),w(jt=>jt+1))})},[u,p,i,l,L,F,N]),H=Re(v=>{K(v.reportHubId,v.index),p.current.onActivate(v.reportHubId,v.index)},[p,K]),ee=Re(v=>{let M=P.current;if(M===null)return;if(v.axis==="activate"){H(M);return}let W=Ov(v.axis,v.amount);he(W.command,W.count,M,!1)},[P,H,he]),te=Re(v=>{x.current=null,v.frame!==0&&v.view.cancelAnimationFrame(v.frame);let M=v.selection;M!==null&&u.getSelectedId()===M.reportHubId&&U(M),O.release()},[u,O,U]),Ee=Re((v,M,W)=>{let{apply:Y}=M;Y!==null&&(M.flush?gi(()=>ee(Y)):ee(Y)),x.current===v&&(M.ended?te(v):M.requestFrame&&(v.frame=v.view.requestAnimationFrame(W)))},[ee,te]),Te=Re((v,M,W)=>{let Y=Sh(v.state,M);O.noteKeyStepsPending(!Y.ended&&v.state.pending!==0),M.kind==="frame"&&Y.apply!==null&&O.noteKeyStepApplied(),Ee(v,Y,W)},[O,Ee]),ie=Re(()=>{let v=x.current;v!==null&&(v.frame=0,Te(v,vv,ie))},[Te]),xt=Re(()=>{let v=x.current;v!==null&&Te(v,Iv,ie)},[Te,ie]),Qe=Re(()=>{let v=x.current;v!==null&&Te(v,_v,ie)},[Te,ie]),vt=Re((v,M)=>{O.hold(A.current);let{state:W,effects:Y}=bh(Wt[v]),oe={state:W,view:M,frame:0,selection:null};x.current=oe,Ee(oe,Y,ie)},[O,Ee,ie]);Gr(()=>()=>{g.current();let v=x.current;if(x.current=null,v===null)return;v.frame!==0&&v.view.cancelAnimationFrame(v.frame);let M=v.selection;M!==null&&u.getSelectedId()===M.reportHubId&&M.select(M.reportHubId,M.index,"settled")},[u]);let ot=Re((v,M,W)=>{let Y=P.current,oe=Y===null?null:X(Y.index);if(Y===null||oe===null||mc(oe)!=="hidden")return;let ue=M.ownerDocument.getElementById(gh(s,Y.reportHubId));ue===null||!Qy(ue,v===M?null:v,W)||gi(()=>l.toIndex(Y.index,{align:"nearest"}))},[P,s,l,X]),ct=Re(v=>{let M=x.current,W=M!==null&&v.repeat?pc(v):null;if(M!==null&&W!==null&&Nv(W)&&Wt[W].axis===M.state.axis){v.preventDefault(),Te(M,Lv[W],ie);return}let Y=o.current,oe=Y===null?null:Y.ownerDocument.getElementById(s),ue=p.current.onSelect===null?null:dh(no(v),{container:Y,composite:oe});if(xt(),ue===null||Y===null||oe===null)return;S.current=null;let{kind:$}=ue;switch($){case"exitBefore":case"exitAfter":{let ae=Xy(Y,$==="exitBefore"?"before":"after");if(ae===null)return;v.preventDefault(),ae.focus();return}case"tab":ot(ue.target,oe,v.shiftKey);return;case"returnToRow":v.preventDefault(),G(()=>oe.focus({preventScroll:!0}));return}let ne=P.current;if($==="activate"){if(v.preventDefault(),ne===null)return;v.repeat?vt($,je(Y)):H(ne);return}if(ne===null)return;let{items:Le,rowSizing:k}=p.current,z=i.current;z===null||bi(z,ne.index,Le.length,k)===null||(v.preventDefault(),v.repeat?vt($,je(Y)):he($,1,ne,!0),ue.target!==oe&&G(()=>oe.focus({preventScroll:!0})))},[p,o,s,i,P,ie,Te,xt,vt,ot,H,he,G]),at=Re(()=>{xt()},[xt]),Rt=Re(v=>{let M=o.current,W=v.target;if(M===null)return;y.current=!0;let Y=M.ownerDocument.getElementById(s),oe=S.current;if(S.current=null,W===Y){let ze=h.current||Pe(v.relatedTarget)&&M.contains(v.relatedTarget)?"inside":"outside";N(ze==="inside"?{kind:"focusInComposite",from:ze}:{kind:"focusInComposite",from:ze,pressed:oe===null?null:Ah(p.current.items,oe),shown:j()});return}let ue=dn(W,M),$=ue===null?null:wh(ue),ne=$===null?null:Ah(p.current.items,$);if(ue===null||ne===null||!Pe(W))return;N({kind:"focusInControl",row:ne}),g.current(),g.current=Th(W,ue,()=>De(null,"removal"));let Le=i.current;if(Le===null||Y===null||!fi(W))return;let k=Y.getBoundingClientRect(),z=ue.getBoundingClientRect(),ae=z.height<=k.height?z:Mv(W.getBoundingClientRect(),ur),ye=mh(ae,k),xe=Le.getViewportSize();ye===0||!(xe>0&&k.height>0)||l.by(ye*xe/k.height)},[o,s,p,i,l,N,j,De]),Kt=Re(v=>{let M=o.current,W=v.relatedTarget,Y=Pe(W)?M?.contains(W)?"view":"outside":"nowhere";Y!=="view"&&Qe(),Y==="outside"&&V()},[o,Qe,V]),$t=Re(v=>{f.current={visibleStartIndex:v.visibleStartIndex,visibleEndIndex:v.visibleEndIndex},N({kind:"rangeChanged",focusWithin:y.current,shown:j()})},[N,j]),Dt=Eh(()=>({onKeyDown:ct,onKeyUp:at,onPointerDownCapture:Qe,onWheelCapture:Qe,onTouchStartCapture:Qe,onFocus:Rt,onBlur:Kt}),[ct,at,Qe,Rt,Kt]);return{cursor:u,controls:m,containerProps:Dt,handleRangeChange:$t,selection:_,selectionStore:O,resolveSelectedIndex:T,rememberSelection:L,activateRow:K,focusViewRow:De,focusAfterRemoval:re}};import{jsx as Di}from"react/jsx-runtime";var Ie=(e,t)=>`${e}-${t}`,Ti=e=>kv(nf(),e),so=Object.freeze([]),Fv="data-daily-report-row-shell",Rc=Object.freeze({..._t,[Fv]:"",className:`h-full w-full ${Lt}`}),wi=Di("div",{...Rc}),Hv=(e,t,r)=>r===Wr?e.listRowPositionInUnknownTotal(t+1):e.listRowPosition(t+1,r),io=({id:e,whileTotalUnknownOnly:t})=>{let{labels:r}=q(),n=Ei(un),o=Ei(cn);return t&&o!==Wr?null:Di("span",{id:e,hidden:!0,children:Hv(r,n,o)})},Ai=({reportHubId:e,rowId:t,name:r,className:n,style:o,onMouseDown:a,frameRef:s,children:i})=>{let{active:l,selected:d}=vh(e),c=qy(e),u=Ei(un),m=Ei(cn),p=r.kind==="parts",f=p&&m===Wr?[...r.describedBy,Ie(t,"position")]:r.describedBy,y=f.length===0?void 0:f.join(" ");return Di(Kd.Provider,{value:c,children:Di("div",{ref:s,role:"row",id:t,[Rs]:e,"aria-rowindex":u+1,"aria-posinset":u+1,"aria-setsize":m,"aria-level":1,"aria-selected":d,[eu]:l?"":void 0,"aria-labelledby":p?Ie(t,"name"):void 0,"aria-describedby":y,"aria-label":p?void 0:r.label,"aria-busy":!p&&r.isBusy?!0:void 0,className:n,style:o,onMouseDown:a,children:i})})};import{Fragment as Uv,jsx as xi,jsxs as Vv}from"react/jsx-runtime";var Bv=Ve(fu),_h=e=>e.name===void 0||e.name===e.label?null:e.name,Lh=e=>{let t=_h(e);return t===null?e.label:t},lo=({config:e,id:t})=>{let r=_h(e);return xi("span",{id:t,className:Bv(e.badgeClassName),children:r===null?e.label:Vv(Uv,{children:[xi("span",{"aria-hidden":"true",children:xi("abbr",{title:r,children:e.label})}),xi("span",{className:Jt,children:r})]})})};import{jsx as vi,jsxs as Wv}from"react/jsx-runtime";var Ci=({state:e,attachmentCount:t,sourceConfig:r,preview:n,marks:o,marksStore:a,labels:s})=>{let i=[{part:"state",text:e,imageName:null}];return t>0&&i.push({part:"attachments",text:()=>pl(t),imageName:()=>ul(s.attachments,t)}),r!==void 0&&i.push({part:"source",text:()=>Lh(r),imageName:null}),n!==null&&i.push({part:"preview",text:n,imageName:null}),a!==null&&i.push({part:"match",text:()=>pi(o,a.indicator,s),imageName:null}),i},da=(e,t)=>t.map(({part:r})=>Ie(e,r)),Ii=({rowId:e,name:t,description:r})=>{let n=Ie(e,"name");return Wv("div",{...Rc,"aria-labelledby":t===null?void 0:n,children:[t===null?null:vi("span",{id:n,hidden:!0,children:t}),r.map(({part:o,text:a,imageName:s})=>s===null?vi("span",{id:Ie(e,o),hidden:!0,children:a()},o):vi("span",{id:Ie(e,o),hidden:!0,role:"img","aria-label":s(),children:a()},o)),t===null?null:vi(io,{id:Ie(e,"position"),whileTotalUnknownOnly:!0})]})};var zv=()=>{},_i=(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?zv:t.subscribe(r,a);return()=>{s(),i()}},changesBox:(a,s)=>a.detail!==s.detail}};import aC from"lucide-react/dist/esm/icons/pencil.js";import sC from"lucide-react/dist/esm/icons/trash-2.js";import{jsx as Nh}from"react/jsx-runtime";var Ni=24,Oh=2,Kv=20,Li=5,$v=3,jv=()=>{let e=Math.cos(2*Math.PI/Li)/Math.cos(Math.PI/Li),t=Array.from({length:2*Li},(m,p)=>{let f=-Math.PI/2+p*Math.PI/Li,y=p%2===0?1:e;return{x:y*Math.cos(f),y:y*Math.sin(f)}}),r=t.map(m=>m.x),n=t.map(m=>m.y),[o,a,s,i]=[Math.min(...r),Math.max(...r),Math.min(...n),Math.max(...n)],l=(Kv-Oh)/(a-o),d=Ni/2-l*(o+a)/2,c=Ni/2-l*(s+i)/2,u=m=>String(Number(m.toFixed($v)));return t.map(m=>`${u(d+l*m.x)},${u(c+l*m.y)}`).join(" ")},Gv=jv(),co=({filled:e})=>Nh("svg",{viewBox:`0 0 ${Ni} ${Ni}`,"aria-hidden":"true",fill:"none",stroke:"currentColor",strokeWidth:Oh,strokeLinejoin:"round",className:e?et.starOn:et.starOff,children:Nh("polygon",{points:Gv})});import qv from"lucide-react/dist/esm/icons/check.js";import Xv from"lucide-react/dist/esm/icons/refresh-cw.js";import{jsx as Mh}from"react/jsx-runtime";var Oi=24,Yv=6,Ph=()=>Mh("svg",{viewBox:`0 0 ${Oi} ${Oi}`,"aria-hidden":"true",className:et.read,children:Mh("circle",{cx:Oi/2,cy:Oi/2,r:Yv,fill:"currentColor"})});import{jsx as Mi}from"react/jsx-runtime";var Qv="data-daily-report-updated-since-read",uo=({readState:e})=>e==="unread"?Mi(Ph,{}):e==="updatedSinceRead"?Mi(Xv,{className:et.read}):Mi(qv,{className:et.read}),Sn=(e,t)=>e==="read"?t.markUnread:e==="unread"?t.markRead:t.markUpdateRead,po=({readState:e,label:t})=>e==="updatedSinceRead"?Mi("span",{[Qv]:"","aria-hidden":"true",className:mu,children:t}):null;import{jsx as Jv}from"react/jsx-runtime";var Zv=/^(\d{4}-\d{2}-\d{2})(?:T(\d{2}:\d{2}):\d{2})?$/,gn=({text:e})=>{let t=Zv.exec(e);if(t===null)return e;let[,r,n]=t;return Jv("time",{dateTime:e,children:n===void 0?r:`${r} ${n}`})};import{Fragment as oC,jsx as Ge,jsxs as hc}from"react/jsx-runtime";var eC=Ve("m-0"),St=({label:e,classNames:t,valueId:r,children:n})=>hc("div",{className:t.field,children:[Ge("dt",{className:t.label,children:e}),Ge("dd",{id:r,className:eC(t.value),children:n})]}),tC=`mt-2 font-semibold ${de} text-xs uppercase tracking-wide first:mt-0`,rC=`m-0 flex flex-col rounded-xl bg-slate-100 p-3 ${de} text-xs dark:bg-slate-800/60`,nC="m-0 mt-1 text-slate-700 text-sm dark:text-slate-200",qr=({label:e,children:t})=>hc(oC,{children:[Ge("dt",{className:tC,children:e}),Ge("dd",{className:nC,children:t})]}),kh=({report:e,visitTimeDisplay:t,labels:r})=>{let n=Hr(e.category),o=Hr(e.creationCategory);return hc("dl",{className:rC,children:[Ge(qr,{label:r.author,children:Ge(ge,{fieldKey:we.field("author"),raw:e.author,display:Ke(e.author)})}),Ge(qr,{label:r.createdAt,children:Ge(gn,{text:Ne(e.createdAt)})}),Ge(qr,{label:r.updatedBy,children:Ge(ge,{fieldKey:we.field("updatedBy"),raw:e.updatedBy,display:Ke(e.updatedBy)})}),Ge(qr,{label:r.updatedAt,children:Ge(gn,{text:Ne(e.updatedAt)})}),Ge(qr,{label:r.businessDate,children:Ge(gn,{text:Ne(e.date)})}),t!==null&&Ge(qr,{label:r.visitTime,children:t}),n.text.length>0&&Ge(qr,{label:r.category,children:Ge(ge,{fieldKey:we.field("category"),raw:e.category,display:n})}),o.text.length>0&&Ge(qr,{label:r.creationCategory,children:Ge(ge,{fieldKey:we.field("creationCategory"),raw:e.creationCategory,display:o})})]})};import{jsx as Ae,jsxs as Hh}from"react/jsx-runtime";var Pi={field:C(Je,"gap-1 whitespace-nowrap bg-slate-100 text-slate-800 dark:bg-slate-800 dark:text-slate-100"),label:`${de} text-xs uppercase tracking-wide`,value:""},iC={field:C(Je,"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-800 text-xs uppercase tracking-wide dark:text-blue-300",value:""},Fh={field:C(Je,"gap-1 whitespace-nowrap bg-amber-100 text-amber-900 dark:bg-amber-500/15 dark:text-amber-200"),label:"text-amber-900 text-xs uppercase tracking-wide dark:text-amber-300",value:""},lC=`flex flex-wrap items-center gap-2 font-medium ${de} text-xs`,Bh=({report:e,readState:t,isStarred:r,onToggleRead:n,onToggleStar:o,onEdit:a,editButtonRef:s,onDelete:i,sourceConfig:l,visitTimeDisplay:d,markerIds:c,labels:u})=>{let m=r?u.starRemove:u.starAdd,p=Sn(t,u),f=Hr(e.category),y=Hr(e.creationCategory);return Hh("div",{className:lC,children:[Ae(Do,{id:c.attachments,count:e.attachments.length,label:u.attachments}),l?Ae(lo,{id:c.source,config:l}):null,Ae(po,{readState:t,label:u.updatedSinceRead}),Ae(rt,{render:S=>Ae("button",{type:"button",onClick:o,...S,className:it,title:m,"aria-label":m,"data-detail-star-button":e.reportHubId,children:Ae(co,{filled:r})})}),Ae(rt,{render:S=>Ae("button",{type:"button",onClick:n,...S,className:it,title:p,"aria-label":p,"data-detail-read-button":e.reportHubId,children:Ae(uo,{readState:t})})}),a&&Ae(rt,{elementRef:s,render:S=>Ae("button",{type:"button",onClick:a,...S,"data-detail-edit-button":e.reportHubId,className:it,title:u.edit,"aria-label":u.edit,children:Ae(aC,{className:et.edit})})}),i&&Ae(rt,{render:S=>Ae("button",{type:"button",onClick:i,...S,"data-detail-delete-button":e.reportHubId,className:it,title:u.deleteReport,"aria-label":u.deleteReport,children:Ae(sC,{className:et.delete})})}),Hh("dl",{className:"m-0 flex flex-wrap items-center gap-2",children:[Ae(St,{label:u.id,classNames:iC,children:e.reportHubId}),Ae(St,{label:u.businessDate,classNames:Pi,children:Ae(gn,{text:Ne(e.date)})}),Ae(St,{label:u.author,classNames:Pi,children:Ae(ge,{fieldKey:we.field("employeeName"),raw:e.employeeName,display:Ke(e.employeeName)})}),Ae(St,{label:u.visitTime,classNames:Pi,children:Br(d)}),Ae(St,{label:u.updatedAt,classNames:Pi,children:Ae(gn,{text:Ne(e.updatedAt)})}),f.text.length>0&&Ae(St,{label:u.category,classNames:Fh,children:Ae(ge,{fieldKey:we.field("category"),raw:e.category,display:f})}),y.text.length>0&&Ae(St,{label:u.creationCategory,classNames:Fh,children:Ae(ge,{fieldKey:we.field("creationCategory"),raw:e.creationCategory,display:y})})]}),Ae(mi,{isEditing:!1,descriptionId:c.searchMatch})]})};import{useLayoutEffect as Uh,useRef as Vh}from"react";import{jsx as uC}from"react/jsx-runtime";var dC=C(Fr,xa,va,Aa,"h-full"),cC=(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()}}},Wh=({itemId:e,rowId:t,name:r,bodyReady:n,observeRowHeight:o,children:a})=>{let s=Vh(null),i=of(e),l=Vh(null);return Uh(()=>{let d=s.current,c=d===null||!n?null:d.firstElementChild,u=c instanceof HTMLElement?c:null,m=l.current;m!==null&&m.body===u&&m.declareBody===i&&m.observeRowHeight===o||(m!==null&&m.release(),l.current=cC(u,i,o))}),Uh(()=>()=>{l.current?.release(),l.current=null},[]),uC(Ai,{reportHubId:e,rowId:t,name:r,className:dC,frameRef:s,children:a})};import{jsx as J,jsxs as nt}from"react/jsx-runtime";var mC=C("flex w-full flex-col gap-4",Lt,_a,kr),fC=C(Lt,kr),yC=C("rounded-2xl",kr),RC=C("rounded-2xl border border-red-200 border-solid bg-red-50 p-[15px] text-red-800 text-sm dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-300",kr),dt="bg-slate-200 dark:bg-slate-700",hC=C("whitespace-pre-wrap",Ia),bC=C(Je,"bg-slate-100 text-xs dark:bg-slate-800",de),SC=({interviewer:e,index:t,template:r})=>{let n=mo(()=>Ke(e.name),[e.name]),o=J(ge,{fieldKey:we.interviewer(t,"name"),raw:e.name,display:n},"name"),a=e.affiliation;if(!a?.trim())return o;let s=Iy(r,n.text,a);return s===null?r(n.text,a):s.map(i=>i.kind==="text"?i.text:i.kind==="name"?o:J(ge,{fieldKey:we.interviewer(t,"affiliation"),raw:a,display:Ot(a)},"affiliation"))},gC=e=>({heading:Ie(e,"name"),state:Ie(e,"state"),attachments:Ie(e,"attachments"),source:Ie(e,"source"),searchMatch:Ie(e,"match")}),$h=e=>`${Ne(e.date)} ${Br(e.employeeName)} ${Br(e.subject)}`,jh=(e,t,r)=>{let n=t.get(e.reportHubId),o=r.get(e.reportHubId);return{isRead:n===void 0?e.isRead:n.isRead,readContentDigest:n===void 0?e.readContentDigest:n.readContentDigest,isStarred:o===void 0?e.isStarred:o}},Gh=(e,t,r)=>yr({isRead:t.isRead,readContentDigest:t.readContentDigest,contentDigest:e.contentDigest,userId:e.userId},r),EC=({report:e,viewerUserId:t,isEditing:r,sourceConfig:n,ledgers:o,marks:a,marksStore:s,labels:i})=>r?[{part:"state",text:()=>i.rowEditingState({isDraft:e.isDraft}),imageName:null}]:Ci({state:()=>{let l=jh(e,o.pendingReadUpdates.current,o.pendingStarUpdates.current);return i.rowState({readState:Gh(e,l,t),isStarred:l.isStarred})},attachmentCount:e.attachments.length,sourceConfig:n,preview:null,marks:a,marksStore:s,labels:i}),DC=nt("div",{..._t,className:fC,children:[nt("div",{className:"mb-4 flex flex-wrap gap-2",children:[J("div",{className:C("h-6 w-20 rounded-full",dt)}),J("div",{className:C("h-6 w-24 rounded-full",dt)}),J("div",{className:C("h-6 w-24 rounded-full",dt)}),J("div",{className:C("h-6 w-28 rounded-full",dt)})]}),nt("div",{className:"mb-4 grid gap-4 md:grid-cols-[minmax(0,1fr)_240px]",children:[nt("div",{className:"space-y-4",children:[J("div",{className:C("h-5 w-40 rounded",dt)}),J("div",{className:C("h-5 w-56 rounded",dt)}),J("div",{className:C("h-24 rounded-xl",dt)})]}),nt("div",{className:"rounded-xl bg-slate-100 p-3 dark:bg-slate-800/60",children:[J("div",{className:C("mb-2 h-4 w-24 rounded",dt)}),J("div",{className:C("mb-2 h-4 w-28 rounded",dt)}),J("div",{className:C("h-4 w-32 rounded",dt)})]})]}),nt("div",{className:"space-y-4",children:[J("div",{className:C("h-4 w-24 rounded",dt)}),nt("div",{className:"flex flex-wrap gap-2",children:[J("div",{className:C("h-6 w-16 rounded-full",dt)}),J("div",{className:C("h-6 w-16 rounded-full",dt)}),J("div",{className:C("h-6 w-16 rounded-full",dt)})]}),nt("div",{className:"space-y-2",children:[J("div",{className:C("h-16 rounded-xl",dt)}),J("div",{className:C("h-16 rounded-xl",dt)})]})]})]}),TC=()=>DC,wC=({item:e,observeRowHeight:t,onCommentAdded:r,userId:n})=>{let o=nn(),a=pC(pt),s=mo(()=>_i(o,a,e.reportHubId,e.businessDate),[o,a,e.reportHubId,e.businessDate]),{bodyReady:i,rendered:l}=Ts(e.reportHubId,s,"measured"),{report:d,error:c}=l.detail,u=l.marksStore===a?l.marks:null,{report:m,error:p,isLoading:f,isRefetching:y}=s.read().detail,S=Ti(e.reportHubId),h=fy(),D=lt(),{removeStaleItem:g}=D,{labels:R,sourceTypeConfigs:b}=q(),E=zr(),I=js(e.reportHubId),x=I==="editing"||I==="automatic",P=bc(!1),O=bc(!1),B=m===null&&p===null&&!f&&!y;zh(()=>{B&&e.reportHubId>0&&g(e.reportHubId)},[B,e.reportHubId,g]);let w=m?.isDraft===!0,_=pn(m,n),A=pn(d,n),T=bc(s);Kh(()=>{T.current=s},[s]);let L=En(()=>{let re=T.current.read().detail.report;re!==null&&(P.current=!0,E.open(e.reportHubId,ro(re),!1))},[E,e.reportHubId]),F=En(()=>{O.current=!0,E.dismiss(e.reportHubId)},[E,e.reportHubId]),U=En(()=>{O.current=!0,E.discard(e.reportHubId)},[E,e.reportHubId]),j=En(re=>{re===null||!P.current||(P.current=!1,re.focus())},[]),G=En(re=>{re===null||!O.current||(O.current=!1,re.focus())},[]);Kh(()=>{x||(O.current=!1)},[x]),zh(()=>{m!==null&&(_&&w&&I==="display"?E.open(e.reportHubId,ro(m),!0):!w&&I==="automatic"&&E.discard(e.reportHubId))},[m,_,w,I,E,e.reportHubId]);let Q=En(()=>h(e.reportHubId,"removal"),[h,e.reportHubId]),X=d===null?void 0:Sr(d.sourceType,b),fe=d===null&&(f||m!==null||p!==null),De=Ne(e.businessDate),N=Ie(S,"state"),V=c===null&&d!==null?{report:d,description:EC({report:d,viewerUserId:n,isEditing:x,sourceConfig:X,ledgers:D,marks:u,marksStore:a,labels:R})}:null,K=V!==null?x?{kind:"label",label:De,isBusy:!1,describedBy:da(S,V.description)}:{kind:"parts",describedBy:da(S,V.description)}:i?{kind:"label",label:De,isBusy:c===null&&fe,describedBy:c===null?so:[N]}:{kind:"label",label:De,isBusy:!0,describedBy:so};return J(Wh,{itemId:e.reportHubId,rowId:S,name:K,bodyReady:i,observeRowHeight:t,children:i?c!==null?J(AC,{itemId:e.reportHubId,stateId:N}):d?x?J(Xh,{report:d,stateId:N,onCancel:F,onPublishSuccess:U,titleInputRef:j}):J(Jn,{reportHubId:e.reportHubId,entry:u,children:J(qh,{item:e,report:d,sourceConfig:X,rowId:S,onCommentAdded:r,userId:n,onEdit:A?L:void 0,editButtonRef:G,onCommentSectionRemoved:Q})}):J(TC,{}):V===null?wi:J(Ii,{rowId:S,name:x?null:$h(V.report),description:V.description})})},Yh=Sc(wC),qh=Sc(({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:m,deleteReport:p}=lt(),{labels:f,headingLevel:y}=q(),S=Kr[y],h=Ya(t.sourceType,r),D=gC(n),g=En(()=>o?.(e.reportHubId),[o,e.reportHubId]),R=jh(t,m.current,u.current),{isStarred:b}=R,E=Gh(t,R,a),I=pn(t,a),x=async()=>{try{await c(t.reportHubId,In(E,t.contentDigest),t.date)}catch{}},P=async()=>{try{await d(t.reportHubId,!b,t.date)}catch{}},O=async()=>{if(confirm(f.confirmDelete))try{await p(t.reportHubId,t.date)}catch{}},B=mo(()=>Gu(t.content??null),[t.content]),w=mo(()=>Ke(t.customerName),[t.customerName]),_=mo(()=>Ke(t.subject),[t.subject]),A=mo(()=>{let T=t.visitTimeFrom?.trim(),L=t.visitTimeTo?.trim();return T&&L?`${T} - ${L}`:T||L||null},[t.visitTimeFrom,t.visitTimeTo]);return nt("div",{..._t,"aria-labelledby":D.heading,onDoubleClick:s,className:mC,children:[J(wt,{level:y,id:D.heading,tabIndex:-1,...bs,className:Jt,children:$h(t)}),J("span",{id:D.state,className:Jt,children:f.rowState({readState:E,isStarred:b})}),J(io,{id:Ie(n,"position"),whileTotalUnknownOnly:!0}),J(Bh,{report:t,sourceConfig:r,readState:E,isStarred:b,onToggleRead:x,onToggleStar:P,onEdit:s,editButtonRef:i,onDelete:I?O:void 0,visitTimeDisplay:A,markerIds:D,labels:f}),nt("div",{className:"grid gap-4 md:grid-cols-[minmax(0,1fr)_240px]",children:[nt("div",{className:"flex flex-col gap-4",children:[nt("div",{className:"grid gap-4 sm:grid-cols-2",children:[nt("div",{className:"flex flex-col gap-1",children:[J(wt,{level:S,className:mr,children:f.customer}),J("span",{className:"font-semibold text-base text-slate-900 dark:text-slate-100",children:J(ge,{fieldKey:we.field("customerName"),raw:t.customerName,display:w})})]}),nt("div",{className:"flex flex-col gap-1",children:[J(wt,{level:S,className:mr,children:f.subject}),J("span",{className:"text-slate-700 text-sm dark:text-slate-200",children:J(ge,{fieldKey:we.field("subject"),raw:t.subject,display:_})})]})]}),B.text.length>0&&nt("div",{className:"flex flex-col gap-2",children:[J(wt,{level:S,className:mr,children:f.content}),J("div",{className:hC,children:J(ge,{fieldKey:we.field("content"),raw:t.content,display:B})})]}),t.interviewers.length>0&&nt("div",{className:"flex flex-col gap-2",children:[J(wt,{level:S,className:mr,children:f.interviewers}),J("ul",{className:"flex flex-wrap gap-2",children:t.interviewers.map((T,L)=>J("li",{className:bC,children:J(SC,{interviewer:T,index:L,template:f.interviewerWithAffiliation})},JSON.stringify([T.name,T.affiliation])))})]}),J(ai,{attachments:t.attachments}),J(ia,{report:t,userId:a,canComment:h,onCommentAdded:g,onSectionRemoved:l,formPlacement:"after-section"})]}),J(kh,{report:t,visitTimeDisplay:A,labels:f})]})]})});qh.displayName="DailyReportResolvedItem";var Xh=Sc(({report:e,stateId:t,onCancel:r,onPublishSuccess:n,titleInputRef:o})=>{let{labels:a}=q();return nt("div",{..._t,className:yC,children:[J("span",{id:t,className:Jt,children:a.rowEditingState({isDraft:e.isDraft})}),J(ui,{report:e,onCancel:r,onPublishSuccess:n,titleInputRef:o})]})});Xh.displayName="DailyReportEditingBody";var AC=({itemId:e,stateId:t})=>{let{labels:r}=q();return J("div",{..._t,className:RC,children:J("p",{id:t,children:r.reportLoadFailed(e)})})};import{VirtualScroll as PC,virtualScrollItemElementId as kC}from"@aiquants/virtualscroll";import{useCallback as ki,useContext as FC,useId as nb,useMemo as Tc,useRef as HC,useState as ob}from"react";import{createContext as xC}from"react";var gc=xC(null);import{createContext as vC,useContext as CC,useLayoutEffect as IC}from"react";var Qh=()=>{let e=!1;return{request:()=>{e=!0},isPending:()=>e,take:()=>{let t=e;return e=!1,t}}},Ec=vC(null),Zh=(e,t)=>{let r=CC(Ec);IC(()=>{r===null||!r.isPending()||e.current===null||(r.take(),t(null,"handOver"))})};import{useCallback as Jh,useLayoutEffect as eb,useMemo as tb,useRef as Dc}from"react";var _C=(e,t,r,n)=>{for(let o=r;o<=n;o++){let a=ke(e,o);if(a===void 0||a.reportHubId!==ke(t,o)?.reportHubId)return!0}return!1},LC=(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}},NC=(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}},OC=(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"?LC(e.index,a,n.rowHeight,r.length):NC(e.index,a,hi(n),r.length);return{reportHubId:nr(r,s).reportHubId,index:s,offsetPx:i,lastVisibleIndex:Si({index:s,offsetPx:i},o,r.length,n),recordedAt:t}},MC=(e,t,r)=>{for(let n=r.index+1;n<=r.lastVisibleIndex&&n<e.length;n++){let o=Fe(t,nr(e,n).reportHubId,n-1);if(o!==-1)return o}return-1},rb=({items:e,handleRef:t,rowSizing:r,isRevealPending:n})=>{let o=Dc(null),a=Dc(e),s=Dc(r),i=Jh(()=>{let c=t.current,u=c===null?-1:c.getScrollPosition(),m=c===null||!(u>0)?null:c.getScrollAnchor(),p=a.current,f=m===null?void 0:ke(p,m.index),y=c===null?0:c.getViewportSize();o.current=m===null||f===void 0||!(y>0)?null:{reportHubId:f.reportHubId,index:m.index,offsetPx:m.offsetPx,lastVisibleIndex:Si(m,y,p.length,s.current),recordedAt:u}},[t]),l=tb(()=>({toIndex:(c,u)=>{let m=t.current;m!==null&&(m.scrollToIndex(c,u),i())},by:c=>{let u=t.current;u!==null&&(u.scrollBy(c),i())},resizeRow:(c,u)=>{let m=t.current;m!==null&&(m.updateItemSize(c,u),i())},reestimate:c=>{let u=t.current;u!==null&&(u.setItemHeightEstimate(c),i())}}),[t,i]);eb(()=>{let c=a.current;a.current=e;let u=o.current,m=t.current;if(c===e||u===null||m===null||n())return;let p=OC(u,m.getScrollPosition(),c,s.current,m.getViewportSize());if(p===null){o.current=null;return}let f=Fe(e,p.reportHubId,p.index),y=f===-1?MC(c,e,p):f;if(y===-1){o.current=null;return}if(y===p.index&&!_C(c,e,p.index,p.lastVisibleIndex)){o.current=p;return}m.scrollToIndex(y,{align:"top",offset:-p.offsetPx}),o.current={reportHubId:nr(e,y).reportHubId,index:y,offsetPx:p.offsetPx,lastVisibleIndex:Si({index:y,offsetPx:p.offsetPx},m.getViewportSize(),e.length,r),recordedAt:m.getScrollPosition()}},[e,t,r,n]),eb(()=>{s.current=r},[r]);let d=Jh(c=>{if(c.cause!=="clamp"){i();return}let u=o.current;u!==null&&(o.current={...u,recordedAt:u.recordedAt+c.delta})},[i]);return tb(()=>({handleRangeChange:i,handleScrollAdjust:d,scroller:l}),[i,d,l])};import{jsx as fo}from"react/jsx-runtime";var BC=Object.freeze({skipFar:!0}),UC=(e,t)=>{let r=null,n=new Map;return a=>{let s=e.current;s!==r&&(r=s,n.clear());let i=n.get(a);if(i!==void 0)return i;let l=Fe(s,a,t(a)),d=l===-1?null:l;return n.set(a,d),d}},Fi=({containerRef:e,testId:t,itemsRef:r,rowSetSize:n,isViewRevealPending:o,onRangeChange:a,...s})=>{let i=HC(null),l=ki(T=>(i.current=T,()=>{i.current=null}),[]),{labels:d}=q(),c=nb(),{handleRangeChange:u,handleScrollAdjust:m,scroller:p}=rb({items:s.items,handleRef:i,rowSizing:s.rowSizing,isRevealPending:o}),{handleRangeChange:f,...y}=Ih({...s,containerRef:e,handleRef:i,scroller:p,gridId:c}),{cursor:S,controls:h,selectionStore:D,focusViewRow:g}=y,R=FC(gc),[b]=ob(()=>R===null?null:R.instrumentView({hostTestId:t,readHandle:()=>i.current,readItems:()=>r.current,reveal:p.toIndex})),[E]=ob(()=>rf({gridId:c,isHolding:()=>D.isHeld(),subscribeHold:T=>D.subscribeHold(T),keySteps:D.keySteps,activeIndex:()=>{let T=S.getActiveId(),L=T===null?-1:Fe(r.current,T,S.getActiveIndexHint());return L===-1?null:L},indexOf:UC(r,T=>{let L=e.current,F=L===null?null:L.ownerDocument.getElementById(kC(c,T)),U=F===null?null:Vr(F);return U===null?null:U-1}),pane:()=>{let T=i.current,L=T===null?-1:T.getScrollPosition();return T===null||L===-1?null:{range:T.getRange(),position:L}},observe:b===null?void 0:b.observeRowPass})),I=ki(T=>{m(T),!(b===null||T.cause!=="re-estimate")&&b.observeReEstimate(D.isHeld()||e.current?.hasAttribute(Pr)===!0)},[m,b,D,e]),x=ki(T=>{e.current=T;let L=b===null?null:b.attach(T);return()=>{L!==null&&L(),e.current=null}},[e,b]);Zh(e,g);let P=nb(),O=s.onSelect!==null,B=ki(T=>{f(T),u(),a(T)},[f,u,a]),w=Tc(()=>({role:Zl,id:c,tabIndex:0,"aria-label":d.title,"aria-describedby":O?P:void 0,"aria-rowcount":n}),[c,d.title,O,P,n]),_=Tc(()=>O?fo("span",{id:P,className:"sr-only",children:d.listKeyboardHelp}):null,[O,P,d.listKeyboardHelp]),A=Tc(()=>({cursor:S,controls:h,rowPass:E,focusViewRow:g}),[S,h,E,g]);return{...y,handleRangeChange:B,handleScrollAdjust:I,attachVirtualScroll:l,handleRef:i,scroller:p,attachScrollContainer:x,contentProps:w,keyboardHelp:_,rowPass:E,rowScope:A}},Hi=({rowScope:e,items:t,...r})=>{let n=Ch(e.cursor,t);return fo(yc.Provider,{value:e.cursor,children:fo(zd.Provider,{value:e.controls,children:fo(Ds.Provider,{value:e.rowPass,children:fo(_d.Provider,{value:e.focusViewRow,children:fo(PC,{...r,activeItemIndex:n,activeItemVisibleInset:tu,itemZones:BC})})})})})};import{useCallback as VC,useContext as ab,useEffect as sb,useMemo as WC,useState as zC}from"react";var ib=e=>{let t=e;for(;t<_l;)t+=Pn;return t>=Ho+Pn&&(t-=Pn*Math.floor((t-Ho)/Pn)),t},KC=(e,t,r)=>e===null||t<e.start||r>e.end?{start:t-Ho,end:r+Ho}:{start:t-ib(t-e.start),end:r+ib(e.end-r)},Bi=e=>{for(let t of e.values())t();e.clear()},lb=(e,t)=>{for(let[r,n]of e)t.has(r)||(n(),e.delete(r))},$C=()=>{let e=null,t=new Map,r=new Map,n=null,o=null,a=()=>{},s=()=>{Bi(t),Bi(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&&(Bi(t),e=null),o!==null&&o.marksStore!==l.marksStore&&Bi(r),e=KC(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 f=d;f<=c;f++){let y=l.getItem(f);y.reportHubId>0&&u.set(y.reportHubId,y.businessDate)}let{detailStore:m,marksStore:p}=l;for(let[f,y]of u)t.has(f)||t.set(f,m.subscribe(f,y,a)),p!==null&&!r.has(f)&&r.set(f,p.subscribe(f,a));lb(t,u),lb(r,u)}}},Ui=({itemCount:e,getItem:t})=>{let r=ab(kn),n=nn(),o=ab(pt),[a]=zC($C),s=WC(()=>({detailSource:r,detailStore:n,marksStore:o,itemCount:e,getItem:t}),[r,n,o,e,t]),i=VC(l=>a.evaluate(l,s),[a,s]);return sb(()=>{a.evaluate(null,s)},[a,s]),sb(()=>()=>a.releaseAll(),[a]),i};import{Fragment as JC,jsx as dr,jsxs as ZC}from"react/jsx-runtime";var ub={pointerDragInputs:ts,wheelSpeedMultiplier:qa,inertiaOptions:$n(!1),enableKeyboardNavigation:!1},jC={...ub,inertiaOptions:$n(!0)},cb="daily-report-detail-list",GC=C("relative w-full",Fa,ka,Ha),YC=C(Nt,"relative"),qC=300,XC=e=>{let t=Km({seedPx:qp,quantumPx:Xp});for(let r of e.values())t.record(null,r);return t},Ac=e=>{let t=gt(null),[r,n]=Tn(null),o=us(t),a=jn(r),s=Ye(i=>(t.current=i,n(i),()=>{t.current=null,n(null)}),[]);return dr("div",{ref:s,className:Oa,children:dr("div",{className:Ma,children:o===null?null:dr(QC,{...e,viewportHeight:o,reducedMotion:a})})})},QC=({dailyReportItems:e,rowSetSize:t,userId:r,selectedItemId:n,onSelectItem:o,scrollRestoreRef:a,viewportHeight:s,reducedMotion:i})=>{let[{initialScrollAnchor:l,restored:d}]=Tn(()=>{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 z=rr(e,k.topItem.reportHubId);return z!==-1?{initialScrollAnchor:{index:z,offsetPx:k.topItem.offsetPx},restored:!0}:{initialScrollAnchor:{index:k.topItem.index,offsetPx:0},restored:!0}}),c=gt(d),u=gt(n??null),m=Xe(()=>a?.current.measuredHeights??new Map),[p]=Tn(()=>XC(m.current)),[f]=Tn(()=>p.estimate()),y=gt(f),S=gt(null),h=ls(),D=Ul(),[g]=Tn(ws),R=gt(null),b=gt(null),E=gt(e),I=gt(o);db(()=>{E.current=e,I.current=o},[e,o]);let x=gt(null),[P,O]=Tn(0),B=gt(null),w=e.length,_=t===void 0?w:t,A=Ye(k=>{let z=ke(e,k);return z===void 0?Qa:z},[e]),T=Ye(k=>{let z=m.current.get(A(k).reportHubId);return z===void 0?y.current:z},[m,A]),L=Ye(k=>ys(e,k),[e]),F=wc(()=>({kind:"measured",heightOf:T}),[T]),U=Ye((k,z,ae)=>{if(x.current={reportHubId:k,index:z},ae==="held"){I.current?.(k,"held");return}O(ye=>ye+1),I.current?.(k,"settled")},[]),j=Ye((k,z)=>U(k,z,"settled"),[U]),G=Ye((k,z)=>{if(w===0)return;let ae=Math.max(0,k),ye=Math.min(w-1,z);if(ae>ye)return;let xe=new Set;for(let ze=ae;ze<=ye;ze++){let jt=A(ze);if(jt.businessDate&&xe.add(jt.businessDate),xe.size>=jp)break}xe.forEach(ze=>{D(ze)})},[A,w,D]),Q=gt(null),X=Ye(()=>Q.current,[]),fe=Ui({itemCount:w,getItem:A}),De=Ye(k=>{if(w===0)return;let{renderingStartIndex:z,renderingEndIndex:ae,visibleStartIndex:ye}=k,xe=A(ye);xe.reportHubId>0&&(Q.current=xe.reportHubId),xe.businessDate&&g.setLabel(Ne(xe.businessDate)),G(z,ae),G(ae+1,ae+Xa),G(z-Xa,z-1),fe(k)},[A,w,G,g,fe]),N=Ye(()=>B.current!==null,[]),{containerProps:V,handleRangeChange:K,handleScrollAdjust:re,attachVirtualScroll:he,handleRef:H,scroller:ee,attachScrollContainer:te,contentProps:Ee,keyboardHelp:Te,resolveSelectedIndex:ie,activateRow:xt,rowPass:Qe,rowScope:vt,selectionStore:ot}=Fi({items:e,selectedId:n??null,onSelect:o===void 0?null:U,onActivate:j,containerRef:S,rootRef:S,testId:cb,itemsRef:E,rowSetSize:_,rowSizing:F,arrowAlign:"top",isViewRevealPending:N,onRangeChange:De});xs({items:e,scroller:ee,readTopReportId:X});let ct=Ye(()=>{let k=p.estimate();k===y.current||ot.isHeld()||b.current!==null||(y.current=k,ee.reestimate(k))},[p,ot,ee]);db(()=>ot.subscribeHold(()=>{ot.isHeld()||ct()}),[ot,ct]);let at=Ye((k,z)=>{if(H.current===null)return!1;let ae=E.current,ye=z!==null&&z.reportHubId===k?Fe(ae,k,z.index):ie(ae,k);return ye===-1?!1:(c.current&&(c.current=!1,k===u.current)||z!==null&&z.reportHubId===k&&z.index===ye||ee.toIndex(ye,{align:"top"}),!0)},[H,ie,ee]);Dn(()=>{let k=x.current;x.current=null,B.current=null,n!=null&&(at(n,k)||(B.current=n))},[n,at]),Dn(()=>{let k=B.current;k!==null&&at(k,null)&&(B.current=null)},[e,at]),Dn(()=>{let k=a?.current;k&&(k.anchorReportHubId=n??null)},[n,a]),Dn(()=>{x.current=null},[P]);let Rt=gt(null),Kt=Ye(()=>{H.current&&(Rt.current=H.current);let k=a?.current,z=Rt.current;if(k&&z){let ye=z.getScrollAnchor(),xe=ye===null?void 0:ke(E.current,ye.index);ye&&xe&&(k.topItem={reportHubId:xe.reportHubId,index:ye.index,offsetPx:ye.offsetPx})}let ae=S.current;ae&&(ae.toggleAttribute(Pr,!0),b.current&&clearTimeout(b.current),b.current=setTimeout(()=>{ae.toggleAttribute(Pr,!1),b.current=null,ct()},150))},[H,a,ct]),$t=Ye(k=>dr(As,{...k,store:g}),[g]);Dn(()=>{let k=S.current;if(!k)return;let z=()=>{g.setWheelScrollActive(!0),R.current&&clearTimeout(R.current),R.current=window.setTimeout(()=>{g.setWheelScrollActive(!1),R.current=null},Za)};return k.addEventListener("wheel",z,{passive:!0}),()=>{k.removeEventListener("wheel",z),R.current&&clearTimeout(R.current)}},[g]);let Dt=Ye(k=>{for(let[z,ae]of k){Qe.measured(z);let ye=z.parentElement,xe=ye===null?null:jo(ye),ze=ye===null?null:Vr(ye);if(xe===null||ze===null)continue;let jt=ae+2*ur,Lr=m.current.get(xe);if(Lr===jt)continue;let xn=Fe(E.current,xe,ze-1);xn!==-1&&(m.current.set(xe,jt),p.record(Lr===void 0?null:Lr,jt),ee.resizeRow(xn,jt))}ct()},[m,ee,Qe,p,ct]),[v]=Tn(()=>zm(Dt)),M=v.observe,W=Ye(k=>{let z=je(k),ae=te(k),ye=v.attach(z),xe=Qe.attach(z,v.remeasure);return()=>{xe(),ye(),ae()}},[te,Qe,v]);Dn(()=>{w!==0&&G(0,Math.min(w-1,Xa))},[w,G]);let Y=gt(null),oe=Ye(k=>{let z=Fe(E.current,k,null);z!==-1&&(Y.current!==null&&clearTimeout(Y.current),Y.current=setTimeout(()=>{Y.current=null;let ae=Fe(E.current,k,z);ae!==-1&&ee.toIndex(ae,{align:"bottom"})},qC))},[ee]);Dn(()=>()=>{Y.current!==null&&clearTimeout(Y.current)},[]);let ue=Ye(k=>{if(!I.current)return;let z=dn(k.target,S.current);if(z===null||Bm(k.target,z))return;let ae=Hm(z,E.current);ae!==null&&(xt(ae.reportHubId,ae.index),U(ae.reportHubId,ae.index,"settled"))},[U,xt]),$=Ye((k,z)=>dr(un.Provider,{value:z,children:dr(Yo.Provider,{value:k.reportHubId,children:dr(Yh,{item:k,observeRowHeight:M,onCommentAdded:oe,userId:r})})},k.reportHubId),[M,oe,r]),ne=wc(()=>({...es,renderThumbOverlay:$t}),[$t]),Le=wc(()=>dr(cn.Provider,{value:_,children:dr(Hi,{ref:he,rowScope:vt,items:e,itemCount:w,getItem:A,getItemKey:L,getItemHeight:T,estimatedItemHeight:f,viewportSize:s,initialScrollAnchor:l,overscanCount:Ja,scrollBarOptions:ne,behaviorOptions:i?jC:ub,onRangeChange:K,onScrollAdjust:re,onScroll:Kt,testId:cb,className:GC,locale:h.locale,labels:h.labels,contentProps:Ee,children:$})}),[he,vt,e,_,w,A,L,T,f,s,i,l,ne,K,re,Kt,h.locale,h.labels,Ee,$]);return dr(JC,{children:ZC("div",{ref:W,className:YC,...Ss,...V,onClick:ue,children:[Te,Le]})})};import fb from"lucide-react/dist/esm/icons/refresh-cw.js";import{createContext as nI,memo as oI,useContext as aI,useLayoutEffect as sI,useRef as iI}from"react";import{jsx as xc,jsxs as eI}from"react/jsx-runtime";var Vi=e=>10**String(e).length-1,ca=({text:e,widestTexts:t,ref:r})=>eI("span",{ref:r,className:_u,children:[xc("span",{"aria-hidden":"true",className:Pa,children:[...new Set(t)].map(n=>xc("span",{className:Jr,children:n},n))}),xc("span",{className:Lu,children:e})]});import{useLayoutEffect as tI,useState as pb}from"react";import{jsx as mb,jsxs as rI}from"react/jsx-runtime";var vc=Object.freeze({status:"",alert:""}),Wi=({announcement:e,testId:t})=>{let[r]=pb(e),[n,o]=pb(!1),a=n||e.status!==r.status||e.alert!==r.alert;tI(()=>{a&&!n&&o(!0)},[a,n]);let{status:s,alert:i}=a?e:vc;return rI("span",{"data-testid":t,className:"sr-only",children:[mb("span",{role:"status",children:s}),mb("span",{role:"alert",children:i})]})};import{Fragment as gI,jsx as Et,jsxs as zt}from"react/jsx-runtime";var Ic=nI(!0),lI="daily-report-ids-stream-status-announcer",dI="inline-grid whitespace-nowrap text-start",hb="col-start-1 row-start-1",cI=`${Pa} ${hb}`,uI=`${hb} flex justify-self-start rounded-full empty:not-focus:invisible ${le}`,bb=C(Je,"gap-1 bg-blue-100 font-medium text-blue-800 text-xs tabular-nums dark:bg-blue-900/40 dark:text-blue-300"),Cc="size-2 rounded-full bg-blue-500 dark:bg-blue-400",Sb=C(Je,"gap-1 bg-amber-100 font-medium text-amber-900 text-xs tabular-nums dark:bg-amber-900/40 dark:text-amber-300"),gb=C(Je,"gap-1 bg-rose-100 font-medium text-rose-900 text-xs dark:bg-rose-900/40 dark:text-rose-300"),Eb=C(Je,"gap-1 bg-slate-100 font-medium text-slate-700 text-xs dark:bg-slate-800/40 dark:text-slate-300"),Db=C("inline-flex h-5 items-center rounded-full bg-rose-100 px-2 font-semibold text-rose-900 hover:bg-rose-200 hover:text-rose-950 dark:bg-rose-900 dark:text-rose-50 dark:hover:bg-rose-800 dark:hover:text-rose-50",le),yb="size-3",Rb=`${bb} ${Jr}`,pI=`${Sb} ${Jr}`,mI=`${gb} ${Jr}`,fI=`${Eb} ${Jr}`,Tb=(e,t)=>Vi(t===null?e:Math.max(e,t)),yI=(e,t,r)=>{let n=Tb(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)}},RI=({labels:e,loadedCount:t,totalCount:r})=>{let{text:n,widestText:o}=yI(e,t,r);return zt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"streaming",className:bb,children:[Et("span",{"aria-hidden":"true",className:Cc}),Et(ca,{text:n,widestTexts:[o]})]})},hI=(e,t,r)=>e.phase==="streaming"?Et(RI,{labels:t,loadedCount:e.loadedCount,totalCount:e.totalCount}):e.phase==="retrying"?zt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"retrying",className:Sb,children:[Et(fb,{"aria-hidden":"true",className:"size-3 motion-safe:animate-spin"}),t.streamRetrying(e.loadedCount)]}):e.phase==="failed"?zt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"failed",className:gb,children:[t.streamFailed,Et("button",{type:"button","data-testid":"daily-report-ids-stream-retry",onClick:r,className:Db,children:t.streamRetry})]}):e.isRevalidating?zt("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"revalidating",className:Eb,children:[Et(fb,{"aria-hidden":"true",className:"size-3 motion-safe:animate-spin"}),t.streamRevalidating]}):null,bI=oI(({labels:e,widest:t})=>zt("span",{"aria-hidden":"true",className:cI,children:[zt("span",{className:Rb,children:[Et("span",{className:Cc}),e.streamProgressCount(t)]}),zt("span",{className:Rb,children:[Et("span",{className:Cc}),e.streamProgressRatio(t,t,100)]}),zt("span",{className:pI,children:[Et("span",{className:yb}),e.streamRetrying(t)]}),zt("span",{className:mI,children:[e.streamFailed,Et("span",{className:Db,children:e.streamRetry})]}),zt("span",{className:fI,children:[Et("span",{className:yb}),e.streamRevalidating]})]})),_c=(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:""}:vc,SI=(e,t)=>_c({phase:e.phase,hasItems:!0,retryingCount:e.phase==="retrying"?e.loadedCount:null},t),ua=()=>{let e=Ff(),{labels:t}=q(),r=aI(Ic),n=iI(null),a=hI(e,t,()=>{Ar([n.current]),Us()}),s=a===null;return sI(()=>{let i=n.current;!s||i===null||!i.contains(tt(i))||Ar(qs(i.ownerDocument))},[s]),zt(gI,{children:[zt("span",{className:dI,children:[Et(bI,{labels:t,widest:Tb(e.loadedCount,e.totalCount)}),Et("span",{ref:n,tabIndex:-1,"data-daily-report-stream-status":"",className:uI,children:a})]}),r?Et(Wi,{announcement:SI(e,t),testId:lI}):null]})};import{Panel as Yb,PanelGroup as $_,PanelResizeHandle as j_}from"@aiquants/resize-panels";import{useCallback as mt,useEffect as qi,useLayoutEffect as Xi,useMemo as Uc,useRef as Qr,useState as Zi}from"react";import{useSyncExternalStore as EI}from"react";var wb="(max-width: 639px)",DI=()=>{},TI=e=>{if(typeof window>"u"||typeof window.matchMedia!="function")return DI;let t=window.matchMedia(wb);return t.addEventListener("change",e),()=>t.removeEventListener("change",e)},wI=()=>typeof window<"u"&&typeof window.matchMedia=="function"?window.matchMedia(wb).matches:!1,AI=()=>!1,Ab=()=>EI(TI,wI,AI);import{SwipeCloseGuardContext as e_,useSwipeGuardState as t_,useSwipeToDismissOverlay as r_,useTapClick as n_,useTransitionDisplay as o_}from"@aiquants/swipe-overlay";import{useCallback as $i,useEffect as ba,useId as Hb,useLayoutEffect as Fc,useRef as Xt,useState as ji}from"react";var xI={kind:"hold"},vI=new Set(["grid","listbox","menu","menubar","radiogroup","tablist","toolbar","tree","treegrid"]),CI=(e,t)=>{let r=e.getAttribute("role");return r!==null&&vI.has(r)&&e!==t&&e.contains(t)},xb=e=>e.key==="Escape"&&!e.defaultPrevented&&!bn(e),vb=(e,t)=>{if(e.key!=="Tab"||e.altKey||e.ctrlKey||e.metaKey||e.defaultPrevented||bn(e))return null;let r=e.target;if(!(Pe(r)&&t.contains(r)))return null;let n=cs(t);if(n.length===0)return xI;let{before:o,within:a,after:s}=Vo(t,r);return e.shiftKey?o.some(i=>!CI(i,r))?null:{kind:"wrap",element:n[n.length-1]}:a.length>0||s.length>0?null:{kind:"wrap",element:n[0]}};import{useMemo as II}from"react";var pa=(e,t)=>{let{id:r,indexHint:n}=t;return II(()=>{if(r===null)return null;let o=Fe(e,r,n);return o===-1?null:nr(e,o)},[e,r,n])};import _I from"lucide-react/dist/esm/icons/pencil.js";import LI from"lucide-react/dist/esm/icons/trash-2.js";import{memo as NI,useCallback as wn,useDeferredValue as OI,useEffect as Oc,useId as _b,useLayoutEffect as Mc,useMemo as ha,useRef as Ra,useState as Lb,useSyncExternalStore as MI}from"react";import*as Cr from"@radix-ui/react-tabs";import*as At from"react";import{jsx as yo}from"react/jsx-runtime";var Cb=At.createContext(null),Ib=e=>{let t=At.useContext(Cb);if(t===null)throw new Error(`[daily-report] ${e} must be rendered inside Tabs`);return t},Lc=(e,t)=>`${e}-trigger-${t}`,Nc=(e,t)=>`${e}-panel-${t}`,ma=At.forwardRef(({value:e,children:t,...r},n)=>{let o=At.useId(),a=At.useMemo(()=>({baseId:o,value:e}),[o,e]);return yo(Cr.Root,{ref:n,value:e,...r,children:yo(Cb,{value:a,children:t})})});ma.displayName=Cr.Root.displayName;var fa=At.forwardRef(({className:e,...t},r)=>yo(Cr.List,{ref:r,className:C("inline-flex",e),...t}));fa.displayName=Cr.List.displayName;var ya=At.forwardRef(({className:e,value:t,...r},n)=>{let{baseId:o}=Ib("TabsTrigger");return yo(Cr.Trigger,{ref:n,value:t,...r,id:Lc(o,t),"aria-controls":Nc(o,t),className:C(`${Eu} ${le}`,e)})});ya.displayName=Cr.Trigger.displayName;var Ro=At.forwardRef(({className:e,value:t,tabStop:r,children:n,...o},a)=>{let{baseId:s,value:i}=Ib("TabsContent"),l=t===i,d="mt-2 data-[state=inactive]:hidden";return r?yo("div",{ref:a,role:"tabpanel",id:Nc(s,t),"aria-labelledby":Lc(s,t),"data-state":l?"active":"inactive",hidden:!l,tabIndex:0,...o,className:C(`${d} ${le}`,e),children:l?n:null}):yo("div",{ref:a,role:"tabpanel",id:Nc(s,t),"aria-labelledby":Lc(s,t),"data-state":l?"active":"inactive",hidden:!l,...o,className:C(d,e),children:l?n:null})});Ro.displayName="TabsContent";import{jsx as Z,jsxs as Ir}from"react/jsx-runtime";var Pb=C(en,"w-24 shrink-0"),Nb={field:"flex items-baseline",label:Pb,value:"flex-1"},PI={field:"flex min-w-0 flex-1 items-baseline",label:Pb,value:"wrap-break-word min-w-0 flex-1"},kI={field:"flex flex-col gap-1",label:en,value:""},FI={field:"flex min-w-0 items-center gap-1",label:C(en,"shrink-0 whitespace-nowrap"),value:""},HI=`flex min-h-4 flex-wrap items-center gap-x-2 gap-y-1 ${de} text-xs`,Ob=C("flex-1 touch-pan-y overflow-y-auto overflow-x-hidden pt-2 text-sm",dl,ou,nu),Mb={desktop:C(Ob,ku),overlay:Ob},BI=C("flex flex-col gap-1",cl),UI=C(Su,"grid grid-cols-2 gap-1"),VI=C("m-0 font-normal text-slate-900 text-sm dark:text-slate-100",le),Pc=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)})}},WI=(e,t,r,n,o,a,s)=>{let i=Ra(null),l=e?.reportHubId;Mc(()=>{i.current=null},[l]),Oc(()=>{o||(i.current=null)},[o]);let d=wn(async(c,u)=>{u||(i.current=c.reportHubId);try{await s(c.reportHubId,In(yr(c,t),c.contentDigest),c.date)}catch{}},[s,t]);return Oc(()=>{if(!(n&&e&&yr(e,t)!=="read"&&!r)||i.current===e.reportHubId)return;let c=null,u=()=>{c!==null&&clearTimeout(c),c=a.isDwelling()?setTimeout(()=>d(e,!0),500):null};u();let m=a.subscribe(u);return()=>{m(),c!==null&&clearTimeout(c)}},[e,t,r,n,d,a]),{handleToggleRead:d}},kc="article",zI=["article","relations"],KI=e=>{if(e==="article"||e==="relations")return e;throw new Error(`[daily-report] unknown side-pane tab: ${e}`)},$I=C("hidden h-full min-h-0 w-full min-w-0 flex-1 flex-col gap-4 sm:flex",Lt),jI=C("flex h-full flex-1 items-center justify-center text-center",vn),GI=9,YI=.875,qI=16,kb=4*Math.ceil((2*ur+2*Ca+2*iu+GI*YI*qI)/4),Fb=({dailyReportItems:e,selectionStore:t,autoMarkRead:r,userId:n,onReportDeleted:o})=>{let{labels:a}=q(),s=_b(),i=_b(),[l,d]=Lb(kc),{selected:c,settled:u}=MI(t.subscribe,t.getSnapshot,t.getSnapshot),m=pa(e,c),p=pa(e,OI(u)),f=m===null?null:m.reportHubId,S=(p===null?null:p.reportHubId)===f,[h]=Lb(()=>Pc(S));return Mc(()=>{h.set(S)},[h,S]),Z("aside",{"data-testid":"daily-report-side-pane","data-report-id":m?.reportHubId,"data-displayed-report-id":p?.reportHubId,"aria-busy":S?void 0:!0,className:$I,children:p===null?Z("div",{className:jI,children:Z("p",{className:fr,children:a.selectPrompt})}):Z(Ki,{item:p,placement:"desktop",headingId:s,authorId:i,activeTab:l,onActiveTabChange:d,autoMarkRead:r,isActive:!0,dwell:h,userId:n,onReportDeleted:o},p.reportHubId)})},XI=({reportHubId:e,children:t})=>{let r=ky(e);return Z(Jn,{reportHubId:e,entry:r,children:t})},Ki=NI(({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:m,headingLevel:p}=q(),{report:f,error:y,isLoading:S}=Bl(e.reportHubId,e.businessDate),h=zr(),D=js(e.reportHubId),g=D==="editing"||D==="automatic",R=Ra(null),b=Ra(null),E=Ra(!1),I=Ra(!1),x=pn(f,d),P=f?.isDraft===!0;Oc(()=>{f!==null&&(x&&P&&D==="display"?h.open(e.reportHubId,ro(f),!0):!P&&D==="automatic"&&h.discard(e.reportHubId))},[f,x,P,D,h,e.reportHubId]);let O=ha(()=>f===null?void 0:()=>{E.current=!0,h.open(e.reportHubId,ro(f),!1)},[h,e.reportHubId,f]),B=wn(()=>{I.current=!0,h.dismiss(e.reportHubId)},[h,e.reportHubId]),w=wn(()=>{I.current=!0,h.discard(e.reportHubId)},[h,e.reportHubId]),_=wn(Q=>{Q===null||!E.current||(E.current=!1,Q.focus())},[]),A=wn(Q=>{Q===null||!I.current||(I.current=!1,Q.focus())},[]),T=wn(()=>{b.current?.focus({preventScroll:!0})},[]);Mc(()=>{g||!I.current||(I.current=!1,b.current?.focus())},[g]);let L=wn(()=>{setTimeout(()=>{let Q=R.current;Q!==null&&Q.scrollTo({top:Q.scrollHeight,behavior:df(Q)})},100)},[]),F=Ne(e.businessDate),U=ha(()=>f===null?null:Ke(f.employeeName),[f]),j=S||!f,G=f===null?void 0:Sr(f.sourceType,m);return Ir(XI,{reportHubId:e.reportHubId,children:[Ir("div",{className:BI,children:[Z("dl",{className:"m-0",children:Z(St,{label:u.businessDate,classNames:kI,children:Z(wt,{ref:b,level:p,id:r,tabIndex:-1,className:VI,children:F})})}),Ir("div",{className:HI,children:[Z("dl",{className:"m-0 min-w-0",children:Z(St,{label:u.author,classNames:FI,valueId:n,children:j||U===null?Z("div",{"data-skeleton":!0,className:"h-3 w-24 rounded bg-slate-200 motion-safe:animate-pulse dark:bg-slate-700"}):Z(ge,{fieldKey:we.field("employeeName"),raw:f?.employeeName,display:U})})}),G?Z(lo,{config:G}):null,f===null?null:Z(mi,{isEditing:g,descriptionId:null})]})]}),Ir(ma,{value:o,onValueChange:Q=>a(KI(Q)),className:"flex min-h-0 flex-1 flex-col",children:[Z("div",{className:cl,children:Z(fa,{"aria-label":u.reportTabList,className:UI,children:zI.map(Q=>Z(ya,{value:Q,children:Q==="article"?u.tabArticle:u.tabRelations},Q))})}),Z(Ro,{ref:R,value:"article",tabStop:!0,className:Mb[t],children:g?f?Z(ui,{report:f,onCancel:B,onPublishSuccess:w,titleInputRef:_}):Z("p",{className:vn,children:u.loading}):Z(JI,{report:f,sourceConfig:G,isLoading:S,error:y,item:e,autoMarkRead:s,isActive:i,dwell:l,onCommentAdded:L,userId:d,onEdit:x?O:void 0,editButtonRef:A,onReportDeleted:c,onCommentSectionRemoved:T})}),Z(Ro,{value:"relations",tabStop:!0,className:Mb[t],children:Z("p",{className:vn,children:u.relationsEmpty})})]})]})});Ki.displayName="DailyReportSidePaneContent";var zi=({className:e="w-32"})=>Z("div",{"data-skeleton":!0,className:`h-4 rounded bg-slate-200 motion-safe:animate-pulse dark:bg-slate-700 ${e}`}),QI=["w-full","w-11/12","w-4/5"],ZI=C(lu,Ia),JI=({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:m,onCommentSectionRemoved:p})=>{let{toggleStar:f,toggleRead:y,deleteReport:S}=lt(),{labels:h,headingLevel:D}=q(),g=Kr[D],{handleToggleRead:R}=WI(e,d,r,a,s,i,y),b=e!==null&&Ya(e.sourceType,t),E=e===null?null:yr(e,d),I=ha(()=>e?.content?ju(e.content):null,[e]),x=ha(()=>Ke(e?.subject),[e]),P=ha(()=>Ke(e?.customerName),[e]),O=async A=>{try{await f(A.reportHubId,!A.isStarred,A.date)}catch{}},B=async A=>{if(confirm(h.confirmDelete)){try{await S(A.reportHubId,A.date)}catch{return}m(A.reportHubId)}};if(n)return Z("p",{className:Eo,children:h.reportLoadFailed(o.reportHubId)});let w=!e,_=pn(e,d);return Ir("div",{className:"flex flex-col gap-4 text-slate-700 dark:text-slate-200",onDoubleClick:c,children:[Ir("div",{className:"flex items-start gap-2",children:[Z("dl",{className:"m-0 flex min-w-0 flex-1",children:Z(St,{label:h.subject,classNames:PI,children:w?Z(zi,{className:"w-3/4"}):Z("span",{className:"text-sm",children:Z(ge,{fieldKey:we.field("subject"),raw:e?.subject,display:x})})})}),!w&&e&&E&&Ir("div",{className:"flex h-5 shrink-0 items-center gap-2 pr-2",children:[Z(po,{readState:E,label:h.updatedSinceRead}),Z("button",{type:"button",onClick:()=>O(e),className:it,title:e.isStarred?h.starRemove:h.starAdd,"aria-label":e.isStarred?h.starRemove:h.starAdd,"data-detail-star-button":e.reportHubId,children:Z(co,{filled:e.isStarred})}),Z("button",{type:"button",onClick:()=>R(e,!1),className:it,title:Sn(E,h),"aria-label":Sn(E,h),"data-detail-read-button":e.reportHubId,children:Z(uo,{readState:E})}),c&&Z("button",{ref:u,type:"button",onClick:c,"data-detail-edit-button":e.reportHubId,className:it,title:h.edit,"aria-label":h.edit,children:Z(_I,{className:et.edit})}),_&&Z("button",{type:"button",onClick:()=>B(e),"data-detail-delete-button":e.reportHubId,className:it,title:h.deleteReport,"aria-label":h.deleteReport,children:Z(LI,{className:et.delete})})]})]}),Z("dl",{className:"m-0",children:Z(St,{label:h.customer,classNames:Nb,children:w?Z(zi,{className:"w-1/2"}):Z("span",{className:"text-sm",children:Z(ge,{fieldKey:we.field("customerName"),raw:e?.customerName,display:P})})})}),Ir("div",{className:"flex flex-col gap-2",children:[Z(wt,{level:g,className:mr,children:h.content}),Z("div",{className:ZI,children:w?QI.map(A=>Z("div",{className:du,children:Z(zi,{className:A})},A)):I!==null&&I.text.length>0?Z("div",{className:"whitespace-pre-wrap",children:Z(ge,{fieldKey:we.field("content"),raw:e?.content,display:I})}):Z("p",{className:de,children:h.contentEmpty})})]}),Z("dl",{className:"m-0",children:Z(St,{label:h.visitTime,classNames:Nb,children:w?Z(zi,{className:"w-1/3"}):Ir("span",{className:"text-sm",children:[Br(e?.visitTimeFrom)," ",e?.visitTimeFrom&&e?.visitTimeTo?"-":""," ",Br(e?.visitTimeTo)]})})}),e&&Z(ai,{attachments:e.attachments}),e&&Z(ia,{report:e,userId:d,canComment:b,onCommentAdded:l,onSectionRemoved:p,formPlacement:"in-section",sectionClassName:"border-slate-100 border-t border-solid pt-4 dark:border-slate-800"})]})};import{jsx as Xr,jsxs as Bb}from"react/jsx-runtime";var a_="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]",s_={right:"var(--aqdr-overlay-right, 0px)"},i_="absolute inset-0 touch-manipulation bg-slate-900/50 motion-safe:transition-opacity motion-safe:duration-200",l_=C("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",Iu),d_=C("inline-flex h-9 touch-manipulation items-center rounded-full border border-slate-300 border-solid px-[15px] font-medium text-slate-700 text-sm shadow-sm hover:bg-slate-100 dark:border-slate-600 dark:text-slate-200 dark:hover:bg-slate-800",le),c_="flex shrink-0 justify-center empty:hidden",u_=50,Ub=({isMobileLayout:e,selection:t,dailyReportItems:r,onSelectItem:n,rootRef:o})=>{let a=t.id,[s,i]=ji(!1),[l,d]=ji(!1),c=Xt(null),u=Xt(null),m=Xt(null),p=Xt(e),f=Xt(!0),y=pa(r,t),S=$i(()=>{let R=o.current;if(R===null)return;let b=R.ownerDocument.body;m.current={body:b,overflow:b.style.overflow},b.style.overflow="hidden"},[o]),h=$i(()=>{let R=m.current;R!==null&&(R.body.style.overflow=R.overflow,m.current=null)},[]);ba(()=>{if(f.current){f.current=!1,p.current=e;return}let R=!p.current;p.current=e,R&&e&&a!==null?i(!0):!e&&s&&(u.current=a,i(!1),h())},[e,a,s,h]);let D=e&&s&&y!==null;ba(()=>{if(D)d(!0);else{let R=setTimeout(()=>d(!1),300);return()=>clearTimeout(R)}},[D]),ba(()=>{if(e&&s&&a!==null&&!c.current){let R=`overlay-${Date.now()}`;window.history.pushState({...window.history.state,dailyReportOverlay:R},"",window.location.href),c.current=R}else!(e&&s)&&c.current&&(c.current=null);return e&&s?S():h(),h},[e,s,a,S,h]),ba(()=>{let R=()=>{c.current&&(u.current=a,c.current=null,i(!1),n(null))};return window.addEventListener("popstate",R),()=>window.removeEventListener("popstate",R)},[a,n]);let g=$i(()=>{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:g,lastClosedItemIdRef:u,selectedItem:y}},Vb=({isOpen:e,selectedItem:t,onClose:r,autoMarkRead:n=!1,userId:o,onReportDeleted:a})=>{let{labels:s}=q(),{registerNoticeHost:i}=Qs(),l=Xt(null),d=Xt(null),c=Hb(),u=Hb(),[m,p]=ji(kc),f=Xt(!1),y=Xt(e),S=Xt(null),[h]=ji(()=>Pc(e)),{isBlocked:D,requestBlock:g,reset:R}=t_(),b=o_(e,t),{overlayRef:E,overlayStyle:I,attemptClose:x,isSwiping:P}=r_({isOpen:e,onClose:r,isCloseBlocked:$i(()=>D,[D]),skipWhenTextSelected:!0}),O=Xt(x);Fc(()=>{O.current=x,y.current=e,h.set(e)},[x,e,h]),Fc(()=>{let T=l.current;if(T===null)return;if(e){if(f.current)return;T.showModal(),f.current=!0,T.ownerDocument.getElementById(c)?.focus();return}if(!f.current)return;f.current=!1;let L=tt(T);L!==null&&T.contains(L)&&Wo(L)&&L.blur(),T.close()},[e,c]),Fc(()=>{let T=d.current;if(!(!e||T===null))return i(T)},[e,i]),ba(()=>{e||R()},[e,R]);let B=n_(()=>x()),w=T=>{let L=no(T);if(L.key==="Escape"){S.current=T.timeStamp;return}let F=vb(L,T.currentTarget);F!==null&&(T.preventDefault(),F.kind==="wrap"&&F.element.focus())},_=T=>{T.preventDefault();let L=S.current;S.current=null,!(L!==null&&T.timeStamp-L<=u_)&&O.current()},A=T=>{let L=T.currentTarget;L.open||!y.current||(f.current=!1,!O.current()&&(L.showModal(),f.current=!0))};return b?Bb("dialog",{ref:l,"data-daily-report-mobile-overlay":"true","aria-labelledby":`${c} ${u}`,tabIndex:-1,className:C(a_,e&&!P?"pointer-events-auto":"pointer-events-none"),style:s_,inert:!e,onKeyDown:w,onCancel:_,onClose:A,children:[Xr("div",{"aria-hidden":"true","data-daily-report-overlay-backdrop":"",className:C(i_,e?"opacity-100":"opacity-0"),...B}),Xr("div",{ref:E,"data-daily-report-overlay-panel":"",className:C(l_,e?"pointer-events-auto":"pointer-events-none"),style:I,children:Bb("div",{className:"flex h-full w-full flex-col gap-4 p-4",children:[Xr(e_.Provider,{value:{isBlocked:D,requestBlock:g},children:Xr("div",{"data-testid":"daily-report-side-pane","data-report-id":b.reportHubId,"data-displayed-report-id":b.reportHubId,className:"flex min-h-0 flex-1 flex-col gap-4",children:Xr(Ki,{item:b,placement:"overlay",headingId:c,authorId:u,activeTab:m,onActiveTabChange:p,autoMarkRead:n,isActive:e,dwell:h,userId:o,onReportDeleted:a},b.reportHubId)})}),Xr("div",{ref:d,"data-daily-report-notice-slot":"","data-overlay-interactive":"true",className:c_}),Xr("div",{className:"flex justify-start",children:Xr("button",{type:"button","data-overlay-interactive":"true",className:d_,onClick:()=>x(),children:s.close})})]})})]}):null};import{memo as Kb,useContext as $b,useEffect as A_,useMemo as Yi}from"react";import{createContext as p_,createElement as m_,useLayoutEffect as f_,useMemo as y_,useRef as R_,useState as h_}from"react";var b_=6.75,S_=4,g_=1e-6,E_=e=>4*Math.ceil((2*ur+2*Ca+S_+b_*e-g_)/4),Gi=p_(null),D_="data-daily-report-root-font-size-probe",T_={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},w_=e=>{let t=je(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])},Wb=()=>{let e=R_(null),[t,r]=h_(null);f_(()=>{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=E_(w_(o));l!==a&&(a=l,r(l))};s();let i=new ResizeObserver(s);return i.observe(o),()=>i.disconnect()},[]);let n=y_(()=>m_("div",{ref:e,"aria-hidden":!0,[D_]:"",style:T_}),[]);return{rowSlotHeight:t,remProbe:n}};import{jsx as ce,jsxs as bo}from"react/jsx-runtime";var x_=C(Fr,xa,va,Aa),v_=C("relative flex h-full w-full select-none flex-wrap content-start items-center gap-2 overflow-hidden",Lt,_a,su),C_="min-w-24",I_="basis-full space-y-2 text-slate-700 text-sm leading-5 dark:text-slate-200",__={touchAction:"manipulation"},L_=C("flex grow basis-0 cursor-pointer items-center gap-2 text-left outline-none after:absolute after:inset-0 after:rounded-2xl",C_),N_=C("relative z-10",it),O_=C(Je,"shrink-0 whitespace-nowrap bg-slate-100 font-medium text-slate-900 text-xs dark:bg-slate-800 dark:text-slate-100"),M_=C(Je,"min-w-0 max-w-full bg-slate-100 font-semibold text-xs dark:bg-slate-800 dark:text-slate-200"),P_=C(uu,"ml-auto"),k_=C("flex h-full",Lt),F_="flex h-full w-full flex-col justify-between motion-safe:animate-pulse",ho="h-4 rounded bg-slate-200 dark:bg-slate-700",H_=ce("div",{"data-skeleton":!0,..._t,className:k_,children:bo("div",{className:F_,children:[bo("div",{className:"flex flex-wrap items-center gap-2",children:[ce("div",{className:C(ho,"w-24")}),ce("div",{className:C(ho,"w-24")}),ce("div",{className:C(ho,"w-24")})]}),bo("div",{className:"space-y-2",children:[ce("div",{className:C(ho,"w-full")}),ce("div",{className:C(ho,"w-11/12")}),ce("div",{className:C(ho,"w-5/6")})]})]})}),B_=()=>H_,U_="flex h-full items-center justify-center rounded-2xl border border-red-200 border-solid bg-red-50 p-[15px] text-red-800 text-sm dark:border-red-900/50 dark:bg-red-950/40 dark:text-red-300",V_=`flex h-full items-center justify-center rounded-2xl border border-slate-200 border-solid bg-slate-50 p-[15px] ${de} text-sm dark:border-slate-700 dark:bg-slate-900/40`,W_=e=>{e.target===e.currentTarget&&e.preventDefault()},Hc=({reportHubId:e,rowId:t,name:r,children:n})=>{let o=$b(Gi);if(o===null)throw new Error("[daily-report] a List row frame is rendered outside the List view (no measured row slot)");let a=Yi(()=>({height:o}),[o]);return ce(Ai,{reportHubId:e,rowId:t,name:r,className:x_,style:a,onMouseDown:W_,children:n})},jb=e=>$u(e??null,Yp),z_=({report:e,viewerUserId:t,sourceConfig:r,marks:n,marksStore:o,labels:a})=>Ci({state:()=>a.rowState({readState:yr(e,t),isStarred:e.isStarred}),attachmentCount:e.attachments.length,sourceConfig:r,preview:()=>{let s=jb(e.content);return s.length>0?s.map(i=>i.text).join(" "):a.contentEmptyPreview},marks:n,marksStore:o,labels:a}),K_=(e,t)=>`${Ne(e.businessDate)} ${Ke(t.employeeName).text}`,zb=({label:e,dataAttributes:t,onClick:r,children:n})=>{let o=to();return ce("button",{type:"button",title:e,"aria-label":e,...o,...t,onClick:r,className:N_,children:n})},Gb=Kb(({item:e,report:t,viewerUserId:r,rowId:n,sourceConfig:o,describedBy:a,onSelect:s})=>{let{labels:i}=q(),{toggleStar:l,toggleRead:d}=lt(),c=Ie(n,"name"),u=Yi(()=>jb(t.content),[t.content]),m=Yi(()=>Ke(t.employeeName),[t.employeeName]),p=Ne(e.businessDate),f=R=>{R.currentTarget.focus({preventScroll:!0});let b=Fm(R.currentTarget);b!==null&&s(e.reportHubId,b)},y=async()=>{let R=!t.isStarred;try{await l(t.reportHubId,R,t.date)}catch{}},S=yr(t,r),h=async()=>{try{await d(t.reportHubId,In(S,t.contentDigest),t.date)}catch{}},D=t.isStarred?i.starRemove:i.starAdd,g=Sn(S,i);return bo("div",{"data-daily-report-card":!0,..._t,"aria-labelledby":c,style:__,className:v_,children:[ce(io,{id:Ie(n,"position"),whileTotalUnknownOnly:!1}),ce("span",{id:Ie(n,"state"),className:"sr-only",children:i.rowState({readState:S,isStarred:t.isStarred})}),bo("button",{id:c,type:"button",tabIndex:-1,[Nm]:e.reportHubId,...bs,"aria-describedby":a,onClick:f,className:L_,children:[ce("span",{className:O_,children:p})," ",ce("span",{className:M_,children:ce("span",{className:"truncate font-medium text-slate-900 dark:text-slate-100",children:ce(ge,{fieldKey:we.field("employeeName"),raw:t.employeeName,display:m})})})]}),bo("div",{className:P_,children:[ce(Do,{id:Ie(n,"attachments"),count:t.attachments.length,label:i.attachments}),o?ce(lo,{id:Ie(n,"source"),config:o}):null,ce(po,{readState:S,label:i.updatedSinceRead}),ce(zb,{label:D,dataAttributes:{"data-list-star-button":e.reportHubId},onClick:y,children:ce(co,{filled:t.isStarred})}),ce(zb,{label:g,dataAttributes:{"data-list-read-button":e.reportHubId},onClick:h,children:ce(uo,{readState:S})})]}),ce("div",{id:Ie(n,"preview"),className:I_,children:u.length>0?u.map((R,b)=>ce("p",{className:"wrap-break-word line-clamp-1",children:ce(ge,{fieldKey:we.field("content"),raw:t.content,display:R})},b)):ce("p",{children:i.contentEmptyPreview})}),ce(eh,{id:Ie(n,"match")})]})});Gb.displayName="ListReportCard";var Bc=Kb(({item:e,onSelect:t,userId:r})=>{let{labels:n,sourceTypeConfigs:o}=q(),{removeStaleItem:a}=lt(),s=nn(),i=$b(pt),l=Yi(()=>_i(s,i,e.reportHubId,e.businessDate),[s,i,e.reportHubId,e.businessDate]),{bodyReady:d,rendered:c}=Ts(e.reportHubId,l,"fixed"),{report:u,error:m}=c.detail,p=c.marksStore===i?c.marks:null,{report:f,error:y,isLoading:S,isRefetching:h}=l.read().detail,D=Ti(e.reportHubId),g=f===null&&y===null&&!S&&!h;A_(()=>{g&&e.reportHubId>0&&a(e.reportHubId)},[g,e.reportHubId,a]);let R=Ne(e.businessDate),b=Ie(D,"state"),E=(O,B,w)=>ce(Hc,{reportHubId:e.reportHubId,rowId:D,name:{kind:"label",label:R,isBusy:B,describedBy:w},children:O});if(!d&&(m!==null||u===null))return E(wi,!0,so);if(m!==null)return E(ce("div",{..._t,className:U_,children:ce("p",{id:b,children:n.reportSummaryLoadFailed(e.reportHubId)})}),!1,[b]);if(u===null&&(S||f!==null||y!==null))return E(ce(B_,{}),!0,so);if(!u)return E(ce("div",{..._t,className:V_,children:ce("p",{id:b,children:n.reportNotFound})}),!1,[b]);let I=Sr(u.sourceType,o),x=z_({report:u,viewerUserId:r,sourceConfig:I,marks:p,marksStore:i,labels:n}),P=da(D,x);return d?ce(Hc,{reportHubId:e.reportHubId,rowId:D,name:{kind:"parts",describedBy:P},children:ce(Jn,{reportHubId:e.reportHubId,entry:p,children:ce(Gb,{item:e,report:u,viewerUserId:r,rowId:D,sourceConfig:I,describedBy:[Ie(D,"position"),...P].join(" "),onSelect:t})})}):ce(Hc,{reportHubId:e.reportHubId,rowId:D,name:{kind:"parts",describedBy:P},children:ce(Ii,{rowId:D,name:K_(e,u),description:x})})});Bc.displayName="ListReportItem";import{Fragment as lL,jsx as ft,jsxs as Qi}from"react/jsx-runtime";var Xb={pointerDragInputs:ts,inertiaOptions:$n(!1),wheelSpeedMultiplier:qa,enableKeyboardNavigation:!1,resetOnGetItemHeightChange:!0},G_={...Xb,inertiaOptions:$n(!0)},Y_=Object.freeze({value:360,unit:"pixels"}),q_=Object.freeze({value:160,unit:"pixels"}),X_=Object.freeze({value:kb,unit:"pixels"}),Q_=Object.freeze({value:520,unit:"pixels"}),Z_=Object.freeze({visible:!0,thickness:6,length:32,barThickness:2,barLength:16}),J_=C("cursor-col-resize rounded hover:bg-slate-200/60 focus:ring-0 dark:hover:bg-slate-700/60",le),eL=C("relative w-full",Fa,ka,Ha),tL=C(Nt,"relative isolate overflow-hidden"),qb="daily-report-list",rL=()=>!1,nL=()=>{throw new Error("[daily-report] a List activation arrived before the view committed")},oL=e=>{let[t,r]=Zi(!1);return Xi(()=>{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<Gp)},a=new(je(n)).ResizeObserver(o);return a.observe(n),()=>a.disconnect()},[e]),t},Vc=e=>{let t=Qr(null),[r,n]=Zi(null),o=us(t),a=oL(t),{rowSlotHeight:s,remProbe:i}=Wb(),l=jn(r),d=mt(c=>(t.current=c,n(c),()=>{t.current=null,n(null)}),[]);return Qi("div",{ref:d,className:Oa,"data-testid":"daily-report-root",children:[i,o===null||s===null?null:ft(aL,{...e,rootRef:t,viewportHeight:o,rowSlotHeight:s,isContainerNarrow:a,reducedMotion:l})]})},aL=({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[m]=Zi(()=>s?.current??0),p=Qr(null),{labels:f}=q(),y=ls(),[S]=Zi(ws),D=Ab()||c,g=Qr(null),R=e.length,b=t===void 0?R:t,E=Qr(null),I=mt(($,ne,Le)=>o($,Le),[o]),x=mt($=>o($,"settled"),[o]),P=mt($=>{let ne=ke(e,$);return ne===void 0?Qa:ne},[e]),O=Qr(null),B=Ui({itemCount:R,getItem:P}),w=mt($=>{let ne=P($.visibleStartIndex);ne.reportHubId>0&&(S.setLabel(Ne(ne.businessDate)),O.current=ne.reportHubId),B($)},[P,S,B]),_=mt(()=>O.current,[]),A=Uc(()=>({kind:"uniform",rowHeight:d}),[d]),T=Qr(e);Xi(()=>{T.current=e},[e]);let L=Qr(nL),F=mt($=>L.current($),[]),{containerProps:U,handleRangeChange:j,handleScrollAdjust:G,attachVirtualScroll:Q,handleRef:X,scroller:fe,attachScrollContainer:De,contentProps:N,keyboardHelp:V,selection:K,selectionStore:re,activateRow:he,focusViewRow:H,focusAfterRemoval:ee,rowPass:te,rowScope:Ee}=Fi({items:e,selectedId:n,onSelect:I,onActivate:F,containerRef:p,rootRef:i,testId:qb,itemsRef:T,rowSetSize:b,rowSizing:A,arrowAlign:"nearest",isViewRevealPending:rL,onRangeChange:w});xs({items:e,scroller:fe,readTopReportId:_});let{isMobileDetailOpen:Te,setIsMobileDetailOpen:ie,isOverlayMounted:xt,shouldShowOverlay:Qe,handleOverlayClose:vt,lastClosedItemIdRef:ot,selectedItem:ct}=Ub({isMobileLayout:D,selection:K,dailyReportItems:e,onSelectItem:x,rootRef:i});qi(()=>{let $=p.current,ne=()=>{S.setWheelScrollActive(!0),g.current&&clearTimeout(g.current),g.current=window.setTimeout(()=>{S.setWheelScrollActive(!1),g.current=null},Za)};return $?.addEventListener("wheel",ne,{passive:!0}),()=>{$?.removeEventListener("wheel",ne),g.current&&clearTimeout(g.current)}},[S]),qi(()=>{!R&&n!==null&&x(null)},[R,n,x]),qi(()=>{if(Te||ot.current===null)return;let $=ot.current;ot.current=null,H($,"overlay")},[Te,ot,H]),qi(()=>{let $=ke(e,0);$!==void 0&&S.setLabel(Ne($.businessDate))},[e,S]);let at=mt($=>{x($),D&&ie(!0)},[D,x,ie]);Xi(()=>{L.current=at},[at]);let Rt=mt(($,ne)=>{$<=0||(he($,ne),at($))},[he,at]),Kt=mt(()=>d,[d]),$t=Qr(d);Xi(()=>{let $=$t.current;$t.current=d;let ne=X.current;if($===d||ne===null)return;let Le=ne.getScrollPosition();Le>0&&fe.by(Le*d/$-Le)},[X,d,fe]);let Dt=mt($=>ys(e,$),[e]),v=mt(($,ne)=>ft(un.Provider,{value:ne,children:ft(Yo.Provider,{value:$.reportHubId,children:ft(Bc,{item:$,onSelect:Rt,userId:a})})},$.reportHubId),[Rt,a]),M=mt($=>{let ne=De($),Le=te.attach(je($),null);return()=>{Le(),ne()}},[De,te]),W=mt($=>{s&&(s.current=$);let ne=p.current;ne&&(ne.toggleAttribute(Pr,!0),E.current&&clearTimeout(E.current),E.current=setTimeout(()=>{ne.toggleAttribute(Pr,!1),E.current=null},150))},[s]),Y=mt($=>ft(As,{...$,store:S}),[S]),oe=Uc(()=>Qi("div",{ref:M,className:tL,...Ss,...U,children:[V,ft(cn.Provider,{value:b,children:ft(Gi.Provider,{value:d,children:ft(Hi,{ref:Q,rowScope:Ee,items:e,itemCount:R,getItem:P,getItemKey:Dt,getItemHeight:Kt,viewportSize:l,initialScrollOffset:m,overscanCount:Ja,scrollBarOptions:{...es,renderThumbOverlay:Y},behaviorOptions:u?G_:Xb,onRangeChange:j,onScrollAdjust:G,onScroll:W,testId:qb,className:eL,locale:y.locale,labels:y.labels,contentProps:N,children:v})})})]}),[M,Q,Ee,e,U,b,R,P,Dt,Kt,l,d,u,m,Y,j,G,W,V,N,y.locale,y.labels,v]),ue=Uc(()=>Qi($_,{direction:"horizontal",className:"min-h-0 flex-1","data-testid":"daily-report-panel-group",children:[ft(Yb,{id:"daily-report-list-panel",defaultSize:Y_,minSize:q_,maxSize:Q_,contentOverflow:"hidden",className:sL,children:oe}),ft(j_,{id:"daily-report-list-handle",thickness:10,indicator:Z_,className:J_,"aria-label":f.resizeHandle}),ft(Yb,{id:"daily-report-detail-panel",minSize:X_,contentOverflow:"hidden",className:iL,children:ft(Fb,{dailyReportItems:e,selectionStore:re,autoMarkRead:r,userId:a,onReportDeleted:ee})})]}),[oe,f.resizeHandle,e,re,r,a,ee]);return Qi(lL,{children:[ft("div",{className:Ma,children:D?ft("div",{className:Nt,children:oe}):ue}),xt&&ft(Vb,{isOpen:Qe,selectedItem:ct,onClose:vt,autoMarkRead:D&&r,userId:a,onReportDeleted:ee})]})},sL=C("flex min-h-0",ru),iL=C("flex min-h-0 flex-1",Fr);import{useCallback as GN,useEffect as US,useLayoutEffect as YN,useRef as WS,useState as qN}from"react";import SN from"lucide-react/dist/esm/icons/plus.js";import gN from"lucide-react/dist/esm/icons/refresh-cw.js";import EN from"lucide-react/dist/esm/icons/rotate-cw.js";import{useEffect as Zc,useId as kS,useLayoutEffect as FS,useMemo as sl,useRef as go,useState as An}from"react";import{useSearchParams as DN}from"react-router";import{useEffect as dL,useRef as Qb,useState as cL}from"react";var Zb=(e,t,r=250)=>{let n=jn(t),[o,a]=cL(e),s=Qb(e),i=Qb(!0);return dL(()=>{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=je(t),c=0,u=null,m=p=>{u===null&&(u=p);let f=Math.min(1,Math.max(0,(p-u)/r)),y=1-(1-f)**3,S=Math.round(l+(e-l)*y);s.current=S,a(S),f<1&&(c=d.requestAnimationFrame(m))};return c=d.requestAnimationFrame(m),()=>d.cancelAnimationFrame(c)},[e,r,n,t]),n?e:o};import xL from"lucide-react/dist/esm/icons/loader-circle.js";import vL from"lucide-react/dist/esm/icons/x.js";import{useEffect as sS,useId as ga,useLayoutEffect as CL,useRef as tl,useState as iS}from"react";var Sa=Object.freeze({maxValuesPerFacet:16,maxValueLength:200,maxTotalValueLength:300}),Kc=["author","sourceType","customer"],$c=Object.freeze({authors:Object.freeze([]),sourceTypes:Object.freeze([]),customers:Object.freeze([])}),uL=/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,pL=e=>{let t=e.trim();return t.length===0?null:t.replace(uL,"\uFFFD")},Jb=e=>{let t=pL(e);return t===null?"filter-blank-value":t!==e?"filter-value-not-canonical":e.length>Sa.maxValueLength?"filter-value-too-long":null},mL=e=>{if(e.length>Sa.maxValuesPerFacet)return"filter-too-many-values";let t=new Set;for(let r of e){let n=Jb(r);if(n!==null)return n;if(t.has(r))return"filter-duplicate-value";t.add(r)}return null},fL=e=>{let t=0;for(let r of e.authors)t+=r.length;for(let r of e.customers)t+=r.length;return t},Ji=e=>{for(let t of[e.authors,e.sourceTypes,e.customers]){let r=mL(t);if(r!==null)return r}return fL(e)>Sa.maxTotalValueLength?"filters-too-long":null},Wc=e=>[...new Set(e)].sort((t,r)=>t<r?-1:1),el=e=>({authors:Wc(e.authors),sourceTypes:Wc(e.sourceTypes),customers:Wc(e.customers)}),Zr=e=>e.trim().length===0,So=e=>e.authors.length===0&&e.sourceTypes.length===0&&e.customers.length===0,eS=(e,t)=>{let r=el(t);for(let n of r.authors)e.append(Ue.searchAuthor,n);for(let n of r.sourceTypes)e.append(Ue.searchSourceType,n);for(let n of r.customers)e.append(Ue.searchCustomer,n)},zc=e=>{if(!Array.isArray(e))return null;let t=[],r=new Set;for(let n of e){if(typeof n!="string"||Jb(n)!==null||r.has(n))return null;r.add(n),t.push(n)}return t},tS=e=>{if(!br(e))return null;let t=zc(e.sourceTypes),r=zc(e.authors),n=zc(e.customers);return t===null||r===null||n===null?null:{sourceTypes:t,authors:r,customers:n}};import{Component as yL,Suspense as RL,useMemo as rS,useState as hL}from"react";import{jsx as _r,jsxs as aS}from"react/jsx-runtime";var nS="flex min-h-6 items-center text-slate-600 text-xs dark:text-slate-300",bL=C(vu,fr),SL=[{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"}],gL=(e,t)=>t==="author"?e.author:t==="sourceType"?e.searchFilterSourceType:e.customer,EL=(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 Me(`config.search.renderFilterSelect (${e}) onChange values`,"distinct values of the options the control received",t);o.add(a)}return t},jc=class extends yL{constructor(){super(...arguments);this.state={failed:!1}}static getDerivedStateFromError(){return{failed:!0}}render(){return this.state.failed?_r("span",{className:nS,children:this.props.fallback}):this.props.children}},DL=(e,t,r,n)=>{let o=rS(()=>new Set(t.map(s=>s.value)),[t]),a=JSON.stringify(n.filter(s=>!o.has(s)));return rS(()=>{let s=JSON.parse(a);return s.length===0?t:[...t,...s.map(i=>r(e,i))]},[e,t,r,a])};function TL({renderFilterSelect:e,selectProps:t}){return e(t)}var wL=(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 AL({cell:e,labels:t,locale:r,renderFilterSelect:n,candidates:o,optionOf:a,selected:s,onSelect:i}){let l=DL(e.facet,o,a,s),d=gL(t,e.facet);return aS("fieldset",{"data-testid":e.testId,className:xu,children:[_r("legend",{"data-testid":`${e.testId}-caption`,className:bL,children:d}),_r(jc,{fallback:t.searchFilterUnavailable,children:_r(RL,{fallback:_r("span",{className:nS,children:t.searchFiltersLoading}),children:_r(TL,{renderFilterSelect:n,selectProps:{facet:e.facet,label:d,options:l,value:s,onChange:c=>i(e,EL(e.facet,c,l)),locale:r}})})})]})}function oS({id:e,labelledBy:t,labels:r,locale:n,renderFilterSelect:o,facets:a,value:s,onChange:i,clearSignal:l}){let[d,c]=hL(null),u=wL(r,a,d!==null&&d.selection===s&&d.clearSignal===l),m=(f,y)=>{let S={...s,[f.key]:y};if(Ji(S)!==null){c({selection:s,clearSignal:l});return}c(null),i(S)},p=a.status==="ready"?a:null;return aS("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:[p===null?null:_r("div",{className:Au,children:SL.map(f=>_r(AL,{cell:f,labels:r,locale:n,renderFilterSelect:o,candidates:p.options[f.key],optionOf:p.optionOf,selected:s[f.key],onSelect:m},f.facet))}),_r("span",{"data-testid":"daily-report-search-filters-status","aria-live":"polite",className:C("flex min-h-6 items-center text-slate-600 text-xs leading-4 empty:min-h-0 dark:text-slate-300",p===null?null:"mt-2 empty:mt-0",fr),children:u})]})}import{Fragment as WL,jsx as yt,jsxs as Ea}from"react/jsx-runtime";var IL=C("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",pr,le),lS="inline-grid h-6 place-content-center place-items-center rounded-full border border-solid px-[11px] font-semibold text-xs tabular-nums",_L="col-start-1 row-start-1",LL="invisible col-start-1 row-start-1 after:content-[attr(data-search-toggle-reserve)]",rl=Object.freeze({field:C(lS,"bg-white text-slate-800 dark:bg-slate-900 dark:text-slate-100",pr,le),filled:C(lS,"border-blue-800 bg-blue-800 text-white dark:border-blue-300 dark:bg-blue-300 dark:text-slate-950 forced-colors:border-[Highlight] forced-colors:bg-[Highlight] forced-colors:text-[HighlightText]",le)}),NL=Object.freeze({union:C("mr-2 min-w-14",rl.field),intersection:C("mr-2 min-w-14",rl.filled)}),dS=Object.freeze({closed:C("ml-2 min-w-26",rl.field),open:C("ml-2 min-w-26",rl.filled)}),OL=Kc.length*Sa.maxValuesPerFacet,ML="relative min-w-0",PL="pointer-events-none absolute inset-y-0 right-0 grid grid-cols-[repeat(2,--spacing(6))] place-items-center",kL=C("pointer-events-auto col-start-2 row-start-1",it),FL="col-start-1 row-start-1 size-4 text-slate-500 motion-safe:animate-spin dark:text-slate-400",HL="sr-only",BL=C("col-[2/-1] row-start-2 pt-1 pl-[8px] text-xs leading-4",de,fr),UL=e=>e.authors.length+e.sourceTypes.length+e.customers.length,VL=(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):"",cS=({label:e,reserved:t})=>Ea(WL,{children:[yt("span",{className:_L,children:e}),yt("span",{"aria-hidden":"true","data-search-toggle-reserve":t,className:LL})]});function uS({labels:e,debounceMs:t,search:r,shownCount:n,onCommit:o,onCombineChange:a,onRelease:s,clearSignal:i,filters:l}){let[d,c]=iS(""),[u,m]=iS(!1),p=d.length>0||r.committed!==null&&!Zr(r.committed.text),f=ga(),y=ga(),S=tl(null),h=tl(null),D=tl(!1),g=tl(i),R=ga(),b=ga(),E=ga(),I=Xe(()=>({search:r,onCommit:o,onRelease:s}));CL(()=>{I.current={search:r,onCommit:o,onRelease:s}});let x=()=>{h.current!==null&&clearTimeout(h.current),h.current=null},P=(X,fe,De)=>{let N=I.current;Zr(X)?So(De)?N.search.committed!==null&&N.onRelease():N.onCommit("",fe,De):N.onCommit(X,fe,De)},O=X=>{x();let fe=I.current;P(X,fe.search.combine,fe.search.filters)},B=X=>{t===null||D.current||(x(),h.current=setTimeout(()=>O(X),t))},w=()=>{x(),c(""),So(r.filters)?s():(r.committed===null||!Zr(r.committed.text))&&o("",r.combine,r.filters),S.current?.focus()},_=X=>{c(X.target.value),B(X.target.value)},A=X=>{let fe=no(X);if(X.key==="Enter"&&!bn(fe)){X.preventDefault(),O(d);return}xb(fe)&&p&&(X.preventDefault(),w())},T=()=>{x();let X=r.combine==="union"?"intersection":"union";Zr(d)&&So(r.filters)?a(X):P(d,X,r.filters)},L=X=>{u||X.facets.load(),m(!u)},F=X=>{x(),P(d,r.combine,X)};sS(()=>{g.current!==i&&(g.current=i,h.current!==null&&clearTimeout(h.current),h.current=null,c(""))},[i]),sS(()=>()=>{h.current!==null&&clearTimeout(h.current)},[]);let U=r.combine==="intersection",j=VL(e,r,n),G=r.status==="failed"?r.failure:null,Q=l!==null&&u;return Ea("search",{"data-testid":"daily-report-search",className:Tu,children:[Ea("div",{className:wu,children:[yt("button",{type:"button","data-testid":"daily-report-search-combine","aria-describedby":R,title:U?e.searchCombineAndTitle:e.searchCombineOrTitle,onClick:T,className:NL[r.combine],children:yt(cS,{label:U?e.searchCombineAnd:e.searchCombineOr,reserved:U?e.searchCombineOr:e.searchCombineAnd})}),Ea("div",{className:ML,children:[yt("input",{ref:S,type:"text","data-testid":"daily-report-search-input","aria-label":e.searchInputLabel,"aria-describedby":G===null?b:`${E} ${b}`,"aria-invalid":G==="invalid"?!0:void 0,title:e.searchSyntaxHelp,placeholder:e.searchPlaceholder,value:d,onChange:_,onKeyDown:A,onCompositionStart:()=>{D.current=!0,x()},onCompositionEnd:X=>{D.current=!1,B(X.currentTarget.value)},className:IL}),Ea("div",{className:PL,children:[r.status==="searching"?yt(xL,{"aria-hidden":"true","data-testid":"daily-report-search-spinner",className:FL}):null,p?yt("button",{type:"button","data-testid":"daily-report-search-clear","aria-label":e.searchClear,title:e.searchClear,onClick:w,className:kL,children:yt(vL,{"aria-hidden":"true",className:"size-4"})}):null]})]}),l===null?null:yt("button",{type:"button",id:f,"data-testid":"daily-report-search-filters-toggle","aria-expanded":u,"aria-controls":Q?y:void 0,onClick:()=>L(l),className:u?dS.open:dS.closed,children:yt(cS,{label:e.searchFiltersToggle(UL(r.filters)),reserved:e.searchFiltersToggle(OL)})}),yt("span",{id:R,hidden:!0,children:U?e.searchCombineAndTitle:e.searchCombineOrTitle}),yt("span",{id:b,hidden:!0,children:e.searchSyntaxHelp}),yt("span",{"data-testid":"daily-report-search-status","aria-live":"polite",className:HL,children:j}),G===null?null:yt("p",{id:E,"data-testid":"daily-report-search-failure",className:BL,children:e.searchFailed(G)})]}),Q?yt(oS,{id:y,labelledBy:f,labels:e,locale:l.locale,renderFilterSelect:l.renderFilterSelect,facets:l.facets.state,value:r.filters,onChange:F,clearSignal:i}):null]})}var nl=new WeakMap,mS=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}},ol=(e,t)=>e.businessDate===t.businessDate&&e.sourceType===t.sourceType,zL=(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},KL=(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),!ol(i,s))return null;continue}if(!ol(s,pS(e,s.reportHubId))||r(s.reportHubId))return null;a-=1}for(let s of o.values()){if(!ol(s,pS(e,s.reportHubId))||r(s.reportHubId))return null;a+=1}return a},pS=(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},fS=(e,t,r,n)=>{if(e===null)return{items:t,hasAnswerOnlyItems:!1};let o=u=>e.ids.has(u),a=nl.get(e);if(a!==void 0&&a.isReportRemoved===r&&a.removedVersion===n){if(a.stream===t)return a.list;if(a.stream instanceof Tt&&t instanceof Tt){let u=KL(e,vm(a.stream,t,e.answeredByChunk,o),r,a.answerOnlyCount);if(u!==null){let m=a.list.hasAnswerOnlyItems===u>0?a.list:{items:a.list.items,hasAnswerOnlyItems:u>0};return nl.set(e,{...a,stream:t,list:m,answerOnlyCount:u}),m}}}let s=new Map;for(let u of xm(t,e.answeredByChunk,o))s.set(u.reportHubId,u);let i=[],l=0;for(let u of e.items){let m=s.get(u.reportHubId);m!==void 0?i.push(ol(m,u)?u:m):r(u.reportHubId)||(i.push(u),l+=1)}let d=l>0;if(a!==void 0&&a.list.hasAnswerOnlyItems===d&&zL(a.items,i))return nl.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 nl.set(e,{stream:t,isReportRemoved:r,removedVersion:n,items:i,list:c,answerOnlyCount:l}),c};var yS=(e,t,r)=>{let n=ke(t,0);if(n===void 0)return null;let o=rr(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=ke(e,o+s);if(i!==void 0&&a.has(i.reportHubId))return i.reportHubId;let l=ke(e,o-s);if(l!==void 0&&a.has(l.reportHubId))return l.reportHubId}}return n.reportHubId},Gc=(e,t,r,n)=>{if(r===null){let o=ke(t,0);return n&&o!==void 0?o.reportHubId:null}return rr(t,r)!==-1?r:yS(e,t,r)},RS=(e,t,r)=>e.selected===null?r!==null&&rr(t,r)!==-1?r:null:rr(t,e.selected)!==-1?e.selected:yS(e.items,t,e.selected);import{useEffect as bS,useLayoutEffect as QL,useMemo as SS,useRef as gS,useSyncExternalStore as ZL}from"react";var $L=1e3,jL=5e3,GL={combine:"union",committed:null,filters:$c,generation:0,status:"idle",failure:null,items:null,answered:null},YL=e=>e===400?"invalid":e===404?"unavailable":e===429?"busy":"failed",qL=(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))),Yc=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),XL=(e,t)=>{let r=el(e),n=el(t);return Yc(r.authors,n.authors)&&Yc(r.sourceTypes,n.sourceTypes)&&Yc(r.customers,n.customers)},hS=e=>{let t=GL,r=new Set,n=null,o=null,a=null,s=null,i=null,l=null,d=b=>{t=b;for(let E of r)E()},c=()=>{s!==null&&clearTimeout(s),i!==null&&clearTimeout(i),s=null,i=null},u=(b,E)=>{let I=t.answered;return I!==null&&I.query.text===b.text&&I.query.combine===b.combine&&qL(I.words,E)?I:{query:{text:b.text,combine:b.combine},words:E}},m=b=>{let E=new URLSearchParams({[Ue.searchQuery]:b.text,[Ue.searchCombine]:b.combine});return eS(E,b.filters),`${e.apiBasePath}/${$e.search}?${E.toString()}`},p=(b,E,I,x)=>{if(!I){d({...t,status:"failed",failure:b});return}l!==x&&(l=x,i=setTimeout(()=>{i=null,y(E,!0)},jL))},f=async(b,E,I)=>{let x=new AbortController;n={controller:x};let P={Accept:"application/json"};I&&a!==null&&a.generation===E&&(P["If-None-Match"]=a.value);try{let O=await e.fetch(m(b),{headers:P,cache:"no-store",signal:x.signal});if(x.signal.aborted||E!==t.generation)return;if(O.status===304){t.status!=="done"&&d({...t,status:"done",failure:null});return}if(O.status===401||O.status===403){e.onSessionExpired(),p("failed",b,!1,E);return}if(!O.ok){p(YL(O.status),b,I,E);return}let B=Ip(await O.json(),!Zr(b.text));if(x.signal.aborted||E!==t.generation)return;if(B===null){p("failed",b,I,E);return}let w=O.headers.get("ETag");a=w===null?null:{generation:E,value:w},l=null,d({...t,status:"done",failure:null,items:B.items,answered:B.words.length===0?null:u(b,B.words)})}catch{if(x.signal.aborted||E!==t.generation)return;p("failed",b,I,E)}finally{if(n!==null&&n.controller===x&&(n=null),n===null&&o!==null){let O=o;o=null,y(O.query,O.background)}}},y=(b,E)=>{if(n!==null){o={query:b,background:(o===null||o.background)&&E};return}f(b,t.generation,E)};return{getSnapshot:()=>t,subscribe:b=>(r.add(b),()=>{r.delete(b)}),commit:(b,E,I)=>{if(Zr(b)&&So(I))throw new Error("[daily-report] search: a blank text can be committed only with a filter");let x=Ji(I);if(x!==null)throw new Error(`[daily-report] search: the filter selection cannot be sent (${x})`);c();let P=t.committed,O=P!==null&&P.text===b&&P.combine===E&&XL(P.filters,I),B={text:b,combine:E,filters:I};d({...t,combine:E,committed:B,filters:I,generation:O?t.generation:t.generation+1,status:"searching",failure:null}),y(B,!1)},setCombine:b=>{b!==t.combine&&d({...t,combine:b})},release:()=>{c(),n?.controller.abort(),n=null,o=null,t.committed!==null&&d({combine:t.combine,committed:null,filters:$c,generation:t.generation+1,status:"idle",failure:null,items:null,answered:null})},invalidate:()=>{let b=t.committed;b!==null&&(s!==null&&clearTimeout(s),s=setTimeout(()=>{s=null,y(b,!0)},$L))},dispose:()=>{c(),n?.controller.abort(),n=null,o=null}}};var ES=({apiBasePath:e,invalidation:t,onSessionExpired:r})=>{let n=gS(r);QL(()=>{n.current=r});let o=SS(()=>hS({apiBasePath:e,onSessionExpired:()=>n.current(),fetch:(i,l)=>fetch(i,l)}),[e]);bS(()=>()=>o.dispose(),[o]);let a=gS(t);bS(()=>{a.current!==t&&(a.current=t,o.invalidate())},[t,o]);let s=ZL(o.subscribe,o.getSnapshot,o.getSnapshot);return SS(()=>({...s,commit:o.commit,setCombine:o.setCombine,release:o.release}),[s,o])};import{useCallback as DS,useEffect as JL,useLayoutEffect as eN,useMemo as qc,useRef as tN,useState as rN}from"react";var TS=Object.freeze({status:"idle"}),nN=Object.freeze({status:"loading"}),oN=Object.freeze({sourceTypes:[],authors:[],customers:[]}),aN=e=>e===404?"unavailable":e===429?"busy":"failed",Xc=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),sN=(e,t)=>Xc(e.sourceTypes,t.sourceTypes)&&Xc(e.authors,t.authors)&&Xc(e.customers,t.customers),iN=(e,t)=>"facets"in t?e.status!=="ready"||!sN(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},wS=(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})),lN=(e,t)=>e.map(r=>AS(r,t));function AS(e,t){let r=Sr(e,t);return{value:e,label:r===void 0?e:r.label}}var xS=({apiBasePath:e,locale:t,sourceTypeConfigs:r,onSessionExpired:n})=>{let[o,a]=rN({apiBasePath:e,load:TS}),s=o.apiBasePath===e?o.load:TS,i=tN(null),l=Xe(()=>({apiBasePath:e,onSessionExpired:n}));eN(()=>{l.current={apiBasePath:e,onSessionExpired:n}}),JL(()=>()=>{i.current?.abort(),i.current=null},[e]);let d=DS(()=>{if(i.current!==null)return;let f=new AbortController;i.current=f;let y=l.current.apiBasePath;a(h=>h.apiBasePath===y&&h.load.status==="ready"?h:{apiBasePath:y,load:nN}),(async()=>{let h;try{let D=await fetch(`${y}/${$e.searchFacets}`,{headers:{Accept:"application/json"},cache:"no-cache",signal:f.signal});if(f.signal.aborted)return;if(D.status===401||D.status===403)l.current.onSessionExpired(),h={failure:"failed"};else if(!D.ok)h={failure:aN(D.status)};else{let g=tS(await D.json());if(f.signal.aborted)return;h=g===null?{failure:"failed"}:{facets:g}}}catch{if(f.signal.aborted)return;h={failure:"failed"}}i.current=null,a(D=>({apiBasePath:y,load:iN(D.load,h)}))})()},[l]),c=s.status==="ready"?s.facets:oN,u=qc(()=>{let f=new Intl.Collator(t);return{authors:wS(c.authors,f),sourceTypes:lN(c.sourceTypes,r),customers:wS(c.customers,f)}},[c,t,r]),m=DS((f,y)=>f==="sourceType"?AS(y,r):{value:y,label:y},[r]),p=qc(()=>s.status==="ready"?{status:"ready",options:u,optionOf:m,reloadFailure:s.reloadFailure}:s,[s,u,m]);return qc(()=>({state:p,load:d}),[p,d])};import{useEffect as LS,useLayoutEffect as yN,useMemo as RN,useRef as hN}from"react";var dN=4294967295,vS=e=>typeof e=="number"&&Number.isInteger(e)&&e>=0&&e<=dN,cN=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)||!Mo(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},uN=e=>{if(!(br(e)&&vS(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=cN(e.ranges);return t===null?null:{fingerprint:e.fingerprint,ranges:t}},pN=e=>{if(!br(e))return null;let t={};for(let[r,n]of Object.entries(e)){if(!Gn(r))return null;let o=uN(n);if(o===null)return null;t[r]=o}return t},CS=(e,t)=>{if(!(br(e)&&vS(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(!br(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=pN(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 IS=2*Oo*hr.maxDetailIds,mN=240,fN=6e4,_S=({apiBasePath:e,fetch:t,answered:r,onSessionExpired:n})=>{let o=r.words.length,a=r.query.combine==="union"&&o>=2,s=mf(r.words),i=new Map,l=new Map,d=0,c=new Map,u=new Set,m=0,p=0,f=null,y=new Set,S=!1,h=A=>{let T=i.get(A);if(T!==void 0)return T;let L={entry:void 0,appliedSequence:0,settledEpoch:null,retriedEpoch:null,revalidated:new Set};return i.set(A,L),l.has(A)||(d+=1),L},D=A=>{for(let T of A){let L=i.get(T);L!==void 0&&(L.settledEpoch=null)}},g=()=>{if(!(d<=IS))for(let A of[...i.keys()]){if(d<=IS)return;l.has(A)||(i.delete(A),c.delete(A),d-=1)}},R=A=>{let T=l.get(A);if(T!==void 0)for(let L of[...T])L()},b=A=>{let T=new URLSearchParams({[Ue.searchQuery]:r.query.text,[Ue.searchCombine]:r.query.combine,[Ue.reportIds]:A.join(",")});return`${e}/${$e.searchMarks}?${T.toString()}`},E=(A,T)=>{for(let L of A){let F=h(L.reportHubId);F.appliedSequence>T||(F.appliedSequence=T,F.entry=L,i.delete(L.reportHubId),i.set(L.reportHubId,F),R(L.reportHubId))}g()},I=(A,T)=>{let L=[];for(let j of A){let G=i.get(j);G!==void 0&&G.retriedEpoch!==m&&L.push({id:j,record:G})}if(L.length===0)return;let U=setTimeout(()=>{u.delete(U);for(let{id:j,record:G}of L){let Q=c.get(j);Q===void 0||Q.timer!==U||(c.delete(j),l.has(j)?(G.retriedEpoch=m,_.enqueue(j)):G.settledEpoch=null)}},T);u.add(U);for(let{id:j,record:G}of L)c.set(j,{timer:U,record:G})},x=A=>{for(let T of A)l.has(T)?_.enqueue(T):D([T])},P=async(A,T)=>{p+=1;let L=p,F=m;for(let Q of A)h(Q).settledEpoch=m,c.delete(Q);g();let U;try{U=await t(b(A),{headers:{Accept:"application/json"},cache:"no-store",signal:T})}catch{return}if(U.status===401||U.status===403){n();return}if(U.status===429){let Q=Ga(U,fN);Q!==null&&F===m&&I(A,Q);return}if(!U.ok)return;let j;try{j=await U.json()}catch{return}let G=CS(j,{requestedIds:A,setCount:o,expectsMatchedSets:a});T.aborted||G===null||G.wordsDigest!==s||(E(G.reports,L),F===m&&x(G.deferred))},O=()=>{S=!0,queueMicrotask(()=>{S=!1}),f=setTimeout(B,mN)},B=()=>{if(f=null,y.size!==0){for(let A of y)_.enqueue(A);y.clear(),O()}},w=A=>{if(f!==null&&!S){y.add(A);return}_.enqueue(A),f===null&&O()},_=ja({hasListener:A=>l.has(A),batchSize:hr.maxDetailIds,inFlightBound:Oo,send:P});return{indicator:Object.freeze({setCount:o,showsMatchedSets:a}),subscribe:(A,T)=>{let L=l.get(A);L===void 0&&(L=new Set,l.set(A,L),i.has(A)&&(d-=1)),L.add(T);let F=i.get(A),U=F!==void 0&&F.settledEpoch===m;return L.size===1&&!U&&!_.isWanted(A)&&!y.has(A)&&w(A),()=>{let j=l.get(A);j===void 0||!j.delete(T)||j.size>0||(l.delete(A),i.has(A)&&(d+=1),y.delete(A),D(_.release(A)),g())}},read:A=>{let T=i.get(A);return T===void 0?void 0:T.entry},revalidate:(A,T,L)=>{let F=h(A),U=`${T}\0${L}`;F.revalidated.has(U)||(F.revalidated.add(U),y.delete(A),_.enqueue(A))},advanceEpoch:()=>{m+=1;for(let A of u)clearTimeout(A);u.clear(),c.clear(),y.clear();for(let A of l.keys())_.enqueue(A)},dispose:()=>{for(let T of u)clearTimeout(T);u.clear();let A=[...c.keys(),...y];c.clear(),y.clear(),f!==null&&clearTimeout(f),f=null,D([..._.dispose(),...A])}}};var NS=({apiBasePath:e,answered:t,shownRevision:r,onSessionExpired:n})=>{let o=hN(n);yN(()=>{o.current=n});let a=RN(()=>t===null?null:_S({apiBasePath:e,answered:t,onSessionExpired:()=>o.current(),fetch:(i,l)=>fetch(i,l)}),[e,t]);LS(()=>{if(a!==null)return()=>a.dispose()},[a]);let s=Xe(()=>({store:a,shownRevision:r}));return LS(()=>{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 bN}from"react";var OS=e=>{let t=e,r=e,n=new Set;return{get:()=>t,getSettled:()=>r,set:(o,a)=>{if(t=o,!(a==="held"||o===r)){r=o;for(let s of[...n])s()}},subscribe:o=>(n.add(o),()=>{n.delete(o)})}},Qc=e=>bN(e.subscribe,e.getSettled,e.getSettled);import*as Da from"@radix-ui/react-switch";import*as PS from"react";import{jsx as MS}from"react/jsx-runtime";var al=PS.forwardRef(({className:e,...t},r)=>MS(Da.Root,{className:C(`peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-transparent disabled:cursor-not-allowed disabled:opacity-50 ${yu} ${hu} ${le}`,e),...t,ref:r,children:MS(Da.Thumb,{className:`pointer-events-none block rounded-full shadow-lg data-[state=unchecked]:translate-x-0 motion-safe:transition-[translate] ${Ru} ${bu}`})}));al.displayName=Da.Root.displayName;import{Fragment as jN,jsx as me,jsxs as Qt}from"react/jsx-runtime";var TN="list",wN=e=>{if(e==="list"||e==="tree"||e==="detailList")return e;throw new Error(`[daily-report] unknown view tab: ${e}`)},AN=()=>({topItem:null,anchorReportHubId:null,measuredHeights:new Map}),xN=C(gu,Nu,"flex flex-wrap items-center gap-2"),vN=C("@container/views",Nt),CN=C("mt-0",Nt),IN=C("flex flex-1 items-center justify-center",vn),HS="relative h-4 w-4 p-0 after:absolute after:-inset-1",_N="flex items-center gap-2",LN=C(HS,"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"),NN=C(HS,"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"),ON=`cursor-pointer select-none ${de} text-xs`,MN=`hidden h-6 items-center gap-1 rounded-lg border border-amber-300/70 border-solid bg-amber-50/60 px-[3px] ${de} sm:flex dark:border-amber-700/50 dark:bg-amber-950/40`,PN="select-none font-bold font-mono text-amber-900 text-xs uppercase dark:text-amber-200",kN="flex h-6 items-center gap-1 rounded-lg bg-amber-800 px-2 font-medium text-white text-xs shadow-xs hover:bg-amber-900 dark:bg-amber-800 dark:hover:bg-amber-900",BS=(e,t)=>{let r=Vi(t);return[e.totalCount(r),e.searchHitCount(r)]},FN=({count:e})=>{let{labels:t}=q(),[r,n]=An(null),o=Zb(e,r);return me(ca,{ref:n,text:t.totalCount(o),widestTexts:BS(t,Math.max(e,o))})},HN=({totalCount:e,hitCount:t})=>{let{labels:r}=q();return t!==null?me(ca,{text:r.searchHitCount(t),widestTexts:BS(r,e===Wr?t:Math.max(e,t))}):e===Wr?me("span",{children:r.totalCountLoading}):me(FN,{count:e})},BN=({checked:e,onCheckedChange:t})=>{let{labels:r}=q(),n=kS(),o=kS();return Qt("div",{className:"flex items-center gap-1 pl-1",children:[me(al,{id:n,checked:e,onCheckedChange:t,title:r.autoReadTitle,"aria-describedby":o}),me(la,{htmlFor:n,className:ON,children:r.autoRead}),me("span",{id:o,hidden:!0,children:r.autoReadTitle})]})},UN=({selectionStore:e,dailyReportItems:t,rowSetSize:r,autoMarkRead:n,userId:o,scrollOffsetRef:a})=>{let s=Qc(e);return me(Vc,{dailyReportItems:t,rowSetSize:r,autoMarkRead:n,selectedReportHubId:s,onSelectItem:e.set,userId:o,scrollOffsetRef:a})},VN=({selectionStore:e,dailyReportItems:t,rowSetSize:r,userId:n,scrollRestoreRef:o})=>{let a=Qc(e);return me(Ac,{dailyReportItems:t,rowSetSize:r,userId:n,selectedItemId:a,onSelectItem:e.set,scrollRestoreRef:o})},WN=({tabItems:e,actions:t,searchRow:r})=>{let[n,o]=An(TN),{labels:a}=q();return Qt(ma,{value:n,onValueChange:s=>o(wN(s)),className:vN,children:[Qt("div",{className:C(Du,Ou,Mu[n]),children:[Qt("div",{className:xN,children:[me(fa,{"aria-label":a.viewTabList,className:"flex flex-wrap gap-1",...cy,children:e.map(({value:s,label:i})=>me(ya,{value:s,children:i},s))}),t]}),r]}),e.map(({value:s,content:i})=>me(Ro,{value:s,tabStop:!1,className:CN,children:i},s))]})},zN=Object.freeze({items:null,generation:0,revision:0,change:"none",scrollRequest:null,restoreOnRelease:!0}),KN=(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}},$N=({answer:e,hasAnswerOnlyItems:t})=>{let{phase:r,isRevalidating:n}=Qn(),o=r==="complete"&&!n,a=go(null);return Zc(()=>{!(o&&t)||a.current===e||(a.current=e,Jo())},[o,t,e]),null},Jc=({userId:e})=>{let[t,r]=An(!1),{labels:n,renderHeader:o,showDevControls:a,apiBasePath:s,onSessionExpired:i,search:l,locale:d,sourceTypeConfigs:c}=q(),{toggleSse:u,createReport:m,refetchData:p,clearCacheAndRefetch:f}=lt(),{isSseEnabled:y,items:S,searchInvalidation:h,isReportRemoved:D,removedVersion:g}=ri(),[R]=DN(),b=ES({apiBasePath:s,invalidation:h,onSessionExpired:i}),E=xS({apiBasePath:s,locale:d,sourceTypeConfigs:c,onSessionExpired:i}),I=l===null||b.committed===null?null:b.items,[x,P]=An(zN);x.items!==I&&P(KN(x,I,b.generation));let O=sl(()=>I===null?null:mS(I),[I]),B=sl(()=>fS(O,S,D,g),[O,S,D,g]),w=B.items,_=Vm(S.length,Vf()),A=I===null?_:w.length,[T,L]=An(0),[F]=An(()=>({preSearchTopReportId:null})),U=sl(()=>({request:x.scrollRequest,slot:F}),[x.scrollRequest,F]),j=NS({apiBasePath:s,answered:I===null?null:b.answered,shownRevision:x.revision,onSessionExpired:i}),G=go(0),Q=Xe(AN),[X]=An(()=>OS(Ql(w))),fe=go(null),De=go(w),N=go(x.revision);FS(()=>{if(N.current===x.revision)return;N.current=x.revision;let te=De.current,Ee=X.get(),Te=Ee;x.change==="enter"?(fe.current={selected:Ee,items:te},Te=Gc(te,w,Ee,!0)):x.change==="start"||x.change==="update"?Te=Gc(te,w,Ee,x.change==="start"):x.change==="restore"&&fe.current!==null&&(Te=RS(fe.current,w,Ee)),(x.change==="restore"||x.change==="release")&&(fe.current=null),Te!==Ee&&X.set(Te,"settled")},[x,w,X]),FS(()=>{De.current=w},[w]);let V=go(!1);Zc(()=>{let te=Ql(w);!V.current&&te!==null&&(V.current=!0,X.get()===null&&X.set(te,"settled"))},[w,X]);let K=async()=>{await p()},re=async()=>{await f()},he=async()=>{let Ee=R.get("businessDate")||qu();b.committed!==null&&(P(ie=>({...ie,restoreOnRelease:!1})),L(ie=>ie+1),b.release());let Te=await m(Ee);X.set(Te,"settled")};Zc(()=>{localStorage.getItem("daily-report-auto-read")==="true"&&r(!0)},[]);let H=te=>{r(te),localStorage.setItem("daily-report-auto-read",String(te))},ee=sl(()=>[{value:"list",label:n.tabList,content:me(UN,{selectionStore:X,dailyReportItems:w,rowSetSize:A,autoMarkRead:t,userId:e,scrollOffsetRef:G})},{value:"tree",label:n.tabTree,content:me("div",{className:IN,children:n.treeComingSoon})},{value:"detailList",label:n.tabDetailList,content:me(VN,{selectionStore:X,dailyReportItems:w,rowSetSize:A,userId:e,scrollRestoreRef:Q})}],[w,A,t,e,n,X,Q]);return Qt(jN,{children:[o({title:n.title,annotation:Qt("div",{className:"flex flex-wrap items-center gap-2 leading-1",children:[me(ua,{}),me(HN,{totalCount:_,hitCount:I===null?null:A}),me("span",{children:n.debounce(Mn)})]})}),me("div",{className:La,children:Qt("div",{className:Na,children:[I!==null&&me($N,{answer:I,hasAnswerOnlyItems:B.hasAnswerOnlyItems}),me(kn.Provider,{value:I===null?"date":"ids",children:me(pt.Provider,{value:j,children:me(ld.Provider,{value:U,children:me(WN,{tabItems:ee,searchRow:l===null?null:me(uS,{labels:n,debounceMs:l.debounceMs,search:b,shownCount:I===null?null:A,onCommit:b.commit,onCombineChange:b.setCombine,onRelease:b.release,clearSignal:T,filters:l.renderFilterSelect===null?null:{renderFilterSelect:l.renderFilterSelect,locale:d,facets:E}}),actions:Qt("div",{className:"ml-auto flex flex-wrap items-center gap-2 px-1",children:[Qt(xr,{size:"sm",onClick:he,className:kN,title:n.createReportTitle,children:[me(SN,{className:"h-3 w-3"}),me("span",{children:n.createReport})]}),a&&Qt("div",{className:MN,title:n.devControls,"data-testid":"dev-controls-toolbox",children:[me("span",{className:PN,children:"dev"}),me(al,{"aria-label":n.devSseToggle,title:n.devSseToggle,checked:y,onCheckedChange:u}),Qt("div",{className:_N,"data-testid":"dev-icon-buttons",children:[me(xr,{variant:"ghost",size:"icon",onClick:K,className:LN,title:n.devReload,"data-testid":"dev-reload-btn",children:me(EN,{className:"size-3"})}),me(xr,{variant:"ghost",size:"icon",onClick:re,className:NN,title:n.devClearCache,"data-testid":"dev-clear-cache-btn",children:me(gN,{className:"size-3"})})]})]}),me(BN,{checked:t,onCheckedChange:H})]})})})})})]})})]})};import{Fragment as VS,jsx as We,jsxs as il}from"react/jsx-runtime";var XN=C(Nt,Fr),QN=C("flex min-h-0 flex-1 flex-col items-center justify-center gap-4",de,Lt,le),ZN=C("font-bold",Eo),JN=C("font-medium",Eo),eO=C("rounded bg-slate-100 px-4 py-2 text-slate-700 text-sm hover:bg-slate-200 dark:bg-slate-800 dark:text-slate-200 dark:hover:bg-slate-700",le),tO=({isFailed:e,handOver:t})=>{let{labels:r,renderHeader:n}=q(),o=WS(null),a=GN(i=>(o.current=i,t.take()&&on(i)&&Ar([i]),()=>{o.current=null,i.contains(tt(i))&&t.request()}),[t]),s=()=>{Ar([o.current]),Us()};return il(VS,{children:[n({title:r.title,annotation:e?We("span",{className:ZN,children:r.loadErrorBadge}):il("div",{className:"flex flex-wrap items-center gap-2 leading-none",children:[We(ua,{}),We("span",{children:r.totalCountLoading}),We("span",{children:r.debounce(Mn)})]})}),We("div",{className:La,children:We("div",{className:Na,children:We("div",{className:XN,children:We("div",{ref:a,tabIndex:-1,...py,"data-testid":"daily-report-status-panel","data-phase":e?"failed":"loading",className:C(QN,e&&"border-red-200 dark:border-red-900"),children:e?il(VS,{children:[We("p",{className:JN,children:r.loadError}),We("button",{type:"button","data-testid":"daily-report-load-error-retry",onClick:s,className:eO,children:r.reload})]}):We("p",{children:r.loadingIds})})})})})]})},rO=()=>{let{labels:e}=q(),t=Bf();return We(Wi,{announcement:_c(t,e),testId:"daily-report-stream-announcer"})},nO=({user:e,userId:t})=>{let{apiBasePath:r,onSessionExpired:n}=q(),o=Qn(),[a]=qN(Qh),s=WS(n);YN(()=>{s.current=n}),US(()=>{Qo({apiBasePath:r,userKey:t??null})},[r,t]),US(()=>{o.phase==="auth-required"&&s.current()},[o.phase]);let i=o.hasItems||o.phase==="complete";return il(Nd,{children:[We(rO,{}),We(Ic.Provider,{value:!1,children:We(Ec.Provider,{value:a,children:We(kd,{user:e,userId:t,children:i?We(Jc,{userId:t}):We(tO,{isFailed:o.phase==="failed",handOver:a})},t??"anonymous")})})]})},oO=({config:e,...t})=>We(Cl,{config:e,children:We(nO,{...t})});import{createShouldRevalidate as aO}from"@aiquants/route-revalidation";var sO=ff.filter(e=>e!=="clearCache"),iO=aO({skipIntents:{field:bt.intent,values:sO},hashChange:"default",unchangedUrl:"skip"}),lO=e=>{let t=async r=>{gd();let n=await r.serverLoader(),o=n.userId;return Sd({apiBasePath:e?.apiBasePath,userKey:typeof o=="string"?o:null}),n};return t.hydrate=!0,t};export{Bp as DAILY_REPORT_LABEL_CATALOGS,Tl as DAILY_REPORT_LABEL_KEYS,wa as DAILY_REPORT_LATTICE_BLOCK_QUANTUM_CLASS_NAME,SE as DAILY_REPORT_LAYOUT_LATTICE_PX,Kc as DAILY_REPORT_SEARCH_FILTER_FACETS,kd as DailyReportActionProvider,Do as DailyReportAttachmentIndicator,Cl as DailyReportConfigProvider,Ac as DailyReportDetailList,Nd as DailyReportErrorProvider,ua as DailyReportIdsStreamStatus,gc as DailyReportInstrumentationContext,Vc as DailyReportList,oO as DailyReportPage,Jc as DailyReportResolvedContent,Sd as bootstrapDailyReportIdsStreamSession,lO as createDailyReportClientLoader,iO as dailyReportShouldRevalidate,ko as defaultDailyReportClientConfig,Qo as ensureDailyReportIdsStreamSession,YD as foldDailyReportSourceTypeToken,gd as primeDailyReportIdsStreamSession,Of as readDailyReportIdsStreamRows,xl as resolveDailyReportLabels,Sr as resolveSourceTypeConfig,Vs as resyncDailyReportIdsStream,Tw as useDailyReportActionContext,nc as useDailyReportComments,q as useDailyReportConfig,Bl as useDailyReportDetail,PT as useDailyReportIdsStream,Ul as useDailyReportPrefetch,vd as useDailyReportSseConnection};
|