@wizeworks/lens-ui 0.3.0-alpha.5 → 0.3.0-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{AccountPage-NUE9p2aP.js → AccountPage-LO4tZhQV.js} +1 -1
- package/dist/assets/{AppsPanel-Dq0tvHKE.js → AppsPanel-FqAhi3J1.js} +1 -1
- package/dist/assets/{TeamPage-D8bcLIes.js → TeamPage-DIxM37vw.js} +1 -1
- package/dist/assets/{account-D29x4uz9.js → account-DJJSBLFB.js} +2 -2
- package/dist/assets/{auth-client-Bkk9PzK9.js → auth-client-CAuEdTnd.js} +1 -1
- package/dist/assets/{index-DcxtAwLW.css → index-CKkmmanu.css} +1 -1
- package/dist/assets/index-WvBRFdk4.js +58 -0
- package/dist/index.html +3 -3
- package/dist/version.json +1 -1
- package/package.json +2 -2
- package/dist/assets/index-DYrQC7uL.js +0 -58
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./TeamPage-DIxM37vw.js","./account-DJJSBLFB.js","./auth-client-CAuEdTnd.js","./AppsPanel-FqAhi3J1.js","./AccountPage-LO4tZhQV.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{$ as e,A as t,C as n,D as r,E as i,F as a,G as o,H as s,I as c,J as l,K as u,L as d,M as f,N as p,O as m,P as h,Q as g,R as _,S as v,T as y,U as b,V as ee,W as te,X as ne,Y as re,Z as x,_ as S,_t as ie,a as ae,at as oe,b as se,c as ce,ct as le,d as ue,dt as de,et as fe,f as pe,ft as me,g as he,gt as ge,h as _e,ht as ve,i as ye,it as be,j as xe,k as Se,l as Ce,lt as we,m as C,mt as Te,n as Ee,nt as De,o as Oe,ot as ke,p as Ae,pt as je,q as Me,r as Ne,rt as Pe,s as Fe,st as Ie,t as Le,tt as Re,u as ze,ut as Be,v as w,vt as Ve,w as He,x as Ue,y as We,yt as Ge,z as Ke}from"./account-DJJSBLFB.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var qe=Ge((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function ee(e){if(h=!1,b(e),!m){if(n(c)!==null)m=!0,te||(te=!0,ae());else{var t=n(l);t!==null&&ce(ee,t.startTime-e)}}}var te=!1,ne=-1,re=5,x=-1;function S(){return g?!0:!(e.unstable_now()-x<re)}function ie(){if(g=!1,te){var t=e.unstable_now();x=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(ne),ne=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&S());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&ce(ee,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?ae():te=!1}}}var ae;if(typeof y==`function`)ae=function(){y(ie)};else if(typeof MessageChannel<`u`){var oe=new MessageChannel,se=oe.port2;oe.port1.onmessage=ie,ae=function(){se.postMessage(null)}}else ae=function(){_(ie,0)};function ce(t,n){ne=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):re=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(ne),ne=-1):h=!0,ce(ee,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,te||(te=!0,ae()))),r},e.unstable_shouldYield=S,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),Je=Ge(((e,t)=>{t.exports=qe()})),Ye=Ge((e=>{var t=Ve();function n(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function r(){}var i={d:{f:r,r:function(){throw Error(n(522))},D:r,C:r,L:r,m:r,X:r,S:r,M:r},p:0,findDOMNode:null},a=Symbol.for(`react.portal`),o=Symbol.for(`react.recoverable`),s=Symbol.for(`react.optimistic_key`);function c(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:a,key:r==null?null:r===s?s:``+r,children:e,containerInfo:t,implementation:n}}var l=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function u(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,e.browser=function(e){return{$$typeof:o,_reason:e}},e.createPortal=function(e,t){var r=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(n(299));return c(e,t,null,r)},e.flushSync=function(e){var t=l.T,n=i.p;try{if(l.T=null,i.p=2,e)return e()}finally{l.T=t,i.p=n,i.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,i.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&i.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=u(n,t.crossOrigin),a=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?i.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:a,fetchPriority:o}):n===`script`&&i.d.X(e,{crossOrigin:r,integrity:a,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`){if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=u(t.as,t.crossOrigin);i.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0})}}else t??i.d.M(e)}},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=u(n,t.crossOrigin);i.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`){if(t){var n=u(t.as,t.crossOrigin);i.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0})}else i.d.m(e)}},e.requestFormReset=function(e){i.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return l.H.useFormState(e,t,n)},e.useFormStatus=function(){return l.H.useHostTransitionStatus()},e.version=`19.3.1`})),Xe=Ge(((e,t)=>{function n(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE==`function`)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=Ye()})),Ze=Ge((e=>{var t=Je(),n=Ve(),r=Xe();function i(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function a(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function o(e){for(var t=e,n=t;n&&!n.alternate;)t=n,t.flags&4098&&(e=t.return),n=t.return;for(;t.return;)t=t.return;return t.tag===3?e:null}function s(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function c(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function l(e){if(o(e)!==e)throw Error(i(188))}function u(e){var t=e.alternate;if(!t){if(t=o(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return l(a),e;if(s===r)return l(a),t;s=s.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=s;else{for(var c=!1,u=a.child;u;){if(u===n){c=!0,n=a,r=s;break}if(u===r){c=!0,r=a,n=s;break}u=u.sibling}if(!c){for(u=s.child;u;){if(u===n){c=!0,n=s,r=a;break}if(u===r){c=!0,r=s,n=a;break}u=u.sibling}if(!c)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function d(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=d(e),t!==null)return t;e=e.sibling}return null}function f(e,t,n,r,i,a){for(;e!==null;){if((e.tag===5||e.tag===27||e.tag===6)&&n(e,r,i,a)||(e.tag!==22||e.memoizedState===null)&&(t||e.tag!==5&&e.tag!==27)&&f(e.child,t,n,r,i,a))return!0;e=e.sibling}return!1}function p(e){for(e=e.return;e!==null;){if(e.tag===3||e.tag===5||e.tag===27)return e;e=e.return}return null}function m(e){var t=!1;for(e=e.return;e!==null&&(e.tag===4&&(t=!0),e.tag!==3&&e.tag!==5&&e.tag!==27);)e=e.return;return t}function h(e){var t=[null,null],n=p(e);return n===null||g(t,e,n.child,{foundSelf:!1}),t}function g(e,t,n,r){for(;n!==null;){if(n===t)r.foundSelf=!0;else if(n.tag===5||n.tag===27||n.tag===6){if(r.foundSelf)return e[1]=n,!0;e[0]=n}else if((n.tag!==22||n.memoizedState===null)&&g(e,t,n.child,r))return!0;n=n.sibling}return!1}function _(e){switch(e.tag){case 5:case 27:case 6:return e.stateNode;case 3:return e.stateNode.containerInfo;default:throw Error(i(559))}}var v=null,y=null;function b(e,t,n){return e===n||e===t&&(v=e,!0)}function ee(e,t,n){return e===n?(y=e,!1):e===t&&(y!==null&&(v=e),!0)}function te(e){if(e===null)return null;do e=e===null?null:e.return;while(e&&e.tag!==5&&e.tag!==27&&e.tag!==3);return e||null}function ne(e,t,n){for(var r=0,i=e;i;i=n(i))r++;i=0;for(var a=t;a;a=n(a))i++;for(;0<r-i;)e=n(e),r--;for(;0<i-r;)t=n(t),i--;for(;r--;){if(e===t||t!==null&&e===t.alternate)return e;e=n(e),t=n(t)}return null}var re=Object.assign,x=Symbol.for(`react.element`),S=Symbol.for(`react.transitional.element`),ie=Symbol.for(`react.portal`),ae=Symbol.for(`react.fragment`),oe=Symbol.for(`react.strict_mode`),se=Symbol.for(`react.profiler`),ce=Symbol.for(`react.consumer`),le=Symbol.for(`react.context`),ue=Symbol.for(`react.forward_ref`),de=Symbol.for(`react.suspense`),fe=Symbol.for(`react.suspense_list`),pe=Symbol.for(`react.memo`),me=Symbol.for(`react.lazy`),he=Symbol.for(`react.activity`),ge=Symbol.for(`react.legacy_hidden`),_e=Symbol.for(`react.memo_cache_sentinel`),ve=Symbol.for(`react.view_transition`),ye=Symbol.for(`react.recoverable`),be=Symbol.iterator;function xe(e){return typeof e!=`object`||!e?null:(e=be&&e[be]||e[`@@iterator`],typeof e==`function`?e:null)}var Se=Symbol.for(`react.client.reference`);function Ce(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===Se?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case ae:return`Fragment`;case se:return`Profiler`;case oe:return`StrictMode`;case de:return`Suspense`;case fe:return`SuspenseList`;case he:return`Activity`;case ve:return`ViewTransition`}if(typeof e==`object`)switch(e.$$typeof){case ie:return`Portal`;case le:return e.displayName||`Context`;case ce:return(e._context.displayName||`Context`)+`.Consumer`;case ue:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case pe:return t=e.displayName||null,t===null?Ce(e.type)||`Memo`:t;case me:t=e._payload,e=e._init;try{return Ce(e(t))}catch{}}return null}var we=Array.isArray,C=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Te=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Ee={pending:!1,data:null,method:null,action:null},De=[],Oe=-1;function ke(e){return{current:e}}function Ae(e){0>Oe||(e.current=De[Oe],De[Oe]=null,Oe--)}function je(e,t){Oe++,De[Oe]=e.current,e.current=t}var Me=ke(null),Ne=ke(null),Pe=ke(null),Fe=ke(null);function Ie(e,t){switch(je(Pe,t),je(Ne,e),je(Me,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Sp(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Sp(t),e=Cp(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}Ae(Me),je(Me,e)}function Le(){Ae(Me),Ae(Ne),Ae(Pe)}function Re(e){var t=e.memoizedState;t!==null&&(yh._currentValue=t.memoizedState,je(Fe,e)),t=Me.current;var n=Cp(t,e.type);t!==n&&(je(Ne,e),je(Me,n))}function ze(e){Ne.current===e&&(Ae(Me),Ae(Ne)),Fe.current===e&&(Ae(Fe),yh._currentValue=Ee)}var Be,w;function He(e){if(Be===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);Be=t&&t[1]||``,w=-1<e.stack.indexOf(`
|
|
3
|
+
at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
|
|
4
|
+
`+Be+e+w}var Ue=!1;function We(e,t){if(!e||Ue)return``;Ue=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var r={DetermineComponentFrameRoot:function(){try{if(t){var n=function(){throw Error()};if(Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){var r=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){r=e}n=!1;try{var i=Object.getOwnPropertyDescriptor(e.prototype,`props`);Object.defineProperty(e.prototype,"props",{configurable:!0,set:function(){throw Error()}}),n=!0,new e}finally{n&&(i===void 0?delete e.prototype.props:Object.defineProperty(e.prototype,"props",i))}}}else{try{throw Error()}catch(e){r=e}(n=e())&&typeof n.catch==`function`&&n.catch(function(){})}}catch(e){if(e&&r&&typeof e.stack==`string`)return[e.stack,r.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`;var i=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,`name`);i&&i.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,"name",{value:`DetermineComponentFrameRoot`});var a=r.DetermineComponentFrameRoot(),o=a[0],s=a[1];if(o&&s){var c=o.split(`
|
|
5
|
+
`),l=s.split(`
|
|
6
|
+
`);for(i=r=0;r<c.length&&!c[r].includes(`DetermineComponentFrameRoot`);)r++;for(;i<l.length&&!l[i].includes(`DetermineComponentFrameRoot`);)i++;if(r===c.length||i===l.length)for(r=c.length-1,i=l.length-1;1<=r&&0<=i&&c[r]!==l[i];)i--;for(;1<=r&&0<=i;r--,i--)if(c[r]!==l[i]){if(r!==1||i!==1)do if(r--,i--,0>i||c[r]!==l[i]){var u=`
|
|
7
|
+
`+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(`<anonymous>`)&&(u=u.replace(`<anonymous>`,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{Ue=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?He(n):``}function Ge(e,t){switch(e.tag){case 26:case 27:case 5:return He(e.type);case 16:return He(`Lazy`);case 13:return e.child!==t&&t!==null?He(`Suspense Fallback`):He(`Suspense`);case 19:return He(`SuspenseList`);case 0:case 15:return We(e.type,!1);case 11:return We(e.type.render,!1);case 1:return We(e.type,!0);case 31:return He(`Activity`);case 30:return He(`ViewTransition`);default:return``}}function Ke(e){try{var t=``,n=null;do t+=Ge(e,n),n=e,e=e.return;while(e);return t}catch(e){return`
|
|
8
|
+
Error generating stack: `+e.message+`
|
|
9
|
+
`+e.stack}}var qe=Object.prototype.hasOwnProperty,Ye=t.unstable_scheduleCallback,Ze=t.unstable_cancelCallback,Qe=t.unstable_shouldYield,T=t.unstable_requestPaint,$e=t.unstable_now,et=t.unstable_getCurrentPriorityLevel,tt=t.unstable_ImmediatePriority,nt=t.unstable_UserBlockingPriority,rt=t.unstable_NormalPriority,it=t.unstable_LowPriority,at=t.unstable_IdlePriority,ot=t.log,st=t.unstable_setDisableYieldValue,ct=null,lt=null;function ut(e){if(typeof ot==`function`&&st(e),lt&&typeof lt.setStrictMode==`function`)try{lt.setStrictMode(ct,e)}catch{}}var dt=Math.clz32?Math.clz32:mt,ft=Math.log,pt=Math.LN2;function mt(e){return e>>>=0,e===0?32:31-(ft(e)/pt|0)|0}var ht=256,gt=262144,_t=4194304;function vt(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&-e;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function yt(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=vt(n))):i=vt(o):i=vt(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=vt(n))):i=vt(o)):i=vt(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function bt(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function xt(e,t){t&8&&(t|=t&32);var n=e.entangledLanes;if(n!==0)for(e=e.entanglements,n&=t;0<n;){var r=31-dt(n),i=1<<r;t|=e[r],n&=~i}return t}function St(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Ct(){var e=_t;return _t<<=1,!(_t&62914560)&&(_t=4194304),e}function wt(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Tt(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Et(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0<n;){var u=31-dt(n),d=1<<u;s[u]=0,c[u]=-1;var f=l[u];if(f!==null)for(l[u]=null,u=0;u<f.length;u++){var p=f[u];p!==null&&(p.lane&=-536870913)}n&=~d}r!==0&&Dt(e,r,0),a!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=a&~(o&~t))}function Dt(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-dt(t);e.entangledLanes|=t,e.entanglements[r]=e.entanglements[r]|1073741824|n&261930}function Ot(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-dt(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}function kt(e,t){var n=t&-t;return n=n&42?1:At(n),(n&(e.suspendedLanes|t))===0?n:0}function At(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function jt(e){return e&=-e,2<e?8<e?e&134217727?32:268435456:8:2}function Mt(){var e=Te.p;return e===0?(e=window.event,e===void 0?32:Fh(e.type)):e}function Nt(e,t){var n=Te.p;try{return Te.p=e,t()}finally{Te.p=n}}var Pt=Math.random().toString(36).slice(2),Ft=`__reactFiber$`+Pt,It=`__reactProps$`+Pt,Lt=`__reactContainer$`+Pt,Rt=`__reactEvents$`+Pt,zt=`__reactListeners$`+Pt,Bt=`__reactHandles$`+Pt,Vt=`__reactResources$`+Pt,Ht=`__reactMarker$`+Pt,Ut=`__reactLoad$`+Pt;function Wt(e){delete e[Ft],delete e[It],delete e[zt],delete e[Bt]}function Gt(e){var t;if(t=e[Ft])return t;for(var n=e.parentNode;n;){if(t=n[Lt]||n[Ft]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=wm(e);e!==null;){if(n=e[Ft])return n;e=wm(e)}return t}e=n,n=e.parentNode}return null}function Kt(e){if(e=e[Ft]||e[Lt]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function qt(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(i(33))}function Jt(e){var t=e[Vt];return t||=e[Vt]={hoistableStyles:new Map,hoistableScripts:new Map},t}function E(e){e[Ht]=!0}function Yt(e){e[Ut]=void 0}var Xt=new Set,Zt={};function Qt(e,t){$t(e,t),$t(e+`Capture`,t)}function $t(e,t){for(Zt[e]=t,e=0;e<t.length;e++)Xt.add(t[e])}var en=RegExp(`^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$`),tn={},nn={};function rn(e){return qe.call(nn,e)?!0:qe.call(tn,e)?!1:en.test(e)?nn[e]=!0:(tn[e]=!0,!1)}var D=!1;function an(){var e=D;return D=!1,e}function on(e,t,n){if(rn(t)){if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:e.removeAttribute(t);return;case`boolean`:var r=t.toLowerCase().slice(0,5);if(r!==`data-`&&r!==`aria-`){e.removeAttribute(t);return}}e.setAttribute(t,n)}}}function sn(e,t,n){if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(t);return}e.setAttribute(t,n)}}function cn(e,t,n,r){if(r===null)e.removeAttribute(n);else{switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(n);return}e.setAttributeNS(t,n,r)}}function ln(e){switch(typeof e){case`bigint`:case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return e;default:return``}}function un(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function dn(e,t,n){var r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&r!==void 0&&typeof r.get==`function`&&typeof r.set==`function`){var i=r.get,a=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(e){n=``+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(e){n=``+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function fn(e){if(!e._valueTracker){var t=un(e)?`checked`:`value`;e._valueTracker=dn(e,t,``+e[t])}}function pn(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=un(e)?e.checked?`true`:`false`:e.value),e=r,e!==n&&(t.setValue(e),!0)}var mn=/[\n"\\]/g;function hn(e){return e.replace(mn,function(e){return`\\`+e.charCodeAt(0).toString(16)+` `})}function gn(e,t,n,r,i,a,o,s){e.name=``,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`?e.type=o:e.removeAttribute(`type`),t==null?o!==`submit`&&o!==`reset`||e.removeAttribute(`value`):o===`number`?(t===0&&e.value===``||e.value!=t)&&(e.value=``+ln(t)):e.value!==``+ln(t)&&(e.value=``+ln(t)),t==null?n==null?r!=null&&e.removeAttribute(`value`):vn(e,ln(n)):o===`number`&&e.value==t?vn(e,ln(e.value)):vn(e,ln(t)),i==null&&a!=null&&(e.defaultChecked=!!a),i!=null&&(e.checked=i&&typeof i!=`function`&&typeof i!=`symbol`),s!=null&&typeof s!=`function`&&typeof s!=`symbol`&&typeof s!=`boolean`?e.name=``+ln(s):e.removeAttribute(`name`)}function _n(e,t,n,r,i,a,o,s){if(a!=null&&typeof a!=`function`&&typeof a!=`symbol`&&typeof a!=`boolean`&&(e.type=a),t!=null||n!=null){if(!(a!==`submit`&&a!==`reset`||t!=null)){fn(e);return}n=n==null?``:``+ln(n),t=t==null?n:``+ln(t),s||t===e.value||(e.value=t),e.defaultValue=t}r??=i,r=typeof r!=`function`&&typeof r!=`symbol`&&!!r,e.checked=s?e.checked:!!r,e.defaultChecked=!!r,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`&&(e.name=o),fn(e)}function vn(e,t){e.defaultValue!==``+t&&(e.defaultValue=``+t)}function yn(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t[`$`+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty(`$`+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=``+ln(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function bn(e,t,n){t!=null&&(t=``+ln(t),t!==e.value&&(e.value=t),n==null)?e.defaultValue!==t&&(e.defaultValue=t):e.defaultValue=n==null?``:``+ln(n)}function xn(e,t,n,r){if(t==null){if(r!=null){if(n!=null)throw Error(i(92));if(we(r)){if(1<r.length)throw Error(i(93));r=r[0]}n=r}n??=``,t=n}n=ln(t),e.defaultValue=n,r=e.textContent,r===n&&r!==``&&r!==null&&(e.value=r),fn(e)}function Sn(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Cn=new Set(`animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp`.split(` `));function wn(e,t,n){var r=t.indexOf(`--`)===0;n==null||typeof n==`boolean`||n===``?r?e.setProperty(t,``):t===`float`?e.cssFloat=``:e[t]=``:r?e.setProperty(t,n):typeof n!=`number`||n===0||Cn.has(t)?t===`float`?e.cssFloat=n:e[t]=(``+n).trim():e[t]=n+`px`}function Tn(e,t,n){if(t!=null&&typeof t!=`object`)throw Error(i(62));if(e=e.style,n!=null){for(var r in n)!n.hasOwnProperty(r)||t!=null&&t.hasOwnProperty(r)||(r.indexOf(`--`)===0?e.setProperty(r,``):r===`float`?e.cssFloat=``:e[r]=``,D=!0);for(var a in t)r=t[a],t.hasOwnProperty(a)&&n[a]!==r&&(wn(e,a,r),D=!0)}else for(var o in t)t.hasOwnProperty(o)&&wn(e,o,t[o])}function En(e){if(e.indexOf(`-`)===-1)return!1;switch(e){case`annotation-xml`:case`color-profile`:case`font-face`:case`font-face-src`:case`font-face-uri`:case`font-face-format`:case`font-face-name`:case`missing-glyph`:return!1;default:return!0}}var Dn=new Map([[`acceptCharset`,`accept-charset`],[`htmlFor`,`for`],[`httpEquiv`,`http-equiv`],[`crossOrigin`,`crossorigin`],[`accentHeight`,`accent-height`],[`alignmentBaseline`,`alignment-baseline`],[`arabicForm`,`arabic-form`],[`baselineShift`,`baseline-shift`],[`capHeight`,`cap-height`],[`clipPath`,`clip-path`],[`clipRule`,`clip-rule`],[`colorInterpolation`,`color-interpolation`],[`colorInterpolationFilters`,`color-interpolation-filters`],[`colorProfile`,`color-profile`],[`colorRendering`,`color-rendering`],[`dominantBaseline`,`dominant-baseline`],[`enableBackground`,`enable-background`],[`fillOpacity`,`fill-opacity`],[`fillRule`,`fill-rule`],[`floodColor`,`flood-color`],[`floodOpacity`,`flood-opacity`],[`fontFamily`,`font-family`],[`fontSize`,`font-size`],[`fontSizeAdjust`,`font-size-adjust`],[`fontStretch`,`font-stretch`],[`fontStyle`,`font-style`],[`fontVariant`,`font-variant`],[`fontWeight`,`font-weight`],[`glyphName`,`glyph-name`],[`glyphOrientationHorizontal`,`glyph-orientation-horizontal`],[`glyphOrientationVertical`,`glyph-orientation-vertical`],[`horizAdvX`,`horiz-adv-x`],[`horizOriginX`,`horiz-origin-x`],[`imageRendering`,`image-rendering`],[`letterSpacing`,`letter-spacing`],[`lightingColor`,`lighting-color`],[`markerEnd`,`marker-end`],[`markerMid`,`marker-mid`],[`markerStart`,`marker-start`],[`maskType`,`mask-type`],[`overlinePosition`,`overline-position`],[`overlineThickness`,`overline-thickness`],[`paintOrder`,`paint-order`],[`panose-1`,`panose-1`],[`pointerEvents`,`pointer-events`],[`renderingIntent`,`rendering-intent`],[`shapeRendering`,`shape-rendering`],[`stopColor`,`stop-color`],[`stopOpacity`,`stop-opacity`],[`strikethroughPosition`,`strikethrough-position`],[`strikethroughThickness`,`strikethrough-thickness`],[`strokeDasharray`,`stroke-dasharray`],[`strokeDashoffset`,`stroke-dashoffset`],[`strokeLinecap`,`stroke-linecap`],[`strokeLinejoin`,`stroke-linejoin`],[`strokeMiterlimit`,`stroke-miterlimit`],[`strokeOpacity`,`stroke-opacity`],[`strokeWidth`,`stroke-width`],[`textAnchor`,`text-anchor`],[`textDecoration`,`text-decoration`],[`textRendering`,`text-rendering`],[`transformOrigin`,`transform-origin`],[`underlinePosition`,`underline-position`],[`underlineThickness`,`underline-thickness`],[`unicodeBidi`,`unicode-bidi`],[`unicodeRange`,`unicode-range`],[`unitsPerEm`,`units-per-em`],[`vAlphabetic`,`v-alphabetic`],[`vHanging`,`v-hanging`],[`vIdeographic`,`v-ideographic`],[`vMathematical`,`v-mathematical`],[`vectorEffect`,`vector-effect`],[`vertAdvY`,`vert-adv-y`],[`vertOriginX`,`vert-origin-x`],[`vertOriginY`,`vert-origin-y`],[`wordSpacing`,`word-spacing`],[`writingMode`,`writing-mode`],[`xmlnsXlink`,`xmlns:xlink`],[`xHeight`,`x-height`]]),On=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function kn(e){return On.test(``+e)?`javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')`:e}function An(){}var jn=null;function Mn(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Nn=null,Pn=null;function Fn(e){var t=Kt(e);if(t&&(e=t.stateNode)){var n=e[It]||null;a:switch(e=t.stateNode,t.type){case`input`:if(gn(e,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name),t=n.name,n.type===`radio`&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll(`input[name="`+hn(``+t)+`"][type="radio"]`),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=r[It]||null;if(!a)throw Error(i(90));gn(r,a.value,a.defaultValue,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name)}}for(t=0;t<n.length;t++)r=n[t],r.form===e.form&&pn(r)}break a;case`textarea`:bn(e,n.value,n.defaultValue);break a;case`select`:t=n.value,t!=null&&yn(e,!!n.multiple,t,!1)}}}var In=!1;function Ln(e,t,n){if(In)return e(t,n);In=!0;try{return e(t)}finally{if(In=!1,(Nn!==null||Pn!==null)&&(Yd(),Nn&&(t=Nn,e=Pn,Pn=Nn=null,Fn(t),e)))for(t=0;t<e.length;t++)Fn(e[t])}}function Rn(e,t){var n=e.stateNode;if(n===null)return null;var r=n[It]||null;if(r===null)return null;n=r[t];a:switch(t){case`onClick`:case`onClickCapture`:case`onDoubleClick`:case`onDoubleClickCapture`:case`onMouseDown`:case`onMouseDownCapture`:case`onMouseMove`:case`onMouseMoveCapture`:case`onMouseUp`:case`onMouseUpCapture`:case`onMouseEnter`:(r=!r.disabled)||(e=e.type,r=e!==`button`&&e!==`input`&&e!==`select`&&e!==`textarea`),e=!r;break a;default:e=!1}if(e)return null;if(n&&typeof n!=`function`)throw Error(i(231,t,typeof n));return n}var zn=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,Bn=!1;if(zn)try{var Vn={};Object.defineProperty(Vn,"passive",{get:function(){Bn=!0}}),window.addEventListener(`test`,Vn,Vn),window.removeEventListener(`test`,Vn,Vn)}catch{Bn=!1}var Hn=null,Un=null,Wn=null;function Gn(){if(Wn)return Wn;var e,t=Un,n=t.length,r,i=`value`in Hn?Hn.value:Hn.textContent,a=i.length;for(e=0;e<n&&t[e]===i[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===i[a-r];r++);return Wn=i.slice(e,1<r?1-r:void 0)}function Kn(e){var t=e.keyCode;return`charCode`in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function qn(){return!0}function Jn(){return!1}function Yn(e){function t(t,n,r,i,a){for(var o in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=i,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(o)&&(t=e[o],this[o]=t?t(i):i[o]);return this.isDefaultPrevented=(i.defaultPrevented==null?!1===i.returnValue:i.defaultPrevented)?qn:Jn,this.isPropagationStopped=Jn,this}return re(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():typeof e.returnValue!=`unknown`&&(e.returnValue=!1),this.isDefaultPrevented=qn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():typeof e.cancelBubble!=`unknown`&&(e.cancelBubble=!0),this.isPropagationStopped=qn)},persist:function(){},isPersistent:qn}),t}var Xn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Zn=Yn(Xn),Qn=re({},Xn,{view:0,detail:0}),$n=Yn(Qn),er,tr,nr,rr=re({},Qn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:mr,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return`movementX`in e?e.movementX:(e!==nr&&(nr&&e.type===`mousemove`?(er=e.screenX-nr.screenX,tr=e.screenY-nr.screenY):tr=er=0,nr=e),er)},movementY:function(e){return`movementY`in e?e.movementY:tr}}),ir=Yn(rr),ar=Yn(re({},rr,{dataTransfer:0})),or=Yn(re({},Qn,{relatedTarget:0})),sr=Yn(re({},Xn,{animationName:0,elapsedTime:0,pseudoElement:0})),cr=Yn(re({},Xn,{clipboardData:function(e){return`clipboardData`in e?e.clipboardData:window.clipboardData}})),lr=Yn(re({},Xn,{data:0})),ur={Esc:`Escape`,Spacebar:` `,Left:`ArrowLeft`,Up:`ArrowUp`,Right:`ArrowRight`,Down:`ArrowDown`,Del:`Delete`,Win:`OS`,Menu:`ContextMenu`,Apps:`ContextMenu`,Scroll:`ScrollLock`,MozPrintableKey:`Unidentified`},dr={8:`Backspace`,9:`Tab`,12:`Clear`,13:`Enter`,16:`Shift`,17:`Control`,18:`Alt`,19:`Pause`,20:`CapsLock`,27:`Escape`,32:` `,33:`PageUp`,34:`PageDown`,35:`End`,36:`Home`,37:`ArrowLeft`,38:`ArrowUp`,39:`ArrowRight`,40:`ArrowDown`,45:`Insert`,46:`Delete`,112:`F1`,113:`F2`,114:`F3`,115:`F4`,116:`F5`,117:`F6`,118:`F7`,119:`F8`,120:`F9`,121:`F10`,122:`F11`,123:`F12`,144:`NumLock`,145:`ScrollLock`,224:`Meta`},fr={Alt:`altKey`,Control:`ctrlKey`,Meta:`metaKey`,Shift:`shiftKey`};function pr(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=fr[e])?!!t[e]:!1}function mr(){return pr}var hr=Yn(re({},Qn,{key:function(e){if(e.key){var t=ur[e.key]||e.key;if(t!==`Unidentified`)return t}return e.type===`keypress`?(e=Kn(e),e===13?`Enter`:String.fromCharCode(e)):e.type===`keydown`||e.type===`keyup`?dr[e.keyCode]||`Unidentified`:``},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:mr,charCode:function(e){return e.type===`keypress`?Kn(e):0},keyCode:function(e){return e.type===`keydown`||e.type===`keyup`?e.keyCode:0},which:function(e){return e.type===`keypress`?Kn(e):e.type===`keydown`||e.type===`keyup`?e.keyCode:0}})),gr=Yn(re({},rr,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),_r=Yn(re({},Xn,{submitter:0})),vr=Yn(re({},Qn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:mr})),yr=Yn(re({},Xn,{propertyName:0,elapsedTime:0,pseudoElement:0})),br=Yn(re({},rr,{deltaX:function(e){return`deltaX`in e?e.deltaX:`wheelDeltaX`in e?-e.wheelDeltaX:0},deltaY:function(e){return`deltaY`in e?e.deltaY:`wheelDeltaY`in e?-e.wheelDeltaY:`wheelDelta`in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0})),xr=Yn(re({},Xn,{newState:0,oldState:0,source:0})),Sr=[9,13,27,32],Cr=zn&&`CompositionEvent`in window,wr=null;zn&&`documentMode`in document&&(wr=document.documentMode);var Tr=zn&&`TextEvent`in window&&!wr,Er=zn&&(!Cr||wr&&8<wr&&11>=wr),Dr=` `,Or=!1;function kr(e,t){switch(e){case`keyup`:return Sr.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function Ar(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var jr=!1;function Mr(e,t){switch(e){case`compositionend`:return Ar(t);case`keypress`:return t.which===32?(Or=!0,Dr):null;case`textInput`:return e=t.data,e===Dr&&Or?null:e;default:return null}}function Nr(e,t){if(jr)return e===`compositionend`||!Cr&&kr(e,t)?(e=Gn(),Wn=Un=Hn=null,jr=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case`compositionend`:return Er&&t.locale!==`ko`?null:t.data;default:return null}}var Pr={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Fr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t===`input`?!!Pr[e.type]:t===`textarea`}function Ir(e,t,n,r){Nn?Pn?Pn.push(r):Pn=[r]:Nn=r,t=ap(t,`onChange`),0<t.length&&(n=new Zn(`onChange`,`change`,null,n,r),e.push({event:n,listeners:t}))}var Lr=null,Rr=null;function zr(e){Qf(e,0)}function Br(e){if(pn(qt(e)))return e}function Vr(e,t){if(e===`change`)return t}var Hr=!1;if(zn){var Ur;if(zn){var Wr=`oninput`in document;if(!Wr){var Gr=document.createElement(`div`);Gr.setAttribute(`oninput`,`return;`),Wr=typeof Gr.oninput==`function`}Ur=Wr}else Ur=!1;Hr=Ur&&(!document.documentMode||9<document.documentMode)}function Kr(){Lr&&(Lr.detachEvent(`onpropertychange`,qr),Rr=Lr=null)}function qr(e){if(e.propertyName===`value`&&Br(Rr)){var t=[];Ir(t,Rr,e,Mn(e)),Ln(zr,t)}}function Jr(e,t,n){e===`focusin`?(Kr(),Lr=t,Rr=n,Lr.attachEvent(`onpropertychange`,qr)):e===`focusout`&&Kr()}function Yr(e){if(e===`selectionchange`||e===`keyup`||e===`keydown`)return Br(Rr)}function Xr(e,t){if(e===`click`)return Br(t)}function Zr(e,t){if(e===`input`||e===`change`)return Br(t)}function Qr(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var $r=typeof Object.is==`function`?Object.is:Qr;function ei(e,t){if($r(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!qe.call(t,i)||!$r(e[i],t[i]))return!1}return!0}function ti(e){if(e||=typeof document<`u`?document:void 0,e===void 0)return null;try{return e.activeElement||e.body}catch{return e.body}}function ni(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function ri(e,t){var n=ni(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=ni(n)}}function ii(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?ii(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function ai(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ti(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=ti(e.document)}return t}function oi(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}var si=zn&&`documentMode`in document&&11>=document.documentMode,ci=null,li=null,ui=null,di=!1;function fi(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;di||ci==null||ci!==ti(r)||(r=ci,`selectionStart`in r&&oi(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),ui&&ei(ui,r)||(ui=r,r=ap(li,`onSelect`),0<r.length&&(t=new Zn(`onSelect`,`select`,null,t,n),e.push({event:t,listeners:r}),t.target=ci)))}function pi(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n[`Webkit`+e]=`webkit`+t,n[`Moz`+e]=`moz`+t,n}var mi={animationend:pi(`Animation`,`AnimationEnd`),animationiteration:pi(`Animation`,`AnimationIteration`),animationstart:pi(`Animation`,`AnimationStart`),transitionrun:pi(`Transition`,`TransitionRun`),transitionstart:pi(`Transition`,`TransitionStart`),transitioncancel:pi(`Transition`,`TransitionCancel`),transitionend:pi(`Transition`,`TransitionEnd`)},hi={},gi={};zn&&(gi=document.createElement(`div`).style,`AnimationEvent`in window||(delete mi.animationend.animation,delete mi.animationiteration.animation,delete mi.animationstart.animation),`TransitionEvent`in window||delete mi.transitionend.transition);function _i(e){if(hi[e])return hi[e];if(!mi[e])return e;var t=mi[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in gi)return hi[e]=t[n];return e}var vi=_i(`animationend`),yi=_i(`animationiteration`),bi=_i(`animationstart`),xi=_i(`transitionrun`),Si=_i(`transitionstart`),Ci=_i(`transitioncancel`),wi=_i(`transitionend`),Ti=new Map,Ei=`abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error fullscreenChange fullscreenError gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel`.split(` `);Ei.push(`scrollEnd`);function Di(e,t){Ti.set(e,t),Qt(t,[e])}var Oi=0;function ki(e,t){if(e.name!=null&&e.name!==`auto`)return e.name;if(t.autoName!==null)return t.autoName;e=Ad.identifierPrefix;var n=Oi++;return e=`_`+e+`t_`+n.toString(32)+`_`,t.autoName=e}function Ai(e){if(e==null||typeof e==`string`)return e;var t=null,n=Rd;if(n!==null)for(var r=0;r<n.length;r++){var i=e[n[r]];if(i!=null){if(i===`none`)return`none`;t=t==null?i:t+(` `+i)}}return t??e.default}function ji(e,t){return e=Ai(e),t=Ai(t),t==null?e===`auto`?null:e:t===`auto`?null:t}var Mi=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},Ni=[],Pi=0,Fi=0;function Ii(){for(var e=Pi,t=Fi=Pi=0;t<e;){var n=Ni[t];Ni[t++]=null;var r=Ni[t];Ni[t++]=null;var i=Ni[t];Ni[t++]=null;var a=Ni[t];if(Ni[t++]=null,r!==null&&i!==null){var o=r.pending;o===null?i.next=i:(i.next=o.next,o.next=i),r.pending=i}a!==0&&Bi(n,i,a)}}function Li(e,t,n,r){Ni[Pi++]=e,Ni[Pi++]=t,Ni[Pi++]=n,Ni[Pi++]=r,Fi|=r,e.lanes|=r,e=e.alternate,e!==null&&(e.lanes|=r)}function Ri(e,t,n,r){return Li(e,t,n,r),Vi(e)}function zi(e,t){return Li(e,null,null,t),Vi(e)}function Bi(e,t,n){e.lanes|=n;var r=e.alternate;r!==null&&(r.lanes|=n);for(var i=!1,a=e.return;a!==null;)a.childLanes|=n,r=a.alternate,r!==null&&(r.childLanes|=n),a.tag===22&&(e=a.stateNode,e===null||e._visibility&1||(i=!0)),e=a,a=a.return;return e.tag===3?(a=e.stateNode,i&&t!==null&&(i=31-dt(n),e=a.hiddenUpdates,r=e[i],r===null?e[i]=[t]:r.push(t),t.lane=n|536870912),a):null}function Vi(e){if(50<zd)throw zd=0,Bd=null,Error(i(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var Hi={};function Ui(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Wi(e,t,n,r){return new Ui(e,t,n,r)}function Gi(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Ki(e,t){var n=e.alternate;return n===null?(n=Wi(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&1206910976,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n.refCleanup=e.refCleanup,n}function qi(e,t){e.flags&=1206910978;var n=e.alternate;return n===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=n.childLanes,e.lanes=n.lanes,e.child=n.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=n.memoizedProps,e.memoizedState=n.memoizedState,e.updateQueue=n.updateQueue,e.type=n.type,t=n.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function O(e,t,n,r,a,o){var s=0;if(r=e,typeof r==`function`)Gi(r)&&(s=1);else if(typeof r==`string`)s=ah(e,n,Me.current)?26:e===`html`||e===`head`||e===`body`?27:5;else a:switch(r){case he:return e=Wi(31,n,t,a),e.elementType=he,e.lanes=o,e;case ae:return Ji(n.children,a,o,t);case oe:s=8,a|=24;break;case se:return e=Wi(12,n,t,a|2),e.elementType=se,e.lanes=o,e;case de:return e=Wi(13,n,t,a),e.elementType=de,e.lanes=o,e;case fe:return e=Wi(19,n,t,a),e.elementType=fe,e.lanes=o,e;case ge:case ve:return e=a|32,e=Wi(30,n,t,e),e.elementType=ve,e.lanes=o,e.stateNode={autoName:null,paired:null,clones:null,ref:null},e;default:if(typeof r==`object`&&r)switch(r.$$typeof){case le:s=10;break a;case ce:s=9;break a;case ue:s=11;break a;case pe:s=14;break a;case me:s=16,r=null;break a}s=29,n=Error(i(130,e===null?`null`:typeof e,``)),r=null}return t=Wi(s,n,t,a),t.elementType=e,t.type=r,t.lanes=o,t}function Ji(e,t,n,r){return e=Wi(7,e,r,t),e.lanes=n,e}function Yi(e,t,n){return e=Wi(6,e,null,t),e.lanes=n,e}function Xi(e){var t=Wi(18,null,null,0);return t.stateNode=e,t}function Zi(e,t,n){return t=Wi(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var k=new WeakMap;function A(e,t){if(typeof e==`object`&&e){var n=k.get(e);return n===void 0?(t={value:e,source:t,stack:Ke(t)},k.set(e,t),t):n}return{value:e,source:t,stack:Ke(t)}}var Qi=[],$i=0,j=null,ea=0,ta=[],na=0,ra=null,ia=1,aa=``;function M(e,t){Qi[$i++]=ea,Qi[$i++]=j,j=e,ea=t}function N(e,t,n){ta[na++]=ia,ta[na++]=aa,ta[na++]=ra,ra=e;var r=ia;e=aa;var i=32-dt(r)-1;r&=~(1<<i),n+=1;var a=32-dt(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,ia=1<<32-dt(t)+i|n<<i|r,aa=a+e}else ia=1<<a|n<<i|r,aa=e}function oa(e){e.return!==null&&(M(e,1),N(e,1,0))}function sa(e){for(;e===j;)j=Qi[--$i],Qi[$i]=null,ea=Qi[--$i],Qi[$i]=null;for(;e===ra;)ra=ta[--na],ta[na]=null,aa=ta[--na],ta[na]=null,ia=ta[--na],ta[na]=null}function P(e,t){ta[na++]=ia,ta[na++]=aa,ta[na++]=ra,ia=t.id,aa=t.overflow,ra=e}var ca=null,la=null,F=!1,ua=null,I=!1,da=Error(i(519));function fa(e){throw va(A(Error(i(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?`text`:`HTML`,``)),e)),da}function pa(e){var t=e.stateNode,n=e.type,r=e.memoizedProps;switch(t[Ft]=e,t[It]=r,n){case`dialog`:V(`cancel`,t),V(`close`,t);break;case`iframe`:case`object`:case`embed`:V(`load`,t);break;case`video`:case`audio`:for(n=0;n<Xf.length;n++)V(Xf[n],t);break;case`source`:V(`error`,t);break;case`img`:case`image`:case`link`:V(`error`,t),V(`load`,t);break;case`details`:V(`toggle`,t);break;case`input`:V(`invalid`,t),_n(t,r.value,r.defaultValue,r.checked,r.defaultChecked,r.type,r.name,!0);break;case`select`:V(`invalid`,t);break;case`textarea`:V(`invalid`,t),xn(t,r.value,r.defaultValue,r.children)}n=r.children,typeof n!=`string`&&typeof n!=`number`&&typeof n!=`bigint`||t.textContent===``+n||!0===r.suppressHydrationWarning||dp(t.textContent,n)?(r.popover!=null&&(V(`beforetoggle`,t),V(`toggle`,t)),r.onScroll!=null&&V(`scroll`,t),r.onScrollEnd!=null&&V(`scrollend`,t),r.onClick!=null&&(t.onclick=An),t=!0):t=!1,t||fa(e,!0)}function ma(e){for(ca=e.return;ca;)switch(ca.tag){case 5:case 31:case 13:I=!1;return;case 27:case 3:I=!0;return;default:ca=ca.return}}function ha(e){if(e!==ca)return!1;if(!F)return ma(e),F=!0,!1;var t=e.tag,n;if((n=t!==3&&t!==27)&&((n=t===5)&&(n=e.type,n=n===`form`||n===`button`||Tp(e.type,e.memoizedProps)),n=!n),n&&la&&fa(e),ma(e),t===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));la=Cm(e)}else if(t===31){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));la=Cm(e)}else t===27?(t=la,Pp(e.type)?(e=Sm,Sm=null,la=e):la=t):la=ca?xm(e.stateNode.nextSibling):null;return!0}function ga(){la=ca=null,F=!1}function _a(){var e=ua;return e!==null&&(Sd===null?Sd=e:Sd.push.apply(Sd,e),ua=null),e}function va(e){ua===null?ua=[e]:ua.push(e)}var ya=ke(null),ba=null,xa=null;function Sa(e,t,n){je(ya,t._currentValue),t._currentValue=n}function Ca(e){e._currentValue=ya.current,Ae(ya)}function wa(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)===t?r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t):(e.childLanes|=t,r!==null&&(r.childLanes|=t)),e===n)break;e=e.return}}function Ta(e,t,n,r){var a=e.child;for(a!==null&&(a.return=e);a!==null;){var o=a.dependencies;if(o!==null){var s=a.child;o=o.firstContext;a:for(;o!==null;){var c=o;o=a;for(var l=0;l<t.length;l++)if(c.context===t[l]){o.lanes|=n,c=o.alternate,c!==null&&(c.lanes|=n),wa(o.return,n,e),r||(s=null);break a}o=c.next}}else if(a.tag===18){if(s=a.return,s===null)throw Error(i(341));s.lanes|=n,o=s.alternate,o!==null&&(o.lanes|=n),wa(s,n,e),s=null}else a.tag===13&&a.memoizedState!==null&&a.memoizedState.dehydrated===null?(a.lanes|=n,s=a.alternate,s!==null&&(s.lanes|=n),wa(a.return,n,e),s=a.child,s=s===null?null:s.sibling):s=a.child;if(s!==null)s.return=a;else for(s=a;s!==null;){if(s===e){s=null;break}if(a=s.sibling,a!==null){a.return=s.return,s=a;break}s=s.return}a=s}}function Ea(e,t,n,r){e=null;for(var a=t,o=!1;a!==null;){if(!o){if(a.flags&524288)o=!0;else if(a.flags&262144)break}if(a.tag===10){var s=a.alternate;if(s===null)throw Error(i(387));if(s=s.memoizedProps,s!==null){var c=a.type;$r(a.pendingProps.value,s.value)||(e===null?e=[c]:e.push(c))}}else if(a===Fe.current){if(s=a.alternate,s===null)throw Error(i(387));s.memoizedState.memoizedState!==a.memoizedState.memoizedState&&(e===null?e=[yh]:e.push(yh))}a=a.return}return e!==null&&Ta(t,e,n,r),t.flags|=262144,e!==null}function Da(e){for(e=e.firstContext;e!==null;){if(!$r(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function Oa(e){ba=e,xa=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function ka(e){return ja(ba,e)}function Aa(e,t){return ba===null&&Oa(e),ja(e,t)}function ja(e,t){var n=t._currentValue;if(t={context:t,memoizedValue:n,next:null},xa===null){if(e===null)throw Error(i(308));xa=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else xa=xa.next=t;return n}var Ma=typeof AbortController<`u`?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(t,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach(function(e){return e()})}},Na=t.unstable_scheduleCallback,Pa=t.unstable_NormalPriority,Fa={$$typeof:le,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Ia(){return{controller:new Ma,data:new Map,refCount:0}}function La(e){e.refCount--,e.refCount===0&&Na(Pa,function(){e.controller.abort()})}function Ra(e,t){if(e.pendingLanes&4194048){var n=e.transitionTypes;for(n===null&&(n=e.transitionTypes=[]),e=0;e<t.length;e++){var r=t[e];n.indexOf(r)===-1&&n.push(r)}}}var za=null;function Ba(e){var t=e.transitionTypes;return e.transitionTypes=null,t}var Va=null,Ha=0,Ua=0,Wa=null;function Ga(e,t){if(Va===null){var n=Va=[];Ha=0,Ua=Gf(),Wa={status:`pending`,value:void 0,then:function(e){n.push(e)}}}return Ha++,t.then(Ka,Ka),t}function Ka(){if(--Ha===0&&(za=null,Va!==null)){Wa!==null&&(Wa.status=`fulfilled`);var e=Va;Va=null,Ua=0,Wa=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function qa(e,t){var n=[],r={status:`pending`,value:null,reason:null,then:function(e){n.push(e)}};return e.then(function(){r.status=`fulfilled`,r.value=t;for(var e=0;e<n.length;e++)(0,n[e])(t)},function(e){for(r.status=`rejected`,r.reason=e,e=0;e<n.length;e++)(0,n[e])(void 0)}),r}var Ja=C.S;C.S=function(e,t){if(Td=$e(),typeof t==`object`&&t&&typeof t.then==`function`&&Ga(e,t),za!==null)for(var n=jf;n!==null;)Ra(n,za),n=n.next;if(n=e.types,n!==null){for(var r=jf;r!==null;)Ra(r,n),r=r.next;if(Ua!==0){r=za,r===null&&(r=za=[]);for(var i=0;i<n.length;i++){var a=n[i];r.indexOf(a)===-1&&r.push(a)}}}Ja!==null&&Ja(e,t)};var Ya=ke(null);function Xa(){var e=Ya.current;return e===null?cd.pooledCache:e}function Za(e,t){t===null?je(Ya,Ya.current):je(Ya,t.pool)}function Qa(){var e=Xa();return e===null?null:{parent:Fa._currentValue,pool:e}}var $a=Error(i(460)),eo=Error(i(474)),to=Error(i(542)),no={then:function(){}};function ro(e){return e=e.status,e===`fulfilled`||e===`rejected`}function io(e,t,n){switch(n=e[n],n===void 0?e.push(t):n!==t&&(t.then(An,An),t=n),t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,co(e),e===void 0&&!(`reason`in t)?Error(i(600)):e;default:if(typeof t.status==`string`)t.then(An,An);else{if(e=cd,e!==null&&100<e.shellSuspendCounter)throw Error(i(482));e=t,e.status=`pending`,e.then(function(e){if(t.status===`pending`){var n=t;n.status=`fulfilled`,n.value=e}},function(e){if(t.status===`pending`){var n=t;n.status=`rejected`,n.reason=e}})}switch(t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,co(e),e}throw oo=t,$a}}function ao(e){try{var t=e._init;return t(e._payload)}catch(e){throw typeof e==`object`&&e&&typeof e.then==`function`?(oo=e,$a):e}}var oo=null;function so(){if(oo===null)throw Error(i(459));var e=oo;return oo=null,e}function co(e){if(e===$a||e===to)throw Error(i(483))}var lo=null,uo=0;function fo(e){var t=uo;return uo+=1,lo===null&&(lo=[]),io(lo,e,t)}function po(e,t){t=t.props.ref,e.ref=t===void 0?null:t}function mo(e,t){throw t.$$typeof===x?Error(i(525)):(e=Object.prototype.toString.call(t),Error(i(31,e===`[object Object]`?`object with keys {`+Object.keys(t).join(`, `)+`}`:e)))}function ho(e){function t(t,n){if(e){var r=t.deletions;r===null?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;r!==null;)t(n,r),r=r.sibling;return null}function r(e){for(var t=new Map;e!==null;)e.key===null?t.set(e.index,e):t.set(e.key,e),e=e.sibling;return t}function a(e,t){return e=Ki(e,t),e.index=0,e.sibling=null,e}function o(t,n,r){return t.index=r,e?(r=t.alternate,r===null?(t.flags|=134217730,n):(r=r.index,r<n?(t.flags|=2,n):r)):(t.flags|=1048576,n)}function s(t){return e&&t.alternate===null&&(t.flags|=134217730),t}function c(e,t,n,r){return t===null||t.tag!==6?(t=Yi(n,e.mode,r),t.return=e,t):(t=a(t,n),t.return=e,t)}function l(e,t,n,r){var i=n.type;return i===ae?(e=d(e,t,n.props.children,r,n.key),po(e,n),e):t!==null&&(t.elementType===i||typeof i==`object`&&i&&i.$$typeof===me&&ao(i)===t.type)?(t=a(t,n.props),po(t,n),t.return=e,t):(t=O(n.type,n.key,n.props,null,e.mode,r),po(t,n),t.return=e,t)}function u(e,t,n,r){return t===null||t.tag!==4||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?(t=Zi(n,e.mode,r),t.return=e,t):(t=a(t,n.children||[]),t.return=e,t)}function d(e,t,n,r,i){return t===null||t.tag!==7?(t=Ji(n,e.mode,r,i),t.return=e,t):(t=a(t,n),t.return=e,t)}function f(e,t,n){if(typeof t==`string`&&t!==``||typeof t==`number`||typeof t==`bigint`)return t=Yi(``+t,e.mode,n),t.return=e,t;if(typeof t==`object`&&t){switch(t.$$typeof){case S:return n=O(t.type,t.key,t.props,null,e.mode,n),po(n,t),n.return=e,n;case ie:return t=Zi(t,e.mode,n),t.return=e,t;case me:return t=ao(t),f(e,t,n)}if(we(t)||xe(t))return t=Ji(t,e.mode,n,null),t.return=e,t;if(typeof t.then==`function`)return f(e,fo(t),n);if(t.$$typeof===le)return f(e,Aa(e,t),n);mo(e,t)}return null}function p(e,t,n,r){var i=t===null?null:t.key;if(typeof n==`string`&&n!==``||typeof n==`number`||typeof n==`bigint`)return i===null?c(e,t,``+n,r):null;if(typeof n==`object`&&n){switch(n.$$typeof){case S:return n.key===i?l(e,t,n,r):null;case ie:return n.key===i?u(e,t,n,r):null;case me:return n=ao(n),p(e,t,n,r)}if(we(n)||xe(n))return i===null?d(e,t,n,r,null):null;if(typeof n.then==`function`)return p(e,t,fo(n),r);if(n.$$typeof===le)return p(e,t,Aa(e,n),r);mo(e,n)}return null}function m(e,t,n,r,i){if(typeof r==`string`&&r!==``||typeof r==`number`||typeof r==`bigint`)return e=e.get(n)||null,c(t,e,``+r,i);if(typeof r==`object`&&r){switch(r.$$typeof){case S:return e=e.get(r.key===null?n:r.key)||null,l(t,e,r,i);case ie:return e=e.get(r.key===null?n:r.key)||null,u(t,e,r,i);case me:return r=ao(r),m(e,t,n,r,i)}if(we(r)||xe(r))return e=e.get(n)||null,d(t,e,r,i,null);if(typeof r.then==`function`)return m(e,t,n,fo(r),i);if(r.$$typeof===le)return m(e,t,n,Aa(t,r),i);mo(t,r)}return null}function h(i,a,s,c){for(var l=null,u=null,d=a,h=a=0,g=null;d!==null&&h<s.length;h++){d.index>h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),a=o(_,a,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),F&&M(i,h),l;if(d===null){for(;h<s.length;h++)d=f(i,s[h],c),d!==null&&(a=o(d,a,h),u===null?l=d:u.sibling=d,u=d);return F&&M(i,h),l}for(d=r(d);h<s.length;h++)g=m(d,i,h,s[h],c),g!==null&&(e&&(_=g.alternate,_!==null&&d.delete(_.key===null?h:_.key)),a=o(g,a,h),u===null?l=g:u.sibling=g,u=g);return e&&d.forEach(function(e){return t(i,e)}),F&&M(i,h),l}function g(a,s,c,l){if(c==null)throw Error(i(151));for(var u=null,d=null,h=s,g=s=0,_=null,v=c.next();h!==null&&!v.done;g++,v=c.next()){h.index>g?(_=h,h=null):_=h.sibling;var y=p(a,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(a,h),s=o(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(a,h),F&&M(a,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return F&&M(a,g),u}for(h=r(h);!v.done;g++,v=c.next())v=m(h,a,g,v.value,l),v!==null&&(e&&(_=v.alternate,_!==null&&h.delete(_.key===null?g:_.key)),s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(a,e)}),F&&M(a,g),u}function _(e,r,o,c){if(typeof o==`object`&&o&&o.type===ae&&o.key===null&&o.props.ref===void 0&&(o=o.props.children),typeof o==`object`&&o){switch(o.$$typeof){case S:a:{for(var l=o.key;r!==null;){if(r.key===l){if(l=o.type,l===ae){if(r.tag===7){n(e,r.sibling),c=a(r,o.props.children),po(c,o),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===me&&ao(l)===r.type){n(e,r.sibling),c=a(r,o.props),po(c,o),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}o.type===ae?(c=Ji(o.props.children,e.mode,c,o.key),po(c,o),c.return=e,e=c):(c=O(o.type,o.key,o.props,null,e.mode,c),po(c,o),c.return=e,e=c)}return s(e);case ie:a:{for(l=o.key;r!==null;){if(r.key===l){if(r.tag===4&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),c=a(r,o.children||[]),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}c=Zi(o,e.mode,c),c.return=e,e=c}return s(e);case me:return o=ao(o),_(e,r,o,c)}if(we(o))return h(e,r,o,c);if(xe(o)){if(l=xe(o),typeof l!=`function`)throw Error(i(150));return o=l.call(o),g(e,r,o,c)}if(typeof o.then==`function`)return _(e,r,fo(o),c);if(o.$$typeof===le)return _(e,r,Aa(e,o),c);mo(e,o)}return typeof o==`string`&&o!==``||typeof o==`number`||typeof o==`bigint`?(o=``+o,r!==null&&r.tag===6?(n(e,r.sibling),c=a(r,o),c.return=e,e=c):(n(e,r),c=Yi(o,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{uo=0;var i=_(e,t,n,r);return lo=null,i}catch(t){if(t===$a||t===to)throw t;var a=Wi(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var go=ho(!0),_o=ho(!1),vo=!1;function yo(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function bo(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function xo(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function So(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,R&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=Vi(e),Bi(e,null,n),t}return Li(e,r,t,n),Vi(e)}function Co(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Ot(e,n)}}function wo(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n}else e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var To=!1;function Eo(){if(To){var e=Wa;if(e!==null)throw e}}function Do(e,t,n,r){To=!1;var i=e.updateQueue;vo=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane&-536870913,p=f!==s.lane;if(p?(B&f)===f:(r&f)===f){f!==0&&f===Ua&&(To=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var m=e,h=s;f=t;var g=n;switch(h.tag){case 1:if(m=h.payload,typeof m==`function`){d=m.call(g,d,f);break a}d=m;break a;case 3:m.flags=m.flags&-65537|128;case 0:if(m=h.payload,f=typeof m==`function`?m.call(g,d,f):m,f==null)break a;d=re({},d,f);break a;case 2:vo=!0}}f=s.callback,f!==null&&(e.flags|=64,p&&(e.flags|=8192),p=i.callbacks,p===null?i.callbacks=[f]:p.push(f))}else p={lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;p=s,s=p.next,p.next=null,i.lastBaseUpdate=p,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),gd|=o,e.lanes=o,e.memoizedState=d}}function Oo(e,t){if(typeof e!=`function`)throw Error(i(191,e));e.call(t)}function ko(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;e<n.length;e++)Oo(n[e],t)}var Ao=ke(null),jo=ke(0);function Mo(e,t){e=md,je(jo,e),je(Ao,t),md=e|t.baseLanes}function No(){je(jo,md),je(Ao,Ao.current)}function Po(){md=jo.current,Ae(Ao),Ae(jo)}var Fo=ke(null),Io=null;function Lo(e){var t=e.alternate;je(Ho,Ho.current&1),je(Fo,e),Io===null&&(t===null||Ao.current!==null||t.memoizedState!==null)&&(Io=e)}function Ro(e){je(Ho,Ho.current),je(Fo,e),Io===null&&(Io=e)}function zo(e){e.tag===22?(je(Ho,Ho.current),je(Fo,e),Io===null&&(Io=e)):Bo()}function Bo(){je(Ho,Ho.current),je(Fo,Fo.current)}function Vo(e){Ae(Fo),Io===e&&(Io=null),Ae(Ho)}var Ho=ke(0);function Uo(e,t){je(Fo,Fo.current),je(Ho,t)}function Wo(e){Ae(Ho),Ae(Fo),Io===e&&(Io=null)}function Go(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||vm(n)||ym(n)))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==`independent`){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Ko=0,L=null,qo=null,Jo=null,Yo=!1,Xo=!1,Zo=!1,Qo=0,$o=0,es=null,ts=0;function ns(){throw Error(i(321))}function rs(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!$r(e[n],t[n]))return!1;return!0}function is(e,t,n,r,i,a){return Ko=a,L=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,C.H=e===null||e.memoizedState===null?xc:Sc,Zo=!1,a=n(r,i),Zo=!1,Xo&&(a=os(t,n,r,i)),as(e),a}function as(e){C.H=bc;var t=qo!==null&&qo.next!==null;if(Ko=0,Jo=qo=L=null,Yo=!1,$o=0,es=null,t)throw Error(i(300));e===null||zc||(e=e.dependencies,e!==null&&Da(e)&&(zc=!0))}function os(e,t,n,r){L=e;var a=0;do{if(Xo&&(es=null),$o=0,Xo=!1,25<=a)throw Error(i(301));if(a+=1,Jo=qo=null,e.updateQueue!=null){var o=e.updateQueue;o.lastEffect=null,o.events=null,o.stores=null,o.memoCache!=null&&(o.memoCache.index=0)}C.H=Cc,o=t(n,r)}while(Xo);return o}function ss(){var e=C.H,t=e.useState()[0];return t=typeof t.then==`function`?ms(t):t,e=e.useState()[0],(qo===null?null:qo.memoizedState)!==e&&(L.flags|=1024),t}function cs(){var e=Qo!==0;return Qo=0,e}function ls(e,t,n){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~n}function us(e){if(Yo){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}Yo=!1}Ko=0,Jo=qo=L=null,Xo=!1,$o=Qo=0,es=null}function ds(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Jo===null?L.memoizedState=Jo=e:Jo=Jo.next=e,Jo}function fs(){if(qo===null){var e=L.alternate;e=e===null?null:e.memoizedState}else e=qo.next;var t=Jo===null?L.memoizedState:Jo.next;if(t!==null)Jo=t,qo=e;else{if(e===null)throw L.alternate===null?Error(i(467)):Error(i(310));qo=e,e={memoizedState:qo.memoizedState,baseState:qo.baseState,baseQueue:qo.baseQueue,queue:qo.queue,next:null},Jo===null?L.memoizedState=Jo=e:Jo=Jo.next=e}return Jo}function ps(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function ms(e){var t=$o;return $o+=1,es===null&&(es=[]),e=io(es,e,t),t=L,(Jo===null?t.memoizedState:Jo.next)===null&&(t=t.alternate,C.H=t===null||t.memoizedState===null?xc:Sc),e}function hs(e){if(typeof e==`object`&&e){if(typeof e.then==`function`)return ms(e);if(e.$$typeof===ye)return;if(e.$$typeof===le)return ka(e)}throw Error(i(438,String(e)))}function gs(e){var t=null,n=L.updateQueue;if(n!==null&&(t=n.memoCache),t==null){var r=L.alternate;r!==null&&(r=r.updateQueue,r!==null&&(r=r.memoCache,r!=null&&(t={data:r.data.map(function(e){return e.slice()}),index:0})))}if(t??={data:[],index:0},n===null&&(n=ps(),L.updateQueue=n),n.memoCache=t,n=t.data[t.index],n===void 0)for(n=t.data[t.index]=Array(e),r=0;r<e;r++)n[r]=_e;return t.index++,n}function _s(e,t){return typeof t==`function`?t(e):t}function vs(e){return ys(fs(),qo,e)}function ys(e,t,n){var r=e.queue;if(r===null)throw Error(i(311));r.lastRenderedReducer=n;var a=e.baseQueue,o=r.pending;if(o!==null){if(a!==null){var s=a.next;a.next=o.next,o.next=s}t.baseQueue=a=o,r.pending=null}if(o=e.baseState,a===null)e.memoizedState=o;else{t=a.next;var c=s=null,l=null,u=t,d=!1;do{var f=u.lane&-536870913;if(f===u.lane?(Ko&f)===f:(B&f)===f){var p=u.revertLane;if(p===0)l!==null&&(l=l.next={lane:0,revertLane:0,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),f===Ua&&(d=!0);else if((Ko&p)===p){u=u.next,p===Ua&&(d=!0);continue}else f={lane:0,revertLane:u.revertLane,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=f,s=o):l=l.next=f,L.lanes|=p,gd|=p;f=u.action,Zo&&n(o,f),o=u.hasEagerState?u.eagerState:n(o,f)}else p={lane:f,revertLane:u.revertLane,gesture:u.gesture,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=p,s=o):l=l.next=p,L.lanes|=f,gd|=f;u=u.next}while(u!==null&&u!==t);if(l===null?s=o:l.next=c,!$r(o,e.memoizedState)&&(zc=!0,d&&(n=Wa,n!==null)))throw n;e.memoizedState=o,e.baseState=s,e.baseQueue=l,r.lastRenderedState=o}return a===null&&(r.lanes=0),[e.memoizedState,r.dispatch]}function bs(e){var t=fs(),n=t.queue;if(n===null)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,o=t.memoizedState;if(a!==null){n.pending=null;var s=a=a.next;do o=e(o,s.action),s=s.next;while(s!==a);$r(o,t.memoizedState)||(zc=!0),t.memoizedState=o,t.baseQueue===null&&(t.baseState=o),n.lastRenderedState=o}return[o,r]}function xs(e,t,n){var r=L,a=fs(),o=F;if(o){if(n===void 0)throw Error(i(407));n=n()}else n=t();var s=!$r((qo||a).memoizedState,n);if(s&&(a.memoizedState=n,zc=!0),a=a.queue,Ks(ws.bind(null,r,a,e),[e]),e=a.getSnapshot!==t||s||Jo!==null&&!!(Jo.memoizedState.tag&1),Vs(e?9:8,{destroy:void 0},Cs.bind(null,r,a,n,t),null),e){if(r.flags|=2048,cd===null)throw Error(i(349));o||Ko&127||Ss(r,t,n)}return n}function Ss(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=L.updateQueue,t===null?(t=ps(),L.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function Cs(e,t,n,r){t.value=n,t.getSnapshot=r,Ts(t)&&Es(e)}function ws(e,t,n){return n(function(){Ts(t)&&Es(e)})}function Ts(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!$r(e,n)}catch{return!0}}function Es(e){var t=zi(e,2);t!==null&&Wd(t,e,2)}function Ds(e){var t=ds();if(typeof e==`function`){var n=e;if(e=n(),Zo){ut(!0);try{n()}finally{ut(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:_s,lastRenderedState:e},t}function Os(e,t,n,r){return e.baseState=n,ys(e,qo,typeof r==`function`?r:_s)}function ks(e,t,n,r,a){if(_c(e))throw Error(i(485));if(e=t.action,e!==null){var o={payload:a,action:e,next:null,isTransition:!0,status:`pending`,value:null,reason:null,listeners:[],then:function(e){o.listeners.push(e)}};C.T===null?o.isTransition=!1:n(!0),r(o),n=t.pending,n===null?(o.next=t.pending=o,As(t,o)):(o.next=n.next,t.pending=n.next=o)}}function As(e,t){var n=t.action,r=t.payload,i=e.state;if(t.isTransition){var a=C.T,o={};o.types=a===null?null:a.types,C.T=o;try{var s=n(i,r),c=C.S;c!==null&&c(o,s),js(e,t,s)}catch(n){Ns(e,t,n)}finally{a!==null&&o.types!==null&&(a.types=o.types),C.T=a}}else try{a=n(i,r),js(e,t,a)}catch(n){Ns(e,t,n)}}function js(e,t,n){typeof n==`object`&&n&&typeof n.then==`function`?n.then(function(n){Ms(e,t,n)},function(n){return Ns(e,t,n)}):Ms(e,t,n)}function Ms(e,t,n){t.status=`fulfilled`,t.value=n,Ps(t),e.state=n,t=e.pending,t!==null&&(n=t.next,n===t?e.pending=null:(n=n.next,t.next=n,As(e,n)))}function Ns(e,t,n){var r=e.pending;if(e.pending=null,r!==null){r=r.next;do t.status=`rejected`,t.reason=n,Ps(t),t=t.next;while(t!==r)}e.action=null}function Ps(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function Fs(e,t){return t}function Is(e,t){if(F){var n=cd.formState;if(n!==null){a:{var r=L;if(F){if(la){b:{for(var i=la,a=I;i.nodeType!==8;)if(!a||(i=xm(i.nextSibling),i===null)){i=null;break b}a=i.data,i=a===`F!`||a===`F`?i:null}if(i){la=xm(i.nextSibling),r=i.data===`F!`;break a}}fa(r)}r=!1}r&&(t=n[0])}}return n=ds(),n.memoizedState=n.baseState=t,r={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Fs,lastRenderedState:t},n.queue=r,n=mc.bind(null,L,r),r.dispatch=n,r=Ds(!1),a=gc.bind(null,L,!1,r.queue),r=ds(),i={state:t,dispatch:null,action:e,pending:null},r.queue=i,n=ks.bind(null,L,i,a,n),i.dispatch=n,r.memoizedState=e,[t,n,!1]}function Ls(e){return Rs(fs(),qo,e)}function Rs(e,t,n){if(t=ys(e,t,Fs)[0],e=vs(_s)[0],typeof t==`object`&&t&&typeof t.then==`function`)try{var r=ms(t)}catch(e){throw e===$a?to:e}else r=t;t=fs();var i=t.queue,a=i.dispatch;return n!==t.memoizedState&&(L.flags|=2048,Vs(9,{destroy:void 0},zs.bind(null,i,n),null)),[r,a,e]}function zs(e,t){e.action=t}function Bs(e){var t=fs(),n=qo;if(n!==null)return Rs(t,n,e);fs(),t=t.memoizedState,n=fs();var r=n.queue.dispatch;return n.memoizedState=e,[t,r,!1]}function Vs(e,t,n,r){return e={tag:e,create:n,deps:r,inst:t,next:null},t=L.updateQueue,t===null&&(t=ps(),L.updateQueue=t),n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function Hs(){return fs().memoizedState}function Us(e,t,n,r){var i=ds();L.flags|=e,i.memoizedState=Vs(1|t,{destroy:void 0},n,r===void 0?null:r)}function Ws(e,t,n,r){var i=fs();r=r===void 0?null:r;var a=i.memoizedState.inst;qo!==null&&r!==null&&rs(r,qo.memoizedState.deps)?i.memoizedState=Vs(t,a,n,r):(L.flags|=e,i.memoizedState=Vs(1|t,a,n,r))}function Gs(e,t){Us(8390656,8,e,t)}function Ks(e,t){Ws(2048,8,e,t)}function qs(e){L.flags|=4;var t=L.updateQueue;if(t===null)t=ps(),L.updateQueue=t,t.events=[e];else{var n=t.events;n===null?t.events=[e]:n.push(e)}}function Js(e){var t=fs().memoizedState;return qs({ref:t,nextImpl:e}),function(){if(R&2)throw Error(i(440));return t.impl.apply(void 0,arguments)}}function Ys(e,t){return Ws(4,2,e,t)}function Xs(e,t){return Ws(4,4,e,t)}function Zs(e,t){if(typeof t==`function`){e=e();var n=t(e);return function(){typeof n==`function`?n():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function Qs(e,t,n){n=n==null?null:n.concat([e]),Ws(4,4,Zs.bind(null,t,e),n)}function $s(){}function ec(e,t){var n=fs();t=t===void 0?null:t;var r=n.memoizedState;return t!==null&&rs(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function tc(e,t){var n=fs();t=t===void 0?null:t;var r=n.memoizedState;if(t!==null&&rs(t,r[1]))return r[0];if(r=e(),Zo){ut(!0);try{e()}finally{ut(!1)}}return n.memoizedState=[r,t],r}function nc(e,t,n){return n===void 0||Ko&1073741824&&!(B&261930)?e.memoizedState=t:(e.memoizedState=n,e=Hd(),L.lanes|=e,gd|=e,n)}function rc(e,t,n,r){return $r(n,t)?n:Ao.current===null?!(Ko&106)||Ko&1073741824&&!(B&261930)?(zc=!0,e.memoizedState=n):(e=Hd(),L.lanes|=e,gd|=e,t):(e=nc(e,n,r),$r(e,t)||(zc=!0),e)}function ic(e,t,n,r,i){var a=Te.p;Te.p=a!==0&&8>a?a:8;var o=C.T,s={};s.types=o===null?null:o.types,C.T=s,gc(e,!1,t,n);try{var c=i(),l=C.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?hc(e,t,qa(c,r),Vd(e)):hc(e,t,r,Vd(e))}catch(n){hc(e,t,{then:function(){},status:`rejected`,reason:n},Vd())}finally{Te.p=a,o!==null&&s.types!==null&&(o.types=s.types),C.T=o}}function ac(){}function oc(e,t,n,r){if(e.tag!==5)throw Error(i(476));var a=sc(e).queue;ic(e,a,t,Ee,n===null?ac:function(){return cc(e),n(r)})}function sc(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:Ee,baseState:Ee,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:_s,lastRenderedState:Ee},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:_s,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function cc(e){var t=sc(e);t.next===null&&(t=e.alternate.memoizedState),hc(e,t.next.queue,{},Vd())}function lc(){return ka(yh)}function uc(){return fs().memoizedState}function dc(){return fs().memoizedState}function fc(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=Vd();e=xo(n);var r=So(t,e,n);r!==null&&(Wd(r,t,n),Co(r,t,n)),t={cache:Ia()},e.payload=t;return}t=t.return}}function pc(e,t,n){var r=Vd();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},_c(e)?vc(t,n):(n=Ri(e,t,n,r),n!==null&&(Wd(n,e,r),yc(n,t,r)))}function mc(e,t,n){hc(e,t,n,Vd())}function hc(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(_c(e))vc(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,$r(s,o))return Li(e,t,i,0),cd===null&&Ii(),!1}catch{}if(n=Ri(e,t,i,r),n!==null)return Wd(n,e,r),yc(n,t,r),!0}return!1}function gc(e,t,n,r){if(r={lane:2,revertLane:Gf(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},_c(e)){if(t)throw Error(i(479))}else t=Ri(e,n,r,2),t!==null&&Wd(t,e,2)}function _c(e){var t=e.alternate;return e===L||t!==null&&t===L}function vc(e,t){Xo=Yo=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function yc(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Ot(e,n)}}var bc={readContext:ka,use:hs,useCallback:ns,useContext:ns,useEffect:ns,useImperativeHandle:ns,useLayoutEffect:ns,useInsertionEffect:ns,useMemo:ns,useReducer:ns,useRef:ns,useState:ns,useDebugValue:ns,useDeferredValue:ns,useTransition:ns,useSyncExternalStore:ns,useId:ns,useHostTransitionStatus:ns,useFormState:ns,useActionState:ns,useOptimistic:ns,useMemoCache:ns,useCacheRefresh:ns,useEffectEvent:ns},xc={readContext:ka,use:hs,useCallback:function(e,t){return ds().memoizedState=[e,t===void 0?null:t],e},useContext:ka,useEffect:Gs,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),Us(4194308,4,Zs.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Us(4194308,4,e,t)},useInsertionEffect:function(e,t){Us(4,2,e,t)},useMemo:function(e,t){var n=ds();t=t===void 0?null:t;var r=e();if(Zo){ut(!0);try{e()}finally{ut(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=ds();if(n!==void 0){var i=n(t);if(Zo){ut(!0);try{n(t)}finally{ut(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=pc.bind(null,L,e),[r.memoizedState,e]},useRef:function(e){var t=ds();return e={current:e},t.memoizedState=e},useState:function(e){e=Ds(e);var t=e.queue,n=mc.bind(null,L,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:$s,useDeferredValue:function(e,t){return nc(ds(),e,t)},useTransition:function(){var e=Ds(!1);return e=ic.bind(null,L,e.queue,!0,!1),ds().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=L,a=ds();if(F){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),cd===null)throw Error(i(349));B&127||Ss(r,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,Gs(ws.bind(null,r,o,e),[e]),r.flags|=2048,Vs(9,{destroy:void 0},Cs.bind(null,r,o,n,t),null),n},useId:function(){var e=ds(),t=cd.identifierPrefix;if(F){var n=aa,r=ia;n=(r&~(1<<32-dt(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=Qo++,0<n&&(t+=`H`+n.toString(32)),t+=`_`}else n=ts++,t=`_`+t+`r_`+n.toString(32)+`_`;return e.memoizedState=t},useHostTransitionStatus:lc,useFormState:Is,useActionState:Is,useOptimistic:function(e){var t=ds();t.memoizedState=t.baseState=e;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=n,t=gc.bind(null,L,!0,n),n.dispatch=t,[e,t]},useMemoCache:gs,useCacheRefresh:function(){return ds().memoizedState=fc.bind(null,L)},useEffectEvent:function(e){var t=ds(),n={impl:e};return t.memoizedState=n,function(){if(R&2)throw Error(i(440));return n.impl.apply(void 0,arguments)}}},Sc={readContext:ka,use:hs,useCallback:ec,useContext:ka,useEffect:Ks,useImperativeHandle:Qs,useInsertionEffect:Ys,useLayoutEffect:Xs,useMemo:tc,useReducer:vs,useRef:Hs,useState:function(){return vs(_s)},useDebugValue:$s,useDeferredValue:function(e,t){return rc(fs(),qo.memoizedState,e,t)},useTransition:function(){var e=vs(_s)[0],t=fs().memoizedState;return[typeof e==`boolean`?e:ms(e),t]},useSyncExternalStore:xs,useId:uc,useHostTransitionStatus:lc,useFormState:Ls,useActionState:Ls,useOptimistic:function(e,t){return Os(fs(),qo,e,t)},useMemoCache:gs,useCacheRefresh:dc,useEffectEvent:Js},Cc={readContext:ka,use:hs,useCallback:ec,useContext:ka,useEffect:Ks,useImperativeHandle:Qs,useInsertionEffect:Ys,useLayoutEffect:Xs,useMemo:tc,useReducer:bs,useRef:Hs,useState:function(){return bs(_s)},useDebugValue:$s,useDeferredValue:function(e,t){var n=fs();return qo===null?nc(n,e,t):rc(n,qo.memoizedState,e,t)},useTransition:function(){var e=bs(_s)[0],t=fs().memoizedState;return[typeof e==`boolean`?e:ms(e),t]},useSyncExternalStore:xs,useId:uc,useHostTransitionStatus:lc,useFormState:Bs,useActionState:Bs,useOptimistic:function(e,t){var n=fs();return qo===null?(n.baseState=e,[e,n.queue.dispatch]):Os(n,qo,e,t)},useMemoCache:gs,useCacheRefresh:dc,useEffectEvent:Js};function wc(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:re({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Tc={enqueueSetState:function(e,t,n){e=e._reactInternals;var r=Vd(),i=xo(r);i.payload=t,n!=null&&(i.callback=n),t=So(e,i,r),t!==null&&(Wd(t,e,r),Co(t,e,r))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=Vd(),i=xo(r);i.tag=1,i.payload=t,n!=null&&(i.callback=n),t=So(e,i,r),t!==null&&(Wd(t,e,r),Co(t,e,r))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=Vd(),r=xo(n);r.tag=2,t!=null&&(r.callback=t),t=So(e,r,n),t!==null&&(Wd(t,e,n),Co(t,e,n))}};function Ec(e,t,n,r,i,a,o){return e=e.stateNode,typeof e.shouldComponentUpdate==`function`?e.shouldComponentUpdate(r,a,o):t.prototype&&t.prototype.isPureReactComponent?!ei(n,r)||!ei(i,a):!0}function Dc(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps==`function`&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps==`function`&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&Tc.enqueueReplaceState(t,t.state,null)}function Oc(e,t){var n=t;if(`ref`in t)for(var r in n={},t)r!==`ref`&&(n[r]=t[r]);if(e=e.defaultProps)for(var i in n===t&&(n=re({},n)),e)n[i]===void 0&&(n[i]=e[i]);return n}function kc(e){Mi(e)}function Ac(e){console.error(e)}function jc(e){Mi(e)}function Mc(e,t){try{var n=e.onUncaughtError;n(t.value,{componentStack:t.stack})}catch(e){setTimeout(function(){throw e})}}function Nc(e,t,n){try{var r=e.onCaughtError;r(n.value,{componentStack:n.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(e){setTimeout(function(){throw e})}}function Pc(e,t,n){return n=xo(n),n.tag=3,n.payload={element:null},n.callback=function(){Mc(e,t)},n}function Fc(e){return e=xo(e),e.tag=3,e}function Ic(e,t,n,r){var i=n.type.getDerivedStateFromError;if(typeof i==`function`){var a=r.value;e.payload=function(){return i(a)},e.callback=function(){Nc(t,n,r)}}var o=n.stateNode;o!==null&&typeof o.componentDidCatch==`function`&&(e.callback=function(){Nc(t,n,r),typeof i!=`function`&&(Od===null?Od=new Set([this]):Od.add(this));var e=r.stack;this.componentDidCatch(r.value,{componentStack:e===null?``:e})})}function Lc(e,t,n,r,a){if(n.flags|=32768,typeof r==`object`&&r&&typeof r.then==`function`){if(t=n.alternate,t!==null&&Ea(t,n,a,!0),n=Fo.current,n!==null){switch(n.tag){case 31:case 13:case 19:return Io===null?nf():n.alternate===null&&hd===0&&(hd=3),n.flags&=-257,n.flags|=65536,n.lanes=a,r===no?n.flags|=16384:(t=n.updateQueue,t===null?n.updateQueue=new Set([r]):t.add(r),Tf(e,r,a)),!1;case 22:return n.flags|=65536,r===no?n.flags|=16384:(t=n.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([r])},n.updateQueue=t):(n=t.retryQueue,n===null?t.retryQueue=new Set([r]):n.add(r)),Tf(e,r,a)),!1}throw Error(i(435,n.tag))}return Tf(e,r,a),nf(),!1}if(F)return t=Fo.current,t===null?(r!==da&&(t=Error(i(423),{cause:r}),va(A(t,n))),e=e.current.alternate,e.flags|=65536,a&=-a,e.lanes|=a,r=A(r,n),a=Pc(e.stateNode,r,a),wo(e,a),hd!==4&&(hd=2)):(!(t.flags&65536)&&(t.flags|=256),t.flags|=65536,t.lanes=a,r!==da&&(e=Error(i(422),{cause:r}),va(A(e,n)))),!1;var o=Error(i(520),{cause:r});if(o=A(o,n),xd===null?xd=[o]:xd.push(o),hd!==4&&(hd=2),t===null)return!0;r=A(r,n),n=t;do{switch(n.tag){case 3:return n.flags|=65536,e=a&-a,n.lanes|=e,e=Pc(n.stateNode,r,e),wo(n,e),!1;case 1:if(t=n.type,o=n.stateNode,!(n.flags&128)&&(typeof t.getDerivedStateFromError==`function`||o!==null&&typeof o.componentDidCatch==`function`&&(Od===null||!Od.has(o))))return n.flags|=65536,a&=-a,n.lanes|=a,a=Fc(a),Ic(a,e,n,r),wo(n,a),!1;break;case 22:if(n.memoizedState!==null)return n.flags|=65536,!1}n=n.return}while(n!==null);return!1}var Rc=Error(i(461)),zc=!1;function Bc(e,t,n,r){t.child=e===null?_o(t,null,n,r):go(t,e.child,n,r)}function Vc(e,t,n,r,i){n=n.render;var a=t.ref;if(`ref`in r){var o={};for(var s in r)s!==`ref`&&(o[s]=r[s])}else o=r;return Oa(t),r=is(e,t,n,o,a,i),s=cs(),e!==null&&!zc?(ls(e,t,i),hl(e,t,i)):(F&&s&&oa(t),t.flags|=1,Bc(e,t,r,i),t.child)}function Hc(e,t,n,r,i){if(e===null){var a=n.type;return typeof a==`function`&&!Gi(a)&&a.defaultProps===void 0&&n.compare===null?(t.tag=15,t.type=a,Uc(e,t,a,r,i)):(e=O(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,!gl(e,i)){var o=a.memoizedProps;if(n=n.compare,n=n===null?ei:n,n(o,r)&&e.ref===t.ref)return hl(e,t,i)}return t.flags|=1,e=Ki(a,r),e.ref=t.ref,e.return=t,t.child=e}function Uc(e,t,n,r,i){if(e!==null){var a=e.memoizedProps;if(ei(a,r)&&e.ref===t.ref){if(zc=!1,t.pendingProps=r=a,gl(e,i))e.flags&131072&&(zc=!0);else return t.lanes=e.lanes,hl(e,t,i)}}return Zc(e,t,n,r,i)}function Wc(e,t,n,r){var i=r.children,a=e===null?null:e.memoizedState;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),r.mode===`hidden`){if(t.flags&128){if(a=a===null?n:a.baseLanes|n,e!==null){for(r=t.child=e.child,i=0;r!==null;)i=i|r.lanes|r.childLanes,r=r.sibling;r=i&~a}else r=0,t.child=null;return Kc(e,t,a,n,r)}if(n&536870912)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&Za(t,a===null?null:a.cachePool),a===null?No():Mo(t,a),zo(t);else return r=t.lanes=536870912,Kc(e,t,a===null?n:a.baseLanes|n,n,r)}else a===null?(e!==null&&Za(t,null),No(),Bo()):(Za(t,a.cachePool),Mo(t,a),Bo(),t.memoizedState=null);return Bc(e,t,i,n),t.child}function Gc(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function Kc(e,t,n,r,i){var a=Xa();return a=a===null?null:{parent:Fa._currentValue,pool:a},t.memoizedState={baseLanes:n,cachePool:a},e!==null&&Za(t,null),No(),zo(t),e!==null&&Ea(e,t,r,!0),t.childLanes=i,null}function qc(e,t){return t=ol({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function Jc(e,t,n){return go(t,e.child,null,n),e=qc(t,t.pendingProps),e.flags|=2,Vo(t),t.memoizedState=null,e}function Yc(e,t,n){var r=t.pendingProps,a=!!(t.flags&128);if(t.flags&=-129,e===null){if(F){if(r.mode===`hidden`)return e=qc(t,r),t.lanes=536870912,e.memoizedState={baseLanes:0,cachePool:null},Gc(null,e);if(Ro(t),(e=la)?(e=_m(e,I),e=e!==null&&e.data===`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:ra===null?null:{id:ia,overflow:aa},retryLane:536870912,hydrationErrors:null},n=Xi(e),n.return=t,t.child=n,ca=t,la=null)):e=null,e===null)throw fa(t);return t.lanes=536870912,null}return qc(t,r)}var o=e.memoizedState;if(o!==null){var s=o.dehydrated;if(Ro(t),a){if(t.flags&256)t.flags&=-257,t=Jc(e,t,n);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(i(558))}else if(zc||Ea(e,t,n,!1),a=(n&e.childLanes)!==0,zc||a){if(Ao.current===null){if(r=cd,r!==null&&(s=kt(r,n),s!==0&&s!==o.retryLane))throw o.retryLane=s,zi(e,s),Wd(r,e,s),Rc;nf()}t=Jc(e,t,n)}else e=o.treeContext,la=xm(s.nextSibling),ca=t,F=!0,ua=null,I=!1,e!==null&&P(t,e),t=qc(t,r),t.flags|=134221824;return t}return e=Ki(e.child,{mode:r.mode,children:r.children}),e.ref=t.ref,t.child=e,e.return=t,e}function Xc(e,t){var n=t.ref;if(n===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof n!=`function`&&typeof n!=`object`)throw Error(i(284));(e===null||e.ref!==n)&&(t.flags|=4194816)}}function Zc(e,t,n,r,i){return Oa(t),n=is(e,t,n,r,void 0,i),r=cs(),e!==null&&!zc?(ls(e,t,i),hl(e,t,i)):(F&&r&&oa(t),t.flags|=1,Bc(e,t,n,i),t.child)}function Qc(e,t,n,r,i,a){return Oa(t),t.updateQueue=null,n=os(t,r,n,i),as(e),r=cs(),e!==null&&!zc?(ls(e,t,a),hl(e,t,a)):(F&&r&&oa(t),t.flags|=1,Bc(e,t,n,a),t.child)}function $c(e,t,n,r,i){if(Oa(t),t.stateNode===null){var a=Hi,o=n.contextType;typeof o==`object`&&o&&(a=ka(o)),a=new n(r,a),t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,a.updater=Tc,t.stateNode=a,a._reactInternals=t,a=t.stateNode,a.props=r,a.state=t.memoizedState,a.refs={},yo(t),o=n.contextType,a.context=typeof o==`object`&&o?ka(o):Hi,a.state=t.memoizedState,o=n.getDerivedStateFromProps,typeof o==`function`&&(wc(t,n,o,r),a.state=t.memoizedState),typeof n.getDerivedStateFromProps==`function`||typeof a.getSnapshotBeforeUpdate==`function`||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(o=a.state,typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount(),o!==a.state&&Tc.enqueueReplaceState(a,a.state,null),Do(t,r,a,i),Eo(),a.state=t.memoizedState),typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!0}else if(e===null){a=t.stateNode;var s=t.memoizedProps,c=Oc(n,s);a.props=c;var l=a.context,u=n.contextType;o=Hi,typeof u==`object`&&u&&(o=ka(u));var d=n.getDerivedStateFromProps;u=typeof d==`function`||typeof a.getSnapshotBeforeUpdate==`function`,s=t.pendingProps!==s,u||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(s||l!==o)&&Dc(t,a,r,o),vo=!1;var f=t.memoizedState;a.state=f,Do(t,r,a,i),Eo(),l=t.memoizedState,s||f!==l||vo?(typeof d==`function`&&(wc(t,n,d,r),l=t.memoizedState),(c=vo||Ec(t,n,c,r,f,l,o))?(u||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount==`function`&&(t.flags|=4194308)):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),a.props=r,a.state=l,a.context=o,r=c):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!1)}else{a=t.stateNode,bo(e,t),o=t.memoizedProps,u=Oc(n,o),a.props=u,d=t.pendingProps,f=a.context,l=n.contextType,c=Hi,typeof l==`object`&&l&&(c=ka(l)),s=n.getDerivedStateFromProps,(l=typeof s==`function`||typeof a.getSnapshotBeforeUpdate==`function`)||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(o!==d||f!==c)&&Dc(t,a,r,c),vo=!1,f=t.memoizedState,a.state=f,Do(t,r,a,i),Eo();var p=t.memoizedState;o!==d||f!==p||vo||e!==null&&e.dependencies!==null&&Da(e.dependencies)?(typeof s==`function`&&(wc(t,n,s,r),p=t.memoizedState),(u=vo||Ec(t,n,u,r,f,p,c)||e!==null&&e.dependencies!==null&&Da(e.dependencies))?(l||typeof a.UNSAFE_componentWillUpdate!=`function`&&typeof a.componentWillUpdate!=`function`||(typeof a.componentWillUpdate==`function`&&a.componentWillUpdate(r,p,c),typeof a.UNSAFE_componentWillUpdate==`function`&&a.UNSAFE_componentWillUpdate(r,p,c)),typeof a.componentDidUpdate==`function`&&(t.flags|=4),typeof a.getSnapshotBeforeUpdate==`function`&&(t.flags|=1024)):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=p),a.props=r,a.state=p,a.context=c,r=u):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return a=r,Xc(e,t),r=!!(t.flags&128),a||r?(a=t.stateNode,n=r&&typeof n.getDerivedStateFromError!=`function`?null:a.render(),t.flags|=1,e!==null&&r?(t.child=go(t,e.child,null,i),t.child=go(t,null,n,i)):Bc(e,t,n,i),t.memoizedState=a.state,e=t.child):e=hl(e,t,i),e}function el(e,t,n,r){return ga(),t.flags|=256,Bc(e,t,n,r),t.child}var tl={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function nl(e){return{baseLanes:e,cachePool:Qa()}}function rl(e,t,n){return e=e===null?0:e.childLanes&~n,t&&(e|=yd),e}function il(e,t,n){var r=t.pendingProps,i=!1,a=!!(t.flags&128),o;if((o=a)||(o=e!==null&&e.memoizedState===null?!1:!!(Ho.current&2)),o&&(i=!0,t.flags&=-129),o=!!(t.flags&32),t.flags&=-33,e===null){if(F){if(i?Lo(t):Bo(),(e=la)?(e=_m(e,I),e=e!==null&&e.data!==`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:ra===null?null:{id:ia,overflow:aa},retryLane:536870912,hydrationErrors:null},n=Xi(e),n.return=t,t.child=n,ca=t,la=null)):e=null,e===null)throw fa(t);return t.lanes=ym(e)?32:536870912,null}return a=r.children,r=r.fallback,i?(Bo(),i=t.mode,a=ol({mode:`hidden`,children:a},i),r=Ji(r,i,n,null),a.return=t,r.return=t,a.sibling=r,t.child=a,r=t.child,r.memoizedState=nl(n),r.childLanes=rl(e,o,n),t.memoizedState=tl,Gc(null,r)):(Lo(t),al(t,a))}var s=e.memoizedState;if(s!==null){var c=s.dehydrated;if(c!==null)return cl(e,t,a,o,r,c,s,n)}return i?(Bo(),i=r.fallback,a=t.mode,s=e.child,c=s.sibling,r=Ki(s,{mode:`hidden`,children:r.children}),r.subtreeFlags=s.subtreeFlags&1206910976,c===null?(i=Ji(i,a,n,null),i.flags|=2):i=Ki(c,i),i.return=t,r.return=t,r.sibling=i,t.child=r,Gc(null,r),r=t.child,i=e.child.memoizedState,i===null?i=nl(n):(a=i.cachePool,a===null?a=Qa():(s=Fa._currentValue,a=a.parent===s?a:{parent:s,pool:s}),i={baseLanes:i.baseLanes|n,cachePool:a}),r.memoizedState=i,r.childLanes=rl(e,o,n),t.memoizedState=tl,Gc(e.child,r)):(Lo(t),n=e.child,e=n.sibling,n=Ki(n,{mode:`visible`,children:r.children}),n.return=t,n.sibling=null,e!==null&&(o=t.deletions,o===null?(t.deletions=[e],t.flags|=16):o.push(e)),t.child=n,t.memoizedState=null,n)}function al(e,t){return t=ol({mode:`visible`,children:t},e.mode),t.return=e,e.child=t}function ol(e,t){return e=Wi(22,e,null,t),e.lanes=0,e}function sl(e,t,n){return go(t,e.child,null,n),e=al(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function cl(e,t,n,r,a,o,s,c){if(n)return t.flags&256?(Lo(t),t.flags&=-257,sl(e,t,c)):t.memoizedState===null?(Bo(),o=a.fallback,s=t.mode,a=ol({mode:`visible`,children:a.children},s),o=Ji(o,s,c,null),o.flags|=2,a.return=t,o.return=t,a.sibling=o,t.child=a,go(t,e.child,null,c),a=t.child,a.memoizedState=nl(c),a.childLanes=rl(e,r,c),t.memoizedState=tl,Gc(null,a)):(Bo(),t.child=e.child,t.flags|=128,null);if(Lo(t),ym(o)){if(r=o.nextSibling&&o.nextSibling.dataset,r)var l=r.dgst;return r=l,r!==``&&(a=Error(i(419)),a.stack=``,a.digest=r,va({value:a,source:null,stack:null})),sl(e,t,c)}if(zc||Ea(e,t,c,!1),r=(c&e.childLanes)!==0,zc||r){if(Ao.current!==null)return sl(e,t,c);if(r=cd,r!==null&&(a=kt(r,c),a!==0&&a!==s.retryLane))throw s.retryLane=a,zi(e,a),Wd(r,e,a),Rc;return vm(o)||nf(),sl(e,t,c)}return vm(o)?(t.flags|=192,t.child=e.child,null):(e=s.treeContext,la=xm(o.nextSibling),ca=t,F=!0,ua=null,I=!1,e!==null&&P(t,e),t=al(t,a.children),t.flags|=134221824,t)}function ll(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),wa(e.return,t,n)}function ul(e){for(var t=null;e!==null;){var n=e.alternate;n!==null&&Go(n)===null&&(t=e),e=e.sibling}return t}function dl(e,t,n,r,i,a){var o=e.memoizedState;o===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i,treeForkCount:a}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=i,o.treeForkCount=a)}function fl(e){var t=e.child;for(e.child=null;t!==null;){var n=t.sibling;t.sibling=e.child,e.child=t,t=n}}function pl(e,t,n){var r=t.pendingProps,i=r.revealOrder,a=r.tail;r=r.children;var o=Ho.current;if(t.flags&128)return Uo(t,o),null;var s=!!(o&2);if(s?(o=o&1|2,t.flags|=128):o&=1,Uo(t,o),i===`backwards`&&e!==null?(fl(e),Bc(e,t,r,n),fl(e)):Bc(e,t,r,n),r=F?ea:0,!s&&e!==null&&e.flags&128)a:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&ll(e,n,t);else if(e.tag===19)ll(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break a;for(;e.sibling===null;){if(e.return===null||e.return===t)break a;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(i){case`backwards`:n=ul(t.child),n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null,fl(t)),dl(t,!0,i,null,a,r);break;case`unstable_legacy-backwards`:for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&Go(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}dl(t,!0,n,null,a,r);break;case`together`:dl(t,!1,null,null,void 0,r);break;case`independent`:t.memoizedState=null;break;default:n=ul(t.child),n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),dl(t,!1,i,n,a,r)}return t.child}function ml(e,t,n){var r=t.pendingProps;return Sa(t,t.type,r.value),Bc(e,t,r.children,n),t.child}function hl(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),gd|=t.lanes,(n&t.childLanes)===0){if(e!==null){if(Ea(e,t,n,!1),(n&t.childLanes)===0)return null}else return null}if(e!==null&&t.child!==e.child)throw Error(i(153));if(t.child!==null){for(e=t.child,n=Ki(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Ki(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function gl(e,t){return(e.lanes&t)!==0||(e=e.dependencies,!!(e!==null&&Da(e)))}function _l(e,t,n){switch(t.tag){case 3:Ie(t,t.stateNode.containerInfo),Sa(t,Fa,e.memoizedState.cache),ga();break;case 27:case 5:Re(t);break;case 4:Ie(t,t.stateNode.containerInfo);break;case 10:Sa(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,Ro(t),null;break;case 13:var r=t.memoizedState;if(r!==null){if(r.dehydrated!==null)return Lo(t),t.flags|=128,null;r=Ea(e,t,n,!1);var i=t.child.childLanes;return r||(n&i)!==0?il(e,t,n):(Lo(t),e=hl(e,t,n),e===null?null:e.sibling)}Lo(t);break;case 19:if(t.flags&128)return pl(e,t,n);if(i=!!(e.flags&128),r=(n&t.childLanes)!==0,r||=(Ea(e,t,n,!1),(n&t.childLanes)!==0),i){if(r)return pl(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),Uo(t,Ho.current),r)break;return null;case 22:return t.lanes=0,Wc(e,t,n,t.pendingProps);case 24:Sa(t,Fa,e.memoizedState.cache)}return hl(e,t,n)}function vl(e,t,n){if(e!==null){if(e.memoizedProps!==t.pendingProps)zc=!0;else{if(!gl(e,n)&&!(t.flags&128))return zc=!1,_l(e,t,n);zc=!!(e.flags&131072)}}else zc=!1,F&&t.flags&1048576&&N(t,ea,t.index);switch(t.lanes=0,t.tag){case 16:a:{var r=t.pendingProps;if(e=ao(t.elementType),t.type=e,typeof e==`function`)Gi(e)?(r=Oc(e,r),t.tag=1,t=$c(null,t,e,r,n)):(t.tag=0,t=Zc(null,t,e,r,n));else{if(e!=null){var a=e.$$typeof;if(a===ue){t.tag=11,t=Vc(null,t,e,r,n);break a}if(a===pe){t.tag=14,t=Hc(null,t,e,r,n);break a}if(a===le){t.tag=10,t.type=e,t=ml(null,t,n);break a}}throw t=Ce(e)||e,Error(i(306,t,``))}}return t;case 0:return Zc(e,t,t.type,t.pendingProps,n);case 1:return r=t.type,a=Oc(r,t.pendingProps),$c(e,t,r,a,n);case 3:a:{if(Ie(t,t.stateNode.containerInfo),e===null)throw Error(i(387));r=t.pendingProps;var o=t.memoizedState;a=o.element,bo(e,t),Do(t,r,null,n);var s=t.memoizedState;if(r=s.cache,Sa(t,Fa,r),r!==o.cache&&Ta(t,[Fa],n,!0),Eo(),r=s.element,o.isDehydrated){if(o={element:r,isDehydrated:!1,cache:s.cache},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){t=el(e,t,r,n);break a}if(r!==a){a=A(Error(i(424)),t),va(a),t=el(e,t,r,n);break a}switch(e=t.stateNode.containerInfo,e.nodeType){case 9:e=e.body;break;default:e=e.nodeName===`HTML`?e.ownerDocument.body:e}for(la=xm(e.firstChild),ca=t,F=!0,ua=null,I=!0,n=_o(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|134221824,n=n.sibling}else{if(ga(),r===a){t=hl(e,t,n);break a}Bc(e,t,r,n)}t=t.child}return t;case 26:return Xc(e,t),e===null?(n=Gm(t.type,null,t.pendingProps,null))?t.memoizedState=n:F||(t.stateNode=wp(t.type,t.pendingProps,Pe.current,t)):t.memoizedState=Gm(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return Re(t),e===null&&F&&(r=t.stateNode=Dm(t.type,t.pendingProps,Pe.current),ca=t,I=!0,a=la,Pp(t.type)?(Sm=a,la=xm(r.firstChild)):la=a),Bc(e,t,t.pendingProps.children,n),Xc(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&F&&((a=r=la)&&(r=hm(r,t.type,t.pendingProps,I),r===null?a=!1:(t.stateNode=r,ca=t,la=xm(r.firstChild),I=!1,a=!0)),a||fa(t)),Re(t),a=t.type,o=t.pendingProps,s=e===null?null:e.memoizedProps,r=o.children,Tp(a,o)?r=null:s!==null&&Tp(a,s)&&(t.flags|=32),t.memoizedState!==null&&(a=is(e,t,ss,null,null,n),yh._currentValue=a),Xc(e,t),Bc(e,t,r,n),t.child;case 6:return e===null&&F&&((e=n=la)&&(n=gm(n,t.pendingProps,I),n===null?e=!1:(t.stateNode=n,ca=t,la=null,e=!0)),e||fa(t)),null;case 13:return il(e,t,n);case 4:return Ie(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=go(t,null,r,n):Bc(e,t,r,n),t.child;case 11:return Vc(e,t,t.type,t.pendingProps,n);case 7:return r=t.pendingProps,Xc(e,t),Bc(e,t,r,n),t.child;case 8:return Bc(e,t,t.pendingProps.children,n),t.child;case 12:return Bc(e,t,t.pendingProps.children,n),t.child;case 10:return ml(e,t,n);case 9:return a=t.type._context,r=t.pendingProps.children,Oa(t),a=ka(a),r=r(a),t.flags|=1,Bc(e,t,r,n),t.child;case 14:return Hc(e,t,t.type,t.pendingProps,n);case 15:return Uc(e,t,t.type,t.pendingProps,n);case 19:return pl(e,t,n);case 31:return Yc(e,t,n);case 22:return Wc(e,t,n,t.pendingProps);case 24:return Oa(t),r=ka(Fa),e===null?(a=Xa(),a===null&&(a=cd,o=Ia(),a.pooledCache=o,o.refCount++,o!==null&&(a.pooledCacheLanes|=n),a=o),t.memoizedState={parent:r,cache:a},yo(t),Sa(t,Fa,a)):((e.lanes&n)!==0&&(bo(e,t),Do(t,null,null,n),Eo()),a=e.memoizedState,o=t.memoizedState,a.parent===r?(r=o.cache,Sa(t,Fa,r),r!==a.cache&&Ta(t,[Fa],n,!0)):(a={parent:r,cache:r},t.memoizedState=a,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=a),Sa(t,Fa,r))),Bc(e,t,t.pendingProps.children,n),t.child;case 30:return t.stateNode===null&&(t.stateNode={autoName:null,paired:null,clones:null,ref:null}),r=t.pendingProps,r.name!=null&&r.name!==`auto`?t.flags|=e===null?18882560:18874368:F&&oa(t),e!==null&&e.memoizedProps.name!==r.name?t.flags|=4194816:Xc(e,t),Bc(e,t,r.children,n),t.child;case 29:throw t.pendingProps}throw Error(i(156,t.tag))}function yl(e){e.flags|=4}function bl(e,t,n,r,i){var a;if((a=!!(e.mode&32))&&(a=n===null?oh(t,r):oh(t,r)&&(r.src!==n.src||r.srcSet!==n.srcSet)),a){if(e.flags|=16777216,(i&335544128)===i){if(e.stateNode.complete)e.flags|=8192;else if($d())e.flags|=8192;else throw oo=no,eo}}else e.flags&=-16777217}function xl(e,t){if(t.type!==`stylesheet`||t.state.loading&4)e.flags&=-16777217;else if(e.flags|=16777216,!sh(t)){if($d())e.flags|=8192;else throw oo=no,eo}}function Sl(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag===22?536870912:Ct(),e.lanes|=t,bd|=t)}function Cl(e,t){if(!F)switch(e.tailMode){case`visible`:break;case`collapsed`:for(var n=e.tail,r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null;break;default:for(t=e.tail,n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null}}function wl(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&1206910976,r|=i.flags&1206910976,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Tl(e,t,n){var r=t.pendingProps;switch(sa(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return wl(t),null;case 1:return wl(t),null;case 3:return n=t.stateNode,r=null,e!==null&&(r=e.memoizedState.cache),t.memoizedState.cache!==r&&(t.flags|=2048),Ca(Fa),Le(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(ha(t)?yl(t):e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,_a())),wl(t),null;case 26:var a=t.type,o=t.memoizedState;return e===null?(yl(t),o===null?(wl(t),bl(t,a,null,r,n)):(wl(t),xl(t,o))):o?o===e.memoizedState?(wl(t),t.flags&=-16777217):(yl(t),wl(t),xl(t,o)):(e=e.memoizedProps,e!==r&&yl(t),wl(t),bl(t,a,e,r,n)),null;case 27:if(ze(t),n=Pe.current,a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&yl(t);else{if(!r){if(t.stateNode===null)throw Error(i(166));return wl(t),t.subtreeFlags&=-33554433,null}e=Me.current,ha(t)?pa(t,e):(e=Dm(a,r,n),t.stateNode=e,yl(t))}return wl(t),t.subtreeFlags&=-33554433,null;case 5:if(ze(t),a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&yl(t);else{if(!r){if(t.stateNode===null)throw Error(i(166));return wl(t),t.subtreeFlags&=-33554433,null}if(o=Me.current,ha(t))pa(t,o);else{var s=xp(Pe.current);switch(o){case 1:o=s.createElementNS(`http://www.w3.org/2000/svg`,a);break;case 2:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,a);break;default:switch(a){case`svg`:o=s.createElementNS(`http://www.w3.org/2000/svg`,a);break;case`math`:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,a);break;case`script`:o=s.createElement(`div`),o.innerHTML=`<script><\/script>`,o=o.removeChild(o.firstChild);break;case`select`:o=typeof r.is==`string`?s.createElement(`select`,{is:r.is}):s.createElement(`select`),r.multiple?o.multiple=!0:r.size&&(o.size=r.size);break;default:o=typeof r.is==`string`?s.createElement(a,{is:r.is}):s.createElement(a)}}o[Ft]=t,o[It]=r;a:for(s=t.child;s!==null;){if(s.tag===5||s.tag===6)o.appendChild(s.stateNode);else if(s.tag!==4&&s.tag!==27&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break a;for(;s.sibling===null;){if(s.return===null||s.return===t)break a;s=s.return}s.sibling.return=s.return,s=s.sibling}t.stateNode=o;a:switch(mp(o,a,r),a){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&yl(t)}}return wl(t),t.subtreeFlags&=-33554433,bl(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&yl(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(i(166));if(e=Pe.current,ha(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,a=ca,a!==null)switch(a.tag){case 27:case 5:r=a.memoizedProps}e[Ft]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||dp(e.nodeValue,n)),e||fa(t,!0)}else e=xp(e).createTextNode(r),e[Ft]=t,t.stateNode=e}return wl(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=ha(t),n!==null){if(e===null){if(!r)throw Error(i(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(557));e[Ft]=t}else ga(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;wl(t),e=!1}else n=_a(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(Vo(t),t):(Vo(t),null);if(t.flags&128)throw Error(i(558))}return wl(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=ha(t),r!==null&&r.dehydrated!==null){if(e===null){if(!a)throw Error(i(318));if(a=t.memoizedState,a=a===null?null:a.dehydrated,!a)throw Error(i(317));a[Ft]=t}else ga(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;wl(t),a=!1}else a=_a(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(Vo(t),t):(Vo(t),null)}return Vo(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,a=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(a=r.alternate.memoizedState.cachePool.pool),o=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(o=r.memoizedState.cachePool.pool),o!==a&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Sl(t,t.updateQueue),wl(t),null);case 4:return Le(),e===null&&tp(t.stateNode.containerInfo),t.flags|=67108864,wl(t),null;case 10:return Ca(t.type),wl(t),null;case 19:if(Wo(t),r=t.memoizedState,r===null)return wl(t),null;if(a=!!(t.flags&128),o=r.rendering,o===null){if(a)Cl(r,!1);else{if(hd!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=Go(e),o!==null){for(t.flags|=128,Cl(r,!1),e=o.updateQueue,t.updateQueue=e,Sl(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)qi(n,e),n=n.sibling;return Uo(t,Ho.current&1|2),F&&M(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&$e()>Ed&&(t.flags|=128,a=!0,Cl(r,!1),t.lanes=4194304)}}else{if(!a){if(e=Go(o),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Sl(t,e),Cl(r,!0),r.tail===null&&r.tailMode!==`collapsed`&&r.tailMode!==`visible`&&!o.alternate&&!F)return wl(t),null}else 2*$e()-r.renderingStartTime>Ed&&n!==536870912&&(t.flags|=128,a=!0,Cl(r,!1),t.lanes=4194304)}r.isBackwards?(o.sibling=t.child,t.child=o):(e=r.last,e===null?t.child=o:e.sibling=o,r.last=o)}if(r.tail!==null){e=r.tail;a:{for(n=e;n!==null;){if(n.alternate!==null){n=!1;break a}n=n.sibling}n=!0}return r.rendering=e,r.tail=e.sibling,r.renderingStartTime=$e(),e.sibling=null,o=Ho.current,o=a?o&1|2:o&1,r.tailMode===`visible`||r.tailMode===`collapsed`||!n||F?Uo(t,o):(n=o,je(Fo,t),je(Ho,n),Io===null&&(Io=t)),F&&M(t,r.treeForkCount),e}return wl(t),null;case 22:case 23:return Vo(t),Po(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(wl(t),t.subtreeFlags&6&&(t.flags|=8192)):wl(t),n=t.updateQueue,n!==null&&Sl(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&Ae(Ya),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Ca(Fa),wl(t),null;case 25:return null;case 30:return t.flags|=33554432,wl(t),null}throw Error(i(156,t.tag))}function El(e,t){switch(sa(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Ca(Fa),Le(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ze(t),null;case 31:if(t.memoizedState!==null){if(Vo(t),t.alternate===null)throw Error(i(340));ga()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Vo(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(i(340));ga()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Wo(t),e=t.flags,e&65536?(t.flags=e&-65537|128,e=t.memoizedState,e!==null&&(e.rendering=null,e.tail=null),t.flags|=4,t):null;case 4:return Le(),null;case 10:return Ca(t.type),null;case 22:case 23:return Vo(t),Po(),e!==null&&Ae(Ya),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Ca(Fa),null;case 25:return null;default:return null}}function Dl(e,t){switch(sa(t),t.tag){case 3:Ca(Fa),Le();break;case 26:case 27:case 5:ze(t);break;case 4:Le();break;case 31:t.memoizedState!==null&&Vo(t);break;case 13:Vo(t);break;case 19:Wo(t);break;case 10:Ca(t.type);break;case 22:case 23:Vo(t),Po(),e!==null&&Ae(Ya);break;case 24:Ca(Fa)}}function Ol(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){wf(t,t.return,e)}}function kl(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){wf(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){wf(t,t.return,e)}}function Al(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{ko(t,n)}catch(t){wf(e,e.return,t)}}}function jl(e,t,n){n.props=Oc(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){wf(e,t,n)}}function Ml(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:var i=e.stateNode,a=ki(e.memoizedProps,i);(i.ref===null||i.ref.name!==a)&&(i.ref=Kp(a)),r=i.ref;break;case 7:if(e.stateNode===null){var o=new qp(e);f(e.child,!1,um,o,void 0,void 0),e.stateNode=o}r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){wf(e,t,n)}}function Nl(e,t){var n=e.ref,r=e.refCleanup;if(n!==null){if(typeof r==`function`)try{r()}catch(n){wf(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){wf(e,t,n)}else n.current=null}}function Pl(e,t){if((e.tag===5||e.tag===27||e.tag===6)&&e.alternate===null&&t!==null)for(var n=0;n<t.length;n++)fm(e.stateNode,t[n])}function Fl(e){for(var t=e.return;t!==null&&(Rl(t)&&fm(e.stateNode,t.stateNode),!Ll(t));)t=t.return}function Il(e){for(var t=e.return;t!==null&&(Rl(t)&&pm(e.stateNode,t.stateNode),!Ll(t));)t=t.return}function Ll(e){return e.tag===5||e.tag===3||e.tag===27}function Rl(e){return e&&e.tag===7&&e.stateNode!==null}function zl(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{a:switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&r.focus();break a;case`img`:n.src?r.src=n.src:n.srcSet&&(r.srcset=n.srcSet)}}catch(t){wf(e,e.return,t)}}function Bl(e,t,n){try{var r=e.stateNode;gp(r,e.type,n,t),r[It]=t}catch(t){wf(e,e.return,t)}}function Vl(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Pp(e.type)||e.tag===4}function Hl(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Vl(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Pp(e.type)||e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Ul(e,t,n,r){var i=e.tag;if(i===5||i===6)i=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(i,t):(t=n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n,t.appendChild(i),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=An)),Pl(e,r),D=!0;else if(i!==4&&(i===27&&(Pl(e,r),r=null,Pp(e.type)&&(n=e.stateNode,t=null)),e=e.child,e!==null))for(Ul(e,t,n,r),e=e.sibling;e!==null;)Ul(e,t,n,r),e=e.sibling}function Wl(e,t,n,r){var i=e.tag;if(i===5||i===6)i=e.stateNode,t?n.insertBefore(i,t):n.appendChild(i),Pl(e,r),D=!0;else if(i!==4&&(i===27&&(Pl(e,r),r=null,Pp(e.type)&&(n=e.stateNode)),e=e.child,e!==null))for(Wl(e,t,n,r),e=e.sibling;e!==null;)Wl(e,t,n,r),e=e.sibling}function Gl(e){var t=e.stateNode,n=e.memoizedProps;try{for(var r=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);mp(t,r,n),t[Ft]=e,t[It]=n}catch(t){wf(e,e.return,t)}}var Kl=!1,ql=null;function Jl(e){(e.tag===30||e.subtreeFlags&33554432)&&(Kl=!0)}var Yl=null;function Xl(){var e=Yl;return Yl=null,e}var Zl=0;function Ql(e,t,n,r,i){return Zl=0,$l(e.child,t,n,r,i)}function $l(e,t,n,r,i){for(var a=!1;e!==null;){if(e.tag===5){var o=e.stateNode;if(r!==null){var s=Bp(o);r.push(s),s.view&&(a=!0)}else a||Bp(o).view&&(a=!0);Kl=!0,Lp(o,Zl===0?t:t+`_`+Zl,n),Zl++}else(e.tag!==22||e.memoizedState===null)&&(e.tag===30&&i||$l(e.child,t,n,r,i)&&(a=!0));e=e.sibling}return a}function eu(e,t){for(;e!==null;)e.tag===5?Rp(e.stateNode,e.memoizedProps):(e.tag!==22||e.memoizedState===null)&&(e.tag===30&&t||eu(e.child,t)),e=e.sibling}function tu(e){if(e.subtreeFlags&18874368)for(e=e.child;e!==null;){if((e.tag!==22||e.memoizedState===null)&&(tu(e),e.tag===30&&e.flags&18874368&&e.stateNode.paired)){var t=e.memoizedProps;if(t.name==null||t.name===`auto`)throw Error(i(544));var n=t.name;t=ji(t.default,t.share),t!==`none`&&(Ql(e,n,t,null,!1)||eu(e.child,!1))}e=e.sibling}}function nu(e,t){if(e.tag===30){var n=e.stateNode,r=e.memoizedProps,i=ki(r,n),a=ji(r.default,n.paired?r.share:r.enter);a===`none`?tu(e):Ql(e,i,a,null,!1)?(tu(e),n.paired||t||Ud(e,r.onEnter)):eu(e.child,!1)}else if(e.subtreeFlags&33554432)for(e=e.child;e!==null;)nu(e,t),e=e.sibling;else tu(e)}function ru(e){if(ql!==null&&ql.size!==0){var t=ql;if(e.subtreeFlags&18874368)for(e=e.child;e!==null;){if(e.tag!==22||e.memoizedState===null){if(e.tag===30&&e.flags&18874368){var n=e.memoizedProps,r=n.name;if(r!=null&&r!==`auto`){var i=t.get(r);if(i!==void 0){var a=ji(n.default,n.share);if(a!==`none`&&(Ql(e,r,a,null,!1)?(a=e.stateNode,i.paired=a,a.paired=i,Ud(e,n.onShare)):eu(e.child,!1)),t.delete(r),t.size===0)break}}}ru(e)}e=e.sibling}}}function iu(e){if(e.tag===30){var t=e.memoizedProps,n=ki(t,e.stateNode),r=ql===null?void 0:ql.get(n),i=ji(t.default,r===void 0?t.exit:t.share);i!==`none`&&(Ql(e,n,i,null,!1)?r===void 0?Ud(e,t.onExit):(i=e.stateNode,r.paired=i,i.paired=r,ql.delete(n),Ud(e,t.onShare)):eu(e.child,!1)),ql!==null&&ru(e)}else if(e.subtreeFlags&33554432)for(e=e.child;e!==null;)iu(e),e=e.sibling;else ql!==null&&ru(e)}function au(e){for(e=e.child;e!==null;){if(e.tag===30){var t=e.memoizedProps,n=ki(t,e.stateNode);t=ji(t.default,t.update),e.flags&=-5,t!==`none`&&Ql(e,n,t,e.memoizedState=[],!1)}else e.subtreeFlags&33554432&&au(e);e=e.sibling}}function ou(e){if(e.subtreeFlags&18874368)for(e=e.child;e!==null;){if(e.tag!==22||e.memoizedState===null){if(e.tag===30&&e.flags&18874368){var t=e.stateNode;t.paired!==null&&(t.paired=null,eu(e.child,!1))}ou(e)}e=e.sibling}}function su(e){if(e.tag===30)e.stateNode.paired=null,eu(e.child,!1),ou(e);else if(e.subtreeFlags&33554432)for(e=e.child;e!==null;)su(e),e=e.sibling;else ou(e)}function cu(e){for(e=e.child;e!==null;)e.tag===30?eu(e.child,!1):e.subtreeFlags&33554432&&cu(e),e=e.sibling}function lu(e,t,n,r,i,a,o){for(var s=!1;t!==null;){if(t.tag===5){var c=t.stateNode;if(a!==null&&Zl<a.length){var l=a[Zl],u=Bp(c);(l.view||u.view)&&(s=!0);var d;if(d=!(e.flags&4)){if(u.clip)d=!0;else{d=l.rect;var f=u.rect;d=d.y!==f.y||d.x!==f.x||d.height!==f.height||d.width!==f.width}}d&&(e.flags|=4),u.abs?u=!l.abs:(l=l.rect,u=u.rect,u=l.height!==u.height||l.width!==u.width),u&&(e.flags|=32)}else e.flags|=32;e.flags&4&&Lp(c,Zl===0?n:n+`_`+Zl,i),s&&e.flags&4||(Yl===null&&(Yl=[]),Yl.push(c,Zl===0?r:r+`_`+Zl,t.memoizedProps)),Zl++}else(t.tag!==22||t.memoizedState===null)&&(t.tag===30&&o?e.flags|=t.flags&32:lu(e,t.child,n,r,i,a,o)&&(s=!0));t=t.sibling}return s}function uu(e,t){for(e=e.child;e!==null;){if(e.tag===30){var n=e.memoizedProps,r=e.stateNode,i=ki(n,r),a=ji(n.default,n.update);if(t){r=r.clones;var o=r===null?null:r.map(Vp)}else o=e.memoizedState,e.memoizedState=null;r=e;var s=e.child;Zl=0,i=lu(r,s,i,i,a,o,!1),e.flags&4&&i&&(t||Ud(e,n.onUpdate))}else e.subtreeFlags&33554432&&uu(e,t);e=e.sibling}}var du=!1,fu=!1,pu=!1,mu=!1,hu=typeof WeakSet==`function`?WeakSet:Set,gu=null,_u=!1,vu=!1,yu=!1,bu=!1;function xu(e,t,n){if(e=e.containerInfo,yp=Oh,e=ai(e),oi(e)){if(`selectionStart`in e)var r={start:e.selectionStart,end:e.selectionEnd};else a:{r=(r=e.ownerDocument)&&r.defaultView||window;var i=r.getSelection&&r.getSelection();if(i&&i.rangeCount!==0){r=i.anchorNode;var a=i.anchorOffset,o=i.focusNode;i=i.focusOffset;try{r.nodeType,o.nodeType}catch{r=null;break a}var s=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==r||a!==0&&f.nodeType!==3||(c=s+a),f!==o||i!==0&&f.nodeType!==3||(l=s+i),f.nodeType===3&&(s+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===r&&++u===a&&(c=s),p===o&&++d===i&&(l=s),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}r=c===-1||l===-1?null:{start:c,end:l}}else r=null}r||={start:0,end:0}}else r=null;for(bp={focusedElem:e,selectionRange:r},Oh=!1,n=(n&335544064)===n,gu=t,t=n?9270:1024;gu!==null;){if(e=gu,n&&(r=e.deletions,r!==null))for(a=0;a<r.length;a++)n&&iu(r[a]);if(e.alternate===null&&e.flags&2)n&&Jl(e),Su(n);else{if(e.tag===22){if(r=e.alternate,e.memoizedState!==null){r!==null&&r.memoizedState===null&&n&&iu(r),Su(n);continue}if(r!==null&&r.memoizedState!==null){n&&Jl(e),Su(n);continue}}r=e.child,(e.subtreeFlags&t)!==0&&r!==null?(r.return=e,gu=r):(n&&au(e),Su(n))}}ql=null}function Su(e){for(;gu!==null;){var t=gu,n=e,r=t.alternate,a=t.flags;switch(t.tag){case 0:case 11:case 15:break;case 1:if(a&1024&&r!==null){n=void 0,a=r.memoizedProps,r=r.memoizedState;var o=t.stateNode;try{var s=Oc(t.type,a);n=o.getSnapshotBeforeUpdate(s,r),o.__reactInternalSnapshotBeforeUpdate=n}catch(e){wf(t,t.return,e)}}break;case 3:if(a&1024){if(r=t.stateNode.containerInfo,n=r.nodeType,n===9)mm(r);else if(n===1)switch(r.nodeName){case`HEAD`:case`HTML`:case`BODY`:mm(r);break;default:r.textContent=``}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;case 30:n&&r!==null&&(n=ki(r.memoizedProps,r.stateNode),a=t.memoizedProps,a=ji(a.default,a.update),a!==`none`&&Ql(r,n,a,r.memoizedState=[],!0));break;default:if(a&1024)throw Error(i(163))}if(r=t.sibling,r!==null){r.return=t.return,gu=r;break}gu=t.return}}function Cu(e,t,n){var r=n.flags;switch(n.tag){case 0:case 11:case 15:Uu(e,n),r&4&&Ol(5,n);break;case 1:if(Uu(e,n),r&4){if(e=n.stateNode,t===null)try{e.componentDidMount()}catch(e){wf(n,n.return,e)}else{var i=Oc(n.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(i,t,e.__reactInternalSnapshotBeforeUpdate)}catch(e){wf(n,n.return,e)}}}r&64&&Al(n),r&512&&Ml(n,n.return);break;case 3:if(Uu(e,n),r&64&&(e=n.updateQueue,e!==null)){if(t=null,n.child!==null)switch(n.child.tag){case 27:case 5:t=n.child.stateNode;break;case 1:t=n.child.stateNode}try{ko(e,t)}catch(e){wf(n,n.return,e)}}break;case 27:t===null&&r&4&&Gl(n);case 26:case 5:Uu(e,n),t===null&&r&4&&zl(n),r&512&&Ml(n,n.return);break;case 12:Uu(e,n);break;case 31:Uu(e,n),r&4&&Mu(e,n);break;case 13:Uu(e,n),r&4&&Nu(e,n),r&64&&(e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(n=Of.bind(null,n),bm(e,n))));break;case 22:if(r=n.memoizedState!==null||du,!r){var a=t!==null&&t.memoizedState!==null||fu;t=du,i=fu,du=r,(fu=a)&&!i?(r=2,n.subtreeFlags&8772&&(r|=1),Gu(e,n,r)):Uu(e,n),du=t,fu=i}break;case 30:Uu(e,n),r&512&&Ml(n,n.return);break;case 7:r&512&&Ml(n,n.return);default:Uu(e,n)}}function wu(e,t){for(e=e.child;e!==null;)Tu(e,t),e=e.sibling}function Tu(e,t){switch(e.tag){case 5:case 26:try{var n=e.stateNode;if(t){var r=n.style;typeof r.setProperty==`function`?r.setProperty(`display`,`none`,`important`):r.display=`none`}else{var i=e.stateNode,a=e.memoizedProps.style,o=a!=null&&a.hasOwnProperty(`display`)?a.display:null;i.style.display=o==null||typeof o==`boolean`?``:(``+o).trim()}}catch(t){wf(e,e.return,t)}Eu(e,t);break;case 6:try{e.stateNode.nodeValue=t?``:e.memoizedProps,D=!0}catch(t){wf(e,e.return,t)}break;case 18:try{var s=e.stateNode;t?Ip(s,!0):Ip(e.stateNode,!1)}catch(t){wf(e,e.return,t)}break;case 22:case 23:e.memoizedState===null&&wu(e,t);break;default:wu(e,t)}}function Eu(e,t){if(e.subtreeFlags&67108864)for(e=e.child;e!==null;){a:{var n=e,r=t;switch(n.tag){case 4:Tu(n,r);break a;case 22:n.memoizedState===null&&Eu(n,r);break a;default:Eu(n,r)}}e=e.sibling}}function Du(e){var t=e.alternate;t!==null&&(e.alternate=null,Du(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&Wt(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var Ou=null,ku=!1;function Au(e,t,n){for(n=n.child;n!==null;)ju(e,t,n),n=n.sibling}function ju(e,t,n){if(lt&&typeof lt.onCommitFiberUnmount==`function`)try{lt.onCommitFiberUnmount(ct,n)}catch{}switch(n.tag){case 26:fu||Nl(n,t),Au(e,t,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&!fu&&(n=n.stateNode,n.parentNode.removeChild(n));break;case 27:fu||Nl(n,t),Il(n);var r=Ou,i=ku;Pp(n.type)&&(Ou=n.stateNode,ku=!1),Au(e,t,n),Om(n.stateNode,n.type,n.memoizedProps),Ou=r,ku=i;break;case 5:fu||Nl(n,t),Il(n);case 6:if(n.tag===6&&Il(n),r=Ou,i=ku,Ou=null,Au(e,t,n),Ou=r,ku=i,Ou!==null){if(ku)try{(Ou.nodeType===9?Ou.body:Ou.nodeName===`HTML`?Ou.ownerDocument.body:Ou).removeChild(n.stateNode),D=!0}catch(e){wf(n,t,e)}else try{Ou.removeChild(n.stateNode),D=!0}catch(e){wf(n,t,e)}}break;case 18:Ou!==null&&(ku?(e=Ou,Fp(e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e,n.stateNode),eg(e)):Fp(Ou,n.stateNode));break;case 4:r=Ou,i=ku,Ou=n.stateNode.containerInfo,ku=!0,Au(e,t,n),Ou=r,ku=i;break;case 0:case 11:case 14:case 15:kl(2,n,t),fu||kl(4,n,t),Au(e,t,n);break;case 1:fu||(Nl(n,t),r=n.stateNode,typeof r.componentWillUnmount==`function`&&jl(n,t,r)),Au(e,t,n);break;case 21:Au(e,t,n);break;case 22:fu=(r=fu)||n.memoizedState!==null,Au(e,t,n),fu=r;break;case 30:Nl(n,t),Au(e,t,n);break;case 7:fu||Nl(n,t),Au(e,t,n);break;default:Au(e,t,n)}}function Mu(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{eg(e)}catch(e){wf(t,t.return,e)}}}function Nu(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{eg(e)}catch(e){wf(t,t.return,e)}}function Pu(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new hu),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new hu),t;default:throw Error(i(435,e.tag))}}function Fu(e,t){var n=Pu(e);t.forEach(function(t){if(!n.has(t)){n.add(t);var r=kf.bind(null,e,t);t.then(r,r)}})}function Iu(e,t,n){var r=t.deletions;if(r!==null)for(var a=0;a<r.length;a++){var o=r[a],s=e,c=t,l=c;a:for(;l!==null;){switch(l.tag){case 27:if(Pp(l.type)){Ou=l.stateNode,ku=!1;break a}break;case 5:Ou=l.stateNode,ku=!1;break a;case 3:case 4:Ou=l.stateNode.containerInfo,ku=!0;break a}l=l.return}if(Ou===null)throw Error(i(160));ju(s,c,o),Ou=null,ku=!1,s=o.alternate,s!==null&&(s.return=null),o.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)Ru(t,e,n),t=t.sibling}var Lu=null;function Ru(e,t,n){var r=e.alternate,a=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(a&4&&(r=e.updateQueue,r=r===null?null:r.events,r!==null))for(var o=0;o<r.length;o++){var s=r[o];s.ref.impl=s.nextImpl}Iu(t,e,n),zu(e),a&4&&(kl(3,e,e.return),Ol(3,e),kl(5,e,e.return));break;case 1:Iu(t,e,n),zu(e),a&512&&(fu||r===null||Nl(r,r.return)),a&64&&du&&(e=e.updateQueue,e!==null&&(t=e.callbacks,t!==null&&(n=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=n===null?t:n.concat(t))));break;case 26:if(o=Lu,Iu(t,e,n),zu(e),a&512&&(fu||r===null||Nl(r,r.return)),a&4){if(a=r===null?null:r.memoizedState,n=e.memoizedState,r===null){if(n===null){if(e.stateNode===null){if(du)e.stateNode=wp(e.type,e.memoizedProps,t.containerInfo,e);else{a:{t=e.type,n=e.memoizedProps,a=o.ownerDocument||o;b:switch(t){case`title`:r=a.getElementsByTagName(`title`)[0],(!r||r[Ht]||r[Ft]||r.namespaceURI===`http://www.w3.org/2000/svg`||r.hasAttribute(`itemprop`))&&(r=a.createElement(t),a.head.insertBefore(r,a.querySelector(`head > title`))),mp(r,t,n),r[Ft]=e,E(r),t=r;break a;case`link`:if(o=rh(`link`,`href`,a).get(t+(n.href||``))){for(s=0;s<o.length;s++)if(r=o[s],r.getAttribute(`href`)===(n.href==null||n.href===``?null:n.href)&&r.getAttribute(`rel`)===(n.rel==null?null:n.rel)&&r.getAttribute(`title`)===(n.title==null?null:n.title)&&r.getAttribute(`crossorigin`)===(n.crossOrigin==null?null:n.crossOrigin)){o.splice(s,1);break b}}r=a.createElement(t),mp(r,t,n),a.head.appendChild(r);break;case`meta`:if(o=rh(`meta`,`content`,a).get(t+(n.content||``))){for(s=0;s<o.length;s++)if(r=o[s],r.getAttribute(`content`)===(n.content==null?null:``+n.content)&&r.getAttribute(`name`)===(n.name==null?null:n.name)&&r.getAttribute(`property`)===(n.property==null?null:n.property)&&r.getAttribute(`http-equiv`)===(n.httpEquiv==null?null:n.httpEquiv)&&r.getAttribute(`charset`)===(n.charSet==null?null:n.charSet)){o.splice(s,1);break b}}r=a.createElement(t),mp(r,t,n),a.head.appendChild(r);break;default:throw Error(i(468,t))}r[Ft]=e,E(r),t=r}e.stateNode=t}}else du||ih(o,e.type,e.stateNode)}else e.stateNode=Qm(o,n,e.memoizedProps)}else a===n?n===null&&e.stateNode!==null&&Bl(e,e.memoizedProps,r.memoizedProps):(a===null?(t=r.stateNode,t===null||fu||t.parentNode.removeChild(t)):a.count--,n===null?du||ih(o,e.type,e.stateNode):Qm(o,n,e.memoizedProps))}break;case 27:Iu(t,e,n),zu(e),a&512&&(fu||r===null||Nl(r,r.return)),r!==null&&a&4&&Bl(e,e.memoizedProps,r.memoizedProps);break;case 5:if(o=pu,pu=!1,Iu(t,e,n),pu=o,zu(e),a&512&&(fu||r===null||Nl(r,r.return)),e.flags&32){t=e.stateNode;try{Sn(t,``),D=!0}catch(t){wf(e,e.return,t)}}a&4&&e.stateNode!=null&&(t=e.memoizedProps,Bl(e,t,r===null?t:r.memoizedProps)),a&1024&&(mu=!0);break;case 6:if(Iu(t,e,n),zu(e),a&4){if(e.stateNode===null)throw Error(i(162));t=e.memoizedProps,n=e.stateNode;try{n.nodeValue=t,D=!0}catch(t){wf(e,e.return,t)}}break;case 3:if(D=!1,nh=null,o=Lu,Lu=Mm(t.containerInfo),Iu(t,e,n),Lu=o,zu(e),a&4&&r!==null&&r.memoizedState.isDehydrated)try{eg(t.containerInfo)}catch(t){wf(e,e.return,t)}mu&&(mu=!1,Bu(e)),D=!1;break;case 4:a=pu,pu=du,r=an(),o=Lu,Lu=Mm(e.stateNode.containerInfo),Iu(t,e,n),zu(e),Lu=o,D&&vu&&(yu=!0),D=r,pu=a;break;case 12:Iu(t,e,n),zu(e);break;case 31:Iu(t,e,n),zu(e),a&4&&(t=e.updateQueue,t!==null&&(e.updateQueue=null,Fu(e,t)));break;case 13:Iu(t,e,n),zu(e),e.child.flags&8192&&e.memoizedState!==null!=(r!==null&&r.memoizedState!==null)&&(wd=$e()),a&4&&(t=e.updateQueue,t!==null&&(e.updateQueue=null,Fu(e,t)));break;case 22:o=e.memoizedState!==null,s=r!==null&&r.memoizedState!==null;var c=du,l=fu,u=pu;du=c||o,pu=u||o,fu=l||s,Iu(t,e,n),fu=l,pu=u,du=c,zu(e),a&8192&&(t=e.stateNode,t._visibility=o?t._visibility&-2:t._visibility|1,!o||r===null||s||du||fu||(t=s||fu,n=du,r=fu,du=o||du,fu=t,Wu(e,2),du=n,fu=r),!o&&pu||wu(e,o)),a&4&&(t=e.updateQueue,t!==null&&(n=t.retryQueue,n!==null&&(t.retryQueue=null,Fu(e,n))));break;case 19:Iu(t,e,n),zu(e),a&4&&(t=e.updateQueue,t!==null&&(e.updateQueue=null,Fu(e,t)));break;case 30:a&512&&(fu||r===null||Nl(r,r.return)),a=an(),o=vu,s=(n&335544064)===n,c=e.memoizedProps,vu=s&&ji(c.default,c.update)!==`none`,Iu(t,e,n),zu(e),s&&r!==null&&D&&(e.flags|=4),vu=o,D=a;break;case 21:break;case 7:a&512&&(fu||r===null||Nl(r,r.return)),r&&r.stateNode!==null&&(r.stateNode._fragmentFiber=e);default:Iu(t,e,n),zu(e)}}function zu(e){var t=e.flags;if(t&2){try{for(var n,r=e.return;r!==null;){if(Vl(r)){n=r;break}r=r.return}r=null;for(var a=e.return;a!==null;){if(Rl(a)){var o=a.stateNode;r===null?r=[o]:r.push(o)}if(Ll(a))break;a=a.return}var s=r;if(n==null)throw Error(i(160));switch(n.tag){case 27:var c=n.stateNode;Wl(e,Hl(e),c,s);break;case 5:var l=n.stateNode;n.flags&32&&(Sn(l,``),n.flags&=-33),Wl(e,Hl(e),l,s);break;case 3:case 4:var u=n.stateNode.containerInfo;Ul(e,Hl(e),u,s);break;default:throw Error(i(161))}}catch(t){wf(e,e.return,t)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function Bu(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;Bu(t),t.tag===5&&t.flags&1024&&(t=t.stateNode,Oh=!0,t.reset(),Oh=!1),e=e.sibling}}function Vu(e,t){if(t.subtreeFlags&9270)for(t=t.child;t!==null;)Hu(t,e),t=t.sibling;else uu(t,!1)}function Hu(e,t){var n=e.alternate;if(n===null)nu(e,!1);else switch(e.tag){case 3:if(bu=_u=!1,Xl(),Vu(t,e),!_u&&!yu){if(e=Yl,e!==null)for(var r=0;r<e.length;r+=3){n=e[r];var i=e[r+1];Rp(n,e[r+2]),n=n.ownerDocument.documentElement,n!==null&&n.animate({opacity:[0,0],pointerEvents:[`none`,`none`]},{duration:0,fill:`forwards`,pseudoElement:`::view-transition-group(`+i+`)`})}e=t.containerInfo,e=e.nodeType===9?e.documentElement:e.ownerDocument.documentElement,e!==null&&e.style.viewTransitionName===``&&(e.style.viewTransitionName=`none`,e.animate({opacity:[0,0],pointerEvents:[`none`,`none`]},{duration:0,fill:`forwards`,pseudoElement:`::view-transition-group(root)`}),e.animate({width:[0,0],height:[0,0]},{duration:0,fill:`forwards`,pseudoElement:`::view-transition`})),bu=!0}Yl=null;break;case 5:Vu(t,e);break;case 4:r=_u,_u=!1,Vu(t,e),_u&&(yu=!0),_u=r;break;case 22:e.memoizedState===null&&(n.memoizedState===null?Vu(t,e):nu(e,!1));break;case 30:r=_u,i=Xl(),_u=!1,Vu(t,e),_u&&(e.flags|=4);var a=e.memoizedProps,o=e.stateNode;t=ki(a,o),o=ki(n.memoizedProps,o);var s=ji(a.default,a.update);s===`none`?t=!1:(a=n.memoizedState,n.memoizedState=null,n=e.child,Zl=0,t=lu(e,n,t,o,s,a,!0),Zl!==(a===null?0:a.length)&&(e.flags|=32)),e.flags&4&&t?(Ud(e,e.memoizedProps.onUpdate),Yl=i):i!==null&&(i.push.apply(i,Yl),Yl=i),_u=e.flags&32?!0:r;break;default:Vu(t,e)}}function Uu(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)Cu(e,t.alternate,t),t=t.sibling}function Wu(e,t){for(e=e.child;e!==null;){var n=e,r=t;switch(n.tag){case 0:case 11:case 14:case 15:kl(4,n,n.return),Wu(n,r);break;case 1:Nl(n,n.return);var i=n.stateNode;typeof i.componentWillUnmount==`function`&&jl(n,n.return,i),Wu(n,r);break;case 27:r&2&&Om(n.stateNode,n.type,n.memoizedProps);case 5:Nl(n,n.return),n.tag!==5&&n.tag!==27||Il(n),Wu(n,r);break;case 6:Il(n);break;case 26:Nl(n,n.return),i=n.stateNode,n.memoizedState!==null||i===null||fu||i.parentNode.removeChild(i),Wu(n,r);break;case 22:n.memoizedState===null&&Wu(n,r);break;case 30:Nl(n,n.return),Wu(n,r);break;case 7:Nl(n,n.return);default:Wu(n,r)}e=e.sibling}}function Gu(e,t,n){for(n=t.subtreeFlags&8772?n:n&-2,t=t.child;t!==null;){var r=t.alternate,i=e,a=t,o=a.flags,s=!!(n&1);switch(a.tag){case 0:case 11:case 15:Gu(i,a,n),Ol(4,a);break;case 1:if(Gu(i,a,n),r=a,i=r.stateNode,typeof i.componentDidMount==`function`)try{i.componentDidMount()}catch(e){wf(r,r.return,e)}if(r=a,i=r.updateQueue,i!==null){var c=r.stateNode;try{var l=i.shared.hiddenCallbacks;if(l!==null)for(i.shared.hiddenCallbacks=null,i=0;i<l.length;i++)Oo(l[i],c)}catch(e){wf(r,r.return,e)}}s&&o&64&&Al(a),Ml(a,a.return);break;case 27:n&2&&Gl(a);case 5:a.tag!==5&&a.tag!==27||Fl(a),Gu(i,a,n),s&&r===null&&o&4&&zl(a),Ml(a,a.return);break;case 6:Fl(a);break;case 26:c=a.stateNode,a.memoizedState!==null||c===null||du||ih(Mm(c.ownerDocument),a.type,c),Gu(i,a,n),s&&r===null&&o&4&&zl(a),Ml(a,a.return);break;case 12:Gu(i,a,n);break;case 31:Gu(i,a,n),s&&o&4&&Mu(i,a);break;case 13:Gu(i,a,n),s&&o&4&&Nu(i,a);break;case 22:a.memoizedState===null&&Gu(i,a,n),Ml(a,a.return);break;case 30:Gu(i,a,n),Ml(a,a.return);break;case 7:Ml(a,a.return);default:Gu(i,a,n)}t=t.sibling}}function Ku(e,t){var n=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==n&&(e!=null&&e.refCount++,n!=null&&La(n))}function qu(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&La(e))}function Ju(e,t,n,r){var i=(n&335544064)===n;if(t.subtreeFlags&(i?10262:10256))for(t=t.child;t!==null;)Yu(e,t,n,r),t=t.sibling;else i&&cu(t)}function Yu(e,t,n,r){var i=(n&335544064)===n;i&&t.alternate===null&&t.return!==null&&t.return.alternate!==null&&su(t);var a=t.flags;switch(t.tag){case 0:case 11:case 15:Ju(e,t,n,r),a&2048&&Ol(9,t);break;case 1:Ju(e,t,n,r);break;case 3:Ju(e,t,n,r),i&&bu&&(e=e.containerInfo,e=e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e,e.style.viewTransitionName===`root`&&(e.style.viewTransitionName=``),e=e.ownerDocument.documentElement,e!==null&&e.style.viewTransitionName===`none`&&(e.style.viewTransitionName=``)),a&2048&&(a=null,t.alternate!==null&&(a=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==a&&(t.refCount++,a!=null&&La(a)));break;case 12:if(a&2048){Ju(e,t,n,r),a=t.stateNode;try{var o=t.memoizedProps,s=o.id,c=o.onPostCommit;typeof c==`function`&&c(s,t.alternate===null?`mount`:`update`,a.passiveEffectDuration,-0)}catch(e){wf(t,t.return,e)}}else Ju(e,t,n,r);break;case 31:Ju(e,t,n,r);break;case 13:Ju(e,t,n,r);break;case 23:break;case 22:o=t.stateNode,s=t.alternate,t.memoizedState===null?(i&&s!==null&&s.memoizedState!==null&&su(t),o._visibility&2?Ju(e,t,n,r):(o._visibility|=2,Xu(e,t,n,r,!!(t.subtreeFlags&10256)||!1))):(i&&s!==null&&s.memoizedState===null&&su(s),o._visibility&2?Ju(e,t,n,r):Zu(e,t)),a&2048&&Ku(s,t);break;case 24:Ju(e,t,n,r),a&2048&&qu(t.alternate,t);break;case 30:i&&(a=t.alternate,a!==null&&(eu(a.child,!0),eu(t.child,!0))),Ju(e,t,n,r);break;default:Ju(e,t,n,r)}}function Xu(e,t,n,r,i){for(i&&=!!(t.subtreeFlags&10256)||!1,t=t.child;t!==null;){var a=e,o=t,s=n,c=r,l=o.flags;switch(o.tag){case 0:case 11:case 15:Xu(a,o,s,c,i),Ol(8,o);break;case 23:break;case 22:var u=o.stateNode;o.memoizedState===null?(u._visibility|=2,Xu(a,o,s,c,i)):u._visibility&2?Xu(a,o,s,c,i):Zu(a,o),i&&l&2048&&Ku(o.alternate,o);break;case 24:Xu(a,o,s,c,i),i&&l&2048&&qu(o.alternate,o);break;default:Xu(a,o,s,c,i)}t=t.sibling}}function Zu(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var n=e,r=t,i=r.flags;switch(r.tag){case 22:Zu(n,r),i&2048&&Ku(r.alternate,r);break;case 24:Zu(n,r),i&2048&&qu(r.alternate,r);break;default:Zu(n,r)}t=t.sibling}}var Qu=8192;function $u(e,t,n){if(e.subtreeFlags&Qu)for(e=e.child;e!==null;)ed(e,t,n),e=e.sibling}function ed(e,t,n){switch(e.tag){case 26:$u(e,t,n),e.flags&Qu&&(e.memoizedState===null?(e=e.stateNode,(t&335544128)===t&&lh(n,e)):uh(n,Lu,e.memoizedState,e.memoizedProps));break;case 5:$u(e,t,n),e.flags&Qu&&(e=e.stateNode,(t&335544128)===t&&lh(n,e));break;case 3:case 4:var r=Lu;Lu=Mm(e.stateNode.containerInfo),$u(e,t,n),Lu=r;break;case 22:e.memoizedState===null&&(r=e.alternate,r!==null&&r.memoizedState!==null?(r=Qu,Qu=16777216,$u(e,t,n),Qu=r):$u(e,t,n));break;case 30:if((e.flags&Qu)!==0&&(r=e.memoizedProps.name,r!=null&&r!==`auto`)){var i=e.stateNode;i.paired=null,ql===null&&(ql=new Map),ql.set(r,i)}$u(e,t,n);break;default:$u(e,t,n)}}function td(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function nd(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];gu=r,ad(r,e)}td(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)rd(e),e=e.sibling}function rd(e){switch(e.tag){case 0:case 11:case 15:nd(e),e.flags&2048&&kl(9,e,e.return);break;case 3:nd(e);break;case 12:nd(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,id(e)):nd(e);break;default:nd(e)}}function id(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];gu=r,ad(r,e)}td(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:kl(8,t,t.return),id(t);break;case 22:n=t.stateNode,n._visibility&2&&(n._visibility&=-3,id(t));break;default:id(t)}e=e.sibling}}function ad(e,t){for(;gu!==null;){var n=gu;switch(n.tag){case 0:case 11:case 15:kl(8,n,t);break;case 23:case 22:if(n.memoizedState!==null&&n.memoizedState.cachePool!==null){var r=n.memoizedState.cachePool.pool;r!=null&&r.refCount++}break;case 24:La(n.memoizedState.cache)}if(r=n.child,r!==null)r.return=n,gu=r;else a:for(n=e;gu!==null;){r=gu;var i=r.sibling,a=r.return;if(Du(r),r===n){gu=null;break a}if(i!==null){i.return=a,gu=i;break a}gu=a}}}var od={getCacheForType:function(e){var t=ka(Fa),n=t.data.get(e);return n===void 0&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return ka(Fa).controller.signal}},sd=typeof WeakMap==`function`?WeakMap:Map,R=0,cd=null,z=null,B=0,ld=0,ud=null,dd=!1,fd=!1,pd=!1,md=0,hd=0,gd=0,_d=0,vd=0,yd=0,bd=0,xd=null,Sd=null,Cd=!1,wd=0,Td=0,Ed=1/0,Dd=null,Od=null,kd=0,Ad=null,jd=null,Md=0,Nd=0,Pd=null,Fd=null,Id=null,Ld=null,Rd=null,zd=0,Bd=null;function Vd(){return R&2&&B!==0?B&-B:C.T===null?Mt():Gf()}function Hd(){if(yd===0){if(!(B&536870912)||F){var e=gt;gt<<=1,!(gt&3932160)&&(gt=262144),yd=e}else yd=536870912}return e=Fo.current,e!==null&&(e.flags|=32),yd}function Ud(e,t){if(t!=null){var n=e.stateNode,r=n.ref;r===null&&(r=n.ref=Kp(ki(e.memoizedProps,n))),Ld===null&&(Ld=[]),Ld.push(t.bind(null,r))}}function Wd(e,t,n){(e===cd&&(ld===2||ld===9)||e.cancelPendingCommit!==null)&&(Zd(e,0),Jd(e,B,yd,!1)),Tt(e,n),(!(R&2)||e!==cd)&&(e===cd&&(!(R&2)&&(_d|=n),hd===4&&Jd(e,B,yd,!1)),Lf(e))}function Gd(e,t,n){if(R&6)throw Error(i(327));var r=!n&&!(t&127)&&(t&e.expiredLanes)===0||bt(e,t),a=r?of(e,t):rf(e,t,!0),o=r;do{if(a===0){fd&&!r&&Jd(e,t,0,!1);break}if(n=e.current.alternate,o&&!qd(n))a=rf(e,t,!1),o=!1;else{if(a===2){if(o=t,e.errorRecoveryDisabledLanes&o)var s=0;else s=e.pendingLanes&-536870913,s=s===0?s&536870912?536870912:0:s;if(s!==0){t=s;a:{var c=e;a=xd;var l=c.current.memoizedState.isDehydrated;if(l&&(Zd(c,s).flags|=256),s=rf(c,s,!1),s!==2&&s!==6){if(pd&&!l){c.errorRecoveryDisabledLanes|=o,_d|=o,a=4;break a}o=Sd,Sd=a,o!==null&&(Sd===null?Sd=o:Sd.push.apply(Sd,o))}a=s}if(o=!1,a!==2)continue}}if(a===1){Zd(e,0),Jd(e,t,0,!0);break}a:{switch(r=e,o=a,o){case 0:case 1:throw Error(i(345));case 4:if((t&4194048)!==t&&(t&62914560)!==t)break;case 6:Jd(r,t,yd,!dd);break a;case 2:Sd=null;break;case 3:case 5:break;default:throw Error(i(329))}if((t&62914560)===t&&(a=wd+300-$e(),10<a)){if(Jd(r,t,yd,!dd),yt(r,0,!0)!==0)break a;Md=t,r.timeoutHandle=Op(Kd.bind(null,r,n,Sd,Dd,Cd,t,yd,_d,bd,dd,o,`Throttled`,-0,0),a);break a}Kd(r,n,Sd,Dd,Cd,t,yd,_d,bd,dd,o,null,-0,0)}break}}while(1);Lf(e)}function Kd(e,t,n,r,i,a,o,s,c,l,u,d,f,p){e.timeoutHandle=-1;var m=t.subtreeFlags,h=(a&335544064)===a;d=null,(h||m&8192||(m&16785408)==16785408)&&(d={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:An},ql=null,ed(t,a,d),h&&(m=d,h=e.containerInfo,h=(h.nodeType===9?h:h.ownerDocument).__reactViewTransition,h!=null&&(m.count++,m.waitingForViewTransition=!0,m=mh.bind(m),h.finished.then(m,m))),m=(a&62914560)===a?wd-$e():(a&4194048)===a?Td-$e():0,m=fh(d,m),m!==null)?(Md=a,e.cancelPendingCommit=m(pf.bind(null,e,t,a,n,r,i,o,s,c,l,u,d,null,f,p)),Jd(e,a,o,!l)):pf(e,t,a,n,r,i,o,s,c,l,u,d)}function qd(e){for(var t=e;;){var n=t.tag;if((n===0||n===11||n===15)&&t.flags&16384&&(n=t.updateQueue,n!==null&&(n=n.stores,n!==null)))for(var r=0;r<n.length;r++){var i=n[r],a=i.getSnapshot;i=i.value;try{if(!$r(a(),i))return!1}catch{return!1}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function Jd(e,t,n,r){t=xt(e,t),t&=~vd,t&=~_d,e.suspendedLanes|=t,e.pingedLanes&=~t,r&&(e.warmLanes|=t),r=e.expirationTimes;for(var i=t;0<i;){var a=31-dt(i),o=1<<a;r[a]=-1,i&=~o}n!==0&&Dt(e,n,t)}function Yd(){return R&6?!0:(Rf(0,!1),!1)}function Xd(){if(z!==null){if(ld===0)var e=z.return;else e=z,xa=ba=null,us(e),lo=null,uo=0,e=z;for(;e!==null;)Dl(e.alternate,e),e=e.return;z=null}}function Zd(e,t){var n=e.timeoutHandle;return n!==-1&&(e.timeoutHandle=-1,kp(n)),n=e.cancelPendingCommit,n!==null&&(e.cancelPendingCommit=null,n()),Md=0,Xd(),cd=e,z=n=Ki(e.current,null),B=t,ld=0,ud=null,dd=!1,fd=bt(e,t),pd=!1,bd=yd=vd=_d=gd=hd=0,Sd=xd=null,Cd=!1,md=xt(e,t),Ii(),n}function Qd(e,t){L=null,C.H=bc,t===$a||t===to?(t=so(),ld=3):t===eo?(t=so(),ld=4):ld=t===Rc?8:typeof t==`object`&&t&&typeof t.then==`function`?6:1,ud=t,z===null&&(hd=1,Mc(e,A(t,e.current)))}function $d(){var e=Fo.current;return e===null?!0:(B&4194048)===B?Io===null:(B&62914560)===B||B&536870912?e===Io:!1}function ef(){var e=C.H;return C.H=bc,e===null?bc:e}function tf(){var e=C.A;return C.A=od,e}function nf(){hd=4,dd||(B&4194048)!==B&&Fo.current!==null||(fd=!0),!(gd&134217727)&&!(_d&134217727)||cd===null||Jd(cd,B,yd,!1)}function rf(e,t,n){var r=R;R|=2;var i=ef(),a=tf();(cd!==e||B!==t)&&(Dd=null,Zd(e,t)),t=!1;var o=hd;a:do try{if(ld!==0&&z!==null){var s=z,c=ud;switch(ld){case 8:Xd(),o=6;break a;case 3:case 2:case 9:case 6:Fo.current===null&&(t=!0);var l=ld;if(ld=0,ud=null,uf(e,s,c,l),n&&fd){o=0;break a}break;default:l=ld,ld=0,ud=null,uf(e,s,c,l)}}af(),o=hd;break}catch(t){Qd(e,t)}while(1);return t&&e.shellSuspendCounter++,xa=ba=null,R=r,C.H=i,C.A=a,z===null&&(cd=null,B=0,Ii()),o}function af(){for(;z!==null;)cf(z)}function of(e,t){var n=R;R|=2;var r=ef(),a=tf();cd!==e||B!==t?(Dd=null,Ed=$e()+500,Zd(e,t)):fd=bt(e,t);a:do try{if(ld!==0&&z!==null){t=z;var o=ud;b:switch(ld){case 1:ld=0,ud=null,uf(e,t,o,1);break;case 2:case 9:if(ro(o)){ld=0,ud=null,lf(t);break}t=function(){ld!==2&&ld!==9||cd!==e||(ld=7),Lf(e)},o.then(t,t);break a;case 3:ld=7;break a;case 4:ld=5;break a;case 7:ro(o)?(ld=0,ud=null,lf(t)):(ld=0,ud=null,uf(e,t,o,7));break;case 5:var s=null;switch(z.tag){case 26:s=z.memoizedState;case 5:case 27:var c=z;if(s?sh(s):c.stateNode.complete){ld=0,ud=null;var l=c.sibling;if(l!==null)z=l;else{var u=c.return;u===null?z=null:(z=u,df(u))}break b}}ld=0,ud=null,uf(e,t,o,5);break;case 6:ld=0,ud=null,uf(e,t,o,6);break;case 8:Xd(),hd=6;break a;default:throw Error(i(462))}}sf();break}catch(t){Qd(e,t)}while(1);return xa=ba=null,C.H=r,C.A=a,R=n,z===null?(cd=null,B=0,Ii(),hd):0}function sf(){for(;z!==null&&!Qe();)cf(z)}function cf(e){var t=vl(e.alternate,e,md);e.memoizedProps=e.pendingProps,t===null?df(e):z=t}function lf(e){var t=e,n=t.alternate;switch(t.tag){case 15:case 0:t=Qc(n,t,t.pendingProps,t.type,void 0,B);break;case 11:t=Qc(n,t,t.pendingProps,t.type.render,t.ref,B);break;case 5:us(t);var r=t;r===ca&&(F?(ma(r),r.tag===5&&r.stateNode!=null&&(la=r.stateNode)):(ma(r),F=!0));default:Dl(n,t),t=z=qi(t,md),t=vl(n,t,md)}e.memoizedProps=e.pendingProps,t===null?df(e):z=t}function uf(e,t,n,r){xa=ba=null,us(t),lo=null,uo=0;var i=t.return;try{if(Lc(e,i,t,n,B)){hd=1,Mc(e,A(n,e.current)),z=null;return}}catch(t){if(i!==null)throw z=i,t;hd=1,Mc(e,A(n,e.current)),z=null;return}t.flags&32768?(F||r===1?e=!0:fd||B&536870912?e=!1:(dd=e=!0,(r===2||r===9||r===3||r===6)&&(r=Fo.current,r!==null&&r.tag===13&&(r.flags|=16384))),ff(t,e)):df(t)}function df(e){var t=e;do{if(t.flags&32768){ff(t,dd);return}e=t.return;var n=Tl(t.alternate,t,md);if(n!==null){z=n;return}if(t=t.sibling,t!==null){z=t;return}z=t=e}while(t!==null);hd===0&&(hd=5)}function ff(e,t){do{var n=El(e.alternate,e);if(n!==null){n.flags&=32767,z=n;return}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&(e=e.sibling,e!==null)){z=e;return}z=e=n}while(e!==null);hd=6,z=null}function pf(e,t,n,r,a,o,s,c,l,u,d,f){e.cancelPendingCommit=null;do xf();while(kd!==0);if(R&6)throw Error(i(327));if(t!==null){if(t===e.current)throw Error(i(177));e===cd&&(z=cd=null,B=0),jd=t,Ad=e,Md=n,Pd=a,Fd=r,mf(e,t,n,s,c,l,f)}}function mf(e,t,n,r,i,a,o){var s=t.lanes|t.childLanes;if(Nd=s,s|=Fi,Et(e,n,s,r,i,a),Ld=null,(n&335544064)===n?(Rd=Ba(e),r=10262):(Rd=null,r=10256),(t.subtreeFlags&r)!==0||(t.flags&r)!==0?(e.callbackNode=null,e.callbackPriority=0,Af(rt,function(){return Sf(),null})):(e.callbackNode=null,e.callbackPriority=0),Kl=!1,r=!!(t.flags&13878),t.subtreeFlags&13878||r){r=C.T,C.T=null,i=Te.p,Te.p=2,a=R,R|=4;try{xu(e,t,n)}finally{R=a,Te.p=i,C.T=r}}kd=1,Kl?Id=Wp(o,e.containerInfo,Rd,_f,vf,gf,yf,Sf,hf,null,null):(_f(),vf(),yf())}function hf(e){if(kd!==0){var t=Ad.onRecoverableError;t(e,{componentStack:null})}}function gf(){kd===3&&(kd=0,Hu(jd,Ad),kd=4)}function _f(){if(kd===1){kd=0;var e=Ad,t=jd,n=Md,r=!!(t.flags&13878);if(t.subtreeFlags&13878||r){r=C.T,C.T=null;var i=Te.p;Te.p=2;var a=R;R|=4;try{vu=yu=!1,Ru(t,e,n),n=bp;var o=ai(e.containerInfo),s=n.focusedElem,c=n.selectionRange;if(o!==s&&s&&s.ownerDocument&&ii(s.ownerDocument.documentElement,s)){if(c!==null&&oi(s)){var l=c.start,u=c.end;if(u===void 0&&(u=l),`selectionStart`in s)s.selectionStart=l,s.selectionEnd=Math.min(u,s.value.length);else{var d=s.ownerDocument||document,f=d&&d.defaultView||window;if(f.getSelection){var p=f.getSelection(),m=s.textContent.length,h=Math.min(c.start,m),g=c.end===void 0?h:Math.min(c.end,m);!p.extend&&h>g&&(o=g,g=h,h=o);var _=ri(s,h),v=ri(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;s<d.length;s++){var b=d[s];b.element.scrollLeft=b.left,b.element.scrollTop=b.top}}Oh=!!yp,bp=yp=null}finally{R=a,Te.p=i,C.T=r}}e.current=t,kd=2}}function vf(){if(kd===2){kd=0;var e=Ad,t=jd,n=!!(t.flags&8772);if(t.subtreeFlags&8772||n){n=C.T,C.T=null;var r=Te.p;Te.p=2;var i=R;R|=4;try{Cu(e,t.alternate,t)}finally{R=i,Te.p=r,C.T=n}}kd=3}}function yf(){if(kd===4||kd===3){kd=0;var e=Id;Id=null,T();var t=Ad,n=jd,r=Md,i=Fd,a=(r&335544064)===r?10262:10256;if((n.subtreeFlags&a)!==0||(n.flags&a)!==0?kd=5:(kd=0,jd=Ad=null,bf(t,t.pendingLanes)),a=t.pendingLanes,a===0&&(Od=null),jt(r),n=n.stateNode,lt&&typeof lt.onCommitFiberRoot==`function`)try{lt.onCommitFiberRoot(ct,n,void 0,(n.current.flags&128)==128)}catch{}if(i!==null){n=C.T,a=Te.p,Te.p=2,C.T=null;try{for(var o=t.onRecoverableError,s=0;s<i.length;s++){var c=i[s];o(c.value,{componentStack:c.stack})}}finally{C.T=n,Te.p=a}}if(i=Ld,o=Rd,Rd=null,i!==null&&(Ld=null,o===null&&(o=[]),e!==null))for(c=0;c<i.length;c++)n=(0,i[c])(o),n!==void 0&&e.finished.finally(n);Md&3&&xf(),Lf(t),a=t.pendingLanes,r&261930&&a&42?t===Bd?zd++:(zd=0,Bd=t):(zd=0,Bd=null),Rf(0,!1)}}function bf(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,La(t)))}function xf(){return Id!==null&&(Id.skipTransition(),Id=null),_f(),vf(),yf(),Sf()}function Sf(){if(kd!==5)return!1;var e=Ad,t=Nd;Nd=0;var n=jt(Md),r=C.T,a=Te.p;try{Te.p=32>n?32:n,C.T=null,n=Pd,Pd=null;var o=Ad,s=Md;if(kd=0,jd=Ad=null,Md=0,R&6)throw Error(i(331));var c=R;if(R|=4,rd(o.current),Yu(o,o.current,s,n),R=c,Rf(0,!1),lt&&typeof lt.onPostCommitFiberRoot==`function`)try{lt.onPostCommitFiberRoot(ct,o)}catch{}return!0}finally{Te.p=a,C.T=r,bf(e,t)}}function Cf(e,t,n){t=A(n,t),t=Pc(e.stateNode,t,2),e=So(e,t,2),e!==null&&(Tt(e,2),Lf(e))}function wf(e,t,n){if(e.tag===3)Cf(e,e,n);else for(;t!==null;){if(t.tag===3){Cf(t,e,n);break}if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(Od===null||!Od.has(r))){e=A(n,e),n=Fc(2),r=So(t,n,2),r!==null&&(Ic(n,r,t,e),Tt(r,2),Lf(r));break}}t=t.return}}function Tf(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new sd;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(pd=!0,i.add(n),e=Ef.bind(null,e,t,n),t.then(e,e))}function Ef(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,cd===e&&(B&n)===n&&(hd===4||hd===3&&(B&62914560)===B&&300>$e()-wd?R&2?vd|=n:Zd(e,0):vd|=n,bd===B&&(bd=0)),Lf(e)}function Df(e,t){t===0&&(t=Ct()),e=zi(e,t),e!==null&&(Tt(e,t),Lf(e))}function Of(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Df(e,n)}function kf(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(i(314))}r!==null&&r.delete(t),Df(e,n)}function Af(e,t){return Ye(e,t)}var jf=null,Mf=null,Nf=!1,Pf=!1,Ff=!1,If=0;function Lf(e){e!==Mf&&e.next===null&&(Mf===null?jf=Mf=e:Mf=Mf.next=e),Pf=!0,Nf||(Nf=!0,Wf())}function Rf(e,t){if(!Ff&&Pf){Ff=!0;do for(var n=!1,r=jf;r!==null;){if(!t){if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-dt(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,Uf(r,a))}else a=B,a=yt(r,r===cd?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||bt(r,a)||(n=!0,Uf(r,a))}r=r.next}while(n);Ff=!1}}function zf(){Bf()}function Bf(){Pf=Nf=!1;var e=0;If!==0&&Dp()&&(e=If);for(var t=$e(),n=null,r=jf;r!==null;){var i=r.next,a=Vf(r,t);a===0?(r.next=null,n===null?jf=i:n.next=i,i===null&&(Mf=n)):(n=r,(e!==0||a&3)&&(Pf=!0)),r=i}kd!==0&&kd!==5||Rf(e,!1),If!==0&&(If=0)}function Vf(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0<a;){var o=31-dt(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=St(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}if(t=cd,n=B,n=yt(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r=e.callbackNode,n===0||e===t&&(ld===2||ld===9)||e.cancelPendingCommit!==null)return r!==null&&r!==null&&Ze(r),e.callbackNode=null,e.callbackPriority=0;if(!(n&3)||bt(e,n)){if(t=n&-n,t===e.callbackPriority)return t;switch(r!==null&&Ze(r),jt(n)){case 2:case 8:n=nt;break;case 32:n=rt;break;case 268435456:n=at;break;default:n=rt}return r=Hf.bind(null,e),n=Ye(n,r),e.callbackPriority=t,e.callbackNode=n,t}return r!==null&&r!==null&&Ze(r),e.callbackPriority=2,e.callbackNode=null,2}function Hf(e,t){if(kd!==0&&kd!==5)return e.callbackNode=null,e.callbackPriority=0,null;var n=e.callbackNode;if(xf()&&e.callbackNode!==n)return null;var r=B;return r=yt(e,e===cd?r:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r===0?null:(Gd(e,r,t),Vf(e,$e()),e.callbackNode!=null&&e.callbackNode===n?Hf.bind(null,e):null)}function Uf(e,t){if(xf())return null;Gd(e,t,!0)}function Wf(){Mp(function(){R&6?Ye(tt,zf):Bf()})}function Gf(){if(If===0){var e=Ua;e===0&&(e=ht,ht<<=1,!(ht&261888)&&(ht=256)),If=e}return If}function Kf(e){return e==null||typeof e==`symbol`||typeof e==`boolean`?null:typeof e==`function`?e:kn(e)}function qf(e,t,n,r,i){if(t===`submit`&&n&&n.stateNode===i){var a=Kf((i[It]||null).action),o=r.submitter;o&&(t=(t=o[It]||null)?Kf(t.formAction):o.getAttribute(`formAction`),t!==null&&(a=t,o=null));var s=new Zn(`action`,`action`,null,r,i);e.push({event:s,listeners:[{instance:null,listener:function(){if(r.defaultPrevented){if(If!==0){var e=new FormData(i,o);oc(n,{pending:!0,data:e,method:i.method,action:a},null,e)}}else typeof a==`function`&&(s.preventDefault(),e=new FormData(i,o),oc(n,{pending:!0,data:e,method:i.method,action:a},a,e))},currentTarget:i}]})}}for(var Jf=0;Jf<Ei.length;Jf++){var Yf=Ei[Jf];Di(Yf.toLowerCase(),`on`+(Yf[0].toUpperCase()+Yf.slice(1)))}Di(vi,`onAnimationEnd`),Di(yi,`onAnimationIteration`),Di(bi,`onAnimationStart`),Di(`dblclick`,`onDoubleClick`),Di(`focusin`,`onFocus`),Di(`focusout`,`onBlur`),Di(xi,`onTransitionRun`),Di(Si,`onTransitionStart`),Di(Ci,`onTransitionCancel`),Di(wi,`onTransitionEnd`),$t(`onMouseEnter`,[`mouseout`,`mouseover`]),$t(`onMouseLeave`,[`mouseout`,`mouseover`]),$t(`onPointerEnter`,[`pointerout`,`pointerover`]),$t(`onPointerLeave`,[`pointerout`,`pointerover`]),Qt(`onChange`,`change click focusin focusout input keydown keyup selectionchange`.split(` `)),Qt(`onSelect`,`focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange`.split(` `)),Qt(`onBeforeInput`,[`compositionend`,`keypress`,`textInput`,`paste`]),Qt(`onCompositionEnd`,`compositionend focusout keydown keypress keyup mousedown`.split(` `)),Qt(`onCompositionStart`,`compositionstart focusout keydown keypress keyup mousedown`.split(` `)),Qt(`onCompositionUpdate`,`compositionupdate focusout keydown keypress keyup mousedown`.split(` `));var Xf=`abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting`.split(` `),Zf=new Set(`beforetoggle cancel close invalid load scroll scrollend toggle`.split(` `).concat(Xf));function Qf(e,t){t=!!(t&4);for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;a:{var a=void 0;if(t)for(var o=r.length-1;0<=o;o--){var s=r[o],c=s.instance,l=s.currentTarget;if(s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Mi(e)}i.currentTarget=null,a=c}else for(o=0;o<r.length;o++){if(s=r[o],c=s.instance,l=s.currentTarget,s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Mi(e)}i.currentTarget=null,a=c}}}}function V(e,t){var n=t[Rt];n===void 0&&(n=t[Rt]=new Set);var r=e+`__bubble`;n.has(r)||(np(t,e,2,!1),n.add(r))}function $f(e,t,n){var r=0;t&&(r|=4),np(n,e,r,t)}var ep=`_reactListening`+Math.random().toString(36).slice(2);function tp(e){if(!e[ep]){e[ep]=!0,Xt.forEach(function(t){t!==`selectionchange`&&(Zf.has(t)||$f(t,!1,e),$f(t,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[ep]||(t[ep]=!0,$f(`selectionchange`,!1,t))}}function np(e,t,n,r){switch(Fh(t)){case 2:var i=kh;break;case 8:i=Ah;break;default:i=jh}n=i.bind(null,t,n,e),i=void 0,!Bn||t!==`touchstart`&&t!==`touchmove`&&t!==`wheel`||(i=!0),r?i===void 0?e.addEventListener(t,n,!0):e.addEventListener(t,n,{capture:!0,passive:i}):i===void 0?e.addEventListener(t,n,!1):e.addEventListener(t,n,{passive:i})}function rp(e,t,n,r,i){var a=r;if(!(t&1)&&!(t&2)&&r!==null)a:for(;;){if(r===null)return;var s=r.tag;if(s===3||s===4){var c=r.stateNode.containerInfo;if(c===i)break;if(s===4)for(s=r.return;s!==null;){var l=s.tag;if((l===3||l===4)&&s.stateNode.containerInfo===i)return;s=s.return}for(;c!==null;){if(s=Gt(c),s===null)return;if(l=s.tag,l===5||l===6||l===26||l===27){r=a=s;continue a}c=c.parentNode}}r=r.return}Ln(function(){var r=a,i=Mn(n),s=[];a:{var c=Ti.get(e);if(c!==void 0){var l=Zn,u=e;switch(e){case`keypress`:if(Kn(n)===0)break a;case`keydown`:case`keyup`:l=hr;break;case`focusin`:u=`focus`,l=or;break;case`focusout`:u=`blur`,l=or;break;case`beforeblur`:case`afterblur`:l=or;break;case`click`:if(n.button===2)break a;case`auxclick`:case`dblclick`:case`mousedown`:case`mousemove`:case`mouseup`:case`mouseout`:case`mouseover`:case`contextmenu`:l=ir;break;case`drag`:case`dragend`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`dragstart`:case`drop`:l=ar;break;case`touchcancel`:case`touchend`:case`touchmove`:case`touchstart`:l=vr;break;case vi:case yi:case bi:l=sr;break;case wi:l=yr;break;case`scroll`:case`scrollend`:l=$n;break;case`wheel`:l=br;break;case`copy`:case`cut`:case`paste`:l=cr;break;case`gotpointercapture`:case`lostpointercapture`:case`pointercancel`:case`pointerdown`:case`pointermove`:case`pointerout`:case`pointerover`:case`pointerup`:l=gr;break;case`submit`:l=_r;break;case`toggle`:case`beforetoggle`:l=xr}var d=!!(t&4),f=!d&&(e===`scroll`||e===`scrollend`),p=d?c===null?null:c+`Capture`:c;d=[];for(var m=r,h;m!==null;){var g=m;if(h=g.stateNode,g=g.tag,g!==5&&g!==26&&g!==27||h===null||p===null||(g=Rn(m,p),g!=null&&d.push(ip(m,g,h))),f)break;m=m.return}0<d.length&&(c=new l(c,u,null,n,i),s.push({event:c,listeners:d}))}}if(!(t&7)){a:{if(l=e===`mouseover`||e===`pointerover`,c=e===`mouseout`||e===`pointerout`,l&&n!==jn&&(u=n.relatedTarget||n.fromElement)&&(Gt(u)||u[Lt]))break a;(c||l)&&(u=i.window===i?i:(l=i.ownerDocument)?l.defaultView||l.parentWindow:window,c?(l=n.relatedTarget||n.toElement,c=r,l=l?Gt(l):null,l!==null&&(f=o(l),d=l.tag,l!==f||d!==5&&d!==27&&d!==6)&&(l=null)):(c=null,l=r),c!==l&&(d=ir,g=`onMouseLeave`,p=`onMouseEnter`,m=`mouse`,(e===`pointerout`||e===`pointerover`)&&(d=gr,g=`onPointerLeave`,p=`onPointerEnter`,m=`pointer`),f=c==null?u:qt(c),h=l==null?u:qt(l),u=new d(g,m+`leave`,c,n,i),u.target=f,u.relatedTarget=h,g=null,Gt(i)===r&&(d=new d(p,m+`enter`,l,n,i),d.target=h,d.relatedTarget=f,g=d),f=g,d=c&&l?ne(c,l,op):null,c!==null&&sp(s,u,c,d,!1),l!==null&&f!==null&&sp(s,f,l,d,!0)))}a:{if(c=r?qt(r):window,l=c.nodeName&&c.nodeName.toLowerCase(),l===`select`||l===`input`&&c.type===`file`)var _=Vr;else if(Fr(c)){if(Hr)_=Zr;else{_=Yr;var v=Jr}}else l=c.nodeName,!l||l.toLowerCase()!==`input`||c.type!==`checkbox`&&c.type!==`radio`?r&&En(r.elementType)&&(_=Vr):_=Xr;if(_&&=_(e,r)){Ir(s,_,n,i);break a}v&&v(e,c,r)}switch(v=r?qt(r):window,e){case`focusin`:(Fr(v)||v.contentEditable===`true`)&&(ci=v,li=r,ui=null);break;case`focusout`:ui=li=ci=null;break;case`mousedown`:di=!0;break;case`contextmenu`:case`mouseup`:case`dragend`:di=!1,fi(s,n,i);break;case`selectionchange`:if(si)break;case`keydown`:case`keyup`:fi(s,n,i)}var y;if(Cr)b:{switch(e){case`compositionstart`:var b=`onCompositionStart`;break b;case`compositionend`:b=`onCompositionEnd`;break b;case`compositionupdate`:b=`onCompositionUpdate`;break b}b=void 0}else jr?kr(e,n)&&(b=`onCompositionEnd`):e===`keydown`&&n.keyCode===229&&(b=`onCompositionStart`);b&&(Er&&n.locale!==`ko`&&(jr||b!==`onCompositionStart`?b===`onCompositionEnd`&&jr&&(y=Gn()):(Hn=i,Un=`value`in Hn?Hn.value:Hn.textContent,jr=!0)),v=ap(r,b),0<v.length&&(b=new lr(b,e,null,n,i),s.push({event:b,listeners:v}),y?b.data=y:(y=Ar(n),y!==null&&(b.data=y)))),(y=Tr?Mr(e,n):Nr(e,n))&&(b=ap(r,`onBeforeInput`),0<b.length&&(v=new lr(`onBeforeInput`,`beforeinput`,null,n,i),s.push({event:v,listeners:b}),v.data=y)),qf(s,e,r,n,i)}Qf(s,t)})}function ip(e,t,n){return{instance:e,listener:t,currentTarget:n}}function ap(e,t){for(var n=t+`Capture`,r=[];e!==null;){var i=e,a=i.stateNode;if(i=i.tag,i!==5&&i!==26&&i!==27||a===null||(i=Rn(e,n),i!=null&&r.unshift(ip(e,i,a)),i=Rn(e,t),i!=null&&r.push(ip(e,i,a))),e.tag===3)return r;e=e.return}return[]}function op(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function sp(e,t,n,r,i){for(var a=t._reactName,o=[];n!==null&&n!==r;){var s=n,c=s.alternate,l=s.stateNode;if(s=s.tag,c!==null&&c===r)break;s!==5&&s!==26&&s!==27||l===null||(c=l,i?(l=Rn(n,a),l!=null&&o.unshift(ip(n,l,c))):i||(l=Rn(n,a),l!=null&&o.push(ip(n,l,c)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var cp=/\r\n?/g,lp=/\u0000|\uFFFD/g;function up(e){return(typeof e==`string`?e:``+e).replace(cp,`
|
|
10
|
+
`).replace(lp,``)}function dp(e,t){return t=up(t),up(e)===t}function fp(e,t,n,r,a,o){switch(n){case`children`:if(typeof r==`string`)t===`body`||t===`textarea`&&r===``||Sn(e,r);else if(typeof r==`number`||typeof r==`bigint`)t!==`body`&&Sn(e,``+r);else return;break;case`className`:sn(e,`class`,r);break;case`tabIndex`:sn(e,`tabindex`,r);break;case`dir`:case`role`:case`viewBox`:case`width`:case`height`:sn(e,n,r);break;case`style`:Tn(e,r,o);return;case`data`:if(t!==`object`){sn(e,`data`,r);break}case`src`:case`href`:if(r===``&&(t!==`a`||n!==`href`)||r==null||typeof r==`function`||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=kn(r),e.setAttribute(n,r);break;case`action`:case`formAction`:if(typeof r==`function`){e.setAttribute(n,`javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')`);break}if(typeof o==`function`&&(n===`formAction`?(t!==`input`&&fp(e,t,`name`,a.name,a,null),fp(e,t,`formEncType`,a.formEncType,a,null),fp(e,t,`formMethod`,a.formMethod,a,null),fp(e,t,`formTarget`,a.formTarget,a,null)):(fp(e,t,`encType`,a.encType,a,null),fp(e,t,`method`,a.method,a,null),fp(e,t,`target`,a.target,a,null))),r==null||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=kn(r),e.setAttribute(n,r);break;case`onClick`:r!=null&&(e.onclick=An);return;case`onScroll`:r!=null&&V(`scroll`,e);return;case`onScrollEnd`:r!=null&&V(`scrollend`,e);return;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));o?.__html!==n&&(e.innerHTML=n)}}break;case`multiple`:e.multiple=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`muted`:e.muted=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:break;case`autoFocus`:break;case`xlinkHref`:if(r==null||typeof r==`function`||typeof r==`boolean`||typeof r==`symbol`){e.removeAttribute(`xlink:href`);break}n=kn(r),e.setAttributeNS(`http://www.w3.org/1999/xlink`,`xlink:href`,n);break;case`contentEditable`:case`spellCheck`:case`draggable`:case`value`:case`autoReverse`:case`externalResourcesRequired`:case`focusable`:case`preserveAlpha`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,r):e.removeAttribute(n);break;case`inert`:case`allowFullScreen`:case`async`:case`autoPlay`:case`controls`:case`credentialless`:case`default`:case`defer`:case`disabled`:case`disablePictureInPicture`:case`disableRemotePlayback`:case`formNoValidate`:case`hidden`:case`loop`:case`noModule`:case`noValidate`:case`open`:case`playsInline`:case`readOnly`:case`required`:case`reversed`:case`scoped`:case`seamless`:case`itemScope`:r&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``):e.removeAttribute(n);break;case`capture`:case`download`:!0===r?e.setAttribute(n,``):!1!==r&&r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,r):e.removeAttribute(n);break;case`cols`:case`rows`:case`size`:case`span`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`&&!isNaN(r)&&1<=r?e.setAttribute(n,r):e.removeAttribute(n);break;case`rowSpan`:case`start`:r==null||typeof r==`function`||typeof r==`symbol`||isNaN(r)?e.removeAttribute(n):e.setAttribute(n,r);break;case`popover`:V(`beforetoggle`,e),V(`toggle`,e),on(e,`popover`,r);break;case`xlinkActuate`:cn(e,`http://www.w3.org/1999/xlink`,`xlink:actuate`,r);break;case`xlinkArcrole`:cn(e,`http://www.w3.org/1999/xlink`,`xlink:arcrole`,r);break;case`xlinkRole`:cn(e,`http://www.w3.org/1999/xlink`,`xlink:role`,r);break;case`xlinkShow`:cn(e,`http://www.w3.org/1999/xlink`,`xlink:show`,r);break;case`xlinkTitle`:cn(e,`http://www.w3.org/1999/xlink`,`xlink:title`,r);break;case`xlinkType`:cn(e,`http://www.w3.org/1999/xlink`,`xlink:type`,r);break;case`xmlBase`:cn(e,`http://www.w3.org/XML/1998/namespace`,`xml:base`,r);break;case`xmlLang`:cn(e,`http://www.w3.org/XML/1998/namespace`,`xml:lang`,r);break;case`xmlSpace`:cn(e,`http://www.w3.org/XML/1998/namespace`,`xml:space`,r);break;case`is`:on(e,`is`,r);break;case`innerText`:case`textContent`:return;default:if(!(2<n.length)||n[0]!==`o`&&n[0]!==`O`||n[1]!==`n`&&n[1]!==`N`)n=Dn.get(n)||n,on(e,n,r);else return}D=!0}function pp(e,t,n,r,a,o){switch(n){case`style`:Tn(e,r,o);return;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));o?.__html!==n&&(e.innerHTML=n)}}break;case`children`:if(typeof r==`string`)Sn(e,r);else if(typeof r==`number`||typeof r==`bigint`)Sn(e,``+r);else return;break;case`onScroll`:r!=null&&V(`scroll`,e);return;case`onScrollEnd`:r!=null&&V(`scrollend`,e);return;case`onClick`:r!=null&&(e.onclick=An);return;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`innerHTML`:case`ref`:return;case`innerText`:case`textContent`:return;default:if(!Zt.hasOwnProperty(n))a:{if(n[0]===`o`&&n[1]===`n`&&(a=n.endsWith(`Capture`),o=n.slice(2,a?n.length-7:void 0),t=e[It]||null,t=t==null?null:t[n],typeof t==`function`&&e.removeEventListener(o,t,a),typeof r==`function`)){typeof t!=`function`&&t!==null&&(n in e?e[n]=null:e.hasAttribute(n)&&e.removeAttribute(n)),e.addEventListener(o,r,a);break a}D=!0,n in e?e[n]=r:!0===r?e.setAttribute(n,``):on(e,n,r)}return}D=!0}function mp(e,t,n){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`img`:V(`error`,e),V(`load`,e);var r=!1,a=!1,o;for(o in n)if(n.hasOwnProperty(o)){var s=n[o];if(s!=null)switch(o){case`src`:r=!0;break;case`srcSet`:a=!0;break;case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:fp(e,t,o,s,n,null)}}a&&fp(e,t,`srcSet`,n.srcSet,n,null),r&&fp(e,t,`src`,n.src,n,null);return;case`input`:V(`invalid`,e);var c=o=s=a=null,l=null,u=null;for(r in n)if(n.hasOwnProperty(r)){var d=n[r];if(d!=null)switch(r){case`name`:a=d;break;case`type`:s=d;break;case`checked`:l=d;break;case`defaultChecked`:u=d;break;case`value`:o=d;break;case`defaultValue`:c=d;break;case`children`:case`dangerouslySetInnerHTML`:if(d!=null)throw Error(i(137,t));break;default:fp(e,t,r,d,n,null)}}_n(e,o,c,l,u,s,a,!1);return;case`select`:for(a in V(`invalid`,e),r=s=o=null,n)if(n.hasOwnProperty(a)&&(c=n[a],c!=null))switch(a){case`value`:o=c;break;case`defaultValue`:s=c;break;case`multiple`:r=c;default:fp(e,t,a,c,n,null)}t=o,n=s,e.multiple=!!r,t==null?n!=null&&yn(e,!!r,n,!0):yn(e,!!r,t,!1);return;case`textarea`:for(s in V(`invalid`,e),o=a=r=null,n)if(n.hasOwnProperty(s)&&(c=n[s],c!=null))switch(s){case`value`:r=c;break;case`defaultValue`:a=c;break;case`children`:o=c;break;case`dangerouslySetInnerHTML`:if(c!=null)throw Error(i(91));break;default:fp(e,t,s,c,n,null)}xn(e,r,a,o);return;case`option`:for(l in n)if(n.hasOwnProperty(l)&&(r=n[l],r!=null))switch(l){case`selected`:e.selected=r&&typeof r!=`function`&&typeof r!=`symbol`;break;default:fp(e,t,l,r,n,null)}return;case`dialog`:V(`beforetoggle`,e),V(`toggle`,e),V(`cancel`,e),V(`close`,e);break;case`iframe`:case`object`:V(`load`,e);break;case`video`:case`audio`:for(r=0;r<Xf.length;r++)V(Xf[r],e);break;case`image`:V(`error`,e),V(`load`,e);break;case`details`:V(`toggle`,e);break;case`embed`:case`source`:case`link`:V(`error`,e),V(`load`,e);case`area`:case`base`:case`br`:case`col`:case`hr`:case`keygen`:case`meta`:case`param`:case`track`:case`wbr`:case`menuitem`:for(u in n)if(n.hasOwnProperty(u)&&(r=n[u],r!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:fp(e,t,u,r,n,null)}return;default:if(En(t)){for(d in n)n.hasOwnProperty(d)&&(r=n[d],r!==void 0&&pp(e,t,d,r,n,void 0));return}}for(c in n)n.hasOwnProperty(c)&&(r=n[c],r!=null&&fp(e,t,c,r,n,null))}var hp={};function gp(e,t,n,r){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`input`:var a=null,o=null,s=null,c=null,l=null,u=null,d=null;for(m in n){var f=n[m];if(n.hasOwnProperty(m)&&f!=null)switch(m){case`checked`:break;case`value`:break;case`defaultValue`:l=f;default:r.hasOwnProperty(m)||fp(e,t,m,null,r,f)}}for(var p in r){var m=r[p];if(f=n[p],r.hasOwnProperty(p)&&(m!=null||f!=null))switch(p){case`type`:m!==f&&(D=!0),o=m;break;case`name`:m!==f&&(D=!0),a=m;break;case`checked`:m!==f&&(D=!0),u=m;break;case`defaultChecked`:m!==f&&(D=!0),d=m;break;case`value`:m!==f&&(D=!0),s=m;break;case`defaultValue`:m!==f&&(D=!0),c=m;break;case`children`:case`dangerouslySetInnerHTML`:if(m!=null)throw Error(i(137,t));break;default:m!==f&&fp(e,t,p,m,r,f)}}gn(e,s,c,l,u,d,o,a);return;case`select`:for(o in m=s=c=p=null,n)if(l=n[o],n.hasOwnProperty(o)&&l!=null)switch(o){case`value`:break;case`multiple`:m=l;default:r.hasOwnProperty(o)||fp(e,t,o,null,r,l)}for(a in r)if(o=r[a],l=n[a],r.hasOwnProperty(a)&&(o!=null||l!=null))switch(a){case`value`:o!==l&&(D=!0),p=o;break;case`defaultValue`:o!==l&&(D=!0),c=o;break;case`multiple`:o!==l&&(D=!0),s=o;default:o!==l&&fp(e,t,a,o,r,l)}t=c,n=s,r=m,p==null?!!r!=!!n&&(t==null?yn(e,!!n,n?[]:``,!1):yn(e,!!n,t,!0)):yn(e,!!n,p,!1);return;case`textarea`:for(c in m=p=null,n)if(a=n[c],n.hasOwnProperty(c)&&a!=null&&!r.hasOwnProperty(c))switch(c){case`value`:break;case`children`:break;default:fp(e,t,c,null,r,a)}for(s in r)if(a=r[s],o=n[s],r.hasOwnProperty(s)&&(a!=null||o!=null))switch(s){case`value`:a!==o&&(D=!0),p=a;break;case`defaultValue`:a!==o&&(D=!0),m=a;break;case`children`:break;case`dangerouslySetInnerHTML`:if(a!=null)throw Error(i(91));break;default:a!==o&&fp(e,t,s,a,r,o)}bn(e,p,m);return;case`option`:for(var h in n)if(p=n[h],n.hasOwnProperty(h)&&p!=null&&!r.hasOwnProperty(h))switch(h){case`selected`:e.selected=!1;break;default:fp(e,t,h,null,r,p)}for(l in r)if(p=r[l],m=n[l],r.hasOwnProperty(l)&&p!==m&&(p!=null||m!=null))switch(l){case`selected`:p!==m&&(D=!0),e.selected=p&&typeof p!=`function`&&typeof p!=`symbol`;break;default:fp(e,t,l,p,r,m)}return;case`img`:case`link`:case`area`:case`base`:case`br`:case`col`:case`embed`:case`hr`:case`keygen`:case`meta`:case`param`:case`source`:case`track`:case`wbr`:case`menuitem`:for(var g in n)p=n[g],n.hasOwnProperty(g)&&p!=null&&!r.hasOwnProperty(g)&&fp(e,t,g,null,r,p);for(u in r)if(p=r[u],m=n[u],r.hasOwnProperty(u)&&p!==m&&(p!=null||m!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:if(p!=null)throw Error(i(137,t));break;default:fp(e,t,u,p,r,m)}return;default:if(En(t)){for(var _ in n)p=n[_],n.hasOwnProperty(_)&&p!==void 0&&!r.hasOwnProperty(_)&&pp(e,t,_,void 0,r,p);for(d in r)p=r[d],m=n[d],!r.hasOwnProperty(d)||p===m||p===void 0&&m===void 0||pp(e,t,d,p,r,m);return}}for(var v in n)p=n[v],n.hasOwnProperty(v)&&p!=null&&!r.hasOwnProperty(v)&&fp(e,t,v,null,r,p);for(f in r)p=r[f],m=n[f],!r.hasOwnProperty(f)||p===m||p==null&&m==null||fp(e,t,f,p,r,m)}function _p(e){switch(e){case`css`:case`script`:case`font`:case`img`:case`image`:case`input`:case`link`:return!0;default:return!1}}function vp(){if(typeof performance.getEntriesByType==`function`){for(var e=0,t=0,n=performance.getEntriesByType(`resource`),r=0;r<n.length;r++){var i=n[r],a=i.transferSize,o=i.initiatorType,s=i.duration;if(a&&s&&_p(o)){for(o=0,s=i.responseEnd,r+=1;r<n.length;r++){var c=n[r],l=c.startTime;if(l>s)break;var u=c.transferSize,d=c.initiatorType;u&&_p(d)&&(c=c.responseEnd,o+=u*(c<s?1:(s-l)/(c-l)))}if(--r,t+=8*(a+o)/(i.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e==`number`)?e:5}var yp=null,bp=null;function xp(e){return e.nodeType===9?e:e.ownerDocument}function Sp(e){switch(e){case`http://www.w3.org/2000/svg`:return 1;case`http://www.w3.org/1998/Math/MathML`:return 2;default:return 0}}function Cp(e,t){if(e===0)switch(t){case`svg`:return 1;case`math`:return 2;default:return 0}return e===1&&t===`foreignObject`?0:e}function wp(e,t,n,r){return n=xp(n).createElement(e),n[Ft]=r,n[It]=t,mp(n,e,t),E(n),n}function Tp(e,t){return e===`textarea`||e===`noscript`||typeof t.children==`string`||typeof t.children==`number`||typeof t.children==`bigint`||typeof t.dangerouslySetInnerHTML==`object`&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Ep=null;function Dp(){var e=window.event;return e&&e.type===`popstate`?e!==Ep&&(Ep=e,!0):(Ep=null,!1)}var Op=typeof setTimeout==`function`?setTimeout:void 0,kp=typeof clearTimeout==`function`?clearTimeout:void 0,Ap=typeof Promise==`function`?Promise:void 0,jp=typeof requestAnimationFrame==`function`?requestAnimationFrame:Op,Mp=typeof queueMicrotask==`function`?queueMicrotask:Ap===void 0?Op:function(e){return Ap.resolve(null).then(e).catch(Np)};function Np(e){setTimeout(function(){throw e})}function Pp(e){return e===`head`}function Fp(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8){if(n=i.data,n===`/$`||n===`/&`){if(r===0){e.removeChild(i),eg(t);return}r--}else if(n===`$`||n===`$?`||n===`$~`||n===`$!`||n===`&`)r++;else if(n===`html`)km(e.ownerDocument.documentElement);else if(n===`head`){n=e.ownerDocument.head,km(n);for(var a=n.firstChild;a;){var o=a.nextSibling,s=a.nodeName;a[Ht]||s===`SCRIPT`||s===`STYLE`||s===`LINK`&&a.rel.toLowerCase()===`stylesheet`||n.removeChild(a),a=o}}else n===`body`&&km(e.ownerDocument.body)}n=i}while(n);eg(t)}function Ip(e,t){var n=e;e=0;do{var r=n.nextSibling;if(n.nodeType===1?t?(n._stashedDisplay=n.style.display,n.style.display=`none`):(n.style.display=n._stashedDisplay||``,n.getAttribute(`style`)===``&&n.removeAttribute(`style`)):n.nodeType===3&&(t?(n._stashedText=n.nodeValue,n.nodeValue=``):n.nodeValue=n._stashedText||``),r&&r.nodeType===8){if(n=r.data,n===`/$`){if(e===0)break;e--}else n!==`$`&&n!==`$?`&&n!==`$~`&&n!==`$!`||e++}n=r}while(n)}function Lp(e,t,n){if(t=CSS.escape(t)===t?t:`r-`+btoa(t).replace(/=/g,``),e.style.viewTransitionName=t,n!=null&&(e.style.viewTransitionClass=n),n=getComputedStyle(e),n.display===`inline`){if(t=e.getClientRects(),t.length===1)var r=1;else for(var i=r=0;i<t.length;i++){var a=t[i];0<a.width&&0<a.height&&r++}r===1&&(e=e.style,e.display=t.length===1?`inline-block`:`block`,e.marginTop=`-`+n.paddingTop,e.marginBottom=`-`+n.paddingBottom)}}function Rp(e,t){e=e.style,t=t.style;var n=t==null?null:t.hasOwnProperty(`viewTransitionName`)?t.viewTransitionName:t.hasOwnProperty(`view-transition-name`)?t[`view-transition-name`]:null;e.viewTransitionName=n==null||typeof n==`boolean`?``:(``+n).trim(),n=t==null?null:t.hasOwnProperty(`viewTransitionClass`)?t.viewTransitionClass:t.hasOwnProperty(`view-transition-class`)?t[`view-transition-class`]:null,e.viewTransitionClass=n==null||typeof n==`boolean`?``:(``+n).trim(),e.display===`inline-block`&&(t==null?e.display=e.margin=``:(n=t.display,e.display=n==null||typeof n==`boolean`?``:n,n=t.margin,n==null?(n=t.hasOwnProperty(`marginTop`)?t.marginTop:t[`margin-top`],e.marginTop=n==null||typeof n==`boolean`?``:n,t=t.hasOwnProperty(`marginBottom`)?t.marginBottom:t[`margin-bottom`],e.marginBottom=t==null||typeof t==`boolean`?``:t):e.margin=n))}function zp(e,t,n){return n=n.ownerDocument.defaultView,{rect:e,abs:t.position===`absolute`||t.position===`fixed`,clip:t.clipPath!==`none`||t.overflow!==`visible`||t.filter!==`none`||t.mask!==`none`||t.mask!==`none`||t.borderRadius!==`0px`,view:0<=e.bottom&&0<=e.right&&e.top<=n.innerHeight&&e.left<=n.innerWidth}}function Bp(e){return zp(e.getBoundingClientRect(),getComputedStyle(e),e)}function Vp(e){var t=e.getBoundingClientRect();t=new DOMRect(t.x+2e4,t.y+2e4,t.width,t.height);var n=getComputedStyle(e);return zp(t,n,e)}function Hp(e){return e.documentElement.clientHeight}function Up(e){this.addEventListener(`load`,e),this.addEventListener(`error`,e)}function Wp(e,t,n,r,i,a,o,s,c){var l=t.nodeType===9?t:t.ownerDocument;try{var u=l.startViewTransition({update:function(){var t=l.defaultView,n=t.navigation&&t.navigation.transition,o=l.fonts.status;r();var s=[];if(o===`loaded`&&(Hp(l),l.fonts.status===`loading`&&s.push(l.fonts.ready)),o=s.length,e!==null)for(var c=e.suspenseyImages,u=0,d=0;d<c.length;d++){var f=c[d];if(!f.complete){var p=f.getBoundingClientRect();if(0<p.bottom&&0<p.right&&p.top<t.innerHeight&&p.left<t.innerWidth){if(u+=ch(f),u>dh){s.length=o;break}f=new Promise(Up.bind(f)),s.push(f)}}}if(0<s.length)return t=Promise.race([Promise.all(s),new Promise(function(e){return setTimeout(e,500)})]).then(i,i),(n?Promise.allSettled([n.finished,t]):t).then(a,a);if(i(),n)return n.finished.then(a,a);a()},types:n});l.__reactViewTransition=u;var d=[];return u.ready.then(function(){for(var e=l.documentElement.getAnimations({subtree:!0}),t=0;t<e.length;t++){var n=e[t],r=n.effect,i=r.pseudoElement;if(i!=null&&i.startsWith(`::view-transition`)){d.push(n),n=r.getKeyframes();for(var a=i=void 0,s=!0,c=0;c<n.length;c++){var u=n[c],f=u.width;if(i===void 0)i=f;else if(i!==f){s=!1;break}if(f=u.height,a===void 0)a=f;else if(a!==f){s=!1;break}delete u.width,delete u.height,u.transform===`none`&&delete u.transform}s&&i!==void 0&&a!==void 0&&(r.setKeyframes(n),s=getComputedStyle(r.target,r.pseudoElement),s.width!==i||s.height!==a)&&(s=n[0],s.width=i,s.height=a,s=n[n.length-1],s.width=i,s.height=a,r.setKeyframes(n))}}o()},function(e){l.__reactViewTransition===u&&(l.__reactViewTransition=null);try{if(typeof e==`object`&&e)switch(e.name){case`InvalidStateError`:(e.message===`View transition was skipped because document visibility state is hidden.`||e.message===`Skipping view transition because document visibility state has become hidden.`||e.message===`Skipping view transition because viewport size changed.`||e.message===`Transition was aborted because of invalid state`)&&(e=null)}e!==null&&c(e)}finally{r(),i(),o()}}),u.finished.finally(function(){for(var e=0;e<d.length;e++)d[e].cancel();l.__reactViewTransition===u&&(l.__reactViewTransition=null),s()}),u}catch{return r(),i(),o(),null}}function Gp(e,t){this._scope=document.documentElement,this._selector=`::view-transition-`+e+`(`+t+`)`}Gp.prototype.animate=function(e,t){return t=typeof t==`number`?{duration:t}:re({},t),t.pseudoElement=this._selector,this._scope.animate(e,t)},Gp.prototype.getAnimations=function(){for(var e=this._scope,t=this._selector,n=e.getAnimations({subtree:!0}),r=[],i=0;i<n.length;i++){var a=n[i].effect;a!==null&&a.target===e&&a.pseudoElement===t&&r.push(n[i])}return r},Gp.prototype.getComputedStyle=function(){return getComputedStyle(this._scope,this._selector)};function Kp(e){return{name:e,group:new Gp(`group`,e),imagePair:new Gp(`image-pair`,e),old:new Gp(`old`,e),new:new Gp(`new`,e)}}function qp(e){this._fragmentFiber=e,this._observers=this._eventListeners=null}qp.prototype.addEventListener=function(e,t,n){var r=null,i=null;if(!(n!=null&&typeof n!=`boolean`&&(r=n.signal||null,r!==null&&r.aborted))){this._eventListeners===null&&(this._eventListeners=[]);var a=this._eventListeners;if(Qp(a,e,t,n)===-1){var o=this,s=t;n!=null&&typeof n!=`boolean`&&!0===n.once&&(s=function(r){o.removeEventListener(e,t,n),typeof t==`function`?t.call(this,r):t.handleEvent(r)}),r!==null&&(i=o.removeEventListener.bind(o,e,t,n),r.addEventListener(`abort`,i,{once:!0}),i=r.removeEventListener.bind(r,`abort`,i)),r=Xp(n),a.push({type:e,listener:t,optionsOrUseCapture:n,attachedListener:s,cleanup:i}),f(this._fragmentFiber.child,!1,Jp,e,s,r)}this._eventListeners=a}};function Jp(e,t,n,r){return _(e).addEventListener(t,n,r),!1}qp.prototype.removeEventListener=function(e,t,n){var r=this._eventListeners;if(r!==null&&(t=Qp(r,e,t,n),t!==-1)){var i=r[t];n=i.attachedListener;var a=i.cleanup;i=Xp(i.optionsOrUseCapture),f(this._fragmentFiber.child,!1,Yp,e,n,i),r.splice(t,1),a!==null&&a()}};function Yp(e,t,n,r){return _(e).removeEventListener(t,n,r),!1}function Xp(e){return e!=null&&typeof e!=`boolean`&&(!0===e.once||e.signal instanceof AbortSignal)?{capture:e.capture,passive:e.passive}:e}function Zp(e){return e==null?`c=0`:typeof e==`boolean`?`c=`+(e?`1`:`0`):`c=`+(e.capture?`1`:`0`)}function Qp(e,t,n,r){if(e.length===0)return-1;r=Zp(r);for(var i=0;i<e.length;i++){var a=e[i];if(a.type===t&&a.listener===n&&Zp(a.optionsOrUseCapture)===r)return i}return-1}qp.prototype.dispatchEvent=function(e){var t=p(this._fragmentFiber);if(t===null)return!0;t=_(t);var n=this._eventListeners;if(n!==null&&0<n.length||!e.bubbles){var r=t.nodeType===9?t.createComment(``):document.createTextNode(``);if(n)for(var i=0;i<n.length;i++){var a=n[i];r.addEventListener(a.type,a.attachedListener,Xp(a.optionsOrUseCapture))}if(t.appendChild(r),e=r.dispatchEvent(e),n)for(i=0;i<n.length;i++)a=n[i],r.removeEventListener(a.type,a.attachedListener,Xp(a.optionsOrUseCapture));return t.removeChild(r),e}return t.dispatchEvent(e)},qp.prototype.focus=function(e){f(this._fragmentFiber.child,!0,$p,e,void 0,void 0)};function $p(e,t){return e.tag!==6&&(e=_(e),Tm(e,t))}qp.prototype.focusLast=function(e){var t=[];f(this._fragmentFiber.child,!0,em,t,void 0,void 0);for(var n=t.length-1;0<=n&&!$p(t[n],e);n--);};function em(e,t){return t.push(e),!1}qp.prototype.blur=function(){var e=p(this._fragmentFiber);e!==null&&(e=_(e),e=xp(e).activeElement,e!==null&&f(this._fragmentFiber.child,!1,tm,e,void 0,void 0))};function tm(e,t){return e.tag!==6&&(e=_(e),e===t||e.contains(t)?(t.blur(),!0):!1)}qp.prototype.observeUsing=function(e){this._observers===null&&(this._observers=new Set),this._observers.add(e),f(this._fragmentFiber.child,!1,nm,e,void 0,void 0)};function nm(e,t){return e.tag===6||(e=_(e),t.observe(e)),!1}qp.prototype.unobserveUsing=function(e){var t=this._observers;if(t!==null&&t.has(e)){t.delete(e),f(this._fragmentFiber.child,!1,rm,e,void 0,void 0);for(var n=t=0;n<im.length;n++){var r=im[n];r.fragmentInstance===this&&r.observer===e?e.unobserve(r.instance):im[t++]=r}im.length=t}};function rm(e,t){return e.tag===6||(e=_(e),t.unobserve(e)),!1}var im=[],am=!1;function om(e,t,n){im.push({fragmentInstance:e,observer:t,instance:n}),am||(am=!0,Em(function(){am=!1;var e=im;im=[];for(var t=0;t<e.length;t++){var n=e[t];n.observer.unobserve(n.instance)}}))}qp.prototype.getClientRects=function(){var e=[];return f(this._fragmentFiber.child,!1,sm,e,void 0,void 0),e};function sm(e,t){if(e.tag===6){e=e.stateNode;var n=e.ownerDocument.createRange();n.selectNodeContents(e),t.push.apply(t,n.getClientRects())}else e=_(e),t.push.apply(t,e.getClientRects());return!1}qp.prototype.getRootNode=function(e){var t=p(this._fragmentFiber);return t===null?this:_(t).getRootNode(e)},qp.prototype.compareDocumentPosition=function(e){var t=p(this._fragmentFiber);if(t===null)return Node.DOCUMENT_POSITION_DISCONNECTED;var n=[];f(this._fragmentFiber.child,!1,em,n,void 0,void 0);var r=_(t);if(n.length===0){if(n=r,m(this._fragmentFiber)){a:{for(t=this._fragmentFiber.return;t!==null;){if(t.tag===4){t=t.stateNode.containerInfo;break a}if(t.tag===3||t.tag===5||t.tag===27)break;t=t.return}t=null}t!=null&&(n=t)}t=this._fragmentFiber;var i=r=n.compareDocumentPosition(e);return n===e?i=Node.DOCUMENT_POSITION_CONTAINS:r&Node.DOCUMENT_POSITION_CONTAINED_BY&&(n=h(t)[1],n===null?i=Node.DOCUMENT_POSITION_PRECEDING:(e=_(n).compareDocumentPosition(e),i=e===0||e&Node.DOCUMENT_POSITION_FOLLOWING?Node.DOCUMENT_POSITION_FOLLOWING:Node.DOCUMENT_POSITION_PRECEDING)),i|=Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC}t=_(n[0]),i=_(n[n.length-1]);var a=m(this._fragmentFiber)?t.parentElement:r;if(a==null)return Node.DOCUMENT_POSITION_DISCONNECTED;r=a.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY,a=a.compareDocumentPosition(i)&Node.DOCUMENT_POSITION_CONTAINED_BY;var o=t.compareDocumentPosition(e),s=i.compareDocumentPosition(e),c=o&Node.DOCUMENT_POSITION_CONTAINED_BY||s&Node.DOCUMENT_POSITION_CONTAINED_BY;return s=r&&a&&o&Node.DOCUMENT_POSITION_FOLLOWING&&s&Node.DOCUMENT_POSITION_PRECEDING,t=r&&t===e||a&&i===e||c||s?Node.DOCUMENT_POSITION_CONTAINED_BY:!r&&t===e||!a&&i===e?Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC:o,t&Node.DOCUMENT_POSITION_DISCONNECTED||t&Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC||cm(t,this._fragmentFiber,n[0],n[n.length-1],e)?t:Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC};function cm(e,t,n,r,i){var a=Gt(i);if(e&Node.DOCUMENT_POSITION_CONTAINED_BY){if(n=!!a)a:{for(;a!==null;){if(a.tag===7&&(a===t||a.alternate===t)){n=!0;break a}a=a.return}n=!1}return n}if(e&Node.DOCUMENT_POSITION_CONTAINS){if(a===null)return a=i.ownerDocument,i===a||i===a.documentElement||i===a.body;a:{for(a=t,t=p(t);a!==null;){if(!(a.tag!==5&&a.tag!==3&&a.tag!==27||a!==t&&a.alternate!==t)){a=!0;break a}a=a.return}a=!1}return a}return e&Node.DOCUMENT_POSITION_PRECEDING?((t=!!a)&&!(t=a===n)&&(t=ne(n,a,te),t===null?t=!1:(f(t,!0,b,a,n),a=v,v=null,t=a!==null)),t):e&Node.DOCUMENT_POSITION_FOLLOWING?((t=!!a)&&!(t=a===r)&&(t=ne(r,a,te),t===null?t=!1:(f(t,!0,ee,a,r),a=v,y=v=null,t=a!==null)),t):!1}function lm(e,t){var n=e.ownerDocument.createRange();n.selectNodeContents(e),e=n.getBoundingClientRect(),window.scrollTo(window.scrollX+e.left,t?window.scrollY+e.top:window.scrollY+e.bottom-window.innerHeight)}qp.prototype.scrollIntoView=function(e){if(typeof e==`object`)throw Error(i(566));var t=[];f(this._fragmentFiber.child,!1,em,t,void 0,void 0);var n=!1!==e;if(t.length===0){var r=h(this._fragmentFiber);if(r=n?r[1]||r[0]||p(this._fragmentFiber):r[0]||r[1],r===null)return;if(r.tag===6){e=_(r),lm(e,n);return}if(r=_(r),r.nodeType!==9){if(r.nodeType===11){n=`host`in r?r.host:null,n!==null&&n.scrollIntoView(e);return}r.scrollIntoView(e)}}for(r=n?t.length-1:0;r!==(n?-1:t.length);){var a=t[r];a.tag===6?(a=_(a),lm(a,n)):_(a).scrollIntoView(e),r+=n?-1:1}};function um(e,t){return e=_(e),dm(e,t),!1}function dm(e,t){e.reactFragments??=new Set,e.reactFragments.add(t)}function fm(e,t){var n=t._eventListeners;if(n!==null)for(var r=0;r<n.length;r++){var i=n[r];e.addEventListener(i.type,i.attachedListener,Xp(i.optionsOrUseCapture))}e.nodeType!==3&&(n=t._observers,n!==null&&n.forEach(function(n){for(var r=0,i=0;i<im.length;i++){var a=im[i];(a.fragmentInstance!==t||a.observer!==n||a.instance!==e)&&(im[r++]=a)}im.length=r,n.observe(e)}),dm(e,t))}function pm(e,t){var n=t._eventListeners;if(n!==null)for(var r=0;r<n.length;r++){var i=n[r];e.removeEventListener(i.type,i.attachedListener,Xp(i.optionsOrUseCapture))}e.nodeType!==3&&(n=t._observers,n!==null&&n.forEach(function(n){typeof n.rootMargin==`string`?om(t,n,e):n.unobserve(e)}),e.reactFragments!=null&&e.reactFragments.delete(t))}function mm(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var n=t;switch(t=t.nextSibling,n.nodeName){case`HTML`:case`HEAD`:case`BODY`:mm(n),Wt(n);continue;case`SCRIPT`:case`STYLE`:continue;case`LINK`:if(n.rel.toLowerCase()===`stylesheet`)continue}e.removeChild(n)}}function hm(e,t,n,r){for(;e.nodeType===1;){var i=n;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!r&&(e.nodeName!==`INPUT`||e.type!==`hidden`))break}else if(!r){if(t===`input`&&e.type===`hidden`){var a=i.name==null?null:``+i.name;if(i.type===`hidden`&&e.getAttribute(`name`)===a)return e}else return e}else if(!e[Ht])switch(t){case`meta`:if(!e.hasAttribute(`itemprop`))break;return e;case`link`:if(a=e.getAttribute(`rel`),a===`stylesheet`&&e.hasAttribute(`data-precedence`)||a!==i.rel||e.getAttribute(`href`)!==(i.href==null||i.href===``?null:i.href)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin)||e.getAttribute(`title`)!==(i.title==null?null:i.title))break;return e;case`style`:if(e.hasAttribute(`data-precedence`))break;return e;case`script`:if(a=e.getAttribute(`src`),(a!==(i.src==null?null:i.src)||e.getAttribute(`type`)!==(i.type==null?null:i.type)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin))&&a&&e.hasAttribute(`async`)&&!e.hasAttribute(`itemprop`))break;return e;default:return e}if(e=xm(e.nextSibling),e===null)break}return null}function gm(e,t,n){if(t===``)return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!n||(e=xm(e.nextSibling),e===null))return null;return e}function _m(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!t||(e=xm(e.nextSibling),e===null))return null;return e}function vm(e){return e.data===`$?`||e.data===`$~`}function ym(e){return e.data===`$!`||e.data===`$?`&&e.ownerDocument.readyState!==`loading`}function bm(e,t){var n=e.ownerDocument;if(e.data===`$~`)e._reactRetry=t;else if(e.data!==`$?`||n.readyState!==`loading`)t();else{var r=function(){t(),n.removeEventListener(`DOMContentLoaded`,r)};n.addEventListener(`DOMContentLoaded`,r),e._reactRetry=r}}function xm(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t===`$`||t===`$!`||t===`$?`||t===`$~`||t===`&`||t===`F!`||t===`F`)break;if(t===`/$`||t===`/&`)return null}}return e}var Sm=null;function Cm(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`/$`||n===`/&`){if(t===0)return xm(e.nextSibling);t--}else n!==`$`&&n!==`$!`&&n!==`$?`&&n!==`$~`&&n!==`&`||t++}e=e.nextSibling}return null}function wm(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`$`||n===`$!`||n===`$?`||n===`$~`||n===`&`){if(t===0)return e;t--}else n!==`/$`&&n!==`/&`||t++}e=e.previousSibling}return null}function Tm(e,t){function n(){r=!0}if(e.ownerDocument.activeElement===e)return!0;var r=!1;try{e.ownerDocument.addEventListener(`focus`,n,!0),(e.focus||HTMLElement.prototype.focus).call(e,t)}finally{e.ownerDocument.removeEventListener(`focus`,n,!0)}return r}function Em(e){jp(function(){jp(function(t){return e(t)})})}function Dm(e,t,n){switch(t=xp(n),e){case`html`:if(e=t.documentElement,!e)throw Error(i(452));return e;case`head`:if(e=t.head,!e)throw Error(i(453));return e;case`body`:if(e=t.body,!e)throw Error(i(454));return e;default:throw Error(i(451))}}function Om(e,t,n){for(var r in n){var i=n[r];n.hasOwnProperty(r)&&i!=null&&fp(e,t,r,null,hp,i)}n.dangerouslySetInnerHTML!=null&&(e.textContent=``),e.onclick===An&&(e.onclick=null),Wt(e)}function km(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);Wt(e)}var Am=new Map,jm=new Set;function Mm(e){if(typeof e.getRootNode==`function`){var t=e.getRootNode();if(t.nodeType===9||t.nodeType===11)return t}return e.nodeType===9?e:e.ownerDocument}var Nm=Te.d;Te.d={f:Pm,r:Fm,D:Rm,C:zm,L:Bm,m:Vm,X:Um,S:Hm,M:Wm};function Pm(){var e=Nm.f(),t=Yd();return e||t}function Fm(e){var t=Kt(e);t!==null&&t.tag===5&&t.type===`form`?cc(t):Nm.r(e)}var Im=typeof document>`u`?null:document;function Lm(e,t,n){var r=Im;if(r&&typeof t==`string`&&t){var i=hn(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),jm.has(i)||(jm.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),mp(t,`link`,e),E(t),r.head.appendChild(t)))}}function Rm(e){Nm.D(e),Lm(`dns-prefetch`,e,null)}function zm(e,t){Nm.C(e,t),Lm(`preconnect`,e,t)}function Bm(e,t,n){Nm.L(e,t,n);var r=Im;if(r&&e&&t){var i=`link[rel="preload"][as="`+hn(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+hn(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+hn(n.imageSizes)+`"]`)):i+=`[href="`+hn(e)+`"]`;var a=i;switch(t){case`style`:a=Km(e);break;case`script`:a=Xm(e)}if(!(Am.has(a)||(e=re({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),Am.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(qm(a))||t===`script`&&r.querySelector(Zm(a))))){var o=r.createElement(`link`);mp(o,`link`,e),t===`style`&&(o[Ut]=!0,o.onload=o.onerror=function(){Yt(o)}),E(o),r.head.appendChild(o)}}}function Vm(e,t){Nm.m(e,t);var n=Im;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+hn(r)+`"][href="`+hn(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Xm(e)}if(!Am.has(a)&&(e=re({rel:`modulepreload`,href:e},t),Am.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Zm(a)))return}r=n.createElement(`link`),mp(r,`link`,e),E(r),n.head.appendChild(r)}}}function Hm(e,t,n){Nm.S(e,t,n);var r=Im;if(r&&e){var i=Jt(r).hoistableStyles,a=Km(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(qm(a)))s.loading=5;else{e=re({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=Am.get(a))&&eh(e,n);var c=o=r.createElement(`link`);E(c),mp(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,$m(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function Um(e,t){Nm.X(e,t);var n=Im;if(n&&e){var r=Jt(n).hoistableScripts,i=Xm(e),a=r.get(i);a||(a=n.querySelector(Zm(i)),a||(e=re({src:e,async:!0},t),(t=Am.get(i))&&th(e,t),a=n.createElement(`script`),E(a),mp(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Wm(e,t){Nm.M(e,t);var n=Im;if(n&&e){var r=Jt(n).hoistableScripts,i=Xm(e),a=r.get(i);a||(a=n.querySelector(Zm(i)),a||(e=re({src:e,async:!0,type:`module`},t),(t=Am.get(i))&&th(e,t),a=n.createElement(`script`),E(a),mp(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Gm(e,t,n,r){var a=(a=Pe.current)?Mm(a):null;if(!a)throw Error(i(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(n=Km(n.href),t=Jt(a).hoistableStyles,r=t.get(n),r||(r={type:`style`,instance:null,count:0,state:null},t.set(n,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Km(n.href);var o=Jt(a).hoistableStyles,s=o.get(e);if(s||(a=a.ownerDocument||a,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},o.set(e,s),(o=a.querySelector(qm(e)))?o._p||(s.instance=o,s.state.loading=5):(o=Am.get(e),o||(o={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Am.set(e,o)),Ym(a,e,o,s.state))),t&&r===null)throw Error(i(528,``));return s}if(t&&r!==null)throw Error(i(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(n=Xm(n),t=Jt(a).hoistableScripts,r=t.get(n),r||(r={type:`script`,instance:null,count:0,state:null},t.set(n,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(i(444,e))}}function Km(e){return`href="`+hn(e)+`"`}function qm(e){return`link[rel="stylesheet"][`+e+`]`}function Jm(e){return re({},e,{"data-precedence":e.precedence,precedence:null})}function Ym(e,t,n,r){if(t=e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)){if(!0!==t[Ut]){r.loading=1;return}}else t=e.createElement(`link`),t[Ut]=!0,t.onload=t.onerror=Yt.bind(null,t),mp(t,`link`,n),E(t),e.head.appendChild(t);r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2})}function Xm(e){return`[src="`+hn(e)+`"]`}function Zm(e){return`script[async]`+e}function Qm(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+hn(n.href)+`"]`);if(r)return t.instance=r,E(r),r;var a=re({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),E(r),mp(r,`style`,a),$m(r,n.precedence,e),t.instance=r;case`stylesheet`:a=Km(n.href);var o=e.querySelector(qm(a));if(o)return t.state.loading|=4,t.instance=o,E(o),o;r=Jm(n),(a=Am.get(a))&&eh(r,a),o=(e.ownerDocument||e).createElement(`link`),E(o);var s=o;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),mp(o,`link`,r),t.state.loading|=4,$m(o,n.precedence,e),t.instance=o;case`script`:return o=Xm(n.src),(a=e.querySelector(Zm(o)))?(t.instance=a,E(a),a):(r=n,(a=Am.get(o))&&(r=re({},n),th(r,a)),e=e.ownerDocument||e,a=e.createElement(`script`),E(a),mp(a,`link`,r),e.head.appendChild(a),t.instance=a);case`void`:return null;default:throw Error(i(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,$m(r,n.precedence,e));return t.instance}function $m(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o<r.length;o++){var s=r[o];if(s.dataset.precedence===t)a=s;else if(a!==i)break}a?a.parentNode.insertBefore(e,a.nextSibling):(t=n.nodeType===9?n.head:n,t.insertBefore(e,t.firstChild))}function eh(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.title??=t.title}function th(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.integrity??=t.integrity}var nh=null;function rh(e,t,n){if(nh===null){var r=new Map,i=nh=new Map;i.set(n,r)}else i=nh,r=i.get(n),r||(r=new Map,i.set(n,r));if(r.has(e))return r;for(r.set(e,null),n=n.getElementsByTagName(e),i=0;i<n.length;i++){var a=n[i];if(!(a[Ht]||a[Ft]||e===`link`&&a.getAttribute(`rel`)===`stylesheet`)&&a.namespaceURI!==`http://www.w3.org/2000/svg`){var o=a.getAttribute(t)||``;o=e+o;var s=r.get(o);s?s.push(a):r.set(o,[a])}}return r}function ih(e,t,n){e=e.ownerDocument||e,e.head.insertBefore(n,t===`title`?e.querySelector(`head > title`):null)}function ah(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function oh(e,t){return e===`img`&&t.src!=null&&t.src!==``&&t.onLoad==null&&t.loading!==`lazy`}function sh(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function ch(e){return(e.width||100)*(e.height||100)*(typeof devicePixelRatio==`number`?devicePixelRatio:1)*.25}function lh(e,t){typeof t.decode==`function`&&(e.imgCount++,t.complete||(e.imgBytes+=ch(t),e.suspenseyImages.push(t)),e=hh.bind(e),t.decode().then(e,e))}function uh(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=Km(r.href),a=t.querySelector(qm(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=mh.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,E(a);return}a=t.ownerDocument||t,r=Jm(r),(i=Am.get(i))&&eh(r,i),a=a.createElement(`link`),E(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),mp(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=mh.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var dh=0;function fh(e,t){return e.stylesheets&&e.count===0&&_h(e,e.stylesheets),0<e.count||0<e.imgCount?function(n){var r=setTimeout(function(){if(e.stylesheets&&_h(e,e.stylesheets),e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}},6e4+t);0<e.imgBytes&&dh===0&&(dh=62500*vp());var i=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&_h(e,e.stylesheets),e.unsuspend)){var t=e.unsuspend;e.unsuspend=null,t()}},(e.imgBytes>dh?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function ph(e){if(e.count===0&&(e.imgCount===0||!e.waitingForImages)){if(e.stylesheets)_h(e,e.stylesheets);else if(e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}}}function mh(){this.count--,ph(this)}function hh(){this.imgCount--,ph(this)}var gh=null;function _h(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,gh=new Map,t.forEach(vh,e),gh=null,mh.call(e))}function vh(e,t){if(!(t.state.loading&4)){var n=gh.get(e);if(n)var r=n.get(null);else{n=new Map,gh.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a<i.length;a++){var o=i[a];(o.nodeName===`LINK`||o.getAttribute(`media`)!==`not all`)&&(n.set(o.dataset.precedence,o),r=o)}r&&n.set(null,r)}i=t.instance,o=i.getAttribute(`data-precedence`),a=n.get(o)||r,a===r&&n.set(null,i),n.set(o,i),this.count++,r=mh.bind(this),i.addEventListener(`load`,r),i.addEventListener(`error`,r),a?a.parentNode.insertBefore(i,a.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(i,e.firstChild)),t.state.loading|=4}}var yh={$$typeof:le,Provider:null,Consumer:null,_currentValue:Ee,_currentValue2:Ee,_threadCount:0};function bh(e,t,n,r,i,a,o,s,c){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=wt(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=wt(0),this.hiddenUpdates=wt(null),this.identifierPrefix=r,this.onUncaughtError=i,this.onCaughtError=a,this.onRecoverableError=o,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=c,this.transitionTypes=null,this.incompleteTransitions=new Map}function xh(e,t,n,r,i,a,o,s,c,l,u,d){return e=new bh(e,t,n,o,c,l,u,d,s),t=1,!0===a&&(t|=24),a=Wi(3,null,null,t),e.current=a,a.stateNode=e,t=Ia(),t.refCount++,e.pooledCache=t,t.refCount++,a.memoizedState={element:r,isDehydrated:n,cache:t},yo(a),e}function Sh(e){return e?(e=Hi,e):Hi}function Ch(e,t,n,r,i,a){i=Sh(i),r.context===null?r.context=i:r.pendingContext=i,r=xo(t),r.payload={element:n},a=a===void 0?null:a,a!==null&&(r.callback=a),n=So(e,r,t),n!==null&&(Wd(n,e,t),Co(n,e,t))}function wh(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function Th(e,t){wh(e,t),(e=e.alternate)&&wh(e,t)}function Eh(e){if(e.tag===13||e.tag===31){var t=zi(e,67108864);t!==null&&Wd(t,e,67108864),Th(e,67108864)}}function Dh(e){if(e.tag===13||e.tag===31){var t=Vd();t=At(t);var n=zi(e,t);n!==null&&Wd(n,e,t),Th(e,t)}}var Oh=!0;function kh(e,t,n,r){var i=C.T;C.T=null;var a=Te.p;try{Te.p=2,jh(e,t,n,r)}finally{Te.p=a,C.T=i}}function Ah(e,t,n,r){var i=C.T;C.T=null;var a=Te.p;try{Te.p=8,jh(e,t,n,r)}finally{Te.p=a,C.T=i}}function jh(e,t,n,r){if(Oh){var i=Mh(r);if(i===null)rp(e,t,r,Nh,n),Wh(e,r);else if(Kh(i,e,t,n,r))r.stopPropagation();else if(Wh(e,r),t&4&&-1<Uh.indexOf(e)){for(;i!==null;){var a=Kt(i);if(a!==null)switch(a.tag){case 3:if(a=a.stateNode,a.current.memoizedState.isDehydrated){var o=vt(a.pendingLanes);if(o!==0){var s=a;for(s.pendingLanes|=2,s.entangledLanes|=2;o;){var c=1<<31-dt(o);s.entanglements[1]|=c,o&=~c}Lf(a),!(R&6)&&(Ed=$e()+500,Rf(0,!1))}}break;case 31:case 13:s=zi(a,2),s!==null&&Wd(s,a,2),Yd(),Th(a,2)}if(a=Mh(r),a===null&&rp(e,t,r,Nh,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else rp(e,t,r,null,n)}}function Mh(e){return e=Mn(e),Ph(e)}var Nh=null;function Ph(e){if(Nh=null,e=Gt(e),e!==null){var t=o(e);if(t===null)e=null;else{var n=t.tag;if(n===13){if(e=s(t),e!==null)return e;e=null}else if(n===31){if(e=c(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return Nh=e,null}function Fh(e){switch(e){case`beforetoggle`:case`cancel`:case`click`:case`close`:case`contextmenu`:case`copy`:case`cut`:case`auxclick`:case`dblclick`:case`dragend`:case`dragstart`:case`drop`:case`focusin`:case`focusout`:case`input`:case`invalid`:case`keydown`:case`keypress`:case`keyup`:case`mousedown`:case`mouseup`:case`paste`:case`pause`:case`play`:case`pointercancel`:case`pointerdown`:case`pointerup`:case`ratechange`:case`reset`:case`seeked`:case`submit`:case`toggle`:case`touchcancel`:case`touchend`:case`touchstart`:case`volumechange`:case`change`:case`selectionchange`:case`textInput`:case`compositionstart`:case`compositionend`:case`compositionupdate`:case`beforeblur`:case`afterblur`:case`beforeinput`:case`blur`:case`fullscreenchange`:case`fullscreenerror`:case`focus`:case`hashchange`:case`popstate`:case`select`:case`selectstart`:return 2;case`drag`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`mousemove`:case`mouseout`:case`mouseover`:case`pointermove`:case`pointerout`:case`pointerover`:case`resize`:case`scroll`:case`touchmove`:case`wheel`:case`mouseenter`:case`mouseleave`:case`pointerenter`:case`pointerleave`:return 8;case`message`:switch(et()){case tt:return 2;case nt:return 8;case rt:case it:return 32;case at:return 268435456;default:return 32}default:return 32}}var Ih=!1,Lh=null,Rh=null,zh=null,Bh=new Map,Vh=new Map,Hh=[],Uh=`mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset`.split(` `);function Wh(e,t){switch(e){case`focusin`:case`focusout`:Lh=null;break;case`dragenter`:case`dragleave`:Rh=null;break;case`mouseover`:case`mouseout`:zh=null;break;case`pointerover`:case`pointerout`:Bh.delete(t.pointerId);break;case`gotpointercapture`:case`lostpointercapture`:Vh.delete(t.pointerId)}}function Gh(e,t,n,r,i,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[i]},t!==null&&(t=Kt(t),t!==null&&Eh(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function Kh(e,t,n,r,i){switch(t){case`focusin`:return Lh=Gh(Lh,e,t,n,r,i),!0;case`dragenter`:return Rh=Gh(Rh,e,t,n,r,i),!0;case`mouseover`:return zh=Gh(zh,e,t,n,r,i),!0;case`pointerover`:var a=i.pointerId;return Bh.set(a,Gh(Bh.get(a)||null,e,t,n,r,i)),!0;case`gotpointercapture`:return a=i.pointerId,Vh.set(a,Gh(Vh.get(a)||null,e,t,n,r,i)),!0}return!1}function qh(e){var t=Gt(e.target);if(t!==null){var n=o(t);if(n!==null){if(t=n.tag,t===13){if(t=s(n),t!==null){e.blockedOn=t,Nt(e.priority,function(){Dh(n)});return}}else if(t===31){if(t=c(n),t!==null){e.blockedOn=t,Nt(e.priority,function(){Dh(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Jh(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=Mh(e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);jn=r,n.target.dispatchEvent(r),jn=null}else return t=Kt(n),t!==null&&Eh(t),e.blockedOn=n,!1;t.shift()}return!0}function Yh(e,t,n){Jh(e)&&n.delete(t)}function Xh(){Ih=!1,Lh!==null&&Jh(Lh)&&(Lh=null),Rh!==null&&Jh(Rh)&&(Rh=null),zh!==null&&Jh(zh)&&(zh=null),Bh.forEach(Yh),Vh.forEach(Yh)}function Zh(e,n){e.blockedOn===n&&(e.blockedOn=null,Ih||(Ih=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,Xh)))}var Qh=null;function $h(e){Qh!==e&&(Qh=e,t.unstable_scheduleCallback(t.unstable_NormalPriority,function(){Qh===e&&(Qh=null);for(var t=0;t<e.length;t+=3){var n=e[t],r=e[t+1],i=e[t+2];if(typeof r!=`function`){if(Ph(r||n)===null)continue;break}var a=Kt(n);a!==null&&(e.splice(t,3),t-=3,oc(a,{pending:!0,data:i,method:n.method,action:r},r,i))}}))}function eg(e){function t(t){return Zh(t,e)}Lh!==null&&Zh(Lh,e),Rh!==null&&Zh(Rh,e),zh!==null&&Zh(zh,e),Bh.forEach(t),Vh.forEach(t);for(var n=0;n<Hh.length;n++){var r=Hh[n];r.blockedOn===e&&(r.blockedOn=null)}for(;0<Hh.length&&(n=Hh[0],n.blockedOn===null);)qh(n),n.blockedOn===null&&Hh.shift();if(n=(e.ownerDocument||e).$$reactFormReplay,n!=null)for(r=0;r<n.length;r+=3){var i=n[r],a=n[r+1],o=i[It]||null;if(typeof a==`function`)o||$h(n);else if(o){var s=null;if(a&&a.hasAttribute(`formAction`)){if(i=a,o=a[It]||null)s=o.formAction;else if(Ph(i)!==null)continue}else s=o.action;typeof s==`function`?n[r+1]=s:(n.splice(r,3),r-=3),$h(n)}}}function tg(){function e(e){e.canIntercept&&e.info===`react-transition`&&e.intercept({handler:function(){return new Promise(function(e){return i=e})},focusReset:`manual`,scroll:`manual`})}function t(){i!==null&&(i(),i=null),r||setTimeout(n,20)}function n(){if(!r&&!navigation.transition){var e=navigation.currentEntry;e&&e.url!=null&&navigation.navigate(e.url,{state:e.getState(),info:`react-transition`,history:`replace`})}}if(typeof navigation==`object`){var r=!1,i=null;return navigation.addEventListener(`navigate`,e),navigation.addEventListener(`navigatesuccess`,t),navigation.addEventListener(`navigateerror`,t),setTimeout(n,100),function(){r=!0,navigation.removeEventListener(`navigate`,e),navigation.removeEventListener(`navigatesuccess`,t),navigation.removeEventListener(`navigateerror`,t),i!==null&&(i(),i=null)}}}function ng(e){this._internalRoot=e}rg.prototype.render=ng.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(i(409));var n=t.current;Ch(n,Vd(),e,t,null,null)},rg.prototype.unmount=ng.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;Ch(e.current,2,null,e,null,null),Yd(),t[Lt]=null}};function rg(e){this._internalRoot=e}rg.prototype.unstable_scheduleHydration=function(e){if(e){var t=Mt();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Hh.length&&t!==0&&t<Hh[n].priority;n++);Hh.splice(n,0,e),n===0&&qh(e)}};var ig=n.version;if(ig!==`19.3.1`)throw Error(i(527,ig,`19.3.1`));Te.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render==`function`?Error(i(188)):(e=Object.keys(e).join(`,`),Error(i(268,e)));return e=u(t),e=e===null?null:d(e),e=e===null?null:e.stateNode,e};var ag={bundleType:0,version:`19.3.1`,rendererPackageName:`react-dom`,currentDispatcherRef:C,reconcilerVersion:`19.3.1`};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`){var og=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!og.isDisabled&&og.supportsFiber)try{ct=og.inject(ag),lt=og}catch{}}e.createRoot=function(e,t){if(!a(e))throw Error(i(299));var n=!1,r=``,o=kc,s=Ac,c=jc;return t!=null&&(!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onUncaughtError!==void 0&&(o=t.onUncaughtError),t.onCaughtError!==void 0&&(s=t.onCaughtError),t.onRecoverableError!==void 0&&(c=t.onRecoverableError)),t=xh(e,1,!1,null,null,n,r,null,o,s,c,tg),e[Lt]=t.current,tp(e),new ng(t)}})),Qe=Ge(((e,t)=>{function n(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE==`function`)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=Ze()})),T=Ve(),$e=Qe(),et=[`federation`],tt=e=>`${e.project??``}|${e.service}|${e.environment??``}`,nt=(e,t)=>!e.online&&t-e.lastSeenMs>864e5;function rt(e){let t=new Map;for(let n of e){let e=tt(n),r=t.get(e);r?r.push(n):t.set(e,[n])}return[...t].map(([e,t])=>{let n=[...t].sort((e,t)=>t.lastSeenMs-e.lastSeenMs),r=n[0],i=n.filter(e=>e.online).length;return{key:e,service:r.service,project:r.project,environment:r.environment,instances:n,online:i,newest:r}}).sort((e,t)=>t.newest.lastSeenMs-e.newest.lastSeenMs)}var it=`wizelens.browser.render_ms`,at=`wizelens.browser.type`,ot=`wizelens.browser.route`,st=`service.version`,ct=`wizelens.error.frame`;function lt(e){if(e.category!==`browser`)return null;let t=e.attributes[at];return t===`pageview`||t===`react`||t===`error`?t:`fetch`}var ut={ttfbMs:`wizelens.page.ttfb_ms`,ssrMs:`wizelens.page.ssr_ms`,clientRenderMs:`wizelens.page.client_render_ms`,fcpMs:`wizelens.page.fcp_ms`,lcpMs:`wizelens.page.lcp_ms`,cls:`wizelens.page.cls`,inpMs:`wizelens.page.inp_ms`,loadMs:`wizelens.page.load_ms`,hydrationMs:`wizelens.page.hydration_ms`,renderMs:`wizelens.page.render_ms`,imageMs:`wizelens.page.image_ms`,images:`wizelens.page.images`,largeImages:`wizelens.page.large_images`},dt=`wizelens.react.components`,ft=`wizelens.request.id`,pt=`wizelens.request.aborted`,mt=`enduser.id`,ht=`wizelens.response.body`,gt=`wizelens.response.body.truncated`,_t=`wizelens.request.body`,vt=`wizelens.request.body.truncated`,yt=`wizelens.tag.`,bt=`http.request.header.`,xt=`http.response.header.`,St={system:`rpc.system`,service:`rpc.service`,method:`rpc.method`,grpcStatus:`rpc.grpc.status_code`},Ct={system:`messaging.system`,operation:`messaging.operation.type`,destination:`messaging.destination.name`,messageId:`messaging.message.id`,batchSize:`messaging.batch.message_count`,bodySize:`messaging.message.body.size`},wt=`0`.repeat(16),Tt=e=>e.length===32&&e.startsWith(wt);function Et(e){let t=3735928559,n=1103547991;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r);t=Math.imul(t^i,2654435761),n=Math.imul(n^i,1597334677)}return t=Math.imul(t^t>>>16,2246822507)^Math.imul(n^n>>>13,3266489909),n=Math.imul(n^n>>>16,2246822507)^Math.imul(t^t>>>13,3266489909),(4294967296*(2097151&n)+(t>>>0)).toString(16).padStart(14,`0`)}var Dt=e=>e.startMs+e.durationMs;function Ot(e){let t=new Set(e.map(e=>e.spanId)),n=new Map;for(let r of e)r.parentSpanId&&t.has(r.parentSpanId)&&n.set(r.parentSpanId,[...n.get(r.parentSpanId)??[],r]);return n}function kt(e,t,n){let r=0,i=e;for(let[e,a]of[...n].sort((e,t)=>e[0]-t[0])){let n=Math.max(e,i),o=Math.min(a,t);o>n&&(r+=o-n),i=Math.max(i,Math.min(a,t))}return r}function At(e){let t=Ot(e.spans),n=new Map;for(let r of e.spans){let e=(t.get(r.spanId)??[]).map(e=>[e.startMs,Dt(e)]);n.set(r.spanId,Math.max(0,r.durationMs-kt(r.startMs,Dt(r),e)))}return n}function jt(e){let t=Ot(e.spans),n=new Set(e.spans.map(e=>e.spanId)),r=e.spans.filter(e=>!e.parentSpanId||!n.has(e.parentSpanId)),i=new Set,a=r.sort((e,t)=>Dt(t)-Dt(e))[0];for(;a;)i.add(a.spanId),a=[...t.get(a.spanId)??[]].sort((e,t)=>Dt(t)-Dt(e)||e.startMs-t.startMs)[0];return i}var Mt=(e,t)=>`${e}:${t}`;function Nt(e,t,n){return!e||e.status===`open`?`unresolved`:e.status===`ignored`?e.untilMs===null||e.untilMs>n?`ignored`:`unresolved`:t>(e.resolvedMs??0)?`regressed`:`resolved`}var Pt=`service.version`,Ft=e=>{let t=e.attributes[Pt];return typeof t==`string`&&t?t.slice(0,50):null};function It(e){let t=[...e].sort((e,t)=>e.startMs-t.startMs),n=0,r=-1/0;for(let e of t){let t=e.startMs+e.durationMs;t<=r||(n+=t-Math.max(e.startMs,r),r=t)}return n}function Lt(e,t,n){return It(e.map(e=>({startMs:Math.max(e.startMs,t),durationMs:Math.min(e.startMs+e.durationMs,n)-Math.max(e.startMs,t)})).filter(e=>e.durationMs>0))}var Rt=e=>e.reduce((e,t)=>e+t.durationMs,0),zt=new Set([`redis`,`valkey`,`mongodb`,`elasticsearch`,`opensearch`,`memcached`,`dynamodb`]),Bt=e=>zt.has(String(e.attributes[`db.system.name`]??``).toLowerCase()),Vt=e=>new Set(e.split(/\s+/).filter(Boolean)),Ht={redis:Vt(`multi exec discard watch unwatch select auth ping echo hello client quit reset readonly readwrite asking`),valkey:Vt(`multi exec discard watch unwatch select auth ping echo hello client quit reset readonly readwrite asking`),mongodb:Vt(`getmore killcursors endsessions committransaction aborttransaction`)};function Ut(e){let t=Ht[String(e.attributes[`db.system.name`]??``).toLowerCase()];return!!t&&t.has(String(e.attributes[`db.operation.name`]??``).toLowerCase())}var Wt=Vt(`find findone aggregate count countdocuments estimateddocumentcount distinct getmore search msearch get mget exists explain scroll
|
|
11
|
+
search_template field_caps hget hmget hgetall hkeys hvals hlen hexists hstrlen smembers sismember smismember scard srandmember sinter sunion sdiff
|
|
12
|
+
lrange llen lindex lpos zrange zrangebyscore zrevrange zrevrangebyscore zrangebylex zscore zmscore zcard zcount zrank zrevrank strlen ttl pttl type
|
|
13
|
+
scan sscan hscan zscan keys getrange getbit bitcount pfcount xrange xrevrange xread xlen geopos geodist geosearch georadius randomkey dbsize`),Gt=Vt(`insert insertone insertmany index create set setex psetex setnx mset msetnx hset hsetnx hmset lpush rpush lpushx rpushx sadd
|
|
14
|
+
zadd xadd pfadd geoadd linsert`),Kt=Vt(`update updateone updatemany replaceone findoneandupdate findoneandreplace update_by_query updatebyquery incr incrby incrbyfloat
|
|
15
|
+
decr decrby hincrby hincrbyfloat zincrby append setrange getset setbit expire pexpire expireat pexpireat persist rename renamenx lset ltrim getex`),qt=Vt(`delete deleteone deletemany findoneanddelete delete_by_query deletebyquery del unlink hdel srem zrem zremrangebyscore
|
|
16
|
+
zremrangebyrank zremrangebylex lrem xdel xtrim getdel drop flushdb flushall`);function Jt(e){let t=e.toLowerCase();return Wt.has(t)?`SELECT`:Gt.has(t)?`INSERT`:Kt.has(t)?`UPDATE`:qt.has(t)?`DELETE`:`OTHER`}var E=e=>String(e.attributes[`db.query.text`]??e.name),Yt=e=>e.spans.filter(e=>e.category===`db`),Xt=/^\s*(SET|RESET|BEGIN|START\s+TRANSACTION|COMMIT|END|ROLLBACK|SAVEPOINT|RELEASE|DISCARD|USE)\b/i,Zt=e=>Bt(e)?Ut(e):Xt.test(E(e)),Qt=e=>Yt(e).filter(e=>!Zt(e)),$t=/\?|\$\d+|%s|%\(\w+\)s|(?<![:\w]):[A-Za-z_]\w*|@[A-Za-z_]\w*/,en=e=>String(e.attributes[`wizelens.db.parameters`]??e.attributes[`wizelens.db.fingerprint`]??``),tn=e=>e.attributes[`wizelens.db.parameters`]==null&&e.attributes[`wizelens.db.fingerprint`]==null&&(Bt(e)||$t.test(E(e))),nn=`Queries that waited together`;function rn(e){let t=[],n=-1/0;for(let r of[...e].sort((e,t)=>e.startMs-t.startMs))r.startMs<n?t[t.length-1].push(r):t.push([r]),n=Math.max(n,r.startMs+r.durationMs);return t}var D=e=>E(e).trim().split(/\s+/)[0].toUpperCase();function an(e){return{kind:`slow-query`,severity:`warning`,title:`Slow query: ${e.durationMs.toFixed(1)} ms`,shape:E(e),count:1,totalMs:e.durationMs,spanIds:[e.spanId]}}function on(e){let t=It(e);return{kind:`db-wait`,severity:`warning`,title:`${e.length===1?`${D(e[0])} took ${t.toFixed(0)} ms`:`${e.length} slow queries ran at the same time (${t.toFixed(0)} ms)`}: they likely waited for a connection or a lock`,shape:nn,count:e.length,totalMs:t,spanIds:e.map(e=>e.spanId)}}var sn=e=>e.length>=3||e.every(Zt);function cn(e,t=100){return rn(Yt(e).filter(e=>e.durationMs>=t)).flatMap(e=>sn(e)?[on(e)]:e.map(an))}var ln=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,un=/^\d+$/;function dn(e){let t=e.indexOf(`?`),n=t>=0?e.slice(0,t):e,r=t>=0?e.slice(t+1):``,i=n.split(`/`).map(e=>un.test(e)||ln.test(e)?`{}`:e).join(`/`);return r?`${i}?${r.split(`&`).filter(Boolean).map(e=>{let t=e.indexOf(`=`);return t>=0?`${e.slice(0,t)}={}`:e}).join(`&`)}`:i}function fn(e){let t=String(e.attributes[`http.request.method`]??`GET`).toUpperCase(),n=e.attributes[`url.full`];if(typeof n==`string`)try{let e=new URL(n);return`${t} ${e.host}${dn(e.pathname+e.search)}`}catch{}let r=e.attributes[`server.address`],i=e.attributes[`server.port`],a=String(e.attributes[`url.path`]??e.name);return`${t} ${r??``}${i?`:${i}`:``}${dn(a)}`}function pn(e,t){let n=new Map;for(let r of e){let e=t(r),i=n.get(e);i?i.push(r):n.set(e,[r])}return n}var mn=e=>e.reduce((e,t)=>e+t.durationMs,0);function hn(e){let t=pn(Qt(e).filter(e=>!tn(e)),e=>`${E(e)}\u0000${en(e)}`),n=[];for(let e of t.values())e.length<2||n.push({kind:`duplicate-query`,severity:`warning`,title:`Same query with same parameters ran ${e.length} times`,shape:E(e[0]),count:e.length,totalMs:mn(e),spanIds:e.map(e=>e.spanId)});return n}function gn(e,t=5){let n=[];for(let[r,i]of pn(Qt(e),E))i.length<t||n.push({kind:`n+1-db`,severity:`warning`,title:`N+1 query: ran ${i.length} times`,shape:r,count:i.length,totalMs:mn(i),spanIds:i.map(e=>e.spanId)});return n}function _n(e,t=5){let n=[],r=e.spans.filter(e=>e.category===`http.client`);for(let[e,i]of pn(r,fn))i.length<t||n.push({kind:`n+1-http`,severity:`warning`,title:`N+1 HTTP: called ${i.length} times`,shape:e,count:i.length,totalMs:mn(i),spanIds:i.map(e=>e.spanId)});return n}function vn(e){let t=e.events.find(e=>e.name===`exception`),n=e=>t?.attributes[e]==null?null:String(t.attributes[e]);return{spanId:e.spanId,service:e.service,name:e.name,message:n(`exception.message`)??e.statusMessage??`error`,type:n(`exception.type`),stack:n(`exception.stacktrace`)}}function yn(e){return e.spans.filter(ve).map(e=>({kind:`error`,severity:`error`,title:`${e.service}: ${vn(e).message}`,shape:e.name,count:1,totalMs:e.durationMs,spanIds:[e.spanId]}))}var bn={nPlusOneThreshold:5,slowQueryMs:100};function xn(e,t={}){let n=t.nPlusOneThreshold??bn.nPlusOneThreshold;return[...yn(e),...gn(e,n),..._n(e,n),...hn(e),...cn(e,t.slowQueryMs??bn.slowQueryMs)]}function Sn(e,t=500){if(!e)return`neutral`;let n=e.status??0;return e.error||n>=500?`critical`:e.totalMs===null?`info`:n>=400||e.totalMs>=t?`warning`:e.insights===null?`info`:e.insights>0?`opportunity`:`success`}var Cn=e=>e.filter(e=>e.kind!==`error`),wn=(e,t)=>e.startMs-t.startMs;function Tn(e){let t=e.spans.filter(e=>lt(e)===`fetch`).sort(wn)[0],n=je(e.spans),r=e.spans.filter(e=>e.category===`db`),i=t?.attributes[it],a=typeof i==`number`&&Number.isFinite(i)?Math.max(0,i):null,o=null;if(n){let t=e.spans.filter(e=>e.service===n.service),r=t.filter(e=>e.category===`db`),i=t.filter(e=>e.category===`http.client`),a=e=>Lt(e,n.startMs,n.startMs+n.durationMs);o={codeMs:Math.max(0,n.durationMs-a([...r,...i])),dbMs:a(r),httpOutMs:a(i),httpOutCount:i.length}}return{totalMs:t?t.durationMs+(a??0):e.durationMs,serverMs:n?.durationMs??null,dbMs:It(r),dbTotalMs:Rt(r),dbCount:r.length,dbSlowestMs:Math.max(0,...r.map(e=>e.durationMs)),renderMs:a,service:n?.service??null,server:o}}function En(e){let t=Math.max(e.totalMs,0),n=Math.min(e.renderMs??0,t),r=Math.min(Math.max(e.serverMs??0,e.dbMs),t-n),i=Math.min(e.dbMs,r);return{server:r-i,db:i,render:n,other:Math.max(0,t-r-n)}}var Dn=(e,t)=>{let n=e?.attributes[t];return n==null||n===``?null:String(n)},On=(e,t)=>t?.attributes[`enduser.id`]==null?e.spans.find(e=>e.attributes[mt]!=null):t;function kn(e){let t=On(e,je(e.spans)),n=Dn(t,`user.full_name`)??Dn(t,`user.name`);return n===null||n===`[redacted]`?null:n.slice(0,200)}var An=(e,t)=>e.startMs-t.startMs;function jn(e){return e?Object.entries(e.attributes).filter(([e])=>e.startsWith(yt)).map(([e,t])=>t===null||t===``||t===!0?e.slice(yt.length):`${e.slice(yt.length)}:${String(t)}`):[]}function Mn(e,t){let n=Dn(e,`url.path`);if(n){let t=Dn(e,`url.query`);return t?`${n}?${t}`:n}let r=Dn(t,`url.full`);if(!r)return e?.name??t?.name??`/`;try{let e=new URL(r);return e.pathname+e.search}catch{return r}}function Nn(e,t,n){return`${e} ${Dn(t,`http.route`)??dn(n)}`}function Pn(e,t){if(Dn(e,St.system)){let t=`${Dn(e,St.service)??`service`}/${Dn(e,St.method)??`method`}`;return{method:`gRPC`,path:`/${t}`,endpoint:`gRPC ${t}`}}let n=(Dn(e,`http.request.method`)??Dn(t,`http.request.method`)??`GET`).toUpperCase(),r=Mn(e,t);return{method:n,path:r,endpoint:Nn(n,e,r)}}function Fn(e,t={}){let n=je(e.spans),r=e.spans.filter(e=>lt(e)===`fetch`).sort(An)[0];if(!n&&!r)return null;let i=Tn(e),a=e.spans.filter(e=>e.category===`http.client`),o=xn(e,t),s=e.spans.filter(ve).length,c=Cn(o).length,{method:l,path:u,endpoint:d}=Pn(n,r),f=On(e,n),p=n?.attributes[`http.response.status_code`]??r?.attributes[`http.response.status_code`],m=typeof p==`number`?p:p==null?null:Number(p)||null;return{traceId:e.traceId,startMs:r?.startMs??n?.startMs??e.startMs,method:l,path:u,endpoint:d,status:m,aborted:n?.attributes[pt]===!0,durationMs:i.totalMs,serverMs:i.serverMs,dbMs:i.dbMs,dbCount:i.dbCount,fetchCount:a.length,fetchMs:It(a),renderMs:i.renderMs,networkMs:r&&n?Math.max(0,r.durationMs-n.durationMs):null,service:n?.service??`browser`,services:e.services,errors:s,findings:o,insights:c,health:Sn({status:m,error:s>0,totalMs:i.totalMs,insights:c}),userAgent:Dn(n,`user_agent.original`),clientAddress:Dn(n,`client.address`),user:Dn(f,mt),requestId:Dn(n,ft),tags:jn(n)}}var In=ke(e=>Fn(e)),Ln=new WeakMap;function Rn(e,t){if(t.slowQueryMs===bn.slowQueryMs&&t.nPlusOneThreshold===bn.nPlusOneThreshold)return In(e);let n=`${t.slowQueryMs}|${t.nPlusOneThreshold}`,r=Ln.get(e);return r||Ln.set(e,r=new Map),r.has(n)||r.set(n,Fn(e,t)),r.get(n)}function zn(e){let t=[];for(let n of e){let e=In(n);e&&t.push(e)}return t.sort((e,t)=>t.startMs-e.startMs)}var Bn=e=>e.errors>0||(e.status??0)>=500,Vn=16,Hn=1,Un=20,Wn=50,Gn=e=>typeof e==`number`&&Number.isFinite(e)?e:0;function Kn(e){let t=e.attributes[dt];if(typeof t!=`string`)return[];try{let e=JSON.parse(t);return Array.isArray(e)?e.flatMap(e=>{let t=e;return!t||typeof t.name!=`string`||!t.name?[]:[{name:t.name,renders:Gn(t.renders),actualMs:Gn(t.actualMs),selfMs:Gn(t.selfMs),wasted:Gn(t.wasted),context:Gn(t.context)}]}):[]}catch{return[]}}function qn(e,t){let n=[];return e.selfMs<Hn||((t>0?e.renders/t>Un:e.renders>Wn)&&n.push(`Re-renders frequently`),e.wasted>=5&&e.wasted/Math.max(1,e.renders)>=.3&&n.push(`Re-renders with the same props`),e.context>=5&&e.context/Math.max(1,e.renders)>=.5&&n.push(`Context value changes often`),e.renders>0&&e.selfMs/e.renders>=Vn&&n.push(`Slow render`)),n}function Jn(e,t){let n=t>0?e/t:0;return n>=.2?`high`:n>=.05?`medium`:`low`}var Yn=(e,t)=>{let n=e.attributes[t],r=typeof n==`number`?n:typeof n==`string`&&n!==``?Number(n):NaN;return Number.isFinite(r)?r:null};function Xn(e){let t=e.attributes[ot],n=e.attributes[`url.full`];return{traceId:e.traceId,startMs:e.startMs,route:typeof t==`string`&&t?t:`/`,navigation:e.attributes[`wizelens.browser.navigation`]===`spa`?`spa`:`load`,url:typeof n==`string`?n:null,renderMs:Yn(e,ut.renderMs)??(e.durationMs>0?e.durationMs:null),ttfbMs:Yn(e,ut.ttfbMs),ssrMs:Yn(e,ut.ssrMs),clientRenderMs:Yn(e,ut.clientRenderMs),hydrationMs:Yn(e,ut.hydrationMs),fcpMs:Yn(e,ut.fcpMs),lcpMs:Yn(e,ut.lcpMs),cls:Yn(e,ut.cls),inpMs:Yn(e,ut.inpMs),loadMs:Yn(e,ut.loadMs),imageMs:Yn(e,ut.imageMs),images:Yn(e,ut.images),largeImages:Yn(e,ut.largeImages)}}var Zn=e=>`${(e/1e3).toFixed(1)} s`;function Qn(e){let t=[],n=[];(e.avgLcpMs??0)>4e3?t.push(`Slow largest paint (${Zn(e.avgLcpMs)})`):(e.avgLcpMs??0)>2500&&n.push(`Largest paint needs work (${Zn(e.avgLcpMs)})`),(e.avgCls??0)>.25?t.push(`Layout shifts (CLS ${e.avgCls.toFixed(2)})`):(e.avgCls??0)>.1&&n.push(`Some layout shift (CLS ${e.avgCls.toFixed(2)})`),(e.avgRenderMs??0)>1e3&&t.push(`Slow render (${Zn(e.avgRenderMs)})`),e.largeImages>0&&n.push(`Large images without lazy loading`);let r=e.avgSsrMs??0,i=e.avgSsrRenderMs??e.avgRenderMs;return r>200&&i&&r/i>.3&&n.push(`Server render is ${Math.min(100,Math.round(r/i*100))}% of render time`),{issue:t.length?`high`:n.length?`minor`:`none`,issues:[...t,...n]}}var $n={high:`high`,minor:`medium`,none:`low`};function er(e){return{key:`render|route|${e.route}`,kind:`render`,area:`render`,impact:$n[e.issue],title:e.issue===`high`?`Render bottleneck`:`Render opportunity`,description:`${e.route}: ${e.issues.join(`; `)}. Seen in ${e.views} page view${e.views===1?``:`s`}.`,shape:e.route,occurrences:e.views,count:e.views,totalMs:e.totalRenderMs,endpoints:[e.route],lastSeenMs:e.lastSeenMs,exampleTraceId:e.exampleTraceId}}function tr(e){return{key:`render|component|${e.name}`,kind:`render`,area:`render`,impact:e.impact,title:`Component hotspot: ${e.name}`,description:`${e.issues.join(`; `)}. ${e.renders} renders, ${Math.round(e.selfMs)} ms in its own code.`,shape:e.name,occurrences:e.renders,count:e.renders,totalMs:e.selfMs,endpoints:e.routes,lastSeenMs:e.lastSeenMs,exampleTraceId:e.exampleTraceId}}var nr={"n+1-db":`N+1 query pattern`,"n+1-http":`Excessive fetch requests`,"duplicate-query":`Repeated query opportunity`,"slow-query":`Slow query opportunity`,"db-wait":`Database wait`};function rr(e){let t=/\b(?:FROM|INTO|UPDATE)\s+["`[]?([\w.]+)/i.exec(e)?.[1];return t?`A query on ${t}`:`A query`}function ir(e,t,n,r,i){let a=Math.round(n);return e===`n+1-db`?`${rr(t)} runs ${a} times per request in ${i}. Load the rows in one query (eager loading or a join).`:e===`n+1-http`?`${i} makes ${a} similar calls per request. Batch them or cache the result.`:e===`duplicate-query`?`${rr(t)} runs ${a} times with the same parameters in ${i}. Reuse the first result.`:e===`db-wait`?`${a===1?`A slow SET or BEGIN`:`${a} slow queries at the same time`} in ${i} waited about ${Math.round(r)} ms. They likely waited for a connection or a lock. Check the pool size, and whether it happens only on the first request.`:`${rr(t)} takes ${Math.round(r)} ms on average in ${i}. Check its indexes and how many rows it reads.`}function ar(e,t,n,r){return e===`slow-query`||e===`db-wait`?r>=1e3?`high`:r>=300?`medium`:`low`:n>=500||t>=20?`high`:n>=100||t>=5?`medium`:`low`}function or(e){let t=[];for(let n of e.findings){if(n.kind===`error`)continue;let r=n.kind===`n+1-http`?n.shape:Ie(n.shape);t.push({kind:n.kind,shape:r,count:n.count,totalMs:n.totalMs,endpoint:e.endpoint,startMs:e.startMs,traceId:e.traceId})}return t}function sr(e,t){let n=t.kind===`db-wait`?t.totalMs/t.occurrences:t.totalMs/Math.max(1,t.count);return{key:e,kind:t.kind,area:t.kind===`n+1-http`?`http`:`database`,impact:ar(t.kind,t.occurrences,t.totalMs,n),title:nr[t.kind],description:ir(t.kind,t.shape,t.count/t.occurrences,n,t.endpoints[0]),shape:t.shape,occurrences:t.occurrences,count:t.count,totalMs:t.totalMs,endpoints:t.endpoints,lastSeenMs:t.lastSeenMs,exampleTraceId:t.exampleTraceId}}var cr={high:0,medium:1,low:2},lr=(e,t)=>cr[e.impact]-cr[t.impact]||t.totalMs-e.totalMs||t.lastSeenMs-e.lastSeenMs;function ur(e,t,n,r=24){let i=t&&t.length>0?t.length:null;return{value:e.length,previous:i,change:le(e.length,i),series:de(e,e=>e.lastSeenMs,n,r)}}var dr=[`SELECT`,`INSERT`,`UPDATE`,`DELETE`,`OTHER`],fr=/\b(?:FROM|INTO|UPDATE|JOIN)\s+["`[]?([\w.]+)/i;function pr(e){let t=e.attributes[`db.operation.name`]??/^\s*(\w+)/.exec(E(e))?.[1]??``;if(Bt(e))return Jt(String(t));let n=String(t).toUpperCase();return dr.includes(n)?n:`OTHER`}function mr(e){let t=e.attributes[`db.collection.name`];return t!=null&&t!==``?String(t):fr.exec(E(e))?.[1]?.replace(/[\]"`]/g,``)??null}function hr(e){let t=In(e)?.endpoint??e.rootName;return e.spans.filter(e=>e.category===`db`).map(n=>{let r=n.attributes[`db.response.returned_rows`];return{span:n,traceId:e.traceId,startMs:n.startMs,durationMs:n.durationMs,endpoint:t,query:Ie(E(n)),operation:pr(n),table:mr(n),system:String(n.attributes[`db.system.name`]??`database`),rows:typeof r==`number`?r:r==null?null:Number(r)||null,error:ve(n)}})}var gr=ke(hr),_r=e=>e.flatMap(gr),vr=`Web App`,yr=e=>e===`browser`?vr:e,br=e=>e===`Web App`?`browser`:e;function xr(e){return e.replace(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/gi,`{id}`).replace(/\b[0-9a-f]{16,}\b/gi,`{id}`).replace(/\d+/g,`#`).trim()}function Sr(e){let t=e.spans.filter(ve),n=t.filter(e=>e.events.some(e=>e.name===`exception`));return n.length?n:t}var Cr=e=>typeof e==`string`&&e?e:null,wr=(e,t,n,r)=>`${e}|${t}|${xr(n)}${r?`|${r}`:``}`;function Tr(e,t,n,r){let i=vn(t),a=i.type??(t.statusMessage?.startsWith(`HTTP`)?`HttpError`:`Error`),o=yr(t.service),s=lt(t)!==null,c=t.attributes[ot],l=t.events.find(e=>e.name===`exception`),u=s?Cr(l?.attributes[ct]):null;return{key:wr(o,a,i.message,u),traceId:e.traceId,spanId:t.spanId,timeMs:l?.timeMs??t.startMs+t.durationMs,type:a,message:i.message,stack:i.stack,service:o,endpoint:n?.endpoint??(typeof c==`string`?c:e.rootName),method:n?.method??null,path:n?.path??(typeof c==`string`?c:null),status:n?.status??null,critical:r,browser:s,frame:u,release:Cr(t.attributes[st]),userAgent:n?.userAgent??null,user:n?.user??null,tags:n?.tags??[]}}function Er(e){let t=Sr(e);if(t.length===0)return[];let n=In(e),r=(n?.status??0)>=500||e.logs.some(e=>e.level===`critical`);return t.map(t=>Tr(e,t,n,r))}var Dr=ke(Er),Or=e=>e.flatMap(Dr).sort((e,t)=>t.timeMs-e.timeMs),kr=(e,t)=>e.attributes[t]==null||e.attributes[t]===``?null:String(e.attributes[t]),Ar=e=>e.category===`messaging`&&e.kind===`producer`,jr=e=>e.category===`messaging`&&e.kind===`consumer`;function Mr(e){return`${kr(e,Ct.system)??`queue`} · ${kr(e,Ct.destination)??`unknown`}`}function Nr(e){return e.filter(e=>e.category===`messaging`).map(e=>({spanId:e.spanId,service:e.service,operation:kr(e,Ct.operation)??(e.kind===`producer`?`send`:`process`),queue:Mr(e),messageId:kr(e,Ct.messageId),durationMs:e.durationMs,startMs:e.startMs,error:e.status===`error`})).sort((e,t)=>e.startMs-t.startMs)}var Pr=1e3;function Fr(e,t,n){return e===0?`idle`:t>=10?`unhealthy`:t>=1||(n??0)>=Pr?`degraded`:`healthy`}var Ir=e=>ve(e)||Number(e.attributes[`http.response.status_code`]??0)>=500,Lr=(e,t)=>e.attributes[t]==null?null:String(e.attributes[t]);function Rr(e){let t=Lr(e,`db.system.name`)??`database`,n=Lr(e,`db.namespace`);return n?`${t} · ${n}`:t}function zr(e){let t=new Set(e.spans.filter(e=>e.category===`http.server`&&e.parentSpanId).map(e=>e.parentSpanId));return e.spans.filter(e=>e.category===`http.client`&&!t.has(e.spanId))}function Br(e){let t=Lr(e,`url.full`);if(t)try{return new URL(t).host}catch{}return Lr(e,`server.address`)??`unknown host`}function Vr(e){return Ar(e)?{from:e.service,to:Mr(e)}:jr(e)?{from:Mr(e),to:e.service}:null}function Hr(e,t){if(e.category===`db`)return Rr(e);if(e.category!==`http.client`&<(e)!==`fetch`)return null;let n=t.get(e.spanId);return n?n.service:e.category===`http.client`?Br(e):null}function Ur(e){let t=[],n=new Map(e.spans.filter(e=>e.category===`http.server`&&e.parentSpanId).map(e=>[e.parentSpanId,e]));for(let r of e.spans){let e=Vr(r);e&&t.push({...e,span:r});let i=e?null:Hr(r,n);i&&t.push({from:r.category===`browser`?`Web App`:r.service,to:i,span:r})}return t}var Wr={browser:0,network:1,routing:2,handler:3,service:4,queue:5,external:6,database:7,render:8},Gr=(e,t)=>typeof e.attributes[t]==`number`?e.attributes[t]:null,Kr=e=>e.startMs+e.durationMs;function qr(e,t){return[[e.startMs,t.startMs],[Kr(t),Kr(e)]].filter(([e,t])=>t>e)}function Jr(e,t){let n=Math.min(Gr(e,`wizelens.server.routed_ms`)??0,t),r={key:`service:${e.service}`,label:e.service,kind:`service`,owner:e.service,ms:t-n,segs:[[e.startMs+n,Kr(e)]]};return n<=0?[r]:[{key:`routing`,label:`Routing`,kind:`routing`,owner:e.service,ms:n,segs:[[e.startMs,e.startMs+n]]},r]}function Yr(e,t,n){let r=[{key:`browser`,label:`Browser`,kind:`browser`,owner:`Web App`,ms:e.durationMs,segs:[[e.startMs,Kr(e)]]}];r.push({key:`network`,label:`Network`,kind:`network`,owner:`Network`,ms:n,segs:t?qr(e,t):[[e.startMs,Kr(e)]]});let i=Gr(e,it);return i&&r.push({key:`render`,label:`Render`,kind:`render`,owner:`Web App`,ms:i,segs:[[Kr(e),Kr(e)+i]]}),r}var Xr=(e,t,n,r,i,a)=>({key:`page:${e}`,label:t,kind:n,owner:`Web App`,ms:a-i,segs:[[r.startMs+i,r.startMs+a]]});function Zr(e){let t=Gr(e,ut.ttfbMs),n=Gr(e,ut.fcpMs),r=Gr(e,ut.lcpMs),i=Gr(e,ut.loadMs);if(t===null)return[Xr(`route`,`Route render`,`render`,e,0,Gr(e,ut.renderMs)??e.durationMs)];let a=[Xr(`document`,`Server response (TTFB)`,`network`,e,0,t)];return n!==null&&n>t&&a.push(Xr(`client`,`Client render (first paint)`,`render`,e,t,n)),r!==null&&n!==null&&r>n&&a.push(Xr(`content`,`Main content paint`,`render`,e,n,r)),i!==null&&a.push(Xr(`load`,`Page load`,`browser`,e,0,i)),a}function Qr(e,t){let n=Math.max(0,e.durationMs-It(t.filter(e=>!jr(e)))),r=t.find(e=>e.category===`http.server`),i=lt(e);return i===`fetch`?Yr(e,r,n):i===`pageview`?Zr(e):i===null?e.category===`http.server`?Jr(e,n):Ar(e)?[{key:`queue:${Mr(e)}`,label:Mr(e),kind:`queue`,owner:e.service,ms:n,segs:[[e.startMs,Kr(e)]]}]:jr(e)?[{key:`service:${e.service}`,label:e.service,kind:`service`,owner:e.service,ms:n,segs:[[e.startMs,Kr(e)]]}]:e.category===`db`?[{key:`db:${Rr(e)}`,label:Rr(e),kind:`database`,owner:e.service,ms:n,segs:[[e.startMs,Kr(e)]]}]:e.category===`http.client`&&r?[{key:`network`,label:`Network`,kind:`network`,owner:`Network`,ms:n,segs:qr(e,r)}]:e.category===`http.client`?[{key:`ext:${Br(e)}`,label:Br(e),kind:`external`,owner:e.service,ms:n,segs:[[e.startMs,Kr(e)]]}]:e.attributes[`wizelens.layer`]===`handler`?[{key:`handler`,label:`Handler`,kind:`handler`,owner:e.service,ms:n,segs:[[e.startMs,Kr(e)]]}]:[{key:`service:${e.service}`,label:e.service,kind:`service`,owner:e.service,ms:n,segs:[]}]:[]}function $r(e){let t=new Map(e.spans.map(e=>[e.spanId,e]));return e.spans.filter(jr).flatMap(e=>{let n=e.parentSpanId?t.get(e.parentSpanId):void 0;if(!n||!Ar(n)||e.startMs<=Kr(n))return[];let r=`Queue wait (${Mr(e)})`;return[{key:`wait:${Mr(e)}`,label:r,kind:`queue`,owner:Mr(e),ms:e.startMs-Kr(n),segs:[[Kr(n),e.startMs]]}]})}function ei(e){let t=Pe(e.spans.filter(e=>e.parentSpanId),e=>e.parentSpanId);return[...e.spans.flatMap(e=>Qr(e,t.get(e.spanId)??[])),...$r(e)]}function ti(e){let t=[];for(let[n,r]of Pe(ei(e),e=>e.key)){let i=r.flatMap(e=>e.segs).sort((e,t)=>e[0]-t[0]),a=r[0];t.push({key:n,label:a.label,kind:a.kind,totalMs:r.reduce((e,t)=>e+t.ms,0),segments:i.map(([t,n])=>({startMs:t-e.startMs,durationMs:n-t})),envelope:a.kind===`browser`})}let n=e=>e.segments[0]?.startMs??1/0;return t.sort((e,t)=>n(e)-n(t)||Wr[e.kind]-Wr[t.kind])}var ni=(e,t)=>Qr(e,t).find(e=>e.kind!==`browser`)?.label??e.service;function ri(e,t=10){let n=[];for(let t of e){let e=Te(t.spans),r=je(t.spans),i=Pe(t.spans.filter(e=>e.parentSpanId),e=>e.parentSpanId);for(let a of t.spans)a!==e&&a!==r&&a.category!==`browser`&&n.push({traceId:t.traceId,spanId:a.spanId,name:a.name,service:a.service,layer:ni(a,i.get(a.spanId)??[]),durationMs:a.durationMs,startMs:a.startMs})}return n.sort((e,t)=>t.durationMs-e.durationMs).slice(0,t)}function ii(e){let t=In(e);if(t)return t.durationMs;let n=e.spans.find(e=>lt(e)===`pageview`);return n?Gr(n,ut.renderMs)??n.durationMs:e.durationMs}var ai=[[/\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/gi,`<uuid>`],[/"[^"\n]{0,200}"|'[^'\n]{0,200}'|`[^`\n]{0,200}`/g,`<str>`],[/\b0x[0-9a-f]+\b/gi,`<id>`],[/\b(?=[0-9a-f]*\d)(?=[0-9a-f]*[a-f])[0-9a-f]{8,}\b/gi,`<id>`],[/\b(?=[A-Za-z0-9_-]*\d)(?=[A-Za-z0-9_-]*[A-Za-z])[A-Za-z0-9_-]{16,}\b/g,`<id>`],[/\d+(?:\.\d+)*/g,`<num>`]];function oi(e){let t=(e.split(`
|
|
17
|
+
`,1)[0]??``).trim();for(let[e,n]of ai)t=t.replace(e,n);return t=t.replace(/\s+/g,` `),t.length>200?t.slice(0,200):t}var si=new Map;function ci(e){let t=si.get(e);if(t!==void 0)return t;let n=Et(oi(e));return si.size>5e4&&si.clear(),si.set(e,n),n}var li=[`trace`,`debug`,`info`,`warn`,`error`,`critical`];function ui(e){return e.logs.map((t,n)=>({key:`${e.traceId}:${n}`,traceId:e.traceId,traceName:Tt(e.traceId)?``:e.rootName,spanId:t.spanId,timeMs:t.timeMs,level:t.level,service:yr(t.service),category:t.category,message:t.message,attributes:t.attributes}))}var di=ke(ui),fi=e=>e.flatMap(di).sort((e,t)=>t.timeMs-e.timeMs),pi=e=>li.indexOf(e);function mi(e,t){let n=pi(t.minLevel),r=t.query.trim().toLowerCase();return e.filter(e=>(t.exact?pi(e.level)===n:pi(e.level)>=n)&&(!t.service||e.service===t.service)&&(!t.category||e.category===t.category)&&(!t.traceId||e.traceId===t.traceId)&&(!t.pattern||ci(e.message)===t.pattern)&&(!t.origin||t.origin===`outside`===Tt(e.traceId))&&(!r||e.message.toLowerCase().includes(r)||e.category.toLowerCase().includes(r)||e.traceName.toLowerCase().includes(r)||e.traceId.startsWith(r)))}var hi=6048e5,gi=6e4,_i=6e4,vi=Object.keys(fe);function yi(e){return vi.find(t=>fe[t].ms>=e)??vi[vi.length-1]}function bi(e,t){let n=Math.floor(Number(e.from)),r=Math.floor(Number(e.to));if(!e.from||!e.to||!Number.isFinite(n)||!Number.isFinite(r)||r>t+_i)return null;let i=Math.min(r,t);return i-n>=gi?{from:n,to:i}:null}var xi=(e,t,n)=>bi(n,t)??me(e,t),Si=e=>e.compare===`week`?`week`:`previous`,Ci=(e,t)=>t===`week`?{from:e.from-hi,to:e.to-hi}:Be(e);function wi(t,n,r){return r===`week`?`vs. same time last week`:n?`vs. previous period`:e[t]}var Ti=1.04,Ei=.01,Di=Math.log(Ti),Oi=e=>e>.01?Math.max(1,Math.ceil(Math.log(e/Ei)/Di)):0,ki=e=>e===0?0:2*Ei*Ti**e/2.04;function Ai(e){let t={};for(let n of e){let e=Oi(n);t[e]=(t[e]??0)+1}return t}function ji(e,t,n=1){for(let[r,i]of Object.entries(t)){let t=Number(r),a=(e[t]??0)+n*i;Math.abs(a)<1e-9?delete e[t]:e[t]=a}}var Mi=e=>Object.entries(e).map(([e,t])=>[Number(e),t]).sort((e,t)=>e[0]-t[0]);function Ni(e,t,n){let r=Mi(e).filter(([,e])=>e>0);if(t<=0||r.length===0)return null;let i=Math.min(t-1,Math.max(0,Math.ceil(n/100*t)-1)),a=0;for(let[e,t]of r)if(a+=t,a>i+1e-9)return ki(e);return ki(r[r.length-1][0])}function Pi(e){let t=Mi(e).filter(([,e])=>e>1e-9);return t.length?ki(t[t.length-1][0]):null}function Fi(e,t){let n=Oi(t),r=0;for(let[t,i]of Object.entries(e))Number(t)<=n&&(r+=i);return r}var Ii=[`error_rate`,`p95_ms`,`requests`],Li=e=>typeof e==`string`&&Ii.includes(e),Ri={high:2,medium:3,low:4},zi=e=>typeof e==`string`&&Object.hasOwn(Ri,e),Bi=Ri.medium;function Vi(e,t){return e===`requests`?t.n:t.n<=1e-9?null:e===`error_rate`?t.err/t.n*100:t.hist?Ni(t.hist,t.n,95):null}function Hi(e){let t=e.reduce((e,t)=>e+t,0)/e.length,n=e.length>1?e.reduce((e,n)=>e+(n-t)**2,0)/(e.length-1):0;return{mean:t,sd:Math.sqrt(n)}}function Ui(e,t,n,r){if(e===`requests`)return Math.max(n,Math.sqrt(Math.max(t,1)),.1*t);if(e===`error_rate`){let e=Math.min(1,Math.max(0,t/100));return Math.max(n,100*Math.sqrt(e*(1-e)/Math.max(r.n,1)),.5)}return Math.max(n,.1*t,5)}function Wi(e,t){return e===`requests`?t.n>=10:e===`error_rate`?t.err>=5:t.n>=10}function Gi(e,t,n,r=Bi){let i=Vi(e,t),a=n.map(t=>Vi(e,t)).filter(e=>e!==null);if(i===null||a.length<2)return null;let{mean:o,sd:s}=Hi(a),c=o+r*Ui(e,o,s,t);return{value:i,normal:o,upper:c,above:Wi(e,t)&&i>c}}var Ki=e=>e.upper>0?e.value/e.upper:0,qi=[`req`,`req.part`,`trace`,`ins`,`ins.ep`,`bn.layer`,`bn.owner`,`db`,`db.q`,`db.qd`,`db.qe`,`db.t`,`db.op`,`err`,`err.t`,`err.e`],O=(e=[],t={})=>({counters:e,ints:e.map((e,t)=>t),hist:!1,top:null,ids:0,...t}),Ji=[`dbCount`,`withInsights`,`insights`],Yi={trace:O([`slow`]),req:O(Ji,{hist:!0}),"req.dim":O(Ji),"req.svc":O([`dbCount`,`withInsights`,`primary`]),"req.part":O([],{hist:!0}),svc:O([],{hist:!0,top:`newest`}),"svc.ep":O([],{hist:!0,ids:20}),"ep.call":O(),"ep.q":O(),edge:O([],{top:`newest`,hist:!0}),"bn.layer":O([],{top:`newest`}),"bn.owner":O(),ins:O([`count`],{top:`newest`}),"ins.ep":O(),db:O([`slow`]),"db.q":O([`slow`],{top:`largest`,ids:20}),"db.qd":O([`slow`],{top:`largest`}),"db.qe":O(),"db.t":O([`withRows`,`rows`]),"db.op":O(),err:O([`critical`]),"err.g":O([`critical`],{top:`newest`,ids:50}),"err.ge":O(),"err.t":O(),"err.s":O(),"err.e":O(),log:O(),"log.s":O(),"log.p":O([],{top:`newest`}),pv:O(),"pv.route":O([],{top:`newest`,ids:20}),"pv.m":O(),"pv.large":O([],{hist:!0}),"pv.g":O([],{hist:!0}),react:O(),rc:O([`renders`,`actualMs`,`selfMs`,`wasted`,`context`],{ints:[0,3,4],top:`newest`}),"rc.route":O(),rel:O([],{hist:!0}),usr:O([],{hist:!0,top:`newest`}),"err.u":O(),"ins.u":O(),"ep.u":O()},Xi={...Yi,...Object.fromEntries(qi.map(e=>[`${e}@svc`,Yi[e]]))},Zi={...Object.fromEntries(qi.map(e=>[e,`${e}@svc`])),log:`log.s`};Object.keys(Xi);var k=(...e)=>e.join(``),A=e=>e.split(``);function Qi(e,t){let n=Zi[e.kind];return n&&n!==`log.s`?[e,...[...new Set(t)].map(t=>({...e,kind:n,key:k(t,e.key)}))]:[e]}function $i(e,t){let n=Number.parseInt(t.slice(0,13),16);return e+(Number.isFinite(n)?1-n/2**52:0)*1e-4}var j=(e,t,n,r={})=>({kind:e,key:t,timeMs:n,n:1,err:0,sum:0,...r}),ea=()=>[,,,,,,].fill(0),ta=(e=!1)=>({n:0,err:0,sum:0,c:ea(),hist:e?{}:null,firstMs:1/0,lastMs:-1/0,top:null,topRank:-1/0,ids:[]});function na(e,t,n,r){if(r<=0)return;let i=n?[...t,...e.ids]:[...e.ids,...t];e.ids=[...new Set(i)].slice(0,r)}function ra(e,t,n,r){let i=t.timeMs>=e.lastMs;e.n+=t.n,e.err+=t.err,e.sum+=t.sum,t.c?.forEach((t,n)=>e.c[n]=(e.c[n]??0)+t),r.hist&&t.values?.length&&ji(e.hist??={},Ai(t.values)),e.firstMs=Math.min(e.firstMs,t.timeMs),e.lastMs=Math.max(e.lastMs,t.timeMs),r.top&&t.top&&t.top.rank>e.topRank&&Object.assign(e,{top:t.top.data,topRank:t.top.rank}),na(e,[n],i,r.ids)}var ia=e=>e.n?e.sum/e.n:null;function aa(e,t){let n=t.times!==!1&&e.n>0;return{n:e.n,err:e.err,sum:e.sum,c:[...e.c],hist:t.hist&&e.hist?e.hist:null,firstMs:n?e.firstMs:0,lastMs:n?e.lastMs:0,top:t.top?e.top:null,topRank:t.top&&e.top!==null?e.topRank:0,ids:t.ids?e.ids:[]}}var M=(e,t,n,r={})=>({type:`groups`,id:e,kind:t,window:n,...r}),N=(e,t,n,r,i={})=>({type:`series`,id:e,kind:t,window:n,buckets:r,...i}),oa=(e,t,n,r={})=>({type:`list`,id:e,table:t,window:n,filter:{},sort:{key:`time`,desc:!0},...r});function sa(e){let t=new Set;return e.filter(e=>!t.has(`${e.type}:${e.id}`)&&!!t.add(`${e.type}:${e.id}`))}var P=(e,t)=>e.groups[t]?.rows??[],ca=(e,t)=>e.groups[t]?.total??0;function la(e){let t=ta();for(let n of e)t.n+=n.n,t.err+=n.err,t.sum+=n.sum,n.c.forEach((e,n)=>t.c[n]=(t.c[n]??0)+e),n.hist&&ji(t.hist??={},n.hist),t.firstMs=Math.min(t.firstMs,n.firstMs),t.lastMs=Math.max(t.lastMs,n.lastMs);return t}var F=(e,t)=>la(P(e,t).map(e=>e.agg)),ua=(e,t)=>new Map(P(e,t).map(e=>[e.key,e.agg]));function I(e,t,n,r=``){return e.series[t]?.byKey[r]??Array.from({length:n},()=>ta())}function da(e,t,n,r){let i=r.map(r=>I(e,t,n,r));return Array.from({length:n},(e,t)=>la(i.map(e=>e[t])))}var fa=e=>e.map(e=>e.n),pa=e=>e.map(ia),ma=(e,t)=>e.map(e=>e.c[t]??0),ha=(e,t)=>e.lists[t]??{items:[],total:0,page:1,pageSize:0},ga=(e,t)=>e<t?-1:+(e>t),_a=e=>(t,n)=>e(n)-e(t)||n.agg.lastMs-t.agg.lastMs||ga(t.key,n.key),va=[`cur-1w`,`cur-2w`,`cur-3w`,`cur-4w`],ya=[`cur-1d`,`cur-2d`,`cur-3d`,`cur-4d`,`cur-5d`,`cur-6d`],ba=e=>e===`week`?va:ya,xa=e=>`probe.${String(e)}`,Sa=()=>va.map(e=>M(xa(e),`trace`,e));function Ca(e){return va.filter(t=>F(e,xa(t)).n>0).length>=2?`week`:`day`}function wa(e,t,n){return{values:t.map((t,r)=>n[r]?.value??Vi(e,t)),normals:n.map(e=>e?.normal??null),uppers:n.map(e=>e?.upper??null)}}function Ta(e){let t=[];return e.forEach((e,n)=>{if(!e?.above)return;let r=t[t.length-1];r&&r.to===n-1?(r.to=n,Ki(e)>Ki(r.peak)&&(r.peak=e)):t.push({from:n,to:n,peak:e})}),t}function Ea(e,t,n){let r=t.length-1;return e===r||e===r-1&&!Wi(n,t[r])}function Da(e,t,n){let r=e.key.indexOf(``),i=r<0?e.key:e.key.slice(0,r),a=n.rowInfo(i);if(!a)return[];let o=e.cur.map((r,i)=>Gi(t,r,e.samples.map(e=>e[i]),n.spreads)),s=Ta(o);if(!s.length)return[];let c=wa(t,e.cur,o),l=r<0?null:e.key.slice(r+1);return s.map(r=>({id:`${t}|${e.key}|${n.starts[r.from]}`,metric:t,row:i,...a,endpoint:l,startMs:n.starts[r.from],endMs:n.starts[r.to]+n.bucketMs,ongoing:Ea(r.to,e.cur,t),peak:r.peak,series:c}))}function Oa(e,t){return e.flatMap(e=>Ii.flatMap(n=>Da(e,n,t))).sort((e,t)=>e.startMs-t.startMs||(e.id<t.id?-1:+(e.id>t.id)))}var ka=e=>{let t=new Set(e.map(e=>`${e.from}\u0000${e.to}`));return{calls:(e,n)=>t.has(`${e}\u0000${n}`)}},Aa=e=>new Set(e.anomalies.map(e=>e.name));function ja(e,t){let n=Aa(e),r=t.versions.filter(r=>r.isNew&&n.has(r.service)&&r.firstMs>=e.startMs-t.nearMs&&r.firstMs<e.startMs+t.bucketMs).sort((e,t)=>t.firstMs-e.firstMs||(e.version<t.version?-1:1))[0];return r?{kind:`release`,service:r.service,version:r.version,atMs:r.firstMs}:null}function Ma(e,t){let n=Aa(e),r=t.errors.filter(r=>r.isNew&&n.has(r.service)&&r.firstMs>=e.startMs-t.nearMs&&r.firstMs<e.endMs),i=t=>Math.abs(t.firstMs-e.startMs),a=r.sort((e,t)=>i(e)-i(t)||t.count-e.count||(e.key<t.key?-1:1))[0];return a?{kind:`error`,key:a.key,service:a.service,type:a.type,message:a.message,atMs:a.firstMs,count:a.count}:null}function Na(e){let t=[...e.anomalies.filter(e=>e.kind===`database`&&e.endpoint!==null)].sort((e,t)=>Ki(t.peak)-Ki(e.peak))[0];return t?{kind:`query`,database:t.name,row:t.row,query:t.endpoint,metric:t.metric,value:t.peak.value,normal:t.peak.normal}:null}function Pa(e,t){let n=[...Aa(e)];if(n.length<2)return null;let r=n.filter(e=>n.some(n=>n!==e&&t.calls(n,e))&&!n.some(n=>n!==e&&t.calls(e,n))),i=e.anomalies.find(e=>r.includes(e.name));return i?{kind:`downstream`,service:i.name,row:i.row,serviceKind:i.kind}:null}var Fa={error_rate:`fails more than`,p95_ms:`is slower than`,requests:`runs more often than`};function Ia(e){return e.kind===`release`?`${e.service} ${e.version} was released as it started.`:e.kind===`error`?`A new error in ${e.service}: ${e.type}: ${e.message}`:e.kind===`query`?`A query on ${e.database} ${Fa[e.metric]} normal: ${e.query}`:`${e.service}, further down the calls, is above normal too.`}function La(e,t){return[ja(e,t),Ma(e,t),Na(e),Pa(e,t.map)].filter(e=>e!==null)}var Ra=2e3,za={error_rate:`Error rate`,p95_ms:`p95 duration`,requests:`Traffic`},Ba=(e,t,n)=>e.name===t.name||n.calls(e.name,t.name)||n.calls(t.name,e.name);function Va(e,t,n){let r=e.slice(0,Ra),i=r.map((e,t)=>t),a=e=>i[e]===e?e:i[e]=a(i[e]);for(let e=0;e<r.length;e++)for(let o=e+1;o<r.length&&r[o].startMs-r[e].startMs<=n;o++)Ba(r[e],r[o],t)&&(i[a(o)]=a(e));let o=new Map;return r.forEach((e,t)=>o.get(a(t))?.push(e)??o.set(a(t),[e])),[...o.values()]}function Ha(e){let t=2166136261;for(let n=0;n<e.length;n++)t=Math.imul(t^e.charCodeAt(n),16777619)>>>0;return t.toString(36)}function Ua(e){let t=new Map;for(let n of e)t.has(n.row)||t.set(n.row,{row:n.row,name:n.name,kind:n.kind});return[...t.values()]}function Wa(e,t){return e?e.kind===`query`?e.database:e.service:t.name}function Ga(e,t,n){let r=e.filter(e=>e.name===t),i=[...r.length?r:e].sort((e,t)=>Ki(t.peak)-Ki(e.peak))[0],a=n>1?` and ${n-1} more`:``;return`${za[i.metric]} above normal on ${t}${a}`}function Ka(e,t){let n=e[0],r=n.startMs,i=Math.max(...e.map(e=>e.endMs)),a=La({startMs:r,endMs:i,anomalies:e},t),o=a[0]??null,s=Ua(e),c=new Set(s.map(e=>e.name)).size;return{id:Ha(`${n.row}|${n.metric}|${r}`),title:Ga(e,Wa(o,n),c),metric:n.metric,startMs:r,endMs:i,ongoing:e.some(e=>e.ongoing),services:s,anomalies:[...e].sort((e,t)=>Ki(t.peak)-Ki(e.peak)||e.startMs-t.startMs).slice(0,20),anomalyCount:e.length,cause:o,causes:a}}function qa(e,t){return Va(e,t.map,t.nearMs).map(e=>Ka(e,t)).sort((e,t)=>Number(t.ongoing)-Number(e.ongoing)||t.startMs-e.startMs||(e.id<t.id?-1:1))}function Ja(e,t){let n=e.startMs,r={err:+!!e.error,sum:e.durationMs,c:[+(e.durationMs>=t)]},i={system:e.system,traceId:e.traceId,durationMs:e.durationMs},a=$i(e.durationMs,e.traceId),o=[j(`db`,``,n,r),j(`db.q`,e.query,n,{...r,top:{rank:a,data:i}}),j(`db.qd`,k(e.operation,Rr(e.span),e.query),n,{...r,top:{rank:a,data:i}}),j(`db.qe`,k(e.query,e.endpoint),n),j(`db.op`,e.operation,n,{sum:e.durationMs})];return e.table!==null&&o.push(j(`db.t`,e.table,n,{sum:e.durationMs,c:[e.rows===null?0:1,e.rows??0]})),o.flatMap(t=>Qi(t,[yr(e.span.service)]))}var Ya=(e,t)=>_r([e]).flatMap(e=>Ja(e,t)),Xa=8192,Za=e=>e.stack&&e.stack.length>8192?{...e,stack:e.stack.slice(0,Xa)}:e;function Qa(e,t){let n=e.timeMs,r={c:[+!!e.critical]};return[...t?[j(`err.u`,k(e.key,t),n)]:[],j(`err`,``,n,r),j(`err.g`,e.key,n,{...r,top:{rank:n,data:Za(e)}}),j(`err.ge`,k(e.key,e.endpoint),n),j(`err.t`,e.type,n),j(`err.s`,e.service,n),j(`err.e`,e.endpoint,n)].flatMap(t=>Qi(t,[e.service]))}var $a=(e,t=null)=>Or([e]).flatMap(e=>Qa(e,t)),eo=e=>({pattern:oi(e.message),message:e.message.slice(0,500),category:e.category,traceId:e.traceId}),to=e=>e.flatMap(e=>[j(`log`,e.level,e.timeMs),j(`log.s`,k(e.service,e.level),e.timeMs),j(`log.p`,k(e.service,e.level,ci(e.message),Tt(e.traceId)?`o`:`r`),e.timeMs,{top:{rank:e.timeMs,data:eo(e)}})]),no=(e,t)=>M(e,`rel`,`all`,{order:{by:`lastMs`,desc:!0,limit:50},...t?{filter:{parts:[t,null]}}:{}});function ro(e,t){return P(e,t).map(e=>{let[t=``,n=``]=A(e.key);return{service:t,version:n,firstMs:e.agg.firstMs,lastMs:e.agg.lastMs}}).sort((e,t)=>t.firstMs-e.firstMs||e.version.localeCompare(t.version))}function io(e,t,n,r){let i=r===null?null:{from:r,to:1/0};if(!n)return i;let a=ro(e,t),o=a.find(e=>e.version===n),s=o?{from:o.firstMs,to:oo(a,o)}:{from:1/0,to:1/0};return i=i?{from:Math.max(i.from,s.from),to:Math.min(i.to,s.to)}:s,i}var ao=(e,t)=>t>=e.from&&t<e.to;function oo(e,t){let n=e.filter(e=>e.service===t.service&&e.firstMs>t.firstMs).map(e=>e.firstMs);return n.length?Math.min(...n):1/0}var so=[M(`meta.prev`,`trace`,`prev`),no(`meta.rel`)],co=e=>({range:e.range,window:e.window,prev:e.prev,compareLabel:wi(e.range,!!e.custom,e.compare??`previous`),hasPrev:F(e,`meta.prev`).n>0,sampled:null,settling:e.settling??null,custom:!!e.custom,compare:e.compare??`previous`,releases:ro(e,`meta.rel`).filter(t=>t.firstMs>=e.window.from&&t.firstMs<e.window.to)}),lo=e=>e.service?.trim()||void 0,uo=e=>e?{service:e}:{};function fo(e,t,n,r,i){let a=Number(e[t]);return Number.isFinite(a)&&a>0?Math.min(i,Math.max(r,Math.floor(a))):n}var po=(e,t)=>({page:fo(e,`page`,1,1,1e6),size:fo(e,`size`,t,5,5e3)}),mo=[`method`,`status`,`duration`,`service`,`q`,`endpoint`,`user`,`insights`],ho=[[``,`All Statuses`],[`2xx`,`2xx Success`],[`3xx`,`3xx Redirect`],[`4xx`,`4xx Client error`],[`5xx`,`5xx Server error`],[`failed`,`Failed (any error)`]],go={fast:[`Under 100 ms`,0,100],medium:[`100–500 ms`,100,500],slow:[`500 ms–1 s`,500,1e3],slowest:[`Over 1 s`,1e3,1/0]},_o=[[``,`Any Duration`],...Object.entries(go).map(([e,[t]])=>[e,t])],vo=new Set(ho.map(([e])=>e));function yo(e){let t=t=>(e instanceof URLSearchParams?e.get(t):e[t])??``,n=vo.has(t(`status`))?t(`status`):``,r=Object.hasOwn(go,t(`duration`))?t(`duration`):``;return{method:t(`method`),status:n,duration:r,service:t(`service`),q:t(`q`),endpoint:t(`endpoint`),user:t(`user`),insights:t(`insights`)===`1`?`1`:``}}function bo(e,t){if(!t)return!0;if(t===`failed`)return e.errors>0||(e.status??0)>=500;let n=e.status??0,r=Number(t[0])*100;return n>=r&&n<r+100}function xo(e){let t=Object.hasOwn(go,e)?go[e]:void 0;return t?[t[1],t[2]]:null}function So(e,t){let n=xo(t);return!n||e.durationMs>=n[0]&&e.durationMs<n[1]}function Co(e,t){if(!t)return!0;let n=t.toLowerCase(),r=[e.path,e.endpoint,e.user,e.requestId,e.clientAddress,...e.tags];return e.traceId.startsWith(n)||r.some(e=>e?.toLowerCase().includes(n))}function wo(e,t){return e.filter(e=>(!t.method||e.method===t.method)&&(!t.service||e.service===t.service||e.services.includes(t.service))&&bo(e,t.status)&&So(e,t.duration)&&(!t.endpoint||e.endpoint===t.endpoint)&&(!t.user||e.user===t.user)&&(!t.insights||e.insights>0)&&Co(e,t.q.trim()))}var To=e=>mo.some(t=>e[t]!==``),Eo={time:e=>e.startMs,path:e=>e.path,method:e=>e.method,status:e=>e.status??0,duration:e=>e.durationMs,sql:e=>e.dbCount,fetch:e=>e.fetchMs,service:e=>e.service,insights:e=>e.insights,errors:e=>e.errors,db:e=>e.dbMs},Do=e=>!!e&&e in Eo;function Oo(e,t){let n=Eo[t.key],r=t.desc?-1:1;return[...e].sort((e,t)=>{let i=n(e),a=n(t);return(i<a?-1:+(i>a))*r})}var ko=e=>({service:lo(e)??``,status:e.status===`error`||e.status===`ok`?e.status:``,duration:e.duration&&xo(e.duration)?e.duration:``,q:e.q?.trim()??``,sort:e.sort===`duration`?`duration`:`time`}),Ao=e=>({...e.q?{q:e.q}:{},...e.service?{service:br(e.service)}:{},...e.status?{status:e.status}:{},...e.duration?{duration:e.duration}:{}});function jo(e,t){if(t.service&&!e.services.includes(t.service)||t.status===`error`&&e.status!==`error`||t.status===`ok`&&e.status===`error`)return!1;let n=t.duration?xo(t.duration):null;return!n||e.durationMs>=n[0]&&e.durationMs<n[1]}var Mo=e=>({route:`rr.${e}.route`,m:`rr.${e}.m`,large:`rr.${e}.large`,rc:`rc.${e}`,rcRoute:`rc.${e}.route`,views:`pv.${e}`});function No(e){let t=Mo(e);return[M(t.route,`pv.route`,e,{top:!0}),M(t.m,`pv.m`,e),M(t.large,`pv.large`,e,{hist:!0})]}function Po(e){let t=Mo(e);return[M(t.rc,`rc`,e,{top:!0}),M(t.rcRoute,`rc.route`,e),M(t.views,`pv`,e)]}var Fo=(e,t)=>F(e,Mo(t).views).n,Io=e=>e.top?.traceId??``;function Lo(e,t,n,r){let i=t=>n.get(k(e,t)),a=e=>{let t=i(e);return t?ia(t):null},o=r.get(e)?.hist,s={avgRenderMs:a(`render`),avgSsrMs:a(`ssr`),avgLcpMs:a(`lcp`),avgCls:a(`cls`),largeImages:Math.max(0,Math.round((o&&Pi(o))??0)),avgSsrRenderMs:a(`ssrRender`)};return{route:e,views:t.n,...s,avgHydrationMs:a(`hydration`),...Qn(s),totalRenderMs:i(`render`)?.sum??0,lastSeenMs:t.lastMs,exampleTraceId:Io(t)}}function Ro(e,t){let n=Mo(t),r=ua(e,n.m),i=ua(e,n.large);return[...P(e,n.route)].sort(_a(e=>e.agg.n)).map(e=>Lo(e.key,e.agg,r,i))}function zo(e,t){let n=new Map;for(let{key:r}of P(e,t)){let[e=``,t=``]=A(r);n.set(e,[...n.get(e)??[],t])}return n}function Bo(e,t){let n=Mo(t),r=P(e,n.rc),i=zo(e,n.rcRoute),a=Fo(e,t),o=r.reduce((e,t)=>e+(t.agg.c[2]??0),0);return r.map(({key:e,agg:t})=>{let[n=0,r=0,s=0,c=0,l=0]=t.c;return{name:e,renders:n,avgMs:n>0?r/n:0,selfMs:s,totalMs:r,wasted:c,context:l,impact:Jn(s,o),issues:qn({renders:n,selfMs:s,wasted:c,context:l},a),routes:[...i.get(e)??[]].sort(),lastSeenMs:t.lastMs,exampleTraceId:Io(t)}}).sort((e,t)=>t.selfMs-e.selfMs||t.renders-e.renders||t.lastSeenMs-e.lastSeenMs)}var Vo=e=>({ins:`ig.${e}.ins`,ep:`ig.${e}.ins.ep`});function Ho(e,t=`all`,n){let r=Vo(e),i=n?{service:n}:{},a=[M(r.ins,`ins`,e,{top:!0,...i}),M(r.ep,`ins.ep`,e,i)];return t===`all`&&(!n||n===`Web App`)?[...a,...No(e),...Po(e)]:a}function Uo(e,t){let n=new Map;for(let{key:r}of[...P(e,t)].sort(_a(e=>e.agg.lastMs))){let[e=``,t=``]=A(r);n.set(e,[...n.get(e)??[],t])}return n}function Wo(e,t,n){let r=t.top;return sr(e,{kind:r.kind,shape:r.shape,occurrences:t.n,count:t.c[0]??0,totalMs:t.sum,lastSeenMs:t.lastMs,exampleTraceId:r.traceId,endpoints:n.length?n:[r.endpoint]})}function Go(e,t){let n=Vo(t),r=Uo(e,n.ep);return[...P(e,n.ins)].sort(_a(e=>e.agg.lastMs)).map(e=>Wo(e.key,e.agg,r.get(e.key)??[]))}function Ko(e,t,n=`all`){let r=Go(e,t);if(n===`requests`)return r.sort(lr);let i=Ro(e,t).filter(e=>e.issue!==`none`).map(er),a=Bo(e,t).filter(e=>e.issues.length>0).map(tr);return[...r,...i,...a].sort(lr)}var L=24,qo=15,Jo=25,Yo=8;function Xo(e){let t=e.rootUrl??e.rootName;if(!/^https?:\/\//.test(t))return t;let n=new URL(t);return n.pathname+n.search}var Zo=e=>({traceId:e.traceId,startMs:e.startMs,path:Xo(e),durationMs:ii(e),health:In(e)?.health??null,status:e.status,services:e.services}),Qo=({traceId:e,startMs:t,path:n,durationMs:r,health:i,status:a,services:o})=>({traceId:e,startMs:t,path:n,durationMs:r,health:i,status:a,services:o});function $o(e,t){return{count:e.n,avgSpans:ia(e),slow:e.c[0]??0,series:{count:fa(t),avgSpans:pa(t),slow:ma(t,0)}}}function es(e,t){let n=e.reduce((e,t)=>e+t.agg.sum,0);return[...e].sort(_a(e=>e.agg.sum)).slice(0,Yo).map(({key:e,agg:r})=>{let i=r.top,a=n?r.sum/n*100:0;return{key:e,label:t===`layer`?i?.label??e:e,kind:t===`layer`?i?.kind??`service`:`owner`,totalMs:r.sum,share:a}})}function ts(e){let t=F(e,`meta.prev`).n>0;return{cur:$o(F(e,`t.cur`),I(e,`t.series`,L)),prev:$o(F(e,`t.prev`),I(e,`t.prevSeries`,L)),insights:Ko(e,`cur`).length,prevInsights:t?Ko(e,`prev`).length:null,insightSeries:ma(I(e,`ins.series`,L),2)}}var ns=e=>({type:`trace`,id:`selected`,traceId:e,windows:[`cur`,`prev`]}),rs={needs:e=>{let t=e.searchIds?{...ko(e.params),q:``}:ko(e.params),n=t.service||void 0,r=uo(n);return sa([...so,M(`t.cur`,`trace`,`cur`,r),M(`t.prev`,`trace`,`prev`,r),N(`t.series`,`trace`,`cur`,L,r),N(`t.prevSeries`,`trace`,`prev`,L,r),...Ho(`cur`,`all`,n),...Ho(`prev`,`all`,n),N(`ins.series`,`req`,`cur`,L,r),oa(`recent`,`traces`,`cur`,{filter:{...Ao(t),...e.searchIds?{traceIds:e.searchIds}:{}},sort:{key:t.sort,desc:!0},page:po(e.params,qo)}),M(`bn.layer`,`bn.layer`,`cur`,{top:!0,...r}),M(`bn.owner`,`bn.owner`,`cur`,r),oa(`critical`,`critical`,`cur`,{filter:n?{service:br(n)}:{},sort:{key:`duration`,desc:!0},limit:Jo}),...e.params.trace?[ns(e.params.trace)]:[]])},followUp:(e,t)=>e.params.trace?[]:[ns(ha(t,`recent`).items[0]?.traceId??null)],model(e){let t=ha(e,`recent`);return{meta:co(e),cards:ts(e),recent:t.items.map(Qo),matching:t.total??t.items.length,filter:ko(e.params),page:t.page,size:t.pageSize,bottlenecks:{layer:es(P(e,`bn.layer`),`layer`),service:es(P(e,`bn.owner`),`service`)},critical:ha(e,`critical`).items,selected:e.traces.selected??null}}};function is(e){let{findings:t,...n}=e;return n}var as=e=>({...Zo(e),startMs:e.startMs,spanCount:e.spanCount,slow:ii(e)>=500}),os=e=>fi([e]),ss=(e,t)=>ri([e],t),cs=[`render`,`ssr`,`hydration`,`lcp`,`cls`,`ssrRender`],ls=[`render`,`ssr`,`client`,`hydration`,`image`,`cls`],us={render:e=>e.renderMs,ssr:e=>e.ssrMs,hydration:e=>e.hydrationMs,lcp:e=>e.lcpMs,cls:e=>e.cls,ssrRender:e=>e.ssrMs===null?null:e.renderMs},ds={render:e=>e.renderMs,ssr:e=>e.ssrMs,client:e=>e.clientRenderMs,hydration:e=>e.hydrationMs,image:e=>e.imageMs,cls:e=>e.cls};function fs(e){let t=e.startMs,n=[j(`pv`,``,t),j(`pv.route`,e.route,t,{top:{rank:t,data:{traceId:e.traceId}}})];for(let r of cs){let i=us[r](e);i!==null&&n.push(j(`pv.m`,k(e.route,r),t,{sum:i}))}e.largeImages!==null&&n.push(j(`pv.large`,e.route,t,{sum:e.largeImages,values:[e.largeImages]}));for(let r of ls){let i=ds[r](e);i!==null&&n.push(j(`pv.g`,r,t,{sum:i,values:[i]}))}return n}function ps(e){let t=e.startMs,n=e.attributes[ot],r=[j(`react`,``,t)];for(let i of Kn(e))r.push(j(`rc`,i.name,t,{c:[i.renders,i.actualMs,i.selfMs,i.wasted,i.context],top:{rank:t,data:{traceId:e.traceId}}})),typeof n==`string`&&n&&r.push(j(`rc.route`,k(i.name,n),t));return r}function ms(e){return e.spans.flatMap(e=>{let t=lt(e);return t===`pageview`?fs(Xn(e)):t===`react`?ps(e):[]})}function hs(e){let t=e??0;return t>=100&&t<600?`${Math.floor(t/100)}xx`:`none`}function gs(e){return e>=0?e<100?`fast`:e<500?`medium`:e<1e3?`slow`:`slowest`:`none`}var _s=e=>[e.method,hs(e.status),Bn(e)?`1`:`0`,gs(e.durationMs)],vs=[{key:`request`,pick:e=>e.durationMs},{key:`server`,pick:e=>e.serverMs},{key:`database`,pick:e=>e.serverMs===null?null:e.dbMs},{key:`render`,pick:e=>e.renderMs},{key:`network`,pick:e=>e.networkMs}],ys=(e,t)=>`${e}|${t}`;function bs(e){return or(e).flatMap(t=>{let n=ys(t.kind,t.shape),r={kind:t.kind,shape:t.shape,endpoint:t.endpoint,traceId:t.traceId,startMs:t.startMs};return[j(`ins`,n,e.startMs,{sum:t.totalMs,c:[t.count],top:{rank:e.startMs,data:r}}),j(`ins.ep`,k(n,t.endpoint),e.startMs),...e.user?[j(`ins.u`,k(n,e.user),e.startMs)]:[]]})}function xs(e){return vs.flatMap(t=>{let n=t.pick(e);return n===null?[]:[j(`req.part`,t.key,e.startMs,{sum:n,values:[n]})]})}function Ss(e,t,n){if(!e.user)return[];let r=n?{top:{rank:e.startMs,data:{name:n}}}:{};return[j(`usr`,e.user,e.startMs,{...t,values:[e.durationMs],...r}),j(`ep.u`,k(yr(e.service),e.endpoint,e.user),e.startMs)]}function Cs(e,t=null){let n=e.startMs,r=_s(e),i={err:+!!Bn(e),sum:e.durationMs},a=+(e.insights>0),o=[j(`req`,``,n,{...i,c:[e.dbCount,a,e.insights],values:[e.durationMs]}),j(`req.dim`,k(...r),n,{...i,c:[e.dbCount,a,e.insights]})];for(let t of new Set([e.service,...e.services]))o.push(j(`req.svc`,k(t,...r),n,{...i,c:[e.dbCount,a,+(t===e.service)]}));let s=[e.service,...e.services].map(yr);return[...o,...xs(e),...bs(e),...Ss(e,i,t)].flatMap(e=>Qi(e,s))}function ws(e,t){if(t===`database`)return Ie(E(e));if(t===`external`)return fn(e);let n=e.attributes[`http.route`],r=e.attributes[`http.request.method`];return typeof n==`string`&&typeof r==`string`?`${r} ${n}`:e.name}var Ts=e=>k(e,``);function Es(e,t){let n=Ts(t);return e.map(({key:e,agg:t})=>({name:e.slice(n.length),count:t.n,avgMs:ia(t),errors:t.err}))}function Ds(e,t){return{incoming:e.filter(e=>e.to===t),outgoing:e.filter(e=>e.from===t)}}var Os=(e,t)=>t?e.find(e=>e.key===t)??e.find(e=>e.name===t)??null:null;function ks(e,t){for(let n=e;n;n=n.parentSpanId?t.get(n.parentSpanId):void 0)if(n.category===`http.server`)return n.service===e.service?n:null;return null}var As=e=>k(`api:${e.service}`,ws(e,`api`));function js(e){let t=new Map(e.spans.map(e=>[e.spanId,e])),n=(e,n,r)=>{let i=ks(e,t);return i?[j(n,k(As(i),r),e.startMs,{err:+!!Ir(e),sum:e.durationMs})]:[]},r=Ur(e).flatMap(({to:e,span:t})=>t.category===`browser`?[]:n(t,`ep.call`,e)),i=e.spans.filter(e=>e.category===`db`).flatMap(e=>n(e,`ep.q`,Ie(E(e))));return[...r,...i]}function Ms(e){let t=new Map(e.spans.map(e=>[e.spanId,e]));return e.spans.flatMap(e=>{let n=Ft(e),r=e.parentSpanId?t.get(e.parentSpanId):void 0;return!n||r&&r.service===e.service?[]:[j(`rel`,k(yr(e.service),n),e.startMs,{err:+!!Ir(e),sum:e.durationMs,values:[e.durationMs]})]})}var Ns=(e,t)=>e.attributes[t]==null?null:String(e.attributes[t]);function Ps(e,t){return e.category===`http.server`?{key:`api:${e.service}`,name:e.service,kind:`api`,detail:null}:lt(e)===`fetch`?{key:`web:browser`,name:`Web App`,kind:`web`,detail:`browser`}:e.category===`db`?{key:`db:${Rr(e)}`,name:Rr(e),kind:`database`,detail:Ns(e,`db.system.name`)}:t.has(e)?{key:`ext:${Br(e)}`,name:Br(e),kind:`external`,detail:Br(e)}:Ar(e)?{key:`queue:${Mr(e)}`,name:Mr(e),kind:`queue`,detail:Mr(e)}:jr(e)?{key:`worker:${e.service}`,name:e.service,kind:`worker`,detail:null}:null}var Fs=new Set([`api`,`web`,`database`,`external`]);function Is(e){let t=new Set(zr(e));return e.spans.flatMap(e=>{let n=Ps(e,t);if(!n)return[];let{key:r,...i}=n,a={err:+!!Ir(e),sum:e.durationMs},o=[j(`svc`,r,e.startMs,{...a,values:[e.durationMs],top:{rank:e.startMs,data:i}})];return Fs.has(n.kind)&&o.push(j(`svc.ep`,k(r,ws(e,n.kind)),e.startMs,{...a,values:[e.durationMs]})),o})}function Ls(e){return Ur(e).map(({from:e,to:t,span:n})=>j(`edge`,k(e,t),n.startMs,{err:+!!Ir(n),sum:n.durationMs,values:[n.durationMs],top:{rank:n.startMs,data:{from:e,to:t}}}))}var Rs=e=>[...new Set(e.spans.map(e=>yr(e.service)))];function zs(e){let t=ei(e).filter(e=>e.kind!==`browser`&&e.ms>0&&!e.key.startsWith(`page:`)),n=e.startMs,r=Rs(e);return t.flatMap(e=>[j(`bn.layer`,e.key,n,{sum:e.ms,top:{rank:n,data:{label:e.label,kind:e.kind}}}),j(`bn.owner`,e.owner,n,{sum:e.ms})]).flatMap(e=>Qi(e,r))}var Bs=e=>[...Is(e),...Ls(e),...zs(e)],Vs=bn.slowQueryMs,Hs={slowQueryMs:Vs,nPlusOneThreshold:bn.nPlusOneThreshold,criticalPerTrace:5};function Us(e){return Qi(j(`trace`,``,e.startMs,{sum:e.spanCount,c:[+(ii(e)>=500)]}),Rs(e))}function Ws(e,t){let n=Rn(e,t),r=os(e),i=Tt(e.traceId),a=[...i?[]:Us(e),...n?Cs(n,kn(e)):[],...Bs(e),...js(e),...Ya(e,t.slowQueryMs),...$a(e,n?.user??null),...to(r),...ms(e),...Ms(e)];return{traceId:e.traceId,startMs:e.startMs,request:n?is(n):null,trace:i?null:as(e),logs:r,critical:ss(e,t.criticalPerTrace),contributions:a}}var Gs=new WeakMap;function Ks(e,t={}){let n={...Hs,...t},r=`${n.slowQueryMs}|${n.nPlusOneThreshold}|${n.criticalPerTrace}`,i=Gs.get(e);i||Gs.set(e,i=new Map);let a=i.get(r);if(a)return a;let o=Ws(e,n);return i.set(r,o),o}function qs(e,t){return{prefix:k(e,t?.prefix??``),...t?.keys?{keys:t.keys.map(t=>k(e,t))}:{},...t?.parts?{parts:[e,...t.parts]}:{}}}function Js(e){if(e.type!==`groups`&&e.type!==`series`||e.service===void 0)return e;let t=Zi[e.kind];if(!t)throw Error(`${e.kind} has no per-service kind`);let{service:n,...r}=e;return{...r,kind:t,filter:qs(n,e.filter)}}var Ys=e=>{let t=k(e,``);return e=>e.startsWith(t)?e.slice(t.length):e};function Xs(e,t){let n={...e.groups},r={...e.series};for(let e of t){if(e.type===`groups`&&e.service!==void 0&&n[e.id]){let t=Ys(e.service);n[e.id]={...n[e.id],rows:n[e.id].rows.map(e=>({...e,key:t(e.key)}))}}if(e.type===`series`&&e.service!==void 0&&r[e.id]){let t=Ys(e.service);r[e.id]={byKey:Object.fromEntries(Object.entries(r[e.id].byKey).map(([n,r])=>[e.split?t(n):n,r]))}}}return{...e,groups:n,series:r}}var Zs=[{name:`10s`,ms:1e4,keepMs:222e5,table:`rollup_10s`,hist:`hist_10s`},{name:`5m`,ms:3e5,keepMs:18e7,table:`rollup_5m`,hist:`hist_5m`},{name:`1h`,ms:36e5,keepMs:null,table:`rollup_1h`,hist:`hist_1h`}],Qs=(e,t)=>e.keepMs??t,$s=(e,t,n)=>t-n-e.ms;function ec(e,t,n,r){return Math.floor(t/e.ms)*e.ms>$s(e,n,Qs(e,r))}function tc(e,t){let n=Zs.find(n=>ec(n,e.from,t,1/0))??Zs[Zs.length-1];return{from:Math.floor(e.from/n.ms)*n.ms,to:e.to}}var nc=(e,t,n)=>({tier:e,from:t,to:t+e.ms,weight:n/e.ms});function rc(e,t,n,r){if(e>=t)return[];let i=Zs[n-1];if(i&&ec(i,e,r.now,r.retentionMs))return ic(e,t,n-1,r);let a=Zs[n];return[nc(a,Math.floor(e/a.ms)*a.ms,t-e)]}function ic(e,t,n,r){let i=Zs[n],a=Math.ceil(e/i.ms)*i.ms,o=Math.floor(t/i.ms)*i.ms;if(a>o)return rc(e,t,n,r);let s=a<o?[{tier:i,from:a,to:o,weight:1}]:[];return[...rc(e,a,n,r),...s,...rc(o,t,n,r)]}function ac(e,t){let n=n=>ec(n,e.from,t.now,t.retentionMs),r=Zs.map((t,r)=>t.ms<=(e.to-e.from)/24&&n(t)?r:-1).filter(e=>e>=0);if(r.length)return r[r.length-1];let i=Zs.findIndex(n);return i>=0?i:Zs.length-1}function oc(e,t,n){return e.to<=e.from?[]:ic(e.from,e.to,ac(e,{now:t,retentionMs:n}),{now:t,retentionMs:n})}function sc(e,t,n,r){let i=(e.to-e.from)/t,a=Zs.filter(t=>ec(t,e.from,n,r)),o=a.length?a:[Zs[Zs.length-1]],s=o.filter(e=>e.ms*4<=i),c=s.length?s[s.length-1]:o[0];return{tier:c,mode:i/c.ms>=8?`sql`:`split`}}function cc(e,t,n,r){let i=(n.to-n.from)/r,a=[],o=Math.max(e,n.from),s=Math.min(e+t,n.to);for(let e=Math.max(0,Math.floor((o-n.from)/i));e<r&&n.from+e*i<s;e++){let r=Math.min(s,n.from+(e+1)*i)-Math.max(o,n.from+e*i);r>0&&a.push({index:e,share:r/t})}return a}function lc(e,t,n,r={slowQueryMs:Vs},i=null){let a=bi(n,t),o=tc(a??me(e,t),t),s=Si(n);return{range:a?yi(a.to-a.from):e,window:o,prev:Ci(o,s),now:t,params:n,options:r,settling:i,custom:!!a,compare:s}}function uc(e,t){return{groups:{...e.groups,...t.groups},series:{...e.series,...t.series},lists:{...e.lists,...t.lists},traces:{...e.traces,...t.traces}}}var dc=(e,t,n)=>Xs(e.runSync(t.map(Js),n),t);function fc(e,t,n){let r=dc(n,e.needs(t),t),i=e.followUp?.(t,r)??[],a=i.length?uc(r,dc(n,i,t)):r;return e.model({...t,...a})}var pc={needs:()=>[M(`err`,`err`,`cur`)],model:e=>({errors:F(e,`err`).n})},mc={avg:`avg`,count:`n`,total:`sum`},hc=e=>!!e&&Object.hasOwn(mc,e),gc=e=>({service:lo(e)??``,q:e.q?.trim()??``,table:e.table?.trim()??``,operation:e.operation?.trim().toUpperCase()??``,database:e.database?.trim()??``,sort:hc(e.sort)?e.sort:`avg`}),_c=e=>!!(e.operation||e.database);function vc(e,t){let{page:n,size:r}=po(t,15),i=[e.q,e.table].filter(Boolean),a={..._c(e)?{parts:[e.operation||null,e.database||null,null]}:{},...i.length?{contains:i}:{}},o={by:mc[e.sort],desc:!0,limit:r,offset:(n-1)*r};return M(`db.q`,_c(e)?`db.qd`:`db.q`,`cur`,{top:!0,filter:a,order:o,...uo(e.service||void 0)})}var yc=e=>A(e).at(-1),bc=e=>({queries:e.n,avgMs:ia(e),slow:e.c[0]??0,totalMs:e.sum}),xc=e=>({total:fa(e),slow:ma(e,0),avg:pa(e)});function Sc(e){let t=new Map;for(let{key:n}of[...e].sort(_a(e=>e.agg.n))){let[e=``,r=``]=A(n);t.set(e,[...t.get(e)??[],r])}return t}function Cc(e){let t=Sc(P(e,`db.qe`));return P(e,`db.q`).map(({key:e,agg:n})=>{let r=n.top,i=yc(e);return{key:e,query:i,count:n.n,avgMs:n.sum/n.n,maxMs:r.durationMs,totalMs:n.sum,slow:n.c[0]??0,errors:n.err,endpoints:t.get(i)??[],system:r.system,exampleTraceId:r.traceId}})}function wc(e){return P(e,`db.t`).map(({key:e,agg:t})=>({table:e,queries:t.n,avgMs:t.sum/t.n,totalMs:t.sum,rows:(t.c[0]??0)>0?t.c[1]??0:null}))}function Tc(e){let t=ua(e,`db.op`);return dr.map(e=>{let n=t.get(e);return{operation:e,count:n?.n??0,avgMs:n?ia(n):null,totalMs:n?.sum??0}})}function Ec(e,t,n){let r=bc(F(e,`db.prev`)),i=r.queries>0,a=Ko(e,`prev`,`requests`).filter(e=>e.area===`database`).length;return{queries:i?le(t.queries,r.queries):null,avgMs:le(t.avgMs,r.avgMs),slow:i?le(t.slow,r.slow):null,insights:i?le(n,a):null}}var Dc={order:{by:`n`,desc:!0,limit:200}},Oc={needs:e=>{let t=gc(e.params),n=t.service||void 0,r=uo(n);return sa([...so,M(`db.cur`,`db`,`cur`,r),M(`db.prev`,`db`,`prev`,r),...Ho(`cur`,`requests`,n),...Ho(`prev`,`requests`,n),vc(t,e.params),M(`db.qe`,`db.qe`,`cur`,r),M(`db.t`,`db.t`,`cur`,{...Dc,...r}),M(`db.op`,`db.op`,`cur`,r),M(`dbs`,`svc`,`cur`,{filter:{prefix:`db:`}}),N(`chart`,`db`,`cur`,48,r),N(`sparks`,`db`,`cur`,24,r)])},model(e){let t=bc(F(e,`db.cur`)),n=Ko(e,`cur`,`requests`).filter(e=>e.area===`database`),r=xc(I(e,`sparks`,24));return{meta:co(e),slowMs:e.options.slowQueryMs,summary:t,insights:n,queries:Cc(e),queryShapes:ca(e,`db.q`),filter:gc(e.params),...po(e.params,15),databases:P(e,`dbs`).map(e=>e.key.slice(3)).sort(),tables:wc(e),tableCount:ca(e,`db.t`),operations:Tc(e),starts:De(e.window,48),chart:xc(I(e,`chart`,48)),change:Ec(e,t,n.length),sparks:{queries:r.total,avgMs:r.avg,slow:r.slow}}}},kc=e=>e===`unresolved`||e===`resolved`||e===`ignored`||e===`all`,Ac=e=>M(`life`,`err.g`,`all`,e?{filter:{prefix:`${e}|`}}:{}),jc=e=>new Map(P(e,`life`).map(e=>[e.key,{firstMs:e.agg.firstMs,lastMs:e.agg.lastMs}])),Mc=(e,t,n,r)=>Nt(e[Mt(`error`,n)],t.get(n)?.lastMs??0,r);function Nc(e,t,n,r,i){let a=e.issues??{},o=jc(t),s=Object.values(a).filter(e=>e.kind===`error`).map(e=>e.key),c=(t,n)=>n.includes(Mc(a,o,t,e.now)),l=i?[...i]:void 0;(n===`resolved`||n===`ignored`)&&(l=(l??s).filter(e=>c(e,[n]))),r&&(l=(l??[...o.keys()]).filter(e=>ao(r,o.get(e)?.firstMs??0)));let u=n===`unresolved`?s.filter(e=>c(e,[`resolved`,`ignored`])):[];return{...l?{keys:l}:{},...u.length?{exclude:u}:{}}}function Pc(e,t){let n=e.issues??{},r=jc(e);return Object.fromEntries(t.map(t=>{let i=r.get(t);return[t,{status:Mc(n,r,t,e.now),firstSeenMs:i?.firstMs??0,isNew:(i?.firstMs??0)>=e.window.from,assignee:n[Mt(`error`,t)]?.assignee??null}]}))}var Fc=e=>({service:lo(e)??``,type:e.type?.trim()??``,endpoint:e.endpoint?.trim()??``,critical:e.critical===`1`,q:e.q?.trim()??``,sort:e.sort===`count`?`count`:`recent`,status:kc(e.status)?e.status:`unresolved`,fresh:e.new===`1`,release:lo(e)?e.release?.trim()??``:``,user:e.user?.trim()??``}),Ic=e=>!!(e.service||e.type||e.endpoint||e.critical||e.q||e.fresh||e.release||e.user||e.status!==`unresolved`),Lc=e=>M(`ep.groups`,`err.ge`,`cur`,{filter:{parts:[null,e]}}),Rc=e=>P(e,`ep.groups`).map(e=>A(e.key)[0]);function zc(e,t,n={}){let{page:r,size:i}=po(t,15),a=[e.type?`|${e.type}|`:``,e.q].filter(Boolean);return M(`groups`,`err.g`,`cur`,{top:!0,ids:!0,filter:{...e.service?{prefix:`${e.service}|`}:{},...a.length?{contains:a}:{},...n},order:{by:e.sort===`count`?`n`:`lastMs`,desc:!0,limit:i,offset:(r-1)*i},...e.critical?{having:{by:`c0`,min:.5}}:{}})}var Bc=16,Vc=50,Hc=50;function Uc(e){let t=new Map;for(let{key:n}of[...e].sort(_a(e=>e.agg.lastMs))){let[e=``,r=``]=A(n);t.set(e,[...t.get(e)??[],r])}return t}function Wc({key:e,agg:t},n=new Map){let r=t.top,{type:i,message:a,service:o,endpoint:s}=r,c=(n.get(e)??[]).slice(0,Hc);return{key:e,type:i,message:a,service:o,endpoint:s,count:t.n,firstSeenMs:t.firstMs,lastSeenMs:t.lastMs,critical:(t.c[0]??0)>0,latest:r,endpoints:c,traceIds:t.ids.slice(0,Hc)}}function Gc(e,t){let n=F(e,`req.${t}`);return{exceptions:F(e,`err.${t}`).n,errorRate:we(n.err,n.n),endpoints:ca(e,`err.e.${t}`),critical:P(e,`err.g.${t}`).filter(e=>(e.agg.c[0]??0)>0).length}}function Kc(e){let t=ua(e,`err.s.cur`),n=ua(e,`err.s.prev`),r=new Map;for(let{key:t,agg:n}of P(e,`req.svc`)){let e=yr(A(t)[0]),i=r.get(e)??{n:0,err:0};r.set(e,{n:i.n+n.n,err:i.err+n.err})}return[...new Set([...t.keys(),...r.keys()])].map(i=>{let a=r.get(i)??{n:0,err:0},o=fa(I(e,`trend`,Bc,i));return{service:i,exceptions:t.get(i)?.n??0,requests:a.n,errorRate:we(a.err,a.n),prevExceptions:n.get(i)?.n??0,trend:o}}).filter(e=>e.exceptions>0||e.requests>0).sort((e,t)=>t.exceptions-e.exceptions||t.requests-e.requests||(e.service<t.service?-1:1))}function qc(e,t){let n=Gc(e,`prev`),r=F(e,`meta.prev`).n>0,i=(e,t)=>r?le(e,t):null;return{exceptions:i(t.exceptions,n.exceptions),errorRate:i(t.errorRate,n.errorRate),endpoints:i(t.endpoints,n.endpoints),critical:i(t.critical,n.critical)}}var Jc=(e,t)=>[M(`req.${e}`,`req`,e,uo(t)),M(`err.${e}`,`err`,e,uo(t)),M(`err.g.${e}`,`err.g`,e,t?{filter:{prefix:`${t}|`}}:{}),M(`err.e.${e}`,`err.e`,e,{order:{by:`n`,desc:!0,limit:0},...uo(t)}),M(`err.s.${e}`,`err.s`,e)];function Yc(e){let t=uo(e);return[...so,...Jc(`cur`,e),...Jc(`prev`,e),M(`err.ge`,`err.ge`,`cur`,e?{filter:{prefix:`${e}|`}}:{}),M(`err.t`,`err.t`,`cur`,t),M(`endpoints`,`err.e`,`cur`,{order:{by:`n`,desc:!0,limit:Vc},...t}),M(`req.svc`,`req.svc`,`cur`),N(`trend`,`err.s`,`cur`,Bc,{split:!0}),N(`chart`,`err`,`cur`,48,t),N(`chart.prev`,`err`,`prev`,48,t),N(`sparks`,`err`,`cur`,24,t),N(`rate`,`req`,`cur`,24,t)]}function Xc(e,t){let n=e.endpoint?Rc(t):void 0,r=e.user?P(t,`user.groups`).map(e=>A(e.key)[0]):void 0;return n&&r?n.filter(e=>r.includes(e)):n??r}var Zc=e=>e?[M(`selected`,`err.g`,`cur`,{top:!0,ids:!0,filter:{keys:[e]}})]:[],Qc={needs:e=>{let t=Fc(e.params),n=t.endpoint?[Lc(t.endpoint)]:[],r=t.service?[no(`rel.svc`,t.service)]:[],i=t.user?[M(`user.groups`,`err.u`,`cur`,{filter:{parts:[null,t.user]},order:{by:`n`,desc:!0,limit:5e3}})]:[];return sa([...Zc(e.params.group),...Yc(t.service||void 0),Ac(t.service),...n,...r,...i])},followUp(e,t){let n=Fc(e.params),r=io(t,`rel.svc`,n.release,n.fresh?e.window.from:null);return[zc(n,e.params,Nc(e,t,n.status,r,Xc(n,t)))]},model(e){let t=Gc(e,`cur`),n=Uc(P(e,`err.ge`)),r=I(e,`chart`,48),i=I(e,`sparks`,24);return{meta:co(e),hasRequests:F(e,`req.cur`).n>0,exceptions:t.exceptions,filter:Fc(e.params),groups:P(e,`groups`).map(e=>Wc(e,n)),groupCount:ca(e,`groups`),...po(e.params,15),endpoints:P(e,`endpoints`).map(e=>({endpoint:e.key,count:e.agg.n})),issues:Pc(e,[...P(e,`groups`),...P(e,`selected`)].map(e=>e.key)),hasIssues:!!e.issues,releases:ro(e,`rel.svc`).map(e=>({version:e.version,firstMs:e.firstMs})),selected:P(e,`selected`).map(e=>Wc(e,n))[0]??null,types:[...P(e,`err.t`)].sort(_a(e=>e.agg.n)).map(e=>({type:e.key,count:e.agg.n})),services:Kc(e),starts:De(e.window,48),chart:{plain:r.map(e=>e.n-(e.c[0]??0)),critical:ma(r,0),prev:fa(I(e,`chart.prev`,48))},cards:t,change:qc(e,t),sparks:{exceptions:fa(i),errorRate:I(e,`rate`,24).map(e=>e.n?e.err/e.n*100:null),critical:ma(i,0)}}}},$c=10,el=(e,t,n)=>M(e,t,`cur`,{filter:{parts:[...n,null]},order:{by:`n`,desc:!0,limit:$c}});function tl(e,t){return{count:ca(e,t),top:P(e,t).map(e=>({user:A(e.key).at(-1),count:e.agg.n}))}}var nl=e=>({count:e.length,high:e.filter(e=>e.impact===`high`).length,totalMs:e.reduce((e,t)=>e+t.totalMs,0)});function rl(e,t){if(t.area&&t.area!==`all`&&e.area!==t.area||t.endpoint&&!e.endpoints.includes(t.endpoint)||t.impact&&t.impact!==`all`&&e.impact!==t.impact)return!1;let n=(t.q??``).toLowerCase();return!n||`${e.title} ${e.description} ${e.shape} ${e.endpoints.join(` `)}`.toLowerCase().includes(n)}function il(e,t){let n=e.issues??{},r=new Map(P(e,`ins.life`).map(e=>[e.key,e.agg.firstMs]));return Object.fromEntries(t.map(t=>{let i=r.get(t.key)??t.lastSeenMs,a=n[Mt(`insight`,t.key)];return[t.key,{status:Nt(a,t.lastSeenMs,e.now),firstSeenMs:i,isNew:i>=e.window.from,assignee:a?.assignee??null}]}))}var al={needs:e=>{let t=lo(e.params),n=M(`ins.life`,`ins`,`all`,t?{service:t}:{}),r=t?[no(`rel.svc`,t)]:[],i=e.params.key?[el(`users`,`ins.u`,[e.params.key])]:[];return sa([...so,...Ho(`cur`,`all`,t),...Ho(`prev`,`all`,t),n,...r,...i])},model(e){let t=Ko(e,`cur`),n=Ko(e,`prev`),r=kc(e.params.status)?e.params.status:`unresolved`,i=il(e,t),a=e=>r===`all`||i[e.key].status===r||r===`unresolved`&&i[e.key].status===`regressed`,o=io(e,`rel.svc`,lo(e.params)?e.params.release??``:``,null),s=t.filter(t=>rl(t,e.params)&&a(t)&&(!o||ao(o,i[t.key].firstSeenMs)));return{meta:co(e),totals:nl(t),prevTotals:nl(n),found:ur(t,n,e.window),groups:s.slice(0,200),matching:s.length,selected:e.params.key?t.find(t=>t.key===e.params.key)??null:null,issues:i,hasIssues:!!e.issues,releases:ro(e,`rel.svc`).map(e=>({version:e.version,firstMs:e.firstMs})),selectedUsers:e.params.key?tl(e,`users`):null}}},ol=[{key:`info`,label:`Info and below`,levels:[`trace`,`debug`,`info`]},{key:`warn`,label:`Warnings`,levels:[`warn`]},{key:`error`,label:`Errors`,levels:[`error`,`critical`]}],sl=e=>!!e&&li.includes(e),cl=e=>({minLevel:sl(e.level)?e.level:`trace`,exact:e.exact===`1`&&sl(e.level),service:e.service??``,category:e.category??``,traceId:e.trace??``,query:e.q??``,pattern:e.pattern??``,origin:e.origin===`request`||e.origin===`outside`?e.origin:``,user:e.user?.trim()??``}),ll=e=>({minLevel:e.minLevel,...e.exact?{exactLevel:!0}:{},...e.service?{logService:e.service}:{},...e.category?{category:e.category}:{},...e.traceId?{traceId:e.traceId}:{},...e.query?{q:e.query}:{},...e.pattern?{pattern:e.pattern}:{},...e.origin?{logOrigin:e.origin}:{}});function ul(e,t){let n=ua(e,t),r=e=>n.get(e)?.n??0;return{total:li.reduce((e,t)=>e+r(t),0),warnings:r(`warn`),errors:r(`error`)+r(`critical`),critical:r(`critical`)}}function dl(e,t){let n=t.total>0,r=(e,t)=>n?le(e,t):null;return{total:r(e.total,t.total),warnings:r(e.warnings,t.warnings),errors:r(e.errors,t.errors),critical:r(e.critical,t.critical)}}var fl=1e3,pl=(e,t,n)=>oa(`rows`,`logs`,`cur`,{filter:n?{...ll({...t,query:e.searchIds?``:t.query}),traceIds:n}:ll(t),page:po(e.params,30)}),ml={needs:e=>{let t=cl(e.params),n=uo(t.service||void 0);return sa([...so,M(`log.cur`,`log`,`cur`,n),M(`log.prev`,`log`,`prev`,n),M(`log.s`,`log.s`,`cur`),...t.user?[oa(`user.traces`,`requests`,`cur`,{filter:{user:t.user},limit:fl})]:[pl(e,t,e.searchIds)],N(`volume`,`log`,`cur`,48,{split:!0,...n}),N(`sparks`,`log`,`cur`,24,{split:!0,...n})])},followUp(e,t){let n=cl(e.params);if(!n.user)return[];let r=ha(t,`user.traces`).items.map(e=>e.traceId);return[pl(e,n,e.searchIds?r.filter(t=>e.searchIds.includes(t)):r)]},model(e){let t=ul(e,`log.cur`),n=ha(e,`rows`),r=t=>fa(da(e,`sparks`,24,t));return{meta:co(e),filter:cl(e.params),totalLines:t.total,services:[...new Set(P(e,`log.s`).map(e=>A(e.key)[0]))].sort(),rows:n.items,matching:n.total??n.items.length,page:n.page,pageSize:n.pageSize,starts:De(e.window,48),volume:Object.fromEntries(ol.map(t=>[t.key,fa(da(e,`volume`,48,t.levels))])),cards:t,change:dl(t,ul(e,`log.prev`)),sparks:{total:r(li),warnings:r([`warn`]),errors:r([`error`,`critical`]),critical:r([`critical`])}}}},hl=(e,t)=>ha(e,t).total??0,gl={needs:e=>{let t=ll(cl(e.params));return sa([...so,oa(`cur`,`logs`,`cur`,{filter:t,limit:0,count:!0,aggregate:{buckets:48}}),oa(`prev`,`logs`,`prev`,{filter:t,limit:0,count:!0})])},model(e){let t=ha(e,`cur`).aggregate?.series??[],n=hl(e,`cur`),r=hl(e,`prev`);return{meta:co(e),starts:De(e.window,48),lines:t.map(e=>e.n),errors:t.map(e=>e.err),total:n,errorTotal:ha(e,`cur`).aggregate?.total.err??0,change:r>0?le(n,r):null}}};function _l(e,t){let n=cl(e.params),r=pi(n.minLevel);return P(t,`pat`).flatMap(e=>{let[t=``,i=`info`,a=``,o=`r`]=A(e.key),s=pi(i),c=!n.origin||n.origin===`outside`==(o===`o`);return(n.exact?s===r:s>=r)&&(!n.pattern||a===n.pattern)&&c&&e.agg.n>0?[{key:e.key,service:t,level:i,id:a,n:e.agg.n}]:[]})}function vl(e){let t=new Map;for(let n of e){let e=t.get(n.id)??{id:n.id,n:0,keys:[]};e.n+=n.n,e.keys.push(n),t.set(n.id,e)}return[...t.values()].sort((e,t)=>t.n-e.n||(e.id<t.id?-1:1))}var yl=e=>{let t=cl(e.params).service;return t?{parts:[t,null,null,null]}:void 0};function bl(e,t,n){let r=t.keys.map(e=>e.key),i=P(e,`pat.top`).filter(e=>r.includes(e.key)).sort((e,t)=>t.agg.topRank-e.agg.topRank)[0]?.agg.top??null,a=P(e,`pat.prev`).filter(e=>r.includes(e.key)).reduce((e,t)=>e+t.agg.n,0),o=t.keys.reduce((e,t)=>pi(t.level)>pi(e)?t.level:e,li[0]);return{id:t.id,pattern:i?.pattern??``,sample:i?.message??``,category:i?.category??``,traceId:i?.traceId??``,count:t.n,change:a>0?le(t.n,a):null,share:n?t.n/n*100:0,level:o,services:[...new Set(t.keys.map(e=>e.service))].sort(),series:fa(da(e,`pat.s`,24,r))}}var xl={needs:e=>sa([...so,M(`pat`,`log.p`,`cur`,{filter:yl(e)})]),followUp(e,t){let n=vl(_l(e,t)).slice(0,50).flatMap(e=>e.keys.map(e=>e.key));return n.length?[M(`pat.top`,`log.p`,`cur`,{top:!0,filter:{keys:n}}),M(`pat.prev`,`log.p`,`prev`,{filter:{keys:n}}),N(`pat.s`,`log.p`,`cur`,24,{split:!0,filter:{keys:n}})]:[]},model(e){let t=vl(_l(e,e)),n=t.reduce((e,t)=>e+t.n,0);return{meta:co(e),total:t.length,lines:n,rows:t.slice(0,50).map(t=>bl(e,t,n))}}},Sl=(e,t,n)=>({value:e,previous:t,change:le(e,t),series:n}),Cl=e=>e.n?we(e.err,e.n):null;function wl(e,t,n){let r=t.n>0,i=e=>r?e:null;return{total:Sl(e.n,i(t.n),fa(n)),avgDuration:Sl(ia(e),i(ia(t)),pa(n)),sqlQueries:Sl(e.c[0]??0,i(t.c[0]??0),ma(n,0)),errorRate:Sl(Cl(e),i(Cl(t)),n.map(Cl)),withInsights:Sl(e.c[1]??0,i(t.c[1]??0),ma(n,1))}}function Tl(e,t,n,r){let i={...n?{filter:n}:{},...r?{service:r}:{}};return[M(`${e}.cur`,t,`cur`,i),M(`${e}.prev`,t,`prev`,i),N(`${e}.series`,t,`cur`,24,i)]}var El=(e,t)=>wl(F(e,`${t}.cur`),F(e,`${t}.prev`),I(e,`${t}.series`,24)),Dl=(e,t)=>e?.[t]??500;function Ol(e,t){if(!e.n||!e.hist)return{score:null,targetMs:t,satisfied:0,tolerating:0,frustrated:e.n};let n=(e.n-e.err)/e.n,r=Fi(e.hist,t)*n,i=(Fi(e.hist,4*t)-Fi(e.hist,t))*n;return{score:(r+i/2)/e.n,targetMs:t,satisfied:r,tolerating:i,frustrated:e.n-r-i}}function kl(e){let t=e.reduce((e,t)=>e+t.satisfied+t.tolerating+t.frustrated,0);if(!t)return null;let n=t=>e.reduce((e,n)=>e+n[t],0),r=new Set(e.map(e=>e.targetMs));return{score:(n(`satisfied`)+n(`tolerating`)/2)/t,targetMs:r.size===1?e[0].targetMs:0,satisfied:n(`satisfied`),tolerating:n(`tolerating`),frustrated:n(`frustrated`)}}function Al(e){return e>=.94?`Excellent`:e>=.85?`Good`:e>=.7?`Fair`:e>=.5?`Poor`:`Unacceptable`}var jl=e=>M(`apdex`,`svc`,`cur`,{hist:!0,...e?{filter:{keys:[e]}}:{}});function Ml(e){let t=new Map;for(let n of P(e,`apdex`)){let[r,...i]=n.key.split(`:`);if(r!==`api`&&r!==`worker`)continue;let a=yr(i.join(`:`));t.set(a,Ol(n.agg,Dl(e.apdex,a)))}return t}var Nl=e=>kl([...Ml(e).values()]),Pl={api:0,web:1,database:2,external:3,queue:4,worker:5},Fl=e=>`svc.${e}`,Il=`edge.cur`,Ll=e=>[M(Fl(e),`svc`,e,{hist:!0,top:!0})],Rl=()=>[M(Il,`edge`,`cur`,{top:!0,hist:!0})];function zl({key:e,agg:t}){let n=t.top,r=we(t.err,t.n),i=t.hist?Ni(t.hist,t.n,95):null;return{key:e,name:n.name,kind:n.kind,status:Fr(t.n,r,i),requests:t.n,errors:t.err,errorRate:r,avgMs:ia(t),p95Ms:i,detail:n.detail}}function Bl(e,t){let n=P(e,Fl(t)),r=new Set(n.filter(e=>e.key.startsWith(`api:`)).map(e=>e.key.slice(4)));return n.filter(e=>!(e.key.startsWith(`worker:`)&&r.has(e.key.slice(7)))).map(zl).sort((e,t)=>t.requests-e.requests||Pl[e.kind]-Pl[t.kind])}function Vl(e){return[...P(e,Il)].sort(_a(e=>e.agg.n)).map(({agg:e})=>{let{from:t,to:n}=e.top;return{from:t,to:n,calls:e.n,avgMs:ia(e),errors:e.err,p95Ms:e.hist?Ni(e.hist,e.n,95):null}})}var Hl=[{key:`request`,label:`Request`,shade:100},{key:`server`,label:`Server`,shade:70},{key:`database`,label:`Database`,shade:55},{key:`render`,label:`Render`,shade:42},{key:`network`,label:`Network`,shade:30}],Ul=5,Wl=5,Gl=3,Kl=50,ql=5;function Jl(e,t){let n=il(e,t);return t.filter(e=>n[e.key].status===`unresolved`||n[e.key].status===`regressed`)}function Yl(e){let t=P(e,`err.recent`),n=Pc(e,t.map(e=>e.key));return t.flatMap(e=>{let t=n[e.key],r=t.status===`regressed`?`regressed`:t.isNew&&t.status===`unresolved`?`new`:null;return r?[{group:Wc(e),why:r}]:[]}).slice(0,ql)}function Xl(e){let t=ua(e,`timing`);return Hl.map(e=>{let n=t.get(e.key);return{key:e.key,label:e.label,avg:n?ia(n):null,p95:n?.hist?Ni(n.hist,n.n,95):null,shade:e.shade}})}function Zl(e){let t=I(e,`activity`,48),n=fa(I(e,`activity.prev`,48));return{starts:De(e.window,48),requests:fa(t),errors:t.map(e=>e.err),avgDuration:pa(t),prevRequests:n}}function Ql(e,t){let n=Bl(e,`cur`);if(!t)return n;let r=new Set(Vl(e).filter(e=>e.from===t).map(e=>e.to));return n.filter(e=>e.name===t||r.has(e.name))}var $l={needs:e=>{let t=lo(e.params),n=uo(t);return sa([...so,...Tl(`h`,`req`,void 0,t),N(`activity`,`req`,`cur`,48,n),N(`activity.prev`,`req`,`prev`,48,n),M(`timing`,`req.part`,`cur`,{hist:!0,...n}),...Ll(`cur`),...t?Rl():[],oa(`recent`,`requests`,`cur`,{limit:Wl,filter:t?{service:br(t)}:{}}),...Ho(`cur`,`all`,t),...Ho(`prev`,`all`,t),Ac(t??``),jl(t?`api:${br(t)}`:void 0),M(`err.recent`,`err.g`,`cur`,{top:!0,order:{by:`lastMs`,desc:!0,limit:Kl},...t?{filter:{prefix:`${t}|`}}:{}})])},model(e){let t=Ko(e,`cur`),n=El(e,`h`);return{meta:co(e),empty:n.total.value===0,headlines:n,insightsFound:ur(t,Ko(e,`prev`),e.window),activity:Zl(e),timing:Xl(e),services:Ql(e,lo(e.params)).slice(0,Ul),recent:ha(e,`recent`).items,insights:Jl(e,t).slice(0,Gl),freshErrors:Yl(e),apdex:Nl(e)}}},eu=[{key:`ssr`,phase:`ssr`,label:`Server-side rendering (SSR)`,kind:`ms`},{key:`client`,phase:`client`,label:`Client render`,kind:`ms`},{key:`hydration`,phase:`hydration`,label:`Hydration`,kind:`ms`},{key:`images`,phase:`image`,label:`Image loading`,kind:`ms`},{key:`cls`,phase:`cls`,label:`Layout shift`,kind:`score`}],tu=e=>e?.hist?Ni(e.hist,e.n,75):null,nu=e=>e?ia(e):null;function ru(e,t){let n=ua(e,`pv.g.cur`);return eu.map(e=>({key:e.key,label:e.label,value:(t===`avg`?nu:tu)(n.get(e.phase)),kind:e.kind}))}function iu(e,t){let n=nu(ua(e,`pv.g.cur`).get(t)),r=nu(ua(e,`pv.g.prev`).get(t));return{value:n,change:le(n,r),series:pa(I(e,`cards`,24,t))}}var au=e=>Bo(e,`cur`).filter(e=>e.issues.length>0).map(e=>e.name);function ou(e,t){let n=Bo(e,`prev`).filter(e=>e.issues.length>0).length,r=e.series.issues?.byKey??{},i=Array.from({length:24},(e,t)=>Object.values(r).reduce((e,n)=>e+(n[t]?.c[0]??0),0));return{value:t,change:F(e,`react.prev`).n>0?le(t,n):null,series:i}}var su=()=>[...so,...No(`cur`),...Po(`cur`),...Po(`prev`),M(`react.cur`,`react`,`cur`),M(`react.prev`,`react`,`prev`),M(`pv.g.cur`,`pv.g`,`cur`,{hist:!0}),M(`pv.g.prev`,`pv.g`,`prev`),N(`cards`,`pv.g`,`cur`,24,{split:!0,filter:{keys:[`render`,`ssr`,`hydration`]}}),N(`p75`,`pv.g`,`cur`,24,{hist:!0,filter:{keys:[`render`]}}),N(`views`,`pv`,`cur`,24)],cu={needs:()=>sa(su()),followUp(e,t){let n=au(t);return n.length?[N(`issues`,`rc`,`cur`,24,{split:!0,filter:{keys:n}})]:[]},model(e){let t=(e.params.q??``).trim().toLowerCase(),n=Bo(e,`cur`),r=n.filter(e=>!t||e.name.toLowerCase().includes(t)),i=Ro(e,`cur`).filter(e=>!t||e.route.toLowerCase().includes(t)),a=n.filter(e=>e.issues.length>0).length;return{meta:co(e),views:Fo(e,`cur`),routes:i.slice(0,200),routeCount:i.length,components:r.slice(0,200),componentCount:r.length,hasReact:F(e,`react.cur`).n>0,starts:De(e.window,24),chart:{avg:pa(I(e,`cards`,24,`render`)),p75:I(e,`p75`,24).map(e=>tu(e)),views:fa(I(e,`views`,24))},phases:{avg:ru(e,`avg`),p75:ru(e,`p75`)},cards:{render:iu(e,`render`),ssr:iu(e,`ssr`),hydration:iu(e,`hydration`),issues:ou(e,a)}}}},lu=new Set(_o.map(([e])=>e).filter(Boolean));function uu(e){let t={};for(let n of[`method`,`status`,`q`,`endpoint`,`user`])e[n]&&(t[n]=e[n]);return e.service&&(t.service=br(e.service)),e.insights&&(t.insights=!0),lu.has(e.duration)&&(t.duration=e.duration),t}function du(e){let t=e.status===`failed`?null:e.status||null,n=[e.method||null,t,e.status===`failed`?`1`:null,lu.has(e.duration)?e.duration:null],r=e.service?[br(e.service),...n]:n;return r.some(e=>e!==null)?{parts:r}:void 0}var fu=e=>({key:Do(e.sort)?e.sort:`time`,desc:e.desc!==`0`});function pu(e,t){let n=t?{...yo(e),q:``}:yo(e),r={...uu(n),...t?{traceIds:t}:{}},i=!!t||n.q.trim()!==``||!!(n.endpoint||n.user||n.insights),a=[...so,oa(`rows`,`requests`,`cur`,{filter:r,sort:fu(e),page:po(e,15),...i?{aggregate:{buckets:24}}:{}}),M(`opt.dim`,`req.dim`,`cur`),M(`opt.svc`,`req.svc`,`cur`)];return i?a.push(oa(`prev`,`requests`,`prev`,{filter:r,limit:0,aggregate:{buckets:24}})):a.push(...Tl(`h`,n.service?`req.svc`:`req.dim`,du(n))),e.trace&&a.push(oa(`selected`,`requests`,`cur`,{filter:{traceId:e.trace},limit:1})),sa(a)}function mu(e){let t=ha(e,`rows`).aggregate,n=ha(e,`prev`).aggregate;return!t||!n?El(e,`h`):wl(t.total,n.total,t.series)}var hu=e=>[...new Set(e)].sort(),gu={needs:e=>pu(e.params,e.searchIds),model(e){let t=ha(e,`rows`),n=P(e,`opt.svc`).filter(e=>(e.agg.c[2]??0)>0);return{meta:co(e),headlines:mu(e),options:{methods:hu(P(e,`opt.dim`).map(e=>A(e.key)[0])),services:hu(n.map(e=>yr(A(e.key)[0])))},filtered:To(yo(e.params)),rows:t.items,total:t.total??t.items.length,page:t.page,pageSize:t.pageSize,selected:e.params.trace?ha(e,`selected`).items[0]??null:null}}},_u=50,vu=(e,t)=>e.hist&&e.n?Ni(e.hist,e.n,t):null;function yu(e){return e.n?{count:e.n,errors:e.err,errorRate:we(e.err,e.n),avgMs:ia(e),p50Ms:vu(e,50),p95Ms:vu(e,95),p99Ms:vu(e,99)}:null}var bu=e=>[...e].sort(_a(e=>e.agg.n)).map(e=>({name:A(e.key).at(-1),count:e.agg.n,errors:e.agg.err,avgMs:ia(e.agg)}));function xu(e){let t=e.service??``,n=t.includes(`:`)?t:`api:${t}`,r=e.endpoint??``;return{rowKey:n,name:n.slice(n.indexOf(`:`)+1),endpoint:r,key:k(n,r)}}function Su(e){let t=I(e,`chart`,48);return{count:fa(t),errors:t.map(e=>e.err),p50:t.map(e=>vu(e,50)),p95:t.map(e=>vu(e,95)),p99:t.map(e=>vu(e,99)),prevCount:fa(I(e,`chart.prev`,48))}}var Cu={needs:e=>{let t=xu(e.params),n={filter:{keys:[t.key]}},r={by:`n`,desc:!0,limit:_u};return sa([...so,M(`ep`,`svc.ep`,`cur`,{hist:!0,ids:!0,...n}),M(`ep.prev`,`svc.ep`,`prev`,{hist:!0,...n}),N(`chart`,`svc.ep`,`cur`,48,{hist:!0,...n}),N(`chart.prev`,`svc.ep`,`prev`,48,n),M(`q`,`ep.q`,`cur`,{filter:{prefix:k(t.key,``)},order:r}),M(`call`,`ep.call`,`cur`,{filter:{prefix:k(t.key,``)},order:r}),M(`ge`,`err.ge`,`cur`,{filter:{prefix:`${yr(t.name)}|`,parts:[null,t.endpoint]}}),oa(`slowest`,`requests`,`cur`,{filter:{endpoint:t.endpoint,service:br(t.name)},sort:{key:`duration`,desc:!0},limit:10}),el(`users`,`ep.u`,[yr(t.name),t.endpoint])])},followUp(e,t){let n=P(t,`ep`)[0]?.agg.ids??[],r=[...new Set(P(t,`ge`).map(e=>A(e.key)[0]))];return[...n.length?[oa(`recent`,`requests`,`cur`,{filter:{traceIds:n},limit:n.length})]:[],...r.length?[M(`errors`,`err.g`,`cur`,{top:!0,filter:{keys:r},order:{by:`n`,desc:!0,limit:_u}})]:[]]},model(e){let t=xu(e.params);return{meta:co(e),service:t.name,endpoint:t.endpoint,totals:yu(F(e,`ep`)),prev:yu(F(e,`ep.prev`)),starts:De(e.window,48),chart:Su(e),slowest:ha(e,`slowest`).items,recent:ha(e,`recent`).items,queries:bu(P(e,`q`)),calls:bu(P(e,`call`)),errors:P(e,`errors`).map(e=>Wc(e)),users:tl(e,`users`)}}},wu=50,Tu=e=>({filter:{keys:[e]}}),Eu={needs:e=>{let t=e.params.group??``;return sa([...so,M(`g`,`err.g`,`cur`,{top:!0,ids:!0,...Tu(t)}),M(`g.prev`,`err.g`,`prev`,Tu(t)),M(`ge`,`err.ge`,`cur`,{filter:{prefix:k(t,``)}}),N(`chart`,`err.g`,`cur`,48,Tu(t)),N(`chart.prev`,`err.g`,`prev`,48,Tu(t)),M(`life`,`err.g`,`all`,Tu(t)),el(`users`,`err.u`,[t])])},followUp(e,t){let n=P(t,`g`)[0]?.agg.ids.slice(0,wu)??[];return n.length?[oa(`requests`,`requests`,`cur`,{filter:{traceIds:n},limit:wu}),oa(`traces`,`traces`,`cur`,{filter:{traceIds:n},limit:wu})]:[]},model(e){let t=P(e,`g`)[0],n=[...P(e,`ge`)].sort(_a(e=>e.agg.n)),r=I(e,`chart`,48);return{meta:co(e),group:t?Wc(t,new Map([[t.key,n.map(e=>A(e.key)[1])]])):null,prevCount:F(e,`g.prev`).n,starts:De(e.window,48),chart:{count:fa(r),critical:ma(r,0),prev:fa(I(e,`chart.prev`,48))},endpoints:n.map(e=>({endpoint:A(e.key)[1],count:e.agg.n})),requests:ha(e,`requests`).items,traces:ha(e,`traces`).items,issue:t?Pc(e,[t.key])[t.key]??null:null,hasIssues:!!e.issues,users:tl(e,`users`)}}};function Du(e,t){let n=new Map;for(let r of e){let e=t(r);e&&n.set(e,(n.get(e)??0)+1)}return[...n].map(([e,t])=>({value:e,count:t})).sort((e,t)=>t.count-e.count||(e.value<t.value?-1:1))}var Ou=e=>e.n?{count:e.n,avgMs:ia(e),totalMs:e.sum,slow:e.c[0]??0,errors:e.err}:null;function ku(e,t){let[n=``,r=``]=A(e.key);return{service:t?n.slice(n.indexOf(`:`)+1):n,endpoint:t?r:``,count:e.agg.n,avgMs:ia(e.agg)}}var Au={needs:e=>{let t=e.params.q??``,n={filter:{keys:[t]}};return sa([...so,M(`q`,`db.q`,`cur`,{top:!0,ids:!0,...n}),M(`q.prev`,`db.q`,`prev`,n),N(`chart`,`db.q`,`cur`,48,n),N(`chart.prev`,`db.q`,`prev`,48,n),M(`svc`,`db.q@svc`,`cur`,{filter:{parts:[null,t]}}),M(`ep`,`ep.q`,`cur`,{filter:{parts:[null,null,t]}})])},followUp(e,t){let n=P(t,`q`)[0]?.agg.ids??[];return n.length?[oa(`traces`,`traces`,`cur`,{filter:{traceIds:n},limit:n.length})]:[]},model(e){let t=I(e,`chart`,48);return{meta:co(e),query:e.params.q??``,slowMs:e.options.slowQueryMs,totals:Ou(F(e,`q`)),prev:Ou(F(e,`q.prev`)),slowest:P(e,`q`)[0]?.agg.top??null,starts:De(e.window,48),chart:{count:fa(t),avgMs:pa(t),slow:ma(t,0),prevCount:fa(I(e,`chart.prev`,48))},services:[...P(e,`svc`)].sort(_a(e=>e.agg.n)).map(e=>ku(e,!1)),endpoints:[...P(e,`ep`)].sort(_a(e=>e.agg.n)).map(e=>ku(e,!0)),traces:ha(e,`traces`).items}}},ju=e=>Object.fromEntries(cs.map(t=>[t,e(t)]));function Mu(e,t){return{views:fa(I(e,`views`,48)),prevViews:fa(I(e,`views.prev`,48)),...ju(n=>pa(I(e,`m.series`,48,k(t,n))))}}var Nu={needs:e=>{let t=e.params.route??``,n={filter:{keys:[t]}},r={filter:{prefix:k(t,``)}};return sa([...so,M(`r`,`pv.route`,`cur`,{ids:!0,...n}),M(`r.prev`,`pv.route`,`prev`,n),M(`m`,`pv.m`,`cur`,r),N(`views`,`pv.route`,`cur`,48,n),N(`views.prev`,`pv.route`,`prev`,48,n),N(`m.series`,`pv.m`,`cur`,48,{...r,split:!0}),M(`rc`,`rc.route`,`cur`,{filter:{parts:[null,t]}})])},followUp(e,t){let n=P(t,`r`)[0]?.agg.ids??[];return n.length?[oa(`loads`,`traces`,`cur`,{filter:{traceIds:n},limit:n.length})]:[]},model(e){let t=e.params.route??``,n=ua(e,`m`);return{meta:co(e),route:t,views:F(e,`r`).n,prevViews:F(e,`r.prev`).n,averages:ju(e=>{let r=n.get(k(t,e));return r?ia(r):null}),starts:De(e.window,48),chart:Mu(e,t),components:[...P(e,`rc`)].sort(_a(e=>e.agg.n)).map(e=>({name:A(e.key)[0],count:e.agg.n})),loads:ha(e,`loads`).items}}},Pu=10,Fu=e=>[no(`rel.all`,e),M(`rel.cur`,`rel`,`cur`,{filter:{parts:[e,null]},hist:!0}),Ac(e)];function Iu(e,t){let n=ro(e,`rel.all`),r=ua(e,`rel.cur`),i=P(e,`life`).map(e=>e.agg.firstMs);return n.slice(0,Pu).map(e=>{let a=r.get(k(t,e.version)),o=oo(n,e),s=a?.n??0;return{version:e.version,firstMs:e.firstMs,lastMs:e.lastMs,requests:s,errors:a?.err??0,errorRate:s?(a?.err??0)/s:0,p95Ms:a?.hist&&s?Ni(a.hist,s,95):null,newErrors:i.filter(t=>t>=e.firstMs&&t<o).length}})}var Lu=50,Ru=10,zu=10,Bu=new Set([`api`,`worker`]),Vu=e=>Bu.has(e);function Hu(e){let t=yr(e);return[M(`err.g`,`err.g`,`cur`,{top:!0,filter:{prefix:`${t}|`},order:{by:`n`,desc:!0,limit:Lu}}),M(`err.cur`,`err.s`,`cur`,{filter:{keys:[t]}}),M(`err.prev`,`err.s`,`prev`,{filter:{keys:[t]}}),oa(`slowest`,`requests`,`cur`,{filter:{service:e},sort:{key:`duration`,desc:!0},limit:Ru,count:!0}),oa(`logs`,`logs`,`cur`,{filter:{logService:t},limit:zu,count:!0}),M(`log.s`,`log.s`,`cur`,{filter:{parts:[t,null]}}),...Fu(t)]}function Uu(e){return{groups:[...P(e,`err.g`)].sort(_a(e=>e.agg.n)).map(e=>Wc(e)),total:ca(e,`err.g`),exceptions:F(e,`err.cur`).n,prevExceptions:F(e,`err.prev`).n}}function Wu(e,t){let n=ha(e,`logs`),r=ua(e,`log.s`),i=e=>r.get(k(yr(t),e))?.n??0;return{rows:n.items,total:n.total??n.items.length,warnings:i(`warn`),errors:i(`error`)+i(`critical`)}}function Gu(e){let t=I(e,`chart`,48),n=fa(I(e,`chart.prev`,48));return{requests:fa(t),errors:t.map(e=>e.err),avgMs:pa(t),p95Ms:t.map(e=>e.hist&&e.n?Ni(e.hist,e.n,95):null),prevRequests:n}}var Ku={groups:[],total:0,exceptions:0,prevExceptions:0},qu={rows:[],total:0,warnings:0,errors:0},Ju={needs:()=>sa([...so,...Ll(`cur`),...Ll(`prev`),...Rl()]),followUp(e,t){let n=Os(Bl(t,`cur`),e.params.service??null);return n?[M(`svc.ep`,`svc.ep`,`cur`,{filter:{prefix:Ts(n.key)},order:{by:`n`,desc:!0,limit:200}}),N(`chart`,`svc`,`cur`,48,{filter:{keys:[n.key]},hist:!0}),N(`chart.prev`,`svc`,`prev`,48,{filter:{keys:[n.key]}}),...Vu(n.kind)?[...Hu(n.name),jl(n.key)]:[]]:[]},model(e){let t=Os(Bl(e,`cur`),e.params.service??null),n=!!t&&Vu(t.kind),r=ha(e,`slowest`);return{meta:co(e),row:t,prevRow:t?Bl(e,`prev`).find(e=>e.key===t.key)??null:null,owned:n,starts:De(e.window,48),chart:Gu(e),endpoints:t?Es([...P(e,`svc.ep`)].sort(_a(e=>e.agg.n)),t.key):[],endpointCount:ca(e,`svc.ep`),...t?Ds(Vl(e),t.name):{incoming:[],outgoing:[]},errors:n?Uu(e):Ku,slowest:r.items,requestCount:r.total??r.items.length,logs:n&&t?Wu(e,t.name):qu,versions:n&&t?Iu(e,yr(t.name)):[],apdex:n&&t?Ml(e).get(yr(t.name))??null:null}}},Yu=24,Xu=10;function Zu(e){let t=e.filter(e=>e.kind===`api`),n=t.reduce((e,t)=>e+t.requests,0),r=t.reduce((e,t)=>e+t.errors,0);return{apis:t.length,databases:e.filter(e=>e.kind===`database`).length,served:n,errorRate:n?we(r,n):null}}function Qu(e,t,n){return{row:t,endpoints:Es([...P(e,`svc.ep`)].sort(_a(e=>e.agg.n)),t.key),starts:De(e.window,Yu),traffic:fa(I(e,`traffic`,Yu)),...Ds(n,t.name)}}var $u={needs:()=>sa([...so,...Ll(`cur`),...Ll(`prev`),...Rl(),N(`served`,`svc`,`cur`,Yu,{filter:{prefix:`api:`}})]),followUp(e,t){let n=Os(Bl(t,`cur`),e.params.service??null);if(!n)return[];let r={by:`n`,desc:!0,limit:Xu};return[{type:`groups`,id:`svc.ep`,kind:`svc.ep`,window:`cur`,filter:{prefix:Ts(n.key)},order:r},N(`traffic`,`svc`,`cur`,Yu,{filter:{keys:[n.key]}})]},model(e){let t=Bl(e,`cur`),n=Vl(e),r=Os(t,e.params.service??null),i=I(e,`served`,Yu);return{meta:co(e),rows:t,edges:n,summary:Zu(t),prevSummary:Zu(Bl(e,`prev`)),served:fa(i),failed:i.map(e=>e.err),selected:r?Qu(e,r,n):null}}},ed=()=>({groups:{},series:{},lists:{},traces:{}}),td=864e5,nd=/^cur-(\d+)([dw])$/;function rd(e,t){if(typeof t==`object`)return t;if(t===`cur`)return e.window;if(t===`prev`)return e.prev;if(t===`all`)return{from:0,to:e.now};if(t===`before`)return{from:e.window.from-7*td,to:e.window.from};let n=nd.exec(t),r=n?Number(n[1])*(n[2]===`w`?7:1)*td:0;return{from:e.window.from-r,to:e.window.to-r}}var id=e=>e.replace(/[A-Z]/g,e=>e.toLowerCase());function ad(e,t){if(!t)return!0;if(t.contains?.some(t=>!id(e).includes(id(t)))||t.exclude?.includes(e)||t.prefix!==void 0&&!e.startsWith(t.prefix)||t.keys&&!t.keys.includes(e))return!1;if(!t.parts)return!0;let n=A(e);return n.length===t.parts.length&&t.parts.every((e,t)=>e===null||e===n[t])}function od(e,t){return t===`avg`?ia(e)??-1/0:t===`n`||t===`sum`||t===`lastMs`?e[t]:e.c[Number(t.slice(1))]??0}function sd(e,t,n){let r=n?-1:1;return[...e].sort((e,n)=>(od(e.agg,t)-od(n.agg,t))*r||(e.key<n.key?-1:+(e.key>n.key)))}var R=6e4,cd={"15m":R,"1h":2.5*R,"6h":15*R,"24h":30*R,"7d":240*R,"30d":720*R};function z(e){let t=cd[e.range],n=Math.floor(e.window.from/t)*t,r=Math.max(n+t,Math.ceil(Math.max(e.now,e.window.to)/t)*t);return{window:{from:n,to:r},buckets:Math.round((r-n)/t),bucketMs:t}}var B=(e,t)=>rd({window:e.window,prev:e.window,now:e.window.to},t),ld=500,ud=200,dd=[{id:`svc`,kind:`svc`},{id:`ep`,kind:`svc.ep`}],fd=(e,t)=>`pb.${e}.${String(t)}`,pd=()=>sa([...so,...Ll(`cur`),...Rl(),...Sa(),M(`pb.ver`,`rel`,`cur`),M(`pb.err`,`err.g`,`cur`,{top:!0,order:{by:`n`,desc:!0,limit:ld}})]);function md(e,t){return P(e,`pb.err`).filter(e=>e.agg.firstMs>t.window.from).sort((e,t)=>t.agg.firstMs-e.agg.firstMs||(e.key<t.key?-1:1)).slice(0,ud).map(e=>e.key)}function hd(e,t){let n=z(e),r=[`cur`,...ba(Ca(t))],i=dd.flatMap(e=>r.map(t=>N(fd(e.id,t),e.kind,B(n,t),n.buckets,{split:!0,hist:!0}))),a=P(t,`pb.ver`).map(e=>e.key).slice(0,ud),o=md(t,e);return[...i,...a.length?[M(`pb.ver.before`,`rel`,`before`,{filter:{keys:a}})]:[],...o.length?[M(`pb.err.before`,`err.g`,`before`,{filter:{keys:o}})]:[]]}var gd=e=>e.reduce((e,t)=>e+t.n,0);function _d(e,t){let n=ba(t);return dd.flatMap(t=>{let r=e.series[fd(t.id,`cur`)]?.byKey??{},i=n.map(n=>e.series[fd(t.id,n)]?.byKey??{});return Object.entries(r).map(([e,t])=>({key:e,cur:t,samples:i.map(t=>t[e]).filter(e=>!!e&&gd(e)>0)}))})}function vd(e,t){return ba(t).filter(t=>Object.values(e.series[fd(`svc`,t)]?.byKey??{}).some(e=>gd(e)>0)).length}function yd(e){let t=new Set(P(e,`pb.ver.before`).map(e=>e.key));return P(e,`pb.ver`).map(e=>{let[n=``,r=``]=A(e.key);return{service:n,version:r,firstMs:e.agg.firstMs,isNew:!t.has(e.key)}})}function bd(e,t){let n=new Set(P(e,`pb.err.before`).map(e=>e.key)),r=new Set(md(e,t));return P(e,`pb.err`).map(e=>{let t=Wc(e);return{key:t.key,service:t.service,type:t.type,message:t.message,firstMs:t.firstSeenMs,count:t.count,isNew:r.has(e.key)&&!n.has(e.key)}})}var xd=9e5,Sd=e=>zi(e)?e:`medium`,Cd=(e,t)=>e.services.some(e=>e.row===t||e.name===t);function wd(e,t,n){let r=t.problem?e.find(e=>e.id===t.problem):void 0;if(r)return r;let i=Number(t.at);if(!t.at||!Number.isFinite(i))return null;let a=t.focus,o=e=>i<e.startMs?e.startMs-i:i>e.endMs?i-e.endMs:0;return e.filter(e=>(!a||Cd(e,a))&&o(e)<=2*n).sort((e,t)=>o(e)-o(t)||t.startMs-e.startMs)[0]??null}function Td(e){let t=new Map(P(e,Fl(`cur`)).map(e=>[e.key,e.agg.top]));return e=>t.get(e)??null}function Ed(e){let t=Ca(e),{window:n,buckets:r,bucketMs:i}=z(e),a=De(n,r),o=Sd(e.params.sensitivity),s=Ri[o]??Bi,c=Oa(_d(e,t),{starts:a,bucketMs:i,spreads:s,rowInfo:Td(e)}),l=Math.max(2*i,xd),u=qa(c,{versions:yd(e),errors:bd(e,e),map:ka(Vl(e)),nearMs:l,bucketMs:i}),d=vd(e,t),f=e.params.service?u.filter(t=>Cd(t,e.params.service)):u;return{meta:co(e),baseline:{mode:t,samples:d,learning:d<2},sensitivity:o,starts:a,bucketMs:i,problems:f.slice(0,50),total:f.length,ongoing:f.filter(e=>e.ongoing).length,anomalies:f.reduce((e,t)=>e+t.anomalyCount,0),services:new Set(f.flatMap(e=>e.services.map(e=>e.row))).size,selected:wd(u,e.params,l)}}var Dd={needs:()=>pd(),followUp:hd,model:Ed},Od=[16,24,48],kd=100,Ad=200,jd=new Set([`api`,`web`]),Md=e=>Od.find(t=>String(t)===e.buckets)??24,Nd=e=>({requests:e.n,errors:e.err,errorRatePercent:we(e.err,e.n),avgMs:ia(e),p95Ms:e.hist&&e.n?Ni(e.hist,e.n,95):null});function Pd(e,t,n){return t?N(`ts`,`svc.ep`,`cur`,n,{filter:e?{keys:[k(e.key,t)]}:{parts:[null,t]},hist:!0}):e?N(`ts`,`svc`,`cur`,n,{filter:{keys:[e.key]},hist:!0}):N(`ts`,`req`,`cur`,n,{hist:!0})}var Fd=(e,t)=>t?[t]:e.filter(e=>jd.has(e.kind)).slice(0,kd);function Id(e,t,n){return t.flatMap((t,n)=>P(e,`ep.${n}`).map(({key:e,agg:n})=>({service:t.name,kind:t.kind,endpoint:e.slice(Ts(t.key).length),...Nd(n)}))).filter(e=>!n||e.endpoint===n).sort((e,t)=>t.requests-e.requests||e.endpoint.localeCompare(t.endpoint))}var Ld={needs:()=>sa([...so,...Ll(`cur`)]),followUp(e,t){let n=Bl(t,`cur`),r=Os(n,e.params.service??null);if(e.params.service&&!r)return[];let i=Fd(n,r).map((e,t)=>M(`ep.${t}`,`svc.ep`,`cur`,{filter:{prefix:Ts(e.key)},hist:!0,order:{by:`n`,desc:!0,limit:Ad}}));return[Pd(r,e.params.endpoint??``,Md(e.params)),...i]},model(e){let t=Md(e.params),n=Bl(e,`cur`),r=Os(n,e.params.service??null),i=!e.params.service||!!r,a=i?I(e,`ts`,t):[],o=De(e.window,t);return{meta:co(e),scope:{service:r?.name??e.params.service??null,endpoint:e.params.endpoint||null,found:i},bucketMs:(e.window.to-e.window.from)/t,points:a.map((e,t)=>({start:o[t],...Nd(e)})),totals:Nd(la(a)),endpoints:i?Id(e,Fd(n,r),e.params.endpoint??``):[]}}},Rd=`wizelens-uptime`,zd=[`GET`,`HEAD`,`POST`,`PUT`,`PATCH`,`DELETE`,`OPTIONS`],Bd=`200-299`,Vd=(e,t)=>e===null?null:Math.floor((e-t)/864e5),Hd=(e,t)=>{let n=Vd(e,t);return n!==null&&n<14},Ud=e=>`/uptime/${e}`;function Wd(e){let t=/^\S+ \/uptime\/([A-Za-z0-9_-]+)$/.exec(e);return t?t[1]:null}var Gd=`api:${Rd}`;function Kd(e){return e?{keys:zd.map(t=>k(Gd,`${t} ${Ud(e)}`))}:{prefix:Ts(Gd)}}function qd(e){let t=new Map,n=Ts(Gd);for(let{key:r}of P(e,`ep`)){let e=Wd(r.slice(n.length));e&&t.set(e,[...t.get(e)??[],r])}return t}function Jd(e,t,n){let r=la(P(e,`ep`).filter(e=>n.includes(e.key)).map(e=>e.agg)),i=da(e,`chart`,48,n);return{checkId:t,runs:r.n,failures:r.err,avgMs:ia(r),avgMsSeries:pa(i),runSeries:i.map(e=>e.n),failSeries:i.map(e=>e.err)}}function Yd(e){let t=F(e,`ep`),n=F(e,`ep.prev`);return{runs:t.n,failures:t.err,avgMs:ia(t),prevRuns:n.n,prevFailures:n.err,prevAvgMs:ia(n)}}var Xd={needs:e=>{let t=Kd(e.params.check||void 0);return sa([...so,M(`ep`,`svc.ep`,`cur`,{filter:t,order:{by:`n`,desc:!0,limit:200}}),M(`ep.prev`,`svc.ep`,`prev`,{filter:t}),N(`chart`,`svc.ep`,`cur`,48,{filter:t,split:!0})])},model(e){let t=[...qd(e)].map(([t,n])=>Jd(e,t,n)).sort((e,t)=>t.runs-e.runs||(e.checkId<t.checkId?-1:1));return{meta:co(e),starts:De(e.window,48),checks:t,totals:Yd(e)}}},Zd=e=>{let t=e?.name;return typeof t==`string`&&t?t:null},Qd=(e,t)=>({user:e,name:Zd(t.top),requests:t.n,errors:t.err,errorRate:t.n?we(t.err,t.n):null,avgMs:t.n?t.sum/t.n:null,p95Ms:t.hist&&t.n?Ni(t.hist,t.n,95):null,lastSeenMs:t.lastMs}),$d=25,ef={needs:e=>{let{page:t,size:n}=po(e.params,$d),r=e.params.q?.trim(),i=r?{filter:{contains:[r]}}:{};return sa([...so,M(`usr`,`usr`,`cur`,{hist:!0,top:!0,...i,order:{by:`n`,desc:!0,limit:n,offset:(t-1)*n}})])},model:e=>({meta:co(e),users:[...P(e,`usr`)].sort(_a(e=>e.agg.n)).map(e=>Qd(e.key,e.agg)),total:ca(e,`usr`),...po(e.params,$d)})},tf={needs:e=>{let t=e.params.user??``;return sa([...so,M(`usr`,`usr`,`cur`,{hist:!0,top:!0,filter:{keys:[t]}}),oa(`recent`,`requests`,`cur`,{filter:{user:t},sort:{key:`time`,desc:!0},limit:25,aggregate:{buckets:48}}),oa(`slowest`,`requests`,`cur`,{filter:{user:t},sort:{key:`duration`,desc:!0},limit:10}),M(`u.groups`,`err.u`,`cur`,{filter:{parts:[null,t]},order:{by:`n`,desc:!0,limit:50}})])},followUp(e,t){let n=P(t,`u.groups`).map(e=>A(e.key)[0]);return n.length?[M(`groups`,`err.g`,`cur`,{top:!0,filter:{keys:n}})]:[]},model(e){let t=e.params.user??``,n=P(e,`usr`)[0]?.agg,r=ha(e,`recent`).aggregate?.series??[],i=new Map(P(e,`groups`).map(e=>[e.key,Wc(e)])),a=P(e,`u.groups`).flatMap(e=>{let t=i.get(A(e.key)[0]);return t?[{group:t,count:e.agg.n}]:[]});return{meta:co(e),user:t,totals:n?.n?Qd(t,n):null,starts:De(e.window,48),chart:{requests:r.map(e=>e.n),errors:r.map(e=>e.err),avgMs:pa(r)},recent:ha(e,`recent`).items,slowest:ha(e,`slowest`).items,errors:a}}},nf={error_rate:{label:`Error rate`,unit:`%`},p95_ms:{label:`p95 request duration`,unit:`ms`},avg_ms:{label:`Average request duration`,unit:`ms`},requests:{label:`Requests`,unit:``},new_errors:{label:`New error types`,unit:``},slow_queries:{label:`Slow queries`,unit:``},log_count:{label:`Log lines`,unit:``}};function rf(e){let t=cl(e),n=t.minLevel===`trace`?[]:[t.exact?t.minLevel:`${t.minLevel} and up`],r=t.origin===`outside`?[`outside requests`]:t.origin===`request`?[`in requests`]:[],i=[t.service&&`service ${t.service}`,t.category&&`category ${t.category}`,t.pattern&&`pattern ${t.pattern}`,t.query&&`"${t.query}"`];return[...n,...r,...i].filter(Boolean).join(`, `)}[5,15,60,360,1440].map(e=>e*6e4),[0,15,60,240,1440].map(e=>e*6e4);var af=(e,t)=>e.mutedUntilMs!==null&&e.mutedUntilMs>t,of=[`B`,`KB`,`MB`,`GB`,`TB`];function sf(e){let t=Math.abs(e);return t===0?`0`:t>=100?Math.round(e).toLocaleString(`en-US`):t>=10?e.toFixed(1):t>=1?e.toFixed(2):e.toPrecision(2)}function cf(e){let t=0;for(;Math.abs(e)>=1024&&t<of.length-1;)e/=1024,t++;return`${sf(e)} ${of[t]}`}function lf(e){let t=Math.abs(e);return t>=60?`${sf(e/60)} min`:t>=1?`${sf(e)} s`:t>=.001||t===0?`${sf(e*1e3)} ms`:`${sf(e*1e6)} µs`}var uf=e=>e.replace(/\{([^}]*)\}/g,`$1`);function df(e,t){if(e==null||!Number.isFinite(e))return`—`;if(t===`1`||t===`s/s`||t===`%`)return`${sf(t===`%`?e:e*100)}%`;if(t===`By`)return cf(e);if(t===`By/s`)return`${cf(e)}/s`;if(t===`s`)return lf(e);if(t===`ms`)return lf(e/1e3);if(t===`us`||t===`µs`)return lf(e/1e6);if(t===`ns`)return lf(e/1e9);if(t===`/s`)return`${sf(e)}/s`;let n=uf(t);return n?`${sf(e)} ${n}`:sf(e)}var ff=[[/^(process|system|v8js|nodejs|dotnet|jvm|go|python|cpython|container)\./,`runtime`],[/^(http|kestrel|aspnetcore|signalr|url)\./,`http`],[/^db\./,`database`],[/^messaging\./,`messaging`],[/^rpc\./,`rpc`]],pf=[`runtime`,`http`,`database`,`messaging`,`rpc`,`custom`],mf=e=>ff.find(([t])=>t.test(e))?.[1]??`custom`,hf=e=>e.kind===`histogram`?`percentiles`:e.kind===`sum`&&e.monotonic?`rate`:`value`,gf=(e,t)=>t===`rate`?`${e===`1`?``:e}/s`:e,_f=(e,t)=>e.length===t.length&&e.every((e,n)=>e===t[n]);function vf(e,t,n){return n?e:t?e.count<t.count||!_f(e.bounds,t.bounds)?e:{...e,count:e.count-t.count,sum:e.sum-t.sum,counts:e.counts.map((e,n)=>e-(t.counts[n]??0))}:null}function yf(e,t){let n=(e,t)=>e==null?t??null:t==null?e:Math.min(e,t),r=(e,t)=>e==null?t??null:t==null?e:Math.max(e,t);if(!e)return{bounds:[...t.bounds],counts:[...t.counts],count:t.count,sum:t.sum,min:t.min??null,max:t.max??null};let i=_f(e.bounds,t.bounds)&&e.counts.length===t.counts.length;return{bounds:i?e.bounds:[],counts:i?e.counts.map((e,n)=>e+t.counts[n]):[],count:e.count+t.count,sum:e.sum+t.sum,min:n(e.min,t.min),max:r(e.max,t.max)}}function bf(e,t){let n=e[0]?.display??`value`;if(n===`percentiles`){let r=Array.from({length:t},(t,n)=>e.reduce((e,t)=>t.hists[n]?yf(e,t.hists[n]):e,null));return{display:n,values:Array(t).fill(null),hists:r}}return{display:n,values:Array.from({length:t},(t,r)=>{let i=e.map(e=>e.values[r]).filter(e=>e!=null);if(i.length===0)return null;let a=i.reduce((e,t)=>e+t,0);return n===`rate`?a:a/i.length}),hists:[]}}function xf(e,t){if(e.count<=0||e.counts.length===0)return null;let n=t*e.count,r=0;for(let t=0;t<e.counts.length;t++){let i=e.counts[t];if(i>0&&r+i>=n){let a=t===0?e.min??Math.min(0,e.bounds[0]??0):e.bounds[t-1],o=a+((t<e.bounds.length?e.bounds[t]:e.max??e.bounds.at(-1)??a)-a)*((n-r)/i);return Math.min(e.max??o,Math.max(e.min??o,o))}r+=i}return e.max??e.bounds.at(-1)??null}function Sf(e,t){return!e||e.count<=0?null:t===`avg`?e.sum/e.count:xf(e,t===`p50`?.5:t===`p95`?.95:.99)}var Cf=(e,t)=>e.display===`percentiles`?e.hists.map(e=>Sf(e,t)):e.values,wf={rateDelta:0,rateMs:0};function Tf(e,t){if(e.kind!==`sum`||!e.monotonic)return wf;let n=e.value??0;if(e.temporality===`delta`){let r=e.startMs===void 0?t?e.timeMs-t.lastMs:0:e.timeMs-e.startMs;return r>0?{rateDelta:n,rateMs:r}:wf}return!t||t.lastValue===null?wf:{rateDelta:n>=t.lastValue?n-t.lastValue:n,rateMs:e.timeMs-t.lastMs}}function Ef(e,t,n){if(!e.histogram)return null;let r=e.temporality===`delta`;if(!r&&n)return null;let i=vf(e.histogram,t?.lastHist??void 0,r);return i&&i.count>0?yf(null,i):null}function Df(e,t){let n=t!==null&&e.timeMs<=t.lastMs,r=e.value??null,i=n&&e.temporality!==`delta`?wf:Tf(e,n?null:t),a=e.timeMs;return{row:{cnt:1,vsum:r??0,vmin:r,vmax:r,firstMs:a,firstV:r,lastMs:a,lastV:r,...i,hist:Ef(e,t,n)},next:n?t:{lastMs:a,lastValue:r,lastHist:e.histogram??null}}}var Of=(e,t)=>e===null?t:t===null?e:Math.min(e,t),kf=(e,t)=>e===null?t:t===null?e:Math.max(e,t);function Af(e,t){if(!e)return t;let n=t.firstMs<e.firstMs?t:e,r=t.lastMs>=e.lastMs?t:e;return{cnt:e.cnt+t.cnt,vsum:e.vsum+t.vsum,vmin:Of(e.vmin,t.vmin),vmax:kf(e.vmax,t.vmax),firstMs:n.firstMs,firstV:n.firstV,lastMs:r.lastMs,lastV:r.lastV,rateDelta:e.rateDelta+t.rateDelta,rateMs:e.rateMs+t.rateMs,hist:t.hist?yf(e.hist,t.hist):e.hist}}function jf(e,t){if(t===1)return e;let n=e.hist&&{...e.hist,count:e.hist.count*t,sum:e.hist.sum*t,counts:e.hist.counts.map(e=>e*t)};return{...e,cnt:e.cnt*t,vsum:e.vsum*t,rateDelta:e.rateDelta*t,rateMs:e.rateMs*t,hist:n}}function Mf(e,t){let n=[...e].sort((e,t)=>e.timeMs-t.timeMs),r=[],i=t;for(let e of n){let{row:t,next:n}=Df(e,i);r.push({timeMs:e.timeMs,row:t}),i=n}return{rows:r,state:i}}function Nf(e,t,n,r){if(r.mode===`split`)return cc(e,r.tier.ms,t,n);let i=e+r.tier.ms/2;return i<t.from||i>=t.to?[]:[{index:Math.min(n-1,Math.floor((i-t.from)/((t.to-t.from)/n))),share:1}]}function Pf(e,t,n,r){if(r)return Nf(Math.floor(e/r.tier.ms)*r.tier.ms,t,n,r);let i=Re(e,t,n);return i<0?[]:[{index:i,share:1}]}function Ff(e,t,n){for(let{index:r,share:i}of n)e[r]=Af(e[r]??null,jf(t,i))}var If=e=>Array(e).fill(null),Lf=e=>e?.hist&&e.hist.count>0?e.hist:null;function Rf(e,t,n){let r=e=>t?.[e]??null;return e===`percentiles`?{display:e,values:Array(n).fill(null),hists:Array.from({length:n},(e,t)=>Lf(r(t)))}:{display:e,values:Array.from({length:n},(t,n)=>{let i=r(n);return i?e===`rate`?i.rateMs>0?i.rateDelta/i.rateMs*1e3:null:i.cnt>0?i.vsum/i.cnt:null:null}),hists:[]}}function zf(e){let t=Object.keys(e.attributes).sort().map(t=>[t,e.attributes[t]]);return`${e.name}\u0000${e.service}\u0000${JSON.stringify(t)}`}function Bf(e,t){let n={id:e,name:t.name,service:t.service,kind:t.kind,unit:t.unit,description:t.description??``,attributes:t.attributes};return t.monotonic!==void 0&&(n.monotonic=t.monotonic),t.temporality&&(n.temporality=t.temporality),n}function Vf(e){let t=new Map;for(let n of e){let e=zf(n),r=t.get(e);r?r.push(n):t.set(e,[n])}return[...t].sort(([e],[t])=>e<t?-1:+(e>t)).map(([e,t])=>({info:Bf(e,t.reduce((e,t)=>t.timeMs>=e.timeMs?t:e)),rows:Mf(t,null).rows}))}function Hf(e,t,n,r){let i=null,a=r.tiers?oc(t,n,1/0):[];for(let{timeMs:n,row:o}of e){if(!r.tiers){n>=t.from&&n<t.to&&(i=Af(i,o));continue}let e=a.find(e=>{let t=Math.floor(n/e.tier.ms)*e.tier.ms;return t>=e.from&&t<e.to});e&&(i=Af(i,jf(o,e.weight)))}return i}function Uf(e,t,n,r){let i=If(n);for(let{timeMs:a,row:o}of e)Ff(i,o,Pf(a,t,n,r));return i}var Wf=(e,t,n,r)=>r.tiers?sc(e,t,n,1/0):null;function Gf(e,t,n,r,i={}){let a=i.tiers?tc(xi(t,n,r),n):xi(t,n,r),o=Wf(a,24,n,i),s=Wf(a,60,n,i),c=Vf(e).flatMap(e=>{let t=Hf(e.rows,a,n,i);if(!t||t.cnt<=0)return[];let r=Uf(e.rows,a,24,o);return[{...e.info,total:t,spark:r,line:Uf(e.rows,a,60,s)}]}),l=r.service||``;return{range:t,window:a,params:r,services:[...new Set(c.map(e=>e.service))].sort(),series:l?c.filter(e=>e.service===l):c}}var Kf={last:`Newest value`,avg:`Average`,max:`Highest`,p95:`p95`,p99:`p99`,rate:`Per second`},qf=[`level`,`exact`,`service`,`category`,`q`,`pattern`,`origin`],Jf=500;function Yf(e){let t={};if(!e||typeof e!=`object`)return t;let n=e;for(let e of qf)typeof n[e]==`string`&&n[e]&&(t[e]=n[e].slice(0,Jf));return t}function Xf(e){let t=new URLSearchParams(Yf(e)).toString();return t?`#/logs?${t}`:`#/logs`}function Zf(e){let t=/^#\/logs(?:\?(.*))?$/.exec(e);return t?Yf(Object.fromEntries(new URLSearchParams(t[1]??``))):null}var Qf={overview:$l,requests:gu,traces:rs,database:Oc,rendering:cu,errors:Qc,logs:ml,"log-patterns":xl,"log-chart":gl,services:$u,service:Ju,error:Eu,endpoint:Cu,query:Au,route:Nu,insights:al,badges:pc,uptime:Xd,problems:Dd,users:ef,user:tf,traffic:Ld},V=e=>Qf[e],$f=(e,t,n)=>fc(V(e),t,n),ep=[{key:`cpu`,label:`CPU`,names:[`process.cpu.utilization`,`dotnet.process.cpu.time`,`process.cpu.time`]},{key:`memory`,label:`Memory`,names:[`process.memory.usage`,`dotnet.process.memory.working_set`,`process.runtime.dotnet.working_set`]},{key:`heap`,label:`Heap`,names:[`v8js.memory.heap.used`,`dotnet.gc.last_collection.heap.size`,`jvm.memory.used`]},{key:`loop`,label:`Event loop delay`,names:[`nodejs.eventloop.delay.p99`]},{key:`gc`,label:`GC`,names:[`dotnet.gc.pause.time`,`v8js.gc.duration`,`jvm.gc.duration`],stat:`p95`},{key:`threads`,label:`Thread pool queue`,names:[`dotnet.thread_pool.queue.length`]},{key:`requests`,label:`Request time`,names:[`http.server.request.duration`],stat:`p95`}],tp=10,np=[`p50`,`p95`,`p99`,`avg`];function rp(e){let t=new Map;for(let n of e){let e=t.get(n.name);e?e.push(n):t.set(n.name,[n])}return t}var ip=e=>[...e].reverse().find(e=>e!=null)??null,ap=e=>np.includes(e.stat)?e.stat:`p95`,op=(e,t)=>e.filter(e=>!t||e.service===t);function sp(e,t,n){let r=t===`spark`?24:60;return bf(op(e,n).map(e=>Rf(hf(e),e[t],r)),r)}function cp(e,t,n){let r=op(e,n);return r.length===0?null:hf(r[0])===`value`?r.reduce((e,t)=>e+(t.total.lastV??0),0)/r.length:ip(Cf(sp(r,`line`),t))}function lp(e,t,n){let r=t.reduce((e,t)=>t.total.lastMs>e.total.lastMs?t:e),i=hf(r),a=gf(r.unit,i),o=Cf(sp(t,`spark`),n),s=cp(t,n),c=[...new Set(t.map(e=>e.service))].sort();return{name:e,kind:r.kind,unit:r.unit,displayUnit:a,display:i,description:r.description,area:mf(e),services:c,series:t.length,last:s,lastText:df(s,a),spark:o}}function up(e,t){if(t===`service`)return e.service;let n=e.attributes[t];return n==null?`(none)`:String(n)}function dp(e,t){let n=Object.entries(e.attributes).map(([e,t])=>`${e}=${t}`);return t&&n.unshift(e.service),n.join(` · `)||e.service}function fp(e,t,n){let r=new Map,i=new Set(e.map(e=>e.service)).size>1;for(let n of e){let e=t?up(n,t):dp(n,i),a=r.get(e);a?a.push(n):r.set(e,[n])}let a=[...r].map(([e,t])=>{let r=Cf(sp(t,`line`),n);return{label:e,values:r,size:r.reduce((e,t)=>e+Math.abs(t??0),0)}});return a.sort((e,t)=>t.size-e.size||e.label.localeCompare(t.label)),{lines:a.slice(0,tp).map(({label:e,values:t})=>({label:e,values:t})),hidden:Math.max(0,a.length-tp)}}function pp(e){let t=e.filter(e=>e!=null);return t.length===0?{last:null,min:null,max:null,avg:null}:{last:ip(e),min:Math.min(...t),max:Math.max(...t),avg:t.reduce((e,t)=>e+t,0)/t.length}}function mp(e,t,n,r){let i=ap(r),a=new Set(t.map(e=>e.service)),o=new Set(t.flatMap(e=>Object.keys(e.attributes))),s=[...a.size>1?[`service`]:[],...[...o].sort()],c=s.includes(r.group??``)?r.group:``,l=sp(t,`line`),u=l.display===`percentiles`,d=(n.to-n.from)/60/1e3;return{...lp(e,t,i),stat:i,groupBy:c,groupKeys:s,buckets:De(n,60),...fp(t,c,i),percentiles:u?Object.fromEntries(np.map(e=>[e,l.hists.map(t=>Sf(t,e))])):null,countRate:u?l.hists.map(e=>e?e.count/d:null):null,summary:{...pp(Cf(l,i)),last:cp(t,i)}}}function hp(e,t){let n=(t??``).split(`,`).map(e=>e.split(`=`)).filter(e=>e.length===2&&e[0].trim()).map(([e,t])=>[e.trim(),t.trim()]);return n.length===0?e:e.filter(e=>n.every(([t,n])=>up(e,t)===n))}function gp(e){let t={service:new Set(e.map(e=>e.service))};for(let n of e)for(let e of Object.keys(n.attributes))(t[e]??=new Set).add(up(n,e));return Object.fromEntries(Object.entries(t).map(([e,t])=>[e,[...t].sort().slice(0,50)]))}function _p(e,t){return t.flatMap(t=>{let n=ep.flatMap(n=>{let r=n.names.find(n=>e.get(n)?.some(e=>e.service===t));if(!r)return[];let i=e.get(r),a=sp(i,`spark`,t),o=gf(i[0].unit,a.display),s=Cf(a,n.stat??`p95`),c=cp(i,n.stat??`p95`,t);return[{key:n.key,label:n.label,metric:r,unit:o,last:c,lastText:df(c,o),spark:s}]});return n.length>0?[{service:t,stats:n}]:[]})}function vp(e,t,n){let r=hp(t,n.params.where),i=mp(e,r.length?r:t,n.window,n.params),a=r.length===0?{lines:[],percentiles:null,countRate:null,summary:{last:null,min:null,max:null,avg:null}}:{};return{...i,...a,where:n.params.where??``,values:gp(t)}}function yp(e){let t=e.params.service||``,n=rp(e.series),r=ap(e.params),i=(e.params.q??``).toLowerCase(),a=[...n].filter(([e])=>!i||e.toLowerCase().includes(i)).map(([e,t])=>lp(e,t,r)).sort((e,t)=>pf.indexOf(e.area)-pf.indexOf(t.area)||e.name.localeCompare(t.name)),o=e.params.metric&&n.get(e.params.metric),s=Math.round(e.series.reduce((e,t)=>e+t.total.cnt,0));return{meta:{range:e.range,window:e.window,sampled:null,points:s},services:e.services,catalog:a,selected:o?vp(e.params.metric,o,e):null,runtime:_p(n,t?[t]:e.services)}}var bp=e=>yp(Gf(e.points,e.range,e.now,e.params)),xp=(e,t)=>e<t?-1:+(e>t),Sp=e=>(t,n)=>e(n)-e(t)||xp(t.traceId,n.traceId),Cp=(e,t)=>(!t.traceId||e===t.traceId)&&(!t.traceIds||t.traceIds.includes(e));function wp(e,t,n){let r=e.flatMap(e=>e.request&&be(e.request.startMs,n)&&Cp(e.traceId,t)?[e.request]:[]),i={method:t.method??``,status:t.status??``,duration:t.duration??``,service:t.service??``,q:t.q??``,endpoint:t.endpoint??``,user:t.user??``,insights:t.insights?`1`:``};return wo(r.sort(Sp(e=>e.startMs)),i)}function Tp(e,t){return Oo(e,{key:Do(t.sort.key)?t.sort.key:`time`,desc:t.sort.desc})}function Ep(e,t,n,r){let i=(t.q??``).trim().toLowerCase(),a=e=>!i||e.traceId.startsWith(i)||e.path.toLowerCase().includes(i)||e.services.some(e=>e.toLowerCase().includes(i)),o=e.flatMap(e=>e.trace&&be(e.trace.startMs,n)&&Cp(e.traceId,t)&&a(e.trace)&&jo(e.trace,t)?[e.trace]:[]).sort(Sp(e=>e.startMs));return r.sort.key===`duration`?o.sort((e,t)=>(r.sort.desc?t.durationMs-e.durationMs:e.durationMs-t.durationMs)||Sp(e=>e.startMs)(e,t)):r.sort.desc?o:o.reverse()}var Dp=e=>Number(e.key.slice(e.key.lastIndexOf(`:`)+1));function Op(e,t,n,r){let i=mi(e.flatMap(e=>Cp(e.traceId,t)?e.logs.filter(e=>be(e.timeMs,n)):[]),{minLevel:t.minLevel??`trace`,exact:t.exactLevel,service:t.logService??``,category:t.category??``,query:t.q??``,pattern:t.pattern??``,origin:t.logOrigin??``});return i.sort((e,t)=>t.timeMs-e.timeMs||xp(e.traceId,t.traceId)||Dp(e)-Dp(t)),r?i:i.reverse()}function kp(e,t,n){return e.flatMap(e=>Cp(e.traceId,t)?e.critical.filter(e=>be(e.startMs,n)&&(!t.service||e.service===t.service)):[]).sort((e,t)=>t.durationMs-e.durationMs||Sp(e=>e.startMs)(e,t)||xp(e.spanId,t.spanId))}function Ap(e,t,n){let r={...Xi.req,hist:!1},i=ta(),a=Array.from({length:n},()=>ta());for(let o of e){let e=j(`req`,``,o.startMs,{err:+!!Bn(o),sum:o.durationMs,c:[o.dbCount,+(o.insights>0),o.insights]});ra(i,e,o.traceId,r);let s=Re(o.startMs,t,n);s>=0&&ra(a[s],e,o.traceId,r)}return{total:aa(i,{times:!1}),series:a.map(e=>aa(e,{times:!1}))}}function jp(e,t,n){let r={...Xi.log},i=ta(),a=Array.from({length:n},()=>ta());for(let o of e){let e=j(`log`,``,o.timeMs,{err:+(pi(o.level)>=pi(`error`))});ra(i,e,o.traceId,r);let s=Re(o.timeMs,t,n);s>=0&&ra(a[s],e,o.traceId,r)}return{total:aa(i,{times:!1}),series:a.map(e=>aa(e,{times:!1}))}}function Mp(e,t){if(t.page){let n=t.page.size,r=Math.min(Math.max(1,t.page.page),Math.max(1,Math.ceil(e.length/n)));return{items:e.slice((r-1)*n,r*n),total:e.length,page:r,pageSize:n}}let n=t.limit===void 0?e:e.slice(0,t.limit);return{items:n,total:t.count?e.length:null,page:1,pageSize:n.length}}function Np(e,t,n){let r=t.filter;if(t.table===`traces`)return Mp(Ep(e,r,n,t),t);if(t.table===`logs`){let i=Op(e,r,n,t.sort.desc),a=Mp(i,t);return t.aggregate&&(a.aggregate=jp(i,n,t.aggregate.buckets)),a}if(t.table===`critical`)return Mp(kp(e,r,n),t);let i=wp(e,r,n),a=Mp(Tp(i,t),t);return t.aggregate&&(a.aggregate=Ap(i,n,t.aggregate.buckets)),a}function Pp(e){let t=new Map;for(let n of e)for(let e of n.contributions){let r=t.get(e.kind);r?r.push({c:e,traceId:n.traceId}):t.set(e.kind,[{c:e,traceId:n.traceId}])}for(let e of t.values())e.sort((e,t)=>t.c.timeMs-e.c.timeMs);return t}function Fp(e,t,n){let r=Xi[t.kind],i=new Map;for(let{c:a,traceId:o}of e){if(!be(a.timeMs,n)||!ad(a.key,t.filter))continue;let e=i.get(a.key);e||i.set(a.key,e=ta(r.hist)),ra(e,a,o,r)}let a=e=>e.n>.5&&(!t.having||od(e,t.having.by)>=t.having.min),o=[...i].filter(([,e])=>a(e)).map(([e,n])=>({key:e,agg:aa(n,t)}));if(!t.order)return{rows:o.sort((e,t)=>e.key<t.key?-1:+(e.key>t.key)),total:o.length};let s=t.order.offset??0;return{rows:sd(o,t.order.by,t.order.desc).slice(s,s+t.order.limit),total:o.length}}function Ip(e,t,n){let r=Xi[t.kind],i=()=>Array.from({length:t.buckets},()=>ta(r.hist)),a=t.split?{}:{"":i()};for(let{c:o,traceId:s}of e){let e=ad(o.key,t.filter)?Re(o.timeMs,n,t.buckets):-1;e<0||ra((a[t.split?o.key:``]??=i())[e],o,s,r)}let o=Object.entries(a).map(([e,n])=>[e,n.map(e=>aa(e,{hist:t.hist,times:!1}))]);return{byKey:Object.fromEntries(o)}}function Lp(e,t,n){let r=t.windows.map(e=>rd(n,e));return(t.traceId?e.find(e=>e.traceId===t.traceId&&r.some(t=>be(e.startMs,t))):void 0)||e.filter(e=>be(e.startMs,n.window)).reduce((e,t)=>!e||t.startMs>e.startMs?t:e,null)}function Rp(e,t={}){let n=null,r=null,i=()=>n??=e.map(e=>Ks(e,t)),a=e=>(r??=Pp(i())).get(e)??[];return{facts:i,runSync(t,n){let r=ed();for(let o of t)o.type===`groups`?r.groups[o.id]=Fp(a(o.kind),o,rd(n,o.window)):o.type===`series`?r.series[o.id]=Ip(a(o.kind),o,rd(n,o.window)):o.type===`list`?r.lists[o.id]=Np(i(),o,rd(n,o.window)):r.traces[o.id]=Lp(e,o,n);return r}}}var zp=[`requests`,`traces`,`spans`,`logs`],Bp=zp,Vp=[`requests`,`traces`,`spans`],Hp={service:{type:`text`,help:`Service name`,kinds:Bp},env:{type:`text`,help:`Environment`,kinds:Bp},trace:{type:`id`,help:`Trace id, or its start`,kinds:Bp},span:{type:`id`,help:`Span id, or its start`,kinds:[`spans`,`logs`]},name:{type:`text`,help:`Span name, or the trace's root span name`,kinds:[`traces`,`spans`,`logs`]},method:{type:`text`,help:`HTTP method`,kinds:Vp},path:{type:`text`,help:`URL path`,kinds:Vp},route:{type:`text`,help:`Route template, such as /orders/{id}`,kinds:[`requests`,`spans`]},status:{type:`status`,help:`HTTP status (500, 5xx) or span status (ok, error, unset)`,kinds:Vp},duration:{type:`duration`,help:`Duration: 250ms, 1.5s, 2m`,kinds:Vp},level:{type:`level`,help:`Log level: trace, debug, info, warn, error, critical`,kinds:[`logs`]},category:{type:`text`,help:`Log category, or span category (db, http.client, ...)`,kinds:[`spans`,`logs`]},kind:{type:`text`,help:`Span kind: server, client, internal, producer, consumer`,kinds:[`spans`]},user:{type:`text`,help:`End user id`,kinds:[`requests`,`spans`]},error:{type:`bool`,help:`true when it failed`,kinds:Bp},message:{type:`text`,help:`Log message`,kinds:[`logs`]},tag:{type:`text`,help:`Tag: a tag rule's name, or a tag the app sets`,kinds:Bp}},Up=e=>Object.hasOwn(Hp,e),Wp=class extends Error{start;end;constructor(e,t,n){super(e),this.start=t,this.end=n,this.name=`SearchError`}},Gp={chars:2e3,terms:64,depth:16},Kp=e=>e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),qp=e=>RegExp(`^${e.map(e=>e===null?`[\\s\\S]*`:Kp(e)).join(``)}$`,`i`);function Jp(e,t,n){return t===`>`?e>n:t===`>=`?e>=n:t===`<`?e<n:t===`<=`?e<=n:e===n}var Yp=e=>e!=null&&e!==``;function Xp(e){let t=typeof e==`string`&&e.trim()?Number(e):e;return typeof t==`number`&&Number.isFinite(t)?t:null}function Zp(e,t,n){switch(e.type){case`exists`:return Yp;case`string`:{let t=e.value.toLowerCase();return n?e=>Yp(e)&&String(e).toLowerCase().startsWith(t):e=>Yp(e)&&String(e).toLowerCase()===t}case`pattern`:{let t=qp(e.pieces);return e=>Yp(e)&&t.test(String(e))}case`number`:return n=>{let r=Xp(n);return r!==null&&Jp(r,t,e.value)};case`bool`:return t=>t===e.value;case`statusClass`:return t=>typeof t==`number`&&Math.floor(t/100)===e.value;case`level`:{let n=pi(e.value);return e=>typeof e==`string`&&pi(e)>=0&&Jp(pi(e),t,n)}default:return t=>typeof t==`string`&&t===e.value}}var Qp=e=>t=>Array.isArray(t)?t.some(e):e(t);function $p(e){if(e.field===`tag`)return()=>!1;let t=Hp[e.field].kinds,n=e.field===`status`&&e.value.type===`spanStatus`?`outcome`:e.field,r=Qp(Zp(e.value,e.cmp,Hp[e.field].type===`id`));return e=>t.includes(e.kind)&&r(e.fields[n])}function em(e){let t=Zp(e.value,e.cmp,!1);return n=>n.attrs.some(n=>Object.hasOwn(n,e.key)&&t(n[e.key]))}function tm(e){if(!e)return()=>!0;switch(e.type){case`and`:{let t=e.items.map(tm);return e=>t.every(t=>t(e))}case`or`:{let t=e.items.map(tm);return e=>t.some(t=>t(e))}case`not`:{let t=tm(e.item);return e=>!t(e)}case`text`:{let t=e.value.toLowerCase();return e=>e.text.some(e=>e.includes(t))}case`field`:return $p(e);default:return em(e)}}var nm=e=>e.flatMap(e=>e==null||e===``?[]:[String(e).toLowerCase()]),rm=(e,t)=>e[t]===void 0||e[t]===null?null:String(e[t]),im=e=>Xp(e),am=e=>[e.statusMessage,...e.events.filter(e=>e.name===`exception`).map(e=>rm(e.attributes,`exception.message`))],om=li.indexOf(`error`);function sm(e){if(!e||!/^[a-z][a-z0-9+.-]*:\/\//i.test(e))return e?.split(`?`)[0]??null;try{return new URL(e).pathname}catch{return e.split(`?`)[0]}}function cm(e,t){let n=e.attributes,r=rm(n,`url.path`)??rm(n,`url.full`),i=sm(r);return{kind:`spans`,text:nm([e.name,r,rm(n,`db.query.text`),...am(e)]),fields:{service:e.service,env:t,trace:e.traceId,span:e.spanId,name:e.name,method:rm(n,`http.request.method`),path:i,route:rm(n,`http.route`),status:im(n[`http.response.status_code`]),outcome:e.status,duration:e.durationMs,category:e.category,kind:e.kind,user:rm(n,`enduser.id`),error:ge(e)},attrs:[n]}}function lm(e,t){return{kind:`logs`,text:nm([e.message,e.category,e.traceName]),fields:{service:e.service===yr(`browser`)?[e.service,`browser`]:e.service,env:t,trace:e.traceId,span:e.spanId,name:e.traceName,level:e.level,category:e.category,message:e.message,error:li.indexOf(e.level)>=om},attrs:[e.attributes]}}function um(e,t){let n=dm(e);return{kind:`traces`,text:nm([e.rootName,e.rootUrl,...e.services,...n]),fields:{service:e.services.length?e.services:[e.service],env:t,trace:e.traceId,name:e.rootName,method:e.rootMethod,path:sm(e.rootUrl),status:e.rootStatusCode,outcome:e.status,duration:e.durationMs,error:e.status===`error`||e.errorCount>0},attrs:e.spans.map(e=>e.attributes)}}var dm=e=>e.spans.flatMap(am);function fm(e,t=[],n,r=[]){let i=e.errors>0||(e.status??0)>=500,a=e.endpoint.slice(e.endpoint.indexOf(` `)+1);return{kind:`requests`,text:nm([e.path,e.endpoint,e.user,e.requestId,e.clientAddress,...e.tags,...r]),fields:{service:[e.service,...e.services],env:n,trace:e.traceId,method:e.method,path:sm(e.path),route:a,status:e.status,outcome:i?`error`:`ok`,duration:e.durationMs,user:e.user,error:i},attrs:t}}var pm=e=>typeof e==`string`?e:null;function mm(e,t){let n=e.fields;return{traceId:String(n.trace),spanId:String(n.span),startMs:t,durationMs:Number(n.duration),service:String(n.service),name:String(n.name),kind:n.kind,category:n.category,status:n.outcome,method:pm(n.method),path:pm(n.path),route:pm(n.route),httpStatus:typeof n.status==`number`?n.status:null,user:pm(n.user)}}var hm=e=>e.key.slice(e.key.lastIndexOf(`:`)+1);function gm(e,t){let n=In(e);if(!n)return[];let r=is(n);return[{kind:`requests`,timeMs:r.startMs,owner:``,doc:fm(r,e.spans.map(e=>e.attributes),t,dm(e)),item:()=>r}]}function _m(e,t,n){return t===`requests`?gm(e,n):t===`traces`?Tt(e.traceId)?[]:[{kind:t,timeMs:e.startMs,owner:``,doc:um(e,n),item:()=>as(e)}]:t===`logs`?fi([e]).map(e=>({kind:t,timeMs:e.timeMs,owner:hm(e),doc:lm(e,n),item:()=>e})):e.spans.map(e=>{let r=cm(e,n);return{kind:t,timeMs:e.startMs,owner:e.spanId,doc:r,item:()=>mm(r,e.startMs)}})}var vm=e=>btoa(JSON.stringify([e.timeMs,e.traceId,e.owner]));function ym(e){if(!e)return null;try{let[t,n,r]=JSON.parse(atob(e));return typeof t!=`number`||typeof n!=`string`||typeof r!=`string`?null:{timeMs:t,traceId:n,owner:r}}catch{return null}}function bm(e,t){return e.timeMs===t.timeMs?e.traceId===t.traceId?e.owner===t.owner?0:e.owner<t.owner?-1:1:e.traceId<t.traceId?-1:1:t.timeMs-e.timeMs}function xm(e,t,n){let r=e.slice(0,t),i=r[r.length-1];return{rows:r,next:e.length>t&&i?vm(n(i)):null}}var Sm=e=>Math.max(1,Math.min(200,Math.floor(e??50)));function Cm(e,t){let n=tm(t.node),r=Sm(t.limit),i=e=>({timeMs:e.timeMs,traceId:String(e.doc.fields.trace),owner:e.owner}),a=[],o=t.traceIds?new Set(t.traceIds):null;for(let r of e)if(!o||o.has(r.traceId))for(let e of _m(r,t.kind,t.env))e.timeMs<t.window.from||e.timeMs>=t.window.to||t.cursor&&bm(i(e),t.cursor)<=0||n(e.doc)&&a.push(e);a.sort((e,t)=>bm(i(e),i(t)));let{rows:s,next:c}=xm(a,r,i);return{kind:t.kind,items:s.map(e=>e.item()),next:c}}var wm={status:[`ok`,`error`,`unset`,`2xx`,`3xx`,`4xx`,`5xx`],level:li,error:[`true`,`false`],kind:[`server`,`client`,`internal`,`producer`,`consumer`]},Tm={service:`spans`,env:`traces`,name:`spans`,method:`spans`,path:`spans`,route:`spans`,category:`spans`,user:`spans`},Em=(e,t)=>e.toLowerCase().startsWith(t.toLowerCase()),Dm=e=>Object.entries(Hp).filter(([t])=>Em(t,e)).map(([e,t])=>({value:e,help:t.help})),Om=(e,t)=>Up(e)?(wm[e]??[]).filter(e=>Em(e,t)).map(e=>({value:e})):[];function km(e,t){return[...e].sort((e,t)=>t[1]-e[1]||(e[0]<t[0]?-1:1)).slice(0,t).map(([e,t])=>({value:e,count:t}))}function Am(e,t){let n=new Map,r=t.field===null?t.prefix.replace(/^@/,``):t.prefix,i=(e,t=String(e))=>{e!=null&&e!==``&&Em(String(e),r)&&n.set(t,(n.get(t)??0)+1)},a=t.field,o=a===null||a.startsWith(`@`)?`spans`:Up(a)?Tm[a]:void 0;if(!o)return n;for(let n of e)for(let e of _m(n,o,t.env))e.timeMs<t.window.from||e.timeMs>=t.window.to||(a===null?Object.entries(e.doc.attrs[0]??{}).forEach(([e,t])=>t!==null&&t!==``&&i(e,`@${e}`)):a.startsWith(`@`)?i(e.doc.attrs[0]?.[a.slice(1)]):i(e.doc.fields[a]));return n}function jm(e,t){return[...t.field===null?t.prefix.startsWith(`@`)?[]:Dm(t.prefix):Om(t.field,t.prefix),...km(Am(e,t),t.limit)].slice(0,t.limit)}var Mm=/\s/,Nm=new Set([`OR`,`AND`,`NOT`]);function Pm(e,t,n){let r=t+1;for(;r<e.length&&e[r]!==`"`;)e[r]===`\\`&&r+1<e.length&&r++,n.push({c:e[r],lit:!0}),r++;if(r>=e.length)throw new Wp(`This quote is never closed.`,t,e.length);return r+1}function Fm(e,t){let n=[],r=t;for(;r<e.length&&!Mm.test(e[r])&&e[r]!==`(`&&e[r]!==`)`;)e[r]===`"`?r=Pm(e,r,n):e[r]===`\\`&&r+1<e.length?(n.push({c:e[r+1],lit:!0}),r+=2):n.push({c:e[r++],lit:!1});return{chars:n,end:r}}var Im=e=>e.every(e=>!e.lit)?e.map(e=>e.c).join(``):null;function Lm(e){let t=[],n=0;for(;n<e.length;){let r=e[n];if(Mm.test(r))n++;else if(r===`(`||r===`)`)t.push({type:r,start:n,end:++n});else{let i=r===`-`&&n+1<e.length&&!Mm.test(e[n+1]),{chars:a,end:o}=Fm(e,i?n+1:n),s=Im(a);if(!i&&s!==null&&Nm.has(s))t.push({type:s,start:n,end:o});else if(a.length||i)t.push({type:`term`,chars:a,neg:i,start:n,end:o});else if(o===n)throw new Wp(`Unexpected character.`,n,n+1);n=o}}return t}var Rm=/^((?:\d+(?:\.\d+)?|\.\d+)(?:e[+-]?\d+)?)(us|µs|ms|s|m|h)?$/i,zm={us:.001,µs:.001,ms:1,s:1e3,m:6e4,h:36e5},Bm=/^-?(\d+(?:\.\d+)?|\.\d+)(e[+-]?\d+)?$/i,Vm={warning:`warn`,err:`error`,fatal:`critical`,crit:`critical`},Hm=new Set([`ok`,`error`,`unset`]),Um=class extends Error{},Wm=e=>e.map(e=>e.c).join(``);function Gm(e){if(!e.some(e=>e.c===`*`&&!e.lit))return null;let t=[],n=``;for(let r of e)r.c===`*`&&!r.lit?(n&&t.push(n),t[t.length-1]!==null&&t.push(null),n=``):n+=r.c;return n&&t.push(n),t}function Km(e){let t=Rm.exec(e.trim());if(!t)throw new Um(`"${e}" is not a duration. Use 250ms, 1.5s, or 2m.`);return Number(t[1])*zm[(t[2]??`ms`).toLowerCase()]}function qm(e){let t=e.toLowerCase(),n=Vm[t]??li.find(e=>e===t);if(!n)throw new Um(`"${e}" is not a log level. Use ${li.join(`, `)}.`);return n}function Jm(e,t){let n=e.toLowerCase();if(t===`=`&&Hm.has(n))return{type:`spanStatus`,value:n};if(t===`=`&&/^[1-5]xx$/.test(n))return{type:`statusClass`,value:Number(n[0])};if(/^\d{3}$/.test(n))return{type:`number`,value:Number(n)};throw new Um(`"${e}" is not a status. Use 404, 5xx, ok, error, or unset.`)}function Ym(e){let t=e.toLowerCase();if(t===`true`||t===`false`)return{type:`bool`,value:t===`true`};throw new Um(`"${e}" is not true or false.`)}function Xm(e,t,n){if(t!==`=`)throw new Um(`This field holds ${n===`id`?`ids`:`text`}. It cannot use ${t}.`);let r=Gm(e);return r?{type:`pattern`,pieces:r}:{type:`string`,value:Wm(e)}}function Zm(e,t,n){let r=Wm(t);if(e===`text`||e===`id`)return Xm(t,n,e);if(e===`duration`)return{type:`number`,value:Km(r)};if(e===`status`)return Jm(r,n);if(e===`level`)return{type:`level`,value:qm(r)};if(n!==`=`)throw new Um(`true or false cannot use < or >.`);return Ym(r)}function Qm(e,t){let n=Wm(e);if(t===`=`)return Xm(e,t,`text`);if(!Bm.test(n))throw new Um(`${t} needs a number, not "${n}".`);return{type:`number`,value:Number(n)}}var $m=new Set([`status`,`duration`,`level`]),eh=/^@?[A-Za-z_][\w.-]*$/,th=[`>=`,`<=`,`>`,`<`],nh=e=>e.map(e=>e.c).join(``);function rh(e){let t=e.findIndex(e=>e.lit),n=e.slice(0,t<0?2:Math.min(2,t)).map(e=>e.c).join(``),r=th.find(e=>n.startsWith(e));return r?{cmp:r,rest:e.slice(r.length)}:{cmp:`=`,rest:[...e]}}function ih(e){for(let t=0;t+1<e.length;t++)if(e[t].c===`.`&&e[t+1].c===`.`&&!e[t].lit&&!e[t+1].lit)return t;return-1}var ah=(e,t,n)=>e.startsWith(`@`)?{type:`attr`,key:e.slice(1),cmp:t,value:n}:{type:`field`,field:e,cmp:t,value:n};function oh(e,t,n){let r=t.startsWith(`@`);if(!r&&!Up(t))throw new Wp(`Unknown field "${t}". Use @${t} for an attribute, or put the text in quotes.`,e.start,e.end);let i=r?null:Hp[t].type,a=(e,t)=>i?Zm(i,e,t):Qm(e,t),{cmp:o,rest:s}=rh(n);if(!s.length)throw new Wp(`${t} needs a value.`,e.start,e.end);try{if(o===`=`&&s.length===1&&s[0].c===`*`&&!s[0].lit)return ah(t,`=`,{type:`exists`});let e=o===`=`?ih(s):-1;if(e<0)return ah(t,o,a(s,o));if(i&&!$m.has(i))throw new Um(`${t} cannot take a range.`);let[n,r]=[s.slice(0,e),s.slice(e+2)];if(!n.length||!r.length)throw new Um(`A range needs both ends, such as 200..299.`);return{type:`and`,items:[ah(t,`>=`,a(n,`>=`)),ah(t,`<=`,a(r,`<=`))]}}catch(t){throw t instanceof Um?new Wp(t.message,e.start,e.end):t}}function sh(e){let t=e.chars.findIndex(e=>e.c===`:`&&!e.lit),n=t>0?e.chars.slice(0,t):[],r=n.every(e=>!e.lit)?nh(n):``,i=e.chars[t+1]?.c===`/`&&e.chars[t+2]?.c===`/`,a=eh.test(r)&&!i?oh(e,r,e.chars.slice(t+1)):ch(e.chars);return a?e.neg?{type:`not`,item:a}:a:e.neg?{type:`not`,item:{type:`and`,items:[]}}:null}function ch(e){let t=e.filter(e=>e.lit||e.c!==`*`).map(e=>e.c).join(``);return t?{type:`text`,value:t}:null}function lh(e,t){let n=t.flatMap(t=>t.type===e?t.items:[t]);return n.length===1?n[0]:{type:e,items:n}}var uh=class{src;tokens;i=0;terms=0;constructor(e,t){this.src=e,this.tokens=t}parse(){if(!this.tokens.length)return null;let e=this.or(0),t=this.tokens[this.i];if(t)throw new Wp(t.type===`)`?`This ) has no matching (.`:`Unexpected text.`,t.start,t.end);return e.type===`and`&&!e.items.length?null:e}or(e){let t=this.tokens[this.i];if(t?.type===`OR`)throw new Wp(`OR needs something before it.`,t.start,t.end);let n=[this.and(e)];for(;this.peek(`OR`);){let t=this.tokens[this.i++];if(this.atEnd()||this.peek(`OR`))throw new Wp(`OR needs something after it.`,t.start,t.end);n.push(this.and(e))}return lh(`or`,n)}and(e){let t=[];for(;!this.atEnd()&&!this.peek(`OR`);){if(this.peek(`AND`)){let e=this.tokens[this.i++];if(!t.length||this.atEnd())throw new Wp(`AND needs something on both sides.`,e.start,e.end)}let n=this.unary(e);n&&t.push(n)}return lh(`and`,t)}unary(e){if(e>Gp.depth)throw new Wp(`Too many nested parts.`,this.tokens[this.i].start,this.src.length);let t=this.tokens[this.i++];if(t.type===`NOT`)return this.negate(t,e);if(t.type===`(`)return this.group(t,e);if(t.type!==`term`)throw new Wp(`Unexpected ${t.type}.`,t.start,t.end);if(++this.terms>Gp.terms)throw new Wp(`A search can have at most ${Gp.terms} parts.`,t.start,t.end);return t.neg&&!t.chars.length?this.negate(t,e):sh(t)}negate(e,t){if(this.atEnd()||this.peek(`)`)||this.peek(`OR`))throw new Wp(`NOT needs something after it.`,e.start,e.end);return{type:`not`,item:this.unary(t+1)??{type:`and`,items:[]}}}group(e,t){if(this.peek(`)`))throw new Wp(`These parentheses are empty.`,e.start,this.tokens[this.i].end);let n=this.or(t+1);if(!this.peek(`)`))throw new Wp(`This ( is never closed.`,e.start,e.end);return this.i++,n.type===`and`&&!n.items.length?null:n}peek(e){return this.tokens[this.i]?.type===e}atEnd(){return this.i>=this.tokens.length||this.peek(`)`)}};function dh(e){if(e.length>Gp.chars)throw new Wp(`A search can be at most ${Gp.chars} characters.`,Gp.chars,e.length);return new uh(e,Lm(e)).parse()}var fh=/[\s"\\():*]|^[-<>]|^(OR|AND|NOT)$|\.\./;function ph(e){return fh.test(e)||!e?`"${e.replace(/["\\]/g,e=>`\\${e}`)}"`:e}var mh=e=>e.map(e=>e===null?`*`:ph(e)).join(``);function hh(e){switch(e.type){case`string`:return ph(e.value);case`pattern`:return mh(e.pieces);case`number`:return String(e.value);case`bool`:return String(e.value);case`statusClass`:return`${e.value}xx`;case`exists`:return`*`;default:return e.value}}var gh=(e,t,n,r)=>`${e}:${t===`=`?``:t}${r&&n.type===`number`?`${n.value}ms`:hh(n)}`;function _h(e,t){switch(e.type){case`and`:return e.items.length?vh(e.items.map(e=>_h(e,!0)).join(` `),t&&e.items.length>1):`*`;case`or`:return vh(e.items.map(e=>_h(e,!0)).join(` OR `),t);case`not`:return e.item.type===`and`||e.item.type===`or`||e.item.type===`not`?`NOT ${_h(e.item,!0)}`:`-${_h(e.item,!0)}`;case`text`:return ph(e.value);case`field`:return gh(e.field,e.cmp,e.value,e.field===`duration`);default:return gh(`@${e.key}`,e.cmp,e.value,!1)}}var vh=(e,t)=>t?`(${e})`:e,yh=e=>e?_h(e,!1):``;function bh(e){try{return{ok:!0,node:dh(e)}}catch(e){if(e instanceof Wp)return{ok:!1,error:e.message,start:e.start,end:e.end};throw e}}var xh={type:`not`,item:{type:`and`,items:[]}},Sh=e=>e.length===0?xh:e.length===1?e[0]:{type:`or`,items:e},Ch=(e,t)=>({type:`attr`,key:`${yt}${e}`,cmp:`=`,value:t===void 0?{type:`exists`}:{type:`string`,value:t}});function wh(e,t,n){let r=e.value;if(r.type===`exists`)return Sh(t.map(e=>e.node));if(r.type===`pattern`){let e=qp(r.pieces);return Sh(t.filter(t=>e.test(t.name)).map(e=>e.node))}if(r.type!==`string`)return xh;let i=r.value.indexOf(`:`);if(i>0)return Ch(r.value.slice(0,i),r.value.slice(i+1));let a=t.find(e=>e.name===r.value.toLowerCase());return a||n.add(r.value.toLowerCase()),Sh([...a?[a.node]:[],Ch(r.value)])}function Th(e,t,n){return e.type===`and`||e.type===`or`?{type:e.type,items:e.items.map(e=>Th(e,t,n))}:e.type===`not`?{type:`not`,item:Th(e.item,t,n)}:e.type===`field`&&e.field===`tag`?wh(e,t,n):e}function Eh(e,t){let n=new Set;return{node:e&&Th(e,t,n),unknownTags:[...n]}}var Dh=1e3,Oh=e=>e.type!==`text`&&(e.type!==`and`||e.items.some(Oh));function kh(e){if(!e?.trim())return!1;let t=bh(e);return t.ok&&t.node!==null&&Oh(t.node)}var Ah={requests:`requests`,traces:`traces`,logs:`logs`};function jh(e,t,n,r,i=[],a=Dh){let o=bh(n);if(!o.ok)return[];let s=Eh(o.node,i).node,c=new Set,l=null;do{let n=Cm(e,{kind:t,node:s,window:r,limit:200,cursor:ym(l)});for(let e of n.items)c.add(e.traceId);l=n.next}while(l&&c.size<a);return[...c].slice(0,a)}var Mh=1e3,Nh=24,Ph=e=>{let t=e;return t.startMs??t.timeMs??0};async function Fh(e,t,n,r,i){let a=[],o=null;do{let s=await e({kind:t,node:n,window:r,limit:200,cursor:ym(o),env:i});for(let e of s.items)a.push(Ph(e));o=s.next}while(o&&a.length<1e3);return{times:a.slice(0,Mh),more:!!o}}async function Ih(e,t,n,r,i){let a=await Promise.all(zp.map(t=>Fh(e,t,n,r,i))),o=Object.fromEntries(zp.map((e,t)=>[e,{n:a[t].times.length,more:a[t].more}])),s=De(r,Nh),c=(r.to-r.from)/Nh,l=Array(Nh).fill(0);for(let e of a[zp.indexOf(t)].times){let t=Math.floor((e-r.from)/c);t>=0&&t<Nh&&l[t]++}return{counts:o,starts:s,histogram:l}}var Lh=(e,t)=>Math.max(0,(e.endMs??t)-e.startMs),Rh=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,zh=new Int8Array(128).fill(-1);for(let e=0;e<64;e++)zh[Rh.charCodeAt(e)]=e;function Bh(e){let t=0,n=0,r;do{let i=e.text.charCodeAt(e.i++);if(r=i<128?zh[i]:-1,r<0)throw Error(`Not a valid source map mapping.`);t+=(r&31)*2**n,n+=5}while(r&32);let i=Math.floor(t/2);return t%2==1?-i:i}var Vh=e=>e.i<e.text.length&&e.text[e.i]!==`,`&&e.text[e.i]!==`;`;function Hh(e){let t=[[]],n={text:e,i:0},r=0,i=[0,0,0,0];for(;n.i<e.length;){let a=e[n.i];if(a===`;`)t.push([]),r=0,n.i++;else if(a===`,`)n.i++;else{r+=Bh(n);let e=[r];for(let t=0;t<4&&Vh(n);t++)e.push(i[t]+=Bh(n));t[t.length-1].push(e)}}for(let e of t)e.sort((e,t)=>e[0]-t[0]);return t}var Uh=e=>Array.isArray(e)?e.map(e=>typeof e==`string`?e:``):[];function Wh(e,t){if(typeof t!=`string`||!t)return e;let n=t.endsWith(`/`)?t:`${t}/`;return e.map(e=>/^[a-z]+:/i.test(e)||e.startsWith(`/`)?e:n+e)}function Gh(e){let t=e.sections.flatMap(e=>{let t=e,n=t?.map?Kh(t.map):null;return n?[{line:Number(t.offset?.line)||0,column:Number(t.offset?.column)||0,map:n}]:[]});return{file:typeof e.file==`string`?e.file:null,sources:[],sourcesContent:[],names:[],mappings:``,sections:t}}function Kh(e){let t;try{t=typeof e==`string`?JSON.parse(e.replace(/^\)\]\}'[^\n]*\n/,``)):e}catch{return null}if(!t||typeof t!=`object`||Number(t.version)!==3)return null;if(Array.isArray(t.sections))return Gh(t);if(typeof t.mappings!=`string`)return null;let n=Array.isArray(t.sourcesContent)?t.sourcesContent.map(e=>typeof e==`string`?e:null):[];return{file:typeof t.file==`string`?t.file:null,sources:Wh(Uh(t.sources),t.sourceRoot),sourcesContent:n,names:Uh(t.names),mappings:t.mappings}}function qh(e,t){let n=0,r=e.length-1,i=null;for(;n<=r;){let a=n+r>>1;e[a][0]<=t?(i=e[a],n=a+1):r=a-1}return i}function Jh(e,t,n){let r=e.sections,i;for(let e of r)(e.line<t||e.line===t&&e.column<=n)&&(i=e);return i?Yh(i.map,t-i.line,t===i.line?n-i.column:n):null}function Yh(e,t,n){if(e.sections)return Jh(e,t,n);e.lines??=Hh(e.mappings);let r=qh(e.lines[t]??[],n);if(!r||r.length<4)return null;let i=e.sources[r[1]];return i===void 0?null:{source:i,line:r[2]+1,column:r[3]+1,name:r.length>4?e.names[r[4]]??null:null,content:e.sourcesContent[r[1]]??null}}function Xh(e,t,n){if(t<1||n<1)return null;try{return Yh(e,t-1,n-1)}catch{return null}}var Zh=/^\s*at (?:async )?(?:(.*?) \()?(\S+?):(\d+):(\d+)\)?$/,Qh=/^\s*(.*?)@(\S+?):(\d+):(\d+)$/,$h=/^\s*((?:https?|file|webpack):\/\/\S+?):(\d+):(\d+)$/;function eg(e){if(e.includes(`eval at `)||e.includes(`(native)`))return null;let t=Zh.exec(e);if(t)return{fn:t[1]||null,url:t[2],line:Number(t[3]),column:Number(t[4]),raw:e.trim()};let n=Qh.exec(e);if(n)return{fn:n[1]||null,url:n[2],line:Number(n[3]),column:Number(n[4]),raw:e.trim()};let r=$h.exec(e);return r?{fn:null,url:r[1],line:Number(r[2]),column:Number(r[3]),raw:e.trim()}:null}function tg(e,t=50){if(!e)return[];let n=[];for(let r of e.split(/\r?\n/)){let e=eg(r);if(e&&n.push(e),n.length>=t)break}return n}var ng=`[A-Za-z_$][\\w$]*`,rg=[RegExp(`function\\s*\\*?\\s*(${ng})\\s*\\(`),RegExp(`(?:const|let|var)\\s+(${ng})\\s*(?::[^=]+)?=\\s*(?:async\\s*)?(?:function\\b|\\([^)]*\\)[^=]*=>|${ng}\\s*=>)`),RegExp(`(${ng})\\s*:\\s*(?:async\\s*)?(?:function\\b|\\([^)]*\\)[^=]*=>)`),RegExp(`^\\s*(?:(?:public|private|protected|static|async|override|get|set)\\s+)*(${ng})\\s*(?:<[^>]*>)?\\([^)]*\\)[^{;]*\\{`)],ig=new Set([`if`,`for`,`while`,`switch`,`catch`,`function`,`return`,`with`,`do`,`else`]),ag=300,og=(e,t)=>e.split(t).length-1;function sg(e){for(let t of rg){let n=t.exec(e);if(n&&!ig.has(n[1]))return n[1]}return null}function cg(e,t,n){let r=e.split(/\r?\n/);if(t<1||t>r.length)return null;let i=0;for(let e=t-1;e>=0&&e>=t-ag;e--){let a=e===t-1?r[e].slice(0,Math.max(0,n-1)):r[e];i+=og(a,`}`)-og(a,`{`);let o=sg(a);if(o&&(i<0||e===t-1))return o;i<0&&(i=0)}return null}var lg=300,ug=/(^|\/)node_modules\/|^webpack\/(bootstrap|runtime)|^\(webpack\)|^vite\/|^\0/;function dg(e){let t=e.replace(/\\/g,`/`).replace(/[?#].*$/,``);t=t.replace(/^webpack:\/\/[^/]*\//,``).replace(/^[a-z]+:\/\/\/?/i,``).replace(/^\[project\]\//,``);let n=t.lastIndexOf(`node_modules/`);if(n>=0)return t.slice(n);for(;/^\.\.?\//.test(t);)t=t.replace(/^\.\.?\//,``);let r=t.indexOf(`/src/`);return r>=0&&(/^[a-z]:\//i.test(t)||t.startsWith(`/`))?t.slice(r+1):t.replace(/^\/+/,``)}var fg=(e,t)=>!ug.test(e??``)&&!t.includes(`/node_modules/`);function pg(e,t,n){if(!e||n<=0)return null;let r=e.split(/\r?\n/),i=Math.max(1,t-n),a=r.slice(i-1,Math.min(r.length,t+n)).map(e=>e.length>lg?`${e.slice(0,lg)}…`:e);return a.length?{start:i,lines:a}:null}function mg(e,t,n){let r=t?Xh(t,e.line,e.column):null;if(!r)return{raw:e,source:null,line:null,column:null,fn:e.fn,inApp:fg(null,e.url),context:null};let i=dg(r.source),a=(r.content?cg(r.content,r.line,r.column):null)??e.fn;return{raw:e,source:i,line:r.line,column:r.column,fn:a,inApp:fg(i,e.url),context:pg(r.content,r.line,n)}}async function hg(e,t,n,r={}){let i=tg(e,r.maxFrames??50),a=new Map,o=e=>(a.has(e)||a.set(e,n(e,t).catch(()=>null)),a.get(e)),s=r.context??3;return Promise.all(i.map(async e=>mg(e,await o(e.url),s)))}var gg=/^(localhost|127(?:\.\d{1,3}){3}|\[::1\]|::1|[^.]+\.localhost)$/i,_g=e=>/^https?:$/.test(e.protocol)&&gg.test(e.hostname);function vg(e){let t=e.slice(-4096),n=null;for(let e of t.matchAll(/[#@]\s*sourceMappingURL=([^\s'"*]+)/g))n=e[1];return n}function yg(e){let t=/^data:[^,]*?(;base64)?,(.*)$/s.exec(e);if(!t)return null;try{if(!t[1])return decodeURIComponent(t[2]);let e=atob(t[2]);return new TextDecoder().decode(Uint8Array.from(e,e=>e.charCodeAt(0)))}catch{return null}}async function bg(e,t){if(!e.allow(t))return null;try{let n=await e.fetch(t.href,{signal:AbortSignal.timeout(e.timeoutMs)});if(!n.ok||Number(n.headers.get(`content-length`)??0)>e.maxBytes)return null;let r=await n.text();return r.length>e.maxBytes?null:{text:r,header:n.headers.get(`sourcemap`)??n.headers.get(`x-sourcemap`)}}catch{return null}}async function xg(e,t,n){if(t.startsWith(`data:`)){let e=yg(t);return e?Kh(e):null}let r=await bg(e,new URL(t,n));return r?Kh(r.text):null}function Sg(e={}){let t={fetch:e.fetch??((...e)=>globalThis.fetch(...e)),allow:e.allow??_g,maxBytes:e.maxBytes??33554432,timeoutMs:e.timeoutMs??5e3};return async e=>{let n;try{n=new URL(e)}catch{return null}let r=await bg(t,n),i=r?r.header??vg(r.text):null;return i?xg(t,i,n):xg(t,`${n.origin}${n.pathname}.map`,n)}}function Cg(e,t={}){let n=t.max??50,r=t.missMs??6e4,i=t.hitMs??1/0,a=t.now??Date.now,o=new Map;return async(t,s)=>{let c=`${s??``}\n${t}`,l=o.get(c),u=l?a()-l.at:0;if(l&&u<(await l.map?i:r))return o.delete(c),o.set(c,l),l.map;let d={map:e(t,s).catch(()=>null),at:a()};for(o.set(c,d);o.size>n;)o.delete(o.keys().next().value);return d.map}}function wg(e){let t=e.attributes[st];return typeof t==`string`&&t?t:null}var Tg=`api/sourcemaps/resolve`,Eg=[`blue`,`green`,`amber`,`orange`,`red`,`violet`,`slate`],Dg={name:40,query:2e3,rules:50,matchItems:200};function Og(e){return e.flatMap(e=>{if(!e.enabled)return[];let t=bh(e.query);return t.ok&&t.node?[{name:e.name,color:e.color,node:t.node}]:[]})}function kg(e){return e?e.type===`and`||e.type===`or`?e.items.some(kg):e.type===`not`?kg(e.item):e.type===`field`&&e.field===`tag`:!1}var Ag=(e,t)=>`${e} ${t}`;function jg(e,t){return e===`spans`?t.spanId:e===`logs`?hm(t):``}var Mg={endpoints:{fields:new Set([`service`,`method`,`route`,`path`]),text:!1},services:{fields:new Set([`service`]),text:!1},errors:{fields:new Set([`service`,`error`]),text:!0},users:{fields:new Set([`user`]),text:!1}};function Ng(e,t){return e.type===`and`||e.type===`or`?e.items.every(e=>Ng(e,t)):e.type===`not`?Ng(e.item,t):e.type===`text`?Mg[t].text:e.type===`field`&&Mg[t].fields.has(e.field)}var Pg=e=>[...new Set([e,br(e),yr(e)])];function Fg(e,t){let n=t.indexOf(` `),[r,i]=n>0?[t.slice(0,n),t.slice(n+1)]:[null,t];return{kind:`requests`,text:[],fields:{service:Pg(e),method:r,route:i,path:i},attrs:[]}}var Ig=e=>({kind:`requests`,text:[],fields:{user:e},attrs:[]}),Lg=e=>({kind:`requests`,text:[],fields:{service:Pg(e)},attrs:[]});function Rg(e){return{kind:`requests`,text:[e.type,e.message,xr(e.message)].map(e=>e.toLowerCase()),fields:{service:Pg(e.service),error:!0,outcome:`error`},attrs:[]}}function zg(e,t,n){return e.filter(e=>Ng(e.node,t)&&tm(e.node)(n)).map(e=>e.name)}var Bg=(e,t)=>({type:`field`,field:e,cmp:`=`,value:{type:`string`,value:t}}),Vg=(...e)=>yh(e.length===1?e[0]:{type:`and`,items:e});function Hg(e){return e.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``).slice(0,Dg.name).replace(/-+$/,``)||`tag`}function Ug(e,t){let n=t.indexOf(` `),r=n>0?[Bg(`method`,t.slice(0,n)),Bg(`route`,t.slice(n+1))]:[Bg(`route`,t)];return{label:`This endpoint (${t})`,name:Hg(t),query:Vg(Bg(`service`,br(e)),...r)}}var Wg=e=>({label:`This service (${e})`,name:Hg(e),query:Vg(Bg(`service`,br(e)))}),Gg=e=>({label:`This user (${e})`,name:Hg(`user-${e}`),query:Vg(Bg(`user`,e))});function Kg(e){return xr(e).split(/\{id\}|#/).map(e=>e.trim()).reduce((e,t)=>t.length>e.length?t:e,``).slice(0,120)}function qg(e){let t=Kg(e.message)||e.type,n=Vg(Bg(`service`,br(e.service)),{type:`field`,field:`error`,cmp:`=`,value:{type:`bool`,value:!0}},{type:`text`,value:t});return{label:`This error (${e.type})`,name:Hg(e.type),query:n}}var Jg=e=>({label:`This search`,name:Hg(e.replace(/[@:]/g,` `)),query:e});function Yg(e,t){let n=t.toLowerCase();return e.filter(e=>e.enabled&&e.name.startsWith(n)).map(e=>({value:e.name,help:e.builtIn?`Built-in tag`:e.query}))}var Xg=(e,t)=>e.field===`tag`?Yg(t,e.prefix).slice(0,e.limit):null,Zg=864e5,Qg=Object.keys(fe),$g={"in-app":`In-app`,hub:`Local hub`,cloud:`Cloud`};function e_(e){let t=new Set(e?.capabilities??et),n=e?.storage?.maxAgeMs??Zg,r=t.has(`serverStats`)?n:Math.min(n,g),i=Qg.filter(e=>fe[e].ms<=r);return{mode:e?.mode??`in-app`,has:e=>t.has(e),keptMs:n,ranges:i.length?i:[Qg[0]],service:e?.service??null}}function H(){let{info:e}=Se();return(0,T.useMemo)(()=>e_(e),[e])}function t_(){let[e,t]=te(),{ranges:n}=H();return[n.includes(e)?e:n[n.length-1],t]}function n_(e){return e>=2*Zg?`${Math.round(e/Zg)} days`:e>=36e5?`${Math.round(e/36e5)} h`:`${Math.round(e/6e4)} min`}function r_(t,n,r){let i=me(n,r),a=Be(i),o=t.filter(e=>be(e.startMs,i)),s=t.filter(e=>be(e.startMs,a));return{range:n,compareLabel:e[n],window:i,prev:a,traces:o,prevTraces:s,requests:zn(o),prevRequests:zn(s)}}function i_(){let e=Se(),[t]=t_();return(0,T.useMemo)(()=>({...r_(e.traces,t,e.updatedMs),all:e.traces,loading:e.loading}),[e.traces,e.updatedMs,e.loading,t])}var a_=e=>e?.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase();function o_(e,t,n=[]){if(t==null)throw Error(`[lucide]: iconNode is required when icon name is used`);return{name:a_(e),size:24,node:t,...n.length>0?{aliases:n}:{}}}var s_=e=>{let t=``,n=!1;for(let r of e)r===`-`||r===`_`||r<=` `?n=t.length>0:(t.length===0?t+=r.toLowerCase():t+=n?r.toUpperCase():r,n=!1);return t},c_=e=>{let t=s_(e);return t.charAt(0).toUpperCase()+t.slice(1)},l_=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),u_={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":2,"stroke-linecap":`round`,"stroke-linejoin":`round`};function d_(e){return e!=null}function f_(e,t={}){let n=t.attributeNames??{},r=e=>n[e]??e,i=e.size??e.width??u_.width,a=e.size??e.height??u_.height,o=e.aliases?.filter(e=>typeof e==`string`&&e.trim()!==``).map(e=>`lucide-${e}`)??[],s=[...e.name?[`lucide-${e.name}`]:[],...o],c=t.className?.split(` `).filter(Boolean)??[],l=t.includeDefaultClasses===!1?l_(...c):l_(`lucide`,...s,...c),u=t.absoluteStrokeWidth?Number(t.strokeWidth??u_[`stroke-width`])*Number(e.size??e.width??u_.width)/Number(t.size??t.width??u_.width):t.strokeWidth??u_[`stroke-width`];return[`svg`,{...Object.entries(u_).reduce((e,[t,n])=>(e[r(t)]=n,e),{}),...`color`in t&&t.color&&{[r(`stroke`)]:t.color},...`size`in t&&d_(t.size)&&{[r(`width`)]:t.size,[r(`height`)]:t.size},...`width`in t&&d_(t.width)&&{[r(`width`)]:t.width},...`height`in t&&d_(t.height)&&{[r(`height`)]:t.height},[r(`stroke-width`)]:u,...l&&{[r(`class`)]:l},[r(`viewBox`)]:`0 0 ${i} ${a}`,...t.hasA11yProp===!1?{[r(`aria-hidden`)]:`true`}:{},...`attributes`in t&&t.attributes},e.node.map(e=>{let[n,i,a]=e,o=t.nonScalingStroke?{[r(`vector-effect`)]:`non-scaling-stroke`,...i}:i;return a?[n,o,a]:[n,o]})]}function p_(e,t={}){return f_(e,{...t,attributeNames:{...t.attributeNames,class:`className`,"stroke-width":`strokeWidth`,"stroke-linecap":`strokeLinecap`,"stroke-linejoin":`strokeLinejoin`,"vector-effect":`vectorEffect`}})}var m_=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},h_=(0,T.createContext)({}),g_=()=>(0,T.useContext)(h_),__=(0,T.forwardRef)(({color:e,size:t,width:n,height:r,strokeWidth:i,absoluteStrokeWidth:a,nonScalingStroke:o,className:s=``,children:c,iconNode:l=[],icon:u={node:l,aliases:[],size:24},...d},f)=>{let{size:p=24,strokeWidth:m=2,absoluteStrokeWidth:h=!1,nonScalingStroke:g=!1,color:_=`currentColor`,className:v=``}=g_()??{},y=!!c||m_(d),[b,ee,te=[]]=p_(u,{color:e??_,width:n??t??p,height:r??t??p,strokeWidth:i??m,absoluteStrokeWidth:a??h,nonScalingStroke:o??g,className:l_(v,s),hasA11yProp:y,attributes:d});return(0,T.createElement)(b,{ref:f,...ee},[...te.map(([e,t])=>(0,T.createElement)(e,t)),...Array.isArray(c)?c:[c]])});function U(e,t=[],n=[]){let r=typeof e==`string`?o_(e,t,n):e,i=(0,T.forwardRef)(({className:e,...t},n)=>(0,T.createElement)(__,{ref:n,icon:r,className:e,...t}));return r.name&&(i.displayName=c_(r.name)),i}var v_={name:`activity`,size:24,node:[[`path`,{d:`M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2`,key:`169zse`}]]};v_.node;var y_=U(v_),b_={name:`arrow-down`,size:24,node:[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]};b_.node;var x_=U(b_),S_={name:`arrow-left`,size:24,node:[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]};S_.node;var C_=U(S_),w_={name:`arrow-right`,size:24,node:[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]};w_.node;var T_=U(w_),E_={name:`arrow-up`,size:24,node:[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]};E_.node;var D_=U(E_),O_={name:`bell-plus`,size:24,node:[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M15 8h6`,key:`8ybuxh`}],[`path`,{d:`M18 5v6`,key:`g5ayrv`}],[`path`,{d:`M20.002 14.464a9 9 0 0 0 .738.863A1 1 0 0 1 20 17H4a1 1 0 0 1-.74-1.673C4.59 13.956 6 12.499 6 8a6 6 0 0 1 8.75-5.332`,key:`1abcvy`}]]};O_.node;var k_=U(O_),A_={name:`bell`,size:24,node:[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326`,key:`11g9vi`}]]};A_.node;var j_=U(A_),M_={name:`bell-ring`,size:24,node:[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M22 8c0-2.3-.8-4.3-2-6`,key:`5bb3ad`}],[`path`,{d:`M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326`,key:`11g9vi`}],[`path`,{d:`M4 2C2.8 3.7 2 5.7 2 8`,key:`tap9e0`}]]};M_.node;var N_=U(M_),P_={name:`book-open`,size:24,node:[[`path`,{d:`M12 5v16`,key:`1f6ucr`}],[`path`,{d:`M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z`,key:`1fyvmf`}]]};P_.node;var F_=U(P_),I_={name:`bookmark`,size:24,node:[[`path`,{d:`M17 3a2 2 0 0 1 2 2v15a1 1 0 0 1-1.496.868l-4.512-2.578a2 2 0 0 0-1.984 0l-4.512 2.578A1 1 0 0 1 5 20V5a2 2 0 0 1 2-2z`,key:`oz39mx`}]]};I_.node;var L_=U(I_),R_={name:`box`,size:24,node:[[`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`,key:`hh9hay`}],[`path`,{d:`m3.3 7 8.7 5 8.7-5`,key:`g66t2b`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}]]};R_.node;var z_=U(R_),B_={name:`boxes`,size:24,node:[[`path`,{d:`M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z`,key:`lc1i9w`}],[`path`,{d:`m7 16.5-4.74-2.85`,key:`1o9zyk`}],[`path`,{d:`m7 16.5 5-3`,key:`va8pkn`}],[`path`,{d:`M7 16.5v5.17`,key:`jnp8gn`}],[`path`,{d:`M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z`,key:`8zsnat`}],[`path`,{d:`m17 16.5-5-3`,key:`8arw3v`}],[`path`,{d:`m17 16.5 4.74-2.85`,key:`8rfmw`}],[`path`,{d:`M17 16.5v5.17`,key:`k6z78m`}],[`path`,{d:`M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z`,key:`1xygjf`}],[`path`,{d:`M12 8 7.26 5.15`,key:`1vbdud`}],[`path`,{d:`m12 8 4.74-2.85`,key:`3rx089`}],[`path`,{d:`M12 13.5V8`,key:`1io7kd`}]]};B_.node;var V_=U(B_),H_={name:`bug`,size:24,node:[[`path`,{d:`M12 20v-9`,key:`1qisl0`}],[`path`,{d:`M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z`,key:`uouzyp`}],[`path`,{d:`M14.12 3.88 16 2`,key:`qol33r`}],[`path`,{d:`M21 21a4 4 0 0 0-3.81-4`,key:`1b0z45`}],[`path`,{d:`M21 5a4 4 0 0 1-3.55 3.97`,key:`5cxbf6`}],[`path`,{d:`M22 13h-4`,key:`1jl80f`}],[`path`,{d:`M3 21a4 4 0 0 1 3.81-4`,key:`1fjd4g`}],[`path`,{d:`M3 5a4 4 0 0 0 3.55 3.97`,key:`1d7oge`}],[`path`,{d:`M6 13H2`,key:`82j7cp`}],[`path`,{d:`m8 2 1.88 1.88`,key:`fmnt4t`}],[`path`,{d:`M9 7.13V6a3 3 0 1 1 6 0v1.13`,key:`1vgav8`}]]};H_.node;var U_=U(H_),W_={name:`calendar`,size:24,node:[[`path`,{d:`M8 2v3`,key:`1ioesn`}],[`path`,{d:`M16 2v3`,key:`otl347`}],[`rect`,{x:`3`,y:`3`,width:`18`,height:`18`,rx:`2`,key:`h1oib`}],[`path`,{d:`M3 9h18`,key:`1pudct`}]]};W_.node;var G_=U(W_),K_={name:`chart-column`,size:24,node:[[`path`,{d:`M3 3v16a2 2 0 0 0 2 2h16`,key:`c24i48`}],[`path`,{d:`M18 17V9`,key:`2bz60n`}],[`path`,{d:`M13 17V5`,key:`1frdt8`}],[`path`,{d:`M8 17v-3`,key:`17ska0`}]],aliases:[`bar-chart-3`]};K_.node;var q_=U(K_),J_={name:`check`,size:24,node:[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]};J_.node;var Y_=U(J_),X_={name:`chevron-down`,size:24,node:[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]};X_.node;var Z_=U(X_),Q_={name:`chevron-left`,size:24,node:[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]};Q_.node;var $_=U(Q_),ev={name:`chevron-right`,size:24,node:[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]};ev.node;var tv=U(ev),nv={name:`circle-check`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m16 9-5.5 5.5L8 12`,key:`xofnsj`}]],aliases:[`check-circle-2`]};nv.node;var rv=U(nv),iv={name:`clock`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]};iv.node;var av=U(iv),ov={name:`cog`,size:24,node:[[`path`,{d:`M11 10.27 7 3.34`,key:`16pf9h`}],[`path`,{d:`m11 13.73-4 6.93`,key:`794ttg`}],[`path`,{d:`M12 22v-2`,key:`1osdcq`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M14 12h8`,key:`4f43i9`}],[`path`,{d:`m17 20.66-1-1.73`,key:`eq3orb`}],[`path`,{d:`m17 3.34-1 1.73`,key:`2wel8s`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`m20.66 17-1.73-1`,key:`sg0v6f`}],[`path`,{d:`m20.66 7-1.73 1`,key:`1ow05n`}],[`path`,{d:`m3.34 17 1.73-1`,key:`nuk764`}],[`path`,{d:`m3.34 7 1.73 1`,key:`1ulond`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}],[`circle`,{cx:`12`,cy:`12`,r:`8`,key:`46899m`}]]};ov.node;var sv=U(ov),cv={name:`copy`,size:24,node:[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]};cv.node;var lv=U(cv),uv={name:`cpu`,size:24,node:[[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M17 20v2`,key:`1rnc9c`}],[`path`,{d:`M17 2v2`,key:`11trls`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M2 17h2`,key:`7oei6x`}],[`path`,{d:`M2 7h2`,key:`asdhe0`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`M20 17h2`,key:`1fpfkl`}],[`path`,{d:`M20 7h2`,key:`1o8tra`}],[`path`,{d:`M7 20v2`,key:`4gnj0m`}],[`path`,{d:`M7 2v2`,key:`1i4yhu`}],[`rect`,{x:`4`,y:`4`,width:`16`,height:`16`,rx:`2`,key:`1vbyd7`}],[`rect`,{x:`8`,y:`8`,width:`8`,height:`8`,rx:`1`,key:`z9xiuo`}]]};uv.node;var dv=U(uv),fv={name:`database`,size:24,node:[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`,key:`msslwz`}],[`path`,{d:`M3 5V19A9 3 0 0 0 21 19V5`,key:`1wlel7`}],[`path`,{d:`M3 12A9 3 0 0 0 21 12`,key:`mv7ke4`}]]};fv.node;var pv=U(fv),mv={name:`download`,size:24,node:[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]};mv.node;var hv=U(mv),gv={name:`external-link`,size:24,node:[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]};gv.node;var _v=U(gv),vv={name:`eye`,size:24,node:[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`,key:`1nclc0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]};vv.node;var yv=U(vv),bv={name:`face-slightly-smiling`,size:24,node:[[`path`,{d:`M15 10V9`,key:`4dkmfx`}],[`path`,{d:`M16.472 15a6 6 0 01-8.943 0`,key:`7qomzy`}],[`path`,{d:`M9 10V9`,key:`1lazqi`}],[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]],aliases:[`smile`]};bv.node;var xv=U(bv),Sv={name:`file-search`,size:24,node:[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`circle`,{cx:`11.5`,cy:`14.5`,r:`2.5`,key:`1bq0ko`}],[`path`,{d:`M13.3 16.3 15 18`,key:`2quom7`}]]};Sv.node;var Cv=U(Sv),wv={name:`file-text`,size:24,node:[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]};wv.node;var Tv=U(wv),Ev={name:`folder-cog`,size:24,node:[[`path`,{d:`M10.3 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.98a2 2 0 0 1 1.69.9l.66 1.2A2 2 0 0 0 12 6h8a2 2 0 0 1 2 2v3.3`,key:`128dxu`}],[`path`,{d:`m14.305 19.53.923-.382`,key:`3m78fa`}],[`path`,{d:`m15.228 16.852-.923-.383`,key:`npixar`}],[`path`,{d:`m16.852 15.228-.383-.923`,key:`5xggr7`}],[`path`,{d:`m16.852 20.772-.383.924`,key:`dpfhf9`}],[`path`,{d:`m19.148 15.228.383-.923`,key:`1reyyz`}],[`path`,{d:`m19.53 21.696-.382-.924`,key:`1goivc`}],[`path`,{d:`m20.772 16.852.924-.383`,key:`htqkph`}],[`path`,{d:`m20.772 19.148.924.383`,key:`9w9pjp`}],[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}]],aliases:[`folder-cog-2`]};Ev.node;var Dv=U(Ev),Ov={name:`gauge`,size:24,node:[[`path`,{d:`m12 14 4-4`,key:`9kzdfg`}],[`path`,{d:`M3.34 19a10 10 0 1 1 17.32 0`,key:`19p75a`}]]};Ov.node;var kv=U(Ov),Av={name:`git-branch`,size:24,node:[[`path`,{d:`M15 6a9 9 0 0 0-9 9V3`,key:`1cii5b`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}],[`circle`,{cx:`6`,cy:`18`,r:`3`,key:`fqmcym`}]]};Av.node;var jv=U(Av),Mv={name:`git-compare`,size:24,node:[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M13 6h3a2 2 0 0 1 2 2v7`,key:`1yeb86`}],[`path`,{d:`M11 18H8a2 2 0 0 1-2-2V9`,key:`19pyzm`}]]};Mv.node;var Nv=U(Mv),Pv={name:`globe`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]};Pv.node;var Fv=U(Pv),Iv={name:`hard-drive`,size:24,node:[[`path`,{d:`M10 16h.01`,key:`1bzywj`}],[`path`,{d:`M2.212 11.577a2 2 0 0 0-.212.896V18a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-5.527a2 2 0 0 0-.212-.896L18.55 5.11A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z`,key:`18tbho`}],[`path`,{d:`M21.946 12.013H2.054`,key:`zqlbp7`}],[`path`,{d:`M6 16h.01`,key:`1pmjb7`}]]};Iv.node;var Lv=U(Iv),Rv={name:`heart-pulse`,size:24,node:[[`path`,{d:`M2 9.5a5.5 5.5 0 0 1 9.591-3.676.56.56 0 0 0 .818 0A5.49 5.49 0 0 1 22 9.5c0 2.29-1.5 4-3 5.5l-5.492 5.313a2 2 0 0 1-3 .019L5 15c-1.5-1.5-3-3.2-3-5.5`,key:`mvr1a0`}],[`path`,{d:`M3.22 13H9.5l.5-1 2 4.5 2-7 1.5 3.5h5.27`,key:`auskq0`}]]};Rv.node;var zv=U(Rv),Bv={name:`house`,size:24,node:[[`path`,{d:`M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8`,key:`5wwlr5`}],[`path`,{d:`M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`r6nss1`}]],aliases:[`home`]};Bv.node;var Vv=U(Bv),Hv={name:`inbox`,size:24,node:[[`polyline`,{points:`22 12 16 12 14 15 10 15 8 12 2 12`,key:`o97t9d`}],[`path`,{d:`M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z`,key:`oot6mr`}]]};Hv.node;var Uv=U(Hv),Wv={name:`layers`,size:24,node:[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`,key:`zw3jo`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,key:`1wduqc`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,key:`kqbvx6`}]],aliases:[`layers-3`]};Wv.node;var Gv=U(Wv),Kv={name:`layout-dashboard`,size:24,node:[[`rect`,{width:`7`,height:`9`,x:`3`,y:`3`,rx:`1`,key:`10lvy0`}],[`rect`,{width:`7`,height:`5`,x:`14`,y:`3`,rx:`1`,key:`16une8`}],[`rect`,{width:`7`,height:`9`,x:`14`,y:`12`,rx:`1`,key:`1hutg5`}],[`rect`,{width:`7`,height:`5`,x:`3`,y:`16`,rx:`1`,key:`ldoo1y`}]]};Kv.node;var qv=U(Kv),Jv={name:`lightbulb`,size:24,node:[[`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`}]]};Jv.node;var Yv=U(Jv),Xv={name:`link-2`,size:24,node:[[`path`,{d:`M9 17H7A5 5 0 0 1 7 7h2`,key:`8i5ue5`}],[`path`,{d:`M15 7h2a5 5 0 1 1 0 10h-2`,key:`1b9ql8`}],[`line`,{x1:`8`,x2:`16`,y1:`12`,y2:`12`,key:`1jonct`}]]};Xv.node;var Zv=U(Xv),Qv={name:`list`,size:24,node:[[`path`,{d:`M3 5h.01`,key:`18ugdj`}],[`path`,{d:`M3 12h.01`,key:`nlz23k`}],[`path`,{d:`M3 19h.01`,key:`noohij`}],[`path`,{d:`M8 5h13`,key:`1pao27`}],[`path`,{d:`M8 12h13`,key:`1za7za`}],[`path`,{d:`M8 19h13`,key:`m83p4d`}]]};Qv.node;var $v=U(Qv),ey={name:`log-out`,size:24,node:[[`path`,{d:`m16 17 5-5-5-5`,key:`1bji2h`}],[`path`,{d:`M21 12H9`,key:`dn1m92`}],[`path`,{d:`M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4`,key:`1uf3rs`}]]};ey.node;var ty=U(ey),ny={name:`memory-stick`,size:24,node:[[`path`,{d:`M12 12v-2`,key:`fwoke6`}],[`path`,{d:`M12 18v-2`,key:`qj6yno`}],[`path`,{d:`M16 12v-2`,key:`heuere`}],[`path`,{d:`M16 18v-2`,key:`s1ct0w`}],[`path`,{d:`M2 11h1.5`,key:`15p63e`}],[`path`,{d:`M20 18v-2`,key:`12ehxp`}],[`path`,{d:`M20.5 11H22`,key:`khsy7a`}],[`path`,{d:`M4 18v-2`,key:`1c3oqr`}],[`path`,{d:`M8 12v-2`,key:`1mwtfd`}],[`path`,{d:`M8 18v-2`,key:`qcmpov`}],[`rect`,{x:`2`,y:`6`,width:`20`,height:`10`,rx:`2`,key:`1qcswk`}]]};ny.node;var ry=U(ny),iy={name:`monitor`,size:24,node:[[`rect`,{width:`20`,height:`14`,x:`2`,y:`3`,rx:`2`,key:`48i651`}],[`line`,{x1:`8`,x2:`16`,y1:`21`,y2:`21`,key:`1svkeh`}],[`line`,{x1:`12`,x2:`12`,y1:`17`,y2:`21`,key:`vw1qmm`}]]};iy.node;var ay=U(iy),oy={name:`moon`,size:24,node:[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]};oy.node;var sy=U(oy),cy={name:`network`,size:24,node:[[`rect`,{x:`16`,y:`16`,width:`6`,height:`6`,rx:`1`,key:`4q2zg0`}],[`rect`,{x:`2`,y:`16`,width:`6`,height:`6`,rx:`1`,key:`8cvhb9`}],[`rect`,{x:`9`,y:`2`,width:`6`,height:`6`,rx:`1`,key:`1egb70`}],[`path`,{d:`M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3`,key:`1jsf9p`}],[`path`,{d:`M12 12V8`,key:`2874zd`}]]};cy.node;var ly=U(cy),uy={name:`octagon-x`,size:24,node:[[`path`,{d:`m15 9-6 6`,key:`1uzhvr`}],[`path`,{d:`M2.586 16.726A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586z`,key:`2d38gg`}],[`path`,{d:`m9 9 6 6`,key:`z0biqf`}]],aliases:[`x-octagon`]};uy.node;var dy=U(uy),fy={name:`paintbrush`,size:24,node:[[`path`,{d:`m14.622 17.897-10.68-2.913`,key:`vj2p1u`}],[`path`,{d:`M18.376 2.622a1 1 0 1 1 3.002 3.002L17.36 9.643a.5.5 0 0 0 0 .707l.944.944a2.41 2.41 0 0 1 0 3.408l-.944.944a.5.5 0 0 1-.707 0L8.354 7.348a.5.5 0 0 1 0-.707l.944-.944a2.41 2.41 0 0 1 3.408 0l.944.944a.5.5 0 0 0 .707 0z`,key:`18tc5c`}],[`path`,{d:`M9 8c-1.804 2.71-3.97 3.46-6.583 3.948a.507.507 0 0 0-.302.819l7.32 8.883a1 1 0 0 0 1.185.204C12.735 20.405 16 16.792 16 15`,key:`ytzfxy`}]]};fy.node;var py=U(fy),my={name:`plus`,size:24,node:[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]};my.node;var hy=U(my),gy={name:`plug`,size:24,node:[[`path`,{d:`M12 22v-5`,key:`1ega77`}],[`path`,{d:`M15 8V2`,key:`18g5xt`}],[`path`,{d:`M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z`,key:`1xoxul`}],[`path`,{d:`M9 8V2`,key:`14iosj`}]]};gy.node;var _y=U(gy),vy={name:`refresh-cw`,size:24,node:[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]};vy.node;var yy=U(vy),by={name:`rocket`,size:24,node:[[`path`,{d:`M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5`,key:`qeys4`}],[`path`,{d:`M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09`,key:`u4xsad`}],[`path`,{d:`M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z`,key:`676m9`}],[`path`,{d:`M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05`,key:`92ym6u`}]]};by.node;var xy=U(by),Sy={name:`rotate-ccw`,size:24,node:[[`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`}]]};Sy.node;var Cy=U(Sy),wy={name:`save`,size:24,node:[[`path`,{d:`M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z`,key:`1c8476`}],[`path`,{d:`M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7`,key:`1ydtos`}],[`path`,{d:`M7 3v4a1 1 0 0 0 1 1h7`,key:`t51u73`}]]};wy.node;var Ty=U(wy),Ey={name:`search`,size:24,node:[[`path`,{d:`m21 21-4.34-4.34`,key:`14j7rj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}]]};Ey.node;var Dy=U(Ey),Oy={name:`server`,size:24,node:[[`rect`,{width:`20`,height:`8`,x:`2`,y:`2`,rx:`2`,ry:`2`,key:`ngkwjq`}],[`rect`,{width:`20`,height:`8`,x:`2`,y:`14`,rx:`2`,ry:`2`,key:`iecqi9`}],[`line`,{x1:`6`,x2:`6.01`,y1:`6`,y2:`6`,key:`16zg32`}],[`line`,{x1:`6`,x2:`6.01`,y1:`18`,y2:`18`,key:`nzw8ys`}]]};Oy.node;var ky=U(Oy),Ay={name:`settings-2`,size:24,node:[[`path`,{d:`M14 17H5`,key:`gfn3mx`}],[`path`,{d:`M19 7h-9`,key:`6i9tg`}],[`circle`,{cx:`17`,cy:`17`,r:`3`,key:`18b49y`}],[`circle`,{cx:`7`,cy:`7`,r:`3`,key:`dfmy0x`}]]};Ay.node;var jy=U(Ay),My={name:`settings`,size:24,node:[[`path`,{d:`M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915`,key:`1i5ecw`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]};My.node;var Ny=U(My),Py={name:`share-2`,size:24,node:[[`circle`,{cx:`18`,cy:`5`,r:`3`,key:`gq8acd`}],[`circle`,{cx:`6`,cy:`12`,r:`3`,key:`w7nqdw`}],[`circle`,{cx:`18`,cy:`19`,r:`3`,key:`1xt0gg`}],[`line`,{x1:`8.59`,x2:`15.42`,y1:`13.51`,y2:`17.49`,key:`47mynk`}],[`line`,{x1:`15.41`,x2:`8.59`,y1:`6.51`,y2:`10.49`,key:`1n3mei`}]]};Py.node;var Fy=U(Py),Iy={name:`siren`,size:24,node:[[`path`,{d:`M7 18v-6a5 5 0 1 1 10 0v6`,key:`pcx96s`}],[`path`,{d:`M5 21a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-1a2 2 0 0 0-2-2H7a2 2 0 0 0-2 2z`,key:`1b4s83`}],[`path`,{d:`M21 12h1`,key:`jtio3y`}],[`path`,{d:`M18.5 4.5 18 5`,key:`g5sp9y`}],[`path`,{d:`M2 12h1`,key:`1uaihz`}],[`path`,{d:`M12 2v1`,key:`11qlp1`}],[`path`,{d:`m4.929 4.929.707.707`,key:`1i51kw`}],[`path`,{d:`M12 12v6`,key:`3ahymv`}]]};Iy.node;var Ly=U(Iy),Ry={name:`skull`,size:24,node:[[`path`,{d:`m12.5 17-.5-1-.5 1h1z`,key:`3me087`}],[`path`,{d:`M15 22a1 1 0 0 0 1-1v-1a2 2 0 0 0 1.56-3.25 8 8 0 1 0-11.12 0A2 2 0 0 0 8 20v1a1 1 0 0 0 1 1z`,key:`1o5pge`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}]]};Ry.node;var zy=U(Ry),By={name:`sliders-horizontal`,size:24,node:[[`path`,{d:`M10 5H3`,key:`1qgfaw`}],[`path`,{d:`M12 19H3`,key:`yhmn1j`}],[`path`,{d:`M14 3v4`,key:`1sua03`}],[`path`,{d:`M16 17v4`,key:`1q0r14`}],[`path`,{d:`M21 12h-9`,key:`1o4lsq`}],[`path`,{d:`M21 19h-5`,key:`1rlt1p`}],[`path`,{d:`M21 5h-7`,key:`1oszz2`}],[`path`,{d:`M8 10v4`,key:`tgpxqk`}],[`path`,{d:`M8 12H3`,key:`a7s4jb`}]]};By.node;var Vy=U(By),Hy={name:`star`,size:24,node:[[`path`,{d:`M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z`,key:`r04s7s`}]]};Hy.node;var Uy=U(Hy),Wy={name:`sun`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]};Wy.node;var Gy=U(Wy),Ky={name:`tag`,size:24,node:[[`path`,{d:`M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z`,key:`vktsd0`}],[`circle`,{cx:`7.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`kqv944`}]]};Ky.node;var qy=U(Ky),Jy={name:`target`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`circle`,{cx:`12`,cy:`12`,r:`6`,key:`1vlfrh`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}]]};Jy.node;var Yy=U(Jy),Xy={name:`timer`,size:24,node:[[`line`,{x1:`10`,x2:`14`,y1:`2`,y2:`2`,key:`14vaq8`}],[`line`,{x1:`12`,x2:`15`,y1:`14`,y2:`11`,key:`17fdiu`}],[`circle`,{cx:`12`,cy:`14`,r:`8`,key:`1e1u0o`}]]};Xy.node;var Zy=U(Xy),Qy={name:`trash`,size:24,node:[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]],aliases:[`trash-2`]};Qy.node;var $y=U(Qy),eb={name:`triangle-alert`,size:24,node:[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]],aliases:[`alert-triangle`]};eb.node;var tb=U(eb),nb={name:`upload`,size:24,node:[[`path`,{d:`M12 3v12`,key:`1x0j5s`}],[`path`,{d:`m17 8-5-5-5 5`,key:`7q97r8`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}]]};nb.node;var rb=U(nb),ib={name:`user-round`,size:24,node:[[`circle`,{cx:`12`,cy:`8`,r:`5`,key:`1hypcn`}],[`path`,{d:`M20 21a8 8 0 0 0-16 0`,key:`rfgkzh`}]],aliases:[`user-2`]};ib.node;var ab=U(ib),ob={name:`users`,size:24,node:[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`path`,{d:`M16 3.128a4 4 0 0 1 0 7.744`,key:`16gr8j`}],[`path`,{d:`M22 21v-2a4 4 0 0 0-3-3.87`,key:`kshegd`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}]]};ob.node;var sb=U(ob),cb={name:`waypoints`,size:24,node:[[`path`,{d:`m10.586 5.414-5.172 5.172`,key:`4mc350`}],[`path`,{d:`m18.586 13.414-5.172 5.172`,key:`8c96vv`}],[`path`,{d:`M6 12h12`,key:`8npq4p`}],[`circle`,{cx:`12`,cy:`20`,r:`2`,key:`144qzu`}],[`circle`,{cx:`12`,cy:`4`,r:`2`,key:`muu5ef`}],[`circle`,{cx:`20`,cy:`12`,r:`2`,key:`1xzzfp`}],[`circle`,{cx:`4`,cy:`12`,r:`2`,key:`1hvhnz`}]]};cb.node;var lb=U(cb),ub={name:`x`,size:24,node:[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]};ub.node;var db=U(ub),fb={name:`zap`,size:24,node:[[`path`,{d:`M15.914 4a1.5 1.5 0 00-2.474-1.561l-9 9A1.5 1.5 0 005.5 14h4.002a.5.5 0 01.471.666L8.086 20a1.5 1.5 0 002.475 1.56l9-9A1.5 1.5 0 0018.5 10h-3.997a.5.5 0 01-.472-.667z`,key:`1v7up4`}]]};fb.node;var pb=U(fb),mb=Ge((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),hb=Ge(((e,t)=>{t.exports=mb()})),W=hb();function gb({title:e,subtitle:t,children:n}){return(0,W.jsxs)(`header`,{className:`wl-page-head`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`h1`,{children:e}),(0,W.jsx)(`p`,{children:t})]}),n&&(0,W.jsx)(`div`,{className:`wl-page-actions`,children:n})]})}function G({title:e,action:t,flush:n=!1,className:r=``,children:i}){return(0,W.jsxs)(`section`,{className:`wl-panel${n?` wl-panel-flush`:``} ${r}`,children:[(e||t)&&(0,W.jsxs)(`div`,{className:`wl-panel-head`,children:[typeof e==`string`?(0,W.jsx)(`h2`,{children:e}):e,t]}),i]})}function _b({href:e,label:t=`View all`}){return(0,W.jsxs)(`a`,{className:`wl-view-all`,href:e,children:[t,` `,(0,W.jsx)(T_,{"aria-hidden":`true`})]})}function K({title:e,children:t}){return(0,W.jsxs)(`div`,{className:`wl-empty`,children:[e&&(0,W.jsx)(`strong`,{children:e}),t&&(0,W.jsx)(`div`,{className:`wl-empty-body`,children:t})]})}function vb({rows:e}){return(0,W.jsx)(`dl`,{className:`wl-kv`,children:e.map(([e,t],n)=>(0,W.jsxs)(`div`,{style:{display:`contents`},children:[(0,W.jsx)(`dt`,{children:e}),(0,W.jsx)(`dd`,{children:t??`–`})]},n))})}function yb({tabs:e,value:t,onChange:n}){return(0,W.jsx)(`div`,{className:`wl-tabbar`,role:`tablist`,children:e.map(([e,r])=>(0,W.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":t===e,className:t===e?`wl-active`:``,onClick:()=>n(e),children:r},e))})}var bb=`–`;function q(e){return e==null||!Number.isFinite(e)?bb:e===0?`0 ms`:e<1?`${e.toFixed(2)} ms`:e<10?`${e.toFixed(1)} ms`:e<1e3?`${Math.round(e)} ms`:`${(e/1e3).toFixed(e<1e4?2:1)} s`}var xb=e=>e===`week`?`Last week`:`Period before`,J=e=>e==null||!Number.isFinite(e)?bb:Math.round(e).toLocaleString(`en-US`),Sb=(e,t)=>t>e?`${J(e)} of ${J(t)}`:J(t);function Cb(e){return e==null||!Number.isFinite(e)?bb:e===0?`0%`:Math.abs(e)<10?`${e.toFixed(2).replace(/\.?0+$/,``)}%`:`${Math.round(e)}%`}function wb(e){return e==null||!Number.isFinite(e)?bb:e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(1)} MB`}function Tb(e){return e>=1e6?`${(e/1e6).toFixed(1).replace(/\.0$/,``)}M`:e>=1e4?`${Math.round(e/1e3)}K`:J(e)}var Eb={utc:!1,hour12:!0},Db=e=>void(Eb=e),Ob=()=>Eb.utc,kb=e=>({...e,...e.hour?{hour12:Eb.hour12}:{},...Eb.utc?{timeZone:`UTC`}:{}}),Ab=e=>new Date(e).toLocaleTimeString(`en-US`,kb({hour:`numeric`,minute:`2-digit`,second:`2-digit`})),jb=e=>new Date(e).toLocaleDateString(`en-US`,kb({month:`short`,day:`numeric`,year:`numeric`})),Mb=e=>new Date(e).toLocaleString(`en-US`,kb({month:`short`,day:`numeric`,year:`numeric`,hour:`numeric`,minute:`2-digit`})),Nb=1728e5,Pb=(e,t=0)=>t>Nb?new Date(e).toLocaleDateString(`en-US`,kb({month:`short`,day:`numeric`})):new Date(e).toLocaleTimeString(`en-US`,kb({hour:`numeric`,minute:`2-digit`})),Fb=(e,t=0)=>t>Nb?new Date(e).toLocaleString(`en-US`,kb({month:`short`,day:`numeric`,hour:`numeric`})):Pb(e);function Ib(e){let t=new Date(Eb.utc?e:e-new Date(e).getTimezoneOffset()*6e4),n=(e,t=2)=>String(e).padStart(t,`0`);return`${n(t.getUTCHours())}:${n(t.getUTCMinutes())}:${n(t.getUTCSeconds())}.${n(t.getUTCMilliseconds(),3)}`}function Lb(e,t=Date.now()){let n=Math.max(0,Math.round((t-e)/1e3));if(n<5)return`just now`;if(n<60)return`${n}s ago`;let r=Math.round(n/60);if(r<60)return`${r}m ago`;let i=Math.round(r/60);return i<24?`${i}h ago`:jb(e)}function Rb(e,t){let n=t.indexOf(e);if(n>=0)return n%8;let r=0;for(let t of e)r=r*31+t.charCodeAt(0)|0;return Math.abs(r)%8}var zb=e=>e.slice(0,8),Bb={error:`Error`,"n+1-db":`N+1 query`,"n+1-http":`N+1 HTTP`,"duplicate-query":`Duplicate`,"slow-query":`Slow query`,"db-wait":`Database wait`};function Vb({findings:e,onSelect:t}){return e.length===0?(0,W.jsxs)(`section`,{className:`wl-insights wl-insights-clean`,"aria-label":`Insights`,children:[(0,W.jsx)(`span`,{className:`wl-insight-ok`,children:`✓`}),` No problems found in this request.`]}):(0,W.jsx)(`section`,{className:`wl-insights`,"aria-label":`Insights`,children:e.map((e,n)=>(0,W.jsxs)(`button`,{type:`button`,className:`wl-insight wl-insight-${e.severity}`,onClick:()=>t(e),children:[(0,W.jsx)(`span`,{className:`wl-fbadge wl-fbadge-${e.kind.replace(`+`,`p`)}`,children:Bb[e.kind]}),(0,W.jsx)(`span`,{className:`wl-insight-title`,children:e.title}),(0,W.jsx)(`code`,{className:`wl-insight-shape`,children:e.shape}),(0,W.jsx)(`span`,{className:`wl-insight-ms`,children:q(e.totalMs)})]},`${e.kind}-${n}`))})}var Hb={info:`info`,success:`success`,opportunity:`warning`,warning:`orange`,critical:`danger`,neutral:`neutral`},Ub=e=>Hb[e];function Wb(e){return e===null?`neutral`:e>=500?`danger`:e>=400?`warning`:`success`}function Gb({tone:e,title:t}){return(0,W.jsx)(`span`,{className:`wl-dot wl-tone-${e}`,title:t})}function Kb({tone:e,children:t,colorText:n=!1}){return(0,W.jsxs)(`span`,{className:`wl-dot-text${n?` wl-text-tone-${e}`:``}`,children:[(0,W.jsx)(Gb,{tone:e}),t]})}function Y({tone:e,children:t}){return(0,W.jsx)(`span`,{className:`wl-badge wl-badge-${e}`,children:t})}var qb={high:`High`,medium:`Medium`,low:`Low`},Jb=({impact:e})=>(0,W.jsx)(Y,{tone:e,children:qb[e]});function Yb({n:e}){return e>0?(0,W.jsx)(`span`,{className:`wl-count`,children:e}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`})}function Xb({text:e,label:t=`Copy`,asLink:n=!1}){let[r,i]=(0,T.useState)(!1),a=()=>{navigator.clipboard?.writeText(e).then(()=>{i(!0),setTimeout(()=>i(!1),1200)})};return n?(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:a,children:r?`Copied`:t}):(0,W.jsx)(`button`,{type:`button`,className:`wl-copy-btn`,onClick:a,title:t,"aria-label":t,children:r?(0,W.jsx)(Y_,{}):(0,W.jsx)(lv,{})})}function X({value:e,options:t,onChange:n,label:r,small:i=!1}){return(0,W.jsx)(`select`,{className:`wl-select${i?` wl-small`:``}`,value:e,"aria-label":r,onChange:e=>n(e.target.value),children:t.map(([e,t])=>(0,W.jsx)(`option`,{value:e,children:t},e))})}function Zb({value:e,onChange:t,placeholder:n}){return(0,W.jsxs)(`label`,{className:`wl-input`,children:[(0,W.jsx)(Dy,{"aria-hidden":`true`}),(0,W.jsx)(`input`,{type:`search`,value:e,placeholder:n,onChange:e=>t(e.target.value)})]})}function Qb(e,t){let n=[...new Set([1,2,3,e-1,e,e+1,t].filter(e=>e>=1&&e<=t))].sort((e,t)=>e-t),r=[];return n.forEach((e,t)=>{t>0&&e-n[t-1]>1&&r.push(null),r.push(e)}),r}function $b({page:e,pageSize:t,total:n,noun:r,onPage:i,onPageSize:a}){let o=Math.max(1,Math.ceil(n/t)),s=n===0?0:(e-1)*t+1,c=Math.min(n,e*t);return(0,W.jsxs)(`div`,{className:`wl-pager`,children:[(0,W.jsxs)(`span`,{children:[J(s),`–`,J(c),` of `,J(n),` `,r]}),(0,W.jsxs)(`div`,{className:`wl-pages`,children:[(0,W.jsx)(`button`,{type:`button`,"aria-label":`Previous page`,disabled:e<=1,onClick:()=>i(e-1),children:(0,W.jsx)($_,{size:16})}),Qb(e,o).map((t,n)=>t===null?(0,W.jsx)(`span`,{children:`…`},`gap-${n}`):(0,W.jsx)(`button`,{type:`button`,className:t===e?`wl-active`:void 0,onClick:()=>i(t),children:J(t)},t)),(0,W.jsx)(`button`,{type:`button`,"aria-label":`Next page`,disabled:e>=o,onClick:()=>i(e+1),children:(0,W.jsx)(tv,{size:16})}),(0,W.jsx)(X,{small:!0,label:`Rows per page`,value:String(t),options:[[`15`,`15 / page`],[`30`,`30 / page`],[`50`,`50 / page`],[`100`,`100 / page`]],onChange:e=>a(Number(e))})]})]})}function ex({label:e,title:t,buttonClass:n=`wl-top-btn`,onOpen:r,children:i}){let[a,o]=(0,T.useState)(!1),s=(0,T.useRef)(null);return(0,T.useEffect)(()=>{if(!a)return;let e=e=>!s.current?.contains(e.target)&&o(!1),t=e=>e.key===`Escape`&&o(!1);return document.addEventListener(`mousedown`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`mousedown`,e),document.removeEventListener(`keydown`,t)}},[a]),(0,W.jsxs)(`div`,{className:`wl-menu-anchor`,ref:s,children:[(0,W.jsx)(`button`,{type:`button`,className:n,"aria-haspopup":`true`,"aria-expanded":a,title:t,"aria-label":t,onClick:()=>{a||r?.(),o(!a)},children:e}),a&&(0,W.jsx)(`div`,{className:`wl-menu`,role:`menu`,children:i(()=>o(!1))})]})}var tx=[[`1`,`1 day`],[`7`,`7 days`],[`30`,`30 days`]];function nx({traceId:e}){let[t,n]=(0,T.useState)(`7`),[r,i]=(0,T.useState)(null),[a,o]=(0,T.useState)(null),s=()=>{o(null),x(`POST`,`./api/projects/${c().project}/shares`,{traceId:e,days:Number(t)}).then(i,e=>o(e instanceof Error?e.message:String(e)))};return(0,W.jsx)(ex,{label:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(Zv,{"aria-hidden":`true`}),` Share`]}),title:`Share a read-only link`,buttonClass:`wl-btn`,children:()=>(0,W.jsxs)(`div`,{className:`wl-share`,children:[(0,W.jsx)(`div`,{className:`wl-menu-head`,children:`Read-only link`}),(0,W.jsx)(`p`,{className:`wl-muted wl-small`,children:`Anyone with the link sees this trace, and nothing else. Secrets were removed when the trace was stored.`}),(0,W.jsxs)(`div`,{className:`wl-share-row`,children:[(0,W.jsx)(X,{small:!0,label:`Link lasts`,value:t,options:tx,onChange:n}),(0,W.jsx)(`button`,{type:`button`,className:`wl-btn wl-btn-primary`,onClick:s,children:`Create link`})]}),r&&(0,W.jsxs)(`div`,{className:`wl-share-link`,children:[(0,W.jsx)(`code`,{className:`wl-mono wl-small`,children:r.url}),(0,W.jsx)(Xb,{text:r.url,label:`Copy link`}),(0,W.jsxs)(`span`,{className:`wl-muted wl-small`,children:[`Works until `,jb(r.expiresMs),`. Revoke it on the Team page.`]})]}),a&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:a})]})})}function rx({trace:e}){return(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn`,onClick:()=>{let t=URL.createObjectURL(new Blob([JSON.stringify(e,null,2)],{type:`application/json`}));Object.assign(document.createElement(`a`),{href:t,download:`trace-${e.traceId}.json`}).click(),URL.revokeObjectURL(t)},title:`Download this trace as JSON`,children:[(0,W.jsx)(hv,{"aria-hidden":`true`}),` JSON`]})}var ix=/^[0-9a-f]{32}$/;function ax({trace:e}){let[t,n]=(0,T.useState)(!1),[r,i]=(0,T.useState)(``),{traces:a}=Se(),o=a.filter(t=>t.rootName===e.rootName&&t.traceId!==e.traceId).slice(0,5),s=t=>w(S(`trace`,[e.traceId,`compare`,t]));return(0,W.jsxs)(`span`,{className:`wl-compare`,children:[(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn`,onClick:()=>n(!t),"aria-expanded":t,children:[(0,W.jsx)(Nv,{"aria-hidden":`true`}),` Compare`]}),t&&(0,W.jsxs)(`div`,{className:`wl-menu wl-compare-menu`,children:[(0,W.jsx)(`form`,{onSubmit:e=>(e.preventDefault(),ix.test(r.trim())&&s(r.trim())),children:(0,W.jsx)(`input`,{className:`wl-compare-input`,value:r,onChange:e=>i(e.target.value),placeholder:`Paste a trace id`,"aria-label":`Trace id to compare with`})}),o.length>0&&(0,W.jsx)(`div`,{className:`wl-menu-head`,children:`Same request, newest`}),o.map(e=>(0,W.jsxs)(`button`,{type:`button`,className:`wl-menu-item`,onClick:()=>s(e.traceId),children:[(0,W.jsx)(`span`,{className:`wl-mono`,children:zb(e.traceId)}),(0,W.jsxs)(`span`,{className:`wl-muted wl-small`,children:[Ab(e.startMs),` · `,q(e.durationMs)]})]},e.traceId))]})]})}function ox(e){let t=new Map;for(let n of e)for(let e of n.spanIds){let r=t.get(e)??new Set;r.add(n.kind),t.set(e,r)}return t}var sx={"duplicate-query":`DUP`,"n+1-db":`N+1`,"n+1-http":`N+1`,"slow-query":`SLOW`,"db-wait":`WAIT`};function cx({kinds:e}){return e?(0,W.jsx)(W.Fragment,{children:[...e].filter(e=>sx[e]).map(e=>(0,W.jsx)(`span`,{className:`wl-fbadge wl-fbadge-${e.replace(`+`,`p`)}`,children:sx[e]},e))}):null}function lx(e,t){return[t.selected===e.spanId?`wl-selected`:``,t.highlight.has(e.spanId)?`wl-highlight`:``,ve(e)?`wl-row-error`:``].join(` `).trim()}function ux({service:e,services:t}){return(0,W.jsx)(`span`,{className:`wl-chip wl-svc wl-svc-${Rb(e,t)}`,children:e})}var dx=e=>e>=500?`wl-pill-err`:e>=400?`wl-pill-warn`:`wl-pill-ok`;function fx({trace:e,timing:t}){let n=[[`Total`,q(t.totalMs)],[`Server`,q(t.serverMs)],[`Database`,q(t.dbMs)],[`Render`,q(t.renderMs)],[`Started`,Ib(e.startMs)],[`Spans`,String(e.spanCount)],[`Queries`,String(e.dbCount)],[`HTTP calls`,String(e.httpClientCount)]];return(0,W.jsxs)(`dl`,{className:`wl-stats`,children:[n.map(([e,t])=>(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`dt`,{children:e}),(0,W.jsx)(`dd`,{children:t})]},e)),(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`dt`,{children:`Services`}),(0,W.jsx)(`dd`,{className:`wl-chips`,children:e.services.map(t=>(0,W.jsx)(ux,{service:t,services:e.services},t))})]})]})}function px({timing:e,failed:t}){let n=En(e),r=t=>`${t/Math.max(e.totalMs,.001)*100}%`,i=[[t?`wl-c-error`:`wl-c-server`,`Server code`,n.server],[`wl-c-db`,`Database`,n.db],[`wl-c-render`,`Render`,n.render],[`wl-c-other`,`Network and other`,n.other]];return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{className:`wl-split-bar`,"aria-hidden":`true`,children:i.map(([e,,t])=>(0,W.jsx)(`i`,{className:e,style:{width:r(t)}},e))}),(0,W.jsx)(`div`,{className:`wl-legend`,children:i.map(([e,t,n])=>(0,W.jsxs)(`span`,{children:[(0,W.jsx)(`i`,{className:e}),` `,t,` `,(0,W.jsx)(`b`,{children:q(n)})]},t))})]})}function mx({trace:e,timing:t,health:n,loading:r,onRefresh:i,backHref:a,actions:o,tags:s}){let c=e.rootStatusCode;return(0,W.jsxs)(`section`,{className:`wl-panel wl-trace-head`,children:[a&&(0,W.jsxs)(`a`,{className:`wl-back`,href:a,children:[(0,W.jsx)(C_,{size:14,"aria-hidden":`true`}),` All traces`]}),(0,W.jsxs)(`div`,{className:`wl-trace-title`,children:[(0,W.jsxs)(`h1`,{children:[(0,W.jsx)(`span`,{className:`wl-h-dot wl-h-${n}`,title:`Health: ${n}`}),e.rootName,c!=null&&(0,W.jsx)(`span`,{className:`wl-pill wl-small-chip ${dx(c)}`,children:c})]}),(0,W.jsxs)(`span`,{className:`wl-trace-actions`,children:[o,i&&(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn`,onClick:i,disabled:r,children:[(0,W.jsx)(yy,{"aria-hidden":`true`}),` `,r?`Refreshing…`:`Refresh`]})]})]}),s,(0,W.jsx)(fx,{trace:e,timing:t}),(0,W.jsx)(px,{timing:t,failed:n===`critical`}),(0,W.jsxs)(`div`,{className:`wl-muted wl-small wl-mono`,children:[(0,W.jsx)(Xb,{text:e.traceId,label:`Copy trace id`}),`trace `,e.traceId]})]})}var hx={tags:[],editable:!1,max:Dg.rules},gx=null,_x=null,vx=new Set,yx=()=>c().project,bx=()=>{let e=c().project;return e?`?project=${encodeURIComponent(e)}`:``};function xx(e){gx=e,vx.forEach(e=>e())}async function Sx(){let e=yx();_x=e;let t=await ne(`./api/tags${bx()}`).catch(()=>hx);_x===e&&(_x=null,xx({key:e,list:t,active:Og(t.tags)}))}var Cx=()=>Sx(),wx=e=>(vx.add(e),()=>void vx.delete(e));d(()=>{gx&&gx.key!==yx()&&Sx()});function Tx(){let e=H().has(`tags`),t=(0,T.useSyncExternalStore)(wx,()=>gx);return(0,T.useEffect)(()=>{e&&_x===null&&(!gx||gx.key!==yx())&&Sx()},[e,t]),e?t&&t.key===yx()?t:null:{list:hx,active:[]}}var Ex=()=>gx?.list.tags??[],Dx=e=>`./api/tags${e?`/${encodeURIComponent(e)}`:``}${bx()}`,Ox=e=>x(`POST`,Dx(),e).then(e=>(Cx(),e)),kx=(e,t)=>x(`PATCH`,Dx(e),t).then(e=>(Cx(),e)),Ax=(e,t)=>x(`PATCH`,Dx(e),{enabled:t}).then(e=>(Cx(),e)),jx=e=>x(`DELETE`,Dx(e)).then(()=>void Cx());async function Mx(e,t){let n=c().env,r=bx(),i=`./api/tags/match${r}${n?`${r?`&`:`?`}env=${encodeURIComponent(n)}`:``}`,a=[];for(let e=0;e<t.length;e+=Dg.matchItems)a.push(t.slice(e,e+Dg.matchItems));let o=await Promise.all(a.map(t=>x(`POST`,i,{kind:e,items:t})));return Object.assign({},...o.map(e=>e.matches))}var Nx=[];async function Px(e,t){if(e!==`traces`)return Mx(e,t);let[n,r]=await Promise.all([Mx(`traces`,t),Mx(`requests`,t)]),i={...r};for(let[e,t]of Object.entries(n))i[e]=[...new Set([...i[e]??[],...t])];return i}function Fx(e,t,n){let r=Tx(),i=(0,T.useMemo)(()=>t.map(n),[t]),a=i.map(e=>Ag(e.traceId,e.owner)).join(`,`),[o,s]=(0,T.useState)({});return(0,T.useEffect)(()=>{if(!r?.active.length||!i.length)return s({});let t=!0;return Px(e,i).then(e=>t&&s(e),()=>t&&s({})),()=>void(t=!1)},[e,a,r]),(0,T.useMemo)(()=>e=>{let t=n(e),i=new Set(o[Ag(t.traceId,t.owner)]??[]);return(r?.list.tags??[]).filter(e=>i.has(e.name))},[o,r])}function Ix(){let e=Tx();return(0,T.useMemo)(()=>{if(!e?.active.length)return()=>Nx;let t=new Map(e.list.tags.map(e=>[e.name,e]));return(n,r)=>zg(e.active,n,r).flatMap(e=>t.get(e)??[])},[e])}var Lx=e=>({traceId:e.traceId,owner:``,timeMs:e.startMs}),Rx=e=>({traceId:e.traceId,owner:hm(e),timeMs:e.timeMs});function zx({tag:e}){let t=`${e.builtIn?`Built-in tag`:`Tag`}: ${e.query}`;return(0,W.jsx)(`a`,{className:`wl-tag wl-tag-${e.color}`,href:S(`search`,[],{q:`tag:${e.name}`}),title:t,onClick:e=>e.stopPropagation(),children:e.name})}function Bx({tags:e}){return e.length?(0,W.jsx)(`span`,{className:`wl-tags`,children:e.map(e=>(0,W.jsx)(zx,{tag:e},e.name))}):null}function Vx(e,t,n){return e.map(e=>e.key===t?{...e,cell:t=>(0,W.jsxs)(`span`,{className:`wl-tagged`,children:[e.cell(t),(0,W.jsx)(Bx,{tags:n(t)})]})}:e)}var Hx=3e4;function Ux(e){let{updatedMs:t}=Se(),n=Math.floor(t/Hx),[r,i]=(0,T.useState)(0),[a,o]=(0,T.useState)({data:null,error:null});(0,T.useEffect)(()=>{if(!e)return;let t=!0;return ne(e).then(e=>t&&o({data:e,error:null}),e=>t&&o(t=>({...t,error:e instanceof Error?e.message:String(e)}))),()=>void(t=!1)},[e,n,r]);let s=(0,T.useCallback)(()=>i(e=>e+1),[]);return{...a,reload:s}}async function Wx(e,t){try{return await e(),t(),null}catch(e){return e instanceof Error?e.message:String(e)}}var Gx=e=>{let t=c();return t.project&&e.set(`project`,t.project),t.env&&e.set(`env`,t.env),e};function Kx(e,t){let n=bh(e.q);if(!n.ok)throw Object.assign(Error(n.error),{start:n.start,end:n.end});let r=Date.now(),{node:i,unknownTags:a}=Eh(n.node,Og(Ex()));return{...Cm(m.getSnapshot().traces,{kind:e.kind,node:i,window:{from:r-fe[e.range].ms,to:r},limit:e.limit,cursor:ym(t)}),unknownTags:a}}async function qx(e,t,n){if(!n)return Kx(e,t);let r=Gx(new URLSearchParams({q:e.q,kind:e.kind,range:e.range,limit:String(e.limit)}));t&&r.set(`cursor`,t);try{return await ne(`./api/search?${r.toString()}`)}catch(t){let n=t instanceof re&&t.status===400?bh(e.q):null;throw n&&!n.ok?Object.assign(Error(n.error),{start:n.start,end:n.end}):t}}function Jx(e){let t=e,n=e instanceof Error?e.message:String(e);return typeof t.start==`number`&&typeof t.end==`number`?{type:`invalid`,message:n,start:t.start,end:t.end}:e instanceof re&&e.status===400?{type:`invalid`,message:n,start:0,end:0}:{type:`down`,message:n}}async function Yx(e,t,n,r){if(!r){let r=Date.now(),i={field:e,prefix:t,window:{from:r-fe[n].ms,to:r},limit:12};return Xg(i,Ex())??jm(m.getSnapshot().traces,i)}let i=Gx(new URLSearchParams({prefix:t,range:n,limit:`12`}));return e&&i.set(`field`,e),(await ne(`./api/search/suggest?${i.toString()}`)).items}function Xx(e,t){let n=JSON.stringify([e,t]),[r,i]=(0,T.useState)({key:``,pages:[],loading:!0,failure:null,cursor:null}),[a,o]=(0,T.useState)({key:n,cursor:null});a.key!==n&&o({key:n,cursor:null}),(0,T.useEffect)(()=>{let r=!0,o=a.cursor===null;return i(e=>({...e,key:n,loading:!0,...o?{pages:[],failure:null}:{}})),qx(e,a.cursor,t).then(e=>r&&i(t=>({key:n,pages:o?[e]:[...t.pages,e],loading:!1,failure:null,cursor:e.next}))).catch(e=>r&&i(t=>({...t,key:n,loading:!1,failure:Jx(e)}))),()=>void(r=!1)},[a]);let s=r.key===n?r.pages[r.pages.length-1]:void 0,c=s?.next&&!r.loading?()=>o({key:n,cursor:s.next}):null;return{pages:r.key===n?r.pages:[],loading:r.loading||r.key!==n,failure:r.key===n?r.failure:null,more:c}}function Z({label:e,hint:t,narrow:n=!1,...r}){return(0,W.jsxs)(`label`,{className:`wl-field${n?` wl-field-narrow`:``}`,children:[(0,W.jsx)(`span`,{children:e}),(0,W.jsx)(`input`,{...r}),t&&(0,W.jsx)(`small`,{className:`wl-muted`,children:t})]})}function Zx({label:e,hint:t,...n}){return(0,W.jsxs)(`label`,{className:`wl-field`,children:[(0,W.jsx)(`span`,{children:e}),(0,W.jsx)(`textarea`,{...n}),t&&(0,W.jsx)(`small`,{className:`wl-muted`,children:t})]})}function Qx({label:e,value:t,options:n,onChange:r,hint:i}){return(0,W.jsxs)(`label`,{className:`wl-field`,children:[(0,W.jsx)(`span`,{children:e}),(0,W.jsx)(`select`,{className:`wl-select`,value:t,onChange:e=>r(e.target.value),children:n.map(([e,t])=>(0,W.jsx)(`option`,{value:e,children:t},e))}),i&&(0,W.jsx)(`small`,{className:`wl-muted`,children:i})]})}var $x=({children:e})=>(0,W.jsx)(`div`,{className:`wl-form-row`,children:e});function eS({label:e,...t}){return(0,W.jsxs)(`label`,{className:`wl-check`,children:[(0,W.jsx)(`input`,{type:`checkbox`,...t}),(0,W.jsx)(`span`,{children:e})]})}var tS=400,nS=50;function rS(e){let[t]=t_(),n=H().has(`search`),[r,i]=(0,T.useState)({state:`idle`});return(0,T.useEffect)(()=>{let r=bh(e.trim());if(!e.trim())return void i({state:`idle`});if(!r.ok)return void i({state:`error`,message:r.error});if(kg(r.node))return void i({state:`error`,message:`A tag's search cannot use tag:. Copy the other tag's search in instead.`});let a=!0;i({state:`loading`});let o=setTimeout(()=>{qx({q:e.trim(),kind:`requests`,range:t,limit:nS},null,n).then(e=>a&&i({state:`done`,paths:e.items.map(e=>`${e.method} ${e.path}`),more:!!e.next}),e=>a&&i({state:`error`,message:e instanceof Error?e.message:String(e)}))},tS);return()=>(a=!1,clearTimeout(o))},[e,t,n]),r}function iS({query:e}){let t=rS(e),[n]=t_(),r=fe[n].label.toLowerCase();if(t.state===`idle`)return null;if(t.state===`loading`)return(0,W.jsx)(`div`,{className:`wl-tag-preview wl-muted`,children:`Checking what this finds…`});if(t.state===`error`)return(0,W.jsx)(`div`,{className:`wl-tag-preview wl-text-error`,role:`alert`,children:t.message});if(!t.paths.length)return(0,W.jsxs)(`div`,{className:`wl-tag-preview`,children:[`No requests match in the `,r,`. The tag still shows on any that match later.`]});let i=`${t.paths.length}${t.more?`+`:``} ${t.paths.length===1&&!t.more?`request`:`requests`}`;return(0,W.jsxs)(`div`,{className:`wl-tag-preview`,children:[(0,W.jsxs)(`span`,{children:[`Matches `,i,` in the `,r,`, such as:`]}),(0,W.jsx)(`ul`,{children:t.paths.slice(0,5).map((e,t)=>(0,W.jsx)(`li`,{children:e},t))})]})}function aS({value:e,name:t,onChange:n}){return(0,W.jsxs)(`fieldset`,{className:`wl-tag-colors`,children:[(0,W.jsx)(`legend`,{children:`Color`}),Eg.map(r=>(0,W.jsxs)(`label`,{children:[(0,W.jsx)(`input`,{type:`radio`,name:`tag-color`,value:r,checked:e===r,onChange:()=>n(r),"aria-label":r}),(0,W.jsx)(`span`,{className:`wl-tag wl-tag-${r}`,children:t||r})]},r))]})}function oS({scopes:e,picked:t,onPick:n}){return(0,W.jsxs)(`fieldset`,{className:`wl-tag-scopes`,children:[(0,W.jsx)(`legend`,{children:`Tag what`}),e.map((e,r)=>(0,W.jsxs)(`label`,{className:`wl-check`,children:[(0,W.jsx)(`input`,{type:`radio`,name:`tag-scope`,checked:t===r,onChange:()=>n(r)}),(0,W.jsx)(`span`,{children:e.label})]},e.label))]})}function sS({initial:e,scopes:t,saveLabel:n,onSave:r,onCancel:i}){let[a,o]=(0,T.useState)(e),[s,c]=(0,T.useState)(0),[l,u]=(0,T.useState)(null),[d,f]=(0,T.useState)(!1);return(0,W.jsxs)(`form`,{className:`wl-form`,onSubmit:e=>{e.preventDefault(),f(!0),r({...a,name:a.name.trim().toLowerCase(),query:a.query.trim()}).then(e=>(u(e),f(!1)))},children:[t&&t.length>1&&(0,W.jsx)(oS,{scopes:t,picked:s,onPick:e=>{c(e),o(n=>({...n,name:t[e].name,query:t[e].query}))}}),(0,W.jsx)($x,{children:(0,W.jsx)(Z,{label:`Name`,required:!0,value:a.name,onChange:e=>o({...a,name:e.target.value}),placeholder:`checkout`,maxLength:40,hint:`Lowercase letters, digits, - and _. Search it with tag:name.`})}),(0,W.jsx)(aS,{value:a.color,name:a.name.trim().toLowerCase(),onChange:e=>o({...a,color:e})}),(0,W.jsx)(Z,{label:`Search`,required:!0,value:a.query,onChange:e=>o({...a,query:e.target.value}),placeholder:`service:api route:/checkout*`,className:`wl-tag-query`,hint:`Anything that matches this search shows the tag, on old and new data alike.`}),(0,W.jsx)(iS,{query:a.query}),l&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,role:`alert`,children:l}),(0,W.jsxs)($x,{children:[(0,W.jsx)(`button`,{type:`submit`,className:`wl-btn wl-btn-primary`,disabled:d,children:n}),(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:i,children:`Cancel`})]})]})}function cS(e){let t=JSON.stringify;return{node:`tags: { rules: [{ name: ${t(e.name)}, query: ${t(e.query)}, color: ${t(e.color)} }] }`,dotnet:`o.Tags.Rules.Add(new(${t(e.name)}, ${t(e.query)}, ${t(e.color)}));`}}function lS({scopes:e,onClose:t}){let[n,r]=(0,T.useState)(0),i=cS({...e[n],color:`blue`});return(0,W.jsxs)(`div`,{className:`wl-form`,children:[e.length>1&&(0,W.jsx)(oS,{scopes:e,picked:n,onPick:r}),(0,W.jsxs)(`p`,{children:[`Tags here come from the `,(0,W.jsx)(`code`,{children:`tags`}),` option in the app's code. Add this rule, then restart the service.`]}),(0,W.jsx)(`strong`,{children:`Node`}),(0,W.jsx)(`pre`,{className:`wl-tag-code`,children:i.node}),(0,W.jsx)(Xb,{text:i.node,label:`Copy for Node`,asLink:!0}),(0,W.jsx)(`strong`,{children:`.NET`}),(0,W.jsx)(`pre`,{className:`wl-tag-code`,children:i.dotnet}),(0,W.jsx)(Xb,{text:i.dotnet,label:`Copy for .NET`,asLink:!0}),(0,W.jsx)(`div`,{className:`wl-dialog-actions`,children:(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:t,children:`Close`})})]})}function uS({scopes:e,onClose:t}){let n=(0,T.useRef)(null),r=Tx()?.list.editable??!1;(0,T.useEffect)(()=>n.current?.showModal(),[]);let i=e=>Wx(()=>Ox(e),t),a=e[0];return(0,W.jsxs)(`dialog`,{ref:n,className:`wl-dialog wl-tag-dialog`,"aria-labelledby":`wl-tag-this`,onClose:t,onClick:e=>e.target===n.current&&t(),children:[(0,W.jsx)(`h2`,{id:`wl-tag-this`,children:`Tag this`}),r?(0,W.jsx)(sS,{initial:{name:a.name,color:`blue`,query:a.query},scopes:e,saveLabel:`Add tag`,onSave:i,onCancel:t}):(0,W.jsx)(lS,{scopes:e,onClose:t})]})}function dS({scopes:e}){let t=H(),n=Tx(),[r,i]=(0,T.useState)(!1);return!t.has(`tags`)||!e.length||!(n?.list.editable||t.mode===`in-app`)?null:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn`,onClick:()=>i(!0),title:`Make a tag for this, so it stands out everywhere`,children:[(0,W.jsx)(qy,{"aria-hidden":`true`}),` Tag this`]}),r&&(0,W.jsx)(uS,{scopes:e,onClose:()=>i(!1)})]})}function fS(e){return[...e.rootMethod?[Ug(e.service,e.rootName)]:[],Wg(e.service)]}function pS({trace:e}){let t=Fx(`traces`,(0,T.useMemo)(()=>[e],[e]),Lx);return(0,W.jsx)(Bx,{tags:t(e)})}var mS=({trace:e})=>(0,W.jsx)(dS,{scopes:fS(e)}),hS=e=>e.category===`http.client`||e.category===`http.server`||e.category===`browser`,gS=e=>e.category===`http.server`?`IN`:e.category===`browser`?`WEB`:`OUT`;function _S({span:e,props:t,kinds:n}){let r=e.attributes,i=r[`http.response.status_code`],a=String(r[`url.full`]??r[`http.route`]??r[`url.path`]??e.name);return(0,W.jsxs)(`tr`,{className:`wl-clickable ${lx(e,t)}`,onClick:()=>t.onSelect(e.spanId),children:[(0,W.jsx)(`td`,{children:(0,W.jsx)(`span`,{className:`wl-cat wl-cat-${e.category.replace(`.`,`-`)}`,children:gS(e)})}),(0,W.jsx)(`td`,{className:`wl-mono`,children:String(r[`http.request.method`]??``)}),(0,W.jsxs)(`td`,{className:`wl-mono wl-wrap`,children:[a,` `,(0,W.jsx)(cx,{kinds:n.get(e.spanId)})]}),(0,W.jsx)(`td`,{children:(0,W.jsx)(ux,{service:e.service,services:t.trace.services})}),(0,W.jsx)(`td`,{className:`wl-num${typeof i==`number`&&i>=400?` wl-text-error`:``}`,children:i??`–`}),(0,W.jsx)(`td`,{className:`wl-num`,children:q(e.durationMs)})]})}function vS(e){let t=e.trace.spans.filter(hS),n=(0,T.useMemo)(()=>ox(e.findings),[e.findings]);return t.length===0?(0,W.jsx)(K,{children:`No HTTP activity in this request.`}):(0,W.jsx)(`div`,{className:`wl-table-wrap`,children:(0,W.jsxs)(`table`,{className:`wl-table`,children:[(0,W.jsx)(`thead`,{children:(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`th`,{children:`Direction`}),(0,W.jsx)(`th`,{children:`Method`}),(0,W.jsx)(`th`,{children:`URL / route`}),(0,W.jsx)(`th`,{children:`Service`}),(0,W.jsx)(`th`,{className:`wl-num`,children:`Status`}),(0,W.jsx)(`th`,{className:`wl-num`,children:`Duration`})]})}),(0,W.jsx)(`tbody`,{children:t.map(t=>(0,W.jsx)(_S,{span:t,props:e,kinds:n},t.spanId))})]})})}function yS({trace:e,onSelect:t}){let n=Nr(e.spans);return n.length===0?(0,W.jsx)(K,{children:`No messages were sent or handled in this request.`}):(0,W.jsx)(`div`,{className:`wl-table-wrap`,children:(0,W.jsxs)(`table`,{className:`wl-table`,children:[(0,W.jsx)(`thead`,{children:(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`th`,{children:`Operation`}),(0,W.jsx)(`th`,{children:`Queue`}),(0,W.jsx)(`th`,{children:`Service`}),(0,W.jsx)(`th`,{children:`Message id`}),(0,W.jsx)(`th`,{className:`wl-num`,children:`Duration`})]})}),(0,W.jsx)(`tbody`,{children:n.map(e=>(0,W.jsxs)(`tr`,{className:`wl-clickable${e.error?` wl-row-error`:``}`,onClick:()=>t(e.spanId),children:[(0,W.jsx)(`td`,{children:(0,W.jsx)(`span`,{className:`wl-cat wl-cat-messaging`,children:e.operation})}),(0,W.jsx)(`td`,{className:`wl-mono`,children:e.queue}),(0,W.jsx)(`td`,{children:e.service}),(0,W.jsx)(`td`,{className:`wl-mono wl-muted`,children:e.messageId??`–`}),(0,W.jsx)(`td`,{className:`wl-num`,children:q(e.durationMs)})]},e.spanId))})]})})}var bS=Cg(Sg({allow:e=>/^https?:$/.test(e.protocol),timeoutMs:8e3}),{max:10,hitMs:3e4});function xS(){let e=c().project;return`./${Tg}${e?`?project=${encodeURIComponent(e)}`:``}`}async function SS(e,t,n){if(!e)return hg(t,n.release,bS);let r={stack:t,release:n.release,traceId:n.traceId,spanId:n.spanId};return(await x(`POST`,xS(),r)).frames}function CS(e){let t=H().has(`sourcemaps`),n=e.browser?e.stack:null,[r,i]=(0,T.useState)({key:null,frames:null,loading:!1,error:null}),{release:a,traceId:o,spanId:s}=e,c=n?[t,a??``,o??``,s??``,n].join(`
|
|
18
|
+
`):null;return(0,T.useEffect)(()=>{if(!n||!c)return;let e=!0;return SS(t,n,{release:a,traceId:o,spanId:s}).then(t=>e&&i({key:c,frames:t,loading:!1,error:null})).catch(t=>e&&i({key:c,frames:null,loading:!1,error:t instanceof Error?t.message:String(t)})),()=>void(e=!1)},[c,t,n,a,o,s]),c?r.key===c?r:{frames:null,loading:!0,error:null}:{frames:null,loading:!1,error:null}}function wS({event:e}){let t=e.stack??`${e.type}: ${e.message}`,n=t.split(/\r?\n/);return(0,W.jsxs)(`div`,{className:`wl-stack`,children:[(0,W.jsx)(`div`,{className:`wl-stack-copy`,children:(0,W.jsx)(Xb,{text:t,label:`Copy stack trace`})}),(0,W.jsx)(`ol`,{children:n.map((e,t)=>(0,W.jsx)(`li`,{children:(0,W.jsx)(`code`,{children:e})},t))}),!e.stack&&(0,W.jsx)(`p`,{className:`wl-muted wl-small`,children:`No stack trace was recorded for this error.`})]})}function TS({event:e}){return(0,W.jsx)(vb,{rows:[[`Method`,e.method??`–`],[`Path`,e.path?(0,W.jsx)(`span`,{className:`wl-mono`,children:e.path}):`–`],[`Status`,e.status===null?`–`:(0,W.jsx)(Kb,{tone:Wb(e.status),children:e.status})],[`Service`,e.service],[`User`,e.user??`–`],[`User agent`,e.userAgent??`–`],[`Trace`,(0,W.jsxs)(`a`,{href:y(e.traceId,`errors`),className:`wl-mono`,children:[e.traceId.slice(0,16),`…`]},`t`)]]})}function ES({event:e}){let t=[...e.tags,e.browser?`browser`:`server`,...e.critical?[`critical`]:[]];return t.length===0?(0,W.jsx)(K,{children:`No tags on this request.`}):(0,W.jsx)(`div`,{className:`wl-chips`,children:t.map(e=>(0,W.jsx)(`span`,{className:`wl-chip${e===`critical`?` wl-chip-red`:` wl-chip-blue`}`,children:e},e))})}var DS=e=>e.source?`${e.source}:${e.line}:${e.column}`:`${e.raw.url}:${e.raw.line}:${e.raw.column}`,OS=(e,t)=>[`${e.type}: ${e.message}`,...t.map(e=>` at ${e.fn??`<anonymous>`} (${DS(e)})`)].join(`
|
|
19
|
+
`);function kS({context:e,line:t}){return(0,W.jsx)(`pre`,{className:`wl-src`,children:e.lines.map((n,r)=>{let i=e.start+r;return(0,W.jsxs)(`span`,{className:i===t?`wl-src-line wl-src-hit`:`wl-src-line`,children:[(0,W.jsx)(`span`,{className:`wl-src-no`,children:i}),(0,W.jsx)(`code`,{children:n||` `})]},i)})})}function AS({frame:e,first:t}){let[n,r]=(0,T.useState)(t),i=n?Z_:tv;return(0,W.jsxs)(`li`,{className:e.inApp?`wl-frame`:`wl-frame wl-frame-lib`,children:[(0,W.jsxs)(`button`,{type:`button`,className:`wl-frame-head`,"aria-expanded":n,onClick:()=>r(!n),children:[(0,W.jsx)(i,{"aria-hidden":`true`}),(0,W.jsx)(`code`,{className:`wl-frame-fn`,children:e.fn??`<anonymous>`}),(0,W.jsx)(`span`,{className:`wl-frame-loc`,children:DS(e)})]}),n&&e.context&&(0,W.jsx)(kS,{context:e.context,line:e.line}),n&&(0,W.jsxs)(`div`,{className:`wl-frame-raw`,children:[`Raw: `,e.raw.raw]})]})}function jS(e,t,n){return e.loading?`Reading source maps…`:e.error?`Source maps could not be read: ${e.error}`:n?t?`Source maps of release ${t}`:`Source maps`:`No source map found${t?` for release ${t}`:``}. Showing the raw stack.`}function MS({event:e}){let t=CS(e),[n,r]=(0,T.useState)(`original`);if(!e.browser||!e.stack)return(0,W.jsx)(wS,{event:e});let i=t.frames??[],a=i.some(e=>e.source!==null),o=i.findIndex(e=>e.source!==null&&e.inApp);return(0,W.jsxs)(`div`,{className:`wl-stack-box`,children:[(0,W.jsxs)(`div`,{className:`wl-stack-head`,children:[(0,W.jsx)(`div`,{className:`wl-seg`,role:`tablist`,"aria-label":`Stack view`,children:[`original`,`raw`].map(e=>(0,W.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":n===e,className:n===e?`wl-active`:``,disabled:e===`original`&&!a,onClick:()=>r(e),children:e===`original`?`Original`:`Raw`},e))}),(0,W.jsx)(`span`,{className:`wl-muted wl-small`,children:jS(t,e.release,a)})]}),n===`raw`||!a?(0,W.jsx)(wS,{event:e}):(0,W.jsxs)(`div`,{className:`wl-stack wl-frames-box`,children:[(0,W.jsx)(`div`,{className:`wl-stack-copy`,children:(0,W.jsx)(Xb,{text:OS(e,i),label:`Copy original stack trace`})}),(0,W.jsx)(`ol`,{className:`wl-frames`,children:i.map((e,t)=>(0,W.jsx)(AS,{frame:e,first:t===o},t))})]})]})}function NS({trace:e,onSelect:t}){return e.logs.length===0?(0,W.jsx)(K,{children:`No logs were written during this request.`}):(0,W.jsx)(`div`,{className:`wl-table-wrap`,children:(0,W.jsxs)(`table`,{className:`wl-table`,children:[(0,W.jsx)(`thead`,{children:(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`th`,{className:`wl-num`,children:`At`}),(0,W.jsx)(`th`,{children:`Level`}),(0,W.jsx)(`th`,{children:`Service`}),(0,W.jsx)(`th`,{children:`Category`}),(0,W.jsx)(`th`,{children:`Message`})]})}),(0,W.jsx)(`tbody`,{children:e.logs.map((n,r)=>(0,W.jsxs)(`tr`,{onClick:()=>n.spanId&&t(n.spanId),className:n.spanId?`wl-clickable`:void 0,children:[(0,W.jsxs)(`td`,{className:`wl-num wl-muted`,children:[`+`,q(n.timeMs-e.startMs)]}),(0,W.jsx)(`td`,{children:(0,W.jsx)(`span`,{className:`wl-lvl wl-lvl-${n.level}`,children:n.level})}),(0,W.jsx)(`td`,{children:(0,W.jsx)(ux,{service:n.service,services:e.services})}),(0,W.jsx)(`td`,{className:`wl-muted wl-small`,children:n.category}),(0,W.jsx)(`td`,{className:`wl-wrap`,children:n.message})]},r))})]})})}function PS({span:e}){let t=vn(e);return(0,W.jsx)(`div`,{onClick:e=>e.stopPropagation(),children:(0,W.jsx)(MS,{event:{type:t.type??`Error`,message:t.message,stack:t.stack,browser:!0,release:wg(e),traceId:e.traceId,spanId:e.spanId}})})}function FS({trace:e,onSelect:t}){let n=new Map(e.spans.map(e=>[e.spanId,e])),r=e.spans.filter(ve).map(vn);return r.length===0?(0,W.jsx)(K,{children:`No errors in this request.`}):(0,W.jsx)(`ul`,{className:`wl-error-list`,children:r.map(r=>(0,W.jsxs)(`li`,{className:`wl-error-item`,onClick:()=>t(r.spanId),children:[(0,W.jsxs)(`div`,{className:`wl-error-head`,children:[(0,W.jsx)(ux,{service:r.service,services:e.services}),(0,W.jsx)(`strong`,{children:r.type??`Error`}),(0,W.jsxs)(`span`,{className:`wl-muted`,children:[`in `,r.name]})]}),(0,W.jsx)(`div`,{className:`wl-error-msg`,children:r.message}),r.stack&&n.get(r.spanId)?.category===`browser`?(0,W.jsx)(PS,{span:n.get(r.spanId)}):r.stack&&(0,W.jsx)(`pre`,{className:`wl-code wl-stack`,children:r.stack})]},r.spanId))})}function IS(e,t,n){return(0,T.useMemo)(()=>{let r=n&&t.find(e=>e.key===n.key);if(!n||!r?.sort)return e;let i=r.sort,a=n.desc?-1:1;return[...e].sort((e,t)=>{let n=i(e),r=i(t);return(n<r?-1:+(n>r))*a})},[e,t,n])}function LS({col:e,sort:t,onSort:n}){let r=e.num?`wl-num`:void 0;if(!e.sort)return(0,W.jsx)(`th`,{className:r,children:e.header});let i=t?.key===e.key,a=i&&t?.desc?x_:D_;return(0,W.jsx)(`th`,{className:r,"aria-sort":i?t?.desc?`descending`:`ascending`:`none`,children:(0,W.jsxs)(`button`,{type:`button`,onClick:()=>n(e.key),children:[e.header,i&&(0,W.jsx)(a,{"aria-hidden":`true`})]})})}function Q({columns:e,rows:t,rowKey:n,onRowClick:r,selectedKey:i,empty:a,defaultSort:o,detail:s}){let[c,l]=(0,T.useState)(o??null),u=IS(t,e,c),d=e=>l(t=>t?.key===e?{key:e,desc:!t.desc}:{key:e,desc:!0});return t.length===0&&a?(0,W.jsx)(W.Fragment,{children:a}):(0,W.jsx)(`div`,{className:`wl-table-wrap`,children:(0,W.jsxs)(`table`,{className:`wl-table`,children:[(0,W.jsx)(`thead`,{children:(0,W.jsx)(`tr`,{children:e.map(e=>(0,W.jsx)(LS,{col:e,sort:c,onSort:d},e.key))})}),(0,W.jsx)(`tbody`,{children:u.map(t=>{let a=n(t),o=a===i,c=[r?`wl-clickable`:``,o?`wl-selected`:``].join(` `).trim();return(0,W.jsxs)(T.Fragment,{children:[(0,W.jsx)(`tr`,{className:c||void 0,onClick:r&&(()=>r(t)),children:e.map(e=>(0,W.jsx)(`td`,{className:[e.num?`wl-num`:``,e.className??``].join(` `).trim()||void 0,children:e.cell(t)},e.key))}),o&&s&&(0,W.jsx)(`tr`,{className:`wl-row-detail`,children:(0,W.jsx)(`td`,{colSpan:e.length,children:s(t)})})]},a)})})]})})}var RS={api:z_,web:ay,worker:sv,queue:Uv,database:pv,external:Fv},zS={api:`API service`,web:`Web app`,worker:`Message worker`,queue:`Queue`,database:`Database`,external:`Outside service`},BS={healthy:[`success`,`Healthy`],degraded:[`warning`,`Degraded`],unhealthy:[`danger`,`Unhealthy`],idle:[`neutral`,`Idle`]},VS=e=>BS[e][0],HS=e=>S(`services`,[encodeURIComponent(e)]),US=C;function WS({status:e}){let[t,n]=BS[e];return(0,W.jsx)(Kb,{tone:t,colorText:t!==`neutral`,children:n})}function GS({row:e}){let t=RS[e.kind];return(0,W.jsxs)(`span`,{className:`wl-cell-icon`,title:zS[e.kind],children:[(0,W.jsx)(t,{size:18,"aria-hidden":!0}),e.name]})}var KS=[{key:`name`,header:`Service`,cell:e=>(0,W.jsx)(GS,{row:e}),sort:e=>e.name},{key:`status`,header:`Status`,cell:e=>(0,W.jsx)(WS,{status:e.status}),sort:e=>e.errorRate},{key:`requests`,header:`Requests`,num:!0,cell:e=>J(e.requests),sort:e=>e.requests},{key:`errors`,header:`Errors`,num:!0,cell:e=>J(e.errors),sort:e=>e.errors},{key:`rate`,header:`Error rate`,num:!0,cell:e=>Cb(e.errorRate),sort:e=>e.errorRate},{key:`avg`,header:`Avg latency`,num:!0,cell:e=>q(e.avgMs),sort:e=>e.avgMs??0},{key:`p95`,header:`p95`,num:!0,cell:e=>q(e.p95Ms),sort:e=>e.p95Ms??0}];function qS({rows:e,selectedKey:t}){let r=Ix();return(0,W.jsx)(Q,{columns:Vx(KS,`name`,e=>r(`services`,Lg(e.name))),rows:e,rowKey:e=>e.key,selectedKey:t,onRowClick:e=>n({service:e.key===t?null:e.key}),empty:(0,W.jsx)(K,{title:`No services yet`,children:`Services show up here when they handle a request in this time range.`})})}var JS=e=>S(`hosts`,[encodeURIComponent(e)]),YS=e=>S(`kubernetes`,[`node`,encodeURIComponent(e)]),XS=(e,t)=>S(`kubernetes`,[`pod`,encodeURIComponent(e||`-`),encodeURIComponent(t)]),ZS=e=>S(`kubernetes`,[],{view:`pods`,workload:e}),QS=e=>{try{return decodeURIComponent(e??``)}catch{return e??``}},$S=(e,t)=>typeof e[t]==`string`&&e[t]?String(e[t]):``;function eC({attributes:e}){let t=H().has(`infra`),n=$S(e,`k8s.pod.name`),r=$S(e,`k8s.node.name`);return!t||!n&&!r?null:(0,W.jsxs)(`div`,{className:`wl-span-k8s`,children:[n&&(0,W.jsxs)(`a`,{className:`wl-infra-chip`,href:XS($S(e,`k8s.namespace.name`),n),title:`Open this pod`,children:[(0,W.jsx)(z_,{size:12,"aria-hidden":`true`}),` Pod `,n]}),r&&(0,W.jsxs)(`a`,{className:`wl-infra-chip`,href:YS(r),title:`Open this node`,children:[(0,W.jsx)(ky,{size:12,"aria-hidden":`true`}),` Node `,r]})]})}function tC(e){if(typeof e!=`string`)return null;try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}var nC=(e,t)=>S(`search`,[],{q:`@${e}:${ph(String(t))}`,kind:`spans`});function rC({entries:e,search:t=!1}){return e.length===0?(0,W.jsx)(`div`,{className:`wl-muted wl-small`,children:`None`}):(0,W.jsx)(`table`,{className:`wl-attrs`,children:(0,W.jsx)(`tbody`,{children:[...e].sort(([e],[t])=>e.localeCompare(t)).map(([e,n])=>(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`th`,{children:e}),(0,W.jsx)(`td`,{className:n===`[redacted]`?`wl-redacted`:void 0,children:n===null?(0,W.jsx)(`span`,{className:`wl-muted`,children:`null`}):t&&n!==`[redacted]`?(0,W.jsx)(`a`,{href:nC(e,n),title:`Find spans with this value`,children:String(n)}):String(n)})]},e))})})}function iC({event:e,trace:t}){let n=e.attributes,r=e.name===`exception`;return(0,W.jsxs)(`div`,{className:`wl-sp-event${r?` wl-sp-exception`:``}`,children:[(0,W.jsxs)(`div`,{className:`wl-sp-event-head`,children:[(0,W.jsx)(`strong`,{children:e.name}),(0,W.jsxs)(`span`,{className:`wl-muted`,children:[`+`,q(e.timeMs-t.startMs)]})]}),r?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`strong`,{children:String(n[`exception.type`]??`Error`)}),`: `,String(n[`exception.message`]??``)]}),n[`exception.stacktrace`]&&(0,W.jsx)(`pre`,{className:`wl-code wl-stack`,children:String(n[`exception.stacktrace`])})]}):(0,W.jsx)(rC,{entries:Object.entries(n)})]})}function aC({span:e,trace:t}){return(0,W.jsxs)(`dl`,{className:`wl-sp-facts`,children:[(0,W.jsx)(`dt`,{children:`Service`}),(0,W.jsx)(`dd`,{children:(0,W.jsx)(ux,{service:e.service,services:t.services})}),(0,W.jsx)(`dt`,{children:`Kind`}),(0,W.jsxs)(`dd`,{children:[e.kind,` · `,e.category]}),(0,W.jsx)(`dt`,{children:`Duration`}),(0,W.jsx)(`dd`,{children:q(e.durationMs)}),(0,W.jsx)(`dt`,{children:`Starts at`}),(0,W.jsxs)(`dd`,{children:[`+`,q(e.startMs-t.startMs)]}),(0,W.jsx)(`dt`,{children:`Status`}),(0,W.jsxs)(`dd`,{className:e.status===`error`?`wl-text-error`:void 0,children:[e.status,e.statusMessage?` · ${e.statusMessage}`:``]}),(0,W.jsx)(`dt`,{children:`Span id`}),(0,W.jsx)(`dd`,{className:`wl-mono`,children:e.spanId})]})}function oC({span:e}){let t=e.attributes[`db.query.text`];if(typeof t!=`string`)return null;let n=tC(e.attributes[`wizelens.db.parameters`]);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`h3`,{children:`Query`}),(0,W.jsx)(`pre`,{className:`wl-code`,children:t}),n&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`h3`,{children:`Parameters`}),(0,W.jsx)(`pre`,{className:`wl-code`,children:n})]})]})}function sC({span:e,trace:t}){let n=yr(e.service),r=Or([t]).find(t=>t.spanId===e.spanId),i=[[HS(n),n]];return e.category===`http.server`&&i.push([_e(`api:${e.service}`,ws(e,`api`)),`Endpoint`]),e.category===`db`&&i.push([Ue(Ie(E(e))),`Query`]),r&&i.push([he(r.key),`Error`]),t.logs.length&&i.push([S(`logs`,[],{trace:t.traceId}),`Request logs`]),(0,W.jsx)(`div`,{className:`wl-sp-links`,children:i.map(([e,t])=>(0,W.jsx)(`a`,{className:`wl-path-chip`,href:e,children:t},e))})}function cC({span:e,trace:t,onClose:n}){let r=Object.entries(e.attributes).filter(([e])=>e!==`db.query.text`&&e!==`wizelens.db.parameters`),i=t.logs.filter(t=>t.spanId===e.spanId);return(0,W.jsxs)(`aside`,{className:`wl-span-panel`,"aria-label":`Span details`,children:[(0,W.jsxs)(`div`,{className:`wl-sp-head`,children:[(0,W.jsx)(`h2`,{title:e.name,children:e.name}),(0,W.jsx)(`button`,{type:`button`,className:`wl-icon-btn`,onClick:n,"aria-label":`Close details`,children:(0,W.jsx)(db,{size:18})})]}),(0,W.jsx)(aC,{span:e,trace:t}),(0,W.jsx)(sC,{span:e,trace:t}),(0,W.jsx)(eC,{attributes:e.attributes}),(0,W.jsx)(oC,{span:e}),e.events.length>0&&(0,W.jsx)(`h3`,{children:`Events`}),e.events.map((e,n)=>(0,W.jsx)(iC,{event:e,trace:t},n)),i.length>0&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`h3`,{children:`Logs`}),(0,W.jsx)(`ul`,{className:`wl-sp-logs`,children:i.map((e,t)=>(0,W.jsxs)(`li`,{children:[(0,W.jsx)(`span`,{className:`wl-lvl wl-lvl-${e.level}`,children:e.level}),` `,e.message]},t))})]}),(0,W.jsx)(`h3`,{children:`Attributes`}),(0,W.jsx)(rC,{entries:r,search:!0})]})}function lC(e){let{trace:t,findings:n,onSelect:r}=e,i=t.spans.filter(e=>e.category===`db`),a=(0,T.useMemo)(()=>ox(n),[n]),o=new Set(i.map(E)).size,s=i.reduce((e,t)=>e+t.durationMs,0),c=It(i);return i.length===0?(0,W.jsx)(K,{children:`No database calls in this request.`}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`wl-tab-summary`,children:[(0,W.jsxs)(`span`,{children:[(0,W.jsx)(`strong`,{children:i.length}),` queries`]}),(0,W.jsxs)(`span`,{children:[(0,W.jsx)(`strong`,{children:o}),` unique`]}),(0,W.jsxs)(`span`,{children:[(0,W.jsx)(`strong`,{children:q(s)}),` total`]}),s-c>=1&&(0,W.jsxs)(`span`,{title:`Queries that ran at the same time count once`,children:[(0,W.jsx)(`strong`,{children:q(c)}),` wall time`]})]}),(0,W.jsx)(`ol`,{className:`wl-sql-list`,children:i.map((n,i)=>(0,W.jsxs)(`li`,{className:`wl-sql-item ${lx(n,e)}`,onClick:()=>r(n.spanId),children:[(0,W.jsxs)(`div`,{className:`wl-sql-meta`,children:[(0,W.jsxs)(`span`,{className:`wl-muted`,children:[`#`,i+1]}),(0,W.jsx)(ux,{service:n.service,services:t.services}),(0,W.jsx)(`span`,{className:`wl-muted`,children:String(n.attributes[`db.system.name`]??``)}),n.attributes[`wizelens.db.adapter`]!=null&&(0,W.jsxs)(`span`,{className:`wl-muted`,children:[`via `,String(n.attributes[`wizelens.db.adapter`])]}),(0,W.jsx)(cx,{kinds:a.get(n.spanId)}),(0,W.jsx)(`span`,{className:`wl-spacer`}),n.attributes[`db.response.returned_rows`]!=null&&(0,W.jsxs)(`span`,{className:`wl-muted`,children:[String(n.attributes[`db.response.returned_rows`]),` rows`]}),(0,W.jsx)(`strong`,{children:q(n.durationMs)})]}),(0,W.jsx)(`pre`,{className:`wl-code wl-sql`,children:E(n)}),n.attributes[`wizelens.db.parameters`]!=null&&(0,W.jsxs)(`div`,{className:`wl-sql-params wl-mono wl-small`,children:[`params: `,String(n.attributes[`wizelens.db.parameters`])]})]},n.spanId))})]})}function uC(e,t){if(!t.text&&!t.errors&&!t.critical)return null;let n=t.text.trim().toLowerCase(),r=t.critical?jt(e):null,i=e=>(!n||`${e.name} ${e.service}`.toLowerCase().includes(n))&&(!t.errors||ve(e))&&(!r||r.has(e.spanId)),a=new Map(e.spans.map(e=>[e.spanId,e])),o=new Set;for(let t of e.spans.filter(i))for(let e=t;e&&!o.has(e.spanId);e=e.parentSpanId?a.get(e.parentSpanId):void 0)o.add(e.spanId);return o}function dC(e){let[t,n]=(0,T.useState)({text:``,errors:!1,critical:!1});return{filter:t,setFilter:n,keep:(0,T.useMemo)(()=>uC(e,t),[e,t])}}function fC({filter:e,onFilter:t,shown:n,total:r,onExpand:i}){return(0,W.jsxs)(`div`,{className:`wl-wf-bar-tools`,children:[(0,W.jsx)(Zb,{value:e.text,onChange:n=>t({...e,text:n}),placeholder:`Find spans by name or service…`}),(0,W.jsx)(eS,{label:`Errors only`,checked:e.errors,onChange:n=>t({...e,errors:n.target.checked})}),(0,W.jsx)(eS,{label:`Critical path`,checked:e.critical,onChange:n=>t({...e,critical:n.target.checked})}),(0,W.jsx)(`span`,{className:`wl-muted wl-small`,children:n===r?`${r} spans`:`${n} of ${r} spans`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:()=>i(!0),children:`Expand all`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:()=>i(!1),children:`Collapse all`})]})}var pC={"http.server":`IN`,"http.client":`OUT`,db:`SQL`,messaging:`MSG`,browser:`WEB`,internal:`FN`},mC=[0,.25,.5,.75,1],hC=(e,t)=>e.startMs-t.startMs;function gC(e,t,n){let r=new Set(e.map(e=>e.spanId)),i=new Map,a=[];for(let t of e)t.parentSpanId&&r.has(t.parentSpanId)?i.set(t.parentSpanId,[...i.get(t.parentSpanId)??[],t]):a.push(t);let o=[],s=(e,r)=>{if(n&&!n.has(e.spanId))return;let a=(i.get(e.spanId)??[]).sort(hC);if(o.push({span:e,depth:r,hasChildren:a.length>0}),!t.has(e.spanId))for(let e of a)s(e,r+1)};for(let e of a.sort(hC))s(e,0);return o}function _C({total:e}){return(0,W.jsxs)(`div`,{className:`wl-wf-row wl-wf-axis`,"aria-hidden":`true`,children:[(0,W.jsx)(`div`,{className:`wl-wf-label`}),(0,W.jsx)(`div`,{className:`wl-wf-track`,children:mC.map(t=>(0,W.jsx)(`span`,{className:`wl-wf-tick`,style:{left:`${t*100}%`},children:q(e*t)},t))})]})}function vC({row:{span:e,depth:t,hasChildren:n},trace:r,collapsed:i,onToggle:a}){return(0,W.jsxs)(`div`,{className:`wl-wf-label`,style:{paddingLeft:`${8+t*14}px`},title:e.name,children:[n?(0,W.jsx)(`button`,{type:`button`,className:`wl-wf-caret`,"aria-label":i?`Expand`:`Collapse`,onClick:t=>(t.stopPropagation(),a(e.spanId)),children:i?`▸`:`▾`}):(0,W.jsx)(`span`,{className:`wl-wf-caret-space`}),(0,W.jsx)(`span`,{className:`wl-cat wl-cat-${e.category.replace(`.`,`-`)}`,children:pC[e.category]}),(0,W.jsx)(`span`,{className:`wl-wf-name`,children:e.name}),(0,W.jsx)(`span`,{className:`wl-svc-dot wl-svc-${Rb(e.service,r.services)}`,title:e.service})]})}function yC(e){let{span:t,hasChildren:n}=e.row,r=(t.startMs-e.trace.startMs)/e.total*100,i=Math.max(.4,t.durationMs/e.total*100),a=[`wl-wf-row`,e.selected?`wl-selected`:``,e.highlighted?`wl-highlight`:``,ve(t)?`wl-error`:``].join(` `);return(0,W.jsxs)(`div`,{className:a,role:`treeitem`,"aria-selected":e.selected,"aria-expanded":n?!e.collapsed:void 0,tabIndex:0,onClick:()=>e.onSelect(t.spanId),onKeyDown:n=>{(n.key===`Enter`||n.key===` `)&&(n.preventDefault(),e.onSelect(t.spanId))},children:[(0,W.jsx)(vC,{row:e.row,trace:e.trace,collapsed:e.collapsed,onToggle:e.onToggle}),(0,W.jsxs)(`div`,{className:`wl-wf-track`,children:[mC.slice(1,-1).map(e=>(0,W.jsx)(`span`,{className:`wl-wf-grid`,style:{left:`${e*100}%`}},e)),(0,W.jsx)(`span`,{className:`wl-wf-bar wl-k-${t.category.replace(`.`,`-`)}`,style:{left:`${r}%`,width:`${i}%`}}),(0,W.jsxs)(`span`,{className:`wl-wf-dur`,style:r+i>82?{right:`${100-r+.5}%`}:{left:`calc(${r+i}% + 6px)`},children:[q(t.durationMs),n&&e.selfMs<t.durationMs-.5&&(0,W.jsxs)(`span`,{className:`wl-wf-self`,children:[` · self `,q(e.selfMs)]})]})]})]})}function bC({trace:e,selected:t,highlight:n,onSelect:r}){let[i,a]=(0,T.useState)(new Set),{filter:o,setFilter:s,keep:c}=dC(e),l=(0,T.useMemo)(()=>gC(e.spans,i,c),[e.spans,i,c]),u=(0,T.useMemo)(()=>At(e),[e]),d=Math.max(e.durationMs,.001),f=t=>a(t?new Set:new Set(e.spans.filter(t=>e.spans.some(e=>e.parentSpanId===t.spanId)).map(e=>e.spanId))),p=e=>a(t=>{let n=new Set(t);return n.delete(e)||n.add(e),n});return e.spans.length===0?(0,W.jsx)(K,{children:`This trace has no spans.`}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(fC,{filter:o,onFilter:s,shown:c?c.size:e.spans.length,total:e.spans.length,onExpand:f}),(0,W.jsxs)(`div`,{className:`wl-waterfall`,role:`tree`,children:[(0,W.jsx)(_C,{total:d}),l.length===0&&(0,W.jsx)(K,{children:`No span matches.`}),l.map(a=>(0,W.jsx)(yC,{row:a,trace:e,total:d,selfMs:u.get(a.span.spanId)??0,selected:t===a.span.spanId,highlighted:n.has(a.span.spanId),collapsed:i.has(a.span.spanId),onSelect:r,onToggle:p},a.span.spanId))]})]})}function xC(e){return[[`timeline`,`Timeline`,e.spanCount],[`sql`,`SQL`,e.spans.filter(e=>e.category===`db`).length],[`http`,`HTTP`,e.spans.filter(e=>e.category===`http.client`||e.category===`http.server`||e.category===`browser`).length],[`messages`,`Messages`,e.spans.filter(e=>e.category===`messaging`).length],[`logs`,`Logs`,e.logs.length],[`errors`,`Errors`,e.errorCount]]}function SC(e){let t={trace:e.trace,findings:e.findings,selected:e.selected,highlight:e.highlight,onSelect:e.onSelect};return e.tab===`sql`?(0,W.jsx)(lC,{...t}):e.tab===`http`?(0,W.jsx)(vS,{...t}):e.tab===`messages`?(0,W.jsx)(yS,{trace:e.trace,onSelect:e.onSelect}):e.tab===`logs`?(0,W.jsx)(NS,{trace:e.trace,onSelect:e.onSelect}):e.tab===`errors`?(0,W.jsx)(FS,{trace:e.trace,onSelect:e.onSelect}):(0,W.jsx)(bC,{trace:e.trace,selected:e.selected,highlight:e.highlight,onSelect:e.onSelect})}function CC(e){let t=e.trace.spans.find(t=>t.spanId===e.selected)??null;return(0,W.jsxs)(`section`,{className:`wl-panel wl-panel-flush`,children:[(0,W.jsx)(`nav`,{className:`wl-tabs`,role:`tablist`,children:xC(e.trace).map(([t,n,r])=>(0,W.jsxs)(`button`,{type:`button`,role:`tab`,"aria-selected":e.tab===t,className:`wl-tab${e.tab===t?` wl-active`:``}${t===`errors`&&r>0?` wl-tab-error`:``}`,onClick:()=>e.onTab(t),children:[n,(0,W.jsx)(`span`,{className:`wl-tab-count`,children:r})]},t))}),(0,W.jsxs)(`div`,{className:`wl-split${t?` wl-with-panel`:``}`,children:[(0,W.jsx)(`div`,{className:`wl-split-main`,children:(0,W.jsx)(SC,{...e})}),t&&(0,W.jsx)(cC,{span:t,trace:e.trace,onClose:()=>e.onSelect(null)})]})]})}var wC=1500;function TC(e){let t=Se(),[n,r]=(0,T.useState)(null),[i,a]=(0,T.useState)(null),[o,s]=(0,T.useState)(!1),c=(0,T.useCallback)(()=>{s(!0),m.loadTrace(e).then(e=>(r(e),a(null))).catch(e=>a(String(e).includes(`not-found`)?`This trace is no longer stored. It may have been dropped.`:String(e))).finally(()=>s(!1))},[e]);(0,T.useEffect)(()=>{r(null),c();let e=setTimeout(c,wC);return()=>clearTimeout(e)},[c]);let l=t.traces.find(t=>t.traceId===e)??null,u=n&&(!l||n.spanCount>=l.spanCount)?n:l;return{trace:u,error:u?null:i,loading:o,reload:c}}var EC=e=>e.kind===`n+1-http`?`http`:e.kind===`error`?`errors`:e.kind===`n+1-db`||e.kind===`duplicate-query`||e.kind===`slow-query`?`sql`:`timeline`;function DC(e,t,n){let[r,i]=(0,T.useState)(t&&t!==`insights`?t:`timeline`);return(0,T.useEffect)(()=>{t&&t!==`insights`&&i(t)},[t]),[r,t=>{i(t),n&&history.replaceState(null,``,`#/traces/${e}/${t}`)}]}function OC({trace:e,view:t,loading:n=!1,onRefresh:r,shared:i=!1,actions:a}){let[o,s]=DC(e.traceId,t,!i),[c,l]=(0,T.useState)(null),[u,d]=(0,T.useState)(new Set);(0,T.useEffect)(()=>{t===`insights`&&document.getElementById(`wl-insights`)?.scrollIntoView({block:`start`})},[t]);let f=Se().info?.analysis,p=(0,T.useMemo)(()=>xn(e,f??{}),[e,f]),m=(0,T.useMemo)(()=>Tn(e),[e]),h=Sn({status:e.rootStatusCode,error:e.errorCount>0,totalMs:m.totalMs,insights:Cn(p).length});return(0,W.jsxs)(`div`,{className:`wl-detail`,children:[(0,W.jsx)(mx,{trace:e,timing:m,health:h,loading:n,onRefresh:r,backHref:i?null:S(`traces`,[],{trace:e.traceId}),actions:i?a:(0,W.jsxs)(W.Fragment,{children:[a,(0,W.jsx)(mS,{trace:e})]}),tags:i?null:(0,W.jsx)(pS,{trace:e})}),(0,W.jsx)(`div`,{id:`wl-insights`,children:(0,W.jsx)(Vb,{findings:p,onSelect:e=>{d(new Set(e.spanIds)),l(e.spanIds[0]??null),s(EC(e))}})}),(0,W.jsx)(CC,{trace:e,findings:p,tab:o,selected:c,highlight:u,onTab:s,onSelect:e=>(l(e),d(new Set))})]})}function kC({traceId:e,view:t}){let{trace:n,error:r,loading:i,reload:a}=TC(e),o=H().has(`sharing`);return n?(0,W.jsx)(OC,{trace:n,view:t,loading:i,onRefresh:a,actions:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(ax,{trace:n}),(0,W.jsx)(rx,{trace:n}),o&&(0,W.jsx)(nx,{traceId:e})]})}):(0,W.jsxs)(G,{children:[(0,W.jsx)(K,{title:`Trace ${e.slice(0,12)}…`,children:r??`Loading trace…`}),r&&(0,W.jsx)(`a`,{href:S(`traces`),children:`Back to traces`})]})}function AC({back:e,icon:t,title:n,mono:r=!1,badge:i,actions:a,stats:o}){return(0,W.jsxs)(`section`,{className:`wl-panel wl-dhead`,children:[(0,W.jsxs)(`a`,{className:`wl-back`,href:e[0],children:[(0,W.jsx)(C_,{size:14,"aria-hidden":`true`}),` `,e[1]]}),(0,W.jsxs)(`h1`,{className:`wl-dhead-title`,children:[(0,W.jsx)(t,{size:22,"aria-hidden":!0}),(0,W.jsx)(`span`,{className:`wl-dhead-name${r?` wl-mono`:``}`,children:n}),i&&(0,W.jsx)(`span`,{className:`wl-dhead-badge`,children:i}),a&&(0,W.jsx)(`span`,{className:`wl-dhead-actions`,children:a})]}),o.length>0&&(0,W.jsx)(`dl`,{className:`wl-stats`,children:o.map(([e,t])=>(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`dt`,{children:e}),(0,W.jsx)(`dd`,{children:t})]},e))})]})}function jC(e,t){let[n,r]=[Tn(e),Tn(t)];return[{label:`Total`,a:n.totalMs,b:r.totalMs,ms:!0},{label:`Server`,a:n.serverMs??0,b:r.serverMs??0,ms:!0},{label:`Database`,a:n.dbMs,b:r.dbMs,ms:!0},{label:`Render`,a:n.renderMs??0,b:r.renderMs??0,ms:!0},{label:`Spans`,a:e.spanCount,b:t.spanCount,ms:!1},{label:`Queries`,a:e.dbCount,b:t.dbCount,ms:!1},{label:`HTTP calls`,a:e.httpClientCount,b:t.httpClientCount,ms:!1},{label:`Errors`,a:e.errorCount,b:t.errorCount,ms:!1}]}function MC(e,t){let n=e=>{let t=At(e),n=new Map;for(let r of e.spans)n.set(r.service,(n.get(r.service)??0)+(t.get(r.spanId)??0));return n},[r,i]=[n(e),n(t)];return[...new Set([...r.keys(),...i.keys()])].map(e=>({label:e,a:r.get(e)??0,b:i.get(e)??0,ms:!0})).sort((e,t)=>Math.abs(t.b-t.a)-Math.abs(e.b-e.a))}var NC=(e,t)=>e.ms?q(t):J(t);function PC({l:e}){let t=e.b-e.a;return Math.abs(t)<(e.ms?.5:1)?(0,W.jsx)(`span`,{className:`wl-muted`,children:`same`}):(0,W.jsxs)(`span`,{className:t>0?`wl-text-error`:`wl-text-ok`,children:[t>0?`+`:`−`,NC(e,Math.abs(t))]})}var FC=(e,t,n)=>[{key:`label`,header:n,cell:e=>e.label},{key:`a`,header:`A · ${zb(e.traceId)}`,num:!0,cell:e=>NC(e,e.a)},{key:`b`,header:`B · ${zb(t.traceId)}`,num:!0,cell:e=>NC(e,e.b)},{key:`diff`,header:`B − A`,num:!0,cell:e=>(0,W.jsx)(PC,{l:e})}];function IC({trace:e,label:t}){return(0,W.jsx)(G,{title:`${t}: ${e.rootName}`,action:(0,W.jsx)(_b,{href:y(e.traceId),label:`Open trace`}),children:(0,W.jsx)(bC,{trace:e,selected:null,highlight:new Set,onSelect:()=>{}})})}function LC({a:e,b:t}){let n=TC(e),r=TC(t),i=(0,W.jsx)(AC,{back:[y(e),`Back to trace`],icon:Nv,title:`Compare traces`,stats:[[`A`,zb(e)],[`B`,zb(t)]]});return!n.trace||!r.trace?(0,W.jsxs)(`div`,{className:`wl-dpage`,children:[i,(0,W.jsx)(G,{children:(0,W.jsx)(K,{children:n.error??r.error??`Loading traces…`})})]}):(0,W.jsxs)(`div`,{className:`wl-dpage`,children:[i,(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(G,{title:`Numbers`,flush:!0,children:(0,W.jsx)(Q,{columns:FC(n.trace,r.trace,``),rows:jC(n.trace,r.trace),rowKey:e=>e.label})}),(0,W.jsx)(G,{title:`Self Time per Service`,flush:!0,children:(0,W.jsx)(Q,{columns:FC(n.trace,r.trace,`Service`),rows:MC(n.trace,r.trace),rowKey:e=>e.label})})]}),(0,W.jsx)(IC,{trace:n.trace,label:`A`}),(0,W.jsx)(IC,{trace:r.trace,label:`B`})]})}var RC=[[`300000`,`5 minutes`],[`900000`,`15 minutes`],[`3600000`,`1 hour`],[`21600000`,`6 hours`],[`86400000`,`24 hours`]],zC=[[`0`,`No reminders`],[`900000`,`Remind every 15 minutes`],[`3600000`,`Remind every hour`],[`14400000`,`Remind every 4 hours`],[`86400000`,`Remind every day`]],BC=e=>RC.find(([t])=>Number(t)===e)?.[1]??`${Math.round(e/6e4)} min`,VC={">":`>`,"<":`<`,">=":`≥`,"<=":`≤`,above_normal:`above normal`},HC={2:`high`,3:`medium`,4:`low`},UC=e=>e.metric===`metric`?``:e.metric===`slo`?`×`:nf[e.metric].unit,WC=e=>Number.isInteger(e)?String(e):Math.abs(e)<1?e.toPrecision(3):e.toFixed(1),GC=(e,t)=>t===null?`–`:`${WC(t)}${UC(e)===`%`||UC(e)===`×`?UC(e):UC(e)?` ${UC(e)}`:``}`;function KC(e){if(e.metric===`metric`)return`${e.metricName} ${Kf[e.metricStat||`avg`].toLowerCase()}${e.metricService?` (${e.metricService})`:``}`;if(e.metric===`slo`)return`SLO burn rate`;if(e.metric===`log_count`&&rf(e.logSearch??{}))return`Log lines (${rf(e.logSearch??{})})`;let t=e.endpoint?` of ${e.endpoint} (${e.service})`:e.service?` of ${e.service}`:``;return`${nf[e.metric].label}${t}`}var qC=e=>e.op===`above_normal`?`above normal (${HC[e.threshold]??`${e.threshold} spreads`})`:`${VC[e.op]} ${GC(e,e.threshold)}`,JC=e=>`${KC(e)} ${qC(e)} over ${BC(e.windowMs)}${e.env?` · ${e.env}`:``}`;function YC(){let e=H().has(`accounts`),t=Ne(Ce())?.org.role,n=c().project;return{url:(t=``)=>e?`./api/projects/${encodeURIComponent(n)}/alerts${t}`:`./api/alerts${t}?project=${encodeURIComponent(n)}`,ready:!e||!!n,canWrite:!e||t!==void 0&&t!==`viewer`}}var XC=e=>({webhook:`Webhook`,slack:`Slack`,teams:`Teams`,discord:`Discord`,pagerduty:`PagerDuty`,email:`Email`})[e.kind],ZC=[[`slack`,`Slack incoming webhook`],[`teams`,`Microsoft Teams webhook`],[`discord`,`Discord webhook`],[`pagerduty`,`PagerDuty (Events API v2)`],[`webhook`,`Webhook (JSON)`]],QC=[...ZC,[`email`,`Email to members`]],$C={slack:`https://hooks.slack.com/services/…`,teams:`https://….webhook.office.com/…`,discord:`https://discord.com/api/webhooks/…`,webhook:`https://example.com/wizelens`};function ew({to:e,onChange:t}){let n=Ce(),r=Ne(n)?.org,{data:i}=Ux(r?`./api/orgs/${r.id}`:null),a=(n,r)=>t(r?[...e,n]:e.filter(e=>e!==n)),o=n?.mail?`Only members with a confirmed email get it.`:`This cloud cannot send email yet: notices go to its log.`;return(0,W.jsxs)(`fieldset`,{className:`wl-check-list`,children:[(0,W.jsx)(`legend`,{children:`Send to these members`}),(i?.members??[]).map(t=>(0,W.jsx)(eS,{label:`${t.name} (${t.email})`,checked:e.includes(t.email.toLowerCase()),onChange:e=>a(t.email.toLowerCase(),e.target.checked)},t.userId)),(0,W.jsx)(`small`,{className:`wl-muted`,children:o})]})}var tw=e=>e===`email`?{kind:e,to:[]}:e===`pagerduty`?{kind:e,routingKey:``}:{kind:e,url:``};function nw({channel:e,onChange:t,onRemove:n}){let r=H().has(`accounts`);return(0,W.jsxs)(`div`,{className:`wl-alert-channel`,children:[(0,W.jsxs)($x,{children:[(0,W.jsx)(X,{label:`Send to`,value:e.kind,options:r?QC:ZC,onChange:n=>t(n===e.kind?e:tw(n))}),`url`in e&&(0,W.jsx)(Z,{label:`URL`,type:`url`,required:!0,value:e.url,onChange:n=>t({...e,url:n.target.value}),placeholder:$C[e.kind]}),e.kind===`pagerduty`&&(0,W.jsx)(Z,{label:`Routing key`,required:!0,value:e.routingKey,onChange:e=>t({kind:`pagerduty`,routingKey:e.target.value}),placeholder:`The integration key of a PagerDuty service`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-icon-btn wl-alert-channel-remove`,"aria-label":`Remove this channel`,onClick:n,children:(0,W.jsx)(db,{size:16})})]}),e.kind===`email`&&(0,W.jsx)(ew,{to:e.to,onChange:e=>t({kind:`email`,to:e})})]})}function rw({channels:e,onChange:t}){let n=n=>r=>t(e.map((e,t)=>t===n?r:e));return(0,W.jsxs)(`div`,{className:`wl-alert-channels`,children:[(0,W.jsx)(`div`,{className:`wl-section-title`,children:`Notify`}),e.length===0&&(0,W.jsx)(`p`,{className:`wl-muted wl-small`,children:`No channels: the alert shows on the dashboard and in the bell only.`}),e.map((r,i)=>(0,W.jsx)(nw,{channel:r,onChange:n(i),onRemove:()=>t(e.filter((e,t)=>t!==i))},i)),e.length<5&&(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn`,onClick:()=>t([...e,tw(`slack`)]),children:[(0,W.jsx)(hy,{"aria-hidden":`true`}),` Add a channel`]})]})}var iw=[[`>`,`is above`],[`>=`,`is at or above`],[`<`,`is below`],[`<=`,`is at or below`],[`above_normal`,`is above normal`]],aw=[[`2`,`High sensitivity`],[`3`,`Medium sensitivity`],[`4`,`Low sensitivity`]];function ow({r:e,set:t}){let n=Li(e.metric)?iw:iw.filter(([e])=>e!==`above_normal`),r=aw.some(([t])=>Number(t)===e.threshold)?String(e.threshold):`3`;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(X,{label:`Condition`,value:e.op,options:n,onChange:e=>(t(`op`)(e),e===`above_normal`&&t(`threshold`)(3))}),e.op===`above_normal`?(0,W.jsx)(X,{label:`Sensitivity`,value:r,options:aw,onChange:e=>t(`threshold`)(Number(e))}):(0,W.jsx)(Z,{label:`Threshold`,type:`number`,step:`any`,required:!0,value:e.threshold,onChange:e=>t(`threshold`)(Number(e.target.value))})]})}var sw=()=>(0,W.jsx)(`p`,{className:`wl-muted wl-small`,children:`Fires when any service or endpoint is above its normal: the same window at the same time in earlier weeks (or days, on hosts that keep less). The notice names it and, in the cloud, links to its problem.`}),cw=[[``,`Any level`],[`debug`,`Debug and up`],[`info`,`Info and up`],[`warn`,`Warnings and up`],[`error`,`Errors and up`],[`critical`,`Critical only`]],lw=[[``,`In and outside requests`],[`request`,`In requests`],[`outside`,`Outside requests`]];function uw({search:e,onChange:t}){let n=n=>r=>t(Yf({...e,[n]:r}));return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)($x,{children:[(0,W.jsx)(X,{label:`Level`,value:e.level??``,options:cw,onChange:n(`level`)}),(0,W.jsx)(Z,{label:`Service (optional)`,value:e.service??``,onChange:e=>n(`service`)(e.target.value),placeholder:`All`}),(0,W.jsx)(Z,{label:`Text (optional)`,value:e.q??``,onChange:e=>n(`q`)(e.target.value),placeholder:`timed out`}),(0,W.jsx)(X,{label:`Written`,value:e.origin??``,options:lw,onChange:n(`origin`)})]}),(0,W.jsxs)(`p`,{className:`wl-muted wl-small`,children:[`Counts the log lines that match `,rf(e)?(0,W.jsx)(`strong`,{children:rf(e)}):`every line`,` over the window.`,(e.category||e.pattern)&&` The category and pattern from the Logs page apply too.`]})]})}var dw=Object.entries(Kf),fw=`wl-alert-metric-names`;function pw({r:e,set:t}){let n=c().project,{data:r}=Ux(n?`./api/models/metrics?range=24h&project=${encodeURIComponent(n)}`:null),i=r?.catalog.find(t=>t.name===e.metricName);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)($x,{children:[(0,W.jsx)(Z,{label:`Metric name`,required:!0,list:fw,value:e.metricName,onChange:e=>t(`metricName`)(e.target.value),placeholder:`process.cpu.utilization`}),(0,W.jsx)(X,{label:`Read`,value:e.metricStat||`avg`,options:dw,onChange:t(`metricStat`)}),(0,W.jsx)(Z,{label:`Service (optional)`,value:e.metricService,onChange:e=>t(`metricService`)(e.target.value),placeholder:`All`})]}),(0,W.jsx)(`datalist`,{id:fw,children:r?.catalog.map(e=>(0,W.jsx)(`option`,{value:e.name,children:e.lastText},e.name))}),(0,W.jsxs)(`p`,{className:`wl-muted wl-small`,children:[`The threshold is in the metric's base unit: seconds, bytes, or 0 to 1 for ratios (0.8 is 80%).`,i&&` ${i.name} is in "${i.unit||`no unit`}" and reads ${i.lastText} now.`]})]})}var mw=3e5,hw={build:``,dismissed:``,subs:new Set};function gw(e){hw.build!==e&&(hw.build=e,hw.subs.forEach(e=>e()))}async function _w(){try{let e=await fetch(`./version.json`,{cache:`no-store`}),t=e.ok?await e.json():null;typeof t?.build==`string`&&t.build!==`mvh4v1fo`&&gw(t.build)}catch{}}function vw(){gw(hw.build||`unknown`)}function yw(){hw.dismissed=hw.build,hw.subs.forEach(e=>e())}function bw(){window.addEventListener(`vite:preloadError`,e=>(e.preventDefault(),vw())),document.addEventListener(`visibilitychange`,()=>document.visibilityState===`visible`&&void _w()),setInterval(()=>document.visibilityState===`visible`&&void _w(),mw)}var xw=e=>(hw.subs.add(e),()=>void hw.subs.delete(e));function Sw(){return(0,T.useSyncExternalStore)(xw,()=>!!hw.build&&hw.build!==hw.dismissed)}var Cw={url:``,stream:null,users:0,tick:0,subs:new Set};function ww(e){Cw.url!==e&&(Cw.stream?.close(),Cw.url=e,Cw.stream=new EventSource(e),Cw.stream.addEventListener(`data`,()=>(Cw.tick+=1,Cw.subs.forEach(e=>e()))),Cw.stream.addEventListener(`open`,()=>void _w())),Cw.users+=1}function Tw(){--Cw.users,!(Cw.users>0)&&(Cw.stream?.close(),Cw.stream=null,Cw.url=``)}var Ew=e=>(Cw.subs.add(e),()=>void Cw.subs.delete(e));function Dw(){let e=H().has(`changes`)&&typeof EventSource<`u`,t=c().project,n=e?`./api/changes${t?`?project=${encodeURIComponent(t)}`:``}`:null;return(0,T.useEffect)(()=>{if(n)return ww(n),Tw},[n]),(0,T.useSyncExternalStore)(Ew,()=>Cw.tick)}var Ow=new Set,kw=0,Aw=()=>(0,T.useSyncExternalStore)(e=>(Ow.add(e),()=>Ow.delete(e)),()=>kw);function jw(e,t){return e?`./api/projects/${encodeURIComponent(t)}/issues`:`./api/issues?project=${encodeURIComponent(t)}`}function Mw(){let e=H(),[t]=b(),n=e.has(`accounts`),r=e.has(`issues`)&&(!n||!!t),{data:i}=Ux(r&&n?jw(!0,t):null);return{on:r,members:i?.members??[]}}async function Nw(e,t,n,r,i={}){try{await x(`POST`,jw(e,c().project),{kind:t,key:n,action:r,...i}),kw++;for(let e of Ow)e();return null}catch(e){return e instanceof Error?e.message:String(e)}}var Pw=new Set,Fw=[];function Iw(e){if(e&&JSON.stringify(e)!==JSON.stringify(Fw)){Fw=e;for(let e of Pw)e()}}function Lw(){let e=(0,T.useSyncExternalStore)(e=>(Pw.add(e),()=>Pw.delete(e)),()=>Fw),[t]=u();return t?e.filter(e=>e.service===t):e}var Rw=(0,T.createContext)(null);function zw(e){let t=(0,T.useContext)(Rw);return t&&t.page===e?t:null}var Bw={window:`wizelens.ui.window`,compare:`wizelens.ui.compare`,tz:`wizelens.ui.tz`,clock:`wizelens.ui.clock`},Vw=e=>e===``||/^\d+-\d+$/.test(e),Hw=e=>e===`previous`||e===`week`,Uw=e=>e===`local`||e===`utc`,Ww=e=>e===`12`||e===`24`;function Gw(e){let t=e?/^(\d+)-(\d+)$/.exec(e):null,n=t?{from:Number(t[1]),to:Number(t[2])}:null;return n&&n.to>n.from?n:null}var Kw=e=>e?`${Math.floor(e.from)}-${Math.floor(e.to)}`:``,qw=()=>s(Bw.window,``,Vw),Jw=()=>s(Bw.compare,`previous`,Hw),Yw=()=>s(Bw.tz,`local`,Uw),Xw=()=>s(Bw.clock,`12`,Ww);function Zw(){let e=Ke(Bw.compare);return{window:Gw(Ke(Bw.window)),compare:e===`week`?`week`:`previous`}}function Qw(e,t){return{...e?{from:String(e.from),to:String(e.to)}:{},...t===`week`?{compare:t}:{}}}var $w=e=>l(Bw.window,Kw(e)),eT=e=>l(Bw.compare,e),tT=100,nT={},rT=15e3,iT=12e4,aT=new Set([`services`,`service`]);function oT(e,t,n,r=nT){let i=n&&!aT.has(e)&&!t.service?{service:n}:{};return{...r,...i,...t}}function sT(){let[e]=qw(),[t]=Jw();return(0,T.useMemo)(()=>Qw(Gw(e),t),[e,t])}function cT(e,t=nT){let{query:n}=i(),[r]=u(),a=sT(),o=new URLSearchParams({...oT(e,Object.fromEntries(n),r,a),...t}).toString();return(0,T.useMemo)(()=>Object.fromEntries(new URLSearchParams(o)),[o])}var lT=new WeakMap;function uT(e,t){let n=lT.get(e);n||lT.set(e,n=new Map);let r=n.get(t);return r||n.set(t,r=Rp(e,{slowQueryMs:t})),r}var dT=[];function fT(e,t,n,r,i,a,o){let s=lc(n,i,t,{slowQueryMs:a}),c=Ah[e],l=c&&kh(t.q)?{searchIds:jh(r,c,t.q,s.window,o)}:{};return $f(e,{...s,...l},uT(r,a))}function pT(e,t,n){let r=Se(),[i]=t_(),a=r.info?.analysis?.slowQueryMs??tT,o=Tx()?.active??dT;return{model:(0,T.useMemo)(()=>n?fT(e,t,i,r.traces,r.updatedMs,a,o):null,[n,e,r.traces,r.updatedMs,i,a,t,o]),loading:r.loading,error:null}}function mT(e,t,n){let r=c(),i=new URLSearchParams({...t,range:n});return r.project&&i.set(`project`,r.project),r.env&&i.set(`env`,r.env),`./api/models/${e}?${i.toString()}`}function hT(e,t,n){let[r]=t_(),{updatedMs:i}=Se(),a=`${`${Dw()}.${Aw()}`} ${Math.floor(i/(H().has(`changes`)?iT:rT))}`,o=n?mT(e,t,r):null,[s,c]=(0,T.useState)({url:null,model:null,error:null});return(0,T.useEffect)(()=>{if(!o)return;let e=!0;return ne(o).then(t=>e&&c({url:o,model:t,error:null})).catch(t=>e&&c(e=>({...e,url:o,error:t instanceof Error?t.message:String(t)}))),()=>void(e=!1)},[o,a]),{model:s.model,loading:s.url!==o&&!s.error,error:s.error}}async function gT(e,t,n,r){let{window:i,compare:a}=Zw(),o=oT(e,t,c().service,Qw(i,a));if(r)return ne(mT(e,o,n));let s=m.getSnapshot(),l=s.info?.analysis?.slowQueryMs??tT;return fT(e,o,n,s.traces,s.updatedMs,l,Og(Ex()))}function _T(){let e=H().has(`serverStats`),t=hT(`badges`,nT,e);return e?t.model?.errors??0:null}function vT(e,t){let[n]=u(),r=new URLSearchParams(oT(e,t,n)).toString(),i=(0,T.useMemo)(()=>Object.fromEntries(new URLSearchParams(r)),[r]),a=H().has(`serverStats`),o=pT(e,i,!a),s=hT(e,i,a);return a?s:o}function yT(e,t,n=!1){let r=cT(e,t),i=H().has(`serverStats`),a=zw(e),o=pT(e,r,!i&&!a),s=hT(e,r,i&&!a),c=bT(i?s:o,n,JSON.stringify(r)),l=a?{model:a.model,loading:!1,error:null}:c,u=l.model?.meta?.releases;return(0,T.useEffect)(()=>Iw(u),[u]),l}function bT(e,t,n){let r=(0,T.useRef)(null);return t&&r.current?.key===n?r.current.m:(e.model&&(r.current={key:n,m:e}),e)}var xT=`wl-alert-services`,ST=`wl-alert-endpoints`;function CT({service:e}){let{model:t}=yT(`service`,{service:`api:${br(e)}`});return(0,W.jsx)(`datalist`,{id:ST,children:t?.endpoints.map(e=>(0,W.jsx)(`option`,{value:e.name},e.name))})}function wT({r:e,set:t}){let{model:n}=yT(`services`),r=[...new Set((n?.rows??[]).filter(e=>e.kind===`api`||e.kind===`worker`||e.kind===`web`).map(e=>e.name))],i=e.metric===`slow_queries`;return(0,W.jsxs)($x,{children:[(0,W.jsx)(Z,{label:`Service (optional)`,list:xT,value:e.service,onChange:e=>t(`service`)(e.target.value),placeholder:`All services`}),(0,W.jsx)(Z,{label:`Endpoint (optional)`,list:ST,value:e.endpoint,disabled:!e.service||i,onChange:e=>t(`endpoint`)(e.target.value),placeholder:i?`Counted per service`:e.service?`All endpoints`:`Pick a service first`}),(0,W.jsx)(`datalist`,{id:xT,children:r.map(e=>(0,W.jsx)(`option`,{value:e},e))}),e.service&&!i&&(0,W.jsx)(CT,{service:e.service})]})}function TT(){let e=H().has(`accounts`),t=Ne(Ce())?.org.role,n=c().project,r=`?project=${encodeURIComponent(n)}`;return{url:(t=``)=>e?`./api/projects/${encodeURIComponent(n)}/slos${t}`:`./api/slos${t}${r}`,apdexUrl:e?`./api/projects/${encodeURIComponent(n)}/apdex`:`./api/apdex${r}`,ready:!e||!!n,canWrite:!e||t!==void 0&&t!==`viewer`}}var ET=(e,t)=>{if(e===null)return`–`;let n=Math.max(1,(String(t).split(`.`)[1]??``).length);return`${e.toFixed(n)}%`},DT=e=>e===null?`–`:`${e.toFixed(1)}×`,OT=e=>e===null?`–`:e>0?`${Math.round(e*100)}%`:`Spent: ${(1-e).toFixed(1)}× the budget`,kT=e=>e===null?`neutral`:e<=0?`danger`:e<.25?`warning`:`success`;function AT(e){let t=e.endpoint?`${e.endpoint} (${e.service})`:e.service,n=e.kind===`success`?`succeed`:`finish in ${e.thresholdMs} ms`;return`${e.target}% of ${t} requests ${n}, over ${e.windowDays} days`}function jT({r:e,set:t}){let n=TT(),{data:r}=Ux(n.ready?n.url():null),i=[[``,`Pick an SLO…`],...(r?.slos??[]).map(e=>[e.slo.id,e.slo.name])];return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)($x,{children:(0,W.jsx)(X,{label:`SLO`,value:e.sloId,options:i,onChange:t(`sloId`)})}),(0,W.jsx)(`p`,{className:`wl-muted wl-small`,children:`A burn rate of 1 spends the error budget exactly over the SLO's window. 14.4 over 1 hour spends 2% of a 30-day budget: a page. 6 over 6 hours is a ticket.`})]})}var MT=[...Object.entries(nf).map(([e,t])=>[e,`${t.label}${t.unit?` (${t.unit})`:``}`]),[`metric`,`A metric (CPU, memory, your own)`],[`slo`,`An SLO's burn rate (×)`]],NT={name:``,metric:`error_rate`,metricName:``,metricStat:``,metricService:``,op:`>`,threshold:5,windowMs:3e5,env:``,service:``,endpoint:``,channels:[],enabled:!0,remindMs:0,sloId:``,logSearch:{}},PT=e=>Object.fromEntries(Object.keys(NT).map(t=>[t,e[t]]));function FT(e){let t={metricName:``,metricStat:``,metricService:``},n=e.metric===`metric`?{metricStat:e.metricStat||`avg`,service:``,endpoint:``,sloId:``}:e.metric===`slo`?{...t,service:``,endpoint:``}:{...t,sloId:``,endpoint:e.service?e.endpoint:``},r=e.channels.filter(e=>e.kind===`email`?e.to.length>0:e.kind===`pagerduty`?e.routingKey.trim()!==``:e.url.trim()!==``),i=e.metric===`log_count`?{service:``,endpoint:``,logSearch:e.logSearch??{}}:{logSearch:{}};return{...PT(e),...n,...i,channels:r}}function IT({initial:e,title:t,onSave:n,onCancel:r}){let[i,a]=(0,T.useState)(e),[o,s]=(0,T.useState)(null),c=e=>t=>a(n=>({...n,[e]:t}));return(0,W.jsx)(G,{title:t,children:(0,W.jsxs)(`form`,{className:`wl-form`,onSubmit:e=>{e.preventDefault(),n(FT(i)).then(s)},children:[(0,W.jsxs)($x,{children:[(0,W.jsx)(Z,{label:`Name`,required:!0,value:i.name,onChange:e=>c(`name`)(e.target.value),placeholder:`Checkout errors`}),(0,W.jsx)(Z,{label:`Environment (optional)`,value:i.env,onChange:e=>c(`env`)(e.target.value),placeholder:`All`})]}),(0,W.jsxs)($x,{children:[(0,W.jsx)(X,{label:`Metric`,value:i.metric,options:MT,onChange:e=>(c(`metric`)(e),!Li(e)&&i.op===`above_normal`&&c(`op`)(`>`))}),(0,W.jsx)(ow,{r:i,set:c}),(0,W.jsx)(X,{label:`Over the last`,value:String(i.windowMs),options:RC,onChange:e=>c(`windowMs`)(Number(e))})]}),i.op===`above_normal`&&(0,W.jsx)(sw,{}),i.metric===`metric`?(0,W.jsx)(pw,{r:i,set:c}):i.metric===`slo`?(0,W.jsx)(jT,{r:i,set:c}):i.metric===`log_count`?(0,W.jsx)(uw,{search:i.logSearch??{},onChange:c(`logSearch`)}):(0,W.jsx)(wT,{r:i,set:c}),(0,W.jsxs)($x,{children:[(0,W.jsx)(X,{label:`Remind while firing`,value:String(i.remindMs),options:zC,onChange:e=>c(`remindMs`)(Number(e))}),(0,W.jsx)(eS,{label:`On`,checked:i.enabled,onChange:e=>c(`enabled`)(e.target.checked)})]}),(0,W.jsx)(rw,{channels:i.channels,onChange:c(`channels`)}),o&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:o}),(0,W.jsxs)($x,{children:[(0,W.jsx)(`button`,{type:`submit`,className:`wl-btn wl-btn-primary`,children:`Save alert`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:r,children:`Cancel`})]})]})})}function LT(e){if(!(e>0))return 1;let t=10**Math.floor(Math.log10(e));for(let n of[1,1.5,2,2.5,3,4,5,6,8,10])if(n*t>=e)return n*t;return 10*t}var RT=(e,t=4)=>Array.from({length:t+1},(n,r)=>e/t*r);function zT(e,t,n){let r=``,i=!1;return e.forEach((e,a)=>{e===null?i=!1:(r+=`${i?`L`:`M`}${t(a).toFixed(1)},${n(e).toFixed(1)}`,i=!0)}),r}function BT(e,t,n,r){if(e.length===0)return``;let i=e.map((e,r)=>`${t(r).toFixed(1)},${n(e??0).toFixed(1)}`);return`M${t(0).toFixed(1)},${r}L${i.join(`L`)}L${t(e.length-1).toFixed(1)},${r}Z`}var VT=e=>Math.max(0,...e.flatMap(e=>e.map(e=>e??0))),HT=6;function UT(e,t){if(e.length<2)return null;let n=e[1]-e[0],r=(t-e[0])/n;return r>=0&&r<e.length?r:null}function WT(e,t){let n=e.flatMap(e=>{let n=UT(t,e.firstMs);return n===null?[]:[{i:n,r:e}]}),r=[];for(let{i:e,r:t}of n.sort((e,t)=>e.i-t.i)){let n=r[r.length-1];n&&e-n.last<1?(n.list.push(t),n.last=e):r.push({index:e,last:e,list:[t]})}return r}var GT=e=>e.length===1?e[0].version:`${e.length} releases`;function KT({releases:e,starts:t,at:n,top:r,base:i}){let a=WT(e,t),o=a.length<=HT;return(0,W.jsx)(`g`,{className:`wl-release-marks`,children:a.map(({index:e,list:t})=>{let a=n(e);return(0,W.jsxs)(`g`,{children:[(0,W.jsx)(`title`,{children:t.map(e=>`${e.service} ${e.version}, first seen ${Mb(e.firstMs)}`).join(`
|
|
20
|
+
`)}),(0,W.jsx)(`line`,{x1:a,x2:a,y1:r,y2:i,className:`wl-release-line`}),o&&(0,W.jsx)(`text`,{x:a+4,y:r+9,className:`wl-release-label`,children:GT(t)})]},e)})})}var qT=e=>e.length>1?e[e.length-1]-e[0]:0,JT={left:44,right:8,top:10,bottom:26};function YT(){let e=(0,T.useRef)(null),[t,n]=(0,T.useState)(600);return(0,T.useEffect)(()=>{let t=e.current;if(!t)return;let r=new ResizeObserver(([e])=>e&&n(Math.max(200,e.contentRect.width)));return r.observe(t),()=>r.disconnect()},[]),[e,t]}function XT(e,t,n){let r=Math.max(1,e.starts.length),i=(t-JT.left-JT.right)/r,a=LT(VT((e.lines??[]).map(e=>e.values))),o=LT(VT(e.stackBars?[QT(e)]:(e.bars??[]).map(e=>e.values))),s=e.separateBarScale||!e.lines?.length?e.lines?.length?a:o:Math.max(a,o),c=n-JT.bottom,l=c-JT.top,u=e.separateBarScale?o:s;return{x:e=>JT.left+i*(e+.5),y:e=>c-e/s*l,yBar:t=>c-t/u*l*(e.separateBarScale?.85:1),max:s,slot:i,base:c}}function ZT({p:e,f:t,width:n}){let r=e.format??(e=>String(Math.round(e))),i=Math.max(1,Math.ceil(e.starts.length/6));return(0,W.jsxs)(`g`,{children:[RT(t.max,t.max<=4&&Number.isInteger(t.max)?t.max:4).map(e=>(0,W.jsxs)(`g`,{children:[(0,W.jsx)(`line`,{className:`wl-chart-grid`,x1:JT.left,x2:n-JT.right,y1:t.y(e),y2:t.y(e)}),(0,W.jsx)(`text`,{className:`wl-chart-axis`,x:JT.left-8,y:t.y(e)+4,textAnchor:`end`,children:r(e)})]},e)),e.starts.map((n,r)=>r%i===0&&(0,W.jsx)(`text`,{className:`wl-chart-axis`,x:t.x(r),y:t.base+18,textAnchor:`middle`,children:Pb(n,qT(e.starts))},n))]})}var QT=e=>e.starts.map((t,n)=>(e.bars??[]).reduce((e,t)=>e+(t.values[n]??0),0));function $T({p:e,f:t}){let n=Math.max(1,t.slot*.62),r=Array(e.starts.length).fill(0);return(0,W.jsx)(`g`,{children:(e.bars??[]).map((e,i)=>e.values.map((a,o)=>{if(!a)return null;let s=r[o];return r[o]=s+a,(0,W.jsx)(`rect`,{x:t.x(o)-n/2,y:t.yBar(s+a),width:n-.5,height:t.yBar(s)-t.yBar(s+a),fill:e.color},`${i}-${o}`)}))})}function eE({p:e,f:t}){let n=e.bars??[],r=Math.max(1,t.slot*.62/Math.max(1,n.length));return(0,W.jsx)(`g`,{children:n.map((e,i)=>e.values.map((a,o)=>a?(0,W.jsx)(`rect`,{x:t.x(o)-r*n.length/2+i*r,y:t.yBar(a),width:r-.5,height:t.base-t.yBar(a),rx:`1.5`,fill:e.color},`${i}-${o}`):null))})}function tE({p:e,f:t}){return(0,W.jsxs)(`g`,{children:[e.stackBars?(0,W.jsx)($T,{p:e,f:t}):(0,W.jsx)(eE,{p:e,f:t}),(e.lines??[]).map((n,r)=>(0,W.jsxs)(`g`,{children:[(r===0||e.areas)&&!n.dashed&&(0,W.jsx)(`path`,{d:BT(n.values,t.x,t.y,t.base),fill:n.color,opacity:e.areas?.18:.08}),(0,W.jsx)(`path`,{d:zT(n.values,t.x,t.y),fill:`none`,stroke:n.color,strokeWidth:n.dashed?1.5:2,strokeLinejoin:`round`,strokeDasharray:n.dashed?`4 4`:void 0,opacity:n.dashed?.7:1})]},n.label))]})}function nE({p:e,i:t,left:n,releases:r}){let i=e.format??(e=>String(Math.round(e))),a=[...e.lines??[],...e.bars??[]],o=r.filter(n=>Math.floor(UT(e.starts,n.firstMs)??-1)===t);return(0,W.jsxs)(`div`,{className:`wl-chart-tip`,style:{left:n,top:0},children:[(0,W.jsx)(`strong`,{children:Fb(e.starts[t],qT(e.starts))}),a.map(e=>(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`span`,{children:e.label}),(0,W.jsx)(`b`,{children:e.values[t]==null?`–`:i(e.values[t])})]},e.label)),o.map(e=>(0,W.jsxs)(`div`,{className:`wl-chart-tip-release`,children:[(0,W.jsx)(`span`,{children:e.service}),(0,W.jsxs)(`b`,{children:[e.version,` released`]})]},`${e.service}|${e.version}`))]})}function rE(e,t){let[n,r]=(0,T.useState)(null),i=(0,T.useRef)(null),a=e=>r(i.current=e);return{on:e.zoom!==!1&&e.starts.length>1,latest:i,setDrag:a,finish:()=>{let t=i.current;if(t&&t.a!==t.b){let n=e.starts[1]-e.starts[0];$w({from:e.starts[Math.min(t.a,t.b)],to:e.starts[Math.max(t.a,t.b)]+n})}a(null)},band:n&&n.a!==n.b?{x:t.x(Math.min(n.a,n.b))-t.slot/2,w:(Math.abs(n.a-n.b)+1)*t.slot}:null}}function iE(e){let[t,n]=YT(),[r,i]=(0,T.useState)(null),a=e.height??200,o=XT(e,n,a),s=rE(e,o),c=Lw(),l=e.releases===!1?[]:c,u=e=>Math.floor((e.clientX-e.currentTarget.getBoundingClientRect().left-JT.left)/o.slot),d=t=>{let n=u(t),r=n>=0&&n<e.starts.length;i(r?n:null),r&&s.latest.current&&s.setDrag({...s.latest.current,b:n})},f=t=>{let n=u(t);s.on&&n>=0&&n<e.starts.length&&s.setDrag({a:n,b:n})},p=[...e.lines??[],...e.bars??[]];return(0,W.jsxs)(`div`,{className:`wl-chart`,ref:t,children:[(0,W.jsxs)(`svg`,{width:n,height:a,className:s.on?`wl-chart-zoom`:void 0,onMouseMove:d,onMouseDown:f,onMouseUp:s.finish,onMouseLeave:()=>(i(null),s.setDrag(null)),role:`img`,"aria-label":p.map(e=>e.label).join(`, `),children:[(0,W.jsx)(ZT,{p:e,f:o,width:n}),(0,W.jsx)(tE,{p:e,f:o}),(0,W.jsx)(KT,{releases:l,starts:e.starts,at:e=>JT.left+o.slot*e,top:JT.top,base:o.base}),s.band&&(0,W.jsx)(`rect`,{className:`wl-chart-band`,x:s.band.x,y:JT.top,width:s.band.w,height:o.base-JT.top}),r!==null&&(0,W.jsx)(`line`,{x1:o.x(r),x2:o.x(r),y1:JT.top,y2:o.base,stroke:`var(--wl-line-strong)`})]}),r!==null&&(0,W.jsx)(nE,{p:e,i:r,left:Math.min(o.x(r)+12,n-160),releases:l}),(0,W.jsx)(`div`,{className:`wl-chart-legend`,children:p.map(e=>(0,W.jsxs)(`span`,{children:[(0,W.jsx)(`i`,{className:e.dashed?`wl-legend-dashed`:void 0,style:{background:e.dashed?void 0:e.color,borderColor:e.color}}),e.label]},e.label))})]})}var aE=36e5,oE=[[``,`Mute…`],[String(aE),`For 1 hour`],[String(4*aE),`For 4 hours`],[String(24*aE),`For 1 day`],[`-1`,`Until I unmute`]];function sE({rule:e}){let t=Date.now();if(!e.enabled)return(0,W.jsx)(Y,{tone:`neutral`,children:`Off`});let n=af(e,t)&&(0,W.jsx)(Y,{tone:`neutral`,children:e.mutedUntilMs===864e13?`Muted`:`Muted until ${Mb(e.mutedUntilMs)}`}),r=(0,W.jsx)(Kb,{tone:e.state===`firing`?`danger`:`success`,colorText:e.state===`firing`,children:e.state===`firing`?`Firing`:`OK`});return(0,W.jsxs)(`span`,{className:`wl-alert-state`,children:[r,e.state===`firing`&&e.ackMs!==null&&(0,W.jsx)(Y,{tone:`info`,children:`Acknowledged`}),n]})}function cE({rule:e,url:t,onDone:n,onEdit:r,onDelete:i}){let[a,o]=(0,T.useState)(!1),s=(e,r,i,a)=>{o(!0),x(e,t(r),i).then(e=>(o(!1),n(a?.(e))),e=>(o(!1),n(e instanceof Error?e.message:String(e))))},c=`/${encodeURIComponent(e.id)}`,l=af(e,Date.now());return(0,W.jsxs)(`span`,{className:`wl-row-actions wl-alert-actions`,onClick:e=>e.stopPropagation(),children:[e.state===`firing`&&e.ackMs===null&&(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,disabled:a,onClick:()=>s(`POST`,`${c}/ack`),children:`Acknowledge`}),l?(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,disabled:a,onClick:()=>s(`POST`,`${c}/mute`,{untilMs:null}),children:`Unmute`}):(0,W.jsx)(X,{small:!0,label:`Mute`,value:``,options:oE,onChange:e=>e&&s(`POST`,`${c}/mute`,{untilMs:e===`-1`?-1:Date.now()+Number(e)})}),(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,disabled:a,onClick:()=>s(`PATCH`,c,{enabled:!e.enabled}),children:e.enabled?`Turn off`:`Turn on`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,disabled:a,onClick:()=>s(`POST`,`${c}/test`,void 0,e=>`Test sent: ${e.delivery}`),children:`Test`}),r&&(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:r,children:`Edit`}),i&&(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn wl-text-error`,onClick:i,children:`Delete`})]})}var lE=60;function uE(e,t,n){let r=(n-t)/lE,i=Array.from({length:lE},(e,n)=>t+n*r),a=Array(lE).fill(null);for(let n of e){let e=Math.floor((n.timeMs-t)/r);e>=0&&e<lE&&n.value!==null&&(a[e]=n.value)}return{starts:i,values:a}}function dE(e,t,n){if(e.metric===`metric`)return null;if(e.metric===`slo`)return S(`slos`,[encodeURIComponent(e.sloId)]);let r={...e.service?{service:e.service}:{},...e.endpoint?{endpoint:e.endpoint}:{},from:String(t),to:String(n)};return e.metric===`new_errors`?S(`errors`,[],{...r,new:`1`}):e.metric===`slow_queries`?S(`database`,[],{...r,sort:`total`}):e.metric===`error_rate`?S(`requests`,[],{...r,status:`failed`}):S(`requests`,[],{...r,sort:`duration`})}function fE(){let[e]=t_(),[t]=qw();return(0,T.useMemo)(()=>{let n=Gw(t),r=n?.to??Date.now();return{from:n?.from??r-fe[e].ms,to:r}},[e,t])}function pE({d:e,api:t,reload:n}){let[r,i]=(0,T.useState)(null),a=fE(),o=e.rule,s=uE(e.values,a.from,a.to),c=o.metric===`metric`?void 0:o.metric===`slo`?`×`:nf[o.metric].unit,l=e=>GC(o,e),u=dE(o,a.from,a.to),d=[[`Rule`,JC(o)],[`Last value`,GC(o,o.lastValue)],[`Checked`,o.lastEvalMs?Mb(o.lastEvalMs):`Not yet`],[`Sends to`,o.channels.map(XC).join(`, `)||`Dashboard only`]],f=t.canWrite?(0,W.jsx)(cE,{rule:o,url:t.url,onDone:e=>(i(e??null),n())}):void 0;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(AC,{back:[`#/alerts`,`All alerts`],icon:N_,title:o.name,badge:(0,W.jsx)(sE,{rule:o}),actions:f,stats:d}),r&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-info`,children:r}),(0,W.jsx)(G,{title:`Value Against the Line (every check, ${BC(o.windowMs)} windows)`,action:u&&(0,W.jsx)(_b,{href:u,label:`View the traces`}),children:(0,W.jsx)(iE,{starts:s.starts,format:c===void 0?void 0:l,lines:[{label:`Value`,values:s.values,color:`var(--wl-blue)`},{label:`Threshold`,values:s.values.map(()=>o.threshold),color:`var(--wl-red)`,dashed:!0}]})}),(0,W.jsx)(G,{title:`Notices and Changes`,flush:!0,children:(0,W.jsx)(Q,{columns:vE(!1),rows:e.events,rowKey:e=>e.id,empty:(0,W.jsx)(K,{children:`Nothing happened to this alert yet.`})})})]})}function mE({id:e}){let t=YC(),n=fE(),r=t.url(`/${encodeURIComponent(e)}`),{data:i,error:a,reload:o}=Ux(t.ready?`${r}${r.includes(`?`)?`&`:`?`}from=${n.from}&to=${n.to+1}`:null);return a?(0,W.jsx)(G,{children:(0,W.jsxs)(K,{title:`This alert was not found`,children:[a,` Go back to `,(0,W.jsx)(`a`,{href:`#/alerts`,children:`all alerts`}),`.`]})}):(0,W.jsx)(`div`,{className:`wl-dpage`,children:i?(0,W.jsx)(pE,{d:i,api:t,reload:o}):(0,W.jsx)(G,{children:(0,W.jsx)(K,{children:`Loading…`})})})}function hE(e,t,n,r,i){return[{key:`name`,header:`Alert`,cell:e=>(0,W.jsx)(`strong`,{children:e.name})},{key:`rule`,header:`Rule`,className:`wl-wrap`,cell:e=>JC(e)},{key:`state`,header:`State`,cell:e=>(0,W.jsx)(sE,{rule:e})},{key:`value`,header:`Last value`,num:!0,cell:e=>GC(e,e.lastValue)},{key:`to`,header:`Sends to`,cell:e=>e.channels.map(XC).join(`, `)||`Dashboard only`},...e?[{key:`actions`,header:``,cell:e=>(0,W.jsx)(cE,{rule:e,url:t,onDone:n,onEdit:()=>r(e),onDelete:()=>i(e)})}]:[]]}var gE={fired:`danger`,resolved:`success`,remind:`warning`,test:`info`,ack:`info`,mute:`neutral`,unmute:`neutral`},_E={fired:`Fired`,resolved:`Resolved`,remind:`Reminder`,test:`Test`,ack:`Acknowledged`,mute:`Muted`,unmute:`Unmuted`},vE=e=>[{key:`time`,header:`When`,cell:e=>Lb(e.timeMs),className:`wl-nowrap`},{key:`kind`,header:``,cell:e=>(0,W.jsx)(Y,{tone:gE[e.kind],children:_E[e.kind]})},...e?[{key:`rule`,header:`Alert`,cell:e=>e.ruleName}]:[],{key:`message`,header:`Message`,cell:e=>(0,W.jsxs)(W.Fragment,{children:[e.message,e.problem&&(0,W.jsxs)(`a`,{className:`wl-alert-problem`,href:e.problem.url.slice(e.problem.url.indexOf(`#`)),onClick:e=>e.stopPropagation(),children:[`Problem: `,e.problem.title]})]}),className:`wl-wrap`},{key:`delivery`,header:`Delivery`,cell:e=>(0,W.jsx)(`span`,{className:`wl-muted wl-small`,children:e.delivery}),className:`wl-wrap`}],yE=[`name`,`metric`,`service`,`endpoint`,`metricName`,`metricStat`,`metricService`,`sloId`,`op`],bE=[`threshold`,`windowMs`],xE=[...yE,...bE];function SE(e){let t={};try{t=Yf(JSON.parse(e))}catch{}return{...NT,name:rf(t).slice(0,100)||`Log lines`,metric:`log_count`,threshold:10,logSearch:t}}function CE(e){let t=e.get(`log`);if(t)return SE(t);let n=Object.fromEntries(yE.filter(t=>e.get(t)).map(t=>[t,e.get(t)])),r=Object.fromEntries(bE.filter(t=>Number.isFinite(Number(e.get(t)))&&e.get(t)).map(t=>[t,Number(e.get(t))]));return{...NT,...n,...r}}function wE(){let[e]=i().params;return H().has(`alerts`)?e?(0,W.jsx)(mE,{id:C(e)},e):(0,W.jsx)(TE,{}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gb,{title:`Alerts`,subtitle:`Get told when error rates, latency, traffic, or any metric cross a line.`}),(0,W.jsx)(G,{children:(0,W.jsx)(K,{title:`This host does not run alerts`,children:`Alerts run on the hub and on WizeLens Cloud. Send your data there to use them.`})})]})}function TE(){let e=YC(),t=i().query,{data:r,error:a,reload:o}=Ux(e.ready?e.url():null),[s,c]=(0,T.useState)(null),[l,u]=(0,T.useState)(null),d=t.get(`new`)===`1`,f=()=>(c(null),d&&n({new:null,log:null,...Object.fromEntries(xE.map(e=>[e,null]))})),p=async t=>{let n=await Wx(()=>s?x(`PATCH`,e.url(`/${encodeURIComponent(s.id)}`),t):x(`POST`,e.url(),t),o);return n||f(),n},m=e=>(u(e??null),o()),h=t=>void Wx(()=>x(`DELETE`,e.url(`/${encodeURIComponent(t.id)}`)),o),g=e.canWrite&&!s&&!d&&(0,W.jsxs)(`a`,{className:`wl-btn wl-btn-primary`,href:`#/alerts?new=1`,children:[(0,W.jsx)(hy,{"aria-hidden":`true`}),` New alert`]}),_=s?(0,W.jsx)(IT,{title:`Edit "${s.name}"`,initial:PT(s),onSave:p,onCancel:f},s.id):d&&e.canWrite?(0,W.jsx)(IT,{title:`New alert`,initial:CE(t),onSave:p,onCancel:f}):null;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gb,{title:`Alerts`,subtitle:`Get told when error rates, latency, traffic, or any metric cross a line. Checked every minute.`,children:g}),a&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:a}),l&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-info`,children:l}),_,(0,W.jsx)(G,{title:`Rules`,flush:!0,children:(0,W.jsx)(Q,{columns:hE(e.canWrite,e.url,m,c,h),rows:r?.rules??[],rowKey:e=>e.id,onRowClick:e=>w(pe(e.id)),empty:(0,W.jsxs)(K,{title:`No alerts yet`,children:[(0,W.jsx)(N_,{"aria-hidden":`true`}),` Add one to hear about problems before your users do.`]})})}),(0,W.jsx)(G,{title:`Recent notices`,flush:!0,children:(0,W.jsx)(Q,{columns:vE(!0),rows:r?.events??[],rowKey:e=>e.id,onRowClick:e=>w(pe(e.ruleId)),empty:(0,W.jsx)(K,{children:`Nothing fired yet.`})})})]})}function EE({targets:e,url:t,canWrite:n,onSaved:r}){let{model:i}=yT(`services`),a=[...new Set((i?.rows??[]).filter(e=>e.kind===`api`||e.kind===`worker`).map(e=>e.name))].sort(),[o,s]=(0,T.useState)({}),[c,l]=(0,T.useState)(null);return(0,T.useEffect)(()=>s(Object.fromEntries(Object.entries(e).map(([e,t])=>[e,String(t)]))),[e]),(0,W.jsxs)(G,{title:`Apdex Targets`,action:n&&(0,W.jsx)(`button`,{type:`button`,className:`wl-btn wl-btn-sm`,onClick:()=>{let e=Object.fromEntries(Object.entries(o).filter(([,e])=>e.trim()!==``).map(([e,t])=>[e,Number(t)]));x(`PUT`,t,{apdex:e}).then(()=>(l(`Saved.`),r()),e=>l(e instanceof Error?e.message:String(e)))},children:`Save targets`}),children:[(0,W.jsxs)(`p`,{className:`wl-muted wl-small`,children:[`Requests at or under the target are satisfied, under four times it tolerable, and slower or failed ones frustrated. Empty uses `,500,` ms.`]}),(0,W.jsx)(`div`,{className:`wl-apdex-targets`,children:a.map(e=>(0,W.jsx)(Z,{label:`${e} (ms)`,type:`number`,min:1,max:6e4,disabled:!n,value:o[e]??``,placeholder:`500`,onChange:t=>s(n=>({...n,[e]:t.target.value}))},e))}),a.length===0&&(0,W.jsx)(`p`,{className:`wl-muted`,children:`No services yet.`}),c&&(0,W.jsx)(`p`,{className:`wl-small`,children:c})]})}var DE={name:``,service:``,endpoint:``,kind:`success`,target:99.9,thresholdMs:500,windowDays:30},OE=[[`success`,`Requests succeed`],[`latency`,`Requests are fast enough`]],kE=[[`30`,`Over 30 days`],[`7`,`Over 7 days`]];function AE(){let{model:e}=yT(`services`);return[...new Set((e?.rows??[]).filter(e=>e.kind===`api`||e.kind===`worker`||e.kind===`web`).map(e=>e.name))]}function jE({initial:e,title:t,onSave:n,onCancel:r}){let[i,a]=(0,T.useState)(e),[o,s]=(0,T.useState)(null),c=AE(),l=e=>t=>a(n=>({...n,[e]:t}));return(0,W.jsx)(G,{title:t,children:(0,W.jsxs)(`form`,{className:`wl-form`,onSubmit:e=>{e.preventDefault(),n(i).then(s)},children:[(0,W.jsxs)($x,{children:[(0,W.jsx)(Z,{label:`Name (optional)`,value:i.name,onChange:e=>l(`name`)(e.target.value),placeholder:`Checkout availability`}),(0,W.jsx)(Z,{label:`Service`,required:!0,list:`wl-slo-services`,value:i.service,onChange:e=>l(`service`)(e.target.value),placeholder:`orders`}),(0,W.jsx)(Z,{label:`Endpoint (optional)`,value:i.endpoint,onChange:e=>l(`endpoint`)(e.target.value),placeholder:`All endpoints, or GET /api/orders/{id}`}),(0,W.jsx)(`datalist`,{id:`wl-slo-services`,children:c.map(e=>(0,W.jsx)(`option`,{value:e},e))})]}),(0,W.jsxs)($x,{children:[(0,W.jsx)(X,{label:`Good means`,value:i.kind,options:OE,onChange:l(`kind`)}),i.kind===`latency`&&(0,W.jsx)(Z,{label:`Within (ms)`,type:`number`,min:1,required:!0,value:i.thresholdMs,onChange:e=>l(`thresholdMs`)(Number(e.target.value))}),(0,W.jsx)(Z,{label:`Target (%)`,type:`number`,step:`any`,min:0,max:99.999,required:!0,value:i.target,onChange:e=>l(`target`)(Number(e.target.value))}),(0,W.jsx)(X,{label:`Window`,value:String(i.windowDays),options:kE,onChange:e=>l(`windowDays`)(Number(e))})]}),o&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:o}),(0,W.jsxs)($x,{children:[(0,W.jsx)(`button`,{type:`submit`,className:`wl-btn wl-btn-primary`,children:`Save SLO`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:r,children:`Cancel`})]})]})})}var ME=`14.4`;function NE({r:e}){let t=e.status;return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(G,{title:`Error Budget Left (0% once spent)`,children:(0,W.jsx)(iE,{starts:t.starts,format:e=>`${Math.round(e)}%`,zoom:!1,releases:!1,lines:[{label:`Budget left`,values:t.budgetSeries.map(e=>e===null?null:Math.max(0,e*100)),color:`var(--wl-blue)`},{label:`Spent`,values:t.starts.map(()=>0),color:`var(--wl-red)`,dashed:!0}]})}),(0,W.jsx)(G,{title:`Good Requests`,children:(0,W.jsx)(iE,{starts:t.starts,format:t=>ET(t,e.slo.target),zoom:!1,lines:[{label:`Good`,values:t.sliSeries,color:`var(--wl-green)`},{label:`Target`,values:t.starts.map(()=>e.slo.target),color:`var(--wl-red)`,dashed:!0}]})})]})}function PE({r:e,url:t,canWrite:n,reload:r}){let[i,a]=(0,T.useState)(!1),o=H().has(`alerts`),s=e.status,c=[[`Goal`,AT(e.slo)],[`Now`,ET(s.sli,e.slo.target)],[`Requests`,J(s.total)],[`Burn now`,`${DT(e.burn1h)} (1 h), ${DT(e.burn6h)} (6 h)`]],l=async e=>{let n=await Wx(()=>x(`PATCH`,t,e),r);return n||a(!1),n},u=()=>void Wx(()=>x(`DELETE`,t),()=>w(`#/slos`)),d=We({metric:`slo`,sloId:e.slo.id,op:`>`,threshold:ME,windowMs:`3600000`,name:`${e.slo.name} burns fast`}),f=(0,W.jsxs)(W.Fragment,{children:[o&&(0,W.jsxs)(`a`,{className:`wl-btn wl-btn-sm`,href:d,children:[(0,W.jsx)(k_,{"aria-hidden":`true`}),` Alert on burn rate`]}),n&&(0,W.jsx)(`button`,{type:`button`,className:`wl-btn wl-btn-sm`,onClick:()=>a(!0),children:`Edit`}),n&&(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn wl-text-error`,onClick:u,children:`Delete`})]}),p=e.slo.endpoint?_e(`api:${e.slo.service}`,e.slo.endpoint):`#/services/api%3A${encodeURIComponent(e.slo.service)}`;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(AC,{back:[`#/slos`,`All SLOs`],icon:Yy,title:e.slo.name,badge:(0,W.jsx)(Y,{tone:kT(s.budgetLeft),children:s.budgetLeft!==null&&s.budgetLeft>0?`${OT(s.budgetLeft)} of budget left`:OT(s.budgetLeft)}),actions:f,stats:[...c,[`Covers`,(0,W.jsx)(`a`,{href:p,children:e.slo.endpoint||e.slo.service},`s`)]]}),i&&(0,W.jsx)(jE,{title:`Edit "${e.slo.name}"`,initial:e.slo,onSave:l,onCancel:()=>a(!1)}),(0,W.jsx)(NE,{r:e})]})}function FE({id:e}){let t=TT(),n=t.url(`/${encodeURIComponent(e)}`),{data:r,error:i,reload:a}=Ux(t.ready?n:null);return i?(0,W.jsx)(G,{children:(0,W.jsxs)(K,{title:`This SLO was not found`,children:[i,` Go back to `,(0,W.jsx)(`a`,{href:`#/slos`,children:`all SLOs`}),`.`]})}):(0,W.jsx)(`div`,{className:`wl-dpage`,children:r?(0,W.jsx)(PE,{r,url:n,canWrite:t.canWrite,reload:a}):(0,W.jsx)(G,{children:(0,W.jsx)(K,{children:`Loading…`})})})}var IE=[{key:`name`,header:`SLO`,cell:e=>(0,W.jsx)(`strong`,{children:e.slo.name})},{key:`goal`,header:`Goal`,className:`wl-wrap`,cell:e=>AT(e.slo)},{key:`sli`,header:`Now`,num:!0,cell:e=>(0,W.jsx)(`span`,{className:e.status.sli!==null&&e.status.sli<e.slo.target?`wl-text-error`:void 0,children:ET(e.status.sli,e.slo.target)})},{key:`budget`,header:`Budget Left`,num:!0,cell:e=>(0,W.jsx)(Y,{tone:kT(e.status.budgetLeft),children:OT(e.status.budgetLeft)})},{key:`burn`,header:`Burn (1 h / 6 h)`,num:!0,className:`wl-nowrap`,cell:e=>`${DT(e.burn1h)} / ${DT(e.burn6h)}`},{key:`total`,header:`Requests`,num:!0,cell:e=>e.status.total.toLocaleString()}];function LE(){let[e]=i().params;return H().has(`slos`)?e?(0,W.jsx)(FE,{id:C(e)},e):(0,W.jsx)(RE,{}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gb,{title:`SLOs`,subtitle:`Service level objectives and error budgets.`}),(0,W.jsx)(G,{children:(0,W.jsx)(K,{title:`This host keeps no SLOs`,children:`SLOs run on the hub and on WizeLens Cloud.`})})]})}function RE(){let e=TT(),{data:t,error:n,reload:r}=Ux(e.ready?e.url():null),[i,a]=(0,T.useState)(!1),o=async t=>{let n=await Wx(()=>x(`POST`,e.url(),t),r);return n||a(!1),n},s=e.canWrite&&!i&&(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn wl-btn-primary`,onClick:()=>a(!0),children:[(0,W.jsx)(hy,{"aria-hidden":`true`}),` New SLO`]});return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gb,{title:`SLOs`,subtitle:`How much of your traffic must succeed, or be fast enough, and how much error budget is left.`,children:s}),n&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:n}),i&&(0,W.jsx)(jE,{title:`New SLO`,initial:DE,onSave:o,onCancel:()=>a(!1)}),(0,W.jsx)(G,{title:`Objectives`,flush:!0,children:(0,W.jsx)(Q,{columns:IE,rows:t?.slos??[],rowKey:e=>e.slo.id,onRowClick:e=>w(He(e.slo.id)),empty:(0,W.jsxs)(K,{title:`No SLOs yet`,children:[(0,W.jsx)(Yy,{"aria-hidden":`true`}),` Add one to track an error budget for a service or an endpoint.`]})})}),t&&(0,W.jsx)(EE,{targets:t.apdex,url:e.apdexUrl,canWrite:e.canWrite,onSaved:r})]})}var zE=new Set,BE=0,VE=()=>(BE++,zE.forEach(e=>e())),HE=()=>(0,T.useSyncExternalStore)(e=>(zE.add(e),()=>zE.delete(e)),()=>BE);function UE(){let e=H(),t=e.has(`accounts`),n=Ne(Ce())?.org.role,r=c().project;return{url:(e=``)=>t?`./api/projects/${encodeURIComponent(r)}/saved${e}`:`./api/saved${e}?project=${encodeURIComponent(r)}`,on:e.has(`saved`),ready:!t||!!r,canWrite:!t||n!==void 0&&n!==`viewer`,cloud:t}}function WE(e){let t=UE(),n=HE(),r=t.url(),{data:i,error:a}=Ux(t.on&&t.ready?`${r}${r.includes(`?`)?`&`:`?`}t=${n}`:null);return{items:(i?.items??[]).filter(t=>!e||t.kind===e),error:a}}async function GE(e,t,n){let r=await x(t,e,n);return VE(),`id`in r?r:null}var KE=3e4,qE=`1h`;function JE(){let[e,t]=(0,T.useState)(0);return(0,T.useEffect)(()=>{let e=setInterval(()=>t(e=>e+1),KE);return()=>clearInterval(e)},[]),e}function YE(e,t,n){let r=sT(),[i]=u(),a=JSON.stringify([e,t,n,r,i]),o=e=>({...r,...i?{service:i}:{},metric:e.name,...e.stat?{stat:e.stat}:{},...t?{where:t}:{},...n?{group:n}:{}});return(0,T.useMemo)(()=>e.map(o),[a])}function XE(e,t){let n=c();return`./api/models/metrics?${new URLSearchParams({...e,range:t,...n.project?{project:n.project}:{},...n.env?{env:n.env}:{}}).toString()}`}function ZE(e,t,n){let r=H(),[i]=t_(),a=YE(e,t,n),o=JE(),s=r.has(`serverMetrics`),c=s?i:fe[i].ms>fe[qE].ms?qE:i,[l,u]=(0,T.useState)({details:[],loading:!0,error:null});return(0,T.useEffect)(()=>{let e=!0;return(s?Promise.all(a.map(e=>ne(XE(e,c)).then(e=>e.selected))):ne(`./api/metrics/points?since=${Math.floor(Date.now()-fe[c].ms)}`).then(e=>a.map(t=>bp({points:e.points,range:c,now:Date.now(),params:t}).selected))).then(t=>e&&u({details:t,loading:!1,error:null}),t=>e&&u(e=>({...e,loading:!1,error:t instanceof Error?t.message:String(t)}))),()=>void(e=!1)},[a,c,s,o]),l}var QE=1e4,$E=`1h`;function eD(e){let{query:t}=i(),[n]=u(),r=sT(),a=Object.fromEntries(t),o=new URLSearchParams({...r,...n&&!a.service?{service:n}:{},...a,...e}).toString();return(0,T.useMemo)(()=>Object.fromEntries(new URLSearchParams(o)),[o])}function tD(e){let[t,n]=(0,T.useState)(0);return(0,T.useEffect)(()=>{let t=setInterval(()=>n(e=>e+1),e);return()=>clearInterval(t)},[e]),t}function nD(e,t){let[n,r]=(0,T.useState)({data:null,url:null,error:null});return(0,T.useEffect)(()=>{if(!e)return;let t=!0;return ne(e).then(n=>t&&r({data:n,url:e,error:null})).catch(n=>t&&r(t=>({...t,url:e,error:n instanceof Error?n.message:String(n)}))),()=>void(t=!1)},[e,t]),n}function rD(e,t){let n=c(),r=new URLSearchParams({...e,range:t});return n.project&&r.set(`project`,n.project),n.env&&r.set(`env`,n.env),`./api/models/metrics?${r.toString()}`}function iD(e){let t=H(),[n]=t_(),r=eD(e),i=tD(QE),a=t.has(`serverMetrics`)?`server`:t.has(`metrics`)?`points`:`none`,o=a===`points`&&fe[n].ms>fe[$E].ms,s=o?$E:n,c=nD(a===`server`?rD(r,s):null,i),l=(0,T.useMemo)(()=>Date.now()-fe[s].ms,[s,i]),u=nD(a===`points`?`./api/metrics/points?since=${Math.floor(l)}`:null,i),d=(0,T.useMemo)(()=>u.data?bp({points:u.data.points,range:s,now:l+fe[s].ms,params:r}):null,[u.data,s,l,r]);return a===`server`?{model:c.data,loading:!c.data&&!c.error,error:c.error,source:a,clipped:o}:a===`points`?{model:d,loading:!u.data&&!u.error,error:u.error,source:a,clipped:o}:{model:null,loading:!1,error:null,source:a,clipped:o}}var aD=[[`line`,`Lines`],[`area`,`Areas`],[`bar`,`Stacked bars`],[`number`,`Numbers`],[`table`,`Table`]],oD=[[``,`Default`],[`p50`,`p50`],[`p95`,`p95`],[`p99`,`p99`],[`avg`,`Average`]],sD=[[`1`,`Half width`],[`2`,`Full width`]],cD=`wl-dash-metric-names`,lD={id:``,title:``,type:`line`,metrics:[{name:``,stat:``}],where:``,group:``,width:1};function uD({p:e,set:t}){let{details:n}=ZE(e.metrics.filter(e=>e.name).slice(0,1),``,``),r=n[0],i=r?Object.keys(r.values):[],[a,o]=(0,T.useState)(``),s=n=>t({where:[...e.where.split(`,`).filter(Boolean),`${a}=${n}`].join(`,`)});return(0,W.jsxs)($x,{children:[(0,W.jsx)(X,{label:`Split lines by`,value:e.group,options:[[``,`Nothing (one line per series)`],...(r?.groupKeys??[]).map(e=>[e,`By ${e}`])],onChange:e=>t({group:e})}),(0,W.jsx)(X,{label:`Filter key`,value:a,options:[[``,`Filter by…`],...i.map(e=>[e,e])],onChange:o}),a&&(0,W.jsx)(X,{label:`Filter value`,value:``,options:[[``,`Pick a value…`],...(r?.values[a]??[]).map(e=>[e,e])],onChange:e=>e&&(s(e),o(``))}),(0,W.jsx)(Z,{label:`Only (key=value, comma-separated)`,value:e.where,onChange:e=>t({where:e.target.value}),placeholder:`All series`})]})}function dD({initial:e,onSave:t,onCancel:n}){let[r,i]=(0,T.useState)(e),{model:a}=iD({metric:``}),o=e=>i(t=>({...t,...e})),s=(e,t)=>o({metrics:r.metrics.map((n,r)=>r===e?{...n,...t}:n)});return(0,W.jsx)(G,{title:e.id?`Edit chart`:`New chart`,className:`wl-dash-wide`,children:(0,W.jsxs)(`form`,{className:`wl-form`,onSubmit:e=>{e.preventDefault(),t({...r,metrics:r.metrics.filter(e=>e.name.trim())})},children:[(0,W.jsxs)($x,{children:[(0,W.jsx)(Z,{label:`Title (optional)`,value:r.title,onChange:e=>o({title:e.target.value}),placeholder:`CPU by service`}),(0,W.jsx)(X,{label:`Draw as`,value:r.type,options:aD,onChange:e=>o({type:e})}),(0,W.jsx)(X,{label:`Width`,value:String(r.width),options:sD,onChange:e=>o({width:e===`2`?2:1})})]}),r.metrics.map((e,t)=>(0,W.jsxs)($x,{children:[(0,W.jsx)(Z,{label:`Metric ${t+1}`,required:!0,list:cD,value:e.name,onChange:e=>s(t,{name:e.target.value}),placeholder:`process.cpu.utilization`}),(0,W.jsx)(X,{label:`Statistic`,value:e.stat,options:oD,onChange:e=>s(t,{stat:e})}),r.metrics.length>1&&(0,W.jsx)(`button`,{type:`button`,className:`wl-icon-btn`,"aria-label":`Remove this metric`,onClick:()=>o({metrics:r.metrics.filter((e,n)=>n!==t)}),children:(0,W.jsx)(db,{size:16})})]},t)),r.metrics.length<6&&(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn wl-btn-sm`,onClick:()=>o({metrics:[...r.metrics,{name:``,stat:``}]}),children:[(0,W.jsx)(hy,{"aria-hidden":`true`}),` Add a metric`]}),(0,W.jsx)(`datalist`,{id:cD,children:a?.catalog.map(e=>(0,W.jsx)(`option`,{value:e.name,children:e.lastText},e.name))}),(0,W.jsx)(uD,{p:r,set:o}),(0,W.jsxs)($x,{children:[(0,W.jsx)(`button`,{type:`submit`,className:`wl-btn wl-btn-primary`,children:`Save chart`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:n,children:`Cancel`})]})]})})}function fD({values:e,width:t=86,height:n=30,color:r=`var(--wl-blue)`,stretch:i=!1}){let a=(0,T.useId)();if(e.length<2||e.every(e=>e===null||e===0))return(0,W.jsx)(`svg`,{className:`wl-spark`,width:t,height:n,"aria-hidden":`true`});let o=VT([e])||1,s=n=>n/(e.length-1)*t,c=e=>n-2-e/o*(n-4);return(0,W.jsxs)(`svg`,{className:`wl-spark`,width:t,height:n,viewBox:`0 0 ${t} ${n}`,preserveAspectRatio:i?`none`:void 0,"aria-hidden":`true`,children:[(0,W.jsx)(`defs`,{children:(0,W.jsxs)(`linearGradient`,{id:a,x1:`0`,y1:`0`,x2:`0`,y2:`1`,children:[(0,W.jsx)(`stop`,{offset:`0`,stopColor:r,stopOpacity:`0.22`}),(0,W.jsx)(`stop`,{offset:`1`,stopColor:r,stopOpacity:`0`})]})}),(0,W.jsx)(`path`,{d:BT(e,s,c,n),fill:`url(#${a})`}),(0,W.jsx)(`path`,{d:zT(e,s,c),fill:`none`,stroke:r,strokeWidth:`1.6`,strokeLinejoin:`round`,strokeLinecap:`round`,vectorEffect:`non-scaling-stroke`})]})}function pD(e=[]){let{registry:t,traces:n}=Se(),r=e.join(`
|
|
21
|
+
`);return(0,T.useMemo)(()=>{let e=[...(t?.services??[]).map(e=>e.service),...n.flatMap(e=>e.services)];return[...new Set([...e.map(yr),...r?r.split(`
|
|
22
|
+
`):[]])].sort()},[t,n,r])}function mD(){let[,e]=u();return t=>{e(t),se(window.location.hash).page!==`services`&&n({page:null})}}function hD({value:e,services:t=[]}){let n=pD(e?[...t,e]:t),r=mD();return(0,W.jsx)(X,{label:`Service`,value:e,onChange:r,options:[[``,`All Services`],...n.map(e=>[e,e])]})}function gD(){let[e]=u(),t=mD();return e?(0,W.jsxs)(`button`,{type:`button`,className:`wl-scope-chip`,onClick:()=>t(``),title:`Show all services`,children:[(0,W.jsx)(`span`,{className:`wl-truncate`,children:e}),(0,W.jsx)(db,{size:14,"aria-hidden":`true`})]}):null}var _D=[`var(--wl-blue)`,`var(--wl-green)`,`var(--wl-orange)`,`var(--wl-red)`,`var(--wl-k-db)`,`var(--wl-k-messaging)`,`var(--wl-k-render)`,`var(--wl-amber)`,`var(--wl-k-browser)`,`var(--wl-slate)`],vD={runtime:`Runtime`,http:`HTTP`,database:`Database`,messaging:`Messaging`,rpc:`RPC`,custom:`Your metrics`};function yD({model:e,selected:t}){return e.runtime.length===0?null:(0,W.jsx)(`div`,{className:`wl-metric-runtime`,children:e.runtime.map(({service:e,stats:r})=>(0,W.jsxs)(`section`,{className:`wl-panel wl-metric-service`,children:[(0,W.jsx)(`h2`,{children:e}),(0,W.jsx)(`div`,{className:`wl-metric-tiles`,children:r.map(r=>(0,W.jsxs)(`button`,{type:`button`,className:`wl-metric-tile${t===r.metric?` wl-active`:``}`,onClick:()=>n({metric:r.metric,service:e,group:null}),title:r.metric,children:[(0,W.jsx)(`span`,{children:r.label}),(0,W.jsx)(`strong`,{children:r.lastText}),(0,W.jsx)(fD,{values:r.spark,width:96,height:24})]},r.key))})]},e))})}function bD({name:e}){let t=e.split(`.`);return(0,W.jsx)(W.Fragment,{children:t.map((e,n)=>(0,W.jsxs)(`span`,{children:[e,n<t.length-1&&(0,W.jsxs)(W.Fragment,{children:[`.`,(0,W.jsx)(`wbr`,{})]})]},n))})}function xD({m:e,active:t}){return(0,W.jsx)(`li`,{children:(0,W.jsxs)(`button`,{type:`button`,className:t?`wl-active`:void 0,onClick:()=>n({metric:e.name,group:null,stat:null}),title:e.description||e.name,children:[(0,W.jsxs)(`span`,{className:`wl-metric-name`,children:[(0,W.jsx)(`strong`,{children:(0,W.jsx)(bD,{name:e.name})}),(0,W.jsxs)(`em`,{children:[e.services.join(`, `),` · `,e.series,` series`]})]}),(0,W.jsx)(`span`,{className:`wl-metric-last`,children:e.lastText}),(0,W.jsx)(fD,{values:e.spark,width:72,height:22})]})})}function SD({model:e,params:t}){let r=[...new Set(e.catalog.map(e=>e.area))],i=[[``,`All services`],...e.services.map(e=>[e,e])],[a]=u(),o=mD();return(0,W.jsxs)(G,{title:`Metrics (${e.catalog.length})`,className:`wl-metric-list`,children:[(0,W.jsxs)(`div`,{className:`wl-metric-filters`,children:[(0,W.jsx)(Zb,{value:t.q??``,onChange:e=>n({q:e||null}),placeholder:`Find a metric`}),(e.services.length>1||a)&&(0,W.jsx)(X,{value:t.service??a,options:i,onChange:o,label:`Service`,small:!0})]}),e.catalog.length===0&&(0,W.jsx)(K,{title:`No metrics in this range`,children:`Pick a wider range, or check that your services send metrics.`}),r.map(n=>(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`h3`,{className:`wl-metric-area`,children:vD[n]}),(0,W.jsx)(`ul`,{children:e.catalog.filter(e=>e.area===n).map(e=>(0,W.jsx)(xD,{m:e,active:t.metric===e.name},e.name))})]},n))]})}var CD=e=>t=>df(t,e);function wD(e,t){return e.flatMap((e,n)=>e?e.lines.map(n=>({label:t.length>1?`${e.name}${e.lines.length>1?` · ${n.label}`:``}`:n.label||e.name,values:n.values,unit:e.displayUnit})):[])}var TD=e=>[...e].reverse().find(e=>e!=null)??null;function ED({lines:e}){let t=(e,t)=>{let n=e.values.filter(e=>e!=null);return n.length?df(t(n),e.unit):`–`};return(0,W.jsx)(Q,{columns:[{key:`label`,header:`Series`,className:`wl-wrap`,cell:e=>e.label},{key:`last`,header:`Now`,num:!0,cell:e=>df(TD(e.values),e.unit)},{key:`min`,header:`Lowest`,num:!0,cell:e=>t(e,e=>Math.min(...e))},{key:`max`,header:`Highest`,num:!0,cell:e=>t(e,e=>Math.max(...e))},{key:`avg`,header:`Average`,num:!0,cell:e=>t(e,e=>e.reduce((e,t)=>e+t,0)/e.length)}],rows:e,rowKey:e=>e.label})}function DD({lines:e}){return(0,W.jsx)(`div`,{className:`wl-dash-numbers`,children:e.slice(0,4).map((e,t)=>(0,W.jsxs)(`div`,{className:`wl-dash-number`,children:[(0,W.jsx)(`span`,{className:`wl-muted wl-small wl-truncate`,children:e.label}),(0,W.jsx)(`strong`,{children:df(TD(e.values),e.unit)}),(0,W.jsx)(fD,{values:e.values,width:240,height:28,stretch:!0,color:_D[t%_D.length]})]},e.label))})}function OD(e,t,n){if(n.length===0)return(0,W.jsx)(K,{children:`No data for these metrics in this time range.`});if(e.type===`table`)return(0,W.jsx)(ED,{lines:n});if(e.type===`number`)return(0,W.jsx)(DD,{lines:n});let r=n.slice(0,10).map((e,t)=>({label:e.label,values:e.values,color:_D[t%_D.length]})),i=CD(n[0].unit);return e.type===`bar`?(0,W.jsx)(iE,{starts:t,bars:r,stackBars:!0,format:i,height:220}):(0,W.jsx)(iE,{starts:t,lines:r,areas:e.type===`area`,format:i,height:220})}function kD({panel:e,actions:t}){let{details:n,loading:r,error:i}=ZE(e.metrics,e.where,e.group),a=e.metrics.map(e=>e.name),o=e.title||a.join(`, `),s=n.find(e=>e)?.buckets??[];return(0,W.jsxs)(G,{title:o,action:t,className:`wl-dash-panel${e.width===2?` wl-dash-wide`:``}`,children:[e.where&&(0,W.jsxs)(`p`,{className:`wl-muted wl-small`,children:[`Only `,e.where.replace(/,/g,`, `)]}),i?(0,W.jsx)(K,{title:`This chart could not load`,children:i}):r&&n.length===0?(0,W.jsx)(K,{children:`Loading…`}):OD(e,s,wD(n,a))]})}function AD({i:e,count:t,onMove:n,onEdit:r,onRemove:i}){return(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[(0,W.jsx)(`button`,{type:`button`,className:`wl-icon-btn`,"aria-label":`Move up`,disabled:e===0,onClick:()=>n(e-1),children:(0,W.jsx)(D_,{size:14})}),(0,W.jsx)(`button`,{type:`button`,className:`wl-icon-btn`,"aria-label":`Move down`,disabled:e===t-1,onClick:()=>n(e+1),children:(0,W.jsx)(x_,{size:14})}),(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:r,children:`Edit`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn wl-text-error`,onClick:i,children:`Remove`})]})}function jD({d:e,url:t,editable:n,reload:r}){let[i,a]=(0,T.useState)(null),[o,s]=(0,T.useState)(null),c=e=>void GE(t,`PATCH`,{panels:e}).then(()=>(a(null),r()),e=>s(String(e))),l=(t,n)=>{let r=[...e.panels];r.splice(n,0,r.splice(t,1)[0]),c(r)},u=t=>c(i===`new`?[...e.panels,{...t,id:`p${Date.now()}`}]:e.panels.map((e,n)=>n===i?t:e)),d=n&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn wl-btn-sm`,onClick:()=>a(`new`),children:[(0,W.jsx)(hy,{"aria-hidden":`true`}),` Add a chart`]}),(0,W.jsx)(`button`,{type:`button`,className:`wl-btn wl-btn-sm`,onClick:()=>void GE(t,`PATCH`,{shared:!e.shared}).then(r),children:e.shared?`Stop sharing`:`Share with the team`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn wl-text-error`,onClick:()=>void GE(t,`DELETE`).then(()=>w(`#/dashboards`)),children:`Delete`})]});return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(AC,{back:[`#/dashboards`,`All dashboards`],icon:qv,title:e.name,badge:e.shared?(0,W.jsx)(Y,{tone:`info`,children:`Shared`}):void 0,actions:d,stats:[[`Charts`,String(e.panels.length)],...e.ownerName?[[`Made by`,e.ownerName]]:[]]}),o&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:o}),i!==null&&(0,W.jsx)(dD,{initial:i===`new`?lD:e.panels[i],onSave:u,onCancel:()=>a(null)}),e.panels.length===0&&i===null&&(0,W.jsx)(G,{children:(0,W.jsx)(K,{title:`No charts yet`,children:`Add a chart: one or more metrics, drawn as lines, areas, bars, numbers, or a table.`})}),(0,W.jsx)(`div`,{className:`wl-dash-grid`,children:e.panels.map((t,r)=>(0,W.jsx)(kD,{panel:t,actions:n&&(0,W.jsx)(AD,{i:r,count:e.panels.length,onMove:e=>l(r,e),onEdit:()=>a(r),onRemove:()=>c(e.panels.filter((e,t)=>t!==r))})},t.id))})]})}function MD({id:e}){let t=UE(),n=Ce()?.user?.id??``,r=t.url(`/${encodeURIComponent(e)}`),{data:i,error:a,reload:o}=Ux(t.ready?r:null);if(a)return(0,W.jsx)(G,{children:(0,W.jsxs)(K,{title:`This dashboard was not found`,children:[a,` Go back to `,(0,W.jsx)(`a`,{href:`#/dashboards`,children:`all dashboards`}),`.`]})});if(!i)return(0,W.jsx)(G,{children:(0,W.jsx)(K,{children:`Loading…`})});let s=t.canWrite&&(!t.cloud||i.owner===n);return(0,W.jsx)(`div`,{className:`wl-dpage`,children:(0,W.jsx)(jD,{d:i,url:r,editable:s,reload:o})})}var ND=[{key:`name`,header:`Dashboard`,cell:e=>(0,W.jsx)(`strong`,{children:e.name})},{key:`charts`,header:`Charts`,num:!0,cell:e=>e.panels.length},{key:`shared`,header:``,cell:e=>e.shared?(0,W.jsx)(Y,{tone:`info`,children:`Shared`}):(0,W.jsx)(Y,{tone:`neutral`,children:`Only you`})},{key:`by`,header:`Made by`,cell:e=>e.ownerName||`–`},{key:`updated`,header:`Changed`,className:`wl-nowrap`,cell:e=>Lb(e.updatedMs)}];function PD({onDone:e}){let t=UE(),[n,r]=(0,T.useState)(``),[i,a]=(0,T.useState)(!1),[o,s]=(0,T.useState)(null);return(0,W.jsx)(G,{title:`New dashboard`,children:(0,W.jsxs)(`form`,{className:`wl-form`,onSubmit:r=>{r.preventDefault(),GE(t.url(),`POST`,{kind:`dashboard`,name:n,panels:[],shared:!t.cloud||i}).then(t=>(e(),t&&w(Ae(t.id))),e=>s(e instanceof Error?e.message:String(e)))},children:[(0,W.jsxs)($x,{children:[(0,W.jsx)(Z,{label:`Name`,required:!0,autoFocus:!0,value:n,onChange:e=>r(e.target.value),placeholder:`Runtime health`}),t.cloud&&(0,W.jsx)(eS,{label:`Share with the team`,checked:i,onChange:e=>a(e.target.checked)})]}),o&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:o}),(0,W.jsxs)($x,{children:[(0,W.jsx)(`button`,{type:`submit`,className:`wl-btn wl-btn-primary`,children:`Make it`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:e,children:`Cancel`})]})]})})}function FD(){let e=UE(),{items:t,error:n}=WE(`dashboard`),[r,i]=(0,T.useState)(!1),a=e.canWrite&&!r&&(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn wl-btn-primary`,onClick:()=>i(!0),children:[(0,W.jsx)(hy,{"aria-hidden":`true`}),` New dashboard`]});return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gb,{title:`Dashboards`,subtitle:`Your own pages of metric charts: several metrics per chart, filtered and split by any attribute.`,children:a}),n&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:n}),r&&(0,W.jsx)(PD,{onDone:()=>i(!1)}),(0,W.jsx)(G,{title:`Dashboards`,flush:!0,children:(0,W.jsx)(Q,{columns:ND,rows:t,rowKey:e=>e.id,onRowClick:e=>w(Ae(e.id)),empty:(0,W.jsxs)(K,{title:`No dashboards yet`,children:[(0,W.jsx)(qv,{"aria-hidden":`true`}),` Make one to put the metrics you watch on one page.`]})})})]})}function ID(){let[e]=i().params;return H().has(`saved`)?e?(0,W.jsx)(MD,{id:C(e)},e):(0,W.jsx)(FD,{}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gb,{title:`Dashboards`,subtitle:`Pages of metric charts.`}),(0,W.jsx)(G,{children:(0,W.jsx)(K,{title:`This host keeps no dashboards`,children:`Dashboards run on the hub and on WizeLens Cloud.`})})]})}var LD=250;function RD(e,t={page:null}){let[r,i]=(0,T.useState)(e),a=JSON.stringify(t);return(0,T.useEffect)(()=>i(e),[e]),(0,T.useEffect)(()=>{if(r===e)return;let t=setTimeout(()=>n({q:r,...JSON.parse(a)}),LD);return()=>clearTimeout(t)},[r,e,a]),[r,i]}function zD({value:e}){let[t,n]=RD(e,{page:null});return(0,W.jsx)(Zb,{value:t,onChange:n,placeholder:`Find a user by id…`})}function BD({model:e,loading:t,error:n,what:r}){let i=e?.meta.sampled,a=e?.meta.settling??0;return(0,W.jsxs)(W.Fragment,{children:[t&&!e&&(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-info`,children:[`Loading `,r,`…`]}),n&&(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-error`,children:[`Could not load this page: `,n]}),i&&(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-info`,children:[`Based on the newest `,J(i.used),` of `,J(i.total),` traces in this range. Pick a shorter range for exact numbers.`]}),a>0&&(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-info`,children:[`Stats are catching up: `,J(a),` `,a===1?`trace`:`traces`,` left. Numbers may be low for a few minutes.`]})]})}function VD({kind:e,itemOf:t,tagged:n,...r}){let i=Fx(e,r.rows,t);return(0,W.jsx)(Q,{...r,columns:Vx(r.columns,n,i)})}function HD({group:e,docOf:t,tagged:n,...r}){let i=Ix();return(0,W.jsx)(Q,{...r,columns:Vx(r.columns,n,n=>i(e,t(n)))})}function UD({change:e,upIsGood:t,compareLabel:n}){if(e===null)return(0,W.jsxs)(`div`,{className:`wl-delta`,children:[(0,W.jsx)(`b`,{className:`wl-flat`,children:`No data`}),(0,W.jsx)(`span`,{children:n.replace(/^vs\. /,`for `)})]});let r=Math.abs(e)<.5;return(0,W.jsxs)(`div`,{className:`wl-delta`,children:[(0,W.jsxs)(`b`,{className:r?`wl-flat`:e>0===t?`wl-good`:`wl-bad`,children:[!r&&(0,W.jsx)(e>=0?D_:x_,{"aria-hidden":`true`}),Cb(Math.abs(e))]}),(0,W.jsx)(`span`,{children:n})]})}function $({icon:e,label:t,value:n,change:r,upIsGood:i,compareLabel:a,series:o,danger:s=!1,href:c,note:l}){return(0,W.jsxs)(c?`a`:`section`,{className:`wl-panel wl-stat${c?` wl-stat-link`:``}`,...c?{href:c,title:`See the ${t.toLowerCase()}`}:{},children:[(0,W.jsx)(e,{className:`wl-stat-icon${s?` wl-danger`:``}`,"aria-hidden":!0}),(0,W.jsx)(`div`,{className:`wl-stat-label`,children:t}),(0,W.jsx)(`div`,{}),(0,W.jsx)(`div`,{className:`wl-stat-value`,children:n}),(0,W.jsx)(`div`,{className:`wl-stat-foot`,children:l?(0,W.jsx)(`div`,{className:`wl-delta`,children:(0,W.jsx)(`span`,{children:l})}):(0,W.jsx)(UD,{change:r,upIsGood:i,compareLabel:a})}),o&&(0,W.jsx)(`div`,{className:`wl-stat-spark`,children:(0,W.jsx)(fD,{values:o,width:240,height:28,stretch:!0,color:s?`var(--wl-red)`:`var(--wl-blue)`})})]})}var WD=[{key:`time`,header:`Time`,className:`wl-nowrap`,cell:e=>Ab(e.startMs)},{key:`path`,header:`Request`,className:`wl-cell-wide`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-truncate`,title:e.path,children:[e.method,` `,e.path]})},{key:`status`,header:`Status`,cell:e=>(0,W.jsx)(Kb,{tone:Wb(e.status),children:e.status??`–`})},{key:`duration`,header:`Duration`,num:!0,cell:e=>q(e.durationMs)}];function GD({m:e}){let t=e.totals,n={change:null,upIsGood:!1,compareLabel:e.meta.compareLabel,note:`In this range`};return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)($,{icon:kv,label:`Requests`,value:J(t.requests),series:e.chart.requests,...n,upIsGood:!0}),(0,W.jsx)($,{icon:tb,label:`Error Rate`,value:t.errorRate===null?`–`:Cb(t.errorRate),series:e.chart.errors,danger:!0,...n}),(0,W.jsx)($,{icon:av,label:`Average`,value:q(t.avgMs),series:e.chart.avgMs,...n}),(0,W.jsx)($,{icon:Zy,label:`p95`,value:q(t.p95Ms),...n})]})}function KD({m:e}){let t={user:e.user},n=Ix()(`users`,Ig(e.user)),r=e.totals,i=[...r.name?[[`User id`,(0,W.jsx)(`span`,{className:`wl-mono`,children:e.user})]]:[],[`Requests`,J(r.requests)],[`Failed`,J(r.errors)],[`Error groups`,J(e.errors.length)]],a=(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[(0,W.jsx)(_b,{href:S(`requests`,[],t),label:`Requests`}),(0,W.jsx)(_b,{href:S(`errors`,[],{...t,status:`all`}),label:`Errors`}),(0,W.jsx)(_b,{href:S(`logs`,[],t),label:`Logs`}),(0,W.jsx)(dS,{scopes:[Gg(e.user)]})]});return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(AC,{back:[`#/users`,`All users`],icon:ab,title:r.name??e.user,mono:!r.name,badge:(0,W.jsx)(Bx,{tags:n}),actions:a,stats:i}),(0,W.jsx)(GD,{m:e}),(0,W.jsx)(G,{title:`Requests Over Time`,children:(0,W.jsx)(iE,{starts:e.starts,lines:[{label:`Requests`,values:e.chart.requests,color:`var(--wl-blue)`}],bars:[{label:`Failed`,values:e.chart.errors,color:`var(--wl-red)`}],separateBarScale:!0,height:200})}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(G,{title:`Errors They Hit`,flush:!0,children:(0,W.jsx)(HD,{group:`errors`,docOf:e=>Rg(e.group),tagged:`e`,columns:[{key:`e`,header:`Error`,className:`wl-cell-wide`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-truncate`,children:[e.group.type,`: `,e.group.message]})},{key:`n`,header:`Times`,num:!0,cell:e=>J(e.count)}],rows:e.errors,rowKey:e=>e.group.key,onRowClick:e=>w(he(e.group.key)),empty:(0,W.jsx)(K,{children:`No errors in this range.`})})}),(0,W.jsx)(G,{title:`Slowest Requests`,flush:!0,children:(0,W.jsx)(VD,{kind:`requests`,itemOf:Lx,tagged:`path`,columns:WD,rows:e.slowest,rowKey:e=>e.traceId,onRowClick:e=>w(y(e.traceId)),empty:(0,W.jsx)(K,{children:`No requests.`})})})]}),(0,W.jsx)(G,{title:`Newest Requests`,flush:!0,children:(0,W.jsx)(VD,{kind:`requests`,itemOf:Lx,tagged:`path`,columns:WD,rows:e.recent,rowKey:e=>e.traceId,onRowClick:e=>w(S(`requests`,[],{trace:e.traceId})),empty:(0,W.jsx)(K,{children:`No requests.`})})})]})}function qD({user:e}){let{model:t,loading:n,error:r}=yT(`user`,{user:e});return(0,W.jsxs)(`div`,{className:`wl-dpage`,children:[(0,W.jsx)(BD,{model:t,loading:n,error:r,what:`this user`}),t&&(t.totals?(0,W.jsx)(KD,{m:t}):(0,W.jsx)(G,{children:(0,W.jsxs)(K,{title:`This user did nothing in this time range`,children:[`Pick a longer time range at the top, or go back to `,(0,W.jsx)(`a`,{href:`#/users`,children:`all users`}),`.`]})}))]})}var JD=[{key:`user`,header:`User`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-cell-icon`,children:[(0,W.jsx)(ab,{"aria-hidden":`true`}),e.name??e.user,e.name&&(0,W.jsx)(`span`,{className:`wl-muted wl-mono wl-user-id`,children:e.user})]})},{key:`requests`,header:`Requests`,num:!0,cell:e=>J(e.requests)},{key:`errors`,header:`Failed`,num:!0,cell:e=>e.errors?(0,W.jsx)(`span`,{className:`wl-text-error`,children:J(e.errors)}):`0`},{key:`rate`,header:`Error Rate`,num:!0,cell:e=>e.errorRate===null?`–`:Cb(e.errorRate)},{key:`avg`,header:`Average`,num:!0,cell:e=>q(e.avgMs)},{key:`p95`,header:`p95`,num:!0,cell:e=>q(e.p95Ms)},{key:`last`,header:`Last seen`,className:`wl-nowrap`,cell:e=>Lb(e.lastSeenMs)}];function YD(){let{model:e,loading:t,error:a}=yT(`users`),o=i().query.get(`q`)??``;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gb,{title:`Users`,subtitle:`Signed-in users (enduser.id): who uses the app most, and who runs into failures and slow requests.`}),(0,W.jsx)(`section`,{className:`wl-panel wl-filters`,children:(0,W.jsx)(zD,{value:o})}),(0,W.jsx)(BD,{model:e,loading:t,error:a,what:`users`}),e&&(0,W.jsxs)(G,{title:`Users (${J(e.total)})`,flush:!0,children:[(0,W.jsx)(HD,{group:`users`,docOf:e=>Ig(e.user),tagged:`user`,columns:JD,rows:e.users,rowKey:e=>e.user,onRowClick:e=>w(r(e.user)),empty:(0,W.jsxs)(K,{title:o?`No user matches`:`No signed-in users in this range`,children:[`Send the user's id as `,(0,W.jsx)(`code`,{children:`enduser.id`}),`, and a name as `,(0,W.jsx)(`code`,{children:`user.full_name`}),` if you like, to see them here.`]})}),e.total>0&&(0,W.jsx)($b,{page:e.page,pageSize:e.size,total:e.total,noun:`users`,onPage:e=>n({page:e}),onPageSize:e=>n({size:e,page:null})})]})]})}function XD(){let[e]=i().params;return e?(0,W.jsx)(qD,{user:C(e)},e):(0,W.jsx)(YD,{})}var ZD=`wl-oauth-query`,QD=new Set([`sig`,`exp`,`ba_iat`,`ba_pl`,`ba_param`]);function $D(e){let t=new URLSearchParams(e),n=t.get(`redirect_uri`)??``;return{clientId:t.get(`client_id`)??``,returnHost:URL.canParse(n)?new URL(n).host:n}}var eO=e=>Number(new URLSearchParams(e).get(`exp`)??0)*1e3<Date.now(),tO={get:()=>{try{let e=sessionStorage.getItem(ZD);return e&&!eO(e)?e:null}catch{return null}},set:e=>{try{e?sessionStorage.setItem(ZD,e):sessionStorage.removeItem(ZD)}catch{}}};function nO(e){let t=new URLSearchParams([...new URLSearchParams(e)].filter(([e])=>!QD.has(e)));window.location.assign(`api/auth/oauth2/authorize?${t.toString()}`)}var rO=e=>Ee(t=>t.$fetch(`/oauth2/public-client`,{method:`GET`,query:{client_id:e}}));async function iO(e,t){await Ee(n=>n.$fetch(`/wizelens/oauth-grant`,{method:`POST`,body:{...t,oauth_query:e}})),await aO(e,!0)}async function aO(e,t){let n=await Ee(n=>n.$fetch(`/oauth2/consent`,{method:`POST`,body:{accept:t,oauth_query:e}}));tO.set(null);let r=n.url??n.redirect_uri;r&&window.location.assign(r)}var oO=`M39.36 23.5L90.02 23.5A48 48 0 0 0 51.76 2.03ZM67.63 27.54L92.96 71.41A48 48 0 0 0 92.42 27.54ZM78.27 54.03L52.93 97.91A48 48 0 0 0 90.66 75.5ZM60.64 76.5L9.98 76.5A48 48 0 0 0 48.24 97.97ZM32.37 72.46L7.04 28.59A48 48 0 0 0 7.58 72.46ZM21.73 45.97L47.07 2.09A48 48 0 0 0 9.34 24.5Z`;function sO({dot:e=`var(--wl-blue)`}){return(0,W.jsxs)(`svg`,{viewBox:`0 0 100 100`,"aria-hidden":`true`,children:[(0,W.jsx)(`path`,{className:`wl-brand-blades`,d:oO}),(0,W.jsx)(`circle`,{cx:`50`,cy:`50`,r:`16.8`,fill:e})]})}function cO({dot:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(sO,{dot:e}),(0,W.jsxs)(`span`,{children:[`Wize`,(0,W.jsx)(`span`,{className:`wl-brand-lens`,children:`Lens`})]})]})}function lO({items:e,max:t,compact:n=!1}){let r=t??Math.max(0,...e.map(e=>e.value));return(0,W.jsx)(`div`,{className:`wl-bars`,children:e.map((e,t)=>{let i=r>0?Math.max(1.5,e.value/r*100):0;return(0,W.jsxs)(`div`,{className:`wl-bar-row${n?` wl-compact`:``}${e.onClick?` wl-clickable`:``}`,...e.onClick?{role:`button`,tabIndex:0,onClick:e.onClick,onKeyDown:t=>t.key===`Enter`&&e.onClick?.()}:{},children:[(0,W.jsx)(`span`,{className:`wl-truncate`,children:e.label}),n&&(0,W.jsx)(`span`,{className:`wl-num wl-muted`,children:e.share}),(0,W.jsx)(`div`,{className:`wl-bar-track`,children:(0,W.jsx)(`i`,{style:{width:`${i}%`,background:e.color}})}),!n&&(0,W.jsx)(`span`,{className:`wl-value`,children:e.display})]},e.key??t)})})}function uO({stats:e}){let[t,n]=(0,T.useState)(`slow`),{chart:r,starts:i,slowMs:a}=e,o=r.total,s=t===`slow`?{label:`Slow queries (≥ ${q(a)})`,values:r.slow}:{label:`Avg query duration`,values:r.avg};return(0,W.jsx)(G,{title:t===`slow`?`Slow Queries Over Time`:`Query Duration Over Time`,action:(0,W.jsx)(X,{small:!0,label:`Chart metric`,value:t,onChange:n,options:[[`slow`,`Slow queries`],[`avg`,`Avg duration`]]}),children:e.summary.queries===0?(0,W.jsx)(K,{title:`No queries in this time range`,children:`Database calls show up here once your services run queries.`}):(0,W.jsx)(iE,{starts:i,lines:[{...s,color:`var(--wl-blue)`}],bars:[{label:`Total queries`,values:o,color:`var(--wl-chart-bar)`}],format:t===`avg`?e=>q(e):void 0,separateBarScale:!0})})}var dO={avg:e=>q(e),total:e=>q(e),count:e=>e.toLocaleString(`en-US`)};function fO({stats:e}){let[t,r]=(0,T.useState)(`avg`),i=e.operations.map(r=>{let i=t===`avg`?r.avgMs??0:t===`total`?r.totalMs:r.count;return{key:r.operation,label:r.operation,value:i,display:r.count===0?`–`:dO[t](i),onClick:()=>n({operation:r.operation===e.filter.operation?null:r.operation,page:null})}}),a=Math.max(0,...i.map(e=>e.value));for(let e of i)Object.assign(e,{color:e.value===a?`var(--wl-blue)`:`color-mix(in srgb, var(--wl-blue) 55%, transparent)`});return(0,W.jsx)(G,{title:`Query Duration Breakdown`,action:(0,W.jsx)(X,{small:!0,label:`Breakdown metric`,value:t,onChange:r,options:[[`avg`,`Avg duration`],[`total`,`Total time`],[`count`,`Count`]]}),children:(0,W.jsx)(lO,{items:i})})}var pO=[[`avg`,`Slowest`],[`count`,`Most frequent`],[`total`,`Most total time`]],mO=(e,t)=>t&&!e.includes(t)?[t,...e]:e,hO=e=>e.map(e=>[e,e]);function gO({stats:e}){let t=e.filter,[r,i]=RD(t.q),a=e=>t=>n({[e]:t||null,page:null}),o=mO(e.tables.map(e=>e.table),t.table),s=()=>n({q:null,table:null,operation:null,database:null,sort:null,page:null});return(0,W.jsxs)(`section`,{className:`wl-panel wl-filters`,children:[(0,W.jsx)(hD,{value:t.service}),(0,W.jsx)(X,{label:`Database`,value:t.database,onChange:a(`database`),options:[[``,`All Databases`],...hO(mO(e.databases,t.database))]}),(0,W.jsx)(X,{label:`Operation`,value:t.operation,onChange:a(`operation`),options:[[``,`All Operations`],...hO([...dr])]}),(0,W.jsx)(X,{label:`Table`,value:t.table,onChange:a(`table`),options:[[``,`All Tables`],...hO(o)]}),(0,W.jsx)(X,{label:`Order`,value:t.sort,onChange:a(`sort`),options:pO}),(0,W.jsx)(Zb,{value:r,onChange:i,placeholder:`Search queries…`}),(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn`,onClick:s,children:[(0,W.jsx)(Cy,{"aria-hidden":`true`}),` Reset`]})]})}var _O=e=>[{key:`name`,header:e?`Endpoint`:`Service`,className:`wl-cell-wide`,cell:t=>(0,W.jsx)(`span`,{className:`wl-truncate`,children:e?`${t.endpoint} · ${t.service}`:t.service})},{key:`count`,header:`Count`,num:!0,sort:e=>e.count,cell:e=>J(e.count)},{key:`avg`,header:`Avg`,num:!0,sort:e=>e.avgMs??0,cell:e=>q(e.avgMs)}],vO=[{key:`time`,header:`Time`,className:`wl-nowrap`,cell:e=>Ab(e.startMs)},{key:`path`,header:`Trace`,className:`wl-cell-wide`,cell:e=>(0,W.jsx)(`span`,{className:`wl-truncate`,title:e.path,children:e.path})},{key:`status`,header:`Status`,cell:e=>(0,W.jsx)(Kb,{tone:e.status===`error`?`danger`:`success`,children:e.status===`error`?`Failed`:`OK`})},{key:`duration`,header:`Duration`,num:!0,cell:e=>q(e.durationMs)}];function yO({m:e}){let t=e.totals,n=(t,n)=>e.meta.hasPrev?le(t,n??0):null,r={compareLabel:e.meta.compareLabel,upIsGood:!1};return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)($,{icon:kv,label:`Runs`,value:J(t.count),change:n(t.count,e.prev?.count),series:e.chart.count,...r}),(0,W.jsx)($,{icon:av,label:`Avg Duration`,value:q(t.avgMs),change:n(t.avgMs,e.prev?.avgMs),series:e.chart.avgMs,...r}),(0,W.jsx)($,{icon:tb,label:`Slow (≥ ${q(e.slowMs)})`,value:J(t.slow),change:n(t.slow,e.prev?.slow),series:e.chart.slow,danger:!0,...r}),(0,W.jsx)($,{icon:av,label:`Total Time`,value:q(t.totalMs),change:n(t.totalMs,e.prev?.totalMs),...r})]})}function bO({m:e}){let t={label:xb(e.meta.compare),values:e.chart.prevCount,color:`var(--wl-slate)`,dashed:!0},n=e.slowest?(0,W.jsx)(_b,{href:y(e.slowest.traceId,`sql`),label:`Slowest run: ${q(e.slowest.durationMs)}`}):null;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(yO,{m:e}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(G,{title:`Runs Over Time`,children:(0,W.jsx)(iE,{starts:e.starts,lines:[{label:`Runs`,values:e.chart.count,color:`var(--wl-blue)`},t],height:220,format:J})}),(0,W.jsx)(G,{title:`Duration Over Time`,action:n,children:(0,W.jsx)(iE,{starts:e.starts,lines:[{label:`Avg duration`,values:e.chart.avgMs,color:`var(--wl-blue)`}],bars:[{label:`Slow runs`,values:e.chart.slow,color:`color-mix(in srgb, var(--wl-red) 45%, transparent)`}],height:220,separateBarScale:!0,format:e=>q(e)})})]}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(G,{title:`Services`,flush:!0,children:(0,W.jsx)(HD,{group:`services`,docOf:e=>Lg(e.service),tagged:`name`,columns:_O(!1),rows:e.services,rowKey:e=>e.service,onRowClick:e=>w(HS(e.service)),empty:(0,W.jsx)(K,{children:`No service ran it.`})})}),(0,W.jsx)(G,{title:`Endpoints`,flush:!0,children:(0,W.jsx)(HD,{group:`endpoints`,docOf:e=>Fg(e.service,e.endpoint),tagged:`name`,columns:_O(!0),rows:e.endpoints,rowKey:e=>`${e.service} ${e.endpoint}`,onRowClick:e=>w(_e(e.service,e.endpoint)),empty:(0,W.jsx)(K,{children:`It ran outside requests (jobs, workers).`})})})]}),(0,W.jsx)(G,{title:`Newest Traces (${J(e.traces.length)})`,flush:!0,children:(0,W.jsx)(VD,{kind:`traces`,itemOf:Lx,tagged:`path`,columns:vO,rows:e.traces,rowKey:e=>e.traceId,onRowClick:e=>w(y(e.traceId,`sql`)),empty:(0,W.jsx)(K,{children:`No trace in this range.`})})})]})}function xO({query:e}){let{model:t,loading:n,error:r}=yT(`query`,{q:e}),i=t?.totals?[[`Runs`,J(t.totals.count)],[`Average`,q(t.totals.avgMs)],[`Errors`,J(t.totals.errors)],[`System`,t.slowest?.system??`–`]]:[];return(0,W.jsxs)(`div`,{className:`wl-dpage wl-db-page`,children:[(0,W.jsx)(BD,{model:t,loading:n,error:r,what:`this query`}),(0,W.jsx)(AC,{back:[S(`database`),`All queries`],icon:pv,title:e,mono:!0,actions:(0,W.jsx)(Xb,{text:e,label:`Copy query`}),stats:i}),t&&!t.totals&&(0,W.jsx)(G,{children:(0,W.jsx)(K,{title:`This query did not run in this time range`,children:`Pick a longer time range at the top.`})}),t?.totals&&(0,W.jsx)(bO,{m:t})]})}function SO(e){if(e==null)return``;let t=String(e);return/[",\r\n]/.test(t)?`"${t.replace(/"/g,`""`)}"`:t}function CO(e,t){return[e.map(([e])=>e).join(`,`),...t.map(t=>e.map(([,e])=>SO(e(t))).join(`,`))].join(`\r
|
|
23
|
+
`)}var wO=e=>e?new Date(e).toISOString():``,TO=e=>e==null?null:Math.round(e*100)/100;function EO(e,t){let n=new Blob([t],{type:`text/csv;charset=utf-8`}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=`wizelens-${e}-${new Date().toISOString().slice(0,19).replace(/[:T]/g,`-`)}.csv`,document.body.appendChild(i),i.click(),i.remove(),setTimeout(()=>URL.revokeObjectURL(r),1e3)}function DO(e){let t=[...new Set(e.flatMap(e=>Object.entries(e).filter(([,e])=>typeof e!=`object`||!e||Array.isArray(e)).map(([e])=>e)))],n=e=>Array.isArray(e)?e.join(` `):e;return CO(t.map(e=>[e,t=>n(t[e])]),e)}var OO=[[`last_seen`,e=>wO(e.lastSeenMs)],[`first_seen`,e=>wO(e.firstSeenMs)],[`service`,e=>e.service],[`type`,e=>e.type],[`message`,e=>e.message],[`endpoint`,e=>e.endpoint],[`count`,e=>e.count],[`critical`,e=>e.critical],[`latest_trace_id`,e=>e.latest.traceId],[`group`,e=>e.key]],kO=[[`time`,e=>wO(e.timeMs)],[`level`,e=>e.level],[`service`,e=>e.service],[`category`,e=>e.category],[`message`,e=>e.message],[`trace`,e=>e.traceName],[`trace_id`,e=>e.traceId],[`span_id`,e=>e.spanId]],AO=[[`query`,e=>e.query],[`system`,e=>e.system],[`count`,e=>e.count],[`avg_ms`,e=>TO(e.avgMs)],[`max_ms`,e=>TO(e.maxMs)],[`total_ms`,e=>TO(e.totalMs)],[`slow`,e=>e.slow],[`errors`,e=>e.errors],[`endpoints`,e=>e.endpoints.join(` `)],[`example_trace_id`,e=>e.exampleTraceId]],jO=[[`trace_id`,e=>e.traceId],[`path`,e=>e.path],[`duration_ms`,e=>TO(e.durationMs)],[`status`,e=>e.status],[`health`,e=>e.health],[`services`,e=>e.services.join(` `)]],MO=[[`impact`,e=>e.impact],[`area`,e=>e.area],[`title`,e=>e.title],[`shape`,e=>e.shape],[`seen_in`,e=>e.occurrences],[`repeats`,e=>e.count],[`total_ms`,e=>TO(e.totalMs)],[`endpoints`,e=>e.endpoints.join(` `)],[`last_seen`,e=>wO(e.lastSeenMs)],[`example_trace_id`,e=>e.exampleTraceId]],NO={errors:e=>CO(OO,e.groups),logs:e=>CO(kO,e.rows),database:e=>CO(AO,e.queries),traces:e=>CO(jO,e.recent),insights:e=>CO(MO,e.groups)},PO=5e3;function FO({page:e,disabled:t=!1}){let[n]=t_(),r=H().has(`serverStats`),a=i().query,[o,s]=(0,T.useState)(!1);return(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn wl-btn-sm`,onClick:()=>{s(!0),gT(e,{...Object.fromEntries(a),page:`1`,size:String(PO)},n,r).then(t=>EO(e,NO[e](t))).finally(()=>s(!1))},disabled:t||o,title:`Download as CSV (up to ${PO.toLocaleString()} rows)`,children:[(0,W.jsx)(rb,{"aria-hidden":`true`}),` Export`]})}var IO=5,LO=e=>e.replace(/^[A-Z]+ /,``);function RO({q:e}){let t=e.endpoints[0];if(!t)return(0,W.jsx)(W.Fragment,{children:`–`});let n=e.endpoints.length>1?` +${e.endpoints.length-1}`:``;return(0,W.jsxs)(`a`,{className:`wl-path-chip`,href:S(`requests`,[],{endpoint:t}),title:e.endpoints.join(`
|
|
24
|
+
`),onClick:e=>e.stopPropagation(),children:[LO(t),n]})}var zO=e=>(0,W.jsx)(`span`,{className:e?`wl-text-error`:void 0,children:J(e)});function BO(e){return[{key:`query`,header:`Query`,className:`wl-db-query`,cell:e=>(0,W.jsx)(`span`,{className:`wl-truncate`,title:e.query,children:e.query})},{key:`avg`,header:`Avg`,num:!0,cell:t=>(0,W.jsx)(`span`,{className:t.avgMs>=e?`wl-text-error`:void 0,children:q(t.avgMs)})},{key:`max`,header:`Max`,num:!0,cell:e=>q(e.maxMs)},{key:`count`,header:`Count`,num:!0,cell:e=>J(e.count)},{key:`total`,header:`Total Time`,num:!0,cell:e=>q(e.totalMs)},{key:`slow`,header:`Slow`,num:!0,cell:e=>zO(e.slow)},{key:`errors`,header:`Errors`,num:!0,cell:e=>zO(e.errors)},{key:`endpoint`,header:`Endpoint`,cell:e=>(0,W.jsx)(RO,{q:e})}]}var VO={avg:`Slowest Queries`,count:`Most Frequent Queries`,total:`Queries by Total Time`};function HO({open:e,total:t,onToggle:n}){return t<=IO?null:(0,W.jsx)(`button`,{type:`button`,className:`wl-view-all wl-link-btn`,onClick:n,children:e?`Show top ${IO}`:`View all ${t}`})}function UO({stats:e}){return(0,W.jsxs)(G,{title:`${VO[e.filter.sort]} (${J(e.queryShapes)})`,flush:!0,className:`wl-db-queries`,action:(0,W.jsx)(FO,{page:`database`,disabled:e.queries.length===0}),children:[(0,W.jsx)(Q,{columns:BO(e.slowMs),rows:e.queries,rowKey:e=>e.key,onRowClick:e=>w(Ue(e.query)),empty:(0,W.jsx)(K,{children:`No queries match in this time range.`})}),e.queryShapes>0&&(0,W.jsx)($b,{page:e.page,pageSize:e.size,total:e.queryShapes,noun:`queries`,onPage:e=>n({page:e}),onPageSize:e=>n({size:e,page:null})})]})}var WO=[{key:`table`,header:`Table`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-cell-icon`,children:[(0,W.jsx)(pv,{"aria-hidden":`true`}),e.table]})},{key:`queries`,header:`Queries`,num:!0,sort:e=>e.queries,cell:e=>J(e.queries)},{key:`avg`,header:`Avg Duration`,num:!0,sort:e=>e.avgMs,cell:e=>q(e.avgMs)},{key:`rows`,header:`Rows Returned`,num:!0,sort:e=>e.rows??-1,cell:e=>e.rows===null?`–`:Tb(e.rows)}];function GO({stats:e}){let[t,r]=(0,T.useState)(!1),i=t?e.tables:e.tables.slice(0,IO);return(0,W.jsxs)(G,{title:`Table Hotspots (${Sb(e.tables.length,e.tableCount)})`,action:(0,W.jsx)(HO,{open:t,total:e.tables.length,onToggle:()=>r(!t)}),children:[(0,W.jsx)(Q,{columns:WO,rows:i,rowKey:e=>e.table,selectedKey:e.filter.table||null,onRowClick:t=>n({table:t.table===e.filter.table?null:t.table,page:null}),empty:(0,W.jsx)(K,{children:`No table names found in the queries.`})}),(0,W.jsx)(`p`,{className:`wl-db-note`,children:`Rows returned come from the driver. Index use and rows scanned need query plans, which WizeLens does not run.`})]})}var KO={database:pv,http:Fv,render:ay};function qO({insight:e}){let t=e.impact===`medium`?tb:KO[e.area];return(0,W.jsxs)(`a`,{className:`wl-insight-card`,href:S(`insights`,[],{key:e.key}),children:[(0,W.jsx)(`span`,{className:`wl-insight-icon wl-impact-${e.impact}`,children:(0,W.jsx)(t,{"aria-hidden":`true`})}),(0,W.jsxs)(`span`,{className:`wl-insight-body`,children:[(0,W.jsxs)(`span`,{className:`wl-insight-title`,children:[(0,W.jsx)(`strong`,{children:e.title}),(0,W.jsx)(Jb,{impact:e.impact})]}),(0,W.jsx)(`span`,{className:`wl-insight-text`,children:e.description})]}),(0,W.jsx)(tv,{className:`wl-insight-go`,"aria-hidden":`true`})]})}function JO({insights:e,area:t}){return(0,W.jsx)(G,{title:`Latest Insights`,action:(0,W.jsx)(_b,{href:S(`insights`,[],{area:t}),label:`View all insights`}),children:e.length===0?(0,W.jsx)(K,{children:`No problems found in this time range.`}):(0,W.jsx)(`div`,{className:`wl-insight-cards`,children:e.slice(0,3).map(e=>(0,W.jsx)(qO,{insight:e},e.key))})})}function YO({stats:e}){let{summary:t,change:n,sparks:r,insights:i,meta:a}=e,o=a.compareLabel;return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)($,{icon:pv,label:`SQL Queries`,value:J(t.queries),change:n.queries,upIsGood:!1,compareLabel:o,series:r.queries}),(0,W.jsx)($,{icon:av,label:`Avg Query Duration`,value:q(t.avgMs),change:n.avgMs,upIsGood:!1,compareLabel:o,series:r.avgMs}),(0,W.jsx)($,{icon:tb,label:`Slow Queries`,value:J(t.slow),change:n.slow,upIsGood:!1,compareLabel:o,series:r.slow,danger:!0}),(0,W.jsx)($,{icon:Yv,label:`Potential Improvements`,href:S(`insights`,[],{area:`database`}),value:J(i.length),change:n.insights,upIsGood:!1,compareLabel:o})]})}function XO(){let[e,t]=i().params;return e===`queries`&&t?(0,W.jsx)(xO,{query:C(t)},t):(0,W.jsx)(ZO,{})}function ZO(){let{model:e,loading:t,error:n}=yT(`database`);return(0,W.jsxs)(`div`,{className:`wl-db-page`,children:[(0,W.jsx)(gb,{title:`Database`,subtitle:`SQL visibility, query performance, and optimization opportunities across your stack.`}),(0,W.jsx)(BD,{model:e,loading:t,error:n,what:`queries`}),e&&(0,W.jsx)(QO,{stats:e})]})}function QO({stats:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gO,{stats:e}),(0,W.jsx)(YO,{stats:e}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2`,children:[(0,W.jsx)(uO,{stats:e}),(0,W.jsx)(fO,{stats:e})]}),(0,W.jsx)(`div`,{className:`wl-grid`,children:(0,W.jsx)(UO,{stats:e})}),(0,W.jsx)(`div`,{className:`wl-grid`,children:(0,W.jsx)(GO,{stats:e})}),(0,W.jsx)(JO,{insights:e.insights,area:`database`})]})}var $O=[[/Edg\//,`Edge`],[/OPR\//,`Opera`],[/Firefox\//,`Firefox`],[/Chrome\//,`Chrome`],[/Safari\//,`Safari`]],ek=[[/iPhone|iPad/,`iOS`],[/Android/,`Android`],[/Windows/,`Windows`],[/Mac OS X|Macintosh/,`macOS`],[/CrOS/,`ChromeOS`],[/Linux/,`Linux`]];function tk(e){if(!e)return`Unknown device`;let t=$O.find(([t])=>t.test(e))?.[1],n=ek.find(([t])=>t.test(e))?.[1];return t?n?`${t} on ${n}`:t:e.length>40?`${e.slice(0,40)}…`:e}function nk({info:e,kind:t=`error`}){return e?e.status===`regressed`?(0,W.jsx)(Y,{tone:`danger`,children:`Regressed`}):e.status===`resolved`?(0,W.jsx)(Y,{tone:`success`,children:t===`insight`?`Fixed`:`Resolved`}):e.status===`ignored`?(0,W.jsx)(Y,{tone:`neutral`,children:t===`insight`?`Dismissed`:`Ignored`}):e.isNew?(0,W.jsx)(Y,{tone:`info`,children:`New`}):null:null}var rk=36e5,ik=[[String(rk),`For 1 hour`],[String(24*rk),`For 1 day`],[String(168*rk),`For 1 week`],[`0`,`For good`]],ak={error:[`Resolve`,`Ignore`],insight:[`Mark fixed`,`Dismiss`]};function ok({kind:e,issueKey:t,info:n}){let{on:r,members:i}=Mw(),a=H().has(`accounts`),[o,s]=(0,T.useState)(null);if(!r)return null;let c=async(n,r={})=>s(await Nw(a,e,t,n,r)),l=!n||n.status===`unresolved`||n.status===`regressed`,[u,d]=ak[e],f=[[``,`Unassigned`],...i.map(e=>[e.id,e.name||e.email])];return(0,W.jsxs)(`div`,{className:`wl-issue-actions`,children:[l?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:()=>void c(`resolve`),children:u}),(0,W.jsx)(X,{small:!0,label:d,value:``,options:[[``,`${d}…`],...ik],onChange:e=>e!==``&&void c(`ignore`,{untilMs:e===`0`?null:Date.now()+Number(e)})})]}):(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:()=>void c(`reopen`),children:`Reopen`}),a&&i.length>0&&(0,W.jsx)(X,{small:!0,label:`Assignee`,value:n?.assignee??``,options:f,onChange:e=>void c(`assign`,{assignee:e||null})}),o&&(0,W.jsx)(`span`,{className:`wl-text-error wl-small`,children:o})]})}function sk({fields:e,label:t=`Alert on this`}){return H().has(`alerts`)?(0,W.jsxs)(`a`,{className:`wl-btn wl-btn-sm`,href:We(e),children:[(0,W.jsx)(k_,{"aria-hidden":`true`}),` `,t]}):null}var ck=e=>e.replace(/^[A-Z]+ /,``);function lk({groups:e,index:t}){let r=t=>n({group:e[t]?.key});return(0,W.jsxs)(`div`,{className:`wl-err-nav`,children:[(0,W.jsx)(`button`,{type:`button`,"aria-label":`Previous error`,disabled:t<=0,onClick:()=>r(t-1),children:(0,W.jsx)($_,{size:16})}),(0,W.jsx)(`button`,{type:`button`,"aria-label":`Next error`,disabled:t>=e.length-1,onClick:()=>r(t+1),children:(0,W.jsx)(tv,{size:16})})]})}var uk=e=>e.latest.method?S(`requests`,[],{endpoint:e.endpoint,status:`failed`}):S(`requests`,[],{q:ck(e.endpoint),status:`failed`});function dk({group:e}){let t=e.latest.browser?ay:e.type.toLowerCase().includes(`db`)||e.type.toLowerCase().includes(`sql`)?pv:ky;return(0,W.jsxs)(`div`,{className:`wl-err-occ`,children:[(0,W.jsxs)(`span`,{className:`wl-cell-icon`,children:[(0,W.jsx)(t,{"aria-hidden":`true`}),J(e.count),` occurrence`,e.count===1?``:`s`]}),(0,W.jsxs)(`a`,{className:`wl-view-all`,href:uk(e),children:[`View affected requests `,(0,W.jsx)(T_,{"aria-hidden":`true`})]})]})}function fk(e){let t=e.latest;return[...t.frame?[[`Source`,(0,W.jsx)(`span`,{className:`wl-mono`,children:t.frame},`f`)]]:[],...t.release?[[`Release`,t.release]]:[]]}var pk=e=>[qg(e),...e.latest.method?[Ug(e.service,e.endpoint)]:[],Wg(e.service)];function mk({group:e,info:t}){let[n,r]=(0,T.useState)(`stack`),i=Ix()(`errors`,Rg(e));return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`wl-side-head`,children:[(0,W.jsxs)(`h2`,{className:`wl-err-title`,children:[e.type,`: `,e.message]}),(0,W.jsx)(Y,{tone:`danger`,children:e.critical?`Critical`:`Error`}),(0,W.jsx)(nk,{info:t})]}),(0,W.jsxs)(`div`,{className:`wl-err-tagline`,children:[(0,W.jsx)(Bx,{tags:i}),(0,W.jsx)(dS,{scopes:pk(e)})]}),(0,W.jsx)(ok,{kind:`error`,issueKey:e.key,info:t}),(0,W.jsxs)(`a`,{className:`wl-btn wl-btn-primary-outline wl-err-full`,href:he(e.key),children:[(0,W.jsx)(_v,{"aria-hidden":`true`}),` View full error`]}),(0,W.jsx)(dk,{group:e}),(0,W.jsx)(vb,{rows:[[`Endpoint`,(0,W.jsx)(`span`,{className:`wl-mono`,children:ck(e.endpoint)},`e`)],[`Service`,e.service],...fk(e),[`First seen`,Mb(t?.firstSeenMs||e.firstSeenMs)],[`Last seen`,Mb(e.lastSeenMs)]]}),(0,W.jsxs)(`div`,{className:`wl-err-tabs`,children:[(0,W.jsx)(yb,{tabs:[[`stack`,`Stack Trace`],[`context`,`Request Context`],[`tags`,`Tags`]],value:n,onChange:r}),n===`stack`&&(0,W.jsx)(MS,{event:e.latest}),n===`context`&&(0,W.jsx)(TS,{event:e.latest}),n===`tags`&&(0,W.jsx)(ES,{event:e.latest})]})]})}function hk({groups:e,group:t,linked:n,issues:r}){let i=t?e.findIndex(e=>e.key===t.key):-1,a=n?(0,W.jsx)(K,{title:`This error is not in the selected time range`,children:`Pick a longer time range at the top, or pick another exception.`}):(0,W.jsx)(K,{title:`No error selected`,children:`Pick an exception to see its details.`});return(0,W.jsx)(G,{title:`Error Details`,action:i>=0&&e.length>1&&(0,W.jsx)(lk,{groups:e,index:i}),className:`wl-err-details`,children:t?(0,W.jsx)(mk,{group:t,info:r[t.key]},t.key):a})}var gk=[{key:`time`,header:`Time`,className:`wl-nowrap`,cell:e=>Ab(e.startMs)},{key:`path`,header:`Request`,className:`wl-cell-wide`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-truncate`,title:e.path,children:[e.method,` `,e.path]})},{key:`status`,header:`Status`,cell:e=>(0,W.jsx)(Kb,{tone:Wb(e.status),children:e.status??`–`})},{key:`user`,header:`User`,className:`wl-nowrap`,cell:e=>e.user??(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`})},{key:`browser`,header:`Browser`,className:`wl-nowrap`,cell:e=>e.userAgent?tk(e.userAgent):(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`})},{key:`duration`,header:`Duration`,num:!0,cell:e=>q(e.durationMs)}];function _k({m:e}){let t=e.group,n={upIsGood:!1,compareLabel:e.meta.compareLabel};return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)($,{icon:U_,label:`Occurrences`,value:J(t.count),change:e.meta.hasPrev?le(t.count,e.prevCount):null,series:e.chart.count,danger:!0,...n}),(0,W.jsx)($,{icon:j_,label:`Critical`,value:J(e.chart.critical.reduce((e,t)=>e+(t??0),0)),change:null,series:e.chart.critical,danger:!0,...n}),(0,W.jsx)($,{icon:V_,label:`Endpoints`,value:J(e.endpoints.length),change:null,...n}),(0,W.jsx)($,{icon:sb,label:`Users Affected`,value:J(e.users.count),change:null,href:S(`users`),...n,note:`In this range`})]})}function vk({m:e}){let t=e=>e.slice(0,8).map(e=>({key:e.value,label:e.value,value:e.count,display:J(e.count)})),n=e.endpoints.map(e=>({key:e.endpoint,label:e.endpoint,value:e.count,display:J(e.count),onClick:()=>w(S(`requests`,[],{endpoint:e.endpoint,status:`failed`}))}));return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-3`,children:[(0,W.jsx)(G,{title:`Endpoints`,children:n.length?(0,W.jsx)(lO,{items:n}):(0,W.jsx)(K,{children:`No endpoint recorded.`})}),(0,W.jsx)(G,{title:`Users Affected (${J(e.users.count)})`,children:e.users.count?(0,W.jsx)(lO,{items:e.users.top.map(e=>({key:e.user,label:e.user,value:e.count,display:J(e.count),onClick:()=>w(r(e.user))}))}):(0,W.jsxs)(K,{children:[`No user was signed in, or the app does not send `,(0,W.jsx)(`code`,{children:`enduser.id`}),`.`]})}),(0,W.jsx)(G,{title:`Browsers (newest 50)`,children:e.requests.some(e=>e.userAgent)?(0,W.jsx)(lO,{items:t(Du(e.requests,e=>e.userAgent?tk(e.userAgent):null))}):(0,W.jsx)(K,{children:`No user agent recorded.`})})]})}var yk=e=>e.latest.method?{metric:`error_rate`,service:e.service,endpoint:e.endpoint,name:`${e.endpoint} errors`}:{metric:`new_errors`,service:e.service,name:`New errors in ${e.service}`};function bk({m:e}){let t=e.group,n=Ix()(`errors`,Rg(t)),r=[[`Service`,(0,W.jsx)(`a`,{href:HS(t.service),children:t.service},`s`)],[`Type`,t.type],[`First seen`,Mb(e.issue?.firstSeenMs||t.firstSeenMs)],[`Last seen`,Mb(t.lastSeenMs)]],i=(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(Y,{tone:`danger`,children:t.critical?`Critical`:`Error`}),` `,(0,W.jsx)(nk,{info:e.issue??void 0}),` `,(0,W.jsx)(Bx,{tags:n})]}),a=[{label:`Critical`,values:e.chart.critical,color:`var(--wl-red)`},{label:`Errors`,values:e.chart.count.map((t,n)=>(t??0)-(e.chart.critical[n]??0)),color:`color-mix(in srgb, var(--wl-red) 35%, transparent)`}];return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(AC,{back:[S(`errors`,[],{service:t.service}),`All errors`],icon:U_,title:`${t.type}: ${t.message}`,badge:i,actions:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(ok,{kind:`error`,issueKey:t.key,info:e.issue??void 0}),(0,W.jsx)(sk,{fields:yk(t)}),(0,W.jsx)(dS,{scopes:pk(t)})]}),stats:r}),(0,W.jsx)(_k,{m:e}),(0,W.jsx)(G,{title:`Occurrences Over Time`,children:(0,W.jsx)(iE,{starts:e.starts,stackBars:!0,bars:a,lines:[{label:xb(e.meta.compare),values:e.chart.prev,color:`var(--wl-slate)`,dashed:!0}]})}),(0,W.jsx)(vk,{m:e}),(0,W.jsx)(G,{title:`Latest Stack Trace`,children:(0,W.jsx)(MS,{event:t.latest})}),(0,W.jsx)(G,{title:`Newest Occurrences (${J(e.requests.length||e.traces.length)})`,flush:!0,action:(0,W.jsx)(_b,{href:y(t.latest.traceId),label:`Open latest trace`}),children:(0,W.jsx)(VD,{kind:`requests`,itemOf:Lx,tagged:`path`,columns:gk,rows:e.requests,rowKey:e=>e.traceId,onRowClick:e=>w(y(e.traceId,`errors`)),empty:(0,W.jsx)(K,{children:`These occurrences were not requests (for example browser errors). Open the latest trace to see one.`})})})]})}function xk({group:e}){let{model:t,loading:n,error:r}=yT(`error`,{group:e});return(0,W.jsxs)(`div`,{className:`wl-dpage wl-errors-page`,children:[(0,W.jsx)(BD,{model:t,loading:n,error:r,what:`this error`}),t&&(t.group?(0,W.jsx)(bk,{m:t}):(0,W.jsx)(G,{children:(0,W.jsxs)(K,{title:`This error did not happen in this time range`,children:[`Pick a longer time range at the top, or go back to `,(0,W.jsx)(`a`,{href:S(`errors`),children:`all errors`}),`.`]})}))]})}function Sk({stats:e}){let{starts:t}=e,{plain:n,critical:r}=e.chart;return(0,W.jsx)(G,{title:`Errors Over Time`,children:e.exceptions===0?(0,W.jsx)(K,{title:`No errors in this time range`,children:(0,W.jsx)(q_,{"aria-hidden":`true`})}):(0,W.jsx)(iE,{starts:t,stackBars:!0,lines:[{label:xb(e.meta.compare),values:e.chart.prev,color:`var(--wl-slate)`,dashed:!0}],bars:[{label:`Critical errors`,values:r,color:`var(--wl-red)`},{label:`Errors`,values:n,color:`color-mix(in srgb, var(--wl-red) 35%, transparent)`}]})})}var Ck=5;function wk({stats:e}){let[t,r]=(0,T.useState)(!1),i=t?e.types:e.types.slice(0,Ck),a=i[0]?.count??0,o=i.map(t=>({key:t.type,label:t.type,value:t.count,display:J(t.count),color:t.count===a?`var(--wl-red)`:`color-mix(in srgb, var(--wl-red) 50%, transparent)`,onClick:()=>n({type:t.type===e.filter.type?null:t.type,page:null,group:null})})),s=e.types.length>Ck&&(0,W.jsx)(`button`,{type:`button`,className:`wl-view-all wl-link-btn`,onClick:()=>r(!t),children:t?`Show top ${Ck}`:`View all ${e.types.length}`});return(0,W.jsx)(G,{title:`Top Error Types`,action:s,children:o.length===0?(0,W.jsx)(K,{children:`No exception types yet.`}):(0,W.jsx)(lO,{items:o})})}function Tk({chips:e}){let t=e.filter(([,,e])=>e);return t.length===0?null:(0,W.jsx)(`div`,{className:`wl-filter-chips`,children:t.map(([e,t,r])=>(0,W.jsxs)(`button`,{type:`button`,className:`wl-filter-chip`,onClick:()=>n({[t]:null,page:null}),title:`Clear the ${e.toLowerCase()} filter`,children:[(0,W.jsxs)(`span`,{className:`wl-muted`,children:[e,`:`]}),(0,W.jsx)(`span`,{className:`wl-truncate`,children:r}),(0,W.jsx)(db,{size:13,"aria-hidden":`true`})]},t))})}var Ek=[[`recent`,`Most recent`],[`count`,`Most frequent`]],Dk=[[`unresolved`,`Unresolved`],[`resolved`,`Resolved`],[`ignored`,`Ignored`],[`all`,`All Statuses`]],Ok=(e,t)=>t&&!e.includes(t)?[t,...e]:e,kk=e=>e.replace(/^[A-Z]+ /,``);function Ak({stats:e}){let t=e.filter,[r,i]=RD(t.q,{page:null,group:null}),a=e=>t=>n({[e]:t||null,page:null,group:null}),o=Ok(e.types.map(e=>e.type),t.type),s=Ok(e.endpoints.map(e=>e.endpoint),t.endpoint),c=()=>n({type:null,endpoint:null,critical:null,q:null,sort:null,status:null,new:null,release:null,user:null,page:null,group:null}),l=Ok(e.releases.map(e=>e.version),t.release),u=e=>t=>n({[e]:t.target.checked?`1`:null,page:null,group:null});return(0,W.jsxs)(`section`,{className:`wl-panel wl-filters`,children:[(0,W.jsx)(hD,{value:t.service,services:e.services.map(e=>e.service)}),e.hasIssues&&(0,W.jsx)(X,{label:`Status`,value:t.status,onChange:e=>n({status:e===`unresolved`?null:e,page:null,group:null}),options:Dk}),l.length>0&&(0,W.jsx)(X,{label:`Release`,value:t.release,onChange:a(`release`),options:[[``,`Any Release`],...l.map(e=>[e,`New in ${e}`])]}),(0,W.jsx)(X,{label:`Error type`,value:t.type,onChange:a(`type`),options:[[``,`All Types`],...o.map(e=>[e,e])]}),(0,W.jsx)(X,{label:`Endpoint`,value:t.endpoint,onChange:a(`endpoint`),options:[[``,`All Endpoints`],...s.map(e=>[e,kk(e)])]}),(0,W.jsx)(X,{label:`Order`,value:t.sort,onChange:a(`sort`),options:Ek}),(0,W.jsx)(Zb,{value:r,onChange:i,placeholder:`Search errors by type or message…`}),(0,W.jsx)(eS,{label:`Critical only`,checked:t.critical,onChange:u(`critical`)}),(0,W.jsx)(eS,{label:`New only`,checked:t.fresh,onChange:u(`new`)}),(0,W.jsx)(Tk,{chips:[[`User`,`user`,t.user]]}),(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn`,onClick:c,children:[(0,W.jsx)(Cy,{"aria-hidden":`true`}),` Reset`]})]})}var jk=e=>e.replace(/^[A-Z]+ /,``),Mk=e=>[{key:`time`,header:`Time`,className:`wl-nowrap`,sort:e=>e.lastSeenMs,cell:e=>Ab(e.lastSeenMs)},{key:`status`,header:`Status`,cell:t=>(0,W.jsxs)(`span`,{className:`wl-err-status`,children:[(0,W.jsx)(Kb,{tone:`danger`,colorText:!0,children:t.critical?`Critical`:`Error`}),(0,W.jsx)(nk,{info:e[t.key]})]})},{key:`error`,header:`Error`,className:`wl-err-text`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-truncate`,title:`${e.type}: ${e.message}`,children:[e.type,`: `,e.message]})},{key:`endpoint`,header:`Endpoint`,className:`wl-err-endpoint`,cell:e=>(0,W.jsx)(`span`,{className:`wl-truncate`,title:e.endpoint,children:jk(e.endpoint)})},{key:`service`,header:`Service`,className:`wl-nowrap`,cell:e=>e.service},{key:`count`,header:`Count`,num:!0,sort:e=>e.count,cell:e=>J(e.count)}];function Nk({stats:e,selected:t}){let r=Ic(e.filter),i=e.filter.sort===`count`?`Most Frequent Exceptions`:`Recent Exceptions`,a=Ix();return(0,W.jsxs)(G,{title:`${i} (${J(e.groupCount)})`,flush:!0,className:`wl-err-list`,action:(0,W.jsx)(FO,{page:`errors`,disabled:e.groupCount===0}),children:[(0,W.jsx)(Q,{columns:Vx(Mk(e.issues),`error`,e=>a(`errors`,Rg(e))),rows:e.groups,rowKey:e=>e.key,selectedKey:t,onRowClick:e=>n({group:e.key}),empty:(0,W.jsx)(K,{title:r?`No matching exceptions`:`No exceptions`,children:r?`Try another filter or a wider time range.`:`Nothing failed in this time range.`})}),e.groupCount>0&&(0,W.jsx)($b,{page:e.page,pageSize:e.size,total:e.groupCount,noun:`groups`,onPage:e=>n({page:e}),onPageSize:e=>n({size:e,page:null})})]})}function Pk({now:e,before:t}){let n=le(e,t);return n===null?(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`}):(0,W.jsxs)(`span`,{className:`wl-err-change ${n>0?`wl-text-error`:`wl-text-ok`}`,children:[(0,W.jsx)(n>=0?D_:x_,{"aria-hidden":`true`}),Cb(Math.abs(n))]})}function Fk(){return[{key:`service`,header:`Service`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-cell-icon`,children:[e.service===`Web App`?(0,W.jsx)(ay,{"aria-hidden":`true`}):(0,W.jsx)(z_,{"aria-hidden":`true`}),e.service]})},{key:`exceptions`,header:`Exceptions`,num:!0,sort:e=>e.exceptions,cell:e=>J(e.exceptions)},{key:`rate`,header:`Error Rate`,num:!0,sort:e=>e.errorRate,cell:e=>e.requests?Cb(e.errorRate):`–`},{key:`trend`,header:`Trend`,cell:e=>(0,W.jsx)(fD,{values:e.trend,width:110,height:24,color:`var(--wl-red)`})},{key:`change`,header:``,num:!0,cell:e=>(0,W.jsx)(Pk,{now:e.exceptions,before:e.prevExceptions})}]}function Ik({stats:e}){let t=mD();return(0,W.jsx)(G,{title:`Errors by Service`,children:(0,W.jsx)(Q,{columns:Fk(),rows:e.services,rowKey:e=>e.service,selectedKey:e.filter.service||null,onRowClick:n=>t(n.service===e.filter.service?``:n.service),empty:(0,W.jsx)(K,{children:`No services seen yet.`})})})}function Lk({stats:e}){let{cards:t,change:n,sparks:r,meta:i}=e,a={upIsGood:!1,compareLabel:i.compareLabel,danger:!0};return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)($,{icon:U_,label:`Total Exceptions`,value:J(t.exceptions),change:n.exceptions,series:r.exceptions,...a}),(0,W.jsx)($,{icon:tb,label:`Error Rate`,value:e.hasRequests?Cb(t.errorRate):`–`,change:n.errorRate,series:r.errorRate,...a}),(0,W.jsx)($,{icon:V_,label:`Impacted Endpoints`,value:J(t.endpoints),change:n.endpoints,...a,danger:!1}),(0,W.jsx)($,{icon:j_,label:`Critical Incidents`,href:S(`errors`,[],{critical:`1`}),value:J(t.critical),change:n.critical,series:r.critical,...a})]})}function Rk(){let[e]=i().params;return e?(0,W.jsx)(xk,{group:C(e)},e):(0,W.jsx)(zk,{})}function zk(){let{model:e,loading:t,error:n}=yT(`errors`);return(0,W.jsxs)(`div`,{className:`wl-errors-page`,children:[(0,W.jsx)(gb,{title:`Errors`,subtitle:`Investigate exceptions, failures, and request-level problems across your stack.`}),(0,W.jsx)(BD,{model:e,loading:t,error:n,what:`errors`}),e&&(0,W.jsx)(Bk,{stats:e})]})}function Bk({stats:e}){let t=i().query.get(`group`),n=t?e.selected:e.groups[0]??null,r=n?.key??null;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(Ak,{stats:e}),(0,W.jsx)(Lk,{stats:e}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2`,children:[(0,W.jsx)(Sk,{stats:e}),(0,W.jsx)(wk,{stats:e})]}),(0,W.jsxs)(`div`,{className:`wl-grid wl-errors-bottom`,children:[(0,W.jsxs)(`div`,{className:`wl-errors-left`,children:[(0,W.jsx)(Nk,{stats:e,selected:r}),(0,W.jsx)(Ik,{stats:e})]}),(0,W.jsx)(hk,{groups:e.groups,group:n,linked:!!t,issues:e.issues})]})]})}var Vk={"n+1-db":{why:`The request runs the same query once per item. Each round trip adds latency, so the request gets slower as the data grows.`,fix:[`Load the related rows in one query: eager loading (Include in EF Core) or a JOIN.`,`Or collect the ids and run one query with IN (…).`,`Check the result with WizeLens: the query should run once.`]},"n+1-http":{why:`The request calls another service once per item. Every call pays network time and the other service's work.`,fix:[`Add a batch endpoint that takes many ids at once.`,`Or cache the answers for the length of the request.`,`Run independent calls in parallel when they cannot be merged.`]},"duplicate-query":{why:`The same query with the same parameters runs more than once in one request. The second run returns nothing new.`,fix:[`Keep the first result and pass it along.`,`Use a per-request cache or a unit of work that tracks loaded rows.`]},"slow-query":{why:`One query takes a large part of the request. Users wait for it, and it holds a connection while it runs.`,fix:[`Look at the query plan (EXPLAIN) for full scans.`,`Add an index on the columns in WHERE, JOIN, and ORDER BY.`,`Read fewer rows or columns, and page large results.`]},"db-wait":{why:`Several queries ran at the same time and all were slow. Each one alone is usually fast: they waited for a free connection, a lock, or a cold database.`,fix:[`Make the connection pool bigger, or run fewer queries at once (for example, not one Promise.all over many queries).`,`If it happens only on the first request after start, open the pool at startup.`,`Look for a long transaction that holds a lock the others need.`]},"render-route":{why:`Users see this page late or watch it move. Slow paints and layout shift both hurt how fast the page feels.`,fix:[`Send less JavaScript on this route: split code and defer what is not needed for the first paint.`,`Give images and embeds a fixed size so the layout does not jump.`,`Use loading="lazy" and right-sized images below the fold.`]},"render-component":{why:`This component takes a large share of the browser's render time, or renders when nothing changed.`,fix:[`Wrap it in React.memo and keep its props stable (useMemo, useCallback).`,`Split context so a change only reaches components that use that value.`,`Move expensive work out of render, or into useMemo.`]}};function Hk(e){return e.kind===`render`?Vk[e.key.startsWith(`render|component|`)?`render-component`:`render-route`]:Vk[e.kind]}var Uk={database:`Database`,http:`HTTP`,render:`Rendering`};function Wk(e,t){return e.area===`render`?S(`rendering`,[],{q:t}):S(`requests`,[],{endpoint:t,insights:`1`})}function Gk({group:e}){return(0,W.jsx)(`ul`,{className:`wl-insight-endpoints`,children:e.endpoints.map(t=>(0,W.jsx)(`li`,{children:(0,W.jsx)(`a`,{className:`wl-mono`,href:Wk(e,t),children:t})},t))})}function Kk({users:e}){return e.count?(0,W.jsxs)(`span`,{children:[J(e.count),`:`,` `,e.top.slice(0,3).map((e,t)=>(0,W.jsxs)(`span`,{children:[t>0&&`, `,(0,W.jsx)(`a`,{href:r(e.user),children:e.user})]},e.user))]}):(0,W.jsx)(W.Fragment,{children:`0`})}function qk({group:e,info:t,users:r,now:i}){let a=Hk(e),o=e.area===`render`?y(e.exampleTraceId):y(e.exampleTraceId,`insights`);return(0,W.jsxs)(G,{className:`wl-insight-detail`,children:[(0,W.jsxs)(`div`,{className:`wl-side-head`,children:[(0,W.jsx)(`h2`,{children:e.title}),(0,W.jsx)(`button`,{type:`button`,className:`wl-icon-btn`,onClick:()=>n({key:null}),"aria-label":`Close`,children:(0,W.jsx)(db,{size:18})})]}),(0,W.jsxs)(`div`,{className:`wl-side-meta`,children:[(0,W.jsx)(Jb,{impact:e.impact}),(0,W.jsx)(Y,{tone:`neutral`,children:Uk[e.area]}),(0,W.jsx)(nk,{kind:`insight`,info:t}),(0,W.jsxs)(`span`,{children:[`Last seen `,Lb(e.lastSeenMs,i)]})]}),(0,W.jsx)(ok,{kind:`insight`,issueKey:e.key,info:t}),(0,W.jsx)(`p`,{className:`wl-insight-desc`,children:e.description}),(0,W.jsxs)(`div`,{className:`wl-section-title`,children:[`Pattern `,(0,W.jsx)(Xb,{text:e.shape,label:`Copy pattern`})]}),(0,W.jsx)(`pre`,{className:`wl-code wl-insight-shape`,children:e.shape}),(0,W.jsx)(vb,{rows:[[`Seen in`,`${J(e.occurrences)} ${e.area===`render`?e.key.includes(`|component|`)?`renders`:`page views`:`requests`}`],[`Repeats`,J(e.count)],[`Time involved`,q(e.totalMs)],...r?[[`Users affected`,(0,W.jsx)(Kk,{users:r},`u`)]]:[]]}),(0,W.jsx)(`div`,{className:`wl-section-title`,children:`Why it matters`}),(0,W.jsx)(`p`,{className:`wl-insight-desc`,children:a.why}),(0,W.jsx)(`div`,{className:`wl-section-title`,children:`How to fix it`}),(0,W.jsx)(`ol`,{className:`wl-insight-fix`,children:a.fix.map(e=>(0,W.jsx)(`li`,{children:e},e))}),(0,W.jsx)(`div`,{className:`wl-section-title`,children:e.area===`render`?`Routes`:`Affected endpoints`}),e.endpoints.length?(0,W.jsx)(Gk,{group:e}):(0,W.jsx)(`p`,{className:`wl-muted`,children:`None recorded.`}),(0,W.jsx)(`a`,{className:`wl-btn wl-btn-primary-outline`,href:o,children:`View example trace`})]})}var Jk={high:3,medium:2,low:1};function Yk(e,t,n){return[{key:`impact`,header:`Impact`,cell:e=>(0,W.jsx)(Jb,{impact:e.impact}),sort:e=>Jk[e.impact]},{key:`title`,header:`Insight`,cell:e=>(0,W.jsxs)(`div`,{className:`wl-insight-cell`,children:[(0,W.jsxs)(`strong`,{children:[e.title,` `,(0,W.jsx)(nk,{kind:`insight`,info:n[e.key]})]}),(0,W.jsx)(`span`,{className:`wl-muted wl-small`,children:e.description}),(0,W.jsx)(`code`,{className:`wl-mono wl-small wl-truncate`,children:e.shape})]}),sort:e=>e.title},!t&&{key:`area`,header:`Area`,cell:e=>Uk[e.area],sort:e=>e.area},{key:`seen`,header:`Seen in`,num:!0,cell:e=>J(e.occurrences),sort:e=>e.occurrences},!t&&{key:`time`,header:`Time`,num:!0,cell:e=>q(e.totalMs),sort:e=>e.totalMs},!t&&{key:`endpoints`,header:`Endpoints`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-mono wl-small`,children:[e.endpoints[0]??`–`,e.endpoints.length>1?` +${e.endpoints.length-1}`:``]})},{key:`last`,header:`Last seen`,cell:t=>(0,W.jsx)(`span`,{className:`wl-nowrap`,children:Lb(t.lastSeenMs,e)}),sort:e=>e.lastSeenMs}].filter(e=>!!e)}function Xk({groups:e,issues:t,selected:r,now:i,filtered:a}){let o=a?(0,W.jsx)(K,{title:`No insights match these filters`}):(0,W.jsx)(K,{title:`No insights in this range`,children:`WizeLens checks every request for N+1 queries, repeated queries, slow queries, chatty HTTP calls, and render problems.`});return(0,W.jsx)(Q,{columns:Yk(i,r!==null,t),rows:e,rowKey:e=>e.key,selectedKey:r,onRowClick:e=>n({key:e.key===r?null:e.key}),empty:o})}function Zk({m:e}){let{totals:t,prevTotals:n}=e,r=e.meta.compareLabel;return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)($,{icon:Yv,label:`Insights Found`,value:J(e.found.value),change:e.found.change,upIsGood:!1,compareLabel:r,series:e.found.series}),(0,W.jsx)($,{icon:tb,danger:!0,label:`High Impact`,value:J(t.high),change:le(t.high,n.high),upIsGood:!1,compareLabel:r}),(0,W.jsx)($,{icon:av,label:`Time Involved`,value:q(t.totalMs),change:le(t.totalMs,n.totalMs),upIsGood:!1,compareLabel:r})]})}var Qk=[[`unresolved`,`Open`],[`resolved`,`Fixed`],[`ignored`,`Dismissed`],[`all`,`All Statuses`]];function $k({issues:e,releases:t}){let r=i().query,[a]=u(),[o,s]=RD(r.get(`q`)??``,{});return(0,W.jsxs)(G,{className:`wl-filters`,children:[(0,W.jsx)(hD,{value:r.get(`service`)??a}),e&&(0,W.jsx)(X,{label:`Status`,value:r.get(`status`)??`unresolved`,onChange:e=>n({status:e===`unresolved`?null:e,key:null}),options:Qk}),t.length>0&&(0,W.jsx)(X,{label:`Release`,value:r.get(`release`)??``,onChange:e=>n({release:e||null,key:null}),options:[[``,`Any Release`],...t.map(e=>[e,`New in ${e}`])]}),(0,W.jsx)(X,{label:`Area`,value:r.get(`area`)??`all`,onChange:e=>n({area:e===`all`?null:e}),options:[[`all`,`All Areas`],[`database`,`Database`],[`http`,`HTTP`],[`render`,`Rendering`]]}),(0,W.jsx)(X,{label:`Impact`,value:r.get(`impact`)??`all`,onChange:e=>n({impact:e===`all`?null:e}),options:[[`all`,`All Impacts`],[`high`,`High`],[`medium`,`Medium`],[`low`,`Low`]]}),(0,W.jsx)(Zb,{value:o,onChange:s,placeholder:`Search by query, endpoint, route, or component…`}),(0,W.jsx)(Tk,{chips:[[`Endpoint`,`endpoint`,r.get(`endpoint`)??``]]})]})}function eA({m:e,wanted:t}){let n=e.meta.window.to;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(Zk,{m:e}),(0,W.jsx)($k,{issues:e.hasIssues,releases:e.releases.map(e=>e.version)}),(0,W.jsxs)(`div`,{className:`wl-grid${t?` wl-grid-side`:``}`,children:[(0,W.jsx)(G,{flush:!0,title:`Insights (${J(e.matching)})`,action:(0,W.jsx)(FO,{page:`insights`,disabled:e.matching===0}),children:(0,W.jsx)(Xk,{groups:e.groups,issues:e.issues,selected:e.selected?.key??null,now:n,filtered:e.matching!==e.totals.count})}),t&&(e.selected?(0,W.jsx)(qk,{group:e.selected,info:e.issues[e.selected.key],users:e.selectedUsers,now:n}):(0,W.jsx)(G,{children:(0,W.jsx)(K,{title:`This insight is not in the selected time range`})}))]})]})}function tA(){let e=i().query.get(`key`),{model:t,loading:n,error:r}=yT(`insights`);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gb,{title:`Insights`,subtitle:`Problems WizeLens found in your requests and pages, ranked by impact.`}),(0,W.jsx)(BD,{model:t,loading:n,error:r,what:`insights`}),t&&(0,W.jsx)(eA,{m:t,wanted:e})]})}function nA({paused:e,onChange:t}){return(0,W.jsxs)(`button`,{type:`button`,className:`wl-live${e?` wl-paused`:``}`,onClick:()=>t(!e),title:e?`Show new data as it comes in`:`Keep this list still`,children:[(0,W.jsx)(`span`,{className:`wl-live-dot`,"aria-hidden":`true`}),e?`Paused`:`Live`]})}var rA=/[\s()]/;function iA(e,t){let n=t;for(;n>0&&!rA.test(e[n-1]);)n--;let r=t;for(;r<e.length&&!rA.test(e[r]);)r++;let i=e.slice(n,r),a=i.startsWith(`-`)?`-`:``,o=i.slice(a.length),s=o.indexOf(`:`);if(s<0)return{start:n,end:r,field:null,prefix:o,lead:a};let c=o.slice(0,s),l=/^(>=|<=|>|<)/.exec(o.slice(s+1))?.[0]??``,u=o.slice(s+1+l.length).replace(/^"/,``).replace(/"$/,``);return{start:n,end:r,field:c,prefix:u,lead:`${a}${c}:${l}`}}function aA(e,t,n){let r=t.field===null?`${t.lead}${n}:`:`${t.lead}${ph(n)} `;return{text:e.slice(0,t.start)+r+e.slice(t.end).replace(/^ /,``),caret:t.start+r.length}}var oA=150;function sA(e,t,n){let[r,i]=(0,T.useState)(null),a=e?`${e.field}\u0000${e.prefix}`:null;return(0,T.useEffect)(()=>{if(!e||a===null)return void i(null);let r=!0,o=e=>r&&i({key:a,items:e}),s=setTimeout(()=>Yx(e.field,e.prefix,t,n).then(o,()=>o([])),oA);return()=>(r=!1,clearTimeout(s))},[a,t,n]),r&&r.key===a?r.items:[]}function cA({draft:e,error:t}){let n=e.slice(t.start,Math.max(t.end,t.start+1));return(0,W.jsxs)(`div`,{className:`wl-query-error`,role:`alert`,children:[n&&(0,W.jsx)(`code`,{children:n}),` `,t.message]})}function lA({items:e,active:t,onPick:n}){return(0,W.jsx)(`div`,{className:`wl-query-suggest`,role:`listbox`,children:e.map((e,r)=>(0,W.jsxs)(`div`,{role:`option`,"aria-selected":r===t,className:`wl-query-option${r===t?` wl-active`:``}`,onMouseDown:t=>(t.preventDefault(),n(e)),children:[(0,W.jsx)(`span`,{className:`wl-truncate`,children:e.value}),(0,W.jsx)(`span`,{className:`wl-muted wl-small`,children:e.help??(e.count===void 0?``:e.count.toLocaleString(`en-US`))})]},e.value))})}function uA({value:e,onSubmit:t,range:n,server:r,placeholder:i,serverError:a}){let[o,s]=(0,T.useState)(e),[c,l]=(0,T.useState)(null),[u,d]=(0,T.useState)(0),f=(0,T.useRef)(null);(0,T.useEffect)(()=>s(e),[e]);let p=sA(c,n,r),m=bh(o),h=m.ok?o===e?a??null:null:m,g=e=>(l(iA(e.value,e.selectionStart??e.value.length)),d(0)),_=e=>{if(!c)return;let t=aA(o,c,e.value);s(t.text),l(null),requestAnimationFrame(()=>f.current?.setSelectionRange(t.caret,t.caret))};return(0,W.jsxs)(`div`,{className:`wl-query`,children:[(0,W.jsxs)(`label`,{className:`wl-input wl-query-input${h?` wl-invalid`:``}`,children:[(0,W.jsx)(Dy,{"aria-hidden":`true`}),(0,W.jsx)(`input`,{ref:f,type:`search`,value:o,spellCheck:!1,placeholder:i??`service:api status:5xx duration:>1s @user.id:42`,"aria-label":`Search`,"aria-invalid":!!h,onChange:e=>(s(e.target.value),g(e.target)),onClick:e=>g(e.currentTarget),onKeyDown:e=>{let n=p.length>0&&c!==null;if(n&&e.key===`ArrowDown`)d(e=>Math.min(p.length-1,e+1));else if(n&&e.key===`ArrowUp`)d(e=>Math.max(0,e-1));else if(n&&(e.key===`Tab`||e.key===`Enter`&&u>=0&&c.prefix!==``))_(p[u]);else if(e.key===`Escape`)l(null);else if(e.key===`Enter`)l(null),m.ok&&t(o.trim());else return;e.preventDefault()},onBlur:()=>setTimeout(()=>l(null),120)})]}),c&&p.length>0&&(0,W.jsx)(lA,{items:p,active:u,onPick:_}),h&&(0,W.jsx)(cA,{draft:o,error:{message:`error`in h?h.error:h.message,start:h.start,end:h.end}})]})}function dA({value:e,placeholder:t,reset:r={}}){let[i]=t_(),a=H().has(`search`);return(0,W.jsx)(uA,{value:e,range:i,server:a,placeholder:t,onSubmit:e=>n({q:e||null,page:null,...r})})}var fA={trace:`neutral`,debug:`neutral`,info:`info`,warn:`warning`,error:`danger`,critical:`danger`},pA=({level:e})=>(0,W.jsx)(Y,{tone:fA[e],children:e}),mA=[[``,`In and outside requests`],[`request`,`In requests`],[`outside`,`Outside requests`]],hA=[[`trace`,`All levels`],[`debug`,`Debug and up`],[`info`,`Info and up`],[`warn`,`Warnings and up`],[`error`,`Errors and up`],[`critical`,`Critical only`]];function gA({stats:e}){let{filter:t,services:r}=e;return(0,W.jsxs)(`section`,{className:`wl-panel wl-filters`,children:[(0,W.jsx)(X,{label:`Minimum level`,value:t.minLevel,options:hA,onChange:e=>n({level:e===`trace`?null:e,page:null})}),(0,W.jsx)(hD,{value:t.service,services:r}),(0,W.jsx)(dA,{value:t.query,placeholder:`Messages, categories, or trace IDs; or level:error service:api`}),(0,W.jsx)(eS,{label:`This level only`,disabled:t.minLevel===`trace`,checked:!!t.exact,onChange:e=>n({exact:e.target.checked?`1`:null,page:null})}),(0,W.jsx)(X,{label:`Written`,value:t.origin??``,options:mA,onChange:e=>n({origin:e||null,page:null})}),(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn`,onClick:()=>n({level:null,exact:null,category:null,trace:null,q:null,pattern:null,origin:null,user:null,page:null}),children:[(0,W.jsx)(Cy,{"aria-hidden":`true`}),` Reset`]}),(0,W.jsx)(Tk,{chips:[[`Category`,`category`,t.category??``],[`Trace`,`trace`,t.traceId??``],[`Pattern`,`pattern`,t.pattern??``],[`User`,`user`,t.user??``]]})]})}function _A({row:e}){let t=Object.entries(e.attributes??{});return(0,W.jsxs)(`div`,{className:`wl-log-detail`,children:[t.length===0?(0,W.jsx)(`span`,{className:`wl-muted`,children:`No attributes.`}):(0,W.jsx)(vb,{rows:t.map(([e,t])=>[e,typeof t==`string`?t:JSON.stringify(t)])}),(0,W.jsx)(`a`,{href:S(`logs`,[],{trace:e.traceId}),onClick:e=>e.stopPropagation(),children:Tt(e.traceId)?`Lines written near it, outside a request`:`All lines of this request`})]})}var vA={info:`var(--wl-chart-bar)`,warn:`var(--wl-amber)`,error:`var(--wl-red)`};function yA({stats:e}){let t=ol.map(t=>({label:t.label,color:vA[t.key],values:e.volume[t.key]??[]}));return(0,W.jsx)(G,{title:`Log Volume`,children:e.totalLines===0?(0,W.jsx)(K,{title:`No log lines in this time range`,children:`Lines written through WizeLens loggers show up here.`}):(0,W.jsx)(iE,{starts:e.starts,bars:t,height:180})})}var bA=[{key:`time`,header:`Time`,className:`wl-nowrap`,sort:e=>e.timeMs,cell:e=>Ab(e.timeMs)},{key:`level`,header:`Level`,sort:e=>li.indexOf(e.level),cell:e=>(0,W.jsx)(pA,{level:e.level})},{key:`service`,header:`Service`,className:`wl-nowrap`,cell:e=>e.service},{key:`category`,header:`Category`,className:`wl-log-cat`,cell:e=>(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn wl-truncate`,title:`Only ${e.category}`,onClick:t=>(t.stopPropagation(),n({category:e.category,page:null})),children:e.category})},{key:`message`,header:`Message`,className:`wl-log-msg`,cell:e=>e.message},{key:`trace`,header:`Request`,className:`wl-log-trace`,cell:e=>Tt(e.traceId)?(0,W.jsx)(`span`,{className:`wl-muted`,children:`Outside a request`}):(0,W.jsx)(`a`,{href:y(e.traceId,`logs`),title:e.traceId,onClick:e=>e.stopPropagation(),children:e.traceName})}],xA=`wizelens.ui.logSearches`,SA=e=>({id:e.id??crypto.randomUUID(),projectId:``,kind:`search`,name:e.name??``,href:e.href??Xf(e.params??{}),panels:[],chart:!0,shared:!1,owner:``,ownerName:``,createdMs:e.createdMs??Date.now(),updatedMs:e.updatedMs??e.createdMs??Date.now()});function CA(){try{return JSON.parse(localStorage.getItem(xA)??`[]`).map(SA)}catch{return[]}}function wA(e){try{localStorage.setItem(xA,JSON.stringify(e))}catch{}}var TA=e=>e instanceof Error?e.message:String(e),EA=e=>e.flatMap(e=>{let t=e.chart?Zf(e.href):null;return t?[{item:e,params:t}]:[]});function DA(){let e=UE(),{items:t,error:n}=WE(`search`),[r,i]=(0,T.useState)(CA),a=(0,T.useCallback)(async e=>{try{return await e(),null}catch(e){return TA(e)}},[]),o=e=>(wA(e),i(e));return{charts:EA(e.on?t:r),error:e.on?n:null,server:e.on,canWrite:!e.on||e.canWrite,save:(t,n,r)=>a(()=>e.on?GE(e.url(),`POST`,{kind:`search`,name:t.trim(),href:Xf(n),chart:!0,shared:!e.cloud||r}):o([...CA(),SA({name:t.trim(),params:n})])),remove:t=>a(()=>e.on?GE(e.url(`/${encodeURIComponent(t)}`),`DELETE`):o(CA().filter(e=>e.id!==t)))}}var OA=e=>({...Object.fromEntries(qf.map(e=>[e,null])),trace:null,page:null,...e}),kA=e=>S(`alerts`,[],{new:`1`,log:JSON.stringify(e)});function AA({pct:e}){return e===null?null:(0,W.jsx)(`span`,{className:e>10?`wl-text-error`:e<-10?`wl-text-ok`:`wl-muted`,children:`${e>0?`+`:``}${Math.round(e)}%`})}function jA({name:e,params:t,onDelete:r}){let{model:i}=vT(`log-chart`,t),a=H().has(`alerts`),o=i?[{label:`Lines`,color:`var(--wl-chart-bar)`,values:i.lines.map((e,t)=>(e??0)-(i.errors[t]??0))},{label:`Errors`,color:`var(--wl-red)`,values:i.errors}]:[];return(0,W.jsxs)(`article`,{className:`wl-log-metric`,children:[(0,W.jsxs)(`header`,{children:[(0,W.jsxs)(`div`,{className:`wl-log-metric-title`,children:[(0,W.jsx)(`strong`,{className:`wl-truncate`,children:e}),(0,W.jsx)(`span`,{className:`wl-muted wl-small wl-truncate`,children:rf(t)||`Every line`})]}),(0,W.jsxs)(`div`,{className:`wl-log-metric-total`,children:[(0,W.jsx)(`strong`,{children:i?J(i.total):`–`}),` `,i&&(0,W.jsx)(AA,{pct:i.change})]})]}),i&&(0,W.jsx)(iE,{starts:i.starts,bars:o,height:120,stackBars:!0}),(0,W.jsxs)(`footer`,{className:`wl-row-actions`,children:[(0,W.jsxs)(`button`,{type:`button`,className:`wl-link-btn`,onClick:()=>n(OA(t)),children:[(0,W.jsx)(Dy,{"aria-hidden":`true`}),` Show lines`]}),a&&(0,W.jsxs)(`a`,{href:kA(t),children:[(0,W.jsx)(k_,{"aria-hidden":`true`}),` Alert`]}),r&&(0,W.jsxs)(`button`,{type:`button`,className:`wl-link-btn wl-text-error`,onClick:r,children:[(0,W.jsx)($y,{"aria-hidden":`true`}),` Delete`]})]})]})}function MA({params:e,cloud:t,onSave:n,onDone:r}){let[i,a]=(0,T.useState)(rf(e).slice(0,100)),[o,s]=(0,T.useState)(!0),[c,l]=(0,T.useState)(null);return(0,W.jsxs)(`form`,{className:`wl-log-save`,onSubmit:e=>{e.preventDefault(),n(i,o).then(e=>e?l(e):r())},children:[(0,W.jsx)(Z,{label:`Search name`,required:!0,maxLength:100,value:i,placeholder:`Checkout timeouts`,onChange:e=>a(e.target.value),autoFocus:!0}),t&&(0,W.jsx)(eS,{label:`Share with the team`,checked:o,onChange:e=>s(e.target.checked)}),(0,W.jsx)(`button`,{type:`submit`,className:`wl-btn wl-btn-primary`,children:`Save`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:r,children:`Cancel`}),c&&(0,W.jsx)(`span`,{className:`wl-text-error wl-small`,children:c})]})}function NA(){let{charts:e,error:t,canWrite:n,save:r,remove:a}=DA(),o=Yf(Object.fromEntries(i().query)),s=H(),[c,l]=(0,T.useState)(!1),[u,d]=(0,T.useState)(null),f=e=>void a(e).then(d),p=(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[s.has(`alerts`)&&(0,W.jsxs)(`a`,{href:kA(o),children:[(0,W.jsx)(k_,{"aria-hidden":`true`}),` Alert on this search`]}),n&&!c&&(0,W.jsxs)(`button`,{type:`button`,className:`wl-link-btn`,onClick:()=>l(!0),children:[(0,W.jsx)(Ty,{"aria-hidden":`true`}),` Save this search`]})]});return(0,W.jsxs)(G,{title:`Log Metrics`,action:p,className:`wl-log-metrics`,children:[c&&(0,W.jsx)(MA,{params:o,cloud:s.has(`accounts`),onSave:(e,t)=>r(e,o,t),onDone:()=>l(!1)}),(t??u)&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:t??u}),e.length===0?(0,W.jsx)(K,{title:`No saved searches yet`,children:`Filter the lines below, then save the search to chart how many lines match it over time.`}):(0,W.jsx)(`div`,{className:`wl-log-metric-grid`,children:e.map(e=>(0,W.jsx)(jA,{name:e.item.name,params:e.params,onDelete:n?()=>f(e.item.id):void 0},e.item.id))})]})}function PA({pct:e}){if(e===null)return(0,W.jsx)(Y,{tone:`info`,children:`New`});let t=`${e>0?`+`:``}${Math.round(e)}%`;return(0,W.jsx)(`span`,{className:e>10?`wl-text-error`:e<-10?`wl-text-ok`:`wl-muted`,children:t})}var FA=[{key:`pattern`,header:`Pattern`,className:`wl-log-pattern`,cell:e=>(0,W.jsx)(`code`,{title:e.sample,children:e.pattern||`(empty message)`})},{key:`level`,header:`Level`,cell:e=>(0,W.jsx)(pA,{level:e.level})},{key:`services`,header:`Services`,className:`wl-log-cat`,cell:e=>(0,W.jsx)(`span`,{className:`wl-truncate`,title:e.services.join(`, `),children:e.services.join(`, `)})},{key:`count`,header:`Lines`,num:!0,sort:e=>e.count,cell:e=>J(e.count)},{key:`share`,header:`Share`,num:!0,sort:e=>e.share,cell:e=>(0,W.jsx)(`span`,{className:`wl-log-share`,children:(0,W.jsx)(`span`,{style:{width:`${Math.max(2,e.share)}%`}})})},{key:`change`,header:`Change`,num:!0,sort:e=>e.change??1/0,cell:e=>(0,W.jsx)(PA,{pct:e.change})},{key:`trend`,header:`Trend`,cell:e=>(0,W.jsx)(fD,{values:e.series,width:96,height:26})}];function IA(){let{model:e}=yT(`log-patterns`),t=i().query.get(`pattern`)??``;if(!e)return null;let r=t&&(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:()=>n({pattern:null,page:null}),children:`Show every pattern`}),a=`Log Patterns (${J(e.total)}${e.total>e.rows.length?`, top ${e.rows.length}`:``})`;return(0,W.jsx)(G,{title:a,action:r,flush:!0,className:`wl-log-patterns`,children:(0,W.jsx)(Q,{columns:FA,rows:e.rows,rowKey:e=>e.id,selectedKey:t||null,onRowClick:e=>n({pattern:e.id===t?null:e.id,page:null}),empty:(0,W.jsx)(K,{title:`No patterns`,children:`Patterns follow the level and service filters, and need log lines in this time range.`})})})}function LA({stats:e}){let{cards:t,change:n,sparks:r,meta:i}=e,a={upIsGood:!1,compareLabel:i.compareLabel};return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)($,{icon:Tv,label:`Log Lines`,value:J(t.total),change:n.total,series:r.total,...a}),(0,W.jsx)($,{icon:tb,label:`Warnings`,href:S(`logs`,[],{level:`warn`,exact:`1`}),value:J(t.warnings),change:n.warnings,series:r.warnings,...a}),(0,W.jsx)($,{icon:dy,label:`Errors`,href:S(`logs`,[],{level:`error`}),value:J(t.errors),change:n.errors,series:r.errors,danger:!0,...a}),(0,W.jsx)($,{icon:j_,label:`Critical`,href:S(`logs`,[],{level:`critical`}),value:J(t.critical),change:n.critical,series:r.critical,danger:!0,...a})]})}function RA({stats:e}){let{rows:t,page:r,pageSize:i,matching:a}=e,[o,s]=(0,T.useState)(null),c=e=>s(o===e?null:e),l=Fx(`logs`,t,Rx);return(0,W.jsxs)(G,{title:`Log Lines (${J(a)})`,flush:!0,action:(0,W.jsx)(FO,{page:`logs`,disabled:a===0}),children:[(0,W.jsx)(Q,{columns:Vx(bA,`message`,l),rows:t,rowKey:e=>e.key,selectedKey:o,onRowClick:e=>c(e.key),detail:e=>(0,W.jsx)(_A,{row:e}),empty:(0,W.jsx)(K,{title:`No matching log lines`,children:`Try a lower level, another service, or a wider time range.`})}),a>0&&(0,W.jsx)($b,{page:r,pageSize:i,total:a,noun:`lines`,onPage:e=>n({page:e}),onPageSize:e=>n({size:e,page:null})})]})}function zA(){let[e,t]=(0,T.useState)(!1),{model:n,loading:r,error:i}=yT(`logs`,void 0,e);return(0,W.jsxs)(`div`,{className:`wl-logs-page`,children:[(0,W.jsx)(gb,{title:`Logs`,subtitle:`Every log line across your services: in requests, and outside them (startup, jobs, timers).`,children:(0,W.jsx)(nA,{paused:e,onChange:t})}),(0,W.jsx)(BD,{model:n,loading:r,error:i,what:`log lines`}),n&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(LA,{stats:n}),(0,W.jsx)(yA,{stats:n}),(0,W.jsx)(NA,{}),(0,W.jsx)(gA,{stats:n}),(0,W.jsx)(IA,{}),(0,W.jsx)(RA,{stats:n})]})]})}var BA=`color-mix(in srgb, var(--wl-red) 45%, transparent)`;function VA(e,t,n){let r={label:`Errors`,values:t.errors,color:BA},i={label:xb(n),values:t.prevRequests,color:`var(--wl-slate)`,dashed:!0};return e===`requests`?{lines:[{label:`Requests`,values:t.requests,color:`var(--wl-blue)`},i],bars:[r]}:{lines:[{label:`Avg duration`,values:t.avgDuration,color:`var(--wl-blue)`}],bars:[r]}}function HA({m:e}){let[t,n]=(0,T.useState)(`requests`),r=VA(t,e.activity,e.meta.compare);return(0,W.jsx)(G,{title:`Request Activity`,action:(0,W.jsx)(X,{small:!0,label:`Chart metric`,value:t,onChange:n,options:[[`requests`,`Requests`],[`duration`,`Avg duration`]]}),children:e.empty?(0,W.jsx)(K,{title:`No requests in this range`,children:`Use your app and requests show up here.`}):(0,W.jsx)(iE,{starts:e.activity.starts,lines:r.lines,bars:r.bars,height:220,separateBarScale:!0,format:t===`requests`?J:q})})}var UA=[{key:`why`,header:`Status`,cell:e=>e.why===`new`?(0,W.jsx)(Y,{tone:`info`,children:`New`}):(0,W.jsx)(Y,{tone:`danger`,children:`Regressed`})},{key:`error`,header:`Error`,className:`wl-cell-wide`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-truncate`,title:`${e.group.type}: ${e.group.message}`,children:[e.group.type,`: `,e.group.message]})},{key:`service`,header:`Service`,className:`wl-nowrap`,cell:e=>e.group.service},{key:`count`,header:`Count`,num:!0,cell:e=>J(e.group.count)},{key:`last`,header:`Last seen`,className:`wl-nowrap`,cell:e=>Ab(e.group.lastSeenMs)}];function WA({rows:e}){return(0,W.jsx)(G,{title:`New and Regressed Errors`,action:(0,W.jsx)(_b,{href:S(`errors`,[],{new:`1`}),label:`View new errors`}),children:(0,W.jsx)(Q,{columns:UA,rows:e,rowKey:e=>e.group.key,onRowClick:e=>w(he(e.group.key)),empty:(0,W.jsx)(K,{children:`No new or regressed errors in this range.`})})})}var GA={database:pv,http:tb,render:ay},KA=3;function qA({group:e}){let t=GA[e.area];return(0,W.jsxs)(`a`,{className:`wl-ov-insight`,href:S(`insights`,[],{key:e.key}),children:[(0,W.jsx)(`span`,{className:`wl-ov-insight-icon wl-ov-area-${e.area}`,children:(0,W.jsx)(t,{"aria-hidden":`true`})}),(0,W.jsxs)(`span`,{className:`wl-ov-insight-body`,children:[(0,W.jsxs)(`span`,{className:`wl-ov-insight-head`,children:[(0,W.jsx)(`strong`,{className:`wl-truncate`,children:e.title}),(0,W.jsx)(Jb,{impact:e.impact})]}),(0,W.jsx)(`span`,{className:`wl-ov-insight-text`,children:e.description})]}),(0,W.jsx)(tv,{className:`wl-ov-insight-go`,"aria-hidden":`true`})]})}function JA({groups:e}){return(0,W.jsx)(G,{title:`Latest Insights`,action:(0,W.jsx)(_b,{href:S(`insights`),label:`View all insights`}),children:e.length===0?(0,W.jsx)(K,{title:`No insights in this range`,children:`No N+1 queries, repeated queries, slow queries, or render problems found.`}):(0,W.jsx)(`div`,{className:`wl-ov-insights`,children:e.slice(0,KA).map(e=>(0,W.jsx)(qA,{group:e},e.key))})})}function YA({apdex:e,compareLabel:t}){let n=H().has(`slos`),r=e?.score??null,i=e?.targetMs?`target ${e.targetMs} ms`:`per-service targets`,a=r===null?`No requests`:`${Al(r)} · ${i}`;return(0,W.jsx)($,{icon:xv,label:`Apdex`,value:r===null?`–`:r.toFixed(2),change:null,upIsGood:!0,compareLabel:t,note:a,href:n?S(`slos`):void 0})}function XA({m:e}){let t=e.headlines,n=e.empty,r=e.meta.compareLabel;return(0,W.jsxs)(`div`,{className:`wl-grid wl-ov-cards`,children:[(0,W.jsx)($,{icon:Gv,label:`Total Requests`,href:S(`requests`),value:J(t.total.value),change:t.total.change,upIsGood:!0,compareLabel:r,series:t.total.series}),(0,W.jsx)($,{icon:av,label:`Avg Duration`,href:S(`requests`,[],{sort:`duration`}),value:q(t.avgDuration.value),change:t.avgDuration.change,upIsGood:!1,compareLabel:r,series:t.avgDuration.series}),(0,W.jsx)($,{icon:pv,label:`SQL Queries`,href:S(`database`),value:J(t.sqlQueries.value),change:t.sqlQueries.change,upIsGood:!1,compareLabel:r,series:t.sqlQueries.series}),(0,W.jsx)($,{icon:tb,label:`Error Rate`,href:S(`requests`,[],{status:`failed`}),value:n?`–`:Cb(t.errorRate.value),change:t.errorRate.change,upIsGood:!1,compareLabel:r,series:t.errorRate.series,danger:!0}),(0,W.jsx)(YA,{apdex:e.apdex,compareLabel:r}),(0,W.jsx)($,{icon:Yv,label:`Insights Found`,href:S(`insights`),value:J(e.insightsFound.value),change:e.insightsFound.change,upIsGood:!1,compareLabel:r,series:e.insightsFound.series})]})}var ZA=5,QA=[{key:`path`,header:`Path`,cell:e=>(0,W.jsx)(`span`,{className:`wl-ov-path wl-truncate`,title:e.path,children:e.path})},{key:`method`,header:`Method`,cell:e=>e.method},{key:`status`,header:`Status`,cell:e=>(0,W.jsx)(Kb,{tone:Wb(e.status),children:e.status??`…`})},{key:`duration`,header:`Duration`,cell:e=>q(e.durationMs),className:`wl-nowrap`},{key:`sql`,header:`SQL`,cell:e=>e.dbCount},{key:`insights`,header:`Insights`,cell:e=>(0,W.jsx)(Yb,{n:e.insights})}];function $A({rows:e}){let t=(0,T.useMemo)(()=>e.slice(0,ZA),[e]),n=Fx(`requests`,t,Lx);return(0,W.jsx)(G,{title:`Recent Requests`,action:(0,W.jsx)(_b,{href:S(`requests`)}),children:(0,W.jsx)(Q,{columns:Vx(QA,`path`,n),rows:t,rowKey:e=>e.traceId,onRowClick:e=>w(S(`requests`,[],{trace:e.traceId})),empty:(0,W.jsx)(K,{children:`No requests in this range.`})})})}var ej={api:z_,web:ay,worker:sv,queue:Uv,database:pv,external:Fv},tj={healthy:[`success`,`Healthy`],degraded:[`warning`,`Degraded`],unhealthy:[`danger`,`Unhealthy`],idle:[`neutral`,`Idle`]},nj=5;function rj(e){return[{key:`name`,header:`Service`,cell:e=>{let t=ej[e.kind];return(0,W.jsxs)(`span`,{className:`wl-cell-icon`,title:e.detail??e.name,children:[(0,W.jsx)(t,{"aria-hidden":`true`}),(0,W.jsx)(`span`,{className:`wl-truncate`,children:e.name})]})}},{key:`status`,header:`Status`,cell:e=>(0,W.jsx)(Kb,{tone:tj[e.status][0],colorText:!0,children:tj[e.status][1]})},{key:`avg`,header:`Avg Latency`,cell:e=>q(e.avgMs),className:`wl-nowrap`},{key:`requests`,header:e?`Requests (${e})`:`Requests`,cell:e=>J(e.requests),className:`wl-nowrap`}]}function ij({rows:e,range:t}){let n=Ix(),r=Vx(rj(t),`name`,e=>n(`services`,Lg(e.name)));return(0,W.jsx)(G,{title:`Services`,action:(0,W.jsx)(_b,{href:S(`services`)}),children:(0,W.jsx)(Q,{columns:r,rows:e.slice(0,nj),rowKey:e=>e.key,onRowClick:e=>w(HS(e.key)),empty:(0,W.jsx)(K,{children:`No services seen in this range.`})})})}var aj=(e,t)=>e.timing.map(e=>({key:e.key,label:e.label,value:e[t]??0,display:q(e[t]),color:`color-mix(in srgb, var(--wl-blue) ${e.shade}%, transparent)`}));function oj({m:e}){let[t,n]=(0,T.useState)(`avg`);return(0,W.jsxs)(G,{title:`Request Timing Breakdown`,action:(0,W.jsx)(X,{small:!0,label:`Statistic`,value:t,onChange:n,options:[[`avg`,`Avg duration`],[`p95`,`p95 duration`]]}),children:[e.empty?(0,W.jsx)(K,{children:`No requests in this range.`}):(0,W.jsx)(lO,{items:aj(e,t)}),!e.empty&&(0,W.jsx)(`p`,{className:`wl-ov-note`,children:`Render and network need the browser add-on. A dash means it was not measured.`})]})}function sj(){let{model:e,loading:t,error:n}=yT(`overview`);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gb,{title:`Overview`,subtitle:`Recent request-level diagnostics across your stack.`}),(0,W.jsx)(BD,{model:e,loading:t,error:n,what:`traces`}),e&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(XA,{m:e}),(0,W.jsxs)(`div`,{className:`wl-grid wl-ov-top`,children:[(0,W.jsx)(HA,{m:e}),(0,W.jsx)(oj,{m:e})]}),(0,W.jsxs)(`div`,{className:`wl-grid wl-ov-mid`,children:[(0,W.jsx)(ij,{rows:e.services,range:e.meta.custom?null:e.meta.range}),(0,W.jsx)($A,{rows:e.recent})]}),(0,W.jsx)(WA,{rows:e.freshErrors}),(0,W.jsx)(JA,{groups:e.insights})]})]})}var cj=[{key:`time`,header:`Time`,className:`wl-nowrap`,cell:e=>Ab(e.startMs)},{key:`path`,header:`Page`,className:`wl-cell-wide`,cell:e=>(0,W.jsx)(`span`,{className:`wl-truncate`,title:e.path,children:e.path})},{key:`spans`,header:`Spans`,num:!0,cell:e=>J(e.spanCount)},{key:`duration`,header:`Duration`,num:!0,cell:e=>q(e.durationMs)}];function lj({m:e}){let t=e.averages,n={compareLabel:e.meta.compareLabel,change:null,upIsGood:!1};return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)($,{icon:yv,label:`Page Views`,value:J(e.views),...n,change:e.meta.hasPrev?le(e.views,e.prevViews):null,upIsGood:!0,series:e.chart.views}),(0,W.jsx)($,{icon:kv,label:`Avg Render Time`,value:q(t.render),...n,series:e.chart.render}),(0,W.jsx)($,{icon:pb,label:`Avg LCP`,value:q(t.lcp),...n,series:e.chart.lcp}),(0,W.jsx)($,{icon:ky,label:`Avg SSR Time`,value:q(t.ssr),...n,series:e.chart.ssr})]})}function uj({m:e}){let t=[{label:`Render`,values:e.chart.render,color:`var(--wl-blue)`},{label:`LCP`,values:e.chart.lcp,color:`var(--wl-orange)`},{label:`Hydration`,values:e.chart.hydration,color:`var(--wl-k-render)`}];return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(G,{title:`Page Views Over Time`,children:(0,W.jsx)(iE,{starts:e.starts,lines:[{label:`Views`,values:e.chart.views,color:`var(--wl-blue)`},{label:xb(e.meta.compare),values:e.chart.prevViews,color:`var(--wl-slate)`,dashed:!0}],height:220,format:J})}),(0,W.jsx)(G,{title:`Load Times Over Time`,children:(0,W.jsx)(iE,{starts:e.starts,lines:t,height:220,format:e=>q(e)})})]})}function dj({m:e}){let t=e.components[0]?.count??0,n=e.components.slice(0,12).map(e=>({key:e.name,label:(0,W.jsx)(`span`,{className:`wl-mono`,children:e.name}),value:e.count,display:J(e.count),color:e.count===t?`var(--wl-blue)`:`color-mix(in srgb, var(--wl-blue) 55%, transparent)`}));return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(lj,{m:e}),(0,W.jsx)(uj,{m:e}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(G,{title:`Components (${J(e.components.length)})`,children:n.length?(0,W.jsx)(lO,{items:n}):(0,W.jsx)(K,{children:`No React render data for this route.`})}),(0,W.jsx)(G,{title:`Newest Page Loads (${J(e.loads.length)})`,flush:!0,children:(0,W.jsx)(VD,{kind:`traces`,itemOf:Lx,tagged:`path`,columns:cj,rows:e.loads,rowKey:e=>e.traceId,onRowClick:e=>w(y(e.traceId)),empty:(0,W.jsx)(K,{children:`No page load in this range.`})})})]})]})}function fj({route:e}){let{model:t,loading:n,error:r}=yT(`route`,{route:e}),i=t?.averages.cls,a=t&&t.views?[[`Page views`,J(t.views)],[`Hydration`,q(t.averages.hydration)],[`Layout shift`,i==null?`–`:i.toFixed(2)]]:[];return(0,W.jsxs)(`div`,{className:`wl-dpage`,children:[(0,W.jsx)(BD,{model:t,loading:n,error:r,what:`this route`}),(0,W.jsx)(AC,{back:[S(`rendering`),`All routes`],icon:ay,title:e,mono:!0,stats:a}),t&&!t.views&&(0,W.jsx)(G,{children:(0,W.jsx)(K,{title:`No page views of this route in this time range`,children:`Pick a longer time range at the top.`})}),t&&t.views>0&&(0,W.jsx)(dj,{m:t})]})}var pj=[[`react`,`React`],[`vue`,`Vue`],[`angular`,`Angular`],[`svelte`,`Svelte`],[`js`,`Plain JS`]],mj={react:{label:`@wizeworks/lens-react`,intro:`Add the WizeLens React package to your app:`,code:`// main.tsx: first line, before React loads
|
|
25
|
+
import "@wizeworks/lens-react/install";
|
|
26
|
+
|
|
27
|
+
// Wrap your app once
|
|
28
|
+
<WizeLensProvider endpoint="/_wizelens">
|
|
29
|
+
<App />
|
|
30
|
+
</WizeLensProvider>`,note:`Then load a few pages. Component timings need a React development build.`},vue:{label:`@wizeworks/lens-vue`,intro:`Add the WizeLens Vue plugin to your app:`,code:`// main.ts
|
|
31
|
+
import { WizeLens } from "@wizeworks/lens-vue";
|
|
32
|
+
|
|
33
|
+
createApp(App)
|
|
34
|
+
.use(router)
|
|
35
|
+
.use(WizeLens, { endpoint: "/_wizelens", router })
|
|
36
|
+
.mount("#app");`,note:`Then load a few pages. Route changes and component errors are sent too.`},angular:{label:`@wizeworks/lens-angular`,intro:`Add WizeLens to your app config:`,code:`// app.config.ts
|
|
37
|
+
const lens = initWizeLens({ endpoint: "/_wizelens" });
|
|
38
|
+
|
|
39
|
+
providers: [
|
|
40
|
+
{ provide: ErrorHandler, useValue: createWizeLensErrorHandler(lens) },
|
|
41
|
+
provideAppInitializer(() => void trackAngularRouter(inject(Router), lens)),
|
|
42
|
+
]`,note:`Then load a few pages. HttpClient calls link to their server traces.`},svelte:{label:`@wizeworks/lens-svelte`,intro:`Start WizeLens in your client hooks:`,code:`// src/hooks.client.ts
|
|
43
|
+
import { createHandleError, initWizeLens } from "@wizeworks/lens-svelte";
|
|
44
|
+
|
|
45
|
+
initWizeLens({ endpoint: "/_wizelens" });
|
|
46
|
+
export const handleError = createHandleError();
|
|
47
|
+
|
|
48
|
+
// src/routes/+layout.svelte
|
|
49
|
+
trackSvelteKitNavigation(afterNavigate);`,note:`Then load a few pages. Plain Svelte apps call trackNavigation() instead.`},js:{label:`@wizeworks/lens-browser`,intro:`Add one script tag to your pages, or import the package:`,code:`<script src="https://cdn.jsdelivr.net/npm/@wizeworks/lens-browser/dist/wizelens.iife.js"
|
|
50
|
+
data-endpoint="/_wizelens"><\/script>
|
|
51
|
+
|
|
52
|
+
// or, with a bundler
|
|
53
|
+
import { initWizeLens } from "@wizeworks/lens-browser";
|
|
54
|
+
initWizeLens({ endpoint: "/_wizelens" });`,note:`Then load a few pages. Every fetch and XHR call links to its server trace.`}};function hj({loading:e}){let[t,n]=(0,T.useState)(`react`),r=mj[t];return(0,W.jsx)(G,{children:(0,W.jsx)(K,{title:e?`Loading page views…`:`No page views in this range`,children:!e&&(0,W.jsxs)(`div`,{className:`wl-render-setup`,children:[(0,W.jsx)(`p`,{children:`Page views, render phases, and component timings come from the browser. Pick your frontend:`}),(0,W.jsx)(yb,{tabs:pj,value:t,onChange:n}),(0,W.jsxs)(`p`,{children:[r.intro,` `,(0,W.jsx)(`code`,{className:`wl-mono`,children:r.label}),` `,(0,W.jsx)(Xb,{text:r.code,label:`Copy`})]}),(0,W.jsx)(`pre`,{className:`wl-code`,children:r.code}),(0,W.jsx)(`p`,{className:`wl-small`,children:r.note})]})})})}var gj=[[`avg`,`Avg. duration`],[`p75`,`p75 duration`]],_j=.25;function vj({m:e}){let[t,n]=(0,T.useState)(`avg`),{starts:r}=e,i=e.chart[t],a=e.chart.views;return(0,W.jsx)(G,{title:`Route Render Duration`,action:(0,W.jsx)(X,{small:!0,label:`Render time statistic`,value:t,options:[[`avg`,`Avg. render time`],[`p75`,`p75 render time`]],onChange:n}),children:(0,W.jsx)(iE,{starts:r,lines:[{label:t===`avg`?`Render time (avg)`:`Render time (p75)`,values:i,color:`var(--wl-blue)`}],bars:[{label:`Page views`,values:a,color:`var(--wl-chart-bar)`}],format:q,separateBarScale:!0,height:210})})}function yj({m:e}){let[t,n]=(0,T.useState)(`avg`),r=e.phases[t],i=r.filter(e=>e.kind===`ms`),a=r.find(e=>e.kind===`score`),o=r.some(e=>e.value!==null);return(0,W.jsx)(G,{title:`Render Phase Breakdown`,action:(0,W.jsx)(X,{small:!0,label:`Phase statistic`,value:t,options:gj,onChange:n}),children:o?(0,W.jsxs)(`div`,{className:`wl-phases`,children:[(0,W.jsx)(lO,{items:i.map(e=>({key:e.key,label:e.label,value:e.value??0,display:e.value===null?`–`:q(e.value)}))}),a&&(0,W.jsx)(lO,{max:_j,items:[{key:a.key,label:a.label,value:Math.min(a.value??0,_j),display:a.value===null?`–`:a.value.toFixed(2),color:(a.value??0)>.1?`var(--wl-amber)`:void 0}]}),(0,W.jsx)(`p`,{className:`wl-muted wl-small`,children:`Layout shift is a score (CLS), not a time. 0.1 or less is good; the bar is full at 0.25.`})]}):(0,W.jsx)(K,{title:`No phase timings yet`,children:`Phases show up after the first page view is reported.`})})}var bj=6,xj={none:{tone:`success`,label:`None`},minor:{tone:`warning`,label:`Minor`},high:{tone:`danger`,label:`High`}},Sj=`Full page loads only`,Cj=(e,t)=>(0,W.jsx)(`span`,{title:t,children:e}),wj=[{key:`route`,header:`Route`,cell:e=>(0,W.jsx)(`span`,{className:`wl-mono`,children:e.route}),sort:e=>e.route},{key:`views`,header:`Page Views`,num:!0,cell:e=>J(e.views),sort:e=>e.views},{key:`render`,header:Cj(`Avg. Render Time`,`Full page loads and in-app route changes`),num:!0,cell:e=>q(e.avgRenderMs),sort:e=>e.avgRenderMs??-1},{key:`ssr`,header:Cj(`SSR Time`,Sj),num:!0,cell:e=>q(e.avgSsrMs),sort:e=>e.avgSsrMs??-1},{key:`hydration`,header:Cj(`Hydration Time`,Sj),num:!0,cell:e=>q(e.avgHydrationMs),sort:e=>e.avgHydrationMs??-1},{key:`lcp`,header:Cj(`LCP`,`Largest Contentful Paint. `+Sj),num:!0,cell:e=>q(e.avgLcpMs),sort:e=>e.avgLcpMs??-1},{key:`images`,header:Cj(`Large Images`,`Images larger than they are shown`),num:!0,cell:e=>e.largeImages?J(e.largeImages):`–`,sort:e=>e.largeImages},{key:`cls`,header:`Layout Shift`,num:!0,cell:e=>e.avgCls===null?`–`:e.avgCls.toFixed(2),sort:e=>e.avgCls??-1},{key:`issue`,header:`Issues`,cell:e=>(0,W.jsx)(`span`,{title:e.issues.join(`
|
|
55
|
+
`)||void 0,children:(0,W.jsx)(Kb,{tone:xj[e.issue].tone,colorText:e.issue===`high`,children:xj[e.issue].label})}),sort:e=>e.issues.length},{key:`count`,header:(0,W.jsx)(`span`,{className:`wl-sr-only`,children:`Issue count`}),num:!0,cell:e=>(0,W.jsx)(Yb,{n:e.issues.length})}],Tj=[{key:`name`,header:`Component`,cell:e=>(0,W.jsx)(`span`,{className:`wl-mono`,children:e.name}),sort:e=>e.name},{key:`renders`,header:`Render Count`,num:!0,cell:e=>J(e.renders),sort:e=>e.renders},{key:`avg`,header:`Avg. Render Time`,num:!0,cell:e=>q(e.avgMs),sort:e=>e.avgMs},{key:`self`,header:`Self Time`,num:!0,cell:e=>q(e.selfMs),sort:e=>e.selfMs},{key:`total`,header:`Total Time`,num:!0,cell:e=>q(e.totalMs),sort:e=>e.totalMs},{key:`impact`,header:`Impact`,cell:e=>(0,W.jsx)(Jb,{impact:e.impact}),sort:e=>({high:3,medium:2,low:1})[e.impact]},{key:`issues`,header:`Issues`,cell:e=>(0,W.jsx)(`span`,{title:e.issues.join(`
|
|
56
|
+
`)||void 0,children:e.issues[0]??`–`}),sort:e=>e.issues.length},{key:`count`,header:(0,W.jsx)(`span`,{className:`wl-sr-only`,children:`Issue count`}),num:!0,cell:e=>(0,W.jsx)(Yb,{n:e.issues.length})}];function Ej(e,t,n,r){return n<=bj?null:e?(0,W.jsx)(_b,{href:S(`rendering`),label:`Show fewer`}):(0,W.jsx)(_b,{href:S(`rendering`,[],{all:t}),label:r})}function Dj({routes:e,total:t,all:n}){return(0,W.jsx)(G,{flush:!0,title:`Pages & Routes (${Sb(e.length,t)})`,action:Ej(n,`routes`,e.length,`View all pages`),children:(0,W.jsx)(Q,{columns:wj,rows:n?e:e.slice(0,bj),rowKey:e=>e.route,onRowClick:e=>w(v(e.route)),empty:(0,W.jsx)(K,{title:`No page views in this range`})})})}function Oj({components:e,total:t,hasReact:n,all:r}){let i=n?(0,W.jsx)(K,{title:`No component renders in this range`}):(0,W.jsxs)(K,{title:`No React render data`,children:[`Add `,(0,W.jsx)(`code`,{className:`wl-mono`,children:`import "@wizeworks/lens-react/install";`}),` as the first line of main.tsx. Component timings work in React development builds.`]});return(0,W.jsx)(G,{flush:!0,title:`Component Hotspots (${Sb(e.length,t)})`,action:Ej(r,`components`,e.length,`View all components`),children:(0,W.jsx)(Q,{columns:Tj,rows:r?e:e.slice(0,bj),rowKey:e=>e.name,onRowClick:e=>w(y(e.exampleTraceId)),empty:i})})}function kj({data:e}){let{cards:t}=e,{compareLabel:n}=e.meta;return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)($,{icon:kv,label:`Avg. Render Time`,value:q(t.render.value),change:t.render.change,upIsGood:!1,compareLabel:n,series:t.render.series}),(0,W.jsx)($,{icon:ky,label:`SSR Time`,value:q(t.ssr.value),change:t.ssr.change,upIsGood:!1,compareLabel:n,series:t.ssr.series}),(0,W.jsx)($,{icon:pb,label:`Hydration Time`,value:q(t.hydration.value),change:t.hydration.change,upIsGood:!1,compareLabel:n,series:t.hydration.series}),(0,W.jsx)($,{icon:tb,danger:!0,label:`Component Issues`,value:J(t.issues.value),change:t.issues.change,upIsGood:!1,compareLabel:n,series:t.issues.series})]})}function Aj(){let[e,t]=RD(i().query.get(`q`)??``,{});return(0,W.jsx)(`section`,{className:`wl-panel wl-filters`,children:(0,W.jsx)(Zb,{value:e,onChange:t,placeholder:`Search routes and components…`})})}function jj(){let[e,t]=i().params;return e===`routes`&&t?(0,W.jsx)(fj,{route:C(t)},t):(0,W.jsx)(Mj,{})}function Mj(){let{model:e,loading:t,error:n}=yT(`rendering`),r=i().query.get(`all`),a=!e||e.views===0&&!e.hasReact;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gb,{title:`Rendering`,subtitle:`Frontend rendering diagnostics across server-side rendering, hydration, and component cost.`}),(0,W.jsx)(BD,{model:e,loading:!1,error:n,what:`page views`}),a?(0,W.jsx)(hj,{loading:t}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(kj,{data:e}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2`,children:[(0,W.jsx)(vj,{m:e}),(0,W.jsx)(yj,{m:e})]}),(0,W.jsx)(Aj,{}),(0,W.jsxs)(`div`,{className:`wl-grid`,children:[(0,W.jsx)(Dj,{routes:e.routes,total:e.routeCount,all:r===`routes`}),(0,W.jsx)(Oj,{components:e.components,total:e.componentCount,hasReact:e.hasReact,all:r===`components`})]})]})]})}function Nj({filter:e,methods:t,services:r}){let i=e=>t=>n({[e]:t,page:null}),a=()=>n({...Object.fromEntries(mo.map(e=>[e,null])),page:null});return(0,W.jsxs)(`section`,{className:`wl-panel wl-filters`,children:[(0,W.jsx)(X,{label:`Method`,value:e.method,onChange:i(`method`),options:[[``,`All Methods`],...((e,t)=>t&&!e.includes(t)?[...e,t]:e)(t,e.method).map(e=>[e,e])]}),(0,W.jsx)(X,{label:`Status`,value:e.status,onChange:i(`status`),options:ho}),(0,W.jsx)(X,{label:`Duration`,value:e.duration,onChange:i(`duration`),options:_o}),(0,W.jsx)(hD,{value:e.service,services:r}),(0,W.jsx)(dA,{value:e.q,reset:{trace:null},placeholder:`Path, user, or trace ID; or status:5xx duration:>1s @user.id:42`}),(0,W.jsx)(eS,{label:`With insights`,checked:e.insights===`1`,onChange:e=>n({insights:e.target.checked?`1`:null,page:null})}),(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:a,children:`Reset`}),(0,W.jsx)(Tk,{chips:[[`Endpoint`,`endpoint`,e.endpoint],[`User`,`user`,e.user]]})]})}function Pj(e){return e?je(e.spans):void 0}function Fj(e,t){return e?Object.entries(e.attributes).filter(([e])=>e.startsWith(t)).map(([e,n])=>[e.slice(t.length),n===null?``:String(n)]).sort(([e],[t])=>e.localeCompare(t)):[]}var Ij=e=>Fj(e,bt),Lj=e=>Fj(e,xt);function Rj(e,t){let n=e?.attributes[t],r=typeof n==`number`?n:typeof n==`string`&&n!==``?Number(n):NaN;return Number.isFinite(r)?r:null}var zj={request:[_t,vt],response:[ht,gt]};function Bj(e,t=`response`){let[n,r]=zj[t],i=e?.attributes[n];if(typeof i!=`string`)return null;let a=e?.attributes[r]===!0;if(a)return{text:i,truncated:a};try{return{text:JSON.stringify(JSON.parse(i),null,2),truncated:a}}catch{return{text:i,truncated:a}}}var Vj={200:`OK`,201:`Created`,202:`Accepted`,204:`No Content`,301:`Moved Permanently`,302:`Found`,304:`Not Modified`,400:`Bad Request`,401:`Unauthorized`,403:`Forbidden`,404:`Not Found`,409:`Conflict`,422:`Unprocessable Content`,429:`Too Many Requests`,500:`Internal Server Error`,502:`Bad Gateway`,503:`Service Unavailable`,504:`Gateway Timeout`},Hj=(e,t=!1)=>t?`Aborted by the client`:e===null?`No status`:Vj[e]?`${e} ${Vj[e]}`:String(e);function Uj({headers:e}){return(0,W.jsx)(`dl`,{className:`wl-kv wl-rq-headers`,children:e.map(([e,t])=>(0,W.jsxs)(`div`,{style:{display:`contents`},children:[(0,W.jsx)(`dt`,{className:`wl-mono`,children:e}),(0,W.jsx)(`dd`,{className:`wl-mono${t===`[redacted]`?` wl-text-warn`:``}`,children:t})]},e))})}var Wj=`This service did not capture headers. Update its WizeLens add-on to v0.3 or later, or turn on header capture in its OpenTelemetry agent.`;function Gj({r:e,server:t}){if(!t)return(0,W.jsx)(K,{title:`No server span`,children:`This request has no server data, so there are no headers to show.`});let n=t.attributes[`url.query`],r=Ij(t);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`h3`,{className:`wl-section-title`,children:`Request`}),(0,W.jsx)(vb,{rows:[[`Method`,e.method],[`Path`,(0,W.jsx)(`span`,{className:`wl-mono`,children:String(t.attributes[`url.path`]??e.path)})],[`Query`,n?(0,W.jsx)(`span`,{className:`wl-mono`,children:String(n)}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`None`})],[`Route`,String(t.attributes[`http.route`]??`–`)],[`Body size`,wb(Rj(t,`http.request.body.size`))],[`Client`,e.clientAddress??`–`]]}),(0,W.jsxs)(`h3`,{className:`wl-section-title`,children:[`Headers (`,r.length,`)`]}),r.length?(0,W.jsx)(Uj,{headers:r}):(0,W.jsx)(`p`,{className:`wl-muted wl-small`,children:Wj}),Bj(t,`request`)&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`h3`,{className:`wl-section-title`,children:`Body`}),(0,W.jsx)(Kj,{server:t,which:`request`})]})]})}function Kj({server:e,which:t}){let n=Bj(e,t);return n?(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`pre`,{className:`wl-code wl-rq-body`,children:n.text}),n.truncated&&(0,W.jsx)(`p`,{className:`wl-muted wl-small`,children:`Only the first 16 KB were captured.`})]}):(0,W.jsxs)(`p`,{className:`wl-muted wl-small`,children:[`Response body capture is off. Turn it on with `,(0,W.jsx)(`code`,{className:`wl-mono`,children:`CaptureResponseBody = true`}),` (.NET),`,` `,(0,W.jsx)(`code`,{className:`wl-mono`,children:`captureResponseBody: true`}),` (Node), or `,(0,W.jsx)(`code`,{className:`wl-mono`,children:`WIZELENS_CAPTURE_BODY=true`}),` (Java, Python, Go). Only text and JSON bodies are kept, up to 16 KB.`]})}function qj({r:e,server:t}){if(!t)return(0,W.jsx)(K,{title:`No server span`,children:`This request has no server data, so there is no response to show.`});let n=Lj(t),r=t.attributes[`http.response.header.content-type`];return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`h3`,{className:`wl-section-title`,children:`Response`}),(0,W.jsx)(vb,{rows:[[`Status`,(0,W.jsx)(Kb,{tone:Wb(e.status),children:Hj(e.status,e.aborted)})],[`Content type`,r?String(r):`–`],[`Body size`,wb(Rj(t,`http.response.body.size`))]]}),(0,W.jsxs)(`h3`,{className:`wl-section-title`,children:[`Headers (`,n.length,`)`]}),n.length?(0,W.jsx)(Uj,{headers:n}):(0,W.jsx)(`p`,{className:`wl-muted wl-small`,children:Wj}),(0,W.jsx)(`h3`,{className:`wl-section-title`,children:`Body`}),(0,W.jsx)(Kj,{server:t,which:`response`})]})}var Jj=(e,t)=>e===0?`0`:`${e} (${q(t)})`;function Yj({text:e}){return e?(0,W.jsxs)(`span`,{className:`wl-rq-copy`,children:[(0,W.jsx)(Xb,{text:e}),(0,W.jsx)(`span`,{className:`wl-mono wl-truncate`,title:e,children:e})]}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`})}function Xj({r:e}){return(0,W.jsx)(vb,{rows:[[`Service`,e.service],[`Method`,e.method],[`Path`,(0,W.jsx)(`span`,{className:`wl-mono`,children:e.path})],[`Status`,(0,W.jsx)(Kb,{tone:Wb(e.status),children:Hj(e.status,e.aborted)})],[`Duration`,q(e.durationMs)],[`SQL Queries`,Jj(e.dbCount,e.dbMs)],[`Fetch Calls`,Jj(e.fetchCount,e.fetchMs)],[`User Agent`,e.userAgent??(0,W.jsx)(`span`,{className:`wl-muted`,children:`Not captured`})],[`IP Address`,e.clientAddress??(0,W.jsx)(`span`,{className:`wl-muted`,children:`Not captured`})],[`User`,e.user?(0,W.jsx)(`a`,{href:r(e.user),children:e.user}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`Anonymous`})],[`Trace ID`,(0,W.jsx)(Yj,{text:e.traceId})],[`Request ID`,(0,W.jsx)(Yj,{text:e.requestId})]]})}var Zj=e=>/:(hit|ok|success|true)$/i.test(e)?`wl-chip wl-chip-green`:e.startsWith(`user:`)?`wl-chip`:`wl-chip wl-chip-blue`,Qj=e=>[Ug(e.service,e.endpoint),Wg(e.service),...e.user?[Gg(e.user)]:[]];function $j({r:e}){let t=Fx(`requests`,(0,T.useMemo)(()=>[e],[e]),Lx)(e),n=t.length===0&&e.tags.length===0;return(0,W.jsxs)(`div`,{className:`wl-chips wl-rq-tags`,children:[(0,W.jsx)(Bx,{tags:t}),e.tags.map(e=>(0,W.jsx)(`span`,{className:Zj(e),children:e},e)),n&&(0,W.jsx)(`span`,{className:`wl-muted wl-small`,children:`No tags. Tag this request's endpoint, service, or user, or set tags in code with WizeLensRequest.Tag(…) or wizelens.tag(…).`}),(0,W.jsx)(dS,{scopes:Qj(e)})]})}function eM(e){let t=(e,t,n,r)=>({key:e,label:t,value:n??0,display:q(n),color:r});return[t(`total`,`Total`,e.durationMs,`var(--wl-blue)`),t(`server`,`App (server)`,e.serverMs,`color-mix(in srgb, var(--wl-blue) 55%, transparent)`),t(`db`,`Database (SQL)`,e.serverMs===null&&e.dbCount===0?null:e.dbMs,`color-mix(in srgb, var(--wl-blue) 55%, transparent)`),t(`fetch`,`External Fetch`,e.fetchCount?e.fetchMs:null,`color-mix(in srgb, var(--wl-blue) 55%, transparent)`),t(`render`,`Rendering`,e.renderMs,`color-mix(in srgb, var(--wl-blue) 40%, transparent)`),t(`network`,`Network`,e.networkMs,`color-mix(in srgb, var(--wl-blue) 30%, transparent)`)]}function tM({r:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`h3`,{className:`wl-section-title`,children:`Summary`}),(0,W.jsx)(Xj,{r:e}),(0,W.jsx)(`h3`,{className:`wl-section-title`,children:`Tags`}),(0,W.jsx)($j,{r:e}),(0,W.jsxs)(`div`,{className:`wl-rq-timing-head`,children:[(0,W.jsx)(`h3`,{className:`wl-section-title`,children:`Timing Breakdown`}),(0,W.jsx)(`strong`,{children:q(e.durationMs)})]}),(0,W.jsx)(lO,{items:eM(e),max:e.durationMs}),(0,W.jsxs)(`a`,{className:`wl-btn wl-btn-primary-outline wl-rq-full`,href:y(e.traceId),children:[(0,W.jsx)(_v,{"aria-hidden":`true`}),` View full trace`]})]})}var nM=40;function rM(e,t){let n=0,r=e.parentSpanId?t.get(e.parentSpanId):void 0;for(;r&&n<8;)n++,r=r.parentSpanId?t.get(r.parentSpanId):void 0;return n}function iM(e){return ve(e)?`error`:e.category===`browser`?lt(e)===`fetch`?`browser`:`render`:e.category.replace(`.`,`-`)}function aM({s:e,depth:t,start:n,total:r}){let i=(e.startMs-n)/r*100,a=Math.max(.6,e.durationMs/r*100);return(0,W.jsxs)(`div`,{className:`wl-rq-span`,title:`${e.service} · ${e.name} · ${q(e.durationMs)}`,children:[(0,W.jsx)(`span`,{className:`wl-rq-span-name wl-truncate`,style:{paddingLeft:t*10},children:e.name}),(0,W.jsx)(`span`,{className:`wl-rq-span-track`,children:(0,W.jsx)(`i`,{className:`wl-rq-k-${iM(e)}`,style:{left:`${i}%`,width:`${Math.min(a,100-i)}%`}})}),(0,W.jsx)(`span`,{className:`wl-rq-span-ms`,children:q(e.durationMs)})]})}function oM({trace:e}){if(!e)return(0,W.jsx)(K,{title:`Trace not loaded`,children:`The trace is not in memory. It may have been dropped.`});let t=new Map(e.spans.map(e=>[e.spanId,e])),n=Math.max(e.durationMs,.001),r=e.spans.slice(0,nM);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`wl-rq-trace-meta wl-muted wl-small`,children:[e.spanCount,` spans · `,e.services.join(`, `),` · `,q(e.durationMs)]}),(0,W.jsx)(`div`,{className:`wl-rq-spans`,children:r.map(r=>(0,W.jsx)(aM,{s:r,depth:rM(r,t),start:e.startMs,total:n},r.spanId))}),e.spans.length>nM&&(0,W.jsxs)(`p`,{className:`wl-muted wl-small`,children:[`Showing `,nM,` of `,e.spans.length,` spans.`]}),(0,W.jsxs)(`a`,{className:`wl-btn wl-btn-primary-outline wl-rq-full`,href:y(e.traceId),children:[(0,W.jsx)(_v,{"aria-hidden":`true`}),` View full trace`]})]})}var sM=[[`overview`,`Overview`],[`headers`,`Headers`],[`response`,`Response`],[`trace`,`Trace`]];function cM({r:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`wl-side-head`,children:[(0,W.jsxs)(`h2`,{className:`wl-truncate`,title:`${e.method} ${e.path}`,children:[e.method,` `,e.path]}),(0,W.jsx)(`button`,{type:`button`,className:`wl-icon-btn wl-rq-close`,onClick:()=>n({trace:null}),"aria-label":`Close request details`,children:(0,W.jsx)(db,{size:18})})]}),(0,W.jsxs)(`div`,{className:`wl-side-meta`,children:[(0,W.jsxs)(`span`,{children:[Ab(e.startMs),` • `,jb(e.startMs)]}),(0,W.jsx)(Y,{tone:Wb(e.status),children:Hj(e.status,e.aborted)}),(0,W.jsx)(`strong`,{className:`wl-rq-duration`,children:q(e.durationMs)})]})]})}function lM({r:e,trace:t}){let[n,r]=(0,T.useState)(`overview`),i=Pj(t);return(0,W.jsxs)(G,{className:`wl-rq-side`,children:[(0,W.jsx)(cM,{r:e}),(0,W.jsx)(yb,{tabs:sM,value:n,onChange:r}),n===`overview`&&(0,W.jsx)(tM,{r:e}),n===`headers`&&(0,W.jsx)(Gj,{r:e,server:i}),n===`response`&&(0,W.jsx)(qj,{r:e,server:i}),n===`trace`&&(0,W.jsx)(oM,{trace:t})]})}function uM({headlines:e,compareLabel:t,empty:n}){return(0,W.jsxs)(`div`,{className:`wl-grid wl-rq-cards`,children:[(0,W.jsx)($,{icon:Gv,label:`Total Requests`,value:J(e.total.value),change:e.total.change,upIsGood:!0,compareLabel:t,series:e.total.series}),(0,W.jsx)($,{icon:av,label:`Avg Duration`,value:q(e.avgDuration.value),change:e.avgDuration.change,upIsGood:!1,compareLabel:t,series:e.avgDuration.series}),(0,W.jsx)($,{icon:tb,label:`Error Rate`,value:n?`–`:Cb(e.errorRate.value),change:e.errorRate.change,upIsGood:!1,compareLabel:t,series:e.errorRate.series,danger:!0}),(0,W.jsx)($,{icon:Yv,label:`Requests With Insights`,value:J(e.withInsights.value),change:e.withInsights.change,upIsGood:!1,compareLabel:t,series:e.withInsights.series})]})}function dM({label:e,k:t,sort:n,onSort:r}){let i=n.key===t,a=n.desc?x_:D_;return(0,W.jsxs)(`button`,{type:`button`,onClick:()=>r(t),"aria-label":`Sort by ${e}`,children:[e,i&&(0,W.jsx)(a,{"aria-hidden":`true`})]})}var fM=e=>(0,W.jsx)(`span`,{className:Bn(e)?`wl-text-error`:void 0,children:q(e.durationMs)});function pM(e,t){let n=(n,r)=>(0,W.jsx)(dM,{label:n,k:r,sort:e,onSort:t});return[{key:`time`,header:n(`Time`,`time`),cell:e=>Ab(e.startMs),className:`wl-nowrap`},{key:`path`,header:n(`Path`,`path`),cell:e=>(0,W.jsx)(`span`,{className:`wl-rq-path wl-truncate`,title:e.path,children:e.path})},{key:`method`,header:n(`Method`,`method`),cell:e=>e.method},{key:`status`,header:n(`Status`,`status`),cell:e=>(0,W.jsx)(Kb,{tone:Wb(e.status),colorText:(e.status??0)>=500,children:e.aborted?`Aborted`:e.status??`…`})},{key:`duration`,header:n(`Duration`,`duration`),cell:fM,className:`wl-nowrap`},{key:`sql`,header:n(`SQL`,`sql`),cell:e=>e.dbCount},{key:`db`,header:n(`DB Time`,`db`),cell:e=>e.dbCount?q(e.dbMs):`–`,className:`wl-nowrap`},{key:`errors`,header:n(`Errors`,`errors`),cell:e=>(0,W.jsx)(Yb,{n:e.errors})},{key:`fetch`,header:n(`Fetch`,`fetch`),cell:e=>e.fetchCount?q(e.fetchMs):`–`,className:`wl-nowrap`},{key:`service`,header:n(`Service`,`service`),cell:e=>e.service,className:`wl-nowrap`},{key:`insights`,header:n(`Insights`,`insights`),cell:e=>(0,W.jsx)(Yb,{n:e.insights})}]}var mM=[[`time`,e=>wO(e.startMs)],[`method`,e=>e.method],[`path`,e=>e.path],[`endpoint`,e=>e.endpoint],[`status`,e=>e.status],[`duration_ms`,e=>TO(e.durationMs)],[`server_ms`,e=>TO(e.serverMs)],[`db_ms`,e=>TO(e.dbMs)],[`sql_queries`,e=>e.dbCount],[`fetch_calls`,e=>e.fetchCount],[`fetch_ms`,e=>TO(e.fetchMs)],[`render_ms`,e=>TO(e.renderMs)],[`network_ms`,e=>TO(e.networkMs)],[`service`,e=>e.service],[`errors`,e=>e.errors],[`insights`,e=>e.insights],[`user`,e=>e.user],[`client_address`,e=>e.clientAddress],[`request_id`,e=>e.requestId],[`trace_id`,e=>e.traceId],[`tags`,e=>e.tags.join(` `)]],hM=e=>CO(mM,e),gM=e=>EO(`requests`,hM(e)),_M=5e3;function vM(){let e=i().query,t=e.get(`sort`)??void 0,r={key:Do(t)?t:`time`,desc:e.get(`desc`)!==`0`};return[r,e=>n({sort:e,desc:r.key===e&&r.desc?`0`:null,page:null})]}function yM(){let[e]=t_(),t=H().has(`serverStats`),n=i().query,[r,a]=(0,T.useState)(!1);return[r,()=>{a(!0),gT(`requests`,{...Object.fromEntries(n),page:`1`,size:String(_M)},e,t).then(e=>gM(e.rows)).finally(()=>a(!1))}]}function bM({model:e,selectedId:t}){let[r,i]=vM(),[a,o]=yM(),s=Fx(`requests`,e.rows,Lx),c=(0,W.jsxs)(`h2`,{children:[`Requests (`,J(e.total),`)`,!t&&e.total>0&&(0,W.jsx)(`span`,{className:`wl-muted wl-small wl-rq-pick`,children:` · pick one to see its details`})]}),l=Vx(pM(r,i).filter(e=>!t||e.key!==`fetch`&&e.key!==`insights`),`path`,s),u=(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn`,onClick:o,disabled:e.total===0||a,title:`Download the filtered requests as CSV (up to ${J(_M)})`,children:[(0,W.jsx)(rb,{"aria-hidden":`true`}),` Export`]}),d=(0,W.jsx)(K,{title:e.filtered?`No requests match these filters`:`No requests in this range`,children:e.filtered?`Change or reset the filters.`:`Use your app and requests show up here.`});return(0,W.jsxs)(G,{flush:!0,title:c,action:u,children:[(0,W.jsx)(Q,{columns:l,rows:e.rows,rowKey:e=>e.traceId,selectedKey:t,onRowClick:e=>n({trace:e.traceId}),empty:d}),e.total>0&&(0,W.jsx)($b,{page:e.page,pageSize:e.pageSize,total:e.total,noun:`requests`,onPage:e=>n({page:e}),onPageSize:e=>n({size:e,page:null})})]})}function xM(){return(0,W.jsx)(G,{className:`wl-rq-side wl-rq-hint`,children:(0,W.jsx)(`p`,{className:`wl-muted`,children:`This request is no longer stored.`})})}function SM({id:e,row:t}){let{trace:n}=TC(e),r=t??(n?In(n):null);return r?(0,W.jsx)(lM,{r,trace:n??void 0},r.traceId):(0,W.jsx)(xM,{})}function CM(){let e=i(),[t,n]=(0,T.useState)(!1),{model:r,loading:a,error:o}=yT(`requests`,void 0,t),[s]=u(),c=yo(e.query),l={...c,service:c.service||s},d=e.query.get(`trace`);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gb,{title:`Requests`,subtitle:`Inspect and analyze recent request activity across your stack.`,children:(0,W.jsx)(nA,{paused:t,onChange:n})}),(0,W.jsx)(BD,{model:r,loading:a,error:o,what:`requests`}),(0,W.jsx)(Nj,{filter:l,methods:r?.options.methods??[],services:r?.options.services??[]}),r&&(0,W.jsx)(uM,{headlines:r.headlines,compareLabel:r.meta.compareLabel,empty:r.total===0}),(0,W.jsxs)(`div`,{className:d?`wl-grid wl-grid-side`:`wl-grid`,children:[r&&(0,W.jsx)(bM,{model:r,selectedId:d}),d&&(0,W.jsx)(SM,{id:d,row:r?.selected??null})]})]})}var wM=`color-mix(in srgb, var(--wl-red) 45%, transparent)`,TM=e=>[{key:`name`,header:e,className:`wl-cell-wide`,cell:e=>(0,W.jsx)(`span`,{className:`wl-truncate wl-mono`,title:e.name,children:e.name})},{key:`count`,header:`Count`,num:!0,sort:e=>e.count,cell:e=>J(e.count)},{key:`avg`,header:`Avg`,num:!0,sort:e=>e.avgMs??0,cell:e=>q(e.avgMs)},{key:`errors`,header:`Errors`,num:!0,sort:e=>e.errors,cell:e=>(0,W.jsx)(`span`,{className:e.errors?`wl-text-error`:void 0,children:J(e.errors)})}],EM=[{key:`path`,header:`Request`,className:`wl-cell-wide`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-truncate`,title:e.path,children:[e.method,` `,e.path]})},{key:`status`,header:`Status`,cell:e=>(0,W.jsx)(Kb,{tone:Wb(e.status),children:e.status??`–`})},{key:`duration`,header:`Duration`,num:!0,cell:e=>(0,W.jsx)(`span`,{className:Bn(e)?`wl-text-error`:void 0,children:q(e.durationMs)})}],DM=e=>[{key:`error`,header:`Error`,className:`wl-cell-wide`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-truncate`,title:e.message,children:[e.type,`: `,e.message]})},{key:`seen`,header:`Last Seen`,className:`wl-nowrap`,cell:t=>Lb(t.lastSeenMs,e)},{key:`count`,header:`Count`,num:!0,cell:e=>J(e.count)}];function OM({m:e}){let t=e.totals,n=(t,n)=>e.meta.hasPrev?le(t,n??0):null,r=e.chart.count.map((t,n)=>t?(e.chart.errors[n]??0)/t*100:null),i={compareLabel:e.meta.compareLabel};return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)($,{icon:kv,label:`Requests`,value:J(t.count),change:n(t.count,e.prev?.count),upIsGood:!0,series:e.chart.count,...i}),(0,W.jsx)($,{icon:tb,label:`Error Rate`,value:Cb(t.errorRate),change:n(t.errorRate,e.prev?.errorRate),upIsGood:!1,series:r,danger:!0,...i}),(0,W.jsx)($,{icon:Zy,label:`p95 Latency`,value:q(t.p95Ms),change:n(t.p95Ms,e.prev?.p95Ms),upIsGood:!1,series:e.chart.p95,...i}),(0,W.jsx)($,{icon:Zy,label:`p99 Latency`,value:q(t.p99Ms),change:n(t.p99Ms,e.prev?.p99Ms),upIsGood:!1,series:e.chart.p99,...i})]})}function kM({m:e}){let t={label:xb(e.meta.compare),values:e.chart.prevCount,color:`var(--wl-slate)`,dashed:!0},n=[{label:`p99`,values:e.chart.p99,color:`var(--wl-red)`},{label:`p95`,values:e.chart.p95,color:`var(--wl-orange)`},{label:`p50`,values:e.chart.p50,color:`var(--wl-blue)`}];return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(G,{title:`Requests Over Time`,children:(0,W.jsx)(iE,{starts:e.starts,lines:[{label:`Requests`,values:e.chart.count,color:`var(--wl-blue)`},t],bars:[{label:`Errors`,values:e.chart.errors,color:wM}],height:220,separateBarScale:!0,format:J})}),(0,W.jsx)(G,{title:`Latency Over Time`,children:(0,W.jsx)(iE,{starts:e.starts,lines:n,height:220,format:e=>q(e)})})]})}function AM({m:e}){let t=e.slowest.length?e.slowest:e.recent,n=(0,W.jsx)(_b,{href:S(`requests`,[],{endpoint:e.endpoint,service:e.service,sort:`duration`}),label:`View requests`});return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(G,{title:`Queries (${J(e.queries.length)})`,flush:!0,children:(0,W.jsx)(Q,{columns:TM(`Query`),rows:e.queries,rowKey:e=>e.name,onRowClick:e=>w(Ue(e.name)),empty:(0,W.jsx)(K,{children:`This endpoint ran no queries in this range.`})})}),(0,W.jsx)(G,{title:`Calls (${J(e.calls.length)})`,flush:!0,children:(0,W.jsx)(Q,{columns:TM(`Service or host`),rows:e.calls,rowKey:e=>e.name,onRowClick:e=>w(HS(e.name)),empty:(0,W.jsx)(K,{children:`This endpoint called nothing in this range.`})})})]}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(G,{title:`Errors (${J(e.errors.length)})`,flush:!0,children:(0,W.jsx)(HD,{group:`errors`,docOf:Rg,tagged:`error`,columns:DM(e.meta.window.to),rows:e.errors,rowKey:e=>e.key,onRowClick:e=>w(he(e.key)),empty:(0,W.jsx)(K,{title:`No exceptions`,children:`Nothing failed here in this range.`})})}),(0,W.jsx)(G,{title:e.slowest.length?`Slowest Requests`:`Newest Requests`,flush:!0,action:n,children:(0,W.jsx)(VD,{kind:`requests`,itemOf:Lx,tagged:`path`,columns:EM,rows:t,rowKey:e=>e.traceId,onRowClick:e=>w(y(e.traceId)),empty:(0,W.jsx)(K,{children:`No request in this range.`})})})]})]})}function jM({service:e,endpoint:t}){let{model:n,loading:r,error:i}=yT(`endpoint`,{service:e,endpoint:t}),a=e.includes(`:`)?e.slice(e.indexOf(`:`)+1):e,o=Ix()(`endpoints`,Fg(a,t)),s=n?.totals?[[`Service`,a],[`Requests`,J(n.totals.count)],[`Users`,J(n.users.count)],[`Average`,q(n.totals.avgMs)],[`p50`,q(n.totals.p50Ms)],[`p95`,q(n.totals.p95Ms)],[`p99`,q(n.totals.p99Ms)]]:[[`Service`,a]];return(0,W.jsxs)(`div`,{className:`wl-dpage`,children:[(0,W.jsx)(BD,{model:n,loading:r,error:i,what:`this endpoint`}),(0,W.jsx)(AC,{back:[HS(e),a],icon:lb,title:t,mono:!0,badge:(0,W.jsx)(Bx,{tags:o}),stats:s,actions:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(sk,{fields:{metric:`p95_ms`,service:a,endpoint:t,name:`${t} is slow`}}),(0,W.jsx)(dS,{scopes:[Ug(a,t),Wg(a)]})]})}),n&&!n.totals&&(0,W.jsx)(G,{children:(0,W.jsx)(K,{title:`This endpoint served nothing in this time range`,children:`Pick a longer time range at the top.`})}),n?.totals&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(OM,{m:n}),(0,W.jsx)(kM,{m:n}),(0,W.jsx)(AM,{m:n})]})]})}function MM(e){return[{key:`host`,header:`Host`,cell:e=>(0,W.jsx)(`strong`,{children:e.host||`–`}),sort:e=>e.host??``},{key:`status`,header:`Status`,cell:e=>(0,W.jsx)(Kb,{tone:e.online?`success`:`neutral`,children:f(e)}),sort:e=>+!e.online},{key:`version`,header:`Version`,cell:e=>e.version??`–`,className:`wl-hide-sm`},{key:`runtime`,header:`Runtime`,cell:e=>(0,W.jsx)(`span`,{className:`wl-muted wl-small`,children:e.runtime??`–`}),className:`wl-hide-sm`},{key:`first`,header:`First seen`,cell:t=>Lb(t.firstSeenMs,e),sort:e=>-e.firstSeenMs,className:`wl-hide-sm`},{key:`seen`,header:`Last seen`,cell:t=>Lb(t.lastSeenMs,e),sort:e=>-e.lastSeenMs}]}function NM({group:e,now:t,onClose:n}){let[r,i]=(0,T.useState)(!1),a=e.instances.filter(e=>nt(e,t)).length,o=r?e.instances:e.instances.filter(e=>!nt(e,t)),s=`Hosts of ${e.service}${e.environment?` · ${e.environment}`:``} (${e.online} of ${e.instances.length} online)`,c=(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[a>0&&(0,W.jsx)(eS,{label:`Show old hosts (${J(a)})`,checked:r,onChange:e=>i(e.target.checked)}),n&&(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:n,children:`Close`})]});return(0,W.jsx)(G,{title:s,flush:!0,action:c,children:(0,W.jsx)(Q,{columns:MM(t),rows:o,rowKey:e=>e.host??``,defaultSort:{key:`seen`,desc:!1},empty:(0,W.jsx)(K,{title:`Only old hosts`,children:`Every host of this service has been offline for more than a day.`})})})}var PM=3e4;function FM(e,t,n){let r=c(),i=new URLSearchParams({...t,range:n});return r.project&&i.set(`project`,r.project),r.env&&i.set(`env`,r.env),`./api/models/${e}?${i.toString()}`}function IM(e,t,n=!0){let r=H().has(`infra`),[i]=t_(),a=Object.fromEntries(Object.entries(t).filter(e=>!!e[1])),o=new URLSearchParams(a).toString(),s=(0,T.useMemo)(()=>r&&n?FM(e,Object.fromEntries(new URLSearchParams(o)),i):null,[r,n,e,o,i]),[c,l]=(0,T.useState)(0),[u,d]=(0,T.useState)({model:null,url:null,error:null});(0,T.useEffect)(()=>{let e=setInterval(()=>l(e=>e+1),PM);return()=>clearInterval(e)},[]),(0,T.useEffect)(()=>{if(!s)return;let e=!0;return ne(s).then(t=>e&&d({model:t,url:s,error:null})).catch(t=>e&&d(e=>({...e,url:s,error:t instanceof Error?t.message:String(t)}))),()=>void(e=!1)},[s,c]);let f=u.url===s;return{model:u.model,loading:!!s&&!f&&!u.error,error:u.error,supported:r}}var LM=e=>df(e,`1`),RM=e=>df(e,`By`),zM=e=>df(e,`By/s`);function BM(e){return e==null?`–`:e<.995?`${Math.round(e*1e3)} millicores`:`${e>=10?e.toFixed(0):e.toFixed(2)} cores`}function VM(e,t){return e===null?`–`:t?`${RM(e)} of ${RM(t)}`:RM(e)}function HM({share:e}){return e===null?(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`}):(0,W.jsxs)(`span`,{className:`wl-usage ${e>=.9?`wl-bad`:e>=.75?`wl-warn`:``}`,title:LM(e),children:[(0,W.jsx)(`span`,{className:`wl-usage-track`,"aria-hidden":`true`,children:(0,W.jsx)(`span`,{style:{width:`${Math.min(100,Math.max(0,e*100))}%`}})}),(0,W.jsx)(`span`,{className:`wl-usage-num`,children:LM(e)})]})}function UM({icon:e,label:t,value:n,note:r,danger:i=!1}){return(0,W.jsxs)(`section`,{className:`wl-panel wl-stat`,children:[(0,W.jsx)(e,{className:`wl-stat-icon${i?` wl-danger`:``}`,"aria-hidden":!0}),(0,W.jsx)(`div`,{className:`wl-stat-label`,children:t}),(0,W.jsx)(`div`,{}),(0,W.jsx)(`div`,{className:`wl-stat-value`,children:n}),(0,W.jsx)(`div`,{className:`wl-stat-foot`,children:(0,W.jsx)(`div`,{className:`wl-delta`,children:(0,W.jsx)(`span`,{children:r})})})]})}function WM({back:e,backLabel:t,icon:n,title:r,status:i,facts:a}){return(0,W.jsxs)(`section`,{className:`wl-panel wl-svc-head`,children:[(0,W.jsxs)(`a`,{className:`wl-back`,href:e,children:[(0,W.jsx)(C_,{size:14,"aria-hidden":`true`}),` `,t]}),(0,W.jsxs)(`h1`,{className:`wl-svc-title`,children:[(0,W.jsx)(n,{size:22,"aria-hidden":!0}),(0,W.jsx)(`span`,{className:`wl-svc-name`,children:r}),i&&(0,W.jsx)(`span`,{className:`wl-svc-status`,children:i})]}),(0,W.jsx)(`dl`,{className:`wl-stats`,children:a.map(([e,t])=>(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`dt`,{children:e}),(0,W.jsx)(`dd`,{children:t})]},e))})]})}function GM({title:e,starts:t,lines:n,format:r}){let i=n.every(e=>e.values.every(e=>e===null));return(0,W.jsx)(G,{title:e,children:i?(0,W.jsx)(K,{title:`No data in this range`}):(0,W.jsx)(iE,{starts:t,lines:n,height:200,format:r})})}function KM(e){return[{key:`service`,header:`Service`,cell:e=>(0,W.jsx)(`a`,{href:HS(e.service),children:(0,W.jsx)(`strong`,{children:e.service})}),sort:e=>e.service},{key:`host`,header:`Host or Pod`,cell:e=>e.host||e.pod||`–`,className:`wl-hide-sm`},{key:`env`,header:`Environment`,cell:e=>e.environment||`–`,className:`wl-hide-sm`},{key:`version`,header:`Version`,cell:e=>e.version||`–`,className:`wl-hide-sm`},{key:`status`,header:`Status`,cell:e=>(0,W.jsx)(Kb,{tone:e.online?`success`:`neutral`,children:e.online?`Online`:`Offline`}),sort:e=>+!e.online},{key:`seen`,header:`Last seen`,cell:t=>Lb(t.lastSeenMs,e),sort:e=>-e.lastSeenMs}]}function qM({services:e,now:t,empty:n}){return(0,W.jsx)(G,{title:`Services`,flush:!0,children:(0,W.jsx)(Q,{columns:KM(t),rows:e,rowKey:e=>`${e.service}|${e.host}|${e.environment}`,defaultSort:{key:`service`,desc:!1},empty:(0,W.jsx)(K,{title:`No services`,children:n})})})}function JM({supported:e,what:t}){return(0,W.jsx)(G,{children:(0,W.jsxs)(K,{title:e?`No ${t} metrics yet`:`This dashboard does not keep ${t} metrics`,children:[e?`Run the OpenTelemetry Collector with the WizeLens recipe (deploy/helm/wizelens-collector or deploy/collector/host.yaml) and point it at this hub or the cloud.`:`Send host and Kubernetes metrics to a WizeLens hub or the cloud with the OpenTelemetry Collector.`,` `,(0,W.jsx)(`a`,{href:`https://wizelens.com/docs/kubernetes`,target:`_blank`,rel:`noreferrer`,children:`How to set it up`})]})})}var YM={Running:`success`,Pending:`warning`,Failed:`danger`,Succeeded:`neutral`,Unknown:`neutral`},XM=(e,t)=>e!==null&&t?e/t:null,ZM=(e,t=!1)=>e>0?(0,W.jsx)(`strong`,{className:t?`wl-text-error`:void 0,children:J(e)}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`0`});function QM({phase:e}){return e?(0,W.jsx)(Kb,{tone:YM[e]??`neutral`,children:e}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`Unknown`})}var $M=e=>[{key:`name`,header:`Node`,cell:e=>(0,W.jsx)(`a`,{href:YS(e.name),children:(0,W.jsx)(`strong`,{children:e.name})}),sort:e=>e.name},{key:`ready`,header:`Status`,cell:e=>e.ready===null?(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`}):(0,W.jsx)(Kb,{tone:e.ready?`success`:`danger`,children:e.ready?`Ready`:`Not ready`}),sort:e=>+!e.ready},{key:`cpu`,header:`CPU`,cell:e=>e.cpuAlloc?(0,W.jsx)(HM,{share:XM(e.cpu,e.cpuAlloc)}):BM(e.cpu),sort:e=>e.cpu??-1},{key:`mem`,header:`Memory`,cell:e=>e.memAlloc?(0,W.jsx)(HM,{share:XM(e.memory,e.memAlloc)}):RM(e.memory),sort:e=>e.memory??-1},{key:`pods`,header:`Pods`,cell:e=>J(e.pods),num:!0,sort:e=>e.pods},{key:`pending`,header:`Pending`,cell:e=>ZM(e.pending,!0),num:!0,sort:e=>e.pending,className:`wl-hide-sm`},{key:`restarts`,header:`Restarts`,cell:e=>ZM(e.restartsNew,!0),num:!0,sort:e=>e.restartsNew,className:`wl-hide-sm`},{key:`host`,header:`Host`,cell:e=>e.host?(0,W.jsx)(`a`,{href:JS(e.name),children:`Host page`}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`}),className:`wl-hide-sm`},{key:`seen`,header:`Last seen`,cell:t=>Lb(t.lastSeenMs,e),sort:e=>-e.lastSeenMs,className:`wl-hide-sm`}];function eN({rows:e,now:t}){return(0,W.jsx)(Q,{columns:$M(t),rows:e,rowKey:e=>e.name,defaultSort:{key:`name`,desc:!1},empty:(0,W.jsx)(K,{title:`No nodes`,children:`kubeletstats sends nothing yet.`})})}var tN=[{key:`name`,header:`Workload`,cell:e=>(0,W.jsx)(`a`,{href:ZS(e.key),children:(0,W.jsx)(`strong`,{children:e.name})}),sort:e=>e.name},{key:`kind`,header:`Kind`,cell:e=>(0,W.jsx)(Y,{tone:`neutral`,children:e.kind}),sort:e=>e.kind},{key:`ns`,header:`Namespace`,cell:e=>e.namespace||`–`,sort:e=>e.namespace,className:`wl-hide-sm`},{key:`ready`,header:`Ready`,cell:e=>e.desired===null?(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`}):(0,W.jsx)(`span`,{className:(e.ready??0)<e.desired?`wl-text-error`:void 0,children:`${J(e.ready)} of ${J(e.desired)}`}),sort:e=>e.desired?(e.ready??0)/e.desired:1},{key:`pods`,header:`Pods`,cell:e=>J(e.pods),num:!0,sort:e=>e.pods},{key:`pending`,header:`Pending`,cell:e=>ZM(e.pending,!0),num:!0,sort:e=>e.pending},{key:`restarts`,header:`Restarts`,cell:e=>ZM(e.restartsNew,!0),num:!0,sort:e=>e.restartsNew},{key:`oom`,header:`OOM Killed`,cell:e=>ZM(e.oomKills,!0),num:!0,sort:e=>e.oomKills}];function nN({rows:e}){return(0,W.jsx)(Q,{columns:tN,rows:e,rowKey:e=>e.key,defaultSort:{key:`name`,desc:!1},empty:(0,W.jsx)(K,{title:`No workloads`,children:`k8s_cluster sends nothing yet, or no pod names its workload.`})})}var rN=[{key:`name`,header:`Pod`,cell:e=>(0,W.jsx)(`a`,{href:XS(e.namespace,e.name),children:(0,W.jsx)(`strong`,{children:e.name})}),sort:e=>e.name},{key:`ns`,header:`Namespace`,cell:e=>e.namespace||`–`,sort:e=>e.namespace,className:`wl-hide-sm`},{key:`phase`,header:`Phase`,cell:e=>(0,W.jsx)(QM,{phase:e.phase}),sort:e=>e.phase},{key:`node`,header:`Node`,cell:e=>e.node?(0,W.jsx)(`a`,{href:YS(e.node),children:e.node}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`}),sort:e=>e.node,className:`wl-hide-sm`},{key:`cpu`,header:`CPU`,cell:e=>BM(e.cpu),num:!0,sort:e=>e.cpu??-1},{key:`mem`,header:`Memory`,cell:e=>e.memLimit?(0,W.jsx)(HM,{share:XM(e.memory,e.memLimit)}):RM(e.memory),sort:e=>e.memory??-1},{key:`restarts`,header:`Restarts`,cell:e=>e.restartsNew>0?(0,W.jsx)(`strong`,{className:`wl-text-error`,children:`${J(e.restarts)} (+${J(e.restartsNew)})`}):J(e.restarts),num:!0,sort:e=>e.restartsNew*1e6+e.restarts},{key:`oom`,header:`OOM Killed`,cell:e=>ZM(e.oomKills,!0),num:!0,sort:e=>e.oomKills,className:`wl-hide-sm`},{key:`services`,header:`Services`,cell:e=>e.services.length?(0,W.jsx)(`span`,{className:`wl-infra-chips`,children:e.services.map(e=>(0,W.jsx)(`a`,{className:`wl-infra-chip`,href:HS(e),children:e},e))}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`}),sort:e=>e.services.length,className:`wl-hide-sm`}];function iN({rows:e,empty:t=`No pods match these filters.`}){return(0,W.jsx)(Q,{columns:rN,rows:e,rowKey:e=>e.key,defaultSort:{key:`name`,desc:!1},empty:(0,W.jsx)(K,{title:`No pods`,children:t})})}function aN({name:e}){let t=H().has(`infra`),n=IM(`kubernetes`,{service:e},t),r=IM(`hosts`,{q:e},t),i=n.model?.pods??[],a=(r.model?.hosts??[]).filter(t=>t.services.includes(e));return(0,W.jsxs)(W.Fragment,{children:[i.length>0&&(0,W.jsx)(G,{title:`Pods (${i.length})`,flush:!0,children:(0,W.jsx)(iN,{rows:i})}),a.length>0&&(0,W.jsx)(G,{title:`Runs On`,children:(0,W.jsx)(`ul`,{className:`wl-svc-edges`,children:a.map(e=>(0,W.jsxs)(`li`,{children:[(0,W.jsx)(`a`,{href:JS(e.name),children:e.name}),(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[`CPU `,(0,W.jsx)(HM,{share:e.cpu}),` Memory `,(0,W.jsx)(HM,{share:e.mem})]})]},e.name))})})]})}var oN={api:`Requests`,web:`Requests`,worker:`Messages Handled`,queue:`Messages Sent`,database:`Queries`,external:`Calls`},sN=`color-mix(in srgb, var(--wl-red) 45%, transparent)`;function cN({m:e,row:t}){let n=e.prevRow,r=e.meta.compareLabel,i=(t,n)=>e.meta.hasPrev?le(t,n??0):null,a=e.chart.requests.map((t,n)=>t?(e.chart.errors[n]??0)/t*100:null);return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)($,{icon:kv,label:oN[t.kind],value:J(t.requests),change:i(t.requests,n?.requests),upIsGood:!0,compareLabel:r,series:e.chart.requests}),(0,W.jsx)($,{icon:tb,label:`Error Rate`,value:Cb(t.errorRate),change:i(t.errorRate,n?.errorRate),upIsGood:!1,compareLabel:r,series:a,danger:!0}),(0,W.jsx)($,{icon:av,label:`Avg Latency`,value:q(t.avgMs),change:i(t.avgMs,n?.avgMs),upIsGood:!1,compareLabel:r,series:e.chart.avgMs}),(0,W.jsx)($,{icon:Zy,label:`p95 Latency`,value:q(t.p95Ms),change:i(t.p95Ms,n?.p95Ms),upIsGood:!1,compareLabel:r,series:e.chart.p95Ms}),e.owned&&(0,W.jsx)(YA,{apdex:e.apdex,compareLabel:r})]})}function lN({m:e,row:t}){let n=oN[t.kind];return(0,W.jsx)(G,{title:`${n} Over Time`,children:(0,W.jsx)(iE,{starts:e.starts,lines:[{label:n,values:e.chart.requests,color:`var(--wl-blue)`},{label:xb(e.meta.compare),values:e.chart.prevRequests,color:`var(--wl-slate)`,dashed:!0}],bars:[{label:`Errors`,values:e.chart.errors,color:sN}],height:220,separateBarScale:!0,format:J})})}function uN({m:e}){let t=[{label:`p95`,values:e.chart.p95Ms,color:`var(--wl-orange)`},{label:`Average`,values:e.chart.avgMs,color:`var(--wl-blue)`}];return(0,W.jsx)(G,{title:`Latency Over Time`,children:(0,W.jsx)(iE,{starts:e.starts,lines:t,height:220,format:e=>q(e)})})}var dN={database:`System`,external:`Host`,queue:`Queue`,web:`Source`};function fN(e,t){let{registry:n}=Se(),[r]=ee(),[i]=b(),a=H().has(`accounts`);return!t||!n?[]:rt(n.services.filter(t=>t.service===e&&xe(t,{env:r,project:i},!a)))}function pN(e,n,r){let i=[[`Kind`,zS[e.kind]]];e.detail&&dN[e.kind]&&i.push([dN[e.kind],e.detail]);let a=n[0]?.newest;if(!a)return i;let o=n.reduce((e,t)=>e+t.instances.length,0),s=n.reduce((e,t)=>e+t.online,0),c=[...new Set(n.map(e=>e.environment).filter(Boolean))];return i.push([`Hosts`,`${J(s)} of ${J(o)} online`]),c.length&&i.push([c.length===1?`Environment`:`Environments`,c.join(`, `)]),a.version&&i.push([`Version`,a.version]),a.runtime&&i.push([`Runtime`,a.runtime]),i.push([`Sends with`,t[a.via]],[`Last seen`,Lb(a.lastSeenMs,r)]),i}function mN({row:e,groups:t}){let{updatedMs:n}=Se(),r=RS[e.kind],i=Ix()(`services`,Lg(e.name)),a=e.kind===`api`||e.kind===`worker`||e.kind===`web`;return(0,W.jsxs)(`section`,{className:`wl-panel wl-svc-head`,children:[(0,W.jsxs)(`a`,{className:`wl-back`,href:S(`services`),children:[(0,W.jsx)(C_,{size:14,"aria-hidden":`true`}),` All services`]}),(0,W.jsxs)(`h1`,{className:`wl-svc-title`,children:[(0,W.jsx)(r,{size:22,"aria-hidden":!0}),(0,W.jsx)(`span`,{className:`wl-svc-name`,children:e.name}),(0,W.jsx)(`span`,{className:`wl-svc-status`,children:(0,W.jsx)(WS,{status:e.status})}),(0,W.jsx)(Bx,{tags:i}),a&&(0,W.jsxs)(`span`,{className:`wl-dhead-actions`,children:[e.kind!==`web`&&(0,W.jsx)(sk,{fields:{metric:`error_rate`,service:e.name,name:`${e.name} errors`}}),(0,W.jsx)(dS,{scopes:[Wg(e.name)]})]})]}),(0,W.jsx)(`dl`,{className:`wl-stats`,children:pN(e,t,n).map(([e,t])=>(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`dt`,{children:e}),(0,W.jsx)(`dd`,{children:t})]},e))})]})}var hN=(e,t)=>t?e/t*100:0,gN={api:`Endpoint`,web:`Call`,worker:`Operation`,queue:`Operation`,database:`Query`,external:`Call`};function _N(e){return[{key:`name`,header:gN[e],className:`wl-svc-ep-name`,cell:e=>(0,W.jsx)(`span`,{className:`wl-truncate wl-mono`,title:e.name,children:e.name}),sort:e=>e.name},{key:`count`,header:`Count`,num:!0,cell:e=>J(e.count),sort:e=>e.count},{key:`errors`,header:`Errors`,num:!0,cell:e=>(0,W.jsx)(`span`,{className:e.errors?`wl-text-error`:void 0,children:J(e.errors)}),sort:e=>e.errors},{key:`rate`,header:`Error Rate`,num:!0,cell:e=>Cb(hN(e.errors,e.count)),sort:e=>hN(e.errors,e.count)},{key:`avg`,header:`Avg Latency`,num:!0,cell:e=>q(e.avgMs),sort:e=>e.avgMs??0}]}function vN({open:e,total:t,onToggle:n}){return t<=10?null:(0,W.jsx)(`button`,{type:`button`,className:`wl-view-all wl-link-btn`,onClick:n,children:e?`Show top 10`:`View all ${J(t)}`})}function yN(e){return e.kind===`api`||e.kind===`worker`?[S(`requests`,[],{service:e.name}),`View requests`]:e.kind===`database`?[S(`database`,[],{database:e.name}),`View queries`]:null}function bN(e){if(e.kind===`api`)return t=>w(_e(e.key,t.name));if(e.kind===`database`)return e=>w(Ue(e.name))}function xN({m:e,row:t}){let[n,r]=(0,T.useState)(!1),i=n?e.endpoints:e.endpoints.slice(0,10),a=yN(t),o=t.kind===`database`?`Queries`:t.kind===`api`?`Endpoints`:`Operations`,s=Ix(),c=t.kind===`api`||t.kind===`worker`?Vx(_N(t.kind),`name`,e=>s(`endpoints`,Fg(t.name,e.name))):_N(t.kind),l=(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[(0,W.jsx)(vN,{open:n,total:e.endpoints.length,onToggle:()=>r(!n)}),a&&(0,W.jsx)(_b,{href:a[0],label:a[1]})]});return(0,W.jsx)(G,{title:`${o} (${J(e.endpointCount)})`,action:l,flush:!0,children:(0,W.jsx)(Q,{columns:c,rows:i,rowKey:e=>e.name,onRowClick:bN(t),defaultSort:{key:`count`,desc:!0},empty:(0,W.jsx)(K,{children:`Nothing recorded in this range.`})})})}var SN=e=>[{key:`name`,header:`Service`,cell:t=>(0,W.jsx)(`a`,{href:HS(t[e]),onClick:e=>e.stopPropagation(),children:t[e]}),sort:t=>t[e]},{key:`calls`,header:`Calls`,num:!0,cell:e=>J(e.calls),sort:e=>e.calls},{key:`errors`,header:`Errors`,num:!0,cell:e=>(0,W.jsx)(`span`,{className:e.errors?`wl-text-error`:void 0,children:J(e.errors)}),sort:e=>e.errors},{key:`avg`,header:`Avg Latency`,num:!0,cell:e=>q(e.avgMs),sort:e=>e.avgMs??0}];function CN({title:e,edges:t,side:n,empty:r}){return(0,W.jsx)(G,{title:e,flush:!0,children:(0,W.jsx)(Q,{columns:SN(n),rows:t,rowKey:e=>`${e.from}→${e.to}`,onRowClick:e=>w(HS(e[n])),defaultSort:{key:`calls`,desc:!0},empty:(0,W.jsx)(K,{children:r})})})}var wN=e=>e.replace(/^[A-Z]+ /,``);function TN(e){return[{key:`error`,header:`Error`,className:`wl-svc-wide`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-truncate`,title:`${e.type}: ${e.message}`,children:[e.type,`: `,e.message]})},{key:`endpoint`,header:`Endpoint`,className:`wl-svc-mid`,cell:e=>(0,W.jsx)(`span`,{className:`wl-truncate`,title:e.endpoint,children:wN(e.endpoint)})},{key:`seen`,header:`Last Seen`,className:`wl-nowrap`,sort:e=>e.lastSeenMs,cell:t=>Lb(t.lastSeenMs,e)},{key:`count`,header:`Count`,num:!0,sort:e=>e.count,cell:e=>J(e.count)}]}function EN({m:e,name:t}){let{updatedMs:n}=Se(),[r,i]=(0,T.useState)(!1),{groups:a,total:o}=e.errors,s=Ix(),c=(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[(0,W.jsx)(vN,{open:r,total:a.length,onToggle:()=>i(!r)}),(0,W.jsx)(_b,{href:S(`errors`,[],{service:t}),label:`View errors`})]});return(0,W.jsx)(G,{title:`Top Errors (${J(o)})`,action:c,flush:!0,children:(0,W.jsx)(Q,{columns:Vx(TN(n),`error`,e=>s(`errors`,Rg(e))),rows:r?a:a.slice(0,10),rowKey:e=>e.key,onRowClick:e=>w(he(e.key)),empty:(0,W.jsx)(K,{title:`No exceptions`,children:`Nothing failed in this time range.`})})})}var DN=[{key:`path`,header:`Request`,className:`wl-svc-wide`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-truncate`,title:`${e.method} ${e.path}`,children:[e.method,` `,e.path]})},{key:`status`,header:`Status`,cell:e=>(0,W.jsx)(Kb,{tone:Wb(e.status),colorText:(e.status??0)>=500,children:e.aborted?`Aborted`:e.status??`…`})},{key:`duration`,header:`Duration`,num:!0,sort:e=>e.durationMs,cell:e=>(0,W.jsx)(`span`,{className:Bn(e)?`wl-text-error`:void 0,children:q(e.durationMs)})}];function ON({m:e,name:t}){let n=Fx(`requests`,e.slowest,Lx),r=e.requestCount>0&&(0,W.jsx)(_b,{href:S(`requests`,[],{service:t,sort:`duration`}),label:`View all ${J(e.requestCount)}`});return(0,W.jsx)(G,{title:`Slowest Requests`,action:r,flush:!0,children:(0,W.jsx)(Q,{columns:Vx(DN,`path`,n),rows:e.slowest,rowKey:e=>e.traceId,onRowClick:e=>w(y(e.traceId)),empty:(0,W.jsx)(K,{title:`No requests`,children:`No request went through this service in this range.`})})})}var kN=bA.filter(e=>e.key!==`service`).map(e=>e.key===`category`?{...e,cell:e=>(0,W.jsx)(`span`,{className:`wl-truncate`,title:e.category,children:e.category})}:e);function AN({m:e,name:t}){let{total:n,warnings:r,errors:i,rows:a}=e.logs,o=Fx(`logs`,a,Rx),s=(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[n>0&&(0,W.jsxs)(`span`,{className:`wl-muted wl-small`,children:[J(r),` warnings · `,J(i),` errors`]}),(0,W.jsx)(_b,{href:S(`logs`,[],{service:t}),label:n>0?`View all ${J(n)}`:`View logs`})]});return(0,W.jsx)(G,{title:`Recent Logs`,action:s,flush:!0,className:`wl-svc-logs`,children:(0,W.jsx)(Q,{columns:Vx(kN,`message`,o),rows:a,rowKey:e=>e.key,empty:(0,W.jsx)(K,{title:`No log lines`,children:`Lines this service writes through WizeLens loggers show up here.`})})})}function jN({name:e}){let{model:t}=iD({service:e}),n=t?.runtime.find(t=>t.service===e)?.stats??[];return n.length===0?null:(0,W.jsx)(G,{title:`Runtime`,action:(0,W.jsx)(_b,{href:S(`metrics`,[],{service:e}),label:`View metrics`}),className:`wl-svc-runtime`,children:(0,W.jsx)(`div`,{className:`wl-metric-tiles`,children:n.map(t=>(0,W.jsxs)(`a`,{className:`wl-metric-tile`,href:S(`metrics`,[],{metric:t.metric,service:e}),title:t.metric,children:[(0,W.jsx)(`span`,{children:t.label}),(0,W.jsx)(`strong`,{children:t.lastText}),(0,W.jsx)(fD,{values:t.spark,width:240,height:28,stretch:!0})]},t.key))})})}var MN=(e,t)=>{let n=e[e.indexOf(t)+1];return!!n&&t.requests>0&&n.requests>0&&t.errorRate>n.errorRate};function NN(e){return[{key:`version`,header:`Version`,cell:t=>(0,W.jsxs)(`span`,{className:`wl-cell-icon`,children:[(0,W.jsx)(`span`,{className:`wl-mono`,children:t.version}),t===e[0]&&(0,W.jsx)(Y,{tone:`info`,children:`Latest`})]})},{key:`first`,header:`Released`,className:`wl-nowrap`,cell:e=>Mb(e.firstMs)},{key:`requests`,header:`Requests`,num:!0,cell:e=>J(e.requests)},{key:`rate`,header:`Error Rate`,num:!0,cell:t=>t.requests?(0,W.jsx)(`span`,{className:MN(e,t)?`wl-text-error`:void 0,children:Cb(t.errorRate*100)}):`–`},{key:`p95`,header:`p95`,num:!0,cell:e=>e.p95Ms===null?`–`:q(e.p95Ms)},{key:`new`,header:`New Errors`,num:!0,cell:e=>e.newErrors?(0,W.jsx)(`span`,{className:`wl-text-error`,children:J(e.newErrors)}):`0`}]}function PN({m:e,name:t}){return(0,W.jsx)(G,{title:`Versions (${J(e.versions.length)})`,flush:!0,children:(0,W.jsx)(Q,{columns:NN(e.versions),rows:e.versions,rowKey:e=>e.version,onRowClick:e=>w(S(`errors`,[],{service:t,release:e.version,status:`all`})),empty:(0,W.jsxs)(K,{title:`No versions seen`,children:[`Set the app's version on the add-on (the `,(0,W.jsx)(`code`,{children:`release`}),` option or `,(0,W.jsx)(`code`,{children:`WIZELENS_RELEASE`}),`) to compare releases here.`]})})})}var FN=new Set([`api`,`web`,`database`,`external`]);function IN({id:e}){return(0,W.jsxs)(G,{children:[(0,W.jsxs)(`a`,{className:`wl-back`,href:S(`services`),children:[(0,W.jsx)(C_,{size:14,"aria-hidden":`true`}),` All services`]}),(0,W.jsx)(K,{title:`${e} did nothing in this time range`,children:`Pick a longer time range at the top, or open another service.`})]})}function LN({m:e,row:t}){let{updatedMs:n}=Se(),r=fN(t.name,e.owned);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(mN,{row:t,groups:r}),(0,W.jsx)(cN,{m:e,row:t}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(lN,{m:e,row:t}),(0,W.jsx)(uN,{m:e})]}),FN.has(t.kind)&&(0,W.jsx)(xN,{m:e,row:t}),e.owned&&(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(EN,{m:e,name:t.name}),(0,W.jsx)(ON,{m:e,name:t.name})]}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(CN,{title:`Called By`,edges:e.incoming,side:`from`,empty:`Nothing called this service in this range.`}),(0,W.jsx)(CN,{title:`Calls`,edges:e.outgoing,side:`to`,empty:`This service called nothing in this range.`})]}),e.owned&&(0,W.jsx)(PN,{m:e,name:t.name}),e.owned&&(0,W.jsx)(AN,{m:e,name:t.name}),e.owned&&(0,W.jsx)(jN,{name:t.name}),e.owned&&(0,W.jsx)(aN,{name:t.name}),r.map(e=>(0,W.jsx)(NM,{group:e,now:n},e.key))]})}function RN({id:e}){let{model:t,loading:n,error:r}=yT(`service`,{service:e});return(0,W.jsxs)(`div`,{className:`wl-svc-page`,children:[(0,W.jsx)(BD,{model:t,loading:n,error:r,what:`this service`}),t&&(t.row?(0,W.jsx)(LN,{m:t,row:t.row}):(0,W.jsx)(IN,{id:e}))]})}var zN=190,BN=46,VN=110,HN=22;function UN(e,t){let n=new Map(e.map(e=>[e.name,0]));for(let r=0;r<e.length;r++){let r=!1;for(let i of t){let t=(n.get(i.from)??0)+1;i.from!==i.to&&n.has(i.to)&&t>n.get(i.to)&&t<e.length&&(n.set(i.to,t),r=!0)}if(!r)break}return n}function WN(e,t){let n=UN(e,t),r=new Map;for(let t of e)r.set(n.get(t.name),[...r.get(n.get(t.name))??[],t]);let i=new Map,a=0;for(let[e,t]of r)a=Math.max(a,t.length),t.forEach((t,n)=>i.set(t.name,{row:t,x:e*300,y:n*68}));let o=Math.max(1,...[...r.keys()].map(e=>e+1));return{nodes:i,width:o*zN+(o-1)*VN,height:a*68-HN}}function GN({edge:e,a:t,b:n}){let r=t.x+zN,i=t.y+BN/2,a=n.x,o=n.y+BN/2,s=(r+a)/2,c=e.calls?e.errors/e.calls*100:0,l=[J(e.calls),e.p95Ms==null?q(e.avgMs):`p95 ${q(e.p95Ms)}`,...e.errors?[`${Cb(c)} failed`]:[]].join(` · `);return(0,W.jsxs)(`g`,{className:e.errors?`wl-dep-edge wl-failing`:`wl-dep-edge`,onClick:()=>w(HS(e.to)),role:`link`,"aria-label":`Open ${e.to}`,children:[(0,W.jsx)(`title`,{children:`${e.from} → ${e.to}: ${l}`}),(0,W.jsx)(`path`,{d:`M${r},${i} C${s},${i} ${s},${o} ${a},${o}`,fill:`none`}),(0,W.jsx)(`path`,{className:`wl-dep-hit`,d:`M${r},${i} C${s},${i} ${s},${o} ${a},${o}`,fill:`none`}),(0,W.jsx)(`text`,{x:s,y:(i+o)/2-6,textAnchor:`middle`,children:l})]})}function KN({p:e,selected:t}){let r=RS[e.row.kind];return(0,W.jsxs)(`g`,{className:`wl-dep-node${t?` wl-selected`:``}`,transform:`translate(${e.x},${e.y})`,onClick:()=>n({service:e.row.key}),role:`button`,"aria-label":`Show ${e.row.name}`,children:[(0,W.jsx)(`rect`,{width:zN,height:BN,rx:`10`}),(0,W.jsx)(`foreignObject`,{x:`10`,y:`0`,width:170,height:BN,children:(0,W.jsxs)(`div`,{className:`wl-dep-label`,children:[(0,W.jsx)(r,{size:16,"aria-hidden":!0}),(0,W.jsx)(`span`,{className:`wl-truncate`,children:e.row.name}),(0,W.jsx)(`i`,{className:`wl-dot wl-tone-${VS(e.row.status)}`})]})})]})}function qN({rows:e,edges:t,selectedKey:n}){if(e.length===0)return(0,W.jsx)(K,{children:`No calls recorded in this range.`});let{nodes:r,width:i,height:a}=WN(e,t);return(0,W.jsx)(`div`,{className:`wl-dep-map`,children:(0,W.jsxs)(`svg`,{width:i,height:a+8,viewBox:`0 -4 ${i} ${a+8}`,role:`img`,"aria-label":`Service dependency map`,children:[t.map(e=>{let t=r.get(e.from),n=r.get(e.to);return t&&n&&t!==n?(0,W.jsx)(GN,{edge:e,a:t,b:n},`${e.from}→${e.to}`):null}),[...r.values()].map(e=>(0,W.jsx)(KN,{p:e,selected:e.row.key===n},e.row.key))]})})}function JN({ask:e,onClose:t}){let n=(0,T.useRef)(null),[r,i]=(0,T.useState)(e.input?.initial??``),a=(0,T.useRef)(t);a.current=t,(0,T.useEffect)(()=>{let e=n.current;e?.showModal();let t=e=>(e.preventDefault(),a.current(null));return e?.addEventListener(`cancel`,t),()=>e?.removeEventListener(`cancel`,t)},[]);let o=e.typeToConfirm?r===e.typeToConfirm:!e.input||r.trim()!==``,s=n=>{n.preventDefault(),o&&t(e.input?e.input.password?r:r.trim():`yes`)},c=e.typeToConfirm!==void 0||e.input!==void 0;return(0,W.jsx)(`dialog`,{ref:n,className:`wl-dialog`,"aria-labelledby":`wl-dialog-${e.id}`,onClick:e=>e.target===n.current&&t(null),onKeyDown:e=>e.key===`Escape`&&(e.preventDefault(),t(null)),children:(0,W.jsxs)(`form`,{onSubmit:s,children:[(0,W.jsx)(`h2`,{id:`wl-dialog-${e.id}`,children:e.title}),e.body&&(0,W.jsx)(`div`,{className:`wl-dialog-body`,children:e.body}),c&&(0,W.jsx)(Z,{label:e.input?.label??`Type ${e.typeToConfirm} to confirm`,value:r,onChange:e=>i(e.target.value),autoFocus:!0,type:e.input?.password?`password`:`text`,autoComplete:e.input?.password?`current-password`:`off`}),(0,W.jsxs)(`div`,{className:`wl-dialog-actions`,children:[(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:()=>t(null),children:`Cancel`}),(0,W.jsx)(`button`,{type:`submit`,className:`wl-btn ${e.danger?`wl-btn-danger`:`wl-btn-primary`}`,disabled:!o,autoFocus:!c,children:e.confirmLabel})]})]})})}var YN=1;function XN(){let[e,t]=(0,T.useState)(null),n=e=>new Promise(n=>t({...e,id:YN++,resolve:n}));return{dialog:e&&(0,W.jsx)(JN,{ask:e,onClose:n=>{e?.resolve(n),t(null)}},e.id),confirm:async e=>await n(e)!==null,prompt:e=>n(e)}}var ZN={viewer:`Viewer`,member:`Member`,admin:`Admin`,owner:`Owner`},QN={viewer:`Reads all data.`,member:`Reads data, and makes alerts and share links.`,admin:`Also manages projects, keys, members, and single sign-on.`,owner:`Everything, including other owners and deleting the organization.`},$N=[`viewer`,`member`,`admin`,`owner`].map(e=>[e,ZN[e]]),eP=e=>e===`owner`||e===`admin`,tP=e=>e.online>0?`Online`:f(e.newest),nP=e=>e.instances.length===1?`1`:`${J(e.online)} of ${J(e.instances.length)} online`;function rP(e){return[{key:`service`,header:`Service`,cell:e=>(0,W.jsx)(`strong`,{children:e.service}),sort:e=>e.service},{key:`status`,header:`Status`,cell:e=>(0,W.jsx)(Kb,{tone:e.online>0?`success`:`neutral`,children:tP(e)}),sort:e=>e.online>0?0:1},{key:`project`,header:`Project`,cell:e=>e.project??`–`,sort:e=>e.project??``},{key:`env`,header:`Environment`,cell:e=>e.environment??`–`,sort:e=>e.environment??``},{key:`hosts`,header:`Hosts`,cell:nP,sort:e=>-e.instances.length},{key:`via`,header:`Sends with`,cell:e=>(0,W.jsx)(Y,{tone:e.newest.via===`addon`?`info`:`neutral`,children:t[e.newest.via]})},{key:`runtime`,header:`Runtime`,cell:e=>(0,W.jsx)(`span`,{className:`wl-muted wl-small`,children:e.newest.runtime??`–`}),className:`wl-hide-sm`},{key:`seen`,header:`Last seen`,cell:t=>Lb(t.newest.lastSeenMs,e),sort:e=>-e.newest.lastSeenMs}]}function iP(e){let[t]=b(),n=Ne(Ce())?.org.role,r=H().has(`accounts`),{dialog:i,confirm:a}=XN(),[o,s]=(0,T.useState)(null),c=async()=>{if(!await a({title:`Forget offline hosts?`,body:`Hosts that are offline leave this list. Each service keeps its newest host. Traces stay, and a host that sends again comes back.`,confirmLabel:`Forget hosts`}))return;let e=0,n=await Wx(async()=>e=(await x(`POST`,`./api/projects/${t}/services/forget`)).removed,()=>m.refresh());s(n??`Forgot ${J(e)} offline ${e===1?`host`:`hosts`}.`)};return{button:r&&t&&eP(n)&&e>0?(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:()=>void c(),children:`Forget offline hosts`}):null,dialog:i,note:o}}function aP(){let{registry:e,updatedMs:t}=Se(),[n]=ee(),[r]=b(),i=H().has(`accounts`),[a,o]=(0,T.useState)(null),s=rt((e?.services??[]).filter(e=>xe(e,{env:n,project:r},!i))),c=iP(s.reduce((e,t)=>e+t.instances.slice(1).filter(e=>!e.online).length,0));if(!e)return null;let l=s.find(e=>e.key===a),u=s.filter(e=>e.online>0).length,d=`Sending to this ${i?`project`:`hub`} (${u} of ${s.length} online)`,f=(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[c.button,(0,W.jsxs)(`span`,{className:`wl-muted wl-small`,children:[J(e.traces),` traces kept`]})]});return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(G,{title:d,flush:!0,action:f,children:[c.note&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-info wl-panel-banner`,children:c.note}),(0,W.jsx)(Q,{columns:rP(t),rows:s,rowKey:e=>e.key,onRowClick:e=>o(e.key===a?null:e.key),selectedKey:a,defaultSort:{key:`status`,desc:!1},empty:(0,W.jsxs)(K,{title:`No service has sent data yet`,children:[(0,W.jsx)(`a`,{href:`#/settings/connect`,children:`Connect one`}),` in Settings.`]})}),c.dialog]}),l&&(0,W.jsx)(NM,{group:l,now:t,onClose:()=>o(null)},l.key)]})}function oP({items:e,row:t}){let n=t.kind,r=Ix(),i=e=>n===`api`||n===`worker`?r(`endpoints`,Fg(t.name,e.name)):[];return e.length===0?(0,W.jsx)(K,{children:`Nothing recorded in this range.`}):(0,W.jsxs)(`table`,{className:`wl-table wl-svc-endpoints`,children:[(0,W.jsx)(`thead`,{children:(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`th`,{children:n===`database`?`Query`:n===`external`?`Call`:`Endpoint`}),(0,W.jsx)(`th`,{className:`wl-num`,children:`Count`}),(0,W.jsx)(`th`,{className:`wl-num`,children:`Avg`})]})}),(0,W.jsx)(`tbody`,{children:e.map(e=>(0,W.jsxs)(`tr`,{children:[(0,W.jsxs)(`td`,{className:`wl-mono wl-small wl-wrap`,children:[e.name,e.errors>0&&(0,W.jsxs)(`span`,{className:`wl-text-error`,children:[` · `,e.errors,` failed`]}),(0,W.jsx)(Bx,{tags:i(e)})]}),(0,W.jsx)(`td`,{className:`wl-num`,children:J(e.count)}),(0,W.jsx)(`td`,{className:`wl-num`,children:q(e.avgMs)})]},e.name))})]})}function sP({title:e,edges:t,side:r}){return t.length===0?null:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{className:`wl-section-title`,children:e}),(0,W.jsx)(`ul`,{className:`wl-svc-edges`,children:t.map(e=>(0,W.jsxs)(`li`,{children:[(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:()=>n({service:e[r]}),children:e[r]}),(0,W.jsxs)(`span`,{className:`wl-muted`,children:[J(e.calls),` calls · `,q(e.avgMs),e.errors?` · ${e.errors} failed`:``]})]},`${e.from}→${e.to}`))})]})}function cP({detail:e}){let{row:t,endpoints:r,incoming:i,outgoing:a}=e;return(0,W.jsxs)(G,{title:(0,W.jsxs)(`div`,{className:`wl-side-head`,children:[(0,W.jsx)(`h2`,{children:(0,W.jsx)(GS,{row:t})}),(0,W.jsx)(`button`,{type:`button`,className:`wl-icon-btn`,onClick:()=>n({service:null}),"aria-label":`Close details`,children:(0,W.jsx)(db,{size:18})})]}),className:`wl-svc-detail`,children:[(0,W.jsx)(vb,{rows:[[`Kind`,zS[t.kind]],[`Status`,(0,W.jsx)(WS,{status:t.status})],[`Requests`,J(t.requests)],[`Errors`,`${J(t.errors)} (${Cb(t.errorRate)})`],[`Avg latency`,q(t.avgMs)],[`p95 latency`,q(t.p95Ms)],...t.detail?[[`Detail`,t.detail]]:[]]}),(0,W.jsxs)(`a`,{className:`wl-btn wl-btn-primary-outline wl-svc-full`,href:HS(t.key),children:[(0,W.jsx)(_v,{"aria-hidden":`true`}),` View full service`]}),(0,W.jsx)(`div`,{className:`wl-section-title`,children:`Traffic`}),(0,W.jsx)(iE,{starts:e.starts,bars:[{label:`Requests`,values:e.traffic,color:`var(--wl-blue)`}],height:140}),(0,W.jsx)(`div`,{className:`wl-section-title`,children:t.kind===`database`?`Busiest queries`:`Busiest endpoints`}),(0,W.jsx)(oP,{items:r,row:t}),(0,W.jsx)(sP,{title:`Called by`,edges:i,side:`from`}),(0,W.jsx)(sP,{title:`Calls`,edges:a,side:`to`})]})}function lP({m:e}){let{summary:t,prevSummary:n}=e,r=e.meta.compareLabel,i=(t,n)=>e.meta.hasPrev?le(t,n):null;return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)($,{icon:z_,label:`Services`,value:J(t.apis),change:i(t.apis,n.apis),upIsGood:!0,compareLabel:r}),(0,W.jsx)($,{icon:pv,label:`Databases`,value:J(t.databases),change:i(t.databases,n.databases),upIsGood:!0,compareLabel:r}),(0,W.jsx)($,{icon:kv,label:`Requests Served`,value:J(t.served),change:i(t.served,n.served),upIsGood:!0,compareLabel:r,series:e.served}),(0,W.jsx)($,{icon:tb,label:`Error Rate`,value:Cb(t.errorRate),change:i(t.errorRate,n.errorRate),upIsGood:!1,compareLabel:r,series:e.failed,danger:!0})]})}function uP({m:e}){let t=e.selected;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(lP,{m:e}),(0,W.jsxs)(`div`,{className:`wl-grid${t?` wl-grid-side`:``}`,children:[(0,W.jsx)(G,{title:`Services (${e.rows.length})`,flush:!0,children:(0,W.jsx)(qS,{rows:e.rows,selectedKey:t?.row.key??null})}),t&&(0,W.jsx)(cP,{detail:t})]}),(0,W.jsx)(aP,{}),(0,W.jsx)(G,{title:`Dependencies`,children:(0,W.jsx)(qN,{rows:e.rows,edges:e.edges,selectedKey:t?.row.key??null})})]})}function dP(){let{model:e,loading:t,error:n}=yT(`services`);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gb,{title:`Services`,subtitle:`Every service and database in your stack, how healthy it is, and what it talks to.`}),(0,W.jsx)(BD,{model:e,loading:t,error:n,what:`services`}),e&&(0,W.jsx)(uP,{m:e})]})}function fP(){let[e,t,n]=i().params;return e&&t===`endpoints`&&n?(0,W.jsx)(jM,{service:US(e),endpoint:US(n)},`${e}/${n}`):e?(0,W.jsx)(RN,{id:US(e)},e):(0,W.jsx)(dP,{})}function pP(e){let t=In(e);return t?Ub(t.health):e.status===`error`?`danger`:`success`}function mP({item:e,selected:t,tags:r}){return(0,W.jsxs)(`tr`,{className:`wl-clickable${t?` wl-selected`:``}`,onClick:()=>n({trace:e.traceId}),children:[(0,W.jsx)(`td`,{children:(0,W.jsx)(`a`,{href:S(`traces`,[],{trace:e.traceId}),className:`wl-mono`,onClick:e=>e.stopPropagation(),children:zb(e.traceId)})}),(0,W.jsx)(`td`,{className:`wl-wrap`,children:(0,W.jsxs)(`span`,{className:`wl-tagged`,children:[(0,W.jsx)(`span`,{children:e.path}),(0,W.jsx)(Bx,{tags:r})]})}),(0,W.jsx)(`td`,{className:`wl-num`,children:q(e.durationMs)}),(0,W.jsx)(`td`,{className:`wl-num`,children:(0,W.jsx)(Gb,{tone:e.health?Ub(e.health):e.status===`error`?`danger`:`success`,title:e.status})})]})}function hP({items:e,total:t,page:r,size:a,selectedId:o}){let s=i().query.get(`q`)??``,c=Fx(`traces`,e,Lx);return(0,W.jsxs)(G,{title:`Traces (${J(t)})`,action:(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[(0,W.jsx)(FO,{page:`traces`,disabled:t===0}),(0,W.jsx)(_b,{href:S(`requests`,[],{q:s}),label:`View requests`})]}),children:[(0,W.jsx)(dA,{value:s,reset:{trace:null},placeholder:`ID, path, or service; or service:api duration:>2s`}),e.length===0?(0,W.jsx)(K,{children:s&&t===0?`No traces match.`:`No traces in this time range yet.`}):(0,W.jsx)(`div`,{className:`wl-table-wrap wl-recent-traces`,children:(0,W.jsxs)(`table`,{className:`wl-table`,children:[(0,W.jsx)(`thead`,{children:(0,W.jsxs)(`tr`,{children:[(0,W.jsx)(`th`,{children:`Trace ID`}),(0,W.jsx)(`th`,{children:`Path`}),(0,W.jsx)(`th`,{className:`wl-num`,children:`Duration`}),(0,W.jsx)(`th`,{className:`wl-num`,children:`Status`})]})}),(0,W.jsx)(`tbody`,{children:e.map(e=>(0,W.jsx)(mP,{item:e,selected:e.traceId===o,tags:c(e)},e.traceId))})]})}),t>a&&(0,W.jsx)($b,{page:r,pageSize:a,total:t,noun:`traces`,onPage:e=>n({page:e}),onPageSize:e=>n({size:e,page:null})})]})}var gP={browser:ay,network:Fv,routing:Fy,handler:sv,service:z_,queue:Uv,database:pv,external:_v,render:py},_P=e=>Array.from({length:7},(t,n)=>e/6*n);function vP({layer:e,max:t}){let n=gP[e.kind],r=e.segments[e.segments.length-1],i=r?(r.startMs+r.durationMs)/t*100:0;return(0,W.jsxs)(`div`,{className:`wl-layer-row`,children:[(0,W.jsxs)(`div`,{className:`wl-layer-name`,title:e.label,children:[(0,W.jsx)(n,{size:17,"aria-hidden":!0}),(0,W.jsx)(`span`,{className:`wl-truncate`,children:e.label})]}),(0,W.jsxs)(`div`,{className:`wl-layer-track`,children:[e.segments.map((n,r)=>(0,W.jsx)(`i`,{className:`wl-layer-bar wl-layer-${e.kind}`,style:{left:`${n.startMs/t*100}%`,width:`max(3px, ${n.durationMs/t*100}%)`}},r)),(0,W.jsx)(`span`,{className:`wl-layer-ms`,style:i>82?{right:`${100-i+1}%`}:{left:`calc(${i}% + 8px)`},children:q(e.totalMs)})]})]})}function yP({trace:e}){let t=e.rootStatusCode;return(0,W.jsxs)(`div`,{className:`wl-timeline-meta`,children:[(0,W.jsx)(`span`,{className:`wl-mono`,children:`${e.rootMethod??``} ${Xo(e)}`.trim()}),t!=null&&(0,W.jsx)(Y,{tone:Wb(t),children:t}),(0,W.jsx)(`span`,{className:`wl-chip`,children:q(ii(e))}),(0,W.jsxs)(`span`,{className:`wl-chip`,children:[e.spanCount,` spans`]}),(0,W.jsx)(`span`,{className:`wl-muted`,children:Mb(e.startMs)}),(0,W.jsxs)(`a`,{className:`wl-view-all`,href:y(e.traceId),children:[`Open trace `,(0,W.jsx)(_v,{size:14,"aria-hidden":`true`})]})]})}function bP({trace:e}){if(!e)return(0,W.jsx)(G,{title:`Trace Timeline`,children:(0,W.jsx)(K,{children:`Select a trace to see where its time went.`})});let t=ti(e),n=LT(Math.max(1,...t.flatMap(e=>e.segments.map(e=>e.startMs+e.durationMs)))),r=(0,W.jsxs)(`h2`,{className:`wl-timeline-title`,children:[`Trace Timeline `,(0,W.jsx)(Gb,{tone:pP(e)}),(0,W.jsx)(`span`,{className:`wl-mono wl-muted wl-small`,children:e.traceId}),(0,W.jsx)(Xb,{text:e.traceId,label:`Copy trace id`})]});return(0,W.jsxs)(G,{title:r,children:[(0,W.jsx)(yP,{trace:e}),(0,W.jsxs)(`div`,{className:`wl-layers`,children:[(0,W.jsxs)(`div`,{className:`wl-layer-row wl-layer-axis`,"aria-hidden":`true`,children:[(0,W.jsx)(`div`,{}),(0,W.jsx)(`div`,{className:`wl-layer-track`,children:_P(n).map(e=>(0,W.jsx)(`span`,{style:{left:`${e/n*100}%`},children:q(e)},e))})]}),t.length===0?(0,W.jsx)(K,{children:`This trace has no spans.`}):t.map(e=>(0,W.jsx)(vP,{layer:e,max:n},e.key))]})]})}var xP=[[``,`All Statuses`],[`error`,`Failed`],[`ok`,`Succeeded`]],SP=[[`time`,`Newest first`],[`duration`,`Slowest first`]];function CP({filter:e}){let t=e=>t=>n({[e]:t||null,page:null});return(0,W.jsxs)(`section`,{className:`wl-panel wl-filters`,children:[(0,W.jsx)(hD,{value:e.service}),(0,W.jsx)(X,{label:`Status`,value:e.status,onChange:t(`status`),options:xP}),(0,W.jsx)(X,{label:`Duration`,value:e.duration,onChange:t(`duration`),options:_o}),(0,W.jsx)(X,{label:`Order`,value:e.sort,onChange:t(`sort`),options:SP}),(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn`,onClick:()=>n({status:null,duration:null,sort:null,q:null,page:null}),children:[(0,W.jsx)(Cy,{"aria-hidden":`true`}),` Reset`]})]})}function wP(e,t){return(t.find(t=>t.info?.service===e.service)??t.find(e=>e.self))?.info??null}function TP(e){let t=e.rootStatusCode;return t==null?e.status===`error`?`Error`:`OK`:t>=400?`${t} Error`:`${t} OK`}function EP({trace:e,sources:t}){if(!e)return(0,W.jsx)(G,{title:`Trace Attributes`,children:(0,W.jsx)(K,{children:`No trace selected.`})});let n=Te(e.spans),r=je(e.spans),i=wP(e,t),a=r?.attributes[`user_agent.original`],o=[[`Trace ID`,(0,W.jsx)(`span`,{className:`wl-mono wl-small`,children:e.traceId})],[`Parent ID`,n?.parentSpanId??`—`],[`Span Count`,e.spanCount],[`Start Time`,`${jb(e.startMs)} ${Ab(e.startMs)}`],[`Duration`,q(ii(e))],[`Status`,(0,W.jsx)(Kb,{tone:pP(e),children:TP(e)})],[`Method`,e.rootMethod??`—`],[`Path`,Xo(e)],[`User Agent`,a==null?`—`:String(a)],[`Environment`,i?.environment??`—`],[`Host`,i?.host??`—`]];return(0,W.jsx)(G,{title:`Trace Attributes`,action:(0,W.jsx)(Xb,{text:JSON.stringify({traceId:e.traceId,rootName:e.rootName,services:e.services},null,2),label:`Copy attributes`}),children:(0,W.jsx)(vb,{rows:o})})}var DP={browser:`var(--wl-blue)`,network:`#93c5fd`,routing:`var(--wl-violet)`,handler:`var(--wl-green)`,service:`var(--wl-blue)`,queue:`var(--wl-violet)`,database:`var(--wl-red)`,external:`var(--wl-orange)`,render:`#38bdf8`,owner:`var(--wl-blue)`},OP=100;function kP({data:e}){let[t,n]=(0,T.useState)(`layer`),r=e[t],i=r.map(e=>e.key),a=r.map(e=>({key:e.key,label:(0,W.jsxs)(`span`,{className:`wl-dot-text`,children:[(0,W.jsx)(`i`,{className:`wl-dot`,style:{background:AP(e.kind,e.key,i)}}),e.label]}),value:e.totalMs,share:Cb(e.share),display:q(e.totalMs),color:AP(e.kind,e.key,i)}));return(0,W.jsx)(G,{title:`Bottleneck Distribution`,action:(0,W.jsx)(X,{small:!0,label:`Group by`,value:t,options:[[`layer`,`By layer`],[`service`,`By service`]],onChange:n}),children:a.length===0?(0,W.jsx)(K,{children:`No timed spans in this range.`}):(0,W.jsx)(lO,{compact:!0,items:a})})}function AP(e,t,n){return e===`owner`?`var(--wl-s${Rb(t,n)})`:DP[e]}function jP({critical:e}){let[t,n]=(0,T.useState)(!1),r=e.slice(0,t?25:6),i=[...new Set(r.map(e=>e.service))],a=e.length>6&&(0,W.jsx)(`button`,{type:`button`,className:`wl-view-all wl-link-btn`,onClick:()=>n(!t),children:t?`Show fewer`:`View all ${e.length}`});return(0,W.jsx)(G,{title:`Critical Spans`,action:a,children:(0,W.jsx)(Q,{rows:r,rowKey:e=>`${e.traceId}:${e.spanId}`,onRowClick:e=>w(y(e.traceId)),empty:(0,W.jsx)(K,{children:`No spans below the request roots yet.`}),columns:[{key:`span`,header:`Span`,cell:e=>(0,W.jsx)(`span`,{className:`wl-mono wl-small`,children:e.name}),className:`wl-wrap`},{key:`service`,header:`Service`,cell:e=>(0,W.jsxs)(`span`,{className:`wl-dot-text`,children:[(0,W.jsx)(`i`,{className:`wl-dot`,style:{background:`var(--wl-s${Rb(e.service,i)})`}}),e.layer===e.service?e.service:`${e.service} · ${e.layer}`]})},{key:`ms`,header:`Duration`,num:!0,cell:e=>(0,W.jsx)(`span`,{className:e.durationMs>=OP?`wl-text-tone-danger`:`wl-text-tone-warning`,children:q(e.durationMs)})}]})})}function MP({m:e}){let{cur:t,prev:n,insights:r,prevInsights:i,insightSeries:a}=e.cards,o=e.meta.compareLabel,s=(t,n)=>e.meta.hasPrev?le(t,n):null;return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)($,{icon:Gv,label:`Selected Traces`,value:J(t.count),change:s(t.count,n.count),upIsGood:!0,compareLabel:o,series:t.series.count}),(0,W.jsx)($,{icon:av,label:`Avg Span Count`,value:t.avgSpans===null?`–`:t.avgSpans.toFixed(0),change:s(t.avgSpans,n.avgSpans),upIsGood:!0,compareLabel:o,series:t.series.avgSpans}),(0,W.jsx)($,{icon:tb,label:`Slow Traces`,href:S(`traces`,[],{duration:`slowest`,sort:`duration`}),value:J(t.slow),change:s(t.slow,n.slow),upIsGood:!1,compareLabel:o,series:t.series.slow,danger:!0}),(0,W.jsx)($,{icon:Yv,label:`Bottleneck Insights`,href:S(`insights`),value:J(r),change:s(r,i),upIsGood:!1,compareLabel:o,series:a})]})}function NP({m:e}){let t=Se();return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(CP,{filter:e.filter}),(0,W.jsx)(MP,{m:e}),(0,W.jsxs)(`div`,{className:`wl-grid wl-traces-top`,children:[(0,W.jsx)(hP,{items:e.recent,total:e.matching,page:e.page,size:e.size,selectedId:e.selected?.traceId??null}),(0,W.jsx)(bP,{trace:e.selected})]}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-3`,children:[(0,W.jsx)(kP,{data:e.bottlenecks}),(0,W.jsx)(jP,{critical:e.critical}),(0,W.jsx)(EP,{trace:e.selected,sources:t.sources})]})]})}function PP(){let{model:e,loading:t,error:n}=yT(`traces`);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gb,{title:`Traces`,subtitle:`Follow requests across browser, API, database, and rendering to understand performance end-to-end.`}),(0,W.jsx)(BD,{model:e,loading:t,error:n,what:`traces`}),e&&(0,W.jsx)(NP,{m:e})]})}var FP={overview:()=>(0,W.jsx)(sj,{}),requests:()=>(0,W.jsx)(CM,{}),errors:()=>(0,W.jsx)(zk,{}),error:e=>(0,W.jsx)(xk,{group:e.group??``}),database:()=>(0,W.jsx)(ZO,{}),query:e=>(0,W.jsx)(xO,{query:e.q??``}),logs:()=>(0,W.jsx)(zA,{}),insights:()=>(0,W.jsx)(tA,{}),rendering:()=>(0,W.jsx)(Mj,{}),route:e=>(0,W.jsx)(fj,{route:e.route??``}),services:()=>(0,W.jsx)(dP,{}),service:e=>(0,W.jsx)(RN,{id:e.service??``}),endpoint:e=>(0,W.jsx)(jM,{service:e.service??``,endpoint:e.endpoint??``}),traces:()=>(0,W.jsx)(PP,{})};function IP({page:e,params:t,model:n}){let r=FP[e];return(0,W.jsx)(Rw.Provider,{value:{page:e,model:n},children:r?r(t):null})}function LP({token:e}){let[t,n]=(0,T.useState)(null),[r,i]=(0,T.useState)(null);(0,T.useEffect)(()=>{ne(`./api/shared/${e}`).then(e=>n(`trace`in e?{trace:ie(e.trace.traceId,[e.trace]),expiresMs:e.expiresMs}:e),e=>i(e instanceof Error?e.message:String(e)))},[e]);let a=t?`trace`in t?`Shared trace`:`${t.title} · as of ${Mb(t.createdMs)}`:`Shared link`;return(0,W.jsxs)(`div`,{className:`wl-shared`,children:[(0,W.jsxs)(`header`,{className:`wl-shared-head`,children:[(0,W.jsx)(`span`,{className:`wl-brand-row`,children:(0,W.jsx)(cO,{})}),(0,W.jsx)(`span`,{className:`wl-muted wl-small`,children:t?`${a} · link works until ${jb(t.expiresMs)}`:a})]}),(0,W.jsx)(`main`,{className:`wl-page`,children:t?`trace`in t?(0,W.jsx)(OC,{trace:t.trace,shared:!0}):(0,W.jsx)(IP,{page:t.page,params:t.params,model:t.model}):(0,W.jsx)(G,{children:(0,W.jsx)(K,{title:r?`This link does not work`:`Loading…`,children:r})})})]})}function RP(e){return e==null||!Number.isFinite(e)?`–`:e>=100?`100%`:`${(Math.floor(e*100)/100).toFixed(2)}%`}function zP(e){return e.enabled?e.state===`down`?{label:`Down`,tone:`danger`,rank:0}:e.state===`pending`?{label:`Pending`,tone:`info`,rank:1}:{label:`Up`,tone:`success`,rank:2}:{label:`Off`,tone:`neutral`,rank:3}}var BP=(e,t)=>e?.checks.find(e=>e.checkId===t);function VP(e){let t=Math.floor(e/6e4);if(t<1)return`${Math.max(1,Math.round(e/1e3))} s`;if(t<60)return`${t} min`;let n=Math.floor(t/60);return n<48?`${n} h${t%60?` ${t%60} min`:``}`:`${Math.floor(n/24)} days`}var HP=e=>e===null?`neutral`:e>=99.9?`success`:e>=99?`warning`:`danger`,UP=6e4,WP=864e5;function GP({days:e,nowMs:t}){let n=Math.floor(t/WP)*WP-29*WP;return(0,W.jsx)(`div`,{className:`wl-status-bars`,role:`img`,"aria-label":`Uptime per day for the last 30 days`,children:e.map((e,t)=>(0,W.jsx)(`span`,{className:`wl-status-bar wl-tone-${HP(e)}`,title:`${jb(n+t*WP)}: ${e===null?`no data`:RP(e)}`},t))})}function KP({c:e,nowMs:t}){let n=zP({enabled:!0,state:e.state});return(0,W.jsxs)(`li`,{className:`wl-status-check`,children:[(0,W.jsxs)(`div`,{className:`wl-status-check-head`,children:[(0,W.jsx)(`strong`,{children:e.name}),(0,W.jsx)(Kb,{tone:n.tone,colorText:!0,children:n.label===`Up`?`Operational`:n.label===`Down`?`Down`:`Checking`})]}),(0,W.jsx)(GP,{days:e.days,nowMs:t}),(0,W.jsxs)(`div`,{className:`wl-status-check-foot wl-muted wl-small`,children:[(0,W.jsxs)(`span`,{children:[30,` days ago`]}),(0,W.jsxs)(`span`,{children:[`24 h `,RP(e.uptime[`24h`]),` · 7 days `,RP(e.uptime[`7d`]),` · 30 days `,RP(e.uptime[`30d`])]}),(0,W.jsx)(`span`,{children:`Today`})]})]})}function qP({view:e}){let t=e.checks.filter(e=>e.state===`down`),n=t.length?`wl-status-summary wl-status-down`:`wl-status-summary`;return(0,W.jsx)(`div`,{className:n,children:t.length===0?`All systems operational`:`${t.length} of ${e.checks.length} ${e.checks.length===1?`system is`:`systems are`} down`})}function JP({view:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(qP,{view:e}),(0,W.jsx)(G,{children:e.checks.length===0?(0,W.jsx)(K,{children:`Nothing is checked yet.`}):(0,W.jsx)(`ul`,{className:`wl-status-checks`,children:e.checks.map(t=>(0,W.jsx)(KP,{c:t,nowMs:e.nowMs},t.name))})}),(0,W.jsx)(G,{title:`Past Incidents`,children:e.incidents.length===0?(0,W.jsxs)(K,{children:[`No incidents in the last `,30,` days.`]}):(0,W.jsx)(`ul`,{className:`wl-status-incidents`,children:e.incidents.map(e=>(0,W.jsxs)(`li`,{children:[(0,W.jsx)(`strong`,{children:e.checkName}),` `,e.endMs===null?`is down`:`was down`,` `,(0,W.jsxs)(`span`,{className:`wl-muted`,children:[`since `,Mb(e.startMs),e.endMs===null?``:`, for ${VP(e.endMs-e.startMs)}`]})]},`${e.checkName}-${e.startMs}`))})})]})}function YP({token:e}){let[t,n]=(0,T.useState)(null),[r,i]=(0,T.useState)(null);return(0,T.useEffect)(()=>{let t=()=>ne(`./api/status/${encodeURIComponent(e)}`).then(e=>(n(e),i(null)),e=>i(e instanceof Error?e.message:String(e)));t();let r=setInterval(()=>void t(),UP);return()=>clearInterval(r)},[e]),(0,T.useEffect)(()=>void(document.title=t?t.title:`Status`),[t]),(0,W.jsxs)(`div`,{className:`wl-shared wl-status`,children:[(0,W.jsxs)(`header`,{className:`wl-shared-head`,children:[(0,W.jsx)(`h1`,{className:`wl-status-title`,children:t?.title??`Status`}),(0,W.jsxs)(`span`,{className:`wl-status-by`,children:[(0,W.jsx)(`span`,{className:`wl-muted wl-small`,children:`Uptime by`}),(0,W.jsx)(`span`,{className:`wl-brand-row`,children:(0,W.jsx)(cO,{})})]})]}),(0,W.jsx)(`main`,{className:`wl-page wl-status-main`,children:t?(0,W.jsx)(JP,{view:t}):(0,W.jsx)(G,{children:(0,W.jsx)(K,{title:r?`This status page does not exist`:`Loading…`,children:r})})})]})}var XP={name:`email`,label:`Email`,type:`email`,autoComplete:`email`},ZP={name:`password`,label:`Password`,type:`password`,autoComplete:`current-password`},QP={name:`password`,label:`Password (12 characters or more)`,type:`password`,autoComplete:`new-password`},$P={name:`name`,label:`Your name`,autoComplete:`name`};function eF({title:e,intro:t}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{className:`wl-brand-row`,children:(0,W.jsx)(cO,{})}),(0,W.jsx)(`h1`,{children:e}),t&&(0,W.jsx)(`p`,{className:`wl-muted`,children:t})]})}function tF({title:e,intro:t,children:n}){return(0,W.jsx)(`div`,{className:`wl-auth`,children:(0,W.jsxs)(`div`,{className:`wl-auth-card`,children:[(0,W.jsx)(eF,{title:e,intro:t}),n]})})}function nF({f:e}){return e.type===`checkbox`?(0,W.jsxs)(`label`,{className:`wl-auth-check`,children:[(0,W.jsx)(`input`,{name:e.name,type:`checkbox`,defaultChecked:e.checked}),(0,W.jsx)(`span`,{children:e.label})]}):(0,W.jsxs)(`label`,{className:`wl-auth-field`,children:[(0,W.jsx)(`span`,{children:e.label}),(0,W.jsx)(`input`,{name:e.name,type:e.type??`text`,autoComplete:e.autoComplete,inputMode:e.inputMode,defaultValue:e.value,readOnly:e.readOnly,required:e.required??!0})]})}function rF({title:e,intro:t,fields:n,submit:r,onSubmit:i,secondary:a,footer:o}){let[s,c]=(0,T.useState)(!1),[l,u]=(0,T.useState)(null);return(0,W.jsx)(`div`,{className:`wl-auth`,children:(0,W.jsxs)(`form`,{className:`wl-auth-card`,onSubmit:e=>{e.preventDefault();let t=Object.fromEntries([...new FormData(e.currentTarget)].map(([e,t])=>[e,String(t)]));c(!0),u(null),i(t).catch(e=>u(ye(e))).finally(()=>c(!1))},children:[(0,W.jsx)(eF,{title:e,intro:t}),n.map(e=>(0,W.jsx)(nF,{f:e},e.name)),l&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,role:`alert`,children:l}),(0,W.jsx)(`button`,{type:`submit`,className:`wl-btn wl-btn-primary`,disabled:s,children:s?`One moment…`:r}),a,o&&(0,W.jsx)(`div`,{className:`wl-auth-foot`,children:o})]})})}var iF=({onClick:e,children:t})=>(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:e,children:t}),aF=()=>`${window.location.origin}${window.location.pathname}${window.location.hash.startsWith(`#/oauth`)?window.location.hash:`#/`}`,oF={sso_domain:`Single sign-on works only for emails at your company's verified domain.`,"account not linked":`An account with this email already exists. Sign in with your password, or ask an admin to confirm your email.`,account_not_linked:`An account with this email already exists. Sign in with your password, or ask an admin to confirm your email.`,signup_disabled:`Your company's sign-in worked, but this cloud does not take new accounts that way.`};function sF(){let e=new URLSearchParams(window.location.search),t=e.get(`error`);return t?(window.history.replaceState(null,``,window.location.pathname+window.location.hash),oF[t]??`Single sign-on failed: ${(e.get(`error_description`)??t).replace(/_/g,` `)}.`):null}function cF({footer:e}){let t=async e=>{let t=await Ee(t=>t.signIn.sso({email:e.email,callbackURL:aF(),errorCallbackURL:aF()}));window.location.assign(t.url)};return(0,W.jsx)(rF,{title:`Sign in with SSO`,intro:`Use your work email. Your company's sign-in page opens next.`,fields:[{...XP,label:`Work email`}],submit:`Continue`,onSubmit:t,footer:e})}var lF=`x-wizelens-setup-token`;function uF({text:e}){return(0,W.jsx)(tF,{title:`Check your email`,intro:e,children:(0,W.jsx)(`a`,{className:`wl-btn`,href:S(`overview`),children:`Go to sign in`})})}function dF({token:e,state:t}){let[n,r]=(0,T.useState)(!1);return e?n?(0,W.jsx)(uF,{text:`Check your email to confirm it, then sign in.`}):(0,W.jsx)(rF,{title:`Set up WizeLens Cloud`,intro:`Create the first account. You become the owner of the first organization.`,fields:[$P,XP,QP],submit:`Create account`,onSubmit:async n=>{if(await Ee(t=>t.signUp.email({name:n.name,email:n.email,password:n.password},{headers:{[lF]:e}})),t.mail)return r(!0);await Oe(),w(S(`overview`))}}):(0,W.jsx)(tF,{title:`Set up WizeLens Cloud`,intro:`This cloud has no account yet. Open the setup link printed in the cloud's log.`})}function fF({state:e,title:t=`Sign in to WizeLens`,intro:n,email:r,onSignedIn:i=async()=>void await Oe(),footer:a,onSso:o}){let[s,c]=(0,T.useState)(null),[l,u]=(0,T.useState)(null),d=async t=>{c(null);try{let e=await Ee(e=>e.signIn.email({email:t.email,password:t.password}));if(`twoFactorRedirect`in e&&e.twoFactorRedirect)return w(S(`two-factor`));await i()}catch(n){throw e.mail&&n instanceof Le&&n.code===`EMAIL_NOT_VERIFIED`&&c(t.email),n}},f=()=>void Ee(e=>e.signIn.passkey()).then(i,e=>u(ye(e))),p=e=>void Ee(t=>t.sendVerificationEmail({email:e})).then(()=>u(`We sent a new link.`),e=>u(ye(e))),m=(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:f,children:`Sign in with a passkey`}),e.sso&&o&&(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:o,children:`Sign in with SSO`}),s&&(0,W.jsx)(iF,{onClick:()=>p(s),children:`Send the link again`}),l&&(0,W.jsx)(`p`,{className:`wl-muted wl-small`,role:`status`,children:l})]}),h=[{...XP,value:r},ZP],g=(0,W.jsxs)(`span`,{className:`wl-auth-links`,children:[(0,W.jsx)(`a`,{href:S(`forgot-password`),children:`Forgot password?`}),a]});return(0,W.jsx)(rF,{title:t,intro:n,fields:h,submit:`Sign in`,onSubmit:d,secondary:m,footer:g})}function pF({state:e,back:t}){let[n,r]=(0,T.useState)(!1);return n?(0,W.jsx)(uF,{text:`Check your email. The link in it confirms your account.`}):(0,W.jsx)(rF,{title:`Create your account`,fields:[$P,XP,QP],submit:`Create account`,onSubmit:async t=>{if(await Ee(e=>e.signUp.email({name:t.name,email:t.email,password:t.password})),e.mail)return r(!0);await Oe()},footer:t})}function mF({state:e,intro:t}){let[n,r]=(0,T.useState)(`login`),[i]=(0,T.useState)(sF);if(e.needsSetup)return(0,W.jsx)(dF,{token:``,state:e});let a=(0,W.jsx)(iF,{onClick:()=>r(`login`),children:`I have an account`});if(n===`signup`)return(0,W.jsx)(pF,{state:e,back:a});if(n===`sso`)return(0,W.jsx)(cF,{footer:(0,W.jsx)(iF,{onClick:()=>r(`login`),children:`Sign in another way`})});let o=e.signup===`open`?(0,W.jsx)(iF,{onClick:()=>r(`signup`),children:`Create an account`}):(0,W.jsx)(`span`,{children:`Need access? Ask your team for an invite link.`});return(0,W.jsx)(fF,{state:e,intro:i?(0,W.jsx)(`span`,{className:`wl-text-error`,role:`alert`,children:i}):t,footer:o,onSso:()=>r(`sso`)})}var hF=`x-wizelens-invite`;async function gF(e){await Ee(t=>t.organization.acceptInvitation({invitationId:e})),Fe.set(null),await Oe(),w(S(`overview`))}function _F({id:e,invite:t,state:n}){let r=`Join ${t.orgName} as ${t.role}. ${t.inviter} invited ${t.email}.`,i=n.user?.email??``;return i.toLowerCase()===t.email.toLowerCase()?(0,W.jsx)(rF,{title:`Join ${t.orgName}`,intro:r,fields:[],submit:`Join`,onSubmit:()=>gF(e)}):(0,W.jsx)(tF,{title:`This invite is for another email`,intro:`You are signed in as ${i}. The invite is for ${t.email}. Sign out, then sign in or sign up with that email.`,children:(0,W.jsx)(`button`,{type:`button`,className:`wl-btn wl-btn-primary`,onClick:()=>void ce(),children:`Sign out`})})}function vF({id:e,invite:t,state:n}){let[r,i]=(0,T.useState)(!1),[a,o]=(0,T.useState)(!1),s=`Join ${t.orgName} as ${t.role}. ${t.inviter} invited ${t.email}.`,c=(0,W.jsx)(iF,{onClick:()=>i(!r),children:r?`I need a new account`:`I already have an account`});if(a)return(0,W.jsx)(tF,{title:`Check your email`,intro:`Check your email to confirm it. The link brings you back here.`});if(r)return(0,W.jsx)(fF,{state:n,title:`Sign in to accept`,intro:s,email:t.email,onSignedIn:()=>gF(e),footer:c});let l=[$P,{name:`email`,label:`Email`,type:`email`,value:t.email,readOnly:!0},QP];return(0,W.jsx)(rF,{title:`Join ${t.orgName}`,intro:s,fields:l,submit:`Create account and join`,onSubmit:async r=>{if(Fe.set(e),await Ee(n=>n.signUp.email({name:r.name,email:t.email,password:r.password},{headers:{[hF]:e}})),n.mail)return o(!0);await gF(e)},footer:c})}function yF({id:e,state:t}){let[n,r]=(0,T.useState)(null),[i,a]=(0,T.useState)(null);return(0,T.useEffect)(()=>{if(!e)return a(`This invite link is not complete.`);Fe.set(e),ne(`./api/invites/${encodeURIComponent(e)}`).then(r,e=>a(ye(e)))},[e]),i?(0,W.jsx)(tF,{title:`This invite link does not work`,intro:`${i} Ask your team for a new one.`,children:(0,W.jsx)(`a`,{className:`wl-btn`,href:S(`overview`),onClick:()=>Fe.set(null),children:`Go to WizeLens`})}):n?t.signedIn?(0,W.jsx)(_F,{id:e,invite:n,state:t}):(0,W.jsx)(vF,{id:e,invite:n,state:t}):(0,W.jsx)(tF,{title:`Opening the invite…`})}function bF({state:e}){let t=async e=>{await x(`POST`,`./api/orgs`,{name:e.name}),await Oe()},n=(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`a`,{className:`wl-link-btn`,href:S(`account`),children:`Account`}),` ·`,` `,(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:()=>void ce(),children:`Sign out`})]});return(0,W.jsx)(rF,{title:`You are not in an organization`,intro:`Signed in as ${e.user?.email??``}. Make an organization, or open an invite link from your team.`,fields:[{name:`name`,label:`Organization name`,value:`${e.user?.name??`My`}'s team`}],submit:`Make an organization`,onSubmit:t,footer:n})}function xF({projects:e,picked:t,toggle:n}){return(0,W.jsx)(`div`,{className:`wl-consent-projects`,children:e.map(e=>(0,W.jsxs)(`label`,{className:`wl-auth-check`,children:[(0,W.jsx)(`input`,{type:`checkbox`,checked:t.has(e.id),onChange:()=>n(e.id)}),(0,W.jsx)(`span`,{children:e.name})]},e.id))})}var SF=({name:e,returnHost:t})=>(0,W.jsxs)(`ul`,{className:`wl-consent-list`,children:[(0,W.jsxs)(`li`,{children:[e,` can read traces, logs, errors, metrics, and reports. It cannot change anything.`]}),(0,W.jsx)(`li`,{children:`It keeps access until you remove it under Account, Connected apps. Every call goes to the audit log.`}),(0,W.jsxs)(`li`,{children:[`After you allow, you go back to `,(0,W.jsx)(`b`,{children:t}),`.`]})]});function CF({query:e,state:t}){let{clientId:n,returnHost:r}=$D(e),i=t.orgs??[],[a,o]=(0,T.useState)(null),[s,c]=(0,T.useState)(Ne(t)?.org.id??i[0]?.id??``),[l,u]=(0,T.useState)(`some`),d=i.find(e=>e.id===s),[f,p]=(0,T.useState)(()=>new Set(d?.projects.map(e=>e.id))),[m,h]=(0,T.useState)(!1),[g,_]=(0,T.useState)(null),[v,y]=(0,T.useState)(!1);(0,T.useEffect)(()=>void rO(n).then(o,()=>o({})),[n]);let b=a?.client_name||`This app`;if(!d)return(0,W.jsx)(tF,{title:`You are not in an organization`,intro:`Join or make an organization first, then connect the app again.`});let ee=e=>(c(e),p(new Set(i.find(t=>t.id===e)?.projects.map(e=>e.id)))),te=e=>p(t=>t.has(e)?(t.delete(e),new Set(t)):new Set(t.add(e))),ne=e=>{h(!0),_(null),e().catch(e=>ae(e)?y(!0):_(ye(e))).finally(()=>h(!1))},re=()=>ne(()=>iO(e,{organizationId:d.id,allProjects:l===`all`,projectIds:l===`all`?[]:[...f]})),x=l===`some`&&f.size===0;return(0,W.jsxs)(tF,{title:`Connect ${b}`,intro:`${b} wants to read your WizeLens data. Choose what it may see.`,children:[(0,W.jsx)(SF,{name:b,returnHost:r}),i.length>1&&(0,W.jsxs)(`label`,{className:`wl-auth-field`,children:[(0,W.jsx)(`span`,{children:`Organization`}),(0,W.jsx)(`select`,{className:`wl-select`,value:d.id,onChange:e=>ee(e.target.value),children:i.map(e=>(0,W.jsx)(`option`,{value:e.id,children:e.name},e.id))})]}),(0,W.jsxs)(`fieldset`,{className:`wl-consent-scope`,children:[(0,W.jsxs)(`legend`,{children:[`Projects in `,d.name]}),(0,W.jsxs)(`label`,{className:`wl-auth-check`,children:[(0,W.jsx)(`input`,{type:`radio`,name:`scope`,checked:l===`all`,onChange:()=>u(`all`)}),(0,W.jsx)(`span`,{children:`All projects, also ones made later`})]}),(0,W.jsxs)(`label`,{className:`wl-auth-check`,children:[(0,W.jsx)(`input`,{type:`radio`,name:`scope`,checked:l===`some`,onChange:()=>u(`some`)}),(0,W.jsx)(`span`,{children:`Only these projects`})]}),l===`some`&&(0,W.jsx)(xF,{projects:d.projects,picked:f,toggle:te})]}),v&&(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-info`,role:`status`,children:[`For safety, sign in again first. `,(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:()=>void ce(),children:`Sign in again`})]}),g&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,role:`alert`,children:g}),(0,W.jsx)(`button`,{type:`button`,className:`wl-btn wl-btn-primary`,disabled:m||x,onClick:re,children:m?`One moment…`:`Allow ${b}`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,disabled:m,onClick:()=>ne(()=>aO(e,!1)),children:`Deny`})]})}var wF=e=>e===`oauth`||e===`oauth-consent`;function TF(e){let t=e.query.has(`sig`)?e.query.toString():tO.get()??``;return(0,T.useEffect)(()=>{e.query.has(`sig`)&&tO.set(e.query.toString())},[e.query]),t}function EF({query:e}){return(0,T.useEffect)(()=>nO(e),[e]),(0,W.jsx)(tF,{title:`One moment…`,intro:`Taking you to the next step.`})}var DF=()=>(0,W.jsx)(tF,{title:`This link has expired`,intro:`Go back to the app you were connecting, and connect it again.`});function OF({route:e,state:t}){let n=TF(e);return n?t.signedIn?e.page===`oauth`?(0,W.jsx)(EF,{query:n}):(0,W.jsx)(CF,{query:n,state:t}):(0,W.jsx)(mF,{state:t,intro:`Sign in to connect an app to WizeLens. Next you choose what it may read.`}):(0,W.jsx)(DF,{})}var kF=e=>S(`invite`,[],{token:e}),AF=e=>`${window.location.origin}${window.location.pathname}${kF(e)}`;async function jF(){let e=tO.get();if(e)return nO(e);await Oe();let t=Fe.get();w(t?kF(t):S(`overview`))}var MF=(0,W.jsx)(`a`,{className:`wl-btn`,href:S(`overview`),children:`Go to WizeLens`});function NF({error:e}){let[t,n]=(0,T.useState)(!1);return t?(0,W.jsx)(tF,{title:`Check your email`,intro:`If the email has an account that is not confirmed, a new link is on its way.`,children:MF}):(0,W.jsx)(rF,{title:`This link does not work`,intro:`${e.replace(/\.?$/,`.`)} Send a new link.`,fields:[XP],submit:`Send a new link`,onSubmit:async e=>{await Ee(t=>t.sendVerificationEmail({email:e.email})),n(!0)},footer:(0,W.jsx)(`a`,{href:S(`overview`),children:`Back to sign in`})})}function PF({token:e}){let[t,n]=(0,T.useState)(null),[r,i]=(0,T.useState)(null),a=(0,T.useRef)(!1);return(0,T.useEffect)(()=>{!a.current&&e&&(a.current=!0,Ee(t=>t.verifyEmail({query:{token:e}})).then(async e=>{if(!(`user`in e))return n(`changing`);n(`done`),await jF()},e=>i({text:ye(e),expired:e instanceof Le&&/TOKEN/.test(e.code)})))},[e]),e?r?.expired?(0,W.jsx)(NF,{error:r.text}):r?(0,W.jsx)(tF,{title:`This link did not work`,intro:r.text,children:MF}):t===`changing`?(0,W.jsx)(tF,{title:`One more step`,intro:`Now open the link we sent to your new email. It finishes the change.`,children:MF}):(0,W.jsx)(tF,{title:t===`done`?`Email confirmed`:`Confirming your email…`}):(0,W.jsx)(NF,{error:`This link is not complete.`})}function FF({token:e,state:t,deleted:n=!1}){let[r,i]=(0,T.useState)(n);return r?(0,W.jsx)(tF,{title:`Account deleted`,intro:`Your account is deleted. Thank you for using WizeLens.`,children:MF}):t.signedIn?e?(0,W.jsx)(rF,{title:`Delete your account for good?`,intro:`This cannot be undone. Organizations where you are the only member go with it, with all their data.`,fields:[],submit:`Delete my account`,onSubmit:async()=>{await Ee(t=>t.deleteUser({token:e})),await Oe(),i(!0)},footer:(0,W.jsx)(`a`,{href:S(`account`),children:`Keep my account`})}):(0,W.jsx)(tF,{title:`This link is not complete`,intro:`Delete your account from the Account page.`,children:MF}):(0,W.jsx)(mF,{state:t,intro:`Sign in to delete your account.`})}var IF=(0,W.jsx)(`a`,{href:S(`overview`),children:`Back to sign in`}),LF={name:`password`,label:`New password (12 characters or more)`,type:`password`,autoComplete:`new-password`},RF={name:`again`,label:`New password again`,type:`password`,autoComplete:`new-password`};function zF({state:e}){let[t,n]=(0,T.useState)(!1);return t&&!e.mail?(0,W.jsx)(tF,{title:`Ask for the link`,intro:`This cloud cannot send email. Ask the person who runs it: the link is in the cloud's log.`,children:IF}):t?(0,W.jsx)(tF,{title:`Check your email`,intro:`If the email has an account, a link is on its way.`,children:IF}):(0,W.jsx)(rF,{title:`Forgot your password?`,intro:`Enter your email. We send a link to choose a new password.`,fields:[XP],submit:`Send the link`,onSubmit:async e=>{await Ee(t=>t.requestPasswordReset({email:e.email})),n(!0)},footer:IF})}function BF({token:e}){let[t,n]=(0,T.useState)(!1);if(!e)return(0,W.jsx)(tF,{title:`This link is not complete`,intro:`Ask for a new link.`,children:(0,W.jsx)(`a`,{className:`wl-btn`,href:S(`forgot-password`),children:`Send a new link`})});if(t)return(0,W.jsx)(tF,{title:`Password changed`,intro:`Password changed. Sign in.`,children:IF});let r=async t=>{if(t.password!==t.again)throw Error(`The two passwords are not the same.`);await Ee(n=>n.resetPassword({newPassword:t.password,token:e})),await Oe(),n(!0)},i=(0,W.jsxs)(`span`,{className:`wl-auth-links`,children:[(0,W.jsx)(`a`,{href:S(`forgot-password`),children:`Send a new link`}),IF]});return(0,W.jsx)(rF,{title:`Choose a new password`,fields:[LF,RF],submit:`Change password`,onSubmit:r,footer:i})}var VF={name:`trust`,label:`Trust this device for 14 days`,type:`checkbox`};function HF(){let[e,t]=(0,T.useState)(!1),n=async t=>{let n=t.code.replace(/\s+/g,``),r=t.trust===`on`;e?await Ee(e=>e.twoFactor.verifyBackupCode({code:n,trustDevice:r})):await Ee(e=>e.twoFactor.verifyTotp({code:n,trustDevice:r})),await jF()},r=e?{name:`code`,label:`Backup code`,autoComplete:`off`}:{name:`code`,label:`Code`,autoComplete:`one-time-code`,inputMode:`numeric`},i=(0,W.jsxs)(`span`,{className:`wl-auth-links`,children:[(0,W.jsx)(iF,{onClick:()=>t(!e),children:e?`Use a code from your app`:`Use a backup code instead`}),(0,W.jsx)(`a`,{href:S(`overview`),children:`Back to sign in`})]});return(0,W.jsx)(rF,{title:`Two-step sign-in`,intro:e?`Enter one of your backup codes. Each code works once.`:`Enter the 6-digit code from your app.`,fields:[r,VF],submit:`Continue`,onSubmit:n,footer:i},String(e))}var UF=()=>(0,W.jsx)(`div`,{className:`wl-auth`,children:(0,W.jsx)(`p`,{className:`wl-muted`,children:`Loading WizeLens…`})});function WF(e,t){let n=e.query.get(`token`)??``;switch(e.page){case`setup`:return t.needsSetup?(0,W.jsx)(dF,{token:n,state:t}):null;case`two-factor`:return t.signedIn?null:(0,W.jsx)(HF,{});case`forgot-password`:return(0,W.jsx)(zF,{state:t});case`reset-password`:return(0,W.jsx)(BF,{token:n});case`verify-email`:return(0,W.jsx)(PF,{token:n});case`invite`:return(0,W.jsx)(yF,{id:n,state:t});case`delete-account`:return(0,W.jsx)(FF,{token:n,state:t,deleted:e.query.has(`done`)});case`oauth`:case`oauth-consent`:return(0,W.jsx)(OF,{route:e,state:t});default:return null}}function GF({children:e}){let t=i(),n=Se(),r=H(),a=Ce(),o=r.has(`accounts`);(0,T.useEffect)(()=>{o&&Oe().catch(()=>void 0)},[o]);let s=!!a?.signedIn;if((0,T.useEffect)(()=>{s&&!wF(t.page)&&t.page!==`two-factor`&&tO.set(null)},[s,t.page]),t.page===`shared`)return(0,W.jsx)(LP,{token:t.params[0]??``});if(t.page===`status`)return(0,W.jsx)(YP,{token:t.params[0]??``});if(!n.info&&n.loading)return(0,W.jsx)(UF,{});if(!o)return(0,W.jsx)(W.Fragment,{children:e});if(!a)return(0,W.jsx)(UF,{});let c=WF(t,a);return c?(0,W.jsx)(W.Fragment,{children:c}):a.signedIn?!a.orgs?.length&&t.page!==`account`?(0,W.jsx)(bF,{state:a}):(0,W.jsx)(W.Fragment,{children:e}):(0,W.jsx)(mF,{state:a})}var KF=new Set([`overview`,`problems`,`search`,`requests`,`traces`,`database`,`rendering`,`errors`,`logs`,`metrics`,`services`,`insights`]);function qF(e,t,n){if(t===Bw.window){let e=Gw(n);return{from:e?String(e.from):null,to:e?String(e.to):null}}return t===Bw.compare?{compare:n===`week`?n:null}:t===p.range?{range:n||null}:t===h.env?{env:n||null}:t===h.project?{project:n||null}:t===h.service&&e!==`services`?{service:n||null}:{}}var JF=[p.range,Bw.window,Bw.compare,h.env,h.project,h.service];function YF(e,t){let r=se(window.location.hash);if(!KF.has(r.page))return;let i=qF(r.page,e,t);Object.entries(i).some(([e,t])=>(r.query.get(e)??null)!==t)&&n(i)}function XF(e,t,n){if(t===Bw.window)return n.has(`from`)&&n.has(`to`)?Kw(Gw(`${n.get(`from`)}-${n.get(`to`)}`)):n.has(`range`)?``:void 0;if(t===Bw.compare)return n.has(`compare`)?n.get(`compare`)===`week`?`week`:`previous`:void 0;if(t===p.range)return oe(n.get(`range`)??``)?n.get(`range`):void 0;let r=t===h.env?`env`:t===h.project?`project`:e===`services`?null:`service`;return r&&n.has(r)?n.get(r):void 0}function ZF(){let e=i(),t=`${e.page}?${e.query.toString()}`;(0,T.useEffect)(()=>_(YF),[]),(0,T.useEffect)(()=>{if(KF.has(e.page))for(let t of JF){let n=XF(e.page,t,e.query);n!==void 0&&n!==(Ke(t)??``)?l(t,n):n===void 0&&Ke(t)&&YF(t,Ke(t))}},[t])}var QF=[[`p50`,`p50`],[`p95`,`p95`],[`p99`,`p99`],[`avg`,`Average`]],$F={value:`Value`,rate:`Per second`,percentiles:`Distribution`},eI={value:`avg`,rate:`rate`,percentiles:`p95`};function tI(e){return e.percentiles&&!e.groupBy?[`p50`,`p95`,`p99`].map((t,n)=>({label:t,values:e.percentiles[t],color:_D[n]})):e.lines.map((e,t)=>({label:e.label,values:e.values,color:_D[t%_D.length]}))}function nI({d:e}){let t=[[``,`Each series`],...e.groupKeys.map(e=>[e,`By ${e}`])];return(0,W.jsxs)(`div`,{className:`wl-metric-controls`,children:[e.groupKeys.length>0&&(0,W.jsx)(X,{value:e.groupBy,options:t,onChange:e=>n({group:e||null}),label:`Split lines`,small:!0}),e.percentiles&&e.groupBy&&(0,W.jsx)(X,{value:e.stat,options:QF,onChange:e=>n({stat:e}),label:`Statistic`,small:!0}),(0,W.jsx)(sk,{fields:{metric:`metric`,metricName:e.name,metricStat:eI[e.display],metricService:e.services.length===1?e.services[0]:``,name:`${e.name} is high`}})]})}function rI({d:e}){let t=t=>df(t,e.displayUnit),n=e.percentiles?` (${e.stat})`:``;return(0,W.jsx)(vb,{rows:[[`Now${n}`,t(e.summary.last)],[`Lowest${n}`,t(e.summary.min)],[`Highest${n}`,t(e.summary.max)],[`Average${n}`,t(e.summary.avg)],[`Shown as`,$F[e.display]],[`Unit`,e.unit||`none`],[`Services`,e.services.join(`, `)]]})}function iI({detail:e}){if(!e)return(0,W.jsx)(G,{className:`wl-metric-chart`,children:(0,W.jsx)(K,{title:`Pick a metric`,children:`Choose a metric from the list, or a tile above, to see it over time.`})});let t=e,n=t.countRate?[{label:`Values per second`,values:t.countRate,color:`var(--wl-chart-bar)`}]:void 0;return(0,W.jsxs)(G,{title:(0,W.jsx)(`h2`,{className:`wl-metric-title`,children:t.name}),action:(0,W.jsx)(nI,{d:t}),className:`wl-metric-chart`,children:[t.description&&(0,W.jsx)(`p`,{className:`wl-metric-desc`,children:t.description}),(0,W.jsx)(iE,{starts:t.buckets,lines:tI(t),bars:n,separateBarScale:!0,format:CD(t.displayUnit),height:260}),t.hidden>0&&(0,W.jsxs)(`p`,{className:`wl-metric-desc`,children:[t.hidden,` more lines are not shown. Split by another key to see them.`]}),(0,W.jsx)(rI,{d:t})]})}function aI({state:e}){let t=e.model?.meta.sampled;return(0,W.jsxs)(W.Fragment,{children:[e.loading&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-info`,children:`Loading metrics…`}),e.error&&(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-error`,children:[`Could not load metrics: `,e.error]}),t&&(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-info`,children:[`Based on the newest `,J(t.used),` of `,J(t.total),` points in this range. Pick a shorter range for exact numbers.`]}),e.clipped&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-info`,children:`This app keeps metrics for one hour, so this page shows the last hour. Send them to a hub or the cloud for longer history.`})]})}function oI(){return(0,W.jsx)(G,{children:(0,W.jsxs)(K,{title:`This host does not keep metrics`,children:[`Update the WizeLens add-on, or send OpenTelemetry metrics to a WizeLens hub or the cloud at `,(0,W.jsx)(`code`,{children:`/v1/metrics`}),`.`]})})}function sI(){let e=iD(),{query:t}=i(),n=t.toString(),r=(0,T.useMemo)(()=>Object.fromEntries(new URLSearchParams(n)),[n]),a=e.model;return(0,W.jsxs)(`div`,{className:`wl-metrics-page`,children:[(0,W.jsx)(gb,{title:`Metrics`,subtitle:`CPU, memory, garbage collection, request times, and your own counters, per service.`}),(0,W.jsx)(aI,{state:e}),e.source===`none`&&(0,W.jsx)(oI,{}),a&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(yD,{model:a,selected:r.metric??``}),(0,W.jsxs)(`div`,{className:`wl-metric-body`,children:[(0,W.jsx)(SD,{model:a,params:r}),(0,W.jsx)(iI,{detail:a.selected})]})]})]})}var cI=[{key:`mount`,header:`Mount`,cell:e=>(0,W.jsx)(`strong`,{children:e.mount}),sort:e=>e.mount},{key:`device`,header:`Device`,cell:e=>e.device||`–`,className:`wl-hide-sm`},{key:`type`,header:`Type`,cell:e=>e.type||`–`,className:`wl-hide-sm`},{key:`used`,header:`Used`,cell:e=>VM(e.used,e.total),sort:e=>e.used??0},{key:`share`,header:`Full`,cell:e=>(0,W.jsx)(HM,{share:e.share}),sort:e=>e.share??-1}];function lI({d:e}){let t=e.buckets;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(GM,{title:`CPU Over Time`,starts:t,lines:[{label:`Busy`,values:e.cpu,color:`var(--wl-blue)`}],format:LM}),(0,W.jsx)(GM,{title:`Memory Over Time`,starts:t,lines:[{label:`Used`,values:e.memory,color:`var(--wl-green)`}],format:RM})]}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-2-even`,children:[(0,W.jsx)(GM,{title:`Disk Over Time`,starts:t,lines:[{label:`Read`,values:e.diskRead,color:`var(--wl-blue)`},{label:`Write`,values:e.diskWrite,color:`var(--wl-orange)`}],format:zM}),(0,W.jsx)(GM,{title:`Network Over Time`,starts:t,lines:[{label:`In`,values:e.netIn,color:`var(--wl-blue)`},{label:`Out`,values:e.netOut,color:`var(--wl-orange)`}],format:zM})]})]})}function uI({d:e}){return(0,W.jsx)(G,{title:`Pods on This Node (${e.pods.length})`,children:(0,W.jsx)(`span`,{className:`wl-infra-chips`,children:e.pods.map(e=>{let[t,n]=e.includes(`/`)?[e.slice(0,e.indexOf(`/`)),e.slice(e.indexOf(`/`)+1)]:[``,e];return(0,W.jsx)(`a`,{className:`wl-infra-chip`,href:XS(t,n),children:e},e)})})})}function dI({d:e,now:t}){let n=e.row,r=[[`OS`,n.os||`–`],[`CPUs`,n.cores?BM(n.cores):`–`],[`Load (1 min)`,n.load1?.toFixed(2)??`–`],[`Last seen`,Lb(n.lastSeenMs,t)]];return n.cluster&&r.push([`Cluster`,n.cluster]),n.node&&r.push([`Kubernetes`,(0,W.jsx)(`a`,{href:YS(n.name),children:`Node page`},`n`)]),(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(WM,{back:S(`hosts`),backLabel:`All hosts`,icon:ky,title:n.name,facts:r}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)(UM,{icon:dv,label:`CPU`,value:LM(n.cpu),note:n.cores?`of ${BM(n.cores)}`:`busy`,danger:(n.cpu??0)>=.9}),(0,W.jsx)(UM,{icon:ry,label:`Memory`,value:LM(n.mem),note:VM(n.memUsed,n.memTotal),danger:(n.mem??0)>=.9}),(0,W.jsx)(UM,{icon:Lv,label:`Fullest Disk`,value:LM(n.disk),note:VM(n.diskUsed,n.diskTotal),danger:(n.disk??0)>=.9}),(0,W.jsx)(UM,{icon:ly,label:`Network`,value:zM((n.netIn??0)+(n.netOut??0)),note:`${zM(n.netIn)} in, ${zM(n.netOut)} out`})]}),(0,W.jsx)(lI,{d:e}),(0,W.jsx)(qM,{services:e.services,now:t,empty:`No WizeLens or OpenTelemetry service reports this host (or a pod on it) as where it runs.`}),e.pods.length>0&&(0,W.jsx)(uI,{d:e}),(0,W.jsx)(G,{title:`File Systems`,flush:!0,children:(0,W.jsx)(Q,{columns:cI,rows:e.fileSystems,rowKey:e=>e.mount,defaultSort:{key:`share`,desc:!0},empty:(0,W.jsx)(K,{title:`No file systems`,children:`The collector's filesystem scraper sends none for this host.`})})})]})}function fI({name:e}){let t=IM(`hosts`,{host:e}),{updatedMs:n}=Se(),r=t.model?.selected?.row.name===e?t.model.selected:null;return(0,W.jsxs)(`div`,{className:`wl-infra-page wl-svc-page`,children:[t.error&&(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-error`,children:[`Could not load this host: `,t.error]}),t.loading&&!r&&(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-info`,children:[`Loading `,e,`…`]}),!t.supported&&(0,W.jsx)(JM,{supported:!1,what:`host`}),r&&(0,W.jsx)(dI,{d:r,now:n}),t.model&&!t.loading&&!r&&(0,W.jsx)(WM,{back:S(`hosts`),backLabel:`All hosts`,icon:ky,title:e,facts:[[`Status`,`Sent no host metrics in this time range`]]})]})}function pI(e){return[{key:`name`,header:`Host`,cell:e=>(0,W.jsx)(`a`,{href:JS(e.name),children:(0,W.jsx)(`strong`,{children:e.name})}),sort:e=>e.name},{key:`cpu`,header:`CPU`,cell:e=>(0,W.jsx)(HM,{share:e.cpu}),sort:e=>e.cpu??-1},{key:`mem`,header:`Memory`,cell:e=>(0,W.jsx)(HM,{share:e.mem}),sort:e=>e.mem??-1},{key:`disk`,header:`Disk`,cell:e=>(0,W.jsx)(HM,{share:e.disk}),sort:e=>e.disk??-1,className:`wl-hide-sm`},{key:`net`,header:`Network In / Out`,cell:e=>`${zM(e.netIn)} / ${zM(e.netOut)}`,sort:e=>(e.netIn??0)+(e.netOut??0),className:`wl-hide-sm`},{key:`services`,header:`Services`,cell:e=>e.services.length?(0,W.jsx)(`span`,{className:`wl-infra-chips`,children:e.services.map(e=>(0,W.jsx)(`a`,{className:`wl-infra-chip`,href:HS(e),children:e},e))}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`}),sort:e=>e.services.length},{key:`node`,header:`Kubernetes`,cell:e=>e.node?(0,W.jsx)(`a`,{href:YS(e.name),children:`Node`}):(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`}),className:`wl-hide-sm`},{key:`seen`,header:`Last seen`,cell:t=>Lb(t.lastSeenMs,e),sort:e=>-e.lastSeenMs,className:`wl-hide-sm`}]}function mI({m:e}){return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)(UM,{icon:ky,label:`Hosts`,value:J(e.summary.hosts),note:`sending host metrics`}),(0,W.jsx)(UM,{icon:dv,label:`Avg CPU`,value:LM(e.summary.cpu),note:`busy, across hosts`}),(0,W.jsx)(UM,{icon:ry,label:`Avg Memory`,value:LM(e.summary.mem),note:`used, across hosts`}),(0,W.jsx)(UM,{icon:z_,label:`Services`,value:J(e.summary.services),note:`running on these hosts`})]})}function hI(){let e=i().query.get(`q`)??``,t=IM(`hosts`,{q:e}),{updatedMs:r}=Se(),a=t.model,o=t.supported&&a&&a.hosts.length===0&&!e;return(0,W.jsxs)(`div`,{className:`wl-infra-page`,children:[(0,W.jsx)(gb,{title:`Hosts`,subtitle:`CPU, memory, disks, and network of every host, and the services that run on it.`,children:t.supported&&(0,W.jsx)(Zb,{value:e,onChange:e=>n({q:e||null}),placeholder:`Find a host or service`})}),t.error&&(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-error`,children:[`Could not load hosts: `,t.error]}),t.loading&&!a&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-info`,children:`Loading hosts…`}),(!t.supported||o)&&(0,W.jsx)(JM,{supported:t.supported,what:`host`}),a&&!o&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(mI,{m:a}),(0,W.jsx)(G,{title:`All Hosts`,flush:!0,children:(0,W.jsx)(Q,{columns:pI(r),rows:a.hosts,rowKey:e=>e.name,defaultSort:{key:`name`,desc:!1},empty:(0,W.jsx)(K,{title:`No hosts match`,children:`Clear the search to see every host.`})})})]})]})}function gI(){let[e]=i().params;return e?(0,W.jsx)(fI,{name:QS(e)},e):(0,W.jsx)(hI,{})}var _I=S(`kubernetes`);function vI({d:e}){return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-3`,children:[(0,W.jsx)(GM,{title:`CPU Over Time`,starts:e.buckets,lines:[{label:`CPU`,values:e.cpu,color:`var(--wl-blue)`}],format:e=>BM(e)}),(0,W.jsx)(GM,{title:`Memory Over Time`,starts:e.buckets,lines:[{label:`Working set`,values:e.memory,color:`var(--wl-green)`}],format:RM}),(0,W.jsx)(GM,{title:`Network Over Time`,starts:e.buckets,lines:[{label:`In`,values:e.netIn,color:`var(--wl-blue)`},{label:`Out`,values:e.netOut,color:`var(--wl-orange)`}],format:zM})]})}function yI({state:e,what:t,found:n,children:r}){return(0,W.jsxs)(`div`,{className:`wl-infra-page wl-svc-page`,children:[e.error&&(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-error`,children:[`Could not load `,t,`: `,e.error]}),e.loading&&!n&&(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-info`,children:[`Loading `,t,`…`]}),!e.supported&&(0,W.jsx)(JM,{supported:!1,what:`Kubernetes`}),n?r:!!e.model&&!e.loading&&(0,W.jsx)(WM,{back:_I,backLabel:`Kubernetes`,icon:z_,title:t,facts:[[`Status`,`Sent no metrics in this time range`]]})]})}function bI({d:e,now:t}){let n=e.row,r=[[`Cluster`,n.cluster||`–`],[`Pods`,J(n.pods)],[`Last seen`,Lb(n.lastSeenMs,t)]];n.host&&r.push([`Host`,(0,W.jsx)(`a`,{href:JS(n.name),children:`Disks and network`},`h`)]);let i=n.ready===null?void 0:(0,W.jsx)(Kb,{tone:n.ready?`success`:`danger`,children:n.ready?`Ready`:`Not ready`});return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(WM,{back:_I,backLabel:`Kubernetes`,icon:ky,title:n.name,status:i,facts:r}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)(UM,{icon:dv,label:`CPU`,value:BM(n.cpu),note:n.cpuAlloc?`of ${BM(n.cpuAlloc)} allocatable`:`in use`}),(0,W.jsx)(UM,{icon:ry,label:`Memory`,value:RM(n.memory),note:n.memAlloc?`of ${RM(n.memAlloc)} allocatable`:`working set`}),(0,W.jsx)(UM,{icon:z_,label:`Pods`,value:J(n.pods),note:`${J(n.pending)} pending`,danger:n.pending>0}),(0,W.jsx)(UM,{icon:Cy,label:`Restarts`,value:J(n.restartsNew),note:`in this range`,danger:n.restartsNew>0})]}),(0,W.jsx)(vI,{d:e}),(0,W.jsx)(G,{title:`Pods`,flush:!0,children:(0,W.jsx)(iN,{rows:e.pods,empty:`No pods on this node in this range.`})}),(0,W.jsx)(qM,{services:e.services,now:t,empty:`No service reports a pod on this node as where it runs.`})]})}function xI({name:e}){let t=IM(`kubernetes`,{node:e}),{updatedMs:n}=Se(),r=t.model?.node?.row.name===e?t.model.node:null;return(0,W.jsx)(yI,{state:t,what:e,found:!!r,children:r&&(0,W.jsx)(bI,{d:r,now:n})})}var SI=[{key:`name`,header:`Container`,cell:e=>(0,W.jsx)(`strong`,{children:e.name}),sort:e=>e.name},{key:`ready`,header:`Ready`,cell:e=>e.ready===null?`–`:(0,W.jsx)(Kb,{tone:e.ready?`success`:`danger`,children:e.ready?`Ready`:`Not ready`})},{key:`restarts`,header:`Restarts`,cell:e=>`${J(e.restarts)}${e.restartsNew?` (+${J(e.restartsNew)} in range)`:``}`,num:!0,sort:e=>e.restarts},{key:`exit`,header:`Last Exit`,cell:e=>e.lastExit?(0,W.jsx)(`span`,{className:e.lastExit===`OOMKilled`?`wl-text-error`:void 0,children:e.lastExit===`OOMKilled`?`Out of memory (OOMKilled)`:e.lastExit}):`–`},{key:`mem`,header:`Memory Limit`,cell:e=>RM(e.memLimit),num:!0,className:`wl-hide-sm`},{key:`cpu`,header:`CPU Limit`,cell:e=>BM(e.cpuLimit),num:!0,className:`wl-hide-sm`}];function CI({d:e,now:t}){let n=e.row,r=[[`Namespace`,n.namespace||`–`],[`Node`,n.node?(0,W.jsx)(`a`,{href:YS(n.node),children:n.node},`n`):`–`],[`Workload`,n.workload?(0,W.jsx)(`a`,{href:ZS(`${n.namespace}/${n.workload}`),children:n.workload},`w`):`–`],[`Last seen`,Lb(n.lastSeenMs,t)]];return n.cluster&&r.unshift([`Cluster`,n.cluster]),(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(WM,{back:_I,backLabel:`Kubernetes`,icon:z_,title:n.name,status:(0,W.jsx)(QM,{phase:n.phase}),facts:r}),(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)(UM,{icon:dv,label:`CPU`,value:BM(n.cpu),note:`in use now`}),(0,W.jsx)(UM,{icon:ry,label:`Memory`,value:RM(n.memory),note:n.memLimit?`limit ${RM(n.memLimit)}`:`working set`}),(0,W.jsx)(UM,{icon:Cy,label:`Restarts`,value:J(n.restarts),note:`${J(n.restartsNew)} in this range`,danger:n.restartsNew>0}),(0,W.jsx)(UM,{icon:Gv,label:`Containers`,value:`${J(n.ready)} of ${J(n.containers)}`,note:n.oomKills?`${J(n.oomKills)} last stopped out of memory`:`ready`,danger:n.oomKills>0})]}),(0,W.jsx)(vI,{d:e}),(0,W.jsx)(G,{title:`Containers`,flush:!0,children:(0,W.jsx)(Q,{columns:SI,rows:e.containers,rowKey:e=>e.name,empty:(0,W.jsx)(K,{title:`No containers`,children:`k8s_cluster sends no container state for this pod.`})})}),(0,W.jsx)(qM,{services:e.services,now:t,empty:`No service reports this pod as where it runs.`})]})}function wI({ns:e,name:t}){let n=IM(`kubernetes`,{pod:e?`${e}/${t}`:t}),{updatedMs:r}=Se(),i=n.model?.pod?.row.name===t?n.model.pod:null;return(0,W.jsx)(yI,{state:n,what:t,found:!!i,children:i&&(0,W.jsx)(CI,{d:i,now:r})})}var TI=[[`pods`,`Pods`],[`workloads`,`Workloads`],[`nodes`,`Nodes`]];function EI({m:e}){let t=e.summary;return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)(UM,{icon:ky,label:`Nodes`,value:`${J(t.readyNodes)} of ${J(t.nodes)}`,note:`ready`,danger:t.readyNodes<t.nodes}),(0,W.jsx)(UM,{icon:V_,label:`Pods`,value:J(t.pods),note:`${J(t.running)} running, ${J(t.failed)} failed`}),(0,W.jsx)(UM,{icon:av,label:`Pending Pods`,value:J(t.pending),note:`waiting to be scheduled or started`,danger:t.pending>0}),(0,W.jsx)(UM,{icon:Cy,label:`Restarts`,value:J(t.restartsNew),note:(0,W.jsxs)(W.Fragment,{children:[`container restarts in this range · `,(0,W.jsx)(zy,{size:12,"aria-hidden":!0}),` `,J(t.oomKills),` out of memory`]}),danger:t.restartsNew>0||t.oomKills>0})]})}function DI({m:e,q:t}){return(0,W.jsxs)(W.Fragment,{children:[e.clusters.length>1&&(0,W.jsx)(X,{value:t.cluster??``,options:[[``,`All clusters`],...e.clusters.map(e=>[e,e])],onChange:e=>n({cluster:e||null}),label:`Cluster`}),(0,W.jsx)(X,{value:t.ns??``,options:[[``,`All namespaces`],...e.namespaces.map(e=>[e,e])],onChange:e=>n({ns:e||null}),label:`Namespace`}),(0,W.jsx)(Zb,{value:t.q??``,onChange:e=>n({q:e||null}),placeholder:`Find a pod, workload, or node`})]})}function OI(){let e=Object.fromEntries(i().query),t=TI.some(([t])=>t===e.view)?e.view:`pods`,r=IM(`kubernetes`,{cluster:e.cluster,ns:e.ns,workload:e.workload,q:e.q}),{updatedMs:a}=Se(),o=r.model,s=r.supported&&o&&o.summary.nodes===0&&o.summary.pods===0&&!e.q&&!e.ns&&!e.workload;return(0,W.jsxs)(`div`,{className:`wl-infra-page`,children:[(0,W.jsx)(gb,{title:`Kubernetes`,subtitle:`Clusters, nodes, workloads, and pods: what runs where, what restarts, and what waits.`,children:o&&!s&&(0,W.jsx)(DI,{m:o,q:e})}),r.error&&(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-error`,children:[`Could not load Kubernetes: `,r.error]}),r.loading&&!o&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-info`,children:`Loading Kubernetes…`}),(!r.supported||s)&&(0,W.jsx)(JM,{supported:r.supported,what:`Kubernetes`}),o&&!s&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(EI,{m:o}),e.workload&&(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-info`,children:[`Showing the pods of `,e.workload.split(`/`).slice(1).join(` `),`. `,(0,W.jsx)(`a`,{href:S(`kubernetes`,[],{view:`pods`}),children:`Show all pods`})]}),(0,W.jsxs)(G,{flush:!0,title:(0,W.jsx)(yb,{tabs:TI,value:t,onChange:e=>n({view:e===`pods`?null:e})}),children:[t===`pods`&&(0,W.jsx)(iN,{rows:o.pods}),t===`workloads`&&(0,W.jsx)(nN,{rows:o.workloads}),t===`nodes`&&(0,W.jsx)(eN,{rows:o.nodes,now:a})]})]})]})}function kI(){let[e,t,n]=i().params;return e===`node`&&t?(0,W.jsx)(xI,{name:QS(t)},t):e===`pod`&&t&&n?(0,W.jsx)(wI,{ns:QS(t)===`-`?``:QS(t),name:QS(n)},`${t}/${n}`):(0,W.jsx)(OI,{})}var AI={release:`New release`,error:`New error`,query:`Query`,downstream:`Downstream service`},jI={release:xy,error:U_,query:pv,downstream:jv};function MI(e){return e.kind===`error`?S(`errors`,[],{group:e.key}):e.kind===`release`?S(`services`,[e.service]):S(`services`,[e.row])}function NI({cause:e}){let t=jI[e.kind];return(0,W.jsxs)(`a`,{className:`wl-pb-cause`,href:MI(e),children:[(0,W.jsx)(t,{size:15,"aria-hidden":!0}),(0,W.jsx)(`strong`,{children:AI[e.kind]}),(0,W.jsx)(`span`,{children:Ia(e)})]})}function PI(e,t,n){return t===null?`–`:e===`error_rate`?Cb(t):e===`p95_ms`?q(t):`${J(t/Math.max(n/6e4,1e-9))}/min`}var FI=(e,t,n)=>e===`requests`?t.map(e=>e===null?null:e/Math.max(n/6e4,1e-9)):[...t],II=e=>za[e];function LI(e,t){let n=Math.max(1,Math.round((Math.min(e.endMs,t)-e.startMs)/6e4)),r=n>=120?`${Math.round(n/60)} h`:`${n} min`;return`Started ${Lb(e.startMs,t)} · ${r}${e.ongoing?` · ongoing`:` · ended ${Lb(e.endMs,t)}`}`}var RI=e=>S(`problems`,[e.id]);function zI(){return(0,W.jsxs)(`a`,{className:`wl-back`,href:S(`problems`),children:[(0,W.jsx)(C_,{size:14,"aria-hidden":`true`}),` All problems`]})}function BI({p:e,now:t}){let n=[[`Started`,Mb(e.startMs)],[e.ongoing?`Status`:`Ended`,e.ongoing?`Ongoing`:Mb(e.endMs)],[`Services`,J(e.services.length)],[`Anomalies`,J(e.anomalyCount)]];return(0,W.jsxs)(`section`,{className:`wl-panel wl-pb-head`,children:[(0,W.jsx)(zI,{}),(0,W.jsxs)(`h1`,{className:`wl-pb-head-title`,children:[(0,W.jsx)(Gb,{tone:e.ongoing?`danger`:`neutral`}),(0,W.jsx)(`span`,{children:e.title})]}),(0,W.jsx)(`p`,{className:`wl-pb-when`,children:LI(e,t)}),(0,W.jsx)(`dl`,{className:`wl-stats`,children:n.map(([e,t])=>(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`dt`,{children:e}),(0,W.jsx)(`dd`,{children:t})]},e))})]})}function VI({p:e}){return(0,W.jsxs)(G,{title:`Suspected Cause`,children:[e.cause?(0,W.jsx)(NI,{cause:e.cause}):(0,W.jsx)(K,{title:`No cause stands out`,children:`No new release, new error group, slower query, or service further down the calls started with it.`}),e.causes.length>1&&(0,W.jsxs)(`div`,{className:`wl-pb-also`,children:[(0,W.jsx)(`h3`,{children:`Also Seen`}),e.causes.slice(1).map(e=>(0,W.jsx)(NI,{cause:e},e.kind))]})]})}var HI=e=>e.endpoint?`${e.name} · ${e.endpoint}`:e.name;function UI({a:e,m:t}){let n=n=>FI(e.metric,n,t.bucketMs),r=[{label:II(e.metric),values:n(e.series.values),color:`var(--wl-red)`},{label:`Alerts above`,values:n(e.series.uppers),color:`var(--wl-orange)`},{label:`Normal`,values:n(e.series.normals),color:`var(--wl-blue)`}];return(0,W.jsx)(G,{title:`${II(e.metric)}: ${HI(e)}`,children:(0,W.jsx)(iE,{starts:t.starts,lines:r,height:240,format:n=>PI(e.metric,e.metric===`requests`?n*(t.bucketMs/6e4):n,t.bucketMs)})})}function WI(e){let t=(t,n)=>PI(t.metric,n,e.bucketMs);return[{key:`where`,header:`Service / Endpoint`,className:`wl-pb-where`,cell:e=>(0,W.jsx)(`a`,{href:S(`services`,[e.row]),onClick:e=>e.stopPropagation(),children:HI(e)})},{key:`metric`,header:`Metric`,cell:e=>II(e.metric)},{key:`peak`,header:`Peak`,num:!0,cell:e=>t(e,e.peak.value),sort:e=>e.peak.value/Math.max(e.peak.upper,1e-9)},{key:`normal`,header:`Normal`,num:!0,cell:e=>t(e,e.peak.normal)},{key:`upper`,header:`Alerts Above`,num:!0,cell:e=>t(e,e.peak.upper)},{key:`start`,header:`Started`,num:!0,cell:e=>Mb(e.startMs),sort:e=>e.startMs}]}function GI({p:e,m:t}){let[n,r]=(0,T.useState)(e.anomalies[0]?.id??``),i=e.anomalies.find(e=>e.id===n)??e.anomalies[0],a=e.anomalyCount-e.anomalies.length;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(BI,{p:e,now:t.meta.window.to}),(0,W.jsx)(VI,{p:e}),i&&(0,W.jsx)(UI,{a:i,m:t}),(0,W.jsx)(G,{flush:!0,title:a>0?`Anomalies (${J(e.anomalies.length)} of ${J(e.anomalyCount)})`:`Anomalies (${J(e.anomalyCount)})`,children:(0,W.jsx)(Q,{columns:WI(t),rows:e.anomalies,rowKey:e=>e.id,onRowClick:e=>r(e.id),selectedKey:i?.id??null})})]})}function KI(){return(0,W.jsxs)(G,{children:[(0,W.jsx)(zI,{}),(0,W.jsx)(K,{title:`This problem is not in the selected time range`,children:`Pick a longer time range at the top, or open another problem.`})]})}function qI({p:e,now:t}){return(0,W.jsxs)(`li`,{className:`wl-pb-card${e.ongoing?` wl-pb-ongoing`:``}`,children:[(0,W.jsxs)(`a`,{className:`wl-pb-card-head`,href:RI(e),children:[(0,W.jsx)(Gb,{tone:e.ongoing?`danger`:`neutral`,title:e.ongoing?`Ongoing`:`Over`}),(0,W.jsx)(`strong`,{className:`wl-pb-title`,children:e.title}),(0,W.jsx)(`span`,{className:`wl-pb-when`,children:LI(e,t)}),(0,W.jsx)(tv,{size:16,"aria-hidden":`true`})]}),(0,W.jsxs)(`div`,{className:`wl-chips`,children:[e.services.slice(0,6).map(e=>(0,W.jsx)(`span`,{className:`wl-chip`,children:e.name},e.row)),e.services.length>6&&(0,W.jsxs)(`span`,{className:`wl-chip`,children:[`+`,e.services.length-6,` more`]}),(0,W.jsxs)(`span`,{className:`wl-chip wl-chip-red`,children:[J(e.anomalyCount),` `,e.anomalyCount===1?`anomaly`:`anomalies`]})]}),e.cause?(0,W.jsx)(NI,{cause:e.cause}):(0,W.jsx)(`p`,{className:`wl-pb-nocause`,children:`No cause stands out: no new release, new error, slower query, or service further down the calls.`})]})}function JI({m:e}){return e.baseline.learning?(0,W.jsx)(K,{title:`No problems yet`,children:`Problems show up once WizeLens knows what normal looks like here.`}):(0,W.jsx)(K,{title:`No problems in this range`,children:`Every service and endpoint stayed within its normal error rate, p95, and traffic.`})}function YI({m:e}){let t=e.meta.window.to,n=e.total>e.problems.length?`Problems (${J(e.problems.length)} of ${J(e.total)})`:`Problems (${J(e.total)})`;return(0,W.jsx)(G,{title:n,children:e.problems.length?(0,W.jsx)(`ul`,{className:`wl-pb-list`,children:e.problems.map(e=>(0,W.jsx)(qI,{p:e,now:t},e.id))}):(0,W.jsx)(JI,{m:e})})}var XI=[[`high`,`High sensitivity`],[`medium`,`Medium sensitivity`],[`low`,`Low sensitivity`]];function ZI({icon:e,label:t,value:n,foot:r,danger:i=!1}){return(0,W.jsxs)(`section`,{className:`wl-panel wl-stat`,children:[(0,W.jsx)(e,{className:`wl-stat-icon${i&&n>0?` wl-danger`:``}`,"aria-hidden":!0}),(0,W.jsx)(`div`,{className:`wl-stat-label`,children:t}),(0,W.jsx)(`div`,{}),(0,W.jsx)(`div`,{className:`wl-stat-value`,children:J(n)}),(0,W.jsx)(`div`,{className:`wl-stat-foot wl-pb-foot`,children:r})]})}function QI({m:e}){let t=e.baseline.mode===`week`?`same hour, earlier weeks`:`same hour, earlier days`;return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)(ZI,{icon:Ly,label:`Ongoing`,value:e.ongoing,foot:`still above normal now`,danger:!0}),(0,W.jsx)(ZI,{icon:tb,label:`Problems`,value:e.total,foot:`in this range`}),(0,W.jsx)(ZI,{icon:y_,label:`Anomalies`,value:e.anomalies,foot:`against the ${t}`}),(0,W.jsx)(ZI,{icon:z_,label:`Services Affected`,value:e.services,foot:`in any problem`})]})}function $I({m:e}){if(!e.baseline.learning)return null;let t=e.baseline.mode===`week`?`the same hour in earlier weeks`:`the same hour on earlier days`;return(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-info`,children:[`WizeLens is learning what normal looks like. It compares each part of the range with `,t,`, and needs two of them with data (it has `,e.baseline.samples,`). Hosts that keep less than two weeks compare with earlier days.`]})}function eL({m:e}){let t=i().query.get(`sensitivity`)??e?.sensitivity??`medium`;return(0,W.jsx)(gb,{title:`Problems`,subtitle:`Services and endpoints above their normal error rate, p95, or traffic, grouped by the calls between them, with a suspected cause.`,children:(0,W.jsx)(X,{label:`Sensitivity`,value:t,options:XI,onChange:e=>n({sensitivity:e===`medium`?null:e})})})}function tL(){let e=i(),t=e.params[0]??null,n=t!==null||e.query.has(`problem`)||e.query.has(`at`),{model:r,loading:a,error:o}=yT(`problems`,t?{problem:t}:void 0);return(0,W.jsxs)(`div`,{className:`wl-pb-page`,children:[!n&&(0,W.jsx)(eL,{m:r}),(0,W.jsx)(BD,{model:r,loading:a,error:o,what:`problems`}),r&&(0,W.jsx)($I,{m:r}),r&&n&&(r.selected?(0,W.jsx)(GI,{p:r.selected,m:r},r.selected.id):(0,W.jsx)(KI,{})),r&&!n&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(QI,{m:r}),(0,W.jsx)(YI,{m:r})]})]})}function nL(e,t,n,r){let[i,a]=(0,T.useState)(null);return(0,T.useEffect)(()=>{if(a(null),!e.trim()||!bh(e).ok)return;let i=!0,o=Date.now();return Ih(t=>qx({q:e,kind:t.kind,range:n,limit:200},t.cursor?vm(t.cursor):null,r),t,null,{from:o-fe[n].ms,to:o}).then(e=>i&&a(e),()=>void 0),()=>void(i=!1)},[e,t,n,r]),i}function rL(e){return{key:`time`,header:`Time`,className:`wl-nowrap`,cell:t=>Mb(e(t))}}var iL=e=>e===null?`–`:(0,W.jsx)(Y,{tone:Wb(e),children:e}),aL=(e,t)=>(0,W.jsx)(`a`,{href:e,title:t,className:`wl-truncate`,children:t}),oL={requests:[rL(e=>e.startMs),{key:`req`,header:`Request`,className:`wl-search-main`,cell:e=>aL(S(`requests`,[],{trace:e.traceId}),`${e.method} ${e.path}`)},{key:`status`,header:`Status`,cell:e=>iL(e.status)},{key:`dur`,header:`Duration`,num:!0,cell:e=>q(e.durationMs)},{key:`service`,header:`Service`,className:`wl-nowrap`,cell:e=>e.service}],traces:[rL(e=>e.startMs),{key:`trace`,header:`Trace`,className:`wl-search-main`,cell:e=>aL(y(e.traceId),e.path)},{key:`health`,header:`Health`,cell:e=>e.health?(0,W.jsx)(Y,{tone:Ub(e.health),children:e.health}):`–`},{key:`dur`,header:`Duration`,num:!0,cell:e=>q(e.durationMs)},{key:`spans`,header:`Spans`,num:!0,cell:e=>e.spanCount},{key:`services`,header:`Services`,className:`wl-search-wrap`,cell:e=>e.services.join(`, `)}],spans:[rL(e=>e.startMs),{key:`span`,header:`Span`,className:`wl-search-main`,cell:e=>aL(y(e.traceId),e.name)},{key:`cat`,header:`Kind`,className:`wl-nowrap`,cell:e=>`${e.category} · ${e.kind}`},{key:`status`,header:`Status`,cell:e=>e.httpStatus===null?e.status===`error`?(0,W.jsx)(Y,{tone:`danger`,children:`error`}):`–`:iL(e.httpStatus)},{key:`dur`,header:`Duration`,num:!0,cell:e=>q(e.durationMs)},{key:`service`,header:`Service`,className:`wl-nowrap`,cell:e=>e.service}],logs:[rL(e=>e.timeMs),{key:`level`,header:`Level`,cell:e=>(0,W.jsx)(pA,{level:e.level})},{key:`msg`,header:`Message`,className:`wl-search-main wl-search-wrap`,cell:e=>e.message},{key:`service`,header:`Service`,className:`wl-nowrap`,cell:e=>e.service},{key:`trace`,header:`Request`,className:`wl-search-trace`,cell:e=>aL(y(e.traceId,`logs`),e.traceName)}]},sL={requests:`req`,traces:`trace`,spans:`span`,logs:`msg`};function cL(e,t){let n=t;return{traceId:n.traceId,owner:jg(e,t),timeMs:n.startMs??n.timeMs??0}}function lL(e,t){return e===`logs`?t.key:e===`spans`?`${t.traceId}:${t.spanId}`:t.traceId}var uL=50,dL=[[`requests`,`Requests`],[`traces`,`Traces`],[`spans`,`Spans`],[`logs`,`Logs`]],fL=e=>e?`${e.n.toLocaleString()}${e.more?`+`:``}`:``,pL=e=>zp.includes(e??``);function mL({failure:e}){return e.type===`invalid`?(0,W.jsx)(K,{title:`Fix the search above to see results`}):(0,W.jsxs)(K,{title:`Search is not answering`,children:[e.message,`. Your search is fine. Try again in a moment.`]})}function hL({kind:e,rows:t}){return(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn wl-btn-sm`,title:`Download the results shown as CSV`,onClick:()=>EO(`search-${e}`,DO(t)),children:[(0,W.jsx)(rb,{"aria-hidden":`true`}),` Export`]})}function gL({kind:e,s:t}){let n=t.pages.flatMap(e=>e.items),r=t.pages[0]?.settling,i=t.pages[0]?.unknownTags??[],a=Fx(e,n,t=>cL(e,t)),o=Vx(oL[e],sL[e],a),s=t.loading?(0,W.jsx)(K,{title:`Searching…`}):(0,W.jsx)(K,{title:`Nothing matches`,children:`Try fewer terms, another kind, or a wider time range.`});return(0,W.jsxs)(G,{title:`${dL.find(([t])=>t===e)[1]} (${n.length}${t.more?`+`:``})`,flush:!0,action:n.length>0&&(0,W.jsx)(hL,{kind:e,rows:n}),children:[r?(0,W.jsxs)(`p`,{className:`wl-search-note wl-muted wl-small`,children:[`Search is catching up: `,r,` `,r===1?`trace is`:`traces are`,` not in the results yet.`]}):null,i.length>0&&(0,W.jsxs)(`p`,{className:`wl-search-note wl-muted wl-small`,children:[`No tag named `,i.join(`, `),`. It finds only tags your app sets with that name.`]}),t.failure?(0,W.jsx)(mL,{failure:t.failure}):(0,W.jsx)(Q,{columns:o,rows:n,rowKey:t=>lL(e,t),empty:s}),t.more&&(0,W.jsx)(`div`,{className:`wl-search-more`,children:(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:t.more,children:`Show more`})})]})}function _L({summary:e,kind:t}){let n=dL.find(([e])=>e===t)[1];return(0,W.jsx)(G,{title:`${n} Over Time`,children:(0,W.jsx)(iE,{starts:e.starts,bars:[{label:n,values:e.histogram,color:`var(--wl-blue)`}],height:140})})}function vL(){let{items:e}=WE(`search`);return e.length===0?null:(0,W.jsxs)(`div`,{className:`wl-saved-searches`,children:[(0,W.jsx)(`span`,{className:`wl-muted wl-small`,children:`Saved:`}),e.map(e=>(0,W.jsx)(`a`,{className:`wl-filter-chip`,href:e.href,title:e.ownerName?`Saved by ${e.ownerName}`:void 0,children:e.name},e.id))]})}function yL(){let{query:e}=i(),t=e.get(`q`)??``,r=pL(e.get(`kind`))?e.get(`kind`):`requests`,[a]=t_(),o=H().has(`search`),s=Xx({q:t,kind:r,range:a,limit:uL},o),c=s.failure?.type===`invalid`?s.failure:null,l=nL(t,r,a,o),u=dL.map(([e,t])=>[e,l?`${t} (${fL(l.counts[e])})`:t]),d=bh(t),f=t.trim()&&d.ok&&d.node&&!kg(d.node)?[Jg(t.trim())]:[];return(0,W.jsxs)(`div`,{className:`wl-search-page`,children:[(0,W.jsx)(gb,{title:`Search`,subtitle:`Find any request, trace, span, or log line. Type a field such as service: or @ for an attribute.`,children:(0,W.jsx)(dS,{scopes:f})}),(0,W.jsxs)(`section`,{className:`wl-panel wl-search-bar`,children:[(0,W.jsx)(uA,{value:t,onSubmit:e=>n({q:e||null}),range:a,server:o,serverError:c}),(0,W.jsx)(yb,{tabs:u,value:r,onChange:e=>n({kind:e===`requests`?null:e})}),(0,W.jsx)(vL,{})]}),l&&(0,W.jsx)(_L,{summary:l,kind:r}),(0,W.jsx)(gL,{kind:r,s})]})}function bL({page:e,sections:t,active:n}){let r=t.find(e=>e.id===n)??t[0];return r?(0,W.jsxs)(`div`,{className:`wl-sections`,children:[(0,W.jsx)(`nav`,{className:`wl-sections-nav`,"aria-label":`Sections`,children:t.map(t=>(0,W.jsxs)(`a`,{href:S(e,[t.id]),className:t===r?`wl-active`:``,"aria-current":t===r?`page`:void 0,children:[(0,W.jsx)(t.icon,{"aria-hidden":!0}),(0,W.jsx)(`span`,{children:t.label}),t.count!==void 0&&(0,W.jsx)(`span`,{className:`wl-chip-count`,children:t.count})]},t.id))}),(0,W.jsx)(`div`,{className:`wl-sections-body`,children:r.render()})]}):null}function xL({title:e,description:t,action:n}){return(0,W.jsxs)(`header`,{className:`wl-section-head`,children:[(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`h2`,{children:e}),t&&(0,W.jsx)(`p`,{children:t})]}),n&&(0,W.jsx)(`div`,{className:`wl-section-actions`,children:n})]})}function SL({label:e,text:t}){return(0,W.jsxs)(`div`,{className:`wl-snippet`,children:[(0,W.jsx)(`span`,{className:`wl-muted wl-small`,children:e}),(0,W.jsx)(`code`,{className:`wl-mono wl-small`,children:t}),(0,W.jsx)(Xb,{text:t,label:`Copy: ${e}`})]})}function CL({hubUrl:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(xL,{title:`Connect a service`,description:`Set these on the service, then restart it. It keeps its own dashboard too.`}),(0,W.jsxs)(G,{children:[(0,W.jsx)(SL,{label:`WizeLens add-on (.NET or Node)`,text:`WIZELENS_HUB=${e}`}),(0,W.jsx)(SL,{label:`Group it in a project (optional)`,text:`WIZELENS_PROJECT=my-project`}),(0,W.jsx)(SL,{label:`Any OpenTelemetry app (OTLP/HTTP)`,text:`OTEL_EXPORTER_OTLP_ENDPOINT=${e}`}),(0,W.jsx)(SL,{label:`OTLP project (optional)`,text:`OTEL_RESOURCE_ATTRIBUTES=service.namespace=my-project`})]})]})}function wL({url:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(xL,{title:`Connect a service`,description:(0,W.jsxs)(W.Fragment,{children:[`Make an ingest key in `,(0,W.jsx)(`a`,{href:`#/team/keys`,children:`Team, API keys`}),`, then set these on the service and restart it. In production, also set WIZELENS_ENABLED=true: the service then sends only and serves nothing.`]})}),(0,W.jsxs)(G,{children:[(0,W.jsx)(SL,{label:`WizeLens add-on (.NET or Node)`,text:`WIZELENS_HUB=${e}`}),(0,W.jsx)(SL,{label:`Its ingest key`,text:`WIZELENS_HUB_TOKEN=wl_ik_...`}),(0,W.jsx)(SL,{label:`Any OpenTelemetry app (OTLP/HTTP)`,text:`OTEL_EXPORTER_OTLP_ENDPOINT=${e}`}),(0,W.jsx)(SL,{label:`OTLP key`,text:`OTEL_EXPORTER_OTLP_HEADERS=Authorization=Bearer wl_ik_...`}),(0,W.jsx)(SL,{label:`AI agents (MCP), with a read key`,text:`${e}/_wizelens/mcp`})]})]})}function TL({hub:e}){return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(xL,{title:`Sends to`}),(0,W.jsx)(G,{children:(0,W.jsxs)(`p`,{className:`wl-settings-note`,children:[`This service also sends its data to the hub or cloud at `,(0,W.jsx)(`code`,{className:`wl-mono`,children:e}),`.`,` `,(0,W.jsx)(`a`,{href:`${e}/_wizelens/`,target:`_blank`,rel:`noreferrer`,children:`Open that dashboard`}),` `,`to see every service in one place.`]})})]})}function EL({info:e}){let t=new URL(`../`,window.location.href).href.replace(/\/$/,``);return e?.mode===`hub`?(0,W.jsx)(CL,{hubUrl:t}):e?.mode===`cloud`?(0,W.jsx)(wL,{url:t}):e?.hub?(0,W.jsx)(TL,{hub:e.hub}):null}var DL=[{setting:`On or off`,dotnet:`Enabled`,node:`enabled`,env:`WIZELENS_ENABLED`},{setting:`Dashboard (off: send-only)`,dotnet:`Dashboard`,node:`dashboard`,env:`WIZELENS_DASHBOARD`},{setting:`Send to a hub or the cloud`,dotnet:`HubUrl`,node:`hub`,env:`WIZELENS_HUB`},{setting:`Hub token or ingest key`,dotnet:`HubToken`,node:`hubToken`,env:`WIZELENS_HUB_TOKEN`},{setting:`Project on a shared hub`,dotnet:`Project`,node:`project`,env:`WIZELENS_PROJECT`},{setting:`Share of traces kept`,dotnet:`Sampling.Rate`,node:`sampling.rate`,env:`WIZELENS_SAMPLE_RATE`},{setting:`Logs outside a request`,dotnet:`Logs.Outside`,node:`logs.outside`,env:`WIZELENS_LOGS_OUTSIDE`},{setting:`Lowest level kept outside a request`,dotnet:`Logs.MinLevel`,node:`logs.minLevel`,env:`WIZELENS_LOGS_MIN_LEVEL`},{setting:`Share of those lines kept (below warn)`,dotnet:`Logs.SampleRate`,node:`logs.sampleRate`,env:`WIZELENS_LOGS_SAMPLE_RATE`},{setting:`Storage`,dotnet:`Storage`,node:`storage`,env:`–`},{setting:`Storage file`,dotnet:`StoragePath`,node:`storagePath`,env:`–`},{setting:`Traces kept`,dotnet:`MaxTraces, MaxAge`,node:`maxTraces, maxAgeMs`,env:`–`},{setting:`Slow query`,dotnet:`SlowQueryMs`,node:`slowQueryMs`,env:`–`},{setting:`N+1 threshold`,dotnet:`NPlusOneThreshold`,node:`nPlusOneThreshold`,env:`–`},{setting:`AI access (MCP)`,dotnet:`EnableMcp`,node:`enableMcp`,env:`–`},{setting:`Outgoing HTTP calls (fetch, node:http)`,dotnet:`–`,node:`instrumentFetch, instrumentHttp`,env:`–`},{setting:`Response bodies`,dotnet:`CaptureResponseBody`,node:`captureResponseBody`,env:`–`},{setting:`Metrics`,dotnet:`CaptureMetrics`,node:`captureMetrics`,env:`–`},{setting:`Redacted keys`,dotnet:`RedactKeys`,node:`redactKeys`,env:`–`},{setting:`Tags`,dotnet:`Tags.Rules, Tags.DisableBuiltIns`,node:`tags.rules, tags.disableBuiltIns`,env:`–`}],OL=e=>e===`–`?(0,W.jsx)(`span`,{className:`wl-muted`,children:`–`}):(0,W.jsx)(`code`,{className:`wl-mono wl-small`,children:e}),kL=[{key:`setting`,header:`Setting`,cell:e=>e.setting},{key:`dotnet`,header:`.NET: AddWizeLens(o => …)`,cell:e=>OL(e.dotnet)},{key:`node`,header:`Node: createWizeLens({ … })`,cell:e=>OL(e.node)},{key:`env`,header:`Environment variable`,cell:e=>OL(e.env)}];function AL(){return(0,W.jsx)(G,{flush:!0,children:(0,W.jsx)(Q,{columns:kL,rows:DL,rowKey:e=>e.setting})})}function jL(){let e=H(),t=e.has(`accounts`),n=Ne(Ce()),r=c().project,i=n?.project.role??n?.org.role;return e.has(`settings`)?t?{url:r?`./api/projects/${encodeURIComponent(r)}/settings`:null,canEdit:i===`owner`||i===`admin`,label:n?.project.name??``}:{url:`./api/settings?project=${encodeURIComponent(r)}`,canEdit:!0,label:r||`the default project`}:{url:null,canEdit:!1,label:``}}var ML=e=>({slowQueryMs:e.slowQueryMs?.toString()??``,nPlusOneThreshold:e.nPlusOneThreshold?.toString()??``,retentionDays:e.retentionDays?.toString()??``,redactKeys:(e.redactKeys??[]).join(`, `)}),NL=e=>({slowQueryMs:e.slowQueryMs||null,nPlusOneThreshold:e.nPlusOneThreshold||null,retentionDays:e.retentionDays||null,redactKeys:e.redactKeys.split(`,`).map(e=>e.trim()).filter(Boolean)});function PL({reply:e}){let t=new Set(e.settings.redactKeys??[]);return(0,W.jsx)(`div`,{className:`wl-chips`,children:e.effective.redactKeys.map(e=>(0,W.jsx)(`span`,{className:`wl-chip wl-mono${t.has(e)?` wl-chip-own`:``}`,children:e},e))})}function FL({url:e,reply:t,canEdit:n,onSaved:r}){let[i,a]=(0,T.useState)(()=>ML(t.settings)),[o,s]=(0,T.useState)(null);(0,T.useEffect)(()=>a(ML(t.settings)),[t]);let c=e=>t=>a(n=>({...n,[e]:t.target.value})),l=t.defaults,u=t=>{t.preventDefault(),x(`PUT`,e,NL(i)).then(e=>(r(e),s({ok:!0,text:`Saved. New data uses these settings.`})),e=>s({ok:!1,text:e instanceof Error?e.message:String(e)}))},d=!n;return(0,W.jsxs)(`form`,{className:`wl-form`,onSubmit:u,children:[(0,W.jsxs)($x,{children:[(0,W.jsx)(Z,{label:`Slow query (ms)`,narrow:!0,type:`number`,min:1,max:6e4,disabled:d,value:i.slowQueryMs,onChange:c(`slowQueryMs`),placeholder:String(l.slowQueryMs),hint:`A database call this slow or slower counts as slow. Empty: ${l.slowQueryMs}.`}),(0,W.jsx)(Z,{label:`N+1 threshold`,narrow:!0,type:`number`,min:2,max:1e3,disabled:d,value:i.nPlusOneThreshold,onChange:c(`nPlusOneThreshold`),placeholder:String(l.nPlusOneThreshold),hint:`This many similar calls in one request is an N+1. Empty: ${l.nPlusOneThreshold}.`}),(0,W.jsx)(Z,{label:`Keep data for (days)`,narrow:!0,type:`number`,min:1,max:l.retentionDays,disabled:d,value:i.retentionDays,onChange:c(`retentionDays`),placeholder:String(l.retentionDays),hint:`At most ${l.retentionDays}. Older data is deleted within minutes.`})]}),(0,W.jsx)(Z,{label:`More redacted keys`,disabled:d,value:i.redactKeys,onChange:c(`redactKeys`),placeholder:`ssn, iban, dob`,hint:`Comma list. A value whose key contains one of these is stored as [redacted], on top of the keys in effect below.`}),o&&!o.ok&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:o.text}),n&&(0,W.jsxs)(`div`,{className:`wl-form-actions wl-form-actions-split`,children:[(0,W.jsx)(`span`,{className:`wl-muted wl-small`,role:`status`,children:o?.ok?o.text:``}),(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:()=>a(ML({})),children:`Use the defaults`}),(0,W.jsx)(`button`,{type:`submit`,className:`wl-btn wl-btn-primary`,children:`Save settings`})]})]}),(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`div`,{className:`wl-section-title`,children:`Redacted keys in effect`}),(0,W.jsx)(PL,{reply:t})]})]})}function IL(){let e=jL(),{data:t,error:n,reload:r}=Ux(e.url),[i,a]=(0,T.useState)(null),o=i??t,s=e.canEdit?``:` Only owners and admins can change them.`;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(xL,{title:`This project`,description:`Settings for ${e.label||`this project`}. Thresholds and redacted keys apply to data that arrives after you save.${s}`}),(0,W.jsxs)(G,{children:[!e.url&&(0,W.jsx)(K,{title:`Pick a project first`,children:`Choose a project at the top of the page.`}),n&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:n}),e.url&&o&&(0,W.jsx)(FL,{url:e.url,reply:o,canEdit:e.canEdit,onSaved:e=>(a(e),r())})]})]})}var LL=36e5;function RL(e){return e%(24*LL)==0?`${e/(24*LL)} day${e===24*LL?``:`s`}`:e>=LL?`${+(e/LL).toFixed(1)} hours`:`${Math.round(e/6e4)} minutes`}var zL=e=>e===void 0?`–`:(0,W.jsx)(Y,{tone:e?`success`:`neutral`,children:e?`On`:`Off`});function BL(e){return e.status===`ok`?(0,W.jsx)(Kb,{tone:`success`,children:`Connected`}):e.status===`pending`?(0,W.jsx)(Kb,{tone:`neutral`,children:`Connecting…`}):(0,W.jsxs)(Kb,{tone:`danger`,colorText:!0,children:[`Unreachable`,e.error?` (${e.error})`:``]})}function VL(e,t){if(!t.mcp)return zL(!1);let n=`${e.endpoint}/mcp`;return(0,W.jsxs)(`span`,{children:[zL(!0),` `,(0,W.jsx)(`code`,{className:`wl-mono wl-small`,children:n}),` `,(0,W.jsx)(Xb,{text:n,label:`Copy MCP URL`})]})}function HL(e){let t=e.sampling;if(!t)return`Every trace`;let n=[t.keepErrors?`every trace with an error`:null,t.keepSlowMs===null?null:`every trace with a span of ${q(t.keepSlowMs)} or more`].filter(Boolean),r=`${Number((t.rate*100).toFixed(2))}% of traces`;return n.length?`${r}, plus ${n.join(` and `)}`:r}function UL(e,t){let n=t.storage,r=n?.kind===`postgres`?`Postgres (kept across restarts)`:n?.kind===`sqlite`?`SQLite file (kept across restarts)`:n?`Memory only`:null;return[[`Status`,BL(e)],[`Version`,t.version],[`Runtime`,t.runtime],[`Environment`,t.environment??null],[`Host`,t.host??null],[`Started`,t.startedMs?Mb(t.startedMs):null],[`Storage`,r],[`Max traces`,n?.maxTraces===void 0?null:J(n.maxTraces)],[`Keeps data for`,n?RL(n.maxAgeMs):null],[`Sampling`,t.mode===`in-app`?HL(t):null],[`Slow query`,t.analysis?`${q(t.analysis.slowQueryMs)} or more`:null],[`N+1 threshold`,t.analysis?`${t.analysis.nPlusOneThreshold} repeats`:null],[`AI access (MCP)`,VL(e,t)],[`Response bodies`,t.captureResponseBody===void 0?null:zL(t.captureResponseBody)]].filter(e=>e[1]!==null)}function WL({source:e}){let t=e.info,n=(0,W.jsxs)(`h2`,{children:[t?.service??e.endpoint,e.self&&(0,W.jsx)(`span`,{className:`wl-muted wl-small`,children:` · this dashboard`})]});return(0,W.jsxs)(G,{title:n,action:(0,W.jsx)(`a`,{className:`wl-view-all wl-small wl-mono`,href:`${e.endpoint}/`,children:e.endpoint}),children:[t?(0,W.jsx)(vb,{rows:UL(e,t)}):(0,W.jsx)(vb,{rows:[[`Status`,BL(e)]]}),t?.redactKeys&&(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{className:`wl-section-title`,children:`Redacted keys`}),(0,W.jsx)(`p`,{className:`wl-muted wl-small wl-settings-note`,children:`Values whose key contains one of these words are stored as [redacted].`}),(0,W.jsx)(`div`,{className:`wl-chips`,children:t.redactKeys.map(e=>(0,W.jsx)(`span`,{className:`wl-chip wl-mono`,children:e},e))})]})]})}var GL={name:``,color:`blue`,query:``},KL={stream:`Responses sent as a stream of events (server-sent events), such as MCP and live updates. They stay open on purpose, so they look slow.`,probe:`Health checks from Kubernetes, Google Cloud, and AWS load balancers.`,bot:`Crawlers and bots, by their user agent.`};function qL(e,t){return[{key:`tag`,header:`Tag`,cell:e=>(0,W.jsx)(zx,{tag:e})},{key:`what`,header:`Shows on`,className:`wl-wrap`,cell:e=>KL[e.name]??(0,W.jsx)(`span`,{className:`wl-tag-query`,children:e.query})},{key:`on`,header:`On`,cell:n=>(0,W.jsx)(eS,{label:n.enabled?`On`:`Off`,checked:n.enabled,disabled:!e,onChange:()=>t(n)})}]}function JL(e,t,n){return[{key:`tag`,header:`Tag`,cell:e=>(0,W.jsx)(zx,{tag:e})},{key:`query`,header:`Search`,className:`wl-wrap`,cell:e=>(0,W.jsx)(`span`,{className:`wl-tag-query`,children:e.query})},...e?[{key:`actions`,header:``,cell:e=>(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:()=>t(e),children:`Edit`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn wl-text-error`,onClick:()=>n(e),children:`Delete`})]})}]:[]]}function YL(){let e=cS({name:`checkout`,query:`route:/checkout*`,color:`green`});return(0,W.jsxs)(G,{title:`Add a tag`,children:[(0,W.jsxs)(`p`,{children:[`This service keeps its tags in code. Add a rule to the `,(0,W.jsx)(`code`,{children:`tags`}),` option, then restart the service.`]}),(0,W.jsx)(`pre`,{className:`wl-tag-code`,children:`// Node\n${e.node}\n\n// .NET\n${e.dotnet}`})]})}function XL(){let e=H(),t=Tx(),{confirm:n,dialog:r}=XN(),[i,a]=(0,T.useState)(null),[o,s]=(0,T.useState)(null),c=t?.list,l=!!c?.editable,u=c?.tags.filter(e=>!e.builtIn)??[],d=e=>void Wx(e,()=>void 0).then(s),f=e=>d(()=>Ax(e.id,!e.enabled)),p=async e=>{await n({title:`Delete the tag "${e.name}"?`,body:`It comes off every request, trace, and log line it marks. Your data stays as it is.`,confirmLabel:`Delete tag`,danger:!0})&&d(()=>jx(e.id))},m=e=>Wx(()=>i===`new`?Ox(e):kx(i.id,e),()=>a(null)),h=u.length>=(c?.max??50),g=l&&!i&&(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn wl-btn-primary`,onClick:()=>a(`new`),disabled:h,title:h?`Up to ${c?.max} tags`:void 0,children:[(0,W.jsx)(hy,{"aria-hidden":`true`}),` New tag`]}),_=e.mode===`in-app`?`Set in this service's code.`:l?`Anything that matches a tag's search shows the tag, on old and new data alike.`:`Your role can see tags but not change them.`;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(xL,{title:`Tags`,description:`Name a search, and everything it finds wears that name in every list. Search for it with tag:name. ${_}`,action:g}),r,o&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,role:`alert`,children:o}),i&&(0,W.jsx)(G,{title:i===`new`?`New tag`:`Edit "${i.name}"`,children:(0,W.jsx)(sS,{initial:i===`new`?GL:{name:i.name,color:i.color,query:i.query},saveLabel:`Save tag`,onSave:m,onCancel:()=>a(null)})}),(0,W.jsx)(G,{title:`Your tags`,flush:!0,children:(0,W.jsx)(Q,{columns:JL(l,a,e=>void p(e)),rows:u,rowKey:e=>e.id,empty:(0,W.jsx)(K,{title:t?`No tags yet`:`Loading…`,children:t&&`Add one here, or use Tag this on a request, an error, or a service.`})})}),e.mode===`in-app`&&(0,W.jsx)(YL,{}),(0,W.jsx)(G,{title:`Built-in tags`,flush:!0,children:(0,W.jsx)(Q,{columns:qL(l,f),rows:c?.tags.filter(e=>e.builtIn)??[],rowKey:e=>e.id})})]})}var ZL=[[`light`,`Light`],[`dark`,`Dark`],[`system`,`Same as my system`]],QL=[[`local`,`My computer's time zone`],[`utc`,`UTC`]],$L=[[`12`,`12-hour (2:05 PM)`],[`24`,`24-hour (14:05)`]];function eR(){let[e,t]=Me(),[n,r]=t_(),[i,a]=Yw(),[o,s]=Xw(),c=H().ranges.map(e=>[e,fe[e].label]);return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(xL,{title:`Dashboard`,description:`How this dashboard looks and opens for you. Saved in this browser only.`}),(0,W.jsxs)(G,{children:[(0,W.jsxs)($x,{children:[(0,W.jsx)(Qx,{label:`Theme`,value:e,options:ZL,onChange:t}),(0,W.jsx)(Qx,{label:`Default time range`,value:n,options:c,onChange:r,hint:`Pages open with this range.`})]}),(0,W.jsxs)($x,{children:[(0,W.jsx)(Qx,{label:`Time zone`,value:i,options:QL,onChange:a,hint:`Times and charts show in this zone.`}),(0,W.jsx)(Qx,{label:`Clock`,value:o,options:$L,onChange:s})]})]})]})}function tR(e){return e===`cloud`?{label:`This cloud`,description:`How this WizeLens Cloud is set up. Start options change it: run wizelens-cloud --help. Projects change their own under This project.`}:e===`hub`?{label:`This hub`,description:`How this hub is set up. Start options change it: run wizelens-hub --help. Projects change their own under This project.`}:{label:`Services`,description:`How WizeLens is set up in each service this dashboard reads. Settings live in each app's code: change one, then restart the service.`}}function nR(){let e=Se(),t=H(),{params:n}=i(),r=e.info?.mode,a=tR(r),o=H().has(`tags`),s=[{id:`dashboard`,label:`Dashboard`,icon:Vy,render:()=>(0,W.jsx)(eR,{})},...t.has(`settings`)?[{id:`project`,label:`This project`,icon:Dv,render:()=>(0,W.jsx)(IL,{})}]:[],...r===`hub`||r===`cloud`||e.info?.hub?[{id:`connect`,label:r===`in-app`?`Sends to`:`Connect a service`,icon:_y,render:()=>(0,W.jsx)(EL,{info:e.info})}]:[],{id:`services`,label:a.label,icon:ky,render:()=>(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(xL,{title:a.label,description:a.description}),e.sources.length===0?(0,W.jsx)(G,{children:(0,W.jsx)(K,{title:`No services connected yet`})}):(0,W.jsx)(`div`,{className:`wl-settings-sources`,children:e.sources.map(e=>(0,W.jsx)(WL,{source:e},e.endpoint))})]})},...o?[{id:`tags`,label:`Tags`,icon:qy,render:()=>(0,W.jsx)(XL,{})}]:[],{id:`options`,label:`Add-on options`,icon:F_,render:()=>(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(xL,{title:`Add-on options`,description:`Every option of the .NET and Node add-ons, and the environment variable that sets it without a code change.`}),(0,W.jsx)(AL,{})]})}];return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gb,{title:`Settings`,subtitle:`Your dashboard preferences, and how WizeLens is set up.`}),(0,W.jsx)(bL,{page:`settings`,sections:s,active:n[0]})]})}function rR(e){let t=c().project;return e?{list:t?`./api/projects/${t}/uptime`:null,item:`./api/projects/${t}/uptime`}:{list:`./api/uptime${t?`?project=${encodeURIComponent(t)}`:``}`,item:`./api/uptime`}}function iR(){let e=H().has(`accounts`),t=Ne(Ce())?.org.role,{list:n,item:r}=rR(e),{data:i,error:a,reload:o}=Ux(n),s=c().project;return{data:i,error:a,reload:o,canWrite:!e||t!==void 0&&t!==`viewer`,save:(t,n)=>Wx(()=>n?x(`PATCH`,`${r}/${n}`,t):x(`POST`,r,e?t:{...t,project:s}),o),remove:e=>Wx(()=>x(`DELETE`,`${r}/${e}`),o),runNow:e=>Wx(()=>x(`POST`,`${r}/${e}/run`),o)}}var aR=[1,2,5,10,15,30,60].map(e=>[String(e),e===1?`Every minute`:e===60?`Every hour`:`Every ${e} minutes`]),oR=zd.map(e=>[e,e]),sR={name:``,url:`https://`,method:`GET`,headers:{},expectStatus:Bd,expectBody:``,intervalMin:5,timeoutMs:1e4,env:``,enabled:!0},cR=e=>Object.entries(e).map(([e,t])=>`${e}: ${t}`).join(`
|
|
57
|
+
`);function lR(e){let t={};for(let n of e.split(`
|
|
58
|
+
`)){let e=n.indexOf(`:`);e>0&&(t[n.slice(0,e).trim()]=n.slice(e+1).trim())}return t}var uR=e=>{if(!e)return sR;let{name:t,url:n,method:r,headers:i,expectStatus:a,expectBody:o,intervalMin:s,timeoutMs:c,env:l,enabled:u}=e;return{name:t,url:n,method:r,headers:i,expectStatus:a,expectBody:o,intervalMin:s,timeoutMs:c,env:l,enabled:u}};function dR({initial:e,onSave:t,onCancel:n}){let[r,i]=(0,T.useState)(()=>uR(e)),[a,o]=(0,T.useState)(()=>cR(r.headers)),[s,c]=(0,T.useState)(null),l=e=>t=>i(n=>({...n,[e]:t}));return(0,W.jsx)(G,{title:e?`Edit "${e.name}"`:`New check`,className:`wl-panel-form`,children:(0,W.jsxs)(`form`,{className:`wl-form`,onSubmit:e=>{e.preventDefault(),t({...r,headers:lR(a)}).then(c)},children:[(0,W.jsxs)($x,{children:[(0,W.jsx)(Z,{label:`Name`,value:r.name,onChange:e=>l(`name`)(e.target.value),placeholder:`Website`}),(0,W.jsx)(Z,{label:`URL`,required:!0,type:`url`,value:r.url,onChange:e=>l(`url`)(e.target.value),placeholder:`https://example.com/health`}),(0,W.jsx)(Qx,{label:`Method`,value:r.method,options:oR,onChange:l(`method`)})]}),(0,W.jsxs)($x,{children:[(0,W.jsx)(Qx,{label:`Runs`,value:String(r.intervalMin),options:aR,onChange:e=>l(`intervalMin`)(Number(e))}),(0,W.jsx)(Z,{label:`Timeout (seconds)`,type:`number`,min:1,max:60,required:!0,value:r.timeoutMs/1e3,onChange:e=>l(`timeoutMs`)(Math.round(Number(e.target.value)*1e3))}),(0,W.jsx)(Z,{label:`Expected status`,value:r.expectStatus,onChange:e=>l(`expectStatus`)(e.target.value),hint:`"200", "200-299", or "200,301-302". A 3xx here stops redirects being followed.`}),(0,W.jsx)(Z,{label:`Environment (optional)`,value:r.env,onChange:e=>l(`env`)(e.target.value),placeholder:`None`})]}),(0,W.jsx)(Z,{label:`Response must contain (optional)`,value:r.expectBody,onChange:e=>l(`expectBody`)(e.target.value),placeholder:`"status":"ok"`}),(0,W.jsx)(Zx,{label:`Headers (optional)`,value:a,onChange:e=>o(e.target.value),placeholder:`Authorization: Bearer ...`,hint:`One "Name: value" per line. Secret values show as [redacted]; leave them as they are to keep them.`}),(0,W.jsx)(eS,{label:`On`,checked:r.enabled,onChange:e=>l(`enabled`)(e.target.checked)}),s&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:s}),(0,W.jsxs)(`div`,{className:`wl-form-actions wl-form-actions-start`,children:[(0,W.jsx)(`button`,{type:`submit`,className:`wl-btn wl-btn-primary`,children:`Save check`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:n,children:`Cancel`})]})]})})}function fR(e,t){return[{key:`state`,header:``,cell:e=>e.endMs===null?(0,W.jsx)(Y,{tone:`danger`,children:`Ongoing`}):(0,W.jsx)(Y,{tone:`success`,children:`Resolved`})},...t?[{key:`check`,header:`Check`,cell:e=>(0,W.jsx)(`a`,{href:S(`uptime`,[e.checkId]),children:e.checkName})}]:[],{key:`start`,header:`Started`,className:`wl-nowrap`,sort:e=>e.startMs,cell:e=>Mb(e.startMs)},{key:`length`,header:`Down For`,num:!0,sort:t=>Lh(t,e),cell:t=>VP(Lh(t,e))},{key:`reason`,header:`Reason`,className:`wl-wrap`,cell:e=>e.reason}]}function pR({incidents:e,nowMs:t,withCheck:n=!0}){return(0,W.jsx)(G,{title:`Incidents`,flush:!0,children:(0,W.jsx)(Q,{columns:fR(t,n),rows:e,rowKey:e=>e.id,empty:(0,W.jsx)(K,{children:`No incidents in the last 90 days.`}),defaultSort:{key:`start`,desc:!0}})})}function mR({c:e,nowMs:t}){let n=Vd(e.tlsExpiresMs,t);return n===null?(0,W.jsx)(`span`,{className:`wl-muted`,children:e.url.startsWith(`https:`)?`–`:`No TLS`}):(0,W.jsx)(Y,{tone:n<0?`danger`:n<14?`warning`:`neutral`,children:n<0?`Expired`:`${n} days`})}function hR({c:e}){let t=zP(e);return(0,W.jsx)(Kb,{tone:t.tone,colorText:t.tone===`danger`,children:t.label})}function gR(e){return e.canWrite?[{key:`actions`,header:``,cell:t=>(0,W.jsxs)(`span`,{className:`wl-row-actions`,children:[(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:()=>e.onRun(t),children:`Run now`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:()=>e.onEdit(t),children:`Edit`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn wl-text-error`,onClick:()=>e.onDelete(t),children:`Delete`})]})}]:[]}function _R(e){let t=e=>({key:e,header:e,num:!0,sort:t=>t.uptime[e]??-1,cell:t=>RP(t.uptime[e])});return[{key:`state`,header:`Status`,sort:e=>zP(e).rank,cell:e=>(0,W.jsx)(hR,{c:e})},{key:`name`,header:`Check`,sort:e=>e.name.toLowerCase(),className:`wl-uptime-name`,cell:e=>(0,W.jsxs)(`a`,{href:S(`uptime`,[e.id]),children:[(0,W.jsx)(`strong`,{children:e.name}),(0,W.jsxs)(`span`,{className:`wl-muted wl-small`,children:[e.method,` `,e.url]})]})},t(`24h`),t(`7d`),t(`30d`),{key:`avg`,header:`Response`,num:!0,sort:e=>e.lastDurationMs??-1,cell:t=>(0,W.jsx)(vR,{c:t,model:e.model})},{key:`last`,header:`Last Check`,className:`wl-nowrap`,sort:e=>e.lastRunMs??0,cell:t=>t.lastRunMs?Lb(t.lastRunMs,e.nowMs):`Not yet`},{key:`tls`,header:`Certificate`,sort:e=>e.tlsExpiresMs??1/0,cell:t=>(0,W.jsx)(mR,{c:t,nowMs:e.nowMs})},...gR(e)]}function vR({c:e,model:t}){let n=BP(t,e.id);return(0,W.jsxs)(`span`,{className:`wl-uptime-response`,children:[n&&(0,W.jsx)(fD,{values:n.avgMsSeries,width:80,height:20,color:`var(--wl-blue)`}),q(e.lastDurationMs)]})}function yR(e){return(0,W.jsx)(Q,{columns:_R(e),rows:e.checks,rowKey:e=>e.id,empty:e.empty,defaultSort:{key:`state`,desc:!1}})}var bR=`color-mix(in srgb, var(--wl-red) 45%, transparent)`;function xR(e,t){return[[`URL`,(0,W.jsxs)(`code`,{children:[e.method,` `,e.url]},`u`)],[`Runs`,e.intervalMin===1?`Every minute`:`Every ${e.intervalMin} minutes`],[`Expects`,`${e.expectStatus}${e.expectBody?` and "${e.expectBody}"`:``}`],[`Last check`,e.lastRunMs?`${Lb(e.lastRunMs,t)} · ${e.lastStatus??`no answer`} · ${q(e.lastDurationMs)}`:`Not yet`],[`Certificate`,e.tlsExpiresMs?(0,W.jsxs)(`span`,{children:[(0,W.jsx)(mR,{c:e,nowMs:t}),` ends `,jb(e.tlsExpiresMs)]},`t`):(0,W.jsx)(mR,{c:e,nowMs:t},`t`)],...e.env?[[`Environment`,e.env]]:[]]}function SR({c:e,nowMs:t,actions:n}){return(0,W.jsxs)(`section`,{className:`wl-panel wl-svc-head`,children:[(0,W.jsxs)(`a`,{className:`wl-back`,href:S(`uptime`),children:[(0,W.jsx)(C_,{size:14,"aria-hidden":`true`}),` All checks`]}),(0,W.jsxs)(`h1`,{className:`wl-svc-title`,children:[(0,W.jsx)(zv,{size:22,"aria-hidden":!0}),(0,W.jsx)(`span`,{className:`wl-svc-name`,children:e.name}),(0,W.jsx)(`span`,{className:`wl-svc-status`,children:(0,W.jsx)(hR,{c:e})}),n]}),e.state===`down`&&e.lastError&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error wl-uptime-error`,children:e.lastError}),(0,W.jsx)(`dl`,{className:`wl-stats`,children:xR(e,t).map(([e,t])=>(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`dt`,{children:e}),(0,W.jsx)(`dd`,{children:t})]},e))})]})}function CR({c:e,model:t}){let n=BP(t,e.id),r=(t,n)=>(0,W.jsx)($,{icon:zv,label:n,value:RP(e.uptime[t]),change:null,upIsGood:!0,compareLabel:``,note:e.uptime[t]===null?`No runs yet`:HP(e.uptime[t])===`success`?`On target`:`Below 99.9%`,danger:HP(e.uptime[t])===`danger`});return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[r(`24h`,`Uptime (24 h)`),r(`7d`,`Uptime (7 days)`),r(`30d`,`Uptime (30 days)`),(0,W.jsx)($,{icon:av,label:`Avg Response`,value:q(n?.avgMs),change:null,upIsGood:!1,compareLabel:``,note:`${J(n?.runs??0)} runs, ${J(n?.failures??0)} failed`,series:n?.avgMsSeries})]}),(0,W.jsx)(G,{title:`Response Time`,children:t&&n?(0,W.jsx)(iE,{starts:t.starts,lines:[{label:`Average`,values:n.avgMsSeries,color:`var(--wl-blue)`}],bars:[{label:`Failed`,values:n.failSeries,color:bR}],separateBarScale:!0,height:240,format:e=>q(e)}):(0,W.jsx)(K,{title:`No runs in this time range`,children:`Pick a longer range at the top, or run the check now.`})})]})}function wR({id:e}){let t=iR(),{model:n}=yT(`uptime`,{check:e}),[r,i]=(0,T.useState)(!1),[a,o]=(0,T.useState)(null),s=t.data?.checks.find(t=>t.id===e);if(!t.data)return(0,W.jsx)(G,{children:(0,W.jsx)(K,{title:t.error?`Could not load the check`:`Loading…`,children:t.error})});if(!s)return(0,W.jsxs)(G,{children:[(0,W.jsxs)(`a`,{className:`wl-back`,href:S(`uptime`),children:[(0,W.jsx)(C_,{size:14,"aria-hidden":`true`}),` All checks`]}),(0,W.jsx)(K,{title:`This check does not exist`,children:`It may have been deleted.`})]});let c=async e=>{let n=await t.save(e,s.id);return n||i(!1),n},l=t.canWrite&&(0,W.jsxs)(`span`,{className:`wl-uptime-actions`,children:[(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:()=>void t.runNow(s.id).then(e=>o(e??`Ran the check.`)),children:`Run now`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:()=>i(!0),children:`Edit`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-btn wl-text-error`,onClick:()=>void t.remove(s.id).then(e=>e?o(e):w(S(`uptime`))),children:`Delete`})]});return(0,W.jsxs)(`div`,{className:`wl-svc-page`,children:[(0,W.jsx)(SR,{c:s,nowMs:t.data.nowMs,actions:l}),a&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-info`,children:a}),r&&(0,W.jsx)(dR,{initial:s,onSave:c,onCancel:()=>i(!1)}),(0,W.jsx)(CR,{c:s,model:n}),(0,W.jsx)(pR,{incidents:t.data.incidents.filter(t=>t.checkId===e),nowMs:t.data.nowMs,withCheck:!1})]})}function TR(){let e=H(),t=c().project,n=Ne(Ce())?.org.role,r=`./api/projects/${t}/status-page`,{data:i,error:a,reload:o}=Ux(e.has(`statusPages`)&&t?r:null),[s,l]=(0,T.useState)(``),[u,d]=(0,T.useState)(null),[f,p]=(0,T.useState)(null);if(!e.has(`statusPages`)||!i)return null;let m=n!==void 0&&n!==`viewer`;return(0,W.jsxs)(G,{title:`Public Status Page`,children:[(0,W.jsx)(`p`,{className:`wl-muted wl-uptime-status-note`,children:i.enabled?`On since ${jb(i.createdMs)} as "${i.title}", opened ${J(i.views??0)} times. It shows check names, whether they are up, uptime, and when incidents happened; never URLs or errors.`:`Off. Turn it on to share an unguessable, read-only link with your users: check names, whether they are up, uptime, and when incidents happened. Never URLs or errors.`}),u&&(0,W.jsxs)(`div`,{className:`wl-share-link`,children:[(0,W.jsx)(`code`,{children:u}),(0,W.jsx)(Xb,{text:u}),(0,W.jsx)(`span`,{className:`wl-muted wl-small`,children:`Copy it now: the link is shown only once. A new link stops the old one.`})]}),(a||f)&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:a??f}),m&&(0,W.jsxs)($x,{children:[(0,W.jsx)(Z,{label:`Title`,value:s,onChange:e=>l(e.target.value),placeholder:i.title??`Project name`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-btn wl-btn-primary`,onClick:()=>void Wx(()=>x(`POST`,r,{title:s||i.title}).then(e=>d(e.url)),o).then(p),children:i.enabled?`New link`:`Turn on`}),i.enabled&&(0,W.jsx)(`button`,{type:`button`,className:`wl-btn`,onClick:()=>void Wx(()=>x(`DELETE`,r),o).then(e=>(p(e),d(null))),children:`Turn off`})]})]})}var ER=e=>{let t=e.filter(e=>e!==null);return t.length?t.reduce((e,t)=>e+t,0)/t.length:null};function DR({checks:e,model:t}){let n=e.filter(e=>e.enabled),r=n.filter(e=>e.state===`up`).length,i=t?.totals,a=!!t?.meta.hasPrev,o=(e,t)=>a&&e!=null?le(e,t??0):null,s=t?.meta.compareLabel??``,c=(t?.checks??[]).length?t.starts.map((e,n)=>t.checks.reduce((e,t)=>e+(t.failSeries[n]??0),0)):void 0;return(0,W.jsxs)(`div`,{className:`wl-grid wl-grid-stats`,children:[(0,W.jsx)($,{icon:rv,label:`Checks Up`,value:n.length?`${r} of ${n.length}`:`–`,change:null,upIsGood:!0,compareLabel:``,note:n.length-r>0?`${n.length-r} not up`:`All up`}),(0,W.jsx)($,{icon:zv,label:`Uptime (24 h)`,value:RP(ER(n.map(e=>e.uptime[`24h`]))),change:null,upIsGood:!0,compareLabel:``,note:`Average of the checks that are on`}),(0,W.jsx)($,{icon:av,label:`Avg Response`,value:q(i?.avgMs),change:o(i?.avgMs,i?.prevAvgMs),upIsGood:!1,compareLabel:s}),(0,W.jsx)($,{icon:tb,label:`Failed Runs`,value:J(i?.failures??0),change:o(i?.failures,i?.prevFailures),upIsGood:!1,compareLabel:s,series:c,danger:!0})]})}function OR({checks:e,nowMs:t}){let n=e.filter(e=>e.enabled&&Hd(e.tlsExpiresMs,t));return n.length===0?null:(0,W.jsx)(`div`,{className:`wl-banner wl-banner-warning wl-uptime-certs`,role:`status`,children:n.map(e=>{let n=Vd(e.tlsExpiresMs,t);return(0,W.jsxs)(`div`,{children:[(0,W.jsxs)(`strong`,{children:[e.name,`:`]}),` `,n<0?`the TLS certificate has expired.`:`the TLS certificate expires in ${n} ${n===1?`day`:`days`}.`,` Renew it before visitors see a warning.`]},e.id)})})}var kR=`Checks that call your sites and APIs on a schedule, from this host. Results are requests of the wizelens-uptime service.`;function AR(){let e=i().params[0];return H().has(`uptime`)?e?(0,W.jsx)(wR,{id:e}):(0,W.jsx)(NR,{}):(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gb,{title:`Uptime`,subtitle:kR}),(0,W.jsx)(G,{children:(0,W.jsx)(K,{title:`This host does not run uptime checks`,children:`Uptime checks run on the local hub and on WizeLens Cloud.`})})]})}function jR(){let[e,t]=(0,T.useState)(null);return[e,(e,n)=>t(e??n??null)]}function MR(e,t,n){return{onRun:t=>void e.runNow(t.id).then(e=>n(e,`Ran ${t.name}.`)),onEdit:t,onDelete:t=>void e.remove(t.id).then(e=>n(e,`Deleted ${t.name}.`))}}function NR(){let e=iR(),{model:t}=yT(`uptime`),[n,r]=(0,T.useState)(null),[i,a]=jR(),o=e.data?.checks??[],s=MR(e,r,a),c=async t=>{let i=await e.save(t,n===`new`||!n?void 0:n.id);return i||r(null),i},l=e.canWrite&&!n&&(0,W.jsxs)(`button`,{type:`button`,className:`wl-btn wl-btn-primary`,onClick:()=>r(`new`),children:[(0,W.jsx)(hy,{"aria-hidden":`true`}),` New check`]});return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(gb,{title:`Uptime`,subtitle:kR,children:l}),e.error&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-error`,children:e.error}),i&&(0,W.jsx)(`div`,{className:`wl-banner wl-banner-info`,children:i}),(0,W.jsx)(OR,{checks:o,nowMs:e.data?.nowMs??Date.now()}),n&&(0,W.jsx)(dR,{initial:n===`new`?null:n,onSave:c,onCancel:()=>r(null)}),(0,W.jsx)(DR,{checks:o,model:t}),(0,W.jsx)(G,{title:`Checks`,flush:!0,children:(0,W.jsx)(yR,{checks:o,model:t,nowMs:e.data?.nowMs??Date.now(),canWrite:e.canWrite,...s,empty:(0,W.jsxs)(K,{title:`No checks yet`,children:[(0,W.jsx)(zv,{"aria-hidden":`true`}),` Add one to hear when a site or API stops answering.`]})})}),(0,W.jsx)(pR,{incidents:e.data?.incidents??[],nowMs:e.data?.nowMs??Date.now()}),(0,W.jsx)(TR,{})]})}function PR({thin:e=!0}){let t=Ce(),[n,r]=(0,T.useState)(null),i=t?.user;return!t?.mail||!i||i.emailVerified?null:(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-info${e?` wl-banner-thin`:``}`,role:`status`,children:[`Confirm your email: we sent a link to `,i.email,`.`,` `,n?(0,W.jsx)(`span`,{children:n}):(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:()=>void Ee(e=>e.sendVerificationEmail({email:i.email})).then(()=>r(`We sent a new link.`),e=>r(ye(e))),children:`Send again`})]})}var FR=e=>Ux(e?`./api/orgs/${e}/usage`:null),IR=()=>`${window.location.pathname}#/team/billing`,LR=e=>({customerType:`organization`,referenceId:e});async function RR(e,t,n){let r=await x(`POST`,`./api/auth/subscription/upgrade`,{...LR(e),plan:t,annual:n,successUrl:IR(),cancelUrl:IR(),returnUrl:IR(),disableRedirect:!0});window.location.assign(r.url)}async function zR(e){let t=await x(`POST`,`./api/auth/subscription/billing-portal`,{...LR(e),returnUrl:IR(),disableRedirect:!0});window.location.assign(t.url)}async function BR(e){let t=await x(`POST`,`./api/auth/subscription/cancel`,{...LR(e),returnUrl:IR(),disableRedirect:!0});window.location.assign(t.url)}var VR=(e,t)=>x(`PATCH`,`./api/orgs/${e}/billing`,{spendCapUsd:t}),HR=e=>e>=100?`${Math.round(e).toLocaleString()} GB`:`${(Math.round(e*100)/100).toLocaleString()} GB`,UR=e=>`$${e.toLocaleString(void 0,{minimumFractionDigits:e%1?2:0,maximumFractionDigits:2})}`;function WR(){let e=Ce(),t=e?.billing?Ne(e):null,{data:n}=FR(t?.org.id??null);if(!t||!n?.billing||n.includedGb===null)return null;let r=n.monthGb/n.includedGb*100,i=n.plan.id===`free`;if(!n.blocked&&!(i&&r>=80))return null;let a=t.org.role===`owner`||t.org.role===`admin`,o=n.blocked??`${t.org.name} used ${Math.floor(r)}% of the Free plan's ${HR(n.includedGb)} this month. At 100%, new data is refused until the 1st.`;return(0,W.jsxs)(`div`,{className:`wl-banner ${n.blocked?`wl-banner-error`:`wl-banner-warn`} wl-banner-thin`,role:`status`,children:[o,` `,a?(0,W.jsx)(`a`,{href:S(`team`,[`billing`]),children:n.blocked&&n.reason===`cap`?`Change the spend cap`:`See plans`}):(0,W.jsx)(`span`,{children:`Ask an owner or admin to upgrade.`})]})}function GR(){let{items:e}=WE(),t=e.filter(e=>e.kind!==`dashboard`);if(t.length===0)return null;let n=location.hash;return(0,W.jsxs)(`nav`,{className:`wl-nav wl-nav-saved`,"aria-label":`Saved`,children:[(0,W.jsx)(`div`,{className:`wl-nav-head`,children:`Saved`}),t.map(e=>{let t=e.kind===`search`?Dy:e.shared?sb:L_;return(0,W.jsxs)(`a`,{href:e.href,className:n===e.href?`wl-active`:void 0,title:`${e.name}${e.ownerName?` (saved by ${e.ownerName})`:``}`,children:[(0,W.jsx)(t,{"aria-hidden":!0}),(0,W.jsx)(`span`,{className:`wl-truncate`,children:e.name})]},e.id)})]})}var KR=[{page:`overview`,label:`Overview`,icon:Vv},{page:`problems`,label:`Problems`,icon:Ly},{page:`search`,label:`Search`,icon:Dy},{page:`requests`,label:`Requests`,icon:$v},{page:`traces`,label:`Traces`,icon:Fy},{page:`database`,label:`Database`,icon:pv},{page:`rendering`,label:`Rendering`,icon:ay},{page:`errors`,label:`Errors`,icon:tb},{page:`logs`,label:`Logs`,icon:Tv},{page:`metrics`,label:`Metrics`,icon:y_,needs:`metrics`},{page:`hosts`,label:`Hosts`,icon:ky,needs:`infra`},{page:`kubernetes`,label:`Kubernetes`,icon:V_,needs:`infra`},{page:`services`,label:`Services`,icon:z_},{page:`insights`,label:`Insights`,icon:Yv},{page:`uptime`,label:`Uptime`,icon:zv,needs:`uptime`},{page:`users`,label:`Users`,icon:ab},{page:`alerts`,label:`Alerts`,icon:N_,needs:`alerts`},{page:`slos`,label:`SLOs`,icon:Yy,needs:`slos`},{page:`dashboards`,label:`Dashboards`,icon:qv,needs:`saved`},{page:`team`,label:`Team`,icon:sb,needs:`accounts`},{page:`settings`,label:`Settings`,icon:Ny}];function qR({page:e,counts:t={},dot:n}){let r=e===`trace`?`traces`:e,i=H(),a=KR.filter(e=>!e.needs||i.has(e.needs));return(0,W.jsxs)(`aside`,{className:`wl-sidebar`,children:[(0,W.jsx)(`a`,{className:`wl-sidebar-brand`,href:S(`overview`),"aria-label":`WizeLens overview`,children:(0,W.jsx)(cO,{dot:n})}),(0,W.jsx)(`nav`,{className:`wl-nav`,"aria-label":`Main`,children:a.map(({page:e,label:n,icon:i})=>(0,W.jsxs)(`a`,{href:S(e),className:r===e?`wl-active`:void 0,"aria-current":r===e?`page`:void 0,title:n,children:[(0,W.jsx)(i,{"aria-hidden":!0}),(0,W.jsx)(`span`,{children:n}),!!t[e]&&(0,W.jsx)(`em`,{className:`wl-nav-count`,children:t[e]>99?`99+`:t[e]})]},e))}),i.has(`saved`)&&(0,W.jsx)(GR,{}),(0,W.jsxs)(`div`,{className:`wl-sidebar-foot`,children:[(0,W.jsx)(`span`,{className:`wl-mark`,"aria-hidden":`true`,children:`W`}),(0,W.jsxs)(`div`,{children:[(0,W.jsx)(`strong`,{children:`WizeWorks`}),(0,W.jsx)(`span`,{children:`Build. Observe. Ship.`})]})]})]})}function JR({title:e,values:t,value:n,onPick:r,all:i=!0}){if(t.length===0)return null;let a=i?[[``,`All ${e.toLowerCase()}s`],...t]:t;return(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{className:`wl-menu-head`,children:e}),a.map(([e,t])=>(0,W.jsxs)(`button`,{type:`button`,className:`wl-menu-item${e===n?` wl-active`:``}`,onClick:()=>r(e),children:[(0,W.jsx)(`span`,{className:`wl-truncate`,children:t}),e===n&&(0,W.jsx)(Y_,{size:14,"aria-hidden":`true`,className:`wl-menu-check`})]},e||`all`))]})}function YR({g:e,active:t,onPick:n}){let r=e.newest,i=e.instances.length>1?`${J(e.online)} of ${J(e.instances.length)} hosts online`:r.host,a=[r.project,r.environment,i].filter(Boolean).join(` · `),o=e.online>0;return(0,W.jsxs)(`button`,{type:`button`,className:`wl-menu-item${t?` wl-active`:``}`,onClick:n,children:[(0,W.jsx)(`span`,{className:`wl-env-dot${o?``:` wl-off`}`,title:o?`Online`:f(r)}),(0,W.jsxs)(`span`,{className:`wl-truncate`,children:[(0,W.jsx)(`strong`,{children:r.service}),(0,W.jsxs)(`span`,{className:`wl-muted wl-small`,children:[` · `,o?r.runtime??r.via:`seen ${Lb(r.lastSeenMs)}`]}),a&&(0,W.jsx)(`span`,{className:`wl-muted wl-small wl-block`,children:a})]}),t&&(0,W.jsx)(Y_,{size:14,"aria-hidden":`true`,className:`wl-menu-check`})]})}function XR({registry:e,projects:t}){let[n,r]=ee(),[i,a]=b(),[o]=u(),s=mD(),c=rt((e?.services??[]).filter(e=>xe(e,{env:n,project:i},!t))),l=c.filter(e=>e.online>0).length,d=[t?t.find(([e])=>e===i)?.[1]:i,n].filter(Boolean).join(` · `)||`All projects`,f=e=>e.map(e=>[e,e]),p=(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(Gv,{"aria-hidden":`true`}),(0,W.jsx)(`span`,{className:`wl-label`,children:d}),(0,W.jsxs)(`span`,{className:`wl-chip-count`,title:`${l} of ${c.length} services online`,children:[l,`/`,c.length]}),(0,W.jsx)(Z_,{"aria-hidden":`true`})]});return(0,W.jsx)(ex,{label:p,title:`Project, environment, and connected services`,children:l=>(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(JR,{title:`Project`,values:t??f(e?.projects??[]),value:i,all:!t,onPick:e=>(a(e),l())}),(0,W.jsx)(JR,{title:`Environment`,values:f(e?.environments??[]),value:n,onPick:e=>(r(e),l())}),(0,W.jsx)(`div`,{className:`wl-menu-head`,children:`Services`}),c.length>0&&(0,W.jsxs)(`button`,{type:`button`,className:`wl-menu-item${o?``:` wl-active`}`,onClick:()=>(s(``),l()),children:[(0,W.jsx)(`span`,{className:`wl-truncate`,children:`All services`}),!o&&(0,W.jsx)(Y_,{size:14,"aria-hidden":`true`,className:`wl-menu-check`})]}),c.map(e=>(0,W.jsx)(YR,{g:e,active:yr(e.service)===o,onPick:()=>(s(yr(e.service)),l())},e.key)),c.length===0&&(0,W.jsx)(`div`,{className:`wl-menu-note`,children:`No service has sent data yet. See Settings to connect one.`})]})})}function ZR(){let e=Ce(),t=e?.user;if(!t)return null;let n=Ne(e)?.org,r=(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(ab,{"aria-hidden":`true`}),(0,W.jsx)(`span`,{className:`wl-label`,children:t.name}),(0,W.jsx)(Z_,{"aria-hidden":`true`})]});return(0,W.jsx)(ex,{label:r,title:`Signed in as ${t.email}`,children:e=>(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{className:`wl-menu-head`,children:t.email}),(0,W.jsxs)(`a`,{className:`wl-menu-item`,href:S(`account`),onClick:e,children:[(0,W.jsx)(jy,{size:16,"aria-hidden":`true`}),` Account`]}),n&&(0,W.jsxs)(`a`,{className:`wl-menu-item`,href:S(`team`),onClick:e,children:[n.name,` · `,n.role]}),(0,W.jsxs)(`button`,{type:`button`,className:`wl-menu-item`,onClick:()=>void ce(),children:[(0,W.jsx)(ty,{size:16,"aria-hidden":`true`}),` Sign out`]})]})})}var QR=864e5,$R=15;function ez(e){let t=e.spans.find(ve);return t?vn(t).message:`Request failed`}function tz(e,t){let n=e.get(t.key);n?e.set(t.key,{...t,count:n.count+1,timeMs:Math.max(n.timeMs,t.timeMs)}):e.set(t.key,t)}function nz(e,t){let n=e.filter(e=>e.startMs>=t-QR),r=new Map(n.map(e=>[e.traceId,e])),i=new Map;for(let e of zn(n)){let t=y(e.traceId);if(e.errors>0||(e.status??0)>=500){let n=ez(r.get(e.traceId));tz(i,{key:`e|${e.endpoint}|${n}`,kind:`error`,title:`Error in ${e.endpoint}`,detail:n,timeMs:e.startMs,count:1,href:t})}for(let t of e.findings.filter(e=>e.kind!==`error`))tz(i,{key:`i|${e.endpoint}|${t.kind}`,kind:`insight`,title:t.title,detail:e.endpoint,timeMs:e.startMs,count:1,href:y(e.traceId,`insights`)})}return[...i.values()].sort((e,t)=>t.timeMs-e.timeMs).slice(0,$R)}function rz(e){let t=H().has(`alerts`),n=YC(),{data:r}=Ux(t&&n.ready?n.url():null);return(0,T.useMemo)(()=>(r?.events??[]).filter(t=>(t.kind===`fired`||t.kind===`remind`)&&t.timeMs>=e-QR).map(e=>({key:`a|${e.id}`,kind:`alert`,title:`${e.kind===`remind`?`Still firing`:`Alert`}: ${e.ruleName}`,detail:e.message,timeMs:e.timeMs,count:1,href:pe(e.ruleId)})),[r,e])}var iz={error:tb,insight:Yv,alert:N_};function az({note:e,unread:t,now:n}){let r=iz[e.kind];return(0,W.jsxs)(`a`,{className:`wl-menu-item wl-note`,href:e.href,children:[(0,W.jsx)(r,{size:18,color:e.kind===`insight`?`var(--wl-amber)`:`var(--wl-red)`,"aria-hidden":`true`}),(0,W.jsxs)(`span`,{className:`wl-truncate`,children:[(0,W.jsx)(`strong`,{className:t?void 0:`wl-muted`,children:e.title}),(0,W.jsxs)(`span`,{className:`wl-muted wl-small wl-truncate`,style:{display:`block`},children:[e.count>1?`${e.count}× · `:``,e.detail]})]}),(0,W.jsx)(`span`,{className:`wl-muted wl-small`,children:Lb(e.timeMs,n)})]})}function oz({traces:e,now:t}){let[n,r]=o(),i=rz(t),a=(0,T.useMemo)(()=>[...i,...nz(e,t)].sort((e,t)=>t.timeMs-e.timeMs).slice(0,$R),[i,e,t]),s=a.filter(e=>e.timeMs>Number(n)).length;return(0,W.jsx)(ex,{label:(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(j_,{size:20,"aria-hidden":`true`}),s>0&&(0,W.jsx)(`span`,{className:`wl-ping`})]}),title:s?`${s} new notifications`:`Notifications`,buttonClass:`wl-icon-btn`,onOpen:()=>setTimeout(()=>r(String(Date.now())),1500),children:()=>(0,W.jsxs)(`div`,{style:{width:380},children:[(0,W.jsx)(`div`,{className:`wl-menu-head`,children:`Last 24 hours`}),a.length===0&&(0,W.jsx)(`div`,{className:`wl-menu-note`,children:`No errors or insights. All quiet.`}),a.map(e=>(0,W.jsx)(az,{note:e,unread:e.timeMs>Number(n),now:t},e.key))]})})}var sz=Xe(),cz=220,lz=3,uz=(e,t)=>e.toLowerCase().includes(t.toLowerCase()),dz=e=>e.catch(()=>null);async function fz(e,t,n,r){let i={q:e,size:`5`,page:`1`},[a,o,s,c,l,u,d]=await Promise.all([dz(gT(`errors`,{...i,status:`all`},t,n)),dz(gT(`database`,i,t,n)),dz(gT(`insights`,{q:e},t,n)),r.metrics?dz(ne(`./api/models/metrics?range=${t}&q=${encodeURIComponent(e)}`)):null,r.alerts?dz(ne(r.alerts)):null,r.slos?dz(ne(r.slos)):null,r.saved?dz(ne(r.saved)):null]);return[...(a?.groups??[]).slice(0,lz).map(e=>({key:`eg${e.key}`,kind:`error`,title:`${e.type}: ${e.message}`,detail:`Error group · ${e.service}`,href:he(e.key)})),...(o?.queries??[]).slice(0,lz).map(e=>({key:`q${e.key}`,kind:`query`,title:e.query,detail:`Query · ${e.count} runs`,href:Ue(e.query)})),...(s?.groups??[]).slice(0,lz).map(e=>({key:`i${e.key}`,kind:`insight`,title:e.title,detail:e.shape,href:S(`insights`,[],{key:e.key})})),...(c?.catalog??[]).slice(0,lz).map(e=>({key:`m${e.name}`,kind:`metric`,title:e.name,detail:`Metric · ${e.lastText}`,href:S(`metrics`,[],{metric:e.name})})),...(l?.rules??[]).filter(t=>uz(t.name,e)).slice(0,lz).map(e=>({key:`a${e.id}`,kind:`alert`,title:e.name,detail:`Alert · ${e.state===`firing`?`Firing`:`OK`}`,href:pe(e.id)})),...(u?.slos??[]).filter(t=>uz(t.slo.name,e)).slice(0,lz).map(e=>({key:`o${e.slo.id}`,kind:`slo`,title:e.slo.name,detail:`SLO`,href:He(e.slo.id)})),...(d?.items??[]).filter(t=>uz(t.name,e)).slice(0,lz).map(e=>({key:`v${e.id}`,kind:`saved`,title:e.name,detail:e.kind===`dashboard`?`Dashboard`:e.kind===`search`?`Saved search`:`Saved view`,href:e.kind===`dashboard`?S(`dashboards`,[encodeURIComponent(e.id)]):e.href}))]}function pz(e,t,n){let r=H(),i=YC(),a=TT(),o=UE(),s={alerts:r.has(`alerts`)&&i.ready?i.url():null,slos:r.has(`slos`)&&a.ready?a.url():null,saved:o.on&&o.ready?o.url():null,metrics:r.has(`serverMetrics`)},c=JSON.stringify(s),[l,u]=(0,T.useState)([]),d=e.trim();return(0,T.useEffect)(()=>{if(u([]),d.length<2)return;let e=!0,r=setTimeout(()=>void fz(d,t,n,JSON.parse(c)).then(t=>e&&u(t)),cz);return()=>(e=!1,clearTimeout(r))},[d,t,n,c]),l}var mz=180,hz=e=>({key:`sr${e.traceId}`,kind:`request`,title:`${e.method} ${e.path}`,detail:`${e.status??`…`} · ${q(e.durationMs)} · ${e.service}`,href:S(`requests`,[],{trace:e.traceId})}),gz=e=>({key:`sl${e.key}`,kind:`log`,title:e.message,detail:`${e.level} · ${e.service}`,href:y(e.traceId,`logs`)});function _z(e,t,n){let[r,i]=(0,T.useState)([]),a=e.trim();return(0,T.useEffect)(()=>{if(i([]),!a||!bh(a).ok)return;let e=!0,r=setTimeout(async()=>{let r={q:a,range:t,limit:5},[o,s]=await Promise.all([qx({...r,kind:`requests`},null,n),qx({...r,kind:`logs`,limit:3},null,n)]).catch(()=>[null,null]);e&&i([...(o?.items??[]).map(hz),...(s?.items??[]).map(gz)])},mz);return()=>(e=!1,clearTimeout(r))},[a,t,n]),a?[{key:`search-all`,kind:`search`,title:`Search everything for “${a}”`,detail:`Requests, traces, spans, logs`,href:S(`search`,[],{q:a})},...r]:[]}var vz=6,yz=(e,t)=>e.toLowerCase().includes(t);function bz(e,t){let n=[];for(let r of zn(e)){if(n.length>=vz)break;r.traceId.startsWith(t)?n.push({key:`t${r.traceId}`,kind:`trace`,title:r.traceId,detail:`${r.method} ${r.path}`,href:y(r.traceId)}):(yz(r.path,t)||yz(r.endpoint,t))&&n.push({key:`r${r.traceId}`,kind:`request`,title:`${r.method} ${r.path}`,detail:`${r.status??`…`} · ${q(r.durationMs)} · ${r.service}`,href:S(`requests`,[],{trace:r.traceId})})}return n}function xz(e,t){let n=new Set,r=[];for(let i of e)for(let e of i.spans.filter(ve)){let a=vn(e),o=`${a.type??``}: ${a.message}`;if(!n.has(o)&&yz(o,t)&&(n.add(o),r.push({key:`e${o}`,kind:`error`,title:a.type?`${a.type}: ${a.message}`:a.message,detail:`${a.service} · ${i.rootName}`,href:y(i.traceId,`errors`)}),r.length>=vz))return r}return r}function Sz(e,t){let n=new Set;for(let r of e)for(let e of r.services)yz(e,t)&&n.add(e);return[...n].slice(0,vz).map(e=>({key:`s${e}`,kind:`service`,title:e,detail:`Service`,href:S(`services`,[encodeURIComponent(yr(e))])}))}function Cz(e,t,n,r=!1){let i=n.trim().toLowerCase();return i?[...t.filter(e=>yz(e.label,i)).map(e=>({key:`p${e.page}`,kind:`page`,title:e.label,detail:`Go to page`,href:S(e.page)})),...r?[]:bz(e,i),...xz(e,i),...Sz(e,i)]:t.map(e=>({key:`p${e.page}`,kind:`page`,title:e.label,detail:`Go to page`,href:S(e.page)}))}var wz={page:Cv,request:$v,trace:Fy,error:tb,service:z_,log:Tv,search:Dy,query:pv,insight:Yv,metric:y_,alert:N_,slo:Yy,saved:L_};function Tz(e){(0,T.useEffect)(()=>{let t=t=>{(t.ctrlKey||t.metaKey)&&t.key.toLowerCase()===`k`&&(t.preventDefault(),e())};return document.addEventListener(`keydown`,t),()=>document.removeEventListener(`keydown`,t)},[e])}function Ez({traces:e,onClose:t}){let[n,r]=(0,T.useState)(``),[i,a]=(0,T.useState)(0),o=H().has(`search`),[s]=t_(),c=_z(n,s,o),l=pz(n,s,o),u=(0,T.useMemo)(()=>Cz(e,KR,n,o),[e,n,o]),d=(0,T.useMemo)(()=>[...c.slice(0,1),...u,...l,...c.slice(1)],[c,u,l]),f=e=>{let n=d[e];n&&(w(n.href),t())};return(0,sz.createPortal)((0,W.jsx)(`div`,{className:`wl-palette-backdrop`,onMouseDown:e=>e.target===e.currentTarget&&t(),children:(0,W.jsxs)(`div`,{className:`wl-palette`,role:`dialog`,"aria-label":`Search`,children:[(0,W.jsx)(`input`,{autoFocus:!0,value:n,onChange:e=>(r(e.target.value),a(0)),onKeyDown:e=>{if(e.key===`Escape`)t();else if(e.key===`ArrowDown`)a(e=>Math.min(d.length-1,e+1));else if(e.key===`ArrowUp`)a(e=>Math.max(0,e-1));else if(e.key===`Enter`)f(i);else return;e.preventDefault()},placeholder:`Search requests, errors, queries, insights, metrics, alerts, saved views…`,"aria-label":`Search`}),(0,W.jsxs)(`div`,{className:`wl-palette-list`,role:`listbox`,children:[d.length===0&&(0,W.jsx)(`div`,{className:`wl-palette-empty`,children:`No matches.`}),d.map((e,t)=>{let n=wz[e.kind];return(0,W.jsxs)(`div`,{role:`option`,"aria-selected":t===i,className:`wl-palette-item${t===i?` wl-active`:``}`,onMouseEnter:()=>a(t),onClick:()=>f(t),children:[(0,W.jsx)(n,{"aria-hidden":`true`}),(0,W.jsx)(`span`,{className:`wl-truncate`,children:e.title}),(0,W.jsx)(`span`,{className:`wl-muted wl-small wl-truncate`,children:e.detail})]},e.key)})]})]})}),document.body)}var Dz=e=>String(e).padStart(2,`0`);function Oz(e){let t=new Date(Ob()?e:e-new Date(e).getTimezoneOffset()*6e4);return`${t.getUTCFullYear()}-${Dz(t.getUTCMonth()+1)}-${Dz(t.getUTCDate())}T${Dz(t.getUTCHours())}:${Dz(t.getUTCMinutes())}`}function kz(e){let t=Date.parse(`${e}:00Z`);return Ob()?t:t+new Date(t).getTimezoneOffset()*6e4}function Az({current:e,onDone:t}){let n=Date.now(),[r,i]=(0,T.useState)(Oz(e?.from??n-36e5)),[a,o]=(0,T.useState)(Oz(e?.to??n)),s={from:kz(r),to:Math.min(kz(a),n)},c=Number.isFinite(s.from)&&Number.isFinite(s.to)&&s.to-s.from>=6e4;return(0,W.jsxs)(`form`,{className:`wl-range-custom`,onSubmit:e=>(e.preventDefault(),c&&($w(s),t())),children:[(0,W.jsxs)(`label`,{children:[`From `,(0,W.jsx)(`input`,{type:`datetime-local`,value:r,onChange:e=>i(e.target.value)})]}),(0,W.jsxs)(`label`,{children:[`To `,(0,W.jsx)(`input`,{type:`datetime-local`,value:a,onChange:e=>o(e.target.value)})]}),(0,W.jsx)(`button`,{type:`submit`,className:`wl-btn`,disabled:!c,children:`Apply`})]})}var jz=[[`previous`,`The period before`],[`week`,`Same time last week`]];function Mz(){let[e,t]=t_(),{ranges:n}=H(),[r]=qw(),[i]=Jw(),a=Gw(r),o=a?`${Mb(a.from)} – ${Mb(a.to)}`:fe[e].label,s=(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(G_,{"aria-hidden":`true`}),(0,W.jsx)(`span`,{className:`wl-label`,children:o}),(0,W.jsx)(Z_,{"aria-hidden":`true`})]}),c=(e,t,n)=>(0,W.jsxs)(`button`,{type:`button`,className:`wl-menu-item${e?` wl-active`:``}`,onClick:n,children:[(0,W.jsx)(`span`,{className:`wl-truncate`,children:t}),e&&(0,W.jsx)(Y_,{size:14,"aria-hidden":`true`,className:`wl-menu-check`})]},t);return(0,W.jsx)(ex,{label:s,title:`Time range`,children:r=>(0,W.jsxs)(W.Fragment,{children:[n.map(n=>c(!a&&n===e,fe[n].label,()=>($w(null),t(n),r()))),(0,W.jsx)(`div`,{className:`wl-menu-head`,children:`Custom range`}),(0,W.jsx)(Az,{current:a,onDone:r}),(0,W.jsx)(`div`,{className:`wl-menu-head`,children:`Compare with`}),jz.map(([e,t])=>c(i===e,t,()=>(eT(e),r())))]})})}var Nz=/^#\/(|overview|search|requests|traces|database|rendering|errors|logs|metrics|services|insights|slos|dashboards|users)(\/|\?|$)/;function Pz({close:e}){let t=UE(),[n,r]=(0,T.useState)(``),[i,a]=(0,T.useState)(!1),[o,s]=(0,T.useState)(!1),c=Zf(location.hash)!==null,[l,u]=(0,T.useState)(null),d=()=>{let r=location.hash||`#/`,a=r.startsWith(`#/search`)||c?`search`:`view`;GE(t.url(),`POST`,{kind:a,name:n.trim(),href:r,chart:c&&o,shared:!t.cloud||i}).then(()=>e(),e=>u(e instanceof Error?e.message:String(e)))};return(0,W.jsxs)(`form`,{className:`wl-save-view`,onSubmit:e=>(e.preventDefault(),d()),children:[(0,W.jsx)(Z,{label:`Name`,required:!0,autoFocus:!0,value:n,onChange:e=>r(e.target.value),placeholder:`Checkout errors this week`}),t.cloud&&(0,W.jsx)(eS,{label:`Share with the team`,checked:i,onChange:e=>a(e.target.checked)}),c&&(0,W.jsx)(eS,{label:`Chart it on the Logs page`,checked:o,onChange:e=>s(e.target.checked)}),(0,W.jsx)(`p`,{className:`wl-muted wl-small`,children:`Saves this page with its filters and time range. It shows under Saved in the sidebar.`}),l&&(0,W.jsx)(`p`,{className:`wl-text-error wl-small`,children:l}),(0,W.jsx)(`button`,{type:`submit`,className:`wl-btn wl-btn-primary`,disabled:!n.trim(),children:`Save view`})]})}function Fz(){let e=UE();return i(),!e.on||!e.canWrite||!Nz.test(location.hash||`#/`)?null:(0,W.jsx)(ex,{label:(0,W.jsx)(Uy,{size:18,"aria-hidden":`true`}),title:`Save this view`,children:e=>(0,W.jsx)(Pz,{close:e})})}var Iz=[[`1`,`For 1 day`],[`7`,`For 7 days`],[`30`,`For 30 days`]],Lz=new Set([`overview`,`requests`,`errors`,`database`,`logs`,`insights`,`rendering`,`services`,`traces`]);function Rz(e){let[t,n,r]=e.params.map(C);return e.page===`errors`&&t?{page:`error`,params:{group:t}}:e.page===`services`&&t&&n===`endpoints`&&r?{page:`endpoint`,params:{service:t,endpoint:r}}:e.page===`services`&&t?{page:`service`,params:{service:t}}:e.page===`database`&&t===`queries`&&n?{page:`query`,params:{q:n}}:e.page===`rendering`&&t===`routes`&&n?{page:`route`,params:{route:n}}:Lz.has(e.page)&&!t?{page:e.page,params:{}}:null}function zz({target:e}){let t=i(),[n]=t_(),[r,a]=(0,T.useState)(`7`),[o,s]=(0,T.useState)(null),[l,u]=(0,T.useState)(null);return(0,W.jsxs)(`div`,{className:`wl-save-view`,children:[(0,W.jsx)(`p`,{className:`wl-muted wl-small`,children:`A read-only link to this page as it is now: its numbers are kept and do not change. Anyone with the link can open it.`}),(0,W.jsx)(X,{label:`How long`,value:r,options:Iz,onChange:a}),o?(0,W.jsxs)(`span`,{className:`wl-share-url`,children:[(0,W.jsx)(`code`,{className:`wl-truncate`,children:o}),(0,W.jsx)(Xb,{text:o,label:`Copy link`})]}):(0,W.jsx)(`button`,{type:`button`,className:`wl-btn wl-btn-primary`,onClick:()=>{let{window:i,compare:a}=Zw(),o=c(),l={...Object.fromEntries(t.query),...Qw(i,a),...o.service?{service:o.service}:{},...e.params},d={page:e.page,range:n,params:l,env:o.env,title:document.title.replace(/ · .*$/,``),days:Number(r)};x(`POST`,`./api/projects/${encodeURIComponent(o.project)}/shares`,d).then(e=>s(e.url),e=>u(e instanceof Error?e.message:String(e)))},children:`Make a link`}),l&&(0,W.jsx)(`p`,{className:`wl-text-error wl-small`,children:l})]})}function Bz(){let e=i(),t=H(),n=Rz(e);return!t.has(`sharing`)||!c().project||!n?null:(0,W.jsx)(ex,{label:(0,W.jsx)(Zv,{size:18,"aria-hidden":`true`}),title:`Share this page`,children:()=>(0,W.jsx)(zz,{target:n})})}function Vz(e){return e.find(e=>e.self)?.status===`down`?` wl-down`:e.some(e=>e.status===`down`)?` wl-partial`:``}function Hz({sources:e}){let t=e.find(e=>e.self)?.info?.environment??`Local`,n=(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`span`,{className:`wl-env-dot${Vz(e)}`}),(0,W.jsx)(`span`,{className:`wl-label`,children:t}),(0,W.jsx)(Z_,{"aria-hidden":`true`})]});return(0,W.jsx)(ex,{label:n,title:`Environment ${t}: connected services`,children:()=>(0,W.jsxs)(W.Fragment,{children:[(0,W.jsx)(`div`,{className:`wl-menu-head`,children:`Connected services`}),e.map(e=>(0,W.jsxs)(`a`,{className:`wl-menu-item`,href:`${e.endpoint}/`,target:e.self?void 0:`_blank`,rel:`noreferrer`,children:[(0,W.jsx)(`span`,{className:`wl-env-dot${e.status===`down`?` wl-down`:e.status===`pending`?` wl-partial`:``}`}),(0,W.jsxs)(`span`,{className:`wl-truncate`,children:[(0,W.jsx)(`strong`,{children:e.info?.service??e.endpoint}),(0,W.jsxs)(`span`,{className:`wl-muted wl-small`,children:[` · `,e.status===`down`?e.error??`unreachable`:e.info?.runtime??`…`]})]}),!e.self&&(0,W.jsx)(_v,{size:14,"aria-hidden":`true`})]},e.endpoint)),(0,W.jsx)(`div`,{className:`wl-menu-note`,children:`Services join this list when a request calls them.`})]})})}function Uz(){let e=H(),t=e.service&&!e.service.endsWith($g[e.mode])?` · ${e.service}`:``,n=`${$g[e.mode]}${t} · kept ${n_(e.keptMs)}`;return(0,W.jsx)(`span`,{className:`wl-mode-badge`,title:`WizeLens runs ${e.mode===`in-app`?`inside this service`:`as a ${$g[e.mode].toLowerCase()}`}. Data older than ${n_(e.keptMs)} is dropped.`,children:n})}var Wz={light:`dark`,dark:`system`,system:`light`},Gz={light:Gy,dark:sy,system:ay};function Kz(){let[e,t]=Me(),n=Gz[e];return(0,W.jsx)(`button`,{type:`button`,className:`wl-icon-btn`,onClick:()=>t(Wz[e]),title:`Theme: ${e}. Click for ${Wz[e]}.`,"aria-label":`Theme: ${e}`,children:(0,W.jsx)(n,{size:20,"aria-hidden":`true`})})}var qz=typeof navigator<`u`&&/Mac|iPhone|iPad/.test(navigator.platform);function Jz(){let e=Ce();if(H().has(`accounts`))return(e?.orgs??[]).flatMap(e=>e.projects.map(t=>[t.id,`${e.name} / ${t.name}`]))}function Yz({data:e}){let[t,n]=(0,T.useState)(!1),r=Jz(),i=(0,T.useCallback)(()=>n(!0),[]);return Tz(i),(0,W.jsxs)(`header`,{className:`wl-topbar`,children:[(0,W.jsxs)(`button`,{type:`button`,className:`wl-search-box`,onClick:i,"aria-label":`Search`,children:[(0,W.jsx)(Dy,{size:18,"aria-hidden":`true`}),(0,W.jsx)(`span`,{className:`wl-truncate`,children:`Search requests, traces, errors, services…`}),(0,W.jsx)(`kbd`,{children:qz?`⌘ K`:`Ctrl K`})]}),(0,W.jsx)(`span`,{className:`wl-spacer`}),(0,W.jsx)(Uz,{}),(0,W.jsx)(gD,{}),e.registry?(0,W.jsx)(XR,{registry:e.registry,projects:r}):(0,W.jsx)(Hz,{sources:e.sources}),(0,W.jsx)(Mz,{}),(0,W.jsx)(Fz,{}),(0,W.jsx)(Bz,{}),(0,W.jsx)(oz,{traces:e.traces,now:e.updatedMs}),(0,W.jsx)(Kz,{}),r&&(0,W.jsx)(ZR,{}),t&&(0,W.jsx)(Ez,{traces:e.traces,onClose:()=>n(!1)})]})}function Xz(){return Sw()?(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-info wl-banner-thin wl-update`,role:`status`,children:[`A new version of WizeLens is ready.`,` `,(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:()=>window.location.reload(),children:`Refresh`}),(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn wl-update-later`,onClick:yw,children:`Later`})]}):null}function Zz(){return(0,W.jsxs)(`div`,{className:`wl-banner wl-banner-info`,role:`status`,children:[`This page changed in a new version of WizeLens.`,` `,(0,W.jsx)(`button`,{type:`button`,className:`wl-link-btn`,onClick:()=>window.location.reload(),children:`Refresh to load it`})]})}var Qz=e=>(0,T.lazy)(()=>e().then(e=>({default:e}),()=>(vw(),{default:Zz}))),$z={overview:sj,problems:tL,search:yL,requests:CM,traces:PP,database:XO,rendering:jj,errors:Rk,logs:zA,metrics:sI,hosts:gI,kubernetes:kI,services:fP,insights:tA,settings:nR,alerts:wE,uptime:AR,slos:LE,dashboards:ID,users:XD,team:Qz(()=>ze(()=>import(`./TeamPage-DIxM37vw.js`).then(e=>e.TeamPage),__vite__mapDeps([0,1,2,3]),import.meta.url)),account:Qz(()=>ze(()=>import(`./AccountPage-LO4tZhQV.js`).then(e=>e.AccountPage),__vite__mapDeps([4,1,3]),import.meta.url))},eB=3e5,tB={critical:`var(--wl-red)`,warning:`var(--wl-orange)`};function nB(){let e=Se();return(0,T.useMemo)(()=>{let t=zn(e.traces.filter(t=>t.startMs>=e.updatedMs-eB));return t.some(Bn)?tB.critical:t.some(e=>e.health===`warning`)?tB.warning:void 0},[e.traces,e.updatedMs])}function rB({route:e}){let t=H().has(`accounts`);if(e.page===`trace`){let[t,n,r]=e.params;return n===`compare`&&r?(0,W.jsx)(LC,{a:t,b:r},`${t}/${r}`):(0,W.jsx)(kC,{traceId:t,view:n},t)}let n=e.page,r=n===`shared`||n===`status`||ue.includes(n)||n===`account`&&!t?sj:$z[n];return(0,W.jsx)(r,{})}function iB(){return(0,W.jsx)(GF,{children:(0,W.jsx)(aB,{})})}function aB(){let e=i(),t=Se(),n=i_(),[r]=Me(),o=nB();(0,T.useEffect)(()=>a(r),[r]);let[s]=Yw(),[c]=Xw();Db({utc:s===`utc`,hour12:c===`12`}),ZF(),(0,T.useEffect)(()=>{window.scrollTo(0,0)},[e.page,e.params.join(`/`)]),(0,T.useEffect)(()=>{document.title=t.info?`WizeLens · ${t.info.service}`:`WizeLens`},[t.info]);let l=_T(),u=(0,T.useMemo)(()=>l===null?Or(n.traces).length:0,[l,n.traces]),d=l??u;return(0,W.jsxs)(`div`,{className:`wl-shell`,children:[(0,W.jsx)(qR,{page:e.page,counts:{errors:d},dot:o}),(0,W.jsxs)(`div`,{className:`wl-main`,children:[(0,W.jsx)(Yz,{data:t}),(0,W.jsx)(Xz,{}),(0,W.jsx)(PR,{}),(0,W.jsx)(WR,{}),(0,W.jsx)(`main`,{className:`wl-page`,children:(0,W.jsx)(rB,{route:e})})]})]})}m.start(),bw(),(0,$e.createRoot)(document.getElementById(`root`)).render((0,W.jsx)(T.StrictMode,{children:(0,W.jsx)(iB,{})}));export{Lb as A,$y as B,Qx as C,X as D,Ux as E,gb as F,Y_ as G,hy as H,G as I,j_ as K,hb as L,Mb as M,zb as N,Y as O,K as P,sb as R,$x as S,Wx as T,Zv as U,_y as V,hv as W,tk as _,zR as a,eS as b,PR as c,AF as d,QN as f,XN as g,eP as h,UR as i,jb as j,Xb as k,xL as l,$N as m,RR as n,VR as o,ZN as p,U as q,HR as r,FR as s,BR as t,bL as u,tO as v,Zx as w,Z as x,Q as y,ab as z};
|