UNPKG

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

6 lines 74 kB
module.exports=[57997,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={UnrecognizedActionError:function(){return f},unstable_isUnrecognizedActionError:function(){return g}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});class f extends Error{constructor(...a){super(...a),this.name="UnrecognizedActionError"}}function g(a){return!!(a&&"object"==typeof a&&a instanceof f)}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},75718,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"ReadonlyURLSearchParams",{enumerable:!0,get:function(){return e}});class d extends Error{constructor(){super("Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams")}}class e extends URLSearchParams{append(){throw new d}delete(){throw new d}set(){throw new d}sort(){throw new d}}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},15128,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"RedirectStatusCode",{enumerable:!0,get:function(){return e}});var d,e=((d={})[d.SeeOther=303]="SeeOther",d[d.TemporaryRedirect=307]="TemporaryRedirect",d[d.PermanentRedirect=308]="PermanentRedirect",d);("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},11026,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d,e={REDIRECT_ERROR_CODE:function(){return h},RedirectType:function(){return i},isRedirectError:function(){return j}};for(var f in e)Object.defineProperty(c,f,{enumerable:!0,get:e[f]});let g=a.r(15128),h="NEXT_REDIRECT";var i=((d={}).push="push",d.replace="replace",d);function j(a){if("object"!=typeof a||null===a||!("digest"in a)||"string"!=typeof a.digest)return!1;let b=a.digest.split(";"),[c,d]=b,e=b.slice(2,-2).join(";"),f=Number(b.at(-2));return c===h&&("replace"===d||"push"===d)&&"string"==typeof e&&!isNaN(f)&&f in g.RedirectStatusCode}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},22099,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={getRedirectError:function(){return i},getRedirectStatusCodeFromError:function(){return n},getRedirectTypeFromError:function(){return m},getURLFromRedirectError:function(){return l},permanentRedirect:function(){return k},redirect:function(){return j}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(15128),g=a.r(11026),h=a.r(20635).actionAsyncStorage;function i(a,b,c=f.RedirectStatusCode.TemporaryRedirect){let d=Object.defineProperty(Error(g.REDIRECT_ERROR_CODE),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return d.digest=`${g.REDIRECT_ERROR_CODE};${b};${a};${c};`,d}function j(a,b){throw i(a,b??=h?.getStore()?.isAction?g.RedirectType.push:g.RedirectType.replace,f.RedirectStatusCode.TemporaryRedirect)}function k(a,b=g.RedirectType.replace){throw i(a,b,f.RedirectStatusCode.PermanentRedirect)}function l(a){return(0,g.isRedirectError)(a)?a.digest.split(";").slice(2,-2).join(";"):null}function m(a){if(!(0,g.isRedirectError)(a))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return a.digest.split(";",2)[1]}function n(a){if(!(0,g.isRedirectError)(a))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return Number(a.digest.split(";").at(-2))}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},8535,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={HTTPAccessErrorStatus:function(){return f},HTTP_ERROR_FALLBACK_ERROR_CODE:function(){return h},getAccessFallbackErrorTypeByStatus:function(){return k},getAccessFallbackHTTPStatus:function(){return j},isHTTPAccessFallbackError:function(){return i}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f={NOT_FOUND:404,FORBIDDEN:403,UNAUTHORIZED:401},g=new Set(Object.values(f)),h="NEXT_HTTP_ERROR_FALLBACK";function i(a){if("object"!=typeof a||null===a||!("digest"in a)||"string"!=typeof a.digest)return!1;let[b,c]=a.digest.split(";");return b===h&&g.has(Number(c))}function j(a){return Number(a.digest.split(";")[1])}function k(a){switch(a){case 401:return"unauthorized";case 403:return"forbidden";case 404:return"not-found";default:return}}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},28102,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"notFound",{enumerable:!0,get:function(){return f}});let d=a.r(8535),e=`${d.HTTP_ERROR_FALLBACK_ERROR_CODE};404`;function f(){let a=Object.defineProperty(Error(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});throw a.digest=e,a}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},64177,(a,b,c)=>{"use strict";function d(){throw Object.defineProperty(Error("`forbidden()` is experimental and only allowed to be enabled when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E488",enumerable:!1,configurable:!0})}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"forbidden",{enumerable:!0,get:function(){return d}}),a.r(8535).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},88213,(a,b,c)=>{"use strict";function d(){throw Object.defineProperty(Error("`unauthorized()` is experimental and only allowed to be used when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E411",enumerable:!1,configurable:!0})}Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"unauthorized",{enumerable:!0,get:function(){return d}}),a.r(8535).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},35710,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={isHangingPromiseRejectionError:function(){return f},makeDevtoolsIOAwarePromise:function(){return l},makeHangingPromise:function(){return j}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(a){return"object"==typeof a&&null!==a&&"digest"in a&&a.digest===g}let g="HANGING_PROMISE_REJECTION";class h extends Error{constructor(a,b){super(`During prerendering, ${b} rejects when the prerender is complete. Typically these errors are handled by React but if you move ${b} to a different context by using \`setTimeout\`, \`after\`, or similar functions you may observe this error and you should handle it in that context. This occurred at route "${a}".`),this.route=a,this.expression=b,this.digest=g}}let i=new WeakMap;function j(a,b,c){if(a.aborted)return Promise.reject(new h(b,c));{let d=new Promise((d,e)=>{let f=e.bind(null,new h(b,c)),g=i.get(a);if(g)g.push(f);else{let b=[f];i.set(a,b),a.addEventListener("abort",()=>{for(let a=0;a<b.length;a++)b[a]()},{once:!0})}});return d.catch(k),d}}function k(){}function l(a,b,c){return b.stagedRendering?b.stagedRendering.delayUntilStage(c,void 0,a):new Promise(b=>{setTimeout(()=>{b(a)},0)})}},31101,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"isPostpone",{enumerable:!0,get:function(){return e}});let d=Symbol.for("react.postpone");function e(a){return"object"==typeof a&&null!==a&&a.$$typeof===d}},77747,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"isNextRouterError",{enumerable:!0,get:function(){return f}});let d=a.r(8535),e=a.r(11026);function f(a){return(0,e.isRedirectError)(a)||(0,d.isHTTPAccessFallbackError)(a)}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},3326,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={DynamicServerError:function(){return g},isDynamicServerError:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f="DYNAMIC_SERVER_USAGE";class g extends Error{constructor(a){super(`Dynamic server usage: ${a}`),this.description=a,this.digest=f}}function h(a){return"object"==typeof a&&null!==a&&"digest"in a&&"string"==typeof a.digest&&a.digest===f}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},99392,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={StaticGenBailoutError:function(){return g},isStaticGenBailoutError:function(){return h}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f="NEXT_STATIC_GEN_BAILOUT";class g extends Error{constructor(...a){super(...a),this.code=f}}function h(a){return"object"==typeof a&&null!==a&&"code"in a&&a.code===f}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},83590,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={METADATA_BOUNDARY_NAME:function(){return f},OUTLET_BOUNDARY_NAME:function(){return h},ROOT_LAYOUT_BOUNDARY_NAME:function(){return i},VIEWPORT_BOUNDARY_NAME:function(){return g}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f="__next_metadata_boundary__",g="__next_viewport_boundary__",h="__next_outlet_boundary__",i="__next_root_layout_boundary__"},76383,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={atLeastOneTask:function(){return h},scheduleImmediate:function(){return g},scheduleOnNextTick:function(){return f},waitAtLeastOneReactRenderTask:function(){return i}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a=>{Promise.resolve().then(()=>{process.nextTick(a)})},g=a=>{setImmediate(a)};function h(){return new Promise(a=>g(a))}function i(){return new Promise(a=>setImmediate(a))}},88644,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"InvariantError",{enumerable:!0,get:function(){return d}});class d extends Error{constructor(a,b){super(`Invariant: ${a.endsWith(".")?a:a+"."} This is a bug in Next.js.`,b),this.name="InvariantError"}}},54110,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d,e,f={Postpone:function(){return B},PreludeState:function(){return $},abortAndThrowOnSynchronousRequestDataAccess:function(){return A},abortOnSynchronousPlatformIOAccess:function(){return z},accessedDynamicData:function(){return J},annotateDynamicAccess:function(){return O},consumeDynamicAccess:function(){return K},createDynamicTrackingState:function(){return s},createDynamicValidationState:function(){return t},createHangingInputAbortSignal:function(){return N},createRenderInBrowserAbortSignal:function(){return M},delayUntilRuntimeStage:function(){return ac},formatDynamicAPIAccesses:function(){return L},getFirstDynamicReason:function(){return u},getStaticShellDisallowedDynamicReasons:function(){return ab},isDynamicPostpone:function(){return E},isPrerenderInterruptedError:function(){return I},logDisallowedDynamicError:function(){return _},markCurrentScopeAsDynamic:function(){return v},postponeWithTracking:function(){return C},throwIfDisallowedDynamic:function(){return aa},throwToInterruptStaticGeneration:function(){return w},trackAllowedDynamicAccess:function(){return W},trackDynamicDataInDynamicRender:function(){return x},trackDynamicHoleInRuntimeShell:function(){return X},trackDynamicHoleInStaticShell:function(){return Y},useDynamicRouteParams:function(){return P},useDynamicSearchParams:function(){return Q}};for(var g in f)Object.defineProperty(c,g,{enumerable:!0,get:f[g]});let h=(d=a.r(72131))&&d.__esModule?d:{default:d},i=a.r(3326),j=a.r(99392),k=a.r(32319),l=a.r(56704),m=a.r(35710),n=a.r(83590),o=a.r(76383),p=a.r(41997),q=a.r(88644),r="function"==typeof h.default.unstable_postpone;function s(a){return{isDebugDynamicAccesses:a,dynamicAccesses:[],syncDynamicErrorWithStack:null}}function t(){return{hasSuspenseAboveBody:!1,hasDynamicMetadata:!1,dynamicMetadata:null,hasDynamicViewport:!1,hasAllowedDynamic:!1,dynamicErrors:[]}}function u(a){var b;return null==(b=a.dynamicAccesses[0])?void 0:b.expression}function v(a,b,c){if(b)switch(b.type){case"cache":case"unstable-cache":case"private-cache":return}if(!a.forceDynamic&&!a.forceStatic){if(a.dynamicShouldError)throw Object.defineProperty(new j.StaticGenBailoutError(`Route ${a.route} with \`dynamic = "error"\` couldn't be rendered statically because it used \`${c}\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering`),"__NEXT_ERROR_CODE",{value:"E553",enumerable:!1,configurable:!0});if(b)switch(b.type){case"prerender-ppr":return C(a.route,c,b.dynamicTracking);case"prerender-legacy":b.revalidate=0;let d=Object.defineProperty(new i.DynamicServerError(`Route ${a.route} couldn't be rendered statically because it used ${c}. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`),"__NEXT_ERROR_CODE",{value:"E550",enumerable:!1,configurable:!0});throw a.dynamicUsageDescription=c,a.dynamicUsageStack=d.stack,d}}}function w(a,b,c){let d=Object.defineProperty(new i.DynamicServerError(`Route ${b.route} couldn't be rendered statically because it used \`${a}\`. See more info here: https://nextjs.org/docs/messages/dynamic-server-error`),"__NEXT_ERROR_CODE",{value:"E558",enumerable:!1,configurable:!0});throw c.revalidate=0,b.dynamicUsageDescription=a,b.dynamicUsageStack=d.stack,d}function x(a){switch(a.type){case"cache":case"unstable-cache":case"private-cache":return}}function y(a,b,c){let d=H(`Route ${a} needs to bail out of prerendering at this point because it used ${b}.`);c.controller.abort(d);let e=c.dynamicTracking;e&&e.dynamicAccesses.push({stack:e.isDebugDynamicAccesses?Error().stack:void 0,expression:b})}function z(a,b,c,d){let e=d.dynamicTracking;y(a,b,d),e&&null===e.syncDynamicErrorWithStack&&(e.syncDynamicErrorWithStack=c)}function A(a,b,c,d){if(!1===d.controller.signal.aborted){y(a,b,d);let e=d.dynamicTracking;e&&null===e.syncDynamicErrorWithStack&&(e.syncDynamicErrorWithStack=c)}throw H(`Route ${a} needs to bail out of prerendering at this point because it used ${b}.`)}function B({reason:a,route:b}){let c=k.workUnitAsyncStorage.getStore();C(b,a,c&&"prerender-ppr"===c.type?c.dynamicTracking:null)}function C(a,b,c){(function(){if(!r)throw Object.defineProperty(Error("Invariant: React.unstable_postpone is not defined. This suggests the wrong version of React was loaded. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E224",enumerable:!1,configurable:!0})})(),c&&c.dynamicAccesses.push({stack:c.isDebugDynamicAccesses?Error().stack:void 0,expression:b}),h.default.unstable_postpone(D(a,b))}function D(a,b){return`Route ${a} needs to bail out of prerendering at this point because it used ${b}. React throws this special object to indicate where. It should not be caught by your own try/catch. Learn more: https://nextjs.org/docs/messages/ppr-caught-error`}function E(a){return"object"==typeof a&&null!==a&&"string"==typeof a.message&&F(a.message)}function F(a){return a.includes("needs to bail out of prerendering at this point because it used")&&a.includes("Learn more: https://nextjs.org/docs/messages/ppr-caught-error")}if(!1===F(D("%%%","^^^")))throw Object.defineProperty(Error("Invariant: isDynamicPostpone misidentified a postpone reason. This is a bug in Next.js"),"__NEXT_ERROR_CODE",{value:"E296",enumerable:!1,configurable:!0});let G="NEXT_PRERENDER_INTERRUPTED";function H(a){let b=Object.defineProperty(Error(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return b.digest=G,b}function I(a){return"object"==typeof a&&null!==a&&a.digest===G&&"name"in a&&"message"in a&&a instanceof Error}function J(a){return a.length>0}function K(a,b){return a.dynamicAccesses.push(...b.dynamicAccesses),a.dynamicAccesses}function L(a){return a.filter(a=>"string"==typeof a.stack&&a.stack.length>0).map(({expression:a,stack:b})=>(b=b.split("\n").slice(4).filter(a=>!(a.includes("node_modules/next/")||a.includes(" (<anonymous>)")||a.includes(" (node:"))).join("\n"),`Dynamic API Usage Debug - ${a}:
${b}`))}function M(){let a=new AbortController;return a.abort(Object.defineProperty(new p.BailoutToCSRError("Render in Browser"),"__NEXT_ERROR_CODE",{value:"E721",enumerable:!1,configurable:!0})),a.signal}function N(a){switch(a.type){case"prerender":case"prerender-runtime":let b=new AbortController;if(a.cacheSignal)a.cacheSignal.inputReady().then(()=>{b.abort()});else{let c=(0,k.getRuntimeStagePromise)(a);c?c.then(()=>(0,o.scheduleOnNextTick)(()=>b.abort())):(0,o.scheduleOnNextTick)(()=>b.abort())}return b.signal;case"prerender-client":case"prerender-ppr":case"prerender-legacy":case"request":case"cache":case"private-cache":case"unstable-cache":return}}function O(a,b){let c=b.dynamicTracking;c&&c.dynamicAccesses.push({stack:c.isDebugDynamicAccesses?Error().stack:void 0,expression:a})}function P(a){let b=l.workAsyncStorage.getStore(),c=k.workUnitAsyncStorage.getStore();if(b&&c)switch(c.type){case"prerender-client":case"prerender":{let d=c.fallbackRouteParams;d&&d.size>0&&h.default.use((0,m.makeHangingPromise)(c.renderSignal,b.route,a));break}case"prerender-ppr":{let d=c.fallbackRouteParams;if(d&&d.size>0)return C(b.route,a,c.dynamicTracking);break}case"prerender-runtime":throw Object.defineProperty(new q.InvariantError(`\`${a}\` was called during a runtime prerender. Next.js should be preventing ${a} from being included in server components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E771",enumerable:!1,configurable:!0});case"cache":case"private-cache":throw Object.defineProperty(new q.InvariantError(`\`${a}\` was called inside a cache scope. Next.js should be preventing ${a} from being included in server components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E745",enumerable:!1,configurable:!0})}}function Q(a){let b=l.workAsyncStorage.getStore(),c=k.workUnitAsyncStorage.getStore();if(b)switch(!c&&(0,k.throwForMissingRequestStore)(a),c.type){case"prerender-client":h.default.use((0,m.makeHangingPromise)(c.renderSignal,b.route,a));break;case"prerender-legacy":case"prerender-ppr":if(b.forceStatic)return;throw Object.defineProperty(new p.BailoutToCSRError(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});case"prerender":case"prerender-runtime":throw Object.defineProperty(new q.InvariantError(`\`${a}\` was called from a Server Component. Next.js should be preventing ${a} from being included in server components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E795",enumerable:!1,configurable:!0});case"cache":case"unstable-cache":case"private-cache":throw Object.defineProperty(new q.InvariantError(`\`${a}\` was called inside a cache scope. Next.js should be preventing ${a} from being included in server components statically, but did not in this case.`),"__NEXT_ERROR_CODE",{value:"E745",enumerable:!1,configurable:!0});case"request":return}}let R=/\n\s+at Suspense \(<anonymous>\)/,S=RegExp(`\\n\\s+at Suspense \\(<anonymous>\\)(?:(?!\\n\\s+at (?:body|div|main|section|article|aside|header|footer|nav|form|p|span|h1|h2|h3|h4|h5|h6) \\(<anonymous>\\))[\\s\\S])*?\\n\\s+at ${n.ROOT_LAYOUT_BOUNDARY_NAME} \\([^\\n]*\\)`),T=RegExp(`\\n\\s+at ${n.METADATA_BOUNDARY_NAME}[\\n\\s]`),U=RegExp(`\\n\\s+at ${n.VIEWPORT_BOUNDARY_NAME}[\\n\\s]`),V=RegExp(`\\n\\s+at ${n.OUTLET_BOUNDARY_NAME}[\\n\\s]`);function W(a,b,c,d){if(!V.test(b)){if(T.test(b)){c.hasDynamicMetadata=!0;return}if(U.test(b)){c.hasDynamicViewport=!0;return}if(S.test(b)){c.hasAllowedDynamic=!0,c.hasSuspenseAboveBody=!0;return}else if(R.test(b)){c.hasAllowedDynamic=!0;return}else{if(d.syncDynamicErrorWithStack)return void c.dynamicErrors.push(d.syncDynamicErrorWithStack);let e=Z(`Route "${a.route}": Uncached data was accessed outside of <Suspense>. This delays the entire page from rendering, resulting in a slow user experience. Learn more: https://nextjs.org/docs/messages/blocking-route`,b);return void c.dynamicErrors.push(e)}}}function X(a,b,c,d){if(!V.test(b)){if(T.test(b)){c.dynamicMetadata=Z(`Route "${a.route}": Uncached data or \`connection()\` was accessed inside \`generateMetadata\`. Except for this instance, the page would have been entirely prerenderable which may have been the intended behavior. See more info here: https://nextjs.org/docs/messages/next-prerender-dynamic-metadata`,b);return}if(U.test(b)){let d=Z(`Route "${a.route}": Uncached data or \`connection()\` was accessed inside \`generateViewport\`. This delays the entire page from rendering, resulting in a slow user experience. Learn more: https://nextjs.org/docs/messages/next-prerender-dynamic-viewport`,b);c.dynamicErrors.push(d);return}if(S.test(b)){c.hasAllowedDynamic=!0,c.hasSuspenseAboveBody=!0;return}else if(R.test(b)){c.hasAllowedDynamic=!0;return}else{if(d.syncDynamicErrorWithStack)return void c.dynamicErrors.push(d.syncDynamicErrorWithStack);let e=Z(`Route "${a.route}": Uncached data or \`connection()\` was accessed outside of \`<Suspense>\`. This delays the entire page from rendering, resulting in a slow user experience. Learn more: https://nextjs.org/docs/messages/blocking-route`,b);return void c.dynamicErrors.push(e)}}}function Y(a,b,c,d){if(!V.test(b)){if(T.test(b)){c.dynamicMetadata=Z(`Route "${a.route}": Runtime data such as \`cookies()\`, \`headers()\`, \`params\`, or \`searchParams\` was accessed inside \`generateMetadata\` or you have file-based metadata such as icons that depend on dynamic params segments. Except for this instance, the page would have been entirely prerenderable which may have been the intended behavior. See more info here: https://nextjs.org/docs/messages/next-prerender-dynamic-metadata`,b);return}if(U.test(b)){let d=Z(`Route "${a.route}": Runtime data such as \`cookies()\`, \`headers()\`, \`params\`, or \`searchParams\` was accessed inside \`generateViewport\`. This delays the entire page from rendering, resulting in a slow user experience. Learn more: https://nextjs.org/docs/messages/next-prerender-dynamic-viewport`,b);c.dynamicErrors.push(d);return}if(S.test(b)){c.hasAllowedDynamic=!0,c.hasSuspenseAboveBody=!0;return}else if(R.test(b)){c.hasAllowedDynamic=!0;return}else{if(d.syncDynamicErrorWithStack)return void c.dynamicErrors.push(d.syncDynamicErrorWithStack);let e=Z(`Route "${a.route}": Runtime data such as \`cookies()\`, \`headers()\`, \`params\`, or \`searchParams\` was accessed outside of \`<Suspense>\`. This delays the entire page from rendering, resulting in a slow user experience. Learn more: https://nextjs.org/docs/messages/blocking-route`,b);return void c.dynamicErrors.push(e)}}}function Z(a,b){let c=Object.defineProperty(Error(a),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return c.stack=c.name+": "+a+b,c}var $=((e={})[e.Full=0]="Full",e[e.Empty=1]="Empty",e[e.Errored=2]="Errored",e);function _(a,b){console.error(b),a.dev||(a.hasReadableErrorStacks?console.error(`To get a more detailed stack trace and pinpoint the issue, start the app in development mode by running \`next dev\`, then open "${a.route}" in your browser to investigate the error.`):console.error(`To get a more detailed stack trace and pinpoint the issue, try one of the following:
  - Start the app in development mode by running \`next dev\`, then open "${a.route}" in your browser to investigate the error.
  - Rerun the production build with \`next build --debug-prerender\` to generate better stack traces.`))}function aa(a,b,c,d){if(d.syncDynamicErrorWithStack)throw _(a,d.syncDynamicErrorWithStack),new j.StaticGenBailoutError;if(0!==b){if(c.hasSuspenseAboveBody)return;let d=c.dynamicErrors;if(d.length>0){for(let b=0;b<d.length;b++)_(a,d[b]);throw new j.StaticGenBailoutError}if(c.hasDynamicViewport)throw console.error(`Route "${a.route}" has a \`generateViewport\` that depends on Request data (\`cookies()\`, etc...) or uncached external data (\`fetch(...)\`, etc...) without explicitly allowing fully dynamic rendering. See more info here: https://nextjs.org/docs/messages/next-prerender-dynamic-viewport`),new j.StaticGenBailoutError;if(1===b)throw console.error(`Route "${a.route}" did not produce a static shell and Next.js was unable to determine a reason. This is a bug in Next.js.`),new j.StaticGenBailoutError}else if(!1===c.hasAllowedDynamic&&c.hasDynamicMetadata)throw console.error(`Route "${a.route}" has a \`generateMetadata\` that depends on Request data (\`cookies()\`, etc...) or uncached external data (\`fetch(...)\`, etc...) when the rest of the route does not. See more info here: https://nextjs.org/docs/messages/next-prerender-dynamic-metadata`),new j.StaticGenBailoutError}function ab(a,b,c){if(c.hasSuspenseAboveBody)return[];if(0!==b){let d=c.dynamicErrors;if(d.length>0)return d;if(1===b)return[Object.defineProperty(new q.InvariantError(`Route "${a.route}" did not produce a static shell and Next.js was unable to determine a reason.`),"__NEXT_ERROR_CODE",{value:"E936",enumerable:!1,configurable:!0})]}else if(!1===c.hasAllowedDynamic&&0===c.dynamicErrors.length&&c.dynamicMetadata)return[c.dynamicMetadata];return[]}function ac(a,b){return a.runtimeStagePromise?a.runtimeStagePromise.then(()=>b):b}},44753,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"unstable_rethrow",{enumerable:!0,get:function(){return function a(b){if((0,g.isNextRouterError)(b)||(0,f.isBailoutToCSRError)(b)||(0,i.isDynamicServerError)(b)||(0,h.isDynamicPostpone)(b)||(0,e.isPostpone)(b)||(0,d.isHangingPromiseRejectionError)(b)||(0,h.isPrerenderInterruptedError)(b))throw b;b instanceof Error&&"cause"in b&&a(b.cause)}}});let d=a.r(35710),e=a.r(31101),f=a.r(41997),g=a.r(77747),h=a.r(54110),i=a.r(3326);("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},47083,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"unstable_rethrow",{enumerable:!0,get:function(){return d}});let d=a.r(44753).unstable_rethrow;("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},21066,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={ReadonlyURLSearchParams:function(){return f.ReadonlyURLSearchParams},RedirectType:function(){return h.RedirectType},forbidden:function(){return j.forbidden},notFound:function(){return i.notFound},permanentRedirect:function(){return g.permanentRedirect},redirect:function(){return g.redirect},unauthorized:function(){return k.unauthorized},unstable_isUnrecognizedActionError:function(){return m},unstable_rethrow:function(){return l.unstable_rethrow}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(75718),g=a.r(22099),h=a.r(11026),i=a.r(28102),j=a.r(64177),k=a.r(88213),l=a.r(47083);function m(){throw Object.defineProperty(Error("`unstable_isUnrecognizedActionError` can only be used on the client."),"__NEXT_ERROR_CODE",{value:"E776",enumerable:!1,configurable:!0})}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},74137,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={ReadonlyURLSearchParams:function(){return h.ReadonlyURLSearchParams},RedirectType:function(){return l.RedirectType},ServerInsertedHTMLContext:function(){return j.ServerInsertedHTMLContext},forbidden:function(){return l.forbidden},notFound:function(){return l.notFound},permanentRedirect:function(){return l.permanentRedirect},redirect:function(){return l.redirect},unauthorized:function(){return l.unauthorized},unstable_isUnrecognizedActionError:function(){return k.unstable_isUnrecognizedActionError},unstable_rethrow:function(){return l.unstable_rethrow},useParams:function(){return r},usePathname:function(){return p},useRouter:function(){return q},useSearchParams:function(){return o},useSelectedLayoutSegment:function(){return t},useSelectedLayoutSegments:function(){return s},useServerInsertedHTML:function(){return j.useServerInsertedHTML}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});let f=a.r(46058)._(a.r(72131)),g=a.r(9270),h=a.r(36313),i=a.r(39118),j=a.r(18341),k=a.r(57997),l=a.r(21066),m=a.r(54110).useDynamicRouteParams,n=a.r(54110).useDynamicSearchParams;function o(){n?.("useSearchParams()");let a=(0,f.useContext)(h.SearchParamsContext);return(0,f.useMemo)(()=>a?new h.ReadonlyURLSearchParams(a):null,[a])}function p(){return m?.("usePathname()"),(0,f.useContext)(h.PathnameContext)}function q(){let a=(0,f.useContext)(g.AppRouterContext);if(null===a)throw Object.defineProperty(Error("invariant expected app router to be mounted"),"__NEXT_ERROR_CODE",{value:"E238",enumerable:!1,configurable:!0});return a}function r(){return m?.("useParams()"),(0,f.useContext)(h.PathParamsContext)}function s(a="children"){m?.("useSelectedLayoutSegments()");let b=(0,f.useContext)(g.LayoutRouterContext);return b?(0,i.getSelectedLayoutSegmentPath)(b.parentTree,a):null}function t(a="children"){m?.("useSelectedLayoutSegment()"),(0,f.useContext)(h.NavigationPromisesContext);let b=s(a);return(0,i.computeSelectedLayoutSegment)(b,a)}("function"==typeof c.default||"object"==typeof c.default&&null!==c.default)&&void 0===c.default.__esModule&&(Object.defineProperty(c.default,"__esModule",{value:!0}),Object.assign(c.default,c),b.exports=c.default)},50944,(a,b,c)=>{b.exports=a.r(74137)},91822,a=>{"use strict";var b=a.i(87924),c=a.i(50944),d=a.i(18225),e=a.i(91119),f=a.i(99570),g=a.i(80701),h=a.i(72131),i=a.i(7554),j=a.i(50104),k=a.i(37738),l=a.i(70121),m=a.i(92843),n=a.i(30553),o=a.i(46872),p=a.i(25152),q=a.i(7827),r="rovingFocusGroup.onEntryFocus",s={bubbles:!1,cancelable:!0},t="RovingFocusGroup",[u,v,w]=(0,k.createCollection)(t),[x,y]=(0,j.createContextScope)(t,[w]),[z,A]=x(t),B=h.forwardRef((a,c)=>(0,b.jsx)(u.Provider,{scope:a.__scopeRovingFocusGroup,children:(0,b.jsx)(u.Slot,{scope:a.__scopeRovingFocusGroup,children:(0,b.jsx)(C,{...a,ref:c})})}));B.displayName=t;var C=h.forwardRef((a,c)=>{let{__scopeRovingFocusGroup:d,orientation:e,loop:f=!1,dir:g,currentTabStopId:j,defaultCurrentTabStopId:k,onCurrentTabStopIdChange:m,onEntryFocus:t,preventScrollOnEntryFocus:u=!1,...w}=a,x=h.useRef(null),y=(0,l.useComposedRefs)(c,x),A=(0,q.useDirection)(g),[B=null,C]=(0,p.useControllableState)({prop:j,defaultProp:k,onChange:m}),[D,E]=h.useState(!1),F=(0,o.useCallbackRef)(t),H=v(d),I=h.useRef(!1),[J,K]=h.useState(0);return h.useEffect(()=>{let a=x.current;if(a)return a.addEventListener(r,F),()=>a.removeEventListener(r,F)},[F]),(0,b.jsx)(z,{scope:d,orientation:e,dir:A,loop:f,currentTabStopId:B,onItemFocus:h.useCallback(a=>C(a),[C]),onItemShiftTab:h.useCallback(()=>E(!0),[]),onFocusableItemAdd:h.useCallback(()=>K(a=>a+1),[]),onFocusableItemRemove:h.useCallback(()=>K(a=>a-1),[]),children:(0,b.jsx)(n.Primitive.div,{tabIndex:D||0===J?-1:0,"data-orientation":e,...w,ref:y,style:{outline:"none",...a.style},onMouseDown:(0,i.composeEventHandlers)(a.onMouseDown,()=>{I.current=!0}),onFocus:(0,i.composeEventHandlers)(a.onFocus,a=>{let b=!I.current;if(a.target===a.currentTarget&&b&&!D){let b=new CustomEvent(r,s);if(a.currentTarget.dispatchEvent(b),!b.defaultPrevented){let a=H().filter(a=>a.focusable);G([a.find(a=>a.active),a.find(a=>a.id===B),...a].filter(Boolean).map(a=>a.ref.current),u)}}I.current=!1}),onBlur:(0,i.composeEventHandlers)(a.onBlur,()=>E(!1))})})}),D="RovingFocusGroupItem",E=h.forwardRef((a,c)=>{let{__scopeRovingFocusGroup:d,focusable:e=!0,active:f=!1,tabStopId:g,...j}=a,k=(0,m.useId)(),l=g||k,o=A(D,d),p=o.currentTabStopId===l,q=v(d),{onFocusableItemAdd:r,onFocusableItemRemove:s}=o;return h.useEffect(()=>{if(e)return r(),()=>s()},[e,r,s]),(0,b.jsx)(u.ItemSlot,{scope:d,id:l,focusable:e,active:f,children:(0,b.jsx)(n.Primitive.span,{tabIndex:p?0:-1,"data-orientation":o.orientation,...j,ref:c,onMouseDown:(0,i.composeEventHandlers)(a.onMouseDown,a=>{e?o.onItemFocus(l):a.preventDefault()}),onFocus:(0,i.composeEventHandlers)(a.onFocus,()=>o.onItemFocus(l)),onKeyDown:(0,i.composeEventHandlers)(a.onKeyDown,a=>{if("Tab"===a.key&&a.shiftKey)return void o.onItemShiftTab();if(a.target!==a.currentTarget)return;let b=function(a,b,c){var d;let e=(d=a.key,"rtl"!==c?d:"ArrowLeft"===d?"ArrowRight":"ArrowRight"===d?"ArrowLeft":d);if(!("vertical"===b&&["ArrowLeft","ArrowRight"].includes(e))&&!("horizontal"===b&&["ArrowUp","ArrowDown"].includes(e)))return F[e]}(a,o.orientation,o.dir);if(void 0!==b){if(a.metaKey||a.ctrlKey||a.altKey||a.shiftKey)return;a.preventDefault();let e=q().filter(a=>a.focusable).map(a=>a.ref.current);if("last"===b)e.reverse();else if("prev"===b||"next"===b){var c,d;"prev"===b&&e.reverse();let f=e.indexOf(a.currentTarget);e=o.loop?(c=e,d=f+1,c.map((a,b)=>c[(d+b)%c.length])):e.slice(f+1)}setTimeout(()=>G(e))}})})})});E.displayName=D;var F={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function G(a,b=!1){let c=document.activeElement;for(let d of a)if(d===c||(d.focus({preventScroll:b}),document.activeElement!==c))return}var H=a.i(77192),I="Tabs",[J,K]=(0,j.createContextScope)(I,[y]),L=y(),[M,N]=J(I),O=h.forwardRef((a,c)=>{let{__scopeTabs:d,value:e,onValueChange:f,defaultValue:g,orientation:h="horizontal",dir:i,activationMode:j="automatic",...k}=a,l=(0,q.useDirection)(i),[o,r]=(0,p.useControllableState)({prop:e,onChange:f,defaultProp:g});return(0,b.jsx)(M,{scope:d,baseId:(0,m.useId)(),value:o,onValueChange:r,orientation:h,dir:l,activationMode:j,children:(0,b.jsx)(n.Primitive.div,{dir:l,"data-orientation":h,...k,ref:c})})});O.displayName=I;var P="TabsList",Q=h.forwardRef((a,c)=>{let{__scopeTabs:d,loop:e=!0,...f}=a,g=N(P,d),h=L(d);return(0,b.jsx)(B,{asChild:!0,...h,orientation:g.orientation,dir:g.dir,loop:e,children:(0,b.jsx)(n.Primitive.div,{role:"tablist","aria-orientation":g.orientation,...f,ref:c})})});Q.displayName=P;var R="TabsTrigger",S=h.forwardRef((a,c)=>{let{__scopeTabs:d,value:e,disabled:f=!1,...g}=a,h=N(R,d),j=L(d),k=V(h.baseId,e),l=W(h.baseId,e),m=e===h.value;return(0,b.jsx)(E,{asChild:!0,...j,focusable:!f,active:m,children:(0,b.jsx)(n.Primitive.button,{type:"button",role:"tab","aria-selected":m,"aria-controls":l,"data-state":m?"active":"inactive","data-disabled":f?"":void 0,disabled:f,id:k,...g,ref:c,onMouseDown:(0,i.composeEventHandlers)(a.onMouseDown,a=>{f||0!==a.button||!1!==a.ctrlKey?a.preventDefault():h.onValueChange(e)}),onKeyDown:(0,i.composeEventHandlers)(a.onKeyDown,a=>{[" ","Enter"].includes(a.key)&&h.onValueChange(e)}),onFocus:(0,i.composeEventHandlers)(a.onFocus,()=>{let a="manual"!==h.activationMode;m||f||!a||h.onValueChange(e)})})})});S.displayName=R;var T="TabsContent",U=h.forwardRef((a,c)=>{let{__scopeTabs:d,value:e,forceMount:f,children:g,...i}=a,j=N(T,d),k=V(j.baseId,e),l=W(j.baseId,e),m=e===j.value,o=h.useRef(m);return h.useEffect(()=>{let a=requestAnimationFrame(()=>o.current=!1);return()=>cancelAnimationFrame(a)},[]),(0,b.jsx)(H.Presence,{present:f||m,children:({present:d})=>(0,b.jsx)(n.Primitive.div,{"data-state":m?"active":"inactive","data-orientation":j.orientation,role:"tabpanel","aria-labelledby":k,hidden:!d,id:l,tabIndex:0,...i,ref:c,style:{...a.style,animationDuration:o.current?"0s":void 0},children:d&&g})})});function V(a,b){return`${a}-trigger-${b}`}function W(a,b){return`${a}-content-${b}`}U.displayName=T;var X=a.i(68114);let Y=h.forwardRef(({className:a,...c},d)=>(0,b.jsx)(Q,{ref:d,className:(0,X.cn)("inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground",a),...c}));Y.displayName=Q.displayName;let Z=h.forwardRef(({className:a,...c},d)=>(0,b.jsx)(S,{ref:d,className:(0,X.cn)("inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",a),...c}));Z.displayName=S.displayName;let $=h.forwardRef(({className:a,...c},d)=>(0,b.jsx)(U,{ref:d,className:(0,X.cn)("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",a),...c}));$.displayName=U.displayName;var _=a.i(33140),aa=a.i(24348),ab=a.i(69876),ac=a.i(70106);let ad=(0,ac.default)("History",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]]),ae=(0,ac.default)("ArrowLeft",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);var af=a.i(67453),ag=a.i(62722),ah=a.i(92e3),ai=a.i(41710);let aj=(0,ac.default)("Image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]),ak=(0,ac.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"}]]),al=(0,ac.default)("ChartLine",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"m19 9-5 5-4-4-3 3",key:"2osh9i"}]]);var am=a.i(97063);let an=(0,ac.default)("Download",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]]),ao=(0,ac.default)("Film",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M7 3v18",key:"bbkbws"}],["path",{d:"M3 7.5h4",key:"zfgn84"}],["path",{d:"M3 12h18",key:"1i2n21"}],["path",{d:"M3 16.5h4",key:"1230mu"}],["path",{d:"M17 3v18",key:"in4fa5"}],["path",{d:"M17 7.5h4",key:"myr1c1"}],["path",{d:"M17 16.5h4",key:"go4c1d"}]]),ap=(0,ac.default)("Archive",[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8",key:"1s80jp"}],["path",{d:"M10 12h4",key:"a56b0p"}]]);var aq=a.i(80386);let ar=(0,ac.default)("FileJson",[["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 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1",key:"1oajmo"}],["path",{d:"M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1",key:"mpwhp6"}]]);var as=a.i(24722);let at=(0,ac.default)("FileCode",[["path",{d:"M10 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7z",key:"1mlx9k"}]]),au=(0,ac.default)("File",[["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"}]]),av=(0,ac.default)("Sparkles",[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]]),aw=(0,ac.default)("Lightbulb",[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]]),ax=(0,ac.default)("Wrench",[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z",key:"cbrjhi"}]]);var ay=a.i(71987),az=a.i(86304),aA=a.i(76841);let aB=(0,ac.default)("CodeXml",[["path",{d:"m18 16 4-4-4-4",key:"1inbqp"}],["path",{d:"m6 8-4 4 4 4",key:"15zrgr"}],["path",{d:"m14.5 4-5 16",key:"e7oirm"}]]);function aC({status:a}){switch("string"==typeof a?a.toLowerCase():""){case"passed":return(0,b.jsx)(af.CheckCircle2,{className:"h-4 w-4 text-green-500 flex-shrink-0"});case"failed":return(0,b.jsx)(ag.XCircle,{className:"h-4 w-4 text-destructive flex-shrink-0"});case"skipped":return(0,b.jsx)(ah.AlertCircle,{className:"h-4 w-4 text-accent flex-shrink-0"});case"timedout":return(0,b.jsx)(ai.Clock,{className:"h-4 w-4 text-destructive flex-shrink-0"});case"pending":return(0,b.jsx)(ai.Clock,{className:"h-4 w-4 text-primary animate-pulse flex-shrink-0"});default:return(0,b.jsx)(am.Info,{className:"h-4 w-4 text-muted-foreground flex-shrink-0"})}}function aD({step:a,level:c=0}){var d;let e=a.steps&&a.steps.length>0,f=(0,b.jsxs)("div",{className:`flex flex-col space-y-2 ${c>0?"pl-4 border-l border-muted ml-2":""}`,children:[(0,b.jsxs)("div",{className:"flex items-center justify-between space-x-2",children:[(0,b.jsxs)("div",{className:"flex items-center space-x-2 min-w-0",children:[(0,b.jsx)(aC,{status:a.status}),(0,b.jsx)("span",{className:"text-sm font-medium text-foreground truncate",title:a.title,children:a.title}),a.isHook&&(0,b.jsx)(az.Badge,{variant:"outline",className:"text-xs px-1.5 py-0.5",children:a.hookType||"hook"})]}),(0,b.jsx)("span",{className:"text-xs text-muted-foreground flex-shrink-0",children:(d=a.duration)<1e3?`${d}ms`:`${(d/1e3).toFixed(2)}s`})]}),a.codeLocation&&(0,b.jsxs)("div",{className:"flex items-center text-xs text-muted-foreground space-x-1 pl-6",children:[(0,b.jsx)(aB,{className:"h-3 w-3"}),(0,b.jsx)("span",{children:a.codeLocation})]}),a.errorMessage&&(0,b.jsxs)("div",{className:"pl-6 mt-1",children:[(0,b.jsx)("p",{className:"text-xs font-semibold text-destructive mb-0.5",children:"Error:"}),(0,b.jsx)("pre",{className:"bg-destructive/10 text-xs p-2 rounded-md whitespace-pre-wrap break-all font-code",children:(0,b.jsx)("span",{dangerouslySetInnerHTML:{__html:(0,X.ansiToHtml)(a.errorMessage)}})})]})]});return e?(0,b.jsx)(aA.Accordion,{type:"single",collapsible:!0,className:"w-full py-1",children:(0,b.jsxs)(aA.AccordionItem,{value:`step-${a.id}`,className:"border-none",children:[(0,b.jsx)(aA.AccordionTrigger,{className:"p-1 hover:no-underline hover:bg-muted/50 rounded-md text-left [&[data-state=open]>svg]:rotate-90",children:f}),(0,b.jsx)(aA.AccordionContent,{className:"pt-0 pb-0",children:(0,b.jsx)("div",{className:"mt-1",children:a.steps.map(a=>(0,b.jsx)(aD,{step:a,level:c+1},a.id))})})]})}):(0,b.jsx)("div",{className:"py-2 px-1 hover:bg-muted/50 rounded-md",children:f})}var aE=a.i(5050);let aF=(0,aE.createServerReference)("00b3af2ff977f416ac71f4079918422eeaff75be02",aE.callServer,void 0,aE.findSourceMapURL,"getRawHistoricalReports");var aG=a.i(48662),aH=a.i(57431),aI=a.i(77924),aJ=a.i(58042),aK=a.i(94222),aL=a.i(54419),aM=a.i(59854),aN=a.i(2274);let aO=a=>{let{cx:c,cy:d,payload:e}=a;if(!c||!d||!e)return null;let f="hsl(var(--muted-foreground))";return"passed"===e.status?f="hsl(var(--chart-3))":"failed"===e.status||"timedOut"===e.status?f="hsl(var(--destructive))":"skipped"===e.status&&(f="hsl(var(--accent))"),(0,b.jsx)("circle",{cx:c,cy:d,r:5,fill:f,stroke:"hsl(var(--card))",strokeWidth:1})},aP=({active:a,payload:c,label:d})=>{if(a&&c&&c.length){let a=c[0].payload;return(0,b.jsxs)("div",{className:"bg-card p-3 border border-border rounded-md shadow-lg",children:[(0,b.jsx)("p",{className:"label text-sm font-semibold text-foreground",children:`Date: ${new Date(a.date).toLocaleString()}`}),(0,b.jsx)("p",{className:"text-xs text-foreground",children:`Duration: ${aR(a.duration)}`}),(0,b.jsx)("p",{className:"text-xs",style:{color:"passed"===a.status?"hsl(var(--chart-3))":"failed"===a.status||"timedOut"===a.status?"hsl(var(--destructive))":"hsl(var(--accent))"},children:`Status: ${a.status}`})]})}return null};function aQ({status:a}){switch(a){case"passed":return(0,b.jsx)(af.CheckCircle2,{className:"h-6 w-6 text-[hsl(var(--chart-3))]"});case"failed":return(0,b.jsx)(ag.XCircle,{className:"h-6 w-6 text-destructive"});case"skipped":return(0,b.jsx)(ah.AlertCircle,{className:"h-6 w-6 text-[hsl(var(--accent))]"});case"timedOut":return(0,b.jsx)(ai.Clock,{className:"h-6 w-6 text-destructive"});case"pending":return(0,b.jsx)(ai.Clock,{className:"h-6 w-6 text-primary animate-pulse"});default:return(0,b.jsx)(am.Info,{className:"h-6 w-6 text-muted-foreground"})}}function aR(a){if(a<1e3)return`${a}ms`;let b=parseFloat((a/1e3).toFixed(2));if(b<60)return`${b}s`;let c=Math.floor(b/60),d=parseFloat((b%60).toFixed(2));return`${c}m ${d}s`}function aS({contentType:a}){let c=a.toLowerCase();return c.includes("html")?(0,b.jsx)(at,{className:"h-6 w-6 text-blue-500"}):c.includes("pdf")?(0,b.jsx)(ak,{className:"h-6 w-6 text-red-500"}):c.includes("json")?(0,b.jsx)(ar,{className:"h-6 w-6 text-yellow-500"}):c.includes("csv")||c.startsWith("text/plain")?(0,b.jsx)(as.FileSpreadsheet,{className:"h-6 w-6 text-green-500"}):c.startsWith("text/")?(0,b.jsx)(ak,{className:"h-6 w-6 text-gray-500"}):(0,b.jsx)(au,{className:"h-6 w-6 text-gray-400"})}function aT(a,b="Attachment"){return a&&"string"==typeof a&&a.split(/[/\\]/).pop()||b}function aU({testId:a}){let i=(0,c.useRouter)(),{currentRun:j,loadingCurrent:k,errorCurrent:l}=(0,d.useTestData)(),[m,n]=(0,h.useState)(null),[o,p]=(0,h.useState)([]),[q,r]=(0,h.useState)([]),[s,t]=(0,h.useState)(!1),[u,v]=(0,h.useState)(null),w=(0,h.useRef)(null),[x,y]=(0,h.useState)(null),[z,A]=(0,h.useState)(!1),[B,C]=(0,h.useState)(null),[D,E]=(0,h.useState)(!1),[F,G]=(0,h.useState)("current"),H=(0,h.useMemo)(()=>j?.results?.find(b=>b.id===a)||null,[j,a]),I=async()=>{if(m){A(!0),y(null),C(null);try{let a=await fetch("/api/analyze-test",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({testName:m.name,failureLogsAndErrors:m.errorMessage||"",codeSnippet:m.snippet||""})});if(!a.ok){let b=await a.json().catch(()=>({message:"Failed to parse error response"}));throw Error(b.message||`API request failed with status ${a.status}`)}let b=await a.json();y(b)}catch(a){console.error("Error generating AI suggestion:",a),C(a instanceof Error?a.message:"An unknown error occurred.")}finally{A(!1)}}};(0,h.useEffect)(()=>{n(H)},[H]);let J=(0,h.useCallback)(async()=>{if(a&&!D&&H?.suiteName&&j?.run?.timestamp){t(!0),v(null);try{let b=(await aF()).filter(a=>a.run.timestamp!==j.run.timestamp);p(b);let c=[];b.forEach(b=>{let d=b.results.find(b=>b.id===a&&b.suiteName===H.suiteName);d&&c.push({date:b.run.timestamp,duration:d.duration,status:d.status})}),c.sort((a,b)=>new Date(b.date).getTime()-new Date(a.date).getTime()),r(c),E(!0)}catch(a){console.error("Error fetching test history:",a),v(a instanceof Error?a.message:"Failed to load test history")}finally{t(!1)}}},[a,D,H,j]);(0,h.useEffect)(()=>{if("current"===F)n(H);else{let b=o.find(a=>a.run.timestamp===F);b?.results&&H&&n(b.results.find(b=>b.id===a&&b.suiteName===H.suiteName)||null)}},[F,H,o,a]);let K=(0,h.useMemo)(()=>m&&Array.isArray(m.screenshots)?m.screenshots.map((a,b)=>({name:aT(a,`Screenshot ${b+1}`),path:a,contentType:"image/png","data-ai-hint":`screenshot ${b+1}`})):[],[m]),L=(0,h.useMemo)(()=>m&&Array.isArray(m.videoPath)?m.videoPath.map((a,b)=>({name:aT(a,`Video ${b+1}`),path:a,contentType:"video/mp4","data-ai-hint":`video ${b+1}`})):[],[m]),M=(0,h.useMemo)(()=>m&&"string"==typeof m.tracePath&&m.tracePath?{name:aT(m.tracePath,"trace.zip"),path:m.tracePath,contentType:"application/zip"}:null,[m]),N=(0,h.useMemo)(()=>m&&Array.isArray(m.attachments)?m.attachments.map((a,b)=>({name:a.name||aT(a.path,`Attachment ${b+1}`),path:a.path,contentType:a.contentType||"application/octet-stream","data-ai-hint":a["data-ai-hint"]})):[],[m]),P=(0,h.useMemo)(()=>N.filter(a=>a.contentType.toLowerCase().includes("html")),[N]),Q=(0,h.useMemo)(()=>N.filter(a=>a.contentType.toLowerCase().includes("pdf")),[N]),R=(0,h.useMemo)(()=>N.filter(a=>a.contentType.toLowerCase().includes("json")),[N]),S=(0,h.useMemo)(()=>N.filter(a=>a.contentType.toLowerCase().startsWith("text/")||a.contentType.toLowerCase().includes("csv")),[N]),T=(0,h.useMemo)(()=>N.filter(a=>!P.includes(a)&&!Q.includes(a)&&!R.includes(a)&&!S.includes(a)),[N,P,Q,R,S]),U=(0,h.useMemo)(()=>K.length+L.length+ +!!M+N.length,[K,L,M,N]),V=m?.status==="failed"||m?.status==="timedOut";if(k&&!m)return(0,b.jsxs)("div",{className:"container mx-auto py-8 space-y-6",children:[(0,b.jsx)(_.Skeleton,{className:"h-10 w-48 mb-4 rounded-md"}),(0,b.jsxs)(e.Card,{className:"shadow-xl rounded-lg",children:[(0,b.jsxs)(e.CardHeader,{children:[(0,b.jsx)(_.Skeleton,{className:"h-8 w-3/4 mb-2 rounded-md"}),(0,b.jsx)(_.Skeleton,{className:"h-4 w-1/2 rounded-md"})]}),(0,b.jsxs)(e.CardContent,{className:"space-y-4",children:[(0,b.jsx)(_.Skeleton,{className:"h-10 w-1/3 mb-4 rounded-md"}),(0,b.jsx)(_.Skeleton,{className:"h-40 w-full rounded-md"})]})]})]});if(l&&!m)return(0,b.jsxs)("div",{className:"container mx-auto px-4 py-8",children:[(0,b.jsxs)(aa.Alert,{variant:"destructive",className:"rounded-lg",children:[(0,b.jsx)(aa.AlertTitle,{children:"Error loading test data"}),(0,b.jsx)(aa.AlertDescription,{children:l})]}),(0,b.jsxs)(f.Button,{onClick:()=>i.push("/"),variant:"outline",className:"mt-4 rounded-lg",children:[(0,b.jsx)(ae,{className:"mr-2 h-4 w-4"})," Back"]})]});if(!m)return(0,b.jsxs)("div",{className:"container mx-auto px-4 py-8 text-center",children:[(0,b.jsxs)(aa.Alert,{className:"rounded-lg",children:[(0,b.jsx)(aa.AlertTitle,{children:"Test Not Found"}),(0,b.jsxs)(aa.AlertDescription,{children:["The test with ID '",a,"' could not be found in the current report."]})]}),(0,b.jsxs)(f.Button,{onClick:()=>i.push("/"),className:"mt-6 inline-flex items-center justify-center rounded-xl border bg-transparent px-4 py-2 text-sm font-medium text-muted-foreground shadow-sm transition-all duration-300 ease-in-out hover:-translate-y-0.5 hover:shadow-lg hover:bg-primary hover:text-primary-foreground hover:border-primary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2",children:[(0,b.jsx)(ae,{className:"mr-2 h-4 w-4"})," Back to Dashboard"]})]});let W=function(a){if(!a)return"";let b=a.split(" > ");return b[b.length-1]||a}(m.name);return(0,b.jsxs)("div",{className:"container mx-auto px-4 py-8 space-y-6",children:[(0,b.jsxs)(f.Button,{onClick:()=>i.push("/"),className:"mt-6 inline-flex items-center justify-center rounded-xl border bg-transparent px-4 py-2 text-sm font-medium text-muted-foreground shadow-sm transition-all duration-300 ease-in-out hover:-translate-y-0.5 hover:shadow-lg hover:bg-primary hover:text-primary-foreground hover:border-primary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2",children:[(0,b.jsx)(ae,{className:"mr-2 h-4 w-4"})," Back to Dashboard"]}),(0,b.jsxs)(e.Card,{className:"shadow-xl rounded-lg",children:[(0,b.jsxs)(e.CardHeader,{children:[(0,b.jsxs)("div",{className:"flex items-start justify-between",children:[(0,b.jsxs)("div",{children:[(0,b.jsxs)(e.CardTitle,{className:"text-2xl font-headline text-primary flex items-center",title:m.name,children:[(0,b.jsx)(aQ,{status:m.status}),(0,b.jsx)("span",{className:"ml-3",children:W})]}),m.suiteName&&(0,b.jsxs)(e.CardDescription,{className:"mt-1 text-md",children:["From suite: ",m.suiteName]}),(0,b.jsxs)("p",{className:"text-sm text-muted-foreground mt-2",children:["Run Date:"," ","current"===F?k?(0,b.jsx)("span",{className:"text-muted-foreground",children:"Loading..."}):j?.run?.timestamp?(0,b.jsx)("span",{className:"font-medium",children:new Date(j.run.timestamp).toLocaleString()}):l&&!j?.run?.timestamp?(0,b.jsx)("span",{className:"text-destructive font-medium",children:"Error loading date"}):(0,b.jsx)("span",{className:"font-medium",children:"Not available"}):(0,b.jsx)("span",{className:"font-medium",children:new Date(F).toLocaleString()})]}),(0,b.jsxs)("div",{className:"mt-1 text-xs text-muted-foreground",children:[(0,b.jsxs)("p",{children:["ID: ",m.id]}),m.browser&&(0,b.jsxs)("p",{children:["Browser: ",m.browser]})]})]}),(0,b.jsxs)("div",{className:"text-right flex-shrink-0",children:[(0,b.jsx)(az.Badge,{variant:"outline",className:"capitalize text-sm px-3 py-1 rounded-full border",style:function(a){switch(a){case"passed":return{backgroundColor:"hsl(var(--chart-3))",color:"hsl(var(--primary-foreground))"};case"failed":case"timedOut":return{backgroundColor:"hsl(var(--destructive))",color:"hsl(var(--destructive-foreground))"};case"skipped":return{backgroundColor:"hsl(var(--accent))",color:"hsl(var(--accent-foreground))"};case"pending":return{backgroundColor:"hsl(var(--primary))",color:"hsl(var(--primary-foreground))"};default:return{backgroundColor:"hsl(var(--muted))",color:"hsl(var(--muted-foreground))"}}}(m.status),children:m.status}),(0,b.jsxs)("p",{className:"text-sm text-muted-foreground mt-1",children:["Duration: ",aR(m.duration)]}),(0,b.jsxs)("p",{className:"text-xs text-muted-foreground",children:["Retries: ",m.retries]}),m.tags&&m.tags.length>0&&(0,b.jsx)("div",{className:"mt-1 space-x-1",children:m.tags.map(a=>(0,b.jsx)(az.Badge,{variant:"secondary",className:"text-xs rounded-full",children:a},a))})]})]}),(0,b.jsx)("div",{className:"mt-4",children:(0,b.jsxs)(g.Select,{value:F,onValueChange:G,onOpenChange:a=>{a&&!D&&J()},children:[(0,b.jsx)(g.SelectTrigger,{className:"w-full md:w-[350px] h-12 rounded-xl bg-card/50 border-2 border-transparent hover:border-primary/30 focus:ring-2 focus:ring-primary/50 focus:ring-offset-2 focus:ring-offset-background transition-colors duration-200 group",children:(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)(ad,{className:"h-5 w-5 text-muted-foreground transition-colors group-hover:text-primary"}),(0,b.jsx)(g.SelectValue,{placeholder:"Switch to a past run"})]})}),(0,b.jsxs)(g.SelectContent,{sideOffset:8,className:"bg-card/80 backdrop-blur-lg border border-border/50 rounded-xl shadow-2xl data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",children:[(0,b.jsx)(g.SelectItem,{value:"current",className:"rounded-lg",children:"Current Run"}),s&&(0,b.jsx)(g.SelectItem,{value:"loading",disabled:!0,className:"rounded-lg",children:"Loading history..."}),q.map(a=>(0,b.jsx)(g.SelectItem,{value:a.date,className:"rounded-lg",children:(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)("span",{className:(0,X.cn)("h-2 w-2 rounded-full",(a=>{switch(a){case"passed":return"bg-green-500";case"failed":case"timedOut":return"bg-red-500";case"skipped":return"bg-yellow-500";default:return"bg-gray-400"}})(a.status)),title:`Status: ${a.status}`}),(0,b.jsxs)("span",{className:"text-sm",children:[new Date(a.date).toLocaleString()," -"," ",(0,b.jsx)("span",{className:"font-medium capitalize",children:a.status})]})]})},a.date))]})]})})]}),(0,b.jsx)(e.CardContent,{children:(0,b.jsxs)(O,{defaultValue:"steps",className:"w-full",onValueChange:a=>{"history"!==a||D||J()},children:[(0,b.jsxs)(Y,{className:(0,X.cn)("grid w-full mb-4 rounded-lg",V?"grid-cols-2 md:grid-cols-5":"grid-cols-2 md:grid-cols-4"),children:[(0,b.jsxs)(Z,{value:"steps",children:["Execution Steps (",m.steps?.length||0,")"]}),(0,b.jsxs)(Z,{value:"attachments",children:["Attachments (",U,")"]}),(0,b.jsxs)(Z,{value:"logs",children:[(0,b.jsx)(ak,{className:"h-4 w-4 mr-2"}),"Logs"]}),(0,b.jsx)(Z,{value:"history",children:"Test Run History"}),V&&(0,b.jsxs)(Z,{value:"ai-suggestions",children:[(0,b.jsx)(av,{className:"h-4 w-4 mr-2"}),"AI Suggestions"]})]}),(0,b.jsxs)($,{value:"steps",className:"mt-4 p-1 md:p-4 border rounded-lg bg-card shadow-inner",children:[(0,b.jsx)("h3",{className:"text-lg font-semibold text-foreground mb-3 px-3 md:px-0",children:"Test Execution Steps"}),m.errorMessage&&(0,b.jsxs)("div",{className:"mb-4 p-3 md:p-0",children:[(0,b.jsx)("h4",{className:"font-semibold text-md text-destructive mb-1",children:"Overall Test Error:"}),(0,b.jsx)("pre",{className:"bg-destructive/10 text-sm p-4 rounded-lg whitespace-pre-wrap break-all font-code overflow-x-auto",children:(0,b.jsx)("span",{dangerouslySetInnerHTML:{__html:(0,X.ansiToHtml)(m.errorMessage)}})})]}),m.annotations&&m.annotations.length>0&&(0,b.jsx)("div",{className:"mb-4 p-3 md:p-0",children:(0,b.jsxs)("div",{style:{margin:"12px 0",padding:"12px",backgroundColor:"rgba(139, 92, 246, 0.1)",border:"1px solid rgba(139, 92, 246, 0.3)",borderLeft:"4px solid #8b5cf6",borderRadius:"4px"},children:[(0,b.jsx)("h4",{style:{marginTop:0,marginBottom:"10px",color:"#8b5cf6",fontSize:"1.1em"},children:"📌 Annotations"}),m.annotations.map((a,c)=>(0,b.jsxs)("div",{style:{marginBottom:c===m.annotations.length-1?"0":"10px"},children:[(0,b.jsx)("strong",{style:{color:"#8b5cf6"},children:"Type:"})," ",(0,b.jsx)("span",{style:{backgroundColor:"rgba(139, 92, 246, 0.2)",padding:"2px 8px",borderRadius:"4px",fontSize:"0.9em"},children:a.type}),a.description&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("br",{}),(0,b.jsx)("strong",{style:{color:"#8b5cf6"},children:"Description:"})," ",a.description]}),a.location&&(0,b.jsxs)("div",{style:{fontSize:"0.85em",color:"#6b7280",marginTop:"4px"},children:["Location: ",a.location.file,":",a.location.line,":",a.location.column]})]},c))]})}),m.steps&&m.steps.length>0?(0,b.jsx)(ab.ScrollArea,{className:"h-[600px] w-full",children:(0,b.jsx)("div",{className:"pr-4",children:m.steps.map((a,c)=>(0,b.jsx)(aD,{step:a},a.id||c))})}):(0,b.jsx)("p",{className:"text-muted-foreground p-3 md:p-0",children:"No detailed execution steps available for this test."})]}),(0,b.jsx)($,{value:"attachments",className:"mt-4 p-1 md:p-4 border rounded-lg bg-card shadow-inner",children:(0,b.jsxs)(O,{defaultValue:"sub-screenshots",className:"w-full",children:[(0,b.jsx)(ab.ScrollArea,{className:"w-full whitespace-nowrap rounded-lg",children:(0,b.jsxs)(Y,{className:"inline-grid w-max grid-flow-col mb-4 rounded-lg",children:[(0,b.jsxs)(Z,{value:"sub-screenshots",disabled:0===K.length,children:[(0,b.jsx)(aj,{className:"h-4 w-4 mr-2"}),"Screenshots (",K.length,")"]}),(0,b.jsxs)(Z,{value:"sub-video",disabled:0===L.length,children:[(0,b.jsx)(ao,{className:"h-4 w-4 mr-2"}),"Videos (",L.length,")"]}),(0,b.jsxs)(Z,{value:"sub-trace",disabled:!M,children:[(0,b.jsx)(ap,{className:"h-4 w-4 mr-2"}),"Trace ",M?"(1)":"(0)"]}),(0,b.jsxs)(Z,{value:"sub-html",disabled:0===P.length,children:[(0,b.jsx)(at,{className:"h-4 w-4 mr-2"}),"HTML (",P.length,")"]}),(0,b.jsxs)(Z,{value:"sub-pdf",disabled:0===Q.length,children:[(0,b.jsx)(ak,{className:"h-4 w-4 mr-2"}),"PDF (",Q.length,")"]}),(0,b.jsxs)(Z,{value:"sub-json",disabled:0===R.length,children:[(0,b.jsx)(ar,{className:"h-4 w-4 mr-2"}),"JSON (",R.length,")"]}),(0,b.jsxs)(Z,{value:"sub-text",disabled:0===S.length,children:[(0,b.jsx)(ak,{className:"h-4 w-4 mr-2"}),"Text/CSV (",S.length,")"]}),(0,b.jsxs)(Z,{value:"sub-other",disabled:0===T.length,children:[(0,b.jsx)(au,{className:"h-4 w-4 mr-2"}),"Others (",T.length,")"]})]})}),(0,b.jsxs)($,{value:"sub-screenshots",className:"mt-4",children:[(0,b.jsx)("h3",{className:"text-lg font-semibold text-foreground mb-4",children:"Screenshots"}),K.length>0?(0,b.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-4",children:K.map((a,c)=>{let d=(0,X.getAssetPath)(a.path);return"#"===d?null:(0,b.jsxs)("a",{href:d,target:"_blank",rel:"noopener noreferrer",className:"relative aspect-video rounded-lg overflow-hidden group border hover:border-primary transition-all shadow-md hover:shadow-lg",children:[(0,b.jsx)(ay.default,{src:d,alt:a.name||`Screenshot ${c+1}`,fill:!0,style:{objectFit:"cover"},className:"group-hover:scale-105 transition-transform duration-300","data-ai-hint":a["data-ai-hint"]||"test screenshot"}),(0,b.jsx)("div",{className:"absolute inset-0 bg-black/50 opacity-0 group-hover:opacity-100 transition-opacity duration-300 flex items-center justify-center p-2",children:(0,b.jsx)("p",{className:"text-white text-xs text-center break-all",children:a.name||`Screenshot ${c+1}`})})]},`img-preview-${c}`)})}):(0,b.jsx)("p",{className:"text-muted-foreground",children:"No screenshots available for this test."})]}),(0,b.jsxs)($,{value:"sub-video",className:"mt-4",children:[(0,b.jsx)("h3",{className:"text-lg font-semibold text-foreground mb-4",children:"Video Recording(s)"}),(0,b.jsx)("div",{className:"space-y-4",children:L.length>0?L.map((a,c)=>(0,b.jsxs)("div",{className:"p-4 border rounded-lg bg-muted/30 shadow-sm flex items-center justify-between",children:[(0,b.jsx)("p",{className:"text-sm font-medium text-foreground truncate",title:a.name,children:a.name}),(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(f.Button,{asChild:!0,variant:"ghost",size:"sm",children:(0,b.jsx)("a",{href:(0,X.getAssetPath)(a.path),target:"_blank",rel:"noopener noreferrer",children:"View"})}),(0,b.jsx)(f.Button,{asChild:!0,variant:"outline",size:"sm",children:(0,b.jsxs)("a",{href:(0,X.getAssetPath)(a.path),download:a.name,children:[(0,b.jsx)(an,{className:"h-4 w-4 mr-2"}),"Download"]})})]})]},`video-${c}`)):(0,b.jsxs)(aa.Alert,{className:"rounded-lg",children:[(0,b.jsx)(am.Info,{className:"h-4 w-4"}),(0,b.jsx)(aa.AlertTitle,{children:"No Videos Available"}),(0,b.jsx)(aa.AlertDescription,{children:"There is no video recording associated with this test run."})]})})]}),(0,b.jsxs)($,{value:"sub-trace",className:"mt-4",children:[(0,b.jsx)("h3",{className:"text-lg font-semibold text-foreground mb-4",children:"Trace File"}),M?(0,b.jsxs)("div",{className:"p-4 border rounded-lg bg-muted/30 space-y-3 shadow-sm",children:[(0,b.jsxs)("a",{href:(0,X.getAssetPath)(M.path),target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center text-primary hover:underline text-base",download:M.name,children:[(0,b.jsx)(an,{className:"h-5 w-5 mr-2"})," Download Trace File (",M.name,")"]}),(0,b.jsxs)("p",{className:"text-xs text-muted-foreground",children:["Path: ",M.path]}),(0,b.jsxs)(aa.Alert,{className:"rounded-lg",children:[(0,b.jsx)(am.Info,{className:"h-4 w-4"}),(0,b.jsx)(aa.AlertTitle,{children:"Using Trace Files"}),(0,b.jsxs)(aa.AlertDescription,{children:["Trace files (.zip) can be viewed using the Playwright CLI:"," ",(0,b.jsx)("code",{className:"bg-muted px-1 py-0.5 rounded-sm",children:"npx playwright show-trace /path/to/your/trace.zip"}),". Or by uploading them to"," ",(0,b.jsx)("a",{href:"https://trace.playwright.dev/",target:"_blank",rel:"noopener noreferrer",className:"underline",children:"trace.playwright.dev"}),"."]})]})]}):(0,b.jsxs)(aa.Alert,{className:"rounded-lg",children:[(0,b.jsx)(am.Info,{className:"h-4 w-4"}),(0,b.jsx)(aa.AlertTitle,{children:"No Trace File Available"}),(0,b.jsx)(aa.AlertDescription,{children:"There is no Playwright trace file associated with this test run."})]})]}),[{value:"sub-html",title:"HTML Files",attachments:P},{value:"sub-pdf",title:"PDF Documents",attachments:Q},{value:"sub-json",title:"JSON Files",attachments:R},{value:"sub-text",title:"Text & CSV Files",attachments:S},{value:"sub-other",title:"Other Files",attachments:T}].map(a=>(0,b.jsxs)($,{value:a.value,className:"mt-4",children:[(0,b.jsx)("h3",{className:"text-lg font-semibold text-foreground mb-4",children:a.title}),(0,b.jsx)("div",{className:"space-y-3",children:a.attachments.length>0?a.attachments.map((a,c)=>(0,b.jsxs)("div",{className:"p-3 border rounded-lg bg-muted/30 shadow-sm flex items-center justify-between gap-4",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3 truncate",children:[(0,b.jsx)(aS,{contentType:a.contentType}),(0,b.jsxs)("div",{className:"truncate",children:[(0,b.jsx)("p",{className:"text-sm font-medium text-foreground truncate",title:a.name,children:a.name}),(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:a.contentType})]})]}),(0,b.jsxs)("div",{className:"flex items-center flex-shrink-0 gap-2",children:[(0,b.jsx)(f.Button,{asChild:!0,variant:"ghost",size:"sm",children:(0,b.jsx)("a",{href:(0,X.getAssetPath)(a.path),target:"_blank",rel:"noopener noreferrer",children:"View"})}),(0,b.jsx)(f.Button,{asChild:!0,variant:"outline",size:"sm",children:(0,b.jsxs)("a",{href:(0,X.getAssetPath)(a.path),download:a.name,children:[(0,b.jsx)(an,{className:"h-4 w-4 mr-2"}),"Download"]})})]})]},c)):(0,b.jsxs)(aa.Alert,{className:"rounded-lg",children:[(0,b.jsx)(am.Info,{className:"h-4 w-4"}),(0,b.jsx)(aa.AlertTitle,{children:"No Files Available"}),(0,b.jsx)(aa.AlertDescription,{children:"No attachments of this type were found for this test."})]})})]},a.value))]})}),(0,b.jsxs)($,{value:"logs",className:"mt-4 p-4 border rounded-lg bg-card space-y-6 shadow-inner",children:[(0,b.jsxs)("div",{children:[(0,b.jsxs)("h3",{className:"text-lg font-semibold text-foreground mb-3 flex items-center",children:[(0,b.jsx)(aq.Terminal,{className:"h-5 w-5 mr-2 text-primary"}),"Console Logs / Standard Output"]}),(0,b.jsx)(ab.ScrollArea,{className:"h-48 w-full rounded-lg border p-3 bg-muted/30 shadow-sm",children:(0,b.jsx)("pre",{className:"text-sm whitespace-pre-wrap break-words font-code",children:(0,b.jsx)("span",{dangerouslySetInnerHTML:{__html:(0,X.ansiToHtml)(m.stdout&&Array.isArray(m.stdout)&&m.stdout.length>0?m.stdout.join("\n"):"No standard output logs captured for this test.")}})})})]}),(0,b.jsxs)("div",{children:[(0,b.jsxs)("h3",{className:"text-lg font-semibold text-foreground mb-3 flex items-center",children:[(0,b.jsx)(ah.AlertCircle,{className:"h-5 w-5 mr-2 text-destructive"}),"Error Messages / Standard Error"]}),(0,b.jsx)(ab.ScrollArea,{className:"h-48 w-full rounded-lg border bg-destructive/5 shadow-sm",children:(0,b.jsx)("pre",{className:"text-sm p-3 whitespace-pre-wrap break-all font-code",children:(0,b.jsx)("span",{dangerouslySetInnerHTML:{__html:(0,X.ansiToHtml)(m.errorMessage||"No errors captured for this test.")}})})})]}),m.snippet&&(0,b.jsxs)("div",{children:[(0,b.jsxs)("h3",{className:"text-lg font-semibold text-foreground mb-3 flex items-center",children:[(0,b.jsx)(at,{className:"h-5 w-5 mr-2 text-primary"}),"Test Case Snippet"]}),(0,b.jsx)(ab.ScrollArea,{className:"h-48 w-full rounded-lg border p-3 bg-muted/30 shadow-sm",children:(0,b.jsx)("pre",{className:"text-sm whitespace-pre-wrap break-words font-code",children:(0,b.jsx)("span",{dangerouslySetInnerHTML:{__html:(0,X.ansiToHtml)(m.snippet)}})})})]})]}),(0,b.jsxs)($,{value:"history",className:"mt-4 p-4 border rounded-lg bg-card shadow-inner",children:[(0,b.jsx)("div",{className:"flex justify-between items-center mb-3",children:(0,b.jsxs)("h3",{className:"text-lg font-semibold text-foreground flex items-center",children:[(0,b.jsx)(al,{className:"h-5 w-5 mr-2 text-primary"}),"Individual Test Run History"]})}),s&&(0,b.jsxs)("div",{className:"space-y-3",children:[(0,b.jsx)(_.Skeleton,{className:"h-6 w-3/4 rounded-md"}),(0,b.jsx)(_.Skeleton,{className:"h-64 w-full rounded-lg"})]}),u&&!s&&(0,b.jsxs)(aa.Alert,{variant:"destructive",className:"rounded-lg",children:[(0,b.jsx)(ah.AlertCircle,{className:"h-4 w-4"}),(0,b.jsx)(aa.AlertTitle,{children:"Error Loading Test History"}),(0,b.jsx)(aa.AlertDescription,{children:u})]}),!s&&!u&&D&&0===q.length&&(0,b.jsxs)(aa.Alert,{className:"rounded-lg",children:[(0,b.jsx)(am.Info,{className:"h-4 w-4"}),(0,b.jsx)(aa.AlertTitle,{children:"No Historical Data"}),(0,b.jsxs)(aa.AlertDescription,{children:["No historical run data found for this specific test (ID:"," ",a,") in this suite."]})]}),!s&&!u&&q.length>0&&(0,b.jsx)("div",{ref:w,className:"w-full h-[300px] bg-card p-4 rounded-lg shadow-inner",children:(0,b.jsx)(aG.ResponsiveContainer,{width:"100%",height:"100%",children:(0,b.jsxs)(aH.LineChart,{data:[...q].reverse(),margin:{top:5,right:20,left:-20,bottom:5},children:[(0,b.jsx)(aL.CartesianGrid,{strokeDasharray:"3 3",stroke:"hsl(var(--border))"}),(0,b.jsx)(aJ.XAxis,{dataKey:"date",tickFormatter:a=>new Date(a).toLocaleDateString("en-CA",{month:"short",day:"numeric"}),stroke:"hsl(var(--muted-foreground))",tick:{fontSize:10},angle:-30,textAnchor:"end",height:40}),(0,b.jsx)(aK.YAxis,{tickFormatter:a=>aR(a),stroke:"hsl(var(--muted-foreground))",tick:{fontSize:10},width:80}),(0,b.jsx)(aM.Tooltip,{content:(0,b.jsx)(aP,{})}),(0,b.jsx)(aN.Legend,{wrapperStyle:{fontSize:"12px"}}),(0,b.jsx)(aI.Line,{type:"monotone",dataKey:"duration",name:"Duration",stroke:"hsl(var(--primary))",strokeWidth:2,dot:(0,b.jsx)(aO,{}),activeDot:{r:7}})]})})})]}),V&&(0,b.jsx)($,{value:"ai-suggestions",className:"mt-4 p-4 border rounded-lg bg-card shadow-inner",children:(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center text-center p-2 md:p-6",children:[(0,b.jsxs)("h3",{className:"text-lg font-semibold text-foreground mb-3 flex items-center",children:[(0,b.jsx)(av,{className:"h-5 w-5 mr-2 text-primary"}),"AI-Powered Failure Analysis"]}),!(z||x||B)&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("p",{className:"text-muted-foreground text-sm mb-6 max-w-md",children:"Get suggestions from AI to help diagnose the root cause of this test failure and find potential solutions."}),(0,b.jsxs)(f.Button,{onClick:I,disabled:z,children:[(0,b.jsx)(av,{className:"h-4 w-4 mr-2"}),"Generate Suggestion"]})]}),z&&(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center py-10",children:[(0,b.jsx)(av,{className:"h-8 w-8 text-primary animate-pulse mb-4"}),(0,b.jsx)("p",{className:"text-muted-foreground",children:"Generating suggestion... Please wait."})]}),B&&(0,b.jsxs)("div",{className:"w-full text-left",children:[(0,b.jsxs)(aa.Alert,{variant:"destructive",children:[(0,b.jsx)(aa.AlertTitle,{children:"Error Generating Suggestion"}),(0,b.jsx)(aa.AlertDescription,{children:B})]}),(0,b.jsxs)(f.Button,{onClick:I,variant:"outline",size:"sm",className:"mt-4",children:[(0,b.jsx)(av,{className:"h-4 w-4 mr-2"}),"Try Again"]})]}),x&&(0,b.jsxs)("div",{className:"text-left w-full mt-6 space-y-6",children:[(0,b.jsxs)(aa.Alert,{variant:"default",className:"border-primary/30 bg-primary/5",children:[(0,b.jsx)(aw,{className:"h-5 w-5 text-primary"}),(0,b.jsx)(aa.AlertTitle,{className:"text-primary font-semibold",children:"Root Cause Analysis"}),(0,b.jsx)(aa.AlertDescription,{className:"text-primary/90",children:x.rootCause||"No root cause analysis provided."})]}),(0,b.jsxs)("div",{children:[(0,b.jsx)("h4",{className:"font-semibold text-foreground mb-2",children:"Affected Tests:"}),(0,b.jsx)("div",{className:"flex flex-wrap gap-2",children:x.affectedTests?.map(a=>(0,b.jsx)(az.Badge,{variant:"secondary",children:a},a))||(0,b.jsx)("p",{className:"text-sm text-muted-foreground",children:"N/A"})})]}),(0,b.jsxs)("div",{children:[(0,b.jsxs)("h4",{className:"font-semibold text-foreground mb-3 flex items-center",children:[(0,b.jsx)(ax,{className:"h-4 w-4 mr-2"}),"Suggested Fixes"]}),(0,b.jsxs)("div",{className:"space-y-4",children:[x.suggestedFixes?.map((a,c)=>(0,b.jsxs)(e.Card,{className:"bg-card/50 shadow-md",children:[(0,b.jsx)(e.CardHeader,{children:(0,b.jsxs)(e.CardTitle,{className:"text-base",children:["Suggestion #",c+1]})}),(0,b.jsxs)(e.CardContent,{children:[(0,b.jsx)("p",{className:"text-sm text-muted-foreground mb-3",children:a.description}),a.codeSnippet&&(0,b.jsxs)("div",{children:[(0,b.jsxs)("h5",{className:"text-xs font-semibold text-foreground mb-1 flex items-center",children:[(0,b.jsx)(at,{className:"h-3 w-3 mr-1.5"}),"Code Snippet:"]}),(0,b.jsx)("pre",{className:"bg-muted text-sm p-3 rounded-md whitespace-pre-wrap font-code overflow-x-auto",children:(0,b.jsx)("code",{children:a.codeSnippet})})]})]})]},c)),(!x.suggestedFixes||0===x.suggestedFixes.length)&&(0,b.jsx)("p",{className:"text-sm text-muted-foreground",children:"No specific fixes were suggested."})]})]}),(0,b.jsxs)(f.Button,{onClick:I,variant:"outline",size:"sm",className:"mt-4",children:[(0,b.jsx)(av,{className:"h-4 w-4 mr-2"}),"Regenerate Suggestion"]})]})]})})]})})]})]})}a.s(["TestDetailsClientPage",()=>aU],91822)}];

//# sourceMappingURL=_97aa43fe._.js.map