@aiquants/daily-report 0.48.0 → 0.50.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 +84 -0
- package/README.md +104 -39
- package/dist/client.d.mts +11 -3
- package/dist/client.d.ts +11 -3
- package/dist/client.js +5 -5
- package/dist/client.mjs +5 -5
- package/dist/server.js +1 -1
- package/dist/server.mjs +1 -1
- package/dist/styles/daily-report.standalone.css +1 -1
- package/package.json +3 -3
package/dist/client.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import QS from"lucide-react/dist/esm/icons/paperclip.js";var GS="data-daily-report-row-surface",_t={[GS]:"",role:"gridcell"},eu="data-daily-report-active",Pr="data-daily-report-scrolling",ur=8,YS=4,tu=ur-YS;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`,qS="supports-[margin-left:round(down,1px,1px)]:ml-[max(0px,round(down,calc((100%-72rem)/2),var(--aqdr-lattice-block)))]",XS="bg-slate-50 dark:bg-slate-950",Nt="flex min-h-0 flex-1 flex-col",La=`${Nt} ${XS}`,Na=`${Nt} mx-auto w-full max-w-6xl ${wa} px-[var(--aqdr-lattice-block)] pt-[var(--aqdr-lattice-block)] ${qS}`,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 eg}from"react/jsx-runtime";var ZS=2,JS=`inline-flex h-6 shrink-0 items-center gap-1 ${de}`,ul=(e,t)=>`${e}: ${t}`,pl=e=>e>=ZS?String(e):null,Do=({id:e,count:t,label:r})=>{if(t<=0)return null;let n=ul(r,t),o=pl(t);return eg("span",{id:e,className:JS,title:n,role:"img","aria-label":n,"data-testid":"daily-report-attachment-indicator","data-attachment-count":t,children:[Fu(QS,{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}},tg=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},rg=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=tg(e),n=r.map(s=>s.shown).join("")===t?r:rg(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="<[^>]+>",ng=new RegExp(String.raw`(${Vu}|${Wu}|\r?\n)|${zu}`,"gi"),Ku=new RegExp(Vu,"gi"),og=new RegExp(Wu,"gi"),ag=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(ng))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
|
-
`),
|
|
3
|
-
`),
|
|
4
|
-
`)):tn;var sg=Object.freeze({text:"-",runs:Object.freeze([])}),Ke=e=>{let t=Hr(e);return t.text===""?sg: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 xE,useCallback as vE,useContext as rm,useEffect as CE,useState as IE}from"react";import{z as Ol}from"zod/v3";var ig=/^(\d{4})([-/])(\d{2})\2(\d{2})$/;var Ua=e=>e<10?`0${e}`:`${e}`,lg=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=ig.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?lg(e):Yu(e);import{z as dg}from"zod/v3";var Mt=e=>Number.isSafeInteger(e)&&e>0,qe=dg.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)}),cg=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),ug=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(!cg(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:ug(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)),pg=(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"}),mg=(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),fg=op.map(e=>`'${e}'`).join(" | "),yg=(e,t,r)=>typeof e!="string"?Pt(t,r,{code:"invalid_type",expected:fg,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}),Rg=_n({id:ep,fileName:ep,fileType:Ju,fileSize:pg,createdAt:Ju,state:yg,hasThumbnail:Io}),hg=_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:mg,isDraft:Io,labels:Co(vo(ip)),postedComments:Co(vo(lp)),attachments:Co(vo(Rg))}),_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(hg,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",bg=/^\d{1,15}-\d{1,15}$/,Wa=e=>bg.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}),LO=Lo(cp),NO=Lo(up),OO=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()},Sg=hp.extend(za),gg=bp.extend(za),Eg=Sp.extend(za),Ln={reportHubId:qe,report:Rr,clientTempId:No},gl={...za,actorRawUserId:qe},El={viewerIsActor:be.boolean()},Dg=be.object({type:be.literal("report-create"),...Ln,...El}),Tg=be.object({type:be.literal("report-update"),...Ln,...El}),wg=be.object({type:be.literal("report-publish"),...Ln,...El}),Ag=be.object({type:be.literal("report-create"),...Ln,...gl}),xg=be.object({type:be.literal("report-update"),...Ln,...gl}),vg=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,Dg,Tg,wg,gp]),MO=be.discriminatedUnion("type",[Rp,Sg,gg,Eg,Ag,xg,vg,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"},Cg=e=>typeof e=="number"&&Mt(e),Ig=e=>{if(typeof e!="object"||e===null)return!1;let{businessDate:t,reportHubId:r}=e;return(t===null||typeof t=="string")&&typeof r=="number"},_g=4,Lg=e=>{let t=_g;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}}},Ng=/^[0-9a-f]{1,16}$/,Og=e=>Mt(e.reportHubId)&&(e.businessDate===null||wo(e.businessDate)),Mg=e=>typeof e=="string"&&Ng.test(e),Pg=Object.freeze({kind:"absent"}),kg=Object.freeze({kind:"value",value:null}),Fg=e=>e===void 0?Pg:e===null?kg: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||Ig(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=Lg(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(!(Cg(b)&&p(b))||typeof E!="number"||!Number.isSafeInteger(E)||E<0||E>=o.length||f>0&&!Hg(y,S,D,b))return null;y=D,S=b}}return f!==t.length?null:{rows:e,isLast:s,resumeCursor:i!==null&&Og(i)?i:null,total:typeof l=="number"&&Number.isSafeInteger(l)&&l>=0?l:null,snapshot:Mg(d)?d:null,provisional:c===!0,restarted:u===!0,streamAnchor:Fg(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,Hg=(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)}}},WO=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 Bg=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(Bg)}).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}),Ug=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},Vg=2*(1+Ug),Wg=e=>{if(!Array.isArray(e)||e.length===0||e.length>Vg)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},zg=(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=Wg(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=zg(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 Kg=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 ${Kg(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 $g=/^[1-9][0-9]*$/,jg=/^(?:0|[1-9][0-9]*)$/,Lp=e=>{if(e===null||!$g.test(e))return null;let t=Number(e);return Mt(t)?t:null},On=e=>{if(e===null||!jg.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null};var Gg=2**31-1,Ga=(e,t)=>{let r=ut("holdDelayMsOf: maxDelayMs",t,0,Gg),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 iE}from"@aiquants/virtualscroll";import{createContext as lE,useMemo as dE}from"react";import{useContext as Yg}from"react";var Gt=(e,t,r)=>{let n=Yg(e);if(n===null)throw new Error(`[daily-report] ${t} must be used within a ${r}`);return n};import{resolveVirtualScrollLabels as qg,resolveVirtualScrollLocale as Xg,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","resizeHandleHint","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"}),Qg=Object.freeze({en:new Intl.NumberFormat(Pp.en),ja:new Intl.NumberFormat(Pp.ja)}),Ce=(e,t)=>Qg[e].format(t),Zg=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"}),Jg=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"}),eE=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"}),tE=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"}),rE=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"}),nE=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"}),oE={unread:"Unread",read:"Read",updatedSinceRead:"Read, updated since"},aE={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",resizeHandleHint:"Drag or use the arrow keys to resize, or click to step through the preset widths",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 ${Jg[e]}. Please try again later.`,noticeRepeated:e=>`(${Ce("en",e)} times)`,rowState:({readState:e,isStarred:t})=>`${oE[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=>tE[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=>nE[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",resizeHandleHint:"\u30C9\u30E9\u30C3\u30B0\u304B\u77E2\u5370\u30AD\u30FC\u3067\u5E45\u3092\u5909\u3048\u3001\u30AF\u30EA\u30C3\u30AF\u3067\u6C7A\u307E\u3063\u305F\u5E45\u3092\u9806\u306B\u5207\u308A\u66FF\u3048\u308B",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=>`${Zg[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})=>`${aE[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=>eE[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=>rE[e]})}),Bp=Object.freeze({en:Object.freeze({...Mp.en,...wl.en}),ja:Object.freeze({...Mp.ja,...wl.ja})}),sE=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=Xg(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={...qg(r,sE(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 EE}from"react/jsx-runtime";var cE=e=>({Internal:{label:e.sourceInternal,badgeClassName:"bg-emerald-100 text-emerald-900 dark:bg-emerald-900/30 dark:text-emerald-400"}}),uE=`${de} text-xs`,pE=({title:e,annotation:t})=>EE("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:uE,children:t}):null]}),ko=Object.freeze({apiBasePath:"/daily_report/api",ssePath:"/sse/daily_report/updates",renderHeader:pE,showDevControls:!1,headingLevel:3}),Vp=["apiBasePath","ssePath","locale","labels","sourceTypeConfigs","renderHeader","showDevControls","headingLevel","onError","onSessionExpired","search"];var mE=e=>{for(let t of Object.keys(e))if(!Vp.includes(t))throw Po("config key",t,Vp)},Wp=[2,3,4,5],fE=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"],yE=Object.freeze({min:300,max:5e3}),RE=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},hE=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},bE=e=>{if(e===void 0)return null;if(!RE(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}=yE;return{debounceMs:t===void 0?null:ut("config.search.debounceMs",t,r,n),renderFilterSelect:hE(e.renderFilterSelect)}},SE=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},gE=e=>{mE(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=iE(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?cE(n):SE(e.sourceTypeConfigs),renderHeader:e.renderHeader===void 0?o.renderHeader:e.renderHeader,showDevControls:e.showDevControls===void 0?o.showDevControls:e.showDevControls,headingLevel:fE(e.headingLevel),onError:e.onError,onSessionExpired:e.onSessionExpired,search:bE(e.search)}},Kp=lE(null),Cl=({config:e,children:t})=>{let r=dE(()=>gE(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 TE}from"@aiquants/virtualscroll";var DE=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,wE=8,Gp=460,Yp=3,qp=440,Xp=8,AE={enabled:!0,renderVisual:TE,maxSpeedCurve:{exponentialSteepness:3,exponentialScale:8},maxSpeedMultiplier:8,className:"[[data-daily-report-keyboard-focus]_&]:invisible"},es={width:wE,tapScrollCircleOptions:AE,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(),BE()},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)},_E=Ol.object({report:Rr}),LE=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),NE=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},OE=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,_E,$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,ME=1e4,PE=(e,t)=>{let r=rs.get(t),n=Date.now();if(r&&n-r.at<ME)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,LE,$e.businessDate)).then(({reports:l})=>se.cacheMany(l,t,a)).finally(()=>se.pendingLists.delete(t));return se.pendingLists.set(t,i),i},kE=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 PE(e,r);return s===null?null:s.find(i=>i.reportHubId===t)??null},FE=5e3,Ml=new Map,HE=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=NE(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,FE),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}},BE=()=>{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"),UE=(e,t,r)=>new Promise((n,o)=>{let a=Ml.get(e);a===void 0&&(a=HE(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=xE("date"),VE=Object.freeze({report:null,error:null,isLoading:!1,isRefetching:!1}),WE=Object.freeze({report:null,error:new Error("Invalid ID"),isLoading:!1,isRefetching:!1}),zE=Object.freeze({report:null,error:null,isLoading:!0,isRefetching:!1}),em=new WeakMap,KE=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 VE;if(t===0)return WE;let{report:n}=ns(e,t,r);return n===null?zE:KE(n)},$E=(e,t)=>Object.keys(t).some(n=>e[n]!==t[n])?Object.freeze({...e,...t}):e,Nl=()=>{},jE=({apiBasePath:e,detailSource:t,cache:r})=>{let n=new Map,o=(u,m)=>{let p=$E(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 UE(e,u,S.signal)):p!==null?R=await kE(e,u,p):R=await OE(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)}}}},GE={date:new Map,ids:new Map},YE=(e,t)=>{let r=GE[t],n=r.get(e);if(n!==void 0)return n;let o=jE({apiBasePath:e,detailSource:t,cache:se});return r.set(e,o),o},nn=()=>{let{apiBasePath:e}=q(),t=rm(kn);return YE(e,t)},Bl=(e,t)=>{let r=nn(),[n,o]=IE(()=>({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},Ul=()=>{let{apiBasePath:e}=q(),t=rm(kn);return vE(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 qE}from"@aiquants/virtualscroll";import{useRef as XE}from"react";var ls=()=>{let{locale:e,labels:t}=q(),r=Up(t),n=XE(null),o=n.current;return o!==null&&qE.every(a=>o[a]===r[a])?{locale:e,labels:o}:(n.current=r,{locale:e,labels:r})};import{useState as QE}from"react";var Xe=e=>{let[t]=QE(()=>({current:e()}));return t};import{useLayoutEffect as iD,useState as lD}from"react";import{flushSync as dD}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},ZE=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"?ZE(e):e.checkVisibility(pm),JE=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},eD=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},tD=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)},rD=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 JE(e)}},nD=/^[\t\n\f\r ]*[+-]?\d/,oD=e=>{let t=e.getAttribute("tabindex");return t!==null&&nD.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=aD(e,t);return t.set(e,n),n},aD=(e,t)=>{if(!Wo(e))return"none";let r=oD(e),n=r===null&&rD(e),o=r===null&&!n&&tD(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"?eD(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,sD=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 sD(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]=lD(null);return iD(()=>{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?dD(()=>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)),cD=Float64Array.BYTES_PER_ELEMENT+Uint32Array.BYTES_PER_ELEMENT+Uint8Array.BYTES_PER_ELEMENT,Fn=e=>{let t=new ArrayBuffer(e*cD),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))},uD=16,Yt=class{constructor(t=uD){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,pD=Ko,mD=pD/2,Hn=new Map,Gl=new Map,Yl=(e,t,r)=>e.businessDate===t&&e.sourceType===r,fD=(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>=mD&&(Gl=Hn,Hn=new Map),i},Em=(e,t,r)=>{let n=Er(t),o=an(r),a=fD(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:[]},yD=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)},RD=(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=yD(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 RD(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,hD=(e,t)=>e instanceof Tt?Cm(e,t)?sn(e,t):void 0:ke(e,t)?.reportHubId,bD=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<=bD;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=hD(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",SD='button, a[href], input, textarea, select, label, [role="button"], [contenteditable]:not([contenteditable="false"])',gD=/^[1-9]\d*$/,Mm=e=>{if(e===null||!gD.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(SD);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 ED}from"react-dom";var DD=()=>({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=DD(),n=[],o=null,a=()=>{try{ED(()=>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 TD,useRef as $m}from"react";import{flushSync as jm}from"react-dom";var wD=1/2,AD=32,xD=8,zn=16,vD=5,CD=3,ID=1.5,nd=2,Gm=1e3/60,_D=1,LD=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"}),ND=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(AD,xD)}),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])},OD=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},MD=(e,t)=>e.zone!==t.zone?e.zone<t.zone:e.second!==t.second?e.second<t.second:e.third<t.third,PD=(e,t)=>{t.zone=e.zone,t.second=e.second,t.third=e.third,t.paneReach=e.paneReach},Go=e=>(e<Gm-_D?Gm:e)-nd,kD=e=>(Math.round(Go(e)/e)-1+ID)*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&&!MD(O,B))&&(he=H,PD(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(vD,CD),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<LD)){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=wD*pe;if(Ze>cr){w(ND);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>=kD(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(),OD(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 jS=r(jt);return oe(),()=>{jS(),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]=TD(()=>({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 FD}from"clsx";import{twMerge as HD}from"tailwind-merge";function C(...e){return HD(FD(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 BD,useSyncExternalStore as UD}from"react";var lf="(prefers-reduced-motion: reduce)",df=e=>je(e).matchMedia(lf).matches?"instant":"smooth",VD=Object.freeze({...Il,startVelocityThreshold:Number.POSITIVE_INFINITY}),$n=e=>e?VD:Il,WD=()=>!1,zD=()=>{},jn=e=>{let t=BD(()=>e===null?null:je(e).matchMedia(lf),[e]),r=sf(o=>t===null?zD:(t.addEventListener("change",o),()=>t.removeEventListener("change",o)),[t]),n=sf(()=>t===null?!1:t.matches,[t]);return UD(r,n,WD)};import{useSyncExternalStore as KD}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,$D=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"),jD=(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}=KD(o.subscribe,o.getState,o.getState);return a.trim()&&(r||n||s)?id("div",{className:"pointer-events-none absolute flex items-center",style:jD(e,t),children:id("div",{className:$D,children:id("span",{className:"whitespace-nowrap font-semibold text-slate-800 dark:text-slate-100",children:a.trim()})})}):null};import{createContext as GD,useContext as YD,useLayoutEffect as qD,useRef as XD}from"react";var ld=GD(null),xs=({items:e,scroller:t,readTopReportId:r})=>{let n=YD(ld),o=n===null?null:n.request,a=XD(o===null?0:o.seq);qD(()=>{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 yC,useEffect as zh,useLayoutEffect as Kh,useMemo as mo,useRef as bc}from"react";var vs="Internal",QD=e=>e.trim().toLowerCase();var ZD=e=>e===vs,pn=(e,t)=>e!=null&&typeof t=="string"&&t!==""&&e.userId===t&&ZD(e.sourceType);var Cs="legacy-",JD=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:JD(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 eT=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}`}),tT=e=>e.startsWith(Cs)?On(e.slice(Cs.length))!==null:Lp(e)!==null,Gn=e=>{if(eT.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&&tT(t[1])&&(t[2]==="author"||t[2]==="content");default:return!1}},rT=16777619,nT=2166136261,oT=(e,t,r,n)=>{let o=e;for(let a=r;a<n;a++)o^=t.charCodeAt(a),o=Math.imul(o,rT);return o>>>0},dd=e=>oT(nT,e,0,e.length),aT=String.fromCodePoint(3),sT=String.fromCodePoint(2),iT=String.fromCodePoint(1),mf=e=>dd(e.map(t=>t.map(r=>r.map(n=>`${n.tier}${n.text}`).join(aT)).join(sT)).join(iT));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}},lT=()=>{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,dT=()=>(cd===null&&(cd=lT()),cd),yf=(e,t)=>{let r=dT()[e].safeParse(t);return r.success?{result:r.data}:{mismatch:$a(r.error)}};import{useState as mT}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 cT=e=>e.appended instanceof er&&e.replaced.previous instanceof er&&e.replaced.next instanceof er&&e.removed instanceof er,pd=e=>{if(cT(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,uT=8192,pT=Float64Array.BYTES_PER_ELEMENT+2*Uint32Array.BYTES_PER_ELEMENT+3*Uint8Array.BYTES_PER_ELEMENT,ud=e=>{let t=new ArrayBuffer(e*pT),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<=uT){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 fT={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},yT=(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},RT=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(RT(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}},hT=(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:yT(s,S)}),held:u===null?e.held:u,hidden:p===null?e.hidden:p,revision:y,settled:r}},gf=new WeakMap,bT=(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=hT(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]=mT(()=>Df(fT,e,t,r));return(n.revision!==e.itemsRevision||n.settled!==t)&&o(a=>bT(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 NT,useLayoutEffect as OT,useState as MT,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,ST=2,gT=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>=gT&&this.holes>this.positions.size&&this.compact()}markSeen(t){let r=this.positions.find(t);r!==-1&&(this.flags[r]|=ST)}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 ET=e=>({debug:e,info:e,warn:e,error:e}),DT=50,TT=32,Cf=0,wT=()=>(Cf+=1,Cf),AT=1e3,xT=3e4,vT=6,CT=3e4,If=Symbol("read-stall"),IT=Object.freeze({reading:()=>{},stalled:()=>!1,stop:()=>{}}),_T="/daily_report/api",LT=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??_T,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:ET(t.warn),1,"IdsStream").warn,this.readStallTimeoutMs=t.readStallTimeoutMs??CT,this.publishCoalesceMs=t.publishCoalesceMs??DT,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>=vT){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(AT*2**(this.consecutiveFailures-1),xT))}}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 LT(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 IT;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=wT(),r=this.pendingItemsChange.build(this.state.itemsRevision,t);return this.pendingItemsChange.reset(),{loadedCount:this.rows.size,itemsRevision:t,itemsChanges:[...this.state.itemsChanges.slice(1-TT),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 PT=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)},kT(),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>PT&&e.client.refresh()},kT=()=>{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,FT=()=>Fs,HT=()=>Zo(ea,Hs,FT),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),BT=Pf(),Qn=()=>Zo(ea,Pf,()=>BT),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),UT=kf(),Ff=()=>Zo(ea,kf,()=>UT),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),VT=Hf(),Bf=()=>Zo(ea,Hf,()=>VT),Uf=Ws(({phase:e,totalCount:t})=>({phase:e,totalCount:t}),(e,t)=>e.phase===t.phase&&e.totalCount===t.totalCount),WT=Uf(),Vf=()=>Zo(ea,Uf,()=>WT),Wf=e=>e.phase==="complete"&&!e.isRevalidating,Lf=e=>`${e.itemsRevision}:${Wf(e)}`,zf=()=>{let[,e]=MT(0),t=Hs(),r=Lf(t);return OT(()=>{let n=r,o=()=>{let a=Lf(Hs());a!==n&&(n=a,NT(()=>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 zT=3e4,Kf=e=>{let t=zs(zT,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"),KT=1e3,Ad=class extends Error{constructor(t,r){super(`[daily-report] ${t} answered HTTP ${r}`),this.name="DailyReportActionHttpError",this.status=r}},VP=Object.freeze(["delete","deleteComment"]),$T=e=>e.intent==="create"?null:e.reportHubId,jT=(e,t)=>{let r=e;if(r.intent==="clearCache"||r.clientTempId!==t.clientTempId)return!1;let n=$T(t);return n===null||r.reportHubId===n},GT="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(!jT(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:GT,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,KT),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"),YT=3e4,Jf=e=>zs(YT,e,(t,r)=>{r.unsubscribe(),Zf.warn(`[SSE Queue] Expired: reportHubId=${t}, dropped=${r.messages.length} messages`)}),qT=(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")&&qT(R.reportHubId,R.date),f();break}}}};import{memo as rw,useLayoutEffect as nw}from"react";import{systemSseRuntime as Ks}from"@aiquants/sse";import{createBrowserEventSource as XT}from"@aiquants/sse/client";import{useReopeningEventSource as QT}from"@aiquants/sse/react";import{useEffect as xd,useRef as $s,useState as ZT}from"react";var yn=kt(void 0,1,"SseConnection"),JT=Object.freeze({kind:"resyncing"}),ty={initialDelayMs:2e3,maxDelayMs:3e4,multiplier:2},ew=1,ry=hl*3,tw=ry+hl,vd=({isSseEnabled:e,onMessage:t})=>{let{ssePath:r,onSessionExpired:n}=q(),{streamAnchor:o,phase:a,isRevalidating:s,error:i}=Qn(),[l,d]=ZT({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}=QT(e&&l.anchored?`${r}#${l.generation}`:null,{resolveUrl:({lastEventId:h})=>h===null?r:`${r}?${yp}=${encodeURIComponent(h)}`,initialLastEventId:p.current,withCredentials:!1,createEventSource:XT,runtime:Ks,backoff:ty,healthyOpenMs:tw,nativeRetryLimit:ew,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?JT:S};var ny=Object.freeze({kind:"idle"}),Cd=rw(({isSseEnabled:e,onMessage:t,onStatus:r})=>{let n=vd({isSseEnabled:e,onMessage:t});return nw(()=>{r(n)},[n,r]),null});Cd.displayName="DailyReportSseConnectionHost";import{createContext as ow,useCallback as aw,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=ow(null),zr=()=>Gt(Id,"useDailyReportDraftStore","DailyReportActionProvider"),sy=(e,t)=>aw(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 Rw}from"@aiquants/swipe-overlay";import{createContext as hw,Fragment as bw,useCallback as Xs,useId as Ld,useLayoutEffect as Ey,useMemo as Sw,useRef as Rn,useState as hy}from"react";import{createPortal as by}from"react-dom";import{createContext as lw,useContext as dw}from"react";var sw=new Set(["Alt","AltGraph","CapsLock","Control","Fn","FnLock","Hyper","Meta","NumLock","ScrollLock","Shift","Super","Symbol","SymbolLock"]),Gs={capture:!0},Ys=new WeakMap,iw=e=>{let t=o=>{sw.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?iw(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 cw=Object.freeze({visibilityProperty:!0,opacityProperty:!0}),uw=Object.freeze({visibilityProperty:!0}),dy="data-daily-report-view-tabs",cy={[dy]:""},uy="data-daily-report-status-panel",py={[uy]:""},pw=e=>{for(let t of e.getClientRects())if(t.width>0&&t.height>0)return!0;return!1},my=e=>e.isConnected&&Wo(e)&&pw(e)&&e.checkVisibility(e.hasAttribute(hs)?uw:cw),Ar=e=>{for(let t of e)if(!(t===null||!my(t))&&(t.focus({preventScroll:!0}),tt(t)===t))return t;return null},mw=e=>e.querySelector(`[${dy}] [role="tab"][aria-selected="true"]`),_d=lw(null),fy=()=>{let e=dw(_d);if(e===null)throw new Error("[daily-report] useFocusViewRow is called outside a view's rows");return e},fw=(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)=>fw(e,t,n)?Ar([yy(t,r,ta(e.ownerDocument))]):null,yw=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,yw(t),ta(t.ownerDocument)),mw(e),e.querySelector(`[${uy}]`)]};import{jsx as or,jsxs as Ty}from"react/jsx-runtime";var gw=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),Ew="flex shrink-0 justify-center p-[8px]",Dw=C("flex size-6 shrink-0 items-center justify-center rounded font-bold text-white hover:bg-red-900",au),Tw="data-daily-report-notice-alert",ww={[Tw]:""},Dy=hw(null),Qs=()=>Gt(Dy,"useDailyReportErrorSurface","DailyReportErrorProvider"),Sy=Object.freeze([]),gy=({notice:e})=>or("div",{role:"alert",...ww,className:"sr-only",children:e===null?null:or("span",{children:e.info.message},e.occurrence)}),Aw=({notice:e,closeLabel:t,repeatedLabel:r,onDismiss:n})=>{let o=Rn(null),a=Rn(null),s=Rn(null),i=Rw(),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:gw,onFocus:p,onBlur:f,children:[or("span",{id:d,className:"min-w-0 font-medium",children:or(bw,{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:Dw,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=Sw(()=>({notifyError:u,registerNoticeHost:m}),[u,m]),y=a.at(-1),S=n===null?null:or(Aw,{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:Ew,children:S})]})};import{jsx as Md,jsxs as vw}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),xw=()=>{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:vw(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 Hw,useLayoutEffect as Bw,useMemo as Ud}from"react";import{createContext as My,createElement as Nw,useCallback as Oy,useContext as Bd,useDeferredValue as Ow,useLayoutEffect as Mw,useMemo as Hd,useSyncExternalStore as Pw}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"}),Cw=e=>Object.hasOwn(_y,e),Iw=e=>{let t=e.indexOf(":"),r=t===-1?e:e.slice(0,t);if(!(Gn(e)&&Cw(r)))throw new Error(`[daily-report] A search mark leaf carries an unknown field key: ${e}`);return _y[r]},_w=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,Lw=(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=_w,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();Lw(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:Iw(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},kw=()=>{},Fw=()=>kw,ky=e=>{let t=Bd(pt),r=Oy(i=>t===null?Fw():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=Pw(r,n,n),a=Hd(()=>t===null||o===null?null:{store:t,entry:o},[t,o]),s=Ow(a,a===null?void 0:null);return s!==null&&s.store===t?s.entry:null},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 Mw(()=>{o!==null&&o.settle(t)},[o,t]),Nw(Py.Provider,{value:a},r)};import{jsx as Hy}from"react/jsx-runtime";var Uw="data-daily-report-search-mark",Vw=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 Vw[e]},Ww=Object.freeze({words:0,readings:0}),zw=e=>{if(e===null)return Ww;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}},Kw=(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",{[Uw]: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},$w=({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(()=>zw(f),[f]);return Bw(()=>{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:Kw(r.text,f,s)},ge=({fieldKey:e,raw:t,display:r})=>Hw(pt)===null?r.text:Hy($w,{fieldKey:e,raw:t,display:r});import{jsx as Gw}from"react/jsx-runtime";var jw={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=jw[e];return Gw(r,{...t})};import{memo as vR,useId as GA,useMemo as YA,useRef as CR}from"react";var By=Object.freeze({tile:Object.freeze({maxWidth:480,maxHeight:320})});var Wd="tile",oa=By[Wd],Yw=2,na=16,Uy=5,Vy=oa.maxWidth/Yw,qw=Uy*(Vy+na)-na,Wy=e=>{let t=Math.min(Uy,1+Math.floor((e+na)/(Vy+na)));return Math.floor((Math.min(e,qw)-(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"}),Xw="--aqdr-lattice-block",Ky=Object.freeze({marginBlockEnd:`calc(round(up, ${Vd}, var(${Xw})) - ${Vd})`});var Qw="download",Zw="thumbnail",Jw="1",eo=(e,t,r)=>{let n=`${e}/attachment/${encodeURIComponent(t)}`;switch(r.kind){case"inline":return n;case"download":return`${n}?${new URLSearchParams({[Qw]:Jw})}`;case"thumbnail":return`${n}?${new URLSearchParams({[Zw]:r.variant})}`}};import{createContext as jy,useCallback as eA,useContext as Gy,useMemo as tA,useState as rA}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 tA(()=>t.scopeOf(e),[t,e])},nA=(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]=rA(()=>t===null||t.isActive()?void 0:-1),n=eA(o=>{let a=e===void 0?null:nA(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 dA,useContext as cA,useLayoutEffect as uA,useMemo as aR,useState as pA}from"react";import{flushSync as mA}from"react-dom";import{flushSync as oA}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,aA=(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=aA(e,t);return n===null||n.handedTrackWidth===null||r<=n.handedTrackWidth?null:{track:n,trackWidth:n.handedTrackWidth}},sA=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&&oA(()=>{for(let[r,n]of t)r.handedTrackWidth=n,r.onTrackWidth(n)})},iA=(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(()=>sA(e)))},lA=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=>iA(n,o)),observations:new Map,fittedNames:new Map,frame:null};return $d.set(e,n),n},tR=(e,t)=>{let r=lA(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",fA=Yd.codePointAt(0),sR=Object.freeze({text:Yd,runs:Object.freeze([])}),ni="data-attachment-file-name",yA=Ve("block min-w-0"),RA="block w-fit whitespace-nowrap",hA=new Set([" ","\xA0","\u1361","\u{10100}","\u{10101}","\u{1039F}","\u{1091F}"," ",`
|
|
5
|
-
`,"\f","\r"]),bA=/^-?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?px$/,qd=({fileName:e})=>sr("span",{className:Jt,children:e}),SA=/"([^"]*)"|'([^']*)'|([^\s,"'][^,"']*)/g,gA=/^U\+([\dA-F?]{1,6})(?:-([\dA-F]{1,6}))?$/i,Xd=dA(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)},EA=(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}`,DA=(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+=hA.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(SA)){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:bA.test(e)?Math.max(Number.parseFloat(e),0):null,TA=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:DA(uR(e.ownerDocument),o,r,n)}},wA=(e,t)=>e===t||e!==null&&t!==null&&e.width===t.width&&e.measure===t.measure,AA=e=>{let t=new Set([fA]);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},xA=(e,t)=>{for(let r of e.split(",")){let n=gA.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=TA(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=CA(n)),e.applyFit({width:t,measure:r.measure})},vA=(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=AA(o.container);s.some(l=>xA(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&&mA(()=>{for(let[o,a]of n)yR(o,a)})},CA=e=>{let t=e.document.fonts,r=n=>{vA(e,n.fontfaces)};return t.addEventListener("loadingdone",r),()=>{t.removeEventListener("loadingdone",r)}},IA=(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]=pA(null);return uA(()=>{let o=e.current;return IA(o,t,s=>{n(i=>wA(i,s)?i:s)})},[e,t]),r},hR=({containerRef:e,children:t})=>{let r=RR(e,Wy);return sr(Xd,{value:r,children:t})},_A=e=>e,bR=({containerRef:e,children:t})=>{let r=RR(e,_A);return sr(Xd,{value:r,children:t})},aa=({fileName:e,attachmentIndex:t,className:r,testId:n})=>{let o=cA(Xd),a=aR(()=>o===null?null:EA(e,o.width,o.measure),[e,o]),{stem:s,extension:i}=aR(()=>cR(Ot(e)),[e]),l=we.attachment(t);return dR("span",{className:yA(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:RA,children:sr(ge,{fieldKey:l,raw:e,display:a})}),sr(qd,{fileName:e})]})};import PA from"lucide-react/dist/esm/icons/image-off.js";import{memo as kA,useCallback as Jd,useEffect as FA,useLayoutEffect as HA,useRef as ec,useState as BA}from"react";var oi=Object.freeze({queueWaitMs:3e4,readMs:3e4,renderMs:1e4,transferMarginMs:5e3}),SR=oi.queueWaitMs+oi.readMs+oi.renderMs+oi.transferMarginMs;var LA=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,LA),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 NA=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=NA(2);var OA=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=OA(1024);var Zd=new WeakMap,MA=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=MA(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 jA}from"react/jsx-runtime";var UA={idle:"pending",granted:"pending",loaded:"loaded",failed:"unavailable"},VA="data-thumbnail-active",WA="data-daily-report-attachment-preview",wR={[WA]:""},zA=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"}},KA=()=>({limiter:ER,now:()=>performance.now(),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),observe:DR,tuning:zA}),$A=(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(VA,o)}}),AR=kA(({thumbnailUrl:e,unavailableLabel:t})=>{let r=ec(null),n=ec(null),o=ec(null),[a,s]=BA(()=>TR(e));a.url!==e&&s(TR(e)),HA(()=>{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]),FA(()=>{let c=r.current,u=gR(c,e,Qd,KA(),$A(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":UA[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"?jA("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(PA,{"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`,qA="relative truncate",XA=Ve(qA),QA=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),ZA="text-blue-800 text-sm dark:text-blue-300 [@media(hover:hover)]:[[data-daily-report-attachment-preview]:hover_&]:underline",JA="text-blue-800 text-sm hover:underline dark:text-blue-300",ex=`flex h-4 min-w-0 items-center gap-2 ${de} text-xs tabular-nums`,tx=`${de} text-xs tabular-nums`,rx=C("flex min-w-0 flex-col gap-2 rounded-lg",le),nx=C("flex min-w-0 rounded-sm",le),ox=C("m-0",en),ax=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]}`},sx=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:XA(r),children:[ax(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:QA,"data-testid":"daily-report-attachment-download",children:[t," ",Be(qd,{fileName:r})]}),ix=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:rx,"data-testid":"daily-report-attachment-link",...wR,children:[o,Be(aa,{fileName:e.fileName,attachmentIndex:t,className:ZA})]}),ir("div",{className:ex,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})]})]})}),lx=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:nx,"data-testid":"daily-report-attachment-link",children:Be(aa,{fileName:e.fileName,attachmentIndex:t,className:JA})}),Be(_R,{attachment:e,labels:n,className:tx})]})})}),!o&&Be(LR,{downloadUrl:eo(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})}),dx=({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(ix,{attachment:a,attachmentIndex:s,apiBasePath:r,labels:n},a.id))})})})},ai=({attachments:e})=>{let{apiBasePath:t,labels:r,headingLevel:n}=q(),o=GA(),{tiles:a,rows:s}=YA(()=>sx(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:ox,children:r.attachments}),ir("div",{className:"flex flex-col gap-4",children:[a.length>0&&Be(dx,{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(lx,{attachment:i,attachmentIndex:l,apiBasePath:t,labels:r},i.id))})]})]})};import{useOverlayEscapeStack as Cx}from"@aiquants/swipe-overlay";import{memo as HR,useCallback as di,useEffect as MR,useId as BR,useLayoutEffect as Ix,useRef as sc,useState as _x}from"react";import{useCallback as NR,useMemo as cx,useState as ux}from"react";var px=()=>[],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]=ux(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(px);return{uiComments:cx(()=>{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 mx,jsx as fx}from"react/jsx-runtime";var rt=({render:e,elementRef:t})=>{let r=to(t);return fx(mx,{children:e(r)})};import yx from"@heroicons/react/24/outline/TrashIcon.js";import{memo as Rx,useId as hx,useMemo as OR,useRef as bx,useState as Sx}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",gx=C(it,cu),Ex=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")),Dx=(e,t,r)=>(e?4:0)+(t?2:0)+(r?1:0),Tx=Ve("font-semibold text-xs"),wx=`${de} text-xs`,Ax="relative flex h-5 items-center",xx=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),vx=(e,t,r)=>t===e||typeof e=="number"&&e<0&&r?.get(e)===t||typeof t=="number"&&t<0&&r?.get(t)===e,ac=Rx(({comment:e,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:s,onBeforeHide:i,resolvedIdMap:l})=>{let[d,c]=Sx(!1),{labels:u}=q(),m=hx(),p=bx(null),f=vx(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:Ex[Dx(e.isMine,d,f)],children:[si("div",{className:"mb-1 flex items-center justify-between",children:[lr("div",{className:Tx(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:wx,children:Ne(e.createdAt)}),R&&si("div",{[li]:e.id,className:Ax,onBlur:I,children:[lr(rt,{elementRef:p,render:x=>lr("button",{type:"button",...x,className:gx,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(yx,{"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:xx,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 Wx,jsx as Ut,jsxs as ic}from"react/jsx-runtime";var Lx="data-daily-report-comment-section",Nx="data-daily-report-comment-heading",Ox=C(mr,le),Mx=Ve("flex flex-col gap-2"),UR=(e,t)=>e>0||t,Px=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),kx=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"]`),Fx=(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"}},Hx=({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=Cx(),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=Fx(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",{[Lx]:"",className:Mx(t),children:[Ut(wt,{ref:s,id:e,level:Kr[a],tabIndex:-1,[Nx]:"",className:Ox,children:o.comments}),Ut(Hx,{...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(Vx,{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(Wx,{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);Ix(()=>{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 Bx="flex gap-2",Ux="mt-auto flex gap-2",FR="content",Vx=({onAddComment:e,pushedToEnd:t,labelledBy:r})=>{let[n,o]=_x(!1),{labels:a}=q();return ic("form",{className:t?Ux:Bx,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:Px,autoComplete:"off",readOnly:n})}),Ut(rt,{render:i=>Ut("button",{type:"submit",...i,className:kx,disabled:n,children:a.commentSend})})]})};import{useState as nv}from"react";import{Slot as zx}from"@radix-ui/react-slot";import{cva as Kx}from"class-variance-authority";import*as zR from"react";import{jsx as Gx}from"react/jsx-runtime";var $x=Kx(`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,jx=(e,t,r)=>{let n=`${String(e)}|${String(t)}`,o=WR.get(n);if(o!==void 0)return o(r);let a=Ve($x({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)=>Gx(n?zx:"button",{className:jx(t,r,e),ref:a,...o}));xr.displayName="Button";import{jsx as Xx}from"react/jsx-runtime";var Yx=`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}`,qx=Ve(Yx);function KR({className:e,type:t,...r}){return Xx("input",{type:t,"data-slot":"input",className:qx(e),...r})}import*as $R from"@radix-ui/react-label";import{jsx as Jx}from"react/jsx-runtime";var Qx="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",Zx=Ve(Qx);function la({className:e,...t}){return Jx($R.Root,{"data-slot":"label",className:Zx(e),...t})}import{jsx as rv}from"react/jsx-runtime";var ev=`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}`,tv=Ve(ev);function jR({className:e,...t}){return rv("textarea",{"data-slot":"textarea",className:tv(e),...t})}import{jsx as Vt,jsxs as ci}from"react/jsx-runtime";var ro=e=>({title:e.subject??"",content:e.content??""}),ov=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]=nv(!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:ov,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 av=`inline-grid whitespace-nowrap text-xs leading-4 tabular-nums ${de}`,GR="[grid-area:1/1]",sv=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:sv(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]:[]]},iv=({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:av,"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(iv,{isEditing:e,descriptionId:t}),lv=({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(lv,{id:e});import{virtualScrollItemElementId as Bv}from"@aiquants/virtualscroll";import{useContext as Ei}from"react";import{virtualScrollItemElementId as gh}from"@aiquants/virtualscroll";import{createContext as Cv,useCallback as Re,useContext as Iv,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 dv="data-daily-report-keyboard-focus",$r={capture:!0},lh=e=>{let t=ly(e.ownerDocument),r=i=>{e.toggleAttribute(dv,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 cv='form, input, textarea, select, [contenteditable]:not([contenteditable="false"]), audio[controls], video[controls]',uv='select, input[type="search"], [contenteditable]:not([contenteditable="false"]), audio[controls], video[controls]',pv=["combobox","listbox","menu","menubar","radiogroup","slider","spinbutton","textbox","tree","grid","scrollbar","tablist","toolbar","treegrid","separator"],mv=pv.map(e=>`[role="${e}"]`).join(", "),fv='[aria-expanded="true"]',yv=new Map([["ArrowUp","previous"],["ArrowDown","next"],["Home","first"],["End","last"],["PageUp","pageBackward"],["PageDown","pageForward"]]),Rv=new Set(["Enter"," "]),hv=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=hv.get(e.key);return r===void 0?null:r}let t=yv.get(e.key);return t!==void 0?t:Rv.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)},bv=(e,t,r,n)=>{let o=dn(t,r);if(o===null)return null;if(e==="tab")return e;if(e==="activate"||uc(t,mv,r,n))return null;if(e==="returnToRow"){if(uc(t,uv,r,n))return null;let a=t.closest(fv);return a!==null&&o.contains(a)?null:e}return uc(t,cv,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:bv(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",Sv=({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},gv=({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},Ev=(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=Sv(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=gv(t);return jr(d.index,Ri(d.top,i(d.index),a,-1))}}},Dv=({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=Ev(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:Dv(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}),Tv=Object.freeze({apply:null,flush:!1,requestFrame:!0,ended:!1}),Rh=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!0}),wv=new Map(Object.values(Wt).map(e=>[e,Object.freeze({apply:e,flush:!1,requestFrame:!0,ended:!1})])),hh=e=>{let t=wv.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},Av=(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=Av(e.axis,e.pending,r.amount),fc)}case"frame":{if(e.fence==="open")return fc;if(e.fence==="immediate")return e.fence="flush",Tv;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=Cv(null),_v=Object.freeze({kind:"frame"}),Dh={capture:!0},Lv=()=>{},Th=(e,t,r)=>{let n=e.ownerDocument,o=n.defaultView;if(o===null)return Lv;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},Nv=Object.freeze({kind:"keyup"}),Ov=Object.freeze({kind:"cancel"}),Mv=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},Pv=e=>e in Wt,kv=(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}},Fv=(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}},Hv=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=Iv(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&&Hv(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=kv(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,_v,ie))},[Te]),xt=Re(()=>{let v=x.current;v!==null&&Te(v,Nv,ie)},[Te,ie]),Qe=Re(()=>{let v=x.current;v!==null&&Te(v,Ov,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&&Pv(W)&&Wt[W].axis===M.state.axis){v.preventDefault(),Te(M,Mv[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:Fv(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=>Bv(nf(),e),so=Object.freeze([]),Uv="data-daily-report-row-shell",Rc=Object.freeze({..._t,[Uv]:"",className:`h-full w-full ${Lt}`}),wi=Di("div",{...Rc}),Vv=(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:Vv(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 zv,jsx as xi,jsxs as Kv}from"react/jsx-runtime";var Wv=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:Wv(e.badgeClassName),children:r===null?e.label:Kv(zv,{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 $v}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 $v("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 jv=()=>{},_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?jv:t.subscribe(r,a);return()=>{s(),i()}},changesBox:(a,s)=>a.detail!==s.detail}};import lC from"lucide-react/dist/esm/icons/pencil.js";import dC from"lucide-react/dist/esm/icons/trash-2.js";import{jsx as Nh}from"react/jsx-runtime";var Ni=24,Oh=2,Gv=20,Li=5,Yv=3,qv=()=>{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=(Gv-Oh)/(a-o),d=Ni/2-l*(o+a)/2,c=Ni/2-l*(s+i)/2,u=m=>String(Number(m.toFixed(Yv)));return t.map(m=>`${u(d+l*m.x)},${u(c+l*m.y)}`).join(" ")},Xv=qv(),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:Xv})});import Zv from"lucide-react/dist/esm/icons/check.js";import Jv from"lucide-react/dist/esm/icons/refresh-cw.js";import{jsx as Mh}from"react/jsx-runtime";var Oi=24,Qv=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:Qv,fill:"currentColor"})});import{jsx as Mi}from"react/jsx-runtime";var eC="data-daily-report-updated-since-read",uo=({readState:e})=>e==="unread"?Mi(Ph,{}):e==="updatedSinceRead"?Mi(Jv,{className:et.read}):Mi(Zv,{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",{[eC]:"","aria-hidden":"true",className:mu,children:t}):null;import{jsx as rC}from"react/jsx-runtime";var tC=/^(\d{4}-\d{2}-\d{2})(?:T(\d{2}:\d{2}):\d{2})?$/,gn=({text:e})=>{let t=tC.exec(e);if(t===null)return e;let[,r,n]=t;return rC("time",{dateTime:e,children:n===void 0?r:`${r} ${n}`})};import{Fragment as iC,jsx as Ge,jsxs as hc}from"react/jsx-runtime";var nC=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:nC(t.value),children:n})]}),oC=`mt-2 font-semibold ${de} text-xs uppercase tracking-wide first:mt-0`,aC=`m-0 flex flex-col rounded-xl bg-slate-100 p-3 ${de} text-xs dark:bg-slate-800/60`,sC="m-0 mt-1 text-slate-700 text-sm dark:text-slate-200",qr=({label:e,children:t})=>hc(iC,{children:[Ge("dt",{className:oC,children:e}),Ge("dd",{className:sC,children:t})]}),kh=({report:e,visitTimeDisplay:t,labels:r})=>{let n=Hr(e.category),o=Hr(e.creationCategory);return hc("dl",{className:aC,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:""},cC={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:""},uC=`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:uC,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(lC,{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(dC,{className:et.delete})})}),Hh("dl",{className:"m-0 flex flex-wrap items-center gap-2",children:[Ae(St,{label:u.id,classNames:cC,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 fC}from"react/jsx-runtime";var pC=C(Fr,xa,va,Aa,"h-full"),mC=(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=mC(u,i,o))}),Uh(()=>()=>{l.current?.release(),l.current=null},[]),fC(Ai,{reportHubId:e,rowId:t,name:r,className:pC,frameRef:s,children:a})};import{jsx as J,jsxs as nt}from"react/jsx-runtime";var RC=C("flex w-full flex-col gap-4",Lt,_a,kr),hC=C(Lt,kr),bC=C("rounded-2xl",kr),SC=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",gC=C("whitespace-pre-wrap",Ia),EC=C(Je,"bg-slate-100 text-xs dark:bg-slate-800",de),DC=({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"))},TC=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),wC=({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}),AC=nt("div",{..._t,className:hC,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)})]})]})]}),xC=()=>AC,vC=({item:e,observeRowHeight:t,onCommentAdded:r,userId:n})=>{let o=nn(),a=yC(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:wC({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(CC,{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(xC,{}):V===null?wi:J(Ii,{rowId:S,name:x?null:$h(V.report),description:V.description})})},Yh=Sc(vC),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=TC(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:RC,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:gC,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:EC,children:J(DC,{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:bC,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 CC=({itemId:e,stateId:t})=>{let{labels:r}=q();return J("div",{..._t,className:SC,children:J("p",{id:t,children:r.reportLoadFailed(e)})})};import{VirtualScroll as HC,virtualScrollItemElementId as BC}from"@aiquants/virtualscroll";import{useCallback as ki,useContext as UC,useId as nb,useMemo as Tc,useRef as VC,useState as ob}from"react";import{createContext as IC}from"react";var gc=IC(null);import{createContext as _C,useContext as LC,useLayoutEffect as NC}from"react";var Qh=()=>{let e=!1;return{request:()=>{e=!0},isPending:()=>e,take:()=>{let t=e;return e=!1,t}}},Ec=_C(null),Zh=(e,t)=>{let r=LC(Ec);NC(()=>{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 OC=(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}},PC=(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}},kC=(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):PC(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}},FC=(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=kC(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?FC(c,e,p):f;if(y===-1){o.current=null;return}if(y===p.index&&!OC(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 WC=Object.freeze({skipFar:!0}),zC=(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=VC(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=UC(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:zC(r,T=>{let L=e.current,F=L===null?null:L.ownerDocument.getElementById(BC(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(HC,{...r,activeItemIndex:n,activeItemVisibleInset:tu,itemZones:WC})})})})})};import{useCallback as KC,useContext as ab,useEffect as sb,useMemo as $C,useState as jC}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},GC=(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))},YC=()=>{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=GC(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]=jC(YC),s=$C(()=>({detailSource:r,detailStore:n,marksStore:o,itemCount:e,getItem:t}),[r,n,o,e,t]),i=KC(l=>a.evaluate(l,s),[a,s]);return sb(()=>{a.evaluate(null,s)},[a,s]),sb(()=>()=>a.releaseAll(),[a]),i};import{Fragment as rI,jsx as dr,jsxs as tI}from"react/jsx-runtime";var ub={pointerDragInputs:ts,wheelSpeedMultiplier:qa,inertiaOptions:$n(!1),enableKeyboardNavigation:!1},qC={...ub,inertiaOptions:$n(!0)},cb="daily-report-detail-list",XC=C("relative w-full",Fa,ka,Ha),QC=C(Nt,"relative"),ZC=300,JC=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(eI,{...e,viewportHeight:o,reducedMotion:a})})})},eI=({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(()=>JC(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"})},ZC))},[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?qC:ub,onRangeChange:K,onScrollAdjust:re,onScroll:Kt,testId:cb,className:XC,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(rI,{children:tI("div",{ref:W,className:QC,...Ss,...V,onClick:ue,children:[Te,Le]})})};import fb from"lucide-react/dist/esm/icons/refresh-cw.js";import{createContext as sI,memo as iI,useContext as lI,useLayoutEffect as dI,useRef as cI}from"react";import{jsx as xc,jsxs as nI}from"react/jsx-runtime";var Vi=e=>10**String(e).length-1,ca=({text:e,widestTexts:t,ref:r})=>nI("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 oI,useState as pb}from"react";import{jsx as mb,jsxs as aI}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;oI(()=>{a&&!n&&o(!0)},[a,n]);let{status:s,alert:i}=a?e:vc;return aI("span",{"data-testid":t,className:"sr-only",children:[mb("span",{role:"status",children:s}),mb("span",{role:"alert",children:i})]})};import{Fragment as TI,jsx as Et,jsxs as zt}from"react/jsx-runtime";var Ic=sI(!0),uI="daily-report-ids-stream-status-announcer",pI="inline-grid whitespace-nowrap text-start",hb="col-start-1 row-start-1",mI=`${Pa} ${hb}`,fI=`${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}`,yI=`${Sb} ${Jr}`,RI=`${gb} ${Jr}`,hI=`${Eb} ${Jr}`,Tb=(e,t)=>Vi(t===null?e:Math.max(e,t)),bI=(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)}},SI=({labels:e,loadedCount:t,totalCount:r})=>{let{text:n,widestText:o}=bI(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]})]})},gI=(e,t,r)=>e.phase==="streaming"?Et(SI,{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,EI=iI(({labels:e,widest:t})=>zt("span",{"aria-hidden":"true",className:mI,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:yI,children:[Et("span",{className:yb}),e.streamRetrying(t)]}),zt("span",{className:RI,children:[e.streamFailed,Et("span",{className:Db,children:e.streamRetry})]}),zt("span",{className:hI,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,DI=(e,t)=>_c({phase:e.phase,hasItems:!0,retryingCount:e.phase==="retrying"?e.loadedCount:null},t),ua=()=>{let e=Ff(),{labels:t}=q(),r=lI(Ic),n=cI(null),a=gI(e,t,()=>{Ar([n.current]),Us()}),s=a===null;return dI(()=>{let i=n.current;!s||i===null||!i.contains(tt(i))||Ar(qs(i.ownerDocument))},[s]),zt(TI,{children:[zt("span",{className:pI,children:[Et(EI,{labels:t,widest:Tb(e.loadedCount,e.totalCount)}),Et("span",{ref:n,tabIndex:-1,"data-daily-report-stream-status":"",className:fI,children:a})]}),r?Et(Wi,{announcement:DI(e,t),testId:uI}):null]})};import{Panel as Yb,PanelGroup as Y_,PanelResizeHandle as q_}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 wI}from"react";var wb="(max-width: 639px)",AI=()=>{},xI=e=>{if(typeof window>"u"||typeof window.matchMedia!="function")return AI;let t=window.matchMedia(wb);return t.addEventListener("change",e),()=>t.removeEventListener("change",e)},vI=()=>typeof window<"u"&&typeof window.matchMedia=="function"?window.matchMedia(wb).matches:!1,CI=()=>!1,Ab=()=>wI(xI,vI,CI);import{SwipeCloseGuardContext as n_,useSwipeGuardState as o_,useSwipeToDismissOverlay as a_,useTapClick as s_,useTransitionDisplay as i_}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 II={kind:"hold"},_I=new Set(["grid","listbox","menu","menubar","radiogroup","tablist","toolbar","tree","treegrid"]),LI=(e,t)=>{let r=e.getAttribute("role");return r!==null&&_I.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 II;let{before:o,within:a,after:s}=Vo(t,r);return e.shiftKey?o.some(i=>!LI(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 NI}from"react";var pa=(e,t)=>{let{id:r,indexHint:n}=t;return NI(()=>{if(r===null)return null;let o=Fe(e,r,n);return o===-1?null:nr(e,o)},[e,r,n])};import OI from"lucide-react/dist/esm/icons/pencil.js";import MI from"lucide-react/dist/esm/icons/trash-2.js";import{memo as PI,useCallback as wn,useDeferredValue as kI,useEffect as Oc,useId as _b,useLayoutEffect as Mc,useMemo as ha,useRef as Ra,useState as Lb,useSyncExternalStore as FI}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"},HI={field:"flex min-w-0 flex-1 items-baseline",label:Pb,value:"wrap-break-word min-w-0 flex-1"},BI={field:"flex flex-col gap-1",label:en,value:""},UI={field:"flex min-w-0 items-center gap-1",label:C(en,"shrink-0 whitespace-nowrap"),value:""},VI=`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},WI=C("flex flex-col gap-1",cl),zI=C(Su,"grid grid-cols-2 gap-1"),KI=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)})}},$I=(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",jI=["article","relations"],GI=e=>{if(e==="article"||e==="relations")return e;throw new Error(`[daily-report] unknown side-pane tab: ${e}`)},YI=C("hidden h-full min-h-0 w-full min-w-0 flex-1 flex-col gap-4 sm:flex",Lt),qI=C("flex h-full flex-1 items-center justify-center text-center",vn),XI=9,QI=.875,ZI=16,kb=4*Math.ceil((2*ur+2*Ca+2*iu+XI*QI*ZI)/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}=FI(t.subscribe,t.getSnapshot,t.getSnapshot),m=pa(e,c),p=pa(e,kI(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:YI,children:p===null?Z("div",{className:qI,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)})},JI=({reportHubId:e,children:t})=>{let r=ky(e);return Z(Jn,{reportHubId:e,entry:r,children:t})},Ki=PI(({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(JI,{reportHubId:e.reportHubId,children:[Ir("div",{className:WI,children:[Z("dl",{className:"m-0",children:Z(St,{label:u.businessDate,classNames:BI,children:Z(wt,{ref:b,level:p,id:r,tabIndex:-1,className:KI,children:F})})}),Ir("div",{className:VI,children:[Z("dl",{className:"m-0 min-w-0",children:Z(St,{label:u.author,classNames:UI,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(GI(Q)),className:"flex min-h-0 flex-1 flex-col",children:[Z("div",{className:cl,children:Z(fa,{"aria-label":u.reportTabList,className:zI,children:jI.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(r_,{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}`}),e_=["w-full","w-11/12","w-4/5"],t_=C(lu,Ia),r_=({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}=$I(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:HI,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(OI,{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(MI,{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:t_,children:w?e_.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 l_="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]",d_={right:"var(--aqdr-overlay-right, 0px)"},c_="absolute inset-0 touch-manipulation bg-slate-900/50 motion-safe:transition-opacity motion-safe:duration-200",u_=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),p_=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),m_="flex shrink-0 justify-center empty:hidden",f_=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}=o_(),b=i_(e,t),{overlayRef:E,overlayStyle:I,attemptClose:x,isSwiping:P}=a_({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=s_(()=>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<=f_)&&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(l_,e&&!P?"pointer-events-auto":"pointer-events-none"),style:d_,inert:!e,onKeyDown:w,onCancel:_,onClose:A,children:[Xr("div",{"aria-hidden":"true","data-daily-report-overlay-backdrop":"",className:C(c_,e?"opacity-100":"opacity-0"),...B}),Xr("div",{ref:E,"data-daily-report-overlay-panel":"",className:C(u_,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(n_.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:m_}),Xr("div",{className:"flex justify-start",children:Xr("button",{type:"button","data-overlay-interactive":"true",className:p_,onClick:()=>x(),children:s.close})})]})})]}):null};import{memo as Kb,useContext as $b,useEffect as C_,useMemo as Yi}from"react";import{createContext as y_,createElement as R_,useLayoutEffect as h_,useMemo as b_,useRef as S_,useState as g_}from"react";var E_=6.75,D_=4,T_=1e-6,w_=e=>4*Math.ceil((2*ur+2*Ca+D_+E_*e-T_)/4),Gi=y_(null),A_="data-daily-report-root-font-size-probe",x_={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},v_=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=S_(null),[t,r]=g_(null);h_(()=>{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=w_(v_(o));l!==a&&(a=l,r(l))};s();let i=new ResizeObserver(s);return i.observe(o),()=>i.disconnect()},[]);let n=b_(()=>R_("div",{ref:e,"aria-hidden":!0,[A_]:"",style:x_}),[]);return{rowSlotHeight:t,remProbe:n}};import{jsx as ce,jsxs as bo}from"react/jsx-runtime";var I_=C(Fr,xa,va,Aa),__=C("relative flex h-full w-full select-none flex-wrap content-start items-center gap-2 overflow-hidden",Lt,_a,su),L_="min-w-24",N_="basis-full space-y-2 text-slate-700 text-sm leading-5 dark:text-slate-200",O_={touchAction:"manipulation"},M_=C("flex grow basis-0 cursor-pointer items-center gap-2 text-left outline-none after:absolute after:inset-0 after:rounded-2xl",L_),P_=C("relative z-10",it),k_=C(Je,"shrink-0 whitespace-nowrap bg-slate-100 font-medium text-slate-900 text-xs dark:bg-slate-800 dark:text-slate-100"),F_=C(Je,"min-w-0 max-w-full bg-slate-100 font-semibold text-xs dark:bg-slate-800 dark:text-slate-200"),H_=C(uu,"ml-auto"),B_=C("flex h-full",Lt),U_="flex h-full w-full flex-col justify-between motion-safe:animate-pulse",ho="h-4 rounded bg-slate-200 dark:bg-slate-700",V_=ce("div",{"data-skeleton":!0,..._t,className:B_,children:bo("div",{className:U_,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")})]})]})}),W_=()=>V_,z_="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",K_=`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`,$_=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:I_,style:a,onMouseDown:$_,children:n})},jb=e=>$u(e??null,Yp),j_=({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}),G_=(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:P_,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:O_,className:__,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:M_,children:[ce("span",{className:k_,children:p})," ",ce("span",{className:F_,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:H_,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:N_,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;C_(()=>{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:z_,children:ce("p",{id:b,children:n.reportSummaryLoadFailed(e.reportHubId)})}),!1,[b]);if(u===null&&(S||f!==null||y!==null))return E(ce(W_,{}),!0,so);if(!u)return E(ce("div",{..._t,className:K_,children:ce("p",{id:b,children:n.reportNotFound})}),!1,[b]);let I=Sr(u.sourceType,o),x=j_({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:G_(e,u),description:x})})});Bc.displayName="ListReportItem";import{Fragment as dL,jsx as ft,jsxs as Qi}from"react/jsx-runtime";var Xb={pointerDragInputs:ts,inertiaOptions:$n(!1),wheelSpeedMultiplier:qa,enableKeyboardNavigation:!1,resetOnGetItemHeightChange:!0},X_={...Xb,inertiaOptions:$n(!0)},Qb=Object.freeze({value:360,unit:"pixels"}),Zb=Object.freeze({value:160,unit:"pixels"}),Q_=Object.freeze({value:kb,unit:"pixels"}),Jb=Object.freeze({value:520,unit:"pixels"}),Z_=Object.freeze([Zb,Qb,Jb]),J_=Object.freeze({visible:!0,thickness:6,length:32,barThickness:2,barLength:16}),eL=C("cursor-col-resize rounded hover:bg-slate-200/60 focus:ring-0 dark:hover:bg-slate-700/60",le),tL=C("relative w-full",Fa,ka,Ha),rL=C(Nt,"relative isolate overflow-hidden"),qb="daily-report-list",nL=()=>!1,oL=()=>{throw new Error("[daily-report] a List activation arrived before the view committed")},aL=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=aL(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(sL,{...e,rootRef:t,viewportHeight:o,rowSlotHeight:s,isContainerNarrow:a,reducedMotion:l})]})},sL=({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(oL),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:nL,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:rL,...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?X_:Xb,onRangeChange:j,onScrollAdjust:G,onScroll:W,testId:qb,className:tL,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(Y_,{direction:"horizontal",className:"min-h-0 flex-1","data-testid":"daily-report-panel-group",children:[ft(Yb,{id:"daily-report-list-panel",defaultSize:Qb,minSize:Zb,maxSize:Jb,contentOverflow:"hidden",className:iL,children:oe}),ft(q_,{id:"daily-report-list-handle",thickness:10,indicator:J_,className:eL,activationSizes:Z_,"aria-label":f.resizeHandle,title:f.resizeHandleHint}),ft(Yb,{id:"daily-report-detail-panel",minSize:Q_,contentOverflow:"hidden",className:lL,children:ft(Fb,{dailyReportItems:e,selectionStore:re,autoMarkRead:r,userId:a,onReportDeleted:ee})})]}),[oe,f.resizeHandle,f.resizeHandleHint,e,re,r,a,ee]);return Qi(dL,{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})]})},iL=C("flex min-h-0",ru),lL=C("flex min-h-0 flex-1",Fr);import{useCallback as YN,useEffect as zS,useLayoutEffect as qN,useRef as $S,useState as XN}from"react";import gN from"lucide-react/dist/esm/icons/plus.js";import EN from"lucide-react/dist/esm/icons/refresh-cw.js";import DN from"lucide-react/dist/esm/icons/rotate-cw.js";import{useEffect as Zc,useId as BS,useLayoutEffect as US,useMemo as sl,useRef as go,useState as An}from"react";import{useSearchParams as TN}from"react-router";import{useEffect as cL,useRef as eS,useState as uL}from"react";var tS=(e,t,r=250)=>{let n=jn(t),[o,a]=uL(e),s=eS(e),i=eS(!0);return cL(()=>{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 vL from"lucide-react/dist/esm/icons/loader-circle.js";import CL from"lucide-react/dist/esm/icons/x.js";import{useEffect as dS,useId as ga,useLayoutEffect as IL,useRef as tl,useState as cS}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([])}),pL=/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,mL=e=>{let t=e.trim();return t.length===0?null:t.replace(pL,"\uFFFD")},rS=e=>{let t=mL(e);return t===null?"filter-blank-value":t!==e?"filter-value-not-canonical":e.length>Sa.maxValueLength?"filter-value-too-long":null},fL=e=>{if(e.length>Sa.maxValuesPerFacet)return"filter-too-many-values";let t=new Set;for(let r of e){let n=rS(r);if(n!==null)return n;if(t.has(r))return"filter-duplicate-value";t.add(r)}return null},yL=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=fL(t);if(r!==null)return r}return yL(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,nS=(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"||rS(n)!==null||r.has(n))return null;r.add(n),t.push(n)}return t},oS=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 RL,Suspense as hL,useMemo as aS,useState as bL}from"react";import{jsx as _r,jsxs as lS}from"react/jsx-runtime";var sS="flex min-h-6 items-center text-slate-600 text-xs dark:text-slate-300",SL=C(vu,fr),gL=[{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"}],EL=(e,t)=>t==="author"?e.author:t==="sourceType"?e.searchFilterSourceType:e.customer,DL=(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 RL{constructor(){super(...arguments);this.state={failed:!1}}static getDerivedStateFromError(){return{failed:!0}}render(){return this.state.failed?_r("span",{className:sS,children:this.props.fallback}):this.props.children}},TL=(e,t,r,n)=>{let o=aS(()=>new Set(t.map(s=>s.value)),[t]),a=JSON.stringify(n.filter(s=>!o.has(s)));return aS(()=>{let s=JSON.parse(a);return s.length===0?t:[...t,...s.map(i=>r(e,i))]},[e,t,r,a])};function wL({renderFilterSelect:e,selectProps:t}){return e(t)}var AL=(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 xL({cell:e,labels:t,locale:r,renderFilterSelect:n,candidates:o,optionOf:a,selected:s,onSelect:i}){let l=TL(e.facet,o,a,s),d=EL(t,e.facet);return lS("fieldset",{"data-testid":e.testId,className:xu,children:[_r("legend",{"data-testid":`${e.testId}-caption`,className:SL,children:d}),_r(jc,{fallback:t.searchFilterUnavailable,children:_r(hL,{fallback:_r("span",{className:sS,children:t.searchFiltersLoading}),children:_r(wL,{renderFilterSelect:n,selectProps:{facet:e.facet,label:d,options:l,value:s,onChange:c=>i(e,DL(e.facet,c,l)),locale:r}})})})]})}function iS({id:e,labelledBy:t,labels:r,locale:n,renderFilterSelect:o,facets:a,value:s,onChange:i,clearSignal:l}){let[d,c]=bL(null),u=AL(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 lS("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:gL.map(f=>_r(xL,{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 zL,jsx as yt,jsxs as Ea}from"react/jsx-runtime";var _L=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),uS="inline-grid h-6 place-content-center place-items-center rounded-full border border-solid px-[11px] font-semibold text-xs tabular-nums",LL="col-start-1 row-start-1",NL="invisible col-start-1 row-start-1 after:content-[attr(data-search-toggle-reserve)]",rl=Object.freeze({field:C(uS,"bg-white text-slate-800 dark:bg-slate-900 dark:text-slate-100",pr,le),filled:C(uS,"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)}),OL=Object.freeze({union:C("mr-2 min-w-14",rl.field),intersection:C("mr-2 min-w-14",rl.filled)}),pS=Object.freeze({closed:C("ml-2 min-w-26",rl.field),open:C("ml-2 min-w-26",rl.filled)}),ML=Kc.length*Sa.maxValuesPerFacet,PL="relative min-w-0",kL="pointer-events-none absolute inset-y-0 right-0 grid grid-cols-[repeat(2,--spacing(6))] place-items-center",FL=C("pointer-events-auto col-start-2 row-start-1",it),HL="col-start-1 row-start-1 size-4 text-slate-500 motion-safe:animate-spin dark:text-slate-400",BL="sr-only",UL=C("col-[2/-1] row-start-2 pt-1 pl-[8px] text-xs leading-4",de,fr),VL=e=>e.authors.length+e.sourceTypes.length+e.customers.length,WL=(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):"",mS=({label:e,reserved:t})=>Ea(zL,{children:[yt("span",{className:LL,children:e}),yt("span",{"aria-hidden":"true","data-search-toggle-reserve":t,className:NL})]});function fS({labels:e,debounceMs:t,search:r,shownCount:n,onCommit:o,onCombineChange:a,onRelease:s,clearSignal:i,filters:l}){let[d,c]=cS(""),[u,m]=cS(!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}));IL(()=>{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)};dS(()=>{g.current!==i&&(g.current=i,h.current!==null&&clearTimeout(h.current),h.current=null,c(""))},[i]),dS(()=>()=>{h.current!==null&&clearTimeout(h.current)},[]);let U=r.combine==="intersection",j=WL(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:OL[r.combine],children:yt(mS,{label:U?e.searchCombineAnd:e.searchCombineOr,reserved:U?e.searchCombineOr:e.searchCombineAnd})}),Ea("div",{className:PL,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:_L}),Ea("div",{className:kL,children:[r.status==="searching"?yt(vL,{"aria-hidden":"true","data-testid":"daily-report-search-spinner",className:HL}):null,p?yt("button",{type:"button","data-testid":"daily-report-search-clear","aria-label":e.searchClear,title:e.searchClear,onClick:w,className:FL,children:yt(CL,{"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?pS.open:pS.closed,children:yt(mS,{label:e.searchFiltersToggle(VL(r.filters)),reserved:e.searchFiltersToggle(ML)})}),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:BL,children:j}),G===null?null:yt("p",{id:E,"data-testid":"daily-report-search-failure",className:UL,children:e.searchFailed(G)})]}),Q?yt(iS,{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,RS=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,KL=(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},$L=(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,yS(e,s.reportHubId))||r(s.reportHubId))return null;a-=1}for(let s of o.values()){if(!ol(s,yS(e,s.reportHubId))||r(s.reportHubId))return null;a+=1}return a},yS=(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},hS=(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=$L(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&&KL(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 bS=(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:bS(e,t,r)},SS=(e,t,r)=>e.selected===null?r!==null&&rr(t,r)!==-1?r:null:rr(t,e.selected)!==-1?e.selected:bS(e.items,t,e.selected);import{useEffect as ES,useLayoutEffect as ZL,useMemo as DS,useRef as TS,useSyncExternalStore as JL}from"react";var jL=1e3,GL=5e3,YL={combine:"union",committed:null,filters:$c,generation:0,status:"idle",failure:null,items:null,answered:null},qL=e=>e===400?"invalid":e===404?"unavailable":e===429?"busy":"failed",XL=(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]),QL=(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)},gS=e=>{let t=YL,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&&XL(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 nS(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)},GL))},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(qL(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&&QL(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)},jL))},dispose:()=>{c(),n?.controller.abort(),n=null,o=null}}};var wS=({apiBasePath:e,invalidation:t,onSessionExpired:r})=>{let n=TS(r);ZL(()=>{n.current=r});let o=DS(()=>gS({apiBasePath:e,onSessionExpired:()=>n.current(),fetch:(i,l)=>fetch(i,l)}),[e]);ES(()=>()=>o.dispose(),[o]);let a=TS(t);ES(()=>{a.current!==t&&(a.current=t,o.invalidate())},[t,o]);let s=JL(o.subscribe,o.getSnapshot,o.getSnapshot);return DS(()=>({...s,commit:o.commit,setCombine:o.setCombine,release:o.release}),[s,o])};import{useCallback as AS,useEffect as eN,useLayoutEffect as tN,useMemo as qc,useRef as rN,useState as nN}from"react";var xS=Object.freeze({status:"idle"}),oN=Object.freeze({status:"loading"}),aN=Object.freeze({sourceTypes:[],authors:[],customers:[]}),sN=e=>e===404?"unavailable":e===429?"busy":"failed",Xc=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),iN=(e,t)=>Xc(e.sourceTypes,t.sourceTypes)&&Xc(e.authors,t.authors)&&Xc(e.customers,t.customers),lN=(e,t)=>"facets"in t?e.status!=="ready"||!iN(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},vS=(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})),dN=(e,t)=>e.map(r=>CS(r,t));function CS(e,t){let r=Sr(e,t);return{value:e,label:r===void 0?e:r.label}}var IS=({apiBasePath:e,locale:t,sourceTypeConfigs:r,onSessionExpired:n})=>{let[o,a]=nN({apiBasePath:e,load:xS}),s=o.apiBasePath===e?o.load:xS,i=rN(null),l=Xe(()=>({apiBasePath:e,onSessionExpired:n}));tN(()=>{l.current={apiBasePath:e,onSessionExpired:n}}),eN(()=>()=>{i.current?.abort(),i.current=null},[e]);let d=AS(()=>{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:oN}),(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:sN(D.status)};else{let g=oS(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:lN(D.load,h)}))})()},[l]),c=s.status==="ready"?s.facets:aN,u=qc(()=>{let f=new Intl.Collator(t);return{authors:vS(c.authors,f),sourceTypes:dN(c.sourceTypes,r),customers:vS(c.customers,f)}},[c,t,r]),m=AS((f,y)=>f==="sourceType"?CS(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 MS,useLayoutEffect as RN,useMemo as hN,useRef as bN}from"react";var cN=4294967295,_S=e=>typeof e=="number"&&Number.isInteger(e)&&e>=0&&e<=cN,uN=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},pN=e=>{if(!(br(e)&&_S(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=uN(e.ranges);return t===null?null:{fingerprint:e.fingerprint,ranges:t}},mN=e=>{if(!br(e))return null;let t={};for(let[r,n]of Object.entries(e)){if(!Gn(r))return null;let o=pN(n);if(o===null)return null;t[r]=o}return t},LS=(e,t)=>{if(!(br(e)&&_S(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=mN(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 NS=2*Oo*hr.maxDetailIds,fN=240,yN=6e4,OS=({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<=NS))for(let A of[...i.keys()]){if(d<=NS)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,yN);Q!==null&&F===m&&I(A,Q);return}if(!U.ok)return;let j;try{j=await U.json()}catch{return}let G=LS(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,fN)},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 PS=({apiBasePath:e,answered:t,shownRevision:r,onSessionExpired:n})=>{let o=bN(n);RN(()=>{o.current=n});let a=hN(()=>t===null?null:OS({apiBasePath:e,answered:t,onSessionExpired:()=>o.current(),fetch:(i,l)=>fetch(i,l)}),[e,t]);MS(()=>{if(a!==null)return()=>a.dispose()},[a]);let s=Xe(()=>({store:a,shownRevision:r}));return MS(()=>{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 SN}from"react";var kS=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=>SN(e.subscribe,e.getSettled,e.getSettled);import*as Da from"@radix-ui/react-switch";import*as HS from"react";import{jsx as FS}from"react/jsx-runtime";var al=HS.forwardRef(({className:e,...t},r)=>FS(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:FS(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 GN,jsx as me,jsxs as Qt}from"react/jsx-runtime";var wN="list",AN=e=>{if(e==="list"||e==="tree"||e==="detailList")return e;throw new Error(`[daily-report] unknown view tab: ${e}`)},xN=()=>({topItem:null,anchorReportHubId:null,measuredHeights:new Map}),vN=C(gu,Nu,"flex flex-wrap items-center gap-2"),CN=C("@container/views",Nt),IN=C("mt-0",Nt),_N=C("flex flex-1 items-center justify-center",vn),VS="relative h-4 w-4 p-0 after:absolute after:-inset-1",LN="flex items-center gap-2",NN=C(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"),ON=C(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"),MN=`cursor-pointer select-none ${de} text-xs`,PN=`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`,kN="select-none font-bold font-mono text-amber-900 text-xs uppercase dark:text-amber-200",FN="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",WS=(e,t)=>{let r=Vi(t);return[e.totalCount(r),e.searchHitCount(r)]},HN=({count:e})=>{let{labels:t}=q(),[r,n]=An(null),o=tS(e,r);return me(ca,{ref:n,text:t.totalCount(o),widestTexts:WS(t,Math.max(e,o))})},BN=({totalCount:e,hitCount:t})=>{let{labels:r}=q();return t!==null?me(ca,{text:r.searchHitCount(t),widestTexts:WS(r,e===Wr?t:Math.max(e,t))}):e===Wr?me("span",{children:r.totalCountLoading}):me(HN,{count:e})},UN=({checked:e,onCheckedChange:t})=>{let{labels:r}=q(),n=BS(),o=BS();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:MN,children:r.autoRead}),me("span",{id:o,hidden:!0,children:r.autoReadTitle})]})},VN=({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})},WN=({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})},zN=({tabItems:e,actions:t,searchRow:r})=>{let[n,o]=An(wN),{labels:a}=q();return Qt(ma,{value:n,onValueChange:s=>o(AN(s)),className:CN,children:[Qt("div",{className:C(Du,Ou,Mu[n]),children:[Qt("div",{className:vN,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:IN,children:i},s))]})},KN=Object.freeze({items:null,generation:0,revision:0,change:"none",scrollRequest:null,restoreOnRelease:!0}),$N=(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}},jN=({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]=TN(),b=wS({apiBasePath:s,invalidation:h,onSessionExpired:i}),E=IS({apiBasePath:s,locale:d,sourceTypeConfigs:c,onSessionExpired:i}),I=l===null||b.committed===null?null:b.items,[x,P]=An(KN);x.items!==I&&P($N(x,I,b.generation));let O=sl(()=>I===null?null:RS(I),[I]),B=sl(()=>hS(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=PS({apiBasePath:s,answered:I===null?null:b.answered,shownRevision:x.revision,onSessionExpired:i}),G=go(0),Q=Xe(xN),[X]=An(()=>kS(Ql(w))),fe=go(null),De=go(w),N=go(x.revision);US(()=>{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=SS(fe.current,w,Ee)),(x.change==="restore"||x.change==="release")&&(fe.current=null),Te!==Ee&&X.set(Te,"settled")},[x,w,X]),US(()=>{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(VN,{selectionStore:X,dailyReportItems:w,rowSetSize:A,autoMarkRead:t,userId:e,scrollOffsetRef:G})},{value:"tree",label:n.tabTree,content:me("div",{className:_N,children:n.treeComingSoon})},{value:"detailList",label:n.tabDetailList,content:me(WN,{selectionStore:X,dailyReportItems:w,rowSetSize:A,userId:e,scrollRestoreRef:Q})}],[w,A,t,e,n,X,Q]);return Qt(GN,{children:[o({title:n.title,annotation:Qt("div",{className:"flex flex-wrap items-center gap-2 leading-1",children:[me(ua,{}),me(BN,{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(jN,{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(zN,{tabItems:ee,searchRow:l===null?null:me(fS,{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:FN,title:n.createReportTitle,children:[me(gN,{className:"h-3 w-3"}),me("span",{children:n.createReport})]}),a&&Qt("div",{className:PN,title:n.devControls,"data-testid":"dev-controls-toolbox",children:[me("span",{className:kN,children:"dev"}),me(al,{"aria-label":n.devSseToggle,title:n.devSseToggle,checked:y,onCheckedChange:u}),Qt("div",{className:LN,"data-testid":"dev-icon-buttons",children:[me(xr,{variant:"ghost",size:"icon",onClick:K,className:NN,title:n.devReload,"data-testid":"dev-reload-btn",children:me(DN,{className:"size-3"})}),me(xr,{variant:"ghost",size:"icon",onClick:re,className:ON,title:n.devClearCache,"data-testid":"dev-clear-cache-btn",children:me(EN,{className:"size-3"})})]})]}),me(UN,{checked:t,onCheckedChange:H})]})})})})})]})})]})};import{Fragment as KS,jsx as We,jsxs as il}from"react/jsx-runtime";var QN=C(Nt,Fr),ZN=C("flex min-h-0 flex-1 flex-col items-center justify-center gap-4",de,Lt,le),JN=C("font-bold",Eo),eO=C("font-medium",Eo),tO=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),rO=({isFailed:e,handOver:t})=>{let{labels:r,renderHeader:n}=q(),o=$S(null),a=YN(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(KS,{children:[n({title:r.title,annotation:e?We("span",{className:JN,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:QN,children:We("div",{ref:a,tabIndex:-1,...py,"data-testid":"daily-report-status-panel","data-phase":e?"failed":"loading",className:C(ZN,e&&"border-red-200 dark:border-red-900"),children:e?il(KS,{children:[We("p",{className:eO,children:r.loadError}),We("button",{type:"button","data-testid":"daily-report-load-error-retry",onClick:s,className:tO,children:r.reload})]}):We("p",{children:r.loadingIds})})})})})]})},nO=()=>{let{labels:e}=q(),t=Bf();return We(Wi,{announcement:_c(t,e),testId:"daily-report-stream-announcer"})},oO=({user:e,userId:t})=>{let{apiBasePath:r,onSessionExpired:n}=q(),o=Qn(),[a]=XN(Qh),s=$S(n);qN(()=>{s.current=n}),zS(()=>{Qo({apiBasePath:r,userKey:t??null})},[r,t]),zS(()=>{o.phase==="auth-required"&&s.current()},[o.phase]);let i=o.hasItems||o.phase==="complete";return il(Nd,{children:[We(nO,{}),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(rO,{isFailed:o.phase==="failed",handOver:a})},t??"anonymous")})})]})},aO=({config:e,...t})=>We(Cl,{config:e,children:We(oO,{...t})});import{createShouldRevalidate as sO}from"@aiquants/route-revalidation";var iO=ff.filter(e=>e!=="clearCache"),lO=sO({skipIntents:{field:bt.intent,values:iO},hashChange:"default",unchangedUrl:"skip"}),dO=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,DE 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,aO as DailyReportPage,Jc as DailyReportResolvedContent,Sd as bootstrapDailyReportIdsStreamSession,dO as createDailyReportClientLoader,lO as dailyReportShouldRevalidate,ko as defaultDailyReportClientConfig,Qo as ensureDailyReportIdsStreamSession,QD as foldDailyReportSourceTypeToken,gd as primeDailyReportIdsStreamSession,Of as readDailyReportIdsStreamRows,xl as resolveDailyReportLabels,Sr as resolveSourceTypeConfig,Vs as resyncDailyReportIdsStream,xw as useDailyReportActionContext,nc as useDailyReportComments,q as useDailyReportConfig,Bl as useDailyReportDetail,HT as useDailyReportIdsStream,Ul as useDailyReportPrefetch,vd as useDailyReportSseConnection};
|
|
1
|
+
import gg from"lucide-react/dist/esm/icons/paperclip.js";var fg=4;var yg="data-daily-report-row-surface",Ot={[yg]:"",role:"gridcell"},yu="data-daily-report-active",Fr="data-daily-report-scrolling",pr=8,Rg=4,Ru=pr-Rg;var La="[--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]",Hr=`${La} h-[calc-size(auto,round(up,size,var(--aqdr-lattice-block)))]`,Br="p-[8px]",hu="pr-[8px]",Na="contain-size contain-layout contain-style",bu="contain-strict",er="pointer-events-none absolute size-px whitespace-nowrap opacity-0 select-none contain-layout",ce="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-blue-600 dark:focus-visible:outline-blue-400";var Sl="[--aqdr-text-quiet:oklch(44%_0.046_257.417)] dark:[--aqdr-text-quiet:oklch(77%_0.040_256.788)]",ue=`${Sl} text-(--aqdr-text-quiet)`,mr=`border-slate-500 dark:border-slate-500 ${Sl} placeholder:text-(--aqdr-text-quiet)`,Su="-mx-[4px] px-[4px] pb-[4px] scroll-p-[4px]",gl="scrollbar-thin [scrollbar-gutter:stable]",El=`-m-[4px] overflow-hidden p-[4px] ${gl}`,gu="focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white",Oa="rounded-[calc(var(--radius-2xl)+8px)]",Ma="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",Mt="rounded-2xl border border-solid border-slate-200 bg-white p-[15px] shadow-sm dark:border-slate-700 dark:bg-slate-900/70",Pa=16,Mn=`rounded-xl border border-dashed border-slate-300 bg-slate-50 p-[11px] ${ue} text-sm dark:border-slate-600 dark:bg-slate-900/40`,Du=12,ka="rounded-xl bg-slate-50 p-3 text-slate-700 text-sm leading-6 dark:bg-slate-800/60 dark:text-slate-200";var Au="min-h-24",Tu="flex h-6 items-center",Fa="[--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",hg=44,an="pointer-coarse:min-h-[44px] pointer-coarse:min-w-[44px]",Me=`${an} pointer-coarse:before:absolute pointer-coarse:before:inset-0`,Ur="pointer-coarse:min-h-[44px]",VO=8*Math.ceil(hg/8),fr="pointer-coarse:min-h-[48px]",dt=`pointer-coarse:relative flex size-6 shrink-0 items-center justify-center rounded-full hover:bg-slate-200 dark:hover:bg-slate-700 ${Me} ${ce}`,wu="-mx-1 pointer-coarse:mx-0",_u="flex items-center gap-1",et="inline-flex h-6 items-center rounded-full px-3",vu="inline-flex h-6 items-center rounded-full border border-solid px-[11px]",xu=`${et} 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]`,Cu="inline-flex h-6 shrink-0 items-center rounded px-2 font-semibold text-xs tracking-wide",kr="size-4",tt={starOff:`${kr} text-slate-500 dark:text-slate-400 forced-colors:text-[CanvasText]`,starOn:`${kr} fill-yellow-400 text-yellow-700 dark:text-yellow-400 forced-colors:fill-[Highlight] forced-colors:text-[Highlight]`,read:`${kr} text-blue-600 dark:text-blue-400 forced-colors:text-[CanvasText]`,delete:`${kr} text-slate-500 hover:text-red-600 dark:text-slate-400 dark:hover:text-red-400 forced-colors:text-[CanvasText]`,deletePending:`${kr} text-red-600 dark:text-red-400 forced-colors:text-[CanvasText]`,edit:`${kr} text-slate-500 dark:text-slate-400 forced-colors:text-[CanvasText]`},Iu="relative h-6 w-10 border-4 border-solid pointer-coarse:after:absolute pointer-coarse:after:top-1/2 pointer-coarse:after:left-1/2 pointer-coarse:after:size-[44px] pointer-coarse:after:-translate-1/2",Lu="size-4 data-[state=checked]:translate-x-4",Nu="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]",Ou="bg-white dark:bg-slate-950 forced-colors:bg-[ButtonText]";var Mu="rounded-xl bg-slate-100 p-1 dark:bg-slate-800",Pu="rounded-xl border border-solid p-[3px]",ku=`relative inline-flex h-6 items-center justify-center whitespace-nowrap rounded-lg px-2 font-medium ${Me} ${ue} 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`,bg="supports-[margin-left:round(down,1px,1px)]:ml-[max(0px,round(down,calc((100%-72rem)/2),var(--aqdr-lattice-block)))]",Sg="bg-slate-50 dark:bg-slate-950",Pt="flex min-h-0 flex-1 flex-col",Ha=`${Pt} ${Sg}`,Ba=`${Pt} mx-auto w-full max-w-6xl ${La} px-[var(--aqdr-lattice-block)] pt-[var(--aqdr-lattice-block)] ${bg}`,Fu=`relative z-[1] flex shrink-0 flex-col ${Hr}`,Hu="flex grow flex-col justify-between",Bu="grid min-w-0 grid-cols-[max-content_minmax(0,1fr)_max-content] grid-rows-[minmax(2rem,auto)_auto] items-end pointer-coarse:grid-rows-[minmax(56px,auto)_auto] pointer-coarse:@max-[320px]/views:grid-cols-[max-content_minmax(0,1fr)] pointer-coarse:@max-[320px]/views:grid-rows-[minmax(56px,auto)_auto_auto]",Uu="grid min-w-0 grid-cols-1 gap-2 sm:grid-cols-[minmax(0,2fr)_minmax(0,1fr)_minmax(0,3fr)]",Vu="m-0 min-w-0 border-0 p-0",Wu="mb-1 p-0 text-slate-700 text-xs leading-4 dark:text-slate-200",zu="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]",Co="text-red-800 dark:text-red-300",Ku="bg-white dark:bg-slate-900",Ua=`min-h-0 flex-1 overflow-clip contain-size ${La}`,Va="flex h-full flex-col contain-size contain-layout contain-style",$u="relative inline-block whitespace-nowrap tabular-nums",Wa="invisible grid",sn="col-start-1 row-start-1",Gu="absolute inset-0 contain-size contain-layout contain-style",za=`[&_.aqvs-no-items-text]:py-4 ${Sl} [&_.aqvs-no-items-text]:text-(--aqdr-text-quiet)`,ju="border-slate-200/80 bg-slate-100/60 dark:border-slate-800 dark:bg-slate-900/60 dark:text-slate-200",Yu="ml-[8px]",qu={list:"mr-[8px] [@media(max-width:639px)]:mr-[16px] @max-[460px]/views:mr-[16px]",tree:"mr-[8px]",detailList:"mr-[16px]"},ln=`font-semibold ${ue} text-xs uppercase tracking-wide`,yr=`m-0 ${ln}`,Rr="text-balance wrap-anywhere [word-break:auto-phrase]",Xu="[--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)]",Ka=`${Xu} [&_.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]`,$a="[--aqvs-focus-ring-color:var(--color-blue-600)] dark:[--aqvs-focus-ring-color:var(--color-blue-400)]",Zu=`${Xu} [scrollbar-color:var(--aqdr-scroll-bar-thumb)_var(--aqdr-scroll-bar-track)]`;import{jsx as Qu,jsxs as Ag}from"react/jsx-runtime";var Eg=2,Dg=`inline-flex h-6 shrink-0 items-center gap-1 ${ue}`,Dl=(e,t)=>`${e}: ${t}`,Al=e=>e>=Eg?String(e):null,Io=({id:e,count:t,label:r})=>{if(t<=0)return null;let n=Dl(r,t),o=Al(t);return Ag("span",{id:e,className:Dg,title:n,role:"img","aria-label":n,"data-testid":"daily-report-attachment-indicator","data-attachment-count":t,children:[Qu(gg,{className:kr,"aria-hidden":"true"}),o!==null&&Qu("span",{className:"font-semibold text-xs leading-4",children:o})]})};import{useCallback as Xe,useEffect as Cn,useLayoutEffect as xb,useMemo as Mc,useRef as At,useState as In}from"react";var dn=Object.freeze({text:"",runs:Object.freeze([])}),kt=e=>e.length===0?dn:{text:e,runs:[{displayStart:0,displayEnd:e.length,sourceStart:0,sourceEnd:e.length}]},Ju=(e,t,r)=>t>=r?dn:{text:e.slice(t,r),runs:[{displayStart:0,displayEnd:r-t,sourceStart:t,sourceEnd:r}]},Tl=(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}))},wl=e=>e.displayEnd-e.displayStart===e.sourceEnd-e.sourceStart,Lo=(e,t,r)=>{if(t>=r)return dn;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(wl(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(...Tl(a-t,s-t,o.sourceStart,o.sourceEnd))}return{text:e.text.slice(t,r),runs:n}},Pn=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?dn:{text:t,runs:r}},_l=e=>{let t=e.text.trimEnd().length,r=Math.min(t,e.text.length-e.text.trimStart().length);return Lo(e,r,t)},Vr=e=>typeof e=="string"?_l(kt(e)):dn,Ga=(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 y=s;y<e.runs.length&&e.runs[y].displayStart<c;y++){let p=e.runs[y],m=Math.max(p.displayStart,d),f=Math.min(p.displayEnd,c);if(!(m>=f))if(wl(p)){let S=p.sourceStart+(m-p.displayStart);a.push({displayStart:m+u,displayEnd:f+u,sourceStart:S,sourceEnd:S+(f-m)})}else a.push(...Tl(m+u,f+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?dn:{text:o,runs:a}},Tg=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},wg=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},ep=e=>{let t=e.normalize("NFC");if(t===e)return kt(e);let r=Tg(e),n=r.map(s=>s.shown).join("")===t?r:wg(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(...Tl(a,d,s,i)),a=d}return{text:t,runs:o}},tp=(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(wl(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},rp=String.raw`<br\s*\/?\s*>`,np=String.raw`<\/p>`,op="<[^>]+>",_g=new RegExp(String.raw`(${rp}|${np}|\r?\n)|${op}`,"gi"),ap=new RegExp(rp,"gi"),vg=new RegExp(np,"gi"),xg=new RegExp(op,"g"),sp=(e,t)=>{if(!e)return[];let r=[],n=[],o=0,a=()=>{let s=Pn(n);n=[];let i=_l({text:s.text.replace(/ /g," "),runs:s.runs});i.text.length>0&&r.push(i)};for(let s of e.matchAll(_g))if(n.push(Ju(e,o,s.index)),o=s.index+s[0].length,s[1]!==void 0&&(a(),r.length===t))return r;return n.push(Ju(e,o,e.length)),a(),r},ip=e=>Ga(Ga(Ga(kt(e),ap,`
|
|
2
|
+
`),vg,`
|
|
3
|
+
`),xg,""),lp=e=>e?_l(Ga(kt(e),ap,`
|
|
4
|
+
`)):dn;var Cg=Object.freeze({text:"-",runs:Object.freeze([])}),Ge=e=>{let t=Vr(e);return t.text===""?Cg:t},Wr=e=>Ge(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 jE,useCallback as YE,useContext as gm,useEffect as qE,useState as XE}from"react";import{z as zl}from"zod/v3";var Ig=/^(\d{4})([-/])(\d{2})\2(\d{2})$/;var ja=e=>e<10?`0${e}`:`${e}`,Lg=e=>{if(Number.isNaN(e.getTime()))return null;let t=e.getFullYear(),r=ja(e.getMonth()+1),n=ja(e.getDate());return`${t}-${r}-${n}`},dp=e=>{let t=Ig.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}`},No=e=>dp(e)===e,cp=(e=new Date)=>{if(Number.isNaN(e.getTime()))throw new Error("[daily-report] resolveTodayBusinessDateKey needs a valid Date");return`${e.getFullYear()}-${ja(e.getMonth()+1)}-${ja(e.getDate())}`},Oo=e=>e==null?null:e instanceof Date?Lg(e):dp(e);import{z as Ng}from"zod/v3";var Ft=e=>Number.isSafeInteger(e)&&e>0,Ze=Ng.number().int().positive().max(Number.MAX_SAFE_INTEGER);import{z as Ee}from"zod/v3";var Ya=/^(?:[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 Mo=/^[0-9a-f]{64}$/u,up=e=>e.isRead?{isRead:!0,readContentDigest:e.contentDigest}:{isRead:!1,readContentDigest:null},kn=(e,t)=>e==="read"?{isRead:!1}:{isRead:!0,contentDigest:t},pp=e=>typeof e=="string"&&Mo.test(e),hr=(e,t)=>e.isRead?e.readContentDigest===null||e.readContentDigest===e.contentDigest||typeof t=="string"&&t!==""&&e.userId===t?"read":"updatedSinceRead":"unread";var cn=Symbol("daily-report wire mismatch"),Ht=(e,t,r)=>(e.issues.push({...r,path:t===null?[...e.path]:[...e.path,t]}),cn),Rp=e=>e===null?"null":Array.isArray(e)?"array":Number.isNaN(e)?"nan":typeof e,zr=(e,t)=>({code:"invalid_type",expected:e,received:Rp(t)}),Og=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),Mg=e=>{let t=0;for(let r in e)t+=1;return t},mp=(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},Fn=e=>{let t=Object.keys(e),r=Object.values(e);return(n,o)=>{if(!Og(n))return Ht(o,null,zr("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===cn){s=!0;continue}a===null&&u!==c&&(a=mp(n,t,l)),a!==null&&(u!==void 0||d in n)&&(a[d]=u)}return s?cn:a!==null?a:Mg(n)===i?n:mp(n,t,t.length)}},Po=e=>(t,r,n)=>{r.path.push(n);let o=e(t,r);return r.path.pop(),o},ko=e=>(t,r,n)=>{if(!Array.isArray(t))return Ht(r,n,zr("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===cn?a=!0:l!==i&&(o===t&&(o=t.slice()),o[s]=l)}return r.path.pop(),a?cn:o},ve=(e,t,r)=>e==null||typeof e=="string"?e:Ht(t,r,zr("string",e)),fp=(e,t,r)=>e===null||typeof e=="string"?e:Ht(t,r,zr("string",e)),yp=(e,t,r)=>typeof e=="string"?e:Ht(t,r,zr("string",e)),Pg=(e,t,r)=>e===null||typeof e=="number"&&!Number.isNaN(e)?e:Ht(t,r,zr("number",e)),Fo=(e,t,r)=>typeof e=="boolean"?e:Ht(t,r,zr("boolean",e)),hp=(e,t,r)=>typeof e!="string"?Ht(t,r,zr("string",e)):pp(e)?e:Ht(t,r,{code:"invalid_string",validation:"regex",message:"a content digest is 64 lowercase hex digits"}),kg=(e,t,r)=>e===null?null:hp(e,t,r),vl=(e,t,r)=>{if(typeof e=="number"&&Ft(e))return e;for(let{message:n,path:o,...a}of Ze.safeParse(e).error.issues)Ht(t,r,a);return cn},bp={present:!0,absent:!0,unknown:!0},Sp=Object.keys(bp),Fg=Sp.map(e=>`'${e}'`).join(" | "),Hg=(e,t,r)=>typeof e!="string"?Ht(t,r,{code:"invalid_type",expected:Fg,received:Rp(e)}):Object.hasOwn(bp,e)?e:Ht(t,r,{code:"invalid_enum_value",received:e,options:[...Sp]}),gp=Fn({name:ve,affiliation:ve}),Ep=Fn({name:ve,text:ve,color:ve}),Dp=Fn({id:vl,name:ve,color:ve}),Ap=Fn({id:vl,userId:ve,userName:ve,content:ve,createdAt:ve,isMine:Fo}),Bg=Fn({id:yp,fileName:yp,fileType:fp,fileSize:Pg,createdAt:fp,state:Hg,hasThumbnail:Fo}),Ug=Fn({reportHubId:vl,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:ko(Po(gp)),subject:ve,content:ve,externalComments:ko(Po(Ep)),isRead:Fo,isStarred:Fo,contentDigest:hp,readContentDigest:kg,isDraft:Fo,labels:ko(Po(Dp)),postedComments:ko(Po(Ap)),attachments:ko(Po(Bg))}),Ho=(e,t)=>{let r={path:[],issues:[]},n=e(t,r);return n===cn?{ok:!1,issues:r.issues}:{ok:!0,value:n}},Tp=e=>Ho(Ug,e),wp=e=>Ho(gp,e),_p=e=>Ho(Ep,e),vp=e=>Ho(Dp,e),xp=e=>Ho(Ap,e);var Cp=["auth-required","forbidden","resync-required"],xl=15e3,Ip="lastEventId",Vg=/^\d{1,15}-\d{1,15}$/,qa=e=>Vg.test(e);var Bo=e=>Ee.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 Ee.NEVER}),dM=Bo(wp),cM=Bo(_p),uM=Bo(vp),Cl=Bo(xp),br=Bo(Tp),Uo=Ee.string().regex(Ya),Lp=Ee.object({type:Ee.literal("connected")}),Np=Ee.object({type:Ee.literal("status-update"),reportHubId:Ze,statusType:Ee.enum(["star","read"]),value:Ee.boolean(),readContentDigest:Ee.string().regex(Mo).nullable(),clientTempId:Uo}),Il=Ee.string(),Op=Ee.object({type:Ee.literal("comment-add"),reportHubId:Ze,comment:Cl,clientTempId:Uo,sourceType:Il}),Mp=Ee.object({type:Ee.literal("comment-delete"),reportHubId:Ze,commentId:Ze,clientTempId:Uo,sourceType:Il}),Xa={recipientRawUserId:Ze.optional()},Wg=Np.extend(Xa),zg=Op.extend(Xa),Kg=Mp.extend(Xa),Hn={reportHubId:Ze,report:br,clientTempId:Uo},Ll={...Xa,actorRawUserId:Ze},Nl={viewerIsActor:Ee.boolean()},$g=Ee.object({type:Ee.literal("report-create"),...Hn,...Nl}),Gg=Ee.object({type:Ee.literal("report-update"),...Hn,...Nl}),jg=Ee.object({type:Ee.literal("report-publish"),...Hn,...Nl}),Yg=Ee.object({type:Ee.literal("report-create"),...Hn,...Ll}),qg=Ee.object({type:Ee.literal("report-update"),...Hn,...Ll}),Xg=Ee.object({type:Ee.literal("report-publish"),...Hn,...Ll}),Pp=Ee.object({type:Ee.literal("report-delete"),reportHubId:Ze,clientTempId:Uo,sourceType:Il}),kp=Ee.discriminatedUnion("type",[Lp,Np,Op,Mp,$g,Gg,jg,Pp]),pM=Ee.discriminatedUnion("type",[Lp,Wg,zg,Kg,Yg,qg,Xg,Pp]);var Za="ids-columns",Ol=e=>{if(typeof e!="object"||e===null)return"unknown";let{kind:t}=e;return t==="chunk"?"chunk":t==="error"?"error":"unknown"},Zg=e=>typeof e=="number"&&Ft(e),Qg=e=>{if(typeof e!="object"||e===null)return!1;let{businessDate:t,reportHubId:r}=e;return(t===null||typeof t=="string")&&typeof r=="number"},Jg=4,eE=e=>{let t=Jg;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}}},tE=/^[0-9a-f]{1,16}$/,rE=e=>Ft(e.reportHubId)&&(e.businessDate===null||No(e.businessDate)),nE=e=>typeof e=="string"&&tE.test(e),oE=Object.freeze({kind:"absent"}),aE=Object.freeze({kind:"value",value:null}),sE=e=>e===void 0?oE:e===null?aE:typeof e=="string"&&qa(e)?{kind:"value",value:e}:{kind:"malformed",received:e},Fp=e=>{if(Ol(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:y}=e;if(typeof s!="boolean"||!(i===null||Qg(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=eE(t.length),m=0,f=null,S=0;for(let h=0;h<r.length;h++){let D=r[h],b=n[h];if(!(D===null||typeof D=="string"&&No(D))||h>0&&D===r[h-1]||typeof b!="number"||!Number.isSafeInteger(b)||b<1)return null;let R=m+b;if(R>t.length)return null;for(;m<R;m++){let g=t[m],E=a[m];if(!(Zg(g)&&p(g))||typeof E!="number"||!Number.isSafeInteger(E)||E<0||E>=o.length||m>0&&!iE(f,S,D,g))return null;f=D,S=g}}return m!==t.length?null:{rows:e,isLast:s,resumeCursor:i!==null&&rE(i)?i:null,total:typeof l=="number"&&Number.isSafeInteger(l)&&l>=0?l:null,snapshot:nE(d)?d:null,provisional:c===!0,restarted:u===!0,streamAnchor:sE(y)}},Hp=(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 Bp=(e,t,r,n)=>e!==r?e===null?1:r===null||e>r?-1:1:n-t,iE=(e,t,r,n)=>Bp(e,t,r,n)<0,Up=(e,t)=>Bp(e.businessDate,e.reportHubId,t.businessDate,t.reportHubId);var je=Object.freeze({businessDate:"business-date",idsStream:Za,report:"report",search:"search",reports:"reports",searchMarks:"search-marks",searchFacets:"search-facets",action:"action"}),Ve=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 Vp=(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)}}},gM=Object.freeze(["API","Action","Attachment","ExternalSource","Isolation","Reads","Refresh","Search","SSE","SseReader","Server","Service","Streams","Visibility","ActionProvider","DetailLoader","IdsStream","SseConnection","SessionGate"]),Wp=e=>`[DailyReport${e}]`,St=(e,t,r)=>e===void 0?Vp(t,Wp(r)):Vp(0,Wp(r),e);import{z as Bt}from"zod/v3";var lE=Bt.discriminatedUnion("outcome",[Bt.object({reportHubId:Ze,outcome:Bt.literal("ok"),report:br}).strict(),Bt.object({reportHubId:Ze,outcome:Bt.literal("not_found")}).strict(),Bt.object({reportHubId:Ze,outcome:Bt.literal("failed")}).strict()]),zp=e=>Bt.object({outcomes:Bt.array(lE)}).strict().superRefine(({outcomes:t},r)=>{t.length!==e.length&&r.addIssue({code:Bt.ZodIssueCode.custom,path:["outcomes"],message:"must hold one outcome per requested id"}),t.forEach((n,o)=>{n.reportHubId!==e[o]&&r.addIssue({code:Bt.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:Bt.ZodIssueCode.custom,path:["outcomes",o,"report","reportHubId"],message:"must be the outcome's id"})})});var Sr=Object.freeze({maxQueryLength:500,maxSets:16,maxWordsPerSet:16,maxWords:32,maxWordLength:100,maxDetailIds:100}),dE=2,Vo=2,Bn=Object.freeze({word:0,reading:1}),Wo=e=>e===Bn.word||e===Bn.reading;var gr=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},cE=2*(1+dE),uE=e=>{if(!Array.isArray(e)||e.length===0||e.length>cE)return null;let t=[],r=new Set;for(let n of e){if(!gr(n))return null;let{text:o,tier:a}=n;if(typeof o!="string"||o.length===0||o.length>Sr.maxWordLength||r.has(o)||!Wo(a)||(t.length===0?a!==Bn.word:a<t[t.length-1].tier))return null;r.add(o),t.push({text:o,tier:a})}return t},pE=(e,t)=>{if(!Array.isArray(e))return null;if(!t)return e.length===0?[]:null;if(e.length===0||e.length>Sr.maxSets)return null;let r=[],n=0;for(let o of e){if(!Array.isArray(o)||o.length===0||o.length>Sr.maxWordsPerSet||(n+=o.length,n>Sr.maxWords))return null;let a=[];for(let s of o){let i=uE(s);if(i===null)return null;a.push(i)}r.push(a)}return r},Kp=(e,t)=>{if(!gr(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=pE(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"||!Ft(l)||d!==null&&(typeof d!="string"||!No(d))||typeof c!="string"||c.length===0)return null;s.push({reportHubId:l,businessDate:d,sourceType:c})}return{items:s,words:a}};var Qa=e=>e.issues.map(t=>`${t.path.length===0?"(root)":t.path.join(".")}: ${t.code}`).join("; ");var mE=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,Pe=(e,t,r)=>new RangeError(`[daily-report] ${e} must be ${t}; got ${mE(r)}`),Ja=(e,t)=>new TypeError(`[daily-report] ${e} must be ${t}`),zo=(e,t,r)=>Pe(e,`one of ${r.map(n=>JSON.stringify(n)).join(", ")}`,t),rt=(e,t,r,n)=>{if(typeof t=="number"&&Number.isSafeInteger(t)&&t>=r&&(n===void 0||t<=n))return t;throw Pe(e,n===void 0?`an integer >= ${r}`:`an integer from ${r} to ${n}`,t)};var es=({hasListener:e,batchSize:t,inFlightBound:r,send:n})=>{rt("createIdBatchScheduler: batchSize",t,1),rt("createIdBatchScheduler: inFlightBound",r,1);let o=new Set,a=new Map,s=!1,i=()=>{let c=[],u=[...o];for(let y=u.length-1;y>=0&&c.length<t;y--){let p=u[y];o.delete(p),e(p)&&c.push(p)}return c.reverse()},l=c=>{let u=new AbortController;a.set(u,c);let y=()=>{a.delete(u),d()},p=m=>{y(),u.signal.aborted&&m===u.signal.reason||globalThis.reportError(m)};n(c,u.signal).then(y,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[y,p]of a)y.signal.aborted||!p.includes(c)||p.some(e)||(y.abort(),u.push(...p));return u},dispose:()=>{let c=[...o];o.clear();for(let[u,y]of a)u.signal.aborted||(u.abort(),c.push(...y));return c}}};var fE=/^[1-9][0-9]*$/,yE=/^(?:0|[1-9][0-9]*)$/,$p=e=>{if(e===null||!fE.test(e))return null;let t=Number(e);return Ft(t)?t:null},Un=e=>{if(e===null||!yE.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null};var RE=2**31-1,ts=(e,t)=>{let r=rt("holdDelayMsOf: maxDelayMs",t,0,RE),n=Un(e.headers.get("Retry-After"));if(n===null)return null;let o=n*1e3;return o<=r?o:null};var Gp={request:e=>requestAnimationFrame(e),cancel:e=>cancelAnimationFrame(e)},jp=({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 xE}from"@aiquants/virtualscroll";import{createContext as CE,useMemo as IE}from"react";import{useContext as hE}from"react";var qt=(e,t,r)=>{let n=hE(e);if(n===null)throw new Error(`[daily-report] ${t} must be used within a ${r}`);return n};import{resolveVirtualScrollLabels as bE,resolveVirtualScrollLocale as SE,VIRTUAL_SCROLL_LABEL_CATALOGS as Yp,VIRTUAL_SCROLL_LABEL_KEYS as kl}from"@aiquants/virtualscroll";var Jp=["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","liveUpdatesRefused","streamRetry","streamRevalidating","selectPrompt","loading","reportNotFound","contentEmpty","contentEmptyPreview","confirmDelete","starAdd","starRemove","markRead","markUnread","markUpdateRead","updatedSinceRead","deleteReport","edit","resizeHandle","resizeHandleHint","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"],em=["totalCount","debounce","streamProgressCount","streamProgressRatio","streamRetrying","reportLoadFailed","reportSummaryLoadFailed","interviewerWithAffiliation","operationFailed","operationRefused","noticeRepeated","rowState","rowEditingState","listRowPosition","listRowPositionInUnknownTotal","searchHitCount","searchFailed","searchMatchedKeywords","searchMatchedKeywordsDescription","searchFieldMatched","searchFieldMatchedByReading","searchFiltersToggle","searchFiltersFailed"],Ml=[...kl,...Jp,...em];var qp=Object.freeze({en:"en-US",ja:"ja-JP"}),gE=Object.freeze({en:new Intl.NumberFormat(qp.en),ja:new Intl.NumberFormat(qp.ja)}),xe=(e,t)=>gE[e].format(t),Xp=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"}),Zp=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"}),EE=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",refused:"\u691C\u7D22\u3059\u308B\u6A29\u9650\u304C\u3042\u308A\u307E\u305B\u3093"}),DE=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",refused:"You are not allowed to search"}),AE=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",refused:"\u7D5E\u308A\u8FBC\u307F\u306E\u5019\u88DC\u3092\u8AAD\u3080\u6A29\u9650\u304C\u3042\u308A\u307E\u305B\u3093"}),TE=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",refused:"You are not allowed to load the filter options"}),wE={unread:"Unread",read:"Read",updatedSinceRead:"Read, updated since"},_E={unread:"\u672A\u8AAD",read:"\u65E2\u8AAD",updatedSinceRead:"\u65E2\u8AAD\u5F8C\u306B\u66F4\u65B0\u3042\u308A"},Pl=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",liveUpdatesRefused:"Live updates stopped: you are not allowed to receive them. Reload the page to see later changes.",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",resizeHandleHint:"Drag or use the arrow keys to resize, or click to step through the preset widths",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: ${xe("en",e)}`,debounce:e=>`Debounce: ${e} ms`,streamProgressCount:e=>`Loading ${xe("en",e)}`,streamProgressRatio:(e,t,r)=>`Loading ${xe("en",e)} / ${xe("en",t)} (${r}%)`,streamRetrying:e=>`Reconnecting... (${xe("en",e)} received)`,reportLoadFailed:e=>`Failed to load report ${xe("en",e)}.`,reportSummaryLoadFailed:e=>`Failed to load the summary of report ${xe("en",e)}.`,interviewerWithAffiliation:(e,t)=>`${e} (${t})`,operationFailed:e=>`Failed to ${Zp[e]}. Please try again later.`,operationRefused:e=>`You are not allowed to ${Zp[e]}.`,noticeRepeated:e=>`(${xe("en",e)} times)`,rowState:({readState:e,isStarred:t})=>`${wE[e]}${t?", starred":""}`,rowEditingState:({isDraft:e})=>e?"Editing draft":"Editing",listRowPosition:(e,t)=>`${xe("en",e)} of ${xe("en",t)}`,listRowPositionInUnknownTotal:e=>`Item ${xe("en",e)}`,searchHitCount:e=>`${xe("en",e)} ${e===1?"hit":"hits"}`,searchFailed:e=>DE[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 (${xe("en",e)})`,searchFiltersFailed:e=>TE[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",liveUpdatesRefused:"\u30E9\u30A4\u30D6\u66F4\u65B0\u3092\u53D7\u3051\u53D6\u308B\u6A29\u9650\u304C\u7121\u3044\u305F\u3081\u3001\u66F4\u65B0\u304C\u6B62\u307E\u308A\u307E\u3057\u305F\u3002\u5F8C\u306E\u5909\u66F4\u3092\u898B\u308B\u306B\u306F\u30DA\u30FC\u30B8\u3092\u8AAD\u307F\u76F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002",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",resizeHandleHint:"\u30C9\u30E9\u30C3\u30B0\u304B\u77E2\u5370\u30AD\u30FC\u3067\u5E45\u3092\u5909\u3048\u3001\u30AF\u30EA\u30C3\u30AF\u3067\u6C7A\u307E\u3063\u305F\u5E45\u3092\u9806\u306B\u5207\u308A\u66FF\u3048\u308B",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: ${xe("ja",e)} \u4EF6`,debounce:e=>`\u30C7\u30D0\u30A6\u30F3\u30B9: ${e} ms`,streamProgressCount:e=>`\u8AAD\u307F\u8FBC\u307F\u4E2D ${xe("ja",e)} \u4EF6`,streamProgressRatio:(e,t,r)=>`\u8AAD\u307F\u8FBC\u307F\u4E2D ${xe("ja",e)} / ${xe("ja",t)} (${r}%)`,streamRetrying:e=>`\u518D\u63A5\u7D9A\u4E2D... (${xe("ja",e)} \u4EF6\u53D7\u4FE1\u6E08)`,reportLoadFailed:e=>`\u65E5\u5831 ${xe("ja",e)} \u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002`,reportSummaryLoadFailed:e=>`\u65E5\u5831 ${xe("ja",e)} \u306E\u6982\u8981\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002`,interviewerWithAffiliation:(e,t)=>`${e} (${t})`,operationFailed:e=>`${Xp[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`,operationRefused:e=>`${Xp[e]}\u306E\u6A29\u9650\u304C\u3042\u308A\u307E\u305B\u3093\u3002`,noticeRepeated:e=>`(${xe("ja",e)} \u56DE\u76EE)`,rowState:({readState:e,isStarred:t})=>`${_E[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 ${xe("ja",t)} \u4EF6\u4E2D ${xe("ja",e)} \u4EF6\u76EE`,listRowPositionInUnknownTotal:e=>`${xe("ja",e)} \u4EF6\u76EE`,searchHitCount:e=>`${xe("ja",e)} \u4EF6\u30D2\u30C3\u30C8`,searchFailed:e=>EE[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 (${xe("ja",e)})`,searchFiltersFailed:e=>AE[e]})}),tm=Object.freeze({en:Object.freeze({...Yp.en,...Pl.en}),ja:Object.freeze({...Yp.ja,...Pl.ja})}),vE=e=>{let t={},r=!1;for(let n of kl){let o=Object.hasOwn(e,n)?e[n]:void 0;o!==void 0&&(t[n]=o,r=!0)}return r?t:void 0},Qp=(e,t,r)=>{e[t]=r},Fl=(e,t)=>{let r=SE(e);if(t===void 0)return tm[r];if(t===null||typeof t!="object")throw Pe("labels","an object",t);let n=Object.getPrototypeOf(t);if(n!==Object.prototype&&n!==null)throw Pe("labels","a plain object (prototype Object.prototype or null)",t);for(let s of Object.keys(t))if(!Ml.includes(s))throw zo("labels key",s,Ml);let a={...bE(r,vE(t)),...Pl[r]};for(let s of Jp){let i=Object.hasOwn(t,s)?t[s]:void 0;if(i!==void 0){if(typeof i!="string"||i.trim()==="")throw Pe(`labels.${s}`,"a non-blank string",i);Qp(a,s,i)}}for(let s of em){let i=Object.hasOwn(t,s)?t[s]:void 0;if(i!==void 0){if(typeof i!="function")throw Pe(`labels.${s}`,"a function",i);Qp(a,s,i)}}return Object.freeze(a)},rm=e=>{let t={};for(let r of kl)t[r]=e[r];return Object.freeze(t)};import{jsx as Hl,jsxs as WE}from"react/jsx-runtime";var LE=e=>({Internal:{label:e.sourceInternal,badgeClassName:"bg-emerald-100 text-emerald-900 dark:bg-emerald-900/30 dark:text-emerald-400"}}),NE=`${ue} text-xs`,OE=({title:e,annotation:t})=>WE("header",{className:"flex flex-wrap items-baseline justify-between gap-2 px-2 py-1",children:[Hl("span",{className:"text-nowrap text-slate-700 text-sm dark:text-slate-200",children:e}),t?Hl("span",{className:NE,children:t}):null]}),Ko=Object.freeze({apiBasePath:"/daily_report/api",ssePath:"/sse/daily_report/updates",renderHeader:OE,showDevControls:!1,headingLevel:3}),nm=["apiBasePath","ssePath","locale","labels","sourceTypeConfigs","renderHeader","showDevControls","headingLevel","onError","onSessionExpired","search"];var ME=e=>{for(let t of Object.keys(e))if(!nm.includes(t))throw zo("config key",t,nm)},om=[2,3,4,5],PE=e=>{if(e===void 0)return Ko.headingLevel;let t=om.find(r=>r===e);if(t===void 0)throw Pe("config.headingLevel",`one of ${om.join(", ")} (the level of each report's heading)`,e);return t},am=["debounceMs","renderFilterSelect"],kE=Object.freeze({min:300,max:5e3}),FE=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null},HE=e=>{if(e===void 0)return null;if(typeof e!="function")throw Pe("config.search.renderFilterSelect","a function (it renders the control of each filter cell)",e);return e},BE=e=>{if(e===void 0)return null;if(!FE(e))throw Pe("config.search","a plain object ({} for Enter only, or { debounceMs })",e);for(let o of Object.keys(e))if(!am.includes(o))throw zo("config.search key",o,am);let t=e.debounceMs,{min:r,max:n}=kE;return{debounceMs:t===void 0?null:rt("config.search.debounceMs",t,r,n),renderFilterSelect:HE(e.renderFilterSelect)}},UE=e=>{for(let[t,r]of Object.entries(e)){let n=r.name;if(n!==void 0&&(typeof n!="string"||n.trim()===""))throw Pe(`config.sourceTypeConfigs.${t}.name`,"a non-blank string (the expansion of the badge label)",n)}return e},VE=e=>{ME(e);let t=e.onSessionExpired;if(t===void 0)throw Ja("config.onSessionExpired","a function (the host decides the navigation on session expiry)");if(typeof t!="function")throw Pe("config.onSessionExpired","a function (the host decides the navigation on session expiry)",t);let r=xE(e.locale),n=Fl(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?LE(n):UE(e.sourceTypeConfigs),renderHeader:e.renderHeader===void 0?o.renderHeader:e.renderHeader,showDevControls:e.showDevControls===void 0?o.showDevControls:e.showDevControls,headingLevel:PE(e.headingLevel),onError:e.onError,onSessionExpired:e.onSessionExpired,search:BE(e.search)}},sm=CE(null),Bl=({config:e,children:t})=>{let r=IE(()=>VE(e),[e]);return Hl(sm.Provider,{value:r,children:t})},Z=()=>qt(sm,"useDailyReportConfig","DailyReportConfigProvider"),Er=(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},rs=(e,t)=>t?.allowComment!==void 0?t.allowComment:!e||e.toLowerCase()==="internal";var im=St(void 0,1,"SessionGate"),zE=()=>{let e=!1,t=0,r=null,n=null,o=null,a=new Set,s=()=>{for(let i of[...a])i()};return{isPaused:()=>e,period:()=>t,subscribe:i=>(a.add(i),()=>{a.delete(i)}),reportSessionEnd:(i,l)=>{e||l!==t||(e=!0,n=r,t+=1,im.info(`The session ended (${i}); the network activity pauses until the host's sessionEpoch changes`),s(),o?.())},setSessionExpiredHandler:i=>{o=i},syncEpoch:i=>{if(r=i,!!e){if(n===null){n=i;return}n!==i&&(e=!1,n=null,t+=1,im.info("The host confirmed a new session; the network activity resumes"),s())}},reset:()=>{e=!1,r=null,n=null,o=null,t+=1}}},ns=(e,t)=>({period:e.period,reportSessionEnd:r=>e.reportSessionEnd(t,r)}),lm=new Map,nt=e=>{let t=lm.get(e);if(t!==void 0)return t;let r=zE();return lm.set(e,r),r};var Kr=(e,t)=>{let r=e.isPaused();return e.subscribe(()=>{let n=e.isPaused();r&&!n&&t(),r=n})};import{tapScrollCircleSampleVisual as KE}from"@aiquants/virtualscroll";var Wn=120,dm=1e3,os=.8,Ul={maxVelocity:18,deceleration:.0018,startVelocityThreshold:.03},as=20,Vl=24,zn=8,$o=Vl+zn,cm=6,ss={reportHubId:-1,businessDate:null},is=240,ls=15,$E=8,um=460,pm=3,mm=440,fm=8,GE={enabled:!0,renderVisual:KE,maxSpeedCurve:{exponentialSteepness:3,exponentialScale:8},maxSpeedMultiplier:8,className:"[[data-daily-report-keyboard-focus]_&]:invisible"},ds={width:$E,tapScrollCircleOptions:GE,enableArrowButtonTabStops:!1},cs=["pen","touch"];var $l=St(void 0,1,"DetailLoader"),ym=(e,t)=>{let r=globalThis[e];return typeof r=="number"&&!Number.isNaN(r)?r:t},Wl=null,fs=()=>(Wl===null&&(Wl={ttl:ym("__DAILY_REPORT_CACHE_TTL__",3e5),reviveMs:ym("__DAILY_REPORT_CACHE_REVIVE_MS__",6e4)}),Wl),le={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=>{le.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=Oo(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()){$l.warn(`Stale update skipped id=${e}`);return}this.set({...n.data,...t},Math.max(n.expiresAt,Date.now()+fs().reviveMs))}},delete(e,t){this.reports.delete(e);let r=Oo(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+fs().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}},Em=(e,t,r=!0)=>le.set(e,t,r),gt=(e,t)=>le.getReport(e,t?.ignoreExpiry),Ut=(e,t)=>le.update(e,t),Rs=(e,t)=>le.delete(e,t),jo=()=>{le.clear(),ps.clear(),iD()},ys=(e,t)=>{let r=le.lastMutations.get(e);(r===void 0||r<t)&&le.lastMutations.set(e,t)},Gl=e=>{ys(e,Date.now())},Dm=e=>{let t=Symbol("mutation-lock"),r=le.lockHolders.get(e);return r===void 0?le.lockHolders.set(e,new Set([t])):r.add(t),ys(e,Date.now()),()=>{let n=le.lockHolders.get(e);n===void 0||!n.delete(t)||(n.size===0&&le.lockHolders.delete(e),ys(e,Date.now()))}},Am=(e,t)=>{let r=performance.now()+t,n=le.lockHolds.get(e);(n===void 0||n<r)&&le.lockHolds.set(e,r),ys(e,Date.now()+t)},Tm=e=>le.recentDeletes.set(e,Date.now()),wm=(e,t)=>{let r=n=>{n===e&&t()};return le.listeners.add(r),()=>{le.listeners.delete(r)}},Dr=(e,t)=>{le.prune(),le.set(t,Date.now()+fs().ttl)},_m=e=>{le.prune();let t=le.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}));le.set({...e,isRead:t?.isRead??!1,isStarred:t?.isStarred??!1,readContentDigest:t?.readContentDigest??null,postedComments:n},Date.now()+fs().ttl)},ZE=zl.object({report:br}),QE=zl.object({reports:zl.array(br)}),Go=class extends Error{constructor(t,r){super(`[daily-report] ${t} answered HTTP ${r}`),this.name="DailyReportReadHttpError",this.status=r}},vm=(e,t)=>new Go(e,t),JE=e=>e instanceof Go&&e.status===401,Rm=e=>e instanceof Go&&e.status===403,eD=e=>new Error(`[daily-report] ${je.reports} answered the outcome failed for report ${e}`),jl=async(e,t,r)=>{if(!e.ok)throw vm(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 (${Qa(n.error)})`);return n.data},tD=async(e,t)=>{let r=le.getReport(t);if(r)return r;let n=le.pendingReports.get(t);if(n)return n;let o=Date.now(),a=new URLSearchParams({[Ve.reportHubId]:String(t)}),s=fetch(`${e}/${je.report}?${a}`,{cache:"no-cache"}).then(i=>jl(i,ZE,je.report)).then(({report:i})=>le.cacheMany([i],null,o)[0]).finally(()=>le.pendingReports.delete(t));return le.pendingReports.set(t,s),s},ps=new Map,rD=1e4,nD=(e,t)=>{let r=ps.get(t),n=Date.now();if(r&&n-r.at<rD)return r.inFlight;let o=Yl(e,t,{forceRefresh:!0}),a={at:n,inFlight:o};return ps.set(t,a),o.finally(()=>{ps.get(t)===a&&(a.inFlight=null)}).catch(()=>{}),o},Yl=async(e,t,r={})=>{let n=r.forceRefresh?null:le.getList(t);if(n)return n;let o=le.pendingLists.get(t);if(o)return o;let a=Date.now(),s=new URLSearchParams({[Ve.businessDate]:t}),i=fetch(`${e}/${je.businessDate}?${s}`,{cache:"no-cache"}).then(l=>jl(l,QE,je.businessDate)).then(({reports:l})=>le.cacheMany(l,t,a)).finally(()=>le.pendingLists.delete(t));return le.pendingLists.set(t,i),i},oD=async(e,t,r)=>{let n=le.getList(r)!==null,a=(await Yl(e,r)).find(i=>i.reportHubId===t);if(a!==void 0)return a;if(!n)return null;let s=await nD(e,r);return s===null?null:s.find(i=>i.reportHubId===t)??null},aD=5e3,Kl=new Map,sD=e=>{let t=new Map,r=new Map,n=new Map,o=new Set,a=(p,m)=>{let f=[];for(let S of p)r.get(S)===m&&(r.delete(S),f.push(S));return f},s=(p,m)=>{let f=t.get(p);if(f!==void 0){t.delete(p),o.delete(p);for(let S of f)m(S)}},i=(p,m)=>{let S=setTimeout(()=>{for(let h of p)n.delete(h),t.has(h)&&(o.add(h),u.enqueue(h))},m);for(let h of p)n.set(h,S)},l=(p,m,f)=>{let S=[];for(let h of p)m!==null&&t.has(h)&&!o.has(h)?S.push(h):s(h,D=>D.reject(f));m!==null&&S.length>0&&i(S,m)},d=(p,m)=>{let f=[];for(let D of p)D.outcome==="ok"&&f.push(D.report);let S=le.cacheMany(f,null,m),h=0;for(let{reportHubId:D,outcome:b}of p){if(r.delete(D),b==="failed"){let g=eD(D);s(D,E=>E.reject(g));continue}let R=b==="ok"?S[h++]:null;s(D,g=>g.resolve(R))}},c=async(p,m)=>{for(let h of p)r.set(h,m);let f=Date.now(),S=new URLSearchParams({[Ve.reportIds]:p.join(",")});try{let h=await fetch(`${e}/${je.reports}?${S}`,{cache:"no-cache",signal:m});if(h.status===429){l(a(p,m),ts(h,aD),vm(je.reports,h.status));return}let{outcomes:D}=await jl(h,zp(p),je.reports);if(m.aborted)return;d(D,f)}catch(h){for(let D of a(p,m))s(D,b=>b.reject(h))}},u=es({hasListener:p=>t.has(p),batchSize:Sr.maxDetailIds,inFlightBound:Vo,send:c}),y=jp({frames:Gp,handOn:p=>{for(let m of p)u.enqueue(m)}});return{readers:t,pending:r,holds:n,retried:o,gate:y,scheduler:u}},iD=()=>{for(let{readers:e,pending:t,holds:r,retried:n,gate:o,scheduler:a}of Kl.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)}},hm=new DOMException("The detail reader left its batched read","AbortError"),lD=(e,t,r)=>new Promise((n,o)=>{let a=Kl.get(e);a===void 0&&(a=sD(e),Kl.set(e,a));let{readers:s,pending:i,holds:l,retried:d,gate:c,scheduler:u}=a,y={resolve:n,reject:o},p=s.get(t);p===void 0?s.set(t,new Set([y])):p.add(y),c.holds(t)||u.isWanted(t)||i.has(t)||l.has(t)||c.enter(t);let m=()=>{let f=s.get(t);if(!(f===void 0||!f.delete(y))&&(o(r.reason),!(f.size>0))){s.delete(t),d.delete(t),c.leave(t);for(let S of u.release(t))i.delete(S)}};r.addEventListener("abort",m,{once:!0})}),Kn=jE("date"),dD=Object.freeze({report:null,error:null,isLoading:!1,isRefetching:!1}),cD=Object.freeze({report:null,error:new Error("Invalid ID"),isLoading:!1,isRefetching:!1}),uD=Object.freeze({report:null,error:null,isLoading:!0,isRefetching:!1}),bm=new WeakMap,pD=e=>{let t=bm.get(e);if(t!==void 0)return t;let r=Object.freeze({report:e,error:null,isLoading:!1,isRefetching:!1});return bm.set(e,r),r},ms=(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)}},Sm=(e,t,r)=>{if(t<0)return dD;if(t===0)return cD;let{report:n}=ms(e,t,r);return n===null?uD:pD(n)},mD=(e,t)=>Object.keys(t).some(n=>e[n]!==t[n])?Object.freeze({...e,...t}):e,us=()=>{},fD=({apiBasePath:e,detailSource:t,cache:r})=>{let n=new Map,o=nt(e),a=new Set,s=(p,m)=>{let f=mD(p.record,m);if(f!==p.record){p.record=f;for(let S of p.listeners)S()}},i=p=>{let m=n.get(p);if(m===void 0)return;let{report:f,isStale:S}=ms(r,p,m.dateKey);s(m,f!==null&&!S&&m.record.isRefetching?{report:f,error:null,isLoading:!1,isRefetching:!1}:{report:f})},l=(p,m,f)=>{let{record:S}=m;if(S.report!==null&&S.error===null&&!Rm(f)){$l.warn(`Refetch failed, the shown report stays id=${p}`,f),s(m,{isLoading:!1,isRefetching:!1});return}s(m,{error:f,isLoading:!1,isRefetching:!1})},d=(p,m)=>{let{dateKey:f}=m,{report:S,isStale:h}=ms(r,p,f);if(S!==null&&!h)return s(m,{report:S,error:null,isLoading:!1,isRefetching:!1}),us;if(o.isPaused())return a.add(p),s(m,{isLoading:S===null&&m.record.report===null,isRefetching:!1}),us;s(m,{isLoading:S===null,isRefetching:!0});let D=null,b=!1,R=async()=>{let E,w=o.period();try{t==="ids"?(D=new AbortController,E=await lD(e,p,D.signal)):f!==null?E=await oD(e,p,f):E=await tD(e,p)}catch(x){if(b)return;let L=x instanceof Error?x:new Error("Load failed");if(JE(L)){o.reportSessionEnd("detail-read",w),a.add(p),s(m,{isLoading:m.record.report===null&&m.record.error===null,isRefetching:!1});return}l(p,m,L);return}b||s(m,{report:E,error:null,isLoading:!1,isRefetching:!1})};if(S===null)return R(),()=>{b=!0,D?.abort(hm)};let g=setTimeout(R,Wn);return()=>{b=!0,clearTimeout(g),D?.abort(hm)}},c=(p,m)=>{let{record:f}=m;return f.isRefetching?!1:f.error!==null?!Rm(f.error):ms(r,p,m.dateKey).isStale},u=(p,m)=>{let f=Oo(m),S={record:Sm(r,p,f),dateKey:f,listeners:new Set,stop:us};return n.size===0&&r.listeners.add(i),n.set(p,S),S.stop=d(p,S),S},y=(p,m)=>{n.delete(p),n.size===0&&r.listeners.delete(i),m.stop()};return Kr(o,()=>{let p=[...a];a.clear();for(let m of p){let f=n.get(m);f!==void 0&&(f.stop(),f.stop=d(m,f))}}),{read:p=>{let m=n.get(p);return m===void 0?Sm(r,p,null):m.record},subscribe:(p,m,f)=>{if(p<=0)return us;let S=n.get(p),h=S===void 0?u(p,m):S;return!h.listeners.has(f)&&c(p,h)&&(h.stop(),h.stop=d(p,h)),h.listeners.add(f),()=>{!h.listeners.delete(f)||h.listeners.size>0||y(p,h)}}}},yD={date:new Map,ids:new Map},RD=(e,t)=>{let r=yD[t],n=r.get(e);if(n!==void 0)return n;let o=fD({apiBasePath:e,detailSource:t,cache:le});return r.set(e,o),o},un=()=>{let{apiBasePath:e}=Z(),t=gm(Kn);return RD(e,t)},ql=(e,t)=>{let r=un(),[n,o]=XE(()=>({reportHubId:e,resource:r.read(e)})),a=n;return n.reportHubId!==e&&(a={reportHubId:e,resource:r.read(e)},o(a)),qE(()=>{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},Xl=()=>{let{apiBasePath:e}=Z(),t=gm(Kn);return YE(r=>{if(t==="ids")return;let n=Oo(r);n&&!le.getList(n)&&Yl(e,n).catch(o=>$l.warn("Prefetch error",n,o))},[e,t])};import{VIRTUAL_SCROLL_LABEL_KEYS as hD}from"@aiquants/virtualscroll";import{useRef as bD}from"react";var hs=()=>{let{locale:e,labels:t}=Z(),r=rm(t),n=bD(null),o=n.current;return o!==null&&hD.every(a=>o[a]===r[a])?{locale:e,labels:o}:(n.current=r,{locale:e,labels:r})};import{useState as SD}from"react";var We=e=>{let[t]=SD(()=>({current:e()}));return t};import{useLayoutEffect as CD,useState as ID}from"react";import{flushSync as LD}from"react-dom";var Im=Object.freeze({visibilityProperty:!0}),xm=new Set(["auto","scroll"]),Cm=new Set(["","true","plaintext-only"]),Lm=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=Mm(n)?n.host:null}return!1},gD=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(Im))return!0;return!1},Nm=e=>e.localName==="area"?gD(e):e.checkVisibility(Im),ED=e=>{let t=e.getAttribute("contenteditable");if(t===null||!Cm.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(Cm.has(o))return!1;if(o==="false")return!0}return!0},DD=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&&Nm(n)&&(r=n)}return r===e},AD=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&&xm.has(a.overflowX)||n&&xm.has(a.overflowY)},TD=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 ED(e)}},wD=/^[\t\n\f\r ]*[+-]?\d/,_D=e=>{let t=e.getAttribute("tabindex");return t!==null&&wD.test(t)?e.tabIndex:null},Om=(e,t)=>{for(let r of Ql(e))if(t(r)||Om(r,t))return!0;return!1},bs=(e,t)=>{let r=t.get(e);if(r!==void 0)return r;let n=vD(e,t);return t.set(e,n),n},vD=(e,t)=>{if(!Jl(e))return"none";let r=_D(e),n=r===null&&TD(e),o=r===null&&!n&&AD(e);return!(r!==null||n||o)||e.matches(":disabled")||Lm(e)||!Nm(e)?"none":r!==null?r>=0?"sequential":"programmatic":n?e.localName==="input"&&e.type==="radio"?DD(e)?"sequential":"programmatic":"sequential":Om(e,a=>bs(a,t)==="sequential")?"none":"sequential"},Zl=(e,t)=>{for(let r of Ql(e))t(r),Zl(r,t)},Ql=e=>{if(ke(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 Yo=(e,t)=>{let r=[],n=[],o=[],a=new Map;if(e===t)return Zl(e,l=>{bs(l,a)==="sequential"&&n.push(l)}),{before:r,within:n,after:o};let s=!1,i=(l,d)=>{for(let c of Ql(l)){let u=c===t;!u&&bs(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}},Ss=e=>{let t=[],r=new Map;return Zl(e,n=>{bs(n,r)==="sequential"&&t.push(n)}),t},ke=e=>e!==null&&"nodeType"in e&&e.nodeType===e.ELEMENT_NODE,Jl=e=>"focus"in e&&"blur"in e,xD=e=>e.nodeType===e.DOCUMENT_NODE,Mm=e=>e.nodeType===e.DOCUMENT_FRAGMENT_NODE&&"host"in e,mt=e=>{let t=e.getRootNode();if(Mm(t)){let r=t.activeElement;return r===null?mt(t.host):r}return xD(t)?t.activeElement:null},pn=e=>{let t=mt(e);return t===null||t===t.ownerDocument.body||Lm(t)},Ye=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 gs=e=>{let[t,r]=ID(null);return CD(()=>{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?LD(()=>r(l)):r(l)},s=l=>{for(let d of l)a(d.borderBoxSize[0].blockSize)},i=new(Ye(n)).ResizeObserver(s);return i.observe(n,{box:"border-box"}),()=>i.disconnect()},[e]),t};var Pm=255,ed=[null],km=new Map,Es=[void 0],Fm=new Map,rr=e=>{if(e===null)return 0;let t=km.get(e);if(t!==void 0)return t;let r=ed.length;return ed.push(e),km.set(e,r),r},Ar=e=>{let t=ed[e];if(t===void 0)throw new Error(`[daily-report] No business date has the code ${e}`);return t},qo=e=>{if(e===void 0)return 0;let t=Fm.get(e);if(t!==void 0)return t;let r=Es.length;if(r>Pm)throw new Error(`[daily-report] The rows hold more than ${Pm} distinct source types; ${e} has no code`);return Es.push(e),Fm.set(e,r),r},mn=e=>{if(!(Number.isInteger(e)&&e>=0&&e<Es.length))throw new Error(`[daily-report] No source type has the code ${e}`);return Es[e]},tr=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:Ar(this.businessDateCodes[r]),sourceType:mn(this.sourceTypeCodes[r])}}items(){let t=[];for(let r=0;r<this.length;r++)t.push(this.itemAt(r));return t}businessDateAt(t){return Ar(this.businessDateCodes[this.rowIndexOf(t)])}sourceTypeAt(t){return mn(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}`)}},Hm=e=>{if(e instanceof tr)return e;throw new Error("[daily-report] A row batch the package did not build has no code columns")},Vt=new tr(0,new Float64Array(0),new Uint32Array(0),new Uint8Array(0)),ND=Float64Array.BYTES_PER_ELEMENT+Uint32Array.BYTES_PER_ELEMENT+Uint8Array.BYTES_PER_ELEMENT,$n=e=>{let t=new ArrayBuffer(e*ND),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)}},Tr=(e,t,r)=>{if(r===0)return Vt;let n=t+r;return new tr(r,e.ids.subarray(t,n),e.businessDateCodes.subarray(t,n),e.sourceTypeCodes.subarray(t,n))},OD=16,Xt=class{constructor(t=OD){this.count=0;this.columns=null;this.initialCapacity=rt("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,rr(t.businessDate),qo(t.sourceType))}pushFrom(t,r){this.push(t.ids[r],t.businessDateCodes[r],t.sourceTypeCodes[r])}build(){let t=this.columns;return t===null?Vt:Tr(t,0,this.count)}grow(){let t=this.columns,r=$n(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}},td=e=>{let t=new Xt(e.length);for(let r of e)t.pushItem(r);return t.build()};var Zt=10,Xo=1<<Zt,jn=Xo-1,MD=Xo,PD=MD/2,Gn=new Map,od=new Map,ad=(e,t,r)=>e.businessDate===t&&e.sourceType===r,kD=(e,t,r)=>{let n=Gn.get(e),o=n===void 0?od.get(e):n;return o!==void 0&&ad(o,t,r)?o:void 0},Ds=(e,t,r)=>{let n=Ar(t),o=mn(r),a=Gn.get(e);if(a!==void 0&&ad(a,n,o))return a;let s=a===void 0?od.get(e):void 0,i=s!==void 0&&ad(s,n,o)?s:{reportHubId:e,businessDate:n,sourceType:o};return Gn.set(e,i),Gn.size>=PD&&(od=Gn,Gn=new Map),i},Bm=(e,t,r)=>{let n=Ar(t),o=mn(r),a=kD(e,n,o);return a===void 0?{reportHubId:e,businessDate:n,sourceType:o}:a};var _t=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 Um(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=Bm(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}}}}},As=new _t([],0),Um=(e,t)=>{let r=e.chunks[t>>>Zt],n=t&jn;return Ds(r.ids[n],r.businessDateCodes[n],r.sourceTypeCodes[n])},fn=(e,t)=>e.chunks[t>>>Zt].ids[t&jn],Yn=(e,t)=>e.chunks[t>>>Zt].businessDateCodes[t&jn],id=(e,t)=>e.chunks[t>>>Zt].sourceTypeCodes[t&jn],rd={businessDate:null,reportHubId:0},nd={businessDate:null,reportHubId:0},qn=(e,t,r,n)=>(rd.reportHubId=e,rd.businessDate=Ar(t),nd.reportHubId=r,nd.businessDate=Ar(n),Up(rd,nd)),Vm=e=>{if(e.length===0)return As;let t=[];return Wm(t,e,e.length),new _t(t,e.length)},Wm=(e,t,r)=>{for(let n=0;n<r;n+=Xo)e.push(Tr(t,n,Math.min(Xo,r-n)))},yn={removals:[],replacements:[],additions:Vt,insertions:[]},FD=e=>{let t=$n(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)),Tr(t,0,e.length)},HD=(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>>>Zt,d=n.get(l);d===void 0&&(d=FD(e.chunks[l]),n.set(l,d),r[l]=d);let c=o&jn;d.ids[c]=a,d.businessDateCodes[c]=s,d.sourceTypeCodes[c]=i}return new _t(r,e.length)},Xn=(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,w)=>E-w),a=[...t.replacements].sort((E,w)=>E.index-w.index);if(o.length===0&&r.length===0)return HD(e,a);let s=e.length,i=s-o.length+r.length;if(i===0)return As;let d=Math.min(o.length===0?s:o[0],a.length===0?s:a[0].index,r.length===0?s:n[0])>>>Zt,c=e.chunks.slice(0,d),u=d<<Zt,y=i-u,p=y===0?Vt:$n(y),m=0,f=()=>{if(m===y)throw new Error(`[daily-report] Edits of a list of ${s} rows write more than the ${i} rows they leave`);return y-m},S=(E,w,x)=>{f(),p.ids[m]=E,p.businessDateCodes[m]=w,p.sourceTypeCodes[m]=x,m+=1},h=(E,w)=>{for(let x=E;x<w;){let L=e.chunks[x>>>Zt],M=x&jn,P=Math.min(w-x,Xo-M,f());p.ids.set(L.ids.subarray(M,M+P),m),p.businessDateCodes.set(L.businessDateCodes.subarray(M,M+P),m),p.sourceTypeCodes.set(L.sourceTypeCodes.subarray(M,M+P),m),m+=P,x+=P}},D=d<<Zt,b=0,R=0,g=0;for(;;){let E=Math.min(b<o.length?o[b]:s,R<a.length?a[R].index:s,g<r.length?n[g]:s);for(h(D,E),D=E;g<r.length&&n[g]===E;g++)S(r.ids[g],r.businessDateCodes[g],r.sourceTypeCodes[g]);if(E===s)break;if(b<o.length&&o[b]===E)b+=1,D=E+1;else if(R<a.length&&a[R].index===E){let w=a[R];S(w.id,w.businessDateCode,w.sourceTypeCode),R+=1,D=E+1}}return Wm(c,p,m),new _t(c,u+m)},Zo=(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<<Zt)+s}return-1},zm=(e,t)=>{let r=Zo(e,t);return r===-1?void 0:Um(e,r)},sd=(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(Bm(s,e.businessDateCodes[a],e.sourceTypeCodes[a]))}return t.set(e,o),o},Km=(e,t,r)=>{let n=[];if(!(e instanceof _t)){for(let o of e)r(o.reportHubId)&&n.push(o);return n}for(let o of e.chunks){let a=sd(o,t,r);for(let s=0;s<a.length;s++)n.push(a[s])}return n},$m=(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=sd(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=sd(t.chunks[l],r,n);for(let c=0;c<d.length;c++)i.push(d[c])}return{before:s,after:i}};var Gm=(e,t)=>Number.isInteger(t)&&t>=0&&t<e.length,Fe=(e,t)=>Gm(e,t)?e.at(t):void 0,BD=(e,t)=>e instanceof _t?Gm(e,t)?fn(e,t):void 0:Fe(e,t)?.reportHubId,UD=16,jm=(e,t)=>e!==null&&e.reportHubId===t?e.index:null,He=(e,t,r)=>{let n=r===null?void 0:Fe(e,r);if(r!==null&&n!==void 0){if(n.reportHubId===t)return r;for(let o=1;o<=UD;o++){if(Fe(e,r+o)?.reportHubId===t)return r+o;if(Fe(e,r-o)?.reportHubId===t)return r-o}}return nr(e,t)},nr=(e,t)=>{if(e instanceof _t)return Zo(e,t);let r=0;for(let n of e){if(n.reportHubId===t)return r;r+=1}return-1},ld=e=>{let t=Fe(e,0);return t===void 0?null:t.reportHubId};var or=(e,t)=>{let r=Fe(e,t);if(r===void 0)throw Ym(e,t);return r},Ts=(e,t)=>{let r=BD(e,t);if(r===void 0)throw Ym(e,t);return r},Ym=(e,t)=>new Error(`[daily-report] No report at index ${t} of a list of ${e.length}`);var ws="data-daily-report-row",qm=`[${ws}]`,Xm="data-daily-report-button",_s="data-daily-report-row-focus",vs={[_s]:""},Zm="data-daily-report-view",xs={[Zm]:""},dd="treegrid",VD='button, a[href], input, textarea, select, label, [role="button"], [contenteditable]:not([contenteditable="false"])',WD=/^[1-9]\d*$/,Qm=e=>{if(e===null||!WD.test(e))return null;let t=Number(e);return Number.isSafeInteger(t)?t:null},Jm=e=>e.querySelector(`[${Zm}] [role="${dd}"]`),ef=e=>e.querySelector(`[${_s}]`),Rn=(e,t)=>{if(t===null||!ke(e))return null;let r=e.closest(qm);return r===null||r===t||!t.contains(r)?null:r},Qo=e=>Qm(e.getAttribute(ws)),$r=e=>Qm(e.getAttribute("aria-posinset")),tf=e=>{let t=e.closest(qm),r=t===null?null:$r(t);return r===null?null:r-1},rf=(e,t)=>{if(e===null)return null;let r=Qo(e);if(r===null)return null;let n=$r(e),o=He(t,r,n===null?null:n-1);return o===-1?null:{reportHubId:r,index:o}},nf=(e,t)=>{if(!ke(e))return!1;let r=e.closest(VD);return r!==null&&r!==t&&t.contains(r)};import{createContext as of}from"react";var hn=of(0),Gr=-1,af=(e,t)=>t.phase==="complete"?e:t.totalCount===null?Gr:Math.max(e,t.totalCount),bn=of(-1);import{flushSync as zD}from"react-dom";var KD=()=>({deferring:!1,measuring:!1,queuedObservations:new Set,queuedMeasurements:new Set,frame:0}),sf=(e,t)=>{e.queuedObservations.add(t),e.measuring&&e.queuedMeasurements.add(t)},lf=e=>{let t=new Set,r=KD(),n=[],o=null,a=()=>{try{zD(()=>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?sf(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),sf(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 y of r.queuedObservations)u.observe(y);r.queuedObservations.clear()},c=y=>{r.deferring=!0,r.measuring=!0,l.cancelAnimationFrame(r.frame),r.frame=l.requestAnimationFrame(d);for(let p of y)n.push([p.target,p.borderBoxSize[0].blockSize]);a(),s(),queueMicrotask(i)},u=new l.ResizeObserver(c);for(let y of t)u.observe(y);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 Cs=(e,t)=>{if(!(Number.isFinite(t)&&t>0))throw Pe(e,"a finite number > 0",t)},df=({seedPx:e,quantumPx:t})=>{Cs("createRowHeightEstimate: quantumPx",t),Cs("createRowHeightEstimate: seedPx",e);let r=l=>Math.ceil(l/t)*t;if(r(e)!==e)throw Pe("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(Cs("RowHeightEstimate.record: nextPx",d),l!==null){Cs("RowHeightEstimate.record: previousPx",l);let u=o.get(l);if(u===void 0)throw Pe("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 bf}from"@aiquants/virtualscroll";import{createContext as Sf,useCallback as Rd,useContext as md,useLayoutEffect as cd,useReducer as $D,useRef as cf}from"react";import{flushSync as uf}from"react-dom";var GD=1/2,jD=32,YD=8,Zn=16,qD=5,XD=3,ZD=1.5,fd=2,pf=1e3/60,QD=1,JD=1,yd=()=>{},Qn=Object.freeze({visible:0,reach:1,near:2,far:3}),Is=Object.freeze({capture:!0,passive:!0}),ud=Object.freeze({type:"sync-release"}),mf=Object.freeze({type:"deferred-visible"}),eA=Object.freeze({type:"oversize-frame"}),gf=(e,t)=>({sorted:new Float64Array(e),arrivals:new Float64Array(e),known:t,count:0,next:0,p50:null,p90:null}),ff=()=>({frameTime:0,onTime:0,start:0,inputEpoch:0,interval:0,units:0,reservoir:null,busy:null,rows:[]}),pd=(e,t)=>({kind:Object.freeze({sizing:e,change:t}),...gf(jD,YD)}),yf=e=>({body:pd(e,"body"),box:pd(e,"box"),marks:pd(e,"marks")}),Rf=(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])},tA=e=>{e.count=0,e.next=0,e.p50=null,e.p90=null},hf=(e,t)=>{let r=e[0];for(let n=1;n<t;n++)e[n]<r&&(r=e[n]);return r},rA=(e,t)=>e.zone!==t.zone?e.zone<t.zone:e.second!==t.second?e.second<t.second:e.third<t.third,nA=(e,t)=>{t.zone=e.zone,t.second=e.second,t.third=e.third,t.paneReach=e.paneReach},Jo=e=>(e<pf-QD?pf:e)-fd,oA=e=>(Math.round(Jo(e)/e)-1+ZD)*e,Ef=({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,y=new Map,p={fixed:yf("fixed"),measured:yf("measured")},m=Object.values(p).flatMap(N=>Object.values(N)),f=null,S=null,h=0,D=null,b=1,R=null,g=null,E=null,w=!1,x=1,L=!1,M={zone:0,second:0,third:0,paneReach:!1},P={zone:0,second:0,third:0,paneReach:!1},B=N=>{i!==void 0&&i(N)},T=N=>{if(R===null)return!1;let z=Jo(R),{p50:j}=p[N.sizing][N.change];return j!==null&&j>z||N.sizing==="measured"&&g!==null&&g>z&&t()},A=()=>{if(R===null)return!1;let N=Jo(R);if(g!==null&&g>N)return!0;for(let{p50:z}of m)if(z!==null&&z>N)return!0;return!1},C=()=>{let N=o();return N!==null&&D!==null&&N!==D&&(b=N>D?1:-1),D=N,N},I=(N,z,j)=>T(N)||z==="far"&&j!==b,$=(N,z,j,te,ye)=>{M.zone=N.deferredVisible?Qn.visible:Qn[z],M.second=j===null?Number.POSITIVE_INFINITY:te===null?j:Math.abs(j-te),M.third=ye===-b?1:0,M.paneReach=!1},k=(N,z,j,te,ye)=>{let ie=te.visibleStartIndex,J=te.visibleEndIndex,re=j===null?0:j>J?1:j<ie?-1:0,De=j===null?Number.POSITIVE_INFINITY:re===1?j-J:re===-1?ie-j:0,q=ye&&re===x&&De<=J-ie+1;M.zone=N.deferredVisible||z==="visible"?Qn.visible:z==="reach"||q?Qn.reach:Qn.near,M.second=j===null||re===-x?1:0,M.third=De,M.paneReach=q},U=()=>{let N=t(),z=C(),j=!N&&E!==null&&(z===null||z<E.renderingStartIndex||z>E.renderingEndIndex)?E:null,te=j!==null&&w,ye=null;for(let ie of l.values()){let J=ie.handle.getZone(),re=a(ie.reportHubId),De=re===null||z===null?0:Math.sign(re-z);N&&I(ie,J,De)||te&&T(ie)||(j===null?$(ie,J,re,z,De):k(ie,J,re,j,te),!(ye!==null&&!rA(M,P))&&(ye=ie,nA(M,P)))}return ye},G=()=>{if(!t())return l.size>0;let N=C();for(let z of l.values()){let j=a(z.reportHubId);if(!I(z,z.handle.getZone(),j===null||N===null?0:Math.sign(j-N)))return!0}return!1},V=()=>t()&&h>0&&!A()?!0:G(),W=N=>{l.get(N.reportHubId)===N&&(l.delete(N.reportHubId),N.unsubscribeZone())},de=()=>{f!==null&&f.wake()},ge=()=>{L=!1;let N=d;d=c,c=N;for(let z=N.size;z>0;z--)B(ud);try{uf(()=>{for(let z of N.values())z.apply()})}finally{N.clear()}};return{gridId:e,enqueue:(N,z)=>{let j=l.get(N.reportHubId);j!==void 0&&W(j),d.delete(N.reportHubId);let te=t(),ye=N.handle.getZone()==="visible";if(!te&&ye)return z==="commit"?(B(ud),N.apply(),yd):(d.set(N.reportHubId,N),L||(L=!0,queueMicrotask(ge)),()=>{d.get(N.reportHubId)===N&&d.delete(N.reportHubId)});let ie=te&&ye&&T(N),J={...N,deferredVisible:ie,unsubscribeZone:N.handle.subscribeZone(()=>{let re=N.handle.getZone();if(re==="visible"){if(t()&&T(N)){if(J.deferredVisible)return;J.deferredVisible=!0,B(mf);return}W(J),B(ud),N.apply();return}re!=="far"&&de()})};return l.set(N.reportHubId,J),ie&&B(mf),de(),()=>{W(J)}},declareRow:N=>{if(N==="fixed")return yd;h+=1,h===1&&de();let z=!0;return()=>{z&&(z=!1,h-=1)}},declareBody:(N,z,j)=>{let te={handle:z,body:j,fresh:j!==null};return u.set(N,te),j!==null&&y.set(j,N),z.setSkippable(j===null),()=>{u.get(N)===te&&u.delete(N),j!==null&&y.get(j)===N&&y.delete(j)}},measured:N=>{let z=y.get(N),j=z===void 0?void 0:u.get(z);j===void 0||j.body!==N||(j.fresh=!1,j.handle.setSkippable(!0))},invalidate:N=>{let z=u.get(N);if(!(z===void 0||z.body===null)){if(z.fresh){z.fresh=!1;return}z.handle.setSkippable(!1),S!==null&&S(z.body)}},attach:(N,z)=>{if(f!==null)throw new Error("[daily-report] the row pass is connected to a view's window already; disconnect it before connecting it again");let j=new N.MessageChannel,te="idle",ye=0,ie=null,J=null,re=[ff()],De=0,q=0,ne=re[0],Ct=new Float64Array(Zn),Qe=0,It=0,st=new Float64Array(Zn),pt=0,it=0,bt=0,Gt=0,jt=0,wt=0,_=gf(qD,XD),O=0,H=n.appliedEpoch(),X=null;R=null,g=null;let ae=()=>{te!=="idle"||!V()||(te="arming",j.port1.postMessage(null))},me=()=>{te==="arming"&&(te="framing",ye=N.requestAnimationFrame(he))},Y=fe=>{let Oe=p[fe.sizing][fe.change];W(fe),uf(fe.apply),ne.reservoir=ne.units===0||ne.reservoir===Oe?Oe:null,ne.units+=1,i!==void 0&&ne.rows.push(fe.reportHubId)},oe=(fe,Oe)=>{ne.interval=fe;let Be=U();if(Be===null){wt=0;return}let{zone:lt,paneReach:Lt}=P,Je=p[Be.sizing][Be.change].p90,Mr=fe-fd-Oe;if(Je===null?Oe>fe/2:Je>Mr&&Oe>fd){let Pr=lt<=Qn.reach;if(!Lt&&(!Pr||wt<JD)){i!==void 0&&i({type:"late-frame",frameTime:ne.frameTime}),wt=Pr?wt+1:0;return}i!==void 0&&i({type:"late-forced-frame",frameTime:ne.frameTime})}if(wt=0,Y(Be),Je===null)return;let ur=GD*fe;if(Je>ur){B(eA);return}let Jt=Je;for(let Pr=U();Pr!==null&&f===On;Pr=U()){let Ia=p[Pr.sizing][Pr.change].p90;if(Ia===null||Jt+Ia>ur||Jt+Ia>Mr)return;Y(Pr),Jt+=Ia}},Le=()=>{let fe=s();E=fe===null?null:fe.range,w=!1,fe!==null&&J!==null&&fe.position!==J&&(w=!0,x=fe.position>J?1:-1),J=fe===null?null:fe.position},F=(fe,Oe,Be)=>{let lt=De;if(lt-q===re.length){let Lt=Array.from({length:2*re.length},ff);for(let Je=q;Je<lt;Je++)Lt[Je%Lt.length]=re[Je%re.length];re=Lt}return De=lt+1,ne=re[lt%re.length],ne.frameTime=fe,ne.onTime=Oe,ne.start=Be,ne.inputEpoch=bt,ne.units=0,ne.reservoir=null,ne.busy=null,ne.rows.length=0,lt},K=(fe,Oe)=>{Rf(_,fe),O+=1,g=_.p50,i!==void 0&&i({type:"key-frame",frameTime:Oe,busy:fe,stepP50:g,samples:O,interval:R,limit:R===null?null:Jo(R)})},se=(fe,Oe,Be)=>{let lt=Be!==H;H=Be,t()&<&&fe.units===0&&R!==null&&Oe>=oA(R)&&K(Oe,fe.frameTime)},he=fe=>{ye=0;let Oe=N.performance.now(),Be=Oe-fe;st[it]=Be,it=(it+1)%Zn,pt=Math.min(pt+1,Zn);let lt=fe+hf(st,pt),Lt=n.appliedEpoch(),Je=null;if(ie!==null){let ur=fe-ie.frameTime,{busy:Jt}=ie;Jt!==null&&Jt<=ur/2&&(Ct[It]=ur,It=(It+1)%Zn,Qe=Math.min(Qe+1,Zn),R=hf(Ct,Qe)),Je=R,Jt===null&&se(ie,Oe-ie.onTime,Lt)}Le(),C();let Mr=bt!==Gt||Lt!==jt||n.pending();Gt=bt,jt=Lt;let Nt=F(fe,lt,Oe);if(ie=ne,Je!==null&&!Mr&&oe(Je,Oe-lt),f===On){if(j.port2.postMessage(Nt),!V()){te="idle",ie=null,J=null,wt=0,X=Nt;return}ye=N.requestAnimationFrame(he)}},_e=fe=>{let Oe=fe.data,Be=re[Oe%re.length];q=Oe+1;let lt=n.appliedEpoch();jt=lt;let Lt=N.performance.now(),Je=Oe!==De-1;if(!Je){let Jt=Lt-Be.onTime;Be.busy=Jt,t()&&Oe!==X&<!==H&&Be.units===0&&K(Jt,Be.frameTime),H=lt}let{units:Mr,reservoir:Nt}=Be;if(Mr===0)return;let ur=null;!Je&&Nt!==null&&Be.inputEpoch===bt&&(ur=(Lt-Be.start)/Mr,Rf(Nt,ur)),i!==void 0&&i({type:"unit-frame",frameTime:Be.frameTime,units:Mr,kind:Nt===null?null:Nt.kind,cost:ur,p50:Nt===null?null:Nt.p50,p90:Nt===null?null:Nt.p90,budget:Jo(Be.interval),rows:Be.rows.splice(0)})},$e=()=>te==="framing"||h===0||A()?!1:(te="framing",ye=N.requestAnimationFrame(he),!0),Yt=()=>{if(t()){D=o(),tA(_),O=0,g=null;let fe=$e();i!==void 0&&i({type:"hold-start",interval:R,listening:fe});return}i!==void 0&&i({type:"hold-end",interval:R,stepP50:g,samples:O}),ae()},Or=()=>{bt+=1},On={wake:ae};j.port2.onmessage=me,j.port1.onmessage=_e,N.addEventListener("keydown",Or,Is),N.addEventListener("keyup",Or,Is),f=On,S=z;let mg=r(Yt);return ae(),()=>{mg(),N.removeEventListener("keydown",Or,Is),N.removeEventListener("keyup",Or,Is),ye!==0&&N.cancelAnimationFrame(ye),j.port1.onmessage=null,j.port2.onmessage=null,j.port1.close(),j.port2.close(),f=null,S=null,R=null,g=null}}}},Ls=Sf(null),ea=Sf(null),hd=e=>{let t=md(Ls);if(t===null)throw new Error(`[daily-report] ${e} is called outside a view's rows (no row pass)`);return t},Df=()=>hd("useViewGridId").gridId,Ns=(e,t,r)=>{let n=hd("useRowPass"),o=bf(),[a,s]=$D(()=>({bodyReady:!0,rendered:t.read()}),t,c=>({bodyReady:o.getZone()==="visible",rendered:c.read()})),i=cf(a),l=cf(yd),d=Rd(c=>{let u=i.current,y=t.read();if(u.bodyReady&&Object.is(u.rendered,y)){l.current();return}let p=u.bodyReady?t.changesBox(u.rendered,y)?"box":"marks":"body";l.current=n.enqueue({reportHubId:e,handle:o,apply:s,sizing:r,change:p},c)},[n,e,o,t,r]);return cd(()=>n.declareRow(r),[n,r]),cd(()=>{let c=t.subscribe(()=>d("notification"));return()=>{c(),l.current()}},[t,d]),cd(()=>{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},Af=e=>{let t=hd("useRowBodyDeclaration"),r=bf();return Rd(o=>t.declareBody(e,r,o),[t,e,r])},Tf=()=>{let e=md(Ls),t=md(ea);return Rd(()=>{e!==null&&t!==null&&e.invalidate(t)},[e,t])};import{clsx as aA}from"clsx";import{twMerge as sA}from"tailwind-merge";function v(...e){return sA(aA(e))}var ze=e=>{let t=new Map;return r=>{let n=r===void 0?"":r,o=t.get(n);if(o!==void 0)return o;let a=v(e,n);return t.set(n,a),a}};import{useCallback as wf,useMemo as iA,useSyncExternalStore as lA}from"react";var _f="(prefers-reduced-motion: reduce)",vf=e=>Ye(e).matchMedia(_f).matches?"instant":"smooth",dA=Object.freeze({...Ul,startVelocityThreshold:Number.POSITIVE_INFINITY}),Jn=e=>e?dA:Ul,cA=()=>!1,uA=()=>{},eo=e=>{let t=iA(()=>e===null?null:Ye(e).matchMedia(_f),[e]),r=wf(o=>t===null?uA:(t.addEventListener("change",o),()=>t.removeEventListener("change",o)),[t]),n=wf(()=>t===null?!1:t.matches,[t]);return lA(r,n,cA)};import{useSyncExternalStore as pA}from"react";import{jsx as bd}from"react/jsx-runtime";var Os=()=>{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)})}},xf=16,mA=v(vu,"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"),fA=(e,t)=>e==="vertical"?{top:0,left:-xf,transform:`translate(-100%, calc(${t}px - 50%))`}:{top:-xf,left:0,transform:`translate(calc(${t}px - 50%), -100%)`},Ms=({orientation:e,thumbCenter:t,isDragging:r,isTapScrollActive:n,store:o})=>{let{label:a,isWheelScrollActive:s}=pA(o.subscribe,o.getState,o.getState);return a.trim()&&(r||n||s)?bd("div",{className:"pointer-events-none absolute flex items-center",style:fA(e,t),children:bd("div",{className:mA,children:bd("span",{className:"whitespace-nowrap font-semibold text-slate-800 dark:text-slate-100",children:a.trim()})})}):null};import{createContext as yA,useContext as RA,useLayoutEffect as hA,useRef as bA}from"react";var Sd=yA(null),Ps=({items:e,scroller:t,readTopReportId:r})=>{let n=RA(Sd),o=n===null?null:n.request,a=bA(o===null?0:o.seq);hA(()=>{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:nr(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 Cc,useCallback as xn,useContext as Bx,useEffect as lb,useLayoutEffect as db,useMemo as Eo,useRef as xc}from"react";var ks="Internal",SA=e=>e.trim().toLowerCase();var gA=e=>e===ks,Sn=(e,t)=>e!=null&&typeof t=="string"&&t!==""&&e.userId===t&&gA(e.sourceType);var Fs="legacy-",EA=e=>`${Fs}${e}`,Cf=(e,t,r,n)=>{if(typeof n!="string"||n.trim()==="")throw Pe("mergeComments: unknownAuthorName","a non-blank string",n);let o=e.map((s,i)=>({id:EA(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]},If=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 DA=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}`}),AA=e=>e.startsWith(Fs)?Un(e.slice(Fs.length))!==null:$p(e)!==null,to=e=>{if(DA.includes(e))return!0;let t=e.split(":");switch(t[0]){case"interviewer":return t.length===3&&Un(t[1])!==null&&(t[2]==="name"||t[2]==="affiliation");case"attachment":return t.length===2&&Un(t[1])!==null;case"comment":return t.length===3&&AA(t[1])&&(t[2]==="author"||t[2]==="content");default:return!1}},TA=16777619,wA=2166136261,_A=(e,t,r,n)=>{let o=e;for(let a=r;a<n;a++)o^=t.charCodeAt(a),o=Math.imul(o,TA);return o>>>0},gd=e=>_A(wA,e,0,e.length),vA=String.fromCodePoint(3),xA=String.fromCodePoint(2),CA=String.fromCodePoint(1),Lf=e=>gd(e.map(t=>t.map(r=>r.map(n=>`${n.tier}${n.text}`).join(vA)).join(xA)).join(CA));import{createContext as Gy,useCallback as di,useEffect as Ky,useLayoutEffect as $y,useMemo as $d,useRef as zd,useState as sr}from"react";import{z as Ie}from"zod/v3";var Nf=Object.freeze(["create","update","publish","delete","toggleStar","toggleRead","addComment","deleteComment","clearCache"]);var Et=Object.freeze({intent:"intent",clientTempId:"clientTempId",businessDate:"businessDate",operationTimestamp:"operationTimestamp",reportHubId:"reportHubId",title:"title",content:"content",isStarred:"isStarred",isRead:"isRead",contentDigest:"contentDigest",commentId:"commentId"}),Hs=e=>{let t=new FormData;if(t.append(Et.intent,e.intent),e.intent==="clearCache"||(t.append(Et.clientTempId,e.clientTempId),e.businessDate!==null&&t.append(Et.businessDate,e.businessDate),e.operationTimestamp!==null&&t.append(Et.operationTimestamp,String(e.operationTimestamp)),e.intent==="create"))return t;switch(t.append(Et.reportHubId,String(e.reportHubId)),e.intent){case"update":return e.changes.title!==void 0&&t.append(Et.title,e.changes.title),e.changes.content!==void 0&&t.append(Et.content,e.changes.content),t;case"publish":case"delete":return t;case"toggleStar":return t.append(Et.isStarred,String(e.value)),t;case"toggleRead":return t.append(Et.isRead,String(e.value)),e.value&&t.append(Et.contentDigest,e.contentDigest),t;case"addComment":return t.append(Et.content,e.content),t;case"deleteComment":return t.append(Et.commentId,String(e.commentId)),t}},IA=()=>{let e=Ze,t=Ie.string().regex(Ya),r=Ie.literal("OK"),n=Ie.object({isStarred:Ie.boolean(),isRead:Ie.boolean(),readContentDigest:Ie.string().regex(Mo).nullable()}),o=Ie.number().int().nonnegative().nullable();return{create:Ie.object({status:r,intent:Ie.literal("create"),reportHubId:e,clientTempId:t,report:br}),update:Ie.object({status:r,intent:Ie.literal("update"),reportHubId:e,clientTempId:t}),publish:Ie.object({status:r,intent:Ie.literal("publish"),reportHubId:e,clientTempId:t,report:br.nullable()}),delete:Ie.object({status:r,intent:Ie.literal("delete"),reportHubId:e,clientTempId:t}),toggleStar:Ie.object({status:r,intent:Ie.literal("toggleStar"),reportHubId:e,clientTempId:t,updatedStatus:n,operationTimestamp:o}),toggleRead:Ie.object({status:r,intent:Ie.literal("toggleRead"),reportHubId:e,clientTempId:t,updatedStatus:n,operationTimestamp:o}),addComment:Ie.object({status:r,intent:Ie.literal("addComment"),reportHubId:e,clientTempId:t,newComment:Cl}),deleteComment:Ie.object({status:r,intent:Ie.literal("deleteComment"),reportHubId:e,clientTempId:t,deletedCommentId:Ze}),clearCache:Ie.object({status:r,intent:Ie.literal("clearCache")})}},Ed=null,LA=()=>(Ed===null&&(Ed=IA()),Ed),Of=(e,t)=>{let r=LA()[e].safeParse(t);return r.success?{result:r.data}:{mismatch:Qa(r.error)}};import{useState as PA}from"react";var Bs=e=>{let t=e>>>0,r=(e-t)/4294967296|0;return Math.imul(t^Math.imul(r,1540483477),2654435761)>>>0},wr=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=Bs(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=Bs(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=Bs(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=Bs(this.idAt(a))>>>n;for(;this.slots[s]!==-1;)s=s+1&r;this.slots[s]=a}}};var NA=e=>e.appended instanceof tr&&e.replaced.previous instanceof tr&&e.replaced.next instanceof tr&&e.removed instanceof tr,Ad=e=>{if(NA(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`)},Us=1,Vs=2,gn=3,Mf=16,OA=8192,MA=Float64Array.BYTES_PER_ELEMENT+2*Uint32Array.BYTES_PER_ELEMENT+3*Uint8Array.BYTES_PER_ELEMENT,Dd=e=>{let t=new ArrayBuffer(e*MA),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)}},Pf=Object.freeze({previous:Vt,next:Vt}),Td=()=>{let e=0,t=Dd(Mf),r=d=>t.ids[d],n=new wr(r),o=()=>{let d=Dd(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 y=n.find(d);if(y===-1){let p=a(d,Us);t.lastDates[p]=c,t.lastSources[p]=u;return}if(t.states[y]!==gn)throw new Error(`[daily-report] The ids stream list took report ${d}, which it already holds`);t.states[y]=Vs,t.lastDates[y]=c,t.lastSources[y]=u},i=(d,c,u,y,p)=>{let m=n.find(d);if(m===-1)m=a(d,Vs),t.firstDates[m]=c,t.firstSources[m]=u;else if(t.states[m]===gn)throw new Error(`[daily-report] The ids stream list changed report ${d}, which it no longer holds`);t.lastDates[m]=y,t.lastSources[m]=p},l=(d,c,u)=>{let y=n.find(d);if(y===-1){let p=a(d,gn);t.firstDates[p]=c,t.firstSources[p]=u;return}if(t.states[y]===Us){n.delete(d),t.states[y]=0;return}if(t.states[y]===gn)throw new Error(`[daily-report] The ids stream list dropped report ${d}, which it no longer holds`);t.states[y]=gn};return{add:s,change:i,remove:l,fold:d=>{let{removed:c,appended:u,replaced:y}=Ad(d),{previous:p,next:m}=y;for(let f=0;f<c.length;f++)l(c.ids[f],c.businessDateCodes[f],c.sourceTypeCodes[f]);for(let f=0;f<m.length;f++)i(m.ids[f],p.businessDateCodes[f],p.sourceTypeCodes[f],m.businessDateCodes[f],m.sourceTypeCodes[f]);for(let f=0;f<u.length;f++)s(u.ids[f],u.businessDateCodes[f],u.sourceTypeCodes[f])},isEmpty:()=>n.size===0,build:(d,c)=>{let u=0,y=0,p=0;for(let R=0;R<e;R++){let g=t.states[R];g===Us?u+=1:g===Vs?y+=1:g===gn&&(p+=1)}let m=u+2*y+p;if(m===0)return{base:d,revision:c,appended:Vt,replaced:Pf,removed:Vt};let f=$n(m),S=0,h=u,D=h+y,b=D+y;for(let R=0;R<e;R++){let g=t.states[R];g===Us?(f.ids[S]=t.ids[R],f.businessDateCodes[S]=t.lastDates[R],f.sourceTypeCodes[S]=t.lastSources[R],S+=1):g===Vs?(f.ids[h]=t.ids[R],f.businessDateCodes[h]=t.firstDates[R],f.sourceTypeCodes[h]=t.firstSources[R],h+=1,f.ids[D]=t.ids[R],f.businessDateCodes[D]=t.lastDates[R],f.sourceTypeCodes[D]=t.lastSources[R],D+=1):g===gn&&(f.ids[b]=t.ids[R],f.businessDateCodes[b]=t.firstDates[R],f.sourceTypeCodes[b]=t.firstSources[R],b+=1)}return{base:d,revision:c,appended:Tr(f,0,u),replaced:y===0?Pf:{previous:Tr(f,u,y),next:Tr(f,u+y,y)},removed:Tr(f,u+2*y,p)}},reset:()=>{if(e=0,t.ids.length<=OA){n.clear();return}t=Dd(Mf),n=new wr(r)}}},kf=(e,t,r)=>{let n=Td();for(let o of e)n.fold(o);return n.build(t,r)},Ff=(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 kA={items:As,held:new Map,hidden:new Map,revision:null,settled:!1},wd=(e,t,r)=>{let n=0,o=e.length;for(;n<o;){let a=n+o>>1;qn(fn(e,a),Yn(e,a),t,r)<0?n=a+1:o=a}return n<e.length&&fn(e,n)===t?n:-1},Ws=(e,t)=>wd(e,t.reportHubId,rr(t.businessDate)),_d=(e,t,r,n)=>{let o=n,a=e.length;for(;o<a;){let s=o+a>>1;qn(fn(e,s),Yn(e,s),t,r)<=0?o=s+1:a=s}return o},FA=(e,t)=>{if(t.length===0)return[];let r=e.length-1;if(e.length===0||qn(fn(e,r),Yn(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=_d(e,t.ids[a],t.businessDateCodes[a],o),n.push(o);return n},HA=e=>{for(let t=1;t<e.length;t++)if(qn(e.ids[t-1],e.businessDateCodes[t-1],e.ids[t],e.businessDateCodes[t])>=0)return!1;return!0},Bf=e=>{if(HA(e))return e;let t=Array.from({length:e.length},(n,o)=>o);t.sort((n,o)=>qn(e.ids[n],e.businessDateCodes[n],e.ids[o],e.businessDateCodes[o]));let r=new Xt(e.length);for(let n of t)r.pushFrom(e,n);return r.build()},Uf=(e,t,r,n)=>{let o=Hm(t.readRows()),a=new wr(d=>o.ids[d]);for(let d=0;d<o.length;d++)a.set(o.ids[d],d);let s=new Xt(o.length+e.held.size),i=new Map;for(let d=0;d<o.length;d++){let c=o.ids[d];n.has(c)?i.set(c,o.itemAt(d)):s.pushFrom(o,d)}let l=new Map;for(let d of e.items.chunks)for(let c=0;c<d.length;c++){let u=d.ids[c];if(a.find(u)!==-1||n.has(u))continue;let y=e.held.get(u),p=y===void 0?Number.NEGATIVE_INFINITY:y.since;r&&u>0&&t.itemsRevision>p||(l.set(u,{item:y===void 0?Ds(u,d.businessDateCodes[c],d.sourceTypeCodes[c]):y.item,since:p}),s.pushFrom(d,c))}return{items:Vm(Bf(s.build())),held:l,hidden:i,revision:t.itemsRevision,settled:r}},BA=(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?[]:Ff(t.itemsChanges,o);if(o===null||a===null)return Uf(e,t,r,n);let s=e.items,i=[],l=[],d=a.length===0?null:a.length===1?Ad(a[0]):kf(a,o,t.itemsRevision),c=new Xt(d===null?0:d.appended.length+d.replaced.next.length),u=null,y=()=>(u===null&&(u=new Map(e.held)),u),p=null,m=()=>(p===null&&(p=new Map(e.hidden)),p);if(d!==null){let{appended:D,replaced:b,removed:R}=d;for(let E=0;E<R.length;E++){let w=R.ids[E];if(e.hidden.has(w)&&m().delete(w),e.held.has(w))continue;let x=wd(s,w,R.businessDateCodes[E]);x!==-1&&(r||n.has(w)?i.push(x):y().set(w,{item:Ds(w,Yn(s,x),id(s,x)),since:Number.NEGATIVE_INFINITY}))}let g=(E,w,x)=>{let L=E.ids[w],M=E.businessDateCodes[w],P=E.sourceTypeCodes[w],B=e.held.get(L);B!==void 0&&y().delete(L);let T=B===void 0?x:rr(B.item.businessDate),A=T===-1?-1:wd(s,L,T);if(n.has(L)){A!==-1&&i.push(A),m().set(L,E.itemAt(w));return}if((p===null?e.hidden:p).has(L)&&m().delete(L),A!==-1&&Yn(s,A)===M){id(s,A)!==P&&l.push({index:A,id:L,businessDateCode:M,sourceTypeCode:P});return}A!==-1&&i.push(A),c.push(L,M,P)};for(let E=0;E<b.next.length;E++)g(b.next,E,b.previous.businessDateCodes[E]);for(let E=0;E<D.length;E++)g(D,E,-1)}let f=t.itemsRevision;if(r)for(let[D,b]of u===null?e.held:u){if(D<=0||f<=b.since)continue;let R=Ws(s,b.item);R!==-1&&i.push(R),y().delete(D)}let S=Bf(c.build());return{items:Xn(s,{removals:i,replacements:l,additions:S,insertions:FA(s,S)}),held:u===null?e.held:u,hidden:p===null?e.hidden:p,revision:f,settled:r}},Hf=new WeakMap,UA=(e,t,r,n)=>{let o=Hf.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=BA(e,t,r,n);return Hf.set(e,{revision:t.itemsRevision,changes:t.itemsChanges,settled:r,tombstones:n,rows:a}),a},Vf=(e,t,r)=>{let[n,o]=PA(()=>Uf(kA,e,t,r));return(n.revision!==e.itemsRevision||n.settled!==t)&&o(a=>UA(a,e,t,r)),[n,o]},zs=(e,t,r)=>{if(e.hidden.has(t.reportHubId))return vd(e,t.reportHubId);if(e.held.has(t.reportHubId)||Ws(e.items,t)!==-1||Zo(e.items,t.reportHubId)!==-1)return e;let n=Xn(e.items,{...yn,additions:td([t]),insertions:[_d(e.items,t.reportHubId,rr(t.businessDate),0)]}),o=new Map(e.held);return o.set(t.reportHubId,{item:t,since:r}),{...e,items:n,held:o}},vd=(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:Xn(e.items,{...yn,additions:td([r]),insertions:[_d(e.items,r.reportHubId,rr(r.businessDate),0)]}),hidden:n}},En=(e,t)=>{let r=e.held.get(t);if(r===void 0)return e;let n=Ws(e.items,r.item),o=new Map(e.held);return o.delete(t),{...e,items:Xn(e.items,n===-1?yn:{...yn,removals:[n]}),held:o}},Wf=(e,t)=>{let r=e.held.get(t.reportHubId),n=Ws(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:Xn(e.items,n===-1?yn:{...yn,removals:[n]}),held:o}},zf=e=>({...e,revision:null});import{useSyncExternalStore as VA}from"react";var Ks=e=>{let t=nt(e);return VA(t.subscribe,t.isPaused,t.isPaused)};import{startTransition as tT,useLayoutEffect as rT,useState as nT,useSyncExternalStore as oa}from"react";var Kf=e=>{let t=new URLSearchParams;return e.cursor!==null&&(t.set(Ve.cursorReportHubId,String(e.cursor.reportHubId)),e.cursor.businessDate!==null&&t.set(Ve.cursorBusinessDate,e.cursor.businessDate)),e.snapshot!==null&&t.set(Ve.cursorSnapshot,e.snapshot),e.forceRefresh&&t.set(Ve.forceRefresh,"true"),t};var ta=1,WA=2,zA=1024,ro=1024,$s=class{constructor(){this.used=0;this.holes=0;this.ids=new Float64Array(ro);this.dates=new Uint32Array(ro);this.sources=new Uint8Array(ro);this.flags=new Uint8Array(ro);this.positions=new wr(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:Ar(this.dates[t]),sourceType:mn(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]=ta,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>=zA&&this.holes>this.positions.size&&this.compact()}markSeen(t){let r=this.positions.find(t);r!==-1&&(this.flags[r]|=WA)}clearSeen(){for(let t=0;t<this.used;t++)this.flags[t]&=ta}unseenIds(){let t=[];for(let r=0;r<this.used;r++)this.flags[r]===ta&&t.push(this.ids[r]);return t}rows(){let t=new Xt(this.positions.size);for(let r=0;r<this.used;r++)(this.flags[r]&ta)!==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]&ta)!==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(ro,t*4)&&this.resize(Math.max(ro,t*2))}};var $f=()=>{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 KA=e=>({debug:e,info:e,warn:e,error:e}),$A=50,GA=32,Gf=0,jA=()=>(Gf+=1,Gf),YA=1e3,qA=3e4,XA=6,ZA=3e4,jf=Symbol("read-stall"),QA=Object.freeze({reading:()=>{},stalled:()=>!1,stop:()=>{}}),JA="/daily_report/api",eT=e=>typeof e=="object"&&e!==null&&e.name==="AbortError",Gs=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.paused=!1;this.revalidationInterrupted=!1;this.wakeRetryWait=null;this.handleOnline=()=>this.wakeRetryWait?.();this.publishCoalesceTimer=null;this.lastItemsPublishAt=Number.NEGATIVE_INFINITY;this.pendingItemsChange=Td();this.apiBasePath=t.apiBasePath??JA,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=St(t.warn===void 0?void 0:KA(t.warn),1,"IdsStream").warn,this.readStallTimeoutMs=t.readStallTimeoutMs??ZA,this.publishCoalesceMs=t.publishCoalesceMs??$A,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.paused||this.state.phase!=="failed"||(this.consecutiveFailures=0,this.runStreamLoop({revalidate:this.state.hasCompletedOnce,forceRefresh:!1}))}refresh(t={}){if(!(this.disposed||this.paused)){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||this.paused)){if(this.state.phase==="streaming"||this.state.phase==="retrying"){this.pendingForceRefresh=!0;return}this.refresh({forceRefresh:!0})}}pause(){if(!(this.disposed||this.paused||(this.paused=!0,!(this.state.phase==="streaming"||this.state.phase==="retrying"||this.state.isRevalidating)))){if(this.loopGeneration+=1,this.activeAbortController?.abort(),this.wakeRetryWait?.(),this.state.isRevalidating&&this.state.hasCompletedOnce){this.revalidationInterrupted=!0,this.publish({isRevalidating:!1});return}this.publish({phase:"auth-required",isRevalidating:!1})}}resume(){if(!(this.disposed||!this.paused)){if(this.paused=!1,this.consecutiveFailures=0,this.state.phase==="auth-required"){if(this.state.hasCompletedOnce){this.revalidationInterrupted=!1,this.publish({phase:"complete"}),this.refresh();return}this.runStreamLoop({revalidate:!1,forceRefresh:!1});return}this.revalidationInterrupted&&(this.revalidationInterrupted=!1,this.refresh())}}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,rr(t.businessDate),qo(o));this.rows.markSeen(t.reportHubId),a&&this.schedulePublishItems()}applyExternalRemoval(t){this.disposed||(this.externalRemovalTombstones.add(t),this.deleteItem(t)&&this.schedulePublishItems())}has(t){return this.rows.find(t)!==-1}readRows(){let t=this.rows.rows();if(this.pendingItemsChange.isEmpty())return t;let{appended:r,replaced:n,removed:o}=this.pendingItemsChange.build(this.state.itemsRevision,this.state.itemsRevision),a=new Set;for(let l=0;l<r.length;l++)a.add(r.ids[l]);let s=new Map;for(let l=0;l<n.previous.length;l++)s.set(n.previous.ids[l],l);let i=new Xt(t.length+o.length);for(let l=0;l<t.length;l++){let d=t.ids[l];if(a.has(d))continue;let c=s.get(d);c===void 0?i.pushFrom(t,l):i.pushFrom(n.previous,c)}for(let l=0;l<o.length;l++)i.pushFrom(o,l);return i.build()}dispose(){this.disposed=!0,this.loopGeneration+=1,this.activeAbortController?.abort(),this.cancelScheduledPublishItems(),this.wakeRetryWait?.(),typeof window<"u"&&window.removeEventListener("online",this.handleOnline),this.listeners.clear()}async runStreamLoop(t){let r=++this.loopGeneration;for(this.activeAbortController?.abort(),this.wakeRetryWait?.(),this.lastCursor===null&&(this.rows.clearSeen(),this.externalRemovalTombstones.clear(),this.lastSnapshot=null),t.forceRefresh&&(this.pendingForceRefresh=!1),this.publish({phase:t.revalidate?this.state.phase:"streaming",isRevalidating:t.revalidate,error:null});!this.disposed&&r===this.loopGeneration;){let n=await this.streamOnce(t.forceRefresh);if(this.disposed||r!==this.loopGeneration)return;if(n.kind==="complete"){this.pruneUnseenItems(),this.consecutiveFailures=0,this.cancelScheduledPublishItems();let o=this.takePendingItems();this.publish({phase:"complete",isRevalidating:!1,hasCompletedOnce:!0,completedAt:Date.now(),error:null,...o}),this.pendingForceRefresh&&!this.disposed&&(this.pendingForceRefresh=!1,this.lastCursor=null,this.runStreamLoop({revalidate:!0,forceRefresh:!0}));return}if(n.kind==="aborted")return;if(n.kind==="auth-required"){this.paused=!0,this.publish({phase:"auth-required",isRevalidating:!1});return}if(n.kind==="refused"){this.pendingForceRefresh=!1,this.publish(t.revalidate&&this.state.hasCompletedOnce?{isRevalidating:!1,error:n.error}:{phase:"failed",isRevalidating:!1,error:n.error});return}if(this.consecutiveFailures+=1,this.consecutiveFailures>=XA){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(YA*2**(this.consecutiveFailures-1),qA))}}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===jf)return r.abort(),{kind:"retryable",error:new Error("Stream stalled: no response headers within timeout")};if(o.status===401)return{kind:"auth-required"};if(o.status===403)return{kind:"refused",error:new Error("ids stream HTTP 403 (refused)")};if(!(o.ok&&o.body))return{kind:"retryable",error:new Error(`ids stream HTTP ${o.status}`)};let a=o.body.getReader(),s=$f(),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),y=!1,p=!1;for(let m of u){if(m.trim()==="")continue;let f;try{f=JSON.parse(m)}catch{p=!0;break}let S=Ol(f);if(S==="unknown"){this.warn("skipped line of unknown kind");continue}if(S==="error"){l=!0;continue}let h=Fp(f);if(h===null){p=!0;break}y=this.absorbChunkLine(h)||y,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(y&&(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 eT(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(jf),this.readStallTimeoutMs*3);t.then(a=>{this.clearTimeoutFn(o),r(a)},a=>{this.clearTimeoutFn(o),n(a)})})}watchReadSilence(t){if(this.readStallTimeoutMs<=0)return QA;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=rr(null),s,i=qo(void 0),l=(d,c,u)=>{this.externalRemovalTombstones.has(d)||(c!==o&&(o=c,a=rr(c)),u!==s&&(s=u,i=qo(u)),this.putItem(d,a,i)&&(n=!0),r||this.rows.markSeen(d))};return Hp(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=jA(),r=this.pendingItemsChange.build(this.state.itemsRevision,t);return this.pendingItemsChange.reset(),{loadedCount:this.rows.size,itemsRevision:t,itemsChanges:[...this.state.itemsChanges.slice(1-GA),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=Kf({cursor:this.lastCursor,snapshot:this.lastCursor===null?null:this.lastSnapshot,forceRefresh:t}).toString();return`${this.apiBasePath}/${Za}${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 oT=6e4,be=null,Yf=!1,ra=new Set,js={loadedCount:0,itemsRevision:0,itemsChanges:[],totalCount:null,phase:"idle",isRevalidating:!1,hasCompletedOnce:!1,completedAt:null,error:null,streamAnchor:null},xd=()=>{for(let e of ra)e()},Cd=()=>{be&&(be.unsubscribe(),be.client.dispose(),be=null,xd())},na=e=>{if(typeof window>"u")return;let t=e.apiBasePath??Ko.apiBasePath;if(be&&(be.userKey!==e.userKey||be.apiBasePath!==t)&&(be.userKey!==e.userKey&&jo(),Cd()),!be){let r=new Gs({apiBasePath:t});be={client:r,userKey:e.userKey,apiBasePath:t,unsubscribe:r.subscribe(xd)},aT(),r.start(),xd();return}qs(be)},qs=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>oT&&e.client.refresh()},aT=()=>{if(Yf||typeof document>"u"||typeof window>"u")return;Yf=!0;let e=()=>{be&&qs(be)};document.addEventListener("visibilitychange",()=>{document.visibilityState==="visible"&&e()}),window.addEventListener("focus",e)},Id=e=>{if(!(typeof window>"u")){if(!be){na(e);return}if(be.userKey!==e.userKey){jo(),Cd(),na(e);return}qs(be)}},Ld=()=>{typeof window>"u"||!be||qs(be)},no=e=>{be?.client.applyExternalUpsert(e)},oo=e=>{be?.client.applyExternalRemoval(e)},Xf=e=>be===null?!1:be.client.has(e),Zf=()=>be===null?Vt:be.client.readRows(),Nd=()=>be===null?0:be.client.getState().itemsRevision,Xs=()=>{be?.client.retry()},Zs=()=>{be?.client.resync()},Qf=()=>{be?.client.pause()},Jf=()=>{be?.client.resume()},aa=(e={})=>{be?.client.refresh(e)},ey=()=>be?.userKey,sa=e=>(ra.add(e),()=>ra.delete(e)),Ys=()=>be?.client.getState()??js,sT=()=>js,iT=()=>oa(sa,Ys,sT),Qs=(e,t)=>{let r=js,n=e(js);return()=>{let o=Ys();if(o===r)return n;let a=e(o);return r=o,t(n,a)||(n=a),n}},ty=Qs(({phase:e,hasCompletedOnce:t,isRevalidating:r,error:n,streamAnchor:o,loadedCount:a})=>({phase:e,hasCompletedOnce:t,isRevalidating:r,error:n,streamAnchor:o,hasItems:a>0}),(e,t)=>e.phase===t.phase&&e.hasCompletedOnce===t.hasCompletedOnce&&e.isRevalidating===t.isRevalidating&&e.error===t.error&&e.streamAnchor===t.streamAnchor&&e.hasItems===t.hasItems),lT=ty(),ao=()=>oa(sa,ty,()=>lT),ry=Qs(({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),dT=ry(),ny=()=>oa(sa,ry,()=>dT),oy=Qs(({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),cT=oy(),ay=()=>oa(sa,oy,()=>cT),sy=Qs(({phase:e,totalCount:t})=>({phase:e,totalCount:t}),(e,t)=>e.phase===t.phase&&e.totalCount===t.totalCount),uT=sy(),iy=()=>oa(sa,sy,()=>uT),ly=e=>e.phase==="complete"&&!e.isRevalidating,qf=e=>`${e.itemsRevision}:${ly(e)}`,dy=()=>{let[,e]=nT(0),t=Ys(),r=qf(t);return rT(()=>{let n=r,o=()=>{let a=qf(Ys());a!==n&&(n=a,tT(()=>e(s=>s+1)))};return ra.add(o),o(),()=>{ra.delete(o)}},[]),{itemsRevision:t.itemsRevision,itemsChanges:t.itemsChanges,readRows:Zf,settled:ly(t)}};import.meta.hot?.dispose(Cd);var Js=(e,t,r)=>{if(!Number.isFinite(e)||e<=0)throw Pe("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 pT=3e4,cy=e=>{let t=Js(pT,e,()=>{});return{add:r=>t.add(r,!0),has:r=>t.get(r)===!0}},so=(e,t)=>e.has(t)?e:new Set(e).add(t),uy=(e,t)=>{if(!e.has(t))return e;let r=new Set(e);return r.delete(t),r},py=new Set,my=()=>new Set,fy=()=>new Map,yy=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()}}}},Ry=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 Od=0,Md=e=>{let t=rt("drawTemporaryId: nowMs",e,1);return Od=Math.min(-t,Od-1),Od};var _r=(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 Pd=St(void 0,1,"ActionProvider"),mT=1e3,ia=class extends Error{constructor(t,r){super(`[daily-report] ${t} answered HTTP ${r}`),this.name="DailyReportActionHttpError",this.status=r}},kd=class extends Error{constructor(t){super(`[daily-report] ${t} was not sent: the session ended and the host has not confirmed a new one`),this.name="DailyReportSessionPausedError"}},Tk=Object.freeze(["delete","deleteComment"]),fT=e=>e.intent==="create"?null:e.reportHubId,yT=(e,t)=>{let r=e;if(r.intent==="clearCache"||r.clientTempId!==t.clientTempId)return!1;let n=fT(t);return n===null||r.reportHubId===n},RT="0".repeat(64),hy=e=>{let{apiBasePath:t,labels:r,user:n,items:o,sessionGate:a,isSessionStillOurs:s,ownEchoIds:i,ledgers:l,writeLedgers:d,pendingAddPromises:c,removedIds:u,searchRemovedIds:y,setRemovedVersion:p,setRows:m,drafts:f,invalidateSearch:S,announceDataChange:h,notifyError:D}=e,b=async(T,A,C={})=>{let{intent:I}=T;if(a.isPaused())throw new kd(I);let $=a.period(),{onGone:k}=A,{lockedReportHubId:U}=C,G=U===void 0?null:Dm(U);A.onOptimistic?.(),i.add(T.clientTempId);let V=()=>{if(!s())throw Pd.warn(`[executeAction] ${I} resolved after a user switch; discarding continuation`),new Error(`Stale continuation for ${I}`)};try{let W=await fetch(`${t}/${je.action}`,{method:"POST",body:Hs(T),headers:{Accept:"application/json"}});if(W.status===404&&k!==void 0)return V(),k();if(W.status===401)throw a.reportSessionEnd("write",$),new ia(I,W.status);if(!W.ok)throw new ia(I,W.status);let de=Of(I,await W.json());if("mismatch"in de)throw new Error(`[daily-report] ${I} answered a body that is not its result (${de.mismatch})`);let{result:ge}=de;if(!yT(ge,T))throw new Error(`[daily-report] ${I} answered another request`);return V(),A.onSuccess(ge)}catch(W){if(Pd.error(`${I} failed:`,W),s()){A.onFailure?.();let de=W instanceof ia?W.status:null;de===403?D({operation:I,reason:"refused",message:r.operationRefused(I),cause:W}):de!==401&&D({operation:I,reason:"failed",message:r.operationFailed(I),cause:W})}throw W}finally{G?.()}},R=(T,A,C)=>({reportHubId:T,clientTempId:C,businessDate:typeof A=="string"?A:null,operationTimestamp:Date.now()});return{addComment:async(T,A,C)=>{let I=Md(Date.now()),$=b({...R(T,C,String(I)),intent:"addComment",content:A},{onOptimistic:()=>{d(({pendingAddCommentIds:k})=>{let U=k.get(T);U===void 0?k.set(T,new Map([[I,A]])):U.set(I,A)})},onSuccess:({newComment:k})=>{let U=k.id;d(({resolvedIdMap:V,pendingAddCommentIds:W})=>{V.set(I,U),W.get(T)?.delete(I)}),S();let G=gt(T,{ignoreExpiry:!0});return G&&!G.postedComments.some(V=>V.id===U)&&Ut(T,{postedComments:[...G.postedComments,{...k,isMine:!0,userName:_r(n,r.unknownUser)}]}),U},onFailure:()=>{d(({pendingAddCommentIds:k})=>k.get(T)?.delete(I))}}).finally(()=>c.current.delete(I));c.current.set(I,$),await $},deleteComment:async(T,A,C)=>{d(({pendingDeleteCommentIds:k})=>{let U=k.get(T);U===void 0?k.set(T,new Set([A])):U.add(A)});let I=A;if(A<0){let k=l.resolvedIdMap.current.get(A);if(k!==void 0)I=k;else{let U=c.current.get(A);if(!U)return;try{I=await U}catch{return}}}let $=()=>{let k=gt(T,{ignoreExpiry:!0});k&&(Ut(T,{postedComments:k.postedComments.filter(U=>U.id!==I)}),Tm(I)),d(({pendingDeleteCommentIds:U})=>U.get(T)?.delete(A)),S()};await b({...R(T,C,crypto.randomUUID()),intent:"deleteComment",commentId:I},{onSuccess:$,onGone:$,onFailure:()=>{d(({pendingDeleteCommentIds:k})=>k.get(T)?.delete(A))}})},toggleStar:async(T,A,C)=>{await b({...R(T,C,crypto.randomUUID()),intent:"toggleStar",value:A},{onOptimistic:()=>{Ut(T,{isStarred:A}),d(({pendingStarUpdates:I})=>I.set(T,A))},onSuccess:({updatedStatus:I})=>{gt(T,{ignoreExpiry:!0})&&(Ut(T,{isStarred:I.isStarred}),h()),d(({pendingStarUpdates:$})=>$.delete(T))},onFailure:()=>{Ut(T,{isStarred:!A}),d(({pendingStarUpdates:I})=>I.delete(T))}})},toggleRead:async(T,A,C)=>{let I=up(A),$=gt(T,{ignoreExpiry:!0}),k=$?{isRead:$.isRead,readContentDigest:$.readContentDigest}:null,U=R(T,C,crypto.randomUUID());await b(A.isRead?{...U,intent:"toggleRead",value:!0,contentDigest:A.contentDigest}:{...U,intent:"toggleRead",value:!1},{onOptimistic:()=>{Ut(T,I),d(({pendingReadUpdates:G})=>G.set(T,I))},onSuccess:({updatedStatus:G})=>{gt(T,{ignoreExpiry:!0})&&(Ut(T,{isRead:G.isRead,readContentDigest:G.readContentDigest}),h()),d(({pendingReadUpdates:V})=>V.delete(T))},onFailure:()=>{k!==null&&Ut(T,k),d(({pendingReadUpdates:G})=>G.delete(T))}})},createReport:async T=>{let A=Md(Date.now()),C=new Date().toISOString(),I={reportHubId:A,date:T,createdAt:C,author:_r(n,r.unknownUser),userId:n===void 0?null:n.id,sourceType:ks,employeeName:_r(n,r.unknownUser),updatedBy:_r(n,r.unknownUser),updatedAt:C,category:null,creationCategory:null,visitTimeFrom:null,visitTimeTo:null,customerName:null,interviewers:[],subject:"",content:"",externalComments:[],isRead:!0,isStarred:!1,contentDigest:RT,readContentDigest:null,isDraft:!0,labels:[],postedComments:[],attachments:[]};Em(I,Date.now()+3e5,!1),m($=>zs($,{reportHubId:A,businessDate:T},Number.NEGATIVE_INFINITY));try{let $=await b({intent:"create",clientTempId:String(A),businessDate:T,operationTimestamp:Date.now()},{onSuccess:G=>G.report}),k=$.reportHubId,U=Nd();return no({reportHubId:k,businessDate:T}),Am(k,mT),Dr(k,$),h(),S(),m(G=>zs(En(G,A),{reportHubId:k,businessDate:T},U)),k}catch($){throw Pd.error("[createReport] Failed",$),m(k=>En(k,A)),$}},updateReport:async(T,A,C)=>{await b({...R(T,C,crypto.randomUUID()),intent:"update",changes:{title:A.title,content:A.content}},{onSuccess:()=>{gt(T,{ignoreExpiry:!0})&&(Ut(T,{subject:A.title,content:A.content}),h()),S()}},{lockedReportHubId:T})},publishReport:async(T,A)=>{let C=gt(T,{ignoreExpiry:!0});await b({...R(T,A,crypto.randomUUID()),intent:"publish"},{onOptimistic:()=>{C&&(Ut(T,{isDraft:!1}),h())},onSuccess:({report:I})=>{I!==null&&(Dr(T,I),h()),A!==void 0&&no({reportHubId:T,businessDate:A}),S()},onFailure:()=>{C&&(Ut(T,{isDraft:C.isDraft}),h())}})},deleteReport:async(T,A)=>{let C=zm(o,T);u.current=so(u.current,T),y.current.add(T),p($=>$+1),oo(T),C!==void 0&&m($=>Wf($,C));let I=()=>{Rs(T,A),f.discard(T),S()};try{await b({...R(T,A,crypto.randomUUID()),intent:"delete"},{onSuccess:I,onGone:I},{lockedReportHubId:T})}catch($){if(!s())return;u.current=uy(u.current,T),y.current.delete(T),p(G=>G+1);let k=C===void 0?A:C.businessDate,U=Nd();throw k!==void 0&&no({reportHubId:T,businessDate:k}),m(G=>{let V=vd(G,T);return C===void 0?V:zs(V,C,U)}),$}}}};var by=St(void 0,1,"ActionProvider"),hT=3e4,Sy=e=>Js(hT,e,(t,r)=>{r.unsubscribe(),by.warn(`[SSE Queue] Expired: reportHubId=${t}, dropped=${r.messages.length} messages`)}),bT=(e,t)=>{t!==void 0&&no({reportHubId:e,businessDate:t})},gy=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:y,invalidateSearch:p,announceDataChange:m,pendingSseQueue:f,replay:S}=e,h=(b,R)=>{let g=f.get(b);if(g!==void 0){g.messages.push(R);return}let E;E={messages:[R],unsubscribe:wm(b,()=>{if(f.get(b)===E&>(b,{ignoreExpiry:!0})){f.remove(b),E.unsubscribe(),by.info(`[SSE Queue] Replaying ${E.messages.length} messages for reportHubId=${b}`);for(let x of E.messages)S(x)}})},f.add(b,E)};return b=>{if(o()&&!a.has(b.clientTempId))switch(b.type!=="status-update"&&p(),b.type){case"comment-add":{let{comment:R,reportHubId:g}=b,E=gt(g,{ignoreExpiry:!0});if(E){if(E.postedComments.some(M=>M.id===R.id))return;let w=typeof r=="string"&&R.userId===r,x={...R,userName:R.userName||(w?_r(t,n.unknownUser):n.unknownUser),createdAt:R.createdAt||new Date().toISOString(),isMine:w},L={...E,postedComments:[...E.postedComments,x].sort((M,P)=>new Date(M.createdAt||0).getTime()-new Date(P.createdAt||0).getTime())};Dr(g,L),Gl(g),m()}else h(g,b);break}case"comment-delete":{let{commentId:R,reportHubId:g}=b,E=gt(g,{ignoreExpiry:!0});if(E){let w={...E,postedComments:E.postedComments.filter(x=>x.id!==R)};Dr(g,w),Gl(g),m()}else h(g,b);break}case"status-update":{let{statusType:R,value:g,reportHubId:E,readContentDigest:w}=b,x=gt(E,{ignoreExpiry:!0});if(R==="star")if(s.pendingStarUpdates.current.get(E)===g&&i(({pendingStarUpdates:L})=>L.delete(E)),x){let L={...x,isStarred:g,readContentDigest:w};Dr(E,L),m()}else h(E,b);else if(R==="read"){let L=s.pendingReadUpdates.current.get(E);if(L!==void 0&&L.isRead===g&&L.readContentDigest===w&&i(({pendingReadUpdates:M})=>M.delete(E)),x){let M={...x,isRead:g,readContentDigest:w};Dr(E,M),m()}else h(E,b)}break}case"report-delete":{let{reportHubId:R}=b;l.current=so(l.current,R),d.current.add(R),c(E=>E+1),oo(R),u(E=>En(E,R)),y.discard(R),f.remove(R)?.unsubscribe();let g=gt(R,{ignoreExpiry:!0});g?.date&&(Rs(R,g.date),m());break}case"report-create":case"report-update":case"report-publish":{let{report:R}=b;b.viewerIsActor?Dr(R.reportHubId,R):_m(R),(b.type==="report-create"||b.type==="report-publish")&&bT(R.reportHubId,R.date),m();break}}}};import{memo as _T,useLayoutEffect as vT}from"react";import{systemSseRuntime as ei}from"@aiquants/sse";import{createBrowserEventSource as ST}from"@aiquants/sse/client";import{useReopeningEventSource as gT}from"@aiquants/sse/react";import{useEffect as ti,useLayoutEffect as ET,useRef as ri,useState as DT}from"react";var Dn=St(void 0,1,"SseConnection"),AT=Object.freeze({kind:"resyncing"}),Ey={initialDelayMs:2e3,maxDelayMs:3e4,multiplier:2},TT=1,Dy=xl*3,wT=Dy+xl,Fd=({isSseEnabled:e,onMessage:t,onSessionEnded:r,onRefused:n})=>{let{ssePath:o}=Z(),{streamAnchor:a,phase:s,isRevalidating:i,error:l}=ao(),[d,c]=DT({generation:0,minAnchorRevision:1,anchored:!1}),u=d.generation>0&&!d.anchored,y=u&&s==="complete"&&!i?l:null,p=ri(0),m=ri(null),f=ri(!1),S=We(()=>({onSessionEnded:r,onRefused:n}));ET(()=>{S.current={onSessionEnded:r,onRefused:n}});let h=ri(0);h.current=a===null?0:a.revision,ti(()=>{d.anchored||a===null||a.revision<d.minAnchorRevision||(m.current=a.lastEventId,p.current=0,c({...d,anchored:!0}))},[d,a]),ti(()=>{if(!e||y===null)return;let{initialDelayMs:b,maxDelayMs:R,multiplier:g}=Ey,E=ei.random()*Math.min(R,b*g**p.current);Dn.warn(`SSE resync: the ids rescan gave up (${y.message}); rescanning in ${Math.round(E)} ms`);let w=ei.setTimer(()=>{p.current+=1,Zs()},E);return()=>ei.clearTimer(w)},[e,y]),ti(()=>{e||!f.current||(f.current=!1,c(b=>({...b,generation:b.generation+1})))},[e]);let{status:D}=gT(e&&d.anchored?`${o}#${d.generation}`:null,{resolveUrl:({lastEventId:b})=>b===null?o:`${o}?${Ip}=${encodeURIComponent(b)}`,initialLastEventId:m.current,withCredentials:!1,createEventSource:ST,runtime:ei,backoff:Ey,healthyOpenMs:wT,nativeRetryLimit:TT,giveUpAfterFailures:"never",terminalEvents:Cp,heartbeat:{staleAfterMs:Dy,onHeartbeat:null},events:{message:b=>{b.lastEventId!==""&&(qa(b.lastEventId)?m.current=b.lastEventId:Dn.warn("SSE event carried a malformed id; keeping the previous cursor:",b.lastEventId));try{let R=JSON.parse(b.data),g=kp.safeParse(R);if(!g.success){Dn.error("SSE Validation Error:",g.error.flatten(),"raw message:",R);return}if(g.data.type==="connected"){Dn.info("SSE Subscribe Ready");return}t(g.data)}catch(R){Dn.error("SSE Parse Error",R)}}}});return ti(()=>{if(D.kind==="faulted"){Dn.error("SSE connection faulted:",D.error);return}if(D.kind==="terminated")switch(D.terminalEvent){case"auth-required":f.current=!0,S.current.onSessionEnded();return;case"forbidden":Dn.warn("SSE stopped: the viewer is not registered (forbidden)"),S.current.onRefused();return;case"resync-required":{let b=h.current+1;c(R=>({generation:R.generation+1,minAnchorRevision:b,anchored:!1})),Zs();return}}},[D,S]),e&&u?AT:D};var Ay=Object.freeze({kind:"idle"}),Hd=_T(({isSseEnabled:e,onMessage:t,onSessionEnded:r,onRefused:n,onStatus:o})=>{let a=Fd({isSseEnabled:e,onMessage:t,onSessionEnded:r,onRefused:n});return vT(()=>{o(a)},[a,o]),null});Hd.displayName="DailyReportSseConnectionHost";import{createContext as xT,useCallback as CT,useSyncExternalStore as Ty}from"react";var wy=()=>{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)}}},Bd=xT(null),jr=()=>qt(Bd,"useDailyReportDraftStore","DailyReportActionProvider"),_y=(e,t)=>CT(r=>e.subscribe(t,r),[e,t]),ni=e=>{let t=jr(),r=()=>t.modeOf(e);return Ty(_y(t,e),r,r)},vy=e=>{let t=jr(),r=()=>t.inputOf(e),n=Ty(_y(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 UT}from"@aiquants/swipe-overlay";import{createContext as VT,Fragment as WT,useCallback as ii,useId as Vd,useLayoutEffect as Vy,useMemo as zT,useRef as An,useState as Fy}from"react";import{createPortal as Hy}from"react-dom";import{createContext as NT,useContext as OT}from"react";var IT=new Set(["Alt","AltGraph","CapsLock","Control","Fn","FnLock","Hyper","Meta","NumLock","ScrollLock","Shift","Super","Symbol","SymbolLock"]),oi={capture:!0},ai=new WeakMap,LT=e=>{let t=o=>{IT.has(o.key)||(n.last="keyboard")},r=()=>{n.last="pointer"},n={observers:0,last:null,detach:()=>{e.removeEventListener("keydown",t,oi),e.removeEventListener("pointerdown",r,oi)}};return e.addEventListener("keydown",t,oi),e.addEventListener("pointerdown",r,oi),n},xy=e=>{let t=ai.get(e),r=t===void 0?LT(e):t;t===void 0&&ai.set(e,r),r.observers+=1;let n=!1;return()=>{n||(n=!0,r.observers-=1,!(r.observers>0)&&(r.detach(),ai.delete(e)))}},la=e=>{let t=ai.get(e);return t===void 0?null:t.last};var MT=Object.freeze({visibilityProperty:!0,opacityProperty:!0}),PT=Object.freeze({visibilityProperty:!0}),Cy="data-daily-report-view-tabs",Iy={[Cy]:""},Ly="data-daily-report-status-panel",Ny={[Ly]:""},kT=e=>{for(let t of e.getClientRects())if(t.width>0&&t.height>0)return!0;return!1},Oy=e=>e.isConnected&&Jl(e)&&kT(e)&&e.checkVisibility(e.hasAttribute(_s)?PT:MT),vr=e=>{for(let t of e)if(!(t===null||!Oy(t))&&(t.focus({preventScroll:!0}),mt(t)===t))return t;return null},FT=e=>e.querySelector(`[${Cy}] [role="tab"][aria-selected="true"]`),Ud=NT(null),My=()=>{let e=OT(Ud);if(e===null)throw new Error("[daily-report] useFocusViewRow is called outside a view's rows");return e},HT=(e,t,r)=>{if(pn(e))return!0;if(r==="handOver")return!1;let n=mt(e);return n===null||!e.contains(n)?!1:r==="overlay"||n!==t},Py=(e,t,r)=>{if(r!=="pointer"||t===null)return e;let n=ef(t);return n!==null&&Oy(n)?n:e},ky=(e,t,r,n)=>HT(e,t,n)?vr([Py(t,r,la(e.ownerDocument))]):null,BT=e=>{let t=e.getAttribute("aria-activedescendant");return t===null?null:e.ownerDocument.getElementById(t)},si=e=>{let t=Jm(e);return[t===null?null:Py(t,BT(t),la(t.ownerDocument)),FT(e),e.querySelector(`[${Ly}]`)]};import{jsx as ar,jsxs as zy}from"react/jsx-runtime";var KT=v("motion-safe:fade-in motion-safe:slide-in-from-bottom-2 flex w-fit min-w-0 max-w-full items-center gap-2 rounded-lg border border-red-300 border-solid bg-red-800 px-[15px] py-[7px] text-sm text-white shadow-lg motion-safe:animate-in motion-safe:duration-200 dark:border-red-500/60",Hr),$T="flex shrink-0 justify-center p-[8px]",GT=v("pointer-coarse:relative flex size-6 shrink-0 items-center justify-center rounded font-bold text-white hover:bg-red-900",Me,gu),jT="data-daily-report-notice-alert",YT={[jT]:""},Wy=VT(null),li=()=>qt(Wy,"useDailyReportErrorSurface","DailyReportErrorProvider"),By=Object.freeze([]),Uy=({notice:e})=>ar("div",{role:"alert",...YT,className:"sr-only",children:e===null?null:ar("span",{children:e.info.message},e.occurrence)}),qT=({notice:e,closeLabel:t,repeatedLabel:r,onDismiss:n})=>{let o=An(null),a=An(null),s=An(null),i=UT(),l=Vd(),d=Vd(),c=Vd(),u=e.repeat>1?`${d} ${c}`:d,y=ii(()=>{let f=o.current;if(f?.contains(f.ownerDocument.activeElement)){let[S,...h]=si(f.ownerDocument);vr([a.current,S,f.closest("dialog"),...h])}n()},[n]),p=f=>{if(s.current!==null)return;let S=f.relatedTarget;a.current=ke(S)&&!f.currentTarget.contains(S)?S:null,s.current=i({id:l,onEscape:()=>(y(),!0)})},m=f=>{ke(f.relatedTarget)&&f.currentTarget.contains(f.relatedTarget)||(s.current?.(),s.current=null,a.current=null)};return Vy(()=>()=>{s.current?.(),s.current=null},[]),zy("div",{ref:o,role:"group","aria-labelledby":u,"data-testid":"daily-report-error-banner",className:KT,onFocus:p,onBlur:m,children:[ar("span",{id:d,className:"min-w-0 font-medium",children:ar(WT,{children:e.info.message},e.occurrence)}),e.repeat>1&&ar("span",{id:c,className:"shrink-0 font-normal tabular-nums",children:r(e.repeat)}),ar("button",{type:"button","aria-label":t,"aria-describedby":u,onClick:y,className:GT,children:"\u2715"})]})},Wd=({children:e})=>{let{onError:t,labels:r}=Z(),[n,o]=Fy(null),[a,s]=Fy(By),i=An(By),l=An(0),d=An(0),c=An(t);Vy(()=>{c.current=t});let u=ii(D=>{let b=c.current;if(b){b(D);return}d.current+=1;let R=d.current,g=i.current,E=g.length===0?null:g[g.length-1].registration;o(w=>({info:D,occurrence:R,repeat:w!==null&&w.info.message===D.message?w.repeat+1:1,announcedIn:E}))},[]),y=ii(D=>{l.current+=1;let b={element:D,registration:l.current};return i.current=[...i.current,b],s(i.current),()=>{i.current=i.current.filter(R=>R!==b),s(i.current)}},[]),p=ii(()=>o(null),[]),m=zT(()=>({notifyError:u,registerNoticeHost:y}),[u,y]),f=a.at(-1),S=n===null?null:ar(qT,{notice:n,closeLabel:r.close,repeatedLabel:r.noticeRepeated,onDismiss:p}),h=D=>n!==null&&n.announcedIn===D?n:null;return zy(Wy.Provider,{value:m,children:[e,ar(Uy,{notice:h(null)}),a.map(D=>Hy(ar(Uy,{notice:h(D.registration)}),D.element,String(D.registration))),S!==null&&f!==void 0&&Hy(S,f.element),S!==null&&f===void 0&&ar("div",{"data-daily-report-notice-slot":"",className:$T,children:S})]})};import{jsx as Kd,jsxs as ZT}from"react/jsx-runtime";var ci=St(void 0,1,"ActionProvider"),pi=globalThis.__DailyReportActionsContext??Gy(null);globalThis.__DailyReportActionsContext=pi;var mi=globalThis.__DailyReportActionStateContext??Gy(null);globalThis.__DailyReportActionStateContext=mi;var ui="DailyReportActionProvider",ct=()=>qt(pi,"useDailyReportActions",ui),fi=()=>qt(mi,"useDailyReportActionState",ui),XT=()=>{let e=qt(pi,"useDailyReportActionContext",ui),t=qt(mi,"useDailyReportActionContext",ui);return $d(()=>({...e,...t}),[e,t])},Gd=({children:e,user:t,userId:r})=>{let{apiBasePath:n,labels:o}=Z(),a=nt(n),s=Ks(n),{notifyError:i}=li(),[l,d]=sr(0),[{ledgers:c,write:u}]=sr(()=>yy(()=>d(q=>q+1))),[y,p]=sr(0),[m,f]=sr(0),[S]=sr(wy),[h,D]=sr(!1),[b,R]=sr(Ay),g=zd(!1),E=We(fy),w=zd(py),x=We(my),[L]=sr(()=>cy(()=>performance.now())),[M]=sr(()=>Sy(()=>performance.now())),P=dy(),[B,T]=Vf(P,P.settled,w.current),A=B.items,C=`${y}:${B.settled?B.revision:"-"}`,I=()=>{p(q=>q+1)},$=()=>{d(q=>q+1)},k=di(q=>x.current.has(q),[x]),U=di(()=>ey()===(r??null),[r]),G=async()=>{ci.info("Refetching data without page reload..."),aa(),$(),le.listeners.forEach(q=>{q(-1)})},V=async()=>{ci.info("Clearing client & server/DB cache and refetching data without page reload..."),jo(),w.current=new Set,x.current.clear(),f(q=>q+1),T(zf);try{sessionStorage.clear()}catch{}try{let q=await fetch(`${n}/${je.action}`,{method:"POST",body:Hs({intent:"clearCache"})});if(!q.ok){let ne=await q.json().catch(()=>null);ci.warn("Failed to clear server-side cache:",q.status,ne)}}catch(q){ci.warn("Failed to clear server-side cache:",q)}U()&&(aa({forceRefresh:!0}),$(),le.listeners.forEach(q=>{q(-1)}))};$y(()=>()=>{for(let q of M.drain())q.unsubscribe()},[M]);let W=()=>{r&&(g.current=!0,D(q=>!q))};Ky(()=>{if(!r)return;let q=setTimeout(()=>{g.current||D(!0)},dm);return()=>clearTimeout(q)},[r]);let de=q=>{U()&&(w.current=so(w.current,q),x.current.add(q),f(ne=>ne+1),oo(q),T(ne=>En(ne,q)),S.discard(q))};Ky(()=>{if(!B.settled)return;let q=new Set;for(let ne of w.current)Xf(ne)&&q.add(ne);q.size!==w.current.size&&(w.current=q)},[B.settled,B.revision]);let ge={user:t,userId:r,labels:o,apiBasePath:n,items:A,isSessionStillOurs:U,ownEchoIds:L,ledgers:c,writeLedgers:u,pendingSseQueue:M,pendingAddPromises:E,removedIds:w,searchRemovedIds:x,setRemovedVersion:f,setRows:T,drafts:S,invalidateSearch:I,announceDataChange:$,replay:q=>te.current.handleSseMessage(q),notifyError:q=>te.current.notifyError(q),sessionGate:a},N=gy(ge),z=hy(ge),j={toggleSse:W,...z,removeStaleItem:de,refetchData:G,clearCacheAndRefetch:V,handleSseMessage:N,notifyError:i},te=zd(j);$y(()=>{te.current=j});let[ye]=sr(()=>Ry(te)),ie=di(()=>a.reportSessionEnd("sse",a.period()),[a]),J=di(()=>i({operation:"liveUpdates",reason:"refused",message:o.liveUpdatesRefused}),[i,o]),re=$d(()=>({...c,...ye.functions,user:t}),[c,ye,t]),De=$d(()=>({version:l,items:A,isSseEnabled:h,sseStatus:b,searchInvalidation:C,isReportRemoved:k,removedVersion:m}),[l,A,h,b,C,k,m]);return Kd(Bd.Provider,{value:S,children:Kd(pi.Provider,{value:re,children:ZT(mi.Provider,{value:De,children:[Kd(Hd,{isSseEnabled:h&&!s,onMessage:ye.onSseMessage,onSessionEnded:ie,onRefused:J,onStatus:R}),e]})})})};var jy=(e,t)=>e.split(t).length-1,Yy=(e,t,r)=>{let n=e("\uE000","\uE001");if(jy(n,"\uE000")!==1||jy(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 lw,useLayoutEffect as dw,useMemo as Xd}from"react";import{createContext as Jy,createElement as rw,useCallback as Qy,useContext as qd,useDeferredValue as nw,useLayoutEffect as ow,useMemo as Yd,useSyncExternalStore as aw}from"react";var qy=Object.freeze({subject:"subject",content:"content",author:"author",employeeName:"author",updatedBy:"updatedBy",category:"category",creationCategory:"creationCategory",customerName:"customer",interviewer:"interviewers",attachment:"attachments",comment:"comments"}),QT=e=>Object.hasOwn(qy,e),JT=e=>{let t=e.indexOf(":"),r=t===-1?e:e.slice(0,t);if(!(to(e)&&QT(r)))throw new Error(`[daily-report] A search mark leaf carries an unknown field key: ${e}`);return qy[r]},ew=Object.freeze([]),Xy=(e,t)=>e.map(({heading:r,matchedBy:n})=>n==="reading"?t.searchFieldMatchedByReading(t[r]):t.searchFieldMatched(t[r])).join(" "),jd=e=>e.words>0||e.dense>0?"word":e.readings>0?"reading":null,tw=(e,t)=>e.length===t.length&&e.every((r,n)=>r.heading===t[n].heading&&r.matchedBy===t[n].matchedBy),Zy=()=>{let e=new Map,t=new Map,r=new Set,n=null,o=0,a=0,s=ew,i=!1,l=Object.freeze({entry:n,isCurrent:!0,count:o,fields:s}),d=!1,c=l,u=!1,y=b=>!b.isCurrent||b.entry!==n,p=()=>{let b=[];for(let[R,g]of t){let E=jd(g);E!==null&&b.push(Object.freeze({heading:R,matchedBy:E}))}return Object.freeze(b)},m=()=>{if(!d)return l;d=!1;for(let[R,g]of t)g.leaves===0&&t.delete(R);let b=a===0;if(i){i=!1;let R=p();tw(R,s)||(s=R)}return l.entry===n&&l.isCurrent===b&&l.count===o&&l.fields===s||(l=Object.freeze({entry:n,isCurrent:b,count:o,fields:s})),l},f=()=>{u=!1;let b=m();if(b!==c){c=b;for(let R of[...r])R()}},S=()=>{d=!0,!u&&(u=!0,queueMicrotask(f))},h=b=>{let R=t.get(b);if(R!==void 0)return R;let g={leaves:0,words:0,readings:0,dense:0};return t.set(b,g),g},D=(b,R)=>{o+=R*(b.words+b.readings),y(b)&&(a+=R);let g=h(b.heading),E=jd(g);g.leaves+=R,g.words+=R*b.words,g.readings+=R*b.readings,b.dense&&(g.dense+=R),jd(g)!==E&&(i=!0)};return{register:b=>{let R={...b,heading:JT(b.fieldKey)},g=Object.freeze({});return e.set(g,R),D(R,1),S(),g},unregister:b=>{let R=e.get(b);R!==void 0&&(e.delete(b),D(R,-1),S())},settle:b=>{if(b!==n){n=b,a=0;for(let R of e.values())y(R)&&(a+=1);S()}},subscribe:b=>(r.add(b),()=>{r.delete(b)}),getSnapshot:m}};var ft=Jy(null),eR=Jy(null),da=()=>{let e=qd(eR);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},sw=()=>{},iw=()=>sw,tR=e=>{let t=qd(ft),r=Qy(i=>t===null?iw():t.subscribe(e,i),[t,e]),n=Qy(()=>{let i=t===null?void 0:t.read(e);return i===void 0?null:i},[t,e]),o=aw(r,n,n),a=Yd(()=>t===null||o===null?null:{store:t,entry:o},[t,o]),s=nw(a,a===null?void 0:null);return s!==null&&s.store===t?s.entry:null},io=({reportHubId:e,entry:t,children:r})=>{let n=qd(ft),o=Yd(()=>n===null?null:Zy(),[n]),a=Yd(()=>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 ow(()=>{o!==null&&o.settle(t)},[o,t]),rw(eR.Provider,{value:a},r)};import{jsx as nR}from"react/jsx-runtime";var cw="data-daily-report-search-mark",uw=Object.freeze({[Bn.word]:Object.freeze({attribute:"word",description:null}),[Bn.reading]:Object.freeze({attribute:"reading",description:"searchReadingMarkDescription"})}),rR=e=>{if(!Wo(e))throw new Error(`[daily-report] A search mark carries an unknown tier: ${e}`);return uw[e]},pw=Object.freeze({words:0,readings:0}),mw=e=>{if(e===null)return pw;let t=0;for(let r=2;r<e.length;r+=3)rR(e[r]).attribute==="reading"&&(t+=1);return{words:e.length/3-t,readings:t}},fw=(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=rR(t[a+2]);s>o&&n.push(e.slice(o,s)),n.push(nR("mark",{[cw]:l.attribute,"aria-description":l.description===null?void 0:r[l.description],className:zu,children:e.slice(s,i)},`m${s}`)),o=i}return o<e.length&&n.push(e.slice(o)),n},yw=({fieldKey:e,raw:t,display:r})=>{let{entry:n,revalidate:o,tally:a}=da(),{labels:s}=Z(),i=typeof t=="string"?t:"",l=Xd(()=>n===null||i.length===0?null:gd(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,y=c!==null&&"dense"in c,p=c!==null,m=Xd(()=>u===null?null:tp(r,u),[u,r]),f=Xd(()=>mw(m),[m]);return dw(()=>{if(l===null)return;p||o(e,l);let S=a.register({entry:n,isCurrent:p,fieldKey:e,words:f.words,readings:f.readings,dense:y});return()=>a.unregister(S)},[a,o,n,l,p,e,f,y]),m===null||m.length===0?r.text:fw(r.text,m,s)},Ae=({fieldKey:e,raw:t,display:r})=>lw(ft)===null?r.text:nR(yw,{fieldKey:e,raw:t,display:r});import{jsx as hw}from"react/jsx-runtime";var Rw={2:"h2",3:"h3",4:"h4",5:"h5",6:"h6"},Yr=Object.freeze({2:3,3:4,4:5,5:6}),vt=({level:e,...t})=>{let r=Rw[e];return hw(r,{...t})};import{memo as GR,useId as h_,useMemo as b_,useRef as jR}from"react";var oR=Object.freeze({tile:Object.freeze({maxWidth:480,maxHeight:320})});var Qd="tile",ua=oR[Qd],bw=2,ca=16,aR=5,sR=ua.maxWidth/bw,Sw=aR*(sR+ca)-ca,iR=e=>{let t=Math.min(aR,1+Math.floor((e+ca)/(sR+ca)));return Math.floor((Math.min(e,Sw)-(t-1)*ca)/t)},Zd=`round(nearest, 100cqi * ${ua.maxHeight} / ${ua.maxWidth}, 1px)`,lR=Object.freeze({aspectRatio:`${ua.maxWidth} / ${ua.maxHeight}`,height:Zd,contain:"strict"}),gw="--aqdr-lattice-block",dR=Object.freeze({marginBlockEnd:`calc(round(up, ${Zd}, var(${gw})) - ${Zd})`});var Ew="download",Dw="thumbnail",Aw="1",lo=(e,t,r)=>{let n=`${e}/attachment/${encodeURIComponent(t)}`;switch(r.kind){case"inline":return n;case"download":return`${n}?${new URLSearchParams({[Ew]:Aw})}`;case"thumbnail":return`${n}?${new URLSearchParams({[Dw]:r.variant})}`}};import{createContext as uR,useCallback as Tw,useContext as pR,useMemo as ww,useState as _w}from"react";var Jd=uR(null),ec=uR(null),cR=(e,t)=>{if(t){e.hasAttribute("tabindex")&&e.removeAttribute("tabindex");return}e.getAttribute("tabindex")!=="-1"&&e.setAttribute("tabindex","-1")},mR=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 y of u)cR(y,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 y=u;return y.add(c),cR(c,d===r),()=>{y.delete(c),y.size===0&&t.delete(d)}};return{isActive:s,attach:i,scopeOf:d=>({isActive:()=>s(d),attach:c=>i(d,c)})}},fR=e=>{let t=pR(Jd);if(t===null)throw new Error("[daily-report] useRowControlScope is called outside a view's rows (no control registry)");return ww(()=>t.scopeOf(e),[t,e])},vw=(e,t)=>{if(typeof e!="function")return e.current=t,()=>{e.current=null};let r=e(t);return typeof r=="function"?r:()=>{e(null)}},co=e=>{let t=pR(ec),[r]=_w(()=>t===null||t.isActive()?void 0:-1),n=Tw(o=>{let a=e===void 0?null:vw(e,o),s=t===null?null:t.attach(o);return()=>{s!==null&&s(),a!==null&&a()}},[t,e]);return{tabIndex:r,ref:n}},yR=(e,t)=>{let{before:r,after:n}=Yo(e.ownerDocument,e);return(t==="before"?r.at(-1):n[0])??null},RR=(e,t,r)=>{if(t===null)return!r&&Ss(e).length>0;if(!e.contains(t))return!1;let{before:n,within:o,after:a}=Yo(e,t);return r?n.length>0:o.length>0||a.length>0};import{createContext as Ow,useContext as Mw,useLayoutEffect as Pw,useMemo as TR,useState as kw}from"react";import{flushSync as Fw}from"react-dom";import{flushSync as xw}from"react-dom";var tc=new WeakMap,hR=e=>e.observedTrackWidth!==null&&e.observedTrackWidth!==e.handedTrackWidth,bR=e=>e.overflowWidth!==null&&e.overflowWidth!==e.handedOverflowWidth,Cw=(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},SR=(e,t,r)=>{let n=Cw(e,t);return n===null||n.handedTrackWidth===null||r<=n.handedTrackWidth?null:{track:n,trackWidth:n.handedTrackWidth}},Iw=e=>{e.frame=null;let t=new Map;for(let r of e.observations.values())hR(r)&&t.set(r,r.observedTrackWidth);for(let[r,n]of e.fittedNames){if(!bR(n))continue;let o=n.overflowWidth;n.handedOverflowWidth=o;let a=SR(e,r,o);a===null||t.has(a.track)||t.set(a.track,a.trackWidth)}t.size!==0&&xw(()=>{for(let[r,n]of t)r.handedTrackWidth=n,r.onTrackWidth(n)})},Lw=(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(SR(e,r.target,n)!==null){a.overflowWidth=n;continue}a.overflowWidth=null,a.handedOverflowWidth=null}}e.frame!==null||!([...e.observations.values()].some(hR)||[...e.fittedNames.values()].some(bR))||(e.frame=e.view.requestAnimationFrame(()=>Iw(e)))},Nw=e=>{let t=tc.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=>Lw(n,o)),observations:new Map,fittedNames:new Map,frame:null};return tc.set(e,n),n},gR=(e,t)=>{let r=Nw(e.ownerDocument);if(r.observations.has(e)||r.fittedNames.has(e))throw new Error(t);return r},ER=(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(),tc.delete(e.view.document))},DR=(e,t,r)=>{let n=gR(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),ER(n,e))}},AR=e=>{let t=gR(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),ER(t,e))}};import{jsx as ir,jsxs as xR}from"react/jsx-runtime";var oc="\u2026",Hw=oc.codePointAt(0),wR=Object.freeze({text:oc,runs:Object.freeze([])}),yi="data-attachment-file-name",Bw=ze("block min-w-0"),Uw="block w-fit whitespace-nowrap",Vw=new Set([" ","\xA0","\u1361","\u{10100}","\u{10101}","\u{1039F}","\u{1091F}"," ",`
|
|
5
|
+
`,"\f","\r"]),Ww=/^-?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?px$/,ac=({fileName:e})=>ir("span",{className:er,children:e}),zw=/"([^"]*)"|'([^']*)'|([^\s,"'][^,"']*)/g,Kw=/^U\+([\dA-F?]{1,6})(?:-([\dA-F]{1,6}))?$/i,sc=Ow(null),CR=e=>{let t=e.text.lastIndexOf(".");return t<=0||t===e.text.length-1?{stem:e,extension:kt("")}:{stem:Lo(e,0,t),extension:Lo(e,t,e.text.length)}},rc=(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 Lo(e,0,o.slice(0,a).join("").length)},$w=(e,t,r)=>{if(r(e)<=t)return kt(e);let{stem:n,extension:o}=CR(ep(e)),a=t/2,s=r(o.text)<=a?o:Pn([rc(o,oc,a,r),wR]);if(r(n.text+s.text)<=t)return Pn([n,s]);let i=Pn([wR,s]);return r(i.text)>t?rc(i,"",t,r):Pn([rc(n,i.text,t,r),i])},_R=new WeakMap,IR=e=>{let t=_R.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 _R.set(e,n),n},LR=(e,t,r)=>`${e}|${t}|${r}`,Gw=(e,t,r,n)=>{let o=LR(t,r,n),a=e.measures.get(o);if(a!==void 0)return a;let s=i=>{e.font!==t&&(e.context.font=t,e.font=t);let l=0;for(let d of i)l+=Vw.has(d)?r+n:r;return e.context.measureText(i).width+l};return e.measures.set(o,s),s},NR=e=>{let t=new Set;for(let r of e.matchAll(zw)){let n=r.slice(1).find(o=>o!==void 0);t.add(n.trim().replace(/\s+/g," ").toLowerCase())}return t},vR=e=>e==="normal"?0:Ww.test(e)?Math.max(Number.parseFloat(e),0):null,jw=e=>{let t=getComputedStyle(e),r=vR(t.letterSpacing),n=vR(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:Gw(IR(e.ownerDocument),o,r,n)}},Yw=(e,t)=>e===t||e!==null&&t!==null&&e.width===t.width&&e.measure===t.measure,qw=e=>{let t=new Set([Hw]);for(let r of e.querySelectorAll(`[${yi}]`)){let n=r.getAttribute(yi);for(let o of n+n.normalize("NFC"))t.add(o.codePointAt(0))}return t},Xw=(e,t)=>{for(let r of e.split(",")){let n=Kw.exec(r.trim());if(n===null)return!0;let[,o,a]=n,s=Number.parseInt(o.replaceAll("?","0"),16),i=a===void 0?Number.parseInt(o.replaceAll("?","F"),16):Number.parseInt(a,16);for(let l of t)if(l>=s&&l<=i)return!0}return!1},nc=new WeakMap,OR=e=>{let t=nc.get(e);if(t!==void 0)return t;let r={document:e,registrations:new Set,stopWatchingFonts:null};return nc.set(e,r),r},MR=(e,t)=>{let r=jw(e.container.querySelector(`[${yi}]`));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=Qw(n)),e.applyFit({width:t,measure:r.measure})},Zw=(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=qw(o.container);s.some(l=>Xw(l.unicodeRange,i))&&(IR(e.document).measures.delete(LR(a.nameFont.font,a.nameFont.letterSpacing,a.nameFont.wordSpacing)),n.push([o,a.trackWidth]))}n.length!==0&&Fw(()=>{for(let[o,a]of n)MR(o,a)})},Qw=e=>{let t=e.document.fonts,r=n=>{Zw(e,n.fontfaces)};return t.addEventListener("loadingdone",r),()=>{t.removeEventListener("loadingdone",r)}},Jw=(e,t,r)=>{let n={container:e,applyFit:r,fitted:null},o=DR(e,t,s=>MR(n,s)),a=OR(e.ownerDocument);return a.registrations.add(n),()=>{o(),a.registrations.delete(n),!(a.registrations.size>0)&&(a.stopWatchingFonts?.(),nc.delete(a.document))}},PR=(e,t)=>{let[r,n]=kw(null);return Pw(()=>{let o=e.current;return Jw(o,t,s=>{n(i=>Yw(i,s)?i:s)})},[e,t]),r},kR=({containerRef:e,children:t})=>{let r=PR(e,iR);return ir(sc,{value:r,children:t})},e_=e=>e,FR=({containerRef:e,children:t})=>{let r=PR(e,e_);return ir(sc,{value:r,children:t})},pa=({fileName:e,attachmentIndex:t,className:r,testId:n})=>{let o=Mw(sc),a=TR(()=>o===null?null:$w(e,o.width,o.measure),[e,o]),{stem:s,extension:i}=TR(()=>CR(kt(e)),[e]),l=Te.attachment(t);return xR("span",{className:Bw(r),title:e,"data-testid":n,[yi]:e,children:[a===null?xR("span",{"aria-hidden":"true",className:"flex min-w-0",children:[ir("span",{className:"truncate",children:ir(Ae,{fieldKey:l,raw:e,display:s})}),i.text!==""&&ir("span",{className:"max-w-1/2 shrink-0 truncate",children:ir(Ae,{fieldKey:l,raw:e,display:i})})]}):ir("span",{ref:AR,"aria-hidden":"true",className:Uw,children:ir(Ae,{fieldKey:l,raw:e,display:a})}),ir(ac,{fileName:e})]})};import a_ from"lucide-react/dist/esm/icons/image-off.js";import{memo as s_,useCallback as dc,useEffect as i_,useLayoutEffect as l_,useRef as cc,useState as d_}from"react";var Ri=Object.freeze({queueWaitMs:3e4,readMs:3e4,renderMs:1e4,transferMarginMs:5e3}),HR=Ri.queueWaitMs+Ri.readMs+Ri.renderMs+Ri.transferMarginMs;var t_=Object.freeze({kind:"loaded"}),BR=(e,t,r,n,o)=>{let{limiter:a,tuning:s}=n,i="watching",l=null,d=null,c=null,u=null,y=null,p=T=>(T!==null&&n.clearTimeout(T),null),m=()=>{u?.(),u=null},f=()=>{y?.(),y=null},S=T=>T===null||T.kind==="loaded"?0:T.kind==="failing"?T.failedAttempts:s.maxAttempts,h=T=>{i="cooling",c=n.setTimeout(L,T)},D=()=>{o.abortInFlight(),f();let T=S(r.get(t))+1;if(T>=s.maxAttempts){i="done",r.set(t,{kind:"exhausted",failedAt:n.now()}),o.exhausted();return}r.set(t,{kind:"failing",failedAttempts:T,retryAt:n.now()+s.retryDelayMs}),o.reset(),h(s.retryDelayMs)},b=T=>{if(i==="loading"){if(d=p(d),!T){D();return}i="done",r.set(t,t_),f()}},R=()=>{d=null,b(!1)},g=()=>{i="loading",o.showActivity(!0),m(),d=n.setTimeout(R,s.loadTimeoutMs),o.grant()},E=()=>{l=null,i="queued",y=a.request(g)},w=()=>{l===null&&(l=n.setTimeout(E,s.settleMs))},x=T=>{if(o.showActivity(T),T){i==="watching"&&w();return}if(i==="queued"){f(),i="watching";return}l=p(l)},L=()=>{c=null,i="watching",o.showActivity(!1),u=n.observe(e,x)},M=()=>{let T=i==="loading";i="done",m(),l=p(l),d=p(d),c=p(c),o.showActivity(!1),T&&(o.abortInFlight(),y!==null&&o.reset()),f()},P=r.get(t);if(P?.kind==="loaded")return i=o.shows()?"done":"loading",o.grant(),{settle:b,dispose:M};if(P?.kind==="exhausted"){if(n.now()-P.failedAt<s.failureMemoryMs)return i="done",o.exhausted(),{settle:b,dispose:M};r.delete(t)}o.reset();let B=P?.kind==="failing"?P.retryAt-n.now():0;return B>0?h(B):L(),{settle:b,dispose:M}};var r_=e=>{rt("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=r_(2);var n_=e=>{rt("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)}}},ic=n_(1024);var lc=new WeakMap,o_=e=>{let t=lc.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 lc.set(e,a),a},VR=(e,t)=>{let r=e.ownerDocument,n=o_(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(),lc.delete(r)))}};import{jsx as ma,jsxs as R_}from"react/jsx-runtime";var c_={idle:"pending",granted:"pending",loaded:"loaded",failed:"unavailable"},u_="data-thumbnail-active",p_="data-daily-report-attachment-preview",zR={[p_]:""},m_=Object.freeze({settleMs:250,loadTimeoutMs:HR,retryDelayMs:5e3,maxAttempts:2,failureMemoryMs:6e4}),WR=e=>{let t=ic.peek(e);return t?.kind==="loaded"?{url:e,status:"loaded"}:t?.kind==="exhausted"?{url:e,status:"failed"}:{url:e,status:"idle"}},f_=()=>({limiter:UR,now:()=>performance.now(),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),observe:VR,tuning:m_}),y_=(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(u_,o)}}),KR=s_(({thumbnailUrl:e,unavailableLabel:t})=>{let r=cc(null),n=cc(null),o=cc(null),[a,s]=d_(()=>WR(e));a.url!==e&&s(WR(e)),l_(()=>{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]),i_(()=>{let c=r.current,u=BR(c,e,ic,f_(),y_(e,c,s,n));return o.current=u,()=>{o.current=null,u.dispose()}},[e]);let i=dc(c=>{c!==null&&(n.current=c)},[]),l=dc(()=>{s(c=>c.status==="granted"?{url:c.url,status:"loaded"}:c),o.current?.settle(!0)},[]),d=dc(()=>{o.current?.settle(!1)},[]);return ma("span",{className:"block",children:ma("span",{ref:r,"aria-hidden":"true","data-testid":"daily-report-attachment-thumbnail-frame","data-thumbnail-state":c_[a.status],style:lR,className:"relative block w-full",children:ma("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"?R_("span",{className:`flex size-full flex-col items-center justify-center gap-1 px-2 text-center ${ue} text-xs ${Rr}`,"data-testid":"daily-report-attachment-thumbnail-unavailable",children:[ma(a_,{"aria-hidden":"true",className:"size-5 shrink-0 text-slate-500 dark:text-slate-400"}),t]}):ma("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 Ue,jsxs as lr}from"react/jsx-runtime";var $R=1024,uc=["B","KB","MB","GB"],YR=`${ue} text-sm line-through`,S_="relative truncate",g_=ze(S_),E_=v("relative ml-auto pointer-coarse:inline-flex shrink-0 pointer-coarse:items-center pointer-coarse:justify-center rounded-sm text-xs underline decoration-slate-300 underline-offset-2 after:absolute after:-inset-x-2 after:-inset-y-1 pointer-coarse:after:hidden hover:text-slate-700 hover:decoration-current dark:decoration-slate-600 dark:hover:text-slate-200",Me,ue,ce),D_="text-blue-800 text-sm dark:text-blue-300 [@media(hover:hover)]:[[data-daily-report-attachment-preview]:hover_&]:underline",A_="text-blue-800 text-sm hover:underline dark:text-blue-300",T_=`flex h-4 min-w-0 items-center gap-2 ${fr} ${ue} text-xs tabular-nums`,w_=`${ue} text-xs tabular-nums`,__=v("flex min-w-0 flex-col gap-2 rounded-lg",ce),v_=v("pointer-coarse:relative flex min-w-0 pointer-coarse:items-center rounded-sm",Me,ce),x_=v("m-0",ln),C_=e=>{if(e===null||!Number.isFinite(e)||e<0)return null;let t=e,r=0;for(;t>=$R&&r<uc.length-1;)t/=$R,r+=1;return r===0?`${t} ${uc[r]}`:`${t.toFixed(1)} ${uc[r]}`},I_=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}},qR=({attachment:e,labels:t,className:r})=>lr("span",{className:g_(r),children:[C_(e.fileSize)??"\u2014",e.state==="absent"&&` \xB7 ${t.attachmentMissing}`]}),pc=({href:e,children:t,...r})=>{let n=co();return Ue("a",{href:e,...r,...n,children:t})},XR=({downloadUrl:e,label:t,fileName:r})=>lr(pc,{href:e,className:E_,"data-testid":"daily-report-attachment-download",children:[t," ",Ue(ac,{fileName:r})]}),L_=GR(({attachment:e,attachmentIndex:t,apiBasePath:r,labels:n})=>{let o=Ue(KR,{thumbnailUrl:lo(r,e.id,{kind:"thumbnail",variant:Qd}),unavailableLabel:n.attachmentThumbnailUnavailable}),a=e.state==="absent";return lr("li",{className:"@container flex min-w-0 flex-col gap-1","data-testid":"daily-report-attachment-item","data-attachment-state":e.state,children:[a?lr("div",{className:"flex min-w-0 flex-col gap-2",children:[o,Ue(pa,{fileName:e.fileName,attachmentIndex:t,className:YR,testId:"daily-report-attachment-name"})]}):lr(pc,{href:lo(r,e.id,{kind:"inline"}),className:__,"data-testid":"daily-report-attachment-link",...zR,children:[o,Ue(pa,{fileName:e.fileName,attachmentIndex:t,className:D_})]}),lr("div",{className:T_,style:dR,children:[Ue(qR,{attachment:e,labels:n}),!a&&Ue(XR,{downloadUrl:lo(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})]})}),N_=GR(({attachment:e,attachmentIndex:t,apiBasePath:r,labels:n})=>{let o=e.state==="absent",a=jR(null);return lr("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:[Ue(FR,{containerRef:a,children:Ue("div",{ref:a,className:"flex min-w-0 flex-1","data-testid":"daily-report-attachment-name-track",children:lr("div",{className:"flex min-w-0 flex-col",children:[o?Ue(pa,{fileName:e.fileName,attachmentIndex:t,className:YR,testId:"daily-report-attachment-name"}):Ue(pc,{href:lo(r,e.id,{kind:"inline"}),className:v_,"data-testid":"daily-report-attachment-link",children:Ue(pa,{fileName:e.fileName,attachmentIndex:t,className:A_})}),Ue(qR,{attachment:e,labels:n,className:w_})]})})}),!o&&Ue(XR,{downloadUrl:lo(r,e.id,{kind:"download"}),label:n.attachmentDownload,fileName:e.fileName})]})}),O_=({entries:e,headingId:t,apiBasePath:r,labels:n})=>{let o=jR(null);return Ue(kR,{containerRef:o,children:Ue("div",{ref:o,className:"@container","data-testid":"daily-report-attachment-grid-container",children:Ue("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})=>Ue(L_,{attachment:a,attachmentIndex:s,apiBasePath:r,labels:n},a.id))})})})},hi=({attachments:e})=>{let{apiBasePath:t,labels:r,headingLevel:n}=Z(),o=h_(),{tiles:a,rows:s}=b_(()=>I_(e),[e]);return e.length===0?null:lr("div",{className:"flex flex-col gap-2","data-testid":"daily-report-attachment-section",children:[Ue(vt,{level:Yr[n],id:o,className:x_,children:r.attachments}),lr("div",{className:"flex flex-col gap-4",children:[a.length>0&&Ue(O_,{entries:a,headingId:o,apiBasePath:t,labels:r}),s.length>0&&Ue("ul",{"aria-labelledby":o,className:"flex flex-col gap-2","data-testid":"daily-report-attachment-rows",children:s.map(({attachment:i,index:l})=>Ue(N_,{attachment:i,attachmentIndex:l,apiBasePath:t,labels:r},i.id))})]})]})};import{useOverlayEscapeStack as Q_}from"@aiquants/swipe-overlay";import{memo as nh,useCallback as Ei,useEffect as JR,useId as oh,useLayoutEffect as J_,useRef as Rc,useState as ev}from"react";import{useCallback as ZR,useMemo as M_,useState as P_}from"react";var k_=()=>[],mc=(e,t,r)=>{let{pendingAddCommentIds:n,pendingDeleteCommentIds:o,resolvedIdMap:a,addComment:s,deleteComment:i}=ct(),{version:l}=fi(),{labels:d}=Z(),c=d.unknownUser,[u,y]=P_(null),p=ZR(h=>e&&i(e.reportHubId,h,e.date),[e,i]),m=ZR(h=>e&&t?s(e.reportHubId,h,e.date):Promise.resolve(),[e,t,s]),f=We(k_);return{uiComments:M_(()=>{if(!e)return[];let h=Cf(e.externalComments,e.postedComments,r,c),D=o.current.get(e.reportHubId);D?.size&&(h=h.filter(R=>!D.has(R.id)));let b=n.current.get(e.reportHubId);if(b?.size&&t){let R=new Set(h.map(x=>x.id)),g=_r(t,""),E=g==="",w=E?c:g;for(let[x,L]of b){if(D?.has(x)||R.has(x))continue;let M=a.current.get(x);M&&R.has(M)||h.some(P=>P.isMine&&P.content===L&&typeof P.id=="number"&&P.id>0)||h.push({id:x,authorName:w,content:L,createdAt:new Date().toISOString(),isMine:!0,isLegacy:!1,isAuthorUnknown:E})}}return JSON.stringify(h)===JSON.stringify(f.current)?f.current:(f.current=h,h)},[e,t,r,c,o,n,a,l]),handleAddComment:m,handleDeleteComment:p,pendingDeleteId:u,setPendingDeleteId:y,resolvedIdMap:a.current}};import{Fragment as F_,jsx as H_}from"react/jsx-runtime";var ot=({render:e,elementRef:t})=>{let r=co(t);return H_(F_,{children:e(r)})};import B_ from"@heroicons/react/24/outline/TrashIcon.js";import{memo as U_,useId as V_,useMemo as QR,useRef as W_,useState as z_}from"react";import{jsx as dr,jsxs as bi}from"react/jsx-runtime";var fc="data-comment-id",Si="data-comment-delete-button",gi="data-comment-delete-slot",K_=v(dt,wu),$_=Array.from({length:8},(e,t)=>v("relative rounded-xl border border-slate-200 border-solid bg-white p-[11px] dark:border-slate-700 dark:bg-slate-900/70",(t&4)!==0&&"border-blue-200 bg-blue-50 dark:border-blue-800/70 dark:bg-blue-950/40",(t&2)!==0&&"hidden",(t&1)!==0?"z-50":"z-0 hover:z-10")),G_=(e,t,r)=>(e?4:0)+(t?2:0)+(r?1:0),j_=ze("font-semibold text-xs"),Y_=`${ue} text-xs`,q_=v("relative flex h-5 items-center",Ur),X_=v(et,"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",Me,ce),Z_=(e,t,r)=>t===e||typeof e=="number"&&e<0&&r?.get(e)===t||typeof t=="number"&&t<0&&r?.get(t)===e,yc=U_(({comment:e,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:s,onBeforeHide:i,resolvedIdMap:l})=>{let[d,c]=z_(!1),{labels:u}=Z(),y=V_(),p=W_(null),m=Z_(e.id,o,l),f=QR(()=>Ge(e.authorName),[e.authorName]),S=QR(()=>kt(e.content),[e.content]),h=Te.comment(e.id,"author"),D=Te.comment(e.id,"content"),b=to(D),R=e.isMine&&!e.isLegacy,g=!!e.createdAt||R,E=()=>{let x=p.current;x!==null&&i(x),a(null),c(!0),typeof e.id=="number"&&n?.(e.id)},w=x=>{if(!m)return;let L=x.relatedTarget;ke(L)&&x.currentTarget.contains(L)||a(null)};return bi("li",{[fc]:e.id,"data-deleted":d?"true":void 0,className:$_[G_(e.isMine,d,m)],children:[bi("div",{className:"mb-1 flex items-center justify-between",children:[dr("div",{className:j_(If(e.color)),children:b&&!e.isAuthorUnknown?dr(Ae,{fieldKey:h,raw:e.authorName,display:f}):f.text}),g&&bi("div",{className:"flex items-center gap-2",children:[e.createdAt&&dr("div",{className:Y_,children:Ne(e.createdAt)}),R&&bi("div",{[gi]:e.id,className:q_,onBlur:w,children:[dr(ot,{elementRef:p,render:x=>dr("button",{type:"button",...x,className:K_,title:u.commentDelete,"aria-label":u.commentDelete,"aria-expanded":m,"aria-controls":m?y:void 0,[Si]:e.id,onClick:()=>s(e.id,m),children:dr(B_,{"aria-hidden":"true",className:m?tt.deletePending:tt.delete})})}),m&&dr(ot,{render:x=>dr("button",{id:y,type:"button",...x,"data-delete-confirmation":!0,className:X_,onClick:E,children:u.commentDeleteConfirm})})]})]})]}),dr("div",{className:"whitespace-pre-wrap text-slate-700 text-sm leading-6 dark:text-slate-200",children:b?dr(Ae,{fieldKey:D,raw:e.content,display:S}):e.content})]})});yc.displayName="DailyReportPostedComment";import{Fragment as pv,jsx as Wt,jsxs as hc}from"react/jsx-runtime";var tv="data-daily-report-comment-section",rv="data-daily-report-comment-heading",nv=v(yr,ce),ov=ze("flex flex-col gap-2"),ah=(e,t)=>e>0||t,av=v("h-9 min-w-0 flex-1 rounded-lg border border-solid bg-slate-50 px-[7px] pointer-coarse:text-base text-sm focus:bg-white dark:bg-slate-800 dark:text-slate-200 dark:focus:bg-slate-900",an,mr,ce),sv=v("pointer-coarse:relative h-9 rounded-lg bg-blue-800 px-4 font-medium text-sm text-white hover:bg-blue-900 disabled:opacity-50",Me,ce),eh=e=>e.querySelector(`[${Si}][aria-expanded="true"]`),iv=(e,t,r)=>{let n=[...e.querySelectorAll(`[${Si}]`)].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(`[${fc}]`)].filter(i=>!i.contains(t)&&i.closest("[data-deleted]")===null).length;return ah(s,r)?{kind:"heading"}:{kind:"report"}},lv=({comments:e,reportHubId:t,businessDate:r,onDeleteComment:n,pendingDeleteId:o,onPendingDeleteIdChange:a,resolvedIdMap:s,canComment:i,headingRef:l,onSectionRemoved:d})=>{let c=Rc(null),u=Q_(),y=oh(),p=o!==null,m=Ei(()=>{let h=c.current,D=h===null?null:eh(h),b=D===null?null:D.closest(`[${gi}]`),R=h===null?null:mt(h);a(null),D!==null&&b!==null&&R!==null&&b.contains(R)&&D.focus({preventScroll:!0})},[a]);JR(()=>{if(p)return u({id:y,onEscape:()=>(m(),!0)})},[p,u,y,m]),JR(()=>{let h=c.current;if(!p||h===null)return;let D=h.ownerDocument,b=R=>{let g=eh(h)?.closest(`[${gi}]`);g!=null&&ke(R.target)&&g.contains(R.target)||a(null)};return D.addEventListener("pointerdown",b,!0),()=>D.removeEventListener("pointerdown",b,!0)},[p,a]);let f=Ei((h,D)=>{D?m():a(h)},[m,a]),S=Ei(h=>{let D=c.current;if(D===null)return;let b=iv(D,h,i);if(b.kind==="report"){d();return}let R=b.kind==="trash"?b.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:Wt("ul",{ref:c,className:"space-y-2",children:e.map(h=>Wt(yc,{comment:h,reportHubId:t,businessDate:r,onOptimisticDelete:n,pendingDeleteId:o,onPendingDeleteIdChange:a,onToggleConfirmation:f,onBeforeHide:S,resolvedIdMap:s},h.id))})},th=({headingId:e,className:t,children:r,...n})=>{let{labels:o,headingLevel:a}=Z(),s=Rc(null);return ah(n.comments.length,n.canComment)?hc("div",{[tv]:"",className:ov(t),children:[Wt(vt,{ref:s,id:e,level:Yr[a],tabIndex:-1,[rv]:"",className:nv,children:o.comments}),Wt(lv,{...n,headingRef:s}),r]}):null},sh=nh(({report:e,canComment:t,onSectionRemoved:r,formPlacement:n,sectionClassName:o,comments:a,onAddComment:s,onDeleteComment:i,pendingDeleteId:l,onPendingDeleteIdChange:d,resolvedIdMap:c})=>{let u=oh(),y=t?Wt(uv,{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"?Wt(th,{...p,children:y}):hc(pv,{children:[Wt(th,{...p}),y]})});sh.displayName="ReportCommentsView";var fa=nh(({report:e,userId:t,canComment:r,onCommentAdded:n,onSectionRemoved:o,formPlacement:a,sectionClassName:s})=>{let{user:i}=ct(),{uiComments:l,handleAddComment:d,handleDeleteComment:c,pendingDeleteId:u,setPendingDeleteId:y,resolvedIdMap:p}=mc(e,i,t),m=Tf(),f=Rc(!1);J_(()=>{f.current&&m(),f.current=!0},[l,u,m]);let S=Ei(async h=>{await d(h),n?.()},[d,n]);return Wt(sh,{report:e,canComment:r,onSectionRemoved:o,formPlacement:a,sectionClassName:s,comments:l,onAddComment:S,onDeleteComment:c,pendingDeleteId:u,onPendingDeleteIdChange:y,resolvedIdMap:p})});fa.displayName="ReportComments";var dv="flex gap-2",cv="mt-auto flex gap-2",rh="content",uv=({onAddComment:e,pushedToEnd:t,labelledBy:r})=>{let[n,o]=ev(!1),{labels:a}=Z();return hc("form",{className:t?cv:dv,onSubmit:async i=>{i.preventDefault();let l=i.currentTarget,d=l.elements.namedItem(rh);if(!(d instanceof Ye(l).HTMLInputElement))return;let c=d.value.trim();if(c&&e){o(!0);try{await e(c),l.reset()}catch{}finally{o(!1)}}},children:[Wt(ot,{render:i=>Wt("input",{type:"text",name:rh,...i,"aria-labelledby":r,placeholder:a.commentPlaceholder,className:av,autoComplete:"off",enterKeyHint:"send",readOnly:n})}),Wt(ot,{render:i=>Wt("button",{type:"submit",...i,className:sv,disabled:n,children:a.commentSend})})]})};import{useState as vv}from"react";import{Slot as mv}from"@radix-ui/react-slot";import{cva as fv}from"class-variance-authority";import*as lh from"react";import{jsx as hv}from"react/jsx-runtime";var yv=fv(`pointer-coarse:relative 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 ${Me} ${ce}`,{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"}}),ih=new Map,Rv=(e,t,r)=>{let n=`${String(e)}|${String(t)}`,o=ih.get(n);if(o!==void 0)return o(r);let a=ze(yv({variant:e,size:t}));return ih.set(n,a),a(r)},xr=lh.forwardRef(({className:e,variant:t,size:r,asChild:n=!1,...o},a)=>hv(n?mv:"button",{className:Rv(t,r,e),ref:a,...o}));xr.displayName="Button";import{jsx as gv}from"react/jsx-runtime";var bv=`flex h-9 w-full min-w-0 rounded-md border border-solid bg-white px-[7px] py-[3px] text-sm text-slate-900 shadow-xs disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 pointer-coarse:text-base dark:bg-slate-900 dark:text-slate-100 ${an} ${mr} ${ce}`,Sv=ze(bv);function dh({className:e,type:t,...r}){return gv("input",{type:t,"data-slot":"input",className:Sv(e),...r})}import*as ch from"@radix-ui/react-label";import{jsx as Av}from"react/jsx-runtime";var Ev="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",Dv=ze(Ev);function ya({className:e,...t}){return Av(ch.Root,{"data-slot":"label",className:Dv(e),...t})}import{jsx as _v}from"react/jsx-runtime";var Tv=`flex min-h-15 w-full rounded-md border border-solid bg-white p-[7px] text-sm text-slate-900 shadow-xs disabled:cursor-not-allowed disabled:opacity-50 pointer-coarse:text-base dark:bg-slate-900 dark:text-slate-100 ${mr} ${ce}`,wv=ze(Tv);function uh({className:e,...t}){return _v("textarea",{"data-slot":"textarea",className:wv(e),...t})}import{jsx as zt,jsxs as Di}from"react/jsx-runtime";var uo=e=>({title:e.subject??"",content:e.content??""}),xv=e=>{e.preventDefault()},Ai=({report:e,onCancel:t,onPublishSuccess:r,titleInputRef:n})=>{let{updateReport:o,publishReport:a}=ct(),{labels:s}=Z(),i=jr(),{title:l,content:d}=vy(e.reportHubId),[c,u]=vv(!1),y=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)}},m=`report-title-${e.reportHubId}`,f=`report-content-${e.reportHubId}`;return Di("form",{className:"space-y-4 p-1",onSubmit:xv,children:[Di("div",{className:"space-y-2",children:[zt(ya,{htmlFor:m,children:s.formTitle}),zt(ot,{elementRef:n,render:S=>zt(dh,{id:m,value:l,onChange:h=>i.setInput(e.reportHubId,{title:h.target.value}),placeholder:s.formTitlePlaceholder,disabled:c,...S})})]}),Di("div",{className:"space-y-2",children:[zt(ya,{htmlFor:f,children:s.formContent}),zt(ot,{render:S=>zt(uh,{id:f,value:d,onChange:h=>i.setInput(e.reportHubId,{content:h.target.value}),placeholder:s.formContentPlaceholder,className:"min-h-50",disabled:c,...S})})]}),Di("div",{className:"flex justify-end gap-2",children:[t&&zt(ot,{render:S=>zt(xr,{type:"button",variant:"outline",onClick:t,disabled:c,...S,children:s.formCancel})}),zt(ot,{render:S=>zt(xr,{type:"button",variant:"secondary",onClick:y,disabled:c,...S,children:s.formSave})}),zt(ot,{render:S=>zt(xr,{type:"button",onClick:p,disabled:c,...S,children:s.formPublish})})]})]})};import{useContext as fh,useMemo as yh,useSyncExternalStore as Rh}from"react";import{jsx as Tn,jsxs as mh}from"react/jsx-runtime";var Cv=`inline-grid whitespace-nowrap text-xs leading-4 tabular-nums ${ue}`,ph="[grid-area:1/1]",Iv=e=>{let t=0;for(let r=e;r!==0;r&=r-1)t+=1;return t},bc=e=>e===null||e.matchedSets===null?null:Iv(e.matchedSets),Ti=(e,t,r)=>{let n=bc(e);return t.showsMatchedSets&&n!==null?r.searchMatchedKeywordsDescription(n,t.setCount):null},hh=(e,t,r)=>{let n=bc(e);return e!==null&&!r&&(n===null||n>=1)&&t.entry===e&&t.isCurrent&&t.fields.length===0},bh=({entry:e,drawn:t,indicator:r,isEditing:n,labels:o})=>{let a=Ti(e,r,o),s=Xy(t.fields,o);return[...a===null?[]:[a],...s.length>0?[s]:[],...hh(e,t,n)?[o.searchMatchOutsideViewDescription]:[]]},Lv=({isEditing:e,descriptionId:t})=>{let{entry:r,tally:n,indicator:o}=da(),{labels:a}=Z(),s=Rh(n.subscribe,n.getSnapshot,n.getSnapshot),{setCount:i,showsMatchedSets:l}=o,d=l?`${a.searchMatchedKeywords(i,i)} ${a.searchMatchOutsideView}`:a.searchMatchOutsideView,c=bc(r),u=hh(r,s,e),y=Ti(r,o,a),p=yh(()=>bh({entry:r,drawn:s,indicator:o,isEditing:e,labels:a}),[r,s,o,e,a]);return mh("span",{className:Cv,"data-daily-report-search-indicator":!0,children:[Tn("span",{"aria-hidden":"true",className:`invisible ${ph}`,"data-daily-report-search-indicator-placeholder":!0,children:d}),mh("span",{className:ph,children:[y!==null&&c!==null?Tn("span",{"aria-hidden":"true",title:y,"data-daily-report-search-matched-keywords":`${c}/${i}`,children:a.searchMatchedKeywords(c,i)}):null,y!==null&&u?" ":null,u?Tn("span",{"aria-hidden":"true",title:a.searchMatchOutsideViewDescription,"data-daily-report-search-outside-view":!0,children:a.searchMatchOutsideView}):null,Tn("span",{id:t===null?void 0:t,className:er,"data-daily-report-search-indicator-description":!0,children:p.join(" ")})]})]})},wi=({isEditing:e,descriptionId:t})=>fh(ft)===null?null:Tn(Lv,{isEditing:e,descriptionId:t}),Nv=({id:e})=>{let{entry:t,tally:r,indicator:n}=da(),{labels:o}=Z(),a=Rh(r.subscribe,r.getSnapshot,r.getSnapshot),s=yh(()=>bh({entry:t,drawn:a,indicator:n,isEditing:!1,labels:o}),[t,a,n,o]);return Tn("span",{id:e,hidden:!0,"data-daily-report-search-match-description":!0,children:s.join(" ")})},Sh=({id:e})=>fh(ft)===null?null:Tn(Nv,{id:e});import{virtualScrollItemElementId as dx}from"@aiquants/virtualscroll";import{useContext as Oi}from"react";import{virtualScrollItemElementId as Bh}from"@aiquants/virtualscroll";import{createContext as Qv,useCallback as Se,useContext as Jv,useLayoutEffect as Zr,useMemo as Uh,useRef as Qr,useState as mo,useSyncExternalStore as $h}from"react";import{flushSync as Ni}from"react-dom";var gh=(e,t)=>e.id===t.id&&e.indexHint===t.indexHint,Eh=Object.freeze([]),Dh=(e,t)=>e.includes(t)?e:Object.freeze([...e,t]),Ah=(e,t)=>Object.freeze(e.filter(r=>r!==t)),Th=e=>{let t=Eh,r=Eh,n=e,o=null,a=Object.freeze({selected:n,settled:n}),s=0,i=!1,l=()=>{let R=o===null?n:o;if(!(gh(a.selected,n)&&gh(a.settled,R))){a=Object.freeze({selected:n,settled:R});for(let g of t)g()}},d=()=>a,c=R=>(t=Dh(t,R),()=>{t=Ah(t,R)}),u=R=>{n=R,l()},y=R=>{let g=o!==null;if(o=R,l(),g!==(o!==null))for(let E of r)E()},p=R=>y(R),m=()=>y(null),f=()=>o!==null,S=R=>(r=Dh(r,R),()=>{r=Ah(r,R)}),h=()=>{s+=1},D=R=>{i=R},b=Object.freeze({appliedEpoch:()=>s,pending:()=>i});return{getSnapshot:d,subscribe:c,select:u,hold:p,release:m,isHeld:f,subscribeHold:S,noteKeyStepApplied:h,noteKeyStepsPending:D,keySteps:b}};var Cr=e=>({active:e,effect:"none"}),wh=(e,t)=>e!==null&&e.index>=t.visibleStartIndex&&e.index<=t.visibleEndIndex,Sc=(e,{items:t,selected:r,range:n})=>{if(n===null)return e===null?r:e;if(wh(e,n))return e;if(wh(r,n))return r;let o=Fe(t,n.visibleStartIndex);return o===void 0?null:{reportHubId:o.reportHubId,index:n.visibleStartIndex}},_h=(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:or(e,r).reportHubId,index:r},effect:"handBack"}},gc=(e,t)=>{switch(t.kind){case"key":return Cr(t.target);case"activation":case"focusInControl":return Cr(t.row);case"focusInComposite":return t.from==="inside"?Cr(e):t.pressed!==null?Cr(t.pressed):{active:Sc(e,t.shown),effect:"reveal"};case"focusLeft":return Cr(Sc(e,t.shown));case"rangeChanged":return Cr(t.focusWithin&&e!==null?e:Sc(e,t.shown));case"listChanged":{if(e===null)return Cr(null);let r=He(t.items,e.reportHubId,e.index);return r===-1?_h(t.items,e.index):Cr(r===e.index?e:{reportHubId:e.reportHubId,index:r})}case"removed":return t.selection===null||t.selection.reportHubId!==t.reportHubId?Cr(e):_h(t.items,t.selection.index)}};var wn=e=>e.isComposing||e.keyCode===229,po=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 _i=e=>e.matches(":focus-visible")&&la(e.ownerDocument)!=="pointer";var Ov="data-daily-report-keyboard-focus",qr={capture:!0},vh=e=>{let t=xy(e.ownerDocument),r=i=>{e.toggleAttribute(Ov,ke(i)&&_i(i))},n=i=>r(i.target),o=i=>{ke(i.relatedTarget)&&e.contains(i.relatedTarget)||r(null)},a=()=>r(null);e.addEventListener("focusin",n,qr),e.addEventListener("keydown",n,qr),e.addEventListener("focusout",o,qr),e.addEventListener("pointerdown",a,qr);let s=mt(e);return r(s!==null&&e.contains(s)?s:null),()=>{e.removeEventListener("focusin",n,qr),e.removeEventListener("keydown",n,qr),e.removeEventListener("focusout",o,qr),e.removeEventListener("pointerdown",a,qr),r(null),t()}};var Mv='form, input, textarea, select, [contenteditable]:not([contenteditable="false"]), audio[controls], video[controls]',Pv='select, input[type="search"], [contenteditable]:not([contenteditable="false"]), audio[controls], video[controls]',kv=["combobox","listbox","menu","menubar","radiogroup","slider","spinbutton","textbox","tree","grid","scrollbar","tablist","toolbar","treegrid","separator"],Fv=kv.map(e=>`[role="${e}"]`).join(", "),Hv='[aria-expanded="true"]',Bv=new Map([["ArrowUp","previous"],["ArrowDown","next"],["Home","first"],["End","last"],["PageUp","pageBackward"],["PageDown","pageForward"]]),Uv=new Set(["Enter"," "]),Vv=new Map([["Home","exitBefore"],["End","exitAfter"]]),Dc=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=Vv.get(e.key);return r===void 0?null:r}let t=Bv.get(e.key);return t!==void 0?t:Uv.has(e.key)?"activate":e.key==="Escape"?"returnToRow":null},Ec=(e,t,r,n)=>{let o=e.closest(t);return o!==null&&o!==n&&o!==r&&r.contains(o)},Wv=(e,t,r,n)=>{let o=Rn(t,r);if(o===null)return null;if(e==="tab")return e;if(e==="activate"||Ec(t,Fv,r,n))return null;if(e==="returnToRow"){if(Ec(t,Pv,r,n))return null;let a=t.closest(Hv);return a!==null&&o.contains(a)?null:e}return Ec(t,Mv,r,n)?null:e},xh=(e,{container:t,composite:r})=>{let n=Dc(e);if(n===null||e.defaultPrevented||wn(e)||t===null||r===null||!ke(e.target)||!t.contains(e.target))return null;let o=e.target,a=o===r?n==="returnToRow"?null:n:Wv(n,o,t,r);return a===null?null:{kind:a,target:o}};var vi={kind:"stay"},Ci=e=>{if(e.kind==="measured")return e.heightOf;let{rowHeight:t}=e;return()=>t},Ch=e=>Math.floor(.875*e),Xr=(e,t)=>({kind:"move",index:e,align:t}),xi=(e,t,r,n)=>e>=0&&e+t<=r?"none":t>r?n>0?"top":"bottom":e<0?"top":"bottom",zv=({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},Kv=({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},$v=(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 vi;if(r==="top")return Xr(n-1,"top");let d=i(n-1);return Xr(n-1,xi(s-d,d,a,-1))}case"next":return n===o-1?vi:r==="top"?Xr(n+1,"top"):Xr(n+1,xi(l,i(n+1),a,1));case"first":return Xr(0,"top");case"last":return Xr(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 vi;let d=zv(t);return Xr(d.index,xi(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 vi;let d=Kv(t);return Xr(d.index,xi(d.top,i(d.index),a,-1))}}},Gv=({index:e,activeRowTop:t,heightOf:r},n)=>Lh(n,{index:e,offsetPx:-t},r),Ih=(e,t,r,n)=>{let o=r,a=null,s=0;for(let i=0;i<t;i++){let l=$v(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:Gv(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}},Ac=({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"},Lh=(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},Ii=(e,t,r,n)=>{let o=e.getViewportSize(),a=e.getScrollPosition();if(!(o>0&&a>=0))return null;let s=Ci(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:Lh(t,i,s),heightOf:s}},Li=(e,t,r,n)=>{let o=Ci(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()},Mh=({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 Kt={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}},Tc=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!1}),jv=Object.freeze({apply:null,flush:!1,requestFrame:!0,ended:!1}),Ph=Object.freeze({apply:null,flush:!1,requestFrame:!1,ended:!0}),Yv=new Map(Object.values(Kt).map(e=>[e,Object.freeze({apply:e,flush:!1,requestFrame:!0,ended:!1})])),kh=e=>{let t=Yv.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},qv=(e,t,r)=>e==="row"||e==="page"?t+r:r,Fh=e=>({state:{axis:e.axis,pending:0,fence:"immediate"},effects:kh(e)}),Hh=(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",kh(r)):(e.pending=qv(e.axis,e.pending,r.amount),Tc)}case"frame":{if(e.fence==="open")return Tc;if(e.fence==="immediate")return e.fence="flush",jv;if(e.pending===0)return e.fence="open",Tc;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?Ph:{apply:{axis:e.axis,amount:e.pending},flush:!0,requestFrame:!1,ended:!0};case"cancel":return Ph}};var wc=Qv(null),ex=Object.freeze({kind:"frame"}),Vh={capture:!0},tx=()=>{},Wh=(e,t,r)=>{let n=e.ownerDocument,o=n.defaultView;if(o===null)return tx;let a=!0,s=()=>{a&&(a=!1,i.disconnect(),n.removeEventListener("focusin",s,Vh))},i=new o.MutationObserver(()=>{e.isConnected||(s(),r())});return i.observe(t,{childList:!0,subtree:!0}),n.addEventListener("focusin",s,Vh),s},rx=Object.freeze({kind:"keyup"}),nx=Object.freeze({kind:"cancel"}),ox=Object.freeze({previous:Object.freeze({kind:"repeat",step:Kt.previous}),next:Object.freeze({kind:"repeat",step:Kt.next}),pageBackward:Object.freeze({kind:"repeat",step:Kt.pageBackward}),pageForward:Object.freeze({kind:"repeat",step:Kt.pageForward}),first:Object.freeze({kind:"repeat",step:Kt.first}),last:Object.freeze({kind:"repeat",step:Kt.last}),activate:Object.freeze({kind:"repeat",step:Kt.activate})}),fo={capture:!0},ax=e=>e in Kt,sx=(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}},ix=(e,t)=>({top:e.top-t,bottom:e.bottom+t}),zh=e=>{let t=Qo(e),r=$r(e);return t===null||r===null?null:{reportHubId:t,index:r-1}},lx=e=>e==="first"||e==="last",Kh=(e,t)=>{let r=He(e,t.reportHubId,t.index);return r===-1?null:{reportHubId:t.reportHubId,index:r}},Gh=e=>{let t=Jv(wc);if(t===null)throw new Error("[daily-report] useListRowState is called outside a view's rows (no row cursor)");let r=Se(a=>t.subscribe(e,a),[t,e]),n=Se(()=>t.rowStateOf(e),[t,e]),o=$h(r,n,n);return{active:(o&1)!==0,selected:(o&2)!==0}},jh=(e,t)=>{let r=Se(()=>{let n=e.getActiveId();if(n===null)return null;let o=He(t,n,e.getActiveIndexHint());return o===-1?null:o},[e,t]);return $h(e.subscribeActive,r,r)},Yh=({items:e,selectedId:t,onSelect:r,onActivate:n,containerRef:o,rootRef:a,gridId:s,handleRef:i,scroller:l,rowSizing:d,arrowAlign:c})=>{let[u]=mo(()=>Mh({initialSelectedId:t})),[y]=mo(()=>mR(u)),p=We(()=>({items:e,onSelect:r,onActivate:n,rowSizing:d,arrowAlign:c})),m=Qr(null),f=Qr(!1),S=Qr(null),h=Qr(!1),D=Qr(null),b=Qr(()=>{}),[R,g]=mo(null),[E,w]=mo(0),x=Qr(null),L=We(()=>{if(t===null)return null;let _=He(e,t,null);return _===-1?null:{reportHubId:t,index:_}}),[M]=mo(()=>Th({id:t,indexHint:null})),[P,B]=mo(0),T=Uh(()=>({id:t,indexHint:t===null?null:jm(R,t)}),[t,R]),A=Qr(T);Zr(()=>{p.current={items:e,onSelect:r,onActivate:n,rowSizing:d,arrowAlign:c},A.current=T},[p,e,r,n,d,c,T]),Zr(()=>{T.indexHint===null&&T.id===M.getSnapshot().selected.id||M.select(T)},[M,T,E]);let C=Se((_,O)=>{let H=D.current;if(H!==null&&H.items===_&&H.reportHubId===O)return H.index;let X=He(_,O,H!==null&&H.reportHubId===O?H.index:null);return X!==-1&&(D.current={items:_,reportHubId:O,index:X}),X},[]),I=Se((_,O)=>{D.current={items:p.current.items,reportHubId:_,index:O},g(H=>H!==null&&H.reportHubId===_&&H.index===O?H:{reportHubId:_,index:O}),w(H=>H+1),M.select({id:_,indexHint:O})},[p,M]),$=Se((_,O)=>{D.current={items:p.current.items,reportHubId:O.reportHubId,index:O.index},M.select({id:O.reportHubId,indexHint:O.index}),_.selection=O},[p,M]),k=Se(_=>{Ni(()=>{_.select(_.reportHubId,_.index,"settled"),I(_.reportHubId,_.index),B(O=>O+1)})},[I]),U=Se(()=>{let _=p.current.items,O=u.getSelectedId(),H=O===null?-1:C(_,O);return{items:_,selected:O===null||H===-1?null:{reportHubId:O,index:H},range:m.current}},[u,p,C]),G=Se(_=>{let O=h.current;h.current=!0;try{_()}finally{h.current=O}},[]),V=Se(_=>{L.current=_,u.setActive(_===null?null:_.reportHubId,_===null?null:_.index)},[L,u]),W=Se(_=>{let O=i.current;if(O===null)return null;let{items:H,rowSizing:X}=p.current;return Ii(O,_,H.length,X)},[i,p]),de=Se(_=>{let O=W(_);O===null||Ac(O)==="whole"||O.activeRowTop<=0&&O.activeRowTop+O.heightOf(_)>=O.viewport||l.toIndex(_,{align:"nearest"})},[W,l]),ge=Se((_,O)=>{let H=o.current;if(H===null)return;let X=p.current.items,ae=L.current,me=null;if(_===null)me=ae;else{let F=He(X,_,ae!==null&&ae.reportHubId===_?ae.index:null);F!==-1&&(me={reportHubId:_,index:F},V(me))}me!==null&&de(me.index);let Y=H.ownerDocument,oe=Y.getElementById(s);if(oe===null)return;let Le=me===null?null:Y.getElementById(Bh(s,me.reportHubId));G(()=>ky(H,oe,Le,O))},[o,p,L,s,V,de,G]),N=Se(_=>{let O=gc(L.current,_);V(O.active),O.effect==="reveal"&&O.active!==null&&de(O.active.index);let H=o.current;O.effect==="handBack"&&f.current&&H!==null&&pn(H)&&ge(O.active===null?null:O.active.reportHubId,"removal")},[o,L,V,de,ge]),z=Se(()=>{f.current&&(f.current=!1,S.current=null,N({kind:"focusLeft",shown:U()}))},[N,U]);Zr(()=>{u.settleSelection(t)},[u,t,P]),Zr(()=>{t!==null&&C(e,t)},[e,t,C]),Zr(()=>{N({kind:"listChanged",items:e})},[e,N]),Zr(()=>{let _=a.current;if(_!==null)return vh(_)},[a]),Zr(()=>{let _=o.current;if(_===null)return;let O=_.ownerDocument,H=ae=>{let me=o.current,Y=ae.target;if(!(me!==null&&ke(Y)&&me.contains(Y))){S.current=null,z();return}let Le=ae.pointerType==="touch"?null:Rn(Y,me);S.current=Le===null?null:zh(Le)},X=()=>{S.current=null};return O.addEventListener("pointerdown",H,fo),O.addEventListener("pointerup",X,fo),O.addEventListener("pointercancel",X,fo),()=>{O.removeEventListener("pointerdown",H,fo),O.removeEventListener("pointerup",X,fo),O.removeEventListener("pointercancel",X,fo)}},[o,z]);let j=Se((_,O)=>{N({kind:"activation",row:{reportHubId:_,index:O}}),I(_,O)},[N,I]),te=Se(_=>{let O=gc(L.current,{kind:"removed",reportHubId:_,selection:D.current,items:p.current.items});if(O.effect!=="handBack")return;V(O.active);let H=O.active===null?null:O.active.reportHubId;b.current();let X=o.current,ae=X===null?null:mt(X);if(X!==null&&ae!==null&&!pn(X)&&!X.contains(ae)){b.current=Wh(ae,ae.ownerDocument,()=>ge(H,"removal"));return}ge(H,"removal")},[o,p,L,V,ge]),ye=Se((_,O,H,X)=>{let{items:ae,onSelect:me,rowSizing:Y,arrowAlign:oe}=p.current,Le=i.current;if(me===null||Le===null)return;let F=Ii(Le,H.index,ae.length,Y);if(F===null)return;let K=Ih(_,O,F,oe),se=or(ae,K.index),he=K.index!==H.index,_e=he||X&&lx(_)&&A.current.id!==se.reportHubId,$e=x.current;Ni(()=>{he&&N({kind:"key",target:{reportHubId:se.reportHubId,index:K.index}}),_e&&(u.settleSelection(se.reportHubId),$e!==null&&$($e,{reportHubId:se.reportHubId,index:K.index,select:me}),me(se.reportHubId,K.index,$e===null?"settled":"held")),K.alignment!==null&&l.toIndex(K.alignment.index,{align:K.alignment.align}),K.scrollDelta!==0&&l.by(K.scrollDelta),_e&&$e===null&&(I(se.reportHubId,K.index),B(Yt=>Yt+1))})},[u,p,i,l,I,$,N]),ie=Se(_=>{j(_.reportHubId,_.index),p.current.onActivate(_.reportHubId,_.index)},[p,j]),J=Se(_=>{let O=L.current;if(O===null)return;if(_.axis==="activate"){ie(O);return}let H=sx(_.axis,_.amount);ye(H.command,H.count,O,!1)},[L,ie,ye]),re=Se(_=>{x.current=null,_.frame!==0&&_.view.cancelAnimationFrame(_.frame);let O=_.selection;O!==null&&u.getSelectedId()===O.reportHubId&&k(O),M.release()},[u,M,k]),De=Se((_,O,H)=>{let{apply:X}=O;X!==null&&(O.flush?Ni(()=>J(X)):J(X)),x.current===_&&(O.ended?re(_):O.requestFrame&&(_.frame=_.view.requestAnimationFrame(H)))},[J,re]),q=Se((_,O,H)=>{let X=Hh(_.state,O);M.noteKeyStepsPending(!X.ended&&_.state.pending!==0),O.kind==="frame"&&X.apply!==null&&M.noteKeyStepApplied(),De(_,X,H)},[M,De]),ne=Se(()=>{let _=x.current;_!==null&&(_.frame=0,q(_,ex,ne))},[q]),Ct=Se(()=>{let _=x.current;_!==null&&q(_,rx,ne)},[q,ne]),Qe=Se(()=>{let _=x.current;_!==null&&q(_,nx,ne)},[q,ne]),It=Se((_,O)=>{M.hold(A.current);let{state:H,effects:X}=Fh(Kt[_]),ae={state:H,view:O,frame:0,selection:null};x.current=ae,De(ae,X,ne)},[M,De,ne]);Zr(()=>()=>{b.current();let _=x.current;if(x.current=null,_===null)return;_.frame!==0&&_.view.cancelAnimationFrame(_.frame);let O=_.selection;O!==null&&u.getSelectedId()===O.reportHubId&&O.select(O.reportHubId,O.index,"settled")},[u]);let st=Se((_,O,H)=>{let X=L.current,ae=X===null?null:W(X.index);if(X===null||ae===null||Ac(ae)!=="hidden")return;let me=O.ownerDocument.getElementById(Bh(s,X.reportHubId));me===null||!RR(me,_===O?null:_,H)||Ni(()=>l.toIndex(X.index,{align:"nearest"}))},[L,s,l,W]),pt=Se(_=>{let O=x.current,H=O!==null&&_.repeat?Dc(_):null;if(O!==null&&H!==null&&ax(H)&&Kt[H].axis===O.state.axis){_.preventDefault(),q(O,ox[H],ne);return}let X=o.current,ae=X===null?null:X.ownerDocument.getElementById(s),me=p.current.onSelect===null?null:xh(po(_),{container:X,composite:ae});if(Ct(),me===null||X===null||ae===null)return;S.current=null;let{kind:Y}=me;switch(Y){case"exitBefore":case"exitAfter":{let se=yR(X,Y==="exitBefore"?"before":"after");if(se===null)return;_.preventDefault(),se.focus();return}case"tab":st(me.target,ae,_.shiftKey);return;case"returnToRow":_.preventDefault(),G(()=>ae.focus({preventScroll:!0}));return}let oe=L.current;if(Y==="activate"){if(_.preventDefault(),oe===null)return;_.repeat?It(Y,Ye(X)):ie(oe);return}if(oe===null)return;let{items:Le,rowSizing:F}=p.current,K=i.current;K===null||Ii(K,oe.index,Le.length,F)===null||(_.preventDefault(),_.repeat?It(Y,Ye(X)):ye(Y,1,oe,!0),me.target!==ae&&G(()=>ae.focus({preventScroll:!0})))},[p,o,s,i,L,ne,q,Ct,It,st,ie,ye,G]),it=Se(()=>{Ct()},[Ct]),bt=Se(_=>{let O=o.current,H=_.target;if(O===null)return;f.current=!0;let X=O.ownerDocument.getElementById(s),ae=S.current;if(S.current=null,H===X){let $e=h.current||ke(_.relatedTarget)&&O.contains(_.relatedTarget)?"inside":"outside";N($e==="inside"?{kind:"focusInComposite",from:$e}:{kind:"focusInComposite",from:$e,pressed:ae===null?null:Kh(p.current.items,ae),shown:U()});return}let me=Rn(H,O),Y=me===null?null:zh(me),oe=Y===null?null:Kh(p.current.items,Y);if(me===null||oe===null||!ke(H))return;N({kind:"focusInControl",row:oe}),b.current(),b.current=Wh(H,me,()=>ge(null,"removal"));let Le=i.current;if(Le===null||X===null||!_i(H))return;let F=X.getBoundingClientRect(),K=me.getBoundingClientRect(),se=K.height<=F.height?K:ix(H.getBoundingClientRect(),pr),he=Nh(se,F),_e=Le.getViewportSize();he===0||!(_e>0&&F.height>0)||l.by(he*_e/F.height)},[o,s,p,i,l,N,U,ge]),Gt=Se(_=>{let O=o.current,H=_.relatedTarget,X=ke(H)?O?.contains(H)?"view":"outside":"nowhere";X!=="view"&&Qe(),X==="outside"&&z()},[o,Qe,z]),jt=Se(_=>{m.current={visibleStartIndex:_.visibleStartIndex,visibleEndIndex:_.visibleEndIndex},N({kind:"rangeChanged",focusWithin:f.current,shown:U()})},[N,U]),wt=Uh(()=>({onKeyDown:pt,onKeyUp:it,onPointerDownCapture:Qe,onWheelCapture:Qe,onTouchStartCapture:Qe,onFocus:bt,onBlur:Gt}),[pt,it,Qe,bt,Gt]);return{cursor:u,controls:y,containerProps:wt,handleRangeChange:jt,selection:T,selectionStore:M,resolveSelectedIndex:C,rememberSelection:I,activateRow:j,focusViewRow:ge,focusAfterRemoval:te}};import{jsx as Mi}from"react/jsx-runtime";var Ce=(e,t)=>`${e}-${t}`,Pi=e=>dx(Df(),e),yo=Object.freeze([]),cx="data-daily-report-row-shell",_c=Object.freeze({...Ot,[cx]:"",className:`h-full w-full ${Mt}`}),ki=Mi("div",{..._c}),ux=(e,t,r)=>r===Gr?e.listRowPositionInUnknownTotal(t+1):e.listRowPosition(t+1,r),Ro=({id:e,whileTotalUnknownOnly:t})=>{let{labels:r}=Z(),n=Oi(bn),o=Oi(hn);return t&&o!==Gr?null:Mi("span",{id:e,hidden:!0,children:ux(r,n,o)})},Fi=({reportHubId:e,rowId:t,name:r,className:n,style:o,onMouseDown:a,frameRef:s,children:i})=>{let{active:l,selected:d}=Gh(e),c=fR(e),u=Oi(bn),y=Oi(hn),p=r.kind==="parts",m=p&&y===Gr?[...r.describedBy,Ce(t,"position")]:r.describedBy,f=m.length===0?void 0:m.join(" ");return Mi(ec.Provider,{value:c,children:Mi("div",{ref:s,role:"row",id:t,[ws]:e,"aria-rowindex":u+1,"aria-posinset":u+1,"aria-setsize":y,"aria-level":1,"aria-selected":d,[yu]:l?"":void 0,"aria-labelledby":p?Ce(t,"name"):void 0,"aria-describedby":f,"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 mx,jsx as Hi,jsxs as fx}from"react/jsx-runtime";var px=ze(Cu),qh=e=>e.name===void 0||e.name===e.label?null:e.name,Xh=e=>{let t=qh(e);return t===null?e.label:t},ho=({config:e,id:t})=>{let r=qh(e);return Hi("span",{id:t,className:px(e.badgeClassName),children:r===null?e.label:fx(mx,{children:[Hi("span",{"aria-hidden":"true",children:Hi("abbr",{title:r,children:e.label})}),Hi("span",{className:er,children:r})]})})};import{jsx as Bi,jsxs as yx}from"react/jsx-runtime";var Ui=({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:()=>Al(t),imageName:()=>Dl(s.attachments,t)}),r!==void 0&&i.push({part:"source",text:()=>Xh(r),imageName:null}),n!==null&&i.push({part:"preview",text:n,imageName:null}),a!==null&&i.push({part:"match",text:()=>Ti(o,a.indicator,s),imageName:null}),i},Ra=(e,t)=>t.map(({part:r})=>Ce(e,r)),Vi=({rowId:e,name:t,description:r})=>{let n=Ce(e,"name");return yx("div",{..._c,"aria-labelledby":t===null?void 0:n,children:[t===null?null:Bi("span",{id:n,hidden:!0,children:t}),r.map(({part:o,text:a,imageName:s})=>s===null?Bi("span",{id:Ce(e,o),hidden:!0,children:a()},o):Bi("span",{id:Ce(e,o),hidden:!0,role:"img","aria-label":s(),children:a()},o)),t===null?null:Bi(Ro,{id:Ce(e,"position"),whileTotalUnknownOnly:!0})]})};var Rx=()=>{},Wi=(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?Rx:t.subscribe(r,a);return()=>{s(),i()}},changesBox:(a,s)=>a.detail!==s.detail}};import Nx from"lucide-react/dist/esm/icons/pencil.js";import Ox from"lucide-react/dist/esm/icons/trash-2.js";import{jsx as Zh}from"react/jsx-runtime";var Ki=24,Qh=2,hx=20,zi=5,bx=3,Sx=()=>{let e=Math.cos(2*Math.PI/zi)/Math.cos(Math.PI/zi),t=Array.from({length:2*zi},(y,p)=>{let m=-Math.PI/2+p*Math.PI/zi,f=p%2===0?1:e;return{x:f*Math.cos(m),y:f*Math.sin(m)}}),r=t.map(y=>y.x),n=t.map(y=>y.y),[o,a,s,i]=[Math.min(...r),Math.max(...r),Math.min(...n),Math.max(...n)],l=(hx-Qh)/(a-o),d=Ki/2-l*(o+a)/2,c=Ki/2-l*(s+i)/2,u=y=>String(Number(y.toFixed(bx)));return t.map(y=>`${u(d+l*y.x)},${u(c+l*y.y)}`).join(" ")},gx=Sx(),bo=({filled:e})=>Zh("svg",{viewBox:`0 0 ${Ki} ${Ki}`,"aria-hidden":"true",fill:"none",stroke:"currentColor",strokeWidth:Qh,strokeLinejoin:"round",className:e?tt.starOn:tt.starOff,children:Zh("polygon",{points:gx})});import Dx from"lucide-react/dist/esm/icons/check.js";import Ax from"lucide-react/dist/esm/icons/refresh-cw.js";import{jsx as Jh}from"react/jsx-runtime";var $i=24,Ex=6,eb=()=>Jh("svg",{viewBox:`0 0 ${$i} ${$i}`,"aria-hidden":"true",className:tt.read,children:Jh("circle",{cx:$i/2,cy:$i/2,r:Ex,fill:"currentColor"})});import{jsx as Gi}from"react/jsx-runtime";var Tx="data-daily-report-updated-since-read",So=({readState:e})=>e==="unread"?Gi(eb,{}):e==="updatedSinceRead"?Gi(Ax,{className:tt.read}):Gi(Dx,{className:tt.read}),_n=(e,t)=>e==="read"?t.markUnread:e==="unread"?t.markRead:t.markUpdateRead,go=({readState:e,label:t})=>e==="updatedSinceRead"?Gi("span",{[Tx]:"","aria-hidden":"true",className:xu,children:t}):null;import{jsx as _x}from"react/jsx-runtime";var wx=/^(\d{4}-\d{2}-\d{2})(?:T(\d{2}:\d{2}):\d{2})?$/,vn=({text:e})=>{let t=wx.exec(e);if(t===null)return e;let[,r,n]=t;return _x("time",{dateTime:e,children:n===void 0?r:`${r} ${n}`})};import{Fragment as Lx,jsx as qe,jsxs as vc}from"react/jsx-runtime";var vx=ze("m-0"),Dt=({label:e,classNames:t,valueId:r,children:n})=>vc("div",{className:t.field,children:[qe("dt",{className:t.label,children:e}),qe("dd",{id:r,className:vx(t.value),children:n})]}),xx=`mt-2 font-semibold ${ue} text-xs uppercase tracking-wide first:mt-0`,Cx=`m-0 flex flex-col rounded-xl bg-slate-100 p-3 ${ue} text-xs dark:bg-slate-800/60`,Ix="m-0 mt-1 text-slate-700 text-sm dark:text-slate-200",Jr=({label:e,children:t})=>vc(Lx,{children:[qe("dt",{className:xx,children:e}),qe("dd",{className:Ix,children:t})]}),tb=({report:e,visitTimeDisplay:t,labels:r})=>{let n=Vr(e.category),o=Vr(e.creationCategory);return vc("dl",{className:Cx,children:[qe(Jr,{label:r.author,children:qe(Ae,{fieldKey:Te.field("author"),raw:e.author,display:Ge(e.author)})}),qe(Jr,{label:r.createdAt,children:qe(vn,{text:Ne(e.createdAt)})}),qe(Jr,{label:r.updatedBy,children:qe(Ae,{fieldKey:Te.field("updatedBy"),raw:e.updatedBy,display:Ge(e.updatedBy)})}),qe(Jr,{label:r.updatedAt,children:qe(vn,{text:Ne(e.updatedAt)})}),qe(Jr,{label:r.businessDate,children:qe(vn,{text:Ne(e.date)})}),t!==null&&qe(Jr,{label:r.visitTime,children:t}),n.text.length>0&&qe(Jr,{label:r.category,children:qe(Ae,{fieldKey:Te.field("category"),raw:e.category,display:n})}),o.text.length>0&&qe(Jr,{label:r.creationCategory,children:qe(Ae,{fieldKey:Te.field("creationCategory"),raw:e.creationCategory,display:o})})]})};import{jsx as we,jsxs as nb}from"react/jsx-runtime";var ji={field:v(et,"gap-1 whitespace-nowrap bg-slate-100 text-slate-800 dark:bg-slate-800 dark:text-slate-100"),label:`${ue} text-xs uppercase tracking-wide`,value:""},Mx={field:v(et,"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:""},rb={field:v(et,"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:""},Px=`flex flex-wrap items-center gap-2 font-medium ${ue} text-xs`,ob=({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 y=r?u.starRemove:u.starAdd,p=_n(t,u),m=Vr(e.category),f=Vr(e.creationCategory);return nb("div",{className:Px,children:[we(Io,{id:c.attachments,count:e.attachments.length,label:u.attachments}),l?we(ho,{id:c.source,config:l}):null,we(go,{readState:t,label:u.updatedSinceRead}),we(ot,{render:S=>we("button",{type:"button",onClick:o,...S,className:dt,title:y,"aria-label":y,"data-detail-star-button":e.reportHubId,children:we(bo,{filled:r})})}),we(ot,{render:S=>we("button",{type:"button",onClick:n,...S,className:dt,title:p,"aria-label":p,"data-detail-read-button":e.reportHubId,children:we(So,{readState:t})})}),a&&we(ot,{elementRef:s,render:S=>we("button",{type:"button",onClick:a,...S,"data-detail-edit-button":e.reportHubId,className:dt,title:u.edit,"aria-label":u.edit,children:we(Nx,{className:tt.edit})})}),i&&we(ot,{render:S=>we("button",{type:"button",onClick:i,...S,"data-detail-delete-button":e.reportHubId,className:dt,title:u.deleteReport,"aria-label":u.deleteReport,children:we(Ox,{className:tt.delete})})}),nb("dl",{className:"m-0 flex flex-wrap items-center gap-2",children:[we(Dt,{label:u.id,classNames:Mx,children:e.reportHubId}),we(Dt,{label:u.businessDate,classNames:ji,children:we(vn,{text:Ne(e.date)})}),we(Dt,{label:u.author,classNames:ji,children:we(Ae,{fieldKey:Te.field("employeeName"),raw:e.employeeName,display:Ge(e.employeeName)})}),we(Dt,{label:u.visitTime,classNames:ji,children:Wr(d)}),we(Dt,{label:u.updatedAt,classNames:ji,children:we(vn,{text:Ne(e.updatedAt)})}),m.text.length>0&&we(Dt,{label:u.category,classNames:rb,children:we(Ae,{fieldKey:Te.field("category"),raw:e.category,display:m})}),f.text.length>0&&we(Dt,{label:u.creationCategory,classNames:rb,children:we(Ae,{fieldKey:Te.field("creationCategory"),raw:e.creationCategory,display:f})})]}),we(wi,{isEditing:!1,descriptionId:c.searchMatch})]})};import{useLayoutEffect as ab,useRef as sb}from"react";import{jsx as Hx}from"react/jsx-runtime";var kx=v(Br,Oa,Ma,Na,"h-full"),Fx=(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()}}},ib=({itemId:e,rowId:t,name:r,bodyReady:n,observeRowHeight:o,children:a})=>{let s=sb(null),i=Af(e),l=sb(null);return ab(()=>{let d=s.current,c=d===null||!n?null:d.firstElementChild,u=c instanceof HTMLElement?c:null,y=l.current;y!==null&&y.body===u&&y.declareBody===i&&y.observeRowHeight===o||(y!==null&&y.release(),l.current=Fx(u,i,o))}),ab(()=>()=>{l.current?.release(),l.current=null},[]),Hx(Fi,{reportHubId:e,rowId:t,name:r,className:kx,frameRef:s,children:a})};import{jsx as ee,jsxs as at}from"react/jsx-runtime";var Ux=v("flex w-full flex-col gap-4",Mt,Fa,Hr),Vx=v(Mt,Hr),Wx=v("rounded-2xl",Hr),zx=v("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",Hr),ut="bg-slate-200 dark:bg-slate-700",Kx=v("whitespace-pre-wrap",ka),$x=v(et,"bg-slate-100 text-xs dark:bg-slate-800",ue),Gx=({interviewer:e,index:t,template:r})=>{let n=Eo(()=>Ge(e.name),[e.name]),o=ee(Ae,{fieldKey:Te.interviewer(t,"name"),raw:e.name,display:n},"name"),a=e.affiliation;if(!a?.trim())return o;let s=Yy(r,n.text,a);return s===null?r(n.text,a):s.map(i=>i.kind==="text"?i.text:i.kind==="name"?o:ee(Ae,{fieldKey:Te.interviewer(t,"affiliation"),raw:a,display:kt(a)},"affiliation"))},jx=e=>({heading:Ce(e,"name"),state:Ce(e,"state"),attachments:Ce(e,"attachments"),source:Ce(e,"source"),searchMatch:Ce(e,"match")}),cb=e=>`${Ne(e.date)} ${Wr(e.employeeName)} ${Wr(e.subject)}`,ub=(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}},pb=(e,t,r)=>hr({isRead:t.isRead,readContentDigest:t.readContentDigest,contentDigest:e.contentDigest,userId:e.userId},r),Yx=({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}]:Ui({state:()=>{let l=ub(e,o.pendingReadUpdates.current,o.pendingStarUpdates.current);return i.rowState({readState:pb(e,l,t),isStarred:l.isStarred})},attachmentCount:e.attachments.length,sourceConfig:n,preview:null,marks:a,marksStore:s,labels:i}),qx=at("div",{...Ot,className:Vx,children:[at("div",{className:"mb-4 flex flex-wrap gap-2",children:[ee("div",{className:v("h-6 w-20 rounded-full",ut)}),ee("div",{className:v("h-6 w-24 rounded-full",ut)}),ee("div",{className:v("h-6 w-24 rounded-full",ut)}),ee("div",{className:v("h-6 w-28 rounded-full",ut)})]}),at("div",{className:"mb-4 grid gap-4 md:grid-cols-[minmax(0,1fr)_240px]",children:[at("div",{className:"space-y-4",children:[ee("div",{className:v("h-5 w-40 rounded",ut)}),ee("div",{className:v("h-5 w-56 rounded",ut)}),ee("div",{className:v("h-24 rounded-xl",ut)})]}),at("div",{className:"rounded-xl bg-slate-100 p-3 dark:bg-slate-800/60",children:[ee("div",{className:v("mb-2 h-4 w-24 rounded",ut)}),ee("div",{className:v("mb-2 h-4 w-28 rounded",ut)}),ee("div",{className:v("h-4 w-32 rounded",ut)})]})]}),at("div",{className:"space-y-4",children:[ee("div",{className:v("h-4 w-24 rounded",ut)}),at("div",{className:"flex flex-wrap gap-2",children:[ee("div",{className:v("h-6 w-16 rounded-full",ut)}),ee("div",{className:v("h-6 w-16 rounded-full",ut)}),ee("div",{className:v("h-6 w-16 rounded-full",ut)})]}),at("div",{className:"space-y-2",children:[ee("div",{className:v("h-16 rounded-xl",ut)}),ee("div",{className:v("h-16 rounded-xl",ut)})]})]})]}),Xx=()=>qx,Zx=({item:e,observeRowHeight:t,onCommentAdded:r,userId:n})=>{let o=un(),a=Bx(ft),s=Eo(()=>Wi(o,a,e.reportHubId,e.businessDate),[o,a,e.reportHubId,e.businessDate]),{bodyReady:i,rendered:l}=Ns(e.reportHubId,s,"measured"),{report:d,error:c}=l.detail,u=l.marksStore===a?l.marks:null,{report:y,error:p,isLoading:m,isRefetching:f}=s.read().detail,S=Pi(e.reportHubId),h=My(),D=ct(),{removeStaleItem:b}=D,{labels:R,sourceTypeConfigs:g}=Z(),E=jr(),w=ni(e.reportHubId),x=w==="editing"||w==="automatic",L=xc(!1),M=xc(!1),P=y===null&&p===null&&!m&&!f;lb(()=>{P&&e.reportHubId>0&&b(e.reportHubId)},[P,e.reportHubId,b]);let B=y?.isDraft===!0,T=Sn(y,n),A=Sn(d,n),C=xc(s);db(()=>{C.current=s},[s]);let I=xn(()=>{let te=C.current.read().detail.report;te!==null&&(L.current=!0,E.open(e.reportHubId,uo(te),!1))},[E,e.reportHubId]),$=xn(()=>{M.current=!0,E.dismiss(e.reportHubId)},[E,e.reportHubId]),k=xn(()=>{M.current=!0,E.discard(e.reportHubId)},[E,e.reportHubId]),U=xn(te=>{te===null||!L.current||(L.current=!1,te.focus())},[]),G=xn(te=>{te===null||!M.current||(M.current=!1,te.focus())},[]);db(()=>{x||(M.current=!1)},[x]),lb(()=>{y!==null&&(T&&B&&w==="display"?E.open(e.reportHubId,uo(y),!0):!B&&w==="automatic"&&E.discard(e.reportHubId))},[y,T,B,w,E,e.reportHubId]);let V=xn(()=>h(e.reportHubId,"removal"),[h,e.reportHubId]),W=d===null?void 0:Er(d.sourceType,g),de=d===null&&(m||y!==null||p!==null),ge=Ne(e.businessDate),N=Ce(S,"state"),z=c===null&&d!==null?{report:d,description:Yx({report:d,viewerUserId:n,isEditing:x,sourceConfig:W,ledgers:D,marks:u,marksStore:a,labels:R})}:null,j=z!==null?x?{kind:"label",label:ge,isBusy:!1,describedBy:Ra(S,z.description)}:{kind:"parts",describedBy:Ra(S,z.description)}:i?{kind:"label",label:ge,isBusy:c===null&&de,describedBy:c===null?yo:[N]}:{kind:"label",label:ge,isBusy:!0,describedBy:yo};return ee(ib,{itemId:e.reportHubId,rowId:S,name:j,bodyReady:i,observeRowHeight:t,children:i?c!==null?ee(Qx,{itemId:e.reportHubId,stateId:N}):d?x?ee(yb,{report:d,stateId:N,onCancel:$,onPublishSuccess:k,titleInputRef:U}):ee(io,{reportHubId:e.reportHubId,entry:u,children:ee(fb,{item:e,report:d,sourceConfig:W,rowId:S,onCommentAdded:r,userId:n,onEdit:A?I:void 0,editButtonRef:G,onCommentSectionRemoved:V})}):ee(Xx,{}):z===null?ki:ee(Vi,{rowId:S,name:x?null:cb(z.report),description:z.description})})},mb=Cc(Zx),fb=Cc(({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:y,deleteReport:p}=ct(),{labels:m,headingLevel:f}=Z(),S=Yr[f],h=rs(t.sourceType,r),D=jx(n),b=xn(()=>o?.(e.reportHubId),[o,e.reportHubId]),R=ub(t,y.current,u.current),{isStarred:g}=R,E=pb(t,R,a),w=Sn(t,a),x=async()=>{try{await c(t.reportHubId,kn(E,t.contentDigest),t.date)}catch{}},L=async()=>{try{await d(t.reportHubId,!g,t.date)}catch{}},M=async()=>{if(confirm(m.confirmDelete))try{await p(t.reportHubId,t.date)}catch{}},P=Eo(()=>lp(t.content??null),[t.content]),B=Eo(()=>Ge(t.customerName),[t.customerName]),T=Eo(()=>Ge(t.subject),[t.subject]),A=Eo(()=>{let C=t.visitTimeFrom?.trim(),I=t.visitTimeTo?.trim();return C&&I?`${C} - ${I}`:C||I||null},[t.visitTimeFrom,t.visitTimeTo]);return at("div",{...Ot,"aria-labelledby":D.heading,onDoubleClick:s,className:Ux,children:[ee(vt,{level:f,id:D.heading,tabIndex:-1,...vs,className:er,children:cb(t)}),ee("span",{id:D.state,className:er,children:m.rowState({readState:E,isStarred:g})}),ee(Ro,{id:Ce(n,"position"),whileTotalUnknownOnly:!0}),ee(ob,{report:t,sourceConfig:r,readState:E,isStarred:g,onToggleRead:x,onToggleStar:L,onEdit:s,editButtonRef:i,onDelete:w?M:void 0,visitTimeDisplay:A,markerIds:D,labels:m}),at("div",{className:"grid gap-4 md:grid-cols-[minmax(0,1fr)_240px]",children:[at("div",{className:"flex flex-col gap-4",children:[at("div",{className:"grid gap-4 sm:grid-cols-2",children:[at("div",{className:"flex flex-col gap-1",children:[ee(vt,{level:S,className:yr,children:m.customer}),ee("span",{className:"font-semibold text-base text-slate-900 dark:text-slate-100",children:ee(Ae,{fieldKey:Te.field("customerName"),raw:t.customerName,display:B})})]}),at("div",{className:"flex flex-col gap-1",children:[ee(vt,{level:S,className:yr,children:m.subject}),ee("span",{className:"text-slate-700 text-sm dark:text-slate-200",children:ee(Ae,{fieldKey:Te.field("subject"),raw:t.subject,display:T})})]})]}),P.text.length>0&&at("div",{className:"flex flex-col gap-2",children:[ee(vt,{level:S,className:yr,children:m.content}),ee("div",{className:Kx,children:ee(Ae,{fieldKey:Te.field("content"),raw:t.content,display:P})})]}),t.interviewers.length>0&&at("div",{className:"flex flex-col gap-2",children:[ee(vt,{level:S,className:yr,children:m.interviewers}),ee("ul",{className:"flex flex-wrap gap-2",children:t.interviewers.map((C,I)=>ee("li",{className:$x,children:ee(Gx,{interviewer:C,index:I,template:m.interviewerWithAffiliation})},JSON.stringify([C.name,C.affiliation])))})]}),ee(hi,{attachments:t.attachments}),ee(fa,{report:t,userId:a,canComment:h,onCommentAdded:b,onSectionRemoved:l,formPlacement:"after-section"})]}),ee(tb,{report:t,visitTimeDisplay:A,labels:m})]})]})});fb.displayName="DailyReportResolvedItem";var yb=Cc(({report:e,stateId:t,onCancel:r,onPublishSuccess:n,titleInputRef:o})=>{let{labels:a}=Z();return at("div",{...Ot,className:Wx,children:[ee("span",{id:t,className:er,children:a.rowEditingState({isDraft:e.isDraft})}),ee(Ai,{report:e,onCancel:r,onPublishSuccess:n,titleInputRef:o})]})});yb.displayName="DailyReportEditingBody";var Qx=({itemId:e,stateId:t})=>{let{labels:r}=Z();return ee("div",{...Ot,className:zx,children:ee("p",{id:t,children:r.reportLoadFailed(e)})})};import{VirtualScroll as lC,virtualScrollItemElementId as dC}from"@aiquants/virtualscroll";import{useCallback as Yi,useContext as cC,useId as Db,useMemo as Oc,useRef as uC,useState as Ab}from"react";import{createContext as Jx}from"react";var Ic=Jx(null);import{createContext as eC,useContext as tC,useLayoutEffect as rC}from"react";var Rb=()=>{let e=!1;return{request:()=>{e=!0},isPending:()=>e,take:()=>{let t=e;return e=!1,t}}},Lc=eC(null),hb=(e,t)=>{let r=tC(Lc);rC(()=>{r===null||!r.isPending()||e.current===null||(r.take(),t(null,"handOver"))})};import{useCallback as bb,useLayoutEffect as Sb,useMemo as gb,useRef as Nc}from"react";var nC=(e,t,r,n)=>{for(let o=r;o<=n;o++){let a=Fe(e,o);if(a===void 0||a.reportHubId!==Fe(t,o)?.reportHubId)return!0}return!1},oC=(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}},aC=(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}},sC=(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"?oC(e.index,a,n.rowHeight,r.length):aC(e.index,a,Ci(n),r.length);return{reportHubId:or(r,s).reportHubId,index:s,offsetPx:i,lastVisibleIndex:Li({index:s,offsetPx:i},o,r.length,n),recordedAt:t}},iC=(e,t,r)=>{for(let n=r.index+1;n<=r.lastVisibleIndex&&n<e.length;n++){let o=He(t,or(e,n).reportHubId,n-1);if(o!==-1)return o}return-1},Eb=({items:e,handleRef:t,rowSizing:r,isRevealPending:n})=>{let o=Nc(null),a=Nc(e),s=Nc(r),i=bb(()=>{let c=t.current,u=c===null?-1:c.getScrollPosition(),y=c===null||!(u>0)?null:c.getScrollAnchor(),p=a.current,m=y===null?void 0:Fe(p,y.index),f=c===null?0:c.getViewportSize();o.current=y===null||m===void 0||!(f>0)?null:{reportHubId:m.reportHubId,index:y.index,offsetPx:y.offsetPx,lastVisibleIndex:Li(y,f,p.length,s.current),recordedAt:u}},[t]),l=gb(()=>({toIndex:(c,u)=>{let y=t.current;y!==null&&(y.scrollToIndex(c,u),i())},by:c=>{let u=t.current;u!==null&&(u.scrollBy(c),i())},resizeRow:(c,u)=>{let y=t.current;y!==null&&(y.updateItemSize(c,u),i())},reestimate:c=>{let u=t.current;u!==null&&(u.setItemHeightEstimate(c),i())}}),[t,i]);Sb(()=>{let c=a.current;a.current=e;let u=o.current,y=t.current;if(c===e||u===null||y===null||n())return;let p=sC(u,y.getScrollPosition(),c,s.current,y.getViewportSize());if(p===null){o.current=null;return}let m=He(e,p.reportHubId,p.index),f=m===-1?iC(c,e,p):m;if(f===-1){o.current=null;return}if(f===p.index&&!nC(c,e,p.index,p.lastVisibleIndex)){o.current=p;return}y.scrollToIndex(f,{align:"top",offset:-p.offsetPx}),o.current={reportHubId:or(e,f).reportHubId,index:f,offsetPx:p.offsetPx,lastVisibleIndex:Li({index:f,offsetPx:p.offsetPx},y.getViewportSize(),e.length,r),recordedAt:y.getScrollPosition()}},[e,t,r,n]),Sb(()=>{s.current=r},[r]);let d=bb(c=>{if(c.cause!=="clamp"){i();return}let u=o.current;u!==null&&(o.current={...u,recordedAt:u.recordedAt+c.delta})},[i]);return gb(()=>({handleRangeChange:i,handleScrollAdjust:d,scroller:l}),[i,d,l])};import{jsx as Do}from"react/jsx-runtime";var pC=Object.freeze({skipFar:!0}),mC=(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=He(s,a,t(a)),d=l===-1?null:l;return n.set(a,d),d}},qi=({containerRef:e,testId:t,itemsRef:r,rowSetSize:n,isViewRevealPending:o,onRangeChange:a,...s})=>{let i=uC(null),l=Yi(C=>(i.current=C,()=>{i.current=null}),[]),{labels:d}=Z(),c=Db(),{handleRangeChange:u,handleScrollAdjust:y,scroller:p}=Eb({items:s.items,handleRef:i,rowSizing:s.rowSizing,isRevealPending:o}),{handleRangeChange:m,...f}=Yh({...s,containerRef:e,handleRef:i,scroller:p,gridId:c}),{cursor:S,controls:h,selectionStore:D,focusViewRow:b}=f,R=cC(Ic),[g]=Ab(()=>R===null?null:R.instrumentView({hostTestId:t,readHandle:()=>i.current,readItems:()=>r.current,reveal:p.toIndex})),[E]=Ab(()=>Ef({gridId:c,isHolding:()=>D.isHeld(),subscribeHold:C=>D.subscribeHold(C),keySteps:D.keySteps,activeIndex:()=>{let C=S.getActiveId(),I=C===null?-1:He(r.current,C,S.getActiveIndexHint());return I===-1?null:I},indexOf:mC(r,C=>{let I=e.current,$=I===null?null:I.ownerDocument.getElementById(dC(c,C)),k=$===null?null:$r($);return k===null?null:k-1}),pane:()=>{let C=i.current,I=C===null?-1:C.getScrollPosition();return C===null||I===-1?null:{range:C.getRange(),position:I}},observe:g===null?void 0:g.observeRowPass})),w=Yi(C=>{y(C),!(g===null||C.cause!=="re-estimate")&&g.observeReEstimate(D.isHeld()||e.current?.hasAttribute(Fr)===!0)},[y,g,D,e]),x=Yi(C=>{e.current=C;let I=g===null?null:g.attach(C);return()=>{I!==null&&I(),e.current=null}},[e,g]);hb(e,b);let L=Db(),M=s.onSelect!==null,P=Yi(C=>{m(C),u(),a(C)},[m,u,a]),B=Oc(()=>({role:dd,id:c,tabIndex:0,"aria-label":d.title,"aria-describedby":M?L:void 0,"aria-rowcount":n}),[c,d.title,M,L,n]),T=Oc(()=>M?Do("span",{id:L,className:"sr-only",children:d.listKeyboardHelp}):null,[M,L,d.listKeyboardHelp]),A=Oc(()=>({cursor:S,controls:h,rowPass:E,focusViewRow:b}),[S,h,E,b]);return{...f,handleRangeChange:P,handleScrollAdjust:w,attachVirtualScroll:l,handleRef:i,scroller:p,attachScrollContainer:x,contentProps:B,keyboardHelp:T,rowPass:E,rowScope:A}},Xi=({rowScope:e,items:t,...r})=>{let n=jh(e.cursor,t);return Do(wc.Provider,{value:e.cursor,children:Do(Jd.Provider,{value:e.controls,children:Do(Ls.Provider,{value:e.rowPass,children:Do(Ud.Provider,{value:e.focusViewRow,children:Do(lC,{...r,activeItemIndex:n,activeItemVisibleInset:Ru,itemZones:pC})})})})})};import{useCallback as fC,useContext as Tb,useEffect as wb,useMemo as yC,useState as RC}from"react";var _b=e=>{let t=e;for(;t<Vl;)t+=zn;return t>=$o+zn&&(t-=zn*Math.floor((t-$o)/zn)),t},hC=(e,t,r)=>e===null||t<e.start||r>e.end?{start:t-$o,end:r+$o}:{start:t-_b(t-e.start),end:r+_b(e.end-r)},Zi=e=>{for(let t of e.values())t();e.clear()},vb=(e,t)=>{for(let[r,n]of e)t.has(r)||(n(),e.delete(r))},bC=()=>{let e=null,t=new Map,r=new Map,n=null,o=null,a=()=>{},s=()=>{Zi(t),Zi(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&&(Zi(t),e=null),o!==null&&o.marksStore!==l.marksStore&&Zi(r),e=hC(e,n.renderingStartIndex,n.renderingEndIndex);let d=Math.max(0,e.start),c=Math.min(l.itemCount-1,e.end);if(o!==null&&o.detailStore===l.detailStore&&o.marksStore===l.marksStore&&o.from===d&&o.to===c&&o.getItem===l.getItem)return;o={detailStore:l.detailStore,marksStore:l.marksStore,getItem:l.getItem,from:d,to:c};let u=new Map;for(let m=d;m<=c;m++){let f=l.getItem(m);f.reportHubId>0&&u.set(f.reportHubId,f.businessDate)}let{detailStore:y,marksStore:p}=l;for(let[m,f]of u)t.has(m)||t.set(m,y.subscribe(m,f,a)),p!==null&&!r.has(m)&&r.set(m,p.subscribe(m,a));vb(t,u),vb(r,u)}}},Qi=({itemCount:e,getItem:t})=>{let r=Tb(Kn),n=un(),o=Tb(ft),[a]=RC(bC),s=yC(()=>({detailSource:r,detailStore:n,marksStore:o,itemCount:e,getItem:t}),[r,n,o,e,t]),i=fC(l=>a.evaluate(l,s),[a,s]);return wb(()=>{a.evaluate(null,s)},[a,s]),wb(()=>()=>a.releaseAll(),[a]),i};import{Fragment as _C,jsx as cr,jsxs as wC}from"react/jsx-runtime";var Ib={pointerDragInputs:cs,wheelSpeedMultiplier:os,inertiaOptions:Jn(!1),enableKeyboardNavigation:!1},SC={...Ib,inertiaOptions:Jn(!0)},Cb="daily-report-detail-list",gC=v("relative w-full",Ka,za,$a),EC=v(Pt,"relative"),DC=300,AC=e=>{let t=df({seedPx:mm,quantumPx:fm});for(let r of e.values())t.record(null,r);return t},Pc=e=>{let t=At(null),[r,n]=In(null),o=gs(t),a=eo(r),s=Xe(i=>(t.current=i,n(i),()=>{t.current=null,n(null)}),[]);return cr("div",{ref:s,className:Ua,children:cr("div",{className:Va,children:o===null?null:cr(TC,{...e,viewportHeight:o,reducedMotion:a})})})},TC=({dailyReportItems:e,rowSetSize:t,userId:r,selectedItemId:n,onSelectItem:o,scrollRestoreRef:a,viewportHeight:s,reducedMotion:i})=>{let[{initialScrollAnchor:l,restored:d}]=In(()=>{let F=a?.current;if(!F||F.anchorReportHubId!==(n??null))return{initialScrollAnchor:void 0,restored:!1};if(!F.topItem)return{initialScrollAnchor:void 0,restored:!0};let K=nr(e,F.topItem.reportHubId);return K!==-1?{initialScrollAnchor:{index:K,offsetPx:F.topItem.offsetPx},restored:!0}:{initialScrollAnchor:{index:F.topItem.index,offsetPx:0},restored:!0}}),c=At(d),u=At(n??null),y=We(()=>a?.current.measuredHeights??new Map),[p]=In(()=>AC(y.current)),[m]=In(()=>p.estimate()),f=At(m),S=At(null),h=hs(),D=Xl(),[b]=In(Os),R=At(null),g=At(null),E=At(e),w=At(o);xb(()=>{E.current=e,w.current=o},[e,o]);let x=At(null),[L,M]=In(0),P=At(null),B=e.length,T=t===void 0?B:t,A=Xe(F=>{let K=Fe(e,F);return K===void 0?ss:K},[e]),C=Xe(F=>{let K=y.current.get(A(F).reportHubId);return K===void 0?f.current:K},[y,A]),I=Xe(F=>Ts(e,F),[e]),$=Mc(()=>({kind:"measured",heightOf:C}),[C]),k=Xe((F,K,se)=>{if(x.current={reportHubId:F,index:K},se==="held"){w.current?.(F,"held");return}M(he=>he+1),w.current?.(F,"settled")},[]),U=Xe((F,K)=>k(F,K,"settled"),[k]),G=Xe((F,K)=>{if(B===0)return;let se=Math.max(0,F),he=Math.min(B-1,K);if(se>he)return;let _e=new Set;for(let $e=se;$e<=he;$e++){let Yt=A($e);if(Yt.businessDate&&_e.add(Yt.businessDate),_e.size>=cm)break}_e.forEach($e=>{D($e)})},[A,B,D]),V=At(null),W=Xe(()=>V.current,[]),de=Qi({itemCount:B,getItem:A}),ge=Xe(F=>{if(B===0)return;let{renderingStartIndex:K,renderingEndIndex:se,visibleStartIndex:he}=F,_e=A(he);_e.reportHubId>0&&(V.current=_e.reportHubId),_e.businessDate&&b.setLabel(Ne(_e.businessDate)),G(K,se),G(se+1,se+as),G(K-as,K-1),de(F)},[A,B,G,b,de]),N=Xe(()=>P.current!==null,[]),{containerProps:z,handleRangeChange:j,handleScrollAdjust:te,attachVirtualScroll:ye,handleRef:ie,scroller:J,attachScrollContainer:re,contentProps:De,keyboardHelp:q,resolveSelectedIndex:ne,activateRow:Ct,rowPass:Qe,rowScope:It,selectionStore:st}=qi({items:e,selectedId:n??null,onSelect:o===void 0?null:k,onActivate:U,containerRef:S,rootRef:S,testId:Cb,itemsRef:E,rowSetSize:T,rowSizing:$,arrowAlign:"top",isViewRevealPending:N,onRangeChange:ge});Ps({items:e,scroller:J,readTopReportId:W});let pt=Xe(()=>{let F=p.estimate();F===f.current||st.isHeld()||g.current!==null||(f.current=F,J.reestimate(F))},[p,st,J]);xb(()=>st.subscribeHold(()=>{st.isHeld()||pt()}),[st,pt]);let it=Xe((F,K)=>{if(ie.current===null)return!1;let se=E.current,he=K!==null&&K.reportHubId===F?He(se,F,K.index):ne(se,F);return he===-1?!1:(c.current&&(c.current=!1,F===u.current)||K!==null&&K.reportHubId===F&&K.index===he||J.toIndex(he,{align:"top"}),!0)},[ie,ne,J]);Cn(()=>{let F=x.current;x.current=null,P.current=null,n!=null&&(it(n,F)||(P.current=n))},[n,it]),Cn(()=>{let F=P.current;F!==null&&it(F,null)&&(P.current=null)},[e,it]),Cn(()=>{let F=a?.current;F&&(F.anchorReportHubId=n??null)},[n,a]),Cn(()=>{x.current=null},[L]);let bt=At(null),Gt=Xe(()=>{ie.current&&(bt.current=ie.current);let F=a?.current,K=bt.current;if(F&&K){let he=K.getScrollAnchor(),_e=he===null?void 0:Fe(E.current,he.index);he&&_e&&(F.topItem={reportHubId:_e.reportHubId,index:he.index,offsetPx:he.offsetPx})}let se=S.current;se&&(se.toggleAttribute(Fr,!0),g.current&&clearTimeout(g.current),g.current=setTimeout(()=>{se.toggleAttribute(Fr,!1),g.current=null,pt()},150))},[ie,a,pt]),jt=Xe(F=>cr(Ms,{...F,store:b}),[b]);Cn(()=>{let F=S.current;if(!F)return;let K=()=>{b.setWheelScrollActive(!0),R.current&&clearTimeout(R.current),R.current=window.setTimeout(()=>{b.setWheelScrollActive(!1),R.current=null},is)};return F.addEventListener("wheel",K,{passive:!0}),()=>{F.removeEventListener("wheel",K),R.current&&clearTimeout(R.current)}},[b]);let wt=Xe(F=>{for(let[K,se]of F){Qe.measured(K);let he=K.parentElement,_e=he===null?null:Qo(he),$e=he===null?null:$r(he);if(_e===null||$e===null)continue;let Yt=se+2*pr,Or=y.current.get(_e);if(Or===Yt)continue;let On=He(E.current,_e,$e-1);On!==-1&&(y.current.set(_e,Yt),p.record(Or===void 0?null:Or,Yt),J.resizeRow(On,Yt))}pt()},[y,J,Qe,p,pt]),[_]=In(()=>lf(wt)),O=_.observe,H=Xe(F=>{let K=Ye(F),se=re(F),he=_.attach(K),_e=Qe.attach(K,_.remeasure);return()=>{_e(),he(),se()}},[re,Qe,_]);Cn(()=>{B!==0&&G(0,Math.min(B-1,as))},[B,G]);let X=At(null),ae=Xe(F=>{let K=He(E.current,F,null);K!==-1&&(X.current!==null&&clearTimeout(X.current),X.current=setTimeout(()=>{X.current=null;let se=He(E.current,F,K);se!==-1&&J.toIndex(se,{align:"bottom"})},DC))},[J]);Cn(()=>()=>{X.current!==null&&clearTimeout(X.current)},[]);let me=Xe(F=>{if(!w.current)return;let K=Rn(F.target,S.current);if(K===null||nf(F.target,K))return;let se=rf(K,E.current);se!==null&&(Ct(se.reportHubId,se.index),k(se.reportHubId,se.index,"settled"))},[k,Ct]),Y=Xe((F,K)=>cr(bn.Provider,{value:K,children:cr(ea.Provider,{value:F.reportHubId,children:cr(mb,{item:F,observeRowHeight:O,onCommentAdded:ae,userId:r})})},F.reportHubId),[O,ae,r]),oe=Mc(()=>({...ds,renderThumbOverlay:jt}),[jt]),Le=Mc(()=>cr(hn.Provider,{value:T,children:cr(Xi,{ref:ye,rowScope:It,items:e,itemCount:B,getItem:A,getItemKey:I,getItemHeight:C,estimatedItemHeight:m,viewportSize:s,initialScrollAnchor:l,overscanCount:ls,scrollBarOptions:oe,behaviorOptions:i?SC:Ib,onRangeChange:j,onScrollAdjust:te,onScroll:Gt,testId:Cb,className:gC,locale:h.locale,labels:h.labels,contentProps:De,children:Y})}),[ye,It,e,T,B,A,I,C,m,s,i,l,oe,j,te,Gt,h.locale,h.labels,De,Y]);return cr(_C,{children:wC("div",{ref:H,className:EC,...xs,...z,onClick:me,children:[q,Le]})})};import Ob from"lucide-react/dist/esm/icons/refresh-cw.js";import{createContext as IC,memo as LC,useContext as NC,useLayoutEffect as OC,useRef as MC}from"react";import{jsx as kc,jsxs as vC}from"react/jsx-runtime";var Ji=e=>10**String(e).length-1,ha=({text:e,widestTexts:t,ref:r})=>vC("span",{ref:r,className:$u,children:[kc("span",{"aria-hidden":"true",className:Wa,children:[...new Set(t)].map(n=>kc("span",{className:sn,children:n},n))}),kc("span",{className:Gu,children:e})]});import{useLayoutEffect as xC,useState as Lb}from"react";import{jsx as Nb,jsxs as CC}from"react/jsx-runtime";var Fc=Object.freeze({status:"",alert:""}),el=({announcement:e,testId:t})=>{let[r]=Lb(e),[n,o]=Lb(!1),a=n||e.status!==r.status||e.alert!==r.alert;xC(()=>{a&&!n&&o(!0)},[a,n]);let{status:s,alert:i}=a?e:Fc;return CC("span",{"data-testid":t,className:"sr-only",children:[Nb("span",{role:"status",children:s}),Nb("span",{role:"alert",children:i})]})};import{Fragment as jC,jsx as Tt,jsxs as $t}from"react/jsx-runtime";var Bc=IC(!0),PC="daily-report-ids-stream-status-announcer",kC="inline-grid whitespace-nowrap text-start",kb="col-start-1 row-start-1",FC=`${Wa} ${kb}`,HC=`${kb} flex justify-self-start rounded-full empty:not-focus:invisible ${ce}`,Fb=v(et,"gap-1 bg-blue-100 font-medium text-blue-800 text-xs tabular-nums dark:bg-blue-900/40 dark:text-blue-300"),Hc="size-2 rounded-full bg-blue-500 dark:bg-blue-400",Hb=v(et,"gap-1 bg-amber-100 font-medium text-amber-900 text-xs tabular-nums dark:bg-amber-900/40 dark:text-amber-300"),Bb=v(et,"gap-1 bg-rose-100 font-medium text-rose-900 text-xs dark:bg-rose-900/40 dark:text-rose-300",Ur),Ub=v(et,"gap-1 bg-slate-100 font-medium text-slate-700 text-xs dark:bg-slate-800/40 dark:text-slate-300"),Vb=v("pointer-coarse:relative 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",Me,ce),Mb="size-3",Pb=`${Fb} ${sn}`,BC=`${Hb} ${sn}`,UC=`${Bb} ${sn}`,VC=`${Ub} ${sn}`,Wb=(e,t)=>Ji(t===null?e:Math.max(e,t)),WC=(e,t,r)=>{let n=Wb(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}=WC(e,t,r);return $t("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"streaming",className:Fb,children:[Tt("span",{"aria-hidden":"true",className:Hc}),Tt(ha,{text:n,widestTexts:[o]})]})},KC=(e,t,r)=>e.phase==="streaming"?Tt(zC,{labels:t,loadedCount:e.loadedCount,totalCount:e.totalCount}):e.phase==="retrying"?$t("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"retrying",className:Hb,children:[Tt(Ob,{"aria-hidden":"true",className:"size-3 motion-safe:animate-spin"}),t.streamRetrying(e.loadedCount)]}):e.phase==="failed"?$t("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"failed",className:Bb,children:[t.streamFailed,Tt("button",{type:"button","data-testid":"daily-report-ids-stream-retry",onClick:r,className:Vb,children:t.streamRetry})]}):e.isRevalidating?$t("span",{"data-testid":"daily-report-ids-stream-status","data-phase":"revalidating",className:Ub,children:[Tt(Ob,{"aria-hidden":"true",className:"size-3 motion-safe:animate-spin"}),t.streamRevalidating]}):null,$C=LC(({labels:e,widest:t})=>$t("span",{"aria-hidden":"true",className:FC,children:[$t("span",{className:Pb,children:[Tt("span",{className:Hc}),e.streamProgressCount(t)]}),$t("span",{className:Pb,children:[Tt("span",{className:Hc}),e.streamProgressRatio(t,t,100)]}),$t("span",{className:BC,children:[Tt("span",{className:Mb}),e.streamRetrying(t)]}),$t("span",{className:UC,children:[e.streamFailed,Tt("span",{className:Vb,children:e.streamRetry})]}),$t("span",{className:VC,children:[Tt("span",{className:Mb}),e.streamRevalidating]})]})),Uc=(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:""}:Fc,GC=(e,t)=>Uc({phase:e.phase,hasItems:!0,retryingCount:e.phase==="retrying"?e.loadedCount:null},t),ba=()=>{let e=ny(),{labels:t}=Z(),r=NC(Bc),n=MC(null),a=KC(e,t,()=>{vr([n.current]),Xs()}),s=a===null;return OC(()=>{let i=n.current;!s||i===null||!i.contains(mt(i))||vr(si(i.ownerDocument))},[s]),$t(jC,{children:[$t("span",{className:kC,children:[Tt($C,{labels:t,widest:Wb(e.loadedCount,e.totalCount)}),Tt("span",{ref:n,tabIndex:-1,"data-daily-report-stream-status":"",className:HC,children:a})]}),r?Tt(el,{announcement:GC(e,t),testId:PC}):null]})};import{Panel as RS,PanelGroup as vL,PanelResizeHandle as xL}from"@aiquants/resize-panels";import{useCallback as yt,useEffect as sl,useLayoutEffect as il,useMemo as Zc,useRef as rn,useState as dl}from"react";import{useSyncExternalStore as YC}from"react";var zb="(max-width: 639px)",qC=()=>{},XC=e=>{if(typeof window>"u"||typeof window.matchMedia!="function")return qC;let t=window.matchMedia(zb);return t.addEventListener("change",e),()=>t.removeEventListener("change",e)},ZC=()=>typeof window<"u"&&typeof window.matchMedia=="function"?window.matchMedia(zb).matches:!1,QC=()=>!1,Kb=()=>YC(XC,ZC,QC);import{SwipeCloseGuardContext as CI,useOverlayPresence as II,useSwipeGuardState as LI,useSwipeOverlayDialog as NI,useTransitionDisplay as OI}from"@aiquants/swipe-overlay";import{useCallback as wa,useEffect as nl,useId as oS,useLayoutEffect as aS,useRef as wo,useState as jc}from"react";var JC={kind:"hold"},eI=new Set(["grid","listbox","menu","menubar","radiogroup","tablist","toolbar","tree","treegrid"]),tI=(e,t)=>{let r=e.getAttribute("role");return r!==null&&eI.has(r)&&e!==t&&e.contains(t)},$b=e=>e.key==="Escape"&&!e.defaultPrevented&&!wn(e),Gb=(e,t)=>{if(e.key!=="Tab"||e.altKey||e.ctrlKey||e.metaKey||e.defaultPrevented||wn(e))return null;let r=e.target;if(!(ke(r)&&t.contains(r)))return null;let n=Ss(t);if(n.length===0)return JC;let{before:o,within:a,after:s}=Yo(t,r);return e.shiftKey?o.some(i=>!tI(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 rI}from"react";var Sa=(e,t)=>{let{id:r,indexHint:n}=t;return rI(()=>{if(r===null)return null;let o=He(e,r,n);return o===-1?null:or(e,o)},[e,r,n])};import{SWIPE_OVERLAY_SCROLL_AREA_STYLE as nI}from"@aiquants/swipe-overlay";import oI from"lucide-react/dist/esm/icons/pencil.js";import aI from"lucide-react/dist/esm/icons/trash-2.js";import{memo as sI,useCallback as Ln,useDeferredValue as iI,useEffect as zc,useId as qb,useLayoutEffect as Kc,useMemo as Ta,useRef as Aa,useState as Xb,useSyncExternalStore as lI}from"react";import*as Ir from"@radix-ui/react-tabs";import*as xt from"react";import{jsx as Ao}from"react/jsx-runtime";var jb=xt.createContext(null),Yb=e=>{let t=xt.useContext(jb);if(t===null)throw new Error(`[daily-report] ${e} must be rendered inside Tabs`);return t},Vc=(e,t)=>`${e}-trigger-${t}`,Wc=(e,t)=>`${e}-panel-${t}`,ga=xt.forwardRef(({value:e,children:t,...r},n)=>{let o=xt.useId(),a=xt.useMemo(()=>({baseId:o,value:e}),[o,e]);return Ao(Ir.Root,{ref:n,value:e,...r,children:Ao(jb,{value:a,children:t})})});ga.displayName=Ir.Root.displayName;var Ea=xt.forwardRef(({className:e,...t},r)=>Ao(Ir.List,{ref:r,className:v("inline-flex",e),...t}));Ea.displayName=Ir.List.displayName;var Da=xt.forwardRef(({className:e,value:t,...r},n)=>{let{baseId:o}=Yb("TabsTrigger");return Ao(Ir.Trigger,{ref:n,value:t,...r,id:Vc(o,t),"aria-controls":Wc(o,t),className:v(`${ku} ${ce}`,e)})});Da.displayName=Ir.Trigger.displayName;var To=xt.forwardRef(({className:e,value:t,tabStop:r,children:n,...o},a)=>{let{baseId:s,value:i}=Yb("TabsContent"),l=t===i,d="mt-2 data-[state=inactive]:hidden";return r?Ao("div",{ref:a,role:"tabpanel",id:Wc(s,t),"aria-labelledby":Vc(s,t),"data-state":l?"active":"inactive",hidden:!l,tabIndex:0,...o,className:v(`${d} ${ce}`,e),children:l?n:null}):Ao("div",{ref:a,role:"tabpanel",id:Wc(s,t),"aria-labelledby":Vc(s,t),"data-state":l?"active":"inactive",hidden:!l,...o,className:v(d,e),children:l?n:null})});To.displayName="TabsContent";import{jsx as Q,jsxs as Lr}from"react/jsx-runtime";var tS=v(ln,"w-24 shrink-0"),Zb={field:"flex items-baseline",label:tS,value:"flex-1"},dI={field:"flex min-w-0 flex-1 items-baseline",label:tS,value:"wrap-break-word min-w-0 flex-1"},cI={field:"flex flex-col gap-1",label:ln,value:""},uI={field:"flex min-w-0 items-center gap-1",label:v(ln,"shrink-0 whitespace-nowrap"),value:""},pI=`flex min-h-4 flex-wrap items-center gap-x-2 gap-y-1 ${ue} text-xs`,Qb=v("flex-1 overflow-y-auto overflow-x-hidden pt-2 text-sm",gl,Su,bu),Jb={desktop:v(Qb,Zu),overlay:Qb},eS={desktop:void 0,overlay:nI},mI=v("flex flex-col gap-1",El),fI=v(Mu,"grid grid-cols-2 gap-1"),yI=v("pointer-coarse:ml-auto flex h-5 shrink-0 items-center gap-2 pr-2",Ur),RI=v("m-0 font-normal text-slate-900 text-sm dark:text-slate-100",ce),$c=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)})}},hI=(e,t,r,n,o,a,s)=>{let i=Aa(null),l=e?.reportHubId;Kc(()=>{i.current=null},[l]),zc(()=>{o||(i.current=null)},[o]);let d=Ln(async(c,u)=>{u||(i.current=c.reportHubId);try{await s(c.reportHubId,kn(hr(c,t),c.contentDigest),c.date)}catch{}},[s,t]);return zc(()=>{if(!(n&&e&&hr(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 y=a.subscribe(u);return()=>{y(),c!==null&&clearTimeout(c)}},[e,t,r,n,d,a]),{handleToggleRead:d}},Gc="article",bI=["article","relations"],SI=e=>{if(e==="article"||e==="relations")return e;throw new Error(`[daily-report] unknown side-pane tab: ${e}`)},gI=v("hidden h-full min-h-0 w-full min-w-0 flex-1 flex-col gap-4 sm:flex",Mt),EI=v("flex h-full flex-1 items-center justify-center text-center",Mn),DI=9,AI=.875,TI=16,rS=4*Math.ceil((2*pr+2*Pa+2*Du+DI*AI*TI)/4),nS=({dailyReportItems:e,selectionStore:t,autoMarkRead:r,userId:n,onReportDeleted:o})=>{let{labels:a}=Z(),s=qb(),i=qb(),[l,d]=Xb(Gc),{selected:c,settled:u}=lI(t.subscribe,t.getSnapshot,t.getSnapshot),y=Sa(e,c),p=Sa(e,iI(u)),m=y===null?null:y.reportHubId,S=(p===null?null:p.reportHubId)===m,[h]=Xb(()=>$c(S));return Kc(()=>{h.set(S)},[h,S]),Q("aside",{"data-testid":"daily-report-side-pane","data-report-id":y?.reportHubId,"data-displayed-report-id":p?.reportHubId,"aria-busy":S?void 0:!0,className:gI,children:p===null?Q("div",{className:EI,children:Q("p",{className:Rr,children:a.selectPrompt})}):Q(rl,{item:p,placement:"desktop",headingId:s,authorId:i,activeTab:l,onActiveTabChange:d,autoMarkRead:r,isActive:!0,dwell:h,userId:n,onReportDeleted:o},p.reportHubId)})},wI=({reportHubId:e,children:t})=>{let r=tR(e);return Q(io,{reportHubId:e,entry:r,children:t})},rl=sI(({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:y,headingLevel:p}=Z(),{report:m,error:f,isLoading:S}=ql(e.reportHubId,e.businessDate),h=jr(),D=ni(e.reportHubId),b=D==="editing"||D==="automatic",R=Aa(null),g=Aa(null),E=Aa(!1),w=Aa(!1),x=Sn(m,d),L=m?.isDraft===!0;zc(()=>{m!==null&&(x&&L&&D==="display"?h.open(e.reportHubId,uo(m),!0):!L&&D==="automatic"&&h.discard(e.reportHubId))},[m,x,L,D,h,e.reportHubId]);let M=Ta(()=>m===null?void 0:()=>{E.current=!0,h.open(e.reportHubId,uo(m),!1)},[h,e.reportHubId,m]),P=Ln(()=>{w.current=!0,h.dismiss(e.reportHubId)},[h,e.reportHubId]),B=Ln(()=>{w.current=!0,h.discard(e.reportHubId)},[h,e.reportHubId]),T=Ln(V=>{V===null||!E.current||(E.current=!1,V.focus())},[]),A=Ln(V=>{V===null||!w.current||(w.current=!1,V.focus())},[]),C=Ln(()=>{g.current?.focus({preventScroll:!0})},[]);Kc(()=>{b||!w.current||(w.current=!1,g.current?.focus())},[b]);let I=Ln(()=>{setTimeout(()=>{let V=R.current;V!==null&&V.scrollTo({top:V.scrollHeight,behavior:vf(V)})},100)},[]),$=Ne(e.businessDate),k=Ta(()=>m===null?null:Ge(m.employeeName),[m]),U=S||!m,G=m===null?void 0:Er(m.sourceType,y);return Lr(wI,{reportHubId:e.reportHubId,children:[Lr("div",{className:mI,children:[Q("dl",{className:"m-0",children:Q(Dt,{label:u.businessDate,classNames:cI,children:Q(vt,{ref:g,level:p,id:r,tabIndex:-1,className:RI,children:$})})}),Lr("div",{className:pI,children:[Q("dl",{className:"m-0 min-w-0",children:Q(Dt,{label:u.author,classNames:uI,valueId:n,children:U||k===null?Q("div",{"data-skeleton":!0,className:"h-3 w-24 rounded bg-slate-200 motion-safe:animate-pulse dark:bg-slate-700"}):Q(Ae,{fieldKey:Te.field("employeeName"),raw:m?.employeeName,display:k})})}),G?Q(ho,{config:G}):null,m===null?null:Q(wi,{isEditing:b,descriptionId:null})]})]}),Lr(ga,{value:o,onValueChange:V=>a(SI(V)),className:"flex min-h-0 flex-1 flex-col",children:[Q("div",{className:El,children:Q(Ea,{"aria-label":u.reportTabList,className:fI,children:bI.map(V=>Q(Da,{value:V,children:V==="article"?u.tabArticle:u.tabRelations},V))})}),Q(To,{ref:R,value:"article",tabStop:!0,className:Jb[t],style:eS[t],children:b?m?Q(Ai,{report:m,onCancel:P,onPublishSuccess:B,titleInputRef:T}):Q("p",{className:Mn,children:u.loading}):Q(xI,{report:m,sourceConfig:G,isLoading:S,error:f,item:e,autoMarkRead:s,isActive:i,dwell:l,onCommentAdded:I,userId:d,onEdit:x?M:void 0,editButtonRef:A,onReportDeleted:c,onCommentSectionRemoved:C})}),Q(To,{value:"relations",tabStop:!0,className:Jb[t],style:eS[t],children:Q("p",{className:Mn,children:u.relationsEmpty})})]})]})});rl.displayName="DailyReportSidePaneContent";var tl=({className:e="w-32"})=>Q("div",{"data-skeleton":!0,className:`h-4 rounded bg-slate-200 motion-safe:animate-pulse dark:bg-slate-700 ${e}`}),_I=["w-full","w-11/12","w-4/5"],vI=v(Au,ka),xI=({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:y,onCommentSectionRemoved:p})=>{let{toggleStar:m,toggleRead:f,deleteReport:S}=ct(),{labels:h,headingLevel:D}=Z(),b=Yr[D],{handleToggleRead:R}=hI(e,d,r,a,s,i,f),g=e!==null&&rs(e.sourceType,t),E=e===null?null:hr(e,d),w=Ta(()=>e?.content?ip(e.content):null,[e]),x=Ta(()=>Ge(e?.subject),[e]),L=Ta(()=>Ge(e?.customerName),[e]),M=async A=>{try{await m(A.reportHubId,!A.isStarred,A.date)}catch{}},P=async A=>{if(confirm(h.confirmDelete)){try{await S(A.reportHubId,A.date)}catch{return}y(A.reportHubId)}};if(n)return Q("p",{className:Co,children:h.reportLoadFailed(o.reportHubId)});let B=!e,T=Sn(e,d);return Lr("div",{className:"flex flex-col gap-4 text-slate-700 dark:text-slate-200",onDoubleClick:c,children:[Lr("div",{className:"flex pointer-coarse:flex-wrap items-start gap-2",children:[Q("dl",{className:"m-0 flex min-w-0 flex-1 pointer-coarse:basis-full",children:Q(Dt,{label:h.subject,classNames:dI,children:B?Q(tl,{className:"w-3/4"}):Q("span",{className:"text-sm",children:Q(Ae,{fieldKey:Te.field("subject"),raw:e?.subject,display:x})})})}),!B&&e&&E&&Lr("div",{className:yI,children:[Q(go,{readState:E,label:h.updatedSinceRead}),Q("button",{type:"button",onClick:()=>M(e),className:dt,title:e.isStarred?h.starRemove:h.starAdd,"aria-label":e.isStarred?h.starRemove:h.starAdd,"data-detail-star-button":e.reportHubId,children:Q(bo,{filled:e.isStarred})}),Q("button",{type:"button",onClick:()=>R(e,!1),className:dt,title:_n(E,h),"aria-label":_n(E,h),"data-detail-read-button":e.reportHubId,children:Q(So,{readState:E})}),c&&Q("button",{ref:u,type:"button",onClick:c,"data-detail-edit-button":e.reportHubId,className:dt,title:h.edit,"aria-label":h.edit,children:Q(oI,{className:tt.edit})}),T&&Q("button",{type:"button",onClick:()=>P(e),"data-detail-delete-button":e.reportHubId,className:dt,title:h.deleteReport,"aria-label":h.deleteReport,children:Q(aI,{className:tt.delete})})]})]}),Q("dl",{className:"m-0",children:Q(Dt,{label:h.customer,classNames:Zb,children:B?Q(tl,{className:"w-1/2"}):Q("span",{className:"text-sm",children:Q(Ae,{fieldKey:Te.field("customerName"),raw:e?.customerName,display:L})})})}),Lr("div",{className:"flex flex-col gap-2",children:[Q(vt,{level:b,className:yr,children:h.content}),Q("div",{className:vI,children:B?_I.map(A=>Q("div",{className:Tu,children:Q(tl,{className:A})},A)):w!==null&&w.text.length>0?Q("div",{className:"whitespace-pre-wrap",children:Q(Ae,{fieldKey:Te.field("content"),raw:e?.content,display:w})}):Q("p",{className:ue,children:h.contentEmpty})})]}),Q("dl",{className:"m-0",children:Q(Dt,{label:h.visitTime,classNames:Zb,children:B?Q(tl,{className:"w-1/3"}):Lr("span",{className:"text-sm",children:[Wr(e?.visitTimeFrom)," ",e?.visitTimeFrom&&e?.visitTimeTo?"-":""," ",Wr(e?.visitTimeTo)]})})}),e&&Q(hi,{attachments:e.attachments}),e&&Q(fa,{report:e,userId:d,canComment:g,onCommentAdded:l,onSectionRemoved:p,formPlacement:"in-section",sectionClassName:"border-slate-100 border-t border-solid pt-4 dark:border-slate-800"})]})};import{jsx as en,jsxs as sS}from"react/jsx-runtime";var MI="fixed inset-y-0 left-0 m-0 flex h-auto max-h-none w-auto max-w-none 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]",PI={right:"var(--aqdr-overlay-right, 0px)"},kI="absolute inset-0 bg-slate-900/50 motion-safe:transition-opacity motion-safe:duration-200",FI=v("relative ml-auto flex h-full w-full max-w-full shadow-xl motion-safe:transition-[transform] motion-safe:duration-200 motion-safe:ease-out",Ku),HI=v(Me,"pointer-coarse:relative 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 pointer-coarse:before:-inset-px hover:bg-slate-100 dark:border-slate-600 dark:text-slate-200 dark:hover:bg-slate-800",ce),BI="flex h-full w-full flex-col gap-4 pt-[max(--spacing(4),env(safe-area-inset-top))] pr-[max(--spacing(4),env(safe-area-inset-right))] pb-[max(--spacing(4),env(safe-area-inset-bottom))] pl-[max(--spacing(4),env(safe-area-inset-left))]",UI="flex shrink-0 justify-center empty:hidden",iS=({isMobileLayout:e,selection:t,dailyReportItems:r,onSelectItem:n,rootRef:o})=>{let a=t.id,[s,i]=jc(!1),l=wo(null),d=wo(null),c=wo(null),u=wo(e),y=wo(!0),p=Sa(r,t),m=wa(()=>{let b=o.current;if(b===null)return;let R=b.ownerDocument.body;c.current={body:R,overflow:R.style.overflow},R.style.overflow="hidden"},[o]),f=wa(()=>{let b=c.current;b!==null&&(b.body.style.overflow=b.overflow,c.current=null)},[]);nl(()=>{if(y.current){y.current=!1,u.current=e;return}let b=!u.current;u.current=e,b&&e&&a!==null?i(!0):!e&&s&&(d.current=a,i(!1),f())},[e,a,s,f]);let S=e&&s&&p!==null,h=II(S);nl(()=>{if(e&&s&&a!==null&&!l.current){let b=`overlay-${Date.now()}`;window.history.pushState({...window.history.state,dailyReportOverlay:b},"",window.location.href),l.current=b}else!(e&&s)&&l.current&&(l.current=null,window.history.back());return e&&s?m():f(),f},[e,s,a,m,f]),nl(()=>{let b=()=>{l.current&&(d.current=a,l.current=null,i(!1),n(null))};return window.addEventListener("popstate",b),()=>window.removeEventListener("popstate",b)},[a,n]);let D=wa(()=>{e&&(d.current=a,i(!1),n(null),l.current&&(l.current=null,window.history.back()))},[e,a,n]);return{isMobileDetailOpen:s,setIsMobileDetailOpen:i,isOverlayMounted:h,shouldShowOverlay:S,handleOverlayClose:D,lastClosedItemIdRef:d,selectedItem:p}},lS=({isOpen:e,selectedItem:t,onClose:r,autoMarkRead:n=!1,userId:o,onReportDeleted:a})=>{let{labels:s}=Z(),{registerNoticeHost:i}=li(),l=wo(null),d=oS(),c=oS(),[u,y]=jc(Gc),[p]=jc(()=>$c(e)),{isBlocked:m,requestBlock:f,reset:S}=LI(),h=OI(e,t);aS(()=>{p.set(e)},[e,p]);let D=wa(L=>L.ownerDocument.getElementById(d),[d]),{dialogProps:b,backdropProps:R,panelProps:g,attemptClose:E,isSwiping:w}=NI({isOpen:e,onClose:r,isCloseBlocked:wa(()=>m,[m]),skipWhenTextSelected:!0,initialFocus:D});aS(()=>{let L=l.current;if(!(!e||L===null))return i(L)},[e,i]),nl(()=>{e||S()},[e,S]);let x=L=>{let M=Gb(po(L),L.currentTarget);M!==null&&(L.preventDefault(),M.kind==="wrap"&&M.element.focus())};return h?sS("dialog",{...b,"data-daily-report-mobile-overlay":"true","aria-labelledby":`${d} ${c}`,className:v(MI,e&&!w?"pointer-events-auto":"pointer-events-none"),style:PI,onKeyDown:x,children:[en("div",{...R,"data-daily-report-overlay-backdrop":"",className:v(kI,e?"opacity-100":"opacity-0")}),en("div",{...g,"data-daily-report-overlay-panel":"",className:v(FI,e?"pointer-events-auto":"pointer-events-none"),children:sS("div",{className:BI,children:[en(CI.Provider,{value:{isBlocked:m,requestBlock:f},children:en("div",{"data-testid":"daily-report-side-pane","data-report-id":h.reportHubId,"data-displayed-report-id":h.reportHubId,className:"flex min-h-0 flex-1 flex-col gap-4",children:en(rl,{item:h,placement:"overlay",headingId:d,authorId:c,activeTab:u,onActiveTabChange:y,autoMarkRead:n,isActive:e,dwell:p,userId:o,onReportDeleted:a},h.reportHubId)})}),en("div",{ref:l,"data-daily-report-notice-slot":"","data-overlay-interactive":"true",className:UI}),en("div",{className:"flex justify-start",children:en("button",{type:"button","data-overlay-interactive":"true",className:HI,onClick:()=>E(),children:s.close})})]})})]}):null};import{memo as pS,useContext as mS,useEffect as aL,useMemo as al}from"react";import{createContext as VI,createElement as Yc,Fragment as WI,useLayoutEffect as zI,useMemo as KI,useRef as dS,useState as $I}from"react";var GI=1.5,jI=.5,YI=4.75,qI=4,XI=1e-6,ZI=(e,t)=>4*Math.ceil((2*pr+2*Pa+qI+(GI+jI)*e+Math.max(YI*e,t)-XI)/4),ol=VI(null),QI="data-daily-report-root-font-size-probe",JI={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},eL="data-daily-report-target-size-probe",tL="h-0 pointer-coarse:h-[44px]",rL={position:"fixed",insetBlockStart:0,insetInlineStart:0,visibility:"hidden",pointerEvents:"none",overflow:"hidden",writingMode:"horizontal-tb",boxSizing:"content-box",padding:0,border:0,margin:0,inlineSize:0},nL=e=>{let{height:t}=e.getBoundingClientRect();if(!(Number.isFinite(t)&&t>=0))throw new Error(`[daily-report] the target size probe has no finite block size; got ${String(t)}`);return t},oL=e=>{let t=Ye(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])},cS=()=>{let e=dS(null),t=dS(null),[r,n]=$I(null);zI(()=>{let a=e.current,s=t.current;if(a===null||s===null)throw new Error("[daily-report] useListRowSlotHeight needs the List to render probes");let i=null,l=()=>{let c=ZI(oL(a),nL(s));c!==i&&(i=c,n(c))};l();let d=new ResizeObserver(l);return d.observe(a),d.observe(s),()=>d.disconnect()},[]);let o=KI(()=>Yc(WI,null,Yc("div",{ref:e,"aria-hidden":!0,[QI]:"",style:JI}),Yc("div",{ref:t,"aria-hidden":!0,[eL]:"",className:tL,style:rL})),[]);return{rowSlotHeight:r,probes:o}};import{jsx as pe,jsxs as tn}from"react/jsx-runtime";var sL=v(Br,Oa,Ma,Na),iL=v("relative flex pointer-coarse:grid h-full w-full select-none pointer-coarse:grid-cols-[minmax(0,1fr)_auto] flex-wrap content-start items-center gap-2 overflow-hidden",Mt,Fa,Eu),lL="min-w-24",dL="basis-full space-y-2 text-slate-700 text-sm leading-5 dark:text-slate-200 pointer-coarse:col-start-1 pointer-coarse:row-start-2",cL={touchAction:"manipulation"},uL=v("pointer-coarse:col-start-1 pointer-coarse:row-start-1 flex grow basis-0 cursor-pointer items-center gap-2 text-left outline-none after:absolute after:inset-0 after:rounded-2xl",lL),pL=v("relative z-10",dt),mL=v(et,"shrink-0 whitespace-nowrap bg-slate-100 font-medium text-slate-900 text-xs dark:bg-slate-800 dark:text-slate-100"),fL=v(et,"min-w-0 max-w-full bg-slate-100 font-semibold text-xs dark:bg-slate-800 dark:text-slate-200"),yL=v(_u,"ml-auto pointer-coarse:contents"),RL="contents pointer-coarse:col-start-2 pointer-coarse:row-start-1 pointer-coarse:flex pointer-coarse:items-center pointer-coarse:gap-1 pointer-coarse:justify-self-end",hL="contents pointer-coarse:col-start-2 pointer-coarse:row-start-2 pointer-coarse:flex pointer-coarse:items-center pointer-coarse:gap-1 pointer-coarse:self-start pointer-coarse:justify-self-end",bL=v("flex h-full",Mt),SL="flex h-full w-full flex-col justify-between motion-safe:animate-pulse",_o="h-4 rounded bg-slate-200 dark:bg-slate-700",gL=pe("div",{"data-skeleton":!0,...Ot,className:bL,children:tn("div",{className:SL,children:[tn("div",{className:"flex flex-wrap items-center gap-2",children:[pe("div",{className:v(_o,"w-24")}),pe("div",{className:v(_o,"w-24")}),pe("div",{className:v(_o,"w-24")})]}),tn("div",{className:"space-y-2",children:[pe("div",{className:v(_o,"w-full")}),pe("div",{className:v(_o,"w-11/12")}),pe("div",{className:v(_o,"w-5/6")})]})]})}),EL=()=>gL,DL="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",AL=`flex h-full items-center justify-center rounded-2xl border border-slate-200 border-solid bg-slate-50 p-[15px] ${ue} text-sm dark:border-slate-700 dark:bg-slate-900/40`,TL=e=>{e.target===e.currentTarget&&e.preventDefault()},qc=({reportHubId:e,rowId:t,name:r,children:n})=>{let o=mS(ol);if(o===null)throw new Error("[daily-report] a List row frame is rendered outside the List view (no measured row slot)");let a=al(()=>({height:o}),[o]);return pe(Fi,{reportHubId:e,rowId:t,name:r,className:sL,style:a,onMouseDown:TL,children:n})},fS=e=>sp(e??null,pm),wL=({report:e,viewerUserId:t,sourceConfig:r,marks:n,marksStore:o,labels:a})=>Ui({state:()=>a.rowState({readState:hr(e,t),isStarred:e.isStarred}),attachmentCount:e.attachments.length,sourceConfig:r,preview:()=>{let s=fS(e.content);return s.length>0?s.map(i=>i.text).join(" "):a.contentEmptyPreview},marks:n,marksStore:o,labels:a}),_L=(e,t)=>`${Ne(e.businessDate)} ${Ge(t.employeeName).text}`,uS=({label:e,dataAttributes:t,onClick:r,children:n})=>{let o=co();return pe("button",{type:"button",title:e,"aria-label":e,...o,...t,onClick:r,className:pL,children:n})},yS=pS(({item:e,report:t,viewerUserId:r,rowId:n,sourceConfig:o,describedBy:a,onSelect:s})=>{let{labels:i}=Z(),{toggleStar:l,toggleRead:d}=ct(),c=Ce(n,"name"),u=al(()=>fS(t.content),[t.content]),y=al(()=>Ge(t.employeeName),[t.employeeName]),p=Ne(e.businessDate),m=R=>{R.currentTarget.focus({preventScroll:!0});let g=tf(R.currentTarget);g!==null&&s(e.reportHubId,g)},f=async()=>{let R=!t.isStarred;try{await l(t.reportHubId,R,t.date)}catch{}},S=hr(t,r),h=async()=>{try{await d(t.reportHubId,kn(S,t.contentDigest),t.date)}catch{}},D=t.isStarred?i.starRemove:i.starAdd,b=_n(S,i);return tn("div",{"data-daily-report-card":!0,...Ot,"aria-labelledby":c,style:cL,className:iL,children:[pe(Ro,{id:Ce(n,"position"),whileTotalUnknownOnly:!1}),pe("span",{id:Ce(n,"state"),className:"sr-only",children:i.rowState({readState:S,isStarred:t.isStarred})}),tn("button",{id:c,type:"button",tabIndex:-1,[Xm]:e.reportHubId,...vs,"aria-describedby":a,onClick:m,className:uL,children:[pe("span",{className:mL,children:p})," ",pe("span",{className:fL,children:pe("span",{className:"truncate font-medium text-slate-900 dark:text-slate-100",children:pe(Ae,{fieldKey:Te.field("employeeName"),raw:t.employeeName,display:y})})})]}),tn("div",{className:yL,children:[tn("div",{className:RL,children:[pe(Io,{id:Ce(n,"attachments"),count:t.attachments.length,label:i.attachments}),o?pe(ho,{id:Ce(n,"source"),config:o}):null,pe(go,{readState:S,label:i.updatedSinceRead})]}),tn("div",{className:hL,children:[pe(uS,{label:D,dataAttributes:{"data-list-star-button":e.reportHubId},onClick:f,children:pe(bo,{filled:t.isStarred})}),pe(uS,{label:b,dataAttributes:{"data-list-read-button":e.reportHubId},onClick:h,children:pe(So,{readState:S})})]})]}),pe("div",{id:Ce(n,"preview"),className:dL,children:u.length>0?u.map((R,g)=>pe("p",{className:"wrap-break-word line-clamp-1",children:pe(Ae,{fieldKey:Te.field("content"),raw:t.content,display:R})},g)):pe("p",{children:i.contentEmptyPreview})}),pe(Sh,{id:Ce(n,"match")})]})});yS.displayName="ListReportCard";var Xc=pS(({item:e,onSelect:t,userId:r})=>{let{labels:n,sourceTypeConfigs:o}=Z(),{removeStaleItem:a}=ct(),s=un(),i=mS(ft),l=al(()=>Wi(s,i,e.reportHubId,e.businessDate),[s,i,e.reportHubId,e.businessDate]),{bodyReady:d,rendered:c}=Ns(e.reportHubId,l,"fixed"),{report:u,error:y}=c.detail,p=c.marksStore===i?c.marks:null,{report:m,error:f,isLoading:S,isRefetching:h}=l.read().detail,D=Pi(e.reportHubId),b=m===null&&f===null&&!S&&!h;aL(()=>{b&&e.reportHubId>0&&a(e.reportHubId)},[b,e.reportHubId,a]);let R=Ne(e.businessDate),g=Ce(D,"state"),E=(M,P,B)=>pe(qc,{reportHubId:e.reportHubId,rowId:D,name:{kind:"label",label:R,isBusy:P,describedBy:B},children:M});if(!d&&(y!==null||u===null))return E(ki,!0,yo);if(y!==null)return E(pe("div",{...Ot,className:DL,children:pe("p",{id:g,children:n.reportSummaryLoadFailed(e.reportHubId)})}),!1,[g]);if(u===null&&(S||m!==null||f!==null))return E(pe(EL,{}),!0,yo);if(!u)return E(pe("div",{...Ot,className:AL,children:pe("p",{id:g,children:n.reportNotFound})}),!1,[g]);let w=Er(u.sourceType,o),x=wL({report:u,viewerUserId:r,sourceConfig:w,marks:p,marksStore:i,labels:n}),L=Ra(D,x);return d?pe(qc,{reportHubId:e.reportHubId,rowId:D,name:{kind:"parts",describedBy:L},children:pe(io,{reportHubId:e.reportHubId,entry:p,children:pe(yS,{item:e,report:u,viewerUserId:r,rowId:D,sourceConfig:w,describedBy:[Ce(D,"position"),...L].join(" "),onSelect:t})})}):pe(qc,{reportHubId:e.reportHubId,rowId:D,name:{kind:"parts",describedBy:L},children:pe(Vi,{rowId:D,name:_L(e,u),description:x})})});Xc.displayName="ListReportItem";import{Fragment as WL,jsx as Rt,jsxs as ll}from"react/jsx-runtime";var bS={pointerDragInputs:cs,inertiaOptions:Jn(!1),wheelSpeedMultiplier:os,enableKeyboardNavigation:!1,resetOnGetItemHeightChange:!0},CL={...bS,inertiaOptions:Jn(!0)},SS=Object.freeze({value:360,unit:"pixels"}),gS=Object.freeze({value:160,unit:"pixels"}),IL=Object.freeze({value:rS,unit:"pixels"}),ES=Object.freeze({value:520,unit:"pixels"}),LL=Object.freeze([gS,SS,ES]),NL=Object.freeze({visible:!0,thickness:6,length:32,barThickness:2,barLength:16}),OL=v("cursor-col-resize rounded hover:bg-slate-200/60 focus:ring-0 dark:hover:bg-slate-700/60",ce),ML=v("relative w-full",Ka,za,$a),PL=v(Pt,"relative isolate overflow-hidden"),hS="daily-report-list",kL=()=>!1,FL=()=>{throw new Error("[daily-report] a List activation arrived before the view committed")},HL=e=>{let[t,r]=dl(!1);return il(()=>{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<um)},a=new(Ye(n)).ResizeObserver(o);return a.observe(n),()=>a.disconnect()},[e]),t},Qc=e=>{let t=rn(null),[r,n]=dl(null),o=gs(t),a=HL(t),{rowSlotHeight:s,probes:i}=cS(),l=eo(r),d=yt(c=>(t.current=c,n(c),()=>{t.current=null,n(null)}),[]);return ll("div",{ref:d,className:Ua,"data-testid":"daily-report-root",children:[i,o===null||s===null?null:Rt(BL,{...e,rootRef:t,viewportHeight:o,rowSlotHeight:s,isContainerNarrow:a,reducedMotion:l})]})},BL=({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[y]=dl(()=>s?.current??0),p=rn(null),{labels:m}=Z(),f=hs(),[S]=dl(Os),D=Kb()||c,b=rn(null),R=e.length,g=t===void 0?R:t,E=rn(null),w=yt((Y,oe,Le)=>o(Y,Le),[o]),x=yt(Y=>o(Y,"settled"),[o]),L=yt(Y=>{let oe=Fe(e,Y);return oe===void 0?ss:oe},[e]),M=rn(null),P=Qi({itemCount:R,getItem:L}),B=yt(Y=>{let oe=L(Y.visibleStartIndex);oe.reportHubId>0&&(S.setLabel(Ne(oe.businessDate)),M.current=oe.reportHubId),P(Y)},[L,S,P]),T=yt(()=>M.current,[]),A=Zc(()=>({kind:"uniform",rowHeight:d}),[d]),C=rn(e);il(()=>{C.current=e},[e]);let I=rn(FL),$=yt(Y=>I.current(Y),[]),{containerProps:k,handleRangeChange:U,handleScrollAdjust:G,attachVirtualScroll:V,handleRef:W,scroller:de,attachScrollContainer:ge,contentProps:N,keyboardHelp:z,selection:j,selectionStore:te,activateRow:ye,focusViewRow:ie,focusAfterRemoval:J,rowPass:re,rowScope:De}=qi({items:e,selectedId:n,onSelect:w,onActivate:$,containerRef:p,rootRef:i,testId:hS,itemsRef:C,rowSetSize:g,rowSizing:A,arrowAlign:"nearest",isViewRevealPending:kL,onRangeChange:B});Ps({items:e,scroller:de,readTopReportId:T});let{isMobileDetailOpen:q,setIsMobileDetailOpen:ne,isOverlayMounted:Ct,shouldShowOverlay:Qe,handleOverlayClose:It,lastClosedItemIdRef:st,selectedItem:pt}=iS({isMobileLayout:D,selection:j,dailyReportItems:e,onSelectItem:x,rootRef:i});sl(()=>{let Y=p.current,oe=()=>{S.setWheelScrollActive(!0),b.current&&clearTimeout(b.current),b.current=window.setTimeout(()=>{S.setWheelScrollActive(!1),b.current=null},is)};return Y?.addEventListener("wheel",oe,{passive:!0}),()=>{Y?.removeEventListener("wheel",oe),b.current&&clearTimeout(b.current)}},[S]),sl(()=>{!R&&n!==null&&x(null)},[R,n,x]),sl(()=>{if(q||st.current===null)return;let Y=st.current;st.current=null,ie(Y,"overlay")},[q,st,ie]),sl(()=>{let Y=Fe(e,0);Y!==void 0&&S.setLabel(Ne(Y.businessDate))},[e,S]);let it=yt(Y=>{x(Y),D&&ne(!0)},[D,x,ne]);il(()=>{I.current=it},[it]);let bt=yt((Y,oe)=>{Y<=0||(ye(Y,oe),it(Y))},[ye,it]),Gt=yt(()=>d,[d]),jt=rn(d);il(()=>{let Y=jt.current;jt.current=d;let oe=W.current;if(Y===d||oe===null)return;let Le=oe.getScrollPosition();Le>0&&de.by(Le*d/Y-Le)},[W,d,de]);let wt=yt(Y=>Ts(e,Y),[e]),_=yt((Y,oe)=>Rt(bn.Provider,{value:oe,children:Rt(ea.Provider,{value:Y.reportHubId,children:Rt(Xc,{item:Y,onSelect:bt,userId:a})})},Y.reportHubId),[bt,a]),O=yt(Y=>{let oe=ge(Y),Le=re.attach(Ye(Y),null);return()=>{Le(),oe()}},[ge,re]),H=yt(Y=>{s&&(s.current=Y);let oe=p.current;oe&&(oe.toggleAttribute(Fr,!0),E.current&&clearTimeout(E.current),E.current=setTimeout(()=>{oe.toggleAttribute(Fr,!1),E.current=null},150))},[s]),X=yt(Y=>Rt(Ms,{...Y,store:S}),[S]),ae=Zc(()=>ll("div",{ref:O,className:PL,...xs,...k,children:[z,Rt(hn.Provider,{value:g,children:Rt(ol.Provider,{value:d,children:Rt(Xi,{ref:V,rowScope:De,items:e,itemCount:R,getItem:L,getItemKey:wt,getItemHeight:Gt,viewportSize:l,initialScrollOffset:y,overscanCount:ls,scrollBarOptions:{...ds,renderThumbOverlay:X},behaviorOptions:u?CL:bS,onRangeChange:U,onScrollAdjust:G,onScroll:H,testId:hS,className:ML,locale:f.locale,labels:f.labels,contentProps:N,children:_})})})]}),[O,V,De,e,k,g,R,L,wt,Gt,l,d,u,y,X,U,G,H,z,N,f.locale,f.labels,_]),me=Zc(()=>ll(vL,{direction:"horizontal",className:"min-h-0 flex-1","data-testid":"daily-report-panel-group",children:[Rt(RS,{id:"daily-report-list-panel",defaultSize:SS,minSize:gS,maxSize:ES,contentOverflow:"hidden",className:UL,children:ae}),Rt(xL,{id:"daily-report-list-handle",thickness:10,indicator:NL,className:OL,activationSizes:LL,"aria-label":m.resizeHandle,title:m.resizeHandleHint}),Rt(RS,{id:"daily-report-detail-panel",minSize:IL,contentOverflow:"hidden",className:VL,children:Rt(nS,{dailyReportItems:e,selectionStore:te,autoMarkRead:r,userId:a,onReportDeleted:J})})]}),[ae,m.resizeHandle,m.resizeHandleHint,e,te,r,a,J]);return ll(WL,{children:[Rt("div",{className:Va,children:D?Rt("div",{className:Pt,children:ae}):me}),Ct&&Rt(lS,{isOpen:Qe,selectedItem:pt,onClose:It,autoMarkRead:D&&r,userId:a,onReportDeleted:J})]})},UL=v("flex min-h-0",hu),VL=v("flex min-h-0 flex-1",Br);import{useCallback as TO,useEffect as mu,useLayoutEffect as fu,useRef as pg,useState as wO}from"react";import qN from"lucide-react/dist/esm/icons/plus.js";import XN from"lucide-react/dist/esm/icons/refresh-cw.js";import ZN from"lucide-react/dist/esm/icons/rotate-cw.js";import{useEffect as uu,useId as ig,useLayoutEffect as lg,useMemo as hl,useRef as xo,useState as Nn}from"react";import{useSearchParams as QN}from"react-router";import{useEffect as zL,useRef as DS,useState as KL}from"react";var AS=(e,t,r=250)=>{let n=eo(t),[o,a]=KL(e),s=DS(e),i=DS(!0);return zL(()=>{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=Ye(t),c=0,u=null,y=p=>{u===null&&(u=p);let m=Math.min(1,Math.max(0,(p-u)/r)),f=1-(1-m)**3,S=Math.round(l+(e-l)*f);s.current=S,a(S),m<1&&(c=d.requestAnimationFrame(y))};return c=d.requestAnimationFrame(y),()=>d.cancelAnimationFrame(c)},[e,r,n,t]),n?e:o};import sN from"lucide-react/dist/esm/icons/loader-circle.js";import iN from"lucide-react/dist/esm/icons/x.js";import{useEffect as LS,useId as va,useLayoutEffect as lN,useRef as pl,useState as NS}from"react";var _a=Object.freeze({maxValuesPerFacet:16,maxValueLength:200,maxTotalValueLength:300}),tu=["author","sourceType","customer"],ru=Object.freeze({authors:Object.freeze([]),sourceTypes:Object.freeze([]),customers:Object.freeze([])}),$L=/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,GL=e=>{let t=e.trim();return t.length===0?null:t.replace($L,"\uFFFD")},TS=e=>{let t=GL(e);return t===null?"filter-blank-value":t!==e?"filter-value-not-canonical":e.length>_a.maxValueLength?"filter-value-too-long":null},jL=e=>{if(e.length>_a.maxValuesPerFacet)return"filter-too-many-values";let t=new Set;for(let r of e){let n=TS(r);if(n!==null)return n;if(t.has(r))return"filter-duplicate-value";t.add(r)}return null},YL=e=>{let t=0;for(let r of e.authors)t+=r.length;for(let r of e.customers)t+=r.length;return t},cl=e=>{for(let t of[e.authors,e.sourceTypes,e.customers]){let r=jL(t);if(r!==null)return r}return YL(e)>_a.maxTotalValueLength?"filters-too-long":null},Jc=e=>[...new Set(e)].sort((t,r)=>t<r?-1:1),ul=e=>({authors:Jc(e.authors),sourceTypes:Jc(e.sourceTypes),customers:Jc(e.customers)}),nn=e=>e.trim().length===0,vo=e=>e.authors.length===0&&e.sourceTypes.length===0&&e.customers.length===0,wS=(e,t)=>{let r=ul(t);for(let n of r.authors)e.append(Ve.searchAuthor,n);for(let n of r.sourceTypes)e.append(Ve.searchSourceType,n);for(let n of r.customers)e.append(Ve.searchCustomer,n)},eu=e=>{if(!Array.isArray(e))return null;let t=[],r=new Set;for(let n of e){if(typeof n!="string"||TS(n)!==null||r.has(n))return null;r.add(n),t.push(n)}return t},_S=e=>{if(!gr(e))return null;let t=eu(e.sourceTypes),r=eu(e.authors),n=eu(e.customers);return t===null||r===null||n===null?null:{sourceTypes:t,authors:r,customers:n}};import{Component as qL,Suspense as XL,useMemo as vS,useState as ZL}from"react";import{jsx as Nr,jsxs as IS}from"react/jsx-runtime";var xS="flex min-h-6 items-center text-slate-600 text-xs dark:text-slate-300",QL=v(Wu,Rr),JL=[{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"}],eN=(e,t)=>t==="author"?e.author:t==="sourceType"?e.searchFilterSourceType:e.customer,tN=(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 Pe(`config.search.renderFilterSelect (${e}) onChange values`,"distinct values of the options the control received",t);o.add(a)}return t},nu=class extends qL{constructor(){super(...arguments);this.state={failed:!1}}static getDerivedStateFromError(){return{failed:!0}}render(){return this.state.failed?Nr("span",{className:xS,children:this.props.fallback}):this.props.children}},rN=(e,t,r,n)=>{let o=vS(()=>new Set(t.map(s=>s.value)),[t]),a=JSON.stringify(n.filter(s=>!o.has(s)));return vS(()=>{let s=JSON.parse(a);return s.length===0?t:[...t,...s.map(i=>r(e,i))]},[e,t,r,a])};function nN({renderFilterSelect:e,selectProps:t}){return e(t)}var oN=(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 aN({cell:e,labels:t,locale:r,renderFilterSelect:n,candidates:o,optionOf:a,selected:s,onSelect:i}){let l=rN(e.facet,o,a,s),d=eN(t,e.facet);return IS("fieldset",{"data-testid":e.testId,className:Vu,children:[Nr("legend",{"data-testid":`${e.testId}-caption`,className:QL,children:d}),Nr(nu,{fallback:t.searchFilterUnavailable,children:Nr(XL,{fallback:Nr("span",{className:xS,children:t.searchFiltersLoading}),children:Nr(nN,{renderFilterSelect:n,selectProps:{facet:e.facet,label:d,options:l,value:s,onChange:c=>i(e,tN(e.facet,c,l)),locale:r}})})})]})}function CS({id:e,labelledBy:t,labels:r,locale:n,renderFilterSelect:o,facets:a,value:s,onChange:i,clearSignal:l}){let[d,c]=ZL(null),u=oN(r,a,d!==null&&d.selection===s&&d.clearSignal===l),y=(m,f)=>{let S={...s,[m.key]:f};if(cl(S)!==null){c({selection:s,clearSignal:l});return}c(null),i(S)},p=a.status==="ready"?a:null;return IS("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:Nr("div",{className:Uu,children:JL.map(m=>Nr(aN,{cell:m,labels:r,locale:n,renderFilterSelect:o,candidates:p.options[m.key],optionOf:p.optionOf,selected:s[m.key],onSelect:y},m.facet))}),Nr("span",{"data-testid":"daily-report-search-filters-status","aria-live":"polite",className:v("flex min-h-6 items-center text-slate-600 text-xs leading-4 empty:min-h-0 dark:text-slate-300",p===null?null:"mt-2 empty:mt-0",Rr),children:u})]})}import{Fragment as DN,jsx as ht,jsxs as xa}from"react/jsx-runtime";var dN=v("h-6 w-full min-w-0 rounded-md border border-solid bg-white pointer-coarse:pr-[67px] pr-[47px] pl-[7px] pointer-coarse:text-base text-slate-900 text-sm dark:bg-slate-900 dark:text-slate-100",an,fr,mr,ce),OS=`pointer-coarse:relative inline-grid h-6 place-content-center place-items-center rounded-full border border-solid px-[11px] font-semibold text-xs tabular-nums ${Me} pointer-coarse:before:-inset-px ${fr}`,cN="col-start-1 row-start-1",uN="invisible col-start-1 row-start-1 after:content-[attr(data-search-toggle-reserve)]",ml=Object.freeze({field:v(OS,"bg-white text-slate-800 dark:bg-slate-900 dark:text-slate-100",mr,ce),filled:v(OS,"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]",ce)}),pN=Object.freeze({union:v("mr-2 min-w-14",ml.field,"pointer-coarse:min-w-14"),intersection:v("mr-2 min-w-14",ml.filled,"pointer-coarse:min-w-14")}),MS="pointer-coarse:@max-[320px]/views:col-span-full pointer-coarse:@max-[320px]/views:row-start-2 pointer-coarse:@max-[320px]/views:mt-2 pointer-coarse:@max-[320px]/views:justify-self-end",PS=Object.freeze({closed:v("ml-2 min-w-26",MS,ml.field,"pointer-coarse:min-w-26"),open:v("ml-2 min-w-26",MS,ml.filled,"pointer-coarse:min-w-26")}),mN=tu.length*_a.maxValuesPerFacet,fN="relative min-w-0",yN="pointer-events-none absolute inset-y-0 right-0 grid grid-cols-[repeat(2,--spacing(6))] place-items-center pointer-coarse:grid-cols-[--spacing(6)_44px]",RN=v("pointer-events-auto col-start-2 row-start-1",dt),hN="col-start-1 row-start-1 size-4 text-slate-500 motion-safe:animate-spin dark:text-slate-400",bN="sr-only",SN=v("col-[2/-1] pointer-coarse:@max-[320px]/views:row-start-3 row-start-2 pt-1 pl-[8px] text-xs leading-4",ue,Rr),gN=e=>e.authors.length+e.sourceTypes.length+e.customers.length,EN=(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):"",kS=({label:e,reserved:t})=>xa(DN,{children:[ht("span",{className:cN,children:e}),ht("span",{"aria-hidden":"true","data-search-toggle-reserve":t,className:uN})]});function FS({labels:e,debounceMs:t,search:r,shownCount:n,onCommit:o,onCombineChange:a,onRelease:s,clearSignal:i,filters:l}){let[d,c]=NS(""),[u,y]=NS(!1),p=d.length>0||r.committed!==null&&!nn(r.committed.text),m=va(),f=va(),S=pl(null),h=pl(null),D=pl(!1),b=pl(i),R=va(),g=va(),E=va(),w=We(()=>({search:r,onCommit:o,onRelease:s}));lN(()=>{w.current={search:r,onCommit:o,onRelease:s}});let x=()=>{h.current!==null&&clearTimeout(h.current),h.current=null},L=(W,de,ge)=>{let N=w.current;nn(W)?vo(ge)?N.search.committed!==null&&N.onRelease():N.onCommit("",de,ge):N.onCommit(W,de,ge)},M=W=>{x();let de=w.current;L(W,de.search.combine,de.search.filters)},P=W=>{t===null||D.current||(x(),h.current=setTimeout(()=>M(W),t))},B=()=>{x(),c(""),vo(r.filters)?s():(r.committed===null||!nn(r.committed.text))&&o("",r.combine,r.filters),S.current?.focus()},T=W=>{c(W.target.value),P(W.target.value)},A=W=>{let de=po(W);if(W.key==="Enter"&&!wn(de)){W.preventDefault(),M(d);return}$b(de)&&p&&(W.preventDefault(),B())},C=()=>{x();let W=r.combine==="union"?"intersection":"union";nn(d)&&vo(r.filters)?a(W):L(d,W,r.filters)},I=W=>{u||W.facets.load(),y(!u)},$=W=>{x(),L(d,r.combine,W)};LS(()=>{b.current!==i&&(b.current=i,h.current!==null&&clearTimeout(h.current),h.current=null,c(""))},[i]),LS(()=>()=>{h.current!==null&&clearTimeout(h.current)},[]);let k=r.combine==="intersection",U=EN(e,r,n),G=r.status==="failed"?r.failure:null,V=l!==null&&u;return xa("search",{"data-testid":"daily-report-search",className:Hu,children:[xa("div",{className:Bu,children:[ht("button",{type:"button","data-testid":"daily-report-search-combine","aria-describedby":R,title:k?e.searchCombineAndTitle:e.searchCombineOrTitle,onClick:C,className:pN[r.combine],children:ht(kS,{label:k?e.searchCombineAnd:e.searchCombineOr,reserved:k?e.searchCombineOr:e.searchCombineAnd})}),xa("div",{className:fN,children:[ht("input",{ref:S,type:"text","data-testid":"daily-report-search-input","aria-label":e.searchInputLabel,"aria-describedby":G===null?g:`${E} ${g}`,"aria-invalid":G==="invalid"?!0:void 0,title:e.searchSyntaxHelp,placeholder:e.searchPlaceholder,value:d,enterKeyHint:"search",onChange:T,onKeyDown:A,onCompositionStart:()=>{D.current=!0,x()},onCompositionEnd:W=>{D.current=!1,P(W.currentTarget.value)},className:dN}),xa("div",{className:yN,children:[r.status==="searching"?ht(sN,{"aria-hidden":"true","data-testid":"daily-report-search-spinner",className:hN}):null,p?ht("button",{type:"button","data-testid":"daily-report-search-clear","aria-label":e.searchClear,title:e.searchClear,onClick:B,className:RN,children:ht(iN,{"aria-hidden":"true",className:"size-4"})}):null]})]}),l===null?null:ht("button",{type:"button",id:m,"data-testid":"daily-report-search-filters-toggle","aria-expanded":u,"aria-controls":V?f:void 0,onClick:()=>I(l),className:u?PS.open:PS.closed,children:ht(kS,{label:e.searchFiltersToggle(gN(r.filters)),reserved:e.searchFiltersToggle(mN)})}),ht("span",{id:R,hidden:!0,children:k?e.searchCombineAndTitle:e.searchCombineOrTitle}),ht("span",{id:g,hidden:!0,children:e.searchSyntaxHelp}),ht("span",{"data-testid":"daily-report-search-status","aria-live":"polite",className:bN,children:U}),G===null?null:ht("p",{id:E,"data-testid":"daily-report-search-failure",className:SN,children:e.searchFailed(G)})]}),V?ht(CS,{id:f,labelledBy:m,labels:e,locale:l.locale,renderFilterSelect:l.renderFilterSelect,facets:l.facets.state,value:r.filters,onChange:$,clearSignal:i}):null]})}var fl=new WeakMap,BS=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}},yl=(e,t)=>e.businessDate===t.businessDate&&e.sourceType===t.sourceType,AN=(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},TN=(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),!yl(i,s))return null;continue}if(!yl(s,HS(e,s.reportHubId))||r(s.reportHubId))return null;a-=1}for(let s of o.values()){if(!yl(s,HS(e,s.reportHubId))||r(s.reportHubId))return null;a+=1}return a},HS=(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},US=(e,t,r,n)=>{if(e===null)return{items:t,hasAnswerOnlyItems:!1};let o=u=>e.ids.has(u),a=fl.get(e);if(a!==void 0&&a.isReportRemoved===r&&a.removedVersion===n){if(a.stream===t)return a.list;if(a.stream instanceof _t&&t instanceof _t){let u=TN(e,$m(a.stream,t,e.answeredByChunk,o),r,a.answerOnlyCount);if(u!==null){let y=a.list.hasAnswerOnlyItems===u>0?a.list:{items:a.list.items,hasAnswerOnlyItems:u>0};return fl.set(e,{...a,stream:t,list:y,answerOnlyCount:u}),y}}}let s=new Map;for(let u of Km(t,e.answeredByChunk,o))s.set(u.reportHubId,u);let i=[],l=0;for(let u of e.items){let y=s.get(u.reportHubId);y!==void 0?i.push(yl(y,u)?u:y):r(u.reportHubId)||(i.push(u),l+=1)}let d=l>0;if(a!==void 0&&a.list.hasAnswerOnlyItems===d&&AN(a.items,i))return fl.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 fl.set(e,{stream:t,isReportRemoved:r,removedVersion:n,items:i,list:c,answerOnlyCount:l}),c};var VS=(e,t,r)=>{let n=Fe(t,0);if(n===void 0)return null;let o=nr(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=Fe(e,o+s);if(i!==void 0&&a.has(i.reportHubId))return i.reportHubId;let l=Fe(e,o-s);if(l!==void 0&&a.has(l.reportHubId))return l.reportHubId}}return n.reportHubId},ou=(e,t,r,n)=>{if(r===null){let o=Fe(t,0);return n&&o!==void 0?o.reportHubId:null}return nr(t,r)!==-1?r:VS(e,t,r)},WS=(e,t,r)=>e.selected===null?r!==null&&nr(t,r)!==-1?r:null:nr(t,e.selected)!==-1?e.selected:VS(e.items,t,e.selected);import{useEffect as su,useMemo as KS,useRef as LN,useSyncExternalStore as NN}from"react";var wN=1e3,_N=5e3,vN={combine:"union",committed:null,filters:ru,generation:0,status:"idle",failure:null,items:null,answered:null},xN=e=>e===400?"invalid":e===404?"unavailable":e===429?"busy":e===403?"refused":"failed",CN=(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))),au=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),IN=(e,t)=>{let r=ul(e),n=ul(t);return au(r.authors,n.authors)&&au(r.sourceTypes,n.sourceTypes)&&au(r.customers,n.customers)},zS=e=>{let t=vN,r=new Set,n=null,o=null,a=null,s=null,i=null,l=null,d=g=>{t=g;for(let E of r)E()},c=()=>{s!==null&&clearTimeout(s),i!==null&&clearTimeout(i),s=null,i=null},u=(g,E)=>{let w=t.answered;return w!==null&&w.query.text===g.text&&w.query.combine===g.combine&&CN(w.words,E)?w:{query:{text:g.text,combine:g.combine},words:E}},y=g=>{let E=new URLSearchParams({[Ve.searchQuery]:g.text,[Ve.searchCombine]:g.combine});return wS(E,g.filters),`${e.apiBasePath}/${je.search}?${E.toString()}`},p=(g,E,w,x)=>{if(!w){d({...t,status:"failed",failure:g});return}l!==x&&(l=x,i=setTimeout(()=>{i=null,f(E,!0)},_N))},m=async(g,E,w)=>{let x=e.session.period(),L=new AbortController;n={controller:L};let M={Accept:"application/json"};w&&a!==null&&a.generation===E&&(M["If-None-Match"]=a.value);try{let P=await e.fetch(y(g),{headers:M,cache:"no-store",signal:L.signal});if(L.signal.aborted||E!==t.generation)return;if(P.status===304){t.status!=="done"&&d({...t,status:"done",failure:null});return}if(P.status===401){e.session.reportSessionEnd(x),p("failed",g,!1,E);return}if(!P.ok){p(xN(P.status),g,w,E);return}let B=Kp(await P.json(),!nn(g.text));if(L.signal.aborted||E!==t.generation)return;if(B===null){p("failed",g,w,E);return}let T=P.headers.get("ETag");a=T===null?null:{generation:E,value:T},l=null,d({...t,status:"done",failure:null,items:B.items,answered:B.words.length===0?null:u(g,B.words)})}catch{if(L.signal.aborted||E!==t.generation)return;p("failed",g,w,E)}finally{if(n!==null&&n.controller===L&&(n=null),n===null&&o!==null){let P=o;o=null,f(P.query,P.background)}}},f=(g,E)=>{if(n!==null){o={query:g,background:(o===null||o.background)&&E};return}m(g,t.generation,E)};return{getSnapshot:()=>t,subscribe:g=>(r.add(g),()=>{r.delete(g)}),commit:(g,E,w)=>{if(nn(g)&&vo(w))throw new Error("[daily-report] search: a blank text can be committed only with a filter");let x=cl(w);if(x!==null)throw new Error(`[daily-report] search: the filter selection cannot be sent (${x})`);c();let L=t.committed,M=L!==null&&L.text===g&&L.combine===E&&IN(L.filters,w),P={text:g,combine:E,filters:w};d({...t,combine:E,committed:P,filters:w,generation:M?t.generation:t.generation+1,status:"searching",failure:null}),f(P,!1)},setCombine:g=>{g!==t.combine&&d({...t,combine:g})},release:()=>{c(),n?.controller.abort(),n=null,o=null,t.committed!==null&&d({combine:t.combine,committed:null,filters:ru,generation:t.generation+1,status:"idle",failure:null,items:null,answered:null})},invalidate:()=>{let g=t.committed;g!==null&&(s!==null&&clearTimeout(s),s=setTimeout(()=>{s=null,f(g,!0)},wN))},dispose:()=>{c(),n?.controller.abort(),n=null,o=null}}};var $S=({apiBasePath:e,invalidation:t})=>{let r=KS(()=>zS({apiBasePath:e,session:ns(nt(e),"search"),fetch:(a,s)=>fetch(a,s)}),[e]);su(()=>()=>r.dispose(),[r]),su(()=>Kr(nt(e),()=>r.invalidate()),[e,r]);let n=LN(t);su(()=>{n.current!==t&&(n.current=t,r.invalidate())},[t,r]);let o=NN(r.subscribe,r.getSnapshot,r.getSnapshot);return KS(()=>({...o,commit:r.commit,setCombine:r.setCombine,release:r.release}),[o,r])};import{useCallback as GS,useEffect as jS,useLayoutEffect as ON,useMemo as iu,useRef as YS,useState as MN}from"react";var qS=Object.freeze({status:"idle"}),PN=Object.freeze({status:"loading"}),kN=Object.freeze({sourceTypes:[],authors:[],customers:[]}),FN=e=>e===404?"unavailable":e===429?"busy":e===403?"refused":"failed",lu=(e,t)=>e.length===t.length&&e.every((r,n)=>r===t[n]),HN=(e,t)=>lu(e.sourceTypes,t.sourceTypes)&&lu(e.authors,t.authors)&&lu(e.customers,t.customers),BN=(e,t)=>"facets"in t?e.status!=="ready"||!HN(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},XS=(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})),UN=(e,t)=>e.map(r=>ZS(r,t));function ZS(e,t){let r=Er(e,t);return{value:e,label:r===void 0?e:r.label}}var QS=({apiBasePath:e,locale:t,sourceTypeConfigs:r})=>{let[n,o]=MN({apiBasePath:e,load:qS}),a=n.apiBasePath===e?n.load:qS,s=YS(null),i=We(()=>({apiBasePath:e}));ON(()=>{i.current={apiBasePath:e}});let l=YS(!1);jS(()=>()=>{s.current?.abort(),s.current=null},[e]);let d=GS(()=>{if(s.current!==null)return;let m=new AbortController;s.current=m;let f=i.current.apiBasePath;o(h=>h.apiBasePath===f&&h.load.status==="ready"?h:{apiBasePath:f,load:PN}),(async()=>{let h,D=nt(f),b=D.period();l.current=!1;try{let R=await fetch(`${f}/${je.searchFacets}`,{headers:{Accept:"application/json"},cache:"no-cache",signal:m.signal});if(m.signal.aborted)return;if(R.status===401)D.reportSessionEnd("search-facets",b),l.current=!0,h={failure:"failed"};else if(!R.ok)h={failure:FN(R.status)};else{let g=_S(await R.json());if(m.signal.aborted)return;h=g===null?{failure:"failed"}:{facets:g}}}catch{if(m.signal.aborted)return;h={failure:"failed"}}s.current=null,o(R=>({apiBasePath:f,load:BN(R.load,h)}))})()},[i]);jS(()=>Kr(nt(e),()=>{l.current&&d()}),[e,d]);let c=a.status==="ready"?a.facets:kN,u=iu(()=>{let m=new Intl.Collator(t);return{authors:XS(c.authors,m),sourceTypes:UN(c.sourceTypes,r),customers:XS(c.customers,m)}},[c,t,r]),y=GS((m,f)=>m==="sourceType"?ZS(f,r):{value:f,label:f},[r]),p=iu(()=>a.status==="ready"?{status:"ready",options:u,optionOf:y,reloadFailure:a.reloadFailure}:a,[a,u,y]);return iu(()=>({state:p,load:d}),[p,d])};import{useEffect as du,useMemo as jN}from"react";var VN=4294967295,JS=e=>typeof e=="number"&&Number.isInteger(e)&&e>=0&&e<=VN,WN=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)||!Wo(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},zN=e=>{if(!(gr(e)&&JS(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=WN(e.ranges);return t===null?null:{fingerprint:e.fingerprint,ranges:t}},KN=e=>{if(!gr(e))return null;let t={};for(let[r,n]of Object.entries(e)){if(!to(r))return null;let o=zN(n);if(o===null)return null;t[r]=o}return t},eg=(e,t)=>{if(!(gr(e)&&JS(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(!gr(i))return null;let{reportHubId:l,matchedSets:d}=i;if(!(typeof l=="number"&&Ft(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=KN(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"&&Ft(i)&&r.has(i))||n.has(i))return null;n.add(i),s.push(i)}return{wordsDigest:e.wordsDigest,reports:a,deferred:s}};var tg=2*Vo*Sr.maxDetailIds,$N=240,GN=6e4,rg=({apiBasePath:e,fetch:t,answered:r,session:n})=>{let o=r.words.length,a=r.query.combine==="union"&&o>=2,s=Lf(r.words),i=new Map,l=new Map,d=0,c=new Map,u=new Set,y=0,p=0,m=null,f=new Set,S=!1,h=A=>{let C=i.get(A);if(C!==void 0)return C;let I={entry:void 0,appliedSequence:0,settledEpoch:null,retriedEpoch:null,revalidated:new Set};return i.set(A,I),l.has(A)||(d+=1),I},D=A=>{for(let C of A){let I=i.get(C);I!==void 0&&(I.settledEpoch=null)}},b=()=>{if(!(d<=tg))for(let A of[...i.keys()]){if(d<=tg)return;l.has(A)||(i.delete(A),c.delete(A),d-=1)}},R=A=>{let C=l.get(A);if(C!==void 0)for(let I of[...C])I()},g=A=>{let C=new URLSearchParams({[Ve.searchQuery]:r.query.text,[Ve.searchCombine]:r.query.combine,[Ve.reportIds]:A.join(",")});return`${e}/${je.searchMarks}?${C.toString()}`},E=(A,C)=>{for(let I of A){let $=h(I.reportHubId);$.appliedSequence>C||($.appliedSequence=C,$.entry=I,i.delete(I.reportHubId),i.set(I.reportHubId,$),R(I.reportHubId))}b()},w=(A,C)=>{let I=[];for(let U of A){let G=i.get(U);G!==void 0&&G.retriedEpoch!==y&&I.push({id:U,record:G})}if(I.length===0)return;let k=setTimeout(()=>{u.delete(k);for(let{id:U,record:G}of I){let V=c.get(U);V===void 0||V.timer!==k||(c.delete(U),l.has(U)?(G.retriedEpoch=y,T.enqueue(U)):G.settledEpoch=null)}},C);u.add(k);for(let{id:U,record:G}of I)c.set(U,{timer:k,record:G})},x=A=>{for(let C of A)l.has(C)?T.enqueue(C):D([C])},L=async(A,C)=>{p+=1;let I=p,$=y;for(let W of A)h(W).settledEpoch=y,c.delete(W);b();let k,U=n.period();try{k=await t(g(A),{headers:{Accept:"application/json"},cache:"no-store",signal:C})}catch{return}if(k.status===401){n.reportSessionEnd(U);return}if(k.status===403)return;if(k.status===429){let W=ts(k,GN);W!==null&&$===y&&w(A,W);return}if(!k.ok)return;let G;try{G=await k.json()}catch{return}let V=eg(G,{requestedIds:A,setCount:o,expectsMatchedSets:a});C.aborted||V===null||V.wordsDigest!==s||(E(V.reports,I),$===y&&x(V.deferred))},M=()=>{S=!0,queueMicrotask(()=>{S=!1}),m=setTimeout(P,$N)},P=()=>{if(m=null,f.size!==0){for(let A of f)T.enqueue(A);f.clear(),M()}},B=A=>{if(m!==null&&!S){f.add(A);return}T.enqueue(A),m===null&&M()},T=es({hasListener:A=>l.has(A),batchSize:Sr.maxDetailIds,inFlightBound:Vo,send:L});return{indicator:Object.freeze({setCount:o,showsMatchedSets:a}),subscribe:(A,C)=>{let I=l.get(A);I===void 0&&(I=new Set,l.set(A,I),i.has(A)&&(d-=1)),I.add(C);let $=i.get(A),k=$!==void 0&&$.settledEpoch===y;return I.size===1&&!k&&!T.isWanted(A)&&!f.has(A)&&B(A),()=>{let U=l.get(A);U===void 0||!U.delete(C)||U.size>0||(l.delete(A),i.has(A)&&(d+=1),f.delete(A),D(T.release(A)),b())}},read:A=>{let C=i.get(A);return C===void 0?void 0:C.entry},revalidate:(A,C,I)=>{let $=h(A),k=`${C}\0${I}`;$.revalidated.has(k)||($.revalidated.add(k),f.delete(A),T.enqueue(A))},advanceEpoch:()=>{y+=1;for(let A of u)clearTimeout(A);u.clear(),c.clear(),f.clear();for(let A of l.keys())T.enqueue(A)},dispose:()=>{for(let C of u)clearTimeout(C);u.clear();let A=[...c.keys(),...f];c.clear(),f.clear(),m!==null&&clearTimeout(m),m=null,D([...T.dispose(),...A])}}};var ng=({apiBasePath:e,answered:t,shownRevision:r})=>{let n=jN(()=>t===null?null:rg({apiBasePath:e,answered:t,session:ns(nt(e),"search-marks"),fetch:(a,s)=>fetch(a,s)}),[e,t]);du(()=>{if(n!==null)return()=>n.dispose()},[n]),du(()=>{if(n!==null)return Kr(nt(e),()=>n.advanceEpoch())},[e,n]);let o=We(()=>({store:n,shownRevision:r}));return du(()=>{let a=o.current;o.current={store:n,shownRevision:r},n!==null&&a.store===n&&a.shownRevision!==r&&n.advanceEpoch()},[o,n,r]),n};import{useSyncExternalStore as YN}from"react";var og=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)})}},cu=e=>YN(e.subscribe,e.getSettled,e.getSettled);import*as Ca from"@radix-ui/react-switch";import*as sg from"react";import{jsx as ag}from"react/jsx-runtime";var Rl=sg.forwardRef(({className:e,...t},r)=>ag(Ca.Root,{className:v(`peer inline-flex shrink-0 cursor-pointer items-center rounded-full border-transparent disabled:cursor-not-allowed disabled:opacity-50 ${Iu} ${Nu} ${ce}`,e),...t,ref:r,children:ag(Ca.Thumb,{className:`pointer-events-none block rounded-full shadow-lg data-[state=unchecked]:translate-x-0 motion-safe:transition-[translate] ${Lu} ${Ou}`})}));Rl.displayName=Ca.Root.displayName;import{Fragment as AO,jsx as Re,jsxs as Qt}from"react/jsx-runtime";var JN="list",eO=e=>{if(e==="list"||e==="tree"||e==="detailList")return e;throw new Error(`[daily-report] unknown view tab: ${e}`)},tO=()=>({topItem:null,anchorReportHubId:null,measuredHeights:new Map}),rO=v(Pu,ju,"flex flex-wrap items-center gap-2"),nO=v("@container/views",Pt),oO=v("mt-0",Pt),aO=v("flex flex-1 items-center justify-center",Mn),dg="relative h-4 w-4 p-0 after:absolute after:-inset-1 pointer-coarse:min-h-0 pointer-coarse:min-w-0",sO="flex items-center gap-2",iO=v(dg,"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"),lO=v(dg,"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"),dO=v("flex items-center gap-1 pl-1",Ur,fr),cO=`cursor-pointer select-none ${ue} text-xs`,uO=`hidden h-6 items-center gap-1 pointer-coarse:gap-1.5 rounded-lg border border-amber-300/70 border-solid bg-amber-50/60 px-[3px] ${ue} sm:flex dark:border-amber-700/50 dark:bg-amber-950/40`,pO="select-none font-bold font-mono text-amber-900 text-xs uppercase dark:text-amber-200",mO=v("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",Me,fr),cg=(e,t)=>{let r=Ji(t);return[e.totalCount(r),e.searchHitCount(r)]},fO=({count:e})=>{let{labels:t}=Z(),[r,n]=Nn(null),o=AS(e,r);return Re(ha,{ref:n,text:t.totalCount(o),widestTexts:cg(t,Math.max(e,o))})},yO=({totalCount:e,hitCount:t})=>{let{labels:r}=Z();return t!==null?Re(ha,{text:r.searchHitCount(t),widestTexts:cg(r,e===Gr?t:Math.max(e,t))}):e===Gr?Re("span",{children:r.totalCountLoading}):Re(fO,{count:e})},RO=({checked:e,onCheckedChange:t})=>{let{labels:r}=Z(),n=ig(),o=ig();return Qt("div",{className:dO,children:[Re(Rl,{id:n,checked:e,onCheckedChange:t,title:r.autoReadTitle,"aria-describedby":o}),Re(ya,{htmlFor:n,className:cO,children:r.autoRead}),Re("span",{id:o,hidden:!0,children:r.autoReadTitle})]})},hO=({selectionStore:e,dailyReportItems:t,rowSetSize:r,autoMarkRead:n,userId:o,scrollOffsetRef:a})=>{let s=cu(e);return Re(Qc,{dailyReportItems:t,rowSetSize:r,autoMarkRead:n,selectedReportHubId:s,onSelectItem:e.set,userId:o,scrollOffsetRef:a})},bO=({selectionStore:e,dailyReportItems:t,rowSetSize:r,userId:n,scrollRestoreRef:o})=>{let a=cu(e);return Re(Pc,{dailyReportItems:t,rowSetSize:r,userId:n,selectedItemId:a,onSelectItem:e.set,scrollRestoreRef:o})},SO=({tabItems:e,actions:t,searchRow:r})=>{let[n,o]=Nn(JN),{labels:a}=Z();return Qt(ga,{value:n,onValueChange:s=>o(eO(s)),className:nO,children:[Qt("div",{className:v(Fu,Yu,qu[n]),children:[Qt("div",{className:rO,children:[Re(Ea,{"aria-label":a.viewTabList,className:"flex flex-wrap gap-1",...Iy,children:e.map(({value:s,label:i})=>Re(Da,{value:s,className:fr,children:i},s))}),t]}),r]}),e.map(({value:s,content:i})=>Re(To,{value:s,tabStop:!1,className:oO,children:i},s))]})},gO=Object.freeze({items:null,generation:0,revision:0,change:"none",scrollRequest:null,restoreOnRelease:!0}),EO=(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}},DO=({answer:e,hasAnswerOnlyItems:t})=>{let{phase:r,isRevalidating:n}=ao(),o=r==="complete"&&!n,a=xo(null);return uu(()=>{!(o&&t)||a.current===e||(a.current=e,aa())},[o,t,e]),null},pu=({userId:e})=>{let[t,r]=Nn(!1),{labels:n,renderHeader:o,showDevControls:a,apiBasePath:s,search:i,locale:l,sourceTypeConfigs:d}=Z(),{toggleSse:c,createReport:u,refetchData:y,clearCacheAndRefetch:p}=ct(),{isSseEnabled:m,items:f,searchInvalidation:S,isReportRemoved:h,removedVersion:D}=fi(),[b]=QN(),R=$S({apiBasePath:s,invalidation:S}),g=QS({apiBasePath:s,locale:l,sourceTypeConfigs:d}),E=i===null||R.committed===null?null:R.items,[w,x]=Nn(gO);w.items!==E&&x(EO(w,E,R.generation));let L=hl(()=>E===null?null:BS(E),[E]),M=hl(()=>US(L,f,h,D),[L,f,h,D]),P=M.items,B=af(f.length,iy()),T=E===null?B:P.length,[A,C]=Nn(0),[I]=Nn(()=>({preSearchTopReportId:null})),$=hl(()=>({request:w.scrollRequest,slot:I}),[w.scrollRequest,I]),k=ng({apiBasePath:s,answered:E===null?null:R.answered,shownRevision:w.revision}),U=xo(0),G=We(tO),[V]=Nn(()=>og(ld(P))),W=xo(null),de=xo(P),ge=xo(w.revision);lg(()=>{if(ge.current===w.revision)return;ge.current=w.revision;let J=de.current,re=V.get(),De=re;w.change==="enter"?(W.current={selected:re,items:J},De=ou(J,P,re,!0)):w.change==="start"||w.change==="update"?De=ou(J,P,re,w.change==="start"):w.change==="restore"&&W.current!==null&&(De=WS(W.current,P,re)),(w.change==="restore"||w.change==="release")&&(W.current=null),De!==re&&V.set(De,"settled")},[w,P,V]),lg(()=>{de.current=P},[P]);let N=xo(!1);uu(()=>{let J=ld(P);!N.current&&J!==null&&(N.current=!0,V.get()===null&&V.set(J,"settled"))},[P,V]);let z=async()=>{await y()},j=async()=>{await p()},te=async()=>{let re=b.get("businessDate")||cp();R.committed!==null&&(x(q=>({...q,restoreOnRelease:!1})),C(q=>q+1),R.release());let De=await u(re);V.set(De,"settled")};uu(()=>{localStorage.getItem("daily-report-auto-read")==="true"&&r(!0)},[]);let ye=J=>{r(J),localStorage.setItem("daily-report-auto-read",String(J))},ie=hl(()=>[{value:"list",label:n.tabList,content:Re(hO,{selectionStore:V,dailyReportItems:P,rowSetSize:T,autoMarkRead:t,userId:e,scrollOffsetRef:U})},{value:"tree",label:n.tabTree,content:Re("div",{className:aO,children:n.treeComingSoon})},{value:"detailList",label:n.tabDetailList,content:Re(bO,{selectionStore:V,dailyReportItems:P,rowSetSize:T,userId:e,scrollRestoreRef:G})}],[P,T,t,e,n,V,G]);return Qt(AO,{children:[o({title:n.title,annotation:Qt("div",{className:"flex flex-wrap items-center gap-2 leading-1",children:[Re(ba,{}),Re(yO,{totalCount:B,hitCount:E===null?null:T}),Re("span",{children:n.debounce(Wn)})]})}),Re("div",{className:Ha,children:Qt("div",{className:Ba,children:[E!==null&&Re(DO,{answer:E,hasAnswerOnlyItems:M.hasAnswerOnlyItems}),Re(Kn.Provider,{value:E===null?"date":"ids",children:Re(ft.Provider,{value:k,children:Re(Sd.Provider,{value:$,children:Re(SO,{tabItems:ie,searchRow:i===null?null:Re(FS,{labels:n,debounceMs:i.debounceMs,search:R,shownCount:E===null?null:T,onCommit:R.commit,onCombineChange:R.setCombine,onRelease:R.release,clearSignal:A,filters:i.renderFilterSelect===null?null:{renderFilterSelect:i.renderFilterSelect,locale:l,facets:g}}),actions:Qt("div",{className:"ml-auto flex flex-wrap items-center gap-2 px-1",children:[Qt(xr,{size:"sm",onClick:te,className:mO,title:n.createReportTitle,children:[Re(qN,{className:"h-3 w-3"}),Re("span",{children:n.createReport})]}),a&&Qt("div",{className:uO,title:n.devControls,"data-testid":"dev-controls-toolbox",children:[Re("span",{className:pO,children:"dev"}),Re(Rl,{"aria-label":n.devSseToggle,title:n.devSseToggle,checked:m,onCheckedChange:c}),Qt("div",{className:sO,"data-testid":"dev-icon-buttons",children:[Re(xr,{variant:"ghost",size:"icon",onClick:z,className:iO,title:n.devReload,"data-testid":"dev-reload-btn",children:Re(ZN,{className:"size-3"})}),Re(xr,{variant:"ghost",size:"icon",onClick:j,className:lO,title:n.devClearCache,"data-testid":"dev-clear-cache-btn",children:Re(XN,{className:"size-3"})})]})]}),Re(RO,{checked:t,onCheckedChange:ye})]})})})})})]})})]})};import{Fragment as ug,jsx as Ke,jsxs as bl}from"react/jsx-runtime";var _O=v(Pt,Br),vO=v("flex min-h-0 flex-1 flex-col items-center justify-center gap-4",ue,Mt,ce),xO=v("font-bold",Co),CO=v("font-medium",Co),IO=v("pointer-coarse:relative 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",Me,ce),LO=({isFailed:e,handOver:t})=>{let{labels:r,renderHeader:n}=Z(),o=pg(null),a=TO(i=>(o.current=i,t.take()&&pn(i)&&vr([i]),()=>{o.current=null,i.contains(mt(i))&&t.request()}),[t]),s=()=>{vr([o.current]),Xs()};return bl(ug,{children:[n({title:r.title,annotation:e?Ke("span",{className:xO,children:r.loadErrorBadge}):bl("div",{className:"flex flex-wrap items-center gap-2 leading-none",children:[Ke(ba,{}),Ke("span",{children:r.totalCountLoading}),Ke("span",{children:r.debounce(Wn)})]})}),Ke("div",{className:Ha,children:Ke("div",{className:Ba,children:Ke("div",{className:_O,children:Ke("div",{ref:a,tabIndex:-1,...Ny,"data-testid":"daily-report-status-panel","data-phase":e?"failed":"loading",className:v(vO,e&&"border-red-200 dark:border-red-900"),children:e?bl(ug,{children:[Ke("p",{className:CO,children:r.loadError}),Ke("button",{type:"button","data-testid":"daily-report-load-error-retry",onClick:s,className:IO,children:r.reload})]}):Ke("p",{children:r.loadingIds})})})})})]})},NO=()=>{let{labels:e}=Z(),t=ay();return Ke(el,{announcement:Uc(t,e),testId:"daily-report-stream-announcer"})},OO=e=>{let t="a safe integer >= 0 (the host's count of sessions confirmed after a session end)";if(e===void 0)throw Ja("sessionEpoch",t);rt("sessionEpoch",e,0)},MO=({user:e,userId:t,sessionEpoch:r})=>{let{apiBasePath:n,onSessionExpired:o}=Z(),a=nt(n),s=Ks(n),i=ao(),[l]=wO(Rb),d=pg(o);fu(()=>{d.current=o}),mu(()=>{na({apiBasePath:n,userKey:t??null})},[n,t]),fu(()=>(a.setSessionExpiredHandler(()=>d.current()),()=>a.setSessionExpiredHandler(null)),[a]),fu(()=>{a.syncEpoch(r)},[a,r]),mu(()=>{s?Qf():Jf()},[s]),mu(()=>{i.phase==="auth-required"&&a.reportSessionEnd("ids-stream",a.period())},[a,i.phase]);let c=i.hasItems||i.hasCompletedOnce;return bl(Wd,{children:[Ke(NO,{}),Ke(Bc.Provider,{value:!1,children:Ke(Lc.Provider,{value:l,children:Ke(Gd,{user:e,userId:t,children:c?Ke(pu,{userId:t}):Ke(LO,{isFailed:i.phase==="failed",handOver:l})},t??"anonymous")})})]})},PO=({config:e,...t})=>(OO(t.sessionEpoch),Ke(Bl,{config:e,children:Ke(MO,{...t})}));import{createShouldRevalidate as kO}from"@aiquants/route-revalidation";var FO=Nf.filter(e=>e!=="clearCache"),HO=kO({skipIntents:{field:Et.intent,values:FO},hashChange:"default",unchangedUrl:"skip"}),BO=e=>{let t=async r=>{Ld();let n=await r.serverLoader(),o=n.userId;return Id({apiBasePath:e?.apiBasePath,userKey:typeof o=="string"?o:null}),n};return t.hydrate=!0,t};export{tm as DAILY_REPORT_LABEL_CATALOGS,Ml as DAILY_REPORT_LABEL_KEYS,La as DAILY_REPORT_LATTICE_BLOCK_QUANTUM_CLASS_NAME,fg as DAILY_REPORT_LAYOUT_LATTICE_PX,tu as DAILY_REPORT_SEARCH_FILTER_FACETS,Gd as DailyReportActionProvider,Io as DailyReportAttachmentIndicator,Bl as DailyReportConfigProvider,Pc as DailyReportDetailList,Wd as DailyReportErrorProvider,ba as DailyReportIdsStreamStatus,Ic as DailyReportInstrumentationContext,Qc as DailyReportList,PO as DailyReportPage,pu as DailyReportResolvedContent,Id as bootstrapDailyReportIdsStreamSession,BO as createDailyReportClientLoader,HO as dailyReportShouldRevalidate,Ko as defaultDailyReportClientConfig,na as ensureDailyReportIdsStreamSession,SA as foldDailyReportSourceTypeToken,Ld as primeDailyReportIdsStreamSession,Zf as readDailyReportIdsStreamRows,Fl as resolveDailyReportLabels,Er as resolveSourceTypeConfig,Zs as resyncDailyReportIdsStream,XT as useDailyReportActionContext,mc as useDailyReportComments,Z as useDailyReportConfig,ql as useDailyReportDetail,iT as useDailyReportIdsStream,Xl as useDailyReportPrefetch,Fd as useDailyReportSseConnection};
|