chordia-ui 3.7.2 → 3.7.4

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.
Files changed (36) hide show
  1. package/dist/CustomFilterChips.cjs.js +1 -1
  2. package/dist/CustomFilterChips.cjs.js.map +1 -1
  3. package/dist/CustomFilterChips.es.js +239 -125
  4. package/dist/CustomFilterChips.es.js.map +1 -1
  5. package/dist/DataTable2.cjs.js +2 -0
  6. package/dist/DataTable2.cjs.js.map +1 -0
  7. package/dist/DataTable2.es.js +1863 -0
  8. package/dist/DataTable2.es.js.map +1 -0
  9. package/dist/components/UpdatedInteractionDetails.cjs.js +2 -2
  10. package/dist/components/UpdatedInteractionDetails.cjs.js.map +1 -1
  11. package/dist/components/UpdatedInteractionDetails.es.js +14 -13
  12. package/dist/components/UpdatedInteractionDetails.es.js.map +1 -1
  13. package/dist/components/data.cjs.js +1 -1
  14. package/dist/components/data.cjs.js.map +1 -1
  15. package/dist/components/data.es.js +157 -153
  16. package/dist/components/data.es.js.map +1 -1
  17. package/dist/components/performance.cjs.js +1 -1
  18. package/dist/components/performance.cjs.js.map +1 -1
  19. package/dist/components/performance.es.js +1900 -480
  20. package/dist/components/performance.es.js.map +1 -1
  21. package/dist/index.cjs.js +1 -1
  22. package/dist/index.es.js +94 -89
  23. package/dist/index.es.js.map +1 -1
  24. package/package.json +1 -1
  25. package/src/components/UpdatedInteractionDetails/UpdatedInteractionDetails.jsx +13 -13
  26. package/src/components/UpdatedInteractionDetails/UpdatedThreads.jsx +1 -0
  27. package/src/components/common/CustomFilterChips.jsx +5 -1
  28. package/src/components/common/Pagination.jsx +152 -39
  29. package/src/components/data/DataTable2.jsx +2449 -0
  30. package/src/components/data/DataTableFilters2.jsx +186 -0
  31. package/src/components/data/index.js +2 -0
  32. package/src/components/index.js +2 -2
  33. package/src/components/performance/PerformanceDetailsPage.jsx +940 -0
  34. package/src/components/performance/PerformancePanel.jsx +423 -297
  35. package/src/components/performance/SupervisorSelect.jsx +386 -0
  36. package/src/components/performance/index.js +3 -1
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),v=require("react"),r=require("lucide-react"),i={ink:"#2E3236",muted:"#808183",border:"#D9D9D9",borderSubtle:"#E6E6E6",iconCircle:"#F3F7F7",black:"#0B0B0B",white:"#FFFFFF",green:"#00A66E",red:"#D04A4A",neutralBorder:"#BFBFBF",neutralLight:"#E6E6E6",beige:"rgba(243, 241, 229, 0.4)"},d="var(--font-sans, 'Averta', ui-sans-serif, system-ui, sans-serif)",a="var(--font-sans, 'Averta', ui-sans-serif, system-ui, sans-serif)";function b({trend:t="up",width:n=49.618,height:l=35}){const s=v.useId(),o="M1.00049 13.5213C7.85975 11.7032 8.88149 4.73912 13.7838 4.73912C19.8344 4.73912 23.6237 17.166 29.1281 17.166C34.5998 17.166 37.4149 4.88121 43.4004 8.61051C47.9764 11.4616 50.6186 1.00024 50.6186 1.00024",h="M1.00049 16.692C8.88149 15.6975 8.88149 7.79403 13.7838 7.79403C19.8344 7.79403 23.6237 21.4034 29.1281 21.4034C34.5998 21.4034 37.4149 8.93821 43.4004 12.7223C47.9764 15.6152 50.6186 5.00024 50.6186 5.00024V36.0002C50.6186 36.0002 10.8223 36.0002 1.00049 36.0002C1.00049 28.8653 1.00049 19.4871 1.00049 16.692Z";return e.jsxs("svg",{width:n,height:l,viewBox:"0 0 52 36",fill:"none",style:{flexShrink:0,transform:t==="down"?"scaleX(-1)":void 0},children:[e.jsx("defs",{children:e.jsxs("linearGradient",{id:`spark-${s}`,x1:"9.96776",y1:"16.2053",x2:"9.96776",y2:"36.0002",gradientUnits:"userSpaceOnUse",children:[e.jsx("stop",{stopColor:i.ink}),e.jsx("stop",{offset:"1",stopColor:i.white,stopOpacity:"0.01"})]})}),e.jsx("path",{d:h,fill:`url(#spark-${s})`,fillRule:"evenodd",clipRule:"evenodd",opacity:"0.1"}),e.jsx("path",{d:o,stroke:i.ink,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",strokeDasharray:t==="down"?"2 4":void 0})]})}function j({direction:t="up",color:n=i.muted}){const l="M12.4167 0.75H17.4167M17.4167 0.75V5.75M17.4167 0.75L10.3333 7.83333L6.16667 3.66667L0.75 9.08333",s="M12.4167 9.25H17.4167M17.4167 9.25V4.25M17.4167 9.25L10.3333 2.16667L6.16667 6.33333L0.75 0.91667";return e.jsx("svg",{width:18,height:9.5,viewBox:"0 0 19 10",fill:"none",style:{flexShrink:0},children:e.jsx("path",{d:t==="up"?l:s,stroke:n,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}function f({value:t,label:n,trend:l="up",muted:s=!1,beigeBg:o=!1,style:h={}}){return e.jsxs("div",{style:{background:o?i.beige:i.white,border:`1px solid ${i.border}`,borderRadius:8,padding:16,display:"flex",flexDirection:"column",gap:8,boxSizing:"border-box",...h},children:[e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between"},children:[e.jsx(b,{trend:l}),e.jsx(j,{direction:l})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8,marginTop:8},children:[e.jsx("div",{style:{fontFamily:d,fontSize:28,fontWeight:500,lineHeight:"1.2",color:s?i.muted:i.ink,letterSpacing:"-0.01em"},children:t}),e.jsx("div",{style:{fontFamily:a,fontSize:13,color:i.ink,lineHeight:"1.2"},children:n})]})]})}function u({value:t,label:n,trend:l="up",withDivider:s=!1}){return e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:8,paddingLeft:s?24:0,borderLeft:s?`1px solid ${i.border}`:"none",minWidth:0},children:[e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between"},children:[e.jsx(b,{trend:l}),e.jsx(j,{direction:l})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8,marginTop:8},children:[e.jsx("div",{style:{fontFamily:d,fontSize:28,fontWeight:500,lineHeight:"1.2",color:i.muted,letterSpacing:"-0.01em"},children:t}),e.jsx("div",{style:{fontFamily:a,fontSize:13,color:i.ink,lineHeight:"1.2"},children:n})]})]})}function y({icon:t,children:n,trailing:l}){return e.jsxs("button",{type:"button",style:{display:"inline-flex",alignItems:"center",gap:8,height:32,padding:"0 16px",borderRadius:10,border:`1px solid ${i.neutralBorder}`,background:i.white,cursor:"pointer",fontFamily:a,fontSize:14,color:"#323232",whiteSpace:"nowrap"},children:[t&&e.jsx(t,{size:18,strokeWidth:1.75}),n,l&&e.jsx(l,{size:16,strokeWidth:2})]})}function c({label:t,active:n=!1}){return e.jsx("button",{type:"button",style:{height:32,minWidth:31,padding:"0 12px",borderRadius:10,border:n?"none":`1px solid ${i.borderSubtle}`,background:n?i.black:i.white,color:n?i.white:i.black,fontFamily:a,fontSize:14,cursor:"pointer"},children:t})}function S(){return e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,height:32,width:260,padding:"0 12px",borderRadius:11,background:i.white,border:`1px solid ${i.neutralLight}`},children:[e.jsx(r.Search,{size:16,color:"#989898",strokeWidth:2}),e.jsx("input",{placeholder:"Search",style:{flex:1,border:"none",outline:"none",background:"transparent",fontFamily:a,fontSize:14,color:i.ink}})]})}function k({value:t=0,max:n=5}){const l=Math.round(t);return e.jsx("div",{style:{display:"flex",gap:4},children:Array.from({length:n}).map((s,o)=>e.jsx("span",{style:{width:10,height:10,borderRadius:"50%",background:o<l?i.black:i.white,border:o<l?"none":`1px solid ${i.border}`,display:"inline-block"}},o))})}const g=[{key:"agent",label:"Agent",width:170,align:"left",bold:!0},{key:"supervisor",label:"Supervisor",width:170,align:"left"},{key:"calls",label:"Calls",width:80,align:"right"},{key:"baseline",label:"Baseline",width:80,align:"right"},{key:"lift",label:"Lift",width:80,align:"right"},{key:"score",label:"Score",width:80,align:"right"},{key:"compass",label:"Compass Score",suffix:"(Out of 5)",width:170,align:"left"},{key:"totalDuration",label:"Total Duration",flex:1,align:"right"},{key:"avgDuration",label:"Average Duration",flex:1,align:"right"}],w=[{agent:"Alex Johnson",supervisor:"Jordan Smith",calls:"1423",baseline:"97.2%",lift:"-5.7pp",score:"78.3%",compass:3,totalDuration:"20h 25m",avgDuration:"52s"},{agent:"Ricardo Odom",supervisor:"Jordan Smith",calls:"1423",baseline:"97.2%",lift:"-5.7pp",score:"78.3%",compass:3.25,totalDuration:"20h 25m",avgDuration:"52s"},{agent:"Latoya Tillman",supervisor:"Jordan Smith",calls:"1423",baseline:"97.2%",lift:"-5.7pp",score:"78.3%",compass:4,totalDuration:"20h 25m",avgDuration:"52s"},{agent:"Javier Lawmon",supervisor:"Jordan Smith",calls:"1423",baseline:"97.2%",lift:"-5.7pp",score:"78.3%",compass:4,totalDuration:"20h 25m",avgDuration:"52s"},{agent:"Naomi Wilkenmare",supervisor:"Jordan Smith",calls:"1423",baseline:"97.2%",lift:"-5.7pp",score:"78.3%",compass:4,totalDuration:"20h 25m",avgDuration:"52s"},{agent:"Latoya Tillman",supervisor:"Jordan Smith",calls:"1423",baseline:"97.2%",lift:"-5.7pp",score:"78.3%",compass:3.75,totalDuration:"20h 25m",avgDuration:"52s"},{agent:"Latoya Tillman",supervisor:"Jordan Smith",calls:"1423",baseline:"97.2%",lift:"-5.7pp",score:"78.3%",compass:4,totalDuration:"20h 25m",avgDuration:"52s"},{agent:"Latoya Tillman",supervisor:"Jordan Smith",calls:"1423",baseline:"97.2%",lift:"-5.7pp",score:"78.3%",compass:4,totalDuration:"20h 25m",avgDuration:"52s"},{agent:"Latoya Tillman",supervisor:"Jordan Smith",calls:"1423",baseline:"97.2%",lift:"-5.7pp",score:"78.3%",compass:4,totalDuration:"20h 25m",avgDuration:"52s"},{agent:"Latoya Tillman",supervisor:"Jordan Smith",calls:"1423",baseline:"97.2%",lift:"-5.7pp",score:"78.3%",compass:4,totalDuration:"20h 25m",avgDuration:"52s"}];function D(){return e.jsxs("div",{style:{width:"100%"},children:[e.jsx("div",{style:{display:"flex",alignItems:"center",background:i.iconCircle,border:`1px solid ${i.border}`,borderTopLeftRadius:4,borderTopRightRadius:4},children:g.map(t=>e.jsx("div",{style:{width:t.width,flex:t.flex,padding:"0 12px",height:36,display:"flex",alignItems:"center",justifyContent:t.align==="right"?"flex-end":"flex-start",fontFamily:d,fontSize:14,fontWeight:500,color:i.black,boxSizing:"border-box"},children:e.jsxs("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:[t.label,t.suffix&&e.jsx("span",{style:{fontWeight:400,color:i.muted,marginLeft:4},children:t.suffix})]})},t.key))}),w.map((t,n)=>e.jsx("div",{style:{display:"flex",alignItems:"center",borderLeft:`1px solid ${i.border}`,borderRight:`1px solid ${i.border}`,borderBottom:`1px solid ${i.border}`,background:i.white},children:g.map(l=>{const s=t[l.key],o=l.key==="compass";return e.jsx("div",{style:{width:l.width,flex:l.flex,padding:"0 12px",height:36,display:"flex",alignItems:"center",justifyContent:l.align==="right"?"flex-end":"flex-start",gap:o?12:0,fontFamily:a,fontSize:14,fontWeight:l.bold?500:400,color:l.bold?i.black:i.ink,boxSizing:"border-box"},children:o?e.jsxs(e.Fragment,{children:[e.jsx("span",{style:{width:32,textAlign:"right",color:i.ink},children:s}),e.jsx(k,{value:s})]}):e.jsx("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:s})},l.key)})},n))]})}function C(){const t=({children:n,active:l,disabled:s})=>e.jsx("button",{type:"button",disabled:s,style:{height:24,minWidth:22,padding:"0 8px",borderRadius:10,border:l?"none":`1px solid ${i.borderSubtle}`,background:l?i.black:i.white,color:l?i.white:i.black,opacity:s?.5:1,fontFamily:a,fontSize:12,display:"inline-flex",alignItems:"center",justifyContent:"center",gap:4,cursor:s?"default":"pointer"},children:n});return e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"12px 0"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:16},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[e.jsx("span",{style:{fontFamily:a,fontSize:14,color:"#323232"},children:"Result per page"}),e.jsxs(t,{children:["10",e.jsx(r.ChevronDown,{size:12,strokeWidth:2})]})]}),e.jsx("span",{style:{fontFamily:a,fontSize:14,color:"#323232"},children:"1-10 of 50"})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[e.jsxs(t,{disabled:!0,children:[e.jsx(r.ChevronLeft,{size:12,strokeWidth:2}),"Back"]}),e.jsx(t,{active:!0,children:"1"}),e.jsx(t,{children:"2"}),e.jsx(t,{children:"3"}),e.jsx(t,{children:"4"}),e.jsx(t,{children:"5"}),e.jsxs(t,{children:["Next",e.jsx(r.ChevronRight,{size:12,strokeWidth:2})]})]})]})}function p({icon:t,title:n,trailing:l}){return e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:16,width:"100%",paddingBottom:12,borderBottom:`1px solid ${i.border}`},children:[e.jsx("div",{style:{width:34,height:34,borderRadius:9999,background:i.iconCircle,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:e.jsx(t,{size:20,color:i.ink,strokeWidth:1.75})}),e.jsx("div",{style:{flex:1,fontFamily:d,fontWeight:600,fontSize:16,color:i.ink,lineHeight:"1.2"},children:n}),l&&e.jsx("div",{style:{fontFamily:a,fontSize:14,color:i.ink},children:l})]})}function m({title:t,summary:n,calls:l,percent:s}){return e.jsxs("div",{style:{borderTop:`1px solid ${i.border}`,padding:16,display:"flex",gap:16,alignItems:"flex-start",cursor:"pointer"},children:[e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:12,minWidth:0},children:[e.jsx("div",{style:{fontFamily:a,fontWeight:500,fontSize:14,color:i.black,lineHeight:"24px"},children:t}),e.jsx("div",{style:{fontFamily:a,fontSize:14,color:i.muted,lineHeight:"24px"},children:n}),e.jsxs("div",{style:{display:"flex",gap:16},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:4},children:[e.jsx(r.Phone,{size:12,color:i.ink,strokeWidth:1.75}),e.jsx("span",{style:{fontFamily:a,fontSize:12,color:i.ink},children:l})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:4},children:[e.jsx(r.TrendingUp,{size:12,color:i.ink,strokeWidth:1.75}),e.jsx("span",{style:{fontFamily:a,fontSize:12,color:i.ink},children:s})]})]})]}),e.jsx(r.ChevronDown,{size:18,color:i.ink,strokeWidth:2})]})}const F=[{title:"Close the loop:",summary:"Restate the plan and confirm what happens next so the customer",calls:"9411 Calls",percent:"95.5% (0.6pp)"},{title:"Frame solutions positively:",summary:"Lead with what you can do rather than what you can’t",calls:"9411 Calls",percent:"95.5% (0.6pp)"},{title:"Show expertise:",summary:"Lead with what you can do rather than what you can’t",calls:"9411 Calls",percent:"95.5% (0.6pp)"},{title:"Demonstrate active listening:",summary:"Lead with what you can do rather than what you can’t",calls:"9411 Calls",percent:"95.5% (0.6pp)"},{title:"Close the call properly:",summary:"Lead with what you can do rather than what you can’t",calls:"9411 Calls",percent:"95.5% (0.6pp)"},{title:"Address confusion:",summary:"Lead with what you can do rather than what you can’t",calls:"9411 Calls",percent:"95.5% (0.6pp)"}],L=[{title:"Excellence:",summary:"Used solution focused, Positive framing",calls:"9411 Calls",percent:"15.1% (0.6pp)"},{title:"Excellence:",summary:"Demonstrated strong product knowledge - The no. 1 behavioral predictor",calls:"9411 Calls",percent:"5.7% (0.6pp)"},{title:"Excellence:",summary:"Customer explicitly confirmed their issue was resolved",calls:"9411 Calls",percent:"5.7% (0.6pp)"}],z=[{label:"General Information Request",value:"26.3 %"},{label:"Appointment Scheduling",value:"12.2 %"},{label:"Order Placement",value:"12.3 %"},{label:"Order Status",value:"10.5 %"},{label:"Appointment Follow-up",value:"8.3 %"}],I=[{label:"Resolutions",value:"43.6 %"},{label:"Informational",value:"32.6 %"},{label:"Conversion",value:"23.7 %"},{label:"Recovery",value:"0.2 %"}],R=[{label:"Closure Quality Adequate",value:"99 %"},{label:"Evaluation Review",value:"96.5 %"},{label:"Customer Needs Fully Addressed",value:"59.1 %"},{label:"Call Flow Expectation Set",value:"57.6 %"},{label:"Next Steps Stated",value:"37 %"},{label:"Active Listening Demonstrated",value:"31 %"},{label:"Agent Courtesy Demonstrated",value:"30.5 %"},{label:"Engagement Budget Discussed",value:"29.8 %"}],A=[{label:"Fee or Cost Discussed",value:"26.6 %"},{label:"Objection Handling Effective",value:"27.2 %"},{label:"Opening Expectations Set",value:"26.6 %"},{label:"Empathy or Acknowledgement Expressed",value:"24.2 %"},{label:"Follow up Required",value:"22.4 %"},{label:"Estimate Provided",value:"18.9 %"},{label:"Script Adherence Likely",value:"17.5 %"}];function x({label:t,value:n}){return e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"12px 0",borderBottom:`1px solid ${i.border}`,fontFamily:a,fontSize:13,lineHeight:"24px"},children:[e.jsx("span",{style:{color:i.ink},children:t}),e.jsx("span",{style:{color:i.muted},children:n})]})}function E({className:t=""}){return e.jsxs("div",{className:t,style:{background:i.white,fontFamily:a,color:i.ink,width:"100%",minWidth:1192,boxSizing:"border-box",padding:"12px 32px 32px",display:"flex",flexDirection:"column",gap:24},children:[e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:8,paddingTop:12},children:[e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:4},children:[e.jsx("h1",{style:{fontFamily:d,fontSize:24,fontWeight:500,color:i.ink,margin:0,lineHeight:"1.2",letterSpacing:"-0.01em"},children:"Performance"}),e.jsx("p",{style:{fontFamily:a,fontSize:14,color:"#1E1E1E",margin:0,lineHeight:"1.4"},children:"Agent performance metrics, trends and coaching Insights"})]}),e.jsxs("button",{type:"button",style:{display:"inline-flex",alignItems:"center",gap:8,height:32,padding:"0 16px",borderRadius:10,border:`1px solid ${i.neutralBorder}`,background:i.white,cursor:"pointer",fontFamily:a,fontSize:14,color:"#323232"},children:[e.jsx(r.Download,{size:18,strokeWidth:1.75}),"Export CSV"]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsx(y,{icon:r.Users,trailing:r.ChevronDown,children:"32 Supervisors"}),e.jsxs("div",{style:{display:"flex",gap:10,alignItems:"center"},children:[e.jsx("span",{style:{fontFamily:a,fontSize:13,color:i.ink},children:"2026-03-16 to 2026-04-15"}),e.jsx(c,{label:"8h"}),e.jsx(c,{label:"1d"}),e.jsx(c,{label:"7d"}),e.jsx(c,{label:"30d",active:!0}),e.jsx(y,{icon:r.Calendar,children:"Date Range"}),e.jsx(S,{})]})]}),e.jsxs("div",{style:{display:"flex",gap:24},children:[e.jsx(f,{value:"10956",label:"Volume",trend:"up",style:{width:264,flexShrink:0}}),e.jsx(f,{value:"4.0",label:"Compass Score (0.4)",trend:"down",style:{width:264,flexShrink:0}}),e.jsxs("div",{style:{flex:1,background:i.beige,border:`1px solid ${i.border}`,borderRadius:8,padding:16,display:"flex",gap:24,alignItems:"stretch",boxSizing:"border-box"},children:[e.jsx(u,{value:"97.3%",label:"Baseline (2.0)",trend:"up"}),e.jsx(u,{value:"-6.3pp",label:"Agent Lift (6.0)",trend:"down",withDivider:!0}),e.jsx(u,{value:"76.9%",label:"Score (6.0)",trend:"up",withDivider:!0})]})]}),e.jsxs("div",{children:[e.jsx(D,{}),e.jsx(C,{})]}),e.jsxs("div",{style:{display:"flex",gap:24},children:[e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:16},children:[e.jsx(p,{icon:r.Lightbulb,title:"Guidance"}),e.jsx("div",{style:{display:"flex",flexDirection:"column"},children:F.map((n,l)=>e.jsx(m,{...n},l))})]}),e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:16},children:[e.jsx(p,{icon:r.ShieldCheck,title:"Consistent Strengths"}),e.jsx("div",{style:{display:"flex",flexDirection:"column"},children:L.map((n,l)=>e.jsx(m,{...n},l))})]})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16},children:[e.jsx(p,{icon:r.Phone,title:"Call Mix"}),e.jsxs("div",{style:{display:"flex",gap:24},children:[e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:8},children:[e.jsx("div",{style:{padding:"8px 0",fontFamily:d,fontWeight:600,fontSize:15,color:i.ink,lineHeight:"24px"},children:"Drivers"}),e.jsx("div",{style:{display:"flex",flexDirection:"column"},children:z.map((n,l)=>e.jsx(x,{...n},l))})]}),e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:8},children:[e.jsx("div",{style:{padding:"8px 0",fontFamily:d,fontWeight:600,fontSize:15,color:i.ink,lineHeight:"24px"},children:"Paradigms"}),e.jsx("div",{style:{display:"flex",flexDirection:"column"},children:I.map((n,l)=>e.jsx(x,{...n},l))})]})]})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16},children:[e.jsx(p,{icon:r.Activity,title:"Top Signals",trailing:"15 Signals Detected"}),e.jsxs("div",{style:{display:"flex",gap:24},children:[e.jsx("div",{style:{flex:1,display:"flex",flexDirection:"column"},children:R.map((n,l)=>e.jsx(x,{...n},l))}),e.jsx("div",{style:{flex:1,display:"flex",flexDirection:"column"},children:A.map((n,l)=>e.jsx(x,{...n},l))})]})]})]})}exports.PerformancePanel=E;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),w=require("react"),d=require("lucide-react"),ue=require("../DataTable2.cjs.js");require("../sortable.esm.cjs.js");require("react-dom");require("../CustomFilterChips.cjs.js");require("motion/react");require("recharts");require("../TourGuideTooltip.cjs.js");const l={ink:"#2E3236",muted:"#808183",border:"#D9D9D9",borderSubtle:"#E6E6E6",iconCircle:"#F3F7F7",black:"#0B0B0B",white:"#FFFFFF",neutralBorder:"#BFBFBF",neutral800:"#323232",neutral600:"#676767",neutral450:"#8B8B8B",neutral400:"#989898",neutral300:"#B2B2B0",neutral150:"#D8D8D8",neutral100:"#E6E6E6",beige:"rgba(243, 241, 229, 0.4)"},P="var(--font-sans, 'Averta', ui-sans-serif, system-ui, sans-serif)",k="var(--font-sans, 'Averta', ui-sans-serif, system-ui, sans-serif)";function je({trend:i="up",width:t=49.618,height:s=35}){const r=w.useId(),a="M1.00049 13.5213C7.85975 11.7032 8.88149 4.73912 13.7838 4.73912C19.8344 4.73912 23.6237 17.166 29.1281 17.166C34.5998 17.166 37.4149 4.88121 43.4004 8.61051C47.9764 11.4616 50.6186 1.00024 50.6186 1.00024",y="M1.00049 16.692C8.88149 15.6975 8.88149 7.79403 13.7838 7.79403C19.8344 7.79403 23.6237 21.4034 29.1281 21.4034C34.5998 21.4034 37.4149 8.93821 43.4004 12.7223C47.9764 15.6152 50.6186 5.00024 50.6186 5.00024V36.0002C50.6186 36.0002 10.8223 36.0002 1.00049 36.0002C1.00049 28.8653 1.00049 19.4871 1.00049 16.692Z";return e.jsxs("svg",{width:t,height:s,viewBox:"0 0 52 36",fill:"none",style:{flexShrink:0,transform:i==="down"?"scaleX(-1)":void 0},children:[e.jsx("defs",{children:e.jsxs("linearGradient",{id:`spark-${r}`,x1:"9.96776",y1:"16.2053",x2:"9.96776",y2:"36.0002",gradientUnits:"userSpaceOnUse",children:[e.jsx("stop",{stopColor:l.ink}),e.jsx("stop",{offset:"1",stopColor:l.white,stopOpacity:"0.01"})]})}),e.jsx("path",{d:y,fill:`url(#spark-${r})`,fillRule:"evenodd",clipRule:"evenodd",opacity:"0.1"}),e.jsx("path",{d:a,stroke:l.ink,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",strokeDasharray:i==="down"?"2 4":void 0})]})}function ee({value:i,label:t,sub:s,trend:r="up"}){return e.jsxs("div",{style:{flex:1,display:"flex",alignItems:"center",gap:16,minWidth:0},children:[e.jsx(je,{trend:r}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:6,minWidth:0},children:[e.jsx("div",{style:{fontFamily:P,fontSize:28,fontWeight:400,lineHeight:"1.2",color:l.muted,letterSpacing:"-0.01em",whiteSpace:"nowrap"},children:i}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:2},children:[e.jsx("span",{style:{fontFamily:k,fontSize:13,color:l.ink,lineHeight:"1.2"},children:t}),e.jsx("span",{style:{fontFamily:k,fontSize:13,color:l.neutral600,lineHeight:"1.2"},children:s})]})]})]})}function Q({label:i,active:t=!1}){return e.jsx("button",{type:"button",style:{height:32,minWidth:31,padding:"0 12px",borderRadius:10,border:t?"none":`1px solid ${l.borderSubtle}`,background:t?l.black:l.white,color:t?l.white:l.black,fontFamily:k,fontSize:14,cursor:"pointer"},children:i})}function me({icon:i,children:t}){return e.jsxs("button",{type:"button",style:{display:"inline-flex",alignItems:"center",gap:8,height:32,padding:"0 16px",borderRadius:10,border:`1px solid ${l.neutralBorder}`,background:l.white,cursor:"pointer",fontFamily:k,fontSize:14,color:l.neutral800,whiteSpace:"nowrap"},children:[i&&e.jsx(i,{size:18,strokeWidth:1.75}),t]})}const oe=[[0,30],[60,50],[120,95],[180,60],[240,70],[300,80]];function N({yLabels:i=["4.6","4.4","4.2","4.0","3.9"],xLabels:t=["Mar 16","Mar 23","Mar 30","Apr 6","Apr 13","Apr 15"],points:s=oe,highlightIndex:r}){const o=Array.isArray(s)&&s.length>0?Array.isArray(s[0])?s:s.map((u,S)=>[S,u]):oe,b=o[0][0],p=o[o.length-1][0]-b||1,f=u=>(u-b)/p*460,F=o.map(([u,S],W)=>`${W===0?"M":"L"}${f(u)},${S}`).join(" "),D=`${F} L${f(o[o.length-1][0])},110 L${f(o[0][0])},110 Z`,j=w.useId(),C=r??o.length-1,L=Math.max(2,t.length),$=Array.from({length:L},(u,S)=>S/(L-1)*460);return e.jsxs("div",{style:{display:"flex",gap:8,height:133,width:"100%"},children:[e.jsx("div",{style:{display:"flex",flexDirection:"column",justifyContent:"space-between",padding:"14px 0",fontFamily:k,fontSize:10,color:l.neutral800,flexShrink:0},children:i.map(u=>e.jsx("span",{children:u},u))}),e.jsxs("div",{style:{flex:1,position:"relative",minWidth:0},children:[e.jsxs("svg",{width:"100%",height:110+14,viewBox:`0 0 460 ${110+14}`,preserveAspectRatio:"none",children:[e.jsx("defs",{children:e.jsxs("linearGradient",{id:`area-${j}`,x1:"0",y1:"0",x2:"0",y2:"1",children:[e.jsx("stop",{offset:"0%",stopColor:"#0B0B0B",stopOpacity:"0.08"}),e.jsx("stop",{offset:"100%",stopColor:"#0B0B0B",stopOpacity:"0"})]})}),$.map((u,S)=>e.jsx("line",{x1:u,y1:"0",x2:u,y2:110,stroke:l.borderSubtle,strokeDasharray:"2 3",strokeWidth:"1",vectorEffect:"non-scaling-stroke"},`grid-${S}`)),e.jsx("path",{d:D,fill:`url(#area-${j})`}),e.jsx("path",{d:F,stroke:l.black,strokeWidth:"1.5",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",vectorEffect:"non-scaling-stroke"}),o.map(([u,S],W)=>{const I=W===C;return e.jsx("circle",{cx:f(u),cy:S,r:I?4:3,fill:I?l.black:l.white,stroke:l.black,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"},W)})]}),e.jsx("div",{style:{display:"flex",justifyContent:"space-between",paddingRight:6,fontFamily:k,fontSize:10,color:l.neutral800,marginTop:6},children:t.map(u=>e.jsx("span",{children:u},u))})]})]})}function q({title:i,value:t,delta:s,children:r}){return e.jsxs("div",{style:{flex:1,background:l.white,border:`1px solid ${l.border}`,borderRadius:8,padding:24,display:"flex",flexDirection:"column",gap:24,minWidth:0,boxShadow:"0 1px 2px rgba(11, 11, 11, 0.04), 0 4px 12px rgba(11, 11, 11, 0.06)"},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"flex-end"},children:[e.jsx("span",{style:{fontFamily:P,fontWeight:700,fontSize:15,color:l.ink,lineHeight:1.2},children:i}),e.jsxs("span",{style:{display:"inline-flex",alignItems:"flex-end",gap:4,fontFamily:P,fontWeight:600},children:[e.jsx("span",{style:{fontSize:20,color:l.black,lineHeight:1},children:t}),e.jsx("span",{style:{fontSize:10,color:l.neutral300,lineHeight:1},children:s})]})]}),e.jsx("div",{style:{flex:1},children:r})]})}function ie({icon:i,title:t,trailing:s,iconColor:r=l.ink,bordered:a=!1}){return e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,width:"100%",paddingBottom:a?12:0,borderBottom:a?`1px solid ${l.border}`:"none"},children:[e.jsx("div",{style:{width:24,height:24,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:e.jsx(i,{size:22,color:r,strokeWidth:1.75})}),e.jsx("div",{style:{flex:1,fontFamily:P,fontWeight:600,fontSize:16,color:l.ink,lineHeight:1.2,textTransform:"uppercase",letterSpacing:"0.02em"},children:t}),s&&e.jsx("div",{style:{fontFamily:k,fontSize:14,color:l.ink},children:s})]})}function ke({bullet:i,citation:t,date:s}){return e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",fontFamily:k,fontSize:14,color:l.ink,lineHeight:"24px"},children:[e.jsx("span",{children:i}),e.jsxs("span",{style:{display:"inline-flex",gap:4},children:[e.jsx("span",{children:t}),e.jsxs("span",{style:{color:l.muted},children:["(",s,")"]})]})]})}function de({title:i,summary:t,calls:s,delta:r,expanded:a=!1,bullets:y}){return e.jsxs("div",{style:{borderTop:`1px solid ${l.border}`,padding:16,display:"flex",gap:12,alignItems:"flex-start",cursor:"pointer"},children:[e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:a?16:12,minWidth:0},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:12},children:[e.jsx("span",{style:{fontFamily:k,fontWeight:500,fontSize:14,color:l.black,lineHeight:"24px"},children:i}),e.jsx("span",{style:{fontFamily:k,fontSize:14,color:l.muted,lineHeight:"24px"},children:t})]}),a&&y&&e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:12},children:y.map((o,b)=>e.jsx(ke,{...o},b))}),e.jsxs("div",{style:{display:"flex",gap:16},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:4},children:[e.jsx(d.Phone,{size:12,color:l.ink,strokeWidth:1.75}),e.jsx("span",{style:{fontFamily:k,fontSize:12,color:l.ink},children:s})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:4},children:[e.jsx(d.TrendingUp,{size:12,color:l.ink,strokeWidth:1.75}),e.jsx("span",{style:{fontFamily:k,fontSize:12,color:l.ink},children:r})]})]})]}),a?e.jsx(d.ChevronUp,{size:20,color:l.ink,strokeWidth:2}):e.jsx(d.ChevronDown,{size:20,color:l.ink,strokeWidth:2})]})}function ae({label:i,value:t}){return e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"8px 8px 12px",borderBottom:`1px solid ${l.border}`,fontFamily:k,fontSize:13,lineHeight:"1.2"},children:[e.jsx("span",{style:{color:l.ink},children:i}),e.jsx("span",{style:{color:l.muted},children:t})]})}function ve({value:i=0,max:t=5}){const s=typeof i=="number"?i:parseFloat(i)||0,r=Math.floor(s),a=s%1>0&&r<t;return e.jsx("div",{style:{display:"flex",gap:4},children:Array.from({length:t}).map((y,o)=>o<r?e.jsx("span",{style:{width:10,height:10,borderRadius:"50%",background:l.black,display:"inline-block"}},o):o===r&&a?e.jsx("span",{style:{width:10,height:10,borderRadius:"50%",display:"inline-flex",alignItems:"center",justifyContent:"center"},children:e.jsx("span",{style:{width:6,height:6,borderRadius:"50%",background:l.black,display:"inline-block"}})},o):e.jsx("span",{style:{width:10,height:10,borderRadius:"50%",background:l.white,border:`1px solid ${l.border}`,display:"inline-block",boxSizing:"border-box"}},o))})}const Se=[{id:"title",label:"Title",width:220,sortable:!0,filterable:!0},{id:"date",label:"Date",width:170,sortable:!0},{id:"duration",label:"Duration",width:170,sortable:!0},{id:"lift",label:"Lift",width:120,sortable:!0},{id:"compass",label:"Compass Score",width:220,sortable:!0,render:i=>{const t=typeof i=="number"?i:parseFloat(i)||0;return e.jsxs("span",{style:{display:"inline-flex",alignItems:"center",gap:12},children:[e.jsx("span",{style:{minWidth:32},children:i}),e.jsx(ve,{value:t})]})}}];function ce({icon:i,title:t}){return e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:16,width:"100%"},children:[e.jsx("div",{style:{width:34,height:34,borderRadius:9999,background:l.iconCircle,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:e.jsx(i,{size:20,color:l.ink,strokeWidth:1.75})}),e.jsx("span",{style:{fontFamily:P,fontWeight:600,fontSize:16,color:l.ink,lineHeight:1.2},children:t})]})}function ye({agentName:i="",startDate:t="",endDate:s="",totalCalls:r="",onBack:a,className:y="",kpiBaseline:o={value:"",label:"",sub:"",trend:"up"},kpiAgentLift:b={value:"",label:"",sub:"",trend:"down"},kpiScore:v={value:"",label:"",sub:"",trend:"up"},baselineChart:p={value:"",delta:""},agentLiftChart:f={value:"",delta:""},scoreChart:F={value:"",delta:""},csatChart:D={value:"",delta:""},volumeChart:j={value:"",delta:""},guidanceItems:C=[],strengthItems:L=[],callDrivers:$=[],callParadigms:u=[],sessions:S=[],sessionColumns:W=[],initialPageSize:I=10}){return e.jsxs("div",{className:y,style:{background:l.white,fontFamily:k,color:l.ink,width:"100%",minWidth:1192,boxSizing:"border-box",display:"flex",flexDirection:"column"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,padding:"23px 32px",minHeight:78,boxSizing:"border-box"},children:[e.jsx("button",{type:"button","aria-label":"Back",onClick:a,style:{display:"inline-flex",alignItems:"center",justifyContent:"center",width:24,height:24,background:"transparent",border:"none",cursor:"pointer",color:l.ink,padding:0,flexShrink:0},children:e.jsx(d.ArrowLeft,{size:20,strokeWidth:1.75})}),e.jsx("div",{style:{paddingLeft:16,borderLeft:`1px solid ${l.border}`,flex:1,minWidth:0,alignSelf:"stretch",display:"flex",alignItems:"center"},children:e.jsx("h1",{style:{fontFamily:P,fontSize:24,fontWeight:400,color:l.ink,margin:0,lineHeight:1,whiteSpace:"nowrap"},children:i})}),e.jsxs("button",{type:"button",style:{display:"inline-flex",alignItems:"center",gap:8,height:32,padding:"0 16px",borderRadius:10,border:`1px solid ${l.neutralBorder}`,background:l.white,cursor:"pointer",fontFamily:k,fontSize:14,lineHeight:"24px",color:l.neutral800,flexShrink:0},children:[e.jsx(d.Download,{size:18,strokeWidth:1.75}),"Export Data"]})]}),e.jsxs("div",{style:{padding:"0 32px 32px",display:"flex",flexDirection:"column",gap:16},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:16,paddingLeft:49},children:[e.jsxs("div",{style:{display:"flex",gap:16,alignItems:"center"},children:[e.jsxs("div",{style:{display:"inline-flex",alignItems:"center",gap:6},children:[e.jsx(d.Calendar,{size:14,color:l.ink,strokeWidth:1.75,style:{flexShrink:0}}),e.jsx("span",{style:{fontFamily:k,fontSize:12,color:l.ink,lineHeight:1.5},children:t}),e.jsx(d.ArrowRight,{size:12,color:l.ink,strokeWidth:1.75,style:{flexShrink:0}}),e.jsx("span",{style:{fontFamily:k,fontSize:12,color:l.ink,lineHeight:1.5},children:s})]}),e.jsxs("div",{style:{display:"inline-flex",alignItems:"center",gap:6},children:[e.jsx(d.Phone,{size:14,color:l.ink,strokeWidth:1.75,style:{flexShrink:0}}),e.jsx("span",{style:{fontFamily:k,fontSize:12,color:l.ink,lineHeight:1.5},children:r})]})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10},children:[e.jsx(Q,{label:"8h"}),e.jsx(Q,{label:"1d"}),e.jsx(Q,{label:"7d"}),e.jsx(Q,{label:"30d",active:!0}),e.jsx(me,{icon:d.Calendar,children:"Date Range"})]})]}),e.jsxs("div",{style:{background:l.beige,border:`1px solid ${l.border}`,borderRadius:8,padding:16,display:"flex",gap:24,alignItems:"center"},children:[e.jsx(ee,{value:o.value,label:o.label,sub:o.sub,trend:o.trend}),e.jsx(d.ArrowRight,{size:20,color:l.ink,strokeWidth:1.75,style:{flexShrink:0}}),e.jsx(ee,{value:b.value,label:b.label,sub:b.sub,trend:b.trend}),e.jsx(d.ArrowRight,{size:20,color:l.ink,strokeWidth:1.75,style:{flexShrink:0}}),e.jsx(ee,{value:v.value,label:v.label,sub:v.sub,trend:v.trend})]}),e.jsxs("div",{style:{display:"flex",gap:24},children:[e.jsx(q,{title:"Baseline",value:p.value,delta:p.delta,children:e.jsx(N,{yLabels:p.yLabels,xLabels:p.xLabels,points:p.points})}),e.jsx(q,{title:"Agent Lift",value:f.value,delta:f.delta,children:e.jsx(N,{yLabels:f.yLabels,xLabels:f.xLabels,points:f.points})}),e.jsx(q,{title:"Score",value:F.value,delta:F.delta,children:e.jsx(N,{yLabels:F.yLabels,xLabels:F.xLabels,points:F.points})})]}),e.jsxs("div",{style:{display:"flex",gap:24},children:[e.jsx(q,{title:"CSAT",value:D.value,delta:D.delta,children:e.jsx(N,{yLabels:D.yLabels,xLabels:D.xLabels,points:D.points})}),e.jsx(q,{title:"Volume",value:j.value,delta:j.delta,children:e.jsx(N,{yLabels:j.yLabels,xLabels:j.xLabels,points:j.points})})]}),e.jsxs("div",{style:{display:"flex",gap:24,marginTop:8},children:[e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:16,minWidth:0},children:[e.jsx(ie,{icon:d.Lightbulb,title:"Guidance",iconColor:"#F4B400"}),e.jsx("div",{style:{display:"flex",flexDirection:"column"},children:C.map((B,z)=>e.jsx(de,{...B},z))})]}),e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:16,minWidth:0},children:[e.jsx(ie,{icon:d.ShieldCheck,title:"Strengths",iconColor:"#C98A5A"}),e.jsx("div",{style:{display:"flex",flexDirection:"column"},children:L.map((B,z)=>e.jsx(de,{...B},z))})]})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16,marginTop:8},children:[e.jsx(ie,{icon:d.Phone,title:"Call Mix",iconColor:"#C98A5A"}),e.jsxs("div",{style:{display:"flex",gap:24},children:[e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:8,minWidth:0},children:[e.jsx(ce,{icon:d.FolderKanban,title:"Drivers"}),e.jsx("div",{style:{display:"flex",flexDirection:"column"},children:$.map((B,z)=>e.jsx(ae,{...B},z))})]}),e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:8,minWidth:0},children:[e.jsx(ce,{icon:d.Layers,title:"Paradigms"}),e.jsx("div",{style:{display:"flex",flexDirection:"column"},children:u.map((B,z)=>e.jsx(ae,{...B},z))})]})]})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16,marginTop:8},children:[e.jsx("span",{style:{fontFamily:P,fontWeight:600,fontSize:16,color:l.ink,lineHeight:1.2},children:"Sessions History"}),e.jsx(ue.DataTable2,{data:S,columns:W,initialPageSize:I})]})]})]})}const V={value:"",label:"",trend:"up"},n={ink:"#2E3236",muted:"#808183",border:"#D9D9D9",borderSubtle:"#E6E6E6",iconCircle:"#F3F7F7",black:"#0B0B0B",white:"#FFFFFF",green:"#00A66E",red:"#D04A4A",neutralBorder:"#BFBFBF",neutralLight:"#E6E6E6",beige:"rgba(243, 241, 229, 0.4)"},O="var(--font-sans, 'Averta', ui-sans-serif, system-ui, sans-serif)",g="var(--font-sans, 'Averta', ui-sans-serif, system-ui, sans-serif)";function ge({trend:i="up",width:t=49.618,height:s=35}){const r=w.useId(),a="M1.00049 13.5213C7.85975 11.7032 8.88149 4.73912 13.7838 4.73912C19.8344 4.73912 23.6237 17.166 29.1281 17.166C34.5998 17.166 37.4149 4.88121 43.4004 8.61051C47.9764 11.4616 50.6186 1.00024 50.6186 1.00024",y="M1.00049 16.692C8.88149 15.6975 8.88149 7.79403 13.7838 7.79403C19.8344 7.79403 23.6237 21.4034 29.1281 21.4034C34.5998 21.4034 37.4149 8.93821 43.4004 12.7223C47.9764 15.6152 50.6186 5.00024 50.6186 5.00024V36.0002C50.6186 36.0002 10.8223 36.0002 1.00049 36.0002C1.00049 28.8653 1.00049 19.4871 1.00049 16.692Z";return e.jsxs("svg",{width:t,height:s,viewBox:"0 0 52 36",fill:"none",style:{flexShrink:0,transform:i==="down"?"scaleX(-1)":void 0},children:[e.jsx("defs",{children:e.jsxs("linearGradient",{id:`spark-${r}`,x1:"9.96776",y1:"16.2053",x2:"9.96776",y2:"36.0002",gradientUnits:"userSpaceOnUse",children:[e.jsx("stop",{stopColor:n.ink}),e.jsx("stop",{offset:"1",stopColor:n.white,stopOpacity:"0.01"})]})}),e.jsx("path",{d:y,fill:`url(#spark-${r})`,fillRule:"evenodd",clipRule:"evenodd",opacity:"0.1"}),e.jsx("path",{d:a,stroke:n.ink,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",strokeDasharray:i==="down"?"2 4":void 0})]})}function be({direction:i="up",color:t=n.muted}){const s="M12.4167 0.75H17.4167M17.4167 0.75V5.75M17.4167 0.75L10.3333 7.83333L6.16667 3.66667L0.75 9.08333",r="M12.4167 9.25H17.4167M17.4167 9.25V4.25M17.4167 9.25L10.3333 2.16667L6.16667 6.33333L0.75 0.91667";return e.jsx("svg",{width:18,height:9.5,viewBox:"0 0 19 10",fill:"none",style:{flexShrink:0},children:e.jsx("path",{d:i==="up"?s:r,stroke:t,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}function xe({value:i,label:t,trend:s="up",muted:r=!1,beigeBg:a=!1,style:y={}}){return e.jsxs("div",{style:{background:a?n.beige:n.white,border:`1px solid ${n.border}`,borderRadius:8,padding:16,display:"flex",flexDirection:"column",gap:8,boxSizing:"border-box",...y},children:[e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between"},children:[e.jsx(ge,{trend:s}),e.jsx(be,{direction:s})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8,marginTop:8},children:[e.jsx("div",{style:{fontFamily:O,fontSize:28,fontWeight:500,lineHeight:"1.2",color:r?n.muted:n.ink,letterSpacing:"-0.01em"},children:i}),e.jsx("div",{style:{fontFamily:g,fontSize:13,color:n.ink,lineHeight:"1.2"},children:t})]})]})}function te({value:i,label:t,trend:s="up",withDivider:r=!1}){return e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:8,paddingLeft:r?24:0,borderLeft:r?`1px solid ${n.border}`:"none",minWidth:0},children:[e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"space-between"},children:[e.jsx(ge,{trend:s}),e.jsx(be,{direction:s})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8,marginTop:8},children:[e.jsx("div",{style:{fontFamily:O,fontSize:28,fontWeight:500,lineHeight:"1.2",color:n.muted,letterSpacing:"-0.01em"},children:i}),e.jsx("div",{style:{fontFamily:g,fontSize:13,color:n.ink,lineHeight:"1.2"},children:t})]})]})}function we({icon:i,children:t,trailing:s}){return e.jsxs("button",{type:"button",style:{display:"inline-flex",alignItems:"center",gap:8,height:32,padding:"0 16px",borderRadius:10,border:`1px solid ${n.neutralBorder}`,background:n.white,cursor:"pointer",fontFamily:g,fontSize:14,color:"#323232",whiteSpace:"nowrap"},children:[i&&e.jsx(i,{size:18,strokeWidth:1.75}),t,s&&e.jsx(s,{size:16,strokeWidth:2})]})}function K({label:i,active:t=!1}){return e.jsx("button",{type:"button",style:{height:32,minWidth:31,padding:"0 12px",borderRadius:10,border:t?"none":`1px solid ${n.borderSubtle}`,background:t?n.black:n.white,color:t?n.white:n.black,fontFamily:g,fontSize:14,cursor:"pointer"},children:i})}function Fe(){return e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,height:32,width:260,padding:"0 12px",borderRadius:11,background:n.white,border:`1px solid ${n.neutralLight}`},children:[e.jsx(d.Search,{size:16,color:"#989898",strokeWidth:2}),e.jsx("input",{placeholder:"Search",style:{flex:1,border:"none",outline:"none",background:"transparent",fontFamily:g,fontSize:14,color:n.ink}})]})}function De({value:i=0,max:t=5}){const s=typeof i=="number"?i:parseFloat(i)||0,r=Math.floor(s),a=s%1>0&&r<t;return e.jsx("div",{style:{display:"flex",gap:4},children:Array.from({length:t}).map((y,o)=>o<r?e.jsx("span",{style:{width:10,height:10,borderRadius:"50%",background:n.black,display:"inline-block"}},o):o===r&&a?e.jsx("span",{style:{width:10,height:10,borderRadius:"50%",display:"inline-flex",alignItems:"center",justifyContent:"center"},children:e.jsx("span",{style:{width:6,height:6,borderRadius:"50%",background:n.black,display:"inline-block"}})},o):e.jsx("span",{style:{width:10,height:10,borderRadius:"50%",background:n.white,border:`1px solid ${n.border}`,display:"inline-block",boxSizing:"border-box"}},o))})}const Ce=[{id:"agent",label:"Agent",width:180,sortable:!0,filterable:!0},{id:"supervisor",label:"Supervisor",width:170,sortable:!0,filterable:!0},{id:"calls",label:"Calls",width:100,sortable:!0},{id:"baseline",label:"Baseline",width:110,sortable:!0},{id:"lift",label:"Lift",width:100,sortable:!0},{id:"score",label:"Score",width:100,sortable:!0},{id:"compass",label:"Compass Score",width:200,sortable:!0,render:i=>e.jsxs("span",{style:{display:"inline-flex",alignItems:"center",gap:12},children:[e.jsx("span",{style:{minWidth:32},children:i}),e.jsx(De,{value:typeof i=="number"?i:0})]})},{id:"totalDuration",label:"Total Duration",width:150,sortable:!0},{id:"avgDuration",label:"Average Duration",width:170,sortable:!0}];function Z({icon:i,title:t,trailing:s,iconColor:r=n.ink,bordered:a=!1}){return e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,width:"100%",paddingBottom:a?12:0,borderBottom:a?`1px solid ${n.border}`:"none"},children:[e.jsx("div",{style:{width:24,height:24,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:e.jsx(i,{size:22,color:r,strokeWidth:1.75})}),e.jsx("div",{style:{flex:1,fontFamily:O,fontWeight:700,fontSize:16,color:n.ink,lineHeight:"1.2",textTransform:"uppercase",letterSpacing:"0.02em"},children:t}),s&&e.jsx("div",{style:{fontFamily:g,fontSize:14,color:n.ink},children:s})]})}function he({icon:i,title:t}){return e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:16,width:"100%"},children:[e.jsx("div",{style:{width:34,height:34,borderRadius:9999,background:n.iconCircle,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:e.jsx(i,{size:20,color:n.ink,strokeWidth:1.75})}),e.jsx("span",{style:{fontFamily:O,fontWeight:700,fontSize:16,color:n.ink,lineHeight:"24px"},children:t})]})}const ze=[{text:"Bullet point one",citation:"Q:83",date:"2026-04-14"},{text:"Bullet point one",citation:"Q:83",date:"2026-04-14"},{text:"Bullet point one",citation:"Q:83",date:"2026-04-14"}];function pe({title:i,summary:t,calls:s,percent:r,bullets:a,defaultExpanded:y=!1}){const[o,b]=w.useState(y),v=a&&a.length>0?a:ze;return e.jsxs("button",{type:"button",onClick:()=>b(p=>!p),"aria-expanded":o,style:{borderTop:`1px solid ${n.border}`,borderLeft:"none",borderRight:"none",borderBottom:"none",background:"transparent",padding:16,display:"flex",gap:12,alignItems:"flex-start",cursor:"pointer",width:"100%",textAlign:"left",fontFamily:g},children:[e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:o?16:12,minWidth:0},children:[e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:12},children:[e.jsx("div",{style:{fontFamily:O,fontWeight:600,fontSize:14,color:n.black,lineHeight:"24px"},children:i}),e.jsx("div",{style:{fontFamily:g,fontSize:14,color:n.muted,lineHeight:"24px"},children:t})]}),o&&e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:12},children:v.map((p,f)=>e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",fontFamily:g,fontSize:14,color:n.ink,lineHeight:"24px",gap:16},children:[e.jsx("span",{children:p.text}),e.jsxs("span",{style:{display:"inline-flex",gap:4,whiteSpace:"nowrap"},children:[e.jsx("span",{style:{color:n.ink},children:p.citation}),e.jsxs("span",{style:{color:n.muted},children:["(",p.date,")"]})]})]},f))}),e.jsxs("div",{style:{display:"flex",gap:16},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:4},children:[e.jsx(d.Phone,{size:14,color:n.ink,strokeWidth:1.75}),e.jsx("span",{style:{fontFamily:g,fontSize:12,color:n.ink,lineHeight:1.5},children:s})]}),e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:4},children:[e.jsx(d.TrendingUp,{size:14,color:n.ink,strokeWidth:1.75}),e.jsx("span",{style:{fontFamily:g,fontSize:12,color:n.ink,lineHeight:1.5},children:r})]})]})]}),e.jsx(d.ChevronDown,{size:20,color:n.ink,strokeWidth:2,style:{flexShrink:0,transform:o?"rotate(180deg)":"none",transition:"transform 150ms ease"}})]})}function J({label:i,value:t}){return e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"12px 0",borderBottom:`1px solid ${n.border}`,fontFamily:g,fontSize:13,lineHeight:"24px"},children:[e.jsx("span",{style:{color:n.ink},children:i}),e.jsx("span",{style:{color:n.muted},children:t})]})}function We({className:i="",onAgentClick:t,title:s="Performance",subtitle:r="Agent performance metrics, trends and coaching Insights",dateRangeLabel:a="",viewByOptions:y=[],initialViewBy:o="",volumeStat:b=V,compassStat:v=V,baselineSubStat:p=V,agentLiftSubStat:f=V,scoreSubStat:F=V,agentRows:D=[],agentColumns:j=[],initialPageSize:C=10,guidanceItems:L=[],strengthItems:$=[],callDrivers:u=[],callParadigms:S=[],topSignalsLeft:W=[],topSignalsRight:I=[],topSignalsTrailing:B=""}){var Y,ne;const[z,G]=w.useState(null),[H,R]=w.useState(!1),[E,X]=w.useState(o),_=w.useRef(null),U=w.useRef(null);w.useEffect(()=>{if(!H)return;const h=m=>{var se,re;(se=U.current)!=null&&se.contains(m.target)||(re=_.current)!=null&&re.contains(m.target)||R(!1)};return document.addEventListener("mousedown",h),()=>document.removeEventListener("mousedown",h)},[H]);const c=((Y=y.find(h=>h.id===E))==null?void 0:Y.label)||(((ne=y[0])==null?void 0:ne.label)??""),T=h=>{if(t){t(h);return}G(h)};return z?e.jsx(ye,{className:i,agentName:z.agent,startDate:"2026-03-16",endDate:"2026-04-15",totalCalls:`${z.calls} Calls`,onBack:()=>G(null)}):e.jsxs("div",{className:i,style:{background:n.white,fontFamily:g,color:n.ink,width:"100%",minWidth:1192,boxSizing:"border-box",padding:"12px 32px 32px",display:"flex",flexDirection:"column",gap:24},children:[e.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:8,paddingTop:12},children:[e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:4},children:[e.jsx("h1",{style:{fontFamily:O,fontSize:24,fontWeight:500,color:n.ink,margin:0,lineHeight:"1.2",letterSpacing:"-0.01em"},children:s}),e.jsx("p",{style:{fontFamily:g,fontSize:14,color:"#1E1E1E",margin:0,lineHeight:"1.4"},children:r})]}),e.jsxs("button",{type:"button",style:{display:"inline-flex",alignItems:"center",gap:8,height:32,padding:"0 16px",borderRadius:10,border:`1px solid ${n.neutralBorder}`,background:n.white,cursor:"pointer",fontFamily:g,fontSize:14,color:"#323232"},children:[e.jsx(d.Download,{size:18,strokeWidth:1.75}),"Export CSV"]})]}),e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[e.jsxs("div",{style:{position:"relative"},children:[e.jsxs("button",{type:"button",ref:_,onClick:()=>R(h=>!h),"aria-haspopup":"listbox","aria-expanded":H,style:{display:"inline-flex",alignItems:"center",gap:8,height:32,padding:"0 16px",borderRadius:10,border:`1px solid ${n.neutralBorder}`,background:n.white,cursor:"pointer",fontFamily:g,fontSize:14,lineHeight:"24px",color:"#323232",whiteSpace:"nowrap"},children:[c,e.jsx(d.ChevronDown,{size:20,strokeWidth:1.75,style:{transform:H?"rotate(180deg)":"none",transition:"transform 120ms ease"}})]}),H&&e.jsxs("div",{ref:U,role:"listbox",style:{position:"absolute",top:36,left:0,zIndex:20,background:n.white,border:`1px solid ${n.border}`,borderRadius:4,boxShadow:"-2px 2px 1px rgba(0, 0, 0, 0.25)",display:"flex",flexDirection:"column",minWidth:144,fontFamily:g},children:[e.jsx("div",{style:{padding:12,fontFamily:O,fontWeight:700,fontSize:13,color:n.ink,lineHeight:1.2},children:"View by"}),y.map(h=>{const m=E===h.id;return e.jsxs("button",{type:"button",role:"option","aria-selected":m,onClick:()=>{X(h.id),R(!1)},style:{display:"flex",alignItems:"center",gap:8,padding:m?12:"12px 12px 12px 40px",borderTop:`1px solid ${n.border}`,borderLeft:"none",borderRight:"none",borderBottom:"none",background:"transparent",cursor:"pointer",textAlign:"left",fontFamily:g,fontSize:13,lineHeight:1.2,color:n.ink,width:"100%"},children:[m&&e.jsx(d.Check,{size:20,color:n.ink,strokeWidth:1.75,style:{flexShrink:0}}),e.jsx("span",{children:h.label})]},h.id)})]})]}),e.jsxs("div",{style:{display:"flex",gap:10,alignItems:"center"},children:[a&&e.jsx("span",{style:{fontFamily:g,fontSize:13,color:n.ink},children:a}),e.jsx(K,{label:"8h"}),e.jsx(K,{label:"1d"}),e.jsx(K,{label:"7d"}),e.jsx(K,{label:"30d",active:!0}),e.jsx(we,{icon:d.Calendar,children:"Date Range"}),e.jsx(Fe,{})]})]}),e.jsxs("div",{style:{display:"flex",gap:24},children:[e.jsx(xe,{value:b.value,label:b.label,trend:b.trend,style:{width:264,flexShrink:0}}),e.jsx(xe,{value:v.value,label:v.label,trend:v.trend,style:{width:264,flexShrink:0}}),e.jsxs("div",{style:{flex:1,background:n.beige,border:`1px solid ${n.border}`,borderRadius:8,padding:16,display:"flex",gap:24,alignItems:"stretch",boxSizing:"border-box"},children:[e.jsx(te,{value:p.value,label:p.label,trend:p.trend}),e.jsx(te,{value:f.value,label:f.label,trend:f.trend,withDivider:!0}),e.jsx(te,{value:F.value,label:F.label,trend:F.trend,withDivider:!0})]})]}),e.jsx(ue.DataTable2,{data:D,columns:j,initialPageSize:C,onRowClick:T}),e.jsxs("div",{style:{display:"flex",gap:24},children:[e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:16},children:[e.jsx(Z,{icon:d.Lightbulb,title:"Guidance",iconColor:"#C98A5A"}),e.jsx("div",{style:{display:"flex",flexDirection:"column",borderBottom:`1px solid ${n.border}`},children:L.map((h,m)=>e.jsx(pe,{...h},m))})]}),e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:16},children:[e.jsx(Z,{icon:d.ShieldCheck,title:"Strengths",iconColor:"#C98A5A"}),e.jsx("div",{style:{display:"flex",flexDirection:"column",borderBottom:`1px solid ${n.border}`},children:$.map((h,m)=>e.jsx(pe,{...h},m))})]})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16},children:[e.jsx(Z,{icon:d.Phone,title:"Call Mix",iconColor:"#C98A5A"}),e.jsxs("div",{style:{display:"flex",gap:24},children:[e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:8},children:[e.jsx(he,{icon:d.FolderKanban,title:"Drivers"}),e.jsx("div",{style:{display:"flex",flexDirection:"column"},children:u.map((h,m)=>e.jsx(J,{...h},m))})]}),e.jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:8},children:[e.jsx(he,{icon:d.Layers,title:"Paradigms"}),e.jsx("div",{style:{display:"flex",flexDirection:"column"},children:S.map((h,m)=>e.jsx(J,{...h},m))})]})]})]}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:16},children:[e.jsx(Z,{icon:d.Signal,title:"Top Signals",iconColor:"#C98A5A",trailing:B,bordered:!0}),e.jsxs("div",{style:{display:"flex",gap:24},children:[e.jsx("div",{style:{flex:1,display:"flex",flexDirection:"column"},children:W.map((h,m)=>e.jsx(J,{...h},m))}),e.jsx("div",{style:{flex:1,display:"flex",flexDirection:"column"},children:I.map((h,m)=>e.jsx(J,{...h},m))})]})]})]})}const x={white:"#FFFFFF",black:"#0B0B0B",borderSubtle:"#E6E6E6",border:"#D9D9D9",searchBg:"#D8D8D8",rowSelected:"#F2F2F0",textMuted:"#989898",textMid:"#676767",textDark:"#323232",applyBg:"#2E3236",scrollbar:"#D5D9E2"},A="var(--font-sans, 'Averta', ui-sans-serif, system-ui, sans-serif)";function Be({checked:i,mutedFill:t=!1}){return e.jsx("span",{style:{width:20,height:20,borderRadius:4,background:i?x.black:t?x.rowSelected:x.white,border:`1px solid ${i?x.black:x.textDark}`,display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0,boxSizing:"border-box"},children:i&&e.jsx(d.Check,{size:14,color:x.white,strokeWidth:3})})}function le({supervisor:i,checked:t,muted:s=!1,onToggle:r}){return e.jsxs("button",{type:"button",onClick:r,style:{display:"flex",alignItems:"center",gap:6,height:32,padding:"0 16px 0 8px",borderRadius:10,border:"none",background:t?x.rowSelected:"transparent",cursor:"pointer",width:"100%",textAlign:"left",fontFamily:A,flexShrink:0},children:[e.jsxs("span",{style:{display:"flex",alignItems:"center",gap:12,flex:1,minWidth:0},children:[e.jsx(Be,{checked:t,mutedFill:s}),e.jsx("span",{style:{fontSize:14,lineHeight:"20px",fontWeight:400,color:!t&&s?x.textMid:x.black,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:i.name})]}),e.jsxs("span",{style:{fontSize:12,fontWeight:500,lineHeight:1,color:!t&&s?x.textMid:x.black,whiteSpace:"nowrap",padding:"4px 8px"},children:[i.agentCount," agents"]})]})}function fe({left:i,right:t}){return e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",height:14,fontSize:12,lineHeight:1.5,fontFamily:A,flexShrink:0},children:[i,t]})}function M({children:i,onClick:t,faded:s=!1}){return e.jsx("button",{type:"button",onClick:t,style:{background:"transparent",border:"none",padding:0,cursor:t?"pointer":"default",fontFamily:A,fontSize:12,fontWeight:500,color:s?x.textMuted:x.textDark,whiteSpace:"nowrap"},children:i})}function Le({supervisors:i=[],value:t=[],onApply:s,onClose:r,totalLabel:a,className:y="",style:o}){const b=w.useRef(t),[v,p]=w.useState(t),[f,F]=w.useState("");w.useEffect(()=>{b.current=t,p(t)},[t]);const D=w.useMemo(()=>new Set(v),[v]),j=f.trim().length>0,C=w.useMemo(()=>{const c=f.trim().toLowerCase();return c?i.filter(T=>T.name.toLowerCase().includes(c)):i},[i,f]),L=i.length>0&&v.length===i.length,$=v.length===0,u=!L&&!$,S=c=>{p(T=>T.includes(c)?T.filter(Y=>Y!==c):[...T,c])},W=()=>p(i.map(c=>c.id)),I=()=>p([]),B=()=>p(b.current),z=()=>F(""),G=()=>{s==null||s(v),r==null||r()},H=j?`${C.length} Result${C.length===1?"":"s"}`:a||`${i.length} Supervisors`;let R;j?R=C.length>0?e.jsx(M,{onClick:W,children:"Select all"}):null:L?R=e.jsx(M,{onClick:I,children:"Deselect all"}):$?R=e.jsx(M,{onClick:W,children:"Select all"}):R=e.jsxs("span",{style:{display:"inline-flex",gap:12},children:[e.jsx(M,{onClick:W,children:"Select all"}),e.jsx(M,{onClick:I,children:"Deselect all"})]});const E=!j&&u,X=j?C:E?[]:i,_=E?i.filter(c=>D.has(c.id)):[],U=E?i.filter(c=>!D.has(c.id)):[];return e.jsxs("div",{className:y,style:{width:262,background:x.white,border:`1px solid ${x.borderSubtle}`,borderRadius:10,padding:12,boxSizing:"border-box",display:"flex",flexDirection:"column",gap:6,fontFamily:A,boxShadow:"0 8px 24px rgba(11, 11, 11, 0.08)",...o},children:[e.jsx("div",{style:{background:x.searchBg,height:32,borderRadius:10,padding:1,display:"flex",alignItems:"center"},children:e.jsxs("div",{style:{background:x.white,flex:1,height:30,borderRadius:10,display:"flex",alignItems:"center",gap:8,padding:"0 8px"},children:[e.jsx(d.Search,{size:16,color:x.textMuted,strokeWidth:2}),e.jsx("input",{type:"text",value:f,onChange:c=>F(c.target.value),placeholder:"Search supervisors...",style:{flex:1,border:"none",outline:"none",background:"transparent",fontFamily:A,fontSize:14,color:x.black,minWidth:0}})]})}),e.jsx(fe,{left:e.jsx("span",{style:{color:x.textMuted,fontWeight:400},children:H}),right:R}),X.length>0&&e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:6},children:X.map(c=>e.jsx(le,{supervisor:c,checked:D.has(c.id),muted:!1,onToggle:()=>S(c.id)},c.id))}),E&&e.jsxs(e.Fragment,{children:[_.length>0&&e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:6},children:_.map(c=>e.jsx(le,{supervisor:c,checked:!0,onToggle:()=>S(c.id)},c.id))}),_.length>0&&U.length>0&&e.jsx("div",{style:{height:1,background:x.border,margin:"4px 0"}}),U.length>0&&e.jsxs(e.Fragment,{children:[e.jsx(fe,{left:e.jsx("span",{style:{color:x.textMuted,fontWeight:400},children:"Others"}),right:null}),e.jsx("div",{style:{display:"flex",flexDirection:"column",gap:6},children:U.map(c=>e.jsx(le,{supervisor:c,checked:!1,muted:!0,onToggle:()=>S(c.id)},c.id))})]})]}),j&&C.length===0&&e.jsxs("div",{style:{padding:"16px 8px",textAlign:"center",fontSize:14,color:x.textMid,fontFamily:A},children:["No results for “",f,"”"]}),j&&C.length>0&&i.length>C.length&&e.jsxs("div",{style:{padding:"10px 8px",textAlign:"center",fontSize:14,color:x.textMid,fontFamily:A},children:["No other results for “",f,"”"]}),e.jsx("div",{style:{height:1,background:x.border,margin:"2px 0"}}),e.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",height:30},children:[j?e.jsx(M,{onClick:z,children:"Clear search"}):e.jsx(M,{onClick:B,children:"Reset"}),e.jsx("button",{type:"button",onClick:G,style:{background:x.applyBg,color:x.white,border:"none",borderRadius:10,height:28,padding:"0 14px",fontFamily:A,fontSize:14,fontWeight:600,cursor:"pointer"},children:"Apply"})]})]})}exports.DEFAULT_AGENT_COLUMNS=Ce;exports.DEFAULT_SESSION_COLUMNS=Se;exports.PerformanceDetailsPage=ye;exports.PerformancePanel=We;exports.SupervisorSelect=Le;
2
2
  //# sourceMappingURL=performance.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"performance.cjs.js","sources":["../../src/components/performance/PerformancePanel.jsx"],"sourcesContent":["\"use client\";\n\nimport React from \"react\";\nimport {\n Download,\n Users,\n ChevronDown,\n Calendar,\n Search,\n ChevronLeft,\n ChevronRight,\n TrendingUp,\n Lightbulb,\n ShieldCheck,\n Phone,\n Activity,\n} from \"lucide-react\";\n\nconst C = {\n ink: \"#2E3236\",\n muted: \"#808183\",\n border: \"#D9D9D9\",\n borderSubtle: \"#E6E6E6\",\n iconCircle: \"#F3F7F7\",\n black: \"#0B0B0B\",\n white: \"#FFFFFF\",\n green: \"#00A66E\",\n red: \"#D04A4A\",\n neutralBorder: \"#BFBFBF\",\n neutralLight: \"#E6E6E6\",\n beige: \"rgba(243, 241, 229, 0.4)\",\n};\n\nconst FONT_DISPLAY = \"var(--font-sans, 'Averta', ui-sans-serif, system-ui, sans-serif)\";\nconst FONT_BODY = \"var(--font-sans, 'Averta', ui-sans-serif, system-ui, sans-serif)\";\n\nfunction Sparkline({ trend = \"up\", width = 49.618, height = 35 }) {\n const id = React.useId();\n const linePath =\n \"M1.00049 13.5213C7.85975 11.7032 8.88149 4.73912 13.7838 4.73912C19.8344 4.73912 23.6237 17.166 29.1281 17.166C34.5998 17.166 37.4149 4.88121 43.4004 8.61051C47.9764 11.4616 50.6186 1.00024 50.6186 1.00024\";\n const areaPath =\n \"M1.00049 16.692C8.88149 15.6975 8.88149 7.79403 13.7838 7.79403C19.8344 7.79403 23.6237 21.4034 29.1281 21.4034C34.5998 21.4034 37.4149 8.93821 43.4004 12.7223C47.9764 15.6152 50.6186 5.00024 50.6186 5.00024V36.0002C50.6186 36.0002 10.8223 36.0002 1.00049 36.0002C1.00049 28.8653 1.00049 19.4871 1.00049 16.692Z\";\n return (\n <svg\n width={width}\n height={height}\n viewBox=\"0 0 52 36\"\n fill=\"none\"\n style={{\n flexShrink: 0,\n transform: trend === \"down\" ? \"scaleX(-1)\" : undefined,\n }}\n >\n <defs>\n <linearGradient\n id={`spark-${id}`}\n x1=\"9.96776\"\n y1=\"16.2053\"\n x2=\"9.96776\"\n y2=\"36.0002\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop stopColor={C.ink} />\n <stop offset=\"1\" stopColor={C.white} stopOpacity=\"0.01\" />\n </linearGradient>\n </defs>\n <path\n d={areaPath}\n fill={`url(#spark-${id})`}\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n opacity=\"0.1\"\n />\n <path\n d={linePath}\n stroke={C.ink}\n strokeWidth=\"2\"\n fill=\"none\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeDasharray={trend === \"down\" ? \"2 4\" : undefined}\n />\n </svg>\n );\n}\n\nfunction TrendArrow({ direction = \"up\", color = C.muted }) {\n const upPath =\n \"M12.4167 0.75H17.4167M17.4167 0.75V5.75M17.4167 0.75L10.3333 7.83333L6.16667 3.66667L0.75 9.08333\";\n const downPath =\n \"M12.4167 9.25H17.4167M17.4167 9.25V4.25M17.4167 9.25L10.3333 2.16667L6.16667 6.33333L0.75 0.91667\";\n return (\n <svg width={18} height={9.5} viewBox=\"0 0 19 10\" fill=\"none\" style={{ flexShrink: 0 }}>\n <path\n d={direction === \"up\" ? upPath : downPath}\n stroke={color}\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n );\n}\n\nfunction StatCard({ value, label, trend = \"up\", muted = false, beigeBg = false, style = {} }) {\n return (\n <div\n style={{\n background: beigeBg ? C.beige : C.white,\n border: `1px solid ${C.border}`,\n borderRadius: 8,\n padding: 16,\n display: \"flex\",\n flexDirection: \"column\",\n gap: 8,\n boxSizing: \"border-box\",\n ...style,\n }}\n >\n <div style={{ display: \"flex\", alignItems: \"flex-start\", justifyContent: \"space-between\" }}>\n <Sparkline trend={trend} />\n <TrendArrow direction={trend} />\n </div>\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 8, marginTop: 8 }}>\n <div\n style={{\n fontFamily: FONT_DISPLAY,\n fontSize: 28,\n fontWeight: 500,\n lineHeight: \"1.2\",\n color: muted ? C.muted : C.ink,\n letterSpacing: \"-0.01em\",\n }}\n >\n {value}\n </div>\n <div style={{ fontFamily: FONT_BODY, fontSize: 13, color: C.ink, lineHeight: \"1.2\" }}>{label}</div>\n </div>\n </div>\n );\n}\n\nfunction StatSubCell({ value, label, trend = \"up\", withDivider = false }) {\n return (\n <div\n style={{\n flex: 1,\n display: \"flex\",\n flexDirection: \"column\",\n gap: 8,\n paddingLeft: withDivider ? 24 : 0,\n borderLeft: withDivider ? `1px solid ${C.border}` : \"none\",\n minWidth: 0,\n }}\n >\n <div style={{ display: \"flex\", alignItems: \"flex-start\", justifyContent: \"space-between\" }}>\n <Sparkline trend={trend} />\n <TrendArrow direction={trend} />\n </div>\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 8, marginTop: 8 }}>\n <div\n style={{\n fontFamily: FONT_DISPLAY,\n fontSize: 28,\n fontWeight: 500,\n lineHeight: \"1.2\",\n color: C.muted,\n letterSpacing: \"-0.01em\",\n }}\n >\n {value}\n </div>\n <div style={{ fontFamily: FONT_BODY, fontSize: 13, color: C.ink, lineHeight: \"1.2\" }}>{label}</div>\n </div>\n </div>\n );\n}\n\nfunction FilterButton({ icon: Icon, children, trailing: Trailing }) {\n return (\n <button\n type=\"button\"\n style={{\n display: \"inline-flex\",\n alignItems: \"center\",\n gap: 8,\n height: 32,\n padding: \"0 16px\",\n borderRadius: 10,\n border: `1px solid ${C.neutralBorder}`,\n background: C.white,\n cursor: \"pointer\",\n fontFamily: FONT_BODY,\n fontSize: 14,\n color: \"#323232\",\n whiteSpace: \"nowrap\",\n }}\n >\n {Icon && <Icon size={18} strokeWidth={1.75} />}\n {children}\n {Trailing && <Trailing size={16} strokeWidth={2} />}\n </button>\n );\n}\n\nfunction RangeChip({ label, active = false }) {\n return (\n <button\n type=\"button\"\n style={{\n height: 32,\n minWidth: 31,\n padding: \"0 12px\",\n borderRadius: 10,\n border: active ? \"none\" : `1px solid ${C.borderSubtle}`,\n background: active ? C.black : C.white,\n color: active ? C.white : C.black,\n fontFamily: FONT_BODY,\n fontSize: 14,\n cursor: \"pointer\",\n }}\n >\n {label}\n </button>\n );\n}\n\nfunction SearchBar() {\n return (\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: 8,\n height: 32,\n width: 260,\n padding: \"0 12px\",\n borderRadius: 11,\n background: C.white,\n border: `1px solid ${C.neutralLight}`,\n }}\n >\n <Search size={16} color=\"#989898\" strokeWidth={2} />\n <input\n placeholder=\"Search\"\n style={{\n flex: 1,\n border: \"none\",\n outline: \"none\",\n background: \"transparent\",\n fontFamily: FONT_BODY,\n fontSize: 14,\n color: C.ink,\n }}\n />\n </div>\n );\n}\n\nfunction CompassRating({ value = 0, max = 5 }) {\n const filled = Math.round(value);\n return (\n <div style={{ display: \"flex\", gap: 4 }}>\n {Array.from({ length: max }).map((_, i) => (\n <span\n key={i}\n style={{\n width: 10,\n height: 10,\n borderRadius: \"50%\",\n background: i < filled ? C.black : C.white,\n border: i < filled ? \"none\" : `1px solid ${C.border}`,\n display: \"inline-block\",\n }}\n />\n ))}\n </div>\n );\n}\n\nconst TABLE_COLS = [\n { key: \"agent\", label: \"Agent\", width: 170, align: \"left\", bold: true },\n { key: \"supervisor\", label: \"Supervisor\", width: 170, align: \"left\" },\n { key: \"calls\", label: \"Calls\", width: 80, align: \"right\" },\n { key: \"baseline\", label: \"Baseline\", width: 80, align: \"right\" },\n { key: \"lift\", label: \"Lift\", width: 80, align: \"right\" },\n { key: \"score\", label: \"Score\", width: 80, align: \"right\" },\n { key: \"compass\", label: \"Compass Score\", suffix: \"(Out of 5)\", width: 170, align: \"left\" },\n { key: \"totalDuration\", label: \"Total Duration\", flex: 1, align: \"right\" },\n { key: \"avgDuration\", label: \"Average Duration\", flex: 1, align: \"right\" },\n];\n\nconst TABLE_ROWS = [\n { agent: \"Alex Johnson\", supervisor: \"Jordan Smith\", calls: \"1423\", baseline: \"97.2%\", lift: \"-5.7pp\", score: \"78.3%\", compass: 3, totalDuration: \"20h 25m\", avgDuration: \"52s\" },\n { agent: \"Ricardo Odom\", supervisor: \"Jordan Smith\", calls: \"1423\", baseline: \"97.2%\", lift: \"-5.7pp\", score: \"78.3%\", compass: 3.25, totalDuration: \"20h 25m\", avgDuration: \"52s\" },\n { agent: \"Latoya Tillman\", supervisor: \"Jordan Smith\", calls: \"1423\", baseline: \"97.2%\", lift: \"-5.7pp\", score: \"78.3%\", compass: 4, totalDuration: \"20h 25m\", avgDuration: \"52s\" },\n { agent: \"Javier Lawmon\", supervisor: \"Jordan Smith\", calls: \"1423\", baseline: \"97.2%\", lift: \"-5.7pp\", score: \"78.3%\", compass: 4, totalDuration: \"20h 25m\", avgDuration: \"52s\" },\n { agent: \"Naomi Wilkenmare\", supervisor: \"Jordan Smith\", calls: \"1423\", baseline: \"97.2%\", lift: \"-5.7pp\", score: \"78.3%\", compass: 4, totalDuration: \"20h 25m\", avgDuration: \"52s\" },\n { agent: \"Latoya Tillman\", supervisor: \"Jordan Smith\", calls: \"1423\", baseline: \"97.2%\", lift: \"-5.7pp\", score: \"78.3%\", compass: 3.75, totalDuration: \"20h 25m\", avgDuration: \"52s\" },\n { agent: \"Latoya Tillman\", supervisor: \"Jordan Smith\", calls: \"1423\", baseline: \"97.2%\", lift: \"-5.7pp\", score: \"78.3%\", compass: 4, totalDuration: \"20h 25m\", avgDuration: \"52s\" },\n { agent: \"Latoya Tillman\", supervisor: \"Jordan Smith\", calls: \"1423\", baseline: \"97.2%\", lift: \"-5.7pp\", score: \"78.3%\", compass: 4, totalDuration: \"20h 25m\", avgDuration: \"52s\" },\n { agent: \"Latoya Tillman\", supervisor: \"Jordan Smith\", calls: \"1423\", baseline: \"97.2%\", lift: \"-5.7pp\", score: \"78.3%\", compass: 4, totalDuration: \"20h 25m\", avgDuration: \"52s\" },\n { agent: \"Latoya Tillman\", supervisor: \"Jordan Smith\", calls: \"1423\", baseline: \"97.2%\", lift: \"-5.7pp\", score: \"78.3%\", compass: 4, totalDuration: \"20h 25m\", avgDuration: \"52s\" },\n];\n\nfunction PerfTable() {\n return (\n <div style={{ width: \"100%\" }}>\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n background: C.iconCircle,\n border: `1px solid ${C.border}`,\n borderTopLeftRadius: 4,\n borderTopRightRadius: 4,\n }}\n >\n {TABLE_COLS.map((col) => (\n <div\n key={col.key}\n style={{\n width: col.width,\n flex: col.flex,\n padding: \"0 12px\",\n height: 36,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: col.align === \"right\" ? \"flex-end\" : \"flex-start\",\n fontFamily: FONT_DISPLAY,\n fontSize: 14,\n fontWeight: 500,\n color: C.black,\n boxSizing: \"border-box\",\n }}\n >\n <span style={{ overflow: \"hidden\", textOverflow: \"ellipsis\", whiteSpace: \"nowrap\" }}>\n {col.label}\n {col.suffix && (\n <span style={{ fontWeight: 400, color: C.muted, marginLeft: 4 }}>{col.suffix}</span>\n )}\n </span>\n </div>\n ))}\n </div>\n {TABLE_ROWS.map((row, i) => (\n <div\n key={i}\n style={{\n display: \"flex\",\n alignItems: \"center\",\n borderLeft: `1px solid ${C.border}`,\n borderRight: `1px solid ${C.border}`,\n borderBottom: `1px solid ${C.border}`,\n background: C.white,\n }}\n >\n {TABLE_COLS.map((col) => {\n const value = row[col.key];\n const isCompass = col.key === \"compass\";\n return (\n <div\n key={col.key}\n style={{\n width: col.width,\n flex: col.flex,\n padding: \"0 12px\",\n height: 36,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: col.align === \"right\" ? \"flex-end\" : \"flex-start\",\n gap: isCompass ? 12 : 0,\n fontFamily: FONT_BODY,\n fontSize: 14,\n fontWeight: col.bold ? 500 : 400,\n color: col.bold ? C.black : C.ink,\n boxSizing: \"border-box\",\n }}\n >\n {isCompass ? (\n <>\n <span style={{ width: 32, textAlign: \"right\", color: C.ink }}>{value}</span>\n <CompassRating value={value} />\n </>\n ) : (\n <span style={{ overflow: \"hidden\", textOverflow: \"ellipsis\", whiteSpace: \"nowrap\" }}>{value}</span>\n )}\n </div>\n );\n })}\n </div>\n ))}\n </div>\n );\n}\n\nfunction PaginationBar() {\n const PageBtn = ({ children, active, disabled }) => (\n <button\n type=\"button\"\n disabled={disabled}\n style={{\n height: 24,\n minWidth: 22,\n padding: \"0 8px\",\n borderRadius: 10,\n border: active ? \"none\" : `1px solid ${C.borderSubtle}`,\n background: active ? C.black : C.white,\n color: active ? C.white : C.black,\n opacity: disabled ? 0.5 : 1,\n fontFamily: FONT_BODY,\n fontSize: 12,\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n gap: 4,\n cursor: disabled ? \"default\" : \"pointer\",\n }}\n >\n {children}\n </button>\n );\n\n return (\n <div\n style={{\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n padding: \"12px 0\",\n }}\n >\n <div style={{ display: \"flex\", alignItems: \"center\", gap: 16 }}>\n <div style={{ display: \"flex\", alignItems: \"center\", gap: 8 }}>\n <span style={{ fontFamily: FONT_BODY, fontSize: 14, color: \"#323232\" }}>Result per page</span>\n <PageBtn>\n 10\n <ChevronDown size={12} strokeWidth={2} />\n </PageBtn>\n </div>\n <span style={{ fontFamily: FONT_BODY, fontSize: 14, color: \"#323232\" }}>1-10 of 50</span>\n </div>\n <div style={{ display: \"flex\", alignItems: \"center\", gap: 6 }}>\n <PageBtn disabled>\n <ChevronLeft size={12} strokeWidth={2} />\n Back\n </PageBtn>\n <PageBtn active>1</PageBtn>\n <PageBtn>2</PageBtn>\n <PageBtn>3</PageBtn>\n <PageBtn>4</PageBtn>\n <PageBtn>5</PageBtn>\n <PageBtn>\n Next\n <ChevronRight size={12} strokeWidth={2} />\n </PageBtn>\n </div>\n </div>\n );\n}\n\nfunction SectionHeading({ icon: Icon, title, trailing }) {\n return (\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: 16,\n width: \"100%\",\n paddingBottom: 12,\n borderBottom: `1px solid ${C.border}`,\n }}\n >\n <div\n style={{\n width: 34,\n height: 34,\n borderRadius: 9999,\n background: C.iconCircle,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexShrink: 0,\n }}\n >\n <Icon size={20} color={C.ink} strokeWidth={1.75} />\n </div>\n <div\n style={{\n flex: 1,\n fontFamily: FONT_DISPLAY,\n fontWeight: 600,\n fontSize: 16,\n color: C.ink,\n lineHeight: \"1.2\",\n }}\n >\n {title}\n </div>\n {trailing && (\n <div style={{ fontFamily: FONT_BODY, fontSize: 14, color: C.ink }}>{trailing}</div>\n )}\n </div>\n );\n}\n\nfunction AccordionItem({ title, summary, calls, percent }) {\n return (\n <div\n style={{\n borderTop: `1px solid ${C.border}`,\n padding: 16,\n display: \"flex\",\n gap: 16,\n alignItems: \"flex-start\",\n cursor: \"pointer\",\n }}\n >\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\", gap: 12, minWidth: 0 }}>\n <div style={{ fontFamily: FONT_BODY, fontWeight: 500, fontSize: 14, color: C.black, lineHeight: \"24px\" }}>\n {title}\n </div>\n <div style={{ fontFamily: FONT_BODY, fontSize: 14, color: C.muted, lineHeight: \"24px\" }}>{summary}</div>\n <div style={{ display: \"flex\", gap: 16 }}>\n <div style={{ display: \"flex\", alignItems: \"center\", gap: 4 }}>\n <Phone size={12} color={C.ink} strokeWidth={1.75} />\n <span style={{ fontFamily: FONT_BODY, fontSize: 12, color: C.ink }}>{calls}</span>\n </div>\n <div style={{ display: \"flex\", alignItems: \"center\", gap: 4 }}>\n <TrendingUp size={12} color={C.ink} strokeWidth={1.75} />\n <span style={{ fontFamily: FONT_BODY, fontSize: 12, color: C.ink }}>{percent}</span>\n </div>\n </div>\n </div>\n <ChevronDown size={18} color={C.ink} strokeWidth={2} />\n </div>\n );\n}\n\nconst GUIDANCE_ITEMS = [\n { title: \"Close the loop:\", summary: \"Restate the plan and confirm what happens next so the customer\", calls: \"9411 Calls\", percent: \"95.5% (0.6pp)\" },\n { title: \"Frame solutions positively:\", summary: \"Lead with what you can do rather than what you can’t\", calls: \"9411 Calls\", percent: \"95.5% (0.6pp)\" },\n { title: \"Show expertise:\", summary: \"Lead with what you can do rather than what you can’t\", calls: \"9411 Calls\", percent: \"95.5% (0.6pp)\" },\n { title: \"Demonstrate active listening:\", summary: \"Lead with what you can do rather than what you can’t\", calls: \"9411 Calls\", percent: \"95.5% (0.6pp)\" },\n { title: \"Close the call properly:\", summary: \"Lead with what you can do rather than what you can’t\", calls: \"9411 Calls\", percent: \"95.5% (0.6pp)\" },\n { title: \"Address confusion:\", summary: \"Lead with what you can do rather than what you can’t\", calls: \"9411 Calls\", percent: \"95.5% (0.6pp)\" },\n];\n\nconst STRENGTH_ITEMS = [\n { title: \"Excellence:\", summary: \"Used solution focused, Positive framing\", calls: \"9411 Calls\", percent: \"15.1% (0.6pp)\" },\n { title: \"Excellence:\", summary: \"Demonstrated strong product knowledge - The no. 1 behavioral predictor\", calls: \"9411 Calls\", percent: \"5.7% (0.6pp)\" },\n { title: \"Excellence:\", summary: \"Customer explicitly confirmed their issue was resolved\", calls: \"9411 Calls\", percent: \"5.7% (0.6pp)\" },\n];\n\nconst CALL_DRIVERS = [\n { label: \"General Information Request\", value: \"26.3 %\" },\n { label: \"Appointment Scheduling\", value: \"12.2 %\" },\n { label: \"Order Placement\", value: \"12.3 %\" },\n { label: \"Order Status\", value: \"10.5 %\" },\n { label: \"Appointment Follow-up\", value: \"8.3 %\" },\n];\n\nconst CALL_PARADIGMS = [\n { label: \"Resolutions\", value: \"43.6 %\" },\n { label: \"Informational\", value: \"32.6 %\" },\n { label: \"Conversion\", value: \"23.7 %\" },\n { label: \"Recovery\", value: \"0.2 %\" },\n];\n\nconst TOP_SIGNALS_LEFT = [\n { label: \"Closure Quality Adequate\", value: \"99 %\" },\n { label: \"Evaluation Review\", value: \"96.5 %\" },\n { label: \"Customer Needs Fully Addressed\", value: \"59.1 %\" },\n { label: \"Call Flow Expectation Set\", value: \"57.6 %\" },\n { label: \"Next Steps Stated\", value: \"37 %\" },\n { label: \"Active Listening Demonstrated\", value: \"31 %\" },\n { label: \"Agent Courtesy Demonstrated\", value: \"30.5 %\" },\n { label: \"Engagement Budget Discussed\", value: \"29.8 %\" },\n];\n\nconst TOP_SIGNALS_RIGHT = [\n { label: \"Fee or Cost Discussed\", value: \"26.6 %\" },\n { label: \"Objection Handling Effective\", value: \"27.2 %\" },\n { label: \"Opening Expectations Set\", value: \"26.6 %\" },\n { label: \"Empathy or Acknowledgement Expressed\", value: \"24.2 %\" },\n { label: \"Follow up Required\", value: \"22.4 %\" },\n { label: \"Estimate Provided\", value: \"18.9 %\" },\n { label: \"Script Adherence Likely\", value: \"17.5 %\" },\n];\n\nfunction PercentRow({ label, value }) {\n return (\n <div\n style={{\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n padding: \"12px 0\",\n borderBottom: `1px solid ${C.border}`,\n fontFamily: FONT_BODY,\n fontSize: 13,\n lineHeight: \"24px\",\n }}\n >\n <span style={{ color: C.ink }}>{label}</span>\n <span style={{ color: C.muted }}>{value}</span>\n </div>\n );\n}\n\nexport default function PerformancePanel({ className = \"\" }) {\n return (\n <div\n className={className}\n style={{\n background: C.white,\n fontFamily: FONT_BODY,\n color: C.ink,\n width: \"100%\",\n minWidth: 1192,\n boxSizing: \"border-box\",\n padding: \"12px 32px 32px\",\n display: \"flex\",\n flexDirection: \"column\",\n gap: 24,\n }}\n >\n <div style={{ display: \"flex\", alignItems: \"flex-start\", gap: 8, paddingTop: 12 }}>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\", gap: 4 }}>\n <h1\n style={{\n fontFamily: FONT_DISPLAY,\n fontSize: 24,\n fontWeight: 500,\n color: C.ink,\n margin: 0,\n lineHeight: \"1.2\",\n letterSpacing: \"-0.01em\",\n }}\n >\n Performance\n </h1>\n <p style={{ fontFamily: FONT_BODY, fontSize: 14, color: \"#1E1E1E\", margin: 0, lineHeight: \"1.4\" }}>\n Agent performance metrics, trends and coaching Insights\n </p>\n </div>\n <button\n type=\"button\"\n style={{\n display: \"inline-flex\",\n alignItems: \"center\",\n gap: 8,\n height: 32,\n padding: \"0 16px\",\n borderRadius: 10,\n border: `1px solid ${C.neutralBorder}`,\n background: C.white,\n cursor: \"pointer\",\n fontFamily: FONT_BODY,\n fontSize: 14,\n color: \"#323232\",\n }}\n >\n <Download size={18} strokeWidth={1.75} />\n Export CSV\n </button>\n </div>\n\n <div style={{ display: \"flex\", justifyContent: \"space-between\", alignItems: \"center\" }}>\n <FilterButton icon={Users} trailing={ChevronDown}>\n 32 Supervisors\n </FilterButton>\n <div style={{ display: \"flex\", gap: 10, alignItems: \"center\" }}>\n <span style={{ fontFamily: FONT_BODY, fontSize: 13, color: C.ink }}>2026-03-16 to 2026-04-15</span>\n <RangeChip label=\"8h\" />\n <RangeChip label=\"1d\" />\n <RangeChip label=\"7d\" />\n <RangeChip label=\"30d\" active />\n <FilterButton icon={Calendar}>Date Range</FilterButton>\n <SearchBar />\n </div>\n </div>\n\n <div style={{ display: \"flex\", gap: 24 }}>\n <StatCard value=\"10956\" label=\"Volume\" trend=\"up\" style={{ width: 264, flexShrink: 0 }} />\n <StatCard value=\"4.0\" label=\"Compass Score (0.4)\" trend=\"down\" style={{ width: 264, flexShrink: 0 }} />\n <div\n style={{\n flex: 1,\n background: C.beige,\n border: `1px solid ${C.border}`,\n borderRadius: 8,\n padding: 16,\n display: \"flex\",\n gap: 24,\n alignItems: \"stretch\",\n boxSizing: \"border-box\",\n }}\n >\n <StatSubCell value=\"97.3%\" label=\"Baseline (2.0)\" trend=\"up\" />\n <StatSubCell value=\"-6.3pp\" label=\"Agent Lift (6.0)\" trend=\"down\" withDivider />\n <StatSubCell value=\"76.9%\" label=\"Score (6.0)\" trend=\"up\" withDivider />\n </div>\n </div>\n\n <div>\n <PerfTable />\n <PaginationBar />\n </div>\n\n <div style={{ display: \"flex\", gap: 24 }}>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\", gap: 16 }}>\n <SectionHeading icon={Lightbulb} title=\"Guidance\" />\n <div style={{ display: \"flex\", flexDirection: \"column\" }}>\n {GUIDANCE_ITEMS.map((item, i) => (\n <AccordionItem key={i} {...item} />\n ))}\n </div>\n </div>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\", gap: 16 }}>\n <SectionHeading icon={ShieldCheck} title=\"Consistent Strengths\" />\n <div style={{ display: \"flex\", flexDirection: \"column\" }}>\n {STRENGTH_ITEMS.map((item, i) => (\n <AccordionItem key={i} {...item} />\n ))}\n </div>\n </div>\n </div>\n\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 16 }}>\n <SectionHeading icon={Phone} title=\"Call Mix\" />\n <div style={{ display: \"flex\", gap: 24 }}>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\", gap: 8 }}>\n <div style={{ padding: \"8px 0\", fontFamily: FONT_DISPLAY, fontWeight: 600, fontSize: 15, color: C.ink, lineHeight: \"24px\" }}>\n Drivers\n </div>\n <div style={{ display: \"flex\", flexDirection: \"column\" }}>\n {CALL_DRIVERS.map((row, i) => (\n <PercentRow key={i} {...row} />\n ))}\n </div>\n </div>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\", gap: 8 }}>\n <div style={{ padding: \"8px 0\", fontFamily: FONT_DISPLAY, fontWeight: 600, fontSize: 15, color: C.ink, lineHeight: \"24px\" }}>\n Paradigms\n </div>\n <div style={{ display: \"flex\", flexDirection: \"column\" }}>\n {CALL_PARADIGMS.map((row, i) => (\n <PercentRow key={i} {...row} />\n ))}\n </div>\n </div>\n </div>\n </div>\n\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 16 }}>\n <SectionHeading icon={Activity} title=\"Top Signals\" trailing=\"15 Signals Detected\" />\n <div style={{ display: \"flex\", gap: 24 }}>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\" }}>\n {TOP_SIGNALS_LEFT.map((row, i) => (\n <PercentRow key={i} {...row} />\n ))}\n </div>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\" }}>\n {TOP_SIGNALS_RIGHT.map((row, i) => (\n <PercentRow key={i} {...row} />\n ))}\n </div>\n </div>\n </div>\n </div>\n );\n}\n"],"names":["C","FONT_DISPLAY","FONT_BODY","Sparkline","trend","width","height","id","React","linePath","areaPath","jsxs","jsx","TrendArrow","direction","color","upPath","downPath","StatCard","value","label","muted","beigeBg","style","StatSubCell","withDivider","FilterButton","Icon","children","Trailing","RangeChip","active","SearchBar","Search","CompassRating","max","filled","_","i","TABLE_COLS","TABLE_ROWS","PerfTable","col","row","isCompass","Fragment","PaginationBar","PageBtn","disabled","ChevronDown","ChevronLeft","ChevronRight","SectionHeading","title","trailing","AccordionItem","summary","calls","percent","Phone","TrendingUp","GUIDANCE_ITEMS","STRENGTH_ITEMS","CALL_DRIVERS","CALL_PARADIGMS","TOP_SIGNALS_LEFT","TOP_SIGNALS_RIGHT","PercentRow","PerformancePanel","className","Download","Users","Calendar","Lightbulb","item","ShieldCheck","Activity"],"mappings":"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"}
1
+ {"version":3,"file":"performance.cjs.js","sources":["../../src/components/performance/PerformanceDetailsPage.jsx","../../src/components/performance/PerformancePanel.jsx","../../src/components/performance/SupervisorSelect.jsx"],"sourcesContent":["\"use client\";\n\nimport React from \"react\";\nimport {\n ArrowLeft,\n ArrowRight,\n Calendar,\n Download,\n Phone,\n ChevronDown,\n ChevronUp,\n ChevronLeft,\n ChevronRight,\n TrendingUp,\n Lightbulb,\n ShieldCheck,\n FolderKanban,\n Layers,\n} from \"lucide-react\";\nimport DataTable2 from \"../data/DataTable2\";\n\nconst C = {\n ink: \"#2E3236\",\n muted: \"#808183\",\n border: \"#D9D9D9\",\n borderSubtle: \"#E6E6E6\",\n iconCircle: \"#F3F7F7\",\n black: \"#0B0B0B\",\n white: \"#FFFFFF\",\n neutralBorder: \"#BFBFBF\",\n neutral800: \"#323232\",\n neutral600: \"#676767\",\n neutral450: \"#8B8B8B\",\n neutral400: \"#989898\",\n neutral300: \"#B2B2B0\",\n neutral150: \"#D8D8D8\",\n neutral100: \"#E6E6E6\",\n beige: \"rgba(243, 241, 229, 0.4)\",\n};\n\nconst FONT_DISPLAY = \"var(--font-sans, 'Averta', ui-sans-serif, system-ui, sans-serif)\";\nconst FONT_BODY = \"var(--font-sans, 'Averta', ui-sans-serif, system-ui, sans-serif)\";\n\nfunction Sparkline({ trend = \"up\", width = 49.618, height = 35 }) {\n const id = React.useId();\n const linePath =\n \"M1.00049 13.5213C7.85975 11.7032 8.88149 4.73912 13.7838 4.73912C19.8344 4.73912 23.6237 17.166 29.1281 17.166C34.5998 17.166 37.4149 4.88121 43.4004 8.61051C47.9764 11.4616 50.6186 1.00024 50.6186 1.00024\";\n const areaPath =\n \"M1.00049 16.692C8.88149 15.6975 8.88149 7.79403 13.7838 7.79403C19.8344 7.79403 23.6237 21.4034 29.1281 21.4034C34.5998 21.4034 37.4149 8.93821 43.4004 12.7223C47.9764 15.6152 50.6186 5.00024 50.6186 5.00024V36.0002C50.6186 36.0002 10.8223 36.0002 1.00049 36.0002C1.00049 28.8653 1.00049 19.4871 1.00049 16.692Z\";\n return (\n <svg\n width={width}\n height={height}\n viewBox=\"0 0 52 36\"\n fill=\"none\"\n style={{\n flexShrink: 0,\n transform: trend === \"down\" ? \"scaleX(-1)\" : undefined,\n }}\n >\n <defs>\n <linearGradient\n id={`spark-${id}`}\n x1=\"9.96776\"\n y1=\"16.2053\"\n x2=\"9.96776\"\n y2=\"36.0002\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop stopColor={C.ink} />\n <stop offset=\"1\" stopColor={C.white} stopOpacity=\"0.01\" />\n </linearGradient>\n </defs>\n <path\n d={areaPath}\n fill={`url(#spark-${id})`}\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n opacity=\"0.1\"\n />\n <path\n d={linePath}\n stroke={C.ink}\n strokeWidth=\"2\"\n fill=\"none\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeDasharray={trend === \"down\" ? \"2 4\" : undefined}\n />\n </svg>\n );\n}\n\nfunction KpiCell({ value, label, sub, trend = \"up\" }) {\n return (\n <div\n style={{\n flex: 1,\n display: \"flex\",\n alignItems: \"center\",\n gap: 16,\n minWidth: 0,\n }}\n >\n <Sparkline trend={trend} />\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 6, minWidth: 0 }}>\n <div\n style={{\n fontFamily: FONT_DISPLAY,\n fontSize: 28,\n fontWeight: 400,\n lineHeight: \"1.2\",\n color: C.muted,\n letterSpacing: \"-0.01em\",\n whiteSpace: \"nowrap\",\n }}\n >\n {value}\n </div>\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 2 }}>\n <span\n style={{\n fontFamily: FONT_BODY,\n fontSize: 13,\n color: C.ink,\n lineHeight: \"1.2\",\n }}\n >\n {label}\n </span>\n <span\n style={{\n fontFamily: FONT_BODY,\n fontSize: 13,\n color: C.neutral600,\n lineHeight: \"1.2\",\n }}\n >\n {sub}\n </span>\n </div>\n </div>\n </div>\n );\n}\n\nfunction RangeChip({ label, active = false }) {\n return (\n <button\n type=\"button\"\n style={{\n height: 32,\n minWidth: 31,\n padding: \"0 12px\",\n borderRadius: 10,\n border: active ? \"none\" : `1px solid ${C.borderSubtle}`,\n background: active ? C.black : C.white,\n color: active ? C.white : C.black,\n fontFamily: FONT_BODY,\n fontSize: 14,\n cursor: \"pointer\",\n }}\n >\n {label}\n </button>\n );\n}\n\nfunction FilterButton({ icon: Icon, children }) {\n return (\n <button\n type=\"button\"\n style={{\n display: \"inline-flex\",\n alignItems: \"center\",\n gap: 8,\n height: 32,\n padding: \"0 16px\",\n borderRadius: 10,\n border: `1px solid ${C.neutralBorder}`,\n background: C.white,\n cursor: \"pointer\",\n fontFamily: FONT_BODY,\n fontSize: 14,\n color: C.neutral800,\n whiteSpace: \"nowrap\",\n }}\n >\n {Icon && <Icon size={18} strokeWidth={1.75} />}\n {children}\n </button>\n );\n}\n\nconst DEFAULT_LINE_POINTS = [\n [0, 30],\n [60, 50],\n [120, 95],\n [180, 60],\n [240, 70],\n [300, 80],\n];\n\nfunction CompassLineChart({\n yLabels = [\"4.6\", \"4.4\", \"4.2\", \"4.0\", \"3.9\"],\n xLabels = [\"Mar 16\", \"Mar 23\", \"Mar 30\", \"Apr 6\", \"Apr 13\", \"Apr 15\"],\n // points: array of [x, y] pairs OR array of y-numbers (auto-distributed in x).\n // y is in pixel space 0..height (top to bottom). x is auto-scaled to the chart width.\n points = DEFAULT_LINE_POINTS,\n // index of the marker to render filled (defaults to the last point)\n highlightIndex,\n}) {\n const width = 460;\n const height = 110;\n const normalized = (Array.isArray(points) && points.length > 0)\n ? (Array.isArray(points[0])\n ? points\n : points.map((y, i) => [i, y]))\n : DEFAULT_LINE_POINTS;\n const minX = normalized[0][0];\n const maxX = normalized[normalized.length - 1][0];\n const xSpan = maxX - minX || 1;\n const sx = (x) => ((x - minX) / xSpan) * width;\n const linePath = normalized\n .map(([x, y], i) => `${i === 0 ? \"M\" : \"L\"}${sx(x)},${y}`)\n .join(\" \");\n const areaPath = `${linePath} L${sx(normalized[normalized.length - 1][0])},${height} L${sx(normalized[0][0])},${height} Z`;\n const gradId = React.useId();\n const highlight = highlightIndex == null ? normalized.length - 1 : highlightIndex;\n // Vertical grid lines at evenly-spaced x-label positions (not every data point)\n const gridCount = Math.max(2, xLabels.length);\n const gridXs = Array.from({ length: gridCount }, (_, i) => (i / (gridCount - 1)) * width);\n return (\n <div style={{ display: \"flex\", gap: 8, height: 133, width: \"100%\" }}>\n <div\n style={{\n display: \"flex\",\n flexDirection: \"column\",\n justifyContent: \"space-between\",\n padding: \"14px 0\",\n fontFamily: FONT_BODY,\n fontSize: 10,\n color: C.neutral800,\n flexShrink: 0,\n }}\n >\n {yLabels.map((l) => (\n <span key={l}>{l}</span>\n ))}\n </div>\n <div style={{ flex: 1, position: \"relative\", minWidth: 0 }}>\n <svg\n width=\"100%\"\n height={height + 14}\n viewBox={`0 0 ${width} ${height + 14}`}\n preserveAspectRatio=\"none\"\n >\n <defs>\n <linearGradient id={`area-${gradId}`} x1=\"0\" y1=\"0\" x2=\"0\" y2=\"1\">\n <stop offset=\"0%\" stopColor=\"#0B0B0B\" stopOpacity=\"0.08\" />\n <stop offset=\"100%\" stopColor=\"#0B0B0B\" stopOpacity=\"0\" />\n </linearGradient>\n </defs>\n {gridXs.map((gx, i) => (\n <line\n key={`grid-${i}`}\n x1={gx}\n y1=\"0\"\n x2={gx}\n y2={height}\n stroke={C.borderSubtle}\n strokeDasharray=\"2 3\"\n strokeWidth=\"1\"\n vectorEffect=\"non-scaling-stroke\"\n />\n ))}\n <path d={areaPath} fill={`url(#area-${gradId})`} />\n <path\n d={linePath}\n stroke={C.black}\n strokeWidth=\"1.5\"\n fill=\"none\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n vectorEffect=\"non-scaling-stroke\"\n />\n {normalized.map(([x, y], i) => {\n const isHighlight = i === highlight;\n return (\n <circle\n key={i}\n cx={sx(x)}\n cy={y}\n r={isHighlight ? 4 : 3}\n fill={isHighlight ? C.black : C.white}\n stroke={C.black}\n strokeWidth=\"1.5\"\n vectorEffect=\"non-scaling-stroke\"\n />\n );\n })}\n </svg>\n <div\n style={{\n display: \"flex\",\n justifyContent: \"space-between\",\n paddingRight: 6,\n fontFamily: FONT_BODY,\n fontSize: 10,\n color: C.neutral800,\n marginTop: 6,\n }}\n >\n {xLabels.map((l) => (\n <span key={l}>{l}</span>\n ))}\n </div>\n </div>\n </div>\n );\n}\n\nfunction ChartCard({ title, value, delta, children }) {\n return (\n <div\n style={{\n flex: 1,\n background: C.white,\n border: `1px solid ${C.border}`,\n borderRadius: 8,\n padding: 24,\n display: \"flex\",\n flexDirection: \"column\",\n gap: 24,\n minWidth: 0,\n boxShadow: \"0 1px 2px rgba(11, 11, 11, 0.04), 0 4px 12px rgba(11, 11, 11, 0.06)\",\n }}\n >\n <div style={{ display: \"flex\", justifyContent: \"space-between\", alignItems: \"flex-end\" }}>\n <span\n style={{\n fontFamily: FONT_DISPLAY,\n fontWeight: 700,\n fontSize: 15,\n color: C.ink,\n lineHeight: 1.2,\n }}\n >\n {title}\n </span>\n <span\n style={{\n display: \"inline-flex\",\n alignItems: \"flex-end\",\n gap: 4,\n fontFamily: FONT_DISPLAY,\n fontWeight: 600,\n }}\n >\n <span style={{ fontSize: 20, color: C.black, lineHeight: 1 }}>{value}</span>\n <span style={{ fontSize: 10, color: C.neutral300, lineHeight: 1 }}>{delta}</span>\n </span>\n </div>\n <div style={{ flex: 1 }}>{children}</div>\n </div>\n );\n}\n\nfunction SectionHeading({ icon: Icon, title, trailing, iconColor = C.ink, bordered = false }) {\n return (\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: 8,\n width: \"100%\",\n paddingBottom: bordered ? 12 : 0,\n borderBottom: bordered ? `1px solid ${C.border}` : \"none\",\n }}\n >\n <div\n style={{\n width: 24,\n height: 24,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexShrink: 0,\n }}\n >\n <Icon size={22} color={iconColor} strokeWidth={1.75} />\n </div>\n <div\n style={{\n flex: 1,\n fontFamily: FONT_DISPLAY,\n fontWeight: 600,\n fontSize: 16,\n color: C.ink,\n lineHeight: 1.2,\n textTransform: \"uppercase\",\n letterSpacing: \"0.02em\",\n }}\n >\n {title}\n </div>\n {trailing && (\n <div style={{ fontFamily: FONT_BODY, fontSize: 14, color: C.ink }}>{trailing}</div>\n )}\n </div>\n );\n}\n\nfunction CitationRow({ bullet, citation, date }) {\n return (\n <div\n style={{\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n fontFamily: FONT_BODY,\n fontSize: 14,\n color: C.ink,\n lineHeight: \"24px\",\n }}\n >\n <span>{bullet}</span>\n <span style={{ display: \"inline-flex\", gap: 4 }}>\n <span>{citation}</span>\n <span style={{ color: C.muted }}>({date})</span>\n </span>\n </div>\n );\n}\n\nfunction AccordionRow({ title, summary, calls, delta, expanded = false, bullets }) {\n return (\n <div\n style={{\n borderTop: `1px solid ${C.border}`,\n padding: 16,\n display: \"flex\",\n gap: 12,\n alignItems: \"flex-start\",\n cursor: \"pointer\",\n }}\n >\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\", gap: expanded ? 16 : 12, minWidth: 0 }}>\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 12 }}>\n <span\n style={{\n fontFamily: FONT_BODY,\n fontWeight: 500,\n fontSize: 14,\n color: C.black,\n lineHeight: \"24px\",\n }}\n >\n {title}\n </span>\n <span style={{ fontFamily: FONT_BODY, fontSize: 14, color: C.muted, lineHeight: \"24px\" }}>\n {summary}\n </span>\n </div>\n {expanded && bullets && (\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 12 }}>\n {bullets.map((b, i) => (\n <CitationRow key={i} {...b} />\n ))}\n </div>\n )}\n <div style={{ display: \"flex\", gap: 16 }}>\n <div style={{ display: \"flex\", alignItems: \"center\", gap: 4 }}>\n <Phone size={12} color={C.ink} strokeWidth={1.75} />\n <span style={{ fontFamily: FONT_BODY, fontSize: 12, color: C.ink }}>{calls}</span>\n </div>\n <div style={{ display: \"flex\", alignItems: \"center\", gap: 4 }}>\n <TrendingUp size={12} color={C.ink} strokeWidth={1.75} />\n <span style={{ fontFamily: FONT_BODY, fontSize: 12, color: C.ink }}>{delta}</span>\n </div>\n </div>\n </div>\n {expanded ? (\n <ChevronUp size={20} color={C.ink} strokeWidth={2} />\n ) : (\n <ChevronDown size={20} color={C.ink} strokeWidth={2} />\n )}\n </div>\n );\n}\n\nfunction PercentRow({ label, value }) {\n return (\n <div\n style={{\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n padding: \"8px 8px 12px\",\n borderBottom: `1px solid ${C.border}`,\n fontFamily: FONT_BODY,\n fontSize: 13,\n lineHeight: \"1.2\",\n }}\n >\n <span style={{ color: C.ink }}>{label}</span>\n <span style={{ color: C.muted }}>{value}</span>\n </div>\n );\n}\n\nfunction CompassDots({ value = 0, max = 5 }) {\n const v = typeof value === \"number\" ? value : parseFloat(value) || 0;\n const full = Math.floor(v);\n const hasPartial = v % 1 > 0 && full < max;\n return (\n <div style={{ display: \"flex\", gap: 4 }}>\n {Array.from({ length: max }).map((_, i) => {\n if (i < full) {\n return (\n <span\n key={i}\n style={{\n width: 10,\n height: 10,\n borderRadius: \"50%\",\n background: C.black,\n display: \"inline-block\",\n }}\n />\n );\n }\n if (i === full && hasPartial) {\n return (\n <span\n key={i}\n style={{\n width: 10,\n height: 10,\n borderRadius: \"50%\",\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n }}\n >\n <span\n style={{\n width: 6,\n height: 6,\n borderRadius: \"50%\",\n background: C.black,\n display: \"inline-block\",\n }}\n />\n </span>\n );\n }\n return (\n <span\n key={i}\n style={{\n width: 10,\n height: 10,\n borderRadius: \"50%\",\n background: C.white,\n border: `1px solid ${C.border}`,\n display: \"inline-block\",\n boxSizing: \"border-box\",\n }}\n />\n );\n })}\n </div>\n );\n}\n\nexport const DEFAULT_SESSION_COLUMNS = [\n { id: \"title\", label: \"Title\", width: 220, sortable: true, filterable: true },\n { id: \"date\", label: \"Date\", width: 170, sortable: true },\n { id: \"duration\", label: \"Duration\", width: 170, sortable: true },\n { id: \"lift\", label: \"Lift\", width: 120, sortable: true },\n {\n id: \"compass\",\n label: \"Compass Score\",\n width: 220,\n sortable: true,\n render: (value) => {\n const num = typeof value === \"number\" ? value : parseFloat(value) || 0;\n return (\n <span style={{ display: \"inline-flex\", alignItems: \"center\", gap: 12 }}>\n <span style={{ minWidth: 32 }}>{value}</span>\n <CompassDots value={num} />\n </span>\n );\n },\n },\n];\n\n\nfunction SubSectionHeading({ icon: Icon, title }) {\n return (\n <div style={{ display: \"flex\", alignItems: \"center\", gap: 16, width: \"100%\" }}>\n <div\n style={{\n width: 34,\n height: 34,\n borderRadius: 9999,\n background: C.iconCircle,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexShrink: 0,\n }}\n >\n <Icon size={20} color={C.ink} strokeWidth={1.75} />\n </div>\n <span\n style={{\n fontFamily: FONT_DISPLAY,\n fontWeight: 600,\n fontSize: 16,\n color: C.ink,\n lineHeight: 1.2,\n }}\n >\n {title}\n </span>\n </div>\n );\n}\n\nexport default function PerformanceDetailsPage({\n agentName = \"\",\n startDate = \"\",\n endDate = \"\",\n totalCalls = \"\",\n onBack,\n className = \"\",\n // KPI strip\n kpiBaseline = { value: \"\", label: \"\", sub: \"\", trend: \"up\" },\n kpiAgentLift = { value: \"\", label: \"\", sub: \"\", trend: \"down\" },\n kpiScore = { value: \"\", label: \"\", sub: \"\", trend: \"up\" },\n // Chart cards (Baseline / Agent Lift / Score / CSAT / Volume)\n // Each takes { value, delta, yLabels?, xLabels?, points? }.\n // points is an array of [x, y] pairs OR a flat array of y-numbers.\n baselineChart = { value: \"\", delta: \"\" },\n agentLiftChart = { value: \"\", delta: \"\" },\n scoreChart = { value: \"\", delta: \"\" },\n csatChart = { value: \"\", delta: \"\" },\n volumeChart = { value: \"\", delta: \"\" },\n // Insight sections\n guidanceItems = [],\n strengthItems = [],\n callDrivers = [],\n callParadigms = [],\n // Sessions table\n sessions = [],\n sessionColumns = [],\n initialPageSize = 10,\n}) {\n return (\n <div\n className={className}\n style={{\n background: C.white,\n fontFamily: FONT_BODY,\n color: C.ink,\n width: \"100%\",\n minWidth: 1192,\n boxSizing: \"border-box\",\n display: \"flex\",\n flexDirection: \"column\",\n }}\n >\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: 8,\n padding: \"23px 32px\",\n minHeight: 78,\n boxSizing: \"border-box\",\n }}\n >\n <button\n type=\"button\"\n aria-label=\"Back\"\n onClick={onBack}\n style={{\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n width: 24,\n height: 24,\n background: \"transparent\",\n border: \"none\",\n cursor: \"pointer\",\n color: C.ink,\n padding: 0,\n flexShrink: 0,\n }}\n >\n <ArrowLeft size={20} strokeWidth={1.75} />\n </button>\n <div\n style={{\n paddingLeft: 16,\n borderLeft: `1px solid ${C.border}`,\n flex: 1,\n minWidth: 0,\n alignSelf: \"stretch\",\n display: \"flex\",\n alignItems: \"center\",\n }}\n >\n <h1\n style={{\n fontFamily: FONT_DISPLAY,\n fontSize: 24,\n fontWeight: 400,\n color: C.ink,\n margin: 0,\n lineHeight: 1,\n whiteSpace: \"nowrap\",\n }}\n >\n {agentName}\n </h1>\n </div>\n <button\n type=\"button\"\n style={{\n display: \"inline-flex\",\n alignItems: \"center\",\n gap: 8,\n height: 32,\n padding: \"0 16px\",\n borderRadius: 10,\n border: `1px solid ${C.neutralBorder}`,\n background: C.white,\n cursor: \"pointer\",\n fontFamily: FONT_BODY,\n fontSize: 14,\n lineHeight: \"24px\",\n color: C.neutral800,\n flexShrink: 0,\n }}\n >\n <Download size={18} strokeWidth={1.75} />\n Export Data\n </button>\n </div>\n\n <div\n style={{\n padding: \"0 32px 32px\",\n display: \"flex\",\n flexDirection: \"column\",\n gap: 16,\n }}\n >\n <div\n style={{\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n gap: 16,\n paddingLeft: 49,\n }}\n >\n <div style={{ display: \"flex\", gap: 16, alignItems: \"center\" }}>\n <div style={{ display: \"inline-flex\", alignItems: \"center\", gap: 6 }}>\n <Calendar size={14} color={C.ink} strokeWidth={1.75} style={{ flexShrink: 0 }} />\n <span\n style={{\n fontFamily: FONT_BODY,\n fontSize: 12,\n color: C.ink,\n lineHeight: 1.5,\n }}\n >\n {startDate}\n </span>\n <ArrowRight size={12} color={C.ink} strokeWidth={1.75} style={{ flexShrink: 0 }} />\n <span\n style={{\n fontFamily: FONT_BODY,\n fontSize: 12,\n color: C.ink,\n lineHeight: 1.5,\n }}\n >\n {endDate}\n </span>\n </div>\n <div style={{ display: \"inline-flex\", alignItems: \"center\", gap: 6 }}>\n <Phone size={14} color={C.ink} strokeWidth={1.75} style={{ flexShrink: 0 }} />\n <span\n style={{\n fontFamily: FONT_BODY,\n fontSize: 12,\n color: C.ink,\n lineHeight: 1.5,\n }}\n >\n {totalCalls}\n </span>\n </div>\n </div>\n <div style={{ display: \"flex\", alignItems: \"center\", gap: 10 }}>\n <RangeChip label=\"8h\" />\n <RangeChip label=\"1d\" />\n <RangeChip label=\"7d\" />\n <RangeChip label=\"30d\" active />\n <FilterButton icon={Calendar}>Date Range</FilterButton>\n </div>\n </div>\n\n <div\n style={{\n background: C.beige,\n border: `1px solid ${C.border}`,\n borderRadius: 8,\n padding: 16,\n display: \"flex\",\n gap: 24,\n alignItems: \"center\",\n }}\n >\n <KpiCell value={kpiBaseline.value} label={kpiBaseline.label} sub={kpiBaseline.sub} trend={kpiBaseline.trend} />\n <ArrowRight size={20} color={C.ink} strokeWidth={1.75} style={{ flexShrink: 0 }} />\n <KpiCell value={kpiAgentLift.value} label={kpiAgentLift.label} sub={kpiAgentLift.sub} trend={kpiAgentLift.trend} />\n <ArrowRight size={20} color={C.ink} strokeWidth={1.75} style={{ flexShrink: 0 }} />\n <KpiCell value={kpiScore.value} label={kpiScore.label} sub={kpiScore.sub} trend={kpiScore.trend} />\n </div>\n\n <div style={{ display: \"flex\", gap: 24 }}>\n <ChartCard title=\"Baseline\" value={baselineChart.value} delta={baselineChart.delta}>\n <CompassLineChart\n yLabels={baselineChart.yLabels}\n xLabels={baselineChart.xLabels}\n points={baselineChart.points}\n />\n </ChartCard>\n <ChartCard title=\"Agent Lift\" value={agentLiftChart.value} delta={agentLiftChart.delta}>\n <CompassLineChart\n yLabels={agentLiftChart.yLabels}\n xLabels={agentLiftChart.xLabels}\n points={agentLiftChart.points}\n />\n </ChartCard>\n <ChartCard title=\"Score\" value={scoreChart.value} delta={scoreChart.delta}>\n <CompassLineChart\n yLabels={scoreChart.yLabels}\n xLabels={scoreChart.xLabels}\n points={scoreChart.points}\n />\n </ChartCard>\n </div>\n\n <div style={{ display: \"flex\", gap: 24 }}>\n <ChartCard title=\"CSAT\" value={csatChart.value} delta={csatChart.delta}>\n <CompassLineChart\n yLabels={csatChart.yLabels}\n xLabels={csatChart.xLabels}\n points={csatChart.points}\n />\n </ChartCard>\n <ChartCard title=\"Volume\" value={volumeChart.value} delta={volumeChart.delta}>\n <CompassLineChart\n yLabels={volumeChart.yLabels}\n xLabels={volumeChart.xLabels}\n points={volumeChart.points}\n />\n </ChartCard>\n </div>\n\n <div style={{ display: \"flex\", gap: 24, marginTop: 8 }}>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\", gap: 16, minWidth: 0 }}>\n <SectionHeading icon={Lightbulb} title=\"Guidance\" iconColor=\"#F4B400\" />\n <div style={{ display: \"flex\", flexDirection: \"column\" }}>\n {guidanceItems.map((item, i) => (\n <AccordionRow key={i} {...item} />\n ))}\n </div>\n </div>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\", gap: 16, minWidth: 0 }}>\n <SectionHeading icon={ShieldCheck} title=\"Strengths\" iconColor=\"#C98A5A\" />\n <div style={{ display: \"flex\", flexDirection: \"column\" }}>\n {strengthItems.map((item, i) => (\n <AccordionRow key={i} {...item} />\n ))}\n </div>\n </div>\n </div>\n\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 16, marginTop: 8 }}>\n <SectionHeading icon={Phone} title=\"Call Mix\" iconColor=\"#C98A5A\" />\n <div style={{ display: \"flex\", gap: 24 }}>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\", gap: 8, minWidth: 0 }}>\n <SubSectionHeading icon={FolderKanban} title=\"Drivers\" />\n <div style={{ display: \"flex\", flexDirection: \"column\" }}>\n {callDrivers.map((row, i) => (\n <PercentRow key={i} {...row} />\n ))}\n </div>\n </div>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\", gap: 8, minWidth: 0 }}>\n <SubSectionHeading icon={Layers} title=\"Paradigms\" />\n <div style={{ display: \"flex\", flexDirection: \"column\" }}>\n {callParadigms.map((row, i) => (\n <PercentRow key={i} {...row} />\n ))}\n </div>\n </div>\n </div>\n </div>\n\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 16, marginTop: 8 }}>\n <span\n style={{\n fontFamily: FONT_DISPLAY,\n fontWeight: 600,\n fontSize: 16,\n color: C.ink,\n lineHeight: 1.2,\n }}\n >\n Sessions History\n </span>\n <DataTable2\n data={sessions}\n columns={sessionColumns}\n initialPageSize={initialPageSize}\n />\n </div>\n </div>\n </div>\n );\n}\n","\"use client\";\n\nimport React from \"react\";\nimport {\n Download,\n ChevronDown,\n Calendar,\n Search,\n ChevronLeft,\n ChevronRight,\n TrendingUp,\n Lightbulb,\n ShieldCheck,\n Phone,\n Signal,\n FolderKanban,\n Layers,\n Check,\n} from \"lucide-react\";\nimport DataTable2 from \"../data/DataTable2\";\nimport PerformanceDetailsPage from \"./PerformanceDetailsPage\";\n\nconst EMPTY_STAT = { value: \"\", label: \"\", trend: \"up\" };\n\nconst C = {\n ink: \"#2E3236\",\n muted: \"#808183\",\n border: \"#D9D9D9\",\n borderSubtle: \"#E6E6E6\",\n iconCircle: \"#F3F7F7\",\n black: \"#0B0B0B\",\n white: \"#FFFFFF\",\n green: \"#00A66E\",\n red: \"#D04A4A\",\n neutralBorder: \"#BFBFBF\",\n neutralLight: \"#E6E6E6\",\n beige: \"rgba(243, 241, 229, 0.4)\",\n};\n\nconst FONT_DISPLAY = \"var(--font-sans, 'Averta', ui-sans-serif, system-ui, sans-serif)\";\nconst FONT_BODY = \"var(--font-sans, 'Averta', ui-sans-serif, system-ui, sans-serif)\";\n\nfunction Sparkline({ trend = \"up\", width = 49.618, height = 35 }) {\n const id = React.useId();\n const linePath =\n \"M1.00049 13.5213C7.85975 11.7032 8.88149 4.73912 13.7838 4.73912C19.8344 4.73912 23.6237 17.166 29.1281 17.166C34.5998 17.166 37.4149 4.88121 43.4004 8.61051C47.9764 11.4616 50.6186 1.00024 50.6186 1.00024\";\n const areaPath =\n \"M1.00049 16.692C8.88149 15.6975 8.88149 7.79403 13.7838 7.79403C19.8344 7.79403 23.6237 21.4034 29.1281 21.4034C34.5998 21.4034 37.4149 8.93821 43.4004 12.7223C47.9764 15.6152 50.6186 5.00024 50.6186 5.00024V36.0002C50.6186 36.0002 10.8223 36.0002 1.00049 36.0002C1.00049 28.8653 1.00049 19.4871 1.00049 16.692Z\";\n return (\n <svg\n width={width}\n height={height}\n viewBox=\"0 0 52 36\"\n fill=\"none\"\n style={{\n flexShrink: 0,\n transform: trend === \"down\" ? \"scaleX(-1)\" : undefined,\n }}\n >\n <defs>\n <linearGradient\n id={`spark-${id}`}\n x1=\"9.96776\"\n y1=\"16.2053\"\n x2=\"9.96776\"\n y2=\"36.0002\"\n gradientUnits=\"userSpaceOnUse\"\n >\n <stop stopColor={C.ink} />\n <stop offset=\"1\" stopColor={C.white} stopOpacity=\"0.01\" />\n </linearGradient>\n </defs>\n <path\n d={areaPath}\n fill={`url(#spark-${id})`}\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n opacity=\"0.1\"\n />\n <path\n d={linePath}\n stroke={C.ink}\n strokeWidth=\"2\"\n fill=\"none\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeDasharray={trend === \"down\" ? \"2 4\" : undefined}\n />\n </svg>\n );\n}\n\nfunction TrendArrow({ direction = \"up\", color = C.muted }) {\n const upPath =\n \"M12.4167 0.75H17.4167M17.4167 0.75V5.75M17.4167 0.75L10.3333 7.83333L6.16667 3.66667L0.75 9.08333\";\n const downPath =\n \"M12.4167 9.25H17.4167M17.4167 9.25V4.25M17.4167 9.25L10.3333 2.16667L6.16667 6.33333L0.75 0.91667\";\n return (\n <svg width={18} height={9.5} viewBox=\"0 0 19 10\" fill=\"none\" style={{ flexShrink: 0 }}>\n <path\n d={direction === \"up\" ? upPath : downPath}\n stroke={color}\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n );\n}\n\nfunction StatCard({ value, label, trend = \"up\", muted = false, beigeBg = false, style = {} }) {\n return (\n <div\n style={{\n background: beigeBg ? C.beige : C.white,\n border: `1px solid ${C.border}`,\n borderRadius: 8,\n padding: 16,\n display: \"flex\",\n flexDirection: \"column\",\n gap: 8,\n boxSizing: \"border-box\",\n ...style,\n }}\n >\n <div style={{ display: \"flex\", alignItems: \"flex-start\", justifyContent: \"space-between\" }}>\n <Sparkline trend={trend} />\n <TrendArrow direction={trend} />\n </div>\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 8, marginTop: 8 }}>\n <div\n style={{\n fontFamily: FONT_DISPLAY,\n fontSize: 28,\n fontWeight: 500,\n lineHeight: \"1.2\",\n color: muted ? C.muted : C.ink,\n letterSpacing: \"-0.01em\",\n }}\n >\n {value}\n </div>\n <div style={{ fontFamily: FONT_BODY, fontSize: 13, color: C.ink, lineHeight: \"1.2\" }}>{label}</div>\n </div>\n </div>\n );\n}\n\nfunction StatSubCell({ value, label, trend = \"up\", withDivider = false }) {\n return (\n <div\n style={{\n flex: 1,\n display: \"flex\",\n flexDirection: \"column\",\n gap: 8,\n paddingLeft: withDivider ? 24 : 0,\n borderLeft: withDivider ? `1px solid ${C.border}` : \"none\",\n minWidth: 0,\n }}\n >\n <div style={{ display: \"flex\", alignItems: \"flex-start\", justifyContent: \"space-between\" }}>\n <Sparkline trend={trend} />\n <TrendArrow direction={trend} />\n </div>\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 8, marginTop: 8 }}>\n <div\n style={{\n fontFamily: FONT_DISPLAY,\n fontSize: 28,\n fontWeight: 500,\n lineHeight: \"1.2\",\n color: C.muted,\n letterSpacing: \"-0.01em\",\n }}\n >\n {value}\n </div>\n <div style={{ fontFamily: FONT_BODY, fontSize: 13, color: C.ink, lineHeight: \"1.2\" }}>{label}</div>\n </div>\n </div>\n );\n}\n\nfunction FilterButton({ icon: Icon, children, trailing: Trailing }) {\n return (\n <button\n type=\"button\"\n style={{\n display: \"inline-flex\",\n alignItems: \"center\",\n gap: 8,\n height: 32,\n padding: \"0 16px\",\n borderRadius: 10,\n border: `1px solid ${C.neutralBorder}`,\n background: C.white,\n cursor: \"pointer\",\n fontFamily: FONT_BODY,\n fontSize: 14,\n color: \"#323232\",\n whiteSpace: \"nowrap\",\n }}\n >\n {Icon && <Icon size={18} strokeWidth={1.75} />}\n {children}\n {Trailing && <Trailing size={16} strokeWidth={2} />}\n </button>\n );\n}\n\nfunction RangeChip({ label, active = false }) {\n return (\n <button\n type=\"button\"\n style={{\n height: 32,\n minWidth: 31,\n padding: \"0 12px\",\n borderRadius: 10,\n border: active ? \"none\" : `1px solid ${C.borderSubtle}`,\n background: active ? C.black : C.white,\n color: active ? C.white : C.black,\n fontFamily: FONT_BODY,\n fontSize: 14,\n cursor: \"pointer\",\n }}\n >\n {label}\n </button>\n );\n}\n\nfunction SearchBar() {\n return (\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: 8,\n height: 32,\n width: 260,\n padding: \"0 12px\",\n borderRadius: 11,\n background: C.white,\n border: `1px solid ${C.neutralLight}`,\n }}\n >\n <Search size={16} color=\"#989898\" strokeWidth={2} />\n <input\n placeholder=\"Search\"\n style={{\n flex: 1,\n border: \"none\",\n outline: \"none\",\n background: \"transparent\",\n fontFamily: FONT_BODY,\n fontSize: 14,\n color: C.ink,\n }}\n />\n </div>\n );\n}\n\nfunction CompassRating({ value = 0, max = 5 }) {\n const v = typeof value === \"number\" ? value : parseFloat(value) || 0;\n const full = Math.floor(v);\n const hasPartial = v % 1 > 0 && full < max;\n return (\n <div style={{ display: \"flex\", gap: 4 }}>\n {Array.from({ length: max }).map((_, i) => {\n if (i < full) {\n return (\n <span\n key={i}\n style={{\n width: 10,\n height: 10,\n borderRadius: \"50%\",\n background: C.black,\n display: \"inline-block\",\n }}\n />\n );\n }\n if (i === full && hasPartial) {\n return (\n <span\n key={i}\n style={{\n width: 10,\n height: 10,\n borderRadius: \"50%\",\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n }}\n >\n <span\n style={{\n width: 6,\n height: 6,\n borderRadius: \"50%\",\n background: C.black,\n display: \"inline-block\",\n }}\n />\n </span>\n );\n }\n return (\n <span\n key={i}\n style={{\n width: 10,\n height: 10,\n borderRadius: \"50%\",\n background: C.white,\n border: `1px solid ${C.border}`,\n display: \"inline-block\",\n boxSizing: \"border-box\",\n }}\n />\n );\n })}\n </div>\n );\n}\n\nexport const DEFAULT_AGENT_COLUMNS = [\n { id: \"agent\", label: \"Agent\", width: 180, sortable: true, filterable: true },\n { id: \"supervisor\", label: \"Supervisor\", width: 170, sortable: true, filterable: true },\n { id: \"calls\", label: \"Calls\", width: 100, sortable: true },\n { id: \"baseline\", label: \"Baseline\", width: 110, sortable: true },\n { id: \"lift\", label: \"Lift\", width: 100, sortable: true },\n { id: \"score\", label: \"Score\", width: 100, sortable: true },\n {\n id: \"compass\",\n label: \"Compass Score\",\n width: 200,\n sortable: true,\n render: (value) => (\n <span style={{ display: \"inline-flex\", alignItems: \"center\", gap: 12 }}>\n <span style={{ minWidth: 32 }}>{value}</span>\n <CompassRating value={typeof value === \"number\" ? value : 0} />\n </span>\n ),\n },\n { id: \"totalDuration\", label: \"Total Duration\", width: 150, sortable: true },\n { id: \"avgDuration\", label: \"Average Duration\", width: 170, sortable: true },\n];\n\n\nfunction SectionHeading({ icon: Icon, title, trailing, iconColor = C.ink, bordered = false }) {\n return (\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: 8,\n width: \"100%\",\n paddingBottom: bordered ? 12 : 0,\n borderBottom: bordered ? `1px solid ${C.border}` : \"none\",\n }}\n >\n <div\n style={{\n width: 24,\n height: 24,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexShrink: 0,\n }}\n >\n <Icon size={22} color={iconColor} strokeWidth={1.75} />\n </div>\n <div\n style={{\n flex: 1,\n fontFamily: FONT_DISPLAY,\n fontWeight: 700,\n fontSize: 16,\n color: C.ink,\n lineHeight: \"1.2\",\n textTransform: \"uppercase\",\n letterSpacing: \"0.02em\",\n }}\n >\n {title}\n </div>\n {trailing && (\n <div style={{ fontFamily: FONT_BODY, fontSize: 14, color: C.ink }}>{trailing}</div>\n )}\n </div>\n );\n}\n\nfunction SubSectionHeading({ icon: Icon, title }) {\n return (\n <div style={{ display: \"flex\", alignItems: \"center\", gap: 16, width: \"100%\" }}>\n <div\n style={{\n width: 34,\n height: 34,\n borderRadius: 9999,\n background: C.iconCircle,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexShrink: 0,\n }}\n >\n <Icon size={20} color={C.ink} strokeWidth={1.75} />\n </div>\n <span\n style={{\n fontFamily: FONT_DISPLAY,\n fontWeight: 700,\n fontSize: 16,\n color: C.ink,\n lineHeight: \"24px\",\n }}\n >\n {title}\n </span>\n </div>\n );\n}\n\nconst DEFAULT_BULLETS = [\n { text: \"Bullet point one\", citation: \"Q:83\", date: \"2026-04-14\" },\n { text: \"Bullet point one\", citation: \"Q:83\", date: \"2026-04-14\" },\n { text: \"Bullet point one\", citation: \"Q:83\", date: \"2026-04-14\" },\n];\n\nfunction AccordionItem({ title, summary, calls, percent, bullets, defaultExpanded = false }) {\n const [expanded, setExpanded] = React.useState(defaultExpanded);\n const rows = bullets && bullets.length > 0 ? bullets : DEFAULT_BULLETS;\n return (\n <button\n type=\"button\"\n onClick={() => setExpanded((v) => !v)}\n aria-expanded={expanded}\n style={{\n borderTop: `1px solid ${C.border}`,\n borderLeft: \"none\",\n borderRight: \"none\",\n borderBottom: \"none\",\n background: \"transparent\",\n padding: 16,\n display: \"flex\",\n gap: 12,\n alignItems: \"flex-start\",\n cursor: \"pointer\",\n width: \"100%\",\n textAlign: \"left\",\n fontFamily: FONT_BODY,\n }}\n >\n <div\n style={{\n flex: 1,\n display: \"flex\",\n flexDirection: \"column\",\n gap: expanded ? 16 : 12,\n minWidth: 0,\n }}\n >\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 12 }}>\n <div\n style={{\n fontFamily: FONT_DISPLAY,\n fontWeight: 600,\n fontSize: 14,\n color: C.black,\n lineHeight: \"24px\",\n }}\n >\n {title}\n </div>\n <div style={{ fontFamily: FONT_BODY, fontSize: 14, color: C.muted, lineHeight: \"24px\" }}>\n {summary}\n </div>\n </div>\n {expanded && (\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 12 }}>\n {rows.map((b, i) => (\n <div\n key={i}\n style={{\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n fontFamily: FONT_BODY,\n fontSize: 14,\n color: C.ink,\n lineHeight: \"24px\",\n gap: 16,\n }}\n >\n <span>{b.text}</span>\n <span style={{ display: \"inline-flex\", gap: 4, whiteSpace: \"nowrap\" }}>\n <span style={{ color: C.ink }}>{b.citation}</span>\n <span style={{ color: C.muted }}>({b.date})</span>\n </span>\n </div>\n ))}\n </div>\n )}\n <div style={{ display: \"flex\", gap: 16 }}>\n <div style={{ display: \"flex\", alignItems: \"center\", gap: 4 }}>\n <Phone size={14} color={C.ink} strokeWidth={1.75} />\n <span style={{ fontFamily: FONT_BODY, fontSize: 12, color: C.ink, lineHeight: 1.5 }}>\n {calls}\n </span>\n </div>\n <div style={{ display: \"flex\", alignItems: \"center\", gap: 4 }}>\n <TrendingUp size={14} color={C.ink} strokeWidth={1.75} />\n <span style={{ fontFamily: FONT_BODY, fontSize: 12, color: C.ink, lineHeight: 1.5 }}>\n {percent}\n </span>\n </div>\n </div>\n </div>\n <ChevronDown\n size={20}\n color={C.ink}\n strokeWidth={2}\n style={{\n flexShrink: 0,\n transform: expanded ? \"rotate(180deg)\" : \"none\",\n transition: \"transform 150ms ease\",\n }}\n />\n </button>\n );\n}\n\nfunction PercentRow({ label, value }) {\n return (\n <div\n style={{\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n padding: \"12px 0\",\n borderBottom: `1px solid ${C.border}`,\n fontFamily: FONT_BODY,\n fontSize: 13,\n lineHeight: \"24px\",\n }}\n >\n <span style={{ color: C.ink }}>{label}</span>\n <span style={{ color: C.muted }}>{value}</span>\n </div>\n );\n}\n\nexport default function PerformancePanel({\n className = \"\",\n onAgentClick,\n // Header text\n title = \"Performance\",\n subtitle = \"Agent performance metrics, trends and coaching Insights\",\n dateRangeLabel = \"\",\n // View-by dropdown\n viewByOptions = [],\n initialViewBy = \"\",\n // KPI strip\n volumeStat = EMPTY_STAT,\n compassStat = EMPTY_STAT,\n baselineSubStat = EMPTY_STAT,\n agentLiftSubStat = EMPTY_STAT,\n scoreSubStat = EMPTY_STAT,\n // Agent table\n agentRows = [],\n agentColumns = [],\n initialPageSize = 10,\n // Insight sections\n guidanceItems = [],\n strengthItems = [],\n callDrivers = [],\n callParadigms = [],\n topSignalsLeft = [],\n topSignalsRight = [],\n topSignalsTrailing = \"\",\n}) {\n const [selectedAgent, setSelectedAgent] = React.useState(null);\n const [viewByOpen, setViewByOpen] = React.useState(false);\n const [viewBy, setViewBy] = React.useState(initialViewBy);\n const viewByTriggerRef = React.useRef(null);\n const viewByPopoverRef = React.useRef(null);\n\n React.useEffect(() => {\n if (!viewByOpen) return;\n const handler = (e) => {\n if (\n viewByPopoverRef.current?.contains(e.target) ||\n viewByTriggerRef.current?.contains(e.target)\n ) {\n return;\n }\n setViewByOpen(false);\n };\n document.addEventListener(\"mousedown\", handler);\n return () => document.removeEventListener(\"mousedown\", handler);\n }, [viewByOpen]);\n\n const viewByLabel =\n viewByOptions.find((o) => o.id === viewBy)?.label || (viewByOptions[0]?.label ?? \"\");\n\n const handleRowClick = (row) => {\n if (onAgentClick) {\n onAgentClick(row);\n return;\n }\n setSelectedAgent(row);\n };\n\n if (selectedAgent) {\n return (\n <PerformanceDetailsPage\n className={className}\n agentName={selectedAgent.agent}\n startDate=\"2026-03-16\"\n endDate=\"2026-04-15\"\n totalCalls={`${selectedAgent.calls} Calls`}\n onBack={() => setSelectedAgent(null)}\n />\n );\n }\n\n return (\n <div\n className={className}\n style={{\n background: C.white,\n fontFamily: FONT_BODY,\n color: C.ink,\n width: \"100%\",\n minWidth: 1192,\n boxSizing: \"border-box\",\n padding: \"12px 32px 32px\",\n display: \"flex\",\n flexDirection: \"column\",\n gap: 24,\n }}\n >\n <div style={{ display: \"flex\", alignItems: \"flex-start\", gap: 8, paddingTop: 12 }}>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\", gap: 4 }}>\n <h1\n style={{\n fontFamily: FONT_DISPLAY,\n fontSize: 24,\n fontWeight: 500,\n color: C.ink,\n margin: 0,\n lineHeight: \"1.2\",\n letterSpacing: \"-0.01em\",\n }}\n >\n {title}\n </h1>\n <p style={{ fontFamily: FONT_BODY, fontSize: 14, color: \"#1E1E1E\", margin: 0, lineHeight: \"1.4\" }}>\n {subtitle}\n </p>\n </div>\n <button\n type=\"button\"\n style={{\n display: \"inline-flex\",\n alignItems: \"center\",\n gap: 8,\n height: 32,\n padding: \"0 16px\",\n borderRadius: 10,\n border: `1px solid ${C.neutralBorder}`,\n background: C.white,\n cursor: \"pointer\",\n fontFamily: FONT_BODY,\n fontSize: 14,\n color: \"#323232\",\n }}\n >\n <Download size={18} strokeWidth={1.75} />\n Export CSV\n </button>\n </div>\n\n <div style={{ display: \"flex\", justifyContent: \"space-between\", alignItems: \"center\" }}>\n <div style={{ position: \"relative\" }}>\n <button\n type=\"button\"\n ref={viewByTriggerRef}\n onClick={() => setViewByOpen((v) => !v)}\n aria-haspopup=\"listbox\"\n aria-expanded={viewByOpen}\n style={{\n display: \"inline-flex\",\n alignItems: \"center\",\n gap: 8,\n height: 32,\n padding: \"0 16px\",\n borderRadius: 10,\n border: `1px solid ${C.neutralBorder}`,\n background: C.white,\n cursor: \"pointer\",\n fontFamily: FONT_BODY,\n fontSize: 14,\n lineHeight: \"24px\",\n color: \"#323232\",\n whiteSpace: \"nowrap\",\n }}\n >\n {viewByLabel}\n <ChevronDown\n size={20}\n strokeWidth={1.75}\n style={{\n transform: viewByOpen ? \"rotate(180deg)\" : \"none\",\n transition: \"transform 120ms ease\",\n }}\n />\n </button>\n {viewByOpen && (\n <div\n ref={viewByPopoverRef}\n role=\"listbox\"\n style={{\n position: \"absolute\",\n top: 36,\n left: 0,\n zIndex: 20,\n background: C.white,\n border: `1px solid ${C.border}`,\n borderRadius: 4,\n boxShadow: \"-2px 2px 1px rgba(0, 0, 0, 0.25)\",\n display: \"flex\",\n flexDirection: \"column\",\n minWidth: 144,\n fontFamily: FONT_BODY,\n }}\n >\n <div\n style={{\n padding: 12,\n fontFamily: FONT_DISPLAY,\n fontWeight: 700,\n fontSize: 13,\n color: C.ink,\n lineHeight: 1.2,\n }}\n >\n View by\n </div>\n {viewByOptions.map((opt) => {\n const isSelected = viewBy === opt.id;\n return (\n <button\n key={opt.id}\n type=\"button\"\n role=\"option\"\n aria-selected={isSelected}\n onClick={() => {\n setViewBy(opt.id);\n setViewByOpen(false);\n }}\n style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: 8,\n padding: isSelected ? 12 : \"12px 12px 12px 40px\",\n borderTop: `1px solid ${C.border}`,\n borderLeft: \"none\",\n borderRight: \"none\",\n borderBottom: \"none\",\n background: \"transparent\",\n cursor: \"pointer\",\n textAlign: \"left\",\n fontFamily: FONT_BODY,\n fontSize: 13,\n lineHeight: 1.2,\n color: C.ink,\n width: \"100%\",\n }}\n >\n {isSelected && (\n <Check size={20} color={C.ink} strokeWidth={1.75} style={{ flexShrink: 0 }} />\n )}\n <span>{opt.label}</span>\n </button>\n );\n })}\n </div>\n )}\n </div>\n <div style={{ display: \"flex\", gap: 10, alignItems: \"center\" }}>\n {dateRangeLabel && (\n <span style={{ fontFamily: FONT_BODY, fontSize: 13, color: C.ink }}>{dateRangeLabel}</span>\n )}\n <RangeChip label=\"8h\" />\n <RangeChip label=\"1d\" />\n <RangeChip label=\"7d\" />\n <RangeChip label=\"30d\" active />\n <FilterButton icon={Calendar}>Date Range</FilterButton>\n <SearchBar />\n </div>\n </div>\n\n <div style={{ display: \"flex\", gap: 24 }}>\n <StatCard value={volumeStat.value} label={volumeStat.label} trend={volumeStat.trend} style={{ width: 264, flexShrink: 0 }} />\n <StatCard value={compassStat.value} label={compassStat.label} trend={compassStat.trend} style={{ width: 264, flexShrink: 0 }} />\n <div\n style={{\n flex: 1,\n background: C.beige,\n border: `1px solid ${C.border}`,\n borderRadius: 8,\n padding: 16,\n display: \"flex\",\n gap: 24,\n alignItems: \"stretch\",\n boxSizing: \"border-box\",\n }}\n >\n <StatSubCell value={baselineSubStat.value} label={baselineSubStat.label} trend={baselineSubStat.trend} />\n <StatSubCell value={agentLiftSubStat.value} label={agentLiftSubStat.label} trend={agentLiftSubStat.trend} withDivider />\n <StatSubCell value={scoreSubStat.value} label={scoreSubStat.label} trend={scoreSubStat.trend} withDivider />\n </div>\n </div>\n\n <DataTable2\n data={agentRows}\n columns={agentColumns}\n initialPageSize={initialPageSize}\n onRowClick={handleRowClick}\n />\n\n <div style={{ display: \"flex\", gap: 24 }}>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\", gap: 16 }}>\n <SectionHeading icon={Lightbulb} title=\"Guidance\" iconColor=\"#C98A5A\" />\n <div style={{ display: \"flex\", flexDirection: \"column\", borderBottom: `1px solid ${C.border}` }}>\n {guidanceItems.map((item, i) => (\n <AccordionItem key={i} {...item} />\n ))}\n </div>\n </div>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\", gap: 16 }}>\n <SectionHeading icon={ShieldCheck} title=\"Strengths\" iconColor=\"#C98A5A\" />\n <div style={{ display: \"flex\", flexDirection: \"column\", borderBottom: `1px solid ${C.border}` }}>\n {strengthItems.map((item, i) => (\n <AccordionItem key={i} {...item} />\n ))}\n </div>\n </div>\n </div>\n\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 16 }}>\n <SectionHeading icon={Phone} title=\"Call Mix\" iconColor=\"#C98A5A\" />\n <div style={{ display: \"flex\", gap: 24 }}>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\", gap: 8 }}>\n <SubSectionHeading icon={FolderKanban} title=\"Drivers\" />\n <div style={{ display: \"flex\", flexDirection: \"column\" }}>\n {callDrivers.map((row, i) => (\n <PercentRow key={i} {...row} />\n ))}\n </div>\n </div>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\", gap: 8 }}>\n <SubSectionHeading icon={Layers} title=\"Paradigms\" />\n <div style={{ display: \"flex\", flexDirection: \"column\" }}>\n {callParadigms.map((row, i) => (\n <PercentRow key={i} {...row} />\n ))}\n </div>\n </div>\n </div>\n </div>\n\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 16 }}>\n <SectionHeading icon={Signal} title=\"Top Signals\" iconColor=\"#C98A5A\" trailing={topSignalsTrailing} bordered />\n <div style={{ display: \"flex\", gap: 24 }}>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\" }}>\n {topSignalsLeft.map((row, i) => (\n <PercentRow key={i} {...row} />\n ))}\n </div>\n <div style={{ flex: 1, display: \"flex\", flexDirection: \"column\" }}>\n {topSignalsRight.map((row, i) => (\n <PercentRow key={i} {...row} />\n ))}\n </div>\n </div>\n </div>\n </div>\n );\n}\n","\"use client\";\n\nimport React from \"react\";\nimport { Search, Check } from \"lucide-react\";\n\nconst C = {\n white: \"#FFFFFF\",\n black: \"#0B0B0B\",\n borderSubtle: \"#E6E6E6\",\n border: \"#D9D9D9\",\n searchBg: \"#D8D8D8\",\n rowSelected: \"#F2F2F0\",\n textMuted: \"#989898\",\n textMid: \"#676767\",\n textDark: \"#323232\",\n applyBg: \"#2E3236\",\n scrollbar: \"#D5D9E2\",\n};\n\nconst FONT = \"var(--font-sans, 'Averta', ui-sans-serif, system-ui, sans-serif)\";\n\nfunction Checkbox({ checked, mutedFill = false }) {\n return (\n <span\n style={{\n width: 20,\n height: 20,\n borderRadius: 4,\n background: checked ? C.black : mutedFill ? C.rowSelected : C.white,\n border: `1px solid ${checked ? C.black : C.textDark}`,\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexShrink: 0,\n boxSizing: \"border-box\",\n }}\n >\n {checked && <Check size={14} color={C.white} strokeWidth={3} />}\n </span>\n );\n}\n\nfunction Row({ supervisor, checked, muted = false, onToggle }) {\n return (\n <button\n type=\"button\"\n onClick={onToggle}\n style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: 6,\n height: 32,\n padding: \"0 16px 0 8px\",\n borderRadius: 10,\n border: \"none\",\n background: checked ? C.rowSelected : \"transparent\",\n cursor: \"pointer\",\n width: \"100%\",\n textAlign: \"left\",\n fontFamily: FONT,\n flexShrink: 0,\n }}\n >\n <span style={{ display: \"flex\", alignItems: \"center\", gap: 12, flex: 1, minWidth: 0 }}>\n <Checkbox checked={checked} mutedFill={muted} />\n <span\n style={{\n fontSize: 14,\n lineHeight: \"20px\",\n fontWeight: 400,\n color: !checked && muted ? C.textMid : C.black,\n whiteSpace: \"nowrap\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n }}\n >\n {supervisor.name}\n </span>\n </span>\n <span\n style={{\n fontSize: 12,\n fontWeight: 500,\n lineHeight: 1,\n color: !checked && muted ? C.textMid : C.black,\n whiteSpace: \"nowrap\",\n padding: \"4px 8px\",\n }}\n >\n {supervisor.agentCount} agents\n </span>\n </button>\n );\n}\n\nfunction MetaRow({ left, right }) {\n return (\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n height: 14,\n fontSize: 12,\n lineHeight: 1.5,\n fontFamily: FONT,\n flexShrink: 0,\n }}\n >\n {left}\n {right}\n </div>\n );\n}\n\nfunction ActionLink({ children, onClick, faded = false }) {\n return (\n <button\n type=\"button\"\n onClick={onClick}\n style={{\n background: \"transparent\",\n border: \"none\",\n padding: 0,\n cursor: onClick ? \"pointer\" : \"default\",\n fontFamily: FONT,\n fontSize: 12,\n fontWeight: 500,\n color: faded ? C.textMuted : C.textDark,\n whiteSpace: \"nowrap\",\n }}\n >\n {children}\n </button>\n );\n}\n\nexport default function SupervisorSelect({\n supervisors = [],\n value = [],\n onApply,\n onClose,\n totalLabel,\n className = \"\",\n style,\n}) {\n const initialValueRef = React.useRef(value);\n const [staged, setStaged] = React.useState(value);\n const [query, setQuery] = React.useState(\"\");\n\n React.useEffect(() => {\n initialValueRef.current = value;\n setStaged(value);\n }, [value]);\n\n const stagedSet = React.useMemo(() => new Set(staged), [staged]);\n\n const isSearching = query.trim().length > 0;\n\n const filtered = React.useMemo(() => {\n const q = query.trim().toLowerCase();\n if (!q) return supervisors;\n return supervisors.filter((s) => s.name.toLowerCase().includes(q));\n }, [supervisors, query]);\n\n const allSelected = supervisors.length > 0 && staged.length === supervisors.length;\n const noneSelected = staged.length === 0;\n const isPartial = !allSelected && !noneSelected;\n\n const toggle = (id) => {\n setStaged((prev) => (prev.includes(id) ? prev.filter((x) => x !== id) : [...prev, id]));\n };\n const selectAll = () => setStaged(supervisors.map((s) => s.id));\n const deselectAll = () => setStaged([]);\n const reset = () => setStaged(initialValueRef.current);\n const clearSearch = () => setQuery(\"\");\n const apply = () => {\n onApply?.(staged);\n onClose?.();\n };\n\n const headerCount = isSearching\n ? `${filtered.length} Result${filtered.length === 1 ? \"\" : \"s\"}`\n : totalLabel || `${supervisors.length} Supervisors`;\n\n let headerRight;\n if (isSearching) {\n headerRight = filtered.length > 0 ? <ActionLink onClick={selectAll}>Select all</ActionLink> : null;\n } else if (allSelected) {\n headerRight = <ActionLink onClick={deselectAll}>Deselect all</ActionLink>;\n } else if (noneSelected) {\n headerRight = <ActionLink onClick={selectAll}>Select all</ActionLink>;\n } else {\n headerRight = (\n <span style={{ display: \"inline-flex\", gap: 12 }}>\n <ActionLink onClick={selectAll}>Select all</ActionLink>\n <ActionLink onClick={deselectAll}>Deselect all</ActionLink>\n </span>\n );\n }\n\n // Decide which sections to render\n const renderPartial = !isSearching && isPartial;\n const flatList = isSearching ? filtered : renderPartial ? [] : supervisors;\n const partialSelected = renderPartial ? supervisors.filter((s) => stagedSet.has(s.id)) : [];\n const partialOthers = renderPartial ? supervisors.filter((s) => !stagedSet.has(s.id)) : [];\n\n return (\n <div\n className={className}\n style={{\n width: 262,\n background: C.white,\n border: `1px solid ${C.borderSubtle}`,\n borderRadius: 10,\n padding: 12,\n boxSizing: \"border-box\",\n display: \"flex\",\n flexDirection: \"column\",\n gap: 6,\n fontFamily: FONT,\n boxShadow: \"0 8px 24px rgba(11, 11, 11, 0.08)\",\n ...style,\n }}\n >\n <div\n style={{\n background: C.searchBg,\n height: 32,\n borderRadius: 10,\n padding: 1,\n display: \"flex\",\n alignItems: \"center\",\n }}\n >\n <div\n style={{\n background: C.white,\n flex: 1,\n height: 30,\n borderRadius: 10,\n display: \"flex\",\n alignItems: \"center\",\n gap: 8,\n padding: \"0 8px\",\n }}\n >\n <Search size={16} color={C.textMuted} strokeWidth={2} />\n <input\n type=\"text\"\n value={query}\n onChange={(e) => setQuery(e.target.value)}\n placeholder=\"Search supervisors...\"\n style={{\n flex: 1,\n border: \"none\",\n outline: \"none\",\n background: \"transparent\",\n fontFamily: FONT,\n fontSize: 14,\n color: C.black,\n minWidth: 0,\n }}\n />\n </div>\n </div>\n\n <MetaRow\n left={\n <span style={{ color: C.textMuted, fontWeight: 400 }}>{headerCount}</span>\n }\n right={headerRight}\n />\n\n {flatList.length > 0 && (\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 6 }}>\n {flatList.map((s) => (\n <Row\n key={s.id}\n supervisor={s}\n checked={stagedSet.has(s.id)}\n muted={false}\n onToggle={() => toggle(s.id)}\n />\n ))}\n </div>\n )}\n\n {renderPartial && (\n <>\n {partialSelected.length > 0 && (\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 6 }}>\n {partialSelected.map((s) => (\n <Row key={s.id} supervisor={s} checked onToggle={() => toggle(s.id)} />\n ))}\n </div>\n )}\n {partialSelected.length > 0 && partialOthers.length > 0 && (\n <div style={{ height: 1, background: C.border, margin: \"4px 0\" }} />\n )}\n {partialOthers.length > 0 && (\n <>\n <MetaRow\n left={<span style={{ color: C.textMuted, fontWeight: 400 }}>Others</span>}\n right={null}\n />\n <div style={{ display: \"flex\", flexDirection: \"column\", gap: 6 }}>\n {partialOthers.map((s) => (\n <Row\n key={s.id}\n supervisor={s}\n checked={false}\n muted\n onToggle={() => toggle(s.id)}\n />\n ))}\n </div>\n </>\n )}\n </>\n )}\n\n {isSearching && filtered.length === 0 && (\n <div\n style={{\n padding: \"16px 8px\",\n textAlign: \"center\",\n fontSize: 14,\n color: C.textMid,\n fontFamily: FONT,\n }}\n >\n No results for &ldquo;{query}&rdquo;\n </div>\n )}\n {isSearching && filtered.length > 0 && supervisors.length > filtered.length && (\n <div\n style={{\n padding: \"10px 8px\",\n textAlign: \"center\",\n fontSize: 14,\n color: C.textMid,\n fontFamily: FONT,\n }}\n >\n No other results for &ldquo;{query}&rdquo;\n </div>\n )}\n\n <div style={{ height: 1, background: C.border, margin: \"2px 0\" }} />\n\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n height: 30,\n }}\n >\n {isSearching ? (\n <ActionLink onClick={clearSearch}>Clear search</ActionLink>\n ) : (\n <ActionLink onClick={reset}>Reset</ActionLink>\n )}\n <button\n type=\"button\"\n onClick={apply}\n style={{\n background: C.applyBg,\n color: C.white,\n border: \"none\",\n borderRadius: 10,\n height: 28,\n padding: \"0 14px\",\n fontFamily: FONT,\n fontSize: 14,\n fontWeight: 600,\n cursor: \"pointer\",\n }}\n >\n Apply\n </button>\n </div>\n </div>\n );\n}\n"],"names":["C","FONT_DISPLAY","FONT_BODY","Sparkline","trend","width","height","id","React","linePath","areaPath","jsxs","jsx","KpiCell","value","label","sub","RangeChip","active","FilterButton","Icon","children","DEFAULT_LINE_POINTS","CompassLineChart","yLabels","xLabels","points","highlightIndex","normalized","y","i","minX","xSpan","sx","x","gradId","highlight","gridCount","gridXs","_","l","gx","isHighlight","ChartCard","title","delta","SectionHeading","trailing","iconColor","bordered","CitationRow","bullet","citation","date","AccordionRow","summary","calls","expanded","bullets","b","Phone","TrendingUp","ChevronUp","ChevronDown","PercentRow","CompassDots","max","v","full","hasPartial","DEFAULT_SESSION_COLUMNS","num","SubSectionHeading","PerformanceDetailsPage","agentName","startDate","endDate","totalCalls","onBack","className","kpiBaseline","kpiAgentLift","kpiScore","baselineChart","agentLiftChart","scoreChart","csatChart","volumeChart","guidanceItems","strengthItems","callDrivers","callParadigms","sessions","sessionColumns","initialPageSize","ArrowLeft","Download","Calendar","ArrowRight","Lightbulb","item","ShieldCheck","FolderKanban","row","Layers","DataTable2","EMPTY_STAT","TrendArrow","direction","color","upPath","downPath","StatCard","muted","beigeBg","style","StatSubCell","withDivider","Trailing","SearchBar","Search","CompassRating","DEFAULT_AGENT_COLUMNS","DEFAULT_BULLETS","AccordionItem","percent","defaultExpanded","setExpanded","rows","PerformancePanel","onAgentClick","subtitle","dateRangeLabel","viewByOptions","initialViewBy","volumeStat","compassStat","baselineSubStat","agentLiftSubStat","scoreSubStat","agentRows","agentColumns","topSignalsLeft","topSignalsRight","topSignalsTrailing","selectedAgent","setSelectedAgent","viewByOpen","setViewByOpen","viewBy","setViewBy","viewByTriggerRef","viewByPopoverRef","handler","e","_a","_b","viewByLabel","o","handleRowClick","opt","isSelected","Check","Signal","FONT","Checkbox","checked","mutedFill","Row","supervisor","onToggle","MetaRow","left","right","ActionLink","onClick","faded","SupervisorSelect","supervisors","onApply","onClose","totalLabel","initialValueRef","staged","setStaged","query","setQuery","stagedSet","isSearching","filtered","q","s","allSelected","noneSelected","isPartial","toggle","prev","selectAll","deselectAll","reset","clearSearch","apply","headerCount","headerRight","renderPartial","flatList","partialSelected","partialOthers","Fragment"],"mappings":"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"}