pulse-dashboard
Version:
A Next.js Dashboard application for real-time monitoring and historical analysis of Playwright test executions, based on playwright-pulse-report. This component provides the UI for visualizing Playwright test results and can be run as a standalone CLI too
3 lines • 52.2 kB
JavaScript
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,87596,e=>{"use strict";var t=e.i(71645);function r(){let[e,r]=(0,t.useState)({currentRun:null,historicalTrends:[],loadingCurrent:!0,loadingHistorical:!0,errorCurrent:null,errorHistorical:null}),n=(0,t.useCallback)(async()=>{let e="/api/current-run";r(e=>({...e,loadingCurrent:!0,errorCurrent:null}));try{console.log(`Attempting to fetch current run data from: ${e}`);let t=await fetch(e);if(!t.ok){let r=`${t.status} ${t.statusText||"Server Error"}`;try{let e=await t.json();e&&"string"==typeof e.message&&""!==e.message.trim()?r=e.message:e&&"object"==typeof e&&null!==e&&(r=`Server error (${t.status}): ${JSON.stringify(e)}`)}catch(r){console.warn(`Could not parse error response body as JSON for ${e}. Status: ${t.status}`,r)}throw Error(`Failed to fetch current run from ${e}: ${r}`)}let n=await t.json();r(e=>({...e,currentRun:n,loadingCurrent:!1,errorCurrent:null}))}catch(n){console.error(`PulseDashboard Fetch Error (currentRun at ${e}):`,n);let t=`An unknown error occurred while fetching current run data from ${e}.`;t=n instanceof TypeError&&n.message.toLowerCase().includes("failed to fetch")?`Network error: Could not connect to the API endpoint (${e}). Please check your network connection and ensure the server is running.`:n instanceof Error?n.message:String(n),r(e=>({...e,currentRun:null,loadingCurrent:!1,errorCurrent:t}))}},[]),o=(0,t.useCallback)(async()=>{let e="/api/historical-trends";r(e=>({...e,loadingHistorical:!0,errorHistorical:null}));try{console.log(`Attempting to fetch historical trends data from: ${e}`);let t=await fetch(e);if(!t.ok){let r=`${t.status} ${t.statusText||"Server Error"}`;try{let e=await t.json();e&&"string"==typeof e.message&&""!==e.message.trim()?r=e.message:e&&"object"==typeof e&&null!==e&&(r=`Server error (${t.status}): ${JSON.stringify(e)}`)}catch(r){console.warn(`Could not parse historical trends error response body as JSON for ${e}. Status: ${t.status}`,r)}throw Error(`Failed to fetch historical trends from ${e}: ${r}`)}let n=await t.json();r(e=>({...e,historicalTrends:n,loadingHistorical:!1,errorHistorical:null}))}catch(n){console.error(`PulseDashboard Fetch Error (historicalTrends at ${e}):`,n);let t=`An unknown error occurred while fetching historical trends from ${e}.`;t=n instanceof TypeError&&n.message.toLowerCase().includes("failed to fetch")?`Network error: Could not connect to the API endpoint (${e}). Please check your network connection and ensure the server is running.`:n instanceof Error?n.message:String(n),r(e=>({...e,historicalTrends:[],loadingHistorical:!1,errorHistorical:t}))}},[]);return(0,t.useEffect)(()=>{n(),o()},[n,o]),e}e.s(["useTestData",()=>r])},59684,e=>{"use strict";var t=e.i(43476),r=e.i(71645),n=e.i(48425),o=e.i(96626),i=e.i(30030),a=e.i(20783),l=e.i(30207),s=e.i(86318),c=e.i(34620),u=e.i(70152),d=e.i(81140),f="ScrollArea",[p,h]=(0,i.createContextScope)(f),[m,y]=p(f),v=r.forwardRef((e,o)=>{let{__scopeScrollArea:i,type:l="hover",dir:c,scrollHideDelay:u=600,...d}=e,[f,p]=r.useState(null),[h,y]=r.useState(null),[v,g]=r.useState(null),[b,w]=r.useState(null),[x,C]=r.useState(null),[S,P]=r.useState(0),[j,E]=r.useState(0),[R,A]=r.useState(!1),[_,O]=r.useState(!1),k=(0,a.useComposedRefs)(o,e=>p(e)),D=(0,s.useDirection)(c);return(0,t.jsx)(m,{scope:i,type:l,dir:D,scrollHideDelay:u,scrollArea:f,viewport:h,onViewportChange:y,content:v,onContentChange:g,scrollbarX:b,onScrollbarXChange:w,scrollbarXEnabled:R,onScrollbarXEnabledChange:A,scrollbarY:x,onScrollbarYChange:C,scrollbarYEnabled:_,onScrollbarYEnabledChange:O,onCornerWidthChange:P,onCornerHeightChange:E,children:(0,t.jsx)(n.Primitive.div,{dir:D,...d,ref:k,style:{position:"relative","--radix-scroll-area-corner-width":S+"px","--radix-scroll-area-corner-height":j+"px",...e.style}})})});v.displayName=f;var g="ScrollAreaViewport",b=r.forwardRef((e,o)=>{let{__scopeScrollArea:i,children:l,nonce:s,...c}=e,u=y(g,i),d=r.useRef(null),f=(0,a.useComposedRefs)(o,d,u.onViewportChange);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:s}),(0,t.jsx)(n.Primitive.div,{"data-radix-scroll-area-viewport":"",...c,ref:f,style:{overflowX:u.scrollbarXEnabled?"scroll":"hidden",overflowY:u.scrollbarYEnabled?"scroll":"hidden",...e.style},children:(0,t.jsx)("div",{ref:u.onContentChange,style:{minWidth:"100%",display:"table"},children:l})})]})});b.displayName=g;var w="ScrollAreaScrollbar",x=r.forwardRef((e,n)=>{let{forceMount:o,...i}=e,a=y(w,e.__scopeScrollArea),{onScrollbarXEnabledChange:l,onScrollbarYEnabledChange:s}=a,c="horizontal"===e.orientation;return r.useEffect(()=>(c?l(!0):s(!0),()=>{c?l(!1):s(!1)}),[c,l,s]),"hover"===a.type?(0,t.jsx)(C,{...i,ref:n,forceMount:o}):"scroll"===a.type?(0,t.jsx)(S,{...i,ref:n,forceMount:o}):"auto"===a.type?(0,t.jsx)(P,{...i,ref:n,forceMount:o}):"always"===a.type?(0,t.jsx)(j,{...i,ref:n}):null});x.displayName=w;var C=r.forwardRef((e,n)=>{let{forceMount:i,...a}=e,l=y(w,e.__scopeScrollArea),[s,c]=r.useState(!1);return r.useEffect(()=>{let e=l.scrollArea,t=0;if(e){let r=()=>{window.clearTimeout(t),c(!0)},n=()=>{t=window.setTimeout(()=>c(!1),l.scrollHideDelay)};return e.addEventListener("pointerenter",r),e.addEventListener("pointerleave",n),()=>{window.clearTimeout(t),e.removeEventListener("pointerenter",r),e.removeEventListener("pointerleave",n)}}},[l.scrollArea,l.scrollHideDelay]),(0,t.jsx)(o.Presence,{present:i||s,children:(0,t.jsx)(P,{"data-state":s?"visible":"hidden",...a,ref:n})})}),S=r.forwardRef((e,n)=>{var i;let{forceMount:a,...l}=e,s=y(w,e.__scopeScrollArea),c="horizontal"===e.orientation,u=W(()=>p("SCROLL_END"),100),[f,p]=(i={hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}},r.useReducer((e,t)=>i[e][t]??e,"hidden"));return r.useEffect(()=>{if("idle"===f){let e=window.setTimeout(()=>p("HIDE"),s.scrollHideDelay);return()=>window.clearTimeout(e)}},[f,s.scrollHideDelay,p]),r.useEffect(()=>{let e=s.viewport,t=c?"scrollLeft":"scrollTop";if(e){let r=e[t],n=()=>{let n=e[t];r!==n&&(p("SCROLL"),u()),r=n};return e.addEventListener("scroll",n),()=>e.removeEventListener("scroll",n)}},[s.viewport,c,p,u]),(0,t.jsx)(o.Presence,{present:a||"hidden"!==f,children:(0,t.jsx)(j,{"data-state":"hidden"===f?"hidden":"visible",...l,ref:n,onPointerEnter:(0,d.composeEventHandlers)(e.onPointerEnter,()=>p("POINTER_ENTER")),onPointerLeave:(0,d.composeEventHandlers)(e.onPointerLeave,()=>p("POINTER_LEAVE"))})})}),P=r.forwardRef((e,n)=>{let i=y(w,e.__scopeScrollArea),{forceMount:a,...l}=e,[s,c]=r.useState(!1),u="horizontal"===e.orientation,d=W(()=>{if(i.viewport){let e=i.viewport.offsetWidth<i.viewport.scrollWidth,t=i.viewport.offsetHeight<i.viewport.scrollHeight;c(u?e:t)}},10);return B(i.viewport,d),B(i.content,d),(0,t.jsx)(o.Presence,{present:a||s,children:(0,t.jsx)(j,{"data-state":s?"visible":"hidden",...l,ref:n})})}),j=r.forwardRef((e,n)=>{let{orientation:o="vertical",...i}=e,a=y(w,e.__scopeScrollArea),l=r.useRef(null),s=r.useRef(0),[c,u]=r.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),d=M(c.viewport,c.content),f={...i,sizes:c,onSizesChange:u,hasThumb:!!(d>0&&d<1),onThumbChange:e=>l.current=e,onThumbPointerUp:()=>s.current=0,onThumbPointerDown:e=>s.current=e};function p(e,t){return function(e,t,r,n="ltr"){let o=$(r),i=t||o/2,a=r.scrollbar.paddingStart+i,l=r.scrollbar.size-r.scrollbar.paddingEnd-(o-i),s=r.content-r.viewport;return F([a,l],"ltr"===n?[0,s]:[-1*s,0])(e)}(e,s.current,c,t)}return"horizontal"===o?(0,t.jsx)(E,{...f,ref:n,onThumbPositionChange:()=>{if(a.viewport&&l.current){let e=H(a.viewport.scrollLeft,c,a.dir);l.current.style.transform=`translate3d(${e}px, 0, 0)`}},onWheelScroll:e=>{a.viewport&&(a.viewport.scrollLeft=e)},onDragScroll:e=>{a.viewport&&(a.viewport.scrollLeft=p(e,a.dir))}}):"vertical"===o?(0,t.jsx)(R,{...f,ref:n,onThumbPositionChange:()=>{if(a.viewport&&l.current){let e=H(a.viewport.scrollTop,c);l.current.style.transform=`translate3d(0, ${e}px, 0)`}},onWheelScroll:e=>{a.viewport&&(a.viewport.scrollTop=e)},onDragScroll:e=>{a.viewport&&(a.viewport.scrollTop=p(e))}}):null}),E=r.forwardRef((e,n)=>{let{sizes:o,onSizesChange:i,...l}=e,s=y(w,e.__scopeScrollArea),[c,u]=r.useState(),d=r.useRef(null),f=(0,a.useComposedRefs)(n,d,s.onScrollbarXChange);return r.useEffect(()=>{d.current&&u(getComputedStyle(d.current))},[d]),(0,t.jsx)(O,{"data-orientation":"horizontal",...l,ref:f,sizes:o,style:{bottom:0,left:"rtl"===s.dir?"var(--radix-scroll-area-corner-width)":0,right:"ltr"===s.dir?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":$(o)+"px",...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.x),onDragScroll:t=>e.onDragScroll(t.x),onWheelScroll:(t,r)=>{if(s.viewport){var n,o;let i=s.viewport.scrollLeft+t.deltaX;e.onWheelScroll(i),n=i,o=r,n>0&&n<o&&t.preventDefault()}},onResize:()=>{d.current&&s.viewport&&c&&i({content:s.viewport.scrollWidth,viewport:s.viewport.offsetWidth,scrollbar:{size:d.current.clientWidth,paddingStart:z(c.paddingLeft),paddingEnd:z(c.paddingRight)}})}})}),R=r.forwardRef((e,n)=>{let{sizes:o,onSizesChange:i,...l}=e,s=y(w,e.__scopeScrollArea),[c,u]=r.useState(),d=r.useRef(null),f=(0,a.useComposedRefs)(n,d,s.onScrollbarYChange);return r.useEffect(()=>{d.current&&u(getComputedStyle(d.current))},[d]),(0,t.jsx)(O,{"data-orientation":"vertical",...l,ref:f,sizes:o,style:{top:0,right:"ltr"===s.dir?0:void 0,left:"rtl"===s.dir?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":$(o)+"px",...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.y),onDragScroll:t=>e.onDragScroll(t.y),onWheelScroll:(t,r)=>{if(s.viewport){var n,o;let i=s.viewport.scrollTop+t.deltaY;e.onWheelScroll(i),n=i,o=r,n>0&&n<o&&t.preventDefault()}},onResize:()=>{d.current&&s.viewport&&c&&i({content:s.viewport.scrollHeight,viewport:s.viewport.offsetHeight,scrollbar:{size:d.current.clientHeight,paddingStart:z(c.paddingTop),paddingEnd:z(c.paddingBottom)}})}})}),[A,_]=p(w),O=r.forwardRef((e,o)=>{let{__scopeScrollArea:i,sizes:s,hasThumb:c,onThumbChange:u,onThumbPointerUp:f,onThumbPointerDown:p,onThumbPositionChange:h,onDragScroll:m,onWheelScroll:v,onResize:g,...b}=e,x=y(w,i),[C,S]=r.useState(null),P=(0,a.useComposedRefs)(o,e=>S(e)),j=r.useRef(null),E=r.useRef(""),R=x.viewport,_=s.content-s.viewport,O=(0,l.useCallbackRef)(v),k=(0,l.useCallbackRef)(h),D=W(g,10);function T(e){j.current&&m({x:e.clientX-j.current.left,y:e.clientY-j.current.top})}return r.useEffect(()=>{let e=e=>{let t=e.target;C?.contains(t)&&O(e,_)};return document.addEventListener("wheel",e,{passive:!1}),()=>document.removeEventListener("wheel",e,{passive:!1})},[R,C,_,O]),r.useEffect(k,[s,k]),B(C,D),B(x.content,D),(0,t.jsx)(A,{scope:i,scrollbar:C,hasThumb:c,onThumbChange:(0,l.useCallbackRef)(u),onThumbPointerUp:(0,l.useCallbackRef)(f),onThumbPositionChange:k,onThumbPointerDown:(0,l.useCallbackRef)(p),children:(0,t.jsx)(n.Primitive.div,{...b,ref:P,style:{position:"absolute",...b.style},onPointerDown:(0,d.composeEventHandlers)(e.onPointerDown,e=>{0===e.button&&(e.target.setPointerCapture(e.pointerId),j.current=C.getBoundingClientRect(),E.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",x.viewport&&(x.viewport.style.scrollBehavior="auto"),T(e))}),onPointerMove:(0,d.composeEventHandlers)(e.onPointerMove,T),onPointerUp:(0,d.composeEventHandlers)(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=E.current,x.viewport&&(x.viewport.style.scrollBehavior=""),j.current=null})})})}),k="ScrollAreaThumb",D=r.forwardRef((e,r)=>{let{forceMount:n,...i}=e,a=_(k,e.__scopeScrollArea);return(0,t.jsx)(o.Presence,{present:n||a.hasThumb,children:(0,t.jsx)(T,{ref:r,...i})})}),T=r.forwardRef((e,o)=>{let{__scopeScrollArea:i,style:l,...s}=e,c=y(k,i),u=_(k,i),{onThumbPositionChange:f}=u,p=(0,a.useComposedRefs)(o,e=>u.onThumbChange(e)),h=r.useRef(void 0),m=W(()=>{h.current&&(h.current(),h.current=void 0)},100);return r.useEffect(()=>{let e=c.viewport;if(e){let t=()=>{m(),h.current||(h.current=U(e,f),f())};return f(),e.addEventListener("scroll",t),()=>e.removeEventListener("scroll",t)}},[c.viewport,m,f]),(0,t.jsx)(n.Primitive.div,{"data-state":u.hasThumb?"visible":"hidden",...s,ref:p,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...l},onPointerDownCapture:(0,d.composeEventHandlers)(e.onPointerDownCapture,e=>{let t=e.target.getBoundingClientRect(),r=e.clientX-t.left,n=e.clientY-t.top;u.onThumbPointerDown({x:r,y:n})}),onPointerUp:(0,d.composeEventHandlers)(e.onPointerUp,u.onThumbPointerUp)})});D.displayName=k;var N="ScrollAreaCorner",L=r.forwardRef((e,r)=>{let n=y(N,e.__scopeScrollArea),o=!!(n.scrollbarX&&n.scrollbarY);return"scroll"!==n.type&&o?(0,t.jsx)(I,{...e,ref:r}):null});L.displayName=N;var I=r.forwardRef((e,o)=>{let{__scopeScrollArea:i,...a}=e,l=y(N,i),[s,c]=r.useState(0),[u,d]=r.useState(0),f=!!(s&&u);return B(l.scrollbarX,()=>{let e=l.scrollbarX?.offsetHeight||0;l.onCornerHeightChange(e),d(e)}),B(l.scrollbarY,()=>{let e=l.scrollbarY?.offsetWidth||0;l.onCornerWidthChange(e),c(e)}),f?(0,t.jsx)(n.Primitive.div,{...a,ref:o,style:{width:s,height:u,position:"absolute",right:"ltr"===l.dir?0:void 0,left:"rtl"===l.dir?0:void 0,bottom:0,...e.style}}):null});function z(e){return e?parseInt(e,10):0}function M(e,t){let r=e/t;return isNaN(r)?0:r}function $(e){let t=M(e.viewport,e.content),r=e.scrollbar.paddingStart+e.scrollbar.paddingEnd;return Math.max((e.scrollbar.size-r)*t,18)}function H(e,t,r="ltr"){let n=$(t),o=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,i=t.scrollbar.size-o,a=t.content-t.viewport,l=(0,u.clamp)(e,"ltr"===r?[0,a]:[-1*a,0]);return F([0,a],[0,i-n])(l)}function F(e,t){return r=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let n=(t[1]-t[0])/(e[1]-e[0]);return t[0]+n*(r-e[0])}}var U=(e,t=()=>{})=>{let r={left:e.scrollLeft,top:e.scrollTop},n=0;return!function o(){let i={left:e.scrollLeft,top:e.scrollTop},a=r.left!==i.left,l=r.top!==i.top;(a||l)&&t(),r=i,n=window.requestAnimationFrame(o)}(),()=>window.cancelAnimationFrame(n)};function W(e,t){let n=(0,l.useCallbackRef)(e),o=r.useRef(0);return r.useEffect(()=>()=>window.clearTimeout(o.current),[]),r.useCallback(()=>{window.clearTimeout(o.current),o.current=window.setTimeout(n,t)},[n,t])}function B(e,t){let r=(0,l.useCallbackRef)(t);(0,c.useLayoutEffect)(()=>{let t=0;if(e){let n=new ResizeObserver(()=>{cancelAnimationFrame(t),t=window.requestAnimationFrame(r)});return n.observe(e),()=>{window.cancelAnimationFrame(t),n.unobserve(e)}}},[e,r])}var q=e.i(75157);let X=r.forwardRef(({className:e,children:r,...n},o)=>(0,t.jsxs)(v,{ref:o,className:(0,q.cn)("relative overflow-hidden",e),...n,children:[(0,t.jsx)(b,{className:"h-full w-full rounded-[inherit]",children:r}),(0,t.jsx)(V,{}),(0,t.jsx)(L,{})]}));X.displayName=v.displayName;let V=r.forwardRef(({className:e,orientation:r="vertical",...n},o)=>(0,t.jsx)(x,{ref:o,orientation:r,className:(0,q.cn)("flex touch-none select-none transition-colors","vertical"===r&&"h-full w-2.5 border-l border-l-transparent p-[1px]","horizontal"===r&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",e),...n,children:(0,t.jsx)(D,{className:"relative flex-1 rounded-full bg-border"})}));V.displayName=x.displayName,e.s(["ScrollArea",()=>X],59684)},95468,e=>{"use strict";let t=(0,e.i(75254).default)("CircleCheck",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);e.s(["CheckCircle2",()=>t],95468)},73884,e=>{"use strict";let t=(0,e.i(75254).default)("CircleX",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);e.s(["XCircle",()=>t],73884)},63209,e=>{"use strict";let t=(0,e.i(75254).default)("CircleAlert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);e.s(["AlertCircle",()=>t],63209)},3116,e=>{"use strict";let t=(0,e.i(75254).default)("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);e.s(["Clock",()=>t],3116)},78583,e=>{"use strict";let t=(0,e.i(75254).default)("FileText",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);e.s(["FileText",()=>t],78583)},94918,e=>{"use strict";let t=(0,e.i(75254).default)("FileSpreadsheet",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M8 13h2",key:"yr2amv"}],["path",{d:"M14 13h2",key:"un5t4a"}],["path",{d:"M8 17h2",key:"2yhykz"}],["path",{d:"M14 17h2",key:"10kma7"}]]);e.s(["FileSpreadsheet",()=>t],94918)},88143,(e,t,r)=>{"use strict";function n({widthInt:e,heightInt:t,blurWidth:r,blurHeight:n,blurDataURL:o,objectFit:i}){let a=r?40*r:e,l=n?40*n:t,s=a&&l?`viewBox='0 0 ${a} ${l}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${s}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${s?"none":"contain"===i?"xMidYMid":"cover"===i?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${o}'/%3E%3C/svg%3E`}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImageBlurSvg",{enumerable:!0,get:function(){return n}})},87690,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={VALID_LOADERS:function(){return i},imageConfigDefault:function(){return a}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=["default","imgix","cloudinary","akamai","custom"],a={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumRedirects:3,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1}},8927,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImgProps",{enumerable:!0,get:function(){return c}}),e.r(33525);let n=e.r(43369),o=e.r(88143),i=e.r(87690),a=["-moz-initial","fill","none","scale-down",void 0];function l(e){return void 0!==e.default}function s(e){return void 0===e?e:"number"==typeof e?Number.isFinite(e)?e:NaN:"string"==typeof e&&/^[0-9]+$/.test(e)?parseInt(e,10):NaN}function c({src:e,sizes:t,unoptimized:r=!1,priority:c=!1,preload:u=!1,loading:d,className:f,quality:p,width:h,height:m,fill:y=!1,style:v,overrideSrc:g,onLoad:b,onLoadingComplete:w,placeholder:x="empty",blurDataURL:C,fetchPriority:S,decoding:P="async",layout:j,objectFit:E,objectPosition:R,lazyBoundary:A,lazyRoot:_,...O},k){var D;let T,N,L,{imgConf:I,showAltText:z,blurComplete:M,defaultLoader:$}=k,H=I||i.imageConfigDefault;if("allSizes"in H)T=H;else{let e=[...H.deviceSizes,...H.imageSizes].sort((e,t)=>e-t),t=H.deviceSizes.sort((e,t)=>e-t),r=H.qualities?.sort((e,t)=>e-t);T={...H,allSizes:e,deviceSizes:t,qualities:r}}if(void 0===$)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let F=O.loader||$;delete O.loader,delete O.srcSet;let U="__next_img_default"in F;if(U){if("custom"===T.loader)throw Object.defineProperty(Error(`Image with src "${e}" is missing "loader" prop.
Read more: https://nextjs.org/docs/messages/next-image-missing-loader`),"__NEXT_ERROR_CODE",{value:"E252",enumerable:!1,configurable:!0})}else{let e=F;F=t=>{let{config:r,...n}=t;return e(n)}}if(j){"fill"===j&&(y=!0);let e={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[j];e&&(v={...v,...e});let r={responsive:"100vw",fill:"100vw"}[j];r&&!t&&(t=r)}let W="",B=s(h),q=s(m);if((D=e)&&"object"==typeof D&&(l(D)||void 0!==D.src)){let t=l(e)?e.default:e;if(!t.src)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E460",enumerable:!1,configurable:!0});if(!t.height||!t.width)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E48",enumerable:!1,configurable:!0});if(N=t.blurWidth,L=t.blurHeight,C=C||t.blurDataURL,W=t.src,!y)if(B||q){if(B&&!q){let e=B/t.width;q=Math.round(t.height*e)}else if(!B&&q){let e=q/t.height;B=Math.round(t.width*e)}}else B=t.width,q=t.height}let X=!c&&!u&&("lazy"===d||void 0===d);(!(e="string"==typeof e?e:W)||e.startsWith("data:")||e.startsWith("blob:"))&&(r=!0,X=!1),T.unoptimized&&(r=!0),U&&!T.dangerouslyAllowSVG&&e.split("?",1)[0].endsWith(".svg")&&(r=!0);let V=s(p),Y=Object.assign(y?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:E,objectPosition:R}:{},z?{}:{color:"transparent"},v),G=M||"empty"===x?null:"blur"===x?`url("data:image/svg+xml;charset=utf-8,${(0,o.getImageBlurSvg)({widthInt:B,heightInt:q,blurWidth:N,blurHeight:L,blurDataURL:C||"",objectFit:Y.objectFit})}")`:`url("${x}")`,K=a.includes(Y.objectFit)?"fill"===Y.objectFit?"100% 100%":"cover":Y.objectFit,J=G?{backgroundSize:K,backgroundPosition:Y.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:G}:{},Q=function({config:e,src:t,unoptimized:r,width:o,quality:i,sizes:a,loader:l}){if(r){let e=(0,n.getDeploymentId)();if(t.startsWith("/")&&!t.startsWith("//")&&e){let r=t.includes("?")?"&":"?";t=`${t}${r}dpl=${e}`}return{src:t,srcSet:void 0,sizes:void 0}}let{widths:s,kind:c}=function({deviceSizes:e,allSizes:t},r,n){if(n){let r=/(^|\s)(1?\d?\d)vw/g,o=[];for(let e;e=r.exec(n);)o.push(parseInt(e[2]));if(o.length){let r=.01*Math.min(...o);return{widths:t.filter(t=>t>=e[0]*r),kind:"w"}}return{widths:t,kind:"w"}}return"number"!=typeof r?{widths:e,kind:"w"}:{widths:[...new Set([r,2*r].map(e=>t.find(t=>t>=e)||t[t.length-1]))],kind:"x"}}(e,o,a),u=s.length-1;return{sizes:a||"w"!==c?a:"100vw",srcSet:s.map((r,n)=>`${l({config:e,src:t,quality:i,width:r})} ${"w"===c?r:n+1}${c}`).join(", "),src:l({config:e,src:t,quality:i,width:s[u]})}}({config:T,src:e,unoptimized:r,width:B,quality:V,sizes:t,loader:F}),Z=X?"lazy":d;return{props:{...O,loading:Z,fetchPriority:S,width:B,height:q,decoding:P,className:f,style:{...Y,...J},sizes:Q.sizes,srcSet:Q.srcSet,src:g||Q.src},meta:{unoptimized:r,preload:u||c,placeholder:x,fill:y}}}},98879,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return l}});let n=e.r(71645),o="undefined"==typeof window,i=o?()=>{}:n.useLayoutEffect,a=o?()=>{}:n.useEffect;function l(e){let{headManager:t,reduceComponentsToState:r}=e;function l(){if(t&&t.mountedInstances){let e=n.Children.toArray(Array.from(t.mountedInstances).filter(Boolean));t.updateHead(r(e))}}return o&&(t?.mountedInstances?.add(e.children),l()),i(()=>(t?.mountedInstances?.add(e.children),()=>{t?.mountedInstances?.delete(e.children)})),i(()=>(t&&(t._pendingUpdate=l),()=>{t&&(t._pendingUpdate=l)})),a(()=>(t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null),()=>{t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null)})),null}},25633,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return m},defaultHead:function(){return d}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(55682),a=e.r(90809),l=e.r(43476),s=a._(e.r(71645)),c=i._(e.r(98879)),u=e.r(42732);function d(){return[(0,l.jsx)("meta",{charSet:"utf-8"},"charset"),(0,l.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")]}function f(e,t){return"string"==typeof t||"number"==typeof t?e:t.type===s.default.Fragment?e.concat(s.default.Children.toArray(t.props.children).reduce((e,t)=>"string"==typeof t||"number"==typeof t?e:e.concat(t),[])):e.concat(t)}e.r(33525);let p=["name","httpEquiv","charSet","itemProp"];function h(e){let t,r,n,o;return e.reduce(f,[]).reverse().concat(d().reverse()).filter((t=new Set,r=new Set,n=new Set,o={},e=>{let i=!0,a=!1;if(e.key&&"number"!=typeof e.key&&e.key.indexOf("$")>0){a=!0;let r=e.key.slice(e.key.indexOf("$")+1);t.has(r)?i=!1:t.add(r)}switch(e.type){case"title":case"base":r.has(e.type)?i=!1:r.add(e.type);break;case"meta":for(let t=0,r=p.length;t<r;t++){let r=p[t];if(e.props.hasOwnProperty(r))if("charSet"===r)n.has(r)?i=!1:n.add(r);else{let t=e.props[r],n=o[r]||new Set;("name"!==r||!a)&&n.has(t)?i=!1:(n.add(t),o[r]=n)}}}return i})).reverse().map((e,t)=>{let r=e.key||t;return s.default.cloneElement(e,{key:r})})}let m=function({children:e}){let t=(0,s.useContext)(u.HeadManagerContext);return(0,l.jsx)(c.default,{reduceComponentsToState:h,headManager:t,children:e})};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},18556,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ImageConfigContext",{enumerable:!0,get:function(){return i}});let n=e.r(55682)._(e.r(71645)),o=e.r(87690),i=n.default.createContext(o.imageConfigDefault)},65856,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"RouterContext",{enumerable:!0,get:function(){return n}});let n=e.r(55682)._(e.r(71645)).default.createContext(null)},70965,(e,t,r)=>{"use strict";function n(e,t){let r=e||75;return t?.qualities?.length?t.qualities.reduce((e,t)=>Math.abs(t-r)<Math.abs(e-r)?t:e,0):r}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"findClosestQuality",{enumerable:!0,get:function(){return n}})},1948,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return a}});let n=e.r(70965),o=e.r(43369);function i({config:e,src:t,width:r,quality:i}){if(t.startsWith("/")&&t.includes("?")&&e.localPatterns?.length===1&&"**"===e.localPatterns[0].pathname&&""===e.localPatterns[0].search)throw Object.defineProperty(Error(`Image with src "${t}" is using a query string which is not configured in images.localPatterns.
Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`),"__NEXT_ERROR_CODE",{value:"E871",enumerable:!1,configurable:!0});let a=(0,n.findClosestQuality)(i,e),l=(0,o.getDeploymentId)();return`${e.path}?url=${encodeURIComponent(t)}&w=${r}&q=${a}${t.startsWith("/")&&l?`&dpl=${l}`:""}`}i.__next_img_default=!0;let a=i},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return o}});let n=e.r(71645);function o(e,t){let r=(0,n.useRef)(null),o=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=o.current;t&&(o.current=null,t())}else e&&(r.current=i(e,n)),t&&(o.current=i(t,n))},[e,t])}function i(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},5500,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"Image",{enumerable:!0,get:function(){return w}});let n=e.r(55682),o=e.r(90809),i=e.r(43476),a=o._(e.r(71645)),l=n._(e.r(74080)),s=n._(e.r(25633)),c=e.r(8927),u=e.r(87690),d=e.r(18556);e.r(33525);let f=e.r(65856),p=n._(e.r(1948)),h=e.r(18581),m={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1};function y(e,t,r,n,o,i,a){let l=e?.src;e&&e["data-loaded-src"]!==l&&(e["data-loaded-src"]=l,("decode"in e?e.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(e.parentElement&&e.isConnected){if("empty"!==t&&o(!0),r?.current){let t=new Event("load");Object.defineProperty(t,"target",{writable:!1,value:e});let n=!1,o=!1;r.current({...t,nativeEvent:t,currentTarget:e,target:e,isDefaultPrevented:()=>n,isPropagationStopped:()=>o,persist:()=>{},preventDefault:()=>{n=!0,t.preventDefault()},stopPropagation:()=>{o=!0,t.stopPropagation()}})}n?.current&&n.current(e)}}))}function v(e){return a.use?{fetchPriority:e}:{fetchpriority:e}}"undefined"==typeof window&&(globalThis.__NEXT_IMAGE_IMPORTED=!0);let g=(0,a.forwardRef)(({src:e,srcSet:t,sizes:r,height:n,width:o,decoding:l,className:s,style:c,fetchPriority:u,placeholder:d,loading:f,unoptimized:p,fill:m,onLoadRef:g,onLoadingCompleteRef:b,setBlurComplete:w,setShowAltText:x,sizesInput:C,onLoad:S,onError:P,...j},E)=>{let R=(0,a.useCallback)(e=>{e&&(P&&(e.src=e.src),e.complete&&y(e,d,g,b,w,p,C))},[e,d,g,b,w,P,p,C]),A=(0,h.useMergedRef)(E,R);return(0,i.jsx)("img",{...j,...v(u),loading:f,width:o,height:n,decoding:l,"data-nimg":m?"fill":"1",className:s,style:c,sizes:r,srcSet:t,src:e,ref:A,onLoad:e=>{y(e.currentTarget,d,g,b,w,p,C)},onError:e=>{x(!0),"empty"!==d&&w(!0),P&&P(e)}})});function b({isAppRouter:e,imgAttributes:t}){let r={as:"image",imageSrcSet:t.srcSet,imageSizes:t.sizes,crossOrigin:t.crossOrigin,referrerPolicy:t.referrerPolicy,...v(t.fetchPriority)};return e&&l.default.preload?(l.default.preload(t.src,r),null):(0,i.jsx)(s.default,{children:(0,i.jsx)("link",{rel:"preload",href:t.srcSet?void 0:t.src,...r},"__nimg-"+t.src+t.srcSet+t.sizes)})}let w=(0,a.forwardRef)((e,t)=>{let r=(0,a.useContext)(f.RouterContext),n=(0,a.useContext)(d.ImageConfigContext),o=(0,a.useMemo)(()=>{let e=m||n||u.imageConfigDefault,t=[...e.deviceSizes,...e.imageSizes].sort((e,t)=>e-t),r=e.deviceSizes.sort((e,t)=>e-t),o=e.qualities?.sort((e,t)=>e-t);return{...e,allSizes:t,deviceSizes:r,qualities:o,localPatterns:"undefined"==typeof window?n?.localPatterns:e.localPatterns}},[n]),{onLoad:l,onLoadingComplete:s}=e,h=(0,a.useRef)(l);(0,a.useEffect)(()=>{h.current=l},[l]);let y=(0,a.useRef)(s);(0,a.useEffect)(()=>{y.current=s},[s]);let[v,w]=(0,a.useState)(!1),[x,C]=(0,a.useState)(!1),{props:S,meta:P}=(0,c.getImgProps)(e,{defaultLoader:p.default,imgConf:o,blurComplete:v,showAltText:x});return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(g,{...S,unoptimized:P.unoptimized,placeholder:P.placeholder,fill:P.fill,onLoadRef:h,onLoadingCompleteRef:y,setBlurComplete:w,setShowAltText:C,sizesInput:e.sizes,ref:t}),P.preload?(0,i.jsx)(b,{isAppRouter:!r,imgAttributes:S}):null]})});("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},94909,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return u},getImageProps:function(){return c}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(55682),a=e.r(8927),l=e.r(5500),s=i._(e.r(1948));function c(e){let{props:t}=(0,a.getImgProps)(e,{defaultLoader:s.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!1}});for(let[e,r]of Object.entries(t))void 0===r&&delete t[e];return{props:t}}let u=l.Image},57688,(e,t,r)=>{t.exports=e.r(94909)},87486,e=>{"use strict";var t=e.i(43476),r=e.i(25913),n=e.i(75157);let o=(0,r.cva)("inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function i({className:e,variant:r,...i}){return(0,t.jsx)("div",{className:(0,n.cn)(o({variant:r}),e),...i})}e.s(["Badge",()=>i])},73443,e=>{"use strict";var t=e.i(43476),r=e.i(71645),n=e.i(30030),o=e.i(75830),i=e.i(20783),a=e.i(81140),l=e.i(69340),s=e.i(48425),c=e.i(34620),u=e.i(96626),d=e.i(10772),f="Collapsible",[p,h]=(0,n.createContextScope)(f),[m,y]=p(f),v=r.forwardRef((e,n)=>{let{__scopeCollapsible:o,open:i,defaultOpen:a,disabled:c,onOpenChange:u,...f}=e,[p=!1,h]=(0,l.useControllableState)({prop:i,defaultProp:a,onChange:u});return(0,t.jsx)(m,{scope:o,disabled:c,contentId:(0,d.useId)(),open:p,onOpenToggle:r.useCallback(()=>h(e=>!e),[h]),children:(0,t.jsx)(s.Primitive.div,{"data-state":S(p),"data-disabled":c?"":void 0,...f,ref:n})})});v.displayName=f;var g="CollapsibleTrigger",b=r.forwardRef((e,r)=>{let{__scopeCollapsible:n,...o}=e,i=y(g,n);return(0,t.jsx)(s.Primitive.button,{type:"button","aria-controls":i.contentId,"aria-expanded":i.open||!1,"data-state":S(i.open),"data-disabled":i.disabled?"":void 0,disabled:i.disabled,...o,ref:r,onClick:(0,a.composeEventHandlers)(e.onClick,i.onOpenToggle)})});b.displayName=g;var w="CollapsibleContent",x=r.forwardRef((e,r)=>{let{forceMount:n,...o}=e,i=y(w,e.__scopeCollapsible);return(0,t.jsx)(u.Presence,{present:n||i.open,children:({present:e})=>(0,t.jsx)(C,{...o,ref:r,present:e})})});x.displayName=w;var C=r.forwardRef((e,n)=>{let{__scopeCollapsible:o,present:a,children:l,...u}=e,d=y(w,o),[f,p]=r.useState(a),h=r.useRef(null),m=(0,i.useComposedRefs)(n,h),v=r.useRef(0),g=v.current,b=r.useRef(0),x=b.current,C=d.open||f,P=r.useRef(C),j=r.useRef(void 0);return r.useEffect(()=>{let e=requestAnimationFrame(()=>P.current=!1);return()=>cancelAnimationFrame(e)},[]),(0,c.useLayoutEffect)(()=>{let e=h.current;if(e){j.current=j.current||{transitionDuration:e.style.transitionDuration,animationName:e.style.animationName},e.style.transitionDuration="0s",e.style.animationName="none";let t=e.getBoundingClientRect();v.current=t.height,b.current=t.width,P.current||(e.style.transitionDuration=j.current.transitionDuration,e.style.animationName=j.current.animationName),p(a)}},[d.open,a]),(0,t.jsx)(s.Primitive.div,{"data-state":S(d.open),"data-disabled":d.disabled?"":void 0,id:d.contentId,hidden:!C,...u,ref:m,style:{"--radix-collapsible-content-height":g?`${g}px`:void 0,"--radix-collapsible-content-width":x?`${x}px`:void 0,...e.style},children:C&&l})});function S(e){return e?"open":"closed"}var P=e.i(86318),j="Accordion",E=["Home","End","ArrowDown","ArrowUp","ArrowLeft","ArrowRight"],[R,A,_]=(0,o.createCollection)(j),[O,k]=(0,n.createContextScope)(j,[_,h]),D=h(),T=r.default.forwardRef((e,r)=>{let{type:n,...o}=e;return(0,t.jsx)(R.Provider,{scope:e.__scopeAccordion,children:"multiple"===n?(0,t.jsx)($,{...o,ref:r}):(0,t.jsx)(M,{...o,ref:r})})});T.displayName=j;var[N,L]=O(j),[I,z]=O(j,{collapsible:!1}),M=r.default.forwardRef((e,n)=>{let{value:o,defaultValue:i,onValueChange:a=()=>{},collapsible:s=!1,...c}=e,[u,d]=(0,l.useControllableState)({prop:o,defaultProp:i,onChange:a});return(0,t.jsx)(N,{scope:e.__scopeAccordion,value:u?[u]:[],onItemOpen:d,onItemClose:r.default.useCallback(()=>s&&d(""),[s,d]),children:(0,t.jsx)(I,{scope:e.__scopeAccordion,collapsible:s,children:(0,t.jsx)(U,{...c,ref:n})})})}),$=r.default.forwardRef((e,n)=>{let{value:o,defaultValue:i,onValueChange:a=()=>{},...s}=e,[c=[],u]=(0,l.useControllableState)({prop:o,defaultProp:i,onChange:a}),d=r.default.useCallback(e=>u((t=[])=>[...t,e]),[u]),f=r.default.useCallback(e=>u((t=[])=>t.filter(t=>t!==e)),[u]);return(0,t.jsx)(N,{scope:e.__scopeAccordion,value:c,onItemOpen:d,onItemClose:f,children:(0,t.jsx)(I,{scope:e.__scopeAccordion,collapsible:!0,children:(0,t.jsx)(U,{...s,ref:n})})})}),[H,F]=O(j),U=r.default.forwardRef((e,n)=>{let{__scopeAccordion:o,disabled:l,dir:c,orientation:u="vertical",...d}=e,f=r.default.useRef(null),p=(0,i.useComposedRefs)(f,n),h=A(o),m="ltr"===(0,P.useDirection)(c),y=(0,a.composeEventHandlers)(e.onKeyDown,e=>{if(!E.includes(e.key))return;let t=e.target,r=h().filter(e=>!e.ref.current?.disabled),n=r.findIndex(e=>e.ref.current===t),o=r.length;if(-1===n)return;e.preventDefault();let i=n,a=o-1,l=()=>{(i=n+1)>a&&(i=0)},s=()=>{(i=n-1)<0&&(i=a)};switch(e.key){case"Home":i=0;break;case"End":i=a;break;case"ArrowRight":"horizontal"===u&&(m?l():s());break;case"ArrowDown":"vertical"===u&&l();break;case"ArrowLeft":"horizontal"===u&&(m?s():l());break;case"ArrowUp":"vertical"===u&&s()}let c=i%o;r[c].ref.current?.focus()});return(0,t.jsx)(H,{scope:o,disabled:l,direction:c,orientation:u,children:(0,t.jsx)(R.Slot,{scope:o,children:(0,t.jsx)(s.Primitive.div,{...d,"data-orientation":u,ref:p,onKeyDown:l?void 0:y})})})}),W="AccordionItem",[B,q]=O(W),X=r.default.forwardRef((e,r)=>{let{__scopeAccordion:n,value:o,...i}=e,a=F(W,n),l=L(W,n),s=D(n),c=(0,d.useId)(),u=o&&l.value.includes(o)||!1,f=a.disabled||e.disabled;return(0,t.jsx)(B,{scope:n,open:u,disabled:f,triggerId:c,children:(0,t.jsx)(v,{"data-orientation":a.orientation,"data-state":Z(u),...s,...i,ref:r,disabled:f,open:u,onOpenChange:e=>{e?l.onItemOpen(o):l.onItemClose(o)}})})});X.displayName=W;var V="AccordionHeader",Y=r.default.forwardRef((e,r)=>{let{__scopeAccordion:n,...o}=e,i=F(j,n),a=q(V,n);return(0,t.jsx)(s.Primitive.h3,{"data-orientation":i.orientation,"data-state":Z(a.open),"data-disabled":a.disabled?"":void 0,...o,ref:r})});Y.displayName=V;var G="AccordionTrigger",K=r.default.forwardRef((e,r)=>{let{__scopeAccordion:n,...o}=e,i=F(j,n),a=q(G,n),l=z(G,n),s=D(n);return(0,t.jsx)(R.ItemSlot,{scope:n,children:(0,t.jsx)(b,{"aria-disabled":a.open&&!l.collapsible||void 0,"data-orientation":i.orientation,id:a.triggerId,...s,...o,ref:r})})});K.displayName=G;var J="AccordionContent",Q=r.default.forwardRef((e,r)=>{let{__scopeAccordion:n,...o}=e,i=F(j,n),a=q(J,n),l=D(n);return(0,t.jsx)(x,{role:"region","aria-labelledby":a.triggerId,"data-orientation":i.orientation,...l,...o,ref:r,style:{"--radix-accordion-content-height":"var(--radix-collapsible-content-height)","--radix-accordion-content-width":"var(--radix-collapsible-content-width)",...e.style}})});function Z(e){return e?"open":"closed"}Q.displayName=J;var ee=e.i(64659),et=e.i(75157);let er=r.forwardRef(({className:e,...r},n)=>(0,t.jsx)(X,{ref:n,className:(0,et.cn)("border-b",e),...r}));er.displayName="AccordionItem";let en=r.forwardRef(({className:e,children:r,...n},o)=>(0,t.jsx)(Y,{className:"flex",children:(0,t.jsxs)(K,{ref:o,className:(0,et.cn)("flex flex-1 items-center justify-between py-4 font-medium transition-all hover:underline [&[data-state=open]>svg]:rotate-180",e),...n,children:[r,(0,t.jsx)(ee.ChevronDown,{className:"h-4 w-4 shrink-0 transition-transform duration-200"})]})}));en.displayName=K.displayName;let eo=r.forwardRef(({className:e,children:r,...n},o)=>(0,t.jsx)(Q,{ref:o,className:"overflow-hidden text-sm transition-all data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",...n,children:(0,t.jsx)("div",{className:(0,et.cn)("pb-4 pt-0",e),children:r})}));eo.displayName=Q.displayName,e.s(["Accordion",()=>T,"AccordionContent",()=>eo,"AccordionItem",()=>er,"AccordionTrigger",()=>en],73443)},95187,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={callServer:function(){return i.callServer},createServerReference:function(){return l.createServerReference},findSourceMapURL:function(){return a.findSourceMapURL}};for(var o in n)Object.defineProperty(r,o,{enumerable:!0,get:n[o]});let i=e.r(32120),a=e.r(92245),l=e.r(35326)},29228,55706,e=>{"use strict";var t=e.i(83966),r=e.i(71645),n=e.i(73050),o=e.i(71223),i=e.i(29873),a=e.i(98892),l=e.i(7670),s=e.i(72733),c=e.i(38279),u=e.i(97865),d=e.i(69212),f=e.i(34251),p=e.i(94395),h=e.i(81977),m=e.i(62728),y=e.i(98770),v=["type","layout","connectNulls","ref"],g=["key"];function b(e){return(b="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function w(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function x(){return(x=Object.assign.bind()).apply(this,arguments)}function C(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function S(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?C(Object(r),!0).forEach(function(t){O(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):C(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function P(e){return function(e){if(Array.isArray(e))return j(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return j(e,void 0);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return j(e,void 0)}}(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function j(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function E(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,k(n.key),n)}}function R(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(R=function(){return!!e})()}function A(e){return(A=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _(e,t){return(_=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}function O(e,t,r){return(t=k(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function k(e){var t=function(e,t){if("object"!=b(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=b(n))return n;throw TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==b(t)?t:t+""}var D=function(e){var t,m;function C(){var e,t,r;if(!(this instanceof C))throw TypeError("Cannot call a class as a function");for(var n=arguments.length,o=Array(n),i=0;i<n;i++)o[i]=arguments[i];return t=C,r=[].concat(o),t=A(t),O(e=function(e,t){if(t&&("object"===b(t)||"function"==typeof t))return t;if(void 0!==t)throw TypeError("Derived constructors may only return object or undefined");var r=e;if(void 0===r)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return r}(this,R()?Reflect.construct(t,r||[],A(this).constructor):t.apply(this,r)),"state",{isAnimationFinished:!0,totalLength:0}),O(e,"generateSimpleStrokeDasharray",function(e,t){return"".concat(t,"px ").concat(e-t,"px")}),O(e,"getStrokeDasharray",function(t,r,n){var o=n.reduce(function(e,t){return e+t});if(!o)return e.generateSimpleStrokeDasharray(r,t);for(var i=Math.floor(t/o),a=t%o,l=r-t,s=[],c=0,u=0;c<n.length;u+=n[c],++c)if(u+n[c]>a){s=[].concat(P(n.slice(0,c)),[a-u]);break}var d=s.length%2==0?[0,l]:[l];return[].concat(P(C.repeat(n,i)),P(s),d).map(function(e){return"".concat(e,"px")}).join(", ")}),O(e,"id",(0,p.uniqueId)("recharts-line-")),O(e,"pathRef",function(t){e.mainCurve=t}),O(e,"handleAnimationEnd",function(){e.setState({isAnimationFinished:!0}),e.props.onAnimationEnd&&e.props.onAnimationEnd()}),O(e,"handleAnimationStart",function(){e.setState({isAnimationFinished:!1}),e.props.onAnimationStart&&e.props.onAnimationStart()}),e}if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");return C.prototype=Object.create(e&&e.prototype,{constructor:{value:C,writable:!0,configurable:!0}}),Object.defineProperty(C,"prototype",{writable:!1}),e&&_(C,e),t=[{key:"componentDidMount",value:function(){if(this.props.isAnimationActive){var e=this.getTotalLength();this.setState({totalLength:e})}}},{key:"componentDidUpdate",value:function(){if(this.props.isAnimationActive){var e=this.getTotalLength();e!==this.state.totalLength&&this.setState({totalLength:e})}}},{key:"getTotalLength",value:function(){var e=this.mainCurve;try{return e&&e.getTotalLength&&e.getTotalLength()||0}catch(e){return 0}}},{key:"renderErrorBar",value:function(e,t){if(this.props.isAnimationActive&&!this.state.isAnimationFinished)return null;var n=this.props,o=n.points,i=n.xAxis,a=n.yAxis,l=n.layout,s=n.children,c=(0,h.findAllByType)(s,f.ErrorBar);if(!c)return null;var d=function(e,t){return{x:e.x,y:e.y,value:e.value,errorVal:(0,y.getValueByDataKey)(e.payload,t)}};return r.default.createElement(u.Layer,{clipPath:e?"url(#clipPath-".concat(t,")"):null},c.map(function(e){return r.default.cloneElement(e,{key:"bar-".concat(e.props.dataKey),data:o,xAxis:i,yAxis:a,layout:l,dataPointFormatter:d})}))}},{key:"renderDots",value:function(e,t,n){if(this.props.isAnimationActive&&!this.state.isAnimationFinished)return null;var o=this.props,i=o.dot,a=o.points,l=o.dataKey,s=(0,h.filterProps)(this.props,!1),c=(0,h.filterProps)(i,!0),d=a.map(function(e,t){var r=S(S(S({key:"dot-".concat(t),r:3},s),c),{},{value:e.value,dataKey:l,cx:e.x,cy:e.y,index:t,payload:e.payload});return C.renderDotItem(i,r)}),f={clipPath:e?"url(#clipPath-".concat(t?"":"dots-").concat(n,")"):null};return r.default.createElement(u.Layer,x({className:"recharts-line-dots",key:"dots"},f),d)}},{key:"renderCurveStatically",value:function(e,t,n,o){var i=this.props,a=i.type,l=i.layout,c=i.connectNulls,u=(i.ref,w(i,v)),d=S(S(S({},(0,h.filterProps)(u,!0)),{},{fill:"none",className:"recharts-line-curve",clipPath:t?"url(#clipPath-".concat(n,")"):null,points:e},o),{},{type:a,layout:l,connectNulls:c});return r.default.createElement(s.Curve,x({},d,{pathRef:this.pathRef}))}},{key:"renderCurveWithAnimation",value:function(e,t){var o=this,i=this.props,a=i.points,l=i.strokeDasharray,s=i.isAnimationActive,c=i.animationBegin,u=i.animationDuration,d=i.animationEasing,f=i.animationId,h=i.animateNewValues,m=i.width,y=i.height,v=this.state,g=v.prevPoints,b=v.totalLength;return r.default.createElement(n.default,{begin:c,duration:u,isActive:s,easing:d,from:{t:0},to:{t:1},key:"line-".concat(f),onAnimationEnd:this.handleAnimationEnd,onAnimationStart:this.handleAnimationStart},function(r){var n,i=r.t;if(g){var s=g.length/a.length,c=a.map(function(e,t){var r=Math.floor(t*s);if(g[r]){var n=g[r],o=(0,p.interpolateNumber)(n.x,e.x),a=(0,p.interpolateNumber)(n.y,e.y);return S(S({},e),{},{x:o(i),y:a(i)})}if(h){var l=(0,p.interpolateNumber)(2*m,e.x),c=(0,p.interpolateNumber)(y/2,e.y);return S(S({},e),{},{x:l(i),y:c(i)})}return S(S({},e),{},{x:e.x,y:e.y})});return o.renderCurveStatically(c,e,t)}var u=(0,p.interpolateNumber)(0,b)(i);if(l){var d="".concat(l).split(/[,\s]+/gim).map(function(e){return parseFloat(e)});n=o.getStrokeDasharray(u,b,d)}else n=o.generateSimpleStrokeDasharray(b,u);return o.renderCurveStatically(a,e,t,{strokeDasharray:n})})}},{key:"renderCurve",value:function(e,t){var r=this.props,n=r.points,o=r.isAnimationActive,i=this.state,l=i.prevPoints,s=i.totalLength;return o&&n&&n.length&&(!l&&s>0||!(0,a.default)(l,n))?this.renderCurveWithAnimation(e,t):this.renderCurveStatically(n,e,t)}},{key:"render",value:function(){var e,t=this.props,n=t.hide,o=t.dot,a=t.points,s=t.className,c=t.xAxis,f=t.yAxis,p=t.top,m=t.left,y=t.width,v=t.height,g=t.isAnimationActive,b=t.id;if(n||!a||!a.length)return null;var w=this.state.isAnimationFinished,x=1===a.length,C=(0,l.default)("recharts-line",s),S=c&&c.allowDataOverflow,P=f&&f.allowDataOverflow,j=S||P,E=(0,i.default)(b)?this.id:b,R=null!=(e=(0,h.filterProps)(o,!1))?e:{r:3,strokeWidth:2},A=R.r,_=R.strokeWidth,O=((0,h.hasClipDot)(o)?o:{}).clipDot,k=void 0===O||O,D=2*(void 0===A?3:A)+(void 0===_?2:_);return r.default.createElement(u.Layer,{className:C},S||P?r.default.createElement("defs",null,r.default.createElement("clipPath",{id:"clipPath-".concat(E)},r.default.createElement("rect",{x:S?m:m-y/2,y:P?p:p-v/2,width:S?y:2*y,height:P?v:2*v})),!k&&r.default.createElement("clipPath",{id:"clipPath-dots-".concat(E)},r.default.createElement("rect",{x:m-D/2,y:p-D/2,width:y+D,height:v+D}))):null,!x&&this.renderCurve(j,E),this.renderErrorBar(j,E),(x||o)&&this.renderDots(j,k,E),(!g||w)&&d.LabelList.renderCallByParent(this.props,a))}}],m=[{key:"getDerivedStateFromProps",value:function(e,t){return e.animationId!==t.prevAnimationId?{prevAnimationId:e.animationId,curPoints:e.points,prevPoints:t.curPoints}:e.points!==t.curPoints?{curPoints:e.points}:null}},{key:"repeat",value:function(e,t){for(var r=e.length%2!=0?[].concat(P(e),[0]):e,n=[],o=0;o<t;++o)n=[].concat(P(n),P(r));return n}},{key:"renderDotItem",value:function(e,t){var n;if(r.default.isValidElement(e))n=r.default.cloneElement(e,t);else if((0,o.default)(e))n=e(t);else{var i=t.key,a=w(t,g),s=(0,l.default)("recharts-line-dot","boolean"!=typeof e?e.className:"");n=r.default.createElement(c.Dot,x({key:i},a,{className:s}))}return n}}],t&&E(C.prototype,t),m&&E(C,m),Object.defineProperty(C,"prototype",{writable:!1}),C}(r.PureComponent);O(D,"displayName","Line"),O(D,"defaultProps",{xAxisId:0,yAxisId:0,connectNulls:!1,activeDot:!0,dot:!0,legendType:"line",stroke:"#3182bd",strokeWidth:1,fill:"#fff",points:[],isAnimationActive:!m.Global.isSsr,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",hide:!1,label:!1}),O(D,"getComposedData",function(e){var t=e.props,r=e.xAxis,n=e.yAxis,o=e.xAxisTicks,a=e.yAxisTicks,l=e.dataKey,s=e.bandSize,c=e.displayedData,u=e.offset,d=t.layout;return S({points:c.map(function(e,t){var c=(0,y.getValueByDataKey)(e,l);return"horizontal"===d?{x:(0,y.getCateCoordinateOfLine)({axis:r,ticks:o,bandSize:s,entry:e,index:t}),y:(0,i.default)(c)?null:n.scale(c),value:c,payload:e}:{x:(0,i.default)(c)?null:r.scale(c),y:(0,y.getCateCoordinateOfLine)({axis:n,ticks:a,bandSize:s,entry:e,index:t}),value:c,payload:e}}),layout:d},u)}),e.s(["Line",()=>D],55706);var T=e.i(85183),N=e.i(93230),L=e.i(44171),I=(0,t.generateCategoricalChart)({chartName:"LineChart",GraphicalChild:D,axisComponents:[{axisType:"xAxis",AxisComp:T.XAxis},{axisType:"yAxis",AxisComp:N.YAxis}],formatAxisMap:L.formatAxisMap});e.s(["LineChart",()=>I],29228)}]);